[2026-06-19 00:00:00,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:00:00,802.802 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 00:00:03,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:00:03,958.958 INFO    ] Checking for system updates...
[2026-06-19 00:00:04,197.197 INFO    ] 200
[2026-06-19 00:00:04,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:04,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:00:04,453.453 INFO    ] No update needed
[2026-06-19 00:00:04,487.487 INFO    ] Checking for camera pi updates...
[2026-06-19 00:00:04,703.703 INFO    ] 200
[2026-06-19 00:00:04,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:05,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:00:05,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:00:05,094.094 INFO    ] No camera update needed
[2026-06-19 00:00:05,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:00:05,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:00:05,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:00:05,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:00:07,223.223 INFO    ] ================================================
[2026-06-19 00:00:07,239.239 INFO    ] Launching Daemon at Fri Jun 19 00:00:07 IST 2026
[2026-06-19 00:00:07,250.250 INFO    ] ================================================
[2026-06-19 00:00:07,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:00:07
[2026-06-19 00:00:08,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:00:08,775.775 INFO    ] Initializing speech engine...
[2026-06-19 00:00:08,784.784 INFO    ] 2026-06-19 00:00:08
[2026-06-19 00:00:09,043.043 INFO    ] 2026-06-19 00:00:09
[2026-06-19 00:00:09,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:00:09,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:00:09,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:00:09,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:00:09,432.432 INFO    ] time= 19/06/2026 00:00:09
[2026-06-19 00:00:09,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:00:09,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:00:09,608.608 INFO    ] No existing commands found in stream
[2026-06-19 00:00:14,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:00:14,641.641 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 00:00:18,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:00:18,639.639 INFO    ] Checking for system updates...
[2026-06-19 00:00:18,679.679 INFO    ] 200
[2026-06-19 00:00:18,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:18,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:00:18,744.744 INFO    ] No update needed
[2026-06-19 00:00:18,746.746 INFO    ] Checking for camera pi updates...
[2026-06-19 00:00:18,784.784 INFO    ] 200
[2026-06-19 00:00:18,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:18,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:00:18,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:00:18,871.871 INFO    ] No camera update needed
[2026-06-19 00:00:18,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:00:18,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:00:18,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:00:18,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:00:20,930.930 INFO    ] ================================================
[2026-06-19 00:00:20,946.946 INFO    ] Launching Daemon at Fri Jun 19 00:00:20 IST 2026
[2026-06-19 00:00:20,957.957 INFO    ] ================================================
[2026-06-19 00:00:21,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:00:21
[2026-06-19 00:00:22,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:00:22,592.592 INFO    ] Initializing speech engine...
[2026-06-19 00:00:22,612.612 INFO    ] 2026-06-19 00:00:22
[2026-06-19 00:00:22,880.880 INFO    ] 2026-06-19 00:00:22
[2026-06-19 00:00:22,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:00:23,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:00:23,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:00:23,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:00:23,370.370 INFO    ] time= 19/06/2026 00:00:23
[2026-06-19 00:00:23,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:00:23,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:00:23,526.526 INFO    ] No existing commands found in stream
[2026-06-19 00:00:28,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:00:28,541.541 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 00:00:29,060.060 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:00:29,063.063 INFO    ] Checking for system updates...
[2026-06-19 00:00:29,100.100 INFO    ] 200
[2026-06-19 00:00:29,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:29,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:00:29,161.161 INFO    ] No update needed
[2026-06-19 00:00:29,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 00:00:29,199.199 INFO    ] 200
[2026-06-19 00:00:29,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:29,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:00:29,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:00:29,302.302 INFO    ] No camera update needed
[2026-06-19 00:00:29,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:00:29,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:00:29,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:00:29,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:00:31,363.363 INFO    ] ================================================
[2026-06-19 00:00:31,379.379 INFO    ] Launching Daemon at Fri Jun 19 00:00:31 IST 2026
[2026-06-19 00:00:31,391.391 INFO    ] ================================================
[2026-06-19 00:00:31,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:00:31
[2026-06-19 00:00:32,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:00:32,884.884 INFO    ] Initializing speech engine...
[2026-06-19 00:00:32,898.898 INFO    ] 2026-06-19 00:00:32
[2026-06-19 00:00:33,178.178 INFO    ] 2026-06-19 00:00:33
[2026-06-19 00:00:33,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:00:33,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:00:33,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:00:33,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:00:33,674.674 INFO    ] time= 19/06/2026 00:00:33
[2026-06-19 00:00:33,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:00:33,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:00:33,882.882 INFO    ] No existing commands found in stream
[2026-06-19 00:00:38,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:00:38,912.912 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 00:00:40,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:00:40,971.971 INFO    ] Checking for system updates...
[2026-06-19 00:00:41,017.017 INFO    ] 200
[2026-06-19 00:00:41,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:41,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:00:41,092.092 INFO    ] No update needed
[2026-06-19 00:00:41,095.095 INFO    ] Checking for camera pi updates...
[2026-06-19 00:00:41,131.131 INFO    ] 200
[2026-06-19 00:00:41,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:41,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:00:41,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:00:41,229.229 INFO    ] No camera update needed
[2026-06-19 00:00:41,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:00:41,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:00:41,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:00:41,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:00:43,294.294 INFO    ] ================================================
[2026-06-19 00:00:43,310.310 INFO    ] Launching Daemon at Fri Jun 19 00:00:43 IST 2026
[2026-06-19 00:00:43,321.321 INFO    ] ================================================
[2026-06-19 00:00:43,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:00:43
[2026-06-19 00:00:44,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:00:44,802.802 INFO    ] Initializing speech engine...
[2026-06-19 00:00:44,818.818 INFO    ] 2026-06-19 00:00:44
[2026-06-19 00:00:45,097.097 INFO    ] 2026-06-19 00:00:45
[2026-06-19 00:00:45,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:00:45,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:00:45,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:00:45,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:00:45,455.455 INFO    ] time= 19/06/2026 00:00:45
[2026-06-19 00:00:45,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:00:45,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:00:45,552.552 INFO    ] No existing commands found in stream
[2026-06-19 00:00:50,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:00:50,568.568 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 00:00:51,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:00:51,855.855 INFO    ] Checking for system updates...
[2026-06-19 00:00:51,900.900 INFO    ] 200
[2026-06-19 00:00:51,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:51,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:00:51,967.967 INFO    ] No update needed
[2026-06-19 00:00:51,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 00:00:52,008.008 INFO    ] 200
[2026-06-19 00:00:52,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:00:52,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:00:52,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:00:52,106.106 INFO    ] No camera update needed
[2026-06-19 00:00:52,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:00:52,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:00:52,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:00:52,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:00:54,161.161 INFO    ] ================================================
[2026-06-19 00:00:54,177.177 INFO    ] Launching Daemon at Fri Jun 19 00:00:54 IST 2026
[2026-06-19 00:00:54,189.189 INFO    ] ================================================
[2026-06-19 00:00:54,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:00:54
[2026-06-19 00:00:55,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:00:55,813.813 INFO    ] Initializing speech engine...
[2026-06-19 00:00:55,818.818 INFO    ] 2026-06-19 00:00:55
[2026-06-19 00:00:56,109.109 INFO    ] 2026-06-19 00:00:56
[2026-06-19 00:00:56,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:00:56,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:00:56,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:00:56,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:00:56,656.656 INFO    ] time= 19/06/2026 00:00:56
[2026-06-19 00:00:56,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:00:56,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:00:56,816.816 INFO    ] No existing commands found in stream
[2026-06-19 00:01:01,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:01:01,837.837 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 00:01:04,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:01:04,412.412 INFO    ] Checking for system updates...
[2026-06-19 00:01:04,449.449 INFO    ] 200
[2026-06-19 00:01:04,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:04,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:01:04,508.508 INFO    ] No update needed
[2026-06-19 00:01:04,511.511 INFO    ] Checking for camera pi updates...
[2026-06-19 00:01:04,545.545 INFO    ] 200
[2026-06-19 00:01:04,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:04,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:01:04,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:01:04,640.640 INFO    ] No camera update needed
[2026-06-19 00:01:04,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:01:04,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:01:04,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:01:04,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:01:06,698.698 INFO    ] ================================================
[2026-06-19 00:01:06,714.714 INFO    ] Launching Daemon at Fri Jun 19 00:01:06 IST 2026
[2026-06-19 00:01:06,725.725 INFO    ] ================================================
[2026-06-19 00:01:07,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:01:07
[2026-06-19 00:01:08,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:01:08,331.331 INFO    ] Initializing speech engine...
[2026-06-19 00:01:08,342.342 INFO    ] 2026-06-19 00:01:08
[2026-06-19 00:01:08,617.617 INFO    ] 2026-06-19 00:01:08
[2026-06-19 00:01:08,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:01:08,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:01:08,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:01:09,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:01:09,061.061 INFO    ] time= 19/06/2026 00:01:09
[2026-06-19 00:01:09,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:01:09,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:01:09,221.221 INFO    ] No existing commands found in stream
[2026-06-19 00:01:14,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:01:14,256.256 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 00:01:16,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:01:16,084.084 INFO    ] Checking for system updates...
[2026-06-19 00:01:16,125.125 INFO    ] 200
[2026-06-19 00:01:16,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:16,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:01:16,190.190 INFO    ] No update needed
[2026-06-19 00:01:16,192.192 INFO    ] Checking for camera pi updates...
[2026-06-19 00:01:16,231.231 INFO    ] 200
[2026-06-19 00:01:16,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:16,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:01:16,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:01:16,430.430 INFO    ] No camera update needed
[2026-06-19 00:01:16,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:01:16,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:01:16,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:01:16,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:01:18,487.487 INFO    ] ================================================
[2026-06-19 00:01:18,503.503 INFO    ] Launching Daemon at Fri Jun 19 00:01:18 IST 2026
[2026-06-19 00:01:18,514.514 INFO    ] ================================================
[2026-06-19 00:01:19,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:01:19
[2026-06-19 00:01:19,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:01:19,929.929 INFO    ] Initializing speech engine...
[2026-06-19 00:01:19,935.935 INFO    ] 2026-06-19 00:01:19
[2026-06-19 00:01:20,238.238 INFO    ] 2026-06-19 00:01:20
[2026-06-19 00:01:20,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:01:20,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:01:20,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:01:20,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:01:20,624.624 INFO    ] time= 19/06/2026 00:01:20
[2026-06-19 00:01:20,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:01:20,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:01:20,746.746 INFO    ] No existing commands found in stream
[2026-06-19 00:01:25,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:01:25,769.769 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 00:01:26,605.605 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:01:26,608.608 INFO    ] Checking for system updates...
[2026-06-19 00:01:26,645.645 INFO    ] 200
[2026-06-19 00:01:26,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:26,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:01:26,702.702 INFO    ] No update needed
[2026-06-19 00:01:26,704.704 INFO    ] Checking for camera pi updates...
[2026-06-19 00:01:26,739.739 INFO    ] 200
[2026-06-19 00:01:26,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:26,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:01:26,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:01:26,833.833 INFO    ] No camera update needed
[2026-06-19 00:01:26,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:01:26,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:01:26,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:01:26,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:01:28,888.888 INFO    ] ================================================
[2026-06-19 00:01:28,904.904 INFO    ] Launching Daemon at Fri Jun 19 00:01:28 IST 2026
[2026-06-19 00:01:28,916.916 INFO    ] ================================================
[2026-06-19 00:01:29,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:01:29
[2026-06-19 00:01:30,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:01:30,356.356 INFO    ] Initializing speech engine...
[2026-06-19 00:01:30,370.370 INFO    ] 2026-06-19 00:01:30
[2026-06-19 00:01:30,639.639 INFO    ] 2026-06-19 00:01:30
[2026-06-19 00:01:30,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:01:30,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:01:30,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:01:31,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:01:31,080.080 INFO    ] time= 19/06/2026 00:01:31
[2026-06-19 00:01:31,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:01:31,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:01:31,262.262 INFO    ] No existing commands found in stream
[2026-06-19 00:01:36,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:01:36,276.276 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 00:01:38,798.798 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:01:38,800.800 INFO    ] Checking for system updates...
[2026-06-19 00:01:38,837.837 INFO    ] 200
[2026-06-19 00:01:38,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:38,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:01:38,894.894 INFO    ] No update needed
[2026-06-19 00:01:38,897.897 INFO    ] Checking for camera pi updates...
[2026-06-19 00:01:38,931.931 INFO    ] 200
[2026-06-19 00:01:38,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:38,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:01:39,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:01:39,026.026 INFO    ] No camera update needed
[2026-06-19 00:01:39,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:01:39,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:01:39,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:01:39,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:01:41,085.085 INFO    ] ================================================
[2026-06-19 00:01:41,101.101 INFO    ] Launching Daemon at Fri Jun 19 00:01:41 IST 2026
[2026-06-19 00:01:41,112.112 INFO    ] ================================================
[2026-06-19 00:01:41,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:01:41
[2026-06-19 00:01:42,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:01:42,521.521 INFO    ] Initializing speech engine...
[2026-06-19 00:01:42,545.545 INFO    ] 2026-06-19 00:01:42
[2026-06-19 00:01:42,802.802 INFO    ] 2026-06-19 00:01:42
[2026-06-19 00:01:42,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:01:43,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:01:43,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:01:43,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:01:43,178.178 INFO    ] time= 19/06/2026 00:01:43
[2026-06-19 00:01:43,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:01:43,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:01:43,352.352 INFO    ] No existing commands found in stream
[2026-06-19 00:01:48,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:01:48,384.384 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 00:01:52,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:01:52,098.098 INFO    ] Checking for system updates...
[2026-06-19 00:01:52,139.139 INFO    ] 200
[2026-06-19 00:01:52,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:52,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:01:52,204.204 INFO    ] No update needed
[2026-06-19 00:01:52,207.207 INFO    ] Checking for camera pi updates...
[2026-06-19 00:01:52,245.245 INFO    ] 200
[2026-06-19 00:01:52,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:01:52,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:01:52,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:01:52,335.335 INFO    ] No camera update needed
[2026-06-19 00:01:52,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:01:52,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:01:52,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:01:52,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:01:54,391.391 INFO    ] ================================================
[2026-06-19 00:01:54,407.407 INFO    ] Launching Daemon at Fri Jun 19 00:01:54 IST 2026
[2026-06-19 00:01:54,418.418 INFO    ] ================================================
[2026-06-19 00:01:54,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:01:54
[2026-06-19 00:01:55,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:01:55,828.828 INFO    ] Initializing speech engine...
[2026-06-19 00:01:55,847.847 INFO    ] 2026-06-19 00:01:55
[2026-06-19 00:01:56,096.096 INFO    ] 2026-06-19 00:01:56
[2026-06-19 00:01:56,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:01:56,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:01:56,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:01:56,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:01:56,528.528 INFO    ] time= 19/06/2026 00:01:56
[2026-06-19 00:01:56,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:01:56,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:01:56,709.709 INFO    ] No existing commands found in stream
[2026-06-19 00:02:01,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:02:01,720.720 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 00:02:03,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:02:03,022.022 INFO    ] Checking for system updates...
[2026-06-19 00:02:03,057.057 INFO    ] 200
[2026-06-19 00:02:03,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:03,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:02:03,114.114 INFO    ] No update needed
[2026-06-19 00:02:03,117.117 INFO    ] Checking for camera pi updates...
[2026-06-19 00:02:03,152.152 INFO    ] 200
[2026-06-19 00:02:03,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:03,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:02:03,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:02:03,228.228 INFO    ] No camera update needed
[2026-06-19 00:02:03,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:02:03,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:02:03,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:02:03,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:02:05,286.286 INFO    ] ================================================
[2026-06-19 00:02:05,301.301 INFO    ] Launching Daemon at Fri Jun 19 00:02:05 IST 2026
[2026-06-19 00:02:05,313.313 INFO    ] ================================================
[2026-06-19 00:02:05,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:02:05
[2026-06-19 00:02:06,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:02:06,797.797 INFO    ] Initializing speech engine...
[2026-06-19 00:02:06,807.807 INFO    ] 2026-06-19 00:02:06
[2026-06-19 00:02:07,054.054 INFO    ] 2026-06-19 00:02:07
[2026-06-19 00:02:07,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:02:07,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:02:07,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:02:07,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:02:07,404.404 INFO    ] time= 19/06/2026 00:02:07
[2026-06-19 00:02:07,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:02:07,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:02:07,501.501 INFO    ] No existing commands found in stream
[2026-06-19 00:02:12,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:02:12,520.520 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 00:02:14,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:02:14,734.734 INFO    ] Checking for system updates...
[2026-06-19 00:02:14,770.770 INFO    ] 200
[2026-06-19 00:02:14,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:14,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:02:14,829.829 INFO    ] No update needed
[2026-06-19 00:02:14,831.831 INFO    ] Checking for camera pi updates...
[2026-06-19 00:02:14,869.869 INFO    ] 200
[2026-06-19 00:02:14,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:14,918.918 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:02:14,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:02:14,973.973 INFO    ] No camera update needed
[2026-06-19 00:02:14,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:02:14,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:02:14,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:02:14,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:02:17,030.030 INFO    ] ================================================
[2026-06-19 00:02:17,046.046 INFO    ] Launching Daemon at Fri Jun 19 00:02:17 IST 2026
[2026-06-19 00:02:17,057.057 INFO    ] ================================================
[2026-06-19 00:02:17,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:02:17
[2026-06-19 00:02:18,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:02:18,706.706 INFO    ] Initializing speech engine...
[2026-06-19 00:02:18,714.714 INFO    ] 2026-06-19 00:02:18
[2026-06-19 00:02:18,989.989 INFO    ] 2026-06-19 00:02:18
[2026-06-19 00:02:19,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:02:19,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:02:19,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:02:19,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:02:19,480.480 INFO    ] time= 19/06/2026 00:02:19
[2026-06-19 00:02:19,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:02:19,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:02:19,670.670 INFO    ] No existing commands found in stream
[2026-06-19 00:02:24,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:02:24,707.707 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 00:02:25,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:02:25,882.882 INFO    ] Checking for system updates...
[2026-06-19 00:02:25,924.924 INFO    ] 200
[2026-06-19 00:02:25,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:25,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:02:25,991.991 INFO    ] No update needed
[2026-06-19 00:02:25,994.994 INFO    ] Checking for camera pi updates...
[2026-06-19 00:02:26,029.029 INFO    ] 200
[2026-06-19 00:02:26,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:26,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:02:26,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:02:26,134.134 INFO    ] No camera update needed
[2026-06-19 00:02:26,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:02:26,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:02:26,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:02:26,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:02:28,194.194 INFO    ] ================================================
[2026-06-19 00:02:28,210.210 INFO    ] Launching Daemon at Fri Jun 19 00:02:28 IST 2026
[2026-06-19 00:02:28,222.222 INFO    ] ================================================
[2026-06-19 00:02:28,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:02:28
[2026-06-19 00:02:29,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:02:29,628.628 INFO    ] Initializing speech engine...
[2026-06-19 00:02:29,643.643 INFO    ] 2026-06-19 00:02:29
[2026-06-19 00:02:29,911.911 INFO    ] 2026-06-19 00:02:29
[2026-06-19 00:02:29,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:02:30,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:02:30,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:02:30,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:02:30,294.294 INFO    ] time= 19/06/2026 00:02:30
[2026-06-19 00:02:30,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:02:30,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:02:30,466.466 INFO    ] No existing commands found in stream
[2026-06-19 00:02:35,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:02:35,500.500 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 00:02:36,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:02:36,040.040 INFO    ] Checking for system updates...
[2026-06-19 00:02:36,077.077 INFO    ] 200
[2026-06-19 00:02:36,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:36,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:02:36,138.138 INFO    ] No update needed
[2026-06-19 00:02:36,141.141 INFO    ] Checking for camera pi updates...
[2026-06-19 00:02:36,189.189 INFO    ] 200
[2026-06-19 00:02:36,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:36,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:02:36,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:02:36,289.289 INFO    ] No camera update needed
[2026-06-19 00:02:36,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:02:36,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:02:36,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:02:36,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:02:38,346.346 INFO    ] ================================================
[2026-06-19 00:02:38,363.363 INFO    ] Launching Daemon at Fri Jun 19 00:02:38 IST 2026
[2026-06-19 00:02:38,375.375 INFO    ] ================================================
[2026-06-19 00:02:38,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:02:38
[2026-06-19 00:02:39,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:02:39,808.808 INFO    ] Initializing speech engine...
[2026-06-19 00:02:39,818.818 INFO    ] 2026-06-19 00:02:39
[2026-06-19 00:02:40,069.069 INFO    ] 2026-06-19 00:02:40
[2026-06-19 00:02:40,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:02:40,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:02:40,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:02:40,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:02:40,446.446 INFO    ] time= 19/06/2026 00:02:40
[2026-06-19 00:02:40,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:02:40,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:02:40,523.523 INFO    ] No existing commands found in stream
[2026-06-19 00:02:45,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:02:45,539.539 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 00:02:49,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:02:49,248.248 INFO    ] Checking for system updates...
[2026-06-19 00:02:49,285.285 INFO    ] 200
[2026-06-19 00:02:49,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:49,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:02:49,342.342 INFO    ] No update needed
[2026-06-19 00:02:49,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 00:02:49,379.379 INFO    ] 200
[2026-06-19 00:02:49,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:02:49,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:02:49,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:02:49,478.478 INFO    ] No camera update needed
[2026-06-19 00:02:49,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:02:49,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:02:49,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:02:49,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:02:51,536.536 INFO    ] ================================================
[2026-06-19 00:02:51,552.552 INFO    ] Launching Daemon at Fri Jun 19 00:02:51 IST 2026
[2026-06-19 00:02:51,563.563 INFO    ] ================================================
[2026-06-19 00:02:52,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:02:52
[2026-06-19 00:02:52,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:02:52,999.999 INFO    ] Initializing speech engine...
[2026-06-19 00:02:53,005.005 INFO    ] 2026-06-19 00:02:53
[2026-06-19 00:02:53,268.268 INFO    ] 2026-06-19 00:02:53
[2026-06-19 00:02:53,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:02:53,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:02:53,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:02:53,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:02:53,717.717 INFO    ] time= 19/06/2026 00:02:53
[2026-06-19 00:02:53,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:02:53,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:02:53,888.888 INFO    ] No existing commands found in stream
[2026-06-19 00:02:58,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:02:58,903.903 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 00:03:00,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:03:00,920.920 INFO    ] Checking for system updates...
[2026-06-19 00:03:00,958.958 INFO    ] 200
[2026-06-19 00:03:00,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:01,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:03:01,018.018 INFO    ] No update needed
[2026-06-19 00:03:01,020.020 INFO    ] Checking for camera pi updates...
[2026-06-19 00:03:01,054.054 INFO    ] 200
[2026-06-19 00:03:01,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:01,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:03:01,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:03:01,149.149 INFO    ] No camera update needed
[2026-06-19 00:03:01,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:03:01,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:03:01,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:03:01,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:03:03,227.227 INFO    ] ================================================
[2026-06-19 00:03:03,250.250 INFO    ] Launching Daemon at Fri Jun 19 00:03:03 IST 2026
[2026-06-19 00:03:03,266.266 INFO    ] ================================================
[2026-06-19 00:03:03,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:03:03
[2026-06-19 00:03:04,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:03:04,795.795 INFO    ] Initializing speech engine...
[2026-06-19 00:03:04,802.802 INFO    ] 2026-06-19 00:03:04
[2026-06-19 00:03:05,064.064 INFO    ] 2026-06-19 00:03:05
[2026-06-19 00:03:05,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:03:05,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:03:05,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:03:05,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:03:05,507.507 INFO    ] time= 19/06/2026 00:03:05
[2026-06-19 00:03:05,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:03:05,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:03:05,662.662 INFO    ] No existing commands found in stream
[2026-06-19 00:03:10,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:03:10,675.675 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 00:03:14,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:03:14,769.769 INFO    ] Checking for system updates...
[2026-06-19 00:03:14,809.809 INFO    ] 200
[2026-06-19 00:03:14,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:14,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:03:14,874.874 INFO    ] No update needed
[2026-06-19 00:03:14,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 00:03:14,912.912 INFO    ] 200
[2026-06-19 00:03:14,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:14,955.955 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:03:14,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:03:15,001.001 INFO    ] No camera update needed
[2026-06-19 00:03:15,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:03:15,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:03:15,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:03:15,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:03:17,059.059 INFO    ] ================================================
[2026-06-19 00:03:17,074.074 INFO    ] Launching Daemon at Fri Jun 19 00:03:17 IST 2026
[2026-06-19 00:03:17,085.085 INFO    ] ================================================
[2026-06-19 00:03:17,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:03:17
[2026-06-19 00:03:18,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:03:18,747.747 INFO    ] Initializing speech engine...
[2026-06-19 00:03:18,755.755 INFO    ] 2026-06-19 00:03:18
[2026-06-19 00:03:19,052.052 INFO    ] 2026-06-19 00:03:19
[2026-06-19 00:03:19,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:03:19,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:03:19,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:03:19,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:03:19,527.527 INFO    ] time= 19/06/2026 00:03:19
[2026-06-19 00:03:19,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:03:19,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:03:19,721.721 INFO    ] No existing commands found in stream
[2026-06-19 00:03:24,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:03:24,736.736 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 00:03:28,481.481 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:03:28,483.483 INFO    ] Checking for system updates...
[2026-06-19 00:03:28,523.523 INFO    ] 200
[2026-06-19 00:03:28,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:28,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:03:28,588.588 INFO    ] No update needed
[2026-06-19 00:03:28,591.591 INFO    ] Checking for camera pi updates...
[2026-06-19 00:03:28,626.626 INFO    ] 200
[2026-06-19 00:03:28,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:28,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:03:28,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:03:28,829.829 INFO    ] No camera update needed
[2026-06-19 00:03:28,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:03:28,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:03:28,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:03:28,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:03:30,886.886 INFO    ] ================================================
[2026-06-19 00:03:30,902.902 INFO    ] Launching Daemon at Fri Jun 19 00:03:30 IST 2026
[2026-06-19 00:03:30,913.913 INFO    ] ================================================
[2026-06-19 00:03:31,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:03:31
[2026-06-19 00:03:32,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:03:32,373.373 INFO    ] Initializing speech engine...
[2026-06-19 00:03:32,388.388 INFO    ] 2026-06-19 00:03:32
[2026-06-19 00:03:32,695.695 INFO    ] 2026-06-19 00:03:32
[2026-06-19 00:03:32,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:03:32,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:03:32,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:03:33,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:03:33,058.058 INFO    ] time= 19/06/2026 00:03:33
[2026-06-19 00:03:33,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:03:33,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:03:33,146.146 INFO    ] No existing commands found in stream
[2026-06-19 00:03:38,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:03:38,191.191 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 00:03:38,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:03:38,787.787 INFO    ] Checking for system updates...
[2026-06-19 00:03:38,828.828 INFO    ] 200
[2026-06-19 00:03:38,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:38,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:03:38,888.888 INFO    ] No update needed
[2026-06-19 00:03:38,890.890 INFO    ] Checking for camera pi updates...
[2026-06-19 00:03:38,932.932 INFO    ] 200
[2026-06-19 00:03:38,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:38,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:03:39,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:03:39,040.040 INFO    ] No camera update needed
[2026-06-19 00:03:39,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:03:39,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:03:39,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:03:39,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:03:41,096.096 INFO    ] ================================================
[2026-06-19 00:03:41,111.111 INFO    ] Launching Daemon at Fri Jun 19 00:03:41 IST 2026
[2026-06-19 00:03:41,122.122 INFO    ] ================================================
[2026-06-19 00:03:41,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:03:41
[2026-06-19 00:03:42,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:03:42,531.531 INFO    ] Initializing speech engine...
[2026-06-19 00:03:42,539.539 INFO    ] 2026-06-19 00:03:42
[2026-06-19 00:03:42,833.833 INFO    ] 2026-06-19 00:03:42
[2026-06-19 00:03:42,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:03:43,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:03:43,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:03:43,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:03:43,216.216 INFO    ] time= 19/06/2026 00:03:43
[2026-06-19 00:03:43,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:03:43,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:03:43,341.341 INFO    ] No existing commands found in stream
[2026-06-19 00:03:48,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:03:48,356.356 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 00:03:50,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:03:50,145.145 INFO    ] Checking for system updates...
[2026-06-19 00:03:50,186.186 INFO    ] 200
[2026-06-19 00:03:50,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:50,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:03:50,244.244 INFO    ] No update needed
[2026-06-19 00:03:50,247.247 INFO    ] Checking for camera pi updates...
[2026-06-19 00:03:50,280.280 INFO    ] 200
[2026-06-19 00:03:50,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:03:50,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:03:50,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:03:50,387.387 INFO    ] No camera update needed
[2026-06-19 00:03:50,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:03:50,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:03:50,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:03:50,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:03:52,443.443 INFO    ] ================================================
[2026-06-19 00:03:52,459.459 INFO    ] Launching Daemon at Fri Jun 19 00:03:52 IST 2026
[2026-06-19 00:03:52,471.471 INFO    ] ================================================
[2026-06-19 00:03:53,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:03:53
[2026-06-19 00:03:53,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:03:54,106.106 INFO    ] Initializing speech engine...
[2026-06-19 00:03:54,117.117 INFO    ] 2026-06-19 00:03:54
[2026-06-19 00:03:54,402.402 INFO    ] 2026-06-19 00:03:54
[2026-06-19 00:03:54,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:03:54,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:03:54,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:03:54,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:03:54,932.932 INFO    ] time= 19/06/2026 00:03:54
[2026-06-19 00:03:54,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:03:54,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:03:55,074.074 INFO    ] No existing commands found in stream
[2026-06-19 00:04:00,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:04:00,105.105 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 00:04:00,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:04:00,798.798 INFO    ] Checking for system updates...
[2026-06-19 00:04:00,838.838 INFO    ] 200
[2026-06-19 00:04:00,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:00,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:04:00,895.895 INFO    ] No update needed
[2026-06-19 00:04:00,898.898 INFO    ] Checking for camera pi updates...
[2026-06-19 00:04:00,932.932 INFO    ] 200
[2026-06-19 00:04:00,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:00,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:04:01,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:04:01,022.022 INFO    ] No camera update needed
[2026-06-19 00:04:01,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:04:01,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:04:01,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:04:01,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:04:03,088.088 INFO    ] ================================================
[2026-06-19 00:04:03,109.109 INFO    ] Launching Daemon at Fri Jun 19 00:04:03 IST 2026
[2026-06-19 00:04:03,126.126 INFO    ] ================================================
[2026-06-19 00:04:03,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:04:03
[2026-06-19 00:04:04,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:04:04,830.830 INFO    ] Initializing speech engine...
[2026-06-19 00:04:04,844.844 INFO    ] 2026-06-19 00:04:04
[2026-06-19 00:04:05,117.117 INFO    ] 2026-06-19 00:04:05
[2026-06-19 00:04:05,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:04:05,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:04:05,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:04:05,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:04:05,638.638 INFO    ] time= 19/06/2026 00:04:05
[2026-06-19 00:04:05,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:04:05,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:04:05,802.802 INFO    ] No existing commands found in stream
[2026-06-19 00:04:10,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:04:10,833.833 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 00:04:13,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:04:13,467.467 INFO    ] Checking for system updates...
[2026-06-19 00:04:13,507.507 INFO    ] 200
[2026-06-19 00:04:13,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:13,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:04:13,576.576 INFO    ] No update needed
[2026-06-19 00:04:13,579.579 INFO    ] Checking for camera pi updates...
[2026-06-19 00:04:13,617.617 INFO    ] 200
[2026-06-19 00:04:13,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:13,663.663 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:04:13,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:04:13,713.713 INFO    ] No camera update needed
[2026-06-19 00:04:13,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:04:13,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:04:13,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:04:13,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:04:15,772.772 INFO    ] ================================================
[2026-06-19 00:04:15,788.788 INFO    ] Launching Daemon at Fri Jun 19 00:04:15 IST 2026
[2026-06-19 00:04:15,800.800 INFO    ] ================================================
[2026-06-19 00:04:16,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:04:16
[2026-06-19 00:04:16,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:04:17,265.265 INFO    ] Initializing speech engine...
[2026-06-19 00:04:17,274.274 INFO    ] 2026-06-19 00:04:17
[2026-06-19 00:04:17,534.534 INFO    ] 2026-06-19 00:04:17
[2026-06-19 00:04:17,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:04:17,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:04:17,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:04:17,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:04:17,997.997 INFO    ] time= 19/06/2026 00:04:17
[2026-06-19 00:04:18,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:04:18,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:04:18,149.149 INFO    ] No existing commands found in stream
[2026-06-19 00:04:23,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:04:23,164.164 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 00:04:25,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:04:25,693.693 INFO    ] Checking for system updates...
[2026-06-19 00:04:25,732.732 INFO    ] 200
[2026-06-19 00:04:25,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:25,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:04:25,790.790 INFO    ] No update needed
[2026-06-19 00:04:25,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 00:04:25,827.827 INFO    ] 200
[2026-06-19 00:04:25,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:25,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:04:25,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:04:25,933.933 INFO    ] No camera update needed
[2026-06-19 00:04:25,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:04:25,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:04:25,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:04:25,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:04:27,989.989 INFO    ] ================================================
[2026-06-19 00:04:28,006.006 INFO    ] Launching Daemon at Fri Jun 19 00:04:28 IST 2026
[2026-06-19 00:04:28,017.017 INFO    ] ================================================
[2026-06-19 00:04:28,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:04:28
[2026-06-19 00:04:29,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:04:29,633.633 INFO    ] Initializing speech engine...
[2026-06-19 00:04:29,647.647 INFO    ] 2026-06-19 00:04:29
[2026-06-19 00:04:29,929.929 INFO    ] 2026-06-19 00:04:29
[2026-06-19 00:04:29,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:04:30,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:04:30,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:04:30,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:04:30,396.396 INFO    ] time= 19/06/2026 00:04:30
[2026-06-19 00:04:30,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:04:30,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:04:30,541.541 INFO    ] No existing commands found in stream
[2026-06-19 00:04:35,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:04:35,557.557 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 00:04:39,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:04:39,363.363 INFO    ] Checking for system updates...
[2026-06-19 00:04:39,401.401 INFO    ] 200
[2026-06-19 00:04:39,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:39,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:04:39,458.458 INFO    ] No update needed
[2026-06-19 00:04:39,461.461 INFO    ] Checking for camera pi updates...
[2026-06-19 00:04:39,498.498 INFO    ] 200
[2026-06-19 00:04:39,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:39,541.541 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:04:39,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:04:39,587.587 INFO    ] No camera update needed
[2026-06-19 00:04:39,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:04:39,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:04:39,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:04:39,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:04:41,643.643 INFO    ] ================================================
[2026-06-19 00:04:41,665.665 INFO    ] Launching Daemon at Fri Jun 19 00:04:41 IST 2026
[2026-06-19 00:04:41,677.677 INFO    ] ================================================
[2026-06-19 00:04:42,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:04:42
[2026-06-19 00:04:42,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:04:43,122.122 INFO    ] Initializing speech engine...
[2026-06-19 00:04:43,142.142 INFO    ] 2026-06-19 00:04:43
[2026-06-19 00:04:43,408.408 INFO    ] 2026-06-19 00:04:43
[2026-06-19 00:04:43,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:04:43,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:04:43,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:04:43,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:04:43,785.785 INFO    ] time= 19/06/2026 00:04:43
[2026-06-19 00:04:43,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:04:43,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:04:43,909.909 INFO    ] No existing commands found in stream
[2026-06-19 00:04:48,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:04:48,923.923 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 00:04:52,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:04:52,532.532 INFO    ] Checking for system updates...
[2026-06-19 00:04:52,572.572 INFO    ] 200
[2026-06-19 00:04:52,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:52,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:04:52,629.629 INFO    ] No update needed
[2026-06-19 00:04:52,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 00:04:52,669.669 INFO    ] 200
[2026-06-19 00:04:52,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:04:52,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:04:52,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:04:52,771.771 INFO    ] No camera update needed
[2026-06-19 00:04:52,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:04:52,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:04:52,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:04:52,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:04:54,827.827 INFO    ] ================================================
[2026-06-19 00:04:54,842.842 INFO    ] Launching Daemon at Fri Jun 19 00:04:54 IST 2026
[2026-06-19 00:04:54,853.853 INFO    ] ================================================
[2026-06-19 00:04:55,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:04:55
[2026-06-19 00:04:56,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:04:56,298.298 INFO    ] Initializing speech engine...
[2026-06-19 00:04:56,320.320 INFO    ] 2026-06-19 00:04:56
[2026-06-19 00:04:56,582.582 INFO    ] 2026-06-19 00:04:56
[2026-06-19 00:04:56,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:04:56,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:04:56,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:04:57,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:04:57,070.070 INFO    ] time= 19/06/2026 00:04:57
[2026-06-19 00:04:57,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:04:57,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:04:57,260.260 INFO    ] No existing commands found in stream
[2026-06-19 00:05:02,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:05:02,290.290 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 00:05:04,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:05:04,109.109 INFO    ] Checking for system updates...
[2026-06-19 00:05:04,146.146 INFO    ] 200
[2026-06-19 00:05:04,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:04,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:05:04,210.210 INFO    ] No update needed
[2026-06-19 00:05:04,212.212 INFO    ] Checking for camera pi updates...
[2026-06-19 00:05:04,249.249 INFO    ] 200
[2026-06-19 00:05:04,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:04,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:05:04,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:05:04,353.353 INFO    ] No camera update needed
[2026-06-19 00:05:04,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:05:04,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:05:04,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:05:04,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:05:06,409.409 INFO    ] ================================================
[2026-06-19 00:05:06,424.424 INFO    ] Launching Daemon at Fri Jun 19 00:05:06 IST 2026
[2026-06-19 00:05:06,435.435 INFO    ] ================================================
[2026-06-19 00:05:07,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:05:07
[2026-06-19 00:05:07,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:05:08,069.069 INFO    ] Initializing speech engine...
[2026-06-19 00:05:08,081.081 INFO    ] 2026-06-19 00:05:08
[2026-06-19 00:05:08,343.343 INFO    ] 2026-06-19 00:05:08
[2026-06-19 00:05:08,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:05:08,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:05:08,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:05:08,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:05:08,849.849 INFO    ] time= 19/06/2026 00:05:08
[2026-06-19 00:05:08,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:05:08,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:05:09,064.064 INFO    ] No existing commands found in stream
[2026-06-19 00:05:14,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:05:14,087.087 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 00:05:15,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:05:15,108.108 INFO    ] Checking for system updates...
[2026-06-19 00:05:15,148.148 INFO    ] 200
[2026-06-19 00:05:15,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:15,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:05:15,210.210 INFO    ] No update needed
[2026-06-19 00:05:15,212.212 INFO    ] Checking for camera pi updates...
[2026-06-19 00:05:15,247.247 INFO    ] 200
[2026-06-19 00:05:15,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:15,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:05:15,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:05:15,356.356 INFO    ] No camera update needed
[2026-06-19 00:05:15,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:05:15,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:05:15,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:05:15,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:05:17,414.414 INFO    ] ================================================
[2026-06-19 00:05:17,430.430 INFO    ] Launching Daemon at Fri Jun 19 00:05:17 IST 2026
[2026-06-19 00:05:17,443.443 INFO    ] ================================================
[2026-06-19 00:05:18,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:05:18
[2026-06-19 00:05:18,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:05:18,971.971 INFO    ] Initializing speech engine...
[2026-06-19 00:05:18,974.974 INFO    ] 2026-06-19 00:05:18
[2026-06-19 00:05:19,252.252 INFO    ] 2026-06-19 00:05:19
[2026-06-19 00:05:19,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:05:19,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:05:19,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:05:19,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:05:19,622.622 INFO    ] time= 19/06/2026 00:05:19
[2026-06-19 00:05:19,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:05:19,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:05:19,795.795 INFO    ] No existing commands found in stream
[2026-06-19 00:05:24,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:05:24,829.829 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 00:05:28,255.255 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:05:28,258.258 INFO    ] Checking for system updates...
[2026-06-19 00:05:28,294.294 INFO    ] 200
[2026-06-19 00:05:28,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:28,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:05:28,352.352 INFO    ] No update needed
[2026-06-19 00:05:28,354.354 INFO    ] Checking for camera pi updates...
[2026-06-19 00:05:28,392.392 INFO    ] 200
[2026-06-19 00:05:28,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:28,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:05:28,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:05:28,486.486 INFO    ] No camera update needed
[2026-06-19 00:05:28,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:05:28,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:05:28,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:05:28,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:05:30,541.541 INFO    ] ================================================
[2026-06-19 00:05:30,557.557 INFO    ] Launching Daemon at Fri Jun 19 00:05:30 IST 2026
[2026-06-19 00:05:30,568.568 INFO    ] ================================================
[2026-06-19 00:05:31,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:05:31
[2026-06-19 00:05:31,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:05:32,049.049 INFO    ] Initializing speech engine...
[2026-06-19 00:05:32,061.061 INFO    ] 2026-06-19 00:05:32
[2026-06-19 00:05:32,324.324 INFO    ] 2026-06-19 00:05:32
[2026-06-19 00:05:32,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:05:32,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:05:32,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:05:32,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:05:32,673.673 INFO    ] time= 19/06/2026 00:05:32
[2026-06-19 00:05:32,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:05:32,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:05:32,734.734 INFO    ] No existing commands found in stream
[2026-06-19 00:05:37,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:05:37,778.778 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 00:05:39,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:05:39,353.353 INFO    ] Checking for system updates...
[2026-06-19 00:05:39,393.393 INFO    ] 200
[2026-06-19 00:05:39,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:39,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:05:39,456.456 INFO    ] No update needed
[2026-06-19 00:05:39,459.459 INFO    ] Checking for camera pi updates...
[2026-06-19 00:05:39,492.492 INFO    ] 200
[2026-06-19 00:05:39,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:39,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:05:39,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:05:39,583.583 INFO    ] No camera update needed
[2026-06-19 00:05:39,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:05:39,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:05:39,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:05:39,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:05:41,640.640 INFO    ] ================================================
[2026-06-19 00:05:41,656.656 INFO    ] Launching Daemon at Fri Jun 19 00:05:41 IST 2026
[2026-06-19 00:05:41,668.668 INFO    ] ================================================
[2026-06-19 00:05:42,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:05:42
[2026-06-19 00:05:42,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:05:43,133.133 INFO    ] Initializing speech engine...
[2026-06-19 00:05:43,139.139 INFO    ] 2026-06-19 00:05:43
[2026-06-19 00:05:43,437.437 INFO    ] 2026-06-19 00:05:43
[2026-06-19 00:05:43,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:05:43,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:05:43,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:05:43,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:05:43,854.854 INFO    ] time= 19/06/2026 00:05:43
[2026-06-19 00:05:43,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:05:43,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:05:44,009.009 INFO    ] No existing commands found in stream
[2026-06-19 00:05:49,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:05:49,037.037 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 00:05:52,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:05:52,257.257 INFO    ] Checking for system updates...
[2026-06-19 00:05:52,294.294 INFO    ] 200
[2026-06-19 00:05:52,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:52,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:05:52,351.351 INFO    ] No update needed
[2026-06-19 00:05:52,354.354 INFO    ] Checking for camera pi updates...
[2026-06-19 00:05:52,391.391 INFO    ] 200
[2026-06-19 00:05:52,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:05:52,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:05:52,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:05:52,482.482 INFO    ] No camera update needed
[2026-06-19 00:05:52,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:05:52,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:05:52,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:05:52,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:05:54,537.537 INFO    ] ================================================
[2026-06-19 00:05:54,552.552 INFO    ] Launching Daemon at Fri Jun 19 00:05:54 IST 2026
[2026-06-19 00:05:54,564.564 INFO    ] ================================================
[2026-06-19 00:05:55,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:05:55
[2026-06-19 00:05:55,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:05:55,971.971 INFO    ] Initializing speech engine...
[2026-06-19 00:05:55,986.986 INFO    ] 2026-06-19 00:05:55
[2026-06-19 00:05:56,253.253 INFO    ] 2026-06-19 00:05:56
[2026-06-19 00:05:56,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:05:56,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:05:56,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:05:56,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:05:56,741.741 INFO    ] time= 19/06/2026 00:05:56
[2026-06-19 00:05:56,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:05:56,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:05:56,885.885 INFO    ] No existing commands found in stream
[2026-06-19 00:06:01,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:06:01,901.901 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 00:06:05,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:06:05,043.043 INFO    ] Checking for system updates...
[2026-06-19 00:06:05,085.085 INFO    ] 200
[2026-06-19 00:06:05,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:05,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:06:05,150.150 INFO    ] No update needed
[2026-06-19 00:06:05,153.153 INFO    ] Checking for camera pi updates...
[2026-06-19 00:06:05,191.191 INFO    ] 200
[2026-06-19 00:06:05,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:05,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:06:05,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:06:05,289.289 INFO    ] No camera update needed
[2026-06-19 00:06:05,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:06:05,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:06:05,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:06:05,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:06:07,347.347 INFO    ] ================================================
[2026-06-19 00:06:07,362.362 INFO    ] Launching Daemon at Fri Jun 19 00:06:07 IST 2026
[2026-06-19 00:06:07,373.373 INFO    ] ================================================
[2026-06-19 00:06:07,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:06:07
[2026-06-19 00:06:08,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:06:08,831.831 INFO    ] Initializing speech engine...
[2026-06-19 00:06:08,840.840 INFO    ] 2026-06-19 00:06:08
[2026-06-19 00:06:09,090.090 INFO    ] 2026-06-19 00:06:09
[2026-06-19 00:06:09,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:06:09,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:06:09,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:06:09,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:06:09,560.560 INFO    ] time= 19/06/2026 00:06:09
[2026-06-19 00:06:09,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:06:09,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:06:09,709.709 INFO    ] No existing commands found in stream
[2026-06-19 00:06:14,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:06:14,720.720 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 00:06:18,216.216 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:06:18,218.218 INFO    ] Checking for system updates...
[2026-06-19 00:06:18,258.258 INFO    ] 200
[2026-06-19 00:06:18,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:18,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:06:18,319.319 INFO    ] No update needed
[2026-06-19 00:06:18,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 00:06:18,357.357 INFO    ] 200
[2026-06-19 00:06:18,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:18,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:06:18,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:06:18,455.455 INFO    ] No camera update needed
[2026-06-19 00:06:18,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:06:18,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:06:18,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:06:18,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:06:20,512.512 INFO    ] ================================================
[2026-06-19 00:06:20,528.528 INFO    ] Launching Daemon at Fri Jun 19 00:06:20 IST 2026
[2026-06-19 00:06:20,539.539 INFO    ] ================================================
[2026-06-19 00:06:21,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:06:21
[2026-06-19 00:06:21,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:06:21,997.997 INFO    ] Initializing speech engine...
[2026-06-19 00:06:22,006.006 INFO    ] 2026-06-19 00:06:22
[2026-06-19 00:06:22,260.260 INFO    ] 2026-06-19 00:06:22
[2026-06-19 00:06:22,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:06:22,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:06:22,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:06:22,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:06:22,744.744 INFO    ] time= 19/06/2026 00:06:22
[2026-06-19 00:06:22,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:06:22,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:06:22,908.908 INFO    ] No existing commands found in stream
[2026-06-19 00:06:27,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:06:27,922.922 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 00:06:31,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:06:31,850.850 INFO    ] Checking for system updates...
[2026-06-19 00:06:31,900.900 INFO    ] 200
[2026-06-19 00:06:31,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:31,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:06:31,982.982 INFO    ] No update needed
[2026-06-19 00:06:31,985.985 INFO    ] Checking for camera pi updates...
[2026-06-19 00:06:32,024.024 INFO    ] 200
[2026-06-19 00:06:32,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:32,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:06:32,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:06:32,137.137 INFO    ] No camera update needed
[2026-06-19 00:06:32,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:06:32,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:06:32,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:06:32,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:06:34,199.199 INFO    ] ================================================
[2026-06-19 00:06:34,214.214 INFO    ] Launching Daemon at Fri Jun 19 00:06:34 IST 2026
[2026-06-19 00:06:34,225.225 INFO    ] ================================================
[2026-06-19 00:06:34,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:06:34
[2026-06-19 00:06:35,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:06:35,664.664 INFO    ] Initializing speech engine...
[2026-06-19 00:06:35,673.673 INFO    ] 2026-06-19 00:06:35
[2026-06-19 00:06:35,923.923 INFO    ] 2026-06-19 00:06:35
[2026-06-19 00:06:35,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:06:36,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:06:36,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:06:36,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:06:36,306.306 INFO    ] time= 19/06/2026 00:06:36
[2026-06-19 00:06:36,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:06:36,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:06:36,481.481 INFO    ] No existing commands found in stream
[2026-06-19 00:06:41,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:06:41,514.514 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 00:06:45,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:06:45,347.347 INFO    ] Checking for system updates...
[2026-06-19 00:06:45,382.382 INFO    ] 200
[2026-06-19 00:06:45,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:45,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:06:45,440.440 INFO    ] No update needed
[2026-06-19 00:06:45,443.443 INFO    ] Checking for camera pi updates...
[2026-06-19 00:06:45,477.477 INFO    ] 200
[2026-06-19 00:06:45,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:45,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:06:45,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:06:45,562.562 INFO    ] No camera update needed
[2026-06-19 00:06:45,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:06:45,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:06:45,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:06:45,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:06:47,618.618 INFO    ] ================================================
[2026-06-19 00:06:47,634.634 INFO    ] Launching Daemon at Fri Jun 19 00:06:47 IST 2026
[2026-06-19 00:06:47,644.644 INFO    ] ================================================
[2026-06-19 00:06:48,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:06:48
[2026-06-19 00:06:48,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:06:49,264.264 INFO    ] Initializing speech engine...
[2026-06-19 00:06:49,272.272 INFO    ] 2026-06-19 00:06:49
[2026-06-19 00:06:49,545.545 INFO    ] 2026-06-19 00:06:49
[2026-06-19 00:06:49,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:06:49,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:06:49,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:06:49,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:06:50,026.026 INFO    ] time= 19/06/2026 00:06:49
[2026-06-19 00:06:50,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:06:50,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:06:50,223.223 INFO    ] No existing commands found in stream
[2026-06-19 00:06:55,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:06:55,258.258 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 00:06:58,716.716 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:06:58,719.719 INFO    ] Checking for system updates...
[2026-06-19 00:06:58,758.758 INFO    ] 200
[2026-06-19 00:06:58,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:58,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:06:58,823.823 INFO    ] No update needed
[2026-06-19 00:06:58,825.825 INFO    ] Checking for camera pi updates...
[2026-06-19 00:06:58,859.859 INFO    ] 200
[2026-06-19 00:06:58,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:06:58,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:06:58,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:06:58,954.954 INFO    ] No camera update needed
[2026-06-19 00:06:58,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:06:58,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:06:58,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:06:58,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:07:01,014.014 INFO    ] ================================================
[2026-06-19 00:07:01,029.029 INFO    ] Launching Daemon at Fri Jun 19 00:07:01 IST 2026
[2026-06-19 00:07:01,040.040 INFO    ] ================================================
[2026-06-19 00:07:01,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:07:01
[2026-06-19 00:07:02,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:07:02,747.747 INFO    ] Initializing speech engine...
[2026-06-19 00:07:02,759.759 INFO    ] 2026-06-19 00:07:02
[2026-06-19 00:07:03,048.048 INFO    ] 2026-06-19 00:07:03
[2026-06-19 00:07:03,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:07:03,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:07:03,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:07:03,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:07:03,555.555 INFO    ] time= 19/06/2026 00:07:03
[2026-06-19 00:07:03,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:07:03,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:07:03,729.729 INFO    ] No existing commands found in stream
[2026-06-19 00:07:08,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:07:08,749.749 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 00:07:10,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:07:10,653.653 INFO    ] Checking for system updates...
[2026-06-19 00:07:10,690.690 INFO    ] 200
[2026-06-19 00:07:10,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:10,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:07:10,747.747 INFO    ] No update needed
[2026-06-19 00:07:10,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 00:07:10,782.782 INFO    ] 200
[2026-06-19 00:07:10,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:10,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:07:10,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:07:10,882.882 INFO    ] No camera update needed
[2026-06-19 00:07:10,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:07:10,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:07:10,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:07:10,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:07:12,937.937 INFO    ] ================================================
[2026-06-19 00:07:12,952.952 INFO    ] Launching Daemon at Fri Jun 19 00:07:12 IST 2026
[2026-06-19 00:07:12,963.963 INFO    ] ================================================
[2026-06-19 00:07:13,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:07:13
[2026-06-19 00:07:14,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:07:14,436.436 INFO    ] Initializing speech engine...
[2026-06-19 00:07:14,441.441 INFO    ] 2026-06-19 00:07:14
[2026-06-19 00:07:14,702.702 INFO    ] 2026-06-19 00:07:14
[2026-06-19 00:07:14,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:07:14,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:07:14,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:07:15,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:07:15,132.132 INFO    ] time= 19/06/2026 00:07:15
[2026-06-19 00:07:15,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:07:15,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:07:15,312.312 INFO    ] No existing commands found in stream
[2026-06-19 00:07:20,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:07:20,327.327 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 00:07:21,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:07:21,329.329 INFO    ] Checking for system updates...
[2026-06-19 00:07:21,371.371 INFO    ] 200
[2026-06-19 00:07:21,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:21,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:07:21,431.431 INFO    ] No update needed
[2026-06-19 00:07:21,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 00:07:21,474.474 INFO    ] 200
[2026-06-19 00:07:21,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:21,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:07:21,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:07:21,586.586 INFO    ] No camera update needed
[2026-06-19 00:07:21,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:07:21,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:07:21,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:07:21,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:07:23,647.647 INFO    ] ================================================
[2026-06-19 00:07:23,662.662 INFO    ] Launching Daemon at Fri Jun 19 00:07:23 IST 2026
[2026-06-19 00:07:23,673.673 INFO    ] ================================================
[2026-06-19 00:07:24,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:07:24
[2026-06-19 00:07:24,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:07:25,135.135 INFO    ] Initializing speech engine...
[2026-06-19 00:07:25,142.142 INFO    ] 2026-06-19 00:07:25
[2026-06-19 00:07:25,404.404 INFO    ] 2026-06-19 00:07:25
[2026-06-19 00:07:25,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:07:25,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:07:25,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:07:25,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:07:25,867.867 INFO    ] time= 19/06/2026 00:07:25
[2026-06-19 00:07:25,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:07:25,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:07:26,012.012 INFO    ] No existing commands found in stream
[2026-06-19 00:07:31,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:07:31,027.027 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 00:07:31,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:07:31,934.934 INFO    ] Checking for system updates...
[2026-06-19 00:07:31,973.973 INFO    ] 200
[2026-06-19 00:07:31,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:32,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:07:32,036.036 INFO    ] No update needed
[2026-06-19 00:07:32,039.039 INFO    ] Checking for camera pi updates...
[2026-06-19 00:07:32,087.087 INFO    ] 200
[2026-06-19 00:07:32,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:32,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:07:32,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:07:32,174.174 INFO    ] No camera update needed
[2026-06-19 00:07:32,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:07:32,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:07:32,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:07:32,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:07:34,237.237 INFO    ] ================================================
[2026-06-19 00:07:34,253.253 INFO    ] Launching Daemon at Fri Jun 19 00:07:34 IST 2026
[2026-06-19 00:07:34,265.265 INFO    ] ================================================
[2026-06-19 00:07:34,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:07:34
[2026-06-19 00:07:35,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:07:35,693.693 INFO    ] Initializing speech engine...
[2026-06-19 00:07:35,717.717 INFO    ] 2026-06-19 00:07:35
[2026-06-19 00:07:35,990.990 INFO    ] 2026-06-19 00:07:35
[2026-06-19 00:07:36,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:07:36,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:07:36,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:07:36,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:07:36,346.346 INFO    ] time= 19/06/2026 00:07:36
[2026-06-19 00:07:36,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:07:36,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:07:36,424.424 INFO    ] No existing commands found in stream
[2026-06-19 00:07:41,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:07:41,438.438 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 00:07:44,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:07:44,016.016 INFO    ] Checking for system updates...
[2026-06-19 00:07:44,052.052 INFO    ] 200
[2026-06-19 00:07:44,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:44,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:07:44,111.111 INFO    ] No update needed
[2026-06-19 00:07:44,113.113 INFO    ] Checking for camera pi updates...
[2026-06-19 00:07:44,147.147 INFO    ] 200
[2026-06-19 00:07:44,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:44,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:07:44,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:07:44,338.338 INFO    ] No camera update needed
[2026-06-19 00:07:44,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:07:44,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:07:44,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:07:44,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:07:46,395.395 INFO    ] ================================================
[2026-06-19 00:07:46,411.411 INFO    ] Launching Daemon at Fri Jun 19 00:07:46 IST 2026
[2026-06-19 00:07:46,422.422 INFO    ] ================================================
[2026-06-19 00:07:47,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:07:47
[2026-06-19 00:07:47,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:07:47,978.978 INFO    ] Initializing speech engine...
[2026-06-19 00:07:47,999.999 INFO    ] 2026-06-19 00:07:47
[2026-06-19 00:07:48,276.276 INFO    ] 2026-06-19 00:07:48
[2026-06-19 00:07:48,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:07:48,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:07:48,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:07:48,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:07:48,780.780 INFO    ] time= 19/06/2026 00:07:48
[2026-06-19 00:07:48,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:07:48,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:07:48,970.970 INFO    ] No existing commands found in stream
[2026-06-19 00:07:53,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:07:53,991.991 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 00:07:54,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:07:54,837.837 INFO    ] Checking for system updates...
[2026-06-19 00:07:54,876.876 INFO    ] 200
[2026-06-19 00:07:54,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:54,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:07:54,934.934 INFO    ] No update needed
[2026-06-19 00:07:54,937.937 INFO    ] Checking for camera pi updates...
[2026-06-19 00:07:54,970.970 INFO    ] 200
[2026-06-19 00:07:54,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:07:55,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:07:55,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:07:55,071.071 INFO    ] No camera update needed
[2026-06-19 00:07:55,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:07:55,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:07:55,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:07:55,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:07:57,126.126 INFO    ] ================================================
[2026-06-19 00:07:57,142.142 INFO    ] Launching Daemon at Fri Jun 19 00:07:57 IST 2026
[2026-06-19 00:07:57,153.153 INFO    ] ================================================
[2026-06-19 00:07:57,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:07:57
[2026-06-19 00:07:58,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:07:58,640.640 INFO    ] Initializing speech engine...
[2026-06-19 00:07:58,663.663 INFO    ] 2026-06-19 00:07:58
[2026-06-19 00:07:58,919.919 INFO    ] 2026-06-19 00:07:58
[2026-06-19 00:07:58,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:07:59,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:07:59,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:07:59,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:07:59,407.407 INFO    ] time= 19/06/2026 00:07:59
[2026-06-19 00:07:59,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:07:59,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:07:59,550.550 INFO    ] No existing commands found in stream
[2026-06-19 00:08:04,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:08:04,564.564 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 00:08:05,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:08:05,314.314 INFO    ] Checking for system updates...
[2026-06-19 00:08:05,352.352 INFO    ] 200
[2026-06-19 00:08:05,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:05,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:08:05,410.410 INFO    ] No update needed
[2026-06-19 00:08:05,413.413 INFO    ] Checking for camera pi updates...
[2026-06-19 00:08:05,446.446 INFO    ] 200
[2026-06-19 00:08:05,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:05,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:08:05,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:08:05,542.542 INFO    ] No camera update needed
[2026-06-19 00:08:05,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:08:05,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:08:05,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:08:05,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:08:07,603.603 INFO    ] ================================================
[2026-06-19 00:08:07,619.619 INFO    ] Launching Daemon at Fri Jun 19 00:08:07 IST 2026
[2026-06-19 00:08:07,630.630 INFO    ] ================================================
[2026-06-19 00:08:08,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:08:08
[2026-06-19 00:08:08,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:08:09,281.281 INFO    ] Initializing speech engine...
[2026-06-19 00:08:09,295.295 INFO    ] 2026-06-19 00:08:09
[2026-06-19 00:08:09,591.591 INFO    ] 2026-06-19 00:08:09
[2026-06-19 00:08:09,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:08:09,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:08:09,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:08:10,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:08:10,027.027 INFO    ] time= 19/06/2026 00:08:10
[2026-06-19 00:08:10,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:08:10,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:08:10,202.202 INFO    ] No existing commands found in stream
[2026-06-19 00:08:15,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:08:15,219.219 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 00:08:18,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:08:18,882.882 INFO    ] Checking for system updates...
[2026-06-19 00:08:18,919.919 INFO    ] 200
[2026-06-19 00:08:18,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:18,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:08:18,978.978 INFO    ] No update needed
[2026-06-19 00:08:18,981.981 INFO    ] Checking for camera pi updates...
[2026-06-19 00:08:19,014.014 INFO    ] 200
[2026-06-19 00:08:19,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:19,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:08:19,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:08:19,119.119 INFO    ] No camera update needed
[2026-06-19 00:08:19,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:08:19,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:08:19,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:08:19,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:08:21,175.175 INFO    ] ================================================
[2026-06-19 00:08:21,190.190 INFO    ] Launching Daemon at Fri Jun 19 00:08:21 IST 2026
[2026-06-19 00:08:21,200.200 INFO    ] ================================================
[2026-06-19 00:08:21,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:08:21
[2026-06-19 00:08:22,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:08:22,663.663 INFO    ] Initializing speech engine...
[2026-06-19 00:08:22,672.672 INFO    ] 2026-06-19 00:08:22
[2026-06-19 00:08:22,933.933 INFO    ] 2026-06-19 00:08:22
[2026-06-19 00:08:22,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:08:23,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:08:23,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:08:23,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:08:23,392.392 INFO    ] time= 19/06/2026 00:08:23
[2026-06-19 00:08:23,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:08:23,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:08:23,540.540 INFO    ] No existing commands found in stream
[2026-06-19 00:08:28,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:08:28,554.554 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 00:08:31,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:08:31,447.447 INFO    ] Checking for system updates...
[2026-06-19 00:08:31,483.483 INFO    ] 200
[2026-06-19 00:08:31,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:31,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:08:31,543.543 INFO    ] No update needed
[2026-06-19 00:08:31,545.545 INFO    ] Checking for camera pi updates...
[2026-06-19 00:08:31,579.579 INFO    ] 200
[2026-06-19 00:08:31,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:31,627.627 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:08:31,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:08:31,680.680 INFO    ] No camera update needed
[2026-06-19 00:08:31,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:08:31,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:08:31,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:08:31,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:08:33,738.738 INFO    ] ================================================
[2026-06-19 00:08:33,753.753 INFO    ] Launching Daemon at Fri Jun 19 00:08:33 IST 2026
[2026-06-19 00:08:33,764.764 INFO    ] ================================================
[2026-06-19 00:08:34,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:08:34
[2026-06-19 00:08:35,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:08:35,398.398 INFO    ] Initializing speech engine...
[2026-06-19 00:08:35,407.407 INFO    ] 2026-06-19 00:08:35
[2026-06-19 00:08:35,692.692 INFO    ] 2026-06-19 00:08:35
[2026-06-19 00:08:35,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:08:35,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:08:35,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:08:36,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:08:36,163.163 INFO    ] time= 19/06/2026 00:08:36
[2026-06-19 00:08:36,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:08:36,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:08:36,360.360 INFO    ] No existing commands found in stream
[2026-06-19 00:08:41,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:08:41,394.394 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 00:08:45,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:08:45,532.532 INFO    ] Checking for system updates...
[2026-06-19 00:08:45,569.569 INFO    ] 200
[2026-06-19 00:08:45,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:45,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:08:45,627.627 INFO    ] No update needed
[2026-06-19 00:08:45,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 00:08:45,672.672 INFO    ] 200
[2026-06-19 00:08:45,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:45,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:08:45,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:08:45,752.752 INFO    ] No camera update needed
[2026-06-19 00:08:45,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:08:45,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:08:45,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:08:45,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:08:47,813.813 INFO    ] ================================================
[2026-06-19 00:08:47,828.828 INFO    ] Launching Daemon at Fri Jun 19 00:08:47 IST 2026
[2026-06-19 00:08:47,839.839 INFO    ] ================================================
[2026-06-19 00:08:48,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:08:48
[2026-06-19 00:08:49,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:08:49,420.420 INFO    ] Initializing speech engine...
[2026-06-19 00:08:49,436.436 INFO    ] 2026-06-19 00:08:49
[2026-06-19 00:08:49,746.746 INFO    ] 2026-06-19 00:08:49
[2026-06-19 00:08:49,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:08:50,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:08:50,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:08:50,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:08:50,256.256 INFO    ] time= 19/06/2026 00:08:50
[2026-06-19 00:08:50,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:08:50,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:08:50,409.409 INFO    ] No existing commands found in stream
[2026-06-19 00:08:55,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:08:55,429.429 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 00:08:58,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:08:58,929.929 INFO    ] Checking for system updates...
[2026-06-19 00:08:58,971.971 INFO    ] 200
[2026-06-19 00:08:58,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:59,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:08:59,031.031 INFO    ] No update needed
[2026-06-19 00:08:59,034.034 INFO    ] Checking for camera pi updates...
[2026-06-19 00:08:59,074.074 INFO    ] 200
[2026-06-19 00:08:59,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:08:59,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:08:59,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:08:59,172.172 INFO    ] No camera update needed
[2026-06-19 00:08:59,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:08:59,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:08:59,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:08:59,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:09:01,231.231 INFO    ] ================================================
[2026-06-19 00:09:01,247.247 INFO    ] Launching Daemon at Fri Jun 19 00:09:01 IST 2026
[2026-06-19 00:09:01,258.258 INFO    ] ================================================
[2026-06-19 00:09:02,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:09:01
[2026-06-19 00:09:02,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:09:02,973.973 INFO    ] Initializing speech engine...
[2026-06-19 00:09:03,048.048 INFO    ] 2026-06-19 00:09:03
[2026-06-19 00:09:03,340.340 INFO    ] 2026-06-19 00:09:03
[2026-06-19 00:09:03,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:09:03,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:09:03,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:09:03,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:09:03,707.707 INFO    ] time= 19/06/2026 00:09:03
[2026-06-19 00:09:03,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:09:03,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:09:03,788.788 INFO    ] No existing commands found in stream
[2026-06-19 00:09:08,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:09:08,803.803 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 00:09:12,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:09:12,364.364 INFO    ] Checking for system updates...
[2026-06-19 00:09:12,400.400 INFO    ] 200
[2026-06-19 00:09:12,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:09:12,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:09:12,458.458 INFO    ] No update needed
[2026-06-19 00:09:12,461.461 INFO    ] Checking for camera pi updates...
[2026-06-19 00:09:12,495.495 INFO    ] 200
[2026-06-19 00:09:12,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:09:12,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:09:12,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:09:12,593.593 INFO    ] No camera update needed
[2026-06-19 00:09:12,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:09:12,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:09:12,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:09:12,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:09:14,649.649 INFO    ] ================================================
[2026-06-19 00:09:14,665.665 INFO    ] Launching Daemon at Fri Jun 19 00:09:14 IST 2026
[2026-06-19 00:09:14,676.676 INFO    ] ================================================
[2026-06-19 00:09:15,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:09:15
[2026-06-19 00:09:15,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:09:16,276.276 INFO    ] Initializing speech engine...
[2026-06-19 00:09:16,284.284 INFO    ] 2026-06-19 00:09:16
[2026-06-19 00:09:16,555.555 INFO    ] 2026-06-19 00:09:16
[2026-06-19 00:09:16,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:09:16,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:09:16,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:09:16,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:09:17,053.053 INFO    ] time= 19/06/2026 00:09:16
[2026-06-19 00:09:17,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:09:17,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:09:17,260.260 INFO    ] No existing commands found in stream
[2026-06-19 00:09:22,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:09:22,291.291 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 00:09:25,437.437 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:09:25,440.440 INFO    ] Checking for system updates...
[2026-06-19 00:09:25,477.477 INFO    ] 200
[2026-06-19 00:09:25,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:09:25,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:09:25,541.541 INFO    ] No update needed
[2026-06-19 00:09:25,544.544 INFO    ] Checking for camera pi updates...
[2026-06-19 00:09:25,578.578 INFO    ] 200
[2026-06-19 00:09:25,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:09:25,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:09:25,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:09:25,669.669 INFO    ] No camera update needed
[2026-06-19 00:09:25,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:09:25,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:09:25,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:09:25,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:09:27,730.730 INFO    ] ================================================
[2026-06-19 00:09:27,745.745 INFO    ] Launching Daemon at Fri Jun 19 00:09:27 IST 2026
[2026-06-19 00:09:27,756.756 INFO    ] ================================================
[2026-06-19 00:09:28,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:09:28
[2026-06-19 00:09:29,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:09:29,359.359 INFO    ] Initializing speech engine...
[2026-06-19 00:09:29,386.386 INFO    ] 2026-06-19 00:09:29
[2026-06-19 00:09:29,670.670 INFO    ] 2026-06-19 00:09:29
[2026-06-19 00:09:29,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:09:29,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:09:29,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:09:30,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:09:30,145.145 INFO    ] time= 19/06/2026 00:09:30
[2026-06-19 00:09:30,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:09:30,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:09:30,298.298 INFO    ] No existing commands found in stream
[2026-06-19 00:09:35,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:09:35,314.314 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 00:09:39,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:09:39,690.690 INFO    ] Checking for system updates...
[2026-06-19 00:09:39,727.727 INFO    ] 200
[2026-06-19 00:09:39,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:09:39,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:09:39,787.787 INFO    ] No update needed
[2026-06-19 00:09:39,790.790 INFO    ] Checking for camera pi updates...
[2026-06-19 00:09:39,829.829 INFO    ] 200
[2026-06-19 00:09:39,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:09:39,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:09:39,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:09:39,928.928 INFO    ] No camera update needed
[2026-06-19 00:09:39,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:09:39,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:09:39,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:09:39,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:09:41,988.988 INFO    ] ================================================
[2026-06-19 00:09:42,003.003 INFO    ] Launching Daemon at Fri Jun 19 00:09:41 IST 2026
[2026-06-19 00:09:42,013.013 INFO    ] ================================================
[2026-06-19 00:09:42,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:09:42
[2026-06-19 00:09:43,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:09:43,438.438 INFO    ] Initializing speech engine...
[2026-06-19 00:09:43,446.446 INFO    ] 2026-06-19 00:09:43
[2026-06-19 00:09:43,698.698 INFO    ] 2026-06-19 00:09:43
[2026-06-19 00:09:43,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:09:43,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:09:43,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:09:44,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:09:44,157.157 INFO    ] time= 19/06/2026 00:09:44
[2026-06-19 00:09:44,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:09:44,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:09:44,329.329 INFO    ] No existing commands found in stream
[2026-06-19 00:09:49,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:09:49,344.344 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 00:09:51,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:09:51,964.964 INFO    ] Checking for system updates...
[2026-06-19 00:09:52,002.002 INFO    ] 200
[2026-06-19 00:09:52,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:09:52,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:09:52,060.060 INFO    ] No update needed
[2026-06-19 00:09:52,062.062 INFO    ] Checking for camera pi updates...
[2026-06-19 00:09:52,097.097 INFO    ] 200
[2026-06-19 00:09:52,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:09:52,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:09:52,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:09:52,293.293 INFO    ] No camera update needed
[2026-06-19 00:09:52,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:09:52,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:09:52,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:09:52,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:09:54,353.353 INFO    ] ================================================
[2026-06-19 00:09:54,369.369 INFO    ] Launching Daemon at Fri Jun 19 00:09:54 IST 2026
[2026-06-19 00:09:54,386.386 INFO    ] ================================================
[2026-06-19 00:09:55,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:09:55
[2026-06-19 00:09:55,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:09:55,974.974 INFO    ] Initializing speech engine...
[2026-06-19 00:09:55,982.982 INFO    ] 2026-06-19 00:09:55
[2026-06-19 00:09:56,241.241 INFO    ] 2026-06-19 00:09:56
[2026-06-19 00:09:56,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:09:56,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:09:56,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:09:56,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:09:56,674.674 INFO    ] time= 19/06/2026 00:09:56
[2026-06-19 00:09:56,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:09:56,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:09:56,830.830 INFO    ] No existing commands found in stream
[2026-06-19 00:10:01,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:10:01,852.852 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 00:10:08,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:10:08,099.099 INFO    ] Checking for system updates...
[2026-06-19 00:10:08,135.135 INFO    ] 200
[2026-06-19 00:10:08,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:08,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:10:08,193.193 INFO    ] No update needed
[2026-06-19 00:10:08,196.196 INFO    ] Checking for camera pi updates...
[2026-06-19 00:10:08,231.231 INFO    ] 200
[2026-06-19 00:10:08,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:08,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:10:08,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:10:08,324.324 INFO    ] No camera update needed
[2026-06-19 00:10:08,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:10:08,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:10:08,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:10:08,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:10:10,387.387 INFO    ] ================================================
[2026-06-19 00:10:10,403.403 INFO    ] Launching Daemon at Fri Jun 19 00:10:10 IST 2026
[2026-06-19 00:10:10,415.415 INFO    ] ================================================
[2026-06-19 00:10:11,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:10:11
[2026-06-19 00:10:11,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:10:12,092.092 INFO    ] Initializing speech engine...
[2026-06-19 00:10:12,102.102 INFO    ] 2026-06-19 00:10:12
[2026-06-19 00:10:12,404.404 INFO    ] 2026-06-19 00:10:12
[2026-06-19 00:10:12,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:10:12,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:10:12,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:10:12,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:10:12,904.904 INFO    ] time= 19/06/2026 00:10:12
[2026-06-19 00:10:12,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:10:13,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:10:13,058.058 INFO    ] No existing commands found in stream
[2026-06-19 00:10:18,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:10:18,076.076 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 00:10:18,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:10:18,537.537 INFO    ] Checking for system updates...
[2026-06-19 00:10:18,579.579 INFO    ] 200
[2026-06-19 00:10:18,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:18,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:10:18,645.645 INFO    ] No update needed
[2026-06-19 00:10:18,647.647 INFO    ] Checking for camera pi updates...
[2026-06-19 00:10:18,686.686 INFO    ] 200
[2026-06-19 00:10:18,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:18,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:10:18,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:10:18,779.779 INFO    ] No camera update needed
[2026-06-19 00:10:18,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:10:18,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:10:18,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:10:18,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:10:20,835.835 INFO    ] ================================================
[2026-06-19 00:10:20,851.851 INFO    ] Launching Daemon at Fri Jun 19 00:10:20 IST 2026
[2026-06-19 00:10:20,862.862 INFO    ] ================================================
[2026-06-19 00:10:21,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:10:21
[2026-06-19 00:10:22,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:10:22,349.349 INFO    ] Initializing speech engine...
[2026-06-19 00:10:22,358.358 INFO    ] 2026-06-19 00:10:22
[2026-06-19 00:10:22,608.608 INFO    ] 2026-06-19 00:10:22
[2026-06-19 00:10:22,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:10:22,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:10:22,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:10:23,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:10:23,081.081 INFO    ] time= 19/06/2026 00:10:23
[2026-06-19 00:10:23,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:10:23,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:10:23,227.227 INFO    ] No existing commands found in stream
[2026-06-19 00:10:28,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:10:28,242.242 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 00:10:31,482.482 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:10:31,484.484 INFO    ] Checking for system updates...
[2026-06-19 00:10:31,526.526 INFO    ] 200
[2026-06-19 00:10:31,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:31,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:10:31,585.585 INFO    ] No update needed
[2026-06-19 00:10:31,588.588 INFO    ] Checking for camera pi updates...
[2026-06-19 00:10:31,622.622 INFO    ] 200
[2026-06-19 00:10:31,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:31,665.665 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:10:31,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:10:31,700.700 INFO    ] No camera update needed
[2026-06-19 00:10:31,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:10:31,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:10:31,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:10:31,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:10:33,756.756 INFO    ] ================================================
[2026-06-19 00:10:33,772.772 INFO    ] Launching Daemon at Fri Jun 19 00:10:33 IST 2026
[2026-06-19 00:10:33,783.783 INFO    ] ================================================
[2026-06-19 00:10:34,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:10:34
[2026-06-19 00:10:34,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:10:35,229.229 INFO    ] Initializing speech engine...
[2026-06-19 00:10:35,247.247 INFO    ] 2026-06-19 00:10:35
[2026-06-19 00:10:35,544.544 INFO    ] 2026-06-19 00:10:35
[2026-06-19 00:10:35,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:10:35,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:10:35,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:10:35,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:10:35,950.950 INFO    ] time= 19/06/2026 00:10:35
[2026-06-19 00:10:35,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:10:35,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:10:36,069.069 INFO    ] No existing commands found in stream
[2026-06-19 00:10:41,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:10:41,083.083 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 00:10:41,952.952 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:10:41,955.955 INFO    ] Checking for system updates...
[2026-06-19 00:10:41,997.997 INFO    ] 200
[2026-06-19 00:10:41,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:42,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:10:42,056.056 INFO    ] No update needed
[2026-06-19 00:10:42,058.058 INFO    ] Checking for camera pi updates...
[2026-06-19 00:10:42,092.092 INFO    ] 200
[2026-06-19 00:10:42,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:42,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:10:42,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:10:42,198.198 INFO    ] No camera update needed
[2026-06-19 00:10:42,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:10:42,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:10:42,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:10:42,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:10:44,255.255 INFO    ] ================================================
[2026-06-19 00:10:44,271.271 INFO    ] Launching Daemon at Fri Jun 19 00:10:44 IST 2026
[2026-06-19 00:10:44,281.281 INFO    ] ================================================
[2026-06-19 00:10:44,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:10:44
[2026-06-19 00:10:45,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:10:45,738.738 INFO    ] Initializing speech engine...
[2026-06-19 00:10:45,748.748 INFO    ] 2026-06-19 00:10:45
[2026-06-19 00:10:46,053.053 INFO    ] 2026-06-19 00:10:46
[2026-06-19 00:10:46,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:10:46,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:10:46,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:10:46,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:10:46,424.424 INFO    ] time= 19/06/2026 00:10:46
[2026-06-19 00:10:46,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:10:46,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:10:46,504.504 INFO    ] No existing commands found in stream
[2026-06-19 00:10:51,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:10:51,519.519 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 00:10:52,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:10:52,802.802 INFO    ] Checking for system updates...
[2026-06-19 00:10:52,842.842 INFO    ] 200
[2026-06-19 00:10:52,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:52,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:10:52,909.909 INFO    ] No update needed
[2026-06-19 00:10:52,911.911 INFO    ] Checking for camera pi updates...
[2026-06-19 00:10:52,945.945 INFO    ] 200
[2026-06-19 00:10:52,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:10:52,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:10:53,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:10:53,041.041 INFO    ] No camera update needed
[2026-06-19 00:10:53,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:10:53,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:10:53,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:10:53,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:10:55,098.098 INFO    ] ================================================
[2026-06-19 00:10:55,113.113 INFO    ] Launching Daemon at Fri Jun 19 00:10:55 IST 2026
[2026-06-19 00:10:55,124.124 INFO    ] ================================================
[2026-06-19 00:10:55,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:10:55
[2026-06-19 00:10:56,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:10:56,537.537 INFO    ] Initializing speech engine...
[2026-06-19 00:10:56,542.542 INFO    ] 2026-06-19 00:10:56
[2026-06-19 00:10:56,849.849 INFO    ] 2026-06-19 00:10:56
[2026-06-19 00:10:56,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:10:57,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:10:57,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:10:57,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:10:57,218.218 INFO    ] time= 19/06/2026 00:10:57
[2026-06-19 00:10:57,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:10:57,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:10:57,303.303 INFO    ] No existing commands found in stream
[2026-06-19 00:11:02,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:11:02,319.319 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 00:11:03,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:11:03,373.373 INFO    ] Checking for system updates...
[2026-06-19 00:11:03,411.411 INFO    ] 200
[2026-06-19 00:11:03,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:03,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:11:03,475.475 INFO    ] No update needed
[2026-06-19 00:11:03,478.478 INFO    ] Checking for camera pi updates...
[2026-06-19 00:11:03,515.515 INFO    ] 200
[2026-06-19 00:11:03,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:03,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:11:03,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:11:03,604.604 INFO    ] No camera update needed
[2026-06-19 00:11:03,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:11:03,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:11:03,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:11:03,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:11:05,661.661 INFO    ] ================================================
[2026-06-19 00:11:05,676.676 INFO    ] Launching Daemon at Fri Jun 19 00:11:05 IST 2026
[2026-06-19 00:11:05,687.687 INFO    ] ================================================
[2026-06-19 00:11:06,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:11:06
[2026-06-19 00:11:06,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:11:07,116.116 INFO    ] Initializing speech engine...
[2026-06-19 00:11:07,139.139 INFO    ] 2026-06-19 00:11:07
[2026-06-19 00:11:07,396.396 INFO    ] 2026-06-19 00:11:07
[2026-06-19 00:11:07,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:11:07,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:11:07,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:11:07,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:11:07,857.857 INFO    ] time= 19/06/2026 00:11:07
[2026-06-19 00:11:07,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:11:07,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:11:08,026.026 INFO    ] No existing commands found in stream
[2026-06-19 00:11:13,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:11:13,040.040 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 00:11:15,248.248 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:11:15,251.251 INFO    ] Checking for system updates...
[2026-06-19 00:11:15,291.291 INFO    ] 200
[2026-06-19 00:11:15,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:15,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:11:15,348.348 INFO    ] No update needed
[2026-06-19 00:11:15,350.350 INFO    ] Checking for camera pi updates...
[2026-06-19 00:11:15,387.387 INFO    ] 200
[2026-06-19 00:11:15,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:15,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:11:15,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:11:15,486.486 INFO    ] No camera update needed
[2026-06-19 00:11:15,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:11:15,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:11:15,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:11:15,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:11:17,543.543 INFO    ] ================================================
[2026-06-19 00:11:17,558.558 INFO    ] Launching Daemon at Fri Jun 19 00:11:17 IST 2026
[2026-06-19 00:11:17,569.569 INFO    ] ================================================
[2026-06-19 00:11:18,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:11:18
[2026-06-19 00:11:18,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:11:19,004.004 INFO    ] Initializing speech engine...
[2026-06-19 00:11:19,020.020 INFO    ] 2026-06-19 00:11:19
[2026-06-19 00:11:19,285.285 INFO    ] 2026-06-19 00:11:19
[2026-06-19 00:11:19,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:11:19,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:11:19,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:11:19,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:11:19,742.742 INFO    ] time= 19/06/2026 00:11:19
[2026-06-19 00:11:19,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:11:19,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:11:19,906.906 INFO    ] No existing commands found in stream
[2026-06-19 00:11:24,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:11:24,921.921 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 00:11:27,306.306 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:11:27,308.308 INFO    ] Checking for system updates...
[2026-06-19 00:11:27,349.349 INFO    ] 200
[2026-06-19 00:11:27,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:27,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:11:27,406.406 INFO    ] No update needed
[2026-06-19 00:11:27,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 00:11:27,449.449 INFO    ] 200
[2026-06-19 00:11:27,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:27,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:11:27,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:11:27,543.543 INFO    ] No camera update needed
[2026-06-19 00:11:27,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:11:27,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:11:27,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:11:27,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:11:29,602.602 INFO    ] ================================================
[2026-06-19 00:11:29,618.618 INFO    ] Launching Daemon at Fri Jun 19 00:11:29 IST 2026
[2026-06-19 00:11:29,629.629 INFO    ] ================================================
[2026-06-19 00:11:30,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:11:30
[2026-06-19 00:11:30,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:11:31,082.082 INFO    ] Initializing speech engine...
[2026-06-19 00:11:31,091.091 INFO    ] 2026-06-19 00:11:31
[2026-06-19 00:11:31,424.424 INFO    ] 2026-06-19 00:11:31
[2026-06-19 00:11:31,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:11:31,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:11:31,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:11:31,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:11:31,812.812 INFO    ] time= 19/06/2026 00:11:31
[2026-06-19 00:11:31,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:11:31,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:11:31,899.899 INFO    ] No existing commands found in stream
[2026-06-19 00:11:36,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:11:36,914.914 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 00:11:39,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:11:39,803.803 INFO    ] Checking for system updates...
[2026-06-19 00:11:39,839.839 INFO    ] 200
[2026-06-19 00:11:39,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:39,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:11:39,897.897 INFO    ] No update needed
[2026-06-19 00:11:39,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 00:11:39,938.938 INFO    ] 200
[2026-06-19 00:11:39,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:39,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:11:40,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:11:40,034.034 INFO    ] No camera update needed
[2026-06-19 00:11:40,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:11:40,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:11:40,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:11:40,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:11:42,090.090 INFO    ] ================================================
[2026-06-19 00:11:42,106.106 INFO    ] Launching Daemon at Fri Jun 19 00:11:42 IST 2026
[2026-06-19 00:11:42,117.117 INFO    ] ================================================
[2026-06-19 00:11:42,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:11:42
[2026-06-19 00:11:43,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:11:43,761.761 INFO    ] Initializing speech engine...
[2026-06-19 00:11:43,769.769 INFO    ] 2026-06-19 00:11:43
[2026-06-19 00:11:44,048.048 INFO    ] 2026-06-19 00:11:44
[2026-06-19 00:11:44,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:11:44,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:11:44,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:11:44,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:11:44,560.560 INFO    ] time= 19/06/2026 00:11:44
[2026-06-19 00:11:44,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:11:44,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:11:44,748.748 INFO    ] No existing commands found in stream
[2026-06-19 00:11:49,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:11:49,777.777 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 00:11:53,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:11:53,938.938 INFO    ] Checking for system updates...
[2026-06-19 00:11:53,979.979 INFO    ] 200
[2026-06-19 00:11:53,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:54,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:11:54,046.046 INFO    ] No update needed
[2026-06-19 00:11:54,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 00:11:54,084.084 INFO    ] 200
[2026-06-19 00:11:54,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:11:54,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:11:54,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:11:54,184.184 INFO    ] No camera update needed
[2026-06-19 00:11:54,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:11:54,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:11:54,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:11:54,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:11:56,241.241 INFO    ] ================================================
[2026-06-19 00:11:56,257.257 INFO    ] Launching Daemon at Fri Jun 19 00:11:56 IST 2026
[2026-06-19 00:11:56,268.268 INFO    ] ================================================
[2026-06-19 00:11:56,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:11:56
[2026-06-19 00:11:57,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:11:57,900.900 INFO    ] Initializing speech engine...
[2026-06-19 00:11:57,909.909 INFO    ] 2026-06-19 00:11:57
[2026-06-19 00:11:58,196.196 INFO    ] 2026-06-19 00:11:58
[2026-06-19 00:11:58,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:11:58,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:11:58,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:11:58,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:11:58,734.734 INFO    ] time= 19/06/2026 00:11:58
[2026-06-19 00:11:58,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:11:58,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:11:58,892.892 INFO    ] No existing commands found in stream
[2026-06-19 00:12:03,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:12:03,911.911 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 00:12:05,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:12:05,144.144 INFO    ] Checking for system updates...
[2026-06-19 00:12:05,181.181 INFO    ] 200
[2026-06-19 00:12:05,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:05,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:12:05,249.249 INFO    ] No update needed
[2026-06-19 00:12:05,252.252 INFO    ] Checking for camera pi updates...
[2026-06-19 00:12:05,291.291 INFO    ] 200
[2026-06-19 00:12:05,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:05,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:12:05,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:12:05,399.399 INFO    ] No camera update needed
[2026-06-19 00:12:05,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:12:05,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:12:05,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:12:05,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:12:07,458.458 INFO    ] ================================================
[2026-06-19 00:12:07,473.473 INFO    ] Launching Daemon at Fri Jun 19 00:12:07 IST 2026
[2026-06-19 00:12:07,485.485 INFO    ] ================================================
[2026-06-19 00:12:08,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:12:08
[2026-06-19 00:12:08,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:12:09,124.124 INFO    ] Initializing speech engine...
[2026-06-19 00:12:09,141.141 INFO    ] 2026-06-19 00:12:09
[2026-06-19 00:12:09,399.399 INFO    ] 2026-06-19 00:12:09
[2026-06-19 00:12:09,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:12:09,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:12:09,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:12:09,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:12:09,779.779 INFO    ] time= 19/06/2026 00:12:09
[2026-06-19 00:12:09,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:12:09,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:12:09,904.904 INFO    ] No existing commands found in stream
[2026-06-19 00:12:14,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:12:14,917.917 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 00:12:16,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:12:16,768.768 INFO    ] Checking for system updates...
[2026-06-19 00:12:16,804.804 INFO    ] 200
[2026-06-19 00:12:16,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:16,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:12:16,870.870 INFO    ] No update needed
[2026-06-19 00:12:16,873.873 INFO    ] Checking for camera pi updates...
[2026-06-19 00:12:16,911.911 INFO    ] 200
[2026-06-19 00:12:16,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:16,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:12:17,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:12:17,007.007 INFO    ] No camera update needed
[2026-06-19 00:12:17,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:12:17,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:12:17,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:12:17,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:12:19,068.068 INFO    ] ================================================
[2026-06-19 00:12:19,084.084 INFO    ] Launching Daemon at Fri Jun 19 00:12:19 IST 2026
[2026-06-19 00:12:19,094.094 INFO    ] ================================================
[2026-06-19 00:12:19,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:12:19
[2026-06-19 00:12:20,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:12:20,713.713 INFO    ] Initializing speech engine...
[2026-06-19 00:12:20,725.725 INFO    ] 2026-06-19 00:12:20
[2026-06-19 00:12:21,030.030 INFO    ] 2026-06-19 00:12:20
[2026-06-19 00:12:21,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:12:21,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:12:21,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:12:21,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:12:21,550.550 INFO    ] time= 19/06/2026 00:12:21
[2026-06-19 00:12:21,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:12:21,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:12:21,704.704 INFO    ] No existing commands found in stream
[2026-06-19 00:12:26,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:12:26,724.724 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 00:12:29,235.235 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:12:29,238.238 INFO    ] Checking for system updates...
[2026-06-19 00:12:29,275.275 INFO    ] 200
[2026-06-19 00:12:29,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:29,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:12:29,333.333 INFO    ] No update needed
[2026-06-19 00:12:29,335.335 INFO    ] Checking for camera pi updates...
[2026-06-19 00:12:29,369.369 INFO    ] 200
[2026-06-19 00:12:29,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:29,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:12:29,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:12:29,464.464 INFO    ] No camera update needed
[2026-06-19 00:12:29,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:12:29,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:12:29,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:12:29,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:12:31,520.520 INFO    ] ================================================
[2026-06-19 00:12:31,535.535 INFO    ] Launching Daemon at Fri Jun 19 00:12:31 IST 2026
[2026-06-19 00:12:31,545.545 INFO    ] ================================================
[2026-06-19 00:12:32,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:12:32
[2026-06-19 00:12:32,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:12:33,028.028 INFO    ] Initializing speech engine...
[2026-06-19 00:12:33,045.045 INFO    ] 2026-06-19 00:12:33
[2026-06-19 00:12:33,348.348 INFO    ] 2026-06-19 00:12:33
[2026-06-19 00:12:33,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:12:33,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:12:33,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:12:33,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:12:33,746.746 INFO    ] time= 19/06/2026 00:12:33
[2026-06-19 00:12:33,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:12:33,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:12:33,886.886 INFO    ] No existing commands found in stream
[2026-06-19 00:12:38,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:12:38,901.901 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 00:12:39,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:12:39,974.974 INFO    ] Checking for system updates...
[2026-06-19 00:12:40,014.014 INFO    ] 200
[2026-06-19 00:12:40,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:40,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:12:40,071.071 INFO    ] No update needed
[2026-06-19 00:12:40,074.074 INFO    ] Checking for camera pi updates...
[2026-06-19 00:12:40,108.108 INFO    ] 200
[2026-06-19 00:12:40,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:40,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:12:40,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:12:40,202.202 INFO    ] No camera update needed
[2026-06-19 00:12:40,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:12:40,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:12:40,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:12:40,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:12:42,258.258 INFO    ] ================================================
[2026-06-19 00:12:42,273.273 INFO    ] Launching Daemon at Fri Jun 19 00:12:42 IST 2026
[2026-06-19 00:12:42,284.284 INFO    ] ================================================
[2026-06-19 00:12:42,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:12:42
[2026-06-19 00:12:43,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:12:43,705.705 INFO    ] Initializing speech engine...
[2026-06-19 00:12:43,714.714 INFO    ] 2026-06-19 00:12:43
[2026-06-19 00:12:43,964.964 INFO    ] 2026-06-19 00:12:43
[2026-06-19 00:12:44,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:12:44,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:12:44,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:12:44,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:12:44,344.344 INFO    ] time= 19/06/2026 00:12:44
[2026-06-19 00:12:44,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:12:44,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:12:44,516.516 INFO    ] No existing commands found in stream
[2026-06-19 00:12:49,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:12:49,802.802 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 00:12:53,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:12:53,816.816 INFO    ] Checking for system updates...
[2026-06-19 00:12:53,852.852 INFO    ] 200
[2026-06-19 00:12:53,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:53,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:12:53,914.914 INFO    ] No update needed
[2026-06-19 00:12:53,917.917 INFO    ] Checking for camera pi updates...
[2026-06-19 00:12:53,951.951 INFO    ] 200
[2026-06-19 00:12:53,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:12:53,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:12:54,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:12:54,041.041 INFO    ] No camera update needed
[2026-06-19 00:12:54,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:12:54,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:12:54,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:12:54,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:12:56,098.098 INFO    ] ================================================
[2026-06-19 00:12:56,114.114 INFO    ] Launching Daemon at Fri Jun 19 00:12:56 IST 2026
[2026-06-19 00:12:56,125.125 INFO    ] ================================================
[2026-06-19 00:12:56,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:12:56
[2026-06-19 00:12:57,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:12:57,532.532 INFO    ] Initializing speech engine...
[2026-06-19 00:12:57,540.540 INFO    ] 2026-06-19 00:12:57
[2026-06-19 00:12:57,815.815 INFO    ] 2026-06-19 00:12:57
[2026-06-19 00:12:57,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:12:58,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:12:58,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:12:58,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:12:58,173.173 INFO    ] time= 19/06/2026 00:12:58
[2026-06-19 00:12:58,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:12:58,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:12:58,272.272 INFO    ] No existing commands found in stream
[2026-06-19 00:13:03,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:13:03,292.292 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 00:13:07,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:13:07,639.639 INFO    ] Checking for system updates...
[2026-06-19 00:13:07,675.675 INFO    ] 200
[2026-06-19 00:13:07,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:07,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:13:07,732.732 INFO    ] No update needed
[2026-06-19 00:13:07,734.734 INFO    ] Checking for camera pi updates...
[2026-06-19 00:13:07,771.771 INFO    ] 200
[2026-06-19 00:13:07,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:07,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:13:07,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:13:07,867.867 INFO    ] No camera update needed
[2026-06-19 00:13:07,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:13:07,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:13:07,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:13:07,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:13:09,925.925 INFO    ] ================================================
[2026-06-19 00:13:09,940.940 INFO    ] Launching Daemon at Fri Jun 19 00:13:09 IST 2026
[2026-06-19 00:13:09,950.950 INFO    ] ================================================
[2026-06-19 00:13:10,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:13:10
[2026-06-19 00:13:11,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:13:11,581.581 INFO    ] Initializing speech engine...
[2026-06-19 00:13:11,587.587 INFO    ] 2026-06-19 00:13:11
[2026-06-19 00:13:11,865.865 INFO    ] 2026-06-19 00:13:11
[2026-06-19 00:13:11,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:13:12,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:13:12,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:13:12,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:13:12,345.345 INFO    ] time= 19/06/2026 00:13:12
[2026-06-19 00:13:12,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:13:12,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:13:12,491.491 INFO    ] No existing commands found in stream
[2026-06-19 00:13:17,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:13:17,508.508 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 00:13:18,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:13:18,630.630 INFO    ] Checking for system updates...
[2026-06-19 00:13:18,667.667 INFO    ] 200
[2026-06-19 00:13:18,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:18,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:13:18,726.726 INFO    ] No update needed
[2026-06-19 00:13:18,729.729 INFO    ] Checking for camera pi updates...
[2026-06-19 00:13:18,767.767 INFO    ] 200
[2026-06-19 00:13:18,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:18,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:13:18,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:13:18,863.863 INFO    ] No camera update needed
[2026-06-19 00:13:18,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:13:18,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:13:18,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:13:18,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:13:20,923.923 INFO    ] ================================================
[2026-06-19 00:13:20,938.938 INFO    ] Launching Daemon at Fri Jun 19 00:13:20 IST 2026
[2026-06-19 00:13:20,948.948 INFO    ] ================================================
[2026-06-19 00:13:21,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:13:21
[2026-06-19 00:13:22,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:13:22,548.548 INFO    ] Initializing speech engine...
[2026-06-19 00:13:22,557.557 INFO    ] 2026-06-19 00:13:22
[2026-06-19 00:13:22,845.845 INFO    ] 2026-06-19 00:13:22
[2026-06-19 00:13:22,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:13:23,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:13:23,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:13:23,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:13:23,309.309 INFO    ] time= 19/06/2026 00:13:23
[2026-06-19 00:13:23,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:13:23,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:13:23,452.452 INFO    ] No existing commands found in stream
[2026-06-19 00:13:28,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:13:28,468.468 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 00:13:32,088.088 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:13:32,092.092 INFO    ] Checking for system updates...
[2026-06-19 00:13:32,130.130 INFO    ] 200
[2026-06-19 00:13:32,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:32,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:13:32,198.198 INFO    ] No update needed
[2026-06-19 00:13:32,200.200 INFO    ] Checking for camera pi updates...
[2026-06-19 00:13:32,237.237 INFO    ] 200
[2026-06-19 00:13:32,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:32,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:13:32,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:13:32,320.320 INFO    ] No camera update needed
[2026-06-19 00:13:32,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:13:32,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:13:32,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:13:32,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:13:34,380.380 INFO    ] ================================================
[2026-06-19 00:13:34,395.395 INFO    ] Launching Daemon at Fri Jun 19 00:13:34 IST 2026
[2026-06-19 00:13:34,406.406 INFO    ] ================================================
[2026-06-19 00:13:34,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:13:34
[2026-06-19 00:13:35,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:13:35,820.820 INFO    ] Initializing speech engine...
[2026-06-19 00:13:35,827.827 INFO    ] 2026-06-19 00:13:35
[2026-06-19 00:13:36,124.124 INFO    ] 2026-06-19 00:13:36
[2026-06-19 00:13:36,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:13:36,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:13:36,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:13:36,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:13:36,501.501 INFO    ] time= 19/06/2026 00:13:36
[2026-06-19 00:13:36,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:13:36,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:13:36,623.623 INFO    ] No existing commands found in stream
[2026-06-19 00:13:41,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:13:41,638.638 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 00:13:43,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:13:43,055.055 INFO    ] Checking for system updates...
[2026-06-19 00:13:43,091.091 INFO    ] 200
[2026-06-19 00:13:43,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:43,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:13:43,148.148 INFO    ] No update needed
[2026-06-19 00:13:43,150.150 INFO    ] Checking for camera pi updates...
[2026-06-19 00:13:43,184.184 INFO    ] 200
[2026-06-19 00:13:43,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:43,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:13:43,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:13:43,277.277 INFO    ] No camera update needed
[2026-06-19 00:13:43,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:13:43,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:13:43,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:13:43,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:13:45,334.334 INFO    ] ================================================
[2026-06-19 00:13:45,349.349 INFO    ] Launching Daemon at Fri Jun 19 00:13:45 IST 2026
[2026-06-19 00:13:45,360.360 INFO    ] ================================================
[2026-06-19 00:13:46,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:13:46
[2026-06-19 00:13:46,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:13:46,966.966 INFO    ] Initializing speech engine...
[2026-06-19 00:13:46,976.976 INFO    ] 2026-06-19 00:13:46
[2026-06-19 00:13:47,246.246 INFO    ] 2026-06-19 00:13:47
[2026-06-19 00:13:47,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:13:47,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:13:47,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:13:47,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:13:47,727.727 INFO    ] time= 19/06/2026 00:13:47
[2026-06-19 00:13:47,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:13:47,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:13:47,873.873 INFO    ] No existing commands found in stream
[2026-06-19 00:13:52,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:13:52,889.889 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 00:13:55,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:13:55,952.952 INFO    ] Checking for system updates...
[2026-06-19 00:13:55,992.992 INFO    ] 200
[2026-06-19 00:13:55,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:56,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:13:56,051.051 INFO    ] No update needed
[2026-06-19 00:13:56,054.054 INFO    ] Checking for camera pi updates...
[2026-06-19 00:13:56,089.089 INFO    ] 200
[2026-06-19 00:13:56,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:13:56,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:13:56,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:13:56,186.186 INFO    ] No camera update needed
[2026-06-19 00:13:56,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:13:56,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:13:56,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:13:56,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:13:58,246.246 INFO    ] ================================================
[2026-06-19 00:13:58,261.261 INFO    ] Launching Daemon at Fri Jun 19 00:13:58 IST 2026
[2026-06-19 00:13:58,272.272 INFO    ] ================================================
[2026-06-19 00:13:58,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:13:58
[2026-06-19 00:13:59,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:13:59,732.732 INFO    ] Initializing speech engine...
[2026-06-19 00:13:59,742.742 INFO    ] 2026-06-19 00:13:59
[2026-06-19 00:13:59,992.992 INFO    ] 2026-06-19 00:13:59
[2026-06-19 00:14:00,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:14:00,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:14:00,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:14:00,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:14:00,469.469 INFO    ] time= 19/06/2026 00:14:00
[2026-06-19 00:14:00,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:14:00,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:14:00,619.619 INFO    ] No existing commands found in stream
[2026-06-19 00:14:05,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:14:05,634.634 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 00:14:08,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:14:08,889.889 INFO    ] Checking for system updates...
[2026-06-19 00:14:08,925.925 INFO    ] 200
[2026-06-19 00:14:08,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:14:08,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:14:08,983.983 INFO    ] No update needed
[2026-06-19 00:14:08,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 00:14:09,022.022 INFO    ] 200
[2026-06-19 00:14:09,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:14:09,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:14:09,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:14:09,215.215 INFO    ] No camera update needed
[2026-06-19 00:14:09,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:14:09,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:14:09,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:14:09,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:14:11,273.273 INFO    ] ================================================
[2026-06-19 00:14:11,288.288 INFO    ] Launching Daemon at Fri Jun 19 00:14:11 IST 2026
[2026-06-19 00:14:11,299.299 INFO    ] ================================================
[2026-06-19 00:14:11,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:14:11
[2026-06-19 00:14:12,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:14:12,710.710 INFO    ] Initializing speech engine...
[2026-06-19 00:14:12,718.718 INFO    ] 2026-06-19 00:14:12
[2026-06-19 00:14:13,005.005 INFO    ] 2026-06-19 00:14:12
[2026-06-19 00:14:13,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:14:13,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:14:13,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:14:13,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:14:13,370.370 INFO    ] time= 19/06/2026 00:14:13
[2026-06-19 00:14:13,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:14:13,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:14:13,491.491 INFO    ] No existing commands found in stream
[2026-06-19 00:14:18,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:14:18,507.507 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 00:14:21,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:14:21,456.456 INFO    ] Checking for system updates...
[2026-06-19 00:14:21,492.492 INFO    ] 200
[2026-06-19 00:14:21,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:14:21,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:14:21,550.550 INFO    ] No update needed
[2026-06-19 00:14:21,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 00:14:21,588.588 INFO    ] 200
[2026-06-19 00:14:21,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:14:21,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:14:21,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:14:21,682.682 INFO    ] No camera update needed
[2026-06-19 00:14:21,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:14:21,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:14:21,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:14:21,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:14:23,739.739 INFO    ] ================================================
[2026-06-19 00:14:23,754.754 INFO    ] Launching Daemon at Fri Jun 19 00:14:23 IST 2026
[2026-06-19 00:14:23,765.765 INFO    ] ================================================
[2026-06-19 00:14:24,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:14:24
[2026-06-19 00:14:24,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:14:25,202.202 INFO    ] Initializing speech engine...
[2026-06-19 00:14:25,212.212 INFO    ] 2026-06-19 00:14:25
[2026-06-19 00:14:25,465.465 INFO    ] 2026-06-19 00:14:25
[2026-06-19 00:14:25,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:14:25,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:14:25,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:14:25,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:14:25,805.805 INFO    ] time= 19/06/2026 00:14:25
[2026-06-19 00:14:25,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:14:25,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:14:25,886.886 INFO    ] No existing commands found in stream
[2026-06-19 00:14:30,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:14:30,930.930 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 00:14:34,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:14:34,548.548 INFO    ] Checking for system updates...
[2026-06-19 00:14:34,585.585 INFO    ] 200
[2026-06-19 00:14:34,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:14:34,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:14:34,646.646 INFO    ] No update needed
[2026-06-19 00:14:34,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 00:14:34,682.682 INFO    ] 200
[2026-06-19 00:14:34,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:14:34,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:14:34,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:14:34,778.778 INFO    ] No camera update needed
[2026-06-19 00:14:34,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:14:34,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:14:34,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:14:34,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:14:36,835.835 INFO    ] ================================================
[2026-06-19 00:14:36,850.850 INFO    ] Launching Daemon at Fri Jun 19 00:14:36 IST 2026
[2026-06-19 00:14:36,862.862 INFO    ] ================================================
[2026-06-19 00:14:37,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:14:37
[2026-06-19 00:14:38,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:14:38,288.288 INFO    ] Initializing speech engine...
[2026-06-19 00:14:38,297.297 INFO    ] 2026-06-19 00:14:38
[2026-06-19 00:14:38,551.551 INFO    ] 2026-06-19 00:14:38
[2026-06-19 00:14:38,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:14:38,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:14:38,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:14:38,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:14:38,904.904 INFO    ] time= 19/06/2026 00:14:38
[2026-06-19 00:14:38,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:14:38,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:14:39,008.008 INFO    ] No existing commands found in stream
[2026-06-19 00:14:44,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:14:44,026.026 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 00:14:48,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:14:48,325.325 INFO    ] Checking for system updates...
[2026-06-19 00:14:48,361.361 INFO    ] 200
[2026-06-19 00:14:48,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:14:48,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:14:48,420.420 INFO    ] No update needed
[2026-06-19 00:14:48,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 00:14:48,457.457 INFO    ] 200
[2026-06-19 00:14:48,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:14:48,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:14:48,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:14:48,550.550 INFO    ] No camera update needed
[2026-06-19 00:14:48,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:14:48,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:14:48,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:14:48,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:14:50,608.608 INFO    ] ================================================
[2026-06-19 00:14:50,624.624 INFO    ] Launching Daemon at Fri Jun 19 00:14:50 IST 2026
[2026-06-19 00:14:50,636.636 INFO    ] ================================================
[2026-06-19 00:14:51,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:14:51
[2026-06-19 00:14:51,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:14:52,082.082 INFO    ] Initializing speech engine...
[2026-06-19 00:14:52,107.107 INFO    ] 2026-06-19 00:14:52
[2026-06-19 00:14:52,375.375 INFO    ] 2026-06-19 00:14:52
[2026-06-19 00:14:52,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:14:52,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:14:52,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:14:52,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:14:52,740.740 INFO    ] time= 19/06/2026 00:14:52
[2026-06-19 00:14:52,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:14:52,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:14:52,861.861 INFO    ] No existing commands found in stream
[2026-06-19 00:14:57,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:14:57,877.877 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 00:15:00,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:15:00,301.301 INFO    ] Checking for system updates...
[2026-06-19 00:15:00,337.337 INFO    ] 200
[2026-06-19 00:15:00,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:00,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:15:00,397.397 INFO    ] No update needed
[2026-06-19 00:15:00,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 00:15:00,437.437 INFO    ] 200
[2026-06-19 00:15:00,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:00,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:15:00,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:15:00,533.533 INFO    ] No camera update needed
[2026-06-19 00:15:00,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:15:00,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:15:00,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:15:00,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:15:02,623.623 INFO    ] ================================================
[2026-06-19 00:15:02,647.647 INFO    ] Launching Daemon at Fri Jun 19 00:15:02 IST 2026
[2026-06-19 00:15:02,664.664 INFO    ] ================================================
[2026-06-19 00:15:03,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:15:03
[2026-06-19 00:15:04,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:15:04,438.438 INFO    ] Initializing speech engine...
[2026-06-19 00:15:04,447.447 INFO    ] 2026-06-19 00:15:04
[2026-06-19 00:15:04,735.735 INFO    ] 2026-06-19 00:15:04
[2026-06-19 00:15:04,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:15:05,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:15:05,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:15:05,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:15:05,193.193 INFO    ] time= 19/06/2026 00:15:05
[2026-06-19 00:15:05,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:15:05,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:15:05,351.351 INFO    ] No existing commands found in stream
[2026-06-19 00:15:10,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:15:10,367.367 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 00:15:12,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:15:12,253.253 INFO    ] Checking for system updates...
[2026-06-19 00:15:12,291.291 INFO    ] 200
[2026-06-19 00:15:12,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:12,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:15:12,351.351 INFO    ] No update needed
[2026-06-19 00:15:12,353.353 INFO    ] Checking for camera pi updates...
[2026-06-19 00:15:12,388.388 INFO    ] 200
[2026-06-19 00:15:12,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:12,431.431 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:15:12,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:15:12,480.480 INFO    ] No camera update needed
[2026-06-19 00:15:12,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:15:12,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:15:12,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:15:12,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:15:14,537.537 INFO    ] ================================================
[2026-06-19 00:15:14,553.553 INFO    ] Launching Daemon at Fri Jun 19 00:15:14 IST 2026
[2026-06-19 00:15:14,564.564 INFO    ] ================================================
[2026-06-19 00:15:15,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:15:15
[2026-06-19 00:15:15,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:15:16,013.013 INFO    ] Initializing speech engine...
[2026-06-19 00:15:16,036.036 INFO    ] 2026-06-19 00:15:16
[2026-06-19 00:15:16,309.309 INFO    ] 2026-06-19 00:15:16
[2026-06-19 00:15:16,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:15:16,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:15:16,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:15:16,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:15:16,714.714 INFO    ] time= 19/06/2026 00:15:16
[2026-06-19 00:15:16,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:15:16,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:15:16,802.802 INFO    ] No existing commands found in stream
[2026-06-19 00:15:21,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:15:21,818.818 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 00:15:25,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:15:25,326.326 INFO    ] Checking for system updates...
[2026-06-19 00:15:25,362.362 INFO    ] 200
[2026-06-19 00:15:25,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:25,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:15:25,419.419 INFO    ] No update needed
[2026-06-19 00:15:25,422.422 INFO    ] Checking for camera pi updates...
[2026-06-19 00:15:25,456.456 INFO    ] 200
[2026-06-19 00:15:25,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:25,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:15:25,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:15:25,548.548 INFO    ] No camera update needed
[2026-06-19 00:15:25,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:15:25,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:15:25,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:15:25,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:15:27,605.605 INFO    ] ================================================
[2026-06-19 00:15:27,621.621 INFO    ] Launching Daemon at Fri Jun 19 00:15:27 IST 2026
[2026-06-19 00:15:27,632.632 INFO    ] ================================================
[2026-06-19 00:15:28,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:15:28
[2026-06-19 00:15:28,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:15:29,231.231 INFO    ] Initializing speech engine...
[2026-06-19 00:15:29,246.246 INFO    ] 2026-06-19 00:15:29
[2026-06-19 00:15:29,535.535 INFO    ] 2026-06-19 00:15:29
[2026-06-19 00:15:29,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:15:29,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:15:29,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:15:29,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:15:30,008.008 INFO    ] time= 19/06/2026 00:15:29
[2026-06-19 00:15:30,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:15:30,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:15:30,144.144 INFO    ] No existing commands found in stream
[2026-06-19 00:15:35,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:15:35,159.159 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 00:15:37,244.244 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:15:37,247.247 INFO    ] Checking for system updates...
[2026-06-19 00:15:37,286.286 INFO    ] 200
[2026-06-19 00:15:37,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:37,341.341 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:15:37,343.343 INFO    ] No update needed
[2026-06-19 00:15:37,346.346 INFO    ] Checking for camera pi updates...
[2026-06-19 00:15:37,380.380 INFO    ] 200
[2026-06-19 00:15:37,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:37,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:15:37,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:15:37,475.475 INFO    ] No camera update needed
[2026-06-19 00:15:37,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:15:37,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:15:37,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:15:37,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:15:39,530.530 INFO    ] ================================================
[2026-06-19 00:15:39,546.546 INFO    ] Launching Daemon at Fri Jun 19 00:15:39 IST 2026
[2026-06-19 00:15:39,557.557 INFO    ] ================================================
[2026-06-19 00:15:40,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:15:40
[2026-06-19 00:15:40,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:15:41,009.009 INFO    ] Initializing speech engine...
[2026-06-19 00:15:41,032.032 INFO    ] 2026-06-19 00:15:41
[2026-06-19 00:15:41,304.304 INFO    ] 2026-06-19 00:15:41
[2026-06-19 00:15:41,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:15:41,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:15:41,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:15:41,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:15:41,749.749 INFO    ] time= 19/06/2026 00:15:41
[2026-06-19 00:15:41,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:15:41,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:15:41,936.936 INFO    ] No existing commands found in stream
[2026-06-19 00:15:46,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:15:46,951.951 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 00:15:50,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:15:50,186.186 INFO    ] Checking for system updates...
[2026-06-19 00:15:50,226.226 INFO    ] 200
[2026-06-19 00:15:50,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:50,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:15:50,288.288 INFO    ] No update needed
[2026-06-19 00:15:50,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 00:15:50,325.325 INFO    ] 200
[2026-06-19 00:15:50,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:15:50,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:15:50,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:15:50,427.427 INFO    ] No camera update needed
[2026-06-19 00:15:50,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:15:50,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:15:50,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:15:50,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:15:52,486.486 INFO    ] ================================================
[2026-06-19 00:15:52,501.501 INFO    ] Launching Daemon at Fri Jun 19 00:15:52 IST 2026
[2026-06-19 00:15:52,513.513 INFO    ] ================================================
[2026-06-19 00:15:53,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:15:53
[2026-06-19 00:15:53,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:15:53,918.918 INFO    ] Initializing speech engine...
[2026-06-19 00:15:53,941.941 INFO    ] 2026-06-19 00:15:53
[2026-06-19 00:15:54,198.198 INFO    ] 2026-06-19 00:15:54
[2026-06-19 00:15:54,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:15:54,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:15:54,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:15:54,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:15:54,678.678 INFO    ] time= 19/06/2026 00:15:54
[2026-06-19 00:15:54,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:15:54,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:15:54,823.823 INFO    ] No existing commands found in stream
[2026-06-19 00:15:59,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:15:59,838.838 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 00:16:03,143.143 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:16:03,146.146 INFO    ] Checking for system updates...
[2026-06-19 00:16:03,192.192 INFO    ] 200
[2026-06-19 00:16:03,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:03,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:16:03,270.270 INFO    ] No update needed
[2026-06-19 00:16:03,273.273 INFO    ] Checking for camera pi updates...
[2026-06-19 00:16:03,327.327 INFO    ] 200
[2026-06-19 00:16:03,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:03,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:16:03,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:16:03,445.445 INFO    ] No camera update needed
[2026-06-19 00:16:03,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:16:03,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:16:03,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:16:03,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:16:05,508.508 INFO    ] ================================================
[2026-06-19 00:16:05,523.523 INFO    ] Launching Daemon at Fri Jun 19 00:16:05 IST 2026
[2026-06-19 00:16:05,534.534 INFO    ] ================================================
[2026-06-19 00:16:06,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:16:06
[2026-06-19 00:16:06,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:16:06,991.991 INFO    ] Initializing speech engine...
[2026-06-19 00:16:07,000.000 INFO    ] 2026-06-19 00:16:06
[2026-06-19 00:16:07,252.252 INFO    ] 2026-06-19 00:16:07
[2026-06-19 00:16:07,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:16:07,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:16:07,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:16:07,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:16:07,629.629 INFO    ] time= 19/06/2026 00:16:07
[2026-06-19 00:16:07,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:16:07,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:16:07,789.789 INFO    ] No existing commands found in stream
[2026-06-19 00:16:12,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:16:12,822.822 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 00:16:15,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:16:15,405.405 INFO    ] Checking for system updates...
[2026-06-19 00:16:15,441.441 INFO    ] 200
[2026-06-19 00:16:15,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:15,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:16:15,501.501 INFO    ] No update needed
[2026-06-19 00:16:15,503.503 INFO    ] Checking for camera pi updates...
[2026-06-19 00:16:15,540.540 INFO    ] 200
[2026-06-19 00:16:15,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:15,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:16:15,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:16:15,732.732 INFO    ] No camera update needed
[2026-06-19 00:16:15,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:16:15,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:16:15,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:16:15,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:16:17,787.787 INFO    ] ================================================
[2026-06-19 00:16:17,803.803 INFO    ] Launching Daemon at Fri Jun 19 00:16:17 IST 2026
[2026-06-19 00:16:17,814.814 INFO    ] ================================================
[2026-06-19 00:16:18,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:16:18
[2026-06-19 00:16:18,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:16:19,223.223 INFO    ] Initializing speech engine...
[2026-06-19 00:16:19,232.232 INFO    ] 2026-06-19 00:16:19
[2026-06-19 00:16:19,518.518 INFO    ] 2026-06-19 00:16:19
[2026-06-19 00:16:19,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:16:19,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:16:19,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:16:19,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:16:19,890.890 INFO    ] time= 19/06/2026 00:16:19
[2026-06-19 00:16:19,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:16:19,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:16:20,013.013 INFO    ] No existing commands found in stream
[2026-06-19 00:16:25,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:16:25,028.028 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 00:16:25,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:16:25,528.528 INFO    ] Checking for system updates...
[2026-06-19 00:16:25,564.564 INFO    ] 200
[2026-06-19 00:16:25,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:25,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:16:25,621.621 INFO    ] No update needed
[2026-06-19 00:16:25,623.623 INFO    ] Checking for camera pi updates...
[2026-06-19 00:16:25,659.659 INFO    ] 200
[2026-06-19 00:16:25,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:25,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:16:25,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:16:25,761.761 INFO    ] No camera update needed
[2026-06-19 00:16:25,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:16:25,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:16:25,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:16:25,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:16:27,816.816 INFO    ] ================================================
[2026-06-19 00:16:27,832.832 INFO    ] Launching Daemon at Fri Jun 19 00:16:27 IST 2026
[2026-06-19 00:16:27,843.843 INFO    ] ================================================
[2026-06-19 00:16:28,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:16:28
[2026-06-19 00:16:29,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:16:29,427.427 INFO    ] Initializing speech engine...
[2026-06-19 00:16:29,437.437 INFO    ] 2026-06-19 00:16:29
[2026-06-19 00:16:29,723.723 INFO    ] 2026-06-19 00:16:29
[2026-06-19 00:16:29,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:16:29,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:16:30,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:16:30,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:16:30,171.171 INFO    ] time= 19/06/2026 00:16:30
[2026-06-19 00:16:30,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:16:30,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:16:30,339.339 INFO    ] No existing commands found in stream
[2026-06-19 00:16:35,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:16:35,354.354 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 00:16:36,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:16:36,798.798 INFO    ] Checking for system updates...
[2026-06-19 00:16:36,835.835 INFO    ] 200
[2026-06-19 00:16:36,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:36,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:16:36,898.898 INFO    ] No update needed
[2026-06-19 00:16:36,901.901 INFO    ] Checking for camera pi updates...
[2026-06-19 00:16:36,936.936 INFO    ] 200
[2026-06-19 00:16:36,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:36,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:16:37,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:16:37,027.027 INFO    ] No camera update needed
[2026-06-19 00:16:37,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:16:37,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:16:37,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:16:37,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:16:39,087.087 INFO    ] ================================================
[2026-06-19 00:16:39,102.102 INFO    ] Launching Daemon at Fri Jun 19 00:16:39 IST 2026
[2026-06-19 00:16:39,113.113 INFO    ] ================================================
[2026-06-19 00:16:39,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:16:39
[2026-06-19 00:16:40,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:16:40,537.537 INFO    ] Initializing speech engine...
[2026-06-19 00:16:40,545.545 INFO    ] 2026-06-19 00:16:40
[2026-06-19 00:16:40,795.795 INFO    ] 2026-06-19 00:16:40
[2026-06-19 00:16:40,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:16:41,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:16:41,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:16:41,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:16:41,172.172 INFO    ] time= 19/06/2026 00:16:41
[2026-06-19 00:16:41,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:16:41,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:16:41,253.253 INFO    ] No existing commands found in stream
[2026-06-19 00:16:46,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:16:46,291.291 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 00:16:47,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:16:47,219.219 INFO    ] Checking for system updates...
[2026-06-19 00:16:47,255.255 INFO    ] 200
[2026-06-19 00:16:47,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:47,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:16:47,314.314 INFO    ] No update needed
[2026-06-19 00:16:47,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 00:16:47,350.350 INFO    ] 200
[2026-06-19 00:16:47,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:47,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:16:47,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:16:47,431.431 INFO    ] No camera update needed
[2026-06-19 00:16:47,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:16:47,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:16:47,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:16:47,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:16:49,486.486 INFO    ] ================================================
[2026-06-19 00:16:49,502.502 INFO    ] Launching Daemon at Fri Jun 19 00:16:49 IST 2026
[2026-06-19 00:16:49,513.513 INFO    ] ================================================
[2026-06-19 00:16:50,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:16:50
[2026-06-19 00:16:50,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:16:50,964.964 INFO    ] Initializing speech engine...
[2026-06-19 00:16:50,969.969 INFO    ] 2026-06-19 00:16:50
[2026-06-19 00:16:51,229.229 INFO    ] 2026-06-19 00:16:51
[2026-06-19 00:16:51,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:16:51,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:16:51,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:16:51,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:16:51,598.598 INFO    ] time= 19/06/2026 00:16:51
[2026-06-19 00:16:51,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:16:51,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:16:51,751.751 INFO    ] No existing commands found in stream
[2026-06-19 00:16:56,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:16:56,779.779 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 00:16:57,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:16:57,315.315 INFO    ] Checking for system updates...
[2026-06-19 00:16:57,351.351 INFO    ] 200
[2026-06-19 00:16:57,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:57,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:16:57,409.409 INFO    ] No update needed
[2026-06-19 00:16:57,411.411 INFO    ] Checking for camera pi updates...
[2026-06-19 00:16:57,445.445 INFO    ] 200
[2026-06-19 00:16:57,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:16:57,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:16:57,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:16:57,535.535 INFO    ] No camera update needed
[2026-06-19 00:16:57,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:16:57,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:16:57,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:16:57,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:16:59,593.593 INFO    ] ================================================
[2026-06-19 00:16:59,609.609 INFO    ] Launching Daemon at Fri Jun 19 00:16:59 IST 2026
[2026-06-19 00:16:59,620.620 INFO    ] ================================================
[2026-06-19 00:17:00,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:17:00
[2026-06-19 00:17:00,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:17:01,052.052 INFO    ] Initializing speech engine...
[2026-06-19 00:17:01,056.056 INFO    ] 2026-06-19 00:17:01
[2026-06-19 00:17:01,335.335 INFO    ] 2026-06-19 00:17:01
[2026-06-19 00:17:01,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:17:01,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:17:01,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:17:01,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:17:01,703.703 INFO    ] time= 19/06/2026 00:17:01
[2026-06-19 00:17:01,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:17:01,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:17:01,825.825 INFO    ] No existing commands found in stream
[2026-06-19 00:17:06,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:17:06,840.840 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 00:17:07,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:17:07,837.837 INFO    ] Checking for system updates...
[2026-06-19 00:17:07,879.879 INFO    ] 200
[2026-06-19 00:17:07,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:07,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:17:07,936.936 INFO    ] No update needed
[2026-06-19 00:17:07,939.939 INFO    ] Checking for camera pi updates...
[2026-06-19 00:17:07,972.972 INFO    ] 200
[2026-06-19 00:17:07,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:08,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:17:08,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:17:08,065.065 INFO    ] No camera update needed
[2026-06-19 00:17:08,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:17:08,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:17:08,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:17:08,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:17:10,121.121 INFO    ] ================================================
[2026-06-19 00:17:10,137.137 INFO    ] Launching Daemon at Fri Jun 19 00:17:10 IST 2026
[2026-06-19 00:17:10,148.148 INFO    ] ================================================
[2026-06-19 00:17:10,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:17:10
[2026-06-19 00:17:11,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:17:11,593.593 INFO    ] Initializing speech engine...
[2026-06-19 00:17:11,607.607 INFO    ] 2026-06-19 00:17:11
[2026-06-19 00:17:11,893.893 INFO    ] 2026-06-19 00:17:11
[2026-06-19 00:17:11,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:17:12,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:17:12,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:17:12,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:17:12,267.267 INFO    ] time= 19/06/2026 00:17:12
[2026-06-19 00:17:12,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:17:12,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:17:12,390.390 INFO    ] No existing commands found in stream
[2026-06-19 00:17:17,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:17:17,407.407 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 00:17:19,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:17:19,248.248 INFO    ] Checking for system updates...
[2026-06-19 00:17:19,287.287 INFO    ] 200
[2026-06-19 00:17:19,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:19,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:17:19,345.345 INFO    ] No update needed
[2026-06-19 00:17:19,348.348 INFO    ] Checking for camera pi updates...
[2026-06-19 00:17:19,382.382 INFO    ] 200
[2026-06-19 00:17:19,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:19,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:17:19,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:17:19,471.471 INFO    ] No camera update needed
[2026-06-19 00:17:19,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:17:19,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:17:19,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:17:19,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:17:21,529.529 INFO    ] ================================================
[2026-06-19 00:17:21,544.544 INFO    ] Launching Daemon at Fri Jun 19 00:17:21 IST 2026
[2026-06-19 00:17:21,555.555 INFO    ] ================================================
[2026-06-19 00:17:22,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:17:22
[2026-06-19 00:17:22,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:17:23,163.163 INFO    ] Initializing speech engine...
[2026-06-19 00:17:23,172.172 INFO    ] 2026-06-19 00:17:23
[2026-06-19 00:17:23,459.459 INFO    ] 2026-06-19 00:17:23
[2026-06-19 00:17:23,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:17:23,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:17:23,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:17:23,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:17:23,955.955 INFO    ] time= 19/06/2026 00:17:23
[2026-06-19 00:17:24,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:17:24,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:17:24,148.148 INFO    ] No existing commands found in stream
[2026-06-19 00:17:29,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:17:29,180.180 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 00:17:31,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:17:31,164.164 INFO    ] Checking for system updates...
[2026-06-19 00:17:31,201.201 INFO    ] 200
[2026-06-19 00:17:31,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:31,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:17:31,264.264 INFO    ] No update needed
[2026-06-19 00:17:31,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 00:17:31,301.301 INFO    ] 200
[2026-06-19 00:17:31,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:31,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:17:31,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:17:31,384.384 INFO    ] No camera update needed
[2026-06-19 00:17:31,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:17:31,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:17:31,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:17:31,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:17:33,440.440 INFO    ] ================================================
[2026-06-19 00:17:33,455.455 INFO    ] Launching Daemon at Fri Jun 19 00:17:33 IST 2026
[2026-06-19 00:17:33,466.466 INFO    ] ================================================
[2026-06-19 00:17:34,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:17:34
[2026-06-19 00:17:34,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:17:34,896.896 INFO    ] Initializing speech engine...
[2026-06-19 00:17:34,905.905 INFO    ] 2026-06-19 00:17:34
[2026-06-19 00:17:35,157.157 INFO    ] 2026-06-19 00:17:35
[2026-06-19 00:17:35,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:17:35,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:17:35,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:17:35,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:17:35,537.537 INFO    ] time= 19/06/2026 00:17:35
[2026-06-19 00:17:35,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:17:35,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:17:35,702.702 INFO    ] No existing commands found in stream
[2026-06-19 00:17:40,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:17:40,740.740 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 00:17:44,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:17:44,847.847 INFO    ] Checking for system updates...
[2026-06-19 00:17:44,883.883 INFO    ] 200
[2026-06-19 00:17:44,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:44,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:17:44,949.949 INFO    ] No update needed
[2026-06-19 00:17:44,952.952 INFO    ] Checking for camera pi updates...
[2026-06-19 00:17:44,987.987 INFO    ] 200
[2026-06-19 00:17:44,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:45,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:17:45,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:17:45,072.072 INFO    ] No camera update needed
[2026-06-19 00:17:45,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:17:45,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:17:45,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:17:45,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:17:47,132.132 INFO    ] ================================================
[2026-06-19 00:17:47,148.148 INFO    ] Launching Daemon at Fri Jun 19 00:17:47 IST 2026
[2026-06-19 00:17:47,159.159 INFO    ] ================================================
[2026-06-19 00:17:47,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:17:47
[2026-06-19 00:17:48,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:17:48,581.581 INFO    ] Initializing speech engine...
[2026-06-19 00:17:48,591.591 INFO    ] 2026-06-19 00:17:48
[2026-06-19 00:17:48,890.890 INFO    ] 2026-06-19 00:17:48
[2026-06-19 00:17:48,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:17:49,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:17:49,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:17:49,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:17:49,312.312 INFO    ] time= 19/06/2026 00:17:49
[2026-06-19 00:17:49,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:17:49,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:17:49,397.397 INFO    ] No existing commands found in stream
[2026-06-19 00:17:54,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:17:54,413.413 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 00:17:55,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:17:55,858.858 INFO    ] Checking for system updates...
[2026-06-19 00:17:55,895.895 INFO    ] 200
[2026-06-19 00:17:55,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:55,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:17:55,960.960 INFO    ] No update needed
[2026-06-19 00:17:55,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 00:17:56,002.002 INFO    ] 200
[2026-06-19 00:17:56,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:17:56,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:17:56,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:17:56,092.092 INFO    ] No camera update needed
[2026-06-19 00:17:56,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:17:56,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:17:56,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:17:56,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:17:58,147.147 INFO    ] ================================================
[2026-06-19 00:17:58,163.163 INFO    ] Launching Daemon at Fri Jun 19 00:17:58 IST 2026
[2026-06-19 00:17:58,175.175 INFO    ] ================================================
[2026-06-19 00:17:58,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:17:58
[2026-06-19 00:17:59,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:17:59,821.821 INFO    ] Initializing speech engine...
[2026-06-19 00:17:59,834.834 INFO    ] 2026-06-19 00:17:59
[2026-06-19 00:18:00,115.115 INFO    ] 2026-06-19 00:18:00
[2026-06-19 00:18:00,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:18:00,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:18:00,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:18:00,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:18:00,591.591 INFO    ] time= 19/06/2026 00:18:00
[2026-06-19 00:18:00,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:18:00,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:18:00,776.776 INFO    ] No existing commands found in stream
[2026-06-19 00:18:05,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:18:05,812.812 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 00:18:06,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:18:06,257.257 INFO    ] Checking for system updates...
[2026-06-19 00:18:06,307.307 INFO    ] 200
[2026-06-19 00:18:06,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:06,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:18:06,371.371 INFO    ] No update needed
[2026-06-19 00:18:06,374.374 INFO    ] Checking for camera pi updates...
[2026-06-19 00:18:06,409.409 INFO    ] 200
[2026-06-19 00:18:06,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:06,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:18:06,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:18:06,508.508 INFO    ] No camera update needed
[2026-06-19 00:18:06,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:18:06,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:18:06,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:18:06,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:18:08,566.566 INFO    ] ================================================
[2026-06-19 00:18:08,582.582 INFO    ] Launching Daemon at Fri Jun 19 00:18:08 IST 2026
[2026-06-19 00:18:08,594.594 INFO    ] ================================================
[2026-06-19 00:18:09,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:18:09
[2026-06-19 00:18:09,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:18:10,209.209 INFO    ] Initializing speech engine...
[2026-06-19 00:18:10,224.224 INFO    ] 2026-06-19 00:18:10
[2026-06-19 00:18:10,506.506 INFO    ] 2026-06-19 00:18:10
[2026-06-19 00:18:10,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:18:10,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:18:10,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:18:10,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:18:10,949.949 INFO    ] time= 19/06/2026 00:18:10
[2026-06-19 00:18:11,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:18:11,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:18:11,139.139 INFO    ] No existing commands found in stream
[2026-06-19 00:18:16,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:18:16,178.178 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 00:18:18,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:18:18,459.459 INFO    ] Checking for system updates...
[2026-06-19 00:18:18,496.496 INFO    ] 200
[2026-06-19 00:18:18,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:18,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:18:18,557.557 INFO    ] No update needed
[2026-06-19 00:18:18,559.559 INFO    ] Checking for camera pi updates...
[2026-06-19 00:18:18,594.594 INFO    ] 200
[2026-06-19 00:18:18,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:18,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:18:18,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:18:18,791.791 INFO    ] No camera update needed
[2026-06-19 00:18:18,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:18:18,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:18:18,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:18:18,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:18:20,850.850 INFO    ] ================================================
[2026-06-19 00:18:20,866.866 INFO    ] Launching Daemon at Fri Jun 19 00:18:20 IST 2026
[2026-06-19 00:18:20,877.877 INFO    ] ================================================
[2026-06-19 00:18:21,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:18:21
[2026-06-19 00:18:22,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:18:22,423.423 INFO    ] Initializing speech engine...
[2026-06-19 00:18:22,432.432 INFO    ] 2026-06-19 00:18:22
[2026-06-19 00:18:22,689.689 INFO    ] 2026-06-19 00:18:22
[2026-06-19 00:18:22,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:18:22,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:18:22,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:18:23,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:18:23,182.182 INFO    ] time= 19/06/2026 00:18:23
[2026-06-19 00:18:23,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:18:23,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:18:23,369.369 INFO    ] No existing commands found in stream
[2026-06-19 00:18:28,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:18:28,399.399 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 00:18:32,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:18:32,132.132 INFO    ] Checking for system updates...
[2026-06-19 00:18:32,173.173 INFO    ] 200
[2026-06-19 00:18:32,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:32,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:18:32,237.237 INFO    ] No update needed
[2026-06-19 00:18:32,240.240 INFO    ] Checking for camera pi updates...
[2026-06-19 00:18:32,277.277 INFO    ] 200
[2026-06-19 00:18:32,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:32,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:18:32,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:18:32,364.364 INFO    ] No camera update needed
[2026-06-19 00:18:32,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:18:32,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:18:32,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:18:32,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:18:34,421.421 INFO    ] ================================================
[2026-06-19 00:18:34,437.437 INFO    ] Launching Daemon at Fri Jun 19 00:18:34 IST 2026
[2026-06-19 00:18:34,449.449 INFO    ] ================================================
[2026-06-19 00:18:35,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:18:35
[2026-06-19 00:18:35,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:18:35,860.860 INFO    ] Initializing speech engine...
[2026-06-19 00:18:35,874.874 INFO    ] 2026-06-19 00:18:35
[2026-06-19 00:18:36,137.137 INFO    ] 2026-06-19 00:18:36
[2026-06-19 00:18:36,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:18:36,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:18:36,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:18:36,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:18:36,615.615 INFO    ] time= 19/06/2026 00:18:36
[2026-06-19 00:18:36,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:18:36,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:18:36,761.761 INFO    ] No existing commands found in stream
[2026-06-19 00:18:41,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:18:41,778.778 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 00:18:43,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:18:43,252.252 INFO    ] Checking for system updates...
[2026-06-19 00:18:43,289.289 INFO    ] 200
[2026-06-19 00:18:43,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:43,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:18:43,348.348 INFO    ] No update needed
[2026-06-19 00:18:43,350.350 INFO    ] Checking for camera pi updates...
[2026-06-19 00:18:43,386.386 INFO    ] 200
[2026-06-19 00:18:43,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:43,431.431 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:18:43,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:18:43,482.482 INFO    ] No camera update needed
[2026-06-19 00:18:43,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:18:43,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:18:43,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:18:43,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:18:45,539.539 INFO    ] ================================================
[2026-06-19 00:18:45,554.554 INFO    ] Launching Daemon at Fri Jun 19 00:18:45 IST 2026
[2026-06-19 00:18:45,565.565 INFO    ] ================================================
[2026-06-19 00:18:46,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:18:46
[2026-06-19 00:18:46,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:18:47,026.026 INFO    ] Initializing speech engine...
[2026-06-19 00:18:47,035.035 INFO    ] 2026-06-19 00:18:47
[2026-06-19 00:18:47,308.308 INFO    ] 2026-06-19 00:18:47
[2026-06-19 00:18:47,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:18:47,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:18:47,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:18:47,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:18:47,687.687 INFO    ] time= 19/06/2026 00:18:47
[2026-06-19 00:18:47,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:18:47,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:18:47,847.847 INFO    ] No existing commands found in stream
[2026-06-19 00:18:52,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:18:53,300.300 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 00:18:54,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:18:54,602.602 INFO    ] Checking for system updates...
[2026-06-19 00:18:54,639.639 INFO    ] 200
[2026-06-19 00:18:54,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:54,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:18:54,698.698 INFO    ] No update needed
[2026-06-19 00:18:54,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 00:18:54,738.738 INFO    ] 200
[2026-06-19 00:18:54,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:18:54,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:18:54,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:18:54,833.833 INFO    ] No camera update needed
[2026-06-19 00:18:54,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:18:54,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:18:54,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:18:54,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:18:56,890.890 INFO    ] ================================================
[2026-06-19 00:18:56,905.905 INFO    ] Launching Daemon at Fri Jun 19 00:18:56 IST 2026
[2026-06-19 00:18:56,916.916 INFO    ] ================================================
[2026-06-19 00:18:57,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:18:57
[2026-06-19 00:18:58,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:18:58,317.317 INFO    ] Initializing speech engine...
[2026-06-19 00:18:58,336.336 INFO    ] 2026-06-19 00:18:58
[2026-06-19 00:18:58,593.593 INFO    ] 2026-06-19 00:18:58
[2026-06-19 00:18:58,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:18:58,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:18:58,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:18:59,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:18:59,029.029 INFO    ] time= 19/06/2026 00:18:59
[2026-06-19 00:18:59,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:18:59,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:18:59,214.214 INFO    ] No existing commands found in stream
[2026-06-19 00:19:04,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:19:04,229.229 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 00:19:04,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:19:04,842.842 INFO    ] Checking for system updates...
[2026-06-19 00:19:04,878.878 INFO    ] 200
[2026-06-19 00:19:04,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:04,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:19:04,937.937 INFO    ] No update needed
[2026-06-19 00:19:04,939.939 INFO    ] Checking for camera pi updates...
[2026-06-19 00:19:04,973.973 INFO    ] 200
[2026-06-19 00:19:04,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:05,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:19:05,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:19:05,066.066 INFO    ] No camera update needed
[2026-06-19 00:19:05,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:19:05,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:19:05,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:19:05,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:19:07,121.121 INFO    ] ================================================
[2026-06-19 00:19:07,136.136 INFO    ] Launching Daemon at Fri Jun 19 00:19:07 IST 2026
[2026-06-19 00:19:07,147.147 INFO    ] ================================================
[2026-06-19 00:19:07,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:19:07
[2026-06-19 00:19:08,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:19:08,574.574 INFO    ] Initializing speech engine...
[2026-06-19 00:19:08,582.582 INFO    ] 2026-06-19 00:19:08
[2026-06-19 00:19:08,838.838 INFO    ] 2026-06-19 00:19:08
[2026-06-19 00:19:08,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:19:09,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:19:09,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:19:09,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:19:09,198.198 INFO    ] time= 19/06/2026 00:19:09
[2026-06-19 00:19:09,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:19:09,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:19:09,367.367 INFO    ] No existing commands found in stream
[2026-06-19 00:19:14,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:19:14,400.400 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 00:19:17,487.487 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:19:17,489.489 INFO    ] Checking for system updates...
[2026-06-19 00:19:17,525.525 INFO    ] 200
[2026-06-19 00:19:17,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:17,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:19:17,582.582 INFO    ] No update needed
[2026-06-19 00:19:17,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 00:19:17,619.619 INFO    ] 200
[2026-06-19 00:19:17,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:17,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:19:17,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:19:17,709.709 INFO    ] No camera update needed
[2026-06-19 00:19:17,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:19:17,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:19:17,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:19:17,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:19:19,767.767 INFO    ] ================================================
[2026-06-19 00:19:19,782.782 INFO    ] Launching Daemon at Fri Jun 19 00:19:19 IST 2026
[2026-06-19 00:19:19,797.797 INFO    ] ================================================
[2026-06-19 00:19:20,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:19:20
[2026-06-19 00:19:20,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:19:21,218.218 INFO    ] Initializing speech engine...
[2026-06-19 00:19:21,227.227 INFO    ] 2026-06-19 00:19:21
[2026-06-19 00:19:21,473.473 INFO    ] 2026-06-19 00:19:21
[2026-06-19 00:19:21,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:19:21,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:19:21,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:19:21,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:19:21,935.935 INFO    ] time= 19/06/2026 00:19:21
[2026-06-19 00:19:22,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:19:22,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:19:22,152.152 INFO    ] No existing commands found in stream
[2026-06-19 00:19:27,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:19:28,034.034 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 00:19:28,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:19:28,913.913 INFO    ] Checking for system updates...
[2026-06-19 00:19:31,482.482 INFO    ] 200
[2026-06-19 00:19:31,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:32,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:19:32,528.528 INFO    ] No update needed
[2026-06-19 00:19:32,531.531 INFO    ] Checking for camera pi updates...
[2026-06-19 00:19:32,571.571 INFO    ] 200
[2026-06-19 00:19:32,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:32,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:19:32,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:19:32,660.660 INFO    ] No camera update needed
[2026-06-19 00:19:32,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:19:32,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:19:32,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:19:32,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:19:34,721.721 INFO    ] ================================================
[2026-06-19 00:19:34,737.737 INFO    ] Launching Daemon at Fri Jun 19 00:19:34 IST 2026
[2026-06-19 00:19:34,748.748 INFO    ] ================================================
[2026-06-19 00:19:35,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:19:35
[2026-06-19 00:19:35,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:19:36,191.191 INFO    ] Initializing speech engine...
[2026-06-19 00:19:36,197.197 INFO    ] 2026-06-19 00:19:36
[2026-06-19 00:19:36,457.457 INFO    ] 2026-06-19 00:19:36
[2026-06-19 00:19:36,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:19:36,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:19:36,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:19:36,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:19:36,829.829 INFO    ] time= 19/06/2026 00:19:36
[2026-06-19 00:19:36,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:19:36,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:19:36,992.992 INFO    ] No existing commands found in stream
[2026-06-19 00:19:42,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:19:42,020.020 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 00:19:45,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:19:45,304.304 INFO    ] Checking for system updates...
[2026-06-19 00:19:45,340.340 INFO    ] 200
[2026-06-19 00:19:45,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:45,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:19:45,398.398 INFO    ] No update needed
[2026-06-19 00:19:45,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 00:19:45,434.434 INFO    ] 200
[2026-06-19 00:19:45,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:45,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:19:45,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:19:45,530.530 INFO    ] No camera update needed
[2026-06-19 00:19:45,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:19:45,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:19:45,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:19:45,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:19:47,587.587 INFO    ] ================================================
[2026-06-19 00:19:47,603.603 INFO    ] Launching Daemon at Fri Jun 19 00:19:47 IST 2026
[2026-06-19 00:19:47,614.614 INFO    ] ================================================
[2026-06-19 00:19:48,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:19:48
[2026-06-19 00:19:48,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:19:49,052.052 INFO    ] Initializing speech engine...
[2026-06-19 00:19:49,058.058 INFO    ] 2026-06-19 00:19:49
[2026-06-19 00:19:49,356.356 INFO    ] 2026-06-19 00:19:49
[2026-06-19 00:19:49,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:19:49,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:19:49,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:19:49,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:19:49,737.737 INFO    ] time= 19/06/2026 00:19:49
[2026-06-19 00:19:49,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:19:49,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:19:49,863.863 INFO    ] No existing commands found in stream
[2026-06-19 00:19:54,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:19:54,878.878 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 00:19:57,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:19:57,679.679 INFO    ] Checking for system updates...
[2026-06-19 00:19:57,717.717 INFO    ] 200
[2026-06-19 00:19:57,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:57,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:19:57,778.778 INFO    ] No update needed
[2026-06-19 00:19:57,780.780 INFO    ] Checking for camera pi updates...
[2026-06-19 00:19:57,816.816 INFO    ] 200
[2026-06-19 00:19:57,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:19:57,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:19:57,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:19:57,918.918 INFO    ] No camera update needed
[2026-06-19 00:19:57,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:19:57,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:19:57,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:19:57,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:19:59,978.978 INFO    ] ================================================
[2026-06-19 00:19:59,993.993 INFO    ] Launching Daemon at Fri Jun 19 00:19:59 IST 2026
[2026-06-19 00:20:00,004.004 INFO    ] ================================================
[2026-06-19 00:20:00,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:20:00
[2026-06-19 00:20:01,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:20:01,426.426 INFO    ] Initializing speech engine...
[2026-06-19 00:20:01,433.433 INFO    ] 2026-06-19 00:20:01
[2026-06-19 00:20:01,731.731 INFO    ] 2026-06-19 00:20:01
[2026-06-19 00:20:01,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:20:01,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:20:01,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:20:02,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:20:02,161.161 INFO    ] time= 19/06/2026 00:20:02
[2026-06-19 00:20:02,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:20:02,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:20:02,263.263 INFO    ] No existing commands found in stream
[2026-06-19 00:20:07,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:20:07,286.286 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 00:20:09,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:20:10,772.772 INFO    ] Checking for system updates...
[2026-06-19 00:20:11,754.754 INFO    ] 200
[2026-06-19 00:20:11,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:11,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:20:11,813.813 INFO    ] No update needed
[2026-06-19 00:20:11,815.815 INFO    ] Checking for camera pi updates...
[2026-06-19 00:20:11,850.850 INFO    ] 200
[2026-06-19 00:20:11,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:11,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:20:11,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:20:11,942.942 INFO    ] No camera update needed
[2026-06-19 00:20:11,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:20:11,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:20:11,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:20:11,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:20:14,000.000 INFO    ] ================================================
[2026-06-19 00:20:14,111.111 INFO    ] Launching Daemon at Fri Jun 19 00:20:14 IST 2026
[2026-06-19 00:20:14,122.122 INFO    ] ================================================
[2026-06-19 00:20:14,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:20:14
[2026-06-19 00:20:15,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:20:15,710.710 INFO    ] Initializing speech engine...
[2026-06-19 00:20:15,717.717 INFO    ] 2026-06-19 00:20:15
[2026-06-19 00:20:15,994.994 INFO    ] 2026-06-19 00:20:15
[2026-06-19 00:20:16,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:20:16,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:20:16,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:20:16,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:20:16,472.472 INFO    ] time= 19/06/2026 00:20:16
[2026-06-19 00:20:16,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:20:16,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:20:16,602.602 INFO    ] No existing commands found in stream
[2026-06-19 00:20:21,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:20:21,618.618 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 00:20:25,054.054 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:20:25,057.057 INFO    ] Checking for system updates...
[2026-06-19 00:20:25,094.094 INFO    ] 200
[2026-06-19 00:20:25,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:25,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:20:25,154.154 INFO    ] No update needed
[2026-06-19 00:20:25,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 00:20:25,190.190 INFO    ] 200
[2026-06-19 00:20:25,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:25,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:20:25,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:20:25,379.379 INFO    ] No camera update needed
[2026-06-19 00:20:25,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:20:25,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:20:25,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:20:25,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:20:27,434.434 INFO    ] ================================================
[2026-06-19 00:20:27,449.449 INFO    ] Launching Daemon at Fri Jun 19 00:20:27 IST 2026
[2026-06-19 00:20:27,460.460 INFO    ] ================================================
[2026-06-19 00:20:28,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:20:28
[2026-06-19 00:20:28,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:20:28,928.928 INFO    ] Initializing speech engine...
[2026-06-19 00:20:28,937.937 INFO    ] 2026-06-19 00:20:28
[2026-06-19 00:20:29,196.196 INFO    ] 2026-06-19 00:20:29
[2026-06-19 00:20:29,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:20:29,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:20:29,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:20:29,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:20:29,554.554 INFO    ] time= 19/06/2026 00:20:29
[2026-06-19 00:20:29,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:20:29,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:20:29,733.733 INFO    ] No existing commands found in stream
[2026-06-19 00:20:34,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:20:34,765.765 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 00:20:37,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:20:37,924.924 INFO    ] Checking for system updates...
[2026-06-19 00:20:37,960.960 INFO    ] 200
[2026-06-19 00:20:37,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:38,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:20:38,025.025 INFO    ] No update needed
[2026-06-19 00:20:38,028.028 INFO    ] Checking for camera pi updates...
[2026-06-19 00:20:38,062.062 INFO    ] 200
[2026-06-19 00:20:38,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:38,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:20:38,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:20:38,154.154 INFO    ] No camera update needed
[2026-06-19 00:20:38,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:20:38,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:20:38,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:20:38,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:20:40,212.212 INFO    ] ================================================
[2026-06-19 00:20:40,227.227 INFO    ] Launching Daemon at Fri Jun 19 00:20:40 IST 2026
[2026-06-19 00:20:40,238.238 INFO    ] ================================================
[2026-06-19 00:20:40,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:20:40
[2026-06-19 00:20:41,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:20:41,653.653 INFO    ] Initializing speech engine...
[2026-06-19 00:20:41,667.667 INFO    ] 2026-06-19 00:20:41
[2026-06-19 00:20:41,934.934 INFO    ] 2026-06-19 00:20:41
[2026-06-19 00:20:41,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:20:42,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:20:42,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:20:42,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:20:42,313.313 INFO    ] time= 19/06/2026 00:20:42
[2026-06-19 00:20:42,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:20:42,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:20:42,469.469 INFO    ] No existing commands found in stream
[2026-06-19 00:20:47,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:20:47,497.497 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 00:20:48,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:20:48,033.033 INFO    ] Checking for system updates...
[2026-06-19 00:20:48,072.072 INFO    ] 200
[2026-06-19 00:20:48,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:48,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:20:48,135.135 INFO    ] No update needed
[2026-06-19 00:20:48,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 00:20:48,174.174 INFO    ] 200
[2026-06-19 00:20:48,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:48,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:20:48,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:20:48,268.268 INFO    ] No camera update needed
[2026-06-19 00:20:48,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:20:48,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:20:48,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:20:48,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:20:50,326.326 INFO    ] ================================================
[2026-06-19 00:20:50,341.341 INFO    ] Launching Daemon at Fri Jun 19 00:20:50 IST 2026
[2026-06-19 00:20:50,352.352 INFO    ] ================================================
[2026-06-19 00:20:50,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:20:50
[2026-06-19 00:20:51,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:20:51,808.808 INFO    ] Initializing speech engine...
[2026-06-19 00:20:51,817.817 INFO    ] 2026-06-19 00:20:51
[2026-06-19 00:20:52,074.074 INFO    ] 2026-06-19 00:20:52
[2026-06-19 00:20:52,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:20:52,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:20:52,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:20:52,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:20:52,544.544 INFO    ] time= 19/06/2026 00:20:52
[2026-06-19 00:20:52,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:20:52,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:20:52,678.678 INFO    ] No existing commands found in stream
[2026-06-19 00:20:57,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:20:57,692.692 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 00:20:58,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:20:58,962.962 INFO    ] Checking for system updates...
[2026-06-19 00:20:58,998.998 INFO    ] 200
[2026-06-19 00:20:59,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:59,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:20:59,058.058 INFO    ] No update needed
[2026-06-19 00:20:59,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 00:20:59,095.095 INFO    ] 200
[2026-06-19 00:20:59,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:20:59,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:20:59,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:20:59,188.188 INFO    ] No camera update needed
[2026-06-19 00:20:59,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:20:59,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:20:59,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:20:59,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:21:01,262.262 INFO    ] ================================================
[2026-06-19 00:21:01,285.285 INFO    ] Launching Daemon at Fri Jun 19 00:21:01 IST 2026
[2026-06-19 00:21:01,304.304 INFO    ] ================================================
[2026-06-19 00:21:02,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:21:02
[2026-06-19 00:21:02,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:21:03,028.028 INFO    ] Initializing speech engine...
[2026-06-19 00:21:03,036.036 INFO    ] 2026-06-19 00:21:03
[2026-06-19 00:21:03,302.302 INFO    ] 2026-06-19 00:21:03
[2026-06-19 00:21:03,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:21:03,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:21:03,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:21:03,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:21:03,776.776 INFO    ] time= 19/06/2026 00:21:03
[2026-06-19 00:21:03,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:21:03,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:21:03,911.911 INFO    ] No existing commands found in stream
[2026-06-19 00:21:08,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:21:08,926.926 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 00:21:10,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:21:10,698.698 INFO    ] Checking for system updates...
[2026-06-19 00:21:10,737.737 INFO    ] 200
[2026-06-19 00:21:10,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:21:10,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:21:10,795.795 INFO    ] No update needed
[2026-06-19 00:21:10,797.797 INFO    ] Checking for camera pi updates...
[2026-06-19 00:21:10,831.831 INFO    ] 200
[2026-06-19 00:21:10,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:21:10,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:21:10,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:21:10,928.928 INFO    ] No camera update needed
[2026-06-19 00:21:10,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:21:10,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:21:10,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:21:10,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:21:12,984.984 INFO    ] ================================================
[2026-06-19 00:21:13,999.999 INFO    ] Launching Daemon at Fri Jun 19 00:21:12 IST 2026
[2026-06-19 00:21:13,010.010 INFO    ] ================================================
[2026-06-19 00:21:13,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:21:13
[2026-06-19 00:21:14,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:21:14,417.417 INFO    ] Initializing speech engine...
[2026-06-19 00:21:14,423.423 INFO    ] 2026-06-19 00:21:14
[2026-06-19 00:21:14,716.716 INFO    ] 2026-06-19 00:21:14
[2026-06-19 00:21:14,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:21:14,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:21:14,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:21:15,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:21:15,089.089 INFO    ] time= 19/06/2026 00:21:15
[2026-06-19 00:21:15,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:21:15,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:21:15,213.213 INFO    ] No existing commands found in stream
[2026-06-19 00:21:20,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:21:20,229.229 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 00:21:23,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:21:23,292.292 INFO    ] Checking for system updates...
[2026-06-19 00:21:23,333.333 INFO    ] 200
[2026-06-19 00:21:23,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:21:23,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:21:23,391.391 INFO    ] No update needed
[2026-06-19 00:21:23,393.393 INFO    ] Checking for camera pi updates...
[2026-06-19 00:21:23,431.431 INFO    ] 200
[2026-06-19 00:21:23,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:21:23,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:21:23,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:21:23,536.536 INFO    ] No camera update needed
[2026-06-19 00:21:23,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:21:23,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:21:23,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:21:23,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:21:25,591.591 INFO    ] ================================================
[2026-06-19 00:21:25,606.606 INFO    ] Launching Daemon at Fri Jun 19 00:21:25 IST 2026
[2026-06-19 00:21:25,617.617 INFO    ] ================================================
[2026-06-19 00:21:26,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:21:26
[2026-06-19 00:21:26,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:21:27,224.224 INFO    ] Initializing speech engine...
[2026-06-19 00:21:27,234.234 INFO    ] 2026-06-19 00:21:27
[2026-06-19 00:21:27,522.522 INFO    ] 2026-06-19 00:21:27
[2026-06-19 00:21:27,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:21:27,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:21:27,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:21:27,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:21:27,990.990 INFO    ] time= 19/06/2026 00:21:27
[2026-06-19 00:21:28,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:21:28,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:21:28,140.140 INFO    ] No existing commands found in stream
[2026-06-19 00:21:33,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:21:33,156.156 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 00:21:37,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:21:37,073.073 INFO    ] Checking for system updates...
[2026-06-19 00:21:37,113.113 INFO    ] 200
[2026-06-19 00:21:37,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:21:37,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:21:37,174.174 INFO    ] No update needed
[2026-06-19 00:21:37,176.176 INFO    ] Checking for camera pi updates...
[2026-06-19 00:21:37,211.211 INFO    ] 200
[2026-06-19 00:21:37,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:21:37,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:21:37,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:21:37,308.308 INFO    ] No camera update needed
[2026-06-19 00:21:37,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:21:37,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:21:37,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:21:37,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:21:39,369.369 INFO    ] ================================================
[2026-06-19 00:21:39,385.385 INFO    ] Launching Daemon at Fri Jun 19 00:21:39 IST 2026
[2026-06-19 00:21:39,396.396 INFO    ] ================================================
[2026-06-19 00:21:39,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:21:39
[2026-06-19 00:21:40,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:21:40,857.857 INFO    ] Initializing speech engine...
[2026-06-19 00:21:40,864.864 INFO    ] 2026-06-19 00:21:40
[2026-06-19 00:21:41,127.127 INFO    ] 2026-06-19 00:21:41
[2026-06-19 00:21:41,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:21:41,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:21:41,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:21:41,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:21:41,608.608 INFO    ] time= 19/06/2026 00:21:41
[2026-06-19 00:21:41,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:21:41,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:21:41,800.800 INFO    ] No existing commands found in stream
[2026-06-19 00:21:46,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:21:46,814.814 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 00:21:50,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:21:50,533.533 INFO    ] Checking for system updates...
[2026-06-19 00:21:50,574.574 INFO    ] 200
[2026-06-19 00:21:50,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:21:50,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:21:50,632.632 INFO    ] No update needed
[2026-06-19 00:21:50,635.635 INFO    ] Checking for camera pi updates...
[2026-06-19 00:21:50,670.670 INFO    ] 200
[2026-06-19 00:21:50,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:21:50,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:21:50,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:21:50,749.749 INFO    ] No camera update needed
[2026-06-19 00:21:50,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:21:50,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:21:50,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:21:50,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:21:52,804.804 INFO    ] ================================================
[2026-06-19 00:21:52,820.820 INFO    ] Launching Daemon at Fri Jun 19 00:21:52 IST 2026
[2026-06-19 00:21:52,831.831 INFO    ] ================================================
[2026-06-19 00:21:53,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:21:53
[2026-06-19 00:21:53,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:21:54,243.243 INFO    ] Initializing speech engine...
[2026-06-19 00:21:54,249.249 INFO    ] 2026-06-19 00:21:54
[2026-06-19 00:21:54,544.544 INFO    ] 2026-06-19 00:21:54
[2026-06-19 00:21:54,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:21:54,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:21:54,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:21:54,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:21:54,918.918 INFO    ] time= 19/06/2026 00:21:54
[2026-06-19 00:21:54,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:21:54,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:21:55,042.042 INFO    ] No existing commands found in stream
[2026-06-19 00:22:00,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:22:00,058.058 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 00:22:03,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:22:03,403.403 INFO    ] Checking for system updates...
[2026-06-19 00:22:03,440.440 INFO    ] 200
[2026-06-19 00:22:03,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:03,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:22:03,497.497 INFO    ] No update needed
[2026-06-19 00:22:03,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 00:22:03,534.534 INFO    ] 200
[2026-06-19 00:22:03,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:03,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:22:03,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:22:03,624.624 INFO    ] No camera update needed
[2026-06-19 00:22:03,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:22:03,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:22:03,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:22:03,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:22:05,680.680 INFO    ] ================================================
[2026-06-19 00:22:05,697.697 INFO    ] Launching Daemon at Fri Jun 19 00:22:05 IST 2026
[2026-06-19 00:22:05,707.707 INFO    ] ================================================
[2026-06-19 00:22:06,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:22:06
[2026-06-19 00:22:07,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:22:07,321.321 INFO    ] Initializing speech engine...
[2026-06-19 00:22:07,330.330 INFO    ] 2026-06-19 00:22:07
[2026-06-19 00:22:07,578.578 INFO    ] 2026-06-19 00:22:07
[2026-06-19 00:22:07,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:22:07,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:22:07,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:22:08,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:22:08,032.032 INFO    ] time= 19/06/2026 00:22:08
[2026-06-19 00:22:08,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:22:08,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:22:08,205.205 INFO    ] No existing commands found in stream
[2026-06-19 00:22:13,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:22:13,228.228 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 00:22:14,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:22:14,693.693 INFO    ] Checking for system updates...
[2026-06-19 00:22:14,730.730 INFO    ] 200
[2026-06-19 00:22:14,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:14,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:22:14,795.795 INFO    ] No update needed
[2026-06-19 00:22:14,797.797 INFO    ] Checking for camera pi updates...
[2026-06-19 00:22:14,835.835 INFO    ] 200
[2026-06-19 00:22:14,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:14,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:22:14,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:22:14,930.930 INFO    ] No camera update needed
[2026-06-19 00:22:14,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:22:14,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:22:14,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:22:14,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:22:16,985.985 INFO    ] ================================================
[2026-06-19 00:22:17,001.001 INFO    ] Launching Daemon at Fri Jun 19 00:22:16 IST 2026
[2026-06-19 00:22:17,019.019 INFO    ] ================================================
[2026-06-19 00:22:17,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:22:17
[2026-06-19 00:22:18,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:22:18,441.441 INFO    ] Initializing speech engine...
[2026-06-19 00:22:18,452.452 INFO    ] 2026-06-19 00:22:18
[2026-06-19 00:22:18,696.696 INFO    ] 2026-06-19 00:22:18
[2026-06-19 00:22:18,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:22:18,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:22:18,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:22:19,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:22:19,064.064 INFO    ] time= 19/06/2026 00:22:19
[2026-06-19 00:22:19,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:22:19,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:22:19,239.239 INFO    ] No existing commands found in stream
[2026-06-19 00:22:24,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:22:24,272.272 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 00:22:28,140.140 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:22:28,143.143 INFO    ] Checking for system updates...
[2026-06-19 00:22:28,183.183 INFO    ] 200
[2026-06-19 00:22:28,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:28,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:22:28,246.246 INFO    ] No update needed
[2026-06-19 00:22:28,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 00:22:28,283.283 INFO    ] 200
[2026-06-19 00:22:28,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:28,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:22:28,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:22:28,483.483 INFO    ] No camera update needed
[2026-06-19 00:22:28,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:22:28,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:22:28,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:22:28,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:22:30,540.540 INFO    ] ================================================
[2026-06-19 00:22:30,556.556 INFO    ] Launching Daemon at Fri Jun 19 00:22:30 IST 2026
[2026-06-19 00:22:30,566.566 INFO    ] ================================================
[2026-06-19 00:22:31,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:22:31
[2026-06-19 00:22:31,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:22:32,120.120 INFO    ] Initializing speech engine...
[2026-06-19 00:22:32,137.137 INFO    ] 2026-06-19 00:22:32
[2026-06-19 00:22:32,412.412 INFO    ] 2026-06-19 00:22:32
[2026-06-19 00:22:32,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:22:32,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:22:32,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:22:32,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:22:32,740.740 INFO    ] time= 19/06/2026 00:22:32
[2026-06-19 00:22:32,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:22:32,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:22:32,810.810 INFO    ] No existing commands found in stream
[2026-06-19 00:22:37,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:22:37,824.824 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 00:22:39,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:22:39,144.144 INFO    ] Checking for system updates...
[2026-06-19 00:22:39,181.181 INFO    ] 200
[2026-06-19 00:22:39,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:39,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:22:39,241.241 INFO    ] No update needed
[2026-06-19 00:22:39,244.244 INFO    ] Checking for camera pi updates...
[2026-06-19 00:22:39,282.282 INFO    ] 200
[2026-06-19 00:22:39,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:39,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:22:39,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:22:39,377.377 INFO    ] No camera update needed
[2026-06-19 00:22:39,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:22:39,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:22:39,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:22:39,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:22:41,435.435 INFO    ] ================================================
[2026-06-19 00:22:41,451.451 INFO    ] Launching Daemon at Fri Jun 19 00:22:41 IST 2026
[2026-06-19 00:22:41,467.467 INFO    ] ================================================
[2026-06-19 00:22:42,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:22:42
[2026-06-19 00:22:42,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:22:42,922.922 INFO    ] Initializing speech engine...
[2026-06-19 00:22:42,943.943 INFO    ] 2026-06-19 00:22:42
[2026-06-19 00:22:43,207.207 INFO    ] 2026-06-19 00:22:43
[2026-06-19 00:22:43,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:22:43,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:22:43,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:22:43,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:22:43,581.581 INFO    ] time= 19/06/2026 00:22:43
[2026-06-19 00:22:43,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:22:43,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:22:43,703.703 INFO    ] No existing commands found in stream
[2026-06-19 00:22:48,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:22:48,718.718 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 00:22:52,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:22:52,594.594 INFO    ] Checking for system updates...
[2026-06-19 00:22:52,630.630 INFO    ] 200
[2026-06-19 00:22:52,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:52,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:22:52,688.688 INFO    ] No update needed
[2026-06-19 00:22:52,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 00:22:52,728.728 INFO    ] 200
[2026-06-19 00:22:52,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:22:52,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:22:52,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:22:52,837.837 INFO    ] No camera update needed
[2026-06-19 00:22:52,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:22:52,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:22:52,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:22:52,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:22:54,891.891 INFO    ] ================================================
[2026-06-19 00:22:54,906.906 INFO    ] Launching Daemon at Fri Jun 19 00:22:54 IST 2026
[2026-06-19 00:22:54,916.916 INFO    ] ================================================
[2026-06-19 00:22:55,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:22:55
[2026-06-19 00:22:56,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:22:56,377.377 INFO    ] Initializing speech engine...
[2026-06-19 00:22:56,383.383 INFO    ] 2026-06-19 00:22:56
[2026-06-19 00:22:56,647.647 INFO    ] 2026-06-19 00:22:56
[2026-06-19 00:22:56,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:22:56,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:22:56,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:22:57,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:22:57,108.108 INFO    ] time= 19/06/2026 00:22:57
[2026-06-19 00:22:57,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:22:57,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:22:57,254.254 INFO    ] No existing commands found in stream
[2026-06-19 00:23:02,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:23:02,269.269 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 00:23:03,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:23:03,971.971 INFO    ] Checking for system updates...
[2026-06-19 00:23:04,011.011 INFO    ] 200
[2026-06-19 00:23:04,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:23:04,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:23:04,070.070 INFO    ] No update needed
[2026-06-19 00:23:04,073.073 INFO    ] Checking for camera pi updates...
[2026-06-19 00:23:04,107.107 INFO    ] 200
[2026-06-19 00:23:04,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:23:04,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:23:04,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:23:04,195.195 INFO    ] No camera update needed
[2026-06-19 00:23:04,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:23:04,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:23:04,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:23:04,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:23:06,250.250 INFO    ] ================================================
[2026-06-19 00:23:06,266.266 INFO    ] Launching Daemon at Fri Jun 19 00:23:06 IST 2026
[2026-06-19 00:23:06,276.276 INFO    ] ================================================
[2026-06-19 00:23:06,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:23:06
[2026-06-19 00:23:07,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:23:07,731.731 INFO    ] Initializing speech engine...
[2026-06-19 00:23:07,756.756 INFO    ] 2026-06-19 00:23:07
[2026-06-19 00:23:08,028.028 INFO    ] 2026-06-19 00:23:08
[2026-06-19 00:23:08,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:23:08,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:23:08,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:23:08,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:23:08,390.390 INFO    ] time= 19/06/2026 00:23:08
[2026-06-19 00:23:08,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:23:08,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:23:08,504.504 INFO    ] No existing commands found in stream
[2026-06-19 00:23:13,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:23:13,519.519 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 00:23:14,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:23:14,821.821 INFO    ] Checking for system updates...
[2026-06-19 00:23:14,857.857 INFO    ] 200
[2026-06-19 00:23:14,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:23:14,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:23:14,920.920 INFO    ] No update needed
[2026-06-19 00:23:14,922.922 INFO    ] Checking for camera pi updates...
[2026-06-19 00:23:14,959.959 INFO    ] 200
[2026-06-19 00:23:14,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:23:15,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:23:15,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:23:15,058.058 INFO    ] No camera update needed
[2026-06-19 00:23:15,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:23:15,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:23:15,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:23:15,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:23:17,112.112 INFO    ] ================================================
[2026-06-19 00:23:17,127.127 INFO    ] Launching Daemon at Fri Jun 19 00:23:17 IST 2026
[2026-06-19 00:23:17,138.138 INFO    ] ================================================
[2026-06-19 00:23:17,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:23:17
[2026-06-19 00:23:18,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:23:18,764.764 INFO    ] Initializing speech engine...
[2026-06-19 00:23:18,770.770 INFO    ] 2026-06-19 00:23:18
[2026-06-19 00:23:19,055.055 INFO    ] 2026-06-19 00:23:19
[2026-06-19 00:23:19,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:23:19,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:23:19,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:23:19,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:23:19,637.637 INFO    ] time= 19/06/2026 00:23:19
[2026-06-19 00:23:19,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:23:19,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:23:19,801.801 INFO    ] No existing commands found in stream
[2026-06-19 00:23:24,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:23:24,835.835 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 00:23:29,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:23:29,080.080 INFO    ] Checking for system updates...
[2026-06-19 00:23:29,119.119 INFO    ] 200
[2026-06-19 00:23:29,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:23:29,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:23:29,176.176 INFO    ] No update needed
[2026-06-19 00:23:29,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 00:23:29,217.217 INFO    ] 200
[2026-06-19 00:23:29,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:23:29,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:23:29,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:23:29,310.310 INFO    ] No camera update needed
[2026-06-19 00:23:29,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:23:29,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:23:29,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:23:29,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:23:31,367.367 INFO    ] ================================================
[2026-06-19 00:23:31,384.384 INFO    ] Launching Daemon at Fri Jun 19 00:23:31 IST 2026
[2026-06-19 00:23:31,396.396 INFO    ] ================================================
[2026-06-19 00:23:32,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:23:32
[2026-06-19 00:23:32,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:23:33,144.144 INFO    ] Initializing speech engine...
[2026-06-19 00:23:33,156.156 INFO    ] 2026-06-19 00:23:33
[2026-06-19 00:23:33,442.442 INFO    ] 2026-06-19 00:23:33
[2026-06-19 00:23:33,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:23:33,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:23:33,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:23:33,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:23:33,894.894 INFO    ] time= 19/06/2026 00:23:33
[2026-06-19 00:23:33,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:23:33,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:23:34,048.048 INFO    ] No existing commands found in stream
[2026-06-19 00:23:39,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:23:39,082.082 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 00:23:41,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:23:41,554.554 INFO    ] Checking for system updates...
[2026-06-19 00:23:41,592.592 INFO    ] 200
[2026-06-19 00:23:41,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:23:41,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:23:41,650.650 INFO    ] No update needed
[2026-06-19 00:23:41,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 00:23:41,687.687 INFO    ] 200
[2026-06-19 00:23:41,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:23:41,739.739 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:23:41,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:23:41,791.791 INFO    ] No camera update needed
[2026-06-19 00:23:41,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:23:41,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:23:41,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:23:41,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:23:43,847.847 INFO    ] ================================================
[2026-06-19 00:23:43,862.862 INFO    ] Launching Daemon at Fri Jun 19 00:23:43 IST 2026
[2026-06-19 00:23:43,873.873 INFO    ] ================================================
[2026-06-19 00:23:44,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:23:44
[2026-06-19 00:23:45,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:23:45,315.315 INFO    ] Initializing speech engine...
[2026-06-19 00:23:45,322.322 INFO    ] 2026-06-19 00:23:45
[2026-06-19 00:23:45,568.568 INFO    ] 2026-06-19 00:23:45
[2026-06-19 00:23:45,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:23:45,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:23:45,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:23:45,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:23:45,949.949 INFO    ] time= 19/06/2026 00:23:45
[2026-06-19 00:23:45,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:23:46,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:23:46,119.119 INFO    ] No existing commands found in stream
[2026-06-19 00:23:51,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:23:51,147.147 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 00:23:53,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:23:53,553.553 INFO    ] Checking for system updates...
[2026-06-19 00:23:53,593.593 INFO    ] 200
[2026-06-19 00:23:53,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 00:23:53,599.599 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 00:23:53,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 00:23:53,647.647 INFO    ] 200
[2026-06-19 00:23:53,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 00:23:53,652.652 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 00:23:53,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:23:53,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:23:53,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:23:53,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:23:55,709.709 INFO    ] ================================================
[2026-06-19 00:23:55,724.724 INFO    ] Launching Daemon at Fri Jun 19 00:23:55 IST 2026
[2026-06-19 00:23:55,735.735 INFO    ] ================================================
[2026-06-19 00:23:56,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:23:56
[2026-06-19 00:23:56,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:23:57,194.194 INFO    ] Initializing speech engine...
[2026-06-19 00:23:57,203.203 INFO    ] 2026-06-19 00:23:57
[2026-06-19 00:23:57,498.498 INFO    ] 2026-06-19 00:23:57
[2026-06-19 00:23:57,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:23:57,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:23:57,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:23:57,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:23:57,879.879 INFO    ] time= 19/06/2026 00:23:57
[2026-06-19 00:23:57,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:23:57,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:23:58,004.004 INFO    ] No existing commands found in stream
[2026-06-19 00:24:03,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:24:03,020.020 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 00:24:03,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:24:03,489.489 INFO    ] Checking for system updates...
[2026-06-19 00:24:03,531.531 INFO    ] 200
[2026-06-19 00:24:03,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:03,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:24:03,607.607 INFO    ] No update needed
[2026-06-19 00:24:03,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 00:24:03,648.648 INFO    ] 200
[2026-06-19 00:24:03,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:03,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:24:03,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:24:03,751.751 INFO    ] No camera update needed
[2026-06-19 00:24:03,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:24:03,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:24:03,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:24:03,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:24:05,807.807 INFO    ] ================================================
[2026-06-19 00:24:05,822.822 INFO    ] Launching Daemon at Fri Jun 19 00:24:05 IST 2026
[2026-06-19 00:24:05,833.833 INFO    ] ================================================
[2026-06-19 00:24:06,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:24:06
[2026-06-19 00:24:07,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:24:07,286.286 INFO    ] Initializing speech engine...
[2026-06-19 00:24:07,304.304 INFO    ] 2026-06-19 00:24:07
[2026-06-19 00:24:07,573.573 INFO    ] 2026-06-19 00:24:07
[2026-06-19 00:24:07,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:24:07,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:24:07,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:24:07,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:24:07,963.963 INFO    ] time= 19/06/2026 00:24:07
[2026-06-19 00:24:07,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:24:08,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:24:08,141.141 INFO    ] No existing commands found in stream
[2026-06-19 00:24:13,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:24:13,174.174 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 00:24:16,222.222 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:24:16,224.224 INFO    ] Checking for system updates...
[2026-06-19 00:24:16,260.260 INFO    ] 200
[2026-06-19 00:24:16,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:16,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:24:16,318.318 INFO    ] No update needed
[2026-06-19 00:24:16,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 00:24:16,354.354 INFO    ] 200
[2026-06-19 00:24:16,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:16,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:24:16,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:24:16,445.445 INFO    ] No camera update needed
[2026-06-19 00:24:16,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:24:16,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:24:16,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:24:16,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:24:18,499.499 INFO    ] ================================================
[2026-06-19 00:24:18,518.518 INFO    ] Launching Daemon at Fri Jun 19 00:24:18 IST 2026
[2026-06-19 00:24:18,529.529 INFO    ] ================================================
[2026-06-19 00:24:19,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:24:19
[2026-06-19 00:24:19,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:24:19,967.967 INFO    ] Initializing speech engine...
[2026-06-19 00:24:19,987.987 INFO    ] 2026-06-19 00:24:19
[2026-06-19 00:24:20,235.235 INFO    ] 2026-06-19 00:24:20
[2026-06-19 00:24:20,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:24:20,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:24:20,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:24:20,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:24:20,610.610 INFO    ] time= 19/06/2026 00:24:20
[2026-06-19 00:24:20,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:24:20,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:24:20,780.780 INFO    ] No existing commands found in stream
[2026-06-19 00:24:25,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:24:25,816.816 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 00:24:30,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:24:30,151.151 INFO    ] Checking for system updates...
[2026-06-19 00:24:30,186.186 INFO    ] 200
[2026-06-19 00:24:30,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:30,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:24:30,245.245 INFO    ] No update needed
[2026-06-19 00:24:30,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 00:24:30,284.284 INFO    ] 200
[2026-06-19 00:24:30,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:30,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:24:30,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:24:30,477.477 INFO    ] No camera update needed
[2026-06-19 00:24:30,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:24:30,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:24:30,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:24:30,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:24:32,535.535 INFO    ] ================================================
[2026-06-19 00:24:32,552.552 INFO    ] Launching Daemon at Fri Jun 19 00:24:32 IST 2026
[2026-06-19 00:24:32,563.563 INFO    ] ================================================
[2026-06-19 00:24:33,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:24:33
[2026-06-19 00:24:33,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:24:34,085.085 INFO    ] Initializing speech engine...
[2026-06-19 00:24:34,092.092 INFO    ] 2026-06-19 00:24:34
[2026-06-19 00:24:34,377.377 INFO    ] 2026-06-19 00:24:34
[2026-06-19 00:24:34,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:24:34,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:24:34,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:24:34,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:24:34,824.824 INFO    ] time= 19/06/2026 00:24:34
[2026-06-19 00:24:34,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:24:34,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:24:34,994.994 INFO    ] No existing commands found in stream
[2026-06-19 00:24:40,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:24:40,010.010 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 00:24:43,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:24:43,477.477 INFO    ] Checking for system updates...
[2026-06-19 00:24:43,515.515 INFO    ] 200
[2026-06-19 00:24:43,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:43,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:24:43,580.580 INFO    ] No update needed
[2026-06-19 00:24:43,583.583 INFO    ] Checking for camera pi updates...
[2026-06-19 00:24:43,620.620 INFO    ] 200
[2026-06-19 00:24:43,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:43,665.665 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:24:43,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:24:43,723.723 INFO    ] No camera update needed
[2026-06-19 00:24:43,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:24:43,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:24:43,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:24:43,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:24:45,781.781 INFO    ] ================================================
[2026-06-19 00:24:45,796.796 INFO    ] Launching Daemon at Fri Jun 19 00:24:45 IST 2026
[2026-06-19 00:24:45,807.807 INFO    ] ================================================
[2026-06-19 00:24:46,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:24:46
[2026-06-19 00:24:47,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:24:47,391.391 INFO    ] Initializing speech engine...
[2026-06-19 00:24:47,403.403 INFO    ] 2026-06-19 00:24:47
[2026-06-19 00:24:47,688.688 INFO    ] 2026-06-19 00:24:47
[2026-06-19 00:24:47,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:24:47,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:24:47,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:24:48,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:24:48,216.216 INFO    ] time= 19/06/2026 00:24:48
[2026-06-19 00:24:48,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:24:48,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:24:48,363.363 INFO    ] No existing commands found in stream
[2026-06-19 00:24:53,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:24:53,388.388 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 00:24:56,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:24:56,427.427 INFO    ] Checking for system updates...
[2026-06-19 00:24:56,464.464 INFO    ] 200
[2026-06-19 00:24:56,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:56,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:24:56,525.525 INFO    ] No update needed
[2026-06-19 00:24:56,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 00:24:56,566.566 INFO    ] 200
[2026-06-19 00:24:56,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:24:56,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:24:56,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:24:56,659.659 INFO    ] No camera update needed
[2026-06-19 00:24:56,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:24:56,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:24:56,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:24:56,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:24:58,717.717 INFO    ] ================================================
[2026-06-19 00:24:58,733.733 INFO    ] Launching Daemon at Fri Jun 19 00:24:58 IST 2026
[2026-06-19 00:24:58,744.744 INFO    ] ================================================
[2026-06-19 00:24:59,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:24:59
[2026-06-19 00:25:00,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:25:00,363.363 INFO    ] Initializing speech engine...
[2026-06-19 00:25:00,371.371 INFO    ] 2026-06-19 00:25:00
[2026-06-19 00:25:00,643.643 INFO    ] 2026-06-19 00:25:00
[2026-06-19 00:25:00,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:25:00,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:25:00,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:25:01,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:25:01,111.111 INFO    ] time= 19/06/2026 00:25:01
[2026-06-19 00:25:01,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:25:01,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:25:01,333.333 INFO    ] No existing commands found in stream
[2026-06-19 00:25:06,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:25:06,361.361 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 00:25:08,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:25:08,924.924 INFO    ] Checking for system updates...
[2026-06-19 00:25:08,964.964 INFO    ] 200
[2026-06-19 00:25:08,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:09,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:25:09,032.032 INFO    ] No update needed
[2026-06-19 00:25:09,035.035 INFO    ] Checking for camera pi updates...
[2026-06-19 00:25:09,071.071 INFO    ] 200
[2026-06-19 00:25:09,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:09,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:25:09,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:25:09,168.168 INFO    ] No camera update needed
[2026-06-19 00:25:09,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:25:09,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:25:09,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:25:09,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:25:11,226.226 INFO    ] ================================================
[2026-06-19 00:25:11,241.241 INFO    ] Launching Daemon at Fri Jun 19 00:25:11 IST 2026
[2026-06-19 00:25:11,252.252 INFO    ] ================================================
[2026-06-19 00:25:11,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:25:11
[2026-06-19 00:25:12,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:25:12,835.835 INFO    ] Initializing speech engine...
[2026-06-19 00:25:12,845.845 INFO    ] 2026-06-19 00:25:12
[2026-06-19 00:25:13,134.134 INFO    ] 2026-06-19 00:25:13
[2026-06-19 00:25:13,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:25:13,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:25:13,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:25:13,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:25:13,578.578 INFO    ] time= 19/06/2026 00:25:13
[2026-06-19 00:25:13,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:25:13,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:25:13,726.726 INFO    ] No existing commands found in stream
[2026-06-19 00:25:18,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:25:18,742.742 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 00:25:19,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:25:19,735.735 INFO    ] Checking for system updates...
[2026-06-19 00:25:19,772.772 INFO    ] 200
[2026-06-19 00:25:19,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:19,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:25:19,830.830 INFO    ] No update needed
[2026-06-19 00:25:19,833.833 INFO    ] Checking for camera pi updates...
[2026-06-19 00:25:19,868.868 INFO    ] 200
[2026-06-19 00:25:19,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:19,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:25:19,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:25:19,970.970 INFO    ] No camera update needed
[2026-06-19 00:25:19,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:25:19,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:25:19,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:25:19,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:25:22,027.027 INFO    ] ================================================
[2026-06-19 00:25:22,042.042 INFO    ] Launching Daemon at Fri Jun 19 00:25:22 IST 2026
[2026-06-19 00:25:22,053.053 INFO    ] ================================================
[2026-06-19 00:25:22,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:25:22
[2026-06-19 00:25:23,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:25:23,519.519 INFO    ] Initializing speech engine...
[2026-06-19 00:25:23,527.527 INFO    ] 2026-06-19 00:25:23
[2026-06-19 00:25:23,787.787 INFO    ] 2026-06-19 00:25:23
[2026-06-19 00:25:23,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:25:24,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:25:24,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:25:24,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:25:24,254.254 INFO    ] time= 19/06/2026 00:25:24
[2026-06-19 00:25:24,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:25:24,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:25:24,401.401 INFO    ] No existing commands found in stream
[2026-06-19 00:25:29,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:25:29,416.416 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 00:25:31,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:25:31,124.124 INFO    ] Checking for system updates...
[2026-06-19 00:25:31,159.159 INFO    ] 200
[2026-06-19 00:25:31,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:31,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:25:31,222.222 INFO    ] No update needed
[2026-06-19 00:25:31,225.225 INFO    ] Checking for camera pi updates...
[2026-06-19 00:25:31,258.258 INFO    ] 200
[2026-06-19 00:25:31,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:31,308.308 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:25:31,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:25:31,355.355 INFO    ] No camera update needed
[2026-06-19 00:25:31,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:25:31,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:25:31,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:25:31,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:25:33,410.410 INFO    ] ================================================
[2026-06-19 00:25:33,425.425 INFO    ] Launching Daemon at Fri Jun 19 00:25:33 IST 2026
[2026-06-19 00:25:33,436.436 INFO    ] ================================================
[2026-06-19 00:25:34,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:25:34
[2026-06-19 00:25:34,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:25:34,892.892 INFO    ] Initializing speech engine...
[2026-06-19 00:25:34,902.902 INFO    ] 2026-06-19 00:25:34
[2026-06-19 00:25:35,176.176 INFO    ] 2026-06-19 00:25:35
[2026-06-19 00:25:35,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:25:35,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:25:35,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:25:35,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:25:35,665.665 INFO    ] time= 19/06/2026 00:25:35
[2026-06-19 00:25:35,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:25:35,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:25:35,810.810 INFO    ] No existing commands found in stream
[2026-06-19 00:25:40,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:25:40,826.826 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 00:25:41,953.953 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:25:41,955.955 INFO    ] Checking for system updates...
[2026-06-19 00:25:41,991.991 INFO    ] 200
[2026-06-19 00:25:41,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:42,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:25:42,049.049 INFO    ] No update needed
[2026-06-19 00:25:42,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 00:25:42,086.086 INFO    ] 200
[2026-06-19 00:25:42,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:42,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:25:42,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:25:42,178.178 INFO    ] No camera update needed
[2026-06-19 00:25:42,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:25:42,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:25:42,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:25:42,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:25:44,233.233 INFO    ] ================================================
[2026-06-19 00:25:44,247.247 INFO    ] Launching Daemon at Fri Jun 19 00:25:44 IST 2026
[2026-06-19 00:25:44,258.258 INFO    ] ================================================
[2026-06-19 00:25:44,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:25:44
[2026-06-19 00:25:45,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:25:45,851.851 INFO    ] Initializing speech engine...
[2026-06-19 00:25:45,860.860 INFO    ] 2026-06-19 00:25:45
[2026-06-19 00:25:46,146.146 INFO    ] 2026-06-19 00:25:46
[2026-06-19 00:25:46,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:25:46,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:25:46,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:25:46,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:25:46,620.620 INFO    ] time= 19/06/2026 00:25:46
[2026-06-19 00:25:46,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:25:46,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:25:46,762.762 INFO    ] No existing commands found in stream
[2026-06-19 00:25:51,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:25:51,778.778 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 00:25:52,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:25:52,802.802 INFO    ] Checking for system updates...
[2026-06-19 00:25:52,839.839 INFO    ] 200
[2026-06-19 00:25:52,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:52,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:25:52,896.896 INFO    ] No update needed
[2026-06-19 00:25:52,899.899 INFO    ] Checking for camera pi updates...
[2026-06-19 00:25:52,932.932 INFO    ] 200
[2026-06-19 00:25:52,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:25:52,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:25:53,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:25:53,029.029 INFO    ] No camera update needed
[2026-06-19 00:25:53,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:25:53,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:25:53,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:25:53,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:25:55,085.085 INFO    ] ================================================
[2026-06-19 00:25:55,099.099 INFO    ] Launching Daemon at Fri Jun 19 00:25:55 IST 2026
[2026-06-19 00:25:55,110.110 INFO    ] ================================================
[2026-06-19 00:25:55,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:25:55
[2026-06-19 00:25:56,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:25:56,562.562 INFO    ] Initializing speech engine...
[2026-06-19 00:25:56,573.573 INFO    ] 2026-06-19 00:25:56
[2026-06-19 00:25:56,826.826 INFO    ] 2026-06-19 00:25:56
[2026-06-19 00:25:56,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:25:57,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:25:57,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:25:57,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:25:57,307.307 INFO    ] time= 19/06/2026 00:25:57
[2026-06-19 00:25:57,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:25:57,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:25:57,449.449 INFO    ] No existing commands found in stream
[2026-06-19 00:26:02,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:26:02,460.460 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 00:26:03,175.175 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:26:03,178.178 INFO    ] Checking for system updates...
[2026-06-19 00:26:03,218.218 INFO    ] 200
[2026-06-19 00:26:03,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:03,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:26:03,276.276 INFO    ] No update needed
[2026-06-19 00:26:03,278.278 INFO    ] Checking for camera pi updates...
[2026-06-19 00:26:03,315.315 INFO    ] 200
[2026-06-19 00:26:03,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:03,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:26:03,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:26:03,396.396 INFO    ] No camera update needed
[2026-06-19 00:26:03,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:26:03,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:26:03,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:26:03,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:26:05,452.452 INFO    ] ================================================
[2026-06-19 00:26:05,468.468 INFO    ] Launching Daemon at Fri Jun 19 00:26:05 IST 2026
[2026-06-19 00:26:05,478.478 INFO    ] ================================================
[2026-06-19 00:26:06,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:26:06
[2026-06-19 00:26:06,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:26:07,119.119 INFO    ] Initializing speech engine...
[2026-06-19 00:26:07,133.133 INFO    ] 2026-06-19 00:26:07
[2026-06-19 00:26:07,405.405 INFO    ] 2026-06-19 00:26:07
[2026-06-19 00:26:07,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:26:07,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:26:07,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:26:07,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:26:07,911.911 INFO    ] time= 19/06/2026 00:26:07
[2026-06-19 00:26:07,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:26:07,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:26:08,092.092 INFO    ] No existing commands found in stream
[2026-06-19 00:26:13,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:26:13,122.122 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 00:26:16,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:26:16,668.668 INFO    ] Checking for system updates...
[2026-06-19 00:26:16,706.706 INFO    ] 200
[2026-06-19 00:26:16,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:16,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:26:16,765.765 INFO    ] No update needed
[2026-06-19 00:26:16,767.767 INFO    ] Checking for camera pi updates...
[2026-06-19 00:26:16,801.801 INFO    ] 200
[2026-06-19 00:26:16,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:16,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:26:16,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:26:16,898.898 INFO    ] No camera update needed
[2026-06-19 00:26:16,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:26:16,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:26:16,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:26:16,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:26:18,952.952 INFO    ] ================================================
[2026-06-19 00:26:18,968.968 INFO    ] Launching Daemon at Fri Jun 19 00:26:18 IST 2026
[2026-06-19 00:26:18,978.978 INFO    ] ================================================
[2026-06-19 00:26:19,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:26:19
[2026-06-19 00:26:20,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:26:20,434.434 INFO    ] Initializing speech engine...
[2026-06-19 00:26:20,439.439 INFO    ] 2026-06-19 00:26:20
[2026-06-19 00:26:20,699.699 INFO    ] 2026-06-19 00:26:20
[2026-06-19 00:26:20,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:26:20,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:26:20,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:26:21,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:26:21,138.138 INFO    ] time= 19/06/2026 00:26:21
[2026-06-19 00:26:21,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:26:21,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:26:21,301.301 INFO    ] No existing commands found in stream
[2026-06-19 00:26:26,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:26:26,317.317 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 00:26:29,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:26:29,709.709 INFO    ] Checking for system updates...
[2026-06-19 00:26:29,745.745 INFO    ] 200
[2026-06-19 00:26:29,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:29,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:26:29,802.802 INFO    ] No update needed
[2026-06-19 00:26:29,805.805 INFO    ] Checking for camera pi updates...
[2026-06-19 00:26:29,842.842 INFO    ] 200
[2026-06-19 00:26:29,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:29,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:26:29,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:26:29,938.938 INFO    ] No camera update needed
[2026-06-19 00:26:29,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:26:29,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:26:29,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:26:29,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:26:32,995.995 INFO    ] ================================================
[2026-06-19 00:26:32,011.011 INFO    ] Launching Daemon at Fri Jun 19 00:26:32 IST 2026
[2026-06-19 00:26:32,023.023 INFO    ] ================================================
[2026-06-19 00:26:32,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:26:32
[2026-06-19 00:26:33,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:26:33,481.481 INFO    ] Initializing speech engine...
[2026-06-19 00:26:33,487.487 INFO    ] 2026-06-19 00:26:33
[2026-06-19 00:26:33,780.780 INFO    ] 2026-06-19 00:26:33
[2026-06-19 00:26:33,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:26:34,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:26:34,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:26:34,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:26:34,158.158 INFO    ] time= 19/06/2026 00:26:34
[2026-06-19 00:26:34,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:26:34,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:26:34,255.255 INFO    ] No existing commands found in stream
[2026-06-19 00:26:39,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:26:39,289.289 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 00:26:43,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:26:43,381.381 INFO    ] Checking for system updates...
[2026-06-19 00:26:43,420.420 INFO    ] 200
[2026-06-19 00:26:43,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:43,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:26:43,483.483 INFO    ] No update needed
[2026-06-19 00:26:43,486.486 INFO    ] Checking for camera pi updates...
[2026-06-19 00:26:43,519.519 INFO    ] 200
[2026-06-19 00:26:43,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:43,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:26:43,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:26:43,621.621 INFO    ] No camera update needed
[2026-06-19 00:26:43,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:26:43,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:26:43,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:26:43,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:26:45,677.677 INFO    ] ================================================
[2026-06-19 00:26:45,691.691 INFO    ] Launching Daemon at Fri Jun 19 00:26:45 IST 2026
[2026-06-19 00:26:45,702.702 INFO    ] ================================================
[2026-06-19 00:26:46,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:26:46
[2026-06-19 00:26:47,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:26:47,352.352 INFO    ] Initializing speech engine...
[2026-06-19 00:26:47,365.365 INFO    ] 2026-06-19 00:26:47
[2026-06-19 00:26:47,648.648 INFO    ] 2026-06-19 00:26:47
[2026-06-19 00:26:47,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:26:47,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:26:47,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:26:48,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:26:48,181.181 INFO    ] time= 19/06/2026 00:26:48
[2026-06-19 00:26:48,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:26:48,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:26:48,335.335 INFO    ] No existing commands found in stream
[2026-06-19 00:26:53,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:26:53,367.367 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 00:26:53,760.760 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:26:53,763.763 INFO    ] Checking for system updates...
[2026-06-19 00:26:53,799.799 INFO    ] 200
[2026-06-19 00:26:53,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:53,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:26:53,863.863 INFO    ] No update needed
[2026-06-19 00:26:53,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 00:26:53,899.899 INFO    ] 200
[2026-06-19 00:26:53,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:26:53,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:26:53,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:26:53,992.992 INFO    ] No camera update needed
[2026-06-19 00:26:53,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:26:53,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:26:54,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:26:54,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:26:56,049.049 INFO    ] ================================================
[2026-06-19 00:26:56,064.064 INFO    ] Launching Daemon at Fri Jun 19 00:26:56 IST 2026
[2026-06-19 00:26:56,075.075 INFO    ] ================================================
[2026-06-19 00:26:56,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:26:56
[2026-06-19 00:26:57,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:26:57,581.581 INFO    ] Initializing speech engine...
[2026-06-19 00:26:57,587.587 INFO    ] 2026-06-19 00:26:57
[2026-06-19 00:26:57,901.901 INFO    ] 2026-06-19 00:26:57
[2026-06-19 00:26:57,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:26:58,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:26:58,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:26:58,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:26:58,424.424 INFO    ] time= 19/06/2026 00:26:58
[2026-06-19 00:26:58,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:26:58,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:26:58,584.584 INFO    ] No existing commands found in stream
[2026-06-19 00:27:03,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:27:03,600.600 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 00:27:05,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:27:05,879.879 INFO    ] Checking for system updates...
[2026-06-19 00:27:05,916.916 INFO    ] 200
[2026-06-19 00:27:05,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:05,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:27:05,984.984 INFO    ] No update needed
[2026-06-19 00:27:05,987.987 INFO    ] Checking for camera pi updates...
[2026-06-19 00:27:06,027.027 INFO    ] 200
[2026-06-19 00:27:06,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:06,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:27:06,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:27:06,130.130 INFO    ] No camera update needed
[2026-06-19 00:27:06,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:27:06,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:27:06,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:27:06,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:27:08,186.186 INFO    ] ================================================
[2026-06-19 00:27:08,201.201 INFO    ] Launching Daemon at Fri Jun 19 00:27:08 IST 2026
[2026-06-19 00:27:08,212.212 INFO    ] ================================================
[2026-06-19 00:27:08,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:27:08
[2026-06-19 00:27:09,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:27:09,625.625 INFO    ] Initializing speech engine...
[2026-06-19 00:27:09,631.631 INFO    ] 2026-06-19 00:27:09
[2026-06-19 00:27:09,926.926 INFO    ] 2026-06-19 00:27:09
[2026-06-19 00:27:09,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:27:10,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:27:10,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:27:10,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:27:10,284.284 INFO    ] time= 19/06/2026 00:27:10
[2026-06-19 00:27:10,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:27:10,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:27:10,365.365 INFO    ] No existing commands found in stream
[2026-06-19 00:27:15,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:27:15,379.379 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 00:27:17,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:27:17,281.281 INFO    ] Checking for system updates...
[2026-06-19 00:27:17,323.323 INFO    ] 200
[2026-06-19 00:27:17,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:17,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:27:17,383.383 INFO    ] No update needed
[2026-06-19 00:27:17,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 00:27:17,422.422 INFO    ] 200
[2026-06-19 00:27:17,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:17,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:27:17,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:27:17,523.523 INFO    ] No camera update needed
[2026-06-19 00:27:17,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:27:17,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:27:17,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:27:17,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:27:19,582.582 INFO    ] ================================================
[2026-06-19 00:27:19,597.597 INFO    ] Launching Daemon at Fri Jun 19 00:27:19 IST 2026
[2026-06-19 00:27:19,608.608 INFO    ] ================================================
[2026-06-19 00:27:20,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:27:20
[2026-06-19 00:27:20,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:27:21,034.034 INFO    ] Initializing speech engine...
[2026-06-19 00:27:21,043.043 INFO    ] 2026-06-19 00:27:21
[2026-06-19 00:27:21,340.340 INFO    ] 2026-06-19 00:27:21
[2026-06-19 00:27:21,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:27:21,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:27:21,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:27:21,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:27:21,726.726 INFO    ] time= 19/06/2026 00:27:21
[2026-06-19 00:27:21,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:27:21,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:27:21,854.854 INFO    ] No existing commands found in stream
[2026-06-19 00:27:26,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:27:26,869.869 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 00:27:30,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:27:30,163.163 INFO    ] Checking for system updates...
[2026-06-19 00:27:30,203.203 INFO    ] 200
[2026-06-19 00:27:30,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:30,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:27:30,261.261 INFO    ] No update needed
[2026-06-19 00:27:30,263.263 INFO    ] Checking for camera pi updates...
[2026-06-19 00:27:30,297.297 INFO    ] 200
[2026-06-19 00:27:30,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:30,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:27:30,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:27:30,391.391 INFO    ] No camera update needed
[2026-06-19 00:27:30,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:27:30,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:27:30,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:27:30,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:27:32,449.449 INFO    ] ================================================
[2026-06-19 00:27:32,466.466 INFO    ] Launching Daemon at Fri Jun 19 00:27:32 IST 2026
[2026-06-19 00:27:32,479.479 INFO    ] ================================================
[2026-06-19 00:27:33,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:27:33
[2026-06-19 00:27:33,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:27:33,963.963 INFO    ] Initializing speech engine...
[2026-06-19 00:27:33,971.971 INFO    ] 2026-06-19 00:27:33
[2026-06-19 00:27:34,269.269 INFO    ] 2026-06-19 00:27:34
[2026-06-19 00:27:34,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:27:34,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:27:34,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:27:34,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:27:34,656.656 INFO    ] time= 19/06/2026 00:27:34
[2026-06-19 00:27:34,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:27:34,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:27:34,782.782 INFO    ] No existing commands found in stream
[2026-06-19 00:27:39,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:27:39,797.797 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 00:27:43,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:27:43,706.706 INFO    ] Checking for system updates...
[2026-06-19 00:27:43,746.746 INFO    ] 200
[2026-06-19 00:27:43,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:43,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:27:43,804.804 INFO    ] No update needed
[2026-06-19 00:27:43,806.806 INFO    ] Checking for camera pi updates...
[2026-06-19 00:27:43,840.840 INFO    ] 200
[2026-06-19 00:27:43,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:43,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:27:43,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:27:43,941.941 INFO    ] No camera update needed
[2026-06-19 00:27:43,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:27:43,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:27:43,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:27:43,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:27:46,998.998 INFO    ] ================================================
[2026-06-19 00:27:46,015.015 INFO    ] Launching Daemon at Fri Jun 19 00:27:46 IST 2026
[2026-06-19 00:27:46,026.026 INFO    ] ================================================
[2026-06-19 00:27:46,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:27:46
[2026-06-19 00:27:47,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:27:47,693.693 INFO    ] Initializing speech engine...
[2026-06-19 00:27:47,705.705 INFO    ] 2026-06-19 00:27:47
[2026-06-19 00:27:47,996.996 INFO    ] 2026-06-19 00:27:47
[2026-06-19 00:27:48,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:27:48,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:27:48,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:27:48,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:27:48,532.532 INFO    ] time= 19/06/2026 00:27:48
[2026-06-19 00:27:48,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:27:48,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:27:48,658.658 INFO    ] No existing commands found in stream
[2026-06-19 00:27:53,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:27:53,693.693 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 00:27:56,311.311 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:27:56,313.313 INFO    ] Checking for system updates...
[2026-06-19 00:27:56,349.349 INFO    ] 200
[2026-06-19 00:27:56,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:56,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:27:56,407.407 INFO    ] No update needed
[2026-06-19 00:27:56,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 00:27:56,443.443 INFO    ] 200
[2026-06-19 00:27:56,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:27:56,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:27:56,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:27:56,537.537 INFO    ] No camera update needed
[2026-06-19 00:27:56,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:27:56,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:27:56,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:27:56,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:27:58,593.593 INFO    ] ================================================
[2026-06-19 00:27:58,609.609 INFO    ] Launching Daemon at Fri Jun 19 00:27:58 IST 2026
[2026-06-19 00:27:58,621.621 INFO    ] ================================================
[2026-06-19 00:27:59,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:27:59
[2026-06-19 00:27:59,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:28:00,086.086 INFO    ] Initializing speech engine...
[2026-06-19 00:28:00,097.097 INFO    ] 2026-06-19 00:28:00
[2026-06-19 00:28:00,409.409 INFO    ] 2026-06-19 00:28:00
[2026-06-19 00:28:00,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:28:00,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:28:00,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:28:00,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:28:00,848.848 INFO    ] time= 19/06/2026 00:28:00
[2026-06-19 00:28:00,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:28:00,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:28:00,995.995 INFO    ] No existing commands found in stream
[2026-06-19 00:28:06,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:28:06,036.036 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 00:28:09,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:28:09,364.364 INFO    ] Checking for system updates...
[2026-06-19 00:28:09,401.401 INFO    ] 200
[2026-06-19 00:28:09,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:09,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:28:09,471.471 INFO    ] No update needed
[2026-06-19 00:28:09,474.474 INFO    ] Checking for camera pi updates...
[2026-06-19 00:28:09,507.507 INFO    ] 200
[2026-06-19 00:28:09,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:09,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:28:09,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:28:09,606.606 INFO    ] No camera update needed
[2026-06-19 00:28:09,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:28:09,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:28:09,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:28:09,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:28:11,660.660 INFO    ] ================================================
[2026-06-19 00:28:11,676.676 INFO    ] Launching Daemon at Fri Jun 19 00:28:11 IST 2026
[2026-06-19 00:28:11,688.688 INFO    ] ================================================
[2026-06-19 00:28:12,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:28:12
[2026-06-19 00:28:12,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:28:13,161.161 INFO    ] Initializing speech engine...
[2026-06-19 00:28:13,169.169 INFO    ] 2026-06-19 00:28:13
[2026-06-19 00:28:13,442.442 INFO    ] 2026-06-19 00:28:13
[2026-06-19 00:28:13,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:28:13,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:28:13,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:28:13,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:28:13,886.886 INFO    ] time= 19/06/2026 00:28:13
[2026-06-19 00:28:13,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:28:13,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:28:14,030.030 INFO    ] No existing commands found in stream
[2026-06-19 00:28:19,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:28:19,046.046 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 00:28:21,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:28:21,678.678 INFO    ] Checking for system updates...
[2026-06-19 00:28:21,714.714 INFO    ] 200
[2026-06-19 00:28:21,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:21,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:28:21,772.772 INFO    ] No update needed
[2026-06-19 00:28:21,774.774 INFO    ] Checking for camera pi updates...
[2026-06-19 00:28:21,808.808 INFO    ] 200
[2026-06-19 00:28:21,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:21,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:28:21,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:28:21,909.909 INFO    ] No camera update needed
[2026-06-19 00:28:21,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:28:21,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:28:21,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:28:21,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:28:23,964.964 INFO    ] ================================================
[2026-06-19 00:28:23,981.981 INFO    ] Launching Daemon at Fri Jun 19 00:28:23 IST 2026
[2026-06-19 00:28:23,992.992 INFO    ] ================================================
[2026-06-19 00:28:24,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:28:24
[2026-06-19 00:28:25,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:28:25,454.454 INFO    ] Initializing speech engine...
[2026-06-19 00:28:25,460.460 INFO    ] 2026-06-19 00:28:25
[2026-06-19 00:28:25,721.721 INFO    ] 2026-06-19 00:28:25
[2026-06-19 00:28:25,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:28:25,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:28:26,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:28:26,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:28:26,192.192 INFO    ] time= 19/06/2026 00:28:26
[2026-06-19 00:28:26,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:28:26,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:28:26,333.333 INFO    ] No existing commands found in stream
[2026-06-19 00:28:31,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:28:31,348.348 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 00:28:32,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:28:32,295.295 INFO    ] Checking for system updates...
[2026-06-19 00:28:32,338.338 INFO    ] 200
[2026-06-19 00:28:32,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:32,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:28:32,403.403 INFO    ] No update needed
[2026-06-19 00:28:32,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 00:28:32,444.444 INFO    ] 200
[2026-06-19 00:28:32,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:32,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:28:32,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:28:32,532.532 INFO    ] No camera update needed
[2026-06-19 00:28:32,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:28:32,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:28:32,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:28:32,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:28:34,594.594 INFO    ] ================================================
[2026-06-19 00:28:34,611.611 INFO    ] Launching Daemon at Fri Jun 19 00:28:34 IST 2026
[2026-06-19 00:28:34,623.623 INFO    ] ================================================
[2026-06-19 00:28:35,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:28:35
[2026-06-19 00:28:35,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:28:36,160.160 INFO    ] Initializing speech engine...
[2026-06-19 00:28:36,169.169 INFO    ] 2026-06-19 00:28:36
[2026-06-19 00:28:36,414.414 INFO    ] 2026-06-19 00:28:36
[2026-06-19 00:28:36,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:28:36,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:28:36,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:28:36,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:28:36,782.782 INFO    ] time= 19/06/2026 00:28:36
[2026-06-19 00:28:36,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:28:36,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:28:36,947.947 INFO    ] No existing commands found in stream
[2026-06-19 00:28:41,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:28:41,986.986 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 00:28:44,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:28:44,175.175 INFO    ] Checking for system updates...
[2026-06-19 00:28:44,215.215 INFO    ] 200
[2026-06-19 00:28:44,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:44,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:28:44,273.273 INFO    ] No update needed
[2026-06-19 00:28:44,275.275 INFO    ] Checking for camera pi updates...
[2026-06-19 00:28:44,308.308 INFO    ] 200
[2026-06-19 00:28:44,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:44,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:28:44,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:28:44,505.505 INFO    ] No camera update needed
[2026-06-19 00:28:44,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:28:44,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:28:44,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:28:44,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:28:46,560.560 INFO    ] ================================================
[2026-06-19 00:28:46,575.575 INFO    ] Launching Daemon at Fri Jun 19 00:28:46 IST 2026
[2026-06-19 00:28:46,586.586 INFO    ] ================================================
[2026-06-19 00:28:47,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:28:47
[2026-06-19 00:28:47,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:28:48,237.237 INFO    ] Initializing speech engine...
[2026-06-19 00:28:48,244.244 INFO    ] 2026-06-19 00:28:48
[2026-06-19 00:28:48,515.515 INFO    ] 2026-06-19 00:28:48
[2026-06-19 00:28:48,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:28:48,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:28:48,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:28:48,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:28:48,906.906 INFO    ] time= 19/06/2026 00:28:48
[2026-06-19 00:28:48,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:28:48,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:28:49,033.033 INFO    ] No existing commands found in stream
[2026-06-19 00:28:54,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:28:54,048.048 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 00:28:57,140.140 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:28:57,142.142 INFO    ] Checking for system updates...
[2026-06-19 00:28:57,185.185 INFO    ] 200
[2026-06-19 00:28:57,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:57,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:28:57,245.245 INFO    ] No update needed
[2026-06-19 00:28:57,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 00:28:57,287.287 INFO    ] 200
[2026-06-19 00:28:57,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:28:57,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:28:57,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:28:57,394.394 INFO    ] No camera update needed
[2026-06-19 00:28:57,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:28:57,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:28:57,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:28:57,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:28:59,453.453 INFO    ] ================================================
[2026-06-19 00:28:59,468.468 INFO    ] Launching Daemon at Fri Jun 19 00:28:59 IST 2026
[2026-06-19 00:28:59,478.478 INFO    ] ================================================
[2026-06-19 00:29:00,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:29:00
[2026-06-19 00:29:00,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:29:01,358.358 INFO    ] Initializing speech engine...
[2026-06-19 00:29:01,362.362 INFO    ] 2026-06-19 00:29:01
[2026-06-19 00:29:01,763.763 INFO    ] 2026-06-19 00:29:01
[2026-06-19 00:29:01,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:29:02,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:29:02,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:29:02,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:29:02,232.232 INFO    ] time= 19/06/2026 00:29:02
[2026-06-19 00:29:02,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:29:02,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:29:02,383.383 INFO    ] No existing commands found in stream
[2026-06-19 00:29:07,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:29:07,414.414 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 00:29:08,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:29:08,338.338 INFO    ] Checking for system updates...
[2026-06-19 00:29:08,373.373 INFO    ] 200
[2026-06-19 00:29:08,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:08,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:29:08,431.431 INFO    ] No update needed
[2026-06-19 00:29:08,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 00:29:08,468.468 INFO    ] 200
[2026-06-19 00:29:08,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:08,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:29:08,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:29:08,557.557 INFO    ] No camera update needed
[2026-06-19 00:29:08,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:29:08,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:29:08,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:29:08,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:29:10,613.613 INFO    ] ================================================
[2026-06-19 00:29:10,628.628 INFO    ] Launching Daemon at Fri Jun 19 00:29:10 IST 2026
[2026-06-19 00:29:10,639.639 INFO    ] ================================================
[2026-06-19 00:29:11,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:29:11
[2026-06-19 00:29:11,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:29:12,094.094 INFO    ] Initializing speech engine...
[2026-06-19 00:29:12,105.105 INFO    ] 2026-06-19 00:29:12
[2026-06-19 00:29:12,360.360 INFO    ] 2026-06-19 00:29:12
[2026-06-19 00:29:12,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:29:12,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:29:12,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:29:12,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:29:12,854.854 INFO    ] time= 19/06/2026 00:29:12
[2026-06-19 00:29:12,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:29:12,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:29:13,032.032 INFO    ] No existing commands found in stream
[2026-06-19 00:29:18,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:29:18,071.071 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 00:29:19,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:29:19,383.383 INFO    ] Checking for system updates...
[2026-06-19 00:29:19,419.419 INFO    ] 200
[2026-06-19 00:29:19,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:19,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:29:19,476.476 INFO    ] No update needed
[2026-06-19 00:29:19,478.478 INFO    ] Checking for camera pi updates...
[2026-06-19 00:29:19,512.512 INFO    ] 200
[2026-06-19 00:29:19,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:19,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:29:19,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:29:19,601.601 INFO    ] No camera update needed
[2026-06-19 00:29:19,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:29:19,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:29:19,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:29:19,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:29:21,657.657 INFO    ] ================================================
[2026-06-19 00:29:21,672.672 INFO    ] Launching Daemon at Fri Jun 19 00:29:21 IST 2026
[2026-06-19 00:29:21,683.683 INFO    ] ================================================
[2026-06-19 00:29:22,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:29:22
[2026-06-19 00:29:22,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:29:23,148.148 INFO    ] Initializing speech engine...
[2026-06-19 00:29:23,155.155 INFO    ] 2026-06-19 00:29:23
[2026-06-19 00:29:23,400.400 INFO    ] 2026-06-19 00:29:23
[2026-06-19 00:29:23,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:29:23,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:29:23,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:29:23,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:29:23,773.773 INFO    ] time= 19/06/2026 00:29:23
[2026-06-19 00:29:23,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:29:23,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:29:23,935.935 INFO    ] No existing commands found in stream
[2026-06-19 00:29:28,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:29:28,960.960 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 00:29:29,364.364 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:29:29,366.366 INFO    ] Checking for system updates...
[2026-06-19 00:29:29,402.402 INFO    ] 200
[2026-06-19 00:29:29,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:29,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:29:29,467.467 INFO    ] No update needed
[2026-06-19 00:29:29,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 00:29:29,502.502 INFO    ] 200
[2026-06-19 00:29:29,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:29,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:29:29,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:29:29,597.597 INFO    ] No camera update needed
[2026-06-19 00:29:29,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:29:29,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:29:29,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:29:29,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:29:31,653.653 INFO    ] ================================================
[2026-06-19 00:29:31,670.670 INFO    ] Launching Daemon at Fri Jun 19 00:29:31 IST 2026
[2026-06-19 00:29:31,683.683 INFO    ] ================================================
[2026-06-19 00:29:32,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:29:32
[2026-06-19 00:29:33,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:29:33,393.393 INFO    ] Initializing speech engine...
[2026-06-19 00:29:33,406.406 INFO    ] 2026-06-19 00:29:33
[2026-06-19 00:29:33,698.698 INFO    ] 2026-06-19 00:29:33
[2026-06-19 00:29:33,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:29:34,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:29:34,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:29:34,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:29:34,242.242 INFO    ] time= 19/06/2026 00:29:34
[2026-06-19 00:29:34,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:29:34,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:29:34,397.397 INFO    ] No existing commands found in stream
[2026-06-19 00:29:39,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:29:39,416.416 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 00:29:42,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:29:42,473.473 INFO    ] Checking for system updates...
[2026-06-19 00:29:42,510.510 INFO    ] 200
[2026-06-19 00:29:42,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:42,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:29:42,569.569 INFO    ] No update needed
[2026-06-19 00:29:42,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 00:29:42,607.607 INFO    ] 200
[2026-06-19 00:29:42,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:42,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:29:42,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:29:42,712.712 INFO    ] No camera update needed
[2026-06-19 00:29:42,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:29:42,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:29:42,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:29:42,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:29:44,767.767 INFO    ] ================================================
[2026-06-19 00:29:44,782.782 INFO    ] Launching Daemon at Fri Jun 19 00:29:44 IST 2026
[2026-06-19 00:29:44,793.793 INFO    ] ================================================
[2026-06-19 00:29:45,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:29:45
[2026-06-19 00:29:46,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:29:46,425.425 INFO    ] Initializing speech engine...
[2026-06-19 00:29:46,433.433 INFO    ] 2026-06-19 00:29:46
[2026-06-19 00:29:46,700.700 INFO    ] 2026-06-19 00:29:46
[2026-06-19 00:29:46,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:29:46,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:29:46,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:29:47,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:29:47,160.160 INFO    ] time= 19/06/2026 00:29:47
[2026-06-19 00:29:47,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:29:47,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:29:47,305.305 INFO    ] No existing commands found in stream
[2026-06-19 00:29:52,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:29:52,320.320 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 00:29:54,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:29:54,922.922 INFO    ] Checking for system updates...
[2026-06-19 00:29:54,962.962 INFO    ] 200
[2026-06-19 00:29:54,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:55,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:29:55,020.020 INFO    ] No update needed
[2026-06-19 00:29:55,022.022 INFO    ] Checking for camera pi updates...
[2026-06-19 00:29:55,059.059 INFO    ] 200
[2026-06-19 00:29:55,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:29:55,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:29:55,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:29:55,146.146 INFO    ] No camera update needed
[2026-06-19 00:29:55,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:29:55,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:29:55,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:29:55,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:29:57,202.202 INFO    ] ================================================
[2026-06-19 00:29:57,218.218 INFO    ] Launching Daemon at Fri Jun 19 00:29:57 IST 2026
[2026-06-19 00:29:57,228.228 INFO    ] ================================================
[2026-06-19 00:29:57,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:29:57
[2026-06-19 00:29:58,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:29:58,638.638 INFO    ] Initializing speech engine...
[2026-06-19 00:29:58,644.644 INFO    ] 2026-06-19 00:29:58
[2026-06-19 00:29:58,936.936 INFO    ] 2026-06-19 00:29:58
[2026-06-19 00:29:58,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:29:59,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:29:59,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:29:59,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:29:59,317.317 INFO    ] time= 19/06/2026 00:29:59
[2026-06-19 00:29:59,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:29:59,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:29:59,441.441 INFO    ] No existing commands found in stream
[2026-06-19 00:30:04,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:30:04,457.457 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-19 00:30:08,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:30:08,945.945 INFO    ] Checking for system updates...
[2026-06-19 00:30:08,986.986 INFO    ] 200
[2026-06-19 00:30:08,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:09,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:30:09,046.046 INFO    ] No update needed
[2026-06-19 00:30:09,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 00:30:09,083.083 INFO    ] 200
[2026-06-19 00:30:09,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:09,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:30:09,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:30:09,176.176 INFO    ] No camera update needed
[2026-06-19 00:30:09,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:30:09,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:30:09,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:30:09,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:30:11,236.236 INFO    ] ================================================
[2026-06-19 00:30:11,251.251 INFO    ] Launching Daemon at Fri Jun 19 00:30:11 IST 2026
[2026-06-19 00:30:11,262.262 INFO    ] ================================================
[2026-06-19 00:30:11,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:30:11
[2026-06-19 00:30:12,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:30:12,681.681 INFO    ] Initializing speech engine...
[2026-06-19 00:30:12,704.704 INFO    ] 2026-06-19 00:30:12
[2026-06-19 00:30:12,959.959 INFO    ] 2026-06-19 00:30:12
[2026-06-19 00:30:12,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:30:13,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:30:13,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:30:13,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:30:13,436.436 INFO    ] time= 19/06/2026 00:30:13
[2026-06-19 00:30:13,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:30:13,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:30:13,594.594 INFO    ] No existing commands found in stream
[2026-06-19 00:30:18,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:30:18,609.609 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 00:30:20,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:30:20,209.209 INFO    ] Checking for system updates...
[2026-06-19 00:30:20,248.248 INFO    ] 200
[2026-06-19 00:30:20,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:20,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:30:20,306.306 INFO    ] No update needed
[2026-06-19 00:30:20,312.312 INFO    ] Checking for camera pi updates...
[2026-06-19 00:30:20,346.346 INFO    ] 200
[2026-06-19 00:30:20,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:20,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:30:20,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:30:20,439.439 INFO    ] No camera update needed
[2026-06-19 00:30:20,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:30:20,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:30:20,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:30:20,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:30:22,496.496 INFO    ] ================================================
[2026-06-19 00:30:22,511.511 INFO    ] Launching Daemon at Fri Jun 19 00:30:22 IST 2026
[2026-06-19 00:30:22,522.522 INFO    ] ================================================
[2026-06-19 00:30:23,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:30:23
[2026-06-19 00:30:23,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:30:23,986.986 INFO    ] Initializing speech engine...
[2026-06-19 00:30:23,993.993 INFO    ] 2026-06-19 00:30:23
[2026-06-19 00:30:24,253.253 INFO    ] 2026-06-19 00:30:24
[2026-06-19 00:30:24,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:30:24,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:30:24,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:30:24,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:30:24,694.694 INFO    ] time= 19/06/2026 00:30:24
[2026-06-19 00:30:24,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:30:24,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:30:24,861.861 INFO    ] No existing commands found in stream
[2026-06-19 00:30:29,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:30:29,876.876 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 00:30:31,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:30:31,827.827 INFO    ] Checking for system updates...
[2026-06-19 00:30:31,871.871 INFO    ] 200
[2026-06-19 00:30:31,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:31,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:30:31,934.934 INFO    ] No update needed
[2026-06-19 00:30:31,937.937 INFO    ] Checking for camera pi updates...
[2026-06-19 00:30:31,980.980 INFO    ] 200
[2026-06-19 00:30:31,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:32,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:30:32,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:30:32,068.068 INFO    ] No camera update needed
[2026-06-19 00:30:32,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:30:32,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:30:32,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:30:32,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:30:34,127.127 INFO    ] ================================================
[2026-06-19 00:30:34,142.142 INFO    ] Launching Daemon at Fri Jun 19 00:30:34 IST 2026
[2026-06-19 00:30:34,153.153 INFO    ] ================================================
[2026-06-19 00:30:34,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:30:34
[2026-06-19 00:30:35,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:30:35,787.787 INFO    ] Initializing speech engine...
[2026-06-19 00:30:35,798.798 INFO    ] 2026-06-19 00:30:35
[2026-06-19 00:30:36,088.088 INFO    ] 2026-06-19 00:30:36
[2026-06-19 00:30:36,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:30:36,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:30:36,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:30:36,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:30:36,467.467 INFO    ] time= 19/06/2026 00:30:36
[2026-06-19 00:30:36,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:30:36,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:30:36,558.558 INFO    ] No existing commands found in stream
[2026-06-19 00:30:41,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:30:41,576.576 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 00:30:45,173.173 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:30:45,175.175 INFO    ] Checking for system updates...
[2026-06-19 00:30:45,211.211 INFO    ] 200
[2026-06-19 00:30:45,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:45,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:30:45,269.269 INFO    ] No update needed
[2026-06-19 00:30:45,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 00:30:45,306.306 INFO    ] 200
[2026-06-19 00:30:45,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:45,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:30:45,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:30:45,480.480 INFO    ] No camera update needed
[2026-06-19 00:30:45,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:30:45,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:30:45,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:30:45,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:30:47,537.537 INFO    ] ================================================
[2026-06-19 00:30:47,552.552 INFO    ] Launching Daemon at Fri Jun 19 00:30:47 IST 2026
[2026-06-19 00:30:47,563.563 INFO    ] ================================================
[2026-06-19 00:30:48,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:30:48
[2026-06-19 00:30:48,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:30:49,108.108 INFO    ] Initializing speech engine...
[2026-06-19 00:30:49,122.122 INFO    ] 2026-06-19 00:30:49
[2026-06-19 00:30:49,389.389 INFO    ] 2026-06-19 00:30:49
[2026-06-19 00:30:49,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:30:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:30:49,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:30:49,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:30:49,764.764 INFO    ] time= 19/06/2026 00:30:49
[2026-06-19 00:30:49,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:30:49,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:30:49,943.943 INFO    ] No existing commands found in stream
[2026-06-19 00:30:54,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:30:54,977.977 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 00:30:59,316.316 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:30:59,318.318 INFO    ] Checking for system updates...
[2026-06-19 00:30:59,355.355 INFO    ] 200
[2026-06-19 00:30:59,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:59,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:30:59,420.420 INFO    ] No update needed
[2026-06-19 00:30:59,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 00:30:59,457.457 INFO    ] 200
[2026-06-19 00:30:59,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:30:59,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:30:59,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:30:59,550.550 INFO    ] No camera update needed
[2026-06-19 00:30:59,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:30:59,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:30:59,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:30:59,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:31:01,610.610 INFO    ] ================================================
[2026-06-19 00:31:01,625.625 INFO    ] Launching Daemon at Fri Jun 19 00:31:01 IST 2026
[2026-06-19 00:31:01,636.636 INFO    ] ================================================
[2026-06-19 00:31:02,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:31:02
[2026-06-19 00:31:03,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:31:03,408.408 INFO    ] Initializing speech engine...
[2026-06-19 00:31:03,416.416 INFO    ] 2026-06-19 00:31:03
[2026-06-19 00:31:03,698.698 INFO    ] 2026-06-19 00:31:03
[2026-06-19 00:31:03,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:31:03,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:31:03,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:31:04,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:31:04,044.044 INFO    ] time= 19/06/2026 00:31:04
[2026-06-19 00:31:04,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:31:04,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:31:04,120.120 INFO    ] No existing commands found in stream
[2026-06-19 00:31:09,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:31:09,142.142 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 00:31:11,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:31:11,813.813 INFO    ] Checking for system updates...
[2026-06-19 00:31:11,851.851 INFO    ] 200
[2026-06-19 00:31:11,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:31:11,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:31:11,917.917 INFO    ] No update needed
[2026-06-19 00:31:11,920.920 INFO    ] Checking for camera pi updates...
[2026-06-19 00:31:11,955.955 INFO    ] 200
[2026-06-19 00:31:11,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:31:12,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:31:12,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:31:12,050.050 INFO    ] No camera update needed
[2026-06-19 00:31:12,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:31:12,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:31:12,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:31:12,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:31:14,108.108 INFO    ] ================================================
[2026-06-19 00:31:14,124.124 INFO    ] Launching Daemon at Fri Jun 19 00:31:14 IST 2026
[2026-06-19 00:31:14,134.134 INFO    ] ================================================
[2026-06-19 00:31:14,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:31:14
[2026-06-19 00:31:15,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:31:15,611.611 INFO    ] Initializing speech engine...
[2026-06-19 00:31:15,621.621 INFO    ] 2026-06-19 00:31:15
[2026-06-19 00:31:15,894.894 INFO    ] 2026-06-19 00:31:15
[2026-06-19 00:31:15,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:31:16,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:31:16,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:31:16,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:31:16,345.345 INFO    ] time= 19/06/2026 00:31:16
[2026-06-19 00:31:16,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:31:16,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:31:16,495.495 INFO    ] No existing commands found in stream
[2026-06-19 00:31:21,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:31:21,508.508 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 00:31:25,295.295 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:31:25,298.298 INFO    ] Checking for system updates...
[2026-06-19 00:31:25,333.333 INFO    ] 200
[2026-06-19 00:31:25,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:31:25,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:31:25,391.391 INFO    ] No update needed
[2026-06-19 00:31:25,394.394 INFO    ] Checking for camera pi updates...
[2026-06-19 00:31:25,427.427 INFO    ] 200
[2026-06-19 00:31:25,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:31:25,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:31:25,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:31:25,526.526 INFO    ] No camera update needed
[2026-06-19 00:31:25,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:31:25,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:31:25,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:31:25,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:31:27,588.588 INFO    ] ================================================
[2026-06-19 00:31:27,603.603 INFO    ] Launching Daemon at Fri Jun 19 00:31:27 IST 2026
[2026-06-19 00:31:27,613.613 INFO    ] ================================================
[2026-06-19 00:31:28,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:31:28
[2026-06-19 00:31:28,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:31:29,186.186 INFO    ] Initializing speech engine...
[2026-06-19 00:31:29,195.195 INFO    ] 2026-06-19 00:31:29
[2026-06-19 00:31:29,445.445 INFO    ] 2026-06-19 00:31:29
[2026-06-19 00:31:29,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:31:29,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:31:29,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:31:29,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:31:29,826.826 INFO    ] time= 19/06/2026 00:31:29
[2026-06-19 00:31:29,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:31:29,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:31:29,955.955 INFO    ] No existing commands found in stream
[2026-06-19 00:31:34,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:31:34,988.988 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 00:31:36,970.970 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:31:36,973.973 INFO    ] Checking for system updates...
[2026-06-19 00:31:37,009.009 INFO    ] 200
[2026-06-19 00:31:37,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:31:37,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:31:37,066.066 INFO    ] No update needed
[2026-06-19 00:31:37,068.068 INFO    ] Checking for camera pi updates...
[2026-06-19 00:31:37,102.102 INFO    ] 200
[2026-06-19 00:31:37,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:31:37,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:31:37,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:31:37,199.199 INFO    ] No camera update needed
[2026-06-19 00:31:37,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:31:37,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:31:37,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:31:37,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:31:39,256.256 INFO    ] ================================================
[2026-06-19 00:31:39,272.272 INFO    ] Launching Daemon at Fri Jun 19 00:31:39 IST 2026
[2026-06-19 00:31:39,282.282 INFO    ] ================================================
[2026-06-19 00:31:39,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:31:39
[2026-06-19 00:31:40,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:31:40,701.701 INFO    ] Initializing speech engine...
[2026-06-19 00:31:40,716.716 INFO    ] 2026-06-19 00:31:40
[2026-06-19 00:31:41,000.000 INFO    ] 2026-06-19 00:31:40
[2026-06-19 00:31:41,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:31:41,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:31:41,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:31:41,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:31:41,377.377 INFO    ] time= 19/06/2026 00:31:41
[2026-06-19 00:31:41,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:31:41,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:31:41,502.502 INFO    ] No existing commands found in stream
[2026-06-19 00:31:46,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:31:46,517.517 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 00:31:50,686.686 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:31:50,688.688 INFO    ] Checking for system updates...
[2026-06-19 00:31:50,725.725 INFO    ] 200
[2026-06-19 00:31:50,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:31:50,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:31:50,783.783 INFO    ] No update needed
[2026-06-19 00:31:50,786.786 INFO    ] Checking for camera pi updates...
[2026-06-19 00:31:50,823.823 INFO    ] 200
[2026-06-19 00:31:50,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:31:50,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:31:50,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:31:50,929.929 INFO    ] No camera update needed
[2026-06-19 00:31:50,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:31:50,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:31:50,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:31:50,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:31:52,985.985 INFO    ] ================================================
[2026-06-19 00:31:53,000.000 INFO    ] Launching Daemon at Fri Jun 19 00:31:52 IST 2026
[2026-06-19 00:31:53,012.012 INFO    ] ================================================
[2026-06-19 00:31:53,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:31:53
[2026-06-19 00:31:54,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:31:54,433.433 INFO    ] Initializing speech engine...
[2026-06-19 00:31:54,442.442 INFO    ] 2026-06-19 00:31:54
[2026-06-19 00:31:54,691.691 INFO    ] 2026-06-19 00:31:54
[2026-06-19 00:31:54,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:31:54,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:31:54,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:31:55,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:31:55,152.152 INFO    ] time= 19/06/2026 00:31:55
[2026-06-19 00:31:55,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:31:55,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:31:55,325.325 INFO    ] No existing commands found in stream
[2026-06-19 00:32:00,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:32:00,340.340 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 00:32:03,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:32:03,605.605 INFO    ] Checking for system updates...
[2026-06-19 00:32:03,644.644 INFO    ] 200
[2026-06-19 00:32:03,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:03,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:32:03,718.718 INFO    ] No update needed
[2026-06-19 00:32:03,720.720 INFO    ] Checking for camera pi updates...
[2026-06-19 00:32:03,754.754 INFO    ] 200
[2026-06-19 00:32:03,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:03,797.797 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:32:03,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:32:03,843.843 INFO    ] No camera update needed
[2026-06-19 00:32:03,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:32:03,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:32:03,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:32:03,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:32:05,901.901 INFO    ] ================================================
[2026-06-19 00:32:05,917.917 INFO    ] Launching Daemon at Fri Jun 19 00:32:05 IST 2026
[2026-06-19 00:32:05,929.929 INFO    ] ================================================
[2026-06-19 00:32:06,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:32:06
[2026-06-19 00:32:07,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:32:07,530.530 INFO    ] Initializing speech engine...
[2026-06-19 00:32:07,538.538 INFO    ] 2026-06-19 00:32:07
[2026-06-19 00:32:07,814.814 INFO    ] 2026-06-19 00:32:07
[2026-06-19 00:32:07,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:32:08,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:32:08,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:32:08,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:32:08,265.265 INFO    ] time= 19/06/2026 00:32:08
[2026-06-19 00:32:08,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:32:08,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:32:08,412.412 INFO    ] No existing commands found in stream
[2026-06-19 00:32:13,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:32:13,427.427 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 00:32:15,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:32:15,930.930 INFO    ] Checking for system updates...
[2026-06-19 00:32:15,966.966 INFO    ] 200
[2026-06-19 00:32:15,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:16,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:32:16,032.032 INFO    ] No update needed
[2026-06-19 00:32:16,034.034 INFO    ] Checking for camera pi updates...
[2026-06-19 00:32:16,073.073 INFO    ] 200
[2026-06-19 00:32:16,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:16,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:32:16,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:32:16,178.178 INFO    ] No camera update needed
[2026-06-19 00:32:16,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:32:16,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:32:16,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:32:16,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:32:18,236.236 INFO    ] ================================================
[2026-06-19 00:32:18,252.252 INFO    ] Launching Daemon at Fri Jun 19 00:32:18 IST 2026
[2026-06-19 00:32:18,264.264 INFO    ] ================================================
[2026-06-19 00:32:18,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:32:18
[2026-06-19 00:32:19,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:32:19,833.833 INFO    ] Initializing speech engine...
[2026-06-19 00:32:19,839.839 INFO    ] 2026-06-19 00:32:19
[2026-06-19 00:32:20,103.103 INFO    ] 2026-06-19 00:32:20
[2026-06-19 00:32:20,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:32:20,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:32:20,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:32:20,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:32:20,583.583 INFO    ] time= 19/06/2026 00:32:20
[2026-06-19 00:32:20,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:32:20,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:32:20,783.783 INFO    ] No existing commands found in stream
[2026-06-19 00:32:25,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:32:25,816.816 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 00:32:29,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:32:29,746.746 INFO    ] Checking for system updates...
[2026-06-19 00:32:29,781.781 INFO    ] 200
[2026-06-19 00:32:29,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:29,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:32:29,840.840 INFO    ] No update needed
[2026-06-19 00:32:29,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 00:32:29,876.876 INFO    ] 200
[2026-06-19 00:32:29,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:29,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:32:29,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:32:29,967.967 INFO    ] No camera update needed
[2026-06-19 00:32:29,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:32:29,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:32:29,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:32:29,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:32:32,025.025 INFO    ] ================================================
[2026-06-19 00:32:32,042.042 INFO    ] Launching Daemon at Fri Jun 19 00:32:32 IST 2026
[2026-06-19 00:32:32,055.055 INFO    ] ================================================
[2026-06-19 00:32:32,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:32:32
[2026-06-19 00:32:33,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:32:33,612.612 INFO    ] Initializing speech engine...
[2026-06-19 00:32:33,621.621 INFO    ] 2026-06-19 00:32:33
[2026-06-19 00:32:33,888.888 INFO    ] 2026-06-19 00:32:33
[2026-06-19 00:32:33,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:32:34,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:32:34,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:32:34,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:32:34,241.241 INFO    ] time= 19/06/2026 00:32:34
[2026-06-19 00:32:34,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:32:34,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:32:34,356.356 INFO    ] No existing commands found in stream
[2026-06-19 00:32:39,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:32:39,385.385 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 00:32:43,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:32:43,648.648 INFO    ] Checking for system updates...
[2026-06-19 00:32:43,686.686 INFO    ] 200
[2026-06-19 00:32:43,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:43,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:32:43,755.755 INFO    ] No update needed
[2026-06-19 00:32:43,758.758 INFO    ] Checking for camera pi updates...
[2026-06-19 00:32:43,798.798 INFO    ] 200
[2026-06-19 00:32:43,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:43,844.844 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:32:43,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:32:43,901.901 INFO    ] No camera update needed
[2026-06-19 00:32:43,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:32:43,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:32:43,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:32:43,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:32:45,960.960 INFO    ] ================================================
[2026-06-19 00:32:45,976.976 INFO    ] Launching Daemon at Fri Jun 19 00:32:45 IST 2026
[2026-06-19 00:32:45,987.987 INFO    ] ================================================
[2026-06-19 00:32:46,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:32:46
[2026-06-19 00:32:47,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:32:47,653.653 INFO    ] Initializing speech engine...
[2026-06-19 00:32:47,665.665 INFO    ] 2026-06-19 00:32:47
[2026-06-19 00:32:47,954.954 INFO    ] 2026-06-19 00:32:47
[2026-06-19 00:32:47,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:32:48,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:32:48,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:32:48,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:32:48,436.436 INFO    ] time= 19/06/2026 00:32:48
[2026-06-19 00:32:48,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:32:48,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:32:48,638.638 INFO    ] No existing commands found in stream
[2026-06-19 00:32:53,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:32:53,658.658 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 00:32:55,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:32:55,139.139 INFO    ] Checking for system updates...
[2026-06-19 00:32:55,176.176 INFO    ] 200
[2026-06-19 00:32:55,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:55,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:32:55,233.233 INFO    ] No update needed
[2026-06-19 00:32:55,236.236 INFO    ] Checking for camera pi updates...
[2026-06-19 00:32:55,270.270 INFO    ] 200
[2026-06-19 00:32:55,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:32:55,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:32:55,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:32:55,460.460 INFO    ] No camera update needed
[2026-06-19 00:32:55,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:32:55,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:32:55,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:32:55,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:32:57,516.516 INFO    ] ================================================
[2026-06-19 00:32:57,532.532 INFO    ] Launching Daemon at Fri Jun 19 00:32:57 IST 2026
[2026-06-19 00:32:57,543.543 INFO    ] ================================================
[2026-06-19 00:32:58,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:32:58
[2026-06-19 00:32:58,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:32:59,108.108 INFO    ] Initializing speech engine...
[2026-06-19 00:32:59,123.123 INFO    ] 2026-06-19 00:32:59
[2026-06-19 00:32:59,419.419 INFO    ] 2026-06-19 00:32:59
[2026-06-19 00:32:59,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:32:59,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:32:59,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:32:59,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:32:59,869.869 INFO    ] time= 19/06/2026 00:32:59
[2026-06-19 00:32:59,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:32:59,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:33:00,034.034 INFO    ] No existing commands found in stream
[2026-06-19 00:33:05,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:33:05,074.074 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 00:33:06,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:33:06,527.527 INFO    ] Checking for system updates...
[2026-06-19 00:33:06,563.563 INFO    ] 200
[2026-06-19 00:33:06,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:06,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:33:06,622.622 INFO    ] No update needed
[2026-06-19 00:33:06,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 00:33:06,658.658 INFO    ] 200
[2026-06-19 00:33:06,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:06,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:33:06,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:33:06,757.757 INFO    ] No camera update needed
[2026-06-19 00:33:06,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:33:06,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:33:06,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:33:06,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:33:08,821.821 INFO    ] ================================================
[2026-06-19 00:33:08,837.837 INFO    ] Launching Daemon at Fri Jun 19 00:33:08 IST 2026
[2026-06-19 00:33:08,848.848 INFO    ] ================================================
[2026-06-19 00:33:09,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:33:09
[2026-06-19 00:33:10,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:33:10,327.327 INFO    ] Initializing speech engine...
[2026-06-19 00:33:10,335.335 INFO    ] 2026-06-19 00:33:10
[2026-06-19 00:33:10,616.616 INFO    ] 2026-06-19 00:33:10
[2026-06-19 00:33:10,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:33:10,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:33:10,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:33:11,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:33:11,080.080 INFO    ] time= 19/06/2026 00:33:11
[2026-06-19 00:33:11,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:33:11,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:33:11,264.264 INFO    ] No existing commands found in stream
[2026-06-19 00:33:16,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:33:16,303.303 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 00:33:19,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:33:19,217.217 INFO    ] Checking for system updates...
[2026-06-19 00:33:19,254.254 INFO    ] 200
[2026-06-19 00:33:19,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:19,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:33:19,313.313 INFO    ] No update needed
[2026-06-19 00:33:19,320.320 INFO    ] Checking for camera pi updates...
[2026-06-19 00:33:19,355.355 INFO    ] 200
[2026-06-19 00:33:19,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:19,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:33:19,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:33:19,459.459 INFO    ] No camera update needed
[2026-06-19 00:33:19,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:33:19,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:33:19,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:33:19,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:33:21,515.515 INFO    ] ================================================
[2026-06-19 00:33:21,534.534 INFO    ] Launching Daemon at Fri Jun 19 00:33:21 IST 2026
[2026-06-19 00:33:21,545.545 INFO    ] ================================================
[2026-06-19 00:33:22,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:33:22
[2026-06-19 00:33:22,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:33:23,209.209 INFO    ] Initializing speech engine...
[2026-06-19 00:33:23,223.223 INFO    ] 2026-06-19 00:33:23
[2026-06-19 00:33:23,510.510 INFO    ] 2026-06-19 00:33:23
[2026-06-19 00:33:23,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:33:23,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:33:23,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:33:23,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:33:24,017.017 INFO    ] time= 19/06/2026 00:33:23
[2026-06-19 00:33:24,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:33:24,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:33:24,187.187 INFO    ] No existing commands found in stream
[2026-06-19 00:33:29,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:33:29,209.209 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 00:33:29,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:33:29,701.701 INFO    ] Checking for system updates...
[2026-06-19 00:33:29,738.738 INFO    ] 200
[2026-06-19 00:33:29,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:29,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:33:29,811.811 INFO    ] No update needed
[2026-06-19 00:33:29,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 00:33:29,852.852 INFO    ] 200
[2026-06-19 00:33:29,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:29,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:33:29,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:33:29,969.969 INFO    ] No camera update needed
[2026-06-19 00:33:29,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:33:29,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:33:29,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:33:29,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:33:32,031.031 INFO    ] ================================================
[2026-06-19 00:33:32,049.049 INFO    ] Launching Daemon at Fri Jun 19 00:33:32 IST 2026
[2026-06-19 00:33:32,061.061 INFO    ] ================================================
[2026-06-19 00:33:32,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:33:32
[2026-06-19 00:33:33,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:33:33,624.624 INFO    ] Initializing speech engine...
[2026-06-19 00:33:33,633.633 INFO    ] 2026-06-19 00:33:33
[2026-06-19 00:33:33,926.926 INFO    ] 2026-06-19 00:33:33
[2026-06-19 00:33:33,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:33:34,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:33:34,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:33:34,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:33:34,383.383 INFO    ] time= 19/06/2026 00:33:34
[2026-06-19 00:33:34,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:33:34,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:33:34,542.542 INFO    ] No existing commands found in stream
[2026-06-19 00:33:39,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:33:39,559.559 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 00:33:43,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:33:43,005.005 INFO    ] Checking for system updates...
[2026-06-19 00:33:43,042.042 INFO    ] 200
[2026-06-19 00:33:43,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:43,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:33:43,101.101 INFO    ] No update needed
[2026-06-19 00:33:43,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 00:33:43,137.137 INFO    ] 200
[2026-06-19 00:33:43,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:43,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:33:43,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:33:43,239.239 INFO    ] No camera update needed
[2026-06-19 00:33:43,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:33:43,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:33:43,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:33:43,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:33:45,296.296 INFO    ] ================================================
[2026-06-19 00:33:45,312.312 INFO    ] Launching Daemon at Fri Jun 19 00:33:45 IST 2026
[2026-06-19 00:33:45,323.323 INFO    ] ================================================
[2026-06-19 00:33:45,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:33:45
[2026-06-19 00:33:46,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:33:46,785.785 INFO    ] Initializing speech engine...
[2026-06-19 00:33:46,791.791 INFO    ] 2026-06-19 00:33:46
[2026-06-19 00:33:47,080.080 INFO    ] 2026-06-19 00:33:47
[2026-06-19 00:33:47,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:33:47,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:33:47,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:33:47,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:33:47,440.440 INFO    ] time= 19/06/2026 00:33:47
[2026-06-19 00:33:47,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:33:47,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:33:47,546.546 INFO    ] No existing commands found in stream
[2026-06-19 00:33:52,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:33:52,562.562 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 00:33:55,869.869 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:33:55,871.871 INFO    ] Checking for system updates...
[2026-06-19 00:33:55,908.908 INFO    ] 200
[2026-06-19 00:33:55,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:55,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:33:55,966.966 INFO    ] No update needed
[2026-06-19 00:33:55,968.968 INFO    ] Checking for camera pi updates...
[2026-06-19 00:33:56,003.003 INFO    ] 200
[2026-06-19 00:33:56,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:33:56,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:33:56,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:33:56,095.095 INFO    ] No camera update needed
[2026-06-19 00:33:56,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:33:56,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:33:56,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:33:56,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:33:58,153.153 INFO    ] ================================================
[2026-06-19 00:33:58,168.168 INFO    ] Launching Daemon at Fri Jun 19 00:33:58 IST 2026
[2026-06-19 00:33:58,179.179 INFO    ] ================================================
[2026-06-19 00:33:58,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:33:58
[2026-06-19 00:33:59,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:33:59,638.638 INFO    ] Initializing speech engine...
[2026-06-19 00:33:59,653.653 INFO    ] 2026-06-19 00:33:59
[2026-06-19 00:33:59,932.932 INFO    ] 2026-06-19 00:33:59
[2026-06-19 00:33:59,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:34:00,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:34:00,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:34:00,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:34:00,410.410 INFO    ] time= 19/06/2026 00:34:00
[2026-06-19 00:34:00,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:34:00,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:34:00,625.625 INFO    ] No existing commands found in stream
[2026-06-19 00:34:05,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:34:05,645.645 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 00:34:09,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:34:09,922.922 INFO    ] Checking for system updates...
[2026-06-19 00:34:09,961.961 INFO    ] 200
[2026-06-19 00:34:09,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:34:10,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:34:10,020.020 INFO    ] No update needed
[2026-06-19 00:34:10,023.023 INFO    ] Checking for camera pi updates...
[2026-06-19 00:34:10,057.057 INFO    ] 200
[2026-06-19 00:34:10,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:34:10,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:34:10,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:34:10,156.156 INFO    ] No camera update needed
[2026-06-19 00:34:10,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:34:10,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:34:10,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:34:10,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:34:12,215.215 INFO    ] ================================================
[2026-06-19 00:34:12,231.231 INFO    ] Launching Daemon at Fri Jun 19 00:34:12 IST 2026
[2026-06-19 00:34:12,243.243 INFO    ] ================================================
[2026-06-19 00:34:12,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:34:12
[2026-06-19 00:34:13,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:34:13,702.702 INFO    ] Initializing speech engine...
[2026-06-19 00:34:13,727.727 INFO    ] 2026-06-19 00:34:13
[2026-06-19 00:34:14,001.001 INFO    ] 2026-06-19 00:34:13
[2026-06-19 00:34:14,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:34:14,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:34:14,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:34:14,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:34:14,498.498 INFO    ] time= 19/06/2026 00:34:14
[2026-06-19 00:34:14,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:34:14,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:34:14,696.696 INFO    ] No existing commands found in stream
[2026-06-19 00:34:19,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:34:19,781.781 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 00:34:22,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:34:22,912.912 INFO    ] Checking for system updates...
[2026-06-19 00:34:22,950.950 INFO    ] 200
[2026-06-19 00:34:22,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:34:23,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:34:23,010.010 INFO    ] No update needed
[2026-06-19 00:34:23,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 00:34:23,047.047 INFO    ] 200
[2026-06-19 00:34:23,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:34:23,091.091 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:34:23,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:34:23,201.201 INFO    ] No camera update needed
[2026-06-19 00:34:23,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:34:23,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:34:23,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:34:23,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:34:25,261.261 INFO    ] ================================================
[2026-06-19 00:34:25,277.277 INFO    ] Launching Daemon at Fri Jun 19 00:34:25 IST 2026
[2026-06-19 00:34:25,287.287 INFO    ] ================================================
[2026-06-19 00:34:25,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:34:25
[2026-06-19 00:34:26,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:34:26,744.744 INFO    ] Initializing speech engine...
[2026-06-19 00:34:26,753.753 INFO    ] 2026-06-19 00:34:26
[2026-06-19 00:34:27,013.013 INFO    ] 2026-06-19 00:34:27
[2026-06-19 00:34:27,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:34:27,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:34:27,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:34:27,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:34:27,477.477 INFO    ] time= 19/06/2026 00:34:27
[2026-06-19 00:34:27,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:34:27,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:34:27,619.619 INFO    ] No existing commands found in stream
[2026-06-19 00:34:32,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:34:32,631.631 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 00:34:36,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:34:36,445.445 INFO    ] Checking for system updates...
[2026-06-19 00:34:36,481.481 INFO    ] 200
[2026-06-19 00:34:36,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:34:36,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:34:36,538.538 INFO    ] No update needed
[2026-06-19 00:34:36,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 00:34:36,575.575 INFO    ] 200
[2026-06-19 00:34:36,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:34:36,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:34:36,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:34:36,671.671 INFO    ] No camera update needed
[2026-06-19 00:34:36,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:34:36,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:34:36,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:34:36,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:34:38,731.731 INFO    ] ================================================
[2026-06-19 00:34:38,747.747 INFO    ] Launching Daemon at Fri Jun 19 00:34:38 IST 2026
[2026-06-19 00:34:38,758.758 INFO    ] ================================================
[2026-06-19 00:34:39,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:34:39
[2026-06-19 00:34:39,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:34:40,211.211 INFO    ] Initializing speech engine...
[2026-06-19 00:34:40,227.227 INFO    ] 2026-06-19 00:34:40
[2026-06-19 00:34:40,504.504 INFO    ] 2026-06-19 00:34:40
[2026-06-19 00:34:40,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:34:40,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:34:40,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:34:40,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:34:40,884.884 INFO    ] time= 19/06/2026 00:34:40
[2026-06-19 00:34:40,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:34:40,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:34:41,011.011 INFO    ] No existing commands found in stream
[2026-06-19 00:34:46,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:34:46,027.027 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 00:34:50,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:34:50,154.154 INFO    ] Checking for system updates...
[2026-06-19 00:34:50,191.191 INFO    ] 200
[2026-06-19 00:34:50,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:34:50,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:34:50,250.250 INFO    ] No update needed
[2026-06-19 00:34:50,253.253 INFO    ] Checking for camera pi updates...
[2026-06-19 00:34:50,292.292 INFO    ] 200
[2026-06-19 00:34:50,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:34:50,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:34:50,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:34:50,392.392 INFO    ] No camera update needed
[2026-06-19 00:34:50,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:34:50,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:34:50,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:34:50,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:34:52,451.451 INFO    ] ================================================
[2026-06-19 00:34:52,467.467 INFO    ] Launching Daemon at Fri Jun 19 00:34:52 IST 2026
[2026-06-19 00:34:52,478.478 INFO    ] ================================================
[2026-06-19 00:34:53,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:34:53
[2026-06-19 00:34:53,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:34:54,106.106 INFO    ] Initializing speech engine...
[2026-06-19 00:34:54,114.114 INFO    ] 2026-06-19 00:34:54
[2026-06-19 00:34:54,385.385 INFO    ] 2026-06-19 00:34:54
[2026-06-19 00:34:54,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:34:54,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:34:54,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:34:54,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:34:54,891.891 INFO    ] time= 19/06/2026 00:34:54
[2026-06-19 00:34:54,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:34:54,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:34:55,078.078 INFO    ] No existing commands found in stream
[2026-06-19 00:35:00,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:35:00,105.105 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-19 00:35:04,473.473 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:35:04,476.476 INFO    ] Checking for system updates...
[2026-06-19 00:35:04,513.513 INFO    ] 200
[2026-06-19 00:35:04,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:04,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:35:04,572.572 INFO    ] No update needed
[2026-06-19 00:35:04,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 00:35:04,608.608 INFO    ] 200
[2026-06-19 00:35:04,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:04,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:35:04,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:35:04,718.718 INFO    ] No camera update needed
[2026-06-19 00:35:04,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:35:04,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:35:04,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:35:04,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:35:06,774.774 INFO    ] ================================================
[2026-06-19 00:35:06,790.790 INFO    ] Launching Daemon at Fri Jun 19 00:35:06 IST 2026
[2026-06-19 00:35:06,802.802 INFO    ] ================================================
[2026-06-19 00:35:07,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:35:07
[2026-06-19 00:35:07,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:35:08,242.242 INFO    ] Initializing speech engine...
[2026-06-19 00:35:08,249.249 INFO    ] 2026-06-19 00:35:08
[2026-06-19 00:35:08,507.507 INFO    ] 2026-06-19 00:35:08
[2026-06-19 00:35:08,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:35:08,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:35:08,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:35:08,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:35:08,986.986 INFO    ] time= 19/06/2026 00:35:08
[2026-06-19 00:35:09,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:35:09,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:35:09,143.143 INFO    ] No existing commands found in stream
[2026-06-19 00:35:14,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:35:14,166.166 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 00:35:18,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:35:18,168.168 INFO    ] Checking for system updates...
[2026-06-19 00:35:18,207.207 INFO    ] 200
[2026-06-19 00:35:18,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:18,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:35:18,265.265 INFO    ] No update needed
[2026-06-19 00:35:18,268.268 INFO    ] Checking for camera pi updates...
[2026-06-19 00:35:18,306.306 INFO    ] 200
[2026-06-19 00:35:18,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:18,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:35:18,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:35:18,408.408 INFO    ] No camera update needed
[2026-06-19 00:35:18,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:35:18,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:35:18,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:35:18,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:35:20,468.468 INFO    ] ================================================
[2026-06-19 00:35:20,483.483 INFO    ] Launching Daemon at Fri Jun 19 00:35:20 IST 2026
[2026-06-19 00:35:20,494.494 INFO    ] ================================================
[2026-06-19 00:35:21,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:35:21
[2026-06-19 00:35:21,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:35:22,097.097 INFO    ] Initializing speech engine...
[2026-06-19 00:35:22,103.103 INFO    ] 2026-06-19 00:35:22
[2026-06-19 00:35:22,381.381 INFO    ] 2026-06-19 00:35:22
[2026-06-19 00:35:22,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:35:22,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:35:22,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:35:22,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:35:22,856.856 INFO    ] time= 19/06/2026 00:35:22
[2026-06-19 00:35:22,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:35:22,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:35:23,007.007 INFO    ] No existing commands found in stream
[2026-06-19 00:35:28,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:35:28,024.024 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 00:35:31,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:35:31,320.320 INFO    ] Checking for system updates...
[2026-06-19 00:35:31,357.357 INFO    ] 200
[2026-06-19 00:35:31,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:31,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:35:31,415.415 INFO    ] No update needed
[2026-06-19 00:35:31,418.418 INFO    ] Checking for camera pi updates...
[2026-06-19 00:35:31,453.453 INFO    ] 200
[2026-06-19 00:35:31,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:31,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:35:31,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:35:31,547.547 INFO    ] No camera update needed
[2026-06-19 00:35:31,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:35:31,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:35:31,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:35:31,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:35:33,608.608 INFO    ] ================================================
[2026-06-19 00:35:33,623.623 INFO    ] Launching Daemon at Fri Jun 19 00:35:33 IST 2026
[2026-06-19 00:35:33,634.634 INFO    ] ================================================
[2026-06-19 00:35:34,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:35:34
[2026-06-19 00:35:34,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:35:35,250.250 INFO    ] Initializing speech engine...
[2026-06-19 00:35:35,256.256 INFO    ] 2026-06-19 00:35:35
[2026-06-19 00:35:35,545.545 INFO    ] 2026-06-19 00:35:35
[2026-06-19 00:35:35,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:35:35,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:35:35,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:35:36,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:35:36,082.082 INFO    ] time= 19/06/2026 00:35:36
[2026-06-19 00:35:36,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:35:36,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:35:36,218.218 INFO    ] No existing commands found in stream
[2026-06-19 00:35:41,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:35:41,250.250 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 00:35:42,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:35:42,502.502 INFO    ] Checking for system updates...
[2026-06-19 00:35:42,539.539 INFO    ] 200
[2026-06-19 00:35:42,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:42,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:35:42,608.608 INFO    ] No update needed
[2026-06-19 00:35:42,611.611 INFO    ] Checking for camera pi updates...
[2026-06-19 00:35:42,649.649 INFO    ] 200
[2026-06-19 00:35:42,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:42,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:35:42,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:35:42,745.745 INFO    ] No camera update needed
[2026-06-19 00:35:42,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:35:42,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:35:42,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:35:42,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:35:44,803.803 INFO    ] ================================================
[2026-06-19 00:35:44,818.818 INFO    ] Launching Daemon at Fri Jun 19 00:35:44 IST 2026
[2026-06-19 00:35:44,829.829 INFO    ] ================================================
[2026-06-19 00:35:45,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:35:45
[2026-06-19 00:35:46,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:35:46,294.294 INFO    ] Initializing speech engine...
[2026-06-19 00:35:46,301.301 INFO    ] 2026-06-19 00:35:46
[2026-06-19 00:35:46,561.561 INFO    ] 2026-06-19 00:35:46
[2026-06-19 00:35:46,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:35:46,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:35:46,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:35:46,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:35:46,921.921 INFO    ] time= 19/06/2026 00:35:46
[2026-06-19 00:35:46,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:35:46,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:35:47,094.094 INFO    ] No existing commands found in stream
[2026-06-19 00:35:52,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:35:52,128.128 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 00:35:55,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:35:55,466.466 INFO    ] Checking for system updates...
[2026-06-19 00:35:55,527.527 INFO    ] 200
[2026-06-19 00:35:55,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:55,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:35:55,604.604 INFO    ] No update needed
[2026-06-19 00:35:55,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 00:35:55,652.652 INFO    ] 200
[2026-06-19 00:35:55,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:35:55,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:35:55,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:35:55,743.743 INFO    ] No camera update needed
[2026-06-19 00:35:55,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:35:55,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:35:55,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:35:55,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:35:57,799.799 INFO    ] ================================================
[2026-06-19 00:35:57,815.815 INFO    ] Launching Daemon at Fri Jun 19 00:35:57 IST 2026
[2026-06-19 00:35:57,826.826 INFO    ] ================================================
[2026-06-19 00:35:58,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:35:58
[2026-06-19 00:35:59,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:35:59,515.515 INFO    ] Initializing speech engine...
[2026-06-19 00:35:59,529.529 INFO    ] 2026-06-19 00:35:59
[2026-06-19 00:35:59,803.803 INFO    ] 2026-06-19 00:35:59
[2026-06-19 00:35:59,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:36:00,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:36:00,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:36:00,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:36:00,261.261 INFO    ] time= 19/06/2026 00:36:00
[2026-06-19 00:36:00,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:36:00,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:36:00,402.402 INFO    ] No existing commands found in stream
[2026-06-19 00:36:05,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:36:05,417.417 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 00:36:06,220.220 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:36:06,223.223 INFO    ] Checking for system updates...
[2026-06-19 00:36:06,261.261 INFO    ] 200
[2026-06-19 00:36:06,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:06,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:36:06,329.329 INFO    ] No update needed
[2026-06-19 00:36:06,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 00:36:06,366.366 INFO    ] 200
[2026-06-19 00:36:06,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:06,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:36:06,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:36:06,454.454 INFO    ] No camera update needed
[2026-06-19 00:36:06,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:36:06,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:36:06,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:36:06,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:36:08,512.512 INFO    ] ================================================
[2026-06-19 00:36:08,528.528 INFO    ] Launching Daemon at Fri Jun 19 00:36:08 IST 2026
[2026-06-19 00:36:08,539.539 INFO    ] ================================================
[2026-06-19 00:36:09,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:36:09
[2026-06-19 00:36:09,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:36:09,960.960 INFO    ] Initializing speech engine...
[2026-06-19 00:36:09,982.982 INFO    ] 2026-06-19 00:36:09
[2026-06-19 00:36:10,233.233 INFO    ] 2026-06-19 00:36:10
[2026-06-19 00:36:10,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:36:10,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:36:10,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:36:10,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:36:10,604.604 INFO    ] time= 19/06/2026 00:36:10
[2026-06-19 00:36:10,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:36:10,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:36:10,798.798 INFO    ] No existing commands found in stream
[2026-06-19 00:36:15,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:36:15,811.811 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 00:36:18,681.681 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:36:18,684.684 INFO    ] Checking for system updates...
[2026-06-19 00:36:18,721.721 INFO    ] 200
[2026-06-19 00:36:18,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:18,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:36:18,789.789 INFO    ] No update needed
[2026-06-19 00:36:18,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 00:36:18,827.827 INFO    ] 200
[2026-06-19 00:36:18,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:18,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:36:18,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:36:18,925.925 INFO    ] No camera update needed
[2026-06-19 00:36:18,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:36:18,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:36:18,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:36:18,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:36:20,983.983 INFO    ] ================================================
[2026-06-19 00:36:21,998.998 INFO    ] Launching Daemon at Fri Jun 19 00:36:20 IST 2026
[2026-06-19 00:36:21,009.009 INFO    ] ================================================
[2026-06-19 00:36:21,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:36:21
[2026-06-19 00:36:22,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:36:22,464.464 INFO    ] Initializing speech engine...
[2026-06-19 00:36:22,473.473 INFO    ] 2026-06-19 00:36:22
[2026-06-19 00:36:22,720.720 INFO    ] 2026-06-19 00:36:22
[2026-06-19 00:36:22,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:36:23,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:36:23,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:36:23,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:36:23,209.209 INFO    ] time= 19/06/2026 00:36:23
[2026-06-19 00:36:23,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:36:23,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:36:23,338.338 INFO    ] No existing commands found in stream
[2026-06-19 00:36:28,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:36:28,352.352 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 00:36:30,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:36:30,632.632 INFO    ] Checking for system updates...
[2026-06-19 00:36:30,672.672 INFO    ] 200
[2026-06-19 00:36:30,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:30,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:36:30,729.729 INFO    ] No update needed
[2026-06-19 00:36:30,732.732 INFO    ] Checking for camera pi updates...
[2026-06-19 00:36:30,772.772 INFO    ] 200
[2026-06-19 00:36:30,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:30,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:36:30,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:36:30,873.873 INFO    ] No camera update needed
[2026-06-19 00:36:30,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:36:30,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:36:30,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:36:30,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:36:32,936.936 INFO    ] ================================================
[2026-06-19 00:36:32,952.952 INFO    ] Launching Daemon at Fri Jun 19 00:36:32 IST 2026
[2026-06-19 00:36:32,963.963 INFO    ] ================================================
[2026-06-19 00:36:33,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:36:33
[2026-06-19 00:36:34,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:36:34,394.394 INFO    ] Initializing speech engine...
[2026-06-19 00:36:34,406.406 INFO    ] 2026-06-19 00:36:34
[2026-06-19 00:36:34,671.671 INFO    ] 2026-06-19 00:36:34
[2026-06-19 00:36:34,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:36:34,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:36:34,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:36:35,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:36:35,042.042 INFO    ] time= 19/06/2026 00:36:35
[2026-06-19 00:36:35,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:36:35,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:36:35,219.219 INFO    ] No existing commands found in stream
[2026-06-19 00:36:40,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:36:40,251.251 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 00:36:43,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:36:43,206.206 INFO    ] Checking for system updates...
[2026-06-19 00:36:43,243.243 INFO    ] 200
[2026-06-19 00:36:43,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:43,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:36:43,302.302 INFO    ] No update needed
[2026-06-19 00:36:43,305.305 INFO    ] Checking for camera pi updates...
[2026-06-19 00:36:43,339.339 INFO    ] 200
[2026-06-19 00:36:43,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:43,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:36:43,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:36:43,432.432 INFO    ] No camera update needed
[2026-06-19 00:36:43,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:36:43,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:36:43,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:36:43,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:36:45,491.491 INFO    ] ================================================
[2026-06-19 00:36:45,507.507 INFO    ] Launching Daemon at Fri Jun 19 00:36:45 IST 2026
[2026-06-19 00:36:45,519.519 INFO    ] ================================================
[2026-06-19 00:36:46,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:36:46
[2026-06-19 00:36:46,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:36:46,952.952 INFO    ] Initializing speech engine...
[2026-06-19 00:36:46,971.971 INFO    ] 2026-06-19 00:36:46
[2026-06-19 00:36:47,224.224 INFO    ] 2026-06-19 00:36:47
[2026-06-19 00:36:47,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:36:47,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:36:47,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:36:47,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:36:47,662.662 INFO    ] time= 19/06/2026 00:36:47
[2026-06-19 00:36:47,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:36:47,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:36:47,862.862 INFO    ] No existing commands found in stream
[2026-06-19 00:36:52,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:36:52,877.877 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 00:36:53,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:36:53,569.569 INFO    ] Checking for system updates...
[2026-06-19 00:36:53,605.605 INFO    ] 200
[2026-06-19 00:36:53,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:53,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:36:53,663.663 INFO    ] No update needed
[2026-06-19 00:36:53,666.666 INFO    ] Checking for camera pi updates...
[2026-06-19 00:36:53,703.703 INFO    ] 200
[2026-06-19 00:36:53,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:36:53,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:36:53,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:36:53,794.794 INFO    ] No camera update needed
[2026-06-19 00:36:53,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:36:53,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:36:53,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:36:53,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:36:55,851.851 INFO    ] ================================================
[2026-06-19 00:36:55,867.867 INFO    ] Launching Daemon at Fri Jun 19 00:36:55 IST 2026
[2026-06-19 00:36:55,878.878 INFO    ] ================================================
[2026-06-19 00:36:56,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:36:56
[2026-06-19 00:36:57,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:36:57,489.489 INFO    ] Initializing speech engine...
[2026-06-19 00:36:57,497.497 INFO    ] 2026-06-19 00:36:57
[2026-06-19 00:36:57,771.771 INFO    ] 2026-06-19 00:36:57
[2026-06-19 00:36:57,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:36:58,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:36:58,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:36:58,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:36:58,316.316 INFO    ] time= 19/06/2026 00:36:58
[2026-06-19 00:36:58,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:36:58,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:36:58,458.458 INFO    ] No existing commands found in stream
[2026-06-19 00:37:03,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:37:03,491.491 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 00:37:07,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:37:07,605.605 INFO    ] Checking for system updates...
[2026-06-19 00:37:07,646.646 INFO    ] 200
[2026-06-19 00:37:07,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:07,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:37:07,712.712 INFO    ] No update needed
[2026-06-19 00:37:07,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 00:37:07,752.752 INFO    ] 200
[2026-06-19 00:37:07,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:07,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:37:07,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:37:07,946.946 INFO    ] No camera update needed
[2026-06-19 00:37:07,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:37:07,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:37:07,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:37:07,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:37:10,006.006 INFO    ] ================================================
[2026-06-19 00:37:10,021.021 INFO    ] Launching Daemon at Fri Jun 19 00:37:10 IST 2026
[2026-06-19 00:37:10,031.031 INFO    ] ================================================
[2026-06-19 00:37:10,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:37:10
[2026-06-19 00:37:11,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:37:11,480.480 INFO    ] Initializing speech engine...
[2026-06-19 00:37:11,501.501 INFO    ] 2026-06-19 00:37:11
[2026-06-19 00:37:11,765.765 INFO    ] 2026-06-19 00:37:11
[2026-06-19 00:37:11,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:37:11,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:37:12,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:37:12,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:37:12,175.175 INFO    ] time= 19/06/2026 00:37:12
[2026-06-19 00:37:12,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:37:12,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:37:12,258.258 INFO    ] No existing commands found in stream
[2026-06-19 00:37:17,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:37:17,274.274 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 00:37:19,151.151 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:37:19,154.154 INFO    ] Checking for system updates...
[2026-06-19 00:37:19,190.190 INFO    ] 200
[2026-06-19 00:37:19,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:19,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:37:19,248.248 INFO    ] No update needed
[2026-06-19 00:37:19,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 00:37:19,284.284 INFO    ] 200
[2026-06-19 00:37:19,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:19,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:37:19,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:37:19,373.373 INFO    ] No camera update needed
[2026-06-19 00:37:19,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:37:19,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:37:19,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:37:19,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:37:21,429.429 INFO    ] ================================================
[2026-06-19 00:37:21,444.444 INFO    ] Launching Daemon at Fri Jun 19 00:37:21 IST 2026
[2026-06-19 00:37:21,455.455 INFO    ] ================================================
[2026-06-19 00:37:22,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:37:22
[2026-06-19 00:37:22,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:37:22,872.872 INFO    ] Initializing speech engine...
[2026-06-19 00:37:22,887.887 INFO    ] 2026-06-19 00:37:22
[2026-06-19 00:37:23,167.167 INFO    ] 2026-06-19 00:37:23
[2026-06-19 00:37:23,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:37:23,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:37:23,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:37:23,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:37:23,556.556 INFO    ] time= 19/06/2026 00:37:23
[2026-06-19 00:37:23,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:37:23,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:37:23,663.663 INFO    ] No existing commands found in stream
[2026-06-19 00:37:28,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:37:28,679.679 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 00:37:32,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:37:32,963.963 INFO    ] Checking for system updates...
[2026-06-19 00:37:33,005.005 INFO    ] 200
[2026-06-19 00:37:33,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:33,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:37:33,067.067 INFO    ] No update needed
[2026-06-19 00:37:33,069.069 INFO    ] Checking for camera pi updates...
[2026-06-19 00:37:33,103.103 INFO    ] 200
[2026-06-19 00:37:33,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:33,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:37:33,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:37:33,189.189 INFO    ] No camera update needed
[2026-06-19 00:37:33,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:37:33,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:37:33,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:37:33,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:37:35,245.245 INFO    ] ================================================
[2026-06-19 00:37:35,260.260 INFO    ] Launching Daemon at Fri Jun 19 00:37:35 IST 2026
[2026-06-19 00:37:35,270.270 INFO    ] ================================================
[2026-06-19 00:37:35,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:37:35
[2026-06-19 00:37:36,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:37:36,727.727 INFO    ] Initializing speech engine...
[2026-06-19 00:37:36,737.737 INFO    ] 2026-06-19 00:37:36
[2026-06-19 00:37:36,987.987 INFO    ] 2026-06-19 00:37:36
[2026-06-19 00:37:37,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:37:37,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:37:37,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:37:37,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:37:37,363.363 INFO    ] time= 19/06/2026 00:37:37
[2026-06-19 00:37:37,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:37:37,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:37:37,549.549 INFO    ] No existing commands found in stream
[2026-06-19 00:37:42,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:37:42,577.577 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 00:37:43,751.751 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:37:43,754.754 INFO    ] Checking for system updates...
[2026-06-19 00:37:43,790.790 INFO    ] 200
[2026-06-19 00:37:43,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:43,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:37:43,848.848 INFO    ] No update needed
[2026-06-19 00:37:43,850.850 INFO    ] Checking for camera pi updates...
[2026-06-19 00:37:43,888.888 INFO    ] 200
[2026-06-19 00:37:43,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:43,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:37:44,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:37:44,074.074 INFO    ] No camera update needed
[2026-06-19 00:37:44,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:37:44,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:37:44,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:37:44,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:37:46,130.130 INFO    ] ================================================
[2026-06-19 00:37:46,145.145 INFO    ] Launching Daemon at Fri Jun 19 00:37:46 IST 2026
[2026-06-19 00:37:46,156.156 INFO    ] ================================================
[2026-06-19 00:37:46,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:37:46
[2026-06-19 00:37:47,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:37:47,720.720 INFO    ] Initializing speech engine...
[2026-06-19 00:37:47,737.737 INFO    ] 2026-06-19 00:37:47
[2026-06-19 00:37:48,000.000 INFO    ] 2026-06-19 00:37:47
[2026-06-19 00:37:48,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:37:48,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:37:48,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:37:48,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:37:48,508.508 INFO    ] time= 19/06/2026 00:37:48
[2026-06-19 00:37:48,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:37:48,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:37:48,703.703 INFO    ] No existing commands found in stream
[2026-06-19 00:37:53,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:37:53,731.731 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 00:37:57,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:37:57,077.077 INFO    ] Checking for system updates...
[2026-06-19 00:37:57,114.114 INFO    ] 200
[2026-06-19 00:37:57,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:57,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:37:57,178.178 INFO    ] No update needed
[2026-06-19 00:37:57,180.180 INFO    ] Checking for camera pi updates...
[2026-06-19 00:37:57,214.214 INFO    ] 200
[2026-06-19 00:37:57,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:37:57,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:37:57,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:37:57,308.308 INFO    ] No camera update needed
[2026-06-19 00:37:57,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:37:57,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:37:57,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:37:57,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:37:59,363.363 INFO    ] ================================================
[2026-06-19 00:37:59,378.378 INFO    ] Launching Daemon at Fri Jun 19 00:37:59 IST 2026
[2026-06-19 00:37:59,389.389 INFO    ] ================================================
[2026-06-19 00:37:59,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:37:59
[2026-06-19 00:38:00,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:38:00,805.805 INFO    ] Initializing speech engine...
[2026-06-19 00:38:00,814.814 INFO    ] 2026-06-19 00:38:00
[2026-06-19 00:38:01,107.107 INFO    ] 2026-06-19 00:38:01
[2026-06-19 00:38:01,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:38:01,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:38:01,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:38:01,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:38:01,479.479 INFO    ] time= 19/06/2026 00:38:01
[2026-06-19 00:38:01,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:38:01,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:38:01,607.607 INFO    ] No existing commands found in stream
[2026-06-19 00:38:06,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:38:06,625.625 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 00:38:08,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:38:08,335.335 INFO    ] Checking for system updates...
[2026-06-19 00:38:08,374.374 INFO    ] 200
[2026-06-19 00:38:08,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:08,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:38:08,432.432 INFO    ] No update needed
[2026-06-19 00:38:08,435.435 INFO    ] Checking for camera pi updates...
[2026-06-19 00:38:08,469.469 INFO    ] 200
[2026-06-19 00:38:08,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:08,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:38:08,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:38:08,562.562 INFO    ] No camera update needed
[2026-06-19 00:38:08,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:38:08,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:38:08,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:38:08,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:38:10,618.618 INFO    ] ================================================
[2026-06-19 00:38:10,634.634 INFO    ] Launching Daemon at Fri Jun 19 00:38:10 IST 2026
[2026-06-19 00:38:10,645.645 INFO    ] ================================================
[2026-06-19 00:38:11,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:38:11
[2026-06-19 00:38:11,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:38:12,081.081 INFO    ] Initializing speech engine...
[2026-06-19 00:38:12,088.088 INFO    ] 2026-06-19 00:38:12
[2026-06-19 00:38:12,388.388 INFO    ] 2026-06-19 00:38:12
[2026-06-19 00:38:12,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:38:12,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:38:12,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:38:12,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:38:12,771.771 INFO    ] time= 19/06/2026 00:38:12
[2026-06-19 00:38:12,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:38:12,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:38:12,901.901 INFO    ] No existing commands found in stream
[2026-06-19 00:38:17,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:38:17,914.914 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 00:38:21,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:38:21,735.735 INFO    ] Checking for system updates...
[2026-06-19 00:38:21,776.776 INFO    ] 200
[2026-06-19 00:38:21,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:21,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:38:21,833.833 INFO    ] No update needed
[2026-06-19 00:38:21,836.836 INFO    ] Checking for camera pi updates...
[2026-06-19 00:38:21,870.870 INFO    ] 200
[2026-06-19 00:38:21,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:21,918.918 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:38:21,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:38:21,969.969 INFO    ] No camera update needed
[2026-06-19 00:38:21,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:38:21,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:38:21,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:38:21,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:38:24,024.024 INFO    ] ================================================
[2026-06-19 00:38:24,040.040 INFO    ] Launching Daemon at Fri Jun 19 00:38:24 IST 2026
[2026-06-19 00:38:24,051.051 INFO    ] ================================================
[2026-06-19 00:38:24,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:38:24
[2026-06-19 00:38:25,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:38:25,474.474 INFO    ] Initializing speech engine...
[2026-06-19 00:38:25,492.492 INFO    ] 2026-06-19 00:38:25
[2026-06-19 00:38:25,765.765 INFO    ] 2026-06-19 00:38:25
[2026-06-19 00:38:25,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:38:26,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:38:26,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:38:26,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:38:26,184.184 INFO    ] time= 19/06/2026 00:38:26
[2026-06-19 00:38:26,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:38:26,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:38:26,281.281 INFO    ] No existing commands found in stream
[2026-06-19 00:38:31,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:38:31,319.319 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 00:38:33,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:38:33,623.623 INFO    ] Checking for system updates...
[2026-06-19 00:38:33,659.659 INFO    ] 200
[2026-06-19 00:38:33,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:33,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:38:33,716.716 INFO    ] No update needed
[2026-06-19 00:38:33,718.718 INFO    ] Checking for camera pi updates...
[2026-06-19 00:38:33,757.757 INFO    ] 200
[2026-06-19 00:38:33,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:33,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:38:33,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:38:33,850.850 INFO    ] No camera update needed
[2026-06-19 00:38:33,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:38:33,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:38:33,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:38:33,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:38:35,906.906 INFO    ] ================================================
[2026-06-19 00:38:35,922.922 INFO    ] Launching Daemon at Fri Jun 19 00:38:35 IST 2026
[2026-06-19 00:38:35,933.933 INFO    ] ================================================
[2026-06-19 00:38:36,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:38:36
[2026-06-19 00:38:37,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:38:37,487.487 INFO    ] Initializing speech engine...
[2026-06-19 00:38:37,503.503 INFO    ] 2026-06-19 00:38:37
[2026-06-19 00:38:37,787.787 INFO    ] 2026-06-19 00:38:37
[2026-06-19 00:38:37,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:38:38,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:38:38,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:38:38,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:38:38,166.166 INFO    ] time= 19/06/2026 00:38:38
[2026-06-19 00:38:38,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:38:38,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:38:38,284.284 INFO    ] No existing commands found in stream
[2026-06-19 00:38:43,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:38:43,300.300 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 00:38:46,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:38:46,229.229 INFO    ] Checking for system updates...
[2026-06-19 00:38:46,266.266 INFO    ] 200
[2026-06-19 00:38:46,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:46,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:38:46,326.326 INFO    ] No update needed
[2026-06-19 00:38:46,329.329 INFO    ] Checking for camera pi updates...
[2026-06-19 00:38:46,376.376 INFO    ] 200
[2026-06-19 00:38:46,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:46,418.418 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:38:46,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:38:46,453.453 INFO    ] No camera update needed
[2026-06-19 00:38:46,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:38:46,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:38:46,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:38:46,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:38:48,509.509 INFO    ] ================================================
[2026-06-19 00:38:48,525.525 INFO    ] Launching Daemon at Fri Jun 19 00:38:48 IST 2026
[2026-06-19 00:38:48,536.536 INFO    ] ================================================
[2026-06-19 00:38:49,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:38:49
[2026-06-19 00:38:49,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:38:50,075.075 INFO    ] Initializing speech engine...
[2026-06-19 00:38:50,084.084 INFO    ] 2026-06-19 00:38:50
[2026-06-19 00:38:50,396.396 INFO    ] 2026-06-19 00:38:50
[2026-06-19 00:38:50,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:38:50,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:38:50,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:38:50,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:38:50,898.898 INFO    ] time= 19/06/2026 00:38:50
[2026-06-19 00:38:50,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:38:51,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:38:51,069.069 INFO    ] No existing commands found in stream
[2026-06-19 00:38:56,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:38:56,107.107 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 00:38:57,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:38:57,673.673 INFO    ] Checking for system updates...
[2026-06-19 00:38:57,714.714 INFO    ] 200
[2026-06-19 00:38:57,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:57,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:38:57,774.774 INFO    ] No update needed
[2026-06-19 00:38:57,777.777 INFO    ] Checking for camera pi updates...
[2026-06-19 00:38:57,816.816 INFO    ] 200
[2026-06-19 00:38:57,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:38:57,867.867 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:38:57,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:38:57,918.918 INFO    ] No camera update needed
[2026-06-19 00:38:57,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:38:57,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:38:57,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:38:57,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:38:59,976.976 INFO    ] ================================================
[2026-06-19 00:38:59,993.993 INFO    ] Launching Daemon at Fri Jun 19 00:38:59 IST 2026
[2026-06-19 00:39:00,004.004 INFO    ] ================================================
[2026-06-19 00:39:00,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:39:00
[2026-06-19 00:39:01,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:39:01,450.450 INFO    ] Initializing speech engine...
[2026-06-19 00:39:01,457.457 INFO    ] 2026-06-19 00:39:01
[2026-06-19 00:39:01,801.801 INFO    ] 2026-06-19 00:39:01
[2026-06-19 00:39:01,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:39:02,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:39:02,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:39:02,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:39:02,182.182 INFO    ] time= 19/06/2026 00:39:02
[2026-06-19 00:39:02,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:39:02,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:39:02,277.277 INFO    ] No existing commands found in stream
[2026-06-19 00:39:07,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:39:07,291.291 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 00:39:07,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:39:07,857.857 INFO    ] Checking for system updates...
[2026-06-19 00:39:07,893.893 INFO    ] 200
[2026-06-19 00:39:07,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:07,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:39:07,952.952 INFO    ] No update needed
[2026-06-19 00:39:07,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 00:39:07,988.988 INFO    ] 200
[2026-06-19 00:39:07,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:08,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:39:08,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:39:08,075.075 INFO    ] No camera update needed
[2026-06-19 00:39:08,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:39:08,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:39:08,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:39:08,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:39:10,130.130 INFO    ] ================================================
[2026-06-19 00:39:10,146.146 INFO    ] Launching Daemon at Fri Jun 19 00:39:10 IST 2026
[2026-06-19 00:39:10,157.157 INFO    ] ================================================
[2026-06-19 00:39:10,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:39:10
[2026-06-19 00:39:11,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:39:11,825.825 INFO    ] Initializing speech engine...
[2026-06-19 00:39:11,840.840 INFO    ] 2026-06-19 00:39:11
[2026-06-19 00:39:12,123.123 INFO    ] 2026-06-19 00:39:12
[2026-06-19 00:39:12,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:39:12,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:39:12,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:39:12,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:39:12,586.586 INFO    ] time= 19/06/2026 00:39:12
[2026-06-19 00:39:12,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:39:12,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:39:12,727.727 INFO    ] No existing commands found in stream
[2026-06-19 00:39:17,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:39:17,743.743 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 00:39:20,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:39:20,147.147 INFO    ] Checking for system updates...
[2026-06-19 00:39:20,186.186 INFO    ] 200
[2026-06-19 00:39:20,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:20,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:39:20,253.253 INFO    ] No update needed
[2026-06-19 00:39:20,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 00:39:20,298.298 INFO    ] 200
[2026-06-19 00:39:20,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:20,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:39:20,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:39:20,494.494 INFO    ] No camera update needed
[2026-06-19 00:39:20,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:39:20,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:39:20,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:39:20,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:39:22,554.554 INFO    ] ================================================
[2026-06-19 00:39:22,570.570 INFO    ] Launching Daemon at Fri Jun 19 00:39:22 IST 2026
[2026-06-19 00:39:22,582.582 INFO    ] ================================================
[2026-06-19 00:39:23,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:39:23
[2026-06-19 00:39:23,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:39:24,005.005 INFO    ] Initializing speech engine...
[2026-06-19 00:39:24,021.021 INFO    ] 2026-06-19 00:39:24
[2026-06-19 00:39:24,313.313 INFO    ] 2026-06-19 00:39:24
[2026-06-19 00:39:24,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:39:24,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:39:24,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:39:24,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:39:24,740.740 INFO    ] time= 19/06/2026 00:39:24
[2026-06-19 00:39:24,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:39:24,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:39:24,826.826 INFO    ] No existing commands found in stream
[2026-06-19 00:39:29,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:39:29,842.842 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 00:39:31,839.839 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:39:31,842.842 INFO    ] Checking for system updates...
[2026-06-19 00:39:31,880.880 INFO    ] 200
[2026-06-19 00:39:31,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:31,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:39:31,952.952 INFO    ] No update needed
[2026-06-19 00:39:31,955.955 INFO    ] Checking for camera pi updates...
[2026-06-19 00:39:31,994.994 INFO    ] 200
[2026-06-19 00:39:31,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:32,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:39:32,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:39:32,079.079 INFO    ] No camera update needed
[2026-06-19 00:39:32,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:39:32,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:39:32,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:39:32,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:39:34,137.137 INFO    ] ================================================
[2026-06-19 00:39:34,153.153 INFO    ] Launching Daemon at Fri Jun 19 00:39:34 IST 2026
[2026-06-19 00:39:34,165.165 INFO    ] ================================================
[2026-06-19 00:39:34,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:39:34
[2026-06-19 00:39:35,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:39:35,601.601 INFO    ] Initializing speech engine...
[2026-06-19 00:39:35,610.610 INFO    ] 2026-06-19 00:39:35
[2026-06-19 00:39:35,865.865 INFO    ] 2026-06-19 00:39:35
[2026-06-19 00:39:35,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:39:36,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:39:36,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:39:36,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:39:36,234.234 INFO    ] time= 19/06/2026 00:39:36
[2026-06-19 00:39:36,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:39:36,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:39:36,364.364 INFO    ] No existing commands found in stream
[2026-06-19 00:39:41,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:39:41,380.380 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 00:39:44,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:39:44,985.985 INFO    ] Checking for system updates...
[2026-06-19 00:39:45,024.024 INFO    ] 200
[2026-06-19 00:39:45,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:45,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:39:45,083.083 INFO    ] No update needed
[2026-06-19 00:39:45,086.086 INFO    ] Checking for camera pi updates...
[2026-06-19 00:39:45,120.120 INFO    ] 200
[2026-06-19 00:39:45,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:45,166.166 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:39:45,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:39:45,203.203 INFO    ] No camera update needed
[2026-06-19 00:39:45,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:39:45,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:39:45,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:39:45,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:39:47,263.263 INFO    ] ================================================
[2026-06-19 00:39:47,279.279 INFO    ] Launching Daemon at Fri Jun 19 00:39:47 IST 2026
[2026-06-19 00:39:47,291.291 INFO    ] ================================================
[2026-06-19 00:39:47,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:39:47
[2026-06-19 00:39:48,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:39:48,716.716 INFO    ] Initializing speech engine...
[2026-06-19 00:39:48,725.725 INFO    ] 2026-06-19 00:39:48
[2026-06-19 00:39:48,975.975 INFO    ] 2026-06-19 00:39:48
[2026-06-19 00:39:49,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:39:49,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:39:49,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:39:49,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:39:49,418.418 INFO    ] time= 19/06/2026 00:39:49
[2026-06-19 00:39:49,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:39:49,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:39:49,577.577 INFO    ] No existing commands found in stream
[2026-06-19 00:39:54,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:39:54,596.596 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 00:39:57,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:39:57,593.593 INFO    ] Checking for system updates...
[2026-06-19 00:39:57,634.634 INFO    ] 200
[2026-06-19 00:39:57,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:57,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:39:57,693.693 INFO    ] No update needed
[2026-06-19 00:39:57,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 00:39:57,729.729 INFO    ] 200
[2026-06-19 00:39:57,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:39:57,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:39:57,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:39:57,823.823 INFO    ] No camera update needed
[2026-06-19 00:39:57,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:39:57,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:39:57,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:39:57,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:39:59,879.879 INFO    ] ================================================
[2026-06-19 00:39:59,894.894 INFO    ] Launching Daemon at Fri Jun 19 00:39:59 IST 2026
[2026-06-19 00:39:59,905.905 INFO    ] ================================================
[2026-06-19 00:40:00,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:40:00
[2026-06-19 00:40:01,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:40:01,380.380 INFO    ] Initializing speech engine...
[2026-06-19 00:40:01,391.391 INFO    ] 2026-06-19 00:40:01
[2026-06-19 00:40:01,658.658 INFO    ] 2026-06-19 00:40:01
[2026-06-19 00:40:01,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:40:02,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:40:02,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:40:02,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:40:02,523.523 INFO    ] time= 19/06/2026 00:40:02
[2026-06-19 00:40:02,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:40:02,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:40:02,656.656 INFO    ] No existing commands found in stream
[2026-06-19 00:40:07,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:40:07,669.669 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 00:40:11,063.063 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:40:11,066.066 INFO    ] Checking for system updates...
[2026-06-19 00:40:11,102.102 INFO    ] 200
[2026-06-19 00:40:11,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:40:11,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:40:11,160.160 INFO    ] No update needed
[2026-06-19 00:40:11,162.162 INFO    ] Checking for camera pi updates...
[2026-06-19 00:40:11,200.200 INFO    ] 200
[2026-06-19 00:40:11,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:40:11,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:40:11,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:40:11,294.294 INFO    ] No camera update needed
[2026-06-19 00:40:11,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:40:11,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:40:11,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:40:11,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:40:13,351.351 INFO    ] ================================================
[2026-06-19 00:40:13,367.367 INFO    ] Launching Daemon at Fri Jun 19 00:40:13 IST 2026
[2026-06-19 00:40:13,378.378 INFO    ] ================================================
[2026-06-19 00:40:13,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:40:13
[2026-06-19 00:40:14,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:40:14,788.788 INFO    ] Initializing speech engine...
[2026-06-19 00:40:14,795.795 INFO    ] 2026-06-19 00:40:14
[2026-06-19 00:40:15,100.100 INFO    ] 2026-06-19 00:40:15
[2026-06-19 00:40:15,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:40:15,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:40:15,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:40:15,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:40:15,523.523 INFO    ] time= 19/06/2026 00:40:15
[2026-06-19 00:40:15,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:40:15,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:40:15,607.607 INFO    ] No existing commands found in stream
[2026-06-19 00:40:20,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:40:20,623.623 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 00:40:24,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:40:24,893.893 INFO    ] Checking for system updates...
[2026-06-19 00:40:24,929.929 INFO    ] 200
[2026-06-19 00:40:24,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:40:24,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:40:24,987.987 INFO    ] No update needed
[2026-06-19 00:40:24,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 00:40:25,027.027 INFO    ] 200
[2026-06-19 00:40:25,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:40:25,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:40:25,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:40:25,121.121 INFO    ] No camera update needed
[2026-06-19 00:40:25,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:40:25,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:40:25,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:40:25,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:40:27,178.178 INFO    ] ================================================
[2026-06-19 00:40:27,194.194 INFO    ] Launching Daemon at Fri Jun 19 00:40:27 IST 2026
[2026-06-19 00:40:27,205.205 INFO    ] ================================================
[2026-06-19 00:40:27,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:40:27
[2026-06-19 00:40:28,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:40:28,680.680 INFO    ] Initializing speech engine...
[2026-06-19 00:40:28,687.687 INFO    ] 2026-06-19 00:40:28
[2026-06-19 00:40:28,935.935 INFO    ] 2026-06-19 00:40:28
[2026-06-19 00:40:28,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:40:29,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:40:29,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:40:29,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:40:29,419.419 INFO    ] time= 19/06/2026 00:40:29
[2026-06-19 00:40:29,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:40:29,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:40:29,560.560 INFO    ] No existing commands found in stream
[2026-06-19 00:40:34,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:40:34,575.575 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 00:40:38,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:40:38,415.415 INFO    ] Checking for system updates...
[2026-06-19 00:40:38,455.455 INFO    ] 200
[2026-06-19 00:40:38,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:40:38,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:40:38,518.518 INFO    ] No update needed
[2026-06-19 00:40:38,520.520 INFO    ] Checking for camera pi updates...
[2026-06-19 00:40:38,557.557 INFO    ] 200
[2026-06-19 00:40:38,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:40:38,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:40:38,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:40:38,644.644 INFO    ] No camera update needed
[2026-06-19 00:40:38,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:40:38,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:40:38,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:40:38,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:40:40,705.705 INFO    ] ================================================
[2026-06-19 00:40:40,720.720 INFO    ] Launching Daemon at Fri Jun 19 00:40:40 IST 2026
[2026-06-19 00:40:40,732.732 INFO    ] ================================================
[2026-06-19 00:40:41,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:40:41
[2026-06-19 00:40:41,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:40:42,211.211 INFO    ] Initializing speech engine...
[2026-06-19 00:40:42,222.222 INFO    ] 2026-06-19 00:40:42
[2026-06-19 00:40:42,485.485 INFO    ] 2026-06-19 00:40:42
[2026-06-19 00:40:42,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:40:42,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:40:42,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:40:42,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:40:42,936.936 INFO    ] time= 19/06/2026 00:40:42
[2026-06-19 00:40:42,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:40:43,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:40:43,118.118 INFO    ] No existing commands found in stream
[2026-06-19 00:40:48,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:40:48,153.153 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 00:40:49,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:40:49,286.286 INFO    ] Checking for system updates...
[2026-06-19 00:40:49,325.325 INFO    ] 200
[2026-06-19 00:40:49,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:40:49,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:40:49,389.389 INFO    ] No update needed
[2026-06-19 00:40:49,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 00:40:49,425.425 INFO    ] 200
[2026-06-19 00:40:49,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:40:49,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:40:49,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:40:49,520.520 INFO    ] No camera update needed
[2026-06-19 00:40:49,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:40:49,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:40:49,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:40:49,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:40:51,576.576 INFO    ] ================================================
[2026-06-19 00:40:51,591.591 INFO    ] Launching Daemon at Fri Jun 19 00:40:51 IST 2026
[2026-06-19 00:40:51,602.602 INFO    ] ================================================
[2026-06-19 00:40:52,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:40:52
[2026-06-19 00:40:52,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:40:53,244.244 INFO    ] Initializing speech engine...
[2026-06-19 00:40:53,253.253 INFO    ] 2026-06-19 00:40:53
[2026-06-19 00:40:53,526.526 INFO    ] 2026-06-19 00:40:53
[2026-06-19 00:40:53,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:40:53,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:40:53,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:40:53,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:40:54,040.040 INFO    ] time= 19/06/2026 00:40:53
[2026-06-19 00:40:54,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:40:54,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:40:54,215.215 INFO    ] No existing commands found in stream
[2026-06-19 00:40:59,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:40:59,236.236 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 00:41:03,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:41:03,523.523 INFO    ] Checking for system updates...
[2026-06-19 00:41:03,568.568 INFO    ] 200
[2026-06-19 00:41:03,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:03,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:41:03,640.640 INFO    ] No update needed
[2026-06-19 00:41:03,644.644 INFO    ] Checking for camera pi updates...
[2026-06-19 00:41:03,686.686 INFO    ] 200
[2026-06-19 00:41:03,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:03,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:41:03,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:41:03,794.794 INFO    ] No camera update needed
[2026-06-19 00:41:03,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:41:03,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:41:03,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:41:03,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:41:05,853.853 INFO    ] ================================================
[2026-06-19 00:41:05,869.869 INFO    ] Launching Daemon at Fri Jun 19 00:41:05 IST 2026
[2026-06-19 00:41:05,880.880 INFO    ] ================================================
[2026-06-19 00:41:06,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:41:06
[2026-06-19 00:41:07,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:41:07,348.348 INFO    ] Initializing speech engine...
[2026-06-19 00:41:07,351.351 INFO    ] 2026-06-19 00:41:07
[2026-06-19 00:41:07,615.615 INFO    ] 2026-06-19 00:41:07
[2026-06-19 00:41:07,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:41:07,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:41:07,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:41:08,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:41:08,024.024 INFO    ] time= 19/06/2026 00:41:08
[2026-06-19 00:41:08,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:41:08,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:41:08,194.194 INFO    ] No existing commands found in stream
[2026-06-19 00:41:13,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:41:13,220.220 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 00:41:17,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:41:17,509.509 INFO    ] Checking for system updates...
[2026-06-19 00:41:17,546.546 INFO    ] 200
[2026-06-19 00:41:17,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:17,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:41:17,604.604 INFO    ] No update needed
[2026-06-19 00:41:17,606.606 INFO    ] Checking for camera pi updates...
[2026-06-19 00:41:17,640.640 INFO    ] 200
[2026-06-19 00:41:17,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:17,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:41:17,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:41:17,740.740 INFO    ] No camera update needed
[2026-06-19 00:41:17,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:41:17,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:41:17,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:41:17,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:41:19,797.797 INFO    ] ================================================
[2026-06-19 00:41:19,813.813 INFO    ] Launching Daemon at Fri Jun 19 00:41:19 IST 2026
[2026-06-19 00:41:19,824.824 INFO    ] ================================================
[2026-06-19 00:41:20,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:41:20
[2026-06-19 00:41:21,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:41:21,434.434 INFO    ] Initializing speech engine...
[2026-06-19 00:41:21,442.442 INFO    ] 2026-06-19 00:41:21
[2026-06-19 00:41:21,761.761 INFO    ] 2026-06-19 00:41:21
[2026-06-19 00:41:21,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:41:22,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:41:22,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:41:22,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:41:22,273.273 INFO    ] time= 19/06/2026 00:41:22
[2026-06-19 00:41:22,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:41:22,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:41:22,429.429 INFO    ] No existing commands found in stream
[2026-06-19 00:41:27,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:41:27,454.454 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 00:41:30,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:41:30,976.976 INFO    ] Checking for system updates...
[2026-06-19 00:41:31,013.013 INFO    ] 200
[2026-06-19 00:41:31,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:31,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:41:31,079.079 INFO    ] No update needed
[2026-06-19 00:41:31,082.082 INFO    ] Checking for camera pi updates...
[2026-06-19 00:41:31,120.120 INFO    ] 200
[2026-06-19 00:41:31,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:31,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:41:31,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:41:31,312.312 INFO    ] No camera update needed
[2026-06-19 00:41:31,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:41:31,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:41:31,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:41:31,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:41:33,372.372 INFO    ] ================================================
[2026-06-19 00:41:33,388.388 INFO    ] Launching Daemon at Fri Jun 19 00:41:33 IST 2026
[2026-06-19 00:41:33,399.399 INFO    ] ================================================
[2026-06-19 00:41:33,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:41:33
[2026-06-19 00:41:34,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:41:34,817.817 INFO    ] Initializing speech engine...
[2026-06-19 00:41:34,830.830 INFO    ] 2026-06-19 00:41:34
[2026-06-19 00:41:35,080.080 INFO    ] 2026-06-19 00:41:35
[2026-06-19 00:41:35,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:41:35,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:41:35,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:41:35,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:41:35,454.454 INFO    ] time= 19/06/2026 00:41:35
[2026-06-19 00:41:35,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:41:35,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:41:35,538.538 INFO    ] No existing commands found in stream
[2026-06-19 00:41:40,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:41:40,576.576 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 00:41:44,007.007 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:41:44,009.009 INFO    ] Checking for system updates...
[2026-06-19 00:41:44,046.046 INFO    ] 200
[2026-06-19 00:41:44,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:44,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:41:44,105.105 INFO    ] No update needed
[2026-06-19 00:41:44,108.108 INFO    ] Checking for camera pi updates...
[2026-06-19 00:41:44,142.142 INFO    ] 200
[2026-06-19 00:41:44,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:44,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:41:44,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:41:44,242.242 INFO    ] No camera update needed
[2026-06-19 00:41:44,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:41:44,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:41:44,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:41:44,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:41:46,299.299 INFO    ] ================================================
[2026-06-19 00:41:46,315.315 INFO    ] Launching Daemon at Fri Jun 19 00:41:46 IST 2026
[2026-06-19 00:41:46,326.326 INFO    ] ================================================
[2026-06-19 00:41:46,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:41:46
[2026-06-19 00:41:47,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:41:47,739.739 INFO    ] Initializing speech engine...
[2026-06-19 00:41:47,752.752 INFO    ] 2026-06-19 00:41:47
[2026-06-19 00:41:48,017.017 INFO    ] 2026-06-19 00:41:48
[2026-06-19 00:41:48,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:41:48,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:41:48,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:41:48,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:41:48,392.392 INFO    ] time= 19/06/2026 00:41:48
[2026-06-19 00:41:48,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:41:48,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:41:48,556.556 INFO    ] No existing commands found in stream
[2026-06-19 00:41:53,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:41:53,589.589 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 00:41:56,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:41:56,827.827 INFO    ] Checking for system updates...
[2026-06-19 00:41:56,866.866 INFO    ] 200
[2026-06-19 00:41:56,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:56,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:41:56,929.929 INFO    ] No update needed
[2026-06-19 00:41:56,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 00:41:56,965.965 INFO    ] 200
[2026-06-19 00:41:56,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:41:57,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:41:57,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:41:57,056.056 INFO    ] No camera update needed
[2026-06-19 00:41:57,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:41:57,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:41:57,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:41:57,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:41:59,118.118 INFO    ] ================================================
[2026-06-19 00:41:59,134.134 INFO    ] Launching Daemon at Fri Jun 19 00:41:59 IST 2026
[2026-06-19 00:41:59,144.144 INFO    ] ================================================
[2026-06-19 00:41:59,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:41:59
[2026-06-19 00:42:00,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:42:00,578.578 INFO    ] Initializing speech engine...
[2026-06-19 00:42:00,584.584 INFO    ] 2026-06-19 00:42:00
[2026-06-19 00:42:00,844.844 INFO    ] 2026-06-19 00:42:00
[2026-06-19 00:42:00,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:42:01,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:42:01,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:42:01,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:42:01,321.321 INFO    ] time= 19/06/2026 00:42:01
[2026-06-19 00:42:01,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:42:01,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:42:01,483.483 INFO    ] No existing commands found in stream
[2026-06-19 00:42:06,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:42:06,523.523 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 00:42:09,929.929 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:42:09,932.932 INFO    ] Checking for system updates...
[2026-06-19 00:42:09,969.969 INFO    ] 200
[2026-06-19 00:42:09,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:42:10,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:42:10,028.028 INFO    ] No update needed
[2026-06-19 00:42:10,031.031 INFO    ] Checking for camera pi updates...
[2026-06-19 00:42:10,067.067 INFO    ] 200
[2026-06-19 00:42:10,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:42:10,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:42:10,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:42:10,161.161 INFO    ] No camera update needed
[2026-06-19 00:42:10,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:42:10,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:42:10,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:42:10,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:42:12,223.223 INFO    ] ================================================
[2026-06-19 00:42:12,240.240 INFO    ] Launching Daemon at Fri Jun 19 00:42:12 IST 2026
[2026-06-19 00:42:12,251.251 INFO    ] ================================================
[2026-06-19 00:42:12,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:42:12
[2026-06-19 00:42:13,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:42:13,707.707 INFO    ] Initializing speech engine...
[2026-06-19 00:42:13,720.720 INFO    ] 2026-06-19 00:42:13
[2026-06-19 00:42:14,012.012 INFO    ] 2026-06-19 00:42:13
[2026-06-19 00:42:14,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:42:14,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:42:14,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:42:14,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:42:14,422.422 INFO    ] time= 19/06/2026 00:42:14
[2026-06-19 00:42:14,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:42:14,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:42:14,537.537 INFO    ] No existing commands found in stream
[2026-06-19 00:42:19,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:42:19,555.555 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 00:42:22,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:42:22,914.914 INFO    ] Checking for system updates...
[2026-06-19 00:42:22,956.956 INFO    ] 200
[2026-06-19 00:42:22,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:42:23,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:42:23,021.021 INFO    ] No update needed
[2026-06-19 00:42:23,024.024 INFO    ] Checking for camera pi updates...
[2026-06-19 00:42:23,062.062 INFO    ] 200
[2026-06-19 00:42:23,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:42:23,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:42:23,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:42:23,155.155 INFO    ] No camera update needed
[2026-06-19 00:42:23,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:42:23,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:42:23,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:42:23,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:42:25,210.210 INFO    ] ================================================
[2026-06-19 00:42:25,226.226 INFO    ] Launching Daemon at Fri Jun 19 00:42:25 IST 2026
[2026-06-19 00:42:25,238.238 INFO    ] ================================================
[2026-06-19 00:42:25,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:42:25
[2026-06-19 00:42:26,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:42:26,902.902 INFO    ] Initializing speech engine...
[2026-06-19 00:42:26,914.914 INFO    ] 2026-06-19 00:42:26
[2026-06-19 00:42:27,194.194 INFO    ] 2026-06-19 00:42:27
[2026-06-19 00:42:27,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:42:27,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:42:27,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:42:27,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:42:27,591.591 INFO    ] time= 19/06/2026 00:42:27
[2026-06-19 00:42:27,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:42:27,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:42:27,703.703 INFO    ] No existing commands found in stream
[2026-06-19 00:42:32,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:42:32,719.719 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 00:42:35,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:42:35,872.872 INFO    ] Checking for system updates...
[2026-06-19 00:42:35,916.916 INFO    ] 200
[2026-06-19 00:42:35,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:42:35,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:42:35,984.984 INFO    ] No update needed
[2026-06-19 00:42:35,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 00:42:36,025.025 INFO    ] 200
[2026-06-19 00:42:36,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:42:36,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:42:36,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:42:36,110.110 INFO    ] No camera update needed
[2026-06-19 00:42:36,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:42:36,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:42:36,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:42:36,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:42:38,169.169 INFO    ] ================================================
[2026-06-19 00:42:38,186.186 INFO    ] Launching Daemon at Fri Jun 19 00:42:38 IST 2026
[2026-06-19 00:42:38,197.197 INFO    ] ================================================
[2026-06-19 00:42:38,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:42:38
[2026-06-19 00:42:39,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:42:39,740.740 INFO    ] Initializing speech engine...
[2026-06-19 00:42:39,750.750 INFO    ] 2026-06-19 00:42:39
[2026-06-19 00:42:40,011.011 INFO    ] 2026-06-19 00:42:40
[2026-06-19 00:42:40,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:42:40,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:42:40,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:42:40,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:42:40,486.486 INFO    ] time= 19/06/2026 00:42:40
[2026-06-19 00:42:40,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:42:40,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:42:40,651.651 INFO    ] No existing commands found in stream
[2026-06-19 00:42:45,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:42:45,666.666 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 00:42:47,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:42:47,361.361 INFO    ] Checking for system updates...
[2026-06-19 00:42:47,397.397 INFO    ] 200
[2026-06-19 00:42:47,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:42:47,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:42:47,455.455 INFO    ] No update needed
[2026-06-19 00:42:47,458.458 INFO    ] Checking for camera pi updates...
[2026-06-19 00:42:47,491.491 INFO    ] 200
[2026-06-19 00:42:47,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:42:47,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:42:47,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:42:47,568.568 INFO    ] No camera update needed
[2026-06-19 00:42:47,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:42:47,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:42:47,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:42:47,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:42:49,626.626 INFO    ] ================================================
[2026-06-19 00:42:49,641.641 INFO    ] Launching Daemon at Fri Jun 19 00:42:49 IST 2026
[2026-06-19 00:42:49,652.652 INFO    ] ================================================
[2026-06-19 00:42:50,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:42:50
[2026-06-19 00:42:50,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:42:51,110.110 INFO    ] Initializing speech engine...
[2026-06-19 00:42:51,118.118 INFO    ] 2026-06-19 00:42:51
[2026-06-19 00:42:51,379.379 INFO    ] 2026-06-19 00:42:51
[2026-06-19 00:42:51,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:42:51,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:42:51,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:42:51,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:42:51,845.845 INFO    ] time= 19/06/2026 00:42:51
[2026-06-19 00:42:51,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:42:51,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:42:52,005.005 INFO    ] No existing commands found in stream
[2026-06-19 00:42:57,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:42:57,046.046 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 00:43:00,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:43:00,893.893 INFO    ] Checking for system updates...
[2026-06-19 00:43:00,934.934 INFO    ] 200
[2026-06-19 00:43:00,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:00,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:43:00,999.999 INFO    ] No update needed
[2026-06-19 00:43:01,001.001 INFO    ] Checking for camera pi updates...
[2026-06-19 00:43:01,036.036 INFO    ] 200
[2026-06-19 00:43:01,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:01,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:43:01,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:43:01,127.127 INFO    ] No camera update needed
[2026-06-19 00:43:01,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:43:01,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:43:01,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:43:01,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:43:03,197.197 INFO    ] ================================================
[2026-06-19 00:43:03,216.216 INFO    ] Launching Daemon at Fri Jun 19 00:43:03 IST 2026
[2026-06-19 00:43:03,230.230 INFO    ] ================================================
[2026-06-19 00:43:03,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:43:03
[2026-06-19 00:43:04,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:43:04,872.872 INFO    ] Initializing speech engine...
[2026-06-19 00:43:04,879.879 INFO    ] 2026-06-19 00:43:04
[2026-06-19 00:43:05,150.150 INFO    ] 2026-06-19 00:43:05
[2026-06-19 00:43:05,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:43:05,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:43:05,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:43:05,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:43:05,629.629 INFO    ] time= 19/06/2026 00:43:05
[2026-06-19 00:43:05,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:43:05,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:43:05,781.781 INFO    ] No existing commands found in stream
[2026-06-19 00:43:10,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:43:10,797.797 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 00:43:14,509.509 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:43:14,512.512 INFO    ] Checking for system updates...
[2026-06-19 00:43:14,549.549 INFO    ] 200
[2026-06-19 00:43:14,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:14,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:43:14,612.612 INFO    ] No update needed
[2026-06-19 00:43:14,614.614 INFO    ] Checking for camera pi updates...
[2026-06-19 00:43:14,651.651 INFO    ] 200
[2026-06-19 00:43:14,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:14,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:43:14,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:43:14,741.741 INFO    ] No camera update needed
[2026-06-19 00:43:14,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:43:14,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:43:14,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:43:14,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:43:16,796.796 INFO    ] ================================================
[2026-06-19 00:43:16,811.811 INFO    ] Launching Daemon at Fri Jun 19 00:43:16 IST 2026
[2026-06-19 00:43:16,822.822 INFO    ] ================================================
[2026-06-19 00:43:17,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:43:17
[2026-06-19 00:43:18,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:43:18,283.283 INFO    ] Initializing speech engine...
[2026-06-19 00:43:18,289.289 INFO    ] 2026-06-19 00:43:18
[2026-06-19 00:43:18,554.554 INFO    ] 2026-06-19 00:43:18
[2026-06-19 00:43:18,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:43:18,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:43:18,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:43:19,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:43:19,054.054 INFO    ] time= 19/06/2026 00:43:19
[2026-06-19 00:43:19,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:43:19,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:43:19,250.250 INFO    ] No existing commands found in stream
[2026-06-19 00:43:24,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:43:24,265.265 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 00:43:28,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:43:28,209.209 INFO    ] Checking for system updates...
[2026-06-19 00:43:28,245.245 INFO    ] 200
[2026-06-19 00:43:28,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:28,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:43:28,303.303 INFO    ] No update needed
[2026-06-19 00:43:28,306.306 INFO    ] Checking for camera pi updates...
[2026-06-19 00:43:28,339.339 INFO    ] 200
[2026-06-19 00:43:28,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:28,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:43:28,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:43:28,443.443 INFO    ] No camera update needed
[2026-06-19 00:43:28,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:43:28,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:43:28,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:43:28,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:43:30,502.502 INFO    ] ================================================
[2026-06-19 00:43:30,518.518 INFO    ] Launching Daemon at Fri Jun 19 00:43:30 IST 2026
[2026-06-19 00:43:30,529.529 INFO    ] ================================================
[2026-06-19 00:43:31,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:43:31
[2026-06-19 00:43:31,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:43:32,150.150 INFO    ] Initializing speech engine...
[2026-06-19 00:43:32,161.161 INFO    ] 2026-06-19 00:43:32
[2026-06-19 00:43:32,436.436 INFO    ] 2026-06-19 00:43:32
[2026-06-19 00:43:32,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:43:32,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:43:32,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:43:32,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:43:32,971.971 INFO    ] time= 19/06/2026 00:43:32
[2026-06-19 00:43:33,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:43:33,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:43:33,152.152 INFO    ] No existing commands found in stream
[2026-06-19 00:43:38,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:43:38,176.176 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 00:43:41,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:43:41,064.064 INFO    ] Checking for system updates...
[2026-06-19 00:43:41,104.104 INFO    ] 200
[2026-06-19 00:43:41,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:41,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:43:41,161.161 INFO    ] No update needed
[2026-06-19 00:43:41,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 00:43:41,201.201 INFO    ] 200
[2026-06-19 00:43:41,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:41,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:43:41,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:43:41,389.389 INFO    ] No camera update needed
[2026-06-19 00:43:41,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:43:41,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:43:41,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:43:41,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:43:43,447.447 INFO    ] ================================================
[2026-06-19 00:43:43,463.463 INFO    ] Launching Daemon at Fri Jun 19 00:43:43 IST 2026
[2026-06-19 00:43:43,474.474 INFO    ] ================================================
[2026-06-19 00:43:44,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:43:44
[2026-06-19 00:43:44,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:43:45,080.080 INFO    ] Initializing speech engine...
[2026-06-19 00:43:45,089.089 INFO    ] 2026-06-19 00:43:45
[2026-06-19 00:43:45,377.377 INFO    ] 2026-06-19 00:43:45
[2026-06-19 00:43:45,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:43:45,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:43:45,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:43:45,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:43:45,862.862 INFO    ] time= 19/06/2026 00:43:45
[2026-06-19 00:43:45,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:43:45,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:43:46,074.074 INFO    ] No existing commands found in stream
[2026-06-19 00:43:51,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:43:51,100.100 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 00:43:54,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:43:54,584.584 INFO    ] Checking for system updates...
[2026-06-19 00:43:54,624.624 INFO    ] 200
[2026-06-19 00:43:54,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:54,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:43:54,681.681 INFO    ] No update needed
[2026-06-19 00:43:54,683.683 INFO    ] Checking for camera pi updates...
[2026-06-19 00:43:54,720.720 INFO    ] 200
[2026-06-19 00:43:54,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:43:54,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:43:54,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:43:54,816.816 INFO    ] No camera update needed
[2026-06-19 00:43:54,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:43:54,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:43:54,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:43:54,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:43:56,871.871 INFO    ] ================================================
[2026-06-19 00:43:56,887.887 INFO    ] Launching Daemon at Fri Jun 19 00:43:56 IST 2026
[2026-06-19 00:43:56,899.899 INFO    ] ================================================
[2026-06-19 00:43:57,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:43:57
[2026-06-19 00:43:58,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:43:58,461.461 INFO    ] Initializing speech engine...
[2026-06-19 00:43:58,475.475 INFO    ] 2026-06-19 00:43:58
[2026-06-19 00:43:58,744.744 INFO    ] 2026-06-19 00:43:58
[2026-06-19 00:43:58,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:43:59,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:43:59,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:43:59,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:43:59,246.246 INFO    ] time= 19/06/2026 00:43:59
[2026-06-19 00:43:59,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:43:59,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:43:59,444.444 INFO    ] No existing commands found in stream
[2026-06-19 00:44:04,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:44:04,481.481 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 00:44:04,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:44:04,995.995 INFO    ] Checking for system updates...
[2026-06-19 00:44:05,036.036 INFO    ] 200
[2026-06-19 00:44:05,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:05,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:44:05,101.101 INFO    ] No update needed
[2026-06-19 00:44:05,103.103 INFO    ] Checking for camera pi updates...
[2026-06-19 00:44:05,137.137 INFO    ] 200
[2026-06-19 00:44:05,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:05,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:44:05,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:44:05,246.246 INFO    ] No camera update needed
[2026-06-19 00:44:05,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:44:05,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:44:05,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:44:05,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:44:07,302.302 INFO    ] ================================================
[2026-06-19 00:44:07,317.317 INFO    ] Launching Daemon at Fri Jun 19 00:44:07 IST 2026
[2026-06-19 00:44:07,328.328 INFO    ] ================================================
[2026-06-19 00:44:07,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:44:07
[2026-06-19 00:44:08,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:44:08,957.957 INFO    ] Initializing speech engine...
[2026-06-19 00:44:08,965.965 INFO    ] 2026-06-19 00:44:08
[2026-06-19 00:44:09,239.239 INFO    ] 2026-06-19 00:44:09
[2026-06-19 00:44:09,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:44:09,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:44:09,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:44:09,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:44:09,718.718 INFO    ] time= 19/06/2026 00:44:09
[2026-06-19 00:44:09,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:44:09,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:44:09,870.870 INFO    ] No existing commands found in stream
[2026-06-19 00:44:14,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:44:14,886.886 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 00:44:15,856.856 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:44:15,859.859 INFO    ] Checking for system updates...
[2026-06-19 00:44:15,897.897 INFO    ] 200
[2026-06-19 00:44:15,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:15,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:44:15,966.966 INFO    ] No update needed
[2026-06-19 00:44:15,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 00:44:16,002.002 INFO    ] 200
[2026-06-19 00:44:16,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:16,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:44:16,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:44:16,083.083 INFO    ] No camera update needed
[2026-06-19 00:44:16,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:44:16,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:44:16,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:44:16,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:44:18,139.139 INFO    ] ================================================
[2026-06-19 00:44:18,156.156 INFO    ] Launching Daemon at Fri Jun 19 00:44:18 IST 2026
[2026-06-19 00:44:18,167.167 INFO    ] ================================================
[2026-06-19 00:44:18,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:44:18
[2026-06-19 00:44:19,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:44:19,842.842 INFO    ] Initializing speech engine...
[2026-06-19 00:44:19,855.855 INFO    ] 2026-06-19 00:44:19
[2026-06-19 00:44:20,141.141 INFO    ] 2026-06-19 00:44:20
[2026-06-19 00:44:20,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:44:20,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:44:20,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:44:20,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:44:20,607.607 INFO    ] time= 19/06/2026 00:44:20
[2026-06-19 00:44:20,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:44:20,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:44:20,754.754 INFO    ] No existing commands found in stream
[2026-06-19 00:44:25,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:44:25,770.770 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 00:44:27,521.521 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:44:27,524.524 INFO    ] Checking for system updates...
[2026-06-19 00:44:27,561.561 INFO    ] 200
[2026-06-19 00:44:27,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:27,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:44:27,630.630 INFO    ] No update needed
[2026-06-19 00:44:27,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 00:44:27,670.670 INFO    ] 200
[2026-06-19 00:44:27,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:27,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:44:27,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:44:27,763.763 INFO    ] No camera update needed
[2026-06-19 00:44:27,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:44:27,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:44:27,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:44:27,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:44:29,819.819 INFO    ] ================================================
[2026-06-19 00:44:29,836.836 INFO    ] Launching Daemon at Fri Jun 19 00:44:29 IST 2026
[2026-06-19 00:44:29,848.848 INFO    ] ================================================
[2026-06-19 00:44:30,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:44:30
[2026-06-19 00:44:31,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:44:31,315.315 INFO    ] Initializing speech engine...
[2026-06-19 00:44:31,332.332 INFO    ] 2026-06-19 00:44:31
[2026-06-19 00:44:31,610.610 INFO    ] 2026-06-19 00:44:31
[2026-06-19 00:44:31,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:44:31,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:44:31,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:44:32,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:44:32,028.028 INFO    ] time= 19/06/2026 00:44:32
[2026-06-19 00:44:32,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:44:32,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:44:32,162.162 INFO    ] No existing commands found in stream
[2026-06-19 00:44:37,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:44:37,177.177 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 00:44:38,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:44:38,333.333 INFO    ] Checking for system updates...
[2026-06-19 00:44:38,369.369 INFO    ] 200
[2026-06-19 00:44:38,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:38,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:44:38,434.434 INFO    ] No update needed
[2026-06-19 00:44:38,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 00:44:38,475.475 INFO    ] 200
[2026-06-19 00:44:38,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:38,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:44:38,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:44:38,567.567 INFO    ] No camera update needed
[2026-06-19 00:44:38,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:44:38,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:44:38,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:44:38,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:44:40,623.623 INFO    ] ================================================
[2026-06-19 00:44:40,639.639 INFO    ] Launching Daemon at Fri Jun 19 00:44:40 IST 2026
[2026-06-19 00:44:40,650.650 INFO    ] ================================================
[2026-06-19 00:44:41,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:44:41
[2026-06-19 00:44:41,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:44:42,127.127 INFO    ] Initializing speech engine...
[2026-06-19 00:44:42,133.133 INFO    ] 2026-06-19 00:44:42
[2026-06-19 00:44:42,395.395 INFO    ] 2026-06-19 00:44:42
[2026-06-19 00:44:42,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:44:42,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:44:42,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:44:42,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:44:42,857.857 INFO    ] time= 19/06/2026 00:44:42
[2026-06-19 00:44:42,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:44:42,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:44:43,007.007 INFO    ] No existing commands found in stream
[2026-06-19 00:44:48,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:44:48,022.022 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 00:44:50,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:44:50,170.170 INFO    ] Checking for system updates...
[2026-06-19 00:44:50,210.210 INFO    ] 200
[2026-06-19 00:44:50,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:50,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:44:50,268.268 INFO    ] No update needed
[2026-06-19 00:44:50,270.270 INFO    ] Checking for camera pi updates...
[2026-06-19 00:44:50,306.306 INFO    ] 200
[2026-06-19 00:44:50,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:44:50,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:44:50,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:44:50,408.408 INFO    ] No camera update needed
[2026-06-19 00:44:50,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:44:50,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:44:50,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:44:50,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:44:52,464.464 INFO    ] ================================================
[2026-06-19 00:44:52,480.480 INFO    ] Launching Daemon at Fri Jun 19 00:44:52 IST 2026
[2026-06-19 00:44:52,491.491 INFO    ] ================================================
[2026-06-19 00:44:53,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:44:53
[2026-06-19 00:44:53,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:44:53,909.909 INFO    ] Initializing speech engine...
[2026-06-19 00:44:53,918.918 INFO    ] 2026-06-19 00:44:53
[2026-06-19 00:44:54,163.163 INFO    ] 2026-06-19 00:44:54
[2026-06-19 00:44:54,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:44:54,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:44:54,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:44:54,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:44:54,613.613 INFO    ] time= 19/06/2026 00:44:54
[2026-06-19 00:44:54,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:44:54,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:44:54,781.781 INFO    ] No existing commands found in stream
[2026-06-19 00:44:59,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:44:59,796.796 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 00:45:01,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:45:01,844.844 INFO    ] Checking for system updates...
[2026-06-19 00:45:02,200.200 INFO    ] 200
[2026-06-19 00:45:02,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:02,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:45:02,369.369 INFO    ] No update needed
[2026-06-19 00:45:02,377.377 INFO    ] Checking for camera pi updates...
[2026-06-19 00:45:02,462.462 INFO    ] 200
[2026-06-19 00:45:02,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:02,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:45:02,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:45:02,640.640 INFO    ] No camera update needed
[2026-06-19 00:45:02,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:45:02,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:45:02,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:45:02,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:45:04,711.711 INFO    ] ================================================
[2026-06-19 00:45:04,726.726 INFO    ] Launching Daemon at Fri Jun 19 00:45:04 IST 2026
[2026-06-19 00:45:04,737.737 INFO    ] ================================================
[2026-06-19 00:45:05,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:45:05
[2026-06-19 00:45:06,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:45:06,383.383 INFO    ] Initializing speech engine...
[2026-06-19 00:45:06,396.396 INFO    ] 2026-06-19 00:45:06
[2026-06-19 00:45:06,705.705 INFO    ] 2026-06-19 00:45:06
[2026-06-19 00:45:06,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:45:06,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:45:07,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:45:07,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:45:07,241.241 INFO    ] time= 19/06/2026 00:45:07
[2026-06-19 00:45:07,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:45:07,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:45:07,366.366 INFO    ] No existing commands found in stream
[2026-06-19 00:45:12,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:45:12,391.391 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 00:45:14,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:45:14,038.038 INFO    ] Checking for system updates...
[2026-06-19 00:45:14,078.078 INFO    ] 200
[2026-06-19 00:45:14,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:14,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:45:14,135.135 INFO    ] No update needed
[2026-06-19 00:45:14,138.138 INFO    ] Checking for camera pi updates...
[2026-06-19 00:45:14,176.176 INFO    ] 200
[2026-06-19 00:45:14,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:14,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:45:14,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:45:14,265.265 INFO    ] No camera update needed
[2026-06-19 00:45:14,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:45:14,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:45:14,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:45:14,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:45:16,319.319 INFO    ] ================================================
[2026-06-19 00:45:16,334.334 INFO    ] Launching Daemon at Fri Jun 19 00:45:16 IST 2026
[2026-06-19 00:45:16,350.350 INFO    ] ================================================
[2026-06-19 00:45:16,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:45:16
[2026-06-19 00:45:17,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:45:17,970.970 INFO    ] Initializing speech engine...
[2026-06-19 00:45:17,977.977 INFO    ] 2026-06-19 00:45:17
[2026-06-19 00:45:18,254.254 INFO    ] 2026-06-19 00:45:18
[2026-06-19 00:45:18,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:45:18,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:45:18,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:45:18,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:45:18,754.754 INFO    ] time= 19/06/2026 00:45:18
[2026-06-19 00:45:18,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:45:18,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:45:18,955.955 INFO    ] No existing commands found in stream
[2026-06-19 00:45:23,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:45:23,983.983 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 00:45:26,731.731 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:45:26,734.734 INFO    ] Checking for system updates...
[2026-06-19 00:45:26,770.770 INFO    ] 200
[2026-06-19 00:45:26,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:26,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:45:26,828.828 INFO    ] No update needed
[2026-06-19 00:45:26,830.830 INFO    ] Checking for camera pi updates...
[2026-06-19 00:45:26,864.864 INFO    ] 200
[2026-06-19 00:45:26,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:26,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:45:26,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:45:26,960.960 INFO    ] No camera update needed
[2026-06-19 00:45:26,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:45:26,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:45:26,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:45:26,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:45:29,017.017 INFO    ] ================================================
[2026-06-19 00:45:29,032.032 INFO    ] Launching Daemon at Fri Jun 19 00:45:29 IST 2026
[2026-06-19 00:45:29,043.043 INFO    ] ================================================
[2026-06-19 00:45:29,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:45:29
[2026-06-19 00:45:30,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:45:30,512.512 INFO    ] Initializing speech engine...
[2026-06-19 00:45:30,520.520 INFO    ] 2026-06-19 00:45:30
[2026-06-19 00:45:30,780.780 INFO    ] 2026-06-19 00:45:30
[2026-06-19 00:45:30,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:45:31,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:45:31,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:45:31,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:45:31,257.257 INFO    ] time= 19/06/2026 00:45:31
[2026-06-19 00:45:31,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:45:31,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:45:31,392.392 INFO    ] No existing commands found in stream
[2026-06-19 00:45:36,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:45:36,407.407 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 00:45:37,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:45:37,290.290 INFO    ] Checking for system updates...
[2026-06-19 00:45:37,327.327 INFO    ] 200
[2026-06-19 00:45:37,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:37,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:45:37,384.384 INFO    ] No update needed
[2026-06-19 00:45:37,387.387 INFO    ] Checking for camera pi updates...
[2026-06-19 00:45:37,426.426 INFO    ] 200
[2026-06-19 00:45:37,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:37,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:45:37,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:45:37,517.517 INFO    ] No camera update needed
[2026-06-19 00:45:37,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:45:37,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:45:37,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:45:37,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:45:39,572.572 INFO    ] ================================================
[2026-06-19 00:45:39,587.587 INFO    ] Launching Daemon at Fri Jun 19 00:45:39 IST 2026
[2026-06-19 00:45:39,599.599 INFO    ] ================================================
[2026-06-19 00:45:40,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:45:40
[2026-06-19 00:45:40,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:45:41,254.254 INFO    ] Initializing speech engine...
[2026-06-19 00:45:41,269.269 INFO    ] 2026-06-19 00:45:41
[2026-06-19 00:45:41,538.538 INFO    ] 2026-06-19 00:45:41
[2026-06-19 00:45:41,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:45:41,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:45:41,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:45:41,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:45:42,049.049 INFO    ] time= 19/06/2026 00:45:41
[2026-06-19 00:45:42,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:45:42,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:45:42,260.260 INFO    ] No existing commands found in stream
[2026-06-19 00:45:47,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:45:47,288.288 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 00:45:48,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:45:48,410.410 INFO    ] Checking for system updates...
[2026-06-19 00:45:48,450.450 INFO    ] 200
[2026-06-19 00:45:48,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:48,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:45:48,522.522 INFO    ] No update needed
[2026-06-19 00:45:48,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 00:45:48,559.559 INFO    ] 200
[2026-06-19 00:45:48,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:45:48,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:45:48,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:45:48,756.756 INFO    ] No camera update needed
[2026-06-19 00:45:48,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:45:48,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:45:48,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:45:48,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:45:50,811.811 INFO    ] ================================================
[2026-06-19 00:45:50,827.827 INFO    ] Launching Daemon at Fri Jun 19 00:45:50 IST 2026
[2026-06-19 00:45:50,838.838 INFO    ] ================================================
[2026-06-19 00:45:51,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:45:51
[2026-06-19 00:45:51,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:45:52,263.263 INFO    ] Initializing speech engine...
[2026-06-19 00:45:52,273.273 INFO    ] 2026-06-19 00:45:52
[2026-06-19 00:45:52,522.522 INFO    ] 2026-06-19 00:45:52
[2026-06-19 00:45:52,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:45:52,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:45:52,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:45:52,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:45:52,898.898 INFO    ] time= 19/06/2026 00:45:52
[2026-06-19 00:45:52,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:45:52,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:45:53,060.060 INFO    ] No existing commands found in stream
[2026-06-19 00:45:58,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:45:58,088.088 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 00:46:02,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:46:02,324.324 INFO    ] Checking for system updates...
[2026-06-19 00:46:02,370.370 INFO    ] 200
[2026-06-19 00:46:02,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:02,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:46:02,461.461 INFO    ] No update needed
[2026-06-19 00:46:02,464.464 INFO    ] Checking for camera pi updates...
[2026-06-19 00:46:02,502.502 INFO    ] 200
[2026-06-19 00:46:02,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:02,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:46:02,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:46:02,600.600 INFO    ] No camera update needed
[2026-06-19 00:46:02,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:46:02,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:46:02,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:46:02,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:46:04,661.661 INFO    ] ================================================
[2026-06-19 00:46:04,676.676 INFO    ] Launching Daemon at Fri Jun 19 00:46:04 IST 2026
[2026-06-19 00:46:04,687.687 INFO    ] ================================================
[2026-06-19 00:46:05,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:46:05
[2026-06-19 00:46:05,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:46:06,111.111 INFO    ] Initializing speech engine...
[2026-06-19 00:46:06,117.117 INFO    ] 2026-06-19 00:46:06
[2026-06-19 00:46:06,391.391 INFO    ] 2026-06-19 00:46:06
[2026-06-19 00:46:06,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:46:06,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:46:06,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:46:06,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:46:06,771.771 INFO    ] time= 19/06/2026 00:46:06
[2026-06-19 00:46:06,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:46:06,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:46:06,849.849 INFO    ] No existing commands found in stream
[2026-06-19 00:46:11,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:46:11,867.867 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 00:46:14,221.221 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:46:14,223.223 INFO    ] Checking for system updates...
[2026-06-19 00:46:14,259.259 INFO    ] 200
[2026-06-19 00:46:14,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:14,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:46:14,322.322 INFO    ] No update needed
[2026-06-19 00:46:14,324.324 INFO    ] Checking for camera pi updates...
[2026-06-19 00:46:14,358.358 INFO    ] 200
[2026-06-19 00:46:14,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:14,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:46:14,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:46:14,456.456 INFO    ] No camera update needed
[2026-06-19 00:46:14,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:46:14,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:46:14,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:46:14,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:46:16,513.513 INFO    ] ================================================
[2026-06-19 00:46:16,528.528 INFO    ] Launching Daemon at Fri Jun 19 00:46:16 IST 2026
[2026-06-19 00:46:16,539.539 INFO    ] ================================================
[2026-06-19 00:46:17,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:46:17
[2026-06-19 00:46:17,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:46:17,992.992 INFO    ] Initializing speech engine...
[2026-06-19 00:46:18,010.010 INFO    ] 2026-06-19 00:46:17
[2026-06-19 00:46:18,281.281 INFO    ] 2026-06-19 00:46:18
[2026-06-19 00:46:18,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:46:18,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:46:18,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:46:18,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:46:18,697.697 INFO    ] time= 19/06/2026 00:46:18
[2026-06-19 00:46:18,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:46:18,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:46:18,840.840 INFO    ] No existing commands found in stream
[2026-06-19 00:46:23,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:46:23,873.873 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 00:46:25,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:46:25,123.123 INFO    ] Checking for system updates...
[2026-06-19 00:46:25,163.163 INFO    ] 200
[2026-06-19 00:46:25,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:25,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:46:25,228.228 INFO    ] No update needed
[2026-06-19 00:46:25,232.232 INFO    ] Checking for camera pi updates...
[2026-06-19 00:46:25,269.269 INFO    ] 200
[2026-06-19 00:46:25,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:25,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:46:25,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:46:25,362.362 INFO    ] No camera update needed
[2026-06-19 00:46:25,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:46:25,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:46:25,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:46:25,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:46:27,420.420 INFO    ] ================================================
[2026-06-19 00:46:27,436.436 INFO    ] Launching Daemon at Fri Jun 19 00:46:27 IST 2026
[2026-06-19 00:46:27,446.446 INFO    ] ================================================
[2026-06-19 00:46:28,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:46:28
[2026-06-19 00:46:28,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:46:28,848.848 INFO    ] Initializing speech engine...
[2026-06-19 00:46:28,856.856 INFO    ] 2026-06-19 00:46:28
[2026-06-19 00:46:29,130.130 INFO    ] 2026-06-19 00:46:29
[2026-06-19 00:46:29,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:46:29,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:46:29,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:46:29,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:46:29,474.474 INFO    ] time= 19/06/2026 00:46:29
[2026-06-19 00:46:29,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:46:29,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:46:29,590.590 INFO    ] No existing commands found in stream
[2026-06-19 00:46:34,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:46:34,618.618 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 00:46:38,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:46:38,491.491 INFO    ] Checking for system updates...
[2026-06-19 00:46:38,527.527 INFO    ] 200
[2026-06-19 00:46:38,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:38,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:46:38,590.590 INFO    ] No update needed
[2026-06-19 00:46:38,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 00:46:38,626.626 INFO    ] 200
[2026-06-19 00:46:38,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:38,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:46:38,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:46:38,724.724 INFO    ] No camera update needed
[2026-06-19 00:46:38,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:46:38,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:46:38,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:46:38,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:46:40,780.780 INFO    ] ================================================
[2026-06-19 00:46:40,795.795 INFO    ] Launching Daemon at Fri Jun 19 00:46:40 IST 2026
[2026-06-19 00:46:40,806.806 INFO    ] ================================================
[2026-06-19 00:46:41,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:46:41
[2026-06-19 00:46:41,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:46:42,229.229 INFO    ] Initializing speech engine...
[2026-06-19 00:46:42,237.237 INFO    ] 2026-06-19 00:46:42
[2026-06-19 00:46:42,493.493 INFO    ] 2026-06-19 00:46:42
[2026-06-19 00:46:42,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:46:42,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:46:42,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:46:42,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:46:42,956.956 INFO    ] time= 19/06/2026 00:46:42
[2026-06-19 00:46:43,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:46:43,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:46:43,099.099 INFO    ] No existing commands found in stream
[2026-06-19 00:46:48,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:46:48,113.113 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 00:46:51,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:46:51,625.625 INFO    ] Checking for system updates...
[2026-06-19 00:46:51,660.660 INFO    ] 200
[2026-06-19 00:46:51,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:51,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:46:51,718.718 INFO    ] No update needed
[2026-06-19 00:46:51,720.720 INFO    ] Checking for camera pi updates...
[2026-06-19 00:46:51,756.756 INFO    ] 200
[2026-06-19 00:46:51,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:46:51,801.801 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:46:51,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:46:51,851.851 INFO    ] No camera update needed
[2026-06-19 00:46:51,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:46:51,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:46:51,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:46:51,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:46:53,906.906 INFO    ] ================================================
[2026-06-19 00:46:53,922.922 INFO    ] Launching Daemon at Fri Jun 19 00:46:53 IST 2026
[2026-06-19 00:46:53,932.932 INFO    ] ================================================
[2026-06-19 00:46:54,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:46:54
[2026-06-19 00:46:55,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:46:55,455.455 INFO    ] Initializing speech engine...
[2026-06-19 00:46:55,466.466 INFO    ] 2026-06-19 00:46:55
[2026-06-19 00:46:55,709.709 INFO    ] 2026-06-19 00:46:55
[2026-06-19 00:46:55,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:46:55,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:46:55,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:46:56,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:46:56,076.076 INFO    ] time= 19/06/2026 00:46:56
[2026-06-19 00:46:56,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:46:56,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:46:56,246.246 INFO    ] No existing commands found in stream
[2026-06-19 00:47:01,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:47:01,279.279 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 00:47:02,476.476 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:47:02,479.479 INFO    ] Checking for system updates...
[2026-06-19 00:47:02,519.519 INFO    ] 200
[2026-06-19 00:47:02,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:02,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:47:02,584.584 INFO    ] No update needed
[2026-06-19 00:47:02,587.587 INFO    ] Checking for camera pi updates...
[2026-06-19 00:47:02,633.633 INFO    ] 200
[2026-06-19 00:47:02,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:02,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:47:02,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:47:02,740.740 INFO    ] No camera update needed
[2026-06-19 00:47:02,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:47:02,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:47:02,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:47:02,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:47:04,802.802 INFO    ] ================================================
[2026-06-19 00:47:04,818.818 INFO    ] Launching Daemon at Fri Jun 19 00:47:04 IST 2026
[2026-06-19 00:47:04,829.829 INFO    ] ================================================
[2026-06-19 00:47:05,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:47:05
[2026-06-19 00:47:06,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:47:06,430.430 INFO    ] Initializing speech engine...
[2026-06-19 00:47:06,438.438 INFO    ] 2026-06-19 00:47:06
[2026-06-19 00:47:06,720.720 INFO    ] 2026-06-19 00:47:06
[2026-06-19 00:47:06,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:47:07,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:47:07,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:47:07,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:47:07,195.195 INFO    ] time= 19/06/2026 00:47:07
[2026-06-19 00:47:07,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:47:07,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:47:07,411.411 INFO    ] No existing commands found in stream
[2026-06-19 00:47:12,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:47:12,446.446 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 00:47:14,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:47:14,168.168 INFO    ] Checking for system updates...
[2026-06-19 00:47:14,205.205 INFO    ] 200
[2026-06-19 00:47:14,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:14,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:47:14,267.267 INFO    ] No update needed
[2026-06-19 00:47:14,270.270 INFO    ] Checking for camera pi updates...
[2026-06-19 00:47:14,305.305 INFO    ] 200
[2026-06-19 00:47:14,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:14,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:47:14,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:47:14,410.410 INFO    ] No camera update needed
[2026-06-19 00:47:14,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:47:14,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:47:14,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:47:14,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:47:16,468.468 INFO    ] ================================================
[2026-06-19 00:47:16,484.484 INFO    ] Launching Daemon at Fri Jun 19 00:47:16 IST 2026
[2026-06-19 00:47:16,495.495 INFO    ] ================================================
[2026-06-19 00:47:17,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:47:17
[2026-06-19 00:47:17,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:47:18,002.002 INFO    ] Initializing speech engine...
[2026-06-19 00:47:18,011.011 INFO    ] 2026-06-19 00:47:18
[2026-06-19 00:47:18,258.258 INFO    ] 2026-06-19 00:47:18
[2026-06-19 00:47:18,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:47:18,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:47:18,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:47:18,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:47:18,731.731 INFO    ] time= 19/06/2026 00:47:18
[2026-06-19 00:47:18,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:47:18,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:47:18,879.879 INFO    ] No existing commands found in stream
[2026-06-19 00:47:23,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:47:23,894.894 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 00:47:25,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:47:25,875.875 INFO    ] Checking for system updates...
[2026-06-19 00:47:25,911.911 INFO    ] 200
[2026-06-19 00:47:25,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:25,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:47:25,978.978 INFO    ] No update needed
[2026-06-19 00:47:25,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 00:47:26,014.014 INFO    ] 200
[2026-06-19 00:47:26,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:26,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:47:26,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:47:26,111.111 INFO    ] No camera update needed
[2026-06-19 00:47:26,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:47:26,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:47:26,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:47:26,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:47:28,167.167 INFO    ] ================================================
[2026-06-19 00:47:28,182.182 INFO    ] Launching Daemon at Fri Jun 19 00:47:28 IST 2026
[2026-06-19 00:47:28,193.193 INFO    ] ================================================
[2026-06-19 00:47:28,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:47:28
[2026-06-19 00:47:29,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:47:29,881.881 INFO    ] Initializing speech engine...
[2026-06-19 00:47:29,888.888 INFO    ] 2026-06-19 00:47:29
[2026-06-19 00:47:30,156.156 INFO    ] 2026-06-19 00:47:30
[2026-06-19 00:47:30,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:47:30,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:47:30,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:47:30,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:47:30,609.609 INFO    ] time= 19/06/2026 00:47:30
[2026-06-19 00:47:30,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:47:30,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:47:30,749.749 INFO    ] No existing commands found in stream
[2026-06-19 00:47:35,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:47:35,764.764 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 00:47:39,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:47:39,859.859 INFO    ] Checking for system updates...
[2026-06-19 00:47:39,897.897 INFO    ] 200
[2026-06-19 00:47:39,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:39,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:47:39,954.954 INFO    ] No update needed
[2026-06-19 00:47:39,957.957 INFO    ] Checking for camera pi updates...
[2026-06-19 00:47:39,991.991 INFO    ] 200
[2026-06-19 00:47:39,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:40,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:47:40,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:47:40,085.085 INFO    ] No camera update needed
[2026-06-19 00:47:40,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:47:40,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:47:40,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:47:40,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:47:42,140.140 INFO    ] ================================================
[2026-06-19 00:47:42,155.155 INFO    ] Launching Daemon at Fri Jun 19 00:47:42 IST 2026
[2026-06-19 00:47:42,166.166 INFO    ] ================================================
[2026-06-19 00:47:42,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:47:42
[2026-06-19 00:47:43,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:47:43,603.603 INFO    ] Initializing speech engine...
[2026-06-19 00:47:43,610.610 INFO    ] 2026-06-19 00:47:43
[2026-06-19 00:47:43,861.861 INFO    ] 2026-06-19 00:47:43
[2026-06-19 00:47:43,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:47:44,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:47:44,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:47:44,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:47:44,276.276 INFO    ] time= 19/06/2026 00:47:44
[2026-06-19 00:47:44,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:47:44,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:47:44,366.366 INFO    ] No existing commands found in stream
[2026-06-19 00:47:49,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:47:49,383.383 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 00:47:52,301.301 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:47:52,304.304 INFO    ] Checking for system updates...
[2026-06-19 00:47:52,340.340 INFO    ] 200
[2026-06-19 00:47:52,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:52,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:47:52,398.398 INFO    ] No update needed
[2026-06-19 00:47:52,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 00:47:52,439.439 INFO    ] 200
[2026-06-19 00:47:52,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:47:52,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:47:52,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:47:52,630.630 INFO    ] No camera update needed
[2026-06-19 00:47:52,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:47:52,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:47:52,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:47:52,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:47:54,687.687 INFO    ] ================================================
[2026-06-19 00:47:54,702.702 INFO    ] Launching Daemon at Fri Jun 19 00:47:54 IST 2026
[2026-06-19 00:47:54,713.713 INFO    ] ================================================
[2026-06-19 00:47:55,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:47:55
[2026-06-19 00:47:55,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:47:56,150.150 INFO    ] Initializing speech engine...
[2026-06-19 00:47:56,160.160 INFO    ] 2026-06-19 00:47:56
[2026-06-19 00:47:56,405.405 INFO    ] 2026-06-19 00:47:56
[2026-06-19 00:47:56,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:47:56,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:47:56,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:47:56,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:47:56,776.776 INFO    ] time= 19/06/2026 00:47:56
[2026-06-19 00:47:56,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:47:56,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:47:56,950.950 INFO    ] No existing commands found in stream
[2026-06-19 00:48:01,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:48:01,979.979 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 00:48:02,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:48:02,817.817 INFO    ] Checking for system updates...
[2026-06-19 00:48:02,869.869 INFO    ] 200
[2026-06-19 00:48:02,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:02,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:48:02,939.939 INFO    ] No update needed
[2026-06-19 00:48:02,943.943 INFO    ] Checking for camera pi updates...
[2026-06-19 00:48:02,990.990 INFO    ] 200
[2026-06-19 00:48:02,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:03,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:48:03,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:48:03,112.112 INFO    ] No camera update needed
[2026-06-19 00:48:03,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:48:03,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:48:03,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:48:03,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:48:05,182.182 INFO    ] ================================================
[2026-06-19 00:48:05,197.197 INFO    ] Launching Daemon at Fri Jun 19 00:48:05 IST 2026
[2026-06-19 00:48:05,208.208 INFO    ] ================================================
[2026-06-19 00:48:05,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:48:05
[2026-06-19 00:48:06,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:48:06,652.652 INFO    ] Initializing speech engine...
[2026-06-19 00:48:06,660.660 INFO    ] 2026-06-19 00:48:06
[2026-06-19 00:48:06,936.936 INFO    ] 2026-06-19 00:48:06
[2026-06-19 00:48:06,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:48:07,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:48:07,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:48:07,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:48:07,395.395 INFO    ] time= 19/06/2026 00:48:07
[2026-06-19 00:48:07,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:48:07,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:48:07,554.554 INFO    ] No existing commands found in stream
[2026-06-19 00:48:12,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:48:12,576.576 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-19 00:48:15,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:48:15,996.996 INFO    ] Checking for system updates...
[2026-06-19 00:48:16,033.033 INFO    ] 200
[2026-06-19 00:48:16,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:16,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:48:16,091.091 INFO    ] No update needed
[2026-06-19 00:48:16,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 00:48:16,128.128 INFO    ] 200
[2026-06-19 00:48:16,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:16,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:48:16,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:48:16,223.223 INFO    ] No camera update needed
[2026-06-19 00:48:16,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:48:16,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:48:16,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:48:16,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:48:18,279.279 INFO    ] ================================================
[2026-06-19 00:48:18,295.295 INFO    ] Launching Daemon at Fri Jun 19 00:48:18 IST 2026
[2026-06-19 00:48:18,306.306 INFO    ] ================================================
[2026-06-19 00:48:18,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:48:18
[2026-06-19 00:48:19,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:48:19,740.740 INFO    ] Initializing speech engine...
[2026-06-19 00:48:19,758.758 INFO    ] 2026-06-19 00:48:19
[2026-06-19 00:48:20,008.008 INFO    ] 2026-06-19 00:48:20
[2026-06-19 00:48:20,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:48:20,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:48:20,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:48:20,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:48:20,382.382 INFO    ] time= 19/06/2026 00:48:20
[2026-06-19 00:48:20,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:48:20,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:48:20,539.539 INFO    ] No existing commands found in stream
[2026-06-19 00:48:25,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:48:25,567.567 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 00:48:28,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:48:28,607.607 INFO    ] Checking for system updates...
[2026-06-19 00:48:28,642.642 INFO    ] 200
[2026-06-19 00:48:28,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:28,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:48:28,702.702 INFO    ] No update needed
[2026-06-19 00:48:28,704.704 INFO    ] Checking for camera pi updates...
[2026-06-19 00:48:28,742.742 INFO    ] 200
[2026-06-19 00:48:28,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:28,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:48:28,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:48:28,831.831 INFO    ] No camera update needed
[2026-06-19 00:48:28,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:48:28,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:48:28,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:48:28,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:48:30,889.889 INFO    ] ================================================
[2026-06-19 00:48:30,905.905 INFO    ] Launching Daemon at Fri Jun 19 00:48:30 IST 2026
[2026-06-19 00:48:30,917.917 INFO    ] ================================================
[2026-06-19 00:48:31,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:48:31
[2026-06-19 00:48:32,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:48:32,400.400 INFO    ] Initializing speech engine...
[2026-06-19 00:48:32,408.408 INFO    ] 2026-06-19 00:48:32
[2026-06-19 00:48:32,736.736 INFO    ] 2026-06-19 00:48:32
[2026-06-19 00:48:32,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:48:32,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:48:32,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:48:33,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:48:33,129.129 INFO    ] time= 19/06/2026 00:48:33
[2026-06-19 00:48:33,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:48:33,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:48:33,255.255 INFO    ] No existing commands found in stream
[2026-06-19 00:48:38,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:48:38,284.284 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 00:48:39,356.356 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:48:39,359.359 INFO    ] Checking for system updates...
[2026-06-19 00:48:39,396.396 INFO    ] 200
[2026-06-19 00:48:39,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:39,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:48:39,462.462 INFO    ] No update needed
[2026-06-19 00:48:39,464.464 INFO    ] Checking for camera pi updates...
[2026-06-19 00:48:39,498.498 INFO    ] 200
[2026-06-19 00:48:39,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:39,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:48:39,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:48:39,591.591 INFO    ] No camera update needed
[2026-06-19 00:48:39,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:48:39,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:48:39,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:48:39,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:48:41,647.647 INFO    ] ================================================
[2026-06-19 00:48:41,663.663 INFO    ] Launching Daemon at Fri Jun 19 00:48:41 IST 2026
[2026-06-19 00:48:41,674.674 INFO    ] ================================================
[2026-06-19 00:48:42,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:48:42
[2026-06-19 00:48:42,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:48:43,122.122 INFO    ] Initializing speech engine...
[2026-06-19 00:48:43,137.137 INFO    ] 2026-06-19 00:48:43
[2026-06-19 00:48:43,404.404 INFO    ] 2026-06-19 00:48:43
[2026-06-19 00:48:43,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:48:43,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:48:43,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:48:43,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:48:43,781.781 INFO    ] time= 19/06/2026 00:48:43
[2026-06-19 00:48:43,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:48:43,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:48:43,864.864 INFO    ] No existing commands found in stream
[2026-06-19 00:48:48,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:48:48,903.903 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 00:48:52,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:48:52,724.724 INFO    ] Checking for system updates...
[2026-06-19 00:48:52,760.760 INFO    ] 200
[2026-06-19 00:48:52,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:52,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:48:52,822.822 INFO    ] No update needed
[2026-06-19 00:48:52,824.824 INFO    ] Checking for camera pi updates...
[2026-06-19 00:48:52,857.857 INFO    ] 200
[2026-06-19 00:48:52,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:48:52,905.905 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:48:52,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:48:52,953.953 INFO    ] No camera update needed
[2026-06-19 00:48:52,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:48:52,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:48:52,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:48:52,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:48:55,008.008 INFO    ] ================================================
[2026-06-19 00:48:55,024.024 INFO    ] Launching Daemon at Fri Jun 19 00:48:55 IST 2026
[2026-06-19 00:48:55,035.035 INFO    ] ================================================
[2026-06-19 00:48:55,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:48:55
[2026-06-19 00:48:56,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:48:56,582.582 INFO    ] Initializing speech engine...
[2026-06-19 00:48:56,594.594 INFO    ] 2026-06-19 00:48:56
[2026-06-19 00:48:56,865.865 INFO    ] 2026-06-19 00:48:56
[2026-06-19 00:48:56,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:48:57,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:48:57,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:48:57,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:48:57,354.354 INFO    ] time= 19/06/2026 00:48:57
[2026-06-19 00:48:57,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:48:57,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:48:57,560.560 INFO    ] No existing commands found in stream
[2026-06-19 00:49:02,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:49:02,586.586 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 00:49:05,624.624 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:49:05,627.627 INFO    ] Checking for system updates...
[2026-06-19 00:49:05,665.665 INFO    ] 200
[2026-06-19 00:49:05,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:05,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:49:05,733.733 INFO    ] No update needed
[2026-06-19 00:49:05,735.735 INFO    ] Checking for camera pi updates...
[2026-06-19 00:49:05,770.770 INFO    ] 200
[2026-06-19 00:49:05,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:05,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:49:05,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:49:05,864.864 INFO    ] No camera update needed
[2026-06-19 00:49:05,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:49:05,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:49:05,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:49:05,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:49:07,919.919 INFO    ] ================================================
[2026-06-19 00:49:07,935.935 INFO    ] Launching Daemon at Fri Jun 19 00:49:07 IST 2026
[2026-06-19 00:49:07,946.946 INFO    ] ================================================
[2026-06-19 00:49:08,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:49:08
[2026-06-19 00:49:09,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:49:09,473.473 INFO    ] Initializing speech engine...
[2026-06-19 00:49:09,481.481 INFO    ] 2026-06-19 00:49:09
[2026-06-19 00:49:09,762.762 INFO    ] 2026-06-19 00:49:09
[2026-06-19 00:49:09,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:49:10,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:49:10,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:49:10,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:49:10,239.239 INFO    ] time= 19/06/2026 00:49:10
[2026-06-19 00:49:10,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:49:10,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:49:10,403.403 INFO    ] No existing commands found in stream
[2026-06-19 00:49:15,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:49:15,418.418 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 00:49:18,057.057 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:49:18,060.060 INFO    ] Checking for system updates...
[2026-06-19 00:49:18,096.096 INFO    ] 200
[2026-06-19 00:49:18,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:18,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:49:18,162.162 INFO    ] No update needed
[2026-06-19 00:49:18,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 00:49:18,197.197 INFO    ] 200
[2026-06-19 00:49:18,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:18,240.240 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:49:18,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:49:18,297.297 INFO    ] No camera update needed
[2026-06-19 00:49:18,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:49:18,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:49:18,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:49:18,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:49:20,356.356 INFO    ] ================================================
[2026-06-19 00:49:20,371.371 INFO    ] Launching Daemon at Fri Jun 19 00:49:20 IST 2026
[2026-06-19 00:49:20,382.382 INFO    ] ================================================
[2026-06-19 00:49:20,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:49:20
[2026-06-19 00:49:21,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:49:21,811.811 INFO    ] Initializing speech engine...
[2026-06-19 00:49:21,819.819 INFO    ] 2026-06-19 00:49:21
[2026-06-19 00:49:22,067.067 INFO    ] 2026-06-19 00:49:22
[2026-06-19 00:49:22,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:49:22,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:49:22,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:49:22,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:49:22,537.537 INFO    ] time= 19/06/2026 00:49:22
[2026-06-19 00:49:22,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:49:22,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:49:22,690.690 INFO    ] No existing commands found in stream
[2026-06-19 00:49:27,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:49:27,713.713 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 00:49:30,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:49:30,128.128 INFO    ] Checking for system updates...
[2026-06-19 00:49:30,168.168 INFO    ] 200
[2026-06-19 00:49:30,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:30,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:49:30,231.231 INFO    ] No update needed
[2026-06-19 00:49:30,234.234 INFO    ] Checking for camera pi updates...
[2026-06-19 00:49:30,267.267 INFO    ] 200
[2026-06-19 00:49:30,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:30,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:49:30,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:49:30,364.364 INFO    ] No camera update needed
[2026-06-19 00:49:30,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:49:30,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:49:30,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:49:30,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:49:32,423.423 INFO    ] ================================================
[2026-06-19 00:49:32,441.441 INFO    ] Launching Daemon at Fri Jun 19 00:49:32 IST 2026
[2026-06-19 00:49:32,453.453 INFO    ] ================================================
[2026-06-19 00:49:33,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:49:33
[2026-06-19 00:49:33,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:49:34,083.083 INFO    ] Initializing speech engine...
[2026-06-19 00:49:34,096.096 INFO    ] 2026-06-19 00:49:34
[2026-06-19 00:49:34,362.362 INFO    ] 2026-06-19 00:49:34
[2026-06-19 00:49:34,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:49:34,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:49:34,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:49:34,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:49:34,837.837 INFO    ] time= 19/06/2026 00:49:34
[2026-06-19 00:49:34,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:49:34,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:49:35,026.026 INFO    ] No existing commands found in stream
[2026-06-19 00:49:40,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:49:40,041.041 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 00:49:43,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:49:43,371.371 INFO    ] Checking for system updates...
[2026-06-19 00:49:43,411.411 INFO    ] 200
[2026-06-19 00:49:43,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:43,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:49:43,469.469 INFO    ] No update needed
[2026-06-19 00:49:43,472.472 INFO    ] Checking for camera pi updates...
[2026-06-19 00:49:43,505.505 INFO    ] 200
[2026-06-19 00:49:43,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:43,548.548 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:49:43,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:49:43,597.597 INFO    ] No camera update needed
[2026-06-19 00:49:43,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:49:43,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:49:43,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:49:43,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:49:45,654.654 INFO    ] ================================================
[2026-06-19 00:49:45,669.669 INFO    ] Launching Daemon at Fri Jun 19 00:49:45 IST 2026
[2026-06-19 00:49:45,680.680 INFO    ] ================================================
[2026-06-19 00:49:46,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:49:46
[2026-06-19 00:49:46,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:49:47,102.102 INFO    ] Initializing speech engine...
[2026-06-19 00:49:47,111.111 INFO    ] 2026-06-19 00:49:47
[2026-06-19 00:49:47,356.356 INFO    ] 2026-06-19 00:49:47
[2026-06-19 00:49:47,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:49:47,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:49:47,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:49:47,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:49:47,724.724 INFO    ] time= 19/06/2026 00:49:47
[2026-06-19 00:49:47,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:49:47,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:49:47,897.897 INFO    ] No existing commands found in stream
[2026-06-19 00:49:52,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:49:52,930.930 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 00:49:53,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:49:53,404.404 INFO    ] Checking for system updates...
[2026-06-19 00:49:53,445.445 INFO    ] 200
[2026-06-19 00:49:53,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:53,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:49:53,502.502 INFO    ] No update needed
[2026-06-19 00:49:53,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 00:49:53,541.541 INFO    ] 200
[2026-06-19 00:49:53,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:49:53,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:49:53,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:49:53,633.633 INFO    ] No camera update needed
[2026-06-19 00:49:53,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:49:53,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:49:53,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:49:53,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:49:55,689.689 INFO    ] ================================================
[2026-06-19 00:49:55,704.704 INFO    ] Launching Daemon at Fri Jun 19 00:49:55 IST 2026
[2026-06-19 00:49:55,714.714 INFO    ] ================================================
[2026-06-19 00:49:56,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:49:56
[2026-06-19 00:49:56,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:49:57,156.156 INFO    ] Initializing speech engine...
[2026-06-19 00:49:57,171.171 INFO    ] 2026-06-19 00:49:57
[2026-06-19 00:49:57,445.445 INFO    ] 2026-06-19 00:49:57
[2026-06-19 00:49:57,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:49:57,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:49:57,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:49:57,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:49:57,830.830 INFO    ] time= 19/06/2026 00:49:57
[2026-06-19 00:49:57,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:49:57,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:49:57,928.928 INFO    ] No existing commands found in stream
[2026-06-19 00:50:02,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:50:02,968.968 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 00:50:08,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:50:08,943.943 INFO    ] Checking for system updates...
[2026-06-19 00:50:08,980.980 INFO    ] 200
[2026-06-19 00:50:08,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:09,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:50:09,038.038 INFO    ] No update needed
[2026-06-19 00:50:09,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 00:50:09,080.080 INFO    ] 200
[2026-06-19 00:50:09,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:09,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:50:09,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:50:09,181.181 INFO    ] No camera update needed
[2026-06-19 00:50:09,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:50:09,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:50:09,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:50:09,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:50:11,237.237 INFO    ] ================================================
[2026-06-19 00:50:11,253.253 INFO    ] Launching Daemon at Fri Jun 19 00:50:11 IST 2026
[2026-06-19 00:50:11,263.263 INFO    ] ================================================
[2026-06-19 00:50:11,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:50:11
[2026-06-19 00:50:12,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:50:12,673.673 INFO    ] Initializing speech engine...
[2026-06-19 00:50:12,680.680 INFO    ] 2026-06-19 00:50:12
[2026-06-19 00:50:12,975.975 INFO    ] 2026-06-19 00:50:12
[2026-06-19 00:50:13,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:50:13,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:50:13,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:50:13,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:50:13,354.354 INFO    ] time= 19/06/2026 00:50:13
[2026-06-19 00:50:13,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:50:13,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:50:13,479.479 INFO    ] No existing commands found in stream
[2026-06-19 00:50:18,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:50:18,495.495 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 00:50:21,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:50:21,294.294 INFO    ] Checking for system updates...
[2026-06-19 00:50:21,334.334 INFO    ] 200
[2026-06-19 00:50:21,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:21,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:50:21,398.398 INFO    ] No update needed
[2026-06-19 00:50:21,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 00:50:21,434.434 INFO    ] 200
[2026-06-19 00:50:21,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:21,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:50:21,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:50:21,543.543 INFO    ] No camera update needed
[2026-06-19 00:50:21,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:50:21,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:50:21,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:50:21,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:50:23,599.599 INFO    ] ================================================
[2026-06-19 00:50:23,614.614 INFO    ] Launching Daemon at Fri Jun 19 00:50:23 IST 2026
[2026-06-19 00:50:23,625.625 INFO    ] ================================================
[2026-06-19 00:50:24,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:50:24
[2026-06-19 00:50:24,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:50:25,107.107 INFO    ] Initializing speech engine...
[2026-06-19 00:50:25,117.117 INFO    ] 2026-06-19 00:50:25
[2026-06-19 00:50:25,369.369 INFO    ] 2026-06-19 00:50:25
[2026-06-19 00:50:25,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:50:25,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:50:25,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:50:25,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:50:25,840.840 INFO    ] time= 19/06/2026 00:50:25
[2026-06-19 00:50:25,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:50:25,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:50:25,993.993 INFO    ] No existing commands found in stream
[2026-06-19 00:50:31,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:50:31,009.009 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 00:50:32,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:50:32,673.673 INFO    ] Checking for system updates...
[2026-06-19 00:50:32,717.717 INFO    ] 200
[2026-06-19 00:50:32,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:32,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:50:32,780.780 INFO    ] No update needed
[2026-06-19 00:50:32,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 00:50:32,824.824 INFO    ] 200
[2026-06-19 00:50:32,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:32,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:50:32,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:50:32,912.912 INFO    ] No camera update needed
[2026-06-19 00:50:32,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:50:32,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:50:32,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:50:32,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:50:34,981.981 INFO    ] ================================================
[2026-06-19 00:50:35,997.997 INFO    ] Launching Daemon at Fri Jun 19 00:50:34 IST 2026
[2026-06-19 00:50:35,008.008 INFO    ] ================================================
[2026-06-19 00:50:35,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:50:35
[2026-06-19 00:50:36,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:50:36,431.431 INFO    ] Initializing speech engine...
[2026-06-19 00:50:36,440.440 INFO    ] 2026-06-19 00:50:36
[2026-06-19 00:50:36,698.698 INFO    ] 2026-06-19 00:50:36
[2026-06-19 00:50:36,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:50:36,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:50:36,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:50:37,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:50:37,178.178 INFO    ] time= 19/06/2026 00:50:37
[2026-06-19 00:50:37,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:50:37,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:50:37,382.382 INFO    ] No existing commands found in stream
[2026-06-19 00:50:42,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:50:42,407.407 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 00:50:45,766.766 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:50:45,769.769 INFO    ] Checking for system updates...
[2026-06-19 00:50:45,807.807 INFO    ] 200
[2026-06-19 00:50:45,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:45,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:50:45,868.868 INFO    ] No update needed
[2026-06-19 00:50:45,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 00:50:45,906.906 INFO    ] 200
[2026-06-19 00:50:45,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:45,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:50:45,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:50:46,002.002 INFO    ] No camera update needed
[2026-06-19 00:50:46,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:50:46,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:50:46,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:50:46,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:50:48,063.063 INFO    ] ================================================
[2026-06-19 00:50:48,078.078 INFO    ] Launching Daemon at Fri Jun 19 00:50:48 IST 2026
[2026-06-19 00:50:48,089.089 INFO    ] ================================================
[2026-06-19 00:50:48,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:50:48
[2026-06-19 00:50:49,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:50:49,549.549 INFO    ] Initializing speech engine...
[2026-06-19 00:50:49,557.557 INFO    ] 2026-06-19 00:50:49
[2026-06-19 00:50:49,816.816 INFO    ] 2026-06-19 00:50:49
[2026-06-19 00:50:49,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:50:50,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:50:50,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:50:50,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:50:50,244.244 INFO    ] time= 19/06/2026 00:50:50
[2026-06-19 00:50:50,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:50:50,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:50:50,427.427 INFO    ] No existing commands found in stream
[2026-06-19 00:50:55,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:50:55,440.440 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 00:50:57,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:50:57,248.248 INFO    ] Checking for system updates...
[2026-06-19 00:50:57,284.284 INFO    ] 200
[2026-06-19 00:50:57,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:57,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:50:57,350.350 INFO    ] No update needed
[2026-06-19 00:50:57,352.352 INFO    ] Checking for camera pi updates...
[2026-06-19 00:50:57,391.391 INFO    ] 200
[2026-06-19 00:50:57,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:50:57,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:50:57,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:50:57,490.490 INFO    ] No camera update needed
[2026-06-19 00:50:57,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:50:57,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:50:57,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:50:57,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:50:59,547.547 INFO    ] ================================================
[2026-06-19 00:50:59,562.562 INFO    ] Launching Daemon at Fri Jun 19 00:50:59 IST 2026
[2026-06-19 00:50:59,573.573 INFO    ] ================================================
[2026-06-19 00:51:00,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:51:00
[2026-06-19 00:51:00,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:51:01,042.042 INFO    ] Initializing speech engine...
[2026-06-19 00:51:01,048.048 INFO    ] 2026-06-19 00:51:01
[2026-06-19 00:51:01,313.313 INFO    ] 2026-06-19 00:51:01
[2026-06-19 00:51:01,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:51:01,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:51:01,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:51:01,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:51:01,790.790 INFO    ] time= 19/06/2026 00:51:01
[2026-06-19 00:51:01,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:51:01,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:51:01,899.899 INFO    ] No existing commands found in stream
[2026-06-19 00:51:06,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:51:06,913.913 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 00:51:08,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:51:08,009.009 INFO    ] Checking for system updates...
[2026-06-19 00:51:08,046.046 INFO    ] 200
[2026-06-19 00:51:08,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:08,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:51:08,104.104 INFO    ] No update needed
[2026-06-19 00:51:08,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 00:51:08,140.140 INFO    ] 200
[2026-06-19 00:51:08,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:08,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:51:08,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:51:08,234.234 INFO    ] No camera update needed
[2026-06-19 00:51:08,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:51:08,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:51:08,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:51:08,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:51:10,289.289 INFO    ] ================================================
[2026-06-19 00:51:10,304.304 INFO    ] Launching Daemon at Fri Jun 19 00:51:10 IST 2026
[2026-06-19 00:51:10,315.315 INFO    ] ================================================
[2026-06-19 00:51:10,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:51:10
[2026-06-19 00:51:11,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:51:11,783.783 INFO    ] Initializing speech engine...
[2026-06-19 00:51:11,806.806 INFO    ] 2026-06-19 00:51:11
[2026-06-19 00:51:12,086.086 INFO    ] 2026-06-19 00:51:12
[2026-06-19 00:51:12,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:51:12,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:51:12,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:51:12,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:51:12,585.585 INFO    ] time= 19/06/2026 00:51:12
[2026-06-19 00:51:12,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:51:12,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:51:12,757.757 INFO    ] No existing commands found in stream
[2026-06-19 00:51:17,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:51:17,797.797 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 00:51:19,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:51:19,789.789 INFO    ] Checking for system updates...
[2026-06-19 00:51:19,826.826 INFO    ] 200
[2026-06-19 00:51:19,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:19,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:51:19,889.889 INFO    ] No update needed
[2026-06-19 00:51:19,891.891 INFO    ] Checking for camera pi updates...
[2026-06-19 00:51:19,931.931 INFO    ] 200
[2026-06-19 00:51:19,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:19,992.992 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:51:20,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:51:20,051.051 INFO    ] No camera update needed
[2026-06-19 00:51:20,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:51:20,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:51:20,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:51:20,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:51:22,108.108 INFO    ] ================================================
[2026-06-19 00:51:22,123.123 INFO    ] Launching Daemon at Fri Jun 19 00:51:22 IST 2026
[2026-06-19 00:51:22,133.133 INFO    ] ================================================
[2026-06-19 00:51:22,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:51:22
[2026-06-19 00:51:23,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:51:23,605.605 INFO    ] Initializing speech engine...
[2026-06-19 00:51:23,612.612 INFO    ] 2026-06-19 00:51:23
[2026-06-19 00:51:23,886.886 INFO    ] 2026-06-19 00:51:23
[2026-06-19 00:51:23,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:51:24,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:51:24,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:51:24,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:51:24,245.245 INFO    ] time= 19/06/2026 00:51:24
[2026-06-19 00:51:24,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:51:24,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:51:24,366.366 INFO    ] No existing commands found in stream
[2026-06-19 00:51:29,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:51:29,382.382 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 00:51:33,039.039 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:51:33,043.043 INFO    ] Checking for system updates...
[2026-06-19 00:51:33,084.084 INFO    ] 200
[2026-06-19 00:51:33,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:33,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:51:33,149.149 INFO    ] No update needed
[2026-06-19 00:51:33,152.152 INFO    ] Checking for camera pi updates...
[2026-06-19 00:51:33,185.185 INFO    ] 200
[2026-06-19 00:51:33,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:33,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:51:33,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:51:33,277.277 INFO    ] No camera update needed
[2026-06-19 00:51:33,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:51:33,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:51:33,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:51:33,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:51:35,334.334 INFO    ] ================================================
[2026-06-19 00:51:35,349.349 INFO    ] Launching Daemon at Fri Jun 19 00:51:35 IST 2026
[2026-06-19 00:51:35,360.360 INFO    ] ================================================
[2026-06-19 00:51:36,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:51:36
[2026-06-19 00:51:36,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:51:36,858.858 INFO    ] Initializing speech engine...
[2026-06-19 00:51:36,868.868 INFO    ] 2026-06-19 00:51:36
[2026-06-19 00:51:37,129.129 INFO    ] 2026-06-19 00:51:37
[2026-06-19 00:51:37,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:51:37,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:51:37,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:51:37,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:51:37,587.587 INFO    ] time= 19/06/2026 00:51:37
[2026-06-19 00:51:37,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:51:37,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:51:37,748.748 INFO    ] No existing commands found in stream
[2026-06-19 00:51:42,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:51:42,788.788 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 00:51:43,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:51:43,972.972 INFO    ] Checking for system updates...
[2026-06-19 00:51:44,008.008 INFO    ] 200
[2026-06-19 00:51:44,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:44,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:51:44,067.067 INFO    ] No update needed
[2026-06-19 00:51:44,069.069 INFO    ] Checking for camera pi updates...
[2026-06-19 00:51:44,104.104 INFO    ] 200
[2026-06-19 00:51:44,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:44,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:51:44,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:51:44,249.249 INFO    ] No camera update needed
[2026-06-19 00:51:44,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:51:44,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:51:44,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:51:44,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:51:46,312.312 INFO    ] ================================================
[2026-06-19 00:51:46,327.327 INFO    ] Launching Daemon at Fri Jun 19 00:51:46 IST 2026
[2026-06-19 00:51:46,337.337 INFO    ] ================================================
[2026-06-19 00:51:46,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:51:46
[2026-06-19 00:51:47,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:51:47,777.777 INFO    ] Initializing speech engine...
[2026-06-19 00:51:47,786.786 INFO    ] 2026-06-19 00:51:47
[2026-06-19 00:51:48,043.043 INFO    ] 2026-06-19 00:51:48
[2026-06-19 00:51:48,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:51:48,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:51:48,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:51:48,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:51:48,526.526 INFO    ] time= 19/06/2026 00:51:48
[2026-06-19 00:51:48,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:51:48,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:51:48,646.646 INFO    ] No existing commands found in stream
[2026-06-19 00:51:53,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:51:53,661.661 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 00:51:55,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:51:55,318.318 INFO    ] Checking for system updates...
[2026-06-19 00:51:55,356.356 INFO    ] 200
[2026-06-19 00:51:55,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:55,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:51:55,418.418 INFO    ] No update needed
[2026-06-19 00:51:55,421.421 INFO    ] Checking for camera pi updates...
[2026-06-19 00:51:55,456.456 INFO    ] 200
[2026-06-19 00:51:55,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:51:55,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:51:55,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:51:55,553.553 INFO    ] No camera update needed
[2026-06-19 00:51:55,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:51:55,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:51:55,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:51:55,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:51:57,609.609 INFO    ] ================================================
[2026-06-19 00:51:57,625.625 INFO    ] Launching Daemon at Fri Jun 19 00:51:57 IST 2026
[2026-06-19 00:51:57,636.636 INFO    ] ================================================
[2026-06-19 00:51:58,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:51:58
[2026-06-19 00:51:58,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:51:59,216.216 INFO    ] Initializing speech engine...
[2026-06-19 00:51:59,230.230 INFO    ] 2026-06-19 00:51:59
[2026-06-19 00:51:59,543.543 INFO    ] 2026-06-19 00:51:59
[2026-06-19 00:51:59,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:51:59,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:51:59,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:52:00,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:52:00,049.049 INFO    ] time= 19/06/2026 00:52:00
[2026-06-19 00:52:00,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:52:00,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:52:00,203.203 INFO    ] No existing commands found in stream
[2026-06-19 00:52:05,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:52:05,222.222 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 00:52:07,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:52:07,455.455 INFO    ] Checking for system updates...
[2026-06-19 00:52:07,495.495 INFO    ] 200
[2026-06-19 00:52:07,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:07,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:52:07,559.559 INFO    ] No update needed
[2026-06-19 00:52:07,562.562 INFO    ] Checking for camera pi updates...
[2026-06-19 00:52:07,596.596 INFO    ] 200
[2026-06-19 00:52:07,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:07,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:52:07,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:52:07,787.787 INFO    ] No camera update needed
[2026-06-19 00:52:07,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:52:07,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:52:07,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:52:07,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:52:09,844.844 INFO    ] ================================================
[2026-06-19 00:52:09,860.860 INFO    ] Launching Daemon at Fri Jun 19 00:52:09 IST 2026
[2026-06-19 00:52:09,871.871 INFO    ] ================================================
[2026-06-19 00:52:10,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:52:10
[2026-06-19 00:52:11,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:52:11,279.279 INFO    ] Initializing speech engine...
[2026-06-19 00:52:11,287.287 INFO    ] 2026-06-19 00:52:11
[2026-06-19 00:52:11,578.578 INFO    ] 2026-06-19 00:52:11
[2026-06-19 00:52:11,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:52:11,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:52:11,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:52:11,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:52:11,949.949 INFO    ] time= 19/06/2026 00:52:11
[2026-06-19 00:52:11,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:52:11,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:52:12,073.073 INFO    ] No existing commands found in stream
[2026-06-19 00:52:17,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:52:17,086.086 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 00:52:17,635.635 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:52:17,638.638 INFO    ] Checking for system updates...
[2026-06-19 00:52:17,677.677 INFO    ] 200
[2026-06-19 00:52:17,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:17,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:52:17,734.734 INFO    ] No update needed
[2026-06-19 00:52:17,737.737 INFO    ] Checking for camera pi updates...
[2026-06-19 00:52:17,771.771 INFO    ] 200
[2026-06-19 00:52:17,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:17,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:52:17,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:52:17,867.867 INFO    ] No camera update needed
[2026-06-19 00:52:17,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:52:17,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:52:17,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:52:17,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:52:19,922.922 INFO    ] ================================================
[2026-06-19 00:52:19,938.938 INFO    ] Launching Daemon at Fri Jun 19 00:52:19 IST 2026
[2026-06-19 00:52:19,949.949 INFO    ] ================================================
[2026-06-19 00:52:20,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:52:20
[2026-06-19 00:52:21,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:52:21,523.523 INFO    ] Initializing speech engine...
[2026-06-19 00:52:21,532.532 INFO    ] 2026-06-19 00:52:21
[2026-06-19 00:52:21,794.794 INFO    ] 2026-06-19 00:52:21
[2026-06-19 00:52:21,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:52:22,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:52:22,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:52:22,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:52:22,355.355 INFO    ] time= 19/06/2026 00:52:22
[2026-06-19 00:52:22,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:52:22,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:52:22,488.488 INFO    ] No existing commands found in stream
[2026-06-19 00:52:27,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:52:27,516.516 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 00:52:28,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:52:28,900.900 INFO    ] Checking for system updates...
[2026-06-19 00:52:28,940.940 INFO    ] 200
[2026-06-19 00:52:28,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:28,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:52:28,999.999 INFO    ] No update needed
[2026-06-19 00:52:29,001.001 INFO    ] Checking for camera pi updates...
[2026-06-19 00:52:29,039.039 INFO    ] 200
[2026-06-19 00:52:29,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:29,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:52:29,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:52:29,136.136 INFO    ] No camera update needed
[2026-06-19 00:52:29,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:52:29,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:52:29,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:52:29,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:52:31,195.195 INFO    ] ================================================
[2026-06-19 00:52:31,210.210 INFO    ] Launching Daemon at Fri Jun 19 00:52:31 IST 2026
[2026-06-19 00:52:31,221.221 INFO    ] ================================================
[2026-06-19 00:52:31,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:52:31
[2026-06-19 00:52:32,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:52:32,691.691 INFO    ] Initializing speech engine...
[2026-06-19 00:52:32,714.714 INFO    ] 2026-06-19 00:52:32
[2026-06-19 00:52:32,986.986 INFO    ] 2026-06-19 00:52:32
[2026-06-19 00:52:33,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:52:33,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:52:33,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:52:33,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:52:33,438.438 INFO    ] time= 19/06/2026 00:52:33
[2026-06-19 00:52:33,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:52:33,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:52:33,624.624 INFO    ] No existing commands found in stream
[2026-06-19 00:52:38,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:52:38,639.639 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 00:52:42,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:52:42,876.876 INFO    ] Checking for system updates...
[2026-06-19 00:52:42,912.912 INFO    ] 200
[2026-06-19 00:52:42,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:42,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:52:42,971.971 INFO    ] No update needed
[2026-06-19 00:52:42,974.974 INFO    ] Checking for camera pi updates...
[2026-06-19 00:52:43,009.009 INFO    ] 200
[2026-06-19 00:52:43,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:43,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:52:43,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:52:43,119.119 INFO    ] No camera update needed
[2026-06-19 00:52:43,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:52:43,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:52:43,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:52:43,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:52:45,176.176 INFO    ] ================================================
[2026-06-19 00:52:45,191.191 INFO    ] Launching Daemon at Fri Jun 19 00:52:45 IST 2026
[2026-06-19 00:52:45,202.202 INFO    ] ================================================
[2026-06-19 00:52:45,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:52:45
[2026-06-19 00:52:46,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:52:46,628.628 INFO    ] Initializing speech engine...
[2026-06-19 00:52:46,634.634 INFO    ] 2026-06-19 00:52:46
[2026-06-19 00:52:46,880.880 INFO    ] 2026-06-19 00:52:46
[2026-06-19 00:52:46,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:52:47,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:52:47,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:52:47,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:52:47,350.350 INFO    ] time= 19/06/2026 00:52:47
[2026-06-19 00:52:47,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:52:47,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:52:47,498.498 INFO    ] No existing commands found in stream
[2026-06-19 00:52:52,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:52:52,510.510 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 00:52:53,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:52:53,443.443 INFO    ] Checking for system updates...
[2026-06-19 00:52:53,484.484 INFO    ] 200
[2026-06-19 00:52:53,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:53,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:52:53,547.547 INFO    ] No update needed
[2026-06-19 00:52:53,549.549 INFO    ] Checking for camera pi updates...
[2026-06-19 00:52:53,586.586 INFO    ] 200
[2026-06-19 00:52:53,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:52:53,628.628 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:52:53,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:52:53,676.676 INFO    ] No camera update needed
[2026-06-19 00:52:53,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:52:53,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:52:53,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:52:53,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:52:55,732.732 INFO    ] ================================================
[2026-06-19 00:52:55,747.747 INFO    ] Launching Daemon at Fri Jun 19 00:52:55 IST 2026
[2026-06-19 00:52:55,758.758 INFO    ] ================================================
[2026-06-19 00:52:56,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:52:56
[2026-06-19 00:52:56,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:52:57,166.166 INFO    ] Initializing speech engine...
[2026-06-19 00:52:57,181.181 INFO    ] 2026-06-19 00:52:57
[2026-06-19 00:52:57,448.448 INFO    ] 2026-06-19 00:52:57
[2026-06-19 00:52:57,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:52:57,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:52:57,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:52:57,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:52:57,937.937 INFO    ] time= 19/06/2026 00:52:57
[2026-06-19 00:52:57,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:52:58,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:52:58,109.109 INFO    ] No existing commands found in stream
[2026-06-19 00:53:03,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:53:03,122.122 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 00:53:04,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:53:04,872.872 INFO    ] Checking for system updates...
[2026-06-19 00:53:04,908.908 INFO    ] 200
[2026-06-19 00:53:04,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:04,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:53:04,965.965 INFO    ] No update needed
[2026-06-19 00:53:04,967.967 INFO    ] Checking for camera pi updates...
[2026-06-19 00:53:05,001.001 INFO    ] 200
[2026-06-19 00:53:05,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:05,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:53:05,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:53:05,094.094 INFO    ] No camera update needed
[2026-06-19 00:53:05,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:53:05,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:53:05,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:53:05,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:53:07,150.150 INFO    ] ================================================
[2026-06-19 00:53:07,166.166 INFO    ] Launching Daemon at Fri Jun 19 00:53:07 IST 2026
[2026-06-19 00:53:07,177.177 INFO    ] ================================================
[2026-06-19 00:53:07,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:53:07
[2026-06-19 00:53:08,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:53:08,606.606 INFO    ] Initializing speech engine...
[2026-06-19 00:53:08,615.615 INFO    ] 2026-06-19 00:53:08
[2026-06-19 00:53:08,905.905 INFO    ] 2026-06-19 00:53:08
[2026-06-19 00:53:08,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:53:09,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:53:09,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:53:09,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:53:09,321.321 INFO    ] time= 19/06/2026 00:53:09
[2026-06-19 00:53:09,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:53:09,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:53:09,405.405 INFO    ] No existing commands found in stream
[2026-06-19 00:53:14,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:53:14,420.420 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 00:53:16,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:53:16,862.862 INFO    ] Checking for system updates...
[2026-06-19 00:53:16,897.897 INFO    ] 200
[2026-06-19 00:53:16,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:16,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:53:16,954.954 INFO    ] No update needed
[2026-06-19 00:53:16,957.957 INFO    ] Checking for camera pi updates...
[2026-06-19 00:53:16,994.994 INFO    ] 200
[2026-06-19 00:53:16,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:17,038.038 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:53:17,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:53:17,088.088 INFO    ] No camera update needed
[2026-06-19 00:53:17,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:53:17,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:53:17,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:53:17,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:53:19,144.144 INFO    ] ================================================
[2026-06-19 00:53:19,159.159 INFO    ] Launching Daemon at Fri Jun 19 00:53:19 IST 2026
[2026-06-19 00:53:19,170.170 INFO    ] ================================================
[2026-06-19 00:53:19,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:53:19
[2026-06-19 00:53:20,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:53:20,670.670 INFO    ] Initializing speech engine...
[2026-06-19 00:53:20,692.692 INFO    ] 2026-06-19 00:53:20
[2026-06-19 00:53:20,949.949 INFO    ] 2026-06-19 00:53:20
[2026-06-19 00:53:20,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:53:21,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:53:21,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:53:21,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:53:21,293.293 INFO    ] time= 19/06/2026 00:53:21
[2026-06-19 00:53:21,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:53:21,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:53:21,407.407 INFO    ] No existing commands found in stream
[2026-06-19 00:53:26,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:53:26,422.422 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 00:53:28,874.874 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:53:28,877.877 INFO    ] Checking for system updates...
[2026-06-19 00:53:28,916.916 INFO    ] 200
[2026-06-19 00:53:28,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:28,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:53:28,980.980 INFO    ] No update needed
[2026-06-19 00:53:28,982.982 INFO    ] Checking for camera pi updates...
[2026-06-19 00:53:29,016.016 INFO    ] 200
[2026-06-19 00:53:29,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:29,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:53:29,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:53:29,105.105 INFO    ] No camera update needed
[2026-06-19 00:53:29,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:53:29,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:53:29,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:53:29,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:53:31,169.169 INFO    ] ================================================
[2026-06-19 00:53:31,184.184 INFO    ] Launching Daemon at Fri Jun 19 00:53:31 IST 2026
[2026-06-19 00:53:31,194.194 INFO    ] ================================================
[2026-06-19 00:53:31,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:53:31
[2026-06-19 00:53:32,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:53:32,869.869 INFO    ] Initializing speech engine...
[2026-06-19 00:53:32,884.884 INFO    ] 2026-06-19 00:53:32
[2026-06-19 00:53:33,169.169 INFO    ] 2026-06-19 00:53:33
[2026-06-19 00:53:33,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:53:33,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:53:33,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:53:33,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:53:33,662.662 INFO    ] time= 19/06/2026 00:53:33
[2026-06-19 00:53:33,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:53:33,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:53:33,866.866 INFO    ] No existing commands found in stream
[2026-06-19 00:53:38,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:53:38,891.891 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 00:53:41,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:53:41,916.916 INFO    ] Checking for system updates...
[2026-06-19 00:53:41,953.953 INFO    ] 200
[2026-06-19 00:53:41,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:42,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:53:42,014.014 INFO    ] No update needed
[2026-06-19 00:53:42,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 00:53:42,051.051 INFO    ] 200
[2026-06-19 00:53:42,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:42,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:53:42,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:53:42,154.154 INFO    ] No camera update needed
[2026-06-19 00:53:42,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:53:42,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:53:42,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:53:42,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:53:44,213.213 INFO    ] ================================================
[2026-06-19 00:53:44,228.228 INFO    ] Launching Daemon at Fri Jun 19 00:53:44 IST 2026
[2026-06-19 00:53:44,239.239 INFO    ] ================================================
[2026-06-19 00:53:44,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:53:44
[2026-06-19 00:53:45,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:53:45,659.659 INFO    ] Initializing speech engine...
[2026-06-19 00:53:45,668.668 INFO    ] 2026-06-19 00:53:45
[2026-06-19 00:53:45,913.913 INFO    ] 2026-06-19 00:53:45
[2026-06-19 00:53:45,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:53:46,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:53:46,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:53:46,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:53:46,283.283 INFO    ] time= 19/06/2026 00:53:46
[2026-06-19 00:53:46,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:53:46,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:53:46,437.437 INFO    ] No existing commands found in stream
[2026-06-19 00:53:51,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:53:51,470.470 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 00:53:54,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:53:54,698.698 INFO    ] Checking for system updates...
[2026-06-19 00:53:54,735.735 INFO    ] 200
[2026-06-19 00:53:54,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:54,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:53:54,794.794 INFO    ] No update needed
[2026-06-19 00:53:54,797.797 INFO    ] Checking for camera pi updates...
[2026-06-19 00:53:54,833.833 INFO    ] 200
[2026-06-19 00:53:54,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:53:54,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:53:54,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:53:54,936.936 INFO    ] No camera update needed
[2026-06-19 00:53:54,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:53:54,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:53:54,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:53:54,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:53:56,994.994 INFO    ] ================================================
[2026-06-19 00:53:57,010.010 INFO    ] Launching Daemon at Fri Jun 19 00:53:57 IST 2026
[2026-06-19 00:53:57,020.020 INFO    ] ================================================
[2026-06-19 00:53:57,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:53:57
[2026-06-19 00:53:58,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:53:58,610.610 INFO    ] Initializing speech engine...
[2026-06-19 00:53:58,620.620 INFO    ] 2026-06-19 00:53:58
[2026-06-19 00:53:58,887.887 INFO    ] 2026-06-19 00:53:58
[2026-06-19 00:53:58,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:53:59,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:53:59,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:53:59,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:53:59,260.260 INFO    ] time= 19/06/2026 00:53:59
[2026-06-19 00:53:59,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:53:59,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:53:59,383.383 INFO    ] No existing commands found in stream
[2026-06-19 00:54:04,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:54:04,398.398 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 00:54:05,993.993 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:54:05,995.995 INFO    ] Checking for system updates...
[2026-06-19 00:54:06,032.032 INFO    ] 200
[2026-06-19 00:54:06,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:06,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:54:06,103.103 INFO    ] No update needed
[2026-06-19 00:54:06,105.105 INFO    ] Checking for camera pi updates...
[2026-06-19 00:54:06,139.139 INFO    ] 200
[2026-06-19 00:54:06,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:06,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:54:06,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:54:06,234.234 INFO    ] No camera update needed
[2026-06-19 00:54:06,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:54:06,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:54:06,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:54:06,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:54:08,290.290 INFO    ] ================================================
[2026-06-19 00:54:08,305.305 INFO    ] Launching Daemon at Fri Jun 19 00:54:08 IST 2026
[2026-06-19 00:54:08,316.316 INFO    ] ================================================
[2026-06-19 00:54:08,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:54:08
[2026-06-19 00:54:09,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:54:09,745.745 INFO    ] Initializing speech engine...
[2026-06-19 00:54:09,751.751 INFO    ] 2026-06-19 00:54:09
[2026-06-19 00:54:09,995.995 INFO    ] 2026-06-19 00:54:09
[2026-06-19 00:54:10,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:54:10,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:54:10,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:54:10,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:54:10,464.464 INFO    ] time= 19/06/2026 00:54:10
[2026-06-19 00:54:10,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:54:10,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:54:10,625.625 INFO    ] No existing commands found in stream
[2026-06-19 00:54:15,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:54:15,664.664 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 00:54:18,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:54:18,374.374 INFO    ] Checking for system updates...
[2026-06-19 00:54:18,411.411 INFO    ] 200
[2026-06-19 00:54:18,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:18,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:54:18,474.474 INFO    ] No update needed
[2026-06-19 00:54:18,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 00:54:18,510.510 INFO    ] 200
[2026-06-19 00:54:18,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:18,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:54:18,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:54:18,709.709 INFO    ] No camera update needed
[2026-06-19 00:54:18,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:54:18,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:54:18,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:54:18,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:54:20,765.765 INFO    ] ================================================
[2026-06-19 00:54:20,780.780 INFO    ] Launching Daemon at Fri Jun 19 00:54:20 IST 2026
[2026-06-19 00:54:20,791.791 INFO    ] ================================================
[2026-06-19 00:54:21,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:54:21
[2026-06-19 00:54:22,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:54:22,408.408 INFO    ] Initializing speech engine...
[2026-06-19 00:54:22,413.413 INFO    ] 2026-06-19 00:54:22
[2026-06-19 00:54:22,691.691 INFO    ] 2026-06-19 00:54:22
[2026-06-19 00:54:22,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:54:22,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:54:22,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:54:23,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:54:23,176.176 INFO    ] time= 19/06/2026 00:54:23
[2026-06-19 00:54:23,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:54:23,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:54:23,358.358 INFO    ] No existing commands found in stream
[2026-06-19 00:54:28,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:54:28,391.391 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 00:54:29,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:54:29,960.960 INFO    ] Checking for system updates...
[2026-06-19 00:54:30,001.001 INFO    ] 200
[2026-06-19 00:54:30,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:30,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:54:30,059.059 INFO    ] No update needed
[2026-06-19 00:54:30,062.062 INFO    ] Checking for camera pi updates...
[2026-06-19 00:54:30,098.098 INFO    ] 200
[2026-06-19 00:54:30,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:30,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:54:30,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:54:30,192.192 INFO    ] No camera update needed
[2026-06-19 00:54:30,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:54:30,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:54:30,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:54:30,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:54:32,249.249 INFO    ] ================================================
[2026-06-19 00:54:32,266.266 INFO    ] Launching Daemon at Fri Jun 19 00:54:32 IST 2026
[2026-06-19 00:54:32,277.277 INFO    ] ================================================
[2026-06-19 00:54:32,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:54:32
[2026-06-19 00:54:33,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:54:33,750.750 INFO    ] Initializing speech engine...
[2026-06-19 00:54:33,757.757 INFO    ] 2026-06-19 00:54:33
[2026-06-19 00:54:34,017.017 INFO    ] 2026-06-19 00:54:34
[2026-06-19 00:54:34,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:54:34,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:54:34,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:54:34,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:54:34,476.476 INFO    ] time= 19/06/2026 00:54:34
[2026-06-19 00:54:34,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:54:34,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:54:34,623.623 INFO    ] No existing commands found in stream
[2026-06-19 00:54:39,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:54:39,638.638 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 00:54:42,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:54:42,523.523 INFO    ] Checking for system updates...
[2026-06-19 00:54:42,559.559 INFO    ] 200
[2026-06-19 00:54:42,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:42,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:54:42,617.617 INFO    ] No update needed
[2026-06-19 00:54:42,619.619 INFO    ] Checking for camera pi updates...
[2026-06-19 00:54:42,654.654 INFO    ] 200
[2026-06-19 00:54:42,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:42,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:54:42,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:54:42,746.746 INFO    ] No camera update needed
[2026-06-19 00:54:42,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:54:42,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:54:42,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:54:42,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:54:44,803.803 INFO    ] ================================================
[2026-06-19 00:54:44,818.818 INFO    ] Launching Daemon at Fri Jun 19 00:54:44 IST 2026
[2026-06-19 00:54:44,829.829 INFO    ] ================================================
[2026-06-19 00:54:45,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:54:45
[2026-06-19 00:54:45,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:54:46,231.231 INFO    ] Initializing speech engine...
[2026-06-19 00:54:46,254.254 INFO    ] 2026-06-19 00:54:46
[2026-06-19 00:54:46,510.510 INFO    ] 2026-06-19 00:54:46
[2026-06-19 00:54:46,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:54:46,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:54:46,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:54:46,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:54:46,882.882 INFO    ] time= 19/06/2026 00:54:46
[2026-06-19 00:54:46,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:54:46,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:54:46,976.976 INFO    ] No existing commands found in stream
[2026-06-19 00:54:52,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:54:52,014.014 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 00:54:56,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:54:56,350.350 INFO    ] Checking for system updates...
[2026-06-19 00:54:56,387.387 INFO    ] 200
[2026-06-19 00:54:56,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:56,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:54:56,447.447 INFO    ] No update needed
[2026-06-19 00:54:56,450.450 INFO    ] Checking for camera pi updates...
[2026-06-19 00:54:56,485.485 INFO    ] 200
[2026-06-19 00:54:56,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:54:56,533.533 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:54:56,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:54:56,582.582 INFO    ] No camera update needed
[2026-06-19 00:54:56,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:54:56,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:54:56,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:54:56,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:54:58,640.640 INFO    ] ================================================
[2026-06-19 00:54:58,656.656 INFO    ] Launching Daemon at Fri Jun 19 00:54:58 IST 2026
[2026-06-19 00:54:58,667.667 INFO    ] ================================================
[2026-06-19 00:54:59,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:54:59
[2026-06-19 00:54:59,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:55:00,081.081 INFO    ] Initializing speech engine...
[2026-06-19 00:55:00,091.091 INFO    ] 2026-06-19 00:55:00
[2026-06-19 00:55:00,383.383 INFO    ] 2026-06-19 00:55:00
[2026-06-19 00:55:00,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:55:00,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:55:00,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:55:00,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:55:00,796.796 INFO    ] time= 19/06/2026 00:55:00
[2026-06-19 00:55:00,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:55:00,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:55:00,879.879 INFO    ] No existing commands found in stream
[2026-06-19 00:55:05,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:55:05,913.913 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 00:55:07,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:55:07,242.242 INFO    ] Checking for system updates...
[2026-06-19 00:55:07,282.282 INFO    ] 200
[2026-06-19 00:55:07,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:07,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:55:07,346.346 INFO    ] No update needed
[2026-06-19 00:55:07,348.348 INFO    ] Checking for camera pi updates...
[2026-06-19 00:55:07,383.383 INFO    ] 200
[2026-06-19 00:55:07,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:07,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:55:07,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:55:07,479.479 INFO    ] No camera update needed
[2026-06-19 00:55:07,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:55:07,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:55:07,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:55:07,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:55:09,534.534 INFO    ] ================================================
[2026-06-19 00:55:09,548.548 INFO    ] Launching Daemon at Fri Jun 19 00:55:09 IST 2026
[2026-06-19 00:55:09,559.559 INFO    ] ================================================
[2026-06-19 00:55:10,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:55:10
[2026-06-19 00:55:10,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:55:11,000.000 INFO    ] Initializing speech engine...
[2026-06-19 00:55:11,014.014 INFO    ] 2026-06-19 00:55:11
[2026-06-19 00:55:11,265.265 INFO    ] 2026-06-19 00:55:11
[2026-06-19 00:55:11,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:55:11,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:55:11,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:55:11,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:55:11,636.636 INFO    ] time= 19/06/2026 00:55:11
[2026-06-19 00:55:11,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:55:11,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:55:11,808.808 INFO    ] No existing commands found in stream
[2026-06-19 00:55:16,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:55:16,841.841 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 00:55:17,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:55:17,645.645 INFO    ] Checking for system updates...
[2026-06-19 00:55:17,685.685 INFO    ] 200
[2026-06-19 00:55:17,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:17,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:55:17,742.742 INFO    ] No update needed
[2026-06-19 00:55:17,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 00:55:17,778.778 INFO    ] 200
[2026-06-19 00:55:17,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:17,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:55:17,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:55:17,881.881 INFO    ] No camera update needed
[2026-06-19 00:55:17,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:55:17,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:55:17,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:55:17,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:55:19,936.936 INFO    ] ================================================
[2026-06-19 00:55:19,951.951 INFO    ] Launching Daemon at Fri Jun 19 00:55:19 IST 2026
[2026-06-19 00:55:19,962.962 INFO    ] ================================================
[2026-06-19 00:55:20,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:55:20
[2026-06-19 00:55:21,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:55:21,425.425 INFO    ] Initializing speech engine...
[2026-06-19 00:55:21,430.430 INFO    ] 2026-06-19 00:55:21
[2026-06-19 00:55:21,690.690 INFO    ] 2026-06-19 00:55:21
[2026-06-19 00:55:21,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:55:21,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:55:21,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:55:22,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:55:22,179.179 INFO    ] time= 19/06/2026 00:55:22
[2026-06-19 00:55:22,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:55:22,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:55:22,362.362 INFO    ] No existing commands found in stream
[2026-06-19 00:55:27,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:55:27,396.396 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 00:55:30,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:55:30,020.020 INFO    ] Checking for system updates...
[2026-06-19 00:55:30,056.056 INFO    ] 200
[2026-06-19 00:55:30,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:30,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:55:30,120.120 INFO    ] No update needed
[2026-06-19 00:55:30,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 00:55:30,156.156 INFO    ] 200
[2026-06-19 00:55:30,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:30,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:55:30,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:55:30,246.246 INFO    ] No camera update needed
[2026-06-19 00:55:30,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:55:30,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:55:30,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:55:30,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:55:32,306.306 INFO    ] ================================================
[2026-06-19 00:55:32,322.322 INFO    ] Launching Daemon at Fri Jun 19 00:55:32 IST 2026
[2026-06-19 00:55:32,334.334 INFO    ] ================================================
[2026-06-19 00:55:32,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:55:32
[2026-06-19 00:55:33,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:55:33,905.905 INFO    ] Initializing speech engine...
[2026-06-19 00:55:33,917.917 INFO    ] 2026-06-19 00:55:33
[2026-06-19 00:55:34,197.197 INFO    ] 2026-06-19 00:55:34
[2026-06-19 00:55:34,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:55:34,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:55:34,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:55:34,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:55:34,684.684 INFO    ] time= 19/06/2026 00:55:34
[2026-06-19 00:55:34,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:55:34,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:55:34,854.854 INFO    ] No existing commands found in stream
[2026-06-19 00:55:39,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:55:39,885.885 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 00:55:43,382.382 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:55:43,386.386 INFO    ] Checking for system updates...
[2026-06-19 00:55:43,423.423 INFO    ] 200
[2026-06-19 00:55:43,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:43,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:55:43,491.491 INFO    ] No update needed
[2026-06-19 00:55:43,493.493 INFO    ] Checking for camera pi updates...
[2026-06-19 00:55:43,530.530 INFO    ] 200
[2026-06-19 00:55:43,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:43,574.574 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:55:43,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:55:43,630.630 INFO    ] No camera update needed
[2026-06-19 00:55:43,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:55:43,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:55:43,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:55:43,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:55:45,684.684 INFO    ] ================================================
[2026-06-19 00:55:45,700.700 INFO    ] Launching Daemon at Fri Jun 19 00:55:45 IST 2026
[2026-06-19 00:55:45,710.710 INFO    ] ================================================
[2026-06-19 00:55:46,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:55:46
[2026-06-19 00:55:46,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:55:47,302.302 INFO    ] Initializing speech engine...
[2026-06-19 00:55:47,316.316 INFO    ] 2026-06-19 00:55:47
[2026-06-19 00:55:47,595.595 INFO    ] 2026-06-19 00:55:47
[2026-06-19 00:55:47,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:55:47,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:55:47,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:55:48,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:55:48,127.127 INFO    ] time= 19/06/2026 00:55:48
[2026-06-19 00:55:48,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:55:48,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:55:48,269.269 INFO    ] No existing commands found in stream
[2026-06-19 00:55:53,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:55:53,301.301 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 00:55:56,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:55:56,782.782 INFO    ] Checking for system updates...
[2026-06-19 00:55:56,820.820 INFO    ] 200
[2026-06-19 00:55:56,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:56,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:55:56,888.888 INFO    ] No update needed
[2026-06-19 00:55:56,890.890 INFO    ] Checking for camera pi updates...
[2026-06-19 00:55:56,925.925 INFO    ] 200
[2026-06-19 00:55:56,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:55:56,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:55:57,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:55:57,015.015 INFO    ] No camera update needed
[2026-06-19 00:55:57,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:55:57,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:55:57,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:55:57,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:55:59,070.070 INFO    ] ================================================
[2026-06-19 00:55:59,085.085 INFO    ] Launching Daemon at Fri Jun 19 00:55:59 IST 2026
[2026-06-19 00:55:59,097.097 INFO    ] ================================================
[2026-06-19 00:55:59,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:55:59
[2026-06-19 00:56:00,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:56:00,530.530 INFO    ] Initializing speech engine...
[2026-06-19 00:56:00,539.539 INFO    ] 2026-06-19 00:56:00
[2026-06-19 00:56:00,835.835 INFO    ] 2026-06-19 00:56:00
[2026-06-19 00:56:00,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:56:01,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:56:01,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:56:01,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:56:01,191.191 INFO    ] time= 19/06/2026 00:56:01
[2026-06-19 00:56:01,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:56:01,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:56:01,276.276 INFO    ] No existing commands found in stream
[2026-06-19 00:56:06,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:56:06,323.323 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 00:56:10,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 00:56:10,373.373 INFO    ] Checking for system updates...
[2026-06-19 00:56:10,410.410 INFO    ] 200
[2026-06-19 00:56:10,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:56:10,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:56:10,467.467 INFO    ] No update needed
[2026-06-19 00:56:10,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 00:56:10,504.504 INFO    ] 200
[2026-06-19 00:56:10,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:56:10,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:56:10,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:56:10,609.609 INFO    ] No camera update needed
[2026-06-19 00:56:10,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:56:10,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:56:10,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:56:10,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:56:12,665.665 INFO    ] ================================================
[2026-06-19 00:56:12,680.680 INFO    ] Launching Daemon at Fri Jun 19 00:56:12 IST 2026
[2026-06-19 00:56:12,690.690 INFO    ] ================================================
[2026-06-19 00:56:13,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:56:13
[2026-06-19 00:56:14,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:56:14,321.321 INFO    ] Initializing speech engine...
[2026-06-19 00:56:14,330.330 INFO    ] 2026-06-19 00:56:14
[2026-06-19 00:56:14,604.604 INFO    ] 2026-06-19 00:56:14
[2026-06-19 00:56:14,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:56:14,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:56:14,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:56:15,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:56:15,091.091 INFO    ] time= 19/06/2026 00:56:15
[2026-06-19 00:56:15,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:56:15,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:56:15,293.293 INFO    ] No existing commands found in stream
[2026-06-19 00:56:20,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:56:20,327.327 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 00:56:22,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:56:22,729.729 INFO    ] Checking for system updates...
[2026-06-19 00:56:22,771.771 INFO    ] 200
[2026-06-19 00:56:22,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:56:22,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:56:22,836.836 INFO    ] No update needed
[2026-06-19 00:56:22,838.838 INFO    ] Checking for camera pi updates...
[2026-06-19 00:56:22,871.871 INFO    ] 200
[2026-06-19 00:56:22,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:56:22,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:56:23,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:56:23,065.065 INFO    ] No camera update needed
[2026-06-19 00:56:23,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:56:23,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:56:23,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:56:23,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:56:25,120.120 INFO    ] ================================================
[2026-06-19 00:56:25,136.136 INFO    ] Launching Daemon at Fri Jun 19 00:56:25 IST 2026
[2026-06-19 00:56:25,147.147 INFO    ] ================================================
[2026-06-19 00:56:25,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:56:25
[2026-06-19 00:56:26,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:56:26,554.554 INFO    ] Initializing speech engine...
[2026-06-19 00:56:26,562.562 INFO    ] 2026-06-19 00:56:26
[2026-06-19 00:56:26,859.859 INFO    ] 2026-06-19 00:56:26
[2026-06-19 00:56:26,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:56:27,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:56:27,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:56:27,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:56:27,217.217 INFO    ] time= 19/06/2026 00:56:27
[2026-06-19 00:56:27,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:56:27,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:56:27,301.301 INFO    ] No existing commands found in stream
[2026-06-19 00:56:32,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:56:32,349.349 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 00:56:32,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:56:32,931.931 INFO    ] Checking for system updates...
[2026-06-19 00:56:32,970.970 INFO    ] 200
[2026-06-19 00:56:32,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:56:33,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:56:33,034.034 INFO    ] No update needed
[2026-06-19 00:56:33,040.040 INFO    ] Checking for camera pi updates...
[2026-06-19 00:56:33,080.080 INFO    ] 200
[2026-06-19 00:56:33,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:56:33,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:56:33,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:56:33,171.171 INFO    ] No camera update needed
[2026-06-19 00:56:33,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:56:33,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:56:33,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:56:33,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:56:35,231.231 INFO    ] ================================================
[2026-06-19 00:56:35,246.246 INFO    ] Launching Daemon at Fri Jun 19 00:56:35 IST 2026
[2026-06-19 00:56:35,257.257 INFO    ] ================================================
[2026-06-19 00:56:35,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:56:35
[2026-06-19 00:56:36,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:56:36,686.686 INFO    ] Initializing speech engine...
[2026-06-19 00:56:36,696.696 INFO    ] 2026-06-19 00:56:36
[2026-06-19 00:56:36,947.947 INFO    ] 2026-06-19 00:56:36
[2026-06-19 00:56:36,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:56:37,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:56:37,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:56:37,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:56:37,410.410 INFO    ] time= 19/06/2026 00:56:37
[2026-06-19 00:56:37,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:56:37,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:56:37,560.560 INFO    ] No existing commands found in stream
[2026-06-19 00:56:42,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:56:42,577.577 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 00:56:47,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:56:47,713.713 INFO    ] Checking for system updates...
[2026-06-19 00:56:47,749.749 INFO    ] 200
[2026-06-19 00:56:47,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:56:47,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:56:47,806.806 INFO    ] No update needed
[2026-06-19 00:56:47,808.808 INFO    ] Checking for camera pi updates...
[2026-06-19 00:56:47,841.841 INFO    ] 200
[2026-06-19 00:56:47,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:56:47,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:56:47,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:56:47,921.921 INFO    ] No camera update needed
[2026-06-19 00:56:47,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:56:47,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:56:47,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:56:47,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:56:49,978.978 INFO    ] ================================================
[2026-06-19 00:56:49,993.993 INFO    ] Launching Daemon at Fri Jun 19 00:56:49 IST 2026
[2026-06-19 00:56:50,004.004 INFO    ] ================================================
[2026-06-19 00:56:50,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:56:50
[2026-06-19 00:56:51,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:56:51,440.440 INFO    ] Initializing speech engine...
[2026-06-19 00:56:51,449.449 INFO    ] 2026-06-19 00:56:51
[2026-06-19 00:56:51,699.699 INFO    ] 2026-06-19 00:56:51
[2026-06-19 00:56:51,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:56:51,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:56:51,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:56:52,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:56:52,191.191 INFO    ] time= 19/06/2026 00:56:52
[2026-06-19 00:56:52,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:56:52,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:56:52,334.334 INFO    ] No existing commands found in stream
[2026-06-19 00:56:57,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:56:57,349.349 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 00:57:00,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:57:00,838.838 INFO    ] Checking for system updates...
[2026-06-19 00:57:00,878.878 INFO    ] 200
[2026-06-19 00:57:00,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:00,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:57:00,942.942 INFO    ] No update needed
[2026-06-19 00:57:00,944.944 INFO    ] Checking for camera pi updates...
[2026-06-19 00:57:00,981.981 INFO    ] 200
[2026-06-19 00:57:00,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:01,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:57:01,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:57:01,081.081 INFO    ] No camera update needed
[2026-06-19 00:57:01,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:57:01,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:57:01,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:57:01,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:57:03,145.145 INFO    ] ================================================
[2026-06-19 00:57:03,168.168 INFO    ] Launching Daemon at Fri Jun 19 00:57:03 IST 2026
[2026-06-19 00:57:03,181.181 INFO    ] ================================================
[2026-06-19 00:57:03,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:57:03
[2026-06-19 00:57:04,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:57:04,881.881 INFO    ] Initializing speech engine...
[2026-06-19 00:57:04,889.889 INFO    ] 2026-06-19 00:57:04
[2026-06-19 00:57:05,175.175 INFO    ] 2026-06-19 00:57:05
[2026-06-19 00:57:05,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:57:05,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:57:05,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:57:05,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:57:05,635.635 INFO    ] time= 19/06/2026 00:57:05
[2026-06-19 00:57:05,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:57:05,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:57:05,782.782 INFO    ] No existing commands found in stream
[2026-06-19 00:57:10,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:57:10,798.798 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 00:57:13,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:57:13,591.591 INFO    ] Checking for system updates...
[2026-06-19 00:57:13,629.629 INFO    ] 200
[2026-06-19 00:57:13,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:13,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:57:13,690.690 INFO    ] No update needed
[2026-06-19 00:57:13,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 00:57:13,729.729 INFO    ] 200
[2026-06-19 00:57:13,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:13,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:57:13,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:57:13,830.830 INFO    ] No camera update needed
[2026-06-19 00:57:13,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:57:13,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:57:13,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:57:13,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:57:15,888.888 INFO    ] ================================================
[2026-06-19 00:57:15,903.903 INFO    ] Launching Daemon at Fri Jun 19 00:57:15 IST 2026
[2026-06-19 00:57:15,914.914 INFO    ] ================================================
[2026-06-19 00:57:16,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:57:16
[2026-06-19 00:57:17,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:57:17,548.548 INFO    ] Initializing speech engine...
[2026-06-19 00:57:17,558.558 INFO    ] 2026-06-19 00:57:17
[2026-06-19 00:57:17,831.831 INFO    ] 2026-06-19 00:57:17
[2026-06-19 00:57:17,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:57:18,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:57:18,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:57:18,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:57:18,328.328 INFO    ] time= 19/06/2026 00:57:18
[2026-06-19 00:57:18,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:57:18,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:57:18,468.468 INFO    ] No existing commands found in stream
[2026-06-19 00:57:23,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:57:23,507.507 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 00:57:26,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:57:26,806.806 INFO    ] Checking for system updates...
[2026-06-19 00:57:26,843.843 INFO    ] 200
[2026-06-19 00:57:26,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:26,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:57:26,902.902 INFO    ] No update needed
[2026-06-19 00:57:26,904.904 INFO    ] Checking for camera pi updates...
[2026-06-19 00:57:26,940.940 INFO    ] 200
[2026-06-19 00:57:26,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:26,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:57:27,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:57:27,039.039 INFO    ] No camera update needed
[2026-06-19 00:57:27,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:57:27,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:57:27,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:57:27,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:57:29,097.097 INFO    ] ================================================
[2026-06-19 00:57:29,112.112 INFO    ] Launching Daemon at Fri Jun 19 00:57:29 IST 2026
[2026-06-19 00:57:29,123.123 INFO    ] ================================================
[2026-06-19 00:57:29,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:57:29
[2026-06-19 00:57:30,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:57:30,754.754 INFO    ] Initializing speech engine...
[2026-06-19 00:57:30,768.768 INFO    ] 2026-06-19 00:57:30
[2026-06-19 00:57:31,081.081 INFO    ] 2026-06-19 00:57:31
[2026-06-19 00:57:31,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:57:31,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:57:31,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:57:31,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:57:31,590.590 INFO    ] time= 19/06/2026 00:57:31
[2026-06-19 00:57:31,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:57:31,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:57:31,728.728 INFO    ] No existing commands found in stream
[2026-06-19 00:57:36,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:57:36,759.759 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 00:57:38,789.789 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:57:38,792.792 INFO    ] Checking for system updates...
[2026-06-19 00:57:38,834.834 INFO    ] 200
[2026-06-19 00:57:38,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:38,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:57:38,901.901 INFO    ] No update needed
[2026-06-19 00:57:38,904.904 INFO    ] Checking for camera pi updates...
[2026-06-19 00:57:38,940.940 INFO    ] 200
[2026-06-19 00:57:38,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:38,991.991 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:57:39,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:57:39,040.040 INFO    ] No camera update needed
[2026-06-19 00:57:39,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:57:39,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:57:39,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:57:39,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:57:41,098.098 INFO    ] ================================================
[2026-06-19 00:57:41,114.114 INFO    ] Launching Daemon at Fri Jun 19 00:57:41 IST 2026
[2026-06-19 00:57:41,124.124 INFO    ] ================================================
[2026-06-19 00:57:41,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:57:41
[2026-06-19 00:57:42,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:57:42,556.556 INFO    ] Initializing speech engine...
[2026-06-19 00:57:42,566.566 INFO    ] 2026-06-19 00:57:42
[2026-06-19 00:57:42,865.865 INFO    ] 2026-06-19 00:57:42
[2026-06-19 00:57:42,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:57:43,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:57:43,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:57:43,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:57:43,251.251 INFO    ] time= 19/06/2026 00:57:43
[2026-06-19 00:57:43,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:57:43,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:57:43,378.378 INFO    ] No existing commands found in stream
[2026-06-19 00:57:48,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:57:48,394.394 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 00:57:51,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:57:51,300.300 INFO    ] Checking for system updates...
[2026-06-19 00:57:51,336.336 INFO    ] 200
[2026-06-19 00:57:51,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:51,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:57:51,395.395 INFO    ] No update needed
[2026-06-19 00:57:51,398.398 INFO    ] Checking for camera pi updates...
[2026-06-19 00:57:51,432.432 INFO    ] 200
[2026-06-19 00:57:51,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:57:51,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:57:51,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:57:51,530.530 INFO    ] No camera update needed
[2026-06-19 00:57:51,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:57:51,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:57:51,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:57:51,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:57:53,586.586 INFO    ] ================================================
[2026-06-19 00:57:53,602.602 INFO    ] Launching Daemon at Fri Jun 19 00:57:53 IST 2026
[2026-06-19 00:57:53,613.613 INFO    ] ================================================
[2026-06-19 00:57:54,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:57:54
[2026-06-19 00:57:54,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:57:55,047.047 INFO    ] Initializing speech engine...
[2026-06-19 00:57:55,056.056 INFO    ] 2026-06-19 00:57:55
[2026-06-19 00:57:55,305.305 INFO    ] 2026-06-19 00:57:55
[2026-06-19 00:57:55,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:57:55,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:57:55,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:57:55,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:57:55,798.798 INFO    ] time= 19/06/2026 00:57:55
[2026-06-19 00:57:55,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:57:55,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:57:55,989.989 INFO    ] No existing commands found in stream
[2026-06-19 00:58:01,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:58:01,022.022 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 00:58:03,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:58:03,423.423 INFO    ] Checking for system updates...
[2026-06-19 00:58:03,466.466 INFO    ] 200
[2026-06-19 00:58:03,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:03,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:58:03,524.524 INFO    ] No update needed
[2026-06-19 00:58:03,527.527 INFO    ] Checking for camera pi updates...
[2026-06-19 00:58:03,562.562 INFO    ] 200
[2026-06-19 00:58:03,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:03,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:58:03,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:58:03,669.669 INFO    ] No camera update needed
[2026-06-19 00:58:03,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:58:03,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:58:03,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:58:03,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:58:05,729.729 INFO    ] ================================================
[2026-06-19 00:58:05,743.743 INFO    ] Launching Daemon at Fri Jun 19 00:58:05 IST 2026
[2026-06-19 00:58:05,754.754 INFO    ] ================================================
[2026-06-19 00:58:06,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:58:06
[2026-06-19 00:58:06,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:58:07,221.221 INFO    ] Initializing speech engine...
[2026-06-19 00:58:07,235.235 INFO    ] 2026-06-19 00:58:07
[2026-06-19 00:58:07,507.507 INFO    ] 2026-06-19 00:58:07
[2026-06-19 00:58:07,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:58:07,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:58:07,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:58:07,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:58:07,989.989 INFO    ] time= 19/06/2026 00:58:07
[2026-06-19 00:58:08,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:58:08,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:58:08,153.153 INFO    ] No existing commands found in stream
[2026-06-19 00:58:13,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:58:13,191.191 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 00:58:17,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:58:17,340.340 INFO    ] Checking for system updates...
[2026-06-19 00:58:17,376.376 INFO    ] 200
[2026-06-19 00:58:17,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:17,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:58:17,434.434 INFO    ] No update needed
[2026-06-19 00:58:17,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 00:58:17,480.480 INFO    ] 200
[2026-06-19 00:58:17,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:17,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:58:17,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:58:17,579.579 INFO    ] No camera update needed
[2026-06-19 00:58:17,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:58:17,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:58:17,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:58:17,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:58:19,635.635 INFO    ] ================================================
[2026-06-19 00:58:19,650.650 INFO    ] Launching Daemon at Fri Jun 19 00:58:19 IST 2026
[2026-06-19 00:58:19,661.661 INFO    ] ================================================
[2026-06-19 00:58:20,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:58:20
[2026-06-19 00:58:20,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:58:21,071.071 INFO    ] Initializing speech engine...
[2026-06-19 00:58:21,077.077 INFO    ] 2026-06-19 00:58:21
[2026-06-19 00:58:21,372.372 INFO    ] 2026-06-19 00:58:21
[2026-06-19 00:58:21,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:58:21,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:58:21,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:58:21,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:58:21,775.775 INFO    ] time= 19/06/2026 00:58:21
[2026-06-19 00:58:21,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:58:21,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:58:21,837.837 INFO    ] No existing commands found in stream
[2026-06-19 00:58:26,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:58:26,871.871 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 00:58:30,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:58:30,219.219 INFO    ] Checking for system updates...
[2026-06-19 00:58:30,254.254 INFO    ] 200
[2026-06-19 00:58:30,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:30,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:58:30,316.316 INFO    ] No update needed
[2026-06-19 00:58:30,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 00:58:30,352.352 INFO    ] 200
[2026-06-19 00:58:30,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:30,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:58:30,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:58:30,547.547 INFO    ] No camera update needed
[2026-06-19 00:58:30,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:58:30,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:58:30,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:58:30,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:58:32,603.603 INFO    ] ================================================
[2026-06-19 00:58:32,620.620 INFO    ] Launching Daemon at Fri Jun 19 00:58:32 IST 2026
[2026-06-19 00:58:32,632.632 INFO    ] ================================================
[2026-06-19 00:58:33,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:58:33
[2026-06-19 00:58:33,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:58:34,105.105 INFO    ] Initializing speech engine...
[2026-06-19 00:58:34,128.128 INFO    ] 2026-06-19 00:58:34
[2026-06-19 00:58:34,394.394 INFO    ] 2026-06-19 00:58:34
[2026-06-19 00:58:34,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:58:34,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:58:34,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:58:34,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:58:34,772.772 INFO    ] time= 19/06/2026 00:58:34
[2026-06-19 00:58:34,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:58:34,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:58:34,896.896 INFO    ] No existing commands found in stream
[2026-06-19 00:58:39,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:58:39,910.910 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 00:58:40,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:58:40,499.499 INFO    ] Checking for system updates...
[2026-06-19 00:58:40,536.536 INFO    ] 200
[2026-06-19 00:58:40,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:40,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:58:40,595.595 INFO    ] No update needed
[2026-06-19 00:58:40,598.598 INFO    ] Checking for camera pi updates...
[2026-06-19 00:58:40,632.632 INFO    ] 200
[2026-06-19 00:58:40,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:40,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:58:40,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:58:40,729.729 INFO    ] No camera update needed
[2026-06-19 00:58:40,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:58:40,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:58:40,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:58:40,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:58:42,788.788 INFO    ] ================================================
[2026-06-19 00:58:42,804.804 INFO    ] Launching Daemon at Fri Jun 19 00:58:42 IST 2026
[2026-06-19 00:58:42,815.815 INFO    ] ================================================
[2026-06-19 00:58:43,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:58:43
[2026-06-19 00:58:43,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:58:44,239.239 INFO    ] Initializing speech engine...
[2026-06-19 00:58:44,260.260 INFO    ] 2026-06-19 00:58:44
[2026-06-19 00:58:44,536.536 INFO    ] 2026-06-19 00:58:44
[2026-06-19 00:58:44,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:58:44,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:58:44,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:58:44,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:58:44,951.951 INFO    ] time= 19/06/2026 00:58:44
[2026-06-19 00:58:44,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:58:44,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:58:45,039.039 INFO    ] No existing commands found in stream
[2026-06-19 00:58:50,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:58:50,055.055 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 00:58:53,009.009 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 00:58:53,012.012 INFO    ] Checking for system updates...
[2026-06-19 00:58:53,048.048 INFO    ] 200
[2026-06-19 00:58:53,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:53,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:58:53,107.107 INFO    ] No update needed
[2026-06-19 00:58:53,109.109 INFO    ] Checking for camera pi updates...
[2026-06-19 00:58:53,144.144 INFO    ] 200
[2026-06-19 00:58:53,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:58:53,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:58:53,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:58:53,242.242 INFO    ] No camera update needed
[2026-06-19 00:58:53,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:58:53,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:58:53,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:58:53,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:58:55,298.298 INFO    ] ================================================
[2026-06-19 00:58:55,313.313 INFO    ] Launching Daemon at Fri Jun 19 00:58:55 IST 2026
[2026-06-19 00:58:55,324.324 INFO    ] ================================================
[2026-06-19 00:58:55,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:58:55
[2026-06-19 00:58:56,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:58:56,964.964 INFO    ] Initializing speech engine...
[2026-06-19 00:58:56,975.975 INFO    ] 2026-06-19 00:58:56
[2026-06-19 00:58:57,235.235 INFO    ] 2026-06-19 00:58:57
[2026-06-19 00:58:57,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:58:57,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:58:57,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:58:57,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:58:57,707.707 INFO    ] time= 19/06/2026 00:58:57
[2026-06-19 00:58:57,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:58:57,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:58:57,889.889 INFO    ] No existing commands found in stream
[2026-06-19 00:59:02,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:59:02,911.911 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 00:59:06,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:59:06,457.457 INFO    ] Checking for system updates...
[2026-06-19 00:59:06,493.493 INFO    ] 200
[2026-06-19 00:59:06,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:06,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:59:06,550.550 INFO    ] No update needed
[2026-06-19 00:59:06,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 00:59:06,589.589 INFO    ] 200
[2026-06-19 00:59:06,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:06,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:59:06,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:59:06,680.680 INFO    ] No camera update needed
[2026-06-19 00:59:06,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:59:06,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:59:06,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:59:06,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:59:08,735.735 INFO    ] ================================================
[2026-06-19 00:59:08,750.750 INFO    ] Launching Daemon at Fri Jun 19 00:59:08 IST 2026
[2026-06-19 00:59:08,761.761 INFO    ] ================================================
[2026-06-19 00:59:09,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:59:09
[2026-06-19 00:59:09,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:59:10,183.183 INFO    ] Initializing speech engine...
[2026-06-19 00:59:10,189.189 INFO    ] 2026-06-19 00:59:10
[2026-06-19 00:59:10,447.447 INFO    ] 2026-06-19 00:59:10
[2026-06-19 00:59:10,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:59:10,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:59:10,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:59:10,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:59:10,889.889 INFO    ] time= 19/06/2026 00:59:10
[2026-06-19 00:59:10,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:59:10,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:59:11,049.049 INFO    ] No existing commands found in stream
[2026-06-19 00:59:16,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:59:16,064.064 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 00:59:17,213.213 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 00:59:17,215.215 INFO    ] Checking for system updates...
[2026-06-19 00:59:17,251.251 INFO    ] 200
[2026-06-19 00:59:17,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:17,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:59:17,310.310 INFO    ] No update needed
[2026-06-19 00:59:17,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 00:59:17,350.350 INFO    ] 200
[2026-06-19 00:59:17,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:17,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:59:17,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:59:17,443.443 INFO    ] No camera update needed
[2026-06-19 00:59:17,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:59:17,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:59:17,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:59:17,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:59:19,498.498 INFO    ] ================================================
[2026-06-19 00:59:19,513.513 INFO    ] Launching Daemon at Fri Jun 19 00:59:19 IST 2026
[2026-06-19 00:59:19,523.523 INFO    ] ================================================
[2026-06-19 00:59:20,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:59:20
[2026-06-19 00:59:20,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:59:20,938.938 INFO    ] Initializing speech engine...
[2026-06-19 00:59:20,958.958 INFO    ] 2026-06-19 00:59:20
[2026-06-19 00:59:21,222.222 INFO    ] 2026-06-19 00:59:21
[2026-06-19 00:59:21,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:59:21,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:59:21,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:59:21,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:59:21,607.607 INFO    ] time= 19/06/2026 00:59:21
[2026-06-19 00:59:21,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:59:21,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:59:21,713.713 INFO    ] No existing commands found in stream
[2026-06-19 00:59:26,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:59:26,728.728 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 00:59:28,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 00:59:28,094.094 INFO    ] Checking for system updates...
[2026-06-19 00:59:28,131.131 INFO    ] 200
[2026-06-19 00:59:28,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:28,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:59:28,188.188 INFO    ] No update needed
[2026-06-19 00:59:28,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 00:59:28,228.228 INFO    ] 200
[2026-06-19 00:59:28,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:28,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:59:28,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:59:28,323.323 INFO    ] No camera update needed
[2026-06-19 00:59:28,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:59:28,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:59:28,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:59:28,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:59:30,380.380 INFO    ] ================================================
[2026-06-19 00:59:30,395.395 INFO    ] Launching Daemon at Fri Jun 19 00:59:30 IST 2026
[2026-06-19 00:59:30,406.406 INFO    ] ================================================
[2026-06-19 00:59:31,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:59:31
[2026-06-19 00:59:31,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:59:32,036.036 INFO    ] Initializing speech engine...
[2026-06-19 00:59:32,048.048 INFO    ] 2026-06-19 00:59:32
[2026-06-19 00:59:32,319.319 INFO    ] 2026-06-19 00:59:32
[2026-06-19 00:59:32,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:59:32,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:59:32,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:59:32,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:59:32,812.812 INFO    ] time= 19/06/2026 00:59:32
[2026-06-19 00:59:32,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:59:32,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:59:33,050.050 INFO    ] No existing commands found in stream
[2026-06-19 00:59:38,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:59:38,075.075 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 00:59:40,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 00:59:40,309.309 INFO    ] Checking for system updates...
[2026-06-19 00:59:40,345.345 INFO    ] 200
[2026-06-19 00:59:40,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:40,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:59:40,407.407 INFO    ] No update needed
[2026-06-19 00:59:40,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 00:59:40,444.444 INFO    ] 200
[2026-06-19 00:59:40,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:40,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:59:40,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 00:59:40,543.543 INFO    ] No camera update needed
[2026-06-19 00:59:40,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:59:40,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:59:40,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:59:40,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:59:42,601.601 INFO    ] ================================================
[2026-06-19 00:59:42,616.616 INFO    ] Launching Daemon at Fri Jun 19 00:59:42 IST 2026
[2026-06-19 00:59:42,627.627 INFO    ] ================================================
[2026-06-19 00:59:43,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:59:43
[2026-06-19 00:59:43,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:59:44,172.172 INFO    ] Initializing speech engine...
[2026-06-19 00:59:44,182.182 INFO    ] 2026-06-19 00:59:44
[2026-06-19 00:59:44,442.442 INFO    ] 2026-06-19 00:59:44
[2026-06-19 00:59:44,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:59:44,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:59:44,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:59:44,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:59:44,928.928 INFO    ] time= 19/06/2026 00:59:44
[2026-06-19 00:59:44,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:59:45,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:59:45,075.075 INFO    ] No existing commands found in stream
[2026-06-19 00:59:50,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 00:59:50,091.091 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 00:59:52,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 00:59:52,656.656 INFO    ] Checking for system updates...
[2026-06-19 00:59:52,693.693 INFO    ] 200
[2026-06-19 00:59:52,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:52,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:59:52,751.751 INFO    ] No update needed
[2026-06-19 00:59:52,754.754 INFO    ] Checking for camera pi updates...
[2026-06-19 00:59:52,788.788 INFO    ] 200
[2026-06-19 00:59:52,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 00:59:52,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 00:59:52,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 00:59:52,877.877 INFO    ] No camera update needed
[2026-06-19 00:59:52,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-19 00:59:52,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 00:59:52,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 00:59:52,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 00:59:54,931.931 INFO    ] ================================================
[2026-06-19 00:59:54,946.946 INFO    ] Launching Daemon at Fri Jun 19 00:59:54 IST 2026
[2026-06-19 00:59:54,957.957 INFO    ] ================================================
[2026-06-19 00:59:55,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 00:59:55
[2026-06-19 00:59:56,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 00:59:56,396.396 INFO    ] Initializing speech engine...
[2026-06-19 00:59:56,405.405 INFO    ] 2026-06-19 00:59:56
[2026-06-19 00:59:56,651.651 INFO    ] 2026-06-19 00:59:56
[2026-06-19 00:59:56,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 00:59:56,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 00:59:56,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 00:59:57,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 00:59:57,120.120 INFO    ] time= 19/06/2026 00:59:57
[2026-06-19 00:59:57,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 00:59:57,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-19 00:59:57,269.269 INFO    ] No existing commands found in stream
[2026-06-19 01:00:02,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:00:02,281.281 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 01:00:08,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:00:08,390.390 INFO    ] Checking for system updates...
[2026-06-19 01:00:08,429.429 INFO    ] 200
[2026-06-19 01:00:08,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:08,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:00:08,486.486 INFO    ] No update needed
[2026-06-19 01:00:08,489.489 INFO    ] Checking for camera pi updates...
[2026-06-19 01:00:08,522.522 INFO    ] 200
[2026-06-19 01:00:08,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:08,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:00:08,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:00:08,620.620 INFO    ] No camera update needed
[2026-06-19 01:00:08,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:00:08,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:00:08,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:00:08,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:00:10,682.682 INFO    ] ================================================
[2026-06-19 01:00:10,697.697 INFO    ] Launching Daemon at Fri Jun 19 01:00:10 IST 2026
[2026-06-19 01:00:10,708.708 INFO    ] ================================================
[2026-06-19 01:00:11,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:00:11
[2026-06-19 01:00:11,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:00:12,199.199 INFO    ] Initializing speech engine...
[2026-06-19 01:00:12,212.212 INFO    ] 2026-06-19 01:00:12
[2026-06-19 01:00:12,495.495 INFO    ] 2026-06-19 01:00:12
[2026-06-19 01:00:12,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:00:12,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:00:12,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:00:12,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:00:12,917.917 INFO    ] time= 19/06/2026 01:00:12
[2026-06-19 01:00:12,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:00:12,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:00:13,031.031 INFO    ] No existing commands found in stream
[2026-06-19 01:00:18,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:00:18,044.044 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 01:00:21,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:00:21,290.290 INFO    ] Checking for system updates...
[2026-06-19 01:00:21,330.330 INFO    ] 200
[2026-06-19 01:00:21,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:21,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:00:21,388.388 INFO    ] No update needed
[2026-06-19 01:00:21,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 01:00:21,425.425 INFO    ] 200
[2026-06-19 01:00:21,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:21,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:00:21,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:00:21,526.526 INFO    ] No camera update needed
[2026-06-19 01:00:21,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:00:21,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:00:21,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:00:21,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:00:23,583.583 INFO    ] ================================================
[2026-06-19 01:00:23,599.599 INFO    ] Launching Daemon at Fri Jun 19 01:00:23 IST 2026
[2026-06-19 01:00:23,611.611 INFO    ] ================================================
[2026-06-19 01:00:24,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:00:24
[2026-06-19 01:00:24,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:00:25,056.056 INFO    ] Initializing speech engine...
[2026-06-19 01:00:25,081.081 INFO    ] 2026-06-19 01:00:25
[2026-06-19 01:00:25,352.352 INFO    ] 2026-06-19 01:00:25
[2026-06-19 01:00:25,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:00:25,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:00:25,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:00:25,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:00:25,759.759 INFO    ] time= 19/06/2026 01:00:25
[2026-06-19 01:00:25,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:00:25,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:00:25,847.847 INFO    ] No existing commands found in stream
[2026-06-19 01:00:30,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:00:30,863.863 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 01:00:31,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:00:31,588.588 INFO    ] Checking for system updates...
[2026-06-19 01:00:31,625.625 INFO    ] 200
[2026-06-19 01:00:31,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:31,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:00:31,682.682 INFO    ] No update needed
[2026-06-19 01:00:31,685.685 INFO    ] Checking for camera pi updates...
[2026-06-19 01:00:31,719.719 INFO    ] 200
[2026-06-19 01:00:31,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:31,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:00:31,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:00:31,918.918 INFO    ] No camera update needed
[2026-06-19 01:00:31,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:00:31,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:00:31,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:00:31,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:00:33,975.975 INFO    ] ================================================
[2026-06-19 01:00:33,991.991 INFO    ] Launching Daemon at Fri Jun 19 01:00:33 IST 2026
[2026-06-19 01:00:34,002.002 INFO    ] ================================================
[2026-06-19 01:00:34,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:00:34
[2026-06-19 01:00:35,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:00:35,611.611 INFO    ] Initializing speech engine...
[2026-06-19 01:00:35,620.620 INFO    ] 2026-06-19 01:00:35
[2026-06-19 01:00:35,890.890 INFO    ] 2026-06-19 01:00:35
[2026-06-19 01:00:35,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:00:36,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:00:36,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:00:36,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:00:36,398.398 INFO    ] time= 19/06/2026 01:00:36
[2026-06-19 01:00:36,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:00:36,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:00:36,521.521 INFO    ] No existing commands found in stream
[2026-06-19 01:00:41,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:00:41,537.537 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 01:00:45,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:00:45,027.027 INFO    ] Checking for system updates...
[2026-06-19 01:00:45,067.067 INFO    ] 200
[2026-06-19 01:00:45,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:45,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:00:45,130.130 INFO    ] No update needed
[2026-06-19 01:00:45,132.132 INFO    ] Checking for camera pi updates...
[2026-06-19 01:00:45,166.166 INFO    ] 200
[2026-06-19 01:00:45,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:45,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:00:45,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:00:45,245.245 INFO    ] No camera update needed
[2026-06-19 01:00:45,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:00:45,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:00:45,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:00:45,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:00:47,301.301 INFO    ] ================================================
[2026-06-19 01:00:47,317.317 INFO    ] Launching Daemon at Fri Jun 19 01:00:47 IST 2026
[2026-06-19 01:00:47,329.329 INFO    ] ================================================
[2026-06-19 01:00:47,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:00:47
[2026-06-19 01:00:48,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:00:48,799.799 INFO    ] Initializing speech engine...
[2026-06-19 01:00:48,809.809 INFO    ] 2026-06-19 01:00:48
[2026-06-19 01:00:49,109.109 INFO    ] 2026-06-19 01:00:49
[2026-06-19 01:00:49,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:00:49,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:00:49,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:00:49,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:00:49,464.464 INFO    ] time= 19/06/2026 01:00:49
[2026-06-19 01:00:49,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:00:49,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:00:49,541.541 INFO    ] No existing commands found in stream
[2026-06-19 01:00:54,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:00:54,557.557 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 01:00:57,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:00:57,050.050 INFO    ] Checking for system updates...
[2026-06-19 01:00:57,111.111 INFO    ] 200
[2026-06-19 01:00:57,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:57,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:00:57,172.172 INFO    ] No update needed
[2026-06-19 01:00:57,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 01:00:57,214.214 INFO    ] 200
[2026-06-19 01:00:57,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:00:57,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:00:57,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:00:57,318.318 INFO    ] No camera update needed
[2026-06-19 01:00:57,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:00:57,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:00:57,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:00:57,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:00:59,378.378 INFO    ] ================================================
[2026-06-19 01:00:59,393.393 INFO    ] Launching Daemon at Fri Jun 19 01:00:59 IST 2026
[2026-06-19 01:00:59,405.405 INFO    ] ================================================
[2026-06-19 01:00:59,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:00:59
[2026-06-19 01:01:00,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:01:00,866.866 INFO    ] Initializing speech engine...
[2026-06-19 01:01:00,875.875 INFO    ] 2026-06-19 01:01:00
[2026-06-19 01:01:01,124.124 INFO    ] 2026-06-19 01:01:01
[2026-06-19 01:01:01,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:01:01,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:01:01,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:01:01,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:01:01,510.510 INFO    ] time= 19/06/2026 01:01:01
[2026-06-19 01:01:01,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:01:01,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:01:01,661.661 INFO    ] No existing commands found in stream
[2026-06-19 01:01:06,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:01:06,679.679 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 01:01:10,855.855 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:01:10,858.858 INFO    ] Checking for system updates...
[2026-06-19 01:01:10,898.898 INFO    ] 200
[2026-06-19 01:01:10,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:01:10,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:01:10,962.962 INFO    ] No update needed
[2026-06-19 01:01:10,965.965 INFO    ] Checking for camera pi updates...
[2026-06-19 01:01:10,999.999 INFO    ] 200
[2026-06-19 01:01:11,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:01:11,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:01:11,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:01:11,092.092 INFO    ] No camera update needed
[2026-06-19 01:01:11,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:01:11,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:01:11,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:01:11,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:01:13,152.152 INFO    ] ================================================
[2026-06-19 01:01:13,169.169 INFO    ] Launching Daemon at Fri Jun 19 01:01:13 IST 2026
[2026-06-19 01:01:13,181.181 INFO    ] ================================================
[2026-06-19 01:01:13,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:01:13
[2026-06-19 01:01:14,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:01:14,686.686 INFO    ] Initializing speech engine...
[2026-06-19 01:01:14,699.699 INFO    ] 2026-06-19 01:01:14
[2026-06-19 01:01:14,989.989 INFO    ] 2026-06-19 01:01:14
[2026-06-19 01:01:15,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:01:15,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:01:15,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:01:15,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:01:15,409.409 INFO    ] time= 19/06/2026 01:01:15
[2026-06-19 01:01:15,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:01:15,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:01:15,562.562 INFO    ] No existing commands found in stream
[2026-06-19 01:01:20,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:01:20,590.590 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 01:01:22,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:01:22,096.096 INFO    ] Checking for system updates...
[2026-06-19 01:01:22,132.132 INFO    ] 200
[2026-06-19 01:01:22,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:01:22,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:01:22,190.190 INFO    ] No update needed
[2026-06-19 01:01:22,192.192 INFO    ] Checking for camera pi updates...
[2026-06-19 01:01:22,226.226 INFO    ] 200
[2026-06-19 01:01:22,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:01:22,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:01:22,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:01:22,318.318 INFO    ] No camera update needed
[2026-06-19 01:01:22,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:01:22,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:01:22,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:01:22,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:01:24,376.376 INFO    ] ================================================
[2026-06-19 01:01:24,391.391 INFO    ] Launching Daemon at Fri Jun 19 01:01:24 IST 2026
[2026-06-19 01:01:24,402.402 INFO    ] ================================================
[2026-06-19 01:01:25,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:01:25
[2026-06-19 01:01:25,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:01:26,017.017 INFO    ] Initializing speech engine...
[2026-06-19 01:01:26,027.027 INFO    ] 2026-06-19 01:01:26
[2026-06-19 01:01:26,312.312 INFO    ] 2026-06-19 01:01:26
[2026-06-19 01:01:26,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:01:26,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:01:26,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:01:26,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:01:26,846.846 INFO    ] time= 19/06/2026 01:01:26
[2026-06-19 01:01:26,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:01:26,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:01:27,001.001 INFO    ] No existing commands found in stream
[2026-06-19 01:01:32,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:01:32,017.017 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 01:01:35,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:01:35,185.185 INFO    ] Checking for system updates...
[2026-06-19 01:01:35,223.223 INFO    ] 200
[2026-06-19 01:01:35,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:01:35,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:01:35,282.282 INFO    ] No update needed
[2026-06-19 01:01:35,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 01:01:35,324.324 INFO    ] 200
[2026-06-19 01:01:35,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:01:35,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:01:35,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:01:35,423.423 INFO    ] No camera update needed
[2026-06-19 01:01:35,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:01:35,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:01:35,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:01:35,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:01:37,482.482 INFO    ] ================================================
[2026-06-19 01:01:37,498.498 INFO    ] Launching Daemon at Fri Jun 19 01:01:37 IST 2026
[2026-06-19 01:01:37,508.508 INFO    ] ================================================
[2026-06-19 01:01:38,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:01:38
[2026-06-19 01:01:38,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:01:38,921.921 INFO    ] Initializing speech engine...
[2026-06-19 01:01:38,927.927 INFO    ] 2026-06-19 01:01:38
[2026-06-19 01:01:39,225.225 INFO    ] 2026-06-19 01:01:39
[2026-06-19 01:01:39,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:01:39,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:01:39,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:01:39,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:01:39,582.582 INFO    ] time= 19/06/2026 01:01:39
[2026-06-19 01:01:39,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:01:39,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:01:39,659.659 INFO    ] No existing commands found in stream
[2026-06-19 01:01:44,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:01:44,675.675 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 01:01:48,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:01:48,372.372 INFO    ] Checking for system updates...
[2026-06-19 01:01:48,409.409 INFO    ] 200
[2026-06-19 01:01:48,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:01:48,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:01:48,466.466 INFO    ] No update needed
[2026-06-19 01:01:48,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 01:01:48,511.511 INFO    ] 200
[2026-06-19 01:01:48,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:01:48,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:01:48,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:01:48,615.615 INFO    ] No camera update needed
[2026-06-19 01:01:48,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:01:48,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:01:48,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:01:48,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:01:50,670.670 INFO    ] ================================================
[2026-06-19 01:01:50,685.685 INFO    ] Launching Daemon at Fri Jun 19 01:01:50 IST 2026
[2026-06-19 01:01:50,696.696 INFO    ] ================================================
[2026-06-19 01:01:51,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:01:51
[2026-06-19 01:01:51,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:01:52,152.152 INFO    ] Initializing speech engine...
[2026-06-19 01:01:52,175.175 INFO    ] 2026-06-19 01:01:52
[2026-06-19 01:01:52,435.435 INFO    ] 2026-06-19 01:01:52
[2026-06-19 01:01:52,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:01:52,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:01:52,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:01:52,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:01:52,858.858 INFO    ] time= 19/06/2026 01:01:52
[2026-06-19 01:01:52,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:01:52,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:01:53,079.079 INFO    ] No existing commands found in stream
[2026-06-19 01:01:58,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:01:58,092.092 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 01:02:00,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:02:00,003.003 INFO    ] Checking for system updates...
[2026-06-19 01:02:00,042.042 INFO    ] 200
[2026-06-19 01:02:00,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:00,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:02:00,101.101 INFO    ] No update needed
[2026-06-19 01:02:00,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 01:02:00,139.139 INFO    ] 200
[2026-06-19 01:02:00,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:00,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:02:00,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:02:00,239.239 INFO    ] No camera update needed
[2026-06-19 01:02:00,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:02:00,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:02:00,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:02:00,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:02:02,319.319 INFO    ] ================================================
[2026-06-19 01:02:02,343.343 INFO    ] Launching Daemon at Fri Jun 19 01:02:02 IST 2026
[2026-06-19 01:02:02,362.362 INFO    ] ================================================
[2026-06-19 01:02:03,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:02:03
[2026-06-19 01:02:03,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:02:03,873.873 INFO    ] Initializing speech engine...
[2026-06-19 01:02:03,893.893 INFO    ] 2026-06-19 01:02:03
[2026-06-19 01:02:04,165.165 INFO    ] 2026-06-19 01:02:04
[2026-06-19 01:02:04,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:02:04,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:02:04,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:02:04,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:02:04,532.532 INFO    ] time= 19/06/2026 01:02:04
[2026-06-19 01:02:04,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:02:04,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:02:04,652.652 INFO    ] No existing commands found in stream
[2026-06-19 01:02:09,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:02:09,668.668 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 01:02:15,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:02:15,682.682 INFO    ] Checking for system updates...
[2026-06-19 01:02:15,718.718 INFO    ] 200
[2026-06-19 01:02:15,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:15,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:02:15,775.775 INFO    ] No update needed
[2026-06-19 01:02:15,777.777 INFO    ] Checking for camera pi updates...
[2026-06-19 01:02:15,811.811 INFO    ] 200
[2026-06-19 01:02:15,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:15,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:02:15,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:02:15,905.905 INFO    ] No camera update needed
[2026-06-19 01:02:15,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:02:15,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:02:15,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:02:15,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:02:17,959.959 INFO    ] ================================================
[2026-06-19 01:02:17,974.974 INFO    ] Launching Daemon at Fri Jun 19 01:02:17 IST 2026
[2026-06-19 01:02:17,984.984 INFO    ] ================================================
[2026-06-19 01:02:18,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:02:18
[2026-06-19 01:02:19,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:02:19,553.553 INFO    ] Initializing speech engine...
[2026-06-19 01:02:19,567.567 INFO    ] 2026-06-19 01:02:19
[2026-06-19 01:02:19,844.844 INFO    ] 2026-06-19 01:02:19
[2026-06-19 01:02:19,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:02:20,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:02:20,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:02:20,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:02:20,303.303 INFO    ] time= 19/06/2026 01:02:20
[2026-06-19 01:02:20,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:02:20,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:02:20,503.503 INFO    ] No existing commands found in stream
[2026-06-19 01:02:25,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:02:25,529.529 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 01:02:27,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:02:27,967.967 INFO    ] Checking for system updates...
[2026-06-19 01:02:28,008.008 INFO    ] 200
[2026-06-19 01:02:28,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:28,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:02:28,082.082 INFO    ] No update needed
[2026-06-19 01:02:28,084.084 INFO    ] Checking for camera pi updates...
[2026-06-19 01:02:28,117.117 INFO    ] 200
[2026-06-19 01:02:28,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:28,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:02:28,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:02:28,212.212 INFO    ] No camera update needed
[2026-06-19 01:02:28,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:02:28,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:02:28,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:02:28,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:02:30,268.268 INFO    ] ================================================
[2026-06-19 01:02:30,283.283 INFO    ] Launching Daemon at Fri Jun 19 01:02:30 IST 2026
[2026-06-19 01:02:30,293.293 INFO    ] ================================================
[2026-06-19 01:02:30,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:02:30
[2026-06-19 01:02:31,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:02:31,884.884 INFO    ] Initializing speech engine...
[2026-06-19 01:02:31,894.894 INFO    ] 2026-06-19 01:02:31
[2026-06-19 01:02:32,179.179 INFO    ] 2026-06-19 01:02:32
[2026-06-19 01:02:32,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:02:32,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:02:32,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:02:32,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:02:32,571.571 INFO    ] time= 19/06/2026 01:02:32
[2026-06-19 01:02:32,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:02:32,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:02:32,687.687 INFO    ] No existing commands found in stream
[2026-06-19 01:02:37,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:02:37,716.716 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 01:02:38,369.369 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:02:38,372.372 INFO    ] Checking for system updates...
[2026-06-19 01:02:38,408.408 INFO    ] 200
[2026-06-19 01:02:38,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:38,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:02:38,466.466 INFO    ] No update needed
[2026-06-19 01:02:38,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 01:02:38,504.504 INFO    ] 200
[2026-06-19 01:02:38,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:38,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:02:38,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:02:38,694.694 INFO    ] No camera update needed
[2026-06-19 01:02:38,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:02:38,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:02:38,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:02:38,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:02:40,749.749 INFO    ] ================================================
[2026-06-19 01:02:40,764.764 INFO    ] Launching Daemon at Fri Jun 19 01:02:40 IST 2026
[2026-06-19 01:02:40,775.775 INFO    ] ================================================
[2026-06-19 01:02:41,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:02:41
[2026-06-19 01:02:41,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:02:42,282.282 INFO    ] Initializing speech engine...
[2026-06-19 01:02:42,287.287 INFO    ] 2026-06-19 01:02:42
[2026-06-19 01:02:42,546.546 INFO    ] 2026-06-19 01:02:42
[2026-06-19 01:02:42,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:02:42,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:02:42,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:02:42,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:02:43,017.017 INFO    ] time= 19/06/2026 01:02:42
[2026-06-19 01:02:43,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:02:43,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:02:43,174.174 INFO    ] No existing commands found in stream
[2026-06-19 01:02:48,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:02:48,188.188 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 01:02:49,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:02:49,646.646 INFO    ] Checking for system updates...
[2026-06-19 01:02:49,683.683 INFO    ] 200
[2026-06-19 01:02:49,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:49,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:02:49,741.741 INFO    ] No update needed
[2026-06-19 01:02:49,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 01:02:49,778.778 INFO    ] 200
[2026-06-19 01:02:49,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:02:49,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:02:49,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:02:49,884.884 INFO    ] No camera update needed
[2026-06-19 01:02:49,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:02:49,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:02:49,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:02:49,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:02:51,943.943 INFO    ] ================================================
[2026-06-19 01:02:51,958.958 INFO    ] Launching Daemon at Fri Jun 19 01:02:51 IST 2026
[2026-06-19 01:02:51,969.969 INFO    ] ================================================
[2026-06-19 01:02:52,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:02:52
[2026-06-19 01:02:53,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:02:53,398.398 INFO    ] Initializing speech engine...
[2026-06-19 01:02:53,407.407 INFO    ] 2026-06-19 01:02:53
[2026-06-19 01:02:53,656.656 INFO    ] 2026-06-19 01:02:53
[2026-06-19 01:02:53,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:02:53,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:02:53,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:02:54,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:02:54,132.132 INFO    ] time= 19/06/2026 01:02:54
[2026-06-19 01:02:54,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:02:54,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:02:54,288.288 INFO    ] No existing commands found in stream
[2026-06-19 01:02:59,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:02:59,303.303 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 01:03:01,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:03:01,090.090 INFO    ] Checking for system updates...
[2026-06-19 01:03:01,126.126 INFO    ] 200
[2026-06-19 01:03:01,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:01,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:03:01,183.183 INFO    ] No update needed
[2026-06-19 01:03:01,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 01:03:01,219.219 INFO    ] 200
[2026-06-19 01:03:01,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:01,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:03:01,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:03:01,307.307 INFO    ] No camera update needed
[2026-06-19 01:03:01,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:03:01,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:03:01,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:03:01,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:03:03,370.370 INFO    ] ================================================
[2026-06-19 01:03:03,396.396 INFO    ] Launching Daemon at Fri Jun 19 01:03:03 IST 2026
[2026-06-19 01:03:03,420.420 INFO    ] ================================================
[2026-06-19 01:03:04,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:03:04
[2026-06-19 01:03:04,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:03:04,872.872 INFO    ] Initializing speech engine...
[2026-06-19 01:03:04,881.881 INFO    ] 2026-06-19 01:03:04
[2026-06-19 01:03:05,129.129 INFO    ] 2026-06-19 01:03:05
[2026-06-19 01:03:05,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:03:05,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:03:05,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:03:05,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:03:05,498.498 INFO    ] time= 19/06/2026 01:03:05
[2026-06-19 01:03:05,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:03:05,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:03:05,676.676 INFO    ] No existing commands found in stream
[2026-06-19 01:03:10,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:03:10,709.709 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 01:03:12,169.169 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:03:12,172.172 INFO    ] Checking for system updates...
[2026-06-19 01:03:12,210.210 INFO    ] 200
[2026-06-19 01:03:12,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:12,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:03:12,267.267 INFO    ] No update needed
[2026-06-19 01:03:12,270.270 INFO    ] Checking for camera pi updates...
[2026-06-19 01:03:12,303.303 INFO    ] 200
[2026-06-19 01:03:12,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:12,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:03:12,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:03:12,394.394 INFO    ] No camera update needed
[2026-06-19 01:03:12,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:03:12,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:03:12,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:03:12,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:03:14,451.451 INFO    ] ================================================
[2026-06-19 01:03:14,466.466 INFO    ] Launching Daemon at Fri Jun 19 01:03:14 IST 2026
[2026-06-19 01:03:14,477.477 INFO    ] ================================================
[2026-06-19 01:03:15,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:03:15
[2026-06-19 01:03:15,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:03:15,915.915 INFO    ] Initializing speech engine...
[2026-06-19 01:03:15,923.923 INFO    ] 2026-06-19 01:03:15
[2026-06-19 01:03:16,171.171 INFO    ] 2026-06-19 01:03:16
[2026-06-19 01:03:16,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:03:16,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:03:16,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:03:16,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:03:16,664.664 INFO    ] time= 19/06/2026 01:03:16
[2026-06-19 01:03:16,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:03:16,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:03:16,860.860 INFO    ] No existing commands found in stream
[2026-06-19 01:03:21,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:03:21,897.897 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 01:03:23,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:03:23,244.244 INFO    ] Checking for system updates...
[2026-06-19 01:03:23,293.293 INFO    ] 200
[2026-06-19 01:03:23,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:23,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:03:23,374.374 INFO    ] No update needed
[2026-06-19 01:03:23,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 01:03:23,413.413 INFO    ] 200
[2026-06-19 01:03:23,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:23,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:03:23,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:03:23,514.514 INFO    ] No camera update needed
[2026-06-19 01:03:23,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:03:23,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:03:23,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:03:23,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:03:25,574.574 INFO    ] ================================================
[2026-06-19 01:03:25,590.590 INFO    ] Launching Daemon at Fri Jun 19 01:03:25 IST 2026
[2026-06-19 01:03:25,601.601 INFO    ] ================================================
[2026-06-19 01:03:26,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:03:26
[2026-06-19 01:03:26,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:03:27,309.309 INFO    ] Initializing speech engine...
[2026-06-19 01:03:27,321.321 INFO    ] 2026-06-19 01:03:27
[2026-06-19 01:03:27,612.612 INFO    ] 2026-06-19 01:03:27
[2026-06-19 01:03:27,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:03:27,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:03:27,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:03:28,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:03:28,079.079 INFO    ] time= 19/06/2026 01:03:28
[2026-06-19 01:03:28,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:03:28,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:03:28,232.232 INFO    ] No existing commands found in stream
[2026-06-19 01:03:33,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:03:33,250.250 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 01:03:35,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:03:35,206.206 INFO    ] Checking for system updates...
[2026-06-19 01:03:35,243.243 INFO    ] 200
[2026-06-19 01:03:35,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:35,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:03:35,304.304 INFO    ] No update needed
[2026-06-19 01:03:35,307.307 INFO    ] Checking for camera pi updates...
[2026-06-19 01:03:35,342.342 INFO    ] 200
[2026-06-19 01:03:35,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:35,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:03:35,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:03:35,449.449 INFO    ] No camera update needed
[2026-06-19 01:03:35,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:03:35,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:03:35,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:03:35,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:03:37,511.511 INFO    ] ================================================
[2026-06-19 01:03:37,526.526 INFO    ] Launching Daemon at Fri Jun 19 01:03:37 IST 2026
[2026-06-19 01:03:37,537.537 INFO    ] ================================================
[2026-06-19 01:03:38,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:03:38
[2026-06-19 01:03:38,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:03:39,078.078 INFO    ] Initializing speech engine...
[2026-06-19 01:03:39,090.090 INFO    ] 2026-06-19 01:03:39
[2026-06-19 01:03:39,377.377 INFO    ] 2026-06-19 01:03:39
[2026-06-19 01:03:39,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:03:39,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:03:39,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:03:39,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:03:39,865.865 INFO    ] time= 19/06/2026 01:03:39
[2026-06-19 01:03:39,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:03:39,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:03:40,085.085 INFO    ] No existing commands found in stream
[2026-06-19 01:03:45,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:03:45,120.120 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 01:03:47,687.687 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:03:47,690.690 INFO    ] Checking for system updates...
[2026-06-19 01:03:47,729.729 INFO    ] 200
[2026-06-19 01:03:47,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:47,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:03:47,788.788 INFO    ] No update needed
[2026-06-19 01:03:47,790.790 INFO    ] Checking for camera pi updates...
[2026-06-19 01:03:47,825.825 INFO    ] 200
[2026-06-19 01:03:47,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:47,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:03:47,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:03:47,911.911 INFO    ] No camera update needed
[2026-06-19 01:03:47,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:03:47,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:03:47,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:03:47,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:03:49,967.967 INFO    ] ================================================
[2026-06-19 01:03:49,983.983 INFO    ] Launching Daemon at Fri Jun 19 01:03:49 IST 2026
[2026-06-19 01:03:49,993.993 INFO    ] ================================================
[2026-06-19 01:03:50,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:03:50
[2026-06-19 01:03:51,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:03:51,473.473 INFO    ] Initializing speech engine...
[2026-06-19 01:03:51,481.481 INFO    ] 2026-06-19 01:03:51
[2026-06-19 01:03:51,756.756 INFO    ] 2026-06-19 01:03:51
[2026-06-19 01:03:51,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:03:52,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:03:52,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:03:52,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:03:52,231.231 INFO    ] time= 19/06/2026 01:03:52
[2026-06-19 01:03:52,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:03:52,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:03:52,356.356 INFO    ] No existing commands found in stream
[2026-06-19 01:03:57,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:03:57,370.370 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 01:03:58,070.070 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:03:58,072.072 INFO    ] Checking for system updates...
[2026-06-19 01:03:58,109.109 INFO    ] 200
[2026-06-19 01:03:58,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:58,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:03:58,167.167 INFO    ] No update needed
[2026-06-19 01:03:58,170.170 INFO    ] Checking for camera pi updates...
[2026-06-19 01:03:58,204.204 INFO    ] 200
[2026-06-19 01:03:58,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:03:58,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:03:58,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:03:58,297.297 INFO    ] No camera update needed
[2026-06-19 01:03:58,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:03:58,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:03:58,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:03:58,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:04:00,356.356 INFO    ] ================================================
[2026-06-19 01:04:00,372.372 INFO    ] Launching Daemon at Fri Jun 19 01:04:00 IST 2026
[2026-06-19 01:04:00,383.383 INFO    ] ================================================
[2026-06-19 01:04:01,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:04:01
[2026-06-19 01:04:01,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:04:02,245.245 INFO    ] Initializing speech engine...
[2026-06-19 01:04:02,250.250 INFO    ] 2026-06-19 01:04:02
[2026-06-19 01:04:02,599.599 INFO    ] 2026-06-19 01:04:02
[2026-06-19 01:04:02,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:04:02,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:04:02,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:04:03,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:04:03,134.134 INFO    ] time= 19/06/2026 01:04:03
[2026-06-19 01:04:03,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:04:03,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:04:03,329.329 INFO    ] No existing commands found in stream
[2026-06-19 01:04:08,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:04:08,370.370 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 01:04:11,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:04:11,611.611 INFO    ] Checking for system updates...
[2026-06-19 01:04:11,646.646 INFO    ] 200
[2026-06-19 01:04:11,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:04:11,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:04:11,703.703 INFO    ] No update needed
[2026-06-19 01:04:11,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 01:04:11,739.739 INFO    ] 200
[2026-06-19 01:04:11,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:04:11,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:04:11,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:04:11,836.836 INFO    ] No camera update needed
[2026-06-19 01:04:11,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:04:11,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:04:11,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:04:11,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:04:13,892.892 INFO    ] ================================================
[2026-06-19 01:04:13,907.907 INFO    ] Launching Daemon at Fri Jun 19 01:04:13 IST 2026
[2026-06-19 01:04:13,919.919 INFO    ] ================================================
[2026-06-19 01:04:14,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:04:14
[2026-06-19 01:04:15,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:04:15,563.563 INFO    ] Initializing speech engine...
[2026-06-19 01:04:15,575.575 INFO    ] 2026-06-19 01:04:15
[2026-06-19 01:04:15,860.860 INFO    ] 2026-06-19 01:04:15
[2026-06-19 01:04:15,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:04:16,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:04:16,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:04:16,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:04:16,316.316 INFO    ] time= 19/06/2026 01:04:16
[2026-06-19 01:04:16,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:04:16,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:04:16,461.461 INFO    ] No existing commands found in stream
[2026-06-19 01:04:21,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:04:21,476.476 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 01:04:23,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:04:23,702.702 INFO    ] Checking for system updates...
[2026-06-19 01:04:23,739.739 INFO    ] 200
[2026-06-19 01:04:23,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:04:23,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:04:23,798.798 INFO    ] No update needed
[2026-06-19 01:04:23,800.800 INFO    ] Checking for camera pi updates...
[2026-06-19 01:04:23,835.835 INFO    ] 200
[2026-06-19 01:04:23,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:04:23,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:04:23,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:04:23,923.923 INFO    ] No camera update needed
[2026-06-19 01:04:23,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:04:23,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:04:23,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:04:23,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:04:25,978.978 INFO    ] ================================================
[2026-06-19 01:04:25,993.993 INFO    ] Launching Daemon at Fri Jun 19 01:04:25 IST 2026
[2026-06-19 01:04:26,004.004 INFO    ] ================================================
[2026-06-19 01:04:26,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:04:26
[2026-06-19 01:04:27,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:04:27,429.429 INFO    ] Initializing speech engine...
[2026-06-19 01:04:27,435.435 INFO    ] 2026-06-19 01:04:27
[2026-06-19 01:04:27,710.710 INFO    ] 2026-06-19 01:04:27
[2026-06-19 01:04:27,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:04:28,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:04:28,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:04:28,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:04:28,151.151 INFO    ] time= 19/06/2026 01:04:28
[2026-06-19 01:04:28,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:04:28,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:04:28,330.330 INFO    ] No existing commands found in stream
[2026-06-19 01:04:33,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:04:33,346.346 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 01:04:37,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:04:37,522.522 INFO    ] Checking for system updates...
[2026-06-19 01:04:37,558.558 INFO    ] 200
[2026-06-19 01:04:37,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:04:37,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:04:37,617.617 INFO    ] No update needed
[2026-06-19 01:04:37,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 01:04:37,657.657 INFO    ] 200
[2026-06-19 01:04:37,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:04:37,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:04:37,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:04:37,751.751 INFO    ] No camera update needed
[2026-06-19 01:04:37,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:04:37,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:04:37,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:04:37,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:04:39,808.808 INFO    ] ================================================
[2026-06-19 01:04:39,822.822 INFO    ] Launching Daemon at Fri Jun 19 01:04:39 IST 2026
[2026-06-19 01:04:39,833.833 INFO    ] ================================================
[2026-06-19 01:04:40,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:04:40
[2026-06-19 01:04:41,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:04:41,466.466 INFO    ] Initializing speech engine...
[2026-06-19 01:04:41,479.479 INFO    ] 2026-06-19 01:04:41
[2026-06-19 01:04:41,763.763 INFO    ] 2026-06-19 01:04:41
[2026-06-19 01:04:41,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:04:42,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:04:42,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:04:42,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:04:42,235.235 INFO    ] time= 19/06/2026 01:04:42
[2026-06-19 01:04:42,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:04:42,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:04:42,378.378 INFO    ] No existing commands found in stream
[2026-06-19 01:04:47,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:04:47,413.413 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 01:04:51,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:04:51,782.782 INFO    ] Checking for system updates...
[2026-06-19 01:04:51,819.819 INFO    ] 200
[2026-06-19 01:04:51,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:04:51,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:04:51,878.878 INFO    ] No update needed
[2026-06-19 01:04:51,880.880 INFO    ] Checking for camera pi updates...
[2026-06-19 01:04:51,915.915 INFO    ] 200
[2026-06-19 01:04:51,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:04:51,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:04:52,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:04:52,105.105 INFO    ] No camera update needed
[2026-06-19 01:04:52,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:04:52,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:04:52,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:04:52,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:04:54,161.161 INFO    ] ================================================
[2026-06-19 01:04:54,177.177 INFO    ] Launching Daemon at Fri Jun 19 01:04:54 IST 2026
[2026-06-19 01:04:54,188.188 INFO    ] ================================================
[2026-06-19 01:04:54,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:04:54
[2026-06-19 01:04:55,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:04:55,854.854 INFO    ] Initializing speech engine...
[2026-06-19 01:04:55,868.868 INFO    ] 2026-06-19 01:04:55
[2026-06-19 01:04:56,178.178 INFO    ] 2026-06-19 01:04:56
[2026-06-19 01:04:56,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:04:56,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:04:56,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:04:56,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:04:56,688.688 INFO    ] time= 19/06/2026 01:04:56
[2026-06-19 01:04:56,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:04:56,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:04:56,850.850 INFO    ] No existing commands found in stream
[2026-06-19 01:05:01,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:05:01,890.890 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 01:05:04,509.509 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:05:04,512.512 INFO    ] Checking for system updates...
[2026-06-19 01:05:04,553.553 INFO    ] 200
[2026-06-19 01:05:04,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:04,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:05:04,625.625 INFO    ] No update needed
[2026-06-19 01:05:04,629.629 INFO    ] Checking for camera pi updates...
[2026-06-19 01:05:04,664.664 INFO    ] 200
[2026-06-19 01:05:04,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:04,715.715 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:05:04,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:05:04,781.781 INFO    ] No camera update needed
[2026-06-19 01:05:04,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:05:04,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:05:04,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:05:04,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:05:06,841.841 INFO    ] ================================================
[2026-06-19 01:05:06,857.857 INFO    ] Launching Daemon at Fri Jun 19 01:05:06 IST 2026
[2026-06-19 01:05:06,868.868 INFO    ] ================================================
[2026-06-19 01:05:07,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:05:07
[2026-06-19 01:05:08,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:05:08,499.499 INFO    ] Initializing speech engine...
[2026-06-19 01:05:08,507.507 INFO    ] 2026-06-19 01:05:08
[2026-06-19 01:05:08,783.783 INFO    ] 2026-06-19 01:05:08
[2026-06-19 01:05:08,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:05:09,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:05:09,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:05:09,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:05:09,284.284 INFO    ] time= 19/06/2026 01:05:09
[2026-06-19 01:05:09,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:05:09,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:05:09,489.489 INFO    ] No existing commands found in stream
[2026-06-19 01:05:14,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:05:14,510.510 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 01:05:17,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:05:17,280.280 INFO    ] Checking for system updates...
[2026-06-19 01:05:17,318.318 INFO    ] 200
[2026-06-19 01:05:17,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:17,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:05:17,378.378 INFO    ] No update needed
[2026-06-19 01:05:17,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 01:05:17,416.416 INFO    ] 200
[2026-06-19 01:05:17,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:17,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:05:17,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:05:17,511.511 INFO    ] No camera update needed
[2026-06-19 01:05:17,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:05:17,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:05:17,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:05:17,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:05:19,570.570 INFO    ] ================================================
[2026-06-19 01:05:19,585.585 INFO    ] Launching Daemon at Fri Jun 19 01:05:19 IST 2026
[2026-06-19 01:05:19,596.596 INFO    ] ================================================
[2026-06-19 01:05:20,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:05:20
[2026-06-19 01:05:20,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:05:21,040.040 INFO    ] Initializing speech engine...
[2026-06-19 01:05:21,046.046 INFO    ] 2026-06-19 01:05:21
[2026-06-19 01:05:21,339.339 INFO    ] 2026-06-19 01:05:21
[2026-06-19 01:05:21,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:05:21,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:05:21,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:05:22,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:05:22,226.226 INFO    ] time= 19/06/2026 01:05:22
[2026-06-19 01:05:22,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:05:22,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:05:22,400.400 INFO    ] No existing commands found in stream
[2026-06-19 01:05:27,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:05:27,425.425 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 01:05:29,751.751 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:05:29,754.754 INFO    ] Checking for system updates...
[2026-06-19 01:05:29,791.791 INFO    ] 200
[2026-06-19 01:05:29,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:29,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:05:29,850.850 INFO    ] No update needed
[2026-06-19 01:05:29,853.853 INFO    ] Checking for camera pi updates...
[2026-06-19 01:05:29,891.891 INFO    ] 200
[2026-06-19 01:05:29,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:29,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:05:29,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:05:29,985.985 INFO    ] No camera update needed
[2026-06-19 01:05:29,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:05:29,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:05:29,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:05:30,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:05:32,045.045 INFO    ] ================================================
[2026-06-19 01:05:32,062.062 INFO    ] Launching Daemon at Fri Jun 19 01:05:32 IST 2026
[2026-06-19 01:05:32,074.074 INFO    ] ================================================
[2026-06-19 01:05:32,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:05:32
[2026-06-19 01:05:33,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:05:33,550.550 INFO    ] Initializing speech engine...
[2026-06-19 01:05:33,566.566 INFO    ] 2026-06-19 01:05:33
[2026-06-19 01:05:33,847.847 INFO    ] 2026-06-19 01:05:33
[2026-06-19 01:05:33,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:05:34,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:05:34,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:05:34,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:05:34,221.221 INFO    ] time= 19/06/2026 01:05:34
[2026-06-19 01:05:34,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:05:34,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:05:34,341.341 INFO    ] No existing commands found in stream
[2026-06-19 01:05:39,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:05:39,356.356 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 01:05:42,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:05:42,527.527 INFO    ] Checking for system updates...
[2026-06-19 01:05:42,563.563 INFO    ] 200
[2026-06-19 01:05:42,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:42,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:05:42,625.625 INFO    ] No update needed
[2026-06-19 01:05:42,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 01:05:42,661.661 INFO    ] 200
[2026-06-19 01:05:42,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:42,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:05:42,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:05:42,751.751 INFO    ] No camera update needed
[2026-06-19 01:05:42,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:05:42,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:05:42,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:05:42,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:05:44,806.806 INFO    ] ================================================
[2026-06-19 01:05:44,821.821 INFO    ] Launching Daemon at Fri Jun 19 01:05:44 IST 2026
[2026-06-19 01:05:44,832.832 INFO    ] ================================================
[2026-06-19 01:05:45,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:05:45
[2026-06-19 01:05:46,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:05:46,415.415 INFO    ] Initializing speech engine...
[2026-06-19 01:05:46,422.422 INFO    ] 2026-06-19 01:05:46
[2026-06-19 01:05:46,704.704 INFO    ] 2026-06-19 01:05:46
[2026-06-19 01:05:46,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:05:46,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:05:46,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:05:47,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:05:47,163.163 INFO    ] time= 19/06/2026 01:05:47
[2026-06-19 01:05:47,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:05:47,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:05:47,311.311 INFO    ] No existing commands found in stream
[2026-06-19 01:05:52,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:05:52,335.335 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 01:05:55,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:05:55,089.089 INFO    ] Checking for system updates...
[2026-06-19 01:05:55,130.130 INFO    ] 200
[2026-06-19 01:05:55,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:55,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:05:55,193.193 INFO    ] No update needed
[2026-06-19 01:05:55,196.196 INFO    ] Checking for camera pi updates...
[2026-06-19 01:05:55,231.231 INFO    ] 200
[2026-06-19 01:05:55,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:05:55,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:05:55,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:05:55,327.327 INFO    ] No camera update needed
[2026-06-19 01:05:55,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:05:55,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:05:55,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:05:55,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:05:57,386.386 INFO    ] ================================================
[2026-06-19 01:05:57,401.401 INFO    ] Launching Daemon at Fri Jun 19 01:05:57 IST 2026
[2026-06-19 01:05:57,412.412 INFO    ] ================================================
[2026-06-19 01:05:57,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:05:57
[2026-06-19 01:05:58,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:05:58,804.804 INFO    ] Initializing speech engine...
[2026-06-19 01:05:58,825.825 INFO    ] 2026-06-19 01:05:58
[2026-06-19 01:05:59,085.085 INFO    ] 2026-06-19 01:05:59
[2026-06-19 01:05:59,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:05:59,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:05:59,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:05:59,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:05:59,473.473 INFO    ] time= 19/06/2026 01:05:59
[2026-06-19 01:05:59,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:05:59,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:05:59,557.557 INFO    ] No existing commands found in stream
[2026-06-19 01:06:04,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:06:04,572.572 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 01:06:05,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:06:05,239.239 INFO    ] Checking for system updates...
[2026-06-19 01:06:05,274.274 INFO    ] 200
[2026-06-19 01:06:05,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:05,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:06:05,333.333 INFO    ] No update needed
[2026-06-19 01:06:05,336.336 INFO    ] Checking for camera pi updates...
[2026-06-19 01:06:05,369.369 INFO    ] 200
[2026-06-19 01:06:05,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:05,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:06:05,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:06:05,448.448 INFO    ] No camera update needed
[2026-06-19 01:06:05,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:06:05,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:06:05,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:06:05,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:06:07,505.505 INFO    ] ================================================
[2026-06-19 01:06:07,520.520 INFO    ] Launching Daemon at Fri Jun 19 01:06:07 IST 2026
[2026-06-19 01:06:07,531.531 INFO    ] ================================================
[2026-06-19 01:06:08,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:06:08
[2026-06-19 01:06:08,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:06:08,940.940 INFO    ] Initializing speech engine...
[2026-06-19 01:06:08,949.949 INFO    ] 2026-06-19 01:06:08
[2026-06-19 01:06:09,244.244 INFO    ] 2026-06-19 01:06:09
[2026-06-19 01:06:09,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:06:09,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:06:09,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:06:09,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:06:09,620.620 INFO    ] time= 19/06/2026 01:06:09
[2026-06-19 01:06:09,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:06:09,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:06:09,743.743 INFO    ] No existing commands found in stream
[2026-06-19 01:06:14,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:06:14,758.758 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-19 01:06:19,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:06:19,055.055 INFO    ] Checking for system updates...
[2026-06-19 01:06:19,095.095 INFO    ] 200
[2026-06-19 01:06:19,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:19,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:06:19,165.165 INFO    ] No update needed
[2026-06-19 01:06:19,168.168 INFO    ] Checking for camera pi updates...
[2026-06-19 01:06:19,202.202 INFO    ] 200
[2026-06-19 01:06:19,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:19,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:06:19,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:06:19,296.296 INFO    ] No camera update needed
[2026-06-19 01:06:19,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:06:19,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:06:19,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:06:19,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:06:21,351.351 INFO    ] ================================================
[2026-06-19 01:06:21,366.366 INFO    ] Launching Daemon at Fri Jun 19 01:06:21 IST 2026
[2026-06-19 01:06:21,377.377 INFO    ] ================================================
[2026-06-19 01:06:21,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:06:21
[2026-06-19 01:06:22,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:06:22,906.906 INFO    ] Initializing speech engine...
[2026-06-19 01:06:22,919.919 INFO    ] 2026-06-19 01:06:22
[2026-06-19 01:06:23,200.200 INFO    ] 2026-06-19 01:06:23
[2026-06-19 01:06:23,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:06:23,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:06:23,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:06:23,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:06:23,685.685 INFO    ] time= 19/06/2026 01:06:23
[2026-06-19 01:06:23,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:06:23,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:06:23,828.828 INFO    ] No existing commands found in stream
[2026-06-19 01:06:28,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:06:28,868.868 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 01:06:31,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:06:31,835.835 INFO    ] Checking for system updates...
[2026-06-19 01:06:31,882.882 INFO    ] 200
[2026-06-19 01:06:31,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:31,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:06:31,955.955 INFO    ] No update needed
[2026-06-19 01:06:31,959.959 INFO    ] Checking for camera pi updates...
[2026-06-19 01:06:31,997.997 INFO    ] 200
[2026-06-19 01:06:32,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:32,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:06:32,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:06:32,083.083 INFO    ] No camera update needed
[2026-06-19 01:06:32,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:06:32,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:06:32,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:06:32,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:06:34,146.146 INFO    ] ================================================
[2026-06-19 01:06:34,161.161 INFO    ] Launching Daemon at Fri Jun 19 01:06:34 IST 2026
[2026-06-19 01:06:34,176.176 INFO    ] ================================================
[2026-06-19 01:06:34,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:06:34
[2026-06-19 01:06:35,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:06:35,684.684 INFO    ] Initializing speech engine...
[2026-06-19 01:06:35,697.697 INFO    ] 2026-06-19 01:06:35
[2026-06-19 01:06:35,952.952 INFO    ] 2026-06-19 01:06:35
[2026-06-19 01:06:36,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:06:36,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:06:36,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:06:36,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:06:36,496.496 INFO    ] time= 19/06/2026 01:06:36
[2026-06-19 01:06:36,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:06:36,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:06:36,626.626 INFO    ] No existing commands found in stream
[2026-06-19 01:06:41,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:06:41,660.660 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 01:06:45,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:06:45,774.774 INFO    ] Checking for system updates...
[2026-06-19 01:06:45,810.810 INFO    ] 200
[2026-06-19 01:06:45,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:45,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:06:45,867.867 INFO    ] No update needed
[2026-06-19 01:06:45,869.869 INFO    ] Checking for camera pi updates...
[2026-06-19 01:06:45,913.913 INFO    ] 200
[2026-06-19 01:06:45,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:45,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:06:45,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:06:45,993.993 INFO    ] No camera update needed
[2026-06-19 01:06:45,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:06:45,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:06:46,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:06:46,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:06:48,048.048 INFO    ] ================================================
[2026-06-19 01:06:48,063.063 INFO    ] Launching Daemon at Fri Jun 19 01:06:48 IST 2026
[2026-06-19 01:06:48,073.073 INFO    ] ================================================
[2026-06-19 01:06:48,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:06:48
[2026-06-19 01:06:49,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:06:49,486.486 INFO    ] Initializing speech engine...
[2026-06-19 01:06:49,492.492 INFO    ] 2026-06-19 01:06:49
[2026-06-19 01:06:49,788.788 INFO    ] 2026-06-19 01:06:49
[2026-06-19 01:06:49,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:06:50,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:06:50,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:06:50,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:06:50,180.180 INFO    ] time= 19/06/2026 01:06:50
[2026-06-19 01:06:50,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:06:50,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:06:50,288.288 INFO    ] No existing commands found in stream
[2026-06-19 01:06:55,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:06:55,303.303 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 01:06:57,992.992 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:06:57,995.995 INFO    ] Checking for system updates...
[2026-06-19 01:06:58,030.030 INFO    ] 200
[2026-06-19 01:06:58,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:58,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:06:58,094.094 INFO    ] No update needed
[2026-06-19 01:06:58,097.097 INFO    ] Checking for camera pi updates...
[2026-06-19 01:06:58,130.130 INFO    ] 200
[2026-06-19 01:06:58,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:06:58,174.174 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:06:58,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:06:58,324.324 INFO    ] No camera update needed
[2026-06-19 01:06:58,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:06:58,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:06:58,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:06:58,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:07:00,379.379 INFO    ] ================================================
[2026-06-19 01:07:00,394.394 INFO    ] Launching Daemon at Fri Jun 19 01:07:00 IST 2026
[2026-06-19 01:07:00,405.405 INFO    ] ================================================
[2026-06-19 01:07:01,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:07:01
[2026-06-19 01:07:01,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:07:02,468.468 INFO    ] Initializing speech engine...
[2026-06-19 01:07:02,485.485 INFO    ] 2026-06-19 01:07:02
[2026-06-19 01:07:02,853.853 INFO    ] 2026-06-19 01:07:02
[2026-06-19 01:07:02,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:07:03,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:07:03,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:07:03,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:07:03,208.208 INFO    ] time= 19/06/2026 01:07:03
[2026-06-19 01:07:03,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:07:03,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:07:03,380.380 INFO    ] No existing commands found in stream
[2026-06-19 01:07:08,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:07:08,407.407 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 01:07:11,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:07:11,306.306 INFO    ] Checking for system updates...
[2026-06-19 01:07:11,342.342 INFO    ] 200
[2026-06-19 01:07:11,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:11,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:07:11,400.400 INFO    ] No update needed
[2026-06-19 01:07:11,403.403 INFO    ] Checking for camera pi updates...
[2026-06-19 01:07:11,437.437 INFO    ] 200
[2026-06-19 01:07:11,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:11,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:07:11,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:07:11,529.529 INFO    ] No camera update needed
[2026-06-19 01:07:11,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:07:11,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:07:11,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:07:11,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:07:13,586.586 INFO    ] ================================================
[2026-06-19 01:07:13,601.601 INFO    ] Launching Daemon at Fri Jun 19 01:07:13 IST 2026
[2026-06-19 01:07:13,612.612 INFO    ] ================================================
[2026-06-19 01:07:14,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:07:14
[2026-06-19 01:07:14,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:07:15,020.020 INFO    ] Initializing speech engine...
[2026-06-19 01:07:15,038.038 INFO    ] 2026-06-19 01:07:15
[2026-06-19 01:07:15,285.285 INFO    ] 2026-06-19 01:07:15
[2026-06-19 01:07:15,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:07:15,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:07:15,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:07:15,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:07:15,652.652 INFO    ] time= 19/06/2026 01:07:15
[2026-06-19 01:07:15,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:07:15,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:07:15,822.822 INFO    ] No existing commands found in stream
[2026-06-19 01:07:20,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:07:20,856.856 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 01:07:24,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:07:24,702.702 INFO    ] Checking for system updates...
[2026-06-19 01:07:24,739.739 INFO    ] 200
[2026-06-19 01:07:24,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:24,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:07:24,800.800 INFO    ] No update needed
[2026-06-19 01:07:24,802.802 INFO    ] Checking for camera pi updates...
[2026-06-19 01:07:24,837.837 INFO    ] 200
[2026-06-19 01:07:24,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:24,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:07:24,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:07:24,930.930 INFO    ] No camera update needed
[2026-06-19 01:07:24,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:07:24,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:07:24,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:07:24,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:07:26,986.986 INFO    ] ================================================
[2026-06-19 01:07:27,000.000 INFO    ] Launching Daemon at Fri Jun 19 01:07:26 IST 2026
[2026-06-19 01:07:27,011.011 INFO    ] ================================================
[2026-06-19 01:07:27,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:07:27
[2026-06-19 01:07:28,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:07:28,435.435 INFO    ] Initializing speech engine...
[2026-06-19 01:07:28,444.444 INFO    ] 2026-06-19 01:07:28
[2026-06-19 01:07:28,696.696 INFO    ] 2026-06-19 01:07:28
[2026-06-19 01:07:28,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:07:28,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:07:28,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:07:29,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:07:29,160.160 INFO    ] time= 19/06/2026 01:07:29
[2026-06-19 01:07:29,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:07:29,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:07:29,305.305 INFO    ] No existing commands found in stream
[2026-06-19 01:07:34,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:07:34,320.320 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 01:07:34,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:07:34,729.729 INFO    ] Checking for system updates...
[2026-06-19 01:07:34,769.769 INFO    ] 200
[2026-06-19 01:07:34,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:34,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:07:34,827.827 INFO    ] No update needed
[2026-06-19 01:07:34,829.829 INFO    ] Checking for camera pi updates...
[2026-06-19 01:07:34,864.864 INFO    ] 200
[2026-06-19 01:07:34,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:34,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:07:34,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:07:34,967.967 INFO    ] No camera update needed
[2026-06-19 01:07:34,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:07:34,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:07:34,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:07:34,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:07:37,022.022 INFO    ] ================================================
[2026-06-19 01:07:37,038.038 INFO    ] Launching Daemon at Fri Jun 19 01:07:37 IST 2026
[2026-06-19 01:07:37,049.049 INFO    ] ================================================
[2026-06-19 01:07:37,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:07:37
[2026-06-19 01:07:38,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:07:38,526.526 INFO    ] Initializing speech engine...
[2026-06-19 01:07:38,548.548 INFO    ] 2026-06-19 01:07:38
[2026-06-19 01:07:38,798.798 INFO    ] 2026-06-19 01:07:38
[2026-06-19 01:07:38,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:07:39,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:07:39,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:07:39,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:07:39,269.269 INFO    ] time= 19/06/2026 01:07:39
[2026-06-19 01:07:39,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:07:39,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:07:39,411.411 INFO    ] No existing commands found in stream
[2026-06-19 01:07:44,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:07:44,426.426 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 01:07:47,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:07:47,153.153 INFO    ] Checking for system updates...
[2026-06-19 01:07:47,189.189 INFO    ] 200
[2026-06-19 01:07:47,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:47,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:07:47,247.247 INFO    ] No update needed
[2026-06-19 01:07:47,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 01:07:47,283.283 INFO    ] 200
[2026-06-19 01:07:47,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:47,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:07:47,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:07:47,363.363 INFO    ] No camera update needed
[2026-06-19 01:07:47,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:07:47,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:07:47,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:07:47,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:07:49,421.421 INFO    ] ================================================
[2026-06-19 01:07:49,436.436 INFO    ] Launching Daemon at Fri Jun 19 01:07:49 IST 2026
[2026-06-19 01:07:49,446.446 INFO    ] ================================================
[2026-06-19 01:07:50,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:07:50
[2026-06-19 01:07:50,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:07:50,901.901 INFO    ] Initializing speech engine...
[2026-06-19 01:07:50,908.908 INFO    ] 2026-06-19 01:07:50
[2026-06-19 01:07:51,166.166 INFO    ] 2026-06-19 01:07:51
[2026-06-19 01:07:51,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:07:51,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:07:51,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:07:51,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:07:51,623.623 INFO    ] time= 19/06/2026 01:07:51
[2026-06-19 01:07:51,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:07:51,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:07:51,771.771 INFO    ] No existing commands found in stream
[2026-06-19 01:07:56,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:07:56,786.786 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 01:07:58,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:07:58,689.689 INFO    ] Checking for system updates...
[2026-06-19 01:07:58,726.726 INFO    ] 200
[2026-06-19 01:07:58,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:58,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:07:58,784.784 INFO    ] No update needed
[2026-06-19 01:07:58,787.787 INFO    ] Checking for camera pi updates...
[2026-06-19 01:07:58,825.825 INFO    ] 200
[2026-06-19 01:07:58,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:07:58,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:07:58,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:07:58,921.921 INFO    ] No camera update needed
[2026-06-19 01:07:58,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:07:58,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:07:58,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:07:58,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:08:00,977.977 INFO    ] ================================================
[2026-06-19 01:08:00,993.993 INFO    ] Launching Daemon at Fri Jun 19 01:08:00 IST 2026
[2026-06-19 01:08:01,003.003 INFO    ] ================================================
[2026-06-19 01:08:01,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:08:01
[2026-06-19 01:08:02,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:08:03,034.034 INFO    ] Initializing speech engine...
[2026-06-19 01:08:03,038.038 INFO    ] 2026-06-19 01:08:03
[2026-06-19 01:08:03,384.384 INFO    ] 2026-06-19 01:08:03
[2026-06-19 01:08:03,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:08:03,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:08:03,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:08:03,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:08:03,825.825 INFO    ] time= 19/06/2026 01:08:03
[2026-06-19 01:08:03,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:08:03,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:08:03,993.993 INFO    ] No existing commands found in stream
[2026-06-19 01:08:09,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:08:09,008.008 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 01:08:11,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:08:11,139.139 INFO    ] Checking for system updates...
[2026-06-19 01:08:11,179.179 INFO    ] 200
[2026-06-19 01:08:11,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:08:11,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:08:11,238.238 INFO    ] No update needed
[2026-06-19 01:08:11,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 01:08:11,274.274 INFO    ] 200
[2026-06-19 01:08:11,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:08:11,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:08:11,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:08:11,370.370 INFO    ] No camera update needed
[2026-06-19 01:08:11,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:08:11,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:08:11,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:08:11,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:08:13,426.426 INFO    ] ================================================
[2026-06-19 01:08:13,441.441 INFO    ] Launching Daemon at Fri Jun 19 01:08:13 IST 2026
[2026-06-19 01:08:13,452.452 INFO    ] ================================================
[2026-06-19 01:08:14,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:08:14
[2026-06-19 01:08:14,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:08:15,081.081 INFO    ] Initializing speech engine...
[2026-06-19 01:08:15,088.088 INFO    ] 2026-06-19 01:08:15
[2026-06-19 01:08:15,375.375 INFO    ] 2026-06-19 01:08:15
[2026-06-19 01:08:15,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:08:15,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:08:15,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:08:15,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:08:15,822.822 INFO    ] time= 19/06/2026 01:08:15
[2026-06-19 01:08:15,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:08:15,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:08:16,048.048 INFO    ] No existing commands found in stream
[2026-06-19 01:08:21,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:08:21,078.078 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 01:08:23,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:08:23,033.033 INFO    ] Checking for system updates...
[2026-06-19 01:08:23,074.074 INFO    ] 200
[2026-06-19 01:08:23,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:08:23,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:08:23,141.141 INFO    ] No update needed
[2026-06-19 01:08:23,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 01:08:23,179.179 INFO    ] 200
[2026-06-19 01:08:23,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:08:23,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:08:23,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:08:23,272.272 INFO    ] No camera update needed
[2026-06-19 01:08:23,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:08:23,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:08:23,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:08:23,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:08:25,331.331 INFO    ] ================================================
[2026-06-19 01:08:25,346.346 INFO    ] Launching Daemon at Fri Jun 19 01:08:25 IST 2026
[2026-06-19 01:08:25,357.357 INFO    ] ================================================
[2026-06-19 01:08:25,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:08:25
[2026-06-19 01:08:26,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:08:26,782.782 INFO    ] Initializing speech engine...
[2026-06-19 01:08:26,791.791 INFO    ] 2026-06-19 01:08:26
[2026-06-19 01:08:27,087.087 INFO    ] 2026-06-19 01:08:27
[2026-06-19 01:08:27,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:08:27,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:08:27,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:08:27,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:08:27,466.466 INFO    ] time= 19/06/2026 01:08:27
[2026-06-19 01:08:27,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:08:27,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:08:27,594.594 INFO    ] No existing commands found in stream
[2026-06-19 01:08:32,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:08:32,608.608 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 01:08:36,229.229 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:08:36,232.232 INFO    ] Checking for system updates...
[2026-06-19 01:08:36,268.268 INFO    ] 200
[2026-06-19 01:08:36,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:08:36,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:08:36,328.328 INFO    ] No update needed
[2026-06-19 01:08:36,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 01:08:36,364.364 INFO    ] 200
[2026-06-19 01:08:36,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:08:36,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:08:36,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:08:36,466.466 INFO    ] No camera update needed
[2026-06-19 01:08:36,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:08:36,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:08:36,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:08:36,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:08:38,523.523 INFO    ] ================================================
[2026-06-19 01:08:38,538.538 INFO    ] Launching Daemon at Fri Jun 19 01:08:38 IST 2026
[2026-06-19 01:08:38,549.549 INFO    ] ================================================
[2026-06-19 01:08:39,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:08:39
[2026-06-19 01:08:39,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:08:39,994.994 INFO    ] Initializing speech engine...
[2026-06-19 01:08:40,012.012 INFO    ] 2026-06-19 01:08:39
[2026-06-19 01:08:40,287.287 INFO    ] 2026-06-19 01:08:40
[2026-06-19 01:08:40,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:08:40,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:08:40,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:08:40,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:08:40,669.669 INFO    ] time= 19/06/2026 01:08:40
[2026-06-19 01:08:40,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:08:40,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:08:40,794.794 INFO    ] No existing commands found in stream
[2026-06-19 01:08:45,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:08:45,806.806 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 01:08:46,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:08:46,207.207 INFO    ] Checking for system updates...
[2026-06-19 01:08:46,244.244 INFO    ] 200
[2026-06-19 01:08:46,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:08:46,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:08:46,308.308 INFO    ] No update needed
[2026-06-19 01:08:46,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 01:08:46,344.344 INFO    ] 200
[2026-06-19 01:08:46,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:08:46,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:08:46,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:08:46,426.426 INFO    ] No camera update needed
[2026-06-19 01:08:46,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:08:46,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:08:46,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:08:46,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:08:48,483.483 INFO    ] ================================================
[2026-06-19 01:08:48,500.500 INFO    ] Launching Daemon at Fri Jun 19 01:08:48 IST 2026
[2026-06-19 01:08:48,511.511 INFO    ] ================================================
[2026-06-19 01:08:49,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:08:49
[2026-06-19 01:08:49,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:08:49,972.972 INFO    ] Initializing speech engine...
[2026-06-19 01:08:49,981.981 INFO    ] 2026-06-19 01:08:49
[2026-06-19 01:08:50,269.269 INFO    ] 2026-06-19 01:08:50
[2026-06-19 01:08:50,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:08:50,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:08:50,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:08:50,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:08:50,766.766 INFO    ] time= 19/06/2026 01:08:50
[2026-06-19 01:08:50,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:08:50,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:08:50,940.940 INFO    ] No existing commands found in stream
[2026-06-19 01:08:55,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:08:55,974.974 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 01:09:00,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:09:00,054.054 INFO    ] Checking for system updates...
[2026-06-19 01:09:00,096.096 INFO    ] 200
[2026-06-19 01:09:00,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:00,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:09:00,161.161 INFO    ] No update needed
[2026-06-19 01:09:00,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 01:09:00,199.199 INFO    ] 200
[2026-06-19 01:09:00,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:00,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:09:00,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:09:00,404.404 INFO    ] No camera update needed
[2026-06-19 01:09:00,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:09:00,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:09:00,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:09:00,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:09:02,467.467 INFO    ] ================================================
[2026-06-19 01:09:02,490.490 INFO    ] Launching Daemon at Fri Jun 19 01:09:02 IST 2026
[2026-06-19 01:09:02,507.507 INFO    ] ================================================
[2026-06-19 01:09:03,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:09:03
[2026-06-19 01:09:03,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:09:04,090.090 INFO    ] Initializing speech engine...
[2026-06-19 01:09:04,100.100 INFO    ] 2026-06-19 01:09:04
[2026-06-19 01:09:04,363.363 INFO    ] 2026-06-19 01:09:04
[2026-06-19 01:09:04,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:09:04,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:09:04,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:09:04,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:09:04,720.720 INFO    ] time= 19/06/2026 01:09:04
[2026-06-19 01:09:04,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:09:04,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:09:04,840.840 INFO    ] No existing commands found in stream
[2026-06-19 01:09:09,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:09:09,853.853 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 01:09:11,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:09:11,998.998 INFO    ] Checking for system updates...
[2026-06-19 01:09:12,034.034 INFO    ] 200
[2026-06-19 01:09:12,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:12,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:09:12,091.091 INFO    ] No update needed
[2026-06-19 01:09:12,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 01:09:12,131.131 INFO    ] 200
[2026-06-19 01:09:12,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:12,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:09:12,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:09:12,226.226 INFO    ] No camera update needed
[2026-06-19 01:09:12,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:09:12,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:09:12,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:09:12,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:09:14,282.282 INFO    ] ================================================
[2026-06-19 01:09:14,298.298 INFO    ] Launching Daemon at Fri Jun 19 01:09:14 IST 2026
[2026-06-19 01:09:14,309.309 INFO    ] ================================================
[2026-06-19 01:09:14,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:09:14
[2026-06-19 01:09:15,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:09:15,737.737 INFO    ] Initializing speech engine...
[2026-06-19 01:09:15,746.746 INFO    ] 2026-06-19 01:09:15
[2026-06-19 01:09:16,040.040 INFO    ] 2026-06-19 01:09:16
[2026-06-19 01:09:16,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:09:16,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:09:16,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:09:16,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:09:16,449.449 INFO    ] time= 19/06/2026 01:09:16
[2026-06-19 01:09:16,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:09:16,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:09:16,538.538 INFO    ] No existing commands found in stream
[2026-06-19 01:09:21,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:09:21,559.559 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 01:09:24,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:09:24,836.836 INFO    ] Checking for system updates...
[2026-06-19 01:09:24,876.876 INFO    ] 200
[2026-06-19 01:09:24,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:24,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:09:24,947.947 INFO    ] No update needed
[2026-06-19 01:09:24,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 01:09:24,986.986 INFO    ] 200
[2026-06-19 01:09:24,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:25,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:09:25,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:09:25,079.079 INFO    ] No camera update needed
[2026-06-19 01:09:25,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:09:25,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:09:25,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:09:25,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:09:27,136.136 INFO    ] ================================================
[2026-06-19 01:09:27,151.151 INFO    ] Launching Daemon at Fri Jun 19 01:09:27 IST 2026
[2026-06-19 01:09:27,162.162 INFO    ] ================================================
[2026-06-19 01:09:27,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:09:27
[2026-06-19 01:09:28,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:09:28,656.656 INFO    ] Initializing speech engine...
[2026-06-19 01:09:28,663.663 INFO    ] 2026-06-19 01:09:28
[2026-06-19 01:09:28,924.924 INFO    ] 2026-06-19 01:09:28
[2026-06-19 01:09:28,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:09:29,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:09:29,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:09:29,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:09:29,384.384 INFO    ] time= 19/06/2026 01:09:29
[2026-06-19 01:09:29,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:09:29,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:09:29,532.532 INFO    ] No existing commands found in stream
[2026-06-19 01:09:34,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:09:34,547.547 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 01:09:36,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:09:36,013.013 INFO    ] Checking for system updates...
[2026-06-19 01:09:36,050.050 INFO    ] 200
[2026-06-19 01:09:36,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:36,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:09:36,108.108 INFO    ] No update needed
[2026-06-19 01:09:36,110.110 INFO    ] Checking for camera pi updates...
[2026-06-19 01:09:36,145.145 INFO    ] 200
[2026-06-19 01:09:36,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:36,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:09:36,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:09:36,235.235 INFO    ] No camera update needed
[2026-06-19 01:09:36,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:09:36,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:09:36,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:09:36,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:09:38,291.291 INFO    ] ================================================
[2026-06-19 01:09:38,308.308 INFO    ] Launching Daemon at Fri Jun 19 01:09:38 IST 2026
[2026-06-19 01:09:38,320.320 INFO    ] ================================================
[2026-06-19 01:09:38,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:09:38
[2026-06-19 01:09:39,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:09:39,748.748 INFO    ] Initializing speech engine...
[2026-06-19 01:09:39,769.769 INFO    ] 2026-06-19 01:09:39
[2026-06-19 01:09:40,037.037 INFO    ] 2026-06-19 01:09:40
[2026-06-19 01:09:40,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:09:40,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:09:40,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:09:40,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:09:40,406.406 INFO    ] time= 19/06/2026 01:09:40
[2026-06-19 01:09:40,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:09:40,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:09:40,532.532 INFO    ] No existing commands found in stream
[2026-06-19 01:09:45,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:09:45,547.547 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 01:09:47,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:09:47,265.265 INFO    ] Checking for system updates...
[2026-06-19 01:09:47,301.301 INFO    ] 200
[2026-06-19 01:09:47,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:47,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:09:47,360.360 INFO    ] No update needed
[2026-06-19 01:09:47,363.363 INFO    ] Checking for camera pi updates...
[2026-06-19 01:09:47,398.398 INFO    ] 200
[2026-06-19 01:09:47,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:09:47,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:09:47,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:09:47,483.483 INFO    ] No camera update needed
[2026-06-19 01:09:47,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:09:47,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:09:47,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:09:47,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:09:49,542.542 INFO    ] ================================================
[2026-06-19 01:09:49,558.558 INFO    ] Launching Daemon at Fri Jun 19 01:09:49 IST 2026
[2026-06-19 01:09:49,570.570 INFO    ] ================================================
[2026-06-19 01:09:50,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:09:50
[2026-06-19 01:09:50,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:09:50,992.992 INFO    ] Initializing speech engine...
[2026-06-19 01:09:50,998.998 INFO    ] 2026-06-19 01:09:50
[2026-06-19 01:09:51,257.257 INFO    ] 2026-06-19 01:09:51
[2026-06-19 01:09:51,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:09:51,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:09:51,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:09:51,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:09:51,679.679 INFO    ] time= 19/06/2026 01:09:51
[2026-06-19 01:09:51,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:09:51,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:09:51,856.856 INFO    ] No existing commands found in stream
[2026-06-19 01:09:56,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:09:56,870.870 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 01:10:01,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:10:01,150.150 INFO    ] Checking for system updates...
[2026-06-19 01:10:01,191.191 INFO    ] 200
[2026-06-19 01:10:01,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:01,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:10:01,252.252 INFO    ] No update needed
[2026-06-19 01:10:01,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 01:10:01,296.296 INFO    ] 200
[2026-06-19 01:10:01,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:01,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:10:01,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:10:01,416.416 INFO    ] No camera update needed
[2026-06-19 01:10:01,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:10:01,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:10:01,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:10:01,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:10:03,487.487 INFO    ] ================================================
[2026-06-19 01:10:03,507.507 INFO    ] Launching Daemon at Fri Jun 19 01:10:03 IST 2026
[2026-06-19 01:10:03,521.521 INFO    ] ================================================
[2026-06-19 01:10:04,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:10:04
[2026-06-19 01:10:04,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:10:05,021.021 INFO    ] Initializing speech engine...
[2026-06-19 01:10:05,036.036 INFO    ] 2026-06-19 01:10:05
[2026-06-19 01:10:05,303.303 INFO    ] 2026-06-19 01:10:05
[2026-06-19 01:10:05,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:10:05,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:10:05,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:10:05,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:10:05,666.666 INFO    ] time= 19/06/2026 01:10:05
[2026-06-19 01:10:05,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:10:05,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:10:05,787.787 INFO    ] No existing commands found in stream
[2026-06-19 01:10:10,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:10:10,802.802 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 01:10:13,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:10:13,808.808 INFO    ] Checking for system updates...
[2026-06-19 01:10:13,844.844 INFO    ] 200
[2026-06-19 01:10:13,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:13,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:10:13,901.901 INFO    ] No update needed
[2026-06-19 01:10:13,904.904 INFO    ] Checking for camera pi updates...
[2026-06-19 01:10:13,939.939 INFO    ] 200
[2026-06-19 01:10:13,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:13,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:10:14,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:10:14,037.037 INFO    ] No camera update needed
[2026-06-19 01:10:14,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:10:14,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:10:14,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:10:14,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:10:16,092.092 INFO    ] ================================================
[2026-06-19 01:10:16,107.107 INFO    ] Launching Daemon at Fri Jun 19 01:10:16 IST 2026
[2026-06-19 01:10:16,118.118 INFO    ] ================================================
[2026-06-19 01:10:16,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:10:16
[2026-06-19 01:10:17,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:10:17,674.674 INFO    ] Initializing speech engine...
[2026-06-19 01:10:17,685.685 INFO    ] 2026-06-19 01:10:17
[2026-06-19 01:10:17,944.944 INFO    ] 2026-06-19 01:10:17
[2026-06-19 01:10:17,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:10:18,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:10:18,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:10:18,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:10:18,326.326 INFO    ] time= 19/06/2026 01:10:18
[2026-06-19 01:10:18,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:10:18,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:10:18,492.492 INFO    ] No existing commands found in stream
[2026-06-19 01:10:23,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:10:23,525.525 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 01:10:25,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:10:25,154.154 INFO    ] Checking for system updates...
[2026-06-19 01:10:25,205.205 INFO    ] 200
[2026-06-19 01:10:25,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:25,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:10:25,266.266 INFO    ] No update needed
[2026-06-19 01:10:25,268.268 INFO    ] Checking for camera pi updates...
[2026-06-19 01:10:25,303.303 INFO    ] 200
[2026-06-19 01:10:25,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:25,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:10:25,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:10:25,396.396 INFO    ] No camera update needed
[2026-06-19 01:10:25,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:10:25,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:10:25,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:10:25,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:10:27,453.453 INFO    ] ================================================
[2026-06-19 01:10:27,468.468 INFO    ] Launching Daemon at Fri Jun 19 01:10:27 IST 2026
[2026-06-19 01:10:27,479.479 INFO    ] ================================================
[2026-06-19 01:10:28,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:10:28
[2026-06-19 01:10:28,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:10:28,903.903 INFO    ] Initializing speech engine...
[2026-06-19 01:10:28,916.916 INFO    ] 2026-06-19 01:10:28
[2026-06-19 01:10:29,200.200 INFO    ] 2026-06-19 01:10:29
[2026-06-19 01:10:29,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:10:29,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:10:29,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:10:29,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:10:29,550.550 INFO    ] time= 19/06/2026 01:10:29
[2026-06-19 01:10:29,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:10:29,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:10:29,630.630 INFO    ] No existing commands found in stream
[2026-06-19 01:10:34,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:10:34,644.644 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 01:10:36,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:10:36,712.712 INFO    ] Checking for system updates...
[2026-06-19 01:10:36,747.747 INFO    ] 200
[2026-06-19 01:10:36,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:36,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:10:36,811.811 INFO    ] No update needed
[2026-06-19 01:10:36,813.813 INFO    ] Checking for camera pi updates...
[2026-06-19 01:10:36,847.847 INFO    ] 200
[2026-06-19 01:10:36,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:36,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:10:36,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:10:36,945.945 INFO    ] No camera update needed
[2026-06-19 01:10:36,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:10:36,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:10:36,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:10:36,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:10:39,999.999 INFO    ] ================================================
[2026-06-19 01:10:39,014.014 INFO    ] Launching Daemon at Fri Jun 19 01:10:39 IST 2026
[2026-06-19 01:10:39,025.025 INFO    ] ================================================
[2026-06-19 01:10:39,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:10:39
[2026-06-19 01:10:40,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:10:40,645.645 INFO    ] Initializing speech engine...
[2026-06-19 01:10:40,659.659 INFO    ] 2026-06-19 01:10:40
[2026-06-19 01:10:40,970.970 INFO    ] 2026-06-19 01:10:40
[2026-06-19 01:10:41,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:10:41,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:10:41,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:10:41,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:10:41,474.474 INFO    ] time= 19/06/2026 01:10:41
[2026-06-19 01:10:41,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:10:41,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:10:41,615.615 INFO    ] No existing commands found in stream
[2026-06-19 01:10:46,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:10:46,643.643 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 01:10:50,847.847 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:10:50,851.851 INFO    ] Checking for system updates...
[2026-06-19 01:10:50,888.888 INFO    ] 200
[2026-06-19 01:10:50,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:50,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:10:50,954.954 INFO    ] No update needed
[2026-06-19 01:10:50,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 01:10:50,995.995 INFO    ] 200
[2026-06-19 01:10:50,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:10:51,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:10:51,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:10:51,096.096 INFO    ] No camera update needed
[2026-06-19 01:10:51,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:10:51,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:10:51,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:10:51,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:10:53,154.154 INFO    ] ================================================
[2026-06-19 01:10:53,170.170 INFO    ] Launching Daemon at Fri Jun 19 01:10:53 IST 2026
[2026-06-19 01:10:53,181.181 INFO    ] ================================================
[2026-06-19 01:10:53,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:10:53
[2026-06-19 01:10:54,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:10:54,597.597 INFO    ] Initializing speech engine...
[2026-06-19 01:10:54,611.611 INFO    ] 2026-06-19 01:10:54
[2026-06-19 01:10:54,860.860 INFO    ] 2026-06-19 01:10:54
[2026-06-19 01:10:54,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:10:55,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:10:55,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:10:55,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:10:55,231.231 INFO    ] time= 19/06/2026 01:10:55
[2026-06-19 01:10:55,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:10:55,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:10:55,346.346 INFO    ] No existing commands found in stream
[2026-06-19 01:11:00,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:11:00,371.371 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 01:11:03,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:11:03,201.201 INFO    ] Checking for system updates...
[2026-06-19 01:11:03,237.237 INFO    ] 200
[2026-06-19 01:11:03,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:03,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:11:03,295.295 INFO    ] No update needed
[2026-06-19 01:11:03,297.297 INFO    ] Checking for camera pi updates...
[2026-06-19 01:11:03,332.332 INFO    ] 200
[2026-06-19 01:11:03,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:03,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:11:03,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:11:03,426.426 INFO    ] No camera update needed
[2026-06-19 01:11:03,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:11:03,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:11:03,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:11:03,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:11:05,481.481 INFO    ] ================================================
[2026-06-19 01:11:05,497.497 INFO    ] Launching Daemon at Fri Jun 19 01:11:05 IST 2026
[2026-06-19 01:11:05,508.508 INFO    ] ================================================
[2026-06-19 01:11:06,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:11:06
[2026-06-19 01:11:06,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:11:07,103.103 INFO    ] Initializing speech engine...
[2026-06-19 01:11:07,116.116 INFO    ] 2026-06-19 01:11:07
[2026-06-19 01:11:07,365.365 INFO    ] 2026-06-19 01:11:07
[2026-06-19 01:11:07,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:11:07,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:11:07,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:11:07,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:11:07,741.741 INFO    ] time= 19/06/2026 01:11:07
[2026-06-19 01:11:07,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:11:07,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:11:07,924.924 INFO    ] No existing commands found in stream
[2026-06-19 01:11:12,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:11:12,952.952 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 01:11:17,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:11:17,201.201 INFO    ] Checking for system updates...
[2026-06-19 01:11:17,245.245 INFO    ] 200
[2026-06-19 01:11:17,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:17,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:11:17,311.311 INFO    ] No update needed
[2026-06-19 01:11:17,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 01:11:17,379.379 INFO    ] 200
[2026-06-19 01:11:17,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:17,463.463 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:11:17,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:11:17,522.522 INFO    ] No camera update needed
[2026-06-19 01:11:17,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:11:17,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:11:17,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:11:17,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:11:19,581.581 INFO    ] ================================================
[2026-06-19 01:11:19,597.597 INFO    ] Launching Daemon at Fri Jun 19 01:11:19 IST 2026
[2026-06-19 01:11:19,608.608 INFO    ] ================================================
[2026-06-19 01:11:20,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:11:20
[2026-06-19 01:11:20,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:11:21,024.024 INFO    ] Initializing speech engine...
[2026-06-19 01:11:21,047.047 INFO    ] 2026-06-19 01:11:21
[2026-06-19 01:11:21,313.313 INFO    ] 2026-06-19 01:11:21
[2026-06-19 01:11:21,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:11:21,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:11:21,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:11:21,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:11:21,719.719 INFO    ] time= 19/06/2026 01:11:21
[2026-06-19 01:11:21,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:11:21,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:11:21,820.820 INFO    ] No existing commands found in stream
[2026-06-19 01:11:26,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:11:26,832.832 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 01:11:30,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:11:30,512.512 INFO    ] Checking for system updates...
[2026-06-19 01:11:30,548.548 INFO    ] 200
[2026-06-19 01:11:30,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:30,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:11:30,611.611 INFO    ] No update needed
[2026-06-19 01:11:30,613.613 INFO    ] Checking for camera pi updates...
[2026-06-19 01:11:30,647.647 INFO    ] 200
[2026-06-19 01:11:30,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:30,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:11:30,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:11:30,746.746 INFO    ] No camera update needed
[2026-06-19 01:11:30,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:11:30,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:11:30,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:11:30,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:11:32,800.800 INFO    ] ================================================
[2026-06-19 01:11:32,816.816 INFO    ] Launching Daemon at Fri Jun 19 01:11:32 IST 2026
[2026-06-19 01:11:32,828.828 INFO    ] ================================================
[2026-06-19 01:11:33,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:11:33
[2026-06-19 01:11:33,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:11:34,249.249 INFO    ] Initializing speech engine...
[2026-06-19 01:11:34,259.259 INFO    ] 2026-06-19 01:11:34
[2026-06-19 01:11:34,503.503 INFO    ] 2026-06-19 01:11:34
[2026-06-19 01:11:34,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:11:34,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:11:34,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:11:34,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:11:34,968.968 INFO    ] time= 19/06/2026 01:11:34
[2026-06-19 01:11:35,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:11:35,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:11:35,121.121 INFO    ] No existing commands found in stream
[2026-06-19 01:11:40,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:11:40,136.136 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 01:11:44,432.432 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:11:44,435.435 INFO    ] Checking for system updates...
[2026-06-19 01:11:44,471.471 INFO    ] 200
[2026-06-19 01:11:44,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:44,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:11:44,532.532 INFO    ] No update needed
[2026-06-19 01:11:44,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 01:11:44,571.571 INFO    ] 200
[2026-06-19 01:11:44,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:44,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:11:44,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:11:44,666.666 INFO    ] No camera update needed
[2026-06-19 01:11:44,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:11:44,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:11:44,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:11:44,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:11:46,723.723 INFO    ] ================================================
[2026-06-19 01:11:46,738.738 INFO    ] Launching Daemon at Fri Jun 19 01:11:46 IST 2026
[2026-06-19 01:11:46,749.749 INFO    ] ================================================
[2026-06-19 01:11:47,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:11:47
[2026-06-19 01:11:48,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:11:48,303.303 INFO    ] Initializing speech engine...
[2026-06-19 01:11:48,312.312 INFO    ] 2026-06-19 01:11:48
[2026-06-19 01:11:48,579.579 INFO    ] 2026-06-19 01:11:48
[2026-06-19 01:11:48,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:11:48,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:11:48,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:11:49,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:11:49,073.073 INFO    ] time= 19/06/2026 01:11:49
[2026-06-19 01:11:49,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:11:49,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:11:49,269.269 INFO    ] No existing commands found in stream
[2026-06-19 01:11:54,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:11:54,299.299 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 01:11:56,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:11:56,432.432 INFO    ] Checking for system updates...
[2026-06-19 01:11:56,469.469 INFO    ] 200
[2026-06-19 01:11:56,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:56,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:11:56,534.534 INFO    ] No update needed
[2026-06-19 01:11:56,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 01:11:56,570.570 INFO    ] 200
[2026-06-19 01:11:56,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:11:56,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:11:56,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:11:56,664.664 INFO    ] No camera update needed
[2026-06-19 01:11:56,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:11:56,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:11:56,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:11:56,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:11:58,719.719 INFO    ] ================================================
[2026-06-19 01:11:58,734.734 INFO    ] Launching Daemon at Fri Jun 19 01:11:58 IST 2026
[2026-06-19 01:11:58,745.745 INFO    ] ================================================
[2026-06-19 01:11:59,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:11:59
[2026-06-19 01:11:59,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:12:00,162.162 INFO    ] Initializing speech engine...
[2026-06-19 01:12:00,178.178 INFO    ] 2026-06-19 01:12:00
[2026-06-19 01:12:00,460.460 INFO    ] 2026-06-19 01:12:00
[2026-06-19 01:12:00,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:12:00,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:12:00,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:12:00,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:12:00,849.849 INFO    ] time= 19/06/2026 01:12:00
[2026-06-19 01:12:00,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:12:00,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:12:01,021.021 INFO    ] No existing commands found in stream
[2026-06-19 01:12:06,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:12:06,054.054 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 01:12:09,960.960 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:12:09,963.963 INFO    ] Checking for system updates...
[2026-06-19 01:12:09,999.999 INFO    ] 200
[2026-06-19 01:12:10,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:12:10,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:12:10,058.058 INFO    ] No update needed
[2026-06-19 01:12:10,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 01:12:10,095.095 INFO    ] 200
[2026-06-19 01:12:10,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:12:10,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:12:10,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:12:10,186.186 INFO    ] No camera update needed
[2026-06-19 01:12:10,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:12:10,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:12:10,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:12:10,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:12:12,241.241 INFO    ] ================================================
[2026-06-19 01:12:12,256.256 INFO    ] Launching Daemon at Fri Jun 19 01:12:12 IST 2026
[2026-06-19 01:12:12,267.267 INFO    ] ================================================
[2026-06-19 01:12:12,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:12:12
[2026-06-19 01:12:13,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:12:13,887.887 INFO    ] Initializing speech engine...
[2026-06-19 01:12:13,898.898 INFO    ] 2026-06-19 01:12:13
[2026-06-19 01:12:14,176.176 INFO    ] 2026-06-19 01:12:14
[2026-06-19 01:12:14,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:12:14,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:12:14,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:12:14,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:12:14,633.633 INFO    ] time= 19/06/2026 01:12:14
[2026-06-19 01:12:14,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:12:14,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:12:14,781.781 INFO    ] No existing commands found in stream
[2026-06-19 01:12:19,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:12:19,796.796 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 01:12:23,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:12:23,551.551 INFO    ] Checking for system updates...
[2026-06-19 01:12:23,593.593 INFO    ] 200
[2026-06-19 01:12:23,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:12:23,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:12:23,659.659 INFO    ] No update needed
[2026-06-19 01:12:23,662.662 INFO    ] Checking for camera pi updates...
[2026-06-19 01:12:23,699.699 INFO    ] 200
[2026-06-19 01:12:23,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:12:23,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:12:23,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:12:23,800.800 INFO    ] No camera update needed
[2026-06-19 01:12:23,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:12:23,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:12:23,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:12:23,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:12:25,855.855 INFO    ] ================================================
[2026-06-19 01:12:25,871.871 INFO    ] Launching Daemon at Fri Jun 19 01:12:25 IST 2026
[2026-06-19 01:12:25,882.882 INFO    ] ================================================
[2026-06-19 01:12:26,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:12:26
[2026-06-19 01:12:27,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:12:27,304.304 INFO    ] Initializing speech engine...
[2026-06-19 01:12:27,313.313 INFO    ] 2026-06-19 01:12:27
[2026-06-19 01:12:27,559.559 INFO    ] 2026-06-19 01:12:27
[2026-06-19 01:12:27,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:12:27,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:12:27,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:12:27,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:12:27,930.930 INFO    ] time= 19/06/2026 01:12:27
[2026-06-19 01:12:27,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:12:27,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:12:28,103.103 INFO    ] No existing commands found in stream
[2026-06-19 01:12:33,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:12:33,135.135 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 01:12:33,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:12:33,629.629 INFO    ] Checking for system updates...
[2026-06-19 01:12:33,668.668 INFO    ] 200
[2026-06-19 01:12:33,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:12:33,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:12:33,725.725 INFO    ] No update needed
[2026-06-19 01:12:33,728.728 INFO    ] Checking for camera pi updates...
[2026-06-19 01:12:33,767.767 INFO    ] 200
[2026-06-19 01:12:33,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:12:33,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:12:33,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:12:33,885.885 INFO    ] No camera update needed
[2026-06-19 01:12:33,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:12:33,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:12:33,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:12:33,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:12:35,944.944 INFO    ] ================================================
[2026-06-19 01:12:35,965.965 INFO    ] Launching Daemon at Fri Jun 19 01:12:35 IST 2026
[2026-06-19 01:12:35,977.977 INFO    ] ================================================
[2026-06-19 01:12:36,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:12:36
[2026-06-19 01:12:37,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:12:37,382.382 INFO    ] Initializing speech engine...
[2026-06-19 01:12:37,389.389 INFO    ] 2026-06-19 01:12:37
[2026-06-19 01:12:37,685.685 INFO    ] 2026-06-19 01:12:37
[2026-06-19 01:12:37,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:12:37,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:12:37,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:12:38,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:12:38,060.060 INFO    ] time= 19/06/2026 01:12:38
[2026-06-19 01:12:38,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:12:38,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:12:38,184.184 INFO    ] No existing commands found in stream
[2026-06-19 01:12:43,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:12:43,199.199 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 01:12:46,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:12:46,863.863 INFO    ] Checking for system updates...
[2026-06-19 01:12:46,900.900 INFO    ] 200
[2026-06-19 01:12:46,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:12:46,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:12:46,961.961 INFO    ] No update needed
[2026-06-19 01:12:46,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 01:12:47,002.002 INFO    ] 200
[2026-06-19 01:12:47,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:12:47,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:12:47,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:12:47,088.088 INFO    ] No camera update needed
[2026-06-19 01:12:47,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:12:47,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:12:47,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:12:47,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:12:49,148.148 INFO    ] ================================================
[2026-06-19 01:12:49,163.163 INFO    ] Launching Daemon at Fri Jun 19 01:12:49 IST 2026
[2026-06-19 01:12:49,174.174 INFO    ] ================================================
[2026-06-19 01:12:49,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:12:49
[2026-06-19 01:12:50,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:12:50,631.631 INFO    ] Initializing speech engine...
[2026-06-19 01:12:50,640.640 INFO    ] 2026-06-19 01:12:50
[2026-06-19 01:12:50,890.890 INFO    ] 2026-06-19 01:12:50
[2026-06-19 01:12:50,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:12:51,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:12:51,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:12:51,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:12:51,332.332 INFO    ] time= 19/06/2026 01:12:51
[2026-06-19 01:12:51,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:12:51,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:12:51,506.506 INFO    ] No existing commands found in stream
[2026-06-19 01:12:56,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:12:56,521.521 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 01:12:59,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:12:59,879.879 INFO    ] Checking for system updates...
[2026-06-19 01:12:59,915.915 INFO    ] 200
[2026-06-19 01:12:59,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:12:59,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:12:59,972.972 INFO    ] No update needed
[2026-06-19 01:12:59,974.974 INFO    ] Checking for camera pi updates...
[2026-06-19 01:13:00,009.009 INFO    ] 200
[2026-06-19 01:13:00,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:00,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:13:00,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:13:00,105.105 INFO    ] No camera update needed
[2026-06-19 01:13:00,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:13:00,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:13:00,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:13:00,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:13:02,169.169 INFO    ] ================================================
[2026-06-19 01:13:02,185.185 INFO    ] Launching Daemon at Fri Jun 19 01:13:02 IST 2026
[2026-06-19 01:13:02,201.201 INFO    ] ================================================
[2026-06-19 01:13:02,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:13:02
[2026-06-19 01:13:03,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:13:03,728.728 INFO    ] Initializing speech engine...
[2026-06-19 01:13:03,735.735 INFO    ] 2026-06-19 01:13:03
[2026-06-19 01:13:04,036.036 INFO    ] 2026-06-19 01:13:03
[2026-06-19 01:13:04,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:13:04,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:13:04,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:13:04,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:13:04,409.409 INFO    ] time= 19/06/2026 01:13:04
[2026-06-19 01:13:04,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:13:04,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:13:04,581.581 INFO    ] No existing commands found in stream
[2026-06-19 01:13:09,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:13:09,609.609 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 01:13:12,148.148 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:13:12,150.150 INFO    ] Checking for system updates...
[2026-06-19 01:13:12,189.189 INFO    ] 200
[2026-06-19 01:13:12,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:12,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:13:12,247.247 INFO    ] No update needed
[2026-06-19 01:13:12,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 01:13:12,290.290 INFO    ] 200
[2026-06-19 01:13:12,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:12,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:13:12,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:13:12,483.483 INFO    ] No camera update needed
[2026-06-19 01:13:12,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:13:12,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:13:12,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:13:12,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:13:14,538.538 INFO    ] ================================================
[2026-06-19 01:13:14,553.553 INFO    ] Launching Daemon at Fri Jun 19 01:13:14 IST 2026
[2026-06-19 01:13:14,564.564 INFO    ] ================================================
[2026-06-19 01:13:15,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:13:15
[2026-06-19 01:13:15,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:13:15,998.998 INFO    ] Initializing speech engine...
[2026-06-19 01:13:16,008.008 INFO    ] 2026-06-19 01:13:16
[2026-06-19 01:13:16,268.268 INFO    ] 2026-06-19 01:13:16
[2026-06-19 01:13:16,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:13:16,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:13:16,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:13:16,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:13:16,727.727 INFO    ] time= 19/06/2026 01:13:16
[2026-06-19 01:13:16,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:13:16,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:13:16,871.871 INFO    ] No existing commands found in stream
[2026-06-19 01:13:21,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:13:21,885.885 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 01:13:23,620.620 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:13:23,623.623 INFO    ] Checking for system updates...
[2026-06-19 01:13:23,659.659 INFO    ] 200
[2026-06-19 01:13:23,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:23,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:13:23,722.722 INFO    ] No update needed
[2026-06-19 01:13:23,725.725 INFO    ] Checking for camera pi updates...
[2026-06-19 01:13:23,759.759 INFO    ] 200
[2026-06-19 01:13:23,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:23,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:13:23,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:13:23,850.850 INFO    ] No camera update needed
[2026-06-19 01:13:23,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:13:23,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:13:23,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:13:23,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:13:25,906.906 INFO    ] ================================================
[2026-06-19 01:13:25,921.921 INFO    ] Launching Daemon at Fri Jun 19 01:13:25 IST 2026
[2026-06-19 01:13:25,932.932 INFO    ] ================================================
[2026-06-19 01:13:26,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:13:26
[2026-06-19 01:13:27,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:13:27,355.355 INFO    ] Initializing speech engine...
[2026-06-19 01:13:27,364.364 INFO    ] 2026-06-19 01:13:27
[2026-06-19 01:13:27,609.609 INFO    ] 2026-06-19 01:13:27
[2026-06-19 01:13:27,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:13:27,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:13:27,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:13:27,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:13:27,978.978 INFO    ] time= 19/06/2026 01:13:27
[2026-06-19 01:13:27,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:13:28,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:13:28,157.157 INFO    ] No existing commands found in stream
[2026-06-19 01:13:33,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:13:33,180.180 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 01:13:35,639.639 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:13:35,641.641 INFO    ] Checking for system updates...
[2026-06-19 01:13:35,677.677 INFO    ] 200
[2026-06-19 01:13:35,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:35,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:13:35,736.736 INFO    ] No update needed
[2026-06-19 01:13:35,738.738 INFO    ] Checking for camera pi updates...
[2026-06-19 01:13:35,771.771 INFO    ] 200
[2026-06-19 01:13:35,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:35,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:13:35,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:13:35,879.879 INFO    ] No camera update needed
[2026-06-19 01:13:35,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:13:35,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:13:35,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:13:35,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:13:37,937.937 INFO    ] ================================================
[2026-06-19 01:13:37,952.952 INFO    ] Launching Daemon at Fri Jun 19 01:13:37 IST 2026
[2026-06-19 01:13:37,962.962 INFO    ] ================================================
[2026-06-19 01:13:38,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:13:38
[2026-06-19 01:13:39,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:13:39,429.429 INFO    ] Initializing speech engine...
[2026-06-19 01:13:39,440.440 INFO    ] 2026-06-19 01:13:39
[2026-06-19 01:13:39,726.726 INFO    ] 2026-06-19 01:13:39
[2026-06-19 01:13:39,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:13:39,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:13:40,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:13:40,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:13:40,199.199 INFO    ] time= 19/06/2026 01:13:40
[2026-06-19 01:13:40,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:13:40,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:13:40,384.384 INFO    ] No existing commands found in stream
[2026-06-19 01:13:45,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:13:45,415.415 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 01:13:45,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:13:45,944.944 INFO    ] Checking for system updates...
[2026-06-19 01:13:45,980.980 INFO    ] 200
[2026-06-19 01:13:45,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:46,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:13:46,045.045 INFO    ] No update needed
[2026-06-19 01:13:46,047.047 INFO    ] Checking for camera pi updates...
[2026-06-19 01:13:46,085.085 INFO    ] 200
[2026-06-19 01:13:46,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:46,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:13:46,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:13:46,163.163 INFO    ] No camera update needed
[2026-06-19 01:13:46,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:13:46,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:13:46,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:13:46,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:13:48,223.223 INFO    ] ================================================
[2026-06-19 01:13:48,239.239 INFO    ] Launching Daemon at Fri Jun 19 01:13:48 IST 2026
[2026-06-19 01:13:48,249.249 INFO    ] ================================================
[2026-06-19 01:13:48,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:13:48
[2026-06-19 01:13:49,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:13:49,680.680 INFO    ] Initializing speech engine...
[2026-06-19 01:13:49,689.689 INFO    ] 2026-06-19 01:13:49
[2026-06-19 01:13:49,936.936 INFO    ] 2026-06-19 01:13:49
[2026-06-19 01:13:49,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:13:50,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:13:50,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:13:50,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:13:50,390.390 INFO    ] time= 19/06/2026 01:13:50
[2026-06-19 01:13:50,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:13:50,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:13:50,553.553 INFO    ] No existing commands found in stream
[2026-06-19 01:13:55,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:13:55,568.568 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 01:13:58,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:13:58,318.318 INFO    ] Checking for system updates...
[2026-06-19 01:13:58,358.358 INFO    ] 200
[2026-06-19 01:13:58,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:58,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:13:58,417.417 INFO    ] No update needed
[2026-06-19 01:13:58,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 01:13:58,453.453 INFO    ] 200
[2026-06-19 01:13:58,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:13:58,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:13:58,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:13:58,557.557 INFO    ] No camera update needed
[2026-06-19 01:13:58,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:13:58,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:13:58,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:13:58,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:14:00,613.613 INFO    ] ================================================
[2026-06-19 01:14:00,629.629 INFO    ] Launching Daemon at Fri Jun 19 01:14:00 IST 2026
[2026-06-19 01:14:00,640.640 INFO    ] ================================================
[2026-06-19 01:14:01,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:14:01
[2026-06-19 01:14:01,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:14:02,484.484 INFO    ] Initializing speech engine...
[2026-06-19 01:14:02,491.491 INFO    ] 2026-06-19 01:14:02
[2026-06-19 01:14:02,826.826 INFO    ] 2026-06-19 01:14:02
[2026-06-19 01:14:02,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:14:03,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:14:03,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:14:03,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:14:03,347.347 INFO    ] time= 19/06/2026 01:14:03
[2026-06-19 01:14:03,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:14:03,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:14:03,545.545 INFO    ] No existing commands found in stream
[2026-06-19 01:14:08,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:14:08,583.583 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 01:14:09,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:14:09,770.770 INFO    ] Checking for system updates...
[2026-06-19 01:14:09,812.812 INFO    ] 200
[2026-06-19 01:14:09,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:09,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:14:09,876.876 INFO    ] No update needed
[2026-06-19 01:14:09,878.878 INFO    ] Checking for camera pi updates...
[2026-06-19 01:14:09,915.915 INFO    ] 200
[2026-06-19 01:14:09,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:09,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:14:09,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:14:09,995.995 INFO    ] No camera update needed
[2026-06-19 01:14:09,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:14:09,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:14:10,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:14:10,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:14:12,051.051 INFO    ] ================================================
[2026-06-19 01:14:12,066.066 INFO    ] Launching Daemon at Fri Jun 19 01:14:12 IST 2026
[2026-06-19 01:14:12,076.076 INFO    ] ================================================
[2026-06-19 01:14:12,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:14:12
[2026-06-19 01:14:13,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:14:13,518.518 INFO    ] Initializing speech engine...
[2026-06-19 01:14:13,525.525 INFO    ] 2026-06-19 01:14:13
[2026-06-19 01:14:13,819.819 INFO    ] 2026-06-19 01:14:13
[2026-06-19 01:14:13,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:14:14,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:14:14,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:14:14,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:14:14,217.217 INFO    ] time= 19/06/2026 01:14:14
[2026-06-19 01:14:14,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:14:14,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:14:14,324.324 INFO    ] No existing commands found in stream
[2026-06-19 01:14:19,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:14:19,339.339 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 01:14:20,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:14:20,225.225 INFO    ] Checking for system updates...
[2026-06-19 01:14:20,265.265 INFO    ] 200
[2026-06-19 01:14:20,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:20,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:14:20,329.329 INFO    ] No update needed
[2026-06-19 01:14:20,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 01:14:20,365.365 INFO    ] 200
[2026-06-19 01:14:20,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:20,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:14:20,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:14:20,464.464 INFO    ] No camera update needed
[2026-06-19 01:14:20,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:14:20,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:14:20,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:14:20,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:14:22,519.519 INFO    ] ================================================
[2026-06-19 01:14:22,534.534 INFO    ] Launching Daemon at Fri Jun 19 01:14:22 IST 2026
[2026-06-19 01:14:22,544.544 INFO    ] ================================================
[2026-06-19 01:14:23,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:14:23
[2026-06-19 01:14:23,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:14:24,004.004 INFO    ] Initializing speech engine...
[2026-06-19 01:14:24,013.013 INFO    ] 2026-06-19 01:14:24
[2026-06-19 01:14:24,272.272 INFO    ] 2026-06-19 01:14:24
[2026-06-19 01:14:24,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:14:24,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:14:24,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:14:24,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:14:24,732.732 INFO    ] time= 19/06/2026 01:14:24
[2026-06-19 01:14:24,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:14:24,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:14:24,875.875 INFO    ] No existing commands found in stream
[2026-06-19 01:14:29,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:14:29,890.890 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 01:14:31,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:14:31,402.402 INFO    ] Checking for system updates...
[2026-06-19 01:14:31,439.439 INFO    ] 200
[2026-06-19 01:14:31,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:31,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:14:31,504.504 INFO    ] No update needed
[2026-06-19 01:14:31,506.506 INFO    ] Checking for camera pi updates...
[2026-06-19 01:14:31,544.544 INFO    ] 200
[2026-06-19 01:14:31,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:31,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:14:31,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:14:31,630.630 INFO    ] No camera update needed
[2026-06-19 01:14:31,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:14:31,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:14:31,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:14:31,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:14:33,687.687 INFO    ] ================================================
[2026-06-19 01:14:33,702.702 INFO    ] Launching Daemon at Fri Jun 19 01:14:33 IST 2026
[2026-06-19 01:14:33,713.713 INFO    ] ================================================
[2026-06-19 01:14:34,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:14:34
[2026-06-19 01:14:35,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:14:35,323.323 INFO    ] Initializing speech engine...
[2026-06-19 01:14:35,335.335 INFO    ] 2026-06-19 01:14:35
[2026-06-19 01:14:35,622.622 INFO    ] 2026-06-19 01:14:35
[2026-06-19 01:14:35,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:14:35,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:14:35,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:14:36,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:14:36,154.154 INFO    ] time= 19/06/2026 01:14:36
[2026-06-19 01:14:36,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:14:36,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:14:36,309.309 INFO    ] No existing commands found in stream
[2026-06-19 01:14:41,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:14:41,332.332 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 01:14:45,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:14:45,003.003 INFO    ] Checking for system updates...
[2026-06-19 01:14:45,044.044 INFO    ] 200
[2026-06-19 01:14:45,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:45,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:14:45,110.110 INFO    ] No update needed
[2026-06-19 01:14:45,112.112 INFO    ] Checking for camera pi updates...
[2026-06-19 01:14:45,150.150 INFO    ] 200
[2026-06-19 01:14:45,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:45,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:14:45,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:14:45,234.234 INFO    ] No camera update needed
[2026-06-19 01:14:45,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:14:45,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:14:45,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:14:45,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:14:47,289.289 INFO    ] ================================================
[2026-06-19 01:14:47,305.305 INFO    ] Launching Daemon at Fri Jun 19 01:14:47 IST 2026
[2026-06-19 01:14:47,315.315 INFO    ] ================================================
[2026-06-19 01:14:47,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:14:47
[2026-06-19 01:14:48,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:14:48,921.921 INFO    ] Initializing speech engine...
[2026-06-19 01:14:48,926.926 INFO    ] 2026-06-19 01:14:48
[2026-06-19 01:14:49,185.185 INFO    ] 2026-06-19 01:14:49
[2026-06-19 01:14:49,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:14:49,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:14:49,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:14:49,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:14:49,648.648 INFO    ] time= 19/06/2026 01:14:49
[2026-06-19 01:14:49,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:14:49,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:14:49,792.792 INFO    ] No existing commands found in stream
[2026-06-19 01:14:54,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:14:54,807.807 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 01:14:58,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:14:58,467.467 INFO    ] Checking for system updates...
[2026-06-19 01:14:58,503.503 INFO    ] 200
[2026-06-19 01:14:58,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:58,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:14:58,567.567 INFO    ] No update needed
[2026-06-19 01:14:58,570.570 INFO    ] Checking for camera pi updates...
[2026-06-19 01:14:58,607.607 INFO    ] 200
[2026-06-19 01:14:58,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:14:58,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:14:58,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:14:58,704.704 INFO    ] No camera update needed
[2026-06-19 01:14:58,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:14:58,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:14:58,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:14:58,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:15:00,760.760 INFO    ] ================================================
[2026-06-19 01:15:00,775.775 INFO    ] Launching Daemon at Fri Jun 19 01:15:00 IST 2026
[2026-06-19 01:15:00,785.785 INFO    ] ================================================
[2026-06-19 01:15:01,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:15:01
[2026-06-19 01:15:02,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:15:02,928.928 INFO    ] Initializing speech engine...
[2026-06-19 01:15:02,946.946 INFO    ] 2026-06-19 01:15:02
[2026-06-19 01:15:03,258.258 INFO    ] 2026-06-19 01:15:03
[2026-06-19 01:15:03,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:15:03,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:15:03,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:15:03,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:15:03,664.664 INFO    ] time= 19/06/2026 01:15:03
[2026-06-19 01:15:03,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:15:03,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:15:03,842.842 INFO    ] No existing commands found in stream
[2026-06-19 01:15:08,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:15:08,875.875 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 01:15:11,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:15:11,875.875 INFO    ] Checking for system updates...
[2026-06-19 01:15:11,917.917 INFO    ] 200
[2026-06-19 01:15:11,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:11,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:15:11,976.976 INFO    ] No update needed
[2026-06-19 01:15:11,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 01:15:12,017.017 INFO    ] 200
[2026-06-19 01:15:12,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:12,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:15:12,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:15:12,129.129 INFO    ] No camera update needed
[2026-06-19 01:15:12,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:15:12,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:15:12,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:15:12,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:15:14,187.187 INFO    ] ================================================
[2026-06-19 01:15:14,203.203 INFO    ] Launching Daemon at Fri Jun 19 01:15:14 IST 2026
[2026-06-19 01:15:14,214.214 INFO    ] ================================================
[2026-06-19 01:15:14,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:15:14
[2026-06-19 01:15:15,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:15:15,840.840 INFO    ] Initializing speech engine...
[2026-06-19 01:15:15,855.855 INFO    ] 2026-06-19 01:15:15
[2026-06-19 01:15:16,169.169 INFO    ] 2026-06-19 01:15:16
[2026-06-19 01:15:16,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:15:16,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:15:16,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:15:16,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:15:16,695.695 INFO    ] time= 19/06/2026 01:15:16
[2026-06-19 01:15:16,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:15:16,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:15:16,851.851 INFO    ] No existing commands found in stream
[2026-06-19 01:15:21,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:15:21,872.872 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 01:15:22,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:15:22,693.693 INFO    ] Checking for system updates...
[2026-06-19 01:15:22,735.735 INFO    ] 200
[2026-06-19 01:15:22,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:22,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:15:22,806.806 INFO    ] No update needed
[2026-06-19 01:15:22,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 01:15:22,848.848 INFO    ] 200
[2026-06-19 01:15:22,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:22,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:15:23,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:15:23,054.054 INFO    ] No camera update needed
[2026-06-19 01:15:23,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:15:23,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:15:23,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:15:23,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:15:25,115.115 INFO    ] ================================================
[2026-06-19 01:15:25,132.132 INFO    ] Launching Daemon at Fri Jun 19 01:15:25 IST 2026
[2026-06-19 01:15:25,143.143 INFO    ] ================================================
[2026-06-19 01:15:25,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:15:25
[2026-06-19 01:15:26,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:15:26,543.543 INFO    ] Initializing speech engine...
[2026-06-19 01:15:26,552.552 INFO    ] 2026-06-19 01:15:26
[2026-06-19 01:15:26,832.832 INFO    ] 2026-06-19 01:15:26
[2026-06-19 01:15:26,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:15:27,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:15:27,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:15:27,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:15:27,214.214 INFO    ] time= 19/06/2026 01:15:27
[2026-06-19 01:15:27,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:15:27,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:15:27,364.364 INFO    ] No existing commands found in stream
[2026-06-19 01:15:32,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:15:32,392.392 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 01:15:36,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:15:36,172.172 INFO    ] Checking for system updates...
[2026-06-19 01:15:36,209.209 INFO    ] 200
[2026-06-19 01:15:36,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:36,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:15:36,275.275 INFO    ] No update needed
[2026-06-19 01:15:36,279.279 INFO    ] Checking for camera pi updates...
[2026-06-19 01:15:36,317.317 INFO    ] 200
[2026-06-19 01:15:36,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:36,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:15:36,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:15:36,425.425 INFO    ] No camera update needed
[2026-06-19 01:15:36,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:15:36,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:15:36,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:15:36,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:15:38,485.485 INFO    ] ================================================
[2026-06-19 01:15:38,500.500 INFO    ] Launching Daemon at Fri Jun 19 01:15:38 IST 2026
[2026-06-19 01:15:38,511.511 INFO    ] ================================================
[2026-06-19 01:15:39,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:15:39
[2026-06-19 01:15:39,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:15:39,913.913 INFO    ] Initializing speech engine...
[2026-06-19 01:15:39,928.928 INFO    ] 2026-06-19 01:15:39
[2026-06-19 01:15:40,194.194 INFO    ] 2026-06-19 01:15:40
[2026-06-19 01:15:40,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:15:40,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:15:40,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:15:40,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:15:40,678.678 INFO    ] time= 19/06/2026 01:15:40
[2026-06-19 01:15:40,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:15:40,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:15:40,816.816 INFO    ] No existing commands found in stream
[2026-06-19 01:15:45,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:15:45,830.830 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 01:15:47,874.874 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:15:47,877.877 INFO    ] Checking for system updates...
[2026-06-19 01:15:47,916.916 INFO    ] 200
[2026-06-19 01:15:47,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:47,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:15:47,973.973 INFO    ] No update needed
[2026-06-19 01:15:47,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 01:15:48,009.009 INFO    ] 200
[2026-06-19 01:15:48,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:48,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:15:48,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:15:48,090.090 INFO    ] No camera update needed
[2026-06-19 01:15:48,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:15:48,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:15:48,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:15:48,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:15:50,146.146 INFO    ] ================================================
[2026-06-19 01:15:50,162.162 INFO    ] Launching Daemon at Fri Jun 19 01:15:50 IST 2026
[2026-06-19 01:15:50,173.173 INFO    ] ================================================
[2026-06-19 01:15:50,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:15:50
[2026-06-19 01:15:51,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:15:51,621.621 INFO    ] Initializing speech engine...
[2026-06-19 01:15:51,631.631 INFO    ] 2026-06-19 01:15:51
[2026-06-19 01:15:51,876.876 INFO    ] 2026-06-19 01:15:51
[2026-06-19 01:15:51,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:15:52,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:15:52,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:15:52,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:15:52,238.238 INFO    ] time= 19/06/2026 01:15:52
[2026-06-19 01:15:52,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:15:52,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:15:52,335.335 INFO    ] No existing commands found in stream
[2026-06-19 01:15:57,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:15:57,350.350 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 01:15:59,409.409 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:15:59,412.412 INFO    ] Checking for system updates...
[2026-06-19 01:15:59,452.452 INFO    ] 200
[2026-06-19 01:15:59,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:59,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:15:59,518.518 INFO    ] No update needed
[2026-06-19 01:15:59,520.520 INFO    ] Checking for camera pi updates...
[2026-06-19 01:15:59,554.554 INFO    ] 200
[2026-06-19 01:15:59,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:15:59,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:15:59,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:15:59,656.656 INFO    ] No camera update needed
[2026-06-19 01:15:59,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:15:59,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:15:59,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:15:59,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:16:01,724.724 INFO    ] ================================================
[2026-06-19 01:16:01,759.759 INFO    ] Launching Daemon at Fri Jun 19 01:16:01 IST 2026
[2026-06-19 01:16:01,790.790 INFO    ] ================================================
[2026-06-19 01:16:02,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:16:02
[2026-06-19 01:16:03,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:16:03,447.447 INFO    ] Initializing speech engine...
[2026-06-19 01:16:03,455.455 INFO    ] 2026-06-19 01:16:03
[2026-06-19 01:16:03,727.727 INFO    ] 2026-06-19 01:16:03
[2026-06-19 01:16:03,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:16:03,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:16:03,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:16:04,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:16:04,110.110 INFO    ] time= 19/06/2026 01:16:04
[2026-06-19 01:16:04,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:16:04,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:16:04,194.194 INFO    ] No existing commands found in stream
[2026-06-19 01:16:09,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:16:09,209.209 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 01:16:09,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:16:09,946.946 INFO    ] Checking for system updates...
[2026-06-19 01:16:09,982.982 INFO    ] 200
[2026-06-19 01:16:09,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:10,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:16:10,041.041 INFO    ] No update needed
[2026-06-19 01:16:10,043.043 INFO    ] Checking for camera pi updates...
[2026-06-19 01:16:10,078.078 INFO    ] 200
[2026-06-19 01:16:10,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:10,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:16:10,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:16:10,175.175 INFO    ] No camera update needed
[2026-06-19 01:16:10,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:16:10,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:16:10,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:16:10,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:16:12,230.230 INFO    ] ================================================
[2026-06-19 01:16:12,246.246 INFO    ] Launching Daemon at Fri Jun 19 01:16:12 IST 2026
[2026-06-19 01:16:12,257.257 INFO    ] ================================================
[2026-06-19 01:16:12,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:16:12
[2026-06-19 01:16:13,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:16:13,680.680 INFO    ] Initializing speech engine...
[2026-06-19 01:16:13,694.694 INFO    ] 2026-06-19 01:16:13
[2026-06-19 01:16:13,980.980 INFO    ] 2026-06-19 01:16:13
[2026-06-19 01:16:14,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:16:14,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:16:14,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:16:14,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:16:14,350.350 INFO    ] time= 19/06/2026 01:16:14
[2026-06-19 01:16:14,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:16:14,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:16:14,419.419 INFO    ] No existing commands found in stream
[2026-06-19 01:16:19,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:16:19,447.447 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 01:16:20,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:16:20,863.863 INFO    ] Checking for system updates...
[2026-06-19 01:16:20,899.899 INFO    ] 200
[2026-06-19 01:16:20,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:20,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:16:20,957.957 INFO    ] No update needed
[2026-06-19 01:16:20,960.960 INFO    ] Checking for camera pi updates...
[2026-06-19 01:16:20,997.997 INFO    ] 200
[2026-06-19 01:16:21,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:21,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:16:21,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:16:21,092.092 INFO    ] No camera update needed
[2026-06-19 01:16:21,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:16:21,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:16:21,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:16:21,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:16:23,149.149 INFO    ] ================================================
[2026-06-19 01:16:23,165.165 INFO    ] Launching Daemon at Fri Jun 19 01:16:23 IST 2026
[2026-06-19 01:16:23,176.176 INFO    ] ================================================
[2026-06-19 01:16:23,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:16:23
[2026-06-19 01:16:24,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:16:24,610.610 INFO    ] Initializing speech engine...
[2026-06-19 01:16:24,623.623 INFO    ] 2026-06-19 01:16:24
[2026-06-19 01:16:24,911.911 INFO    ] 2026-06-19 01:16:24
[2026-06-19 01:16:24,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:16:25,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:16:25,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:16:25,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:16:25,298.298 INFO    ] time= 19/06/2026 01:16:25
[2026-06-19 01:16:25,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:16:25,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:16:25,424.424 INFO    ] No existing commands found in stream
[2026-06-19 01:16:30,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:16:30,438.438 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 01:16:33,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:16:33,209.209 INFO    ] Checking for system updates...
[2026-06-19 01:16:33,249.249 INFO    ] 200
[2026-06-19 01:16:33,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:33,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:16:33,307.307 INFO    ] No update needed
[2026-06-19 01:16:33,309.309 INFO    ] Checking for camera pi updates...
[2026-06-19 01:16:33,348.348 INFO    ] 200
[2026-06-19 01:16:33,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:33,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:16:33,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:16:33,446.446 INFO    ] No camera update needed
[2026-06-19 01:16:33,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:16:33,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:16:33,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:16:33,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:16:35,504.504 INFO    ] ================================================
[2026-06-19 01:16:35,519.519 INFO    ] Launching Daemon at Fri Jun 19 01:16:35 IST 2026
[2026-06-19 01:16:35,531.531 INFO    ] ================================================
[2026-06-19 01:16:36,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:16:36
[2026-06-19 01:16:36,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:16:36,945.945 INFO    ] Initializing speech engine...
[2026-06-19 01:16:36,952.952 INFO    ] 2026-06-19 01:16:36
[2026-06-19 01:16:37,253.253 INFO    ] 2026-06-19 01:16:37
[2026-06-19 01:16:37,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:16:37,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:16:37,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:16:37,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:16:37,607.607 INFO    ] time= 19/06/2026 01:16:37
[2026-06-19 01:16:37,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:16:37,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:16:37,688.688 INFO    ] No existing commands found in stream
[2026-06-19 01:16:42,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:16:42,701.701 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 01:16:47,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:16:47,044.044 INFO    ] Checking for system updates...
[2026-06-19 01:16:47,080.080 INFO    ] 200
[2026-06-19 01:16:47,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:47,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:16:47,141.141 INFO    ] No update needed
[2026-06-19 01:16:47,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 01:16:47,178.178 INFO    ] 200
[2026-06-19 01:16:47,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:47,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:16:47,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:16:47,260.260 INFO    ] No camera update needed
[2026-06-19 01:16:47,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:16:47,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:16:47,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:16:47,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:16:49,318.318 INFO    ] ================================================
[2026-06-19 01:16:49,333.333 INFO    ] Launching Daemon at Fri Jun 19 01:16:49 IST 2026
[2026-06-19 01:16:49,344.344 INFO    ] ================================================
[2026-06-19 01:16:49,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:16:49
[2026-06-19 01:16:50,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:16:50,778.778 INFO    ] Initializing speech engine...
[2026-06-19 01:16:50,802.802 INFO    ] 2026-06-19 01:16:50
[2026-06-19 01:16:51,065.065 INFO    ] 2026-06-19 01:16:51
[2026-06-19 01:16:51,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:16:51,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:16:51,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:16:51,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:16:51,423.423 INFO    ] time= 19/06/2026 01:16:51
[2026-06-19 01:16:51,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:16:51,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:16:51,523.523 INFO    ] No existing commands found in stream
[2026-06-19 01:16:56,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:16:56,539.539 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 01:16:58,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:16:58,448.448 INFO    ] Checking for system updates...
[2026-06-19 01:16:58,489.489 INFO    ] 200
[2026-06-19 01:16:58,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:58,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:16:58,547.547 INFO    ] No update needed
[2026-06-19 01:16:58,549.549 INFO    ] Checking for camera pi updates...
[2026-06-19 01:16:58,587.587 INFO    ] 200
[2026-06-19 01:16:58,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:16:58,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:16:58,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:16:58,688.688 INFO    ] No camera update needed
[2026-06-19 01:16:58,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:16:58,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:16:58,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:16:58,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:17:00,743.743 INFO    ] ================================================
[2026-06-19 01:17:00,759.759 INFO    ] Launching Daemon at Fri Jun 19 01:17:00 IST 2026
[2026-06-19 01:17:00,770.770 INFO    ] ================================================
[2026-06-19 01:17:01,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:17:01
[2026-06-19 01:17:02,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:17:02,752.752 INFO    ] Initializing speech engine...
[2026-06-19 01:17:02,761.761 INFO    ] 2026-06-19 01:17:02
[2026-06-19 01:17:03,058.058 INFO    ] 2026-06-19 01:17:03
[2026-06-19 01:17:03,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:17:03,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:17:03,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:17:03,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:17:03,577.577 INFO    ] time= 19/06/2026 01:17:03
[2026-06-19 01:17:03,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:17:03,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:17:03,793.793 INFO    ] No existing commands found in stream
[2026-06-19 01:17:08,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:17:08,822.822 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 01:17:09,526.526 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:17:09,528.528 INFO    ] Checking for system updates...
[2026-06-19 01:17:09,565.565 INFO    ] 200
[2026-06-19 01:17:09,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:09,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:17:09,631.631 INFO    ] No update needed
[2026-06-19 01:17:09,633.633 INFO    ] Checking for camera pi updates...
[2026-06-19 01:17:09,667.667 INFO    ] 200
[2026-06-19 01:17:09,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:09,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:17:09,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:17:09,762.762 INFO    ] No camera update needed
[2026-06-19 01:17:09,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:17:09,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:17:09,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:17:09,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:17:11,818.818 INFO    ] ================================================
[2026-06-19 01:17:11,834.834 INFO    ] Launching Daemon at Fri Jun 19 01:17:11 IST 2026
[2026-06-19 01:17:11,846.846 INFO    ] ================================================
[2026-06-19 01:17:12,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:17:12
[2026-06-19 01:17:13,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:17:13,341.341 INFO    ] Initializing speech engine...
[2026-06-19 01:17:13,349.349 INFO    ] 2026-06-19 01:17:13
[2026-06-19 01:17:13,644.644 INFO    ] 2026-06-19 01:17:13
[2026-06-19 01:17:13,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:17:13,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:17:13,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:17:14,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:17:14,210.210 INFO    ] time= 19/06/2026 01:17:14
[2026-06-19 01:17:14,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:17:14,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:17:14,349.349 INFO    ] No existing commands found in stream
[2026-06-19 01:17:19,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:17:19,380.380 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 01:17:21,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:17:21,769.769 INFO    ] Checking for system updates...
[2026-06-19 01:17:21,807.807 INFO    ] 200
[2026-06-19 01:17:21,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:21,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:17:21,868.868 INFO    ] No update needed
[2026-06-19 01:17:21,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 01:17:21,906.906 INFO    ] 200
[2026-06-19 01:17:21,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:21,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:17:22,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:17:22,009.009 INFO    ] No camera update needed
[2026-06-19 01:17:22,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:17:22,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:17:22,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:17:22,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:17:24,069.069 INFO    ] ================================================
[2026-06-19 01:17:24,085.085 INFO    ] Launching Daemon at Fri Jun 19 01:17:24 IST 2026
[2026-06-19 01:17:24,097.097 INFO    ] ================================================
[2026-06-19 01:17:24,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:17:24
[2026-06-19 01:17:25,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:17:25,530.530 INFO    ] Initializing speech engine...
[2026-06-19 01:17:25,543.543 INFO    ] 2026-06-19 01:17:25
[2026-06-19 01:17:25,832.832 INFO    ] 2026-06-19 01:17:25
[2026-06-19 01:17:25,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:17:26,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:17:26,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:17:26,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:17:26,340.340 INFO    ] time= 19/06/2026 01:17:26
[2026-06-19 01:17:26,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:17:26,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:17:26,498.498 INFO    ] No existing commands found in stream
[2026-06-19 01:17:31,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:17:31,520.520 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 01:17:33,510.510 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:17:33,513.513 INFO    ] Checking for system updates...
[2026-06-19 01:17:33,555.555 INFO    ] 200
[2026-06-19 01:17:33,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:33,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:17:33,628.628 INFO    ] No update needed
[2026-06-19 01:17:33,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 01:17:33,673.673 INFO    ] 200
[2026-06-19 01:17:33,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:33,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:17:33,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:17:33,771.771 INFO    ] No camera update needed
[2026-06-19 01:17:33,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:17:33,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:17:33,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:17:33,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:17:35,833.833 INFO    ] ================================================
[2026-06-19 01:17:35,849.849 INFO    ] Launching Daemon at Fri Jun 19 01:17:35 IST 2026
[2026-06-19 01:17:35,864.864 INFO    ] ================================================
[2026-06-19 01:17:36,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:17:36
[2026-06-19 01:17:37,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:17:37,330.330 INFO    ] Initializing speech engine...
[2026-06-19 01:17:37,338.338 INFO    ] 2026-06-19 01:17:37
[2026-06-19 01:17:37,613.613 INFO    ] 2026-06-19 01:17:37
[2026-06-19 01:17:37,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:17:37,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:17:37,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:17:37,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:17:37,997.997 INFO    ] time= 19/06/2026 01:17:37
[2026-06-19 01:17:38,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:17:38,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:17:38,166.166 INFO    ] No existing commands found in stream
[2026-06-19 01:17:43,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:17:43,200.200 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 01:17:46,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:17:46,162.162 INFO    ] Checking for system updates...
[2026-06-19 01:17:46,198.198 INFO    ] 200
[2026-06-19 01:17:46,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:46,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:17:46,255.255 INFO    ] No update needed
[2026-06-19 01:17:46,258.258 INFO    ] Checking for camera pi updates...
[2026-06-19 01:17:46,293.293 INFO    ] 200
[2026-06-19 01:17:46,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:46,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:17:46,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:17:46,377.377 INFO    ] No camera update needed
[2026-06-19 01:17:46,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:17:46,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:17:46,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:17:46,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:17:48,433.433 INFO    ] ================================================
[2026-06-19 01:17:48,449.449 INFO    ] Launching Daemon at Fri Jun 19 01:17:48 IST 2026
[2026-06-19 01:17:48,461.461 INFO    ] ================================================
[2026-06-19 01:17:49,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:17:49
[2026-06-19 01:17:49,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:17:49,886.886 INFO    ] Initializing speech engine...
[2026-06-19 01:17:49,895.895 INFO    ] 2026-06-19 01:17:49
[2026-06-19 01:17:50,152.152 INFO    ] 2026-06-19 01:17:50
[2026-06-19 01:17:50,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:17:50,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:17:50,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:17:50,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:17:50,645.645 INFO    ] time= 19/06/2026 01:17:50
[2026-06-19 01:17:50,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:17:50,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:17:50,830.830 INFO    ] No existing commands found in stream
[2026-06-19 01:17:55,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:17:55,860.860 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 01:17:56,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:17:56,418.418 INFO    ] Checking for system updates...
[2026-06-19 01:17:56,455.455 INFO    ] 200
[2026-06-19 01:17:56,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:56,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:17:56,522.522 INFO    ] No update needed
[2026-06-19 01:17:56,525.525 INFO    ] Checking for camera pi updates...
[2026-06-19 01:17:56,564.564 INFO    ] 200
[2026-06-19 01:17:56,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:17:56,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:17:56,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:17:56,664.664 INFO    ] No camera update needed
[2026-06-19 01:17:56,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:17:56,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:17:56,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:17:56,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:17:58,726.726 INFO    ] ================================================
[2026-06-19 01:17:58,744.744 INFO    ] Launching Daemon at Fri Jun 19 01:17:58 IST 2026
[2026-06-19 01:17:58,756.756 INFO    ] ================================================
[2026-06-19 01:17:59,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:17:59
[2026-06-19 01:17:59,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:18:00,188.188 INFO    ] Initializing speech engine...
[2026-06-19 01:18:00,207.207 INFO    ] 2026-06-19 01:18:00
[2026-06-19 01:18:00,459.459 INFO    ] 2026-06-19 01:18:00
[2026-06-19 01:18:00,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:18:00,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:18:00,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:18:00,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:18:00,812.812 INFO    ] time= 19/06/2026 01:18:00
[2026-06-19 01:18:00,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:18:00,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:18:00,911.911 INFO    ] No existing commands found in stream
[2026-06-19 01:18:05,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:18:05,944.944 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 01:18:09,202.202 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:18:09,205.205 INFO    ] Checking for system updates...
[2026-06-19 01:18:09,245.245 INFO    ] 200
[2026-06-19 01:18:09,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:09,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:18:09,303.303 INFO    ] No update needed
[2026-06-19 01:18:09,309.309 INFO    ] Checking for camera pi updates...
[2026-06-19 01:18:09,344.344 INFO    ] 200
[2026-06-19 01:18:09,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:09,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:18:09,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:18:09,434.434 INFO    ] No camera update needed
[2026-06-19 01:18:09,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:18:09,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:18:09,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:18:09,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:18:11,492.492 INFO    ] ================================================
[2026-06-19 01:18:11,508.508 INFO    ] Launching Daemon at Fri Jun 19 01:18:11 IST 2026
[2026-06-19 01:18:11,519.519 INFO    ] ================================================
[2026-06-19 01:18:12,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:18:12
[2026-06-19 01:18:12,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:18:12,978.978 INFO    ] Initializing speech engine...
[2026-06-19 01:18:12,985.985 INFO    ] 2026-06-19 01:18:12
[2026-06-19 01:18:13,250.250 INFO    ] 2026-06-19 01:18:13
[2026-06-19 01:18:13,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:18:13,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:18:13,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:18:13,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:18:13,719.719 INFO    ] time= 19/06/2026 01:18:13
[2026-06-19 01:18:13,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:18:13,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:18:13,863.863 INFO    ] No existing commands found in stream
[2026-06-19 01:18:18,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:18:18,879.879 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 01:18:22,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:18:22,528.528 INFO    ] Checking for system updates...
[2026-06-19 01:18:22,564.564 INFO    ] 200
[2026-06-19 01:18:22,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:22,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:18:22,623.623 INFO    ] No update needed
[2026-06-19 01:18:22,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 01:18:22,659.659 INFO    ] 200
[2026-06-19 01:18:22,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:22,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:18:22,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:18:22,753.753 INFO    ] No camera update needed
[2026-06-19 01:18:22,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:18:22,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:18:22,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:18:22,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:18:24,810.810 INFO    ] ================================================
[2026-06-19 01:18:24,826.826 INFO    ] Launching Daemon at Fri Jun 19 01:18:24 IST 2026
[2026-06-19 01:18:24,837.837 INFO    ] ================================================
[2026-06-19 01:18:25,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:18:25
[2026-06-19 01:18:26,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:18:26,488.488 INFO    ] Initializing speech engine...
[2026-06-19 01:18:26,500.500 INFO    ] 2026-06-19 01:18:26
[2026-06-19 01:18:26,810.810 INFO    ] 2026-06-19 01:18:26
[2026-06-19 01:18:26,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:18:27,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:18:27,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:18:27,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:18:27,243.243 INFO    ] time= 19/06/2026 01:18:27
[2026-06-19 01:18:27,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:18:27,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:18:27,461.461 INFO    ] No existing commands found in stream
[2026-06-19 01:18:32,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:18:32,491.491 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 01:18:33,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:18:33,467.467 INFO    ] Checking for system updates...
[2026-06-19 01:18:33,504.504 INFO    ] 200
[2026-06-19 01:18:33,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:33,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:18:33,563.563 INFO    ] No update needed
[2026-06-19 01:18:33,566.566 INFO    ] Checking for camera pi updates...
[2026-06-19 01:18:33,601.601 INFO    ] 200
[2026-06-19 01:18:33,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:33,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:18:33,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:18:33,698.698 INFO    ] No camera update needed
[2026-06-19 01:18:33,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:18:33,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:18:33,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:18:33,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:18:35,756.756 INFO    ] ================================================
[2026-06-19 01:18:35,772.772 INFO    ] Launching Daemon at Fri Jun 19 01:18:35 IST 2026
[2026-06-19 01:18:35,782.782 INFO    ] ================================================
[2026-06-19 01:18:36,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:18:36
[2026-06-19 01:18:36,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:18:37,193.193 INFO    ] Initializing speech engine...
[2026-06-19 01:18:37,208.208 INFO    ] 2026-06-19 01:18:37
[2026-06-19 01:18:37,472.472 INFO    ] 2026-06-19 01:18:37
[2026-06-19 01:18:37,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:18:37,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:18:37,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:18:37,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:18:37,847.847 INFO    ] time= 19/06/2026 01:18:37
[2026-06-19 01:18:37,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:18:37,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:18:38,021.021 INFO    ] No existing commands found in stream
[2026-06-19 01:18:43,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:18:43,049.049 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 01:18:46,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:18:46,522.522 INFO    ] Checking for system updates...
[2026-06-19 01:18:46,565.565 INFO    ] 200
[2026-06-19 01:18:46,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:46,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:18:46,646.646 INFO    ] No update needed
[2026-06-19 01:18:46,649.649 INFO    ] Checking for camera pi updates...
[2026-06-19 01:18:46,685.685 INFO    ] 200
[2026-06-19 01:18:46,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:46,728.728 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:18:46,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:18:46,769.769 INFO    ] No camera update needed
[2026-06-19 01:18:46,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:18:46,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:18:46,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:18:46,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:18:48,827.827 INFO    ] ================================================
[2026-06-19 01:18:48,842.842 INFO    ] Launching Daemon at Fri Jun 19 01:18:48 IST 2026
[2026-06-19 01:18:48,853.853 INFO    ] ================================================
[2026-06-19 01:18:49,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:18:49
[2026-06-19 01:18:50,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:18:50,267.267 INFO    ] Initializing speech engine...
[2026-06-19 01:18:50,275.275 INFO    ] 2026-06-19 01:18:50
[2026-06-19 01:18:50,572.572 INFO    ] 2026-06-19 01:18:50
[2026-06-19 01:18:50,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:18:50,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:18:50,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:18:50,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:18:50,931.931 INFO    ] time= 19/06/2026 01:18:50
[2026-06-19 01:18:50,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:18:50,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:18:51,013.013 INFO    ] No existing commands found in stream
[2026-06-19 01:18:56,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:18:56,028.028 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 01:18:58,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:18:58,970.970 INFO    ] Checking for system updates...
[2026-06-19 01:18:59,006.006 INFO    ] 200
[2026-06-19 01:18:59,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:59,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:18:59,065.065 INFO    ] No update needed
[2026-06-19 01:18:59,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 01:18:59,106.106 INFO    ] 200
[2026-06-19 01:18:59,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:18:59,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:18:59,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:18:59,197.197 INFO    ] No camera update needed
[2026-06-19 01:18:59,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:18:59,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:18:59,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:18:59,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:19:01,254.254 INFO    ] ================================================
[2026-06-19 01:19:01,269.269 INFO    ] Launching Daemon at Fri Jun 19 01:19:01 IST 2026
[2026-06-19 01:19:01,281.281 INFO    ] ================================================
[2026-06-19 01:19:02,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:19:01
[2026-06-19 01:19:02,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:19:03,206.206 INFO    ] Initializing speech engine...
[2026-06-19 01:19:03,219.219 INFO    ] 2026-06-19 01:19:03
[2026-06-19 01:19:03,535.535 INFO    ] 2026-06-19 01:19:03
[2026-06-19 01:19:03,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:19:03,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:19:03,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:19:03,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:19:04,022.022 INFO    ] time= 19/06/2026 01:19:03
[2026-06-19 01:19:04,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:19:04,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:19:04,172.172 INFO    ] No existing commands found in stream
[2026-06-19 01:19:09,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:19:09,189.189 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 01:19:11,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:19:11,887.887 INFO    ] Checking for system updates...
[2026-06-19 01:19:11,930.930 INFO    ] 200
[2026-06-19 01:19:11,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:19:11,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:19:11,990.990 INFO    ] No update needed
[2026-06-19 01:19:11,993.993 INFO    ] Checking for camera pi updates...
[2026-06-19 01:19:12,029.029 INFO    ] 200
[2026-06-19 01:19:12,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:19:12,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:19:12,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:19:12,125.125 INFO    ] No camera update needed
[2026-06-19 01:19:12,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:19:12,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:19:12,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:19:12,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:19:14,187.187 INFO    ] ================================================
[2026-06-19 01:19:14,202.202 INFO    ] Launching Daemon at Fri Jun 19 01:19:14 IST 2026
[2026-06-19 01:19:14,214.214 INFO    ] ================================================
[2026-06-19 01:19:14,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:19:14
[2026-06-19 01:19:15,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:19:15,908.908 INFO    ] Initializing speech engine...
[2026-06-19 01:19:15,920.920 INFO    ] 2026-06-19 01:19:15
[2026-06-19 01:19:16,231.231 INFO    ] 2026-06-19 01:19:16
[2026-06-19 01:19:16,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:19:16,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:19:16,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:19:16,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:19:16,740.740 INFO    ] time= 19/06/2026 01:19:16
[2026-06-19 01:19:16,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:19:16,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:19:16,899.899 INFO    ] No existing commands found in stream
[2026-06-19 01:19:21,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:19:21,927.927 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 01:19:24,838.838 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:19:24,841.841 INFO    ] Checking for system updates...
[2026-06-19 01:19:24,878.878 INFO    ] 200
[2026-06-19 01:19:24,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:19:24,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:19:24,938.938 INFO    ] No update needed
[2026-06-19 01:19:24,940.940 INFO    ] Checking for camera pi updates...
[2026-06-19 01:19:24,977.977 INFO    ] 200
[2026-06-19 01:19:24,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:19:25,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:19:25,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:19:25,080.080 INFO    ] No camera update needed
[2026-06-19 01:19:25,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:19:25,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:19:25,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:19:25,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:19:27,140.140 INFO    ] ================================================
[2026-06-19 01:19:27,157.157 INFO    ] Launching Daemon at Fri Jun 19 01:19:27 IST 2026
[2026-06-19 01:19:27,167.167 INFO    ] ================================================
[2026-06-19 01:19:27,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:19:27
[2026-06-19 01:19:28,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:19:28,609.609 INFO    ] Initializing speech engine...
[2026-06-19 01:19:28,614.614 INFO    ] 2026-06-19 01:19:28
[2026-06-19 01:19:28,876.876 INFO    ] 2026-06-19 01:19:28
[2026-06-19 01:19:28,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:19:29,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:19:29,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:19:29,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:19:29,241.241 INFO    ] time= 19/06/2026 01:19:29
[2026-06-19 01:19:29,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:19:29,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:19:29,362.362 INFO    ] No existing commands found in stream
[2026-06-19 01:19:34,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:19:34,384.384 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 01:19:38,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:19:38,071.071 INFO    ] Checking for system updates...
[2026-06-19 01:19:38,112.112 INFO    ] 200
[2026-06-19 01:19:38,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:19:38,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:19:38,189.189 INFO    ] No update needed
[2026-06-19 01:19:38,192.192 INFO    ] Checking for camera pi updates...
[2026-06-19 01:19:38,226.226 INFO    ] 200
[2026-06-19 01:19:38,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:19:38,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:19:38,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:19:38,412.412 INFO    ] No camera update needed
[2026-06-19 01:19:38,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:19:38,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:19:38,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:19:38,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:19:40,469.469 INFO    ] ================================================
[2026-06-19 01:19:40,485.485 INFO    ] Launching Daemon at Fri Jun 19 01:19:40 IST 2026
[2026-06-19 01:19:40,496.496 INFO    ] ================================================
[2026-06-19 01:19:41,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:19:41
[2026-06-19 01:19:41,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:19:42,135.135 INFO    ] Initializing speech engine...
[2026-06-19 01:19:42,145.145 INFO    ] 2026-06-19 01:19:42
[2026-06-19 01:19:42,433.433 INFO    ] 2026-06-19 01:19:42
[2026-06-19 01:19:42,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:19:42,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:19:42,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:19:42,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:19:42,969.969 INFO    ] time= 19/06/2026 01:19:42
[2026-06-19 01:19:42,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:19:42,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:19:43,126.126 INFO    ] No existing commands found in stream
[2026-06-19 01:19:48,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:19:48,148.148 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 01:19:50,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:19:50,852.852 INFO    ] Checking for system updates...
[2026-06-19 01:19:50,891.891 INFO    ] 200
[2026-06-19 01:19:50,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:19:50,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:19:50,949.949 INFO    ] No update needed
[2026-06-19 01:19:50,952.952 INFO    ] Checking for camera pi updates...
[2026-06-19 01:19:50,986.986 INFO    ] 200
[2026-06-19 01:19:50,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:19:51,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:19:51,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:19:51,081.081 INFO    ] No camera update needed
[2026-06-19 01:19:51,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:19:51,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:19:51,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:19:51,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:19:53,138.138 INFO    ] ================================================
[2026-06-19 01:19:53,153.153 INFO    ] Launching Daemon at Fri Jun 19 01:19:53 IST 2026
[2026-06-19 01:19:53,164.164 INFO    ] ================================================
[2026-06-19 01:19:53,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:19:53
[2026-06-19 01:19:54,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:19:54,615.615 INFO    ] Initializing speech engine...
[2026-06-19 01:19:54,635.635 INFO    ] 2026-06-19 01:19:54
[2026-06-19 01:19:54,889.889 INFO    ] 2026-06-19 01:19:54
[2026-06-19 01:19:54,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:19:55,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:19:55,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:19:55,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:19:55,375.375 INFO    ] time= 19/06/2026 01:19:55
[2026-06-19 01:19:55,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:19:55,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:19:55,505.505 INFO    ] No existing commands found in stream
[2026-06-19 01:20:00,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:20:00,521.521 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 01:20:01,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:20:01,114.114 INFO    ] Checking for system updates...
[2026-06-19 01:20:01,154.154 INFO    ] 200
[2026-06-19 01:20:01,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:01,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:20:01,212.212 INFO    ] No update needed
[2026-06-19 01:20:01,214.214 INFO    ] Checking for camera pi updates...
[2026-06-19 01:20:01,248.248 INFO    ] 200
[2026-06-19 01:20:01,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:01,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:20:01,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:20:01,350.350 INFO    ] No camera update needed
[2026-06-19 01:20:01,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:20:01,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:20:01,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:20:01,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:20:03,440.440 INFO    ] ================================================
[2026-06-19 01:20:03,474.474 INFO    ] Launching Daemon at Fri Jun 19 01:20:03 IST 2026
[2026-06-19 01:20:03,497.497 INFO    ] ================================================
[2026-06-19 01:20:04,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:20:04
[2026-06-19 01:20:04,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:20:04,976.976 INFO    ] Initializing speech engine...
[2026-06-19 01:20:04,995.995 INFO    ] 2026-06-19 01:20:04
[2026-06-19 01:20:05,256.256 INFO    ] 2026-06-19 01:20:05
[2026-06-19 01:20:05,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:20:05,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:20:05,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:20:05,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:20:05,633.633 INFO    ] time= 19/06/2026 01:20:05
[2026-06-19 01:20:05,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:20:05,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:20:05,712.712 INFO    ] No existing commands found in stream
[2026-06-19 01:20:10,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:20:10,730.730 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 01:20:13,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:20:13,881.881 INFO    ] Checking for system updates...
[2026-06-19 01:20:13,917.917 INFO    ] 200
[2026-06-19 01:20:13,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:13,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:20:13,974.974 INFO    ] No update needed
[2026-06-19 01:20:13,976.976 INFO    ] Checking for camera pi updates...
[2026-06-19 01:20:14,010.010 INFO    ] 200
[2026-06-19 01:20:14,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:14,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:20:14,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:20:14,106.106 INFO    ] No camera update needed
[2026-06-19 01:20:14,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:20:14,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:20:14,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:20:14,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:20:16,162.162 INFO    ] ================================================
[2026-06-19 01:20:16,177.177 INFO    ] Launching Daemon at Fri Jun 19 01:20:16 IST 2026
[2026-06-19 01:20:16,188.188 INFO    ] ================================================
[2026-06-19 01:20:16,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:20:16
[2026-06-19 01:20:17,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:20:17,583.583 INFO    ] Initializing speech engine...
[2026-06-19 01:20:17,598.598 INFO    ] 2026-06-19 01:20:17
[2026-06-19 01:20:17,858.858 INFO    ] 2026-06-19 01:20:17
[2026-06-19 01:20:17,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:20:18,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:20:18,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:20:18,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:20:18,305.305 INFO    ] time= 19/06/2026 01:20:18
[2026-06-19 01:20:18,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:20:18,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:20:18,479.479 INFO    ] No existing commands found in stream
[2026-06-19 01:20:23,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:20:23,494.494 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 01:20:24,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:20:24,936.936 INFO    ] Checking for system updates...
[2026-06-19 01:20:24,974.974 INFO    ] 200
[2026-06-19 01:20:24,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:25,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:20:25,033.033 INFO    ] No update needed
[2026-06-19 01:20:25,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 01:20:25,074.074 INFO    ] 200
[2026-06-19 01:20:25,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:25,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:20:25,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:20:25,164.164 INFO    ] No camera update needed
[2026-06-19 01:20:25,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:20:25,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:20:25,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:20:25,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:20:27,219.219 INFO    ] ================================================
[2026-06-19 01:20:27,235.235 INFO    ] Launching Daemon at Fri Jun 19 01:20:27 IST 2026
[2026-06-19 01:20:27,246.246 INFO    ] ================================================
[2026-06-19 01:20:27,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:20:27
[2026-06-19 01:20:28,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:20:28,813.813 INFO    ] Initializing speech engine...
[2026-06-19 01:20:28,836.836 INFO    ] 2026-06-19 01:20:28
[2026-06-19 01:20:29,090.090 INFO    ] 2026-06-19 01:20:29
[2026-06-19 01:20:29,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:20:29,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:20:29,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:20:29,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:20:29,466.466 INFO    ] time= 19/06/2026 01:20:29
[2026-06-19 01:20:29,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:20:29,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:20:29,628.628 INFO    ] No existing commands found in stream
[2026-06-19 01:20:34,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:20:34,661.661 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 01:20:36,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:20:36,999.999 INFO    ] Checking for system updates...
[2026-06-19 01:20:37,039.039 INFO    ] 200
[2026-06-19 01:20:37,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:37,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:20:37,096.096 INFO    ] No update needed
[2026-06-19 01:20:37,099.099 INFO    ] Checking for camera pi updates...
[2026-06-19 01:20:37,133.133 INFO    ] 200
[2026-06-19 01:20:37,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:37,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:20:37,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:20:37,235.235 INFO    ] No camera update needed
[2026-06-19 01:20:37,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:20:37,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:20:37,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:20:37,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:20:39,294.294 INFO    ] ================================================
[2026-06-19 01:20:39,309.309 INFO    ] Launching Daemon at Fri Jun 19 01:20:39 IST 2026
[2026-06-19 01:20:39,320.320 INFO    ] ================================================
[2026-06-19 01:20:39,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:20:39
[2026-06-19 01:20:40,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:20:40,804.804 INFO    ] Initializing speech engine...
[2026-06-19 01:20:40,815.815 INFO    ] 2026-06-19 01:20:40
[2026-06-19 01:20:41,076.076 INFO    ] 2026-06-19 01:20:41
[2026-06-19 01:20:41,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:20:41,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:20:41,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:20:41,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:20:41,525.525 INFO    ] time= 19/06/2026 01:20:41
[2026-06-19 01:20:41,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:20:41,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:20:41,684.684 INFO    ] No existing commands found in stream
[2026-06-19 01:20:46,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:20:46,699.699 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 01:20:47,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:20:47,302.302 INFO    ] Checking for system updates...
[2026-06-19 01:20:47,340.340 INFO    ] 200
[2026-06-19 01:20:47,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:47,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:20:47,398.398 INFO    ] No update needed
[2026-06-19 01:20:47,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 01:20:47,438.438 INFO    ] 200
[2026-06-19 01:20:47,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:47,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:20:47,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:20:47,520.520 INFO    ] No camera update needed
[2026-06-19 01:20:47,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:20:47,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:20:47,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:20:47,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:20:49,577.577 INFO    ] ================================================
[2026-06-19 01:20:49,594.594 INFO    ] Launching Daemon at Fri Jun 19 01:20:49 IST 2026
[2026-06-19 01:20:49,606.606 INFO    ] ================================================
[2026-06-19 01:20:50,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:20:50
[2026-06-19 01:20:51,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:20:51,324.324 INFO    ] Initializing speech engine...
[2026-06-19 01:20:51,336.336 INFO    ] 2026-06-19 01:20:51
[2026-06-19 01:20:51,610.610 INFO    ] 2026-06-19 01:20:51
[2026-06-19 01:20:51,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:20:51,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:20:51,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:20:52,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:20:52,079.079 INFO    ] time= 19/06/2026 01:20:52
[2026-06-19 01:20:52,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:20:52,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:20:52,220.220 INFO    ] No existing commands found in stream
[2026-06-19 01:20:57,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:20:57,237.237 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 01:20:59,338.338 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:20:59,341.341 INFO    ] Checking for system updates...
[2026-06-19 01:20:59,377.377 INFO    ] 200
[2026-06-19 01:20:59,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:59,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:20:59,437.437 INFO    ] No update needed
[2026-06-19 01:20:59,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 01:20:59,478.478 INFO    ] 200
[2026-06-19 01:20:59,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:20:59,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:20:59,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:20:59,576.576 INFO    ] No camera update needed
[2026-06-19 01:20:59,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:20:59,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:20:59,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:20:59,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:21:01,634.634 INFO    ] ================================================
[2026-06-19 01:21:01,651.651 INFO    ] Launching Daemon at Fri Jun 19 01:21:01 IST 2026
[2026-06-19 01:21:01,667.667 INFO    ] ================================================
[2026-06-19 01:21:02,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:21:02
[2026-06-19 01:21:02,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:21:03,254.254 INFO    ] Initializing speech engine...
[2026-06-19 01:21:03,268.268 INFO    ] 2026-06-19 01:21:03
[2026-06-19 01:21:03,546.546 INFO    ] 2026-06-19 01:21:03
[2026-06-19 01:21:03,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:21:03,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:21:03,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:21:03,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:21:03,930.930 INFO    ] time= 19/06/2026 01:21:03
[2026-06-19 01:21:03,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:21:03,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:21:04,004.004 INFO    ] No existing commands found in stream
[2026-06-19 01:21:09,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:21:09,020.020 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 01:21:09,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:21:09,587.587 INFO    ] Checking for system updates...
[2026-06-19 01:21:09,624.624 INFO    ] 200
[2026-06-19 01:21:09,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:09,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:21:09,681.681 INFO    ] No update needed
[2026-06-19 01:21:09,683.683 INFO    ] Checking for camera pi updates...
[2026-06-19 01:21:09,718.718 INFO    ] 200
[2026-06-19 01:21:09,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:09,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:21:09,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:21:09,812.812 INFO    ] No camera update needed
[2026-06-19 01:21:09,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:21:09,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:21:09,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:21:09,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:21:11,867.867 INFO    ] ================================================
[2026-06-19 01:21:11,882.882 INFO    ] Launching Daemon at Fri Jun 19 01:21:11 IST 2026
[2026-06-19 01:21:11,892.892 INFO    ] ================================================
[2026-06-19 01:21:12,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:21:12
[2026-06-19 01:21:13,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:21:13,324.324 INFO    ] Initializing speech engine...
[2026-06-19 01:21:13,333.333 INFO    ] 2026-06-19 01:21:13
[2026-06-19 01:21:13,584.584 INFO    ] 2026-06-19 01:21:13
[2026-06-19 01:21:13,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:21:13,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:21:13,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:21:13,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:21:13,941.941 INFO    ] time= 19/06/2026 01:21:13
[2026-06-19 01:21:13,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:21:13,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:21:14,038.038 INFO    ] No existing commands found in stream
[2026-06-19 01:21:19,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:21:19,053.053 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 01:21:21,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:21:21,413.413 INFO    ] Checking for system updates...
[2026-06-19 01:21:21,454.454 INFO    ] 200
[2026-06-19 01:21:21,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:21,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:21:21,520.520 INFO    ] No update needed
[2026-06-19 01:21:21,523.523 INFO    ] Checking for camera pi updates...
[2026-06-19 01:21:21,561.561 INFO    ] 200
[2026-06-19 01:21:21,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:21,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:21:21,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:21:21,653.653 INFO    ] No camera update needed
[2026-06-19 01:21:21,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:21:21,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:21:21,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:21:21,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:21:23,708.708 INFO    ] ================================================
[2026-06-19 01:21:23,723.723 INFO    ] Launching Daemon at Fri Jun 19 01:21:23 IST 2026
[2026-06-19 01:21:23,734.734 INFO    ] ================================================
[2026-06-19 01:21:24,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:21:24
[2026-06-19 01:21:24,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:21:25,153.153 INFO    ] Initializing speech engine...
[2026-06-19 01:21:25,158.158 INFO    ] 2026-06-19 01:21:25
[2026-06-19 01:21:25,404.404 INFO    ] 2026-06-19 01:21:25
[2026-06-19 01:21:25,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:21:25,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:21:25,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:21:25,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:21:25,855.855 INFO    ] time= 19/06/2026 01:21:25
[2026-06-19 01:21:25,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:21:25,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:21:26,021.021 INFO    ] No existing commands found in stream
[2026-06-19 01:21:31,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:21:31,035.035 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 01:21:34,414.414 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:21:34,417.417 INFO    ] Checking for system updates...
[2026-06-19 01:21:34,457.457 INFO    ] 200
[2026-06-19 01:21:34,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:34,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:21:34,521.521 INFO    ] No update needed
[2026-06-19 01:21:34,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 01:21:34,557.557 INFO    ] 200
[2026-06-19 01:21:34,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:34,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:21:34,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:21:34,652.652 INFO    ] No camera update needed
[2026-06-19 01:21:34,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:21:34,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:21:34,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:21:34,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:21:36,707.707 INFO    ] ================================================
[2026-06-19 01:21:36,722.722 INFO    ] Launching Daemon at Fri Jun 19 01:21:36 IST 2026
[2026-06-19 01:21:36,733.733 INFO    ] ================================================
[2026-06-19 01:21:37,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:21:37
[2026-06-19 01:21:37,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:21:38,227.227 INFO    ] Initializing speech engine...
[2026-06-19 01:21:38,236.236 INFO    ] 2026-06-19 01:21:38
[2026-06-19 01:21:38,482.482 INFO    ] 2026-06-19 01:21:38
[2026-06-19 01:21:38,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:21:38,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:21:38,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:21:38,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:21:38,919.919 INFO    ] time= 19/06/2026 01:21:38
[2026-06-19 01:21:38,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:21:39,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:21:39,097.097 INFO    ] No existing commands found in stream
[2026-06-19 01:21:44,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:21:44,111.111 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 01:21:44,534.534 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:21:44,537.537 INFO    ] Checking for system updates...
[2026-06-19 01:21:44,577.577 INFO    ] 200
[2026-06-19 01:21:44,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:44,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:21:44,641.641 INFO    ] No update needed
[2026-06-19 01:21:44,643.643 INFO    ] Checking for camera pi updates...
[2026-06-19 01:21:44,677.677 INFO    ] 200
[2026-06-19 01:21:44,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:44,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:21:44,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:21:44,855.855 INFO    ] No camera update needed
[2026-06-19 01:21:44,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:21:44,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:21:44,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:21:44,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:21:46,910.910 INFO    ] ================================================
[2026-06-19 01:21:46,924.924 INFO    ] Launching Daemon at Fri Jun 19 01:21:46 IST 2026
[2026-06-19 01:21:46,935.935 INFO    ] ================================================
[2026-06-19 01:21:47,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:21:47
[2026-06-19 01:21:48,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:21:48,377.377 INFO    ] Initializing speech engine...
[2026-06-19 01:21:48,401.401 INFO    ] 2026-06-19 01:21:48
[2026-06-19 01:21:48,671.671 INFO    ] 2026-06-19 01:21:48
[2026-06-19 01:21:48,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:21:48,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:21:48,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:21:49,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:21:49,127.127 INFO    ] time= 19/06/2026 01:21:49
[2026-06-19 01:21:49,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:21:49,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:21:49,283.283 INFO    ] No existing commands found in stream
[2026-06-19 01:21:54,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:21:54,298.298 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 01:21:56,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:21:56,461.461 INFO    ] Checking for system updates...
[2026-06-19 01:21:56,497.497 INFO    ] 200
[2026-06-19 01:21:56,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:56,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:21:56,557.557 INFO    ] No update needed
[2026-06-19 01:21:56,559.559 INFO    ] Checking for camera pi updates...
[2026-06-19 01:21:56,597.597 INFO    ] 200
[2026-06-19 01:21:56,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:21:56,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:21:56,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:21:56,692.692 INFO    ] No camera update needed
[2026-06-19 01:21:56,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:21:56,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:21:56,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:21:56,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:21:58,747.747 INFO    ] ================================================
[2026-06-19 01:21:58,763.763 INFO    ] Launching Daemon at Fri Jun 19 01:21:58 IST 2026
[2026-06-19 01:21:58,773.773 INFO    ] ================================================
[2026-06-19 01:21:59,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:21:59
[2026-06-19 01:21:59,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:22:00,278.278 INFO    ] Initializing speech engine...
[2026-06-19 01:22:00,293.293 INFO    ] 2026-06-19 01:22:00
[2026-06-19 01:22:00,567.567 INFO    ] 2026-06-19 01:22:00
[2026-06-19 01:22:00,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:22:00,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:22:00,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:22:00,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:22:00,927.927 INFO    ] time= 19/06/2026 01:22:00
[2026-06-19 01:22:00,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:22:00,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:22:01,027.027 INFO    ] No existing commands found in stream
[2026-06-19 01:22:06,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:22:06,041.041 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 01:22:07,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:22:07,712.712 INFO    ] Checking for system updates...
[2026-06-19 01:22:07,760.760 INFO    ] 200
[2026-06-19 01:22:07,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:07,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:22:07,825.825 INFO    ] No update needed
[2026-06-19 01:22:07,827.827 INFO    ] Checking for camera pi updates...
[2026-06-19 01:22:07,865.865 INFO    ] 200
[2026-06-19 01:22:07,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:07,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:22:07,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:22:07,960.960 INFO    ] No camera update needed
[2026-06-19 01:22:07,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:22:07,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:22:07,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:22:07,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:22:10,014.014 INFO    ] ================================================
[2026-06-19 01:22:10,029.029 INFO    ] Launching Daemon at Fri Jun 19 01:22:10 IST 2026
[2026-06-19 01:22:10,041.041 INFO    ] ================================================
[2026-06-19 01:22:10,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:22:10
[2026-06-19 01:22:11,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:22:11,495.495 INFO    ] Initializing speech engine...
[2026-06-19 01:22:11,504.504 INFO    ] 2026-06-19 01:22:11
[2026-06-19 01:22:11,753.753 INFO    ] 2026-06-19 01:22:11
[2026-06-19 01:22:11,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:22:12,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:22:12,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:22:12,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:22:12,230.230 INFO    ] time= 19/06/2026 01:22:12
[2026-06-19 01:22:12,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:22:12,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:22:12,391.391 INFO    ] No existing commands found in stream
[2026-06-19 01:22:17,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:22:17,430.430 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 01:22:18,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:22:18,939.939 INFO    ] Checking for system updates...
[2026-06-19 01:22:18,976.976 INFO    ] 200
[2026-06-19 01:22:18,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:19,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:22:19,042.042 INFO    ] No update needed
[2026-06-19 01:22:19,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 01:22:19,078.078 INFO    ] 200
[2026-06-19 01:22:19,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:19,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:22:19,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:22:19,177.177 INFO    ] No camera update needed
[2026-06-19 01:22:19,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:22:19,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:22:19,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:22:19,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:22:21,232.232 INFO    ] ================================================
[2026-06-19 01:22:21,248.248 INFO    ] Launching Daemon at Fri Jun 19 01:22:21 IST 2026
[2026-06-19 01:22:21,259.259 INFO    ] ================================================
[2026-06-19 01:22:21,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:22:21
[2026-06-19 01:22:22,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:22:22,685.685 INFO    ] Initializing speech engine...
[2026-06-19 01:22:22,694.694 INFO    ] 2026-06-19 01:22:22
[2026-06-19 01:22:22,955.955 INFO    ] 2026-06-19 01:22:22
[2026-06-19 01:22:22,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:22:23,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:22:23,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:22:23,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:22:23,408.408 INFO    ] time= 19/06/2026 01:22:23
[2026-06-19 01:22:23,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:22:23,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:22:23,575.575 INFO    ] No existing commands found in stream
[2026-06-19 01:22:28,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:22:28,589.589 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 01:22:32,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:22:32,774.774 INFO    ] Checking for system updates...
[2026-06-19 01:22:32,811.811 INFO    ] 200
[2026-06-19 01:22:32,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:32,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:22:32,870.870 INFO    ] No update needed
[2026-06-19 01:22:32,872.872 INFO    ] Checking for camera pi updates...
[2026-06-19 01:22:32,910.910 INFO    ] 200
[2026-06-19 01:22:32,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:32,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:22:32,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:22:32,992.992 INFO    ] No camera update needed
[2026-06-19 01:22:32,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:22:32,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:22:33,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:22:33,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:22:35,048.048 INFO    ] ================================================
[2026-06-19 01:22:35,064.064 INFO    ] Launching Daemon at Fri Jun 19 01:22:35 IST 2026
[2026-06-19 01:22:35,075.075 INFO    ] ================================================
[2026-06-19 01:22:35,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:22:35
[2026-06-19 01:22:36,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:22:36,561.561 INFO    ] Initializing speech engine...
[2026-06-19 01:22:36,575.575 INFO    ] 2026-06-19 01:22:36
[2026-06-19 01:22:36,846.846 INFO    ] 2026-06-19 01:22:36
[2026-06-19 01:22:36,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:22:37,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:22:37,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:22:37,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:22:37,217.217 INFO    ] time= 19/06/2026 01:22:37
[2026-06-19 01:22:37,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:22:37,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:22:37,385.385 INFO    ] No existing commands found in stream
[2026-06-19 01:22:42,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:22:42,419.419 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 01:22:44,775.775 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:22:44,778.778 INFO    ] Checking for system updates...
[2026-06-19 01:22:44,814.814 INFO    ] 200
[2026-06-19 01:22:44,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:44,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:22:44,873.873 INFO    ] No update needed
[2026-06-19 01:22:44,875.875 INFO    ] Checking for camera pi updates...
[2026-06-19 01:22:44,909.909 INFO    ] 200
[2026-06-19 01:22:44,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:44,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:22:44,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:22:44,992.992 INFO    ] No camera update needed
[2026-06-19 01:22:44,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:22:44,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:22:45,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:22:45,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:22:47,051.051 INFO    ] ================================================
[2026-06-19 01:22:47,067.067 INFO    ] Launching Daemon at Fri Jun 19 01:22:47 IST 2026
[2026-06-19 01:22:47,078.078 INFO    ] ================================================
[2026-06-19 01:22:47,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:22:47
[2026-06-19 01:22:48,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:22:48,595.595 INFO    ] Initializing speech engine...
[2026-06-19 01:22:48,603.603 INFO    ] 2026-06-19 01:22:48
[2026-06-19 01:22:48,863.863 INFO    ] 2026-06-19 01:22:48
[2026-06-19 01:22:48,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:22:49,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:22:49,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:22:49,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:22:49,330.330 INFO    ] time= 19/06/2026 01:22:49
[2026-06-19 01:22:49,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:22:49,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:22:49,474.474 INFO    ] No existing commands found in stream
[2026-06-19 01:22:54,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:22:54,489.489 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 01:22:55,961.961 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:22:55,964.964 INFO    ] Checking for system updates...
[2026-06-19 01:22:56,004.004 INFO    ] 200
[2026-06-19 01:22:56,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:56,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:22:56,069.069 INFO    ] No update needed
[2026-06-19 01:22:56,071.071 INFO    ] Checking for camera pi updates...
[2026-06-19 01:22:56,109.109 INFO    ] 200
[2026-06-19 01:22:56,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:22:56,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:22:56,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:22:56,198.198 INFO    ] No camera update needed
[2026-06-19 01:22:56,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:22:56,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:22:56,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:22:56,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:22:58,255.255 INFO    ] ================================================
[2026-06-19 01:22:58,270.270 INFO    ] Launching Daemon at Fri Jun 19 01:22:58 IST 2026
[2026-06-19 01:22:58,287.287 INFO    ] ================================================
[2026-06-19 01:22:58,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:22:58
[2026-06-19 01:22:59,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:22:59,745.745 INFO    ] Initializing speech engine...
[2026-06-19 01:22:59,753.753 INFO    ] 2026-06-19 01:22:59
[2026-06-19 01:23:00,053.053 INFO    ] 2026-06-19 01:23:00
[2026-06-19 01:23:00,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:23:00,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:23:00,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:23:00,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:23:00,480.480 INFO    ] time= 19/06/2026 01:23:00
[2026-06-19 01:23:00,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:23:00,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:23:00,658.658 INFO    ] No existing commands found in stream
[2026-06-19 01:23:05,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:23:05,681.681 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 01:23:07,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:23:07,924.924 INFO    ] Checking for system updates...
[2026-06-19 01:23:07,961.961 INFO    ] 200
[2026-06-19 01:23:07,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:08,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:23:08,029.029 INFO    ] No update needed
[2026-06-19 01:23:08,031.031 INFO    ] Checking for camera pi updates...
[2026-06-19 01:23:08,066.066 INFO    ] 200
[2026-06-19 01:23:08,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:08,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:23:08,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:23:08,168.168 INFO    ] No camera update needed
[2026-06-19 01:23:08,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:23:08,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:23:08,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:23:08,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:23:10,224.224 INFO    ] ================================================
[2026-06-19 01:23:10,240.240 INFO    ] Launching Daemon at Fri Jun 19 01:23:10 IST 2026
[2026-06-19 01:23:10,251.251 INFO    ] ================================================
[2026-06-19 01:23:10,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:23:10
[2026-06-19 01:23:11,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:23:11,654.654 INFO    ] Initializing speech engine...
[2026-06-19 01:23:11,677.677 INFO    ] 2026-06-19 01:23:11
[2026-06-19 01:23:11,932.932 INFO    ] 2026-06-19 01:23:11
[2026-06-19 01:23:11,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:23:12,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:23:12,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:23:12,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:23:12,393.393 INFO    ] time= 19/06/2026 01:23:12
[2026-06-19 01:23:12,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:23:12,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:23:12,563.563 INFO    ] No existing commands found in stream
[2026-06-19 01:23:17,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:23:17,578.578 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 01:23:18,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:23:18,035.035 INFO    ] Checking for system updates...
[2026-06-19 01:23:18,071.071 INFO    ] 200
[2026-06-19 01:23:18,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:18,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:23:18,131.131 INFO    ] No update needed
[2026-06-19 01:23:18,133.133 INFO    ] Checking for camera pi updates...
[2026-06-19 01:23:18,170.170 INFO    ] 200
[2026-06-19 01:23:18,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:18,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:23:18,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:23:18,264.264 INFO    ] No camera update needed
[2026-06-19 01:23:18,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:23:18,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:23:18,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:23:18,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:23:20,320.320 INFO    ] ================================================
[2026-06-19 01:23:20,335.335 INFO    ] Launching Daemon at Fri Jun 19 01:23:20 IST 2026
[2026-06-19 01:23:20,346.346 INFO    ] ================================================
[2026-06-19 01:23:20,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:23:20
[2026-06-19 01:23:21,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:23:21,935.935 INFO    ] Initializing speech engine...
[2026-06-19 01:23:21,946.946 INFO    ] 2026-06-19 01:23:21
[2026-06-19 01:23:22,215.215 INFO    ] 2026-06-19 01:23:22
[2026-06-19 01:23:22,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:23:22,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:23:22,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:23:22,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:23:22,707.707 INFO    ] time= 19/06/2026 01:23:22
[2026-06-19 01:23:22,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:23:22,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:23:22,913.913 INFO    ] No existing commands found in stream
[2026-06-19 01:23:27,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:23:27,943.943 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 01:23:29,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:23:29,100.100 INFO    ] Checking for system updates...
[2026-06-19 01:23:29,140.140 INFO    ] 200
[2026-06-19 01:23:29,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:29,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:23:29,207.207 INFO    ] No update needed
[2026-06-19 01:23:29,210.210 INFO    ] Checking for camera pi updates...
[2026-06-19 01:23:29,249.249 INFO    ] 200
[2026-06-19 01:23:29,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:29,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:23:29,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:23:29,351.351 INFO    ] No camera update needed
[2026-06-19 01:23:29,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:23:29,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:23:29,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:23:29,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:23:31,408.408 INFO    ] ================================================
[2026-06-19 01:23:31,425.425 INFO    ] Launching Daemon at Fri Jun 19 01:23:31 IST 2026
[2026-06-19 01:23:31,437.437 INFO    ] ================================================
[2026-06-19 01:23:32,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:23:32
[2026-06-19 01:23:32,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:23:33,040.040 INFO    ] Initializing speech engine...
[2026-06-19 01:23:33,047.047 INFO    ] 2026-06-19 01:23:33
[2026-06-19 01:23:33,309.309 INFO    ] 2026-06-19 01:23:33
[2026-06-19 01:23:33,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:23:33,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:23:33,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:23:33,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:23:33,768.768 INFO    ] time= 19/06/2026 01:23:33
[2026-06-19 01:23:33,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:23:33,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:23:33,913.913 INFO    ] No existing commands found in stream
[2026-06-19 01:23:38,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:23:38,928.928 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 01:23:40,866.866 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:23:40,869.869 INFO    ] Checking for system updates...
[2026-06-19 01:23:40,909.909 INFO    ] 200
[2026-06-19 01:23:40,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:40,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:23:40,966.966 INFO    ] No update needed
[2026-06-19 01:23:40,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 01:23:41,006.006 INFO    ] 200
[2026-06-19 01:23:41,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:41,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:23:41,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:23:41,102.102 INFO    ] No camera update needed
[2026-06-19 01:23:41,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:23:41,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:23:41,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:23:41,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:23:43,160.160 INFO    ] ================================================
[2026-06-19 01:23:43,175.175 INFO    ] Launching Daemon at Fri Jun 19 01:23:43 IST 2026
[2026-06-19 01:23:43,186.186 INFO    ] ================================================
[2026-06-19 01:23:43,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:23:43
[2026-06-19 01:23:44,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:23:44,593.593 INFO    ] Initializing speech engine...
[2026-06-19 01:23:44,609.609 INFO    ] 2026-06-19 01:23:44
[2026-06-19 01:23:44,891.891 INFO    ] 2026-06-19 01:23:44
[2026-06-19 01:23:44,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:23:45,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:23:45,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:23:45,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:23:45,263.263 INFO    ] time= 19/06/2026 01:23:45
[2026-06-19 01:23:45,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:23:45,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:23:45,385.385 INFO    ] No existing commands found in stream
[2026-06-19 01:23:50,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:23:50,398.398 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 01:23:56,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:23:56,161.161 INFO    ] Checking for system updates...
[2026-06-19 01:23:56,197.197 INFO    ] 200
[2026-06-19 01:23:56,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:56,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:23:56,260.260 INFO    ] No update needed
[2026-06-19 01:23:56,263.263 INFO    ] Checking for camera pi updates...
[2026-06-19 01:23:56,299.299 INFO    ] 200
[2026-06-19 01:23:56,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:23:56,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:23:56,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:23:56,491.491 INFO    ] No camera update needed
[2026-06-19 01:23:56,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:23:56,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:23:56,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:23:56,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:23:58,547.547 INFO    ] ================================================
[2026-06-19 01:23:58,562.562 INFO    ] Launching Daemon at Fri Jun 19 01:23:58 IST 2026
[2026-06-19 01:23:58,573.573 INFO    ] ================================================
[2026-06-19 01:23:59,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:23:59
[2026-06-19 01:23:59,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:24:00,035.035 INFO    ] Initializing speech engine...
[2026-06-19 01:24:00,044.044 INFO    ] 2026-06-19 01:24:00
[2026-06-19 01:24:00,303.303 INFO    ] 2026-06-19 01:24:00
[2026-06-19 01:24:00,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:24:00,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:24:00,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:24:00,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:24:00,762.762 INFO    ] time= 19/06/2026 01:24:00
[2026-06-19 01:24:00,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:24:00,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:24:00,909.909 INFO    ] No existing commands found in stream
[2026-06-19 01:24:05,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:24:05,924.924 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 01:24:10,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:24:10,206.206 INFO    ] Checking for system updates...
[2026-06-19 01:24:10,246.246 INFO    ] 200
[2026-06-19 01:24:10,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:10,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:24:10,310.310 INFO    ] No update needed
[2026-06-19 01:24:10,312.312 INFO    ] Checking for camera pi updates...
[2026-06-19 01:24:10,349.349 INFO    ] 200
[2026-06-19 01:24:10,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:10,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:24:10,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:24:10,444.444 INFO    ] No camera update needed
[2026-06-19 01:24:10,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:24:10,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:24:10,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:24:10,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:24:12,506.506 INFO    ] ================================================
[2026-06-19 01:24:12,521.521 INFO    ] Launching Daemon at Fri Jun 19 01:24:12 IST 2026
[2026-06-19 01:24:12,531.531 INFO    ] ================================================
[2026-06-19 01:24:13,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:24:13
[2026-06-19 01:24:13,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:24:13,929.929 INFO    ] Initializing speech engine...
[2026-06-19 01:24:13,952.952 INFO    ] 2026-06-19 01:24:13
[2026-06-19 01:24:14,204.204 INFO    ] 2026-06-19 01:24:14
[2026-06-19 01:24:14,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:24:14,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:24:14,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:24:14,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:24:14,568.568 INFO    ] time= 19/06/2026 01:24:14
[2026-06-19 01:24:14,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:24:14,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:24:14,649.649 INFO    ] No existing commands found in stream
[2026-06-19 01:24:19,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:24:19,666.666 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 01:24:21,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:24:21,437.437 INFO    ] Checking for system updates...
[2026-06-19 01:24:21,472.472 INFO    ] 200
[2026-06-19 01:24:21,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:21,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:24:21,535.535 INFO    ] No update needed
[2026-06-19 01:24:21,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 01:24:21,570.570 INFO    ] 200
[2026-06-19 01:24:21,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:21,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:24:21,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:24:21,673.673 INFO    ] No camera update needed
[2026-06-19 01:24:21,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:24:21,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:24:21,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:24:21,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:24:23,728.728 INFO    ] ================================================
[2026-06-19 01:24:23,747.747 INFO    ] Launching Daemon at Fri Jun 19 01:24:23 IST 2026
[2026-06-19 01:24:23,758.758 INFO    ] ================================================
[2026-06-19 01:24:24,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:24:24
[2026-06-19 01:24:24,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:24:25,225.225 INFO    ] Initializing speech engine...
[2026-06-19 01:24:25,234.234 INFO    ] 2026-06-19 01:24:25
[2026-06-19 01:24:25,505.505 INFO    ] 2026-06-19 01:24:25
[2026-06-19 01:24:25,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:24:25,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:24:25,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:24:25,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:24:25,982.982 INFO    ] time= 19/06/2026 01:24:25
[2026-06-19 01:24:26,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:24:26,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:24:26,102.102 INFO    ] No existing commands found in stream
[2026-06-19 01:24:31,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:24:31,130.130 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 01:24:32,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:24:32,407.407 INFO    ] Checking for system updates...
[2026-06-19 01:24:32,443.443 INFO    ] 200
[2026-06-19 01:24:32,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:32,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:24:32,501.501 INFO    ] No update needed
[2026-06-19 01:24:32,503.503 INFO    ] Checking for camera pi updates...
[2026-06-19 01:24:32,537.537 INFO    ] 200
[2026-06-19 01:24:32,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:32,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:24:32,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:24:32,647.647 INFO    ] No camera update needed
[2026-06-19 01:24:32,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:24:32,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:24:32,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:24:32,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:24:34,703.703 INFO    ] ================================================
[2026-06-19 01:24:34,719.719 INFO    ] Launching Daemon at Fri Jun 19 01:24:34 IST 2026
[2026-06-19 01:24:34,729.729 INFO    ] ================================================
[2026-06-19 01:24:35,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:24:35
[2026-06-19 01:24:36,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:24:36,261.261 INFO    ] Initializing speech engine...
[2026-06-19 01:24:36,281.281 INFO    ] 2026-06-19 01:24:36
[2026-06-19 01:24:36,532.532 INFO    ] 2026-06-19 01:24:36
[2026-06-19 01:24:36,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:24:36,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:24:36,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:24:36,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:24:36,908.908 INFO    ] time= 19/06/2026 01:24:36
[2026-06-19 01:24:36,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:24:36,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:24:37,054.054 INFO    ] No existing commands found in stream
[2026-06-19 01:24:42,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:24:42,081.081 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 01:24:45,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:24:45,538.538 INFO    ] Checking for system updates...
[2026-06-19 01:24:45,577.577 INFO    ] 200
[2026-06-19 01:24:45,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:45,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:24:45,646.646 INFO    ] No update needed
[2026-06-19 01:24:45,649.649 INFO    ] Checking for camera pi updates...
[2026-06-19 01:24:45,690.690 INFO    ] 200
[2026-06-19 01:24:45,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:45,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:24:45,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:24:45,780.780 INFO    ] No camera update needed
[2026-06-19 01:24:45,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:24:45,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:24:45,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:24:45,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:24:47,835.835 INFO    ] ================================================
[2026-06-19 01:24:47,850.850 INFO    ] Launching Daemon at Fri Jun 19 01:24:47 IST 2026
[2026-06-19 01:24:47,861.861 INFO    ] ================================================
[2026-06-19 01:24:48,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:24:48
[2026-06-19 01:24:49,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:24:49,324.324 INFO    ] Initializing speech engine...
[2026-06-19 01:24:49,338.338 INFO    ] 2026-06-19 01:24:49
[2026-06-19 01:24:49,596.596 INFO    ] 2026-06-19 01:24:49
[2026-06-19 01:24:49,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:24:49,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:24:49,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:24:49,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:24:49,977.977 INFO    ] time= 19/06/2026 01:24:49
[2026-06-19 01:24:49,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:24:50,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:24:50,143.143 INFO    ] No existing commands found in stream
[2026-06-19 01:24:55,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:24:55,179.179 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 01:24:58,955.955 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:24:58,958.958 INFO    ] Checking for system updates...
[2026-06-19 01:24:58,998.998 INFO    ] 200
[2026-06-19 01:24:59,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:59,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:24:59,061.061 INFO    ] No update needed
[2026-06-19 01:24:59,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 01:24:59,101.101 INFO    ] 200
[2026-06-19 01:24:59,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:24:59,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:24:59,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:24:59,210.210 INFO    ] No camera update needed
[2026-06-19 01:24:59,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:24:59,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:24:59,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:24:59,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:25:01,300.300 INFO    ] ================================================
[2026-06-19 01:25:01,344.344 INFO    ] Launching Daemon at Fri Jun 19 01:25:01 IST 2026
[2026-06-19 01:25:01,396.396 INFO    ] ================================================
[2026-06-19 01:25:02,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:25:02
[2026-06-19 01:25:02,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:25:03,168.168 INFO    ] Initializing speech engine...
[2026-06-19 01:25:03,180.180 INFO    ] 2026-06-19 01:25:03
[2026-06-19 01:25:03,452.452 INFO    ] 2026-06-19 01:25:03
[2026-06-19 01:25:03,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:25:03,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:25:03,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:25:03,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:25:03,922.922 INFO    ] time= 19/06/2026 01:25:03
[2026-06-19 01:25:03,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:25:04,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:25:04,067.067 INFO    ] No existing commands found in stream
[2026-06-19 01:25:09,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:25:09,083.083 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 01:25:11,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:25:11,369.369 INFO    ] Checking for system updates...
[2026-06-19 01:25:11,406.406 INFO    ] 200
[2026-06-19 01:25:11,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:25:11,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:25:11,475.475 INFO    ] No update needed
[2026-06-19 01:25:11,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 01:25:11,511.511 INFO    ] 200
[2026-06-19 01:25:11,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:25:11,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:25:11,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:25:11,604.604 INFO    ] No camera update needed
[2026-06-19 01:25:11,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:25:11,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:25:11,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:25:11,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:25:13,660.660 INFO    ] ================================================
[2026-06-19 01:25:13,676.676 INFO    ] Launching Daemon at Fri Jun 19 01:25:13 IST 2026
[2026-06-19 01:25:13,686.686 INFO    ] ================================================
[2026-06-19 01:25:14,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:25:14
[2026-06-19 01:25:14,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:25:15,166.166 INFO    ] Initializing speech engine...
[2026-06-19 01:25:15,176.176 INFO    ] 2026-06-19 01:25:15
[2026-06-19 01:25:15,441.441 INFO    ] 2026-06-19 01:25:15
[2026-06-19 01:25:15,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:25:15,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:25:15,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:25:15,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:25:15,917.917 INFO    ] time= 19/06/2026 01:25:15
[2026-06-19 01:25:15,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:25:16,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:25:16,056.056 INFO    ] No existing commands found in stream
[2026-06-19 01:25:21,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:25:21,070.070 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 01:25:24,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:25:24,509.509 INFO    ] Checking for system updates...
[2026-06-19 01:25:24,548.548 INFO    ] 200
[2026-06-19 01:25:24,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:25:24,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:25:24,605.605 INFO    ] No update needed
[2026-06-19 01:25:24,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 01:25:24,647.647 INFO    ] 200
[2026-06-19 01:25:24,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:25:24,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:25:24,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:25:24,739.739 INFO    ] No camera update needed
[2026-06-19 01:25:24,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:25:24,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:25:24,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:25:24,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:25:26,801.801 INFO    ] ================================================
[2026-06-19 01:25:26,816.816 INFO    ] Launching Daemon at Fri Jun 19 01:25:26 IST 2026
[2026-06-19 01:25:26,827.827 INFO    ] ================================================
[2026-06-19 01:25:27,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:25:27
[2026-06-19 01:25:28,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:25:28,323.323 INFO    ] Initializing speech engine...
[2026-06-19 01:25:28,338.338 INFO    ] 2026-06-19 01:25:28
[2026-06-19 01:25:28,616.616 INFO    ] 2026-06-19 01:25:28
[2026-06-19 01:25:28,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:25:28,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:25:28,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:25:28,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:25:28,986.986 INFO    ] time= 19/06/2026 01:25:28
[2026-06-19 01:25:29,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:25:29,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:25:29,107.107 INFO    ] No existing commands found in stream
[2026-06-19 01:25:34,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:25:34,121.121 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 01:25:34,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:25:34,949.949 INFO    ] Checking for system updates...
[2026-06-19 01:25:34,985.985 INFO    ] 200
[2026-06-19 01:25:34,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:25:35,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:25:35,043.043 INFO    ] No update needed
[2026-06-19 01:25:35,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 01:25:35,079.079 INFO    ] 200
[2026-06-19 01:25:35,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:25:35,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:25:35,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:25:35,176.176 INFO    ] No camera update needed
[2026-06-19 01:25:35,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:25:35,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:25:35,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:25:35,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:25:37,232.232 INFO    ] ================================================
[2026-06-19 01:25:37,248.248 INFO    ] Launching Daemon at Fri Jun 19 01:25:37 IST 2026
[2026-06-19 01:25:37,258.258 INFO    ] ================================================
[2026-06-19 01:25:37,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:25:37
[2026-06-19 01:25:38,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:25:38,690.690 INFO    ] Initializing speech engine...
[2026-06-19 01:25:38,700.700 INFO    ] 2026-06-19 01:25:38
[2026-06-19 01:25:38,959.959 INFO    ] 2026-06-19 01:25:38
[2026-06-19 01:25:38,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:25:39,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:25:39,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:25:39,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:25:39,367.367 INFO    ] time= 19/06/2026 01:25:39
[2026-06-19 01:25:39,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:25:39,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:25:39,544.544 INFO    ] No existing commands found in stream
[2026-06-19 01:25:44,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:25:44,583.583 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 01:25:47,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:25:47,918.918 INFO    ] Checking for system updates...
[2026-06-19 01:25:47,958.958 INFO    ] 200
[2026-06-19 01:25:47,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:25:48,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:25:48,022.022 INFO    ] No update needed
[2026-06-19 01:25:48,024.024 INFO    ] Checking for camera pi updates...
[2026-06-19 01:25:48,062.062 INFO    ] 200
[2026-06-19 01:25:48,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:25:48,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:25:48,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:25:48,168.168 INFO    ] No camera update needed
[2026-06-19 01:25:48,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:25:48,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:25:48,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:25:48,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:25:50,225.225 INFO    ] ================================================
[2026-06-19 01:25:50,241.241 INFO    ] Launching Daemon at Fri Jun 19 01:25:50 IST 2026
[2026-06-19 01:25:50,252.252 INFO    ] ================================================
[2026-06-19 01:25:50,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:25:50
[2026-06-19 01:25:51,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:25:51,668.668 INFO    ] Initializing speech engine...
[2026-06-19 01:25:51,677.677 INFO    ] 2026-06-19 01:25:51
[2026-06-19 01:25:51,922.922 INFO    ] 2026-06-19 01:25:51
[2026-06-19 01:25:51,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:25:52,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:25:52,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:25:52,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:25:52,389.389 INFO    ] time= 19/06/2026 01:25:52
[2026-06-19 01:25:52,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:25:52,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:25:52,537.537 INFO    ] No existing commands found in stream
[2026-06-19 01:25:57,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:25:57,551.551 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 01:25:59,968.968 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:25:59,971.971 INFO    ] Checking for system updates...
[2026-06-19 01:26:00,009.009 INFO    ] 200
[2026-06-19 01:26:00,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:00,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:26:00,086.086 INFO    ] No update needed
[2026-06-19 01:26:00,088.088 INFO    ] Checking for camera pi updates...
[2026-06-19 01:26:00,121.121 INFO    ] 200
[2026-06-19 01:26:00,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:00,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:26:00,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:26:00,322.322 INFO    ] No camera update needed
[2026-06-19 01:26:00,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:26:00,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:26:00,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:26:00,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:26:02,390.390 INFO    ] ================================================
[2026-06-19 01:26:02,407.407 INFO    ] Launching Daemon at Fri Jun 19 01:26:02 IST 2026
[2026-06-19 01:26:02,420.420 INFO    ] ================================================
[2026-06-19 01:26:03,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:26:03
[2026-06-19 01:26:03,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:26:03,920.920 INFO    ] Initializing speech engine...
[2026-06-19 01:26:03,929.929 INFO    ] 2026-06-19 01:26:03
[2026-06-19 01:26:04,220.220 INFO    ] 2026-06-19 01:26:04
[2026-06-19 01:26:04,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:26:04,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:26:04,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:26:04,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:26:04,594.594 INFO    ] time= 19/06/2026 01:26:04
[2026-06-19 01:26:04,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:26:04,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:26:04,717.717 INFO    ] No existing commands found in stream
[2026-06-19 01:26:09,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:26:09,732.732 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 01:26:10,157.157 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:26:10,159.159 INFO    ] Checking for system updates...
[2026-06-19 01:26:10,195.195 INFO    ] 200
[2026-06-19 01:26:10,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:10,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:26:10,253.253 INFO    ] No update needed
[2026-06-19 01:26:10,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 01:26:10,292.292 INFO    ] 200
[2026-06-19 01:26:10,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:10,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:26:10,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:26:10,396.396 INFO    ] No camera update needed
[2026-06-19 01:26:10,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:26:10,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:26:10,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:26:10,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:26:12,454.454 INFO    ] ================================================
[2026-06-19 01:26:12,469.469 INFO    ] Launching Daemon at Fri Jun 19 01:26:12 IST 2026
[2026-06-19 01:26:12,479.479 INFO    ] ================================================
[2026-06-19 01:26:13,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:26:13
[2026-06-19 01:26:13,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:26:13,952.952 INFO    ] Initializing speech engine...
[2026-06-19 01:26:13,963.963 INFO    ] 2026-06-19 01:26:13
[2026-06-19 01:26:14,225.225 INFO    ] 2026-06-19 01:26:14
[2026-06-19 01:26:14,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:26:14,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:26:14,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:26:14,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:26:14,657.657 INFO    ] time= 19/06/2026 01:26:14
[2026-06-19 01:26:14,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:26:14,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:26:14,831.831 INFO    ] No existing commands found in stream
[2026-06-19 01:26:19,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:26:19,846.846 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 01:26:23,523.523 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:26:23,525.525 INFO    ] Checking for system updates...
[2026-06-19 01:26:23,563.563 INFO    ] 200
[2026-06-19 01:26:23,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:23,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:26:23,625.625 INFO    ] No update needed
[2026-06-19 01:26:23,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 01:26:23,662.662 INFO    ] 200
[2026-06-19 01:26:23,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:23,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:26:23,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:26:23,760.760 INFO    ] No camera update needed
[2026-06-19 01:26:23,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:26:23,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:26:23,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:26:23,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:26:25,818.818 INFO    ] ================================================
[2026-06-19 01:26:25,833.833 INFO    ] Launching Daemon at Fri Jun 19 01:26:25 IST 2026
[2026-06-19 01:26:25,843.843 INFO    ] ================================================
[2026-06-19 01:26:26,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:26:26
[2026-06-19 01:26:27,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:26:27,268.268 INFO    ] Initializing speech engine...
[2026-06-19 01:26:27,276.276 INFO    ] 2026-06-19 01:26:27
[2026-06-19 01:26:27,569.569 INFO    ] 2026-06-19 01:26:27
[2026-06-19 01:26:27,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:26:27,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:26:27,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:26:27,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:26:27,953.953 INFO    ] time= 19/06/2026 01:26:27
[2026-06-19 01:26:27,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:26:27,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:26:28,077.077 INFO    ] No existing commands found in stream
[2026-06-19 01:26:33,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:26:33,092.092 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 01:26:33,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:26:33,470.470 INFO    ] Checking for system updates...
[2026-06-19 01:26:33,509.509 INFO    ] 200
[2026-06-19 01:26:33,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:33,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:26:33,567.567 INFO    ] No update needed
[2026-06-19 01:26:33,569.569 INFO    ] Checking for camera pi updates...
[2026-06-19 01:26:33,606.606 INFO    ] 200
[2026-06-19 01:26:33,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:33,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:26:33,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:26:33,699.699 INFO    ] No camera update needed
[2026-06-19 01:26:33,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:26:33,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:26:33,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:26:33,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:26:35,754.754 INFO    ] ================================================
[2026-06-19 01:26:35,769.769 INFO    ] Launching Daemon at Fri Jun 19 01:26:35 IST 2026
[2026-06-19 01:26:35,779.779 INFO    ] ================================================
[2026-06-19 01:26:36,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:26:36
[2026-06-19 01:26:36,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:26:37,246.246 INFO    ] Initializing speech engine...
[2026-06-19 01:26:37,253.253 INFO    ] 2026-06-19 01:26:37
[2026-06-19 01:26:37,513.513 INFO    ] 2026-06-19 01:26:37
[2026-06-19 01:26:37,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:26:37,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:26:37,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:26:37,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:26:37,965.965 INFO    ] time= 19/06/2026 01:26:37
[2026-06-19 01:26:38,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:26:38,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:26:38,119.119 INFO    ] No existing commands found in stream
[2026-06-19 01:26:43,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:26:43,134.134 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 01:26:44,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:26:44,527.527 INFO    ] Checking for system updates...
[2026-06-19 01:26:44,563.563 INFO    ] 200
[2026-06-19 01:26:44,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:44,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:26:44,627.627 INFO    ] No update needed
[2026-06-19 01:26:44,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 01:26:44,667.667 INFO    ] 200
[2026-06-19 01:26:44,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:44,715.715 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:26:44,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:26:44,810.810 INFO    ] No camera update needed
[2026-06-19 01:26:44,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:26:44,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:26:44,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:26:44,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:26:46,865.865 INFO    ] ================================================
[2026-06-19 01:26:46,880.880 INFO    ] Launching Daemon at Fri Jun 19 01:26:46 IST 2026
[2026-06-19 01:26:46,891.891 INFO    ] ================================================
[2026-06-19 01:26:47,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:26:47
[2026-06-19 01:26:48,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:26:48,312.312 INFO    ] Initializing speech engine...
[2026-06-19 01:26:48,321.321 INFO    ] 2026-06-19 01:26:48
[2026-06-19 01:26:48,581.581 INFO    ] 2026-06-19 01:26:48
[2026-06-19 01:26:48,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:26:48,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:26:48,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:26:49,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:26:49,045.045 INFO    ] time= 19/06/2026 01:26:49
[2026-06-19 01:26:49,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:26:49,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:26:49,184.184 INFO    ] No existing commands found in stream
[2026-06-19 01:26:54,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:26:54,199.199 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 01:26:57,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:26:57,429.429 INFO    ] Checking for system updates...
[2026-06-19 01:26:57,468.468 INFO    ] 200
[2026-06-19 01:26:57,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:57,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:26:57,527.527 INFO    ] No update needed
[2026-06-19 01:26:57,529.529 INFO    ] Checking for camera pi updates...
[2026-06-19 01:26:57,563.563 INFO    ] 200
[2026-06-19 01:26:57,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:26:57,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:26:57,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:26:57,651.651 INFO    ] No camera update needed
[2026-06-19 01:26:57,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:26:57,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:26:57,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:26:57,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:26:59,707.707 INFO    ] ================================================
[2026-06-19 01:26:59,722.722 INFO    ] Launching Daemon at Fri Jun 19 01:26:59 IST 2026
[2026-06-19 01:26:59,733.733 INFO    ] ================================================
[2026-06-19 01:27:00,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:27:00
[2026-06-19 01:27:00,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:27:01,159.159 INFO    ] Initializing speech engine...
[2026-06-19 01:27:01,163.163 INFO    ] 2026-06-19 01:27:01
[2026-06-19 01:27:01,516.516 INFO    ] 2026-06-19 01:27:01
[2026-06-19 01:27:01,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:27:01,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:27:01,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:27:02,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:27:02,025.025 INFO    ] time= 19/06/2026 01:27:02
[2026-06-19 01:27:02,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:27:02,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:27:02,231.231 INFO    ] No existing commands found in stream
[2026-06-19 01:27:07,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:27:07,254.254 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 01:27:10,714.714 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:27:10,718.718 INFO    ] Checking for system updates...
[2026-06-19 01:27:10,754.754 INFO    ] 200
[2026-06-19 01:27:10,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:27:10,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:27:10,817.817 INFO    ] No update needed
[2026-06-19 01:27:10,819.819 INFO    ] Checking for camera pi updates...
[2026-06-19 01:27:10,854.854 INFO    ] 200
[2026-06-19 01:27:10,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:27:10,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:27:10,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:27:10,944.944 INFO    ] No camera update needed
[2026-06-19 01:27:10,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:27:10,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:27:10,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:27:10,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:27:13,999.999 INFO    ] ================================================
[2026-06-19 01:27:13,015.015 INFO    ] Launching Daemon at Fri Jun 19 01:27:13 IST 2026
[2026-06-19 01:27:13,026.026 INFO    ] ================================================
[2026-06-19 01:27:13,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:27:13
[2026-06-19 01:27:14,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:27:14,448.448 INFO    ] Initializing speech engine...
[2026-06-19 01:27:14,457.457 INFO    ] 2026-06-19 01:27:14
[2026-06-19 01:27:14,702.702 INFO    ] 2026-06-19 01:27:14
[2026-06-19 01:27:14,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:27:14,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:27:14,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:27:15,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:27:15,168.168 INFO    ] time= 19/06/2026 01:27:15
[2026-06-19 01:27:15,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:27:15,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:27:15,321.321 INFO    ] No existing commands found in stream
[2026-06-19 01:27:20,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:27:20,336.336 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 01:27:23,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:27:23,428.428 INFO    ] Checking for system updates...
[2026-06-19 01:27:23,468.468 INFO    ] 200
[2026-06-19 01:27:23,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:27:23,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:27:23,530.530 INFO    ] No update needed
[2026-06-19 01:27:23,532.532 INFO    ] Checking for camera pi updates...
[2026-06-19 01:27:23,569.569 INFO    ] 200
[2026-06-19 01:27:23,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:27:23,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:27:23,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:27:23,669.669 INFO    ] No camera update needed
[2026-06-19 01:27:23,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:27:23,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:27:23,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:27:23,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:27:25,725.725 INFO    ] ================================================
[2026-06-19 01:27:25,740.740 INFO    ] Launching Daemon at Fri Jun 19 01:27:25 IST 2026
[2026-06-19 01:27:25,751.751 INFO    ] ================================================
[2026-06-19 01:27:26,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:27:26
[2026-06-19 01:27:27,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:27:27,342.342 INFO    ] Initializing speech engine...
[2026-06-19 01:27:27,354.354 INFO    ] 2026-06-19 01:27:27
[2026-06-19 01:27:27,635.635 INFO    ] 2026-06-19 01:27:27
[2026-06-19 01:27:27,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:27:27,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:27:27,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:27:28,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:27:28,167.167 INFO    ] time= 19/06/2026 01:27:28
[2026-06-19 01:27:28,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:27:28,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:27:28,306.306 INFO    ] No existing commands found in stream
[2026-06-19 01:27:33,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:27:33,333.333 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 01:27:34,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:27:34,955.955 INFO    ] Checking for system updates...
[2026-06-19 01:27:34,994.994 INFO    ] 200
[2026-06-19 01:27:34,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:27:35,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:27:35,054.054 INFO    ] No update needed
[2026-06-19 01:27:35,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 01:27:35,091.091 INFO    ] 200
[2026-06-19 01:27:35,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:27:35,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:27:35,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:27:35,193.193 INFO    ] No camera update needed
[2026-06-19 01:27:35,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:27:35,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:27:35,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:27:35,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:27:37,249.249 INFO    ] ================================================
[2026-06-19 01:27:37,264.264 INFO    ] Launching Daemon at Fri Jun 19 01:27:37 IST 2026
[2026-06-19 01:27:37,274.274 INFO    ] ================================================
[2026-06-19 01:27:37,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:27:37
[2026-06-19 01:27:38,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:27:38,821.821 INFO    ] Initializing speech engine...
[2026-06-19 01:27:38,827.827 INFO    ] 2026-06-19 01:27:38
[2026-06-19 01:27:39,089.089 INFO    ] 2026-06-19 01:27:39
[2026-06-19 01:27:39,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:27:39,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:27:39,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:27:39,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:27:39,528.528 INFO    ] time= 19/06/2026 01:27:39
[2026-06-19 01:27:39,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:27:39,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:27:39,698.698 INFO    ] No existing commands found in stream
[2026-06-19 01:27:44,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:27:44,711.711 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 01:27:48,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:27:48,792.792 INFO    ] Checking for system updates...
[2026-06-19 01:27:48,831.831 INFO    ] 200
[2026-06-19 01:27:48,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:27:48,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:27:48,890.890 INFO    ] No update needed
[2026-06-19 01:27:48,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 01:27:48,931.931 INFO    ] 200
[2026-06-19 01:27:48,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:27:48,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:27:49,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:27:49,026.026 INFO    ] No camera update needed
[2026-06-19 01:27:49,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:27:49,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:27:49,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:27:49,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:27:51,081.081 INFO    ] ================================================
[2026-06-19 01:27:51,096.096 INFO    ] Launching Daemon at Fri Jun 19 01:27:51 IST 2026
[2026-06-19 01:27:51,107.107 INFO    ] ================================================
[2026-06-19 01:27:51,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:27:51
[2026-06-19 01:27:52,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:27:52,522.522 INFO    ] Initializing speech engine...
[2026-06-19 01:27:52,534.534 INFO    ] 2026-06-19 01:27:52
[2026-06-19 01:27:52,783.783 INFO    ] 2026-06-19 01:27:52
[2026-06-19 01:27:52,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:27:52,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:27:53,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:27:53,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:27:53,123.123 INFO    ] time= 19/06/2026 01:27:53
[2026-06-19 01:27:53,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:27:53,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:27:53,236.236 INFO    ] No existing commands found in stream
[2026-06-19 01:27:58,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:27:58,251.251 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 01:27:59,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:27:59,918.918 INFO    ] Checking for system updates...
[2026-06-19 01:27:59,960.960 INFO    ] 200
[2026-06-19 01:27:59,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:00,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:28:00,029.029 INFO    ] No update needed
[2026-06-19 01:28:00,032.032 INFO    ] Checking for camera pi updates...
[2026-06-19 01:28:00,071.071 INFO    ] 200
[2026-06-19 01:28:00,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:00,122.122 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:28:00,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:28:00,172.172 INFO    ] No camera update needed
[2026-06-19 01:28:00,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:28:00,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:28:00,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:28:00,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:28:02,234.234 INFO    ] ================================================
[2026-06-19 01:28:02,261.261 INFO    ] Launching Daemon at Fri Jun 19 01:28:02 IST 2026
[2026-06-19 01:28:02,277.277 INFO    ] ================================================
[2026-06-19 01:28:02,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:28:02
[2026-06-19 01:28:03,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:28:03,822.822 INFO    ] Initializing speech engine...
[2026-06-19 01:28:03,828.828 INFO    ] 2026-06-19 01:28:03
[2026-06-19 01:28:04,092.092 INFO    ] 2026-06-19 01:28:04
[2026-06-19 01:28:04,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:28:04,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:28:04,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:28:04,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:28:04,561.561 INFO    ] time= 19/06/2026 01:28:04
[2026-06-19 01:28:04,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:28:04,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:28:04,706.706 INFO    ] No existing commands found in stream
[2026-06-19 01:28:09,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:28:09,720.720 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 01:28:13,825.825 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:28:13,828.828 INFO    ] Checking for system updates...
[2026-06-19 01:28:13,866.866 INFO    ] 200
[2026-06-19 01:28:13,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:13,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:28:13,931.931 INFO    ] No update needed
[2026-06-19 01:28:13,934.934 INFO    ] Checking for camera pi updates...
[2026-06-19 01:28:13,972.972 INFO    ] 200
[2026-06-19 01:28:13,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:14,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:28:14,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:28:14,073.073 INFO    ] No camera update needed
[2026-06-19 01:28:14,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:28:14,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:28:14,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:28:14,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:28:16,131.131 INFO    ] ================================================
[2026-06-19 01:28:16,147.147 INFO    ] Launching Daemon at Fri Jun 19 01:28:16 IST 2026
[2026-06-19 01:28:16,157.157 INFO    ] ================================================
[2026-06-19 01:28:16,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:28:16
[2026-06-19 01:28:17,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:28:17,567.567 INFO    ] Initializing speech engine...
[2026-06-19 01:28:17,582.582 INFO    ] 2026-06-19 01:28:17
[2026-06-19 01:28:17,850.850 INFO    ] 2026-06-19 01:28:17
[2026-06-19 01:28:17,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:28:18,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:28:18,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:28:18,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:28:18,333.333 INFO    ] time= 19/06/2026 01:28:18
[2026-06-19 01:28:18,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:28:18,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:28:18,480.480 INFO    ] No existing commands found in stream
[2026-06-19 01:28:23,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:28:23,495.495 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 01:28:24,175.175 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:28:24,178.178 INFO    ] Checking for system updates...
[2026-06-19 01:28:24,218.218 INFO    ] 200
[2026-06-19 01:28:24,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:24,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:28:24,279.279 INFO    ] No update needed
[2026-06-19 01:28:24,281.281 INFO    ] Checking for camera pi updates...
[2026-06-19 01:28:24,317.317 INFO    ] 200
[2026-06-19 01:28:24,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:24,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:28:24,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:28:24,422.422 INFO    ] No camera update needed
[2026-06-19 01:28:24,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:28:24,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:28:24,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:28:24,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:28:26,477.477 INFO    ] ================================================
[2026-06-19 01:28:26,492.492 INFO    ] Launching Daemon at Fri Jun 19 01:28:26 IST 2026
[2026-06-19 01:28:26,503.503 INFO    ] ================================================
[2026-06-19 01:28:27,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:28:27
[2026-06-19 01:28:27,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:28:28,036.036 INFO    ] Initializing speech engine...
[2026-06-19 01:28:28,046.046 INFO    ] 2026-06-19 01:28:28
[2026-06-19 01:28:28,294.294 INFO    ] 2026-06-19 01:28:28
[2026-06-19 01:28:28,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:28:28,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:28:28,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:28:28,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:28:28,722.722 INFO    ] time= 19/06/2026 01:28:28
[2026-06-19 01:28:28,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:28:28,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:28:28,875.875 INFO    ] No existing commands found in stream
[2026-06-19 01:28:33,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:28:33,888.888 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 01:28:36,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:28:36,116.116 INFO    ] Checking for system updates...
[2026-06-19 01:28:36,152.152 INFO    ] 200
[2026-06-19 01:28:36,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:36,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:28:36,217.217 INFO    ] No update needed
[2026-06-19 01:28:36,220.220 INFO    ] Checking for camera pi updates...
[2026-06-19 01:28:36,260.260 INFO    ] 200
[2026-06-19 01:28:36,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:36,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:28:36,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:28:36,349.349 INFO    ] No camera update needed
[2026-06-19 01:28:36,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:28:36,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:28:36,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:28:36,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:28:38,407.407 INFO    ] ================================================
[2026-06-19 01:28:38,423.423 INFO    ] Launching Daemon at Fri Jun 19 01:28:38 IST 2026
[2026-06-19 01:28:38,434.434 INFO    ] ================================================
[2026-06-19 01:28:39,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:28:38
[2026-06-19 01:28:39,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:28:39,862.862 INFO    ] Initializing speech engine...
[2026-06-19 01:28:39,870.870 INFO    ] 2026-06-19 01:28:39
[2026-06-19 01:28:40,122.122 INFO    ] 2026-06-19 01:28:40
[2026-06-19 01:28:40,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:28:40,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:28:40,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:28:40,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:28:40,497.497 INFO    ] time= 19/06/2026 01:28:40
[2026-06-19 01:28:40,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:28:40,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:28:40,680.680 INFO    ] No existing commands found in stream
[2026-06-19 01:28:45,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:28:45,698.698 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 01:28:48,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:28:48,497.497 INFO    ] Checking for system updates...
[2026-06-19 01:28:48,533.533 INFO    ] 200
[2026-06-19 01:28:48,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:48,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:28:48,591.591 INFO    ] No update needed
[2026-06-19 01:28:48,593.593 INFO    ] Checking for camera pi updates...
[2026-06-19 01:28:48,627.627 INFO    ] 200
[2026-06-19 01:28:48,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:28:48,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:28:48,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:28:48,733.733 INFO    ] No camera update needed
[2026-06-19 01:28:48,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:28:48,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:28:48,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:28:48,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:28:50,790.790 INFO    ] ================================================
[2026-06-19 01:28:50,806.806 INFO    ] Launching Daemon at Fri Jun 19 01:28:50 IST 2026
[2026-06-19 01:28:50,817.817 INFO    ] ================================================
[2026-06-19 01:28:51,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:28:51
[2026-06-19 01:28:52,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:28:52,285.285 INFO    ] Initializing speech engine...
[2026-06-19 01:28:52,298.298 INFO    ] 2026-06-19 01:28:52
[2026-06-19 01:28:52,565.565 INFO    ] 2026-06-19 01:28:52
[2026-06-19 01:28:52,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:28:52,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:28:52,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:28:52,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:28:53,013.013 INFO    ] time= 19/06/2026 01:28:52
[2026-06-19 01:28:53,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:28:53,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:28:53,158.158 INFO    ] No existing commands found in stream
[2026-06-19 01:28:58,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:28:58,173.173 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 01:29:01,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:29:01,913.913 INFO    ] Checking for system updates...
[2026-06-19 01:29:01,953.953 INFO    ] 200
[2026-06-19 01:29:01,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:02,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:29:02,088.088 INFO    ] No update needed
[2026-06-19 01:29:02,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 01:29:02,176.176 INFO    ] 200
[2026-06-19 01:29:02,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:02,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:29:02,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:29:02,308.308 INFO    ] No camera update needed
[2026-06-19 01:29:02,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:29:02,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:29:02,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:29:02,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:29:04,398.398 INFO    ] ================================================
[2026-06-19 01:29:04,413.413 INFO    ] Launching Daemon at Fri Jun 19 01:29:04 IST 2026
[2026-06-19 01:29:04,424.424 INFO    ] ================================================
[2026-06-19 01:29:05,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:29:05
[2026-06-19 01:29:05,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:29:05,921.921 INFO    ] Initializing speech engine...
[2026-06-19 01:29:05,932.932 INFO    ] 2026-06-19 01:29:05
[2026-06-19 01:29:06,214.214 INFO    ] 2026-06-19 01:29:06
[2026-06-19 01:29:06,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:29:06,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:29:06,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:29:06,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:29:06,680.680 INFO    ] time= 19/06/2026 01:29:06
[2026-06-19 01:29:06,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:29:06,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:29:06,833.833 INFO    ] No existing commands found in stream
[2026-06-19 01:29:11,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:29:11,849.849 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 01:29:15,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:29:15,090.090 INFO    ] Checking for system updates...
[2026-06-19 01:29:15,132.132 INFO    ] 200
[2026-06-19 01:29:15,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:15,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:29:15,204.204 INFO    ] No update needed
[2026-06-19 01:29:15,206.206 INFO    ] Checking for camera pi updates...
[2026-06-19 01:29:15,242.242 INFO    ] 200
[2026-06-19 01:29:15,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:15,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:29:15,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:29:15,341.341 INFO    ] No camera update needed
[2026-06-19 01:29:15,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:29:15,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:29:15,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:29:15,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:29:17,402.402 INFO    ] ================================================
[2026-06-19 01:29:17,418.418 INFO    ] Launching Daemon at Fri Jun 19 01:29:17 IST 2026
[2026-06-19 01:29:17,429.429 INFO    ] ================================================
[2026-06-19 01:29:18,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:29:18
[2026-06-19 01:29:18,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:29:18,890.890 INFO    ] Initializing speech engine...
[2026-06-19 01:29:18,900.900 INFO    ] 2026-06-19 01:29:18
[2026-06-19 01:29:19,149.149 INFO    ] 2026-06-19 01:29:19
[2026-06-19 01:29:19,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:29:19,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:29:19,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:29:19,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:29:19,628.628 INFO    ] time= 19/06/2026 01:29:19
[2026-06-19 01:29:19,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:29:19,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:29:19,770.770 INFO    ] No existing commands found in stream
[2026-06-19 01:29:24,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:29:24,785.785 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 01:29:26,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:29:26,230.230 INFO    ] Checking for system updates...
[2026-06-19 01:29:26,268.268 INFO    ] 200
[2026-06-19 01:29:26,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:26,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:29:26,339.339 INFO    ] No update needed
[2026-06-19 01:29:26,342.342 INFO    ] Checking for camera pi updates...
[2026-06-19 01:29:26,381.381 INFO    ] 200
[2026-06-19 01:29:26,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:26,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:29:26,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:29:26,478.478 INFO    ] No camera update needed
[2026-06-19 01:29:26,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:29:26,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:29:26,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:29:26,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:29:28,537.537 INFO    ] ================================================
[2026-06-19 01:29:28,553.553 INFO    ] Launching Daemon at Fri Jun 19 01:29:28 IST 2026
[2026-06-19 01:29:28,564.564 INFO    ] ================================================
[2026-06-19 01:29:29,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:29:29
[2026-06-19 01:29:29,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:29:29,968.968 INFO    ] Initializing speech engine...
[2026-06-19 01:29:29,981.981 INFO    ] 2026-06-19 01:29:29
[2026-06-19 01:29:30,249.249 INFO    ] 2026-06-19 01:29:30
[2026-06-19 01:29:30,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:29:30,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:29:30,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:29:30,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:29:30,592.592 INFO    ] time= 19/06/2026 01:29:30
[2026-06-19 01:29:30,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:29:30,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:29:30,704.704 INFO    ] No existing commands found in stream
[2026-06-19 01:29:35,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:29:35,720.720 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 01:29:39,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:29:39,740.740 INFO    ] Checking for system updates...
[2026-06-19 01:29:39,777.777 INFO    ] 200
[2026-06-19 01:29:39,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:39,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:29:39,837.837 INFO    ] No update needed
[2026-06-19 01:29:39,840.840 INFO    ] Checking for camera pi updates...
[2026-06-19 01:29:39,875.875 INFO    ] 200
[2026-06-19 01:29:39,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:39,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:29:39,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:29:39,982.982 INFO    ] No camera update needed
[2026-06-19 01:29:39,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:29:39,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:29:39,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:29:40,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:29:42,044.044 INFO    ] ================================================
[2026-06-19 01:29:42,060.060 INFO    ] Launching Daemon at Fri Jun 19 01:29:42 IST 2026
[2026-06-19 01:29:42,071.071 INFO    ] ================================================
[2026-06-19 01:29:42,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:29:42
[2026-06-19 01:29:43,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:29:43,640.640 INFO    ] Initializing speech engine...
[2026-06-19 01:29:43,648.648 INFO    ] 2026-06-19 01:29:43
[2026-06-19 01:29:43,925.925 INFO    ] 2026-06-19 01:29:43
[2026-06-19 01:29:43,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:29:44,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:29:44,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:29:44,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:29:44,416.416 INFO    ] time= 19/06/2026 01:29:44
[2026-06-19 01:29:44,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:29:44,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:29:44,560.560 INFO    ] No existing commands found in stream
[2026-06-19 01:29:49,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:29:49,577.577 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 01:29:53,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:29:53,364.364 INFO    ] Checking for system updates...
[2026-06-19 01:29:53,408.408 INFO    ] 200
[2026-06-19 01:29:53,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:53,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:29:53,481.481 INFO    ] No update needed
[2026-06-19 01:29:53,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 01:29:53,520.520 INFO    ] 200
[2026-06-19 01:29:53,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:29:53,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:29:53,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:29:53,619.619 INFO    ] No camera update needed
[2026-06-19 01:29:53,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:29:53,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:29:53,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:29:53,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:29:55,675.675 INFO    ] ================================================
[2026-06-19 01:29:55,691.691 INFO    ] Launching Daemon at Fri Jun 19 01:29:55 IST 2026
[2026-06-19 01:29:55,703.703 INFO    ] ================================================
[2026-06-19 01:29:56,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:29:56
[2026-06-19 01:29:57,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:29:57,348.348 INFO    ] Initializing speech engine...
[2026-06-19 01:29:57,357.357 INFO    ] 2026-06-19 01:29:57
[2026-06-19 01:29:57,654.654 INFO    ] 2026-06-19 01:29:57
[2026-06-19 01:29:57,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:29:57,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:29:57,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:29:58,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:29:58,146.146 INFO    ] time= 19/06/2026 01:29:58
[2026-06-19 01:29:58,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:29:58,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:29:58,352.352 INFO    ] No existing commands found in stream
[2026-06-19 01:30:03,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:30:03,387.387 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 01:30:09,250.250 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:30:09,253.253 INFO    ] Checking for system updates...
[2026-06-19 01:30:09,291.291 INFO    ] 200
[2026-06-19 01:30:09,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:09,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:30:09,368.368 INFO    ] No update needed
[2026-06-19 01:30:09,371.371 INFO    ] Checking for camera pi updates...
[2026-06-19 01:30:09,413.413 INFO    ] 200
[2026-06-19 01:30:09,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:09,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:30:09,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:30:09,620.620 INFO    ] No camera update needed
[2026-06-19 01:30:09,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:30:09,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:30:09,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:30:09,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:30:11,681.681 INFO    ] ================================================
[2026-06-19 01:30:11,698.698 INFO    ] Launching Daemon at Fri Jun 19 01:30:11 IST 2026
[2026-06-19 01:30:11,709.709 INFO    ] ================================================
[2026-06-19 01:30:12,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:30:12
[2026-06-19 01:30:13,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:30:13,296.296 INFO    ] Initializing speech engine...
[2026-06-19 01:30:13,305.305 INFO    ] 2026-06-19 01:30:13
[2026-06-19 01:30:13,567.567 INFO    ] 2026-06-19 01:30:13
[2026-06-19 01:30:13,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:30:13,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:30:13,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:30:14,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:30:14,007.007 INFO    ] time= 19/06/2026 01:30:14
[2026-06-19 01:30:14,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:30:14,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:30:14,163.163 INFO    ] No existing commands found in stream
[2026-06-19 01:30:19,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:30:19,182.182 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 01:30:22,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:30:22,614.614 INFO    ] Checking for system updates...
[2026-06-19 01:30:22,655.655 INFO    ] 200
[2026-06-19 01:30:22,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:22,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:30:22,721.721 INFO    ] No update needed
[2026-06-19 01:30:22,723.723 INFO    ] Checking for camera pi updates...
[2026-06-19 01:30:22,763.763 INFO    ] 200
[2026-06-19 01:30:22,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:22,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:30:22,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:30:22,861.861 INFO    ] No camera update needed
[2026-06-19 01:30:22,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:30:22,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:30:22,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:30:22,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:30:24,917.917 INFO    ] ================================================
[2026-06-19 01:30:24,932.932 INFO    ] Launching Daemon at Fri Jun 19 01:30:24 IST 2026
[2026-06-19 01:30:24,944.944 INFO    ] ================================================
[2026-06-19 01:30:25,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:30:25
[2026-06-19 01:30:26,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:30:26,404.404 INFO    ] Initializing speech engine...
[2026-06-19 01:30:26,413.413 INFO    ] 2026-06-19 01:30:26
[2026-06-19 01:30:26,664.664 INFO    ] 2026-06-19 01:30:26
[2026-06-19 01:30:26,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:30:26,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:30:26,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:30:27,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:30:27,148.148 INFO    ] time= 19/06/2026 01:30:27
[2026-06-19 01:30:27,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:30:27,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:30:27,287.287 INFO    ] No existing commands found in stream
[2026-06-19 01:30:32,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:30:32,297.297 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 01:30:33,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:30:33,806.806 INFO    ] Checking for system updates...
[2026-06-19 01:30:33,843.843 INFO    ] 200
[2026-06-19 01:30:33,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:33,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:30:33,907.907 INFO    ] No update needed
[2026-06-19 01:30:33,910.910 INFO    ] Checking for camera pi updates...
[2026-06-19 01:30:33,944.944 INFO    ] 200
[2026-06-19 01:30:33,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:33,988.988 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:30:34,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:30:34,034.034 INFO    ] No camera update needed
[2026-06-19 01:30:34,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:30:34,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:30:34,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:30:34,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:30:36,091.091 INFO    ] ================================================
[2026-06-19 01:30:36,107.107 INFO    ] Launching Daemon at Fri Jun 19 01:30:36 IST 2026
[2026-06-19 01:30:36,118.118 INFO    ] ================================================
[2026-06-19 01:30:36,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:30:36
[2026-06-19 01:30:37,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:30:37,558.558 INFO    ] Initializing speech engine...
[2026-06-19 01:30:37,566.566 INFO    ] 2026-06-19 01:30:37
[2026-06-19 01:30:37,814.814 INFO    ] 2026-06-19 01:30:37
[2026-06-19 01:30:37,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:30:38,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:30:38,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:30:38,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:30:38,182.182 INFO    ] time= 19/06/2026 01:30:38
[2026-06-19 01:30:38,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:30:38,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:30:38,257.257 INFO    ] No existing commands found in stream
[2026-06-19 01:30:43,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:30:43,272.272 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 01:30:47,022.022 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:30:47,025.025 INFO    ] Checking for system updates...
[2026-06-19 01:30:47,063.063 INFO    ] 200
[2026-06-19 01:30:47,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:47,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:30:47,120.120 INFO    ] No update needed
[2026-06-19 01:30:47,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 01:30:47,156.156 INFO    ] 200
[2026-06-19 01:30:47,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:47,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:30:47,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:30:47,232.232 INFO    ] No camera update needed
[2026-06-19 01:30:47,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:30:47,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:30:47,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:30:47,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:30:49,287.287 INFO    ] ================================================
[2026-06-19 01:30:49,303.303 INFO    ] Launching Daemon at Fri Jun 19 01:30:49 IST 2026
[2026-06-19 01:30:49,313.313 INFO    ] ================================================
[2026-06-19 01:30:49,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:30:49
[2026-06-19 01:30:50,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:30:50,737.737 INFO    ] Initializing speech engine...
[2026-06-19 01:30:50,747.747 INFO    ] 2026-06-19 01:30:50
[2026-06-19 01:30:51,003.003 INFO    ] 2026-06-19 01:30:50
[2026-06-19 01:30:51,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:30:51,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:30:51,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:30:51,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:30:51,443.443 INFO    ] time= 19/06/2026 01:30:51
[2026-06-19 01:30:51,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:30:51,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:30:51,610.610 INFO    ] No existing commands found in stream
[2026-06-19 01:30:56,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:30:56,624.624 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 01:30:58,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:30:58,275.275 INFO    ] Checking for system updates...
[2026-06-19 01:30:58,316.316 INFO    ] 200
[2026-06-19 01:30:58,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:58,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:30:58,381.381 INFO    ] No update needed
[2026-06-19 01:30:58,384.384 INFO    ] Checking for camera pi updates...
[2026-06-19 01:30:58,422.422 INFO    ] 200
[2026-06-19 01:30:58,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:30:58,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:30:58,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:30:58,520.520 INFO    ] No camera update needed
[2026-06-19 01:30:58,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:30:58,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:30:58,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:30:58,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:31:00,576.576 INFO    ] ================================================
[2026-06-19 01:31:00,591.591 INFO    ] Launching Daemon at Fri Jun 19 01:31:00 IST 2026
[2026-06-19 01:31:00,602.602 INFO    ] ================================================
[2026-06-19 01:31:01,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:31:01
[2026-06-19 01:31:01,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:31:02,303.303 INFO    ] Initializing speech engine...
[2026-06-19 01:31:02,310.310 INFO    ] 2026-06-19 01:31:02
[2026-06-19 01:31:02,602.602 INFO    ] 2026-06-19 01:31:02
[2026-06-19 01:31:02,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:31:02,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:31:02,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:31:03,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:31:03,108.108 INFO    ] time= 19/06/2026 01:31:03
[2026-06-19 01:31:03,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:31:03,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:31:03,260.260 INFO    ] No existing commands found in stream
[2026-06-19 01:31:08,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:31:08,273.273 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 01:31:10,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:31:10,891.891 INFO    ] Checking for system updates...
[2026-06-19 01:31:10,927.927 INFO    ] 200
[2026-06-19 01:31:10,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:31:10,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:31:10,983.983 INFO    ] No update needed
[2026-06-19 01:31:10,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 01:31:11,020.020 INFO    ] 200
[2026-06-19 01:31:11,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:31:11,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:31:11,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:31:11,119.119 INFO    ] No camera update needed
[2026-06-19 01:31:11,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:31:11,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:31:11,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:31:11,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:31:13,174.174 INFO    ] ================================================
[2026-06-19 01:31:13,190.190 INFO    ] Launching Daemon at Fri Jun 19 01:31:13 IST 2026
[2026-06-19 01:31:13,200.200 INFO    ] ================================================
[2026-06-19 01:31:13,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:31:13
[2026-06-19 01:31:14,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:31:14,660.660 INFO    ] Initializing speech engine...
[2026-06-19 01:31:14,667.667 INFO    ] 2026-06-19 01:31:14
[2026-06-19 01:31:14,934.934 INFO    ] 2026-06-19 01:31:14
[2026-06-19 01:31:14,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:31:15,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:31:15,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:31:15,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:31:15,320.320 INFO    ] time= 19/06/2026 01:31:15
[2026-06-19 01:31:15,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:31:15,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:31:15,446.446 INFO    ] No existing commands found in stream
[2026-06-19 01:31:20,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:31:20,461.461 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 01:31:23,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:31:23,829.829 INFO    ] Checking for system updates...
[2026-06-19 01:31:23,865.865 INFO    ] 200
[2026-06-19 01:31:23,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:31:23,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:31:23,930.930 INFO    ] No update needed
[2026-06-19 01:31:23,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 01:31:23,966.966 INFO    ] 200
[2026-06-19 01:31:23,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:31:24,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:31:24,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:31:24,065.065 INFO    ] No camera update needed
[2026-06-19 01:31:24,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:31:24,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:31:24,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:31:24,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:31:26,120.120 INFO    ] ================================================
[2026-06-19 01:31:26,136.136 INFO    ] Launching Daemon at Fri Jun 19 01:31:26 IST 2026
[2026-06-19 01:31:26,146.146 INFO    ] ================================================
[2026-06-19 01:31:26,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:31:26
[2026-06-19 01:31:27,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:31:27,703.703 INFO    ] Initializing speech engine...
[2026-06-19 01:31:27,712.712 INFO    ] 2026-06-19 01:31:27
[2026-06-19 01:31:27,979.979 INFO    ] 2026-06-19 01:31:27
[2026-06-19 01:31:28,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:31:28,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:31:28,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:31:28,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:31:28,437.437 INFO    ] time= 19/06/2026 01:31:28
[2026-06-19 01:31:28,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:31:28,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:31:28,606.606 INFO    ] No existing commands found in stream
[2026-06-19 01:31:33,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:31:33,620.620 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 01:31:35,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:31:35,149.149 INFO    ] Checking for system updates...
[2026-06-19 01:31:35,200.200 INFO    ] 200
[2026-06-19 01:31:35,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:31:35,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:31:35,263.263 INFO    ] No update needed
[2026-06-19 01:31:35,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 01:31:35,301.301 INFO    ] 200
[2026-06-19 01:31:35,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:31:35,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:31:35,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:31:35,408.408 INFO    ] No camera update needed
[2026-06-19 01:31:35,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:31:35,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:31:35,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:31:35,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:31:37,467.467 INFO    ] ================================================
[2026-06-19 01:31:37,482.482 INFO    ] Launching Daemon at Fri Jun 19 01:31:37 IST 2026
[2026-06-19 01:31:37,493.493 INFO    ] ================================================
[2026-06-19 01:31:38,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:31:38
[2026-06-19 01:31:38,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:31:38,969.969 INFO    ] Initializing speech engine...
[2026-06-19 01:31:38,978.978 INFO    ] 2026-06-19 01:31:38
[2026-06-19 01:31:39,229.229 INFO    ] 2026-06-19 01:31:39
[2026-06-19 01:31:39,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:31:39,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:31:39,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:31:39,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:31:39,711.711 INFO    ] time= 19/06/2026 01:31:39
[2026-06-19 01:31:39,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:31:39,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:31:39,859.859 INFO    ] No existing commands found in stream
[2026-06-19 01:31:44,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:31:44,874.874 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 01:31:48,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:31:48,603.603 INFO    ] Checking for system updates...
[2026-06-19 01:31:48,644.644 INFO    ] 200
[2026-06-19 01:31:48,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 01:31:48,649.649 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 01:31:48,652.652 INFO    ] Checking for camera pi updates...
[2026-06-19 01:31:48,692.692 INFO    ] 200
[2026-06-19 01:31:48,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 01:31:48,698.698 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 01:31:48,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:31:48,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:31:48,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:31:48,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:31:50,756.756 INFO    ] ================================================
[2026-06-19 01:31:50,771.771 INFO    ] Launching Daemon at Fri Jun 19 01:31:50 IST 2026
[2026-06-19 01:31:50,782.782 INFO    ] ================================================
[2026-06-19 01:31:51,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:31:51
[2026-06-19 01:31:52,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:31:53,000.000 INFO    ] Initializing speech engine...
[2026-06-19 01:31:53,007.007 INFO    ] 2026-06-19 01:31:53
[2026-06-19 01:31:53,455.455 INFO    ] 2026-06-19 01:31:53
[2026-06-19 01:31:53,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:31:53,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:31:53,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:31:53,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:31:53,992.992 INFO    ] time= 19/06/2026 01:31:53
[2026-06-19 01:31:53,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:31:54,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:31:54,073.073 INFO    ] No existing commands found in stream
[2026-06-19 01:31:59,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:31:59,087.087 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 01:32:00,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:32:00,359.359 INFO    ] Checking for system updates...
[2026-06-19 01:32:00,399.399 INFO    ] 200
[2026-06-19 01:32:00,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:00,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:32:00,467.467 INFO    ] No update needed
[2026-06-19 01:32:00,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 01:32:00,509.509 INFO    ] 200
[2026-06-19 01:32:00,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:00,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:32:00,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:32:00,612.612 INFO    ] No camera update needed
[2026-06-19 01:32:00,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:32:00,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:32:00,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:32:00,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:32:02,681.681 INFO    ] ================================================
[2026-06-19 01:32:02,698.698 INFO    ] Launching Daemon at Fri Jun 19 01:32:02 IST 2026
[2026-06-19 01:32:02,715.715 INFO    ] ================================================
[2026-06-19 01:32:03,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:32:03
[2026-06-19 01:32:03,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:32:04,252.252 INFO    ] Initializing speech engine...
[2026-06-19 01:32:04,259.259 INFO    ] 2026-06-19 01:32:04
[2026-06-19 01:32:04,560.560 INFO    ] 2026-06-19 01:32:04
[2026-06-19 01:32:04,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:32:04,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:32:04,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:32:04,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:32:04,967.967 INFO    ] time= 19/06/2026 01:32:04
[2026-06-19 01:32:04,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:32:04,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:32:05,076.076 INFO    ] No existing commands found in stream
[2026-06-19 01:32:10,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:32:10,091.091 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 01:32:14,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:32:14,302.302 INFO    ] Checking for system updates...
[2026-06-19 01:32:14,338.338 INFO    ] 200
[2026-06-19 01:32:14,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:14,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:32:14,396.396 INFO    ] No update needed
[2026-06-19 01:32:14,398.398 INFO    ] Checking for camera pi updates...
[2026-06-19 01:32:14,433.433 INFO    ] 200
[2026-06-19 01:32:14,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:14,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:32:14,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:32:14,621.621 INFO    ] No camera update needed
[2026-06-19 01:32:14,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:32:14,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:32:14,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:32:14,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:32:16,677.677 INFO    ] ================================================
[2026-06-19 01:32:16,693.693 INFO    ] Launching Daemon at Fri Jun 19 01:32:16 IST 2026
[2026-06-19 01:32:16,704.704 INFO    ] ================================================
[2026-06-19 01:32:17,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:32:17
[2026-06-19 01:32:17,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:32:18,182.182 INFO    ] Initializing speech engine...
[2026-06-19 01:32:18,192.192 INFO    ] 2026-06-19 01:32:18
[2026-06-19 01:32:18,465.465 INFO    ] 2026-06-19 01:32:18
[2026-06-19 01:32:18,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:32:18,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:32:18,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:32:18,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:32:18,950.950 INFO    ] time= 19/06/2026 01:32:18
[2026-06-19 01:32:18,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:32:19,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:32:19,095.095 INFO    ] No existing commands found in stream
[2026-06-19 01:32:24,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:32:24,110.110 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 01:32:25,760.760 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:32:25,763.763 INFO    ] Checking for system updates...
[2026-06-19 01:32:25,802.802 INFO    ] 200
[2026-06-19 01:32:25,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:25,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:32:25,859.859 INFO    ] No update needed
[2026-06-19 01:32:25,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 01:32:25,897.897 INFO    ] 200
[2026-06-19 01:32:25,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:25,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:32:25,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:32:25,999.999 INFO    ] No camera update needed
[2026-06-19 01:32:26,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:32:26,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:32:26,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:32:26,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:32:28,057.057 INFO    ] ================================================
[2026-06-19 01:32:28,073.073 INFO    ] Launching Daemon at Fri Jun 19 01:32:28 IST 2026
[2026-06-19 01:32:28,084.084 INFO    ] ================================================
[2026-06-19 01:32:28,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:32:28
[2026-06-19 01:32:29,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:32:29,493.493 INFO    ] Initializing speech engine...
[2026-06-19 01:32:29,502.502 INFO    ] 2026-06-19 01:32:29
[2026-06-19 01:32:29,778.778 INFO    ] 2026-06-19 01:32:29
[2026-06-19 01:32:29,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:32:30,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:32:30,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:32:30,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:32:30,156.156 INFO    ] time= 19/06/2026 01:32:30
[2026-06-19 01:32:30,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:32:30,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:32:30,235.235 INFO    ] No existing commands found in stream
[2026-06-19 01:32:35,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:32:35,253.253 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 01:32:35,673.673 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:32:35,675.675 INFO    ] Checking for system updates...
[2026-06-19 01:32:35,723.723 INFO    ] 200
[2026-06-19 01:32:35,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:35,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:32:35,788.788 INFO    ] No update needed
[2026-06-19 01:32:35,791.791 INFO    ] Checking for camera pi updates...
[2026-06-19 01:32:35,829.829 INFO    ] 200
[2026-06-19 01:32:35,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:35,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:32:35,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:32:35,925.925 INFO    ] No camera update needed
[2026-06-19 01:32:35,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:32:35,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:32:35,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:32:35,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:32:37,981.981 INFO    ] ================================================
[2026-06-19 01:32:38,997.997 INFO    ] Launching Daemon at Fri Jun 19 01:32:37 IST 2026
[2026-06-19 01:32:38,008.008 INFO    ] ================================================
[2026-06-19 01:32:38,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:32:38
[2026-06-19 01:32:39,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:32:39,444.444 INFO    ] Initializing speech engine...
[2026-06-19 01:32:39,454.454 INFO    ] 2026-06-19 01:32:39
[2026-06-19 01:32:39,700.700 INFO    ] 2026-06-19 01:32:39
[2026-06-19 01:32:39,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:32:39,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:32:39,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:32:40,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:32:40,068.068 INFO    ] time= 19/06/2026 01:32:40
[2026-06-19 01:32:40,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:32:40,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:32:40,143.143 INFO    ] No existing commands found in stream
[2026-06-19 01:32:45,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:32:45,163.163 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 01:32:48,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:32:48,006.006 INFO    ] Checking for system updates...
[2026-06-19 01:32:48,042.042 INFO    ] 200
[2026-06-19 01:32:48,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:48,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:32:48,107.107 INFO    ] No update needed
[2026-06-19 01:32:48,110.110 INFO    ] Checking for camera pi updates...
[2026-06-19 01:32:48,154.154 INFO    ] 200
[2026-06-19 01:32:48,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:32:48,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:32:48,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:32:48,230.230 INFO    ] No camera update needed
[2026-06-19 01:32:48,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:32:48,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:32:48,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:32:48,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:32:50,286.286 INFO    ] ================================================
[2026-06-19 01:32:50,302.302 INFO    ] Launching Daemon at Fri Jun 19 01:32:50 IST 2026
[2026-06-19 01:32:50,313.313 INFO    ] ================================================
[2026-06-19 01:32:50,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:32:50
[2026-06-19 01:32:51,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:32:51,821.821 INFO    ] Initializing speech engine...
[2026-06-19 01:32:51,828.828 INFO    ] 2026-06-19 01:32:51
[2026-06-19 01:32:52,111.111 INFO    ] 2026-06-19 01:32:52
[2026-06-19 01:32:52,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:32:52,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:32:52,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:32:52,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:32:52,579.579 INFO    ] time= 19/06/2026 01:32:52
[2026-06-19 01:32:52,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:32:52,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:32:52,738.738 INFO    ] No existing commands found in stream
[2026-06-19 01:32:57,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:32:57,753.753 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 01:33:01,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:33:01,356.356 INFO    ] Checking for system updates...
[2026-06-19 01:33:01,396.396 INFO    ] 200
[2026-06-19 01:33:01,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:01,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:33:01,470.470 INFO    ] No update needed
[2026-06-19 01:33:01,474.474 INFO    ] Checking for camera pi updates...
[2026-06-19 01:33:01,555.555 INFO    ] 200
[2026-06-19 01:33:01,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:01,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:33:01,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:33:01,699.699 INFO    ] No camera update needed
[2026-06-19 01:33:01,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:33:01,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:33:01,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:33:01,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:33:03,774.774 INFO    ] ================================================
[2026-06-19 01:33:03,789.789 INFO    ] Launching Daemon at Fri Jun 19 01:33:03 IST 2026
[2026-06-19 01:33:03,801.801 INFO    ] ================================================
[2026-06-19 01:33:04,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:33:04
[2026-06-19 01:33:05,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:33:05,275.275 INFO    ] Initializing speech engine...
[2026-06-19 01:33:05,281.281 INFO    ] 2026-06-19 01:33:05
[2026-06-19 01:33:05,533.533 INFO    ] 2026-06-19 01:33:05
[2026-06-19 01:33:05,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:33:05,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:33:05,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:33:05,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:33:06,000.000 INFO    ] time= 19/06/2026 01:33:05
[2026-06-19 01:33:06,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:33:06,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:33:06,148.148 INFO    ] No existing commands found in stream
[2026-06-19 01:33:11,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:33:11,163.163 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 01:33:12,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:33:12,620.620 INFO    ] Checking for system updates...
[2026-06-19 01:33:12,660.660 INFO    ] 200
[2026-06-19 01:33:12,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:12,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:33:12,717.717 INFO    ] No update needed
[2026-06-19 01:33:12,719.719 INFO    ] Checking for camera pi updates...
[2026-06-19 01:33:12,757.757 INFO    ] 200
[2026-06-19 01:33:12,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:12,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:33:12,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:33:12,864.864 INFO    ] No camera update needed
[2026-06-19 01:33:12,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:33:12,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:33:12,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:33:12,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:33:14,921.921 INFO    ] ================================================
[2026-06-19 01:33:14,937.937 INFO    ] Launching Daemon at Fri Jun 19 01:33:14 IST 2026
[2026-06-19 01:33:14,948.948 INFO    ] ================================================
[2026-06-19 01:33:15,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:33:15
[2026-06-19 01:33:16,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:33:16,353.353 INFO    ] Initializing speech engine...
[2026-06-19 01:33:16,376.376 INFO    ] 2026-06-19 01:33:16
[2026-06-19 01:33:16,631.631 INFO    ] 2026-06-19 01:33:16
[2026-06-19 01:33:16,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:33:16,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:33:16,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:33:16,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:33:17,004.004 INFO    ] time= 19/06/2026 01:33:16
[2026-06-19 01:33:17,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:33:17,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:33:17,087.087 INFO    ] No existing commands found in stream
[2026-06-19 01:33:22,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:33:22,105.105 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 01:33:24,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:33:24,592.592 INFO    ] Checking for system updates...
[2026-06-19 01:33:24,629.629 INFO    ] 200
[2026-06-19 01:33:24,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:24,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:33:24,692.692 INFO    ] No update needed
[2026-06-19 01:33:24,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 01:33:24,728.728 INFO    ] 200
[2026-06-19 01:33:24,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:24,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:33:24,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:33:24,809.809 INFO    ] No camera update needed
[2026-06-19 01:33:24,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:33:24,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:33:24,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:33:24,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:33:26,866.866 INFO    ] ================================================
[2026-06-19 01:33:26,882.882 INFO    ] Launching Daemon at Fri Jun 19 01:33:26 IST 2026
[2026-06-19 01:33:26,893.893 INFO    ] ================================================
[2026-06-19 01:33:27,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:33:27
[2026-06-19 01:33:28,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:33:28,305.305 INFO    ] Initializing speech engine...
[2026-06-19 01:33:28,310.310 INFO    ] 2026-06-19 01:33:28
[2026-06-19 01:33:28,607.607 INFO    ] 2026-06-19 01:33:28
[2026-06-19 01:33:28,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:33:28,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:33:28,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:33:28,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:33:28,966.966 INFO    ] time= 19/06/2026 01:33:28
[2026-06-19 01:33:28,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:33:28,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:33:29,051.051 INFO    ] No existing commands found in stream
[2026-06-19 01:33:34,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:33:34,095.095 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 01:33:38,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:33:38,009.009 INFO    ] Checking for system updates...
[2026-06-19 01:33:38,048.048 INFO    ] 200
[2026-06-19 01:33:38,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:38,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:33:38,106.106 INFO    ] No update needed
[2026-06-19 01:33:38,109.109 INFO    ] Checking for camera pi updates...
[2026-06-19 01:33:38,142.142 INFO    ] 200
[2026-06-19 01:33:38,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:38,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:33:38,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:33:38,245.245 INFO    ] No camera update needed
[2026-06-19 01:33:38,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:33:38,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:33:38,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:33:38,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:33:40,302.302 INFO    ] ================================================
[2026-06-19 01:33:40,318.318 INFO    ] Launching Daemon at Fri Jun 19 01:33:40 IST 2026
[2026-06-19 01:33:40,330.330 INFO    ] ================================================
[2026-06-19 01:33:40,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:33:40
[2026-06-19 01:33:41,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:33:41,750.750 INFO    ] Initializing speech engine...
[2026-06-19 01:33:41,759.759 INFO    ] 2026-06-19 01:33:41
[2026-06-19 01:33:42,024.024 INFO    ] 2026-06-19 01:33:42
[2026-06-19 01:33:42,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:33:42,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:33:42,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:33:42,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:33:42,349.349 INFO    ] time= 19/06/2026 01:33:42
[2026-06-19 01:33:42,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:33:42,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:33:42,464.464 INFO    ] No existing commands found in stream
[2026-06-19 01:33:47,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:33:47,482.482 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 01:33:51,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:33:51,671.671 INFO    ] Checking for system updates...
[2026-06-19 01:33:51,707.707 INFO    ] 200
[2026-06-19 01:33:51,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:51,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:33:51,772.772 INFO    ] No update needed
[2026-06-19 01:33:51,774.774 INFO    ] Checking for camera pi updates...
[2026-06-19 01:33:51,812.812 INFO    ] 200
[2026-06-19 01:33:51,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:33:51,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:33:51,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:33:51,906.906 INFO    ] No camera update needed
[2026-06-19 01:33:51,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:33:51,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:33:51,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:33:51,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:33:53,964.964 INFO    ] ================================================
[2026-06-19 01:33:53,980.980 INFO    ] Launching Daemon at Fri Jun 19 01:33:53 IST 2026
[2026-06-19 01:33:53,991.991 INFO    ] ================================================
[2026-06-19 01:33:54,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:33:54
[2026-06-19 01:33:55,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:33:55,414.414 INFO    ] Initializing speech engine...
[2026-06-19 01:33:55,423.423 INFO    ] 2026-06-19 01:33:55
[2026-06-19 01:33:55,671.671 INFO    ] 2026-06-19 01:33:55
[2026-06-19 01:33:55,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:33:55,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:33:55,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:33:56,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:33:56,172.172 INFO    ] time= 19/06/2026 01:33:56
[2026-06-19 01:33:56,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:33:56,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:33:56,304.304 INFO    ] No existing commands found in stream
[2026-06-19 01:34:01,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:34:01,323.323 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 01:34:02,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:34:02,908.908 INFO    ] Checking for system updates...
[2026-06-19 01:34:02,952.952 INFO    ] 200
[2026-06-19 01:34:02,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:03,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:34:03,025.025 INFO    ] No update needed
[2026-06-19 01:34:03,029.029 INFO    ] Checking for camera pi updates...
[2026-06-19 01:34:03,073.073 INFO    ] 200
[2026-06-19 01:34:03,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:03,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:34:03,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:34:03,165.165 INFO    ] No camera update needed
[2026-06-19 01:34:03,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:34:03,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:34:03,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:34:03,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:34:05,222.222 INFO    ] ================================================
[2026-06-19 01:34:05,238.238 INFO    ] Launching Daemon at Fri Jun 19 01:34:05 IST 2026
[2026-06-19 01:34:05,249.249 INFO    ] ================================================
[2026-06-19 01:34:05,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:34:05
[2026-06-19 01:34:06,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:34:06,711.711 INFO    ] Initializing speech engine...
[2026-06-19 01:34:06,721.721 INFO    ] 2026-06-19 01:34:06
[2026-06-19 01:34:06,966.966 INFO    ] 2026-06-19 01:34:06
[2026-06-19 01:34:07,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:34:07,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:34:07,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:34:07,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:34:07,449.449 INFO    ] time= 19/06/2026 01:34:07
[2026-06-19 01:34:07,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:34:07,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:34:07,632.632 INFO    ] No existing commands found in stream
[2026-06-19 01:34:12,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:34:12,660.660 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 01:34:13,599.599 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:34:13,602.602 INFO    ] Checking for system updates...
[2026-06-19 01:34:13,644.644 INFO    ] 200
[2026-06-19 01:34:13,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:13,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:34:13,706.706 INFO    ] No update needed
[2026-06-19 01:34:13,709.709 INFO    ] Checking for camera pi updates...
[2026-06-19 01:34:13,743.743 INFO    ] 200
[2026-06-19 01:34:13,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:13,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:34:13,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:34:13,835.835 INFO    ] No camera update needed
[2026-06-19 01:34:13,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:34:13,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:34:13,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:34:13,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:34:15,896.896 INFO    ] ================================================
[2026-06-19 01:34:15,911.911 INFO    ] Launching Daemon at Fri Jun 19 01:34:15 IST 2026
[2026-06-19 01:34:15,923.923 INFO    ] ================================================
[2026-06-19 01:34:16,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:34:16
[2026-06-19 01:34:17,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:34:17,390.390 INFO    ] Initializing speech engine...
[2026-06-19 01:34:17,397.397 INFO    ] 2026-06-19 01:34:17
[2026-06-19 01:34:17,659.659 INFO    ] 2026-06-19 01:34:17
[2026-06-19 01:34:17,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:34:17,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:34:17,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:34:18,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:34:18,203.203 INFO    ] time= 19/06/2026 01:34:18
[2026-06-19 01:34:18,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:34:18,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:34:18,343.343 INFO    ] No existing commands found in stream
[2026-06-19 01:34:23,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:34:23,371.371 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-19 01:34:24,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:34:24,581.581 INFO    ] Checking for system updates...
[2026-06-19 01:34:24,622.622 INFO    ] 200
[2026-06-19 01:34:24,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:24,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:34:24,689.689 INFO    ] No update needed
[2026-06-19 01:34:24,692.692 INFO    ] Checking for camera pi updates...
[2026-06-19 01:34:24,730.730 INFO    ] 200
[2026-06-19 01:34:24,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:24,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:34:24,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:34:24,930.930 INFO    ] No camera update needed
[2026-06-19 01:34:24,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:34:24,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:34:24,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:34:24,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:34:26,985.985 INFO    ] ================================================
[2026-06-19 01:34:27,000.000 INFO    ] Launching Daemon at Fri Jun 19 01:34:26 IST 2026
[2026-06-19 01:34:27,012.012 INFO    ] ================================================
[2026-06-19 01:34:27,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:34:27
[2026-06-19 01:34:28,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:34:28,427.427 INFO    ] Initializing speech engine...
[2026-06-19 01:34:28,434.434 INFO    ] 2026-06-19 01:34:28
[2026-06-19 01:34:28,728.728 INFO    ] 2026-06-19 01:34:28
[2026-06-19 01:34:28,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:34:28,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:34:28,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:34:29,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:34:29,101.101 INFO    ] time= 19/06/2026 01:34:29
[2026-06-19 01:34:29,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:34:29,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:34:29,280.280 INFO    ] No existing commands found in stream
[2026-06-19 01:34:34,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:34:34,310.310 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 01:34:38,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:34:38,152.152 INFO    ] Checking for system updates...
[2026-06-19 01:34:38,188.188 INFO    ] 200
[2026-06-19 01:34:38,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:38,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:34:38,247.247 INFO    ] No update needed
[2026-06-19 01:34:38,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 01:34:38,288.288 INFO    ] 200
[2026-06-19 01:34:38,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:38,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:34:38,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:34:38,382.382 INFO    ] No camera update needed
[2026-06-19 01:34:38,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:34:38,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:34:38,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:34:38,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:34:40,444.444 INFO    ] ================================================
[2026-06-19 01:34:40,460.460 INFO    ] Launching Daemon at Fri Jun 19 01:34:40 IST 2026
[2026-06-19 01:34:40,471.471 INFO    ] ================================================
[2026-06-19 01:34:41,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:34:41
[2026-06-19 01:34:41,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:34:41,929.929 INFO    ] Initializing speech engine...
[2026-06-19 01:34:41,937.937 INFO    ] 2026-06-19 01:34:41
[2026-06-19 01:34:42,200.200 INFO    ] 2026-06-19 01:34:42
[2026-06-19 01:34:42,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:34:42,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:34:42,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:34:42,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:34:42,668.668 INFO    ] time= 19/06/2026 01:34:42
[2026-06-19 01:34:42,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:34:42,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:34:42,814.814 INFO    ] No existing commands found in stream
[2026-06-19 01:34:47,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:34:47,832.832 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 01:34:50,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:34:50,039.039 INFO    ] Checking for system updates...
[2026-06-19 01:34:50,076.076 INFO    ] 200
[2026-06-19 01:34:50,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:50,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:34:50,133.133 INFO    ] No update needed
[2026-06-19 01:34:50,136.136 INFO    ] Checking for camera pi updates...
[2026-06-19 01:34:50,170.170 INFO    ] 200
[2026-06-19 01:34:50,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:34:50,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:34:50,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:34:50,270.270 INFO    ] No camera update needed
[2026-06-19 01:34:50,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:34:50,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:34:50,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:34:50,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:34:52,328.328 INFO    ] ================================================
[2026-06-19 01:34:52,344.344 INFO    ] Launching Daemon at Fri Jun 19 01:34:52 IST 2026
[2026-06-19 01:34:52,355.355 INFO    ] ================================================
[2026-06-19 01:34:52,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:34:52
[2026-06-19 01:34:53,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:34:53,786.786 INFO    ] Initializing speech engine...
[2026-06-19 01:34:53,796.796 INFO    ] 2026-06-19 01:34:53
[2026-06-19 01:34:54,046.046 INFO    ] 2026-06-19 01:34:54
[2026-06-19 01:34:54,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:34:54,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:34:54,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:34:54,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:34:54,421.421 INFO    ] time= 19/06/2026 01:34:54
[2026-06-19 01:34:54,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:34:54,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:34:54,501.501 INFO    ] No existing commands found in stream
[2026-06-19 01:34:59,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:34:59,533.533 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 01:35:00,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:35:00,590.590 INFO    ] Checking for system updates...
[2026-06-19 01:35:00,626.626 INFO    ] 200
[2026-06-19 01:35:00,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:00,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:35:00,692.692 INFO    ] No update needed
[2026-06-19 01:35:00,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 01:35:00,733.733 INFO    ] 200
[2026-06-19 01:35:00,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:00,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:35:00,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:35:00,828.828 INFO    ] No camera update needed
[2026-06-19 01:35:00,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:35:00,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:35:00,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:35:00,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:35:02,886.886 INFO    ] ================================================
[2026-06-19 01:35:02,906.906 INFO    ] Launching Daemon at Fri Jun 19 01:35:02 IST 2026
[2026-06-19 01:35:02,919.919 INFO    ] ================================================
[2026-06-19 01:35:03,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:35:03
[2026-06-19 01:35:04,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:35:04,402.402 INFO    ] Initializing speech engine...
[2026-06-19 01:35:04,407.407 INFO    ] 2026-06-19 01:35:04
[2026-06-19 01:35:04,671.671 INFO    ] 2026-06-19 01:35:04
[2026-06-19 01:35:04,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:35:04,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:35:04,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:35:05,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:35:05,135.135 INFO    ] time= 19/06/2026 01:35:05
[2026-06-19 01:35:05,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:35:05,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:35:05,285.285 INFO    ] No existing commands found in stream
[2026-06-19 01:35:10,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:35:10,299.299 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 01:35:14,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:35:14,493.493 INFO    ] Checking for system updates...
[2026-06-19 01:35:14,536.536 INFO    ] 200
[2026-06-19 01:35:14,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:14,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:35:14,605.605 INFO    ] No update needed
[2026-06-19 01:35:14,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 01:35:14,650.650 INFO    ] 200
[2026-06-19 01:35:14,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:14,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:35:14,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:35:14,758.758 INFO    ] No camera update needed
[2026-06-19 01:35:14,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:35:14,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:35:14,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:35:14,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:35:16,821.821 INFO    ] ================================================
[2026-06-19 01:35:16,838.838 INFO    ] Launching Daemon at Fri Jun 19 01:35:16 IST 2026
[2026-06-19 01:35:16,850.850 INFO    ] ================================================
[2026-06-19 01:35:17,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:35:17
[2026-06-19 01:35:18,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:35:18,390.390 INFO    ] Initializing speech engine...
[2026-06-19 01:35:18,404.404 INFO    ] 2026-06-19 01:35:18
[2026-06-19 01:35:18,709.709 INFO    ] 2026-06-19 01:35:18
[2026-06-19 01:35:18,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:35:18,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:35:18,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:35:19,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:35:19,064.064 INFO    ] time= 19/06/2026 01:35:19
[2026-06-19 01:35:19,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:35:19,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:35:19,156.156 INFO    ] No existing commands found in stream
[2026-06-19 01:35:24,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:35:24,171.171 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 01:35:25,140.140 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:35:25,143.143 INFO    ] Checking for system updates...
[2026-06-19 01:35:25,179.179 INFO    ] 200
[2026-06-19 01:35:25,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:25,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:35:25,237.237 INFO    ] No update needed
[2026-06-19 01:35:25,239.239 INFO    ] Checking for camera pi updates...
[2026-06-19 01:35:25,273.273 INFO    ] 200
[2026-06-19 01:35:25,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:25,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:35:25,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:35:25,367.367 INFO    ] No camera update needed
[2026-06-19 01:35:25,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:35:25,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:35:25,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:35:25,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:35:27,423.423 INFO    ] ================================================
[2026-06-19 01:35:27,439.439 INFO    ] Launching Daemon at Fri Jun 19 01:35:27 IST 2026
[2026-06-19 01:35:27,451.451 INFO    ] ================================================
[2026-06-19 01:35:28,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:35:28
[2026-06-19 01:35:28,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:35:28,893.893 INFO    ] Initializing speech engine...
[2026-06-19 01:35:28,899.899 INFO    ] 2026-06-19 01:35:28
[2026-06-19 01:35:29,185.185 INFO    ] 2026-06-19 01:35:29
[2026-06-19 01:35:29,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:35:29,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:35:29,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:35:29,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:35:29,633.633 INFO    ] time= 19/06/2026 01:35:29
[2026-06-19 01:35:29,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:35:29,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:35:29,818.818 INFO    ] No existing commands found in stream
[2026-06-19 01:35:34,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:35:34,832.832 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 01:35:37,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:35:37,420.420 INFO    ] Checking for system updates...
[2026-06-19 01:35:37,457.457 INFO    ] 200
[2026-06-19 01:35:37,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:37,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:35:37,526.526 INFO    ] No update needed
[2026-06-19 01:35:37,529.529 INFO    ] Checking for camera pi updates...
[2026-06-19 01:35:37,562.562 INFO    ] 200
[2026-06-19 01:35:37,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:37,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:35:37,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:35:37,653.653 INFO    ] No camera update needed
[2026-06-19 01:35:37,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:35:37,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:35:37,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:35:37,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:35:39,710.710 INFO    ] ================================================
[2026-06-19 01:35:39,725.725 INFO    ] Launching Daemon at Fri Jun 19 01:35:39 IST 2026
[2026-06-19 01:35:39,736.736 INFO    ] ================================================
[2026-06-19 01:35:40,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:35:40
[2026-06-19 01:35:40,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:35:41,136.136 INFO    ] Initializing speech engine...
[2026-06-19 01:35:41,151.151 INFO    ] 2026-06-19 01:35:41
[2026-06-19 01:35:41,416.416 INFO    ] 2026-06-19 01:35:41
[2026-06-19 01:35:41,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:35:41,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:35:41,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:35:41,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:35:41,982.982 INFO    ] time= 19/06/2026 01:35:41
[2026-06-19 01:35:41,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:35:41,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:35:42,120.120 INFO    ] No existing commands found in stream
[2026-06-19 01:35:47,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:35:47,153.153 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 01:35:50,074.074 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:35:50,077.077 INFO    ] Checking for system updates...
[2026-06-19 01:35:50,114.114 INFO    ] 200
[2026-06-19 01:35:50,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:50,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:35:50,184.184 INFO    ] No update needed
[2026-06-19 01:35:50,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 01:35:50,220.220 INFO    ] 200
[2026-06-19 01:35:50,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:35:50,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:35:50,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:35:50,323.323 INFO    ] No camera update needed
[2026-06-19 01:35:50,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:35:50,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:35:50,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:35:50,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:35:52,379.379 INFO    ] ================================================
[2026-06-19 01:35:52,395.395 INFO    ] Launching Daemon at Fri Jun 19 01:35:52 IST 2026
[2026-06-19 01:35:52,406.406 INFO    ] ================================================
[2026-06-19 01:35:52,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:35:52
[2026-06-19 01:35:53,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:35:53,851.851 INFO    ] Initializing speech engine...
[2026-06-19 01:35:53,858.858 INFO    ] 2026-06-19 01:35:53
[2026-06-19 01:35:54,114.114 INFO    ] 2026-06-19 01:35:54
[2026-06-19 01:35:54,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:35:54,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:35:54,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:35:54,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:35:54,546.546 INFO    ] time= 19/06/2026 01:35:54
[2026-06-19 01:35:54,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:35:54,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:35:54,722.722 INFO    ] No existing commands found in stream
[2026-06-19 01:35:59,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:35:59,737.737 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 01:36:01,292.292 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:36:01,298.298 INFO    ] Checking for system updates...
[2026-06-19 01:36:01,378.378 INFO    ] 200
[2026-06-19 01:36:01,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:01,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:36:01,496.496 INFO    ] No update needed
[2026-06-19 01:36:01,499.499 INFO    ] Checking for camera pi updates...
[2026-06-19 01:36:01,566.566 INFO    ] 200
[2026-06-19 01:36:01,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:01,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:36:01,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:36:01,695.695 INFO    ] No camera update needed
[2026-06-19 01:36:01,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:36:01,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:36:01,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:36:01,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:36:03,758.758 INFO    ] ================================================
[2026-06-19 01:36:03,774.774 INFO    ] Launching Daemon at Fri Jun 19 01:36:03 IST 2026
[2026-06-19 01:36:03,784.784 INFO    ] ================================================
[2026-06-19 01:36:04,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:36:04
[2026-06-19 01:36:04,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:36:05,246.246 INFO    ] Initializing speech engine...
[2026-06-19 01:36:05,260.260 INFO    ] 2026-06-19 01:36:05
[2026-06-19 01:36:05,547.547 INFO    ] 2026-06-19 01:36:05
[2026-06-19 01:36:05,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:36:05,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:36:05,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:36:05,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:36:05,932.932 INFO    ] time= 19/06/2026 01:36:05
[2026-06-19 01:36:05,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:36:05,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:36:06,050.050 INFO    ] No existing commands found in stream
[2026-06-19 01:36:11,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:36:11,079.079 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 01:36:13,975.975 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:36:13,978.978 INFO    ] Checking for system updates...
[2026-06-19 01:36:14,018.018 INFO    ] 200
[2026-06-19 01:36:14,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:14,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:36:14,076.076 INFO    ] No update needed
[2026-06-19 01:36:14,079.079 INFO    ] Checking for camera pi updates...
[2026-06-19 01:36:14,116.116 INFO    ] 200
[2026-06-19 01:36:14,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:14,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:36:14,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:36:14,213.213 INFO    ] No camera update needed
[2026-06-19 01:36:14,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:36:14,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:36:14,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:36:14,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:36:16,277.277 INFO    ] ================================================
[2026-06-19 01:36:16,293.293 INFO    ] Launching Daemon at Fri Jun 19 01:36:16 IST 2026
[2026-06-19 01:36:16,304.304 INFO    ] ================================================
[2026-06-19 01:36:16,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:36:16
[2026-06-19 01:36:17,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:36:17,768.768 INFO    ] Initializing speech engine...
[2026-06-19 01:36:17,775.775 INFO    ] 2026-06-19 01:36:17
[2026-06-19 01:36:18,035.035 INFO    ] 2026-06-19 01:36:18
[2026-06-19 01:36:18,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:36:18,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:36:18,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:36:18,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:36:18,502.502 INFO    ] time= 19/06/2026 01:36:18
[2026-06-19 01:36:18,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:36:18,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:36:18,647.647 INFO    ] No existing commands found in stream
[2026-06-19 01:36:23,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:36:23,664.664 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-19 01:36:24,854.854 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:36:24,857.857 INFO    ] Checking for system updates...
[2026-06-19 01:36:24,897.897 INFO    ] 200
[2026-06-19 01:36:24,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:24,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:36:24,954.954 INFO    ] No update needed
[2026-06-19 01:36:24,957.957 INFO    ] Checking for camera pi updates...
[2026-06-19 01:36:24,991.991 INFO    ] 200
[2026-06-19 01:36:24,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:25,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:36:25,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:36:25,090.090 INFO    ] No camera update needed
[2026-06-19 01:36:25,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:36:25,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:36:25,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:36:25,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:36:27,146.146 INFO    ] ================================================
[2026-06-19 01:36:27,161.161 INFO    ] Launching Daemon at Fri Jun 19 01:36:27 IST 2026
[2026-06-19 01:36:27,172.172 INFO    ] ================================================
[2026-06-19 01:36:27,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:36:27
[2026-06-19 01:36:28,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:36:28,634.634 INFO    ] Initializing speech engine...
[2026-06-19 01:36:28,643.643 INFO    ] 2026-06-19 01:36:28
[2026-06-19 01:36:28,902.902 INFO    ] 2026-06-19 01:36:28
[2026-06-19 01:36:28,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:36:29,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:36:29,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:36:29,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:36:29,375.375 INFO    ] time= 19/06/2026 01:36:29
[2026-06-19 01:36:29,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:36:29,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:36:29,513.513 INFO    ] No existing commands found in stream
[2026-06-19 01:36:34,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:36:34,528.528 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 01:36:38,846.846 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:36:38,849.849 INFO    ] Checking for system updates...
[2026-06-19 01:36:38,885.885 INFO    ] 200
[2026-06-19 01:36:38,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:38,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:36:38,944.944 INFO    ] No update needed
[2026-06-19 01:36:38,946.946 INFO    ] Checking for camera pi updates...
[2026-06-19 01:36:38,981.981 INFO    ] 200
[2026-06-19 01:36:38,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:39,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:36:39,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:36:39,076.076 INFO    ] No camera update needed
[2026-06-19 01:36:39,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:36:39,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:36:39,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:36:39,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:36:41,133.133 INFO    ] ================================================
[2026-06-19 01:36:41,149.149 INFO    ] Launching Daemon at Fri Jun 19 01:36:41 IST 2026
[2026-06-19 01:36:41,159.159 INFO    ] ================================================
[2026-06-19 01:36:41,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:36:41
[2026-06-19 01:36:42,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:36:42,800.800 INFO    ] Initializing speech engine...
[2026-06-19 01:36:42,811.811 INFO    ] 2026-06-19 01:36:42
[2026-06-19 01:36:43,094.094 INFO    ] 2026-06-19 01:36:43
[2026-06-19 01:36:43,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:36:43,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:36:43,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:36:43,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:36:43,546.546 INFO    ] time= 19/06/2026 01:36:43
[2026-06-19 01:36:43,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:36:43,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:36:43,693.693 INFO    ] No existing commands found in stream
[2026-06-19 01:36:48,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:36:48,709.709 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 01:36:49,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:36:49,635.635 INFO    ] Checking for system updates...
[2026-06-19 01:36:49,672.672 INFO    ] 200
[2026-06-19 01:36:49,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:49,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:36:49,740.740 INFO    ] No update needed
[2026-06-19 01:36:49,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 01:36:49,778.778 INFO    ] 200
[2026-06-19 01:36:49,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:36:49,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:36:49,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:36:49,877.877 INFO    ] No camera update needed
[2026-06-19 01:36:49,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:36:49,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:36:49,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:36:49,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:36:51,935.935 INFO    ] ================================================
[2026-06-19 01:36:51,950.950 INFO    ] Launching Daemon at Fri Jun 19 01:36:51 IST 2026
[2026-06-19 01:36:51,962.962 INFO    ] ================================================
[2026-06-19 01:36:52,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:36:52
[2026-06-19 01:36:53,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:36:53,538.538 INFO    ] Initializing speech engine...
[2026-06-19 01:36:53,545.545 INFO    ] 2026-06-19 01:36:53
[2026-06-19 01:36:53,842.842 INFO    ] 2026-06-19 01:36:53
[2026-06-19 01:36:53,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:36:54,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:36:54,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:36:54,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:36:54,228.228 INFO    ] time= 19/06/2026 01:36:54
[2026-06-19 01:36:54,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:36:54,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:36:54,356.356 INFO    ] No existing commands found in stream
[2026-06-19 01:36:59,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:36:59,397.397 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 01:37:01,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:37:01,485.485 INFO    ] Checking for system updates...
[2026-06-19 01:37:01,541.541 INFO    ] 200
[2026-06-19 01:37:01,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:01,609.609 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:37:01,612.612 INFO    ] No update needed
[2026-06-19 01:37:01,616.616 INFO    ] Checking for camera pi updates...
[2026-06-19 01:37:01,655.655 INFO    ] 200
[2026-06-19 01:37:01,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:01,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:37:01,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:37:01,756.756 INFO    ] No camera update needed
[2026-06-19 01:37:01,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:37:01,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:37:01,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:37:01,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:37:03,823.823 INFO    ] ================================================
[2026-06-19 01:37:03,838.838 INFO    ] Launching Daemon at Fri Jun 19 01:37:03 IST 2026
[2026-06-19 01:37:03,849.849 INFO    ] ================================================
[2026-06-19 01:37:04,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:37:04
[2026-06-19 01:37:05,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:37:05,297.297 INFO    ] Initializing speech engine...
[2026-06-19 01:37:05,306.306 INFO    ] 2026-06-19 01:37:05
[2026-06-19 01:37:05,601.601 INFO    ] 2026-06-19 01:37:05
[2026-06-19 01:37:05,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:37:05,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:37:05,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:37:06,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:37:06,024.024 INFO    ] time= 19/06/2026 01:37:06
[2026-06-19 01:37:06,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:37:06,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:37:06,208.208 INFO    ] No existing commands found in stream
[2026-06-19 01:37:11,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:37:11,235.235 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 01:37:13,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:37:13,594.594 INFO    ] Checking for system updates...
[2026-06-19 01:37:13,630.630 INFO    ] 200
[2026-06-19 01:37:13,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:13,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:37:13,687.687 INFO    ] No update needed
[2026-06-19 01:37:13,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 01:37:13,723.723 INFO    ] 200
[2026-06-19 01:37:13,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:13,767.767 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:37:13,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:37:13,822.822 INFO    ] No camera update needed
[2026-06-19 01:37:13,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:37:13,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:37:13,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:37:13,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:37:15,877.877 INFO    ] ================================================
[2026-06-19 01:37:15,893.893 INFO    ] Launching Daemon at Fri Jun 19 01:37:15 IST 2026
[2026-06-19 01:37:15,904.904 INFO    ] ================================================
[2026-06-19 01:37:16,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:37:16
[2026-06-19 01:37:17,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:37:17,521.521 INFO    ] Initializing speech engine...
[2026-06-19 01:37:17,527.527 INFO    ] 2026-06-19 01:37:17
[2026-06-19 01:37:17,831.831 INFO    ] 2026-06-19 01:37:17
[2026-06-19 01:37:17,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:37:18,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:37:18,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:37:18,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:37:18,340.340 INFO    ] time= 19/06/2026 01:37:18
[2026-06-19 01:37:18,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:37:18,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:37:18,492.492 INFO    ] No existing commands found in stream
[2026-06-19 01:37:23,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:37:23,512.512 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 01:37:26,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:37:26,331.331 INFO    ] Checking for system updates...
[2026-06-19 01:37:26,369.369 INFO    ] 200
[2026-06-19 01:37:26,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:26,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:37:26,433.433 INFO    ] No update needed
[2026-06-19 01:37:26,436.436 INFO    ] Checking for camera pi updates...
[2026-06-19 01:37:26,471.471 INFO    ] 200
[2026-06-19 01:37:26,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:26,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:37:26,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:37:26,573.573 INFO    ] No camera update needed
[2026-06-19 01:37:26,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:37:26,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:37:26,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:37:26,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:37:28,633.633 INFO    ] ================================================
[2026-06-19 01:37:28,648.648 INFO    ] Launching Daemon at Fri Jun 19 01:37:28 IST 2026
[2026-06-19 01:37:28,659.659 INFO    ] ================================================
[2026-06-19 01:37:29,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:37:29
[2026-06-19 01:37:29,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:37:30,079.079 INFO    ] Initializing speech engine...
[2026-06-19 01:37:30,096.096 INFO    ] 2026-06-19 01:37:30
[2026-06-19 01:37:30,352.352 INFO    ] 2026-06-19 01:37:30
[2026-06-19 01:37:30,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:37:30,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:37:30,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:37:30,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:37:30,816.816 INFO    ] time= 19/06/2026 01:37:30
[2026-06-19 01:37:30,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:37:30,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:37:30,979.979 INFO    ] No existing commands found in stream
[2026-06-19 01:37:35,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:37:35,993.993 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 01:37:36,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:37:36,801.801 INFO    ] Checking for system updates...
[2026-06-19 01:37:36,838.838 INFO    ] 200
[2026-06-19 01:37:36,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:36,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:37:36,897.897 INFO    ] No update needed
[2026-06-19 01:37:36,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 01:37:36,935.935 INFO    ] 200
[2026-06-19 01:37:36,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:36,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:37:37,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:37:37,030.030 INFO    ] No camera update needed
[2026-06-19 01:37:37,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:37:37,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:37:37,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:37:37,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:37:39,089.089 INFO    ] ================================================
[2026-06-19 01:37:39,104.104 INFO    ] Launching Daemon at Fri Jun 19 01:37:39 IST 2026
[2026-06-19 01:37:39,115.115 INFO    ] ================================================
[2026-06-19 01:37:39,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:37:39
[2026-06-19 01:37:40,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:37:40,589.589 INFO    ] Initializing speech engine...
[2026-06-19 01:37:40,595.595 INFO    ] 2026-06-19 01:37:40
[2026-06-19 01:37:40,888.888 INFO    ] 2026-06-19 01:37:40
[2026-06-19 01:37:40,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:37:41,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:37:41,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:37:41,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:37:41,278.278 INFO    ] time= 19/06/2026 01:37:41
[2026-06-19 01:37:41,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:37:41,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:37:41,390.390 INFO    ] No existing commands found in stream
[2026-06-19 01:37:46,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:37:46,405.405 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 01:37:47,908.908 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:37:47,911.911 INFO    ] Checking for system updates...
[2026-06-19 01:37:47,950.950 INFO    ] 200
[2026-06-19 01:37:47,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:48,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:37:48,007.007 INFO    ] No update needed
[2026-06-19 01:37:48,010.010 INFO    ] Checking for camera pi updates...
[2026-06-19 01:37:48,043.043 INFO    ] 200
[2026-06-19 01:37:48,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:48,089.089 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:37:48,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:37:48,145.145 INFO    ] No camera update needed
[2026-06-19 01:37:48,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:37:48,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:37:48,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:37:48,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:37:50,200.200 INFO    ] ================================================
[2026-06-19 01:37:50,216.216 INFO    ] Launching Daemon at Fri Jun 19 01:37:50 IST 2026
[2026-06-19 01:37:50,227.227 INFO    ] ================================================
[2026-06-19 01:37:50,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:37:50
[2026-06-19 01:37:51,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:37:51,836.836 INFO    ] Initializing speech engine...
[2026-06-19 01:37:51,848.848 INFO    ] 2026-06-19 01:37:51
[2026-06-19 01:37:52,127.127 INFO    ] 2026-06-19 01:37:52
[2026-06-19 01:37:52,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:37:52,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:37:52,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:37:52,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:37:52,609.609 INFO    ] time= 19/06/2026 01:37:52
[2026-06-19 01:37:52,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:37:52,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:37:52,796.796 INFO    ] No existing commands found in stream
[2026-06-19 01:37:57,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:37:57,825.825 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 01:37:58,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:37:58,975.975 INFO    ] Checking for system updates...
[2026-06-19 01:37:59,013.013 INFO    ] 200
[2026-06-19 01:37:59,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:59,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:37:59,073.073 INFO    ] No update needed
[2026-06-19 01:37:59,076.076 INFO    ] Checking for camera pi updates...
[2026-06-19 01:37:59,111.111 INFO    ] 200
[2026-06-19 01:37:59,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:37:59,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:37:59,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:37:59,204.204 INFO    ] No camera update needed
[2026-06-19 01:37:59,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:37:59,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:37:59,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:37:59,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:38:01,262.262 INFO    ] ================================================
[2026-06-19 01:38:01,277.277 INFO    ] Launching Daemon at Fri Jun 19 01:38:01 IST 2026
[2026-06-19 01:38:01,288.288 INFO    ] ================================================
[2026-06-19 01:38:01,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:38:01
[2026-06-19 01:38:02,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:38:02,975.975 INFO    ] Initializing speech engine...
[2026-06-19 01:38:02,987.987 INFO    ] 2026-06-19 01:38:02
[2026-06-19 01:38:03,281.281 INFO    ] 2026-06-19 01:38:03
[2026-06-19 01:38:03,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:38:03,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:38:03,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:38:03,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:38:03,717.717 INFO    ] time= 19/06/2026 01:38:03
[2026-06-19 01:38:03,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:38:03,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:38:03,836.836 INFO    ] No existing commands found in stream
[2026-06-19 01:38:08,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:38:08,851.851 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 01:38:12,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:38:12,189.189 INFO    ] Checking for system updates...
[2026-06-19 01:38:12,228.228 INFO    ] 200
[2026-06-19 01:38:12,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:12,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:38:12,286.286 INFO    ] No update needed
[2026-06-19 01:38:12,288.288 INFO    ] Checking for camera pi updates...
[2026-06-19 01:38:12,322.322 INFO    ] 200
[2026-06-19 01:38:12,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:12,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:38:12,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:38:12,415.415 INFO    ] No camera update needed
[2026-06-19 01:38:12,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:38:12,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:38:12,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:38:12,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:38:14,471.471 INFO    ] ================================================
[2026-06-19 01:38:14,487.487 INFO    ] Launching Daemon at Fri Jun 19 01:38:14 IST 2026
[2026-06-19 01:38:14,499.499 INFO    ] ================================================
[2026-06-19 01:38:15,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:38:15
[2026-06-19 01:38:15,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:38:15,923.923 INFO    ] Initializing speech engine...
[2026-06-19 01:38:15,932.932 INFO    ] 2026-06-19 01:38:15
[2026-06-19 01:38:16,179.179 INFO    ] 2026-06-19 01:38:16
[2026-06-19 01:38:16,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:38:16,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:38:16,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:38:16,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:38:16,648.648 INFO    ] time= 19/06/2026 01:38:16
[2026-06-19 01:38:16,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:38:16,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:38:16,793.793 INFO    ] No existing commands found in stream
[2026-06-19 01:38:21,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:38:21,807.807 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 01:38:23,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:38:23,192.192 INFO    ] Checking for system updates...
[2026-06-19 01:38:23,229.229 INFO    ] 200
[2026-06-19 01:38:23,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:23,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:38:23,289.289 INFO    ] No update needed
[2026-06-19 01:38:23,292.292 INFO    ] Checking for camera pi updates...
[2026-06-19 01:38:23,327.327 INFO    ] 200
[2026-06-19 01:38:23,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:23,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:38:23,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:38:23,434.434 INFO    ] No camera update needed
[2026-06-19 01:38:23,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:38:23,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:38:23,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:38:23,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:38:25,494.494 INFO    ] ================================================
[2026-06-19 01:38:25,510.510 INFO    ] Launching Daemon at Fri Jun 19 01:38:25 IST 2026
[2026-06-19 01:38:25,521.521 INFO    ] ================================================
[2026-06-19 01:38:26,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:38:26
[2026-06-19 01:38:26,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:38:26,956.956 INFO    ] Initializing speech engine...
[2026-06-19 01:38:26,963.963 INFO    ] 2026-06-19 01:38:26
[2026-06-19 01:38:27,221.221 INFO    ] 2026-06-19 01:38:27
[2026-06-19 01:38:27,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:38:27,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:38:27,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:38:27,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:38:27,675.675 INFO    ] time= 19/06/2026 01:38:27
[2026-06-19 01:38:27,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:38:27,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:38:27,826.826 INFO    ] No existing commands found in stream
[2026-06-19 01:38:32,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:38:32,840.840 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 01:38:33,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:38:33,565.565 INFO    ] Checking for system updates...
[2026-06-19 01:38:33,601.601 INFO    ] 200
[2026-06-19 01:38:33,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:33,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:38:33,659.659 INFO    ] No update needed
[2026-06-19 01:38:33,661.661 INFO    ] Checking for camera pi updates...
[2026-06-19 01:38:33,695.695 INFO    ] 200
[2026-06-19 01:38:33,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:33,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:38:33,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:38:33,775.775 INFO    ] No camera update needed
[2026-06-19 01:38:33,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:38:33,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:38:33,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:38:33,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:38:35,831.831 INFO    ] ================================================
[2026-06-19 01:38:35,846.846 INFO    ] Launching Daemon at Fri Jun 19 01:38:35 IST 2026
[2026-06-19 01:38:35,857.857 INFO    ] ================================================
[2026-06-19 01:38:36,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:38:36
[2026-06-19 01:38:37,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:38:37,264.264 INFO    ] Initializing speech engine...
[2026-06-19 01:38:37,287.287 INFO    ] 2026-06-19 01:38:37
[2026-06-19 01:38:37,543.543 INFO    ] 2026-06-19 01:38:37
[2026-06-19 01:38:37,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:38:37,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:38:37,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:38:37,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:38:38,021.021 INFO    ] time= 19/06/2026 01:38:37
[2026-06-19 01:38:38,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:38:38,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:38:38,173.173 INFO    ] No existing commands found in stream
[2026-06-19 01:38:43,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:38:43,190.190 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 01:38:47,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:38:47,578.578 INFO    ] Checking for system updates...
[2026-06-19 01:38:47,614.614 INFO    ] 200
[2026-06-19 01:38:47,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:47,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:38:47,672.672 INFO    ] No update needed
[2026-06-19 01:38:47,674.674 INFO    ] Checking for camera pi updates...
[2026-06-19 01:38:47,709.709 INFO    ] 200
[2026-06-19 01:38:47,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:47,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:38:47,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:38:47,884.884 INFO    ] No camera update needed
[2026-06-19 01:38:47,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:38:47,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:38:47,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:38:47,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:38:49,941.941 INFO    ] ================================================
[2026-06-19 01:38:49,956.956 INFO    ] Launching Daemon at Fri Jun 19 01:38:49 IST 2026
[2026-06-19 01:38:49,967.967 INFO    ] ================================================
[2026-06-19 01:38:50,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:38:50
[2026-06-19 01:38:51,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:38:51,392.392 INFO    ] Initializing speech engine...
[2026-06-19 01:38:51,402.402 INFO    ] 2026-06-19 01:38:51
[2026-06-19 01:38:51,648.648 INFO    ] 2026-06-19 01:38:51
[2026-06-19 01:38:51,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:38:51,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:38:51,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:38:52,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:38:52,149.149 INFO    ] time= 19/06/2026 01:38:52
[2026-06-19 01:38:52,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:38:52,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:38:52,329.329 INFO    ] No existing commands found in stream
[2026-06-19 01:38:57,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:38:57,367.367 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 01:38:58,452.452 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:38:58,455.455 INFO    ] Checking for system updates...
[2026-06-19 01:38:58,491.491 INFO    ] 200
[2026-06-19 01:38:58,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:58,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:38:58,550.550 INFO    ] No update needed
[2026-06-19 01:38:58,552.552 INFO    ] Checking for camera pi updates...
[2026-06-19 01:38:58,586.586 INFO    ] 200
[2026-06-19 01:38:58,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:38:58,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:38:58,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:38:58,675.675 INFO    ] No camera update needed
[2026-06-19 01:38:58,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:38:58,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:38:58,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:38:58,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:39:00,730.730 INFO    ] ================================================
[2026-06-19 01:39:00,745.745 INFO    ] Launching Daemon at Fri Jun 19 01:39:00 IST 2026
[2026-06-19 01:39:00,756.756 INFO    ] ================================================
[2026-06-19 01:39:01,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:39:01
[2026-06-19 01:39:02,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:39:02,455.455 INFO    ] Initializing speech engine...
[2026-06-19 01:39:02,462.462 INFO    ] 2026-06-19 01:39:02
[2026-06-19 01:39:02,738.738 INFO    ] 2026-06-19 01:39:02
[2026-06-19 01:39:02,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:39:03,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:39:03,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:39:03,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:39:03,245.245 INFO    ] time= 19/06/2026 01:39:03
[2026-06-19 01:39:03,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:39:03,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:39:03,412.412 INFO    ] No existing commands found in stream
[2026-06-19 01:39:08,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:39:08,430.430 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 01:39:11,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:39:11,222.222 INFO    ] Checking for system updates...
[2026-06-19 01:39:11,259.259 INFO    ] 200
[2026-06-19 01:39:11,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:11,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:39:11,323.323 INFO    ] No update needed
[2026-06-19 01:39:11,325.325 INFO    ] Checking for camera pi updates...
[2026-06-19 01:39:11,363.363 INFO    ] 200
[2026-06-19 01:39:11,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:11,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:39:11,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:39:11,466.466 INFO    ] No camera update needed
[2026-06-19 01:39:11,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:39:11,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:39:11,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:39:11,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:39:13,521.521 INFO    ] ================================================
[2026-06-19 01:39:13,536.536 INFO    ] Launching Daemon at Fri Jun 19 01:39:13 IST 2026
[2026-06-19 01:39:13,547.547 INFO    ] ================================================
[2026-06-19 01:39:14,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:39:14
[2026-06-19 01:39:14,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:39:14,995.995 INFO    ] Initializing speech engine...
[2026-06-19 01:39:15,019.019 INFO    ] 2026-06-19 01:39:15
[2026-06-19 01:39:15,297.297 INFO    ] 2026-06-19 01:39:15
[2026-06-19 01:39:15,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:39:15,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:39:15,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:39:15,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:39:15,795.795 INFO    ] time= 19/06/2026 01:39:15
[2026-06-19 01:39:15,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:39:15,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:39:15,943.943 INFO    ] No existing commands found in stream
[2026-06-19 01:39:20,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:39:20,960.960 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 01:39:22,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:39:22,605.605 INFO    ] Checking for system updates...
[2026-06-19 01:39:22,642.642 INFO    ] 200
[2026-06-19 01:39:22,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:22,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:39:22,701.701 INFO    ] No update needed
[2026-06-19 01:39:22,704.704 INFO    ] Checking for camera pi updates...
[2026-06-19 01:39:22,738.738 INFO    ] 200
[2026-06-19 01:39:22,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:22,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:39:22,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:39:22,836.836 INFO    ] No camera update needed
[2026-06-19 01:39:22,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:39:22,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:39:22,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:39:22,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:39:24,893.893 INFO    ] ================================================
[2026-06-19 01:39:24,907.907 INFO    ] Launching Daemon at Fri Jun 19 01:39:24 IST 2026
[2026-06-19 01:39:24,918.918 INFO    ] ================================================
[2026-06-19 01:39:25,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:39:25
[2026-06-19 01:39:26,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:39:26,390.390 INFO    ] Initializing speech engine...
[2026-06-19 01:39:26,397.397 INFO    ] 2026-06-19 01:39:26
[2026-06-19 01:39:26,656.656 INFO    ] 2026-06-19 01:39:26
[2026-06-19 01:39:26,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:39:26,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:39:26,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:39:27,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:39:27,126.126 INFO    ] time= 19/06/2026 01:39:27
[2026-06-19 01:39:27,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:39:27,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:39:27,276.276 INFO    ] No existing commands found in stream
[2026-06-19 01:39:32,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:39:32,291.291 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 01:39:33,962.962 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:39:33,965.965 INFO    ] Checking for system updates...
[2026-06-19 01:39:34,001.001 INFO    ] 200
[2026-06-19 01:39:34,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:34,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:39:34,059.059 INFO    ] No update needed
[2026-06-19 01:39:34,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 01:39:34,098.098 INFO    ] 200
[2026-06-19 01:39:34,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:34,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:39:34,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:39:34,178.178 INFO    ] No camera update needed
[2026-06-19 01:39:34,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:39:34,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:39:34,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:39:34,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:39:36,236.236 INFO    ] ================================================
[2026-06-19 01:39:36,250.250 INFO    ] Launching Daemon at Fri Jun 19 01:39:36 IST 2026
[2026-06-19 01:39:36,261.261 INFO    ] ================================================
[2026-06-19 01:39:36,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:39:36
[2026-06-19 01:39:37,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:39:37,823.823 INFO    ] Initializing speech engine...
[2026-06-19 01:39:37,837.837 INFO    ] 2026-06-19 01:39:37
[2026-06-19 01:39:38,109.109 INFO    ] 2026-06-19 01:39:38
[2026-06-19 01:39:38,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:39:38,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:39:38,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:39:38,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:39:38,578.578 INFO    ] time= 19/06/2026 01:39:38
[2026-06-19 01:39:38,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:39:38,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:39:38,716.716 INFO    ] No existing commands found in stream
[2026-06-19 01:39:43,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:39:43,731.731 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 01:39:45,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:39:45,925.925 INFO    ] Checking for system updates...
[2026-06-19 01:39:45,966.966 INFO    ] 200
[2026-06-19 01:39:45,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:46,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:39:46,030.030 INFO    ] No update needed
[2026-06-19 01:39:46,033.033 INFO    ] Checking for camera pi updates...
[2026-06-19 01:39:46,071.071 INFO    ] 200
[2026-06-19 01:39:46,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:46,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:39:46,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:39:46,162.162 INFO    ] No camera update needed
[2026-06-19 01:39:46,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:39:46,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:39:46,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:39:46,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:39:48,220.220 INFO    ] ================================================
[2026-06-19 01:39:48,235.235 INFO    ] Launching Daemon at Fri Jun 19 01:39:48 IST 2026
[2026-06-19 01:39:48,246.246 INFO    ] ================================================
[2026-06-19 01:39:48,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:39:48
[2026-06-19 01:39:49,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:39:49,825.825 INFO    ] Initializing speech engine...
[2026-06-19 01:39:49,831.831 INFO    ] 2026-06-19 01:39:49
[2026-06-19 01:39:50,116.116 INFO    ] 2026-06-19 01:39:50
[2026-06-19 01:39:50,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:39:50,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:39:50,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:39:50,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:39:50,660.660 INFO    ] time= 19/06/2026 01:39:50
[2026-06-19 01:39:50,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:39:50,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:39:50,818.818 INFO    ] No existing commands found in stream
[2026-06-19 01:39:55,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:39:55,856.856 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 01:39:57,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:39:57,977.977 INFO    ] Checking for system updates...
[2026-06-19 01:39:58,013.013 INFO    ] 200
[2026-06-19 01:39:58,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:58,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:39:58,074.074 INFO    ] No update needed
[2026-06-19 01:39:58,076.076 INFO    ] Checking for camera pi updates...
[2026-06-19 01:39:58,110.110 INFO    ] 200
[2026-06-19 01:39:58,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:39:58,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:39:58,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:39:58,204.204 INFO    ] No camera update needed
[2026-06-19 01:39:58,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:39:58,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:39:58,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:39:58,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:40:00,259.259 INFO    ] ================================================
[2026-06-19 01:40:00,273.273 INFO    ] Launching Daemon at Fri Jun 19 01:40:00 IST 2026
[2026-06-19 01:40:00,284.284 INFO    ] ================================================
[2026-06-19 01:40:00,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:40:00
[2026-06-19 01:40:01,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:40:01,710.710 INFO    ] Initializing speech engine...
[2026-06-19 01:40:01,725.725 INFO    ] 2026-06-19 01:40:01
[2026-06-19 01:40:01,994.994 INFO    ] 2026-06-19 01:40:01
[2026-06-19 01:40:02,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:40:02,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:40:02,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:40:02,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:40:02,662.662 INFO    ] time= 19/06/2026 01:40:02
[2026-06-19 01:40:02,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:40:02,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:40:02,887.887 INFO    ] No existing commands found in stream
[2026-06-19 01:40:07,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:40:07,916.916 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 01:40:09,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:40:09,879.879 INFO    ] Checking for system updates...
[2026-06-19 01:40:09,916.916 INFO    ] 200
[2026-06-19 01:40:09,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:09,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:40:09,975.975 INFO    ] No update needed
[2026-06-19 01:40:09,978.978 INFO    ] Checking for camera pi updates...
[2026-06-19 01:40:10,018.018 INFO    ] 200
[2026-06-19 01:40:10,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:10,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:40:10,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:40:10,118.118 INFO    ] No camera update needed
[2026-06-19 01:40:10,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:40:10,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:40:10,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:40:10,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:40:12,175.175 INFO    ] ================================================
[2026-06-19 01:40:12,190.190 INFO    ] Launching Daemon at Fri Jun 19 01:40:12 IST 2026
[2026-06-19 01:40:12,200.200 INFO    ] ================================================
[2026-06-19 01:40:12,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:40:12
[2026-06-19 01:40:13,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:40:13,611.611 INFO    ] Initializing speech engine...
[2026-06-19 01:40:13,617.617 INFO    ] 2026-06-19 01:40:13
[2026-06-19 01:40:13,893.893 INFO    ] 2026-06-19 01:40:13
[2026-06-19 01:40:13,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:40:14,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:40:14,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:40:14,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:40:14,276.276 INFO    ] time= 19/06/2026 01:40:14
[2026-06-19 01:40:14,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:40:14,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:40:14,351.351 INFO    ] No existing commands found in stream
[2026-06-19 01:40:19,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:40:19,367.367 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 01:40:21,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:40:21,320.320 INFO    ] Checking for system updates...
[2026-06-19 01:40:21,356.356 INFO    ] 200
[2026-06-19 01:40:21,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:21,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:40:21,419.419 INFO    ] No update needed
[2026-06-19 01:40:21,421.421 INFO    ] Checking for camera pi updates...
[2026-06-19 01:40:21,455.455 INFO    ] 200
[2026-06-19 01:40:21,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:21,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:40:21,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:40:21,557.557 INFO    ] No camera update needed
[2026-06-19 01:40:21,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:40:21,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:40:21,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:40:21,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:40:23,612.612 INFO    ] ================================================
[2026-06-19 01:40:23,627.627 INFO    ] Launching Daemon at Fri Jun 19 01:40:23 IST 2026
[2026-06-19 01:40:23,638.638 INFO    ] ================================================
[2026-06-19 01:40:24,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:40:24
[2026-06-19 01:40:24,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:40:25,053.053 INFO    ] Initializing speech engine...
[2026-06-19 01:40:25,078.078 INFO    ] 2026-06-19 01:40:25
[2026-06-19 01:40:25,351.351 INFO    ] 2026-06-19 01:40:25
[2026-06-19 01:40:25,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:40:25,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:40:25,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:40:25,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:40:25,730.730 INFO    ] time= 19/06/2026 01:40:25
[2026-06-19 01:40:25,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:40:25,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:40:25,786.786 INFO    ] No existing commands found in stream
[2026-06-19 01:40:30,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:40:30,799.799 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 01:40:32,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:40:32,718.718 INFO    ] Checking for system updates...
[2026-06-19 01:40:32,760.760 INFO    ] 200
[2026-06-19 01:40:32,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:32,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:40:32,835.835 INFO    ] No update needed
[2026-06-19 01:40:32,838.838 INFO    ] Checking for camera pi updates...
[2026-06-19 01:40:32,879.879 INFO    ] 200
[2026-06-19 01:40:32,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:32,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:40:32,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:40:32,988.988 INFO    ] No camera update needed
[2026-06-19 01:40:32,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:40:32,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:40:33,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:40:33,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:40:35,047.047 INFO    ] ================================================
[2026-06-19 01:40:35,062.062 INFO    ] Launching Daemon at Fri Jun 19 01:40:35 IST 2026
[2026-06-19 01:40:35,072.072 INFO    ] ================================================
[2026-06-19 01:40:35,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:40:35
[2026-06-19 01:40:36,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:40:36,612.612 INFO    ] Initializing speech engine...
[2026-06-19 01:40:36,619.619 INFO    ] 2026-06-19 01:40:36
[2026-06-19 01:40:36,884.884 INFO    ] 2026-06-19 01:40:36
[2026-06-19 01:40:36,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:40:37,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:40:37,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:40:37,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:40:37,394.394 INFO    ] time= 19/06/2026 01:40:37
[2026-06-19 01:40:37,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:40:37,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:40:37,596.596 INFO    ] No existing commands found in stream
[2026-06-19 01:40:42,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:40:42,630.630 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 01:40:46,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:40:46,420.420 INFO    ] Checking for system updates...
[2026-06-19 01:40:46,460.460 INFO    ] 200
[2026-06-19 01:40:46,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:46,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:40:46,519.519 INFO    ] No update needed
[2026-06-19 01:40:46,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 01:40:46,555.555 INFO    ] 200
[2026-06-19 01:40:46,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:46,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:40:46,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:40:46,641.641 INFO    ] No camera update needed
[2026-06-19 01:40:46,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:40:46,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:40:46,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:40:46,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:40:48,697.697 INFO    ] ================================================
[2026-06-19 01:40:48,712.712 INFO    ] Launching Daemon at Fri Jun 19 01:40:48 IST 2026
[2026-06-19 01:40:48,723.723 INFO    ] ================================================
[2026-06-19 01:40:49,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:40:49
[2026-06-19 01:40:49,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:40:50,181.181 INFO    ] Initializing speech engine...
[2026-06-19 01:40:50,189.189 INFO    ] 2026-06-19 01:40:50
[2026-06-19 01:40:50,445.445 INFO    ] 2026-06-19 01:40:50
[2026-06-19 01:40:50,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:40:50,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:40:50,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:40:50,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:40:50,889.889 INFO    ] time= 19/06/2026 01:40:50
[2026-06-19 01:40:50,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:40:50,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:40:51,088.088 INFO    ] No existing commands found in stream
[2026-06-19 01:40:56,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:40:56,103.103 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 01:40:57,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:40:57,053.053 INFO    ] Checking for system updates...
[2026-06-19 01:40:57,089.089 INFO    ] 200
[2026-06-19 01:40:57,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:57,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:40:57,149.149 INFO    ] No update needed
[2026-06-19 01:40:57,151.151 INFO    ] Checking for camera pi updates...
[2026-06-19 01:40:57,188.188 INFO    ] 200
[2026-06-19 01:40:57,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:40:57,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:40:57,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:40:57,376.376 INFO    ] No camera update needed
[2026-06-19 01:40:57,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:40:57,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:40:57,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:40:57,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:40:59,431.431 INFO    ] ================================================
[2026-06-19 01:40:59,446.446 INFO    ] Launching Daemon at Fri Jun 19 01:40:59 IST 2026
[2026-06-19 01:40:59,457.457 INFO    ] ================================================
[2026-06-19 01:41:00,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:41:00
[2026-06-19 01:41:00,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:41:00,887.887 INFO    ] Initializing speech engine...
[2026-06-19 01:41:00,896.896 INFO    ] 2026-06-19 01:41:00
[2026-06-19 01:41:01,149.149 INFO    ] 2026-06-19 01:41:01
[2026-06-19 01:41:01,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:41:01,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:41:01,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:41:01,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:41:01,573.573 INFO    ] time= 19/06/2026 01:41:01
[2026-06-19 01:41:01,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:41:01,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:41:01,672.672 INFO    ] No existing commands found in stream
[2026-06-19 01:41:06,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:41:06,684.684 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 01:41:09,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:41:09,310.310 INFO    ] Checking for system updates...
[2026-06-19 01:41:09,346.346 INFO    ] 200
[2026-06-19 01:41:09,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:09,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:41:09,403.403 INFO    ] No update needed
[2026-06-19 01:41:09,406.406 INFO    ] Checking for camera pi updates...
[2026-06-19 01:41:09,441.441 INFO    ] 200
[2026-06-19 01:41:09,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:09,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:41:09,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:41:09,531.531 INFO    ] No camera update needed
[2026-06-19 01:41:09,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:41:09,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:41:09,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:41:09,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:41:11,587.587 INFO    ] ================================================
[2026-06-19 01:41:11,602.602 INFO    ] Launching Daemon at Fri Jun 19 01:41:11 IST 2026
[2026-06-19 01:41:11,613.613 INFO    ] ================================================
[2026-06-19 01:41:12,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:41:12
[2026-06-19 01:41:12,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:41:13,039.039 INFO    ] Initializing speech engine...
[2026-06-19 01:41:13,044.044 INFO    ] 2026-06-19 01:41:13
[2026-06-19 01:41:13,293.293 INFO    ] 2026-06-19 01:41:13
[2026-06-19 01:41:13,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:41:13,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:41:13,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:41:13,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:41:13,742.742 INFO    ] time= 19/06/2026 01:41:13
[2026-06-19 01:41:13,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:41:13,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:41:13,919.919 INFO    ] No existing commands found in stream
[2026-06-19 01:41:18,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:41:18,934.934 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 01:41:22,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:41:22,402.402 INFO    ] Checking for system updates...
[2026-06-19 01:41:22,437.437 INFO    ] 200
[2026-06-19 01:41:22,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:22,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:41:22,495.495 INFO    ] No update needed
[2026-06-19 01:41:22,498.498 INFO    ] Checking for camera pi updates...
[2026-06-19 01:41:22,531.531 INFO    ] 200
[2026-06-19 01:41:22,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:22,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:41:22,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:41:22,632.632 INFO    ] No camera update needed
[2026-06-19 01:41:22,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:41:22,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:41:22,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:41:22,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:41:24,687.687 INFO    ] ================================================
[2026-06-19 01:41:24,702.702 INFO    ] Launching Daemon at Fri Jun 19 01:41:24 IST 2026
[2026-06-19 01:41:24,713.713 INFO    ] ================================================
[2026-06-19 01:41:25,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:41:25
[2026-06-19 01:41:25,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:41:26,136.136 INFO    ] Initializing speech engine...
[2026-06-19 01:41:26,142.142 INFO    ] 2026-06-19 01:41:26
[2026-06-19 01:41:26,400.400 INFO    ] 2026-06-19 01:41:26
[2026-06-19 01:41:26,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:41:26,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:41:26,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:41:26,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:41:26,755.755 INFO    ] time= 19/06/2026 01:41:26
[2026-06-19 01:41:26,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:41:26,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:41:26,913.913 INFO    ] No existing commands found in stream
[2026-06-19 01:41:31,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:41:31,946.946 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 01:41:35,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:41:35,181.181 INFO    ] Checking for system updates...
[2026-06-19 01:41:35,218.218 INFO    ] 200
[2026-06-19 01:41:35,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:35,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:41:35,282.282 INFO    ] No update needed
[2026-06-19 01:41:35,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 01:41:35,318.318 INFO    ] 200
[2026-06-19 01:41:35,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:35,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:41:35,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:41:35,416.416 INFO    ] No camera update needed
[2026-06-19 01:41:35,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:41:35,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:41:35,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:41:35,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:41:37,470.470 INFO    ] ================================================
[2026-06-19 01:41:37,485.485 INFO    ] Launching Daemon at Fri Jun 19 01:41:37 IST 2026
[2026-06-19 01:41:37,496.496 INFO    ] ================================================
[2026-06-19 01:41:38,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:41:38
[2026-06-19 01:41:38,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:41:38,922.922 INFO    ] Initializing speech engine...
[2026-06-19 01:41:38,931.931 INFO    ] 2026-06-19 01:41:38
[2026-06-19 01:41:39,181.181 INFO    ] 2026-06-19 01:41:39
[2026-06-19 01:41:39,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:41:39,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:41:39,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:41:39,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:41:39,525.525 INFO    ] time= 19/06/2026 01:41:39
[2026-06-19 01:41:39,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:41:39,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:41:39,640.640 INFO    ] No existing commands found in stream
[2026-06-19 01:41:44,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:41:44,658.658 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 01:41:46,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:41:46,061.061 INFO    ] Checking for system updates...
[2026-06-19 01:41:46,097.097 INFO    ] 200
[2026-06-19 01:41:46,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:46,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:41:46,154.154 INFO    ] No update needed
[2026-06-19 01:41:46,157.157 INFO    ] Checking for camera pi updates...
[2026-06-19 01:41:46,199.199 INFO    ] 200
[2026-06-19 01:41:46,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:46,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:41:46,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:41:46,293.293 INFO    ] No camera update needed
[2026-06-19 01:41:46,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:41:46,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:41:46,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:41:46,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:41:48,352.352 INFO    ] ================================================
[2026-06-19 01:41:48,367.367 INFO    ] Launching Daemon at Fri Jun 19 01:41:48 IST 2026
[2026-06-19 01:41:48,378.378 INFO    ] ================================================
[2026-06-19 01:41:48,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:41:48
[2026-06-19 01:41:49,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:41:49,840.840 INFO    ] Initializing speech engine...
[2026-06-19 01:41:49,850.850 INFO    ] 2026-06-19 01:41:49
[2026-06-19 01:41:50,112.112 INFO    ] 2026-06-19 01:41:50
[2026-06-19 01:41:50,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:41:50,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:41:50,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:41:50,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:41:50,577.577 INFO    ] time= 19/06/2026 01:41:50
[2026-06-19 01:41:50,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:41:50,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:41:50,715.715 INFO    ] No existing commands found in stream
[2026-06-19 01:41:55,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:41:55,730.730 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 01:41:57,828.828 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:41:57,831.831 INFO    ] Checking for system updates...
[2026-06-19 01:41:57,870.870 INFO    ] 200
[2026-06-19 01:41:57,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:57,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:41:57,934.934 INFO    ] No update needed
[2026-06-19 01:41:57,937.937 INFO    ] Checking for camera pi updates...
[2026-06-19 01:41:57,974.974 INFO    ] 200
[2026-06-19 01:41:57,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:41:58,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:41:58,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:41:58,065.065 INFO    ] No camera update needed
[2026-06-19 01:41:58,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:41:58,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:41:58,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:41:58,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:42:00,120.120 INFO    ] ================================================
[2026-06-19 01:42:00,136.136 INFO    ] Launching Daemon at Fri Jun 19 01:42:00 IST 2026
[2026-06-19 01:42:00,147.147 INFO    ] ================================================
[2026-06-19 01:42:00,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:42:00
[2026-06-19 01:42:01,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:42:01,937.937 INFO    ] Initializing speech engine...
[2026-06-19 01:42:01,948.948 INFO    ] 2026-06-19 01:42:01
[2026-06-19 01:42:02,325.325 INFO    ] 2026-06-19 01:42:02
[2026-06-19 01:42:02,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:42:02,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:42:02,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:42:02,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:42:02,844.844 INFO    ] time= 19/06/2026 01:42:02
[2026-06-19 01:42:02,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:42:02,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:42:03,057.057 INFO    ] No existing commands found in stream
[2026-06-19 01:42:08,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:42:08,078.078 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 01:42:12,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:42:12,074.074 INFO    ] Checking for system updates...
[2026-06-19 01:42:12,113.113 INFO    ] 200
[2026-06-19 01:42:12,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:42:12,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:42:12,171.171 INFO    ] No update needed
[2026-06-19 01:42:12,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 01:42:12,210.210 INFO    ] 200
[2026-06-19 01:42:12,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:42:12,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:42:12,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:42:12,303.303 INFO    ] No camera update needed
[2026-06-19 01:42:12,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:42:12,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:42:12,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:42:12,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:42:14,358.358 INFO    ] ================================================
[2026-06-19 01:42:14,374.374 INFO    ] Launching Daemon at Fri Jun 19 01:42:14 IST 2026
[2026-06-19 01:42:14,385.385 INFO    ] ================================================
[2026-06-19 01:42:14,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:42:14
[2026-06-19 01:42:15,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:42:15,926.926 INFO    ] Initializing speech engine...
[2026-06-19 01:42:15,938.938 INFO    ] 2026-06-19 01:42:15
[2026-06-19 01:42:16,224.224 INFO    ] 2026-06-19 01:42:16
[2026-06-19 01:42:16,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:42:16,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:42:16,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:42:16,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:42:16,751.751 INFO    ] time= 19/06/2026 01:42:16
[2026-06-19 01:42:16,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:42:16,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:42:16,887.887 INFO    ] No existing commands found in stream
[2026-06-19 01:42:21,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:42:21,924.924 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 01:42:24,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:42:24,414.414 INFO    ] Checking for system updates...
[2026-06-19 01:42:24,450.450 INFO    ] 200
[2026-06-19 01:42:24,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:42:24,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:42:24,514.514 INFO    ] No update needed
[2026-06-19 01:42:24,517.517 INFO    ] Checking for camera pi updates...
[2026-06-19 01:42:24,551.551 INFO    ] 200
[2026-06-19 01:42:24,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:42:24,598.598 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:42:24,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:42:24,643.643 INFO    ] No camera update needed
[2026-06-19 01:42:24,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:42:24,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:42:24,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:42:24,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:42:26,700.700 INFO    ] ================================================
[2026-06-19 01:42:26,716.716 INFO    ] Launching Daemon at Fri Jun 19 01:42:26 IST 2026
[2026-06-19 01:42:26,727.727 INFO    ] ================================================
[2026-06-19 01:42:27,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:42:27
[2026-06-19 01:42:28,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:42:28,348.348 INFO    ] Initializing speech engine...
[2026-06-19 01:42:28,362.362 INFO    ] 2026-06-19 01:42:28
[2026-06-19 01:42:28,630.630 INFO    ] 2026-06-19 01:42:28
[2026-06-19 01:42:28,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:42:28,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:42:28,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:42:29,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:42:29,177.177 INFO    ] time= 19/06/2026 01:42:29
[2026-06-19 01:42:29,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:42:29,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:42:29,325.325 INFO    ] No existing commands found in stream
[2026-06-19 01:42:34,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:42:34,351.351 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 01:42:35,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:42:35,536.536 INFO    ] Checking for system updates...
[2026-06-19 01:42:35,578.578 INFO    ] 200
[2026-06-19 01:42:35,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:42:35,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:42:35,648.648 INFO    ] No update needed
[2026-06-19 01:42:35,651.651 INFO    ] Checking for camera pi updates...
[2026-06-19 01:42:35,689.689 INFO    ] 200
[2026-06-19 01:42:35,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:42:35,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:42:35,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:42:35,786.786 INFO    ] No camera update needed
[2026-06-19 01:42:35,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:42:35,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:42:35,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:42:35,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:42:37,847.847 INFO    ] ================================================
[2026-06-19 01:42:37,862.862 INFO    ] Launching Daemon at Fri Jun 19 01:42:37 IST 2026
[2026-06-19 01:42:37,873.873 INFO    ] ================================================
[2026-06-19 01:42:38,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:42:38
[2026-06-19 01:42:39,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:42:39,295.295 INFO    ] Initializing speech engine...
[2026-06-19 01:42:39,304.304 INFO    ] 2026-06-19 01:42:39
[2026-06-19 01:42:39,550.550 INFO    ] 2026-06-19 01:42:39
[2026-06-19 01:42:39,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:42:39,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:42:39,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:42:39,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:42:39,947.947 INFO    ] time= 19/06/2026 01:42:39
[2026-06-19 01:42:39,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:42:39,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:42:40,054.054 INFO    ] No existing commands found in stream
[2026-06-19 01:42:45,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:42:45,070.070 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 01:42:48,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:42:48,744.744 INFO    ] Checking for system updates...
[2026-06-19 01:42:48,783.783 INFO    ] 200
[2026-06-19 01:42:48,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:42:48,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:42:48,848.848 INFO    ] No update needed
[2026-06-19 01:42:48,850.850 INFO    ] Checking for camera pi updates...
[2026-06-19 01:42:48,885.885 INFO    ] 200
[2026-06-19 01:42:48,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:42:48,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:42:48,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:42:48,979.979 INFO    ] No camera update needed
[2026-06-19 01:42:48,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:42:48,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:42:48,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:42:48,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:42:51,036.036 INFO    ] ================================================
[2026-06-19 01:42:51,052.052 INFO    ] Launching Daemon at Fri Jun 19 01:42:51 IST 2026
[2026-06-19 01:42:51,063.063 INFO    ] ================================================
[2026-06-19 01:42:51,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:42:51
[2026-06-19 01:42:52,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:42:52,664.664 INFO    ] Initializing speech engine...
[2026-06-19 01:42:52,673.673 INFO    ] 2026-06-19 01:42:52
[2026-06-19 01:42:52,944.944 INFO    ] 2026-06-19 01:42:52
[2026-06-19 01:42:52,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:42:53,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:42:53,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:42:53,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:42:53,424.424 INFO    ] time= 19/06/2026 01:42:53
[2026-06-19 01:42:53,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:42:53,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:42:53,566.566 INFO    ] No existing commands found in stream
[2026-06-19 01:42:58,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:42:58,601.601 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 01:43:01,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:43:01,603.603 INFO    ] Checking for system updates...
[2026-06-19 01:43:01,666.666 INFO    ] 200
[2026-06-19 01:43:01,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:01,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:43:01,784.784 INFO    ] No update needed
[2026-06-19 01:43:01,793.793 INFO    ] Checking for camera pi updates...
[2026-06-19 01:43:01,841.841 INFO    ] 200
[2026-06-19 01:43:01,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:01,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:43:01,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:43:01,929.929 INFO    ] No camera update needed
[2026-06-19 01:43:01,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:43:01,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:43:01,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:43:01,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:43:03,988.988 INFO    ] ================================================
[2026-06-19 01:43:04,005.005 INFO    ] Launching Daemon at Fri Jun 19 01:43:03 IST 2026
[2026-06-19 01:43:04,016.016 INFO    ] ================================================
[2026-06-19 01:43:04,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:43:04
[2026-06-19 01:43:05,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:43:05,468.468 INFO    ] Initializing speech engine...
[2026-06-19 01:43:05,474.474 INFO    ] 2026-06-19 01:43:05
[2026-06-19 01:43:05,736.736 INFO    ] 2026-06-19 01:43:05
[2026-06-19 01:43:05,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:43:06,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:43:06,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:43:06,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:43:06,227.227 INFO    ] time= 19/06/2026 01:43:06
[2026-06-19 01:43:06,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:43:06,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:43:06,355.355 INFO    ] No existing commands found in stream
[2026-06-19 01:43:11,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:43:11,370.370 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 01:43:15,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:43:15,365.365 INFO    ] Checking for system updates...
[2026-06-19 01:43:15,401.401 INFO    ] 200
[2026-06-19 01:43:15,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:15,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:43:15,459.459 INFO    ] No update needed
[2026-06-19 01:43:15,461.461 INFO    ] Checking for camera pi updates...
[2026-06-19 01:43:15,496.496 INFO    ] 200
[2026-06-19 01:43:15,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:15,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:43:15,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:43:15,586.586 INFO    ] No camera update needed
[2026-06-19 01:43:15,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:43:15,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:43:15,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:43:15,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:43:17,642.642 INFO    ] ================================================
[2026-06-19 01:43:17,661.661 INFO    ] Launching Daemon at Fri Jun 19 01:43:17 IST 2026
[2026-06-19 01:43:17,673.673 INFO    ] ================================================
[2026-06-19 01:43:18,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:43:18
[2026-06-19 01:43:18,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:43:19,144.144 INFO    ] Initializing speech engine...
[2026-06-19 01:43:19,154.154 INFO    ] 2026-06-19 01:43:19
[2026-06-19 01:43:19,428.428 INFO    ] 2026-06-19 01:43:19
[2026-06-19 01:43:19,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:43:19,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:43:19,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:43:19,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:43:19,817.817 INFO    ] time= 19/06/2026 01:43:19
[2026-06-19 01:43:19,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:43:19,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:43:19,944.944 INFO    ] No existing commands found in stream
[2026-06-19 01:43:24,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:43:24,959.959 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 01:43:28,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:43:28,148.148 INFO    ] Checking for system updates...
[2026-06-19 01:43:28,189.189 INFO    ] 200
[2026-06-19 01:43:28,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:28,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:43:28,248.248 INFO    ] No update needed
[2026-06-19 01:43:28,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 01:43:28,289.289 INFO    ] 200
[2026-06-19 01:43:28,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:28,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:43:28,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:43:28,387.387 INFO    ] No camera update needed
[2026-06-19 01:43:28,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:43:28,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:43:28,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:43:28,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:43:30,442.442 INFO    ] ================================================
[2026-06-19 01:43:30,458.458 INFO    ] Launching Daemon at Fri Jun 19 01:43:30 IST 2026
[2026-06-19 01:43:30,468.468 INFO    ] ================================================
[2026-06-19 01:43:31,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:43:31
[2026-06-19 01:43:31,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:43:32,200.200 INFO    ] Initializing speech engine...
[2026-06-19 01:43:32,212.212 INFO    ] 2026-06-19 01:43:32
[2026-06-19 01:43:32,502.502 INFO    ] 2026-06-19 01:43:32
[2026-06-19 01:43:32,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:43:32,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:43:32,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:43:33,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:43:33,013.013 INFO    ] time= 19/06/2026 01:43:33
[2026-06-19 01:43:33,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:43:33,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:43:33,168.168 INFO    ] No existing commands found in stream
[2026-06-19 01:43:38,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:43:38,182.182 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 01:43:38,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:43:38,780.780 INFO    ] Checking for system updates...
[2026-06-19 01:43:38,816.816 INFO    ] 200
[2026-06-19 01:43:38,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:38,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:43:38,879.879 INFO    ] No update needed
[2026-06-19 01:43:38,881.881 INFO    ] Checking for camera pi updates...
[2026-06-19 01:43:38,915.915 INFO    ] 200
[2026-06-19 01:43:38,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:38,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:43:39,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:43:39,016.016 INFO    ] No camera update needed
[2026-06-19 01:43:39,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:43:39,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:43:39,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:43:39,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:43:41,072.072 INFO    ] ================================================
[2026-06-19 01:43:41,088.088 INFO    ] Launching Daemon at Fri Jun 19 01:43:41 IST 2026
[2026-06-19 01:43:41,098.098 INFO    ] ================================================
[2026-06-19 01:43:41,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:43:41
[2026-06-19 01:43:42,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:43:42,546.546 INFO    ] Initializing speech engine...
[2026-06-19 01:43:42,552.552 INFO    ] 2026-06-19 01:43:42
[2026-06-19 01:43:42,813.813 INFO    ] 2026-06-19 01:43:42
[2026-06-19 01:43:42,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:43:43,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:43:43,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:43:43,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:43:43,263.263 INFO    ] time= 19/06/2026 01:43:43
[2026-06-19 01:43:43,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:43:43,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:43:43,422.422 INFO    ] No existing commands found in stream
[2026-06-19 01:43:48,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:43:48,438.438 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 01:43:50,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:43:50,545.545 INFO    ] Checking for system updates...
[2026-06-19 01:43:50,586.586 INFO    ] 200
[2026-06-19 01:43:50,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:50,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:43:50,651.651 INFO    ] No update needed
[2026-06-19 01:43:50,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 01:43:50,691.691 INFO    ] 200
[2026-06-19 01:43:50,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:43:50,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:43:50,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:43:50,783.783 INFO    ] No camera update needed
[2026-06-19 01:43:50,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:43:50,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:43:50,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:43:50,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:43:52,838.838 INFO    ] ================================================
[2026-06-19 01:43:52,853.853 INFO    ] Launching Daemon at Fri Jun 19 01:43:52 IST 2026
[2026-06-19 01:43:52,864.864 INFO    ] ================================================
[2026-06-19 01:43:53,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:43:53
[2026-06-19 01:43:54,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:43:54,282.282 INFO    ] Initializing speech engine...
[2026-06-19 01:43:54,291.291 INFO    ] 2026-06-19 01:43:54
[2026-06-19 01:43:54,567.567 INFO    ] 2026-06-19 01:43:54
[2026-06-19 01:43:54,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:43:54,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:43:54,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:43:55,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:43:55,049.049 INFO    ] time= 19/06/2026 01:43:55
[2026-06-19 01:43:55,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:43:55,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:43:55,200.200 INFO    ] No existing commands found in stream
[2026-06-19 01:44:00,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:44:00,214.214 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 01:44:04,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:44:04,332.332 INFO    ] Checking for system updates...
[2026-06-19 01:44:04,369.369 INFO    ] 200
[2026-06-19 01:44:04,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:04,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:44:04,432.432 INFO    ] No update needed
[2026-06-19 01:44:04,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 01:44:04,468.468 INFO    ] 200
[2026-06-19 01:44:04,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:04,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:44:04,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:44:04,580.580 INFO    ] No camera update needed
[2026-06-19 01:44:04,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:44:04,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:44:04,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:44:04,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:44:06,637.637 INFO    ] ================================================
[2026-06-19 01:44:06,652.652 INFO    ] Launching Daemon at Fri Jun 19 01:44:06 IST 2026
[2026-06-19 01:44:06,662.662 INFO    ] ================================================
[2026-06-19 01:44:07,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:44:07
[2026-06-19 01:44:07,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:44:08,127.127 INFO    ] Initializing speech engine...
[2026-06-19 01:44:08,134.134 INFO    ] 2026-06-19 01:44:08
[2026-06-19 01:44:08,396.396 INFO    ] 2026-06-19 01:44:08
[2026-06-19 01:44:08,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:44:08,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:44:08,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:44:08,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:44:08,766.766 INFO    ] time= 19/06/2026 01:44:08
[2026-06-19 01:44:08,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:44:08,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:44:08,941.941 INFO    ] No existing commands found in stream
[2026-06-19 01:44:13,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:44:13,970.970 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 01:44:15,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:44:15,389.389 INFO    ] Checking for system updates...
[2026-06-19 01:44:15,426.426 INFO    ] 200
[2026-06-19 01:44:15,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:15,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:44:15,488.488 INFO    ] No update needed
[2026-06-19 01:44:15,491.491 INFO    ] Checking for camera pi updates...
[2026-06-19 01:44:15,528.528 INFO    ] 200
[2026-06-19 01:44:15,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:15,572.572 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:44:15,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:44:15,627.627 INFO    ] No camera update needed
[2026-06-19 01:44:15,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:44:15,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:44:15,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:44:15,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:44:17,684.684 INFO    ] ================================================
[2026-06-19 01:44:17,698.698 INFO    ] Launching Daemon at Fri Jun 19 01:44:17 IST 2026
[2026-06-19 01:44:17,710.710 INFO    ] ================================================
[2026-06-19 01:44:18,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:44:18
[2026-06-19 01:44:18,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:44:19,148.148 INFO    ] Initializing speech engine...
[2026-06-19 01:44:19,158.158 INFO    ] 2026-06-19 01:44:19
[2026-06-19 01:44:19,415.415 INFO    ] 2026-06-19 01:44:19
[2026-06-19 01:44:19,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:44:19,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:44:19,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:44:19,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:44:19,864.864 INFO    ] time= 19/06/2026 01:44:19
[2026-06-19 01:44:19,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:44:19,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:44:20,039.039 INFO    ] No existing commands found in stream
[2026-06-19 01:44:25,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:44:25,054.054 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 01:44:27,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:44:27,781.781 INFO    ] Checking for system updates...
[2026-06-19 01:44:27,819.819 INFO    ] 200
[2026-06-19 01:44:27,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:27,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:44:27,888.888 INFO    ] No update needed
[2026-06-19 01:44:27,890.890 INFO    ] Checking for camera pi updates...
[2026-06-19 01:44:27,925.925 INFO    ] 200
[2026-06-19 01:44:27,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:27,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:44:28,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:44:28,015.015 INFO    ] No camera update needed
[2026-06-19 01:44:28,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:44:28,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:44:28,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:44:28,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:44:30,071.071 INFO    ] ================================================
[2026-06-19 01:44:30,087.087 INFO    ] Launching Daemon at Fri Jun 19 01:44:30 IST 2026
[2026-06-19 01:44:30,097.097 INFO    ] ================================================
[2026-06-19 01:44:30,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:44:30
[2026-06-19 01:44:31,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:44:31,747.747 INFO    ] Initializing speech engine...
[2026-06-19 01:44:31,757.757 INFO    ] 2026-06-19 01:44:31
[2026-06-19 01:44:32,055.055 INFO    ] 2026-06-19 01:44:32
[2026-06-19 01:44:32,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:44:32,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:44:32,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:44:32,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:44:32,580.580 INFO    ] time= 19/06/2026 01:44:32
[2026-06-19 01:44:32,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:44:32,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:44:32,701.701 INFO    ] No existing commands found in stream
[2026-06-19 01:44:37,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:44:37,717.717 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 01:44:41,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:44:41,061.061 INFO    ] Checking for system updates...
[2026-06-19 01:44:41,102.102 INFO    ] 200
[2026-06-19 01:44:41,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:41,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:44:41,163.163 INFO    ] No update needed
[2026-06-19 01:44:41,166.166 INFO    ] Checking for camera pi updates...
[2026-06-19 01:44:41,204.204 INFO    ] 200
[2026-06-19 01:44:41,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:41,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:44:41,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:44:41,298.298 INFO    ] No camera update needed
[2026-06-19 01:44:41,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:44:41,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:44:41,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:44:41,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:44:43,361.361 INFO    ] ================================================
[2026-06-19 01:44:43,377.377 INFO    ] Launching Daemon at Fri Jun 19 01:44:43 IST 2026
[2026-06-19 01:44:43,388.388 INFO    ] ================================================
[2026-06-19 01:44:43,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:44:43
[2026-06-19 01:44:44,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:44:44,849.849 INFO    ] Initializing speech engine...
[2026-06-19 01:44:44,858.858 INFO    ] 2026-06-19 01:44:44
[2026-06-19 01:44:45,116.116 INFO    ] 2026-06-19 01:44:45
[2026-06-19 01:44:45,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:44:45,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:44:45,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:44:45,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:44:45,582.582 INFO    ] time= 19/06/2026 01:44:45
[2026-06-19 01:44:45,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:44:45,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:44:45,725.725 INFO    ] No existing commands found in stream
[2026-06-19 01:44:50,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:44:50,740.740 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 01:44:53,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:44:53,027.027 INFO    ] Checking for system updates...
[2026-06-19 01:44:53,063.063 INFO    ] 200
[2026-06-19 01:44:53,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:53,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:44:53,121.121 INFO    ] No update needed
[2026-06-19 01:44:53,124.124 INFO    ] Checking for camera pi updates...
[2026-06-19 01:44:53,157.157 INFO    ] 200
[2026-06-19 01:44:53,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:44:53,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:44:53,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:44:53,251.251 INFO    ] No camera update needed
[2026-06-19 01:44:53,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:44:53,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:44:53,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:44:53,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:44:55,308.308 INFO    ] ================================================
[2026-06-19 01:44:55,323.323 INFO    ] Launching Daemon at Fri Jun 19 01:44:55 IST 2026
[2026-06-19 01:44:55,333.333 INFO    ] ================================================
[2026-06-19 01:44:55,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:44:55
[2026-06-19 01:44:56,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:44:56,746.746 INFO    ] Initializing speech engine...
[2026-06-19 01:44:56,752.752 INFO    ] 2026-06-19 01:44:56
[2026-06-19 01:44:57,029.029 INFO    ] 2026-06-19 01:44:57
[2026-06-19 01:44:57,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:44:57,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:44:57,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:44:57,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:44:57,405.405 INFO    ] time= 19/06/2026 01:44:57
[2026-06-19 01:44:57,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:44:57,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:44:57,585.585 INFO    ] No existing commands found in stream
[2026-06-19 01:45:02,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:45:02,614.614 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 01:45:03,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:45:03,606.606 INFO    ] Checking for system updates...
[2026-06-19 01:45:03,645.645 INFO    ] 200
[2026-06-19 01:45:03,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:03,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:45:03,703.703 INFO    ] No update needed
[2026-06-19 01:45:03,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 01:45:03,739.739 INFO    ] 200
[2026-06-19 01:45:03,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:03,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:45:03,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:45:03,932.932 INFO    ] No camera update needed
[2026-06-19 01:45:03,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:45:03,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:45:03,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:45:03,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:45:05,991.991 INFO    ] ================================================
[2026-06-19 01:45:06,006.006 INFO    ] Launching Daemon at Fri Jun 19 01:45:06 IST 2026
[2026-06-19 01:45:06,018.018 INFO    ] ================================================
[2026-06-19 01:45:06,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:45:06
[2026-06-19 01:45:07,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:45:07,520.520 INFO    ] Initializing speech engine...
[2026-06-19 01:45:07,530.530 INFO    ] 2026-06-19 01:45:07
[2026-06-19 01:45:07,777.777 INFO    ] 2026-06-19 01:45:07
[2026-06-19 01:45:07,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:45:08,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:45:08,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:45:08,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:45:08,228.228 INFO    ] time= 19/06/2026 01:45:08
[2026-06-19 01:45:08,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:45:08,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:45:08,393.393 INFO    ] No existing commands found in stream
[2026-06-19 01:45:13,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:45:13,407.407 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 01:45:14,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:45:14,103.103 INFO    ] Checking for system updates...
[2026-06-19 01:45:14,139.139 INFO    ] 200
[2026-06-19 01:45:14,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:14,194.194 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:45:14,197.197 INFO    ] No update needed
[2026-06-19 01:45:14,199.199 INFO    ] Checking for camera pi updates...
[2026-06-19 01:45:14,233.233 INFO    ] 200
[2026-06-19 01:45:14,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:14,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:45:14,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:45:14,327.327 INFO    ] No camera update needed
[2026-06-19 01:45:14,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:45:14,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:45:14,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:45:14,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:45:16,386.386 INFO    ] ================================================
[2026-06-19 01:45:16,401.401 INFO    ] Launching Daemon at Fri Jun 19 01:45:16 IST 2026
[2026-06-19 01:45:16,412.412 INFO    ] ================================================
[2026-06-19 01:45:17,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:45:17
[2026-06-19 01:45:17,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:45:17,871.871 INFO    ] Initializing speech engine...
[2026-06-19 01:45:17,886.886 INFO    ] 2026-06-19 01:45:17
[2026-06-19 01:45:18,154.154 INFO    ] 2026-06-19 01:45:18
[2026-06-19 01:45:18,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:45:18,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:45:18,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:45:18,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:45:18,547.547 INFO    ] time= 19/06/2026 01:45:18
[2026-06-19 01:45:18,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:45:18,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:45:18,716.716 INFO    ] No existing commands found in stream
[2026-06-19 01:45:23,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:45:23,744.744 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 01:45:26,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:45:26,499.499 INFO    ] Checking for system updates...
[2026-06-19 01:45:26,539.539 INFO    ] 200
[2026-06-19 01:45:26,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:26,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:45:26,598.598 INFO    ] No update needed
[2026-06-19 01:45:26,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 01:45:26,637.637 INFO    ] 200
[2026-06-19 01:45:26,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:26,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:45:26,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:45:26,731.731 INFO    ] No camera update needed
[2026-06-19 01:45:26,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:45:26,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:45:26,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:45:26,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:45:28,789.789 INFO    ] ================================================
[2026-06-19 01:45:28,805.805 INFO    ] Launching Daemon at Fri Jun 19 01:45:28 IST 2026
[2026-06-19 01:45:28,816.816 INFO    ] ================================================
[2026-06-19 01:45:29,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:45:29
[2026-06-19 01:45:29,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:45:30,236.236 INFO    ] Initializing speech engine...
[2026-06-19 01:45:30,244.244 INFO    ] 2026-06-19 01:45:30
[2026-06-19 01:45:30,536.536 INFO    ] 2026-06-19 01:45:30
[2026-06-19 01:45:30,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:45:30,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:45:30,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:45:30,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:45:30,910.910 INFO    ] time= 19/06/2026 01:45:30
[2026-06-19 01:45:30,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:45:30,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:45:31,035.035 INFO    ] No existing commands found in stream
[2026-06-19 01:45:36,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:45:36,050.050 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 01:45:39,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:45:39,533.533 INFO    ] Checking for system updates...
[2026-06-19 01:45:39,569.569 INFO    ] 200
[2026-06-19 01:45:39,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:39,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:45:39,628.628 INFO    ] No update needed
[2026-06-19 01:45:39,631.631 INFO    ] Checking for camera pi updates...
[2026-06-19 01:45:39,665.665 INFO    ] 200
[2026-06-19 01:45:39,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:39,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:45:39,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:45:39,765.765 INFO    ] No camera update needed
[2026-06-19 01:45:39,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:45:39,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:45:39,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:45:39,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:45:41,820.820 INFO    ] ================================================
[2026-06-19 01:45:41,836.836 INFO    ] Launching Daemon at Fri Jun 19 01:45:41 IST 2026
[2026-06-19 01:45:41,847.847 INFO    ] ================================================
[2026-06-19 01:45:42,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:45:42
[2026-06-19 01:45:43,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:45:43,307.307 INFO    ] Initializing speech engine...
[2026-06-19 01:45:43,313.313 INFO    ] 2026-06-19 01:45:43
[2026-06-19 01:45:43,575.575 INFO    ] 2026-06-19 01:45:43
[2026-06-19 01:45:43,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:45:43,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:45:43,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:45:44,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:45:44,046.046 INFO    ] time= 19/06/2026 01:45:44
[2026-06-19 01:45:44,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:45:44,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:45:44,185.185 INFO    ] No existing commands found in stream
[2026-06-19 01:45:49,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:45:49,199.199 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 01:45:51,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:45:51,647.647 INFO    ] Checking for system updates...
[2026-06-19 01:45:51,684.684 INFO    ] 200
[2026-06-19 01:45:51,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:51,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:45:51,741.741 INFO    ] No update needed
[2026-06-19 01:45:51,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 01:45:51,781.781 INFO    ] 200
[2026-06-19 01:45:51,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:45:51,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:45:51,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:45:51,871.871 INFO    ] No camera update needed
[2026-06-19 01:45:51,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:45:51,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:45:51,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:45:51,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:45:53,928.928 INFO    ] ================================================
[2026-06-19 01:45:53,943.943 INFO    ] Launching Daemon at Fri Jun 19 01:45:53 IST 2026
[2026-06-19 01:45:53,954.954 INFO    ] ================================================
[2026-06-19 01:45:54,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:45:54
[2026-06-19 01:45:55,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:45:55,408.408 INFO    ] Initializing speech engine...
[2026-06-19 01:45:55,417.417 INFO    ] 2026-06-19 01:45:55
[2026-06-19 01:45:55,681.681 INFO    ] 2026-06-19 01:45:55
[2026-06-19 01:45:55,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:45:55,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:45:55,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:45:56,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:45:56,146.146 INFO    ] time= 19/06/2026 01:45:56
[2026-06-19 01:45:56,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:45:56,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:45:56,292.292 INFO    ] No existing commands found in stream
[2026-06-19 01:46:01,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:46:01,316.316 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 01:46:03,283.283 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:46:03,285.285 INFO    ] Checking for system updates...
[2026-06-19 01:46:03,322.322 INFO    ] 200
[2026-06-19 01:46:03,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:46:03,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:46:03,387.387 INFO    ] No update needed
[2026-06-19 01:46:03,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 01:46:03,424.424 INFO    ] 200
[2026-06-19 01:46:03,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:46:03,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:46:03,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:46:03,513.513 INFO    ] No camera update needed
[2026-06-19 01:46:03,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:46:03,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:46:03,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:46:03,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:46:05,569.569 INFO    ] ================================================
[2026-06-19 01:46:05,584.584 INFO    ] Launching Daemon at Fri Jun 19 01:46:05 IST 2026
[2026-06-19 01:46:05,595.595 INFO    ] ================================================
[2026-06-19 01:46:06,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:46:06
[2026-06-19 01:46:06,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:46:07,039.039 INFO    ] Initializing speech engine...
[2026-06-19 01:46:07,045.045 INFO    ] 2026-06-19 01:46:07
[2026-06-19 01:46:07,336.336 INFO    ] 2026-06-19 01:46:07
[2026-06-19 01:46:07,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:46:07,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:46:07,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:46:07,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:46:07,720.720 INFO    ] time= 19/06/2026 01:46:07
[2026-06-19 01:46:07,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:46:07,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:46:07,835.835 INFO    ] No existing commands found in stream
[2026-06-19 01:46:12,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:46:12,858.858 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 01:46:16,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:46:16,149.149 INFO    ] Checking for system updates...
[2026-06-19 01:46:16,186.186 INFO    ] 200
[2026-06-19 01:46:16,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:46:16,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:46:16,244.244 INFO    ] No update needed
[2026-06-19 01:46:16,246.246 INFO    ] Checking for camera pi updates...
[2026-06-19 01:46:16,280.280 INFO    ] 200
[2026-06-19 01:46:16,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:46:16,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:46:16,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:46:16,372.372 INFO    ] No camera update needed
[2026-06-19 01:46:16,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:46:16,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:46:16,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:46:16,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:46:18,428.428 INFO    ] ================================================
[2026-06-19 01:46:18,443.443 INFO    ] Launching Daemon at Fri Jun 19 01:46:18 IST 2026
[2026-06-19 01:46:18,454.454 INFO    ] ================================================
[2026-06-19 01:46:19,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:46:19
[2026-06-19 01:46:19,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:46:19,895.895 INFO    ] Initializing speech engine...
[2026-06-19 01:46:19,905.905 INFO    ] 2026-06-19 01:46:19
[2026-06-19 01:46:20,154.154 INFO    ] 2026-06-19 01:46:20
[2026-06-19 01:46:20,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:46:20,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:46:20,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:46:20,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:46:20,530.530 INFO    ] time= 19/06/2026 01:46:20
[2026-06-19 01:46:20,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:46:20,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:46:20,693.693 INFO    ] No existing commands found in stream
[2026-06-19 01:46:25,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:46:25,731.731 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 01:46:29,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:46:29,181.181 INFO    ] Checking for system updates...
[2026-06-19 01:46:29,259.259 INFO    ] 200
[2026-06-19 01:46:29,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 01:46:29,265.265 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 01:46:29,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 01:46:29,319.319 INFO    ] 200
[2026-06-19 01:46:29,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 01:46:29,324.324 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 01:46:29,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:46:29,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:46:29,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:46:29,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:46:31,383.383 INFO    ] ================================================
[2026-06-19 01:46:31,399.399 INFO    ] Launching Daemon at Fri Jun 19 01:46:31 IST 2026
[2026-06-19 01:46:31,410.410 INFO    ] ================================================
[2026-06-19 01:46:32,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:46:32
[2026-06-19 01:46:32,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:46:32,912.912 INFO    ] Initializing speech engine...
[2026-06-19 01:46:32,937.937 INFO    ] 2026-06-19 01:46:32
[2026-06-19 01:46:33,205.205 INFO    ] 2026-06-19 01:46:33
[2026-06-19 01:46:33,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:46:33,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:46:33,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:46:33,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:46:33,587.587 INFO    ] time= 19/06/2026 01:46:33
[2026-06-19 01:46:33,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:46:33,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:46:33,714.714 INFO    ] No existing commands found in stream
[2026-06-19 01:46:38,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:46:38,729.729 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 01:46:41,193.193 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:46:41,196.196 INFO    ] Checking for system updates...
[2026-06-19 01:46:41,236.236 INFO    ] 200
[2026-06-19 01:46:41,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:46:41,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:46:41,294.294 INFO    ] No update needed
[2026-06-19 01:46:41,298.298 INFO    ] Checking for camera pi updates...
[2026-06-19 01:46:41,332.332 INFO    ] 200
[2026-06-19 01:46:41,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:46:41,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:46:41,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:46:41,437.437 INFO    ] No camera update needed
[2026-06-19 01:46:41,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:46:41,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:46:41,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:46:41,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:46:43,501.501 INFO    ] ================================================
[2026-06-19 01:46:43,517.517 INFO    ] Launching Daemon at Fri Jun 19 01:46:43 IST 2026
[2026-06-19 01:46:43,528.528 INFO    ] ================================================
[2026-06-19 01:46:44,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:46:44
[2026-06-19 01:46:44,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:46:44,966.966 INFO    ] Initializing speech engine...
[2026-06-19 01:46:44,989.989 INFO    ] 2026-06-19 01:46:44
[2026-06-19 01:46:45,243.243 INFO    ] 2026-06-19 01:46:45
[2026-06-19 01:46:45,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:46:45,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:46:45,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:46:45,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:46:45,618.618 INFO    ] time= 19/06/2026 01:46:45
[2026-06-19 01:46:45,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:46:45,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:46:45,816.816 INFO    ] No existing commands found in stream
[2026-06-19 01:46:50,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:46:50,841.841 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 01:46:52,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:46:52,144.144 INFO    ] Checking for system updates...
[2026-06-19 01:46:52,203.203 INFO    ] 200
[2026-06-19 01:46:52,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:46:52,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:46:52,268.268 INFO    ] No update needed
[2026-06-19 01:46:52,270.270 INFO    ] Checking for camera pi updates...
[2026-06-19 01:46:52,305.305 INFO    ] 200
[2026-06-19 01:46:52,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:46:52,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:46:52,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:46:52,405.405 INFO    ] No camera update needed
[2026-06-19 01:46:52,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:46:52,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:46:52,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:46:52,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:46:54,466.466 INFO    ] ================================================
[2026-06-19 01:46:54,481.481 INFO    ] Launching Daemon at Fri Jun 19 01:46:54 IST 2026
[2026-06-19 01:46:54,492.492 INFO    ] ================================================
[2026-06-19 01:46:55,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:46:55
[2026-06-19 01:46:55,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:46:55,926.926 INFO    ] Initializing speech engine...
[2026-06-19 01:46:55,936.936 INFO    ] 2026-06-19 01:46:55
[2026-06-19 01:46:56,181.181 INFO    ] 2026-06-19 01:46:56
[2026-06-19 01:46:56,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:46:56,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:46:56,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:46:56,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:46:56,549.549 INFO    ] time= 19/06/2026 01:46:56
[2026-06-19 01:46:56,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:46:56,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:46:56,711.711 INFO    ] No existing commands found in stream
[2026-06-19 01:47:01,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:47:01,751.751 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 01:47:04,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:47:04,888.888 INFO    ] Checking for system updates...
[2026-06-19 01:47:04,923.923 INFO    ] 200
[2026-06-19 01:47:04,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:04,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:47:04,981.981 INFO    ] No update needed
[2026-06-19 01:47:04,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 01:47:05,023.023 INFO    ] 200
[2026-06-19 01:47:05,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:05,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:47:05,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:47:05,112.112 INFO    ] No camera update needed
[2026-06-19 01:47:05,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:47:05,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:47:05,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:47:05,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:47:07,169.169 INFO    ] ================================================
[2026-06-19 01:47:07,184.184 INFO    ] Launching Daemon at Fri Jun 19 01:47:07 IST 2026
[2026-06-19 01:47:07,195.195 INFO    ] ================================================
[2026-06-19 01:47:07,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:47:07
[2026-06-19 01:47:08,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:47:08,735.735 INFO    ] Initializing speech engine...
[2026-06-19 01:47:08,747.747 INFO    ] 2026-06-19 01:47:08
[2026-06-19 01:47:09,063.063 INFO    ] 2026-06-19 01:47:09
[2026-06-19 01:47:09,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:47:09,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:47:09,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:47:09,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:47:09,573.573 INFO    ] time= 19/06/2026 01:47:09
[2026-06-19 01:47:09,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:47:09,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:47:09,721.721 INFO    ] No existing commands found in stream
[2026-06-19 01:47:14,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:47:14,746.746 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 01:47:16,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:47:16,462.462 INFO    ] Checking for system updates...
[2026-06-19 01:47:16,501.501 INFO    ] 200
[2026-06-19 01:47:16,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:16,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:47:16,562.562 INFO    ] No update needed
[2026-06-19 01:47:16,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 01:47:16,602.602 INFO    ] 200
[2026-06-19 01:47:16,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:16,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:47:16,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:47:16,798.798 INFO    ] No camera update needed
[2026-06-19 01:47:16,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:47:16,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:47:16,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:47:16,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:47:18,853.853 INFO    ] ================================================
[2026-06-19 01:47:18,869.869 INFO    ] Launching Daemon at Fri Jun 19 01:47:18 IST 2026
[2026-06-19 01:47:18,879.879 INFO    ] ================================================
[2026-06-19 01:47:19,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:47:19
[2026-06-19 01:47:20,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:47:20,304.304 INFO    ] Initializing speech engine...
[2026-06-19 01:47:20,314.314 INFO    ] 2026-06-19 01:47:20
[2026-06-19 01:47:20,570.570 INFO    ] 2026-06-19 01:47:20
[2026-06-19 01:47:20,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:47:20,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:47:20,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:47:20,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:47:21,049.049 INFO    ] time= 19/06/2026 01:47:20
[2026-06-19 01:47:21,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:47:21,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:47:21,236.236 INFO    ] No existing commands found in stream
[2026-06-19 01:47:26,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:47:26,261.261 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 01:47:27,360.360 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:47:27,362.362 INFO    ] Checking for system updates...
[2026-06-19 01:47:27,420.420 INFO    ] 200
[2026-06-19 01:47:27,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:27,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:47:27,483.483 INFO    ] No update needed
[2026-06-19 01:47:27,486.486 INFO    ] Checking for camera pi updates...
[2026-06-19 01:47:27,524.524 INFO    ] 200
[2026-06-19 01:47:27,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:27,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:47:27,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:47:27,617.617 INFO    ] No camera update needed
[2026-06-19 01:47:27,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:47:27,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:47:27,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:47:27,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:47:29,672.672 INFO    ] ================================================
[2026-06-19 01:47:29,688.688 INFO    ] Launching Daemon at Fri Jun 19 01:47:29 IST 2026
[2026-06-19 01:47:29,700.700 INFO    ] ================================================
[2026-06-19 01:47:30,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:47:30
[2026-06-19 01:47:30,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:47:31,151.151 INFO    ] Initializing speech engine...
[2026-06-19 01:47:31,161.161 INFO    ] 2026-06-19 01:47:31
[2026-06-19 01:47:31,407.407 INFO    ] 2026-06-19 01:47:31
[2026-06-19 01:47:31,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:47:31,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:47:31,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:47:31,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:47:31,813.813 INFO    ] time= 19/06/2026 01:47:31
[2026-06-19 01:47:31,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:47:31,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:47:31,900.900 INFO    ] No existing commands found in stream
[2026-06-19 01:47:36,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:47:36,913.913 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 01:47:40,072.072 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:47:40,075.075 INFO    ] Checking for system updates...
[2026-06-19 01:47:40,116.116 INFO    ] 200
[2026-06-19 01:47:40,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:40,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:47:40,176.176 INFO    ] No update needed
[2026-06-19 01:47:40,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 01:47:40,213.213 INFO    ] 200
[2026-06-19 01:47:40,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:40,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:47:40,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:47:40,303.303 INFO    ] No camera update needed
[2026-06-19 01:47:40,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:47:40,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:47:40,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:47:40,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:47:42,360.360 INFO    ] ================================================
[2026-06-19 01:47:42,375.375 INFO    ] Launching Daemon at Fri Jun 19 01:47:42 IST 2026
[2026-06-19 01:47:42,387.387 INFO    ] ================================================
[2026-06-19 01:47:42,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:47:42
[2026-06-19 01:47:43,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:47:43,860.860 INFO    ] Initializing speech engine...
[2026-06-19 01:47:43,869.869 INFO    ] 2026-06-19 01:47:43
[2026-06-19 01:47:44,169.169 INFO    ] 2026-06-19 01:47:44
[2026-06-19 01:47:44,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:47:44,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:47:44,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:47:44,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:47:44,553.553 INFO    ] time= 19/06/2026 01:47:44
[2026-06-19 01:47:44,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:47:44,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:47:44,681.681 INFO    ] No existing commands found in stream
[2026-06-19 01:47:49,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:47:49,696.696 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 01:47:51,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:47:51,718.718 INFO    ] Checking for system updates...
[2026-06-19 01:47:51,773.773 INFO    ] 200
[2026-06-19 01:47:51,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:51,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:47:51,863.863 INFO    ] No update needed
[2026-06-19 01:47:51,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 01:47:51,904.904 INFO    ] 200
[2026-06-19 01:47:51,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:47:51,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:47:52,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:47:52,017.017 INFO    ] No camera update needed
[2026-06-19 01:47:52,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:47:52,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:47:52,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:47:52,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:47:54,073.073 INFO    ] ================================================
[2026-06-19 01:47:54,089.089 INFO    ] Launching Daemon at Fri Jun 19 01:47:54 IST 2026
[2026-06-19 01:47:54,100.100 INFO    ] ================================================
[2026-06-19 01:47:54,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:47:54
[2026-06-19 01:47:55,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:47:55,516.516 INFO    ] Initializing speech engine...
[2026-06-19 01:47:55,540.540 INFO    ] 2026-06-19 01:47:55
[2026-06-19 01:47:55,794.794 INFO    ] 2026-06-19 01:47:55
[2026-06-19 01:47:55,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:47:56,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:47:56,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:47:56,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:47:56,259.259 INFO    ] time= 19/06/2026 01:47:56
[2026-06-19 01:47:56,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:47:56,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:47:56,419.419 INFO    ] No existing commands found in stream
[2026-06-19 01:48:01,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:48:01,432.432 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 01:48:05,178.178 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:48:05,180.180 INFO    ] Checking for system updates...
[2026-06-19 01:48:05,220.220 INFO    ] 200
[2026-06-19 01:48:05,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:05,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:48:05,278.278 INFO    ] No update needed
[2026-06-19 01:48:05,281.281 INFO    ] Checking for camera pi updates...
[2026-06-19 01:48:05,314.314 INFO    ] 200
[2026-06-19 01:48:05,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:05,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:48:05,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:48:05,406.406 INFO    ] No camera update needed
[2026-06-19 01:48:05,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:48:05,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:48:05,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:48:05,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:48:07,463.463 INFO    ] ================================================
[2026-06-19 01:48:07,479.479 INFO    ] Launching Daemon at Fri Jun 19 01:48:07 IST 2026
[2026-06-19 01:48:07,491.491 INFO    ] ================================================
[2026-06-19 01:48:08,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:48:08
[2026-06-19 01:48:08,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:48:09,009.009 INFO    ] Initializing speech engine...
[2026-06-19 01:48:09,019.019 INFO    ] 2026-06-19 01:48:09
[2026-06-19 01:48:09,330.330 INFO    ] 2026-06-19 01:48:09
[2026-06-19 01:48:09,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:48:09,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:48:09,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:48:09,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:48:09,821.821 INFO    ] time= 19/06/2026 01:48:09
[2026-06-19 01:48:09,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:48:09,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:48:09,964.964 INFO    ] No existing commands found in stream
[2026-06-19 01:48:14,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:48:14,993.993 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 01:48:19,048.048 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:48:19,051.051 INFO    ] Checking for system updates...
[2026-06-19 01:48:19,092.092 INFO    ] 200
[2026-06-19 01:48:19,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:19,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:48:19,151.151 INFO    ] No update needed
[2026-06-19 01:48:19,153.153 INFO    ] Checking for camera pi updates...
[2026-06-19 01:48:19,190.190 INFO    ] 200
[2026-06-19 01:48:19,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:19,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:48:19,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:48:19,297.297 INFO    ] No camera update needed
[2026-06-19 01:48:19,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:48:19,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:48:19,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:48:19,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:48:21,353.353 INFO    ] ================================================
[2026-06-19 01:48:21,369.369 INFO    ] Launching Daemon at Fri Jun 19 01:48:21 IST 2026
[2026-06-19 01:48:21,380.380 INFO    ] ================================================
[2026-06-19 01:48:21,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:48:21
[2026-06-19 01:48:22,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:48:22,825.825 INFO    ] Initializing speech engine...
[2026-06-19 01:48:22,844.844 INFO    ] 2026-06-19 01:48:22
[2026-06-19 01:48:23,090.090 INFO    ] 2026-06-19 01:48:23
[2026-06-19 01:48:23,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:48:23,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:48:23,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:48:23,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:48:23,592.592 INFO    ] time= 19/06/2026 01:48:23
[2026-06-19 01:48:23,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:48:23,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:48:23,766.766 INFO    ] No existing commands found in stream
[2026-06-19 01:48:28,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:48:28,790.790 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 01:48:30,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:48:30,336.336 INFO    ] Checking for system updates...
[2026-06-19 01:48:30,378.378 INFO    ] 200
[2026-06-19 01:48:30,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:30,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:48:30,444.444 INFO    ] No update needed
[2026-06-19 01:48:30,446.446 INFO    ] Checking for camera pi updates...
[2026-06-19 01:48:30,484.484 INFO    ] 200
[2026-06-19 01:48:30,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:30,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:48:30,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:48:30,578.578 INFO    ] No camera update needed
[2026-06-19 01:48:30,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:48:30,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:48:30,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:48:30,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:48:32,633.633 INFO    ] ================================================
[2026-06-19 01:48:32,649.649 INFO    ] Launching Daemon at Fri Jun 19 01:48:32 IST 2026
[2026-06-19 01:48:32,660.660 INFO    ] ================================================
[2026-06-19 01:48:33,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:48:33
[2026-06-19 01:48:33,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:48:34,082.082 INFO    ] Initializing speech engine...
[2026-06-19 01:48:34,095.095 INFO    ] 2026-06-19 01:48:34
[2026-06-19 01:48:34,379.379 INFO    ] 2026-06-19 01:48:34
[2026-06-19 01:48:34,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:48:34,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:48:34,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:48:34,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:48:34,755.755 INFO    ] time= 19/06/2026 01:48:34
[2026-06-19 01:48:34,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:48:34,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:48:34,878.878 INFO    ] No existing commands found in stream
[2026-06-19 01:48:39,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:48:39,893.893 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 01:48:40,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:48:40,491.491 INFO    ] Checking for system updates...
[2026-06-19 01:48:40,527.527 INFO    ] 200
[2026-06-19 01:48:40,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:40,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:48:40,589.589 INFO    ] No update needed
[2026-06-19 01:48:40,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 01:48:40,625.625 INFO    ] 200
[2026-06-19 01:48:40,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:40,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:48:40,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:48:40,724.724 INFO    ] No camera update needed
[2026-06-19 01:48:40,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:48:40,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:48:40,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:48:40,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:48:42,779.779 INFO    ] ================================================
[2026-06-19 01:48:42,794.794 INFO    ] Launching Daemon at Fri Jun 19 01:48:42 IST 2026
[2026-06-19 01:48:42,804.804 INFO    ] ================================================
[2026-06-19 01:48:43,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:48:43
[2026-06-19 01:48:43,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:48:44,249.249 INFO    ] Initializing speech engine...
[2026-06-19 01:48:44,256.256 INFO    ] 2026-06-19 01:48:44
[2026-06-19 01:48:44,552.552 INFO    ] 2026-06-19 01:48:44
[2026-06-19 01:48:44,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:48:44,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:48:44,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:48:44,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:48:44,965.965 INFO    ] time= 19/06/2026 01:48:44
[2026-06-19 01:48:44,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:48:44,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:48:45,049.049 INFO    ] No existing commands found in stream
[2026-06-19 01:48:50,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:48:50,065.065 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 01:48:52,285.285 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:48:52,288.288 INFO    ] Checking for system updates...
[2026-06-19 01:48:52,323.323 INFO    ] 200
[2026-06-19 01:48:52,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:52,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:48:52,387.387 INFO    ] No update needed
[2026-06-19 01:48:52,389.389 INFO    ] Checking for camera pi updates...
[2026-06-19 01:48:52,424.424 INFO    ] 200
[2026-06-19 01:48:52,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:48:52,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:48:52,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:48:52,529.529 INFO    ] No camera update needed
[2026-06-19 01:48:52,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:48:52,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:48:52,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:48:52,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:48:54,585.585 INFO    ] ================================================
[2026-06-19 01:48:54,600.600 INFO    ] Launching Daemon at Fri Jun 19 01:48:54 IST 2026
[2026-06-19 01:48:54,611.611 INFO    ] ================================================
[2026-06-19 01:48:55,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:48:55
[2026-06-19 01:48:55,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:48:56,019.019 INFO    ] Initializing speech engine...
[2026-06-19 01:48:56,028.028 INFO    ] 2026-06-19 01:48:56
[2026-06-19 01:48:56,321.321 INFO    ] 2026-06-19 01:48:56
[2026-06-19 01:48:56,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:48:56,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:48:56,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:48:56,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:48:56,699.699 INFO    ] time= 19/06/2026 01:48:56
[2026-06-19 01:48:56,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:48:56,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:48:56,823.823 INFO    ] No existing commands found in stream
[2026-06-19 01:49:01,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:49:01,838.838 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 01:49:04,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:49:04,255.255 INFO    ] Checking for system updates...
[2026-06-19 01:49:04,295.295 INFO    ] 200
[2026-06-19 01:49:04,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:04,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:49:04,359.359 INFO    ] No update needed
[2026-06-19 01:49:04,362.362 INFO    ] Checking for camera pi updates...
[2026-06-19 01:49:04,399.399 INFO    ] 200
[2026-06-19 01:49:04,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:04,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:49:04,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:49:04,490.490 INFO    ] No camera update needed
[2026-06-19 01:49:04,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:49:04,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:49:04,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:49:04,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:49:06,547.547 INFO    ] ================================================
[2026-06-19 01:49:06,562.562 INFO    ] Launching Daemon at Fri Jun 19 01:49:06 IST 2026
[2026-06-19 01:49:06,573.573 INFO    ] ================================================
[2026-06-19 01:49:07,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:49:07
[2026-06-19 01:49:07,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:49:08,227.227 INFO    ] Initializing speech engine...
[2026-06-19 01:49:08,239.239 INFO    ] 2026-06-19 01:49:08
[2026-06-19 01:49:08,549.549 INFO    ] 2026-06-19 01:49:08
[2026-06-19 01:49:08,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:49:08,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:49:08,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:49:09,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:49:09,052.052 INFO    ] time= 19/06/2026 01:49:09
[2026-06-19 01:49:09,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:49:09,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:49:09,207.207 INFO    ] No existing commands found in stream
[2026-06-19 01:49:14,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:49:14,230.230 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 01:49:16,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:49:16,102.102 INFO    ] Checking for system updates...
[2026-06-19 01:49:16,140.140 INFO    ] 200
[2026-06-19 01:49:16,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:16,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:49:16,199.199 INFO    ] No update needed
[2026-06-19 01:49:16,202.202 INFO    ] Checking for camera pi updates...
[2026-06-19 01:49:16,237.237 INFO    ] 200
[2026-06-19 01:49:16,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:16,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:49:16,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:49:16,331.331 INFO    ] No camera update needed
[2026-06-19 01:49:16,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:49:16,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:49:16,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:49:16,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:49:18,389.389 INFO    ] ================================================
[2026-06-19 01:49:18,405.405 INFO    ] Launching Daemon at Fri Jun 19 01:49:18 IST 2026
[2026-06-19 01:49:18,415.415 INFO    ] ================================================
[2026-06-19 01:49:18,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:49:18
[2026-06-19 01:49:19,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:49:19,836.836 INFO    ] Initializing speech engine...
[2026-06-19 01:49:19,844.844 INFO    ] 2026-06-19 01:49:19
[2026-06-19 01:49:20,136.136 INFO    ] 2026-06-19 01:49:20
[2026-06-19 01:49:20,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:49:20,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:49:20,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:49:20,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:49:20,530.530 INFO    ] time= 19/06/2026 01:49:20
[2026-06-19 01:49:20,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:49:20,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:49:20,635.635 INFO    ] No existing commands found in stream
[2026-06-19 01:49:25,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:49:25,650.650 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 01:49:29,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:49:29,335.335 INFO    ] Checking for system updates...
[2026-06-19 01:49:29,375.375 INFO    ] 200
[2026-06-19 01:49:29,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:29,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:49:29,434.434 INFO    ] No update needed
[2026-06-19 01:49:29,436.436 INFO    ] Checking for camera pi updates...
[2026-06-19 01:49:29,473.473 INFO    ] 200
[2026-06-19 01:49:29,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:29,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:49:29,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:49:29,681.681 INFO    ] No camera update needed
[2026-06-19 01:49:29,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:49:29,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:49:29,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:49:29,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:49:31,736.736 INFO    ] ================================================
[2026-06-19 01:49:31,751.751 INFO    ] Launching Daemon at Fri Jun 19 01:49:31 IST 2026
[2026-06-19 01:49:31,762.762 INFO    ] ================================================
[2026-06-19 01:49:32,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:49:32
[2026-06-19 01:49:32,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:49:33,279.279 INFO    ] Initializing speech engine...
[2026-06-19 01:49:33,293.293 INFO    ] 2026-06-19 01:49:33
[2026-06-19 01:49:33,571.571 INFO    ] 2026-06-19 01:49:33
[2026-06-19 01:49:33,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:49:33,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:49:33,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:49:33,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:49:33,927.927 INFO    ] time= 19/06/2026 01:49:33
[2026-06-19 01:49:33,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:49:33,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:49:34,050.050 INFO    ] No existing commands found in stream
[2026-06-19 01:49:39,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:49:39,065.065 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 01:49:40,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:49:40,860.860 INFO    ] Checking for system updates...
[2026-06-19 01:49:40,896.896 INFO    ] 200
[2026-06-19 01:49:40,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:40,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:49:40,960.960 INFO    ] No update needed
[2026-06-19 01:49:40,962.962 INFO    ] Checking for camera pi updates...
[2026-06-19 01:49:40,999.999 INFO    ] 200
[2026-06-19 01:49:41,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:41,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:49:41,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:49:41,097.097 INFO    ] No camera update needed
[2026-06-19 01:49:41,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:49:41,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:49:41,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:49:41,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:49:43,152.152 INFO    ] ================================================
[2026-06-19 01:49:43,167.167 INFO    ] Launching Daemon at Fri Jun 19 01:49:43 IST 2026
[2026-06-19 01:49:43,178.178 INFO    ] ================================================
[2026-06-19 01:49:43,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:49:43
[2026-06-19 01:49:44,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:49:44,627.627 INFO    ] Initializing speech engine...
[2026-06-19 01:49:44,637.637 INFO    ] 2026-06-19 01:49:44
[2026-06-19 01:49:44,882.882 INFO    ] 2026-06-19 01:49:44
[2026-06-19 01:49:44,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:49:45,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:49:45,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:49:45,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:49:45,251.251 INFO    ] time= 19/06/2026 01:49:45
[2026-06-19 01:49:45,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:49:45,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:49:45,429.429 INFO    ] No existing commands found in stream
[2026-06-19 01:49:50,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:49:50,461.461 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 01:49:51,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:49:51,434.434 INFO    ] Checking for system updates...
[2026-06-19 01:49:51,471.471 INFO    ] 200
[2026-06-19 01:49:51,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:51,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:49:51,537.537 INFO    ] No update needed
[2026-06-19 01:49:51,540.540 INFO    ] Checking for camera pi updates...
[2026-06-19 01:49:51,574.574 INFO    ] 200
[2026-06-19 01:49:51,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:49:51,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:49:51,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:49:51,670.670 INFO    ] No camera update needed
[2026-06-19 01:49:51,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:49:51,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:49:51,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:49:51,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:49:53,728.728 INFO    ] ================================================
[2026-06-19 01:49:53,743.743 INFO    ] Launching Daemon at Fri Jun 19 01:49:53 IST 2026
[2026-06-19 01:49:53,754.754 INFO    ] ================================================
[2026-06-19 01:49:54,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:49:54
[2026-06-19 01:49:54,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:49:55,162.162 INFO    ] Initializing speech engine...
[2026-06-19 01:49:55,177.177 INFO    ] 2026-06-19 01:49:55
[2026-06-19 01:49:55,440.440 INFO    ] 2026-06-19 01:49:55
[2026-06-19 01:49:55,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:49:55,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:49:55,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:49:55,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:49:55,911.911 INFO    ] time= 19/06/2026 01:49:55
[2026-06-19 01:49:55,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:49:56,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:49:56,059.059 INFO    ] No existing commands found in stream
[2026-06-19 01:50:01,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:50:01,074.074 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 01:50:07,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:50:07,010.010 INFO    ] Checking for system updates...
[2026-06-19 01:50:07,057.057 INFO    ] 200
[2026-06-19 01:50:07,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:07,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:50:07,123.123 INFO    ] No update needed
[2026-06-19 01:50:07,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 01:50:07,170.170 INFO    ] 200
[2026-06-19 01:50:07,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:07,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:50:07,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:50:07,279.279 INFO    ] No camera update needed
[2026-06-19 01:50:07,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:50:07,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:50:07,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:50:07,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:50:09,337.337 INFO    ] ================================================
[2026-06-19 01:50:09,353.353 INFO    ] Launching Daemon at Fri Jun 19 01:50:09 IST 2026
[2026-06-19 01:50:09,365.365 INFO    ] ================================================
[2026-06-19 01:50:09,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:50:09
[2026-06-19 01:50:10,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:50:10,846.846 INFO    ] Initializing speech engine...
[2026-06-19 01:50:10,853.853 INFO    ] 2026-06-19 01:50:10
[2026-06-19 01:50:11,156.156 INFO    ] 2026-06-19 01:50:11
[2026-06-19 01:50:11,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:50:11,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:50:11,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:50:11,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:50:11,521.521 INFO    ] time= 19/06/2026 01:50:11
[2026-06-19 01:50:11,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:50:11,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:50:11,605.605 INFO    ] No existing commands found in stream
[2026-06-19 01:50:16,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:50:16,619.619 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 01:50:19,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:50:19,065.065 INFO    ] Checking for system updates...
[2026-06-19 01:50:19,107.107 INFO    ] 200
[2026-06-19 01:50:19,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:19,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:50:19,165.165 INFO    ] No update needed
[2026-06-19 01:50:19,168.168 INFO    ] Checking for camera pi updates...
[2026-06-19 01:50:19,202.202 INFO    ] 200
[2026-06-19 01:50:19,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:19,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:50:19,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:50:19,297.297 INFO    ] No camera update needed
[2026-06-19 01:50:19,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:50:19,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:50:19,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:50:19,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:50:21,354.354 INFO    ] ================================================
[2026-06-19 01:50:21,370.370 INFO    ] Launching Daemon at Fri Jun 19 01:50:21 IST 2026
[2026-06-19 01:50:21,381.381 INFO    ] ================================================
[2026-06-19 01:50:21,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:50:21
[2026-06-19 01:50:22,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:50:22,793.793 INFO    ] Initializing speech engine...
[2026-06-19 01:50:22,800.800 INFO    ] 2026-06-19 01:50:22
[2026-06-19 01:50:23,095.095 INFO    ] 2026-06-19 01:50:23
[2026-06-19 01:50:23,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:50:23,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:50:23,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:50:23,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:50:23,488.488 INFO    ] time= 19/06/2026 01:50:23
[2026-06-19 01:50:23,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:50:23,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:50:23,657.657 INFO    ] No existing commands found in stream
[2026-06-19 01:50:28,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:50:28,690.690 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 01:50:29,995.995 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:50:29,998.998 INFO    ] Checking for system updates...
[2026-06-19 01:50:30,038.038 INFO    ] 200
[2026-06-19 01:50:30,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:30,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:50:30,095.095 INFO    ] No update needed
[2026-06-19 01:50:30,097.097 INFO    ] Checking for camera pi updates...
[2026-06-19 01:50:30,131.131 INFO    ] 200
[2026-06-19 01:50:30,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:30,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:50:30,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:50:30,228.228 INFO    ] No camera update needed
[2026-06-19 01:50:30,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:50:30,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:50:30,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:50:30,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:50:32,287.287 INFO    ] ================================================
[2026-06-19 01:50:32,304.304 INFO    ] Launching Daemon at Fri Jun 19 01:50:32 IST 2026
[2026-06-19 01:50:32,323.323 INFO    ] ================================================
[2026-06-19 01:50:32,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:50:32
[2026-06-19 01:50:33,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:50:33,869.869 INFO    ] Initializing speech engine...
[2026-06-19 01:50:33,875.875 INFO    ] 2026-06-19 01:50:33
[2026-06-19 01:50:34,135.135 INFO    ] 2026-06-19 01:50:34
[2026-06-19 01:50:34,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:50:34,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:50:34,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:50:34,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:50:34,601.601 INFO    ] time= 19/06/2026 01:50:34
[2026-06-19 01:50:34,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:50:34,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:50:34,746.746 INFO    ] No existing commands found in stream
[2026-06-19 01:50:39,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:50:39,769.769 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 01:50:40,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:50:40,541.541 INFO    ] Checking for system updates...
[2026-06-19 01:50:40,577.577 INFO    ] 200
[2026-06-19 01:50:40,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:40,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:50:40,635.635 INFO    ] No update needed
[2026-06-19 01:50:40,637.637 INFO    ] Checking for camera pi updates...
[2026-06-19 01:50:40,675.675 INFO    ] 200
[2026-06-19 01:50:40,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:40,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:50:40,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:50:40,768.768 INFO    ] No camera update needed
[2026-06-19 01:50:40,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:50:40,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:50:40,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:50:40,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:50:42,824.824 INFO    ] ================================================
[2026-06-19 01:50:42,840.840 INFO    ] Launching Daemon at Fri Jun 19 01:50:42 IST 2026
[2026-06-19 01:50:42,851.851 INFO    ] ================================================
[2026-06-19 01:50:43,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:50:43
[2026-06-19 01:50:44,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:50:44,265.265 INFO    ] Initializing speech engine...
[2026-06-19 01:50:44,272.272 INFO    ] 2026-06-19 01:50:44
[2026-06-19 01:50:44,566.566 INFO    ] 2026-06-19 01:50:44
[2026-06-19 01:50:44,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:50:44,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:50:44,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:50:44,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:50:45,006.006 INFO    ] time= 19/06/2026 01:50:44
[2026-06-19 01:50:45,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:50:45,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:50:45,108.108 INFO    ] No existing commands found in stream
[2026-06-19 01:50:50,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:50:50,124.124 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-19 01:50:51,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:50:51,825.825 INFO    ] Checking for system updates...
[2026-06-19 01:50:51,863.863 INFO    ] 200
[2026-06-19 01:50:51,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:51,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:50:51,920.920 INFO    ] No update needed
[2026-06-19 01:50:51,923.923 INFO    ] Checking for camera pi updates...
[2026-06-19 01:50:51,956.956 INFO    ] 200
[2026-06-19 01:50:51,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:50:52,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:50:52,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:50:52,049.049 INFO    ] No camera update needed
[2026-06-19 01:50:52,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:50:52,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:50:52,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:50:52,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:50:54,106.106 INFO    ] ================================================
[2026-06-19 01:50:54,121.121 INFO    ] Launching Daemon at Fri Jun 19 01:50:54 IST 2026
[2026-06-19 01:50:54,132.132 INFO    ] ================================================
[2026-06-19 01:50:54,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:50:54
[2026-06-19 01:50:55,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:50:55,554.554 INFO    ] Initializing speech engine...
[2026-06-19 01:50:55,563.563 INFO    ] 2026-06-19 01:50:55
[2026-06-19 01:50:55,809.809 INFO    ] 2026-06-19 01:50:55
[2026-06-19 01:50:55,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:50:56,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:50:56,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:50:56,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:50:56,179.179 INFO    ] time= 19/06/2026 01:50:56
[2026-06-19 01:50:56,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:50:56,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:50:56,343.343 INFO    ] No existing commands found in stream
[2026-06-19 01:51:01,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:51:01,378.378 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 01:51:03,213.213 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:51:03,216.216 INFO    ] Checking for system updates...
[2026-06-19 01:51:03,252.252 INFO    ] 200
[2026-06-19 01:51:03,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:03,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:51:03,313.313 INFO    ] No update needed
[2026-06-19 01:51:03,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 01:51:03,353.353 INFO    ] 200
[2026-06-19 01:51:03,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:03,415.415 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:51:03,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:51:03,468.468 INFO    ] No camera update needed
[2026-06-19 01:51:03,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:51:03,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:51:03,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:51:03,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:51:05,523.523 INFO    ] ================================================
[2026-06-19 01:51:05,538.538 INFO    ] Launching Daemon at Fri Jun 19 01:51:05 IST 2026
[2026-06-19 01:51:05,549.549 INFO    ] ================================================
[2026-06-19 01:51:06,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:51:06
[2026-06-19 01:51:06,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:51:06,968.968 INFO    ] Initializing speech engine...
[2026-06-19 01:51:06,983.983 INFO    ] 2026-06-19 01:51:06
[2026-06-19 01:51:07,266.266 INFO    ] 2026-06-19 01:51:07
[2026-06-19 01:51:07,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:51:07,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:51:07,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:51:07,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:51:07,642.642 INFO    ] time= 19/06/2026 01:51:07
[2026-06-19 01:51:07,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:51:07,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:51:07,765.765 INFO    ] No existing commands found in stream
[2026-06-19 01:51:12,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:51:12,780.780 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 01:51:14,166.166 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:51:14,169.169 INFO    ] Checking for system updates...
[2026-06-19 01:51:14,208.208 INFO    ] 200
[2026-06-19 01:51:14,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:14,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:51:14,272.272 INFO    ] No update needed
[2026-06-19 01:51:14,274.274 INFO    ] Checking for camera pi updates...
[2026-06-19 01:51:14,309.309 INFO    ] 200
[2026-06-19 01:51:14,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:14,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:51:14,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:51:14,406.406 INFO    ] No camera update needed
[2026-06-19 01:51:14,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:51:14,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:51:14,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:51:14,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:51:16,463.463 INFO    ] ================================================
[2026-06-19 01:51:16,478.478 INFO    ] Launching Daemon at Fri Jun 19 01:51:16 IST 2026
[2026-06-19 01:51:16,489.489 INFO    ] ================================================
[2026-06-19 01:51:17,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:51:17
[2026-06-19 01:51:17,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:51:17,911.911 INFO    ] Initializing speech engine...
[2026-06-19 01:51:17,920.920 INFO    ] 2026-06-19 01:51:17
[2026-06-19 01:51:18,167.167 INFO    ] 2026-06-19 01:51:18
[2026-06-19 01:51:18,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:51:18,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:51:18,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:51:18,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:51:18,640.640 INFO    ] time= 19/06/2026 01:51:18
[2026-06-19 01:51:18,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:51:18,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:51:18,789.789 INFO    ] No existing commands found in stream
[2026-06-19 01:51:23,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:51:23,803.803 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 01:51:25,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:51:25,279.279 INFO    ] Checking for system updates...
[2026-06-19 01:51:25,316.316 INFO    ] 200
[2026-06-19 01:51:25,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:25,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:51:25,375.375 INFO    ] No update needed
[2026-06-19 01:51:25,377.377 INFO    ] Checking for camera pi updates...
[2026-06-19 01:51:25,412.412 INFO    ] 200
[2026-06-19 01:51:25,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:25,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:51:25,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:51:25,506.506 INFO    ] No camera update needed
[2026-06-19 01:51:25,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:51:25,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:51:25,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:51:25,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:51:27,564.564 INFO    ] ================================================
[2026-06-19 01:51:27,579.579 INFO    ] Launching Daemon at Fri Jun 19 01:51:27 IST 2026
[2026-06-19 01:51:27,589.589 INFO    ] ================================================
[2026-06-19 01:51:28,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:51:28
[2026-06-19 01:51:28,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:51:28,999.999 INFO    ] Initializing speech engine...
[2026-06-19 01:51:29,022.022 INFO    ] 2026-06-19 01:51:29
[2026-06-19 01:51:29,274.274 INFO    ] 2026-06-19 01:51:29
[2026-06-19 01:51:29,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:51:29,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:51:29,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:51:29,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:51:29,644.644 INFO    ] time= 19/06/2026 01:51:29
[2026-06-19 01:51:29,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:51:29,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:51:29,816.816 INFO    ] No existing commands found in stream
[2026-06-19 01:51:34,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:51:34,850.850 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 01:51:39,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:51:39,222.222 INFO    ] Checking for system updates...
[2026-06-19 01:51:39,258.258 INFO    ] 200
[2026-06-19 01:51:39,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:39,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:51:39,326.326 INFO    ] No update needed
[2026-06-19 01:51:39,329.329 INFO    ] Checking for camera pi updates...
[2026-06-19 01:51:39,367.367 INFO    ] 200
[2026-06-19 01:51:39,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:39,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:51:39,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:51:39,473.473 INFO    ] No camera update needed
[2026-06-19 01:51:39,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:51:39,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:51:39,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:51:39,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:51:41,533.533 INFO    ] ================================================
[2026-06-19 01:51:41,548.548 INFO    ] Launching Daemon at Fri Jun 19 01:51:41 IST 2026
[2026-06-19 01:51:41,559.559 INFO    ] ================================================
[2026-06-19 01:51:42,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:51:42
[2026-06-19 01:51:42,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:51:42,980.980 INFO    ] Initializing speech engine...
[2026-06-19 01:51:42,988.988 INFO    ] 2026-06-19 01:51:42
[2026-06-19 01:51:43,236.236 INFO    ] 2026-06-19 01:51:43
[2026-06-19 01:51:43,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:51:43,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:51:43,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:51:43,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:51:43,707.707 INFO    ] time= 19/06/2026 01:51:43
[2026-06-19 01:51:43,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:51:43,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:51:43,849.849 INFO    ] No existing commands found in stream
[2026-06-19 01:51:48,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:51:48,863.863 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 01:51:51,939.939 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:51:51,942.942 INFO    ] Checking for system updates...
[2026-06-19 01:51:51,981.981 INFO    ] 200
[2026-06-19 01:51:51,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:52,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:51:52,045.045 INFO    ] No update needed
[2026-06-19 01:51:52,047.047 INFO    ] Checking for camera pi updates...
[2026-06-19 01:51:52,085.085 INFO    ] 200
[2026-06-19 01:51:52,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:51:52,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:51:52,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:51:52,185.185 INFO    ] No camera update needed
[2026-06-19 01:51:52,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:51:52,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:51:52,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:51:52,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:51:54,241.241 INFO    ] ================================================
[2026-06-19 01:51:54,256.256 INFO    ] Launching Daemon at Fri Jun 19 01:51:54 IST 2026
[2026-06-19 01:51:54,266.266 INFO    ] ================================================
[2026-06-19 01:51:54,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:51:54
[2026-06-19 01:51:55,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:51:55,799.799 INFO    ] Initializing speech engine...
[2026-06-19 01:51:55,808.808 INFO    ] 2026-06-19 01:51:55
[2026-06-19 01:51:56,084.084 INFO    ] 2026-06-19 01:51:56
[2026-06-19 01:51:56,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:51:56,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:51:56,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:51:56,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:51:56,550.550 INFO    ] time= 19/06/2026 01:51:56
[2026-06-19 01:51:56,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:51:56,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:51:56,697.697 INFO    ] No existing commands found in stream
[2026-06-19 01:52:01,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:52:01,712.712 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 01:52:03,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:52:03,943.943 INFO    ] Checking for system updates...
[2026-06-19 01:52:03,985.985 INFO    ] 200
[2026-06-19 01:52:03,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:04,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:52:04,052.052 INFO    ] No update needed
[2026-06-19 01:52:04,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 01:52:04,090.090 INFO    ] 200
[2026-06-19 01:52:04,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:04,135.135 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:52:04,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:52:04,187.187 INFO    ] No camera update needed
[2026-06-19 01:52:04,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:52:04,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:52:04,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:52:04,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:52:06,245.245 INFO    ] ================================================
[2026-06-19 01:52:06,261.261 INFO    ] Launching Daemon at Fri Jun 19 01:52:06 IST 2026
[2026-06-19 01:52:06,272.272 INFO    ] ================================================
[2026-06-19 01:52:06,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:52:06
[2026-06-19 01:52:07,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:52:07,694.694 INFO    ] Initializing speech engine...
[2026-06-19 01:52:07,703.703 INFO    ] 2026-06-19 01:52:07
[2026-06-19 01:52:07,962.962 INFO    ] 2026-06-19 01:52:07
[2026-06-19 01:52:08,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:52:08,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:52:08,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:52:08,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:52:08,453.453 INFO    ] time= 19/06/2026 01:52:08
[2026-06-19 01:52:08,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:52:08,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:52:08,637.637 INFO    ] No existing commands found in stream
[2026-06-19 01:52:13,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:52:13,665.665 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 01:52:15,294.294 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:52:15,297.297 INFO    ] Checking for system updates...
[2026-06-19 01:52:15,337.337 INFO    ] 200
[2026-06-19 01:52:15,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:15,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:52:15,402.402 INFO    ] No update needed
[2026-06-19 01:52:15,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 01:52:15,442.442 INFO    ] 200
[2026-06-19 01:52:15,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:15,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:52:15,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:52:15,538.538 INFO    ] No camera update needed
[2026-06-19 01:52:15,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:52:15,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:52:15,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:52:15,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:52:17,594.594 INFO    ] ================================================
[2026-06-19 01:52:17,609.609 INFO    ] Launching Daemon at Fri Jun 19 01:52:17 IST 2026
[2026-06-19 01:52:17,620.620 INFO    ] ================================================
[2026-06-19 01:52:18,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:52:18
[2026-06-19 01:52:18,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:52:19,230.230 INFO    ] Initializing speech engine...
[2026-06-19 01:52:19,243.243 INFO    ] 2026-06-19 01:52:19
[2026-06-19 01:52:19,523.523 INFO    ] 2026-06-19 01:52:19
[2026-06-19 01:52:19,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:52:19,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:52:19,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:52:19,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:52:19,988.988 INFO    ] time= 19/06/2026 01:52:19
[2026-06-19 01:52:20,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:52:20,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:52:20,126.126 INFO    ] No existing commands found in stream
[2026-06-19 01:52:25,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:52:25,149.149 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 01:52:27,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:52:27,924.924 INFO    ] Checking for system updates...
[2026-06-19 01:52:27,963.963 INFO    ] 200
[2026-06-19 01:52:27,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:28,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:52:28,026.026 INFO    ] No update needed
[2026-06-19 01:52:28,029.029 INFO    ] Checking for camera pi updates...
[2026-06-19 01:52:28,062.062 INFO    ] 200
[2026-06-19 01:52:28,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:28,106.106 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:52:28,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:52:28,154.154 INFO    ] No camera update needed
[2026-06-19 01:52:28,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:52:28,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:52:28,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:52:28,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:52:30,210.210 INFO    ] ================================================
[2026-06-19 01:52:30,228.228 INFO    ] Launching Daemon at Fri Jun 19 01:52:30 IST 2026
[2026-06-19 01:52:30,239.239 INFO    ] ================================================
[2026-06-19 01:52:30,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:52:30
[2026-06-19 01:52:31,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:52:31,807.807 INFO    ] Initializing speech engine...
[2026-06-19 01:52:31,823.823 INFO    ] 2026-06-19 01:52:31
[2026-06-19 01:52:32,132.132 INFO    ] 2026-06-19 01:52:32
[2026-06-19 01:52:32,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:52:32,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:52:32,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:52:32,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:52:32,511.511 INFO    ] time= 19/06/2026 01:52:32
[2026-06-19 01:52:32,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:52:32,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:52:32,586.586 INFO    ] No existing commands found in stream
[2026-06-19 01:52:37,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:52:37,602.602 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 01:52:40,355.355 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:52:40,357.357 INFO    ] Checking for system updates...
[2026-06-19 01:52:40,393.393 INFO    ] 200
[2026-06-19 01:52:40,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:40,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:52:40,451.451 INFO    ] No update needed
[2026-06-19 01:52:40,454.454 INFO    ] Checking for camera pi updates...
[2026-06-19 01:52:40,487.487 INFO    ] 200
[2026-06-19 01:52:40,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:40,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:52:40,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:52:40,588.588 INFO    ] No camera update needed
[2026-06-19 01:52:40,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:52:40,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:52:40,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:52:40,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:52:42,646.646 INFO    ] ================================================
[2026-06-19 01:52:42,661.661 INFO    ] Launching Daemon at Fri Jun 19 01:52:42 IST 2026
[2026-06-19 01:52:42,672.672 INFO    ] ================================================
[2026-06-19 01:52:43,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:52:43
[2026-06-19 01:52:43,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:52:44,180.180 INFO    ] Initializing speech engine...
[2026-06-19 01:52:44,194.194 INFO    ] 2026-06-19 01:52:44
[2026-06-19 01:52:44,505.505 INFO    ] 2026-06-19 01:52:44
[2026-06-19 01:52:44,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:52:44,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:52:44,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:52:44,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:52:45,027.027 INFO    ] time= 19/06/2026 01:52:44
[2026-06-19 01:52:45,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:52:45,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:52:45,182.182 INFO    ] No existing commands found in stream
[2026-06-19 01:52:50,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:52:50,203.203 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 01:52:51,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:52:51,609.609 INFO    ] Checking for system updates...
[2026-06-19 01:52:51,647.647 INFO    ] 200
[2026-06-19 01:52:51,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:51,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:52:51,714.714 INFO    ] No update needed
[2026-06-19 01:52:51,717.717 INFO    ] Checking for camera pi updates...
[2026-06-19 01:52:51,756.756 INFO    ] 200
[2026-06-19 01:52:51,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:52:51,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:52:51,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:52:51,854.854 INFO    ] No camera update needed
[2026-06-19 01:52:51,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:52:51,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:52:51,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:52:51,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:52:53,915.915 INFO    ] ================================================
[2026-06-19 01:52:53,930.930 INFO    ] Launching Daemon at Fri Jun 19 01:52:53 IST 2026
[2026-06-19 01:52:53,941.941 INFO    ] ================================================
[2026-06-19 01:52:54,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:52:54
[2026-06-19 01:52:55,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:52:55,412.412 INFO    ] Initializing speech engine...
[2026-06-19 01:52:55,424.424 INFO    ] 2026-06-19 01:52:55
[2026-06-19 01:52:55,711.711 INFO    ] 2026-06-19 01:52:55
[2026-06-19 01:52:55,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:52:56,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:52:56,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:52:56,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:52:56,241.241 INFO    ] time= 19/06/2026 01:52:56
[2026-06-19 01:52:56,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:52:56,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:52:56,365.365 INFO    ] No existing commands found in stream
[2026-06-19 01:53:01,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:53:01,399.399 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 01:53:05,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:53:05,425.425 INFO    ] Checking for system updates...
[2026-06-19 01:53:05,466.466 INFO    ] 200
[2026-06-19 01:53:05,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:05,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:53:05,526.526 INFO    ] No update needed
[2026-06-19 01:53:05,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 01:53:05,564.564 INFO    ] 200
[2026-06-19 01:53:05,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:05,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:53:05,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:53:05,659.659 INFO    ] No camera update needed
[2026-06-19 01:53:05,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:53:05,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:53:05,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:53:05,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:53:07,720.720 INFO    ] ================================================
[2026-06-19 01:53:07,735.735 INFO    ] Launching Daemon at Fri Jun 19 01:53:07 IST 2026
[2026-06-19 01:53:07,746.746 INFO    ] ================================================
[2026-06-19 01:53:08,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:53:08
[2026-06-19 01:53:08,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:53:09,170.170 INFO    ] Initializing speech engine...
[2026-06-19 01:53:09,177.177 INFO    ] 2026-06-19 01:53:09
[2026-06-19 01:53:09,426.426 INFO    ] 2026-06-19 01:53:09
[2026-06-19 01:53:09,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:53:09,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:53:09,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:53:09,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:53:09,896.896 INFO    ] time= 19/06/2026 01:53:09
[2026-06-19 01:53:09,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:53:09,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:53:10,049.049 INFO    ] No existing commands found in stream
[2026-06-19 01:53:15,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:53:15,064.064 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 01:53:18,859.859 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:53:18,862.862 INFO    ] Checking for system updates...
[2026-06-19 01:53:18,898.898 INFO    ] 200
[2026-06-19 01:53:18,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:18,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:53:18,964.964 INFO    ] No update needed
[2026-06-19 01:53:18,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 01:53:19,023.023 INFO    ] 200
[2026-06-19 01:53:19,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:19,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:53:19,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:53:19,118.118 INFO    ] No camera update needed
[2026-06-19 01:53:19,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:53:19,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:53:19,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:53:19,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:53:21,180.180 INFO    ] ================================================
[2026-06-19 01:53:21,195.195 INFO    ] Launching Daemon at Fri Jun 19 01:53:21 IST 2026
[2026-06-19 01:53:21,206.206 INFO    ] ================================================
[2026-06-19 01:53:21,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:53:21
[2026-06-19 01:53:22,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:53:22,634.634 INFO    ] Initializing speech engine...
[2026-06-19 01:53:22,643.643 INFO    ] 2026-06-19 01:53:22
[2026-06-19 01:53:22,895.895 INFO    ] 2026-06-19 01:53:22
[2026-06-19 01:53:22,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:53:23,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:53:23,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:53:23,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:53:23,257.257 INFO    ] time= 19/06/2026 01:53:23
[2026-06-19 01:53:23,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:53:23,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:53:23,435.435 INFO    ] No existing commands found in stream
[2026-06-19 01:53:28,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:53:28,463.463 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 01:53:32,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:53:32,212.212 INFO    ] Checking for system updates...
[2026-06-19 01:53:32,256.256 INFO    ] 200
[2026-06-19 01:53:32,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:32,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:53:32,326.326 INFO    ] No update needed
[2026-06-19 01:53:32,328.328 INFO    ] Checking for camera pi updates...
[2026-06-19 01:53:32,372.372 INFO    ] 200
[2026-06-19 01:53:32,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:32,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:53:32,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:53:32,468.468 INFO    ] No camera update needed
[2026-06-19 01:53:32,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:53:32,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:53:32,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:53:32,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:53:34,527.527 INFO    ] ================================================
[2026-06-19 01:53:34,542.542 INFO    ] Launching Daemon at Fri Jun 19 01:53:34 IST 2026
[2026-06-19 01:53:34,553.553 INFO    ] ================================================
[2026-06-19 01:53:35,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:53:35
[2026-06-19 01:53:35,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:53:36,167.167 INFO    ] Initializing speech engine...
[2026-06-19 01:53:36,175.175 INFO    ] 2026-06-19 01:53:36
[2026-06-19 01:53:36,488.488 INFO    ] 2026-06-19 01:53:36
[2026-06-19 01:53:36,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:53:36,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:53:36,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:53:36,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:53:37,000.000 INFO    ] time= 19/06/2026 01:53:36
[2026-06-19 01:53:37,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:53:37,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:53:37,156.156 INFO    ] No existing commands found in stream
[2026-06-19 01:53:42,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:53:42,190.190 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 01:53:46,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:53:46,009.009 INFO    ] Checking for system updates...
[2026-06-19 01:53:46,047.047 INFO    ] 200
[2026-06-19 01:53:46,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:46,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:53:46,107.107 INFO    ] No update needed
[2026-06-19 01:53:46,110.110 INFO    ] Checking for camera pi updates...
[2026-06-19 01:53:46,144.144 INFO    ] 200
[2026-06-19 01:53:46,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:46,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:53:46,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:53:46,321.321 INFO    ] No camera update needed
[2026-06-19 01:53:46,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:53:46,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:53:46,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:53:46,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:53:48,377.377 INFO    ] ================================================
[2026-06-19 01:53:48,392.392 INFO    ] Launching Daemon at Fri Jun 19 01:53:48 IST 2026
[2026-06-19 01:53:48,403.403 INFO    ] ================================================
[2026-06-19 01:53:49,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:53:49
[2026-06-19 01:53:49,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:53:50,012.012 INFO    ] Initializing speech engine...
[2026-06-19 01:53:50,021.021 INFO    ] 2026-06-19 01:53:50
[2026-06-19 01:53:50,292.292 INFO    ] 2026-06-19 01:53:50
[2026-06-19 01:53:50,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:53:50,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:53:50,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:53:50,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:53:50,762.762 INFO    ] time= 19/06/2026 01:53:50
[2026-06-19 01:53:50,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:53:50,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:53:50,908.908 INFO    ] No existing commands found in stream
[2026-06-19 01:53:55,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:53:55,923.923 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 01:53:56,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:53:56,509.509 INFO    ] Checking for system updates...
[2026-06-19 01:53:56,547.547 INFO    ] 200
[2026-06-19 01:53:56,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:56,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:53:56,606.606 INFO    ] No update needed
[2026-06-19 01:53:56,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 01:53:56,642.642 INFO    ] 200
[2026-06-19 01:53:56,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:53:56,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:53:56,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:53:56,745.745 INFO    ] No camera update needed
[2026-06-19 01:53:56,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:53:56,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:53:56,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:53:56,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:53:58,800.800 INFO    ] ================================================
[2026-06-19 01:53:58,815.815 INFO    ] Launching Daemon at Fri Jun 19 01:53:58 IST 2026
[2026-06-19 01:53:58,826.826 INFO    ] ================================================
[2026-06-19 01:53:59,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:53:59
[2026-06-19 01:54:00,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:54:00,416.416 INFO    ] Initializing speech engine...
[2026-06-19 01:54:00,430.430 INFO    ] 2026-06-19 01:54:00
[2026-06-19 01:54:00,716.716 INFO    ] 2026-06-19 01:54:00
[2026-06-19 01:54:00,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:54:01,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:54:01,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:54:01,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:54:01,247.247 INFO    ] time= 19/06/2026 01:54:01
[2026-06-19 01:54:01,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:54:01,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:54:01,397.397 INFO    ] No existing commands found in stream
[2026-06-19 01:54:06,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:54:06,417.417 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 01:54:08,933.933 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:54:08,936.936 INFO    ] Checking for system updates...
[2026-06-19 01:54:08,979.979 INFO    ] 200
[2026-06-19 01:54:08,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:54:09,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:54:09,042.042 INFO    ] No update needed
[2026-06-19 01:54:09,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 01:54:09,084.084 INFO    ] 200
[2026-06-19 01:54:09,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:54:09,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:54:09,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:54:09,182.182 INFO    ] No camera update needed
[2026-06-19 01:54:09,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:54:09,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:54:09,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:54:09,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:54:11,244.244 INFO    ] ================================================
[2026-06-19 01:54:11,259.259 INFO    ] Launching Daemon at Fri Jun 19 01:54:11 IST 2026
[2026-06-19 01:54:11,270.270 INFO    ] ================================================
[2026-06-19 01:54:11,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:54:11
[2026-06-19 01:54:12,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:54:12,922.922 INFO    ] Initializing speech engine...
[2026-06-19 01:54:12,933.933 INFO    ] 2026-06-19 01:54:12
[2026-06-19 01:54:13,213.213 INFO    ] 2026-06-19 01:54:13
[2026-06-19 01:54:13,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:54:13,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:54:13,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:54:13,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:54:13,661.661 INFO    ] time= 19/06/2026 01:54:13
[2026-06-19 01:54:13,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:54:13,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:54:13,818.818 INFO    ] No existing commands found in stream
[2026-06-19 01:54:18,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:54:18,834.834 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 01:54:23,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:54:23,030.030 INFO    ] Checking for system updates...
[2026-06-19 01:54:23,068.068 INFO    ] 200
[2026-06-19 01:54:23,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:54:23,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:54:23,138.138 INFO    ] No update needed
[2026-06-19 01:54:23,140.140 INFO    ] Checking for camera pi updates...
[2026-06-19 01:54:23,174.174 INFO    ] 200
[2026-06-19 01:54:23,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:54:23,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:54:23,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:54:23,263.263 INFO    ] No camera update needed
[2026-06-19 01:54:23,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:54:23,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:54:23,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:54:23,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:54:25,323.323 INFO    ] ================================================
[2026-06-19 01:54:25,338.338 INFO    ] Launching Daemon at Fri Jun 19 01:54:25 IST 2026
[2026-06-19 01:54:25,349.349 INFO    ] ================================================
[2026-06-19 01:54:25,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:54:25
[2026-06-19 01:54:26,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:54:26,750.750 INFO    ] Initializing speech engine...
[2026-06-19 01:54:26,773.773 INFO    ] 2026-06-19 01:54:26
[2026-06-19 01:54:27,032.032 INFO    ] 2026-06-19 01:54:27
[2026-06-19 01:54:27,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:54:27,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:54:27,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:54:27,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:54:27,411.411 INFO    ] time= 19/06/2026 01:54:27
[2026-06-19 01:54:27,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:54:27,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:54:27,488.488 INFO    ] No existing commands found in stream
[2026-06-19 01:54:32,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:54:32,501.501 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 01:54:35,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:54:35,651.651 INFO    ] Checking for system updates...
[2026-06-19 01:54:35,691.691 INFO    ] 200
[2026-06-19 01:54:35,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:54:35,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:54:35,756.756 INFO    ] No update needed
[2026-06-19 01:54:35,758.758 INFO    ] Checking for camera pi updates...
[2026-06-19 01:54:35,793.793 INFO    ] 200
[2026-06-19 01:54:35,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:54:35,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:54:35,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:54:35,884.884 INFO    ] No camera update needed
[2026-06-19 01:54:35,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:54:35,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:54:35,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:54:35,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:54:37,940.940 INFO    ] ================================================
[2026-06-19 01:54:37,955.955 INFO    ] Launching Daemon at Fri Jun 19 01:54:37 IST 2026
[2026-06-19 01:54:37,965.965 INFO    ] ================================================
[2026-06-19 01:54:38,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:54:38
[2026-06-19 01:54:39,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:54:39,442.442 INFO    ] Initializing speech engine...
[2026-06-19 01:54:39,451.451 INFO    ] 2026-06-19 01:54:39
[2026-06-19 01:54:39,702.702 INFO    ] 2026-06-19 01:54:39
[2026-06-19 01:54:39,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:54:39,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:54:39,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:54:40,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:54:40,073.073 INFO    ] time= 19/06/2026 01:54:40
[2026-06-19 01:54:40,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:54:40,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:54:40,268.268 INFO    ] No existing commands found in stream
[2026-06-19 01:54:45,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:54:45,281.281 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 01:54:48,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:54:48,969.969 INFO    ] Checking for system updates...
[2026-06-19 01:54:49,006.006 INFO    ] 200
[2026-06-19 01:54:49,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:54:49,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:54:49,065.065 INFO    ] No update needed
[2026-06-19 01:54:49,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 01:54:49,100.100 INFO    ] 200
[2026-06-19 01:54:49,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:54:49,149.149 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:54:49,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:54:49,195.195 INFO    ] No camera update needed
[2026-06-19 01:54:49,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:54:49,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:54:49,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:54:49,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:54:51,252.252 INFO    ] ================================================
[2026-06-19 01:54:51,266.266 INFO    ] Launching Daemon at Fri Jun 19 01:54:51 IST 2026
[2026-06-19 01:54:51,277.277 INFO    ] ================================================
[2026-06-19 01:54:51,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:54:51
[2026-06-19 01:54:52,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:54:52,689.689 INFO    ] Initializing speech engine...
[2026-06-19 01:54:52,698.698 INFO    ] 2026-06-19 01:54:52
[2026-06-19 01:54:52,994.994 INFO    ] 2026-06-19 01:54:52
[2026-06-19 01:54:53,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:54:53,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:54:53,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:54:53,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:54:53,380.380 INFO    ] time= 19/06/2026 01:54:53
[2026-06-19 01:54:53,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:54:53,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:54:53,509.509 INFO    ] No existing commands found in stream
[2026-06-19 01:54:58,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:54:58,524.524 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 01:55:00,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:55:00,502.502 INFO    ] Checking for system updates...
[2026-06-19 01:55:00,542.542 INFO    ] 200
[2026-06-19 01:55:00,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:00,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:55:00,601.601 INFO    ] No update needed
[2026-06-19 01:55:00,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 01:55:00,636.636 INFO    ] 200
[2026-06-19 01:55:00,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:00,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:55:00,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:55:00,724.724 INFO    ] No camera update needed
[2026-06-19 01:55:00,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:55:00,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:55:00,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:55:00,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:55:02,784.784 INFO    ] ================================================
[2026-06-19 01:55:02,808.808 INFO    ] Launching Daemon at Fri Jun 19 01:55:02 IST 2026
[2026-06-19 01:55:02,825.825 INFO    ] ================================================
[2026-06-19 01:55:03,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:55:03
[2026-06-19 01:55:04,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:55:04,466.466 INFO    ] Initializing speech engine...
[2026-06-19 01:55:04,474.474 INFO    ] 2026-06-19 01:55:04
[2026-06-19 01:55:04,722.722 INFO    ] 2026-06-19 01:55:04
[2026-06-19 01:55:04,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:55:05,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:55:05,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:55:05,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:55:05,198.198 INFO    ] time= 19/06/2026 01:55:05
[2026-06-19 01:55:05,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:55:05,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:55:05,336.336 INFO    ] No existing commands found in stream
[2026-06-19 01:55:10,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:55:10,351.351 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 01:55:13,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:55:13,505.505 INFO    ] Checking for system updates...
[2026-06-19 01:55:13,542.542 INFO    ] 200
[2026-06-19 01:55:13,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:13,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:55:13,600.600 INFO    ] No update needed
[2026-06-19 01:55:13,602.602 INFO    ] Checking for camera pi updates...
[2026-06-19 01:55:13,636.636 INFO    ] 200
[2026-06-19 01:55:13,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:13,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:55:13,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:55:13,738.738 INFO    ] No camera update needed
[2026-06-19 01:55:13,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:55:13,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:55:13,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:55:13,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:55:15,794.794 INFO    ] ================================================
[2026-06-19 01:55:15,810.810 INFO    ] Launching Daemon at Fri Jun 19 01:55:15 IST 2026
[2026-06-19 01:55:15,822.822 INFO    ] ================================================
[2026-06-19 01:55:16,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:55:16
[2026-06-19 01:55:16,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:55:17,233.233 INFO    ] Initializing speech engine...
[2026-06-19 01:55:17,256.256 INFO    ] 2026-06-19 01:55:17
[2026-06-19 01:55:17,512.512 INFO    ] 2026-06-19 01:55:17
[2026-06-19 01:55:17,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:55:17,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:55:17,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:55:17,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:55:17,892.892 INFO    ] time= 19/06/2026 01:55:17
[2026-06-19 01:55:17,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:55:17,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:55:18,064.064 INFO    ] No existing commands found in stream
[2026-06-19 01:55:23,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:55:23,092.092 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 01:55:26,964.964 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:55:26,967.967 INFO    ] Checking for system updates...
[2026-06-19 01:55:27,003.003 INFO    ] 200
[2026-06-19 01:55:27,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:27,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:55:27,067.067 INFO    ] No update needed
[2026-06-19 01:55:27,070.070 INFO    ] Checking for camera pi updates...
[2026-06-19 01:55:27,108.108 INFO    ] 200
[2026-06-19 01:55:27,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:27,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:55:27,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:55:27,203.203 INFO    ] No camera update needed
[2026-06-19 01:55:27,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:55:27,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:55:27,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:55:27,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:55:29,258.258 INFO    ] ================================================
[2026-06-19 01:55:29,273.273 INFO    ] Launching Daemon at Fri Jun 19 01:55:29 IST 2026
[2026-06-19 01:55:29,284.284 INFO    ] ================================================
[2026-06-19 01:55:29,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:55:29
[2026-06-19 01:55:30,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:55:30,786.786 INFO    ] Initializing speech engine...
[2026-06-19 01:55:30,807.807 INFO    ] 2026-06-19 01:55:30
[2026-06-19 01:55:31,076.076 INFO    ] 2026-06-19 01:55:31
[2026-06-19 01:55:31,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:55:31,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:55:31,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:55:31,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:55:31,452.452 INFO    ] time= 19/06/2026 01:55:31
[2026-06-19 01:55:31,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:55:31,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:55:31,575.575 INFO    ] No existing commands found in stream
[2026-06-19 01:55:36,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:55:36,590.590 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 01:55:40,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:55:40,528.528 INFO    ] Checking for system updates...
[2026-06-19 01:55:40,565.565 INFO    ] 200
[2026-06-19 01:55:40,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:40,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:55:40,628.628 INFO    ] No update needed
[2026-06-19 01:55:40,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 01:55:40,664.664 INFO    ] 200
[2026-06-19 01:55:40,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:40,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:55:40,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:55:40,753.753 INFO    ] No camera update needed
[2026-06-19 01:55:40,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:55:40,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:55:40,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:55:40,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:55:42,809.809 INFO    ] ================================================
[2026-06-19 01:55:42,824.824 INFO    ] Launching Daemon at Fri Jun 19 01:55:42 IST 2026
[2026-06-19 01:55:42,834.834 INFO    ] ================================================
[2026-06-19 01:55:43,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:55:43
[2026-06-19 01:55:44,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:55:44,469.469 INFO    ] Initializing speech engine...
[2026-06-19 01:55:44,480.480 INFO    ] 2026-06-19 01:55:44
[2026-06-19 01:55:44,760.760 INFO    ] 2026-06-19 01:55:44
[2026-06-19 01:55:44,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:55:45,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:55:45,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:55:45,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:55:45,240.240 INFO    ] time= 19/06/2026 01:55:45
[2026-06-19 01:55:45,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:55:45,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:55:45,387.387 INFO    ] No existing commands found in stream
[2026-06-19 01:55:50,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:55:50,416.416 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 01:55:53,070.070 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:55:53,073.073 INFO    ] Checking for system updates...
[2026-06-19 01:55:53,121.121 INFO    ] 200
[2026-06-19 01:55:53,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:53,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:55:53,186.186 INFO    ] No update needed
[2026-06-19 01:55:53,189.189 INFO    ] Checking for camera pi updates...
[2026-06-19 01:55:53,224.224 INFO    ] 200
[2026-06-19 01:55:53,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:55:53,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:55:53,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:55:53,416.416 INFO    ] No camera update needed
[2026-06-19 01:55:53,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:55:53,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:55:53,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:55:53,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:55:55,473.473 INFO    ] ================================================
[2026-06-19 01:55:55,489.489 INFO    ] Launching Daemon at Fri Jun 19 01:55:55 IST 2026
[2026-06-19 01:55:55,499.499 INFO    ] ================================================
[2026-06-19 01:55:56,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:55:56
[2026-06-19 01:55:56,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:55:56,964.964 INFO    ] Initializing speech engine...
[2026-06-19 01:55:56,973.973 INFO    ] 2026-06-19 01:55:56
[2026-06-19 01:55:57,231.231 INFO    ] 2026-06-19 01:55:57
[2026-06-19 01:55:57,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:55:57,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:55:57,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:55:57,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:55:57,696.696 INFO    ] time= 19/06/2026 01:55:57
[2026-06-19 01:55:57,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:55:57,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:55:57,838.838 INFO    ] No existing commands found in stream
[2026-06-19 01:56:02,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:56:02,851.851 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 01:56:05,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:56:05,989.989 INFO    ] Checking for system updates...
[2026-06-19 01:56:06,025.025 INFO    ] 200
[2026-06-19 01:56:06,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:06,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:06,089.089 INFO    ] No update needed
[2026-06-19 01:56:06,091.091 INFO    ] Checking for camera pi updates...
[2026-06-19 01:56:06,127.127 INFO    ] 200
[2026-06-19 01:56:06,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:06,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:56:06,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:06,224.224 INFO    ] No camera update needed
[2026-06-19 01:56:06,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:56:06,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:56:06,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:56:06,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:56:08,284.284 INFO    ] ================================================
[2026-06-19 01:56:08,299.299 INFO    ] Launching Daemon at Fri Jun 19 01:56:08 IST 2026
[2026-06-19 01:56:08,310.310 INFO    ] ================================================
[2026-06-19 01:56:08,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:56:08
[2026-06-19 01:56:09,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:56:09,871.871 INFO    ] Initializing speech engine...
[2026-06-19 01:56:09,878.878 INFO    ] 2026-06-19 01:56:09
[2026-06-19 01:56:10,124.124 INFO    ] 2026-06-19 01:56:10
[2026-06-19 01:56:10,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:56:10,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:56:10,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:56:10,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:56:10,481.481 INFO    ] time= 19/06/2026 01:56:10
[2026-06-19 01:56:10,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:56:10,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:56:10,585.585 INFO    ] No existing commands found in stream
[2026-06-19 01:56:15,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:56:15,618.618 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 01:56:16,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:56:16,656.656 INFO    ] Checking for system updates...
[2026-06-19 01:56:16,696.696 INFO    ] 200
[2026-06-19 01:56:16,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:16,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:16,753.753 INFO    ] No update needed
[2026-06-19 01:56:16,756.756 INFO    ] Checking for camera pi updates...
[2026-06-19 01:56:16,790.790 INFO    ] 200
[2026-06-19 01:56:16,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:16,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:56:16,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:16,880.880 INFO    ] No camera update needed
[2026-06-19 01:56:16,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:56:16,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:56:16,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:56:16,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:56:18,936.936 INFO    ] ================================================
[2026-06-19 01:56:18,951.951 INFO    ] Launching Daemon at Fri Jun 19 01:56:18 IST 2026
[2026-06-19 01:56:18,962.962 INFO    ] ================================================
[2026-06-19 01:56:19,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:56:19
[2026-06-19 01:56:20,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:56:20,477.477 INFO    ] Initializing speech engine...
[2026-06-19 01:56:20,485.485 INFO    ] 2026-06-19 01:56:20
[2026-06-19 01:56:20,761.761 INFO    ] 2026-06-19 01:56:20
[2026-06-19 01:56:20,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:56:20,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:56:20,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:56:21,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:56:21,140.140 INFO    ] time= 19/06/2026 01:56:21
[2026-06-19 01:56:21,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:56:21,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:56:21,317.317 INFO    ] No existing commands found in stream
[2026-06-19 01:56:26,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:56:26,345.345 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 01:56:27,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:56:27,175.175 INFO    ] Checking for system updates...
[2026-06-19 01:56:27,213.213 INFO    ] 200
[2026-06-19 01:56:27,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:27,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:27,274.274 INFO    ] No update needed
[2026-06-19 01:56:27,277.277 INFO    ] Checking for camera pi updates...
[2026-06-19 01:56:27,312.312 INFO    ] 200
[2026-06-19 01:56:27,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:27,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:56:27,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:27,398.398 INFO    ] No camera update needed
[2026-06-19 01:56:27,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:56:27,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:56:27,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:56:27,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:56:29,459.459 INFO    ] ================================================
[2026-06-19 01:56:29,474.474 INFO    ] Launching Daemon at Fri Jun 19 01:56:29 IST 2026
[2026-06-19 01:56:29,485.485 INFO    ] ================================================
[2026-06-19 01:56:30,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:56:30
[2026-06-19 01:56:30,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:56:30,933.933 INFO    ] Initializing speech engine...
[2026-06-19 01:56:30,942.942 INFO    ] 2026-06-19 01:56:30
[2026-06-19 01:56:31,240.240 INFO    ] 2026-06-19 01:56:31
[2026-06-19 01:56:31,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:56:31,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:56:31,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:56:31,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:56:31,621.621 INFO    ] time= 19/06/2026 01:56:31
[2026-06-19 01:56:31,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:56:31,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:56:31,742.742 INFO    ] No existing commands found in stream
[2026-06-19 01:56:36,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:56:36,764.764 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 01:56:40,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:56:40,276.276 INFO    ] Checking for system updates...
[2026-06-19 01:56:40,312.312 INFO    ] 200
[2026-06-19 01:56:40,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:40,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:40,370.370 INFO    ] No update needed
[2026-06-19 01:56:40,373.373 INFO    ] Checking for camera pi updates...
[2026-06-19 01:56:40,410.410 INFO    ] 200
[2026-06-19 01:56:40,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:40,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:56:40,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:40,513.513 INFO    ] No camera update needed
[2026-06-19 01:56:40,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:56:40,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:56:40,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:56:40,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:56:42,569.569 INFO    ] ================================================
[2026-06-19 01:56:42,584.584 INFO    ] Launching Daemon at Fri Jun 19 01:56:42 IST 2026
[2026-06-19 01:56:42,595.595 INFO    ] ================================================
[2026-06-19 01:56:43,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:56:43
[2026-06-19 01:56:43,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:56:44,186.186 INFO    ] Initializing speech engine...
[2026-06-19 01:56:44,195.195 INFO    ] 2026-06-19 01:56:44
[2026-06-19 01:56:44,465.465 INFO    ] 2026-06-19 01:56:44
[2026-06-19 01:56:44,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:56:44,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:56:44,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:56:45,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:56:45,027.027 INFO    ] time= 19/06/2026 01:56:45
[2026-06-19 01:56:45,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:56:45,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:56:45,185.185 INFO    ] No existing commands found in stream
[2026-06-19 01:56:50,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:56:50,207.207 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 01:56:51,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:56:51,242.242 INFO    ] Checking for system updates...
[2026-06-19 01:56:51,282.282 INFO    ] 200
[2026-06-19 01:56:51,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:51,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:51,349.349 INFO    ] No update needed
[2026-06-19 01:56:51,352.352 INFO    ] Checking for camera pi updates...
[2026-06-19 01:56:51,387.387 INFO    ] 200
[2026-06-19 01:56:51,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:56:51,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:56:51,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:56:51,477.477 INFO    ] No camera update needed
[2026-06-19 01:56:51,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:56:51,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:56:51,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:56:51,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:56:53,536.536 INFO    ] ================================================
[2026-06-19 01:56:53,551.551 INFO    ] Launching Daemon at Fri Jun 19 01:56:53 IST 2026
[2026-06-19 01:56:53,562.562 INFO    ] ================================================
[2026-06-19 01:56:54,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:56:54
[2026-06-19 01:56:54,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:56:55,188.188 INFO    ] Initializing speech engine...
[2026-06-19 01:56:55,197.197 INFO    ] 2026-06-19 01:56:55
[2026-06-19 01:56:55,517.517 INFO    ] 2026-06-19 01:56:55
[2026-06-19 01:56:55,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:56:55,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:56:55,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:56:55,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:56:56,033.033 INFO    ] time= 19/06/2026 01:56:55
[2026-06-19 01:56:56,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:56:56,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:56:56,163.163 INFO    ] No existing commands found in stream
[2026-06-19 01:57:01,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:57:01,198.198 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 01:57:04,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:57:04,544.544 INFO    ] Checking for system updates...
[2026-06-19 01:57:04,581.581 INFO    ] 200
[2026-06-19 01:57:04,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:04,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:57:04,641.641 INFO    ] No update needed
[2026-06-19 01:57:04,643.643 INFO    ] Checking for camera pi updates...
[2026-06-19 01:57:04,678.678 INFO    ] 200
[2026-06-19 01:57:04,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:04,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:57:04,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:57:04,775.775 INFO    ] No camera update needed
[2026-06-19 01:57:04,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:57:04,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:57:04,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:57:04,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:57:06,833.833 INFO    ] ================================================
[2026-06-19 01:57:06,848.848 INFO    ] Launching Daemon at Fri Jun 19 01:57:06 IST 2026
[2026-06-19 01:57:06,859.859 INFO    ] ================================================
[2026-06-19 01:57:07,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:57:07
[2026-06-19 01:57:08,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:57:08,279.279 INFO    ] Initializing speech engine...
[2026-06-19 01:57:08,284.284 INFO    ] 2026-06-19 01:57:08
[2026-06-19 01:57:08,561.561 INFO    ] 2026-06-19 01:57:08
[2026-06-19 01:57:08,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:57:08,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:57:08,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:57:08,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:57:08,941.941 INFO    ] time= 19/06/2026 01:57:08
[2026-06-19 01:57:08,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:57:08,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:57:09,107.107 INFO    ] No existing commands found in stream
[2026-06-19 01:57:14,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:57:14,129.129 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 01:57:15,273.273 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:57:15,276.276 INFO    ] Checking for system updates...
[2026-06-19 01:57:15,378.378 INFO    ] 200
[2026-06-19 01:57:15,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:15,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:57:15,443.443 INFO    ] No update needed
[2026-06-19 01:57:15,445.445 INFO    ] Checking for camera pi updates...
[2026-06-19 01:57:15,481.481 INFO    ] 200
[2026-06-19 01:57:15,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:15,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:57:15,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:57:15,575.575 INFO    ] No camera update needed
[2026-06-19 01:57:15,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:57:15,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:57:15,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:57:15,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:57:17,637.637 INFO    ] ================================================
[2026-06-19 01:57:17,653.653 INFO    ] Launching Daemon at Fri Jun 19 01:57:17 IST 2026
[2026-06-19 01:57:17,664.664 INFO    ] ================================================
[2026-06-19 01:57:18,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:57:18
[2026-06-19 01:57:19,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:57:19,344.344 INFO    ] Initializing speech engine...
[2026-06-19 01:57:19,352.352 INFO    ] 2026-06-19 01:57:19
[2026-06-19 01:57:19,664.664 INFO    ] 2026-06-19 01:57:19
[2026-06-19 01:57:19,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:57:19,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:57:19,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:57:20,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:57:20,172.172 INFO    ] time= 19/06/2026 01:57:20
[2026-06-19 01:57:20,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:57:20,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:57:20,333.333 INFO    ] No existing commands found in stream
[2026-06-19 01:57:25,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:57:25,475.475 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 01:57:27,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:57:27,215.215 INFO    ] Checking for system updates...
[2026-06-19 01:57:27,252.252 INFO    ] 200
[2026-06-19 01:57:27,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:27,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:57:27,311.311 INFO    ] No update needed
[2026-06-19 01:57:27,314.314 INFO    ] Checking for camera pi updates...
[2026-06-19 01:57:27,351.351 INFO    ] 200
[2026-06-19 01:57:27,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:27,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:57:27,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:57:27,449.449 INFO    ] No camera update needed
[2026-06-19 01:57:27,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:57:27,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:57:27,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:57:27,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:57:29,508.508 INFO    ] ================================================
[2026-06-19 01:57:29,523.523 INFO    ] Launching Daemon at Fri Jun 19 01:57:29 IST 2026
[2026-06-19 01:57:29,534.534 INFO    ] ================================================
[2026-06-19 01:57:30,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:57:30
[2026-06-19 01:57:30,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:57:31,162.162 INFO    ] Initializing speech engine...
[2026-06-19 01:57:31,174.174 INFO    ] 2026-06-19 01:57:31
[2026-06-19 01:57:31,445.445 INFO    ] 2026-06-19 01:57:31
[2026-06-19 01:57:31,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:57:31,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:57:31,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:57:31,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:57:31,883.883 INFO    ] time= 19/06/2026 01:57:31
[2026-06-19 01:57:31,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:57:32,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:57:32,101.101 INFO    ] No existing commands found in stream
[2026-06-19 01:57:37,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:57:37,143.143 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 01:57:38,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:57:38,675.675 INFO    ] Checking for system updates...
[2026-06-19 01:57:38,711.711 INFO    ] 200
[2026-06-19 01:57:38,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:38,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:57:38,769.769 INFO    ] No update needed
[2026-06-19 01:57:38,772.772 INFO    ] Checking for camera pi updates...
[2026-06-19 01:57:38,805.805 INFO    ] 200
[2026-06-19 01:57:38,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:38,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:57:38,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:57:38,895.895 INFO    ] No camera update needed
[2026-06-19 01:57:38,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:57:38,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:57:38,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:57:38,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:57:40,953.953 INFO    ] ================================================
[2026-06-19 01:57:40,968.968 INFO    ] Launching Daemon at Fri Jun 19 01:57:40 IST 2026
[2026-06-19 01:57:40,979.979 INFO    ] ================================================
[2026-06-19 01:57:41,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:57:41
[2026-06-19 01:57:42,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:57:42,387.387 INFO    ] Initializing speech engine...
[2026-06-19 01:57:42,393.393 INFO    ] 2026-06-19 01:57:42
[2026-06-19 01:57:42,689.689 INFO    ] 2026-06-19 01:57:42
[2026-06-19 01:57:42,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:57:42,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:57:42,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:57:43,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:57:43,042.042 INFO    ] time= 19/06/2026 01:57:43
[2026-06-19 01:57:43,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:57:43,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:57:43,122.122 INFO    ] No existing commands found in stream
[2026-06-19 01:57:48,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:57:48,137.137 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 01:57:50,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:57:50,758.758 INFO    ] Checking for system updates...
[2026-06-19 01:57:50,852.852 INFO    ] 200
[2026-06-19 01:57:50,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:50,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:57:50,913.913 INFO    ] No update needed
[2026-06-19 01:57:50,916.916 INFO    ] Checking for camera pi updates...
[2026-06-19 01:57:50,950.950 INFO    ] 200
[2026-06-19 01:57:50,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:57:51,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:57:51,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:57:51,057.057 INFO    ] No camera update needed
[2026-06-19 01:57:51,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:57:51,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:57:51,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:57:51,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:57:53,113.113 INFO    ] ================================================
[2026-06-19 01:57:53,128.128 INFO    ] Launching Daemon at Fri Jun 19 01:57:53 IST 2026
[2026-06-19 01:57:53,139.139 INFO    ] ================================================
[2026-06-19 01:57:53,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:57:53
[2026-06-19 01:57:54,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:57:54,785.785 INFO    ] Initializing speech engine...
[2026-06-19 01:57:54,794.794 INFO    ] 2026-06-19 01:57:54
[2026-06-19 01:57:55,086.086 INFO    ] 2026-06-19 01:57:55
[2026-06-19 01:57:55,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:57:55,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:57:55,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:57:55,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:57:55,546.546 INFO    ] time= 19/06/2026 01:57:55
[2026-06-19 01:57:55,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:57:55,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:57:55,759.759 INFO    ] No existing commands found in stream
[2026-06-19 01:58:00,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:58:00,915.915 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 01:58:03,487.487 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:58:03,490.490 INFO    ] Checking for system updates...
[2026-06-19 01:58:03,528.528 INFO    ] 200
[2026-06-19 01:58:03,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:03,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:58:03,588.588 INFO    ] No update needed
[2026-06-19 01:58:03,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 01:58:03,626.626 INFO    ] 200
[2026-06-19 01:58:03,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:03,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:58:03,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:58:03,728.728 INFO    ] No camera update needed
[2026-06-19 01:58:03,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:58:03,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:58:03,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:58:03,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:58:05,787.787 INFO    ] ================================================
[2026-06-19 01:58:05,802.802 INFO    ] Launching Daemon at Fri Jun 19 01:58:05 IST 2026
[2026-06-19 01:58:05,813.813 INFO    ] ================================================
[2026-06-19 01:58:06,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:58:06
[2026-06-19 01:58:07,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:58:07,275.275 INFO    ] Initializing speech engine...
[2026-06-19 01:58:07,298.298 INFO    ] 2026-06-19 01:58:07
[2026-06-19 01:58:07,554.554 INFO    ] 2026-06-19 01:58:07
[2026-06-19 01:58:07,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:58:07,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:58:07,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:58:07,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:58:08,048.048 INFO    ] time= 19/06/2026 01:58:07
[2026-06-19 01:58:08,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:58:08,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:58:08,260.260 INFO    ] No existing commands found in stream
[2026-06-19 01:58:13,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:58:13,280.280 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 01:58:15,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:58:15,810.810 INFO    ] Checking for system updates...
[2026-06-19 01:58:15,848.848 INFO    ] 200
[2026-06-19 01:58:15,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:15,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:58:15,908.908 INFO    ] No update needed
[2026-06-19 01:58:15,911.911 INFO    ] Checking for camera pi updates...
[2026-06-19 01:58:15,946.946 INFO    ] 200
[2026-06-19 01:58:15,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:15,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:58:16,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:58:16,030.030 INFO    ] No camera update needed
[2026-06-19 01:58:16,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:58:16,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:58:16,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:58:16,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:58:18,091.091 INFO    ] ================================================
[2026-06-19 01:58:18,105.105 INFO    ] Launching Daemon at Fri Jun 19 01:58:18 IST 2026
[2026-06-19 01:58:18,116.116 INFO    ] ================================================
[2026-06-19 01:58:18,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:58:18
[2026-06-19 01:58:19,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:58:19,546.546 INFO    ] Initializing speech engine...
[2026-06-19 01:58:19,555.555 INFO    ] 2026-06-19 01:58:19
[2026-06-19 01:58:19,854.854 INFO    ] 2026-06-19 01:58:19
[2026-06-19 01:58:19,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:58:20,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:58:20,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:58:20,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:58:20,239.239 INFO    ] time= 19/06/2026 01:58:20
[2026-06-19 01:58:20,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:58:20,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:58:20,365.365 INFO    ] No existing commands found in stream
[2026-06-19 01:58:25,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:58:25,383.383 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 01:58:26,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:58:26,099.099 INFO    ] Checking for system updates...
[2026-06-19 01:58:26,149.149 INFO    ] 200
[2026-06-19 01:58:26,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:26,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:58:26,206.206 INFO    ] No update needed
[2026-06-19 01:58:26,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 01:58:26,246.246 INFO    ] 200
[2026-06-19 01:58:26,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:26,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:58:26,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:58:26,346.346 INFO    ] No camera update needed
[2026-06-19 01:58:26,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:58:26,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:58:26,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:58:26,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:58:28,403.403 INFO    ] ================================================
[2026-06-19 01:58:28,419.419 INFO    ] Launching Daemon at Fri Jun 19 01:58:28 IST 2026
[2026-06-19 01:58:28,430.430 INFO    ] ================================================
[2026-06-19 01:58:29,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:58:29
[2026-06-19 01:58:29,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:58:29,866.866 INFO    ] Initializing speech engine...
[2026-06-19 01:58:29,875.875 INFO    ] 2026-06-19 01:58:29
[2026-06-19 01:58:30,175.175 INFO    ] 2026-06-19 01:58:30
[2026-06-19 01:58:30,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:58:30,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:58:30,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:58:30,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:58:30,558.558 INFO    ] time= 19/06/2026 01:58:30
[2026-06-19 01:58:30,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:58:30,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:58:30,685.685 INFO    ] No existing commands found in stream
[2026-06-19 01:58:35,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:58:35,699.699 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 01:58:37,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 01:58:37,825.825 INFO    ] Checking for system updates...
[2026-06-19 01:58:37,862.862 INFO    ] 200
[2026-06-19 01:58:37,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:37,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:58:37,921.921 INFO    ] No update needed
[2026-06-19 01:58:37,923.923 INFO    ] Checking for camera pi updates...
[2026-06-19 01:58:37,957.957 INFO    ] 200
[2026-06-19 01:58:37,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:38,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:58:38,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:58:38,060.060 INFO    ] No camera update needed
[2026-06-19 01:58:38,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:58:38,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:58:38,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:58:38,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:58:40,117.117 INFO    ] ================================================
[2026-06-19 01:58:40,132.132 INFO    ] Launching Daemon at Fri Jun 19 01:58:40 IST 2026
[2026-06-19 01:58:40,144.144 INFO    ] ================================================
[2026-06-19 01:58:40,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:58:40
[2026-06-19 01:58:41,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:58:41,559.559 INFO    ] Initializing speech engine...
[2026-06-19 01:58:41,575.575 INFO    ] 2026-06-19 01:58:41
[2026-06-19 01:58:41,863.863 INFO    ] 2026-06-19 01:58:41
[2026-06-19 01:58:41,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:58:42,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:58:42,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:58:42,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:58:42,252.252 INFO    ] time= 19/06/2026 01:58:42
[2026-06-19 01:58:42,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:58:42,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:58:42,379.379 INFO    ] No existing commands found in stream
[2026-06-19 01:58:47,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:58:47,394.394 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 01:58:50,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 01:58:50,718.718 INFO    ] Checking for system updates...
[2026-06-19 01:58:50,754.754 INFO    ] 200
[2026-06-19 01:58:50,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:50,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:58:50,812.812 INFO    ] No update needed
[2026-06-19 01:58:50,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 01:58:50,848.848 INFO    ] 200
[2026-06-19 01:58:50,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:58:50,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:58:50,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:58:50,947.947 INFO    ] No camera update needed
[2026-06-19 01:58:50,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:58:50,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:58:50,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:58:50,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:58:53,002.002 INFO    ] ================================================
[2026-06-19 01:58:53,019.019 INFO    ] Launching Daemon at Fri Jun 19 01:58:53 IST 2026
[2026-06-19 01:58:53,029.029 INFO    ] ================================================
[2026-06-19 01:58:53,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:58:53
[2026-06-19 01:58:54,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:58:54,598.598 INFO    ] Initializing speech engine...
[2026-06-19 01:58:54,612.612 INFO    ] 2026-06-19 01:58:54
[2026-06-19 01:58:54,896.896 INFO    ] 2026-06-19 01:58:54
[2026-06-19 01:58:54,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:58:55,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:58:55,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:58:55,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:58:55,370.370 INFO    ] time= 19/06/2026 01:58:55
[2026-06-19 01:58:55,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:58:55,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:58:55,514.514 INFO    ] No existing commands found in stream
[2026-06-19 01:59:00,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:59:00,531.531 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 01:59:04,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:59:04,162.162 INFO    ] Checking for system updates...
[2026-06-19 01:59:04,199.199 INFO    ] 200
[2026-06-19 01:59:04,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:04,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:59:04,258.258 INFO    ] No update needed
[2026-06-19 01:59:04,261.261 INFO    ] Checking for camera pi updates...
[2026-06-19 01:59:04,296.296 INFO    ] 200
[2026-06-19 01:59:04,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:04,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:59:04,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:59:04,397.397 INFO    ] No camera update needed
[2026-06-19 01:59:04,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:59:04,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:59:04,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:59:04,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:59:06,457.457 INFO    ] ================================================
[2026-06-19 01:59:06,473.473 INFO    ] Launching Daemon at Fri Jun 19 01:59:06 IST 2026
[2026-06-19 01:59:06,484.484 INFO    ] ================================================
[2026-06-19 01:59:07,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:59:07
[2026-06-19 01:59:07,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:59:07,917.917 INFO    ] Initializing speech engine...
[2026-06-19 01:59:07,926.926 INFO    ] 2026-06-19 01:59:07
[2026-06-19 01:59:08,173.173 INFO    ] 2026-06-19 01:59:08
[2026-06-19 01:59:08,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:59:08,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:59:08,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:59:08,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:59:08,610.610 INFO    ] time= 19/06/2026 01:59:08
[2026-06-19 01:59:08,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:59:08,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:59:08,791.791 INFO    ] No existing commands found in stream
[2026-06-19 01:59:13,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:59:13,806.806 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-19 01:59:16,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 01:59:16,949.949 INFO    ] Checking for system updates...
[2026-06-19 01:59:16,987.987 INFO    ] 200
[2026-06-19 01:59:16,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:17,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:59:17,057.057 INFO    ] No update needed
[2026-06-19 01:59:17,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 01:59:17,096.096 INFO    ] 200
[2026-06-19 01:59:17,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:17,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:59:17,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:59:17,199.199 INFO    ] No camera update needed
[2026-06-19 01:59:17,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:59:17,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:59:17,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:59:17,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:59:19,260.260 INFO    ] ================================================
[2026-06-19 01:59:19,276.276 INFO    ] Launching Daemon at Fri Jun 19 01:59:19 IST 2026
[2026-06-19 01:59:19,287.287 INFO    ] ================================================
[2026-06-19 01:59:19,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:59:19
[2026-06-19 01:59:20,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:59:20,971.971 INFO    ] Initializing speech engine...
[2026-06-19 01:59:20,980.980 INFO    ] 2026-06-19 01:59:20
[2026-06-19 01:59:21,289.289 INFO    ] 2026-06-19 01:59:21
[2026-06-19 01:59:21,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:59:21,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:59:21,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:59:21,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:59:21,808.808 INFO    ] time= 19/06/2026 01:59:21
[2026-06-19 01:59:21,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:59:21,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:59:21,949.949 INFO    ] No existing commands found in stream
[2026-06-19 01:59:26,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:59:26,979.979 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 01:59:28,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 01:59:28,146.146 INFO    ] Checking for system updates...
[2026-06-19 01:59:28,185.185 INFO    ] 200
[2026-06-19 01:59:28,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:28,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:59:28,244.244 INFO    ] No update needed
[2026-06-19 01:59:28,246.246 INFO    ] Checking for camera pi updates...
[2026-06-19 01:59:28,284.284 INFO    ] 200
[2026-06-19 01:59:28,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:28,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:59:28,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 01:59:28,379.379 INFO    ] No camera update needed
[2026-06-19 01:59:28,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:59:28,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:59:28,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:59:28,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:59:30,436.436 INFO    ] ================================================
[2026-06-19 01:59:30,452.452 INFO    ] Launching Daemon at Fri Jun 19 01:59:30 IST 2026
[2026-06-19 01:59:30,463.463 INFO    ] ================================================
[2026-06-19 01:59:31,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:59:31
[2026-06-19 01:59:31,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:59:31,912.912 INFO    ] Initializing speech engine...
[2026-06-19 01:59:31,929.929 INFO    ] 2026-06-19 01:59:31
[2026-06-19 01:59:32,222.222 INFO    ] 2026-06-19 01:59:32
[2026-06-19 01:59:32,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:59:32,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:59:32,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:59:32,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:59:32,612.612 INFO    ] time= 19/06/2026 01:59:32
[2026-06-19 01:59:32,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:59:32,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:59:32,747.747 INFO    ] No existing commands found in stream
[2026-06-19 01:59:37,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:59:37,761.761 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 01:59:40,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 01:59:40,014.014 INFO    ] Checking for system updates...
[2026-06-19 01:59:40,051.051 INFO    ] 200
[2026-06-19 01:59:40,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:40,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:59:40,109.109 INFO    ] No update needed
[2026-06-19 01:59:40,112.112 INFO    ] Checking for camera pi updates...
[2026-06-19 01:59:40,145.145 INFO    ] 200
[2026-06-19 01:59:40,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:40,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:59:40,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:59:40,234.234 INFO    ] No camera update needed
[2026-06-19 01:59:40,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:59:40,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:59:40,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:59:40,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:59:42,291.291 INFO    ] ================================================
[2026-06-19 01:59:42,307.307 INFO    ] Launching Daemon at Fri Jun 19 01:59:42 IST 2026
[2026-06-19 01:59:42,318.318 INFO    ] ================================================
[2026-06-19 01:59:42,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:59:42
[2026-06-19 01:59:43,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:59:43,773.773 INFO    ] Initializing speech engine...
[2026-06-19 01:59:43,783.783 INFO    ] 2026-06-19 01:59:43
[2026-06-19 01:59:44,042.042 INFO    ] 2026-06-19 01:59:44
[2026-06-19 01:59:44,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:59:44,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:59:44,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:59:44,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:59:44,526.526 INFO    ] time= 19/06/2026 01:59:44
[2026-06-19 01:59:44,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:59:44,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:59:44,710.710 INFO    ] No existing commands found in stream
[2026-06-19 01:59:49,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 01:59:49,738.738 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 01:59:52,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 01:59:52,131.131 INFO    ] Checking for system updates...
[2026-06-19 01:59:52,168.168 INFO    ] 200
[2026-06-19 01:59:52,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:52,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:59:52,227.227 INFO    ] No update needed
[2026-06-19 01:59:52,230.230 INFO    ] Checking for camera pi updates...
[2026-06-19 01:59:52,263.263 INFO    ] 200
[2026-06-19 01:59:52,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 01:59:52,308.308 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 01:59:52,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 01:59:52,354.354 INFO    ] No camera update needed
[2026-06-19 01:59:52,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-19 01:59:52,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 01:59:52,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 01:59:52,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 01:59:54,410.410 INFO    ] ================================================
[2026-06-19 01:59:54,425.425 INFO    ] Launching Daemon at Fri Jun 19 01:59:54 IST 2026
[2026-06-19 01:59:54,437.437 INFO    ] ================================================
[2026-06-19 01:59:55,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 01:59:55
[2026-06-19 01:59:55,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 01:59:56,086.086 INFO    ] Initializing speech engine...
[2026-06-19 01:59:56,100.100 INFO    ] 2026-06-19 01:59:56
[2026-06-19 01:59:56,389.389 INFO    ] 2026-06-19 01:59:56
[2026-06-19 01:59:56,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 01:59:56,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 01:59:56,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 01:59:56,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 01:59:56,861.861 INFO    ] time= 19/06/2026 01:59:56
[2026-06-19 01:59:56,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 01:59:56,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 01:59:57,057.057 INFO    ] No existing commands found in stream
[2026-06-19 02:00:02,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:00:02,093.093 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 02:00:05,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:00:05,599.599 INFO    ] Checking for system updates...
[2026-06-19 02:00:05,687.687 INFO    ] 200
[2026-06-19 02:00:05,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:05,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:00:05,852.852 INFO    ] No update needed
[2026-06-19 02:00:05,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 02:00:05,961.961 INFO    ] 200
[2026-06-19 02:00:05,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:06,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:00:06,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:00:06,100.100 INFO    ] No camera update needed
[2026-06-19 02:00:06,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:00:06,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:00:06,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:00:06,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:00:08,157.157 INFO    ] ================================================
[2026-06-19 02:00:08,172.172 INFO    ] Launching Daemon at Fri Jun 19 02:00:08 IST 2026
[2026-06-19 02:00:08,183.183 INFO    ] ================================================
[2026-06-19 02:00:08,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:00:08
[2026-06-19 02:00:09,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:00:09,651.651 INFO    ] Initializing speech engine...
[2026-06-19 02:00:09,664.664 INFO    ] 2026-06-19 02:00:09
[2026-06-19 02:00:09,942.942 INFO    ] 2026-06-19 02:00:09
[2026-06-19 02:00:09,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:00:10,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:00:10,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:00:10,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:00:10,370.370 INFO    ] time= 19/06/2026 02:00:10
[2026-06-19 02:00:10,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:00:10,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:00:10,549.549 INFO    ] No existing commands found in stream
[2026-06-19 02:00:15,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:00:15,573.573 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 02:00:16,702.702 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:00:16,705.705 INFO    ] Checking for system updates...
[2026-06-19 02:00:16,742.742 INFO    ] 200
[2026-06-19 02:00:16,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:16,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:00:16,803.803 INFO    ] No update needed
[2026-06-19 02:00:16,806.806 INFO    ] Checking for camera pi updates...
[2026-06-19 02:00:16,842.842 INFO    ] 200
[2026-06-19 02:00:16,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:16,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:00:16,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:00:16,944.944 INFO    ] No camera update needed
[2026-06-19 02:00:16,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:00:16,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:00:16,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:00:16,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:00:19,006.006 INFO    ] ================================================
[2026-06-19 02:00:19,022.022 INFO    ] Launching Daemon at Fri Jun 19 02:00:19 IST 2026
[2026-06-19 02:00:19,034.034 INFO    ] ================================================
[2026-06-19 02:00:19,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:00:19
[2026-06-19 02:00:20,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:00:20,683.683 INFO    ] Initializing speech engine...
[2026-06-19 02:00:20,697.697 INFO    ] 2026-06-19 02:00:20
[2026-06-19 02:00:21,005.005 INFO    ] 2026-06-19 02:00:20
[2026-06-19 02:00:21,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:00:21,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:00:21,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:00:21,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:00:21,517.517 INFO    ] time= 19/06/2026 02:00:21
[2026-06-19 02:00:21,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:00:21,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:00:21,671.671 INFO    ] No existing commands found in stream
[2026-06-19 02:00:26,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:00:26,690.690 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 02:00:27,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:00:27,561.561 INFO    ] Checking for system updates...
[2026-06-19 02:00:27,599.599 INFO    ] 200
[2026-06-19 02:00:27,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:27,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:00:27,660.660 INFO    ] No update needed
[2026-06-19 02:00:27,662.662 INFO    ] Checking for camera pi updates...
[2026-06-19 02:00:27,698.698 INFO    ] 200
[2026-06-19 02:00:27,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:27,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:00:27,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:00:27,794.794 INFO    ] No camera update needed
[2026-06-19 02:00:27,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:00:27,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:00:27,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:00:27,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:00:29,854.854 INFO    ] ================================================
[2026-06-19 02:00:29,870.870 INFO    ] Launching Daemon at Fri Jun 19 02:00:29 IST 2026
[2026-06-19 02:00:29,881.881 INFO    ] ================================================
[2026-06-19 02:00:30,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:00:30
[2026-06-19 02:00:31,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:00:31,300.300 INFO    ] Initializing speech engine...
[2026-06-19 02:00:31,310.310 INFO    ] 2026-06-19 02:00:31
[2026-06-19 02:00:31,555.555 INFO    ] 2026-06-19 02:00:31
[2026-06-19 02:00:31,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:00:31,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:00:31,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:00:32,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:00:32,035.035 INFO    ] time= 19/06/2026 02:00:32
[2026-06-19 02:00:32,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:00:32,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:00:32,204.204 INFO    ] No existing commands found in stream
[2026-06-19 02:00:37,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:00:37,219.219 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 02:00:41,596.596 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:00:41,599.599 INFO    ] Checking for system updates...
[2026-06-19 02:00:41,638.638 INFO    ] 200
[2026-06-19 02:00:41,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:41,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:00:41,696.696 INFO    ] No update needed
[2026-06-19 02:00:41,698.698 INFO    ] Checking for camera pi updates...
[2026-06-19 02:00:41,738.738 INFO    ] 200
[2026-06-19 02:00:41,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:41,786.786 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:00:41,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:00:41,838.838 INFO    ] No camera update needed
[2026-06-19 02:00:41,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:00:41,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:00:41,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:00:41,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:00:43,893.893 INFO    ] ================================================
[2026-06-19 02:00:43,909.909 INFO    ] Launching Daemon at Fri Jun 19 02:00:43 IST 2026
[2026-06-19 02:00:43,920.920 INFO    ] ================================================
[2026-06-19 02:00:44,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:00:44
[2026-06-19 02:00:45,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:00:45,562.562 INFO    ] Initializing speech engine...
[2026-06-19 02:00:45,568.568 INFO    ] 2026-06-19 02:00:45
[2026-06-19 02:00:45,847.847 INFO    ] 2026-06-19 02:00:45
[2026-06-19 02:00:45,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:00:46,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:00:46,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:00:46,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:00:46,345.345 INFO    ] time= 19/06/2026 02:00:46
[2026-06-19 02:00:46,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:00:46,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:00:46,480.480 INFO    ] No existing commands found in stream
[2026-06-19 02:00:51,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:00:51,497.497 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 02:00:52,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:00:52,465.465 INFO    ] Checking for system updates...
[2026-06-19 02:00:52,503.503 INFO    ] 200
[2026-06-19 02:00:52,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:52,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:00:52,565.565 INFO    ] No update needed
[2026-06-19 02:00:52,568.568 INFO    ] Checking for camera pi updates...
[2026-06-19 02:00:52,603.603 INFO    ] 200
[2026-06-19 02:00:52,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:00:52,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:00:52,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:00:52,700.700 INFO    ] No camera update needed
[2026-06-19 02:00:52,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:00:52,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:00:52,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:00:52,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:00:54,762.762 INFO    ] ================================================
[2026-06-19 02:00:54,778.778 INFO    ] Launching Daemon at Fri Jun 19 02:00:54 IST 2026
[2026-06-19 02:00:54,789.789 INFO    ] ================================================
[2026-06-19 02:00:55,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:00:55
[2026-06-19 02:00:55,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:00:56,264.264 INFO    ] Initializing speech engine...
[2026-06-19 02:00:56,271.271 INFO    ] 2026-06-19 02:00:56
[2026-06-19 02:00:56,532.532 INFO    ] 2026-06-19 02:00:56
[2026-06-19 02:00:56,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:00:56,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:00:56,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:00:56,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:00:56,998.998 INFO    ] time= 19/06/2026 02:00:56
[2026-06-19 02:00:57,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:00:57,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:00:57,151.151 INFO    ] No existing commands found in stream
[2026-06-19 02:01:02,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:01:02,167.167 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 02:01:04,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:01:04,074.074 INFO    ] Checking for system updates...
[2026-06-19 02:01:04,112.112 INFO    ] 200
[2026-06-19 02:01:04,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:04,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:01:04,173.173 INFO    ] No update needed
[2026-06-19 02:01:04,175.175 INFO    ] Checking for camera pi updates...
[2026-06-19 02:01:04,209.209 INFO    ] 200
[2026-06-19 02:01:04,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:04,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:01:04,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:01:04,306.306 INFO    ] No camera update needed
[2026-06-19 02:01:04,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:01:04,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:01:04,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:01:04,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:01:06,367.367 INFO    ] ================================================
[2026-06-19 02:01:06,383.383 INFO    ] Launching Daemon at Fri Jun 19 02:01:06 IST 2026
[2026-06-19 02:01:06,394.394 INFO    ] ================================================
[2026-06-19 02:01:06,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:01:06
[2026-06-19 02:01:07,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:01:07,948.948 INFO    ] Initializing speech engine...
[2026-06-19 02:01:07,956.956 INFO    ] 2026-06-19 02:01:07
[2026-06-19 02:01:08,248.248 INFO    ] 2026-06-19 02:01:08
[2026-06-19 02:01:08,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:01:08,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:01:08,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:01:08,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:01:08,803.803 INFO    ] time= 19/06/2026 02:01:08
[2026-06-19 02:01:08,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:01:08,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:01:08,958.958 INFO    ] No existing commands found in stream
[2026-06-19 02:01:13,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:01:13,981.981 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 02:01:16,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:01:16,444.444 INFO    ] Checking for system updates...
[2026-06-19 02:01:16,482.482 INFO    ] 200
[2026-06-19 02:01:16,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:16,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:01:16,541.541 INFO    ] No update needed
[2026-06-19 02:01:16,543.543 INFO    ] Checking for camera pi updates...
[2026-06-19 02:01:16,581.581 INFO    ] 200
[2026-06-19 02:01:16,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:16,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:01:16,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:01:16,676.676 INFO    ] No camera update needed
[2026-06-19 02:01:16,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:01:16,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:01:16,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:01:16,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:01:18,740.740 INFO    ] ================================================
[2026-06-19 02:01:18,756.756 INFO    ] Launching Daemon at Fri Jun 19 02:01:18 IST 2026
[2026-06-19 02:01:18,767.767 INFO    ] ================================================
[2026-06-19 02:01:19,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:01:19
[2026-06-19 02:01:20,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:01:20,423.423 INFO    ] Initializing speech engine...
[2026-06-19 02:01:20,435.435 INFO    ] 2026-06-19 02:01:20
[2026-06-19 02:01:20,727.727 INFO    ] 2026-06-19 02:01:20
[2026-06-19 02:01:20,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:01:21,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:01:21,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:01:21,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:01:21,276.276 INFO    ] time= 19/06/2026 02:01:21
[2026-06-19 02:01:21,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:01:21,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:01:21,421.421 INFO    ] No existing commands found in stream
[2026-06-19 02:01:26,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:01:26,453.453 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 02:01:28,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:01:28,436.436 INFO    ] Checking for system updates...
[2026-06-19 02:01:28,473.473 INFO    ] 200
[2026-06-19 02:01:28,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:28,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:01:28,533.533 INFO    ] No update needed
[2026-06-19 02:01:28,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 02:01:28,570.570 INFO    ] 200
[2026-06-19 02:01:28,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:28,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:01:28,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:01:28,670.670 INFO    ] No camera update needed
[2026-06-19 02:01:28,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:01:28,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:01:28,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:01:28,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:01:30,727.727 INFO    ] ================================================
[2026-06-19 02:01:30,743.743 INFO    ] Launching Daemon at Fri Jun 19 02:01:30 IST 2026
[2026-06-19 02:01:30,755.755 INFO    ] ================================================
[2026-06-19 02:01:31,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:01:31
[2026-06-19 02:01:31,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:01:32,256.256 INFO    ] Initializing speech engine...
[2026-06-19 02:01:32,270.270 INFO    ] 2026-06-19 02:01:32
[2026-06-19 02:01:32,537.537 INFO    ] 2026-06-19 02:01:32
[2026-06-19 02:01:32,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:01:32,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:01:32,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:01:32,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:01:33,034.034 INFO    ] time= 19/06/2026 02:01:32
[2026-06-19 02:01:33,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:01:33,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:01:33,239.239 INFO    ] No existing commands found in stream
[2026-06-19 02:01:38,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:01:38,274.274 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 02:01:40,577.577 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:01:40,580.580 INFO    ] Checking for system updates...
[2026-06-19 02:01:40,617.617 INFO    ] 200
[2026-06-19 02:01:40,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:40,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:01:40,676.676 INFO    ] No update needed
[2026-06-19 02:01:40,678.678 INFO    ] Checking for camera pi updates...
[2026-06-19 02:01:40,713.713 INFO    ] 200
[2026-06-19 02:01:40,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:40,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:01:40,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:01:40,822.822 INFO    ] No camera update needed
[2026-06-19 02:01:40,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:01:40,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:01:40,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:01:40,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:01:42,881.881 INFO    ] ================================================
[2026-06-19 02:01:42,897.897 INFO    ] Launching Daemon at Fri Jun 19 02:01:42 IST 2026
[2026-06-19 02:01:42,908.908 INFO    ] ================================================
[2026-06-19 02:01:43,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:01:43
[2026-06-19 02:01:44,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:01:44,374.374 INFO    ] Initializing speech engine...
[2026-06-19 02:01:44,381.381 INFO    ] 2026-06-19 02:01:44
[2026-06-19 02:01:44,629.629 INFO    ] 2026-06-19 02:01:44
[2026-06-19 02:01:44,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:01:44,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:01:44,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:01:44,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:01:45,009.009 INFO    ] time= 19/06/2026 02:01:44
[2026-06-19 02:01:45,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:01:45,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:01:45,085.085 INFO    ] No existing commands found in stream
[2026-06-19 02:01:50,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:01:50,101.101 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 02:01:53,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:01:53,711.711 INFO    ] Checking for system updates...
[2026-06-19 02:01:53,751.751 INFO    ] 200
[2026-06-19 02:01:53,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:53,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:01:53,809.809 INFO    ] No update needed
[2026-06-19 02:01:53,812.812 INFO    ] Checking for camera pi updates...
[2026-06-19 02:01:53,845.845 INFO    ] 200
[2026-06-19 02:01:53,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:01:53,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:01:53,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:01:53,938.938 INFO    ] No camera update needed
[2026-06-19 02:01:53,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:01:53,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:01:53,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:01:53,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:01:56,996.996 INFO    ] ================================================
[2026-06-19 02:01:56,012.012 INFO    ] Launching Daemon at Fri Jun 19 02:01:56 IST 2026
[2026-06-19 02:01:56,023.023 INFO    ] ================================================
[2026-06-19 02:01:56,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:01:56
[2026-06-19 02:01:57,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:01:57,500.500 INFO    ] Initializing speech engine...
[2026-06-19 02:01:57,508.508 INFO    ] 2026-06-19 02:01:57
[2026-06-19 02:01:57,769.769 INFO    ] 2026-06-19 02:01:57
[2026-06-19 02:01:57,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:01:58,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:01:58,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:01:58,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:01:58,229.229 INFO    ] time= 19/06/2026 02:01:58
[2026-06-19 02:01:58,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:01:58,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:01:58,431.431 INFO    ] No existing commands found in stream
[2026-06-19 02:02:03,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:02:03,446.446 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 02:02:07,131.131 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:02:07,133.133 INFO    ] Checking for system updates...
[2026-06-19 02:02:07,170.170 INFO    ] 200
[2026-06-19 02:02:07,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:07,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:02:07,246.246 INFO    ] No update needed
[2026-06-19 02:02:07,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 02:02:07,282.282 INFO    ] 200
[2026-06-19 02:02:07,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:07,325.325 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:02:07,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:02:07,470.470 INFO    ] No camera update needed
[2026-06-19 02:02:07,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:02:07,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:02:07,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:02:07,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:02:09,527.527 INFO    ] ================================================
[2026-06-19 02:02:09,543.543 INFO    ] Launching Daemon at Fri Jun 19 02:02:09 IST 2026
[2026-06-19 02:02:09,554.554 INFO    ] ================================================
[2026-06-19 02:02:10,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:02:10
[2026-06-19 02:02:10,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:02:11,114.114 INFO    ] Initializing speech engine...
[2026-06-19 02:02:11,123.123 INFO    ] 2026-06-19 02:02:11
[2026-06-19 02:02:11,392.392 INFO    ] 2026-06-19 02:02:11
[2026-06-19 02:02:11,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:02:11,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:02:11,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:02:11,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:02:11,878.878 INFO    ] time= 19/06/2026 02:02:11
[2026-06-19 02:02:11,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:02:11,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:02:12,063.063 INFO    ] No existing commands found in stream
[2026-06-19 02:02:17,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:02:17,089.089 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 02:02:19,097.097 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:02:19,100.100 INFO    ] Checking for system updates...
[2026-06-19 02:02:19,136.136 INFO    ] 200
[2026-06-19 02:02:19,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:19,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:02:19,197.197 INFO    ] No update needed
[2026-06-19 02:02:19,200.200 INFO    ] Checking for camera pi updates...
[2026-06-19 02:02:19,233.233 INFO    ] 200
[2026-06-19 02:02:19,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:19,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:02:19,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:02:19,326.326 INFO    ] No camera update needed
[2026-06-19 02:02:19,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:02:19,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:02:19,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:02:19,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:02:21,381.381 INFO    ] ================================================
[2026-06-19 02:02:21,396.396 INFO    ] Launching Daemon at Fri Jun 19 02:02:21 IST 2026
[2026-06-19 02:02:21,407.407 INFO    ] ================================================
[2026-06-19 02:02:21,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:02:21
[2026-06-19 02:02:22,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:02:22,846.846 INFO    ] Initializing speech engine...
[2026-06-19 02:02:22,863.863 INFO    ] 2026-06-19 02:02:22
[2026-06-19 02:02:23,113.113 INFO    ] 2026-06-19 02:02:23
[2026-06-19 02:02:23,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:02:23,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:02:23,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:02:23,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:02:23,549.549 INFO    ] time= 19/06/2026 02:02:23
[2026-06-19 02:02:23,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:02:23,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:02:23,716.716 INFO    ] No existing commands found in stream
[2026-06-19 02:02:28,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:02:28,731.731 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 02:02:31,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:02:31,751.751 INFO    ] Checking for system updates...
[2026-06-19 02:02:31,790.790 INFO    ] 200
[2026-06-19 02:02:31,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:31,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:02:31,854.854 INFO    ] No update needed
[2026-06-19 02:02:31,857.857 INFO    ] Checking for camera pi updates...
[2026-06-19 02:02:31,897.897 INFO    ] 200
[2026-06-19 02:02:31,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:31,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:02:31,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:02:31,997.997 INFO    ] No camera update needed
[2026-06-19 02:02:31,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:02:32,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:02:32,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:02:32,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:02:34,056.056 INFO    ] ================================================
[2026-06-19 02:02:34,071.071 INFO    ] Launching Daemon at Fri Jun 19 02:02:34 IST 2026
[2026-06-19 02:02:34,088.088 INFO    ] ================================================
[2026-06-19 02:02:34,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:02:34
[2026-06-19 02:02:35,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:02:35,540.540 INFO    ] Initializing speech engine...
[2026-06-19 02:02:35,547.547 INFO    ] 2026-06-19 02:02:35
[2026-06-19 02:02:35,810.810 INFO    ] 2026-06-19 02:02:35
[2026-06-19 02:02:35,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:02:36,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:02:36,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:02:36,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:02:36,280.280 INFO    ] time= 19/06/2026 02:02:36
[2026-06-19 02:02:36,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:02:36,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:02:36,462.462 INFO    ] No existing commands found in stream
[2026-06-19 02:02:41,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:02:41,478.478 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 02:02:42,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:02:42,540.540 INFO    ] Checking for system updates...
[2026-06-19 02:02:42,576.576 INFO    ] 200
[2026-06-19 02:02:42,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:42,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:02:42,633.633 INFO    ] No update needed
[2026-06-19 02:02:42,636.636 INFO    ] Checking for camera pi updates...
[2026-06-19 02:02:42,670.670 INFO    ] 200
[2026-06-19 02:02:42,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:42,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:02:42,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:02:42,768.768 INFO    ] No camera update needed
[2026-06-19 02:02:42,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:02:42,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:02:42,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:02:42,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:02:44,823.823 INFO    ] ================================================
[2026-06-19 02:02:44,838.838 INFO    ] Launching Daemon at Fri Jun 19 02:02:44 IST 2026
[2026-06-19 02:02:44,849.849 INFO    ] ================================================
[2026-06-19 02:02:45,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:02:45
[2026-06-19 02:02:46,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:02:46,260.260 INFO    ] Initializing speech engine...
[2026-06-19 02:02:46,268.268 INFO    ] 2026-06-19 02:02:46
[2026-06-19 02:02:46,553.553 INFO    ] 2026-06-19 02:02:46
[2026-06-19 02:02:46,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:02:46,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:02:46,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:02:46,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:02:46,920.920 INFO    ] time= 19/06/2026 02:02:46
[2026-06-19 02:02:46,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:02:46,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:02:47,041.041 INFO    ] No existing commands found in stream
[2026-06-19 02:02:52,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:02:52,056.056 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 02:02:56,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:02:56,177.177 INFO    ] Checking for system updates...
[2026-06-19 02:02:56,219.219 INFO    ] 200
[2026-06-19 02:02:56,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:56,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:02:56,329.329 INFO    ] No update needed
[2026-06-19 02:02:56,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 02:02:56,371.371 INFO    ] 200
[2026-06-19 02:02:56,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:02:56,415.415 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:02:56,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:02:56,474.474 INFO    ] No camera update needed
[2026-06-19 02:02:56,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:02:56,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:02:56,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:02:56,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:02:58,530.530 INFO    ] ================================================
[2026-06-19 02:02:58,545.545 INFO    ] Launching Daemon at Fri Jun 19 02:02:58 IST 2026
[2026-06-19 02:02:58,556.556 INFO    ] ================================================
[2026-06-19 02:02:59,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:02:59
[2026-06-19 02:02:59,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:02:59,964.964 INFO    ] Initializing speech engine...
[2026-06-19 02:02:59,979.979 INFO    ] 2026-06-19 02:02:59
[2026-06-19 02:03:00,247.247 INFO    ] 2026-06-19 02:03:00
[2026-06-19 02:03:00,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:03:00,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:03:00,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:03:00,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:03:00,739.739 INFO    ] time= 19/06/2026 02:03:00
[2026-06-19 02:03:00,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:03:00,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:03:00,880.880 INFO    ] No existing commands found in stream
[2026-06-19 02:03:05,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:03:05,896.896 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 02:03:10,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:03:10,248.248 INFO    ] Checking for system updates...
[2026-06-19 02:03:10,284.284 INFO    ] 200
[2026-06-19 02:03:10,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:03:10,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:03:10,341.341 INFO    ] No update needed
[2026-06-19 02:03:10,343.343 INFO    ] Checking for camera pi updates...
[2026-06-19 02:03:10,378.378 INFO    ] 200
[2026-06-19 02:03:10,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:03:10,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:03:10,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:03:10,471.471 INFO    ] No camera update needed
[2026-06-19 02:03:10,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:03:10,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:03:10,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:03:10,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:03:12,526.526 INFO    ] ================================================
[2026-06-19 02:03:12,541.541 INFO    ] Launching Daemon at Fri Jun 19 02:03:12 IST 2026
[2026-06-19 02:03:12,552.552 INFO    ] ================================================
[2026-06-19 02:03:13,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:03:13
[2026-06-19 02:03:13,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:03:13,976.976 INFO    ] Initializing speech engine...
[2026-06-19 02:03:13,983.983 INFO    ] 2026-06-19 02:03:13
[2026-06-19 02:03:14,235.235 INFO    ] 2026-06-19 02:03:14
[2026-06-19 02:03:14,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:03:14,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:03:14,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:03:14,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:03:14,611.611 INFO    ] time= 19/06/2026 02:03:14
[2026-06-19 02:03:14,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:03:14,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:03:14,777.777 INFO    ] No existing commands found in stream
[2026-06-19 02:03:19,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:03:19,805.805 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 02:03:24,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:03:24,018.018 INFO    ] Checking for system updates...
[2026-06-19 02:03:24,054.054 INFO    ] 200
[2026-06-19 02:03:24,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:03:24,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:03:24,112.112 INFO    ] No update needed
[2026-06-19 02:03:24,115.115 INFO    ] Checking for camera pi updates...
[2026-06-19 02:03:24,148.148 INFO    ] 200
[2026-06-19 02:03:24,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:03:24,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:03:24,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:03:24,238.238 INFO    ] No camera update needed
[2026-06-19 02:03:24,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:03:24,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:03:24,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:03:24,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:03:26,296.296 INFO    ] ================================================
[2026-06-19 02:03:26,311.311 INFO    ] Launching Daemon at Fri Jun 19 02:03:26 IST 2026
[2026-06-19 02:03:26,322.322 INFO    ] ================================================
[2026-06-19 02:03:26,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:03:26
[2026-06-19 02:03:27,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:03:27,863.863 INFO    ] Initializing speech engine...
[2026-06-19 02:03:27,868.868 INFO    ] 2026-06-19 02:03:27
[2026-06-19 02:03:28,128.128 INFO    ] 2026-06-19 02:03:28
[2026-06-19 02:03:28,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:03:28,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:03:28,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:03:28,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:03:28,599.599 INFO    ] time= 19/06/2026 02:03:28
[2026-06-19 02:03:28,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:03:28,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:03:28,743.743 INFO    ] No existing commands found in stream
[2026-06-19 02:03:33,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:03:33,758.758 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 02:03:38,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:03:38,029.029 INFO    ] Checking for system updates...
[2026-06-19 02:03:38,066.066 INFO    ] 200
[2026-06-19 02:03:38,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:03:38,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:03:38,123.123 INFO    ] No update needed
[2026-06-19 02:03:38,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 02:03:38,160.160 INFO    ] 200
[2026-06-19 02:03:38,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:03:38,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:03:38,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:03:38,253.253 INFO    ] No camera update needed
[2026-06-19 02:03:38,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:03:38,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:03:38,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:03:38,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:03:40,308.308 INFO    ] ================================================
[2026-06-19 02:03:40,323.323 INFO    ] Launching Daemon at Fri Jun 19 02:03:40 IST 2026
[2026-06-19 02:03:40,335.335 INFO    ] ================================================
[2026-06-19 02:03:40,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:03:40
[2026-06-19 02:03:41,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:03:41,739.739 INFO    ] Initializing speech engine...
[2026-06-19 02:03:41,745.745 INFO    ] 2026-06-19 02:03:41
[2026-06-19 02:03:42,035.035 INFO    ] 2026-06-19 02:03:42
[2026-06-19 02:03:42,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:03:42,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:03:42,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:03:42,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:03:42,432.432 INFO    ] time= 19/06/2026 02:03:42
[2026-06-19 02:03:42,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:03:42,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:03:42,517.517 INFO    ] No existing commands found in stream
[2026-06-19 02:03:47,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:03:47,532.532 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 02:03:48,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:03:48,189.189 INFO    ] Checking for system updates...
[2026-06-19 02:03:48,225.225 INFO    ] 200
[2026-06-19 02:03:48,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:03:48,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:03:48,288.288 INFO    ] No update needed
[2026-06-19 02:03:48,290.290 INFO    ] Checking for camera pi updates...
[2026-06-19 02:03:48,324.324 INFO    ] 200
[2026-06-19 02:03:48,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:03:48,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:03:48,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:03:48,400.400 INFO    ] No camera update needed
[2026-06-19 02:03:48,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:03:48,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:03:48,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:03:48,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:03:50,454.454 INFO    ] ================================================
[2026-06-19 02:03:50,470.470 INFO    ] Launching Daemon at Fri Jun 19 02:03:50 IST 2026
[2026-06-19 02:03:50,481.481 INFO    ] ================================================
[2026-06-19 02:03:51,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:03:51
[2026-06-19 02:03:51,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:03:51,911.911 INFO    ] Initializing speech engine...
[2026-06-19 02:03:51,930.930 INFO    ] 2026-06-19 02:03:51
[2026-06-19 02:03:52,195.195 INFO    ] 2026-06-19 02:03:52
[2026-06-19 02:03:52,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:03:52,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:03:52,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:03:52,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:03:52,691.691 INFO    ] time= 19/06/2026 02:03:52
[2026-06-19 02:03:52,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:03:52,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:03:52,886.886 INFO    ] No existing commands found in stream
[2026-06-19 02:03:57,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:03:57,918.918 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 02:04:00,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:04:00,604.604 INFO    ] Checking for system updates...
[2026-06-19 02:04:00,640.640 INFO    ] 200
[2026-06-19 02:04:00,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:00,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:04:00,707.707 INFO    ] No update needed
[2026-06-19 02:04:00,709.709 INFO    ] Checking for camera pi updates...
[2026-06-19 02:04:00,744.744 INFO    ] 200
[2026-06-19 02:04:00,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:00,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:04:00,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:04:00,847.847 INFO    ] No camera update needed
[2026-06-19 02:04:00,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:04:00,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:04:00,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:04:00,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:04:02,906.906 INFO    ] ================================================
[2026-06-19 02:04:02,922.922 INFO    ] Launching Daemon at Fri Jun 19 02:04:02 IST 2026
[2026-06-19 02:04:02,934.934 INFO    ] ================================================
[2026-06-19 02:04:03,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:04:03
[2026-06-19 02:04:04,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:04:04,340.340 INFO    ] Initializing speech engine...
[2026-06-19 02:04:04,355.355 INFO    ] 2026-06-19 02:04:04
[2026-06-19 02:04:04,632.632 INFO    ] 2026-06-19 02:04:04
[2026-06-19 02:04:04,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:04:04,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:04:04,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:04:05,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:04:05,030.030 INFO    ] time= 19/06/2026 02:04:05
[2026-06-19 02:04:05,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:04:05,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:04:05,120.120 INFO    ] No existing commands found in stream
[2026-06-19 02:04:10,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:04:10,153.153 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 02:04:14,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:04:14,152.152 INFO    ] Checking for system updates...
[2026-06-19 02:04:14,188.188 INFO    ] 200
[2026-06-19 02:04:14,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:14,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:04:14,247.247 INFO    ] No update needed
[2026-06-19 02:04:14,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 02:04:14,283.283 INFO    ] 200
[2026-06-19 02:04:14,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:14,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:04:14,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:04:14,479.479 INFO    ] No camera update needed
[2026-06-19 02:04:14,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:04:14,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:04:14,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:04:14,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:04:16,533.533 INFO    ] ================================================
[2026-06-19 02:04:16,549.549 INFO    ] Launching Daemon at Fri Jun 19 02:04:16 IST 2026
[2026-06-19 02:04:16,560.560 INFO    ] ================================================
[2026-06-19 02:04:17,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:04:17
[2026-06-19 02:04:17,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:04:18,004.004 INFO    ] Initializing speech engine...
[2026-06-19 02:04:18,013.013 INFO    ] 2026-06-19 02:04:18
[2026-06-19 02:04:18,259.259 INFO    ] 2026-06-19 02:04:18
[2026-06-19 02:04:18,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:04:18,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:04:18,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:04:18,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:04:18,605.605 INFO    ] time= 19/06/2026 02:04:18
[2026-06-19 02:04:18,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:04:18,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:04:18,699.699 INFO    ] No existing commands found in stream
[2026-06-19 02:04:23,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:04:23,715.715 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 02:04:24,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:04:24,868.868 INFO    ] Checking for system updates...
[2026-06-19 02:04:24,909.909 INFO    ] 200
[2026-06-19 02:04:24,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:24,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:04:24,967.967 INFO    ] No update needed
[2026-06-19 02:04:24,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 02:04:25,004.004 INFO    ] 200
[2026-06-19 02:04:25,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:25,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:04:25,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:04:25,101.101 INFO    ] No camera update needed
[2026-06-19 02:04:25,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:04:25,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:04:25,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:04:25,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:04:27,161.161 INFO    ] ================================================
[2026-06-19 02:04:27,176.176 INFO    ] Launching Daemon at Fri Jun 19 02:04:27 IST 2026
[2026-06-19 02:04:27,187.187 INFO    ] ================================================
[2026-06-19 02:04:27,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:04:27
[2026-06-19 02:04:28,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:04:28,666.666 INFO    ] Initializing speech engine...
[2026-06-19 02:04:28,675.675 INFO    ] 2026-06-19 02:04:28
[2026-06-19 02:04:28,959.959 INFO    ] 2026-06-19 02:04:28
[2026-06-19 02:04:28,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:04:29,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:04:29,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:04:29,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:04:29,366.366 INFO    ] time= 19/06/2026 02:04:29
[2026-06-19 02:04:29,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:04:29,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:04:29,447.447 INFO    ] No existing commands found in stream
[2026-06-19 02:04:34,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:04:34,463.463 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 02:04:35,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:04:35,134.134 INFO    ] Checking for system updates...
[2026-06-19 02:04:35,173.173 INFO    ] 200
[2026-06-19 02:04:35,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:35,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:04:35,232.232 INFO    ] No update needed
[2026-06-19 02:04:35,234.234 INFO    ] Checking for camera pi updates...
[2026-06-19 02:04:35,268.268 INFO    ] 200
[2026-06-19 02:04:35,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:35,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:04:35,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:04:35,367.367 INFO    ] No camera update needed
[2026-06-19 02:04:35,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:04:35,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:04:35,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:04:35,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:04:37,422.422 INFO    ] ================================================
[2026-06-19 02:04:37,437.437 INFO    ] Launching Daemon at Fri Jun 19 02:04:37 IST 2026
[2026-06-19 02:04:37,448.448 INFO    ] ================================================
[2026-06-19 02:04:38,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:04:38
[2026-06-19 02:04:38,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:04:38,906.906 INFO    ] Initializing speech engine...
[2026-06-19 02:04:38,916.916 INFO    ] 2026-06-19 02:04:38
[2026-06-19 02:04:39,181.181 INFO    ] 2026-06-19 02:04:39
[2026-06-19 02:04:39,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:04:39,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:04:39,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:04:39,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:04:39,645.645 INFO    ] time= 19/06/2026 02:04:39
[2026-06-19 02:04:39,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:04:39,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:04:39,795.795 INFO    ] No existing commands found in stream
[2026-06-19 02:04:44,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:04:44,834.834 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 02:04:49,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:04:49,151.151 INFO    ] Checking for system updates...
[2026-06-19 02:04:49,193.193 INFO    ] 200
[2026-06-19 02:04:49,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:49,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:04:49,252.252 INFO    ] No update needed
[2026-06-19 02:04:49,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 02:04:49,290.290 INFO    ] 200
[2026-06-19 02:04:49,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:04:49,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:04:49,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:04:49,370.370 INFO    ] No camera update needed
[2026-06-19 02:04:49,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:04:49,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:04:49,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:04:49,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:04:51,426.426 INFO    ] ================================================
[2026-06-19 02:04:51,441.441 INFO    ] Launching Daemon at Fri Jun 19 02:04:51 IST 2026
[2026-06-19 02:04:51,452.452 INFO    ] ================================================
[2026-06-19 02:04:52,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:04:52
[2026-06-19 02:04:52,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:04:52,905.905 INFO    ] Initializing speech engine...
[2026-06-19 02:04:52,912.912 INFO    ] 2026-06-19 02:04:52
[2026-06-19 02:04:53,175.175 INFO    ] 2026-06-19 02:04:53
[2026-06-19 02:04:53,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:04:53,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:04:53,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:04:53,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:04:53,675.675 INFO    ] time= 19/06/2026 02:04:53
[2026-06-19 02:04:53,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:04:53,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:04:53,866.866 INFO    ] No existing commands found in stream
[2026-06-19 02:04:58,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:04:58,894.894 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 02:05:02,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:05:02,371.371 INFO    ] Checking for system updates...
[2026-06-19 02:05:02,484.484 INFO    ] 200
[2026-06-19 02:05:02,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:02,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:05:02,608.608 INFO    ] No update needed
[2026-06-19 02:05:02,611.611 INFO    ] Checking for camera pi updates...
[2026-06-19 02:05:02,658.658 INFO    ] 200
[2026-06-19 02:05:02,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:02,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:05:02,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:05:02,777.777 INFO    ] No camera update needed
[2026-06-19 02:05:02,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:05:02,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:05:02,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:05:02,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:05:04,850.850 INFO    ] ================================================
[2026-06-19 02:05:04,866.866 INFO    ] Launching Daemon at Fri Jun 19 02:05:04 IST 2026
[2026-06-19 02:05:04,877.877 INFO    ] ================================================
[2026-06-19 02:05:05,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:05:05
[2026-06-19 02:05:06,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:05:06,569.569 INFO    ] Initializing speech engine...
[2026-06-19 02:05:06,583.583 INFO    ] 2026-06-19 02:05:06
[2026-06-19 02:05:06,861.861 INFO    ] 2026-06-19 02:05:06
[2026-06-19 02:05:06,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:05:07,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:05:07,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:05:07,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:05:07,223.223 INFO    ] time= 19/06/2026 02:05:07
[2026-06-19 02:05:07,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:05:07,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:05:07,303.303 INFO    ] No existing commands found in stream
[2026-06-19 02:05:12,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:05:12,316.316 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 02:05:13,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:05:13,270.270 INFO    ] Checking for system updates...
[2026-06-19 02:05:13,309.309 INFO    ] 200
[2026-06-19 02:05:13,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:13,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:05:13,366.366 INFO    ] No update needed
[2026-06-19 02:05:13,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 02:05:13,403.403 INFO    ] 200
[2026-06-19 02:05:13,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:13,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:05:13,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:05:13,499.499 INFO    ] No camera update needed
[2026-06-19 02:05:13,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:05:13,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:05:13,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:05:13,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:05:15,554.554 INFO    ] ================================================
[2026-06-19 02:05:15,570.570 INFO    ] Launching Daemon at Fri Jun 19 02:05:15 IST 2026
[2026-06-19 02:05:15,581.581 INFO    ] ================================================
[2026-06-19 02:05:16,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:05:16
[2026-06-19 02:05:16,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:05:17,013.013 INFO    ] Initializing speech engine...
[2026-06-19 02:05:17,018.018 INFO    ] 2026-06-19 02:05:17
[2026-06-19 02:05:17,270.270 INFO    ] 2026-06-19 02:05:17
[2026-06-19 02:05:17,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:05:17,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:05:17,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:05:17,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:05:17,715.715 INFO    ] time= 19/06/2026 02:05:17
[2026-06-19 02:05:17,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:05:17,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:05:17,891.891 INFO    ] No existing commands found in stream
[2026-06-19 02:05:22,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:05:22,929.929 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 02:05:24,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:05:24,514.514 INFO    ] Checking for system updates...
[2026-06-19 02:05:24,550.550 INFO    ] 200
[2026-06-19 02:05:24,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:24,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:05:24,609.609 INFO    ] No update needed
[2026-06-19 02:05:24,612.612 INFO    ] Checking for camera pi updates...
[2026-06-19 02:05:24,646.646 INFO    ] 200
[2026-06-19 02:05:24,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:24,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:05:24,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:05:24,741.741 INFO    ] No camera update needed
[2026-06-19 02:05:24,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:05:24,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:05:24,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:05:24,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:05:26,800.800 INFO    ] ================================================
[2026-06-19 02:05:26,815.815 INFO    ] Launching Daemon at Fri Jun 19 02:05:26 IST 2026
[2026-06-19 02:05:26,827.827 INFO    ] ================================================
[2026-06-19 02:05:27,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:05:27
[2026-06-19 02:05:28,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:05:28,290.290 INFO    ] Initializing speech engine...
[2026-06-19 02:05:28,299.299 INFO    ] 2026-06-19 02:05:28
[2026-06-19 02:05:28,582.582 INFO    ] 2026-06-19 02:05:28
[2026-06-19 02:05:28,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:05:28,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:05:28,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:05:28,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:05:29,053.053 INFO    ] time= 19/06/2026 02:05:28
[2026-06-19 02:05:29,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:05:29,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:05:29,254.254 INFO    ] No existing commands found in stream
[2026-06-19 02:05:34,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:05:34,288.288 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 02:05:35,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:05:35,702.702 INFO    ] Checking for system updates...
[2026-06-19 02:05:35,741.741 INFO    ] 200
[2026-06-19 02:05:35,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:35,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:05:35,802.802 INFO    ] No update needed
[2026-06-19 02:05:35,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 02:05:35,839.839 INFO    ] 200
[2026-06-19 02:05:35,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:35,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:05:35,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:05:35,948.948 INFO    ] No camera update needed
[2026-06-19 02:05:35,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:05:35,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:05:35,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:05:35,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:05:38,006.006 INFO    ] ================================================
[2026-06-19 02:05:38,022.022 INFO    ] Launching Daemon at Fri Jun 19 02:05:38 IST 2026
[2026-06-19 02:05:38,033.033 INFO    ] ================================================
[2026-06-19 02:05:38,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:05:38
[2026-06-19 02:05:39,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:05:39,435.435 INFO    ] Initializing speech engine...
[2026-06-19 02:05:39,458.458 INFO    ] 2026-06-19 02:05:39
[2026-06-19 02:05:39,713.713 INFO    ] 2026-06-19 02:05:39
[2026-06-19 02:05:39,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:05:40,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:05:40,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:05:40,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:05:40,165.165 INFO    ] time= 19/06/2026 02:05:40
[2026-06-19 02:05:40,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:05:40,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:05:40,344.344 INFO    ] No existing commands found in stream
[2026-06-19 02:05:45,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:05:45,358.358 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 02:05:47,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:05:47,743.743 INFO    ] Checking for system updates...
[2026-06-19 02:05:47,779.779 INFO    ] 200
[2026-06-19 02:05:47,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:47,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:05:47,844.844 INFO    ] No update needed
[2026-06-19 02:05:47,847.847 INFO    ] Checking for camera pi updates...
[2026-06-19 02:05:47,881.881 INFO    ] 200
[2026-06-19 02:05:47,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:47,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:05:47,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:05:47,967.967 INFO    ] No camera update needed
[2026-06-19 02:05:47,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:05:47,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:05:47,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:05:47,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:05:50,027.027 INFO    ] ================================================
[2026-06-19 02:05:50,043.043 INFO    ] Launching Daemon at Fri Jun 19 02:05:50 IST 2026
[2026-06-19 02:05:50,054.054 INFO    ] ================================================
[2026-06-19 02:05:50,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:05:50
[2026-06-19 02:05:51,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:05:51,490.490 INFO    ] Initializing speech engine...
[2026-06-19 02:05:51,500.500 INFO    ] 2026-06-19 02:05:51
[2026-06-19 02:05:51,744.744 INFO    ] 2026-06-19 02:05:51
[2026-06-19 02:05:51,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:05:52,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:05:52,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:05:52,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:05:52,210.210 INFO    ] time= 19/06/2026 02:05:52
[2026-06-19 02:05:52,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:05:52,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:05:52,365.365 INFO    ] No existing commands found in stream
[2026-06-19 02:05:57,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:05:57,380.380 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 02:05:58,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:05:58,271.271 INFO    ] Checking for system updates...
[2026-06-19 02:05:58,312.312 INFO    ] 200
[2026-06-19 02:05:58,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:58,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:05:58,377.377 INFO    ] No update needed
[2026-06-19 02:05:58,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 02:05:58,415.415 INFO    ] 200
[2026-06-19 02:05:58,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:05:58,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:05:58,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:05:58,518.518 INFO    ] No camera update needed
[2026-06-19 02:05:58,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:05:58,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:05:58,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:05:58,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:06:00,584.584 INFO    ] ================================================
[2026-06-19 02:06:00,600.600 INFO    ] Launching Daemon at Fri Jun 19 02:06:00 IST 2026
[2026-06-19 02:06:00,611.611 INFO    ] ================================================
[2026-06-19 02:06:01,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:06:01
[2026-06-19 02:06:01,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:06:02,405.405 INFO    ] Initializing speech engine...
[2026-06-19 02:06:02,409.409 INFO    ] 2026-06-19 02:06:02
[2026-06-19 02:06:02,758.758 INFO    ] 2026-06-19 02:06:02
[2026-06-19 02:06:02,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:06:03,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:06:03,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:06:03,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:06:03,207.207 INFO    ] time= 19/06/2026 02:06:03
[2026-06-19 02:06:03,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:06:03,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:06:03,365.365 INFO    ] No existing commands found in stream
[2026-06-19 02:06:08,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:06:08,389.389 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 02:06:12,639.639 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:06:12,641.641 INFO    ] Checking for system updates...
[2026-06-19 02:06:12,677.677 INFO    ] 200
[2026-06-19 02:06:12,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:06:12,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:06:12,736.736 INFO    ] No update needed
[2026-06-19 02:06:12,738.738 INFO    ] Checking for camera pi updates...
[2026-06-19 02:06:12,772.772 INFO    ] 200
[2026-06-19 02:06:12,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:06:12,815.815 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:06:12,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:06:12,860.860 INFO    ] No camera update needed
[2026-06-19 02:06:12,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:06:12,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:06:12,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:06:12,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:06:14,916.916 INFO    ] ================================================
[2026-06-19 02:06:14,932.932 INFO    ] Launching Daemon at Fri Jun 19 02:06:14 IST 2026
[2026-06-19 02:06:14,943.943 INFO    ] ================================================
[2026-06-19 02:06:15,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:06:15
[2026-06-19 02:06:16,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:06:16,405.405 INFO    ] Initializing speech engine...
[2026-06-19 02:06:16,414.414 INFO    ] 2026-06-19 02:06:16
[2026-06-19 02:06:16,665.665 INFO    ] 2026-06-19 02:06:16
[2026-06-19 02:06:16,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:06:16,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:06:16,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:06:17,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:06:17,037.037 INFO    ] time= 19/06/2026 02:06:17
[2026-06-19 02:06:17,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:06:17,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:06:17,218.218 INFO    ] No existing commands found in stream
[2026-06-19 02:06:22,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:06:22,240.240 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 02:06:26,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:06:26,337.337 INFO    ] Checking for system updates...
[2026-06-19 02:06:26,377.377 INFO    ] 200
[2026-06-19 02:06:26,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:06:26,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:06:26,435.435 INFO    ] No update needed
[2026-06-19 02:06:26,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 02:06:26,471.471 INFO    ] 200
[2026-06-19 02:06:26,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:06:26,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:06:26,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:06:26,669.669 INFO    ] No camera update needed
[2026-06-19 02:06:26,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:06:26,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:06:26,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:06:26,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:06:28,729.729 INFO    ] ================================================
[2026-06-19 02:06:28,745.745 INFO    ] Launching Daemon at Fri Jun 19 02:06:28 IST 2026
[2026-06-19 02:06:28,756.756 INFO    ] ================================================
[2026-06-19 02:06:29,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:06:29
[2026-06-19 02:06:30,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:06:30,280.280 INFO    ] Initializing speech engine...
[2026-06-19 02:06:30,290.290 INFO    ] 2026-06-19 02:06:30
[2026-06-19 02:06:30,541.541 INFO    ] 2026-06-19 02:06:30
[2026-06-19 02:06:30,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:06:30,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:06:30,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:06:30,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:06:30,917.917 INFO    ] time= 19/06/2026 02:06:30
[2026-06-19 02:06:30,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:06:30,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:06:30,994.994 INFO    ] No existing commands found in stream
[2026-06-19 02:06:36,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:06:36,009.009 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 02:06:37,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:06:37,007.007 INFO    ] Checking for system updates...
[2026-06-19 02:06:37,044.044 INFO    ] 200
[2026-06-19 02:06:37,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:06:37,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:06:37,103.103 INFO    ] No update needed
[2026-06-19 02:06:37,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 02:06:37,140.140 INFO    ] 200
[2026-06-19 02:06:37,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:06:37,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:06:37,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:06:37,235.235 INFO    ] No camera update needed
[2026-06-19 02:06:37,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:06:37,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:06:37,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:06:37,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:06:39,295.295 INFO    ] ================================================
[2026-06-19 02:06:39,310.310 INFO    ] Launching Daemon at Fri Jun 19 02:06:39 IST 2026
[2026-06-19 02:06:39,321.321 INFO    ] ================================================
[2026-06-19 02:06:39,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:06:39
[2026-06-19 02:06:40,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:06:40,745.745 INFO    ] Initializing speech engine...
[2026-06-19 02:06:40,751.751 INFO    ] 2026-06-19 02:06:40
[2026-06-19 02:06:40,994.994 INFO    ] 2026-06-19 02:06:40
[2026-06-19 02:06:41,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:06:41,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:06:41,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:06:41,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:06:41,469.469 INFO    ] time= 19/06/2026 02:06:41
[2026-06-19 02:06:41,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:06:41,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:06:41,613.613 INFO    ] No existing commands found in stream
[2026-06-19 02:06:46,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:06:46,637.637 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 02:06:48,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:06:48,950.950 INFO    ] Checking for system updates...
[2026-06-19 02:06:48,986.986 INFO    ] 200
[2026-06-19 02:06:48,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:06:49,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:06:49,043.043 INFO    ] No update needed
[2026-06-19 02:06:49,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 02:06:49,080.080 INFO    ] 200
[2026-06-19 02:06:49,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:06:49,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:06:49,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:06:49,178.178 INFO    ] No camera update needed
[2026-06-19 02:06:49,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:06:49,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:06:49,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:06:49,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:06:51,234.234 INFO    ] ================================================
[2026-06-19 02:06:51,249.249 INFO    ] Launching Daemon at Fri Jun 19 02:06:51 IST 2026
[2026-06-19 02:06:51,260.260 INFO    ] ================================================
[2026-06-19 02:06:51,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:06:51
[2026-06-19 02:06:52,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:06:52,693.693 INFO    ] Initializing speech engine...
[2026-06-19 02:06:52,703.703 INFO    ] 2026-06-19 02:06:52
[2026-06-19 02:06:52,951.951 INFO    ] 2026-06-19 02:06:52
[2026-06-19 02:06:52,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:06:53,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:06:53,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:06:53,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:06:53,462.462 INFO    ] time= 19/06/2026 02:06:53
[2026-06-19 02:06:53,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:06:53,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:06:53,629.629 INFO    ] No existing commands found in stream
[2026-06-19 02:06:58,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:06:58,659.659 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 02:07:02,389.389 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:07:02,392.392 INFO    ] Checking for system updates...
[2026-06-19 02:07:02,434.434 INFO    ] 200
[2026-06-19 02:07:02,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:02,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:02,500.500 INFO    ] No update needed
[2026-06-19 02:07:02,503.503 INFO    ] Checking for camera pi updates...
[2026-06-19 02:07:02,546.546 INFO    ] 200
[2026-06-19 02:07:02,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:02,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:07:02,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:02,654.654 INFO    ] No camera update needed
[2026-06-19 02:07:02,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:07:02,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:07:02,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:07:02,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:07:04,722.722 INFO    ] ================================================
[2026-06-19 02:07:04,737.737 INFO    ] Launching Daemon at Fri Jun 19 02:07:04 IST 2026
[2026-06-19 02:07:04,748.748 INFO    ] ================================================
[2026-06-19 02:07:05,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:07:05
[2026-06-19 02:07:06,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:07:06,331.331 INFO    ] Initializing speech engine...
[2026-06-19 02:07:06,339.339 INFO    ] 2026-06-19 02:07:06
[2026-06-19 02:07:06,625.625 INFO    ] 2026-06-19 02:07:06
[2026-06-19 02:07:06,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:07:06,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:07:06,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:07:07,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:07:07,095.095 INFO    ] time= 19/06/2026 02:07:07
[2026-06-19 02:07:07,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:07:07,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:07:07,254.254 INFO    ] No existing commands found in stream
[2026-06-19 02:07:12,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:07:12,268.268 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 02:07:15,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:07:15,055.055 INFO    ] Checking for system updates...
[2026-06-19 02:07:15,092.092 INFO    ] 200
[2026-06-19 02:07:15,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:15,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:15,152.152 INFO    ] No update needed
[2026-06-19 02:07:15,155.155 INFO    ] Checking for camera pi updates...
[2026-06-19 02:07:15,190.190 INFO    ] 200
[2026-06-19 02:07:15,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:15,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:07:15,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:15,294.294 INFO    ] No camera update needed
[2026-06-19 02:07:15,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:07:15,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:07:15,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:07:15,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:07:17,349.349 INFO    ] ================================================
[2026-06-19 02:07:17,365.365 INFO    ] Launching Daemon at Fri Jun 19 02:07:17 IST 2026
[2026-06-19 02:07:17,376.376 INFO    ] ================================================
[2026-06-19 02:07:18,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:07:18
[2026-06-19 02:07:18,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:07:18,952.952 INFO    ] Initializing speech engine...
[2026-06-19 02:07:18,960.960 INFO    ] 2026-06-19 02:07:18
[2026-06-19 02:07:19,208.208 INFO    ] 2026-06-19 02:07:19
[2026-06-19 02:07:19,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:07:19,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:07:19,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:07:19,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:07:19,670.670 INFO    ] time= 19/06/2026 02:07:19
[2026-06-19 02:07:19,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:07:19,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:07:19,839.839 INFO    ] No existing commands found in stream
[2026-06-19 02:07:24,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:07:24,853.853 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 02:07:29,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:07:29,033.033 INFO    ] Checking for system updates...
[2026-06-19 02:07:29,069.069 INFO    ] 200
[2026-06-19 02:07:29,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:29,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:29,128.128 INFO    ] No update needed
[2026-06-19 02:07:29,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 02:07:29,168.168 INFO    ] 200
[2026-06-19 02:07:29,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:29,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:07:29,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:29,259.259 INFO    ] No camera update needed
[2026-06-19 02:07:29,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:07:29,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:07:29,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:07:29,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:07:31,314.314 INFO    ] ================================================
[2026-06-19 02:07:31,329.329 INFO    ] Launching Daemon at Fri Jun 19 02:07:31 IST 2026
[2026-06-19 02:07:31,339.339 INFO    ] ================================================
[2026-06-19 02:07:31,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:07:31
[2026-06-19 02:07:32,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:07:32,873.873 INFO    ] Initializing speech engine...
[2026-06-19 02:07:32,883.883 INFO    ] 2026-06-19 02:07:32
[2026-06-19 02:07:33,165.165 INFO    ] 2026-06-19 02:07:33
[2026-06-19 02:07:33,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:07:33,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:07:33,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:07:33,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:07:33,660.660 INFO    ] time= 19/06/2026 02:07:33
[2026-06-19 02:07:33,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:07:33,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:07:33,844.844 INFO    ] No existing commands found in stream
[2026-06-19 02:07:38,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:07:38,859.859 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 02:07:42,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:07:42,430.430 INFO    ] Checking for system updates...
[2026-06-19 02:07:42,466.466 INFO    ] 200
[2026-06-19 02:07:42,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:42,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:42,525.525 INFO    ] No update needed
[2026-06-19 02:07:42,527.527 INFO    ] Checking for camera pi updates...
[2026-06-19 02:07:42,566.566 INFO    ] 200
[2026-06-19 02:07:42,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:42,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:07:42,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:42,661.661 INFO    ] No camera update needed
[2026-06-19 02:07:42,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:07:42,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:07:42,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:07:42,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:07:44,716.716 INFO    ] ================================================
[2026-06-19 02:07:44,731.731 INFO    ] Launching Daemon at Fri Jun 19 02:07:44 IST 2026
[2026-06-19 02:07:44,741.741 INFO    ] ================================================
[2026-06-19 02:07:45,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:07:45
[2026-06-19 02:07:45,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:07:46,207.207 INFO    ] Initializing speech engine...
[2026-06-19 02:07:46,212.212 INFO    ] 2026-06-19 02:07:46
[2026-06-19 02:07:46,473.473 INFO    ] 2026-06-19 02:07:46
[2026-06-19 02:07:46,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:07:46,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:07:46,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:07:46,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:07:46,933.933 INFO    ] time= 19/06/2026 02:07:46
[2026-06-19 02:07:46,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:07:47,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:07:47,092.092 INFO    ] No existing commands found in stream
[2026-06-19 02:07:52,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:07:52,107.107 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-19 02:07:53,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:07:53,282.282 INFO    ] Checking for system updates...
[2026-06-19 02:07:53,320.320 INFO    ] 200
[2026-06-19 02:07:53,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:53,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:53,379.379 INFO    ] No update needed
[2026-06-19 02:07:53,381.381 INFO    ] Checking for camera pi updates...
[2026-06-19 02:07:53,415.415 INFO    ] 200
[2026-06-19 02:07:53,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:07:53,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:07:53,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:07:53,508.508 INFO    ] No camera update needed
[2026-06-19 02:07:53,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:07:53,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:07:53,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:07:53,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:07:55,562.562 INFO    ] ================================================
[2026-06-19 02:07:55,577.577 INFO    ] Launching Daemon at Fri Jun 19 02:07:55 IST 2026
[2026-06-19 02:07:55,587.587 INFO    ] ================================================
[2026-06-19 02:07:56,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:07:56
[2026-06-19 02:07:56,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:07:57,017.017 INFO    ] Initializing speech engine...
[2026-06-19 02:07:57,026.026 INFO    ] 2026-06-19 02:07:57
[2026-06-19 02:07:57,276.276 INFO    ] 2026-06-19 02:07:57
[2026-06-19 02:07:57,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:07:57,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:07:57,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:07:57,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:07:57,720.720 INFO    ] time= 19/06/2026 02:07:57
[2026-06-19 02:07:57,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:07:57,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:07:57,873.873 INFO    ] No existing commands found in stream
[2026-06-19 02:08:02,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:08:02,888.888 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 02:08:06,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:08:06,329.329 INFO    ] Checking for system updates...
[2026-06-19 02:08:06,368.368 INFO    ] 200
[2026-06-19 02:08:06,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:06,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:08:06,425.425 INFO    ] No update needed
[2026-06-19 02:08:06,428.428 INFO    ] Checking for camera pi updates...
[2026-06-19 02:08:06,461.461 INFO    ] 200
[2026-06-19 02:08:06,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:06,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:08:06,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:08:06,565.565 INFO    ] No camera update needed
[2026-06-19 02:08:06,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:08:06,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:08:06,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:08:06,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:08:08,621.621 INFO    ] ================================================
[2026-06-19 02:08:08,637.637 INFO    ] Launching Daemon at Fri Jun 19 02:08:08 IST 2026
[2026-06-19 02:08:08,648.648 INFO    ] ================================================
[2026-06-19 02:08:09,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:08:09
[2026-06-19 02:08:09,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:08:10,059.059 INFO    ] Initializing speech engine...
[2026-06-19 02:08:10,076.076 INFO    ] 2026-06-19 02:08:10
[2026-06-19 02:08:10,361.361 INFO    ] 2026-06-19 02:08:10
[2026-06-19 02:08:10,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:08:10,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:08:10,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:08:10,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:08:10,738.738 INFO    ] time= 19/06/2026 02:08:10
[2026-06-19 02:08:10,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:08:10,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:08:10,861.861 INFO    ] No existing commands found in stream
[2026-06-19 02:08:15,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:08:15,877.877 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 02:08:19,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:08:19,731.731 INFO    ] Checking for system updates...
[2026-06-19 02:08:19,768.768 INFO    ] 200
[2026-06-19 02:08:19,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:19,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:08:19,830.830 INFO    ] No update needed
[2026-06-19 02:08:19,832.832 INFO    ] Checking for camera pi updates...
[2026-06-19 02:08:19,866.866 INFO    ] 200
[2026-06-19 02:08:19,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:19,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:08:19,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:08:19,965.965 INFO    ] No camera update needed
[2026-06-19 02:08:19,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:08:19,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:08:19,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:08:19,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:08:22,022.022 INFO    ] ================================================
[2026-06-19 02:08:22,038.038 INFO    ] Launching Daemon at Fri Jun 19 02:08:22 IST 2026
[2026-06-19 02:08:22,048.048 INFO    ] ================================================
[2026-06-19 02:08:22,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:08:22
[2026-06-19 02:08:23,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:08:23,454.454 INFO    ] Initializing speech engine...
[2026-06-19 02:08:23,463.463 INFO    ] 2026-06-19 02:08:23
[2026-06-19 02:08:23,753.753 INFO    ] 2026-06-19 02:08:23
[2026-06-19 02:08:23,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:08:23,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:08:23,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:08:24,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:08:24,129.129 INFO    ] time= 19/06/2026 02:08:24
[2026-06-19 02:08:24,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:08:24,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:08:24,254.254 INFO    ] No existing commands found in stream
[2026-06-19 02:08:29,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:08:29,267.267 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 02:08:30,197.197 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:08:30,200.200 INFO    ] Checking for system updates...
[2026-06-19 02:08:30,238.238 INFO    ] 200
[2026-06-19 02:08:30,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:30,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:08:30,297.297 INFO    ] No update needed
[2026-06-19 02:08:30,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 02:08:30,334.334 INFO    ] 200
[2026-06-19 02:08:30,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:30,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:08:30,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:08:30,531.531 INFO    ] No camera update needed
[2026-06-19 02:08:30,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:08:30,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:08:30,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:08:30,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:08:32,589.589 INFO    ] ================================================
[2026-06-19 02:08:32,606.606 INFO    ] Launching Daemon at Fri Jun 19 02:08:32 IST 2026
[2026-06-19 02:08:32,617.617 INFO    ] ================================================
[2026-06-19 02:08:33,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:08:33
[2026-06-19 02:08:33,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:08:34,264.264 INFO    ] Initializing speech engine...
[2026-06-19 02:08:34,272.272 INFO    ] 2026-06-19 02:08:34
[2026-06-19 02:08:34,551.551 INFO    ] 2026-06-19 02:08:34
[2026-06-19 02:08:34,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:08:34,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:08:34,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:08:34,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:08:35,030.030 INFO    ] time= 19/06/2026 02:08:34
[2026-06-19 02:08:35,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:08:35,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:08:35,174.174 INFO    ] No existing commands found in stream
[2026-06-19 02:08:40,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:08:40,190.190 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 02:08:41,974.974 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:08:41,977.977 INFO    ] Checking for system updates...
[2026-06-19 02:08:42,015.015 INFO    ] 200
[2026-06-19 02:08:42,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:42,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:08:42,080.080 INFO    ] No update needed
[2026-06-19 02:08:42,083.083 INFO    ] Checking for camera pi updates...
[2026-06-19 02:08:42,118.118 INFO    ] 200
[2026-06-19 02:08:42,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:42,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:08:42,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:08:42,211.211 INFO    ] No camera update needed
[2026-06-19 02:08:42,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:08:42,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:08:42,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:08:42,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:08:44,273.273 INFO    ] ================================================
[2026-06-19 02:08:44,289.289 INFO    ] Launching Daemon at Fri Jun 19 02:08:44 IST 2026
[2026-06-19 02:08:44,300.300 INFO    ] ================================================
[2026-06-19 02:08:44,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:08:44
[2026-06-19 02:08:45,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:08:45,909.909 INFO    ] Initializing speech engine...
[2026-06-19 02:08:45,915.915 INFO    ] 2026-06-19 02:08:45
[2026-06-19 02:08:46,191.191 INFO    ] 2026-06-19 02:08:46
[2026-06-19 02:08:46,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:08:46,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:08:46,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:08:46,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:08:46,699.699 INFO    ] time= 19/06/2026 02:08:46
[2026-06-19 02:08:46,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:08:46,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:08:46,867.867 INFO    ] No existing commands found in stream
[2026-06-19 02:08:51,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:08:51,899.899 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-19 02:08:54,414.414 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:08:54,417.417 INFO    ] Checking for system updates...
[2026-06-19 02:08:54,454.454 INFO    ] 200
[2026-06-19 02:08:54,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:54,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:08:54,516.516 INFO    ] No update needed
[2026-06-19 02:08:54,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 02:08:54,553.553 INFO    ] 200
[2026-06-19 02:08:54,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:08:54,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:08:54,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:08:54,644.644 INFO    ] No camera update needed
[2026-06-19 02:08:54,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:08:54,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:08:54,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:08:54,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:08:56,703.703 INFO    ] ================================================
[2026-06-19 02:08:56,719.719 INFO    ] Launching Daemon at Fri Jun 19 02:08:56 IST 2026
[2026-06-19 02:08:56,730.730 INFO    ] ================================================
[2026-06-19 02:08:57,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:08:57
[2026-06-19 02:08:57,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:08:58,171.171 INFO    ] Initializing speech engine...
[2026-06-19 02:08:58,184.184 INFO    ] 2026-06-19 02:08:58
[2026-06-19 02:08:58,468.468 INFO    ] 2026-06-19 02:08:58
[2026-06-19 02:08:58,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:08:58,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:08:58,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:08:58,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:08:58,840.840 INFO    ] time= 19/06/2026 02:08:58
[2026-06-19 02:08:58,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:08:58,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:08:58,966.966 INFO    ] No existing commands found in stream
[2026-06-19 02:09:03,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:09:03,980.980 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 02:09:04,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:09:04,727.727 INFO    ] Checking for system updates...
[2026-06-19 02:09:04,763.763 INFO    ] 200
[2026-06-19 02:09:04,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:04,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:09:04,822.822 INFO    ] No update needed
[2026-06-19 02:09:04,825.825 INFO    ] Checking for camera pi updates...
[2026-06-19 02:09:04,860.860 INFO    ] 200
[2026-06-19 02:09:04,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:04,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:09:04,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:09:04,953.953 INFO    ] No camera update needed
[2026-06-19 02:09:04,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:09:04,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:09:04,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:09:04,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:09:07,009.009 INFO    ] ================================================
[2026-06-19 02:09:07,025.025 INFO    ] Launching Daemon at Fri Jun 19 02:09:07 IST 2026
[2026-06-19 02:09:07,040.040 INFO    ] ================================================
[2026-06-19 02:09:07,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:09:07
[2026-06-19 02:09:08,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:09:08,494.494 INFO    ] Initializing speech engine...
[2026-06-19 02:09:08,502.502 INFO    ] 2026-06-19 02:09:08
[2026-06-19 02:09:08,801.801 INFO    ] 2026-06-19 02:09:08
[2026-06-19 02:09:08,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:09:09,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:09:09,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:09:09,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:09:09,217.217 INFO    ] time= 19/06/2026 02:09:09
[2026-06-19 02:09:09,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:09:09,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:09:09,301.301 INFO    ] No existing commands found in stream
[2026-06-19 02:09:14,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:09:14,318.318 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 02:09:15,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:09:15,751.751 INFO    ] Checking for system updates...
[2026-06-19 02:09:15,787.787 INFO    ] 200
[2026-06-19 02:09:15,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:15,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:09:15,845.845 INFO    ] No update needed
[2026-06-19 02:09:15,848.848 INFO    ] Checking for camera pi updates...
[2026-06-19 02:09:15,882.882 INFO    ] 200
[2026-06-19 02:09:15,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:15,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:09:15,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:09:15,984.984 INFO    ] No camera update needed
[2026-06-19 02:09:15,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:09:15,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:09:15,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:09:16,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:09:18,043.043 INFO    ] ================================================
[2026-06-19 02:09:18,059.059 INFO    ] Launching Daemon at Fri Jun 19 02:09:18 IST 2026
[2026-06-19 02:09:18,070.070 INFO    ] ================================================
[2026-06-19 02:09:18,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:09:18
[2026-06-19 02:09:19,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:09:19,489.489 INFO    ] Initializing speech engine...
[2026-06-19 02:09:19,509.509 INFO    ] 2026-06-19 02:09:19
[2026-06-19 02:09:19,760.760 INFO    ] 2026-06-19 02:09:19
[2026-06-19 02:09:19,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:09:20,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:09:20,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:09:20,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:09:20,265.265 INFO    ] time= 19/06/2026 02:09:20
[2026-06-19 02:09:20,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:09:20,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:09:20,447.447 INFO    ] No existing commands found in stream
[2026-06-19 02:09:25,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:09:25,474.474 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 02:09:28,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:09:28,275.275 INFO    ] Checking for system updates...
[2026-06-19 02:09:28,313.313 INFO    ] 200
[2026-06-19 02:09:28,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:28,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:09:28,372.372 INFO    ] No update needed
[2026-06-19 02:09:28,374.374 INFO    ] Checking for camera pi updates...
[2026-06-19 02:09:28,409.409 INFO    ] 200
[2026-06-19 02:09:28,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:28,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:09:28,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:09:28,499.499 INFO    ] No camera update needed
[2026-06-19 02:09:28,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:09:28,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:09:28,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:09:28,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:09:30,559.559 INFO    ] ================================================
[2026-06-19 02:09:30,574.574 INFO    ] Launching Daemon at Fri Jun 19 02:09:30 IST 2026
[2026-06-19 02:09:30,585.585 INFO    ] ================================================
[2026-06-19 02:09:31,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:09:31
[2026-06-19 02:09:31,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:09:32,082.082 INFO    ] Initializing speech engine...
[2026-06-19 02:09:32,092.092 INFO    ] 2026-06-19 02:09:32
[2026-06-19 02:09:32,349.349 INFO    ] 2026-06-19 02:09:32
[2026-06-19 02:09:32,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:09:32,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:09:32,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:09:32,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:09:32,750.750 INFO    ] time= 19/06/2026 02:09:32
[2026-06-19 02:09:32,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:09:32,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:09:32,941.941 INFO    ] No existing commands found in stream
[2026-06-19 02:09:37,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:09:37,972.972 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 02:09:39,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:09:39,108.108 INFO    ] Checking for system updates...
[2026-06-19 02:09:39,144.144 INFO    ] 200
[2026-06-19 02:09:39,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:39,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:09:39,202.202 INFO    ] No update needed
[2026-06-19 02:09:39,204.204 INFO    ] Checking for camera pi updates...
[2026-06-19 02:09:39,238.238 INFO    ] 200
[2026-06-19 02:09:39,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:39,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:09:39,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:09:39,330.330 INFO    ] No camera update needed
[2026-06-19 02:09:39,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:09:39,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:09:39,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:09:39,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:09:41,386.386 INFO    ] ================================================
[2026-06-19 02:09:41,401.401 INFO    ] Launching Daemon at Fri Jun 19 02:09:41 IST 2026
[2026-06-19 02:09:41,413.413 INFO    ] ================================================
[2026-06-19 02:09:41,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:09:41
[2026-06-19 02:09:42,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:09:42,851.851 INFO    ] Initializing speech engine...
[2026-06-19 02:09:42,867.867 INFO    ] 2026-06-19 02:09:42
[2026-06-19 02:09:43,154.154 INFO    ] 2026-06-19 02:09:43
[2026-06-19 02:09:43,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:09:43,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:09:43,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:09:43,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:09:43,524.524 INFO    ] time= 19/06/2026 02:09:43
[2026-06-19 02:09:43,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:09:43,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:09:43,613.613 INFO    ] No existing commands found in stream
[2026-06-19 02:09:48,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:09:48,629.629 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 02:09:52,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:09:52,344.344 INFO    ] Checking for system updates...
[2026-06-19 02:09:52,380.380 INFO    ] 200
[2026-06-19 02:09:52,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:52,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:09:52,438.438 INFO    ] No update needed
[2026-06-19 02:09:52,441.441 INFO    ] Checking for camera pi updates...
[2026-06-19 02:09:52,478.478 INFO    ] 200
[2026-06-19 02:09:52,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:09:52,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:09:52,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:09:52,573.573 INFO    ] No camera update needed
[2026-06-19 02:09:52,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:09:52,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:09:52,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:09:52,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:09:54,635.635 INFO    ] ================================================
[2026-06-19 02:09:54,653.653 INFO    ] Launching Daemon at Fri Jun 19 02:09:54 IST 2026
[2026-06-19 02:09:54,665.665 INFO    ] ================================================
[2026-06-19 02:09:55,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:09:55
[2026-06-19 02:09:55,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:09:56,148.148 INFO    ] Initializing speech engine...
[2026-06-19 02:09:56,169.169 INFO    ] 2026-06-19 02:09:56
[2026-06-19 02:09:56,453.453 INFO    ] 2026-06-19 02:09:56
[2026-06-19 02:09:56,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:09:56,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:09:56,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:09:56,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:09:56,850.850 INFO    ] time= 19/06/2026 02:09:56
[2026-06-19 02:09:56,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:09:56,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:09:56,983.983 INFO    ] No existing commands found in stream
[2026-06-19 02:10:01,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:10:02,007.007 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 02:10:08,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:10:08,302.302 INFO    ] Checking for system updates...
[2026-06-19 02:10:08,338.338 INFO    ] 200
[2026-06-19 02:10:08,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:08,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:10:08,402.402 INFO    ] No update needed
[2026-06-19 02:10:08,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 02:10:08,443.443 INFO    ] 200
[2026-06-19 02:10:08,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:08,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:10:08,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:10:08,539.539 INFO    ] No camera update needed
[2026-06-19 02:10:08,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:10:08,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:10:08,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:10:08,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:10:10,601.601 INFO    ] ================================================
[2026-06-19 02:10:10,617.617 INFO    ] Launching Daemon at Fri Jun 19 02:10:10 IST 2026
[2026-06-19 02:10:10,628.628 INFO    ] ================================================
[2026-06-19 02:10:11,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:10:11
[2026-06-19 02:10:11,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:10:12,096.096 INFO    ] Initializing speech engine...
[2026-06-19 02:10:12,103.103 INFO    ] 2026-06-19 02:10:12
[2026-06-19 02:10:12,363.363 INFO    ] 2026-06-19 02:10:12
[2026-06-19 02:10:12,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:10:12,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:10:12,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:10:12,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:10:12,799.799 INFO    ] time= 19/06/2026 02:10:12
[2026-06-19 02:10:12,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:10:12,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:10:12,973.973 INFO    ] No existing commands found in stream
[2026-06-19 02:10:17,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:10:17,988.988 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 02:10:19,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:10:19,525.525 INFO    ] Checking for system updates...
[2026-06-19 02:10:19,561.561 INFO    ] 200
[2026-06-19 02:10:19,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:19,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:10:19,620.620 INFO    ] No update needed
[2026-06-19 02:10:19,622.622 INFO    ] Checking for camera pi updates...
[2026-06-19 02:10:19,661.661 INFO    ] 200
[2026-06-19 02:10:19,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:19,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:10:19,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:10:19,755.755 INFO    ] No camera update needed
[2026-06-19 02:10:19,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:10:19,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:10:19,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:10:19,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:10:21,814.814 INFO    ] ================================================
[2026-06-19 02:10:21,829.829 INFO    ] Launching Daemon at Fri Jun 19 02:10:21 IST 2026
[2026-06-19 02:10:21,840.840 INFO    ] ================================================
[2026-06-19 02:10:22,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:10:22
[2026-06-19 02:10:23,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:10:23,298.298 INFO    ] Initializing speech engine...
[2026-06-19 02:10:23,311.311 INFO    ] 2026-06-19 02:10:23
[2026-06-19 02:10:23,599.599 INFO    ] 2026-06-19 02:10:23
[2026-06-19 02:10:23,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:10:23,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:10:23,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:10:23,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:10:23,985.985 INFO    ] time= 19/06/2026 02:10:23
[2026-06-19 02:10:24,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:10:24,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:10:24,114.114 INFO    ] No existing commands found in stream
[2026-06-19 02:10:29,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:10:29,129.129 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 02:10:30,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:10:30,759.759 INFO    ] Checking for system updates...
[2026-06-19 02:10:30,794.794 INFO    ] 200
[2026-06-19 02:10:30,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:30,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:10:30,852.852 INFO    ] No update needed
[2026-06-19 02:10:30,854.854 INFO    ] Checking for camera pi updates...
[2026-06-19 02:10:30,892.892 INFO    ] 200
[2026-06-19 02:10:30,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:30,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:10:30,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:10:30,990.990 INFO    ] No camera update needed
[2026-06-19 02:10:30,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:10:30,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:10:31,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:10:31,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:10:33,047.047 INFO    ] ================================================
[2026-06-19 02:10:33,063.063 INFO    ] Launching Daemon at Fri Jun 19 02:10:33 IST 2026
[2026-06-19 02:10:33,073.073 INFO    ] ================================================
[2026-06-19 02:10:33,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:10:33
[2026-06-19 02:10:34,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:10:34,746.746 INFO    ] Initializing speech engine...
[2026-06-19 02:10:34,761.761 INFO    ] 2026-06-19 02:10:34
[2026-06-19 02:10:35,048.048 INFO    ] 2026-06-19 02:10:35
[2026-06-19 02:10:35,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:10:35,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:10:35,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:10:35,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:10:35,547.547 INFO    ] time= 19/06/2026 02:10:35
[2026-06-19 02:10:35,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:10:35,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:10:35,661.661 INFO    ] No existing commands found in stream
[2026-06-19 02:10:40,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:10:40,677.677 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 02:10:42,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:10:42,725.725 INFO    ] Checking for system updates...
[2026-06-19 02:10:42,763.763 INFO    ] 200
[2026-06-19 02:10:42,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:42,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:10:42,823.823 INFO    ] No update needed
[2026-06-19 02:10:42,826.826 INFO    ] Checking for camera pi updates...
[2026-06-19 02:10:42,860.860 INFO    ] 200
[2026-06-19 02:10:42,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:42,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:10:43,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:10:43,058.058 INFO    ] No camera update needed
[2026-06-19 02:10:43,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:10:43,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:10:43,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:10:43,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:10:45,112.112 INFO    ] ================================================
[2026-06-19 02:10:45,128.128 INFO    ] Launching Daemon at Fri Jun 19 02:10:45 IST 2026
[2026-06-19 02:10:45,139.139 INFO    ] ================================================
[2026-06-19 02:10:45,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:10:45
[2026-06-19 02:10:46,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:10:46,566.566 INFO    ] Initializing speech engine...
[2026-06-19 02:10:46,585.585 INFO    ] 2026-06-19 02:10:46
[2026-06-19 02:10:46,834.834 INFO    ] 2026-06-19 02:10:46
[2026-06-19 02:10:46,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:10:47,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:10:47,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:10:47,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:10:47,213.213 INFO    ] time= 19/06/2026 02:10:47
[2026-06-19 02:10:47,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:10:47,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:10:47,375.375 INFO    ] No existing commands found in stream
[2026-06-19 02:10:52,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:10:52,408.408 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 02:10:53,762.762 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:10:53,766.766 INFO    ] Checking for system updates...
[2026-06-19 02:10:53,807.807 INFO    ] 200
[2026-06-19 02:10:53,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:53,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:10:53,871.871 INFO    ] No update needed
[2026-06-19 02:10:53,874.874 INFO    ] Checking for camera pi updates...
[2026-06-19 02:10:53,912.912 INFO    ] 200
[2026-06-19 02:10:53,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:10:53,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:10:54,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:10:54,023.023 INFO    ] No camera update needed
[2026-06-19 02:10:54,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:10:54,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:10:54,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:10:54,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:10:56,086.086 INFO    ] ================================================
[2026-06-19 02:10:56,101.101 INFO    ] Launching Daemon at Fri Jun 19 02:10:56 IST 2026
[2026-06-19 02:10:56,113.113 INFO    ] ================================================
[2026-06-19 02:10:56,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:10:56
[2026-06-19 02:10:57,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:10:57,768.768 INFO    ] Initializing speech engine...
[2026-06-19 02:10:57,777.777 INFO    ] 2026-06-19 02:10:57
[2026-06-19 02:10:58,049.049 INFO    ] 2026-06-19 02:10:58
[2026-06-19 02:10:58,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:10:58,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:10:58,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:10:58,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:10:58,530.530 INFO    ] time= 19/06/2026 02:10:58
[2026-06-19 02:10:58,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:10:58,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:10:58,684.684 INFO    ] No existing commands found in stream
[2026-06-19 02:11:03,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:11:03,701.701 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 02:11:06,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:11:06,564.564 INFO    ] Checking for system updates...
[2026-06-19 02:11:06,602.602 INFO    ] 200
[2026-06-19 02:11:06,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:06,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:11:06,661.661 INFO    ] No update needed
[2026-06-19 02:11:06,664.664 INFO    ] Checking for camera pi updates...
[2026-06-19 02:11:06,711.711 INFO    ] 200
[2026-06-19 02:11:06,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:06,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:11:06,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:11:06,827.827 INFO    ] No camera update needed
[2026-06-19 02:11:06,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:11:06,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:11:06,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:11:06,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:11:08,883.883 INFO    ] ================================================
[2026-06-19 02:11:08,899.899 INFO    ] Launching Daemon at Fri Jun 19 02:11:08 IST 2026
[2026-06-19 02:11:08,910.910 INFO    ] ================================================
[2026-06-19 02:11:09,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:11:09
[2026-06-19 02:11:10,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:11:10,358.358 INFO    ] Initializing speech engine...
[2026-06-19 02:11:10,367.367 INFO    ] 2026-06-19 02:11:10
[2026-06-19 02:11:10,615.615 INFO    ] 2026-06-19 02:11:10
[2026-06-19 02:11:10,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:11:10,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:11:10,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:11:11,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:11:11,086.086 INFO    ] time= 19/06/2026 02:11:11
[2026-06-19 02:11:11,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:11:11,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:11:11,242.242 INFO    ] No existing commands found in stream
[2026-06-19 02:11:16,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:11:16,257.257 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 02:11:16,941.941 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:11:16,943.943 INFO    ] Checking for system updates...
[2026-06-19 02:11:16,980.980 INFO    ] 200
[2026-06-19 02:11:16,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:17,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:11:17,038.038 INFO    ] No update needed
[2026-06-19 02:11:17,040.040 INFO    ] Checking for camera pi updates...
[2026-06-19 02:11:17,074.074 INFO    ] 200
[2026-06-19 02:11:17,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:17,122.122 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:11:17,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:11:17,173.173 INFO    ] No camera update needed
[2026-06-19 02:11:17,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:11:17,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:11:17,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:11:17,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:11:19,229.229 INFO    ] ================================================
[2026-06-19 02:11:19,244.244 INFO    ] Launching Daemon at Fri Jun 19 02:11:19 IST 2026
[2026-06-19 02:11:19,255.255 INFO    ] ================================================
[2026-06-19 02:11:19,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:11:19
[2026-06-19 02:11:20,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:11:20,795.795 INFO    ] Initializing speech engine...
[2026-06-19 02:11:20,808.808 INFO    ] 2026-06-19 02:11:20
[2026-06-19 02:11:21,073.073 INFO    ] 2026-06-19 02:11:21
[2026-06-19 02:11:21,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:11:21,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:11:21,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:11:21,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:11:21,552.552 INFO    ] time= 19/06/2026 02:11:21
[2026-06-19 02:11:21,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:11:21,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:11:21,700.700 INFO    ] No existing commands found in stream
[2026-06-19 02:11:26,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:11:26,716.716 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 02:11:28,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:11:28,004.004 INFO    ] Checking for system updates...
[2026-06-19 02:11:28,040.040 INFO    ] 200
[2026-06-19 02:11:28,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:28,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:11:28,097.097 INFO    ] No update needed
[2026-06-19 02:11:28,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 02:11:28,137.137 INFO    ] 200
[2026-06-19 02:11:28,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:28,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:11:28,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:11:28,235.235 INFO    ] No camera update needed
[2026-06-19 02:11:28,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:11:28,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:11:28,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:11:28,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:11:30,289.289 INFO    ] ================================================
[2026-06-19 02:11:30,304.304 INFO    ] Launching Daemon at Fri Jun 19 02:11:30 IST 2026
[2026-06-19 02:11:30,315.315 INFO    ] ================================================
[2026-06-19 02:11:30,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:11:30
[2026-06-19 02:11:31,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:11:31,931.931 INFO    ] Initializing speech engine...
[2026-06-19 02:11:31,939.939 INFO    ] 2026-06-19 02:11:31
[2026-06-19 02:11:32,256.256 INFO    ] 2026-06-19 02:11:32
[2026-06-19 02:11:32,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:11:32,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:11:32,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:11:32,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:11:32,867.867 INFO    ] time= 19/06/2026 02:11:32
[2026-06-19 02:11:32,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:11:32,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:11:33,080.080 INFO    ] No existing commands found in stream
[2026-06-19 02:11:38,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:11:38,098.098 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 02:11:41,364.364 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:11:41,367.367 INFO    ] Checking for system updates...
[2026-06-19 02:11:41,405.405 INFO    ] 200
[2026-06-19 02:11:41,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:41,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:11:41,464.464 INFO    ] No update needed
[2026-06-19 02:11:41,466.466 INFO    ] Checking for camera pi updates...
[2026-06-19 02:11:41,504.504 INFO    ] 200
[2026-06-19 02:11:41,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:41,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:11:41,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:11:41,602.602 INFO    ] No camera update needed
[2026-06-19 02:11:41,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:11:41,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:11:41,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:11:41,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:11:43,659.659 INFO    ] ================================================
[2026-06-19 02:11:43,674.674 INFO    ] Launching Daemon at Fri Jun 19 02:11:43 IST 2026
[2026-06-19 02:11:43,685.685 INFO    ] ================================================
[2026-06-19 02:11:44,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:11:44
[2026-06-19 02:11:44,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:11:45,108.108 INFO    ] Initializing speech engine...
[2026-06-19 02:11:45,119.119 INFO    ] 2026-06-19 02:11:45
[2026-06-19 02:11:45,391.391 INFO    ] 2026-06-19 02:11:45
[2026-06-19 02:11:45,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:11:45,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:11:45,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:11:45,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:11:45,848.848 INFO    ] time= 19/06/2026 02:11:45
[2026-06-19 02:11:45,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:11:45,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:11:46,020.020 INFO    ] No existing commands found in stream
[2026-06-19 02:11:51,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:11:51,037.037 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 02:11:54,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:11:54,106.106 INFO    ] Checking for system updates...
[2026-06-19 02:11:54,147.147 INFO    ] 200
[2026-06-19 02:11:54,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:54,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:11:54,210.210 INFO    ] No update needed
[2026-06-19 02:11:54,213.213 INFO    ] Checking for camera pi updates...
[2026-06-19 02:11:54,248.248 INFO    ] 200
[2026-06-19 02:11:54,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:11:54,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:11:54,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:11:54,342.342 INFO    ] No camera update needed
[2026-06-19 02:11:54,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:11:54,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:11:54,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:11:54,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:11:56,400.400 INFO    ] ================================================
[2026-06-19 02:11:56,415.415 INFO    ] Launching Daemon at Fri Jun 19 02:11:56 IST 2026
[2026-06-19 02:11:56,426.426 INFO    ] ================================================
[2026-06-19 02:11:56,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:11:56
[2026-06-19 02:11:57,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:11:57,838.838 INFO    ] Initializing speech engine...
[2026-06-19 02:11:57,852.852 INFO    ] 2026-06-19 02:11:57
[2026-06-19 02:11:58,107.107 INFO    ] 2026-06-19 02:11:58
[2026-06-19 02:11:58,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:11:58,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:11:58,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:11:58,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:11:58,571.571 INFO    ] time= 19/06/2026 02:11:58
[2026-06-19 02:11:58,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:11:58,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:11:58,732.732 INFO    ] No existing commands found in stream
[2026-06-19 02:12:03,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:12:03,747.747 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 02:12:06,262.262 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:12:06,264.264 INFO    ] Checking for system updates...
[2026-06-19 02:12:06,300.300 INFO    ] 200
[2026-06-19 02:12:06,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:06,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:12:06,365.365 INFO    ] No update needed
[2026-06-19 02:12:06,367.367 INFO    ] Checking for camera pi updates...
[2026-06-19 02:12:06,404.404 INFO    ] 200
[2026-06-19 02:12:06,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:06,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:12:06,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:12:06,504.504 INFO    ] No camera update needed
[2026-06-19 02:12:06,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:12:06,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:12:06,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:12:06,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:12:08,564.564 INFO    ] ================================================
[2026-06-19 02:12:08,579.579 INFO    ] Launching Daemon at Fri Jun 19 02:12:08 IST 2026
[2026-06-19 02:12:08,590.590 INFO    ] ================================================
[2026-06-19 02:12:09,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:12:09
[2026-06-19 02:12:09,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:12:10,023.023 INFO    ] Initializing speech engine...
[2026-06-19 02:12:10,033.033 INFO    ] 2026-06-19 02:12:10
[2026-06-19 02:12:10,294.294 INFO    ] 2026-06-19 02:12:10
[2026-06-19 02:12:10,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:12:10,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:12:10,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:12:10,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:12:10,784.784 INFO    ] time= 19/06/2026 02:12:10
[2026-06-19 02:12:10,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:12:10,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:12:10,914.914 INFO    ] No existing commands found in stream
[2026-06-19 02:12:15,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:12:15,928.928 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 02:12:18,146.146 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:12:18,149.149 INFO    ] Checking for system updates...
[2026-06-19 02:12:18,186.186 INFO    ] 200
[2026-06-19 02:12:18,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:18,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:12:18,252.252 INFO    ] No update needed
[2026-06-19 02:12:18,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 02:12:18,295.295 INFO    ] 200
[2026-06-19 02:12:18,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:18,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:12:18,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:12:18,391.391 INFO    ] No camera update needed
[2026-06-19 02:12:18,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:12:18,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:12:18,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:12:18,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:12:20,454.454 INFO    ] ================================================
[2026-06-19 02:12:20,476.476 INFO    ] Launching Daemon at Fri Jun 19 02:12:20 IST 2026
[2026-06-19 02:12:20,489.489 INFO    ] ================================================
[2026-06-19 02:12:21,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:12:21
[2026-06-19 02:12:21,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:12:21,982.982 INFO    ] Initializing speech engine...
[2026-06-19 02:12:21,991.991 INFO    ] 2026-06-19 02:12:21
[2026-06-19 02:12:22,258.258 INFO    ] 2026-06-19 02:12:22
[2026-06-19 02:12:22,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:12:22,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:12:22,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:12:22,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:12:22,636.636 INFO    ] time= 19/06/2026 02:12:22
[2026-06-19 02:12:22,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:12:22,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:12:22,760.760 INFO    ] No existing commands found in stream
[2026-06-19 02:12:27,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:12:27,777.777 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 02:12:28,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:12:28,421.421 INFO    ] Checking for system updates...
[2026-06-19 02:12:28,457.457 INFO    ] 200
[2026-06-19 02:12:28,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:28,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:12:28,525.525 INFO    ] No update needed
[2026-06-19 02:12:28,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 02:12:28,562.562 INFO    ] 200
[2026-06-19 02:12:28,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:28,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:12:28,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:12:28,662.662 INFO    ] No camera update needed
[2026-06-19 02:12:28,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:12:28,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:12:28,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:12:28,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:12:30,721.721 INFO    ] ================================================
[2026-06-19 02:12:30,736.736 INFO    ] Launching Daemon at Fri Jun 19 02:12:30 IST 2026
[2026-06-19 02:12:30,747.747 INFO    ] ================================================
[2026-06-19 02:12:31,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:12:31
[2026-06-19 02:12:31,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:12:32,205.205 INFO    ] Initializing speech engine...
[2026-06-19 02:12:32,212.212 INFO    ] 2026-06-19 02:12:32
[2026-06-19 02:12:32,537.537 INFO    ] 2026-06-19 02:12:32
[2026-06-19 02:12:32,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:12:32,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:12:32,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:12:32,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:12:32,983.983 INFO    ] time= 19/06/2026 02:12:32
[2026-06-19 02:12:32,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:12:33,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:12:33,174.174 INFO    ] No existing commands found in stream
[2026-06-19 02:12:38,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:12:38,208.208 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 02:12:41,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:12:41,953.953 INFO    ] Checking for system updates...
[2026-06-19 02:12:41,993.993 INFO    ] 200
[2026-06-19 02:12:41,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:42,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:12:42,057.057 INFO    ] No update needed
[2026-06-19 02:12:42,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 02:12:42,097.097 INFO    ] 200
[2026-06-19 02:12:42,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:42,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:12:42,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:12:42,187.187 INFO    ] No camera update needed
[2026-06-19 02:12:42,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:12:42,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:12:42,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:12:42,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:12:44,243.243 INFO    ] ================================================
[2026-06-19 02:12:44,259.259 INFO    ] Launching Daemon at Fri Jun 19 02:12:44 IST 2026
[2026-06-19 02:12:44,270.270 INFO    ] ================================================
[2026-06-19 02:12:44,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:12:44
[2026-06-19 02:12:45,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:12:45,681.681 INFO    ] Initializing speech engine...
[2026-06-19 02:12:45,704.704 INFO    ] 2026-06-19 02:12:45
[2026-06-19 02:12:45,960.960 INFO    ] 2026-06-19 02:12:45
[2026-06-19 02:12:45,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:12:46,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:12:46,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:12:46,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:12:46,437.437 INFO    ] time= 19/06/2026 02:12:46
[2026-06-19 02:12:46,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:12:46,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:12:46,593.593 INFO    ] No existing commands found in stream
[2026-06-19 02:12:51,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:12:51,607.607 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 02:12:55,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:12:55,766.766 INFO    ] Checking for system updates...
[2026-06-19 02:12:55,802.802 INFO    ] 200
[2026-06-19 02:12:55,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:55,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:12:55,861.861 INFO    ] No update needed
[2026-06-19 02:12:55,863.863 INFO    ] Checking for camera pi updates...
[2026-06-19 02:12:55,898.898 INFO    ] 200
[2026-06-19 02:12:55,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:12:55,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:12:56,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:12:56,090.090 INFO    ] No camera update needed
[2026-06-19 02:12:56,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:12:56,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:12:56,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:12:56,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:12:58,145.145 INFO    ] ================================================
[2026-06-19 02:12:58,160.160 INFO    ] Launching Daemon at Fri Jun 19 02:12:58 IST 2026
[2026-06-19 02:12:58,171.171 INFO    ] ================================================
[2026-06-19 02:12:58,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:12:58
[2026-06-19 02:12:59,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:12:59,831.831 INFO    ] Initializing speech engine...
[2026-06-19 02:12:59,845.845 INFO    ] 2026-06-19 02:12:59
[2026-06-19 02:13:00,155.155 INFO    ] 2026-06-19 02:13:00
[2026-06-19 02:13:00,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:13:00,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:13:00,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:13:00,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:13:00,671.671 INFO    ] time= 19/06/2026 02:13:00
[2026-06-19 02:13:00,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:13:00,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:13:00,831.831 INFO    ] No existing commands found in stream
[2026-06-19 02:13:05,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:13:05,850.850 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 02:13:09,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:13:09,960.960 INFO    ] Checking for system updates...
[2026-06-19 02:13:10,006.006 INFO    ] 200
[2026-06-19 02:13:10,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:10,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:13:10,064.064 INFO    ] No update needed
[2026-06-19 02:13:10,066.066 INFO    ] Checking for camera pi updates...
[2026-06-19 02:13:10,101.101 INFO    ] 200
[2026-06-19 02:13:10,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:10,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:13:10,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:13:10,195.195 INFO    ] No camera update needed
[2026-06-19 02:13:10,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:13:10,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:13:10,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:13:10,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:13:12,250.250 INFO    ] ================================================
[2026-06-19 02:13:12,265.265 INFO    ] Launching Daemon at Fri Jun 19 02:13:12 IST 2026
[2026-06-19 02:13:12,276.276 INFO    ] ================================================
[2026-06-19 02:13:12,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:13:12
[2026-06-19 02:13:13,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:13:13,680.680 INFO    ] Initializing speech engine...
[2026-06-19 02:13:13,693.693 INFO    ] 2026-06-19 02:13:13
[2026-06-19 02:13:13,959.959 INFO    ] 2026-06-19 02:13:13
[2026-06-19 02:13:13,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:13:14,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:13:14,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:13:14,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:13:14,465.465 INFO    ] time= 19/06/2026 02:13:14
[2026-06-19 02:13:14,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:13:14,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:13:14,654.654 INFO    ] No existing commands found in stream
[2026-06-19 02:13:19,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:13:19,688.688 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 02:13:21,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:13:21,156.156 INFO    ] Checking for system updates...
[2026-06-19 02:13:21,196.196 INFO    ] 200
[2026-06-19 02:13:21,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:21,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:13:21,268.268 INFO    ] No update needed
[2026-06-19 02:13:21,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 02:13:21,305.305 INFO    ] 200
[2026-06-19 02:13:21,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:21,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:13:21,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:13:21,396.396 INFO    ] No camera update needed
[2026-06-19 02:13:21,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:13:21,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:13:21,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:13:21,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:13:23,452.452 INFO    ] ================================================
[2026-06-19 02:13:23,468.468 INFO    ] Launching Daemon at Fri Jun 19 02:13:23 IST 2026
[2026-06-19 02:13:23,479.479 INFO    ] ================================================
[2026-06-19 02:13:24,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:13:24
[2026-06-19 02:13:24,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:13:24,937.937 INFO    ] Initializing speech engine...
[2026-06-19 02:13:24,946.946 INFO    ] 2026-06-19 02:13:24
[2026-06-19 02:13:25,204.204 INFO    ] 2026-06-19 02:13:25
[2026-06-19 02:13:25,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:13:25,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:13:25,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:13:25,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:13:25,679.679 INFO    ] time= 19/06/2026 02:13:25
[2026-06-19 02:13:25,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:13:25,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:13:25,822.822 INFO    ] No existing commands found in stream
[2026-06-19 02:13:30,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:13:30,838.838 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 02:13:34,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:13:34,813.813 INFO    ] Checking for system updates...
[2026-06-19 02:13:34,850.850 INFO    ] 200
[2026-06-19 02:13:34,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:34,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:13:34,912.912 INFO    ] No update needed
[2026-06-19 02:13:34,915.915 INFO    ] Checking for camera pi updates...
[2026-06-19 02:13:34,953.953 INFO    ] 200
[2026-06-19 02:13:34,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:34,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:13:35,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:13:35,042.042 INFO    ] No camera update needed
[2026-06-19 02:13:35,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:13:35,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:13:35,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:13:35,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:13:37,097.097 INFO    ] ================================================
[2026-06-19 02:13:37,112.112 INFO    ] Launching Daemon at Fri Jun 19 02:13:37 IST 2026
[2026-06-19 02:13:37,124.124 INFO    ] ================================================
[2026-06-19 02:13:37,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:13:37
[2026-06-19 02:13:38,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:13:38,525.525 INFO    ] Initializing speech engine...
[2026-06-19 02:13:38,547.547 INFO    ] 2026-06-19 02:13:38
[2026-06-19 02:13:38,800.800 INFO    ] 2026-06-19 02:13:38
[2026-06-19 02:13:38,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:13:39,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:13:39,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:13:39,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:13:39,171.171 INFO    ] time= 19/06/2026 02:13:39
[2026-06-19 02:13:39,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:13:39,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:13:39,332.332 INFO    ] No existing commands found in stream
[2026-06-19 02:13:44,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:13:44,370.370 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 02:13:44,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:13:44,806.806 INFO    ] Checking for system updates...
[2026-06-19 02:13:44,843.843 INFO    ] 200
[2026-06-19 02:13:44,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:44,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:13:44,915.915 INFO    ] No update needed
[2026-06-19 02:13:44,918.918 INFO    ] Checking for camera pi updates...
[2026-06-19 02:13:44,953.953 INFO    ] 200
[2026-06-19 02:13:44,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:44,998.998 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:13:45,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:13:45,035.035 INFO    ] No camera update needed
[2026-06-19 02:13:45,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:13:45,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:13:45,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:13:45,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:13:47,095.095 INFO    ] ================================================
[2026-06-19 02:13:47,110.110 INFO    ] Launching Daemon at Fri Jun 19 02:13:47 IST 2026
[2026-06-19 02:13:47,121.121 INFO    ] ================================================
[2026-06-19 02:13:47,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:13:47
[2026-06-19 02:13:48,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:13:48,589.589 INFO    ] Initializing speech engine...
[2026-06-19 02:13:48,599.599 INFO    ] 2026-06-19 02:13:48
[2026-06-19 02:13:48,857.857 INFO    ] 2026-06-19 02:13:48
[2026-06-19 02:13:48,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:13:49,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:13:49,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:13:49,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:13:49,262.262 INFO    ] time= 19/06/2026 02:13:49
[2026-06-19 02:13:49,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:13:49,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:13:49,413.413 INFO    ] No existing commands found in stream
[2026-06-19 02:13:54,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:13:54,441.441 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 02:13:55,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:13:55,284.284 INFO    ] Checking for system updates...
[2026-06-19 02:13:55,326.326 INFO    ] 200
[2026-06-19 02:13:55,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:55,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:13:55,393.393 INFO    ] No update needed
[2026-06-19 02:13:55,396.396 INFO    ] Checking for camera pi updates...
[2026-06-19 02:13:55,435.435 INFO    ] 200
[2026-06-19 02:13:55,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:13:55,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:13:55,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:13:55,539.539 INFO    ] No camera update needed
[2026-06-19 02:13:55,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:13:55,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:13:55,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:13:55,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:13:57,595.595 INFO    ] ================================================
[2026-06-19 02:13:57,610.610 INFO    ] Launching Daemon at Fri Jun 19 02:13:57 IST 2026
[2026-06-19 02:13:57,620.620 INFO    ] ================================================
[2026-06-19 02:13:58,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:13:58
[2026-06-19 02:13:58,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:13:59,039.039 INFO    ] Initializing speech engine...
[2026-06-19 02:13:59,045.045 INFO    ] 2026-06-19 02:13:59
[2026-06-19 02:13:59,289.289 INFO    ] 2026-06-19 02:13:59
[2026-06-19 02:13:59,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:13:59,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:13:59,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:13:59,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:13:59,758.758 INFO    ] time= 19/06/2026 02:13:59
[2026-06-19 02:13:59,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:13:59,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:13:59,907.907 INFO    ] No existing commands found in stream
[2026-06-19 02:14:04,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:14:04,921.921 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 02:14:06,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:14:06,020.020 INFO    ] Checking for system updates...
[2026-06-19 02:14:06,056.056 INFO    ] 200
[2026-06-19 02:14:06,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:06,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:14:06,120.120 INFO    ] No update needed
[2026-06-19 02:14:06,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 02:14:06,156.156 INFO    ] 200
[2026-06-19 02:14:06,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:06,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:14:06,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:14:06,248.248 INFO    ] No camera update needed
[2026-06-19 02:14:06,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:14:06,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:14:06,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:14:06,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:14:08,303.303 INFO    ] ================================================
[2026-06-19 02:14:08,318.318 INFO    ] Launching Daemon at Fri Jun 19 02:14:08 IST 2026
[2026-06-19 02:14:08,329.329 INFO    ] ================================================
[2026-06-19 02:14:08,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:14:08
[2026-06-19 02:14:09,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:14:09,780.780 INFO    ] Initializing speech engine...
[2026-06-19 02:14:09,787.787 INFO    ] 2026-06-19 02:14:09
[2026-06-19 02:14:10,086.086 INFO    ] 2026-06-19 02:14:10
[2026-06-19 02:14:10,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:14:10,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:14:10,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:14:10,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:14:10,509.509 INFO    ] time= 19/06/2026 02:14:10
[2026-06-19 02:14:10,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:14:10,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:14:10,600.600 INFO    ] No existing commands found in stream
[2026-06-19 02:14:15,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:14:15,616.616 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 02:14:17,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:14:17,871.871 INFO    ] Checking for system updates...
[2026-06-19 02:14:17,908.908 INFO    ] 200
[2026-06-19 02:14:17,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:17,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:14:17,966.966 INFO    ] No update needed
[2026-06-19 02:14:17,968.968 INFO    ] Checking for camera pi updates...
[2026-06-19 02:14:18,003.003 INFO    ] 200
[2026-06-19 02:14:18,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:18,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:14:18,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:14:18,103.103 INFO    ] No camera update needed
[2026-06-19 02:14:18,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:14:18,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:14:18,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:14:18,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:14:20,159.159 INFO    ] ================================================
[2026-06-19 02:14:20,175.175 INFO    ] Launching Daemon at Fri Jun 19 02:14:20 IST 2026
[2026-06-19 02:14:20,187.187 INFO    ] ================================================
[2026-06-19 02:14:20,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:14:20
[2026-06-19 02:14:21,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:14:21,629.629 INFO    ] Initializing speech engine...
[2026-06-19 02:14:21,638.638 INFO    ] 2026-06-19 02:14:21
[2026-06-19 02:14:21,885.885 INFO    ] 2026-06-19 02:14:21
[2026-06-19 02:14:21,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:14:22,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:14:22,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:14:22,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:14:22,332.332 INFO    ] time= 19/06/2026 02:14:22
[2026-06-19 02:14:22,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:14:22,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:14:22,505.505 INFO    ] No existing commands found in stream
[2026-06-19 02:14:27,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:14:27,519.519 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 02:14:31,163.163 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:14:31,165.165 INFO    ] Checking for system updates...
[2026-06-19 02:14:31,201.201 INFO    ] 200
[2026-06-19 02:14:31,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:31,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:14:31,267.267 INFO    ] No update needed
[2026-06-19 02:14:31,269.269 INFO    ] Checking for camera pi updates...
[2026-06-19 02:14:31,303.303 INFO    ] 200
[2026-06-19 02:14:31,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:31,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:14:31,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:14:31,419.419 INFO    ] No camera update needed
[2026-06-19 02:14:31,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:14:31,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:14:31,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:14:31,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:14:33,482.482 INFO    ] ================================================
[2026-06-19 02:14:33,498.498 INFO    ] Launching Daemon at Fri Jun 19 02:14:33 IST 2026
[2026-06-19 02:14:33,509.509 INFO    ] ================================================
[2026-06-19 02:14:34,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:14:34
[2026-06-19 02:14:34,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:14:34,964.964 INFO    ] Initializing speech engine...
[2026-06-19 02:14:34,974.974 INFO    ] 2026-06-19 02:14:34
[2026-06-19 02:14:35,230.230 INFO    ] 2026-06-19 02:14:35
[2026-06-19 02:14:35,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:14:35,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:14:35,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:14:35,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:14:35,590.590 INFO    ] time= 19/06/2026 02:14:35
[2026-06-19 02:14:35,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:14:35,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:14:35,772.772 INFO    ] No existing commands found in stream
[2026-06-19 02:14:40,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:14:40,796.796 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 02:14:43,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:14:43,419.419 INFO    ] Checking for system updates...
[2026-06-19 02:14:43,460.460 INFO    ] 200
[2026-06-19 02:14:43,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:43,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:14:43,518.518 INFO    ] No update needed
[2026-06-19 02:14:43,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 02:14:43,559.559 INFO    ] 200
[2026-06-19 02:14:43,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:43,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:14:43,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:14:43,650.650 INFO    ] No camera update needed
[2026-06-19 02:14:43,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:14:43,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:14:43,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:14:43,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:14:45,707.707 INFO    ] ================================================
[2026-06-19 02:14:45,723.723 INFO    ] Launching Daemon at Fri Jun 19 02:14:45 IST 2026
[2026-06-19 02:14:45,733.733 INFO    ] ================================================
[2026-06-19 02:14:46,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:14:46
[2026-06-19 02:14:46,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:14:47,139.139 INFO    ] Initializing speech engine...
[2026-06-19 02:14:47,147.147 INFO    ] 2026-06-19 02:14:47
[2026-06-19 02:14:47,421.421 INFO    ] 2026-06-19 02:14:47
[2026-06-19 02:14:47,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:14:47,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:14:47,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:14:47,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:14:47,803.803 INFO    ] time= 19/06/2026 02:14:47
[2026-06-19 02:14:47,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:14:47,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:14:47,977.977 INFO    ] No existing commands found in stream
[2026-06-19 02:14:53,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:14:53,010.010 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 02:14:56,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:14:56,502.502 INFO    ] Checking for system updates...
[2026-06-19 02:14:56,538.538 INFO    ] 200
[2026-06-19 02:14:56,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:56,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:14:56,597.597 INFO    ] No update needed
[2026-06-19 02:14:56,599.599 INFO    ] Checking for camera pi updates...
[2026-06-19 02:14:56,632.632 INFO    ] 200
[2026-06-19 02:14:56,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:14:56,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:14:56,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:14:56,722.722 INFO    ] No camera update needed
[2026-06-19 02:14:56,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:14:56,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:14:56,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:14:56,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:14:58,779.779 INFO    ] ================================================
[2026-06-19 02:14:58,793.793 INFO    ] Launching Daemon at Fri Jun 19 02:14:58 IST 2026
[2026-06-19 02:14:58,804.804 INFO    ] ================================================
[2026-06-19 02:14:59,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:14:59
[2026-06-19 02:15:00,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:15:00,464.464 INFO    ] Initializing speech engine...
[2026-06-19 02:15:00,471.471 INFO    ] 2026-06-19 02:15:00
[2026-06-19 02:15:00,782.782 INFO    ] 2026-06-19 02:15:00
[2026-06-19 02:15:00,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:15:01,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:15:01,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:15:01,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:15:01,289.289 INFO    ] time= 19/06/2026 02:15:01
[2026-06-19 02:15:01,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:15:01,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:15:01,427.427 INFO    ] No existing commands found in stream
[2026-06-19 02:15:06,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:15:06,458.458 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 02:15:08,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:15:08,230.230 INFO    ] Checking for system updates...
[2026-06-19 02:15:08,268.268 INFO    ] 200
[2026-06-19 02:15:08,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:08,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:15:08,329.329 INFO    ] No update needed
[2026-06-19 02:15:08,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 02:15:08,369.369 INFO    ] 200
[2026-06-19 02:15:08,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:08,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:15:08,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:15:08,459.459 INFO    ] No camera update needed
[2026-06-19 02:15:08,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:15:08,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:15:08,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:15:08,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:15:10,516.516 INFO    ] ================================================
[2026-06-19 02:15:10,531.531 INFO    ] Launching Daemon at Fri Jun 19 02:15:10 IST 2026
[2026-06-19 02:15:10,542.542 INFO    ] ================================================
[2026-06-19 02:15:11,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:15:11
[2026-06-19 02:15:11,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:15:11,991.991 INFO    ] Initializing speech engine...
[2026-06-19 02:15:12,000.000 INFO    ] 2026-06-19 02:15:11
[2026-06-19 02:15:12,292.292 INFO    ] 2026-06-19 02:15:12
[2026-06-19 02:15:12,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:15:12,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:15:12,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:15:12,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:15:12,784.784 INFO    ] time= 19/06/2026 02:15:12
[2026-06-19 02:15:12,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:15:12,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:15:12,983.983 INFO    ] No existing commands found in stream
[2026-06-19 02:15:18,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:15:18,017.017 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 02:15:20,313.313 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:15:20,317.317 INFO    ] Checking for system updates...
[2026-06-19 02:15:20,361.361 INFO    ] 200
[2026-06-19 02:15:20,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:20,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:15:20,419.419 INFO    ] No update needed
[2026-06-19 02:15:20,422.422 INFO    ] Checking for camera pi updates...
[2026-06-19 02:15:20,463.463 INFO    ] 200
[2026-06-19 02:15:20,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:20,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:15:20,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:15:20,554.554 INFO    ] No camera update needed
[2026-06-19 02:15:20,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:15:20,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:15:20,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:15:20,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:15:22,609.609 INFO    ] ================================================
[2026-06-19 02:15:22,624.624 INFO    ] Launching Daemon at Fri Jun 19 02:15:22 IST 2026
[2026-06-19 02:15:22,636.636 INFO    ] ================================================
[2026-06-19 02:15:23,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:15:23
[2026-06-19 02:15:23,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:15:24,070.070 INFO    ] Initializing speech engine...
[2026-06-19 02:15:24,080.080 INFO    ] 2026-06-19 02:15:24
[2026-06-19 02:15:24,325.325 INFO    ] 2026-06-19 02:15:24
[2026-06-19 02:15:24,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:15:24,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:15:24,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:15:24,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:15:24,794.794 INFO    ] time= 19/06/2026 02:15:24
[2026-06-19 02:15:24,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:15:24,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:15:24,943.943 INFO    ] No existing commands found in stream
[2026-06-19 02:15:29,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:15:29,958.958 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 02:15:33,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:15:33,950.950 INFO    ] Checking for system updates...
[2026-06-19 02:15:33,986.986 INFO    ] 200
[2026-06-19 02:15:33,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:34,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:15:34,053.053 INFO    ] No update needed
[2026-06-19 02:15:34,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 02:15:34,093.093 INFO    ] 200
[2026-06-19 02:15:34,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:34,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:15:34,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:15:34,193.193 INFO    ] No camera update needed
[2026-06-19 02:15:34,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:15:34,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:15:34,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:15:34,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:15:36,249.249 INFO    ] ================================================
[2026-06-19 02:15:36,265.265 INFO    ] Launching Daemon at Fri Jun 19 02:15:36 IST 2026
[2026-06-19 02:15:36,276.276 INFO    ] ================================================
[2026-06-19 02:15:36,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:15:36
[2026-06-19 02:15:37,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:15:37,738.738 INFO    ] Initializing speech engine...
[2026-06-19 02:15:37,747.747 INFO    ] 2026-06-19 02:15:37
[2026-06-19 02:15:38,047.047 INFO    ] 2026-06-19 02:15:38
[2026-06-19 02:15:38,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:15:38,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:15:38,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:15:38,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:15:38,434.434 INFO    ] time= 19/06/2026 02:15:38
[2026-06-19 02:15:38,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:15:38,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:15:38,561.561 INFO    ] No existing commands found in stream
[2026-06-19 02:15:43,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:15:43,576.576 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 02:15:47,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:15:47,488.488 INFO    ] Checking for system updates...
[2026-06-19 02:15:47,525.525 INFO    ] 200
[2026-06-19 02:15:47,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:47,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:15:47,593.593 INFO    ] No update needed
[2026-06-19 02:15:47,596.596 INFO    ] Checking for camera pi updates...
[2026-06-19 02:15:47,635.635 INFO    ] 200
[2026-06-19 02:15:47,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:47,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:15:47,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:15:47,722.722 INFO    ] No camera update needed
[2026-06-19 02:15:47,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:15:47,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:15:47,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:15:47,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:15:49,781.781 INFO    ] ================================================
[2026-06-19 02:15:49,797.797 INFO    ] Launching Daemon at Fri Jun 19 02:15:49 IST 2026
[2026-06-19 02:15:49,809.809 INFO    ] ================================================
[2026-06-19 02:15:50,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:15:50
[2026-06-19 02:15:50,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:15:51,235.235 INFO    ] Initializing speech engine...
[2026-06-19 02:15:51,242.242 INFO    ] 2026-06-19 02:15:51
[2026-06-19 02:15:51,541.541 INFO    ] 2026-06-19 02:15:51
[2026-06-19 02:15:51,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:15:51,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:15:51,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:15:51,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:15:51,930.930 INFO    ] time= 19/06/2026 02:15:51
[2026-06-19 02:15:51,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:15:51,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:15:52,057.057 INFO    ] No existing commands found in stream
[2026-06-19 02:15:57,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:15:57,073.073 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 02:15:58,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:15:58,406.406 INFO    ] Checking for system updates...
[2026-06-19 02:15:58,447.447 INFO    ] 200
[2026-06-19 02:15:58,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:58,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:15:58,511.511 INFO    ] No update needed
[2026-06-19 02:15:58,513.513 INFO    ] Checking for camera pi updates...
[2026-06-19 02:15:58,548.548 INFO    ] 200
[2026-06-19 02:15:58,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:15:58,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:15:58,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:15:58,644.644 INFO    ] No camera update needed
[2026-06-19 02:15:58,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:15:58,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:15:58,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:15:58,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:16:00,701.701 INFO    ] ================================================
[2026-06-19 02:16:00,717.717 INFO    ] Launching Daemon at Fri Jun 19 02:16:00 IST 2026
[2026-06-19 02:16:00,728.728 INFO    ] ================================================
[2026-06-19 02:16:01,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:16:01
[2026-06-19 02:16:02,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:16:02,630.630 INFO    ] Initializing speech engine...
[2026-06-19 02:16:02,643.643 INFO    ] 2026-06-19 02:16:02
[2026-06-19 02:16:02,948.948 INFO    ] 2026-06-19 02:16:02
[2026-06-19 02:16:02,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:16:03,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:16:03,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:16:03,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:16:03,383.383 INFO    ] time= 19/06/2026 02:16:03
[2026-06-19 02:16:03,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:16:03,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:16:03,562.562 INFO    ] No existing commands found in stream
[2026-06-19 02:16:08,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:16:08,578.578 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 02:16:10,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:16:10,806.806 INFO    ] Checking for system updates...
[2026-06-19 02:16:10,854.854 INFO    ] 200
[2026-06-19 02:16:10,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:10,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:16:10,922.922 INFO    ] No update needed
[2026-06-19 02:16:10,925.925 INFO    ] Checking for camera pi updates...
[2026-06-19 02:16:10,964.964 INFO    ] 200
[2026-06-19 02:16:10,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:11,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:16:11,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:16:11,064.064 INFO    ] No camera update needed
[2026-06-19 02:16:11,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:16:11,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:16:11,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:16:11,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:16:13,125.125 INFO    ] ================================================
[2026-06-19 02:16:13,140.140 INFO    ] Launching Daemon at Fri Jun 19 02:16:13 IST 2026
[2026-06-19 02:16:13,151.151 INFO    ] ================================================
[2026-06-19 02:16:13,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:16:13
[2026-06-19 02:16:14,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:16:14,612.612 INFO    ] Initializing speech engine...
[2026-06-19 02:16:14,619.619 INFO    ] 2026-06-19 02:16:14
[2026-06-19 02:16:14,919.919 INFO    ] 2026-06-19 02:16:14
[2026-06-19 02:16:14,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:16:15,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:16:15,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:16:15,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:16:15,305.305 INFO    ] time= 19/06/2026 02:16:15
[2026-06-19 02:16:15,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:16:15,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:16:15,431.431 INFO    ] No existing commands found in stream
[2026-06-19 02:16:20,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:16:20,444.444 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 02:16:22,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:16:22,338.338 INFO    ] Checking for system updates...
[2026-06-19 02:16:22,375.375 INFO    ] 200
[2026-06-19 02:16:22,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:22,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:16:22,440.440 INFO    ] No update needed
[2026-06-19 02:16:22,442.442 INFO    ] Checking for camera pi updates...
[2026-06-19 02:16:22,481.481 INFO    ] 200
[2026-06-19 02:16:22,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:22,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:16:22,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:16:22,578.578 INFO    ] No camera update needed
[2026-06-19 02:16:22,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:16:22,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:16:22,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:16:22,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:16:24,633.633 INFO    ] ================================================
[2026-06-19 02:16:24,648.648 INFO    ] Launching Daemon at Fri Jun 19 02:16:24 IST 2026
[2026-06-19 02:16:24,659.659 INFO    ] ================================================
[2026-06-19 02:16:25,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:16:25
[2026-06-19 02:16:25,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:16:26,301.301 INFO    ] Initializing speech engine...
[2026-06-19 02:16:26,309.309 INFO    ] 2026-06-19 02:16:26
[2026-06-19 02:16:26,586.586 INFO    ] 2026-06-19 02:16:26
[2026-06-19 02:16:26,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:16:26,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:16:26,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:16:27,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:16:27,114.114 INFO    ] time= 19/06/2026 02:16:27
[2026-06-19 02:16:27,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:16:27,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:16:27,292.292 INFO    ] No existing commands found in stream
[2026-06-19 02:16:32,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:16:32,322.322 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 02:16:35,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:16:35,539.539 INFO    ] Checking for system updates...
[2026-06-19 02:16:35,581.581 INFO    ] 200
[2026-06-19 02:16:35,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:35,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:16:35,642.642 INFO    ] No update needed
[2026-06-19 02:16:35,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 02:16:35,684.684 INFO    ] 200
[2026-06-19 02:16:35,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:35,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:16:35,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:16:35,789.789 INFO    ] No camera update needed
[2026-06-19 02:16:35,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:16:35,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:16:35,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:16:35,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:16:37,848.848 INFO    ] ================================================
[2026-06-19 02:16:37,863.863 INFO    ] Launching Daemon at Fri Jun 19 02:16:37 IST 2026
[2026-06-19 02:16:37,875.875 INFO    ] ================================================
[2026-06-19 02:16:38,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:16:38
[2026-06-19 02:16:39,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:16:39,534.534 INFO    ] Initializing speech engine...
[2026-06-19 02:16:39,547.547 INFO    ] 2026-06-19 02:16:39
[2026-06-19 02:16:39,820.820 INFO    ] 2026-06-19 02:16:39
[2026-06-19 02:16:39,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:16:40,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:16:40,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:16:40,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:16:40,205.205 INFO    ] time= 19/06/2026 02:16:40
[2026-06-19 02:16:40,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:16:40,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:16:40,381.381 INFO    ] No existing commands found in stream
[2026-06-19 02:16:45,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:16:45,415.415 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 02:16:47,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:16:48,003.003 INFO    ] Checking for system updates...
[2026-06-19 02:16:48,044.044 INFO    ] 200
[2026-06-19 02:16:48,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:48,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:16:48,105.105 INFO    ] No update needed
[2026-06-19 02:16:48,108.108 INFO    ] Checking for camera pi updates...
[2026-06-19 02:16:48,148.148 INFO    ] 200
[2026-06-19 02:16:48,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:48,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:16:48,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:16:48,253.253 INFO    ] No camera update needed
[2026-06-19 02:16:48,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:16:48,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:16:48,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:16:48,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:16:50,312.312 INFO    ] ================================================
[2026-06-19 02:16:50,328.328 INFO    ] Launching Daemon at Fri Jun 19 02:16:50 IST 2026
[2026-06-19 02:16:50,339.339 INFO    ] ================================================
[2026-06-19 02:16:50,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:16:50
[2026-06-19 02:16:51,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:16:51,762.762 INFO    ] Initializing speech engine...
[2026-06-19 02:16:51,789.789 INFO    ] 2026-06-19 02:16:51
[2026-06-19 02:16:52,042.042 INFO    ] 2026-06-19 02:16:52
[2026-06-19 02:16:52,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:16:52,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:16:52,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:16:52,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:16:52,521.521 INFO    ] time= 19/06/2026 02:16:52
[2026-06-19 02:16:52,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:16:52,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:16:52,663.663 INFO    ] No existing commands found in stream
[2026-06-19 02:16:57,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:16:57,677.677 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 02:16:59,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:16:59,459.459 INFO    ] Checking for system updates...
[2026-06-19 02:16:59,495.495 INFO    ] 200
[2026-06-19 02:16:59,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:59,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:16:59,554.554 INFO    ] No update needed
[2026-06-19 02:16:59,557.557 INFO    ] Checking for camera pi updates...
[2026-06-19 02:16:59,595.595 INFO    ] 200
[2026-06-19 02:16:59,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:16:59,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:16:59,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:16:59,691.691 INFO    ] No camera update needed
[2026-06-19 02:16:59,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:16:59,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:16:59,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:16:59,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:17:01,751.751 INFO    ] ================================================
[2026-06-19 02:17:01,771.771 INFO    ] Launching Daemon at Fri Jun 19 02:17:01 IST 2026
[2026-06-19 02:17:01,788.788 INFO    ] ================================================
[2026-06-19 02:17:02,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:17:02
[2026-06-19 02:17:03,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:17:03,565.565 INFO    ] Initializing speech engine...
[2026-06-19 02:17:03,577.577 INFO    ] 2026-06-19 02:17:03
[2026-06-19 02:17:03,850.850 INFO    ] 2026-06-19 02:17:03
[2026-06-19 02:17:03,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:17:04,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:17:04,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:17:04,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:17:04,328.328 INFO    ] time= 19/06/2026 02:17:04
[2026-06-19 02:17:04,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:17:04,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:17:04,473.473 INFO    ] No existing commands found in stream
[2026-06-19 02:17:09,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:17:09,489.489 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 02:17:12,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:17:12,323.323 INFO    ] Checking for system updates...
[2026-06-19 02:17:12,361.361 INFO    ] 200
[2026-06-19 02:17:12,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:12,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:17:12,429.429 INFO    ] No update needed
[2026-06-19 02:17:12,432.432 INFO    ] Checking for camera pi updates...
[2026-06-19 02:17:12,471.471 INFO    ] 200
[2026-06-19 02:17:12,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:12,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:17:12,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:17:12,677.677 INFO    ] No camera update needed
[2026-06-19 02:17:12,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:17:12,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:17:12,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:17:12,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:17:14,737.737 INFO    ] ================================================
[2026-06-19 02:17:14,752.752 INFO    ] Launching Daemon at Fri Jun 19 02:17:14 IST 2026
[2026-06-19 02:17:14,763.763 INFO    ] ================================================
[2026-06-19 02:17:15,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:17:15
[2026-06-19 02:17:15,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:17:16,200.200 INFO    ] Initializing speech engine...
[2026-06-19 02:17:16,218.218 INFO    ] 2026-06-19 02:17:16
[2026-06-19 02:17:16,474.474 INFO    ] 2026-06-19 02:17:16
[2026-06-19 02:17:16,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:17:16,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:17:16,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:17:16,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:17:16,933.933 INFO    ] time= 19/06/2026 02:17:16
[2026-06-19 02:17:16,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:17:17,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:17:17,106.106 INFO    ] No existing commands found in stream
[2026-06-19 02:17:22,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:17:22,120.120 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 02:17:22,889.889 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:17:22,891.891 INFO    ] Checking for system updates...
[2026-06-19 02:17:22,928.928 INFO    ] 200
[2026-06-19 02:17:22,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:22,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:17:22,986.986 INFO    ] No update needed
[2026-06-19 02:17:22,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 02:17:23,028.028 INFO    ] 200
[2026-06-19 02:17:23,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:23,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:17:23,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:17:23,119.119 INFO    ] No camera update needed
[2026-06-19 02:17:23,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:17:23,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:17:23,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:17:23,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:17:25,178.178 INFO    ] ================================================
[2026-06-19 02:17:25,193.193 INFO    ] Launching Daemon at Fri Jun 19 02:17:25 IST 2026
[2026-06-19 02:17:25,204.204 INFO    ] ================================================
[2026-06-19 02:17:25,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:17:25
[2026-06-19 02:17:26,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:17:26,633.633 INFO    ] Initializing speech engine...
[2026-06-19 02:17:26,639.639 INFO    ] 2026-06-19 02:17:26
[2026-06-19 02:17:26,944.944 INFO    ] 2026-06-19 02:17:26
[2026-06-19 02:17:26,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:17:27,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:17:27,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:17:27,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:17:27,332.332 INFO    ] time= 19/06/2026 02:17:27
[2026-06-19 02:17:27,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:17:27,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:17:27,459.459 INFO    ] No existing commands found in stream
[2026-06-19 02:17:32,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:17:32,471.471 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 02:17:32,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:17:32,945.945 INFO    ] Checking for system updates...
[2026-06-19 02:17:32,987.987 INFO    ] 200
[2026-06-19 02:17:32,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:33,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:17:33,060.060 INFO    ] No update needed
[2026-06-19 02:17:33,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 02:17:33,099.099 INFO    ] 200
[2026-06-19 02:17:33,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:33,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:17:33,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:17:33,193.193 INFO    ] No camera update needed
[2026-06-19 02:17:33,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:17:33,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:17:33,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:17:33,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:17:35,248.248 INFO    ] ================================================
[2026-06-19 02:17:35,264.264 INFO    ] Launching Daemon at Fri Jun 19 02:17:35 IST 2026
[2026-06-19 02:17:35,275.275 INFO    ] ================================================
[2026-06-19 02:17:35,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:17:35
[2026-06-19 02:17:36,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:17:36,933.933 INFO    ] Initializing speech engine...
[2026-06-19 02:17:36,941.941 INFO    ] 2026-06-19 02:17:36
[2026-06-19 02:17:37,217.217 INFO    ] 2026-06-19 02:17:37
[2026-06-19 02:17:37,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:17:37,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:17:37,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:17:37,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:17:37,628.628 INFO    ] time= 19/06/2026 02:17:37
[2026-06-19 02:17:37,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:17:37,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:17:37,785.785 INFO    ] No existing commands found in stream
[2026-06-19 02:17:42,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:17:42,812.812 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 02:17:44,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:17:44,329.329 INFO    ] Checking for system updates...
[2026-06-19 02:17:44,366.366 INFO    ] 200
[2026-06-19 02:17:44,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:44,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:17:44,423.423 INFO    ] No update needed
[2026-06-19 02:17:44,426.426 INFO    ] Checking for camera pi updates...
[2026-06-19 02:17:44,460.460 INFO    ] 200
[2026-06-19 02:17:44,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:44,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:17:44,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:17:44,590.590 INFO    ] No camera update needed
[2026-06-19 02:17:44,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:17:44,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:17:44,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:17:44,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:17:46,646.646 INFO    ] ================================================
[2026-06-19 02:17:46,662.662 INFO    ] Launching Daemon at Fri Jun 19 02:17:46 IST 2026
[2026-06-19 02:17:46,674.674 INFO    ] ================================================
[2026-06-19 02:17:47,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:17:47
[2026-06-19 02:17:47,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:17:48,156.156 INFO    ] Initializing speech engine...
[2026-06-19 02:17:48,164.164 INFO    ] 2026-06-19 02:17:48
[2026-06-19 02:17:48,426.426 INFO    ] 2026-06-19 02:17:48
[2026-06-19 02:17:48,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:17:48,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:17:48,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:17:48,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:17:48,893.893 INFO    ] time= 19/06/2026 02:17:48
[2026-06-19 02:17:48,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:17:48,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:17:49,040.040 INFO    ] No existing commands found in stream
[2026-06-19 02:17:54,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:17:54,064.064 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 02:17:56,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:17:56,083.083 INFO    ] Checking for system updates...
[2026-06-19 02:17:56,119.119 INFO    ] 200
[2026-06-19 02:17:56,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:56,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:17:56,176.176 INFO    ] No update needed
[2026-06-19 02:17:56,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 02:17:56,212.212 INFO    ] 200
[2026-06-19 02:17:56,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:17:56,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:17:56,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:17:56,302.302 INFO    ] No camera update needed
[2026-06-19 02:17:56,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:17:56,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:17:56,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:17:56,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:17:58,359.359 INFO    ] ================================================
[2026-06-19 02:17:58,374.374 INFO    ] Launching Daemon at Fri Jun 19 02:17:58 IST 2026
[2026-06-19 02:17:58,385.385 INFO    ] ================================================
[2026-06-19 02:17:58,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:17:58
[2026-06-19 02:17:59,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:17:59,822.822 INFO    ] Initializing speech engine...
[2026-06-19 02:17:59,831.831 INFO    ] 2026-06-19 02:17:59
[2026-06-19 02:18:00,080.080 INFO    ] 2026-06-19 02:18:00
[2026-06-19 02:18:00,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:18:00,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:18:00,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:18:00,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:18:00,553.553 INFO    ] time= 19/06/2026 02:18:00
[2026-06-19 02:18:00,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:18:00,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:18:00,712.712 INFO    ] No existing commands found in stream
[2026-06-19 02:18:05,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:18:05,738.738 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 02:18:10,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:18:10,233.233 INFO    ] Checking for system updates...
[2026-06-19 02:18:10,270.270 INFO    ] 200
[2026-06-19 02:18:10,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:10,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:18:10,330.330 INFO    ] No update needed
[2026-06-19 02:18:10,332.332 INFO    ] Checking for camera pi updates...
[2026-06-19 02:18:10,366.366 INFO    ] 200
[2026-06-19 02:18:10,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:10,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:18:10,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:18:10,454.454 INFO    ] No camera update needed
[2026-06-19 02:18:10,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:18:10,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:18:10,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:18:10,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:18:12,510.510 INFO    ] ================================================
[2026-06-19 02:18:12,525.525 INFO    ] Launching Daemon at Fri Jun 19 02:18:12 IST 2026
[2026-06-19 02:18:12,536.536 INFO    ] ================================================
[2026-06-19 02:18:13,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:18:13
[2026-06-19 02:18:13,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:18:13,935.935 INFO    ] Initializing speech engine...
[2026-06-19 02:18:13,954.954 INFO    ] 2026-06-19 02:18:13
[2026-06-19 02:18:14,208.208 INFO    ] 2026-06-19 02:18:14
[2026-06-19 02:18:14,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:18:14,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:18:14,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:18:14,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:18:14,578.578 INFO    ] time= 19/06/2026 02:18:14
[2026-06-19 02:18:14,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:18:14,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:18:14,735.735 INFO    ] No existing commands found in stream
[2026-06-19 02:18:19,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:18:19,773.773 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 02:18:23,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:18:23,838.838 INFO    ] Checking for system updates...
[2026-06-19 02:18:23,873.873 INFO    ] 200
[2026-06-19 02:18:23,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:23,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:18:23,932.932 INFO    ] No update needed
[2026-06-19 02:18:23,934.934 INFO    ] Checking for camera pi updates...
[2026-06-19 02:18:23,968.968 INFO    ] 200
[2026-06-19 02:18:23,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:24,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:18:24,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:18:24,068.068 INFO    ] No camera update needed
[2026-06-19 02:18:24,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:18:24,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:18:24,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:18:24,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:18:26,124.124 INFO    ] ================================================
[2026-06-19 02:18:26,139.139 INFO    ] Launching Daemon at Fri Jun 19 02:18:26 IST 2026
[2026-06-19 02:18:26,150.150 INFO    ] ================================================
[2026-06-19 02:18:26,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:18:26
[2026-06-19 02:18:27,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:18:27,606.606 INFO    ] Initializing speech engine...
[2026-06-19 02:18:27,614.614 INFO    ] 2026-06-19 02:18:27
[2026-06-19 02:18:27,872.872 INFO    ] 2026-06-19 02:18:27
[2026-06-19 02:18:27,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:18:28,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:18:28,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:18:28,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:18:28,228.228 INFO    ] time= 19/06/2026 02:18:28
[2026-06-19 02:18:28,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:18:28,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:18:28,405.405 INFO    ] No existing commands found in stream
[2026-06-19 02:18:33,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:18:33,433.433 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 02:18:34,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:18:34,125.125 INFO    ] Checking for system updates...
[2026-06-19 02:18:34,162.162 INFO    ] 200
[2026-06-19 02:18:34,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:34,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:18:34,227.227 INFO    ] No update needed
[2026-06-19 02:18:34,229.229 INFO    ] Checking for camera pi updates...
[2026-06-19 02:18:34,263.263 INFO    ] 200
[2026-06-19 02:18:34,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:34,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:18:34,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:18:34,344.344 INFO    ] No camera update needed
[2026-06-19 02:18:34,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:18:34,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:18:34,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:18:34,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:18:36,401.401 INFO    ] ================================================
[2026-06-19 02:18:36,416.416 INFO    ] Launching Daemon at Fri Jun 19 02:18:36 IST 2026
[2026-06-19 02:18:36,427.427 INFO    ] ================================================
[2026-06-19 02:18:37,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:18:37
[2026-06-19 02:18:37,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:18:37,942.942 INFO    ] Initializing speech engine...
[2026-06-19 02:18:37,948.948 INFO    ] 2026-06-19 02:18:37
[2026-06-19 02:18:38,207.207 INFO    ] 2026-06-19 02:18:38
[2026-06-19 02:18:38,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:18:38,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:18:38,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:18:38,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:18:38,638.638 INFO    ] time= 19/06/2026 02:18:38
[2026-06-19 02:18:38,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:18:38,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:18:38,809.809 INFO    ] No existing commands found in stream
[2026-06-19 02:18:43,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:18:43,824.824 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 02:18:47,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:18:47,385.385 INFO    ] Checking for system updates...
[2026-06-19 02:18:47,421.421 INFO    ] 200
[2026-06-19 02:18:47,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:47,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:18:47,479.479 INFO    ] No update needed
[2026-06-19 02:18:47,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 02:18:47,515.515 INFO    ] 200
[2026-06-19 02:18:47,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:47,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:18:47,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:18:47,590.590 INFO    ] No camera update needed
[2026-06-19 02:18:47,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:18:47,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:18:47,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:18:47,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:18:49,646.646 INFO    ] ================================================
[2026-06-19 02:18:49,660.660 INFO    ] Launching Daemon at Fri Jun 19 02:18:49 IST 2026
[2026-06-19 02:18:49,671.671 INFO    ] ================================================
[2026-06-19 02:18:50,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:18:50
[2026-06-19 02:18:50,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:18:51,182.182 INFO    ] Initializing speech engine...
[2026-06-19 02:18:51,192.192 INFO    ] 2026-06-19 02:18:51
[2026-06-19 02:18:51,443.443 INFO    ] 2026-06-19 02:18:51
[2026-06-19 02:18:51,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:18:51,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:18:51,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:18:51,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:18:51,907.907 INFO    ] time= 19/06/2026 02:18:51
[2026-06-19 02:18:51,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:18:51,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:18:52,054.054 INFO    ] No existing commands found in stream
[2026-06-19 02:18:57,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:18:57,069.069 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 02:18:59,524.524 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:18:59,527.527 INFO    ] Checking for system updates...
[2026-06-19 02:18:59,562.562 INFO    ] 200
[2026-06-19 02:18:59,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:59,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:18:59,626.626 INFO    ] No update needed
[2026-06-19 02:18:59,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 02:18:59,662.662 INFO    ] 200
[2026-06-19 02:18:59,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:18:59,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:18:59,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:18:59,762.762 INFO    ] No camera update needed
[2026-06-19 02:18:59,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:18:59,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:18:59,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:18:59,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:19:01,820.820 INFO    ] ================================================
[2026-06-19 02:19:01,837.837 INFO    ] Launching Daemon at Fri Jun 19 02:19:01 IST 2026
[2026-06-19 02:19:01,850.850 INFO    ] ================================================
[2026-06-19 02:19:02,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:19:02
[2026-06-19 02:19:03,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:19:03,351.351 INFO    ] Initializing speech engine...
[2026-06-19 02:19:03,366.366 INFO    ] 2026-06-19 02:19:03
[2026-06-19 02:19:03,634.634 INFO    ] 2026-06-19 02:19:03
[2026-06-19 02:19:03,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:19:03,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:19:03,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:19:04,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:19:04,010.010 INFO    ] time= 19/06/2026 02:19:04
[2026-06-19 02:19:04,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:19:04,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:19:04,193.193 INFO    ] No existing commands found in stream
[2026-06-19 02:19:09,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:19:09,221.221 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-19 02:19:13,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:19:13,261.261 INFO    ] Checking for system updates...
[2026-06-19 02:19:13,299.299 INFO    ] 200
[2026-06-19 02:19:13,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:19:13,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:19:13,363.363 INFO    ] No update needed
[2026-06-19 02:19:13,365.365 INFO    ] Checking for camera pi updates...
[2026-06-19 02:19:13,400.400 INFO    ] 200
[2026-06-19 02:19:13,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:19:13,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:19:13,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:19:13,597.597 INFO    ] No camera update needed
[2026-06-19 02:19:13,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:19:13,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:19:13,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:19:13,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:19:15,651.651 INFO    ] ================================================
[2026-06-19 02:19:15,666.666 INFO    ] Launching Daemon at Fri Jun 19 02:19:15 IST 2026
[2026-06-19 02:19:15,677.677 INFO    ] ================================================
[2026-06-19 02:19:16,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:19:16
[2026-06-19 02:19:16,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:19:17,162.162 INFO    ] Initializing speech engine...
[2026-06-19 02:19:17,173.173 INFO    ] 2026-06-19 02:19:17
[2026-06-19 02:19:17,439.439 INFO    ] 2026-06-19 02:19:17
[2026-06-19 02:19:17,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:19:17,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:19:17,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:19:17,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:19:17,925.925 INFO    ] time= 19/06/2026 02:19:17
[2026-06-19 02:19:17,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:19:17,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:19:18,050.050 INFO    ] No existing commands found in stream
[2026-06-19 02:19:23,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:19:23,064.064 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 02:19:25,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:19:25,603.603 INFO    ] Checking for system updates...
[2026-06-19 02:19:25,639.639 INFO    ] 200
[2026-06-19 02:19:25,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:19:25,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:19:25,703.703 INFO    ] No update needed
[2026-06-19 02:19:25,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 02:19:25,751.751 INFO    ] 200
[2026-06-19 02:19:25,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:19:25,805.805 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:19:25,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:19:25,860.860 INFO    ] No camera update needed
[2026-06-19 02:19:25,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:19:25,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:19:25,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:19:25,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:19:27,923.923 INFO    ] ================================================
[2026-06-19 02:19:27,938.938 INFO    ] Launching Daemon at Fri Jun 19 02:19:27 IST 2026
[2026-06-19 02:19:27,949.949 INFO    ] ================================================
[2026-06-19 02:19:28,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:19:28
[2026-06-19 02:19:29,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:19:29,384.384 INFO    ] Initializing speech engine...
[2026-06-19 02:19:29,390.390 INFO    ] 2026-06-19 02:19:29
[2026-06-19 02:19:29,652.652 INFO    ] 2026-06-19 02:19:29
[2026-06-19 02:19:29,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:19:29,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:19:29,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:19:30,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:19:30,086.086 INFO    ] time= 19/06/2026 02:19:30
[2026-06-19 02:19:30,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:19:30,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:19:30,259.259 INFO    ] No existing commands found in stream
[2026-06-19 02:19:35,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:19:35,274.274 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 02:19:36,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:19:36,833.833 INFO    ] Checking for system updates...
[2026-06-19 02:19:36,870.870 INFO    ] 200
[2026-06-19 02:19:36,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:19:36,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:19:36,930.930 INFO    ] No update needed
[2026-06-19 02:19:36,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 02:19:36,971.971 INFO    ] 200
[2026-06-19 02:19:36,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:19:37,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:19:37,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:19:37,050.050 INFO    ] No camera update needed
[2026-06-19 02:19:37,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:19:37,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:19:37,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:19:37,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:19:39,108.108 INFO    ] ================================================
[2026-06-19 02:19:39,123.123 INFO    ] Launching Daemon at Fri Jun 19 02:19:39 IST 2026
[2026-06-19 02:19:39,134.134 INFO    ] ================================================
[2026-06-19 02:19:39,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:19:39
[2026-06-19 02:19:40,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:19:40,566.566 INFO    ] Initializing speech engine...
[2026-06-19 02:19:40,579.579 INFO    ] 2026-06-19 02:19:40
[2026-06-19 02:19:40,862.862 INFO    ] 2026-06-19 02:19:40
[2026-06-19 02:19:40,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:19:41,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:19:41,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:19:41,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:19:41,210.210 INFO    ] time= 19/06/2026 02:19:41
[2026-06-19 02:19:41,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:19:41,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:19:41,361.361 INFO    ] No existing commands found in stream
[2026-06-19 02:19:46,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:19:46,374.374 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 02:19:50,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:19:50,526.526 INFO    ] Checking for system updates...
[2026-06-19 02:19:50,567.567 INFO    ] 200
[2026-06-19 02:19:50,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:19:50,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:19:50,631.631 INFO    ] No update needed
[2026-06-19 02:19:50,633.633 INFO    ] Checking for camera pi updates...
[2026-06-19 02:19:50,670.670 INFO    ] 200
[2026-06-19 02:19:50,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:19:50,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:19:50,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:19:50,769.769 INFO    ] No camera update needed
[2026-06-19 02:19:50,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:19:50,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:19:50,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:19:50,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:19:52,825.825 INFO    ] ================================================
[2026-06-19 02:19:52,840.840 INFO    ] Launching Daemon at Fri Jun 19 02:19:52 IST 2026
[2026-06-19 02:19:52,851.851 INFO    ] ================================================
[2026-06-19 02:19:53,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:19:53
[2026-06-19 02:19:54,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:19:54,270.270 INFO    ] Initializing speech engine...
[2026-06-19 02:19:54,277.277 INFO    ] 2026-06-19 02:19:54
[2026-06-19 02:19:54,569.569 INFO    ] 2026-06-19 02:19:54
[2026-06-19 02:19:54,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:19:54,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:19:54,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:19:54,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:19:54,922.922 INFO    ] time= 19/06/2026 02:19:54
[2026-06-19 02:19:54,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:19:54,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:19:55,000.000 INFO    ] No existing commands found in stream
[2026-06-19 02:20:00,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:20:00,013.013 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 02:20:00,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:20:00,461.461 INFO    ] Checking for system updates...
[2026-06-19 02:20:00,497.497 INFO    ] 200
[2026-06-19 02:20:00,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:00,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:20:00,555.555 INFO    ] No update needed
[2026-06-19 02:20:00,557.557 INFO    ] Checking for camera pi updates...
[2026-06-19 02:20:00,591.591 INFO    ] 200
[2026-06-19 02:20:00,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:00,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:20:00,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:20:00,682.682 INFO    ] No camera update needed
[2026-06-19 02:20:00,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:20:00,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:20:00,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:20:00,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:20:02,749.749 INFO    ] ================================================
[2026-06-19 02:20:02,771.771 INFO    ] Launching Daemon at Fri Jun 19 02:20:02 IST 2026
[2026-06-19 02:20:02,788.788 INFO    ] ================================================
[2026-06-19 02:20:03,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:20:03
[2026-06-19 02:20:04,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:20:04,421.421 INFO    ] Initializing speech engine...
[2026-06-19 02:20:04,429.429 INFO    ] 2026-06-19 02:20:04
[2026-06-19 02:20:04,688.688 INFO    ] 2026-06-19 02:20:04
[2026-06-19 02:20:04,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:20:04,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:20:04,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:20:05,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:20:05,160.160 INFO    ] time= 19/06/2026 02:20:05
[2026-06-19 02:20:05,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:20:05,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:20:05,292.292 INFO    ] No existing commands found in stream
[2026-06-19 02:20:10,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:20:10,307.307 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 02:20:14,473.473 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:20:14,476.476 INFO    ] Checking for system updates...
[2026-06-19 02:20:14,513.513 INFO    ] 200
[2026-06-19 02:20:14,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:14,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:20:14,571.571 INFO    ] No update needed
[2026-06-19 02:20:14,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 02:20:14,611.611 INFO    ] 200
[2026-06-19 02:20:14,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:14,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:20:14,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:20:14,702.702 INFO    ] No camera update needed
[2026-06-19 02:20:14,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:20:14,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:20:14,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:20:14,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:20:16,758.758 INFO    ] ================================================
[2026-06-19 02:20:16,773.773 INFO    ] Launching Daemon at Fri Jun 19 02:20:16 IST 2026
[2026-06-19 02:20:16,784.784 INFO    ] ================================================
[2026-06-19 02:20:17,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:20:17
[2026-06-19 02:20:17,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:20:18,205.205 INFO    ] Initializing speech engine...
[2026-06-19 02:20:18,214.214 INFO    ] 2026-06-19 02:20:18
[2026-06-19 02:20:18,462.462 INFO    ] 2026-06-19 02:20:18
[2026-06-19 02:20:18,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:20:18,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:20:18,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:20:18,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:20:18,831.831 INFO    ] time= 19/06/2026 02:20:18
[2026-06-19 02:20:18,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:20:18,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:20:18,985.985 INFO    ] No existing commands found in stream
[2026-06-19 02:20:24,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:20:24,018.018 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 02:20:25,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:20:25,291.291 INFO    ] Checking for system updates...
[2026-06-19 02:20:25,330.330 INFO    ] 200
[2026-06-19 02:20:25,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:25,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:20:25,387.387 INFO    ] No update needed
[2026-06-19 02:20:25,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 02:20:25,423.423 INFO    ] 200
[2026-06-19 02:20:25,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:25,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:20:25,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:20:25,501.501 INFO    ] No camera update needed
[2026-06-19 02:20:25,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:20:25,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:20:25,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:20:25,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:20:27,557.557 INFO    ] ================================================
[2026-06-19 02:20:27,572.572 INFO    ] Launching Daemon at Fri Jun 19 02:20:27 IST 2026
[2026-06-19 02:20:27,583.583 INFO    ] ================================================
[2026-06-19 02:20:28,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:20:28
[2026-06-19 02:20:28,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:20:29,006.006 INFO    ] Initializing speech engine...
[2026-06-19 02:20:29,016.016 INFO    ] 2026-06-19 02:20:29
[2026-06-19 02:20:29,267.267 INFO    ] 2026-06-19 02:20:29
[2026-06-19 02:20:29,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:20:29,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:20:29,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:20:29,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:20:29,642.642 INFO    ] time= 19/06/2026 02:20:29
[2026-06-19 02:20:29,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:20:29,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:20:29,816.816 INFO    ] No existing commands found in stream
[2026-06-19 02:20:34,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:20:34,843.843 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 02:20:39,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:20:39,197.197 INFO    ] Checking for system updates...
[2026-06-19 02:20:39,233.233 INFO    ] 200
[2026-06-19 02:20:39,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:39,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:20:39,291.291 INFO    ] No update needed
[2026-06-19 02:20:39,294.294 INFO    ] Checking for camera pi updates...
[2026-06-19 02:20:39,331.331 INFO    ] 200
[2026-06-19 02:20:39,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:39,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:20:39,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:20:39,432.432 INFO    ] No camera update needed
[2026-06-19 02:20:39,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:20:39,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:20:39,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:20:39,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:20:41,489.489 INFO    ] ================================================
[2026-06-19 02:20:41,504.504 INFO    ] Launching Daemon at Fri Jun 19 02:20:41 IST 2026
[2026-06-19 02:20:41,515.515 INFO    ] ================================================
[2026-06-19 02:20:42,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:20:42
[2026-06-19 02:20:42,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:20:43,074.074 INFO    ] Initializing speech engine...
[2026-06-19 02:20:43,083.083 INFO    ] 2026-06-19 02:20:43
[2026-06-19 02:20:43,334.334 INFO    ] 2026-06-19 02:20:43
[2026-06-19 02:20:43,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:20:43,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:20:43,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:20:43,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:20:43,822.822 INFO    ] time= 19/06/2026 02:20:43
[2026-06-19 02:20:43,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:20:43,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:20:43,969.969 INFO    ] No existing commands found in stream
[2026-06-19 02:20:48,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:20:48,984.984 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-19 02:20:50,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:20:50,616.616 INFO    ] Checking for system updates...
[2026-06-19 02:20:50,652.652 INFO    ] 200
[2026-06-19 02:20:50,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:50,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:20:50,715.715 INFO    ] No update needed
[2026-06-19 02:20:50,717.717 INFO    ] Checking for camera pi updates...
[2026-06-19 02:20:50,752.752 INFO    ] 200
[2026-06-19 02:20:50,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:20:50,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:20:50,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:20:50,846.846 INFO    ] No camera update needed
[2026-06-19 02:20:50,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:20:50,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:20:50,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:20:50,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:20:52,901.901 INFO    ] ================================================
[2026-06-19 02:20:52,916.916 INFO    ] Launching Daemon at Fri Jun 19 02:20:52 IST 2026
[2026-06-19 02:20:52,927.927 INFO    ] ================================================
[2026-06-19 02:20:53,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:20:53
[2026-06-19 02:20:54,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:20:54,434.434 INFO    ] Initializing speech engine...
[2026-06-19 02:20:54,444.444 INFO    ] 2026-06-19 02:20:54
[2026-06-19 02:20:54,690.690 INFO    ] 2026-06-19 02:20:54
[2026-06-19 02:20:54,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:20:54,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:20:54,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:20:55,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:20:55,175.175 INFO    ] time= 19/06/2026 02:20:55
[2026-06-19 02:20:55,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:20:55,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:20:55,318.318 INFO    ] No existing commands found in stream
[2026-06-19 02:21:00,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:21:00,333.333 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 02:21:03,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:21:03,674.674 INFO    ] Checking for system updates...
[2026-06-19 02:21:03,710.710 INFO    ] 200
[2026-06-19 02:21:03,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:21:03,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:21:03,768.768 INFO    ] No update needed
[2026-06-19 02:21:03,770.770 INFO    ] Checking for camera pi updates...
[2026-06-19 02:21:03,804.804 INFO    ] 200
[2026-06-19 02:21:03,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:21:03,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:21:03,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:21:03,902.902 INFO    ] No camera update needed
[2026-06-19 02:21:03,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:21:03,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:21:03,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:21:03,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:21:05,958.958 INFO    ] ================================================
[2026-06-19 02:21:05,973.973 INFO    ] Launching Daemon at Fri Jun 19 02:21:05 IST 2026
[2026-06-19 02:21:05,984.984 INFO    ] ================================================
[2026-06-19 02:21:06,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:21:06
[2026-06-19 02:21:07,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:21:07,461.461 INFO    ] Initializing speech engine...
[2026-06-19 02:21:07,470.470 INFO    ] 2026-06-19 02:21:07
[2026-06-19 02:21:07,719.719 INFO    ] 2026-06-19 02:21:07
[2026-06-19 02:21:07,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:21:08,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:21:08,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:21:08,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:21:08,210.210 INFO    ] time= 19/06/2026 02:21:08
[2026-06-19 02:21:08,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:21:08,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:21:08,345.345 INFO    ] No existing commands found in stream
[2026-06-19 02:21:13,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:21:13,359.359 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 02:21:14,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:21:14,711.711 INFO    ] Checking for system updates...
[2026-06-19 02:21:14,747.747 INFO    ] 200
[2026-06-19 02:21:14,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:21:14,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:21:14,813.813 INFO    ] No update needed
[2026-06-19 02:21:14,815.815 INFO    ] Checking for camera pi updates...
[2026-06-19 02:21:14,849.849 INFO    ] 200
[2026-06-19 02:21:14,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:21:14,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:21:14,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:21:14,947.947 INFO    ] No camera update needed
[2026-06-19 02:21:14,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:21:14,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:21:14,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:21:14,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:21:17,004.004 INFO    ] ================================================
[2026-06-19 02:21:17,020.020 INFO    ] Launching Daemon at Fri Jun 19 02:21:17 IST 2026
[2026-06-19 02:21:17,032.032 INFO    ] ================================================
[2026-06-19 02:21:17,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:21:17
[2026-06-19 02:21:18,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:21:18,458.458 INFO    ] Initializing speech engine...
[2026-06-19 02:21:18,467.467 INFO    ] 2026-06-19 02:21:18
[2026-06-19 02:21:18,763.763 INFO    ] 2026-06-19 02:21:18
[2026-06-19 02:21:18,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:21:18,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:21:18,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:21:19,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:21:19,119.119 INFO    ] time= 19/06/2026 02:21:19
[2026-06-19 02:21:19,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:21:19,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:21:19,197.197 INFO    ] No existing commands found in stream
[2026-06-19 02:21:24,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:21:24,212.212 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 02:21:28,255.255 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:21:28,257.257 INFO    ] Checking for system updates...
[2026-06-19 02:21:28,293.293 INFO    ] 200
[2026-06-19 02:21:28,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:21:28,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:21:28,351.351 INFO    ] No update needed
[2026-06-19 02:21:28,353.353 INFO    ] Checking for camera pi updates...
[2026-06-19 02:21:28,387.387 INFO    ] 200
[2026-06-19 02:21:28,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:21:28,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:21:28,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:21:28,582.582 INFO    ] No camera update needed
[2026-06-19 02:21:28,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:21:28,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:21:28,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:21:28,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:21:30,638.638 INFO    ] ================================================
[2026-06-19 02:21:30,654.654 INFO    ] Launching Daemon at Fri Jun 19 02:21:30 IST 2026
[2026-06-19 02:21:30,666.666 INFO    ] ================================================
[2026-06-19 02:21:31,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:21:31
[2026-06-19 02:21:31,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:21:32,237.237 INFO    ] Initializing speech engine...
[2026-06-19 02:21:32,244.244 INFO    ] 2026-06-19 02:21:32
[2026-06-19 02:21:32,506.506 INFO    ] 2026-06-19 02:21:32
[2026-06-19 02:21:32,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:21:32,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:21:32,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:21:32,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:21:32,921.921 INFO    ] time= 19/06/2026 02:21:32
[2026-06-19 02:21:32,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:21:32,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:21:32,998.998 INFO    ] No existing commands found in stream
[2026-06-19 02:21:38,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:21:38,013.013 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 02:21:40,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:21:40,820.820 INFO    ] Checking for system updates...
[2026-06-19 02:21:40,866.866 INFO    ] 200
[2026-06-19 02:21:40,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 02:21:40,872.872 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 02:21:40,874.874 INFO    ] Checking for camera pi updates...
[2026-06-19 02:21:40,920.920 INFO    ] 200
[2026-06-19 02:21:40,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 02:21:40,926.926 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 02:21:40,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:21:40,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:21:40,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:21:40,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:21:42,986.986 INFO    ] ================================================
[2026-06-19 02:21:43,012.012 INFO    ] Launching Daemon at Fri Jun 19 02:21:43 IST 2026
[2026-06-19 02:21:43,024.024 INFO    ] ================================================
[2026-06-19 02:21:43,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:21:43
[2026-06-19 02:21:44,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:21:44,452.452 INFO    ] Initializing speech engine...
[2026-06-19 02:21:44,459.459 INFO    ] 2026-06-19 02:21:44
[2026-06-19 02:21:44,708.708 INFO    ] 2026-06-19 02:21:44
[2026-06-19 02:21:44,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:21:44,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:21:44,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:21:45,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:21:45,085.085 INFO    ] time= 19/06/2026 02:21:45
[2026-06-19 02:21:45,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:21:45,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:21:45,243.243 INFO    ] No existing commands found in stream
[2026-06-19 02:21:50,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:21:50,271.271 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 02:21:51,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:21:51,792.792 INFO    ] Checking for system updates...
[2026-06-19 02:21:51,832.832 INFO    ] 200
[2026-06-19 02:21:51,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:21:51,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:21:51,889.889 INFO    ] No update needed
[2026-06-19 02:21:51,891.891 INFO    ] Checking for camera pi updates...
[2026-06-19 02:21:51,929.929 INFO    ] 200
[2026-06-19 02:21:51,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:21:51,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:21:52,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:21:52,028.028 INFO    ] No camera update needed
[2026-06-19 02:21:52,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:21:52,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:21:52,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:21:52,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:21:54,085.085 INFO    ] ================================================
[2026-06-19 02:21:54,101.101 INFO    ] Launching Daemon at Fri Jun 19 02:21:54 IST 2026
[2026-06-19 02:21:54,113.113 INFO    ] ================================================
[2026-06-19 02:21:54,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:21:54
[2026-06-19 02:21:55,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:21:55,573.573 INFO    ] Initializing speech engine...
[2026-06-19 02:21:55,579.579 INFO    ] 2026-06-19 02:21:55
[2026-06-19 02:21:55,839.839 INFO    ] 2026-06-19 02:21:55
[2026-06-19 02:21:55,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:21:56,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:21:56,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:21:56,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:21:56,299.299 INFO    ] time= 19/06/2026 02:21:56
[2026-06-19 02:21:56,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:21:56,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:21:56,443.443 INFO    ] No existing commands found in stream
[2026-06-19 02:22:01,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:22:01,460.460 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 02:22:03,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:22:03,144.144 INFO    ] Checking for system updates...
[2026-06-19 02:22:03,180.180 INFO    ] 200
[2026-06-19 02:22:03,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:03,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:22:03,239.239 INFO    ] No update needed
[2026-06-19 02:22:03,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 02:22:03,278.278 INFO    ] 200
[2026-06-19 02:22:03,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:03,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:22:03,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:22:03,386.386 INFO    ] No camera update needed
[2026-06-19 02:22:03,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:22:03,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:22:03,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:22:03,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:22:05,445.445 INFO    ] ================================================
[2026-06-19 02:22:05,462.462 INFO    ] Launching Daemon at Fri Jun 19 02:22:05 IST 2026
[2026-06-19 02:22:05,473.473 INFO    ] ================================================
[2026-06-19 02:22:06,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:22:06
[2026-06-19 02:22:06,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:22:06,964.964 INFO    ] Initializing speech engine...
[2026-06-19 02:22:06,972.972 INFO    ] 2026-06-19 02:22:06
[2026-06-19 02:22:07,240.240 INFO    ] 2026-06-19 02:22:07
[2026-06-19 02:22:07,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:22:07,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:22:07,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:22:07,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:22:07,606.606 INFO    ] time= 19/06/2026 02:22:07
[2026-06-19 02:22:07,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:22:07,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:22:07,741.741 INFO    ] No existing commands found in stream
[2026-06-19 02:22:12,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:22:12,756.756 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 02:22:15,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:22:15,027.027 INFO    ] Checking for system updates...
[2026-06-19 02:22:15,064.064 INFO    ] 200
[2026-06-19 02:22:15,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:15,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:22:15,123.123 INFO    ] No update needed
[2026-06-19 02:22:15,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 02:22:15,164.164 INFO    ] 200
[2026-06-19 02:22:15,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:15,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:22:15,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:22:15,260.260 INFO    ] No camera update needed
[2026-06-19 02:22:15,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:22:15,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:22:15,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:22:15,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:22:17,318.318 INFO    ] ================================================
[2026-06-19 02:22:17,335.335 INFO    ] Launching Daemon at Fri Jun 19 02:22:17 IST 2026
[2026-06-19 02:22:17,346.346 INFO    ] ================================================
[2026-06-19 02:22:17,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:22:17
[2026-06-19 02:22:18,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:22:18,806.806 INFO    ] Initializing speech engine...
[2026-06-19 02:22:18,812.812 INFO    ] 2026-06-19 02:22:18
[2026-06-19 02:22:19,073.073 INFO    ] 2026-06-19 02:22:19
[2026-06-19 02:22:19,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:22:19,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:22:19,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:22:19,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:22:19,430.430 INFO    ] time= 19/06/2026 02:22:19
[2026-06-19 02:22:19,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:22:19,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:22:19,594.594 INFO    ] No existing commands found in stream
[2026-06-19 02:22:24,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:22:24,633.633 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 02:22:26,717.717 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:22:26,719.719 INFO    ] Checking for system updates...
[2026-06-19 02:22:26,756.756 INFO    ] 200
[2026-06-19 02:22:26,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:26,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:22:26,822.822 INFO    ] No update needed
[2026-06-19 02:22:26,824.824 INFO    ] Checking for camera pi updates...
[2026-06-19 02:22:26,858.858 INFO    ] 200
[2026-06-19 02:22:26,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:26,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:22:26,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:22:26,937.937 INFO    ] No camera update needed
[2026-06-19 02:22:26,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:22:26,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:22:26,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:22:26,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:22:29,996.996 INFO    ] ================================================
[2026-06-19 02:22:29,012.012 INFO    ] Launching Daemon at Fri Jun 19 02:22:29 IST 2026
[2026-06-19 02:22:29,023.023 INFO    ] ================================================
[2026-06-19 02:22:29,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:22:29
[2026-06-19 02:22:30,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:22:30,465.465 INFO    ] Initializing speech engine...
[2026-06-19 02:22:30,470.470 INFO    ] 2026-06-19 02:22:30
[2026-06-19 02:22:30,739.739 INFO    ] 2026-06-19 02:22:30
[2026-06-19 02:22:30,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:22:31,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:22:31,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:22:31,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:22:31,281.281 INFO    ] time= 19/06/2026 02:22:31
[2026-06-19 02:22:31,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:22:31,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:22:31,404.404 INFO    ] No existing commands found in stream
[2026-06-19 02:22:36,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:22:36,430.430 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 02:22:40,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:22:40,369.369 INFO    ] Checking for system updates...
[2026-06-19 02:22:40,411.411 INFO    ] 200
[2026-06-19 02:22:40,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:40,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:22:40,469.469 INFO    ] No update needed
[2026-06-19 02:22:40,471.471 INFO    ] Checking for camera pi updates...
[2026-06-19 02:22:40,506.506 INFO    ] 200
[2026-06-19 02:22:40,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:40,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:22:40,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:22:40,606.606 INFO    ] No camera update needed
[2026-06-19 02:22:40,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:22:40,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:22:40,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:22:40,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:22:42,663.663 INFO    ] ================================================
[2026-06-19 02:22:42,679.679 INFO    ] Launching Daemon at Fri Jun 19 02:22:42 IST 2026
[2026-06-19 02:22:42,691.691 INFO    ] ================================================
[2026-06-19 02:22:43,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:22:43
[2026-06-19 02:22:43,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:22:44,092.092 INFO    ] Initializing speech engine...
[2026-06-19 02:22:44,099.099 INFO    ] 2026-06-19 02:22:44
[2026-06-19 02:22:44,374.374 INFO    ] 2026-06-19 02:22:44
[2026-06-19 02:22:44,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:22:44,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:22:44,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:22:44,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:22:44,729.729 INFO    ] time= 19/06/2026 02:22:44
[2026-06-19 02:22:44,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:22:44,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:22:44,826.826 INFO    ] No existing commands found in stream
[2026-06-19 02:22:49,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:22:49,841.841 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 02:22:52,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:22:52,740.740 INFO    ] Checking for system updates...
[2026-06-19 02:22:52,777.777 INFO    ] 200
[2026-06-19 02:22:52,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:52,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:22:52,834.834 INFO    ] No update needed
[2026-06-19 02:22:52,837.837 INFO    ] Checking for camera pi updates...
[2026-06-19 02:22:52,870.870 INFO    ] 200
[2026-06-19 02:22:52,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:22:52,920.920 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:22:52,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:22:52,965.965 INFO    ] No camera update needed
[2026-06-19 02:22:52,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:22:52,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:22:52,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:22:52,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:22:55,021.021 INFO    ] ================================================
[2026-06-19 02:22:55,041.041 INFO    ] Launching Daemon at Fri Jun 19 02:22:55 IST 2026
[2026-06-19 02:22:55,052.052 INFO    ] ================================================
[2026-06-19 02:22:55,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:22:55
[2026-06-19 02:22:56,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:22:56,741.741 INFO    ] Initializing speech engine...
[2026-06-19 02:22:56,754.754 INFO    ] 2026-06-19 02:22:56
[2026-06-19 02:22:57,071.071 INFO    ] 2026-06-19 02:22:57
[2026-06-19 02:22:57,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:22:57,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:22:57,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:22:57,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:22:57,583.583 INFO    ] time= 19/06/2026 02:22:57
[2026-06-19 02:22:57,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:22:57,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:22:57,733.733 INFO    ] No existing commands found in stream
[2026-06-19 02:23:02,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:23:02,751.751 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 02:23:06,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:23:06,992.992 INFO    ] Checking for system updates...
[2026-06-19 02:23:07,033.033 INFO    ] 200
[2026-06-19 02:23:07,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:07,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:23:07,103.103 INFO    ] No update needed
[2026-06-19 02:23:07,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 02:23:07,145.145 INFO    ] 200
[2026-06-19 02:23:07,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:07,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:23:07,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:23:07,248.248 INFO    ] No camera update needed
[2026-06-19 02:23:07,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:23:07,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:23:07,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:23:07,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:23:09,309.309 INFO    ] ================================================
[2026-06-19 02:23:09,325.325 INFO    ] Launching Daemon at Fri Jun 19 02:23:09 IST 2026
[2026-06-19 02:23:09,336.336 INFO    ] ================================================
[2026-06-19 02:23:09,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:23:09
[2026-06-19 02:23:10,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:23:10,800.800 INFO    ] Initializing speech engine...
[2026-06-19 02:23:10,808.808 INFO    ] 2026-06-19 02:23:10
[2026-06-19 02:23:11,067.067 INFO    ] 2026-06-19 02:23:11
[2026-06-19 02:23:11,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:23:11,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:23:11,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:23:11,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:23:11,506.506 INFO    ] time= 19/06/2026 02:23:11
[2026-06-19 02:23:11,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:23:11,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:23:11,675.675 INFO    ] No existing commands found in stream
[2026-06-19 02:23:16,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:23:16,689.689 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 02:23:21,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:23:21,089.089 INFO    ] Checking for system updates...
[2026-06-19 02:23:21,126.126 INFO    ] 200
[2026-06-19 02:23:21,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:21,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:23:21,193.193 INFO    ] No update needed
[2026-06-19 02:23:21,196.196 INFO    ] Checking for camera pi updates...
[2026-06-19 02:23:21,232.232 INFO    ] 200
[2026-06-19 02:23:21,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:21,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:23:21,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:23:21,335.335 INFO    ] No camera update needed
[2026-06-19 02:23:21,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:23:21,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:23:21,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:23:21,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:23:23,394.394 INFO    ] ================================================
[2026-06-19 02:23:23,414.414 INFO    ] Launching Daemon at Fri Jun 19 02:23:23 IST 2026
[2026-06-19 02:23:23,431.431 INFO    ] ================================================
[2026-06-19 02:23:24,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:23:24
[2026-06-19 02:23:24,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:23:24,989.989 INFO    ] Initializing speech engine...
[2026-06-19 02:23:25,003.003 INFO    ] 2026-06-19 02:23:24
[2026-06-19 02:23:25,313.313 INFO    ] 2026-06-19 02:23:25
[2026-06-19 02:23:25,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:23:25,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:23:25,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:23:25,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:23:25,788.788 INFO    ] time= 19/06/2026 02:23:25
[2026-06-19 02:23:25,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:23:25,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:23:25,904.904 INFO    ] No existing commands found in stream
[2026-06-19 02:23:30,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:23:30,919.919 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 02:23:33,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:23:33,429.429 INFO    ] Checking for system updates...
[2026-06-19 02:23:33,472.472 INFO    ] 200
[2026-06-19 02:23:33,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:33,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:23:33,545.545 INFO    ] No update needed
[2026-06-19 02:23:33,548.548 INFO    ] Checking for camera pi updates...
[2026-06-19 02:23:33,586.586 INFO    ] 200
[2026-06-19 02:23:33,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:33,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:23:33,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:23:33,679.679 INFO    ] No camera update needed
[2026-06-19 02:23:33,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:23:33,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:23:33,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:23:33,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:23:35,736.736 INFO    ] ================================================
[2026-06-19 02:23:35,751.751 INFO    ] Launching Daemon at Fri Jun 19 02:23:35 IST 2026
[2026-06-19 02:23:35,762.762 INFO    ] ================================================
[2026-06-19 02:23:36,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:23:36
[2026-06-19 02:23:36,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:23:37,201.201 INFO    ] Initializing speech engine...
[2026-06-19 02:23:37,207.207 INFO    ] 2026-06-19 02:23:37
[2026-06-19 02:23:37,451.451 INFO    ] 2026-06-19 02:23:37
[2026-06-19 02:23:37,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:23:37,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:23:37,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:23:37,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:23:37,883.883 INFO    ] time= 19/06/2026 02:23:37
[2026-06-19 02:23:37,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:23:38,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:23:38,063.063 INFO    ] No existing commands found in stream
[2026-06-19 02:23:43,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:23:43,078.078 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 02:23:43,905.905 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:23:43,908.908 INFO    ] Checking for system updates...
[2026-06-19 02:23:43,945.945 INFO    ] 200
[2026-06-19 02:23:43,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:44,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:23:44,004.004 INFO    ] No update needed
[2026-06-19 02:23:44,006.006 INFO    ] Checking for camera pi updates...
[2026-06-19 02:23:44,044.044 INFO    ] 200
[2026-06-19 02:23:44,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:44,093.093 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:23:44,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:23:44,141.141 INFO    ] No camera update needed
[2026-06-19 02:23:44,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:23:44,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:23:44,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:23:44,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:23:46,197.197 INFO    ] ================================================
[2026-06-19 02:23:46,213.213 INFO    ] Launching Daemon at Fri Jun 19 02:23:46 IST 2026
[2026-06-19 02:23:46,224.224 INFO    ] ================================================
[2026-06-19 02:23:46,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:23:46
[2026-06-19 02:23:47,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:23:47,655.655 INFO    ] Initializing speech engine...
[2026-06-19 02:23:47,664.664 INFO    ] 2026-06-19 02:23:47
[2026-06-19 02:23:47,931.931 INFO    ] 2026-06-19 02:23:47
[2026-06-19 02:23:47,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:23:48,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:23:48,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:23:48,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:23:48,356.356 INFO    ] time= 19/06/2026 02:23:48
[2026-06-19 02:23:48,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:23:48,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:23:48,519.519 INFO    ] No existing commands found in stream
[2026-06-19 02:23:53,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:23:53,533.533 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 02:23:57,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:23:57,627.627 INFO    ] Checking for system updates...
[2026-06-19 02:23:57,663.663 INFO    ] 200
[2026-06-19 02:23:57,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:57,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:23:57,722.722 INFO    ] No update needed
[2026-06-19 02:23:57,724.724 INFO    ] Checking for camera pi updates...
[2026-06-19 02:23:57,763.763 INFO    ] 200
[2026-06-19 02:23:57,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:23:57,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:23:57,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:23:57,863.863 INFO    ] No camera update needed
[2026-06-19 02:23:57,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:23:57,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:23:57,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:23:57,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:23:59,919.919 INFO    ] ================================================
[2026-06-19 02:23:59,934.934 INFO    ] Launching Daemon at Fri Jun 19 02:23:59 IST 2026
[2026-06-19 02:23:59,945.945 INFO    ] ================================================
[2026-06-19 02:24:00,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:24:00
[2026-06-19 02:24:01,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:24:01,752.752 INFO    ] Initializing speech engine...
[2026-06-19 02:24:01,759.759 INFO    ] 2026-06-19 02:24:01
[2026-06-19 02:24:02,110.110 INFO    ] 2026-06-19 02:24:02
[2026-06-19 02:24:02,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:24:02,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:24:02,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:24:02,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:24:02,586.586 INFO    ] time= 19/06/2026 02:24:02
[2026-06-19 02:24:02,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:24:02,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:24:02,740.740 INFO    ] No existing commands found in stream
[2026-06-19 02:24:07,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:24:07,759.759 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 02:24:08,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:24:08,739.739 INFO    ] Checking for system updates...
[2026-06-19 02:24:08,779.779 INFO    ] 200
[2026-06-19 02:24:08,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:08,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:24:08,843.843 INFO    ] No update needed
[2026-06-19 02:24:08,846.846 INFO    ] Checking for camera pi updates...
[2026-06-19 02:24:08,880.880 INFO    ] 200
[2026-06-19 02:24:08,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:08,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:24:08,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:24:08,974.974 INFO    ] No camera update needed
[2026-06-19 02:24:08,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:24:08,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:24:08,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:24:08,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:24:11,031.031 INFO    ] ================================================
[2026-06-19 02:24:11,046.046 INFO    ] Launching Daemon at Fri Jun 19 02:24:11 IST 2026
[2026-06-19 02:24:11,057.057 INFO    ] ================================================
[2026-06-19 02:24:11,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:24:11
[2026-06-19 02:24:12,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:24:12,481.481 INFO    ] Initializing speech engine...
[2026-06-19 02:24:12,491.491 INFO    ] 2026-06-19 02:24:12
[2026-06-19 02:24:12,735.735 INFO    ] 2026-06-19 02:24:12
[2026-06-19 02:24:12,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:24:13,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:24:13,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:24:13,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:24:13,207.207 INFO    ] time= 19/06/2026 02:24:13
[2026-06-19 02:24:13,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:24:13,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:24:13,352.352 INFO    ] No existing commands found in stream
[2026-06-19 02:24:18,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:24:18,367.367 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 02:24:20,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:24:20,210.210 INFO    ] Checking for system updates...
[2026-06-19 02:24:20,246.246 INFO    ] 200
[2026-06-19 02:24:20,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:20,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:24:20,305.305 INFO    ] No update needed
[2026-06-19 02:24:20,307.307 INFO    ] Checking for camera pi updates...
[2026-06-19 02:24:20,344.344 INFO    ] 200
[2026-06-19 02:24:20,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:20,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:24:20,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:24:20,442.442 INFO    ] No camera update needed
[2026-06-19 02:24:20,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:24:20,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:24:20,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:24:20,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:24:22,498.498 INFO    ] ================================================
[2026-06-19 02:24:22,513.513 INFO    ] Launching Daemon at Fri Jun 19 02:24:22 IST 2026
[2026-06-19 02:24:22,524.524 INFO    ] ================================================
[2026-06-19 02:24:23,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:24:23
[2026-06-19 02:24:23,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:24:23,939.939 INFO    ] Initializing speech engine...
[2026-06-19 02:24:23,947.947 INFO    ] 2026-06-19 02:24:23
[2026-06-19 02:24:24,242.242 INFO    ] 2026-06-19 02:24:24
[2026-06-19 02:24:24,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:24:24,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:24:24,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:24:24,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:24:24,632.632 INFO    ] time= 19/06/2026 02:24:24
[2026-06-19 02:24:24,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:24:24,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:24:24,740.740 INFO    ] No existing commands found in stream
[2026-06-19 02:24:29,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:24:29,754.754 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 02:24:32,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:24:32,232.232 INFO    ] Checking for system updates...
[2026-06-19 02:24:32,278.278 INFO    ] 200
[2026-06-19 02:24:32,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:32,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:24:32,358.358 INFO    ] No update needed
[2026-06-19 02:24:32,362.362 INFO    ] Checking for camera pi updates...
[2026-06-19 02:24:32,401.401 INFO    ] 200
[2026-06-19 02:24:32,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:32,446.446 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:24:32,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:24:32,481.481 INFO    ] No camera update needed
[2026-06-19 02:24:32,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:24:32,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:24:32,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:24:32,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:24:34,539.539 INFO    ] ================================================
[2026-06-19 02:24:34,554.554 INFO    ] Launching Daemon at Fri Jun 19 02:24:34 IST 2026
[2026-06-19 02:24:34,565.565 INFO    ] ================================================
[2026-06-19 02:24:35,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:24:35
[2026-06-19 02:24:35,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:24:36,176.176 INFO    ] Initializing speech engine...
[2026-06-19 02:24:36,188.188 INFO    ] 2026-06-19 02:24:36
[2026-06-19 02:24:36,455.455 INFO    ] 2026-06-19 02:24:36
[2026-06-19 02:24:36,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:24:36,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:24:36,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:24:36,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:24:36,937.937 INFO    ] time= 19/06/2026 02:24:36
[2026-06-19 02:24:37,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:24:37,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:24:37,138.138 INFO    ] No existing commands found in stream
[2026-06-19 02:24:42,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:24:42,167.167 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 02:24:45,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:24:45,068.068 INFO    ] Checking for system updates...
[2026-06-19 02:24:45,109.109 INFO    ] 200
[2026-06-19 02:24:45,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:45,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:24:45,175.175 INFO    ] No update needed
[2026-06-19 02:24:45,178.178 INFO    ] Checking for camera pi updates...
[2026-06-19 02:24:45,216.216 INFO    ] 200
[2026-06-19 02:24:45,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:45,265.265 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:24:45,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:24:45,306.306 INFO    ] No camera update needed
[2026-06-19 02:24:45,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:24:45,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:24:45,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:24:45,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:24:47,365.365 INFO    ] ================================================
[2026-06-19 02:24:47,380.380 INFO    ] Launching Daemon at Fri Jun 19 02:24:47 IST 2026
[2026-06-19 02:24:47,391.391 INFO    ] ================================================
[2026-06-19 02:24:47,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:24:47
[2026-06-19 02:24:48,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:24:48,795.795 INFO    ] Initializing speech engine...
[2026-06-19 02:24:48,808.808 INFO    ] 2026-06-19 02:24:48
[2026-06-19 02:24:49,076.076 INFO    ] 2026-06-19 02:24:49
[2026-06-19 02:24:49,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:24:49,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:24:49,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:24:49,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:24:49,434.434 INFO    ] time= 19/06/2026 02:24:49
[2026-06-19 02:24:49,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:24:49,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:24:49,533.533 INFO    ] No existing commands found in stream
[2026-06-19 02:24:54,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:24:54,572.572 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 02:24:58,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:24:58,204.204 INFO    ] Checking for system updates...
[2026-06-19 02:24:58,242.242 INFO    ] 200
[2026-06-19 02:24:58,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:58,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:24:58,300.300 INFO    ] No update needed
[2026-06-19 02:24:58,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 02:24:58,337.337 INFO    ] 200
[2026-06-19 02:24:58,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:24:58,385.385 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:24:58,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:24:58,434.434 INFO    ] No camera update needed
[2026-06-19 02:24:58,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:24:58,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:24:58,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:24:58,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:25:00,488.488 INFO    ] ================================================
[2026-06-19 02:25:00,503.503 INFO    ] Launching Daemon at Fri Jun 19 02:25:00 IST 2026
[2026-06-19 02:25:00,514.514 INFO    ] ================================================
[2026-06-19 02:25:01,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:25:01
[2026-06-19 02:25:01,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:25:02,557.557 INFO    ] Initializing speech engine...
[2026-06-19 02:25:02,561.561 INFO    ] 2026-06-19 02:25:02
[2026-06-19 02:25:03,051.051 INFO    ] 2026-06-19 02:25:03
[2026-06-19 02:25:03,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:25:03,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:25:03,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:25:03,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:25:03,471.471 INFO    ] time= 19/06/2026 02:25:03
[2026-06-19 02:25:03,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:25:03,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:25:03,541.541 INFO    ] No existing commands found in stream
[2026-06-19 02:25:08,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:25:08,551.551 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 02:25:09,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:25:09,821.821 INFO    ] Checking for system updates...
[2026-06-19 02:25:09,857.857 INFO    ] 200
[2026-06-19 02:25:09,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:09,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:25:09,922.922 INFO    ] No update needed
[2026-06-19 02:25:09,925.925 INFO    ] Checking for camera pi updates...
[2026-06-19 02:25:09,959.959 INFO    ] 200
[2026-06-19 02:25:09,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:10,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:25:10,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:25:10,058.058 INFO    ] No camera update needed
[2026-06-19 02:25:10,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:25:10,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:25:10,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:25:10,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:25:12,116.116 INFO    ] ================================================
[2026-06-19 02:25:12,131.131 INFO    ] Launching Daemon at Fri Jun 19 02:25:12 IST 2026
[2026-06-19 02:25:12,141.141 INFO    ] ================================================
[2026-06-19 02:25:12,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:25:12
[2026-06-19 02:25:13,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:25:13,559.559 INFO    ] Initializing speech engine...
[2026-06-19 02:25:13,566.566 INFO    ] 2026-06-19 02:25:13
[2026-06-19 02:25:13,843.843 INFO    ] 2026-06-19 02:25:13
[2026-06-19 02:25:13,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:25:14,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:25:14,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:25:14,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:25:14,315.315 INFO    ] time= 19/06/2026 02:25:14
[2026-06-19 02:25:14,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:25:14,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:25:14,486.486 INFO    ] No existing commands found in stream
[2026-06-19 02:25:19,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:25:19,501.501 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 02:25:20,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:25:20,704.704 INFO    ] Checking for system updates...
[2026-06-19 02:25:20,740.740 INFO    ] 200
[2026-06-19 02:25:20,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:20,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:25:20,798.798 INFO    ] No update needed
[2026-06-19 02:25:20,800.800 INFO    ] Checking for camera pi updates...
[2026-06-19 02:25:20,835.835 INFO    ] 200
[2026-06-19 02:25:20,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:20,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:25:20,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:25:20,928.928 INFO    ] No camera update needed
[2026-06-19 02:25:20,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:25:20,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:25:20,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:25:20,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:25:22,984.984 INFO    ] ================================================
[2026-06-19 02:25:23,999.999 INFO    ] Launching Daemon at Fri Jun 19 02:25:22 IST 2026
[2026-06-19 02:25:23,010.010 INFO    ] ================================================
[2026-06-19 02:25:23,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:25:23
[2026-06-19 02:25:24,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:25:24,452.452 INFO    ] Initializing speech engine...
[2026-06-19 02:25:24,459.459 INFO    ] 2026-06-19 02:25:24
[2026-06-19 02:25:24,719.719 INFO    ] 2026-06-19 02:25:24
[2026-06-19 02:25:24,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:25:24,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:25:24,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:25:25,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:25:25,127.127 INFO    ] time= 19/06/2026 02:25:25
[2026-06-19 02:25:25,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:25:25,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:25:25,283.283 INFO    ] No existing commands found in stream
[2026-06-19 02:25:30,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:25:30,307.307 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 02:25:34,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:25:34,349.349 INFO    ] Checking for system updates...
[2026-06-19 02:25:34,389.389 INFO    ] 200
[2026-06-19 02:25:34,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:34,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:25:34,446.446 INFO    ] No update needed
[2026-06-19 02:25:34,449.449 INFO    ] Checking for camera pi updates...
[2026-06-19 02:25:34,483.483 INFO    ] 200
[2026-06-19 02:25:34,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:34,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:25:34,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:25:34,680.680 INFO    ] No camera update needed
[2026-06-19 02:25:34,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:25:34,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:25:34,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:25:34,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:25:36,735.735 INFO    ] ================================================
[2026-06-19 02:25:36,750.750 INFO    ] Launching Daemon at Fri Jun 19 02:25:36 IST 2026
[2026-06-19 02:25:36,761.761 INFO    ] ================================================
[2026-06-19 02:25:37,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:25:37
[2026-06-19 02:25:38,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:25:38,397.397 INFO    ] Initializing speech engine...
[2026-06-19 02:25:38,403.403 INFO    ] 2026-06-19 02:25:38
[2026-06-19 02:25:38,704.704 INFO    ] 2026-06-19 02:25:38
[2026-06-19 02:25:38,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:25:38,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:25:38,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:25:39,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:25:39,107.107 INFO    ] time= 19/06/2026 02:25:39
[2026-06-19 02:25:39,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:25:39,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:25:39,258.258 INFO    ] No existing commands found in stream
[2026-06-19 02:25:44,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:25:44,292.292 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 02:25:47,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:25:47,581.581 INFO    ] Checking for system updates...
[2026-06-19 02:25:47,617.617 INFO    ] 200
[2026-06-19 02:25:47,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:47,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:25:47,681.681 INFO    ] No update needed
[2026-06-19 02:25:47,683.683 INFO    ] Checking for camera pi updates...
[2026-06-19 02:25:47,717.717 INFO    ] 200
[2026-06-19 02:25:47,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:47,759.759 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:25:47,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:25:47,799.799 INFO    ] No camera update needed
[2026-06-19 02:25:47,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:25:47,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:25:47,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:25:47,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:25:49,854.854 INFO    ] ================================================
[2026-06-19 02:25:49,869.869 INFO    ] Launching Daemon at Fri Jun 19 02:25:49 IST 2026
[2026-06-19 02:25:49,880.880 INFO    ] ================================================
[2026-06-19 02:25:50,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:25:50
[2026-06-19 02:25:51,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:25:51,343.343 INFO    ] Initializing speech engine...
[2026-06-19 02:25:51,357.357 INFO    ] 2026-06-19 02:25:51
[2026-06-19 02:25:51,626.626 INFO    ] 2026-06-19 02:25:51
[2026-06-19 02:25:51,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:25:51,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:25:51,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:25:52,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:25:52,010.010 INFO    ] time= 19/06/2026 02:25:52
[2026-06-19 02:25:52,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:25:52,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:25:52,139.139 INFO    ] No existing commands found in stream
[2026-06-19 02:25:57,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:25:57,154.154 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 02:25:57,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:25:57,870.870 INFO    ] Checking for system updates...
[2026-06-19 02:25:57,912.912 INFO    ] 200
[2026-06-19 02:25:57,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:57,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:25:57,973.973 INFO    ] No update needed
[2026-06-19 02:25:57,976.976 INFO    ] Checking for camera pi updates...
[2026-06-19 02:25:58,016.016 INFO    ] 200
[2026-06-19 02:25:58,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:25:58,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:25:58,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:25:58,111.111 INFO    ] No camera update needed
[2026-06-19 02:25:58,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:25:58,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:25:58,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:25:58,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:26:00,174.174 INFO    ] ================================================
[2026-06-19 02:26:00,189.189 INFO    ] Launching Daemon at Fri Jun 19 02:26:00 IST 2026
[2026-06-19 02:26:00,200.200 INFO    ] ================================================
[2026-06-19 02:26:00,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:26:00
[2026-06-19 02:26:01,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:26:01,869.869 INFO    ] Initializing speech engine...
[2026-06-19 02:26:01,882.882 INFO    ] 2026-06-19 02:26:01
[2026-06-19 02:26:02,192.192 INFO    ] 2026-06-19 02:26:02
[2026-06-19 02:26:02,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:26:02,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:26:02,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:26:02,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:26:02,628.628 INFO    ] time= 19/06/2026 02:26:02
[2026-06-19 02:26:02,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:26:02,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:26:02,720.720 INFO    ] No existing commands found in stream
[2026-06-19 02:26:07,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:26:07,733.733 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 02:26:09,523.523 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:26:09,525.525 INFO    ] Checking for system updates...
[2026-06-19 02:26:09,563.563 INFO    ] 200
[2026-06-19 02:26:09,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:09,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:26:09,625.625 INFO    ] No update needed
[2026-06-19 02:26:09,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 02:26:09,661.661 INFO    ] 200
[2026-06-19 02:26:09,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:09,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:26:09,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:26:09,758.758 INFO    ] No camera update needed
[2026-06-19 02:26:09,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:26:09,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:26:09,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:26:09,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:26:11,814.814 INFO    ] ================================================
[2026-06-19 02:26:11,829.829 INFO    ] Launching Daemon at Fri Jun 19 02:26:11 IST 2026
[2026-06-19 02:26:11,840.840 INFO    ] ================================================
[2026-06-19 02:26:12,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:26:12
[2026-06-19 02:26:13,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:26:13,387.387 INFO    ] Initializing speech engine...
[2026-06-19 02:26:13,396.396 INFO    ] 2026-06-19 02:26:13
[2026-06-19 02:26:13,667.667 INFO    ] 2026-06-19 02:26:13
[2026-06-19 02:26:13,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:26:13,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:26:13,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:26:14,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:26:14,074.074 INFO    ] time= 19/06/2026 02:26:14
[2026-06-19 02:26:14,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:26:14,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:26:14,254.254 INFO    ] No existing commands found in stream
[2026-06-19 02:26:19,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:26:19,269.269 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 02:26:20,201.201 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:26:20,204.204 INFO    ] Checking for system updates...
[2026-06-19 02:26:20,241.241 INFO    ] 200
[2026-06-19 02:26:20,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:20,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:26:20,299.299 INFO    ] No update needed
[2026-06-19 02:26:20,302.302 INFO    ] Checking for camera pi updates...
[2026-06-19 02:26:20,337.337 INFO    ] 200
[2026-06-19 02:26:20,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:20,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:26:20,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:26:20,429.429 INFO    ] No camera update needed
[2026-06-19 02:26:20,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:26:20,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:26:20,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:26:20,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:26:22,486.486 INFO    ] ================================================
[2026-06-19 02:26:22,501.501 INFO    ] Launching Daemon at Fri Jun 19 02:26:22 IST 2026
[2026-06-19 02:26:22,512.512 INFO    ] ================================================
[2026-06-19 02:26:23,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:26:23
[2026-06-19 02:26:23,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:26:23,931.931 INFO    ] Initializing speech engine...
[2026-06-19 02:26:23,934.934 INFO    ] 2026-06-19 02:26:23
[2026-06-19 02:26:24,188.188 INFO    ] 2026-06-19 02:26:24
[2026-06-19 02:26:24,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:26:24,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:26:24,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:26:24,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:26:24,563.563 INFO    ] time= 19/06/2026 02:26:24
[2026-06-19 02:26:24,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:26:24,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:26:24,723.723 INFO    ] No existing commands found in stream
[2026-06-19 02:26:29,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:26:29,756.756 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 02:26:32,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:26:32,495.495 INFO    ] Checking for system updates...
[2026-06-19 02:26:32,538.538 INFO    ] 200
[2026-06-19 02:26:32,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:32,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:26:32,598.598 INFO    ] No update needed
[2026-06-19 02:26:32,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 02:26:32,635.635 INFO    ] 200
[2026-06-19 02:26:32,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:32,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:26:32,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:26:32,718.718 INFO    ] No camera update needed
[2026-06-19 02:26:32,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:26:32,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:26:32,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:26:32,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:26:34,777.777 INFO    ] ================================================
[2026-06-19 02:26:34,792.792 INFO    ] Launching Daemon at Fri Jun 19 02:26:34 IST 2026
[2026-06-19 02:26:34,802.802 INFO    ] ================================================
[2026-06-19 02:26:35,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:26:35
[2026-06-19 02:26:36,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:26:36,363.363 INFO    ] Initializing speech engine...
[2026-06-19 02:26:36,376.376 INFO    ] 2026-06-19 02:26:36
[2026-06-19 02:26:36,652.652 INFO    ] 2026-06-19 02:26:36
[2026-06-19 02:26:36,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:26:36,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:26:36,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:26:37,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:26:37,193.193 INFO    ] time= 19/06/2026 02:26:37
[2026-06-19 02:26:37,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:26:37,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:26:37,313.313 INFO    ] No existing commands found in stream
[2026-06-19 02:26:42,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:26:42,338.338 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 02:26:44,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:26:44,279.279 INFO    ] Checking for system updates...
[2026-06-19 02:26:44,316.316 INFO    ] 200
[2026-06-19 02:26:44,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:44,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:26:44,397.397 INFO    ] No update needed
[2026-06-19 02:26:44,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 02:26:44,438.438 INFO    ] 200
[2026-06-19 02:26:44,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:44,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:26:44,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:26:44,589.589 INFO    ] No camera update needed
[2026-06-19 02:26:44,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:26:44,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:26:44,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:26:44,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:26:46,648.648 INFO    ] ================================================
[2026-06-19 02:26:46,663.663 INFO    ] Launching Daemon at Fri Jun 19 02:26:46 IST 2026
[2026-06-19 02:26:46,674.674 INFO    ] ================================================
[2026-06-19 02:26:47,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:26:47
[2026-06-19 02:26:47,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:26:48,101.101 INFO    ] Initializing speech engine...
[2026-06-19 02:26:48,126.126 INFO    ] 2026-06-19 02:26:48
[2026-06-19 02:26:48,396.396 INFO    ] 2026-06-19 02:26:48
[2026-06-19 02:26:48,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:26:48,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:26:48,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:26:48,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:26:48,765.765 INFO    ] time= 19/06/2026 02:26:48
[2026-06-19 02:26:48,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:26:48,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:26:48,889.889 INFO    ] No existing commands found in stream
[2026-06-19 02:26:53,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:26:53,904.904 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 02:26:54,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:26:54,428.428 INFO    ] Checking for system updates...
[2026-06-19 02:26:54,465.465 INFO    ] 200
[2026-06-19 02:26:54,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:54,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:26:54,523.523 INFO    ] No update needed
[2026-06-19 02:26:54,526.526 INFO    ] Checking for camera pi updates...
[2026-06-19 02:26:54,561.561 INFO    ] 200
[2026-06-19 02:26:54,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:26:54,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:26:54,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:26:54,659.659 INFO    ] No camera update needed
[2026-06-19 02:26:54,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:26:54,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:26:54,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:26:54,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:26:56,716.716 INFO    ] ================================================
[2026-06-19 02:26:56,731.731 INFO    ] Launching Daemon at Fri Jun 19 02:26:56 IST 2026
[2026-06-19 02:26:56,742.742 INFO    ] ================================================
[2026-06-19 02:26:57,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:26:57
[2026-06-19 02:26:57,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:26:58,156.156 INFO    ] Initializing speech engine...
[2026-06-19 02:26:58,163.163 INFO    ] 2026-06-19 02:26:58
[2026-06-19 02:26:58,451.451 INFO    ] 2026-06-19 02:26:58
[2026-06-19 02:26:58,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:26:58,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:26:58,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:26:58,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:26:58,843.843 INFO    ] time= 19/06/2026 02:26:58
[2026-06-19 02:26:58,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:26:58,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:26:58,942.942 INFO    ] No existing commands found in stream
[2026-06-19 02:27:03,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:27:03,958.958 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 02:27:08,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:27:08,363.363 INFO    ] Checking for system updates...
[2026-06-19 02:27:08,400.400 INFO    ] 200
[2026-06-19 02:27:08,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:27:08,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:27:08,463.463 INFO    ] No update needed
[2026-06-19 02:27:08,465.465 INFO    ] Checking for camera pi updates...
[2026-06-19 02:27:08,499.499 INFO    ] 200
[2026-06-19 02:27:08,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:27:08,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:27:08,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:27:08,590.590 INFO    ] No camera update needed
[2026-06-19 02:27:08,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:27:08,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:27:08,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:27:08,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:27:10,646.646 INFO    ] ================================================
[2026-06-19 02:27:10,661.661 INFO    ] Launching Daemon at Fri Jun 19 02:27:10 IST 2026
[2026-06-19 02:27:10,672.672 INFO    ] ================================================
[2026-06-19 02:27:11,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:27:11
[2026-06-19 02:27:11,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:27:12,151.151 INFO    ] Initializing speech engine...
[2026-06-19 02:27:12,161.161 INFO    ] 2026-06-19 02:27:12
[2026-06-19 02:27:12,419.419 INFO    ] 2026-06-19 02:27:12
[2026-06-19 02:27:12,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:27:12,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:27:12,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:27:12,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:27:12,885.885 INFO    ] time= 19/06/2026 02:27:12
[2026-06-19 02:27:12,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:27:12,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:27:13,028.028 INFO    ] No existing commands found in stream
[2026-06-19 02:27:18,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:27:18,042.042 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 02:27:19,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:27:19,246.246 INFO    ] Checking for system updates...
[2026-06-19 02:27:19,285.285 INFO    ] 200
[2026-06-19 02:27:19,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:27:19,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:27:19,348.348 INFO    ] No update needed
[2026-06-19 02:27:19,350.350 INFO    ] Checking for camera pi updates...
[2026-06-19 02:27:19,384.384 INFO    ] 200
[2026-06-19 02:27:19,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:27:19,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:27:19,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:27:19,490.490 INFO    ] No camera update needed
[2026-06-19 02:27:19,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:27:19,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:27:19,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:27:19,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:27:21,552.552 INFO    ] ================================================
[2026-06-19 02:27:21,568.568 INFO    ] Launching Daemon at Fri Jun 19 02:27:21 IST 2026
[2026-06-19 02:27:21,578.578 INFO    ] ================================================
[2026-06-19 02:27:22,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:27:22
[2026-06-19 02:27:22,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:27:23,006.006 INFO    ] Initializing speech engine...
[2026-06-19 02:27:23,018.018 INFO    ] 2026-06-19 02:27:23
[2026-06-19 02:27:23,270.270 INFO    ] 2026-06-19 02:27:23
[2026-06-19 02:27:23,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:27:23,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:27:23,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:27:23,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:27:23,630.630 INFO    ] time= 19/06/2026 02:27:23
[2026-06-19 02:27:23,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:27:23,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:27:23,690.690 INFO    ] No existing commands found in stream
[2026-06-19 02:27:28,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:27:28,702.702 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 02:27:33,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:27:33,013.013 INFO    ] Checking for system updates...
[2026-06-19 02:27:33,050.050 INFO    ] 200
[2026-06-19 02:27:33,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:27:33,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:27:33,113.113 INFO    ] No update needed
[2026-06-19 02:27:33,115.115 INFO    ] Checking for camera pi updates...
[2026-06-19 02:27:33,150.150 INFO    ] 200
[2026-06-19 02:27:33,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:27:33,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:27:33,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:27:33,230.230 INFO    ] No camera update needed
[2026-06-19 02:27:33,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:27:33,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:27:33,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:27:33,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:27:35,288.288 INFO    ] ================================================
[2026-06-19 02:27:35,303.303 INFO    ] Launching Daemon at Fri Jun 19 02:27:35 IST 2026
[2026-06-19 02:27:35,314.314 INFO    ] ================================================
[2026-06-19 02:27:35,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:27:35
[2026-06-19 02:27:36,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:27:36,719.719 INFO    ] Initializing speech engine...
[2026-06-19 02:27:36,732.732 INFO    ] 2026-06-19 02:27:36
[2026-06-19 02:27:36,994.994 INFO    ] 2026-06-19 02:27:36
[2026-06-19 02:27:37,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:27:37,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:27:37,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:27:37,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:27:37,476.476 INFO    ] time= 19/06/2026 02:27:37
[2026-06-19 02:27:37,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:27:37,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:27:37,610.610 INFO    ] No existing commands found in stream
[2026-06-19 02:27:42,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:27:42,625.625 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 02:27:46,795.795 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:27:46,797.797 INFO    ] Checking for system updates...
[2026-06-19 02:27:46,834.834 INFO    ] 200
[2026-06-19 02:27:46,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:27:46,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:27:46,892.892 INFO    ] No update needed
[2026-06-19 02:27:46,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 02:27:46,931.931 INFO    ] 200
[2026-06-19 02:27:46,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:27:46,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:27:47,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:27:47,117.117 INFO    ] No camera update needed
[2026-06-19 02:27:47,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:27:47,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:27:47,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:27:47,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:27:49,180.180 INFO    ] ================================================
[2026-06-19 02:27:49,195.195 INFO    ] Launching Daemon at Fri Jun 19 02:27:49 IST 2026
[2026-06-19 02:27:49,206.206 INFO    ] ================================================
[2026-06-19 02:27:49,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:27:49
[2026-06-19 02:27:50,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:27:50,789.789 INFO    ] Initializing speech engine...
[2026-06-19 02:27:50,799.799 INFO    ] 2026-06-19 02:27:50
[2026-06-19 02:27:51,081.081 INFO    ] 2026-06-19 02:27:51
[2026-06-19 02:27:51,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:27:51,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:27:51,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:27:51,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:27:51,547.547 INFO    ] time= 19/06/2026 02:27:51
[2026-06-19 02:27:51,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:27:51,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:27:51,682.682 INFO    ] No existing commands found in stream
[2026-06-19 02:27:56,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:27:56,698.698 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 02:28:00,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:28:00,856.856 INFO    ] Checking for system updates...
[2026-06-19 02:28:00,896.896 INFO    ] 200
[2026-06-19 02:28:00,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:00,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:28:00,959.959 INFO    ] No update needed
[2026-06-19 02:28:00,961.961 INFO    ] Checking for camera pi updates...
[2026-06-19 02:28:00,999.999 INFO    ] 200
[2026-06-19 02:28:01,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:01,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:28:01,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:28:01,099.099 INFO    ] No camera update needed
[2026-06-19 02:28:01,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:28:01,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:28:01,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:28:01,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:28:03,162.162 INFO    ] ================================================
[2026-06-19 02:28:03,177.177 INFO    ] Launching Daemon at Fri Jun 19 02:28:03 IST 2026
[2026-06-19 02:28:03,188.188 INFO    ] ================================================
[2026-06-19 02:28:03,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:28:03
[2026-06-19 02:28:04,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:28:04,740.740 INFO    ] Initializing speech engine...
[2026-06-19 02:28:04,753.753 INFO    ] 2026-06-19 02:28:04
[2026-06-19 02:28:05,059.059 INFO    ] 2026-06-19 02:28:05
[2026-06-19 02:28:05,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:28:05,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:28:05,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:28:05,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:28:05,561.561 INFO    ] time= 19/06/2026 02:28:05
[2026-06-19 02:28:05,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:28:05,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:28:05,715.715 INFO    ] No existing commands found in stream
[2026-06-19 02:28:10,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:28:10,740.740 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 02:28:13,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:28:13,348.348 INFO    ] Checking for system updates...
[2026-06-19 02:28:13,386.386 INFO    ] 200
[2026-06-19 02:28:13,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:13,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:28:13,445.445 INFO    ] No update needed
[2026-06-19 02:28:13,448.448 INFO    ] Checking for camera pi updates...
[2026-06-19 02:28:13,483.483 INFO    ] 200
[2026-06-19 02:28:13,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:13,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:28:13,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:28:13,588.588 INFO    ] No camera update needed
[2026-06-19 02:28:13,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:28:13,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:28:13,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:28:13,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:28:15,648.648 INFO    ] ================================================
[2026-06-19 02:28:15,663.663 INFO    ] Launching Daemon at Fri Jun 19 02:28:15 IST 2026
[2026-06-19 02:28:15,674.674 INFO    ] ================================================
[2026-06-19 02:28:16,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:28:16
[2026-06-19 02:28:16,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:28:17,176.176 INFO    ] Initializing speech engine...
[2026-06-19 02:28:17,184.184 INFO    ] 2026-06-19 02:28:17
[2026-06-19 02:28:17,469.469 INFO    ] 2026-06-19 02:28:17
[2026-06-19 02:28:17,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:28:17,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:28:17,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:28:17,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:28:17,950.950 INFO    ] time= 19/06/2026 02:28:17
[2026-06-19 02:28:18,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:28:18,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:28:18,138.138 INFO    ] No existing commands found in stream
[2026-06-19 02:28:23,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:28:23,173.173 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 02:28:24,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:28:24,289.289 INFO    ] Checking for system updates...
[2026-06-19 02:28:24,326.326 INFO    ] 200
[2026-06-19 02:28:24,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:24,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:28:24,391.391 INFO    ] No update needed
[2026-06-19 02:28:24,394.394 INFO    ] Checking for camera pi updates...
[2026-06-19 02:28:24,428.428 INFO    ] 200
[2026-06-19 02:28:24,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:24,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:28:24,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:28:24,522.522 INFO    ] No camera update needed
[2026-06-19 02:28:24,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:28:24,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:28:24,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:28:24,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:28:26,577.577 INFO    ] ================================================
[2026-06-19 02:28:26,592.592 INFO    ] Launching Daemon at Fri Jun 19 02:28:26 IST 2026
[2026-06-19 02:28:26,603.603 INFO    ] ================================================
[2026-06-19 02:28:27,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:28:27
[2026-06-19 02:28:27,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:28:28,053.053 INFO    ] Initializing speech engine...
[2026-06-19 02:28:28,062.062 INFO    ] 2026-06-19 02:28:28
[2026-06-19 02:28:28,342.342 INFO    ] 2026-06-19 02:28:28
[2026-06-19 02:28:28,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:28:28,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:28:28,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:28:28,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:28:28,812.812 INFO    ] time= 19/06/2026 02:28:28
[2026-06-19 02:28:28,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:28:28,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:28:28,963.963 INFO    ] No existing commands found in stream
[2026-06-19 02:28:33,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:28:33,979.979 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 02:28:36,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:28:36,384.384 INFO    ] Checking for system updates...
[2026-06-19 02:28:36,422.422 INFO    ] 200
[2026-06-19 02:28:36,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:36,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:28:36,482.482 INFO    ] No update needed
[2026-06-19 02:28:36,484.484 INFO    ] Checking for camera pi updates...
[2026-06-19 02:28:36,518.518 INFO    ] 200
[2026-06-19 02:28:36,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:36,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:28:36,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:28:36,616.616 INFO    ] No camera update needed
[2026-06-19 02:28:36,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:28:36,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:28:36,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:28:36,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:28:38,670.670 INFO    ] ================================================
[2026-06-19 02:28:38,687.687 INFO    ] Launching Daemon at Fri Jun 19 02:28:38 IST 2026
[2026-06-19 02:28:38,698.698 INFO    ] ================================================
[2026-06-19 02:28:39,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:28:39
[2026-06-19 02:28:39,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:28:40,103.103 INFO    ] Initializing speech engine...
[2026-06-19 02:28:40,120.120 INFO    ] 2026-06-19 02:28:40
[2026-06-19 02:28:40,407.407 INFO    ] 2026-06-19 02:28:40
[2026-06-19 02:28:40,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:28:40,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:28:40,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:28:40,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:28:40,792.792 INFO    ] time= 19/06/2026 02:28:40
[2026-06-19 02:28:40,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:28:40,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:28:40,920.920 INFO    ] No existing commands found in stream
[2026-06-19 02:28:45,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:28:45,936.936 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 02:28:48,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:28:48,502.502 INFO    ] Checking for system updates...
[2026-06-19 02:28:48,542.542 INFO    ] 200
[2026-06-19 02:28:48,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:48,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:28:48,607.607 INFO    ] No update needed
[2026-06-19 02:28:48,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 02:28:48,643.643 INFO    ] 200
[2026-06-19 02:28:48,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:28:48,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:28:48,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:28:48,746.746 INFO    ] No camera update needed
[2026-06-19 02:28:48,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:28:48,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:28:48,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:28:48,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:28:50,802.802 INFO    ] ================================================
[2026-06-19 02:28:50,818.818 INFO    ] Launching Daemon at Fri Jun 19 02:28:50 IST 2026
[2026-06-19 02:28:50,829.829 INFO    ] ================================================
[2026-06-19 02:28:51,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:28:51
[2026-06-19 02:28:51,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:28:52,236.236 INFO    ] Initializing speech engine...
[2026-06-19 02:28:52,244.244 INFO    ] 2026-06-19 02:28:52
[2026-06-19 02:28:52,546.546 INFO    ] 2026-06-19 02:28:52
[2026-06-19 02:28:52,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:28:52,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:28:52,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:28:52,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:28:52,977.977 INFO    ] time= 19/06/2026 02:28:52
[2026-06-19 02:28:52,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:28:52,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:28:53,065.065 INFO    ] No existing commands found in stream
[2026-06-19 02:28:58,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:28:58,080.080 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 02:29:01,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:29:01,062.062 INFO    ] Checking for system updates...
[2026-06-19 02:29:01,131.131 INFO    ] 200
[2026-06-19 02:29:01,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:01,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:29:01,268.268 INFO    ] No update needed
[2026-06-19 02:29:01,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 02:29:01,337.337 INFO    ] 200
[2026-06-19 02:29:01,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:01,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:29:01,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:29:01,463.463 INFO    ] No camera update needed
[2026-06-19 02:29:01,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:29:01,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:29:01,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:29:01,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:29:03,552.552 INFO    ] ================================================
[2026-06-19 02:29:03,567.567 INFO    ] Launching Daemon at Fri Jun 19 02:29:03 IST 2026
[2026-06-19 02:29:03,578.578 INFO    ] ================================================
[2026-06-19 02:29:04,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:29:04
[2026-06-19 02:29:04,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:29:05,023.023 INFO    ] Initializing speech engine...
[2026-06-19 02:29:05,044.044 INFO    ] 2026-06-19 02:29:05
[2026-06-19 02:29:05,306.306 INFO    ] 2026-06-19 02:29:05
[2026-06-19 02:29:05,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:29:05,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:29:05,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:29:05,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:29:05,678.678 INFO    ] time= 19/06/2026 02:29:05
[2026-06-19 02:29:05,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:29:05,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:29:05,851.851 INFO    ] No existing commands found in stream
[2026-06-19 02:29:10,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:29:10,889.889 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 02:29:14,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:29:14,532.532 INFO    ] Checking for system updates...
[2026-06-19 02:29:14,570.570 INFO    ] 200
[2026-06-19 02:29:14,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:14,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:29:14,630.630 INFO    ] No update needed
[2026-06-19 02:29:14,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 02:29:14,671.671 INFO    ] 200
[2026-06-19 02:29:14,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:14,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:29:14,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:29:14,773.773 INFO    ] No camera update needed
[2026-06-19 02:29:14,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:29:14,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:29:14,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:29:14,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:29:16,834.834 INFO    ] ================================================
[2026-06-19 02:29:16,849.849 INFO    ] Launching Daemon at Fri Jun 19 02:29:16 IST 2026
[2026-06-19 02:29:16,860.860 INFO    ] ================================================
[2026-06-19 02:29:17,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:29:17
[2026-06-19 02:29:18,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:29:18,311.311 INFO    ] Initializing speech engine...
[2026-06-19 02:29:18,318.318 INFO    ] 2026-06-19 02:29:18
[2026-06-19 02:29:18,579.579 INFO    ] 2026-06-19 02:29:18
[2026-06-19 02:29:18,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:29:18,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:29:18,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:29:18,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:29:18,936.936 INFO    ] time= 19/06/2026 02:29:18
[2026-06-19 02:29:18,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:29:18,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:29:19,107.107 INFO    ] No existing commands found in stream
[2026-06-19 02:29:24,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:29:24,140.140 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 02:29:25,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:29:25,768.768 INFO    ] Checking for system updates...
[2026-06-19 02:29:25,809.809 INFO    ] 200
[2026-06-19 02:29:25,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:25,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:29:25,869.869 INFO    ] No update needed
[2026-06-19 02:29:25,871.871 INFO    ] Checking for camera pi updates...
[2026-06-19 02:29:25,911.911 INFO    ] 200
[2026-06-19 02:29:25,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:25,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:29:26,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:29:26,009.009 INFO    ] No camera update needed
[2026-06-19 02:29:26,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:29:26,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:29:26,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:29:26,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:29:28,069.069 INFO    ] ================================================
[2026-06-19 02:29:28,084.084 INFO    ] Launching Daemon at Fri Jun 19 02:29:28 IST 2026
[2026-06-19 02:29:28,095.095 INFO    ] ================================================
[2026-06-19 02:29:28,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:29:28
[2026-06-19 02:29:29,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:29:29,553.553 INFO    ] Initializing speech engine...
[2026-06-19 02:29:29,563.563 INFO    ] 2026-06-19 02:29:29
[2026-06-19 02:29:29,827.827 INFO    ] 2026-06-19 02:29:29
[2026-06-19 02:29:29,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:29:30,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:29:30,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:29:30,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:29:30,315.315 INFO    ] time= 19/06/2026 02:29:30
[2026-06-19 02:29:30,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:29:30,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:29:30,440.440 INFO    ] No existing commands found in stream
[2026-06-19 02:29:35,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:29:35,455.455 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 02:29:37,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:29:37,902.902 INFO    ] Checking for system updates...
[2026-06-19 02:29:37,940.940 INFO    ] 200
[2026-06-19 02:29:37,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:38,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:29:38,009.009 INFO    ] No update needed
[2026-06-19 02:29:38,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 02:29:38,047.047 INFO    ] 200
[2026-06-19 02:29:38,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:38,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:29:38,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:29:38,148.148 INFO    ] No camera update needed
[2026-06-19 02:29:38,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:29:38,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:29:38,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:29:38,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:29:40,207.207 INFO    ] ================================================
[2026-06-19 02:29:40,223.223 INFO    ] Launching Daemon at Fri Jun 19 02:29:40 IST 2026
[2026-06-19 02:29:40,233.233 INFO    ] ================================================
[2026-06-19 02:29:40,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:29:40
[2026-06-19 02:29:41,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:29:41,698.698 INFO    ] Initializing speech engine...
[2026-06-19 02:29:41,707.707 INFO    ] 2026-06-19 02:29:41
[2026-06-19 02:29:41,969.969 INFO    ] 2026-06-19 02:29:41
[2026-06-19 02:29:41,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:29:42,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:29:42,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:29:42,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:29:42,327.327 INFO    ] time= 19/06/2026 02:29:42
[2026-06-19 02:29:42,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:29:42,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:29:42,499.499 INFO    ] No existing commands found in stream
[2026-06-19 02:29:47,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:29:47,532.532 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 02:29:48,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:29:48,399.399 INFO    ] Checking for system updates...
[2026-06-19 02:29:48,443.443 INFO    ] 200
[2026-06-19 02:29:48,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:48,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:29:48,503.503 INFO    ] No update needed
[2026-06-19 02:29:48,505.505 INFO    ] Checking for camera pi updates...
[2026-06-19 02:29:48,540.540 INFO    ] 200
[2026-06-19 02:29:48,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:29:48,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:29:48,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:29:48,633.633 INFO    ] No camera update needed
[2026-06-19 02:29:48,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:29:48,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:29:48,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:29:48,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:29:50,692.692 INFO    ] ================================================
[2026-06-19 02:29:50,707.707 INFO    ] Launching Daemon at Fri Jun 19 02:29:50 IST 2026
[2026-06-19 02:29:50,718.718 INFO    ] ================================================
[2026-06-19 02:29:51,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:29:51
[2026-06-19 02:29:51,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:29:52,189.189 INFO    ] Initializing speech engine...
[2026-06-19 02:29:52,196.196 INFO    ] 2026-06-19 02:29:52
[2026-06-19 02:29:52,506.506 INFO    ] 2026-06-19 02:29:52
[2026-06-19 02:29:52,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:29:52,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:29:52,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:29:52,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:29:52,933.933 INFO    ] time= 19/06/2026 02:29:52
[2026-06-19 02:29:52,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:29:52,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:29:53,027.027 INFO    ] No existing commands found in stream
[2026-06-19 02:29:58,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:29:58,049.049 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 02:30:00,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:30:00,085.085 INFO    ] Checking for system updates...
[2026-06-19 02:30:00,128.128 INFO    ] 200
[2026-06-19 02:30:00,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:00,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:30:00,193.193 INFO    ] No update needed
[2026-06-19 02:30:00,196.196 INFO    ] Checking for camera pi updates...
[2026-06-19 02:30:00,245.245 INFO    ] 200
[2026-06-19 02:30:00,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:00,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:30:00,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:30:00,442.442 INFO    ] No camera update needed
[2026-06-19 02:30:00,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:30:00,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:30:00,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:30:00,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:30:02,536.536 INFO    ] ================================================
[2026-06-19 02:30:02,651.651 INFO    ] Launching Daemon at Fri Jun 19 02:30:02 IST 2026
[2026-06-19 02:30:02,710.710 INFO    ] ================================================
[2026-06-19 02:30:03,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:30:03
[2026-06-19 02:30:04,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:30:04,547.547 INFO    ] Initializing speech engine...
[2026-06-19 02:30:04,553.553 INFO    ] 2026-06-19 02:30:04
[2026-06-19 02:30:04,826.826 INFO    ] 2026-06-19 02:30:04
[2026-06-19 02:30:04,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:30:05,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:30:05,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:30:05,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:30:05,232.232 INFO    ] time= 19/06/2026 02:30:05
[2026-06-19 02:30:05,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:30:05,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:30:05,323.323 INFO    ] No existing commands found in stream
[2026-06-19 02:30:10,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:30:10,338.338 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 02:30:12,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:30:12,796.796 INFO    ] Checking for system updates...
[2026-06-19 02:30:12,832.832 INFO    ] 200
[2026-06-19 02:30:12,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:12,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:30:12,892.892 INFO    ] No update needed
[2026-06-19 02:30:12,897.897 INFO    ] Checking for camera pi updates...
[2026-06-19 02:30:12,931.931 INFO    ] 200
[2026-06-19 02:30:12,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:12,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:30:13,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:30:13,020.020 INFO    ] No camera update needed
[2026-06-19 02:30:13,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:30:13,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:30:13,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:30:13,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:30:15,075.075 INFO    ] ================================================
[2026-06-19 02:30:15,091.091 INFO    ] Launching Daemon at Fri Jun 19 02:30:15 IST 2026
[2026-06-19 02:30:15,101.101 INFO    ] ================================================
[2026-06-19 02:30:15,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:30:15
[2026-06-19 02:30:16,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:30:16,700.700 INFO    ] Initializing speech engine...
[2026-06-19 02:30:16,712.712 INFO    ] 2026-06-19 02:30:16
[2026-06-19 02:30:16,995.995 INFO    ] 2026-06-19 02:30:16
[2026-06-19 02:30:17,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:30:17,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:30:17,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:30:17,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:30:17,466.466 INFO    ] time= 19/06/2026 02:30:17
[2026-06-19 02:30:17,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:30:17,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:30:17,662.662 INFO    ] No existing commands found in stream
[2026-06-19 02:30:22,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:30:22,691.691 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 02:30:24,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:30:24,039.039 INFO    ] Checking for system updates...
[2026-06-19 02:30:24,081.081 INFO    ] 200
[2026-06-19 02:30:24,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:24,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:30:24,148.148 INFO    ] No update needed
[2026-06-19 02:30:24,151.151 INFO    ] Checking for camera pi updates...
[2026-06-19 02:30:24,190.190 INFO    ] 200
[2026-06-19 02:30:24,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:24,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:30:24,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:30:24,288.288 INFO    ] No camera update needed
[2026-06-19 02:30:24,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:30:24,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:30:24,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:30:24,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:30:26,345.345 INFO    ] ================================================
[2026-06-19 02:30:26,360.360 INFO    ] Launching Daemon at Fri Jun 19 02:30:26 IST 2026
[2026-06-19 02:30:26,371.371 INFO    ] ================================================
[2026-06-19 02:30:27,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:30:27
[2026-06-19 02:30:27,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:30:27,995.995 INFO    ] Initializing speech engine...
[2026-06-19 02:30:28,006.006 INFO    ] 2026-06-19 02:30:27
[2026-06-19 02:30:28,295.295 INFO    ] 2026-06-19 02:30:28
[2026-06-19 02:30:28,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:30:28,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:30:28,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:30:28,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:30:28,823.823 INFO    ] time= 19/06/2026 02:30:28
[2026-06-19 02:30:28,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:30:28,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:30:28,955.955 INFO    ] No existing commands found in stream
[2026-06-19 02:30:33,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:30:33,985.985 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 02:30:36,216.216 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:30:36,219.219 INFO    ] Checking for system updates...
[2026-06-19 02:30:36,256.256 INFO    ] 200
[2026-06-19 02:30:36,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:36,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:30:36,316.316 INFO    ] No update needed
[2026-06-19 02:30:36,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 02:30:36,359.359 INFO    ] 200
[2026-06-19 02:30:36,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:36,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:30:36,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:30:36,460.460 INFO    ] No camera update needed
[2026-06-19 02:30:36,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:30:36,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:30:36,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:30:36,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:30:38,516.516 INFO    ] ================================================
[2026-06-19 02:30:38,531.531 INFO    ] Launching Daemon at Fri Jun 19 02:30:38 IST 2026
[2026-06-19 02:30:38,541.541 INFO    ] ================================================
[2026-06-19 02:30:39,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:30:39
[2026-06-19 02:30:39,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:30:39,998.998 INFO    ] Initializing speech engine...
[2026-06-19 02:30:40,008.008 INFO    ] 2026-06-19 02:30:40
[2026-06-19 02:30:40,270.270 INFO    ] 2026-06-19 02:30:40
[2026-06-19 02:30:40,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:30:40,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:30:40,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:30:40,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:30:40,737.737 INFO    ] time= 19/06/2026 02:30:40
[2026-06-19 02:30:40,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:30:40,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:30:40,877.877 INFO    ] No existing commands found in stream
[2026-06-19 02:30:45,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:30:45,892.892 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 02:30:47,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:30:47,204.204 INFO    ] Checking for system updates...
[2026-06-19 02:30:47,241.241 INFO    ] 200
[2026-06-19 02:30:47,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:47,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:30:47,300.300 INFO    ] No update needed
[2026-06-19 02:30:47,302.302 INFO    ] Checking for camera pi updates...
[2026-06-19 02:30:47,336.336 INFO    ] 200
[2026-06-19 02:30:47,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:30:47,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:30:47,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:30:47,413.413 INFO    ] No camera update needed
[2026-06-19 02:30:47,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:30:47,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:30:47,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:30:47,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:30:49,470.470 INFO    ] ================================================
[2026-06-19 02:30:49,486.486 INFO    ] Launching Daemon at Fri Jun 19 02:30:49 IST 2026
[2026-06-19 02:30:49,496.496 INFO    ] ================================================
[2026-06-19 02:30:50,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:30:50
[2026-06-19 02:30:50,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:30:50,958.958 INFO    ] Initializing speech engine...
[2026-06-19 02:30:50,971.971 INFO    ] 2026-06-19 02:30:50
[2026-06-19 02:30:51,255.255 INFO    ] 2026-06-19 02:30:51
[2026-06-19 02:30:51,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:30:51,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:30:51,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:30:51,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:30:51,762.762 INFO    ] time= 19/06/2026 02:30:51
[2026-06-19 02:30:51,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:30:51,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:30:51,969.969 INFO    ] No existing commands found in stream
[2026-06-19 02:30:56,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:30:57,005.005 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 02:31:00,090.090 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:31:00,093.093 INFO    ] Checking for system updates...
[2026-06-19 02:31:00,129.129 INFO    ] 200
[2026-06-19 02:31:00,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:00,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:31:00,188.188 INFO    ] No update needed
[2026-06-19 02:31:00,190.190 INFO    ] Checking for camera pi updates...
[2026-06-19 02:31:00,225.225 INFO    ] 200
[2026-06-19 02:31:00,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:00,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:31:00,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:31:00,329.329 INFO    ] No camera update needed
[2026-06-19 02:31:00,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:31:00,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:31:00,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:31:00,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:31:02,387.387 INFO    ] ================================================
[2026-06-19 02:31:02,408.408 INFO    ] Launching Daemon at Fri Jun 19 02:31:02 IST 2026
[2026-06-19 02:31:02,424.424 INFO    ] ================================================
[2026-06-19 02:31:03,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:31:03
[2026-06-19 02:31:03,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:31:03,982.982 INFO    ] Initializing speech engine...
[2026-06-19 02:31:03,989.989 INFO    ] 2026-06-19 02:31:03
[2026-06-19 02:31:04,248.248 INFO    ] 2026-06-19 02:31:04
[2026-06-19 02:31:04,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:31:04,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:31:04,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:31:04,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:31:04,705.705 INFO    ] time= 19/06/2026 02:31:04
[2026-06-19 02:31:04,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:31:04,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:31:04,858.858 INFO    ] No existing commands found in stream
[2026-06-19 02:31:09,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:31:09,873.873 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 02:31:12,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:31:12,042.042 INFO    ] Checking for system updates...
[2026-06-19 02:31:12,081.081 INFO    ] 200
[2026-06-19 02:31:12,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:12,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:31:12,150.150 INFO    ] No update needed
[2026-06-19 02:31:12,153.153 INFO    ] Checking for camera pi updates...
[2026-06-19 02:31:12,192.192 INFO    ] 200
[2026-06-19 02:31:12,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:12,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:31:12,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:31:12,304.304 INFO    ] No camera update needed
[2026-06-19 02:31:12,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:31:12,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:31:12,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:31:12,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:31:14,365.365 INFO    ] ================================================
[2026-06-19 02:31:14,381.381 INFO    ] Launching Daemon at Fri Jun 19 02:31:14 IST 2026
[2026-06-19 02:31:14,393.393 INFO    ] ================================================
[2026-06-19 02:31:15,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:31:15
[2026-06-19 02:31:15,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:31:16,093.093 INFO    ] Initializing speech engine...
[2026-06-19 02:31:16,105.105 INFO    ] 2026-06-19 02:31:16
[2026-06-19 02:31:16,399.399 INFO    ] 2026-06-19 02:31:16
[2026-06-19 02:31:16,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:31:16,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:31:16,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:31:16,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:31:16,880.880 INFO    ] time= 19/06/2026 02:31:16
[2026-06-19 02:31:16,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:31:16,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:31:17,057.057 INFO    ] No existing commands found in stream
[2026-06-19 02:31:22,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:31:22,072.072 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-19 02:31:26,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:31:26,492.492 INFO    ] Checking for system updates...
[2026-06-19 02:31:26,530.530 INFO    ] 200
[2026-06-19 02:31:26,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:26,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:31:26,589.589 INFO    ] No update needed
[2026-06-19 02:31:26,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 02:31:26,627.627 INFO    ] 200
[2026-06-19 02:31:26,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:26,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:31:26,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:31:26,729.729 INFO    ] No camera update needed
[2026-06-19 02:31:26,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:31:26,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:31:26,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:31:26,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:31:28,785.785 INFO    ] ================================================
[2026-06-19 02:31:28,801.801 INFO    ] Launching Daemon at Fri Jun 19 02:31:28 IST 2026
[2026-06-19 02:31:28,812.812 INFO    ] ================================================
[2026-06-19 02:31:29,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:31:29
[2026-06-19 02:31:30,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:31:30,356.356 INFO    ] Initializing speech engine...
[2026-06-19 02:31:30,367.367 INFO    ] 2026-06-19 02:31:30
[2026-06-19 02:31:30,640.640 INFO    ] 2026-06-19 02:31:30
[2026-06-19 02:31:30,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:31:30,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:31:30,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:31:31,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:31:31,037.037 INFO    ] time= 19/06/2026 02:31:31
[2026-06-19 02:31:31,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:31:31,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:31:31,140.140 INFO    ] No existing commands found in stream
[2026-06-19 02:31:36,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:31:36,152.152 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 02:31:39,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:31:39,014.014 INFO    ] Checking for system updates...
[2026-06-19 02:31:39,054.054 INFO    ] 200
[2026-06-19 02:31:39,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:39,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:31:39,119.119 INFO    ] No update needed
[2026-06-19 02:31:39,121.121 INFO    ] Checking for camera pi updates...
[2026-06-19 02:31:39,155.155 INFO    ] 200
[2026-06-19 02:31:39,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:39,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:31:39,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:31:39,243.243 INFO    ] No camera update needed
[2026-06-19 02:31:39,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:31:39,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:31:39,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:31:39,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:31:41,300.300 INFO    ] ================================================
[2026-06-19 02:31:41,316.316 INFO    ] Launching Daemon at Fri Jun 19 02:31:41 IST 2026
[2026-06-19 02:31:41,327.327 INFO    ] ================================================
[2026-06-19 02:31:41,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:31:41
[2026-06-19 02:31:42,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:31:42,776.776 INFO    ] Initializing speech engine...
[2026-06-19 02:31:42,781.781 INFO    ] 2026-06-19 02:31:42
[2026-06-19 02:31:43,031.031 INFO    ] 2026-06-19 02:31:43
[2026-06-19 02:31:43,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:31:43,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:31:43,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:31:43,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:31:43,507.507 INFO    ] time= 19/06/2026 02:31:43
[2026-06-19 02:31:43,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:31:43,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:31:43,662.662 INFO    ] No existing commands found in stream
[2026-06-19 02:31:48,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:31:48,677.677 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 02:31:52,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:31:52,241.241 INFO    ] Checking for system updates...
[2026-06-19 02:31:52,278.278 INFO    ] 200
[2026-06-19 02:31:52,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:52,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:31:52,346.346 INFO    ] No update needed
[2026-06-19 02:31:52,349.349 INFO    ] Checking for camera pi updates...
[2026-06-19 02:31:52,384.384 INFO    ] 200
[2026-06-19 02:31:52,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:31:52,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:31:52,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:31:52,484.484 INFO    ] No camera update needed
[2026-06-19 02:31:52,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:31:52,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:31:52,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:31:52,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:31:54,544.544 INFO    ] ================================================
[2026-06-19 02:31:54,561.561 INFO    ] Launching Daemon at Fri Jun 19 02:31:54 IST 2026
[2026-06-19 02:31:54,573.573 INFO    ] ================================================
[2026-06-19 02:31:55,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:31:55
[2026-06-19 02:31:55,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:31:56,191.191 INFO    ] Initializing speech engine...
[2026-06-19 02:31:56,204.204 INFO    ] 2026-06-19 02:31:56
[2026-06-19 02:31:56,474.474 INFO    ] 2026-06-19 02:31:56
[2026-06-19 02:31:56,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:31:56,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:31:56,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:31:56,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:31:56,855.855 INFO    ] time= 19/06/2026 02:31:56
[2026-06-19 02:31:56,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:31:56,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:31:56,984.984 INFO    ] No existing commands found in stream
[2026-06-19 02:32:01,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:32:01,999.999 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 02:32:02,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:32:02,580.580 INFO    ] Checking for system updates...
[2026-06-19 02:32:02,628.628 INFO    ] 200
[2026-06-19 02:32:02,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:02,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:32:02,699.699 INFO    ] No update needed
[2026-06-19 02:32:02,703.703 INFO    ] Checking for camera pi updates...
[2026-06-19 02:32:02,753.753 INFO    ] 200
[2026-06-19 02:32:02,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:02,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:32:02,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:32:02,957.957 INFO    ] No camera update needed
[2026-06-19 02:32:02,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:32:02,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:32:02,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:32:02,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:32:05,019.019 INFO    ] ================================================
[2026-06-19 02:32:05,035.035 INFO    ] Launching Daemon at Fri Jun 19 02:32:05 IST 2026
[2026-06-19 02:32:05,047.047 INFO    ] ================================================
[2026-06-19 02:32:05,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:32:05
[2026-06-19 02:32:06,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:32:06,520.520 INFO    ] Initializing speech engine...
[2026-06-19 02:32:06,536.536 INFO    ] 2026-06-19 02:32:06
[2026-06-19 02:32:06,798.798 INFO    ] 2026-06-19 02:32:06
[2026-06-19 02:32:06,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:32:07,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:32:07,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:32:07,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:32:07,202.202 INFO    ] time= 19/06/2026 02:32:07
[2026-06-19 02:32:07,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:32:07,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:32:07,287.287 INFO    ] No existing commands found in stream
[2026-06-19 02:32:12,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:32:12,309.309 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 02:32:13,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:32:13,452.452 INFO    ] Checking for system updates...
[2026-06-19 02:32:13,490.490 INFO    ] 200
[2026-06-19 02:32:13,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:13,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:32:13,551.551 INFO    ] No update needed
[2026-06-19 02:32:13,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 02:32:13,588.588 INFO    ] 200
[2026-06-19 02:32:13,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:13,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:32:13,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:32:13,690.690 INFO    ] No camera update needed
[2026-06-19 02:32:13,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:32:13,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:32:13,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:32:13,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:32:15,747.747 INFO    ] ================================================
[2026-06-19 02:32:15,763.763 INFO    ] Launching Daemon at Fri Jun 19 02:32:15 IST 2026
[2026-06-19 02:32:15,775.775 INFO    ] ================================================
[2026-06-19 02:32:16,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:32:16
[2026-06-19 02:32:16,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:32:17,229.229 INFO    ] Initializing speech engine...
[2026-06-19 02:32:17,235.235 INFO    ] 2026-06-19 02:32:17
[2026-06-19 02:32:17,483.483 INFO    ] 2026-06-19 02:32:17
[2026-06-19 02:32:17,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:32:17,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:32:17,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:32:17,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:32:17,933.933 INFO    ] time= 19/06/2026 02:32:17
[2026-06-19 02:32:17,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:32:18,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:32:18,097.097 INFO    ] No existing commands found in stream
[2026-06-19 02:32:23,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:32:23,111.111 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 02:32:26,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:32:26,781.781 INFO    ] Checking for system updates...
[2026-06-19 02:32:26,818.818 INFO    ] 200
[2026-06-19 02:32:26,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:26,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:32:26,878.878 INFO    ] No update needed
[2026-06-19 02:32:26,881.881 INFO    ] Checking for camera pi updates...
[2026-06-19 02:32:26,915.915 INFO    ] 200
[2026-06-19 02:32:26,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:26,965.965 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:32:27,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:32:27,020.020 INFO    ] No camera update needed
[2026-06-19 02:32:27,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:32:27,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:32:27,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:32:27,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:32:29,080.080 INFO    ] ================================================
[2026-06-19 02:32:29,097.097 INFO    ] Launching Daemon at Fri Jun 19 02:32:29 IST 2026
[2026-06-19 02:32:29,107.107 INFO    ] ================================================
[2026-06-19 02:32:29,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:32:29
[2026-06-19 02:32:30,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:32:30,523.523 INFO    ] Initializing speech engine...
[2026-06-19 02:32:30,529.529 INFO    ] 2026-06-19 02:32:30
[2026-06-19 02:32:30,827.827 INFO    ] 2026-06-19 02:32:30
[2026-06-19 02:32:30,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:32:31,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:32:31,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:32:31,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:32:31,215.215 INFO    ] time= 19/06/2026 02:32:31
[2026-06-19 02:32:31,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:32:31,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:32:31,343.343 INFO    ] No existing commands found in stream
[2026-06-19 02:32:36,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:32:36,358.358 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 02:32:37,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:32:37,556.556 INFO    ] Checking for system updates...
[2026-06-19 02:32:37,595.595 INFO    ] 200
[2026-06-19 02:32:37,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:37,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:32:37,654.654 INFO    ] No update needed
[2026-06-19 02:32:37,657.657 INFO    ] Checking for camera pi updates...
[2026-06-19 02:32:37,690.690 INFO    ] 200
[2026-06-19 02:32:37,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:37,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:32:37,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:32:37,797.797 INFO    ] No camera update needed
[2026-06-19 02:32:37,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:32:37,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:32:37,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:32:37,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:32:39,853.853 INFO    ] ================================================
[2026-06-19 02:32:39,868.868 INFO    ] Launching Daemon at Fri Jun 19 02:32:39 IST 2026
[2026-06-19 02:32:39,879.879 INFO    ] ================================================
[2026-06-19 02:32:40,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:32:40
[2026-06-19 02:32:41,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:32:41,524.524 INFO    ] Initializing speech engine...
[2026-06-19 02:32:41,536.536 INFO    ] 2026-06-19 02:32:41
[2026-06-19 02:32:41,810.810 INFO    ] 2026-06-19 02:32:41
[2026-06-19 02:32:41,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:32:42,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:32:42,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:32:42,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:32:42,288.288 INFO    ] time= 19/06/2026 02:32:42
[2026-06-19 02:32:42,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:32:42,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:32:42,504.504 INFO    ] No existing commands found in stream
[2026-06-19 02:32:47,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:32:47,533.533 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 02:32:48,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:32:48,038.038 INFO    ] Checking for system updates...
[2026-06-19 02:32:48,076.076 INFO    ] 200
[2026-06-19 02:32:48,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:48,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:32:48,136.136 INFO    ] No update needed
[2026-06-19 02:32:48,139.139 INFO    ] Checking for camera pi updates...
[2026-06-19 02:32:48,174.174 INFO    ] 200
[2026-06-19 02:32:48,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:48,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:32:48,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:32:48,271.271 INFO    ] No camera update needed
[2026-06-19 02:32:48,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:32:48,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:32:48,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:32:48,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:32:50,330.330 INFO    ] ================================================
[2026-06-19 02:32:50,346.346 INFO    ] Launching Daemon at Fri Jun 19 02:32:50 IST 2026
[2026-06-19 02:32:50,357.357 INFO    ] ================================================
[2026-06-19 02:32:50,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:32:50
[2026-06-19 02:32:51,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:32:51,765.765 INFO    ] Initializing speech engine...
[2026-06-19 02:32:51,779.779 INFO    ] 2026-06-19 02:32:51
[2026-06-19 02:32:52,046.046 INFO    ] 2026-06-19 02:32:52
[2026-06-19 02:32:52,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:32:52,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:32:52,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:32:52,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:32:52,426.426 INFO    ] time= 19/06/2026 02:32:52
[2026-06-19 02:32:52,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:32:52,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:32:52,535.535 INFO    ] No existing commands found in stream
[2026-06-19 02:32:57,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:32:57,568.568 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 02:32:59,637.637 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:32:59,639.639 INFO    ] Checking for system updates...
[2026-06-19 02:32:59,676.676 INFO    ] 200
[2026-06-19 02:32:59,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:59,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:32:59,736.736 INFO    ] No update needed
[2026-06-19 02:32:59,738.738 INFO    ] Checking for camera pi updates...
[2026-06-19 02:32:59,777.777 INFO    ] 200
[2026-06-19 02:32:59,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:32:59,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:32:59,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:32:59,871.871 INFO    ] No camera update needed
[2026-06-19 02:32:59,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:32:59,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:32:59,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:32:59,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:33:01,958.958 INFO    ] ================================================
[2026-06-19 02:33:01,981.981 INFO    ] Launching Daemon at Fri Jun 19 02:33:01 IST 2026
[2026-06-19 02:33:02,007.007 INFO    ] ================================================
[2026-06-19 02:33:02,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:33:02
[2026-06-19 02:33:03,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:33:03,667.667 INFO    ] Initializing speech engine...
[2026-06-19 02:33:03,686.686 INFO    ] 2026-06-19 02:33:03
[2026-06-19 02:33:03,944.944 INFO    ] 2026-06-19 02:33:03
[2026-06-19 02:33:03,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:33:04,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:33:04,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:33:04,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:33:04,316.316 INFO    ] time= 19/06/2026 02:33:04
[2026-06-19 02:33:04,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:33:04,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:33:04,486.486 INFO    ] No existing commands found in stream
[2026-06-19 02:33:09,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:33:09,519.519 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 02:33:11,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:33:11,414.414 INFO    ] Checking for system updates...
[2026-06-19 02:33:11,453.453 INFO    ] 200
[2026-06-19 02:33:11,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:11,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:33:11,513.513 INFO    ] No update needed
[2026-06-19 02:33:11,515.515 INFO    ] Checking for camera pi updates...
[2026-06-19 02:33:11,550.550 INFO    ] 200
[2026-06-19 02:33:11,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:11,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:33:11,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:33:11,651.651 INFO    ] No camera update needed
[2026-06-19 02:33:11,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:33:11,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:33:11,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:33:11,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:33:13,707.707 INFO    ] ================================================
[2026-06-19 02:33:13,722.722 INFO    ] Launching Daemon at Fri Jun 19 02:33:13 IST 2026
[2026-06-19 02:33:13,733.733 INFO    ] ================================================
[2026-06-19 02:33:14,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:33:14
[2026-06-19 02:33:14,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:33:15,152.152 INFO    ] Initializing speech engine...
[2026-06-19 02:33:15,160.160 INFO    ] 2026-06-19 02:33:15
[2026-06-19 02:33:15,410.410 INFO    ] 2026-06-19 02:33:15
[2026-06-19 02:33:15,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:33:15,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:33:15,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:33:15,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:33:15,787.787 INFO    ] time= 19/06/2026 02:33:15
[2026-06-19 02:33:15,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:33:15,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:33:15,976.976 INFO    ] No existing commands found in stream
[2026-06-19 02:33:20,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:33:21,000.000 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 02:33:22,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:33:22,743.743 INFO    ] Checking for system updates...
[2026-06-19 02:33:22,779.779 INFO    ] 200
[2026-06-19 02:33:22,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:22,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:33:22,840.840 INFO    ] No update needed
[2026-06-19 02:33:22,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 02:33:22,877.877 INFO    ] 200
[2026-06-19 02:33:22,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:22,920.920 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:33:22,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:33:22,985.985 INFO    ] No camera update needed
[2026-06-19 02:33:22,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:33:22,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:33:22,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:33:23,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:33:25,043.043 INFO    ] ================================================
[2026-06-19 02:33:25,058.058 INFO    ] Launching Daemon at Fri Jun 19 02:33:25 IST 2026
[2026-06-19 02:33:25,069.069 INFO    ] ================================================
[2026-06-19 02:33:25,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:33:25
[2026-06-19 02:33:26,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:33:26,477.477 INFO    ] Initializing speech engine...
[2026-06-19 02:33:26,485.485 INFO    ] 2026-06-19 02:33:26
[2026-06-19 02:33:26,780.780 INFO    ] 2026-06-19 02:33:26
[2026-06-19 02:33:26,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:33:27,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:33:27,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:33:27,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:33:27,151.151 INFO    ] time= 19/06/2026 02:33:27
[2026-06-19 02:33:27,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:33:27,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:33:27,262.262 INFO    ] No existing commands found in stream
[2026-06-19 02:33:32,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:33:32,287.287 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 02:33:33,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:33:33,049.049 INFO    ] Checking for system updates...
[2026-06-19 02:33:33,093.093 INFO    ] 200
[2026-06-19 02:33:33,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:33,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:33:33,171.171 INFO    ] No update needed
[2026-06-19 02:33:33,178.178 INFO    ] Checking for camera pi updates...
[2026-06-19 02:33:33,213.213 INFO    ] 200
[2026-06-19 02:33:33,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:33,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:33:33,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:33:33,313.313 INFO    ] No camera update needed
[2026-06-19 02:33:33,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:33:33,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:33:33,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:33:33,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:33:35,369.369 INFO    ] ================================================
[2026-06-19 02:33:35,385.385 INFO    ] Launching Daemon at Fri Jun 19 02:33:35 IST 2026
[2026-06-19 02:33:35,397.397 INFO    ] ================================================
[2026-06-19 02:33:35,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:33:35
[2026-06-19 02:33:36,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:33:36,849.849 INFO    ] Initializing speech engine...
[2026-06-19 02:33:36,858.858 INFO    ] 2026-06-19 02:33:36
[2026-06-19 02:33:37,156.156 INFO    ] 2026-06-19 02:33:37
[2026-06-19 02:33:37,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:33:37,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:33:37,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:33:37,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:33:37,543.543 INFO    ] time= 19/06/2026 02:33:37
[2026-06-19 02:33:37,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:33:37,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:33:37,626.626 INFO    ] No existing commands found in stream
[2026-06-19 02:33:42,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:33:42,642.642 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 02:33:45,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:33:45,166.166 INFO    ] Checking for system updates...
[2026-06-19 02:33:45,203.203 INFO    ] 200
[2026-06-19 02:33:45,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:45,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:33:45,263.263 INFO    ] No update needed
[2026-06-19 02:33:45,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 02:33:45,305.305 INFO    ] 200
[2026-06-19 02:33:45,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:45,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:33:45,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:33:45,387.387 INFO    ] No camera update needed
[2026-06-19 02:33:45,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:33:45,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:33:45,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:33:45,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:33:47,447.447 INFO    ] ================================================
[2026-06-19 02:33:47,464.464 INFO    ] Launching Daemon at Fri Jun 19 02:33:47 IST 2026
[2026-06-19 02:33:47,475.475 INFO    ] ================================================
[2026-06-19 02:33:48,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:33:48
[2026-06-19 02:33:48,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:33:49,144.144 INFO    ] Initializing speech engine...
[2026-06-19 02:33:49,152.152 INFO    ] 2026-06-19 02:33:49
[2026-06-19 02:33:49,454.454 INFO    ] 2026-06-19 02:33:49
[2026-06-19 02:33:49,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:33:49,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:33:49,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:33:49,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:33:49,907.907 INFO    ] time= 19/06/2026 02:33:49
[2026-06-19 02:33:49,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:33:50,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:33:50,068.068 INFO    ] No existing commands found in stream
[2026-06-19 02:33:55,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:33:55,085.085 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 02:33:58,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:33:58,926.926 INFO    ] Checking for system updates...
[2026-06-19 02:33:58,964.964 INFO    ] 200
[2026-06-19 02:33:58,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:59,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:33:59,031.031 INFO    ] No update needed
[2026-06-19 02:33:59,034.034 INFO    ] Checking for camera pi updates...
[2026-06-19 02:33:59,074.074 INFO    ] 200
[2026-06-19 02:33:59,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:33:59,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:33:59,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:33:59,177.177 INFO    ] No camera update needed
[2026-06-19 02:33:59,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:33:59,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:33:59,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:33:59,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:34:01,237.237 INFO    ] ================================================
[2026-06-19 02:34:01,253.253 INFO    ] Launching Daemon at Fri Jun 19 02:34:01 IST 2026
[2026-06-19 02:34:01,265.265 INFO    ] ================================================
[2026-06-19 02:34:01,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:34:01
[2026-06-19 02:34:02,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:34:02,926.926 INFO    ] Initializing speech engine...
[2026-06-19 02:34:02,951.951 INFO    ] 2026-06-19 02:34:02
[2026-06-19 02:34:03,240.240 INFO    ] 2026-06-19 02:34:03
[2026-06-19 02:34:03,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:34:03,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:34:03,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:34:03,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:34:03,777.777 INFO    ] time= 19/06/2026 02:34:03
[2026-06-19 02:34:03,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:34:03,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:34:03,969.969 INFO    ] No existing commands found in stream
[2026-06-19 02:34:08,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:34:08,984.984 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 02:34:10,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:34:10,256.256 INFO    ] Checking for system updates...
[2026-06-19 02:34:10,291.291 INFO    ] 200
[2026-06-19 02:34:10,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:10,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:34:10,348.348 INFO    ] No update needed
[2026-06-19 02:34:10,351.351 INFO    ] Checking for camera pi updates...
[2026-06-19 02:34:10,388.388 INFO    ] 200
[2026-06-19 02:34:10,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:10,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:34:10,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:34:10,580.580 INFO    ] No camera update needed
[2026-06-19 02:34:10,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:34:10,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:34:10,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:34:10,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:34:12,637.637 INFO    ] ================================================
[2026-06-19 02:34:12,653.653 INFO    ] Launching Daemon at Fri Jun 19 02:34:12 IST 2026
[2026-06-19 02:34:12,664.664 INFO    ] ================================================
[2026-06-19 02:34:13,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:34:13
[2026-06-19 02:34:13,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:34:14,195.195 INFO    ] Initializing speech engine...
[2026-06-19 02:34:14,209.209 INFO    ] 2026-06-19 02:34:14
[2026-06-19 02:34:14,500.500 INFO    ] 2026-06-19 02:34:14
[2026-06-19 02:34:14,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:34:14,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:34:14,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:34:14,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:34:14,979.979 INFO    ] time= 19/06/2026 02:34:14
[2026-06-19 02:34:15,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:34:15,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:34:15,169.169 INFO    ] No existing commands found in stream
[2026-06-19 02:34:20,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:34:20,206.206 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 02:34:22,850.850 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:34:22,853.853 INFO    ] Checking for system updates...
[2026-06-19 02:34:22,890.890 INFO    ] 200
[2026-06-19 02:34:22,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:22,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:34:22,949.949 INFO    ] No update needed
[2026-06-19 02:34:22,952.952 INFO    ] Checking for camera pi updates...
[2026-06-19 02:34:22,986.986 INFO    ] 200
[2026-06-19 02:34:22,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:23,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:34:23,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:34:23,086.086 INFO    ] No camera update needed
[2026-06-19 02:34:23,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:34:23,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:34:23,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:34:23,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:34:25,146.146 INFO    ] ================================================
[2026-06-19 02:34:25,161.161 INFO    ] Launching Daemon at Fri Jun 19 02:34:25 IST 2026
[2026-06-19 02:34:25,172.172 INFO    ] ================================================
[2026-06-19 02:34:25,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:34:25
[2026-06-19 02:34:26,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:34:26,759.759 INFO    ] Initializing speech engine...
[2026-06-19 02:34:26,768.768 INFO    ] 2026-06-19 02:34:26
[2026-06-19 02:34:27,017.017 INFO    ] 2026-06-19 02:34:27
[2026-06-19 02:34:27,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:34:27,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:34:27,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:34:27,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:34:27,501.501 INFO    ] time= 19/06/2026 02:34:27
[2026-06-19 02:34:27,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:34:27,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:34:27,642.642 INFO    ] No existing commands found in stream
[2026-06-19 02:34:32,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:34:32,658.658 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 02:34:36,033.033 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:34:36,035.035 INFO    ] Checking for system updates...
[2026-06-19 02:34:36,071.071 INFO    ] 200
[2026-06-19 02:34:36,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:36,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:34:36,138.138 INFO    ] No update needed
[2026-06-19 02:34:36,141.141 INFO    ] Checking for camera pi updates...
[2026-06-19 02:34:36,175.175 INFO    ] 200
[2026-06-19 02:34:36,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:36,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:34:36,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:34:36,265.265 INFO    ] No camera update needed
[2026-06-19 02:34:36,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:34:36,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:34:36,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:34:36,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:34:38,320.320 INFO    ] ================================================
[2026-06-19 02:34:38,336.336 INFO    ] Launching Daemon at Fri Jun 19 02:34:38 IST 2026
[2026-06-19 02:34:38,348.348 INFO    ] ================================================
[2026-06-19 02:34:38,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:34:38
[2026-06-19 02:34:39,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:34:39,802.802 INFO    ] Initializing speech engine...
[2026-06-19 02:34:39,820.820 INFO    ] 2026-06-19 02:34:39
[2026-06-19 02:34:40,090.090 INFO    ] 2026-06-19 02:34:40
[2026-06-19 02:34:40,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:34:40,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:34:40,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:34:40,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:34:40,481.481 INFO    ] time= 19/06/2026 02:34:40
[2026-06-19 02:34:40,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:34:40,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:34:40,588.588 INFO    ] No existing commands found in stream
[2026-06-19 02:34:45,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:34:45,600.600 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 02:34:46,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:34:46,569.569 INFO    ] Checking for system updates...
[2026-06-19 02:34:46,605.605 INFO    ] 200
[2026-06-19 02:34:46,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:46,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:34:46,670.670 INFO    ] No update needed
[2026-06-19 02:34:46,672.672 INFO    ] Checking for camera pi updates...
[2026-06-19 02:34:46,712.712 INFO    ] 200
[2026-06-19 02:34:46,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:46,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:34:46,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:34:46,807.807 INFO    ] No camera update needed
[2026-06-19 02:34:46,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:34:46,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:34:46,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:34:46,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:34:48,863.863 INFO    ] ================================================
[2026-06-19 02:34:48,879.879 INFO    ] Launching Daemon at Fri Jun 19 02:34:48 IST 2026
[2026-06-19 02:34:48,890.890 INFO    ] ================================================
[2026-06-19 02:34:49,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:34:49
[2026-06-19 02:34:50,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:34:50,322.322 INFO    ] Initializing speech engine...
[2026-06-19 02:34:50,329.329 INFO    ] 2026-06-19 02:34:50
[2026-06-19 02:34:50,573.573 INFO    ] 2026-06-19 02:34:50
[2026-06-19 02:34:50,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:34:50,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:34:50,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:34:51,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:34:51,054.054 INFO    ] time= 19/06/2026 02:34:51
[2026-06-19 02:34:51,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:34:51,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:34:51,201.201 INFO    ] No existing commands found in stream
[2026-06-19 02:34:56,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:34:56,216.216 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 02:34:58,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:34:58,156.156 INFO    ] Checking for system updates...
[2026-06-19 02:34:58,194.194 INFO    ] 200
[2026-06-19 02:34:58,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:58,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:34:58,252.252 INFO    ] No update needed
[2026-06-19 02:34:58,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 02:34:58,288.288 INFO    ] 200
[2026-06-19 02:34:58,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:34:58,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:34:58,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:34:58,367.367 INFO    ] No camera update needed
[2026-06-19 02:34:58,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:34:58,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:34:58,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:34:58,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:35:00,423.423 INFO    ] ================================================
[2026-06-19 02:35:00,439.439 INFO    ] Launching Daemon at Fri Jun 19 02:35:00 IST 2026
[2026-06-19 02:35:00,450.450 INFO    ] ================================================
[2026-06-19 02:35:01,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:35:01
[2026-06-19 02:35:01,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:35:02,045.045 INFO    ] Initializing speech engine...
[2026-06-19 02:35:02,069.069 INFO    ] 2026-06-19 02:35:02
[2026-06-19 02:35:02,662.662 INFO    ] 2026-06-19 02:35:02
[2026-06-19 02:35:02,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:35:02,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:35:02,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:35:03,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:35:03,082.082 INFO    ] time= 19/06/2026 02:35:03
[2026-06-19 02:35:03,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:35:03,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:35:03,257.257 INFO    ] No existing commands found in stream
[2026-06-19 02:35:08,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:35:08,291.291 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 02:35:11,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:35:11,812.812 INFO    ] Checking for system updates...
[2026-06-19 02:35:11,852.852 INFO    ] 200
[2026-06-19 02:35:11,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:35:11,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:35:11,925.925 INFO    ] No update needed
[2026-06-19 02:35:11,927.927 INFO    ] Checking for camera pi updates...
[2026-06-19 02:35:11,962.962 INFO    ] 200
[2026-06-19 02:35:11,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:35:12,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:35:12,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:35:12,059.059 INFO    ] No camera update needed
[2026-06-19 02:35:12,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:35:12,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:35:12,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:35:12,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:35:14,114.114 INFO    ] ================================================
[2026-06-19 02:35:14,130.130 INFO    ] Launching Daemon at Fri Jun 19 02:35:14 IST 2026
[2026-06-19 02:35:14,142.142 INFO    ] ================================================
[2026-06-19 02:35:14,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:35:14
[2026-06-19 02:35:15,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:35:15,588.588 INFO    ] Initializing speech engine...
[2026-06-19 02:35:15,594.594 INFO    ] 2026-06-19 02:35:15
[2026-06-19 02:35:15,893.893 INFO    ] 2026-06-19 02:35:15
[2026-06-19 02:35:15,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:35:16,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:35:16,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:35:16,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:35:16,314.314 INFO    ] time= 19/06/2026 02:35:16
[2026-06-19 02:35:16,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:35:16,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:35:16,403.403 INFO    ] No existing commands found in stream
[2026-06-19 02:35:21,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:35:21,417.417 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 02:35:23,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:35:23,375.375 INFO    ] Checking for system updates...
[2026-06-19 02:35:23,411.411 INFO    ] 200
[2026-06-19 02:35:23,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:35:23,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:35:23,469.469 INFO    ] No update needed
[2026-06-19 02:35:23,471.471 INFO    ] Checking for camera pi updates...
[2026-06-19 02:35:23,505.505 INFO    ] 200
[2026-06-19 02:35:23,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:35:23,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:35:23,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:35:23,596.596 INFO    ] No camera update needed
[2026-06-19 02:35:23,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:35:23,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:35:23,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:35:23,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:35:25,653.653 INFO    ] ================================================
[2026-06-19 02:35:25,668.668 INFO    ] Launching Daemon at Fri Jun 19 02:35:25 IST 2026
[2026-06-19 02:35:25,680.680 INFO    ] ================================================
[2026-06-19 02:35:26,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:35:26
[2026-06-19 02:35:26,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:35:27,225.225 INFO    ] Initializing speech engine...
[2026-06-19 02:35:27,237.237 INFO    ] 2026-06-19 02:35:27
[2026-06-19 02:35:27,526.526 INFO    ] 2026-06-19 02:35:27
[2026-06-19 02:35:27,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:35:27,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:35:27,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:35:27,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:35:28,028.028 INFO    ] time= 19/06/2026 02:35:27
[2026-06-19 02:35:28,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:35:28,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:35:28,159.159 INFO    ] No existing commands found in stream
[2026-06-19 02:35:33,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:35:33,175.175 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 02:35:35,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:35:35,123.123 INFO    ] Checking for system updates...
[2026-06-19 02:35:35,159.159 INFO    ] 200
[2026-06-19 02:35:35,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:35:35,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:35:35,218.218 INFO    ] No update needed
[2026-06-19 02:35:35,221.221 INFO    ] Checking for camera pi updates...
[2026-06-19 02:35:35,255.255 INFO    ] 200
[2026-06-19 02:35:35,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:35:35,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:35:35,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:35:35,350.350 INFO    ] No camera update needed
[2026-06-19 02:35:35,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:35:35,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:35:35,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:35:35,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:35:37,408.408 INFO    ] ================================================
[2026-06-19 02:35:37,424.424 INFO    ] Launching Daemon at Fri Jun 19 02:35:37 IST 2026
[2026-06-19 02:35:37,434.434 INFO    ] ================================================
[2026-06-19 02:35:38,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:35:38
[2026-06-19 02:35:38,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:35:39,076.076 INFO    ] Initializing speech engine...
[2026-06-19 02:35:39,089.089 INFO    ] 2026-06-19 02:35:39
[2026-06-19 02:35:39,371.371 INFO    ] 2026-06-19 02:35:39
[2026-06-19 02:35:39,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:35:39,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:35:39,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:35:39,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:35:39,834.834 INFO    ] time= 19/06/2026 02:35:39
[2026-06-19 02:35:39,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:35:39,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:35:39,975.975 INFO    ] No existing commands found in stream
[2026-06-19 02:35:45,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:35:45,010.010 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 02:35:48,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:35:48,801.801 INFO    ] Checking for system updates...
[2026-06-19 02:35:48,839.839 INFO    ] 200
[2026-06-19 02:35:48,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:35:48,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:35:48,897.897 INFO    ] No update needed
[2026-06-19 02:35:48,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 02:35:48,937.937 INFO    ] 200
[2026-06-19 02:35:48,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:35:48,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:35:49,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:35:49,029.029 INFO    ] No camera update needed
[2026-06-19 02:35:49,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:35:49,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:35:49,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:35:49,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:35:51,084.084 INFO    ] ================================================
[2026-06-19 02:35:51,100.100 INFO    ] Launching Daemon at Fri Jun 19 02:35:51 IST 2026
[2026-06-19 02:35:51,111.111 INFO    ] ================================================
[2026-06-19 02:35:51,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:35:51
[2026-06-19 02:35:52,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:35:52,550.550 INFO    ] Initializing speech engine...
[2026-06-19 02:35:52,557.557 INFO    ] 2026-06-19 02:35:52
[2026-06-19 02:35:52,817.817 INFO    ] 2026-06-19 02:35:52
[2026-06-19 02:35:52,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:35:53,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:35:53,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:35:53,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:35:53,281.281 INFO    ] time= 19/06/2026 02:35:53
[2026-06-19 02:35:53,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:35:53,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:35:53,484.484 INFO    ] No existing commands found in stream
[2026-06-19 02:35:58,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:35:58,515.515 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 02:36:01,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:36:01,186.186 INFO    ] Checking for system updates...
[2026-06-19 02:36:01,286.286 INFO    ] 200
[2026-06-19 02:36:01,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:01,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:36:01,408.408 INFO    ] No update needed
[2026-06-19 02:36:01,415.415 INFO    ] Checking for camera pi updates...
[2026-06-19 02:36:01,472.472 INFO    ] 200
[2026-06-19 02:36:01,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:01,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:36:01,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:36:01,618.618 INFO    ] No camera update needed
[2026-06-19 02:36:01,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:36:01,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:36:01,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:36:01,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:36:03,697.697 INFO    ] ================================================
[2026-06-19 02:36:03,713.713 INFO    ] Launching Daemon at Fri Jun 19 02:36:03 IST 2026
[2026-06-19 02:36:03,724.724 INFO    ] ================================================
[2026-06-19 02:36:04,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:36:04
[2026-06-19 02:36:05,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:36:05,378.378 INFO    ] Initializing speech engine...
[2026-06-19 02:36:05,386.386 INFO    ] 2026-06-19 02:36:05
[2026-06-19 02:36:05,674.674 INFO    ] 2026-06-19 02:36:05
[2026-06-19 02:36:05,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:36:05,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:36:05,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:36:06,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:36:06,148.148 INFO    ] time= 19/06/2026 02:36:06
[2026-06-19 02:36:06,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:36:06,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:36:06,296.296 INFO    ] No existing commands found in stream
[2026-06-19 02:36:11,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:36:11,335.335 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 02:36:14,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:36:14,477.477 INFO    ] Checking for system updates...
[2026-06-19 02:36:14,519.519 INFO    ] 200
[2026-06-19 02:36:14,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:14,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:36:14,583.583 INFO    ] No update needed
[2026-06-19 02:36:14,586.586 INFO    ] Checking for camera pi updates...
[2026-06-19 02:36:14,625.625 INFO    ] 200
[2026-06-19 02:36:14,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:14,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:36:14,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:36:14,821.821 INFO    ] No camera update needed
[2026-06-19 02:36:14,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:36:14,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:36:14,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:36:14,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:36:16,877.877 INFO    ] ================================================
[2026-06-19 02:36:16,893.893 INFO    ] Launching Daemon at Fri Jun 19 02:36:16 IST 2026
[2026-06-19 02:36:16,904.904 INFO    ] ================================================
[2026-06-19 02:36:17,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:36:17
[2026-06-19 02:36:18,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:36:18,439.439 INFO    ] Initializing speech engine...
[2026-06-19 02:36:18,448.448 INFO    ] 2026-06-19 02:36:18
[2026-06-19 02:36:18,743.743 INFO    ] 2026-06-19 02:36:18
[2026-06-19 02:36:18,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:36:18,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:36:18,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:36:19,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:36:19,096.096 INFO    ] time= 19/06/2026 02:36:19
[2026-06-19 02:36:19,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:36:19,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:36:19,174.174 INFO    ] No existing commands found in stream
[2026-06-19 02:36:24,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:36:24,189.189 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 02:36:27,720.720 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:36:27,723.723 INFO    ] Checking for system updates...
[2026-06-19 02:36:27,765.765 INFO    ] 200
[2026-06-19 02:36:27,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:27,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:36:27,835.835 INFO    ] No update needed
[2026-06-19 02:36:27,837.837 INFO    ] Checking for camera pi updates...
[2026-06-19 02:36:27,872.872 INFO    ] 200
[2026-06-19 02:36:27,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:27,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:36:27,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:36:27,967.967 INFO    ] No camera update needed
[2026-06-19 02:36:27,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:36:27,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:36:27,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:36:27,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:36:30,022.022 INFO    ] ================================================
[2026-06-19 02:36:30,038.038 INFO    ] Launching Daemon at Fri Jun 19 02:36:30 IST 2026
[2026-06-19 02:36:30,049.049 INFO    ] ================================================
[2026-06-19 02:36:30,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:36:30
[2026-06-19 02:36:31,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:36:31,538.538 INFO    ] Initializing speech engine...
[2026-06-19 02:36:31,558.558 INFO    ] 2026-06-19 02:36:31
[2026-06-19 02:36:31,850.850 INFO    ] 2026-06-19 02:36:31
[2026-06-19 02:36:31,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:36:32,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:36:32,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:36:32,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:36:32,243.243 INFO    ] time= 19/06/2026 02:36:32
[2026-06-19 02:36:32,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:36:32,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:36:32,413.413 INFO    ] No existing commands found in stream
[2026-06-19 02:36:37,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:36:37,447.447 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 02:36:39,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:36:39,148.148 INFO    ] Checking for system updates...
[2026-06-19 02:36:39,189.189 INFO    ] 200
[2026-06-19 02:36:39,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:39,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:36:39,247.247 INFO    ] No update needed
[2026-06-19 02:36:39,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 02:36:39,283.283 INFO    ] 200
[2026-06-19 02:36:39,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:39,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:36:39,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:36:39,382.382 INFO    ] No camera update needed
[2026-06-19 02:36:39,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:36:39,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:36:39,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:36:39,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:36:41,438.438 INFO    ] ================================================
[2026-06-19 02:36:41,458.458 INFO    ] Launching Daemon at Fri Jun 19 02:36:41 IST 2026
[2026-06-19 02:36:41,469.469 INFO    ] ================================================
[2026-06-19 02:36:42,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:36:42
[2026-06-19 02:36:42,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:36:42,914.914 INFO    ] Initializing speech engine...
[2026-06-19 02:36:42,931.931 INFO    ] 2026-06-19 02:36:42
[2026-06-19 02:36:43,216.216 INFO    ] 2026-06-19 02:36:43
[2026-06-19 02:36:43,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:36:43,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:36:43,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:36:43,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:36:43,636.636 INFO    ] time= 19/06/2026 02:36:43
[2026-06-19 02:36:43,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:36:43,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:36:43,720.720 INFO    ] No existing commands found in stream
[2026-06-19 02:36:48,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:36:48,736.736 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 02:36:52,469.469 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:36:52,472.472 INFO    ] Checking for system updates...
[2026-06-19 02:36:52,509.509 INFO    ] 200
[2026-06-19 02:36:52,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:52,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:36:52,575.575 INFO    ] No update needed
[2026-06-19 02:36:52,578.578 INFO    ] Checking for camera pi updates...
[2026-06-19 02:36:52,616.616 INFO    ] 200
[2026-06-19 02:36:52,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:36:52,665.665 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:36:52,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:36:52,731.731 INFO    ] No camera update needed
[2026-06-19 02:36:52,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:36:52,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:36:52,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:36:52,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:36:54,790.790 INFO    ] ================================================
[2026-06-19 02:36:54,806.806 INFO    ] Launching Daemon at Fri Jun 19 02:36:54 IST 2026
[2026-06-19 02:36:54,817.817 INFO    ] ================================================
[2026-06-19 02:36:55,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:36:55
[2026-06-19 02:36:56,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:36:56,422.422 INFO    ] Initializing speech engine...
[2026-06-19 02:36:56,429.429 INFO    ] 2026-06-19 02:36:56
[2026-06-19 02:36:56,743.743 INFO    ] 2026-06-19 02:36:56
[2026-06-19 02:36:56,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:36:57,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:36:57,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:36:57,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:36:57,252.252 INFO    ] time= 19/06/2026 02:36:57
[2026-06-19 02:36:57,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:36:57,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:36:57,351.351 INFO    ] No existing commands found in stream
[2026-06-19 02:37:02,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:37:02,363.363 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 02:37:06,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:37:06,547.547 INFO    ] Checking for system updates...
[2026-06-19 02:37:06,584.584 INFO    ] 200
[2026-06-19 02:37:06,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:06,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:37:06,642.642 INFO    ] No update needed
[2026-06-19 02:37:06,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 02:37:06,680.680 INFO    ] 200
[2026-06-19 02:37:06,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:06,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:37:06,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:37:06,774.774 INFO    ] No camera update needed
[2026-06-19 02:37:06,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:37:06,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:37:06,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:37:06,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:37:08,832.832 INFO    ] ================================================
[2026-06-19 02:37:08,847.847 INFO    ] Launching Daemon at Fri Jun 19 02:37:08 IST 2026
[2026-06-19 02:37:08,859.859 INFO    ] ================================================
[2026-06-19 02:37:09,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:37:09
[2026-06-19 02:37:10,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:37:10,309.309 INFO    ] Initializing speech engine...
[2026-06-19 02:37:10,318.318 INFO    ] 2026-06-19 02:37:10
[2026-06-19 02:37:10,573.573 INFO    ] 2026-06-19 02:37:10
[2026-06-19 02:37:10,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:37:10,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:37:10,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:37:10,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:37:10,935.935 INFO    ] time= 19/06/2026 02:37:10
[2026-06-19 02:37:10,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:37:10,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:37:11,111.111 INFO    ] No existing commands found in stream
[2026-06-19 02:37:16,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:37:16,139.139 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 02:37:17,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:37:17,931.931 INFO    ] Checking for system updates...
[2026-06-19 02:37:17,967.967 INFO    ] 200
[2026-06-19 02:37:17,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:18,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:37:18,025.025 INFO    ] No update needed
[2026-06-19 02:37:18,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 02:37:18,061.061 INFO    ] 200
[2026-06-19 02:37:18,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:18,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:37:18,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:37:18,162.162 INFO    ] No camera update needed
[2026-06-19 02:37:18,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:37:18,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:37:18,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:37:18,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:37:20,218.218 INFO    ] ================================================
[2026-06-19 02:37:20,233.233 INFO    ] Launching Daemon at Fri Jun 19 02:37:20 IST 2026
[2026-06-19 02:37:20,244.244 INFO    ] ================================================
[2026-06-19 02:37:20,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:37:20
[2026-06-19 02:37:21,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:37:21,800.800 INFO    ] Initializing speech engine...
[2026-06-19 02:37:21,807.807 INFO    ] 2026-06-19 02:37:21
[2026-06-19 02:37:22,094.094 INFO    ] 2026-06-19 02:37:22
[2026-06-19 02:37:22,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:37:22,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:37:22,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:37:22,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:37:22,523.523 INFO    ] time= 19/06/2026 02:37:22
[2026-06-19 02:37:22,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:37:22,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:37:22,703.703 INFO    ] No existing commands found in stream
[2026-06-19 02:37:27,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:37:27,719.719 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 02:37:29,759.759 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:37:29,762.762 INFO    ] Checking for system updates...
[2026-06-19 02:37:29,800.800 INFO    ] 200
[2026-06-19 02:37:29,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:29,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:37:29,862.862 INFO    ] No update needed
[2026-06-19 02:37:29,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 02:37:29,899.899 INFO    ] 200
[2026-06-19 02:37:29,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:29,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:37:29,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:37:29,985.985 INFO    ] No camera update needed
[2026-06-19 02:37:29,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:37:29,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:37:29,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:37:30,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:37:32,043.043 INFO    ] ================================================
[2026-06-19 02:37:32,059.059 INFO    ] Launching Daemon at Fri Jun 19 02:37:32 IST 2026
[2026-06-19 02:37:32,071.071 INFO    ] ================================================
[2026-06-19 02:37:32,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:37:32
[2026-06-19 02:37:33,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:37:33,502.502 INFO    ] Initializing speech engine...
[2026-06-19 02:37:33,510.510 INFO    ] 2026-06-19 02:37:33
[2026-06-19 02:37:33,793.793 INFO    ] 2026-06-19 02:37:33
[2026-06-19 02:37:33,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:37:34,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:37:34,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:37:34,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:37:34,197.197 INFO    ] time= 19/06/2026 02:37:34
[2026-06-19 02:37:34,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:37:34,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:37:34,279.279 INFO    ] No existing commands found in stream
[2026-06-19 02:37:39,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:37:39,294.294 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 02:37:42,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:37:42,115.115 INFO    ] Checking for system updates...
[2026-06-19 02:37:42,152.152 INFO    ] 200
[2026-06-19 02:37:42,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:42,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:37:42,216.216 INFO    ] No update needed
[2026-06-19 02:37:42,219.219 INFO    ] Checking for camera pi updates...
[2026-06-19 02:37:42,254.254 INFO    ] 200
[2026-06-19 02:37:42,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:42,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:37:42,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:37:42,346.346 INFO    ] No camera update needed
[2026-06-19 02:37:42,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:37:42,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:37:42,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:37:42,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:37:44,403.403 INFO    ] ================================================
[2026-06-19 02:37:44,418.418 INFO    ] Launching Daemon at Fri Jun 19 02:37:44 IST 2026
[2026-06-19 02:37:44,429.429 INFO    ] ================================================
[2026-06-19 02:37:45,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:37:45
[2026-06-19 02:37:45,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:37:45,882.882 INFO    ] Initializing speech engine...
[2026-06-19 02:37:45,890.890 INFO    ] 2026-06-19 02:37:45
[2026-06-19 02:37:46,150.150 INFO    ] 2026-06-19 02:37:46
[2026-06-19 02:37:46,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:37:46,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:37:46,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:37:46,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:37:46,616.616 INFO    ] time= 19/06/2026 02:37:46
[2026-06-19 02:37:46,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:37:46,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:37:46,762.762 INFO    ] No existing commands found in stream
[2026-06-19 02:37:51,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:37:51,778.778 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 02:37:52,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:37:52,254.254 INFO    ] Checking for system updates...
[2026-06-19 02:37:52,293.293 INFO    ] 200
[2026-06-19 02:37:52,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:52,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:37:52,352.352 INFO    ] No update needed
[2026-06-19 02:37:52,354.354 INFO    ] Checking for camera pi updates...
[2026-06-19 02:37:52,388.388 INFO    ] 200
[2026-06-19 02:37:52,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:37:52,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:37:52,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:37:52,485.485 INFO    ] No camera update needed
[2026-06-19 02:37:52,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:37:52,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:37:52,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:37:52,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:37:54,542.542 INFO    ] ================================================
[2026-06-19 02:37:54,557.557 INFO    ] Launching Daemon at Fri Jun 19 02:37:54 IST 2026
[2026-06-19 02:37:54,568.568 INFO    ] ================================================
[2026-06-19 02:37:55,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:37:55
[2026-06-19 02:37:55,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:37:55,975.975 INFO    ] Initializing speech engine...
[2026-06-19 02:37:55,981.981 INFO    ] 2026-06-19 02:37:55
[2026-06-19 02:37:56,272.272 INFO    ] 2026-06-19 02:37:56
[2026-06-19 02:37:56,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:37:56,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:37:56,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:37:56,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:37:56,673.673 INFO    ] time= 19/06/2026 02:37:56
[2026-06-19 02:37:56,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:37:56,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:37:56,757.757 INFO    ] No existing commands found in stream
[2026-06-19 02:38:01,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:38:01,775.775 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 02:38:03,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:38:03,668.668 INFO    ] Checking for system updates...
[2026-06-19 02:38:03,706.706 INFO    ] 200
[2026-06-19 02:38:03,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:03,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:38:03,765.765 INFO    ] No update needed
[2026-06-19 02:38:03,768.768 INFO    ] Checking for camera pi updates...
[2026-06-19 02:38:03,803.803 INFO    ] 200
[2026-06-19 02:38:03,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:03,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:38:03,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:38:03,899.899 INFO    ] No camera update needed
[2026-06-19 02:38:03,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:38:03,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:38:03,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:38:03,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:38:05,956.956 INFO    ] ================================================
[2026-06-19 02:38:05,971.971 INFO    ] Launching Daemon at Fri Jun 19 02:38:05 IST 2026
[2026-06-19 02:38:05,982.982 INFO    ] ================================================
[2026-06-19 02:38:06,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:38:06
[2026-06-19 02:38:07,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:38:07,505.505 INFO    ] Initializing speech engine...
[2026-06-19 02:38:07,515.515 INFO    ] 2026-06-19 02:38:07
[2026-06-19 02:38:07,768.768 INFO    ] 2026-06-19 02:38:07
[2026-06-19 02:38:07,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:38:08,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:38:08,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:38:08,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:38:08,158.158 INFO    ] time= 19/06/2026 02:38:08
[2026-06-19 02:38:08,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:38:08,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:38:08,259.259 INFO    ] No existing commands found in stream
[2026-06-19 02:38:13,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:38:13,298.298 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 02:38:16,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:38:16,130.130 INFO    ] Checking for system updates...
[2026-06-19 02:38:16,166.166 INFO    ] 200
[2026-06-19 02:38:16,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:16,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:38:16,225.225 INFO    ] No update needed
[2026-06-19 02:38:16,227.227 INFO    ] Checking for camera pi updates...
[2026-06-19 02:38:16,265.265 INFO    ] 200
[2026-06-19 02:38:16,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:16,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:38:16,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:38:16,458.458 INFO    ] No camera update needed
[2026-06-19 02:38:16,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:38:16,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:38:16,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:38:16,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:38:18,519.519 INFO    ] ================================================
[2026-06-19 02:38:18,534.534 INFO    ] Launching Daemon at Fri Jun 19 02:38:18 IST 2026
[2026-06-19 02:38:18,544.544 INFO    ] ================================================
[2026-06-19 02:38:19,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:38:19
[2026-06-19 02:38:19,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:38:20,108.108 INFO    ] Initializing speech engine...
[2026-06-19 02:38:20,116.116 INFO    ] 2026-06-19 02:38:20
[2026-06-19 02:38:20,382.382 INFO    ] 2026-06-19 02:38:20
[2026-06-19 02:38:20,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:38:20,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:38:20,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:38:20,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:38:20,861.861 INFO    ] time= 19/06/2026 02:38:20
[2026-06-19 02:38:20,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:38:20,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:38:21,014.014 INFO    ] No existing commands found in stream
[2026-06-19 02:38:26,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:38:26,037.037 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 02:38:29,333.333 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:38:29,336.336 INFO    ] Checking for system updates...
[2026-06-19 02:38:29,373.373 INFO    ] 200
[2026-06-19 02:38:29,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:29,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:38:29,430.430 INFO    ] No update needed
[2026-06-19 02:38:29,432.432 INFO    ] Checking for camera pi updates...
[2026-06-19 02:38:29,469.469 INFO    ] 200
[2026-06-19 02:38:29,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:29,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:38:29,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:38:29,569.569 INFO    ] No camera update needed
[2026-06-19 02:38:29,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:38:29,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:38:29,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:38:29,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:38:31,627.627 INFO    ] ================================================
[2026-06-19 02:38:31,644.644 INFO    ] Launching Daemon at Fri Jun 19 02:38:31 IST 2026
[2026-06-19 02:38:31,656.656 INFO    ] ================================================
[2026-06-19 02:38:32,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:38:32
[2026-06-19 02:38:32,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:38:33,228.228 INFO    ] Initializing speech engine...
[2026-06-19 02:38:33,237.237 INFO    ] 2026-06-19 02:38:33
[2026-06-19 02:38:33,529.529 INFO    ] 2026-06-19 02:38:33
[2026-06-19 02:38:33,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:38:33,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:38:33,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:38:33,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:38:34,009.009 INFO    ] time= 19/06/2026 02:38:33
[2026-06-19 02:38:34,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:38:34,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:38:34,186.186 INFO    ] No existing commands found in stream
[2026-06-19 02:38:39,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:38:39,227.227 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 02:38:40,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:38:40,772.772 INFO    ] Checking for system updates...
[2026-06-19 02:38:40,810.810 INFO    ] 200
[2026-06-19 02:38:40,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:40,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:38:40,870.870 INFO    ] No update needed
[2026-06-19 02:38:40,872.872 INFO    ] Checking for camera pi updates...
[2026-06-19 02:38:40,910.910 INFO    ] 200
[2026-06-19 02:38:40,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:40,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:38:41,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:38:41,011.011 INFO    ] No camera update needed
[2026-06-19 02:38:41,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:38:41,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:38:41,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:38:41,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:38:43,068.068 INFO    ] ================================================
[2026-06-19 02:38:43,084.084 INFO    ] Launching Daemon at Fri Jun 19 02:38:43 IST 2026
[2026-06-19 02:38:43,094.094 INFO    ] ================================================
[2026-06-19 02:38:43,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:38:43
[2026-06-19 02:38:44,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:38:44,630.630 INFO    ] Initializing speech engine...
[2026-06-19 02:38:44,636.636 INFO    ] 2026-06-19 02:38:44
[2026-06-19 02:38:44,896.896 INFO    ] 2026-06-19 02:38:44
[2026-06-19 02:38:44,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:38:45,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:38:45,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:38:45,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:38:45,356.356 INFO    ] time= 19/06/2026 02:38:45
[2026-06-19 02:38:45,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:38:45,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:38:45,501.501 INFO    ] No existing commands found in stream
[2026-06-19 02:38:50,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:38:50,516.516 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 02:38:51,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:38:51,357.357 INFO    ] Checking for system updates...
[2026-06-19 02:38:51,395.395 INFO    ] 200
[2026-06-19 02:38:51,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:51,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:38:51,458.458 INFO    ] No update needed
[2026-06-19 02:38:51,461.461 INFO    ] Checking for camera pi updates...
[2026-06-19 02:38:51,496.496 INFO    ] 200
[2026-06-19 02:38:51,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:38:51,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:38:51,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:38:51,592.592 INFO    ] No camera update needed
[2026-06-19 02:38:51,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:38:51,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:38:51,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:38:51,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:38:53,647.647 INFO    ] ================================================
[2026-06-19 02:38:53,662.662 INFO    ] Launching Daemon at Fri Jun 19 02:38:53 IST 2026
[2026-06-19 02:38:53,673.673 INFO    ] ================================================
[2026-06-19 02:38:54,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:38:54
[2026-06-19 02:38:54,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:38:55,112.112 INFO    ] Initializing speech engine...
[2026-06-19 02:38:55,121.121 INFO    ] 2026-06-19 02:38:55
[2026-06-19 02:38:55,417.417 INFO    ] 2026-06-19 02:38:55
[2026-06-19 02:38:55,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:38:55,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:38:55,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:38:55,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:38:55,791.791 INFO    ] time= 19/06/2026 02:38:55
[2026-06-19 02:38:55,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:38:55,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:38:55,914.914 INFO    ] No existing commands found in stream
[2026-06-19 02:39:00,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:39:00,930.930 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 02:39:04,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:39:04,828.828 INFO    ] Checking for system updates...
[2026-06-19 02:39:04,867.867 INFO    ] 200
[2026-06-19 02:39:04,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:04,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:39:04,930.930 INFO    ] No update needed
[2026-06-19 02:39:04,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 02:39:04,966.966 INFO    ] 200
[2026-06-19 02:39:04,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:05,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:39:05,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:39:05,056.056 INFO    ] No camera update needed
[2026-06-19 02:39:05,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:39:05,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:39:05,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:39:05,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:39:07,111.111 INFO    ] ================================================
[2026-06-19 02:39:07,126.126 INFO    ] Launching Daemon at Fri Jun 19 02:39:07 IST 2026
[2026-06-19 02:39:07,137.137 INFO    ] ================================================
[2026-06-19 02:39:07,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:39:07
[2026-06-19 02:39:08,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:39:08,555.555 INFO    ] Initializing speech engine...
[2026-06-19 02:39:08,563.563 INFO    ] 2026-06-19 02:39:08
[2026-06-19 02:39:08,813.813 INFO    ] 2026-06-19 02:39:08
[2026-06-19 02:39:08,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:39:09,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:39:09,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:39:09,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:39:09,287.287 INFO    ] time= 19/06/2026 02:39:09
[2026-06-19 02:39:09,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:39:09,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:39:09,439.439 INFO    ] No existing commands found in stream
[2026-06-19 02:39:14,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:39:14,454.454 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 02:39:16,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:39:16,284.284 INFO    ] Checking for system updates...
[2026-06-19 02:39:16,319.319 INFO    ] 200
[2026-06-19 02:39:16,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:16,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:39:16,377.377 INFO    ] No update needed
[2026-06-19 02:39:16,379.379 INFO    ] Checking for camera pi updates...
[2026-06-19 02:39:16,413.413 INFO    ] 200
[2026-06-19 02:39:16,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:16,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:39:16,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:39:16,516.516 INFO    ] No camera update needed
[2026-06-19 02:39:16,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:39:16,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:39:16,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:39:16,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:39:18,571.571 INFO    ] ================================================
[2026-06-19 02:39:18,586.586 INFO    ] Launching Daemon at Fri Jun 19 02:39:18 IST 2026
[2026-06-19 02:39:18,597.597 INFO    ] ================================================
[2026-06-19 02:39:19,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:39:19
[2026-06-19 02:39:19,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:39:20,021.021 INFO    ] Initializing speech engine...
[2026-06-19 02:39:20,029.029 INFO    ] 2026-06-19 02:39:20
[2026-06-19 02:39:20,280.280 INFO    ] 2026-06-19 02:39:20
[2026-06-19 02:39:20,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:39:20,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:39:20,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:39:20,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:39:20,651.651 INFO    ] time= 19/06/2026 02:39:20
[2026-06-19 02:39:20,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:39:20,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:39:20,731.731 INFO    ] No existing commands found in stream
[2026-06-19 02:39:25,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:39:25,747.747 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 02:39:29,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:39:29,839.839 INFO    ] Checking for system updates...
[2026-06-19 02:39:29,876.876 INFO    ] 200
[2026-06-19 02:39:29,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:29,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:39:29,941.941 INFO    ] No update needed
[2026-06-19 02:39:29,944.944 INFO    ] Checking for camera pi updates...
[2026-06-19 02:39:29,979.979 INFO    ] 200
[2026-06-19 02:39:29,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:30,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:39:30,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:39:30,073.073 INFO    ] No camera update needed
[2026-06-19 02:39:30,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:39:30,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:39:30,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:39:30,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:39:32,131.131 INFO    ] ================================================
[2026-06-19 02:39:32,147.147 INFO    ] Launching Daemon at Fri Jun 19 02:39:32 IST 2026
[2026-06-19 02:39:32,158.158 INFO    ] ================================================
[2026-06-19 02:39:32,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:39:32
[2026-06-19 02:39:33,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:39:33,669.669 INFO    ] Initializing speech engine...
[2026-06-19 02:39:33,675.675 INFO    ] 2026-06-19 02:39:33
[2026-06-19 02:39:33,971.971 INFO    ] 2026-06-19 02:39:33
[2026-06-19 02:39:34,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:39:34,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:39:34,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:39:34,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:39:34,382.382 INFO    ] time= 19/06/2026 02:39:34
[2026-06-19 02:39:34,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:39:34,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:39:34,471.471 INFO    ] No existing commands found in stream
[2026-06-19 02:39:39,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:39:39,487.487 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 02:39:43,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:39:43,831.831 INFO    ] Checking for system updates...
[2026-06-19 02:39:43,866.866 INFO    ] 200
[2026-06-19 02:39:43,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:43,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:39:43,932.932 INFO    ] No update needed
[2026-06-19 02:39:43,935.935 INFO    ] Checking for camera pi updates...
[2026-06-19 02:39:43,972.972 INFO    ] 200
[2026-06-19 02:39:43,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:44,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:39:44,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:39:44,151.151 INFO    ] No camera update needed
[2026-06-19 02:39:44,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:39:44,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:39:44,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:39:44,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:39:46,206.206 INFO    ] ================================================
[2026-06-19 02:39:46,222.222 INFO    ] Launching Daemon at Fri Jun 19 02:39:46 IST 2026
[2026-06-19 02:39:46,232.232 INFO    ] ================================================
[2026-06-19 02:39:46,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:39:46
[2026-06-19 02:39:47,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:39:47,834.834 INFO    ] Initializing speech engine...
[2026-06-19 02:39:47,845.845 INFO    ] 2026-06-19 02:39:47
[2026-06-19 02:39:48,124.124 INFO    ] 2026-06-19 02:39:48
[2026-06-19 02:39:48,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:39:48,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:39:48,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:39:48,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:39:48,592.592 INFO    ] time= 19/06/2026 02:39:48
[2026-06-19 02:39:48,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:39:48,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:39:48,805.805 INFO    ] No existing commands found in stream
[2026-06-19 02:39:53,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:39:53,833.833 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 02:39:56,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:39:56,674.674 INFO    ] Checking for system updates...
[2026-06-19 02:39:56,711.711 INFO    ] 200
[2026-06-19 02:39:56,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:56,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:39:56,771.771 INFO    ] No update needed
[2026-06-19 02:39:56,774.774 INFO    ] Checking for camera pi updates...
[2026-06-19 02:39:56,808.808 INFO    ] 200
[2026-06-19 02:39:56,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:39:56,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:39:56,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:39:56,916.916 INFO    ] No camera update needed
[2026-06-19 02:39:56,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:39:56,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:39:56,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:39:56,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:39:58,976.976 INFO    ] ================================================
[2026-06-19 02:39:58,991.991 INFO    ] Launching Daemon at Fri Jun 19 02:39:58 IST 2026
[2026-06-19 02:39:59,002.002 INFO    ] ================================================
[2026-06-19 02:39:59,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:39:59
[2026-06-19 02:40:00,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:40:00,605.605 INFO    ] Initializing speech engine...
[2026-06-19 02:40:00,613.613 INFO    ] 2026-06-19 02:40:00
[2026-06-19 02:40:00,883.883 INFO    ] 2026-06-19 02:40:00
[2026-06-19 02:40:00,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:40:01,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:40:01,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:40:01,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:40:01,362.362 INFO    ] time= 19/06/2026 02:40:01
[2026-06-19 02:40:01,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:40:01,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:40:01,512.512 INFO    ] No existing commands found in stream
[2026-06-19 02:40:06,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:40:06,528.528 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 02:40:09,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:40:09,725.725 INFO    ] Checking for system updates...
[2026-06-19 02:40:09,762.762 INFO    ] 200
[2026-06-19 02:40:09,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:09,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:40:09,826.826 INFO    ] No update needed
[2026-06-19 02:40:09,828.828 INFO    ] Checking for camera pi updates...
[2026-06-19 02:40:09,866.866 INFO    ] 200
[2026-06-19 02:40:09,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:09,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:40:09,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:40:09,957.957 INFO    ] No camera update needed
[2026-06-19 02:40:09,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:40:09,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:40:09,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:40:09,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:40:12,013.013 INFO    ] ================================================
[2026-06-19 02:40:12,028.028 INFO    ] Launching Daemon at Fri Jun 19 02:40:12 IST 2026
[2026-06-19 02:40:12,039.039 INFO    ] ================================================
[2026-06-19 02:40:12,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:40:12
[2026-06-19 02:40:13,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:40:13,443.443 INFO    ] Initializing speech engine...
[2026-06-19 02:40:13,458.458 INFO    ] 2026-06-19 02:40:13
[2026-06-19 02:40:13,723.723 INFO    ] 2026-06-19 02:40:13
[2026-06-19 02:40:13,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:40:13,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:40:13,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:40:14,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:40:14,099.099 INFO    ] time= 19/06/2026 02:40:14
[2026-06-19 02:40:14,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:40:14,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:40:14,258.258 INFO    ] No existing commands found in stream
[2026-06-19 02:40:19,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:40:19,291.291 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 02:40:23,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:40:23,398.398 INFO    ] Checking for system updates...
[2026-06-19 02:40:23,433.433 INFO    ] 200
[2026-06-19 02:40:23,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:23,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:40:23,491.491 INFO    ] No update needed
[2026-06-19 02:40:23,494.494 INFO    ] Checking for camera pi updates...
[2026-06-19 02:40:23,527.527 INFO    ] 200
[2026-06-19 02:40:23,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:23,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:40:23,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:40:23,719.719 INFO    ] No camera update needed
[2026-06-19 02:40:23,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:40:23,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:40:23,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:40:23,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:40:25,777.777 INFO    ] ================================================
[2026-06-19 02:40:25,793.793 INFO    ] Launching Daemon at Fri Jun 19 02:40:25 IST 2026
[2026-06-19 02:40:25,803.803 INFO    ] ================================================
[2026-06-19 02:40:26,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:40:26
[2026-06-19 02:40:26,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:40:27,213.213 INFO    ] Initializing speech engine...
[2026-06-19 02:40:27,228.228 INFO    ] 2026-06-19 02:40:27
[2026-06-19 02:40:27,495.495 INFO    ] 2026-06-19 02:40:27
[2026-06-19 02:40:27,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:40:27,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:40:27,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:40:27,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:40:27,873.873 INFO    ] time= 19/06/2026 02:40:27
[2026-06-19 02:40:27,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:40:27,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:40:28,053.053 INFO    ] No existing commands found in stream
[2026-06-19 02:40:33,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:40:33,090.090 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-19 02:40:33,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:40:33,474.474 INFO    ] Checking for system updates...
[2026-06-19 02:40:33,515.515 INFO    ] 200
[2026-06-19 02:40:33,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:33,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:40:33,572.572 INFO    ] No update needed
[2026-06-19 02:40:33,575.575 INFO    ] Checking for camera pi updates...
[2026-06-19 02:40:33,614.614 INFO    ] 200
[2026-06-19 02:40:33,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:33,658.658 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:40:33,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:40:33,707.707 INFO    ] No camera update needed
[2026-06-19 02:40:33,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:40:33,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:40:33,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:40:33,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:40:35,766.766 INFO    ] ================================================
[2026-06-19 02:40:35,781.781 INFO    ] Launching Daemon at Fri Jun 19 02:40:35 IST 2026
[2026-06-19 02:40:35,792.792 INFO    ] ================================================
[2026-06-19 02:40:36,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:40:36
[2026-06-19 02:40:36,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:40:37,211.211 INFO    ] Initializing speech engine...
[2026-06-19 02:40:37,227.227 INFO    ] 2026-06-19 02:40:37
[2026-06-19 02:40:37,482.482 INFO    ] 2026-06-19 02:40:37
[2026-06-19 02:40:37,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:40:37,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:40:37,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:40:37,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:40:37,983.983 INFO    ] time= 19/06/2026 02:40:37
[2026-06-19 02:40:38,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:40:38,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:40:38,118.118 INFO    ] No existing commands found in stream
[2026-06-19 02:40:43,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:40:43,131.131 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 02:40:44,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:40:44,903.903 INFO    ] Checking for system updates...
[2026-06-19 02:40:44,940.940 INFO    ] 200
[2026-06-19 02:40:44,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:44,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:40:44,998.998 INFO    ] No update needed
[2026-06-19 02:40:45,000.000 INFO    ] Checking for camera pi updates...
[2026-06-19 02:40:45,043.043 INFO    ] 200
[2026-06-19 02:40:45,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:45,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:40:45,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:40:45,128.128 INFO    ] No camera update needed
[2026-06-19 02:40:45,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:40:45,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:40:45,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:40:45,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:40:47,185.185 INFO    ] ================================================
[2026-06-19 02:40:47,200.200 INFO    ] Launching Daemon at Fri Jun 19 02:40:47 IST 2026
[2026-06-19 02:40:47,211.211 INFO    ] ================================================
[2026-06-19 02:40:47,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:40:47
[2026-06-19 02:40:48,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:40:48,663.663 INFO    ] Initializing speech engine...
[2026-06-19 02:40:48,682.682 INFO    ] 2026-06-19 02:40:48
[2026-06-19 02:40:48,932.932 INFO    ] 2026-06-19 02:40:48
[2026-06-19 02:40:48,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:40:49,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:40:49,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:40:49,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:40:49,407.407 INFO    ] time= 19/06/2026 02:40:49
[2026-06-19 02:40:49,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:40:49,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:40:49,556.556 INFO    ] No existing commands found in stream
[2026-06-19 02:40:54,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:40:54,573.573 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 02:40:56,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:40:56,697.697 INFO    ] Checking for system updates...
[2026-06-19 02:40:56,735.735 INFO    ] 200
[2026-06-19 02:40:56,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:56,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:40:56,794.794 INFO    ] No update needed
[2026-06-19 02:40:56,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 02:40:56,834.834 INFO    ] 200
[2026-06-19 02:40:56,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:40:56,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:40:56,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:40:56,933.933 INFO    ] No camera update needed
[2026-06-19 02:40:56,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:40:56,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:40:56,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:40:56,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:40:58,990.990 INFO    ] ================================================
[2026-06-19 02:40:59,005.005 INFO    ] Launching Daemon at Fri Jun 19 02:40:59 IST 2026
[2026-06-19 02:40:59,016.016 INFO    ] ================================================
[2026-06-19 02:40:59,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:40:59
[2026-06-19 02:41:00,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:41:00,473.473 INFO    ] Initializing speech engine...
[2026-06-19 02:41:00,482.482 INFO    ] 2026-06-19 02:41:00
[2026-06-19 02:41:00,741.741 INFO    ] 2026-06-19 02:41:00
[2026-06-19 02:41:00,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:41:01,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:41:01,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:41:01,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:41:01,201.201 INFO    ] time= 19/06/2026 02:41:01
[2026-06-19 02:41:01,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:41:01,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:41:01,278.278 INFO    ] No existing commands found in stream
[2026-06-19 02:41:06,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:41:06,292.292 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 02:41:07,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:41:07,453.453 INFO    ] Checking for system updates...
[2026-06-19 02:41:07,494.494 INFO    ] 200
[2026-06-19 02:41:07,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:41:07,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:41:07,560.560 INFO    ] No update needed
[2026-06-19 02:41:07,562.562 INFO    ] Checking for camera pi updates...
[2026-06-19 02:41:07,597.597 INFO    ] 200
[2026-06-19 02:41:07,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:41:07,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:41:07,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:41:07,699.699 INFO    ] No camera update needed
[2026-06-19 02:41:07,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:41:07,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:41:07,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:41:07,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:41:09,754.754 INFO    ] ================================================
[2026-06-19 02:41:09,769.769 INFO    ] Launching Daemon at Fri Jun 19 02:41:09 IST 2026
[2026-06-19 02:41:09,780.780 INFO    ] ================================================
[2026-06-19 02:41:10,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:41:10
[2026-06-19 02:41:10,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:41:11,209.209 INFO    ] Initializing speech engine...
[2026-06-19 02:41:11,232.232 INFO    ] 2026-06-19 02:41:11
[2026-06-19 02:41:11,485.485 INFO    ] 2026-06-19 02:41:11
[2026-06-19 02:41:11,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:41:11,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:41:11,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:41:11,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:41:11,965.965 INFO    ] time= 19/06/2026 02:41:11
[2026-06-19 02:41:12,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:41:12,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:41:12,102.102 INFO    ] No existing commands found in stream
[2026-06-19 02:41:17,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:41:17,117.117 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 02:41:21,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:41:21,055.055 INFO    ] Checking for system updates...
[2026-06-19 02:41:21,091.091 INFO    ] 200
[2026-06-19 02:41:21,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:41:21,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:41:21,155.155 INFO    ] No update needed
[2026-06-19 02:41:21,158.158 INFO    ] Checking for camera pi updates...
[2026-06-19 02:41:21,195.195 INFO    ] 200
[2026-06-19 02:41:21,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:41:21,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:41:21,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:41:21,284.284 INFO    ] No camera update needed
[2026-06-19 02:41:21,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:41:21,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:41:21,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:41:21,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:41:23,339.339 INFO    ] ================================================
[2026-06-19 02:41:23,354.354 INFO    ] Launching Daemon at Fri Jun 19 02:41:23 IST 2026
[2026-06-19 02:41:23,365.365 INFO    ] ================================================
[2026-06-19 02:41:23,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:41:23
[2026-06-19 02:41:24,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:41:24,907.907 INFO    ] Initializing speech engine...
[2026-06-19 02:41:24,915.915 INFO    ] 2026-06-19 02:41:24
[2026-06-19 02:41:25,203.203 INFO    ] 2026-06-19 02:41:25
[2026-06-19 02:41:25,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:41:25,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:41:25,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:41:25,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:41:25,669.669 INFO    ] time= 19/06/2026 02:41:25
[2026-06-19 02:41:25,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:41:25,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:41:25,813.813 INFO    ] No existing commands found in stream
[2026-06-19 02:41:30,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:41:30,830.830 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 02:41:34,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:41:34,964.964 INFO    ] Checking for system updates...
[2026-06-19 02:41:35,001.001 INFO    ] 200
[2026-06-19 02:41:35,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:41:35,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:41:35,061.061 INFO    ] No update needed
[2026-06-19 02:41:35,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 02:41:35,103.103 INFO    ] 200
[2026-06-19 02:41:35,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:41:35,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:41:35,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:41:35,203.203 INFO    ] No camera update needed
[2026-06-19 02:41:35,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:41:35,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:41:35,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:41:35,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:41:37,262.262 INFO    ] ================================================
[2026-06-19 02:41:37,277.277 INFO    ] Launching Daemon at Fri Jun 19 02:41:37 IST 2026
[2026-06-19 02:41:37,288.288 INFO    ] ================================================
[2026-06-19 02:41:37,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:41:37
[2026-06-19 02:41:38,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:41:38,894.894 INFO    ] Initializing speech engine...
[2026-06-19 02:41:38,904.904 INFO    ] 2026-06-19 02:41:38
[2026-06-19 02:41:39,191.191 INFO    ] 2026-06-19 02:41:39
[2026-06-19 02:41:39,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:41:39,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:41:39,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:41:39,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:41:39,643.643 INFO    ] time= 19/06/2026 02:41:39
[2026-06-19 02:41:39,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:41:39,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:41:39,792.792 INFO    ] No existing commands found in stream
[2026-06-19 02:41:44,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:41:44,808.808 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 02:41:47,222.222 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:41:47,225.225 INFO    ] Checking for system updates...
[2026-06-19 02:41:47,266.266 INFO    ] 200
[2026-06-19 02:41:47,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:41:47,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:41:47,330.330 INFO    ] No update needed
[2026-06-19 02:41:47,332.332 INFO    ] Checking for camera pi updates...
[2026-06-19 02:41:47,370.370 INFO    ] 200
[2026-06-19 02:41:47,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:41:47,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:41:47,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:41:47,451.451 INFO    ] No camera update needed
[2026-06-19 02:41:47,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:41:47,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:41:47,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:41:47,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:41:49,508.508 INFO    ] ================================================
[2026-06-19 02:41:49,523.523 INFO    ] Launching Daemon at Fri Jun 19 02:41:49 IST 2026
[2026-06-19 02:41:49,534.534 INFO    ] ================================================
[2026-06-19 02:41:50,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:41:50
[2026-06-19 02:41:50,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:41:50,945.945 INFO    ] Initializing speech engine...
[2026-06-19 02:41:50,965.965 INFO    ] 2026-06-19 02:41:50
[2026-06-19 02:41:51,215.215 INFO    ] 2026-06-19 02:41:51
[2026-06-19 02:41:51,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:41:51,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:41:51,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:41:51,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:41:51,690.690 INFO    ] time= 19/06/2026 02:41:51
[2026-06-19 02:41:51,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:41:51,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:41:51,919.919 INFO    ] No existing commands found in stream
[2026-06-19 02:41:56,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:41:56,949.949 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 02:42:00,356.356 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:42:00,358.358 INFO    ] Checking for system updates...
[2026-06-19 02:42:00,398.398 INFO    ] 200
[2026-06-19 02:42:00,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:00,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:42:00,455.455 INFO    ] No update needed
[2026-06-19 02:42:00,458.458 INFO    ] Checking for camera pi updates...
[2026-06-19 02:42:00,497.497 INFO    ] 200
[2026-06-19 02:42:00,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:00,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:42:00,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:42:00,590.590 INFO    ] No camera update needed
[2026-06-19 02:42:00,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:42:00,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:42:00,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:42:00,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:42:02,650.650 INFO    ] ================================================
[2026-06-19 02:42:02,672.672 INFO    ] Launching Daemon at Fri Jun 19 02:42:02 IST 2026
[2026-06-19 02:42:02,687.687 INFO    ] ================================================
[2026-06-19 02:42:03,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:42:03
[2026-06-19 02:42:04,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:42:04,260.260 INFO    ] Initializing speech engine...
[2026-06-19 02:42:04,269.269 INFO    ] 2026-06-19 02:42:04
[2026-06-19 02:42:04,568.568 INFO    ] 2026-06-19 02:42:04
[2026-06-19 02:42:04,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:42:04,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:42:04,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:42:04,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:42:04,994.994 INFO    ] time= 19/06/2026 02:42:04
[2026-06-19 02:42:04,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:42:05,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:42:05,080.080 INFO    ] No existing commands found in stream
[2026-06-19 02:42:10,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:42:10,095.095 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 02:42:11,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:42:11,724.724 INFO    ] Checking for system updates...
[2026-06-19 02:42:11,759.759 INFO    ] 200
[2026-06-19 02:42:11,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:11,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:42:11,824.824 INFO    ] No update needed
[2026-06-19 02:42:11,826.826 INFO    ] Checking for camera pi updates...
[2026-06-19 02:42:11,861.861 INFO    ] 200
[2026-06-19 02:42:11,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:11,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:42:11,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:42:11,956.956 INFO    ] No camera update needed
[2026-06-19 02:42:11,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:42:11,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:42:11,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:42:11,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:42:14,012.012 INFO    ] ================================================
[2026-06-19 02:42:14,028.028 INFO    ] Launching Daemon at Fri Jun 19 02:42:14 IST 2026
[2026-06-19 02:42:14,039.039 INFO    ] ================================================
[2026-06-19 02:42:14,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:42:14
[2026-06-19 02:42:15,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:42:15,452.452 INFO    ] Initializing speech engine...
[2026-06-19 02:42:15,460.460 INFO    ] 2026-06-19 02:42:15
[2026-06-19 02:42:15,754.754 INFO    ] 2026-06-19 02:42:15
[2026-06-19 02:42:15,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:42:15,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:42:16,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:42:16,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:42:16,137.137 INFO    ] time= 19/06/2026 02:42:16
[2026-06-19 02:42:16,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:42:16,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:42:16,261.261 INFO    ] No existing commands found in stream
[2026-06-19 02:42:21,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:42:21,277.277 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 02:42:23,596.596 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:42:23,599.599 INFO    ] Checking for system updates...
[2026-06-19 02:42:23,640.640 INFO    ] 200
[2026-06-19 02:42:23,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:23,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:42:23,706.706 INFO    ] No update needed
[2026-06-19 02:42:23,709.709 INFO    ] Checking for camera pi updates...
[2026-06-19 02:42:23,748.748 INFO    ] 200
[2026-06-19 02:42:23,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:23,797.797 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:42:23,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:42:23,857.857 INFO    ] No camera update needed
[2026-06-19 02:42:23,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:42:23,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:42:23,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:42:23,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:42:25,918.918 INFO    ] ================================================
[2026-06-19 02:42:25,933.933 INFO    ] Launching Daemon at Fri Jun 19 02:42:25 IST 2026
[2026-06-19 02:42:25,944.944 INFO    ] ================================================
[2026-06-19 02:42:26,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:42:26
[2026-06-19 02:42:27,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:42:27,552.552 INFO    ] Initializing speech engine...
[2026-06-19 02:42:27,566.566 INFO    ] 2026-06-19 02:42:27
[2026-06-19 02:42:27,884.884 INFO    ] 2026-06-19 02:42:27
[2026-06-19 02:42:27,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:42:28,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:42:28,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:42:28,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:42:28,403.403 INFO    ] time= 19/06/2026 02:42:28
[2026-06-19 02:42:28,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:42:28,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:42:28,537.537 INFO    ] No existing commands found in stream
[2026-06-19 02:42:33,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:42:33,572.572 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 02:42:34,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:42:34,910.910 INFO    ] Checking for system updates...
[2026-06-19 02:42:34,953.953 INFO    ] 200
[2026-06-19 02:42:34,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:35,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:42:35,013.013 INFO    ] No update needed
[2026-06-19 02:42:35,016.016 INFO    ] Checking for camera pi updates...
[2026-06-19 02:42:35,051.051 INFO    ] 200
[2026-06-19 02:42:35,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:35,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:42:35,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:42:35,144.144 INFO    ] No camera update needed
[2026-06-19 02:42:35,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:42:35,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:42:35,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:42:35,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:42:37,205.205 INFO    ] ================================================
[2026-06-19 02:42:37,221.221 INFO    ] Launching Daemon at Fri Jun 19 02:42:37 IST 2026
[2026-06-19 02:42:37,232.232 INFO    ] ================================================
[2026-06-19 02:42:37,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:42:37
[2026-06-19 02:42:38,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:42:38,637.637 INFO    ] Initializing speech engine...
[2026-06-19 02:42:38,649.649 INFO    ] 2026-06-19 02:42:38
[2026-06-19 02:42:38,918.918 INFO    ] 2026-06-19 02:42:38
[2026-06-19 02:42:38,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:42:39,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:42:39,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:42:39,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:42:39,319.319 INFO    ] time= 19/06/2026 02:42:39
[2026-06-19 02:42:39,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:42:39,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:42:39,418.418 INFO    ] No existing commands found in stream
[2026-06-19 02:42:44,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:42:44,435.435 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 02:42:48,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:42:48,811.811 INFO    ] Checking for system updates...
[2026-06-19 02:42:48,851.851 INFO    ] 200
[2026-06-19 02:42:48,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:48,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:42:48,910.910 INFO    ] No update needed
[2026-06-19 02:42:48,912.912 INFO    ] Checking for camera pi updates...
[2026-06-19 02:42:48,952.952 INFO    ] 200
[2026-06-19 02:42:48,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:49,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:42:49,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:42:49,052.052 INFO    ] No camera update needed
[2026-06-19 02:42:49,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:42:49,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:42:49,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:42:49,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:42:51,112.112 INFO    ] ================================================
[2026-06-19 02:42:51,129.129 INFO    ] Launching Daemon at Fri Jun 19 02:42:51 IST 2026
[2026-06-19 02:42:51,140.140 INFO    ] ================================================
[2026-06-19 02:42:51,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:42:51
[2026-06-19 02:42:52,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:42:52,583.583 INFO    ] Initializing speech engine...
[2026-06-19 02:42:52,592.592 INFO    ] 2026-06-19 02:42:52
[2026-06-19 02:42:52,848.848 INFO    ] 2026-06-19 02:42:52
[2026-06-19 02:42:52,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:42:53,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:42:53,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:42:53,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:42:53,223.223 INFO    ] time= 19/06/2026 02:42:53
[2026-06-19 02:42:53,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:42:53,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:42:53,391.391 INFO    ] No existing commands found in stream
[2026-06-19 02:42:58,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:42:58,419.419 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 02:42:59,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:42:59,077.077 INFO    ] Checking for system updates...
[2026-06-19 02:42:59,114.114 INFO    ] 200
[2026-06-19 02:42:59,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:59,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:42:59,181.181 INFO    ] No update needed
[2026-06-19 02:42:59,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 02:42:59,219.219 INFO    ] 200
[2026-06-19 02:42:59,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:42:59,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:42:59,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:42:59,323.323 INFO    ] No camera update needed
[2026-06-19 02:42:59,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:42:59,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:42:59,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:42:59,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:43:01,382.382 INFO    ] ================================================
[2026-06-19 02:43:01,398.398 INFO    ] Launching Daemon at Fri Jun 19 02:43:01 IST 2026
[2026-06-19 02:43:01,409.409 INFO    ] ================================================
[2026-06-19 02:43:02,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:43:02
[2026-06-19 02:43:02,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:43:03,262.262 INFO    ] Initializing speech engine...
[2026-06-19 02:43:03,282.282 INFO    ] 2026-06-19 02:43:03
[2026-06-19 02:43:03,555.555 INFO    ] 2026-06-19 02:43:03
[2026-06-19 02:43:03,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:43:03,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:43:03,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:43:03,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:43:03,958.958 INFO    ] time= 19/06/2026 02:43:03
[2026-06-19 02:43:03,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:43:03,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:43:04,031.031 INFO    ] No existing commands found in stream
[2026-06-19 02:43:09,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:43:09,047.047 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 02:43:12,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:43:12,936.936 INFO    ] Checking for system updates...
[2026-06-19 02:43:12,972.972 INFO    ] 200
[2026-06-19 02:43:12,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:43:13,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:43:13,033.033 INFO    ] No update needed
[2026-06-19 02:43:13,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 02:43:13,071.071 INFO    ] 200
[2026-06-19 02:43:13,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:43:13,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:43:13,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:43:13,159.159 INFO    ] No camera update needed
[2026-06-19 02:43:13,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:43:13,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:43:13,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:43:13,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:43:15,221.221 INFO    ] ================================================
[2026-06-19 02:43:15,236.236 INFO    ] Launching Daemon at Fri Jun 19 02:43:15 IST 2026
[2026-06-19 02:43:15,247.247 INFO    ] ================================================
[2026-06-19 02:43:15,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:43:15
[2026-06-19 02:43:16,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:43:16,685.685 INFO    ] Initializing speech engine...
[2026-06-19 02:43:16,694.694 INFO    ] 2026-06-19 02:43:16
[2026-06-19 02:43:16,950.950 INFO    ] 2026-06-19 02:43:16
[2026-06-19 02:43:16,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:43:17,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:43:17,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:43:17,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:43:17,389.389 INFO    ] time= 19/06/2026 02:43:17
[2026-06-19 02:43:17,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:43:17,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:43:17,530.530 INFO    ] No existing commands found in stream
[2026-06-19 02:43:22,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:43:22,545.545 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 02:43:23,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:43:23,937.937 INFO    ] Checking for system updates...
[2026-06-19 02:43:23,972.972 INFO    ] 200
[2026-06-19 02:43:23,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:43:24,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:43:24,039.039 INFO    ] No update needed
[2026-06-19 02:43:24,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 02:43:24,075.075 INFO    ] 200
[2026-06-19 02:43:24,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:43:24,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:43:24,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:43:24,168.168 INFO    ] No camera update needed
[2026-06-19 02:43:24,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:43:24,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:43:24,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:43:24,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:43:26,225.225 INFO    ] ================================================
[2026-06-19 02:43:26,241.241 INFO    ] Launching Daemon at Fri Jun 19 02:43:26 IST 2026
[2026-06-19 02:43:26,252.252 INFO    ] ================================================
[2026-06-19 02:43:26,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:43:26
[2026-06-19 02:43:27,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:43:27,696.696 INFO    ] Initializing speech engine...
[2026-06-19 02:43:27,706.706 INFO    ] 2026-06-19 02:43:27
[2026-06-19 02:43:27,957.957 INFO    ] 2026-06-19 02:43:27
[2026-06-19 02:43:27,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:43:28,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:43:28,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:43:28,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:43:28,446.446 INFO    ] time= 19/06/2026 02:43:28
[2026-06-19 02:43:28,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:43:28,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:43:28,591.591 INFO    ] No existing commands found in stream
[2026-06-19 02:43:33,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:43:33,606.606 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 02:43:37,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:43:37,196.196 INFO    ] Checking for system updates...
[2026-06-19 02:43:37,232.232 INFO    ] 200
[2026-06-19 02:43:37,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:43:37,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:43:37,290.290 INFO    ] No update needed
[2026-06-19 02:43:37,293.293 INFO    ] Checking for camera pi updates...
[2026-06-19 02:43:37,327.327 INFO    ] 200
[2026-06-19 02:43:37,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:43:37,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:43:37,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:43:37,416.416 INFO    ] No camera update needed
[2026-06-19 02:43:37,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:43:37,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:43:37,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:43:37,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:43:39,475.475 INFO    ] ================================================
[2026-06-19 02:43:39,491.491 INFO    ] Launching Daemon at Fri Jun 19 02:43:39 IST 2026
[2026-06-19 02:43:39,502.502 INFO    ] ================================================
[2026-06-19 02:43:40,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:43:40
[2026-06-19 02:43:40,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:43:40,927.927 INFO    ] Initializing speech engine...
[2026-06-19 02:43:40,937.937 INFO    ] 2026-06-19 02:43:40
[2026-06-19 02:43:41,187.187 INFO    ] 2026-06-19 02:43:41
[2026-06-19 02:43:41,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:43:41,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:43:41,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:43:41,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:43:41,563.563 INFO    ] time= 19/06/2026 02:43:41
[2026-06-19 02:43:41,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:43:41,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:43:41,731.731 INFO    ] No existing commands found in stream
[2026-06-19 02:43:46,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:43:46,764.764 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 02:43:51,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:43:51,050.050 INFO    ] Checking for system updates...
[2026-06-19 02:43:51,086.086 INFO    ] 200
[2026-06-19 02:43:51,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:43:51,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:43:51,144.144 INFO    ] No update needed
[2026-06-19 02:43:51,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 02:43:51,181.181 INFO    ] 200
[2026-06-19 02:43:51,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:43:51,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:43:51,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:43:51,278.278 INFO    ] No camera update needed
[2026-06-19 02:43:51,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:43:51,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:43:51,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:43:51,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:43:53,335.335 INFO    ] ================================================
[2026-06-19 02:43:53,351.351 INFO    ] Launching Daemon at Fri Jun 19 02:43:53 IST 2026
[2026-06-19 02:43:53,363.363 INFO    ] ================================================
[2026-06-19 02:43:53,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:43:53
[2026-06-19 02:43:54,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:43:54,805.805 INFO    ] Initializing speech engine...
[2026-06-19 02:43:54,813.813 INFO    ] 2026-06-19 02:43:54
[2026-06-19 02:43:55,065.065 INFO    ] 2026-06-19 02:43:55
[2026-06-19 02:43:55,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:43:55,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:43:55,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:43:55,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:43:55,443.443 INFO    ] time= 19/06/2026 02:43:55
[2026-06-19 02:43:55,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:43:55,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:43:55,615.615 INFO    ] No existing commands found in stream
[2026-06-19 02:44:00,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:44:00,642.642 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 02:44:04,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:44:04,298.298 INFO    ] Checking for system updates...
[2026-06-19 02:44:04,334.334 INFO    ] 200
[2026-06-19 02:44:04,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:04,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:44:04,394.394 INFO    ] No update needed
[2026-06-19 02:44:04,396.396 INFO    ] Checking for camera pi updates...
[2026-06-19 02:44:04,434.434 INFO    ] 200
[2026-06-19 02:44:04,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:04,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:44:04,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:44:04,528.528 INFO    ] No camera update needed
[2026-06-19 02:44:04,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:44:04,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:44:04,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:44:04,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:44:06,583.583 INFO    ] ================================================
[2026-06-19 02:44:06,599.599 INFO    ] Launching Daemon at Fri Jun 19 02:44:06 IST 2026
[2026-06-19 02:44:06,610.610 INFO    ] ================================================
[2026-06-19 02:44:07,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:44:07
[2026-06-19 02:44:07,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:44:08,034.034 INFO    ] Initializing speech engine...
[2026-06-19 02:44:08,049.049 INFO    ] 2026-06-19 02:44:08
[2026-06-19 02:44:08,333.333 INFO    ] 2026-06-19 02:44:08
[2026-06-19 02:44:08,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:44:08,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:44:08,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:44:08,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:44:08,693.693 INFO    ] time= 19/06/2026 02:44:08
[2026-06-19 02:44:08,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:44:08,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:44:08,774.774 INFO    ] No existing commands found in stream
[2026-06-19 02:44:13,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:44:13,788.788 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 02:44:15,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:44:15,988.988 INFO    ] Checking for system updates...
[2026-06-19 02:44:16,024.024 INFO    ] 200
[2026-06-19 02:44:16,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:16,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:44:16,082.082 INFO    ] No update needed
[2026-06-19 02:44:16,084.084 INFO    ] Checking for camera pi updates...
[2026-06-19 02:44:16,118.118 INFO    ] 200
[2026-06-19 02:44:16,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:16,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:44:16,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:44:16,232.232 INFO    ] No camera update needed
[2026-06-19 02:44:16,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:44:16,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:44:16,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:44:16,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:44:18,288.288 INFO    ] ================================================
[2026-06-19 02:44:18,304.304 INFO    ] Launching Daemon at Fri Jun 19 02:44:18 IST 2026
[2026-06-19 02:44:18,315.315 INFO    ] ================================================
[2026-06-19 02:44:18,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:44:18
[2026-06-19 02:44:19,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:44:19,738.738 INFO    ] Initializing speech engine...
[2026-06-19 02:44:19,745.745 INFO    ] 2026-06-19 02:44:19
[2026-06-19 02:44:19,996.996 INFO    ] 2026-06-19 02:44:19
[2026-06-19 02:44:20,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:44:20,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:44:20,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:44:20,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:44:20,405.405 INFO    ] time= 19/06/2026 02:44:20
[2026-06-19 02:44:20,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:44:20,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:44:20,486.486 INFO    ] No existing commands found in stream
[2026-06-19 02:44:25,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:44:25,499.499 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 02:44:28,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:44:28,769.769 INFO    ] Checking for system updates...
[2026-06-19 02:44:28,805.805 INFO    ] 200
[2026-06-19 02:44:28,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:28,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:44:28,863.863 INFO    ] No update needed
[2026-06-19 02:44:28,866.866 INFO    ] Checking for camera pi updates...
[2026-06-19 02:44:28,900.900 INFO    ] 200
[2026-06-19 02:44:28,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:28,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:44:28,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:44:28,993.993 INFO    ] No camera update needed
[2026-06-19 02:44:28,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:44:28,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:44:29,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:44:29,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:44:31,049.049 INFO    ] ================================================
[2026-06-19 02:44:31,063.063 INFO    ] Launching Daemon at Fri Jun 19 02:44:31 IST 2026
[2026-06-19 02:44:31,075.075 INFO    ] ================================================
[2026-06-19 02:44:31,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:44:31
[2026-06-19 02:44:32,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:44:32,610.610 INFO    ] Initializing speech engine...
[2026-06-19 02:44:32,616.616 INFO    ] 2026-06-19 02:44:32
[2026-06-19 02:44:32,876.876 INFO    ] 2026-06-19 02:44:32
[2026-06-19 02:44:32,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:44:33,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:44:33,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:44:33,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:44:33,235.235 INFO    ] time= 19/06/2026 02:44:33
[2026-06-19 02:44:33,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:44:33,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:44:33,362.362 INFO    ] No existing commands found in stream
[2026-06-19 02:44:38,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:44:38,381.381 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 02:44:42,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:44:42,758.758 INFO    ] Checking for system updates...
[2026-06-19 02:44:42,794.794 INFO    ] 200
[2026-06-19 02:44:42,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:42,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:44:42,858.858 INFO    ] No update needed
[2026-06-19 02:44:42,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 02:44:42,895.895 INFO    ] 200
[2026-06-19 02:44:42,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:42,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:44:43,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:44:43,093.093 INFO    ] No camera update needed
[2026-06-19 02:44:43,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:44:43,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:44:43,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:44:43,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:44:45,151.151 INFO    ] ================================================
[2026-06-19 02:44:45,167.167 INFO    ] Launching Daemon at Fri Jun 19 02:44:45 IST 2026
[2026-06-19 02:44:45,177.177 INFO    ] ================================================
[2026-06-19 02:44:45,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:44:45
[2026-06-19 02:44:46,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:44:46,829.829 INFO    ] Initializing speech engine...
[2026-06-19 02:44:46,842.842 INFO    ] 2026-06-19 02:44:46
[2026-06-19 02:44:47,128.128 INFO    ] 2026-06-19 02:44:47
[2026-06-19 02:44:47,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:44:47,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:44:47,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:44:47,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:44:47,680.680 INFO    ] time= 19/06/2026 02:44:47
[2026-06-19 02:44:47,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:44:47,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:44:47,821.821 INFO    ] No existing commands found in stream
[2026-06-19 02:44:52,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:44:52,852.852 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 02:44:53,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:44:53,571.571 INFO    ] Checking for system updates...
[2026-06-19 02:44:53,609.609 INFO    ] 200
[2026-06-19 02:44:53,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:53,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:44:53,667.667 INFO    ] No update needed
[2026-06-19 02:44:53,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 02:44:53,704.704 INFO    ] 200
[2026-06-19 02:44:53,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:44:53,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:44:53,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:44:53,796.796 INFO    ] No camera update needed
[2026-06-19 02:44:53,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:44:53,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:44:53,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:44:53,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:44:55,852.852 INFO    ] ================================================
[2026-06-19 02:44:55,867.867 INFO    ] Launching Daemon at Fri Jun 19 02:44:55 IST 2026
[2026-06-19 02:44:55,879.879 INFO    ] ================================================
[2026-06-19 02:44:56,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:44:56
[2026-06-19 02:44:57,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:44:57,371.371 INFO    ] Initializing speech engine...
[2026-06-19 02:44:57,376.376 INFO    ] 2026-06-19 02:44:57
[2026-06-19 02:44:57,674.674 INFO    ] 2026-06-19 02:44:57
[2026-06-19 02:44:57,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:44:57,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:44:58,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:44:58,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:44:58,208.208 INFO    ] time= 19/06/2026 02:44:58
[2026-06-19 02:44:58,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:44:58,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:44:58,358.358 INFO    ] No existing commands found in stream
[2026-06-19 02:45:03,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:45:03,380.380 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 02:45:05,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:45:05,246.246 INFO    ] Checking for system updates...
[2026-06-19 02:45:05,284.284 INFO    ] 200
[2026-06-19 02:45:05,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:05,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:45:05,344.344 INFO    ] No update needed
[2026-06-19 02:45:05,347.347 INFO    ] Checking for camera pi updates...
[2026-06-19 02:45:05,380.380 INFO    ] 200
[2026-06-19 02:45:05,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:05,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:45:05,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:45:05,482.482 INFO    ] No camera update needed
[2026-06-19 02:45:05,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:45:05,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:45:05,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:45:05,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:45:07,538.538 INFO    ] ================================================
[2026-06-19 02:45:07,554.554 INFO    ] Launching Daemon at Fri Jun 19 02:45:07 IST 2026
[2026-06-19 02:45:07,565.565 INFO    ] ================================================
[2026-06-19 02:45:08,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:45:08
[2026-06-19 02:45:08,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:45:09,049.049 INFO    ] Initializing speech engine...
[2026-06-19 02:45:09,058.058 INFO    ] 2026-06-19 02:45:09
[2026-06-19 02:45:09,320.320 INFO    ] 2026-06-19 02:45:09
[2026-06-19 02:45:09,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:45:09,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:45:09,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:45:09,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:45:09,792.792 INFO    ] time= 19/06/2026 02:45:09
[2026-06-19 02:45:09,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:45:09,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:45:09,930.930 INFO    ] No existing commands found in stream
[2026-06-19 02:45:14,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:45:14,946.946 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 02:45:15,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:45:15,547.547 INFO    ] Checking for system updates...
[2026-06-19 02:45:15,583.583 INFO    ] 200
[2026-06-19 02:45:15,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:15,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:45:15,642.642 INFO    ] No update needed
[2026-06-19 02:45:15,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 02:45:15,683.683 INFO    ] 200
[2026-06-19 02:45:15,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:15,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:45:15,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:45:15,782.782 INFO    ] No camera update needed
[2026-06-19 02:45:15,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:45:15,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:45:15,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:45:15,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:45:17,842.842 INFO    ] ================================================
[2026-06-19 02:45:17,857.857 INFO    ] Launching Daemon at Fri Jun 19 02:45:17 IST 2026
[2026-06-19 02:45:17,867.867 INFO    ] ================================================
[2026-06-19 02:45:18,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:45:18
[2026-06-19 02:45:19,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:45:19,362.362 INFO    ] Initializing speech engine...
[2026-06-19 02:45:19,368.368 INFO    ] 2026-06-19 02:45:19
[2026-06-19 02:45:19,672.672 INFO    ] 2026-06-19 02:45:19
[2026-06-19 02:45:19,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:45:19,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:45:19,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:45:20,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:45:20,063.063 INFO    ] time= 19/06/2026 02:45:20
[2026-06-19 02:45:20,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:45:20,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:45:20,236.236 INFO    ] No existing commands found in stream
[2026-06-19 02:45:25,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:45:25,264.264 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 02:45:28,132.132 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:45:28,135.135 INFO    ] Checking for system updates...
[2026-06-19 02:45:28,174.174 INFO    ] 200
[2026-06-19 02:45:28,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:28,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:45:28,233.233 INFO    ] No update needed
[2026-06-19 02:45:28,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 02:45:28,269.269 INFO    ] 200
[2026-06-19 02:45:28,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:28,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:45:28,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:45:28,365.365 INFO    ] No camera update needed
[2026-06-19 02:45:28,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:45:28,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:45:28,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:45:28,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:45:30,420.420 INFO    ] ================================================
[2026-06-19 02:45:30,435.435 INFO    ] Launching Daemon at Fri Jun 19 02:45:30 IST 2026
[2026-06-19 02:45:30,446.446 INFO    ] ================================================
[2026-06-19 02:45:31,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:45:31
[2026-06-19 02:45:31,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:45:32,096.096 INFO    ] Initializing speech engine...
[2026-06-19 02:45:32,104.104 INFO    ] 2026-06-19 02:45:32
[2026-06-19 02:45:32,404.404 INFO    ] 2026-06-19 02:45:32
[2026-06-19 02:45:32,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:45:32,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:45:32,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:45:32,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:45:32,883.883 INFO    ] time= 19/06/2026 02:45:32
[2026-06-19 02:45:32,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:45:33,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:45:33,058.058 INFO    ] No existing commands found in stream
[2026-06-19 02:45:38,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:45:38,073.073 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 02:45:40,591.591 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:45:40,594.594 INFO    ] Checking for system updates...
[2026-06-19 02:45:40,635.635 INFO    ] 200
[2026-06-19 02:45:40,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:40,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:45:40,693.693 INFO    ] No update needed
[2026-06-19 02:45:40,696.696 INFO    ] Checking for camera pi updates...
[2026-06-19 02:45:40,735.735 INFO    ] 200
[2026-06-19 02:45:40,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:40,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:45:40,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:45:40,840.840 INFO    ] No camera update needed
[2026-06-19 02:45:40,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:45:40,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:45:40,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:45:40,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:45:42,901.901 INFO    ] ================================================
[2026-06-19 02:45:42,917.917 INFO    ] Launching Daemon at Fri Jun 19 02:45:42 IST 2026
[2026-06-19 02:45:42,928.928 INFO    ] ================================================
[2026-06-19 02:45:43,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:45:43
[2026-06-19 02:45:44,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:45:44,367.367 INFO    ] Initializing speech engine...
[2026-06-19 02:45:44,377.377 INFO    ] 2026-06-19 02:45:44
[2026-06-19 02:45:44,624.624 INFO    ] 2026-06-19 02:45:44
[2026-06-19 02:45:44,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:45:44,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:45:44,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:45:44,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:45:44,992.992 INFO    ] time= 19/06/2026 02:45:44
[2026-06-19 02:45:45,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:45:45,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:45:45,071.071 INFO    ] No existing commands found in stream
[2026-06-19 02:45:50,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:45:50,086.086 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 02:45:52,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:45:52,361.361 INFO    ] Checking for system updates...
[2026-06-19 02:45:52,400.400 INFO    ] 200
[2026-06-19 02:45:52,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:52,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:45:52,465.465 INFO    ] No update needed
[2026-06-19 02:45:52,468.468 INFO    ] Checking for camera pi updates...
[2026-06-19 02:45:52,505.505 INFO    ] 200
[2026-06-19 02:45:52,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:45:52,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:45:52,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:45:52,598.598 INFO    ] No camera update needed
[2026-06-19 02:45:52,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:45:52,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:45:52,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:45:52,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:45:54,653.653 INFO    ] ================================================
[2026-06-19 02:45:54,668.668 INFO    ] Launching Daemon at Fri Jun 19 02:45:54 IST 2026
[2026-06-19 02:45:54,679.679 INFO    ] ================================================
[2026-06-19 02:45:55,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:45:55
[2026-06-19 02:45:56,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:45:56,327.327 INFO    ] Initializing speech engine...
[2026-06-19 02:45:56,341.341 INFO    ] 2026-06-19 02:45:56
[2026-06-19 02:45:56,652.652 INFO    ] 2026-06-19 02:45:56
[2026-06-19 02:45:56,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:45:56,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:45:56,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:45:57,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:45:57,164.164 INFO    ] time= 19/06/2026 02:45:57
[2026-06-19 02:45:57,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:45:57,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:45:57,321.321 INFO    ] No existing commands found in stream
[2026-06-19 02:46:02,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:46:02,348.348 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 02:46:06,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:46:06,216.216 INFO    ] Checking for system updates...
[2026-06-19 02:46:06,256.256 INFO    ] 200
[2026-06-19 02:46:06,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:06,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:46:06,314.314 INFO    ] No update needed
[2026-06-19 02:46:06,317.317 INFO    ] Checking for camera pi updates...
[2026-06-19 02:46:06,352.352 INFO    ] 200
[2026-06-19 02:46:06,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:06,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:46:06,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:46:06,450.450 INFO    ] No camera update needed
[2026-06-19 02:46:06,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:46:06,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:46:06,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:46:06,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:46:08,508.508 INFO    ] ================================================
[2026-06-19 02:46:08,524.524 INFO    ] Launching Daemon at Fri Jun 19 02:46:08 IST 2026
[2026-06-19 02:46:08,534.534 INFO    ] ================================================
[2026-06-19 02:46:09,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:46:09
[2026-06-19 02:46:09,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:46:10,096.096 INFO    ] Initializing speech engine...
[2026-06-19 02:46:10,104.104 INFO    ] 2026-06-19 02:46:10
[2026-06-19 02:46:10,379.379 INFO    ] 2026-06-19 02:46:10
[2026-06-19 02:46:10,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:46:10,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:46:10,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:46:10,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:46:10,774.774 INFO    ] time= 19/06/2026 02:46:10
[2026-06-19 02:46:10,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:46:10,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:46:10,940.940 INFO    ] No existing commands found in stream
[2026-06-19 02:46:15,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:46:15,962.962 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 02:46:19,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:46:19,460.460 INFO    ] Checking for system updates...
[2026-06-19 02:46:19,496.496 INFO    ] 200
[2026-06-19 02:46:19,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:19,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:46:19,557.557 INFO    ] No update needed
[2026-06-19 02:46:19,560.560 INFO    ] Checking for camera pi updates...
[2026-06-19 02:46:19,593.593 INFO    ] 200
[2026-06-19 02:46:19,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:19,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:46:19,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:46:19,681.681 INFO    ] No camera update needed
[2026-06-19 02:46:19,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:46:19,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:46:19,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:46:19,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:46:21,737.737 INFO    ] ================================================
[2026-06-19 02:46:21,753.753 INFO    ] Launching Daemon at Fri Jun 19 02:46:21 IST 2026
[2026-06-19 02:46:21,763.763 INFO    ] ================================================
[2026-06-19 02:46:22,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:46:22
[2026-06-19 02:46:22,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:46:23,173.173 INFO    ] Initializing speech engine...
[2026-06-19 02:46:23,180.180 INFO    ] 2026-06-19 02:46:23
[2026-06-19 02:46:23,475.475 INFO    ] 2026-06-19 02:46:23
[2026-06-19 02:46:23,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:46:23,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:46:23,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:46:23,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:46:23,886.886 INFO    ] time= 19/06/2026 02:46:23
[2026-06-19 02:46:23,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:46:23,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:46:23,973.973 INFO    ] No existing commands found in stream
[2026-06-19 02:46:28,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:46:28,988.988 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 02:46:31,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:46:31,073.073 INFO    ] Checking for system updates...
[2026-06-19 02:46:31,112.112 INFO    ] 200
[2026-06-19 02:46:31,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:31,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:46:31,175.175 INFO    ] No update needed
[2026-06-19 02:46:31,177.177 INFO    ] Checking for camera pi updates...
[2026-06-19 02:46:31,216.216 INFO    ] 200
[2026-06-19 02:46:31,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:31,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:46:31,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:46:31,321.321 INFO    ] No camera update needed
[2026-06-19 02:46:31,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:46:31,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:46:31,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:46:31,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:46:33,383.383 INFO    ] ================================================
[2026-06-19 02:46:33,399.399 INFO    ] Launching Daemon at Fri Jun 19 02:46:33 IST 2026
[2026-06-19 02:46:33,410.410 INFO    ] ================================================
[2026-06-19 02:46:33,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:46:33
[2026-06-19 02:46:34,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:46:34,862.862 INFO    ] Initializing speech engine...
[2026-06-19 02:46:34,872.872 INFO    ] 2026-06-19 02:46:34
[2026-06-19 02:46:35,131.131 INFO    ] 2026-06-19 02:46:35
[2026-06-19 02:46:35,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:46:35,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:46:35,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:46:35,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:46:35,613.613 INFO    ] time= 19/06/2026 02:46:35
[2026-06-19 02:46:35,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:46:35,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:46:35,759.759 INFO    ] No existing commands found in stream
[2026-06-19 02:46:40,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:46:40,770.770 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 02:46:44,132.132 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:46:44,134.134 INFO    ] Checking for system updates...
[2026-06-19 02:46:44,170.170 INFO    ] 200
[2026-06-19 02:46:44,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:44,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:46:44,227.227 INFO    ] No update needed
[2026-06-19 02:46:44,230.230 INFO    ] Checking for camera pi updates...
[2026-06-19 02:46:44,265.265 INFO    ] 200
[2026-06-19 02:46:44,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:44,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:46:44,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:46:44,364.364 INFO    ] No camera update needed
[2026-06-19 02:46:44,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:46:44,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:46:44,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:46:44,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:46:46,420.420 INFO    ] ================================================
[2026-06-19 02:46:46,436.436 INFO    ] Launching Daemon at Fri Jun 19 02:46:46 IST 2026
[2026-06-19 02:46:46,446.446 INFO    ] ================================================
[2026-06-19 02:46:47,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:46:47
[2026-06-19 02:46:47,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:46:47,926.926 INFO    ] Initializing speech engine...
[2026-06-19 02:46:47,954.954 INFO    ] 2026-06-19 02:46:47
[2026-06-19 02:46:48,212.212 INFO    ] 2026-06-19 02:46:48
[2026-06-19 02:46:48,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:46:48,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:46:48,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:46:48,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:46:48,688.688 INFO    ] time= 19/06/2026 02:46:48
[2026-06-19 02:46:48,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:46:48,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:46:48,833.833 INFO    ] No existing commands found in stream
[2026-06-19 02:46:53,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:46:53,848.848 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 02:46:55,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:46:55,648.648 INFO    ] Checking for system updates...
[2026-06-19 02:46:55,687.687 INFO    ] 200
[2026-06-19 02:46:55,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:55,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:46:55,751.751 INFO    ] No update needed
[2026-06-19 02:46:55,754.754 INFO    ] Checking for camera pi updates...
[2026-06-19 02:46:55,788.788 INFO    ] 200
[2026-06-19 02:46:55,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:46:55,835.835 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:46:55,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:46:55,989.989 INFO    ] No camera update needed
[2026-06-19 02:46:55,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:46:55,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:46:56,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:46:56,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:46:58,049.049 INFO    ] ================================================
[2026-06-19 02:46:58,064.064 INFO    ] Launching Daemon at Fri Jun 19 02:46:58 IST 2026
[2026-06-19 02:46:58,076.076 INFO    ] ================================================
[2026-06-19 02:46:58,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:46:58
[2026-06-19 02:46:59,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:46:59,524.524 INFO    ] Initializing speech engine...
[2026-06-19 02:46:59,532.532 INFO    ] 2026-06-19 02:46:59
[2026-06-19 02:46:59,781.781 INFO    ] 2026-06-19 02:46:59
[2026-06-19 02:46:59,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:47:00,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:47:00,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:47:00,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:47:00,253.253 INFO    ] time= 19/06/2026 02:47:00
[2026-06-19 02:47:00,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:47:00,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:47:00,399.399 INFO    ] No existing commands found in stream
[2026-06-19 02:47:05,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:47:05,413.413 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 02:47:09,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:47:09,065.065 INFO    ] Checking for system updates...
[2026-06-19 02:47:09,101.101 INFO    ] 200
[2026-06-19 02:47:09,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:47:09,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:47:09,159.159 INFO    ] No update needed
[2026-06-19 02:47:09,162.162 INFO    ] Checking for camera pi updates...
[2026-06-19 02:47:09,199.199 INFO    ] 200
[2026-06-19 02:47:09,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:47:09,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:47:09,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:47:09,301.301 INFO    ] No camera update needed
[2026-06-19 02:47:09,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:47:09,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:47:09,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:47:09,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:47:11,359.359 INFO    ] ================================================
[2026-06-19 02:47:11,374.374 INFO    ] Launching Daemon at Fri Jun 19 02:47:11 IST 2026
[2026-06-19 02:47:11,386.386 INFO    ] ================================================
[2026-06-19 02:47:11,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:47:11
[2026-06-19 02:47:12,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:47:12,806.806 INFO    ] Initializing speech engine...
[2026-06-19 02:47:12,824.824 INFO    ] 2026-06-19 02:47:12
[2026-06-19 02:47:13,074.074 INFO    ] 2026-06-19 02:47:13
[2026-06-19 02:47:13,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:47:13,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:47:13,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:47:13,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:47:13,543.543 INFO    ] time= 19/06/2026 02:47:13
[2026-06-19 02:47:13,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:47:13,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:47:13,689.689 INFO    ] No existing commands found in stream
[2026-06-19 02:47:18,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:47:18,704.704 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 02:47:22,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:47:22,875.875 INFO    ] Checking for system updates...
[2026-06-19 02:47:22,914.914 INFO    ] 200
[2026-06-19 02:47:22,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:47:22,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:47:22,972.972 INFO    ] No update needed
[2026-06-19 02:47:22,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 02:47:23,014.014 INFO    ] 200
[2026-06-19 02:47:23,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:47:23,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:47:23,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:47:23,109.109 INFO    ] No camera update needed
[2026-06-19 02:47:23,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:47:23,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:47:23,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:47:23,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:47:25,170.170 INFO    ] ================================================
[2026-06-19 02:47:25,185.185 INFO    ] Launching Daemon at Fri Jun 19 02:47:25 IST 2026
[2026-06-19 02:47:25,196.196 INFO    ] ================================================
[2026-06-19 02:47:25,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:47:25
[2026-06-19 02:47:26,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:47:26,682.682 INFO    ] Initializing speech engine...
[2026-06-19 02:47:26,690.690 INFO    ] 2026-06-19 02:47:26
[2026-06-19 02:47:26,949.949 INFO    ] 2026-06-19 02:47:26
[2026-06-19 02:47:26,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:47:27,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:47:27,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:47:27,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:47:27,389.389 INFO    ] time= 19/06/2026 02:47:27
[2026-06-19 02:47:27,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:47:27,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:47:27,559.559 INFO    ] No existing commands found in stream
[2026-06-19 02:47:32,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:47:32,574.574 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 02:47:36,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:47:36,022.022 INFO    ] Checking for system updates...
[2026-06-19 02:47:36,059.059 INFO    ] 200
[2026-06-19 02:47:36,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:47:36,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:47:36,123.123 INFO    ] No update needed
[2026-06-19 02:47:36,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 02:47:36,160.160 INFO    ] 200
[2026-06-19 02:47:36,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:47:36,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:47:36,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:47:36,256.256 INFO    ] No camera update needed
[2026-06-19 02:47:36,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:47:36,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:47:36,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:47:36,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:47:38,312.312 INFO    ] ================================================
[2026-06-19 02:47:38,328.328 INFO    ] Launching Daemon at Fri Jun 19 02:47:38 IST 2026
[2026-06-19 02:47:38,339.339 INFO    ] ================================================
[2026-06-19 02:47:38,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:47:38
[2026-06-19 02:47:39,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:47:39,973.973 INFO    ] Initializing speech engine...
[2026-06-19 02:47:39,985.985 INFO    ] 2026-06-19 02:47:39
[2026-06-19 02:47:40,254.254 INFO    ] 2026-06-19 02:47:40
[2026-06-19 02:47:40,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:47:40,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:47:40,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:47:40,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:47:40,702.702 INFO    ] time= 19/06/2026 02:47:40
[2026-06-19 02:47:40,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:47:40,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:47:40,886.886 INFO    ] No existing commands found in stream
[2026-06-19 02:47:45,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:47:45,901.901 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 02:47:47,733.733 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:47:47,736.736 INFO    ] Checking for system updates...
[2026-06-19 02:47:47,774.774 INFO    ] 200
[2026-06-19 02:47:47,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:47:47,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:47:47,836.836 INFO    ] No update needed
[2026-06-19 02:47:47,839.839 INFO    ] Checking for camera pi updates...
[2026-06-19 02:47:47,879.879 INFO    ] 200
[2026-06-19 02:47:47,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:47:47,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:47:47,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:47:47,958.958 INFO    ] No camera update needed
[2026-06-19 02:47:47,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:47:47,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:47:47,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:47:47,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:47:50,021.021 INFO    ] ================================================
[2026-06-19 02:47:50,037.037 INFO    ] Launching Daemon at Fri Jun 19 02:47:50 IST 2026
[2026-06-19 02:47:50,049.049 INFO    ] ================================================
[2026-06-19 02:47:50,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:47:50
[2026-06-19 02:47:51,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:47:51,467.467 INFO    ] Initializing speech engine...
[2026-06-19 02:47:51,490.490 INFO    ] 2026-06-19 02:47:51
[2026-06-19 02:47:51,747.747 INFO    ] 2026-06-19 02:47:51
[2026-06-19 02:47:51,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:47:51,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:47:52,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:47:52,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:47:52,216.216 INFO    ] time= 19/06/2026 02:47:52
[2026-06-19 02:47:52,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:47:52,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:47:52,390.390 INFO    ] No existing commands found in stream
[2026-06-19 02:47:57,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:47:57,405.405 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 02:48:00,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:48:00,965.965 INFO    ] Checking for system updates...
[2026-06-19 02:48:01,002.002 INFO    ] 200
[2026-06-19 02:48:01,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:01,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:48:01,071.071 INFO    ] No update needed
[2026-06-19 02:48:01,073.073 INFO    ] Checking for camera pi updates...
[2026-06-19 02:48:01,107.107 INFO    ] 200
[2026-06-19 02:48:01,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:01,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:48:01,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:48:01,197.197 INFO    ] No camera update needed
[2026-06-19 02:48:01,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:48:01,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:48:01,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:48:01,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:48:03,266.266 INFO    ] ================================================
[2026-06-19 02:48:03,287.287 INFO    ] Launching Daemon at Fri Jun 19 02:48:03 IST 2026
[2026-06-19 02:48:03,307.307 INFO    ] ================================================
[2026-06-19 02:48:03,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:48:03
[2026-06-19 02:48:04,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:48:04,882.882 INFO    ] Initializing speech engine...
[2026-06-19 02:48:04,893.893 INFO    ] 2026-06-19 02:48:04
[2026-06-19 02:48:05,182.182 INFO    ] 2026-06-19 02:48:05
[2026-06-19 02:48:05,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:48:05,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:48:05,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:48:05,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:48:05,720.720 INFO    ] time= 19/06/2026 02:48:05
[2026-06-19 02:48:05,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:48:05,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:48:05,859.859 INFO    ] No existing commands found in stream
[2026-06-19 02:48:10,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:48:10,891.891 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 02:48:12,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:48:12,279.279 INFO    ] Checking for system updates...
[2026-06-19 02:48:12,321.321 INFO    ] 200
[2026-06-19 02:48:12,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:12,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:48:12,382.382 INFO    ] No update needed
[2026-06-19 02:48:12,384.384 INFO    ] Checking for camera pi updates...
[2026-06-19 02:48:12,419.419 INFO    ] 200
[2026-06-19 02:48:12,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:12,463.463 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:48:12,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:48:12,523.523 INFO    ] No camera update needed
[2026-06-19 02:48:12,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:48:12,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:48:12,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:48:12,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:48:14,582.582 INFO    ] ================================================
[2026-06-19 02:48:14,598.598 INFO    ] Launching Daemon at Fri Jun 19 02:48:14 IST 2026
[2026-06-19 02:48:14,609.609 INFO    ] ================================================
[2026-06-19 02:48:15,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:48:15
[2026-06-19 02:48:15,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:48:16,162.162 INFO    ] Initializing speech engine...
[2026-06-19 02:48:16,176.176 INFO    ] 2026-06-19 02:48:16
[2026-06-19 02:48:16,443.443 INFO    ] 2026-06-19 02:48:16
[2026-06-19 02:48:16,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:48:16,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:48:16,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:48:16,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:48:16,932.932 INFO    ] time= 19/06/2026 02:48:16
[2026-06-19 02:48:16,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:48:17,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:48:17,082.082 INFO    ] No existing commands found in stream
[2026-06-19 02:48:22,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:48:22,097.097 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 02:48:25,062.062 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:48:25,065.065 INFO    ] Checking for system updates...
[2026-06-19 02:48:25,100.100 INFO    ] 200
[2026-06-19 02:48:25,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:25,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:48:25,166.166 INFO    ] No update needed
[2026-06-19 02:48:25,168.168 INFO    ] Checking for camera pi updates...
[2026-06-19 02:48:25,202.202 INFO    ] 200
[2026-06-19 02:48:25,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:25,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:48:25,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:48:25,302.302 INFO    ] No camera update needed
[2026-06-19 02:48:25,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:48:25,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:48:25,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:48:25,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:48:27,359.359 INFO    ] ================================================
[2026-06-19 02:48:27,375.375 INFO    ] Launching Daemon at Fri Jun 19 02:48:27 IST 2026
[2026-06-19 02:48:27,386.386 INFO    ] ================================================
[2026-06-19 02:48:27,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:48:27
[2026-06-19 02:48:28,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:48:28,813.813 INFO    ] Initializing speech engine...
[2026-06-19 02:48:28,822.822 INFO    ] 2026-06-19 02:48:28
[2026-06-19 02:48:29,074.074 INFO    ] 2026-06-19 02:48:29
[2026-06-19 02:48:29,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:48:29,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:48:29,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:48:29,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:48:29,452.452 INFO    ] time= 19/06/2026 02:48:29
[2026-06-19 02:48:29,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:48:29,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:48:29,604.604 INFO    ] No existing commands found in stream
[2026-06-19 02:48:34,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:48:34,632.632 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 02:48:35,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:48:35,469.469 INFO    ] Checking for system updates...
[2026-06-19 02:48:35,508.508 INFO    ] 200
[2026-06-19 02:48:35,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:35,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:48:35,567.567 INFO    ] No update needed
[2026-06-19 02:48:35,570.570 INFO    ] Checking for camera pi updates...
[2026-06-19 02:48:35,603.603 INFO    ] 200
[2026-06-19 02:48:35,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:35,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:48:35,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:48:35,699.699 INFO    ] No camera update needed
[2026-06-19 02:48:35,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:48:35,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:48:35,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:48:35,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:48:37,756.756 INFO    ] ================================================
[2026-06-19 02:48:37,772.772 INFO    ] Launching Daemon at Fri Jun 19 02:48:37 IST 2026
[2026-06-19 02:48:37,783.783 INFO    ] ================================================
[2026-06-19 02:48:38,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:48:38
[2026-06-19 02:48:38,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:48:39,248.248 INFO    ] Initializing speech engine...
[2026-06-19 02:48:39,259.259 INFO    ] 2026-06-19 02:48:39
[2026-06-19 02:48:39,521.521 INFO    ] 2026-06-19 02:48:39
[2026-06-19 02:48:39,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:48:39,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:48:39,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:48:39,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:48:39,967.967 INFO    ] time= 19/06/2026 02:48:39
[2026-06-19 02:48:40,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:48:40,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:48:40,128.128 INFO    ] No existing commands found in stream
[2026-06-19 02:48:45,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:48:45,142.142 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 02:48:47,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:48:47,935.935 INFO    ] Checking for system updates...
[2026-06-19 02:48:47,972.972 INFO    ] 200
[2026-06-19 02:48:47,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:48,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:48:48,031.031 INFO    ] No update needed
[2026-06-19 02:48:48,033.033 INFO    ] Checking for camera pi updates...
[2026-06-19 02:48:48,068.068 INFO    ] 200
[2026-06-19 02:48:48,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:48,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:48:48,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:48:48,146.146 INFO    ] No camera update needed
[2026-06-19 02:48:48,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:48:48,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:48:48,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:48:48,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:48:50,204.204 INFO    ] ================================================
[2026-06-19 02:48:50,220.220 INFO    ] Launching Daemon at Fri Jun 19 02:48:50 IST 2026
[2026-06-19 02:48:50,232.232 INFO    ] ================================================
[2026-06-19 02:48:50,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:48:50
[2026-06-19 02:48:51,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:48:51,649.649 INFO    ] Initializing speech engine...
[2026-06-19 02:48:51,663.663 INFO    ] 2026-06-19 02:48:51
[2026-06-19 02:48:51,926.926 INFO    ] 2026-06-19 02:48:51
[2026-06-19 02:48:51,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:48:52,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:48:52,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:48:52,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:48:52,398.398 INFO    ] time= 19/06/2026 02:48:52
[2026-06-19 02:48:52,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:48:52,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:48:52,541.541 INFO    ] No existing commands found in stream
[2026-06-19 02:48:57,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:48:57,555.555 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 02:48:59,828.828 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:48:59,831.831 INFO    ] Checking for system updates...
[2026-06-19 02:48:59,868.868 INFO    ] 200
[2026-06-19 02:48:59,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:48:59,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:48:59,927.927 INFO    ] No update needed
[2026-06-19 02:48:59,929.929 INFO    ] Checking for camera pi updates...
[2026-06-19 02:48:59,971.971 INFO    ] 200
[2026-06-19 02:48:59,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:49:00,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:49:00,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:49:00,161.161 INFO    ] No camera update needed
[2026-06-19 02:49:00,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:49:00,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:49:00,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:49:00,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:49:02,225.225 INFO    ] ================================================
[2026-06-19 02:49:02,245.245 INFO    ] Launching Daemon at Fri Jun 19 02:49:02 IST 2026
[2026-06-19 02:49:02,268.268 INFO    ] ================================================
[2026-06-19 02:49:02,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:49:02
[2026-06-19 02:49:03,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:49:03,856.856 INFO    ] Initializing speech engine...
[2026-06-19 02:49:03,865.865 INFO    ] 2026-06-19 02:49:03
[2026-06-19 02:49:04,149.149 INFO    ] 2026-06-19 02:49:04
[2026-06-19 02:49:04,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:49:04,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:49:04,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:49:04,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:49:04,519.519 INFO    ] time= 19/06/2026 02:49:04
[2026-06-19 02:49:04,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:49:04,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:49:04,644.644 INFO    ] No existing commands found in stream
[2026-06-19 02:49:09,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:49:09,659.659 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 02:49:13,441.441 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:49:13,444.444 INFO    ] Checking for system updates...
[2026-06-19 02:49:13,484.484 INFO    ] 200
[2026-06-19 02:49:13,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:49:13,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:49:13,548.548 INFO    ] No update needed
[2026-06-19 02:49:13,550.550 INFO    ] Checking for camera pi updates...
[2026-06-19 02:49:13,585.585 INFO    ] 200
[2026-06-19 02:49:13,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:49:13,628.628 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:49:13,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:49:13,679.679 INFO    ] No camera update needed
[2026-06-19 02:49:13,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:49:13,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:49:13,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:49:13,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:49:15,736.736 INFO    ] ================================================
[2026-06-19 02:49:15,751.751 INFO    ] Launching Daemon at Fri Jun 19 02:49:15 IST 2026
[2026-06-19 02:49:15,763.763 INFO    ] ================================================
[2026-06-19 02:49:16,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:49:16
[2026-06-19 02:49:16,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:49:17,198.198 INFO    ] Initializing speech engine...
[2026-06-19 02:49:17,207.207 INFO    ] 2026-06-19 02:49:17
[2026-06-19 02:49:17,452.452 INFO    ] 2026-06-19 02:49:17
[2026-06-19 02:49:17,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:49:17,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:49:17,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:49:17,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:49:17,903.903 INFO    ] time= 19/06/2026 02:49:17
[2026-06-19 02:49:17,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:49:17,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:49:18,066.066 INFO    ] No existing commands found in stream
[2026-06-19 02:49:23,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:49:23,081.081 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 02:49:24,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:49:24,406.406 INFO    ] Checking for system updates...
[2026-06-19 02:49:24,443.443 INFO    ] 200
[2026-06-19 02:49:24,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:49:24,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:49:24,503.503 INFO    ] No update needed
[2026-06-19 02:49:24,506.506 INFO    ] Checking for camera pi updates...
[2026-06-19 02:49:24,540.540 INFO    ] 200
[2026-06-19 02:49:24,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:49:24,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:49:24,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:49:24,628.628 INFO    ] No camera update needed
[2026-06-19 02:49:24,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:49:24,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:49:24,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:49:24,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:49:26,686.686 INFO    ] ================================================
[2026-06-19 02:49:26,701.701 INFO    ] Launching Daemon at Fri Jun 19 02:49:26 IST 2026
[2026-06-19 02:49:26,712.712 INFO    ] ================================================
[2026-06-19 02:49:27,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:49:27
[2026-06-19 02:49:28,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:49:28,369.369 INFO    ] Initializing speech engine...
[2026-06-19 02:49:28,384.384 INFO    ] 2026-06-19 02:49:28
[2026-06-19 02:49:28,680.680 INFO    ] 2026-06-19 02:49:28
[2026-06-19 02:49:28,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:49:28,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:49:28,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:49:29,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:49:29,145.145 INFO    ] time= 19/06/2026 02:49:29
[2026-06-19 02:49:29,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:49:29,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:49:29,291.291 INFO    ] No existing commands found in stream
[2026-06-19 02:49:34,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:49:34,308.308 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 02:49:38,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:49:38,699.699 INFO    ] Checking for system updates...
[2026-06-19 02:49:38,736.736 INFO    ] 200
[2026-06-19 02:49:38,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:49:38,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:49:38,801.801 INFO    ] No update needed
[2026-06-19 02:49:38,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 02:49:38,839.839 INFO    ] 200
[2026-06-19 02:49:38,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:49:38,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:49:38,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:49:38,945.945 INFO    ] No camera update needed
[2026-06-19 02:49:38,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:49:38,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:49:38,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:49:38,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:49:41,003.003 INFO    ] ================================================
[2026-06-19 02:49:41,018.018 INFO    ] Launching Daemon at Fri Jun 19 02:49:41 IST 2026
[2026-06-19 02:49:41,029.029 INFO    ] ================================================
[2026-06-19 02:49:41,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:49:41
[2026-06-19 02:49:42,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:49:42,620.620 INFO    ] Initializing speech engine...
[2026-06-19 02:49:42,629.629 INFO    ] 2026-06-19 02:49:42
[2026-06-19 02:49:42,900.900 INFO    ] 2026-06-19 02:49:42
[2026-06-19 02:49:42,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:49:43,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:49:43,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:49:43,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:49:43,372.372 INFO    ] time= 19/06/2026 02:49:43
[2026-06-19 02:49:43,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:49:43,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:49:43,524.524 INFO    ] No existing commands found in stream
[2026-06-19 02:49:48,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:49:48,540.540 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 02:49:50,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:49:50,247.247 INFO    ] Checking for system updates...
[2026-06-19 02:49:50,288.288 INFO    ] 200
[2026-06-19 02:49:50,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:49:50,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:49:50,357.357 INFO    ] No update needed
[2026-06-19 02:49:50,360.360 INFO    ] Checking for camera pi updates...
[2026-06-19 02:49:50,398.398 INFO    ] 200
[2026-06-19 02:49:50,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:49:50,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:49:50,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:49:50,484.484 INFO    ] No camera update needed
[2026-06-19 02:49:50,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:49:50,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:49:50,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:49:50,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:49:52,542.542 INFO    ] ================================================
[2026-06-19 02:49:52,557.557 INFO    ] Launching Daemon at Fri Jun 19 02:49:52 IST 2026
[2026-06-19 02:49:52,568.568 INFO    ] ================================================
[2026-06-19 02:49:53,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:49:53
[2026-06-19 02:49:53,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:49:53,993.993 INFO    ] Initializing speech engine...
[2026-06-19 02:49:54,002.002 INFO    ] 2026-06-19 02:49:53
[2026-06-19 02:49:54,249.249 INFO    ] 2026-06-19 02:49:54
[2026-06-19 02:49:54,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:49:54,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:49:54,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:49:54,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:49:54,615.615 INFO    ] time= 19/06/2026 02:49:54
[2026-06-19 02:49:54,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:49:54,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:49:54,785.785 INFO    ] No existing commands found in stream
[2026-06-19 02:49:59,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:49:59,813.813 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 02:50:01,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:50:01,935.935 INFO    ] Checking for system updates...
[2026-06-19 02:50:01,983.983 INFO    ] 200
[2026-06-19 02:50:01,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:02,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:50:02,062.062 INFO    ] No update needed
[2026-06-19 02:50:02,071.071 INFO    ] Checking for camera pi updates...
[2026-06-19 02:50:02,129.129 INFO    ] 200
[2026-06-19 02:50:02,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:02,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:50:02,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:50:02,261.261 INFO    ] No camera update needed
[2026-06-19 02:50:02,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:50:02,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:50:02,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:50:02,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:50:04,324.324 INFO    ] ================================================
[2026-06-19 02:50:04,340.340 INFO    ] Launching Daemon at Fri Jun 19 02:50:04 IST 2026
[2026-06-19 02:50:04,351.351 INFO    ] ================================================
[2026-06-19 02:50:04,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:50:04
[2026-06-19 02:50:05,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:50:05,786.786 INFO    ] Initializing speech engine...
[2026-06-19 02:50:05,790.790 INFO    ] 2026-06-19 02:50:05
[2026-06-19 02:50:06,037.037 INFO    ] 2026-06-19 02:50:06
[2026-06-19 02:50:06,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:50:06,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:50:06,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:50:06,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:50:06,540.540 INFO    ] time= 19/06/2026 02:50:06
[2026-06-19 02:50:06,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:50:06,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:50:06,678.678 INFO    ] No existing commands found in stream
[2026-06-19 02:50:11,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:50:11,692.692 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 02:50:12,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:50:12,949.949 INFO    ] Checking for system updates...
[2026-06-19 02:50:12,985.985 INFO    ] 200
[2026-06-19 02:50:12,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:13,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:50:13,044.044 INFO    ] No update needed
[2026-06-19 02:50:13,047.047 INFO    ] Checking for camera pi updates...
[2026-06-19 02:50:13,081.081 INFO    ] 200
[2026-06-19 02:50:13,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:13,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:50:13,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:50:13,182.182 INFO    ] No camera update needed
[2026-06-19 02:50:13,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:50:13,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:50:13,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:50:13,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:50:15,242.242 INFO    ] ================================================
[2026-06-19 02:50:15,257.257 INFO    ] Launching Daemon at Fri Jun 19 02:50:15 IST 2026
[2026-06-19 02:50:15,268.268 INFO    ] ================================================
[2026-06-19 02:50:15,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:50:15
[2026-06-19 02:50:16,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:50:16,697.697 INFO    ] Initializing speech engine...
[2026-06-19 02:50:16,723.723 INFO    ] 2026-06-19 02:50:16
[2026-06-19 02:50:16,998.998 INFO    ] 2026-06-19 02:50:16
[2026-06-19 02:50:17,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:50:17,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:50:17,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:50:17,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:50:17,396.396 INFO    ] time= 19/06/2026 02:50:17
[2026-06-19 02:50:17,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:50:17,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:50:17,506.506 INFO    ] No existing commands found in stream
[2026-06-19 02:50:22,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:50:22,522.522 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 02:50:27,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:50:27,172.172 INFO    ] Checking for system updates...
[2026-06-19 02:50:27,212.212 INFO    ] 200
[2026-06-19 02:50:27,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:27,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:50:27,280.280 INFO    ] No update needed
[2026-06-19 02:50:27,283.283 INFO    ] Checking for camera pi updates...
[2026-06-19 02:50:27,318.318 INFO    ] 200
[2026-06-19 02:50:27,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:27,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:50:27,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:50:27,415.415 INFO    ] No camera update needed
[2026-06-19 02:50:27,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:50:27,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:50:27,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:50:27,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:50:29,476.476 INFO    ] ================================================
[2026-06-19 02:50:29,491.491 INFO    ] Launching Daemon at Fri Jun 19 02:50:29 IST 2026
[2026-06-19 02:50:29,502.502 INFO    ] ================================================
[2026-06-19 02:50:30,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:50:30
[2026-06-19 02:50:30,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:50:31,140.140 INFO    ] Initializing speech engine...
[2026-06-19 02:50:31,151.151 INFO    ] 2026-06-19 02:50:31
[2026-06-19 02:50:31,468.468 INFO    ] 2026-06-19 02:50:31
[2026-06-19 02:50:31,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:50:31,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:50:31,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:50:31,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:50:31,893.893 INFO    ] time= 19/06/2026 02:50:31
[2026-06-19 02:50:31,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:50:31,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:50:32,063.063 INFO    ] No existing commands found in stream
[2026-06-19 02:50:37,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:50:37,081.081 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 02:50:38,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:50:38,108.108 INFO    ] Checking for system updates...
[2026-06-19 02:50:38,146.146 INFO    ] 200
[2026-06-19 02:50:38,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:38,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:50:38,206.206 INFO    ] No update needed
[2026-06-19 02:50:38,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 02:50:38,243.243 INFO    ] 200
[2026-06-19 02:50:38,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:38,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:50:38,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:50:38,338.338 INFO    ] No camera update needed
[2026-06-19 02:50:38,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:50:38,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:50:38,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:50:38,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:50:40,392.392 INFO    ] ================================================
[2026-06-19 02:50:40,407.407 INFO    ] Launching Daemon at Fri Jun 19 02:50:40 IST 2026
[2026-06-19 02:50:40,418.418 INFO    ] ================================================
[2026-06-19 02:50:40,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:50:40
[2026-06-19 02:50:41,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:50:41,843.843 INFO    ] Initializing speech engine...
[2026-06-19 02:50:41,851.851 INFO    ] 2026-06-19 02:50:41
[2026-06-19 02:50:42,100.100 INFO    ] 2026-06-19 02:50:42
[2026-06-19 02:50:42,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:50:42,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:50:42,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:50:42,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:50:42,470.470 INFO    ] time= 19/06/2026 02:50:42
[2026-06-19 02:50:42,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:50:42,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:50:42,615.615 INFO    ] No existing commands found in stream
[2026-06-19 02:50:47,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:50:47,643.643 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 02:50:50,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:50:50,129.129 INFO    ] Checking for system updates...
[2026-06-19 02:50:50,166.166 INFO    ] 200
[2026-06-19 02:50:50,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:50,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:50:50,231.231 INFO    ] No update needed
[2026-06-19 02:50:50,233.233 INFO    ] Checking for camera pi updates...
[2026-06-19 02:50:50,271.271 INFO    ] 200
[2026-06-19 02:50:50,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:50:50,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:50:50,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:50:50,359.359 INFO    ] No camera update needed
[2026-06-19 02:50:50,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:50:50,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:50:50,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:50:50,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:50:52,415.415 INFO    ] ================================================
[2026-06-19 02:50:52,431.431 INFO    ] Launching Daemon at Fri Jun 19 02:50:52 IST 2026
[2026-06-19 02:50:52,442.442 INFO    ] ================================================
[2026-06-19 02:50:53,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:50:53
[2026-06-19 02:50:53,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:50:54,098.098 INFO    ] Initializing speech engine...
[2026-06-19 02:50:54,112.112 INFO    ] 2026-06-19 02:50:54
[2026-06-19 02:50:54,425.425 INFO    ] 2026-06-19 02:50:54
[2026-06-19 02:50:54,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:50:54,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:50:54,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:50:54,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:50:54,930.930 INFO    ] time= 19/06/2026 02:50:54
[2026-06-19 02:50:54,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:50:54,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:50:55,086.086 INFO    ] No existing commands found in stream
[2026-06-19 02:51:00,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:51:00,103.103 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 02:51:03,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:51:03,330.330 INFO    ] Checking for system updates...
[2026-06-19 02:51:03,367.367 INFO    ] 200
[2026-06-19 02:51:03,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:03,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:51:03,429.429 INFO    ] No update needed
[2026-06-19 02:51:03,432.432 INFO    ] Checking for camera pi updates...
[2026-06-19 02:51:03,466.466 INFO    ] 200
[2026-06-19 02:51:03,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:03,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:51:03,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:51:03,675.675 INFO    ] No camera update needed
[2026-06-19 02:51:03,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:51:03,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:51:03,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:51:03,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:51:05,735.735 INFO    ] ================================================
[2026-06-19 02:51:05,750.750 INFO    ] Launching Daemon at Fri Jun 19 02:51:05 IST 2026
[2026-06-19 02:51:05,761.761 INFO    ] ================================================
[2026-06-19 02:51:06,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:51:06
[2026-06-19 02:51:06,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:51:07,242.242 INFO    ] Initializing speech engine...
[2026-06-19 02:51:07,251.251 INFO    ] 2026-06-19 02:51:07
[2026-06-19 02:51:07,504.504 INFO    ] 2026-06-19 02:51:07
[2026-06-19 02:51:07,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:51:07,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:51:07,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:51:07,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:51:08,009.009 INFO    ] time= 19/06/2026 02:51:07
[2026-06-19 02:51:08,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:51:08,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:51:08,217.217 INFO    ] No existing commands found in stream
[2026-06-19 02:51:13,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:51:13,235.235 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 02:51:15,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:51:15,254.254 INFO    ] Checking for system updates...
[2026-06-19 02:51:15,290.290 INFO    ] 200
[2026-06-19 02:51:15,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:15,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:51:15,354.354 INFO    ] No update needed
[2026-06-19 02:51:15,357.357 INFO    ] Checking for camera pi updates...
[2026-06-19 02:51:15,392.392 INFO    ] 200
[2026-06-19 02:51:15,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:15,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:51:15,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:51:15,490.490 INFO    ] No camera update needed
[2026-06-19 02:51:15,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:51:15,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:51:15,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:51:15,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:51:17,547.547 INFO    ] ================================================
[2026-06-19 02:51:17,563.563 INFO    ] Launching Daemon at Fri Jun 19 02:51:17 IST 2026
[2026-06-19 02:51:17,574.574 INFO    ] ================================================
[2026-06-19 02:51:18,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:51:18
[2026-06-19 02:51:18,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:51:19,353.353 INFO    ] Initializing speech engine...
[2026-06-19 02:51:19,358.358 INFO    ] 2026-06-19 02:51:19
[2026-06-19 02:51:19,624.624 INFO    ] 2026-06-19 02:51:19
[2026-06-19 02:51:19,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:51:19,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:51:19,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:51:19,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:51:20,061.061 INFO    ] time= 19/06/2026 02:51:20
[2026-06-19 02:51:20,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:51:20,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:51:20,245.245 INFO    ] No existing commands found in stream
[2026-06-19 02:51:25,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:51:25,263.263 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 02:51:26,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:51:26,689.689 INFO    ] Checking for system updates...
[2026-06-19 02:51:26,727.727 INFO    ] 200
[2026-06-19 02:51:26,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:26,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:51:26,805.805 INFO    ] No update needed
[2026-06-19 02:51:26,808.808 INFO    ] Checking for camera pi updates...
[2026-06-19 02:51:26,843.843 INFO    ] 200
[2026-06-19 02:51:26,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:26,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:51:26,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:51:26,939.939 INFO    ] No camera update needed
[2026-06-19 02:51:26,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:51:26,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:51:26,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:51:26,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:51:29,998.998 INFO    ] ================================================
[2026-06-19 02:51:29,014.014 INFO    ] Launching Daemon at Fri Jun 19 02:51:29 IST 2026
[2026-06-19 02:51:29,025.025 INFO    ] ================================================
[2026-06-19 02:51:29,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:51:29
[2026-06-19 02:51:30,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:51:30,683.683 INFO    ] Initializing speech engine...
[2026-06-19 02:51:30,696.696 INFO    ] 2026-06-19 02:51:30
[2026-06-19 02:51:30,984.984 INFO    ] 2026-06-19 02:51:30
[2026-06-19 02:51:31,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:51:31,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:51:31,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:51:31,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:51:31,473.473 INFO    ] time= 19/06/2026 02:51:31
[2026-06-19 02:51:31,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:51:31,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:51:31,704.704 INFO    ] No existing commands found in stream
[2026-06-19 02:51:36,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:51:36,754.754 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 02:51:39,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:51:39,460.460 INFO    ] Checking for system updates...
[2026-06-19 02:51:39,502.502 INFO    ] 200
[2026-06-19 02:51:39,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:39,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:51:39,562.562 INFO    ] No update needed
[2026-06-19 02:51:39,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 02:51:39,603.603 INFO    ] 200
[2026-06-19 02:51:39,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:39,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:51:39,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:51:39,708.708 INFO    ] No camera update needed
[2026-06-19 02:51:39,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:51:39,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:51:39,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:51:39,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:51:41,768.768 INFO    ] ================================================
[2026-06-19 02:51:41,784.784 INFO    ] Launching Daemon at Fri Jun 19 02:51:41 IST 2026
[2026-06-19 02:51:41,795.795 INFO    ] ================================================
[2026-06-19 02:51:42,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:51:42
[2026-06-19 02:51:43,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:51:43,332.332 INFO    ] Initializing speech engine...
[2026-06-19 02:51:43,340.340 INFO    ] 2026-06-19 02:51:43
[2026-06-19 02:51:43,612.612 INFO    ] 2026-06-19 02:51:43
[2026-06-19 02:51:43,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:51:43,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:51:43,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:51:44,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:51:44,012.012 INFO    ] time= 19/06/2026 02:51:44
[2026-06-19 02:51:44,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:51:44,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:51:44,181.181 INFO    ] No existing commands found in stream
[2026-06-19 02:51:49,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:51:49,215.215 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 02:51:52,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:51:52,203.203 INFO    ] Checking for system updates...
[2026-06-19 02:51:52,243.243 INFO    ] 200
[2026-06-19 02:51:52,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:52,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:51:52,308.308 INFO    ] No update needed
[2026-06-19 02:51:52,311.311 INFO    ] Checking for camera pi updates...
[2026-06-19 02:51:52,344.344 INFO    ] 200
[2026-06-19 02:51:52,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:51:52,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:51:52,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:51:52,420.420 INFO    ] No camera update needed
[2026-06-19 02:51:52,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:51:52,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:51:52,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:51:52,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:51:54,477.477 INFO    ] ================================================
[2026-06-19 02:51:54,492.492 INFO    ] Launching Daemon at Fri Jun 19 02:51:54 IST 2026
[2026-06-19 02:51:54,503.503 INFO    ] ================================================
[2026-06-19 02:51:55,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:51:55
[2026-06-19 02:51:55,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:51:55,923.923 INFO    ] Initializing speech engine...
[2026-06-19 02:51:55,937.937 INFO    ] 2026-06-19 02:51:55
[2026-06-19 02:51:56,207.207 INFO    ] 2026-06-19 02:51:56
[2026-06-19 02:51:56,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:51:56,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:51:56,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:51:56,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:51:56,679.679 INFO    ] time= 19/06/2026 02:51:56
[2026-06-19 02:51:56,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:51:56,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:51:56,891.891 INFO    ] No existing commands found in stream
[2026-06-19 02:52:01,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:52:01,937.937 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 02:52:04,621.621 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:52:04,623.623 INFO    ] Checking for system updates...
[2026-06-19 02:52:04,660.660 INFO    ] 200
[2026-06-19 02:52:04,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:04,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:52:04,726.726 INFO    ] No update needed
[2026-06-19 02:52:04,729.729 INFO    ] Checking for camera pi updates...
[2026-06-19 02:52:04,763.763 INFO    ] 200
[2026-06-19 02:52:04,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:04,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:52:04,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:52:04,856.856 INFO    ] No camera update needed
[2026-06-19 02:52:04,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:52:04,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:52:04,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:52:04,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:52:06,922.922 INFO    ] ================================================
[2026-06-19 02:52:06,939.939 INFO    ] Launching Daemon at Fri Jun 19 02:52:06 IST 2026
[2026-06-19 02:52:06,950.950 INFO    ] ================================================
[2026-06-19 02:52:07,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:52:07
[2026-06-19 02:52:08,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:52:08,619.619 INFO    ] Initializing speech engine...
[2026-06-19 02:52:08,624.624 INFO    ] 2026-06-19 02:52:08
[2026-06-19 02:52:08,938.938 INFO    ] 2026-06-19 02:52:08
[2026-06-19 02:52:09,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:52:09,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:52:09,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:52:09,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:52:09,465.465 INFO    ] time= 19/06/2026 02:52:09
[2026-06-19 02:52:09,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:52:09,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:52:09,608.608 INFO    ] No existing commands found in stream
[2026-06-19 02:52:14,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:52:14,633.633 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 02:52:16,520.520 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:52:16,523.523 INFO    ] Checking for system updates...
[2026-06-19 02:52:16,565.565 INFO    ] 200
[2026-06-19 02:52:16,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:16,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:52:16,636.636 INFO    ] No update needed
[2026-06-19 02:52:16,639.639 INFO    ] Checking for camera pi updates...
[2026-06-19 02:52:16,674.674 INFO    ] 200
[2026-06-19 02:52:16,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:16,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:52:16,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:52:16,774.774 INFO    ] No camera update needed
[2026-06-19 02:52:16,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:52:16,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:52:16,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:52:16,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:52:18,833.833 INFO    ] ================================================
[2026-06-19 02:52:18,848.848 INFO    ] Launching Daemon at Fri Jun 19 02:52:18 IST 2026
[2026-06-19 02:52:18,859.859 INFO    ] ================================================
[2026-06-19 02:52:19,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:52:19
[2026-06-19 02:52:20,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:52:20,276.276 INFO    ] Initializing speech engine...
[2026-06-19 02:52:20,295.295 INFO    ] 2026-06-19 02:52:20
[2026-06-19 02:52:20,542.542 INFO    ] 2026-06-19 02:52:20
[2026-06-19 02:52:20,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:52:20,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:52:20,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:52:20,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:52:21,016.016 INFO    ] time= 19/06/2026 02:52:20
[2026-06-19 02:52:21,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:52:21,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:52:21,166.166 INFO    ] No existing commands found in stream
[2026-06-19 02:52:26,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:52:26,181.181 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 02:52:29,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:52:29,759.759 INFO    ] Checking for system updates...
[2026-06-19 02:52:29,795.795 INFO    ] 200
[2026-06-19 02:52:29,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:29,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:52:29,860.860 INFO    ] No update needed
[2026-06-19 02:52:29,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 02:52:29,900.900 INFO    ] 200
[2026-06-19 02:52:29,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:29,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:52:29,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:52:29,993.993 INFO    ] No camera update needed
[2026-06-19 02:52:29,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:52:29,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:52:30,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:52:30,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:52:32,051.051 INFO    ] ================================================
[2026-06-19 02:52:32,090.090 INFO    ] Launching Daemon at Fri Jun 19 02:52:32 IST 2026
[2026-06-19 02:52:32,103.103 INFO    ] ================================================
[2026-06-19 02:52:32,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:52:32
[2026-06-19 02:52:33,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:52:33,643.643 INFO    ] Initializing speech engine...
[2026-06-19 02:52:33,650.650 INFO    ] 2026-06-19 02:52:33
[2026-06-19 02:52:33,943.943 INFO    ] 2026-06-19 02:52:33
[2026-06-19 02:52:33,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:52:34,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:52:34,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:52:34,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:52:34,348.348 INFO    ] time= 19/06/2026 02:52:34
[2026-06-19 02:52:34,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:52:34,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:52:34,523.523 INFO    ] No existing commands found in stream
[2026-06-19 02:52:39,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:52:39,561.561 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 02:52:40,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:52:40,418.418 INFO    ] Checking for system updates...
[2026-06-19 02:52:40,457.457 INFO    ] 200
[2026-06-19 02:52:40,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:40,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:52:40,515.515 INFO    ] No update needed
[2026-06-19 02:52:40,517.517 INFO    ] Checking for camera pi updates...
[2026-06-19 02:52:40,551.551 INFO    ] 200
[2026-06-19 02:52:40,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:40,594.594 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:52:40,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:52:40,641.641 INFO    ] No camera update needed
[2026-06-19 02:52:40,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:52:40,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:52:40,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:52:40,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:52:42,697.697 INFO    ] ================================================
[2026-06-19 02:52:42,713.713 INFO    ] Launching Daemon at Fri Jun 19 02:52:42 IST 2026
[2026-06-19 02:52:42,724.724 INFO    ] ================================================
[2026-06-19 02:52:43,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:52:43
[2026-06-19 02:52:44,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:52:44,352.352 INFO    ] Initializing speech engine...
[2026-06-19 02:52:44,362.362 INFO    ] 2026-06-19 02:52:44
[2026-06-19 02:52:44,630.630 INFO    ] 2026-06-19 02:52:44
[2026-06-19 02:52:44,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:52:44,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:52:44,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:52:45,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:52:45,126.126 INFO    ] time= 19/06/2026 02:52:45
[2026-06-19 02:52:45,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:52:45,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:52:45,271.271 INFO    ] No existing commands found in stream
[2026-06-19 02:52:50,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:52:50,289.289 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 02:52:50,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:52:51,002.002 INFO    ] Checking for system updates...
[2026-06-19 02:52:51,041.041 INFO    ] 200
[2026-06-19 02:52:51,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:51,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:52:51,108.108 INFO    ] No update needed
[2026-06-19 02:52:51,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 02:52:51,146.146 INFO    ] 200
[2026-06-19 02:52:51,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:52:51,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:52:51,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:52:51,248.248 INFO    ] No camera update needed
[2026-06-19 02:52:51,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:52:51,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:52:51,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:52:51,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:52:53,306.306 INFO    ] ================================================
[2026-06-19 02:52:53,322.322 INFO    ] Launching Daemon at Fri Jun 19 02:52:53 IST 2026
[2026-06-19 02:52:53,333.333 INFO    ] ================================================
[2026-06-19 02:52:53,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:52:53
[2026-06-19 02:52:54,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:52:54,740.740 INFO    ] Initializing speech engine...
[2026-06-19 02:52:54,753.753 INFO    ] 2026-06-19 02:52:54
[2026-06-19 02:52:55,020.020 INFO    ] 2026-06-19 02:52:55
[2026-06-19 02:52:55,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:52:55,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:52:55,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:52:55,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:52:55,376.376 INFO    ] time= 19/06/2026 02:52:55
[2026-06-19 02:52:55,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:52:55,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:52:55,488.488 INFO    ] No existing commands found in stream
[2026-06-19 02:53:00,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:53:00,503.503 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 02:53:04,609.609 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:53:04,612.612 INFO    ] Checking for system updates...
[2026-06-19 02:53:04,652.652 INFO    ] 200
[2026-06-19 02:53:04,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:04,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:53:04,716.716 INFO    ] No update needed
[2026-06-19 02:53:04,718.718 INFO    ] Checking for camera pi updates...
[2026-06-19 02:53:04,752.752 INFO    ] 200
[2026-06-19 02:53:04,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:04,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:53:04,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:53:04,847.847 INFO    ] No camera update needed
[2026-06-19 02:53:04,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:53:04,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:53:04,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:53:04,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:53:06,903.903 INFO    ] ================================================
[2026-06-19 02:53:06,918.918 INFO    ] Launching Daemon at Fri Jun 19 02:53:06 IST 2026
[2026-06-19 02:53:06,929.929 INFO    ] ================================================
[2026-06-19 02:53:07,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:53:07
[2026-06-19 02:53:08,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:53:08,351.351 INFO    ] Initializing speech engine...
[2026-06-19 02:53:08,358.358 INFO    ] 2026-06-19 02:53:08
[2026-06-19 02:53:08,615.615 INFO    ] 2026-06-19 02:53:08
[2026-06-19 02:53:08,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:53:08,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:53:08,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:53:09,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:53:09,078.078 INFO    ] time= 19/06/2026 02:53:09
[2026-06-19 02:53:09,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:53:09,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:53:09,220.220 INFO    ] No existing commands found in stream
[2026-06-19 02:53:14,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:53:14,235.235 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 02:53:18,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:53:18,198.198 INFO    ] Checking for system updates...
[2026-06-19 02:53:18,233.233 INFO    ] 200
[2026-06-19 02:53:18,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:18,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:53:18,293.293 INFO    ] No update needed
[2026-06-19 02:53:18,296.296 INFO    ] Checking for camera pi updates...
[2026-06-19 02:53:18,330.330 INFO    ] 200
[2026-06-19 02:53:18,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:18,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:53:18,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:53:18,524.524 INFO    ] No camera update needed
[2026-06-19 02:53:18,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:53:18,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:53:18,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:53:18,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:53:20,582.582 INFO    ] ================================================
[2026-06-19 02:53:20,598.598 INFO    ] Launching Daemon at Fri Jun 19 02:53:20 IST 2026
[2026-06-19 02:53:20,609.609 INFO    ] ================================================
[2026-06-19 02:53:21,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:53:21
[2026-06-19 02:53:21,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:53:22,068.068 INFO    ] Initializing speech engine...
[2026-06-19 02:53:22,075.075 INFO    ] 2026-06-19 02:53:22
[2026-06-19 02:53:22,337.337 INFO    ] 2026-06-19 02:53:22
[2026-06-19 02:53:22,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:53:22,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:53:22,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:53:22,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:53:22,797.797 INFO    ] time= 19/06/2026 02:53:22
[2026-06-19 02:53:22,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:53:22,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:53:22,947.947 INFO    ] No existing commands found in stream
[2026-06-19 02:53:27,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:53:27,970.970 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 02:53:29,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:53:29,296.296 INFO    ] Checking for system updates...
[2026-06-19 02:53:29,332.332 INFO    ] 200
[2026-06-19 02:53:29,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:29,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:53:29,391.391 INFO    ] No update needed
[2026-06-19 02:53:29,394.394 INFO    ] Checking for camera pi updates...
[2026-06-19 02:53:29,428.428 INFO    ] 200
[2026-06-19 02:53:29,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:29,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:53:29,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:53:29,526.526 INFO    ] No camera update needed
[2026-06-19 02:53:29,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:53:29,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:53:29,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:53:29,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:53:31,585.585 INFO    ] ================================================
[2026-06-19 02:53:31,601.601 INFO    ] Launching Daemon at Fri Jun 19 02:53:31 IST 2026
[2026-06-19 02:53:31,612.612 INFO    ] ================================================
[2026-06-19 02:53:32,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:53:32
[2026-06-19 02:53:32,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:53:33,088.088 INFO    ] Initializing speech engine...
[2026-06-19 02:53:33,101.101 INFO    ] 2026-06-19 02:53:33
[2026-06-19 02:53:33,347.347 INFO    ] 2026-06-19 02:53:33
[2026-06-19 02:53:33,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:53:33,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:53:33,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:53:33,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:53:33,716.716 INFO    ] time= 19/06/2026 02:53:33
[2026-06-19 02:53:33,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:53:33,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:53:33,877.877 INFO    ] No existing commands found in stream
[2026-06-19 02:53:38,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:53:38,905.905 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 02:53:40,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:53:40,138.138 INFO    ] Checking for system updates...
[2026-06-19 02:53:40,174.174 INFO    ] 200
[2026-06-19 02:53:40,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:40,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:53:40,238.238 INFO    ] No update needed
[2026-06-19 02:53:40,240.240 INFO    ] Checking for camera pi updates...
[2026-06-19 02:53:40,278.278 INFO    ] 200
[2026-06-19 02:53:40,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:40,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:53:40,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:53:40,384.384 INFO    ] No camera update needed
[2026-06-19 02:53:40,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:53:40,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:53:40,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:53:40,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:53:42,444.444 INFO    ] ================================================
[2026-06-19 02:53:42,458.458 INFO    ] Launching Daemon at Fri Jun 19 02:53:42 IST 2026
[2026-06-19 02:53:42,469.469 INFO    ] ================================================
[2026-06-19 02:53:43,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:53:43
[2026-06-19 02:53:43,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:53:43,893.893 INFO    ] Initializing speech engine...
[2026-06-19 02:53:43,899.899 INFO    ] 2026-06-19 02:53:43
[2026-06-19 02:53:44,194.194 INFO    ] 2026-06-19 02:53:44
[2026-06-19 02:53:44,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:53:44,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:53:44,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:53:44,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:53:44,576.576 INFO    ] time= 19/06/2026 02:53:44
[2026-06-19 02:53:44,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:53:44,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:53:44,701.701 INFO    ] No existing commands found in stream
[2026-06-19 02:53:49,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:53:49,722.722 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 02:53:51,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:53:51,027.027 INFO    ] Checking for system updates...
[2026-06-19 02:53:51,067.067 INFO    ] 200
[2026-06-19 02:53:51,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:51,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:53:51,124.124 INFO    ] No update needed
[2026-06-19 02:53:51,127.127 INFO    ] Checking for camera pi updates...
[2026-06-19 02:53:51,162.162 INFO    ] 200
[2026-06-19 02:53:51,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:53:51,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:53:51,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:53:51,249.249 INFO    ] No camera update needed
[2026-06-19 02:53:51,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:53:51,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:53:51,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:53:51,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:53:53,304.304 INFO    ] ================================================
[2026-06-19 02:53:53,319.319 INFO    ] Launching Daemon at Fri Jun 19 02:53:53 IST 2026
[2026-06-19 02:53:53,330.330 INFO    ] ================================================
[2026-06-19 02:53:53,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:53:53
[2026-06-19 02:53:54,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:53:54,756.756 INFO    ] Initializing speech engine...
[2026-06-19 02:53:54,761.761 INFO    ] 2026-06-19 02:53:54
[2026-06-19 02:53:55,006.006 INFO    ] 2026-06-19 02:53:55
[2026-06-19 02:53:55,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:53:55,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:53:55,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:53:55,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:53:55,477.477 INFO    ] time= 19/06/2026 02:53:55
[2026-06-19 02:53:55,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:53:55,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:53:55,620.620 INFO    ] No existing commands found in stream
[2026-06-19 02:54:00,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:54:00,635.635 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 02:54:03,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:54:03,784.784 INFO    ] Checking for system updates...
[2026-06-19 02:54:03,820.820 INFO    ] 200
[2026-06-19 02:54:03,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:03,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:54:03,878.878 INFO    ] No update needed
[2026-06-19 02:54:03,881.881 INFO    ] Checking for camera pi updates...
[2026-06-19 02:54:03,914.914 INFO    ] 200
[2026-06-19 02:54:03,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:03,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:54:04,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:54:04,009.009 INFO    ] No camera update needed
[2026-06-19 02:54:04,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:54:04,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:54:04,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:54:04,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:54:06,070.070 INFO    ] ================================================
[2026-06-19 02:54:06,085.085 INFO    ] Launching Daemon at Fri Jun 19 02:54:06 IST 2026
[2026-06-19 02:54:06,096.096 INFO    ] ================================================
[2026-06-19 02:54:06,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:54:06
[2026-06-19 02:54:07,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:54:07,529.529 INFO    ] Initializing speech engine...
[2026-06-19 02:54:07,537.537 INFO    ] 2026-06-19 02:54:07
[2026-06-19 02:54:07,817.817 INFO    ] 2026-06-19 02:54:07
[2026-06-19 02:54:07,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:54:08,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:54:08,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:54:08,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:54:08,319.319 INFO    ] time= 19/06/2026 02:54:08
[2026-06-19 02:54:08,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:54:08,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:54:08,502.502 INFO    ] No existing commands found in stream
[2026-06-19 02:54:13,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:54:13,537.537 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 02:54:14,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:54:14,278.278 INFO    ] Checking for system updates...
[2026-06-19 02:54:14,319.319 INFO    ] 200
[2026-06-19 02:54:14,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:14,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:54:14,385.385 INFO    ] No update needed
[2026-06-19 02:54:14,388.388 INFO    ] Checking for camera pi updates...
[2026-06-19 02:54:14,422.422 INFO    ] 200
[2026-06-19 02:54:14,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:14,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:54:14,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:54:14,522.522 INFO    ] No camera update needed
[2026-06-19 02:54:14,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:54:14,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:54:14,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:54:14,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:54:16,578.578 INFO    ] ================================================
[2026-06-19 02:54:16,593.593 INFO    ] Launching Daemon at Fri Jun 19 02:54:16 IST 2026
[2026-06-19 02:54:16,604.604 INFO    ] ================================================
[2026-06-19 02:54:17,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:54:17
[2026-06-19 02:54:17,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:54:18,033.033 INFO    ] Initializing speech engine...
[2026-06-19 02:54:18,040.040 INFO    ] 2026-06-19 02:54:18
[2026-06-19 02:54:18,346.346 INFO    ] 2026-06-19 02:54:18
[2026-06-19 02:54:18,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:54:18,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:54:18,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:54:18,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:54:18,744.744 INFO    ] time= 19/06/2026 02:54:18
[2026-06-19 02:54:18,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:54:18,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:54:18,876.876 INFO    ] No existing commands found in stream
[2026-06-19 02:54:23,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:54:23,890.890 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 02:54:25,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:54:25,469.469 INFO    ] Checking for system updates...
[2026-06-19 02:54:25,505.505 INFO    ] 200
[2026-06-19 02:54:25,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:25,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:54:25,564.564 INFO    ] No update needed
[2026-06-19 02:54:25,567.567 INFO    ] Checking for camera pi updates...
[2026-06-19 02:54:25,601.601 INFO    ] 200
[2026-06-19 02:54:25,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:25,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:54:25,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:54:25,693.693 INFO    ] No camera update needed
[2026-06-19 02:54:25,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:54:25,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:54:25,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:54:25,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:54:27,748.748 INFO    ] ================================================
[2026-06-19 02:54:27,763.763 INFO    ] Launching Daemon at Fri Jun 19 02:54:27 IST 2026
[2026-06-19 02:54:27,774.774 INFO    ] ================================================
[2026-06-19 02:54:28,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:54:28
[2026-06-19 02:54:29,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:54:29,374.374 INFO    ] Initializing speech engine...
[2026-06-19 02:54:29,385.385 INFO    ] 2026-06-19 02:54:29
[2026-06-19 02:54:29,701.701 INFO    ] 2026-06-19 02:54:29
[2026-06-19 02:54:29,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:54:29,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:54:30,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:54:30,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:54:30,208.208 INFO    ] time= 19/06/2026 02:54:30
[2026-06-19 02:54:30,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:54:30,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:54:30,358.358 INFO    ] No existing commands found in stream
[2026-06-19 02:54:35,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:54:35,376.376 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 02:54:36,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:54:36,007.007 INFO    ] Checking for system updates...
[2026-06-19 02:54:36,046.046 INFO    ] 200
[2026-06-19 02:54:36,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:36,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:54:36,105.105 INFO    ] No update needed
[2026-06-19 02:54:36,107.107 INFO    ] Checking for camera pi updates...
[2026-06-19 02:54:36,141.141 INFO    ] 200
[2026-06-19 02:54:36,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:36,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:54:36,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:54:36,229.229 INFO    ] No camera update needed
[2026-06-19 02:54:36,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:54:36,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:54:36,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:54:36,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:54:38,283.283 INFO    ] ================================================
[2026-06-19 02:54:38,298.298 INFO    ] Launching Daemon at Fri Jun 19 02:54:38 IST 2026
[2026-06-19 02:54:38,309.309 INFO    ] ================================================
[2026-06-19 02:54:38,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:54:38
[2026-06-19 02:54:39,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:54:39,984.984 INFO    ] Initializing speech engine...
[2026-06-19 02:54:39,999.999 INFO    ] 2026-06-19 02:54:39
[2026-06-19 02:54:40,313.313 INFO    ] 2026-06-19 02:54:40
[2026-06-19 02:54:40,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:54:40,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:54:40,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:54:40,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:54:40,825.825 INFO    ] time= 19/06/2026 02:54:40
[2026-06-19 02:54:40,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:54:40,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:54:40,981.981 INFO    ] No existing commands found in stream
[2026-06-19 02:54:46,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:54:46,021.021 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 02:54:48,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:54:48,255.255 INFO    ] Checking for system updates...
[2026-06-19 02:54:48,292.292 INFO    ] 200
[2026-06-19 02:54:48,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:48,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:54:48,359.359 INFO    ] No update needed
[2026-06-19 02:54:48,361.361 INFO    ] Checking for camera pi updates...
[2026-06-19 02:54:48,400.400 INFO    ] 200
[2026-06-19 02:54:48,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:54:48,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:54:48,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:54:48,507.507 INFO    ] No camera update needed
[2026-06-19 02:54:48,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:54:48,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:54:48,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:54:48,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:54:50,562.562 INFO    ] ================================================
[2026-06-19 02:54:50,578.578 INFO    ] Launching Daemon at Fri Jun 19 02:54:50 IST 2026
[2026-06-19 02:54:50,589.589 INFO    ] ================================================
[2026-06-19 02:54:51,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:54:51
[2026-06-19 02:54:51,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:54:52,263.263 INFO    ] Initializing speech engine...
[2026-06-19 02:54:52,274.274 INFO    ] 2026-06-19 02:54:52
[2026-06-19 02:54:52,585.585 INFO    ] 2026-06-19 02:54:52
[2026-06-19 02:54:52,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:54:52,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:54:52,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:54:53,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:54:53,097.097 INFO    ] time= 19/06/2026 02:54:53
[2026-06-19 02:54:53,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:54:53,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:54:53,236.236 INFO    ] No existing commands found in stream
[2026-06-19 02:54:58,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:54:58,264.264 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 02:55:02,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:55:02,114.114 INFO    ] Checking for system updates...
[2026-06-19 02:55:02,244.244 INFO    ] 200
[2026-06-19 02:55:02,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:02,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:55:02,500.500 INFO    ] No update needed
[2026-06-19 02:55:02,503.503 INFO    ] Checking for camera pi updates...
[2026-06-19 02:55:02,566.566 INFO    ] 200
[2026-06-19 02:55:02,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:02,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:55:02,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:55:02,664.664 INFO    ] No camera update needed
[2026-06-19 02:55:02,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:55:02,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:55:02,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:55:02,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:55:04,727.727 INFO    ] ================================================
[2026-06-19 02:55:04,742.742 INFO    ] Launching Daemon at Fri Jun 19 02:55:04 IST 2026
[2026-06-19 02:55:04,753.753 INFO    ] ================================================
[2026-06-19 02:55:05,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:55:05
[2026-06-19 02:55:06,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:55:06,423.423 INFO    ] Initializing speech engine...
[2026-06-19 02:55:06,436.436 INFO    ] 2026-06-19 02:55:06
[2026-06-19 02:55:06,755.755 INFO    ] 2026-06-19 02:55:06
[2026-06-19 02:55:06,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:55:07,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:55:07,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:55:07,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:55:07,283.283 INFO    ] time= 19/06/2026 02:55:07
[2026-06-19 02:55:07,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:55:07,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:55:07,439.439 INFO    ] No existing commands found in stream
[2026-06-19 02:55:12,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:55:12,457.457 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 02:55:13,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:55:13,052.052 INFO    ] Checking for system updates...
[2026-06-19 02:55:13,089.089 INFO    ] 200
[2026-06-19 02:55:13,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:13,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:55:13,159.159 INFO    ] No update needed
[2026-06-19 02:55:13,162.162 INFO    ] Checking for camera pi updates...
[2026-06-19 02:55:13,196.196 INFO    ] 200
[2026-06-19 02:55:13,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:13,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:55:13,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:55:13,293.293 INFO    ] No camera update needed
[2026-06-19 02:55:13,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:55:13,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:55:13,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:55:13,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:55:15,350.350 INFO    ] ================================================
[2026-06-19 02:55:15,366.366 INFO    ] Launching Daemon at Fri Jun 19 02:55:15 IST 2026
[2026-06-19 02:55:15,377.377 INFO    ] ================================================
[2026-06-19 02:55:15,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:55:15
[2026-06-19 02:55:16,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:55:16,793.793 INFO    ] Initializing speech engine...
[2026-06-19 02:55:16,799.799 INFO    ] 2026-06-19 02:55:16
[2026-06-19 02:55:17,100.100 INFO    ] 2026-06-19 02:55:17
[2026-06-19 02:55:17,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:55:17,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:55:17,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:55:17,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:55:17,461.461 INFO    ] time= 19/06/2026 02:55:17
[2026-06-19 02:55:17,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:55:17,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:55:17,537.537 INFO    ] No existing commands found in stream
[2026-06-19 02:55:22,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:55:22,553.553 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 02:55:24,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:55:24,788.788 INFO    ] Checking for system updates...
[2026-06-19 02:55:24,829.829 INFO    ] 200
[2026-06-19 02:55:24,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:24,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:55:24,887.887 INFO    ] No update needed
[2026-06-19 02:55:24,889.889 INFO    ] Checking for camera pi updates...
[2026-06-19 02:55:24,923.923 INFO    ] 200
[2026-06-19 02:55:24,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:24,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:55:25,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:55:25,116.116 INFO    ] No camera update needed
[2026-06-19 02:55:25,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:55:25,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:55:25,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:55:25,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:55:27,174.174 INFO    ] ================================================
[2026-06-19 02:55:27,190.190 INFO    ] Launching Daemon at Fri Jun 19 02:55:27 IST 2026
[2026-06-19 02:55:27,200.200 INFO    ] ================================================
[2026-06-19 02:55:27,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:55:27
[2026-06-19 02:55:28,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:55:28,647.647 INFO    ] Initializing speech engine...
[2026-06-19 02:55:28,655.655 INFO    ] 2026-06-19 02:55:28
[2026-06-19 02:55:28,950.950 INFO    ] 2026-06-19 02:55:28
[2026-06-19 02:55:28,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:55:29,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:55:29,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:55:29,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:55:29,409.409 INFO    ] time= 19/06/2026 02:55:29
[2026-06-19 02:55:29,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:55:29,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:55:29,613.613 INFO    ] No existing commands found in stream
[2026-06-19 02:55:34,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:55:34,653.653 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 02:55:36,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:55:36,087.087 INFO    ] Checking for system updates...
[2026-06-19 02:55:36,124.124 INFO    ] 200
[2026-06-19 02:55:36,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:36,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:55:36,181.181 INFO    ] No update needed
[2026-06-19 02:55:36,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 02:55:36,217.217 INFO    ] 200
[2026-06-19 02:55:36,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:36,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:55:36,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:55:36,316.316 INFO    ] No camera update needed
[2026-06-19 02:55:36,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:55:36,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:55:36,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:55:36,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:55:38,370.370 INFO    ] ================================================
[2026-06-19 02:55:38,385.385 INFO    ] Launching Daemon at Fri Jun 19 02:55:38 IST 2026
[2026-06-19 02:55:38,396.396 INFO    ] ================================================
[2026-06-19 02:55:38,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:55:38
[2026-06-19 02:55:39,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:55:39,809.809 INFO    ] Initializing speech engine...
[2026-06-19 02:55:39,818.818 INFO    ] 2026-06-19 02:55:39
[2026-06-19 02:55:40,117.117 INFO    ] 2026-06-19 02:55:40
[2026-06-19 02:55:40,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:55:40,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:55:40,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:55:40,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:55:40,479.479 INFO    ] time= 19/06/2026 02:55:40
[2026-06-19 02:55:40,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:55:40,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:55:40,567.567 INFO    ] No existing commands found in stream
[2026-06-19 02:55:45,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:55:45,580.580 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 02:55:46,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:55:46,520.520 INFO    ] Checking for system updates...
[2026-06-19 02:55:46,556.556 INFO    ] 200
[2026-06-19 02:55:46,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:46,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:55:46,616.616 INFO    ] No update needed
[2026-06-19 02:55:46,619.619 INFO    ] Checking for camera pi updates...
[2026-06-19 02:55:46,658.658 INFO    ] 200
[2026-06-19 02:55:46,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:46,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:55:46,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:55:46,747.747 INFO    ] No camera update needed
[2026-06-19 02:55:46,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:55:46,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:55:46,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:55:46,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:55:48,803.803 INFO    ] ================================================
[2026-06-19 02:55:48,819.819 INFO    ] Launching Daemon at Fri Jun 19 02:55:48 IST 2026
[2026-06-19 02:55:48,830.830 INFO    ] ================================================
[2026-06-19 02:55:49,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:55:49
[2026-06-19 02:55:50,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:55:50,508.508 INFO    ] Initializing speech engine...
[2026-06-19 02:55:50,520.520 INFO    ] 2026-06-19 02:55:50
[2026-06-19 02:55:50,837.837 INFO    ] 2026-06-19 02:55:50
[2026-06-19 02:55:50,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:55:51,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:55:51,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:55:51,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:55:51,361.361 INFO    ] time= 19/06/2026 02:55:51
[2026-06-19 02:55:51,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:55:51,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:55:51,520.520 INFO    ] No existing commands found in stream
[2026-06-19 02:55:56,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:55:56,540.540 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 02:55:58,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:55:58,855.855 INFO    ] Checking for system updates...
[2026-06-19 02:55:58,895.895 INFO    ] 200
[2026-06-19 02:55:58,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:58,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:55:58,961.961 INFO    ] No update needed
[2026-06-19 02:55:58,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 02:55:58,997.997 INFO    ] 200
[2026-06-19 02:55:58,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:55:59,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:55:59,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:55:59,096.096 INFO    ] No camera update needed
[2026-06-19 02:55:59,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:55:59,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:55:59,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:55:59,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:56:01,169.169 INFO    ] ================================================
[2026-06-19 02:56:01,217.217 INFO    ] Launching Daemon at Fri Jun 19 02:56:01 IST 2026
[2026-06-19 02:56:01,250.250 INFO    ] ================================================
[2026-06-19 02:56:01,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:56:01
[2026-06-19 02:56:02,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:56:03,040.040 INFO    ] Initializing speech engine...
[2026-06-19 02:56:03,048.048 INFO    ] 2026-06-19 02:56:03
[2026-06-19 02:56:03,302.302 INFO    ] 2026-06-19 02:56:03
[2026-06-19 02:56:03,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:56:03,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:56:03,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:56:03,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:56:03,680.680 INFO    ] time= 19/06/2026 02:56:03
[2026-06-19 02:56:03,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:56:03,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:56:03,758.758 INFO    ] No existing commands found in stream
[2026-06-19 02:56:08,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:56:08,773.773 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 02:56:10,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:56:10,245.245 INFO    ] Checking for system updates...
[2026-06-19 02:56:10,282.282 INFO    ] 200
[2026-06-19 02:56:10,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:10,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:56:10,344.344 INFO    ] No update needed
[2026-06-19 02:56:10,347.347 INFO    ] Checking for camera pi updates...
[2026-06-19 02:56:10,380.380 INFO    ] 200
[2026-06-19 02:56:10,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:10,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:56:10,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:56:10,485.485 INFO    ] No camera update needed
[2026-06-19 02:56:10,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:56:10,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:56:10,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:56:10,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:56:12,540.540 INFO    ] ================================================
[2026-06-19 02:56:12,556.556 INFO    ] Launching Daemon at Fri Jun 19 02:56:12 IST 2026
[2026-06-19 02:56:12,567.567 INFO    ] ================================================
[2026-06-19 02:56:13,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:56:13
[2026-06-19 02:56:13,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:56:13,983.983 INFO    ] Initializing speech engine...
[2026-06-19 02:56:13,990.990 INFO    ] 2026-06-19 02:56:13
[2026-06-19 02:56:14,266.266 INFO    ] 2026-06-19 02:56:14
[2026-06-19 02:56:14,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:56:14,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:56:14,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:56:14,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:56:14,649.649 INFO    ] time= 19/06/2026 02:56:14
[2026-06-19 02:56:14,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:56:14,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:56:14,814.814 INFO    ] No existing commands found in stream
[2026-06-19 02:56:19,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:56:19,841.841 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 02:56:23,030.030 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 02:56:23,032.032 INFO    ] Checking for system updates...
[2026-06-19 02:56:23,068.068 INFO    ] 200
[2026-06-19 02:56:23,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:23,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:56:23,135.135 INFO    ] No update needed
[2026-06-19 02:56:23,138.138 INFO    ] Checking for camera pi updates...
[2026-06-19 02:56:23,184.184 INFO    ] 200
[2026-06-19 02:56:23,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:23,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:56:23,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:56:23,282.282 INFO    ] No camera update needed
[2026-06-19 02:56:23,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:56:23,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:56:23,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:56:23,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:56:25,338.338 INFO    ] ================================================
[2026-06-19 02:56:25,353.353 INFO    ] Launching Daemon at Fri Jun 19 02:56:25 IST 2026
[2026-06-19 02:56:25,364.364 INFO    ] ================================================
[2026-06-19 02:56:25,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:56:25
[2026-06-19 02:56:26,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:56:26,819.819 INFO    ] Initializing speech engine...
[2026-06-19 02:56:26,825.825 INFO    ] 2026-06-19 02:56:26
[2026-06-19 02:56:27,071.071 INFO    ] 2026-06-19 02:56:27
[2026-06-19 02:56:27,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:56:27,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:56:27,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:56:27,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:56:27,444.444 INFO    ] time= 19/06/2026 02:56:27
[2026-06-19 02:56:27,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:56:27,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:56:27,615.615 INFO    ] No existing commands found in stream
[2026-06-19 02:56:32,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:56:32,643.643 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 02:56:33,067.067 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:56:33,070.070 INFO    ] Checking for system updates...
[2026-06-19 02:56:33,110.110 INFO    ] 200
[2026-06-19 02:56:33,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:33,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:56:33,169.169 INFO    ] No update needed
[2026-06-19 02:56:33,171.171 INFO    ] Checking for camera pi updates...
[2026-06-19 02:56:33,208.208 INFO    ] 200
[2026-06-19 02:56:33,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:33,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:56:33,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:56:33,313.313 INFO    ] No camera update needed
[2026-06-19 02:56:33,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:56:33,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:56:33,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:56:33,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:56:35,370.370 INFO    ] ================================================
[2026-06-19 02:56:35,385.385 INFO    ] Launching Daemon at Fri Jun 19 02:56:35 IST 2026
[2026-06-19 02:56:35,395.395 INFO    ] ================================================
[2026-06-19 02:56:35,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:56:35
[2026-06-19 02:56:36,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:56:36,833.833 INFO    ] Initializing speech engine...
[2026-06-19 02:56:36,841.841 INFO    ] 2026-06-19 02:56:36
[2026-06-19 02:56:37,089.089 INFO    ] 2026-06-19 02:56:37
[2026-06-19 02:56:37,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:56:37,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:56:37,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:56:37,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:56:37,600.600 INFO    ] time= 19/06/2026 02:56:37
[2026-06-19 02:56:37,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:56:37,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:56:37,778.778 INFO    ] No existing commands found in stream
[2026-06-19 02:56:42,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:56:42,810.810 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 02:56:45,667.667 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:56:45,669.669 INFO    ] Checking for system updates...
[2026-06-19 02:56:45,707.707 INFO    ] 200
[2026-06-19 02:56:45,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:45,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:56:45,768.768 INFO    ] No update needed
[2026-06-19 02:56:45,771.771 INFO    ] Checking for camera pi updates...
[2026-06-19 02:56:45,806.806 INFO    ] 200
[2026-06-19 02:56:45,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:45,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:56:45,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:56:45,895.895 INFO    ] No camera update needed
[2026-06-19 02:56:45,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:56:45,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:56:45,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:56:45,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:56:47,958.958 INFO    ] ================================================
[2026-06-19 02:56:47,974.974 INFO    ] Launching Daemon at Fri Jun 19 02:56:47 IST 2026
[2026-06-19 02:56:47,985.985 INFO    ] ================================================
[2026-06-19 02:56:48,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:56:48
[2026-06-19 02:56:49,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:56:49,396.396 INFO    ] Initializing speech engine...
[2026-06-19 02:56:49,404.404 INFO    ] 2026-06-19 02:56:49
[2026-06-19 02:56:49,703.703 INFO    ] 2026-06-19 02:56:49
[2026-06-19 02:56:49,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:56:49,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:56:49,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:56:50,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:56:50,062.062 INFO    ] time= 19/06/2026 02:56:50
[2026-06-19 02:56:50,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:56:50,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:56:50,142.142 INFO    ] No existing commands found in stream
[2026-06-19 02:56:55,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:56:55,157.157 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 02:56:58,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 02:56:58,182.182 INFO    ] Checking for system updates...
[2026-06-19 02:56:58,219.219 INFO    ] 200
[2026-06-19 02:56:58,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:58,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:56:58,276.276 INFO    ] No update needed
[2026-06-19 02:56:58,279.279 INFO    ] Checking for camera pi updates...
[2026-06-19 02:56:58,312.312 INFO    ] 200
[2026-06-19 02:56:58,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:56:58,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:56:58,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:56:58,435.435 INFO    ] No camera update needed
[2026-06-19 02:56:58,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:56:58,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:56:58,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:56:58,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:57:00,491.491 INFO    ] ================================================
[2026-06-19 02:57:00,506.506 INFO    ] Launching Daemon at Fri Jun 19 02:57:00 IST 2026
[2026-06-19 02:57:00,517.517 INFO    ] ================================================
[2026-06-19 02:57:01,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:57:01
[2026-06-19 02:57:01,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:57:02,193.193 INFO    ] Initializing speech engine...
[2026-06-19 02:57:02,201.201 INFO    ] 2026-06-19 02:57:02
[2026-06-19 02:57:02,505.505 INFO    ] 2026-06-19 02:57:02
[2026-06-19 02:57:02,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:57:02,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:57:02,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:57:02,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:57:02,898.898 INFO    ] time= 19/06/2026 02:57:02
[2026-06-19 02:57:02,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:57:02,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:57:03,004.004 INFO    ] No existing commands found in stream
[2026-06-19 02:57:08,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:57:08,019.019 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 02:57:11,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:57:11,242.242 INFO    ] Checking for system updates...
[2026-06-19 02:57:11,279.279 INFO    ] 200
[2026-06-19 02:57:11,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:57:11,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:57:11,340.340 INFO    ] No update needed
[2026-06-19 02:57:11,342.342 INFO    ] Checking for camera pi updates...
[2026-06-19 02:57:11,377.377 INFO    ] 200
[2026-06-19 02:57:11,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:57:11,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:57:11,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:57:11,466.466 INFO    ] No camera update needed
[2026-06-19 02:57:11,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:57:11,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:57:11,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:57:11,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:57:13,524.524 INFO    ] ================================================
[2026-06-19 02:57:13,539.539 INFO    ] Launching Daemon at Fri Jun 19 02:57:13 IST 2026
[2026-06-19 02:57:13,549.549 INFO    ] ================================================
[2026-06-19 02:57:14,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:57:14
[2026-06-19 02:57:14,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:57:15,003.003 INFO    ] Initializing speech engine...
[2026-06-19 02:57:15,013.013 INFO    ] 2026-06-19 02:57:15
[2026-06-19 02:57:15,261.261 INFO    ] 2026-06-19 02:57:15
[2026-06-19 02:57:15,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:57:15,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:57:15,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:57:15,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:57:15,731.731 INFO    ] time= 19/06/2026 02:57:15
[2026-06-19 02:57:15,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:57:15,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:57:15,885.885 INFO    ] No existing commands found in stream
[2026-06-19 02:57:20,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:57:20,899.899 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 02:57:22,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:57:22,791.791 INFO    ] Checking for system updates...
[2026-06-19 02:57:22,827.827 INFO    ] 200
[2026-06-19 02:57:22,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:57:22,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:57:22,884.884 INFO    ] No update needed
[2026-06-19 02:57:22,887.887 INFO    ] Checking for camera pi updates...
[2026-06-19 02:57:22,922.922 INFO    ] 200
[2026-06-19 02:57:22,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:57:22,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:57:23,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:57:23,023.023 INFO    ] No camera update needed
[2026-06-19 02:57:23,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:57:23,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:57:23,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:57:23,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:57:25,079.079 INFO    ] ================================================
[2026-06-19 02:57:25,094.094 INFO    ] Launching Daemon at Fri Jun 19 02:57:25 IST 2026
[2026-06-19 02:57:25,105.105 INFO    ] ================================================
[2026-06-19 02:57:25,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:57:25
[2026-06-19 02:57:26,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:57:26,520.520 INFO    ] Initializing speech engine...
[2026-06-19 02:57:26,543.543 INFO    ] 2026-06-19 02:57:26
[2026-06-19 02:57:26,800.800 INFO    ] 2026-06-19 02:57:26
[2026-06-19 02:57:26,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:57:27,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:57:27,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:57:27,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:57:27,256.256 INFO    ] time= 19/06/2026 02:57:27
[2026-06-19 02:57:27,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:57:27,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:57:27,433.433 INFO    ] No existing commands found in stream
[2026-06-19 02:57:32,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:57:32,448.448 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 02:57:34,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:57:34,673.673 INFO    ] Checking for system updates...
[2026-06-19 02:57:34,709.709 INFO    ] 200
[2026-06-19 02:57:34,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:57:34,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:57:34,767.767 INFO    ] No update needed
[2026-06-19 02:57:34,770.770 INFO    ] Checking for camera pi updates...
[2026-06-19 02:57:34,803.803 INFO    ] 200
[2026-06-19 02:57:34,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:57:34,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:57:34,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:57:34,907.907 INFO    ] No camera update needed
[2026-06-19 02:57:34,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:57:34,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:57:34,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:57:34,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:57:36,962.962 INFO    ] ================================================
[2026-06-19 02:57:36,977.977 INFO    ] Launching Daemon at Fri Jun 19 02:57:36 IST 2026
[2026-06-19 02:57:36,988.988 INFO    ] ================================================
[2026-06-19 02:57:37,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:57:37
[2026-06-19 02:57:38,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:57:38,444.444 INFO    ] Initializing speech engine...
[2026-06-19 02:57:38,453.453 INFO    ] 2026-06-19 02:57:38
[2026-06-19 02:57:38,717.717 INFO    ] 2026-06-19 02:57:38
[2026-06-19 02:57:38,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:57:38,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:57:39,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:57:39,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:57:39,190.190 INFO    ] time= 19/06/2026 02:57:39
[2026-06-19 02:57:39,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:57:39,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:57:39,396.396 INFO    ] No existing commands found in stream
[2026-06-19 02:57:44,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:57:44,429.429 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 02:57:47,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:57:47,200.200 INFO    ] Checking for system updates...
[2026-06-19 02:57:47,239.239 INFO    ] 200
[2026-06-19 02:57:47,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:57:47,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:57:47,297.297 INFO    ] No update needed
[2026-06-19 02:57:47,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 02:57:47,333.333 INFO    ] 200
[2026-06-19 02:57:47,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:57:47,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:57:47,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:57:47,410.410 INFO    ] No camera update needed
[2026-06-19 02:57:47,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:57:47,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:57:47,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:57:47,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:57:49,467.467 INFO    ] ================================================
[2026-06-19 02:57:49,482.482 INFO    ] Launching Daemon at Fri Jun 19 02:57:49 IST 2026
[2026-06-19 02:57:49,493.493 INFO    ] ================================================
[2026-06-19 02:57:50,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:57:50
[2026-06-19 02:57:50,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:57:50,949.949 INFO    ] Initializing speech engine...
[2026-06-19 02:57:50,956.956 INFO    ] 2026-06-19 02:57:50
[2026-06-19 02:57:51,217.217 INFO    ] 2026-06-19 02:57:51
[2026-06-19 02:57:51,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:57:51,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:57:51,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:57:51,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:57:51,654.654 INFO    ] time= 19/06/2026 02:57:51
[2026-06-19 02:57:51,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:57:51,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:57:51,819.819 INFO    ] No existing commands found in stream
[2026-06-19 02:57:56,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:57:56,834.834 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 02:58:01,212.212 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:58:01,217.217 INFO    ] Checking for system updates...
[2026-06-19 02:58:01,281.281 INFO    ] 200
[2026-06-19 02:58:01,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:01,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:58:01,407.407 INFO    ] No update needed
[2026-06-19 02:58:01,411.411 INFO    ] Checking for camera pi updates...
[2026-06-19 02:58:01,470.470 INFO    ] 200
[2026-06-19 02:58:01,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:01,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:58:01,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:58:01,637.637 INFO    ] No camera update needed
[2026-06-19 02:58:01,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:58:01,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:58:01,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:58:01,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:58:03,700.700 INFO    ] ================================================
[2026-06-19 02:58:03,716.716 INFO    ] Launching Daemon at Fri Jun 19 02:58:03 IST 2026
[2026-06-19 02:58:03,727.727 INFO    ] ================================================
[2026-06-19 02:58:04,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:58:04
[2026-06-19 02:58:04,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:58:05,197.197 INFO    ] Initializing speech engine...
[2026-06-19 02:58:05,204.204 INFO    ] 2026-06-19 02:58:05
[2026-06-19 02:58:05,479.479 INFO    ] 2026-06-19 02:58:05
[2026-06-19 02:58:05,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:58:05,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:58:05,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:58:05,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:58:05,947.947 INFO    ] time= 19/06/2026 02:58:05
[2026-06-19 02:58:05,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:58:06,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:58:06,127.127 INFO    ] No existing commands found in stream
[2026-06-19 02:58:11,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:58:11,142.142 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 02:58:12,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:58:12,654.654 INFO    ] Checking for system updates...
[2026-06-19 02:58:12,693.693 INFO    ] 200
[2026-06-19 02:58:12,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:12,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:58:12,756.756 INFO    ] No update needed
[2026-06-19 02:58:12,758.758 INFO    ] Checking for camera pi updates...
[2026-06-19 02:58:12,795.795 INFO    ] 200
[2026-06-19 02:58:12,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:12,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:58:12,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:58:12,898.898 INFO    ] No camera update needed
[2026-06-19 02:58:12,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:58:12,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:58:12,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:58:12,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:58:14,955.955 INFO    ] ================================================
[2026-06-19 02:58:14,970.970 INFO    ] Launching Daemon at Fri Jun 19 02:58:14 IST 2026
[2026-06-19 02:58:14,982.982 INFO    ] ================================================
[2026-06-19 02:58:15,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:58:15
[2026-06-19 02:58:16,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:58:16,437.437 INFO    ] Initializing speech engine...
[2026-06-19 02:58:16,456.456 INFO    ] 2026-06-19 02:58:16
[2026-06-19 02:58:16,723.723 INFO    ] 2026-06-19 02:58:16
[2026-06-19 02:58:16,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:58:16,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:58:16,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:58:17,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:58:17,135.135 INFO    ] time= 19/06/2026 02:58:17
[2026-06-19 02:58:17,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:58:17,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:58:17,298.298 INFO    ] No existing commands found in stream
[2026-06-19 02:58:22,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:58:22,332.332 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 02:58:25,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:58:25,561.561 INFO    ] Checking for system updates...
[2026-06-19 02:58:25,597.597 INFO    ] 200
[2026-06-19 02:58:25,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:25,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:58:25,654.654 INFO    ] No update needed
[2026-06-19 02:58:25,656.656 INFO    ] Checking for camera pi updates...
[2026-06-19 02:58:25,690.690 INFO    ] 200
[2026-06-19 02:58:25,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:25,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:58:25,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:58:25,780.780 INFO    ] No camera update needed
[2026-06-19 02:58:25,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:58:25,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:58:25,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:58:25,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:58:27,837.837 INFO    ] ================================================
[2026-06-19 02:58:27,852.852 INFO    ] Launching Daemon at Fri Jun 19 02:58:27 IST 2026
[2026-06-19 02:58:27,863.863 INFO    ] ================================================
[2026-06-19 02:58:28,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:58:28
[2026-06-19 02:58:29,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:58:29,316.316 INFO    ] Initializing speech engine...
[2026-06-19 02:58:29,324.324 INFO    ] 2026-06-19 02:58:29
[2026-06-19 02:58:29,591.591 INFO    ] 2026-06-19 02:58:29
[2026-06-19 02:58:29,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:58:29,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:58:29,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:58:29,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:58:29,962.962 INFO    ] time= 19/06/2026 02:58:29
[2026-06-19 02:58:29,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:58:30,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:58:30,084.084 INFO    ] No existing commands found in stream
[2026-06-19 02:58:35,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:58:35,099.099 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 02:58:39,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:58:39,339.339 INFO    ] Checking for system updates...
[2026-06-19 02:58:39,379.379 INFO    ] 200
[2026-06-19 02:58:39,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:39,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:58:39,437.437 INFO    ] No update needed
[2026-06-19 02:58:39,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 02:58:39,473.473 INFO    ] 200
[2026-06-19 02:58:39,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:39,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:58:39,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:58:39,561.561 INFO    ] No camera update needed
[2026-06-19 02:58:39,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:58:39,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:58:39,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:58:39,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:58:41,617.617 INFO    ] ================================================
[2026-06-19 02:58:41,632.632 INFO    ] Launching Daemon at Fri Jun 19 02:58:41 IST 2026
[2026-06-19 02:58:41,643.643 INFO    ] ================================================
[2026-06-19 02:58:42,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:58:42
[2026-06-19 02:58:42,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:58:43,106.106 INFO    ] Initializing speech engine...
[2026-06-19 02:58:43,124.124 INFO    ] 2026-06-19 02:58:43
[2026-06-19 02:58:43,397.397 INFO    ] 2026-06-19 02:58:43
[2026-06-19 02:58:43,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:58:43,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:58:43,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:58:43,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:58:43,775.775 INFO    ] time= 19/06/2026 02:58:43
[2026-06-19 02:58:43,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:58:43,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:58:43,900.900 INFO    ] No existing commands found in stream
[2026-06-19 02:58:48,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:58:48,913.913 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 02:58:50,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 02:58:50,416.416 INFO    ] Checking for system updates...
[2026-06-19 02:58:50,452.452 INFO    ] 200
[2026-06-19 02:58:50,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:50,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:58:50,515.515 INFO    ] No update needed
[2026-06-19 02:58:50,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 02:58:50,555.555 INFO    ] 200
[2026-06-19 02:58:50,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:58:50,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:58:50,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:58:50,659.659 INFO    ] No camera update needed
[2026-06-19 02:58:50,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:58:50,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:58:50,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:58:50,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:58:52,716.716 INFO    ] ================================================
[2026-06-19 02:58:52,732.732 INFO    ] Launching Daemon at Fri Jun 19 02:58:52 IST 2026
[2026-06-19 02:58:52,743.743 INFO    ] ================================================
[2026-06-19 02:58:53,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:58:53
[2026-06-19 02:58:53,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:58:54,191.191 INFO    ] Initializing speech engine...
[2026-06-19 02:58:54,200.200 INFO    ] 2026-06-19 02:58:54
[2026-06-19 02:58:54,495.495 INFO    ] 2026-06-19 02:58:54
[2026-06-19 02:58:54,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:58:54,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:58:54,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:58:54,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:58:54,912.912 INFO    ] time= 19/06/2026 02:58:54
[2026-06-19 02:58:54,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:58:54,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:58:55,000.000 INFO    ] No existing commands found in stream
[2026-06-19 02:59:00,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:59:00,038.038 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 02:59:01,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:59:01,174.174 INFO    ] Checking for system updates...
[2026-06-19 02:59:01,254.254 INFO    ] 200
[2026-06-19 02:59:01,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:01,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:59:01,358.358 INFO    ] No update needed
[2026-06-19 02:59:01,361.361 INFO    ] Checking for camera pi updates...
[2026-06-19 02:59:01,440.440 INFO    ] 200
[2026-06-19 02:59:01,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:01,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:59:01,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:59:01,573.573 INFO    ] No camera update needed
[2026-06-19 02:59:01,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:59:01,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:59:01,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:59:01,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:59:03,641.641 INFO    ] ================================================
[2026-06-19 02:59:03,657.657 INFO    ] Launching Daemon at Fri Jun 19 02:59:03 IST 2026
[2026-06-19 02:59:03,668.668 INFO    ] ================================================
[2026-06-19 02:59:04,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:59:04
[2026-06-19 02:59:04,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:59:05,283.283 INFO    ] Initializing speech engine...
[2026-06-19 02:59:05,293.293 INFO    ] 2026-06-19 02:59:05
[2026-06-19 02:59:05,566.566 INFO    ] 2026-06-19 02:59:05
[2026-06-19 02:59:05,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:59:05,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:59:05,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:59:06,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:59:06,048.048 INFO    ] time= 19/06/2026 02:59:06
[2026-06-19 02:59:06,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:59:06,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:59:06,218.218 INFO    ] No existing commands found in stream
[2026-06-19 02:59:11,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:59:11,232.232 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 02:59:14,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 02:59:14,327.327 INFO    ] Checking for system updates...
[2026-06-19 02:59:14,363.363 INFO    ] 200
[2026-06-19 02:59:14,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:14,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:59:14,420.420 INFO    ] No update needed
[2026-06-19 02:59:14,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 02:59:14,456.456 INFO    ] 200
[2026-06-19 02:59:14,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:14,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:59:14,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:59:14,554.554 INFO    ] No camera update needed
[2026-06-19 02:59:14,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:59:14,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:59:14,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:59:14,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:59:16,610.610 INFO    ] ================================================
[2026-06-19 02:59:16,626.626 INFO    ] Launching Daemon at Fri Jun 19 02:59:16 IST 2026
[2026-06-19 02:59:16,638.638 INFO    ] ================================================
[2026-06-19 02:59:17,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:59:17
[2026-06-19 02:59:17,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:59:18,092.092 INFO    ] Initializing speech engine...
[2026-06-19 02:59:18,101.101 INFO    ] 2026-06-19 02:59:18
[2026-06-19 02:59:18,356.356 INFO    ] 2026-06-19 02:59:18
[2026-06-19 02:59:18,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:59:18,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:59:18,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:59:18,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:59:18,832.832 INFO    ] time= 19/06/2026 02:59:18
[2026-06-19 02:59:18,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:59:18,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:59:18,972.972 INFO    ] No existing commands found in stream
[2026-06-19 02:59:23,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:59:23,992.992 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 02:59:26,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:59:26,275.275 INFO    ] Checking for system updates...
[2026-06-19 02:59:26,316.316 INFO    ] 200
[2026-06-19 02:59:26,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:26,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:59:26,382.382 INFO    ] No update needed
[2026-06-19 02:59:26,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 02:59:26,423.423 INFO    ] 200
[2026-06-19 02:59:26,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:26,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:59:26,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:59:26,517.517 INFO    ] No camera update needed
[2026-06-19 02:59:26,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:59:26,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:59:26,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:59:26,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:59:28,576.576 INFO    ] ================================================
[2026-06-19 02:59:28,592.592 INFO    ] Launching Daemon at Fri Jun 19 02:59:28 IST 2026
[2026-06-19 02:59:28,603.603 INFO    ] ================================================
[2026-06-19 02:59:29,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:59:29
[2026-06-19 02:59:29,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:59:30,065.065 INFO    ] Initializing speech engine...
[2026-06-19 02:59:30,088.088 INFO    ] 2026-06-19 02:59:30
[2026-06-19 02:59:30,342.342 INFO    ] 2026-06-19 02:59:30
[2026-06-19 02:59:30,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:59:30,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:59:30,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:59:30,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:59:30,715.715 INFO    ] time= 19/06/2026 02:59:30
[2026-06-19 02:59:30,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:59:30,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:59:30,877.877 INFO    ] No existing commands found in stream
[2026-06-19 02:59:35,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:59:35,910.910 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 02:59:39,801.801 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 02:59:39,803.803 INFO    ] Checking for system updates...
[2026-06-19 02:59:39,839.839 INFO    ] 200
[2026-06-19 02:59:39,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:39,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:59:39,903.903 INFO    ] No update needed
[2026-06-19 02:59:39,905.905 INFO    ] Checking for camera pi updates...
[2026-06-19 02:59:39,942.942 INFO    ] 200
[2026-06-19 02:59:39,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:39,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:59:40,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 02:59:40,139.139 INFO    ] No camera update needed
[2026-06-19 02:59:40,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:59:40,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:59:40,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:59:40,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:59:42,197.197 INFO    ] ================================================
[2026-06-19 02:59:42,212.212 INFO    ] Launching Daemon at Fri Jun 19 02:59:42 IST 2026
[2026-06-19 02:59:42,223.223 INFO    ] ================================================
[2026-06-19 02:59:42,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:59:42
[2026-06-19 02:59:43,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:59:43,689.689 INFO    ] Initializing speech engine...
[2026-06-19 02:59:43,698.698 INFO    ] 2026-06-19 02:59:43
[2026-06-19 02:59:43,966.966 INFO    ] 2026-06-19 02:59:43
[2026-06-19 02:59:44,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:59:44,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:59:44,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:59:44,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:59:44,352.352 INFO    ] time= 19/06/2026 02:59:44
[2026-06-19 02:59:44,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:59:44,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:59:44,476.476 INFO    ] No existing commands found in stream
[2026-06-19 02:59:49,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 02:59:49,492.492 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 02:59:52,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 02:59:52,504.504 INFO    ] Checking for system updates...
[2026-06-19 02:59:52,543.543 INFO    ] 200
[2026-06-19 02:59:52,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:52,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:59:52,601.601 INFO    ] No update needed
[2026-06-19 02:59:52,604.604 INFO    ] Checking for camera pi updates...
[2026-06-19 02:59:52,638.638 INFO    ] 200
[2026-06-19 02:59:52,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 02:59:52,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 02:59:52,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 02:59:52,727.727 INFO    ] No camera update needed
[2026-06-19 02:59:52,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-19 02:59:52,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 02:59:52,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 02:59:52,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 02:59:54,783.783 INFO    ] ================================================
[2026-06-19 02:59:54,798.798 INFO    ] Launching Daemon at Fri Jun 19 02:59:54 IST 2026
[2026-06-19 02:59:54,810.810 INFO    ] ================================================
[2026-06-19 02:59:55,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 02:59:55
[2026-06-19 02:59:56,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 02:59:56,423.423 INFO    ] Initializing speech engine...
[2026-06-19 02:59:56,437.437 INFO    ] 2026-06-19 02:59:56
[2026-06-19 02:59:56,719.719 INFO    ] 2026-06-19 02:59:56
[2026-06-19 02:59:56,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 02:59:56,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 02:59:57,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 02:59:57,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 02:59:57,217.217 INFO    ] time= 19/06/2026 02:59:57
[2026-06-19 02:59:57,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 02:59:57,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-19 02:59:57,404.404 INFO    ] No existing commands found in stream
[2026-06-19 03:00:02,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:00:02,433.433 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 03:00:08,293.293 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:00:08,295.295 INFO    ] Checking for system updates...
[2026-06-19 03:00:08,333.333 INFO    ] 200
[2026-06-19 03:00:08,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:08,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:00:08,390.390 INFO    ] No update needed
[2026-06-19 03:00:08,393.393 INFO    ] Checking for camera pi updates...
[2026-06-19 03:00:08,430.430 INFO    ] 200
[2026-06-19 03:00:08,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:08,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:00:08,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:00:08,537.537 INFO    ] No camera update needed
[2026-06-19 03:00:08,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:00:08,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:00:08,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:00:08,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:00:10,592.592 INFO    ] ================================================
[2026-06-19 03:00:10,608.608 INFO    ] Launching Daemon at Fri Jun 19 03:00:10 IST 2026
[2026-06-19 03:00:10,619.619 INFO    ] ================================================
[2026-06-19 03:00:11,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:00:11
[2026-06-19 03:00:11,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:00:12,025.025 INFO    ] Initializing speech engine...
[2026-06-19 03:00:12,037.037 INFO    ] 2026-06-19 03:00:12
[2026-06-19 03:00:12,303.303 INFO    ] 2026-06-19 03:00:12
[2026-06-19 03:00:12,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:00:12,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:00:12,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:00:12,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:00:12,680.680 INFO    ] time= 19/06/2026 03:00:12
[2026-06-19 03:00:12,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:00:12,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:00:12,843.843 INFO    ] No existing commands found in stream
[2026-06-19 03:00:17,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:00:17,877.877 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 03:00:20,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:00:20,222.222 INFO    ] Checking for system updates...
[2026-06-19 03:00:20,261.261 INFO    ] 200
[2026-06-19 03:00:20,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:20,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:00:20,319.319 INFO    ] No update needed
[2026-06-19 03:00:20,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 03:00:20,355.355 INFO    ] 200
[2026-06-19 03:00:20,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:20,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:00:20,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:00:20,444.444 INFO    ] No camera update needed
[2026-06-19 03:00:20,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:00:20,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:00:20,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:00:20,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:00:22,503.503 INFO    ] ================================================
[2026-06-19 03:00:22,519.519 INFO    ] Launching Daemon at Fri Jun 19 03:00:22 IST 2026
[2026-06-19 03:00:22,531.531 INFO    ] ================================================
[2026-06-19 03:00:23,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:00:23
[2026-06-19 03:00:23,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:00:24,002.002 INFO    ] Initializing speech engine...
[2026-06-19 03:00:24,010.010 INFO    ] 2026-06-19 03:00:24
[2026-06-19 03:00:24,274.274 INFO    ] 2026-06-19 03:00:24
[2026-06-19 03:00:24,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:00:24,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:00:24,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:00:24,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:00:24,748.748 INFO    ] time= 19/06/2026 03:00:24
[2026-06-19 03:00:24,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:00:24,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:00:24,905.905 INFO    ] No existing commands found in stream
[2026-06-19 03:00:29,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:00:29,920.920 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 03:00:31,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:00:31,897.897 INFO    ] Checking for system updates...
[2026-06-19 03:00:31,936.936 INFO    ] 200
[2026-06-19 03:00:31,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:31,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:00:32,000.000 INFO    ] No update needed
[2026-06-19 03:00:32,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 03:00:32,045.045 INFO    ] 200
[2026-06-19 03:00:32,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:32,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:00:32,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:00:32,165.165 INFO    ] No camera update needed
[2026-06-19 03:00:32,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:00:32,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:00:32,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:00:32,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:00:34,228.228 INFO    ] ================================================
[2026-06-19 03:00:34,244.244 INFO    ] Launching Daemon at Fri Jun 19 03:00:34 IST 2026
[2026-06-19 03:00:34,255.255 INFO    ] ================================================
[2026-06-19 03:00:34,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:00:34
[2026-06-19 03:00:35,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:00:35,717.717 INFO    ] Initializing speech engine...
[2026-06-19 03:00:35,730.730 INFO    ] 2026-06-19 03:00:35
[2026-06-19 03:00:36,017.017 INFO    ] 2026-06-19 03:00:35
[2026-06-19 03:00:36,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:00:36,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:00:36,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:00:36,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:00:36,388.388 INFO    ] time= 19/06/2026 03:00:36
[2026-06-19 03:00:36,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:00:36,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:00:36,511.511 INFO    ] No existing commands found in stream
[2026-06-19 03:00:41,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:00:41,528.528 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 03:00:42,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:00:42,067.067 INFO    ] Checking for system updates...
[2026-06-19 03:00:42,106.106 INFO    ] 200
[2026-06-19 03:00:42,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:42,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:00:42,170.170 INFO    ] No update needed
[2026-06-19 03:00:42,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 03:00:42,210.210 INFO    ] 200
[2026-06-19 03:00:42,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:42,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:00:42,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:00:42,299.299 INFO    ] No camera update needed
[2026-06-19 03:00:42,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:00:42,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:00:42,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:00:42,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:00:44,354.354 INFO    ] ================================================
[2026-06-19 03:00:44,370.370 INFO    ] Launching Daemon at Fri Jun 19 03:00:44 IST 2026
[2026-06-19 03:00:44,381.381 INFO    ] ================================================
[2026-06-19 03:00:44,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:00:44
[2026-06-19 03:00:45,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:00:45,807.807 INFO    ] Initializing speech engine...
[2026-06-19 03:00:45,816.816 INFO    ] 2026-06-19 03:00:45
[2026-06-19 03:00:46,065.065 INFO    ] 2026-06-19 03:00:46
[2026-06-19 03:00:46,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:00:46,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:00:46,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:00:46,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:00:46,551.551 INFO    ] time= 19/06/2026 03:00:46
[2026-06-19 03:00:46,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:00:46,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:00:46,692.692 INFO    ] No existing commands found in stream
[2026-06-19 03:00:51,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:00:51,707.707 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 03:00:55,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:00:55,471.471 INFO    ] Checking for system updates...
[2026-06-19 03:00:55,507.507 INFO    ] 200
[2026-06-19 03:00:55,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:55,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:00:55,569.569 INFO    ] No update needed
[2026-06-19 03:00:55,571.571 INFO    ] Checking for camera pi updates...
[2026-06-19 03:00:55,605.605 INFO    ] 200
[2026-06-19 03:00:55,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:00:55,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:00:55,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:00:55,697.697 INFO    ] No camera update needed
[2026-06-19 03:00:55,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:00:55,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:00:55,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:00:55,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:00:57,751.751 INFO    ] ================================================
[2026-06-19 03:00:57,768.768 INFO    ] Launching Daemon at Fri Jun 19 03:00:57 IST 2026
[2026-06-19 03:00:57,780.780 INFO    ] ================================================
[2026-06-19 03:00:58,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:00:58
[2026-06-19 03:00:58,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:00:59,229.229 INFO    ] Initializing speech engine...
[2026-06-19 03:00:59,252.252 INFO    ] 2026-06-19 03:00:59
[2026-06-19 03:00:59,525.525 INFO    ] 2026-06-19 03:00:59
[2026-06-19 03:00:59,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:00:59,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:00:59,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:00:59,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:00:59,898.898 INFO    ] time= 19/06/2026 03:00:59
[2026-06-19 03:00:59,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:00:59,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:01:00,083.083 INFO    ] No existing commands found in stream
[2026-06-19 03:01:05,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:01:05,111.111 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 03:01:07,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:01:07,484.484 INFO    ] Checking for system updates...
[2026-06-19 03:01:07,521.521 INFO    ] 200
[2026-06-19 03:01:07,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:01:07,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:01:07,582.582 INFO    ] No update needed
[2026-06-19 03:01:07,584.584 INFO    ] Checking for camera pi updates...
[2026-06-19 03:01:07,618.618 INFO    ] 200
[2026-06-19 03:01:07,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:01:07,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:01:07,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:01:07,705.705 INFO    ] No camera update needed
[2026-06-19 03:01:07,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:01:07,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:01:07,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:01:07,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:01:09,760.760 INFO    ] ================================================
[2026-06-19 03:01:09,775.775 INFO    ] Launching Daemon at Fri Jun 19 03:01:09 IST 2026
[2026-06-19 03:01:09,786.786 INFO    ] ================================================
[2026-06-19 03:01:10,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:01:10
[2026-06-19 03:01:11,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:01:11,313.313 INFO    ] Initializing speech engine...
[2026-06-19 03:01:11,322.322 INFO    ] 2026-06-19 03:01:11
[2026-06-19 03:01:11,579.579 INFO    ] 2026-06-19 03:01:11
[2026-06-19 03:01:11,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:01:11,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:01:11,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:01:12,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:01:12,039.039 INFO    ] time= 19/06/2026 03:01:12
[2026-06-19 03:01:12,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:01:12,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:01:12,202.202 INFO    ] No existing commands found in stream
[2026-06-19 03:01:17,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:01:17,218.218 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 03:01:17,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:01:17,696.696 INFO    ] Checking for system updates...
[2026-06-19 03:01:17,733.733 INFO    ] 200
[2026-06-19 03:01:17,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:01:17,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:01:17,793.793 INFO    ] No update needed
[2026-06-19 03:01:17,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 03:01:17,831.831 INFO    ] 200
[2026-06-19 03:01:17,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:01:17,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:01:17,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:01:17,924.924 INFO    ] No camera update needed
[2026-06-19 03:01:17,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:01:17,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:01:17,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:01:17,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:01:19,981.981 INFO    ] ================================================
[2026-06-19 03:01:20,997.997 INFO    ] Launching Daemon at Fri Jun 19 03:01:19 IST 2026
[2026-06-19 03:01:20,007.007 INFO    ] ================================================
[2026-06-19 03:01:20,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:01:20
[2026-06-19 03:01:21,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:01:21,476.476 INFO    ] Initializing speech engine...
[2026-06-19 03:01:21,483.483 INFO    ] 2026-06-19 03:01:21
[2026-06-19 03:01:21,744.744 INFO    ] 2026-06-19 03:01:21
[2026-06-19 03:01:21,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:01:22,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:01:22,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:01:22,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:01:22,208.208 INFO    ] time= 19/06/2026 03:01:22
[2026-06-19 03:01:22,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:01:22,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:01:22,356.356 INFO    ] No existing commands found in stream
[2026-06-19 03:01:27,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:01:27,371.371 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 03:01:27,594.594 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-19 03:01:27,619.619 INFO    ] ("HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM07202501 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d507d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))",)
[2026-06-19 03:01:27,628.628 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM07202501 (Caused by NewConnectionError('<urllib3.connection.VerifiedHTTPSConnection object at 0x73d507d0>: Failed to establish a new connection: [Errno 101] Network is unreachable',))
[2026-06-19 03:01:27,637.637 INFO    ] None
[2026-06-19 03:01:27,639.639 INFO    ] Checking for system updates...
[2026-06-19 03:01:27,681.681 INFO    ] 200
[2026-06-19 03:01:27,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:01:27,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:01:27,744.744 INFO    ] No update needed
[2026-06-19 03:01:27,747.747 INFO    ] Checking for camera pi updates...
[2026-06-19 03:01:27,781.781 INFO    ] 200
[2026-06-19 03:01:27,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:01:27,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:01:27,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:01:27,870.870 INFO    ] No camera update needed
[2026-06-19 03:01:27,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:01:27,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:01:27,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:01:27,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:01:29,926.926 INFO    ] ================================================
[2026-06-19 03:01:29,941.941 INFO    ] Launching Daemon at Fri Jun 19 03:01:29 IST 2026
[2026-06-19 03:01:29,952.952 INFO    ] ================================================
[2026-06-19 03:01:30,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:01:30
[2026-06-19 03:01:31,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:01:31,548.548 INFO    ] Initializing speech engine...
[2026-06-19 03:01:31,557.557 INFO    ] 2026-06-19 03:01:31
[2026-06-19 03:01:31,852.852 INFO    ] 2026-06-19 03:01:31
[2026-06-19 03:01:31,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:01:32,048.048 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-19 03:01:32,196.196 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-19 03:01:32,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:01:32,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:01:32,264.264 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 03:01:32,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:01:34,434.434 INFO    ] ================================================
[2026-06-19 03:01:34,449.449 INFO    ] Launching Daemon at Fri Jun 19 03:01:34 IST 2026
[2026-06-19 03:01:34,460.460 INFO    ] ================================================
[2026-06-19 03:01:35,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:01:35
[2026-06-19 03:01:35,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:01:35,897.897 INFO    ] Initializing speech engine...
[2026-06-19 03:01:35,905.905 INFO    ] 2026-06-19 03:01:35
[2026-06-19 03:01:36,158.158 INFO    ] 2026-06-19 03:01:36
[2026-06-19 03:01:36,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:01:36,249.249 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-19 03:01:36,414.414 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-19 03:01:36,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:01:36,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:01:36,514.514 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 03:01:36,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:01:38,588.588 INFO    ] ================================================
[2026-06-19 03:01:38,603.603 INFO    ] Launching Daemon at Fri Jun 19 03:01:38 IST 2026
[2026-06-19 03:01:38,614.614 INFO    ] ================================================
[2026-06-19 03:01:39,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:01:39
[2026-06-19 03:01:39,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:01:40,085.085 INFO    ] Initializing speech engine...
[2026-06-19 03:01:40,093.093 INFO    ] 2026-06-19 03:01:40
[2026-06-19 03:01:40,357.357 INFO    ] 2026-06-19 03:01:40
[2026-06-19 03:01:40,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:01:45,490.490 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-19 03:01:45,517.517 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-19 03:01:45,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:01:45,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:01:45,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:01:47,569.569 INFO    ] ================================================
[2026-06-19 03:01:47,584.584 INFO    ] Launching Daemon at Fri Jun 19 03:01:47 IST 2026
[2026-06-19 03:01:47,594.594 INFO    ] ================================================
[2026-06-19 03:01:48,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:01:48
[2026-06-19 03:01:48,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:01:49,145.145 INFO    ] Initializing speech engine...
[2026-06-19 03:01:49,154.154 INFO    ] 2026-06-19 03:01:49
[2026-06-19 03:01:49,418.418 INFO    ] 2026-06-19 03:01:49
[2026-06-19 03:01:49,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:01:49,568.568 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-19 03:01:49,672.672 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-19 03:01:49,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:01:49,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:01:49,770.770 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 03:01:49,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:01:51,827.827 INFO    ] ================================================
[2026-06-19 03:01:51,844.844 INFO    ] Launching Daemon at Fri Jun 19 03:01:51 IST 2026
[2026-06-19 03:01:51,855.855 INFO    ] ================================================
[2026-06-19 03:01:52,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:01:52
[2026-06-19 03:01:53,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:01:53,368.368 INFO    ] Initializing speech engine...
[2026-06-19 03:01:53,378.378 INFO    ] 2026-06-19 03:01:53
[2026-06-19 03:01:53,631.631 INFO    ] 2026-06-19 03:01:53
[2026-06-19 03:01:53,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:01:58,725.725 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-19 03:01:58,751.751 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-19 03:01:58,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:01:58,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:01:58,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:02:00,804.804 INFO    ] ================================================
[2026-06-19 03:02:00,820.820 INFO    ] Launching Daemon at Fri Jun 19 03:02:00 IST 2026
[2026-06-19 03:02:00,831.831 INFO    ] ================================================
[2026-06-19 03:02:01,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:02:01
[2026-06-19 03:02:02,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:02:02,526.526 INFO    ] Initializing speech engine...
[2026-06-19 03:02:02,537.537 INFO    ] 2026-06-19 03:02:02
[2026-06-19 03:02:02,844.844 INFO    ] 2026-06-19 03:02:02
[2026-06-19 03:02:02,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:02:02,985.985 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-19 03:02:03,130.130 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-19 03:02:03,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:02:03,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:02:03,183.183 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 03:02:03,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:02:05,283.283 INFO    ] ================================================
[2026-06-19 03:02:05,299.299 INFO    ] Launching Daemon at Fri Jun 19 03:02:05 IST 2026
[2026-06-19 03:02:05,311.311 INFO    ] ================================================
[2026-06-19 03:02:05,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:02:05
[2026-06-19 03:02:06,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:02:06,832.832 INFO    ] Initializing speech engine...
[2026-06-19 03:02:06,839.839 INFO    ] 2026-06-19 03:02:06
[2026-06-19 03:02:07,132.132 INFO    ] 2026-06-19 03:02:07
[2026-06-19 03:02:07,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:02:07,313.313 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-19 03:02:07,472.472 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-19 03:02:07,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:02:07,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:02:07,615.615 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 03:02:07,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:02:09,783.783 INFO    ] ================================================
[2026-06-19 03:02:09,799.799 INFO    ] Launching Daemon at Fri Jun 19 03:02:09 IST 2026
[2026-06-19 03:02:09,813.813 INFO    ] ================================================
[2026-06-19 03:02:10,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:02:10
[2026-06-19 03:02:11,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:02:11,277.277 INFO    ] Initializing speech engine...
[2026-06-19 03:02:11,296.296 INFO    ] 2026-06-19 03:02:11
[2026-06-19 03:02:11,568.568 INFO    ] 2026-06-19 03:02:11
[2026-06-19 03:02:11,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:02:16,665.665 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-19 03:02:16,692.692 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-19 03:02:16,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:02:16,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:02:16,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:02:18,744.744 INFO    ] ================================================
[2026-06-19 03:02:18,764.764 INFO    ] Launching Daemon at Fri Jun 19 03:02:18 IST 2026
[2026-06-19 03:02:18,776.776 INFO    ] ================================================
[2026-06-19 03:02:19,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:02:19
[2026-06-19 03:02:20,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:02:20,487.487 INFO    ] Initializing speech engine...
[2026-06-19 03:02:20,501.501 INFO    ] 2026-06-19 03:02:20
[2026-06-19 03:02:20,788.788 INFO    ] 2026-06-19 03:02:20
[2026-06-19 03:02:20,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:02:21,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:02:21,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:02:21,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:02:21,265.265 INFO    ] time= 19/06/2026 03:02:21
[2026-06-19 03:02:21,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:02:21,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:02:21,472.472 INFO    ] No existing commands found in stream
[2026-06-19 03:02:26,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:02:26,503.503 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 03:02:27,875.875 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:02:27,878.878 INFO    ] Checking for system updates...
[2026-06-19 03:02:27,916.916 INFO    ] 200
[2026-06-19 03:02:27,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:02:27,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:02:27,990.990 INFO    ] No update needed
[2026-06-19 03:02:27,993.993 INFO    ] Checking for camera pi updates...
[2026-06-19 03:02:28,032.032 INFO    ] 200
[2026-06-19 03:02:28,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:02:28,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:02:28,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:02:28,130.130 INFO    ] No camera update needed
[2026-06-19 03:02:28,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:02:28,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:02:28,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:02:28,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:02:30,189.189 INFO    ] ================================================
[2026-06-19 03:02:30,205.205 INFO    ] Launching Daemon at Fri Jun 19 03:02:30 IST 2026
[2026-06-19 03:02:30,216.216 INFO    ] ================================================
[2026-06-19 03:02:30,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:02:30
[2026-06-19 03:02:31,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:02:31,644.644 INFO    ] Initializing speech engine...
[2026-06-19 03:02:31,651.651 INFO    ] 2026-06-19 03:02:31
[2026-06-19 03:02:31,934.934 INFO    ] 2026-06-19 03:02:31
[2026-06-19 03:02:31,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:02:32,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:02:32,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:02:32,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:02:32,302.302 INFO    ] time= 19/06/2026 03:02:32
[2026-06-19 03:02:32,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:02:32,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:02:32,441.441 INFO    ] No existing commands found in stream
[2026-06-19 03:02:37,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:02:37,456.456 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 03:02:40,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:02:40,929.929 INFO    ] Checking for system updates...
[2026-06-19 03:02:40,969.969 INFO    ] 200
[2026-06-19 03:02:40,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:02:41,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:02:41,027.027 INFO    ] No update needed
[2026-06-19 03:02:41,030.030 INFO    ] Checking for camera pi updates...
[2026-06-19 03:02:41,064.064 INFO    ] 200
[2026-06-19 03:02:41,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:02:41,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:02:41,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:02:41,154.154 INFO    ] No camera update needed
[2026-06-19 03:02:41,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:02:41,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:02:41,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:02:41,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:02:43,211.211 INFO    ] ================================================
[2026-06-19 03:02:43,227.227 INFO    ] Launching Daemon at Fri Jun 19 03:02:43 IST 2026
[2026-06-19 03:02:43,238.238 INFO    ] ================================================
[2026-06-19 03:02:43,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:02:43
[2026-06-19 03:02:44,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:02:44,704.704 INFO    ] Initializing speech engine...
[2026-06-19 03:02:44,710.710 INFO    ] 2026-06-19 03:02:44
[2026-06-19 03:02:44,972.972 INFO    ] 2026-06-19 03:02:44
[2026-06-19 03:02:45,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:02:45,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:02:45,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:02:45,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:02:45,451.451 INFO    ] time= 19/06/2026 03:02:45
[2026-06-19 03:02:45,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:02:45,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:02:45,579.579 INFO    ] No existing commands found in stream
[2026-06-19 03:02:50,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:02:50,594.594 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 03:02:53,714.714 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:02:53,717.717 INFO    ] Checking for system updates...
[2026-06-19 03:02:53,753.753 INFO    ] 200
[2026-06-19 03:02:53,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:02:53,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:02:53,821.821 INFO    ] No update needed
[2026-06-19 03:02:53,824.824 INFO    ] Checking for camera pi updates...
[2026-06-19 03:02:53,862.862 INFO    ] 200
[2026-06-19 03:02:53,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:02:53,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:02:53,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:02:53,954.954 INFO    ] No camera update needed
[2026-06-19 03:02:53,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:02:53,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:02:53,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:02:53,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:02:56,012.012 INFO    ] ================================================
[2026-06-19 03:02:56,028.028 INFO    ] Launching Daemon at Fri Jun 19 03:02:56 IST 2026
[2026-06-19 03:02:56,038.038 INFO    ] ================================================
[2026-06-19 03:02:56,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:02:56
[2026-06-19 03:02:57,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:02:57,710.710 INFO    ] Initializing speech engine...
[2026-06-19 03:02:57,722.722 INFO    ] 2026-06-19 03:02:57
[2026-06-19 03:02:58,009.009 INFO    ] 2026-06-19 03:02:57
[2026-06-19 03:02:58,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:02:58,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:02:58,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:02:58,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:02:58,479.479 INFO    ] time= 19/06/2026 03:02:58
[2026-06-19 03:02:58,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:02:58,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:02:58,613.613 INFO    ] No existing commands found in stream
[2026-06-19 03:03:03,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:03:03,646.646 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 03:03:05,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:03:05,549.549 INFO    ] Checking for system updates...
[2026-06-19 03:03:05,587.587 INFO    ] 200
[2026-06-19 03:03:05,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:05,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:03:05,649.649 INFO    ] No update needed
[2026-06-19 03:03:05,652.652 INFO    ] Checking for camera pi updates...
[2026-06-19 03:03:05,691.691 INFO    ] 200
[2026-06-19 03:03:05,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:05,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:03:05,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:03:05,776.776 INFO    ] No camera update needed
[2026-06-19 03:03:05,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:03:05,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:03:05,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:03:05,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:03:07,832.832 INFO    ] ================================================
[2026-06-19 03:03:07,847.847 INFO    ] Launching Daemon at Fri Jun 19 03:03:07 IST 2026
[2026-06-19 03:03:07,857.857 INFO    ] ================================================
[2026-06-19 03:03:08,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:03:08
[2026-06-19 03:03:09,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:03:09,330.330 INFO    ] Initializing speech engine...
[2026-06-19 03:03:09,340.340 INFO    ] 2026-06-19 03:03:09
[2026-06-19 03:03:09,600.600 INFO    ] 2026-06-19 03:03:09
[2026-06-19 03:03:09,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:03:09,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:03:09,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:03:10,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:03:10,068.068 INFO    ] time= 19/06/2026 03:03:10
[2026-06-19 03:03:10,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:03:10,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:03:10,226.226 INFO    ] No existing commands found in stream
[2026-06-19 03:03:15,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:03:15,242.242 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 03:03:19,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:03:19,310.310 INFO    ] Checking for system updates...
[2026-06-19 03:03:19,350.350 INFO    ] 200
[2026-06-19 03:03:19,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:19,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:03:19,416.416 INFO    ] No update needed
[2026-06-19 03:03:19,418.418 INFO    ] Checking for camera pi updates...
[2026-06-19 03:03:19,453.453 INFO    ] 200
[2026-06-19 03:03:19,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:19,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:03:19,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:03:19,542.542 INFO    ] No camera update needed
[2026-06-19 03:03:19,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:03:19,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:03:19,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:03:19,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:03:21,597.597 INFO    ] ================================================
[2026-06-19 03:03:21,613.613 INFO    ] Launching Daemon at Fri Jun 19 03:03:21 IST 2026
[2026-06-19 03:03:21,624.624 INFO    ] ================================================
[2026-06-19 03:03:22,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:03:22
[2026-06-19 03:03:22,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:03:23,284.284 INFO    ] Initializing speech engine...
[2026-06-19 03:03:23,291.291 INFO    ] 2026-06-19 03:03:23
[2026-06-19 03:03:23,571.571 INFO    ] 2026-06-19 03:03:23
[2026-06-19 03:03:23,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:03:23,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:03:23,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:03:24,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:03:24,114.114 INFO    ] time= 19/06/2026 03:03:24
[2026-06-19 03:03:24,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:03:24,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:03:24,271.271 INFO    ] No existing commands found in stream
[2026-06-19 03:03:29,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:03:29,310.310 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 03:03:29,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:03:29,959.959 INFO    ] Checking for system updates...
[2026-06-19 03:03:30,000.000 INFO    ] 200
[2026-06-19 03:03:30,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:30,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:03:30,064.064 INFO    ] No update needed
[2026-06-19 03:03:30,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 03:03:30,106.106 INFO    ] 200
[2026-06-19 03:03:30,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:30,149.149 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:03:30,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:03:30,189.189 INFO    ] No camera update needed
[2026-06-19 03:03:30,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:03:30,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:03:30,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:03:30,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:03:32,248.248 INFO    ] ================================================
[2026-06-19 03:03:32,263.263 INFO    ] Launching Daemon at Fri Jun 19 03:03:32 IST 2026
[2026-06-19 03:03:32,275.275 INFO    ] ================================================
[2026-06-19 03:03:32,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:03:32
[2026-06-19 03:03:33,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:03:33,806.806 INFO    ] Initializing speech engine...
[2026-06-19 03:03:33,813.813 INFO    ] 2026-06-19 03:03:33
[2026-06-19 03:03:34,117.117 INFO    ] 2026-06-19 03:03:34
[2026-06-19 03:03:34,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:03:34,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:03:34,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:03:34,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:03:34,477.477 INFO    ] time= 19/06/2026 03:03:34
[2026-06-19 03:03:34,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:03:34,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:03:34,557.557 INFO    ] No existing commands found in stream
[2026-06-19 03:03:39,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:03:39,571.571 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 03:03:43,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:03:43,736.736 INFO    ] Checking for system updates...
[2026-06-19 03:03:43,777.777 INFO    ] 200
[2026-06-19 03:03:43,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:43,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:03:43,843.843 INFO    ] No update needed
[2026-06-19 03:03:43,845.845 INFO    ] Checking for camera pi updates...
[2026-06-19 03:03:43,883.883 INFO    ] 200
[2026-06-19 03:03:43,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:43,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:03:43,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:03:43,978.978 INFO    ] No camera update needed
[2026-06-19 03:03:43,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:03:43,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:03:43,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:03:43,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:03:46,034.034 INFO    ] ================================================
[2026-06-19 03:03:46,049.049 INFO    ] Launching Daemon at Fri Jun 19 03:03:46 IST 2026
[2026-06-19 03:03:46,059.059 INFO    ] ================================================
[2026-06-19 03:03:46,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:03:46
[2026-06-19 03:03:47,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:03:47,478.478 INFO    ] Initializing speech engine...
[2026-06-19 03:03:47,487.487 INFO    ] 2026-06-19 03:03:47
[2026-06-19 03:03:47,734.734 INFO    ] 2026-06-19 03:03:47
[2026-06-19 03:03:47,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:03:47,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:03:47,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:03:48,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:03:48,151.151 INFO    ] time= 19/06/2026 03:03:48
[2026-06-19 03:03:48,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:03:48,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:03:48,241.241 INFO    ] No existing commands found in stream
[2026-06-19 03:03:53,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:03:53,257.257 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 03:03:56,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:03:56,213.213 INFO    ] Checking for system updates...
[2026-06-19 03:03:56,249.249 INFO    ] 200
[2026-06-19 03:03:56,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:56,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:03:56,307.307 INFO    ] No update needed
[2026-06-19 03:03:56,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 03:03:56,347.347 INFO    ] 200
[2026-06-19 03:03:56,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:03:56,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:03:56,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:03:56,442.442 INFO    ] No camera update needed
[2026-06-19 03:03:56,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:03:56,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:03:56,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:03:56,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:03:58,498.498 INFO    ] ================================================
[2026-06-19 03:03:58,513.513 INFO    ] Launching Daemon at Fri Jun 19 03:03:58 IST 2026
[2026-06-19 03:03:58,525.525 INFO    ] ================================================
[2026-06-19 03:03:59,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:03:59
[2026-06-19 03:03:59,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:03:59,974.974 INFO    ] Initializing speech engine...
[2026-06-19 03:03:59,983.983 INFO    ] 2026-06-19 03:03:59
[2026-06-19 03:04:00,283.283 INFO    ] 2026-06-19 03:04:00
[2026-06-19 03:04:00,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:04:00,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:04:00,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:04:00,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:04:00,700.700 INFO    ] time= 19/06/2026 03:04:00
[2026-06-19 03:04:00,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:04:00,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:04:00,842.842 INFO    ] No existing commands found in stream
[2026-06-19 03:04:05,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:04:05,871.871 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 03:04:09,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:04:09,859.859 INFO    ] Checking for system updates...
[2026-06-19 03:04:09,901.901 INFO    ] 200
[2026-06-19 03:04:09,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:09,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:04:09,967.967 INFO    ] No update needed
[2026-06-19 03:04:09,970.970 INFO    ] Checking for camera pi updates...
[2026-06-19 03:04:10,008.008 INFO    ] 200
[2026-06-19 03:04:10,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:10,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:04:10,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:04:10,102.102 INFO    ] No camera update needed
[2026-06-19 03:04:10,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:04:10,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:04:10,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:04:10,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:04:12,158.158 INFO    ] ================================================
[2026-06-19 03:04:12,174.174 INFO    ] Launching Daemon at Fri Jun 19 03:04:12 IST 2026
[2026-06-19 03:04:12,185.185 INFO    ] ================================================
[2026-06-19 03:04:12,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:04:12
[2026-06-19 03:04:13,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:04:13,645.645 INFO    ] Initializing speech engine...
[2026-06-19 03:04:13,651.651 INFO    ] 2026-06-19 03:04:13
[2026-06-19 03:04:13,959.959 INFO    ] 2026-06-19 03:04:13
[2026-06-19 03:04:13,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:04:14,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:04:14,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:04:14,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:04:14,328.328 INFO    ] time= 19/06/2026 03:04:14
[2026-06-19 03:04:14,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:04:14,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:04:14,410.410 INFO    ] No existing commands found in stream
[2026-06-19 03:04:19,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:04:19,424.424 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 03:04:21,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:04:21,583.583 INFO    ] Checking for system updates...
[2026-06-19 03:04:21,619.619 INFO    ] 200
[2026-06-19 03:04:21,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:21,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:04:21,687.687 INFO    ] No update needed
[2026-06-19 03:04:21,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 03:04:21,729.729 INFO    ] 200
[2026-06-19 03:04:21,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:21,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:04:21,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:04:21,804.804 INFO    ] No camera update needed
[2026-06-19 03:04:21,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:04:21,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:04:21,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:04:21,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:04:23,861.861 INFO    ] ================================================
[2026-06-19 03:04:23,877.877 INFO    ] Launching Daemon at Fri Jun 19 03:04:23 IST 2026
[2026-06-19 03:04:23,888.888 INFO    ] ================================================
[2026-06-19 03:04:24,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:04:24
[2026-06-19 03:04:25,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:04:25,432.432 INFO    ] Initializing speech engine...
[2026-06-19 03:04:25,438.438 INFO    ] 2026-06-19 03:04:25
[2026-06-19 03:04:25,739.739 INFO    ] 2026-06-19 03:04:25
[2026-06-19 03:04:25,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:04:25,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:04:25,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:04:26,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:04:26,125.125 INFO    ] time= 19/06/2026 03:04:26
[2026-06-19 03:04:26,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:04:26,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:04:26,281.281 INFO    ] No existing commands found in stream
[2026-06-19 03:04:31,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:04:31,309.309 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 03:04:34,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:04:34,287.287 INFO    ] Checking for system updates...
[2026-06-19 03:04:34,329.329 INFO    ] 200
[2026-06-19 03:04:34,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:34,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:04:34,396.396 INFO    ] No update needed
[2026-06-19 03:04:34,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 03:04:34,433.433 INFO    ] 200
[2026-06-19 03:04:34,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:34,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:04:34,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:04:34,522.522 INFO    ] No camera update needed
[2026-06-19 03:04:34,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:04:34,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:04:34,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:04:34,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:04:36,583.583 INFO    ] ================================================
[2026-06-19 03:04:36,599.599 INFO    ] Launching Daemon at Fri Jun 19 03:04:36 IST 2026
[2026-06-19 03:04:36,610.610 INFO    ] ================================================
[2026-06-19 03:04:37,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:04:37
[2026-06-19 03:04:37,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:04:38,055.055 INFO    ] Initializing speech engine...
[2026-06-19 03:04:38,064.064 INFO    ] 2026-06-19 03:04:38
[2026-06-19 03:04:38,315.315 INFO    ] 2026-06-19 03:04:38
[2026-06-19 03:04:38,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:04:38,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:04:38,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:04:38,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:04:38,692.692 INFO    ] time= 19/06/2026 03:04:38
[2026-06-19 03:04:38,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:04:38,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:04:38,772.772 INFO    ] No existing commands found in stream
[2026-06-19 03:04:43,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:04:43,789.789 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 03:04:46,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:04:46,232.232 INFO    ] Checking for system updates...
[2026-06-19 03:04:46,273.273 INFO    ] 200
[2026-06-19 03:04:46,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:46,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:04:46,344.344 INFO    ] No update needed
[2026-06-19 03:04:46,346.346 INFO    ] Checking for camera pi updates...
[2026-06-19 03:04:46,386.386 INFO    ] 200
[2026-06-19 03:04:46,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:46,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:04:46,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:04:46,460.460 INFO    ] No camera update needed
[2026-06-19 03:04:46,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:04:46,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:04:46,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:04:46,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:04:48,516.516 INFO    ] ================================================
[2026-06-19 03:04:48,531.531 INFO    ] Launching Daemon at Fri Jun 19 03:04:48 IST 2026
[2026-06-19 03:04:48,543.543 INFO    ] ================================================
[2026-06-19 03:04:49,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:04:49
[2026-06-19 03:04:49,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:04:50,030.030 INFO    ] Initializing speech engine...
[2026-06-19 03:04:50,039.039 INFO    ] 2026-06-19 03:04:50
[2026-06-19 03:04:50,303.303 INFO    ] 2026-06-19 03:04:50
[2026-06-19 03:04:50,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:04:50,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:04:50,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:04:50,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:04:50,688.688 INFO    ] time= 19/06/2026 03:04:50
[2026-06-19 03:04:50,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:04:50,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:04:50,858.858 INFO    ] No existing commands found in stream
[2026-06-19 03:04:55,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:04:55,881.881 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 03:04:57,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:04:57,434.434 INFO    ] Checking for system updates...
[2026-06-19 03:04:57,470.470 INFO    ] 200
[2026-06-19 03:04:57,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:57,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:04:57,531.531 INFO    ] No update needed
[2026-06-19 03:04:57,534.534 INFO    ] Checking for camera pi updates...
[2026-06-19 03:04:57,570.570 INFO    ] 200
[2026-06-19 03:04:57,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:04:57,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:04:57,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:04:57,648.648 INFO    ] No camera update needed
[2026-06-19 03:04:57,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:04:57,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:04:57,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:04:57,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:04:59,705.705 INFO    ] ================================================
[2026-06-19 03:04:59,720.720 INFO    ] Launching Daemon at Fri Jun 19 03:04:59 IST 2026
[2026-06-19 03:04:59,730.730 INFO    ] ================================================
[2026-06-19 03:05:00,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:05:00
[2026-06-19 03:05:00,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:05:01,620.620 INFO    ] Initializing speech engine...
[2026-06-19 03:05:01,624.624 INFO    ] 2026-06-19 03:05:01
[2026-06-19 03:05:02,010.010 INFO    ] 2026-06-19 03:05:02
[2026-06-19 03:05:02,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:05:02,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:05:02,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:05:02,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:05:02,524.524 INFO    ] time= 19/06/2026 03:05:02
[2026-06-19 03:05:02,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:05:02,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:05:02,668.668 INFO    ] No existing commands found in stream
[2026-06-19 03:05:07,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:05:07,705.705 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 03:05:08,684.684 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:05:08,687.687 INFO    ] Checking for system updates...
[2026-06-19 03:05:08,726.726 INFO    ] 200
[2026-06-19 03:05:08,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:08,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:05:08,790.790 INFO    ] No update needed
[2026-06-19 03:05:08,793.793 INFO    ] Checking for camera pi updates...
[2026-06-19 03:05:08,831.831 INFO    ] 200
[2026-06-19 03:05:08,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:08,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:05:08,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:05:08,921.921 INFO    ] No camera update needed
[2026-06-19 03:05:08,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:05:08,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:05:08,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:05:08,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:05:10,981.981 INFO    ] ================================================
[2026-06-19 03:05:11,996.996 INFO    ] Launching Daemon at Fri Jun 19 03:05:10 IST 2026
[2026-06-19 03:05:11,006.006 INFO    ] ================================================
[2026-06-19 03:05:11,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:05:11
[2026-06-19 03:05:12,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:05:12,433.433 INFO    ] Initializing speech engine...
[2026-06-19 03:05:12,440.440 INFO    ] 2026-06-19 03:05:12
[2026-06-19 03:05:12,684.684 INFO    ] 2026-06-19 03:05:12
[2026-06-19 03:05:12,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:05:12,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:05:12,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:05:13,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:05:13,145.145 INFO    ] time= 19/06/2026 03:05:13
[2026-06-19 03:05:13,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:05:13,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:05:13,321.321 INFO    ] No existing commands found in stream
[2026-06-19 03:05:18,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:05:18,336.336 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 03:05:22,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:05:22,377.377 INFO    ] Checking for system updates...
[2026-06-19 03:05:22,414.414 INFO    ] 200
[2026-06-19 03:05:22,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:22,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:05:22,479.479 INFO    ] No update needed
[2026-06-19 03:05:22,482.482 INFO    ] Checking for camera pi updates...
[2026-06-19 03:05:22,519.519 INFO    ] 200
[2026-06-19 03:05:22,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:22,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:05:22,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:05:22,620.620 INFO    ] No camera update needed
[2026-06-19 03:05:22,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:05:22,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:05:22,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:05:22,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:05:24,676.676 INFO    ] ================================================
[2026-06-19 03:05:24,692.692 INFO    ] Launching Daemon at Fri Jun 19 03:05:24 IST 2026
[2026-06-19 03:05:24,703.703 INFO    ] ================================================
[2026-06-19 03:05:25,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:05:25
[2026-06-19 03:05:25,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:05:26,104.104 INFO    ] Initializing speech engine...
[2026-06-19 03:05:26,119.119 INFO    ] 2026-06-19 03:05:26
[2026-06-19 03:05:26,381.381 INFO    ] 2026-06-19 03:05:26
[2026-06-19 03:05:26,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:05:26,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:05:26,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:05:26,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:05:26,835.835 INFO    ] time= 19/06/2026 03:05:26
[2026-06-19 03:05:26,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:05:26,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:05:27,000.000 INFO    ] No existing commands found in stream
[2026-06-19 03:05:32,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:05:32,016.016 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 03:05:33,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:05:33,630.630 INFO    ] Checking for system updates...
[2026-06-19 03:05:33,671.671 INFO    ] 200
[2026-06-19 03:05:33,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:33,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:05:33,739.739 INFO    ] No update needed
[2026-06-19 03:05:33,741.741 INFO    ] Checking for camera pi updates...
[2026-06-19 03:05:33,780.780 INFO    ] 200
[2026-06-19 03:05:33,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:33,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:05:33,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:05:33,875.875 INFO    ] No camera update needed
[2026-06-19 03:05:33,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:05:33,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:05:33,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:05:33,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:05:35,936.936 INFO    ] ================================================
[2026-06-19 03:05:35,951.951 INFO    ] Launching Daemon at Fri Jun 19 03:05:35 IST 2026
[2026-06-19 03:05:35,962.962 INFO    ] ================================================
[2026-06-19 03:05:36,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:05:36
[2026-06-19 03:05:37,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:05:37,363.363 INFO    ] Initializing speech engine...
[2026-06-19 03:05:37,376.376 INFO    ] 2026-06-19 03:05:37
[2026-06-19 03:05:37,636.636 INFO    ] 2026-06-19 03:05:37
[2026-06-19 03:05:37,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:05:37,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:05:37,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:05:38,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:05:38,101.101 INFO    ] time= 19/06/2026 03:05:38
[2026-06-19 03:05:38,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:05:38,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:05:38,250.250 INFO    ] No existing commands found in stream
[2026-06-19 03:05:43,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:05:43,265.265 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 03:05:44,612.612 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:05:44,614.614 INFO    ] Checking for system updates...
[2026-06-19 03:05:44,654.654 INFO    ] 200
[2026-06-19 03:05:44,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:44,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:05:44,719.719 INFO    ] No update needed
[2026-06-19 03:05:44,722.722 INFO    ] Checking for camera pi updates...
[2026-06-19 03:05:44,759.759 INFO    ] 200
[2026-06-19 03:05:44,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:44,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:05:44,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:05:44,848.848 INFO    ] No camera update needed
[2026-06-19 03:05:44,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:05:44,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:05:44,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:05:44,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:05:46,904.904 INFO    ] ================================================
[2026-06-19 03:05:46,920.920 INFO    ] Launching Daemon at Fri Jun 19 03:05:46 IST 2026
[2026-06-19 03:05:46,930.930 INFO    ] ================================================
[2026-06-19 03:05:47,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:05:47
[2026-06-19 03:05:48,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:05:48,372.372 INFO    ] Initializing speech engine...
[2026-06-19 03:05:48,381.381 INFO    ] 2026-06-19 03:05:48
[2026-06-19 03:05:48,640.640 INFO    ] 2026-06-19 03:05:48
[2026-06-19 03:05:48,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:05:48,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:05:48,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:05:49,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:05:49,084.084 INFO    ] time= 19/06/2026 03:05:49
[2026-06-19 03:05:49,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:05:49,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:05:49,250.250 INFO    ] No existing commands found in stream
[2026-06-19 03:05:54,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:05:54,265.265 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 03:05:57,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:05:57,813.813 INFO    ] Checking for system updates...
[2026-06-19 03:05:57,849.849 INFO    ] 200
[2026-06-19 03:05:57,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:57,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:05:57,906.906 INFO    ] No update needed
[2026-06-19 03:05:57,908.908 INFO    ] Checking for camera pi updates...
[2026-06-19 03:05:57,947.947 INFO    ] 200
[2026-06-19 03:05:57,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:05:57,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:05:58,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:05:58,043.043 INFO    ] No camera update needed
[2026-06-19 03:05:58,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:05:58,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:05:58,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:05:58,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:06:00,103.103 INFO    ] ================================================
[2026-06-19 03:06:00,119.119 INFO    ] Launching Daemon at Fri Jun 19 03:06:00 IST 2026
[2026-06-19 03:06:00,130.130 INFO    ] ================================================
[2026-06-19 03:06:00,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:06:00
[2026-06-19 03:06:01,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:06:01,925.925 INFO    ] Initializing speech engine...
[2026-06-19 03:06:01,940.940 INFO    ] 2026-06-19 03:06:01
[2026-06-19 03:06:02,241.241 INFO    ] 2026-06-19 03:06:02
[2026-06-19 03:06:02,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:06:02,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:06:02,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:06:02,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:06:02,693.693 INFO    ] time= 19/06/2026 03:06:02
[2026-06-19 03:06:02,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:06:02,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:06:02,827.827 INFO    ] No existing commands found in stream
[2026-06-19 03:06:07,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:06:07,843.843 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 03:06:09,920.920 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:06:09,923.923 INFO    ] Checking for system updates...
[2026-06-19 03:06:09,959.959 INFO    ] 200
[2026-06-19 03:06:09,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:06:10,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:06:10,017.017 INFO    ] No update needed
[2026-06-19 03:06:10,019.019 INFO    ] Checking for camera pi updates...
[2026-06-19 03:06:10,053.053 INFO    ] 200
[2026-06-19 03:06:10,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:06:10,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:06:10,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:06:10,144.144 INFO    ] No camera update needed
[2026-06-19 03:06:10,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:06:10,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:06:10,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:06:10,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:06:12,200.200 INFO    ] ================================================
[2026-06-19 03:06:12,215.215 INFO    ] Launching Daemon at Fri Jun 19 03:06:12 IST 2026
[2026-06-19 03:06:12,226.226 INFO    ] ================================================
[2026-06-19 03:06:12,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:06:12
[2026-06-19 03:06:13,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:06:13,675.675 INFO    ] Initializing speech engine...
[2026-06-19 03:06:13,685.685 INFO    ] 2026-06-19 03:06:13
[2026-06-19 03:06:13,935.935 INFO    ] 2026-06-19 03:06:13
[2026-06-19 03:06:13,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:06:14,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:06:14,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:06:14,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:06:14,312.312 INFO    ] time= 19/06/2026 03:06:14
[2026-06-19 03:06:14,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:06:14,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:06:14,390.390 INFO    ] No existing commands found in stream
[2026-06-19 03:06:19,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:06:19,405.405 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 03:06:22,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:06:22,753.753 INFO    ] Checking for system updates...
[2026-06-19 03:06:22,793.793 INFO    ] 200
[2026-06-19 03:06:22,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:06:22,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:06:22,858.858 INFO    ] No update needed
[2026-06-19 03:06:22,860.860 INFO    ] Checking for camera pi updates...
[2026-06-19 03:06:22,895.895 INFO    ] 200
[2026-06-19 03:06:22,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:06:22,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:06:22,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:06:22,987.987 INFO    ] No camera update needed
[2026-06-19 03:06:22,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:06:22,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:06:22,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:06:23,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:06:25,044.044 INFO    ] ================================================
[2026-06-19 03:06:25,059.059 INFO    ] Launching Daemon at Fri Jun 19 03:06:25 IST 2026
[2026-06-19 03:06:25,070.070 INFO    ] ================================================
[2026-06-19 03:06:25,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:06:25
[2026-06-19 03:06:26,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:06:26,531.531 INFO    ] Initializing speech engine...
[2026-06-19 03:06:26,544.544 INFO    ] 2026-06-19 03:06:26
[2026-06-19 03:06:26,842.842 INFO    ] 2026-06-19 03:06:26
[2026-06-19 03:06:26,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:06:27,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:06:27,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:06:27,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:06:27,343.343 INFO    ] time= 19/06/2026 03:06:27
[2026-06-19 03:06:27,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:06:27,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:06:27,477.477 INFO    ] No existing commands found in stream
[2026-06-19 03:06:32,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:06:32,508.508 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 03:06:37,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:06:37,665.665 INFO    ] Checking for system updates...
[2026-06-19 03:06:37,701.701 INFO    ] 200
[2026-06-19 03:06:37,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:06:37,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:06:37,767.767 INFO    ] No update needed
[2026-06-19 03:06:37,769.769 INFO    ] Checking for camera pi updates...
[2026-06-19 03:06:37,807.807 INFO    ] 200
[2026-06-19 03:06:37,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:06:37,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:06:37,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:06:38,002.002 INFO    ] No camera update needed
[2026-06-19 03:06:38,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:06:38,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:06:38,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:06:38,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:06:40,058.058 INFO    ] ================================================
[2026-06-19 03:06:40,073.073 INFO    ] Launching Daemon at Fri Jun 19 03:06:40 IST 2026
[2026-06-19 03:06:40,084.084 INFO    ] ================================================
[2026-06-19 03:06:40,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:06:40
[2026-06-19 03:06:41,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:06:41,665.665 INFO    ] Initializing speech engine...
[2026-06-19 03:06:41,674.674 INFO    ] 2026-06-19 03:06:41
[2026-06-19 03:06:41,949.949 INFO    ] 2026-06-19 03:06:41
[2026-06-19 03:06:41,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:06:42,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:06:42,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:06:42,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:06:42,401.401 INFO    ] time= 19/06/2026 03:06:42
[2026-06-19 03:06:42,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:06:42,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:06:42,545.545 INFO    ] No existing commands found in stream
[2026-06-19 03:06:47,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:06:47,560.560 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 03:06:50,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:06:50,563.563 INFO    ] Checking for system updates...
[2026-06-19 03:06:50,602.602 INFO    ] 200
[2026-06-19 03:06:50,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:06:50,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:06:50,670.670 INFO    ] No update needed
[2026-06-19 03:06:50,673.673 INFO    ] Checking for camera pi updates...
[2026-06-19 03:06:50,708.708 INFO    ] 200
[2026-06-19 03:06:50,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:06:50,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:06:50,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:06:50,798.798 INFO    ] No camera update needed
[2026-06-19 03:06:50,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:06:50,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:06:50,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:06:50,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:06:52,855.855 INFO    ] ================================================
[2026-06-19 03:06:52,870.870 INFO    ] Launching Daemon at Fri Jun 19 03:06:52 IST 2026
[2026-06-19 03:06:52,881.881 INFO    ] ================================================
[2026-06-19 03:06:53,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:06:53
[2026-06-19 03:06:54,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:06:54,287.287 INFO    ] Initializing speech engine...
[2026-06-19 03:06:54,309.309 INFO    ] 2026-06-19 03:06:54
[2026-06-19 03:06:54,561.561 INFO    ] 2026-06-19 03:06:54
[2026-06-19 03:06:54,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:06:54,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:06:54,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:06:54,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:06:55,036.036 INFO    ] time= 19/06/2026 03:06:54
[2026-06-19 03:06:55,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:06:55,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:06:55,180.180 INFO    ] No existing commands found in stream
[2026-06-19 03:07:00,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:07:00,194.194 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 03:07:02,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:07:02,651.651 INFO    ] Checking for system updates...
[2026-06-19 03:07:02,699.699 INFO    ] 200
[2026-06-19 03:07:02,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:02,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:07:02,770.770 INFO    ] No update needed
[2026-06-19 03:07:02,773.773 INFO    ] Checking for camera pi updates...
[2026-06-19 03:07:02,813.813 INFO    ] 200
[2026-06-19 03:07:02,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:02,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:07:02,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:07:02,903.903 INFO    ] No camera update needed
[2026-06-19 03:07:02,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:07:02,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:07:02,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:07:02,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:07:04,971.971 INFO    ] ================================================
[2026-06-19 03:07:04,986.986 INFO    ] Launching Daemon at Fri Jun 19 03:07:04 IST 2026
[2026-06-19 03:07:05,996.996 INFO    ] ================================================
[2026-06-19 03:07:05,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:07:05
[2026-06-19 03:07:06,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:07:06,629.629 INFO    ] Initializing speech engine...
[2026-06-19 03:07:06,643.643 INFO    ] 2026-06-19 03:07:06
[2026-06-19 03:07:06,921.921 INFO    ] 2026-06-19 03:07:06
[2026-06-19 03:07:06,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:07:07,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:07:07,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:07:07,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:07:07,454.454 INFO    ] time= 19/06/2026 03:07:07
[2026-06-19 03:07:07,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:07:07,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:07:07,591.591 INFO    ] No existing commands found in stream
[2026-06-19 03:07:12,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:07:12,622.622 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 03:07:16,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:07:16,854.854 INFO    ] Checking for system updates...
[2026-06-19 03:07:16,894.894 INFO    ] 200
[2026-06-19 03:07:16,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:16,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:07:16,958.958 INFO    ] No update needed
[2026-06-19 03:07:16,960.960 INFO    ] Checking for camera pi updates...
[2026-06-19 03:07:16,998.998 INFO    ] 200
[2026-06-19 03:07:17,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:17,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:07:17,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:07:17,092.092 INFO    ] No camera update needed
[2026-06-19 03:07:17,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:07:17,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:07:17,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:07:17,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:07:19,149.149 INFO    ] ================================================
[2026-06-19 03:07:19,164.164 INFO    ] Launching Daemon at Fri Jun 19 03:07:19 IST 2026
[2026-06-19 03:07:19,174.174 INFO    ] ================================================
[2026-06-19 03:07:19,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:07:19
[2026-06-19 03:07:20,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:07:20,778.778 INFO    ] Initializing speech engine...
[2026-06-19 03:07:20,786.786 INFO    ] 2026-06-19 03:07:20
[2026-06-19 03:07:21,072.072 INFO    ] 2026-06-19 03:07:21
[2026-06-19 03:07:21,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:07:21,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:07:21,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:07:21,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:07:21,537.537 INFO    ] time= 19/06/2026 03:07:21
[2026-06-19 03:07:21,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:07:21,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:07:21,765.765 INFO    ] No existing commands found in stream
[2026-06-19 03:07:26,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:07:26,789.789 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 03:07:29,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:07:29,638.638 INFO    ] Checking for system updates...
[2026-06-19 03:07:29,675.675 INFO    ] 200
[2026-06-19 03:07:29,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:29,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:07:29,732.732 INFO    ] No update needed
[2026-06-19 03:07:29,735.735 INFO    ] Checking for camera pi updates...
[2026-06-19 03:07:29,769.769 INFO    ] 200
[2026-06-19 03:07:29,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:29,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:07:29,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:07:29,854.854 INFO    ] No camera update needed
[2026-06-19 03:07:29,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:07:29,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:07:29,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:07:29,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:07:31,912.912 INFO    ] ================================================
[2026-06-19 03:07:31,927.927 INFO    ] Launching Daemon at Fri Jun 19 03:07:31 IST 2026
[2026-06-19 03:07:31,939.939 INFO    ] ================================================
[2026-06-19 03:07:32,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:07:32
[2026-06-19 03:07:33,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:07:33,483.483 INFO    ] Initializing speech engine...
[2026-06-19 03:07:33,494.494 INFO    ] 2026-06-19 03:07:33
[2026-06-19 03:07:33,741.741 INFO    ] 2026-06-19 03:07:33
[2026-06-19 03:07:33,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:07:34,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:07:34,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:07:34,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:07:34,229.229 INFO    ] time= 19/06/2026 03:07:34
[2026-06-19 03:07:34,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:07:34,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:07:34,361.361 INFO    ] No existing commands found in stream
[2026-06-19 03:07:39,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:07:39,377.377 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 03:07:40,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:07:40,562.562 INFO    ] Checking for system updates...
[2026-06-19 03:07:40,604.604 INFO    ] 200
[2026-06-19 03:07:40,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:40,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:07:40,668.668 INFO    ] No update needed
[2026-06-19 03:07:40,671.671 INFO    ] Checking for camera pi updates...
[2026-06-19 03:07:40,706.706 INFO    ] 200
[2026-06-19 03:07:40,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:40,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:07:40,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:07:40,792.792 INFO    ] No camera update needed
[2026-06-19 03:07:40,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:07:40,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:07:40,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:07:40,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:07:42,850.850 INFO    ] ================================================
[2026-06-19 03:07:42,864.864 INFO    ] Launching Daemon at Fri Jun 19 03:07:42 IST 2026
[2026-06-19 03:07:42,875.875 INFO    ] ================================================
[2026-06-19 03:07:43,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:07:43
[2026-06-19 03:07:44,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:07:44,459.459 INFO    ] Initializing speech engine...
[2026-06-19 03:07:44,472.472 INFO    ] 2026-06-19 03:07:44
[2026-06-19 03:07:44,787.787 INFO    ] 2026-06-19 03:07:44
[2026-06-19 03:07:44,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:07:45,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:07:45,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:07:45,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:07:45,307.307 INFO    ] time= 19/06/2026 03:07:45
[2026-06-19 03:07:45,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:07:45,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:07:45,449.449 INFO    ] No existing commands found in stream
[2026-06-19 03:07:50,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:07:50,479.479 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 03:07:51,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:07:51,610.610 INFO    ] Checking for system updates...
[2026-06-19 03:07:51,650.650 INFO    ] 200
[2026-06-19 03:07:51,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:51,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:07:51,709.709 INFO    ] No update needed
[2026-06-19 03:07:51,712.712 INFO    ] Checking for camera pi updates...
[2026-06-19 03:07:51,750.750 INFO    ] 200
[2026-06-19 03:07:51,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:07:51,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:07:51,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:07:51,840.840 INFO    ] No camera update needed
[2026-06-19 03:07:51,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:07:51,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:07:51,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:07:51,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:07:53,896.896 INFO    ] ================================================
[2026-06-19 03:07:53,911.911 INFO    ] Launching Daemon at Fri Jun 19 03:07:53 IST 2026
[2026-06-19 03:07:53,922.922 INFO    ] ================================================
[2026-06-19 03:07:54,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:07:54
[2026-06-19 03:07:55,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:07:55,329.329 INFO    ] Initializing speech engine...
[2026-06-19 03:07:55,338.338 INFO    ] 2026-06-19 03:07:55
[2026-06-19 03:07:55,630.630 INFO    ] 2026-06-19 03:07:55
[2026-06-19 03:07:55,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:07:55,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:07:55,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:07:55,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:07:56,007.007 INFO    ] time= 19/06/2026 03:07:56
[2026-06-19 03:07:56,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:07:56,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:07:56,162.162 INFO    ] No existing commands found in stream
[2026-06-19 03:08:01,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:08:01,192.192 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 03:08:02,703.703 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:08:02,706.706 INFO    ] Checking for system updates...
[2026-06-19 03:08:02,746.746 INFO    ] 200
[2026-06-19 03:08:02,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:02,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:08:02,814.814 INFO    ] No update needed
[2026-06-19 03:08:02,817.817 INFO    ] Checking for camera pi updates...
[2026-06-19 03:08:02,851.851 INFO    ] 200
[2026-06-19 03:08:02,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:02,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:08:02,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:08:02,934.934 INFO    ] No camera update needed
[2026-06-19 03:08:02,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:08:02,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:08:02,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:08:02,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:08:05,996.996 INFO    ] ================================================
[2026-06-19 03:08:05,010.010 INFO    ] Launching Daemon at Fri Jun 19 03:08:05 IST 2026
[2026-06-19 03:08:05,022.022 INFO    ] ================================================
[2026-06-19 03:08:05,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:08:05
[2026-06-19 03:08:06,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:08:06,508.508 INFO    ] Initializing speech engine...
[2026-06-19 03:08:06,515.515 INFO    ] 2026-06-19 03:08:06
[2026-06-19 03:08:06,781.781 INFO    ] 2026-06-19 03:08:06
[2026-06-19 03:08:06,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:08:07,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:08:07,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:08:07,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:08:07,243.243 INFO    ] time= 19/06/2026 03:08:07
[2026-06-19 03:08:07,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:08:07,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:08:07,391.391 INFO    ] No existing commands found in stream
[2026-06-19 03:08:12,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:08:12,406.406 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 03:08:16,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:08:16,490.490 INFO    ] Checking for system updates...
[2026-06-19 03:08:16,526.526 INFO    ] 200
[2026-06-19 03:08:16,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:16,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:08:16,596.596 INFO    ] No update needed
[2026-06-19 03:08:16,598.598 INFO    ] Checking for camera pi updates...
[2026-06-19 03:08:16,649.649 INFO    ] 200
[2026-06-19 03:08:16,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:16,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:08:16,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:08:16,742.742 INFO    ] No camera update needed
[2026-06-19 03:08:16,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:08:16,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:08:16,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:08:16,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:08:18,798.798 INFO    ] ================================================
[2026-06-19 03:08:18,813.813 INFO    ] Launching Daemon at Fri Jun 19 03:08:18 IST 2026
[2026-06-19 03:08:18,823.823 INFO    ] ================================================
[2026-06-19 03:08:19,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:08:19
[2026-06-19 03:08:19,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:08:20,252.252 INFO    ] Initializing speech engine...
[2026-06-19 03:08:20,261.261 INFO    ] 2026-06-19 03:08:20
[2026-06-19 03:08:20,507.507 INFO    ] 2026-06-19 03:08:20
[2026-06-19 03:08:20,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:08:20,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:08:20,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:08:20,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:08:20,978.978 INFO    ] time= 19/06/2026 03:08:20
[2026-06-19 03:08:21,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:08:21,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:08:21,130.130 INFO    ] No existing commands found in stream
[2026-06-19 03:08:26,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:08:26,162.162 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 03:08:29,334.334 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:08:29,337.337 INFO    ] Checking for system updates...
[2026-06-19 03:08:29,379.379 INFO    ] 200
[2026-06-19 03:08:29,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:29,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:08:29,451.451 INFO    ] No update needed
[2026-06-19 03:08:29,453.453 INFO    ] Checking for camera pi updates...
[2026-06-19 03:08:29,491.491 INFO    ] 200
[2026-06-19 03:08:29,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:29,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:08:29,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:08:29,583.583 INFO    ] No camera update needed
[2026-06-19 03:08:29,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:08:29,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:08:29,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:08:29,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:08:31,643.643 INFO    ] ================================================
[2026-06-19 03:08:31,659.659 INFO    ] Launching Daemon at Fri Jun 19 03:08:31 IST 2026
[2026-06-19 03:08:31,675.675 INFO    ] ================================================
[2026-06-19 03:08:32,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:08:32
[2026-06-19 03:08:32,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:08:33,242.242 INFO    ] Initializing speech engine...
[2026-06-19 03:08:33,256.256 INFO    ] 2026-06-19 03:08:33
[2026-06-19 03:08:33,520.520 INFO    ] 2026-06-19 03:08:33
[2026-06-19 03:08:33,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:08:33,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:08:33,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:08:33,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:08:34,000.000 INFO    ] time= 19/06/2026 03:08:33
[2026-06-19 03:08:34,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:08:34,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:08:34,141.141 INFO    ] No existing commands found in stream
[2026-06-19 03:08:39,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:08:39,156.156 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 03:08:42,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:08:42,315.315 INFO    ] Checking for system updates...
[2026-06-19 03:08:42,351.351 INFO    ] 200
[2026-06-19 03:08:42,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:42,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:08:42,414.414 INFO    ] No update needed
[2026-06-19 03:08:42,416.416 INFO    ] Checking for camera pi updates...
[2026-06-19 03:08:42,450.450 INFO    ] 200
[2026-06-19 03:08:42,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:42,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:08:42,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:08:42,658.658 INFO    ] No camera update needed
[2026-06-19 03:08:42,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:08:42,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:08:42,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:08:42,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:08:44,712.712 INFO    ] ================================================
[2026-06-19 03:08:44,728.728 INFO    ] Launching Daemon at Fri Jun 19 03:08:44 IST 2026
[2026-06-19 03:08:44,739.739 INFO    ] ================================================
[2026-06-19 03:08:45,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:08:45
[2026-06-19 03:08:45,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:08:46,223.223 INFO    ] Initializing speech engine...
[2026-06-19 03:08:46,232.232 INFO    ] 2026-06-19 03:08:46
[2026-06-19 03:08:46,492.492 INFO    ] 2026-06-19 03:08:46
[2026-06-19 03:08:46,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:08:46,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:08:46,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:08:46,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:08:46,988.988 INFO    ] time= 19/06/2026 03:08:46
[2026-06-19 03:08:47,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:08:47,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:08:47,165.165 INFO    ] No existing commands found in stream
[2026-06-19 03:08:52,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:08:52,196.196 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 03:08:56,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:08:56,280.280 INFO    ] Checking for system updates...
[2026-06-19 03:08:56,318.318 INFO    ] 200
[2026-06-19 03:08:56,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:56,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:08:56,377.377 INFO    ] No update needed
[2026-06-19 03:08:56,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 03:08:56,418.418 INFO    ] 200
[2026-06-19 03:08:56,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:08:56,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:08:56,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:08:56,524.524 INFO    ] No camera update needed
[2026-06-19 03:08:56,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:08:56,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:08:56,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:08:56,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:08:58,584.584 INFO    ] ================================================
[2026-06-19 03:08:58,599.599 INFO    ] Launching Daemon at Fri Jun 19 03:08:58 IST 2026
[2026-06-19 03:08:58,610.610 INFO    ] ================================================
[2026-06-19 03:08:59,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:08:59
[2026-06-19 03:08:59,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:09:00,069.069 INFO    ] Initializing speech engine...
[2026-06-19 03:09:00,075.075 INFO    ] 2026-06-19 03:09:00
[2026-06-19 03:09:00,337.337 INFO    ] 2026-06-19 03:09:00
[2026-06-19 03:09:00,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:09:00,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:09:00,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:09:00,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:09:00,798.798 INFO    ] time= 19/06/2026 03:09:00
[2026-06-19 03:09:00,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:09:00,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:09:00,943.943 INFO    ] No existing commands found in stream
[2026-06-19 03:09:05,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:09:05,958.958 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 03:09:06,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:09:06,427.427 INFO    ] Checking for system updates...
[2026-06-19 03:09:06,463.463 INFO    ] 200
[2026-06-19 03:09:06,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:06,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:09:06,523.523 INFO    ] No update needed
[2026-06-19 03:09:06,526.526 INFO    ] Checking for camera pi updates...
[2026-06-19 03:09:06,567.567 INFO    ] 200
[2026-06-19 03:09:06,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:06,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:09:06,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:09:06,656.656 INFO    ] No camera update needed
[2026-06-19 03:09:06,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:09:06,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:09:06,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:09:06,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:09:08,715.715 INFO    ] ================================================
[2026-06-19 03:09:08,731.731 INFO    ] Launching Daemon at Fri Jun 19 03:09:08 IST 2026
[2026-06-19 03:09:08,741.741 INFO    ] ================================================
[2026-06-19 03:09:09,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:09:09
[2026-06-19 03:09:09,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:09:10,151.151 INFO    ] Initializing speech engine...
[2026-06-19 03:09:10,174.174 INFO    ] 2026-06-19 03:09:10
[2026-06-19 03:09:10,433.433 INFO    ] 2026-06-19 03:09:10
[2026-06-19 03:09:10,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:09:10,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:09:10,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:09:10,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:09:10,913.913 INFO    ] time= 19/06/2026 03:09:10
[2026-06-19 03:09:10,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:09:11,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:09:11,067.067 INFO    ] No existing commands found in stream
[2026-06-19 03:09:16,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:09:16,082.082 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 03:09:17,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:09:17,544.544 INFO    ] Checking for system updates...
[2026-06-19 03:09:17,580.580 INFO    ] 200
[2026-06-19 03:09:17,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:17,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:09:17,638.638 INFO    ] No update needed
[2026-06-19 03:09:17,641.641 INFO    ] Checking for camera pi updates...
[2026-06-19 03:09:17,675.675 INFO    ] 200
[2026-06-19 03:09:17,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:17,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:09:17,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:09:17,759.759 INFO    ] No camera update needed
[2026-06-19 03:09:17,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:09:17,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:09:17,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:09:17,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:09:19,815.815 INFO    ] ================================================
[2026-06-19 03:09:19,830.830 INFO    ] Launching Daemon at Fri Jun 19 03:09:19 IST 2026
[2026-06-19 03:09:19,841.841 INFO    ] ================================================
[2026-06-19 03:09:20,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:09:20
[2026-06-19 03:09:21,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:09:21,497.497 INFO    ] Initializing speech engine...
[2026-06-19 03:09:21,505.505 INFO    ] 2026-06-19 03:09:21
[2026-06-19 03:09:21,801.801 INFO    ] 2026-06-19 03:09:21
[2026-06-19 03:09:21,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:09:22,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:09:22,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:09:22,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:09:22,247.247 INFO    ] time= 19/06/2026 03:09:22
[2026-06-19 03:09:22,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:09:22,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:09:22,415.415 INFO    ] No existing commands found in stream
[2026-06-19 03:09:27,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:09:27,431.431 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 03:09:29,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:09:29,865.865 INFO    ] Checking for system updates...
[2026-06-19 03:09:29,907.907 INFO    ] 200
[2026-06-19 03:09:29,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:29,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:09:29,977.977 INFO    ] No update needed
[2026-06-19 03:09:29,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 03:09:30,015.015 INFO    ] 200
[2026-06-19 03:09:30,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:30,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:09:30,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:09:30,114.114 INFO    ] No camera update needed
[2026-06-19 03:09:30,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:09:30,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:09:30,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:09:30,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:09:32,173.173 INFO    ] ================================================
[2026-06-19 03:09:32,189.189 INFO    ] Launching Daemon at Fri Jun 19 03:09:32 IST 2026
[2026-06-19 03:09:32,200.200 INFO    ] ================================================
[2026-06-19 03:09:32,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:09:32
[2026-06-19 03:09:33,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:09:33,751.751 INFO    ] Initializing speech engine...
[2026-06-19 03:09:33,767.767 INFO    ] 2026-06-19 03:09:33
[2026-06-19 03:09:34,045.045 INFO    ] 2026-06-19 03:09:34
[2026-06-19 03:09:34,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:09:34,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:09:34,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:09:34,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:09:34,462.462 INFO    ] time= 19/06/2026 03:09:34
[2026-06-19 03:09:34,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:09:34,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:09:34,550.550 INFO    ] No existing commands found in stream
[2026-06-19 03:09:39,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:09:39,589.589 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 03:09:43,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:09:43,823.823 INFO    ] Checking for system updates...
[2026-06-19 03:09:43,865.865 INFO    ] 200
[2026-06-19 03:09:43,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:43,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:09:43,922.922 INFO    ] No update needed
[2026-06-19 03:09:43,924.924 INFO    ] Checking for camera pi updates...
[2026-06-19 03:09:43,958.958 INFO    ] 200
[2026-06-19 03:09:43,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:44,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:09:44,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:09:44,048.048 INFO    ] No camera update needed
[2026-06-19 03:09:44,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:09:44,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:09:44,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:09:44,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:09:46,104.104 INFO    ] ================================================
[2026-06-19 03:09:46,120.120 INFO    ] Launching Daemon at Fri Jun 19 03:09:46 IST 2026
[2026-06-19 03:09:46,130.130 INFO    ] ================================================
[2026-06-19 03:09:46,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:09:46
[2026-06-19 03:09:47,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:09:47,588.588 INFO    ] Initializing speech engine...
[2026-06-19 03:09:47,596.596 INFO    ] 2026-06-19 03:09:47
[2026-06-19 03:09:47,868.868 INFO    ] 2026-06-19 03:09:47
[2026-06-19 03:09:47,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:09:48,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:09:48,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:09:48,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:09:48,316.316 INFO    ] time= 19/06/2026 03:09:48
[2026-06-19 03:09:48,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:09:48,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:09:48,461.461 INFO    ] No existing commands found in stream
[2026-06-19 03:09:53,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:09:53,477.477 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 03:09:54,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:09:54,258.258 INFO    ] Checking for system updates...
[2026-06-19 03:09:54,297.297 INFO    ] 200
[2026-06-19 03:09:54,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:54,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:09:54,361.361 INFO    ] No update needed
[2026-06-19 03:09:54,363.363 INFO    ] Checking for camera pi updates...
[2026-06-19 03:09:54,400.400 INFO    ] 200
[2026-06-19 03:09:54,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:09:54,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:09:54,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:09:54,488.488 INFO    ] No camera update needed
[2026-06-19 03:09:54,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:09:54,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:09:54,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:09:54,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:09:56,547.547 INFO    ] ================================================
[2026-06-19 03:09:56,562.562 INFO    ] Launching Daemon at Fri Jun 19 03:09:56 IST 2026
[2026-06-19 03:09:56,573.573 INFO    ] ================================================
[2026-06-19 03:09:57,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:09:57
[2026-06-19 03:09:57,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:09:58,022.022 INFO    ] Initializing speech engine...
[2026-06-19 03:09:58,031.031 INFO    ] 2026-06-19 03:09:58
[2026-06-19 03:09:58,327.327 INFO    ] 2026-06-19 03:09:58
[2026-06-19 03:09:58,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:09:58,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:09:58,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:09:58,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:09:58,746.746 INFO    ] time= 19/06/2026 03:09:58
[2026-06-19 03:09:58,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:09:58,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:09:58,907.907 INFO    ] No existing commands found in stream
[2026-06-19 03:10:03,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:10:03,931.931 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 03:10:08,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:10:08,507.507 INFO    ] Checking for system updates...
[2026-06-19 03:10:08,545.545 INFO    ] 200
[2026-06-19 03:10:08,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:08,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:10:08,602.602 INFO    ] No update needed
[2026-06-19 03:10:08,605.605 INFO    ] Checking for camera pi updates...
[2026-06-19 03:10:08,639.639 INFO    ] 200
[2026-06-19 03:10:08,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:08,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:10:08,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:10:08,728.728 INFO    ] No camera update needed
[2026-06-19 03:10:08,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:10:08,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:10:08,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:10:08,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:10:10,789.789 INFO    ] ================================================
[2026-06-19 03:10:10,804.804 INFO    ] Launching Daemon at Fri Jun 19 03:10:10 IST 2026
[2026-06-19 03:10:10,816.816 INFO    ] ================================================
[2026-06-19 03:10:11,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:10:11
[2026-06-19 03:10:11,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:10:12,260.260 INFO    ] Initializing speech engine...
[2026-06-19 03:10:12,281.281 INFO    ] 2026-06-19 03:10:12
[2026-06-19 03:10:12,563.563 INFO    ] 2026-06-19 03:10:12
[2026-06-19 03:10:12,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:10:12,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:10:12,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:10:12,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:10:12,947.947 INFO    ] time= 19/06/2026 03:10:12
[2026-06-19 03:10:12,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:10:12,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:10:13,074.074 INFO    ] No existing commands found in stream
[2026-06-19 03:10:18,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:10:18,090.090 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 03:10:20,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:10:20,328.328 INFO    ] Checking for system updates...
[2026-06-19 03:10:20,364.364 INFO    ] 200
[2026-06-19 03:10:20,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:20,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:10:20,423.423 INFO    ] No update needed
[2026-06-19 03:10:20,425.425 INFO    ] Checking for camera pi updates...
[2026-06-19 03:10:20,460.460 INFO    ] 200
[2026-06-19 03:10:20,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:20,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:10:20,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:10:20,556.556 INFO    ] No camera update needed
[2026-06-19 03:10:20,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:10:20,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:10:20,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:10:20,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:10:22,612.612 INFO    ] ================================================
[2026-06-19 03:10:22,628.628 INFO    ] Launching Daemon at Fri Jun 19 03:10:22 IST 2026
[2026-06-19 03:10:22,640.640 INFO    ] ================================================
[2026-06-19 03:10:23,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:10:23
[2026-06-19 03:10:23,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:10:24,053.053 INFO    ] Initializing speech engine...
[2026-06-19 03:10:24,061.061 INFO    ] 2026-06-19 03:10:24
[2026-06-19 03:10:24,360.360 INFO    ] 2026-06-19 03:10:24
[2026-06-19 03:10:24,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:10:24,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:10:24,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:10:24,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:10:24,757.757 INFO    ] time= 19/06/2026 03:10:24
[2026-06-19 03:10:24,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:10:24,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:10:24,878.878 INFO    ] No existing commands found in stream
[2026-06-19 03:10:29,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:10:29,893.893 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 03:10:32,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:10:32,761.761 INFO    ] Checking for system updates...
[2026-06-19 03:10:32,802.802 INFO    ] 200
[2026-06-19 03:10:32,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:32,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:10:32,878.878 INFO    ] No update needed
[2026-06-19 03:10:32,881.881 INFO    ] Checking for camera pi updates...
[2026-06-19 03:10:32,923.923 INFO    ] 200
[2026-06-19 03:10:32,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:32,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:10:33,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:10:33,018.018 INFO    ] No camera update needed
[2026-06-19 03:10:33,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:10:33,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:10:33,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:10:33,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:10:35,076.076 INFO    ] ================================================
[2026-06-19 03:10:35,092.092 INFO    ] Launching Daemon at Fri Jun 19 03:10:35 IST 2026
[2026-06-19 03:10:35,103.103 INFO    ] ================================================
[2026-06-19 03:10:35,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:10:35
[2026-06-19 03:10:36,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:10:36,570.570 INFO    ] Initializing speech engine...
[2026-06-19 03:10:36,578.578 INFO    ] 2026-06-19 03:10:36
[2026-06-19 03:10:36,837.837 INFO    ] 2026-06-19 03:10:36
[2026-06-19 03:10:36,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:10:37,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:10:37,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:10:37,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:10:37,305.305 INFO    ] time= 19/06/2026 03:10:37
[2026-06-19 03:10:37,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:10:37,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:10:37,453.453 INFO    ] No existing commands found in stream
[2026-06-19 03:10:42,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:10:42,481.481 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 03:10:46,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:10:46,740.740 INFO    ] Checking for system updates...
[2026-06-19 03:10:46,778.778 INFO    ] 200
[2026-06-19 03:10:46,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:46,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:10:46,838.838 INFO    ] No update needed
[2026-06-19 03:10:46,841.841 INFO    ] Checking for camera pi updates...
[2026-06-19 03:10:46,877.877 INFO    ] 200
[2026-06-19 03:10:46,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:46,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:10:47,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:10:47,060.060 INFO    ] No camera update needed
[2026-06-19 03:10:47,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:10:47,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:10:47,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:10:47,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:10:49,120.120 INFO    ] ================================================
[2026-06-19 03:10:49,137.137 INFO    ] Launching Daemon at Fri Jun 19 03:10:49 IST 2026
[2026-06-19 03:10:49,147.147 INFO    ] ================================================
[2026-06-19 03:10:49,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:10:49
[2026-06-19 03:10:50,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:10:50,807.807 INFO    ] Initializing speech engine...
[2026-06-19 03:10:50,816.816 INFO    ] 2026-06-19 03:10:50
[2026-06-19 03:10:51,104.104 INFO    ] 2026-06-19 03:10:51
[2026-06-19 03:10:51,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:10:51,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:10:51,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:10:51,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:10:51,641.641 INFO    ] time= 19/06/2026 03:10:51
[2026-06-19 03:10:51,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:10:51,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:10:51,801.801 INFO    ] No existing commands found in stream
[2026-06-19 03:10:56,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:10:56,823.823 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 03:10:57,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:10:57,632.632 INFO    ] Checking for system updates...
[2026-06-19 03:10:57,674.674 INFO    ] 200
[2026-06-19 03:10:57,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:57,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:10:57,734.734 INFO    ] No update needed
[2026-06-19 03:10:57,737.737 INFO    ] Checking for camera pi updates...
[2026-06-19 03:10:57,773.773 INFO    ] 200
[2026-06-19 03:10:57,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:10:57,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:10:57,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:10:57,861.861 INFO    ] No camera update needed
[2026-06-19 03:10:57,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:10:57,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:10:57,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:10:57,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:10:59,917.917 INFO    ] ================================================
[2026-06-19 03:10:59,932.932 INFO    ] Launching Daemon at Fri Jun 19 03:10:59 IST 2026
[2026-06-19 03:10:59,943.943 INFO    ] ================================================
[2026-06-19 03:11:00,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:11:00
[2026-06-19 03:11:01,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:11:01,737.737 INFO    ] Initializing speech engine...
[2026-06-19 03:11:01,750.750 INFO    ] 2026-06-19 03:11:01
[2026-06-19 03:11:02,111.111 INFO    ] 2026-06-19 03:11:02
[2026-06-19 03:11:02,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:11:02,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:11:02,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:11:02,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:11:02,434.434 INFO    ] time= 19/06/2026 03:11:02
[2026-06-19 03:11:02,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:11:02,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:11:02,637.637 INFO    ] No existing commands found in stream
[2026-06-19 03:11:07,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:11:07,653.653 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 03:11:10,463.463 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:11:10,466.466 INFO    ] Checking for system updates...
[2026-06-19 03:11:10,507.507 INFO    ] 200
[2026-06-19 03:11:10,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:10,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:11:10,572.572 INFO    ] No update needed
[2026-06-19 03:11:10,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 03:11:10,608.608 INFO    ] 200
[2026-06-19 03:11:10,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:10,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:11:10,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:11:10,695.695 INFO    ] No camera update needed
[2026-06-19 03:11:10,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:11:10,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:11:10,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:11:10,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:11:12,751.751 INFO    ] ================================================
[2026-06-19 03:11:12,767.767 INFO    ] Launching Daemon at Fri Jun 19 03:11:12 IST 2026
[2026-06-19 03:11:12,778.778 INFO    ] ================================================
[2026-06-19 03:11:13,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:11:13
[2026-06-19 03:11:14,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:11:14,434.434 INFO    ] Initializing speech engine...
[2026-06-19 03:11:14,447.447 INFO    ] 2026-06-19 03:11:14
[2026-06-19 03:11:14,721.721 INFO    ] 2026-06-19 03:11:14
[2026-06-19 03:11:14,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:11:15,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:11:15,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:11:15,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:11:15,204.204 INFO    ] time= 19/06/2026 03:11:15
[2026-06-19 03:11:15,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:11:15,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:11:15,353.353 INFO    ] No existing commands found in stream
[2026-06-19 03:11:20,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:11:20,369.369 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 03:11:23,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:11:23,783.783 INFO    ] Checking for system updates...
[2026-06-19 03:11:23,820.820 INFO    ] 200
[2026-06-19 03:11:23,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:23,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:11:23,880.880 INFO    ] No update needed
[2026-06-19 03:11:23,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 03:11:23,919.919 INFO    ] 200
[2026-06-19 03:11:23,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:23,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:11:24,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:11:24,017.017 INFO    ] No camera update needed
[2026-06-19 03:11:24,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:11:24,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:11:24,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:11:24,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:11:26,078.078 INFO    ] ================================================
[2026-06-19 03:11:26,096.096 INFO    ] Launching Daemon at Fri Jun 19 03:11:26 IST 2026
[2026-06-19 03:11:26,107.107 INFO    ] ================================================
[2026-06-19 03:11:26,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:11:26
[2026-06-19 03:11:27,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:11:27,577.577 INFO    ] Initializing speech engine...
[2026-06-19 03:11:27,583.583 INFO    ] 2026-06-19 03:11:27
[2026-06-19 03:11:27,884.884 INFO    ] 2026-06-19 03:11:27
[2026-06-19 03:11:27,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:11:28,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:11:28,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:11:28,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:11:28,274.274 INFO    ] time= 19/06/2026 03:11:28
[2026-06-19 03:11:28,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:11:28,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:11:28,402.402 INFO    ] No existing commands found in stream
[2026-06-19 03:11:33,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:11:33,417.417 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 03:11:33,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:11:33,980.980 INFO    ] Checking for system updates...
[2026-06-19 03:11:34,016.016 INFO    ] 200
[2026-06-19 03:11:34,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:34,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:11:34,073.073 INFO    ] No update needed
[2026-06-19 03:11:34,076.076 INFO    ] Checking for camera pi updates...
[2026-06-19 03:11:34,115.115 INFO    ] 200
[2026-06-19 03:11:34,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:34,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:11:34,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:11:34,201.201 INFO    ] No camera update needed
[2026-06-19 03:11:34,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:11:34,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:11:34,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:11:34,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:11:36,257.257 INFO    ] ================================================
[2026-06-19 03:11:36,272.272 INFO    ] Launching Daemon at Fri Jun 19 03:11:36 IST 2026
[2026-06-19 03:11:36,283.283 INFO    ] ================================================
[2026-06-19 03:11:36,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:11:36
[2026-06-19 03:11:37,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:11:37,939.939 INFO    ] Initializing speech engine...
[2026-06-19 03:11:37,949.949 INFO    ] 2026-06-19 03:11:37
[2026-06-19 03:11:38,234.234 INFO    ] 2026-06-19 03:11:38
[2026-06-19 03:11:38,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:11:38,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:11:38,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:11:38,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:11:38,703.703 INFO    ] time= 19/06/2026 03:11:38
[2026-06-19 03:11:38,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:11:38,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:11:38,855.855 INFO    ] No existing commands found in stream
[2026-06-19 03:11:43,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:11:43,871.871 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 03:11:45,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:11:45,210.210 INFO    ] Checking for system updates...
[2026-06-19 03:11:45,251.251 INFO    ] 200
[2026-06-19 03:11:45,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:45,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:11:45,313.313 INFO    ] No update needed
[2026-06-19 03:11:45,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 03:11:45,352.352 INFO    ] 200
[2026-06-19 03:11:45,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:45,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:11:45,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:11:45,446.446 INFO    ] No camera update needed
[2026-06-19 03:11:45,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:11:45,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:11:45,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:11:45,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:11:47,506.506 INFO    ] ================================================
[2026-06-19 03:11:47,522.522 INFO    ] Launching Daemon at Fri Jun 19 03:11:47 IST 2026
[2026-06-19 03:11:47,532.532 INFO    ] ================================================
[2026-06-19 03:11:48,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:11:48
[2026-06-19 03:11:48,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:11:48,988.988 INFO    ] Initializing speech engine...
[2026-06-19 03:11:48,997.997 INFO    ] 2026-06-19 03:11:48
[2026-06-19 03:11:49,245.245 INFO    ] 2026-06-19 03:11:49
[2026-06-19 03:11:49,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:11:49,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:11:49,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:11:49,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:11:49,689.689 INFO    ] time= 19/06/2026 03:11:49
[2026-06-19 03:11:49,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:11:49,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:11:49,869.869 INFO    ] No existing commands found in stream
[2026-06-19 03:11:54,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:11:54,880.880 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 03:11:58,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:11:58,050.050 INFO    ] Checking for system updates...
[2026-06-19 03:11:58,086.086 INFO    ] 200
[2026-06-19 03:11:58,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:58,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:11:58,145.145 INFO    ] No update needed
[2026-06-19 03:11:58,148.148 INFO    ] Checking for camera pi updates...
[2026-06-19 03:11:58,182.182 INFO    ] 200
[2026-06-19 03:11:58,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:11:58,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:11:58,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:11:58,268.268 INFO    ] No camera update needed
[2026-06-19 03:11:58,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:11:58,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:11:58,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:11:58,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:12:00,325.325 INFO    ] ================================================
[2026-06-19 03:12:00,340.340 INFO    ] Launching Daemon at Fri Jun 19 03:12:00 IST 2026
[2026-06-19 03:12:00,351.351 INFO    ] ================================================
[2026-06-19 03:12:00,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:12:00
[2026-06-19 03:12:01,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:12:02,072.072 INFO    ] Initializing speech engine...
[2026-06-19 03:12:02,086.086 INFO    ] 2026-06-19 03:12:02
[2026-06-19 03:12:02,392.392 INFO    ] 2026-06-19 03:12:02
[2026-06-19 03:12:02,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:12:02,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:12:02,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:12:02,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:12:02,823.823 INFO    ] time= 19/06/2026 03:12:02
[2026-06-19 03:12:02,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:12:02,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:12:02,945.945 INFO    ] No existing commands found in stream
[2026-06-19 03:12:07,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:12:07,960.960 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 03:12:08,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:12:08,657.657 INFO    ] Checking for system updates...
[2026-06-19 03:12:08,694.694 INFO    ] 200
[2026-06-19 03:12:08,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:08,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:12:08,753.753 INFO    ] No update needed
[2026-06-19 03:12:08,756.756 INFO    ] Checking for camera pi updates...
[2026-06-19 03:12:08,789.789 INFO    ] 200
[2026-06-19 03:12:08,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:08,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:12:08,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:12:08,879.879 INFO    ] No camera update needed
[2026-06-19 03:12:08,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:12:08,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:12:08,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:12:08,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:12:10,936.936 INFO    ] ================================================
[2026-06-19 03:12:10,952.952 INFO    ] Launching Daemon at Fri Jun 19 03:12:10 IST 2026
[2026-06-19 03:12:10,963.963 INFO    ] ================================================
[2026-06-19 03:12:11,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:12:11
[2026-06-19 03:12:12,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:12:12,368.368 INFO    ] Initializing speech engine...
[2026-06-19 03:12:12,376.376 INFO    ] 2026-06-19 03:12:12
[2026-06-19 03:12:12,673.673 INFO    ] 2026-06-19 03:12:12
[2026-06-19 03:12:12,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:12:12,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:12:12,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:12:13,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:12:13,066.066 INFO    ] time= 19/06/2026 03:12:13
[2026-06-19 03:12:13,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:12:13,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:12:13,173.173 INFO    ] No existing commands found in stream
[2026-06-19 03:12:18,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:12:18,189.189 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 03:12:22,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:12:22,024.024 INFO    ] Checking for system updates...
[2026-06-19 03:12:22,060.060 INFO    ] 200
[2026-06-19 03:12:22,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:22,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:12:22,119.119 INFO    ] No update needed
[2026-06-19 03:12:22,121.121 INFO    ] Checking for camera pi updates...
[2026-06-19 03:12:22,154.154 INFO    ] 200
[2026-06-19 03:12:22,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:22,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:12:22,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:12:22,244.244 INFO    ] No camera update needed
[2026-06-19 03:12:22,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:12:22,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:12:22,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:12:22,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:12:24,300.300 INFO    ] ================================================
[2026-06-19 03:12:24,316.316 INFO    ] Launching Daemon at Fri Jun 19 03:12:24 IST 2026
[2026-06-19 03:12:24,327.327 INFO    ] ================================================
[2026-06-19 03:12:24,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:12:24
[2026-06-19 03:12:25,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:12:25,786.786 INFO    ] Initializing speech engine...
[2026-06-19 03:12:25,799.799 INFO    ] 2026-06-19 03:12:25
[2026-06-19 03:12:26,086.086 INFO    ] 2026-06-19 03:12:26
[2026-06-19 03:12:26,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:12:26,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:12:26,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:12:26,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:12:26,437.437 INFO    ] time= 19/06/2026 03:12:26
[2026-06-19 03:12:26,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:12:26,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:12:26,517.517 INFO    ] No existing commands found in stream
[2026-06-19 03:12:31,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:12:31,530.530 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 03:12:33,272.272 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:12:33,275.275 INFO    ] Checking for system updates...
[2026-06-19 03:12:33,312.312 INFO    ] 200
[2026-06-19 03:12:33,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:33,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:12:33,378.378 INFO    ] No update needed
[2026-06-19 03:12:33,381.381 INFO    ] Checking for camera pi updates...
[2026-06-19 03:12:33,416.416 INFO    ] 200
[2026-06-19 03:12:33,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:33,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:12:33,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:12:33,509.509 INFO    ] No camera update needed
[2026-06-19 03:12:33,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:12:33,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:12:33,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:12:33,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:12:35,568.568 INFO    ] ================================================
[2026-06-19 03:12:35,584.584 INFO    ] Launching Daemon at Fri Jun 19 03:12:35 IST 2026
[2026-06-19 03:12:35,595.595 INFO    ] ================================================
[2026-06-19 03:12:36,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:12:36
[2026-06-19 03:12:36,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:12:37,138.138 INFO    ] Initializing speech engine...
[2026-06-19 03:12:37,144.144 INFO    ] 2026-06-19 03:12:37
[2026-06-19 03:12:37,450.450 INFO    ] 2026-06-19 03:12:37
[2026-06-19 03:12:37,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:12:37,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:12:37,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:12:37,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:12:37,834.834 INFO    ] time= 19/06/2026 03:12:37
[2026-06-19 03:12:37,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:12:37,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:12:37,962.962 INFO    ] No existing commands found in stream
[2026-06-19 03:12:42,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:12:42,977.977 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 03:12:43,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:12:43,586.586 INFO    ] Checking for system updates...
[2026-06-19 03:12:43,627.627 INFO    ] 200
[2026-06-19 03:12:43,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:43,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:12:43,691.691 INFO    ] No update needed
[2026-06-19 03:12:43,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 03:12:43,733.733 INFO    ] 200
[2026-06-19 03:12:43,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:43,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:12:43,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:12:43,831.831 INFO    ] No camera update needed
[2026-06-19 03:12:43,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:12:43,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:12:43,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:12:43,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:12:45,889.889 INFO    ] ================================================
[2026-06-19 03:12:45,905.905 INFO    ] Launching Daemon at Fri Jun 19 03:12:45 IST 2026
[2026-06-19 03:12:45,916.916 INFO    ] ================================================
[2026-06-19 03:12:46,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:12:46
[2026-06-19 03:12:47,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:12:47,563.563 INFO    ] Initializing speech engine...
[2026-06-19 03:12:47,576.576 INFO    ] 2026-06-19 03:12:47
[2026-06-19 03:12:47,865.865 INFO    ] 2026-06-19 03:12:47
[2026-06-19 03:12:47,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:12:48,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:12:48,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:12:48,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:12:48,244.244 INFO    ] time= 19/06/2026 03:12:48
[2026-06-19 03:12:48,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:12:48,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:12:48,423.423 INFO    ] No existing commands found in stream
[2026-06-19 03:12:53,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:12:53,458.458 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 03:12:53,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:12:53,840.840 INFO    ] Checking for system updates...
[2026-06-19 03:12:53,878.878 INFO    ] 200
[2026-06-19 03:12:53,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:53,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:12:53,939.939 INFO    ] No update needed
[2026-06-19 03:12:53,941.941 INFO    ] Checking for camera pi updates...
[2026-06-19 03:12:53,976.976 INFO    ] 200
[2026-06-19 03:12:53,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:12:54,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:12:54,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:12:54,167.167 INFO    ] No camera update needed
[2026-06-19 03:12:54,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:12:54,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:12:54,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:12:54,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:12:56,223.223 INFO    ] ================================================
[2026-06-19 03:12:56,238.238 INFO    ] Launching Daemon at Fri Jun 19 03:12:56 IST 2026
[2026-06-19 03:12:56,249.249 INFO    ] ================================================
[2026-06-19 03:12:56,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:12:56
[2026-06-19 03:12:57,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:12:57,702.702 INFO    ] Initializing speech engine...
[2026-06-19 03:12:57,712.712 INFO    ] 2026-06-19 03:12:57
[2026-06-19 03:12:57,976.976 INFO    ] 2026-06-19 03:12:57
[2026-06-19 03:12:58,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:12:58,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:12:58,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:12:58,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:12:58,444.444 INFO    ] time= 19/06/2026 03:12:58
[2026-06-19 03:12:58,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:12:58,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:12:58,584.584 INFO    ] No existing commands found in stream
[2026-06-19 03:13:03,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:13:03,598.598 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 03:13:04,835.835 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:13:04,838.838 INFO    ] Checking for system updates...
[2026-06-19 03:13:04,874.874 INFO    ] 200
[2026-06-19 03:13:04,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:04,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:13:04,936.936 INFO    ] No update needed
[2026-06-19 03:13:04,938.938 INFO    ] Checking for camera pi updates...
[2026-06-19 03:13:04,972.972 INFO    ] 200
[2026-06-19 03:13:04,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:05,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:13:05,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:13:05,061.061 INFO    ] No camera update needed
[2026-06-19 03:13:05,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:13:05,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:13:05,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:13:05,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:13:07,119.119 INFO    ] ================================================
[2026-06-19 03:13:07,135.135 INFO    ] Launching Daemon at Fri Jun 19 03:13:07 IST 2026
[2026-06-19 03:13:07,147.147 INFO    ] ================================================
[2026-06-19 03:13:07,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:13:07
[2026-06-19 03:13:08,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:13:08,588.588 INFO    ] Initializing speech engine...
[2026-06-19 03:13:08,596.596 INFO    ] 2026-06-19 03:13:08
[2026-06-19 03:13:08,848.848 INFO    ] 2026-06-19 03:13:08
[2026-06-19 03:13:08,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:13:09,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:13:09,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:13:09,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:13:09,321.321 INFO    ] time= 19/06/2026 03:13:09
[2026-06-19 03:13:09,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:13:09,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:13:09,482.482 INFO    ] No existing commands found in stream
[2026-06-19 03:13:14,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:13:14,497.497 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 03:13:17,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:13:17,150.150 INFO    ] Checking for system updates...
[2026-06-19 03:13:17,186.186 INFO    ] 200
[2026-06-19 03:13:17,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:17,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:13:17,243.243 INFO    ] No update needed
[2026-06-19 03:13:17,246.246 INFO    ] Checking for camera pi updates...
[2026-06-19 03:13:17,279.279 INFO    ] 200
[2026-06-19 03:13:17,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:17,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:13:17,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:13:17,368.368 INFO    ] No camera update needed
[2026-06-19 03:13:17,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:13:17,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:13:17,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:13:17,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:13:19,426.426 INFO    ] ================================================
[2026-06-19 03:13:19,441.441 INFO    ] Launching Daemon at Fri Jun 19 03:13:19 IST 2026
[2026-06-19 03:13:19,453.453 INFO    ] ================================================
[2026-06-19 03:13:20,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:13:20
[2026-06-19 03:13:20,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:13:20,886.886 INFO    ] Initializing speech engine...
[2026-06-19 03:13:20,891.891 INFO    ] 2026-06-19 03:13:20
[2026-06-19 03:13:21,137.137 INFO    ] 2026-06-19 03:13:21
[2026-06-19 03:13:21,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:13:21,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:13:21,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:13:21,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:13:21,623.623 INFO    ] time= 19/06/2026 03:13:21
[2026-06-19 03:13:21,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:13:21,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:13:21,786.786 INFO    ] No existing commands found in stream
[2026-06-19 03:13:26,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:13:26,828.828 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 03:13:27,956.956 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:13:27,959.959 INFO    ] Checking for system updates...
[2026-06-19 03:13:28,010.010 INFO    ] 200
[2026-06-19 03:13:28,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:28,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:13:28,083.083 INFO    ] No update needed
[2026-06-19 03:13:28,086.086 INFO    ] Checking for camera pi updates...
[2026-06-19 03:13:28,121.121 INFO    ] 200
[2026-06-19 03:13:28,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:28,166.166 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:13:28,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:13:28,214.214 INFO    ] No camera update needed
[2026-06-19 03:13:28,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:13:28,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:13:28,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:13:28,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:13:30,274.274 INFO    ] ================================================
[2026-06-19 03:13:30,289.289 INFO    ] Launching Daemon at Fri Jun 19 03:13:30 IST 2026
[2026-06-19 03:13:30,300.300 INFO    ] ================================================
[2026-06-19 03:13:30,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:13:30
[2026-06-19 03:13:31,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:13:31,918.918 INFO    ] Initializing speech engine...
[2026-06-19 03:13:31,927.927 INFO    ] 2026-06-19 03:13:31
[2026-06-19 03:13:32,210.210 INFO    ] 2026-06-19 03:13:32
[2026-06-19 03:13:32,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:13:32,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:13:32,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:13:32,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:13:32,755.755 INFO    ] time= 19/06/2026 03:13:32
[2026-06-19 03:13:32,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:13:32,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:13:32,940.940 INFO    ] No existing commands found in stream
[2026-06-19 03:13:37,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:13:37,974.974 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 03:13:40,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:13:40,669.669 INFO    ] Checking for system updates...
[2026-06-19 03:13:40,706.706 INFO    ] 200
[2026-06-19 03:13:40,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:40,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:13:40,765.765 INFO    ] No update needed
[2026-06-19 03:13:40,768.768 INFO    ] Checking for camera pi updates...
[2026-06-19 03:13:40,804.804 INFO    ] 200
[2026-06-19 03:13:40,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:40,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:13:40,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:13:40,890.890 INFO    ] No camera update needed
[2026-06-19 03:13:40,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:13:40,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:13:40,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:13:40,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:13:42,945.945 INFO    ] ================================================
[2026-06-19 03:13:42,961.961 INFO    ] Launching Daemon at Fri Jun 19 03:13:42 IST 2026
[2026-06-19 03:13:42,972.972 INFO    ] ================================================
[2026-06-19 03:13:43,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:13:43
[2026-06-19 03:13:44,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:13:44,615.615 INFO    ] Initializing speech engine...
[2026-06-19 03:13:44,621.621 INFO    ] 2026-06-19 03:13:44
[2026-06-19 03:13:44,902.902 INFO    ] 2026-06-19 03:13:44
[2026-06-19 03:13:44,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:13:45,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:13:45,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:13:45,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:13:45,342.342 INFO    ] time= 19/06/2026 03:13:45
[2026-06-19 03:13:45,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:13:45,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:13:45,519.519 INFO    ] No existing commands found in stream
[2026-06-19 03:13:50,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:13:50,534.534 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 03:13:51,182.182 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:13:51,184.184 INFO    ] Checking for system updates...
[2026-06-19 03:13:51,224.224 INFO    ] 200
[2026-06-19 03:13:51,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:51,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:13:51,284.284 INFO    ] No update needed
[2026-06-19 03:13:51,287.287 INFO    ] Checking for camera pi updates...
[2026-06-19 03:13:51,324.324 INFO    ] 200
[2026-06-19 03:13:51,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:13:51,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:13:51,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:13:51,424.424 INFO    ] No camera update needed
[2026-06-19 03:13:51,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:13:51,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:13:51,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:13:51,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:13:53,482.482 INFO    ] ================================================
[2026-06-19 03:13:53,498.498 INFO    ] Launching Daemon at Fri Jun 19 03:13:53 IST 2026
[2026-06-19 03:13:53,509.509 INFO    ] ================================================
[2026-06-19 03:13:54,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:13:54
[2026-06-19 03:13:54,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:13:55,076.076 INFO    ] Initializing speech engine...
[2026-06-19 03:13:55,087.087 INFO    ] 2026-06-19 03:13:55
[2026-06-19 03:13:55,380.380 INFO    ] 2026-06-19 03:13:55
[2026-06-19 03:13:55,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:13:55,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:13:55,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:13:55,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:13:55,917.917 INFO    ] time= 19/06/2026 03:13:55
[2026-06-19 03:13:55,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:13:55,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:13:56,088.088 INFO    ] No existing commands found in stream
[2026-06-19 03:14:01,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:14:01,112.112 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 03:14:03,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:14:03,691.691 INFO    ] Checking for system updates...
[2026-06-19 03:14:03,727.727 INFO    ] 200
[2026-06-19 03:14:03,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:03,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:14:03,784.784 INFO    ] No update needed
[2026-06-19 03:14:03,787.787 INFO    ] Checking for camera pi updates...
[2026-06-19 03:14:03,820.820 INFO    ] 200
[2026-06-19 03:14:03,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:03,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:14:03,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:14:03,909.909 INFO    ] No camera update needed
[2026-06-19 03:14:03,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:14:03,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:14:03,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:14:03,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:14:05,964.964 INFO    ] ================================================
[2026-06-19 03:14:05,980.980 INFO    ] Launching Daemon at Fri Jun 19 03:14:05 IST 2026
[2026-06-19 03:14:05,992.992 INFO    ] ================================================
[2026-06-19 03:14:06,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:14:06
[2026-06-19 03:14:07,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:14:07,478.478 INFO    ] Initializing speech engine...
[2026-06-19 03:14:07,492.492 INFO    ] 2026-06-19 03:14:07
[2026-06-19 03:14:07,779.779 INFO    ] 2026-06-19 03:14:07
[2026-06-19 03:14:07,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:14:08,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:14:08,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:14:08,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:14:08,174.174 INFO    ] time= 19/06/2026 03:14:08
[2026-06-19 03:14:08,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:14:08,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:14:08,293.293 INFO    ] No existing commands found in stream
[2026-06-19 03:14:13,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:14:13,308.308 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 03:14:16,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:14:16,262.262 INFO    ] Checking for system updates...
[2026-06-19 03:14:16,298.298 INFO    ] 200
[2026-06-19 03:14:16,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:16,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:14:16,355.355 INFO    ] No update needed
[2026-06-19 03:14:16,358.358 INFO    ] Checking for camera pi updates...
[2026-06-19 03:14:16,391.391 INFO    ] 200
[2026-06-19 03:14:16,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:16,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:14:16,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:14:16,479.479 INFO    ] No camera update needed
[2026-06-19 03:14:16,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:14:16,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:14:16,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:14:16,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:14:18,536.536 INFO    ] ================================================
[2026-06-19 03:14:18,551.551 INFO    ] Launching Daemon at Fri Jun 19 03:14:18 IST 2026
[2026-06-19 03:14:18,563.563 INFO    ] ================================================
[2026-06-19 03:14:19,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:14:19
[2026-06-19 03:14:19,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:14:20,237.237 INFO    ] Initializing speech engine...
[2026-06-19 03:14:20,250.250 INFO    ] 2026-06-19 03:14:20
[2026-06-19 03:14:20,538.538 INFO    ] 2026-06-19 03:14:20
[2026-06-19 03:14:20,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:14:20,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:14:20,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:14:20,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:14:21,019.019 INFO    ] time= 19/06/2026 03:14:20
[2026-06-19 03:14:21,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:14:21,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:14:21,210.210 INFO    ] No existing commands found in stream
[2026-06-19 03:14:26,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:14:26,240.240 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 03:14:30,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:14:30,589.589 INFO    ] Checking for system updates...
[2026-06-19 03:14:30,626.626 INFO    ] 200
[2026-06-19 03:14:30,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:30,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:14:30,693.693 INFO    ] No update needed
[2026-06-19 03:14:30,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 03:14:30,730.730 INFO    ] 200
[2026-06-19 03:14:30,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:30,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:14:30,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:14:30,824.824 INFO    ] No camera update needed
[2026-06-19 03:14:30,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:14:30,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:14:30,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:14:30,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:14:32,881.881 INFO    ] ================================================
[2026-06-19 03:14:32,896.896 INFO    ] Launching Daemon at Fri Jun 19 03:14:32 IST 2026
[2026-06-19 03:14:32,907.907 INFO    ] ================================================
[2026-06-19 03:14:33,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:14:33
[2026-06-19 03:14:34,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:14:34,399.399 INFO    ] Initializing speech engine...
[2026-06-19 03:14:34,409.409 INFO    ] 2026-06-19 03:14:34
[2026-06-19 03:14:34,654.654 INFO    ] 2026-06-19 03:14:34
[2026-06-19 03:14:34,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:14:34,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:14:34,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:14:35,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:14:35,103.103 INFO    ] time= 19/06/2026 03:14:35
[2026-06-19 03:14:35,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:14:35,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:14:35,276.276 INFO    ] No existing commands found in stream
[2026-06-19 03:14:40,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:14:40,290.290 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 03:14:44,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:14:44,261.261 INFO    ] Checking for system updates...
[2026-06-19 03:14:44,297.297 INFO    ] 200
[2026-06-19 03:14:44,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:44,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:14:44,356.356 INFO    ] No update needed
[2026-06-19 03:14:44,358.358 INFO    ] Checking for camera pi updates...
[2026-06-19 03:14:44,396.396 INFO    ] 200
[2026-06-19 03:14:44,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:44,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:14:44,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:14:44,488.488 INFO    ] No camera update needed
[2026-06-19 03:14:44,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:14:44,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:14:44,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:14:44,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:14:46,543.543 INFO    ] ================================================
[2026-06-19 03:14:46,559.559 INFO    ] Launching Daemon at Fri Jun 19 03:14:46 IST 2026
[2026-06-19 03:14:46,578.578 INFO    ] ================================================
[2026-06-19 03:14:47,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:14:47
[2026-06-19 03:14:47,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:14:47,981.981 INFO    ] Initializing speech engine...
[2026-06-19 03:14:47,986.986 INFO    ] 2026-06-19 03:14:47
[2026-06-19 03:14:48,293.293 INFO    ] 2026-06-19 03:14:48
[2026-06-19 03:14:48,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:14:48,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:14:48,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:14:48,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:14:48,683.683 INFO    ] time= 19/06/2026 03:14:48
[2026-06-19 03:14:48,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:14:48,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:14:48,854.854 INFO    ] No existing commands found in stream
[2026-06-19 03:14:53,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:14:53,887.887 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 03:14:57,361.361 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:14:57,364.364 INFO    ] Checking for system updates...
[2026-06-19 03:14:57,400.400 INFO    ] 200
[2026-06-19 03:14:57,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:57,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:14:57,458.458 INFO    ] No update needed
[2026-06-19 03:14:57,460.460 INFO    ] Checking for camera pi updates...
[2026-06-19 03:14:57,498.498 INFO    ] 200
[2026-06-19 03:14:57,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:14:57,541.541 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:14:57,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:14:57,684.684 INFO    ] No camera update needed
[2026-06-19 03:14:57,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:14:57,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:14:57,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:14:57,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:14:59,739.739 INFO    ] ================================================
[2026-06-19 03:14:59,755.755 INFO    ] Launching Daemon at Fri Jun 19 03:14:59 IST 2026
[2026-06-19 03:14:59,766.766 INFO    ] ================================================
[2026-06-19 03:15:00,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:15:00
[2026-06-19 03:15:00,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:15:01,172.172 INFO    ] Initializing speech engine...
[2026-06-19 03:15:01,187.187 INFO    ] 2026-06-19 03:15:01
[2026-06-19 03:15:01,454.454 INFO    ] 2026-06-19 03:15:01
[2026-06-19 03:15:01,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:15:01,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:15:01,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:15:01,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:15:01,831.831 INFO    ] time= 19/06/2026 03:15:01
[2026-06-19 03:15:01,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:15:01,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:15:01,971.971 INFO    ] No existing commands found in stream
[2026-06-19 03:15:06,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:15:06,984.984 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 03:15:09,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:15:09,211.211 INFO    ] Checking for system updates...
[2026-06-19 03:15:09,250.250 INFO    ] 200
[2026-06-19 03:15:09,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:09,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:15:09,312.312 INFO    ] No update needed
[2026-06-19 03:15:09,314.314 INFO    ] Checking for camera pi updates...
[2026-06-19 03:15:09,349.349 INFO    ] 200
[2026-06-19 03:15:09,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:09,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:15:09,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:15:09,443.443 INFO    ] No camera update needed
[2026-06-19 03:15:09,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:15:09,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:15:09,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:15:09,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:15:11,500.500 INFO    ] ================================================
[2026-06-19 03:15:11,516.516 INFO    ] Launching Daemon at Fri Jun 19 03:15:11 IST 2026
[2026-06-19 03:15:11,528.528 INFO    ] ================================================
[2026-06-19 03:15:12,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:15:12
[2026-06-19 03:15:12,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:15:12,999.999 INFO    ] Initializing speech engine...
[2026-06-19 03:15:13,009.009 INFO    ] 2026-06-19 03:15:13
[2026-06-19 03:15:13,279.279 INFO    ] 2026-06-19 03:15:13
[2026-06-19 03:15:13,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:15:13,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:15:13,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:15:13,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:15:13,746.746 INFO    ] time= 19/06/2026 03:15:13
[2026-06-19 03:15:13,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:15:13,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:15:13,903.903 INFO    ] No existing commands found in stream
[2026-06-19 03:15:18,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:15:18,918.918 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 03:15:19,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:15:19,477.477 INFO    ] Checking for system updates...
[2026-06-19 03:15:19,517.517 INFO    ] 200
[2026-06-19 03:15:19,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:19,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:15:19,575.575 INFO    ] No update needed
[2026-06-19 03:15:19,577.577 INFO    ] Checking for camera pi updates...
[2026-06-19 03:15:19,614.614 INFO    ] 200
[2026-06-19 03:15:19,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:19,657.657 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:15:19,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:15:19,701.701 INFO    ] No camera update needed
[2026-06-19 03:15:19,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:15:19,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:15:19,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:15:19,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:15:21,757.757 INFO    ] ================================================
[2026-06-19 03:15:21,772.772 INFO    ] Launching Daemon at Fri Jun 19 03:15:21 IST 2026
[2026-06-19 03:15:21,784.784 INFO    ] ================================================
[2026-06-19 03:15:22,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:15:22
[2026-06-19 03:15:22,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:15:23,230.230 INFO    ] Initializing speech engine...
[2026-06-19 03:15:23,237.237 INFO    ] 2026-06-19 03:15:23
[2026-06-19 03:15:23,531.531 INFO    ] 2026-06-19 03:15:23
[2026-06-19 03:15:23,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:15:23,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:15:23,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:15:23,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:15:23,991.991 INFO    ] time= 19/06/2026 03:15:23
[2026-06-19 03:15:24,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:15:24,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:15:24,170.170 INFO    ] No existing commands found in stream
[2026-06-19 03:15:29,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:15:29,185.185 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 03:15:30,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:15:30,014.014 INFO    ] Checking for system updates...
[2026-06-19 03:15:30,050.050 INFO    ] 200
[2026-06-19 03:15:30,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:30,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:15:30,114.114 INFO    ] No update needed
[2026-06-19 03:15:30,117.117 INFO    ] Checking for camera pi updates...
[2026-06-19 03:15:30,150.150 INFO    ] 200
[2026-06-19 03:15:30,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:30,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:15:30,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:15:30,244.244 INFO    ] No camera update needed
[2026-06-19 03:15:30,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:15:30,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:15:30,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:15:30,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:15:32,301.301 INFO    ] ================================================
[2026-06-19 03:15:32,317.317 INFO    ] Launching Daemon at Fri Jun 19 03:15:32 IST 2026
[2026-06-19 03:15:32,328.328 INFO    ] ================================================
[2026-06-19 03:15:33,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:15:33
[2026-06-19 03:15:33,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:15:33,991.991 INFO    ] Initializing speech engine...
[2026-06-19 03:15:34,006.006 INFO    ] 2026-06-19 03:15:33
[2026-06-19 03:15:34,289.289 INFO    ] 2026-06-19 03:15:34
[2026-06-19 03:15:34,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:15:34,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:15:34,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:15:34,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:15:34,700.700 INFO    ] time= 19/06/2026 03:15:34
[2026-06-19 03:15:34,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:15:34,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:15:34,872.872 INFO    ] No existing commands found in stream
[2026-06-19 03:15:39,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:15:39,912.912 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 03:15:41,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:15:41,806.806 INFO    ] Checking for system updates...
[2026-06-19 03:15:41,848.848 INFO    ] 200
[2026-06-19 03:15:41,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:41,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:15:41,909.909 INFO    ] No update needed
[2026-06-19 03:15:41,911.911 INFO    ] Checking for camera pi updates...
[2026-06-19 03:15:41,946.946 INFO    ] 200
[2026-06-19 03:15:41,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:41,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:15:42,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:15:42,044.044 INFO    ] No camera update needed
[2026-06-19 03:15:42,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:15:42,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:15:42,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:15:42,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:15:44,100.100 INFO    ] ================================================
[2026-06-19 03:15:44,116.116 INFO    ] Launching Daemon at Fri Jun 19 03:15:44 IST 2026
[2026-06-19 03:15:44,127.127 INFO    ] ================================================
[2026-06-19 03:15:44,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:15:44
[2026-06-19 03:15:45,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:15:45,771.771 INFO    ] Initializing speech engine...
[2026-06-19 03:15:45,782.782 INFO    ] 2026-06-19 03:15:45
[2026-06-19 03:15:46,069.069 INFO    ] 2026-06-19 03:15:46
[2026-06-19 03:15:46,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:15:46,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:15:46,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:15:46,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:15:46,519.519 INFO    ] time= 19/06/2026 03:15:46
[2026-06-19 03:15:46,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:15:46,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:15:46,673.673 INFO    ] No existing commands found in stream
[2026-06-19 03:15:51,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:15:51,690.690 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 03:15:54,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:15:54,374.374 INFO    ] Checking for system updates...
[2026-06-19 03:15:54,410.410 INFO    ] 200
[2026-06-19 03:15:54,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:54,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:15:54,475.475 INFO    ] No update needed
[2026-06-19 03:15:54,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 03:15:54,511.511 INFO    ] 200
[2026-06-19 03:15:54,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:15:54,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:15:54,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:15:54,600.600 INFO    ] No camera update needed
[2026-06-19 03:15:54,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:15:54,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:15:54,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:15:54,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:15:56,655.655 INFO    ] ================================================
[2026-06-19 03:15:56,671.671 INFO    ] Launching Daemon at Fri Jun 19 03:15:56 IST 2026
[2026-06-19 03:15:56,684.684 INFO    ] ================================================
[2026-06-19 03:15:57,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:15:57
[2026-06-19 03:15:57,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:15:58,153.153 INFO    ] Initializing speech engine...
[2026-06-19 03:15:58,161.161 INFO    ] 2026-06-19 03:15:58
[2026-06-19 03:15:58,421.421 INFO    ] 2026-06-19 03:15:58
[2026-06-19 03:15:58,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:15:58,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:15:58,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:15:58,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:15:58,815.815 INFO    ] time= 19/06/2026 03:15:58
[2026-06-19 03:15:58,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:15:58,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:15:58,983.983 INFO    ] No existing commands found in stream
[2026-06-19 03:16:03,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:16:03,996.996 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 03:16:06,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:16:06,255.255 INFO    ] Checking for system updates...
[2026-06-19 03:16:06,292.292 INFO    ] 200
[2026-06-19 03:16:06,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:06,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:16:06,368.368 INFO    ] No update needed
[2026-06-19 03:16:06,371.371 INFO    ] Checking for camera pi updates...
[2026-06-19 03:16:06,420.420 INFO    ] 200
[2026-06-19 03:16:06,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:06,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:16:06,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:16:06,514.514 INFO    ] No camera update needed
[2026-06-19 03:16:06,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:16:06,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:16:06,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:16:06,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:16:08,572.572 INFO    ] ================================================
[2026-06-19 03:16:08,588.588 INFO    ] Launching Daemon at Fri Jun 19 03:16:08 IST 2026
[2026-06-19 03:16:08,600.600 INFO    ] ================================================
[2026-06-19 03:16:09,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:16:09
[2026-06-19 03:16:09,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:16:10,068.068 INFO    ] Initializing speech engine...
[2026-06-19 03:16:10,075.075 INFO    ] 2026-06-19 03:16:10
[2026-06-19 03:16:10,335.335 INFO    ] 2026-06-19 03:16:10
[2026-06-19 03:16:10,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:16:10,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:16:10,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:16:10,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:16:10,774.774 INFO    ] time= 19/06/2026 03:16:10
[2026-06-19 03:16:10,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:16:10,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:16:10,938.938 INFO    ] No existing commands found in stream
[2026-06-19 03:16:15,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:16:15,952.952 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 03:16:17,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:16:17,329.329 INFO    ] Checking for system updates...
[2026-06-19 03:16:17,370.370 INFO    ] 200
[2026-06-19 03:16:17,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:17,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:16:17,434.434 INFO    ] No update needed
[2026-06-19 03:16:17,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 03:16:17,471.471 INFO    ] 200
[2026-06-19 03:16:17,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:17,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:16:17,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:16:17,560.560 INFO    ] No camera update needed
[2026-06-19 03:16:17,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:16:17,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:16:17,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:16:17,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:16:19,616.616 INFO    ] ================================================
[2026-06-19 03:16:19,633.633 INFO    ] Launching Daemon at Fri Jun 19 03:16:19 IST 2026
[2026-06-19 03:16:19,645.645 INFO    ] ================================================
[2026-06-19 03:16:20,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:16:20
[2026-06-19 03:16:20,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:16:21,083.083 INFO    ] Initializing speech engine...
[2026-06-19 03:16:21,089.089 INFO    ] 2026-06-19 03:16:21
[2026-06-19 03:16:21,391.391 INFO    ] 2026-06-19 03:16:21
[2026-06-19 03:16:21,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:16:21,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:16:21,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:16:21,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:16:21,778.778 INFO    ] time= 19/06/2026 03:16:21
[2026-06-19 03:16:21,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:16:21,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:16:21,909.909 INFO    ] No existing commands found in stream
[2026-06-19 03:16:26,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:16:26,924.924 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 03:16:30,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:16:30,940.940 INFO    ] Checking for system updates...
[2026-06-19 03:16:30,980.980 INFO    ] 200
[2026-06-19 03:16:30,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:31,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:16:31,038.038 INFO    ] No update needed
[2026-06-19 03:16:31,040.040 INFO    ] Checking for camera pi updates...
[2026-06-19 03:16:31,074.074 INFO    ] 200
[2026-06-19 03:16:31,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:31,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:16:31,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:16:31,167.167 INFO    ] No camera update needed
[2026-06-19 03:16:31,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:16:31,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:16:31,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:16:31,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:16:33,225.225 INFO    ] ================================================
[2026-06-19 03:16:33,241.241 INFO    ] Launching Daemon at Fri Jun 19 03:16:33 IST 2026
[2026-06-19 03:16:33,252.252 INFO    ] ================================================
[2026-06-19 03:16:33,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:16:33
[2026-06-19 03:16:34,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:16:34,731.731 INFO    ] Initializing speech engine...
[2026-06-19 03:16:34,740.740 INFO    ] 2026-06-19 03:16:34
[2026-06-19 03:16:35,021.021 INFO    ] 2026-06-19 03:16:35
[2026-06-19 03:16:35,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:16:35,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:16:35,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:16:35,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:16:35,389.389 INFO    ] time= 19/06/2026 03:16:35
[2026-06-19 03:16:35,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:16:35,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:16:35,463.463 INFO    ] No existing commands found in stream
[2026-06-19 03:16:40,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:16:40,479.479 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 03:16:44,185.185 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:16:44,188.188 INFO    ] Checking for system updates...
[2026-06-19 03:16:44,225.225 INFO    ] 200
[2026-06-19 03:16:44,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:44,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:16:44,284.284 INFO    ] No update needed
[2026-06-19 03:16:44,286.286 INFO    ] Checking for camera pi updates...
[2026-06-19 03:16:44,324.324 INFO    ] 200
[2026-06-19 03:16:44,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:44,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:16:44,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:16:44,419.419 INFO    ] No camera update needed
[2026-06-19 03:16:44,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:16:44,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:16:44,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:16:44,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:16:46,477.477 INFO    ] ================================================
[2026-06-19 03:16:46,494.494 INFO    ] Launching Daemon at Fri Jun 19 03:16:46 IST 2026
[2026-06-19 03:16:46,505.505 INFO    ] ================================================
[2026-06-19 03:16:47,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:16:47
[2026-06-19 03:16:47,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:16:48,101.101 INFO    ] Initializing speech engine...
[2026-06-19 03:16:48,110.110 INFO    ] 2026-06-19 03:16:48
[2026-06-19 03:16:48,389.389 INFO    ] 2026-06-19 03:16:48
[2026-06-19 03:16:48,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:16:48,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:16:48,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:16:48,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:16:48,856.856 INFO    ] time= 19/06/2026 03:16:48
[2026-06-19 03:16:48,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:16:48,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:16:49,009.009 INFO    ] No existing commands found in stream
[2026-06-19 03:16:54,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:16:54,025.025 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 03:16:56,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:16:56,519.519 INFO    ] Checking for system updates...
[2026-06-19 03:16:56,561.561 INFO    ] 200
[2026-06-19 03:16:56,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:56,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:16:56,620.620 INFO    ] No update needed
[2026-06-19 03:16:56,623.623 INFO    ] Checking for camera pi updates...
[2026-06-19 03:16:56,658.658 INFO    ] 200
[2026-06-19 03:16:56,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:16:56,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:16:56,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:16:56,750.750 INFO    ] No camera update needed
[2026-06-19 03:16:56,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:16:56,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:16:56,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:16:56,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:16:58,810.810 INFO    ] ================================================
[2026-06-19 03:16:58,826.826 INFO    ] Launching Daemon at Fri Jun 19 03:16:58 IST 2026
[2026-06-19 03:16:58,837.837 INFO    ] ================================================
[2026-06-19 03:16:59,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:16:59
[2026-06-19 03:17:00,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:17:00,341.341 INFO    ] Initializing speech engine...
[2026-06-19 03:17:00,363.363 INFO    ] 2026-06-19 03:17:00
[2026-06-19 03:17:00,620.620 INFO    ] 2026-06-19 03:17:00
[2026-06-19 03:17:00,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:17:00,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:17:00,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:17:01,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:17:01,110.110 INFO    ] time= 19/06/2026 03:17:01
[2026-06-19 03:17:01,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:17:01,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:17:01,318.318 INFO    ] No existing commands found in stream
[2026-06-19 03:17:06,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:17:06,354.354 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 03:17:07,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:17:07,904.904 INFO    ] Checking for system updates...
[2026-06-19 03:17:07,942.942 INFO    ] 200
[2026-06-19 03:17:07,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:07,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:17:08,002.002 INFO    ] No update needed
[2026-06-19 03:17:08,004.004 INFO    ] Checking for camera pi updates...
[2026-06-19 03:17:08,040.040 INFO    ] 200
[2026-06-19 03:17:08,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:08,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:17:08,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:17:08,132.132 INFO    ] No camera update needed
[2026-06-19 03:17:08,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:17:08,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:17:08,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:17:08,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:17:10,191.191 INFO    ] ================================================
[2026-06-19 03:17:10,207.207 INFO    ] Launching Daemon at Fri Jun 19 03:17:10 IST 2026
[2026-06-19 03:17:10,219.219 INFO    ] ================================================
[2026-06-19 03:17:10,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:17:10
[2026-06-19 03:17:11,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:17:11,706.706 INFO    ] Initializing speech engine...
[2026-06-19 03:17:11,715.715 INFO    ] 2026-06-19 03:17:11
[2026-06-19 03:17:11,965.965 INFO    ] 2026-06-19 03:17:11
[2026-06-19 03:17:11,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:17:12,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:17:12,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:17:12,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:17:12,343.343 INFO    ] time= 19/06/2026 03:17:12
[2026-06-19 03:17:12,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:17:12,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:17:12,519.519 INFO    ] No existing commands found in stream
[2026-06-19 03:17:17,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:17:17,552.552 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 03:17:20,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:17:20,777.777 INFO    ] Checking for system updates...
[2026-06-19 03:17:20,814.814 INFO    ] 200
[2026-06-19 03:17:20,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:20,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:17:20,879.879 INFO    ] No update needed
[2026-06-19 03:17:20,881.881 INFO    ] Checking for camera pi updates...
[2026-06-19 03:17:20,919.919 INFO    ] 200
[2026-06-19 03:17:20,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:20,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:17:21,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:17:21,003.003 INFO    ] No camera update needed
[2026-06-19 03:17:21,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:17:21,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:17:21,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:17:21,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:17:23,058.058 INFO    ] ================================================
[2026-06-19 03:17:23,073.073 INFO    ] Launching Daemon at Fri Jun 19 03:17:23 IST 2026
[2026-06-19 03:17:23,084.084 INFO    ] ================================================
[2026-06-19 03:17:23,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:17:23
[2026-06-19 03:17:24,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:17:24,515.515 INFO    ] Initializing speech engine...
[2026-06-19 03:17:24,524.524 INFO    ] 2026-06-19 03:17:24
[2026-06-19 03:17:24,774.774 INFO    ] 2026-06-19 03:17:24
[2026-06-19 03:17:24,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:17:25,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:17:25,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:17:25,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:17:25,245.245 INFO    ] time= 19/06/2026 03:17:25
[2026-06-19 03:17:25,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:17:25,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:17:25,397.397 INFO    ] No existing commands found in stream
[2026-06-19 03:17:30,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:17:30,411.411 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 03:17:31,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:17:31,917.917 INFO    ] Checking for system updates...
[2026-06-19 03:17:31,957.957 INFO    ] 200
[2026-06-19 03:17:31,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:32,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:17:32,028.028 INFO    ] No update needed
[2026-06-19 03:17:32,031.031 INFO    ] Checking for camera pi updates...
[2026-06-19 03:17:32,067.067 INFO    ] 200
[2026-06-19 03:17:32,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:32,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:17:32,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:17:32,155.155 INFO    ] No camera update needed
[2026-06-19 03:17:32,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:17:32,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:17:32,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:17:32,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:17:34,216.216 INFO    ] ================================================
[2026-06-19 03:17:34,232.232 INFO    ] Launching Daemon at Fri Jun 19 03:17:34 IST 2026
[2026-06-19 03:17:34,243.243 INFO    ] ================================================
[2026-06-19 03:17:34,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:17:34
[2026-06-19 03:17:35,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:17:35,737.737 INFO    ] Initializing speech engine...
[2026-06-19 03:17:35,747.747 INFO    ] 2026-06-19 03:17:35
[2026-06-19 03:17:36,011.011 INFO    ] 2026-06-19 03:17:36
[2026-06-19 03:17:36,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:17:36,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:17:36,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:17:36,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:17:36,475.475 INFO    ] time= 19/06/2026 03:17:36
[2026-06-19 03:17:36,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:17:36,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:17:36,622.622 INFO    ] No existing commands found in stream
[2026-06-19 03:17:41,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:17:41,637.637 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 03:17:42,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:17:42,350.350 INFO    ] Checking for system updates...
[2026-06-19 03:17:42,394.394 INFO    ] 200
[2026-06-19 03:17:42,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:42,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:17:42,483.483 INFO    ] No update needed
[2026-06-19 03:17:42,487.487 INFO    ] Checking for camera pi updates...
[2026-06-19 03:17:42,531.531 INFO    ] 200
[2026-06-19 03:17:42,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:42,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:17:42,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:17:42,671.671 INFO    ] No camera update needed
[2026-06-19 03:17:42,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:17:42,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:17:42,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:17:42,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:17:44,728.728 INFO    ] ================================================
[2026-06-19 03:17:44,743.743 INFO    ] Launching Daemon at Fri Jun 19 03:17:44 IST 2026
[2026-06-19 03:17:44,755.755 INFO    ] ================================================
[2026-06-19 03:17:45,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:17:45
[2026-06-19 03:17:46,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:17:46,372.372 INFO    ] Initializing speech engine...
[2026-06-19 03:17:46,379.379 INFO    ] 2026-06-19 03:17:46
[2026-06-19 03:17:46,666.666 INFO    ] 2026-06-19 03:17:46
[2026-06-19 03:17:46,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:17:46,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:17:46,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:17:47,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:17:47,121.121 INFO    ] time= 19/06/2026 03:17:47
[2026-06-19 03:17:47,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:17:47,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:17:47,268.268 INFO    ] No existing commands found in stream
[2026-06-19 03:17:52,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:17:52,283.283 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 03:17:53,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:17:53,668.668 INFO    ] Checking for system updates...
[2026-06-19 03:17:53,708.708 INFO    ] 200
[2026-06-19 03:17:53,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:53,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:17:53,773.773 INFO    ] No update needed
[2026-06-19 03:17:53,776.776 INFO    ] Checking for camera pi updates...
[2026-06-19 03:17:53,818.818 INFO    ] 200
[2026-06-19 03:17:53,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:17:53,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:17:53,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:17:53,918.918 INFO    ] No camera update needed
[2026-06-19 03:17:53,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:17:53,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:17:53,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:17:53,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:17:55,978.978 INFO    ] ================================================
[2026-06-19 03:17:55,993.993 INFO    ] Launching Daemon at Fri Jun 19 03:17:55 IST 2026
[2026-06-19 03:17:56,004.004 INFO    ] ================================================
[2026-06-19 03:17:56,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:17:56
[2026-06-19 03:17:57,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:17:57,425.425 INFO    ] Initializing speech engine...
[2026-06-19 03:17:57,436.436 INFO    ] 2026-06-19 03:17:57
[2026-06-19 03:17:57,683.683 INFO    ] 2026-06-19 03:17:57
[2026-06-19 03:17:57,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:17:57,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:17:57,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:17:58,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:17:58,174.174 INFO    ] time= 19/06/2026 03:17:58
[2026-06-19 03:17:58,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:17:58,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:17:58,296.296 INFO    ] No existing commands found in stream
[2026-06-19 03:18:03,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:18:03,311.311 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 03:18:05,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:18:05,510.510 INFO    ] Checking for system updates...
[2026-06-19 03:18:05,547.547 INFO    ] 200
[2026-06-19 03:18:05,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:05,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:18:05,605.605 INFO    ] No update needed
[2026-06-19 03:18:05,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 03:18:05,646.646 INFO    ] 200
[2026-06-19 03:18:05,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:05,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:18:05,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:18:05,732.732 INFO    ] No camera update needed
[2026-06-19 03:18:05,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:18:05,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:18:05,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:18:05,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:18:07,795.795 INFO    ] ================================================
[2026-06-19 03:18:07,811.811 INFO    ] Launching Daemon at Fri Jun 19 03:18:07 IST 2026
[2026-06-19 03:18:07,822.822 INFO    ] ================================================
[2026-06-19 03:18:08,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:18:08
[2026-06-19 03:18:08,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:18:09,246.246 INFO    ] Initializing speech engine...
[2026-06-19 03:18:09,255.255 INFO    ] 2026-06-19 03:18:09
[2026-06-19 03:18:09,501.501 INFO    ] 2026-06-19 03:18:09
[2026-06-19 03:18:09,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:18:09,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:18:09,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:18:09,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:18:09,831.831 INFO    ] time= 19/06/2026 03:18:09
[2026-06-19 03:18:09,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:18:09,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:18:09,948.948 INFO    ] No existing commands found in stream
[2026-06-19 03:18:14,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:18:14,962.962 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 03:18:17,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:18:17,721.721 INFO    ] Checking for system updates...
[2026-06-19 03:18:17,757.757 INFO    ] 200
[2026-06-19 03:18:17,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:17,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:18:17,814.814 INFO    ] No update needed
[2026-06-19 03:18:17,817.817 INFO    ] Checking for camera pi updates...
[2026-06-19 03:18:17,851.851 INFO    ] 200
[2026-06-19 03:18:17,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:17,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:18:17,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:18:17,938.938 INFO    ] No camera update needed
[2026-06-19 03:18:17,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:18:17,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:18:17,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:18:17,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:18:20,994.994 INFO    ] ================================================
[2026-06-19 03:18:20,010.010 INFO    ] Launching Daemon at Fri Jun 19 03:18:20 IST 2026
[2026-06-19 03:18:20,021.021 INFO    ] ================================================
[2026-06-19 03:18:20,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:18:20
[2026-06-19 03:18:21,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:18:21,715.715 INFO    ] Initializing speech engine...
[2026-06-19 03:18:21,730.730 INFO    ] 2026-06-19 03:18:21
[2026-06-19 03:18:22,021.021 INFO    ] 2026-06-19 03:18:22
[2026-06-19 03:18:22,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:18:22,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:18:22,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:18:22,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:18:22,555.555 INFO    ] time= 19/06/2026 03:18:22
[2026-06-19 03:18:22,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:18:22,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:18:22,736.736 INFO    ] No existing commands found in stream
[2026-06-19 03:18:27,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:18:27,763.763 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 03:18:28,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:18:28,213.213 INFO    ] Checking for system updates...
[2026-06-19 03:18:28,252.252 INFO    ] 200
[2026-06-19 03:18:28,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:28,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:18:28,322.322 INFO    ] No update needed
[2026-06-19 03:18:28,325.325 INFO    ] Checking for camera pi updates...
[2026-06-19 03:18:28,360.360 INFO    ] 200
[2026-06-19 03:18:28,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:28,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:18:28,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:18:28,449.449 INFO    ] No camera update needed
[2026-06-19 03:18:28,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:18:28,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:18:28,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:18:28,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:18:30,510.510 INFO    ] ================================================
[2026-06-19 03:18:30,526.526 INFO    ] Launching Daemon at Fri Jun 19 03:18:30 IST 2026
[2026-06-19 03:18:30,537.537 INFO    ] ================================================
[2026-06-19 03:18:31,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:18:31
[2026-06-19 03:18:31,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:18:32,040.040 INFO    ] Initializing speech engine...
[2026-06-19 03:18:32,055.055 INFO    ] 2026-06-19 03:18:32
[2026-06-19 03:18:32,317.317 INFO    ] 2026-06-19 03:18:32
[2026-06-19 03:18:32,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:18:32,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:18:32,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:18:32,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:18:32,695.695 INFO    ] time= 19/06/2026 03:18:32
[2026-06-19 03:18:32,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:18:32,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:18:32,849.849 INFO    ] No existing commands found in stream
[2026-06-19 03:18:37,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:18:37,882.882 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 03:18:41,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:18:41,198.198 INFO    ] Checking for system updates...
[2026-06-19 03:18:41,234.234 INFO    ] 200
[2026-06-19 03:18:41,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:41,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:18:41,292.292 INFO    ] No update needed
[2026-06-19 03:18:41,295.295 INFO    ] Checking for camera pi updates...
[2026-06-19 03:18:41,333.333 INFO    ] 200
[2026-06-19 03:18:41,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:41,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:18:41,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:18:41,428.428 INFO    ] No camera update needed
[2026-06-19 03:18:41,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:18:41,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:18:41,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:18:41,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:18:43,487.487 INFO    ] ================================================
[2026-06-19 03:18:43,502.502 INFO    ] Launching Daemon at Fri Jun 19 03:18:43 IST 2026
[2026-06-19 03:18:43,512.512 INFO    ] ================================================
[2026-06-19 03:18:44,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:18:44
[2026-06-19 03:18:44,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:18:45,153.153 INFO    ] Initializing speech engine...
[2026-06-19 03:18:45,164.164 INFO    ] 2026-06-19 03:18:45
[2026-06-19 03:18:45,448.448 INFO    ] 2026-06-19 03:18:45
[2026-06-19 03:18:45,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:18:45,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:18:45,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:18:45,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:18:45,952.952 INFO    ] time= 19/06/2026 03:18:45
[2026-06-19 03:18:46,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:18:46,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:18:46,129.129 INFO    ] No existing commands found in stream
[2026-06-19 03:18:51,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:18:51,156.156 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 03:18:53,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:18:53,793.793 INFO    ] Checking for system updates...
[2026-06-19 03:18:53,830.830 INFO    ] 200
[2026-06-19 03:18:53,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:53,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:18:53,889.889 INFO    ] No update needed
[2026-06-19 03:18:53,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 03:18:53,926.926 INFO    ] 200
[2026-06-19 03:18:53,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:18:53,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:18:54,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:18:54,012.012 INFO    ] No camera update needed
[2026-06-19 03:18:54,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:18:54,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:18:54,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:18:54,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:18:56,072.072 INFO    ] ================================================
[2026-06-19 03:18:56,087.087 INFO    ] Launching Daemon at Fri Jun 19 03:18:56 IST 2026
[2026-06-19 03:18:56,097.097 INFO    ] ================================================
[2026-06-19 03:18:56,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:18:56
[2026-06-19 03:18:57,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:18:57,509.509 INFO    ] Initializing speech engine...
[2026-06-19 03:18:57,525.525 INFO    ] 2026-06-19 03:18:57
[2026-06-19 03:18:57,805.805 INFO    ] 2026-06-19 03:18:57
[2026-06-19 03:18:57,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:18:58,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:18:58,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:18:58,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:18:58,221.221 INFO    ] time= 19/06/2026 03:18:58
[2026-06-19 03:18:58,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:18:58,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:18:58,372.372 INFO    ] No existing commands found in stream
[2026-06-19 03:19:03,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:19:03,400.400 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 03:19:06,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:19:06,657.657 INFO    ] Checking for system updates...
[2026-06-19 03:19:06,694.694 INFO    ] 200
[2026-06-19 03:19:06,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:06,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:19:06,754.754 INFO    ] No update needed
[2026-06-19 03:19:06,757.757 INFO    ] Checking for camera pi updates...
[2026-06-19 03:19:06,792.792 INFO    ] 200
[2026-06-19 03:19:06,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:06,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:19:06,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:19:06,985.985 INFO    ] No camera update needed
[2026-06-19 03:19:06,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:19:06,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:19:06,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:19:07,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:19:09,043.043 INFO    ] ================================================
[2026-06-19 03:19:09,058.058 INFO    ] Launching Daemon at Fri Jun 19 03:19:09 IST 2026
[2026-06-19 03:19:09,069.069 INFO    ] ================================================
[2026-06-19 03:19:09,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:19:09
[2026-06-19 03:19:10,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:19:10,689.689 INFO    ] Initializing speech engine...
[2026-06-19 03:19:10,700.700 INFO    ] 2026-06-19 03:19:10
[2026-06-19 03:19:10,981.981 INFO    ] 2026-06-19 03:19:10
[2026-06-19 03:19:11,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:19:11,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:19:11,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:19:11,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:19:11,468.468 INFO    ] time= 19/06/2026 03:19:11
[2026-06-19 03:19:11,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:19:11,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:19:11,683.683 INFO    ] No existing commands found in stream
[2026-06-19 03:19:16,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:19:16,709.709 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 03:19:19,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:19:19,408.408 INFO    ] Checking for system updates...
[2026-06-19 03:19:19,449.449 INFO    ] 200
[2026-06-19 03:19:19,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:19,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:19:19,510.510 INFO    ] No update needed
[2026-06-19 03:19:19,512.512 INFO    ] Checking for camera pi updates...
[2026-06-19 03:19:19,547.547 INFO    ] 200
[2026-06-19 03:19:19,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:19,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:19:19,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:19:19,639.639 INFO    ] No camera update needed
[2026-06-19 03:19:19,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:19:19,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:19:19,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:19:19,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:19:21,700.700 INFO    ] ================================================
[2026-06-19 03:19:21,716.716 INFO    ] Launching Daemon at Fri Jun 19 03:19:21 IST 2026
[2026-06-19 03:19:21,726.726 INFO    ] ================================================
[2026-06-19 03:19:22,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:19:22
[2026-06-19 03:19:22,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:19:23,132.132 INFO    ] Initializing speech engine...
[2026-06-19 03:19:23,155.155 INFO    ] 2026-06-19 03:19:23
[2026-06-19 03:19:23,411.411 INFO    ] 2026-06-19 03:19:23
[2026-06-19 03:19:23,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:19:23,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:19:23,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:19:23,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:19:23,878.878 INFO    ] time= 19/06/2026 03:19:23
[2026-06-19 03:19:23,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:19:23,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:19:24,046.046 INFO    ] No existing commands found in stream
[2026-06-19 03:19:29,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:19:29,061.061 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 03:19:30,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:19:30,451.451 INFO    ] Checking for system updates...
[2026-06-19 03:19:30,489.489 INFO    ] 200
[2026-06-19 03:19:30,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:30,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:19:30,550.550 INFO    ] No update needed
[2026-06-19 03:19:30,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 03:19:30,592.592 INFO    ] 200
[2026-06-19 03:19:30,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:30,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:19:30,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:19:30,689.689 INFO    ] No camera update needed
[2026-06-19 03:19:30,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:19:30,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:19:30,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:19:30,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:19:32,752.752 INFO    ] ================================================
[2026-06-19 03:19:32,768.768 INFO    ] Launching Daemon at Fri Jun 19 03:19:32 IST 2026
[2026-06-19 03:19:32,780.780 INFO    ] ================================================
[2026-06-19 03:19:33,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:19:33
[2026-06-19 03:19:34,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:19:34,269.269 INFO    ] Initializing speech engine...
[2026-06-19 03:19:34,282.282 INFO    ] 2026-06-19 03:19:34
[2026-06-19 03:19:34,535.535 INFO    ] 2026-06-19 03:19:34
[2026-06-19 03:19:34,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:19:34,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:19:34,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:19:34,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:19:34,997.997 INFO    ] time= 19/06/2026 03:19:34
[2026-06-19 03:19:35,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:19:35,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:19:35,168.168 INFO    ] No existing commands found in stream
[2026-06-19 03:19:40,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:19:40,183.183 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 03:19:42,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:19:42,126.126 INFO    ] Checking for system updates...
[2026-06-19 03:19:42,162.162 INFO    ] 200
[2026-06-19 03:19:42,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:42,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:19:42,219.219 INFO    ] No update needed
[2026-06-19 03:19:42,222.222 INFO    ] Checking for camera pi updates...
[2026-06-19 03:19:42,256.256 INFO    ] 200
[2026-06-19 03:19:42,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:42,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:19:42,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:19:42,341.341 INFO    ] No camera update needed
[2026-06-19 03:19:42,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:19:42,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:19:42,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:19:42,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:19:44,397.397 INFO    ] ================================================
[2026-06-19 03:19:44,413.413 INFO    ] Launching Daemon at Fri Jun 19 03:19:44 IST 2026
[2026-06-19 03:19:44,424.424 INFO    ] ================================================
[2026-06-19 03:19:44,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:19:44
[2026-06-19 03:19:45,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:19:45,839.839 INFO    ] Initializing speech engine...
[2026-06-19 03:19:45,851.851 INFO    ] 2026-06-19 03:19:45
[2026-06-19 03:19:46,127.127 INFO    ] 2026-06-19 03:19:46
[2026-06-19 03:19:46,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:19:46,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:19:46,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:19:46,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:19:46,590.590 INFO    ] time= 19/06/2026 03:19:46
[2026-06-19 03:19:46,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:19:46,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:19:46,780.780 INFO    ] No existing commands found in stream
[2026-06-19 03:19:51,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:19:51,796.796 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 03:19:56,126.126 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:19:56,129.129 INFO    ] Checking for system updates...
[2026-06-19 03:19:56,170.170 INFO    ] 200
[2026-06-19 03:19:56,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:56,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:19:56,236.236 INFO    ] No update needed
[2026-06-19 03:19:56,238.238 INFO    ] Checking for camera pi updates...
[2026-06-19 03:19:56,272.272 INFO    ] 200
[2026-06-19 03:19:56,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:19:56,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:19:56,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:19:56,359.359 INFO    ] No camera update needed
[2026-06-19 03:19:56,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:19:56,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:19:56,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:19:56,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:19:58,416.416 INFO    ] ================================================
[2026-06-19 03:19:58,434.434 INFO    ] Launching Daemon at Fri Jun 19 03:19:58 IST 2026
[2026-06-19 03:19:58,447.447 INFO    ] ================================================
[2026-06-19 03:19:59,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:19:59
[2026-06-19 03:19:59,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:19:59,903.903 INFO    ] Initializing speech engine...
[2026-06-19 03:19:59,912.912 INFO    ] 2026-06-19 03:19:59
[2026-06-19 03:20:00,159.159 INFO    ] 2026-06-19 03:20:00
[2026-06-19 03:20:00,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:20:00,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:20:00,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:20:00,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:20:00,659.659 INFO    ] time= 19/06/2026 03:20:00
[2026-06-19 03:20:00,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:20:00,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:20:00,856.856 INFO    ] No existing commands found in stream
[2026-06-19 03:20:05,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:20:05,890.890 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 03:20:09,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:20:09,361.361 INFO    ] Checking for system updates...
[2026-06-19 03:20:09,404.404 INFO    ] 200
[2026-06-19 03:20:09,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:20:09,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:20:09,467.467 INFO    ] No update needed
[2026-06-19 03:20:09,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 03:20:09,507.507 INFO    ] 200
[2026-06-19 03:20:09,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:20:09,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:20:09,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:20:09,609.609 INFO    ] No camera update needed
[2026-06-19 03:20:09,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:20:09,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:20:09,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:20:09,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:20:11,669.669 INFO    ] ================================================
[2026-06-19 03:20:11,685.685 INFO    ] Launching Daemon at Fri Jun 19 03:20:11 IST 2026
[2026-06-19 03:20:11,695.695 INFO    ] ================================================
[2026-06-19 03:20:12,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:20:12
[2026-06-19 03:20:12,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:20:13,105.105 INFO    ] Initializing speech engine...
[2026-06-19 03:20:13,113.113 INFO    ] 2026-06-19 03:20:13
[2026-06-19 03:20:13,388.388 INFO    ] 2026-06-19 03:20:13
[2026-06-19 03:20:13,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:20:13,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:20:13,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:20:13,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:20:13,775.775 INFO    ] time= 19/06/2026 03:20:13
[2026-06-19 03:20:13,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:20:13,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:20:13,968.968 INFO    ] No existing commands found in stream
[2026-06-19 03:20:18,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:20:18,984.984 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 03:20:19,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:20:19,440.440 INFO    ] Checking for system updates...
[2026-06-19 03:20:19,478.478 INFO    ] 200
[2026-06-19 03:20:19,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:20:19,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:20:19,539.539 INFO    ] No update needed
[2026-06-19 03:20:19,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 03:20:19,582.582 INFO    ] 200
[2026-06-19 03:20:19,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:20:19,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:20:19,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:20:19,679.679 INFO    ] No camera update needed
[2026-06-19 03:20:19,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:20:19,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:20:19,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:20:19,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:20:21,743.743 INFO    ] ================================================
[2026-06-19 03:20:21,758.758 INFO    ] Launching Daemon at Fri Jun 19 03:20:21 IST 2026
[2026-06-19 03:20:21,770.770 INFO    ] ================================================
[2026-06-19 03:20:22,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:20:22
[2026-06-19 03:20:22,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:20:23,198.198 INFO    ] Initializing speech engine...
[2026-06-19 03:20:23,207.207 INFO    ] 2026-06-19 03:20:23
[2026-06-19 03:20:23,460.460 INFO    ] 2026-06-19 03:20:23
[2026-06-19 03:20:23,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:20:23,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:20:23,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:20:23,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:20:23,934.934 INFO    ] time= 19/06/2026 03:20:23
[2026-06-19 03:20:23,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:20:24,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:20:24,096.096 INFO    ] No existing commands found in stream
[2026-06-19 03:20:29,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:20:29,111.111 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 03:20:31,919.919 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:20:31,922.922 INFO    ] Checking for system updates...
[2026-06-19 03:20:31,962.962 INFO    ] 200
[2026-06-19 03:20:31,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:20:32,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:20:32,032.032 INFO    ] No update needed
[2026-06-19 03:20:32,035.035 INFO    ] Checking for camera pi updates...
[2026-06-19 03:20:32,075.075 INFO    ] 200
[2026-06-19 03:20:32,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:20:32,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:20:32,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:20:32,159.159 INFO    ] No camera update needed
[2026-06-19 03:20:32,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:20:32,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:20:32,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:20:32,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:20:34,219.219 INFO    ] ================================================
[2026-06-19 03:20:34,234.234 INFO    ] Launching Daemon at Fri Jun 19 03:20:34 IST 2026
[2026-06-19 03:20:34,246.246 INFO    ] ================================================
[2026-06-19 03:20:34,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:20:34
[2026-06-19 03:20:35,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:20:35,655.655 INFO    ] Initializing speech engine...
[2026-06-19 03:20:35,670.670 INFO    ] 2026-06-19 03:20:35
[2026-06-19 03:20:35,945.945 INFO    ] 2026-06-19 03:20:35
[2026-06-19 03:20:35,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:20:36,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:20:36,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:20:36,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:20:36,324.324 INFO    ] time= 19/06/2026 03:20:36
[2026-06-19 03:20:36,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:20:36,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:20:36,403.403 INFO    ] No existing commands found in stream
[2026-06-19 03:20:41,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:20:41,425.425 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 03:20:45,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:20:45,784.784 INFO    ] Checking for system updates...
[2026-06-19 03:20:45,824.824 INFO    ] 200
[2026-06-19 03:20:45,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:20:45,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:20:45,882.882 INFO    ] No update needed
[2026-06-19 03:20:45,884.884 INFO    ] Checking for camera pi updates...
[2026-06-19 03:20:45,920.920 INFO    ] 200
[2026-06-19 03:20:45,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:20:45,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:20:46,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:20:46,009.009 INFO    ] No camera update needed
[2026-06-19 03:20:46,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:20:46,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:20:46,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:20:46,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:20:48,065.065 INFO    ] ================================================
[2026-06-19 03:20:48,080.080 INFO    ] Launching Daemon at Fri Jun 19 03:20:48 IST 2026
[2026-06-19 03:20:48,091.091 INFO    ] ================================================
[2026-06-19 03:20:48,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:20:48
[2026-06-19 03:20:49,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:20:49,519.519 INFO    ] Initializing speech engine...
[2026-06-19 03:20:49,528.528 INFO    ] 2026-06-19 03:20:49
[2026-06-19 03:20:49,776.776 INFO    ] 2026-06-19 03:20:49
[2026-06-19 03:20:49,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:20:50,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:20:50,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:20:50,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:20:50,292.292 INFO    ] time= 19/06/2026 03:20:50
[2026-06-19 03:20:50,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:20:50,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:20:50,475.475 INFO    ] No existing commands found in stream
[2026-06-19 03:20:55,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:20:55,511.511 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 03:20:59,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:20:59,872.872 INFO    ] Checking for system updates...
[2026-06-19 03:20:59,914.914 INFO    ] 200
[2026-06-19 03:20:59,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:20:59,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:20:59,974.974 INFO    ] No update needed
[2026-06-19 03:20:59,977.977 INFO    ] Checking for camera pi updates...
[2026-06-19 03:21:00,012.012 INFO    ] 200
[2026-06-19 03:21:00,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:21:00,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:21:00,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:21:00,099.099 INFO    ] No camera update needed
[2026-06-19 03:21:00,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:21:00,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:21:00,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:21:00,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:21:02,162.162 INFO    ] ================================================
[2026-06-19 03:21:02,184.184 INFO    ] Launching Daemon at Fri Jun 19 03:21:02 IST 2026
[2026-06-19 03:21:02,208.208 INFO    ] ================================================
[2026-06-19 03:21:02,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:21:02
[2026-06-19 03:21:03,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:21:03,829.829 INFO    ] Initializing speech engine...
[2026-06-19 03:21:03,855.855 INFO    ] 2026-06-19 03:21:03
[2026-06-19 03:21:04,130.130 INFO    ] 2026-06-19 03:21:04
[2026-06-19 03:21:04,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:21:04,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:21:04,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:21:04,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:21:04,520.520 INFO    ] time= 19/06/2026 03:21:04
[2026-06-19 03:21:04,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:21:04,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:21:04,699.699 INFO    ] No existing commands found in stream
[2026-06-19 03:21:09,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:21:09,727.727 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 03:21:11,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:21:11,309.309 INFO    ] Checking for system updates...
[2026-06-19 03:21:11,347.347 INFO    ] 200
[2026-06-19 03:21:11,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:21:11,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:21:11,408.408 INFO    ] No update needed
[2026-06-19 03:21:11,411.411 INFO    ] Checking for camera pi updates...
[2026-06-19 03:21:11,450.450 INFO    ] 200
[2026-06-19 03:21:11,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:21:11,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:21:11,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:21:11,626.626 INFO    ] No camera update needed
[2026-06-19 03:21:11,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:21:11,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:21:11,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:21:11,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:21:13,682.682 INFO    ] ================================================
[2026-06-19 03:21:13,697.697 INFO    ] Launching Daemon at Fri Jun 19 03:21:13 IST 2026
[2026-06-19 03:21:13,708.708 INFO    ] ================================================
[2026-06-19 03:21:14,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:21:14
[2026-06-19 03:21:14,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:21:15,132.132 INFO    ] Initializing speech engine...
[2026-06-19 03:21:15,141.141 INFO    ] 2026-06-19 03:21:15
[2026-06-19 03:21:15,401.401 INFO    ] 2026-06-19 03:21:15
[2026-06-19 03:21:15,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:21:15,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:21:15,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:21:15,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:21:15,767.767 INFO    ] time= 19/06/2026 03:21:15
[2026-06-19 03:21:15,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:21:15,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:21:15,939.939 INFO    ] No existing commands found in stream
[2026-06-19 03:21:20,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:21:20,972.972 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 03:21:22,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:21:22,441.441 INFO    ] Checking for system updates...
[2026-06-19 03:21:22,478.478 INFO    ] 200
[2026-06-19 03:21:22,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:21:22,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:21:22,535.535 INFO    ] No update needed
[2026-06-19 03:21:22,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 03:21:22,576.576 INFO    ] 200
[2026-06-19 03:21:22,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:21:22,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:21:22,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:21:22,662.662 INFO    ] No camera update needed
[2026-06-19 03:21:22,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:21:22,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:21:22,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:21:22,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:21:24,717.717 INFO    ] ================================================
[2026-06-19 03:21:24,732.732 INFO    ] Launching Daemon at Fri Jun 19 03:21:24 IST 2026
[2026-06-19 03:21:24,743.743 INFO    ] ================================================
[2026-06-19 03:21:25,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:21:25
[2026-06-19 03:21:25,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:21:26,200.200 INFO    ] Initializing speech engine...
[2026-06-19 03:21:26,209.209 INFO    ] 2026-06-19 03:21:26
[2026-06-19 03:21:26,459.459 INFO    ] 2026-06-19 03:21:26
[2026-06-19 03:21:26,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:21:26,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:21:26,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:21:26,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:21:26,960.960 INFO    ] time= 19/06/2026 03:21:26
[2026-06-19 03:21:27,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:21:27,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:21:27,161.161 INFO    ] No existing commands found in stream
[2026-06-19 03:21:32,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:21:32,190.190 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 03:21:35,877.877 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:21:35,880.880 INFO    ] Checking for system updates...
[2026-06-19 03:21:35,915.915 INFO    ] 200
[2026-06-19 03:21:35,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:21:35,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:21:35,974.974 INFO    ] No update needed
[2026-06-19 03:21:35,976.976 INFO    ] Checking for camera pi updates...
[2026-06-19 03:21:36,011.011 INFO    ] 200
[2026-06-19 03:21:36,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:21:36,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:21:36,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:21:36,099.099 INFO    ] No camera update needed
[2026-06-19 03:21:36,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:21:36,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:21:36,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:21:36,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:21:38,158.158 INFO    ] ================================================
[2026-06-19 03:21:38,173.173 INFO    ] Launching Daemon at Fri Jun 19 03:21:38 IST 2026
[2026-06-19 03:21:38,184.184 INFO    ] ================================================
[2026-06-19 03:21:38,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:21:38
[2026-06-19 03:21:39,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:21:39,592.592 INFO    ] Initializing speech engine...
[2026-06-19 03:21:39,601.601 INFO    ] 2026-06-19 03:21:39
[2026-06-19 03:21:39,899.899 INFO    ] 2026-06-19 03:21:39
[2026-06-19 03:21:39,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:21:40,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:21:40,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:21:40,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:21:40,285.285 INFO    ] time= 19/06/2026 03:21:40
[2026-06-19 03:21:40,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:21:40,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:21:40,412.412 INFO    ] No existing commands found in stream
[2026-06-19 03:21:45,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:21:45,427.427 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 03:21:46,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:21:46,244.244 INFO    ] Checking for system updates...
[2026-06-19 03:21:46,281.281 INFO    ] 200
[2026-06-19 03:21:46,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:21:46,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:21:46,339.339 INFO    ] No update needed
[2026-06-19 03:21:46,342.342 INFO    ] Checking for camera pi updates...
[2026-06-19 03:21:46,376.376 INFO    ] 200
[2026-06-19 03:21:46,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:21:46,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:21:46,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:21:46,463.463 INFO    ] No camera update needed
[2026-06-19 03:21:46,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:21:46,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:21:46,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:21:46,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:21:48,519.519 INFO    ] ================================================
[2026-06-19 03:21:48,535.535 INFO    ] Launching Daemon at Fri Jun 19 03:21:48 IST 2026
[2026-06-19 03:21:48,546.546 INFO    ] ================================================
[2026-06-19 03:21:49,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:21:49
[2026-06-19 03:21:49,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:21:49,966.966 INFO    ] Initializing speech engine...
[2026-06-19 03:21:49,975.975 INFO    ] 2026-06-19 03:21:49
[2026-06-19 03:21:50,225.225 INFO    ] 2026-06-19 03:21:50
[2026-06-19 03:21:50,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:21:50,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:21:50,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:21:50,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:21:50,699.699 INFO    ] time= 19/06/2026 03:21:50
[2026-06-19 03:21:50,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:21:50,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:21:50,850.850 INFO    ] No existing commands found in stream
[2026-06-19 03:21:55,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:21:55,864.864 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 03:22:00,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:22:00,119.119 INFO    ] Checking for system updates...
[2026-06-19 03:22:00,156.156 INFO    ] 200
[2026-06-19 03:22:00,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:00,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:22:00,214.214 INFO    ] No update needed
[2026-06-19 03:22:00,217.217 INFO    ] Checking for camera pi updates...
[2026-06-19 03:22:00,250.250 INFO    ] 200
[2026-06-19 03:22:00,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:00,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:22:00,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:22:00,352.352 INFO    ] No camera update needed
[2026-06-19 03:22:00,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:22:00,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:22:00,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:22:00,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:22:02,413.413 INFO    ] ================================================
[2026-06-19 03:22:02,442.442 INFO    ] Launching Daemon at Fri Jun 19 03:22:02 IST 2026
[2026-06-19 03:22:02,458.458 INFO    ] ================================================
[2026-06-19 03:22:03,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:22:03
[2026-06-19 03:22:03,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:22:04,085.085 INFO    ] Initializing speech engine...
[2026-06-19 03:22:04,094.094 INFO    ] 2026-06-19 03:22:04
[2026-06-19 03:22:04,364.364 INFO    ] 2026-06-19 03:22:04
[2026-06-19 03:22:04,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:22:04,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:22:04,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:22:04,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:22:04,812.812 INFO    ] time= 19/06/2026 03:22:04
[2026-06-19 03:22:04,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:22:04,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:22:04,976.976 INFO    ] No existing commands found in stream
[2026-06-19 03:22:09,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:22:09,991.991 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 03:22:12,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:22:12,151.151 INFO    ] Checking for system updates...
[2026-06-19 03:22:12,188.188 INFO    ] 200
[2026-06-19 03:22:12,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:12,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:22:12,248.248 INFO    ] No update needed
[2026-06-19 03:22:12,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 03:22:12,286.286 INFO    ] 200
[2026-06-19 03:22:12,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:12,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:22:12,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:22:12,380.380 INFO    ] No camera update needed
[2026-06-19 03:22:12,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:22:12,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:22:12,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:22:12,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:22:14,439.439 INFO    ] ================================================
[2026-06-19 03:22:14,454.454 INFO    ] Launching Daemon at Fri Jun 19 03:22:14 IST 2026
[2026-06-19 03:22:14,465.465 INFO    ] ================================================
[2026-06-19 03:22:15,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:22:15
[2026-06-19 03:22:15,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:22:15,935.935 INFO    ] Initializing speech engine...
[2026-06-19 03:22:15,958.958 INFO    ] 2026-06-19 03:22:15
[2026-06-19 03:22:16,213.213 INFO    ] 2026-06-19 03:22:16
[2026-06-19 03:22:16,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:22:16,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:22:16,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:22:16,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:22:16,590.590 INFO    ] time= 19/06/2026 03:22:16
[2026-06-19 03:22:16,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:22:16,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:22:16,669.669 INFO    ] No existing commands found in stream
[2026-06-19 03:22:21,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:22:21,702.702 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 03:22:24,768.768 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:22:24,771.771 INFO    ] Checking for system updates...
[2026-06-19 03:22:24,809.809 INFO    ] 200
[2026-06-19 03:22:24,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:24,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:22:24,873.873 INFO    ] No update needed
[2026-06-19 03:22:24,876.876 INFO    ] Checking for camera pi updates...
[2026-06-19 03:22:24,918.918 INFO    ] 200
[2026-06-19 03:22:24,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:24,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:22:25,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:22:25,021.021 INFO    ] No camera update needed
[2026-06-19 03:22:25,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:22:25,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:22:25,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:22:25,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:22:27,076.076 INFO    ] ================================================
[2026-06-19 03:22:27,093.093 INFO    ] Launching Daemon at Fri Jun 19 03:22:27 IST 2026
[2026-06-19 03:22:27,105.105 INFO    ] ================================================
[2026-06-19 03:22:27,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:22:27
[2026-06-19 03:22:28,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:22:28,577.577 INFO    ] Initializing speech engine...
[2026-06-19 03:22:28,582.582 INFO    ] 2026-06-19 03:22:28
[2026-06-19 03:22:28,829.829 INFO    ] 2026-06-19 03:22:28
[2026-06-19 03:22:28,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:22:29,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:22:29,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:22:29,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:22:29,200.200 INFO    ] time= 19/06/2026 03:22:29
[2026-06-19 03:22:29,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:22:29,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:22:29,367.367 INFO    ] No existing commands found in stream
[2026-06-19 03:22:34,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:22:34,400.400 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 03:22:36,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:22:36,795.795 INFO    ] Checking for system updates...
[2026-06-19 03:22:36,830.830 INFO    ] 200
[2026-06-19 03:22:36,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:36,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:22:36,888.888 INFO    ] No update needed
[2026-06-19 03:22:36,890.890 INFO    ] Checking for camera pi updates...
[2026-06-19 03:22:36,934.934 INFO    ] 200
[2026-06-19 03:22:36,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:36,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:22:37,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:22:37,024.024 INFO    ] No camera update needed
[2026-06-19 03:22:37,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:22:37,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:22:37,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:22:37,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:22:39,080.080 INFO    ] ================================================
[2026-06-19 03:22:39,095.095 INFO    ] Launching Daemon at Fri Jun 19 03:22:39 IST 2026
[2026-06-19 03:22:39,105.105 INFO    ] ================================================
[2026-06-19 03:22:39,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:22:39
[2026-06-19 03:22:40,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:22:40,540.540 INFO    ] Initializing speech engine...
[2026-06-19 03:22:40,547.547 INFO    ] 2026-06-19 03:22:40
[2026-06-19 03:22:40,792.792 INFO    ] 2026-06-19 03:22:40
[2026-06-19 03:22:40,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:22:41,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:22:41,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:22:41,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:22:41,255.255 INFO    ] time= 19/06/2026 03:22:41
[2026-06-19 03:22:41,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:22:41,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:22:41,422.422 INFO    ] No existing commands found in stream
[2026-06-19 03:22:46,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:22:46,437.437 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 03:22:50,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:22:50,817.817 INFO    ] Checking for system updates...
[2026-06-19 03:22:50,858.858 INFO    ] 200
[2026-06-19 03:22:50,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:50,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:22:50,916.916 INFO    ] No update needed
[2026-06-19 03:22:50,918.918 INFO    ] Checking for camera pi updates...
[2026-06-19 03:22:50,956.956 INFO    ] 200
[2026-06-19 03:22:50,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:22:51,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:22:51,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:22:51,068.068 INFO    ] No camera update needed
[2026-06-19 03:22:51,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:22:51,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:22:51,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:22:51,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:22:53,123.123 INFO    ] ================================================
[2026-06-19 03:22:53,138.138 INFO    ] Launching Daemon at Fri Jun 19 03:22:53 IST 2026
[2026-06-19 03:22:53,148.148 INFO    ] ================================================
[2026-06-19 03:22:53,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:22:53
[2026-06-19 03:22:54,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:22:54,607.607 INFO    ] Initializing speech engine...
[2026-06-19 03:22:54,613.613 INFO    ] 2026-06-19 03:22:54
[2026-06-19 03:22:54,874.874 INFO    ] 2026-06-19 03:22:54
[2026-06-19 03:22:54,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:22:55,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:22:55,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:22:55,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:22:55,313.313 INFO    ] time= 19/06/2026 03:22:55
[2026-06-19 03:22:55,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:22:55,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:22:55,482.482 INFO    ] No existing commands found in stream
[2026-06-19 03:23:00,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:23:00,497.497 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 03:23:04,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:23:04,764.764 INFO    ] Checking for system updates...
[2026-06-19 03:23:04,805.805 INFO    ] 200
[2026-06-19 03:23:04,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:04,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:23:04,863.863 INFO    ] No update needed
[2026-06-19 03:23:04,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 03:23:04,903.903 INFO    ] 200
[2026-06-19 03:23:04,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:04,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:23:04,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:23:04,993.993 INFO    ] No camera update needed
[2026-06-19 03:23:04,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:23:04,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:23:05,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:23:05,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:23:07,051.051 INFO    ] ================================================
[2026-06-19 03:23:07,067.067 INFO    ] Launching Daemon at Fri Jun 19 03:23:07 IST 2026
[2026-06-19 03:23:07,077.077 INFO    ] ================================================
[2026-06-19 03:23:07,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:23:07
[2026-06-19 03:23:08,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:23:08,531.531 INFO    ] Initializing speech engine...
[2026-06-19 03:23:08,538.538 INFO    ] 2026-06-19 03:23:08
[2026-06-19 03:23:08,814.814 INFO    ] 2026-06-19 03:23:08
[2026-06-19 03:23:08,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:23:09,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:23:09,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:23:09,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:23:09,264.264 INFO    ] time= 19/06/2026 03:23:09
[2026-06-19 03:23:09,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:23:09,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:23:09,407.407 INFO    ] No existing commands found in stream
[2026-06-19 03:23:14,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:23:14,421.421 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 03:23:15,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:23:15,042.042 INFO    ] Checking for system updates...
[2026-06-19 03:23:15,082.082 INFO    ] 200
[2026-06-19 03:23:15,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:15,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:23:15,142.142 INFO    ] No update needed
[2026-06-19 03:23:15,145.145 INFO    ] Checking for camera pi updates...
[2026-06-19 03:23:15,179.179 INFO    ] 200
[2026-06-19 03:23:15,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:15,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:23:15,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:23:15,371.371 INFO    ] No camera update needed
[2026-06-19 03:23:15,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:23:15,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:23:15,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:23:15,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:23:17,430.430 INFO    ] ================================================
[2026-06-19 03:23:17,445.445 INFO    ] Launching Daemon at Fri Jun 19 03:23:17 IST 2026
[2026-06-19 03:23:17,456.456 INFO    ] ================================================
[2026-06-19 03:23:18,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:23:18
[2026-06-19 03:23:18,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:23:18,914.914 INFO    ] Initializing speech engine...
[2026-06-19 03:23:18,921.921 INFO    ] 2026-06-19 03:23:18
[2026-06-19 03:23:19,184.184 INFO    ] 2026-06-19 03:23:19
[2026-06-19 03:23:19,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:23:19,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:23:19,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:23:19,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:23:19,646.646 INFO    ] time= 19/06/2026 03:23:19
[2026-06-19 03:23:19,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:23:19,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:23:19,796.796 INFO    ] No existing commands found in stream
[2026-06-19 03:23:24,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:23:24,810.810 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 03:23:27,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:23:27,551.551 INFO    ] Checking for system updates...
[2026-06-19 03:23:27,587.587 INFO    ] 200
[2026-06-19 03:23:27,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:27,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:23:27,653.653 INFO    ] No update needed
[2026-06-19 03:23:27,656.656 INFO    ] Checking for camera pi updates...
[2026-06-19 03:23:27,695.695 INFO    ] 200
[2026-06-19 03:23:27,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:27,739.739 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:23:27,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:23:27,779.779 INFO    ] No camera update needed
[2026-06-19 03:23:27,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:23:27,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:23:27,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:23:27,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:23:29,839.839 INFO    ] ================================================
[2026-06-19 03:23:29,855.855 INFO    ] Launching Daemon at Fri Jun 19 03:23:29 IST 2026
[2026-06-19 03:23:29,866.866 INFO    ] ================================================
[2026-06-19 03:23:30,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:23:30
[2026-06-19 03:23:31,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:23:31,312.312 INFO    ] Initializing speech engine...
[2026-06-19 03:23:31,319.319 INFO    ] 2026-06-19 03:23:31
[2026-06-19 03:23:31,627.627 INFO    ] 2026-06-19 03:23:31
[2026-06-19 03:23:31,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:23:31,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:23:31,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:23:31,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:23:32,016.016 INFO    ] time= 19/06/2026 03:23:31
[2026-06-19 03:23:32,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:23:32,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:23:32,140.140 INFO    ] No existing commands found in stream
[2026-06-19 03:23:37,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:23:37,154.154 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 03:23:40,697.697 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:23:40,699.699 INFO    ] Checking for system updates...
[2026-06-19 03:23:40,736.736 INFO    ] 200
[2026-06-19 03:23:40,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:40,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:23:40,796.796 INFO    ] No update needed
[2026-06-19 03:23:40,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 03:23:40,832.832 INFO    ] 200
[2026-06-19 03:23:40,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:40,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:23:40,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:23:40,925.925 INFO    ] No camera update needed
[2026-06-19 03:23:40,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:23:40,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:23:40,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:23:40,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:23:42,981.981 INFO    ] ================================================
[2026-06-19 03:23:43,996.996 INFO    ] Launching Daemon at Fri Jun 19 03:23:42 IST 2026
[2026-06-19 03:23:43,007.007 INFO    ] ================================================
[2026-06-19 03:23:43,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:23:43
[2026-06-19 03:23:44,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:23:44,445.445 INFO    ] Initializing speech engine...
[2026-06-19 03:23:44,468.468 INFO    ] 2026-06-19 03:23:44
[2026-06-19 03:23:44,722.722 INFO    ] 2026-06-19 03:23:44
[2026-06-19 03:23:44,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:23:45,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:23:45,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:23:45,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:23:45,204.204 INFO    ] time= 19/06/2026 03:23:45
[2026-06-19 03:23:45,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:23:45,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:23:45,343.343 INFO    ] No existing commands found in stream
[2026-06-19 03:23:50,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:23:50,361.361 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 03:23:51,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:23:51,898.898 INFO    ] Checking for system updates...
[2026-06-19 03:23:51,940.940 INFO    ] 200
[2026-06-19 03:23:51,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:52,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:23:52,006.006 INFO    ] No update needed
[2026-06-19 03:23:52,008.008 INFO    ] Checking for camera pi updates...
[2026-06-19 03:23:52,046.046 INFO    ] 200
[2026-06-19 03:23:52,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:23:52,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:23:52,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:23:52,134.134 INFO    ] No camera update needed
[2026-06-19 03:23:52,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:23:52,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:23:52,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:23:52,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:23:54,191.191 INFO    ] ================================================
[2026-06-19 03:23:54,207.207 INFO    ] Launching Daemon at Fri Jun 19 03:23:54 IST 2026
[2026-06-19 03:23:54,218.218 INFO    ] ================================================
[2026-06-19 03:23:54,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:23:54
[2026-06-19 03:23:55,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:23:55,686.686 INFO    ] Initializing speech engine...
[2026-06-19 03:23:55,692.692 INFO    ] 2026-06-19 03:23:55
[2026-06-19 03:23:55,953.953 INFO    ] 2026-06-19 03:23:55
[2026-06-19 03:23:55,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:23:56,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:23:56,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:23:56,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:23:56,418.418 INFO    ] time= 19/06/2026 03:23:56
[2026-06-19 03:23:56,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:23:56,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:23:56,562.562 INFO    ] No existing commands found in stream
[2026-06-19 03:24:01,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:24:01,577.577 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 03:24:05,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:24:05,150.150 INFO    ] Checking for system updates...
[2026-06-19 03:24:05,191.191 INFO    ] 200
[2026-06-19 03:24:05,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:05,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:24:05,255.255 INFO    ] No update needed
[2026-06-19 03:24:05,258.258 INFO    ] Checking for camera pi updates...
[2026-06-19 03:24:05,295.295 INFO    ] 200
[2026-06-19 03:24:05,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:05,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:24:05,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:24:05,384.384 INFO    ] No camera update needed
[2026-06-19 03:24:05,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:24:05,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:24:05,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:24:05,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:24:07,444.444 INFO    ] ================================================
[2026-06-19 03:24:07,459.459 INFO    ] Launching Daemon at Fri Jun 19 03:24:07 IST 2026
[2026-06-19 03:24:07,470.470 INFO    ] ================================================
[2026-06-19 03:24:08,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:24:08
[2026-06-19 03:24:08,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:24:09,110.110 INFO    ] Initializing speech engine...
[2026-06-19 03:24:09,120.120 INFO    ] 2026-06-19 03:24:09
[2026-06-19 03:24:09,392.392 INFO    ] 2026-06-19 03:24:09
[2026-06-19 03:24:09,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:24:09,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:24:09,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:24:09,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:24:09,913.913 INFO    ] time= 19/06/2026 03:24:09
[2026-06-19 03:24:09,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:24:09,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:24:10,094.094 INFO    ] No existing commands found in stream
[2026-06-19 03:24:15,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:24:15,131.131 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 03:24:18,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:24:18,849.849 INFO    ] Checking for system updates...
[2026-06-19 03:24:18,886.886 INFO    ] 200
[2026-06-19 03:24:18,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:18,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:24:18,943.943 INFO    ] No update needed
[2026-06-19 03:24:18,946.946 INFO    ] Checking for camera pi updates...
[2026-06-19 03:24:18,984.984 INFO    ] 200
[2026-06-19 03:24:18,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:19,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:24:19,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:24:19,073.073 INFO    ] No camera update needed
[2026-06-19 03:24:19,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:24:19,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:24:19,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:24:19,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:24:21,128.128 INFO    ] ================================================
[2026-06-19 03:24:21,144.144 INFO    ] Launching Daemon at Fri Jun 19 03:24:21 IST 2026
[2026-06-19 03:24:21,155.155 INFO    ] ================================================
[2026-06-19 03:24:21,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:24:21
[2026-06-19 03:24:22,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:24:22,832.832 INFO    ] Initializing speech engine...
[2026-06-19 03:24:22,845.845 INFO    ] 2026-06-19 03:24:22
[2026-06-19 03:24:23,158.158 INFO    ] 2026-06-19 03:24:23
[2026-06-19 03:24:23,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:24:23,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:24:23,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:24:23,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:24:23,666.666 INFO    ] time= 19/06/2026 03:24:23
[2026-06-19 03:24:23,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:24:23,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:24:23,826.826 INFO    ] No existing commands found in stream
[2026-06-19 03:24:28,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:24:28,858.858 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 03:24:30,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:24:30,950.950 INFO    ] Checking for system updates...
[2026-06-19 03:24:30,988.988 INFO    ] 200
[2026-06-19 03:24:30,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:31,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:24:31,046.046 INFO    ] No update needed
[2026-06-19 03:24:31,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 03:24:31,086.086 INFO    ] 200
[2026-06-19 03:24:31,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:31,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:24:31,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:24:31,178.178 INFO    ] No camera update needed
[2026-06-19 03:24:31,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:24:31,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:24:31,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:24:31,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:24:33,237.237 INFO    ] ================================================
[2026-06-19 03:24:33,253.253 INFO    ] Launching Daemon at Fri Jun 19 03:24:33 IST 2026
[2026-06-19 03:24:33,265.265 INFO    ] ================================================
[2026-06-19 03:24:33,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:24:33
[2026-06-19 03:24:34,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:24:34,698.698 INFO    ] Initializing speech engine...
[2026-06-19 03:24:34,705.705 INFO    ] 2026-06-19 03:24:34
[2026-06-19 03:24:34,997.997 INFO    ] 2026-06-19 03:24:34
[2026-06-19 03:24:35,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:24:35,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:24:35,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:24:35,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:24:35,349.349 INFO    ] time= 19/06/2026 03:24:35
[2026-06-19 03:24:35,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:24:35,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:24:35,497.497 INFO    ] No existing commands found in stream
[2026-06-19 03:24:40,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:24:40,510.510 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 03:24:43,390.390 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:24:43,393.393 INFO    ] Checking for system updates...
[2026-06-19 03:24:43,433.433 INFO    ] 200
[2026-06-19 03:24:43,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:43,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:24:43,509.509 INFO    ] No update needed
[2026-06-19 03:24:43,511.511 INFO    ] Checking for camera pi updates...
[2026-06-19 03:24:43,551.551 INFO    ] 200
[2026-06-19 03:24:43,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:43,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:24:43,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:24:43,651.651 INFO    ] No camera update needed
[2026-06-19 03:24:43,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:24:43,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:24:43,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:24:43,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:24:45,709.709 INFO    ] ================================================
[2026-06-19 03:24:45,726.726 INFO    ] Launching Daemon at Fri Jun 19 03:24:45 IST 2026
[2026-06-19 03:24:45,737.737 INFO    ] ================================================
[2026-06-19 03:24:46,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:24:46
[2026-06-19 03:24:46,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:24:47,225.225 INFO    ] Initializing speech engine...
[2026-06-19 03:24:47,236.236 INFO    ] 2026-06-19 03:24:47
[2026-06-19 03:24:47,498.498 INFO    ] 2026-06-19 03:24:47
[2026-06-19 03:24:47,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:24:47,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:24:47,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:24:47,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:24:47,872.872 INFO    ] time= 19/06/2026 03:24:47
[2026-06-19 03:24:47,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:24:47,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:24:47,997.997 INFO    ] No existing commands found in stream
[2026-06-19 03:24:53,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:24:53,011.011 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 03:24:53,976.976 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:24:53,979.979 INFO    ] Checking for system updates...
[2026-06-19 03:24:54,017.017 INFO    ] 200
[2026-06-19 03:24:54,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:54,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:24:54,085.085 INFO    ] No update needed
[2026-06-19 03:24:54,088.088 INFO    ] Checking for camera pi updates...
[2026-06-19 03:24:54,129.129 INFO    ] 200
[2026-06-19 03:24:54,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:24:54,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:24:54,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:24:54,227.227 INFO    ] No camera update needed
[2026-06-19 03:24:54,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:24:54,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:24:54,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:24:54,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:24:56,289.289 INFO    ] ================================================
[2026-06-19 03:24:56,304.304 INFO    ] Launching Daemon at Fri Jun 19 03:24:56 IST 2026
[2026-06-19 03:24:56,315.315 INFO    ] ================================================
[2026-06-19 03:24:56,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:24:56
[2026-06-19 03:24:57,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:24:57,816.816 INFO    ] Initializing speech engine...
[2026-06-19 03:24:57,841.841 INFO    ] 2026-06-19 03:24:57
[2026-06-19 03:24:58,124.124 INFO    ] 2026-06-19 03:24:58
[2026-06-19 03:24:58,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:24:58,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:24:58,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:24:58,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:24:58,607.607 INFO    ] time= 19/06/2026 03:24:58
[2026-06-19 03:24:58,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:24:58,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:24:58,779.779 INFO    ] No existing commands found in stream
[2026-06-19 03:25:03,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:25:03,795.795 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 03:25:08,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:25:08,193.193 INFO    ] Checking for system updates...
[2026-06-19 03:25:08,238.238 INFO    ] 200
[2026-06-19 03:25:08,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:08,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:25:08,299.299 INFO    ] No update needed
[2026-06-19 03:25:08,301.301 INFO    ] Checking for camera pi updates...
[2026-06-19 03:25:08,340.340 INFO    ] 200
[2026-06-19 03:25:08,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:08,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:25:08,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:25:08,430.430 INFO    ] No camera update needed
[2026-06-19 03:25:08,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:25:08,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:25:08,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:25:08,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:25:10,486.486 INFO    ] ================================================
[2026-06-19 03:25:10,501.501 INFO    ] Launching Daemon at Fri Jun 19 03:25:10 IST 2026
[2026-06-19 03:25:10,512.512 INFO    ] ================================================
[2026-06-19 03:25:11,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:25:11
[2026-06-19 03:25:11,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:25:11,947.947 INFO    ] Initializing speech engine...
[2026-06-19 03:25:11,956.956 INFO    ] 2026-06-19 03:25:11
[2026-06-19 03:25:12,225.225 INFO    ] 2026-06-19 03:25:12
[2026-06-19 03:25:12,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:25:12,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:25:12,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:25:12,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:25:12,591.591 INFO    ] time= 19/06/2026 03:25:12
[2026-06-19 03:25:12,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:25:12,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:25:12,674.674 INFO    ] No existing commands found in stream
[2026-06-19 03:25:17,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:25:17,688.688 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 03:25:20,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:25:20,459.459 INFO    ] Checking for system updates...
[2026-06-19 03:25:20,501.501 INFO    ] 200
[2026-06-19 03:25:20,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:20,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:25:20,571.571 INFO    ] No update needed
[2026-06-19 03:25:20,573.573 INFO    ] Checking for camera pi updates...
[2026-06-19 03:25:20,607.607 INFO    ] 200
[2026-06-19 03:25:20,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:20,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:25:20,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:25:20,795.795 INFO    ] No camera update needed
[2026-06-19 03:25:20,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:25:20,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:25:20,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:25:20,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:25:22,849.849 INFO    ] ================================================
[2026-06-19 03:25:22,865.865 INFO    ] Launching Daemon at Fri Jun 19 03:25:22 IST 2026
[2026-06-19 03:25:22,876.876 INFO    ] ================================================
[2026-06-19 03:25:23,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:25:23
[2026-06-19 03:25:24,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:25:24,370.370 INFO    ] Initializing speech engine...
[2026-06-19 03:25:24,384.384 INFO    ] 2026-06-19 03:25:24
[2026-06-19 03:25:24,674.674 INFO    ] 2026-06-19 03:25:24
[2026-06-19 03:25:24,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:25:24,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:25:24,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:25:25,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:25:25,126.126 INFO    ] time= 19/06/2026 03:25:25
[2026-06-19 03:25:25,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:25:25,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:25:25,283.283 INFO    ] No existing commands found in stream
[2026-06-19 03:25:30,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:25:30,297.297 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 03:25:31,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:25:31,148.148 INFO    ] Checking for system updates...
[2026-06-19 03:25:31,184.184 INFO    ] 200
[2026-06-19 03:25:31,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:31,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:25:31,249.249 INFO    ] No update needed
[2026-06-19 03:25:31,251.251 INFO    ] Checking for camera pi updates...
[2026-06-19 03:25:31,289.289 INFO    ] 200
[2026-06-19 03:25:31,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:31,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:25:31,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:25:31,394.394 INFO    ] No camera update needed
[2026-06-19 03:25:31,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:25:31,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:25:31,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:25:31,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:25:33,450.450 INFO    ] ================================================
[2026-06-19 03:25:33,465.465 INFO    ] Launching Daemon at Fri Jun 19 03:25:33 IST 2026
[2026-06-19 03:25:33,476.476 INFO    ] ================================================
[2026-06-19 03:25:34,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:25:34
[2026-06-19 03:25:34,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:25:35,066.066 INFO    ] Initializing speech engine...
[2026-06-19 03:25:35,078.078 INFO    ] 2026-06-19 03:25:35
[2026-06-19 03:25:35,367.367 INFO    ] 2026-06-19 03:25:35
[2026-06-19 03:25:35,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:25:35,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:25:35,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:25:35,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:25:35,898.898 INFO    ] time= 19/06/2026 03:25:35
[2026-06-19 03:25:35,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:25:35,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:25:36,036.036 INFO    ] No existing commands found in stream
[2026-06-19 03:25:41,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:25:41,069.069 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 03:25:43,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:25:43,094.094 INFO    ] Checking for system updates...
[2026-06-19 03:25:43,136.136 INFO    ] 200
[2026-06-19 03:25:43,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:43,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:25:43,196.196 INFO    ] No update needed
[2026-06-19 03:25:43,199.199 INFO    ] Checking for camera pi updates...
[2026-06-19 03:25:43,239.239 INFO    ] 200
[2026-06-19 03:25:43,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:43,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:25:43,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:25:43,336.336 INFO    ] No camera update needed
[2026-06-19 03:25:43,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:25:43,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:25:43,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:25:43,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:25:45,395.395 INFO    ] ================================================
[2026-06-19 03:25:45,410.410 INFO    ] Launching Daemon at Fri Jun 19 03:25:45 IST 2026
[2026-06-19 03:25:45,421.421 INFO    ] ================================================
[2026-06-19 03:25:46,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:25:46
[2026-06-19 03:25:46,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:25:46,884.884 INFO    ] Initializing speech engine...
[2026-06-19 03:25:46,892.892 INFO    ] 2026-06-19 03:25:46
[2026-06-19 03:25:47,141.141 INFO    ] 2026-06-19 03:25:47
[2026-06-19 03:25:47,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:25:47,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:25:47,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:25:47,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:25:47,648.648 INFO    ] time= 19/06/2026 03:25:47
[2026-06-19 03:25:47,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:25:47,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:25:47,839.839 INFO    ] No existing commands found in stream
[2026-06-19 03:25:52,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:25:52,872.872 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 03:25:56,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:25:56,735.735 INFO    ] Checking for system updates...
[2026-06-19 03:25:56,776.776 INFO    ] 200
[2026-06-19 03:25:56,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:56,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:25:56,842.842 INFO    ] No update needed
[2026-06-19 03:25:56,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 03:25:56,883.883 INFO    ] 200
[2026-06-19 03:25:56,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:25:56,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:25:56,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:25:56,981.981 INFO    ] No camera update needed
[2026-06-19 03:25:56,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:25:56,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:25:56,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:25:57,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:25:59,046.046 INFO    ] ================================================
[2026-06-19 03:25:59,061.061 INFO    ] Launching Daemon at Fri Jun 19 03:25:59 IST 2026
[2026-06-19 03:25:59,072.072 INFO    ] ================================================
[2026-06-19 03:25:59,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:25:59
[2026-06-19 03:26:00,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:26:00,744.744 INFO    ] Initializing speech engine...
[2026-06-19 03:26:00,758.758 INFO    ] 2026-06-19 03:26:00
[2026-06-19 03:26:01,043.043 INFO    ] 2026-06-19 03:26:01
[2026-06-19 03:26:01,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:26:01,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:26:01,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:26:01,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:26:01,517.517 INFO    ] time= 19/06/2026 03:26:01
[2026-06-19 03:26:01,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:26:01,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:26:01,660.660 INFO    ] No existing commands found in stream
[2026-06-19 03:26:06,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:26:06,678.678 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 03:26:07,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:26:07,269.269 INFO    ] Checking for system updates...
[2026-06-19 03:26:07,310.310 INFO    ] 200
[2026-06-19 03:26:07,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:07,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:26:07,377.377 INFO    ] No update needed
[2026-06-19 03:26:07,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 03:26:07,419.419 INFO    ] 200
[2026-06-19 03:26:07,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:07,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:26:07,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:26:07,517.517 INFO    ] No camera update needed
[2026-06-19 03:26:07,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:26:07,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:26:07,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:26:07,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:26:09,575.575 INFO    ] ================================================
[2026-06-19 03:26:09,591.591 INFO    ] Launching Daemon at Fri Jun 19 03:26:09 IST 2026
[2026-06-19 03:26:09,601.601 INFO    ] ================================================
[2026-06-19 03:26:10,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:26:10
[2026-06-19 03:26:10,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:26:11,014.014 INFO    ] Initializing speech engine...
[2026-06-19 03:26:11,037.037 INFO    ] 2026-06-19 03:26:11
[2026-06-19 03:26:11,294.294 INFO    ] 2026-06-19 03:26:11
[2026-06-19 03:26:11,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:26:11,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:26:11,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:26:11,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:26:11,770.770 INFO    ] time= 19/06/2026 03:26:11
[2026-06-19 03:26:11,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:26:11,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:26:11,926.926 INFO    ] No existing commands found in stream
[2026-06-19 03:26:16,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:26:16,940.940 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 03:26:20,962.962 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:26:20,964.964 INFO    ] Checking for system updates...
[2026-06-19 03:26:21,001.001 INFO    ] 200
[2026-06-19 03:26:21,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:21,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:26:21,062.062 INFO    ] No update needed
[2026-06-19 03:26:21,065.065 INFO    ] Checking for camera pi updates...
[2026-06-19 03:26:21,101.101 INFO    ] 200
[2026-06-19 03:26:21,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:21,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:26:21,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:26:21,202.202 INFO    ] No camera update needed
[2026-06-19 03:26:21,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:26:21,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:26:21,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:26:21,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:26:23,262.262 INFO    ] ================================================
[2026-06-19 03:26:23,277.277 INFO    ] Launching Daemon at Fri Jun 19 03:26:23 IST 2026
[2026-06-19 03:26:23,288.288 INFO    ] ================================================
[2026-06-19 03:26:23,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:26:23
[2026-06-19 03:26:24,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:26:24,751.751 INFO    ] Initializing speech engine...
[2026-06-19 03:26:24,758.758 INFO    ] 2026-06-19 03:26:24
[2026-06-19 03:26:25,039.039 INFO    ] 2026-06-19 03:26:25
[2026-06-19 03:26:25,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:26:25,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:26:25,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:26:25,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:26:25,579.579 INFO    ] time= 19/06/2026 03:26:25
[2026-06-19 03:26:25,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:26:25,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:26:25,741.741 INFO    ] No existing commands found in stream
[2026-06-19 03:26:30,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:26:30,767.767 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 03:26:34,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:26:34,710.710 INFO    ] Checking for system updates...
[2026-06-19 03:26:34,751.751 INFO    ] 200
[2026-06-19 03:26:34,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:34,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:26:34,816.816 INFO    ] No update needed
[2026-06-19 03:26:34,818.818 INFO    ] Checking for camera pi updates...
[2026-06-19 03:26:34,852.852 INFO    ] 200
[2026-06-19 03:26:34,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:34,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:26:34,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:26:34,948.948 INFO    ] No camera update needed
[2026-06-19 03:26:34,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:26:34,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:26:34,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:26:34,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:26:37,005.005 INFO    ] ================================================
[2026-06-19 03:26:37,025.025 INFO    ] Launching Daemon at Fri Jun 19 03:26:37 IST 2026
[2026-06-19 03:26:37,037.037 INFO    ] ================================================
[2026-06-19 03:26:37,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:26:37
[2026-06-19 03:26:38,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:26:38,473.473 INFO    ] Initializing speech engine...
[2026-06-19 03:26:38,482.482 INFO    ] 2026-06-19 03:26:38
[2026-06-19 03:26:38,730.730 INFO    ] 2026-06-19 03:26:38
[2026-06-19 03:26:38,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:26:38,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:26:38,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:26:39,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:26:39,108.108 INFO    ] time= 19/06/2026 03:26:39
[2026-06-19 03:26:39,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:26:39,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:26:39,186.186 INFO    ] No existing commands found in stream
[2026-06-19 03:26:44,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:26:44,204.204 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 03:26:45,374.374 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:26:45,377.377 INFO    ] Checking for system updates...
[2026-06-19 03:26:45,414.414 INFO    ] 200
[2026-06-19 03:26:45,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:45,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:26:45,474.474 INFO    ] No update needed
[2026-06-19 03:26:45,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 03:26:45,511.511 INFO    ] 200
[2026-06-19 03:26:45,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:45,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:26:45,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:26:45,611.611 INFO    ] No camera update needed
[2026-06-19 03:26:45,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:26:45,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:26:45,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:26:45,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:26:47,671.671 INFO    ] ================================================
[2026-06-19 03:26:47,686.686 INFO    ] Launching Daemon at Fri Jun 19 03:26:47 IST 2026
[2026-06-19 03:26:47,697.697 INFO    ] ================================================
[2026-06-19 03:26:48,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:26:48
[2026-06-19 03:26:48,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:26:49,149.149 INFO    ] Initializing speech engine...
[2026-06-19 03:26:49,159.159 INFO    ] 2026-06-19 03:26:49
[2026-06-19 03:26:49,420.420 INFO    ] 2026-06-19 03:26:49
[2026-06-19 03:26:49,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:26:49,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:26:49,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:26:49,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:26:49,863.863 INFO    ] time= 19/06/2026 03:26:49
[2026-06-19 03:26:49,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:26:49,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:26:50,020.020 INFO    ] No existing commands found in stream
[2026-06-19 03:26:55,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:26:55,035.035 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 03:26:57,403.403 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:26:57,406.406 INFO    ] Checking for system updates...
[2026-06-19 03:26:57,448.448 INFO    ] 200
[2026-06-19 03:26:57,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:57,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:26:57,512.512 INFO    ] No update needed
[2026-06-19 03:26:57,515.515 INFO    ] Checking for camera pi updates...
[2026-06-19 03:26:57,554.554 INFO    ] 200
[2026-06-19 03:26:57,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:26:57,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:26:57,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:26:57,648.648 INFO    ] No camera update needed
[2026-06-19 03:26:57,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:26:57,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:26:57,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:26:57,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:26:59,706.706 INFO    ] ================================================
[2026-06-19 03:26:59,724.724 INFO    ] Launching Daemon at Fri Jun 19 03:26:59 IST 2026
[2026-06-19 03:26:59,735.735 INFO    ] ================================================
[2026-06-19 03:27:00,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:27:00
[2026-06-19 03:27:00,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:27:01,150.150 INFO    ] Initializing speech engine...
[2026-06-19 03:27:01,159.159 INFO    ] 2026-06-19 03:27:01
[2026-06-19 03:27:01,433.433 INFO    ] 2026-06-19 03:27:01
[2026-06-19 03:27:01,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:27:01,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:27:01,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:27:01,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:27:01,940.940 INFO    ] time= 19/06/2026 03:27:01
[2026-06-19 03:27:01,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:27:01,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:27:02,042.042 INFO    ] No existing commands found in stream
[2026-06-19 03:27:07,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:27:07,055.055 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 03:27:09,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:27:09,660.660 INFO    ] Checking for system updates...
[2026-06-19 03:27:09,700.700 INFO    ] 200
[2026-06-19 03:27:09,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:09,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:27:09,761.761 INFO    ] No update needed
[2026-06-19 03:27:09,764.764 INFO    ] Checking for camera pi updates...
[2026-06-19 03:27:09,799.799 INFO    ] 200
[2026-06-19 03:27:09,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:09,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:27:09,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:27:09,890.890 INFO    ] No camera update needed
[2026-06-19 03:27:09,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:27:09,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:27:09,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:27:09,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:27:11,944.944 INFO    ] ================================================
[2026-06-19 03:27:11,960.960 INFO    ] Launching Daemon at Fri Jun 19 03:27:11 IST 2026
[2026-06-19 03:27:11,972.972 INFO    ] ================================================
[2026-06-19 03:27:12,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:27:12
[2026-06-19 03:27:13,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:27:13,387.387 INFO    ] Initializing speech engine...
[2026-06-19 03:27:13,400.400 INFO    ] 2026-06-19 03:27:13
[2026-06-19 03:27:13,687.687 INFO    ] 2026-06-19 03:27:13
[2026-06-19 03:27:13,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:27:13,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:27:13,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:27:14,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:27:14,066.066 INFO    ] time= 19/06/2026 03:27:14
[2026-06-19 03:27:14,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:27:14,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:27:14,190.190 INFO    ] No existing commands found in stream
[2026-06-19 03:27:19,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:27:19,203.203 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 03:27:23,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:27:23,461.461 INFO    ] Checking for system updates...
[2026-06-19 03:27:23,498.498 INFO    ] 200
[2026-06-19 03:27:23,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:23,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:27:23,555.555 INFO    ] No update needed
[2026-06-19 03:27:23,558.558 INFO    ] Checking for camera pi updates...
[2026-06-19 03:27:23,595.595 INFO    ] 200
[2026-06-19 03:27:23,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:23,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:27:23,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:27:23,789.789 INFO    ] No camera update needed
[2026-06-19 03:27:23,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:27:23,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:27:23,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:27:23,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:27:25,846.846 INFO    ] ================================================
[2026-06-19 03:27:25,861.861 INFO    ] Launching Daemon at Fri Jun 19 03:27:25 IST 2026
[2026-06-19 03:27:25,873.873 INFO    ] ================================================
[2026-06-19 03:27:26,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:27:26
[2026-06-19 03:27:27,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:27:27,286.286 INFO    ] Initializing speech engine...
[2026-06-19 03:27:27,293.293 INFO    ] 2026-06-19 03:27:27
[2026-06-19 03:27:27,573.573 INFO    ] 2026-06-19 03:27:27
[2026-06-19 03:27:27,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:27:27,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:27:27,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:27:27,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:27:27,953.953 INFO    ] time= 19/06/2026 03:27:27
[2026-06-19 03:27:27,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:27:28,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:27:28,134.134 INFO    ] No existing commands found in stream
[2026-06-19 03:27:33,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:27:33,170.170 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 03:27:35,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:27:35,609.609 INFO    ] Checking for system updates...
[2026-06-19 03:27:35,650.650 INFO    ] 200
[2026-06-19 03:27:35,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:35,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:27:35,707.707 INFO    ] No update needed
[2026-06-19 03:27:35,709.709 INFO    ] Checking for camera pi updates...
[2026-06-19 03:27:35,743.743 INFO    ] 200
[2026-06-19 03:27:35,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:35,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:27:35,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:27:35,831.831 INFO    ] No camera update needed
[2026-06-19 03:27:35,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:27:35,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:27:35,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:27:35,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:27:37,889.889 INFO    ] ================================================
[2026-06-19 03:27:37,904.904 INFO    ] Launching Daemon at Fri Jun 19 03:27:37 IST 2026
[2026-06-19 03:27:37,915.915 INFO    ] ================================================
[2026-06-19 03:27:38,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:27:38
[2026-06-19 03:27:39,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:27:39,546.546 INFO    ] Initializing speech engine...
[2026-06-19 03:27:39,554.554 INFO    ] 2026-06-19 03:27:39
[2026-06-19 03:27:39,856.856 INFO    ] 2026-06-19 03:27:39
[2026-06-19 03:27:39,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:27:40,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:27:40,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:27:40,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:27:40,368.368 INFO    ] time= 19/06/2026 03:27:40
[2026-06-19 03:27:40,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:27:40,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:27:40,518.518 INFO    ] No existing commands found in stream
[2026-06-19 03:27:45,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:27:45,539.539 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 03:27:46,316.316 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:27:46,319.319 INFO    ] Checking for system updates...
[2026-06-19 03:27:46,357.357 INFO    ] 200
[2026-06-19 03:27:46,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:46,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:27:46,416.416 INFO    ] No update needed
[2026-06-19 03:27:46,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 03:27:46,458.458 INFO    ] 200
[2026-06-19 03:27:46,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:46,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:27:46,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:27:46,539.539 INFO    ] No camera update needed
[2026-06-19 03:27:46,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:27:46,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:27:46,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:27:46,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:27:48,597.597 INFO    ] ================================================
[2026-06-19 03:27:48,613.613 INFO    ] Launching Daemon at Fri Jun 19 03:27:48 IST 2026
[2026-06-19 03:27:48,624.624 INFO    ] ================================================
[2026-06-19 03:27:49,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:27:49
[2026-06-19 03:27:49,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:27:50,062.062 INFO    ] Initializing speech engine...
[2026-06-19 03:27:50,085.085 INFO    ] 2026-06-19 03:27:50
[2026-06-19 03:27:50,340.340 INFO    ] 2026-06-19 03:27:50
[2026-06-19 03:27:50,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:27:50,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:27:50,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:27:50,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:27:50,827.827 INFO    ] time= 19/06/2026 03:27:50
[2026-06-19 03:27:50,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:27:50,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:27:50,962.962 INFO    ] No existing commands found in stream
[2026-06-19 03:27:55,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:27:55,977.977 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 03:27:58,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:27:58,263.263 INFO    ] Checking for system updates...
[2026-06-19 03:27:58,300.300 INFO    ] 200
[2026-06-19 03:27:58,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:58,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:27:58,357.357 INFO    ] No update needed
[2026-06-19 03:27:58,360.360 INFO    ] Checking for camera pi updates...
[2026-06-19 03:27:58,393.393 INFO    ] 200
[2026-06-19 03:27:58,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:27:58,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:27:58,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:27:58,484.484 INFO    ] No camera update needed
[2026-06-19 03:27:58,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:27:58,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:27:58,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:27:58,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:28:00,543.543 INFO    ] ================================================
[2026-06-19 03:28:00,558.558 INFO    ] Launching Daemon at Fri Jun 19 03:28:00 IST 2026
[2026-06-19 03:28:00,569.569 INFO    ] ================================================
[2026-06-19 03:28:01,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:28:01
[2026-06-19 03:28:01,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:28:02,252.252 INFO    ] Initializing speech engine...
[2026-06-19 03:28:02,264.264 INFO    ] 2026-06-19 03:28:02
[2026-06-19 03:28:02,544.544 INFO    ] 2026-06-19 03:28:02
[2026-06-19 03:28:02,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:28:02,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:28:02,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:28:02,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:28:02,955.955 INFO    ] time= 19/06/2026 03:28:02
[2026-06-19 03:28:02,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:28:03,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:28:03,124.124 INFO    ] No existing commands found in stream
[2026-06-19 03:28:08,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:28:08,151.151 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 03:28:10,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:28:10,550.550 INFO    ] Checking for system updates...
[2026-06-19 03:28:10,586.586 INFO    ] 200
[2026-06-19 03:28:10,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:10,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:28:10,644.644 INFO    ] No update needed
[2026-06-19 03:28:10,646.646 INFO    ] Checking for camera pi updates...
[2026-06-19 03:28:10,684.684 INFO    ] 200
[2026-06-19 03:28:10,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:10,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:28:10,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:28:10,773.773 INFO    ] No camera update needed
[2026-06-19 03:28:10,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:28:10,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:28:10,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:28:10,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:28:12,829.829 INFO    ] ================================================
[2026-06-19 03:28:12,846.846 INFO    ] Launching Daemon at Fri Jun 19 03:28:12 IST 2026
[2026-06-19 03:28:12,856.856 INFO    ] ================================================
[2026-06-19 03:28:13,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:28:13
[2026-06-19 03:28:14,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:28:14,483.483 INFO    ] Initializing speech engine...
[2026-06-19 03:28:14,494.494 INFO    ] 2026-06-19 03:28:14
[2026-06-19 03:28:14,801.801 INFO    ] 2026-06-19 03:28:14
[2026-06-19 03:28:14,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:28:15,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:28:15,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:28:15,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:28:15,245.245 INFO    ] time= 19/06/2026 03:28:15
[2026-06-19 03:28:15,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:28:15,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:28:15,451.451 INFO    ] No existing commands found in stream
[2026-06-19 03:28:20,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:28:20,479.479 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 03:28:22,078.078 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:28:22,081.081 INFO    ] Checking for system updates...
[2026-06-19 03:28:22,119.119 INFO    ] 200
[2026-06-19 03:28:22,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:22,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:28:22,179.179 INFO    ] No update needed
[2026-06-19 03:28:22,182.182 INFO    ] Checking for camera pi updates...
[2026-06-19 03:28:22,217.217 INFO    ] 200
[2026-06-19 03:28:22,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:22,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:28:22,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:28:22,308.308 INFO    ] No camera update needed
[2026-06-19 03:28:22,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:28:22,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:28:22,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:28:22,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:28:24,366.366 INFO    ] ================================================
[2026-06-19 03:28:24,382.382 INFO    ] Launching Daemon at Fri Jun 19 03:28:24 IST 2026
[2026-06-19 03:28:24,393.393 INFO    ] ================================================
[2026-06-19 03:28:24,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:28:24
[2026-06-19 03:28:25,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:28:25,854.854 INFO    ] Initializing speech engine...
[2026-06-19 03:28:25,860.860 INFO    ] 2026-06-19 03:28:25
[2026-06-19 03:28:26,157.157 INFO    ] 2026-06-19 03:28:26
[2026-06-19 03:28:26,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:28:26,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:28:26,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:28:26,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:28:26,537.537 INFO    ] time= 19/06/2026 03:28:26
[2026-06-19 03:28:26,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:28:26,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:28:26,661.661 INFO    ] No existing commands found in stream
[2026-06-19 03:28:31,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:28:31,677.677 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 03:28:33,966.966 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:28:33,969.969 INFO    ] Checking for system updates...
[2026-06-19 03:28:34,004.004 INFO    ] 200
[2026-06-19 03:28:34,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:34,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:28:34,062.062 INFO    ] No update needed
[2026-06-19 03:28:34,066.066 INFO    ] Checking for camera pi updates...
[2026-06-19 03:28:34,103.103 INFO    ] 200
[2026-06-19 03:28:34,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:34,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:28:34,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:28:34,188.188 INFO    ] No camera update needed
[2026-06-19 03:28:34,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:28:34,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:28:34,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:28:34,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:28:36,245.245 INFO    ] ================================================
[2026-06-19 03:28:36,261.261 INFO    ] Launching Daemon at Fri Jun 19 03:28:36 IST 2026
[2026-06-19 03:28:36,273.273 INFO    ] ================================================
[2026-06-19 03:28:36,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:28:36
[2026-06-19 03:28:37,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:28:37,724.724 INFO    ] Initializing speech engine...
[2026-06-19 03:28:37,734.734 INFO    ] 2026-06-19 03:28:37
[2026-06-19 03:28:37,987.987 INFO    ] 2026-06-19 03:28:37
[2026-06-19 03:28:38,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:28:38,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:28:38,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:28:38,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:28:38,356.356 INFO    ] time= 19/06/2026 03:28:38
[2026-06-19 03:28:38,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:28:38,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:28:38,523.523 INFO    ] No existing commands found in stream
[2026-06-19 03:28:43,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:28:43,557.557 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 03:28:44,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:28:44,733.733 INFO    ] Checking for system updates...
[2026-06-19 03:28:44,770.770 INFO    ] 200
[2026-06-19 03:28:44,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:44,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:28:44,829.829 INFO    ] No update needed
[2026-06-19 03:28:44,832.832 INFO    ] Checking for camera pi updates...
[2026-06-19 03:28:44,867.867 INFO    ] 200
[2026-06-19 03:28:44,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:44,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:28:44,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:28:44,965.965 INFO    ] No camera update needed
[2026-06-19 03:28:44,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:28:44,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:28:44,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:28:44,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:28:47,022.022 INFO    ] ================================================
[2026-06-19 03:28:47,037.037 INFO    ] Launching Daemon at Fri Jun 19 03:28:47 IST 2026
[2026-06-19 03:28:47,047.047 INFO    ] ================================================
[2026-06-19 03:28:47,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:28:47
[2026-06-19 03:28:48,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:28:48,485.485 INFO    ] Initializing speech engine...
[2026-06-19 03:28:48,495.495 INFO    ] 2026-06-19 03:28:48
[2026-06-19 03:28:48,761.761 INFO    ] 2026-06-19 03:28:48
[2026-06-19 03:28:48,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:28:49,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:28:49,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:28:49,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:28:49,215.215 INFO    ] time= 19/06/2026 03:28:49
[2026-06-19 03:28:49,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:28:49,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:28:49,393.393 INFO    ] No existing commands found in stream
[2026-06-19 03:28:54,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:28:54,409.409 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 03:28:55,587.587 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:28:55,590.590 INFO    ] Checking for system updates...
[2026-06-19 03:28:55,628.628 INFO    ] 200
[2026-06-19 03:28:55,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:55,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:28:55,687.687 INFO    ] No update needed
[2026-06-19 03:28:55,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 03:28:55,725.725 INFO    ] 200
[2026-06-19 03:28:55,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:28:55,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:28:55,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:28:55,815.815 INFO    ] No camera update needed
[2026-06-19 03:28:55,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:28:55,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:28:55,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:28:55,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:28:57,876.876 INFO    ] ================================================
[2026-06-19 03:28:57,892.892 INFO    ] Launching Daemon at Fri Jun 19 03:28:57 IST 2026
[2026-06-19 03:28:57,904.904 INFO    ] ================================================
[2026-06-19 03:28:58,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:28:58
[2026-06-19 03:28:59,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:28:59,362.362 INFO    ] Initializing speech engine...
[2026-06-19 03:28:59,369.369 INFO    ] 2026-06-19 03:28:59
[2026-06-19 03:28:59,631.631 INFO    ] 2026-06-19 03:28:59
[2026-06-19 03:28:59,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:28:59,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:28:59,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:29:00,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:29:00,122.122 INFO    ] time= 19/06/2026 03:29:00
[2026-06-19 03:29:00,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:29:00,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:29:00,318.318 INFO    ] No existing commands found in stream
[2026-06-19 03:29:05,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:29:05,347.347 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 03:29:06,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:29:06,129.129 INFO    ] Checking for system updates...
[2026-06-19 03:29:06,166.166 INFO    ] 200
[2026-06-19 03:29:06,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:06,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:29:06,231.231 INFO    ] No update needed
[2026-06-19 03:29:06,234.234 INFO    ] Checking for camera pi updates...
[2026-06-19 03:29:06,268.268 INFO    ] 200
[2026-06-19 03:29:06,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:06,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:29:06,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:29:06,360.360 INFO    ] No camera update needed
[2026-06-19 03:29:06,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:29:06,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:29:06,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:29:06,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:29:08,417.417 INFO    ] ================================================
[2026-06-19 03:29:08,432.432 INFO    ] Launching Daemon at Fri Jun 19 03:29:08 IST 2026
[2026-06-19 03:29:08,443.443 INFO    ] ================================================
[2026-06-19 03:29:09,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:29:09
[2026-06-19 03:29:09,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:29:09,915.915 INFO    ] Initializing speech engine...
[2026-06-19 03:29:09,922.922 INFO    ] 2026-06-19 03:29:09
[2026-06-19 03:29:10,181.181 INFO    ] 2026-06-19 03:29:10
[2026-06-19 03:29:10,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:29:10,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:29:10,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:29:10,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:29:10,647.647 INFO    ] time= 19/06/2026 03:29:10
[2026-06-19 03:29:10,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:29:10,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:29:10,847.847 INFO    ] No existing commands found in stream
[2026-06-19 03:29:15,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:29:15,877.877 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 03:29:20,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:29:20,146.146 INFO    ] Checking for system updates...
[2026-06-19 03:29:20,183.183 INFO    ] 200
[2026-06-19 03:29:20,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:20,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:29:20,241.241 INFO    ] No update needed
[2026-06-19 03:29:20,243.243 INFO    ] Checking for camera pi updates...
[2026-06-19 03:29:20,282.282 INFO    ] 200
[2026-06-19 03:29:20,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:20,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:29:20,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:29:20,373.373 INFO    ] No camera update needed
[2026-06-19 03:29:20,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:29:20,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:29:20,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:29:20,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:29:22,429.429 INFO    ] ================================================
[2026-06-19 03:29:22,445.445 INFO    ] Launching Daemon at Fri Jun 19 03:29:22 IST 2026
[2026-06-19 03:29:22,455.455 INFO    ] ================================================
[2026-06-19 03:29:23,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:29:23
[2026-06-19 03:29:23,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:29:23,944.944 INFO    ] Initializing speech engine...
[2026-06-19 03:29:23,953.953 INFO    ] 2026-06-19 03:29:23
[2026-06-19 03:29:24,215.215 INFO    ] 2026-06-19 03:29:24
[2026-06-19 03:29:24,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:29:24,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:29:24,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:29:24,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:29:24,684.684 INFO    ] time= 19/06/2026 03:29:24
[2026-06-19 03:29:24,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:29:24,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:29:24,825.825 INFO    ] No existing commands found in stream
[2026-06-19 03:29:29,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:29:29,843.843 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 03:29:32,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:29:32,259.259 INFO    ] Checking for system updates...
[2026-06-19 03:29:32,300.300 INFO    ] 200
[2026-06-19 03:29:32,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:32,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:29:32,366.366 INFO    ] No update needed
[2026-06-19 03:29:32,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 03:29:32,408.408 INFO    ] 200
[2026-06-19 03:29:32,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:32,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:29:32,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:29:32,601.601 INFO    ] No camera update needed
[2026-06-19 03:29:32,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:29:32,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:29:32,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:29:32,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:29:34,661.661 INFO    ] ================================================
[2026-06-19 03:29:34,676.676 INFO    ] Launching Daemon at Fri Jun 19 03:29:34 IST 2026
[2026-06-19 03:29:34,687.687 INFO    ] ================================================
[2026-06-19 03:29:35,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:29:35
[2026-06-19 03:29:35,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:29:36,116.116 INFO    ] Initializing speech engine...
[2026-06-19 03:29:36,123.123 INFO    ] 2026-06-19 03:29:36
[2026-06-19 03:29:36,369.369 INFO    ] 2026-06-19 03:29:36
[2026-06-19 03:29:36,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:29:36,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:29:36,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:29:36,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:29:36,848.848 INFO    ] time= 19/06/2026 03:29:36
[2026-06-19 03:29:36,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:29:36,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:29:36,987.987 INFO    ] No existing commands found in stream
[2026-06-19 03:29:41,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:29:42,001.001 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 03:29:44,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:29:44,323.323 INFO    ] Checking for system updates...
[2026-06-19 03:29:44,360.360 INFO    ] 200
[2026-06-19 03:29:44,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:44,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:29:44,417.417 INFO    ] No update needed
[2026-06-19 03:29:44,420.420 INFO    ] Checking for camera pi updates...
[2026-06-19 03:29:44,457.457 INFO    ] 200
[2026-06-19 03:29:44,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:44,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:29:44,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:29:44,548.548 INFO    ] No camera update needed
[2026-06-19 03:29:44,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:29:44,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:29:44,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:29:44,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:29:46,607.607 INFO    ] ================================================
[2026-06-19 03:29:46,622.622 INFO    ] Launching Daemon at Fri Jun 19 03:29:46 IST 2026
[2026-06-19 03:29:46,634.634 INFO    ] ================================================
[2026-06-19 03:29:47,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:29:47
[2026-06-19 03:29:47,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:29:48,250.250 INFO    ] Initializing speech engine...
[2026-06-19 03:29:48,264.264 INFO    ] 2026-06-19 03:29:48
[2026-06-19 03:29:48,547.547 INFO    ] 2026-06-19 03:29:48
[2026-06-19 03:29:48,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:29:48,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:29:48,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:29:48,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:29:49,019.019 INFO    ] time= 19/06/2026 03:29:48
[2026-06-19 03:29:49,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:29:49,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:29:49,164.164 INFO    ] No existing commands found in stream
[2026-06-19 03:29:54,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:29:54,185.185 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 03:29:55,654.654 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:29:55,658.658 INFO    ] Checking for system updates...
[2026-06-19 03:29:55,695.695 INFO    ] 200
[2026-06-19 03:29:55,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:55,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:29:55,754.754 INFO    ] No update needed
[2026-06-19 03:29:55,757.757 INFO    ] Checking for camera pi updates...
[2026-06-19 03:29:55,791.791 INFO    ] 200
[2026-06-19 03:29:55,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:29:55,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:29:55,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:29:55,887.887 INFO    ] No camera update needed
[2026-06-19 03:29:55,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:29:55,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:29:55,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:29:55,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:29:57,946.946 INFO    ] ================================================
[2026-06-19 03:29:57,961.961 INFO    ] Launching Daemon at Fri Jun 19 03:29:57 IST 2026
[2026-06-19 03:29:57,972.972 INFO    ] ================================================
[2026-06-19 03:29:58,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:29:58
[2026-06-19 03:29:59,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:29:59,375.375 INFO    ] Initializing speech engine...
[2026-06-19 03:29:59,389.389 INFO    ] 2026-06-19 03:29:59
[2026-06-19 03:29:59,656.656 INFO    ] 2026-06-19 03:29:59
[2026-06-19 03:29:59,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:29:59,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:29:59,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:30:00,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:30:00,137.137 INFO    ] time= 19/06/2026 03:30:00
[2026-06-19 03:30:00,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:30:00,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:30:00,277.277 INFO    ] No existing commands found in stream
[2026-06-19 03:30:05,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:30:05,293.293 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 03:30:08,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:30:08,501.501 INFO    ] Checking for system updates...
[2026-06-19 03:30:08,544.544 INFO    ] 200
[2026-06-19 03:30:08,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:08,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:30:08,607.607 INFO    ] No update needed
[2026-06-19 03:30:08,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 03:30:08,645.645 INFO    ] 200
[2026-06-19 03:30:08,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:08,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:30:08,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:30:08,747.747 INFO    ] No camera update needed
[2026-06-19 03:30:08,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:30:08,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:30:08,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:30:08,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:30:10,806.806 INFO    ] ================================================
[2026-06-19 03:30:10,828.828 INFO    ] Launching Daemon at Fri Jun 19 03:30:10 IST 2026
[2026-06-19 03:30:10,838.838 INFO    ] ================================================
[2026-06-19 03:30:11,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:30:11
[2026-06-19 03:30:12,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:30:12,324.324 INFO    ] Initializing speech engine...
[2026-06-19 03:30:12,340.340 INFO    ] 2026-06-19 03:30:12
[2026-06-19 03:30:12,605.605 INFO    ] 2026-06-19 03:30:12
[2026-06-19 03:30:12,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:30:12,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:30:12,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:30:13,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:30:13,061.061 INFO    ] time= 19/06/2026 03:30:13
[2026-06-19 03:30:13,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:30:13,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:30:13,245.245 INFO    ] No existing commands found in stream
[2026-06-19 03:30:18,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:30:18,262.262 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 03:30:18,657.657 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:30:18,660.660 INFO    ] Checking for system updates...
[2026-06-19 03:30:18,696.696 INFO    ] 200
[2026-06-19 03:30:18,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:18,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:30:18,753.753 INFO    ] No update needed
[2026-06-19 03:30:18,756.756 INFO    ] Checking for camera pi updates...
[2026-06-19 03:30:18,789.789 INFO    ] 200
[2026-06-19 03:30:18,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:18,834.834 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:30:18,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:30:18,877.877 INFO    ] No camera update needed
[2026-06-19 03:30:18,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:30:18,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:30:18,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:30:18,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:30:20,933.933 INFO    ] ================================================
[2026-06-19 03:30:20,948.948 INFO    ] Launching Daemon at Fri Jun 19 03:30:20 IST 2026
[2026-06-19 03:30:20,959.959 INFO    ] ================================================
[2026-06-19 03:30:21,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:30:21
[2026-06-19 03:30:22,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:30:22,421.421 INFO    ] Initializing speech engine...
[2026-06-19 03:30:22,429.429 INFO    ] 2026-06-19 03:30:22
[2026-06-19 03:30:22,678.678 INFO    ] 2026-06-19 03:30:22
[2026-06-19 03:30:22,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:30:22,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:30:22,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:30:23,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:30:23,180.180 INFO    ] time= 19/06/2026 03:30:23
[2026-06-19 03:30:23,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:30:23,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:30:23,307.307 INFO    ] No existing commands found in stream
[2026-06-19 03:30:28,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:30:28,320.320 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 03:30:28,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:30:28,790.790 INFO    ] Checking for system updates...
[2026-06-19 03:30:28,830.830 INFO    ] 200
[2026-06-19 03:30:28,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:28,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:30:28,892.892 INFO    ] No update needed
[2026-06-19 03:30:28,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 03:30:28,928.928 INFO    ] 200
[2026-06-19 03:30:28,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:28,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:30:29,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:30:29,013.013 INFO    ] No camera update needed
[2026-06-19 03:30:29,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:30:29,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:30:29,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:30:29,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:30:31,070.070 INFO    ] ================================================
[2026-06-19 03:30:31,086.086 INFO    ] Launching Daemon at Fri Jun 19 03:30:31 IST 2026
[2026-06-19 03:30:31,097.097 INFO    ] ================================================
[2026-06-19 03:30:31,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:30:31
[2026-06-19 03:30:32,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:30:32,574.574 INFO    ] Initializing speech engine...
[2026-06-19 03:30:32,593.593 INFO    ] 2026-06-19 03:30:32
[2026-06-19 03:30:32,859.859 INFO    ] 2026-06-19 03:30:32
[2026-06-19 03:30:32,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:30:33,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:30:33,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:30:33,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:30:33,261.261 INFO    ] time= 19/06/2026 03:30:33
[2026-06-19 03:30:33,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:30:33,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:30:33,486.486 INFO    ] No existing commands found in stream
[2026-06-19 03:30:38,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:30:38,500.500 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 03:30:42,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:30:42,616.616 INFO    ] Checking for system updates...
[2026-06-19 03:30:42,652.652 INFO    ] 200
[2026-06-19 03:30:42,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:42,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:30:42,718.718 INFO    ] No update needed
[2026-06-19 03:30:42,721.721 INFO    ] Checking for camera pi updates...
[2026-06-19 03:30:42,762.762 INFO    ] 200
[2026-06-19 03:30:42,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:42,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:30:42,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:30:42,889.889 INFO    ] No camera update needed
[2026-06-19 03:30:42,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:30:42,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:30:42,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:30:42,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:30:44,952.952 INFO    ] ================================================
[2026-06-19 03:30:44,968.968 INFO    ] Launching Daemon at Fri Jun 19 03:30:44 IST 2026
[2026-06-19 03:30:44,979.979 INFO    ] ================================================
[2026-06-19 03:30:45,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:30:45
[2026-06-19 03:30:46,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:30:46,460.460 INFO    ] Initializing speech engine...
[2026-06-19 03:30:46,465.465 INFO    ] 2026-06-19 03:30:46
[2026-06-19 03:30:46,730.730 INFO    ] 2026-06-19 03:30:46
[2026-06-19 03:30:46,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:30:46,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:30:46,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:30:47,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:30:47,107.107 INFO    ] time= 19/06/2026 03:30:47
[2026-06-19 03:30:47,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:30:47,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:30:47,182.182 INFO    ] No existing commands found in stream
[2026-06-19 03:30:52,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:30:52,198.198 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 03:30:54,391.391 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:30:54,394.394 INFO    ] Checking for system updates...
[2026-06-19 03:30:54,433.433 INFO    ] 200
[2026-06-19 03:30:54,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:54,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:30:54,492.492 INFO    ] No update needed
[2026-06-19 03:30:54,494.494 INFO    ] Checking for camera pi updates...
[2026-06-19 03:30:54,532.532 INFO    ] 200
[2026-06-19 03:30:54,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:30:54,575.575 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:30:54,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:30:54,617.617 INFO    ] No camera update needed
[2026-06-19 03:30:54,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:30:54,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:30:54,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:30:54,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:30:56,674.674 INFO    ] ================================================
[2026-06-19 03:30:56,689.689 INFO    ] Launching Daemon at Fri Jun 19 03:30:56 IST 2026
[2026-06-19 03:30:56,700.700 INFO    ] ================================================
[2026-06-19 03:30:57,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:30:57
[2026-06-19 03:30:57,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:30:58,183.183 INFO    ] Initializing speech engine...
[2026-06-19 03:30:58,189.189 INFO    ] 2026-06-19 03:30:58
[2026-06-19 03:30:58,486.486 INFO    ] 2026-06-19 03:30:58
[2026-06-19 03:30:58,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:30:58,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:30:58,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:30:58,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:30:58,852.852 INFO    ] time= 19/06/2026 03:30:58
[2026-06-19 03:30:58,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:30:58,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:30:58,977.977 INFO    ] No existing commands found in stream
[2026-06-19 03:31:03,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:31:03,993.993 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 03:31:07,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:31:07,744.744 INFO    ] Checking for system updates...
[2026-06-19 03:31:07,780.780 INFO    ] 200
[2026-06-19 03:31:07,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:07,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:31:07,845.845 INFO    ] No update needed
[2026-06-19 03:31:07,848.848 INFO    ] Checking for camera pi updates...
[2026-06-19 03:31:07,882.882 INFO    ] 200
[2026-06-19 03:31:07,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:07,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:31:07,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:31:07,974.974 INFO    ] No camera update needed
[2026-06-19 03:31:07,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:31:07,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:31:07,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:31:07,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:31:10,033.033 INFO    ] ================================================
[2026-06-19 03:31:10,051.051 INFO    ] Launching Daemon at Fri Jun 19 03:31:10 IST 2026
[2026-06-19 03:31:10,062.062 INFO    ] ================================================
[2026-06-19 03:31:10,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:31:10
[2026-06-19 03:31:11,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:31:11,541.541 INFO    ] Initializing speech engine...
[2026-06-19 03:31:11,551.551 INFO    ] 2026-06-19 03:31:11
[2026-06-19 03:31:11,811.811 INFO    ] 2026-06-19 03:31:11
[2026-06-19 03:31:11,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:31:12,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:31:12,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:31:12,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:31:12,255.255 INFO    ] time= 19/06/2026 03:31:12
[2026-06-19 03:31:12,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:31:12,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:31:12,456.456 INFO    ] No existing commands found in stream
[2026-06-19 03:31:17,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:31:17,470.470 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 03:31:19,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:31:19,092.092 INFO    ] Checking for system updates...
[2026-06-19 03:31:19,132.132 INFO    ] 200
[2026-06-19 03:31:19,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:19,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:31:19,189.189 INFO    ] No update needed
[2026-06-19 03:31:19,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 03:31:19,225.225 INFO    ] 200
[2026-06-19 03:31:19,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:19,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:31:19,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:31:19,312.312 INFO    ] No camera update needed
[2026-06-19 03:31:19,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:31:19,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:31:19,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:31:19,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:31:21,367.367 INFO    ] ================================================
[2026-06-19 03:31:21,383.383 INFO    ] Launching Daemon at Fri Jun 19 03:31:21 IST 2026
[2026-06-19 03:31:21,395.395 INFO    ] ================================================
[2026-06-19 03:31:21,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:31:21
[2026-06-19 03:31:22,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:31:22,836.836 INFO    ] Initializing speech engine...
[2026-06-19 03:31:22,845.845 INFO    ] 2026-06-19 03:31:22
[2026-06-19 03:31:23,152.152 INFO    ] 2026-06-19 03:31:23
[2026-06-19 03:31:23,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:31:23,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:31:23,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:31:23,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:31:23,512.512 INFO    ] time= 19/06/2026 03:31:23
[2026-06-19 03:31:23,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:31:23,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:31:23,598.598 INFO    ] No existing commands found in stream
[2026-06-19 03:31:28,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:31:28,615.615 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 03:31:31,416.416 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:31:31,419.419 INFO    ] Checking for system updates...
[2026-06-19 03:31:31,455.455 INFO    ] 200
[2026-06-19 03:31:31,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:31,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:31:31,513.513 INFO    ] No update needed
[2026-06-19 03:31:31,515.515 INFO    ] Checking for camera pi updates...
[2026-06-19 03:31:31,551.551 INFO    ] 200
[2026-06-19 03:31:31,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:31,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:31:31,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:31:31,636.636 INFO    ] No camera update needed
[2026-06-19 03:31:31,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:31:31,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:31:31,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:31:31,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:31:33,701.701 INFO    ] ================================================
[2026-06-19 03:31:33,716.716 INFO    ] Launching Daemon at Fri Jun 19 03:31:33 IST 2026
[2026-06-19 03:31:33,727.727 INFO    ] ================================================
[2026-06-19 03:31:34,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:31:34
[2026-06-19 03:31:34,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:31:35,168.168 INFO    ] Initializing speech engine...
[2026-06-19 03:31:35,177.177 INFO    ] 2026-06-19 03:31:35
[2026-06-19 03:31:35,425.425 INFO    ] 2026-06-19 03:31:35
[2026-06-19 03:31:35,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:31:35,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:31:35,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:31:35,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:31:35,798.798 INFO    ] time= 19/06/2026 03:31:35
[2026-06-19 03:31:35,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:31:35,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:31:35,974.974 INFO    ] No existing commands found in stream
[2026-06-19 03:31:41,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:31:41,007.007 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 03:31:44,931.931 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:31:44,933.933 INFO    ] Checking for system updates...
[2026-06-19 03:31:44,975.975 INFO    ] 200
[2026-06-19 03:31:44,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:45,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:31:45,047.047 INFO    ] No update needed
[2026-06-19 03:31:45,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 03:31:45,084.084 INFO    ] 200
[2026-06-19 03:31:45,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:45,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:31:45,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:31:45,283.283 INFO    ] No camera update needed
[2026-06-19 03:31:45,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:31:45,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:31:45,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:31:45,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:31:47,340.340 INFO    ] ================================================
[2026-06-19 03:31:47,355.355 INFO    ] Launching Daemon at Fri Jun 19 03:31:47 IST 2026
[2026-06-19 03:31:47,367.367 INFO    ] ================================================
[2026-06-19 03:31:47,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:31:47
[2026-06-19 03:31:48,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:31:48,840.840 INFO    ] Initializing speech engine...
[2026-06-19 03:31:48,850.850 INFO    ] 2026-06-19 03:31:48
[2026-06-19 03:31:49,112.112 INFO    ] 2026-06-19 03:31:49
[2026-06-19 03:31:49,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:31:49,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:31:49,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:31:49,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:31:49,578.578 INFO    ] time= 19/06/2026 03:31:49
[2026-06-19 03:31:49,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:31:49,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:31:49,721.721 INFO    ] No existing commands found in stream
[2026-06-19 03:31:54,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:31:54,736.736 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 03:31:57,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:31:57,864.864 INFO    ] Checking for system updates...
[2026-06-19 03:31:57,901.901 INFO    ] 200
[2026-06-19 03:31:57,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:57,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:31:57,959.959 INFO    ] No update needed
[2026-06-19 03:31:57,962.962 INFO    ] Checking for camera pi updates...
[2026-06-19 03:31:57,996.996 INFO    ] 200
[2026-06-19 03:31:57,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:31:58,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:31:58,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:31:58,091.091 INFO    ] No camera update needed
[2026-06-19 03:31:58,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:31:58,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:31:58,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:31:58,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:32:00,150.150 INFO    ] ================================================
[2026-06-19 03:32:00,165.165 INFO    ] Launching Daemon at Fri Jun 19 03:32:00 IST 2026
[2026-06-19 03:32:00,176.176 INFO    ] ================================================
[2026-06-19 03:32:00,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:32:00
[2026-06-19 03:32:01,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:32:01,943.943 INFO    ] Initializing speech engine...
[2026-06-19 03:32:01,957.957 INFO    ] 2026-06-19 03:32:01
[2026-06-19 03:32:02,317.317 INFO    ] 2026-06-19 03:32:02
[2026-06-19 03:32:02,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:32:02,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:32:02,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:32:02,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:32:02,805.805 INFO    ] time= 19/06/2026 03:32:02
[2026-06-19 03:32:02,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:32:02,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:32:02,951.951 INFO    ] No existing commands found in stream
[2026-06-19 03:32:07,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:32:07,967.967 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 03:32:10,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:32:10,215.215 INFO    ] Checking for system updates...
[2026-06-19 03:32:10,256.256 INFO    ] 200
[2026-06-19 03:32:10,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:10,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:32:10,314.314 INFO    ] No update needed
[2026-06-19 03:32:10,317.317 INFO    ] Checking for camera pi updates...
[2026-06-19 03:32:10,351.351 INFO    ] 200
[2026-06-19 03:32:10,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:10,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:32:10,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:32:10,436.436 INFO    ] No camera update needed
[2026-06-19 03:32:10,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:32:10,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:32:10,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:32:10,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:32:12,493.493 INFO    ] ================================================
[2026-06-19 03:32:12,508.508 INFO    ] Launching Daemon at Fri Jun 19 03:32:12 IST 2026
[2026-06-19 03:32:12,519.519 INFO    ] ================================================
[2026-06-19 03:32:13,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:32:13
[2026-06-19 03:32:13,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:32:13,990.990 INFO    ] Initializing speech engine...
[2026-06-19 03:32:13,999.999 INFO    ] 2026-06-19 03:32:13
[2026-06-19 03:32:14,260.260 INFO    ] 2026-06-19 03:32:14
[2026-06-19 03:32:14,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:32:14,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:32:14,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:32:14,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:32:14,689.689 INFO    ] time= 19/06/2026 03:32:14
[2026-06-19 03:32:14,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:32:14,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:32:14,869.869 INFO    ] No existing commands found in stream
[2026-06-19 03:32:19,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:32:19,884.884 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 03:32:23,552.552 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:32:23,555.555 INFO    ] Checking for system updates...
[2026-06-19 03:32:23,596.596 INFO    ] 200
[2026-06-19 03:32:23,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:23,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:32:23,661.661 INFO    ] No update needed
[2026-06-19 03:32:23,663.663 INFO    ] Checking for camera pi updates...
[2026-06-19 03:32:23,701.701 INFO    ] 200
[2026-06-19 03:32:23,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:23,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:32:23,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:32:23,799.799 INFO    ] No camera update needed
[2026-06-19 03:32:23,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:32:23,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:32:23,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:32:23,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:32:25,853.853 INFO    ] ================================================
[2026-06-19 03:32:25,868.868 INFO    ] Launching Daemon at Fri Jun 19 03:32:25 IST 2026
[2026-06-19 03:32:25,879.879 INFO    ] ================================================
[2026-06-19 03:32:26,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:32:26
[2026-06-19 03:32:27,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:32:27,309.309 INFO    ] Initializing speech engine...
[2026-06-19 03:32:27,318.318 INFO    ] 2026-06-19 03:32:27
[2026-06-19 03:32:27,580.580 INFO    ] 2026-06-19 03:32:27
[2026-06-19 03:32:27,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:32:27,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:32:27,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:32:27,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:32:28,041.041 INFO    ] time= 19/06/2026 03:32:28
[2026-06-19 03:32:28,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:32:28,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:32:28,187.187 INFO    ] No existing commands found in stream
[2026-06-19 03:32:33,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:32:33,202.202 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 03:32:36,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:32:36,369.369 INFO    ] Checking for system updates...
[2026-06-19 03:32:36,410.410 INFO    ] 200
[2026-06-19 03:32:36,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:36,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:32:36,481.481 INFO    ] No update needed
[2026-06-19 03:32:36,484.484 INFO    ] Checking for camera pi updates...
[2026-06-19 03:32:36,519.519 INFO    ] 200
[2026-06-19 03:32:36,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:36,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:32:36,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:32:36,611.611 INFO    ] No camera update needed
[2026-06-19 03:32:36,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:32:36,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:32:36,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:32:36,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:32:38,670.670 INFO    ] ================================================
[2026-06-19 03:32:38,685.685 INFO    ] Launching Daemon at Fri Jun 19 03:32:38 IST 2026
[2026-06-19 03:32:38,696.696 INFO    ] ================================================
[2026-06-19 03:32:39,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:32:39
[2026-06-19 03:32:40,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:32:40,367.367 INFO    ] Initializing speech engine...
[2026-06-19 03:32:40,374.374 INFO    ] 2026-06-19 03:32:40
[2026-06-19 03:32:40,685.685 INFO    ] 2026-06-19 03:32:40
[2026-06-19 03:32:40,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:32:40,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:32:40,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:32:41,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:32:41,126.126 INFO    ] time= 19/06/2026 03:32:41
[2026-06-19 03:32:41,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:32:41,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:32:41,321.321 INFO    ] No existing commands found in stream
[2026-06-19 03:32:46,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:32:46,345.345 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 03:32:47,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:32:47,384.384 INFO    ] Checking for system updates...
[2026-06-19 03:32:47,421.421 INFO    ] 200
[2026-06-19 03:32:47,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:47,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:32:47,480.480 INFO    ] No update needed
[2026-06-19 03:32:47,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 03:32:47,518.518 INFO    ] 200
[2026-06-19 03:32:47,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:47,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:32:47,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:32:47,602.602 INFO    ] No camera update needed
[2026-06-19 03:32:47,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:32:47,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:32:47,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:32:47,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:32:49,663.663 INFO    ] ================================================
[2026-06-19 03:32:49,678.678 INFO    ] Launching Daemon at Fri Jun 19 03:32:49 IST 2026
[2026-06-19 03:32:49,689.689 INFO    ] ================================================
[2026-06-19 03:32:50,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:32:50
[2026-06-19 03:32:50,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:32:51,154.154 INFO    ] Initializing speech engine...
[2026-06-19 03:32:51,163.163 INFO    ] 2026-06-19 03:32:51
[2026-06-19 03:32:51,423.423 INFO    ] 2026-06-19 03:32:51
[2026-06-19 03:32:51,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:32:51,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:32:51,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:32:51,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:32:51,899.899 INFO    ] time= 19/06/2026 03:32:51
[2026-06-19 03:32:51,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:32:51,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:32:52,102.102 INFO    ] No existing commands found in stream
[2026-06-19 03:32:57,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:32:57,122.122 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 03:32:58,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:32:58,918.918 INFO    ] Checking for system updates...
[2026-06-19 03:32:58,960.960 INFO    ] 200
[2026-06-19 03:32:58,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:59,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:32:59,055.055 INFO    ] No update needed
[2026-06-19 03:32:59,058.058 INFO    ] Checking for camera pi updates...
[2026-06-19 03:32:59,099.099 INFO    ] 200
[2026-06-19 03:32:59,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:32:59,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:32:59,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:32:59,199.199 INFO    ] No camera update needed
[2026-06-19 03:32:59,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:32:59,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:32:59,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:32:59,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:33:01,261.261 INFO    ] ================================================
[2026-06-19 03:33:01,276.276 INFO    ] Launching Daemon at Fri Jun 19 03:33:01 IST 2026
[2026-06-19 03:33:01,286.286 INFO    ] ================================================
[2026-06-19 03:33:02,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:33:02
[2026-06-19 03:33:02,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:33:03,237.237 INFO    ] Initializing speech engine...
[2026-06-19 03:33:03,251.251 INFO    ] 2026-06-19 03:33:03
[2026-06-19 03:33:03,541.541 INFO    ] 2026-06-19 03:33:03
[2026-06-19 03:33:03,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:33:03,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:33:03,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:33:03,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:33:03,912.912 INFO    ] time= 19/06/2026 03:33:03
[2026-06-19 03:33:03,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:33:03,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:33:03,994.994 INFO    ] No existing commands found in stream
[2026-06-19 03:33:09,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:33:09,035.035 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 03:33:12,037.037 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:33:12,040.040 INFO    ] Checking for system updates...
[2026-06-19 03:33:12,076.076 INFO    ] 200
[2026-06-19 03:33:12,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:33:12,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:33:12,140.140 INFO    ] No update needed
[2026-06-19 03:33:12,142.142 INFO    ] Checking for camera pi updates...
[2026-06-19 03:33:12,175.175 INFO    ] 200
[2026-06-19 03:33:12,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:33:12,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:33:12,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:33:12,259.259 INFO    ] No camera update needed
[2026-06-19 03:33:12,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:33:12,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:33:12,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:33:12,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:33:14,315.315 INFO    ] ================================================
[2026-06-19 03:33:14,330.330 INFO    ] Launching Daemon at Fri Jun 19 03:33:14 IST 2026
[2026-06-19 03:33:14,341.341 INFO    ] ================================================
[2026-06-19 03:33:14,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:33:14
[2026-06-19 03:33:15,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:33:15,840.840 INFO    ] Initializing speech engine...
[2026-06-19 03:33:15,847.847 INFO    ] 2026-06-19 03:33:15
[2026-06-19 03:33:16,105.105 INFO    ] 2026-06-19 03:33:16
[2026-06-19 03:33:16,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:33:16,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:33:16,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:33:16,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:33:16,535.535 INFO    ] time= 19/06/2026 03:33:16
[2026-06-19 03:33:16,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:33:16,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:33:16,715.715 INFO    ] No existing commands found in stream
[2026-06-19 03:33:21,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:33:21,730.730 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 03:33:25,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:33:25,681.681 INFO    ] Checking for system updates...
[2026-06-19 03:33:25,718.718 INFO    ] 200
[2026-06-19 03:33:25,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:33:25,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:33:25,785.785 INFO    ] No update needed
[2026-06-19 03:33:25,789.789 INFO    ] Checking for camera pi updates...
[2026-06-19 03:33:25,824.824 INFO    ] 200
[2026-06-19 03:33:25,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:33:25,885.885 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:33:25,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:33:25,934.934 INFO    ] No camera update needed
[2026-06-19 03:33:25,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:33:25,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:33:25,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:33:25,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:33:28,998.998 INFO    ] ================================================
[2026-06-19 03:33:28,013.013 INFO    ] Launching Daemon at Fri Jun 19 03:33:28 IST 2026
[2026-06-19 03:33:28,024.024 INFO    ] ================================================
[2026-06-19 03:33:28,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:33:28
[2026-06-19 03:33:29,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:33:29,459.459 INFO    ] Initializing speech engine...
[2026-06-19 03:33:29,467.467 INFO    ] 2026-06-19 03:33:29
[2026-06-19 03:33:29,712.712 INFO    ] 2026-06-19 03:33:29
[2026-06-19 03:33:29,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:33:29,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:33:30,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:33:30,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:33:30,182.182 INFO    ] time= 19/06/2026 03:33:30
[2026-06-19 03:33:30,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:33:30,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:33:30,324.324 INFO    ] No existing commands found in stream
[2026-06-19 03:33:35,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:33:35,339.339 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 03:33:37,665.665 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:33:37,668.668 INFO    ] Checking for system updates...
[2026-06-19 03:33:37,710.710 INFO    ] 200
[2026-06-19 03:33:37,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:33:37,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:33:37,777.777 INFO    ] No update needed
[2026-06-19 03:33:37,781.781 INFO    ] Checking for camera pi updates...
[2026-06-19 03:33:37,819.819 INFO    ] 200
[2026-06-19 03:33:37,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:33:37,867.867 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:33:37,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:33:37,920.920 INFO    ] No camera update needed
[2026-06-19 03:33:37,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:33:37,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:33:37,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:33:37,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:33:39,978.978 INFO    ] ================================================
[2026-06-19 03:33:39,993.993 INFO    ] Launching Daemon at Fri Jun 19 03:33:39 IST 2026
[2026-06-19 03:33:40,004.004 INFO    ] ================================================
[2026-06-19 03:33:40,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:33:40
[2026-06-19 03:33:41,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:33:41,647.647 INFO    ] Initializing speech engine...
[2026-06-19 03:33:41,653.653 INFO    ] 2026-06-19 03:33:41
[2026-06-19 03:33:41,938.938 INFO    ] 2026-06-19 03:33:41
[2026-06-19 03:33:41,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:33:42,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:33:42,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:33:42,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:33:42,407.407 INFO    ] time= 19/06/2026 03:33:42
[2026-06-19 03:33:42,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:33:42,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:33:42,556.556 INFO    ] No existing commands found in stream
[2026-06-19 03:33:47,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:33:47,572.572 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 03:33:48,965.965 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:33:48,968.968 INFO    ] Checking for system updates...
[2026-06-19 03:33:49,008.008 INFO    ] 200
[2026-06-19 03:33:49,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:33:49,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:33:49,066.066 INFO    ] No update needed
[2026-06-19 03:33:49,069.069 INFO    ] Checking for camera pi updates...
[2026-06-19 03:33:49,102.102 INFO    ] 200
[2026-06-19 03:33:49,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:33:49,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:33:49,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:33:49,276.276 INFO    ] No camera update needed
[2026-06-19 03:33:49,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:33:49,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:33:49,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:33:49,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:33:51,333.333 INFO    ] ================================================
[2026-06-19 03:33:51,349.349 INFO    ] Launching Daemon at Fri Jun 19 03:33:51 IST 2026
[2026-06-19 03:33:51,360.360 INFO    ] ================================================
[2026-06-19 03:33:51,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:33:51
[2026-06-19 03:33:52,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:33:52,819.819 INFO    ] Initializing speech engine...
[2026-06-19 03:33:52,833.833 INFO    ] 2026-06-19 03:33:52
[2026-06-19 03:33:53,100.100 INFO    ] 2026-06-19 03:33:53
[2026-06-19 03:33:53,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:33:53,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:33:53,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:33:53,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:33:53,448.448 INFO    ] time= 19/06/2026 03:33:53
[2026-06-19 03:33:53,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:33:53,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:33:53,529.529 INFO    ] No existing commands found in stream
[2026-06-19 03:33:58,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:33:58,544.544 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 03:34:02,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:34:02,219.219 INFO    ] Checking for system updates...
[2026-06-19 03:34:02,261.261 INFO    ] 200
[2026-06-19 03:34:02,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:02,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:34:02,345.345 INFO    ] No update needed
[2026-06-19 03:34:02,349.349 INFO    ] Checking for camera pi updates...
[2026-06-19 03:34:02,390.390 INFO    ] 200
[2026-06-19 03:34:02,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:02,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:34:02,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:34:02,479.479 INFO    ] No camera update needed
[2026-06-19 03:34:02,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:34:02,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:34:02,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:34:02,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:34:04,545.545 INFO    ] ================================================
[2026-06-19 03:34:04,561.561 INFO    ] Launching Daemon at Fri Jun 19 03:34:04 IST 2026
[2026-06-19 03:34:04,572.572 INFO    ] ================================================
[2026-06-19 03:34:05,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:34:05
[2026-06-19 03:34:05,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:34:06,035.035 INFO    ] Initializing speech engine...
[2026-06-19 03:34:06,044.044 INFO    ] 2026-06-19 03:34:06
[2026-06-19 03:34:06,314.314 INFO    ] 2026-06-19 03:34:06
[2026-06-19 03:34:06,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:34:06,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:34:06,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:34:06,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:34:06,666.666 INFO    ] time= 19/06/2026 03:34:06
[2026-06-19 03:34:06,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:34:06,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:34:06,764.764 INFO    ] No existing commands found in stream
[2026-06-19 03:34:11,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:34:11,779.779 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 03:34:13,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:34:13,940.940 INFO    ] Checking for system updates...
[2026-06-19 03:34:13,980.980 INFO    ] 200
[2026-06-19 03:34:13,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:14,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:34:14,038.038 INFO    ] No update needed
[2026-06-19 03:34:14,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 03:34:14,074.074 INFO    ] 200
[2026-06-19 03:34:14,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:14,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:34:14,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:34:14,162.162 INFO    ] No camera update needed
[2026-06-19 03:34:14,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:34:14,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:34:14,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:34:14,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:34:16,218.218 INFO    ] ================================================
[2026-06-19 03:34:16,233.233 INFO    ] Launching Daemon at Fri Jun 19 03:34:16 IST 2026
[2026-06-19 03:34:16,244.244 INFO    ] ================================================
[2026-06-19 03:34:16,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:34:16
[2026-06-19 03:34:17,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:34:17,908.908 INFO    ] Initializing speech engine...
[2026-06-19 03:34:17,922.922 INFO    ] 2026-06-19 03:34:17
[2026-06-19 03:34:18,239.239 INFO    ] 2026-06-19 03:34:18
[2026-06-19 03:34:18,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:34:18,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:34:18,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:34:18,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:34:18,762.762 INFO    ] time= 19/06/2026 03:34:18
[2026-06-19 03:34:18,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:34:18,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:34:18,904.904 INFO    ] No existing commands found in stream
[2026-06-19 03:34:23,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:34:23,931.931 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 03:34:25,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:34:25,135.135 INFO    ] Checking for system updates...
[2026-06-19 03:34:25,173.173 INFO    ] 200
[2026-06-19 03:34:25,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:25,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:34:25,232.232 INFO    ] No update needed
[2026-06-19 03:34:25,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 03:34:25,270.270 INFO    ] 200
[2026-06-19 03:34:25,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:25,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:34:25,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:34:25,362.362 INFO    ] No camera update needed
[2026-06-19 03:34:25,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:34:25,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:34:25,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:34:25,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:34:27,421.421 INFO    ] ================================================
[2026-06-19 03:34:27,437.437 INFO    ] Launching Daemon at Fri Jun 19 03:34:27 IST 2026
[2026-06-19 03:34:27,447.447 INFO    ] ================================================
[2026-06-19 03:34:28,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:34:28
[2026-06-19 03:34:28,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:34:28,854.854 INFO    ] Initializing speech engine...
[2026-06-19 03:34:28,867.867 INFO    ] 2026-06-19 03:34:28
[2026-06-19 03:34:29,132.132 INFO    ] 2026-06-19 03:34:29
[2026-06-19 03:34:29,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:34:29,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:34:29,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:34:29,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:34:29,597.597 INFO    ] time= 19/06/2026 03:34:29
[2026-06-19 03:34:29,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:34:29,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:34:29,770.770 INFO    ] No existing commands found in stream
[2026-06-19 03:34:34,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:34:34,780.780 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 03:34:37,721.721 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:34:37,723.723 INFO    ] Checking for system updates...
[2026-06-19 03:34:37,759.759 INFO    ] 200
[2026-06-19 03:34:37,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:37,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:34:37,816.816 INFO    ] No update needed
[2026-06-19 03:34:37,819.819 INFO    ] Checking for camera pi updates...
[2026-06-19 03:34:37,858.858 INFO    ] 200
[2026-06-19 03:34:37,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:37,906.906 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:34:37,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:34:37,946.946 INFO    ] No camera update needed
[2026-06-19 03:34:37,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:34:37,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:34:37,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:34:37,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:34:40,004.004 INFO    ] ================================================
[2026-06-19 03:34:40,019.019 INFO    ] Launching Daemon at Fri Jun 19 03:34:40 IST 2026
[2026-06-19 03:34:40,029.029 INFO    ] ================================================
[2026-06-19 03:34:40,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:34:40
[2026-06-19 03:34:41,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:34:41,439.439 INFO    ] Initializing speech engine...
[2026-06-19 03:34:41,448.448 INFO    ] 2026-06-19 03:34:41
[2026-06-19 03:34:41,746.746 INFO    ] 2026-06-19 03:34:41
[2026-06-19 03:34:41,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:34:41,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:34:41,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:34:42,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:34:42,094.094 INFO    ] time= 19/06/2026 03:34:42
[2026-06-19 03:34:42,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:34:42,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:34:42,178.178 INFO    ] No existing commands found in stream
[2026-06-19 03:34:47,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:34:47,193.193 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 03:34:48,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:34:48,474.474 INFO    ] Checking for system updates...
[2026-06-19 03:34:48,515.515 INFO    ] 200
[2026-06-19 03:34:48,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:48,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:34:48,580.580 INFO    ] No update needed
[2026-06-19 03:34:48,582.582 INFO    ] Checking for camera pi updates...
[2026-06-19 03:34:48,617.617 INFO    ] 200
[2026-06-19 03:34:48,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:34:48,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:34:48,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:34:48,693.693 INFO    ] No camera update needed
[2026-06-19 03:34:48,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:34:48,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:34:48,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:34:48,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:34:50,751.751 INFO    ] ================================================
[2026-06-19 03:34:50,766.766 INFO    ] Launching Daemon at Fri Jun 19 03:34:50 IST 2026
[2026-06-19 03:34:50,777.777 INFO    ] ================================================
[2026-06-19 03:34:51,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:34:51
[2026-06-19 03:34:51,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:34:52,184.184 INFO    ] Initializing speech engine...
[2026-06-19 03:34:52,204.204 INFO    ] 2026-06-19 03:34:52
[2026-06-19 03:34:52,462.462 INFO    ] 2026-06-19 03:34:52
[2026-06-19 03:34:52,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:34:52,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:34:52,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:34:52,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:34:52,930.930 INFO    ] time= 19/06/2026 03:34:52
[2026-06-19 03:34:52,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:34:53,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:34:53,075.075 INFO    ] No existing commands found in stream
[2026-06-19 03:34:58,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:34:58,089.089 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 03:35:00,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:35:00,220.220 INFO    ] Checking for system updates...
[2026-06-19 03:35:00,256.256 INFO    ] 200
[2026-06-19 03:35:00,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:00,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:35:00,314.314 INFO    ] No update needed
[2026-06-19 03:35:00,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 03:35:00,354.354 INFO    ] 200
[2026-06-19 03:35:00,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:00,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:35:00,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:35:00,448.448 INFO    ] No camera update needed
[2026-06-19 03:35:00,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:35:00,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:35:00,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:35:00,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:35:02,531.531 INFO    ] ================================================
[2026-06-19 03:35:02,552.552 INFO    ] Launching Daemon at Fri Jun 19 03:35:02 IST 2026
[2026-06-19 03:35:02,569.569 INFO    ] ================================================
[2026-06-19 03:35:03,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:35:03
[2026-06-19 03:35:03,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:35:04,116.116 INFO    ] Initializing speech engine...
[2026-06-19 03:35:04,130.130 INFO    ] 2026-06-19 03:35:04
[2026-06-19 03:35:04,427.427 INFO    ] 2026-06-19 03:35:04
[2026-06-19 03:35:04,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:35:04,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:35:04,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:35:04,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:35:04,818.818 INFO    ] time= 19/06/2026 03:35:04
[2026-06-19 03:35:04,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:35:04,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:35:04,947.947 INFO    ] No existing commands found in stream
[2026-06-19 03:35:09,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:35:09,960.960 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 03:35:13,657.657 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:35:13,659.659 INFO    ] Checking for system updates...
[2026-06-19 03:35:13,701.701 INFO    ] 200
[2026-06-19 03:35:13,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:13,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:35:13,767.767 INFO    ] No update needed
[2026-06-19 03:35:13,769.769 INFO    ] Checking for camera pi updates...
[2026-06-19 03:35:13,808.808 INFO    ] 200
[2026-06-19 03:35:13,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:13,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:35:13,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:35:13,899.899 INFO    ] No camera update needed
[2026-06-19 03:35:13,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:35:13,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:35:13,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:35:13,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:35:15,957.957 INFO    ] ================================================
[2026-06-19 03:35:15,972.972 INFO    ] Launching Daemon at Fri Jun 19 03:35:15 IST 2026
[2026-06-19 03:35:15,982.982 INFO    ] ================================================
[2026-06-19 03:35:16,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:35:16
[2026-06-19 03:35:17,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:35:17,453.453 INFO    ] Initializing speech engine...
[2026-06-19 03:35:17,462.462 INFO    ] 2026-06-19 03:35:17
[2026-06-19 03:35:17,735.735 INFO    ] 2026-06-19 03:35:17
[2026-06-19 03:35:17,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:35:17,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:35:17,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:35:18,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:35:18,094.094 INFO    ] time= 19/06/2026 03:35:18
[2026-06-19 03:35:18,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:35:18,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:35:18,176.176 INFO    ] No existing commands found in stream
[2026-06-19 03:35:23,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:35:23,190.190 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 03:35:25,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:35:25,229.229 INFO    ] Checking for system updates...
[2026-06-19 03:35:25,270.270 INFO    ] 200
[2026-06-19 03:35:25,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:25,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:35:25,329.329 INFO    ] No update needed
[2026-06-19 03:35:25,332.332 INFO    ] Checking for camera pi updates...
[2026-06-19 03:35:25,367.367 INFO    ] 200
[2026-06-19 03:35:25,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:25,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:35:25,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:35:25,468.468 INFO    ] No camera update needed
[2026-06-19 03:35:25,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:35:25,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:35:25,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:35:25,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:35:27,529.529 INFO    ] ================================================
[2026-06-19 03:35:27,544.544 INFO    ] Launching Daemon at Fri Jun 19 03:35:27 IST 2026
[2026-06-19 03:35:27,555.555 INFO    ] ================================================
[2026-06-19 03:35:28,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:35:28
[2026-06-19 03:35:28,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:35:29,261.261 INFO    ] Initializing speech engine...
[2026-06-19 03:35:29,273.273 INFO    ] 2026-06-19 03:35:29
[2026-06-19 03:35:29,562.562 INFO    ] 2026-06-19 03:35:29
[2026-06-19 03:35:29,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:35:29,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:35:29,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:35:30,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:35:30,099.099 INFO    ] time= 19/06/2026 03:35:30
[2026-06-19 03:35:30,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:35:30,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:35:30,275.275 INFO    ] No existing commands found in stream
[2026-06-19 03:35:35,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:35:35,304.304 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 03:35:38,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:35:38,171.171 INFO    ] Checking for system updates...
[2026-06-19 03:35:38,214.214 INFO    ] 200
[2026-06-19 03:35:38,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:38,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:35:38,288.288 INFO    ] No update needed
[2026-06-19 03:35:38,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 03:35:38,331.331 INFO    ] 200
[2026-06-19 03:35:38,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:38,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:35:38,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:35:38,434.434 INFO    ] No camera update needed
[2026-06-19 03:35:38,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:35:38,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:35:38,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:35:38,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:35:40,493.493 INFO    ] ================================================
[2026-06-19 03:35:40,508.508 INFO    ] Launching Daemon at Fri Jun 19 03:35:40 IST 2026
[2026-06-19 03:35:40,519.519 INFO    ] ================================================
[2026-06-19 03:35:41,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:35:41
[2026-06-19 03:35:41,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:35:41,961.961 INFO    ] Initializing speech engine...
[2026-06-19 03:35:41,970.970 INFO    ] 2026-06-19 03:35:41
[2026-06-19 03:35:42,231.231 INFO    ] 2026-06-19 03:35:42
[2026-06-19 03:35:42,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:35:42,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:35:42,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:35:42,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:35:42,696.696 INFO    ] time= 19/06/2026 03:35:42
[2026-06-19 03:35:42,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:35:42,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:35:42,836.836 INFO    ] No existing commands found in stream
[2026-06-19 03:35:47,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:35:47,851.851 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 03:35:50,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:35:50,227.227 INFO    ] Checking for system updates...
[2026-06-19 03:35:50,268.268 INFO    ] 200
[2026-06-19 03:35:50,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:50,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:35:50,328.328 INFO    ] No update needed
[2026-06-19 03:35:50,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 03:35:50,365.365 INFO    ] 200
[2026-06-19 03:35:50,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:35:50,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:35:50,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:35:50,458.458 INFO    ] No camera update needed
[2026-06-19 03:35:50,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:35:50,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:35:50,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:35:50,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:35:52,517.517 INFO    ] ================================================
[2026-06-19 03:35:52,532.532 INFO    ] Launching Daemon at Fri Jun 19 03:35:52 IST 2026
[2026-06-19 03:35:52,542.542 INFO    ] ================================================
[2026-06-19 03:35:53,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:35:53
[2026-06-19 03:35:53,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:35:54,136.136 INFO    ] Initializing speech engine...
[2026-06-19 03:35:54,145.145 INFO    ] 2026-06-19 03:35:54
[2026-06-19 03:35:54,427.427 INFO    ] 2026-06-19 03:35:54
[2026-06-19 03:35:54,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:35:54,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:35:54,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:35:54,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:35:54,791.791 INFO    ] time= 19/06/2026 03:35:54
[2026-06-19 03:35:54,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:35:54,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:35:54,888.888 INFO    ] No existing commands found in stream
[2026-06-19 03:35:59,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:35:59,902.902 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 03:36:00,826.826 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:36:00,829.829 INFO    ] Checking for system updates...
[2026-06-19 03:36:00,866.866 INFO    ] 200
[2026-06-19 03:36:00,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:00,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:36:00,930.930 INFO    ] No update needed
[2026-06-19 03:36:00,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 03:36:00,966.966 INFO    ] 200
[2026-06-19 03:36:00,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:01,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:36:01,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:36:01,156.156 INFO    ] No camera update needed
[2026-06-19 03:36:01,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:36:01,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:36:01,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:36:01,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:36:03,214.214 INFO    ] ================================================
[2026-06-19 03:36:03,229.229 INFO    ] Launching Daemon at Fri Jun 19 03:36:03 IST 2026
[2026-06-19 03:36:03,240.240 INFO    ] ================================================
[2026-06-19 03:36:03,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:36:03
[2026-06-19 03:36:04,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:36:04,716.716 INFO    ] Initializing speech engine...
[2026-06-19 03:36:04,726.726 INFO    ] 2026-06-19 03:36:04
[2026-06-19 03:36:04,980.980 INFO    ] 2026-06-19 03:36:04
[2026-06-19 03:36:05,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:36:05,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:36:05,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:36:05,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:36:05,354.354 INFO    ] time= 19/06/2026 03:36:05
[2026-06-19 03:36:05,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:36:05,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:36:05,437.437 INFO    ] No existing commands found in stream
[2026-06-19 03:36:10,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:36:10,475.475 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 03:36:14,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:36:14,578.578 INFO    ] Checking for system updates...
[2026-06-19 03:36:14,616.616 INFO    ] 200
[2026-06-19 03:36:14,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:14,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:36:14,676.676 INFO    ] No update needed
[2026-06-19 03:36:14,679.679 INFO    ] Checking for camera pi updates...
[2026-06-19 03:36:14,717.717 INFO    ] 200
[2026-06-19 03:36:14,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:14,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:36:14,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:36:14,810.810 INFO    ] No camera update needed
[2026-06-19 03:36:14,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:36:14,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:36:14,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:36:14,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:36:16,869.869 INFO    ] ================================================
[2026-06-19 03:36:16,884.884 INFO    ] Launching Daemon at Fri Jun 19 03:36:16 IST 2026
[2026-06-19 03:36:16,895.895 INFO    ] ================================================
[2026-06-19 03:36:17,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:36:17
[2026-06-19 03:36:18,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:36:18,354.354 INFO    ] Initializing speech engine...
[2026-06-19 03:36:18,364.364 INFO    ] 2026-06-19 03:36:18
[2026-06-19 03:36:18,639.639 INFO    ] 2026-06-19 03:36:18
[2026-06-19 03:36:18,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:36:18,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:36:18,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:36:19,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:36:19,075.075 INFO    ] time= 19/06/2026 03:36:19
[2026-06-19 03:36:19,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:36:19,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:36:19,237.237 INFO    ] No existing commands found in stream
[2026-06-19 03:36:24,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:36:24,264.264 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 03:36:27,330.330 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:36:27,333.333 INFO    ] Checking for system updates...
[2026-06-19 03:36:27,368.368 INFO    ] 200
[2026-06-19 03:36:27,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:27,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:36:27,426.426 INFO    ] No update needed
[2026-06-19 03:36:27,428.428 INFO    ] Checking for camera pi updates...
[2026-06-19 03:36:27,466.466 INFO    ] 200
[2026-06-19 03:36:27,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:27,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:36:27,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:36:27,556.556 INFO    ] No camera update needed
[2026-06-19 03:36:27,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:36:27,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:36:27,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:36:27,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:36:29,616.616 INFO    ] ================================================
[2026-06-19 03:36:29,631.631 INFO    ] Launching Daemon at Fri Jun 19 03:36:29 IST 2026
[2026-06-19 03:36:29,642.642 INFO    ] ================================================
[2026-06-19 03:36:30,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:36:30
[2026-06-19 03:36:30,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:36:31,255.255 INFO    ] Initializing speech engine...
[2026-06-19 03:36:31,263.263 INFO    ] 2026-06-19 03:36:31
[2026-06-19 03:36:31,543.543 INFO    ] 2026-06-19 03:36:31
[2026-06-19 03:36:31,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:36:31,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:36:31,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:36:31,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:36:32,069.069 INFO    ] time= 19/06/2026 03:36:32
[2026-06-19 03:36:32,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:36:32,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:36:32,293.293 INFO    ] No existing commands found in stream
[2026-06-19 03:36:37,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:36:37,318.318 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 03:36:38,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:36:38,756.756 INFO    ] Checking for system updates...
[2026-06-19 03:36:38,798.798 INFO    ] 200
[2026-06-19 03:36:38,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:38,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:36:38,858.858 INFO    ] No update needed
[2026-06-19 03:36:38,860.860 INFO    ] Checking for camera pi updates...
[2026-06-19 03:36:38,895.895 INFO    ] 200
[2026-06-19 03:36:38,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:38,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:36:38,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:36:38,977.977 INFO    ] No camera update needed
[2026-06-19 03:36:38,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:36:38,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:36:38,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:36:38,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:36:41,040.040 INFO    ] ================================================
[2026-06-19 03:36:41,055.055 INFO    ] Launching Daemon at Fri Jun 19 03:36:41 IST 2026
[2026-06-19 03:36:41,068.068 INFO    ] ================================================
[2026-06-19 03:36:41,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:36:41
[2026-06-19 03:36:42,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:36:42,538.538 INFO    ] Initializing speech engine...
[2026-06-19 03:36:42,546.546 INFO    ] 2026-06-19 03:36:42
[2026-06-19 03:36:42,829.829 INFO    ] 2026-06-19 03:36:42
[2026-06-19 03:36:42,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:36:43,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:36:43,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:36:43,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:36:43,316.316 INFO    ] time= 19/06/2026 03:36:43
[2026-06-19 03:36:43,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:36:43,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:36:43,514.514 INFO    ] No existing commands found in stream
[2026-06-19 03:36:48,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:36:48,551.551 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 03:36:51,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:36:51,535.535 INFO    ] Checking for system updates...
[2026-06-19 03:36:51,581.581 INFO    ] 200
[2026-06-19 03:36:51,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:51,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:36:51,648.648 INFO    ] No update needed
[2026-06-19 03:36:51,651.651 INFO    ] Checking for camera pi updates...
[2026-06-19 03:36:51,687.687 INFO    ] 200
[2026-06-19 03:36:51,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:36:51,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:36:51,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:36:51,777.777 INFO    ] No camera update needed
[2026-06-19 03:36:51,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:36:51,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:36:51,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:36:51,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:36:53,836.836 INFO    ] ================================================
[2026-06-19 03:36:53,851.851 INFO    ] Launching Daemon at Fri Jun 19 03:36:53 IST 2026
[2026-06-19 03:36:53,862.862 INFO    ] ================================================
[2026-06-19 03:36:54,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:36:54
[2026-06-19 03:36:55,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:36:55,487.487 INFO    ] Initializing speech engine...
[2026-06-19 03:36:55,498.498 INFO    ] 2026-06-19 03:36:55
[2026-06-19 03:36:55,782.782 INFO    ] 2026-06-19 03:36:55
[2026-06-19 03:36:55,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:36:56,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:36:56,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:36:56,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:36:56,317.317 INFO    ] time= 19/06/2026 03:36:56
[2026-06-19 03:36:56,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:36:56,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:36:56,475.475 INFO    ] No existing commands found in stream
[2026-06-19 03:37:01,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:37:01,509.509 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 03:37:03,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:37:03,541.541 INFO    ] Checking for system updates...
[2026-06-19 03:37:03,578.578 INFO    ] 200
[2026-06-19 03:37:03,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:03,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:37:03,638.638 INFO    ] No update needed
[2026-06-19 03:37:03,641.641 INFO    ] Checking for camera pi updates...
[2026-06-19 03:37:03,677.677 INFO    ] 200
[2026-06-19 03:37:03,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:03,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:37:03,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:37:03,751.751 INFO    ] No camera update needed
[2026-06-19 03:37:03,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:37:03,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:37:03,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:37:03,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:37:05,807.807 INFO    ] ================================================
[2026-06-19 03:37:05,822.822 INFO    ] Launching Daemon at Fri Jun 19 03:37:05 IST 2026
[2026-06-19 03:37:05,833.833 INFO    ] ================================================
[2026-06-19 03:37:06,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:37:06
[2026-06-19 03:37:07,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:37:07,469.469 INFO    ] Initializing speech engine...
[2026-06-19 03:37:07,483.483 INFO    ] 2026-06-19 03:37:07
[2026-06-19 03:37:07,766.766 INFO    ] 2026-06-19 03:37:07
[2026-06-19 03:37:07,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:37:08,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:37:08,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:37:08,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:37:08,307.307 INFO    ] time= 19/06/2026 03:37:08
[2026-06-19 03:37:08,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:37:08,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:37:08,437.437 INFO    ] No existing commands found in stream
[2026-06-19 03:37:13,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:37:13,471.471 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 03:37:15,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:37:15,711.711 INFO    ] Checking for system updates...
[2026-06-19 03:37:15,748.748 INFO    ] 200
[2026-06-19 03:37:15,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:15,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:37:15,806.806 INFO    ] No update needed
[2026-06-19 03:37:15,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 03:37:15,843.843 INFO    ] 200
[2026-06-19 03:37:15,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:15,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:37:15,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:37:15,936.936 INFO    ] No camera update needed
[2026-06-19 03:37:15,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:37:15,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:37:15,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:37:15,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:37:17,994.994 INFO    ] ================================================
[2026-06-19 03:37:18,009.009 INFO    ] Launching Daemon at Fri Jun 19 03:37:18 IST 2026
[2026-06-19 03:37:18,020.020 INFO    ] ================================================
[2026-06-19 03:37:18,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:37:18
[2026-06-19 03:37:19,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:37:19,439.439 INFO    ] Initializing speech engine...
[2026-06-19 03:37:19,445.445 INFO    ] 2026-06-19 03:37:19
[2026-06-19 03:37:19,744.744 INFO    ] 2026-06-19 03:37:19
[2026-06-19 03:37:19,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:37:19,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:37:19,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:37:20,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:37:20,129.129 INFO    ] time= 19/06/2026 03:37:20
[2026-06-19 03:37:20,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:37:20,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:37:20,236.236 INFO    ] No existing commands found in stream
[2026-06-19 03:37:25,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:37:25,279.279 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 03:37:28,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:37:28,825.825 INFO    ] Checking for system updates...
[2026-06-19 03:37:28,862.862 INFO    ] 200
[2026-06-19 03:37:28,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:28,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:37:28,924.924 INFO    ] No update needed
[2026-06-19 03:37:28,927.927 INFO    ] Checking for camera pi updates...
[2026-06-19 03:37:28,961.961 INFO    ] 200
[2026-06-19 03:37:28,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:29,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:37:29,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:37:29,049.049 INFO    ] No camera update needed
[2026-06-19 03:37:29,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:37:29,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:37:29,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:37:29,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:37:31,105.105 INFO    ] ================================================
[2026-06-19 03:37:31,120.120 INFO    ] Launching Daemon at Fri Jun 19 03:37:31 IST 2026
[2026-06-19 03:37:31,130.130 INFO    ] ================================================
[2026-06-19 03:37:31,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:37:31
[2026-06-19 03:37:32,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:37:32,702.702 INFO    ] Initializing speech engine...
[2026-06-19 03:37:32,712.712 INFO    ] 2026-06-19 03:37:32
[2026-06-19 03:37:32,971.971 INFO    ] 2026-06-19 03:37:32
[2026-06-19 03:37:33,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:37:33,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:37:33,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:37:33,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:37:33,423.423 INFO    ] time= 19/06/2026 03:37:33
[2026-06-19 03:37:33,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:37:33,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:37:33,590.590 INFO    ] No existing commands found in stream
[2026-06-19 03:37:38,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:37:38,600.600 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 03:37:41,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:37:41,644.644 INFO    ] Checking for system updates...
[2026-06-19 03:37:41,680.680 INFO    ] 200
[2026-06-19 03:37:41,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:41,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:37:41,741.741 INFO    ] No update needed
[2026-06-19 03:37:41,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 03:37:41,778.778 INFO    ] 200
[2026-06-19 03:37:41,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:41,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:37:41,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:37:41,870.870 INFO    ] No camera update needed
[2026-06-19 03:37:41,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:37:41,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:37:41,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:37:41,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:37:43,926.926 INFO    ] ================================================
[2026-06-19 03:37:43,941.941 INFO    ] Launching Daemon at Fri Jun 19 03:37:43 IST 2026
[2026-06-19 03:37:43,951.951 INFO    ] ================================================
[2026-06-19 03:37:44,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:37:44
[2026-06-19 03:37:45,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:37:45,404.404 INFO    ] Initializing speech engine...
[2026-06-19 03:37:45,416.416 INFO    ] 2026-06-19 03:37:45
[2026-06-19 03:37:45,679.679 INFO    ] 2026-06-19 03:37:45
[2026-06-19 03:37:45,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:37:45,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:37:45,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:37:46,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:37:46,053.053 INFO    ] time= 19/06/2026 03:37:46
[2026-06-19 03:37:46,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:37:46,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:37:46,234.234 INFO    ] No existing commands found in stream
[2026-06-19 03:37:51,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:37:51,264.264 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 03:37:53,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:37:53,079.079 INFO    ] Checking for system updates...
[2026-06-19 03:37:53,116.116 INFO    ] 200
[2026-06-19 03:37:53,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:53,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:37:53,173.173 INFO    ] No update needed
[2026-06-19 03:37:53,176.176 INFO    ] Checking for camera pi updates...
[2026-06-19 03:37:53,210.210 INFO    ] 200
[2026-06-19 03:37:53,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:37:53,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:37:53,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:37:53,299.299 INFO    ] No camera update needed
[2026-06-19 03:37:53,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:37:53,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:37:53,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:37:53,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:37:55,354.354 INFO    ] ================================================
[2026-06-19 03:37:55,369.369 INFO    ] Launching Daemon at Fri Jun 19 03:37:55 IST 2026
[2026-06-19 03:37:55,380.380 INFO    ] ================================================
[2026-06-19 03:37:55,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:37:55
[2026-06-19 03:37:56,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:37:56,850.850 INFO    ] Initializing speech engine...
[2026-06-19 03:37:56,857.857 INFO    ] 2026-06-19 03:37:56
[2026-06-19 03:37:57,120.120 INFO    ] 2026-06-19 03:37:57
[2026-06-19 03:37:57,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:37:57,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:37:57,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:37:57,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:37:57,586.586 INFO    ] time= 19/06/2026 03:37:57
[2026-06-19 03:37:57,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:37:57,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:37:57,813.813 INFO    ] No existing commands found in stream
[2026-06-19 03:38:02,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:38:02,838.838 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 03:38:03,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:38:03,457.457 INFO    ] Checking for system updates...
[2026-06-19 03:38:03,497.497 INFO    ] 200
[2026-06-19 03:38:03,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:03,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:38:03,554.554 INFO    ] No update needed
[2026-06-19 03:38:03,557.557 INFO    ] Checking for camera pi updates...
[2026-06-19 03:38:03,592.592 INFO    ] 200
[2026-06-19 03:38:03,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:03,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:38:03,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:38:03,788.788 INFO    ] No camera update needed
[2026-06-19 03:38:03,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:38:03,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:38:03,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:38:03,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:38:05,845.845 INFO    ] ================================================
[2026-06-19 03:38:05,860.860 INFO    ] Launching Daemon at Fri Jun 19 03:38:05 IST 2026
[2026-06-19 03:38:05,870.870 INFO    ] ================================================
[2026-06-19 03:38:06,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:38:06
[2026-06-19 03:38:07,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:38:07,389.389 INFO    ] Initializing speech engine...
[2026-06-19 03:38:07,408.408 INFO    ] 2026-06-19 03:38:07
[2026-06-19 03:38:07,669.669 INFO    ] 2026-06-19 03:38:07
[2026-06-19 03:38:07,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:38:07,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:38:07,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:38:08,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:38:08,080.080 INFO    ] time= 19/06/2026 03:38:08
[2026-06-19 03:38:08,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:38:08,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:38:08,224.224 INFO    ] No existing commands found in stream
[2026-06-19 03:38:13,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:38:13,252.252 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 03:38:14,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:38:14,640.640 INFO    ] Checking for system updates...
[2026-06-19 03:38:14,676.676 INFO    ] 200
[2026-06-19 03:38:14,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:14,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:38:14,738.738 INFO    ] No update needed
[2026-06-19 03:38:14,740.740 INFO    ] Checking for camera pi updates...
[2026-06-19 03:38:14,773.773 INFO    ] 200
[2026-06-19 03:38:14,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:14,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:38:14,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:38:14,859.859 INFO    ] No camera update needed
[2026-06-19 03:38:14,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:38:14,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:38:14,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:38:14,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:38:16,914.914 INFO    ] ================================================
[2026-06-19 03:38:16,929.929 INFO    ] Launching Daemon at Fri Jun 19 03:38:16 IST 2026
[2026-06-19 03:38:16,939.939 INFO    ] ================================================
[2026-06-19 03:38:17,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:38:17
[2026-06-19 03:38:18,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:38:18,361.361 INFO    ] Initializing speech engine...
[2026-06-19 03:38:18,370.370 INFO    ] 2026-06-19 03:38:18
[2026-06-19 03:38:18,619.619 INFO    ] 2026-06-19 03:38:18
[2026-06-19 03:38:18,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:38:18,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:38:18,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:38:18,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:38:18,994.994 INFO    ] time= 19/06/2026 03:38:18
[2026-06-19 03:38:19,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:38:19,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:38:19,158.158 INFO    ] No existing commands found in stream
[2026-06-19 03:38:24,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:38:24,186.186 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 03:38:26,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:38:26,376.376 INFO    ] Checking for system updates...
[2026-06-19 03:38:26,412.412 INFO    ] 200
[2026-06-19 03:38:26,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:26,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:38:26,481.481 INFO    ] No update needed
[2026-06-19 03:38:26,484.484 INFO    ] Checking for camera pi updates...
[2026-06-19 03:38:26,518.518 INFO    ] 200
[2026-06-19 03:38:26,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:26,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:38:26,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:38:26,617.617 INFO    ] No camera update needed
[2026-06-19 03:38:26,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:38:26,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:38:26,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:38:26,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:38:28,675.675 INFO    ] ================================================
[2026-06-19 03:38:28,690.690 INFO    ] Launching Daemon at Fri Jun 19 03:38:28 IST 2026
[2026-06-19 03:38:28,700.700 INFO    ] ================================================
[2026-06-19 03:38:29,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:38:29
[2026-06-19 03:38:29,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:38:30,201.201 INFO    ] Initializing speech engine...
[2026-06-19 03:38:30,206.206 INFO    ] 2026-06-19 03:38:30
[2026-06-19 03:38:30,480.480 INFO    ] 2026-06-19 03:38:30
[2026-06-19 03:38:30,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:38:30,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:38:30,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:38:30,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:38:30,836.836 INFO    ] time= 19/06/2026 03:38:30
[2026-06-19 03:38:30,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:38:30,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:38:30,935.935 INFO    ] No existing commands found in stream
[2026-06-19 03:38:35,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:38:35,969.969 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 03:38:37,499.499 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:38:37,501.501 INFO    ] Checking for system updates...
[2026-06-19 03:38:37,540.540 INFO    ] 200
[2026-06-19 03:38:37,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:37,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:38:37,603.603 INFO    ] No update needed
[2026-06-19 03:38:37,605.605 INFO    ] Checking for camera pi updates...
[2026-06-19 03:38:37,639.639 INFO    ] 200
[2026-06-19 03:38:37,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:37,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:38:37,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:38:37,728.728 INFO    ] No camera update needed
[2026-06-19 03:38:37,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:38:37,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:38:37,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:38:37,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:38:39,786.786 INFO    ] ================================================
[2026-06-19 03:38:39,801.801 INFO    ] Launching Daemon at Fri Jun 19 03:38:39 IST 2026
[2026-06-19 03:38:39,812.812 INFO    ] ================================================
[2026-06-19 03:38:40,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:38:40
[2026-06-19 03:38:40,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:38:41,268.268 INFO    ] Initializing speech engine...
[2026-06-19 03:38:41,279.279 INFO    ] 2026-06-19 03:38:41
[2026-06-19 03:38:41,540.540 INFO    ] 2026-06-19 03:38:41
[2026-06-19 03:38:41,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:38:41,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:38:41,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:38:41,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:38:42,022.022 INFO    ] time= 19/06/2026 03:38:41
[2026-06-19 03:38:42,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:38:42,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:38:42,213.213 INFO    ] No existing commands found in stream
[2026-06-19 03:38:47,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:38:47,238.238 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 03:38:49,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:38:49,981.981 INFO    ] Checking for system updates...
[2026-06-19 03:38:50,018.018 INFO    ] 200
[2026-06-19 03:38:50,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:50,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:38:50,078.078 INFO    ] No update needed
[2026-06-19 03:38:50,081.081 INFO    ] Checking for camera pi updates...
[2026-06-19 03:38:50,114.114 INFO    ] 200
[2026-06-19 03:38:50,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:38:50,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:38:50,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:38:50,204.204 INFO    ] No camera update needed
[2026-06-19 03:38:50,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:38:50,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:38:50,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:38:50,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:38:52,261.261 INFO    ] ================================================
[2026-06-19 03:38:52,276.276 INFO    ] Launching Daemon at Fri Jun 19 03:38:52 IST 2026
[2026-06-19 03:38:52,287.287 INFO    ] ================================================
[2026-06-19 03:38:52,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:38:52
[2026-06-19 03:38:53,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:38:53,749.749 INFO    ] Initializing speech engine...
[2026-06-19 03:38:53,758.758 INFO    ] 2026-06-19 03:38:53
[2026-06-19 03:38:54,018.018 INFO    ] 2026-06-19 03:38:54
[2026-06-19 03:38:54,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:38:54,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:38:54,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:38:54,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:38:54,502.502 INFO    ] time= 19/06/2026 03:38:54
[2026-06-19 03:38:54,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:38:54,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:38:54,701.701 INFO    ] No existing commands found in stream
[2026-06-19 03:38:59,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:38:59,731.731 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 03:39:01,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:39:01,294.294 INFO    ] Checking for system updates...
[2026-06-19 03:39:01,366.366 INFO    ] 200
[2026-06-19 03:39:01,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:01,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:39:01,455.455 INFO    ] No update needed
[2026-06-19 03:39:01,458.458 INFO    ] Checking for camera pi updates...
[2026-06-19 03:39:01,548.548 INFO    ] 200
[2026-06-19 03:39:01,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:01,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:39:01,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:39:01,673.673 INFO    ] No camera update needed
[2026-06-19 03:39:01,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:39:01,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:39:01,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:39:01,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:39:03,735.735 INFO    ] ================================================
[2026-06-19 03:39:03,750.750 INFO    ] Launching Daemon at Fri Jun 19 03:39:03 IST 2026
[2026-06-19 03:39:03,761.761 INFO    ] ================================================
[2026-06-19 03:39:04,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:39:04
[2026-06-19 03:39:05,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:39:05,361.361 INFO    ] Initializing speech engine...
[2026-06-19 03:39:05,370.370 INFO    ] 2026-06-19 03:39:05
[2026-06-19 03:39:05,645.645 INFO    ] 2026-06-19 03:39:05
[2026-06-19 03:39:05,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:39:05,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:39:05,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:39:06,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:39:06,117.117 INFO    ] time= 19/06/2026 03:39:06
[2026-06-19 03:39:06,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:39:06,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:39:06,286.286 INFO    ] No existing commands found in stream
[2026-06-19 03:39:11,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:39:11,300.300 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 03:39:14,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:39:14,538.538 INFO    ] Checking for system updates...
[2026-06-19 03:39:14,579.579 INFO    ] 200
[2026-06-19 03:39:14,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:14,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:39:14,635.635 INFO    ] No update needed
[2026-06-19 03:39:14,638.638 INFO    ] Checking for camera pi updates...
[2026-06-19 03:39:14,671.671 INFO    ] 200
[2026-06-19 03:39:14,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:14,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:39:14,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:39:14,757.757 INFO    ] No camera update needed
[2026-06-19 03:39:14,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:39:14,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:39:14,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:39:14,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:39:16,812.812 INFO    ] ================================================
[2026-06-19 03:39:16,828.828 INFO    ] Launching Daemon at Fri Jun 19 03:39:16 IST 2026
[2026-06-19 03:39:16,838.838 INFO    ] ================================================
[2026-06-19 03:39:17,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:39:17
[2026-06-19 03:39:18,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:39:18,451.451 INFO    ] Initializing speech engine...
[2026-06-19 03:39:18,462.462 INFO    ] 2026-06-19 03:39:18
[2026-06-19 03:39:18,774.774 INFO    ] 2026-06-19 03:39:18
[2026-06-19 03:39:18,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:39:19,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:39:19,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:39:19,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:39:19,292.292 INFO    ] time= 19/06/2026 03:39:19
[2026-06-19 03:39:19,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:39:19,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:39:19,440.440 INFO    ] No existing commands found in stream
[2026-06-19 03:39:24,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:39:24,469.469 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 03:39:28,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:39:28,264.264 INFO    ] Checking for system updates...
[2026-06-19 03:39:28,301.301 INFO    ] 200
[2026-06-19 03:39:28,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:28,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:39:28,361.361 INFO    ] No update needed
[2026-06-19 03:39:28,363.363 INFO    ] Checking for camera pi updates...
[2026-06-19 03:39:28,398.398 INFO    ] 200
[2026-06-19 03:39:28,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:28,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:39:28,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:39:28,493.493 INFO    ] No camera update needed
[2026-06-19 03:39:28,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:39:28,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:39:28,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:39:28,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:39:30,551.551 INFO    ] ================================================
[2026-06-19 03:39:30,566.566 INFO    ] Launching Daemon at Fri Jun 19 03:39:30 IST 2026
[2026-06-19 03:39:30,576.576 INFO    ] ================================================
[2026-06-19 03:39:31,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:39:31
[2026-06-19 03:39:31,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:39:32,057.057 INFO    ] Initializing speech engine...
[2026-06-19 03:39:32,080.080 INFO    ] 2026-06-19 03:39:32
[2026-06-19 03:39:32,361.361 INFO    ] 2026-06-19 03:39:32
[2026-06-19 03:39:32,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:39:32,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:39:32,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:39:32,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:39:32,750.750 INFO    ] time= 19/06/2026 03:39:32
[2026-06-19 03:39:32,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:39:32,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:39:32,831.831 INFO    ] No existing commands found in stream
[2026-06-19 03:39:37,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:39:37,859.859 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 03:39:39,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:39:39,420.420 INFO    ] Checking for system updates...
[2026-06-19 03:39:39,460.460 INFO    ] 200
[2026-06-19 03:39:39,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:39,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:39:39,517.517 INFO    ] No update needed
[2026-06-19 03:39:39,519.519 INFO    ] Checking for camera pi updates...
[2026-06-19 03:39:39,557.557 INFO    ] 200
[2026-06-19 03:39:39,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:39,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:39:39,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:39:39,648.648 INFO    ] No camera update needed
[2026-06-19 03:39:39,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:39:39,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:39:39,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:39:39,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:39:41,703.703 INFO    ] ================================================
[2026-06-19 03:39:41,718.718 INFO    ] Launching Daemon at Fri Jun 19 03:39:41 IST 2026
[2026-06-19 03:39:41,729.729 INFO    ] ================================================
[2026-06-19 03:39:42,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:39:42
[2026-06-19 03:39:42,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:39:43,134.134 INFO    ] Initializing speech engine...
[2026-06-19 03:39:43,142.142 INFO    ] 2026-06-19 03:39:43
[2026-06-19 03:39:43,417.417 INFO    ] 2026-06-19 03:39:43
[2026-06-19 03:39:43,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:39:43,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:39:43,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:39:43,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:39:43,794.794 INFO    ] time= 19/06/2026 03:39:43
[2026-06-19 03:39:43,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:39:43,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:39:43,963.963 INFO    ] No existing commands found in stream
[2026-06-19 03:39:48,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:39:48,991.991 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 03:39:52,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:39:52,534.534 INFO    ] Checking for system updates...
[2026-06-19 03:39:52,569.569 INFO    ] 200
[2026-06-19 03:39:52,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:52,632.632 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:39:52,634.634 INFO    ] No update needed
[2026-06-19 03:39:52,636.636 INFO    ] Checking for camera pi updates...
[2026-06-19 03:39:52,670.670 INFO    ] 200
[2026-06-19 03:39:52,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:39:52,716.716 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:39:52,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:39:52,770.770 INFO    ] No camera update needed
[2026-06-19 03:39:52,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:39:52,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:39:52,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:39:52,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:39:54,828.828 INFO    ] ================================================
[2026-06-19 03:39:54,845.845 INFO    ] Launching Daemon at Fri Jun 19 03:39:54 IST 2026
[2026-06-19 03:39:54,856.856 INFO    ] ================================================
[2026-06-19 03:39:55,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:39:55
[2026-06-19 03:39:56,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:39:56,376.376 INFO    ] Initializing speech engine...
[2026-06-19 03:39:56,390.390 INFO    ] 2026-06-19 03:39:56
[2026-06-19 03:39:56,658.658 INFO    ] 2026-06-19 03:39:56
[2026-06-19 03:39:56,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:39:56,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:39:56,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:39:57,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:39:57,046.046 INFO    ] time= 19/06/2026 03:39:57
[2026-06-19 03:39:57,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:39:57,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:39:57,127.127 INFO    ] No existing commands found in stream
[2026-06-19 03:40:02,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:40:02,171.171 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 03:40:04,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:40:04,584.584 INFO    ] Checking for system updates...
[2026-06-19 03:40:04,620.620 INFO    ] 200
[2026-06-19 03:40:04,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:04,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:40:04,689.689 INFO    ] No update needed
[2026-06-19 03:40:04,691.691 INFO    ] Checking for camera pi updates...
[2026-06-19 03:40:04,728.728 INFO    ] 200
[2026-06-19 03:40:04,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:04,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:40:04,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:40:04,822.822 INFO    ] No camera update needed
[2026-06-19 03:40:04,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:40:04,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:40:04,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:40:04,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:40:06,883.883 INFO    ] ================================================
[2026-06-19 03:40:06,899.899 INFO    ] Launching Daemon at Fri Jun 19 03:40:06 IST 2026
[2026-06-19 03:40:06,910.910 INFO    ] ================================================
[2026-06-19 03:40:07,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:40:07
[2026-06-19 03:40:08,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:40:08,390.390 INFO    ] Initializing speech engine...
[2026-06-19 03:40:08,400.400 INFO    ] 2026-06-19 03:40:08
[2026-06-19 03:40:08,653.653 INFO    ] 2026-06-19 03:40:08
[2026-06-19 03:40:08,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:40:08,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:40:08,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:40:09,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:40:09,026.026 INFO    ] time= 19/06/2026 03:40:09
[2026-06-19 03:40:09,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:40:09,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:40:09,124.124 INFO    ] No existing commands found in stream
[2026-06-19 03:40:14,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:40:14,139.139 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 03:40:18,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:40:18,439.439 INFO    ] Checking for system updates...
[2026-06-19 03:40:18,476.476 INFO    ] 200
[2026-06-19 03:40:18,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:18,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:40:18,545.545 INFO    ] No update needed
[2026-06-19 03:40:18,548.548 INFO    ] Checking for camera pi updates...
[2026-06-19 03:40:18,581.581 INFO    ] 200
[2026-06-19 03:40:18,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:18,633.633 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:40:18,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:40:18,787.787 INFO    ] No camera update needed
[2026-06-19 03:40:18,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:40:18,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:40:18,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:40:18,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:40:20,843.843 INFO    ] ================================================
[2026-06-19 03:40:20,859.859 INFO    ] Launching Daemon at Fri Jun 19 03:40:20 IST 2026
[2026-06-19 03:40:20,870.870 INFO    ] ================================================
[2026-06-19 03:40:21,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:40:21
[2026-06-19 03:40:22,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:40:22,359.359 INFO    ] Initializing speech engine...
[2026-06-19 03:40:22,368.368 INFO    ] 2026-06-19 03:40:22
[2026-06-19 03:40:22,625.625 INFO    ] 2026-06-19 03:40:22
[2026-06-19 03:40:22,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:40:22,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:40:22,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:40:23,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:40:23,071.071 INFO    ] time= 19/06/2026 03:40:23
[2026-06-19 03:40:23,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:40:23,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:40:23,234.234 INFO    ] No existing commands found in stream
[2026-06-19 03:40:28,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:40:28,248.248 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 03:40:32,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:40:32,018.018 INFO    ] Checking for system updates...
[2026-06-19 03:40:32,054.054 INFO    ] 200
[2026-06-19 03:40:32,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:32,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:40:32,111.111 INFO    ] No update needed
[2026-06-19 03:40:32,114.114 INFO    ] Checking for camera pi updates...
[2026-06-19 03:40:32,148.148 INFO    ] 200
[2026-06-19 03:40:32,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:32,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:40:32,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:40:32,244.244 INFO    ] No camera update needed
[2026-06-19 03:40:32,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:40:32,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:40:32,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:40:32,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:40:34,308.308 INFO    ] ================================================
[2026-06-19 03:40:34,324.324 INFO    ] Launching Daemon at Fri Jun 19 03:40:34 IST 2026
[2026-06-19 03:40:34,336.336 INFO    ] ================================================
[2026-06-19 03:40:34,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:40:34
[2026-06-19 03:40:35,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:40:35,780.780 INFO    ] Initializing speech engine...
[2026-06-19 03:40:35,786.786 INFO    ] 2026-06-19 03:40:35
[2026-06-19 03:40:36,087.087 INFO    ] 2026-06-19 03:40:36
[2026-06-19 03:40:36,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:40:36,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:40:36,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:40:36,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:40:36,475.475 INFO    ] time= 19/06/2026 03:40:36
[2026-06-19 03:40:36,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:40:36,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:40:36,602.602 INFO    ] No existing commands found in stream
[2026-06-19 03:40:41,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:40:41,617.617 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 03:40:45,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:40:45,879.879 INFO    ] Checking for system updates...
[2026-06-19 03:40:45,915.915 INFO    ] 200
[2026-06-19 03:40:45,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:45,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:40:45,980.980 INFO    ] No update needed
[2026-06-19 03:40:45,982.982 INFO    ] Checking for camera pi updates...
[2026-06-19 03:40:46,016.016 INFO    ] 200
[2026-06-19 03:40:46,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:46,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:40:46,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:40:46,114.114 INFO    ] No camera update needed
[2026-06-19 03:40:46,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:40:46,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:40:46,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:40:46,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:40:48,173.173 INFO    ] ================================================
[2026-06-19 03:40:48,189.189 INFO    ] Launching Daemon at Fri Jun 19 03:40:48 IST 2026
[2026-06-19 03:40:48,200.200 INFO    ] ================================================
[2026-06-19 03:40:48,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:40:48
[2026-06-19 03:40:49,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:40:49,633.633 INFO    ] Initializing speech engine...
[2026-06-19 03:40:49,640.640 INFO    ] 2026-06-19 03:40:49
[2026-06-19 03:40:49,940.940 INFO    ] 2026-06-19 03:40:49
[2026-06-19 03:40:49,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:40:50,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:40:50,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:40:50,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:40:50,328.328 INFO    ] time= 19/06/2026 03:40:50
[2026-06-19 03:40:50,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:40:50,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:40:50,456.456 INFO    ] No existing commands found in stream
[2026-06-19 03:40:55,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:40:55,470.470 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 03:40:55,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:40:55,899.899 INFO    ] Checking for system updates...
[2026-06-19 03:40:55,945.945 INFO    ] 200
[2026-06-19 03:40:55,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:56,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:40:56,009.009 INFO    ] No update needed
[2026-06-19 03:40:56,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 03:40:56,050.050 INFO    ] 200
[2026-06-19 03:40:56,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:40:56,093.093 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:40:56,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:40:56,140.140 INFO    ] No camera update needed
[2026-06-19 03:40:56,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:40:56,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:40:56,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:40:56,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:40:58,210.210 INFO    ] ================================================
[2026-06-19 03:40:58,225.225 INFO    ] Launching Daemon at Fri Jun 19 03:40:58 IST 2026
[2026-06-19 03:40:58,237.237 INFO    ] ================================================
[2026-06-19 03:40:58,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:40:58
[2026-06-19 03:40:59,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:40:59,646.646 INFO    ] Initializing speech engine...
[2026-06-19 03:40:59,652.652 INFO    ] 2026-06-19 03:40:59
[2026-06-19 03:40:59,949.949 INFO    ] 2026-06-19 03:40:59
[2026-06-19 03:40:59,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:41:00,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:41:00,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:41:00,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:41:00,315.315 INFO    ] time= 19/06/2026 03:41:00
[2026-06-19 03:41:00,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:41:00,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:41:00,393.393 INFO    ] No existing commands found in stream
[2026-06-19 03:41:05,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:41:05,409.409 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 03:41:06,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:41:06,006.006 INFO    ] Checking for system updates...
[2026-06-19 03:41:06,042.042 INFO    ] 200
[2026-06-19 03:41:06,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:06,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:41:06,099.099 INFO    ] No update needed
[2026-06-19 03:41:06,102.102 INFO    ] Checking for camera pi updates...
[2026-06-19 03:41:06,136.136 INFO    ] 200
[2026-06-19 03:41:06,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:06,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:41:06,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:41:06,221.221 INFO    ] No camera update needed
[2026-06-19 03:41:06,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:41:06,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:41:06,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:41:06,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:41:08,278.278 INFO    ] ================================================
[2026-06-19 03:41:08,294.294 INFO    ] Launching Daemon at Fri Jun 19 03:41:08 IST 2026
[2026-06-19 03:41:08,306.306 INFO    ] ================================================
[2026-06-19 03:41:08,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:41:08
[2026-06-19 03:41:09,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:41:09,885.885 INFO    ] Initializing speech engine...
[2026-06-19 03:41:09,897.897 INFO    ] 2026-06-19 03:41:09
[2026-06-19 03:41:10,208.208 INFO    ] 2026-06-19 03:41:10
[2026-06-19 03:41:10,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:41:10,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:41:10,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:41:10,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:41:10,716.716 INFO    ] time= 19/06/2026 03:41:10
[2026-06-19 03:41:10,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:41:10,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:41:10,858.858 INFO    ] No existing commands found in stream
[2026-06-19 03:41:15,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:41:15,887.887 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 03:41:19,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:41:19,287.287 INFO    ] Checking for system updates...
[2026-06-19 03:41:19,324.324 INFO    ] 200
[2026-06-19 03:41:19,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:19,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:41:19,384.384 INFO    ] No update needed
[2026-06-19 03:41:19,387.387 INFO    ] Checking for camera pi updates...
[2026-06-19 03:41:19,430.430 INFO    ] 200
[2026-06-19 03:41:19,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:19,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:41:19,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:41:19,529.529 INFO    ] No camera update needed
[2026-06-19 03:41:19,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:41:19,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:41:19,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:41:19,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:41:21,587.587 INFO    ] ================================================
[2026-06-19 03:41:21,602.602 INFO    ] Launching Daemon at Fri Jun 19 03:41:21 IST 2026
[2026-06-19 03:41:21,614.614 INFO    ] ================================================
[2026-06-19 03:41:22,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:41:22
[2026-06-19 03:41:22,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:41:23,070.070 INFO    ] Initializing speech engine...
[2026-06-19 03:41:23,076.076 INFO    ] 2026-06-19 03:41:23
[2026-06-19 03:41:23,324.324 INFO    ] 2026-06-19 03:41:23
[2026-06-19 03:41:23,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:41:23,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:41:23,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:41:23,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:41:23,792.792 INFO    ] time= 19/06/2026 03:41:23
[2026-06-19 03:41:23,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:41:23,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:41:23,938.938 INFO    ] No existing commands found in stream
[2026-06-19 03:41:28,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:41:28,953.953 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 03:41:30,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:41:30,277.277 INFO    ] Checking for system updates...
[2026-06-19 03:41:30,313.313 INFO    ] 200
[2026-06-19 03:41:30,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:30,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:41:30,378.378 INFO    ] No update needed
[2026-06-19 03:41:30,381.381 INFO    ] Checking for camera pi updates...
[2026-06-19 03:41:30,415.415 INFO    ] 200
[2026-06-19 03:41:30,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:30,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:41:30,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:41:30,507.507 INFO    ] No camera update needed
[2026-06-19 03:41:30,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:41:30,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:41:30,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:41:30,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:41:32,566.566 INFO    ] ================================================
[2026-06-19 03:41:32,583.583 INFO    ] Launching Daemon at Fri Jun 19 03:41:32 IST 2026
[2026-06-19 03:41:32,595.595 INFO    ] ================================================
[2026-06-19 03:41:33,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:41:33
[2026-06-19 03:41:33,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:41:34,062.062 INFO    ] Initializing speech engine...
[2026-06-19 03:41:34,072.072 INFO    ] 2026-06-19 03:41:34
[2026-06-19 03:41:34,321.321 INFO    ] 2026-06-19 03:41:34
[2026-06-19 03:41:34,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:41:34,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:41:34,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:41:34,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:41:34,797.797 INFO    ] time= 19/06/2026 03:41:34
[2026-06-19 03:41:34,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:41:34,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:41:34,939.939 INFO    ] No existing commands found in stream
[2026-06-19 03:41:39,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:41:39,954.954 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 03:41:41,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:41:41,968.968 INFO    ] Checking for system updates...
[2026-06-19 03:41:42,004.004 INFO    ] 200
[2026-06-19 03:41:42,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:42,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:41:42,070.070 INFO    ] No update needed
[2026-06-19 03:41:42,073.073 INFO    ] Checking for camera pi updates...
[2026-06-19 03:41:42,111.111 INFO    ] 200
[2026-06-19 03:41:42,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:42,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:41:42,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:41:42,209.209 INFO    ] No camera update needed
[2026-06-19 03:41:42,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:41:42,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:41:42,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:41:42,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:41:44,266.266 INFO    ] ================================================
[2026-06-19 03:41:44,282.282 INFO    ] Launching Daemon at Fri Jun 19 03:41:44 IST 2026
[2026-06-19 03:41:44,293.293 INFO    ] ================================================
[2026-06-19 03:41:44,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:41:44
[2026-06-19 03:41:45,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:41:45,702.702 INFO    ] Initializing speech engine...
[2026-06-19 03:41:45,714.714 INFO    ] 2026-06-19 03:41:45
[2026-06-19 03:41:45,980.980 INFO    ] 2026-06-19 03:41:45
[2026-06-19 03:41:46,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:41:46,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:41:46,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:41:46,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:41:46,363.363 INFO    ] time= 19/06/2026 03:41:46
[2026-06-19 03:41:46,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:41:46,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:41:46,559.559 INFO    ] No existing commands found in stream
[2026-06-19 03:41:51,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:41:51,575.575 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 03:41:55,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:41:55,091.091 INFO    ] Checking for system updates...
[2026-06-19 03:41:55,128.128 INFO    ] 200
[2026-06-19 03:41:55,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:55,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:41:55,187.187 INFO    ] No update needed
[2026-06-19 03:41:55,189.189 INFO    ] Checking for camera pi updates...
[2026-06-19 03:41:55,225.225 INFO    ] 200
[2026-06-19 03:41:55,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:41:55,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:41:55,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:41:55,328.328 INFO    ] No camera update needed
[2026-06-19 03:41:55,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:41:55,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:41:55,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:41:55,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:41:57,387.387 INFO    ] ================================================
[2026-06-19 03:41:57,402.402 INFO    ] Launching Daemon at Fri Jun 19 03:41:57 IST 2026
[2026-06-19 03:41:57,413.413 INFO    ] ================================================
[2026-06-19 03:41:57,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:41:57
[2026-06-19 03:41:58,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:41:58,842.842 INFO    ] Initializing speech engine...
[2026-06-19 03:41:58,851.851 INFO    ] 2026-06-19 03:41:58
[2026-06-19 03:41:59,148.148 INFO    ] 2026-06-19 03:41:59
[2026-06-19 03:41:59,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:41:59,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:41:59,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:41:59,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:41:59,566.566 INFO    ] time= 19/06/2026 03:41:59
[2026-06-19 03:41:59,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:41:59,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:41:59,741.741 INFO    ] No existing commands found in stream
[2026-06-19 03:42:04,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:42:04,768.768 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 03:42:06,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:42:06,589.589 INFO    ] Checking for system updates...
[2026-06-19 03:42:06,628.628 INFO    ] 200
[2026-06-19 03:42:06,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:06,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:42:06,685.685 INFO    ] No update needed
[2026-06-19 03:42:06,687.687 INFO    ] Checking for camera pi updates...
[2026-06-19 03:42:06,724.724 INFO    ] 200
[2026-06-19 03:42:06,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:06,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:42:06,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:42:06,810.810 INFO    ] No camera update needed
[2026-06-19 03:42:06,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:42:06,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:42:06,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:42:06,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:42:08,865.865 INFO    ] ================================================
[2026-06-19 03:42:08,881.881 INFO    ] Launching Daemon at Fri Jun 19 03:42:08 IST 2026
[2026-06-19 03:42:08,891.891 INFO    ] ================================================
[2026-06-19 03:42:09,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:42:09
[2026-06-19 03:42:10,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:42:10,353.353 INFO    ] Initializing speech engine...
[2026-06-19 03:42:10,361.361 INFO    ] 2026-06-19 03:42:10
[2026-06-19 03:42:10,621.621 INFO    ] 2026-06-19 03:42:10
[2026-06-19 03:42:10,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:42:10,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:42:10,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:42:11,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:42:11,088.088 INFO    ] time= 19/06/2026 03:42:11
[2026-06-19 03:42:11,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:42:11,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:42:11,230.230 INFO    ] No existing commands found in stream
[2026-06-19 03:42:16,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:42:16,244.244 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 03:42:17,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:42:17,027.027 INFO    ] Checking for system updates...
[2026-06-19 03:42:17,067.067 INFO    ] 200
[2026-06-19 03:42:17,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:17,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:42:17,130.130 INFO    ] No update needed
[2026-06-19 03:42:17,133.133 INFO    ] Checking for camera pi updates...
[2026-06-19 03:42:17,166.166 INFO    ] 200
[2026-06-19 03:42:17,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:17,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:42:17,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:42:17,276.276 INFO    ] No camera update needed
[2026-06-19 03:42:17,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:42:17,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:42:17,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:42:17,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:42:19,331.331 INFO    ] ================================================
[2026-06-19 03:42:19,346.346 INFO    ] Launching Daemon at Fri Jun 19 03:42:19 IST 2026
[2026-06-19 03:42:19,358.358 INFO    ] ================================================
[2026-06-19 03:42:19,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:42:19
[2026-06-19 03:42:20,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:42:20,790.790 INFO    ] Initializing speech engine...
[2026-06-19 03:42:20,799.799 INFO    ] 2026-06-19 03:42:20
[2026-06-19 03:42:21,090.090 INFO    ] 2026-06-19 03:42:21
[2026-06-19 03:42:21,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:42:21,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:42:21,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:42:21,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:42:21,506.506 INFO    ] time= 19/06/2026 03:42:21
[2026-06-19 03:42:21,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:42:21,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:42:21,590.590 INFO    ] No existing commands found in stream
[2026-06-19 03:42:26,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:42:26,607.607 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 03:42:29,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:42:29,886.886 INFO    ] Checking for system updates...
[2026-06-19 03:42:29,922.922 INFO    ] 200
[2026-06-19 03:42:29,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:29,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:42:29,983.983 INFO    ] No update needed
[2026-06-19 03:42:29,985.985 INFO    ] Checking for camera pi updates...
[2026-06-19 03:42:30,021.021 INFO    ] 200
[2026-06-19 03:42:30,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:30,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:42:30,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:42:30,220.220 INFO    ] No camera update needed
[2026-06-19 03:42:30,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:42:30,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:42:30,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:42:30,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:42:32,278.278 INFO    ] ================================================
[2026-06-19 03:42:32,295.295 INFO    ] Launching Daemon at Fri Jun 19 03:42:32 IST 2026
[2026-06-19 03:42:32,306.306 INFO    ] ================================================
[2026-06-19 03:42:32,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:42:32
[2026-06-19 03:42:33,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:42:33,770.770 INFO    ] Initializing speech engine...
[2026-06-19 03:42:33,779.779 INFO    ] 2026-06-19 03:42:33
[2026-06-19 03:42:34,072.072 INFO    ] 2026-06-19 03:42:34
[2026-06-19 03:42:34,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:42:34,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:42:34,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:42:34,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:42:34,446.446 INFO    ] time= 19/06/2026 03:42:34
[2026-06-19 03:42:34,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:42:34,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:42:34,573.573 INFO    ] No existing commands found in stream
[2026-06-19 03:42:39,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:42:39,589.589 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 03:42:40,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:42:40,692.692 INFO    ] Checking for system updates...
[2026-06-19 03:42:40,727.727 INFO    ] 200
[2026-06-19 03:42:40,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:40,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:42:40,790.790 INFO    ] No update needed
[2026-06-19 03:42:40,793.793 INFO    ] Checking for camera pi updates...
[2026-06-19 03:42:40,826.826 INFO    ] 200
[2026-06-19 03:42:40,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:40,874.874 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:42:40,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:42:40,916.916 INFO    ] No camera update needed
[2026-06-19 03:42:40,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:42:40,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:42:40,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:42:40,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:42:42,974.974 INFO    ] ================================================
[2026-06-19 03:42:42,990.990 INFO    ] Launching Daemon at Fri Jun 19 03:42:42 IST 2026
[2026-06-19 03:42:43,002.002 INFO    ] ================================================
[2026-06-19 03:42:43,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:42:43
[2026-06-19 03:42:44,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:42:44,413.413 INFO    ] Initializing speech engine...
[2026-06-19 03:42:44,436.436 INFO    ] 2026-06-19 03:42:44
[2026-06-19 03:42:44,692.692 INFO    ] 2026-06-19 03:42:44
[2026-06-19 03:42:44,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:42:44,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:42:44,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:42:45,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:42:45,032.032 INFO    ] time= 19/06/2026 03:42:45
[2026-06-19 03:42:45,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:42:45,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:42:45,145.145 INFO    ] No existing commands found in stream
[2026-06-19 03:42:50,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:42:50,159.159 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 03:42:52,090.090 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:42:52,092.092 INFO    ] Checking for system updates...
[2026-06-19 03:42:52,129.129 INFO    ] 200
[2026-06-19 03:42:52,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:52,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:42:52,194.194 INFO    ] No update needed
[2026-06-19 03:42:52,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 03:42:52,235.235 INFO    ] 200
[2026-06-19 03:42:52,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:42:52,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:42:52,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:42:52,332.332 INFO    ] No camera update needed
[2026-06-19 03:42:52,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:42:52,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:42:52,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:42:52,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:42:54,390.390 INFO    ] ================================================
[2026-06-19 03:42:54,406.406 INFO    ] Launching Daemon at Fri Jun 19 03:42:54 IST 2026
[2026-06-19 03:42:54,417.417 INFO    ] ================================================
[2026-06-19 03:42:54,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:42:54
[2026-06-19 03:42:55,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:42:55,876.876 INFO    ] Initializing speech engine...
[2026-06-19 03:42:55,882.882 INFO    ] 2026-06-19 03:42:55
[2026-06-19 03:42:56,157.157 INFO    ] 2026-06-19 03:42:56
[2026-06-19 03:42:56,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:42:56,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:42:56,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:42:56,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:42:56,582.582 INFO    ] time= 19/06/2026 03:42:56
[2026-06-19 03:42:56,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:42:56,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:42:56,746.746 INFO    ] No existing commands found in stream
[2026-06-19 03:43:01,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:43:01,761.761 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 03:43:03,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:43:03,310.310 INFO    ] Checking for system updates...
[2026-06-19 03:43:03,346.346 INFO    ] 200
[2026-06-19 03:43:03,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:03,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:43:03,403.403 INFO    ] No update needed
[2026-06-19 03:43:03,406.406 INFO    ] Checking for camera pi updates...
[2026-06-19 03:43:03,439.439 INFO    ] 200
[2026-06-19 03:43:03,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:03,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:43:03,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:43:03,532.532 INFO    ] No camera update needed
[2026-06-19 03:43:03,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:43:03,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:43:03,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:43:03,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:43:05,590.590 INFO    ] ================================================
[2026-06-19 03:43:05,606.606 INFO    ] Launching Daemon at Fri Jun 19 03:43:05 IST 2026
[2026-06-19 03:43:05,617.617 INFO    ] ================================================
[2026-06-19 03:43:06,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:43:06
[2026-06-19 03:43:06,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:43:07,132.132 INFO    ] Initializing speech engine...
[2026-06-19 03:43:07,140.140 INFO    ] 2026-06-19 03:43:07
[2026-06-19 03:43:07,437.437 INFO    ] 2026-06-19 03:43:07
[2026-06-19 03:43:07,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:43:07,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:43:07,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:43:07,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:43:07,821.821 INFO    ] time= 19/06/2026 03:43:07
[2026-06-19 03:43:07,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:43:07,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:43:07,949.949 INFO    ] No existing commands found in stream
[2026-06-19 03:43:12,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:43:12,964.964 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 03:43:14,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:43:14,059.059 INFO    ] Checking for system updates...
[2026-06-19 03:43:14,098.098 INFO    ] 200
[2026-06-19 03:43:14,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:14,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:43:14,157.157 INFO    ] No update needed
[2026-06-19 03:43:14,160.160 INFO    ] Checking for camera pi updates...
[2026-06-19 03:43:14,195.195 INFO    ] 200
[2026-06-19 03:43:14,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:14,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:43:14,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:43:14,294.294 INFO    ] No camera update needed
[2026-06-19 03:43:14,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:43:14,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:43:14,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:43:14,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:43:16,349.349 INFO    ] ================================================
[2026-06-19 03:43:16,365.365 INFO    ] Launching Daemon at Fri Jun 19 03:43:16 IST 2026
[2026-06-19 03:43:16,377.377 INFO    ] ================================================
[2026-06-19 03:43:17,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:43:17
[2026-06-19 03:43:17,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:43:17,923.923 INFO    ] Initializing speech engine...
[2026-06-19 03:43:17,930.930 INFO    ] 2026-06-19 03:43:17
[2026-06-19 03:43:18,204.204 INFO    ] 2026-06-19 03:43:18
[2026-06-19 03:43:18,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:43:18,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:43:18,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:43:18,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:43:18,647.647 INFO    ] time= 19/06/2026 03:43:18
[2026-06-19 03:43:18,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:43:18,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:43:18,795.795 INFO    ] No existing commands found in stream
[2026-06-19 03:43:23,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:43:23,809.809 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 03:43:26,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:43:26,403.403 INFO    ] Checking for system updates...
[2026-06-19 03:43:26,439.439 INFO    ] 200
[2026-06-19 03:43:26,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:26,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:43:26,504.504 INFO    ] No update needed
[2026-06-19 03:43:26,506.506 INFO    ] Checking for camera pi updates...
[2026-06-19 03:43:26,540.540 INFO    ] 200
[2026-06-19 03:43:26,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:26,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:43:26,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:43:26,628.628 INFO    ] No camera update needed
[2026-06-19 03:43:26,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:43:26,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:43:26,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:43:26,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:43:28,684.684 INFO    ] ================================================
[2026-06-19 03:43:28,700.700 INFO    ] Launching Daemon at Fri Jun 19 03:43:28 IST 2026
[2026-06-19 03:43:28,711.711 INFO    ] ================================================
[2026-06-19 03:43:29,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:43:29
[2026-06-19 03:43:29,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:43:30,208.208 INFO    ] Initializing speech engine...
[2026-06-19 03:43:30,217.217 INFO    ] 2026-06-19 03:43:30
[2026-06-19 03:43:30,515.515 INFO    ] 2026-06-19 03:43:30
[2026-06-19 03:43:30,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:43:30,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:43:30,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:43:30,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:43:30,903.903 INFO    ] time= 19/06/2026 03:43:30
[2026-06-19 03:43:30,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:43:30,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:43:31,028.028 INFO    ] No existing commands found in stream
[2026-06-19 03:43:36,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:43:36,044.044 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 03:43:36,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:43:36,724.724 INFO    ] Checking for system updates...
[2026-06-19 03:43:36,759.759 INFO    ] 200
[2026-06-19 03:43:36,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:36,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:43:36,819.819 INFO    ] No update needed
[2026-06-19 03:43:36,821.821 INFO    ] Checking for camera pi updates...
[2026-06-19 03:43:36,863.863 INFO    ] 200
[2026-06-19 03:43:36,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:36,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:43:36,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:43:36,975.975 INFO    ] No camera update needed
[2026-06-19 03:43:36,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:43:36,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:43:36,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:43:36,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:43:39,031.031 INFO    ] ================================================
[2026-06-19 03:43:39,047.047 INFO    ] Launching Daemon at Fri Jun 19 03:43:39 IST 2026
[2026-06-19 03:43:39,058.058 INFO    ] ================================================
[2026-06-19 03:43:39,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:43:39
[2026-06-19 03:43:40,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:43:40,456.456 INFO    ] Initializing speech engine...
[2026-06-19 03:43:40,471.471 INFO    ] 2026-06-19 03:43:40
[2026-06-19 03:43:40,739.739 INFO    ] 2026-06-19 03:43:40
[2026-06-19 03:43:40,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:43:41,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:43:41,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:43:41,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:43:41,224.224 INFO    ] time= 19/06/2026 03:43:41
[2026-06-19 03:43:41,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:43:41,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:43:41,375.375 INFO    ] No existing commands found in stream
[2026-06-19 03:43:46,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:43:46,391.391 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 03:43:50,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:43:50,711.711 INFO    ] Checking for system updates...
[2026-06-19 03:43:50,748.748 INFO    ] 200
[2026-06-19 03:43:50,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:50,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:43:50,807.807 INFO    ] No update needed
[2026-06-19 03:43:50,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 03:43:50,843.843 INFO    ] 200
[2026-06-19 03:43:50,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:43:50,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:43:50,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:43:50,938.938 INFO    ] No camera update needed
[2026-06-19 03:43:50,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:43:50,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:43:50,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:43:50,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:43:53,001.001 INFO    ] ================================================
[2026-06-19 03:43:53,017.017 INFO    ] Launching Daemon at Fri Jun 19 03:43:53 IST 2026
[2026-06-19 03:43:53,029.029 INFO    ] ================================================
[2026-06-19 03:43:53,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:43:53
[2026-06-19 03:43:54,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:43:54,580.580 INFO    ] Initializing speech engine...
[2026-06-19 03:43:54,594.594 INFO    ] 2026-06-19 03:43:54
[2026-06-19 03:43:54,876.876 INFO    ] 2026-06-19 03:43:54
[2026-06-19 03:43:54,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:43:55,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:43:55,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:43:55,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:43:55,351.351 INFO    ] time= 19/06/2026 03:43:55
[2026-06-19 03:43:55,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:43:55,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:43:55,557.557 INFO    ] No existing commands found in stream
[2026-06-19 03:44:00,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:44:00,585.585 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 03:44:02,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:44:02,757.757 INFO    ] Checking for system updates...
[2026-06-19 03:44:02,794.794 INFO    ] 200
[2026-06-19 03:44:02,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:02,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:44:02,868.868 INFO    ] No update needed
[2026-06-19 03:44:02,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 03:44:02,904.904 INFO    ] 200
[2026-06-19 03:44:02,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:02,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:44:02,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:44:02,990.990 INFO    ] No camera update needed
[2026-06-19 03:44:02,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:44:02,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:44:03,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:44:03,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:44:05,046.046 INFO    ] ================================================
[2026-06-19 03:44:05,061.061 INFO    ] Launching Daemon at Fri Jun 19 03:44:05 IST 2026
[2026-06-19 03:44:05,072.072 INFO    ] ================================================
[2026-06-19 03:44:05,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:44:05
[2026-06-19 03:44:06,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:44:06,550.550 INFO    ] Initializing speech engine...
[2026-06-19 03:44:06,559.559 INFO    ] 2026-06-19 03:44:06
[2026-06-19 03:44:06,819.819 INFO    ] 2026-06-19 03:44:06
[2026-06-19 03:44:06,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:44:07,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:44:07,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:44:07,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:44:07,266.266 INFO    ] time= 19/06/2026 03:44:07
[2026-06-19 03:44:07,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:44:07,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:44:07,427.427 INFO    ] No existing commands found in stream
[2026-06-19 03:44:12,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:44:12,442.442 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 03:44:16,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:44:16,371.371 INFO    ] Checking for system updates...
[2026-06-19 03:44:16,407.407 INFO    ] 200
[2026-06-19 03:44:16,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:16,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:44:16,478.478 INFO    ] No update needed
[2026-06-19 03:44:16,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 03:44:16,514.514 INFO    ] 200
[2026-06-19 03:44:16,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:16,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:44:16,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:44:16,607.607 INFO    ] No camera update needed
[2026-06-19 03:44:16,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:44:16,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:44:16,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:44:16,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:44:18,664.664 INFO    ] ================================================
[2026-06-19 03:44:18,680.680 INFO    ] Launching Daemon at Fri Jun 19 03:44:18 IST 2026
[2026-06-19 03:44:18,691.691 INFO    ] ================================================
[2026-06-19 03:44:19,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:44:19
[2026-06-19 03:44:20,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:44:20,323.323 INFO    ] Initializing speech engine...
[2026-06-19 03:44:20,340.340 INFO    ] 2026-06-19 03:44:20
[2026-06-19 03:44:20,631.631 INFO    ] 2026-06-19 03:44:20
[2026-06-19 03:44:20,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:44:20,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:44:20,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:44:21,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:44:21,075.075 INFO    ] time= 19/06/2026 03:44:21
[2026-06-19 03:44:21,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:44:21,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:44:21,263.263 INFO    ] No existing commands found in stream
[2026-06-19 03:44:26,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:44:26,282.282 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 03:44:28,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:44:28,833.833 INFO    ] Checking for system updates...
[2026-06-19 03:44:28,871.871 INFO    ] 200
[2026-06-19 03:44:28,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:28,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:44:28,931.931 INFO    ] No update needed
[2026-06-19 03:44:28,934.934 INFO    ] Checking for camera pi updates...
[2026-06-19 03:44:28,973.973 INFO    ] 200
[2026-06-19 03:44:28,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:29,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:44:29,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:44:29,065.065 INFO    ] No camera update needed
[2026-06-19 03:44:29,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:44:29,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:44:29,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:44:29,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:44:31,126.126 INFO    ] ================================================
[2026-06-19 03:44:31,143.143 INFO    ] Launching Daemon at Fri Jun 19 03:44:31 IST 2026
[2026-06-19 03:44:31,156.156 INFO    ] ================================================
[2026-06-19 03:44:31,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:44:31
[2026-06-19 03:44:32,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:44:32,728.728 INFO    ] Initializing speech engine...
[2026-06-19 03:44:32,733.733 INFO    ] 2026-06-19 03:44:32
[2026-06-19 03:44:32,996.996 INFO    ] 2026-06-19 03:44:32
[2026-06-19 03:44:33,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:44:33,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:44:33,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:44:33,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:44:33,474.474 INFO    ] time= 19/06/2026 03:44:33
[2026-06-19 03:44:33,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:44:33,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:44:33,614.614 INFO    ] No existing commands found in stream
[2026-06-19 03:44:38,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:44:38,632.632 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 03:44:40,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:44:40,241.241 INFO    ] Checking for system updates...
[2026-06-19 03:44:40,277.277 INFO    ] 200
[2026-06-19 03:44:40,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:40,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:44:40,336.336 INFO    ] No update needed
[2026-06-19 03:44:40,339.339 INFO    ] Checking for camera pi updates...
[2026-06-19 03:44:40,374.374 INFO    ] 200
[2026-06-19 03:44:40,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:40,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:44:40,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:44:40,574.574 INFO    ] No camera update needed
[2026-06-19 03:44:40,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:44:40,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:44:40,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:44:40,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:44:42,630.630 INFO    ] ================================================
[2026-06-19 03:44:42,646.646 INFO    ] Launching Daemon at Fri Jun 19 03:44:42 IST 2026
[2026-06-19 03:44:42,658.658 INFO    ] ================================================
[2026-06-19 03:44:43,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:44:43
[2026-06-19 03:44:43,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:44:44,147.147 INFO    ] Initializing speech engine...
[2026-06-19 03:44:44,158.158 INFO    ] 2026-06-19 03:44:44
[2026-06-19 03:44:44,407.407 INFO    ] 2026-06-19 03:44:44
[2026-06-19 03:44:44,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:44:44,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:44:44,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:44:44,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:44:44,881.881 INFO    ] time= 19/06/2026 03:44:44
[2026-06-19 03:44:44,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:44:44,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:44:45,034.034 INFO    ] No existing commands found in stream
[2026-06-19 03:44:50,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:44:50,061.061 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 03:44:54,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:44:54,280.280 INFO    ] Checking for system updates...
[2026-06-19 03:44:54,316.316 INFO    ] 200
[2026-06-19 03:44:54,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:54,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:44:54,375.375 INFO    ] No update needed
[2026-06-19 03:44:54,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 03:44:54,412.412 INFO    ] 200
[2026-06-19 03:44:54,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:44:54,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:44:54,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:44:54,501.501 INFO    ] No camera update needed
[2026-06-19 03:44:54,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:44:54,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:44:54,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:44:54,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:44:56,559.559 INFO    ] ================================================
[2026-06-19 03:44:56,575.575 INFO    ] Launching Daemon at Fri Jun 19 03:44:56 IST 2026
[2026-06-19 03:44:56,587.587 INFO    ] ================================================
[2026-06-19 03:44:57,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:44:57
[2026-06-19 03:44:57,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:44:58,029.029 INFO    ] Initializing speech engine...
[2026-06-19 03:44:58,035.035 INFO    ] 2026-06-19 03:44:58
[2026-06-19 03:44:58,294.294 INFO    ] 2026-06-19 03:44:58
[2026-06-19 03:44:58,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:44:58,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:44:58,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:44:58,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:44:58,719.719 INFO    ] time= 19/06/2026 03:44:58
[2026-06-19 03:44:58,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:44:58,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:44:58,899.899 INFO    ] No existing commands found in stream
[2026-06-19 03:45:03,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:45:03,911.911 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 03:45:05,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:45:05,376.376 INFO    ] Checking for system updates...
[2026-06-19 03:45:05,413.413 INFO    ] 200
[2026-06-19 03:45:05,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:05,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:45:05,483.483 INFO    ] No update needed
[2026-06-19 03:45:05,485.485 INFO    ] Checking for camera pi updates...
[2026-06-19 03:45:05,520.520 INFO    ] 200
[2026-06-19 03:45:05,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:05,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:45:05,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:45:05,612.612 INFO    ] No camera update needed
[2026-06-19 03:45:05,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:45:05,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:45:05,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:45:05,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:45:07,668.668 INFO    ] ================================================
[2026-06-19 03:45:07,685.685 INFO    ] Launching Daemon at Fri Jun 19 03:45:07 IST 2026
[2026-06-19 03:45:07,696.696 INFO    ] ================================================
[2026-06-19 03:45:08,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:45:08
[2026-06-19 03:45:08,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:45:09,118.118 INFO    ] Initializing speech engine...
[2026-06-19 03:45:09,127.127 INFO    ] 2026-06-19 03:45:09
[2026-06-19 03:45:09,425.425 INFO    ] 2026-06-19 03:45:09
[2026-06-19 03:45:09,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:45:09,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:45:09,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:45:09,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:45:09,937.937 INFO    ] time= 19/06/2026 03:45:09
[2026-06-19 03:45:10,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:45:10,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:45:10,141.141 INFO    ] No existing commands found in stream
[2026-06-19 03:45:15,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:45:15,170.170 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 03:45:16,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:45:16,592.592 INFO    ] Checking for system updates...
[2026-06-19 03:45:16,632.632 INFO    ] 200
[2026-06-19 03:45:16,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:16,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:45:16,692.692 INFO    ] No update needed
[2026-06-19 03:45:16,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 03:45:16,731.731 INFO    ] 200
[2026-06-19 03:45:16,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:16,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:45:16,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:45:16,826.826 INFO    ] No camera update needed
[2026-06-19 03:45:16,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:45:16,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:45:16,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:45:16,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:45:18,886.886 INFO    ] ================================================
[2026-06-19 03:45:18,902.902 INFO    ] Launching Daemon at Fri Jun 19 03:45:18 IST 2026
[2026-06-19 03:45:18,914.914 INFO    ] ================================================
[2026-06-19 03:45:19,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:45:19
[2026-06-19 03:45:20,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:45:20,349.349 INFO    ] Initializing speech engine...
[2026-06-19 03:45:20,363.363 INFO    ] 2026-06-19 03:45:20
[2026-06-19 03:45:20,630.630 INFO    ] 2026-06-19 03:45:20
[2026-06-19 03:45:20,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:45:20,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:45:20,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:45:21,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:45:21,112.112 INFO    ] time= 19/06/2026 03:45:21
[2026-06-19 03:45:21,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:45:21,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:45:21,260.260 INFO    ] No existing commands found in stream
[2026-06-19 03:45:26,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:45:26,283.283 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 03:45:30,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:45:30,286.286 INFO    ] Checking for system updates...
[2026-06-19 03:45:30,322.322 INFO    ] 200
[2026-06-19 03:45:30,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:30,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:45:30,387.387 INFO    ] No update needed
[2026-06-19 03:45:30,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 03:45:30,423.423 INFO    ] 200
[2026-06-19 03:45:30,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:30,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:45:30,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:45:30,511.511 INFO    ] No camera update needed
[2026-06-19 03:45:30,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:45:30,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:45:30,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:45:30,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:45:32,569.569 INFO    ] ================================================
[2026-06-19 03:45:32,586.586 INFO    ] Launching Daemon at Fri Jun 19 03:45:32 IST 2026
[2026-06-19 03:45:32,598.598 INFO    ] ================================================
[2026-06-19 03:45:33,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:45:33
[2026-06-19 03:45:33,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:45:34,094.094 INFO    ] Initializing speech engine...
[2026-06-19 03:45:34,100.100 INFO    ] 2026-06-19 03:45:34
[2026-06-19 03:45:34,357.357 INFO    ] 2026-06-19 03:45:34
[2026-06-19 03:45:34,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:45:34,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:45:34,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:45:34,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:45:34,717.717 INFO    ] time= 19/06/2026 03:45:34
[2026-06-19 03:45:34,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:45:34,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:45:34,826.826 INFO    ] No existing commands found in stream
[2026-06-19 03:45:39,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:45:39,840.840 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 03:45:41,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:45:41,829.829 INFO    ] Checking for system updates...
[2026-06-19 03:45:41,869.869 INFO    ] 200
[2026-06-19 03:45:41,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:41,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:45:41,927.927 INFO    ] No update needed
[2026-06-19 03:45:41,929.929 INFO    ] Checking for camera pi updates...
[2026-06-19 03:45:41,967.967 INFO    ] 200
[2026-06-19 03:45:41,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:42,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:45:42,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:45:42,050.050 INFO    ] No camera update needed
[2026-06-19 03:45:42,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:45:42,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:45:42,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:45:42,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:45:44,107.107 INFO    ] ================================================
[2026-06-19 03:45:44,123.123 INFO    ] Launching Daemon at Fri Jun 19 03:45:44 IST 2026
[2026-06-19 03:45:44,134.134 INFO    ] ================================================
[2026-06-19 03:45:44,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:45:44
[2026-06-19 03:45:45,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:45:45,593.593 INFO    ] Initializing speech engine...
[2026-06-19 03:45:45,617.617 INFO    ] 2026-06-19 03:45:45
[2026-06-19 03:45:45,899.899 INFO    ] 2026-06-19 03:45:45
[2026-06-19 03:45:45,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:45:46,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:45:46,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:45:46,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:45:46,286.286 INFO    ] time= 19/06/2026 03:45:46
[2026-06-19 03:45:46,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:45:46,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:45:46,411.411 INFO    ] No existing commands found in stream
[2026-06-19 03:45:51,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:45:51,427.427 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 03:45:51,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:45:51,867.867 INFO    ] Checking for system updates...
[2026-06-19 03:45:51,903.903 INFO    ] 200
[2026-06-19 03:45:51,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:51,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:45:51,961.961 INFO    ] No update needed
[2026-06-19 03:45:51,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 03:45:52,000.000 INFO    ] 200
[2026-06-19 03:45:52,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:45:52,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:45:52,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:45:52,089.089 INFO    ] No camera update needed
[2026-06-19 03:45:52,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:45:52,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:45:52,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:45:52,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:45:54,144.144 INFO    ] ================================================
[2026-06-19 03:45:54,160.160 INFO    ] Launching Daemon at Fri Jun 19 03:45:54 IST 2026
[2026-06-19 03:45:54,170.170 INFO    ] ================================================
[2026-06-19 03:45:54,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:45:54
[2026-06-19 03:45:55,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:45:55,631.631 INFO    ] Initializing speech engine...
[2026-06-19 03:45:55,640.640 INFO    ] 2026-06-19 03:45:55
[2026-06-19 03:45:55,904.904 INFO    ] 2026-06-19 03:45:55
[2026-06-19 03:45:55,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:45:56,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:45:56,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:45:56,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:45:56,371.371 INFO    ] time= 19/06/2026 03:45:56
[2026-06-19 03:45:56,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:45:56,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:45:56,516.516 INFO    ] No existing commands found in stream
[2026-06-19 03:46:01,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:46:01,531.531 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 03:46:04,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:46:04,494.494 INFO    ] Checking for system updates...
[2026-06-19 03:46:04,535.535 INFO    ] 200
[2026-06-19 03:46:04,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:04,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:46:04,593.593 INFO    ] No update needed
[2026-06-19 03:46:04,596.596 INFO    ] Checking for camera pi updates...
[2026-06-19 03:46:04,633.633 INFO    ] 200
[2026-06-19 03:46:04,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:04,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:46:04,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:46:04,737.737 INFO    ] No camera update needed
[2026-06-19 03:46:04,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:46:04,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:46:04,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:46:04,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:46:06,794.794 INFO    ] ================================================
[2026-06-19 03:46:06,811.811 INFO    ] Launching Daemon at Fri Jun 19 03:46:06 IST 2026
[2026-06-19 03:46:06,822.822 INFO    ] ================================================
[2026-06-19 03:46:07,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:46:07
[2026-06-19 03:46:07,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:46:08,235.235 INFO    ] Initializing speech engine...
[2026-06-19 03:46:08,258.258 INFO    ] 2026-06-19 03:46:08
[2026-06-19 03:46:08,515.515 INFO    ] 2026-06-19 03:46:08
[2026-06-19 03:46:08,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:46:08,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:46:08,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:46:08,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:46:08,893.893 INFO    ] time= 19/06/2026 03:46:08
[2026-06-19 03:46:08,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:46:08,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:46:08,970.970 INFO    ] No existing commands found in stream
[2026-06-19 03:46:13,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:46:13,985.985 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 03:46:14,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:46:14,774.774 INFO    ] Checking for system updates...
[2026-06-19 03:46:14,810.810 INFO    ] 200
[2026-06-19 03:46:14,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:14,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:46:14,867.867 INFO    ] No update needed
[2026-06-19 03:46:14,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 03:46:14,904.904 INFO    ] 200
[2026-06-19 03:46:14,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:14,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:46:14,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:46:14,991.991 INFO    ] No camera update needed
[2026-06-19 03:46:14,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:46:14,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:46:15,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:46:15,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:46:17,048.048 INFO    ] ================================================
[2026-06-19 03:46:17,063.063 INFO    ] Launching Daemon at Fri Jun 19 03:46:17 IST 2026
[2026-06-19 03:46:17,074.074 INFO    ] ================================================
[2026-06-19 03:46:17,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:46:17
[2026-06-19 03:46:18,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:46:18,537.537 INFO    ] Initializing speech engine...
[2026-06-19 03:46:18,547.547 INFO    ] 2026-06-19 03:46:18
[2026-06-19 03:46:18,811.811 INFO    ] 2026-06-19 03:46:18
[2026-06-19 03:46:18,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:46:19,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:46:19,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:46:19,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:46:19,279.279 INFO    ] time= 19/06/2026 03:46:19
[2026-06-19 03:46:19,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:46:19,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:46:19,422.422 INFO    ] No existing commands found in stream
[2026-06-19 03:46:24,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:46:24,437.437 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 03:46:25,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:46:25,349.349 INFO    ] Checking for system updates...
[2026-06-19 03:46:25,390.390 INFO    ] 200
[2026-06-19 03:46:25,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:25,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:46:25,448.448 INFO    ] No update needed
[2026-06-19 03:46:25,450.450 INFO    ] Checking for camera pi updates...
[2026-06-19 03:46:25,484.484 INFO    ] 200
[2026-06-19 03:46:25,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:25,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:46:25,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:46:25,557.557 INFO    ] No camera update needed
[2026-06-19 03:46:25,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:46:25,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:46:25,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:46:25,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:46:27,616.616 INFO    ] ================================================
[2026-06-19 03:46:27,631.631 INFO    ] Launching Daemon at Fri Jun 19 03:46:27 IST 2026
[2026-06-19 03:46:27,642.642 INFO    ] ================================================
[2026-06-19 03:46:28,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:46:28
[2026-06-19 03:46:28,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:46:29,096.096 INFO    ] Initializing speech engine...
[2026-06-19 03:46:29,106.106 INFO    ] 2026-06-19 03:46:29
[2026-06-19 03:46:29,404.404 INFO    ] 2026-06-19 03:46:29
[2026-06-19 03:46:29,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:46:29,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:46:29,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:46:29,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:46:29,800.800 INFO    ] time= 19/06/2026 03:46:29
[2026-06-19 03:46:29,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:46:29,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:46:29,916.916 INFO    ] No existing commands found in stream
[2026-06-19 03:46:34,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:46:34,932.932 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 03:46:39,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:46:39,235.235 INFO    ] Checking for system updates...
[2026-06-19 03:46:39,272.272 INFO    ] 200
[2026-06-19 03:46:39,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:39,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:46:39,337.337 INFO    ] No update needed
[2026-06-19 03:46:39,339.339 INFO    ] Checking for camera pi updates...
[2026-06-19 03:46:39,373.373 INFO    ] 200
[2026-06-19 03:46:39,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:39,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:46:39,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:46:39,464.464 INFO    ] No camera update needed
[2026-06-19 03:46:39,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:46:39,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:46:39,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:46:39,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:46:41,520.520 INFO    ] ================================================
[2026-06-19 03:46:41,536.536 INFO    ] Launching Daemon at Fri Jun 19 03:46:41 IST 2026
[2026-06-19 03:46:41,547.547 INFO    ] ================================================
[2026-06-19 03:46:42,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:46:42
[2026-06-19 03:46:42,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:46:43,018.018 INFO    ] Initializing speech engine...
[2026-06-19 03:46:43,027.027 INFO    ] 2026-06-19 03:46:43
[2026-06-19 03:46:43,292.292 INFO    ] 2026-06-19 03:46:43
[2026-06-19 03:46:43,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:46:43,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:46:43,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:46:43,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:46:43,792.792 INFO    ] time= 19/06/2026 03:46:43
[2026-06-19 03:46:43,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:46:43,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:46:43,938.938 INFO    ] No existing commands found in stream
[2026-06-19 03:46:48,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:46:48,953.953 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 03:46:53,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:46:53,314.314 INFO    ] Checking for system updates...
[2026-06-19 03:46:53,350.350 INFO    ] 200
[2026-06-19 03:46:53,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:53,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:46:53,408.408 INFO    ] No update needed
[2026-06-19 03:46:53,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 03:46:53,444.444 INFO    ] 200
[2026-06-19 03:46:53,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:46:53,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:46:53,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:46:53,638.638 INFO    ] No camera update needed
[2026-06-19 03:46:53,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:46:53,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:46:53,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:46:53,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:46:55,694.694 INFO    ] ================================================
[2026-06-19 03:46:55,708.708 INFO    ] Launching Daemon at Fri Jun 19 03:46:55 IST 2026
[2026-06-19 03:46:55,719.719 INFO    ] ================================================
[2026-06-19 03:46:56,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:46:56
[2026-06-19 03:46:57,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:46:57,366.366 INFO    ] Initializing speech engine...
[2026-06-19 03:46:57,374.374 INFO    ] 2026-06-19 03:46:57
[2026-06-19 03:46:57,666.666 INFO    ] 2026-06-19 03:46:57
[2026-06-19 03:46:57,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:46:57,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:46:57,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:46:58,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:46:58,196.196 INFO    ] time= 19/06/2026 03:46:58
[2026-06-19 03:46:58,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:46:58,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:46:58,380.380 INFO    ] No existing commands found in stream
[2026-06-19 03:47:03,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:47:03,418.418 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 03:47:03,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:47:03,921.921 INFO    ] Checking for system updates...
[2026-06-19 03:47:03,958.958 INFO    ] 200
[2026-06-19 03:47:03,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:04,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:47:04,017.017 INFO    ] No update needed
[2026-06-19 03:47:04,020.020 INFO    ] Checking for camera pi updates...
[2026-06-19 03:47:04,055.055 INFO    ] 200
[2026-06-19 03:47:04,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:04,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:47:04,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:47:04,148.148 INFO    ] No camera update needed
[2026-06-19 03:47:04,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:47:04,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:47:04,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:47:04,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:47:06,206.206 INFO    ] ================================================
[2026-06-19 03:47:06,222.222 INFO    ] Launching Daemon at Fri Jun 19 03:47:06 IST 2026
[2026-06-19 03:47:06,233.233 INFO    ] ================================================
[2026-06-19 03:47:06,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:47:06
[2026-06-19 03:47:07,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:47:07,653.653 INFO    ] Initializing speech engine...
[2026-06-19 03:47:07,659.659 INFO    ] 2026-06-19 03:47:07
[2026-06-19 03:47:07,957.957 INFO    ] 2026-06-19 03:47:07
[2026-06-19 03:47:07,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:47:08,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:47:08,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:47:08,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:47:08,346.346 INFO    ] time= 19/06/2026 03:47:08
[2026-06-19 03:47:08,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:47:08,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:47:08,529.529 INFO    ] No existing commands found in stream
[2026-06-19 03:47:13,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:47:13,557.557 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 03:47:15,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:47:15,833.833 INFO    ] Checking for system updates...
[2026-06-19 03:47:15,874.874 INFO    ] 200
[2026-06-19 03:47:15,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:15,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:47:15,933.933 INFO    ] No update needed
[2026-06-19 03:47:15,936.936 INFO    ] Checking for camera pi updates...
[2026-06-19 03:47:15,975.975 INFO    ] 200
[2026-06-19 03:47:15,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:16,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:47:16,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:47:16,077.077 INFO    ] No camera update needed
[2026-06-19 03:47:16,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:47:16,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:47:16,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:47:16,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:47:18,136.136 INFO    ] ================================================
[2026-06-19 03:47:18,152.152 INFO    ] Launching Daemon at Fri Jun 19 03:47:18 IST 2026
[2026-06-19 03:47:18,162.162 INFO    ] ================================================
[2026-06-19 03:47:18,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:47:18
[2026-06-19 03:47:19,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:47:19,831.831 INFO    ] Initializing speech engine...
[2026-06-19 03:47:19,838.838 INFO    ] 2026-06-19 03:47:19
[2026-06-19 03:47:20,128.128 INFO    ] 2026-06-19 03:47:20
[2026-06-19 03:47:20,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:47:20,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:47:20,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:47:20,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:47:20,584.584 INFO    ] time= 19/06/2026 03:47:20
[2026-06-19 03:47:20,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:47:20,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:47:20,811.811 INFO    ] No existing commands found in stream
[2026-06-19 03:47:25,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:47:25,841.841 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 03:47:29,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:47:29,291.291 INFO    ] Checking for system updates...
[2026-06-19 03:47:29,329.329 INFO    ] 200
[2026-06-19 03:47:29,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:29,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:47:29,404.404 INFO    ] No update needed
[2026-06-19 03:47:29,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 03:47:29,450.450 INFO    ] 200
[2026-06-19 03:47:29,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:29,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:47:29,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:47:29,549.549 INFO    ] No camera update needed
[2026-06-19 03:47:29,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:47:29,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:47:29,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:47:29,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:47:31,608.608 INFO    ] ================================================
[2026-06-19 03:47:31,625.625 INFO    ] Launching Daemon at Fri Jun 19 03:47:31 IST 2026
[2026-06-19 03:47:31,637.637 INFO    ] ================================================
[2026-06-19 03:47:32,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:47:32
[2026-06-19 03:47:32,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:47:33,207.207 INFO    ] Initializing speech engine...
[2026-06-19 03:47:33,214.214 INFO    ] 2026-06-19 03:47:33
[2026-06-19 03:47:33,465.465 INFO    ] 2026-06-19 03:47:33
[2026-06-19 03:47:33,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:47:33,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:47:33,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:47:33,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:47:33,841.841 INFO    ] time= 19/06/2026 03:47:33
[2026-06-19 03:47:33,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:47:33,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:47:34,034.034 INFO    ] No existing commands found in stream
[2026-06-19 03:47:39,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:47:39,047.047 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 03:47:41,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:47:41,109.109 INFO    ] Checking for system updates...
[2026-06-19 03:47:41,146.146 INFO    ] 200
[2026-06-19 03:47:41,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:41,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:47:41,203.203 INFO    ] No update needed
[2026-06-19 03:47:41,206.206 INFO    ] Checking for camera pi updates...
[2026-06-19 03:47:41,239.239 INFO    ] 200
[2026-06-19 03:47:41,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:41,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:47:41,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:47:41,330.330 INFO    ] No camera update needed
[2026-06-19 03:47:41,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:47:41,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:47:41,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:47:41,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:47:43,388.388 INFO    ] ================================================
[2026-06-19 03:47:43,404.404 INFO    ] Launching Daemon at Fri Jun 19 03:47:43 IST 2026
[2026-06-19 03:47:43,416.416 INFO    ] ================================================
[2026-06-19 03:47:44,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:47:44
[2026-06-19 03:47:44,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:47:45,052.052 INFO    ] Initializing speech engine...
[2026-06-19 03:47:45,066.066 INFO    ] 2026-06-19 03:47:45
[2026-06-19 03:47:45,373.373 INFO    ] 2026-06-19 03:47:45
[2026-06-19 03:47:45,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:47:45,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:47:45,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:47:45,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:47:45,832.832 INFO    ] time= 19/06/2026 03:47:45
[2026-06-19 03:47:45,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:47:45,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:47:46,030.030 INFO    ] No existing commands found in stream
[2026-06-19 03:47:51,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:47:51,064.064 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 03:47:52,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:47:52,489.489 INFO    ] Checking for system updates...
[2026-06-19 03:47:52,526.526 INFO    ] 200
[2026-06-19 03:47:52,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:52,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:47:52,590.590 INFO    ] No update needed
[2026-06-19 03:47:52,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 03:47:52,630.630 INFO    ] 200
[2026-06-19 03:47:52,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:47:52,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:47:52,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:47:52,724.724 INFO    ] No camera update needed
[2026-06-19 03:47:52,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:47:52,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:47:52,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:47:52,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:47:54,784.784 INFO    ] ================================================
[2026-06-19 03:47:54,800.800 INFO    ] Launching Daemon at Fri Jun 19 03:47:54 IST 2026
[2026-06-19 03:47:54,812.812 INFO    ] ================================================
[2026-06-19 03:47:55,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:47:55
[2026-06-19 03:47:56,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:47:56,299.299 INFO    ] Initializing speech engine...
[2026-06-19 03:47:56,308.308 INFO    ] 2026-06-19 03:47:56
[2026-06-19 03:47:56,579.579 INFO    ] 2026-06-19 03:47:56
[2026-06-19 03:47:56,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:47:56,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:47:56,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:47:56,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:47:57,053.053 INFO    ] time= 19/06/2026 03:47:57
[2026-06-19 03:47:57,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:47:57,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:47:57,175.175 INFO    ] No existing commands found in stream
[2026-06-19 03:48:02,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:48:02,192.192 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 03:48:04,018.018 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:48:04,021.021 INFO    ] Checking for system updates...
[2026-06-19 03:48:04,060.060 INFO    ] 200
[2026-06-19 03:48:04,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 03:48:04,066.066 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 03:48:04,069.069 INFO    ] Checking for camera pi updates...
[2026-06-19 03:48:04,112.112 INFO    ] 200
[2026-06-19 03:48:04,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 03:48:04,117.117 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 03:48:04,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:48:04,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:48:04,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:48:04,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:48:06,184.184 INFO    ] ================================================
[2026-06-19 03:48:06,199.199 INFO    ] Launching Daemon at Fri Jun 19 03:48:06 IST 2026
[2026-06-19 03:48:06,217.217 INFO    ] ================================================
[2026-06-19 03:48:06,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:48:06
[2026-06-19 03:48:07,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:48:07,691.691 INFO    ] Initializing speech engine...
[2026-06-19 03:48:07,700.700 INFO    ] 2026-06-19 03:48:07
[2026-06-19 03:48:07,945.945 INFO    ] 2026-06-19 03:48:07
[2026-06-19 03:48:07,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:48:08,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:48:08,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:48:08,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:48:08,316.316 INFO    ] time= 19/06/2026 03:48:08
[2026-06-19 03:48:08,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:48:08,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:48:08,487.487 INFO    ] No existing commands found in stream
[2026-06-19 03:48:13,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:48:13,520.520 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 03:48:17,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:48:17,435.435 INFO    ] Checking for system updates...
[2026-06-19 03:48:17,472.472 INFO    ] 200
[2026-06-19 03:48:17,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:48:17,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:48:17,535.535 INFO    ] No update needed
[2026-06-19 03:48:17,538.538 INFO    ] Checking for camera pi updates...
[2026-06-19 03:48:17,575.575 INFO    ] 200
[2026-06-19 03:48:17,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:48:17,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:48:17,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:48:17,675.675 INFO    ] No camera update needed
[2026-06-19 03:48:17,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:48:17,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:48:17,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:48:17,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:48:19,733.733 INFO    ] ================================================
[2026-06-19 03:48:19,748.748 INFO    ] Launching Daemon at Fri Jun 19 03:48:19 IST 2026
[2026-06-19 03:48:19,759.759 INFO    ] ================================================
[2026-06-19 03:48:20,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:48:20
[2026-06-19 03:48:20,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:48:21,192.192 INFO    ] Initializing speech engine...
[2026-06-19 03:48:21,201.201 INFO    ] 2026-06-19 03:48:21
[2026-06-19 03:48:21,456.456 INFO    ] 2026-06-19 03:48:21
[2026-06-19 03:48:21,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:48:21,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:48:21,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:48:21,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:48:21,936.936 INFO    ] time= 19/06/2026 03:48:21
[2026-06-19 03:48:21,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:48:22,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:48:22,068.068 INFO    ] No existing commands found in stream
[2026-06-19 03:48:27,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:48:27,082.082 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 03:48:30,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:48:30,833.833 INFO    ] Checking for system updates...
[2026-06-19 03:48:30,869.869 INFO    ] 200
[2026-06-19 03:48:30,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:48:30,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:48:30,927.927 INFO    ] No update needed
[2026-06-19 03:48:30,929.929 INFO    ] Checking for camera pi updates...
[2026-06-19 03:48:30,963.963 INFO    ] 200
[2026-06-19 03:48:30,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:48:31,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:48:31,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:48:31,062.062 INFO    ] No camera update needed
[2026-06-19 03:48:31,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:48:31,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:48:31,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:48:31,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:48:33,118.118 INFO    ] ================================================
[2026-06-19 03:48:33,133.133 INFO    ] Launching Daemon at Fri Jun 19 03:48:33 IST 2026
[2026-06-19 03:48:33,144.144 INFO    ] ================================================
[2026-06-19 03:48:33,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:48:33
[2026-06-19 03:48:34,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:48:34,766.766 INFO    ] Initializing speech engine...
[2026-06-19 03:48:34,775.775 INFO    ] 2026-06-19 03:48:34
[2026-06-19 03:48:35,051.051 INFO    ] 2026-06-19 03:48:35
[2026-06-19 03:48:35,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:48:35,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:48:35,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:48:35,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:48:35,610.610 INFO    ] time= 19/06/2026 03:48:35
[2026-06-19 03:48:35,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:48:35,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:48:35,762.762 INFO    ] No existing commands found in stream
[2026-06-19 03:48:40,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:48:40,783.783 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 03:48:43,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:48:43,057.057 INFO    ] Checking for system updates...
[2026-06-19 03:48:43,095.095 INFO    ] 200
[2026-06-19 03:48:43,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:48:43,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:48:43,154.154 INFO    ] No update needed
[2026-06-19 03:48:43,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 03:48:43,191.191 INFO    ] 200
[2026-06-19 03:48:43,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:48:43,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:48:43,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:48:43,265.265 INFO    ] No camera update needed
[2026-06-19 03:48:43,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:48:43,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:48:43,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:48:43,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:48:45,322.322 INFO    ] ================================================
[2026-06-19 03:48:45,337.337 INFO    ] Launching Daemon at Fri Jun 19 03:48:45 IST 2026
[2026-06-19 03:48:45,348.348 INFO    ] ================================================
[2026-06-19 03:48:45,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:48:45
[2026-06-19 03:48:46,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:48:46,802.802 INFO    ] Initializing speech engine...
[2026-06-19 03:48:46,811.811 INFO    ] 2026-06-19 03:48:46
[2026-06-19 03:48:47,072.072 INFO    ] 2026-06-19 03:48:47
[2026-06-19 03:48:47,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:48:47,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:48:47,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:48:47,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:48:47,546.546 INFO    ] time= 19/06/2026 03:48:47
[2026-06-19 03:48:47,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:48:47,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:48:47,676.676 INFO    ] No existing commands found in stream
[2026-06-19 03:48:52,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:48:52,690.690 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 03:48:56,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:48:56,174.174 INFO    ] Checking for system updates...
[2026-06-19 03:48:56,211.211 INFO    ] 200
[2026-06-19 03:48:56,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:48:56,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:48:56,275.275 INFO    ] No update needed
[2026-06-19 03:48:56,277.277 INFO    ] Checking for camera pi updates...
[2026-06-19 03:48:56,314.314 INFO    ] 200
[2026-06-19 03:48:56,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:48:56,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:48:56,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:48:56,513.513 INFO    ] No camera update needed
[2026-06-19 03:48:56,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:48:56,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:48:56,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:48:56,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:48:58,568.568 INFO    ] ================================================
[2026-06-19 03:48:58,583.583 INFO    ] Launching Daemon at Fri Jun 19 03:48:58 IST 2026
[2026-06-19 03:48:58,594.594 INFO    ] ================================================
[2026-06-19 03:48:59,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:48:59
[2026-06-19 03:48:59,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:49:00,041.041 INFO    ] Initializing speech engine...
[2026-06-19 03:49:00,050.050 INFO    ] 2026-06-19 03:49:00
[2026-06-19 03:49:00,345.345 INFO    ] 2026-06-19 03:49:00
[2026-06-19 03:49:00,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:49:00,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:49:00,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:49:00,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:49:00,702.702 INFO    ] time= 19/06/2026 03:49:00
[2026-06-19 03:49:00,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:49:00,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:49:00,786.786 INFO    ] No existing commands found in stream
[2026-06-19 03:49:05,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:49:05,801.801 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 03:49:09,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:49:09,182.182 INFO    ] Checking for system updates...
[2026-06-19 03:49:09,218.218 INFO    ] 200
[2026-06-19 03:49:09,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:09,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:49:09,281.281 INFO    ] No update needed
[2026-06-19 03:49:09,283.283 INFO    ] Checking for camera pi updates...
[2026-06-19 03:49:09,318.318 INFO    ] 200
[2026-06-19 03:49:09,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:09,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:49:09,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:49:09,410.410 INFO    ] No camera update needed
[2026-06-19 03:49:09,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:49:09,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:49:09,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:49:09,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:49:11,467.467 INFO    ] ================================================
[2026-06-19 03:49:11,483.483 INFO    ] Launching Daemon at Fri Jun 19 03:49:11 IST 2026
[2026-06-19 03:49:11,493.493 INFO    ] ================================================
[2026-06-19 03:49:12,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:49:12
[2026-06-19 03:49:12,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:49:12,919.919 INFO    ] Initializing speech engine...
[2026-06-19 03:49:12,926.926 INFO    ] 2026-06-19 03:49:12
[2026-06-19 03:49:13,224.224 INFO    ] 2026-06-19 03:49:13
[2026-06-19 03:49:13,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:49:13,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:49:13,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:49:13,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:49:13,645.645 INFO    ] time= 19/06/2026 03:49:13
[2026-06-19 03:49:13,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:49:13,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:49:13,734.734 INFO    ] No existing commands found in stream
[2026-06-19 03:49:18,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:49:18,749.749 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 03:49:20,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:49:20,119.119 INFO    ] Checking for system updates...
[2026-06-19 03:49:20,155.155 INFO    ] 200
[2026-06-19 03:49:20,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:20,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:49:20,220.220 INFO    ] No update needed
[2026-06-19 03:49:20,222.222 INFO    ] Checking for camera pi updates...
[2026-06-19 03:49:20,256.256 INFO    ] 200
[2026-06-19 03:49:20,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:20,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:49:20,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:49:20,347.347 INFO    ] No camera update needed
[2026-06-19 03:49:20,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:49:20,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:49:20,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:49:20,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:49:22,402.402 INFO    ] ================================================
[2026-06-19 03:49:22,418.418 INFO    ] Launching Daemon at Fri Jun 19 03:49:22 IST 2026
[2026-06-19 03:49:22,429.429 INFO    ] ================================================
[2026-06-19 03:49:23,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:49:23
[2026-06-19 03:49:23,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:49:23,872.872 INFO    ] Initializing speech engine...
[2026-06-19 03:49:23,878.878 INFO    ] 2026-06-19 03:49:23
[2026-06-19 03:49:24,186.186 INFO    ] 2026-06-19 03:49:24
[2026-06-19 03:49:24,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:49:24,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:49:24,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:49:24,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:49:24,568.568 INFO    ] time= 19/06/2026 03:49:24
[2026-06-19 03:49:24,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:49:24,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:49:24,698.698 INFO    ] No existing commands found in stream
[2026-06-19 03:49:29,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:49:29,719.719 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 03:49:32,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:49:32,724.724 INFO    ] Checking for system updates...
[2026-06-19 03:49:32,761.761 INFO    ] 200
[2026-06-19 03:49:32,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:32,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:49:32,819.819 INFO    ] No update needed
[2026-06-19 03:49:32,821.821 INFO    ] Checking for camera pi updates...
[2026-06-19 03:49:32,855.855 INFO    ] 200
[2026-06-19 03:49:32,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:32,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:49:32,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:49:32,933.933 INFO    ] No camera update needed
[2026-06-19 03:49:32,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:49:32,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:49:32,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:49:32,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:49:34,988.988 INFO    ] ================================================
[2026-06-19 03:49:35,003.003 INFO    ] Launching Daemon at Fri Jun 19 03:49:34 IST 2026
[2026-06-19 03:49:35,013.013 INFO    ] ================================================
[2026-06-19 03:49:35,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:49:35
[2026-06-19 03:49:36,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:49:36,496.496 INFO    ] Initializing speech engine...
[2026-06-19 03:49:36,506.506 INFO    ] 2026-06-19 03:49:36
[2026-06-19 03:49:36,763.763 INFO    ] 2026-06-19 03:49:36
[2026-06-19 03:49:36,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:49:36,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:49:36,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:49:37,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:49:37,149.149 INFO    ] time= 19/06/2026 03:49:37
[2026-06-19 03:49:37,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:49:37,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:49:37,327.327 INFO    ] No existing commands found in stream
[2026-06-19 03:49:42,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:49:42,356.356 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 03:49:43,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:49:43,869.869 INFO    ] Checking for system updates...
[2026-06-19 03:49:43,910.910 INFO    ] 200
[2026-06-19 03:49:43,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:43,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:49:43,971.971 INFO    ] No update needed
[2026-06-19 03:49:43,973.973 INFO    ] Checking for camera pi updates...
[2026-06-19 03:49:44,008.008 INFO    ] 200
[2026-06-19 03:49:44,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:44,053.053 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:49:44,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:49:44,101.101 INFO    ] No camera update needed
[2026-06-19 03:49:44,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:49:44,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:49:44,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:49:44,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:49:46,162.162 INFO    ] ================================================
[2026-06-19 03:49:46,177.177 INFO    ] Launching Daemon at Fri Jun 19 03:49:46 IST 2026
[2026-06-19 03:49:46,188.188 INFO    ] ================================================
[2026-06-19 03:49:46,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:49:46
[2026-06-19 03:49:47,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:49:47,699.699 INFO    ] Initializing speech engine...
[2026-06-19 03:49:47,722.722 INFO    ] 2026-06-19 03:49:47
[2026-06-19 03:49:47,990.990 INFO    ] 2026-06-19 03:49:47
[2026-06-19 03:49:48,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:49:48,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:49:48,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:49:48,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:49:48,391.391 INFO    ] time= 19/06/2026 03:49:48
[2026-06-19 03:49:48,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:49:48,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:49:48,461.461 INFO    ] No existing commands found in stream
[2026-06-19 03:49:53,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:49:53,470.470 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 03:49:53,868.868 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:49:53,871.871 INFO    ] Checking for system updates...
[2026-06-19 03:49:53,912.912 INFO    ] 200
[2026-06-19 03:49:53,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:53,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:49:53,978.978 INFO    ] No update needed
[2026-06-19 03:49:53,981.981 INFO    ] Checking for camera pi updates...
[2026-06-19 03:49:54,019.019 INFO    ] 200
[2026-06-19 03:49:54,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:49:54,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:49:54,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:49:54,116.116 INFO    ] No camera update needed
[2026-06-19 03:49:54,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:49:54,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:49:54,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:49:54,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:49:56,172.172 INFO    ] ================================================
[2026-06-19 03:49:56,188.188 INFO    ] Launching Daemon at Fri Jun 19 03:49:56 IST 2026
[2026-06-19 03:49:56,200.200 INFO    ] ================================================
[2026-06-19 03:49:56,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:49:56
[2026-06-19 03:49:57,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:49:57,607.607 INFO    ] Initializing speech engine...
[2026-06-19 03:49:57,626.626 INFO    ] 2026-06-19 03:49:57
[2026-06-19 03:49:57,887.887 INFO    ] 2026-06-19 03:49:57
[2026-06-19 03:49:57,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:49:58,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:49:58,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:49:58,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:49:58,265.265 INFO    ] time= 19/06/2026 03:49:58
[2026-06-19 03:49:58,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:49:58,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:49:58,447.447 INFO    ] No existing commands found in stream
[2026-06-19 03:50:03,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:50:03,475.475 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 03:50:08,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:50:08,185.185 INFO    ] Checking for system updates...
[2026-06-19 03:50:08,222.222 INFO    ] 200
[2026-06-19 03:50:08,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:08,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:50:08,281.281 INFO    ] No update needed
[2026-06-19 03:50:08,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 03:50:08,321.321 INFO    ] 200
[2026-06-19 03:50:08,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:08,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:50:08,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:50:08,419.419 INFO    ] No camera update needed
[2026-06-19 03:50:08,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:50:08,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:50:08,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:50:08,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:50:10,480.480 INFO    ] ================================================
[2026-06-19 03:50:10,496.496 INFO    ] Launching Daemon at Fri Jun 19 03:50:10 IST 2026
[2026-06-19 03:50:10,508.508 INFO    ] ================================================
[2026-06-19 03:50:11,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:50:11
[2026-06-19 03:50:11,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:50:11,942.942 INFO    ] Initializing speech engine...
[2026-06-19 03:50:11,951.951 INFO    ] 2026-06-19 03:50:11
[2026-06-19 03:50:12,228.228 INFO    ] 2026-06-19 03:50:12
[2026-06-19 03:50:12,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:50:12,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:50:12,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:50:12,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:50:12,596.596 INFO    ] time= 19/06/2026 03:50:12
[2026-06-19 03:50:12,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:50:12,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:50:12,758.758 INFO    ] No existing commands found in stream
[2026-06-19 03:50:17,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:50:17,791.791 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 03:50:19,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:50:19,149.149 INFO    ] Checking for system updates...
[2026-06-19 03:50:19,185.185 INFO    ] 200
[2026-06-19 03:50:19,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:19,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:50:19,245.245 INFO    ] No update needed
[2026-06-19 03:50:19,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 03:50:19,284.284 INFO    ] 200
[2026-06-19 03:50:19,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:19,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:50:19,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:50:19,383.383 INFO    ] No camera update needed
[2026-06-19 03:50:19,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:50:19,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:50:19,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:50:19,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:50:21,439.439 INFO    ] ================================================
[2026-06-19 03:50:21,455.455 INFO    ] Launching Daemon at Fri Jun 19 03:50:21 IST 2026
[2026-06-19 03:50:21,466.466 INFO    ] ================================================
[2026-06-19 03:50:22,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:50:22
[2026-06-19 03:50:22,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:50:23,082.082 INFO    ] Initializing speech engine...
[2026-06-19 03:50:23,089.089 INFO    ] 2026-06-19 03:50:23
[2026-06-19 03:50:23,347.347 INFO    ] 2026-06-19 03:50:23
[2026-06-19 03:50:23,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:50:23,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:50:23,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:50:23,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:50:23,681.681 INFO    ] time= 19/06/2026 03:50:23
[2026-06-19 03:50:23,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:50:23,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:50:23,791.791 INFO    ] No existing commands found in stream
[2026-06-19 03:50:28,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:50:28,806.806 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 03:50:32,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:50:32,558.558 INFO    ] Checking for system updates...
[2026-06-19 03:50:32,594.594 INFO    ] 200
[2026-06-19 03:50:32,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:32,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:50:32,657.657 INFO    ] No update needed
[2026-06-19 03:50:32,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 03:50:32,695.695 INFO    ] 200
[2026-06-19 03:50:32,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:32,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:50:32,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:50:32,779.779 INFO    ] No camera update needed
[2026-06-19 03:50:32,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:50:32,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:50:32,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:50:32,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:50:34,835.835 INFO    ] ================================================
[2026-06-19 03:50:34,850.850 INFO    ] Launching Daemon at Fri Jun 19 03:50:34 IST 2026
[2026-06-19 03:50:34,861.861 INFO    ] ================================================
[2026-06-19 03:50:35,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:50:35
[2026-06-19 03:50:36,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:50:36,349.349 INFO    ] Initializing speech engine...
[2026-06-19 03:50:36,357.357 INFO    ] 2026-06-19 03:50:36
[2026-06-19 03:50:36,643.643 INFO    ] 2026-06-19 03:50:36
[2026-06-19 03:50:36,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:50:36,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:50:36,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:50:37,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:50:37,090.090 INFO    ] time= 19/06/2026 03:50:37
[2026-06-19 03:50:37,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:50:37,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:50:37,295.295 INFO    ] No existing commands found in stream
[2026-06-19 03:50:42,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:50:42,330.330 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 03:50:45,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:50:45,952.952 INFO    ] Checking for system updates...
[2026-06-19 03:50:45,989.989 INFO    ] 200
[2026-06-19 03:50:45,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:46,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:50:46,055.055 INFO    ] No update needed
[2026-06-19 03:50:46,059.059 INFO    ] Checking for camera pi updates...
[2026-06-19 03:50:46,103.103 INFO    ] 200
[2026-06-19 03:50:46,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:46,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:50:46,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:50:46,196.196 INFO    ] No camera update needed
[2026-06-19 03:50:46,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:50:46,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:50:46,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:50:46,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:50:48,253.253 INFO    ] ================================================
[2026-06-19 03:50:48,268.268 INFO    ] Launching Daemon at Fri Jun 19 03:50:48 IST 2026
[2026-06-19 03:50:48,279.279 INFO    ] ================================================
[2026-06-19 03:50:48,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:50:48
[2026-06-19 03:50:49,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:50:49,685.685 INFO    ] Initializing speech engine...
[2026-06-19 03:50:49,694.694 INFO    ] 2026-06-19 03:50:49
[2026-06-19 03:50:49,983.983 INFO    ] 2026-06-19 03:50:49
[2026-06-19 03:50:50,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:50:50,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:50:50,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:50:50,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:50:50,327.327 INFO    ] time= 19/06/2026 03:50:50
[2026-06-19 03:50:50,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:50:50,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:50:50,407.407 INFO    ] No existing commands found in stream
[2026-06-19 03:50:55,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:50:55,422.422 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 03:50:57,329.329 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:50:57,337.337 INFO    ] Checking for system updates...
[2026-06-19 03:50:57,373.373 INFO    ] 200
[2026-06-19 03:50:57,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:57,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:50:57,437.437 INFO    ] No update needed
[2026-06-19 03:50:57,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 03:50:57,480.480 INFO    ] 200
[2026-06-19 03:50:57,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:50:57,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:50:57,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:50:57,575.575 INFO    ] No camera update needed
[2026-06-19 03:50:57,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:50:57,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:50:57,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:50:57,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:50:59,631.631 INFO    ] ================================================
[2026-06-19 03:50:59,646.646 INFO    ] Launching Daemon at Fri Jun 19 03:50:59 IST 2026
[2026-06-19 03:50:59,657.657 INFO    ] ================================================
[2026-06-19 03:51:00,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:51:00
[2026-06-19 03:51:00,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:51:01,132.132 INFO    ] Initializing speech engine...
[2026-06-19 03:51:01,142.142 INFO    ] 2026-06-19 03:51:01
[2026-06-19 03:51:01,409.409 INFO    ] 2026-06-19 03:51:01
[2026-06-19 03:51:01,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:51:01,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:51:01,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:51:01,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:51:01,872.872 INFO    ] time= 19/06/2026 03:51:01
[2026-06-19 03:51:01,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:51:01,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:51:01,982.982 INFO    ] No existing commands found in stream
[2026-06-19 03:51:06,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:51:06,996.996 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 03:51:08,000.000 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:51:08,003.003 INFO    ] Checking for system updates...
[2026-06-19 03:51:08,046.046 INFO    ] 200
[2026-06-19 03:51:08,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:08,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:51:08,113.113 INFO    ] No update needed
[2026-06-19 03:51:08,116.116 INFO    ] Checking for camera pi updates...
[2026-06-19 03:51:08,150.150 INFO    ] 200
[2026-06-19 03:51:08,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:08,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:51:08,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:51:08,240.240 INFO    ] No camera update needed
[2026-06-19 03:51:08,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:51:08,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:51:08,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:51:08,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:51:10,296.296 INFO    ] ================================================
[2026-06-19 03:51:10,311.311 INFO    ] Launching Daemon at Fri Jun 19 03:51:10 IST 2026
[2026-06-19 03:51:10,322.322 INFO    ] ================================================
[2026-06-19 03:51:10,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:51:10
[2026-06-19 03:51:11,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:51:11,800.800 INFO    ] Initializing speech engine...
[2026-06-19 03:51:11,807.807 INFO    ] 2026-06-19 03:51:11
[2026-06-19 03:51:12,073.073 INFO    ] 2026-06-19 03:51:12
[2026-06-19 03:51:12,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:51:12,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:51:12,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:51:12,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:51:12,458.458 INFO    ] time= 19/06/2026 03:51:12
[2026-06-19 03:51:12,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:51:12,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:51:12,588.588 INFO    ] No existing commands found in stream
[2026-06-19 03:51:17,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:51:17,609.609 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 03:51:21,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:51:21,809.809 INFO    ] Checking for system updates...
[2026-06-19 03:51:21,845.845 INFO    ] 200
[2026-06-19 03:51:21,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:21,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:51:21,911.911 INFO    ] No update needed
[2026-06-19 03:51:21,913.913 INFO    ] Checking for camera pi updates...
[2026-06-19 03:51:21,947.947 INFO    ] 200
[2026-06-19 03:51:21,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:21,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:51:22,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:51:22,045.045 INFO    ] No camera update needed
[2026-06-19 03:51:22,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:51:22,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:51:22,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:51:22,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:51:24,103.103 INFO    ] ================================================
[2026-06-19 03:51:24,118.118 INFO    ] Launching Daemon at Fri Jun 19 03:51:24 IST 2026
[2026-06-19 03:51:24,130.130 INFO    ] ================================================
[2026-06-19 03:51:24,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:51:24
[2026-06-19 03:51:25,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:51:25,645.645 INFO    ] Initializing speech engine...
[2026-06-19 03:51:25,657.657 INFO    ] 2026-06-19 03:51:25
[2026-06-19 03:51:25,932.932 INFO    ] 2026-06-19 03:51:25
[2026-06-19 03:51:25,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:51:26,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:51:26,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:51:26,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:51:26,446.446 INFO    ] time= 19/06/2026 03:51:26
[2026-06-19 03:51:26,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:51:26,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:51:26,634.634 INFO    ] No existing commands found in stream
[2026-06-19 03:51:31,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:51:31,664.664 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 03:51:33,537.537 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:51:33,540.540 INFO    ] Checking for system updates...
[2026-06-19 03:51:33,581.581 INFO    ] 200
[2026-06-19 03:51:33,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:33,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:51:33,643.643 INFO    ] No update needed
[2026-06-19 03:51:33,646.646 INFO    ] Checking for camera pi updates...
[2026-06-19 03:51:33,684.684 INFO    ] 200
[2026-06-19 03:51:33,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:33,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:51:33,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:51:33,778.778 INFO    ] No camera update needed
[2026-06-19 03:51:33,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:51:33,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:51:33,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:51:33,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:51:35,837.837 INFO    ] ================================================
[2026-06-19 03:51:35,853.853 INFO    ] Launching Daemon at Fri Jun 19 03:51:35 IST 2026
[2026-06-19 03:51:35,864.864 INFO    ] ================================================
[2026-06-19 03:51:36,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:51:36
[2026-06-19 03:51:37,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:51:37,336.336 INFO    ] Initializing speech engine...
[2026-06-19 03:51:37,343.343 INFO    ] 2026-06-19 03:51:37
[2026-06-19 03:51:37,593.593 INFO    ] 2026-06-19 03:51:37
[2026-06-19 03:51:37,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:51:37,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:51:37,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:51:38,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:51:38,076.076 INFO    ] time= 19/06/2026 03:51:38
[2026-06-19 03:51:38,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:51:38,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:51:38,211.211 INFO    ] No existing commands found in stream
[2026-06-19 03:51:43,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:51:43,227.227 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 03:51:46,426.426 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:51:46,428.428 INFO    ] Checking for system updates...
[2026-06-19 03:51:46,465.465 INFO    ] 200
[2026-06-19 03:51:46,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:46,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:51:46,523.523 INFO    ] No update needed
[2026-06-19 03:51:46,526.526 INFO    ] Checking for camera pi updates...
[2026-06-19 03:51:46,560.560 INFO    ] 200
[2026-06-19 03:51:46,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:46,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:51:46,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:51:46,641.641 INFO    ] No camera update needed
[2026-06-19 03:51:46,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:51:46,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:51:46,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:51:46,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:51:48,697.697 INFO    ] ================================================
[2026-06-19 03:51:48,712.712 INFO    ] Launching Daemon at Fri Jun 19 03:51:48 IST 2026
[2026-06-19 03:51:48,723.723 INFO    ] ================================================
[2026-06-19 03:51:49,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:51:49
[2026-06-19 03:51:49,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:51:50,155.155 INFO    ] Initializing speech engine...
[2026-06-19 03:51:50,171.171 INFO    ] 2026-06-19 03:51:50
[2026-06-19 03:51:50,460.460 INFO    ] 2026-06-19 03:51:50
[2026-06-19 03:51:50,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:51:50,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:51:50,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:51:50,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:51:50,847.847 INFO    ] time= 19/06/2026 03:51:50
[2026-06-19 03:51:50,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:51:50,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:51:50,973.973 INFO    ] No existing commands found in stream
[2026-06-19 03:51:55,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:51:55,994.994 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 03:51:58,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:51:58,277.277 INFO    ] Checking for system updates...
[2026-06-19 03:51:58,314.314 INFO    ] 200
[2026-06-19 03:51:58,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:58,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:51:58,376.376 INFO    ] No update needed
[2026-06-19 03:51:58,379.379 INFO    ] Checking for camera pi updates...
[2026-06-19 03:51:58,417.417 INFO    ] 200
[2026-06-19 03:51:58,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:51:58,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:51:58,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:51:58,502.502 INFO    ] No camera update needed
[2026-06-19 03:51:58,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:51:58,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:51:58,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:51:58,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:52:00,558.558 INFO    ] ================================================
[2026-06-19 03:52:00,575.575 INFO    ] Launching Daemon at Fri Jun 19 03:52:00 IST 2026
[2026-06-19 03:52:00,587.587 INFO    ] ================================================
[2026-06-19 03:52:01,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:52:01
[2026-06-19 03:52:01,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:52:02,268.268 INFO    ] Initializing speech engine...
[2026-06-19 03:52:02,284.284 INFO    ] 2026-06-19 03:52:02
[2026-06-19 03:52:02,635.635 INFO    ] 2026-06-19 03:52:02
[2026-06-19 03:52:02,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:52:02,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:52:02,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:52:03,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:52:03,117.117 INFO    ] time= 19/06/2026 03:52:03
[2026-06-19 03:52:03,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:52:03,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:52:03,264.264 INFO    ] No existing commands found in stream
[2026-06-19 03:52:08,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:52:08,290.290 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 03:52:10,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:52:10,419.419 INFO    ] Checking for system updates...
[2026-06-19 03:52:10,455.455 INFO    ] 200
[2026-06-19 03:52:10,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:10,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:52:10,514.514 INFO    ] No update needed
[2026-06-19 03:52:10,517.517 INFO    ] Checking for camera pi updates...
[2026-06-19 03:52:10,554.554 INFO    ] 200
[2026-06-19 03:52:10,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:10,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:52:10,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:52:10,648.648 INFO    ] No camera update needed
[2026-06-19 03:52:10,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:52:10,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:52:10,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:52:10,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:52:12,705.705 INFO    ] ================================================
[2026-06-19 03:52:12,720.720 INFO    ] Launching Daemon at Fri Jun 19 03:52:12 IST 2026
[2026-06-19 03:52:12,731.731 INFO    ] ================================================
[2026-06-19 03:52:13,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:52:13
[2026-06-19 03:52:13,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:52:14,166.166 INFO    ] Initializing speech engine...
[2026-06-19 03:52:14,175.175 INFO    ] 2026-06-19 03:52:14
[2026-06-19 03:52:14,426.426 INFO    ] 2026-06-19 03:52:14
[2026-06-19 03:52:14,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:52:14,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:52:14,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:52:14,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:52:14,906.906 INFO    ] time= 19/06/2026 03:52:14
[2026-06-19 03:52:14,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:52:15,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:52:15,062.062 INFO    ] No existing commands found in stream
[2026-06-19 03:52:20,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:52:20,077.077 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 03:52:20,636.636 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:52:20,639.639 INFO    ] Checking for system updates...
[2026-06-19 03:52:20,679.679 INFO    ] 200
[2026-06-19 03:52:20,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:20,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:52:20,738.738 INFO    ] No update needed
[2026-06-19 03:52:20,740.740 INFO    ] Checking for camera pi updates...
[2026-06-19 03:52:20,775.775 INFO    ] 200
[2026-06-19 03:52:20,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:20,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:52:20,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:52:20,849.849 INFO    ] No camera update needed
[2026-06-19 03:52:20,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:52:20,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:52:20,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:52:20,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:52:22,904.904 INFO    ] ================================================
[2026-06-19 03:52:22,920.920 INFO    ] Launching Daemon at Fri Jun 19 03:52:22 IST 2026
[2026-06-19 03:52:22,931.931 INFO    ] ================================================
[2026-06-19 03:52:23,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:52:23
[2026-06-19 03:52:24,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:52:24,338.338 INFO    ] Initializing speech engine...
[2026-06-19 03:52:24,344.344 INFO    ] 2026-06-19 03:52:24
[2026-06-19 03:52:24,640.640 INFO    ] 2026-06-19 03:52:24
[2026-06-19 03:52:24,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:52:24,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:52:24,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:52:25,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:52:25,020.020 INFO    ] time= 19/06/2026 03:52:25
[2026-06-19 03:52:25,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:52:25,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:52:25,145.145 INFO    ] No existing commands found in stream
[2026-06-19 03:52:30,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:52:30,161.161 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 03:52:32,365.365 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:52:32,368.368 INFO    ] Checking for system updates...
[2026-06-19 03:52:32,406.406 INFO    ] 200
[2026-06-19 03:52:32,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:32,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:52:32,476.476 INFO    ] No update needed
[2026-06-19 03:52:32,479.479 INFO    ] Checking for camera pi updates...
[2026-06-19 03:52:32,519.519 INFO    ] 200
[2026-06-19 03:52:32,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:32,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:52:32,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:52:32,603.603 INFO    ] No camera update needed
[2026-06-19 03:52:32,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:52:32,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:52:32,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:52:32,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:52:34,668.668 INFO    ] ================================================
[2026-06-19 03:52:34,684.684 INFO    ] Launching Daemon at Fri Jun 19 03:52:34 IST 2026
[2026-06-19 03:52:34,695.695 INFO    ] ================================================
[2026-06-19 03:52:35,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:52:35
[2026-06-19 03:52:35,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:52:36,159.159 INFO    ] Initializing speech engine...
[2026-06-19 03:52:36,173.173 INFO    ] 2026-06-19 03:52:36
[2026-06-19 03:52:36,462.462 INFO    ] 2026-06-19 03:52:36
[2026-06-19 03:52:36,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:52:36,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:52:36,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:52:36,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:52:36,885.885 INFO    ] time= 19/06/2026 03:52:36
[2026-06-19 03:52:36,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:52:36,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:52:36,971.971 INFO    ] No existing commands found in stream
[2026-06-19 03:52:41,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:52:41,986.986 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 03:52:44,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:52:44,801.801 INFO    ] Checking for system updates...
[2026-06-19 03:52:44,837.837 INFO    ] 200
[2026-06-19 03:52:44,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:44,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:52:44,895.895 INFO    ] No update needed
[2026-06-19 03:52:44,898.898 INFO    ] Checking for camera pi updates...
[2026-06-19 03:52:44,932.932 INFO    ] 200
[2026-06-19 03:52:44,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:44,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:52:45,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:52:45,022.022 INFO    ] No camera update needed
[2026-06-19 03:52:45,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:52:45,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:52:45,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:52:45,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:52:47,079.079 INFO    ] ================================================
[2026-06-19 03:52:47,095.095 INFO    ] Launching Daemon at Fri Jun 19 03:52:47 IST 2026
[2026-06-19 03:52:47,107.107 INFO    ] ================================================
[2026-06-19 03:52:47,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:52:47
[2026-06-19 03:52:48,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:52:48,750.750 INFO    ] Initializing speech engine...
[2026-06-19 03:52:48,762.762 INFO    ] 2026-06-19 03:52:48
[2026-06-19 03:52:49,073.073 INFO    ] 2026-06-19 03:52:49
[2026-06-19 03:52:49,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:52:49,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:52:49,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:52:49,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:52:49,516.516 INFO    ] time= 19/06/2026 03:52:49
[2026-06-19 03:52:49,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:52:49,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:52:49,664.664 INFO    ] No existing commands found in stream
[2026-06-19 03:52:54,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:52:54,690.690 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 03:52:56,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:52:56,662.662 INFO    ] Checking for system updates...
[2026-06-19 03:52:56,702.702 INFO    ] 200
[2026-06-19 03:52:56,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:56,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:52:56,769.769 INFO    ] No update needed
[2026-06-19 03:52:56,772.772 INFO    ] Checking for camera pi updates...
[2026-06-19 03:52:56,808.808 INFO    ] 200
[2026-06-19 03:52:56,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:52:56,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:52:56,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:52:56,897.897 INFO    ] No camera update needed
[2026-06-19 03:52:56,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:52:56,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:52:56,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:52:56,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:52:58,959.959 INFO    ] ================================================
[2026-06-19 03:52:58,975.975 INFO    ] Launching Daemon at Fri Jun 19 03:52:58 IST 2026
[2026-06-19 03:52:58,986.986 INFO    ] ================================================
[2026-06-19 03:52:59,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:52:59
[2026-06-19 03:53:00,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:53:00,451.451 INFO    ] Initializing speech engine...
[2026-06-19 03:53:00,460.460 INFO    ] 2026-06-19 03:53:00
[2026-06-19 03:53:00,736.736 INFO    ] 2026-06-19 03:53:00
[2026-06-19 03:53:00,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:53:00,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:53:00,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:53:01,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:53:01,113.113 INFO    ] time= 19/06/2026 03:53:01
[2026-06-19 03:53:01,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:53:01,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:53:01,203.203 INFO    ] No existing commands found in stream
[2026-06-19 03:53:06,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:53:06,217.217 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 03:53:10,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:53:10,410.410 INFO    ] Checking for system updates...
[2026-06-19 03:53:10,451.451 INFO    ] 200
[2026-06-19 03:53:10,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:53:10,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:53:10,511.511 INFO    ] No update needed
[2026-06-19 03:53:10,514.514 INFO    ] Checking for camera pi updates...
[2026-06-19 03:53:10,549.549 INFO    ] 200
[2026-06-19 03:53:10,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:53:10,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:53:10,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:53:10,746.746 INFO    ] No camera update needed
[2026-06-19 03:53:10,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:53:10,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:53:10,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:53:10,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:53:12,802.802 INFO    ] ================================================
[2026-06-19 03:53:12,817.817 INFO    ] Launching Daemon at Fri Jun 19 03:53:12 IST 2026
[2026-06-19 03:53:12,829.829 INFO    ] ================================================
[2026-06-19 03:53:13,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:53:13
[2026-06-19 03:53:13,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:53:14,251.251 INFO    ] Initializing speech engine...
[2026-06-19 03:53:14,273.273 INFO    ] 2026-06-19 03:53:14
[2026-06-19 03:53:14,529.529 INFO    ] 2026-06-19 03:53:14
[2026-06-19 03:53:14,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:53:14,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:53:14,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:53:14,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:53:15,007.007 INFO    ] time= 19/06/2026 03:53:14
[2026-06-19 03:53:15,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:53:15,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:53:15,220.220 INFO    ] No existing commands found in stream
[2026-06-19 03:53:20,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:53:20,251.251 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 03:53:24,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:53:24,431.431 INFO    ] Checking for system updates...
[2026-06-19 03:53:24,474.474 INFO    ] 200
[2026-06-19 03:53:24,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:53:24,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:53:24,533.533 INFO    ] No update needed
[2026-06-19 03:53:24,536.536 INFO    ] Checking for camera pi updates...
[2026-06-19 03:53:24,571.571 INFO    ] 200
[2026-06-19 03:53:24,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:53:24,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:53:24,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:53:24,668.668 INFO    ] No camera update needed
[2026-06-19 03:53:24,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:53:24,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:53:24,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:53:24,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:53:26,726.726 INFO    ] ================================================
[2026-06-19 03:53:26,742.742 INFO    ] Launching Daemon at Fri Jun 19 03:53:26 IST 2026
[2026-06-19 03:53:26,753.753 INFO    ] ================================================
[2026-06-19 03:53:27,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:53:27
[2026-06-19 03:53:27,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:53:28,212.212 INFO    ] Initializing speech engine...
[2026-06-19 03:53:28,221.221 INFO    ] 2026-06-19 03:53:28
[2026-06-19 03:53:28,483.483 INFO    ] 2026-06-19 03:53:28
[2026-06-19 03:53:28,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:53:28,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:53:28,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:53:28,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:53:28,964.964 INFO    ] time= 19/06/2026 03:53:28
[2026-06-19 03:53:29,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:53:29,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:53:29,089.089 INFO    ] No existing commands found in stream
[2026-06-19 03:53:34,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:53:34,103.103 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 03:53:35,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:53:35,644.644 INFO    ] Checking for system updates...
[2026-06-19 03:53:35,681.681 INFO    ] 200
[2026-06-19 03:53:35,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:53:35,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:53:35,739.739 INFO    ] No update needed
[2026-06-19 03:53:35,742.742 INFO    ] Checking for camera pi updates...
[2026-06-19 03:53:35,779.779 INFO    ] 200
[2026-06-19 03:53:35,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:53:35,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:53:35,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:53:35,873.873 INFO    ] No camera update needed
[2026-06-19 03:53:35,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:53:35,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:53:35,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:53:35,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:53:37,932.932 INFO    ] ================================================
[2026-06-19 03:53:37,947.947 INFO    ] Launching Daemon at Fri Jun 19 03:53:37 IST 2026
[2026-06-19 03:53:37,958.958 INFO    ] ================================================
[2026-06-19 03:53:38,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:53:38
[2026-06-19 03:53:39,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:53:39,595.595 INFO    ] Initializing speech engine...
[2026-06-19 03:53:39,609.609 INFO    ] 2026-06-19 03:53:39
[2026-06-19 03:53:39,902.902 INFO    ] 2026-06-19 03:53:39
[2026-06-19 03:53:39,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:53:40,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:53:40,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:53:40,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:53:40,367.367 INFO    ] time= 19/06/2026 03:53:40
[2026-06-19 03:53:40,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:53:40,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:53:40,580.580 INFO    ] No existing commands found in stream
[2026-06-19 03:53:45,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:53:45,611.611 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 03:53:48,082.082 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:53:48,086.086 INFO    ] Checking for system updates...
[2026-06-19 03:53:48,124.124 INFO    ] 200
[2026-06-19 03:53:48,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:53:48,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:53:48,183.183 INFO    ] No update needed
[2026-06-19 03:53:48,185.185 INFO    ] Checking for camera pi updates...
[2026-06-19 03:53:48,220.220 INFO    ] 200
[2026-06-19 03:53:48,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:53:48,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:53:48,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:53:48,294.294 INFO    ] No camera update needed
[2026-06-19 03:53:48,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:53:48,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:53:48,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:53:48,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:53:50,353.353 INFO    ] ================================================
[2026-06-19 03:53:50,368.368 INFO    ] Launching Daemon at Fri Jun 19 03:53:50 IST 2026
[2026-06-19 03:53:50,379.379 INFO    ] ================================================
[2026-06-19 03:53:50,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:53:50
[2026-06-19 03:53:51,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:53:51,815.815 INFO    ] Initializing speech engine...
[2026-06-19 03:53:51,821.821 INFO    ] 2026-06-19 03:53:51
[2026-06-19 03:53:52,124.124 INFO    ] 2026-06-19 03:53:52
[2026-06-19 03:53:52,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:53:52,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:53:52,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:53:52,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:53:52,511.511 INFO    ] time= 19/06/2026 03:53:52
[2026-06-19 03:53:52,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:53:52,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:53:52,637.637 INFO    ] No existing commands found in stream
[2026-06-19 03:53:57,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:53:57,650.650 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 03:54:01,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:54:01,931.931 INFO    ] Checking for system updates...
[2026-06-19 03:54:01,972.972 INFO    ] 200
[2026-06-19 03:54:01,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:02,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:54:02,044.044 INFO    ] No update needed
[2026-06-19 03:54:02,047.047 INFO    ] Checking for camera pi updates...
[2026-06-19 03:54:02,087.087 INFO    ] 200
[2026-06-19 03:54:02,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:02,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:54:02,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:54:02,182.182 INFO    ] No camera update needed
[2026-06-19 03:54:02,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:54:02,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:54:02,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:54:02,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:54:04,247.247 INFO    ] ================================================
[2026-06-19 03:54:04,263.263 INFO    ] Launching Daemon at Fri Jun 19 03:54:04 IST 2026
[2026-06-19 03:54:04,273.273 INFO    ] ================================================
[2026-06-19 03:54:04,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:54:04
[2026-06-19 03:54:05,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:54:05,739.739 INFO    ] Initializing speech engine...
[2026-06-19 03:54:05,747.747 INFO    ] 2026-06-19 03:54:05
[2026-06-19 03:54:06,009.009 INFO    ] 2026-06-19 03:54:06
[2026-06-19 03:54:06,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:54:06,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:54:06,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:54:06,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:54:06,500.500 INFO    ] time= 19/06/2026 03:54:06
[2026-06-19 03:54:06,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:54:06,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:54:06,633.633 INFO    ] No existing commands found in stream
[2026-06-19 03:54:11,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:54:11,648.648 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 03:54:13,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:54:13,518.518 INFO    ] Checking for system updates...
[2026-06-19 03:54:13,555.555 INFO    ] 200
[2026-06-19 03:54:13,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:13,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:54:13,620.620 INFO    ] No update needed
[2026-06-19 03:54:13,623.623 INFO    ] Checking for camera pi updates...
[2026-06-19 03:54:13,658.658 INFO    ] 200
[2026-06-19 03:54:13,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:13,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:54:13,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:54:13,754.754 INFO    ] No camera update needed
[2026-06-19 03:54:13,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:54:13,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:54:13,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:54:13,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:54:15,815.815 INFO    ] ================================================
[2026-06-19 03:54:15,831.831 INFO    ] Launching Daemon at Fri Jun 19 03:54:15 IST 2026
[2026-06-19 03:54:15,842.842 INFO    ] ================================================
[2026-06-19 03:54:16,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:54:16
[2026-06-19 03:54:17,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:54:17,431.431 INFO    ] Initializing speech engine...
[2026-06-19 03:54:17,439.439 INFO    ] 2026-06-19 03:54:17
[2026-06-19 03:54:17,763.763 INFO    ] 2026-06-19 03:54:17
[2026-06-19 03:54:17,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:54:18,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:54:18,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:54:18,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:54:18,287.287 INFO    ] time= 19/06/2026 03:54:18
[2026-06-19 03:54:18,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:54:18,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:54:18,426.426 INFO    ] No existing commands found in stream
[2026-06-19 03:54:23,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:54:23,458.458 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 03:54:27,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:54:27,489.489 INFO    ] Checking for system updates...
[2026-06-19 03:54:27,527.527 INFO    ] 200
[2026-06-19 03:54:27,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:27,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:54:27,600.600 INFO    ] No update needed
[2026-06-19 03:54:27,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 03:54:27,644.644 INFO    ] 200
[2026-06-19 03:54:27,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:27,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:54:27,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:54:27,754.754 INFO    ] No camera update needed
[2026-06-19 03:54:27,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:54:27,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:54:27,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:54:27,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:54:29,814.814 INFO    ] ================================================
[2026-06-19 03:54:29,829.829 INFO    ] Launching Daemon at Fri Jun 19 03:54:29 IST 2026
[2026-06-19 03:54:29,839.839 INFO    ] ================================================
[2026-06-19 03:54:30,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:54:30
[2026-06-19 03:54:31,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:54:31,500.500 INFO    ] Initializing speech engine...
[2026-06-19 03:54:31,514.514 INFO    ] 2026-06-19 03:54:31
[2026-06-19 03:54:31,811.811 INFO    ] 2026-06-19 03:54:31
[2026-06-19 03:54:31,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:54:31,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:54:32,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:54:32,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:54:32,188.188 INFO    ] time= 19/06/2026 03:54:32
[2026-06-19 03:54:32,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:54:32,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:54:32,275.275 INFO    ] No existing commands found in stream
[2026-06-19 03:54:37,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:54:37,290.290 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 03:54:41,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:54:41,312.312 INFO    ] Checking for system updates...
[2026-06-19 03:54:41,348.348 INFO    ] 200
[2026-06-19 03:54:41,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:41,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:54:41,406.406 INFO    ] No update needed
[2026-06-19 03:54:41,409.409 INFO    ] Checking for camera pi updates...
[2026-06-19 03:54:41,442.442 INFO    ] 200
[2026-06-19 03:54:41,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:41,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:54:41,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:54:41,528.528 INFO    ] No camera update needed
[2026-06-19 03:54:41,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:54:41,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:54:41,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:54:41,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:54:43,588.588 INFO    ] ================================================
[2026-06-19 03:54:43,603.603 INFO    ] Launching Daemon at Fri Jun 19 03:54:43 IST 2026
[2026-06-19 03:54:43,613.613 INFO    ] ================================================
[2026-06-19 03:54:44,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:54:44
[2026-06-19 03:54:44,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:54:45,018.018 INFO    ] Initializing speech engine...
[2026-06-19 03:54:45,033.033 INFO    ] 2026-06-19 03:54:45
[2026-06-19 03:54:45,302.302 INFO    ] 2026-06-19 03:54:45
[2026-06-19 03:54:45,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:54:45,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:54:45,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:54:45,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:54:45,764.764 INFO    ] time= 19/06/2026 03:54:45
[2026-06-19 03:54:45,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:54:45,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:54:45,922.922 INFO    ] No existing commands found in stream
[2026-06-19 03:54:50,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:54:50,937.937 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 03:54:54,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:54:54,690.690 INFO    ] Checking for system updates...
[2026-06-19 03:54:54,731.731 INFO    ] 200
[2026-06-19 03:54:54,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:54,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:54:54,793.793 INFO    ] No update needed
[2026-06-19 03:54:54,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 03:54:54,838.838 INFO    ] 200
[2026-06-19 03:54:54,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:54:54,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:54:54,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:54:54,929.929 INFO    ] No camera update needed
[2026-06-19 03:54:54,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:54:54,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:54:54,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:54:54,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:54:56,987.987 INFO    ] ================================================
[2026-06-19 03:54:57,003.003 INFO    ] Launching Daemon at Fri Jun 19 03:54:56 IST 2026
[2026-06-19 03:54:57,014.014 INFO    ] ================================================
[2026-06-19 03:54:57,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:54:57
[2026-06-19 03:54:58,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:54:58,447.447 INFO    ] Initializing speech engine...
[2026-06-19 03:54:58,455.455 INFO    ] 2026-06-19 03:54:58
[2026-06-19 03:54:58,707.707 INFO    ] 2026-06-19 03:54:58
[2026-06-19 03:54:58,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:54:58,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:54:58,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:54:59,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:54:59,085.085 INFO    ] time= 19/06/2026 03:54:59
[2026-06-19 03:54:59,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:54:59,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:54:59,245.245 INFO    ] No existing commands found in stream
[2026-06-19 03:55:04,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:55:04,273.273 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 03:55:08,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:55:08,676.676 INFO    ] Checking for system updates...
[2026-06-19 03:55:08,713.713 INFO    ] 200
[2026-06-19 03:55:08,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:08,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:55:08,773.773 INFO    ] No update needed
[2026-06-19 03:55:08,776.776 INFO    ] Checking for camera pi updates...
[2026-06-19 03:55:08,811.811 INFO    ] 200
[2026-06-19 03:55:08,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:08,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:55:08,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:55:08,908.908 INFO    ] No camera update needed
[2026-06-19 03:55:08,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:55:08,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:55:08,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:55:08,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:55:10,968.968 INFO    ] ================================================
[2026-06-19 03:55:10,984.984 INFO    ] Launching Daemon at Fri Jun 19 03:55:10 IST 2026
[2026-06-19 03:55:11,995.995 INFO    ] ================================================
[2026-06-19 03:55:11,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:55:11
[2026-06-19 03:55:12,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:55:12,510.510 INFO    ] Initializing speech engine...
[2026-06-19 03:55:12,516.516 INFO    ] 2026-06-19 03:55:12
[2026-06-19 03:55:12,786.786 INFO    ] 2026-06-19 03:55:12
[2026-06-19 03:55:12,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:55:13,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:55:13,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:55:13,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:55:13,358.358 INFO    ] time= 19/06/2026 03:55:13
[2026-06-19 03:55:13,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:55:13,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:55:13,471.471 INFO    ] No existing commands found in stream
[2026-06-19 03:55:18,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:55:18,489.489 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 03:55:20,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:55:20,090.090 INFO    ] Checking for system updates...
[2026-06-19 03:55:20,131.131 INFO    ] 200
[2026-06-19 03:55:20,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:20,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:55:20,191.191 INFO    ] No update needed
[2026-06-19 03:55:20,194.194 INFO    ] Checking for camera pi updates...
[2026-06-19 03:55:20,230.230 INFO    ] 200
[2026-06-19 03:55:20,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:20,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:55:20,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:55:20,431.431 INFO    ] No camera update needed
[2026-06-19 03:55:20,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:55:20,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:55:20,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:55:20,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:55:22,497.497 INFO    ] ================================================
[2026-06-19 03:55:22,513.513 INFO    ] Launching Daemon at Fri Jun 19 03:55:22 IST 2026
[2026-06-19 03:55:22,524.524 INFO    ] ================================================
[2026-06-19 03:55:23,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:55:23
[2026-06-19 03:55:23,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:55:24,233.233 INFO    ] Initializing speech engine...
[2026-06-19 03:55:24,245.245 INFO    ] 2026-06-19 03:55:24
[2026-06-19 03:55:24,568.568 INFO    ] 2026-06-19 03:55:24
[2026-06-19 03:55:24,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:55:24,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:55:24,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:55:25,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:55:25,079.079 INFO    ] time= 19/06/2026 03:55:25
[2026-06-19 03:55:25,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:55:25,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:55:25,231.231 INFO    ] No existing commands found in stream
[2026-06-19 03:55:30,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:55:30,251.251 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 03:55:33,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:55:33,949.949 INFO    ] Checking for system updates...
[2026-06-19 03:55:33,986.986 INFO    ] 200
[2026-06-19 03:55:33,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:34,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:55:34,047.047 INFO    ] No update needed
[2026-06-19 03:55:34,050.050 INFO    ] Checking for camera pi updates...
[2026-06-19 03:55:34,085.085 INFO    ] 200
[2026-06-19 03:55:34,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:34,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:55:34,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:55:34,180.180 INFO    ] No camera update needed
[2026-06-19 03:55:34,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:55:34,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:55:34,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:55:34,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:55:36,240.240 INFO    ] ================================================
[2026-06-19 03:55:36,254.254 INFO    ] Launching Daemon at Fri Jun 19 03:55:36 IST 2026
[2026-06-19 03:55:36,265.265 INFO    ] ================================================
[2026-06-19 03:55:36,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:55:36
[2026-06-19 03:55:37,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:55:37,686.686 INFO    ] Initializing speech engine...
[2026-06-19 03:55:37,693.693 INFO    ] 2026-06-19 03:55:37
[2026-06-19 03:55:37,999.999 INFO    ] 2026-06-19 03:55:37
[2026-06-19 03:55:38,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:55:38,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:55:38,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:55:38,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:55:38,364.364 INFO    ] time= 19/06/2026 03:55:38
[2026-06-19 03:55:38,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:55:38,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:55:38,445.445 INFO    ] No existing commands found in stream
[2026-06-19 03:55:43,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:55:43,459.459 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 03:55:43,957.957 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:55:43,959.959 INFO    ] Checking for system updates...
[2026-06-19 03:55:43,996.996 INFO    ] 200
[2026-06-19 03:55:43,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:44,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:55:44,061.061 INFO    ] No update needed
[2026-06-19 03:55:44,064.064 INFO    ] Checking for camera pi updates...
[2026-06-19 03:55:44,102.102 INFO    ] 200
[2026-06-19 03:55:44,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:44,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:55:44,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:55:44,190.190 INFO    ] No camera update needed
[2026-06-19 03:55:44,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:55:44,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:55:44,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:55:44,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:55:46,245.245 INFO    ] ================================================
[2026-06-19 03:55:46,261.261 INFO    ] Launching Daemon at Fri Jun 19 03:55:46 IST 2026
[2026-06-19 03:55:46,272.272 INFO    ] ================================================
[2026-06-19 03:55:46,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:55:46
[2026-06-19 03:55:47,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:55:47,945.945 INFO    ] Initializing speech engine...
[2026-06-19 03:55:47,959.959 INFO    ] 2026-06-19 03:55:47
[2026-06-19 03:55:48,246.246 INFO    ] 2026-06-19 03:55:48
[2026-06-19 03:55:48,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:55:48,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:55:48,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:55:48,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:55:48,722.722 INFO    ] time= 19/06/2026 03:55:48
[2026-06-19 03:55:48,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:55:48,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:55:48,922.922 INFO    ] No existing commands found in stream
[2026-06-19 03:55:53,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:55:53,951.951 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 03:55:55,355.355 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:55:55,358.358 INFO    ] Checking for system updates...
[2026-06-19 03:55:55,398.398 INFO    ] 200
[2026-06-19 03:55:55,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:55,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:55:55,457.457 INFO    ] No update needed
[2026-06-19 03:55:55,460.460 INFO    ] Checking for camera pi updates...
[2026-06-19 03:55:55,494.494 INFO    ] 200
[2026-06-19 03:55:55,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:55:55,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:55:55,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:55:55,592.592 INFO    ] No camera update needed
[2026-06-19 03:55:55,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:55:55,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:55:55,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:55:55,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:55:57,652.652 INFO    ] ================================================
[2026-06-19 03:55:57,668.668 INFO    ] Launching Daemon at Fri Jun 19 03:55:57 IST 2026
[2026-06-19 03:55:57,679.679 INFO    ] ================================================
[2026-06-19 03:55:58,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:55:58
[2026-06-19 03:55:58,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:55:59,076.076 INFO    ] Initializing speech engine...
[2026-06-19 03:55:59,084.084 INFO    ] 2026-06-19 03:55:59
[2026-06-19 03:55:59,358.358 INFO    ] 2026-06-19 03:55:59
[2026-06-19 03:55:59,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:55:59,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:55:59,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:55:59,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:55:59,735.735 INFO    ] time= 19/06/2026 03:55:59
[2026-06-19 03:55:59,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:55:59,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:55:59,896.896 INFO    ] No existing commands found in stream
[2026-06-19 03:56:04,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:56:04,929.929 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 03:56:06,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:56:06,852.852 INFO    ] Checking for system updates...
[2026-06-19 03:56:06,888.888 INFO    ] 200
[2026-06-19 03:56:06,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:06,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:06,946.946 INFO    ] No update needed
[2026-06-19 03:56:06,948.948 INFO    ] Checking for camera pi updates...
[2026-06-19 03:56:06,983.983 INFO    ] 200
[2026-06-19 03:56:06,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:07,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:56:07,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:07,075.075 INFO    ] No camera update needed
[2026-06-19 03:56:07,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:56:07,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:56:07,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:56:07,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:56:09,132.132 INFO    ] ================================================
[2026-06-19 03:56:09,147.147 INFO    ] Launching Daemon at Fri Jun 19 03:56:09 IST 2026
[2026-06-19 03:56:09,158.158 INFO    ] ================================================
[2026-06-19 03:56:09,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:56:09
[2026-06-19 03:56:10,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:56:10,579.579 INFO    ] Initializing speech engine...
[2026-06-19 03:56:10,589.589 INFO    ] 2026-06-19 03:56:10
[2026-06-19 03:56:10,838.838 INFO    ] 2026-06-19 03:56:10
[2026-06-19 03:56:10,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:56:11,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:56:11,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:56:11,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:56:11,215.215 INFO    ] time= 19/06/2026 03:56:11
[2026-06-19 03:56:11,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:56:11,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:56:11,380.380 INFO    ] No existing commands found in stream
[2026-06-19 03:56:16,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:56:16,413.413 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 03:56:18,783.783 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:56:18,786.786 INFO    ] Checking for system updates...
[2026-06-19 03:56:18,827.827 INFO    ] 200
[2026-06-19 03:56:18,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:18,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:18,893.893 INFO    ] No update needed
[2026-06-19 03:56:18,896.896 INFO    ] Checking for camera pi updates...
[2026-06-19 03:56:18,930.930 INFO    ] 200
[2026-06-19 03:56:18,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:18,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:56:19,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:19,021.021 INFO    ] No camera update needed
[2026-06-19 03:56:19,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:56:19,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:56:19,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:56:19,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:56:21,079.079 INFO    ] ================================================
[2026-06-19 03:56:21,094.094 INFO    ] Launching Daemon at Fri Jun 19 03:56:21 IST 2026
[2026-06-19 03:56:21,105.105 INFO    ] ================================================
[2026-06-19 03:56:21,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:56:21
[2026-06-19 03:56:22,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:56:22,800.800 INFO    ] Initializing speech engine...
[2026-06-19 03:56:22,809.809 INFO    ] 2026-06-19 03:56:22
[2026-06-19 03:56:23,097.097 INFO    ] 2026-06-19 03:56:23
[2026-06-19 03:56:23,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:56:23,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:56:23,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:56:23,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:56:23,579.579 INFO    ] time= 19/06/2026 03:56:23
[2026-06-19 03:56:23,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:56:23,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:56:23,731.731 INFO    ] No existing commands found in stream
[2026-06-19 03:56:28,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:56:28,748.748 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 03:56:30,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:56:30,114.114 INFO    ] Checking for system updates...
[2026-06-19 03:56:30,151.151 INFO    ] 200
[2026-06-19 03:56:30,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:30,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:30,211.211 INFO    ] No update needed
[2026-06-19 03:56:30,213.213 INFO    ] Checking for camera pi updates...
[2026-06-19 03:56:30,247.247 INFO    ] 200
[2026-06-19 03:56:30,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:30,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:56:30,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:30,344.344 INFO    ] No camera update needed
[2026-06-19 03:56:30,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:56:30,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:56:30,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:56:30,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:56:32,401.401 INFO    ] ================================================
[2026-06-19 03:56:32,419.419 INFO    ] Launching Daemon at Fri Jun 19 03:56:32 IST 2026
[2026-06-19 03:56:32,431.431 INFO    ] ================================================
[2026-06-19 03:56:33,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:56:33
[2026-06-19 03:56:33,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:56:33,881.881 INFO    ] Initializing speech engine...
[2026-06-19 03:56:33,890.890 INFO    ] 2026-06-19 03:56:33
[2026-06-19 03:56:34,191.191 INFO    ] 2026-06-19 03:56:34
[2026-06-19 03:56:34,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:56:34,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:56:34,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:56:34,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:56:34,550.550 INFO    ] time= 19/06/2026 03:56:34
[2026-06-19 03:56:34,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:56:34,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:56:34,636.636 INFO    ] No existing commands found in stream
[2026-06-19 03:56:39,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:56:39,652.652 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 03:56:42,459.459 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:56:42,462.462 INFO    ] Checking for system updates...
[2026-06-19 03:56:42,499.499 INFO    ] 200
[2026-06-19 03:56:42,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:42,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:42,559.559 INFO    ] No update needed
[2026-06-19 03:56:42,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 03:56:42,596.596 INFO    ] 200
[2026-06-19 03:56:42,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:42,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:56:42,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:42,688.688 INFO    ] No camera update needed
[2026-06-19 03:56:42,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:56:42,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:56:42,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:56:42,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:56:44,743.743 INFO    ] ================================================
[2026-06-19 03:56:44,758.758 INFO    ] Launching Daemon at Fri Jun 19 03:56:44 IST 2026
[2026-06-19 03:56:44,769.769 INFO    ] ================================================
[2026-06-19 03:56:45,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:56:45
[2026-06-19 03:56:45,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:56:46,182.182 INFO    ] Initializing speech engine...
[2026-06-19 03:56:46,197.197 INFO    ] 2026-06-19 03:56:46
[2026-06-19 03:56:46,481.481 INFO    ] 2026-06-19 03:56:46
[2026-06-19 03:56:46,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:56:46,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:56:46,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:56:46,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:56:46,863.863 INFO    ] time= 19/06/2026 03:56:46
[2026-06-19 03:56:46,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:56:46,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:56:46,988.988 INFO    ] No existing commands found in stream
[2026-06-19 03:56:52,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:56:52,003.003 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 03:56:52,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:56:52,575.575 INFO    ] Checking for system updates...
[2026-06-19 03:56:52,612.612 INFO    ] 200
[2026-06-19 03:56:52,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:52,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:52,677.677 INFO    ] No update needed
[2026-06-19 03:56:52,679.679 INFO    ] Checking for camera pi updates...
[2026-06-19 03:56:52,718.718 INFO    ] 200
[2026-06-19 03:56:52,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:56:52,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:56:52,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:56:52,803.803 INFO    ] No camera update needed
[2026-06-19 03:56:52,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:56:52,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:56:52,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:56:52,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:56:54,857.857 INFO    ] ================================================
[2026-06-19 03:56:54,872.872 INFO    ] Launching Daemon at Fri Jun 19 03:56:54 IST 2026
[2026-06-19 03:56:54,883.883 INFO    ] ================================================
[2026-06-19 03:56:55,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:56:55
[2026-06-19 03:56:56,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:56:56,519.519 INFO    ] Initializing speech engine...
[2026-06-19 03:56:56,530.530 INFO    ] 2026-06-19 03:56:56
[2026-06-19 03:56:56,804.804 INFO    ] 2026-06-19 03:56:56
[2026-06-19 03:56:56,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:56:57,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:56:57,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:56:57,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:56:57,295.295 INFO    ] time= 19/06/2026 03:56:57
[2026-06-19 03:56:57,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:56:57,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:56:57,434.434 INFO    ] No existing commands found in stream
[2026-06-19 03:57:02,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:57:02,451.451 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 03:57:03,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:57:03,938.938 INFO    ] Checking for system updates...
[2026-06-19 03:57:03,975.975 INFO    ] 200
[2026-06-19 03:57:03,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:04,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:57:04,040.040 INFO    ] No update needed
[2026-06-19 03:57:04,043.043 INFO    ] Checking for camera pi updates...
[2026-06-19 03:57:04,080.080 INFO    ] 200
[2026-06-19 03:57:04,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:04,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:57:04,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:57:04,177.177 INFO    ] No camera update needed
[2026-06-19 03:57:04,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:57:04,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:57:04,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:57:04,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:57:06,234.234 INFO    ] ================================================
[2026-06-19 03:57:06,249.249 INFO    ] Launching Daemon at Fri Jun 19 03:57:06 IST 2026
[2026-06-19 03:57:06,259.259 INFO    ] ================================================
[2026-06-19 03:57:06,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:57:06
[2026-06-19 03:57:07,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:57:07,682.682 INFO    ] Initializing speech engine...
[2026-06-19 03:57:07,691.691 INFO    ] 2026-06-19 03:57:07
[2026-06-19 03:57:07,936.936 INFO    ] 2026-06-19 03:57:07
[2026-06-19 03:57:07,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:57:08,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:57:08,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:57:08,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:57:08,405.405 INFO    ] time= 19/06/2026 03:57:08
[2026-06-19 03:57:08,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:57:08,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:57:08,557.557 INFO    ] No existing commands found in stream
[2026-06-19 03:57:13,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:57:13,579.579 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 03:57:17,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:57:17,627.627 INFO    ] Checking for system updates...
[2026-06-19 03:57:17,664.664 INFO    ] 200
[2026-06-19 03:57:17,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:17,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:57:17,723.723 INFO    ] No update needed
[2026-06-19 03:57:17,726.726 INFO    ] Checking for camera pi updates...
[2026-06-19 03:57:17,761.761 INFO    ] 200
[2026-06-19 03:57:17,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:17,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:57:17,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:57:17,855.855 INFO    ] No camera update needed
[2026-06-19 03:57:17,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:57:17,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:57:17,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:57:17,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:57:19,915.915 INFO    ] ================================================
[2026-06-19 03:57:19,930.930 INFO    ] Launching Daemon at Fri Jun 19 03:57:19 IST 2026
[2026-06-19 03:57:19,941.941 INFO    ] ================================================
[2026-06-19 03:57:20,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:57:20
[2026-06-19 03:57:21,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:57:21,576.576 INFO    ] Initializing speech engine...
[2026-06-19 03:57:21,589.589 INFO    ] 2026-06-19 03:57:21
[2026-06-19 03:57:21,860.860 INFO    ] 2026-06-19 03:57:21
[2026-06-19 03:57:21,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:57:22,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:57:22,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:57:22,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:57:22,225.225 INFO    ] time= 19/06/2026 03:57:22
[2026-06-19 03:57:22,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:57:22,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:57:22,330.330 INFO    ] No existing commands found in stream
[2026-06-19 03:57:27,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:57:27,347.347 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 03:57:31,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:57:31,591.591 INFO    ] Checking for system updates...
[2026-06-19 03:57:31,635.635 INFO    ] 200
[2026-06-19 03:57:31,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:31,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:57:31,707.707 INFO    ] No update needed
[2026-06-19 03:57:31,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 03:57:31,749.749 INFO    ] 200
[2026-06-19 03:57:31,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:31,801.801 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:57:31,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:57:31,933.933 INFO    ] No camera update needed
[2026-06-19 03:57:31,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:57:31,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:57:31,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:57:31,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:57:33,991.991 INFO    ] ================================================
[2026-06-19 03:57:34,010.010 INFO    ] Launching Daemon at Fri Jun 19 03:57:34 IST 2026
[2026-06-19 03:57:34,021.021 INFO    ] ================================================
[2026-06-19 03:57:34,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:57:34
[2026-06-19 03:57:35,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:57:35,471.471 INFO    ] Initializing speech engine...
[2026-06-19 03:57:35,481.481 INFO    ] 2026-06-19 03:57:35
[2026-06-19 03:57:35,749.749 INFO    ] 2026-06-19 03:57:35
[2026-06-19 03:57:35,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:57:35,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:57:36,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:57:36,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:57:36,126.126 INFO    ] time= 19/06/2026 03:57:36
[2026-06-19 03:57:36,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:57:36,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:57:36,252.252 INFO    ] No existing commands found in stream
[2026-06-19 03:57:41,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:57:41,265.265 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 03:57:43,204.204 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:57:43,207.207 INFO    ] Checking for system updates...
[2026-06-19 03:57:43,246.246 INFO    ] 200
[2026-06-19 03:57:43,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:43,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:57:43,306.306 INFO    ] No update needed
[2026-06-19 03:57:43,308.308 INFO    ] Checking for camera pi updates...
[2026-06-19 03:57:43,346.346 INFO    ] 200
[2026-06-19 03:57:43,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:43,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:57:43,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:57:43,430.430 INFO    ] No camera update needed
[2026-06-19 03:57:43,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:57:43,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:57:43,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:57:43,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:57:45,488.488 INFO    ] ================================================
[2026-06-19 03:57:45,503.503 INFO    ] Launching Daemon at Fri Jun 19 03:57:45 IST 2026
[2026-06-19 03:57:45,514.514 INFO    ] ================================================
[2026-06-19 03:57:46,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:57:46
[2026-06-19 03:57:46,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:57:47,126.126 INFO    ] Initializing speech engine...
[2026-06-19 03:57:47,137.137 INFO    ] 2026-06-19 03:57:47
[2026-06-19 03:57:47,412.412 INFO    ] 2026-06-19 03:57:47
[2026-06-19 03:57:47,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:57:47,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:57:47,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:57:47,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:57:47,900.900 INFO    ] time= 19/06/2026 03:57:47
[2026-06-19 03:57:47,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:57:47,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:57:48,101.101 INFO    ] No existing commands found in stream
[2026-06-19 03:57:53,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:57:53,131.131 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 03:57:54,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:57:54,050.050 INFO    ] Checking for system updates...
[2026-06-19 03:57:54,088.088 INFO    ] 200
[2026-06-19 03:57:54,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:54,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:57:54,147.147 INFO    ] No update needed
[2026-06-19 03:57:54,150.150 INFO    ] Checking for camera pi updates...
[2026-06-19 03:57:54,184.184 INFO    ] 200
[2026-06-19 03:57:54,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:57:54,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:57:54,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:57:54,280.280 INFO    ] No camera update needed
[2026-06-19 03:57:54,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:57:54,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:57:54,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:57:54,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:57:56,340.340 INFO    ] ================================================
[2026-06-19 03:57:56,357.357 INFO    ] Launching Daemon at Fri Jun 19 03:57:56 IST 2026
[2026-06-19 03:57:56,367.367 INFO    ] ================================================
[2026-06-19 03:57:57,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:57:57
[2026-06-19 03:57:57,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:57:57,992.992 INFO    ] Initializing speech engine...
[2026-06-19 03:57:58,006.006 INFO    ] 2026-06-19 03:57:57
[2026-06-19 03:57:58,291.291 INFO    ] 2026-06-19 03:57:58
[2026-06-19 03:57:58,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:57:58,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:57:58,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:57:58,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:57:58,786.786 INFO    ] time= 19/06/2026 03:57:58
[2026-06-19 03:57:58,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:57:58,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:57:58,978.978 INFO    ] No existing commands found in stream
[2026-06-19 03:58:04,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:58:04,013.013 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 03:58:04,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:58:04,449.449 INFO    ] Checking for system updates...
[2026-06-19 03:58:04,492.492 INFO    ] 200
[2026-06-19 03:58:04,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:04,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:58:04,550.550 INFO    ] No update needed
[2026-06-19 03:58:04,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 03:58:04,590.590 INFO    ] 200
[2026-06-19 03:58:04,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:04,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:58:04,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:58:04,676.676 INFO    ] No camera update needed
[2026-06-19 03:58:04,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:58:04,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:58:04,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:58:04,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:58:06,730.730 INFO    ] ================================================
[2026-06-19 03:58:06,745.745 INFO    ] Launching Daemon at Fri Jun 19 03:58:06 IST 2026
[2026-06-19 03:58:06,756.756 INFO    ] ================================================
[2026-06-19 03:58:07,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:58:07
[2026-06-19 03:58:08,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:58:08,444.444 INFO    ] Initializing speech engine...
[2026-06-19 03:58:08,456.456 INFO    ] 2026-06-19 03:58:08
[2026-06-19 03:58:08,740.740 INFO    ] 2026-06-19 03:58:08
[2026-06-19 03:58:08,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:58:09,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:58:09,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:58:09,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:58:09,211.211 INFO    ] time= 19/06/2026 03:58:09
[2026-06-19 03:58:09,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:58:09,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:58:09,399.399 INFO    ] No existing commands found in stream
[2026-06-19 03:58:14,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:58:14,425.425 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 03:58:14,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:58:14,972.972 INFO    ] Checking for system updates...
[2026-06-19 03:58:15,010.010 INFO    ] 200
[2026-06-19 03:58:15,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:15,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:58:15,070.070 INFO    ] No update needed
[2026-06-19 03:58:15,072.072 INFO    ] Checking for camera pi updates...
[2026-06-19 03:58:15,107.107 INFO    ] 200
[2026-06-19 03:58:15,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:15,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:58:15,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:58:15,197.197 INFO    ] No camera update needed
[2026-06-19 03:58:15,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:58:15,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:58:15,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:58:15,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:58:17,252.252 INFO    ] ================================================
[2026-06-19 03:58:17,268.268 INFO    ] Launching Daemon at Fri Jun 19 03:58:17 IST 2026
[2026-06-19 03:58:17,278.278 INFO    ] ================================================
[2026-06-19 03:58:17,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:58:17
[2026-06-19 03:58:18,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:58:18,898.898 INFO    ] Initializing speech engine...
[2026-06-19 03:58:18,922.922 INFO    ] 2026-06-19 03:58:18
[2026-06-19 03:58:19,179.179 INFO    ] 2026-06-19 03:58:19
[2026-06-19 03:58:19,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:58:19,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:58:19,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:58:19,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:58:19,515.515 INFO    ] time= 19/06/2026 03:58:19
[2026-06-19 03:58:19,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:58:19,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:58:19,627.627 INFO    ] No existing commands found in stream
[2026-06-19 03:58:24,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:58:24,642.642 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 03:58:28,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 03:58:28,232.232 INFO    ] Checking for system updates...
[2026-06-19 03:58:28,268.268 INFO    ] 200
[2026-06-19 03:58:28,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:28,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:58:28,326.326 INFO    ] No update needed
[2026-06-19 03:58:28,328.328 INFO    ] Checking for camera pi updates...
[2026-06-19 03:58:28,362.362 INFO    ] 200
[2026-06-19 03:58:28,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:28,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:58:28,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:58:28,449.449 INFO    ] No camera update needed
[2026-06-19 03:58:28,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:58:28,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:58:28,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:58:28,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:58:30,505.505 INFO    ] ================================================
[2026-06-19 03:58:30,520.520 INFO    ] Launching Daemon at Fri Jun 19 03:58:30 IST 2026
[2026-06-19 03:58:30,531.531 INFO    ] ================================================
[2026-06-19 03:58:31,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:58:31
[2026-06-19 03:58:31,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:58:32,035.035 INFO    ] Initializing speech engine...
[2026-06-19 03:58:32,044.044 INFO    ] 2026-06-19 03:58:32
[2026-06-19 03:58:32,359.359 INFO    ] 2026-06-19 03:58:32
[2026-06-19 03:58:32,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:58:32,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:58:32,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:58:32,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:58:32,780.780 INFO    ] time= 19/06/2026 03:58:32
[2026-06-19 03:58:32,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:58:32,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:58:32,956.956 INFO    ] No existing commands found in stream
[2026-06-19 03:58:37,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:58:37,990.990 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 03:58:40,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:58:40,806.806 INFO    ] Checking for system updates...
[2026-06-19 03:58:40,853.853 INFO    ] 200
[2026-06-19 03:58:40,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:40,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:58:40,925.925 INFO    ] No update needed
[2026-06-19 03:58:40,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 03:58:40,978.978 INFO    ] 200
[2026-06-19 03:58:40,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:41,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:58:41,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:58:41,073.073 INFO    ] No camera update needed
[2026-06-19 03:58:41,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:58:41,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:58:41,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:58:41,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:58:43,132.132 INFO    ] ================================================
[2026-06-19 03:58:43,147.147 INFO    ] Launching Daemon at Fri Jun 19 03:58:43 IST 2026
[2026-06-19 03:58:43,159.159 INFO    ] ================================================
[2026-06-19 03:58:43,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:58:43
[2026-06-19 03:58:44,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:58:44,562.562 INFO    ] Initializing speech engine...
[2026-06-19 03:58:44,585.585 INFO    ] 2026-06-19 03:58:44
[2026-06-19 03:58:44,840.840 INFO    ] 2026-06-19 03:58:44
[2026-06-19 03:58:44,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:58:45,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:58:45,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:58:45,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:58:45,216.216 INFO    ] time= 19/06/2026 03:58:45
[2026-06-19 03:58:45,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:58:45,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:58:45,379.379 INFO    ] No existing commands found in stream
[2026-06-19 03:58:50,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:58:50,412.412 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 03:58:51,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 03:58:51,634.634 INFO    ] Checking for system updates...
[2026-06-19 03:58:51,676.676 INFO    ] 200
[2026-06-19 03:58:51,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:51,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:58:51,736.736 INFO    ] No update needed
[2026-06-19 03:58:51,739.739 INFO    ] Checking for camera pi updates...
[2026-06-19 03:58:51,778.778 INFO    ] 200
[2026-06-19 03:58:51,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:58:51,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:58:51,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:58:51,875.875 INFO    ] No camera update needed
[2026-06-19 03:58:51,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:58:51,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:58:51,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:58:51,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:58:53,936.936 INFO    ] ================================================
[2026-06-19 03:58:53,951.951 INFO    ] Launching Daemon at Fri Jun 19 03:58:53 IST 2026
[2026-06-19 03:58:53,961.961 INFO    ] ================================================
[2026-06-19 03:58:54,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:58:54
[2026-06-19 03:58:55,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:58:55,431.431 INFO    ] Initializing speech engine...
[2026-06-19 03:58:55,440.440 INFO    ] 2026-06-19 03:58:55
[2026-06-19 03:58:55,708.708 INFO    ] 2026-06-19 03:58:55
[2026-06-19 03:58:55,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:58:55,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:58:55,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:58:56,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:58:56,100.100 INFO    ] time= 19/06/2026 03:58:56
[2026-06-19 03:58:56,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:58:56,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:58:56,207.207 INFO    ] No existing commands found in stream
[2026-06-19 03:59:01,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:59:01,223.223 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 03:59:02,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:59:02,400.400 INFO    ] Checking for system updates...
[2026-06-19 03:59:02,452.452 INFO    ] 200
[2026-06-19 03:59:02,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:02,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:59:02,533.533 INFO    ] No update needed
[2026-06-19 03:59:02,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 03:59:02,587.587 INFO    ] 200
[2026-06-19 03:59:02,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:02,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:59:02,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:59:02,679.679 INFO    ] No camera update needed
[2026-06-19 03:59:02,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:59:02,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:59:02,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:59:02,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:59:04,747.747 INFO    ] ================================================
[2026-06-19 03:59:04,762.762 INFO    ] Launching Daemon at Fri Jun 19 03:59:04 IST 2026
[2026-06-19 03:59:04,773.773 INFO    ] ================================================
[2026-06-19 03:59:05,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:59:05
[2026-06-19 03:59:05,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:59:06,217.217 INFO    ] Initializing speech engine...
[2026-06-19 03:59:06,230.230 INFO    ] 2026-06-19 03:59:06
[2026-06-19 03:59:06,496.496 INFO    ] 2026-06-19 03:59:06
[2026-06-19 03:59:06,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:59:06,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:59:06,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:59:06,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:59:06,965.965 INFO    ] time= 19/06/2026 03:59:06
[2026-06-19 03:59:07,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:59:07,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:59:07,115.115 INFO    ] No existing commands found in stream
[2026-06-19 03:59:12,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:59:12,130.130 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 03:59:15,018.018 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 03:59:15,020.020 INFO    ] Checking for system updates...
[2026-06-19 03:59:15,061.061 INFO    ] 200
[2026-06-19 03:59:15,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:15,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:59:15,125.125 INFO    ] No update needed
[2026-06-19 03:59:15,127.127 INFO    ] Checking for camera pi updates...
[2026-06-19 03:59:15,165.165 INFO    ] 200
[2026-06-19 03:59:15,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:15,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:59:15,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:59:15,265.265 INFO    ] No camera update needed
[2026-06-19 03:59:15,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:59:15,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:59:15,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:59:15,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:59:17,326.326 INFO    ] ================================================
[2026-06-19 03:59:17,341.341 INFO    ] Launching Daemon at Fri Jun 19 03:59:17 IST 2026
[2026-06-19 03:59:17,352.352 INFO    ] ================================================
[2026-06-19 03:59:17,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:59:17
[2026-06-19 03:59:18,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:59:18,779.779 INFO    ] Initializing speech engine...
[2026-06-19 03:59:18,788.788 INFO    ] 2026-06-19 03:59:18
[2026-06-19 03:59:19,038.038 INFO    ] 2026-06-19 03:59:19
[2026-06-19 03:59:19,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:59:19,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:59:19,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:59:19,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:59:19,518.518 INFO    ] time= 19/06/2026 03:59:19
[2026-06-19 03:59:19,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:59:19,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:59:19,666.666 INFO    ] No existing commands found in stream
[2026-06-19 03:59:24,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:59:24,680.680 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 03:59:28,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 03:59:28,830.830 INFO    ] Checking for system updates...
[2026-06-19 03:59:28,866.866 INFO    ] 200
[2026-06-19 03:59:28,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:28,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:59:28,930.930 INFO    ] No update needed
[2026-06-19 03:59:28,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 03:59:28,965.965 INFO    ] 200
[2026-06-19 03:59:28,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:29,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:59:29,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 03:59:29,049.049 INFO    ] No camera update needed
[2026-06-19 03:59:29,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:59:29,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:59:29,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:59:29,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:59:31,104.104 INFO    ] ================================================
[2026-06-19 03:59:31,120.120 INFO    ] Launching Daemon at Fri Jun 19 03:59:31 IST 2026
[2026-06-19 03:59:31,130.130 INFO    ] ================================================
[2026-06-19 03:59:31,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:59:31
[2026-06-19 03:59:32,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:59:32,812.812 INFO    ] Initializing speech engine...
[2026-06-19 03:59:32,822.822 INFO    ] 2026-06-19 03:59:32
[2026-06-19 03:59:33,072.072 INFO    ] 2026-06-19 03:59:33
[2026-06-19 03:59:33,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:59:33,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:59:33,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:59:33,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:59:33,500.500 INFO    ] time= 19/06/2026 03:59:33
[2026-06-19 03:59:33,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:59:33,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:59:33,659.659 INFO    ] No existing commands found in stream
[2026-06-19 03:59:38,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:59:38,670.670 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 03:59:40,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 03:59:40,666.666 INFO    ] Checking for system updates...
[2026-06-19 03:59:40,705.705 INFO    ] 200
[2026-06-19 03:59:40,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:40,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:59:40,763.763 INFO    ] No update needed
[2026-06-19 03:59:40,766.766 INFO    ] Checking for camera pi updates...
[2026-06-19 03:59:40,800.800 INFO    ] 200
[2026-06-19 03:59:40,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:40,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:59:40,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:59:40,992.992 INFO    ] No camera update needed
[2026-06-19 03:59:40,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:59:40,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:59:41,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:59:41,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:59:43,049.049 INFO    ] ================================================
[2026-06-19 03:59:43,064.064 INFO    ] Launching Daemon at Fri Jun 19 03:59:43 IST 2026
[2026-06-19 03:59:43,074.074 INFO    ] ================================================
[2026-06-19 03:59:43,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:59:43
[2026-06-19 03:59:44,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:59:44,537.537 INFO    ] Initializing speech engine...
[2026-06-19 03:59:44,545.545 INFO    ] 2026-06-19 03:59:44
[2026-06-19 03:59:44,806.806 INFO    ] 2026-06-19 03:59:44
[2026-06-19 03:59:44,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:59:45,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:59:45,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:59:45,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:59:45,251.251 INFO    ] time= 19/06/2026 03:59:45
[2026-06-19 03:59:45,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:59:45,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:59:45,414.414 INFO    ] No existing commands found in stream
[2026-06-19 03:59:50,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 03:59:50,430.430 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 03:59:54,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 03:59:54,294.294 INFO    ] Checking for system updates...
[2026-06-19 03:59:54,330.330 INFO    ] 200
[2026-06-19 03:59:54,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:54,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:59:54,395.395 INFO    ] No update needed
[2026-06-19 03:59:54,398.398 INFO    ] Checking for camera pi updates...
[2026-06-19 03:59:54,435.435 INFO    ] 200
[2026-06-19 03:59:54,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 03:59:54,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 03:59:54,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 03:59:54,522.522 INFO    ] No camera update needed
[2026-06-19 03:59:54,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 03:59:54,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 03:59:54,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 03:59:54,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 03:59:56,578.578 INFO    ] ================================================
[2026-06-19 03:59:56,593.593 INFO    ] Launching Daemon at Fri Jun 19 03:59:56 IST 2026
[2026-06-19 03:59:56,604.604 INFO    ] ================================================
[2026-06-19 03:59:57,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 03:59:57
[2026-06-19 03:59:57,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 03:59:58,073.073 INFO    ] Initializing speech engine...
[2026-06-19 03:59:58,083.083 INFO    ] 2026-06-19 03:59:58
[2026-06-19 03:59:58,352.352 INFO    ] 2026-06-19 03:59:58
[2026-06-19 03:59:58,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 03:59:58,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 03:59:58,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 03:59:58,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 03:59:58,732.732 INFO    ] time= 19/06/2026 03:59:58
[2026-06-19 03:59:58,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 03:59:58,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-19 03:59:58,859.859 INFO    ] No existing commands found in stream
[2026-06-19 04:00:03,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:00:03,871.871 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 04:00:07,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:00:07,509.509 INFO    ] Checking for system updates...
[2026-06-19 04:00:07,555.555 INFO    ] 200
[2026-06-19 04:00:07,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 04:00:07,561.561 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 04:00:07,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 04:00:07,612.612 INFO    ] 200
[2026-06-19 04:00:07,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 04:00:07,619.619 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 04:00:07,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:00:07,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:00:07,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:00:07,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:00:09,680.680 INFO    ] ================================================
[2026-06-19 04:00:09,696.696 INFO    ] Launching Daemon at Fri Jun 19 04:00:09 IST 2026
[2026-06-19 04:00:09,707.707 INFO    ] ================================================
[2026-06-19 04:00:10,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:00:10
[2026-06-19 04:00:11,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:00:11,365.365 INFO    ] Initializing speech engine...
[2026-06-19 04:00:11,377.377 INFO    ] 2026-06-19 04:00:11
[2026-06-19 04:00:11,673.673 INFO    ] 2026-06-19 04:00:11
[2026-06-19 04:00:11,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:00:11,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:00:11,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:00:12,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:00:12,157.157 INFO    ] time= 19/06/2026 04:00:12
[2026-06-19 04:00:12,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:00:12,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:00:12,333.333 INFO    ] No existing commands found in stream
[2026-06-19 04:00:17,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:00:17,349.349 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 04:00:18,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:00:18,451.451 INFO    ] Checking for system updates...
[2026-06-19 04:00:18,487.487 INFO    ] 200
[2026-06-19 04:00:18,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:00:18,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:00:18,544.544 INFO    ] No update needed
[2026-06-19 04:00:18,547.547 INFO    ] Checking for camera pi updates...
[2026-06-19 04:00:18,581.581 INFO    ] 200
[2026-06-19 04:00:18,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:00:18,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:00:18,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:00:18,662.662 INFO    ] No camera update needed
[2026-06-19 04:00:18,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:00:18,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:00:18,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:00:18,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:00:20,719.719 INFO    ] ================================================
[2026-06-19 04:00:20,734.734 INFO    ] Launching Daemon at Fri Jun 19 04:00:20 IST 2026
[2026-06-19 04:00:20,745.745 INFO    ] ================================================
[2026-06-19 04:00:21,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:00:21
[2026-06-19 04:00:21,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:00:22,286.286 INFO    ] Initializing speech engine...
[2026-06-19 04:00:22,295.295 INFO    ] 2026-06-19 04:00:22
[2026-06-19 04:00:22,590.590 INFO    ] 2026-06-19 04:00:22
[2026-06-19 04:00:22,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:00:22,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:00:22,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:00:23,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:00:23,069.069 INFO    ] time= 19/06/2026 04:00:23
[2026-06-19 04:00:23,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:00:23,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:00:23,223.223 INFO    ] No existing commands found in stream
[2026-06-19 04:00:28,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:00:28,238.238 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 04:00:31,233.233 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:00:31,236.236 INFO    ] Checking for system updates...
[2026-06-19 04:00:31,273.273 INFO    ] 200
[2026-06-19 04:00:31,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:00:31,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:00:31,335.335 INFO    ] No update needed
[2026-06-19 04:00:31,338.338 INFO    ] Checking for camera pi updates...
[2026-06-19 04:00:31,376.376 INFO    ] 200
[2026-06-19 04:00:31,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:00:31,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:00:31,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:00:31,460.460 INFO    ] No camera update needed
[2026-06-19 04:00:31,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:00:31,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:00:31,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:00:31,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:00:33,523.523 INFO    ] ================================================
[2026-06-19 04:00:33,539.539 INFO    ] Launching Daemon at Fri Jun 19 04:00:33 IST 2026
[2026-06-19 04:00:33,551.551 INFO    ] ================================================
[2026-06-19 04:00:34,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:00:34
[2026-06-19 04:00:34,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:00:35,107.107 INFO    ] Initializing speech engine...
[2026-06-19 04:00:35,116.116 INFO    ] 2026-06-19 04:00:35
[2026-06-19 04:00:35,418.418 INFO    ] 2026-06-19 04:00:35
[2026-06-19 04:00:35,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:00:35,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:00:35,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:00:35,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:00:35,816.816 INFO    ] time= 19/06/2026 04:00:35
[2026-06-19 04:00:35,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:00:35,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:00:35,989.989 INFO    ] No existing commands found in stream
[2026-06-19 04:00:41,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:00:41,020.020 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 04:00:43,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:00:43,454.454 INFO    ] Checking for system updates...
[2026-06-19 04:00:43,492.492 INFO    ] 200
[2026-06-19 04:00:43,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:00:43,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:00:43,557.557 INFO    ] No update needed
[2026-06-19 04:00:43,560.560 INFO    ] Checking for camera pi updates...
[2026-06-19 04:00:43,593.593 INFO    ] 200
[2026-06-19 04:00:43,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:00:43,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:00:43,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:00:43,681.681 INFO    ] No camera update needed
[2026-06-19 04:00:43,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:00:43,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:00:43,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:00:43,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:00:45,740.740 INFO    ] ================================================
[2026-06-19 04:00:45,755.755 INFO    ] Launching Daemon at Fri Jun 19 04:00:45 IST 2026
[2026-06-19 04:00:45,766.766 INFO    ] ================================================
[2026-06-19 04:00:46,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:00:46
[2026-06-19 04:00:46,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:00:47,263.263 INFO    ] Initializing speech engine...
[2026-06-19 04:00:47,277.277 INFO    ] 2026-06-19 04:00:47
[2026-06-19 04:00:47,559.559 INFO    ] 2026-06-19 04:00:47
[2026-06-19 04:00:47,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:00:47,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:00:47,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:00:47,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:00:48,009.009 INFO    ] time= 19/06/2026 04:00:47
[2026-06-19 04:00:48,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:00:48,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:00:48,152.152 INFO    ] No existing commands found in stream
[2026-06-19 04:00:53,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:00:53,168.168 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 04:00:55,613.613 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:00:55,617.617 INFO    ] Checking for system updates...
[2026-06-19 04:00:55,657.657 INFO    ] 200
[2026-06-19 04:00:55,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:00:55,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:00:55,729.729 INFO    ] No update needed
[2026-06-19 04:00:55,732.732 INFO    ] Checking for camera pi updates...
[2026-06-19 04:00:55,770.770 INFO    ] 200
[2026-06-19 04:00:55,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:00:55,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:00:55,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:00:55,874.874 INFO    ] No camera update needed
[2026-06-19 04:00:55,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:00:55,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:00:55,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:00:55,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:00:57,934.934 INFO    ] ================================================
[2026-06-19 04:00:57,950.950 INFO    ] Launching Daemon at Fri Jun 19 04:00:57 IST 2026
[2026-06-19 04:00:57,961.961 INFO    ] ================================================
[2026-06-19 04:00:58,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:00:58
[2026-06-19 04:00:59,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:00:59,498.498 INFO    ] Initializing speech engine...
[2026-06-19 04:00:59,506.506 INFO    ] 2026-06-19 04:00:59
[2026-06-19 04:00:59,770.770 INFO    ] 2026-06-19 04:00:59
[2026-06-19 04:00:59,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:01:00,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:01:00,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:01:00,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:01:00,119.119 INFO    ] time= 19/06/2026 04:01:00
[2026-06-19 04:01:00,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:01:00,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:01:00,225.225 INFO    ] No existing commands found in stream
[2026-06-19 04:01:05,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:01:05,258.258 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 04:01:06,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:01:06,786.786 INFO    ] Checking for system updates...
[2026-06-19 04:01:06,822.822 INFO    ] 200
[2026-06-19 04:01:06,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:06,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:06,880.880 INFO    ] No update needed
[2026-06-19 04:01:06,882.882 INFO    ] Checking for camera pi updates...
[2026-06-19 04:01:06,917.917 INFO    ] 200
[2026-06-19 04:01:06,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:06,965.965 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:01:07,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:07,021.021 INFO    ] No camera update needed
[2026-06-19 04:01:07,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:01:07,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:01:07,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:01:07,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:01:09,079.079 INFO    ] ================================================
[2026-06-19 04:01:09,094.094 INFO    ] Launching Daemon at Fri Jun 19 04:01:09 IST 2026
[2026-06-19 04:01:09,106.106 INFO    ] ================================================
[2026-06-19 04:01:09,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:01:09
[2026-06-19 04:01:10,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:01:10,543.543 INFO    ] Initializing speech engine...
[2026-06-19 04:01:10,551.551 INFO    ] 2026-06-19 04:01:10
[2026-06-19 04:01:10,803.803 INFO    ] 2026-06-19 04:01:10
[2026-06-19 04:01:10,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:01:11,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:01:11,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:01:11,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:01:11,188.188 INFO    ] time= 19/06/2026 04:01:11
[2026-06-19 04:01:11,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:01:11,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:01:11,387.387 INFO    ] No existing commands found in stream
[2026-06-19 04:01:16,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:01:16,400.400 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 04:01:17,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:01:17,426.426 INFO    ] Checking for system updates...
[2026-06-19 04:01:17,462.462 INFO    ] 200
[2026-06-19 04:01:17,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:17,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:17,520.520 INFO    ] No update needed
[2026-06-19 04:01:17,522.522 INFO    ] Checking for camera pi updates...
[2026-06-19 04:01:17,556.556 INFO    ] 200
[2026-06-19 04:01:17,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:17,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:01:17,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:17,644.644 INFO    ] No camera update needed
[2026-06-19 04:01:17,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:01:17,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:01:17,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:01:17,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:01:19,699.699 INFO    ] ================================================
[2026-06-19 04:01:19,715.715 INFO    ] Launching Daemon at Fri Jun 19 04:01:19 IST 2026
[2026-06-19 04:01:19,726.726 INFO    ] ================================================
[2026-06-19 04:01:20,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:01:20
[2026-06-19 04:01:20,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:01:21,184.184 INFO    ] Initializing speech engine...
[2026-06-19 04:01:21,192.192 INFO    ] 2026-06-19 04:01:21
[2026-06-19 04:01:21,468.468 INFO    ] 2026-06-19 04:01:21
[2026-06-19 04:01:21,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:01:21,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:01:21,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:01:21,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:01:21,845.845 INFO    ] time= 19/06/2026 04:01:21
[2026-06-19 04:01:21,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:01:21,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:01:21,921.921 INFO    ] No existing commands found in stream
[2026-06-19 04:01:26,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:01:26,936.936 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 04:01:30,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:01:30,402.402 INFO    ] Checking for system updates...
[2026-06-19 04:01:30,440.440 INFO    ] 200
[2026-06-19 04:01:30,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:30,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:30,499.499 INFO    ] No update needed
[2026-06-19 04:01:30,501.501 INFO    ] Checking for camera pi updates...
[2026-06-19 04:01:30,539.539 INFO    ] 200
[2026-06-19 04:01:30,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:30,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:01:30,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:30,627.627 INFO    ] No camera update needed
[2026-06-19 04:01:30,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:01:30,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:01:30,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:01:30,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:01:32,687.687 INFO    ] ================================================
[2026-06-19 04:01:32,704.704 INFO    ] Launching Daemon at Fri Jun 19 04:01:32 IST 2026
[2026-06-19 04:01:32,716.716 INFO    ] ================================================
[2026-06-19 04:01:33,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:01:33
[2026-06-19 04:01:33,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:01:34,195.195 INFO    ] Initializing speech engine...
[2026-06-19 04:01:34,205.205 INFO    ] 2026-06-19 04:01:34
[2026-06-19 04:01:34,467.467 INFO    ] 2026-06-19 04:01:34
[2026-06-19 04:01:34,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:01:34,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:01:34,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:01:34,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:01:34,834.834 INFO    ] time= 19/06/2026 04:01:34
[2026-06-19 04:01:34,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:01:34,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:01:34,954.954 INFO    ] No existing commands found in stream
[2026-06-19 04:01:39,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:01:39,970.970 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 04:01:44,271.271 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:01:44,274.274 INFO    ] Checking for system updates...
[2026-06-19 04:01:44,312.312 INFO    ] 200
[2026-06-19 04:01:44,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:44,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:44,370.370 INFO    ] No update needed
[2026-06-19 04:01:44,372.372 INFO    ] Checking for camera pi updates...
[2026-06-19 04:01:44,406.406 INFO    ] 200
[2026-06-19 04:01:44,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:44,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:01:44,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:44,603.603 INFO    ] No camera update needed
[2026-06-19 04:01:44,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:01:44,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:01:44,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:01:44,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:01:46,658.658 INFO    ] ================================================
[2026-06-19 04:01:46,673.673 INFO    ] Launching Daemon at Fri Jun 19 04:01:46 IST 2026
[2026-06-19 04:01:46,684.684 INFO    ] ================================================
[2026-06-19 04:01:47,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:01:47
[2026-06-19 04:01:47,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:01:48,227.227 INFO    ] Initializing speech engine...
[2026-06-19 04:01:48,237.237 INFO    ] 2026-06-19 04:01:48
[2026-06-19 04:01:48,485.485 INFO    ] 2026-06-19 04:01:48
[2026-06-19 04:01:48,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:01:48,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:01:48,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:01:48,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:01:48,929.929 INFO    ] time= 19/06/2026 04:01:48
[2026-06-19 04:01:48,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:01:49,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:01:49,113.113 INFO    ] No existing commands found in stream
[2026-06-19 04:01:54,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:01:54,128.128 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 04:01:55,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:01:55,151.151 INFO    ] Checking for system updates...
[2026-06-19 04:01:55,187.187 INFO    ] 200
[2026-06-19 04:01:55,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:55,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:55,252.252 INFO    ] No update needed
[2026-06-19 04:01:55,254.254 INFO    ] Checking for camera pi updates...
[2026-06-19 04:01:55,291.291 INFO    ] 200
[2026-06-19 04:01:55,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:01:55,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:01:55,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:01:55,377.377 INFO    ] No camera update needed
[2026-06-19 04:01:55,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:01:55,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:01:55,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:01:55,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:01:57,436.436 INFO    ] ================================================
[2026-06-19 04:01:57,453.453 INFO    ] Launching Daemon at Fri Jun 19 04:01:57 IST 2026
[2026-06-19 04:01:57,465.465 INFO    ] ================================================
[2026-06-19 04:01:58,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:01:58
[2026-06-19 04:01:58,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:01:58,901.901 INFO    ] Initializing speech engine...
[2026-06-19 04:01:58,908.908 INFO    ] 2026-06-19 04:01:58
[2026-06-19 04:01:59,168.168 INFO    ] 2026-06-19 04:01:59
[2026-06-19 04:01:59,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:01:59,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:01:59,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:01:59,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:01:59,631.631 INFO    ] time= 19/06/2026 04:01:59
[2026-06-19 04:01:59,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:01:59,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:01:59,790.790 INFO    ] No existing commands found in stream
[2026-06-19 04:02:04,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:02:04,806.806 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 04:02:08,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:02:08,502.502 INFO    ] Checking for system updates...
[2026-06-19 04:02:08,539.539 INFO    ] 200
[2026-06-19 04:02:08,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:08,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:08,598.598 INFO    ] No update needed
[2026-06-19 04:02:08,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 04:02:08,639.639 INFO    ] 200
[2026-06-19 04:02:08,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:08,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:02:08,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:08,726.726 INFO    ] No camera update needed
[2026-06-19 04:02:08,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:02:08,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:02:08,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:02:08,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:02:10,785.785 INFO    ] ================================================
[2026-06-19 04:02:10,801.801 INFO    ] Launching Daemon at Fri Jun 19 04:02:10 IST 2026
[2026-06-19 04:02:10,813.813 INFO    ] ================================================
[2026-06-19 04:02:11,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:02:11
[2026-06-19 04:02:11,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:02:12,264.264 INFO    ] Initializing speech engine...
[2026-06-19 04:02:12,273.273 INFO    ] 2026-06-19 04:02:12
[2026-06-19 04:02:12,525.525 INFO    ] 2026-06-19 04:02:12
[2026-06-19 04:02:12,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:02:12,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:02:12,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:02:12,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:02:12,983.983 INFO    ] time= 19/06/2026 04:02:12
[2026-06-19 04:02:13,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:02:13,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:02:13,143.143 INFO    ] No existing commands found in stream
[2026-06-19 04:02:18,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:02:18,158.158 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 04:02:19,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:02:19,336.336 INFO    ] Checking for system updates...
[2026-06-19 04:02:19,372.372 INFO    ] 200
[2026-06-19 04:02:19,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:19,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:19,431.431 INFO    ] No update needed
[2026-06-19 04:02:19,433.433 INFO    ] Checking for camera pi updates...
[2026-06-19 04:02:19,467.467 INFO    ] 200
[2026-06-19 04:02:19,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:19,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:02:19,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:19,551.551 INFO    ] No camera update needed
[2026-06-19 04:02:19,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:02:19,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:02:19,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:02:19,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:02:21,609.609 INFO    ] ================================================
[2026-06-19 04:02:21,626.626 INFO    ] Launching Daemon at Fri Jun 19 04:02:21 IST 2026
[2026-06-19 04:02:21,639.639 INFO    ] ================================================
[2026-06-19 04:02:22,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:02:22
[2026-06-19 04:02:22,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:02:23,274.274 INFO    ] Initializing speech engine...
[2026-06-19 04:02:23,288.288 INFO    ] 2026-06-19 04:02:23
[2026-06-19 04:02:23,568.568 INFO    ] 2026-06-19 04:02:23
[2026-06-19 04:02:23,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:02:23,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:02:23,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:02:24,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:02:24,116.116 INFO    ] time= 19/06/2026 04:02:24
[2026-06-19 04:02:24,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:02:24,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:02:24,248.248 INFO    ] No existing commands found in stream
[2026-06-19 04:02:29,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:02:29,283.283 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 04:02:32,469.469 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:02:32,472.472 INFO    ] Checking for system updates...
[2026-06-19 04:02:32,515.515 INFO    ] 200
[2026-06-19 04:02:32,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:32,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:32,580.580 INFO    ] No update needed
[2026-06-19 04:02:32,583.583 INFO    ] Checking for camera pi updates...
[2026-06-19 04:02:32,620.620 INFO    ] 200
[2026-06-19 04:02:32,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:32,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:02:32,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:32,704.704 INFO    ] No camera update needed
[2026-06-19 04:02:32,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:02:32,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:02:32,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:02:32,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:02:34,765.765 INFO    ] ================================================
[2026-06-19 04:02:34,781.781 INFO    ] Launching Daemon at Fri Jun 19 04:02:34 IST 2026
[2026-06-19 04:02:34,792.792 INFO    ] ================================================
[2026-06-19 04:02:35,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:02:35
[2026-06-19 04:02:35,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:02:36,248.248 INFO    ] Initializing speech engine...
[2026-06-19 04:02:36,259.259 INFO    ] 2026-06-19 04:02:36
[2026-06-19 04:02:36,512.512 INFO    ] 2026-06-19 04:02:36
[2026-06-19 04:02:36,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:02:36,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:02:36,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:02:36,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:02:36,967.967 INFO    ] time= 19/06/2026 04:02:36
[2026-06-19 04:02:37,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:02:37,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:02:37,120.120 INFO    ] No existing commands found in stream
[2026-06-19 04:02:42,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:02:42,135.135 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 04:02:44,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:02:44,557.557 INFO    ] Checking for system updates...
[2026-06-19 04:02:44,593.593 INFO    ] 200
[2026-06-19 04:02:44,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:44,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:44,658.658 INFO    ] No update needed
[2026-06-19 04:02:44,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 04:02:44,693.693 INFO    ] 200
[2026-06-19 04:02:44,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:44,741.741 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:02:44,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:44,783.783 INFO    ] No camera update needed
[2026-06-19 04:02:44,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:02:44,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:02:44,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:02:44,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:02:46,841.841 INFO    ] ================================================
[2026-06-19 04:02:46,857.857 INFO    ] Launching Daemon at Fri Jun 19 04:02:46 IST 2026
[2026-06-19 04:02:46,868.868 INFO    ] ================================================
[2026-06-19 04:02:47,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:02:47
[2026-06-19 04:02:48,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:02:48,324.324 INFO    ] Initializing speech engine...
[2026-06-19 04:02:48,333.333 INFO    ] 2026-06-19 04:02:48
[2026-06-19 04:02:48,591.591 INFO    ] 2026-06-19 04:02:48
[2026-06-19 04:02:48,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:02:48,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:02:48,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:02:49,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:02:49,050.050 INFO    ] time= 19/06/2026 04:02:49
[2026-06-19 04:02:49,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:02:49,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:02:49,199.199 INFO    ] No existing commands found in stream
[2026-06-19 04:02:54,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:02:54,213.213 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 04:02:58,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:02:58,472.472 INFO    ] Checking for system updates...
[2026-06-19 04:02:58,508.508 INFO    ] 200
[2026-06-19 04:02:58,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:58,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:58,566.566 INFO    ] No update needed
[2026-06-19 04:02:58,568.568 INFO    ] Checking for camera pi updates...
[2026-06-19 04:02:58,602.602 INFO    ] 200
[2026-06-19 04:02:58,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:02:58,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:02:58,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:02:58,694.694 INFO    ] No camera update needed
[2026-06-19 04:02:58,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:02:58,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:02:58,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:02:58,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:03:00,751.751 INFO    ] ================================================
[2026-06-19 04:03:00,766.766 INFO    ] Launching Daemon at Fri Jun 19 04:03:00 IST 2026
[2026-06-19 04:03:00,778.778 INFO    ] ================================================
[2026-06-19 04:03:01,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:03:01
[2026-06-19 04:03:02,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:03:02,623.623 INFO    ] Initializing speech engine...
[2026-06-19 04:03:02,635.635 INFO    ] 2026-06-19 04:03:02
[2026-06-19 04:03:03,031.031 INFO    ] 2026-06-19 04:03:02
[2026-06-19 04:03:03,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:03:03,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:03:03,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:03:03,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:03:03,537.537 INFO    ] time= 19/06/2026 04:03:03
[2026-06-19 04:03:03,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:03:03,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:03:03,670.670 INFO    ] No existing commands found in stream
[2026-06-19 04:03:08,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:03:08,703.703 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 04:03:12,454.454 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:03:12,456.456 INFO    ] Checking for system updates...
[2026-06-19 04:03:12,493.493 INFO    ] 200
[2026-06-19 04:03:12,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:12,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:03:12,551.551 INFO    ] No update needed
[2026-06-19 04:03:12,555.555 INFO    ] Checking for camera pi updates...
[2026-06-19 04:03:12,597.597 INFO    ] 200
[2026-06-19 04:03:12,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:12,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:03:12,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:03:12,690.690 INFO    ] No camera update needed
[2026-06-19 04:03:12,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:03:12,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:03:12,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:03:12,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:03:14,745.745 INFO    ] ================================================
[2026-06-19 04:03:14,761.761 INFO    ] Launching Daemon at Fri Jun 19 04:03:14 IST 2026
[2026-06-19 04:03:14,772.772 INFO    ] ================================================
[2026-06-19 04:03:15,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:03:15
[2026-06-19 04:03:15,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:03:16,220.220 INFO    ] Initializing speech engine...
[2026-06-19 04:03:16,231.231 INFO    ] 2026-06-19 04:03:16
[2026-06-19 04:03:16,495.495 INFO    ] 2026-06-19 04:03:16
[2026-06-19 04:03:16,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:03:16,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:03:16,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:03:16,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:03:16,978.978 INFO    ] time= 19/06/2026 04:03:16
[2026-06-19 04:03:17,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:03:17,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:03:17,109.109 INFO    ] No existing commands found in stream
[2026-06-19 04:03:22,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:03:22,124.124 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 04:03:22,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:03:22,822.822 INFO    ] Checking for system updates...
[2026-06-19 04:03:22,870.870 INFO    ] 200
[2026-06-19 04:03:22,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:22,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:03:22,928.928 INFO    ] No update needed
[2026-06-19 04:03:22,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 04:03:22,968.968 INFO    ] 200
[2026-06-19 04:03:22,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:23,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:03:23,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:03:23,055.055 INFO    ] No camera update needed
[2026-06-19 04:03:23,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:03:23,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:03:23,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:03:23,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:03:25,111.111 INFO    ] ================================================
[2026-06-19 04:03:25,127.127 INFO    ] Launching Daemon at Fri Jun 19 04:03:25 IST 2026
[2026-06-19 04:03:25,139.139 INFO    ] ================================================
[2026-06-19 04:03:25,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:03:25
[2026-06-19 04:03:26,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:03:26,560.560 INFO    ] Initializing speech engine...
[2026-06-19 04:03:26,575.575 INFO    ] 2026-06-19 04:03:26
[2026-06-19 04:03:26,838.838 INFO    ] 2026-06-19 04:03:26
[2026-06-19 04:03:26,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:03:27,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:03:27,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:03:27,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:03:27,314.314 INFO    ] time= 19/06/2026 04:03:27
[2026-06-19 04:03:27,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:03:27,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:03:27,460.460 INFO    ] No existing commands found in stream
[2026-06-19 04:03:32,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:03:32,476.476 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 04:03:34,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:03:34,428.428 INFO    ] Checking for system updates...
[2026-06-19 04:03:34,468.468 INFO    ] 200
[2026-06-19 04:03:34,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:34,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:03:34,526.526 INFO    ] No update needed
[2026-06-19 04:03:34,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 04:03:34,566.566 INFO    ] 200
[2026-06-19 04:03:34,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:34,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:03:34,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:03:34,651.651 INFO    ] No camera update needed
[2026-06-19 04:03:34,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:03:34,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:03:34,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:03:34,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:03:36,708.708 INFO    ] ================================================
[2026-06-19 04:03:36,724.724 INFO    ] Launching Daemon at Fri Jun 19 04:03:36 IST 2026
[2026-06-19 04:03:36,735.735 INFO    ] ================================================
[2026-06-19 04:03:37,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:03:37
[2026-06-19 04:03:37,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:03:38,166.166 INFO    ] Initializing speech engine...
[2026-06-19 04:03:38,186.186 INFO    ] 2026-06-19 04:03:38
[2026-06-19 04:03:38,436.436 INFO    ] 2026-06-19 04:03:38
[2026-06-19 04:03:38,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:03:38,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:03:38,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:03:38,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:03:38,776.776 INFO    ] time= 19/06/2026 04:03:38
[2026-06-19 04:03:38,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:03:38,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:03:38,888.888 INFO    ] No existing commands found in stream
[2026-06-19 04:03:43,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:03:43,904.904 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 04:03:46,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:03:46,985.985 INFO    ] Checking for system updates...
[2026-06-19 04:03:47,024.024 INFO    ] 200
[2026-06-19 04:03:47,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:47,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:03:47,085.085 INFO    ] No update needed
[2026-06-19 04:03:47,088.088 INFO    ] Checking for camera pi updates...
[2026-06-19 04:03:47,125.125 INFO    ] 200
[2026-06-19 04:03:47,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:47,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:03:47,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:03:47,315.315 INFO    ] No camera update needed
[2026-06-19 04:03:47,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:03:47,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:03:47,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:03:47,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:03:49,377.377 INFO    ] ================================================
[2026-06-19 04:03:49,394.394 INFO    ] Launching Daemon at Fri Jun 19 04:03:49 IST 2026
[2026-06-19 04:03:49,406.406 INFO    ] ================================================
[2026-06-19 04:03:50,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:03:50
[2026-06-19 04:03:50,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:03:50,962.962 INFO    ] Initializing speech engine...
[2026-06-19 04:03:50,969.969 INFO    ] 2026-06-19 04:03:50
[2026-06-19 04:03:51,223.223 INFO    ] 2026-06-19 04:03:51
[2026-06-19 04:03:51,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:03:51,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:03:51,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:03:51,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:03:51,703.703 INFO    ] time= 19/06/2026 04:03:51
[2026-06-19 04:03:51,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:03:51,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:03:51,774.774 INFO    ] No existing commands found in stream
[2026-06-19 04:03:56,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:03:56,802.802 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 04:03:57,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:03:57,420.420 INFO    ] Checking for system updates...
[2026-06-19 04:03:57,456.456 INFO    ] 200
[2026-06-19 04:03:57,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:57,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:03:57,521.521 INFO    ] No update needed
[2026-06-19 04:03:57,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 04:03:57,558.558 INFO    ] 200
[2026-06-19 04:03:57,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:03:57,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:03:57,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:03:57,647.647 INFO    ] No camera update needed
[2026-06-19 04:03:57,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:03:57,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:03:57,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:03:57,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:03:59,705.705 INFO    ] ================================================
[2026-06-19 04:03:59,724.724 INFO    ] Launching Daemon at Fri Jun 19 04:03:59 IST 2026
[2026-06-19 04:03:59,736.736 INFO    ] ================================================
[2026-06-19 04:04:00,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:04:00
[2026-06-19 04:04:01,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:04:01,445.445 INFO    ] Initializing speech engine...
[2026-06-19 04:04:01,454.454 INFO    ] 2026-06-19 04:04:01
[2026-06-19 04:04:01,776.776 INFO    ] 2026-06-19 04:04:01
[2026-06-19 04:04:01,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:04:02,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:04:02,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:04:02,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:04:02,144.144 INFO    ] time= 19/06/2026 04:04:02
[2026-06-19 04:04:02,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:04:02,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:04:02,295.295 INFO    ] No existing commands found in stream
[2026-06-19 04:04:07,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:04:07,315.315 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 04:04:08,085.085 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:04:08,088.088 INFO    ] Checking for system updates...
[2026-06-19 04:04:08,125.125 INFO    ] 200
[2026-06-19 04:04:08,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:08,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:04:08,198.198 INFO    ] No update needed
[2026-06-19 04:04:08,201.201 INFO    ] Checking for camera pi updates...
[2026-06-19 04:04:08,240.240 INFO    ] 200
[2026-06-19 04:04:08,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:08,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:04:08,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:04:08,334.334 INFO    ] No camera update needed
[2026-06-19 04:04:08,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:04:08,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:04:08,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:04:08,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:04:10,394.394 INFO    ] ================================================
[2026-06-19 04:04:10,409.409 INFO    ] Launching Daemon at Fri Jun 19 04:04:10 IST 2026
[2026-06-19 04:04:10,421.421 INFO    ] ================================================
[2026-06-19 04:04:11,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:04:11
[2026-06-19 04:04:11,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:04:11,902.902 INFO    ] Initializing speech engine...
[2026-06-19 04:04:11,909.909 INFO    ] 2026-06-19 04:04:11
[2026-06-19 04:04:12,158.158 INFO    ] 2026-06-19 04:04:12
[2026-06-19 04:04:12,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:04:12,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:04:12,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:04:12,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:04:12,628.628 INFO    ] time= 19/06/2026 04:04:12
[2026-06-19 04:04:12,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:04:12,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:04:12,807.807 INFO    ] No existing commands found in stream
[2026-06-19 04:04:17,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:04:17,822.822 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 04:04:20,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:04:20,616.616 INFO    ] Checking for system updates...
[2026-06-19 04:04:20,652.652 INFO    ] 200
[2026-06-19 04:04:20,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:20,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:04:20,709.709 INFO    ] No update needed
[2026-06-19 04:04:20,712.712 INFO    ] Checking for camera pi updates...
[2026-06-19 04:04:20,746.746 INFO    ] 200
[2026-06-19 04:04:20,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:20,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:04:20,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:04:20,856.856 INFO    ] No camera update needed
[2026-06-19 04:04:20,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:04:20,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:04:20,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:04:20,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:04:22,917.917 INFO    ] ================================================
[2026-06-19 04:04:22,933.933 INFO    ] Launching Daemon at Fri Jun 19 04:04:22 IST 2026
[2026-06-19 04:04:22,944.944 INFO    ] ================================================
[2026-06-19 04:04:23,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:04:23
[2026-06-19 04:04:24,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:04:24,562.562 INFO    ] Initializing speech engine...
[2026-06-19 04:04:24,572.572 INFO    ] 2026-06-19 04:04:24
[2026-06-19 04:04:24,822.822 INFO    ] 2026-06-19 04:04:24
[2026-06-19 04:04:24,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:04:25,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:04:25,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:04:25,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:04:25,289.289 INFO    ] time= 19/06/2026 04:04:25
[2026-06-19 04:04:25,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:04:25,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:04:25,444.444 INFO    ] No existing commands found in stream
[2026-06-19 04:04:30,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:04:30,459.459 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 04:04:31,959.959 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:04:31,962.962 INFO    ] Checking for system updates...
[2026-06-19 04:04:32,002.002 INFO    ] 200
[2026-06-19 04:04:32,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:32,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:04:32,065.065 INFO    ] No update needed
[2026-06-19 04:04:32,068.068 INFO    ] Checking for camera pi updates...
[2026-06-19 04:04:32,115.115 INFO    ] 200
[2026-06-19 04:04:32,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:32,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:04:32,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:04:32,213.213 INFO    ] No camera update needed
[2026-06-19 04:04:32,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:04:32,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:04:32,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:04:32,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:04:34,273.273 INFO    ] ================================================
[2026-06-19 04:04:34,288.288 INFO    ] Launching Daemon at Fri Jun 19 04:04:34 IST 2026
[2026-06-19 04:04:34,300.300 INFO    ] ================================================
[2026-06-19 04:04:34,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:04:34
[2026-06-19 04:04:35,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:04:35,933.933 INFO    ] Initializing speech engine...
[2026-06-19 04:04:35,944.944 INFO    ] 2026-06-19 04:04:35
[2026-06-19 04:04:36,229.229 INFO    ] 2026-06-19 04:04:36
[2026-06-19 04:04:36,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:04:36,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:04:36,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:04:36,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:04:36,579.579 INFO    ] time= 19/06/2026 04:04:36
[2026-06-19 04:04:36,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:04:36,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:04:36,660.660 INFO    ] No existing commands found in stream
[2026-06-19 04:04:41,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:04:41,674.674 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 04:04:43,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:04:43,102.102 INFO    ] Checking for system updates...
[2026-06-19 04:04:43,138.138 INFO    ] 200
[2026-06-19 04:04:43,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:43,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:04:43,202.202 INFO    ] No update needed
[2026-06-19 04:04:43,204.204 INFO    ] Checking for camera pi updates...
[2026-06-19 04:04:43,242.242 INFO    ] 200
[2026-06-19 04:04:43,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:43,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:04:43,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:04:43,332.332 INFO    ] No camera update needed
[2026-06-19 04:04:43,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:04:43,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:04:43,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:04:43,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:04:45,388.388 INFO    ] ================================================
[2026-06-19 04:04:45,404.404 INFO    ] Launching Daemon at Fri Jun 19 04:04:45 IST 2026
[2026-06-19 04:04:45,415.415 INFO    ] ================================================
[2026-06-19 04:04:46,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:04:46
[2026-06-19 04:04:46,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:04:47,047.047 INFO    ] Initializing speech engine...
[2026-06-19 04:04:47,059.059 INFO    ] 2026-06-19 04:04:47
[2026-06-19 04:04:47,348.348 INFO    ] 2026-06-19 04:04:47
[2026-06-19 04:04:47,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:04:47,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:04:47,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:04:47,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:04:47,820.820 INFO    ] time= 19/06/2026 04:04:47
[2026-06-19 04:04:47,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:04:47,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:04:48,028.028 INFO    ] No existing commands found in stream
[2026-06-19 04:04:53,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:04:53,059.059 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 04:04:55,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:04:55,829.829 INFO    ] Checking for system updates...
[2026-06-19 04:04:55,877.877 INFO    ] 200
[2026-06-19 04:04:55,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:55,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:04:55,937.937 INFO    ] No update needed
[2026-06-19 04:04:55,940.940 INFO    ] Checking for camera pi updates...
[2026-06-19 04:04:55,975.975 INFO    ] 200
[2026-06-19 04:04:55,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:04:56,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:04:56,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:04:56,065.065 INFO    ] No camera update needed
[2026-06-19 04:04:56,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:04:56,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:04:56,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:04:56,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:04:58,122.122 INFO    ] ================================================
[2026-06-19 04:04:58,138.138 INFO    ] Launching Daemon at Fri Jun 19 04:04:58 IST 2026
[2026-06-19 04:04:58,149.149 INFO    ] ================================================
[2026-06-19 04:04:58,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:04:58
[2026-06-19 04:04:59,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:04:59,564.564 INFO    ] Initializing speech engine...
[2026-06-19 04:04:59,570.570 INFO    ] 2026-06-19 04:04:59
[2026-06-19 04:04:59,845.845 INFO    ] 2026-06-19 04:04:59
[2026-06-19 04:04:59,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:05:00,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:05:00,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:05:00,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:05:00,292.292 INFO    ] time= 19/06/2026 04:05:00
[2026-06-19 04:05:00,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:05:00,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:05:00,474.474 INFO    ] No existing commands found in stream
[2026-06-19 04:05:05,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:05:05,489.489 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 04:05:06,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:05:06,253.253 INFO    ] Checking for system updates...
[2026-06-19 04:05:06,297.297 INFO    ] 200
[2026-06-19 04:05:06,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:06,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:05:06,363.363 INFO    ] No update needed
[2026-06-19 04:05:06,366.366 INFO    ] Checking for camera pi updates...
[2026-06-19 04:05:06,406.406 INFO    ] 200
[2026-06-19 04:05:06,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:06,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:05:06,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:05:06,508.508 INFO    ] No camera update needed
[2026-06-19 04:05:06,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:05:06,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:05:06,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:05:06,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:05:08,564.564 INFO    ] ================================================
[2026-06-19 04:05:08,581.581 INFO    ] Launching Daemon at Fri Jun 19 04:05:08 IST 2026
[2026-06-19 04:05:08,592.592 INFO    ] ================================================
[2026-06-19 04:05:09,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:05:09
[2026-06-19 04:05:09,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:05:10,032.032 INFO    ] Initializing speech engine...
[2026-06-19 04:05:10,041.041 INFO    ] 2026-06-19 04:05:10
[2026-06-19 04:05:10,290.290 INFO    ] 2026-06-19 04:05:10
[2026-06-19 04:05:10,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:05:10,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:05:10,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:05:10,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:05:10,796.796 INFO    ] time= 19/06/2026 04:05:10
[2026-06-19 04:05:10,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:05:10,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:05:10,925.925 INFO    ] No existing commands found in stream
[2026-06-19 04:05:15,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:05:15,939.939 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 04:05:17,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:05:17,899.899 INFO    ] Checking for system updates...
[2026-06-19 04:05:17,946.946 INFO    ] 200
[2026-06-19 04:05:17,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:18,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:05:18,009.009 INFO    ] No update needed
[2026-06-19 04:05:18,011.011 INFO    ] Checking for camera pi updates...
[2026-06-19 04:05:18,047.047 INFO    ] 200
[2026-06-19 04:05:18,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:18,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:05:18,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:05:18,155.155 INFO    ] No camera update needed
[2026-06-19 04:05:18,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:05:18,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:05:18,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:05:18,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:05:20,219.219 INFO    ] ================================================
[2026-06-19 04:05:20,235.235 INFO    ] Launching Daemon at Fri Jun 19 04:05:20 IST 2026
[2026-06-19 04:05:20,246.246 INFO    ] ================================================
[2026-06-19 04:05:20,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:05:20
[2026-06-19 04:05:21,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:05:21,704.704 INFO    ] Initializing speech engine...
[2026-06-19 04:05:21,713.713 INFO    ] 2026-06-19 04:05:21
[2026-06-19 04:05:21,971.971 INFO    ] 2026-06-19 04:05:21
[2026-06-19 04:05:22,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:05:22,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:05:22,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:05:22,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:05:22,393.393 INFO    ] time= 19/06/2026 04:05:22
[2026-06-19 04:05:22,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:05:22,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:05:22,571.571 INFO    ] No existing commands found in stream
[2026-06-19 04:05:27,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:05:27,585.585 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 04:05:30,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:05:30,949.949 INFO    ] Checking for system updates...
[2026-06-19 04:05:30,984.984 INFO    ] 200
[2026-06-19 04:05:30,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:31,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:05:31,042.042 INFO    ] No update needed
[2026-06-19 04:05:31,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 04:05:31,082.082 INFO    ] 200
[2026-06-19 04:05:31,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:31,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:05:31,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:05:31,168.168 INFO    ] No camera update needed
[2026-06-19 04:05:31,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:05:31,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:05:31,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:05:31,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:05:33,224.224 INFO    ] ================================================
[2026-06-19 04:05:33,240.240 INFO    ] Launching Daemon at Fri Jun 19 04:05:33 IST 2026
[2026-06-19 04:05:33,251.251 INFO    ] ================================================
[2026-06-19 04:05:33,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:05:33
[2026-06-19 04:05:34,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:05:34,669.669 INFO    ] Initializing speech engine...
[2026-06-19 04:05:34,679.679 INFO    ] 2026-06-19 04:05:34
[2026-06-19 04:05:34,930.930 INFO    ] 2026-06-19 04:05:34
[2026-06-19 04:05:34,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:05:35,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:05:35,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:05:35,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:05:35,402.402 INFO    ] time= 19/06/2026 04:05:35
[2026-06-19 04:05:35,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:05:35,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:05:35,541.541 INFO    ] No existing commands found in stream
[2026-06-19 04:05:40,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:05:40,558.558 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 04:05:44,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:05:44,476.476 INFO    ] Checking for system updates...
[2026-06-19 04:05:44,515.515 INFO    ] 200
[2026-06-19 04:05:44,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:44,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:05:44,579.579 INFO    ] No update needed
[2026-06-19 04:05:44,581.581 INFO    ] Checking for camera pi updates...
[2026-06-19 04:05:44,618.618 INFO    ] 200
[2026-06-19 04:05:44,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:44,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:05:44,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:05:44,704.704 INFO    ] No camera update needed
[2026-06-19 04:05:44,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:05:44,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:05:44,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:05:44,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:05:46,761.761 INFO    ] ================================================
[2026-06-19 04:05:46,776.776 INFO    ] Launching Daemon at Fri Jun 19 04:05:46 IST 2026
[2026-06-19 04:05:46,792.792 INFO    ] ================================================
[2026-06-19 04:05:47,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:05:47
[2026-06-19 04:05:47,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:05:48,198.198 INFO    ] Initializing speech engine...
[2026-06-19 04:05:48,221.221 INFO    ] 2026-06-19 04:05:48
[2026-06-19 04:05:48,482.482 INFO    ] 2026-06-19 04:05:48
[2026-06-19 04:05:48,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:05:48,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:05:48,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:05:48,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:05:48,859.859 INFO    ] time= 19/06/2026 04:05:48
[2026-06-19 04:05:48,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:05:48,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:05:49,022.022 INFO    ] No existing commands found in stream
[2026-06-19 04:05:54,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:05:54,050.050 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 04:05:58,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:05:58,009.009 INFO    ] Checking for system updates...
[2026-06-19 04:05:58,046.046 INFO    ] 200
[2026-06-19 04:05:58,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:58,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:05:58,110.110 INFO    ] No update needed
[2026-06-19 04:05:58,112.112 INFO    ] Checking for camera pi updates...
[2026-06-19 04:05:58,149.149 INFO    ] 200
[2026-06-19 04:05:58,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:05:58,193.193 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:05:58,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:05:58,348.348 INFO    ] No camera update needed
[2026-06-19 04:05:58,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:05:58,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:05:58,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:05:58,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:06:00,405.405 INFO    ] ================================================
[2026-06-19 04:06:00,421.421 INFO    ] Launching Daemon at Fri Jun 19 04:06:00 IST 2026
[2026-06-19 04:06:00,435.435 INFO    ] ================================================
[2026-06-19 04:06:01,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:06:01
[2026-06-19 04:06:01,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:06:02,143.143 INFO    ] Initializing speech engine...
[2026-06-19 04:06:02,163.163 INFO    ] 2026-06-19 04:06:02
[2026-06-19 04:06:02,505.505 INFO    ] 2026-06-19 04:06:02
[2026-06-19 04:06:02,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:06:02,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:06:02,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:06:02,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:06:02,962.962 INFO    ] time= 19/06/2026 04:06:02
[2026-06-19 04:06:02,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:06:03,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:06:03,136.136 INFO    ] No existing commands found in stream
[2026-06-19 04:06:08,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:06:08,151.151 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 04:06:11,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:06:11,349.349 INFO    ] Checking for system updates...
[2026-06-19 04:06:11,386.386 INFO    ] 200
[2026-06-19 04:06:11,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:11,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:06:11,448.448 INFO    ] No update needed
[2026-06-19 04:06:11,451.451 INFO    ] Checking for camera pi updates...
[2026-06-19 04:06:11,487.487 INFO    ] 200
[2026-06-19 04:06:11,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:11,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:06:11,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:06:11,575.575 INFO    ] No camera update needed
[2026-06-19 04:06:11,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:06:11,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:06:11,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:06:11,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:06:13,631.631 INFO    ] ================================================
[2026-06-19 04:06:13,647.647 INFO    ] Launching Daemon at Fri Jun 19 04:06:13 IST 2026
[2026-06-19 04:06:13,658.658 INFO    ] ================================================
[2026-06-19 04:06:14,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:06:14
[2026-06-19 04:06:14,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:06:15,149.149 INFO    ] Initializing speech engine...
[2026-06-19 04:06:15,162.162 INFO    ] 2026-06-19 04:06:15
[2026-06-19 04:06:15,432.432 INFO    ] 2026-06-19 04:06:15
[2026-06-19 04:06:15,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:06:15,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:06:15,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:06:15,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:06:15,764.764 INFO    ] time= 19/06/2026 04:06:15
[2026-06-19 04:06:15,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:06:15,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:06:15,884.884 INFO    ] No existing commands found in stream
[2026-06-19 04:06:20,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:06:20,898.898 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 04:06:23,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:06:23,960.960 INFO    ] Checking for system updates...
[2026-06-19 04:06:23,998.998 INFO    ] 200
[2026-06-19 04:06:24,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:24,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:06:24,056.056 INFO    ] No update needed
[2026-06-19 04:06:24,058.058 INFO    ] Checking for camera pi updates...
[2026-06-19 04:06:24,092.092 INFO    ] 200
[2026-06-19 04:06:24,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:24,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:06:24,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:06:24,191.191 INFO    ] No camera update needed
[2026-06-19 04:06:24,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:06:24,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:06:24,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:06:24,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:06:26,246.246 INFO    ] ================================================
[2026-06-19 04:06:26,261.261 INFO    ] Launching Daemon at Fri Jun 19 04:06:26 IST 2026
[2026-06-19 04:06:26,273.273 INFO    ] ================================================
[2026-06-19 04:06:26,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:06:26
[2026-06-19 04:06:27,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:06:27,777.777 INFO    ] Initializing speech engine...
[2026-06-19 04:06:27,785.785 INFO    ] 2026-06-19 04:06:27
[2026-06-19 04:06:28,045.045 INFO    ] 2026-06-19 04:06:28
[2026-06-19 04:06:28,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:06:28,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:06:28,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:06:28,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:06:28,525.525 INFO    ] time= 19/06/2026 04:06:28
[2026-06-19 04:06:28,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:06:28,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:06:28,669.669 INFO    ] No existing commands found in stream
[2026-06-19 04:06:33,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:06:33,683.683 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 04:06:36,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:06:36,091.091 INFO    ] Checking for system updates...
[2026-06-19 04:06:36,131.131 INFO    ] 200
[2026-06-19 04:06:36,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:36,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:06:36,194.194 INFO    ] No update needed
[2026-06-19 04:06:36,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 04:06:36,231.231 INFO    ] 200
[2026-06-19 04:06:36,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:36,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:06:36,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:06:36,319.319 INFO    ] No camera update needed
[2026-06-19 04:06:36,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:06:36,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:06:36,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:06:36,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:06:38,376.376 INFO    ] ================================================
[2026-06-19 04:06:38,392.392 INFO    ] Launching Daemon at Fri Jun 19 04:06:38 IST 2026
[2026-06-19 04:06:38,403.403 INFO    ] ================================================
[2026-06-19 04:06:38,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:06:38
[2026-06-19 04:06:39,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:06:39,843.843 INFO    ] Initializing speech engine...
[2026-06-19 04:06:39,853.853 INFO    ] 2026-06-19 04:06:39
[2026-06-19 04:06:40,102.102 INFO    ] 2026-06-19 04:06:40
[2026-06-19 04:06:40,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:06:40,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:06:40,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:06:40,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:06:40,554.554 INFO    ] time= 19/06/2026 04:06:40
[2026-06-19 04:06:40,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:06:40,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:06:40,732.732 INFO    ] No existing commands found in stream
[2026-06-19 04:06:45,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:06:45,747.747 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 04:06:46,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:06:46,552.552 INFO    ] Checking for system updates...
[2026-06-19 04:06:46,588.588 INFO    ] 200
[2026-06-19 04:06:46,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:46,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:06:46,651.651 INFO    ] No update needed
[2026-06-19 04:06:46,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 04:06:46,690.690 INFO    ] 200
[2026-06-19 04:06:46,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:46,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:06:46,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:06:46,769.769 INFO    ] No camera update needed
[2026-06-19 04:06:46,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:06:46,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:06:46,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:06:46,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:06:48,824.824 INFO    ] ================================================
[2026-06-19 04:06:48,839.839 INFO    ] Launching Daemon at Fri Jun 19 04:06:48 IST 2026
[2026-06-19 04:06:48,850.850 INFO    ] ================================================
[2026-06-19 04:06:49,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:06:49
[2026-06-19 04:06:50,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:06:50,337.337 INFO    ] Initializing speech engine...
[2026-06-19 04:06:50,349.349 INFO    ] 2026-06-19 04:06:50
[2026-06-19 04:06:50,606.606 INFO    ] 2026-06-19 04:06:50
[2026-06-19 04:06:50,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:06:50,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:06:50,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:06:50,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:06:50,976.976 INFO    ] time= 19/06/2026 04:06:50
[2026-06-19 04:06:50,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:06:51,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:06:51,138.138 INFO    ] No existing commands found in stream
[2026-06-19 04:06:56,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:06:56,171.171 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 04:06:59,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:06:59,341.341 INFO    ] Checking for system updates...
[2026-06-19 04:06:59,388.388 INFO    ] 200
[2026-06-19 04:06:59,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:59,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:06:59,452.452 INFO    ] No update needed
[2026-06-19 04:06:59,454.454 INFO    ] Checking for camera pi updates...
[2026-06-19 04:06:59,488.488 INFO    ] 200
[2026-06-19 04:06:59,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:06:59,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:06:59,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:06:59,594.594 INFO    ] No camera update needed
[2026-06-19 04:06:59,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:06:59,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:06:59,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:06:59,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:07:01,649.649 INFO    ] ================================================
[2026-06-19 04:07:01,664.664 INFO    ] Launching Daemon at Fri Jun 19 04:07:01 IST 2026
[2026-06-19 04:07:01,675.675 INFO    ] ================================================
[2026-06-19 04:07:02,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:07:02
[2026-06-19 04:07:03,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:07:03,310.310 INFO    ] Initializing speech engine...
[2026-06-19 04:07:03,326.326 INFO    ] 2026-06-19 04:07:03
[2026-06-19 04:07:03,653.653 INFO    ] 2026-06-19 04:07:03
[2026-06-19 04:07:03,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:07:03,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:07:03,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:07:04,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:07:04,045.045 INFO    ] time= 19/06/2026 04:07:04
[2026-06-19 04:07:04,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:07:04,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:07:04,225.225 INFO    ] No existing commands found in stream
[2026-06-19 04:07:09,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:07:09,254.254 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 04:07:11,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:07:11,760.760 INFO    ] Checking for system updates...
[2026-06-19 04:07:11,802.802 INFO    ] 200
[2026-06-19 04:07:11,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:07:11,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:07:11,871.871 INFO    ] No update needed
[2026-06-19 04:07:11,875.875 INFO    ] Checking for camera pi updates...
[2026-06-19 04:07:11,916.916 INFO    ] 200
[2026-06-19 04:07:11,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:07:11,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:07:12,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:07:12,003.003 INFO    ] No camera update needed
[2026-06-19 04:07:12,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:07:12,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:07:12,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:07:12,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:07:14,063.063 INFO    ] ================================================
[2026-06-19 04:07:14,078.078 INFO    ] Launching Daemon at Fri Jun 19 04:07:14 IST 2026
[2026-06-19 04:07:14,090.090 INFO    ] ================================================
[2026-06-19 04:07:14,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:07:14
[2026-06-19 04:07:15,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:07:15,718.718 INFO    ] Initializing speech engine...
[2026-06-19 04:07:15,729.729 INFO    ] 2026-06-19 04:07:15
[2026-06-19 04:07:16,005.005 INFO    ] 2026-06-19 04:07:16
[2026-06-19 04:07:16,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:07:16,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:07:16,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:07:16,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:07:16,499.499 INFO    ] time= 19/06/2026 04:07:16
[2026-06-19 04:07:16,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:07:16,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:07:16,707.707 INFO    ] No existing commands found in stream
[2026-06-19 04:07:21,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:07:21,737.737 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 04:07:23,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:07:23,881.881 INFO    ] Checking for system updates...
[2026-06-19 04:07:23,919.919 INFO    ] 200
[2026-06-19 04:07:23,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:07:23,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:07:23,989.989 INFO    ] No update needed
[2026-06-19 04:07:23,991.991 INFO    ] Checking for camera pi updates...
[2026-06-19 04:07:24,026.026 INFO    ] 200
[2026-06-19 04:07:24,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:07:24,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:07:24,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:07:24,126.126 INFO    ] No camera update needed
[2026-06-19 04:07:24,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:07:24,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:07:24,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:07:24,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:07:26,181.181 INFO    ] ================================================
[2026-06-19 04:07:26,197.197 INFO    ] Launching Daemon at Fri Jun 19 04:07:26 IST 2026
[2026-06-19 04:07:26,208.208 INFO    ] ================================================
[2026-06-19 04:07:26,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:07:26
[2026-06-19 04:07:27,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:07:27,605.605 INFO    ] Initializing speech engine...
[2026-06-19 04:07:27,620.620 INFO    ] 2026-06-19 04:07:27
[2026-06-19 04:07:27,882.882 INFO    ] 2026-06-19 04:07:27
[2026-06-19 04:07:27,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:07:28,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:07:28,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:07:28,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:07:28,372.372 INFO    ] time= 19/06/2026 04:07:28
[2026-06-19 04:07:28,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:07:28,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:07:28,523.523 INFO    ] No existing commands found in stream
[2026-06-19 04:07:33,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:07:33,562.562 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 04:07:35,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:07:35,084.084 INFO    ] Checking for system updates...
[2026-06-19 04:07:35,125.125 INFO    ] 200
[2026-06-19 04:07:35,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:07:35,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:07:35,183.183 INFO    ] No update needed
[2026-06-19 04:07:35,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 04:07:35,220.220 INFO    ] 200
[2026-06-19 04:07:35,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:07:35,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:07:35,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:07:35,324.324 INFO    ] No camera update needed
[2026-06-19 04:07:35,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:07:35,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:07:35,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:07:35,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:07:37,381.381 INFO    ] ================================================
[2026-06-19 04:07:37,396.396 INFO    ] Launching Daemon at Fri Jun 19 04:07:37 IST 2026
[2026-06-19 04:07:37,407.407 INFO    ] ================================================
[2026-06-19 04:07:37,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:07:37
[2026-06-19 04:07:38,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:07:38,889.889 INFO    ] Initializing speech engine...
[2026-06-19 04:07:38,900.900 INFO    ] 2026-06-19 04:07:38
[2026-06-19 04:07:39,188.188 INFO    ] 2026-06-19 04:07:39
[2026-06-19 04:07:39,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:07:39,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:07:39,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:07:39,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:07:39,635.635 INFO    ] time= 19/06/2026 04:07:39
[2026-06-19 04:07:39,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:07:39,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:07:39,789.789 INFO    ] No existing commands found in stream
[2026-06-19 04:07:44,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:07:44,805.805 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 04:07:48,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:07:48,731.731 INFO    ] Checking for system updates...
[2026-06-19 04:07:48,768.768 INFO    ] 200
[2026-06-19 04:07:48,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:07:48,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:07:48,833.833 INFO    ] No update needed
[2026-06-19 04:07:48,836.836 INFO    ] Checking for camera pi updates...
[2026-06-19 04:07:48,885.885 INFO    ] 200
[2026-06-19 04:07:48,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:07:48,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:07:48,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:07:48,972.972 INFO    ] No camera update needed
[2026-06-19 04:07:48,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:07:48,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:07:48,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:07:48,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:07:51,032.032 INFO    ] ================================================
[2026-06-19 04:07:51,047.047 INFO    ] Launching Daemon at Fri Jun 19 04:07:51 IST 2026
[2026-06-19 04:07:51,058.058 INFO    ] ================================================
[2026-06-19 04:07:51,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:07:51
[2026-06-19 04:07:52,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:07:52,490.490 INFO    ] Initializing speech engine...
[2026-06-19 04:07:52,513.513 INFO    ] 2026-06-19 04:07:52
[2026-06-19 04:07:52,771.771 INFO    ] 2026-06-19 04:07:52
[2026-06-19 04:07:52,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:07:53,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:07:53,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:07:53,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:07:53,251.251 INFO    ] time= 19/06/2026 04:07:53
[2026-06-19 04:07:53,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:07:53,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:07:53,393.393 INFO    ] No existing commands found in stream
[2026-06-19 04:07:58,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:07:58,408.408 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 04:08:00,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:08:00,580.580 INFO    ] Checking for system updates...
[2026-06-19 04:08:00,617.617 INFO    ] 200
[2026-06-19 04:08:00,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:00,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:08:00,678.678 INFO    ] No update needed
[2026-06-19 04:08:00,681.681 INFO    ] Checking for camera pi updates...
[2026-06-19 04:08:00,720.720 INFO    ] 200
[2026-06-19 04:08:00,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:00,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:08:00,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:08:00,914.914 INFO    ] No camera update needed
[2026-06-19 04:08:00,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:08:00,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:08:00,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:08:00,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:08:03,996.996 INFO    ] ================================================
[2026-06-19 04:08:03,018.018 INFO    ] Launching Daemon at Fri Jun 19 04:08:03 IST 2026
[2026-06-19 04:08:03,036.036 INFO    ] ================================================
[2026-06-19 04:08:03,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:08:03
[2026-06-19 04:08:04,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:08:04,622.622 INFO    ] Initializing speech engine...
[2026-06-19 04:08:04,629.629 INFO    ] 2026-06-19 04:08:04
[2026-06-19 04:08:04,872.872 INFO    ] 2026-06-19 04:08:04
[2026-06-19 04:08:04,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:08:05,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:08:05,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:08:05,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:08:05,347.347 INFO    ] time= 19/06/2026 04:08:05
[2026-06-19 04:08:05,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:08:05,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:08:05,566.566 INFO    ] No existing commands found in stream
[2026-06-19 04:08:10,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:08:10,593.593 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 04:08:11,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:08:11,417.417 INFO    ] Checking for system updates...
[2026-06-19 04:08:11,453.453 INFO    ] 200
[2026-06-19 04:08:11,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:11,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:08:11,513.513 INFO    ] No update needed
[2026-06-19 04:08:11,516.516 INFO    ] Checking for camera pi updates...
[2026-06-19 04:08:11,551.551 INFO    ] 200
[2026-06-19 04:08:11,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:11,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:08:11,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:08:11,653.653 INFO    ] No camera update needed
[2026-06-19 04:08:11,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:08:11,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:08:11,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:08:11,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:08:13,713.713 INFO    ] ================================================
[2026-06-19 04:08:13,728.728 INFO    ] Launching Daemon at Fri Jun 19 04:08:13 IST 2026
[2026-06-19 04:08:13,739.739 INFO    ] ================================================
[2026-06-19 04:08:14,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:08:14
[2026-06-19 04:08:14,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:08:15,162.162 INFO    ] Initializing speech engine...
[2026-06-19 04:08:15,171.171 INFO    ] 2026-06-19 04:08:15
[2026-06-19 04:08:15,416.416 INFO    ] 2026-06-19 04:08:15
[2026-06-19 04:08:15,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:08:15,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:08:15,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:08:15,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:08:15,866.866 INFO    ] time= 19/06/2026 04:08:15
[2026-06-19 04:08:15,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:08:15,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:08:16,033.033 INFO    ] No existing commands found in stream
[2026-06-19 04:08:21,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:08:21,048.048 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 04:08:24,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:08:24,398.398 INFO    ] Checking for system updates...
[2026-06-19 04:08:24,438.438 INFO    ] 200
[2026-06-19 04:08:24,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:24,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:08:24,496.496 INFO    ] No update needed
[2026-06-19 04:08:24,498.498 INFO    ] Checking for camera pi updates...
[2026-06-19 04:08:24,532.532 INFO    ] 200
[2026-06-19 04:08:24,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:24,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:08:24,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:08:24,610.610 INFO    ] No camera update needed
[2026-06-19 04:08:24,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:08:24,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:08:24,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:08:24,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:08:26,668.668 INFO    ] ================================================
[2026-06-19 04:08:26,684.684 INFO    ] Launching Daemon at Fri Jun 19 04:08:26 IST 2026
[2026-06-19 04:08:26,694.694 INFO    ] ================================================
[2026-06-19 04:08:27,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:08:27
[2026-06-19 04:08:28,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:08:28,386.386 INFO    ] Initializing speech engine...
[2026-06-19 04:08:28,394.394 INFO    ] 2026-06-19 04:08:28
[2026-06-19 04:08:28,703.703 INFO    ] 2026-06-19 04:08:28
[2026-06-19 04:08:28,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:08:29,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:08:29,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:08:29,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:08:29,220.220 INFO    ] time= 19/06/2026 04:08:29
[2026-06-19 04:08:29,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:08:29,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:08:29,373.373 INFO    ] No existing commands found in stream
[2026-06-19 04:08:34,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:08:34,403.403 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 04:08:36,909.909 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:08:36,912.912 INFO    ] Checking for system updates...
[2026-06-19 04:08:36,950.950 INFO    ] 200
[2026-06-19 04:08:36,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:37,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:08:37,010.010 INFO    ] No update needed
[2026-06-19 04:08:37,013.013 INFO    ] Checking for camera pi updates...
[2026-06-19 04:08:37,048.048 INFO    ] 200
[2026-06-19 04:08:37,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:37,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:08:37,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:08:37,145.145 INFO    ] No camera update needed
[2026-06-19 04:08:37,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:08:37,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:08:37,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:08:37,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:08:39,206.206 INFO    ] ================================================
[2026-06-19 04:08:39,222.222 INFO    ] Launching Daemon at Fri Jun 19 04:08:39 IST 2026
[2026-06-19 04:08:39,235.235 INFO    ] ================================================
[2026-06-19 04:08:39,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:08:39
[2026-06-19 04:08:40,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:08:40,663.663 INFO    ] Initializing speech engine...
[2026-06-19 04:08:40,685.685 INFO    ] 2026-06-19 04:08:40
[2026-06-19 04:08:40,940.940 INFO    ] 2026-06-19 04:08:40
[2026-06-19 04:08:40,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:08:41,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:08:41,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:08:41,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:08:41,405.405 INFO    ] time= 19/06/2026 04:08:41
[2026-06-19 04:08:41,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:08:41,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:08:41,557.557 INFO    ] No existing commands found in stream
[2026-06-19 04:08:46,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:08:46,572.572 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 04:08:50,191.191 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:08:50,194.194 INFO    ] Checking for system updates...
[2026-06-19 04:08:50,230.230 INFO    ] 200
[2026-06-19 04:08:50,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:50,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:08:50,292.292 INFO    ] No update needed
[2026-06-19 04:08:50,294.294 INFO    ] Checking for camera pi updates...
[2026-06-19 04:08:50,328.328 INFO    ] 200
[2026-06-19 04:08:50,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:08:50,372.372 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:08:50,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:08:50,415.415 INFO    ] No camera update needed
[2026-06-19 04:08:50,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:08:50,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:08:50,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:08:50,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:08:52,471.471 INFO    ] ================================================
[2026-06-19 04:08:52,487.487 INFO    ] Launching Daemon at Fri Jun 19 04:08:52 IST 2026
[2026-06-19 04:08:52,498.498 INFO    ] ================================================
[2026-06-19 04:08:53,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:08:53
[2026-06-19 04:08:53,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:08:53,962.962 INFO    ] Initializing speech engine...
[2026-06-19 04:08:53,968.968 INFO    ] 2026-06-19 04:08:53
[2026-06-19 04:08:54,293.293 INFO    ] 2026-06-19 04:08:54
[2026-06-19 04:08:54,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:08:54,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:08:54,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:08:54,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:08:54,629.629 INFO    ] time= 19/06/2026 04:08:54
[2026-06-19 04:08:54,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:08:54,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:08:54,755.755 INFO    ] No existing commands found in stream
[2026-06-19 04:08:59,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:08:59,776.776 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 04:09:02,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:09:02,385.385 INFO    ] Checking for system updates...
[2026-06-19 04:09:02,429.429 INFO    ] 200
[2026-06-19 04:09:02,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:02,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:09:02,496.496 INFO    ] No update needed
[2026-06-19 04:09:02,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 04:09:02,548.548 INFO    ] 200
[2026-06-19 04:09:02,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:02,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:09:02,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:09:02,651.651 INFO    ] No camera update needed
[2026-06-19 04:09:02,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:09:02,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:09:02,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:09:02,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:09:04,728.728 INFO    ] ================================================
[2026-06-19 04:09:04,743.743 INFO    ] Launching Daemon at Fri Jun 19 04:09:04 IST 2026
[2026-06-19 04:09:04,754.754 INFO    ] ================================================
[2026-06-19 04:09:05,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:09:05
[2026-06-19 04:09:05,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:09:06,259.259 INFO    ] Initializing speech engine...
[2026-06-19 04:09:06,267.267 INFO    ] 2026-06-19 04:09:06
[2026-06-19 04:09:06,515.515 INFO    ] 2026-06-19 04:09:06
[2026-06-19 04:09:06,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:09:06,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:09:06,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:09:06,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:09:06,888.888 INFO    ] time= 19/06/2026 04:09:06
[2026-06-19 04:09:06,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:09:06,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:09:06,992.992 INFO    ] No existing commands found in stream
[2026-06-19 04:09:12,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:09:12,006.006 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 04:09:14,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:09:14,627.627 INFO    ] Checking for system updates...
[2026-06-19 04:09:14,663.663 INFO    ] 200
[2026-06-19 04:09:14,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:14,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:09:14,721.721 INFO    ] No update needed
[2026-06-19 04:09:14,723.723 INFO    ] Checking for camera pi updates...
[2026-06-19 04:09:14,757.757 INFO    ] 200
[2026-06-19 04:09:14,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:14,805.805 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:09:14,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:09:14,847.847 INFO    ] No camera update needed
[2026-06-19 04:09:14,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:09:14,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:09:14,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:09:14,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:09:16,903.903 INFO    ] ================================================
[2026-06-19 04:09:16,919.919 INFO    ] Launching Daemon at Fri Jun 19 04:09:16 IST 2026
[2026-06-19 04:09:16,930.930 INFO    ] ================================================
[2026-06-19 04:09:17,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:09:17
[2026-06-19 04:09:18,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:09:18,370.370 INFO    ] Initializing speech engine...
[2026-06-19 04:09:18,379.379 INFO    ] 2026-06-19 04:09:18
[2026-06-19 04:09:18,632.632 INFO    ] 2026-06-19 04:09:18
[2026-06-19 04:09:18,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:09:18,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:09:18,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:09:18,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:09:18,989.989 INFO    ] time= 19/06/2026 04:09:18
[2026-06-19 04:09:18,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:09:19,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:09:19,070.070 INFO    ] No existing commands found in stream
[2026-06-19 04:09:24,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:09:24,108.108 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 04:09:25,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:09:25,051.051 INFO    ] Checking for system updates...
[2026-06-19 04:09:25,086.086 INFO    ] 200
[2026-06-19 04:09:25,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:25,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:09:25,143.143 INFO    ] No update needed
[2026-06-19 04:09:25,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 04:09:25,180.180 INFO    ] 200
[2026-06-19 04:09:25,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:25,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:09:25,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:09:25,258.258 INFO    ] No camera update needed
[2026-06-19 04:09:25,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:09:25,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:09:25,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:09:25,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:09:27,314.314 INFO    ] ================================================
[2026-06-19 04:09:27,329.329 INFO    ] Launching Daemon at Fri Jun 19 04:09:27 IST 2026
[2026-06-19 04:09:27,340.340 INFO    ] ================================================
[2026-06-19 04:09:28,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:09:28
[2026-06-19 04:09:28,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:09:29,046.046 INFO    ] Initializing speech engine...
[2026-06-19 04:09:29,054.054 INFO    ] 2026-06-19 04:09:29
[2026-06-19 04:09:29,350.350 INFO    ] 2026-06-19 04:09:29
[2026-06-19 04:09:29,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:09:29,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:09:29,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:09:29,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:09:29,951.951 INFO    ] time= 19/06/2026 04:09:29
[2026-06-19 04:09:29,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:09:29,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:09:30,089.089 INFO    ] No existing commands found in stream
[2026-06-19 04:09:35,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:09:35,110.110 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 04:09:39,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:09:39,083.083 INFO    ] Checking for system updates...
[2026-06-19 04:09:39,130.130 INFO    ] 200
[2026-06-19 04:09:39,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:39,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:09:39,195.195 INFO    ] No update needed
[2026-06-19 04:09:39,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 04:09:39,238.238 INFO    ] 200
[2026-06-19 04:09:39,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:39,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:09:39,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:09:39,336.336 INFO    ] No camera update needed
[2026-06-19 04:09:39,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:09:39,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:09:39,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:09:39,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:09:41,392.392 INFO    ] ================================================
[2026-06-19 04:09:41,407.407 INFO    ] Launching Daemon at Fri Jun 19 04:09:41 IST 2026
[2026-06-19 04:09:41,417.417 INFO    ] ================================================
[2026-06-19 04:09:42,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:09:42
[2026-06-19 04:09:42,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:09:43,071.071 INFO    ] Initializing speech engine...
[2026-06-19 04:09:43,083.083 INFO    ] 2026-06-19 04:09:43
[2026-06-19 04:09:43,370.370 INFO    ] 2026-06-19 04:09:43
[2026-06-19 04:09:43,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:09:43,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:09:43,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:09:43,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:09:43,822.822 INFO    ] time= 19/06/2026 04:09:43
[2026-06-19 04:09:43,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:09:43,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:09:44,029.029 INFO    ] No existing commands found in stream
[2026-06-19 04:09:49,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:09:49,069.069 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 04:09:53,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:09:53,357.357 INFO    ] Checking for system updates...
[2026-06-19 04:09:53,394.394 INFO    ] 200
[2026-06-19 04:09:53,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:53,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:09:53,455.455 INFO    ] No update needed
[2026-06-19 04:09:53,458.458 INFO    ] Checking for camera pi updates...
[2026-06-19 04:09:53,492.492 INFO    ] 200
[2026-06-19 04:09:53,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:09:53,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:09:53,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:09:53,594.594 INFO    ] No camera update needed
[2026-06-19 04:09:53,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:09:53,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:09:53,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:09:53,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:09:55,654.654 INFO    ] ================================================
[2026-06-19 04:09:55,669.669 INFO    ] Launching Daemon at Fri Jun 19 04:09:55 IST 2026
[2026-06-19 04:09:55,680.680 INFO    ] ================================================
[2026-06-19 04:09:56,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:09:56
[2026-06-19 04:09:56,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:09:57,108.108 INFO    ] Initializing speech engine...
[2026-06-19 04:09:57,117.117 INFO    ] 2026-06-19 04:09:57
[2026-06-19 04:09:57,366.366 INFO    ] 2026-06-19 04:09:57
[2026-06-19 04:09:57,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:09:57,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:09:57,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:09:57,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:09:57,709.709 INFO    ] time= 19/06/2026 04:09:57
[2026-06-19 04:09:57,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:09:57,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:09:57,820.820 INFO    ] No existing commands found in stream
[2026-06-19 04:10:02,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:10:02,837.837 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 04:10:08,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:10:08,197.197 INFO    ] Checking for system updates...
[2026-06-19 04:10:08,236.236 INFO    ] 200
[2026-06-19 04:10:08,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:08,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:10:08,294.294 INFO    ] No update needed
[2026-06-19 04:10:08,296.296 INFO    ] Checking for camera pi updates...
[2026-06-19 04:10:08,333.333 INFO    ] 200
[2026-06-19 04:10:08,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:08,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:10:08,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:10:08,528.528 INFO    ] No camera update needed
[2026-06-19 04:10:08,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:10:08,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:10:08,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:10:08,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:10:10,584.584 INFO    ] ================================================
[2026-06-19 04:10:10,599.599 INFO    ] Launching Daemon at Fri Jun 19 04:10:10 IST 2026
[2026-06-19 04:10:10,610.610 INFO    ] ================================================
[2026-06-19 04:10:11,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:10:11
[2026-06-19 04:10:11,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:10:12,207.207 INFO    ] Initializing speech engine...
[2026-06-19 04:10:12,221.221 INFO    ] 2026-06-19 04:10:12
[2026-06-19 04:10:12,501.501 INFO    ] 2026-06-19 04:10:12
[2026-06-19 04:10:12,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:10:12,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:10:12,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:10:12,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:10:12,984.984 INFO    ] time= 19/06/2026 04:10:12
[2026-06-19 04:10:13,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:10:13,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:10:13,116.116 INFO    ] No existing commands found in stream
[2026-06-19 04:10:18,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:10:18,132.132 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 04:10:22,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:10:22,391.391 INFO    ] Checking for system updates...
[2026-06-19 04:10:22,433.433 INFO    ] 200
[2026-06-19 04:10:22,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:22,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:10:22,494.494 INFO    ] No update needed
[2026-06-19 04:10:22,497.497 INFO    ] Checking for camera pi updates...
[2026-06-19 04:10:22,533.533 INFO    ] 200
[2026-06-19 04:10:22,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:22,578.578 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:10:22,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:10:22,621.621 INFO    ] No camera update needed
[2026-06-19 04:10:22,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:10:22,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:10:22,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:10:22,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:10:24,681.681 INFO    ] ================================================
[2026-06-19 04:10:24,704.704 INFO    ] Launching Daemon at Fri Jun 19 04:10:24 IST 2026
[2026-06-19 04:10:24,714.714 INFO    ] ================================================
[2026-06-19 04:10:25,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:10:25
[2026-06-19 04:10:25,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:10:26,163.163 INFO    ] Initializing speech engine...
[2026-06-19 04:10:26,172.172 INFO    ] 2026-06-19 04:10:26
[2026-06-19 04:10:26,424.424 INFO    ] 2026-06-19 04:10:26
[2026-06-19 04:10:26,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:10:26,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:10:26,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:10:26,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:10:26,805.805 INFO    ] time= 19/06/2026 04:10:26
[2026-06-19 04:10:26,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:10:26,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:10:26,986.986 INFO    ] No existing commands found in stream
[2026-06-19 04:10:32,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:10:32,020.020 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 04:10:33,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:10:33,727.727 INFO    ] Checking for system updates...
[2026-06-19 04:10:33,763.763 INFO    ] 200
[2026-06-19 04:10:33,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:33,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:10:33,831.831 INFO    ] No update needed
[2026-06-19 04:10:33,834.834 INFO    ] Checking for camera pi updates...
[2026-06-19 04:10:33,868.868 INFO    ] 200
[2026-06-19 04:10:33,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:33,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:10:33,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:10:33,964.964 INFO    ] No camera update needed
[2026-06-19 04:10:33,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:10:33,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:10:33,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:10:33,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:10:36,022.022 INFO    ] ================================================
[2026-06-19 04:10:36,040.040 INFO    ] Launching Daemon at Fri Jun 19 04:10:36 IST 2026
[2026-06-19 04:10:36,050.050 INFO    ] ================================================
[2026-06-19 04:10:36,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:10:36
[2026-06-19 04:10:37,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:10:37,666.666 INFO    ] Initializing speech engine...
[2026-06-19 04:10:37,672.672 INFO    ] 2026-06-19 04:10:37
[2026-06-19 04:10:37,960.960 INFO    ] 2026-06-19 04:10:37
[2026-06-19 04:10:38,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:10:38,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:10:38,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:10:38,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:10:38,435.435 INFO    ] time= 19/06/2026 04:10:38
[2026-06-19 04:10:38,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:10:38,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:10:38,560.560 INFO    ] No existing commands found in stream
[2026-06-19 04:10:43,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:10:43,577.577 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 04:10:47,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:10:47,451.451 INFO    ] Checking for system updates...
[2026-06-19 04:10:47,491.491 INFO    ] 200
[2026-06-19 04:10:47,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:47,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:10:47,561.561 INFO    ] No update needed
[2026-06-19 04:10:47,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 04:10:47,600.600 INFO    ] 200
[2026-06-19 04:10:47,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:47,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:10:47,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:10:47,677.677 INFO    ] No camera update needed
[2026-06-19 04:10:47,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:10:47,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:10:47,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:10:47,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:10:49,733.733 INFO    ] ================================================
[2026-06-19 04:10:49,749.749 INFO    ] Launching Daemon at Fri Jun 19 04:10:49 IST 2026
[2026-06-19 04:10:49,759.759 INFO    ] ================================================
[2026-06-19 04:10:50,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:10:50
[2026-06-19 04:10:51,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:10:51,345.345 INFO    ] Initializing speech engine...
[2026-06-19 04:10:51,359.359 INFO    ] 2026-06-19 04:10:51
[2026-06-19 04:10:51,671.671 INFO    ] 2026-06-19 04:10:51
[2026-06-19 04:10:51,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:10:51,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:10:51,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:10:52,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:10:52,087.087 INFO    ] time= 19/06/2026 04:10:52
[2026-06-19 04:10:52,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:10:52,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:10:52,266.266 INFO    ] No existing commands found in stream
[2026-06-19 04:10:57,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:10:57,311.311 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 04:10:59,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:10:59,435.435 INFO    ] Checking for system updates...
[2026-06-19 04:10:59,472.472 INFO    ] 200
[2026-06-19 04:10:59,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:59,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:10:59,531.531 INFO    ] No update needed
[2026-06-19 04:10:59,534.534 INFO    ] Checking for camera pi updates...
[2026-06-19 04:10:59,570.570 INFO    ] 200
[2026-06-19 04:10:59,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:10:59,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:10:59,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:10:59,660.660 INFO    ] No camera update needed
[2026-06-19 04:10:59,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:10:59,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:10:59,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:10:59,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:11:01,721.721 INFO    ] ================================================
[2026-06-19 04:11:01,743.743 INFO    ] Launching Daemon at Fri Jun 19 04:11:01 IST 2026
[2026-06-19 04:11:01,760.760 INFO    ] ================================================
[2026-06-19 04:11:02,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:11:02
[2026-06-19 04:11:03,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:11:03,360.360 INFO    ] Initializing speech engine...
[2026-06-19 04:11:03,369.369 INFO    ] 2026-06-19 04:11:03
[2026-06-19 04:11:03,628.628 INFO    ] 2026-06-19 04:11:03
[2026-06-19 04:11:03,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:11:03,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:11:03,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:11:04,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:11:04,103.103 INFO    ] time= 19/06/2026 04:11:04
[2026-06-19 04:11:04,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:11:04,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:11:04,306.306 INFO    ] No existing commands found in stream
[2026-06-19 04:11:09,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:11:09,339.339 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 04:11:10,691.691 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:11:10,694.694 INFO    ] Checking for system updates...
[2026-06-19 04:11:10,732.732 INFO    ] 200
[2026-06-19 04:11:10,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:10,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:11:10,790.790 INFO    ] No update needed
[2026-06-19 04:11:10,793.793 INFO    ] Checking for camera pi updates...
[2026-06-19 04:11:10,833.833 INFO    ] 200
[2026-06-19 04:11:10,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:10,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:11:10,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:11:10,927.927 INFO    ] No camera update needed
[2026-06-19 04:11:10,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:11:10,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:11:10,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:11:10,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:11:12,981.981 INFO    ] ================================================
[2026-06-19 04:11:13,997.997 INFO    ] Launching Daemon at Fri Jun 19 04:11:12 IST 2026
[2026-06-19 04:11:13,007.007 INFO    ] ================================================
[2026-06-19 04:11:13,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:11:13
[2026-06-19 04:11:14,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:11:14,567.567 INFO    ] Initializing speech engine...
[2026-06-19 04:11:14,575.575 INFO    ] 2026-06-19 04:11:14
[2026-06-19 04:11:14,855.855 INFO    ] 2026-06-19 04:11:14
[2026-06-19 04:11:14,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:11:15,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:11:15,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:11:15,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:11:15,286.286 INFO    ] time= 19/06/2026 04:11:15
[2026-06-19 04:11:15,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:11:15,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:11:15,454.454 INFO    ] No existing commands found in stream
[2026-06-19 04:11:20,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:11:20,470.470 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 04:11:22,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:11:22,866.866 INFO    ] Checking for system updates...
[2026-06-19 04:11:22,902.902 INFO    ] 200
[2026-06-19 04:11:22,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:22,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:11:22,961.961 INFO    ] No update needed
[2026-06-19 04:11:22,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 04:11:22,998.998 INFO    ] 200
[2026-06-19 04:11:23,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:23,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:11:23,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:11:23,088.088 INFO    ] No camera update needed
[2026-06-19 04:11:23,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:11:23,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:11:23,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:11:23,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:11:25,147.147 INFO    ] ================================================
[2026-06-19 04:11:25,162.162 INFO    ] Launching Daemon at Fri Jun 19 04:11:25 IST 2026
[2026-06-19 04:11:25,173.173 INFO    ] ================================================
[2026-06-19 04:11:25,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:11:25
[2026-06-19 04:11:26,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:11:26,597.597 INFO    ] Initializing speech engine...
[2026-06-19 04:11:26,606.606 INFO    ] 2026-06-19 04:11:26
[2026-06-19 04:11:26,900.900 INFO    ] 2026-06-19 04:11:26
[2026-06-19 04:11:26,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:11:27,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:11:27,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:11:27,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:11:27,235.235 INFO    ] time= 19/06/2026 04:11:27
[2026-06-19 04:11:27,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:11:27,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:11:27,319.319 INFO    ] No existing commands found in stream
[2026-06-19 04:11:32,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:11:32,331.331 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 04:11:34,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:11:34,556.556 INFO    ] Checking for system updates...
[2026-06-19 04:11:34,592.592 INFO    ] 200
[2026-06-19 04:11:34,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:34,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:11:34,652.652 INFO    ] No update needed
[2026-06-19 04:11:34,654.654 INFO    ] Checking for camera pi updates...
[2026-06-19 04:11:34,689.689 INFO    ] 200
[2026-06-19 04:11:34,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:34,731.731 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:11:34,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:11:34,782.782 INFO    ] No camera update needed
[2026-06-19 04:11:34,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:11:34,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:11:34,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:11:34,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:11:36,839.839 INFO    ] ================================================
[2026-06-19 04:11:36,855.855 INFO    ] Launching Daemon at Fri Jun 19 04:11:36 IST 2026
[2026-06-19 04:11:36,867.867 INFO    ] ================================================
[2026-06-19 04:11:37,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:11:37
[2026-06-19 04:11:38,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:11:38,280.280 INFO    ] Initializing speech engine...
[2026-06-19 04:11:38,305.305 INFO    ] 2026-06-19 04:11:38
[2026-06-19 04:11:38,571.571 INFO    ] 2026-06-19 04:11:38
[2026-06-19 04:11:38,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:11:38,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:11:38,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:11:38,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:11:38,937.937 INFO    ] time= 19/06/2026 04:11:38
[2026-06-19 04:11:38,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:11:38,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:11:39,057.057 INFO    ] No existing commands found in stream
[2026-06-19 04:11:44,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:11:44,069.069 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 04:11:45,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:11:45,422.422 INFO    ] Checking for system updates...
[2026-06-19 04:11:45,468.468 INFO    ] 200
[2026-06-19 04:11:45,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:45,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:11:45,530.530 INFO    ] No update needed
[2026-06-19 04:11:45,532.532 INFO    ] Checking for camera pi updates...
[2026-06-19 04:11:45,566.566 INFO    ] 200
[2026-06-19 04:11:45,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:45,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:11:45,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:11:45,658.658 INFO    ] No camera update needed
[2026-06-19 04:11:45,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:11:45,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:11:45,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:11:45,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:11:47,713.713 INFO    ] ================================================
[2026-06-19 04:11:47,729.729 INFO    ] Launching Daemon at Fri Jun 19 04:11:47 IST 2026
[2026-06-19 04:11:47,740.740 INFO    ] ================================================
[2026-06-19 04:11:48,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:11:48
[2026-06-19 04:11:48,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:11:49,149.149 INFO    ] Initializing speech engine...
[2026-06-19 04:11:49,162.162 INFO    ] 2026-06-19 04:11:49
[2026-06-19 04:11:49,440.440 INFO    ] 2026-06-19 04:11:49
[2026-06-19 04:11:49,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:11:49,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:11:49,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:11:49,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:11:49,840.840 INFO    ] time= 19/06/2026 04:11:49
[2026-06-19 04:11:49,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:11:49,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:11:50,002.002 INFO    ] No existing commands found in stream
[2026-06-19 04:11:55,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:11:55,031.031 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 04:11:55,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:11:55,862.862 INFO    ] Checking for system updates...
[2026-06-19 04:11:55,898.898 INFO    ] 200
[2026-06-19 04:11:55,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:55,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:11:55,955.955 INFO    ] No update needed
[2026-06-19 04:11:55,957.957 INFO    ] Checking for camera pi updates...
[2026-06-19 04:11:55,990.990 INFO    ] 200
[2026-06-19 04:11:55,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:11:56,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:11:56,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:11:56,089.089 INFO    ] No camera update needed
[2026-06-19 04:11:56,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:11:56,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:11:56,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:11:56,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:11:58,146.146 INFO    ] ================================================
[2026-06-19 04:11:58,162.162 INFO    ] Launching Daemon at Fri Jun 19 04:11:58 IST 2026
[2026-06-19 04:11:58,173.173 INFO    ] ================================================
[2026-06-19 04:11:58,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:11:58
[2026-06-19 04:11:59,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:11:59,597.597 INFO    ] Initializing speech engine...
[2026-06-19 04:11:59,605.605 INFO    ] 2026-06-19 04:11:59
[2026-06-19 04:11:59,852.852 INFO    ] 2026-06-19 04:11:59
[2026-06-19 04:11:59,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:12:00,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:12:00,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:12:00,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:12:00,327.327 INFO    ] time= 19/06/2026 04:12:00
[2026-06-19 04:12:00,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:12:00,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:12:00,463.463 INFO    ] No existing commands found in stream
[2026-06-19 04:12:05,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:12:05,478.478 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 04:12:07,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:12:07,464.464 INFO    ] Checking for system updates...
[2026-06-19 04:12:07,500.500 INFO    ] 200
[2026-06-19 04:12:07,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:07,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:12:07,558.558 INFO    ] No update needed
[2026-06-19 04:12:07,560.560 INFO    ] Checking for camera pi updates...
[2026-06-19 04:12:07,597.597 INFO    ] 200
[2026-06-19 04:12:07,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:07,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:12:07,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:12:07,687.687 INFO    ] No camera update needed
[2026-06-19 04:12:07,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:12:07,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:12:07,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:12:07,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:12:09,743.743 INFO    ] ================================================
[2026-06-19 04:12:09,762.762 INFO    ] Launching Daemon at Fri Jun 19 04:12:09 IST 2026
[2026-06-19 04:12:09,773.773 INFO    ] ================================================
[2026-06-19 04:12:10,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:12:10
[2026-06-19 04:12:10,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:12:11,206.206 INFO    ] Initializing speech engine...
[2026-06-19 04:12:11,212.212 INFO    ] 2026-06-19 04:12:11
[2026-06-19 04:12:11,459.459 INFO    ] 2026-06-19 04:12:11
[2026-06-19 04:12:11,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:12:11,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:12:11,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:12:11,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:12:11,930.930 INFO    ] time= 19/06/2026 04:12:11
[2026-06-19 04:12:11,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:12:12,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:12:12,076.076 INFO    ] No existing commands found in stream
[2026-06-19 04:12:17,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:12:17,090.090 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 04:12:19,764.764 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:12:19,767.767 INFO    ] Checking for system updates...
[2026-06-19 04:12:19,806.806 INFO    ] 200
[2026-06-19 04:12:19,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:19,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:12:19,863.863 INFO    ] No update needed
[2026-06-19 04:12:19,866.866 INFO    ] Checking for camera pi updates...
[2026-06-19 04:12:19,903.903 INFO    ] 200
[2026-06-19 04:12:19,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:19,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:12:20,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:12:20,094.094 INFO    ] No camera update needed
[2026-06-19 04:12:20,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:12:20,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:12:20,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:12:20,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:12:22,151.151 INFO    ] ================================================
[2026-06-19 04:12:22,166.166 INFO    ] Launching Daemon at Fri Jun 19 04:12:22 IST 2026
[2026-06-19 04:12:22,176.176 INFO    ] ================================================
[2026-06-19 04:12:22,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:12:22
[2026-06-19 04:12:23,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:12:23,765.765 INFO    ] Initializing speech engine...
[2026-06-19 04:12:23,774.774 INFO    ] 2026-06-19 04:12:23
[2026-06-19 04:12:24,051.051 INFO    ] 2026-06-19 04:12:24
[2026-06-19 04:12:24,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:12:24,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:12:24,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:12:24,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:12:24,518.518 INFO    ] time= 19/06/2026 04:12:24
[2026-06-19 04:12:24,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:12:24,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:12:24,671.671 INFO    ] No existing commands found in stream
[2026-06-19 04:12:29,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:12:29,691.691 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 04:12:31,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:12:31,718.718 INFO    ] Checking for system updates...
[2026-06-19 04:12:31,760.760 INFO    ] 200
[2026-06-19 04:12:31,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:31,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:12:31,831.831 INFO    ] No update needed
[2026-06-19 04:12:31,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 04:12:31,873.873 INFO    ] 200
[2026-06-19 04:12:31,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:31,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:12:31,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:12:31,960.960 INFO    ] No camera update needed
[2026-06-19 04:12:31,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:12:31,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:12:31,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:12:31,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:12:34,021.021 INFO    ] ================================================
[2026-06-19 04:12:34,036.036 INFO    ] Launching Daemon at Fri Jun 19 04:12:34 IST 2026
[2026-06-19 04:12:34,047.047 INFO    ] ================================================
[2026-06-19 04:12:34,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:12:34
[2026-06-19 04:12:35,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:12:35,584.584 INFO    ] Initializing speech engine...
[2026-06-19 04:12:35,592.592 INFO    ] 2026-06-19 04:12:35
[2026-06-19 04:12:35,903.903 INFO    ] 2026-06-19 04:12:35
[2026-06-19 04:12:35,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:12:36,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:12:36,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:12:36,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:12:36,407.407 INFO    ] time= 19/06/2026 04:12:36
[2026-06-19 04:12:36,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:12:36,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:12:36,549.549 INFO    ] No existing commands found in stream
[2026-06-19 04:12:41,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:12:41,570.570 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 04:12:45,439.439 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:12:45,441.441 INFO    ] Checking for system updates...
[2026-06-19 04:12:45,477.477 INFO    ] 200
[2026-06-19 04:12:45,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:45,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:12:45,535.535 INFO    ] No update needed
[2026-06-19 04:12:45,538.538 INFO    ] Checking for camera pi updates...
[2026-06-19 04:12:45,572.572 INFO    ] 200
[2026-06-19 04:12:45,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:45,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:12:45,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:12:45,662.662 INFO    ] No camera update needed
[2026-06-19 04:12:45,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:12:45,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:12:45,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:12:45,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:12:47,719.719 INFO    ] ================================================
[2026-06-19 04:12:47,734.734 INFO    ] Launching Daemon at Fri Jun 19 04:12:47 IST 2026
[2026-06-19 04:12:47,744.744 INFO    ] ================================================
[2026-06-19 04:12:48,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:12:48
[2026-06-19 04:12:48,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:12:49,185.185 INFO    ] Initializing speech engine...
[2026-06-19 04:12:49,191.191 INFO    ] 2026-06-19 04:12:49
[2026-06-19 04:12:49,443.443 INFO    ] 2026-06-19 04:12:49
[2026-06-19 04:12:49,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:12:49,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:12:49,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:12:49,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:12:49,821.821 INFO    ] time= 19/06/2026 04:12:49
[2026-06-19 04:12:49,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:12:49,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:12:49,990.990 INFO    ] No existing commands found in stream
[2026-06-19 04:12:55,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:12:55,018.018 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 04:12:58,923.923 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:12:58,925.925 INFO    ] Checking for system updates...
[2026-06-19 04:12:58,962.962 INFO    ] 200
[2026-06-19 04:12:58,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:59,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:12:59,026.026 INFO    ] No update needed
[2026-06-19 04:12:59,028.028 INFO    ] Checking for camera pi updates...
[2026-06-19 04:12:59,062.062 INFO    ] 200
[2026-06-19 04:12:59,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:12:59,110.110 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:12:59,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:12:59,161.161 INFO    ] No camera update needed
[2026-06-19 04:12:59,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:12:59,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:12:59,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:12:59,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:13:01,219.219 INFO    ] ================================================
[2026-06-19 04:13:01,234.234 INFO    ] Launching Daemon at Fri Jun 19 04:13:01 IST 2026
[2026-06-19 04:13:01,244.244 INFO    ] ================================================
[2026-06-19 04:13:01,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:13:01
[2026-06-19 04:13:02,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:13:02,960.960 INFO    ] Initializing speech engine...
[2026-06-19 04:13:02,964.964 INFO    ] 2026-06-19 04:13:02
[2026-06-19 04:13:03,316.316 INFO    ] 2026-06-19 04:13:03
[2026-06-19 04:13:03,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:13:03,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:13:03,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:13:03,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:13:03,732.732 INFO    ] time= 19/06/2026 04:13:03
[2026-06-19 04:13:03,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:13:03,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:13:03,877.877 INFO    ] No existing commands found in stream
[2026-06-19 04:13:08,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:13:08,901.901 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 04:13:12,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:13:12,807.807 INFO    ] Checking for system updates...
[2026-06-19 04:13:12,842.842 INFO    ] 200
[2026-06-19 04:13:12,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:13:12,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:13:12,901.901 INFO    ] No update needed
[2026-06-19 04:13:12,903.903 INFO    ] Checking for camera pi updates...
[2026-06-19 04:13:12,937.937 INFO    ] 200
[2026-06-19 04:13:12,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:13:12,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:13:13,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:13:13,032.032 INFO    ] No camera update needed
[2026-06-19 04:13:13,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:13:13,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:13:13,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:13:13,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:13:15,092.092 INFO    ] ================================================
[2026-06-19 04:13:15,108.108 INFO    ] Launching Daemon at Fri Jun 19 04:13:15 IST 2026
[2026-06-19 04:13:15,120.120 INFO    ] ================================================
[2026-06-19 04:13:15,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:13:15
[2026-06-19 04:13:16,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:13:16,613.613 INFO    ] Initializing speech engine...
[2026-06-19 04:13:16,622.622 INFO    ] 2026-06-19 04:13:16
[2026-06-19 04:13:16,897.897 INFO    ] 2026-06-19 04:13:16
[2026-06-19 04:13:16,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:13:17,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:13:17,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:13:17,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:13:17,278.278 INFO    ] time= 19/06/2026 04:13:17
[2026-06-19 04:13:17,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:13:17,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:13:17,462.462 INFO    ] No existing commands found in stream
[2026-06-19 04:13:22,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:13:22,492.492 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 04:13:26,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:13:26,173.173 INFO    ] Checking for system updates...
[2026-06-19 04:13:26,209.209 INFO    ] 200
[2026-06-19 04:13:26,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:13:26,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:13:26,273.273 INFO    ] No update needed
[2026-06-19 04:13:26,276.276 INFO    ] Checking for camera pi updates...
[2026-06-19 04:13:26,310.310 INFO    ] 200
[2026-06-19 04:13:26,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:13:26,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:13:26,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:13:26,407.407 INFO    ] No camera update needed
[2026-06-19 04:13:26,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:13:26,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:13:26,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:13:26,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:13:28,469.469 INFO    ] ================================================
[2026-06-19 04:13:28,484.484 INFO    ] Launching Daemon at Fri Jun 19 04:13:28 IST 2026
[2026-06-19 04:13:28,495.495 INFO    ] ================================================
[2026-06-19 04:13:29,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:13:29
[2026-06-19 04:13:29,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:13:29,954.954 INFO    ] Initializing speech engine...
[2026-06-19 04:13:29,963.963 INFO    ] 2026-06-19 04:13:29
[2026-06-19 04:13:30,227.227 INFO    ] 2026-06-19 04:13:30
[2026-06-19 04:13:30,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:13:30,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:13:30,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:13:30,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:13:30,707.707 INFO    ] time= 19/06/2026 04:13:30
[2026-06-19 04:13:30,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:13:30,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:13:30,894.894 INFO    ] No existing commands found in stream
[2026-06-19 04:13:35,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:13:35,931.931 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 04:13:38,874.874 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:13:38,877.877 INFO    ] Checking for system updates...
[2026-06-19 04:13:38,913.913 INFO    ] 200
[2026-06-19 04:13:38,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:13:38,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:13:38,972.972 INFO    ] No update needed
[2026-06-19 04:13:38,974.974 INFO    ] Checking for camera pi updates...
[2026-06-19 04:13:39,008.008 INFO    ] 200
[2026-06-19 04:13:39,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:13:39,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:13:39,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:13:39,097.097 INFO    ] No camera update needed
[2026-06-19 04:13:39,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:13:39,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:13:39,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:13:39,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:13:41,152.152 INFO    ] ================================================
[2026-06-19 04:13:41,167.167 INFO    ] Launching Daemon at Fri Jun 19 04:13:41 IST 2026
[2026-06-19 04:13:41,178.178 INFO    ] ================================================
[2026-06-19 04:13:41,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:13:41
[2026-06-19 04:13:42,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:13:42,601.601 INFO    ] Initializing speech engine...
[2026-06-19 04:13:42,610.610 INFO    ] 2026-06-19 04:13:42
[2026-06-19 04:13:42,858.858 INFO    ] 2026-06-19 04:13:42
[2026-06-19 04:13:42,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:13:43,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:13:43,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:13:43,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:13:43,329.329 INFO    ] time= 19/06/2026 04:13:43
[2026-06-19 04:13:43,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:13:43,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:13:43,474.474 INFO    ] No existing commands found in stream
[2026-06-19 04:13:48,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:13:48,489.489 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 04:13:52,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:13:52,661.661 INFO    ] Checking for system updates...
[2026-06-19 04:13:52,701.701 INFO    ] 200
[2026-06-19 04:13:52,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:13:52,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:13:52,758.758 INFO    ] No update needed
[2026-06-19 04:13:52,761.761 INFO    ] Checking for camera pi updates...
[2026-06-19 04:13:52,796.796 INFO    ] 200
[2026-06-19 04:13:52,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:13:52,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:13:52,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:13:52,890.890 INFO    ] No camera update needed
[2026-06-19 04:13:52,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:13:52,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:13:52,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:13:52,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:13:54,948.948 INFO    ] ================================================
[2026-06-19 04:13:54,964.964 INFO    ] Launching Daemon at Fri Jun 19 04:13:54 IST 2026
[2026-06-19 04:13:54,975.975 INFO    ] ================================================
[2026-06-19 04:13:55,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:13:55
[2026-06-19 04:13:56,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:13:56,386.386 INFO    ] Initializing speech engine...
[2026-06-19 04:13:56,400.400 INFO    ] 2026-06-19 04:13:56
[2026-06-19 04:13:56,665.665 INFO    ] 2026-06-19 04:13:56
[2026-06-19 04:13:56,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:13:56,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:13:56,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:13:57,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:13:57,037.037 INFO    ] time= 19/06/2026 04:13:57
[2026-06-19 04:13:57,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:13:57,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:13:57,114.114 INFO    ] No existing commands found in stream
[2026-06-19 04:14:02,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:14:02,147.147 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 04:14:06,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:14:06,172.172 INFO    ] Checking for system updates...
[2026-06-19 04:14:06,214.214 INFO    ] 200
[2026-06-19 04:14:06,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:06,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:14:06,271.271 INFO    ] No update needed
[2026-06-19 04:14:06,274.274 INFO    ] Checking for camera pi updates...
[2026-06-19 04:14:06,311.311 INFO    ] 200
[2026-06-19 04:14:06,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:06,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:14:06,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:14:06,402.402 INFO    ] No camera update needed
[2026-06-19 04:14:06,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:14:06,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:14:06,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:14:06,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:14:08,460.460 INFO    ] ================================================
[2026-06-19 04:14:08,477.477 INFO    ] Launching Daemon at Fri Jun 19 04:14:08 IST 2026
[2026-06-19 04:14:08,488.488 INFO    ] ================================================
[2026-06-19 04:14:09,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:14:09
[2026-06-19 04:14:09,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:14:09,915.915 INFO    ] Initializing speech engine...
[2026-06-19 04:14:09,923.923 INFO    ] 2026-06-19 04:14:09
[2026-06-19 04:14:10,180.180 INFO    ] 2026-06-19 04:14:10
[2026-06-19 04:14:10,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:14:10,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:14:10,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:14:10,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:14:10,667.667 INFO    ] time= 19/06/2026 04:14:10
[2026-06-19 04:14:10,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:14:10,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:14:10,845.845 INFO    ] No existing commands found in stream
[2026-06-19 04:14:15,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:14:15,870.870 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 04:14:17,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:14:17,389.389 INFO    ] Checking for system updates...
[2026-06-19 04:14:17,425.425 INFO    ] 200
[2026-06-19 04:14:17,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:17,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:14:17,486.486 INFO    ] No update needed
[2026-06-19 04:14:17,489.489 INFO    ] Checking for camera pi updates...
[2026-06-19 04:14:17,527.527 INFO    ] 200
[2026-06-19 04:14:17,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:17,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:14:17,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:14:17,616.616 INFO    ] No camera update needed
[2026-06-19 04:14:17,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:14:17,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:14:17,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:14:17,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:14:19,677.677 INFO    ] ================================================
[2026-06-19 04:14:19,692.692 INFO    ] Launching Daemon at Fri Jun 19 04:14:19 IST 2026
[2026-06-19 04:14:19,704.704 INFO    ] ================================================
[2026-06-19 04:14:20,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:14:20
[2026-06-19 04:14:21,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:14:21,346.346 INFO    ] Initializing speech engine...
[2026-06-19 04:14:21,361.361 INFO    ] 2026-06-19 04:14:21
[2026-06-19 04:14:21,667.667 INFO    ] 2026-06-19 04:14:21
[2026-06-19 04:14:21,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:14:21,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:14:21,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:14:22,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:14:22,175.175 INFO    ] time= 19/06/2026 04:14:22
[2026-06-19 04:14:22,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:14:22,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:14:22,331.331 INFO    ] No existing commands found in stream
[2026-06-19 04:14:27,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:14:27,347.347 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 04:14:30,763.763 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:14:30,766.766 INFO    ] Checking for system updates...
[2026-06-19 04:14:30,807.807 INFO    ] 200
[2026-06-19 04:14:30,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:30,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:14:30,866.866 INFO    ] No update needed
[2026-06-19 04:14:30,868.868 INFO    ] Checking for camera pi updates...
[2026-06-19 04:14:30,903.903 INFO    ] 200
[2026-06-19 04:14:30,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:30,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:14:31,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:14:31,094.094 INFO    ] No camera update needed
[2026-06-19 04:14:31,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:14:31,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:14:31,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:14:31,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:14:33,152.152 INFO    ] ================================================
[2026-06-19 04:14:33,168.168 INFO    ] Launching Daemon at Fri Jun 19 04:14:33 IST 2026
[2026-06-19 04:14:33,180.180 INFO    ] ================================================
[2026-06-19 04:14:33,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:14:33
[2026-06-19 04:14:34,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:14:34,621.621 INFO    ] Initializing speech engine...
[2026-06-19 04:14:34,630.630 INFO    ] 2026-06-19 04:14:34
[2026-06-19 04:14:34,898.898 INFO    ] 2026-06-19 04:14:34
[2026-06-19 04:14:34,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:14:35,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:14:35,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:14:35,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:14:35,248.248 INFO    ] time= 19/06/2026 04:14:35
[2026-06-19 04:14:35,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:14:35,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:14:35,310.310 INFO    ] No existing commands found in stream
[2026-06-19 04:14:40,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:14:40,332.332 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 04:14:41,261.261 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:14:41,264.264 INFO    ] Checking for system updates...
[2026-06-19 04:14:41,301.301 INFO    ] 200
[2026-06-19 04:14:41,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:41,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:14:41,367.367 INFO    ] No update needed
[2026-06-19 04:14:41,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 04:14:41,403.403 INFO    ] 200
[2026-06-19 04:14:41,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:41,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:14:41,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:14:41,498.498 INFO    ] No camera update needed
[2026-06-19 04:14:41,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:14:41,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:14:41,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:14:41,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:14:43,555.555 INFO    ] ================================================
[2026-06-19 04:14:43,571.571 INFO    ] Launching Daemon at Fri Jun 19 04:14:43 IST 2026
[2026-06-19 04:14:43,583.583 INFO    ] ================================================
[2026-06-19 04:14:44,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:14:44
[2026-06-19 04:14:44,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:14:44,982.982 INFO    ] Initializing speech engine...
[2026-06-19 04:14:44,990.990 INFO    ] 2026-06-19 04:14:44
[2026-06-19 04:14:45,264.264 INFO    ] 2026-06-19 04:14:45
[2026-06-19 04:14:45,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:14:45,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:14:45,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:14:45,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:14:45,649.649 INFO    ] time= 19/06/2026 04:14:45
[2026-06-19 04:14:45,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:14:45,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:14:45,728.728 INFO    ] No existing commands found in stream
[2026-06-19 04:14:50,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:14:50,741.741 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 04:14:51,590.590 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:14:51,592.592 INFO    ] Checking for system updates...
[2026-06-19 04:14:51,628.628 INFO    ] 200
[2026-06-19 04:14:51,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:51,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:14:51,693.693 INFO    ] No update needed
[2026-06-19 04:14:51,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 04:14:51,729.729 INFO    ] 200
[2026-06-19 04:14:51,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:14:51,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:14:51,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:14:51,810.810 INFO    ] No camera update needed
[2026-06-19 04:14:51,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:14:51,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:14:51,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:14:51,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:14:53,867.867 INFO    ] ================================================
[2026-06-19 04:14:53,882.882 INFO    ] Launching Daemon at Fri Jun 19 04:14:53 IST 2026
[2026-06-19 04:14:53,893.893 INFO    ] ================================================
[2026-06-19 04:14:54,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:14:54
[2026-06-19 04:14:55,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:14:55,311.311 INFO    ] Initializing speech engine...
[2026-06-19 04:14:55,320.320 INFO    ] 2026-06-19 04:14:55
[2026-06-19 04:14:55,615.615 INFO    ] 2026-06-19 04:14:55
[2026-06-19 04:14:55,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:14:55,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:14:55,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:14:55,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:14:55,985.985 INFO    ] time= 19/06/2026 04:14:55
[2026-06-19 04:14:56,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:14:56,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:14:56,099.099 INFO    ] No existing commands found in stream
[2026-06-19 04:15:01,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:15:01,118.118 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 04:15:02,537.537 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:15:02,540.540 INFO    ] Checking for system updates...
[2026-06-19 04:15:02,592.592 INFO    ] 200
[2026-06-19 04:15:02,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:02,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:15:02,671.671 INFO    ] No update needed
[2026-06-19 04:15:02,674.674 INFO    ] Checking for camera pi updates...
[2026-06-19 04:15:02,715.715 INFO    ] 200
[2026-06-19 04:15:02,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:02,774.774 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:15:02,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:15:02,811.811 INFO    ] No camera update needed
[2026-06-19 04:15:02,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:15:02,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:15:02,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:15:02,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:15:04,870.870 INFO    ] ================================================
[2026-06-19 04:15:04,886.886 INFO    ] Launching Daemon at Fri Jun 19 04:15:04 IST 2026
[2026-06-19 04:15:04,897.897 INFO    ] ================================================
[2026-06-19 04:15:05,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:15:05
[2026-06-19 04:15:06,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:15:06,344.344 INFO    ] Initializing speech engine...
[2026-06-19 04:15:06,363.363 INFO    ] 2026-06-19 04:15:06
[2026-06-19 04:15:06,661.661 INFO    ] 2026-06-19 04:15:06
[2026-06-19 04:15:06,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:15:06,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:15:06,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:15:07,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:15:07,129.129 INFO    ] time= 19/06/2026 04:15:07
[2026-06-19 04:15:07,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:15:07,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:15:07,274.274 INFO    ] No existing commands found in stream
[2026-06-19 04:15:12,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:15:12,290.290 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 04:15:14,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:15:14,223.223 INFO    ] Checking for system updates...
[2026-06-19 04:15:14,259.259 INFO    ] 200
[2026-06-19 04:15:14,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:14,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:15:14,322.322 INFO    ] No update needed
[2026-06-19 04:15:14,325.325 INFO    ] Checking for camera pi updates...
[2026-06-19 04:15:14,361.361 INFO    ] 200
[2026-06-19 04:15:14,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:14,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:15:14,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:15:14,459.459 INFO    ] No camera update needed
[2026-06-19 04:15:14,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:15:14,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:15:14,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:15:14,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:15:16,514.514 INFO    ] ================================================
[2026-06-19 04:15:16,529.529 INFO    ] Launching Daemon at Fri Jun 19 04:15:16 IST 2026
[2026-06-19 04:15:16,541.541 INFO    ] ================================================
[2026-06-19 04:15:17,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:15:17
[2026-06-19 04:15:17,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:15:17,953.953 INFO    ] Initializing speech engine...
[2026-06-19 04:15:17,978.978 INFO    ] 2026-06-19 04:15:17
[2026-06-19 04:15:18,245.245 INFO    ] 2026-06-19 04:15:18
[2026-06-19 04:15:18,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:15:18,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:15:18,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:15:18,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:15:18,608.608 INFO    ] time= 19/06/2026 04:15:18
[2026-06-19 04:15:18,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:15:18,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:15:18,730.730 INFO    ] No existing commands found in stream
[2026-06-19 04:15:23,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:15:23,745.745 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 04:15:24,953.953 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:15:24,957.957 INFO    ] Checking for system updates...
[2026-06-19 04:15:24,995.995 INFO    ] 200
[2026-06-19 04:15:24,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:25,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:15:25,053.053 INFO    ] No update needed
[2026-06-19 04:15:25,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 04:15:25,091.091 INFO    ] 200
[2026-06-19 04:15:25,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:25,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:15:25,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:15:25,177.177 INFO    ] No camera update needed
[2026-06-19 04:15:25,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:15:25,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:15:25,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:15:25,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:15:27,232.232 INFO    ] ================================================
[2026-06-19 04:15:27,248.248 INFO    ] Launching Daemon at Fri Jun 19 04:15:27 IST 2026
[2026-06-19 04:15:27,259.259 INFO    ] ================================================
[2026-06-19 04:15:27,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:15:27
[2026-06-19 04:15:28,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:15:28,667.667 INFO    ] Initializing speech engine...
[2026-06-19 04:15:28,680.680 INFO    ] 2026-06-19 04:15:28
[2026-06-19 04:15:28,942.942 INFO    ] 2026-06-19 04:15:28
[2026-06-19 04:15:28,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:15:29,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:15:29,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:15:29,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:15:29,429.429 INFO    ] time= 19/06/2026 04:15:29
[2026-06-19 04:15:29,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:15:29,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:15:29,560.560 INFO    ] No existing commands found in stream
[2026-06-19 04:15:34,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:15:34,575.575 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 04:15:36,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:15:36,259.259 INFO    ] Checking for system updates...
[2026-06-19 04:15:36,299.299 INFO    ] 200
[2026-06-19 04:15:36,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:36,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:15:36,361.361 INFO    ] No update needed
[2026-06-19 04:15:36,364.364 INFO    ] Checking for camera pi updates...
[2026-06-19 04:15:36,401.401 INFO    ] 200
[2026-06-19 04:15:36,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:36,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:15:36,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:15:36,497.497 INFO    ] No camera update needed
[2026-06-19 04:15:36,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:15:36,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:15:36,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:15:36,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:15:38,556.556 INFO    ] ================================================
[2026-06-19 04:15:38,571.571 INFO    ] Launching Daemon at Fri Jun 19 04:15:38 IST 2026
[2026-06-19 04:15:38,582.582 INFO    ] ================================================
[2026-06-19 04:15:39,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:15:39
[2026-06-19 04:15:39,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:15:40,015.015 INFO    ] Initializing speech engine...
[2026-06-19 04:15:40,021.021 INFO    ] 2026-06-19 04:15:40
[2026-06-19 04:15:40,284.284 INFO    ] 2026-06-19 04:15:40
[2026-06-19 04:15:40,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:15:40,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:15:40,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:15:40,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:15:40,653.653 INFO    ] time= 19/06/2026 04:15:40
[2026-06-19 04:15:40,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:15:40,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:15:40,754.754 INFO    ] No existing commands found in stream
[2026-06-19 04:15:45,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:15:45,770.770 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 04:15:46,890.890 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:15:46,892.892 INFO    ] Checking for system updates...
[2026-06-19 04:15:46,932.932 INFO    ] 200
[2026-06-19 04:15:46,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:46,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:15:46,992.992 INFO    ] No update needed
[2026-06-19 04:15:46,994.994 INFO    ] Checking for camera pi updates...
[2026-06-19 04:15:47,028.028 INFO    ] 200
[2026-06-19 04:15:47,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:15:47,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:15:47,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:15:47,109.109 INFO    ] No camera update needed
[2026-06-19 04:15:47,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:15:47,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:15:47,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:15:47,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:15:49,167.167 INFO    ] ================================================
[2026-06-19 04:15:49,183.183 INFO    ] Launching Daemon at Fri Jun 19 04:15:49 IST 2026
[2026-06-19 04:15:49,194.194 INFO    ] ================================================
[2026-06-19 04:15:49,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:15:49
[2026-06-19 04:15:50,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:15:50,608.608 INFO    ] Initializing speech engine...
[2026-06-19 04:15:50,631.631 INFO    ] 2026-06-19 04:15:50
[2026-06-19 04:15:50,898.898 INFO    ] 2026-06-19 04:15:50
[2026-06-19 04:15:50,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:15:51,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:15:51,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:15:51,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:15:51,283.283 INFO    ] time= 19/06/2026 04:15:51
[2026-06-19 04:15:51,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:15:51,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:15:51,386.386 INFO    ] No existing commands found in stream
[2026-06-19 04:15:56,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:15:56,400.400 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 04:16:00,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:16:00,373.373 INFO    ] Checking for system updates...
[2026-06-19 04:16:00,410.410 INFO    ] 200
[2026-06-19 04:16:00,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:00,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:00,474.474 INFO    ] No update needed
[2026-06-19 04:16:00,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 04:16:00,513.513 INFO    ] 200
[2026-06-19 04:16:00,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:00,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:16:00,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:00,605.605 INFO    ] No camera update needed
[2026-06-19 04:16:00,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:16:00,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:16:00,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:16:00,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:16:02,673.673 INFO    ] ================================================
[2026-06-19 04:16:02,695.695 INFO    ] Launching Daemon at Fri Jun 19 04:16:02 IST 2026
[2026-06-19 04:16:02,712.712 INFO    ] ================================================
[2026-06-19 04:16:03,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:16:03
[2026-06-19 04:16:03,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:16:04,237.237 INFO    ] Initializing speech engine...
[2026-06-19 04:16:04,249.249 INFO    ] 2026-06-19 04:16:04
[2026-06-19 04:16:04,513.513 INFO    ] 2026-06-19 04:16:04
[2026-06-19 04:16:04,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:16:04,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:16:04,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:16:04,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:16:04,872.872 INFO    ] time= 19/06/2026 04:16:04
[2026-06-19 04:16:04,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:16:04,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:16:04,953.953 INFO    ] No existing commands found in stream
[2026-06-19 04:16:09,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:16:09,968.968 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-19 04:16:14,008.008 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:16:14,011.011 INFO    ] Checking for system updates...
[2026-06-19 04:16:14,047.047 INFO    ] 200
[2026-06-19 04:16:14,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:14,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:14,103.103 INFO    ] No update needed
[2026-06-19 04:16:14,105.105 INFO    ] Checking for camera pi updates...
[2026-06-19 04:16:14,140.140 INFO    ] 200
[2026-06-19 04:16:14,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:14,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:16:14,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:14,229.229 INFO    ] No camera update needed
[2026-06-19 04:16:14,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:16:14,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:16:14,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:16:14,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:16:16,285.285 INFO    ] ================================================
[2026-06-19 04:16:16,300.300 INFO    ] Launching Daemon at Fri Jun 19 04:16:16 IST 2026
[2026-06-19 04:16:16,310.310 INFO    ] ================================================
[2026-06-19 04:16:16,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:16:16
[2026-06-19 04:16:17,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:16:17,752.752 INFO    ] Initializing speech engine...
[2026-06-19 04:16:17,761.761 INFO    ] 2026-06-19 04:16:17
[2026-06-19 04:16:18,050.050 INFO    ] 2026-06-19 04:16:18
[2026-06-19 04:16:18,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:16:18,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:16:18,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:16:18,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:16:18,422.422 INFO    ] time= 19/06/2026 04:16:18
[2026-06-19 04:16:18,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:16:18,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:16:18,546.546 INFO    ] No existing commands found in stream
[2026-06-19 04:16:23,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:16:23,561.561 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 04:16:27,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:16:27,812.812 INFO    ] Checking for system updates...
[2026-06-19 04:16:27,849.849 INFO    ] 200
[2026-06-19 04:16:27,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:27,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:27,912.912 INFO    ] No update needed
[2026-06-19 04:16:27,914.914 INFO    ] Checking for camera pi updates...
[2026-06-19 04:16:27,951.951 INFO    ] 200
[2026-06-19 04:16:27,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:27,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:16:28,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:28,039.039 INFO    ] No camera update needed
[2026-06-19 04:16:28,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:16:28,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:16:28,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:16:28,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:16:30,096.096 INFO    ] ================================================
[2026-06-19 04:16:30,111.111 INFO    ] Launching Daemon at Fri Jun 19 04:16:30 IST 2026
[2026-06-19 04:16:30,122.122 INFO    ] ================================================
[2026-06-19 04:16:30,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:16:30
[2026-06-19 04:16:31,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:16:31,752.752 INFO    ] Initializing speech engine...
[2026-06-19 04:16:31,782.782 INFO    ] 2026-06-19 04:16:31
[2026-06-19 04:16:32,069.069 INFO    ] 2026-06-19 04:16:32
[2026-06-19 04:16:32,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:16:32,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:16:32,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:16:32,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:16:32,521.521 INFO    ] time= 19/06/2026 04:16:32
[2026-06-19 04:16:32,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:16:32,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:16:32,703.703 INFO    ] No existing commands found in stream
[2026-06-19 04:16:37,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:16:37,720.720 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 04:16:41,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:16:41,888.888 INFO    ] Checking for system updates...
[2026-06-19 04:16:41,931.931 INFO    ] 200
[2026-06-19 04:16:41,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:41,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:42,001.001 INFO    ] No update needed
[2026-06-19 04:16:42,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 04:16:42,037.037 INFO    ] 200
[2026-06-19 04:16:42,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:42,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:16:42,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:42,242.242 INFO    ] No camera update needed
[2026-06-19 04:16:42,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:16:42,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:16:42,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:16:42,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:16:44,297.297 INFO    ] ================================================
[2026-06-19 04:16:44,313.313 INFO    ] Launching Daemon at Fri Jun 19 04:16:44 IST 2026
[2026-06-19 04:16:44,323.323 INFO    ] ================================================
[2026-06-19 04:16:44,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:16:44
[2026-06-19 04:16:45,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:16:45,914.914 INFO    ] Initializing speech engine...
[2026-06-19 04:16:45,924.924 INFO    ] 2026-06-19 04:16:45
[2026-06-19 04:16:46,211.211 INFO    ] 2026-06-19 04:16:46
[2026-06-19 04:16:46,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:16:46,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:16:46,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:16:46,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:16:46,747.747 INFO    ] time= 19/06/2026 04:16:46
[2026-06-19 04:16:46,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:16:46,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:16:46,869.869 INFO    ] No existing commands found in stream
[2026-06-19 04:16:51,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:16:51,893.893 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 04:16:54,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:16:54,513.513 INFO    ] Checking for system updates...
[2026-06-19 04:16:54,549.549 INFO    ] 200
[2026-06-19 04:16:54,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:54,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:54,607.607 INFO    ] No update needed
[2026-06-19 04:16:54,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 04:16:54,644.644 INFO    ] 200
[2026-06-19 04:16:54,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:16:54,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:16:54,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:16:54,731.731 INFO    ] No camera update needed
[2026-06-19 04:16:54,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:16:54,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:16:54,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:16:54,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:16:56,789.789 INFO    ] ================================================
[2026-06-19 04:16:56,805.805 INFO    ] Launching Daemon at Fri Jun 19 04:16:56 IST 2026
[2026-06-19 04:16:56,816.816 INFO    ] ================================================
[2026-06-19 04:16:57,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:16:57
[2026-06-19 04:16:57,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:16:58,229.229 INFO    ] Initializing speech engine...
[2026-06-19 04:16:58,237.237 INFO    ] 2026-06-19 04:16:58
[2026-06-19 04:16:58,510.510 INFO    ] 2026-06-19 04:16:58
[2026-06-19 04:16:58,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:16:58,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:16:58,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:16:58,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:16:58,988.988 INFO    ] time= 19/06/2026 04:16:58
[2026-06-19 04:16:59,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:16:59,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:16:59,132.132 INFO    ] No existing commands found in stream
[2026-06-19 04:17:04,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:17:04,147.147 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 04:17:06,235.235 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:17:06,237.237 INFO    ] Checking for system updates...
[2026-06-19 04:17:06,274.274 INFO    ] 200
[2026-06-19 04:17:06,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:06,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:17:06,332.332 INFO    ] No update needed
[2026-06-19 04:17:06,334.334 INFO    ] Checking for camera pi updates...
[2026-06-19 04:17:06,368.368 INFO    ] 200
[2026-06-19 04:17:06,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:06,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:17:06,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:17:06,460.460 INFO    ] No camera update needed
[2026-06-19 04:17:06,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:17:06,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:17:06,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:17:06,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:17:08,516.516 INFO    ] ================================================
[2026-06-19 04:17:08,532.532 INFO    ] Launching Daemon at Fri Jun 19 04:17:08 IST 2026
[2026-06-19 04:17:08,544.544 INFO    ] ================================================
[2026-06-19 04:17:09,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:17:09
[2026-06-19 04:17:09,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:17:10,018.018 INFO    ] Initializing speech engine...
[2026-06-19 04:17:10,024.024 INFO    ] 2026-06-19 04:17:10
[2026-06-19 04:17:10,270.270 INFO    ] 2026-06-19 04:17:10
[2026-06-19 04:17:10,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:17:10,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:17:10,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:17:10,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:17:10,640.640 INFO    ] time= 19/06/2026 04:17:10
[2026-06-19 04:17:10,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:17:10,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:17:10,818.818 INFO    ] No existing commands found in stream
[2026-06-19 04:17:15,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:17:15,850.850 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 04:17:19,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:17:19,016.016 INFO    ] Checking for system updates...
[2026-06-19 04:17:19,057.057 INFO    ] 200
[2026-06-19 04:17:19,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:19,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:17:19,116.116 INFO    ] No update needed
[2026-06-19 04:17:19,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 04:17:19,158.158 INFO    ] 200
[2026-06-19 04:17:19,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:19,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:17:19,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:17:19,252.252 INFO    ] No camera update needed
[2026-06-19 04:17:19,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:17:19,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:17:19,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:17:19,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:17:21,313.313 INFO    ] ================================================
[2026-06-19 04:17:21,329.329 INFO    ] Launching Daemon at Fri Jun 19 04:17:21 IST 2026
[2026-06-19 04:17:21,340.340 INFO    ] ================================================
[2026-06-19 04:17:21,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:17:21
[2026-06-19 04:17:22,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:17:22,743.743 INFO    ] Initializing speech engine...
[2026-06-19 04:17:22,751.751 INFO    ] 2026-06-19 04:17:22
[2026-06-19 04:17:23,027.027 INFO    ] 2026-06-19 04:17:23
[2026-06-19 04:17:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:17:23,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:17:23,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:17:23,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:17:23,366.366 INFO    ] time= 19/06/2026 04:17:23
[2026-06-19 04:17:23,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:17:23,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:17:23,478.478 INFO    ] No existing commands found in stream
[2026-06-19 04:17:28,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:17:28,493.493 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 04:17:31,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:17:31,236.236 INFO    ] Checking for system updates...
[2026-06-19 04:17:31,271.271 INFO    ] 200
[2026-06-19 04:17:31,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:31,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:17:31,329.329 INFO    ] No update needed
[2026-06-19 04:17:31,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 04:17:31,365.365 INFO    ] 200
[2026-06-19 04:17:31,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:31,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:17:31,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:17:31,454.454 INFO    ] No camera update needed
[2026-06-19 04:17:31,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:17:31,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:17:31,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:17:31,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:17:33,518.518 INFO    ] ================================================
[2026-06-19 04:17:33,534.534 INFO    ] Launching Daemon at Fri Jun 19 04:17:33 IST 2026
[2026-06-19 04:17:33,545.545 INFO    ] ================================================
[2026-06-19 04:17:34,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:17:34
[2026-06-19 04:17:34,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:17:34,962.962 INFO    ] Initializing speech engine...
[2026-06-19 04:17:34,978.978 INFO    ] 2026-06-19 04:17:34
[2026-06-19 04:17:35,245.245 INFO    ] 2026-06-19 04:17:35
[2026-06-19 04:17:35,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:17:35,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:17:35,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:17:35,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:17:35,622.622 INFO    ] time= 19/06/2026 04:17:35
[2026-06-19 04:17:35,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:17:35,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:17:35,791.791 INFO    ] No existing commands found in stream
[2026-06-19 04:17:40,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:17:40,824.824 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 04:17:41,563.563 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:17:41,565.565 INFO    ] Checking for system updates...
[2026-06-19 04:17:41,602.602 INFO    ] 200
[2026-06-19 04:17:41,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:41,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:17:41,666.666 INFO    ] No update needed
[2026-06-19 04:17:41,669.669 INFO    ] Checking for camera pi updates...
[2026-06-19 04:17:41,707.707 INFO    ] 200
[2026-06-19 04:17:41,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:41,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:17:41,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:17:41,794.794 INFO    ] No camera update needed
[2026-06-19 04:17:41,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:17:41,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:17:41,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:17:41,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:17:43,855.855 INFO    ] ================================================
[2026-06-19 04:17:43,870.870 INFO    ] Launching Daemon at Fri Jun 19 04:17:43 IST 2026
[2026-06-19 04:17:43,881.881 INFO    ] ================================================
[2026-06-19 04:17:44,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:17:44
[2026-06-19 04:17:45,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:17:45,531.531 INFO    ] Initializing speech engine...
[2026-06-19 04:17:45,541.541 INFO    ] 2026-06-19 04:17:45
[2026-06-19 04:17:45,824.824 INFO    ] 2026-06-19 04:17:45
[2026-06-19 04:17:45,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:17:46,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:17:46,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:17:46,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:17:46,287.287 INFO    ] time= 19/06/2026 04:17:46
[2026-06-19 04:17:46,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:17:46,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:17:46,442.442 INFO    ] No existing commands found in stream
[2026-06-19 04:17:51,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:17:51,458.458 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 04:17:52,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:17:52,214.214 INFO    ] Checking for system updates...
[2026-06-19 04:17:52,251.251 INFO    ] 200
[2026-06-19 04:17:52,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:52,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:17:52,310.310 INFO    ] No update needed
[2026-06-19 04:17:52,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 04:17:52,349.349 INFO    ] 200
[2026-06-19 04:17:52,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:17:52,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:17:52,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:17:52,441.441 INFO    ] No camera update needed
[2026-06-19 04:17:52,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:17:52,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:17:52,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:17:52,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:17:54,500.500 INFO    ] ================================================
[2026-06-19 04:17:54,516.516 INFO    ] Launching Daemon at Fri Jun 19 04:17:54 IST 2026
[2026-06-19 04:17:54,527.527 INFO    ] ================================================
[2026-06-19 04:17:55,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:17:55
[2026-06-19 04:17:55,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:17:55,945.945 INFO    ] Initializing speech engine...
[2026-06-19 04:17:55,958.958 INFO    ] 2026-06-19 04:17:55
[2026-06-19 04:17:56,246.246 INFO    ] 2026-06-19 04:17:56
[2026-06-19 04:17:56,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:17:56,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:17:56,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:17:56,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:17:56,648.648 INFO    ] time= 19/06/2026 04:17:56
[2026-06-19 04:17:56,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:17:56,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:17:56,757.757 INFO    ] No existing commands found in stream
[2026-06-19 04:18:01,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:18:01,773.773 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 04:18:06,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:18:06,028.028 INFO    ] Checking for system updates...
[2026-06-19 04:18:06,071.071 INFO    ] 200
[2026-06-19 04:18:06,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:06,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:18:06,131.131 INFO    ] No update needed
[2026-06-19 04:18:06,134.134 INFO    ] Checking for camera pi updates...
[2026-06-19 04:18:06,168.168 INFO    ] 200
[2026-06-19 04:18:06,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:06,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:18:06,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:18:06,263.263 INFO    ] No camera update needed
[2026-06-19 04:18:06,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:18:06,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:18:06,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:18:06,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:18:08,321.321 INFO    ] ================================================
[2026-06-19 04:18:08,337.337 INFO    ] Launching Daemon at Fri Jun 19 04:18:08 IST 2026
[2026-06-19 04:18:08,348.348 INFO    ] ================================================
[2026-06-19 04:18:09,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:18:09
[2026-06-19 04:18:09,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:18:10,004.004 INFO    ] Initializing speech engine...
[2026-06-19 04:18:10,016.016 INFO    ] 2026-06-19 04:18:10
[2026-06-19 04:18:10,302.302 INFO    ] 2026-06-19 04:18:10
[2026-06-19 04:18:10,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:18:10,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:18:10,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:18:10,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:18:10,778.778 INFO    ] time= 19/06/2026 04:18:10
[2026-06-19 04:18:10,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:18:10,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:18:10,937.937 INFO    ] No existing commands found in stream
[2026-06-19 04:18:15,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:18:15,979.979 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 04:18:17,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:18:17,899.899 INFO    ] Checking for system updates...
[2026-06-19 04:18:17,940.940 INFO    ] 200
[2026-06-19 04:18:17,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:18,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:18:18,007.007 INFO    ] No update needed
[2026-06-19 04:18:18,009.009 INFO    ] Checking for camera pi updates...
[2026-06-19 04:18:18,045.045 INFO    ] 200
[2026-06-19 04:18:18,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:18,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:18:18,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:18:18,143.143 INFO    ] No camera update needed
[2026-06-19 04:18:18,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:18:18,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:18:18,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:18:18,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:18:20,201.201 INFO    ] ================================================
[2026-06-19 04:18:20,218.218 INFO    ] Launching Daemon at Fri Jun 19 04:18:20 IST 2026
[2026-06-19 04:18:20,229.229 INFO    ] ================================================
[2026-06-19 04:18:20,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:18:20
[2026-06-19 04:18:21,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:18:21,693.693 INFO    ] Initializing speech engine...
[2026-06-19 04:18:21,707.707 INFO    ] 2026-06-19 04:18:21
[2026-06-19 04:18:21,989.989 INFO    ] 2026-06-19 04:18:21
[2026-06-19 04:18:22,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:18:22,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:18:22,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:18:22,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:18:22,531.531 INFO    ] time= 19/06/2026 04:18:22
[2026-06-19 04:18:22,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:18:22,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:18:22,654.654 INFO    ] No existing commands found in stream
[2026-06-19 04:18:27,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:18:27,692.692 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 04:18:29,114.114 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:18:29,118.118 INFO    ] Checking for system updates...
[2026-06-19 04:18:29,155.155 INFO    ] 200
[2026-06-19 04:18:29,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:29,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:18:29,216.216 INFO    ] No update needed
[2026-06-19 04:18:29,219.219 INFO    ] Checking for camera pi updates...
[2026-06-19 04:18:29,254.254 INFO    ] 200
[2026-06-19 04:18:29,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:29,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:18:29,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:18:29,342.342 INFO    ] No camera update needed
[2026-06-19 04:18:29,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:18:29,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:18:29,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:18:29,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:18:31,404.404 INFO    ] ================================================
[2026-06-19 04:18:31,421.421 INFO    ] Launching Daemon at Fri Jun 19 04:18:31 IST 2026
[2026-06-19 04:18:31,433.433 INFO    ] ================================================
[2026-06-19 04:18:32,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:18:32
[2026-06-19 04:18:32,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:18:33,191.191 INFO    ] Initializing speech engine...
[2026-06-19 04:18:33,198.198 INFO    ] 2026-06-19 04:18:33
[2026-06-19 04:18:33,508.508 INFO    ] 2026-06-19 04:18:33
[2026-06-19 04:18:33,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:18:33,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:18:33,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:18:33,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:18:34,019.019 INFO    ] time= 19/06/2026 04:18:34
[2026-06-19 04:18:34,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:18:34,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:18:34,181.181 INFO    ] No existing commands found in stream
[2026-06-19 04:18:39,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:18:39,221.221 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 04:18:43,264.264 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:18:43,268.268 INFO    ] Checking for system updates...
[2026-06-19 04:18:43,304.304 INFO    ] 200
[2026-06-19 04:18:43,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:43,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:18:43,362.362 INFO    ] No update needed
[2026-06-19 04:18:43,365.365 INFO    ] Checking for camera pi updates...
[2026-06-19 04:18:43,398.398 INFO    ] 200
[2026-06-19 04:18:43,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:43,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:18:43,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:18:43,591.591 INFO    ] No camera update needed
[2026-06-19 04:18:43,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:18:43,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:18:43,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:18:43,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:18:45,645.645 INFO    ] ================================================
[2026-06-19 04:18:45,662.662 INFO    ] Launching Daemon at Fri Jun 19 04:18:45 IST 2026
[2026-06-19 04:18:45,673.673 INFO    ] ================================================
[2026-06-19 04:18:46,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:18:46
[2026-06-19 04:18:46,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:18:47,142.142 INFO    ] Initializing speech engine...
[2026-06-19 04:18:47,151.151 INFO    ] 2026-06-19 04:18:47
[2026-06-19 04:18:47,461.461 INFO    ] 2026-06-19 04:18:47
[2026-06-19 04:18:47,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:18:47,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:18:47,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:18:47,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:18:47,829.829 INFO    ] time= 19/06/2026 04:18:47
[2026-06-19 04:18:47,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:18:47,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:18:47,892.892 INFO    ] No existing commands found in stream
[2026-06-19 04:18:52,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:18:52,937.937 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 04:18:57,211.211 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:18:57,214.214 INFO    ] Checking for system updates...
[2026-06-19 04:18:57,256.256 INFO    ] 200
[2026-06-19 04:18:57,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:57,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:18:57,320.320 INFO    ] No update needed
[2026-06-19 04:18:57,323.323 INFO    ] Checking for camera pi updates...
[2026-06-19 04:18:57,358.358 INFO    ] 200
[2026-06-19 04:18:57,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:18:57,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:18:57,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:18:57,470.470 INFO    ] No camera update needed
[2026-06-19 04:18:57,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:18:57,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:18:57,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:18:57,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:18:59,527.527 INFO    ] ================================================
[2026-06-19 04:18:59,543.543 INFO    ] Launching Daemon at Fri Jun 19 04:18:59 IST 2026
[2026-06-19 04:18:59,554.554 INFO    ] ================================================
[2026-06-19 04:19:00,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:19:00
[2026-06-19 04:19:00,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:19:00,955.955 INFO    ] Initializing speech engine...
[2026-06-19 04:19:00,968.968 INFO    ] 2026-06-19 04:19:00
[2026-06-19 04:19:01,268.268 INFO    ] 2026-06-19 04:19:01
[2026-06-19 04:19:01,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:19:01,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:19:01,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:19:01,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:19:01,622.622 INFO    ] time= 19/06/2026 04:19:01
[2026-06-19 04:19:01,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:19:01,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:19:01,704.704 INFO    ] No existing commands found in stream
[2026-06-19 04:19:06,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:19:06,717.717 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 04:19:09,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:19:09,517.517 INFO    ] Checking for system updates...
[2026-06-19 04:19:09,554.554 INFO    ] 200
[2026-06-19 04:19:09,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:09,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:19:09,615.615 INFO    ] No update needed
[2026-06-19 04:19:09,618.618 INFO    ] Checking for camera pi updates...
[2026-06-19 04:19:09,652.652 INFO    ] 200
[2026-06-19 04:19:09,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:09,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:19:09,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:19:09,737.737 INFO    ] No camera update needed
[2026-06-19 04:19:09,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:19:09,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:19:09,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:19:09,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:19:11,794.794 INFO    ] ================================================
[2026-06-19 04:19:11,810.810 INFO    ] Launching Daemon at Fri Jun 19 04:19:11 IST 2026
[2026-06-19 04:19:11,822.822 INFO    ] ================================================
[2026-06-19 04:19:12,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:19:12
[2026-06-19 04:19:13,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:19:13,475.475 INFO    ] Initializing speech engine...
[2026-06-19 04:19:13,482.482 INFO    ] 2026-06-19 04:19:13
[2026-06-19 04:19:13,756.756 INFO    ] 2026-06-19 04:19:13
[2026-06-19 04:19:13,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:19:14,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:19:14,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:19:14,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:19:14,248.248 INFO    ] time= 19/06/2026 04:19:14
[2026-06-19 04:19:14,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:19:14,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:19:14,396.396 INFO    ] No existing commands found in stream
[2026-06-19 04:19:19,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:19:20,926.926 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 04:19:22,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:19:22,589.589 INFO    ] Checking for system updates...
[2026-06-19 04:19:22,631.631 INFO    ] 200
[2026-06-19 04:19:22,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:22,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:19:22,691.691 INFO    ] No update needed
[2026-06-19 04:19:22,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 04:19:22,730.730 INFO    ] 200
[2026-06-19 04:19:22,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:22,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:19:22,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:19:22,836.836 INFO    ] No camera update needed
[2026-06-19 04:19:22,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:19:22,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:19:22,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:19:22,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:19:24,894.894 INFO    ] ================================================
[2026-06-19 04:19:25,514.514 INFO    ] Launching Daemon at Fri Jun 19 04:19:25 IST 2026
[2026-06-19 04:19:25,525.525 INFO    ] ================================================
[2026-06-19 04:19:26,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:19:26
[2026-06-19 04:19:26,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:19:27,112.112 INFO    ] Initializing speech engine...
[2026-06-19 04:19:27,125.125 INFO    ] 2026-06-19 04:19:27
[2026-06-19 04:19:27,440.440 INFO    ] 2026-06-19 04:19:27
[2026-06-19 04:19:27,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:19:27,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:19:27,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:19:27,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:19:27,890.890 INFO    ] time= 19/06/2026 04:19:27
[2026-06-19 04:19:27,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:19:27,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:19:28,034.034 INFO    ] No existing commands found in stream
[2026-06-19 04:19:33,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:19:33,063.063 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 04:19:33,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:19:33,996.996 INFO    ] Checking for system updates...
[2026-06-19 04:19:34,034.034 INFO    ] 200
[2026-06-19 04:19:34,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:34,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:19:34,095.095 INFO    ] No update needed
[2026-06-19 04:19:34,098.098 INFO    ] Checking for camera pi updates...
[2026-06-19 04:19:34,133.133 INFO    ] 200
[2026-06-19 04:19:34,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:34,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:19:34,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:19:34,231.231 INFO    ] No camera update needed
[2026-06-19 04:19:34,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:19:34,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:19:34,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:19:34,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:19:36,290.290 INFO    ] ================================================
[2026-06-19 04:19:36,305.305 INFO    ] Launching Daemon at Fri Jun 19 04:19:36 IST 2026
[2026-06-19 04:19:36,316.316 INFO    ] ================================================
[2026-06-19 04:19:36,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:19:36
[2026-06-19 04:19:37,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:19:37,743.743 INFO    ] Initializing speech engine...
[2026-06-19 04:19:37,759.759 INFO    ] 2026-06-19 04:19:37
[2026-06-19 04:19:38,034.034 INFO    ] 2026-06-19 04:19:38
[2026-06-19 04:19:38,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:19:38,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:19:38,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:19:38,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:19:38,417.417 INFO    ] time= 19/06/2026 04:19:38
[2026-06-19 04:19:38,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:19:38,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:19:38,544.544 INFO    ] No existing commands found in stream
[2026-06-19 04:19:43,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:19:43,560.560 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 04:19:45,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:19:45,825.825 INFO    ] Checking for system updates...
[2026-06-19 04:19:45,861.861 INFO    ] 200
[2026-06-19 04:19:45,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:45,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:19:45,918.918 INFO    ] No update needed
[2026-06-19 04:19:45,920.920 INFO    ] Checking for camera pi updates...
[2026-06-19 04:19:45,954.954 INFO    ] 200
[2026-06-19 04:19:45,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:46,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:19:46,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:19:46,048.048 INFO    ] No camera update needed
[2026-06-19 04:19:46,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:19:46,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:19:46,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:19:46,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:19:48,104.104 INFO    ] ================================================
[2026-06-19 04:19:48,119.119 INFO    ] Launching Daemon at Fri Jun 19 04:19:48 IST 2026
[2026-06-19 04:19:48,130.130 INFO    ] ================================================
[2026-06-19 04:19:48,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:19:48
[2026-06-19 04:19:49,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:19:49,552.552 INFO    ] Initializing speech engine...
[2026-06-19 04:19:49,561.561 INFO    ] 2026-06-19 04:19:49
[2026-06-19 04:19:49,807.807 INFO    ] 2026-06-19 04:19:49
[2026-06-19 04:19:49,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:19:50,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:19:50,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:19:50,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:19:50,279.279 INFO    ] time= 19/06/2026 04:19:50
[2026-06-19 04:19:50,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:19:50,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:19:50,433.433 INFO    ] No existing commands found in stream
[2026-06-19 04:19:55,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:19:55,468.468 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 04:19:59,746.746 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:19:59,748.748 INFO    ] Checking for system updates...
[2026-06-19 04:19:59,785.785 INFO    ] 200
[2026-06-19 04:19:59,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:59,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:19:59,848.848 INFO    ] No update needed
[2026-06-19 04:19:59,851.851 INFO    ] Checking for camera pi updates...
[2026-06-19 04:19:59,884.884 INFO    ] 200
[2026-06-19 04:19:59,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:19:59,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:19:59,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:19:59,972.972 INFO    ] No camera update needed
[2026-06-19 04:19:59,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:19:59,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:19:59,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:19:59,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:20:02,041.041 INFO    ] ================================================
[2026-06-19 04:20:02,068.068 INFO    ] Launching Daemon at Fri Jun 19 04:20:02 IST 2026
[2026-06-19 04:20:02,172.172 INFO    ] ================================================
[2026-06-19 04:20:03,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:20:03
[2026-06-19 04:20:04,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:20:04,384.384 INFO    ] Initializing speech engine...
[2026-06-19 04:20:04,391.391 INFO    ] 2026-06-19 04:20:04
[2026-06-19 04:20:04,670.670 INFO    ] 2026-06-19 04:20:04
[2026-06-19 04:20:04,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:20:04,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:20:04,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:20:05,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:20:05,123.123 INFO    ] time= 19/06/2026 04:20:05
[2026-06-19 04:20:05,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:20:05,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:20:05,370.370 INFO    ] No existing commands found in stream
[2026-06-19 04:20:10,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:20:10,395.395 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 04:20:13,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:20:13,153.153 INFO    ] Checking for system updates...
[2026-06-19 04:20:13,191.191 INFO    ] 200
[2026-06-19 04:20:13,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:20:13,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:20:13,252.252 INFO    ] No update needed
[2026-06-19 04:20:13,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 04:20:13,290.290 INFO    ] 200
[2026-06-19 04:20:13,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:20:13,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:20:13,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:20:13,380.380 INFO    ] No camera update needed
[2026-06-19 04:20:13,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:20:13,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:20:13,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:20:13,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:20:15,440.440 INFO    ] ================================================
[2026-06-19 04:20:15,456.456 INFO    ] Launching Daemon at Fri Jun 19 04:20:15 IST 2026
[2026-06-19 04:20:15,467.467 INFO    ] ================================================
[2026-06-19 04:20:16,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:20:16
[2026-06-19 04:20:16,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:20:16,894.894 INFO    ] Initializing speech engine...
[2026-06-19 04:20:16,903.903 INFO    ] 2026-06-19 04:20:16
[2026-06-19 04:20:17,150.150 INFO    ] 2026-06-19 04:20:17
[2026-06-19 04:20:17,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:20:17,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:20:17,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:20:17,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:20:17,630.630 INFO    ] time= 19/06/2026 04:20:17
[2026-06-19 04:20:17,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:20:17,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:20:17,776.776 INFO    ] No existing commands found in stream
[2026-06-19 04:20:22,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:20:22,800.800 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 04:20:24,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:20:24,683.683 INFO    ] Checking for system updates...
[2026-06-19 04:20:24,720.720 INFO    ] 200
[2026-06-19 04:20:24,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:20:24,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:20:24,780.780 INFO    ] No update needed
[2026-06-19 04:20:24,782.782 INFO    ] Checking for camera pi updates...
[2026-06-19 04:20:24,816.816 INFO    ] 200
[2026-06-19 04:20:24,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:20:24,861.861 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:20:24,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:20:24,903.903 INFO    ] No camera update needed
[2026-06-19 04:20:24,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:20:24,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:20:24,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:20:24,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:20:26,961.961 INFO    ] ================================================
[2026-06-19 04:20:26,976.976 INFO    ] Launching Daemon at Fri Jun 19 04:20:26 IST 2026
[2026-06-19 04:20:26,987.987 INFO    ] ================================================
[2026-06-19 04:20:27,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:20:27
[2026-06-19 04:20:28,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:20:28,479.479 INFO    ] Initializing speech engine...
[2026-06-19 04:20:28,487.487 INFO    ] 2026-06-19 04:20:28
[2026-06-19 04:20:28,778.778 INFO    ] 2026-06-19 04:20:28
[2026-06-19 04:20:28,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:20:28,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:20:28,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:20:29,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:20:29,133.133 INFO    ] time= 19/06/2026 04:20:29
[2026-06-19 04:20:29,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:20:29,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:20:29,219.219 INFO    ] No existing commands found in stream
[2026-06-19 04:20:34,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:20:34,234.234 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 04:20:38,564.564 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:20:38,567.567 INFO    ] Checking for system updates...
[2026-06-19 04:20:38,604.604 INFO    ] 200
[2026-06-19 04:20:38,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:20:38,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:20:38,667.667 INFO    ] No update needed
[2026-06-19 04:20:38,669.669 INFO    ] Checking for camera pi updates...
[2026-06-19 04:20:38,703.703 INFO    ] 200
[2026-06-19 04:20:38,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:20:38,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:20:38,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:20:38,797.797 INFO    ] No camera update needed
[2026-06-19 04:20:38,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:20:38,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:20:38,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:20:38,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:20:40,851.851 INFO    ] ================================================
[2026-06-19 04:20:40,866.866 INFO    ] Launching Daemon at Fri Jun 19 04:20:40 IST 2026
[2026-06-19 04:20:40,877.877 INFO    ] ================================================
[2026-06-19 04:20:41,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:20:41
[2026-06-19 04:20:42,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:20:42,306.306 INFO    ] Initializing speech engine...
[2026-06-19 04:20:42,315.315 INFO    ] 2026-06-19 04:20:42
[2026-06-19 04:20:42,563.563 INFO    ] 2026-06-19 04:20:42
[2026-06-19 04:20:42,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:20:42,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:20:42,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:20:42,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:20:43,060.060 INFO    ] time= 19/06/2026 04:20:42
[2026-06-19 04:20:43,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:20:43,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:20:43,184.184 INFO    ] No existing commands found in stream
[2026-06-19 04:20:48,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:20:48,198.198 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 04:20:51,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:20:51,245.245 INFO    ] Checking for system updates...
[2026-06-19 04:20:51,281.281 INFO    ] 200
[2026-06-19 04:20:51,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:20:51,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:20:51,341.341 INFO    ] No update needed
[2026-06-19 04:20:51,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 04:20:51,377.377 INFO    ] 200
[2026-06-19 04:20:51,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:20:51,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:20:51,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:20:51,586.586 INFO    ] No camera update needed
[2026-06-19 04:20:51,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:20:51,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:20:51,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:20:51,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:20:53,644.644 INFO    ] ================================================
[2026-06-19 04:20:53,660.660 INFO    ] Launching Daemon at Fri Jun 19 04:20:53 IST 2026
[2026-06-19 04:20:53,671.671 INFO    ] ================================================
[2026-06-19 04:20:54,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:20:54
[2026-06-19 04:20:54,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:20:55,098.098 INFO    ] Initializing speech engine...
[2026-06-19 04:20:55,107.107 INFO    ] 2026-06-19 04:20:55
[2026-06-19 04:20:55,385.385 INFO    ] 2026-06-19 04:20:55
[2026-06-19 04:20:55,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:20:55,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:20:55,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:20:55,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:20:55,774.774 INFO    ] time= 19/06/2026 04:20:55
[2026-06-19 04:20:55,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:20:55,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:20:55,959.959 INFO    ] No existing commands found in stream
[2026-06-19 04:21:00,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:21:00,987.987 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 04:21:03,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:21:03,496.496 INFO    ] Checking for system updates...
[2026-06-19 04:21:03,536.536 INFO    ] 200
[2026-06-19 04:21:03,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:03,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:21:03,594.594 INFO    ] No update needed
[2026-06-19 04:21:03,596.596 INFO    ] Checking for camera pi updates...
[2026-06-19 04:21:03,630.630 INFO    ] 200
[2026-06-19 04:21:03,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:03,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:21:03,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:21:03,725.725 INFO    ] No camera update needed
[2026-06-19 04:21:03,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:21:03,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:21:03,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:21:03,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:21:05,780.780 INFO    ] ================================================
[2026-06-19 04:21:05,795.795 INFO    ] Launching Daemon at Fri Jun 19 04:21:05 IST 2026
[2026-06-19 04:21:05,806.806 INFO    ] ================================================
[2026-06-19 04:21:06,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:21:06
[2026-06-19 04:21:06,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:21:07,294.294 INFO    ] Initializing speech engine...
[2026-06-19 04:21:07,303.303 INFO    ] 2026-06-19 04:21:07
[2026-06-19 04:21:07,577.577 INFO    ] 2026-06-19 04:21:07
[2026-06-19 04:21:07,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:21:07,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:21:07,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:21:07,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:21:07,928.928 INFO    ] time= 19/06/2026 04:21:07
[2026-06-19 04:21:07,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:21:07,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:21:08,012.012 INFO    ] No existing commands found in stream
[2026-06-19 04:21:13,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:21:13,022.022 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 04:21:17,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:21:17,019.019 INFO    ] Checking for system updates...
[2026-06-19 04:21:17,059.059 INFO    ] 200
[2026-06-19 04:21:17,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:17,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:21:17,123.123 INFO    ] No update needed
[2026-06-19 04:21:17,125.125 INFO    ] Checking for camera pi updates...
[2026-06-19 04:21:17,160.160 INFO    ] 200
[2026-06-19 04:21:17,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:17,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:21:17,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:21:17,250.250 INFO    ] No camera update needed
[2026-06-19 04:21:17,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:21:17,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:21:17,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:21:17,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:21:19,309.309 INFO    ] ================================================
[2026-06-19 04:21:19,323.323 INFO    ] Launching Daemon at Fri Jun 19 04:21:19 IST 2026
[2026-06-19 04:21:19,334.334 INFO    ] ================================================
[2026-06-19 04:21:19,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:21:19
[2026-06-19 04:21:20,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:21:20,902.902 INFO    ] Initializing speech engine...
[2026-06-19 04:21:20,912.912 INFO    ] 2026-06-19 04:21:20
[2026-06-19 04:21:21,174.174 INFO    ] 2026-06-19 04:21:21
[2026-06-19 04:21:21,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:21:21,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:21:21,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:21:21,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:21:21,655.655 INFO    ] time= 19/06/2026 04:21:21
[2026-06-19 04:21:21,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:21:21,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:21:21,786.786 INFO    ] No existing commands found in stream
[2026-06-19 04:21:26,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:21:26,809.809 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 04:21:31,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:21:31,153.153 INFO    ] Checking for system updates...
[2026-06-19 04:21:31,190.190 INFO    ] 200
[2026-06-19 04:21:31,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:31,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:21:31,257.257 INFO    ] No update needed
[2026-06-19 04:21:31,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 04:21:31,294.294 INFO    ] 200
[2026-06-19 04:21:31,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:31,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:21:31,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:21:31,395.395 INFO    ] No camera update needed
[2026-06-19 04:21:31,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:21:31,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:21:31,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:21:31,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:21:33,452.452 INFO    ] ================================================
[2026-06-19 04:21:33,468.468 INFO    ] Launching Daemon at Fri Jun 19 04:21:33 IST 2026
[2026-06-19 04:21:33,479.479 INFO    ] ================================================
[2026-06-19 04:21:34,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:21:34
[2026-06-19 04:21:34,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:21:34,902.902 INFO    ] Initializing speech engine...
[2026-06-19 04:21:34,915.915 INFO    ] 2026-06-19 04:21:34
[2026-06-19 04:21:35,166.166 INFO    ] 2026-06-19 04:21:35
[2026-06-19 04:21:35,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:21:35,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:21:35,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:21:35,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:21:35,543.543 INFO    ] time= 19/06/2026 04:21:35
[2026-06-19 04:21:35,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:21:35,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:21:35,711.711 INFO    ] No existing commands found in stream
[2026-06-19 04:21:40,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:21:40,739.739 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 04:21:43,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:21:43,953.953 INFO    ] Checking for system updates...
[2026-06-19 04:21:43,993.993 INFO    ] 200
[2026-06-19 04:21:43,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:44,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:21:44,057.057 INFO    ] No update needed
[2026-06-19 04:21:44,059.059 INFO    ] Checking for camera pi updates...
[2026-06-19 04:21:44,093.093 INFO    ] 200
[2026-06-19 04:21:44,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:44,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:21:44,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:21:44,182.182 INFO    ] No camera update needed
[2026-06-19 04:21:44,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:21:44,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:21:44,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:21:44,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:21:46,236.236 INFO    ] ================================================
[2026-06-19 04:21:46,251.251 INFO    ] Launching Daemon at Fri Jun 19 04:21:46 IST 2026
[2026-06-19 04:21:46,261.261 INFO    ] ================================================
[2026-06-19 04:21:46,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:21:46
[2026-06-19 04:21:47,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:21:47,881.881 INFO    ] Initializing speech engine...
[2026-06-19 04:21:47,892.892 INFO    ] 2026-06-19 04:21:47
[2026-06-19 04:21:48,196.196 INFO    ] 2026-06-19 04:21:48
[2026-06-19 04:21:48,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:21:48,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:21:48,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:21:48,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:21:48,593.593 INFO    ] time= 19/06/2026 04:21:48
[2026-06-19 04:21:48,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:21:48,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:21:48,804.804 INFO    ] No existing commands found in stream
[2026-06-19 04:21:53,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:21:53,824.824 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 04:21:56,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:21:56,084.084 INFO    ] Checking for system updates...
[2026-06-19 04:21:56,125.125 INFO    ] 200
[2026-06-19 04:21:56,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:56,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:21:56,184.184 INFO    ] No update needed
[2026-06-19 04:21:56,187.187 INFO    ] Checking for camera pi updates...
[2026-06-19 04:21:56,222.222 INFO    ] 200
[2026-06-19 04:21:56,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:21:56,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:21:56,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:21:56,313.313 INFO    ] No camera update needed
[2026-06-19 04:21:56,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:21:56,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:21:56,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:21:56,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:21:58,367.367 INFO    ] ================================================
[2026-06-19 04:21:58,382.382 INFO    ] Launching Daemon at Fri Jun 19 04:21:58 IST 2026
[2026-06-19 04:21:58,392.392 INFO    ] ================================================
[2026-06-19 04:21:58,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:21:58
[2026-06-19 04:21:59,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:21:59,820.820 INFO    ] Initializing speech engine...
[2026-06-19 04:21:59,832.832 INFO    ] 2026-06-19 04:21:59
[2026-06-19 04:22:00,097.097 INFO    ] 2026-06-19 04:22:00
[2026-06-19 04:22:00,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:22:00,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:22:00,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:22:00,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:22:00,461.461 INFO    ] time= 19/06/2026 04:22:00
[2026-06-19 04:22:00,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:22:00,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:22:00,544.544 INFO    ] No existing commands found in stream
[2026-06-19 04:22:05,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:22:05,559.559 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 04:22:05,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:22:05,972.972 INFO    ] Checking for system updates...
[2026-06-19 04:22:06,016.016 INFO    ] 200
[2026-06-19 04:22:06,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:06,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:22:06,080.080 INFO    ] No update needed
[2026-06-19 04:22:06,082.082 INFO    ] Checking for camera pi updates...
[2026-06-19 04:22:06,119.119 INFO    ] 200
[2026-06-19 04:22:06,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:06,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:22:06,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:22:06,195.195 INFO    ] No camera update needed
[2026-06-19 04:22:06,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:22:06,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:22:06,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:22:06,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:22:08,249.249 INFO    ] ================================================
[2026-06-19 04:22:08,264.264 INFO    ] Launching Daemon at Fri Jun 19 04:22:08 IST 2026
[2026-06-19 04:22:08,275.275 INFO    ] ================================================
[2026-06-19 04:22:08,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:22:08
[2026-06-19 04:22:09,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:22:09,682.682 INFO    ] Initializing speech engine...
[2026-06-19 04:22:09,691.691 INFO    ] 2026-06-19 04:22:09
[2026-06-19 04:22:09,982.982 INFO    ] 2026-06-19 04:22:09
[2026-06-19 04:22:10,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:22:10,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:22:10,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:22:10,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:22:10,373.373 INFO    ] time= 19/06/2026 04:22:10
[2026-06-19 04:22:10,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:22:10,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:22:10,481.481 INFO    ] No existing commands found in stream
[2026-06-19 04:22:15,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:22:15,497.497 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 04:22:18,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:22:18,640.640 INFO    ] Checking for system updates...
[2026-06-19 04:22:18,683.683 INFO    ] 200
[2026-06-19 04:22:18,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:18,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:22:18,753.753 INFO    ] No update needed
[2026-06-19 04:22:18,756.756 INFO    ] Checking for camera pi updates...
[2026-06-19 04:22:18,797.797 INFO    ] 200
[2026-06-19 04:22:18,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:18,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:22:18,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:22:18,891.891 INFO    ] No camera update needed
[2026-06-19 04:22:18,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:22:18,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:22:18,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:22:18,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:22:20,959.959 INFO    ] ================================================
[2026-06-19 04:22:20,975.975 INFO    ] Launching Daemon at Fri Jun 19 04:22:20 IST 2026
[2026-06-19 04:22:20,986.986 INFO    ] ================================================
[2026-06-19 04:22:21,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:22:21
[2026-06-19 04:22:22,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:22:22,548.548 INFO    ] Initializing speech engine...
[2026-06-19 04:22:22,554.554 INFO    ] 2026-06-19 04:22:22
[2026-06-19 04:22:22,856.856 INFO    ] 2026-06-19 04:22:22
[2026-06-19 04:22:22,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:22:23,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:22:23,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:22:23,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:22:23,314.314 INFO    ] time= 19/06/2026 04:22:23
[2026-06-19 04:22:23,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:22:23,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:22:23,485.485 INFO    ] No existing commands found in stream
[2026-06-19 04:22:28,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:22:28,499.499 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 04:22:29,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:22:29,735.735 INFO    ] Checking for system updates...
[2026-06-19 04:22:29,775.775 INFO    ] 200
[2026-06-19 04:22:29,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:29,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:22:29,833.833 INFO    ] No update needed
[2026-06-19 04:22:29,836.836 INFO    ] Checking for camera pi updates...
[2026-06-19 04:22:29,873.873 INFO    ] 200
[2026-06-19 04:22:29,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:29,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:22:29,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:22:29,963.963 INFO    ] No camera update needed
[2026-06-19 04:22:29,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:22:29,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:22:29,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:22:29,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:22:32,022.022 INFO    ] ================================================
[2026-06-19 04:22:32,039.039 INFO    ] Launching Daemon at Fri Jun 19 04:22:32 IST 2026
[2026-06-19 04:22:32,051.051 INFO    ] ================================================
[2026-06-19 04:22:32,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:22:32
[2026-06-19 04:22:33,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:22:33,529.529 INFO    ] Initializing speech engine...
[2026-06-19 04:22:33,542.542 INFO    ] 2026-06-19 04:22:33
[2026-06-19 04:22:33,806.806 INFO    ] 2026-06-19 04:22:33
[2026-06-19 04:22:33,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:22:34,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:22:34,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:22:34,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:22:34,298.298 INFO    ] time= 19/06/2026 04:22:34
[2026-06-19 04:22:34,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:22:34,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:22:34,421.421 INFO    ] No existing commands found in stream
[2026-06-19 04:22:39,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:22:39,436.436 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 04:22:41,841.841 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:22:41,844.844 INFO    ] Checking for system updates...
[2026-06-19 04:22:41,880.880 INFO    ] 200
[2026-06-19 04:22:41,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:41,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:22:41,957.957 INFO    ] No update needed
[2026-06-19 04:22:41,959.959 INFO    ] Checking for camera pi updates...
[2026-06-19 04:22:41,996.996 INFO    ] 200
[2026-06-19 04:22:41,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:42,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:22:42,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:22:42,088.088 INFO    ] No camera update needed
[2026-06-19 04:22:42,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:22:42,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:22:42,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:22:42,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:22:44,144.144 INFO    ] ================================================
[2026-06-19 04:22:44,159.159 INFO    ] Launching Daemon at Fri Jun 19 04:22:44 IST 2026
[2026-06-19 04:22:44,169.169 INFO    ] ================================================
[2026-06-19 04:22:44,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:22:44
[2026-06-19 04:22:45,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:22:45,633.633 INFO    ] Initializing speech engine...
[2026-06-19 04:22:45,640.640 INFO    ] 2026-06-19 04:22:45
[2026-06-19 04:22:45,903.903 INFO    ] 2026-06-19 04:22:45
[2026-06-19 04:22:45,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:22:46,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:22:46,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:22:46,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:22:46,350.350 INFO    ] time= 19/06/2026 04:22:46
[2026-06-19 04:22:46,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:22:46,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:22:46,511.511 INFO    ] No existing commands found in stream
[2026-06-19 04:22:51,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:22:51,527.527 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-19 04:22:55,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:22:55,066.066 INFO    ] Checking for system updates...
[2026-06-19 04:22:55,106.106 INFO    ] 200
[2026-06-19 04:22:55,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:55,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:22:55,170.170 INFO    ] No update needed
[2026-06-19 04:22:55,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 04:22:55,210.210 INFO    ] 200
[2026-06-19 04:22:55,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:22:55,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:22:55,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:22:55,402.402 INFO    ] No camera update needed
[2026-06-19 04:22:55,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:22:55,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:22:55,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:22:55,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:22:57,458.458 INFO    ] ================================================
[2026-06-19 04:22:57,473.473 INFO    ] Launching Daemon at Fri Jun 19 04:22:57 IST 2026
[2026-06-19 04:22:57,484.484 INFO    ] ================================================
[2026-06-19 04:22:58,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:22:58
[2026-06-19 04:22:58,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:22:58,903.903 INFO    ] Initializing speech engine...
[2026-06-19 04:22:58,916.916 INFO    ] 2026-06-19 04:22:58
[2026-06-19 04:22:59,169.169 INFO    ] 2026-06-19 04:22:59
[2026-06-19 04:22:59,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:22:59,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:22:59,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:22:59,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:22:59,548.548 INFO    ] time= 19/06/2026 04:22:59
[2026-06-19 04:22:59,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:22:59,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:22:59,703.703 INFO    ] No existing commands found in stream
[2026-06-19 04:23:04,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:23:04,736.736 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 04:23:05,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:23:05,327.327 INFO    ] Checking for system updates...
[2026-06-19 04:23:05,365.365 INFO    ] 200
[2026-06-19 04:23:05,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:05,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:23:05,429.429 INFO    ] No update needed
[2026-06-19 04:23:05,431.431 INFO    ] Checking for camera pi updates...
[2026-06-19 04:23:05,469.469 INFO    ] 200
[2026-06-19 04:23:05,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:05,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:23:05,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:23:05,554.554 INFO    ] No camera update needed
[2026-06-19 04:23:05,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:23:05,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:23:05,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:23:05,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:23:07,611.611 INFO    ] ================================================
[2026-06-19 04:23:07,626.626 INFO    ] Launching Daemon at Fri Jun 19 04:23:07 IST 2026
[2026-06-19 04:23:07,636.636 INFO    ] ================================================
[2026-06-19 04:23:08,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:23:08
[2026-06-19 04:23:08,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:23:09,290.290 INFO    ] Initializing speech engine...
[2026-06-19 04:23:09,302.302 INFO    ] 2026-06-19 04:23:09
[2026-06-19 04:23:09,590.590 INFO    ] 2026-06-19 04:23:09
[2026-06-19 04:23:09,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:23:09,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:23:09,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:23:10,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:23:10,119.119 INFO    ] time= 19/06/2026 04:23:10
[2026-06-19 04:23:10,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:23:10,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:23:10,276.276 INFO    ] No existing commands found in stream
[2026-06-19 04:23:15,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:23:15,295.295 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 04:23:19,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:23:19,158.158 INFO    ] Checking for system updates...
[2026-06-19 04:23:19,194.194 INFO    ] 200
[2026-06-19 04:23:19,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:19,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:23:19,260.260 INFO    ] No update needed
[2026-06-19 04:23:19,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 04:23:19,300.300 INFO    ] 200
[2026-06-19 04:23:19,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:19,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:23:19,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:23:19,402.402 INFO    ] No camera update needed
[2026-06-19 04:23:19,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:23:19,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:23:19,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:23:19,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:23:21,457.457 INFO    ] ================================================
[2026-06-19 04:23:21,472.472 INFO    ] Launching Daemon at Fri Jun 19 04:23:21 IST 2026
[2026-06-19 04:23:21,483.483 INFO    ] ================================================
[2026-06-19 04:23:22,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:23:22
[2026-06-19 04:23:22,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:23:22,986.986 INFO    ] Initializing speech engine...
[2026-06-19 04:23:22,994.994 INFO    ] 2026-06-19 04:23:22
[2026-06-19 04:23:23,255.255 INFO    ] 2026-06-19 04:23:23
[2026-06-19 04:23:23,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:23:23,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:23:23,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:23:23,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:23:23,679.679 INFO    ] time= 19/06/2026 04:23:23
[2026-06-19 04:23:23,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:23:23,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:23:23,863.863 INFO    ] No existing commands found in stream
[2026-06-19 04:23:28,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:23:28,878.878 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 04:23:29,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:23:29,425.425 INFO    ] Checking for system updates...
[2026-06-19 04:23:29,465.465 INFO    ] 200
[2026-06-19 04:23:29,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:29,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:23:29,533.533 INFO    ] No update needed
[2026-06-19 04:23:29,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 04:23:29,573.573 INFO    ] 200
[2026-06-19 04:23:29,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:29,627.627 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:23:29,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:23:29,673.673 INFO    ] No camera update needed
[2026-06-19 04:23:29,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:23:29,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:23:29,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:23:29,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:23:31,735.735 INFO    ] ================================================
[2026-06-19 04:23:31,752.752 INFO    ] Launching Daemon at Fri Jun 19 04:23:31 IST 2026
[2026-06-19 04:23:31,764.764 INFO    ] ================================================
[2026-06-19 04:23:32,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:23:32
[2026-06-19 04:23:32,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:23:33,244.244 INFO    ] Initializing speech engine...
[2026-06-19 04:23:33,253.253 INFO    ] 2026-06-19 04:23:33
[2026-06-19 04:23:33,497.497 INFO    ] 2026-06-19 04:23:33
[2026-06-19 04:23:33,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:23:33,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:23:33,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:23:33,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:23:33,866.866 INFO    ] time= 19/06/2026 04:23:33
[2026-06-19 04:23:33,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:23:33,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:23:34,047.047 INFO    ] No existing commands found in stream
[2026-06-19 04:23:39,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:23:39,077.077 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 04:23:40,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:23:40,375.375 INFO    ] Checking for system updates...
[2026-06-19 04:23:40,415.415 INFO    ] 200
[2026-06-19 04:23:40,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:40,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:23:40,473.473 INFO    ] No update needed
[2026-06-19 04:23:40,476.476 INFO    ] Checking for camera pi updates...
[2026-06-19 04:23:40,513.513 INFO    ] 200
[2026-06-19 04:23:40,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:40,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:23:40,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:23:40,608.608 INFO    ] No camera update needed
[2026-06-19 04:23:40,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:23:40,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:23:40,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:23:40,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:23:42,664.664 INFO    ] ================================================
[2026-06-19 04:23:42,678.678 INFO    ] Launching Daemon at Fri Jun 19 04:23:42 IST 2026
[2026-06-19 04:23:42,689.689 INFO    ] ================================================
[2026-06-19 04:23:43,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:23:43
[2026-06-19 04:23:43,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:23:44,113.113 INFO    ] Initializing speech engine...
[2026-06-19 04:23:44,126.126 INFO    ] 2026-06-19 04:23:44
[2026-06-19 04:23:44,376.376 INFO    ] 2026-06-19 04:23:44
[2026-06-19 04:23:44,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:23:44,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:23:44,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:23:44,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:23:44,753.753 INFO    ] time= 19/06/2026 04:23:44
[2026-06-19 04:23:44,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:23:44,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:23:44,912.912 INFO    ] No existing commands found in stream
[2026-06-19 04:23:49,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:23:49,945.945 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 04:23:51,174.174 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:23:51,177.177 INFO    ] Checking for system updates...
[2026-06-19 04:23:51,212.212 INFO    ] 200
[2026-06-19 04:23:51,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:51,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:23:51,278.278 INFO    ] No update needed
[2026-06-19 04:23:51,281.281 INFO    ] Checking for camera pi updates...
[2026-06-19 04:23:51,319.319 INFO    ] 200
[2026-06-19 04:23:51,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:23:51,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:23:51,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:23:51,410.410 INFO    ] No camera update needed
[2026-06-19 04:23:51,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:23:51,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:23:51,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:23:51,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:23:53,464.464 INFO    ] ================================================
[2026-06-19 04:23:53,481.481 INFO    ] Launching Daemon at Fri Jun 19 04:23:53 IST 2026
[2026-06-19 04:23:53,492.492 INFO    ] ================================================
[2026-06-19 04:23:54,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:23:54
[2026-06-19 04:23:54,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:23:54,971.971 INFO    ] Initializing speech engine...
[2026-06-19 04:23:54,979.979 INFO    ] 2026-06-19 04:23:54
[2026-06-19 04:23:55,240.240 INFO    ] 2026-06-19 04:23:55
[2026-06-19 04:23:55,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:23:55,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:23:55,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:23:55,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:23:55,711.711 INFO    ] time= 19/06/2026 04:23:55
[2026-06-19 04:23:55,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:23:55,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:23:55,878.878 INFO    ] No existing commands found in stream
[2026-06-19 04:24:00,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:24:00,920.920 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 04:24:03,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:24:03,580.580 INFO    ] Checking for system updates...
[2026-06-19 04:24:03,623.623 INFO    ] 200
[2026-06-19 04:24:03,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:03,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:24:03,685.685 INFO    ] No update needed
[2026-06-19 04:24:03,688.688 INFO    ] Checking for camera pi updates...
[2026-06-19 04:24:03,727.727 INFO    ] 200
[2026-06-19 04:24:03,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:03,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:24:03,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:24:03,824.824 INFO    ] No camera update needed
[2026-06-19 04:24:03,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:24:03,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:24:03,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:24:03,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:24:05,885.885 INFO    ] ================================================
[2026-06-19 04:24:05,900.900 INFO    ] Launching Daemon at Fri Jun 19 04:24:05 IST 2026
[2026-06-19 04:24:05,911.911 INFO    ] ================================================
[2026-06-19 04:24:06,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:24:06
[2026-06-19 04:24:07,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:24:07,461.461 INFO    ] Initializing speech engine...
[2026-06-19 04:24:07,484.484 INFO    ] 2026-06-19 04:24:07
[2026-06-19 04:24:07,741.741 INFO    ] 2026-06-19 04:24:07
[2026-06-19 04:24:07,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:24:08,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:24:08,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:24:08,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:24:08,209.209 INFO    ] time= 19/06/2026 04:24:08
[2026-06-19 04:24:08,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:24:08,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:24:08,371.371 INFO    ] No existing commands found in stream
[2026-06-19 04:24:13,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:24:13,386.386 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 04:24:16,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:24:16,508.508 INFO    ] Checking for system updates...
[2026-06-19 04:24:16,548.548 INFO    ] 200
[2026-06-19 04:24:16,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:16,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:24:16,606.606 INFO    ] No update needed
[2026-06-19 04:24:16,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 04:24:16,643.643 INFO    ] 200
[2026-06-19 04:24:16,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:16,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:24:16,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:24:16,720.720 INFO    ] No camera update needed
[2026-06-19 04:24:16,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:24:16,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:24:16,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:24:16,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:24:18,774.774 INFO    ] ================================================
[2026-06-19 04:24:18,789.789 INFO    ] Launching Daemon at Fri Jun 19 04:24:18 IST 2026
[2026-06-19 04:24:18,800.800 INFO    ] ================================================
[2026-06-19 04:24:19,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:24:19
[2026-06-19 04:24:19,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:24:20,204.204 INFO    ] Initializing speech engine...
[2026-06-19 04:24:20,226.226 INFO    ] 2026-06-19 04:24:20
[2026-06-19 04:24:20,486.486 INFO    ] 2026-06-19 04:24:20
[2026-06-19 04:24:20,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:24:20,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:24:20,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:24:20,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:24:20,827.827 INFO    ] time= 19/06/2026 04:24:20
[2026-06-19 04:24:20,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:24:20,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:24:20,938.938 INFO    ] No existing commands found in stream
[2026-06-19 04:24:25,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:24:25,953.953 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 04:24:26,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:24:26,607.607 INFO    ] Checking for system updates...
[2026-06-19 04:24:26,648.648 INFO    ] 200
[2026-06-19 04:24:26,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:26,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:24:26,713.713 INFO    ] No update needed
[2026-06-19 04:24:26,716.716 INFO    ] Checking for camera pi updates...
[2026-06-19 04:24:26,761.761 INFO    ] 200
[2026-06-19 04:24:26,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:26,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:24:26,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:24:26,861.861 INFO    ] No camera update needed
[2026-06-19 04:24:26,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:24:26,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:24:26,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:24:26,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:24:28,919.919 INFO    ] ================================================
[2026-06-19 04:24:28,934.934 INFO    ] Launching Daemon at Fri Jun 19 04:24:28 IST 2026
[2026-06-19 04:24:28,944.944 INFO    ] ================================================
[2026-06-19 04:24:29,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:24:29
[2026-06-19 04:24:30,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:24:30,410.410 INFO    ] Initializing speech engine...
[2026-06-19 04:24:30,415.415 INFO    ] 2026-06-19 04:24:30
[2026-06-19 04:24:30,664.664 INFO    ] 2026-06-19 04:24:30
[2026-06-19 04:24:30,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:24:30,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:24:30,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:24:31,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:24:31,149.149 INFO    ] time= 19/06/2026 04:24:31
[2026-06-19 04:24:31,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:24:31,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:24:31,288.288 INFO    ] No existing commands found in stream
[2026-06-19 04:24:36,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:24:36,303.303 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 04:24:39,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:24:39,108.108 INFO    ] Checking for system updates...
[2026-06-19 04:24:39,149.149 INFO    ] 200
[2026-06-19 04:24:39,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:39,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:24:39,207.207 INFO    ] No update needed
[2026-06-19 04:24:39,210.210 INFO    ] Checking for camera pi updates...
[2026-06-19 04:24:39,244.244 INFO    ] 200
[2026-06-19 04:24:39,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:39,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:24:39,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:24:39,339.339 INFO    ] No camera update needed
[2026-06-19 04:24:39,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:24:39,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:24:39,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:24:39,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:24:41,396.396 INFO    ] ================================================
[2026-06-19 04:24:41,411.411 INFO    ] Launching Daemon at Fri Jun 19 04:24:41 IST 2026
[2026-06-19 04:24:41,423.423 INFO    ] ================================================
[2026-06-19 04:24:41,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:24:41
[2026-06-19 04:24:42,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:24:42,855.855 INFO    ] Initializing speech engine...
[2026-06-19 04:24:42,864.864 INFO    ] 2026-06-19 04:24:42
[2026-06-19 04:24:43,116.116 INFO    ] 2026-06-19 04:24:43
[2026-06-19 04:24:43,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:24:43,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:24:43,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:24:43,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:24:43,493.493 INFO    ] time= 19/06/2026 04:24:43
[2026-06-19 04:24:43,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:24:43,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:24:43,570.570 INFO    ] No existing commands found in stream
[2026-06-19 04:24:48,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:24:48,586.586 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 04:24:51,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:24:51,701.701 INFO    ] Checking for system updates...
[2026-06-19 04:24:51,742.742 INFO    ] 200
[2026-06-19 04:24:51,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:51,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:24:51,800.800 INFO    ] No update needed
[2026-06-19 04:24:51,802.802 INFO    ] Checking for camera pi updates...
[2026-06-19 04:24:51,841.841 INFO    ] 200
[2026-06-19 04:24:51,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:24:51,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:24:51,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:24:51,933.933 INFO    ] No camera update needed
[2026-06-19 04:24:51,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:24:51,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:24:51,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:24:51,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:24:53,987.987 INFO    ] ================================================
[2026-06-19 04:24:54,003.003 INFO    ] Launching Daemon at Fri Jun 19 04:24:53 IST 2026
[2026-06-19 04:24:54,013.013 INFO    ] ================================================
[2026-06-19 04:24:54,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:24:54
[2026-06-19 04:24:55,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:24:55,499.499 INFO    ] Initializing speech engine...
[2026-06-19 04:24:55,512.512 INFO    ] 2026-06-19 04:24:55
[2026-06-19 04:24:55,795.795 INFO    ] 2026-06-19 04:24:55
[2026-06-19 04:24:55,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:24:56,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:24:56,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:24:56,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:24:56,179.179 INFO    ] time= 19/06/2026 04:24:56
[2026-06-19 04:24:56,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:24:56,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:24:56,348.348 INFO    ] No existing commands found in stream
[2026-06-19 04:25:01,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:25:01,382.382 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 04:25:05,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:25:05,620.620 INFO    ] Checking for system updates...
[2026-06-19 04:25:05,662.662 INFO    ] 200
[2026-06-19 04:25:05,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:05,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:25:05,720.720 INFO    ] No update needed
[2026-06-19 04:25:05,722.722 INFO    ] Checking for camera pi updates...
[2026-06-19 04:25:05,761.761 INFO    ] 200
[2026-06-19 04:25:05,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:05,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:25:05,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:25:05,852.852 INFO    ] No camera update needed
[2026-06-19 04:25:05,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:25:05,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:25:05,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:25:05,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:25:07,910.910 INFO    ] ================================================
[2026-06-19 04:25:07,925.925 INFO    ] Launching Daemon at Fri Jun 19 04:25:07 IST 2026
[2026-06-19 04:25:07,936.936 INFO    ] ================================================
[2026-06-19 04:25:08,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:25:08
[2026-06-19 04:25:09,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:25:09,384.384 INFO    ] Initializing speech engine...
[2026-06-19 04:25:09,392.392 INFO    ] 2026-06-19 04:25:09
[2026-06-19 04:25:09,699.699 INFO    ] 2026-06-19 04:25:09
[2026-06-19 04:25:09,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:25:09,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:25:09,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:25:10,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:25:10,063.063 INFO    ] time= 19/06/2026 04:25:10
[2026-06-19 04:25:10,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:25:10,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:25:10,146.146 INFO    ] No existing commands found in stream
[2026-06-19 04:25:15,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:25:15,159.159 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 04:25:19,452.452 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:25:19,455.455 INFO    ] Checking for system updates...
[2026-06-19 04:25:19,495.495 INFO    ] 200
[2026-06-19 04:25:19,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:19,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:25:19,562.562 INFO    ] No update needed
[2026-06-19 04:25:19,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 04:25:19,603.603 INFO    ] 200
[2026-06-19 04:25:19,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:19,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:25:19,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:25:19,695.695 INFO    ] No camera update needed
[2026-06-19 04:25:19,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:25:19,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:25:19,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:25:19,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:25:21,751.751 INFO    ] ================================================
[2026-06-19 04:25:21,766.766 INFO    ] Launching Daemon at Fri Jun 19 04:25:21 IST 2026
[2026-06-19 04:25:21,777.777 INFO    ] ================================================
[2026-06-19 04:25:22,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:25:22
[2026-06-19 04:25:22,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:25:23,199.199 INFO    ] Initializing speech engine...
[2026-06-19 04:25:23,212.212 INFO    ] 2026-06-19 04:25:23
[2026-06-19 04:25:23,480.480 INFO    ] 2026-06-19 04:25:23
[2026-06-19 04:25:23,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:25:23,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:25:23,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:25:23,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:25:23,960.960 INFO    ] time= 19/06/2026 04:25:23
[2026-06-19 04:25:24,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:25:24,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:25:24,113.113 INFO    ] No existing commands found in stream
[2026-06-19 04:25:29,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:25:29,128.128 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 04:25:30,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:25:30,623.623 INFO    ] Checking for system updates...
[2026-06-19 04:25:30,664.664 INFO    ] 200
[2026-06-19 04:25:30,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:30,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:25:30,730.730 INFO    ] No update needed
[2026-06-19 04:25:30,732.732 INFO    ] Checking for camera pi updates...
[2026-06-19 04:25:30,767.767 INFO    ] 200
[2026-06-19 04:25:30,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:30,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:25:30,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:25:30,862.862 INFO    ] No camera update needed
[2026-06-19 04:25:30,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:25:30,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:25:30,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:25:30,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:25:32,923.923 INFO    ] ================================================
[2026-06-19 04:25:32,942.942 INFO    ] Launching Daemon at Fri Jun 19 04:25:32 IST 2026
[2026-06-19 04:25:32,953.953 INFO    ] ================================================
[2026-06-19 04:25:33,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:25:33
[2026-06-19 04:25:34,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:25:34,428.428 INFO    ] Initializing speech engine...
[2026-06-19 04:25:34,434.434 INFO    ] 2026-06-19 04:25:34
[2026-06-19 04:25:34,683.683 INFO    ] 2026-06-19 04:25:34
[2026-06-19 04:25:34,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:25:34,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:25:34,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:25:35,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:25:35,189.189 INFO    ] time= 19/06/2026 04:25:35
[2026-06-19 04:25:35,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:25:35,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:25:35,381.381 INFO    ] No existing commands found in stream
[2026-06-19 04:25:40,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:25:40,414.414 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 04:25:41,606.606 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:25:41,609.609 INFO    ] Checking for system updates...
[2026-06-19 04:25:41,651.651 INFO    ] 200
[2026-06-19 04:25:41,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:41,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:25:41,716.716 INFO    ] No update needed
[2026-06-19 04:25:41,718.718 INFO    ] Checking for camera pi updates...
[2026-06-19 04:25:41,753.753 INFO    ] 200
[2026-06-19 04:25:41,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:41,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:25:41,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:25:41,846.846 INFO    ] No camera update needed
[2026-06-19 04:25:41,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:25:41,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:25:41,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:25:41,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:25:43,903.903 INFO    ] ================================================
[2026-06-19 04:25:43,918.918 INFO    ] Launching Daemon at Fri Jun 19 04:25:43 IST 2026
[2026-06-19 04:25:43,929.929 INFO    ] ================================================
[2026-06-19 04:25:44,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:25:44
[2026-06-19 04:25:45,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:25:45,578.578 INFO    ] Initializing speech engine...
[2026-06-19 04:25:45,589.589 INFO    ] 2026-06-19 04:25:45
[2026-06-19 04:25:45,899.899 INFO    ] 2026-06-19 04:25:45
[2026-06-19 04:25:45,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:25:46,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:25:46,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:25:46,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:25:46,404.404 INFO    ] time= 19/06/2026 04:25:46
[2026-06-19 04:25:46,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:25:46,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:25:46,557.557 INFO    ] No existing commands found in stream
[2026-06-19 04:25:51,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:25:51,576.576 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 04:25:52,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:25:52,647.647 INFO    ] Checking for system updates...
[2026-06-19 04:25:52,687.687 INFO    ] 200
[2026-06-19 04:25:52,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:52,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:25:52,755.755 INFO    ] No update needed
[2026-06-19 04:25:52,758.758 INFO    ] Checking for camera pi updates...
[2026-06-19 04:25:52,798.798 INFO    ] 200
[2026-06-19 04:25:52,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:25:52,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:25:52,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:25:52,895.895 INFO    ] No camera update needed
[2026-06-19 04:25:52,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:25:52,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:25:52,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:25:52,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:25:54,952.952 INFO    ] ================================================
[2026-06-19 04:25:54,968.968 INFO    ] Launching Daemon at Fri Jun 19 04:25:54 IST 2026
[2026-06-19 04:25:54,979.979 INFO    ] ================================================
[2026-06-19 04:25:55,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:25:55
[2026-06-19 04:25:56,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:25:56,394.394 INFO    ] Initializing speech engine...
[2026-06-19 04:25:56,409.409 INFO    ] 2026-06-19 04:25:56
[2026-06-19 04:25:56,695.695 INFO    ] 2026-06-19 04:25:56
[2026-06-19 04:25:56,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:25:56,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:25:56,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:25:57,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:25:57,110.110 INFO    ] time= 19/06/2026 04:25:57
[2026-06-19 04:25:57,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:25:57,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:25:57,273.273 INFO    ] No existing commands found in stream
[2026-06-19 04:26:02,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:26:02,306.306 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 04:26:06,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:26:06,604.604 INFO    ] Checking for system updates...
[2026-06-19 04:26:06,644.644 INFO    ] 200
[2026-06-19 04:26:06,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:06,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:26:06,702.702 INFO    ] No update needed
[2026-06-19 04:26:06,704.704 INFO    ] Checking for camera pi updates...
[2026-06-19 04:26:06,738.738 INFO    ] 200
[2026-06-19 04:26:06,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:06,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:26:06,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:26:06,828.828 INFO    ] No camera update needed
[2026-06-19 04:26:06,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:26:06,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:26:06,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:26:06,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:26:08,885.885 INFO    ] ================================================
[2026-06-19 04:26:08,900.900 INFO    ] Launching Daemon at Fri Jun 19 04:26:08 IST 2026
[2026-06-19 04:26:08,911.911 INFO    ] ================================================
[2026-06-19 04:26:09,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:26:09
[2026-06-19 04:26:10,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:26:10,542.542 INFO    ] Initializing speech engine...
[2026-06-19 04:26:10,551.551 INFO    ] 2026-06-19 04:26:10
[2026-06-19 04:26:10,837.837 INFO    ] 2026-06-19 04:26:10
[2026-06-19 04:26:10,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:26:11,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:26:11,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:26:11,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:26:11,376.376 INFO    ] time= 19/06/2026 04:26:11
[2026-06-19 04:26:11,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:26:11,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:26:11,528.528 INFO    ] No existing commands found in stream
[2026-06-19 04:26:16,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:26:16,548.548 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 04:26:20,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:26:20,765.765 INFO    ] Checking for system updates...
[2026-06-19 04:26:20,806.806 INFO    ] 200
[2026-06-19 04:26:20,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:20,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:26:20,864.864 INFO    ] No update needed
[2026-06-19 04:26:20,867.867 INFO    ] Checking for camera pi updates...
[2026-06-19 04:26:20,904.904 INFO    ] 200
[2026-06-19 04:26:20,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:20,953.953 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:26:21,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:26:21,003.003 INFO    ] No camera update needed
[2026-06-19 04:26:21,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:26:21,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:26:21,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:26:21,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:26:23,059.059 INFO    ] ================================================
[2026-06-19 04:26:23,075.075 INFO    ] Launching Daemon at Fri Jun 19 04:26:23 IST 2026
[2026-06-19 04:26:23,086.086 INFO    ] ================================================
[2026-06-19 04:26:23,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:26:23
[2026-06-19 04:26:24,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:26:24,494.494 INFO    ] Initializing speech engine...
[2026-06-19 04:26:24,503.503 INFO    ] 2026-06-19 04:26:24
[2026-06-19 04:26:24,795.795 INFO    ] 2026-06-19 04:26:24
[2026-06-19 04:26:24,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:26:25,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:26:25,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:26:25,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:26:25,201.201 INFO    ] time= 19/06/2026 04:26:25
[2026-06-19 04:26:25,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:26:25,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:26:25,310.310 INFO    ] No existing commands found in stream
[2026-06-19 04:26:30,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:26:30,326.326 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 04:26:32,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:26:32,753.753 INFO    ] Checking for system updates...
[2026-06-19 04:26:32,790.790 INFO    ] 200
[2026-06-19 04:26:32,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:32,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:26:32,849.849 INFO    ] No update needed
[2026-06-19 04:26:32,851.851 INFO    ] Checking for camera pi updates...
[2026-06-19 04:26:32,886.886 INFO    ] 200
[2026-06-19 04:26:32,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:32,934.934 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:26:32,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:26:32,980.980 INFO    ] No camera update needed
[2026-06-19 04:26:32,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:26:32,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:26:32,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:26:32,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:26:35,036.036 INFO    ] ================================================
[2026-06-19 04:26:35,052.052 INFO    ] Launching Daemon at Fri Jun 19 04:26:35 IST 2026
[2026-06-19 04:26:35,063.063 INFO    ] ================================================
[2026-06-19 04:26:35,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:26:35
[2026-06-19 04:26:36,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:26:36,476.476 INFO    ] Initializing speech engine...
[2026-06-19 04:26:36,491.491 INFO    ] 2026-06-19 04:26:36
[2026-06-19 04:26:36,787.787 INFO    ] 2026-06-19 04:26:36
[2026-06-19 04:26:36,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:26:36,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:26:36,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:26:37,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:26:37,140.140 INFO    ] time= 19/06/2026 04:26:37
[2026-06-19 04:26:37,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:26:37,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:26:37,287.287 INFO    ] No existing commands found in stream
[2026-06-19 04:26:42,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:26:42,302.302 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 04:26:43,370.370 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:26:43,373.373 INFO    ] Checking for system updates...
[2026-06-19 04:26:43,413.413 INFO    ] 200
[2026-06-19 04:26:43,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:43,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:26:43,477.477 INFO    ] No update needed
[2026-06-19 04:26:43,479.479 INFO    ] Checking for camera pi updates...
[2026-06-19 04:26:43,512.512 INFO    ] 200
[2026-06-19 04:26:43,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:43,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:26:43,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:26:43,603.603 INFO    ] No camera update needed
[2026-06-19 04:26:43,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:26:43,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:26:43,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:26:43,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:26:45,659.659 INFO    ] ================================================
[2026-06-19 04:26:45,675.675 INFO    ] Launching Daemon at Fri Jun 19 04:26:45 IST 2026
[2026-06-19 04:26:45,686.686 INFO    ] ================================================
[2026-06-19 04:26:46,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:26:46
[2026-06-19 04:26:46,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:26:47,093.093 INFO    ] Initializing speech engine...
[2026-06-19 04:26:47,101.101 INFO    ] 2026-06-19 04:26:47
[2026-06-19 04:26:47,393.393 INFO    ] 2026-06-19 04:26:47
[2026-06-19 04:26:47,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:26:47,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:26:47,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:26:47,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:26:47,769.769 INFO    ] time= 19/06/2026 04:26:47
[2026-06-19 04:26:47,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:26:47,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:26:47,896.896 INFO    ] No existing commands found in stream
[2026-06-19 04:26:52,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:26:52,910.910 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 04:26:54,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:26:54,045.045 INFO    ] Checking for system updates...
[2026-06-19 04:26:54,085.085 INFO    ] 200
[2026-06-19 04:26:54,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:54,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:26:54,148.148 INFO    ] No update needed
[2026-06-19 04:26:54,151.151 INFO    ] Checking for camera pi updates...
[2026-06-19 04:26:54,184.184 INFO    ] 200
[2026-06-19 04:26:54,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:26:54,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:26:54,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:26:54,275.275 INFO    ] No camera update needed
[2026-06-19 04:26:54,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:26:54,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:26:54,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:26:54,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:26:56,331.331 INFO    ] ================================================
[2026-06-19 04:26:56,347.347 INFO    ] Launching Daemon at Fri Jun 19 04:26:56 IST 2026
[2026-06-19 04:26:56,358.358 INFO    ] ================================================
[2026-06-19 04:26:57,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:26:57
[2026-06-19 04:26:57,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:26:57,906.906 INFO    ] Initializing speech engine...
[2026-06-19 04:26:57,915.915 INFO    ] 2026-06-19 04:26:57
[2026-06-19 04:26:58,166.166 INFO    ] 2026-06-19 04:26:58
[2026-06-19 04:26:58,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:26:58,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:26:58,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:26:58,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:26:58,651.651 INFO    ] time= 19/06/2026 04:26:58
[2026-06-19 04:26:58,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:26:58,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:26:58,850.850 INFO    ] No existing commands found in stream
[2026-06-19 04:27:03,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:27:03,880.880 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 04:27:05,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:27:05,818.818 INFO    ] Checking for system updates...
[2026-06-19 04:27:05,855.855 INFO    ] 200
[2026-06-19 04:27:05,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:05,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:27:05,914.914 INFO    ] No update needed
[2026-06-19 04:27:05,917.917 INFO    ] Checking for camera pi updates...
[2026-06-19 04:27:05,958.958 INFO    ] 200
[2026-06-19 04:27:05,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:06,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:27:06,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:27:06,166.166 INFO    ] No camera update needed
[2026-06-19 04:27:06,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:27:06,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:27:06,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:27:06,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:27:08,223.223 INFO    ] ================================================
[2026-06-19 04:27:08,239.239 INFO    ] Launching Daemon at Fri Jun 19 04:27:08 IST 2026
[2026-06-19 04:27:08,252.252 INFO    ] ================================================
[2026-06-19 04:27:08,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:27:08
[2026-06-19 04:27:09,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:27:09,703.703 INFO    ] Initializing speech engine...
[2026-06-19 04:27:09,718.718 INFO    ] 2026-06-19 04:27:09
[2026-06-19 04:27:10,008.008 INFO    ] 2026-06-19 04:27:09
[2026-06-19 04:27:10,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:27:10,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:27:10,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:27:10,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:27:10,390.390 INFO    ] time= 19/06/2026 04:27:10
[2026-06-19 04:27:10,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:27:10,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:27:10,515.515 INFO    ] No existing commands found in stream
[2026-06-19 04:27:15,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:27:15,530.530 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 04:27:16,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:27:16,469.469 INFO    ] Checking for system updates...
[2026-06-19 04:27:16,508.508 INFO    ] 200
[2026-06-19 04:27:16,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:16,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:27:16,566.566 INFO    ] No update needed
[2026-06-19 04:27:16,568.568 INFO    ] Checking for camera pi updates...
[2026-06-19 04:27:16,602.602 INFO    ] 200
[2026-06-19 04:27:16,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:16,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:27:16,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:27:16,688.688 INFO    ] No camera update needed
[2026-06-19 04:27:16,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:27:16,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:27:16,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:27:16,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:27:18,744.744 INFO    ] ================================================
[2026-06-19 04:27:18,759.759 INFO    ] Launching Daemon at Fri Jun 19 04:27:18 IST 2026
[2026-06-19 04:27:18,771.771 INFO    ] ================================================
[2026-06-19 04:27:19,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:27:19
[2026-06-19 04:27:19,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:27:20,223.223 INFO    ] Initializing speech engine...
[2026-06-19 04:27:20,240.240 INFO    ] 2026-06-19 04:27:20
[2026-06-19 04:27:20,526.526 INFO    ] 2026-06-19 04:27:20
[2026-06-19 04:27:20,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:27:20,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:27:20,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:27:20,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:27:20,944.944 INFO    ] time= 19/06/2026 04:27:20
[2026-06-19 04:27:20,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:27:20,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:27:21,029.029 INFO    ] No existing commands found in stream
[2026-06-19 04:27:26,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:27:26,046.046 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 04:27:27,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:27:27,583.583 INFO    ] Checking for system updates...
[2026-06-19 04:27:27,627.627 INFO    ] 200
[2026-06-19 04:27:27,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:27,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:27:27,685.685 INFO    ] No update needed
[2026-06-19 04:27:27,687.687 INFO    ] Checking for camera pi updates...
[2026-06-19 04:27:27,725.725 INFO    ] 200
[2026-06-19 04:27:27,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:27,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:27:27,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:27:27,827.827 INFO    ] No camera update needed
[2026-06-19 04:27:27,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:27:27,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:27:27,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:27:27,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:27:29,883.883 INFO    ] ================================================
[2026-06-19 04:27:29,899.899 INFO    ] Launching Daemon at Fri Jun 19 04:27:29 IST 2026
[2026-06-19 04:27:29,909.909 INFO    ] ================================================
[2026-06-19 04:27:30,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:27:30
[2026-06-19 04:27:31,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:27:31,562.562 INFO    ] Initializing speech engine...
[2026-06-19 04:27:31,569.569 INFO    ] 2026-06-19 04:27:31
[2026-06-19 04:27:31,872.872 INFO    ] 2026-06-19 04:27:31
[2026-06-19 04:27:31,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:27:32,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:27:32,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:27:32,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:27:32,345.345 INFO    ] time= 19/06/2026 04:27:32
[2026-06-19 04:27:32,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:27:32,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:27:32,483.483 INFO    ] No existing commands found in stream
[2026-06-19 04:27:37,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:27:37,497.497 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 04:27:39,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:27:39,358.358 INFO    ] Checking for system updates...
[2026-06-19 04:27:39,394.394 INFO    ] 200
[2026-06-19 04:27:39,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:39,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:27:39,451.451 INFO    ] No update needed
[2026-06-19 04:27:39,453.453 INFO    ] Checking for camera pi updates...
[2026-06-19 04:27:39,487.487 INFO    ] 200
[2026-06-19 04:27:39,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:39,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:27:39,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:27:39,588.588 INFO    ] No camera update needed
[2026-06-19 04:27:39,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:27:39,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:27:39,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:27:39,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:27:41,643.643 INFO    ] ================================================
[2026-06-19 04:27:41,659.659 INFO    ] Launching Daemon at Fri Jun 19 04:27:41 IST 2026
[2026-06-19 04:27:41,670.670 INFO    ] ================================================
[2026-06-19 04:27:42,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:27:42
[2026-06-19 04:27:42,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:27:43,113.113 INFO    ] Initializing speech engine...
[2026-06-19 04:27:43,129.129 INFO    ] 2026-06-19 04:27:43
[2026-06-19 04:27:43,414.414 INFO    ] 2026-06-19 04:27:43
[2026-06-19 04:27:43,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:27:43,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:27:43,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:27:43,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:27:43,793.793 INFO    ] time= 19/06/2026 04:27:43
[2026-06-19 04:27:43,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:27:43,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:27:43,916.916 INFO    ] No existing commands found in stream
[2026-06-19 04:27:48,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:27:48,931.931 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 04:27:51,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:27:51,025.025 INFO    ] Checking for system updates...
[2026-06-19 04:27:51,066.066 INFO    ] 200
[2026-06-19 04:27:51,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:51,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:27:51,132.132 INFO    ] No update needed
[2026-06-19 04:27:51,135.135 INFO    ] Checking for camera pi updates...
[2026-06-19 04:27:51,170.170 INFO    ] 200
[2026-06-19 04:27:51,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:27:51,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:27:51,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:27:51,258.258 INFO    ] No camera update needed
[2026-06-19 04:27:51,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:27:51,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:27:51,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:27:51,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:27:53,318.318 INFO    ] ================================================
[2026-06-19 04:27:53,333.333 INFO    ] Launching Daemon at Fri Jun 19 04:27:53 IST 2026
[2026-06-19 04:27:53,344.344 INFO    ] ================================================
[2026-06-19 04:27:53,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:27:53
[2026-06-19 04:27:54,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:27:54,961.961 INFO    ] Initializing speech engine...
[2026-06-19 04:27:54,972.972 INFO    ] 2026-06-19 04:27:54
[2026-06-19 04:27:55,262.262 INFO    ] 2026-06-19 04:27:55
[2026-06-19 04:27:55,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:27:55,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:27:55,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:27:55,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:27:55,727.727 INFO    ] time= 19/06/2026 04:27:55
[2026-06-19 04:27:55,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:27:55,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:27:55,877.877 INFO    ] No existing commands found in stream
[2026-06-19 04:28:00,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:28:00,893.893 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 04:28:01,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:28:01,447.447 INFO    ] Checking for system updates...
[2026-06-19 04:28:01,528.528 INFO    ] 200
[2026-06-19 04:28:01,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:01,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:28:01,623.623 INFO    ] No update needed
[2026-06-19 04:28:01,626.626 INFO    ] Checking for camera pi updates...
[2026-06-19 04:28:01,672.672 INFO    ] 200
[2026-06-19 04:28:01,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:01,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:28:01,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:28:01,802.802 INFO    ] No camera update needed
[2026-06-19 04:28:01,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:28:01,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:28:01,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:28:01,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:28:03,869.869 INFO    ] ================================================
[2026-06-19 04:28:03,884.884 INFO    ] Launching Daemon at Fri Jun 19 04:28:03 IST 2026
[2026-06-19 04:28:03,894.894 INFO    ] ================================================
[2026-06-19 04:28:04,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:28:04
[2026-06-19 04:28:05,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:28:05,313.313 INFO    ] Initializing speech engine...
[2026-06-19 04:28:05,322.322 INFO    ] 2026-06-19 04:28:05
[2026-06-19 04:28:05,617.617 INFO    ] 2026-06-19 04:28:05
[2026-06-19 04:28:05,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:28:05,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:28:05,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:28:06,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:28:06,015.015 INFO    ] time= 19/06/2026 04:28:06
[2026-06-19 04:28:06,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:28:06,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:28:06,143.143 INFO    ] No existing commands found in stream
[2026-06-19 04:28:11,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:28:11,156.156 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 04:28:15,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:28:15,006.006 INFO    ] Checking for system updates...
[2026-06-19 04:28:15,042.042 INFO    ] 200
[2026-06-19 04:28:15,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:15,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:28:15,099.099 INFO    ] No update needed
[2026-06-19 04:28:15,102.102 INFO    ] Checking for camera pi updates...
[2026-06-19 04:28:15,140.140 INFO    ] 200
[2026-06-19 04:28:15,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:15,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:28:15,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:28:15,226.226 INFO    ] No camera update needed
[2026-06-19 04:28:15,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:28:15,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:28:15,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:28:15,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:28:17,282.282 INFO    ] ================================================
[2026-06-19 04:28:17,297.297 INFO    ] Launching Daemon at Fri Jun 19 04:28:17 IST 2026
[2026-06-19 04:28:17,308.308 INFO    ] ================================================
[2026-06-19 04:28:17,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:28:17
[2026-06-19 04:28:18,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:28:18,920.920 INFO    ] Initializing speech engine...
[2026-06-19 04:28:18,924.924 INFO    ] 2026-06-19 04:28:18
[2026-06-19 04:28:19,226.226 INFO    ] 2026-06-19 04:28:19
[2026-06-19 04:28:19,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:28:19,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:28:19,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:28:19,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:28:19,584.584 INFO    ] time= 19/06/2026 04:28:19
[2026-06-19 04:28:19,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:28:19,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:28:19,666.666 INFO    ] No existing commands found in stream
[2026-06-19 04:28:24,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:28:24,680.680 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 04:28:28,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:28:28,073.073 INFO    ] Checking for system updates...
[2026-06-19 04:28:28,109.109 INFO    ] 200
[2026-06-19 04:28:28,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:28,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:28:28,167.167 INFO    ] No update needed
[2026-06-19 04:28:28,169.169 INFO    ] Checking for camera pi updates...
[2026-06-19 04:28:28,202.202 INFO    ] 200
[2026-06-19 04:28:28,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:28,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:28:28,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:28:28,287.287 INFO    ] No camera update needed
[2026-06-19 04:28:28,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:28:28,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:28:28,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:28:28,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:28:30,342.342 INFO    ] ================================================
[2026-06-19 04:28:30,360.360 INFO    ] Launching Daemon at Fri Jun 19 04:28:30 IST 2026
[2026-06-19 04:28:30,372.372 INFO    ] ================================================
[2026-06-19 04:28:30,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:28:30
[2026-06-19 04:28:31,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:28:31,887.887 INFO    ] Initializing speech engine...
[2026-06-19 04:28:31,893.893 INFO    ] 2026-06-19 04:28:31
[2026-06-19 04:28:32,170.170 INFO    ] 2026-06-19 04:28:32
[2026-06-19 04:28:32,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:28:32,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:28:32,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:28:32,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:28:32,684.684 INFO    ] time= 19/06/2026 04:28:32
[2026-06-19 04:28:32,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:28:32,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:28:32,890.890 INFO    ] No existing commands found in stream
[2026-06-19 04:28:37,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:28:37,923.923 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 04:28:40,616.616 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:28:40,619.619 INFO    ] Checking for system updates...
[2026-06-19 04:28:40,656.656 INFO    ] 200
[2026-06-19 04:28:40,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:40,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:28:40,715.715 INFO    ] No update needed
[2026-06-19 04:28:40,718.718 INFO    ] Checking for camera pi updates...
[2026-06-19 04:28:40,752.752 INFO    ] 200
[2026-06-19 04:28:40,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:40,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:28:40,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:28:40,846.846 INFO    ] No camera update needed
[2026-06-19 04:28:40,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:28:40,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:28:40,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:28:40,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:28:42,904.904 INFO    ] ================================================
[2026-06-19 04:28:42,919.919 INFO    ] Launching Daemon at Fri Jun 19 04:28:42 IST 2026
[2026-06-19 04:28:42,930.930 INFO    ] ================================================
[2026-06-19 04:28:43,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:28:43
[2026-06-19 04:28:44,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:28:44,375.375 INFO    ] Initializing speech engine...
[2026-06-19 04:28:44,393.393 INFO    ] 2026-06-19 04:28:44
[2026-06-19 04:28:44,647.647 INFO    ] 2026-06-19 04:28:44
[2026-06-19 04:28:44,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:28:44,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:28:44,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:28:45,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:28:45,027.027 INFO    ] time= 19/06/2026 04:28:45
[2026-06-19 04:28:45,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:28:45,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:28:45,222.222 INFO    ] No existing commands found in stream
[2026-06-19 04:28:50,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:28:50,240.240 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 04:28:51,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:28:51,300.300 INFO    ] Checking for system updates...
[2026-06-19 04:28:51,336.336 INFO    ] 200
[2026-06-19 04:28:51,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:51,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:28:51,394.394 INFO    ] No update needed
[2026-06-19 04:28:51,396.396 INFO    ] Checking for camera pi updates...
[2026-06-19 04:28:51,430.430 INFO    ] 200
[2026-06-19 04:28:51,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:28:51,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:28:51,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:28:51,527.527 INFO    ] No camera update needed
[2026-06-19 04:28:51,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:28:51,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:28:51,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:28:51,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:28:53,583.583 INFO    ] ================================================
[2026-06-19 04:28:53,600.600 INFO    ] Launching Daemon at Fri Jun 19 04:28:53 IST 2026
[2026-06-19 04:28:53,614.614 INFO    ] ================================================
[2026-06-19 04:28:54,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:28:54
[2026-06-19 04:28:54,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:28:55,208.208 INFO    ] Initializing speech engine...
[2026-06-19 04:28:55,215.215 INFO    ] 2026-06-19 04:28:55
[2026-06-19 04:28:55,486.486 INFO    ] 2026-06-19 04:28:55
[2026-06-19 04:28:55,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:28:55,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:28:55,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:28:55,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:28:55,957.957 INFO    ] time= 19/06/2026 04:28:55
[2026-06-19 04:28:56,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:28:56,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:28:56,168.168 INFO    ] No existing commands found in stream
[2026-06-19 04:29:01,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:29:01,203.203 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 04:29:05,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:29:05,411.411 INFO    ] Checking for system updates...
[2026-06-19 04:29:05,448.448 INFO    ] 200
[2026-06-19 04:29:05,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:05,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:29:05,506.506 INFO    ] No update needed
[2026-06-19 04:29:05,508.508 INFO    ] Checking for camera pi updates...
[2026-06-19 04:29:05,545.545 INFO    ] 200
[2026-06-19 04:29:05,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:05,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:29:05,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:29:05,643.643 INFO    ] No camera update needed
[2026-06-19 04:29:05,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:29:05,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:29:05,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:29:05,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:29:07,701.701 INFO    ] ================================================
[2026-06-19 04:29:07,717.717 INFO    ] Launching Daemon at Fri Jun 19 04:29:07 IST 2026
[2026-06-19 04:29:07,727.727 INFO    ] ================================================
[2026-06-19 04:29:08,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:29:08
[2026-06-19 04:29:08,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:29:09,145.145 INFO    ] Initializing speech engine...
[2026-06-19 04:29:09,170.170 INFO    ] 2026-06-19 04:29:09
[2026-06-19 04:29:09,446.446 INFO    ] 2026-06-19 04:29:09
[2026-06-19 04:29:09,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:29:09,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:29:09,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:29:09,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:29:09,830.830 INFO    ] time= 19/06/2026 04:29:09
[2026-06-19 04:29:09,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:29:09,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:29:09,957.957 INFO    ] No existing commands found in stream
[2026-06-19 04:29:14,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:29:14,970.970 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 04:29:17,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:29:17,585.585 INFO    ] Checking for system updates...
[2026-06-19 04:29:17,621.621 INFO    ] 200
[2026-06-19 04:29:17,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:17,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:29:17,679.679 INFO    ] No update needed
[2026-06-19 04:29:17,681.681 INFO    ] Checking for camera pi updates...
[2026-06-19 04:29:17,719.719 INFO    ] 200
[2026-06-19 04:29:17,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:17,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:29:17,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:29:17,909.909 INFO    ] No camera update needed
[2026-06-19 04:29:17,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:29:17,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:29:17,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:29:17,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:29:19,964.964 INFO    ] ================================================
[2026-06-19 04:29:19,979.979 INFO    ] Launching Daemon at Fri Jun 19 04:29:19 IST 2026
[2026-06-19 04:29:19,989.989 INFO    ] ================================================
[2026-06-19 04:29:20,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:29:20
[2026-06-19 04:29:21,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:29:21,386.386 INFO    ] Initializing speech engine...
[2026-06-19 04:29:21,395.395 INFO    ] 2026-06-19 04:29:21
[2026-06-19 04:29:21,670.670 INFO    ] 2026-06-19 04:29:21
[2026-06-19 04:29:21,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:29:21,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:29:21,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:29:22,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:29:22,051.051 INFO    ] time= 19/06/2026 04:29:22
[2026-06-19 04:29:22,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:29:22,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:29:22,223.223 INFO    ] No existing commands found in stream
[2026-06-19 04:29:27,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:29:27,256.256 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 04:29:30,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:29:30,198.198 INFO    ] Checking for system updates...
[2026-06-19 04:29:30,235.235 INFO    ] 200
[2026-06-19 04:29:30,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:30,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:29:30,292.292 INFO    ] No update needed
[2026-06-19 04:29:30,295.295 INFO    ] Checking for camera pi updates...
[2026-06-19 04:29:30,330.330 INFO    ] 200
[2026-06-19 04:29:30,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:30,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:29:30,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:29:30,422.422 INFO    ] No camera update needed
[2026-06-19 04:29:30,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:29:30,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:29:30,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:29:30,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:29:32,479.479 INFO    ] ================================================
[2026-06-19 04:29:32,495.495 INFO    ] Launching Daemon at Fri Jun 19 04:29:32 IST 2026
[2026-06-19 04:29:32,506.506 INFO    ] ================================================
[2026-06-19 04:29:33,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:29:33
[2026-06-19 04:29:33,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:29:34,240.240 INFO    ] Initializing speech engine...
[2026-06-19 04:29:34,250.250 INFO    ] 2026-06-19 04:29:34
[2026-06-19 04:29:34,559.559 INFO    ] 2026-06-19 04:29:34
[2026-06-19 04:29:34,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:29:34,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:29:34,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:29:35,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:29:35,069.069 INFO    ] time= 19/06/2026 04:29:35
[2026-06-19 04:29:35,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:29:35,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:29:35,233.233 INFO    ] No existing commands found in stream
[2026-06-19 04:29:40,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:29:40,267.267 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 04:29:41,953.953 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:29:41,956.956 INFO    ] Checking for system updates...
[2026-06-19 04:29:41,998.998 INFO    ] 200
[2026-06-19 04:29:42,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:42,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:29:42,055.055 INFO    ] No update needed
[2026-06-19 04:29:42,058.058 INFO    ] Checking for camera pi updates...
[2026-06-19 04:29:42,091.091 INFO    ] 200
[2026-06-19 04:29:42,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:42,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:29:42,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:29:42,183.183 INFO    ] No camera update needed
[2026-06-19 04:29:42,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:29:42,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:29:42,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:29:42,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:29:44,238.238 INFO    ] ================================================
[2026-06-19 04:29:44,253.253 INFO    ] Launching Daemon at Fri Jun 19 04:29:44 IST 2026
[2026-06-19 04:29:44,264.264 INFO    ] ================================================
[2026-06-19 04:29:44,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:29:44
[2026-06-19 04:29:45,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:29:45,685.685 INFO    ] Initializing speech engine...
[2026-06-19 04:29:45,694.694 INFO    ] 2026-06-19 04:29:45
[2026-06-19 04:29:45,946.946 INFO    ] 2026-06-19 04:29:45
[2026-06-19 04:29:45,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:29:46,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:29:46,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:29:46,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:29:46,413.413 INFO    ] time= 19/06/2026 04:29:46
[2026-06-19 04:29:46,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:29:46,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:29:46,594.594 INFO    ] No existing commands found in stream
[2026-06-19 04:29:51,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:29:51,627.627 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 04:29:52,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:29:52,103.103 INFO    ] Checking for system updates...
[2026-06-19 04:29:52,140.140 INFO    ] 200
[2026-06-19 04:29:52,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:52,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:29:52,198.198 INFO    ] No update needed
[2026-06-19 04:29:52,201.201 INFO    ] Checking for camera pi updates...
[2026-06-19 04:29:52,238.238 INFO    ] 200
[2026-06-19 04:29:52,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:29:52,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:29:52,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:29:52,330.330 INFO    ] No camera update needed
[2026-06-19 04:29:52,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:29:52,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:29:52,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:29:52,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:29:54,384.384 INFO    ] ================================================
[2026-06-19 04:29:54,399.399 INFO    ] Launching Daemon at Fri Jun 19 04:29:54 IST 2026
[2026-06-19 04:29:54,410.410 INFO    ] ================================================
[2026-06-19 04:29:54,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:29:54
[2026-06-19 04:29:55,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:29:55,870.870 INFO    ] Initializing speech engine...
[2026-06-19 04:29:55,879.879 INFO    ] 2026-06-19 04:29:55
[2026-06-19 04:29:56,138.138 INFO    ] 2026-06-19 04:29:56
[2026-06-19 04:29:56,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:29:56,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:29:56,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:29:56,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:29:56,596.596 INFO    ] time= 19/06/2026 04:29:56
[2026-06-19 04:29:56,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:29:56,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:29:56,748.748 INFO    ] No existing commands found in stream
[2026-06-19 04:30:01,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:30:01,763.763 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 04:30:02,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:30:02,626.626 INFO    ] Checking for system updates...
[2026-06-19 04:30:02,804.804 INFO    ] 200
[2026-06-19 04:30:02,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:02,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:30:02,932.932 INFO    ] No update needed
[2026-06-19 04:30:02,946.946 INFO    ] Checking for camera pi updates...
[2026-06-19 04:30:03,019.019 INFO    ] 200
[2026-06-19 04:30:03,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:03,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:30:03,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:30:03,117.117 INFO    ] No camera update needed
[2026-06-19 04:30:03,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:30:03,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:30:03,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:30:03,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:30:05,183.183 INFO    ] ================================================
[2026-06-19 04:30:05,199.199 INFO    ] Launching Daemon at Fri Jun 19 04:30:05 IST 2026
[2026-06-19 04:30:05,210.210 INFO    ] ================================================
[2026-06-19 04:30:05,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:30:05
[2026-06-19 04:30:06,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:30:06,679.679 INFO    ] Initializing speech engine...
[2026-06-19 04:30:06,689.689 INFO    ] 2026-06-19 04:30:06
[2026-06-19 04:30:06,937.937 INFO    ] 2026-06-19 04:30:06
[2026-06-19 04:30:06,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:30:07,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:30:07,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:30:07,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:30:07,319.319 INFO    ] time= 19/06/2026 04:30:07
[2026-06-19 04:30:07,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:30:07,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:30:07,411.411 INFO    ] No existing commands found in stream
[2026-06-19 04:30:12,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:30:12,440.440 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 04:30:15,034.034 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:30:15,036.036 INFO    ] Checking for system updates...
[2026-06-19 04:30:15,073.073 INFO    ] 200
[2026-06-19 04:30:15,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:15,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:30:15,133.133 INFO    ] No update needed
[2026-06-19 04:30:15,136.136 INFO    ] Checking for camera pi updates...
[2026-06-19 04:30:15,173.173 INFO    ] 200
[2026-06-19 04:30:15,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:15,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:30:15,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:30:15,269.269 INFO    ] No camera update needed
[2026-06-19 04:30:15,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:30:15,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:30:15,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:30:15,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:30:17,327.327 INFO    ] ================================================
[2026-06-19 04:30:17,342.342 INFO    ] Launching Daemon at Fri Jun 19 04:30:17 IST 2026
[2026-06-19 04:30:17,353.353 INFO    ] ================================================
[2026-06-19 04:30:17,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:30:17
[2026-06-19 04:30:18,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:30:18,811.811 INFO    ] Initializing speech engine...
[2026-06-19 04:30:18,819.819 INFO    ] 2026-06-19 04:30:18
[2026-06-19 04:30:19,081.081 INFO    ] 2026-06-19 04:30:19
[2026-06-19 04:30:19,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:30:19,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:30:19,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:30:19,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:30:19,464.464 INFO    ] time= 19/06/2026 04:30:19
[2026-06-19 04:30:19,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:30:19,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:30:19,664.664 INFO    ] No existing commands found in stream
[2026-06-19 04:30:24,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:30:24,681.681 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 04:30:27,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:30:27,300.300 INFO    ] Checking for system updates...
[2026-06-19 04:30:27,340.340 INFO    ] 200
[2026-06-19 04:30:27,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:27,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:30:27,403.403 INFO    ] No update needed
[2026-06-19 04:30:27,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 04:30:27,451.451 INFO    ] 200
[2026-06-19 04:30:27,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:27,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:30:27,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:30:27,554.554 INFO    ] No camera update needed
[2026-06-19 04:30:27,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:30:27,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:30:27,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:30:27,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:30:29,621.621 INFO    ] ================================================
[2026-06-19 04:30:29,638.638 INFO    ] Launching Daemon at Fri Jun 19 04:30:29 IST 2026
[2026-06-19 04:30:29,649.649 INFO    ] ================================================
[2026-06-19 04:30:30,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:30:30
[2026-06-19 04:30:30,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:30:31,170.170 INFO    ] Initializing speech engine...
[2026-06-19 04:30:31,181.181 INFO    ] 2026-06-19 04:30:31
[2026-06-19 04:30:31,453.453 INFO    ] 2026-06-19 04:30:31
[2026-06-19 04:30:31,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:30:31,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:30:31,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:30:31,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:30:31,837.837 INFO    ] time= 19/06/2026 04:30:31
[2026-06-19 04:30:31,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:30:31,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:30:31,967.967 INFO    ] No existing commands found in stream
[2026-06-19 04:30:36,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:30:36,984.984 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 04:30:38,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:30:38,720.720 INFO    ] Checking for system updates...
[2026-06-19 04:30:38,760.760 INFO    ] 200
[2026-06-19 04:30:38,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:38,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:30:38,823.823 INFO    ] No update needed
[2026-06-19 04:30:38,826.826 INFO    ] Checking for camera pi updates...
[2026-06-19 04:30:38,860.860 INFO    ] 200
[2026-06-19 04:30:38,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:38,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:30:38,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:30:38,954.954 INFO    ] No camera update needed
[2026-06-19 04:30:38,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:30:38,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:30:38,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:30:38,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:30:41,011.011 INFO    ] ================================================
[2026-06-19 04:30:41,026.026 INFO    ] Launching Daemon at Fri Jun 19 04:30:41 IST 2026
[2026-06-19 04:30:41,037.037 INFO    ] ================================================
[2026-06-19 04:30:41,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:30:41
[2026-06-19 04:30:42,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:30:42,508.508 INFO    ] Initializing speech engine...
[2026-06-19 04:30:42,517.517 INFO    ] 2026-06-19 04:30:42
[2026-06-19 04:30:42,766.766 INFO    ] 2026-06-19 04:30:42
[2026-06-19 04:30:42,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:30:43,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:30:43,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:30:43,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:30:43,250.250 INFO    ] time= 19/06/2026 04:30:43
[2026-06-19 04:30:43,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:30:43,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:30:43,462.462 INFO    ] No existing commands found in stream
[2026-06-19 04:30:48,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:30:48,492.492 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 04:30:51,054.054 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:30:51,057.057 INFO    ] Checking for system updates...
[2026-06-19 04:30:51,097.097 INFO    ] 200
[2026-06-19 04:30:51,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:51,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:30:51,161.161 INFO    ] No update needed
[2026-06-19 04:30:51,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 04:30:51,199.199 INFO    ] 200
[2026-06-19 04:30:51,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:30:51,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:30:51,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:30:51,291.291 INFO    ] No camera update needed
[2026-06-19 04:30:51,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:30:51,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:30:51,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:30:51,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:30:53,351.351 INFO    ] ================================================
[2026-06-19 04:30:53,366.366 INFO    ] Launching Daemon at Fri Jun 19 04:30:53 IST 2026
[2026-06-19 04:30:53,377.377 INFO    ] ================================================
[2026-06-19 04:30:54,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:30:54
[2026-06-19 04:30:54,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:30:54,997.997 INFO    ] Initializing speech engine...
[2026-06-19 04:30:55,010.010 INFO    ] 2026-06-19 04:30:54
[2026-06-19 04:30:55,291.291 INFO    ] 2026-06-19 04:30:55
[2026-06-19 04:30:55,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:30:55,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:30:55,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:30:55,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:30:55,831.831 INFO    ] time= 19/06/2026 04:30:55
[2026-06-19 04:30:55,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:30:55,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:30:55,990.990 INFO    ] No existing commands found in stream
[2026-06-19 04:31:01,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:31:01,020.020 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 04:31:02,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:31:02,086.086 INFO    ] Checking for system updates...
[2026-06-19 04:31:02,132.132 INFO    ] 200
[2026-06-19 04:31:02,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:02,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:31:02,212.212 INFO    ] No update needed
[2026-06-19 04:31:02,226.226 INFO    ] Checking for camera pi updates...
[2026-06-19 04:31:02,275.275 INFO    ] 200
[2026-06-19 04:31:02,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:02,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:31:02,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:31:02,370.370 INFO    ] No camera update needed
[2026-06-19 04:31:02,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:31:02,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:31:02,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:31:02,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:31:04,434.434 INFO    ] ================================================
[2026-06-19 04:31:04,450.450 INFO    ] Launching Daemon at Fri Jun 19 04:31:04 IST 2026
[2026-06-19 04:31:04,460.460 INFO    ] ================================================
[2026-06-19 04:31:05,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:31:05
[2026-06-19 04:31:05,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:31:06,012.012 INFO    ] Initializing speech engine...
[2026-06-19 04:31:06,025.025 INFO    ] 2026-06-19 04:31:06
[2026-06-19 04:31:06,303.303 INFO    ] 2026-06-19 04:31:06
[2026-06-19 04:31:06,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:31:06,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:31:06,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:31:06,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:31:06,812.812 INFO    ] time= 19/06/2026 04:31:06
[2026-06-19 04:31:06,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:31:06,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:31:07,002.002 INFO    ] No existing commands found in stream
[2026-06-19 04:31:12,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:31:12,038.038 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 04:31:14,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:31:14,790.790 INFO    ] Checking for system updates...
[2026-06-19 04:31:14,829.829 INFO    ] 200
[2026-06-19 04:31:14,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:14,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:31:14,889.889 INFO    ] No update needed
[2026-06-19 04:31:14,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 04:31:14,926.926 INFO    ] 200
[2026-06-19 04:31:14,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:14,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:31:15,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:31:15,022.022 INFO    ] No camera update needed
[2026-06-19 04:31:15,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:31:15,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:31:15,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:31:15,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:31:17,081.081 INFO    ] ================================================
[2026-06-19 04:31:17,096.096 INFO    ] Launching Daemon at Fri Jun 19 04:31:17 IST 2026
[2026-06-19 04:31:17,107.107 INFO    ] ================================================
[2026-06-19 04:31:17,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:31:17
[2026-06-19 04:31:18,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:31:18,532.532 INFO    ] Initializing speech engine...
[2026-06-19 04:31:18,541.541 INFO    ] 2026-06-19 04:31:18
[2026-06-19 04:31:18,788.788 INFO    ] 2026-06-19 04:31:18
[2026-06-19 04:31:18,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:31:19,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:31:19,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:31:19,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:31:19,265.265 INFO    ] time= 19/06/2026 04:31:19
[2026-06-19 04:31:19,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:31:19,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:31:19,441.441 INFO    ] No existing commands found in stream
[2026-06-19 04:31:24,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:31:24,470.470 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 04:31:26,480.480 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:31:26,483.483 INFO    ] Checking for system updates...
[2026-06-19 04:31:26,522.522 INFO    ] 200
[2026-06-19 04:31:26,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:26,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:31:26,582.582 INFO    ] No update needed
[2026-06-19 04:31:26,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 04:31:26,619.619 INFO    ] 200
[2026-06-19 04:31:26,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:26,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:31:26,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:31:26,799.799 INFO    ] No camera update needed
[2026-06-19 04:31:26,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:31:26,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:31:26,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:31:26,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:31:28,856.856 INFO    ] ================================================
[2026-06-19 04:31:28,871.871 INFO    ] Launching Daemon at Fri Jun 19 04:31:28 IST 2026
[2026-06-19 04:31:28,882.882 INFO    ] ================================================
[2026-06-19 04:31:29,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:31:29
[2026-06-19 04:31:30,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:31:30,305.305 INFO    ] Initializing speech engine...
[2026-06-19 04:31:30,324.324 INFO    ] 2026-06-19 04:31:30
[2026-06-19 04:31:30,576.576 INFO    ] 2026-06-19 04:31:30
[2026-06-19 04:31:30,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:31:30,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:31:30,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:31:30,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:31:30,953.953 INFO    ] time= 19/06/2026 04:31:30
[2026-06-19 04:31:30,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:31:31,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:31:31,126.126 INFO    ] No existing commands found in stream
[2026-06-19 04:31:36,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:31:36,154.154 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 04:31:40,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:31:40,260.260 INFO    ] Checking for system updates...
[2026-06-19 04:31:40,299.299 INFO    ] 200
[2026-06-19 04:31:40,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:40,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:31:40,362.362 INFO    ] No update needed
[2026-06-19 04:31:40,365.365 INFO    ] Checking for camera pi updates...
[2026-06-19 04:31:40,401.401 INFO    ] 200
[2026-06-19 04:31:40,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:40,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:31:40,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:31:40,499.499 INFO    ] No camera update needed
[2026-06-19 04:31:40,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:31:40,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:31:40,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:31:40,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:31:42,555.555 INFO    ] ================================================
[2026-06-19 04:31:42,570.570 INFO    ] Launching Daemon at Fri Jun 19 04:31:42 IST 2026
[2026-06-19 04:31:42,581.581 INFO    ] ================================================
[2026-06-19 04:31:43,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:31:43
[2026-06-19 04:31:43,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:31:44,034.034 INFO    ] Initializing speech engine...
[2026-06-19 04:31:44,040.040 INFO    ] 2026-06-19 04:31:44
[2026-06-19 04:31:44,334.334 INFO    ] 2026-06-19 04:31:44
[2026-06-19 04:31:44,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:31:44,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:31:44,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:31:44,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:31:44,720.720 INFO    ] time= 19/06/2026 04:31:44
[2026-06-19 04:31:44,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:31:44,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:31:44,843.843 INFO    ] No existing commands found in stream
[2026-06-19 04:31:49,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:31:49,859.859 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 04:31:53,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:31:53,657.657 INFO    ] Checking for system updates...
[2026-06-19 04:31:53,693.693 INFO    ] 200
[2026-06-19 04:31:53,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:53,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:31:53,751.751 INFO    ] No update needed
[2026-06-19 04:31:53,753.753 INFO    ] Checking for camera pi updates...
[2026-06-19 04:31:53,787.787 INFO    ] 200
[2026-06-19 04:31:53,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:31:53,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:31:53,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:31:53,877.877 INFO    ] No camera update needed
[2026-06-19 04:31:53,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:31:53,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:31:53,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:31:53,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:31:55,933.933 INFO    ] ================================================
[2026-06-19 04:31:55,949.949 INFO    ] Launching Daemon at Fri Jun 19 04:31:55 IST 2026
[2026-06-19 04:31:55,960.960 INFO    ] ================================================
[2026-06-19 04:31:56,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:31:56
[2026-06-19 04:31:57,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:31:57,390.390 INFO    ] Initializing speech engine...
[2026-06-19 04:31:57,395.395 INFO    ] 2026-06-19 04:31:57
[2026-06-19 04:31:57,644.644 INFO    ] 2026-06-19 04:31:57
[2026-06-19 04:31:57,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:31:57,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:31:57,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:31:57,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:31:58,001.001 INFO    ] time= 19/06/2026 04:31:57
[2026-06-19 04:31:58,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:31:58,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:31:58,098.098 INFO    ] No existing commands found in stream
[2026-06-19 04:32:03,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:32:03,110.110 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 04:32:05,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:32:05,685.685 INFO    ] Checking for system updates...
[2026-06-19 04:32:05,721.721 INFO    ] 200
[2026-06-19 04:32:05,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:05,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:32:05,788.788 INFO    ] No update needed
[2026-06-19 04:32:05,791.791 INFO    ] Checking for camera pi updates...
[2026-06-19 04:32:05,827.827 INFO    ] 200
[2026-06-19 04:32:05,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:05,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:32:05,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:32:05,918.918 INFO    ] No camera update needed
[2026-06-19 04:32:05,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:32:05,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:32:05,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:32:05,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:32:07,977.977 INFO    ] ================================================
[2026-06-19 04:32:07,993.993 INFO    ] Launching Daemon at Fri Jun 19 04:32:07 IST 2026
[2026-06-19 04:32:08,004.004 INFO    ] ================================================
[2026-06-19 04:32:08,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:32:08
[2026-06-19 04:32:09,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:32:09,629.629 INFO    ] Initializing speech engine...
[2026-06-19 04:32:09,643.643 INFO    ] 2026-06-19 04:32:09
[2026-06-19 04:32:09,927.927 INFO    ] 2026-06-19 04:32:09
[2026-06-19 04:32:09,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:32:10,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:32:10,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:32:10,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:32:10,389.389 INFO    ] time= 19/06/2026 04:32:10
[2026-06-19 04:32:10,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:32:10,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:32:10,542.542 INFO    ] No existing commands found in stream
[2026-06-19 04:32:15,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:32:15,559.559 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 04:32:18,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:32:18,642.642 INFO    ] Checking for system updates...
[2026-06-19 04:32:18,681.681 INFO    ] 200
[2026-06-19 04:32:18,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:18,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:32:18,746.746 INFO    ] No update needed
[2026-06-19 04:32:18,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 04:32:18,786.786 INFO    ] 200
[2026-06-19 04:32:18,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:18,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:32:18,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:32:18,879.879 INFO    ] No camera update needed
[2026-06-19 04:32:18,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:32:18,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:32:18,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:32:18,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:32:20,934.934 INFO    ] ================================================
[2026-06-19 04:32:20,950.950 INFO    ] Launching Daemon at Fri Jun 19 04:32:20 IST 2026
[2026-06-19 04:32:20,961.961 INFO    ] ================================================
[2026-06-19 04:32:21,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:32:21
[2026-06-19 04:32:22,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:32:22,421.421 INFO    ] Initializing speech engine...
[2026-06-19 04:32:22,430.430 INFO    ] 2026-06-19 04:32:22
[2026-06-19 04:32:22,679.679 INFO    ] 2026-06-19 04:32:22
[2026-06-19 04:32:22,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:32:22,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:32:22,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:32:23,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:32:23,085.085 INFO    ] time= 19/06/2026 04:32:23
[2026-06-19 04:32:23,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:32:23,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:32:23,238.238 INFO    ] No existing commands found in stream
[2026-06-19 04:32:28,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:32:28,261.261 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 04:32:29,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:32:29,059.059 INFO    ] Checking for system updates...
[2026-06-19 04:32:29,096.096 INFO    ] 200
[2026-06-19 04:32:29,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:29,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:32:29,168.168 INFO    ] No update needed
[2026-06-19 04:32:29,171.171 INFO    ] Checking for camera pi updates...
[2026-06-19 04:32:29,208.208 INFO    ] 200
[2026-06-19 04:32:29,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:29,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:32:29,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:32:29,309.309 INFO    ] No camera update needed
[2026-06-19 04:32:29,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:32:29,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:32:29,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:32:29,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:32:31,371.371 INFO    ] ================================================
[2026-06-19 04:32:31,388.388 INFO    ] Launching Daemon at Fri Jun 19 04:32:31 IST 2026
[2026-06-19 04:32:31,399.399 INFO    ] ================================================
[2026-06-19 04:32:32,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:32:32
[2026-06-19 04:32:32,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:32:32,943.943 INFO    ] Initializing speech engine...
[2026-06-19 04:32:32,949.949 INFO    ] 2026-06-19 04:32:32
[2026-06-19 04:32:33,226.226 INFO    ] 2026-06-19 04:32:33
[2026-06-19 04:32:33,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:32:33,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:32:33,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:32:33,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:32:33,604.604 INFO    ] time= 19/06/2026 04:32:33
[2026-06-19 04:32:33,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:32:33,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:32:33,777.777 INFO    ] No existing commands found in stream
[2026-06-19 04:32:38,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:32:38,805.805 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 04:32:40,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:32:40,128.128 INFO    ] Checking for system updates...
[2026-06-19 04:32:40,169.169 INFO    ] 200
[2026-06-19 04:32:40,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:40,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:32:40,234.234 INFO    ] No update needed
[2026-06-19 04:32:40,237.237 INFO    ] Checking for camera pi updates...
[2026-06-19 04:32:40,280.280 INFO    ] 200
[2026-06-19 04:32:40,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:40,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:32:40,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:32:40,381.381 INFO    ] No camera update needed
[2026-06-19 04:32:40,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:32:40,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:32:40,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:32:40,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:32:42,436.436 INFO    ] ================================================
[2026-06-19 04:32:42,452.452 INFO    ] Launching Daemon at Fri Jun 19 04:32:42 IST 2026
[2026-06-19 04:32:42,464.464 INFO    ] ================================================
[2026-06-19 04:32:43,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:32:43
[2026-06-19 04:32:43,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:32:43,893.893 INFO    ] Initializing speech engine...
[2026-06-19 04:32:43,898.898 INFO    ] 2026-06-19 04:32:43
[2026-06-19 04:32:44,145.145 INFO    ] 2026-06-19 04:32:44
[2026-06-19 04:32:44,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:32:44,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:32:44,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:32:44,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:32:44,617.617 INFO    ] time= 19/06/2026 04:32:44
[2026-06-19 04:32:44,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:32:44,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:32:44,760.760 INFO    ] No existing commands found in stream
[2026-06-19 04:32:49,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:32:49,782.782 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 04:32:50,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:32:50,193.193 INFO    ] Checking for system updates...
[2026-06-19 04:32:50,234.234 INFO    ] 200
[2026-06-19 04:32:50,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:50,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:32:50,302.302 INFO    ] No update needed
[2026-06-19 04:32:50,304.304 INFO    ] Checking for camera pi updates...
[2026-06-19 04:32:50,338.338 INFO    ] 200
[2026-06-19 04:32:50,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:32:50,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:32:50,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:32:50,427.427 INFO    ] No camera update needed
[2026-06-19 04:32:50,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:32:50,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:32:50,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:32:50,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:32:52,486.486 INFO    ] ================================================
[2026-06-19 04:32:52,502.502 INFO    ] Launching Daemon at Fri Jun 19 04:32:52 IST 2026
[2026-06-19 04:32:52,514.514 INFO    ] ================================================
[2026-06-19 04:32:53,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:32:53
[2026-06-19 04:32:53,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:32:54,051.051 INFO    ] Initializing speech engine...
[2026-06-19 04:32:54,060.060 INFO    ] 2026-06-19 04:32:54
[2026-06-19 04:32:54,305.305 INFO    ] 2026-06-19 04:32:54
[2026-06-19 04:32:54,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:32:54,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:32:54,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:32:54,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:32:54,674.674 INFO    ] time= 19/06/2026 04:32:54
[2026-06-19 04:32:54,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:32:54,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:32:54,752.752 INFO    ] No existing commands found in stream
[2026-06-19 04:32:59,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:32:59,790.790 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 04:33:01,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:33:01,302.302 INFO    ] Checking for system updates...
[2026-06-19 04:33:01,368.368 INFO    ] 200
[2026-06-19 04:33:01,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:01,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:01,501.501 INFO    ] No update needed
[2026-06-19 04:33:01,505.505 INFO    ] Checking for camera pi updates...
[2026-06-19 04:33:01,548.548 INFO    ] 200
[2026-06-19 04:33:01,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:01,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:33:01,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:01,710.710 INFO    ] No camera update needed
[2026-06-19 04:33:01,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:33:01,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:33:01,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:33:01,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:33:03,777.777 INFO    ] ================================================
[2026-06-19 04:33:03,793.793 INFO    ] Launching Daemon at Fri Jun 19 04:33:03 IST 2026
[2026-06-19 04:33:03,804.804 INFO    ] ================================================
[2026-06-19 04:33:04,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:33:04
[2026-06-19 04:33:04,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:33:05,266.266 INFO    ] Initializing speech engine...
[2026-06-19 04:33:05,276.276 INFO    ] 2026-06-19 04:33:05
[2026-06-19 04:33:05,539.539 INFO    ] 2026-06-19 04:33:05
[2026-06-19 04:33:05,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:33:05,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:33:05,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:33:05,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:33:06,023.023 INFO    ] time= 19/06/2026 04:33:05
[2026-06-19 04:33:06,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:33:06,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:33:06,133.133 INFO    ] No existing commands found in stream
[2026-06-19 04:33:11,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:33:11,147.147 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 04:33:14,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:33:14,889.889 INFO    ] Checking for system updates...
[2026-06-19 04:33:14,948.948 INFO    ] 200
[2026-06-19 04:33:14,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:15,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:15,012.012 INFO    ] No update needed
[2026-06-19 04:33:15,014.014 INFO    ] Checking for camera pi updates...
[2026-06-19 04:33:15,052.052 INFO    ] 200
[2026-06-19 04:33:15,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:15,100.100 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:33:15,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:15,148.148 INFO    ] No camera update needed
[2026-06-19 04:33:15,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:33:15,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:33:15,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:33:15,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:33:17,203.203 INFO    ] ================================================
[2026-06-19 04:33:17,218.218 INFO    ] Launching Daemon at Fri Jun 19 04:33:17 IST 2026
[2026-06-19 04:33:17,229.229 INFO    ] ================================================
[2026-06-19 04:33:17,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:33:17
[2026-06-19 04:33:18,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:33:18,635.635 INFO    ] Initializing speech engine...
[2026-06-19 04:33:18,658.658 INFO    ] 2026-06-19 04:33:18
[2026-06-19 04:33:18,912.912 INFO    ] 2026-06-19 04:33:18
[2026-06-19 04:33:18,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:33:19,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:33:19,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:33:19,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:33:19,285.285 INFO    ] time= 19/06/2026 04:33:19
[2026-06-19 04:33:19,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:33:19,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:33:19,368.368 INFO    ] No existing commands found in stream
[2026-06-19 04:33:24,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:33:24,401.401 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-19 04:33:26,874.874 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:33:26,877.877 INFO    ] Checking for system updates...
[2026-06-19 04:33:26,918.918 INFO    ] 200
[2026-06-19 04:33:26,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:26,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:26,977.977 INFO    ] No update needed
[2026-06-19 04:33:26,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 04:33:27,013.013 INFO    ] 200
[2026-06-19 04:33:27,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:27,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:33:27,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:27,104.104 INFO    ] No camera update needed
[2026-06-19 04:33:27,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:33:27,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:33:27,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:33:27,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:33:29,160.160 INFO    ] ================================================
[2026-06-19 04:33:29,176.176 INFO    ] Launching Daemon at Fri Jun 19 04:33:29 IST 2026
[2026-06-19 04:33:29,187.187 INFO    ] ================================================
[2026-06-19 04:33:29,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:33:29
[2026-06-19 04:33:30,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:33:30,668.668 INFO    ] Initializing speech engine...
[2026-06-19 04:33:30,682.682 INFO    ] 2026-06-19 04:33:30
[2026-06-19 04:33:30,948.948 INFO    ] 2026-06-19 04:33:30
[2026-06-19 04:33:30,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:33:31,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:33:31,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:33:31,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:33:31,321.321 INFO    ] time= 19/06/2026 04:33:31
[2026-06-19 04:33:31,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:33:31,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:33:31,442.442 INFO    ] No existing commands found in stream
[2026-06-19 04:33:36,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:33:36,458.458 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 04:33:39,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:33:39,670.670 INFO    ] Checking for system updates...
[2026-06-19 04:33:39,710.710 INFO    ] 200
[2026-06-19 04:33:39,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:39,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:39,770.770 INFO    ] No update needed
[2026-06-19 04:33:39,772.772 INFO    ] Checking for camera pi updates...
[2026-06-19 04:33:39,807.807 INFO    ] 200
[2026-06-19 04:33:39,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:39,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:33:39,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:39,898.898 INFO    ] No camera update needed
[2026-06-19 04:33:39,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:33:39,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:33:39,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:33:39,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:33:41,955.955 INFO    ] ================================================
[2026-06-19 04:33:41,970.970 INFO    ] Launching Daemon at Fri Jun 19 04:33:41 IST 2026
[2026-06-19 04:33:41,981.981 INFO    ] ================================================
[2026-06-19 04:33:42,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:33:42
[2026-06-19 04:33:43,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:33:43,418.418 INFO    ] Initializing speech engine...
[2026-06-19 04:33:43,428.428 INFO    ] 2026-06-19 04:33:43
[2026-06-19 04:33:43,693.693 INFO    ] 2026-06-19 04:33:43
[2026-06-19 04:33:43,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:33:43,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:33:43,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:33:44,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:33:44,086.086 INFO    ] time= 19/06/2026 04:33:44
[2026-06-19 04:33:44,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:33:44,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:33:44,195.195 INFO    ] No existing commands found in stream
[2026-06-19 04:33:49,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:33:49,210.210 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 04:33:52,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:33:52,504.504 INFO    ] Checking for system updates...
[2026-06-19 04:33:52,541.541 INFO    ] 200
[2026-06-19 04:33:52,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:52,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:52,605.605 INFO    ] No update needed
[2026-06-19 04:33:52,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 04:33:52,645.645 INFO    ] 200
[2026-06-19 04:33:52,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:33:52,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:33:52,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:33:52,742.742 INFO    ] No camera update needed
[2026-06-19 04:33:52,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:33:52,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:33:52,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:33:52,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:33:54,799.799 INFO    ] ================================================
[2026-06-19 04:33:54,814.814 INFO    ] Launching Daemon at Fri Jun 19 04:33:54 IST 2026
[2026-06-19 04:33:54,824.824 INFO    ] ================================================
[2026-06-19 04:33:55,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:33:55
[2026-06-19 04:33:56,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:33:56,299.299 INFO    ] Initializing speech engine...
[2026-06-19 04:33:56,306.306 INFO    ] 2026-06-19 04:33:56
[2026-06-19 04:33:56,567.567 INFO    ] 2026-06-19 04:33:56
[2026-06-19 04:33:56,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:33:56,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:33:56,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:33:56,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:33:57,017.017 INFO    ] time= 19/06/2026 04:33:56
[2026-06-19 04:33:57,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:33:57,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:33:57,172.172 INFO    ] No existing commands found in stream
[2026-06-19 04:34:02,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:34:02,188.188 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 04:34:06,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:34:06,519.519 INFO    ] Checking for system updates...
[2026-06-19 04:34:06,557.557 INFO    ] 200
[2026-06-19 04:34:06,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:06,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:34:06,625.625 INFO    ] No update needed
[2026-06-19 04:34:06,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 04:34:06,662.662 INFO    ] 200
[2026-06-19 04:34:06,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:06,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:34:06,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:34:06,753.753 INFO    ] No camera update needed
[2026-06-19 04:34:06,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:34:06,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:34:06,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:34:06,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:34:08,810.810 INFO    ] ================================================
[2026-06-19 04:34:08,825.825 INFO    ] Launching Daemon at Fri Jun 19 04:34:08 IST 2026
[2026-06-19 04:34:08,837.837 INFO    ] ================================================
[2026-06-19 04:34:09,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:34:09
[2026-06-19 04:34:10,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:34:10,317.317 INFO    ] Initializing speech engine...
[2026-06-19 04:34:10,324.324 INFO    ] 2026-06-19 04:34:10
[2026-06-19 04:34:10,600.600 INFO    ] 2026-06-19 04:34:10
[2026-06-19 04:34:10,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:34:10,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:34:10,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:34:10,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:34:10,997.997 INFO    ] time= 19/06/2026 04:34:10
[2026-06-19 04:34:11,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:34:11,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:34:11,123.123 INFO    ] No existing commands found in stream
[2026-06-19 04:34:16,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:34:16,141.141 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 04:34:16,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:34:16,819.819 INFO    ] Checking for system updates...
[2026-06-19 04:34:16,855.855 INFO    ] 200
[2026-06-19 04:34:16,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:16,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:34:16,922.922 INFO    ] No update needed
[2026-06-19 04:34:16,924.924 INFO    ] Checking for camera pi updates...
[2026-06-19 04:34:16,961.961 INFO    ] 200
[2026-06-19 04:34:16,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:17,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:34:17,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:34:17,050.050 INFO    ] No camera update needed
[2026-06-19 04:34:17,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:34:17,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:34:17,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:34:17,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:34:19,107.107 INFO    ] ================================================
[2026-06-19 04:34:19,122.122 INFO    ] Launching Daemon at Fri Jun 19 04:34:19 IST 2026
[2026-06-19 04:34:19,133.133 INFO    ] ================================================
[2026-06-19 04:34:19,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:34:19
[2026-06-19 04:34:20,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:34:20,720.720 INFO    ] Initializing speech engine...
[2026-06-19 04:34:20,726.726 INFO    ] 2026-06-19 04:34:20
[2026-06-19 04:34:21,001.001 INFO    ] 2026-06-19 04:34:20
[2026-06-19 04:34:21,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:34:21,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:34:21,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:34:21,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:34:21,485.485 INFO    ] time= 19/06/2026 04:34:21
[2026-06-19 04:34:21,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:34:21,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:34:21,636.636 INFO    ] No existing commands found in stream
[2026-06-19 04:34:26,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:34:26,653.653 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 04:34:28,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:34:28,819.819 INFO    ] Checking for system updates...
[2026-06-19 04:34:28,858.858 INFO    ] 200
[2026-06-19 04:34:28,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:28,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:34:28,922.922 INFO    ] No update needed
[2026-06-19 04:34:28,925.925 INFO    ] Checking for camera pi updates...
[2026-06-19 04:34:28,960.960 INFO    ] 200
[2026-06-19 04:34:28,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:29,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:34:29,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:34:29,054.054 INFO    ] No camera update needed
[2026-06-19 04:34:29,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:34:29,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:34:29,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:34:29,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:34:31,109.109 INFO    ] ================================================
[2026-06-19 04:34:31,124.124 INFO    ] Launching Daemon at Fri Jun 19 04:34:31 IST 2026
[2026-06-19 04:34:31,135.135 INFO    ] ================================================
[2026-06-19 04:34:31,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:34:31
[2026-06-19 04:34:32,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:34:32,799.799 INFO    ] Initializing speech engine...
[2026-06-19 04:34:32,804.804 INFO    ] 2026-06-19 04:34:32
[2026-06-19 04:34:33,092.092 INFO    ] 2026-06-19 04:34:33
[2026-06-19 04:34:33,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:34:33,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:34:33,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:34:33,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:34:33,588.588 INFO    ] time= 19/06/2026 04:34:33
[2026-06-19 04:34:33,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:34:33,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:34:33,735.735 INFO    ] No existing commands found in stream
[2026-06-19 04:34:38,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:34:38,750.750 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 04:34:39,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:34:39,992.992 INFO    ] Checking for system updates...
[2026-06-19 04:34:40,028.028 INFO    ] 200
[2026-06-19 04:34:40,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:40,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:34:40,089.089 INFO    ] No update needed
[2026-06-19 04:34:40,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 04:34:40,126.126 INFO    ] 200
[2026-06-19 04:34:40,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:40,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:34:40,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:34:40,216.216 INFO    ] No camera update needed
[2026-06-19 04:34:40,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:34:40,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:34:40,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:34:40,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:34:42,270.270 INFO    ] ================================================
[2026-06-19 04:34:42,285.285 INFO    ] Launching Daemon at Fri Jun 19 04:34:42 IST 2026
[2026-06-19 04:34:42,296.296 INFO    ] ================================================
[2026-06-19 04:34:42,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:34:42
[2026-06-19 04:34:43,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:34:43,709.709 INFO    ] Initializing speech engine...
[2026-06-19 04:34:43,732.732 INFO    ] 2026-06-19 04:34:43
[2026-06-19 04:34:43,989.989 INFO    ] 2026-06-19 04:34:43
[2026-06-19 04:34:44,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:34:44,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:34:44,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:34:44,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:34:44,380.380 INFO    ] time= 19/06/2026 04:34:44
[2026-06-19 04:34:44,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:34:44,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:34:44,460.460 INFO    ] No existing commands found in stream
[2026-06-19 04:34:49,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:34:49,478.478 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-19 04:34:51,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:34:51,118.118 INFO    ] Checking for system updates...
[2026-06-19 04:34:51,159.159 INFO    ] 200
[2026-06-19 04:34:51,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:51,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:34:51,228.228 INFO    ] No update needed
[2026-06-19 04:34:51,231.231 INFO    ] Checking for camera pi updates...
[2026-06-19 04:34:51,265.265 INFO    ] 200
[2026-06-19 04:34:51,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:34:51,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:34:51,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:34:51,353.353 INFO    ] No camera update needed
[2026-06-19 04:34:51,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:34:51,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:34:51,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:34:51,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:34:53,410.410 INFO    ] ================================================
[2026-06-19 04:34:53,425.425 INFO    ] Launching Daemon at Fri Jun 19 04:34:53 IST 2026
[2026-06-19 04:34:53,436.436 INFO    ] ================================================
[2026-06-19 04:34:54,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:34:54
[2026-06-19 04:34:54,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:34:54,887.887 INFO    ] Initializing speech engine...
[2026-06-19 04:34:54,896.896 INFO    ] 2026-06-19 04:34:54
[2026-06-19 04:34:55,152.152 INFO    ] 2026-06-19 04:34:55
[2026-06-19 04:34:55,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:34:55,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:34:55,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:34:55,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:34:55,643.643 INFO    ] time= 19/06/2026 04:34:55
[2026-06-19 04:34:55,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:34:55,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:34:55,790.790 INFO    ] No existing commands found in stream
[2026-06-19 04:35:00,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:35:00,805.805 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 04:35:04,259.259 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:35:04,262.262 INFO    ] Checking for system updates...
[2026-06-19 04:35:04,301.301 INFO    ] 200
[2026-06-19 04:35:04,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:04,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:04,361.361 INFO    ] No update needed
[2026-06-19 04:35:04,363.363 INFO    ] Checking for camera pi updates...
[2026-06-19 04:35:04,399.399 INFO    ] 200
[2026-06-19 04:35:04,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:04,446.446 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:35:04,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:04,501.501 INFO    ] No camera update needed
[2026-06-19 04:35:04,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:35:04,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:35:04,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:35:04,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:35:06,558.558 INFO    ] ================================================
[2026-06-19 04:35:06,573.573 INFO    ] Launching Daemon at Fri Jun 19 04:35:06 IST 2026
[2026-06-19 04:35:06,584.584 INFO    ] ================================================
[2026-06-19 04:35:07,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:35:07
[2026-06-19 04:35:07,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:35:08,042.042 INFO    ] Initializing speech engine...
[2026-06-19 04:35:08,065.065 INFO    ] 2026-06-19 04:35:08
[2026-06-19 04:35:08,324.324 INFO    ] 2026-06-19 04:35:08
[2026-06-19 04:35:08,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:35:08,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:35:08,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:35:08,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:35:08,664.664 INFO    ] time= 19/06/2026 04:35:08
[2026-06-19 04:35:08,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:35:08,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:35:08,776.776 INFO    ] No existing commands found in stream
[2026-06-19 04:35:13,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:35:13,791.791 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 04:35:14,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:35:14,833.833 INFO    ] Checking for system updates...
[2026-06-19 04:35:14,871.871 INFO    ] 200
[2026-06-19 04:35:14,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:14,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:14,929.929 INFO    ] No update needed
[2026-06-19 04:35:14,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 04:35:14,971.971 INFO    ] 200
[2026-06-19 04:35:14,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:15,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:35:15,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:15,068.068 INFO    ] No camera update needed
[2026-06-19 04:35:15,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:35:15,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:35:15,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:35:15,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:35:17,122.122 INFO    ] ================================================
[2026-06-19 04:35:17,138.138 INFO    ] Launching Daemon at Fri Jun 19 04:35:17 IST 2026
[2026-06-19 04:35:17,148.148 INFO    ] ================================================
[2026-06-19 04:35:17,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:35:17
[2026-06-19 04:35:18,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:35:18,594.594 INFO    ] Initializing speech engine...
[2026-06-19 04:35:18,617.617 INFO    ] 2026-06-19 04:35:18
[2026-06-19 04:35:18,897.897 INFO    ] 2026-06-19 04:35:18
[2026-06-19 04:35:18,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:35:19,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:35:19,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:35:19,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:35:19,361.361 INFO    ] time= 19/06/2026 04:35:19
[2026-06-19 04:35:19,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:35:19,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:35:19,532.532 INFO    ] No existing commands found in stream
[2026-06-19 04:35:24,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:35:24,547.547 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 04:35:28,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:35:28,026.026 INFO    ] Checking for system updates...
[2026-06-19 04:35:28,064.064 INFO    ] 200
[2026-06-19 04:35:28,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:28,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:28,123.123 INFO    ] No update needed
[2026-06-19 04:35:28,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 04:35:28,161.161 INFO    ] 200
[2026-06-19 04:35:28,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:28,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:35:28,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:28,248.248 INFO    ] No camera update needed
[2026-06-19 04:35:28,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:35:28,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:35:28,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:35:28,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:35:30,303.303 INFO    ] ================================================
[2026-06-19 04:35:30,318.318 INFO    ] Launching Daemon at Fri Jun 19 04:35:30 IST 2026
[2026-06-19 04:35:30,329.329 INFO    ] ================================================
[2026-06-19 04:35:30,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:35:30
[2026-06-19 04:35:31,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:35:31,923.923 INFO    ] Initializing speech engine...
[2026-06-19 04:35:31,940.940 INFO    ] 2026-06-19 04:35:31
[2026-06-19 04:35:32,211.211 INFO    ] 2026-06-19 04:35:32
[2026-06-19 04:35:32,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:35:32,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:35:32,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:35:32,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:35:32,689.689 INFO    ] time= 19/06/2026 04:35:32
[2026-06-19 04:35:32,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:35:32,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:35:32,852.852 INFO    ] No existing commands found in stream
[2026-06-19 04:35:37,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:35:37,867.867 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 04:35:38,869.869 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:35:38,872.872 INFO    ] Checking for system updates...
[2026-06-19 04:35:38,909.909 INFO    ] 200
[2026-06-19 04:35:38,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:38,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:38,975.975 INFO    ] No update needed
[2026-06-19 04:35:38,978.978 INFO    ] Checking for camera pi updates...
[2026-06-19 04:35:39,012.012 INFO    ] 200
[2026-06-19 04:35:39,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:39,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:35:39,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:39,204.204 INFO    ] No camera update needed
[2026-06-19 04:35:39,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:35:39,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:35:39,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:35:39,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:35:41,260.260 INFO    ] ================================================
[2026-06-19 04:35:41,277.277 INFO    ] Launching Daemon at Fri Jun 19 04:35:41 IST 2026
[2026-06-19 04:35:41,288.288 INFO    ] ================================================
[2026-06-19 04:35:41,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:35:41
[2026-06-19 04:35:42,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:35:42,723.723 INFO    ] Initializing speech engine...
[2026-06-19 04:35:42,732.732 INFO    ] 2026-06-19 04:35:42
[2026-06-19 04:35:42,981.981 INFO    ] 2026-06-19 04:35:42
[2026-06-19 04:35:43,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:35:43,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:35:43,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:35:43,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:35:43,457.457 INFO    ] time= 19/06/2026 04:35:43
[2026-06-19 04:35:43,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:35:43,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:35:43,612.612 INFO    ] No existing commands found in stream
[2026-06-19 04:35:48,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:35:48,626.626 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 04:35:50,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:35:50,739.739 INFO    ] Checking for system updates...
[2026-06-19 04:35:50,775.775 INFO    ] 200
[2026-06-19 04:35:50,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:50,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:50,839.839 INFO    ] No update needed
[2026-06-19 04:35:50,841.841 INFO    ] Checking for camera pi updates...
[2026-06-19 04:35:50,875.875 INFO    ] 200
[2026-06-19 04:35:50,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:35:50,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:35:50,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:35:50,969.969 INFO    ] No camera update needed
[2026-06-19 04:35:50,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:35:50,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:35:50,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:35:50,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:35:53,025.025 INFO    ] ================================================
[2026-06-19 04:35:53,040.040 INFO    ] Launching Daemon at Fri Jun 19 04:35:53 IST 2026
[2026-06-19 04:35:53,051.051 INFO    ] ================================================
[2026-06-19 04:35:53,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:35:53
[2026-06-19 04:35:54,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:35:54,542.542 INFO    ] Initializing speech engine...
[2026-06-19 04:35:54,566.566 INFO    ] 2026-06-19 04:35:54
[2026-06-19 04:35:54,822.822 INFO    ] 2026-06-19 04:35:54
[2026-06-19 04:35:54,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:35:55,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:35:55,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:35:55,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:35:55,299.299 INFO    ] time= 19/06/2026 04:35:55
[2026-06-19 04:35:55,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:35:55,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:35:55,452.452 INFO    ] No existing commands found in stream
[2026-06-19 04:36:00,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:36:00,467.467 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 04:36:04,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:36:04,519.519 INFO    ] Checking for system updates...
[2026-06-19 04:36:04,556.556 INFO    ] 200
[2026-06-19 04:36:04,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:04,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:36:04,621.621 INFO    ] No update needed
[2026-06-19 04:36:04,624.624 INFO    ] Checking for camera pi updates...
[2026-06-19 04:36:04,662.662 INFO    ] 200
[2026-06-19 04:36:04,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:04,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:36:04,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:36:04,753.753 INFO    ] No camera update needed
[2026-06-19 04:36:04,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:36:04,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:36:04,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:36:04,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:36:06,813.813 INFO    ] ================================================
[2026-06-19 04:36:06,828.828 INFO    ] Launching Daemon at Fri Jun 19 04:36:06 IST 2026
[2026-06-19 04:36:06,839.839 INFO    ] ================================================
[2026-06-19 04:36:07,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:36:07
[2026-06-19 04:36:08,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:36:08,292.292 INFO    ] Initializing speech engine...
[2026-06-19 04:36:08,301.301 INFO    ] 2026-06-19 04:36:08
[2026-06-19 04:36:08,558.558 INFO    ] 2026-06-19 04:36:08
[2026-06-19 04:36:08,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:36:08,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:36:08,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:36:08,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:36:08,989.989 INFO    ] time= 19/06/2026 04:36:08
[2026-06-19 04:36:09,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:36:09,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:36:09,160.160 INFO    ] No existing commands found in stream
[2026-06-19 04:36:14,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:36:14,174.174 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 04:36:16,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:36:16,970.970 INFO    ] Checking for system updates...
[2026-06-19 04:36:17,008.008 INFO    ] 200
[2026-06-19 04:36:17,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:17,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:36:17,065.065 INFO    ] No update needed
[2026-06-19 04:36:17,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 04:36:17,101.101 INFO    ] 200
[2026-06-19 04:36:17,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:17,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:36:17,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:36:17,200.200 INFO    ] No camera update needed
[2026-06-19 04:36:17,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:36:17,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:36:17,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:36:17,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:36:19,255.255 INFO    ] ================================================
[2026-06-19 04:36:19,270.270 INFO    ] Launching Daemon at Fri Jun 19 04:36:19 IST 2026
[2026-06-19 04:36:19,281.281 INFO    ] ================================================
[2026-06-19 04:36:19,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:36:19
[2026-06-19 04:36:20,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:36:20,741.741 INFO    ] Initializing speech engine...
[2026-06-19 04:36:20,749.749 INFO    ] 2026-06-19 04:36:20
[2026-06-19 04:36:21,026.026 INFO    ] 2026-06-19 04:36:21
[2026-06-19 04:36:21,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:36:21,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:36:21,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:36:21,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:36:21,465.465 INFO    ] time= 19/06/2026 04:36:21
[2026-06-19 04:36:21,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:36:21,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:36:21,610.610 INFO    ] No existing commands found in stream
[2026-06-19 04:36:26,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:36:26,620.620 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 04:36:28,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:36:28,849.849 INFO    ] Checking for system updates...
[2026-06-19 04:36:28,888.888 INFO    ] 200
[2026-06-19 04:36:28,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:28,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:36:28,946.946 INFO    ] No update needed
[2026-06-19 04:36:28,948.948 INFO    ] Checking for camera pi updates...
[2026-06-19 04:36:28,989.989 INFO    ] 200
[2026-06-19 04:36:28,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:29,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:36:29,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:36:29,081.081 INFO    ] No camera update needed
[2026-06-19 04:36:29,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:36:29,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:36:29,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:36:29,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:36:31,137.137 INFO    ] ================================================
[2026-06-19 04:36:31,152.152 INFO    ] Launching Daemon at Fri Jun 19 04:36:31 IST 2026
[2026-06-19 04:36:31,163.163 INFO    ] ================================================
[2026-06-19 04:36:31,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:36:31
[2026-06-19 04:36:32,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:36:32,605.605 INFO    ] Initializing speech engine...
[2026-06-19 04:36:32,628.628 INFO    ] 2026-06-19 04:36:32
[2026-06-19 04:36:32,924.924 INFO    ] 2026-06-19 04:36:32
[2026-06-19 04:36:32,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:36:33,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:36:33,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:36:33,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:36:33,329.329 INFO    ] time= 19/06/2026 04:36:33
[2026-06-19 04:36:33,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:36:33,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:36:33,449.449 INFO    ] No existing commands found in stream
[2026-06-19 04:36:38,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:36:38,467.467 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 04:36:41,487.487 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:36:41,489.489 INFO    ] Checking for system updates...
[2026-06-19 04:36:41,526.526 INFO    ] 200
[2026-06-19 04:36:41,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:41,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:36:41,583.583 INFO    ] No update needed
[2026-06-19 04:36:41,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 04:36:41,619.619 INFO    ] 200
[2026-06-19 04:36:41,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:41,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:36:41,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:36:41,711.711 INFO    ] No camera update needed
[2026-06-19 04:36:41,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:36:41,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:36:41,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:36:41,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:36:43,767.767 INFO    ] ================================================
[2026-06-19 04:36:43,782.782 INFO    ] Launching Daemon at Fri Jun 19 04:36:43 IST 2026
[2026-06-19 04:36:43,793.793 INFO    ] ================================================
[2026-06-19 04:36:44,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:36:44
[2026-06-19 04:36:45,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:36:45,322.322 INFO    ] Initializing speech engine...
[2026-06-19 04:36:45,331.331 INFO    ] 2026-06-19 04:36:45
[2026-06-19 04:36:45,581.581 INFO    ] 2026-06-19 04:36:45
[2026-06-19 04:36:45,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:36:45,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:36:45,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:36:45,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:36:45,962.962 INFO    ] time= 19/06/2026 04:36:45
[2026-06-19 04:36:46,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:36:46,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:36:46,160.160 INFO    ] No existing commands found in stream
[2026-06-19 04:36:51,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:36:51,173.173 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 04:36:53,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:36:53,868.868 INFO    ] Checking for system updates...
[2026-06-19 04:36:53,904.904 INFO    ] 200
[2026-06-19 04:36:53,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:53,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:36:53,967.967 INFO    ] No update needed
[2026-06-19 04:36:53,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 04:36:54,007.007 INFO    ] 200
[2026-06-19 04:36:54,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:36:54,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:36:54,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:36:54,094.094 INFO    ] No camera update needed
[2026-06-19 04:36:54,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:36:54,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:36:54,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:36:54,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:36:56,150.150 INFO    ] ================================================
[2026-06-19 04:36:56,165.165 INFO    ] Launching Daemon at Fri Jun 19 04:36:56 IST 2026
[2026-06-19 04:36:56,176.176 INFO    ] ================================================
[2026-06-19 04:36:56,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:36:56
[2026-06-19 04:36:57,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:36:57,607.607 INFO    ] Initializing speech engine...
[2026-06-19 04:36:57,617.617 INFO    ] 2026-06-19 04:36:57
[2026-06-19 04:36:57,863.863 INFO    ] 2026-06-19 04:36:57
[2026-06-19 04:36:57,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:36:58,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:36:58,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:36:58,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:36:58,333.333 INFO    ] time= 19/06/2026 04:36:58
[2026-06-19 04:36:58,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:36:58,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:36:58,478.478 INFO    ] No existing commands found in stream
[2026-06-19 04:37:03,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:37:03,491.491 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 04:37:04,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:37:04,696.696 INFO    ] Checking for system updates...
[2026-06-19 04:37:04,732.732 INFO    ] 200
[2026-06-19 04:37:04,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:04,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:37:04,789.789 INFO    ] No update needed
[2026-06-19 04:37:04,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 04:37:04,826.826 INFO    ] 200
[2026-06-19 04:37:04,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:04,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:37:04,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:37:04,913.913 INFO    ] No camera update needed
[2026-06-19 04:37:04,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:37:04,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:37:04,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:37:04,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:37:06,968.968 INFO    ] ================================================
[2026-06-19 04:37:06,984.984 INFO    ] Launching Daemon at Fri Jun 19 04:37:06 IST 2026
[2026-06-19 04:37:07,995.995 INFO    ] ================================================
[2026-06-19 04:37:07,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:37:07
[2026-06-19 04:37:08,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:37:08,418.418 INFO    ] Initializing speech engine...
[2026-06-19 04:37:08,427.427 INFO    ] 2026-06-19 04:37:08
[2026-06-19 04:37:08,672.672 INFO    ] 2026-06-19 04:37:08
[2026-06-19 04:37:08,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:37:08,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:37:08,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:37:09,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:37:09,116.116 INFO    ] time= 19/06/2026 04:37:09
[2026-06-19 04:37:09,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:37:09,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:37:09,286.286 INFO    ] No existing commands found in stream
[2026-06-19 04:37:14,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:37:14,300.300 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 04:37:17,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:37:17,589.589 INFO    ] Checking for system updates...
[2026-06-19 04:37:17,628.628 INFO    ] 200
[2026-06-19 04:37:17,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:17,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:37:17,686.686 INFO    ] No update needed
[2026-06-19 04:37:17,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 04:37:17,722.722 INFO    ] 200
[2026-06-19 04:37:17,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:17,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:37:17,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:37:17,812.812 INFO    ] No camera update needed
[2026-06-19 04:37:17,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:37:17,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:37:17,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:37:17,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:37:19,868.868 INFO    ] ================================================
[2026-06-19 04:37:19,884.884 INFO    ] Launching Daemon at Fri Jun 19 04:37:19 IST 2026
[2026-06-19 04:37:19,895.895 INFO    ] ================================================
[2026-06-19 04:37:20,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:37:20
[2026-06-19 04:37:21,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:37:21,331.331 INFO    ] Initializing speech engine...
[2026-06-19 04:37:21,337.337 INFO    ] 2026-06-19 04:37:21
[2026-06-19 04:37:21,586.586 INFO    ] 2026-06-19 04:37:21
[2026-06-19 04:37:21,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:37:21,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:37:21,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:37:22,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:37:22,031.031 INFO    ] time= 19/06/2026 04:37:22
[2026-06-19 04:37:22,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:37:22,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:37:22,216.216 INFO    ] No existing commands found in stream
[2026-06-19 04:37:27,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:37:27,230.230 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 04:37:28,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:37:28,743.743 INFO    ] Checking for system updates...
[2026-06-19 04:37:28,780.780 INFO    ] 200
[2026-06-19 04:37:28,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:28,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:37:28,843.843 INFO    ] No update needed
[2026-06-19 04:37:28,846.846 INFO    ] Checking for camera pi updates...
[2026-06-19 04:37:28,880.880 INFO    ] 200
[2026-06-19 04:37:28,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:28,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:37:28,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:37:28,973.973 INFO    ] No camera update needed
[2026-06-19 04:37:28,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:37:28,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:37:28,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:37:28,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:37:31,029.029 INFO    ] ================================================
[2026-06-19 04:37:31,046.046 INFO    ] Launching Daemon at Fri Jun 19 04:37:31 IST 2026
[2026-06-19 04:37:31,062.062 INFO    ] ================================================
[2026-06-19 04:37:31,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:37:31
[2026-06-19 04:37:32,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:37:32,521.521 INFO    ] Initializing speech engine...
[2026-06-19 04:37:32,539.539 INFO    ] 2026-06-19 04:37:32
[2026-06-19 04:37:32,826.826 INFO    ] 2026-06-19 04:37:32
[2026-06-19 04:37:32,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:37:33,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:37:33,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:37:33,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:37:33,295.295 INFO    ] time= 19/06/2026 04:37:33
[2026-06-19 04:37:33,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:37:33,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:37:33,479.479 INFO    ] No existing commands found in stream
[2026-06-19 04:37:38,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:37:38,494.494 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 04:37:41,699.699 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:37:41,702.702 INFO    ] Checking for system updates...
[2026-06-19 04:37:41,741.741 INFO    ] 200
[2026-06-19 04:37:41,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:41,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:37:41,803.803 INFO    ] No update needed
[2026-06-19 04:37:41,805.805 INFO    ] Checking for camera pi updates...
[2026-06-19 04:37:41,843.843 INFO    ] 200
[2026-06-19 04:37:41,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:41,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:37:42,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:37:42,042.042 INFO    ] No camera update needed
[2026-06-19 04:37:42,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:37:42,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:37:42,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:37:42,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:37:44,099.099 INFO    ] ================================================
[2026-06-19 04:37:44,114.114 INFO    ] Launching Daemon at Fri Jun 19 04:37:44 IST 2026
[2026-06-19 04:37:44,124.124 INFO    ] ================================================
[2026-06-19 04:37:44,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:37:44
[2026-06-19 04:37:45,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:37:45,554.554 INFO    ] Initializing speech engine...
[2026-06-19 04:37:45,558.558 INFO    ] 2026-06-19 04:37:45
[2026-06-19 04:37:45,849.849 INFO    ] 2026-06-19 04:37:45
[2026-06-19 04:37:45,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:37:46,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:37:46,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:37:46,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:37:46,197.197 INFO    ] time= 19/06/2026 04:37:46
[2026-06-19 04:37:46,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:37:46,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:37:46,276.276 INFO    ] No existing commands found in stream
[2026-06-19 04:37:51,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:37:51,290.290 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 04:37:54,476.476 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:37:54,479.479 INFO    ] Checking for system updates...
[2026-06-19 04:37:54,517.517 INFO    ] 200
[2026-06-19 04:37:54,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:54,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:37:54,574.574 INFO    ] No update needed
[2026-06-19 04:37:54,576.576 INFO    ] Checking for camera pi updates...
[2026-06-19 04:37:54,613.613 INFO    ] 200
[2026-06-19 04:37:54,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:37:54,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:37:54,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:37:54,700.700 INFO    ] No camera update needed
[2026-06-19 04:37:54,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:37:54,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:37:54,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:37:54,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:37:56,757.757 INFO    ] ================================================
[2026-06-19 04:37:56,778.778 INFO    ] Launching Daemon at Fri Jun 19 04:37:56 IST 2026
[2026-06-19 04:37:56,790.790 INFO    ] ================================================
[2026-06-19 04:37:57,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:37:57
[2026-06-19 04:37:58,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:37:58,295.295 INFO    ] Initializing speech engine...
[2026-06-19 04:37:58,314.314 INFO    ] 2026-06-19 04:37:58
[2026-06-19 04:37:58,564.564 INFO    ] 2026-06-19 04:37:58
[2026-06-19 04:37:58,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:37:58,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:37:58,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:37:58,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:37:58,934.934 INFO    ] time= 19/06/2026 04:37:58
[2026-06-19 04:37:58,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:37:58,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:37:59,014.014 INFO    ] No existing commands found in stream
[2026-06-19 04:38:04,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:38:04,029.029 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 04:38:04,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:38:04,527.527 INFO    ] Checking for system updates...
[2026-06-19 04:38:04,566.566 INFO    ] 200
[2026-06-19 04:38:04,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:04,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:38:04,623.623 INFO    ] No update needed
[2026-06-19 04:38:04,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 04:38:04,658.658 INFO    ] 200
[2026-06-19 04:38:04,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:04,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:38:04,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:38:04,745.745 INFO    ] No camera update needed
[2026-06-19 04:38:04,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:38:04,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:38:04,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:38:04,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:38:06,799.799 INFO    ] ================================================
[2026-06-19 04:38:06,815.815 INFO    ] Launching Daemon at Fri Jun 19 04:38:06 IST 2026
[2026-06-19 04:38:06,825.825 INFO    ] ================================================
[2026-06-19 04:38:07,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:38:07
[2026-06-19 04:38:08,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:38:08,348.348 INFO    ] Initializing speech engine...
[2026-06-19 04:38:08,357.357 INFO    ] 2026-06-19 04:38:08
[2026-06-19 04:38:08,628.628 INFO    ] 2026-06-19 04:38:08
[2026-06-19 04:38:08,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:38:08,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:38:08,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:38:09,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:38:09,018.018 INFO    ] time= 19/06/2026 04:38:09
[2026-06-19 04:38:09,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:38:09,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:38:09,175.175 INFO    ] No existing commands found in stream
[2026-06-19 04:38:14,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:38:14,209.209 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 04:38:16,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:38:16,336.336 INFO    ] Checking for system updates...
[2026-06-19 04:38:16,374.374 INFO    ] 200
[2026-06-19 04:38:16,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:16,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:38:16,439.439 INFO    ] No update needed
[2026-06-19 04:38:16,442.442 INFO    ] Checking for camera pi updates...
[2026-06-19 04:38:16,480.480 INFO    ] 200
[2026-06-19 04:38:16,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:16,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:38:16,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:38:16,573.573 INFO    ] No camera update needed
[2026-06-19 04:38:16,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:38:16,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:38:16,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:38:16,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:38:18,627.627 INFO    ] ================================================
[2026-06-19 04:38:18,642.642 INFO    ] Launching Daemon at Fri Jun 19 04:38:18 IST 2026
[2026-06-19 04:38:18,653.653 INFO    ] ================================================
[2026-06-19 04:38:19,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:38:19
[2026-06-19 04:38:19,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:38:20,143.143 INFO    ] Initializing speech engine...
[2026-06-19 04:38:20,152.152 INFO    ] 2026-06-19 04:38:20
[2026-06-19 04:38:20,419.419 INFO    ] 2026-06-19 04:38:20
[2026-06-19 04:38:20,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:38:20,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:38:20,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:38:20,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:38:20,880.880 INFO    ] time= 19/06/2026 04:38:20
[2026-06-19 04:38:20,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:38:20,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:38:21,032.032 INFO    ] No existing commands found in stream
[2026-06-19 04:38:26,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:38:26,049.049 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 04:38:28,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:38:28,305.305 INFO    ] Checking for system updates...
[2026-06-19 04:38:28,341.341 INFO    ] 200
[2026-06-19 04:38:28,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:28,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:38:28,405.405 INFO    ] No update needed
[2026-06-19 04:38:28,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 04:38:28,443.443 INFO    ] 200
[2026-06-19 04:38:28,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:28,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:38:28,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:38:28,534.534 INFO    ] No camera update needed
[2026-06-19 04:38:28,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:38:28,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:38:28,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:38:28,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:38:30,592.592 INFO    ] ================================================
[2026-06-19 04:38:30,607.607 INFO    ] Launching Daemon at Fri Jun 19 04:38:30 IST 2026
[2026-06-19 04:38:30,617.617 INFO    ] ================================================
[2026-06-19 04:38:31,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:38:31
[2026-06-19 04:38:31,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:38:32,080.080 INFO    ] Initializing speech engine...
[2026-06-19 04:38:32,097.097 INFO    ] 2026-06-19 04:38:32
[2026-06-19 04:38:32,364.364 INFO    ] 2026-06-19 04:38:32
[2026-06-19 04:38:32,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:38:32,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:38:32,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:38:32,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:38:32,762.762 INFO    ] time= 19/06/2026 04:38:32
[2026-06-19 04:38:32,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:38:32,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:38:32,937.937 INFO    ] No existing commands found in stream
[2026-06-19 04:38:37,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:38:37,966.966 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 04:38:39,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:38:39,355.355 INFO    ] Checking for system updates...
[2026-06-19 04:38:39,391.391 INFO    ] 200
[2026-06-19 04:38:39,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:39,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:38:39,456.456 INFO    ] No update needed
[2026-06-19 04:38:39,459.459 INFO    ] Checking for camera pi updates...
[2026-06-19 04:38:39,493.493 INFO    ] 200
[2026-06-19 04:38:39,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:39,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:38:39,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:38:39,581.581 INFO    ] No camera update needed
[2026-06-19 04:38:39,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:38:39,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:38:39,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:38:39,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:38:41,654.654 INFO    ] ================================================
[2026-06-19 04:38:41,680.680 INFO    ] Launching Daemon at Fri Jun 19 04:38:41 IST 2026
[2026-06-19 04:38:41,697.697 INFO    ] ================================================
[2026-06-19 04:38:42,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:38:42
[2026-06-19 04:38:42,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:38:43,192.192 INFO    ] Initializing speech engine...
[2026-06-19 04:38:43,199.199 INFO    ] 2026-06-19 04:38:43
[2026-06-19 04:38:43,459.459 INFO    ] 2026-06-19 04:38:43
[2026-06-19 04:38:43,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:38:43,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:38:43,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:38:43,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:38:43,929.929 INFO    ] time= 19/06/2026 04:38:43
[2026-06-19 04:38:43,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:38:44,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:38:44,065.065 INFO    ] No existing commands found in stream
[2026-06-19 04:38:49,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:38:49,080.080 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 04:38:49,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:38:49,896.896 INFO    ] Checking for system updates...
[2026-06-19 04:38:49,939.939 INFO    ] 200
[2026-06-19 04:38:49,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:50,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:38:50,007.007 INFO    ] No update needed
[2026-06-19 04:38:50,010.010 INFO    ] Checking for camera pi updates...
[2026-06-19 04:38:50,045.045 INFO    ] 200
[2026-06-19 04:38:50,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:38:50,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:38:50,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:38:50,132.132 INFO    ] No camera update needed
[2026-06-19 04:38:50,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:38:50,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:38:50,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:38:50,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:38:52,193.193 INFO    ] ================================================
[2026-06-19 04:38:52,208.208 INFO    ] Launching Daemon at Fri Jun 19 04:38:52 IST 2026
[2026-06-19 04:38:52,219.219 INFO    ] ================================================
[2026-06-19 04:38:52,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:38:52
[2026-06-19 04:38:53,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:38:53,671.671 INFO    ] Initializing speech engine...
[2026-06-19 04:38:53,688.688 INFO    ] 2026-06-19 04:38:53
[2026-06-19 04:38:53,945.945 INFO    ] 2026-06-19 04:38:53
[2026-06-19 04:38:53,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:38:54,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:38:54,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:38:54,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:38:54,286.286 INFO    ] time= 19/06/2026 04:38:54
[2026-06-19 04:38:54,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:38:54,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:38:54,403.403 INFO    ] No existing commands found in stream
[2026-06-19 04:38:59,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:38:59,419.419 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-19 04:39:01,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:39:01,122.122 INFO    ] Checking for system updates...
[2026-06-19 04:39:01,164.164 INFO    ] 200
[2026-06-19 04:39:01,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:01,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:39:01,229.229 INFO    ] No update needed
[2026-06-19 04:39:01,232.232 INFO    ] Checking for camera pi updates...
[2026-06-19 04:39:01,265.265 INFO    ] 200
[2026-06-19 04:39:01,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:01,308.308 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:39:01,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:39:01,350.350 INFO    ] No camera update needed
[2026-06-19 04:39:01,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:39:01,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:39:01,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:39:01,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:39:03,413.413 INFO    ] ================================================
[2026-06-19 04:39:03,433.433 INFO    ] Launching Daemon at Fri Jun 19 04:39:03 IST 2026
[2026-06-19 04:39:03,447.447 INFO    ] ================================================
[2026-06-19 04:39:04,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:39:04
[2026-06-19 04:39:04,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:39:04,911.911 INFO    ] Initializing speech engine...
[2026-06-19 04:39:04,930.930 INFO    ] 2026-06-19 04:39:04
[2026-06-19 04:39:05,211.211 INFO    ] 2026-06-19 04:39:05
[2026-06-19 04:39:05,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:39:05,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:39:05,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:39:05,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:39:05,577.577 INFO    ] time= 19/06/2026 04:39:05
[2026-06-19 04:39:05,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:39:05,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:39:05,663.663 INFO    ] No existing commands found in stream
[2026-06-19 04:39:10,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:39:10,678.678 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 04:39:13,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:39:13,429.429 INFO    ] Checking for system updates...
[2026-06-19 04:39:13,465.465 INFO    ] 200
[2026-06-19 04:39:13,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:13,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:39:13,523.523 INFO    ] No update needed
[2026-06-19 04:39:13,526.526 INFO    ] Checking for camera pi updates...
[2026-06-19 04:39:13,560.560 INFO    ] 200
[2026-06-19 04:39:13,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:13,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:39:13,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:39:13,651.651 INFO    ] No camera update needed
[2026-06-19 04:39:13,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:39:13,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:39:13,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:39:13,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:39:15,709.709 INFO    ] ================================================
[2026-06-19 04:39:15,725.725 INFO    ] Launching Daemon at Fri Jun 19 04:39:15 IST 2026
[2026-06-19 04:39:15,737.737 INFO    ] ================================================
[2026-06-19 04:39:16,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:39:16
[2026-06-19 04:39:16,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:39:17,173.173 INFO    ] Initializing speech engine...
[2026-06-19 04:39:17,195.195 INFO    ] 2026-06-19 04:39:17
[2026-06-19 04:39:17,455.455 INFO    ] 2026-06-19 04:39:17
[2026-06-19 04:39:17,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:39:17,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:39:17,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:39:17,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:39:17,833.833 INFO    ] time= 19/06/2026 04:39:17
[2026-06-19 04:39:17,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:39:17,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:39:17,909.909 INFO    ] No existing commands found in stream
[2026-06-19 04:39:22,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:39:22,925.925 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 04:39:25,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:39:25,658.658 INFO    ] Checking for system updates...
[2026-06-19 04:39:25,695.695 INFO    ] 200
[2026-06-19 04:39:25,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:25,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:39:25,755.755 INFO    ] No update needed
[2026-06-19 04:39:25,758.758 INFO    ] Checking for camera pi updates...
[2026-06-19 04:39:25,794.794 INFO    ] 200
[2026-06-19 04:39:25,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:25,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:39:25,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:39:25,893.893 INFO    ] No camera update needed
[2026-06-19 04:39:25,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:39:25,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:39:25,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:39:25,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:39:27,954.954 INFO    ] ================================================
[2026-06-19 04:39:27,970.970 INFO    ] Launching Daemon at Fri Jun 19 04:39:27 IST 2026
[2026-06-19 04:39:27,981.981 INFO    ] ================================================
[2026-06-19 04:39:28,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:39:28
[2026-06-19 04:39:29,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:39:29,401.401 INFO    ] Initializing speech engine...
[2026-06-19 04:39:29,421.421 INFO    ] 2026-06-19 04:39:29
[2026-06-19 04:39:29,673.673 INFO    ] 2026-06-19 04:39:29
[2026-06-19 04:39:29,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:39:29,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:39:29,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:39:30,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:39:30,050.050 INFO    ] time= 19/06/2026 04:39:30
[2026-06-19 04:39:30,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:39:30,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:39:30,233.233 INFO    ] No existing commands found in stream
[2026-06-19 04:39:35,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:39:35,261.261 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 04:39:39,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:39:39,251.251 INFO    ] Checking for system updates...
[2026-06-19 04:39:39,294.294 INFO    ] 200
[2026-06-19 04:39:39,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:39,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:39:39,370.370 INFO    ] No update needed
[2026-06-19 04:39:39,374.374 INFO    ] Checking for camera pi updates...
[2026-06-19 04:39:39,414.414 INFO    ] 200
[2026-06-19 04:39:39,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:39,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:39:39,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:39:39,517.517 INFO    ] No camera update needed
[2026-06-19 04:39:39,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:39:39,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:39:39,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:39:39,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:39:41,577.577 INFO    ] ================================================
[2026-06-19 04:39:41,599.599 INFO    ] Launching Daemon at Fri Jun 19 04:39:41 IST 2026
[2026-06-19 04:39:41,615.615 INFO    ] ================================================
[2026-06-19 04:39:42,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:39:42
[2026-06-19 04:39:42,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:39:43,167.167 INFO    ] Initializing speech engine...
[2026-06-19 04:39:43,174.174 INFO    ] 2026-06-19 04:39:43
[2026-06-19 04:39:43,435.435 INFO    ] 2026-06-19 04:39:43
[2026-06-19 04:39:43,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:39:43,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:39:43,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:39:43,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:39:43,896.896 INFO    ] time= 19/06/2026 04:39:43
[2026-06-19 04:39:43,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:39:43,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:39:44,041.041 INFO    ] No existing commands found in stream
[2026-06-19 04:39:49,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:39:49,056.056 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 04:39:52,419.419 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:39:52,421.421 INFO    ] Checking for system updates...
[2026-06-19 04:39:52,458.458 INFO    ] 200
[2026-06-19 04:39:52,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:52,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:39:52,525.525 INFO    ] No update needed
[2026-06-19 04:39:52,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 04:39:52,567.567 INFO    ] 200
[2026-06-19 04:39:52,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:39:52,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:39:52,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:39:52,759.759 INFO    ] No camera update needed
[2026-06-19 04:39:52,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:39:52,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:39:52,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:39:52,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:39:54,814.814 INFO    ] ================================================
[2026-06-19 04:39:54,829.829 INFO    ] Launching Daemon at Fri Jun 19 04:39:54 IST 2026
[2026-06-19 04:39:54,839.839 INFO    ] ================================================
[2026-06-19 04:39:55,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:39:55
[2026-06-19 04:39:56,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:39:56,300.300 INFO    ] Initializing speech engine...
[2026-06-19 04:39:56,311.311 INFO    ] 2026-06-19 04:39:56
[2026-06-19 04:39:56,565.565 INFO    ] 2026-06-19 04:39:56
[2026-06-19 04:39:56,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:39:56,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:39:56,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:39:56,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:39:57,013.013 INFO    ] time= 19/06/2026 04:39:56
[2026-06-19 04:39:57,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:39:57,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:39:57,183.183 INFO    ] No existing commands found in stream
[2026-06-19 04:40:02,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:40:02,199.199 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 04:40:08,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:40:08,509.509 INFO    ] Checking for system updates...
[2026-06-19 04:40:08,547.547 INFO    ] 200
[2026-06-19 04:40:08,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:08,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:40:08,614.614 INFO    ] No update needed
[2026-06-19 04:40:08,617.617 INFO    ] Checking for camera pi updates...
[2026-06-19 04:40:08,656.656 INFO    ] 200
[2026-06-19 04:40:08,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:08,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:40:08,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:40:08,745.745 INFO    ] No camera update needed
[2026-06-19 04:40:08,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:40:08,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:40:08,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:40:08,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:40:10,806.806 INFO    ] ================================================
[2026-06-19 04:40:10,821.821 INFO    ] Launching Daemon at Fri Jun 19 04:40:10 IST 2026
[2026-06-19 04:40:10,832.832 INFO    ] ================================================
[2026-06-19 04:40:11,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:40:11
[2026-06-19 04:40:11,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:40:12,258.258 INFO    ] Initializing speech engine...
[2026-06-19 04:40:12,270.270 INFO    ] 2026-06-19 04:40:12
[2026-06-19 04:40:12,543.543 INFO    ] 2026-06-19 04:40:12
[2026-06-19 04:40:12,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:40:12,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:40:12,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:40:12,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:40:12,908.908 INFO    ] time= 19/06/2026 04:40:12
[2026-06-19 04:40:12,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:40:12,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:40:13,020.020 INFO    ] No existing commands found in stream
[2026-06-19 04:40:18,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:40:18,035.035 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 04:40:19,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:40:19,964.964 INFO    ] Checking for system updates...
[2026-06-19 04:40:19,999.999 INFO    ] 200
[2026-06-19 04:40:20,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:20,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:40:20,058.058 INFO    ] No update needed
[2026-06-19 04:40:20,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 04:40:20,099.099 INFO    ] 200
[2026-06-19 04:40:20,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:20,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:40:20,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:40:20,197.197 INFO    ] No camera update needed
[2026-06-19 04:40:20,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:40:20,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:40:20,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:40:20,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:40:22,252.252 INFO    ] ================================================
[2026-06-19 04:40:22,267.267 INFO    ] Launching Daemon at Fri Jun 19 04:40:22 IST 2026
[2026-06-19 04:40:22,277.277 INFO    ] ================================================
[2026-06-19 04:40:22,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:40:22
[2026-06-19 04:40:23,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:40:23,762.762 INFO    ] Initializing speech engine...
[2026-06-19 04:40:23,770.770 INFO    ] 2026-06-19 04:40:23
[2026-06-19 04:40:24,069.069 INFO    ] 2026-06-19 04:40:24
[2026-06-19 04:40:24,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:40:24,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:40:24,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:40:24,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:40:24,460.460 INFO    ] time= 19/06/2026 04:40:24
[2026-06-19 04:40:24,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:40:24,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:40:24,544.544 INFO    ] No existing commands found in stream
[2026-06-19 04:40:29,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:40:29,562.562 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 04:40:32,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:40:32,985.985 INFO    ] Checking for system updates...
[2026-06-19 04:40:33,023.023 INFO    ] 200
[2026-06-19 04:40:33,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:33,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:40:33,089.089 INFO    ] No update needed
[2026-06-19 04:40:33,091.091 INFO    ] Checking for camera pi updates...
[2026-06-19 04:40:33,136.136 INFO    ] 200
[2026-06-19 04:40:33,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:33,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:40:33,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:40:33,246.246 INFO    ] No camera update needed
[2026-06-19 04:40:33,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:40:33,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:40:33,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:40:33,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:40:35,301.301 INFO    ] ================================================
[2026-06-19 04:40:35,317.317 INFO    ] Launching Daemon at Fri Jun 19 04:40:35 IST 2026
[2026-06-19 04:40:35,327.327 INFO    ] ================================================
[2026-06-19 04:40:35,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:40:35
[2026-06-19 04:40:36,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:40:36,760.760 INFO    ] Initializing speech engine...
[2026-06-19 04:40:36,783.783 INFO    ] 2026-06-19 04:40:36
[2026-06-19 04:40:37,042.042 INFO    ] 2026-06-19 04:40:37
[2026-06-19 04:40:37,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:40:37,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:40:37,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:40:37,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:40:37,507.507 INFO    ] time= 19/06/2026 04:40:37
[2026-06-19 04:40:37,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:40:37,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:40:37,672.672 INFO    ] No existing commands found in stream
[2026-06-19 04:40:42,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:40:42,687.687 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 04:40:43,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:40:43,493.493 INFO    ] Checking for system updates...
[2026-06-19 04:40:43,530.530 INFO    ] 200
[2026-06-19 04:40:43,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:43,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:40:43,596.596 INFO    ] No update needed
[2026-06-19 04:40:43,598.598 INFO    ] Checking for camera pi updates...
[2026-06-19 04:40:43,637.637 INFO    ] 200
[2026-06-19 04:40:43,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:43,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:40:43,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:40:43,731.731 INFO    ] No camera update needed
[2026-06-19 04:40:43,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:40:43,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:40:43,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:40:43,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:40:45,785.785 INFO    ] ================================================
[2026-06-19 04:40:45,801.801 INFO    ] Launching Daemon at Fri Jun 19 04:40:45 IST 2026
[2026-06-19 04:40:45,812.812 INFO    ] ================================================
[2026-06-19 04:40:46,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:40:46
[2026-06-19 04:40:47,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:40:47,391.391 INFO    ] Initializing speech engine...
[2026-06-19 04:40:47,400.400 INFO    ] 2026-06-19 04:40:47
[2026-06-19 04:40:47,697.697 INFO    ] 2026-06-19 04:40:47
[2026-06-19 04:40:47,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:40:47,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:40:47,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:40:48,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:40:48,142.142 INFO    ] time= 19/06/2026 04:40:48
[2026-06-19 04:40:48,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:40:48,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:40:48,350.350 INFO    ] No existing commands found in stream
[2026-06-19 04:40:53,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:40:53,383.383 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 04:40:54,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:40:54,314.314 INFO    ] Checking for system updates...
[2026-06-19 04:40:54,350.350 INFO    ] 200
[2026-06-19 04:40:54,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:54,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:40:54,409.409 INFO    ] No update needed
[2026-06-19 04:40:54,411.411 INFO    ] Checking for camera pi updates...
[2026-06-19 04:40:54,445.445 INFO    ] 200
[2026-06-19 04:40:54,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:40:54,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:40:54,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:40:54,536.536 INFO    ] No camera update needed
[2026-06-19 04:40:54,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:40:54,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:40:54,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:40:54,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:40:56,591.591 INFO    ] ================================================
[2026-06-19 04:40:56,606.606 INFO    ] Launching Daemon at Fri Jun 19 04:40:56 IST 2026
[2026-06-19 04:40:56,617.617 INFO    ] ================================================
[2026-06-19 04:40:57,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:40:57
[2026-06-19 04:40:57,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:40:58,038.038 INFO    ] Initializing speech engine...
[2026-06-19 04:40:58,046.046 INFO    ] 2026-06-19 04:40:58
[2026-06-19 04:40:58,322.322 INFO    ] 2026-06-19 04:40:58
[2026-06-19 04:40:58,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:40:58,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:40:58,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:40:58,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:40:58,680.680 INFO    ] time= 19/06/2026 04:40:58
[2026-06-19 04:40:58,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:40:58,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:40:58,781.781 INFO    ] No existing commands found in stream
[2026-06-19 04:41:03,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:41:03,799.799 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 04:41:06,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:41:06,988.988 INFO    ] Checking for system updates...
[2026-06-19 04:41:07,037.037 INFO    ] 200
[2026-06-19 04:41:07,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:07,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:41:07,102.102 INFO    ] No update needed
[2026-06-19 04:41:07,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 04:41:07,139.139 INFO    ] 200
[2026-06-19 04:41:07,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:07,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:41:07,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:41:07,227.227 INFO    ] No camera update needed
[2026-06-19 04:41:07,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:41:07,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:41:07,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:41:07,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:41:09,283.283 INFO    ] ================================================
[2026-06-19 04:41:09,299.299 INFO    ] Launching Daemon at Fri Jun 19 04:41:09 IST 2026
[2026-06-19 04:41:09,309.309 INFO    ] ================================================
[2026-06-19 04:41:09,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:41:09
[2026-06-19 04:41:10,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:41:10,742.742 INFO    ] Initializing speech engine...
[2026-06-19 04:41:10,767.767 INFO    ] 2026-06-19 04:41:10
[2026-06-19 04:41:11,024.024 INFO    ] 2026-06-19 04:41:11
[2026-06-19 04:41:11,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:41:11,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:41:11,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:41:11,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:41:11,380.380 INFO    ] time= 19/06/2026 04:41:11
[2026-06-19 04:41:11,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:41:11,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:41:11,461.461 INFO    ] No existing commands found in stream
[2026-06-19 04:41:16,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:41:16,474.474 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 04:41:19,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:41:19,997.997 INFO    ] Checking for system updates...
[2026-06-19 04:41:20,038.038 INFO    ] 200
[2026-06-19 04:41:20,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:20,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:41:20,111.111 INFO    ] No update needed
[2026-06-19 04:41:20,113.113 INFO    ] Checking for camera pi updates...
[2026-06-19 04:41:20,152.152 INFO    ] 200
[2026-06-19 04:41:20,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:20,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:41:20,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:41:20,239.239 INFO    ] No camera update needed
[2026-06-19 04:41:20,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:41:20,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:41:20,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:41:20,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:41:22,294.294 INFO    ] ================================================
[2026-06-19 04:41:22,310.310 INFO    ] Launching Daemon at Fri Jun 19 04:41:22 IST 2026
[2026-06-19 04:41:22,321.321 INFO    ] ================================================
[2026-06-19 04:41:22,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:41:22
[2026-06-19 04:41:23,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:41:23,947.947 INFO    ] Initializing speech engine...
[2026-06-19 04:41:23,954.954 INFO    ] 2026-06-19 04:41:23
[2026-06-19 04:41:24,243.243 INFO    ] 2026-06-19 04:41:24
[2026-06-19 04:41:24,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:41:24,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:41:24,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:41:24,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:41:24,784.784 INFO    ] time= 19/06/2026 04:41:24
[2026-06-19 04:41:24,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:41:24,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:41:24,913.913 INFO    ] No existing commands found in stream
[2026-06-19 04:41:29,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:41:29,944.944 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 04:41:32,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:41:32,968.968 INFO    ] Checking for system updates...
[2026-06-19 04:41:33,016.016 INFO    ] 200
[2026-06-19 04:41:33,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:33,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:41:33,085.085 INFO    ] No update needed
[2026-06-19 04:41:33,088.088 INFO    ] Checking for camera pi updates...
[2026-06-19 04:41:33,132.132 INFO    ] 200
[2026-06-19 04:41:33,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:33,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:41:33,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:41:33,251.251 INFO    ] No camera update needed
[2026-06-19 04:41:33,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:41:33,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:41:33,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:41:33,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:41:35,313.313 INFO    ] ================================================
[2026-06-19 04:41:35,329.329 INFO    ] Launching Daemon at Fri Jun 19 04:41:35 IST 2026
[2026-06-19 04:41:35,339.339 INFO    ] ================================================
[2026-06-19 04:41:36,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:41:35
[2026-06-19 04:41:36,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:41:37,008.008 INFO    ] Initializing speech engine...
[2026-06-19 04:41:37,014.014 INFO    ] 2026-06-19 04:41:37
[2026-06-19 04:41:37,301.301 INFO    ] 2026-06-19 04:41:37
[2026-06-19 04:41:37,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:41:37,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:41:37,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:41:37,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:41:37,731.731 INFO    ] time= 19/06/2026 04:41:37
[2026-06-19 04:41:37,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:41:37,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:41:37,887.887 INFO    ] No existing commands found in stream
[2026-06-19 04:41:42,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:41:42,901.901 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 04:41:45,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:41:45,834.834 INFO    ] Checking for system updates...
[2026-06-19 04:41:45,870.870 INFO    ] 200
[2026-06-19 04:41:45,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:45,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:41:45,927.927 INFO    ] No update needed
[2026-06-19 04:41:45,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 04:41:45,969.969 INFO    ] 200
[2026-06-19 04:41:45,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:46,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:41:46,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:41:46,069.069 INFO    ] No camera update needed
[2026-06-19 04:41:46,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:41:46,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:41:46,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:41:46,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:41:48,126.126 INFO    ] ================================================
[2026-06-19 04:41:48,141.141 INFO    ] Launching Daemon at Fri Jun 19 04:41:48 IST 2026
[2026-06-19 04:41:48,152.152 INFO    ] ================================================
[2026-06-19 04:41:48,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:41:48
[2026-06-19 04:41:49,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:41:49,618.618 INFO    ] Initializing speech engine...
[2026-06-19 04:41:49,629.629 INFO    ] 2026-06-19 04:41:49
[2026-06-19 04:41:49,876.876 INFO    ] 2026-06-19 04:41:49
[2026-06-19 04:41:49,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:41:50,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:41:50,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:41:50,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:41:50,349.349 INFO    ] time= 19/06/2026 04:41:50
[2026-06-19 04:41:50,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:41:50,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:41:50,565.565 INFO    ] No existing commands found in stream
[2026-06-19 04:41:55,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:41:55,599.599 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 04:41:56,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:41:56,066.066 INFO    ] Checking for system updates...
[2026-06-19 04:41:56,103.103 INFO    ] 200
[2026-06-19 04:41:56,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:56,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:41:56,170.170 INFO    ] No update needed
[2026-06-19 04:41:56,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 04:41:56,212.212 INFO    ] 200
[2026-06-19 04:41:56,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:41:56,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:41:56,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:41:56,406.406 INFO    ] No camera update needed
[2026-06-19 04:41:56,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:41:56,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:41:56,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:41:56,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:41:58,465.465 INFO    ] ================================================
[2026-06-19 04:41:58,480.480 INFO    ] Launching Daemon at Fri Jun 19 04:41:58 IST 2026
[2026-06-19 04:41:58,491.491 INFO    ] ================================================
[2026-06-19 04:41:59,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:41:59
[2026-06-19 04:41:59,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:41:59,952.952 INFO    ] Initializing speech engine...
[2026-06-19 04:41:59,963.963 INFO    ] 2026-06-19 04:41:59
[2026-06-19 04:42:00,225.225 INFO    ] 2026-06-19 04:42:00
[2026-06-19 04:42:00,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:42:00,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:42:00,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:42:00,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:42:00,670.670 INFO    ] time= 19/06/2026 04:42:00
[2026-06-19 04:42:00,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:42:00,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:42:00,831.831 INFO    ] No existing commands found in stream
[2026-06-19 04:42:05,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:42:05,846.846 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 04:42:09,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:42:09,470.470 INFO    ] Checking for system updates...
[2026-06-19 04:42:09,506.506 INFO    ] 200
[2026-06-19 04:42:09,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:09,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:42:09,572.572 INFO    ] No update needed
[2026-06-19 04:42:09,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 04:42:09,612.612 INFO    ] 200
[2026-06-19 04:42:09,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:09,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:42:09,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:42:09,707.707 INFO    ] No camera update needed
[2026-06-19 04:42:09,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:42:09,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:42:09,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:42:09,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:42:11,764.764 INFO    ] ================================================
[2026-06-19 04:42:11,778.778 INFO    ] Launching Daemon at Fri Jun 19 04:42:11 IST 2026
[2026-06-19 04:42:11,789.789 INFO    ] ================================================
[2026-06-19 04:42:12,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:42:12
[2026-06-19 04:42:12,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:42:13,230.230 INFO    ] Initializing speech engine...
[2026-06-19 04:42:13,245.245 INFO    ] 2026-06-19 04:42:13
[2026-06-19 04:42:13,510.510 INFO    ] 2026-06-19 04:42:13
[2026-06-19 04:42:13,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:42:13,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:42:13,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:42:13,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:42:13,891.891 INFO    ] time= 19/06/2026 04:42:13
[2026-06-19 04:42:13,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:42:13,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:42:14,054.054 INFO    ] No existing commands found in stream
[2026-06-19 04:42:19,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:42:19,087.087 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 04:42:23,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:42:23,306.306 INFO    ] Checking for system updates...
[2026-06-19 04:42:23,343.343 INFO    ] 200
[2026-06-19 04:42:23,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:23,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:42:23,411.411 INFO    ] No update needed
[2026-06-19 04:42:23,414.414 INFO    ] Checking for camera pi updates...
[2026-06-19 04:42:23,456.456 INFO    ] 200
[2026-06-19 04:42:23,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:23,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:42:23,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:42:23,553.553 INFO    ] No camera update needed
[2026-06-19 04:42:23,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:42:23,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:42:23,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:42:23,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:42:25,612.612 INFO    ] ================================================
[2026-06-19 04:42:25,628.628 INFO    ] Launching Daemon at Fri Jun 19 04:42:25 IST 2026
[2026-06-19 04:42:25,639.639 INFO    ] ================================================
[2026-06-19 04:42:26,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:42:26
[2026-06-19 04:42:26,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:42:27,065.065 INFO    ] Initializing speech engine...
[2026-06-19 04:42:27,073.073 INFO    ] 2026-06-19 04:42:27
[2026-06-19 04:42:27,325.325 INFO    ] 2026-06-19 04:42:27
[2026-06-19 04:42:27,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:42:27,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:42:27,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:42:27,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:42:27,702.702 INFO    ] time= 19/06/2026 04:42:27
[2026-06-19 04:42:27,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:42:27,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:42:27,766.766 INFO    ] No existing commands found in stream
[2026-06-19 04:42:32,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:42:32,780.780 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 04:42:34,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:42:34,260.260 INFO    ] Checking for system updates...
[2026-06-19 04:42:34,303.303 INFO    ] 200
[2026-06-19 04:42:34,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:34,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:42:34,369.369 INFO    ] No update needed
[2026-06-19 04:42:34,372.372 INFO    ] Checking for camera pi updates...
[2026-06-19 04:42:34,410.410 INFO    ] 200
[2026-06-19 04:42:34,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:34,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:42:34,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:42:34,493.493 INFO    ] No camera update needed
[2026-06-19 04:42:34,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:42:34,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:42:34,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:42:34,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:42:36,547.547 INFO    ] ================================================
[2026-06-19 04:42:36,563.563 INFO    ] Launching Daemon at Fri Jun 19 04:42:36 IST 2026
[2026-06-19 04:42:36,574.574 INFO    ] ================================================
[2026-06-19 04:42:37,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:42:37
[2026-06-19 04:42:37,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:42:38,194.194 INFO    ] Initializing speech engine...
[2026-06-19 04:42:38,208.208 INFO    ] 2026-06-19 04:42:38
[2026-06-19 04:42:38,505.505 INFO    ] 2026-06-19 04:42:38
[2026-06-19 04:42:38,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:42:38,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:42:38,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:42:38,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:42:38,979.979 INFO    ] time= 19/06/2026 04:42:38
[2026-06-19 04:42:39,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:42:39,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:42:39,119.119 INFO    ] No existing commands found in stream
[2026-06-19 04:42:44,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:42:44,136.136 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 04:42:46,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:42:46,072.072 INFO    ] Checking for system updates...
[2026-06-19 04:42:46,109.109 INFO    ] 200
[2026-06-19 04:42:46,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:46,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:42:46,178.178 INFO    ] No update needed
[2026-06-19 04:42:46,180.180 INFO    ] Checking for camera pi updates...
[2026-06-19 04:42:46,216.216 INFO    ] 200
[2026-06-19 04:42:46,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:46,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:42:46,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:42:46,312.312 INFO    ] No camera update needed
[2026-06-19 04:42:46,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:42:46,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:42:46,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:42:46,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:42:48,376.376 INFO    ] ================================================
[2026-06-19 04:42:48,391.391 INFO    ] Launching Daemon at Fri Jun 19 04:42:48 IST 2026
[2026-06-19 04:42:48,402.402 INFO    ] ================================================
[2026-06-19 04:42:48,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:42:48
[2026-06-19 04:42:49,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:42:49,870.870 INFO    ] Initializing speech engine...
[2026-06-19 04:42:49,877.877 INFO    ] 2026-06-19 04:42:49
[2026-06-19 04:42:50,140.140 INFO    ] 2026-06-19 04:42:50
[2026-06-19 04:42:50,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:42:50,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:42:50,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:42:50,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:42:50,601.601 INFO    ] time= 19/06/2026 04:42:50
[2026-06-19 04:42:50,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:42:50,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:42:50,749.749 INFO    ] No existing commands found in stream
[2026-06-19 04:42:55,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:42:55,764.764 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 04:42:57,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:42:57,976.976 INFO    ] Checking for system updates...
[2026-06-19 04:42:58,012.012 INFO    ] 200
[2026-06-19 04:42:58,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:58,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:42:58,079.079 INFO    ] No update needed
[2026-06-19 04:42:58,081.081 INFO    ] Checking for camera pi updates...
[2026-06-19 04:42:58,116.116 INFO    ] 200
[2026-06-19 04:42:58,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:42:58,166.166 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:42:58,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:42:58,221.221 INFO    ] No camera update needed
[2026-06-19 04:42:58,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:42:58,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:42:58,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:42:58,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:43:00,281.281 INFO    ] ================================================
[2026-06-19 04:43:00,297.297 INFO    ] Launching Daemon at Fri Jun 19 04:43:00 IST 2026
[2026-06-19 04:43:00,307.307 INFO    ] ================================================
[2026-06-19 04:43:00,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:43:00
[2026-06-19 04:43:01,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:43:02,207.207 INFO    ] Initializing speech engine...
[2026-06-19 04:43:02,210.210 INFO    ] 2026-06-19 04:43:02
[2026-06-19 04:43:02,582.582 INFO    ] 2026-06-19 04:43:02
[2026-06-19 04:43:02,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:43:02,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:43:02,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:43:03,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:43:03,011.011 INFO    ] time= 19/06/2026 04:43:03
[2026-06-19 04:43:03,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:43:03,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:43:03,206.206 INFO    ] No existing commands found in stream
[2026-06-19 04:43:08,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:43:08,220.220 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 04:43:10,151.151 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:43:10,154.154 INFO    ] Checking for system updates...
[2026-06-19 04:43:10,190.190 INFO    ] 200
[2026-06-19 04:43:10,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:10,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:43:10,258.258 INFO    ] No update needed
[2026-06-19 04:43:10,260.260 INFO    ] Checking for camera pi updates...
[2026-06-19 04:43:10,298.298 INFO    ] 200
[2026-06-19 04:43:10,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:10,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:43:10,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:43:10,389.389 INFO    ] No camera update needed
[2026-06-19 04:43:10,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:43:10,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:43:10,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:43:10,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:43:12,445.445 INFO    ] ================================================
[2026-06-19 04:43:12,460.460 INFO    ] Launching Daemon at Fri Jun 19 04:43:12 IST 2026
[2026-06-19 04:43:12,471.471 INFO    ] ================================================
[2026-06-19 04:43:13,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:43:13
[2026-06-19 04:43:13,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:43:13,927.927 INFO    ] Initializing speech engine...
[2026-06-19 04:43:13,943.943 INFO    ] 2026-06-19 04:43:13
[2026-06-19 04:43:14,191.191 INFO    ] 2026-06-19 04:43:14
[2026-06-19 04:43:14,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:43:14,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:43:14,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:43:14,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:43:14,661.661 INFO    ] time= 19/06/2026 04:43:14
[2026-06-19 04:43:14,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:43:14,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:43:14,802.802 INFO    ] No existing commands found in stream
[2026-06-19 04:43:19,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:43:19,817.817 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 04:43:22,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:43:22,810.810 INFO    ] Checking for system updates...
[2026-06-19 04:43:22,846.846 INFO    ] 200
[2026-06-19 04:43:22,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:22,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:43:22,912.912 INFO    ] No update needed
[2026-06-19 04:43:22,914.914 INFO    ] Checking for camera pi updates...
[2026-06-19 04:43:22,952.952 INFO    ] 200
[2026-06-19 04:43:22,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:22,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:43:23,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:43:23,045.045 INFO    ] No camera update needed
[2026-06-19 04:43:23,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:43:23,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:43:23,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:43:23,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:43:25,103.103 INFO    ] ================================================
[2026-06-19 04:43:25,118.118 INFO    ] Launching Daemon at Fri Jun 19 04:43:25 IST 2026
[2026-06-19 04:43:25,128.128 INFO    ] ================================================
[2026-06-19 04:43:25,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:43:25
[2026-06-19 04:43:26,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:43:26,734.734 INFO    ] Initializing speech engine...
[2026-06-19 04:43:26,756.756 INFO    ] 2026-06-19 04:43:26
[2026-06-19 04:43:27,029.029 INFO    ] 2026-06-19 04:43:27
[2026-06-19 04:43:27,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:43:27,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:43:27,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:43:27,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:43:27,414.414 INFO    ] time= 19/06/2026 04:43:27
[2026-06-19 04:43:27,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:43:27,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:43:27,595.595 INFO    ] No existing commands found in stream
[2026-06-19 04:43:32,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:43:32,629.629 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 04:43:35,877.877 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:43:35,880.880 INFO    ] Checking for system updates...
[2026-06-19 04:43:35,920.920 INFO    ] 200
[2026-06-19 04:43:35,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:35,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:43:36,002.002 INFO    ] No update needed
[2026-06-19 04:43:36,006.006 INFO    ] Checking for camera pi updates...
[2026-06-19 04:43:36,051.051 INFO    ] 200
[2026-06-19 04:43:36,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:36,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:43:36,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:43:36,164.164 INFO    ] No camera update needed
[2026-06-19 04:43:36,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:43:36,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:43:36,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:43:36,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:43:38,230.230 INFO    ] ================================================
[2026-06-19 04:43:38,245.245 INFO    ] Launching Daemon at Fri Jun 19 04:43:38 IST 2026
[2026-06-19 04:43:38,256.256 INFO    ] ================================================
[2026-06-19 04:43:38,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:43:38
[2026-06-19 04:43:39,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:43:39,760.760 INFO    ] Initializing speech engine...
[2026-06-19 04:43:39,766.766 INFO    ] 2026-06-19 04:43:39
[2026-06-19 04:43:40,026.026 INFO    ] 2026-06-19 04:43:40
[2026-06-19 04:43:40,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:43:40,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:43:40,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:43:40,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:43:40,500.500 INFO    ] time= 19/06/2026 04:43:40
[2026-06-19 04:43:40,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:43:40,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:43:40,654.654 INFO    ] No existing commands found in stream
[2026-06-19 04:43:45,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:43:45,669.669 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 04:43:46,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:43:46,739.739 INFO    ] Checking for system updates...
[2026-06-19 04:43:46,779.779 INFO    ] 200
[2026-06-19 04:43:46,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:46,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:43:46,847.847 INFO    ] No update needed
[2026-06-19 04:43:46,850.850 INFO    ] Checking for camera pi updates...
[2026-06-19 04:43:46,888.888 INFO    ] 200
[2026-06-19 04:43:46,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:46,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:43:46,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:43:46,960.960 INFO    ] No camera update needed
[2026-06-19 04:43:46,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:43:46,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:43:46,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:43:46,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:43:49,017.017 INFO    ] ================================================
[2026-06-19 04:43:49,032.032 INFO    ] Launching Daemon at Fri Jun 19 04:43:49 IST 2026
[2026-06-19 04:43:49,043.043 INFO    ] ================================================
[2026-06-19 04:43:49,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:43:49
[2026-06-19 04:43:50,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:43:50,475.475 INFO    ] Initializing speech engine...
[2026-06-19 04:43:50,483.483 INFO    ] 2026-06-19 04:43:50
[2026-06-19 04:43:50,755.755 INFO    ] 2026-06-19 04:43:50
[2026-06-19 04:43:50,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:43:50,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:43:50,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:43:51,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:43:51,131.131 INFO    ] time= 19/06/2026 04:43:51
[2026-06-19 04:43:51,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:43:51,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:43:51,305.305 INFO    ] No existing commands found in stream
[2026-06-19 04:43:56,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:43:56,339.339 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 04:43:59,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:43:59,252.252 INFO    ] Checking for system updates...
[2026-06-19 04:43:59,292.292 INFO    ] 200
[2026-06-19 04:43:59,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:59,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:43:59,359.359 INFO    ] No update needed
[2026-06-19 04:43:59,361.361 INFO    ] Checking for camera pi updates...
[2026-06-19 04:43:59,395.395 INFO    ] 200
[2026-06-19 04:43:59,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:43:59,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:43:59,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:43:59,585.585 INFO    ] No camera update needed
[2026-06-19 04:43:59,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:43:59,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:43:59,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:43:59,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:44:01,641.641 INFO    ] ================================================
[2026-06-19 04:44:01,656.656 INFO    ] Launching Daemon at Fri Jun 19 04:44:01 IST 2026
[2026-06-19 04:44:01,667.667 INFO    ] ================================================
[2026-06-19 04:44:02,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:44:02
[2026-06-19 04:44:03,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:44:03,364.364 INFO    ] Initializing speech engine...
[2026-06-19 04:44:03,371.371 INFO    ] 2026-06-19 04:44:03
[2026-06-19 04:44:03,688.688 INFO    ] 2026-06-19 04:44:03
[2026-06-19 04:44:03,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:44:03,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:44:03,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:44:04,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:44:04,074.074 INFO    ] time= 19/06/2026 04:44:04
[2026-06-19 04:44:04,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:44:04,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:44:04,158.158 INFO    ] No existing commands found in stream
[2026-06-19 04:44:09,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:44:09,197.197 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 04:44:13,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:44:13,046.046 INFO    ] Checking for system updates...
[2026-06-19 04:44:13,083.083 INFO    ] 200
[2026-06-19 04:44:13,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:13,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:44:13,146.146 INFO    ] No update needed
[2026-06-19 04:44:13,149.149 INFO    ] Checking for camera pi updates...
[2026-06-19 04:44:13,184.184 INFO    ] 200
[2026-06-19 04:44:13,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:13,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:44:13,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:44:13,284.284 INFO    ] No camera update needed
[2026-06-19 04:44:13,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:44:13,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:44:13,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:44:13,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:44:15,346.346 INFO    ] ================================================
[2026-06-19 04:44:15,361.361 INFO    ] Launching Daemon at Fri Jun 19 04:44:15 IST 2026
[2026-06-19 04:44:15,372.372 INFO    ] ================================================
[2026-06-19 04:44:16,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:44:16
[2026-06-19 04:44:16,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:44:17,048.048 INFO    ] Initializing speech engine...
[2026-06-19 04:44:17,060.060 INFO    ] 2026-06-19 04:44:17
[2026-06-19 04:44:17,369.369 INFO    ] 2026-06-19 04:44:17
[2026-06-19 04:44:17,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:44:17,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:44:17,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:44:17,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:44:17,879.879 INFO    ] time= 19/06/2026 04:44:17
[2026-06-19 04:44:17,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:44:17,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:44:18,033.033 INFO    ] No existing commands found in stream
[2026-06-19 04:44:23,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:44:23,054.054 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 04:44:24,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:44:24,369.369 INFO    ] Checking for system updates...
[2026-06-19 04:44:24,416.416 INFO    ] 200
[2026-06-19 04:44:24,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:24,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:44:24,484.484 INFO    ] No update needed
[2026-06-19 04:44:24,487.487 INFO    ] Checking for camera pi updates...
[2026-06-19 04:44:24,522.522 INFO    ] 200
[2026-06-19 04:44:24,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:24,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:44:24,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:44:24,623.623 INFO    ] No camera update needed
[2026-06-19 04:44:24,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:44:24,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:44:24,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:44:24,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:44:26,682.682 INFO    ] ================================================
[2026-06-19 04:44:26,698.698 INFO    ] Launching Daemon at Fri Jun 19 04:44:26 IST 2026
[2026-06-19 04:44:26,709.709 INFO    ] ================================================
[2026-06-19 04:44:27,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:44:27
[2026-06-19 04:44:27,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:44:28,148.148 INFO    ] Initializing speech engine...
[2026-06-19 04:44:28,158.158 INFO    ] 2026-06-19 04:44:28
[2026-06-19 04:44:28,420.420 INFO    ] 2026-06-19 04:44:28
[2026-06-19 04:44:28,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:44:28,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:44:28,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:44:28,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:44:28,886.886 INFO    ] time= 19/06/2026 04:44:28
[2026-06-19 04:44:28,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:44:28,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:44:29,030.030 INFO    ] No existing commands found in stream
[2026-06-19 04:44:34,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:44:34,045.045 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 04:44:35,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:44:35,952.952 INFO    ] Checking for system updates...
[2026-06-19 04:44:35,993.993 INFO    ] 200
[2026-06-19 04:44:35,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:36,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:44:36,052.052 INFO    ] No update needed
[2026-06-19 04:44:36,054.054 INFO    ] Checking for camera pi updates...
[2026-06-19 04:44:36,088.088 INFO    ] 200
[2026-06-19 04:44:36,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:36,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:44:36,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:44:36,177.177 INFO    ] No camera update needed
[2026-06-19 04:44:36,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:44:36,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:44:36,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:44:36,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:44:38,239.239 INFO    ] ================================================
[2026-06-19 04:44:38,255.255 INFO    ] Launching Daemon at Fri Jun 19 04:44:38 IST 2026
[2026-06-19 04:44:38,267.267 INFO    ] ================================================
[2026-06-19 04:44:38,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:44:38
[2026-06-19 04:44:39,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:44:39,747.747 INFO    ] Initializing speech engine...
[2026-06-19 04:44:39,753.753 INFO    ] 2026-06-19 04:44:39
[2026-06-19 04:44:40,064.064 INFO    ] 2026-06-19 04:44:40
[2026-06-19 04:44:40,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:44:40,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:44:40,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:44:40,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:44:40,451.451 INFO    ] time= 19/06/2026 04:44:40
[2026-06-19 04:44:40,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:44:40,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:44:40,582.582 INFO    ] No existing commands found in stream
[2026-06-19 04:44:45,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:44:45,596.596 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 04:44:47,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:44:47,344.344 INFO    ] Checking for system updates...
[2026-06-19 04:44:47,380.380 INFO    ] 200
[2026-06-19 04:44:47,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:47,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:44:47,447.447 INFO    ] No update needed
[2026-06-19 04:44:47,450.450 INFO    ] Checking for camera pi updates...
[2026-06-19 04:44:47,483.483 INFO    ] 200
[2026-06-19 04:44:47,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:47,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:44:47,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:44:47,564.564 INFO    ] No camera update needed
[2026-06-19 04:44:47,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:44:47,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:44:47,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:44:47,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:44:49,622.622 INFO    ] ================================================
[2026-06-19 04:44:49,638.638 INFO    ] Launching Daemon at Fri Jun 19 04:44:49 IST 2026
[2026-06-19 04:44:49,650.650 INFO    ] ================================================
[2026-06-19 04:44:50,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:44:50
[2026-06-19 04:44:50,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:44:51,082.082 INFO    ] Initializing speech engine...
[2026-06-19 04:44:51,088.088 INFO    ] 2026-06-19 04:44:51
[2026-06-19 04:44:51,337.337 INFO    ] 2026-06-19 04:44:51
[2026-06-19 04:44:51,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:44:51,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:44:51,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:44:51,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:44:51,716.716 INFO    ] time= 19/06/2026 04:44:51
[2026-06-19 04:44:51,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:44:51,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:44:51,868.868 INFO    ] No existing commands found in stream
[2026-06-19 04:44:56,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:44:56,902.902 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 04:44:59,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:44:59,427.427 INFO    ] Checking for system updates...
[2026-06-19 04:44:59,464.464 INFO    ] 200
[2026-06-19 04:44:59,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:59,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:44:59,532.532 INFO    ] No update needed
[2026-06-19 04:44:59,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 04:44:59,575.575 INFO    ] 200
[2026-06-19 04:44:59,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:44:59,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:44:59,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:44:59,669.669 INFO    ] No camera update needed
[2026-06-19 04:44:59,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:44:59,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:44:59,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:44:59,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:45:01,730.730 INFO    ] ================================================
[2026-06-19 04:45:01,746.746 INFO    ] Launching Daemon at Fri Jun 19 04:45:01 IST 2026
[2026-06-19 04:45:01,757.757 INFO    ] ================================================
[2026-06-19 04:45:02,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:45:02
[2026-06-19 04:45:03,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:45:03,797.797 INFO    ] Initializing speech engine...
[2026-06-19 04:45:03,800.800 INFO    ] 2026-06-19 04:45:03
[2026-06-19 04:45:04,119.119 INFO    ] 2026-06-19 04:45:04
[2026-06-19 04:45:04,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:45:04,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:45:04,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:45:04,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:45:04,483.483 INFO    ] time= 19/06/2026 04:45:04
[2026-06-19 04:45:04,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:45:04,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:45:04,620.620 INFO    ] No existing commands found in stream
[2026-06-19 04:45:09,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:45:09,634.634 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 04:45:11,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:45:11,054.054 INFO    ] Checking for system updates...
[2026-06-19 04:45:11,090.090 INFO    ] 200
[2026-06-19 04:45:11,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:11,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:45:11,147.147 INFO    ] No update needed
[2026-06-19 04:45:11,150.150 INFO    ] Checking for camera pi updates...
[2026-06-19 04:45:11,183.183 INFO    ] 200
[2026-06-19 04:45:11,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:11,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:45:11,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:45:11,274.274 INFO    ] No camera update needed
[2026-06-19 04:45:11,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:45:11,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:45:11,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:45:11,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:45:13,331.331 INFO    ] ================================================
[2026-06-19 04:45:13,347.347 INFO    ] Launching Daemon at Fri Jun 19 04:45:13 IST 2026
[2026-06-19 04:45:13,358.358 INFO    ] ================================================
[2026-06-19 04:45:13,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:45:13
[2026-06-19 04:45:14,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:45:14,768.768 INFO    ] Initializing speech engine...
[2026-06-19 04:45:14,774.774 INFO    ] 2026-06-19 04:45:14
[2026-06-19 04:45:15,070.070 INFO    ] 2026-06-19 04:45:15
[2026-06-19 04:45:15,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:45:15,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:45:15,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:45:15,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:45:15,433.433 INFO    ] time= 19/06/2026 04:45:15
[2026-06-19 04:45:15,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:45:15,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:45:15,513.513 INFO    ] No existing commands found in stream
[2026-06-19 04:45:20,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:45:20,528.528 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 04:45:23,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:45:23,371.371 INFO    ] Checking for system updates...
[2026-06-19 04:45:23,407.407 INFO    ] 200
[2026-06-19 04:45:23,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:23,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:45:23,465.465 INFO    ] No update needed
[2026-06-19 04:45:23,467.467 INFO    ] Checking for camera pi updates...
[2026-06-19 04:45:23,502.502 INFO    ] 200
[2026-06-19 04:45:23,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:23,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:45:23,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:45:23,586.586 INFO    ] No camera update needed
[2026-06-19 04:45:23,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:45:23,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:45:23,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:45:23,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:45:25,643.643 INFO    ] ================================================
[2026-06-19 04:45:25,658.658 INFO    ] Launching Daemon at Fri Jun 19 04:45:25 IST 2026
[2026-06-19 04:45:25,669.669 INFO    ] ================================================
[2026-06-19 04:45:26,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:45:26
[2026-06-19 04:45:26,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:45:27,084.084 INFO    ] Initializing speech engine...
[2026-06-19 04:45:27,096.096 INFO    ] 2026-06-19 04:45:27
[2026-06-19 04:45:27,346.346 INFO    ] 2026-06-19 04:45:27
[2026-06-19 04:45:27,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:45:27,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:45:27,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:45:27,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:45:27,722.722 INFO    ] time= 19/06/2026 04:45:27
[2026-06-19 04:45:27,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:45:27,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:45:27,895.895 INFO    ] No existing commands found in stream
[2026-06-19 04:45:32,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:45:32,933.933 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 04:45:34,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:45:34,707.707 INFO    ] Checking for system updates...
[2026-06-19 04:45:34,744.744 INFO    ] 200
[2026-06-19 04:45:34,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:34,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:45:34,806.806 INFO    ] No update needed
[2026-06-19 04:45:34,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 04:45:34,843.843 INFO    ] 200
[2026-06-19 04:45:34,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:34,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:45:34,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:45:34,940.940 INFO    ] No camera update needed
[2026-06-19 04:45:34,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:45:34,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:45:34,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:45:34,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:45:37,996.996 INFO    ] ================================================
[2026-06-19 04:45:37,012.012 INFO    ] Launching Daemon at Fri Jun 19 04:45:37 IST 2026
[2026-06-19 04:45:37,023.023 INFO    ] ================================================
[2026-06-19 04:45:37,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:45:37
[2026-06-19 04:45:38,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:45:38,512.512 INFO    ] Initializing speech engine...
[2026-06-19 04:45:38,522.522 INFO    ] 2026-06-19 04:45:38
[2026-06-19 04:45:38,774.774 INFO    ] 2026-06-19 04:45:38
[2026-06-19 04:45:38,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:45:38,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:45:38,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:45:39,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:45:39,150.150 INFO    ] time= 19/06/2026 04:45:39
[2026-06-19 04:45:39,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:45:39,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:45:39,231.231 INFO    ] No existing commands found in stream
[2026-06-19 04:45:44,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:45:44,269.269 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 04:45:45,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:45:45,727.727 INFO    ] Checking for system updates...
[2026-06-19 04:45:45,768.768 INFO    ] 200
[2026-06-19 04:45:45,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:45,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:45:45,825.825 INFO    ] No update needed
[2026-06-19 04:45:45,828.828 INFO    ] Checking for camera pi updates...
[2026-06-19 04:45:45,861.861 INFO    ] 200
[2026-06-19 04:45:45,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:45,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:45:45,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:45:45,952.952 INFO    ] No camera update needed
[2026-06-19 04:45:45,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:45:45,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:45:45,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:45:45,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:45:48,009.009 INFO    ] ================================================
[2026-06-19 04:45:48,026.026 INFO    ] Launching Daemon at Fri Jun 19 04:45:48 IST 2026
[2026-06-19 04:45:48,037.037 INFO    ] ================================================
[2026-06-19 04:45:48,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:45:48
[2026-06-19 04:45:49,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:45:49,641.641 INFO    ] Initializing speech engine...
[2026-06-19 04:45:49,649.649 INFO    ] 2026-06-19 04:45:49
[2026-06-19 04:45:49,942.942 INFO    ] 2026-06-19 04:45:49
[2026-06-19 04:45:49,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:45:50,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:45:50,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:45:50,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:45:50,412.412 INFO    ] time= 19/06/2026 04:45:50
[2026-06-19 04:45:50,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:45:50,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:45:50,561.561 INFO    ] No existing commands found in stream
[2026-06-19 04:45:55,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:45:55,577.577 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 04:45:58,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:45:58,658.658 INFO    ] Checking for system updates...
[2026-06-19 04:45:58,695.695 INFO    ] 200
[2026-06-19 04:45:58,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:58,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:45:58,758.758 INFO    ] No update needed
[2026-06-19 04:45:58,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 04:45:58,796.796 INFO    ] 200
[2026-06-19 04:45:58,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:45:58,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:45:58,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:45:58,895.895 INFO    ] No camera update needed
[2026-06-19 04:45:58,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:45:58,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:45:58,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:45:58,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:46:00,954.954 INFO    ] ================================================
[2026-06-19 04:46:00,970.970 INFO    ] Launching Daemon at Fri Jun 19 04:46:00 IST 2026
[2026-06-19 04:46:00,981.981 INFO    ] ================================================
[2026-06-19 04:46:01,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:46:01
[2026-06-19 04:46:02,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:46:02,659.659 INFO    ] Initializing speech engine...
[2026-06-19 04:46:02,669.669 INFO    ] 2026-06-19 04:46:02
[2026-06-19 04:46:02,965.965 INFO    ] 2026-06-19 04:46:02
[2026-06-19 04:46:03,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:46:03,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:46:03,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:46:03,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:46:03,375.375 INFO    ] time= 19/06/2026 04:46:03
[2026-06-19 04:46:03,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:46:03,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:46:03,543.543 INFO    ] No existing commands found in stream
[2026-06-19 04:46:08,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:46:08,567.567 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 04:46:12,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:46:12,074.074 INFO    ] Checking for system updates...
[2026-06-19 04:46:12,111.111 INFO    ] 200
[2026-06-19 04:46:12,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:46:12,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:46:12,171.171 INFO    ] No update needed
[2026-06-19 04:46:12,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 04:46:12,211.211 INFO    ] 200
[2026-06-19 04:46:12,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:46:12,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:46:12,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:46:12,300.300 INFO    ] No camera update needed
[2026-06-19 04:46:12,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:46:12,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:46:12,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:46:12,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:46:14,355.355 INFO    ] ================================================
[2026-06-19 04:46:14,371.371 INFO    ] Launching Daemon at Fri Jun 19 04:46:14 IST 2026
[2026-06-19 04:46:14,383.383 INFO    ] ================================================
[2026-06-19 04:46:14,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:46:14
[2026-06-19 04:46:15,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:46:15,788.788 INFO    ] Initializing speech engine...
[2026-06-19 04:46:15,793.793 INFO    ] 2026-06-19 04:46:15
[2026-06-19 04:46:16,069.069 INFO    ] 2026-06-19 04:46:16
[2026-06-19 04:46:16,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:46:16,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:46:16,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:46:16,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:46:16,574.574 INFO    ] time= 19/06/2026 04:46:16
[2026-06-19 04:46:16,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:46:16,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:46:16,761.761 INFO    ] No existing commands found in stream
[2026-06-19 04:46:21,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:46:21,800.800 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 04:46:24,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:46:24,710.710 INFO    ] Checking for system updates...
[2026-06-19 04:46:24,747.747 INFO    ] 200
[2026-06-19 04:46:24,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:46:24,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:46:24,804.804 INFO    ] No update needed
[2026-06-19 04:46:24,806.806 INFO    ] Checking for camera pi updates...
[2026-06-19 04:46:24,844.844 INFO    ] 200
[2026-06-19 04:46:24,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:46:24,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:46:24,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:46:24,937.937 INFO    ] No camera update needed
[2026-06-19 04:46:24,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:46:24,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:46:24,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:46:24,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:46:27,997.997 INFO    ] ================================================
[2026-06-19 04:46:27,013.013 INFO    ] Launching Daemon at Fri Jun 19 04:46:27 IST 2026
[2026-06-19 04:46:27,024.024 INFO    ] ================================================
[2026-06-19 04:46:27,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:46:27
[2026-06-19 04:46:28,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:46:28,663.663 INFO    ] Initializing speech engine...
[2026-06-19 04:46:28,684.684 INFO    ] 2026-06-19 04:46:28
[2026-06-19 04:46:28,969.969 INFO    ] 2026-06-19 04:46:28
[2026-06-19 04:46:29,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:46:29,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:46:29,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:46:29,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:46:29,333.333 INFO    ] time= 19/06/2026 04:46:29
[2026-06-19 04:46:29,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:46:29,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:46:29,414.414 INFO    ] No existing commands found in stream
[2026-06-19 04:46:34,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:46:34,428.428 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 04:46:36,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:46:36,036.036 INFO    ] Checking for system updates...
[2026-06-19 04:46:36,074.074 INFO    ] 200
[2026-06-19 04:46:36,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:46:36,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:46:36,141.141 INFO    ] No update needed
[2026-06-19 04:46:36,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 04:46:36,179.179 INFO    ] 200
[2026-06-19 04:46:36,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:46:36,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:46:36,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:46:36,266.266 INFO    ] No camera update needed
[2026-06-19 04:46:36,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:46:36,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:46:36,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:46:36,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:46:38,322.322 INFO    ] ================================================
[2026-06-19 04:46:38,338.338 INFO    ] Launching Daemon at Fri Jun 19 04:46:38 IST 2026
[2026-06-19 04:46:38,348.348 INFO    ] ================================================
[2026-06-19 04:46:38,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:46:38
[2026-06-19 04:46:39,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:46:39,815.815 INFO    ] Initializing speech engine...
[2026-06-19 04:46:39,821.821 INFO    ] 2026-06-19 04:46:39
[2026-06-19 04:46:40,117.117 INFO    ] 2026-06-19 04:46:40
[2026-06-19 04:46:40,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:46:40,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:46:40,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:46:40,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:46:40,511.511 INFO    ] time= 19/06/2026 04:46:40
[2026-06-19 04:46:40,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:46:40,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:46:40,706.706 INFO    ] No existing commands found in stream
[2026-06-19 04:46:45,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:46:45,720.720 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 04:46:48,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:46:48,408.408 INFO    ] Checking for system updates...
[2026-06-19 04:46:48,450.450 INFO    ] 200
[2026-06-19 04:46:48,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:46:48,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:46:48,517.517 INFO    ] No update needed
[2026-06-19 04:46:48,519.519 INFO    ] Checking for camera pi updates...
[2026-06-19 04:46:48,553.553 INFO    ] 200
[2026-06-19 04:46:48,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:46:48,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:46:48,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:46:48,637.637 INFO    ] No camera update needed
[2026-06-19 04:46:48,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:46:48,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:46:48,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:46:48,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:46:50,693.693 INFO    ] ================================================
[2026-06-19 04:46:50,709.709 INFO    ] Launching Daemon at Fri Jun 19 04:46:50 IST 2026
[2026-06-19 04:46:50,720.720 INFO    ] ================================================
[2026-06-19 04:46:51,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:46:51
[2026-06-19 04:46:51,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:46:52,200.200 INFO    ] Initializing speech engine...
[2026-06-19 04:46:52,215.215 INFO    ] 2026-06-19 04:46:52
[2026-06-19 04:46:52,472.472 INFO    ] 2026-06-19 04:46:52
[2026-06-19 04:46:52,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:46:52,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:46:52,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:46:52,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:46:52,846.846 INFO    ] time= 19/06/2026 04:46:52
[2026-06-19 04:46:52,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:46:52,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:46:53,040.040 INFO    ] No existing commands found in stream
[2026-06-19 04:46:58,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:46:58,053.053 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 04:47:02,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:47:02,160.160 INFO    ] Checking for system updates...
[2026-06-19 04:47:02,209.209 INFO    ] 200
[2026-06-19 04:47:02,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:02,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:47:02,284.284 INFO    ] No update needed
[2026-06-19 04:47:02,287.287 INFO    ] Checking for camera pi updates...
[2026-06-19 04:47:02,326.326 INFO    ] 200
[2026-06-19 04:47:02,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:02,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:47:02,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:47:02,416.416 INFO    ] No camera update needed
[2026-06-19 04:47:02,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:47:02,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:47:02,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:47:02,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:47:04,486.486 INFO    ] ================================================
[2026-06-19 04:47:04,501.501 INFO    ] Launching Daemon at Fri Jun 19 04:47:04 IST 2026
[2026-06-19 04:47:04,512.512 INFO    ] ================================================
[2026-06-19 04:47:05,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:47:05
[2026-06-19 04:47:05,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:47:05,934.934 INFO    ] Initializing speech engine...
[2026-06-19 04:47:05,945.945 INFO    ] 2026-06-19 04:47:05
[2026-06-19 04:47:06,200.200 INFO    ] 2026-06-19 04:47:06
[2026-06-19 04:47:06,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:47:06,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:47:06,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:47:06,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:47:06,672.672 INFO    ] time= 19/06/2026 04:47:06
[2026-06-19 04:47:06,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:47:06,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:47:06,908.908 INFO    ] No existing commands found in stream
[2026-06-19 04:47:11,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:47:11,941.941 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 04:47:12,547.547 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:47:12,549.549 INFO    ] Checking for system updates...
[2026-06-19 04:47:12,586.586 INFO    ] 200
[2026-06-19 04:47:12,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:12,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:47:12,643.643 INFO    ] No update needed
[2026-06-19 04:47:12,646.646 INFO    ] Checking for camera pi updates...
[2026-06-19 04:47:12,679.679 INFO    ] 200
[2026-06-19 04:47:12,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:12,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:47:12,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:47:12,753.753 INFO    ] No camera update needed
[2026-06-19 04:47:12,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:47:12,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:47:12,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:47:12,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:47:14,811.811 INFO    ] ================================================
[2026-06-19 04:47:14,835.835 INFO    ] Launching Daemon at Fri Jun 19 04:47:14 IST 2026
[2026-06-19 04:47:14,845.845 INFO    ] ================================================
[2026-06-19 04:47:15,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:47:15
[2026-06-19 04:47:16,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:47:16,280.280 INFO    ] Initializing speech engine...
[2026-06-19 04:47:16,295.295 INFO    ] 2026-06-19 04:47:16
[2026-06-19 04:47:16,560.560 INFO    ] 2026-06-19 04:47:16
[2026-06-19 04:47:16,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:47:16,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:47:16,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:47:16,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:47:17,039.039 INFO    ] time= 19/06/2026 04:47:16
[2026-06-19 04:47:17,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:47:17,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:47:17,183.183 INFO    ] No existing commands found in stream
[2026-06-19 04:47:22,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:47:22,198.198 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 04:47:24,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:47:24,472.472 INFO    ] Checking for system updates...
[2026-06-19 04:47:24,510.510 INFO    ] 200
[2026-06-19 04:47:24,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:24,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:47:24,573.573 INFO    ] No update needed
[2026-06-19 04:47:24,576.576 INFO    ] Checking for camera pi updates...
[2026-06-19 04:47:24,612.612 INFO    ] 200
[2026-06-19 04:47:24,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:24,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:47:24,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:47:24,702.702 INFO    ] No camera update needed
[2026-06-19 04:47:24,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:47:24,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:47:24,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:47:24,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:47:26,759.759 INFO    ] ================================================
[2026-06-19 04:47:26,775.775 INFO    ] Launching Daemon at Fri Jun 19 04:47:26 IST 2026
[2026-06-19 04:47:26,786.786 INFO    ] ================================================
[2026-06-19 04:47:27,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:47:27
[2026-06-19 04:47:28,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:47:28,375.375 INFO    ] Initializing speech engine...
[2026-06-19 04:47:28,386.386 INFO    ] 2026-06-19 04:47:28
[2026-06-19 04:47:28,651.651 INFO    ] 2026-06-19 04:47:28
[2026-06-19 04:47:28,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:47:28,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:47:28,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:47:29,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:47:29,142.142 INFO    ] time= 19/06/2026 04:47:29
[2026-06-19 04:47:29,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:47:29,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:47:29,338.338 INFO    ] No existing commands found in stream
[2026-06-19 04:47:34,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:47:34,365.365 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 04:47:38,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:47:38,475.475 INFO    ] Checking for system updates...
[2026-06-19 04:47:38,516.516 INFO    ] 200
[2026-06-19 04:47:38,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:38,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:47:38,577.577 INFO    ] No update needed
[2026-06-19 04:47:38,580.580 INFO    ] Checking for camera pi updates...
[2026-06-19 04:47:38,614.614 INFO    ] 200
[2026-06-19 04:47:38,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:38,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:47:38,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:47:38,705.705 INFO    ] No camera update needed
[2026-06-19 04:47:38,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:47:38,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:47:38,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:47:38,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:47:40,762.762 INFO    ] ================================================
[2026-06-19 04:47:40,777.777 INFO    ] Launching Daemon at Fri Jun 19 04:47:40 IST 2026
[2026-06-19 04:47:40,788.788 INFO    ] ================================================
[2026-06-19 04:47:41,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:47:41
[2026-06-19 04:47:41,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:47:42,250.250 INFO    ] Initializing speech engine...
[2026-06-19 04:47:42,261.261 INFO    ] 2026-06-19 04:47:42
[2026-06-19 04:47:42,523.523 INFO    ] 2026-06-19 04:47:42
[2026-06-19 04:47:42,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:47:42,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:47:42,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:47:42,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:47:42,981.981 INFO    ] time= 19/06/2026 04:47:42
[2026-06-19 04:47:43,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:47:43,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:47:43,135.135 INFO    ] No existing commands found in stream
[2026-06-19 04:47:48,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:47:48,150.150 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 04:47:50,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:47:50,808.808 INFO    ] Checking for system updates...
[2026-06-19 04:47:50,844.844 INFO    ] 200
[2026-06-19 04:47:50,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:50,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:47:50,908.908 INFO    ] No update needed
[2026-06-19 04:47:50,911.911 INFO    ] Checking for camera pi updates...
[2026-06-19 04:47:50,945.945 INFO    ] 200
[2026-06-19 04:47:50,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:47:50,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:47:51,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:47:51,031.031 INFO    ] No camera update needed
[2026-06-19 04:47:51,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:47:51,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:47:51,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:47:51,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:47:53,087.087 INFO    ] ================================================
[2026-06-19 04:47:53,101.101 INFO    ] Launching Daemon at Fri Jun 19 04:47:53 IST 2026
[2026-06-19 04:47:53,112.112 INFO    ] ================================================
[2026-06-19 04:47:53,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:47:53
[2026-06-19 04:47:54,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:47:54,566.566 INFO    ] Initializing speech engine...
[2026-06-19 04:47:54,573.573 INFO    ] 2026-06-19 04:47:54
[2026-06-19 04:47:54,836.836 INFO    ] 2026-06-19 04:47:54
[2026-06-19 04:47:54,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:47:55,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:47:55,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:47:55,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:47:55,310.310 INFO    ] time= 19/06/2026 04:47:55
[2026-06-19 04:47:55,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:47:55,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:47:55,440.440 INFO    ] No existing commands found in stream
[2026-06-19 04:48:00,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:48:00,455.455 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 04:48:02,911.911 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:48:02,914.914 INFO    ] Checking for system updates...
[2026-06-19 04:48:02,955.955 INFO    ] 200
[2026-06-19 04:48:02,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:03,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:48:03,026.026 INFO    ] No update needed
[2026-06-19 04:48:03,028.028 INFO    ] Checking for camera pi updates...
[2026-06-19 04:48:03,070.070 INFO    ] 200
[2026-06-19 04:48:03,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:03,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:48:03,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:48:03,169.169 INFO    ] No camera update needed
[2026-06-19 04:48:03,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:48:03,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:48:03,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:48:03,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:48:05,230.230 INFO    ] ================================================
[2026-06-19 04:48:05,245.245 INFO    ] Launching Daemon at Fri Jun 19 04:48:05 IST 2026
[2026-06-19 04:48:05,256.256 INFO    ] ================================================
[2026-06-19 04:48:05,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:48:05
[2026-06-19 04:48:06,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:48:06,739.739 INFO    ] Initializing speech engine...
[2026-06-19 04:48:06,748.748 INFO    ] 2026-06-19 04:48:06
[2026-06-19 04:48:07,007.007 INFO    ] 2026-06-19 04:48:07
[2026-06-19 04:48:07,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:48:07,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:48:07,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:48:07,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:48:07,487.487 INFO    ] time= 19/06/2026 04:48:07
[2026-06-19 04:48:07,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:48:07,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:48:07,631.631 INFO    ] No existing commands found in stream
[2026-06-19 04:48:12,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:48:12,646.646 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 04:48:16,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:48:16,562.562 INFO    ] Checking for system updates...
[2026-06-19 04:48:16,599.599 INFO    ] 200
[2026-06-19 04:48:16,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:16,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:48:16,659.659 INFO    ] No update needed
[2026-06-19 04:48:16,661.661 INFO    ] Checking for camera pi updates...
[2026-06-19 04:48:16,700.700 INFO    ] 200
[2026-06-19 04:48:16,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:16,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:48:16,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:48:16,906.906 INFO    ] No camera update needed
[2026-06-19 04:48:16,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:48:16,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:48:16,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:48:16,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:48:18,964.964 INFO    ] ================================================
[2026-06-19 04:48:18,979.979 INFO    ] Launching Daemon at Fri Jun 19 04:48:18 IST 2026
[2026-06-19 04:48:18,991.991 INFO    ] ================================================
[2026-06-19 04:48:19,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:48:19
[2026-06-19 04:48:20,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:48:20,552.552 INFO    ] Initializing speech engine...
[2026-06-19 04:48:20,560.560 INFO    ] 2026-06-19 04:48:20
[2026-06-19 04:48:20,849.849 INFO    ] 2026-06-19 04:48:20
[2026-06-19 04:48:20,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:48:21,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:48:21,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:48:21,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:48:21,311.311 INFO    ] time= 19/06/2026 04:48:21
[2026-06-19 04:48:21,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:48:21,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:48:21,462.462 INFO    ] No existing commands found in stream
[2026-06-19 04:48:26,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:48:26,479.479 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 04:48:29,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:48:29,442.442 INFO    ] Checking for system updates...
[2026-06-19 04:48:29,484.484 INFO    ] 200
[2026-06-19 04:48:29,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:29,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:48:29,552.552 INFO    ] No update needed
[2026-06-19 04:48:29,555.555 INFO    ] Checking for camera pi updates...
[2026-06-19 04:48:29,590.590 INFO    ] 200
[2026-06-19 04:48:29,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:29,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:48:29,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:48:29,691.691 INFO    ] No camera update needed
[2026-06-19 04:48:29,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:48:29,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:48:29,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:48:29,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:48:31,747.747 INFO    ] ================================================
[2026-06-19 04:48:31,764.764 INFO    ] Launching Daemon at Fri Jun 19 04:48:31 IST 2026
[2026-06-19 04:48:31,779.779 INFO    ] ================================================
[2026-06-19 04:48:32,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:48:32
[2026-06-19 04:48:33,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:48:33,322.322 INFO    ] Initializing speech engine...
[2026-06-19 04:48:33,341.341 INFO    ] 2026-06-19 04:48:33
[2026-06-19 04:48:33,648.648 INFO    ] 2026-06-19 04:48:33
[2026-06-19 04:48:33,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:48:33,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:48:33,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:48:34,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:48:34,046.046 INFO    ] time= 19/06/2026 04:48:34
[2026-06-19 04:48:34,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:48:34,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:48:34,173.173 INFO    ] No existing commands found in stream
[2026-06-19 04:48:39,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:48:39,212.212 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 04:48:43,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:48:43,396.396 INFO    ] Checking for system updates...
[2026-06-19 04:48:43,432.432 INFO    ] 200
[2026-06-19 04:48:43,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:43,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:48:43,495.495 INFO    ] No update needed
[2026-06-19 04:48:43,497.497 INFO    ] Checking for camera pi updates...
[2026-06-19 04:48:43,534.534 INFO    ] 200
[2026-06-19 04:48:43,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:43,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:48:43,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:48:43,626.626 INFO    ] No camera update needed
[2026-06-19 04:48:43,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:48:43,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:48:43,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:48:43,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:48:45,682.682 INFO    ] ================================================
[2026-06-19 04:48:45,697.697 INFO    ] Launching Daemon at Fri Jun 19 04:48:45 IST 2026
[2026-06-19 04:48:45,708.708 INFO    ] ================================================
[2026-06-19 04:48:46,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:48:46
[2026-06-19 04:48:46,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:48:47,202.202 INFO    ] Initializing speech engine...
[2026-06-19 04:48:47,227.227 INFO    ] 2026-06-19 04:48:47
[2026-06-19 04:48:47,513.513 INFO    ] 2026-06-19 04:48:47
[2026-06-19 04:48:47,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:48:47,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:48:47,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:48:47,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:48:47,984.984 INFO    ] time= 19/06/2026 04:48:47
[2026-06-19 04:48:48,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:48:48,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:48:48,174.174 INFO    ] No existing commands found in stream
[2026-06-19 04:48:53,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:48:53,188.188 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 04:48:58,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:48:58,721.721 INFO    ] Checking for system updates...
[2026-06-19 04:48:58,762.762 INFO    ] 200
[2026-06-19 04:48:58,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:58,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:48:58,820.820 INFO    ] No update needed
[2026-06-19 04:48:58,823.823 INFO    ] Checking for camera pi updates...
[2026-06-19 04:48:58,857.857 INFO    ] 200
[2026-06-19 04:48:58,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:48:58,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:48:58,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:48:58,950.950 INFO    ] No camera update needed
[2026-06-19 04:48:58,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:48:58,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:48:58,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:48:58,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:49:01,011.011 INFO    ] ================================================
[2026-06-19 04:49:01,026.026 INFO    ] Launching Daemon at Fri Jun 19 04:49:01 IST 2026
[2026-06-19 04:49:01,037.037 INFO    ] ================================================
[2026-06-19 04:49:01,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:49:01
[2026-06-19 04:49:02,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:49:02,662.662 INFO    ] Initializing speech engine...
[2026-06-19 04:49:02,675.675 INFO    ] 2026-06-19 04:49:02
[2026-06-19 04:49:03,017.017 INFO    ] 2026-06-19 04:49:02
[2026-06-19 04:49:03,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:49:03,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:49:03,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:49:03,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:49:03,390.390 INFO    ] time= 19/06/2026 04:49:03
[2026-06-19 04:49:03,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:49:03,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:49:03,472.472 INFO    ] No existing commands found in stream
[2026-06-19 04:49:08,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:49:08,485.485 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 04:49:11,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:49:11,545.545 INFO    ] Checking for system updates...
[2026-06-19 04:49:11,588.588 INFO    ] 200
[2026-06-19 04:49:11,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:11,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:49:11,657.657 INFO    ] No update needed
[2026-06-19 04:49:11,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 04:49:11,697.697 INFO    ] 200
[2026-06-19 04:49:11,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:11,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:49:11,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:49:11,800.800 INFO    ] No camera update needed
[2026-06-19 04:49:11,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:49:11,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:49:11,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:49:11,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:49:13,858.858 INFO    ] ================================================
[2026-06-19 04:49:13,874.874 INFO    ] Launching Daemon at Fri Jun 19 04:49:13 IST 2026
[2026-06-19 04:49:13,886.886 INFO    ] ================================================
[2026-06-19 04:49:14,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:49:14
[2026-06-19 04:49:15,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:49:15,363.363 INFO    ] Initializing speech engine...
[2026-06-19 04:49:15,372.372 INFO    ] 2026-06-19 04:49:15
[2026-06-19 04:49:15,618.618 INFO    ] 2026-06-19 04:49:15
[2026-06-19 04:49:15,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:49:15,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:49:15,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:49:16,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:49:16,098.098 INFO    ] time= 19/06/2026 04:49:16
[2026-06-19 04:49:16,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:49:16,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:49:16,236.236 INFO    ] No existing commands found in stream
[2026-06-19 04:49:21,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:49:21,251.251 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 04:49:22,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:49:22,687.687 INFO    ] Checking for system updates...
[2026-06-19 04:49:22,723.723 INFO    ] 200
[2026-06-19 04:49:22,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:22,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:49:22,781.781 INFO    ] No update needed
[2026-06-19 04:49:22,784.784 INFO    ] Checking for camera pi updates...
[2026-06-19 04:49:22,820.820 INFO    ] 200
[2026-06-19 04:49:22,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:22,874.874 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:49:22,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:49:22,927.927 INFO    ] No camera update needed
[2026-06-19 04:49:22,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:49:22,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:49:22,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:49:22,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:49:24,981.981 INFO    ] ================================================
[2026-06-19 04:49:25,997.997 INFO    ] Launching Daemon at Fri Jun 19 04:49:24 IST 2026
[2026-06-19 04:49:25,009.009 INFO    ] ================================================
[2026-06-19 04:49:25,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:49:25
[2026-06-19 04:49:26,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:49:26,436.436 INFO    ] Initializing speech engine...
[2026-06-19 04:49:26,445.445 INFO    ] 2026-06-19 04:49:26
[2026-06-19 04:49:26,694.694 INFO    ] 2026-06-19 04:49:26
[2026-06-19 04:49:26,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:49:26,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:49:26,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:49:27,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:49:27,074.074 INFO    ] time= 19/06/2026 04:49:27
[2026-06-19 04:49:27,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:49:27,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:49:27,248.248 INFO    ] No existing commands found in stream
[2026-06-19 04:49:32,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:49:32,280.280 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 04:49:34,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:49:34,387.387 INFO    ] Checking for system updates...
[2026-06-19 04:49:34,423.423 INFO    ] 200
[2026-06-19 04:49:34,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:34,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:49:34,482.482 INFO    ] No update needed
[2026-06-19 04:49:34,484.484 INFO    ] Checking for camera pi updates...
[2026-06-19 04:49:34,519.519 INFO    ] 200
[2026-06-19 04:49:34,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:34,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:49:34,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:49:34,616.616 INFO    ] No camera update needed
[2026-06-19 04:49:34,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:49:34,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:49:34,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:49:34,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:49:36,670.670 INFO    ] ================================================
[2026-06-19 04:49:36,686.686 INFO    ] Launching Daemon at Fri Jun 19 04:49:36 IST 2026
[2026-06-19 04:49:36,698.698 INFO    ] ================================================
[2026-06-19 04:49:37,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:49:37
[2026-06-19 04:49:37,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:49:38,170.170 INFO    ] Initializing speech engine...
[2026-06-19 04:49:38,179.179 INFO    ] 2026-06-19 04:49:38
[2026-06-19 04:49:38,439.439 INFO    ] 2026-06-19 04:49:38
[2026-06-19 04:49:38,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:49:38,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:49:38,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:49:38,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:49:38,924.924 INFO    ] time= 19/06/2026 04:49:38
[2026-06-19 04:49:38,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:49:38,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:49:39,119.119 INFO    ] No existing commands found in stream
[2026-06-19 04:49:44,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:49:44,150.150 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 04:49:48,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:49:48,147.147 INFO    ] Checking for system updates...
[2026-06-19 04:49:48,183.183 INFO    ] 200
[2026-06-19 04:49:48,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:48,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:49:48,241.241 INFO    ] No update needed
[2026-06-19 04:49:48,243.243 INFO    ] Checking for camera pi updates...
[2026-06-19 04:49:48,282.282 INFO    ] 200
[2026-06-19 04:49:48,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:48,325.325 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:49:48,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:49:48,363.363 INFO    ] No camera update needed
[2026-06-19 04:49:48,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:49:48,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:49:48,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:49:48,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:49:50,421.421 INFO    ] ================================================
[2026-06-19 04:49:50,437.437 INFO    ] Launching Daemon at Fri Jun 19 04:49:50 IST 2026
[2026-06-19 04:49:50,448.448 INFO    ] ================================================
[2026-06-19 04:49:51,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:49:51
[2026-06-19 04:49:51,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:49:51,920.920 INFO    ] Initializing speech engine...
[2026-06-19 04:49:51,929.929 INFO    ] 2026-06-19 04:49:51
[2026-06-19 04:49:52,189.189 INFO    ] 2026-06-19 04:49:52
[2026-06-19 04:49:52,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:49:52,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:49:52,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:49:52,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:49:52,654.654 INFO    ] time= 19/06/2026 04:49:52
[2026-06-19 04:49:52,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:49:52,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:49:52,797.797 INFO    ] No existing commands found in stream
[2026-06-19 04:49:57,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:49:57,811.811 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 04:49:58,235.235 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:49:58,238.238 INFO    ] Checking for system updates...
[2026-06-19 04:49:58,276.276 INFO    ] 200
[2026-06-19 04:49:58,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:58,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:49:58,336.336 INFO    ] No update needed
[2026-06-19 04:49:58,339.339 INFO    ] Checking for camera pi updates...
[2026-06-19 04:49:58,379.379 INFO    ] 200
[2026-06-19 04:49:58,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:49:58,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:49:58,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:49:58,473.473 INFO    ] No camera update needed
[2026-06-19 04:49:58,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:49:58,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:49:58,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:49:58,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:50:00,533.533 INFO    ] ================================================
[2026-06-19 04:50:00,549.549 INFO    ] Launching Daemon at Fri Jun 19 04:50:00 IST 2026
[2026-06-19 04:50:00,561.561 INFO    ] ================================================
[2026-06-19 04:50:01,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:50:01
[2026-06-19 04:50:02,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:50:02,767.767 INFO    ] Initializing speech engine...
[2026-06-19 04:50:02,771.771 INFO    ] 2026-06-19 04:50:02
[2026-06-19 04:50:03,117.117 INFO    ] 2026-06-19 04:50:03
[2026-06-19 04:50:03,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:50:03,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:50:03,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:50:03,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:50:03,490.490 INFO    ] time= 19/06/2026 04:50:03
[2026-06-19 04:50:03,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:50:03,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:50:03,604.604 INFO    ] No existing commands found in stream
[2026-06-19 04:50:08,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:50:08,620.620 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 04:50:12,857.857 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:50:12,860.860 INFO    ] Checking for system updates...
[2026-06-19 04:50:12,899.899 INFO    ] 200
[2026-06-19 04:50:12,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:50:12,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:50:12,971.971 INFO    ] No update needed
[2026-06-19 04:50:12,974.974 INFO    ] Checking for camera pi updates...
[2026-06-19 04:50:13,007.007 INFO    ] 200
[2026-06-19 04:50:13,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:50:13,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:50:13,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:50:13,104.104 INFO    ] No camera update needed
[2026-06-19 04:50:13,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:50:13,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:50:13,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:50:13,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:50:15,159.159 INFO    ] ================================================
[2026-06-19 04:50:15,176.176 INFO    ] Launching Daemon at Fri Jun 19 04:50:15 IST 2026
[2026-06-19 04:50:15,186.186 INFO    ] ================================================
[2026-06-19 04:50:15,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:50:15
[2026-06-19 04:50:16,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:50:16,726.726 INFO    ] Initializing speech engine...
[2026-06-19 04:50:16,741.741 INFO    ] 2026-06-19 04:50:16
[2026-06-19 04:50:17,008.008 INFO    ] 2026-06-19 04:50:16
[2026-06-19 04:50:17,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:50:17,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:50:17,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:50:17,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:50:17,386.386 INFO    ] time= 19/06/2026 04:50:17
[2026-06-19 04:50:17,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:50:17,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:50:17,465.465 INFO    ] No existing commands found in stream
[2026-06-19 04:50:22,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:50:22,498.498 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 04:50:26,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:50:26,122.122 INFO    ] Checking for system updates...
[2026-06-19 04:50:26,158.158 INFO    ] 200
[2026-06-19 04:50:26,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:50:26,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:50:26,230.230 INFO    ] No update needed
[2026-06-19 04:50:26,232.232 INFO    ] Checking for camera pi updates...
[2026-06-19 04:50:26,267.267 INFO    ] 200
[2026-06-19 04:50:26,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:50:26,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:50:26,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:50:26,460.460 INFO    ] No camera update needed
[2026-06-19 04:50:26,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:50:26,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:50:26,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:50:26,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:50:28,516.516 INFO    ] ================================================
[2026-06-19 04:50:28,532.532 INFO    ] Launching Daemon at Fri Jun 19 04:50:28 IST 2026
[2026-06-19 04:50:28,543.543 INFO    ] ================================================
[2026-06-19 04:50:29,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:50:29
[2026-06-19 04:50:29,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:50:29,980.980 INFO    ] Initializing speech engine...
[2026-06-19 04:50:29,988.988 INFO    ] 2026-06-19 04:50:29
[2026-06-19 04:50:30,236.236 INFO    ] 2026-06-19 04:50:30
[2026-06-19 04:50:30,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:50:30,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:50:30,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:50:30,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:50:30,718.718 INFO    ] time= 19/06/2026 04:50:30
[2026-06-19 04:50:30,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:50:30,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:50:30,855.855 INFO    ] No existing commands found in stream
[2026-06-19 04:50:35,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:50:35,870.870 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 04:50:39,885.885 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:50:39,888.888 INFO    ] Checking for system updates...
[2026-06-19 04:50:39,923.923 INFO    ] 200
[2026-06-19 04:50:39,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:50:39,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:50:39,989.989 INFO    ] No update needed
[2026-06-19 04:50:39,991.991 INFO    ] Checking for camera pi updates...
[2026-06-19 04:50:40,029.029 INFO    ] 200
[2026-06-19 04:50:40,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:50:40,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:50:40,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:50:40,118.118 INFO    ] No camera update needed
[2026-06-19 04:50:40,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:50:40,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:50:40,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:50:40,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:50:42,176.176 INFO    ] ================================================
[2026-06-19 04:50:42,192.192 INFO    ] Launching Daemon at Fri Jun 19 04:50:42 IST 2026
[2026-06-19 04:50:42,203.203 INFO    ] ================================================
[2026-06-19 04:50:42,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:50:42
[2026-06-19 04:50:43,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:50:43,627.627 INFO    ] Initializing speech engine...
[2026-06-19 04:50:43,642.642 INFO    ] 2026-06-19 04:50:43
[2026-06-19 04:50:43,925.925 INFO    ] 2026-06-19 04:50:43
[2026-06-19 04:50:43,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:50:44,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:50:44,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:50:44,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:50:44,285.285 INFO    ] time= 19/06/2026 04:50:44
[2026-06-19 04:50:44,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:50:44,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:50:44,385.385 INFO    ] No existing commands found in stream
[2026-06-19 04:50:49,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:50:49,423.423 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 04:50:52,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:50:52,629.629 INFO    ] Checking for system updates...
[2026-06-19 04:50:52,666.666 INFO    ] 200
[2026-06-19 04:50:52,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:50:52,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:50:52,730.730 INFO    ] No update needed
[2026-06-19 04:50:52,733.733 INFO    ] Checking for camera pi updates...
[2026-06-19 04:50:52,771.771 INFO    ] 200
[2026-06-19 04:50:52,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:50:52,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:50:52,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:50:52,865.865 INFO    ] No camera update needed
[2026-06-19 04:50:52,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:50:52,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:50:52,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:50:52,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:50:54,921.921 INFO    ] ================================================
[2026-06-19 04:50:54,938.938 INFO    ] Launching Daemon at Fri Jun 19 04:50:54 IST 2026
[2026-06-19 04:50:54,949.949 INFO    ] ================================================
[2026-06-19 04:50:55,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:50:55
[2026-06-19 04:50:56,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:50:56,394.394 INFO    ] Initializing speech engine...
[2026-06-19 04:50:56,403.403 INFO    ] 2026-06-19 04:50:56
[2026-06-19 04:50:56,652.652 INFO    ] 2026-06-19 04:50:56
[2026-06-19 04:50:56,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:50:56,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:50:56,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:50:57,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:50:57,093.093 INFO    ] time= 19/06/2026 04:50:57
[2026-06-19 04:50:57,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:50:57,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:50:57,274.274 INFO    ] No existing commands found in stream
[2026-06-19 04:51:02,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:51:02,290.290 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 04:51:05,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:51:05,272.272 INFO    ] Checking for system updates...
[2026-06-19 04:51:05,312.312 INFO    ] 200
[2026-06-19 04:51:05,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:05,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:51:05,371.371 INFO    ] No update needed
[2026-06-19 04:51:05,373.373 INFO    ] Checking for camera pi updates...
[2026-06-19 04:51:05,410.410 INFO    ] 200
[2026-06-19 04:51:05,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:05,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:51:05,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:51:05,509.509 INFO    ] No camera update needed
[2026-06-19 04:51:05,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:51:05,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:51:05,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:51:05,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:51:07,571.571 INFO    ] ================================================
[2026-06-19 04:51:07,588.588 INFO    ] Launching Daemon at Fri Jun 19 04:51:07 IST 2026
[2026-06-19 04:51:07,599.599 INFO    ] ================================================
[2026-06-19 04:51:08,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:51:08
[2026-06-19 04:51:08,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:51:09,004.004 INFO    ] Initializing speech engine...
[2026-06-19 04:51:09,018.018 INFO    ] 2026-06-19 04:51:09
[2026-06-19 04:51:09,285.285 INFO    ] 2026-06-19 04:51:09
[2026-06-19 04:51:09,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:51:09,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:51:09,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:51:09,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:51:09,647.647 INFO    ] time= 19/06/2026 04:51:09
[2026-06-19 04:51:09,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:51:09,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:51:09,743.743 INFO    ] No existing commands found in stream
[2026-06-19 04:51:14,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:51:14,761.761 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 04:51:16,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:51:16,704.704 INFO    ] Checking for system updates...
[2026-06-19 04:51:16,746.746 INFO    ] 200
[2026-06-19 04:51:16,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:16,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:51:16,812.812 INFO    ] No update needed
[2026-06-19 04:51:16,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 04:51:16,848.848 INFO    ] 200
[2026-06-19 04:51:16,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:16,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:51:16,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:51:16,940.940 INFO    ] No camera update needed
[2026-06-19 04:51:16,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:51:16,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:51:16,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:51:16,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:51:19,997.997 INFO    ] ================================================
[2026-06-19 04:51:19,013.013 INFO    ] Launching Daemon at Fri Jun 19 04:51:19 IST 2026
[2026-06-19 04:51:19,024.024 INFO    ] ================================================
[2026-06-19 04:51:19,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:51:19
[2026-06-19 04:51:20,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:51:20,443.443 INFO    ] Initializing speech engine...
[2026-06-19 04:51:20,449.449 INFO    ] 2026-06-19 04:51:20
[2026-06-19 04:51:20,772.772 INFO    ] 2026-06-19 04:51:20
[2026-06-19 04:51:20,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:51:20,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:51:21,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:51:21,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:51:21,181.181 INFO    ] time= 19/06/2026 04:51:21
[2026-06-19 04:51:21,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:51:21,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:51:21,258.258 INFO    ] No existing commands found in stream
[2026-06-19 04:51:26,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:51:26,280.280 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 04:51:30,460.460 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:51:30,462.462 INFO    ] Checking for system updates...
[2026-06-19 04:51:30,503.503 INFO    ] 200
[2026-06-19 04:51:30,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:30,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:51:30,561.561 INFO    ] No update needed
[2026-06-19 04:51:30,563.563 INFO    ] Checking for camera pi updates...
[2026-06-19 04:51:30,605.605 INFO    ] 200
[2026-06-19 04:51:30,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:30,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:51:30,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:51:30,697.697 INFO    ] No camera update needed
[2026-06-19 04:51:30,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:51:30,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:51:30,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:51:30,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:51:32,757.757 INFO    ] ================================================
[2026-06-19 04:51:32,775.775 INFO    ] Launching Daemon at Fri Jun 19 04:51:32 IST 2026
[2026-06-19 04:51:32,787.787 INFO    ] ================================================
[2026-06-19 04:51:33,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:51:33
[2026-06-19 04:51:34,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:51:34,390.390 INFO    ] Initializing speech engine...
[2026-06-19 04:51:34,404.404 INFO    ] 2026-06-19 04:51:34
[2026-06-19 04:51:34,690.690 INFO    ] 2026-06-19 04:51:34
[2026-06-19 04:51:34,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:51:34,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:51:34,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:51:35,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:51:35,230.230 INFO    ] time= 19/06/2026 04:51:35
[2026-06-19 04:51:35,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:51:35,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:51:35,389.389 INFO    ] No existing commands found in stream
[2026-06-19 04:51:40,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:51:40,409.409 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 04:51:44,759.759 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:51:44,762.762 INFO    ] Checking for system updates...
[2026-06-19 04:51:44,806.806 INFO    ] 200
[2026-06-19 04:51:44,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:44,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:51:44,881.881 INFO    ] No update needed
[2026-06-19 04:51:44,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 04:51:44,921.921 INFO    ] 200
[2026-06-19 04:51:44,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:44,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:51:45,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:51:45,029.029 INFO    ] No camera update needed
[2026-06-19 04:51:45,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:51:45,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:51:45,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:51:45,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:51:47,085.085 INFO    ] ================================================
[2026-06-19 04:51:47,101.101 INFO    ] Launching Daemon at Fri Jun 19 04:51:47 IST 2026
[2026-06-19 04:51:47,113.113 INFO    ] ================================================
[2026-06-19 04:51:47,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:51:47
[2026-06-19 04:51:48,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:51:48,545.545 INFO    ] Initializing speech engine...
[2026-06-19 04:51:48,555.555 INFO    ] 2026-06-19 04:51:48
[2026-06-19 04:51:48,807.807 INFO    ] 2026-06-19 04:51:48
[2026-06-19 04:51:48,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:51:49,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:51:49,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:51:49,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:51:49,295.295 INFO    ] time= 19/06/2026 04:51:49
[2026-06-19 04:51:49,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:51:49,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:51:49,443.443 INFO    ] No existing commands found in stream
[2026-06-19 04:51:54,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:51:54,458.458 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 04:51:57,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:51:57,752.752 INFO    ] Checking for system updates...
[2026-06-19 04:51:57,794.794 INFO    ] 200
[2026-06-19 04:51:57,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:57,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:51:57,861.861 INFO    ] No update needed
[2026-06-19 04:51:57,863.863 INFO    ] Checking for camera pi updates...
[2026-06-19 04:51:57,902.902 INFO    ] 200
[2026-06-19 04:51:57,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:51:57,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:51:57,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:51:57,994.994 INFO    ] No camera update needed
[2026-06-19 04:51:57,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:51:57,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:51:58,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:51:58,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:52:00,048.048 INFO    ] ================================================
[2026-06-19 04:52:00,064.064 INFO    ] Launching Daemon at Fri Jun 19 04:52:00 IST 2026
[2026-06-19 04:52:00,076.076 INFO    ] ================================================
[2026-06-19 04:52:00,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:52:00
[2026-06-19 04:52:01,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:52:01,850.850 INFO    ] Initializing speech engine...
[2026-06-19 04:52:01,853.853 INFO    ] 2026-06-19 04:52:01
[2026-06-19 04:52:02,302.302 INFO    ] 2026-06-19 04:52:02
[2026-06-19 04:52:02,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:52:02,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:52:02,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:52:02,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:52:02,674.674 INFO    ] time= 19/06/2026 04:52:02
[2026-06-19 04:52:02,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:52:02,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:52:02,747.747 INFO    ] No existing commands found in stream
[2026-06-19 04:52:07,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:52:07,760.760 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 04:52:10,467.467 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:52:10,470.470 INFO    ] Checking for system updates...
[2026-06-19 04:52:10,508.508 INFO    ] 200
[2026-06-19 04:52:10,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:10,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:52:10,574.574 INFO    ] No update needed
[2026-06-19 04:52:10,577.577 INFO    ] Checking for camera pi updates...
[2026-06-19 04:52:10,615.615 INFO    ] 200
[2026-06-19 04:52:10,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:10,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:52:10,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:52:10,715.715 INFO    ] No camera update needed
[2026-06-19 04:52:10,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:52:10,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:52:10,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:52:10,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:52:12,774.774 INFO    ] ================================================
[2026-06-19 04:52:12,790.790 INFO    ] Launching Daemon at Fri Jun 19 04:52:12 IST 2026
[2026-06-19 04:52:12,802.802 INFO    ] ================================================
[2026-06-19 04:52:13,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:52:13
[2026-06-19 04:52:13,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:52:14,265.265 INFO    ] Initializing speech engine...
[2026-06-19 04:52:14,279.279 INFO    ] 2026-06-19 04:52:14
[2026-06-19 04:52:14,581.581 INFO    ] 2026-06-19 04:52:14
[2026-06-19 04:52:14,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:52:14,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:52:14,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:52:14,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:52:14,987.987 INFO    ] time= 19/06/2026 04:52:14
[2026-06-19 04:52:14,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:52:15,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:52:15,088.088 INFO    ] No existing commands found in stream
[2026-06-19 04:52:20,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:52:20,120.120 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 04:52:20,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:52:20,902.902 INFO    ] Checking for system updates...
[2026-06-19 04:52:20,944.944 INFO    ] 200
[2026-06-19 04:52:20,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:21,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:52:21,014.014 INFO    ] No update needed
[2026-06-19 04:52:21,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 04:52:21,057.057 INFO    ] 200
[2026-06-19 04:52:21,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:21,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:52:21,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:52:21,174.174 INFO    ] No camera update needed
[2026-06-19 04:52:21,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:52:21,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:52:21,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:52:21,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:52:23,236.236 INFO    ] ================================================
[2026-06-19 04:52:23,252.252 INFO    ] Launching Daemon at Fri Jun 19 04:52:23 IST 2026
[2026-06-19 04:52:23,263.263 INFO    ] ================================================
[2026-06-19 04:52:23,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:52:23
[2026-06-19 04:52:24,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:52:24,676.676 INFO    ] Initializing speech engine...
[2026-06-19 04:52:24,699.699 INFO    ] 2026-06-19 04:52:24
[2026-06-19 04:52:24,954.954 INFO    ] 2026-06-19 04:52:24
[2026-06-19 04:52:24,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:52:25,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:52:25,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:52:25,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:52:25,342.342 INFO    ] time= 19/06/2026 04:52:25
[2026-06-19 04:52:25,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:52:25,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:52:25,517.517 INFO    ] No existing commands found in stream
[2026-06-19 04:52:30,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:52:30,550.550 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 04:52:33,834.834 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:52:33,836.836 INFO    ] Checking for system updates...
[2026-06-19 04:52:33,874.874 INFO    ] 200
[2026-06-19 04:52:33,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:33,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:52:33,942.942 INFO    ] No update needed
[2026-06-19 04:52:33,945.945 INFO    ] Checking for camera pi updates...
[2026-06-19 04:52:33,985.985 INFO    ] 200
[2026-06-19 04:52:33,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:34,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:52:34,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:52:34,081.081 INFO    ] No camera update needed
[2026-06-19 04:52:34,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:52:34,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:52:34,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:52:34,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:52:36,143.143 INFO    ] ================================================
[2026-06-19 04:52:36,158.158 INFO    ] Launching Daemon at Fri Jun 19 04:52:36 IST 2026
[2026-06-19 04:52:36,169.169 INFO    ] ================================================
[2026-06-19 04:52:36,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:52:36
[2026-06-19 04:52:37,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:52:37,656.656 INFO    ] Initializing speech engine...
[2026-06-19 04:52:37,665.665 INFO    ] 2026-06-19 04:52:37
[2026-06-19 04:52:37,926.926 INFO    ] 2026-06-19 04:52:37
[2026-06-19 04:52:37,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:52:38,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:52:38,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:52:38,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:52:38,298.298 INFO    ] time= 19/06/2026 04:52:38
[2026-06-19 04:52:38,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:52:38,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:52:38,467.467 INFO    ] No existing commands found in stream
[2026-06-19 04:52:43,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:52:43,495.495 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 04:52:46,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:52:46,059.059 INFO    ] Checking for system updates...
[2026-06-19 04:52:46,101.101 INFO    ] 200
[2026-06-19 04:52:46,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:46,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:52:46,162.162 INFO    ] No update needed
[2026-06-19 04:52:46,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 04:52:46,204.204 INFO    ] 200
[2026-06-19 04:52:46,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:46,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:52:46,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:52:46,297.297 INFO    ] No camera update needed
[2026-06-19 04:52:46,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:52:46,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:52:46,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:52:46,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:52:48,354.354 INFO    ] ================================================
[2026-06-19 04:52:48,370.370 INFO    ] Launching Daemon at Fri Jun 19 04:52:48 IST 2026
[2026-06-19 04:52:48,381.381 INFO    ] ================================================
[2026-06-19 04:52:48,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:52:48
[2026-06-19 04:52:49,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:52:49,882.882 INFO    ] Initializing speech engine...
[2026-06-19 04:52:49,892.892 INFO    ] 2026-06-19 04:52:49
[2026-06-19 04:52:50,168.168 INFO    ] 2026-06-19 04:52:50
[2026-06-19 04:52:50,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:52:50,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:52:50,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:52:50,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:52:50,607.607 INFO    ] time= 19/06/2026 04:52:50
[2026-06-19 04:52:50,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:52:50,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:52:50,763.763 INFO    ] No existing commands found in stream
[2026-06-19 04:52:55,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:52:55,777.777 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 04:52:58,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:52:58,084.084 INFO    ] Checking for system updates...
[2026-06-19 04:52:58,119.119 INFO    ] 200
[2026-06-19 04:52:58,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:58,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:52:58,186.186 INFO    ] No update needed
[2026-06-19 04:52:58,188.188 INFO    ] Checking for camera pi updates...
[2026-06-19 04:52:58,222.222 INFO    ] 200
[2026-06-19 04:52:58,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:52:58,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:52:58,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:52:58,322.322 INFO    ] No camera update needed
[2026-06-19 04:52:58,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:52:58,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:52:58,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:52:58,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:53:00,378.378 INFO    ] ================================================
[2026-06-19 04:53:00,394.394 INFO    ] Launching Daemon at Fri Jun 19 04:53:00 IST 2026
[2026-06-19 04:53:00,405.405 INFO    ] ================================================
[2026-06-19 04:53:00,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:53:00
[2026-06-19 04:53:01,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:53:02,173.173 INFO    ] Initializing speech engine...
[2026-06-19 04:53:02,184.184 INFO    ] 2026-06-19 04:53:02
[2026-06-19 04:53:02,590.590 INFO    ] 2026-06-19 04:53:02
[2026-06-19 04:53:02,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:53:02,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:53:02,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:53:02,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:53:02,979.979 INFO    ] time= 19/06/2026 04:53:02
[2026-06-19 04:53:02,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:53:03,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:53:03,151.151 INFO    ] No existing commands found in stream
[2026-06-19 04:53:08,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:53:08,173.173 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 04:53:09,628.628 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:53:09,630.630 INFO    ] Checking for system updates...
[2026-06-19 04:53:09,668.668 INFO    ] 200
[2026-06-19 04:53:09,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:09,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:53:09,736.736 INFO    ] No update needed
[2026-06-19 04:53:09,739.739 INFO    ] Checking for camera pi updates...
[2026-06-19 04:53:09,778.778 INFO    ] 200
[2026-06-19 04:53:09,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:09,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:53:09,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:53:09,871.871 INFO    ] No camera update needed
[2026-06-19 04:53:09,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:53:09,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:53:09,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:53:09,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:53:11,929.929 INFO    ] ================================================
[2026-06-19 04:53:11,948.948 INFO    ] Launching Daemon at Fri Jun 19 04:53:11 IST 2026
[2026-06-19 04:53:11,960.960 INFO    ] ================================================
[2026-06-19 04:53:12,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:53:12
[2026-06-19 04:53:13,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:53:13,632.632 INFO    ] Initializing speech engine...
[2026-06-19 04:53:13,646.646 INFO    ] 2026-06-19 04:53:13
[2026-06-19 04:53:13,956.956 INFO    ] 2026-06-19 04:53:13
[2026-06-19 04:53:14,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:53:14,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:53:14,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:53:14,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:53:14,463.463 INFO    ] time= 19/06/2026 04:53:14
[2026-06-19 04:53:14,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:53:14,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:53:14,605.605 INFO    ] No existing commands found in stream
[2026-06-19 04:53:19,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:53:19,636.636 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 04:53:22,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:53:22,151.151 INFO    ] Checking for system updates...
[2026-06-19 04:53:22,193.193 INFO    ] 200
[2026-06-19 04:53:22,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:22,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:53:22,257.257 INFO    ] No update needed
[2026-06-19 04:53:22,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 04:53:22,299.299 INFO    ] 200
[2026-06-19 04:53:22,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:22,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:53:22,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:53:22,404.404 INFO    ] No camera update needed
[2026-06-19 04:53:22,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:53:22,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:53:22,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:53:22,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:53:24,464.464 INFO    ] ================================================
[2026-06-19 04:53:24,479.479 INFO    ] Launching Daemon at Fri Jun 19 04:53:24 IST 2026
[2026-06-19 04:53:24,490.490 INFO    ] ================================================
[2026-06-19 04:53:25,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:53:25
[2026-06-19 04:53:25,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:53:25,902.902 INFO    ] Initializing speech engine...
[2026-06-19 04:53:25,917.917 INFO    ] 2026-06-19 04:53:25
[2026-06-19 04:53:26,173.173 INFO    ] 2026-06-19 04:53:26
[2026-06-19 04:53:26,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:53:26,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:53:26,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:53:26,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:53:26,619.619 INFO    ] time= 19/06/2026 04:53:26
[2026-06-19 04:53:26,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:53:26,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:53:26,802.802 INFO    ] No existing commands found in stream
[2026-06-19 04:53:31,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:53:31,817.817 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 04:53:33,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:53:33,913.913 INFO    ] Checking for system updates...
[2026-06-19 04:53:33,954.954 INFO    ] 200
[2026-06-19 04:53:33,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:34,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:53:34,013.013 INFO    ] No update needed
[2026-06-19 04:53:34,016.016 INFO    ] Checking for camera pi updates...
[2026-06-19 04:53:34,054.054 INFO    ] 200
[2026-06-19 04:53:34,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:34,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:53:34,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:53:34,138.138 INFO    ] No camera update needed
[2026-06-19 04:53:34,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:53:34,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:53:34,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:53:34,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:53:36,196.196 INFO    ] ================================================
[2026-06-19 04:53:36,212.212 INFO    ] Launching Daemon at Fri Jun 19 04:53:36 IST 2026
[2026-06-19 04:53:36,223.223 INFO    ] ================================================
[2026-06-19 04:53:36,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:53:36
[2026-06-19 04:53:37,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:53:37,740.740 INFO    ] Initializing speech engine...
[2026-06-19 04:53:37,745.745 INFO    ] 2026-06-19 04:53:37
[2026-06-19 04:53:38,060.060 INFO    ] 2026-06-19 04:53:38
[2026-06-19 04:53:38,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:53:38,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:53:38,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:53:38,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:53:38,575.575 INFO    ] time= 19/06/2026 04:53:38
[2026-06-19 04:53:38,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:53:38,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:53:38,737.737 INFO    ] No existing commands found in stream
[2026-06-19 04:53:43,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:53:43,767.767 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 04:53:44,599.599 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:53:44,602.602 INFO    ] Checking for system updates...
[2026-06-19 04:53:44,641.641 INFO    ] 200
[2026-06-19 04:53:44,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:44,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:53:44,703.703 INFO    ] No update needed
[2026-06-19 04:53:44,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 04:53:44,740.740 INFO    ] 200
[2026-06-19 04:53:44,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:44,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:53:44,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:53:44,834.834 INFO    ] No camera update needed
[2026-06-19 04:53:44,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:53:44,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:53:44,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:53:44,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:53:46,891.891 INFO    ] ================================================
[2026-06-19 04:53:46,907.907 INFO    ] Launching Daemon at Fri Jun 19 04:53:46 IST 2026
[2026-06-19 04:53:46,917.917 INFO    ] ================================================
[2026-06-19 04:53:47,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:53:47
[2026-06-19 04:53:48,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:53:48,370.370 INFO    ] Initializing speech engine...
[2026-06-19 04:53:48,379.379 INFO    ] 2026-06-19 04:53:48
[2026-06-19 04:53:48,652.652 INFO    ] 2026-06-19 04:53:48
[2026-06-19 04:53:48,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:53:48,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:53:48,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:53:49,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:53:49,016.016 INFO    ] time= 19/06/2026 04:53:49
[2026-06-19 04:53:49,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:53:49,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:53:49,101.101 INFO    ] No existing commands found in stream
[2026-06-19 04:53:54,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:53:54,115.115 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 04:53:55,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:53:55,084.084 INFO    ] Checking for system updates...
[2026-06-19 04:53:55,121.121 INFO    ] 200
[2026-06-19 04:53:55,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:55,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:53:55,180.180 INFO    ] No update needed
[2026-06-19 04:53:55,182.182 INFO    ] Checking for camera pi updates...
[2026-06-19 04:53:55,219.219 INFO    ] 200
[2026-06-19 04:53:55,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:53:55,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:53:55,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:53:55,311.311 INFO    ] No camera update needed
[2026-06-19 04:53:55,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:53:55,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:53:55,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:53:55,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:53:57,368.368 INFO    ] ================================================
[2026-06-19 04:53:57,382.382 INFO    ] Launching Daemon at Fri Jun 19 04:53:57 IST 2026
[2026-06-19 04:53:57,393.393 INFO    ] ================================================
[2026-06-19 04:53:57,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:53:57
[2026-06-19 04:53:58,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:53:58,872.872 INFO    ] Initializing speech engine...
[2026-06-19 04:53:58,880.880 INFO    ] 2026-06-19 04:53:58
[2026-06-19 04:53:59,139.139 INFO    ] 2026-06-19 04:53:59
[2026-06-19 04:53:59,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:53:59,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:53:59,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:53:59,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:53:59,613.613 INFO    ] time= 19/06/2026 04:53:59
[2026-06-19 04:53:59,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:53:59,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:53:59,746.746 INFO    ] No existing commands found in stream
[2026-06-19 04:54:04,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:54:04,761.761 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 04:54:08,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:54:08,987.987 INFO    ] Checking for system updates...
[2026-06-19 04:54:09,024.024 INFO    ] 200
[2026-06-19 04:54:09,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:54:09,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:54:09,091.091 INFO    ] No update needed
[2026-06-19 04:54:09,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 04:54:09,127.127 INFO    ] 200
[2026-06-19 04:54:09,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:54:09,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:54:09,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:54:09,231.231 INFO    ] No camera update needed
[2026-06-19 04:54:09,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:54:09,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:54:09,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:54:09,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:54:11,287.287 INFO    ] ================================================
[2026-06-19 04:54:11,302.302 INFO    ] Launching Daemon at Fri Jun 19 04:54:11 IST 2026
[2026-06-19 04:54:11,313.313 INFO    ] ================================================
[2026-06-19 04:54:11,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:54:11
[2026-06-19 04:54:12,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:54:12,758.758 INFO    ] Initializing speech engine...
[2026-06-19 04:54:12,767.767 INFO    ] 2026-06-19 04:54:12
[2026-06-19 04:54:13,062.062 INFO    ] 2026-06-19 04:54:13
[2026-06-19 04:54:13,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:54:13,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:54:13,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:54:13,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:54:13,449.449 INFO    ] time= 19/06/2026 04:54:13
[2026-06-19 04:54:13,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:54:13,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:54:13,577.577 INFO    ] No existing commands found in stream
[2026-06-19 04:54:18,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:54:18,592.592 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 04:54:23,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:54:23,557.557 INFO    ] Checking for system updates...
[2026-06-19 04:54:23,597.597 INFO    ] 200
[2026-06-19 04:54:23,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:54:23,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:54:23,654.654 INFO    ] No update needed
[2026-06-19 04:54:23,657.657 INFO    ] Checking for camera pi updates...
[2026-06-19 04:54:23,690.690 INFO    ] 200
[2026-06-19 04:54:23,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:54:23,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:54:23,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:54:23,776.776 INFO    ] No camera update needed
[2026-06-19 04:54:23,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:54:23,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:54:23,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:54:23,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:54:25,831.831 INFO    ] ================================================
[2026-06-19 04:54:25,847.847 INFO    ] Launching Daemon at Fri Jun 19 04:54:25 IST 2026
[2026-06-19 04:54:25,859.859 INFO    ] ================================================
[2026-06-19 04:54:26,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:54:26
[2026-06-19 04:54:27,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:54:27,282.282 INFO    ] Initializing speech engine...
[2026-06-19 04:54:27,289.289 INFO    ] 2026-06-19 04:54:27
[2026-06-19 04:54:27,533.533 INFO    ] 2026-06-19 04:54:27
[2026-06-19 04:54:27,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:54:27,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:54:27,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:54:27,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:54:28,004.004 INFO    ] time= 19/06/2026 04:54:27
[2026-06-19 04:54:28,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:54:28,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:54:28,153.153 INFO    ] No existing commands found in stream
[2026-06-19 04:54:33,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:54:33,168.168 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 04:54:36,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:54:36,814.814 INFO    ] Checking for system updates...
[2026-06-19 04:54:36,851.851 INFO    ] 200
[2026-06-19 04:54:36,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:54:36,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:54:36,909.909 INFO    ] No update needed
[2026-06-19 04:54:36,911.911 INFO    ] Checking for camera pi updates...
[2026-06-19 04:54:36,945.945 INFO    ] 200
[2026-06-19 04:54:36,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:54:36,988.988 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:54:37,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:54:37,137.137 INFO    ] No camera update needed
[2026-06-19 04:54:37,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:54:37,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:54:37,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:54:37,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:54:39,196.196 INFO    ] ================================================
[2026-06-19 04:54:39,213.213 INFO    ] Launching Daemon at Fri Jun 19 04:54:39 IST 2026
[2026-06-19 04:54:39,224.224 INFO    ] ================================================
[2026-06-19 04:54:39,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:54:39
[2026-06-19 04:54:40,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:54:40,627.627 INFO    ] Initializing speech engine...
[2026-06-19 04:54:40,640.640 INFO    ] 2026-06-19 04:54:40
[2026-06-19 04:54:40,924.924 INFO    ] 2026-06-19 04:54:40
[2026-06-19 04:54:40,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:54:41,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:54:41,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:54:41,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:54:41,419.419 INFO    ] time= 19/06/2026 04:54:41
[2026-06-19 04:54:41,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:54:41,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:54:41,557.557 INFO    ] No existing commands found in stream
[2026-06-19 04:54:46,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:54:46,596.596 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 04:54:47,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:54:47,946.946 INFO    ] Checking for system updates...
[2026-06-19 04:54:47,989.989 INFO    ] 200
[2026-06-19 04:54:47,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:54:48,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:54:48,050.050 INFO    ] No update needed
[2026-06-19 04:54:48,053.053 INFO    ] Checking for camera pi updates...
[2026-06-19 04:54:48,093.093 INFO    ] 200
[2026-06-19 04:54:48,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:54:48,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:54:48,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:54:48,179.179 INFO    ] No camera update needed
[2026-06-19 04:54:48,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:54:48,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:54:48,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:54:48,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:54:50,239.239 INFO    ] ================================================
[2026-06-19 04:54:50,255.255 INFO    ] Launching Daemon at Fri Jun 19 04:54:50 IST 2026
[2026-06-19 04:54:50,266.266 INFO    ] ================================================
[2026-06-19 04:54:50,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:54:50
[2026-06-19 04:54:51,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:54:51,809.809 INFO    ] Initializing speech engine...
[2026-06-19 04:54:51,816.816 INFO    ] 2026-06-19 04:54:51
[2026-06-19 04:54:52,077.077 INFO    ] 2026-06-19 04:54:52
[2026-06-19 04:54:52,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:54:52,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:54:52,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:54:52,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:54:52,541.541 INFO    ] time= 19/06/2026 04:54:52
[2026-06-19 04:54:52,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:54:52,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:54:52,682.682 INFO    ] No existing commands found in stream
[2026-06-19 04:54:57,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:54:57,697.697 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 04:55:01,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:55:01,654.654 INFO    ] Checking for system updates...
[2026-06-19 04:55:01,756.756 INFO    ] 200
[2026-06-19 04:55:01,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:02,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:55:02,060.060 INFO    ] No update needed
[2026-06-19 04:55:02,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 04:55:02,169.169 INFO    ] 200
[2026-06-19 04:55:02,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:02,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:55:02,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:55:02,304.304 INFO    ] No camera update needed
[2026-06-19 04:55:02,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:55:02,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:55:02,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:55:02,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:55:04,369.369 INFO    ] ================================================
[2026-06-19 04:55:04,385.385 INFO    ] Launching Daemon at Fri Jun 19 04:55:04 IST 2026
[2026-06-19 04:55:04,396.396 INFO    ] ================================================
[2026-06-19 04:55:05,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:55:05
[2026-06-19 04:55:05,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:55:05,861.861 INFO    ] Initializing speech engine...
[2026-06-19 04:55:05,890.890 INFO    ] 2026-06-19 04:55:05
[2026-06-19 04:55:06,195.195 INFO    ] 2026-06-19 04:55:06
[2026-06-19 04:55:06,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:55:06,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:55:06,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:55:06,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:55:06,601.601 INFO    ] time= 19/06/2026 04:55:06
[2026-06-19 04:55:06,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:55:06,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:55:06,721.721 INFO    ] No existing commands found in stream
[2026-06-19 04:55:11,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:55:11,733.733 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 04:55:14,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:55:14,224.224 INFO    ] Checking for system updates...
[2026-06-19 04:55:14,260.260 INFO    ] 200
[2026-06-19 04:55:14,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:14,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:55:14,320.320 INFO    ] No update needed
[2026-06-19 04:55:14,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 04:55:14,363.363 INFO    ] 200
[2026-06-19 04:55:14,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:14,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:55:14,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:55:14,451.451 INFO    ] No camera update needed
[2026-06-19 04:55:14,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:55:14,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:55:14,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:55:14,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:55:16,510.510 INFO    ] ================================================
[2026-06-19 04:55:16,526.526 INFO    ] Launching Daemon at Fri Jun 19 04:55:16 IST 2026
[2026-06-19 04:55:16,537.537 INFO    ] ================================================
[2026-06-19 04:55:17,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:55:17
[2026-06-19 04:55:17,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:55:18,043.043 INFO    ] Initializing speech engine...
[2026-06-19 04:55:18,054.054 INFO    ] 2026-06-19 04:55:18
[2026-06-19 04:55:18,323.323 INFO    ] 2026-06-19 04:55:18
[2026-06-19 04:55:18,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:55:18,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:55:18,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:55:18,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:55:18,712.712 INFO    ] time= 19/06/2026 04:55:18
[2026-06-19 04:55:18,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:55:18,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:55:18,884.884 INFO    ] No existing commands found in stream
[2026-06-19 04:55:23,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:55:23,912.912 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 04:55:27,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:55:27,682.682 INFO    ] Checking for system updates...
[2026-06-19 04:55:27,718.718 INFO    ] 200
[2026-06-19 04:55:27,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:27,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:55:27,776.776 INFO    ] No update needed
[2026-06-19 04:55:27,779.779 INFO    ] Checking for camera pi updates...
[2026-06-19 04:55:27,813.813 INFO    ] 200
[2026-06-19 04:55:27,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:27,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:55:27,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:55:27,908.908 INFO    ] No camera update needed
[2026-06-19 04:55:27,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:55:27,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:55:27,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:55:27,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:55:29,964.964 INFO    ] ================================================
[2026-06-19 04:55:29,980.980 INFO    ] Launching Daemon at Fri Jun 19 04:55:29 IST 2026
[2026-06-19 04:55:29,991.991 INFO    ] ================================================
[2026-06-19 04:55:30,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:55:30
[2026-06-19 04:55:31,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:55:31,587.587 INFO    ] Initializing speech engine...
[2026-06-19 04:55:31,594.594 INFO    ] 2026-06-19 04:55:31
[2026-06-19 04:55:31,885.885 INFO    ] 2026-06-19 04:55:31
[2026-06-19 04:55:31,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:55:32,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:55:32,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:55:32,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:55:32,280.280 INFO    ] time= 19/06/2026 04:55:32
[2026-06-19 04:55:32,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:55:32,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:55:32,413.413 INFO    ] No existing commands found in stream
[2026-06-19 04:55:37,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:55:37,429.429 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 04:55:39,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:55:39,781.781 INFO    ] Checking for system updates...
[2026-06-19 04:55:39,817.817 INFO    ] 200
[2026-06-19 04:55:39,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:39,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:55:39,876.876 INFO    ] No update needed
[2026-06-19 04:55:39,879.879 INFO    ] Checking for camera pi updates...
[2026-06-19 04:55:39,913.913 INFO    ] 200
[2026-06-19 04:55:39,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:39,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:55:40,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:55:40,009.009 INFO    ] No camera update needed
[2026-06-19 04:55:40,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:55:40,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:55:40,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:55:40,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:55:42,068.068 INFO    ] ================================================
[2026-06-19 04:55:42,084.084 INFO    ] Launching Daemon at Fri Jun 19 04:55:42 IST 2026
[2026-06-19 04:55:42,095.095 INFO    ] ================================================
[2026-06-19 04:55:42,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:55:42
[2026-06-19 04:55:43,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:55:43,646.646 INFO    ] Initializing speech engine...
[2026-06-19 04:55:43,656.656 INFO    ] 2026-06-19 04:55:43
[2026-06-19 04:55:43,926.926 INFO    ] 2026-06-19 04:55:43
[2026-06-19 04:55:43,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:55:44,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:55:44,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:55:44,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:55:44,409.409 INFO    ] time= 19/06/2026 04:55:44
[2026-06-19 04:55:44,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:55:44,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:55:44,597.597 INFO    ] No existing commands found in stream
[2026-06-19 04:55:49,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:55:49,628.628 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 04:55:53,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:55:53,557.557 INFO    ] Checking for system updates...
[2026-06-19 04:55:53,597.597 INFO    ] 200
[2026-06-19 04:55:53,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:53,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:55:53,662.662 INFO    ] No update needed
[2026-06-19 04:55:53,665.665 INFO    ] Checking for camera pi updates...
[2026-06-19 04:55:53,699.699 INFO    ] 200
[2026-06-19 04:55:53,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:55:53,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:55:53,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:55:53,791.791 INFO    ] No camera update needed
[2026-06-19 04:55:53,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:55:53,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:55:53,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:55:53,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:55:55,847.847 INFO    ] ================================================
[2026-06-19 04:55:55,862.862 INFO    ] Launching Daemon at Fri Jun 19 04:55:55 IST 2026
[2026-06-19 04:55:55,873.873 INFO    ] ================================================
[2026-06-19 04:55:56,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:55:56
[2026-06-19 04:55:57,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:55:57,465.465 INFO    ] Initializing speech engine...
[2026-06-19 04:55:57,480.480 INFO    ] 2026-06-19 04:55:57
[2026-06-19 04:55:57,758.758 INFO    ] 2026-06-19 04:55:57
[2026-06-19 04:55:57,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:55:58,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:55:58,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:55:58,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:55:58,294.294 INFO    ] time= 19/06/2026 04:55:58
[2026-06-19 04:55:58,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:55:58,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:55:58,419.419 INFO    ] No existing commands found in stream
[2026-06-19 04:56:03,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:56:03,459.459 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 04:56:05,206.206 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:56:05,209.209 INFO    ] Checking for system updates...
[2026-06-19 04:56:05,246.246 INFO    ] 200
[2026-06-19 04:56:05,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:05,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:56:05,305.305 INFO    ] No update needed
[2026-06-19 04:56:05,308.308 INFO    ] Checking for camera pi updates...
[2026-06-19 04:56:05,345.345 INFO    ] 200
[2026-06-19 04:56:05,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:05,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:56:05,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:56:05,444.444 INFO    ] No camera update needed
[2026-06-19 04:56:05,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:56:05,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:56:05,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:56:05,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:56:07,504.504 INFO    ] ================================================
[2026-06-19 04:56:07,521.521 INFO    ] Launching Daemon at Fri Jun 19 04:56:07 IST 2026
[2026-06-19 04:56:07,532.532 INFO    ] ================================================
[2026-06-19 04:56:08,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:56:08
[2026-06-19 04:56:08,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:56:08,998.998 INFO    ] Initializing speech engine...
[2026-06-19 04:56:09,013.013 INFO    ] 2026-06-19 04:56:08
[2026-06-19 04:56:09,286.286 INFO    ] 2026-06-19 04:56:09
[2026-06-19 04:56:09,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:56:09,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:56:09,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:56:09,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:56:09,693.693 INFO    ] time= 19/06/2026 04:56:09
[2026-06-19 04:56:09,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:56:09,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:56:09,781.781 INFO    ] No existing commands found in stream
[2026-06-19 04:56:14,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:56:14,797.797 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 04:56:17,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:56:17,868.868 INFO    ] Checking for system updates...
[2026-06-19 04:56:17,904.904 INFO    ] 200
[2026-06-19 04:56:17,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:17,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:56:17,962.962 INFO    ] No update needed
[2026-06-19 04:56:17,964.964 INFO    ] Checking for camera pi updates...
[2026-06-19 04:56:17,998.998 INFO    ] 200
[2026-06-19 04:56:18,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:18,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:56:18,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:56:18,098.098 INFO    ] No camera update needed
[2026-06-19 04:56:18,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:56:18,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:56:18,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:56:18,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:56:20,154.154 INFO    ] ================================================
[2026-06-19 04:56:20,170.170 INFO    ] Launching Daemon at Fri Jun 19 04:56:20 IST 2026
[2026-06-19 04:56:20,181.181 INFO    ] ================================================
[2026-06-19 04:56:20,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:56:20
[2026-06-19 04:56:21,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:56:21,629.629 INFO    ] Initializing speech engine...
[2026-06-19 04:56:21,638.638 INFO    ] 2026-06-19 04:56:21
[2026-06-19 04:56:21,928.928 INFO    ] 2026-06-19 04:56:21
[2026-06-19 04:56:21,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:56:22,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:56:22,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:56:22,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:56:22,300.300 INFO    ] time= 19/06/2026 04:56:22
[2026-06-19 04:56:22,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:56:22,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:56:22,425.425 INFO    ] No existing commands found in stream
[2026-06-19 04:56:27,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:56:27,440.440 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 04:56:31,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:56:31,311.311 INFO    ] Checking for system updates...
[2026-06-19 04:56:31,347.347 INFO    ] 200
[2026-06-19 04:56:31,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:31,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:56:31,404.404 INFO    ] No update needed
[2026-06-19 04:56:31,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 04:56:31,444.444 INFO    ] 200
[2026-06-19 04:56:31,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:31,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:56:31,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:56:31,519.519 INFO    ] No camera update needed
[2026-06-19 04:56:31,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:56:31,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:56:31,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:56:31,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:56:33,574.574 INFO    ] ================================================
[2026-06-19 04:56:33,590.590 INFO    ] Launching Daemon at Fri Jun 19 04:56:33 IST 2026
[2026-06-19 04:56:33,602.602 INFO    ] ================================================
[2026-06-19 04:56:34,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:56:34
[2026-06-19 04:56:34,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:56:35,067.067 INFO    ] Initializing speech engine...
[2026-06-19 04:56:35,075.075 INFO    ] 2026-06-19 04:56:35
[2026-06-19 04:56:35,334.334 INFO    ] 2026-06-19 04:56:35
[2026-06-19 04:56:35,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:56:35,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:56:35,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:56:35,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:56:35,775.775 INFO    ] time= 19/06/2026 04:56:35
[2026-06-19 04:56:35,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:56:35,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:56:36,012.012 INFO    ] No existing commands found in stream
[2026-06-19 04:56:41,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:56:41,041.041 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 04:56:45,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:56:45,038.038 INFO    ] Checking for system updates...
[2026-06-19 04:56:45,075.075 INFO    ] 200
[2026-06-19 04:56:45,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:45,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:56:45,133.133 INFO    ] No update needed
[2026-06-19 04:56:45,136.136 INFO    ] Checking for camera pi updates...
[2026-06-19 04:56:45,170.170 INFO    ] 200
[2026-06-19 04:56:45,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:45,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:56:45,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:56:45,358.358 INFO    ] No camera update needed
[2026-06-19 04:56:45,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:56:45,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:56:45,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:56:45,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:56:47,415.415 INFO    ] ================================================
[2026-06-19 04:56:47,431.431 INFO    ] Launching Daemon at Fri Jun 19 04:56:47 IST 2026
[2026-06-19 04:56:47,442.442 INFO    ] ================================================
[2026-06-19 04:56:48,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:56:48
[2026-06-19 04:56:48,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:56:48,863.863 INFO    ] Initializing speech engine...
[2026-06-19 04:56:48,877.877 INFO    ] 2026-06-19 04:56:48
[2026-06-19 04:56:49,154.154 INFO    ] 2026-06-19 04:56:49
[2026-06-19 04:56:49,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:56:49,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:56:49,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:56:49,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:56:49,530.530 INFO    ] time= 19/06/2026 04:56:49
[2026-06-19 04:56:49,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:56:49,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:56:49,601.601 INFO    ] No existing commands found in stream
[2026-06-19 04:56:54,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:56:54,615.615 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 04:56:56,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:56:56,265.265 INFO    ] Checking for system updates...
[2026-06-19 04:56:56,302.302 INFO    ] 200
[2026-06-19 04:56:56,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:56,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:56:56,360.360 INFO    ] No update needed
[2026-06-19 04:56:56,363.363 INFO    ] Checking for camera pi updates...
[2026-06-19 04:56:56,401.401 INFO    ] 200
[2026-06-19 04:56:56,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:56:56,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:56:56,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:56:56,494.494 INFO    ] No camera update needed
[2026-06-19 04:56:56,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:56:56,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:56:56,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:56:56,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:56:58,551.551 INFO    ] ================================================
[2026-06-19 04:56:58,566.566 INFO    ] Launching Daemon at Fri Jun 19 04:56:58 IST 2026
[2026-06-19 04:56:58,577.577 INFO    ] ================================================
[2026-06-19 04:56:59,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:56:59
[2026-06-19 04:56:59,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:57:00,028.028 INFO    ] Initializing speech engine...
[2026-06-19 04:57:00,037.037 INFO    ] 2026-06-19 04:57:00
[2026-06-19 04:57:00,309.309 INFO    ] 2026-06-19 04:57:00
[2026-06-19 04:57:00,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:57:00,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:57:00,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:57:00,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:57:00,703.703 INFO    ] time= 19/06/2026 04:57:00
[2026-06-19 04:57:00,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:57:00,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:57:00,818.818 INFO    ] No existing commands found in stream
[2026-06-19 04:57:05,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:57:05,832.832 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 04:57:07,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:57:07,524.524 INFO    ] Checking for system updates...
[2026-06-19 04:57:07,565.565 INFO    ] 200
[2026-06-19 04:57:07,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:07,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:07,623.623 INFO    ] No update needed
[2026-06-19 04:57:07,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 04:57:07,663.663 INFO    ] 200
[2026-06-19 04:57:07,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:07,710.710 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:57:07,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:07,757.757 INFO    ] No camera update needed
[2026-06-19 04:57:07,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:57:07,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:57:07,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:57:07,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:57:09,811.811 INFO    ] ================================================
[2026-06-19 04:57:09,827.827 INFO    ] Launching Daemon at Fri Jun 19 04:57:09 IST 2026
[2026-06-19 04:57:09,839.839 INFO    ] ================================================
[2026-06-19 04:57:10,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:57:10
[2026-06-19 04:57:10,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:57:11,283.283 INFO    ] Initializing speech engine...
[2026-06-19 04:57:11,290.290 INFO    ] 2026-06-19 04:57:11
[2026-06-19 04:57:11,540.540 INFO    ] 2026-06-19 04:57:11
[2026-06-19 04:57:11,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:57:11,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:57:11,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:57:11,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:57:11,931.931 INFO    ] time= 19/06/2026 04:57:11
[2026-06-19 04:57:11,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:57:11,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:57:12,115.115 INFO    ] No existing commands found in stream
[2026-06-19 04:57:17,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:57:17,143.143 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 04:57:18,070.070 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 04:57:18,073.073 INFO    ] Checking for system updates...
[2026-06-19 04:57:18,109.109 INFO    ] 200
[2026-06-19 04:57:18,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:18,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:18,177.177 INFO    ] No update needed
[2026-06-19 04:57:18,180.180 INFO    ] Checking for camera pi updates...
[2026-06-19 04:57:18,213.213 INFO    ] 200
[2026-06-19 04:57:18,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:18,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:57:18,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:18,308.308 INFO    ] No camera update needed
[2026-06-19 04:57:18,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:57:18,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:57:18,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:57:18,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:57:20,362.362 INFO    ] ================================================
[2026-06-19 04:57:20,378.378 INFO    ] Launching Daemon at Fri Jun 19 04:57:20 IST 2026
[2026-06-19 04:57:20,390.390 INFO    ] ================================================
[2026-06-19 04:57:20,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:57:20
[2026-06-19 04:57:21,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:57:21,832.832 INFO    ] Initializing speech engine...
[2026-06-19 04:57:21,846.846 INFO    ] 2026-06-19 04:57:21
[2026-06-19 04:57:22,110.110 INFO    ] 2026-06-19 04:57:22
[2026-06-19 04:57:22,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:57:22,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:57:22,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:57:22,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:57:22,573.573 INFO    ] time= 19/06/2026 04:57:22
[2026-06-19 04:57:22,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:57:22,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:57:22,740.740 INFO    ] No existing commands found in stream
[2026-06-19 04:57:27,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:57:27,755.755 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 04:57:28,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:57:28,715.715 INFO    ] Checking for system updates...
[2026-06-19 04:57:28,750.750 INFO    ] 200
[2026-06-19 04:57:28,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:28,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:28,808.808 INFO    ] No update needed
[2026-06-19 04:57:28,810.810 INFO    ] Checking for camera pi updates...
[2026-06-19 04:57:28,844.844 INFO    ] 200
[2026-06-19 04:57:28,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:28,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:57:28,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:28,946.946 INFO    ] No camera update needed
[2026-06-19 04:57:28,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:57:28,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:57:28,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:57:28,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:57:31,004.004 INFO    ] ================================================
[2026-06-19 04:57:31,019.019 INFO    ] Launching Daemon at Fri Jun 19 04:57:31 IST 2026
[2026-06-19 04:57:31,031.031 INFO    ] ================================================
[2026-06-19 04:57:31,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:57:31
[2026-06-19 04:57:32,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:57:32,622.622 INFO    ] Initializing speech engine...
[2026-06-19 04:57:32,641.641 INFO    ] 2026-06-19 04:57:32
[2026-06-19 04:57:32,930.930 INFO    ] 2026-06-19 04:57:32
[2026-06-19 04:57:32,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:57:33,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:57:33,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:57:33,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:57:33,408.408 INFO    ] time= 19/06/2026 04:57:33
[2026-06-19 04:57:33,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:57:33,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:57:33,560.560 INFO    ] No existing commands found in stream
[2026-06-19 04:57:38,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:57:38,584.584 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 04:57:39,023.023 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:57:39,026.026 INFO    ] Checking for system updates...
[2026-06-19 04:57:39,065.065 INFO    ] 200
[2026-06-19 04:57:39,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:39,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:39,130.130 INFO    ] No update needed
[2026-06-19 04:57:39,133.133 INFO    ] Checking for camera pi updates...
[2026-06-19 04:57:39,170.170 INFO    ] 200
[2026-06-19 04:57:39,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:39,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:57:39,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:39,259.259 INFO    ] No camera update needed
[2026-06-19 04:57:39,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:57:39,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:57:39,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:57:39,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:57:41,314.314 INFO    ] ================================================
[2026-06-19 04:57:41,330.330 INFO    ] Launching Daemon at Fri Jun 19 04:57:41 IST 2026
[2026-06-19 04:57:41,340.340 INFO    ] ================================================
[2026-06-19 04:57:41,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:57:41
[2026-06-19 04:57:42,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:57:42,945.945 INFO    ] Initializing speech engine...
[2026-06-19 04:57:42,953.953 INFO    ] 2026-06-19 04:57:42
[2026-06-19 04:57:43,275.275 INFO    ] 2026-06-19 04:57:43
[2026-06-19 04:57:43,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:57:43,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:57:43,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:57:43,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:57:43,783.783 INFO    ] time= 19/06/2026 04:57:43
[2026-06-19 04:57:43,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:57:43,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:57:43,938.938 INFO    ] No existing commands found in stream
[2026-06-19 04:57:48,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:57:48,968.968 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 04:57:50,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 04:57:50,901.901 INFO    ] Checking for system updates...
[2026-06-19 04:57:50,943.943 INFO    ] 200
[2026-06-19 04:57:50,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:51,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:51,009.009 INFO    ] No update needed
[2026-06-19 04:57:51,011.011 INFO    ] Checking for camera pi updates...
[2026-06-19 04:57:51,046.046 INFO    ] 200
[2026-06-19 04:57:51,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:57:51,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:57:51,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:57:51,134.134 INFO    ] No camera update needed
[2026-06-19 04:57:51,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:57:51,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:57:51,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:57:51,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:57:53,190.190 INFO    ] ================================================
[2026-06-19 04:57:53,206.206 INFO    ] Launching Daemon at Fri Jun 19 04:57:53 IST 2026
[2026-06-19 04:57:53,217.217 INFO    ] ================================================
[2026-06-19 04:57:53,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:57:53
[2026-06-19 04:57:54,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:57:54,633.633 INFO    ] Initializing speech engine...
[2026-06-19 04:57:54,648.648 INFO    ] 2026-06-19 04:57:54
[2026-06-19 04:57:54,938.938 INFO    ] 2026-06-19 04:57:54
[2026-06-19 04:57:54,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:57:55,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:57:55,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:57:55,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:57:55,324.324 INFO    ] time= 19/06/2026 04:57:55
[2026-06-19 04:57:55,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:57:55,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:57:55,455.455 INFO    ] No existing commands found in stream
[2026-06-19 04:58:00,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:58:00,468.468 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 04:58:03,727.727 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:58:03,730.730 INFO    ] Checking for system updates...
[2026-06-19 04:58:03,766.766 INFO    ] 200
[2026-06-19 04:58:03,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:03,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:58:03,825.825 INFO    ] No update needed
[2026-06-19 04:58:03,827.827 INFO    ] Checking for camera pi updates...
[2026-06-19 04:58:03,865.865 INFO    ] 200
[2026-06-19 04:58:03,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:03,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:58:03,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:58:03,953.953 INFO    ] No camera update needed
[2026-06-19 04:58:03,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:58:03,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:58:03,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:58:03,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:58:06,010.010 INFO    ] ================================================
[2026-06-19 04:58:06,026.026 INFO    ] Launching Daemon at Fri Jun 19 04:58:06 IST 2026
[2026-06-19 04:58:06,037.037 INFO    ] ================================================
[2026-06-19 04:58:06,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:58:06
[2026-06-19 04:58:07,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:58:07,526.526 INFO    ] Initializing speech engine...
[2026-06-19 04:58:07,541.541 INFO    ] 2026-06-19 04:58:07
[2026-06-19 04:58:07,805.805 INFO    ] 2026-06-19 04:58:07
[2026-06-19 04:58:07,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:58:08,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:58:08,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:58:08,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:58:08,193.193 INFO    ] time= 19/06/2026 04:58:08
[2026-06-19 04:58:08,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:58:08,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:58:08,372.372 INFO    ] No existing commands found in stream
[2026-06-19 04:58:13,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:58:13,404.404 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 04:58:17,212.212 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:58:17,215.215 INFO    ] Checking for system updates...
[2026-06-19 04:58:17,255.255 INFO    ] 200
[2026-06-19 04:58:17,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:17,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:58:17,320.320 INFO    ] No update needed
[2026-06-19 04:58:17,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 04:58:17,357.357 INFO    ] 200
[2026-06-19 04:58:17,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:17,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:58:17,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:58:17,444.444 INFO    ] No camera update needed
[2026-06-19 04:58:17,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:58:17,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:58:17,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:58:17,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:58:19,501.501 INFO    ] ================================================
[2026-06-19 04:58:19,517.517 INFO    ] Launching Daemon at Fri Jun 19 04:58:19 IST 2026
[2026-06-19 04:58:19,527.527 INFO    ] ================================================
[2026-06-19 04:58:20,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:58:20
[2026-06-19 04:58:20,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:58:20,949.949 INFO    ] Initializing speech engine...
[2026-06-19 04:58:20,961.961 INFO    ] 2026-06-19 04:58:20
[2026-06-19 04:58:21,211.211 INFO    ] 2026-06-19 04:58:21
[2026-06-19 04:58:21,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:58:21,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:58:21,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:58:21,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:58:21,586.586 INFO    ] time= 19/06/2026 04:58:21
[2026-06-19 04:58:21,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:58:21,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:58:21,661.661 INFO    ] No existing commands found in stream
[2026-06-19 04:58:26,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:58:26,677.677 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 04:58:28,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:58:28,762.762 INFO    ] Checking for system updates...
[2026-06-19 04:58:28,803.803 INFO    ] 200
[2026-06-19 04:58:28,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:28,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:58:28,867.867 INFO    ] No update needed
[2026-06-19 04:58:28,869.869 INFO    ] Checking for camera pi updates...
[2026-06-19 04:58:28,908.908 INFO    ] 200
[2026-06-19 04:58:28,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:28,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:58:29,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:58:29,012.012 INFO    ] No camera update needed
[2026-06-19 04:58:29,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:58:29,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:58:29,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:58:29,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:58:31,070.070 INFO    ] ================================================
[2026-06-19 04:58:31,086.086 INFO    ] Launching Daemon at Fri Jun 19 04:58:31 IST 2026
[2026-06-19 04:58:31,097.097 INFO    ] ================================================
[2026-06-19 04:58:31,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:58:31
[2026-06-19 04:58:32,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:58:32,656.656 INFO    ] Initializing speech engine...
[2026-06-19 04:58:32,663.663 INFO    ] 2026-06-19 04:58:32
[2026-06-19 04:58:32,964.964 INFO    ] 2026-06-19 04:58:32
[2026-06-19 04:58:33,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:58:33,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:58:33,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:58:33,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:58:33,375.375 INFO    ] time= 19/06/2026 04:58:33
[2026-06-19 04:58:33,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:58:33,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:58:33,535.535 INFO    ] No existing commands found in stream
[2026-06-19 04:58:38,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:58:38,563.563 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 04:58:41,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:58:41,166.166 INFO    ] Checking for system updates...
[2026-06-19 04:58:41,206.206 INFO    ] 200
[2026-06-19 04:58:41,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:41,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:58:41,264.264 INFO    ] No update needed
[2026-06-19 04:58:41,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 04:58:41,300.300 INFO    ] 200
[2026-06-19 04:58:41,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:41,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:58:41,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:58:41,400.400 INFO    ] No camera update needed
[2026-06-19 04:58:41,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:58:41,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:58:41,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:58:41,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:58:43,455.455 INFO    ] ================================================
[2026-06-19 04:58:43,472.472 INFO    ] Launching Daemon at Fri Jun 19 04:58:43 IST 2026
[2026-06-19 04:58:43,483.483 INFO    ] ================================================
[2026-06-19 04:58:44,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:58:44
[2026-06-19 04:58:44,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:58:44,901.901 INFO    ] Initializing speech engine...
[2026-06-19 04:58:44,909.909 INFO    ] 2026-06-19 04:58:44
[2026-06-19 04:58:45,160.160 INFO    ] 2026-06-19 04:58:45
[2026-06-19 04:58:45,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:58:45,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:58:45,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:58:45,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:58:45,534.534 INFO    ] time= 19/06/2026 04:58:45
[2026-06-19 04:58:45,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:58:45,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:58:45,714.714 INFO    ] No existing commands found in stream
[2026-06-19 04:58:50,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:58:50,747.747 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 04:58:52,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:58:52,096.096 INFO    ] Checking for system updates...
[2026-06-19 04:58:52,132.132 INFO    ] 200
[2026-06-19 04:58:52,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:52,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:58:52,197.197 INFO    ] No update needed
[2026-06-19 04:58:52,200.200 INFO    ] Checking for camera pi updates...
[2026-06-19 04:58:52,239.239 INFO    ] 200
[2026-06-19 04:58:52,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:58:52,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:58:52,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:58:52,434.434 INFO    ] No camera update needed
[2026-06-19 04:58:52,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:58:52,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:58:52,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:58:52,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:58:54,492.492 INFO    ] ================================================
[2026-06-19 04:58:54,508.508 INFO    ] Launching Daemon at Fri Jun 19 04:58:54 IST 2026
[2026-06-19 04:58:54,519.519 INFO    ] ================================================
[2026-06-19 04:58:55,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:58:55
[2026-06-19 04:58:55,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:58:55,946.946 INFO    ] Initializing speech engine...
[2026-06-19 04:58:55,964.964 INFO    ] 2026-06-19 04:58:55
[2026-06-19 04:58:56,212.212 INFO    ] 2026-06-19 04:58:56
[2026-06-19 04:58:56,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:58:56,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:58:56,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:58:56,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:58:56,558.558 INFO    ] time= 19/06/2026 04:58:56
[2026-06-19 04:58:56,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:58:56,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:58:56,670.670 INFO    ] No existing commands found in stream
[2026-06-19 04:59:01,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:59:01,688.688 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 04:59:05,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:59:05,076.076 INFO    ] Checking for system updates...
[2026-06-19 04:59:05,117.117 INFO    ] 200
[2026-06-19 04:59:05,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:05,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:59:05,182.182 INFO    ] No update needed
[2026-06-19 04:59:05,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 04:59:05,218.218 INFO    ] 200
[2026-06-19 04:59:05,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:05,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:59:05,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:59:05,315.315 INFO    ] No camera update needed
[2026-06-19 04:59:05,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:59:05,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:59:05,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:59:05,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:59:07,372.372 INFO    ] ================================================
[2026-06-19 04:59:07,388.388 INFO    ] Launching Daemon at Fri Jun 19 04:59:07 IST 2026
[2026-06-19 04:59:07,400.400 INFO    ] ================================================
[2026-06-19 04:59:07,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:59:07
[2026-06-19 04:59:08,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:59:08,811.811 INFO    ] Initializing speech engine...
[2026-06-19 04:59:08,827.827 INFO    ] 2026-06-19 04:59:08
[2026-06-19 04:59:09,088.088 INFO    ] 2026-06-19 04:59:09
[2026-06-19 04:59:09,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:59:09,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:59:09,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:59:09,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:59:09,480.480 INFO    ] time= 19/06/2026 04:59:09
[2026-06-19 04:59:09,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:59:09,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:59:09,588.588 INFO    ] No existing commands found in stream
[2026-06-19 04:59:14,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:59:14,602.602 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 04:59:16,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 04:59:16,775.775 INFO    ] Checking for system updates...
[2026-06-19 04:59:16,811.811 INFO    ] 200
[2026-06-19 04:59:16,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:16,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:59:16,882.882 INFO    ] No update needed
[2026-06-19 04:59:16,884.884 INFO    ] Checking for camera pi updates...
[2026-06-19 04:59:16,922.922 INFO    ] 200
[2026-06-19 04:59:16,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:16,975.975 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:59:17,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:59:17,018.018 INFO    ] No camera update needed
[2026-06-19 04:59:17,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:59:17,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:59:17,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:59:17,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:59:19,078.078 INFO    ] ================================================
[2026-06-19 04:59:19,094.094 INFO    ] Launching Daemon at Fri Jun 19 04:59:19 IST 2026
[2026-06-19 04:59:19,105.105 INFO    ] ================================================
[2026-06-19 04:59:19,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:59:19
[2026-06-19 04:59:20,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:59:20,517.517 INFO    ] Initializing speech engine...
[2026-06-19 04:59:20,536.536 INFO    ] 2026-06-19 04:59:20
[2026-06-19 04:59:20,786.786 INFO    ] 2026-06-19 04:59:20
[2026-06-19 04:59:20,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:59:21,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:59:21,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:59:21,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:59:21,164.164 INFO    ] time= 19/06/2026 04:59:21
[2026-06-19 04:59:21,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:59:21,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:59:21,329.329 INFO    ] No existing commands found in stream
[2026-06-19 04:59:26,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:59:26,362.362 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 04:59:28,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 04:59:28,077.077 INFO    ] Checking for system updates...
[2026-06-19 04:59:28,119.119 INFO    ] 200
[2026-06-19 04:59:28,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:28,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:59:28,192.192 INFO    ] No update needed
[2026-06-19 04:59:28,194.194 INFO    ] Checking for camera pi updates...
[2026-06-19 04:59:28,233.233 INFO    ] 200
[2026-06-19 04:59:28,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:28,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:59:28,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:59:28,325.325 INFO    ] No camera update needed
[2026-06-19 04:59:28,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:59:28,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:59:28,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:59:28,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:59:30,386.386 INFO    ] ================================================
[2026-06-19 04:59:30,402.402 INFO    ] Launching Daemon at Fri Jun 19 04:59:30 IST 2026
[2026-06-19 04:59:30,414.414 INFO    ] ================================================
[2026-06-19 04:59:30,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:59:30
[2026-06-19 04:59:31,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:59:31,907.907 INFO    ] Initializing speech engine...
[2026-06-19 04:59:31,911.911 INFO    ] 2026-06-19 04:59:31
[2026-06-19 04:59:32,185.185 INFO    ] 2026-06-19 04:59:32
[2026-06-19 04:59:32,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:59:32,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:59:32,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:59:32,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:59:32,598.598 INFO    ] time= 19/06/2026 04:59:32
[2026-06-19 04:59:32,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:59:32,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:59:32,700.700 INFO    ] No existing commands found in stream
[2026-06-19 04:59:37,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:59:37,713.713 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 04:59:39,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 04:59:39,460.460 INFO    ] Checking for system updates...
[2026-06-19 04:59:39,500.500 INFO    ] 200
[2026-06-19 04:59:39,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:39,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:59:39,559.559 INFO    ] No update needed
[2026-06-19 04:59:39,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 04:59:39,596.596 INFO    ] 200
[2026-06-19 04:59:39,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:39,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:59:39,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 04:59:39,685.685 INFO    ] No camera update needed
[2026-06-19 04:59:39,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:59:39,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:59:39,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:59:39,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:59:41,741.741 INFO    ] ================================================
[2026-06-19 04:59:41,756.756 INFO    ] Launching Daemon at Fri Jun 19 04:59:41 IST 2026
[2026-06-19 04:59:41,768.768 INFO    ] ================================================
[2026-06-19 04:59:42,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:59:42
[2026-06-19 04:59:42,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:59:43,202.202 INFO    ] Initializing speech engine...
[2026-06-19 04:59:43,210.210 INFO    ] 2026-06-19 04:59:43
[2026-06-19 04:59:43,461.461 INFO    ] 2026-06-19 04:59:43
[2026-06-19 04:59:43,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:59:43,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:59:43,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:59:43,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:59:43,949.949 INFO    ] time= 19/06/2026 04:59:43
[2026-06-19 04:59:44,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:59:44,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:59:44,094.094 INFO    ] No existing commands found in stream
[2026-06-19 04:59:49,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 04:59:49,109.109 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 04:59:52,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 04:59:52,098.098 INFO    ] Checking for system updates...
[2026-06-19 04:59:52,133.133 INFO    ] 200
[2026-06-19 04:59:52,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:52,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:59:52,191.191 INFO    ] No update needed
[2026-06-19 04:59:52,193.193 INFO    ] Checking for camera pi updates...
[2026-06-19 04:59:52,227.227 INFO    ] 200
[2026-06-19 04:59:52,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 04:59:52,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 04:59:52,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 04:59:52,312.312 INFO    ] No camera update needed
[2026-06-19 04:59:52,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-19 04:59:52,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 04:59:52,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 04:59:52,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 04:59:54,368.368 INFO    ] ================================================
[2026-06-19 04:59:54,383.383 INFO    ] Launching Daemon at Fri Jun 19 04:59:54 IST 2026
[2026-06-19 04:59:54,394.394 INFO    ] ================================================
[2026-06-19 04:59:54,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 04:59:54
[2026-06-19 04:59:55,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 04:59:55,822.822 INFO    ] Initializing speech engine...
[2026-06-19 04:59:55,831.831 INFO    ] 2026-06-19 04:59:55
[2026-06-19 04:59:56,085.085 INFO    ] 2026-06-19 04:59:56
[2026-06-19 04:59:56,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 04:59:56,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 04:59:56,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 04:59:56,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 04:59:56,427.427 INFO    ] time= 19/06/2026 04:59:56
[2026-06-19 04:59:56,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 04:59:56,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-19 04:59:56,542.542 INFO    ] No existing commands found in stream
[2026-06-19 05:00:01,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:00:01,562.562 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 05:00:03,397.397 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:00:03,402.402 INFO    ] Checking for system updates...
[2026-06-19 05:00:03,572.572 INFO    ] 200
[2026-06-19 05:00:03,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:03,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:00:03,907.907 INFO    ] No update needed
[2026-06-19 05:00:03,911.911 INFO    ] Checking for camera pi updates...
[2026-06-19 05:00:04,092.092 INFO    ] 200
[2026-06-19 05:00:04,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:04,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:00:04,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:00:04,390.390 INFO    ] No camera update needed
[2026-06-19 05:00:04,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:00:04,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:00:04,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:00:04,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:00:06,577.577 INFO    ] ================================================
[2026-06-19 05:00:06,593.593 INFO    ] Launching Daemon at Fri Jun 19 05:00:06 IST 2026
[2026-06-19 05:00:06,604.604 INFO    ] ================================================
[2026-06-19 05:00:07,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:00:07
[2026-06-19 05:00:07,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:00:08,054.054 INFO    ] Initializing speech engine...
[2026-06-19 05:00:08,067.067 INFO    ] 2026-06-19 05:00:08
[2026-06-19 05:00:08,333.333 INFO    ] 2026-06-19 05:00:08
[2026-06-19 05:00:08,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:00:08,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:00:08,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:00:08,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:00:08,776.776 INFO    ] time= 19/06/2026 05:00:08
[2026-06-19 05:00:08,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:00:08,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:00:08,950.950 INFO    ] No existing commands found in stream
[2026-06-19 05:00:13,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:00:13,965.965 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 05:00:17,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:00:17,581.581 INFO    ] Checking for system updates...
[2026-06-19 05:00:17,617.617 INFO    ] 200
[2026-06-19 05:00:17,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:17,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:00:17,676.676 INFO    ] No update needed
[2026-06-19 05:00:17,678.678 INFO    ] Checking for camera pi updates...
[2026-06-19 05:00:17,716.716 INFO    ] 200
[2026-06-19 05:00:17,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:17,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:00:17,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:00:17,812.812 INFO    ] No camera update needed
[2026-06-19 05:00:17,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:00:17,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:00:17,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:00:17,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:00:19,872.872 INFO    ] ================================================
[2026-06-19 05:00:19,888.888 INFO    ] Launching Daemon at Fri Jun 19 05:00:19 IST 2026
[2026-06-19 05:00:19,899.899 INFO    ] ================================================
[2026-06-19 05:00:20,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:00:20
[2026-06-19 05:00:21,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:00:21,323.323 INFO    ] Initializing speech engine...
[2026-06-19 05:00:21,335.335 INFO    ] 2026-06-19 05:00:21
[2026-06-19 05:00:21,585.585 INFO    ] 2026-06-19 05:00:21
[2026-06-19 05:00:21,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:00:21,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:00:21,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:00:21,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:00:21,963.963 INFO    ] time= 19/06/2026 05:00:21
[2026-06-19 05:00:21,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:00:21,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:00:22,041.041 INFO    ] No existing commands found in stream
[2026-06-19 05:00:27,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:00:27,056.056 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 05:00:28,558.558 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:00:28,560.560 INFO    ] Checking for system updates...
[2026-06-19 05:00:28,596.596 INFO    ] 200
[2026-06-19 05:00:28,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:28,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:00:28,653.653 INFO    ] No update needed
[2026-06-19 05:00:28,656.656 INFO    ] Checking for camera pi updates...
[2026-06-19 05:00:28,690.690 INFO    ] 200
[2026-06-19 05:00:28,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:28,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:00:28,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:00:28,774.774 INFO    ] No camera update needed
[2026-06-19 05:00:28,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:00:28,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:00:28,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:00:28,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:00:30,832.832 INFO    ] ================================================
[2026-06-19 05:00:30,848.848 INFO    ] Launching Daemon at Fri Jun 19 05:00:30 IST 2026
[2026-06-19 05:00:30,861.861 INFO    ] ================================================
[2026-06-19 05:00:31,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:00:31
[2026-06-19 05:00:32,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:00:32,341.341 INFO    ] Initializing speech engine...
[2026-06-19 05:00:32,360.360 INFO    ] 2026-06-19 05:00:32
[2026-06-19 05:00:32,641.641 INFO    ] 2026-06-19 05:00:32
[2026-06-19 05:00:32,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:00:32,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:00:32,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:00:33,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:00:33,132.132 INFO    ] time= 19/06/2026 05:00:33
[2026-06-19 05:00:33,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:00:33,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:00:33,294.294 INFO    ] No existing commands found in stream
[2026-06-19 05:00:38,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:00:38,311.311 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 05:00:42,364.364 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:00:42,367.367 INFO    ] Checking for system updates...
[2026-06-19 05:00:42,403.403 INFO    ] 200
[2026-06-19 05:00:42,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:42,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:00:42,461.461 INFO    ] No update needed
[2026-06-19 05:00:42,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 05:00:42,497.497 INFO    ] 200
[2026-06-19 05:00:42,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:42,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:00:42,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:00:42,597.597 INFO    ] No camera update needed
[2026-06-19 05:00:42,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:00:42,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:00:42,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:00:42,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:00:44,653.653 INFO    ] ================================================
[2026-06-19 05:00:44,669.669 INFO    ] Launching Daemon at Fri Jun 19 05:00:44 IST 2026
[2026-06-19 05:00:44,680.680 INFO    ] ================================================
[2026-06-19 05:00:45,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:00:45
[2026-06-19 05:00:45,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:00:46,095.095 INFO    ] Initializing speech engine...
[2026-06-19 05:00:46,118.118 INFO    ] 2026-06-19 05:00:46
[2026-06-19 05:00:46,398.398 INFO    ] 2026-06-19 05:00:46
[2026-06-19 05:00:46,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:00:46,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:00:46,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:00:46,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:00:46,802.802 INFO    ] time= 19/06/2026 05:00:46
[2026-06-19 05:00:46,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:00:46,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:00:46,955.955 INFO    ] No existing commands found in stream
[2026-06-19 05:00:51,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:00:51,983.983 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 05:00:54,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:00:54,762.762 INFO    ] Checking for system updates...
[2026-06-19 05:00:54,798.798 INFO    ] 200
[2026-06-19 05:00:54,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:54,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:00:54,862.862 INFO    ] No update needed
[2026-06-19 05:00:54,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 05:00:54,899.899 INFO    ] 200
[2026-06-19 05:00:54,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:00:54,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:00:55,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:00:55,086.086 INFO    ] No camera update needed
[2026-06-19 05:00:55,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:00:55,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:00:55,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:00:55,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:00:57,142.142 INFO    ] ================================================
[2026-06-19 05:00:57,158.158 INFO    ] Launching Daemon at Fri Jun 19 05:00:57 IST 2026
[2026-06-19 05:00:57,170.170 INFO    ] ================================================
[2026-06-19 05:00:57,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:00:57
[2026-06-19 05:00:58,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:00:58,652.652 INFO    ] Initializing speech engine...
[2026-06-19 05:00:58,662.662 INFO    ] 2026-06-19 05:00:58
[2026-06-19 05:00:58,919.919 INFO    ] 2026-06-19 05:00:58
[2026-06-19 05:00:58,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:00:59,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:00:59,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:00:59,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:00:59,270.270 INFO    ] time= 19/06/2026 05:00:59
[2026-06-19 05:00:59,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:00:59,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:00:59,351.351 INFO    ] No existing commands found in stream
[2026-06-19 05:01:04,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:01:04,366.366 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 05:01:07,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:01:07,891.891 INFO    ] Checking for system updates...
[2026-06-19 05:01:07,927.927 INFO    ] 200
[2026-06-19 05:01:07,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:07,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:01:07,984.984 INFO    ] No update needed
[2026-06-19 05:01:07,987.987 INFO    ] Checking for camera pi updates...
[2026-06-19 05:01:08,024.024 INFO    ] 200
[2026-06-19 05:01:08,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:08,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:01:08,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:01:08,121.121 INFO    ] No camera update needed
[2026-06-19 05:01:08,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:01:08,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:01:08,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:01:08,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:01:10,177.177 INFO    ] ================================================
[2026-06-19 05:01:10,193.193 INFO    ] Launching Daemon at Fri Jun 19 05:01:10 IST 2026
[2026-06-19 05:01:10,203.203 INFO    ] ================================================
[2026-06-19 05:01:10,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:01:10
[2026-06-19 05:01:11,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:01:11,623.623 INFO    ] Initializing speech engine...
[2026-06-19 05:01:11,632.632 INFO    ] 2026-06-19 05:01:11
[2026-06-19 05:01:11,882.882 INFO    ] 2026-06-19 05:01:11
[2026-06-19 05:01:11,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:01:12,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:01:12,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:01:12,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:01:12,259.259 INFO    ] time= 19/06/2026 05:01:12
[2026-06-19 05:01:12,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:01:12,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:01:12,444.444 INFO    ] No existing commands found in stream
[2026-06-19 05:01:17,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:01:17,472.472 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-19 05:01:19,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:01:19,215.215 INFO    ] Checking for system updates...
[2026-06-19 05:01:19,255.255 INFO    ] 200
[2026-06-19 05:01:19,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:19,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:01:19,312.312 INFO    ] No update needed
[2026-06-19 05:01:19,314.314 INFO    ] Checking for camera pi updates...
[2026-06-19 05:01:19,351.351 INFO    ] 200
[2026-06-19 05:01:19,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:19,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:01:19,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:01:19,447.447 INFO    ] No camera update needed
[2026-06-19 05:01:19,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:01:19,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:01:19,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:01:19,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:01:21,503.503 INFO    ] ================================================
[2026-06-19 05:01:21,518.518 INFO    ] Launching Daemon at Fri Jun 19 05:01:21 IST 2026
[2026-06-19 05:01:21,529.529 INFO    ] ================================================
[2026-06-19 05:01:22,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:01:22
[2026-06-19 05:01:22,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:01:22,992.992 INFO    ] Initializing speech engine...
[2026-06-19 05:01:22,995.995 INFO    ] 2026-06-19 05:01:22
[2026-06-19 05:01:23,244.244 INFO    ] 2026-06-19 05:01:23
[2026-06-19 05:01:23,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:01:23,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:01:23,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:01:23,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:01:23,721.721 INFO    ] time= 19/06/2026 05:01:23
[2026-06-19 05:01:23,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:01:23,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:01:23,877.877 INFO    ] No existing commands found in stream
[2026-06-19 05:01:28,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:01:28,891.891 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 05:01:32,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:01:32,299.299 INFO    ] Checking for system updates...
[2026-06-19 05:01:32,346.346 INFO    ] 200
[2026-06-19 05:01:32,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:32,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:01:32,416.416 INFO    ] No update needed
[2026-06-19 05:01:32,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 05:01:32,466.466 INFO    ] 200
[2026-06-19 05:01:32,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:32,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:01:32,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:01:32,542.542 INFO    ] No camera update needed
[2026-06-19 05:01:32,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:01:32,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:01:32,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:01:32,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:01:34,598.598 INFO    ] ================================================
[2026-06-19 05:01:34,619.619 INFO    ] Launching Daemon at Fri Jun 19 05:01:34 IST 2026
[2026-06-19 05:01:34,630.630 INFO    ] ================================================
[2026-06-19 05:01:35,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:01:35
[2026-06-19 05:01:35,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:01:36,092.092 INFO    ] Initializing speech engine...
[2026-06-19 05:01:36,102.102 INFO    ] 2026-06-19 05:01:36
[2026-06-19 05:01:36,364.364 INFO    ] 2026-06-19 05:01:36
[2026-06-19 05:01:36,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:01:36,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:01:36,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:01:36,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:01:36,852.852 INFO    ] time= 19/06/2026 05:01:36
[2026-06-19 05:01:36,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:01:36,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:01:37,030.030 INFO    ] No existing commands found in stream
[2026-06-19 05:01:42,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:01:42,060.060 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 05:01:45,989.989 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:01:45,992.992 INFO    ] Checking for system updates...
[2026-06-19 05:01:46,028.028 INFO    ] 200
[2026-06-19 05:01:46,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:46,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:01:46,092.092 INFO    ] No update needed
[2026-06-19 05:01:46,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 05:01:46,128.128 INFO    ] 200
[2026-06-19 05:01:46,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:46,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:01:46,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:01:46,202.202 INFO    ] No camera update needed
[2026-06-19 05:01:46,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:01:46,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:01:46,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:01:46,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:01:48,259.259 INFO    ] ================================================
[2026-06-19 05:01:48,274.274 INFO    ] Launching Daemon at Fri Jun 19 05:01:48 IST 2026
[2026-06-19 05:01:48,284.284 INFO    ] ================================================
[2026-06-19 05:01:48,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:01:48
[2026-06-19 05:01:49,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:01:49,738.738 INFO    ] Initializing speech engine...
[2026-06-19 05:01:49,747.747 INFO    ] 2026-06-19 05:01:49
[2026-06-19 05:01:49,996.996 INFO    ] 2026-06-19 05:01:49
[2026-06-19 05:01:50,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:01:50,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:01:50,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:01:50,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:01:50,445.445 INFO    ] time= 19/06/2026 05:01:50
[2026-06-19 05:01:50,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:01:50,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:01:50,626.626 INFO    ] No existing commands found in stream
[2026-06-19 05:01:55,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:01:55,666.666 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 05:01:57,590.590 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:01:57,592.592 INFO    ] Checking for system updates...
[2026-06-19 05:01:57,631.631 INFO    ] 200
[2026-06-19 05:01:57,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:57,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:01:57,693.693 INFO    ] No update needed
[2026-06-19 05:01:57,696.696 INFO    ] Checking for camera pi updates...
[2026-06-19 05:01:57,733.733 INFO    ] 200
[2026-06-19 05:01:57,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:01:57,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:01:57,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:01:57,822.822 INFO    ] No camera update needed
[2026-06-19 05:01:57,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:01:57,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:01:57,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:01:57,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:01:59,884.884 INFO    ] ================================================
[2026-06-19 05:01:59,899.899 INFO    ] Launching Daemon at Fri Jun 19 05:01:59 IST 2026
[2026-06-19 05:01:59,910.910 INFO    ] ================================================
[2026-06-19 05:02:00,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:02:00
[2026-06-19 05:02:01,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:02:01,618.618 INFO    ] Initializing speech engine...
[2026-06-19 05:02:01,624.624 INFO    ] 2026-06-19 05:02:01
[2026-06-19 05:02:02,012.012 INFO    ] 2026-06-19 05:02:01
[2026-06-19 05:02:02,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:02:02,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:02:02,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:02:02,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:02:02,505.505 INFO    ] time= 19/06/2026 05:02:02
[2026-06-19 05:02:02,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:02:02,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:02:02,660.660 INFO    ] No existing commands found in stream
[2026-06-19 05:02:07,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:02:07,686.686 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 05:02:08,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:02:08,285.285 INFO    ] Checking for system updates...
[2026-06-19 05:02:08,322.322 INFO    ] 200
[2026-06-19 05:02:08,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:08,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:02:08,381.381 INFO    ] No update needed
[2026-06-19 05:02:08,384.384 INFO    ] Checking for camera pi updates...
[2026-06-19 05:02:08,421.421 INFO    ] 200
[2026-06-19 05:02:10,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:10,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:02:10,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:02:10,216.216 INFO    ] No camera update needed
[2026-06-19 05:02:10,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:02:10,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:02:10,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:02:10,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:02:12,271.271 INFO    ] ================================================
[2026-06-19 05:02:12,287.287 INFO    ] Launching Daemon at Fri Jun 19 05:02:12 IST 2026
[2026-06-19 05:02:12,297.297 INFO    ] ================================================
[2026-06-19 05:02:12,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:02:12
[2026-06-19 05:02:13,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:02:13,717.717 INFO    ] Initializing speech engine...
[2026-06-19 05:02:13,730.730 INFO    ] 2026-06-19 05:02:13
[2026-06-19 05:02:13,980.980 INFO    ] 2026-06-19 05:02:13
[2026-06-19 05:02:14,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:02:14,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:02:14,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:02:14,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:02:14,360.360 INFO    ] time= 19/06/2026 05:02:14
[2026-06-19 05:02:14,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:02:14,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:02:14,526.526 INFO    ] No existing commands found in stream
[2026-06-19 05:02:19,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:02:19,554.554 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 05:02:21,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:02:21,164.164 INFO    ] Checking for system updates...
[2026-06-19 05:02:21,203.203 INFO    ] 200
[2026-06-19 05:02:21,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:21,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:02:21,260.260 INFO    ] No update needed
[2026-06-19 05:02:21,263.263 INFO    ] Checking for camera pi updates...
[2026-06-19 05:02:21,296.296 INFO    ] 200
[2026-06-19 05:02:21,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:21,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:02:21,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:02:21,372.372 INFO    ] No camera update needed
[2026-06-19 05:02:21,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:02:21,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:02:21,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:02:21,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:02:23,426.426 INFO    ] ================================================
[2026-06-19 05:02:23,441.441 INFO    ] Launching Daemon at Fri Jun 19 05:02:23 IST 2026
[2026-06-19 05:02:23,452.452 INFO    ] ================================================
[2026-06-19 05:02:24,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:02:24
[2026-06-19 05:02:24,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:02:24,918.918 INFO    ] Initializing speech engine...
[2026-06-19 05:02:24,937.937 INFO    ] 2026-06-19 05:02:24
[2026-06-19 05:02:25,198.198 INFO    ] 2026-06-19 05:02:25
[2026-06-19 05:02:25,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:02:25,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:02:25,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:02:25,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:02:25,574.574 INFO    ] time= 19/06/2026 05:02:25
[2026-06-19 05:02:25,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:02:25,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:02:25,668.668 INFO    ] No existing commands found in stream
[2026-06-19 05:02:30,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:02:30,707.707 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 05:02:31,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:02:31,641.641 INFO    ] Checking for system updates...
[2026-06-19 05:02:31,687.687 INFO    ] 200
[2026-06-19 05:02:31,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:31,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:02:31,772.772 INFO    ] No update needed
[2026-06-19 05:02:31,776.776 INFO    ] Checking for camera pi updates...
[2026-06-19 05:02:31,814.814 INFO    ] 200
[2026-06-19 05:02:31,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:31,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:02:31,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:02:31,909.909 INFO    ] No camera update needed
[2026-06-19 05:02:31,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:02:31,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:02:31,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:02:31,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:02:33,972.972 INFO    ] ================================================
[2026-06-19 05:02:33,987.987 INFO    ] Launching Daemon at Fri Jun 19 05:02:33 IST 2026
[2026-06-19 05:02:34,998.998 INFO    ] ================================================
[2026-06-19 05:02:34,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:02:34
[2026-06-19 05:02:35,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:02:35,622.622 INFO    ] Initializing speech engine...
[2026-06-19 05:02:35,630.630 INFO    ] 2026-06-19 05:02:35
[2026-06-19 05:02:35,899.899 INFO    ] 2026-06-19 05:02:35
[2026-06-19 05:02:35,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:02:36,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:02:36,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:02:36,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:02:36,399.399 INFO    ] time= 19/06/2026 05:02:36
[2026-06-19 05:02:36,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:02:36,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:02:36,598.598 INFO    ] No existing commands found in stream
[2026-06-19 05:02:41,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:02:41,634.634 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 05:02:44,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:02:44,423.423 INFO    ] Checking for system updates...
[2026-06-19 05:02:44,463.463 INFO    ] 200
[2026-06-19 05:02:44,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:44,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:02:44,522.522 INFO    ] No update needed
[2026-06-19 05:02:44,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 05:02:44,558.558 INFO    ] 200
[2026-06-19 05:02:44,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:44,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:02:44,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:02:44,656.656 INFO    ] No camera update needed
[2026-06-19 05:02:44,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:02:44,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:02:44,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:02:44,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:02:46,710.710 INFO    ] ================================================
[2026-06-19 05:02:46,725.725 INFO    ] Launching Daemon at Fri Jun 19 05:02:46 IST 2026
[2026-06-19 05:02:46,736.736 INFO    ] ================================================
[2026-06-19 05:02:47,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:02:47
[2026-06-19 05:02:47,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:02:48,206.206 INFO    ] Initializing speech engine...
[2026-06-19 05:02:48,215.215 INFO    ] 2026-06-19 05:02:48
[2026-06-19 05:02:48,474.474 INFO    ] 2026-06-19 05:02:48
[2026-06-19 05:02:48,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:02:48,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:02:48,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:02:48,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:02:48,941.941 INFO    ] time= 19/06/2026 05:02:48
[2026-06-19 05:02:48,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:02:49,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:02:49,086.086 INFO    ] No existing commands found in stream
[2026-06-19 05:02:54,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:02:54,100.100 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 05:02:57,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:02:57,796.796 INFO    ] Checking for system updates...
[2026-06-19 05:02:57,832.832 INFO    ] 200
[2026-06-19 05:02:57,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:57,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:02:57,890.890 INFO    ] No update needed
[2026-06-19 05:02:57,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 05:02:57,931.931 INFO    ] 200
[2026-06-19 05:02:57,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:02:57,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:02:58,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:02:58,125.125 INFO    ] No camera update needed
[2026-06-19 05:02:58,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:02:58,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:02:58,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:02:58,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:03:00,180.180 INFO    ] ================================================
[2026-06-19 05:03:00,196.196 INFO    ] Launching Daemon at Fri Jun 19 05:03:00 IST 2026
[2026-06-19 05:03:00,207.207 INFO    ] ================================================
[2026-06-19 05:03:00,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:03:00
[2026-06-19 05:03:01,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:03:01,638.638 INFO    ] Initializing speech engine...
[2026-06-19 05:03:01,650.650 INFO    ] 2026-06-19 05:03:01
[2026-06-19 05:03:01,938.938 INFO    ] 2026-06-19 05:03:01
[2026-06-19 05:03:01,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:03:02,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:03:02,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:03:02,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:03:02,298.298 INFO    ] time= 19/06/2026 05:03:02
[2026-06-19 05:03:02,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:03:02,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:03:02,459.459 INFO    ] No existing commands found in stream
[2026-06-19 05:03:07,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:03:07,473.473 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 05:03:08,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:03:08,461.461 INFO    ] Checking for system updates...
[2026-06-19 05:03:08,502.502 INFO    ] 200
[2026-06-19 05:03:08,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:08,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:03:08,566.566 INFO    ] No update needed
[2026-06-19 05:03:08,569.569 INFO    ] Checking for camera pi updates...
[2026-06-19 05:03:08,607.607 INFO    ] 200
[2026-06-19 05:03:08,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:08,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:03:08,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:03:08,679.679 INFO    ] No camera update needed
[2026-06-19 05:03:08,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:03:08,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:03:08,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:03:08,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:03:10,734.734 INFO    ] ================================================
[2026-06-19 05:03:10,749.749 INFO    ] Launching Daemon at Fri Jun 19 05:03:10 IST 2026
[2026-06-19 05:03:10,760.760 INFO    ] ================================================
[2026-06-19 05:03:11,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:03:11
[2026-06-19 05:03:12,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:03:12,403.403 INFO    ] Initializing speech engine...
[2026-06-19 05:03:12,412.412 INFO    ] 2026-06-19 05:03:12
[2026-06-19 05:03:12,671.671 INFO    ] 2026-06-19 05:03:12
[2026-06-19 05:03:12,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:03:12,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:03:12,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:03:13,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:03:13,135.135 INFO    ] time= 19/06/2026 05:03:13
[2026-06-19 05:03:13,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:03:13,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:03:13,285.285 INFO    ] No existing commands found in stream
[2026-06-19 05:03:18,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:03:18,327.327 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 05:03:19,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:03:19,353.353 INFO    ] Checking for system updates...
[2026-06-19 05:03:19,389.389 INFO    ] 200
[2026-06-19 05:03:19,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:19,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:03:19,447.447 INFO    ] No update needed
[2026-06-19 05:03:19,450.450 INFO    ] Checking for camera pi updates...
[2026-06-19 05:03:19,488.488 INFO    ] 200
[2026-06-19 05:03:19,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:19,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:03:19,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:03:19,578.578 INFO    ] No camera update needed
[2026-06-19 05:03:19,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:03:19,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:03:19,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:03:19,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:03:21,633.633 INFO    ] ================================================
[2026-06-19 05:03:21,648.648 INFO    ] Launching Daemon at Fri Jun 19 05:03:21 IST 2026
[2026-06-19 05:03:21,659.659 INFO    ] ================================================
[2026-06-19 05:03:22,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:03:22
[2026-06-19 05:03:22,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:03:23,288.288 INFO    ] Initializing speech engine...
[2026-06-19 05:03:23,311.311 INFO    ] 2026-06-19 05:03:23
[2026-06-19 05:03:23,567.567 INFO    ] 2026-06-19 05:03:23
[2026-06-19 05:03:23,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:03:23,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:03:23,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:03:23,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:03:23,998.998 INFO    ] time= 19/06/2026 05:03:23
[2026-06-19 05:03:24,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:03:24,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:03:24,179.179 INFO    ] No existing commands found in stream
[2026-06-19 05:03:29,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:03:29,193.193 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 05:03:32,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:03:32,181.181 INFO    ] Checking for system updates...
[2026-06-19 05:03:32,220.220 INFO    ] 200
[2026-06-19 05:03:32,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:32,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:03:32,283.283 INFO    ] No update needed
[2026-06-19 05:03:32,286.286 INFO    ] Checking for camera pi updates...
[2026-06-19 05:03:32,327.327 INFO    ] 200
[2026-06-19 05:03:32,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:32,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:03:32,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:03:32,427.427 INFO    ] No camera update needed
[2026-06-19 05:03:32,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:03:32,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:03:32,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:03:32,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:03:34,488.488 INFO    ] ================================================
[2026-06-19 05:03:34,503.503 INFO    ] Launching Daemon at Fri Jun 19 05:03:34 IST 2026
[2026-06-19 05:03:34,514.514 INFO    ] ================================================
[2026-06-19 05:03:35,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:03:35
[2026-06-19 05:03:35,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:03:35,977.977 INFO    ] Initializing speech engine...
[2026-06-19 05:03:35,986.986 INFO    ] 2026-06-19 05:03:35
[2026-06-19 05:03:36,268.268 INFO    ] 2026-06-19 05:03:36
[2026-06-19 05:03:36,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:03:36,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:03:36,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:03:36,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:03:36,665.665 INFO    ] time= 19/06/2026 05:03:36
[2026-06-19 05:03:36,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:03:36,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:03:36,845.845 INFO    ] No existing commands found in stream
[2026-06-19 05:03:41,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:03:41,880.880 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 05:03:42,695.695 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:03:42,698.698 INFO    ] Checking for system updates...
[2026-06-19 05:03:42,736.736 INFO    ] 200
[2026-06-19 05:03:42,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:42,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:03:42,797.797 INFO    ] No update needed
[2026-06-19 05:03:42,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 05:03:42,837.837 INFO    ] 200
[2026-06-19 05:03:42,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:42,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:03:42,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:03:42,934.934 INFO    ] No camera update needed
[2026-06-19 05:03:42,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:03:42,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:03:42,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:03:42,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:03:44,990.990 INFO    ] ================================================
[2026-06-19 05:03:45,005.005 INFO    ] Launching Daemon at Fri Jun 19 05:03:44 IST 2026
[2026-06-19 05:03:45,016.016 INFO    ] ================================================
[2026-06-19 05:03:45,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:03:45
[2026-06-19 05:03:46,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:03:46,425.425 INFO    ] Initializing speech engine...
[2026-06-19 05:03:46,434.434 INFO    ] 2026-06-19 05:03:46
[2026-06-19 05:03:46,724.724 INFO    ] 2026-06-19 05:03:46
[2026-06-19 05:03:46,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:03:46,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:03:46,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:03:47,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:03:47,101.101 INFO    ] time= 19/06/2026 05:03:47
[2026-06-19 05:03:47,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:03:47,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:03:47,223.223 INFO    ] No existing commands found in stream
[2026-06-19 05:03:52,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:03:52,236.236 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 05:03:53,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:03:53,570.570 INFO    ] Checking for system updates...
[2026-06-19 05:03:53,607.607 INFO    ] 200
[2026-06-19 05:03:53,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:53,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:03:53,668.668 INFO    ] No update needed
[2026-06-19 05:03:53,671.671 INFO    ] Checking for camera pi updates...
[2026-06-19 05:03:53,704.704 INFO    ] 200
[2026-06-19 05:03:53,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:03:53,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:03:53,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:03:53,803.803 INFO    ] No camera update needed
[2026-06-19 05:03:53,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:03:53,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:03:53,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:03:53,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:03:55,858.858 INFO    ] ================================================
[2026-06-19 05:03:55,873.873 INFO    ] Launching Daemon at Fri Jun 19 05:03:55 IST 2026
[2026-06-19 05:03:55,883.883 INFO    ] ================================================
[2026-06-19 05:03:56,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:03:56
[2026-06-19 05:03:57,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:03:57,301.301 INFO    ] Initializing speech engine...
[2026-06-19 05:03:57,320.320 INFO    ] 2026-06-19 05:03:57
[2026-06-19 05:03:57,573.573 INFO    ] 2026-06-19 05:03:57
[2026-06-19 05:03:57,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:03:57,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:03:57,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:03:57,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:03:58,038.038 INFO    ] time= 19/06/2026 05:03:57
[2026-06-19 05:03:58,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:03:58,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:03:58,185.185 INFO    ] No existing commands found in stream
[2026-06-19 05:04:03,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:04:03,199.199 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 05:04:05,805.805 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:04:05,808.808 INFO    ] Checking for system updates...
[2026-06-19 05:04:05,844.844 INFO    ] 200
[2026-06-19 05:04:05,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:05,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:04:05,906.906 INFO    ] No update needed
[2026-06-19 05:04:05,908.908 INFO    ] Checking for camera pi updates...
[2026-06-19 05:04:05,944.944 INFO    ] 200
[2026-06-19 05:04:05,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:05,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:04:06,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:04:06,031.031 INFO    ] No camera update needed
[2026-06-19 05:04:06,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:04:06,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:04:06,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:04:06,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:04:08,087.087 INFO    ] ================================================
[2026-06-19 05:04:08,103.103 INFO    ] Launching Daemon at Fri Jun 19 05:04:08 IST 2026
[2026-06-19 05:04:08,113.113 INFO    ] ================================================
[2026-06-19 05:04:08,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:04:08
[2026-06-19 05:04:09,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:04:09,519.519 INFO    ] Initializing speech engine...
[2026-06-19 05:04:09,525.525 INFO    ] 2026-06-19 05:04:09
[2026-06-19 05:04:09,811.811 INFO    ] 2026-06-19 05:04:09
[2026-06-19 05:04:09,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:04:10,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:04:10,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:04:10,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:04:10,207.207 INFO    ] time= 19/06/2026 05:04:10
[2026-06-19 05:04:10,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:04:10,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:04:10,364.364 INFO    ] No existing commands found in stream
[2026-06-19 05:04:15,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:04:15,398.398 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 05:04:19,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:04:19,115.115 INFO    ] Checking for system updates...
[2026-06-19 05:04:19,151.151 INFO    ] 200
[2026-06-19 05:04:19,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:19,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:04:19,208.208 INFO    ] No update needed
[2026-06-19 05:04:19,210.210 INFO    ] Checking for camera pi updates...
[2026-06-19 05:04:19,247.247 INFO    ] 200
[2026-06-19 05:04:19,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:19,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:04:19,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:04:19,332.332 INFO    ] No camera update needed
[2026-06-19 05:04:19,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:04:19,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:04:19,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:04:19,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:04:21,388.388 INFO    ] ================================================
[2026-06-19 05:04:21,403.403 INFO    ] Launching Daemon at Fri Jun 19 05:04:21 IST 2026
[2026-06-19 05:04:21,413.413 INFO    ] ================================================
[2026-06-19 05:04:21,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:04:21
[2026-06-19 05:04:22,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:04:22,851.851 INFO    ] Initializing speech engine...
[2026-06-19 05:04:22,862.862 INFO    ] 2026-06-19 05:04:22
[2026-06-19 05:04:23,106.106 INFO    ] 2026-06-19 05:04:23
[2026-06-19 05:04:23,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:04:23,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:04:23,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:04:23,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:04:23,540.540 INFO    ] time= 19/06/2026 05:04:23
[2026-06-19 05:04:23,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:04:23,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:04:23,723.723 INFO    ] No existing commands found in stream
[2026-06-19 05:04:28,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:04:28,737.737 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 05:04:31,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:04:31,599.599 INFO    ] Checking for system updates...
[2026-06-19 05:04:31,635.635 INFO    ] 200
[2026-06-19 05:04:31,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:31,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:04:31,693.693 INFO    ] No update needed
[2026-06-19 05:04:31,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 05:04:31,733.733 INFO    ] 200
[2026-06-19 05:04:31,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:31,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:04:31,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:04:31,818.818 INFO    ] No camera update needed
[2026-06-19 05:04:31,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:04:31,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:04:31,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:04:31,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:04:33,874.874 INFO    ] ================================================
[2026-06-19 05:04:33,889.889 INFO    ] Launching Daemon at Fri Jun 19 05:04:33 IST 2026
[2026-06-19 05:04:33,900.900 INFO    ] ================================================
[2026-06-19 05:04:34,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:04:34
[2026-06-19 05:04:35,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:04:35,560.560 INFO    ] Initializing speech engine...
[2026-06-19 05:04:35,566.566 INFO    ] 2026-06-19 05:04:35
[2026-06-19 05:04:35,851.851 INFO    ] 2026-06-19 05:04:35
[2026-06-19 05:04:35,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:04:36,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:04:36,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:04:36,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:04:36,307.307 INFO    ] time= 19/06/2026 05:04:36
[2026-06-19 05:04:36,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:04:36,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:04:36,446.446 INFO    ] No existing commands found in stream
[2026-06-19 05:04:41,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:04:41,462.462 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 05:04:45,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:04:45,623.623 INFO    ] Checking for system updates...
[2026-06-19 05:04:45,660.660 INFO    ] 200
[2026-06-19 05:04:45,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:45,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:04:45,720.720 INFO    ] No update needed
[2026-06-19 05:04:45,723.723 INFO    ] Checking for camera pi updates...
[2026-06-19 05:04:45,762.762 INFO    ] 200
[2026-06-19 05:04:45,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:45,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:04:45,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:04:45,860.860 INFO    ] No camera update needed
[2026-06-19 05:04:45,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:04:45,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:04:45,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:04:45,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:04:47,917.917 INFO    ] ================================================
[2026-06-19 05:04:47,933.933 INFO    ] Launching Daemon at Fri Jun 19 05:04:47 IST 2026
[2026-06-19 05:04:47,944.944 INFO    ] ================================================
[2026-06-19 05:04:48,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:04:48
[2026-06-19 05:04:49,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:04:49,609.609 INFO    ] Initializing speech engine...
[2026-06-19 05:04:49,624.624 INFO    ] 2026-06-19 05:04:49
[2026-06-19 05:04:49,906.906 INFO    ] 2026-06-19 05:04:49
[2026-06-19 05:04:49,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:04:50,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:04:50,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:04:50,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:04:50,447.447 INFO    ] time= 19/06/2026 05:04:50
[2026-06-19 05:04:50,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:04:50,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:04:50,599.599 INFO    ] No existing commands found in stream
[2026-06-19 05:04:55,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:04:55,620.620 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 05:04:56,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:04:56,409.409 INFO    ] Checking for system updates...
[2026-06-19 05:04:56,451.451 INFO    ] 200
[2026-06-19 05:04:56,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:56,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:04:56,512.512 INFO    ] No update needed
[2026-06-19 05:04:56,515.515 INFO    ] Checking for camera pi updates...
[2026-06-19 05:04:56,554.554 INFO    ] 200
[2026-06-19 05:04:56,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:04:56,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:04:56,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:04:56,647.647 INFO    ] No camera update needed
[2026-06-19 05:04:56,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:04:56,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:04:56,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:04:56,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:04:58,708.708 INFO    ] ================================================
[2026-06-19 05:04:58,724.724 INFO    ] Launching Daemon at Fri Jun 19 05:04:58 IST 2026
[2026-06-19 05:04:58,735.735 INFO    ] ================================================
[2026-06-19 05:04:59,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:04:59
[2026-06-19 05:04:59,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:05:00,183.183 INFO    ] Initializing speech engine...
[2026-06-19 05:05:00,192.192 INFO    ] 2026-06-19 05:05:00
[2026-06-19 05:05:00,491.491 INFO    ] 2026-06-19 05:05:00
[2026-06-19 05:05:00,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:05:00,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:05:00,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:05:00,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:05:00,896.896 INFO    ] time= 19/06/2026 05:05:00
[2026-06-19 05:05:00,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:05:00,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:05:01,005.005 INFO    ] No existing commands found in stream
[2026-06-19 05:05:06,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:05:06,021.021 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 05:05:08,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:05:08,667.667 INFO    ] Checking for system updates...
[2026-06-19 05:05:08,707.707 INFO    ] 200
[2026-06-19 05:05:08,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:08,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:05:08,787.787 INFO    ] No update needed
[2026-06-19 05:05:08,789.789 INFO    ] Checking for camera pi updates...
[2026-06-19 05:05:08,824.824 INFO    ] 200
[2026-06-19 05:05:08,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:08,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:05:08,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:05:08,919.919 INFO    ] No camera update needed
[2026-06-19 05:05:08,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:05:08,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:05:08,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:05:08,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:05:10,977.977 INFO    ] ================================================
[2026-06-19 05:05:10,992.992 INFO    ] Launching Daemon at Fri Jun 19 05:05:10 IST 2026
[2026-06-19 05:05:11,003.003 INFO    ] ================================================
[2026-06-19 05:05:11,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:05:11
[2026-06-19 05:05:12,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:05:12,649.649 INFO    ] Initializing speech engine...
[2026-06-19 05:05:12,664.664 INFO    ] 2026-06-19 05:05:12
[2026-06-19 05:05:12,934.934 INFO    ] 2026-06-19 05:05:12
[2026-06-19 05:05:12,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:05:13,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:05:13,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:05:13,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:05:13,403.403 INFO    ] time= 19/06/2026 05:05:13
[2026-06-19 05:05:13,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:05:13,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:05:13,546.546 INFO    ] No existing commands found in stream
[2026-06-19 05:05:18,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:05:18,562.562 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 05:05:21,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:05:21,057.057 INFO    ] Checking for system updates...
[2026-06-19 05:05:21,099.099 INFO    ] 200
[2026-06-19 05:05:21,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:21,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:05:21,168.168 INFO    ] No update needed
[2026-06-19 05:05:21,170.170 INFO    ] Checking for camera pi updates...
[2026-06-19 05:05:21,206.206 INFO    ] 200
[2026-06-19 05:05:21,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:21,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:05:21,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:05:21,301.301 INFO    ] No camera update needed
[2026-06-19 05:05:21,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:05:21,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:05:21,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:05:21,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:05:23,362.362 INFO    ] ================================================
[2026-06-19 05:05:23,378.378 INFO    ] Launching Daemon at Fri Jun 19 05:05:23 IST 2026
[2026-06-19 05:05:23,389.389 INFO    ] ================================================
[2026-06-19 05:05:24,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:05:23
[2026-06-19 05:05:24,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:05:24,872.872 INFO    ] Initializing speech engine...
[2026-06-19 05:05:24,883.883 INFO    ] 2026-06-19 05:05:24
[2026-06-19 05:05:25,144.144 INFO    ] 2026-06-19 05:05:25
[2026-06-19 05:05:25,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:05:25,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:05:25,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:05:25,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:05:25,569.569 INFO    ] time= 19/06/2026 05:05:25
[2026-06-19 05:05:25,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:05:25,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:05:25,702.702 INFO    ] No existing commands found in stream
[2026-06-19 05:05:30,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:05:30,727.727 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 05:05:32,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:05:32,649.649 INFO    ] Checking for system updates...
[2026-06-19 05:05:32,688.688 INFO    ] 200
[2026-06-19 05:05:32,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:32,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:05:32,751.751 INFO    ] No update needed
[2026-06-19 05:05:32,754.754 INFO    ] Checking for camera pi updates...
[2026-06-19 05:05:32,792.792 INFO    ] 200
[2026-06-19 05:05:32,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:32,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:05:32,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:05:32,891.891 INFO    ] No camera update needed
[2026-06-19 05:05:32,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:05:32,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:05:32,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:05:32,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:05:34,951.951 INFO    ] ================================================
[2026-06-19 05:05:34,967.967 INFO    ] Launching Daemon at Fri Jun 19 05:05:34 IST 2026
[2026-06-19 05:05:34,978.978 INFO    ] ================================================
[2026-06-19 05:05:35,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:05:35
[2026-06-19 05:05:36,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:05:36,642.642 INFO    ] Initializing speech engine...
[2026-06-19 05:05:36,656.656 INFO    ] 2026-06-19 05:05:36
[2026-06-19 05:05:36,939.939 INFO    ] 2026-06-19 05:05:36
[2026-06-19 05:05:36,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:05:37,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:05:37,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:05:37,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:05:37,399.399 INFO    ] time= 19/06/2026 05:05:37
[2026-06-19 05:05:37,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:05:37,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:05:37,546.546 INFO    ] No existing commands found in stream
[2026-06-19 05:05:42,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:05:42,564.564 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 05:05:46,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:05:46,049.049 INFO    ] Checking for system updates...
[2026-06-19 05:05:46,091.091 INFO    ] 200
[2026-06-19 05:05:46,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:46,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:05:46,160.160 INFO    ] No update needed
[2026-06-19 05:05:46,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 05:05:46,198.198 INFO    ] 200
[2026-06-19 05:05:46,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:46,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:05:46,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:05:46,296.296 INFO    ] No camera update needed
[2026-06-19 05:05:46,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:05:46,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:05:46,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:05:46,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:05:48,355.355 INFO    ] ================================================
[2026-06-19 05:05:48,371.371 INFO    ] Launching Daemon at Fri Jun 19 05:05:48 IST 2026
[2026-06-19 05:05:48,382.382 INFO    ] ================================================
[2026-06-19 05:05:48,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:05:48
[2026-06-19 05:05:49,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:05:49,804.804 INFO    ] Initializing speech engine...
[2026-06-19 05:05:49,810.810 INFO    ] 2026-06-19 05:05:49
[2026-06-19 05:05:50,089.089 INFO    ] 2026-06-19 05:05:50
[2026-06-19 05:05:50,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:05:50,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:05:50,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:05:50,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:05:50,571.571 INFO    ] time= 19/06/2026 05:05:50
[2026-06-19 05:05:50,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:05:50,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:05:50,720.720 INFO    ] No existing commands found in stream
[2026-06-19 05:05:55,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:05:55,735.735 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 05:05:58,182.182 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:05:58,185.185 INFO    ] Checking for system updates...
[2026-06-19 05:05:58,221.221 INFO    ] 200
[2026-06-19 05:05:58,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:58,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:05:58,283.283 INFO    ] No update needed
[2026-06-19 05:05:58,286.286 INFO    ] Checking for camera pi updates...
[2026-06-19 05:05:58,322.322 INFO    ] 200
[2026-06-19 05:05:58,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:05:58,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:05:58,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:05:58,414.414 INFO    ] No camera update needed
[2026-06-19 05:05:58,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:05:58,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:05:58,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:05:58,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:06:00,476.476 INFO    ] ================================================
[2026-06-19 05:06:00,493.493 INFO    ] Launching Daemon at Fri Jun 19 05:06:00 IST 2026
[2026-06-19 05:06:00,505.505 INFO    ] ================================================
[2026-06-19 05:06:01,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:06:01
[2026-06-19 05:06:01,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:06:01,964.964 INFO    ] Initializing speech engine...
[2026-06-19 05:06:01,973.973 INFO    ] 2026-06-19 05:06:01
[2026-06-19 05:06:02,413.413 INFO    ] 2026-06-19 05:06:02
[2026-06-19 05:06:02,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:06:02,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:06:02,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:06:02,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:06:02,839.839 INFO    ] time= 19/06/2026 05:06:02
[2026-06-19 05:06:02,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:06:02,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:06:02,941.941 INFO    ] No existing commands found in stream
[2026-06-19 05:06:07,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:06:07,977.977 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 05:06:10,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:06:10,150.150 INFO    ] Checking for system updates...
[2026-06-19 05:06:10,192.192 INFO    ] 200
[2026-06-19 05:06:10,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:06:10,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:06:10,265.265 INFO    ] No update needed
[2026-06-19 05:06:10,268.268 INFO    ] Checking for camera pi updates...
[2026-06-19 05:06:10,307.307 INFO    ] 200
[2026-06-19 05:06:10,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:06:10,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:06:10,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:06:10,405.405 INFO    ] No camera update needed
[2026-06-19 05:06:10,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:06:10,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:06:10,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:06:10,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:06:12,466.466 INFO    ] ================================================
[2026-06-19 05:06:12,481.481 INFO    ] Launching Daemon at Fri Jun 19 05:06:12 IST 2026
[2026-06-19 05:06:12,497.497 INFO    ] ================================================
[2026-06-19 05:06:13,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:06:13
[2026-06-19 05:06:13,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:06:13,906.906 INFO    ] Initializing speech engine...
[2026-06-19 05:06:13,928.928 INFO    ] 2026-06-19 05:06:13
[2026-06-19 05:06:14,188.188 INFO    ] 2026-06-19 05:06:14
[2026-06-19 05:06:14,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:06:14,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:06:14,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:06:14,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:06:14,559.559 INFO    ] time= 19/06/2026 05:06:14
[2026-06-19 05:06:14,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:06:14,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:06:14,755.755 INFO    ] No existing commands found in stream
[2026-06-19 05:06:19,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:06:19,769.769 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 05:06:22,657.657 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:06:22,660.660 INFO    ] Checking for system updates...
[2026-06-19 05:06:22,699.699 INFO    ] 200
[2026-06-19 05:06:22,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:06:22,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:06:22,757.757 INFO    ] No update needed
[2026-06-19 05:06:22,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 05:06:22,793.793 INFO    ] 200
[2026-06-19 05:06:22,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:06:22,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:06:22,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:06:22,888.888 INFO    ] No camera update needed
[2026-06-19 05:06:22,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:06:22,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:06:22,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:06:22,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:06:24,945.945 INFO    ] ================================================
[2026-06-19 05:06:24,961.961 INFO    ] Launching Daemon at Fri Jun 19 05:06:24 IST 2026
[2026-06-19 05:06:24,972.972 INFO    ] ================================================
[2026-06-19 05:06:25,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:06:25
[2026-06-19 05:06:26,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:06:26,440.440 INFO    ] Initializing speech engine...
[2026-06-19 05:06:26,446.446 INFO    ] 2026-06-19 05:06:26
[2026-06-19 05:06:26,700.700 INFO    ] 2026-06-19 05:06:26
[2026-06-19 05:06:26,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:06:26,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:06:26,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:06:27,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:06:27,112.112 INFO    ] time= 19/06/2026 05:06:27
[2026-06-19 05:06:27,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:06:27,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:06:27,254.254 INFO    ] No existing commands found in stream
[2026-06-19 05:06:32,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:06:32,281.281 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 05:06:36,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:06:36,198.198 INFO    ] Checking for system updates...
[2026-06-19 05:06:36,234.234 INFO    ] 200
[2026-06-19 05:06:36,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:06:36,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:06:36,292.292 INFO    ] No update needed
[2026-06-19 05:06:36,294.294 INFO    ] Checking for camera pi updates...
[2026-06-19 05:06:36,331.331 INFO    ] 200
[2026-06-19 05:06:36,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:06:36,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:06:36,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:06:36,429.429 INFO    ] No camera update needed
[2026-06-19 05:06:36,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:06:36,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:06:36,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:06:36,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:06:38,486.486 INFO    ] ================================================
[2026-06-19 05:06:38,501.501 INFO    ] Launching Daemon at Fri Jun 19 05:06:38 IST 2026
[2026-06-19 05:06:38,512.512 INFO    ] ================================================
[2026-06-19 05:06:39,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:06:39
[2026-06-19 05:06:39,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:06:39,963.963 INFO    ] Initializing speech engine...
[2026-06-19 05:06:39,983.983 INFO    ] 2026-06-19 05:06:39
[2026-06-19 05:06:40,244.244 INFO    ] 2026-06-19 05:06:40
[2026-06-19 05:06:40,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:06:40,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:06:40,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:06:40,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:06:40,622.622 INFO    ] time= 19/06/2026 05:06:40
[2026-06-19 05:06:40,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:06:40,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:06:40,794.794 INFO    ] No existing commands found in stream
[2026-06-19 05:06:45,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:06:45,827.827 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 05:06:46,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:06:46,599.599 INFO    ] Checking for system updates...
[2026-06-19 05:06:46,635.635 INFO    ] 200
[2026-06-19 05:06:46,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:06:46,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:06:46,692.692 INFO    ] No update needed
[2026-06-19 05:06:46,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 05:06:46,728.728 INFO    ] 200
[2026-06-19 05:06:46,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:06:46,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:06:46,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:06:46,801.801 INFO    ] No camera update needed
[2026-06-19 05:06:46,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:06:46,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:06:46,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:06:46,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:06:48,858.858 INFO    ] ================================================
[2026-06-19 05:06:48,873.873 INFO    ] Launching Daemon at Fri Jun 19 05:06:48 IST 2026
[2026-06-19 05:06:48,884.884 INFO    ] ================================================
[2026-06-19 05:06:49,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:06:49
[2026-06-19 05:06:50,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:06:50,530.530 INFO    ] Initializing speech engine...
[2026-06-19 05:06:50,544.544 INFO    ] 2026-06-19 05:06:50
[2026-06-19 05:06:50,822.822 INFO    ] 2026-06-19 05:06:50
[2026-06-19 05:06:50,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:06:51,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:06:51,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:06:51,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:06:51,263.263 INFO    ] time= 19/06/2026 05:06:51
[2026-06-19 05:06:51,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:06:51,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:06:51,427.427 INFO    ] No existing commands found in stream
[2026-06-19 05:06:56,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:06:56,443.443 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 05:07:00,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:07:00,116.116 INFO    ] Checking for system updates...
[2026-06-19 05:07:00,153.153 INFO    ] 200
[2026-06-19 05:07:00,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:00,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:07:00,219.219 INFO    ] No update needed
[2026-06-19 05:07:00,222.222 INFO    ] Checking for camera pi updates...
[2026-06-19 05:07:00,260.260 INFO    ] 200
[2026-06-19 05:07:00,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:00,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:07:00,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:07:00,353.353 INFO    ] No camera update needed
[2026-06-19 05:07:00,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:07:00,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:07:00,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:07:00,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:07:02,413.413 INFO    ] ================================================
[2026-06-19 05:07:02,432.432 INFO    ] Launching Daemon at Fri Jun 19 05:07:02 IST 2026
[2026-06-19 05:07:02,446.446 INFO    ] ================================================
[2026-06-19 05:07:03,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:07:03
[2026-06-19 05:07:03,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:07:04,219.219 INFO    ] Initializing speech engine...
[2026-06-19 05:07:04,229.229 INFO    ] 2026-06-19 05:07:04
[2026-06-19 05:07:04,508.508 INFO    ] 2026-06-19 05:07:04
[2026-06-19 05:07:04,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:07:04,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:07:04,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:07:04,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:07:04,959.959 INFO    ] time= 19/06/2026 05:07:04
[2026-06-19 05:07:05,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:07:05,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:07:05,120.120 INFO    ] No existing commands found in stream
[2026-06-19 05:07:10,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:07:10,137.137 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 05:07:10,774.774 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:07:10,778.778 INFO    ] Checking for system updates...
[2026-06-19 05:07:10,826.826 INFO    ] 200
[2026-06-19 05:07:10,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 05:07:10,832.832 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 05:07:10,834.834 INFO    ] Checking for camera pi updates...
[2026-06-19 05:07:10,882.882 INFO    ] 200
[2026-06-19 05:07:10,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 05:07:10,888.888 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 05:07:10,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:07:10,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:07:10,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:07:10,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:07:12,951.951 INFO    ] ================================================
[2026-06-19 05:07:12,968.968 INFO    ] Launching Daemon at Fri Jun 19 05:07:12 IST 2026
[2026-06-19 05:07:12,979.979 INFO    ] ================================================
[2026-06-19 05:07:13,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:07:13
[2026-06-19 05:07:14,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:07:14,445.445 INFO    ] Initializing speech engine...
[2026-06-19 05:07:14,455.455 INFO    ] 2026-06-19 05:07:14
[2026-06-19 05:07:14,701.701 INFO    ] 2026-06-19 05:07:14
[2026-06-19 05:07:14,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:07:14,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:07:14,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:07:15,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:07:15,131.131 INFO    ] time= 19/06/2026 05:07:15
[2026-06-19 05:07:15,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:07:15,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:07:15,286.286 INFO    ] No existing commands found in stream
[2026-06-19 05:07:20,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:07:20,304.304 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 05:07:22,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:07:22,944.944 INFO    ] Checking for system updates...
[2026-06-19 05:07:22,981.981 INFO    ] 200
[2026-06-19 05:07:22,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:23,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:07:23,039.039 INFO    ] No update needed
[2026-06-19 05:07:23,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 05:07:23,075.075 INFO    ] 200
[2026-06-19 05:07:23,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:23,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:07:23,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:07:23,270.270 INFO    ] No camera update needed
[2026-06-19 05:07:23,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:07:23,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:07:23,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:07:23,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:07:25,326.326 INFO    ] ================================================
[2026-06-19 05:07:25,342.342 INFO    ] Launching Daemon at Fri Jun 19 05:07:25 IST 2026
[2026-06-19 05:07:25,353.353 INFO    ] ================================================
[2026-06-19 05:07:25,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:07:25
[2026-06-19 05:07:26,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:07:26,813.813 INFO    ] Initializing speech engine...
[2026-06-19 05:07:26,820.820 INFO    ] 2026-06-19 05:07:26
[2026-06-19 05:07:27,067.067 INFO    ] 2026-06-19 05:07:27
[2026-06-19 05:07:27,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:07:27,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:07:27,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:07:27,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:07:27,437.437 INFO    ] time= 19/06/2026 05:07:27
[2026-06-19 05:07:27,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:07:27,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:07:27,617.617 INFO    ] No existing commands found in stream
[2026-06-19 05:07:32,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:07:32,648.648 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 05:07:36,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:07:36,598.598 INFO    ] Checking for system updates...
[2026-06-19 05:07:36,635.635 INFO    ] 200
[2026-06-19 05:07:36,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:36,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:07:36,700.700 INFO    ] No update needed
[2026-06-19 05:07:36,703.703 INFO    ] Checking for camera pi updates...
[2026-06-19 05:07:36,740.740 INFO    ] 200
[2026-06-19 05:07:36,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:36,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:07:36,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:07:36,829.829 INFO    ] No camera update needed
[2026-06-19 05:07:36,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:07:36,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:07:36,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:07:36,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:07:38,885.885 INFO    ] ================================================
[2026-06-19 05:07:38,901.901 INFO    ] Launching Daemon at Fri Jun 19 05:07:38 IST 2026
[2026-06-19 05:07:38,912.912 INFO    ] ================================================
[2026-06-19 05:07:39,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:07:39
[2026-06-19 05:07:40,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:07:40,335.335 INFO    ] Initializing speech engine...
[2026-06-19 05:07:40,349.349 INFO    ] 2026-06-19 05:07:40
[2026-06-19 05:07:40,644.644 INFO    ] 2026-06-19 05:07:40
[2026-06-19 05:07:40,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:07:40,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:07:40,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:07:41,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:07:41,140.140 INFO    ] time= 19/06/2026 05:07:41
[2026-06-19 05:07:41,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:07:41,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:07:41,284.284 INFO    ] No existing commands found in stream
[2026-06-19 05:07:46,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:07:46,300.300 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 05:07:47,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:07:47,540.540 INFO    ] Checking for system updates...
[2026-06-19 05:07:47,577.577 INFO    ] 200
[2026-06-19 05:07:47,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:47,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:07:47,637.637 INFO    ] No update needed
[2026-06-19 05:07:47,640.640 INFO    ] Checking for camera pi updates...
[2026-06-19 05:07:47,674.674 INFO    ] 200
[2026-06-19 05:07:47,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:47,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:07:47,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:07:47,757.757 INFO    ] No camera update needed
[2026-06-19 05:07:47,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:07:47,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:07:47,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:07:47,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:07:49,814.814 INFO    ] ================================================
[2026-06-19 05:07:49,830.830 INFO    ] Launching Daemon at Fri Jun 19 05:07:49 IST 2026
[2026-06-19 05:07:49,842.842 INFO    ] ================================================
[2026-06-19 05:07:50,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:07:50
[2026-06-19 05:07:50,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:07:51,270.270 INFO    ] Initializing speech engine...
[2026-06-19 05:07:51,279.279 INFO    ] 2026-06-19 05:07:51
[2026-06-19 05:07:51,529.529 INFO    ] 2026-06-19 05:07:51
[2026-06-19 05:07:51,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:07:51,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:07:51,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:07:51,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:07:51,906.906 INFO    ] time= 19/06/2026 05:07:51
[2026-06-19 05:07:51,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:07:51,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:07:52,085.085 INFO    ] No existing commands found in stream
[2026-06-19 05:07:57,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:07:57,121.121 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 05:07:58,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:07:58,162.162 INFO    ] Checking for system updates...
[2026-06-19 05:07:58,199.199 INFO    ] 200
[2026-06-19 05:07:58,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:58,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:07:58,257.257 INFO    ] No update needed
[2026-06-19 05:07:58,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 05:07:58,294.294 INFO    ] 200
[2026-06-19 05:07:58,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:07:58,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:07:58,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:07:58,394.394 INFO    ] No camera update needed
[2026-06-19 05:07:58,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:07:58,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:07:58,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:07:58,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:08:00,450.450 INFO    ] ================================================
[2026-06-19 05:08:00,465.465 INFO    ] Launching Daemon at Fri Jun 19 05:08:00 IST 2026
[2026-06-19 05:08:00,477.477 INFO    ] ================================================
[2026-06-19 05:08:01,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:08:01
[2026-06-19 05:08:01,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:08:02,110.110 INFO    ] Initializing speech engine...
[2026-06-19 05:08:02,113.113 INFO    ] 2026-06-19 05:08:02
[2026-06-19 05:08:02,589.589 INFO    ] 2026-06-19 05:08:02
[2026-06-19 05:08:02,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:08:02,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:08:02,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:08:03,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:08:03,094.094 INFO    ] time= 19/06/2026 05:08:03
[2026-06-19 05:08:03,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:08:03,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:08:03,222.222 INFO    ] No existing commands found in stream
[2026-06-19 05:08:08,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:08:08,242.242 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 05:08:09,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:08:09,990.990 INFO    ] Checking for system updates...
[2026-06-19 05:08:10,026.026 INFO    ] 200
[2026-06-19 05:08:10,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:10,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:08:10,089.089 INFO    ] No update needed
[2026-06-19 05:08:10,091.091 INFO    ] Checking for camera pi updates...
[2026-06-19 05:08:10,125.125 INFO    ] 200
[2026-06-19 05:08:10,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:10,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:08:10,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:08:10,216.216 INFO    ] No camera update needed
[2026-06-19 05:08:10,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:08:10,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:08:10,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:08:10,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:08:12,272.272 INFO    ] ================================================
[2026-06-19 05:08:12,288.288 INFO    ] Launching Daemon at Fri Jun 19 05:08:12 IST 2026
[2026-06-19 05:08:12,298.298 INFO    ] ================================================
[2026-06-19 05:08:12,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:08:12
[2026-06-19 05:08:13,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:08:13,766.766 INFO    ] Initializing speech engine...
[2026-06-19 05:08:13,775.775 INFO    ] 2026-06-19 05:08:13
[2026-06-19 05:08:14,024.024 INFO    ] 2026-06-19 05:08:14
[2026-06-19 05:08:14,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:08:14,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:08:14,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:08:14,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:08:14,517.517 INFO    ] time= 19/06/2026 05:08:14
[2026-06-19 05:08:14,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:08:14,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:08:14,657.657 INFO    ] No existing commands found in stream
[2026-06-19 05:08:19,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:08:19,680.680 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 05:08:20,922.922 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:08:20,924.924 INFO    ] Checking for system updates...
[2026-06-19 05:08:20,960.960 INFO    ] 200
[2026-06-19 05:08:20,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:21,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:08:21,020.020 INFO    ] No update needed
[2026-06-19 05:08:21,022.022 INFO    ] Checking for camera pi updates...
[2026-06-19 05:08:21,059.059 INFO    ] 200
[2026-06-19 05:08:21,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:21,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:08:21,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:08:21,149.149 INFO    ] No camera update needed
[2026-06-19 05:08:21,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:08:21,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:08:21,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:08:21,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:08:23,208.208 INFO    ] ================================================
[2026-06-19 05:08:23,223.223 INFO    ] Launching Daemon at Fri Jun 19 05:08:23 IST 2026
[2026-06-19 05:08:23,234.234 INFO    ] ================================================
[2026-06-19 05:08:23,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:08:23
[2026-06-19 05:08:24,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:08:24,690.690 INFO    ] Initializing speech engine...
[2026-06-19 05:08:24,703.703 INFO    ] 2026-06-19 05:08:24
[2026-06-19 05:08:24,971.971 INFO    ] 2026-06-19 05:08:24
[2026-06-19 05:08:25,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:08:25,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:08:25,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:08:25,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:08:25,441.441 INFO    ] time= 19/06/2026 05:08:25
[2026-06-19 05:08:25,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:08:25,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:08:25,588.588 INFO    ] No existing commands found in stream
[2026-06-19 05:08:30,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:08:30,611.611 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 05:08:31,945.945 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:08:31,950.950 INFO    ] Checking for system updates...
[2026-06-19 05:08:32,000.000 INFO    ] 200
[2026-06-19 05:08:32,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:32,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:08:32,091.091 INFO    ] No update needed
[2026-06-19 05:08:32,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 05:08:32,133.133 INFO    ] 200
[2026-06-19 05:08:32,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:32,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:08:32,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:08:32,223.223 INFO    ] No camera update needed
[2026-06-19 05:08:32,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:08:32,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:08:32,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:08:32,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:08:34,288.288 INFO    ] ================================================
[2026-06-19 05:08:34,303.303 INFO    ] Launching Daemon at Fri Jun 19 05:08:34 IST 2026
[2026-06-19 05:08:34,314.314 INFO    ] ================================================
[2026-06-19 05:08:34,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:08:34
[2026-06-19 05:08:35,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:08:35,862.862 INFO    ] Initializing speech engine...
[2026-06-19 05:08:35,879.879 INFO    ] 2026-06-19 05:08:35
[2026-06-19 05:08:36,144.144 INFO    ] 2026-06-19 05:08:36
[2026-06-19 05:08:36,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:08:36,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:08:36,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:08:36,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:08:36,639.639 INFO    ] time= 19/06/2026 05:08:36
[2026-06-19 05:08:36,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:08:36,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:08:36,838.838 INFO    ] No existing commands found in stream
[2026-06-19 05:08:41,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:08:41,870.870 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 05:08:45,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:08:45,647.647 INFO    ] Checking for system updates...
[2026-06-19 05:08:45,684.684 INFO    ] 200
[2026-06-19 05:08:45,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:45,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:08:45,744.744 INFO    ] No update needed
[2026-06-19 05:08:45,747.747 INFO    ] Checking for camera pi updates...
[2026-06-19 05:08:45,781.781 INFO    ] 200
[2026-06-19 05:08:45,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:45,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:08:45,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:08:45,875.875 INFO    ] No camera update needed
[2026-06-19 05:08:45,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:08:45,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:08:45,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:08:45,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:08:47,930.930 INFO    ] ================================================
[2026-06-19 05:08:47,945.945 INFO    ] Launching Daemon at Fri Jun 19 05:08:47 IST 2026
[2026-06-19 05:08:47,956.956 INFO    ] ================================================
[2026-06-19 05:08:48,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:08:48
[2026-06-19 05:08:49,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:08:49,380.380 INFO    ] Initializing speech engine...
[2026-06-19 05:08:49,395.395 INFO    ] 2026-06-19 05:08:49
[2026-06-19 05:08:49,661.661 INFO    ] 2026-06-19 05:08:49
[2026-06-19 05:08:49,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:08:49,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:08:49,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:08:50,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:08:50,059.059 INFO    ] time= 19/06/2026 05:08:50
[2026-06-19 05:08:50,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:08:50,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:08:50,237.237 INFO    ] No existing commands found in stream
[2026-06-19 05:08:55,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:08:55,269.269 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 05:08:58,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:08:58,530.530 INFO    ] Checking for system updates...
[2026-06-19 05:08:58,567.567 INFO    ] 200
[2026-06-19 05:08:58,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:58,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:08:58,629.629 INFO    ] No update needed
[2026-06-19 05:08:58,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 05:08:58,665.665 INFO    ] 200
[2026-06-19 05:08:58,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:08:58,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:08:58,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:08:58,764.764 INFO    ] No camera update needed
[2026-06-19 05:08:58,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:08:58,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:08:58,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:08:58,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:09:00,822.822 INFO    ] ================================================
[2026-06-19 05:09:00,837.837 INFO    ] Launching Daemon at Fri Jun 19 05:09:00 IST 2026
[2026-06-19 05:09:00,848.848 INFO    ] ================================================
[2026-06-19 05:09:01,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:09:01
[2026-06-19 05:09:02,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:09:02,524.524 INFO    ] Initializing speech engine...
[2026-06-19 05:09:02,542.542 INFO    ] 2026-06-19 05:09:02
[2026-06-19 05:09:02,827.827 INFO    ] 2026-06-19 05:09:02
[2026-06-19 05:09:02,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:09:03,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:09:03,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:09:03,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:09:03,298.298 INFO    ] time= 19/06/2026 05:09:03
[2026-06-19 05:09:03,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:09:03,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:09:03,498.498 INFO    ] No existing commands found in stream
[2026-06-19 05:09:08,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:09:08,516.516 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 05:09:12,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:09:12,689.689 INFO    ] Checking for system updates...
[2026-06-19 05:09:12,726.726 INFO    ] 200
[2026-06-19 05:09:12,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:09:12,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:09:12,784.784 INFO    ] No update needed
[2026-06-19 05:09:12,786.786 INFO    ] Checking for camera pi updates...
[2026-06-19 05:09:12,823.823 INFO    ] 200
[2026-06-19 05:09:12,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:09:12,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:09:12,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:09:12,910.910 INFO    ] No camera update needed
[2026-06-19 05:09:12,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:09:12,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:09:12,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:09:12,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:09:14,968.968 INFO    ] ================================================
[2026-06-19 05:09:14,983.983 INFO    ] Launching Daemon at Fri Jun 19 05:09:14 IST 2026
[2026-06-19 05:09:15,994.994 INFO    ] ================================================
[2026-06-19 05:09:15,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:09:15
[2026-06-19 05:09:16,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:09:16,430.430 INFO    ] Initializing speech engine...
[2026-06-19 05:09:16,439.439 INFO    ] 2026-06-19 05:09:16
[2026-06-19 05:09:16,684.684 INFO    ] 2026-06-19 05:09:16
[2026-06-19 05:09:16,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:09:16,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:09:16,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:09:17,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:09:17,174.174 INFO    ] time= 19/06/2026 05:09:17
[2026-06-19 05:09:17,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:09:17,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:09:17,404.404 INFO    ] No existing commands found in stream
[2026-06-19 05:09:22,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:09:22,438.438 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 05:09:24,107.107 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:09:24,111.111 INFO    ] Checking for system updates...
[2026-06-19 05:09:24,171.171 INFO    ] 200
[2026-06-19 05:09:24,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:09:24,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:09:24,263.263 INFO    ] No update needed
[2026-06-19 05:09:24,265.265 INFO    ] Checking for camera pi updates...
[2026-06-19 05:09:24,301.301 INFO    ] 200
[2026-06-19 05:09:24,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:09:24,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:09:24,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:09:24,396.396 INFO    ] No camera update needed
[2026-06-19 05:09:24,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:09:24,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:09:24,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:09:24,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:09:26,454.454 INFO    ] ================================================
[2026-06-19 05:09:26,469.469 INFO    ] Launching Daemon at Fri Jun 19 05:09:26 IST 2026
[2026-06-19 05:09:26,480.480 INFO    ] ================================================
[2026-06-19 05:09:27,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:09:27
[2026-06-19 05:09:27,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:09:27,894.894 INFO    ] Initializing speech engine...
[2026-06-19 05:09:27,902.902 INFO    ] 2026-06-19 05:09:27
[2026-06-19 05:09:28,211.211 INFO    ] 2026-06-19 05:09:28
[2026-06-19 05:09:28,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:09:28,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:09:28,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:09:28,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:09:28,566.566 INFO    ] time= 19/06/2026 05:09:28
[2026-06-19 05:09:28,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:09:28,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:09:28,647.647 INFO    ] No existing commands found in stream
[2026-06-19 05:09:33,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:09:33,662.662 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 05:09:37,297.297 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:09:37,300.300 INFO    ] Checking for system updates...
[2026-06-19 05:09:37,337.337 INFO    ] 200
[2026-06-19 05:09:37,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:09:37,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:09:37,419.419 INFO    ] No update needed
[2026-06-19 05:09:37,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 05:09:37,468.468 INFO    ] 200
[2026-06-19 05:09:37,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:09:37,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:09:37,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:09:37,567.567 INFO    ] No camera update needed
[2026-06-19 05:09:37,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:09:37,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:09:37,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:09:37,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:09:39,624.624 INFO    ] ================================================
[2026-06-19 05:09:39,640.640 INFO    ] Launching Daemon at Fri Jun 19 05:09:39 IST 2026
[2026-06-19 05:09:39,650.650 INFO    ] ================================================
[2026-06-19 05:09:40,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:09:40
[2026-06-19 05:09:40,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:09:41,092.092 INFO    ] Initializing speech engine...
[2026-06-19 05:09:41,102.102 INFO    ] 2026-06-19 05:09:41
[2026-06-19 05:09:41,349.349 INFO    ] 2026-06-19 05:09:41
[2026-06-19 05:09:41,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:09:41,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:09:41,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:09:41,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:09:41,722.722 INFO    ] time= 19/06/2026 05:09:41
[2026-06-19 05:09:41,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:09:41,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:09:41,796.796 INFO    ] No existing commands found in stream
[2026-06-19 05:09:46,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:09:46,809.809 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 05:09:49,806.806 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:09:49,808.808 INFO    ] Checking for system updates...
[2026-06-19 05:09:49,844.844 INFO    ] 200
[2026-06-19 05:09:49,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:09:49,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:09:49,906.906 INFO    ] No update needed
[2026-06-19 05:09:49,909.909 INFO    ] Checking for camera pi updates...
[2026-06-19 05:09:49,942.942 INFO    ] 200
[2026-06-19 05:09:49,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:09:49,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:09:50,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:09:50,034.034 INFO    ] No camera update needed
[2026-06-19 05:09:50,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:09:50,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:09:50,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:09:50,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:09:52,094.094 INFO    ] ================================================
[2026-06-19 05:09:52,109.109 INFO    ] Launching Daemon at Fri Jun 19 05:09:52 IST 2026
[2026-06-19 05:09:52,120.120 INFO    ] ================================================
[2026-06-19 05:09:52,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:09:52
[2026-06-19 05:09:53,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:09:53,538.538 INFO    ] Initializing speech engine...
[2026-06-19 05:09:53,547.547 INFO    ] 2026-06-19 05:09:53
[2026-06-19 05:09:53,791.791 INFO    ] 2026-06-19 05:09:53
[2026-06-19 05:09:53,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:09:54,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:09:54,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:09:54,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:09:54,240.240 INFO    ] time= 19/06/2026 05:09:54
[2026-06-19 05:09:54,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:09:54,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:09:54,468.468 INFO    ] No existing commands found in stream
[2026-06-19 05:09:59,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:09:59,498.498 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 05:10:00,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:10:00,301.301 INFO    ] Checking for system updates...
[2026-06-19 05:10:00,340.340 INFO    ] 200
[2026-06-19 05:10:00,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:00,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:10:00,401.401 INFO    ] No update needed
[2026-06-19 05:10:00,404.404 INFO    ] Checking for camera pi updates...
[2026-06-19 05:10:00,438.438 INFO    ] 200
[2026-06-19 05:10:00,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:00,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:10:00,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:10:00,531.531 INFO    ] No camera update needed
[2026-06-19 05:10:00,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:10:00,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:10:00,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:10:00,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:10:02,630.630 INFO    ] ================================================
[2026-06-19 05:10:02,697.697 INFO    ] Launching Daemon at Fri Jun 19 05:10:02 IST 2026
[2026-06-19 05:10:02,768.768 INFO    ] ================================================
[2026-06-19 05:10:03,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:10:03
[2026-06-19 05:10:04,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:10:04,648.648 INFO    ] Initializing speech engine...
[2026-06-19 05:10:04,659.659 INFO    ] 2026-06-19 05:10:04
[2026-06-19 05:10:04,919.919 INFO    ] 2026-06-19 05:10:04
[2026-06-19 05:10:04,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:10:05,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:10:05,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:10:05,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:10:05,380.380 INFO    ] time= 19/06/2026 05:10:05
[2026-06-19 05:10:05,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:10:05,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:10:05,526.526 INFO    ] No existing commands found in stream
[2026-06-19 05:10:10,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:10:10,541.541 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 05:10:11,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:10:11,679.679 INFO    ] Checking for system updates...
[2026-06-19 05:10:11,718.718 INFO    ] 200
[2026-06-19 05:10:11,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:11,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:10:11,781.781 INFO    ] No update needed
[2026-06-19 05:10:11,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 05:10:11,817.817 INFO    ] 200
[2026-06-19 05:10:11,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:11,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:10:11,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:10:11,925.925 INFO    ] No camera update needed
[2026-06-19 05:10:11,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:10:11,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:10:11,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:10:11,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:10:13,981.981 INFO    ] ================================================
[2026-06-19 05:10:14,997.997 INFO    ] Launching Daemon at Fri Jun 19 05:10:13 IST 2026
[2026-06-19 05:10:14,007.007 INFO    ] ================================================
[2026-06-19 05:10:14,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:10:14
[2026-06-19 05:10:15,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:10:15,475.475 INFO    ] Initializing speech engine...
[2026-06-19 05:10:15,493.493 INFO    ] 2026-06-19 05:10:15
[2026-06-19 05:10:15,759.759 INFO    ] 2026-06-19 05:10:15
[2026-06-19 05:10:15,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:10:16,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:10:16,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:10:16,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:10:16,144.144 INFO    ] time= 19/06/2026 05:10:16
[2026-06-19 05:10:16,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:10:16,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:10:16,313.313 INFO    ] No existing commands found in stream
[2026-06-19 05:10:21,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:10:21,341.341 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 05:10:22,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:10:22,767.767 INFO    ] Checking for system updates...
[2026-06-19 05:10:22,803.803 INFO    ] 200
[2026-06-19 05:10:22,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:22,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:10:22,862.862 INFO    ] No update needed
[2026-06-19 05:10:22,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 05:10:22,900.900 INFO    ] 200
[2026-06-19 05:10:22,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:22,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:10:22,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:10:23,001.001 INFO    ] No camera update needed
[2026-06-19 05:10:23,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:10:23,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:10:23,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:10:23,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:10:25,060.060 INFO    ] ================================================
[2026-06-19 05:10:25,075.075 INFO    ] Launching Daemon at Fri Jun 19 05:10:25 IST 2026
[2026-06-19 05:10:25,086.086 INFO    ] ================================================
[2026-06-19 05:10:25,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:10:25
[2026-06-19 05:10:26,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:10:26,622.622 INFO    ] Initializing speech engine...
[2026-06-19 05:10:26,631.631 INFO    ] 2026-06-19 05:10:26
[2026-06-19 05:10:26,927.927 INFO    ] 2026-06-19 05:10:26
[2026-06-19 05:10:26,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:10:27,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:10:27,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:10:27,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:10:27,303.303 INFO    ] time= 19/06/2026 05:10:27
[2026-06-19 05:10:27,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:10:27,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:10:27,429.429 INFO    ] No existing commands found in stream
[2026-06-19 05:10:32,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:10:32,445.445 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 05:10:34,643.643 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:10:34,646.646 INFO    ] Checking for system updates...
[2026-06-19 05:10:34,682.682 INFO    ] 200
[2026-06-19 05:10:34,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:34,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:10:34,749.749 INFO    ] No update needed
[2026-06-19 05:10:34,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 05:10:34,786.786 INFO    ] 200
[2026-06-19 05:10:34,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:34,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:10:34,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:10:34,878.878 INFO    ] No camera update needed
[2026-06-19 05:10:34,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:10:34,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:10:34,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:10:34,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:10:36,934.934 INFO    ] ================================================
[2026-06-19 05:10:36,952.952 INFO    ] Launching Daemon at Fri Jun 19 05:10:36 IST 2026
[2026-06-19 05:10:36,967.967 INFO    ] ================================================
[2026-06-19 05:10:37,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:10:37
[2026-06-19 05:10:38,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:10:38,614.614 INFO    ] Initializing speech engine...
[2026-06-19 05:10:38,623.623 INFO    ] 2026-06-19 05:10:38
[2026-06-19 05:10:38,899.899 INFO    ] 2026-06-19 05:10:38
[2026-06-19 05:10:38,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:10:39,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:10:39,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:10:39,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:10:39,369.369 INFO    ] time= 19/06/2026 05:10:39
[2026-06-19 05:10:39,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:10:39,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:10:39,519.519 INFO    ] No existing commands found in stream
[2026-06-19 05:10:44,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:10:44,536.536 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 05:10:45,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:10:45,453.453 INFO    ] Checking for system updates...
[2026-06-19 05:10:45,494.494 INFO    ] 200
[2026-06-19 05:10:45,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:45,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:10:45,567.567 INFO    ] No update needed
[2026-06-19 05:10:45,570.570 INFO    ] Checking for camera pi updates...
[2026-06-19 05:10:45,609.609 INFO    ] 200
[2026-06-19 05:10:45,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:45,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:10:45,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:10:45,710.710 INFO    ] No camera update needed
[2026-06-19 05:10:45,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:10:45,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:10:45,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:10:45,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:10:47,769.769 INFO    ] ================================================
[2026-06-19 05:10:47,785.785 INFO    ] Launching Daemon at Fri Jun 19 05:10:47 IST 2026
[2026-06-19 05:10:47,797.797 INFO    ] ================================================
[2026-06-19 05:10:48,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:10:48
[2026-06-19 05:10:49,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:10:49,488.488 INFO    ] Initializing speech engine...
[2026-06-19 05:10:49,499.499 INFO    ] 2026-06-19 05:10:49
[2026-06-19 05:10:49,812.812 INFO    ] 2026-06-19 05:10:49
[2026-06-19 05:10:49,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:10:50,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:10:50,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:10:50,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:10:50,319.319 INFO    ] time= 19/06/2026 05:10:50
[2026-06-19 05:10:50,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:10:50,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:10:50,409.409 INFO    ] No existing commands found in stream
[2026-06-19 05:10:55,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:10:55,445.445 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 05:10:55,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:10:55,973.973 INFO    ] Checking for system updates...
[2026-06-19 05:10:56,009.009 INFO    ] 200
[2026-06-19 05:10:56,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:56,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:10:56,066.066 INFO    ] No update needed
[2026-06-19 05:10:56,069.069 INFO    ] Checking for camera pi updates...
[2026-06-19 05:10:56,103.103 INFO    ] 200
[2026-06-19 05:10:56,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:10:56,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:10:56,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:10:56,197.197 INFO    ] No camera update needed
[2026-06-19 05:10:56,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:10:56,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:10:56,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:10:56,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:10:58,254.254 INFO    ] ================================================
[2026-06-19 05:10:58,270.270 INFO    ] Launching Daemon at Fri Jun 19 05:10:58 IST 2026
[2026-06-19 05:10:58,281.281 INFO    ] ================================================
[2026-06-19 05:10:58,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:10:58
[2026-06-19 05:10:59,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:10:59,798.798 INFO    ] Initializing speech engine...
[2026-06-19 05:10:59,803.803 INFO    ] 2026-06-19 05:10:59
[2026-06-19 05:11:00,060.060 INFO    ] 2026-06-19 05:11:00
[2026-06-19 05:11:00,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:11:00,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:11:00,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:11:00,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:11:00,493.493 INFO    ] time= 19/06/2026 05:11:00
[2026-06-19 05:11:00,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:11:00,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:11:00,671.671 INFO    ] No existing commands found in stream
[2026-06-19 05:11:05,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:11:05,686.686 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 05:11:09,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:11:09,772.772 INFO    ] Checking for system updates...
[2026-06-19 05:11:09,811.811 INFO    ] 200
[2026-06-19 05:11:09,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:09,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:11:09,873.873 INFO    ] No update needed
[2026-06-19 05:11:09,876.876 INFO    ] Checking for camera pi updates...
[2026-06-19 05:11:09,911.911 INFO    ] 200
[2026-06-19 05:11:09,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:09,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:11:10,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:11:10,008.008 INFO    ] No camera update needed
[2026-06-19 05:11:10,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:11:10,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:11:10,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:11:10,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:11:12,069.069 INFO    ] ================================================
[2026-06-19 05:11:12,084.084 INFO    ] Launching Daemon at Fri Jun 19 05:11:12 IST 2026
[2026-06-19 05:11:12,095.095 INFO    ] ================================================
[2026-06-19 05:11:12,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:11:12
[2026-06-19 05:11:13,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:11:13,541.541 INFO    ] Initializing speech engine...
[2026-06-19 05:11:13,548.548 INFO    ] 2026-06-19 05:11:13
[2026-06-19 05:11:13,809.809 INFO    ] 2026-06-19 05:11:13
[2026-06-19 05:11:13,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:11:14,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:11:14,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:11:14,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:11:14,265.265 INFO    ] time= 19/06/2026 05:11:14
[2026-06-19 05:11:14,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:11:14,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:11:14,415.415 INFO    ] No existing commands found in stream
[2026-06-19 05:11:19,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:11:19,443.443 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 05:11:23,287.287 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:11:23,290.290 INFO    ] Checking for system updates...
[2026-06-19 05:11:23,326.326 INFO    ] 200
[2026-06-19 05:11:23,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:23,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:11:23,391.391 INFO    ] No update needed
[2026-06-19 05:11:23,394.394 INFO    ] Checking for camera pi updates...
[2026-06-19 05:11:23,427.427 INFO    ] 200
[2026-06-19 05:11:23,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:23,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:11:23,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:11:23,524.524 INFO    ] No camera update needed
[2026-06-19 05:11:23,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:11:23,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:11:23,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:11:23,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:11:25,580.580 INFO    ] ================================================
[2026-06-19 05:11:25,596.596 INFO    ] Launching Daemon at Fri Jun 19 05:11:25 IST 2026
[2026-06-19 05:11:25,607.607 INFO    ] ================================================
[2026-06-19 05:11:26,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:11:26
[2026-06-19 05:11:26,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:11:27,137.137 INFO    ] Initializing speech engine...
[2026-06-19 05:11:27,160.160 INFO    ] 2026-06-19 05:11:27
[2026-06-19 05:11:27,426.426 INFO    ] 2026-06-19 05:11:27
[2026-06-19 05:11:27,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:11:27,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:11:27,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:11:27,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:11:27,898.898 INFO    ] time= 19/06/2026 05:11:27
[2026-06-19 05:11:27,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:11:28,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:11:28,063.063 INFO    ] No existing commands found in stream
[2026-06-19 05:11:33,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:11:33,080.080 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 05:11:36,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:11:36,078.078 INFO    ] Checking for system updates...
[2026-06-19 05:11:36,116.116 INFO    ] 200
[2026-06-19 05:11:36,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:36,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:11:36,174.174 INFO    ] No update needed
[2026-06-19 05:11:36,177.177 INFO    ] Checking for camera pi updates...
[2026-06-19 05:11:36,214.214 INFO    ] 200
[2026-06-19 05:11:36,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:36,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:11:36,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:11:36,404.404 INFO    ] No camera update needed
[2026-06-19 05:11:36,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:11:36,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:11:36,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:11:36,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:11:38,461.461 INFO    ] ================================================
[2026-06-19 05:11:38,477.477 INFO    ] Launching Daemon at Fri Jun 19 05:11:38 IST 2026
[2026-06-19 05:11:38,488.488 INFO    ] ================================================
[2026-06-19 05:11:39,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:11:39
[2026-06-19 05:11:39,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:11:40,043.043 INFO    ] Initializing speech engine...
[2026-06-19 05:11:40,056.056 INFO    ] 2026-06-19 05:11:40
[2026-06-19 05:11:40,330.330 INFO    ] 2026-06-19 05:11:40
[2026-06-19 05:11:40,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:11:40,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:11:40,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:11:40,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:11:40,765.765 INFO    ] time= 19/06/2026 05:11:40
[2026-06-19 05:11:40,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:11:40,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:11:40,936.936 INFO    ] No existing commands found in stream
[2026-06-19 05:11:45,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:11:45,950.950 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 05:11:47,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:11:47,744.744 INFO    ] Checking for system updates...
[2026-06-19 05:11:47,781.781 INFO    ] 200
[2026-06-19 05:11:47,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:47,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:11:47,841.841 INFO    ] No update needed
[2026-06-19 05:11:47,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 05:11:47,878.878 INFO    ] 200
[2026-06-19 05:11:47,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:47,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:11:47,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:11:47,964.964 INFO    ] No camera update needed
[2026-06-19 05:11:47,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:11:47,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:11:47,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:11:47,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:11:50,022.022 INFO    ] ================================================
[2026-06-19 05:11:50,037.037 INFO    ] Launching Daemon at Fri Jun 19 05:11:50 IST 2026
[2026-06-19 05:11:50,048.048 INFO    ] ================================================
[2026-06-19 05:11:50,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:11:50
[2026-06-19 05:11:51,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:11:51,460.460 INFO    ] Initializing speech engine...
[2026-06-19 05:11:51,485.485 INFO    ] 2026-06-19 05:11:51
[2026-06-19 05:11:51,751.751 INFO    ] 2026-06-19 05:11:51
[2026-06-19 05:11:51,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:11:51,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:11:51,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:11:52,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:11:52,115.115 INFO    ] time= 19/06/2026 05:11:52
[2026-06-19 05:11:52,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:11:52,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:11:52,235.235 INFO    ] No existing commands found in stream
[2026-06-19 05:11:57,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:11:57,250.250 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 05:11:58,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:11:58,912.912 INFO    ] Checking for system updates...
[2026-06-19 05:11:58,951.951 INFO    ] 200
[2026-06-19 05:11:58,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:59,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:11:59,010.010 INFO    ] No update needed
[2026-06-19 05:11:59,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 05:11:59,049.049 INFO    ] 200
[2026-06-19 05:11:59,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:11:59,091.091 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:11:59,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:11:59,140.140 INFO    ] No camera update needed
[2026-06-19 05:11:59,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:11:59,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:11:59,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:11:59,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:12:01,195.195 INFO    ] ================================================
[2026-06-19 05:12:01,210.210 INFO    ] Launching Daemon at Fri Jun 19 05:12:01 IST 2026
[2026-06-19 05:12:01,222.222 INFO    ] ================================================
[2026-06-19 05:12:01,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:12:01
[2026-06-19 05:12:02,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:12:02,952.952 INFO    ] Initializing speech engine...
[2026-06-19 05:12:02,958.958 INFO    ] 2026-06-19 05:12:02
[2026-06-19 05:12:03,250.250 INFO    ] 2026-06-19 05:12:03
[2026-06-19 05:12:03,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:12:03,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:12:03,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:12:03,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:12:03,632.632 INFO    ] time= 19/06/2026 05:12:03
[2026-06-19 05:12:03,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:12:03,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:12:03,756.756 INFO    ] No existing commands found in stream
[2026-06-19 05:12:08,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:12:08,768.768 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 05:12:09,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:12:09,209.209 INFO    ] Checking for system updates...
[2026-06-19 05:12:09,246.246 INFO    ] 200
[2026-06-19 05:12:09,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:09,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:12:09,308.308 INFO    ] No update needed
[2026-06-19 05:12:09,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 05:12:09,344.344 INFO    ] 200
[2026-06-19 05:12:09,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:09,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:12:09,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:12:09,433.433 INFO    ] No camera update needed
[2026-06-19 05:12:09,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:12:09,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:12:09,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:12:09,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:12:11,488.488 INFO    ] ================================================
[2026-06-19 05:12:11,504.504 INFO    ] Launching Daemon at Fri Jun 19 05:12:11 IST 2026
[2026-06-19 05:12:11,514.514 INFO    ] ================================================
[2026-06-19 05:12:12,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:12:12
[2026-06-19 05:12:12,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:12:12,980.980 INFO    ] Initializing speech engine...
[2026-06-19 05:12:12,990.990 INFO    ] 2026-06-19 05:12:12
[2026-06-19 05:12:13,257.257 INFO    ] 2026-06-19 05:12:13
[2026-06-19 05:12:13,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:12:13,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:12:13,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:12:13,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:12:13,631.631 INFO    ] time= 19/06/2026 05:12:13
[2026-06-19 05:12:13,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:12:13,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:12:13,754.754 INFO    ] No existing commands found in stream
[2026-06-19 05:12:18,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:12:18,769.769 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 05:12:19,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:12:19,458.458 INFO    ] Checking for system updates...
[2026-06-19 05:12:19,495.495 INFO    ] 200
[2026-06-19 05:12:19,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:19,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:12:19,554.554 INFO    ] No update needed
[2026-06-19 05:12:19,557.557 INFO    ] Checking for camera pi updates...
[2026-06-19 05:12:19,594.594 INFO    ] 200
[2026-06-19 05:12:19,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:19,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:12:19,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:12:19,669.669 INFO    ] No camera update needed
[2026-06-19 05:12:19,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:12:19,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:12:19,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:12:19,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:12:21,726.726 INFO    ] ================================================
[2026-06-19 05:12:21,741.741 INFO    ] Launching Daemon at Fri Jun 19 05:12:21 IST 2026
[2026-06-19 05:12:21,752.752 INFO    ] ================================================
[2026-06-19 05:12:22,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:12:22
[2026-06-19 05:12:22,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:12:23,183.183 INFO    ] Initializing speech engine...
[2026-06-19 05:12:23,198.198 INFO    ] 2026-06-19 05:12:23
[2026-06-19 05:12:23,466.466 INFO    ] 2026-06-19 05:12:23
[2026-06-19 05:12:23,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:12:23,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:12:23,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:12:23,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:12:23,934.934 INFO    ] time= 19/06/2026 05:12:23
[2026-06-19 05:12:23,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:12:24,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:12:24,102.102 INFO    ] No existing commands found in stream
[2026-06-19 05:12:29,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:12:29,117.117 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 05:12:30,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:12:30,015.015 INFO    ] Checking for system updates...
[2026-06-19 05:12:30,053.053 INFO    ] 200
[2026-06-19 05:12:30,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:30,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:12:30,120.120 INFO    ] No update needed
[2026-06-19 05:12:30,122.122 INFO    ] Checking for camera pi updates...
[2026-06-19 05:12:30,160.160 INFO    ] 200
[2026-06-19 05:12:30,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:30,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:12:30,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:12:30,255.255 INFO    ] No camera update needed
[2026-06-19 05:12:30,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:12:30,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:12:30,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:12:30,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:12:32,314.314 INFO    ] ================================================
[2026-06-19 05:12:32,330.330 INFO    ] Launching Daemon at Fri Jun 19 05:12:32 IST 2026
[2026-06-19 05:12:32,342.342 INFO    ] ================================================
[2026-06-19 05:12:32,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:12:32
[2026-06-19 05:12:33,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:12:33,811.811 INFO    ] Initializing speech engine...
[2026-06-19 05:12:33,822.822 INFO    ] 2026-06-19 05:12:33
[2026-06-19 05:12:34,071.071 INFO    ] 2026-06-19 05:12:34
[2026-06-19 05:12:34,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:12:34,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:12:34,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:12:34,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:12:34,543.543 INFO    ] time= 19/06/2026 05:12:34
[2026-06-19 05:12:34,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:12:34,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:12:34,705.705 INFO    ] No existing commands found in stream
[2026-06-19 05:12:39,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:12:39,719.719 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 05:12:43,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:12:43,636.636 INFO    ] Checking for system updates...
[2026-06-19 05:12:43,673.673 INFO    ] 200
[2026-06-19 05:12:43,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:43,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:12:43,730.730 INFO    ] No update needed
[2026-06-19 05:12:43,732.732 INFO    ] Checking for camera pi updates...
[2026-06-19 05:12:43,766.766 INFO    ] 200
[2026-06-19 05:12:43,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:43,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:12:43,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:12:43,864.864 INFO    ] No camera update needed
[2026-06-19 05:12:43,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:12:43,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:12:43,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:12:43,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:12:45,921.921 INFO    ] ================================================
[2026-06-19 05:12:45,936.936 INFO    ] Launching Daemon at Fri Jun 19 05:12:45 IST 2026
[2026-06-19 05:12:45,947.947 INFO    ] ================================================
[2026-06-19 05:12:46,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:12:46
[2026-06-19 05:12:47,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:12:47,354.354 INFO    ] Initializing speech engine...
[2026-06-19 05:12:47,360.360 INFO    ] 2026-06-19 05:12:47
[2026-06-19 05:12:47,656.656 INFO    ] 2026-06-19 05:12:47
[2026-06-19 05:12:47,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:12:47,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:12:47,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:12:48,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:12:48,079.079 INFO    ] time= 19/06/2026 05:12:48
[2026-06-19 05:12:48,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:12:48,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:12:48,228.228 INFO    ] No existing commands found in stream
[2026-06-19 05:12:53,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:12:53,261.261 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 05:12:54,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:12:54,122.122 INFO    ] Checking for system updates...
[2026-06-19 05:12:54,159.159 INFO    ] 200
[2026-06-19 05:12:54,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:54,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:12:54,217.217 INFO    ] No update needed
[2026-06-19 05:12:54,220.220 INFO    ] Checking for camera pi updates...
[2026-06-19 05:12:54,254.254 INFO    ] 200
[2026-06-19 05:12:54,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:12:54,302.302 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:12:54,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:12:54,347.347 INFO    ] No camera update needed
[2026-06-19 05:12:54,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:12:54,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:12:54,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:12:54,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:12:56,401.401 INFO    ] ================================================
[2026-06-19 05:12:56,416.416 INFO    ] Launching Daemon at Fri Jun 19 05:12:56 IST 2026
[2026-06-19 05:12:56,427.427 INFO    ] ================================================
[2026-06-19 05:12:57,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:12:56
[2026-06-19 05:12:57,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:12:57,862.862 INFO    ] Initializing speech engine...
[2026-06-19 05:12:57,869.869 INFO    ] 2026-06-19 05:12:57
[2026-06-19 05:12:58,124.124 INFO    ] 2026-06-19 05:12:58
[2026-06-19 05:12:58,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:12:58,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:12:58,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:12:58,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:12:58,480.480 INFO    ] time= 19/06/2026 05:12:58
[2026-06-19 05:12:58,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:12:58,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:12:58,581.581 INFO    ] No existing commands found in stream
[2026-06-19 05:13:03,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:13:03,614.614 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 05:13:07,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:13:07,772.772 INFO    ] Checking for system updates...
[2026-06-19 05:13:07,812.812 INFO    ] 200
[2026-06-19 05:13:07,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:13:07,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:13:07,869.869 INFO    ] No update needed
[2026-06-19 05:13:07,872.872 INFO    ] Checking for camera pi updates...
[2026-06-19 05:13:07,913.913 INFO    ] 200
[2026-06-19 05:13:07,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:13:07,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:13:08,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:13:08,007.007 INFO    ] No camera update needed
[2026-06-19 05:13:08,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:13:08,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:13:08,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:13:08,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:13:10,063.063 INFO    ] ================================================
[2026-06-19 05:13:10,079.079 INFO    ] Launching Daemon at Fri Jun 19 05:13:10 IST 2026
[2026-06-19 05:13:10,090.090 INFO    ] ================================================
[2026-06-19 05:13:10,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:13:10
[2026-06-19 05:13:11,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:13:11,620.620 INFO    ] Initializing speech engine...
[2026-06-19 05:13:11,643.643 INFO    ] 2026-06-19 05:13:11
[2026-06-19 05:13:11,896.896 INFO    ] 2026-06-19 05:13:11
[2026-06-19 05:13:11,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:13:12,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:13:12,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:13:12,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:13:12,264.264 INFO    ] time= 19/06/2026 05:13:12
[2026-06-19 05:13:12,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:13:12,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:13:12,440.440 INFO    ] No existing commands found in stream
[2026-06-19 05:13:17,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:13:17,469.469 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 05:13:20,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:13:20,550.550 INFO    ] Checking for system updates...
[2026-06-19 05:13:20,587.587 INFO    ] 200
[2026-06-19 05:13:20,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:13:20,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:13:20,649.649 INFO    ] No update needed
[2026-06-19 05:13:20,651.651 INFO    ] Checking for camera pi updates...
[2026-06-19 05:13:20,686.686 INFO    ] 200
[2026-06-19 05:13:20,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:13:20,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:13:20,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:13:20,780.780 INFO    ] No camera update needed
[2026-06-19 05:13:20,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:13:20,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:13:20,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:13:20,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:13:22,836.836 INFO    ] ================================================
[2026-06-19 05:13:22,851.851 INFO    ] Launching Daemon at Fri Jun 19 05:13:22 IST 2026
[2026-06-19 05:13:22,861.861 INFO    ] ================================================
[2026-06-19 05:13:23,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:13:23
[2026-06-19 05:13:24,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:13:24,504.504 INFO    ] Initializing speech engine...
[2026-06-19 05:13:24,516.516 INFO    ] 2026-06-19 05:13:24
[2026-06-19 05:13:24,794.794 INFO    ] 2026-06-19 05:13:24
[2026-06-19 05:13:24,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:13:25,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:13:25,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:13:25,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:13:25,294.294 INFO    ] time= 19/06/2026 05:13:25
[2026-06-19 05:13:25,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:13:25,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:13:25,487.487 INFO    ] No existing commands found in stream
[2026-06-19 05:13:30,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:13:30,524.524 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-19 05:13:33,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:13:33,909.909 INFO    ] Checking for system updates...
[2026-06-19 05:13:33,951.951 INFO    ] 200
[2026-06-19 05:13:33,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:13:34,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:13:34,013.013 INFO    ] No update needed
[2026-06-19 05:13:34,016.016 INFO    ] Checking for camera pi updates...
[2026-06-19 05:13:34,055.055 INFO    ] 200
[2026-06-19 05:13:34,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:13:34,100.100 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:13:34,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:13:34,143.143 INFO    ] No camera update needed
[2026-06-19 05:13:34,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:13:34,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:13:34,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:13:34,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:13:36,202.202 INFO    ] ================================================
[2026-06-19 05:13:36,216.216 INFO    ] Launching Daemon at Fri Jun 19 05:13:36 IST 2026
[2026-06-19 05:13:36,227.227 INFO    ] ================================================
[2026-06-19 05:13:36,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:13:36
[2026-06-19 05:13:37,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:13:37,660.660 INFO    ] Initializing speech engine...
[2026-06-19 05:13:37,670.670 INFO    ] 2026-06-19 05:13:37
[2026-06-19 05:13:37,919.919 INFO    ] 2026-06-19 05:13:37
[2026-06-19 05:13:37,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:13:38,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:13:38,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:13:38,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:13:38,262.262 INFO    ] time= 19/06/2026 05:13:38
[2026-06-19 05:13:38,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:13:38,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:13:38,377.377 INFO    ] No existing commands found in stream
[2026-06-19 05:13:43,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:13:43,411.411 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 05:13:46,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:13:46,734.734 INFO    ] Checking for system updates...
[2026-06-19 05:13:46,770.770 INFO    ] 200
[2026-06-19 05:13:46,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:13:46,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:13:46,828.828 INFO    ] No update needed
[2026-06-19 05:13:46,830.830 INFO    ] Checking for camera pi updates...
[2026-06-19 05:13:46,865.865 INFO    ] 200
[2026-06-19 05:13:46,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:13:46,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:13:47,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:13:47,045.045 INFO    ] No camera update needed
[2026-06-19 05:13:47,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:13:47,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:13:47,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:13:47,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:13:49,103.103 INFO    ] ================================================
[2026-06-19 05:13:49,118.118 INFO    ] Launching Daemon at Fri Jun 19 05:13:49 IST 2026
[2026-06-19 05:13:49,129.129 INFO    ] ================================================
[2026-06-19 05:13:49,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:13:49
[2026-06-19 05:13:50,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:13:50,788.788 INFO    ] Initializing speech engine...
[2026-06-19 05:13:50,797.797 INFO    ] 2026-06-19 05:13:50
[2026-06-19 05:13:51,103.103 INFO    ] 2026-06-19 05:13:51
[2026-06-19 05:13:51,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:13:51,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:13:51,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:13:51,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:13:51,616.616 INFO    ] time= 19/06/2026 05:13:51
[2026-06-19 05:13:51,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:13:51,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:13:51,761.761 INFO    ] No existing commands found in stream
[2026-06-19 05:13:56,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:13:56,788.788 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 05:13:59,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:13:59,919.919 INFO    ] Checking for system updates...
[2026-06-19 05:13:59,957.957 INFO    ] 200
[2026-06-19 05:13:59,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:00,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:14:00,017.017 INFO    ] No update needed
[2026-06-19 05:14:00,020.020 INFO    ] Checking for camera pi updates...
[2026-06-19 05:14:00,056.056 INFO    ] 200
[2026-06-19 05:14:00,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:00,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:14:00,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:14:00,155.155 INFO    ] No camera update needed
[2026-06-19 05:14:00,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:14:00,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:14:00,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:14:00,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:14:02,219.219 INFO    ] ================================================
[2026-06-19 05:14:02,238.238 INFO    ] Launching Daemon at Fri Jun 19 05:14:02 IST 2026
[2026-06-19 05:14:02,251.251 INFO    ] ================================================
[2026-06-19 05:14:02,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:14:02
[2026-06-19 05:14:03,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:14:03,806.806 INFO    ] Initializing speech engine...
[2026-06-19 05:14:03,826.826 INFO    ] 2026-06-19 05:14:03
[2026-06-19 05:14:04,077.077 INFO    ] 2026-06-19 05:14:04
[2026-06-19 05:14:04,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:14:04,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:14:04,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:14:04,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:14:04,454.454 INFO    ] time= 19/06/2026 05:14:04
[2026-06-19 05:14:04,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:14:04,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:14:04,618.618 INFO    ] No existing commands found in stream
[2026-06-19 05:14:09,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:14:09,641.641 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 05:14:12,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:14:12,223.223 INFO    ] Checking for system updates...
[2026-06-19 05:14:12,260.260 INFO    ] 200
[2026-06-19 05:14:12,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:12,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:14:12,317.317 INFO    ] No update needed
[2026-06-19 05:14:12,320.320 INFO    ] Checking for camera pi updates...
[2026-06-19 05:14:12,357.357 INFO    ] 200
[2026-06-19 05:14:12,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:12,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:14:12,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:14:12,447.447 INFO    ] No camera update needed
[2026-06-19 05:14:12,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:14:12,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:14:12,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:14:12,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:14:14,503.503 INFO    ] ================================================
[2026-06-19 05:14:14,519.519 INFO    ] Launching Daemon at Fri Jun 19 05:14:14 IST 2026
[2026-06-19 05:14:14,529.529 INFO    ] ================================================
[2026-06-19 05:14:15,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:14:15
[2026-06-19 05:14:15,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:14:15,941.941 INFO    ] Initializing speech engine...
[2026-06-19 05:14:15,957.957 INFO    ] 2026-06-19 05:14:15
[2026-06-19 05:14:16,235.235 INFO    ] 2026-06-19 05:14:16
[2026-06-19 05:14:16,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:14:16,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:14:16,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:14:16,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:14:16,617.617 INFO    ] time= 19/06/2026 05:14:16
[2026-06-19 05:14:16,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:14:16,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:14:16,793.793 INFO    ] No existing commands found in stream
[2026-06-19 05:14:21,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:14:21,821.821 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 05:14:22,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:14:22,379.379 INFO    ] Checking for system updates...
[2026-06-19 05:14:22,416.416 INFO    ] 200
[2026-06-19 05:14:22,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:22,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:14:22,474.474 INFO    ] No update needed
[2026-06-19 05:14:22,476.476 INFO    ] Checking for camera pi updates...
[2026-06-19 05:14:22,512.512 INFO    ] 200
[2026-06-19 05:14:22,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:22,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:14:22,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:14:22,604.604 INFO    ] No camera update needed
[2026-06-19 05:14:22,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:14:22,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:14:22,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:14:22,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:14:24,661.661 INFO    ] ================================================
[2026-06-19 05:14:24,676.676 INFO    ] Launching Daemon at Fri Jun 19 05:14:24 IST 2026
[2026-06-19 05:14:24,688.688 INFO    ] ================================================
[2026-06-19 05:14:25,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:14:25
[2026-06-19 05:14:25,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:14:26,151.151 INFO    ] Initializing speech engine...
[2026-06-19 05:14:26,160.160 INFO    ] 2026-06-19 05:14:26
[2026-06-19 05:14:26,433.433 INFO    ] 2026-06-19 05:14:26
[2026-06-19 05:14:26,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:14:26,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:14:26,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:14:26,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:14:26,883.883 INFO    ] time= 19/06/2026 05:14:26
[2026-06-19 05:14:26,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:14:26,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:14:27,028.028 INFO    ] No existing commands found in stream
[2026-06-19 05:14:32,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:14:32,050.050 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 05:14:35,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:14:35,420.420 INFO    ] Checking for system updates...
[2026-06-19 05:14:35,456.456 INFO    ] 200
[2026-06-19 05:14:35,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:35,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:14:35,515.515 INFO    ] No update needed
[2026-06-19 05:14:35,517.517 INFO    ] Checking for camera pi updates...
[2026-06-19 05:14:35,552.552 INFO    ] 200
[2026-06-19 05:14:35,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:35,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:14:35,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:14:35,647.647 INFO    ] No camera update needed
[2026-06-19 05:14:35,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:14:35,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:14:35,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:14:35,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:14:37,703.703 INFO    ] ================================================
[2026-06-19 05:14:37,719.719 INFO    ] Launching Daemon at Fri Jun 19 05:14:37 IST 2026
[2026-06-19 05:14:37,730.730 INFO    ] ================================================
[2026-06-19 05:14:38,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:14:38
[2026-06-19 05:14:38,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:14:39,179.179 INFO    ] Initializing speech engine...
[2026-06-19 05:14:39,186.186 INFO    ] 2026-06-19 05:14:39
[2026-06-19 05:14:39,478.478 INFO    ] 2026-06-19 05:14:39
[2026-06-19 05:14:39,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:14:39,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:14:39,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:14:39,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:14:39,868.868 INFO    ] time= 19/06/2026 05:14:39
[2026-06-19 05:14:39,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:14:39,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:14:39,996.996 INFO    ] No existing commands found in stream
[2026-06-19 05:14:45,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:14:45,010.010 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 05:14:47,992.992 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:14:47,995.995 INFO    ] Checking for system updates...
[2026-06-19 05:14:48,032.032 INFO    ] 200
[2026-06-19 05:14:48,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:48,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:14:48,091.091 INFO    ] No update needed
[2026-06-19 05:14:48,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 05:14:48,128.128 INFO    ] 200
[2026-06-19 05:14:48,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:48,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:14:48,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:14:48,203.203 INFO    ] No camera update needed
[2026-06-19 05:14:48,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:14:48,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:14:48,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:14:48,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:14:50,258.258 INFO    ] ================================================
[2026-06-19 05:14:50,273.273 INFO    ] Launching Daemon at Fri Jun 19 05:14:50 IST 2026
[2026-06-19 05:14:50,284.284 INFO    ] ================================================
[2026-06-19 05:14:50,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:14:50
[2026-06-19 05:14:51,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:14:51,684.684 INFO    ] Initializing speech engine...
[2026-06-19 05:14:51,699.699 INFO    ] 2026-06-19 05:14:51
[2026-06-19 05:14:51,965.965 INFO    ] 2026-06-19 05:14:51
[2026-06-19 05:14:52,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:14:52,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:14:52,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:14:52,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:14:52,440.440 INFO    ] time= 19/06/2026 05:14:52
[2026-06-19 05:14:52,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:14:52,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:14:52,592.592 INFO    ] No existing commands found in stream
[2026-06-19 05:14:57,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:14:57,607.607 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 05:14:58,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:14:58,997.997 INFO    ] Checking for system updates...
[2026-06-19 05:14:59,032.032 INFO    ] 200
[2026-06-19 05:14:59,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:59,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:14:59,091.091 INFO    ] No update needed
[2026-06-19 05:14:59,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 05:14:59,128.128 INFO    ] 200
[2026-06-19 05:14:59,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:14:59,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:14:59,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:14:59,210.210 INFO    ] No camera update needed
[2026-06-19 05:14:59,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:14:59,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:14:59,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:14:59,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:15:01,303.303 INFO    ] ================================================
[2026-06-19 05:15:01,334.334 INFO    ] Launching Daemon at Fri Jun 19 05:15:01 IST 2026
[2026-06-19 05:15:01,390.390 INFO    ] ================================================
[2026-06-19 05:15:02,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:15:02
[2026-06-19 05:15:03,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:15:03,583.583 INFO    ] Initializing speech engine...
[2026-06-19 05:15:03,593.593 INFO    ] 2026-06-19 05:15:03
[2026-06-19 05:15:03,858.858 INFO    ] 2026-06-19 05:15:03
[2026-06-19 05:15:03,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:15:04,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:15:04,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:15:04,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:15:04,321.321 INFO    ] time= 19/06/2026 05:15:04
[2026-06-19 05:15:04,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:15:04,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:15:04,489.489 INFO    ] No existing commands found in stream
[2026-06-19 05:15:09,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:15:09,503.503 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 05:15:13,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:15:13,111.111 INFO    ] Checking for system updates...
[2026-06-19 05:15:13,147.147 INFO    ] 200
[2026-06-19 05:15:13,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:15:13,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:15:13,210.210 INFO    ] No update needed
[2026-06-19 05:15:13,212.212 INFO    ] Checking for camera pi updates...
[2026-06-19 05:15:13,246.246 INFO    ] 200
[2026-06-19 05:15:13,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:15:13,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:15:13,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:15:13,346.346 INFO    ] No camera update needed
[2026-06-19 05:15:13,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:15:13,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:15:13,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:15:13,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:15:15,405.405 INFO    ] ================================================
[2026-06-19 05:15:15,427.427 INFO    ] Launching Daemon at Fri Jun 19 05:15:15 IST 2026
[2026-06-19 05:15:15,438.438 INFO    ] ================================================
[2026-06-19 05:15:16,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:15:16
[2026-06-19 05:15:16,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:15:17,065.065 INFO    ] Initializing speech engine...
[2026-06-19 05:15:17,076.076 INFO    ] 2026-06-19 05:15:17
[2026-06-19 05:15:17,360.360 INFO    ] 2026-06-19 05:15:17
[2026-06-19 05:15:17,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:15:17,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:15:17,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:15:17,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:15:17,890.890 INFO    ] time= 19/06/2026 05:15:17
[2026-06-19 05:15:17,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:15:17,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:15:18,027.027 INFO    ] No existing commands found in stream
[2026-06-19 05:15:23,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:15:23,059.059 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 05:15:25,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:15:25,287.287 INFO    ] Checking for system updates...
[2026-06-19 05:15:25,329.329 INFO    ] 200
[2026-06-19 05:15:25,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:15:25,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:15:25,392.392 INFO    ] No update needed
[2026-06-19 05:15:25,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 05:15:25,428.428 INFO    ] 200
[2026-06-19 05:15:25,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:15:25,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:15:25,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:15:25,525.525 INFO    ] No camera update needed
[2026-06-19 05:15:25,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:15:25,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:15:25,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:15:25,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:15:27,579.579 INFO    ] ================================================
[2026-06-19 05:15:27,594.594 INFO    ] Launching Daemon at Fri Jun 19 05:15:27 IST 2026
[2026-06-19 05:15:27,605.605 INFO    ] ================================================
[2026-06-19 05:15:28,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:15:28
[2026-06-19 05:15:28,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:15:29,004.004 INFO    ] Initializing speech engine...
[2026-06-19 05:15:29,012.012 INFO    ] 2026-06-19 05:15:29
[2026-06-19 05:15:29,288.288 INFO    ] 2026-06-19 05:15:29
[2026-06-19 05:15:29,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:15:29,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:15:29,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:15:29,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:15:29,765.765 INFO    ] time= 19/06/2026 05:15:29
[2026-06-19 05:15:29,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:15:29,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:15:29,919.919 INFO    ] No existing commands found in stream
[2026-06-19 05:15:34,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:15:34,933.933 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 05:15:38,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:15:38,224.224 INFO    ] Checking for system updates...
[2026-06-19 05:15:38,261.261 INFO    ] 200
[2026-06-19 05:15:38,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:15:38,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:15:38,319.319 INFO    ] No update needed
[2026-06-19 05:15:38,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 05:15:38,355.355 INFO    ] 200
[2026-06-19 05:15:38,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:15:38,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:15:38,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:15:38,444.444 INFO    ] No camera update needed
[2026-06-19 05:15:38,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:15:38,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:15:38,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:15:38,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:15:40,500.500 INFO    ] ================================================
[2026-06-19 05:15:40,515.515 INFO    ] Launching Daemon at Fri Jun 19 05:15:40 IST 2026
[2026-06-19 05:15:40,526.526 INFO    ] ================================================
[2026-06-19 05:15:41,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:15:41
[2026-06-19 05:15:41,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:15:41,926.926 INFO    ] Initializing speech engine...
[2026-06-19 05:15:41,941.941 INFO    ] 2026-06-19 05:15:41
[2026-06-19 05:15:42,203.203 INFO    ] 2026-06-19 05:15:42
[2026-06-19 05:15:42,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:15:42,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:15:42,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:15:42,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:15:42,669.669 INFO    ] time= 19/06/2026 05:15:42
[2026-06-19 05:15:42,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:15:42,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:15:42,821.821 INFO    ] No existing commands found in stream
[2026-06-19 05:15:47,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:15:47,836.836 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 05:15:49,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:15:49,431.431 INFO    ] Checking for system updates...
[2026-06-19 05:15:49,467.467 INFO    ] 200
[2026-06-19 05:15:49,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:15:49,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:15:49,529.529 INFO    ] No update needed
[2026-06-19 05:15:49,531.531 INFO    ] Checking for camera pi updates...
[2026-06-19 05:15:49,565.565 INFO    ] 200
[2026-06-19 05:15:49,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:15:49,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:15:49,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:15:49,747.747 INFO    ] No camera update needed
[2026-06-19 05:15:49,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:15:49,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:15:49,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:15:49,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:15:51,804.804 INFO    ] ================================================
[2026-06-19 05:15:51,820.820 INFO    ] Launching Daemon at Fri Jun 19 05:15:51 IST 2026
[2026-06-19 05:15:51,831.831 INFO    ] ================================================
[2026-06-19 05:15:52,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:15:52
[2026-06-19 05:15:52,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:15:53,237.237 INFO    ] Initializing speech engine...
[2026-06-19 05:15:53,246.246 INFO    ] 2026-06-19 05:15:53
[2026-06-19 05:15:53,534.534 INFO    ] 2026-06-19 05:15:53
[2026-06-19 05:15:53,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:15:53,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:15:53,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:15:53,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:15:53,906.906 INFO    ] time= 19/06/2026 05:15:53
[2026-06-19 05:15:53,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:15:53,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:15:54,027.027 INFO    ] No existing commands found in stream
[2026-06-19 05:15:59,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:15:59,041.041 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 05:16:00,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:16:00,937.937 INFO    ] Checking for system updates...
[2026-06-19 05:16:00,976.976 INFO    ] 200
[2026-06-19 05:16:00,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:01,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:16:01,038.038 INFO    ] No update needed
[2026-06-19 05:16:01,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 05:16:01,075.075 INFO    ] 200
[2026-06-19 05:16:01,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:01,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:16:01,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:16:01,175.175 INFO    ] No camera update needed
[2026-06-19 05:16:01,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:16:01,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:16:01,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:16:01,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:16:03,235.235 INFO    ] ================================================
[2026-06-19 05:16:03,251.251 INFO    ] Launching Daemon at Fri Jun 19 05:16:03 IST 2026
[2026-06-19 05:16:03,266.266 INFO    ] ================================================
[2026-06-19 05:16:03,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:16:03
[2026-06-19 05:16:04,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:16:04,748.748 INFO    ] Initializing speech engine...
[2026-06-19 05:16:04,770.770 INFO    ] 2026-06-19 05:16:04
[2026-06-19 05:16:05,021.021 INFO    ] 2026-06-19 05:16:05
[2026-06-19 05:16:05,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:16:05,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:16:05,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:16:05,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:16:05,503.503 INFO    ] time= 19/06/2026 05:16:05
[2026-06-19 05:16:05,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:16:05,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:16:05,641.641 INFO    ] No existing commands found in stream
[2026-06-19 05:16:10,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:16:10,656.656 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 05:16:11,604.604 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:16:11,606.606 INFO    ] Checking for system updates...
[2026-06-19 05:16:11,642.642 INFO    ] 200
[2026-06-19 05:16:11,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:11,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:16:11,699.699 INFO    ] No update needed
[2026-06-19 05:16:11,702.702 INFO    ] Checking for camera pi updates...
[2026-06-19 05:16:11,737.737 INFO    ] 200
[2026-06-19 05:16:11,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:11,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:16:11,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:16:11,834.834 INFO    ] No camera update needed
[2026-06-19 05:16:11,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:16:11,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:16:11,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:16:11,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:16:13,892.892 INFO    ] ================================================
[2026-06-19 05:16:13,906.906 INFO    ] Launching Daemon at Fri Jun 19 05:16:13 IST 2026
[2026-06-19 05:16:13,917.917 INFO    ] ================================================
[2026-06-19 05:16:14,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:16:14
[2026-06-19 05:16:15,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:16:15,328.328 INFO    ] Initializing speech engine...
[2026-06-19 05:16:15,334.334 INFO    ] 2026-06-19 05:16:15
[2026-06-19 05:16:15,620.620 INFO    ] 2026-06-19 05:16:15
[2026-06-19 05:16:15,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:16:15,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:16:15,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:16:15,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:16:16,002.002 INFO    ] time= 19/06/2026 05:16:15
[2026-06-19 05:16:16,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:16:16,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:16:16,106.106 INFO    ] No existing commands found in stream
[2026-06-19 05:16:21,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:16:21,121.121 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 05:16:24,757.757 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:16:24,760.760 INFO    ] Checking for system updates...
[2026-06-19 05:16:24,798.798 INFO    ] 200
[2026-06-19 05:16:24,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:24,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:16:24,858.858 INFO    ] No update needed
[2026-06-19 05:16:24,860.860 INFO    ] Checking for camera pi updates...
[2026-06-19 05:16:24,897.897 INFO    ] 200
[2026-06-19 05:16:24,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:24,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:16:24,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:16:24,992.992 INFO    ] No camera update needed
[2026-06-19 05:16:24,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:16:24,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:16:25,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:16:25,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:16:27,050.050 INFO    ] ================================================
[2026-06-19 05:16:27,064.064 INFO    ] Launching Daemon at Fri Jun 19 05:16:27 IST 2026
[2026-06-19 05:16:27,075.075 INFO    ] ================================================
[2026-06-19 05:16:27,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:16:27
[2026-06-19 05:16:28,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:16:28,526.526 INFO    ] Initializing speech engine...
[2026-06-19 05:16:28,544.544 INFO    ] 2026-06-19 05:16:28
[2026-06-19 05:16:28,814.814 INFO    ] 2026-06-19 05:16:28
[2026-06-19 05:16:28,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:16:29,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:16:29,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:16:29,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:16:29,203.203 INFO    ] time= 19/06/2026 05:16:29
[2026-06-19 05:16:29,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:16:29,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:16:29,310.310 INFO    ] No existing commands found in stream
[2026-06-19 05:16:34,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:16:34,325.325 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-19 05:16:37,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:16:37,877.877 INFO    ] Checking for system updates...
[2026-06-19 05:16:37,913.913 INFO    ] 200
[2026-06-19 05:16:37,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:37,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:16:37,973.973 INFO    ] No update needed
[2026-06-19 05:16:37,976.976 INFO    ] Checking for camera pi updates...
[2026-06-19 05:16:38,011.011 INFO    ] 200
[2026-06-19 05:16:38,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:38,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:16:38,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:16:38,108.108 INFO    ] No camera update needed
[2026-06-19 05:16:38,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:16:38,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:16:38,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:16:38,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:16:40,165.165 INFO    ] ================================================
[2026-06-19 05:16:40,180.180 INFO    ] Launching Daemon at Fri Jun 19 05:16:40 IST 2026
[2026-06-19 05:16:40,191.191 INFO    ] ================================================
[2026-06-19 05:16:40,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:16:40
[2026-06-19 05:16:41,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:16:41,749.749 INFO    ] Initializing speech engine...
[2026-06-19 05:16:41,758.758 INFO    ] 2026-06-19 05:16:41
[2026-06-19 05:16:42,025.025 INFO    ] 2026-06-19 05:16:42
[2026-06-19 05:16:42,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:16:42,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:16:42,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:16:42,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:16:42,503.503 INFO    ] time= 19/06/2026 05:16:42
[2026-06-19 05:16:42,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:16:42,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:16:42,645.645 INFO    ] No existing commands found in stream
[2026-06-19 05:16:47,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:16:47,660.660 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 05:16:51,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:16:51,318.318 INFO    ] Checking for system updates...
[2026-06-19 05:16:51,355.355 INFO    ] 200
[2026-06-19 05:16:51,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:51,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:16:51,416.416 INFO    ] No update needed
[2026-06-19 05:16:51,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 05:16:51,453.453 INFO    ] 200
[2026-06-19 05:16:51,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:16:51,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:16:51,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:16:51,540.540 INFO    ] No camera update needed
[2026-06-19 05:16:51,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:16:51,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:16:51,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:16:51,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:16:53,594.594 INFO    ] ================================================
[2026-06-19 05:16:53,609.609 INFO    ] Launching Daemon at Fri Jun 19 05:16:53 IST 2026
[2026-06-19 05:16:53,620.620 INFO    ] ================================================
[2026-06-19 05:16:54,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:16:54
[2026-06-19 05:16:54,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:16:55,193.193 INFO    ] Initializing speech engine...
[2026-06-19 05:16:55,207.207 INFO    ] 2026-06-19 05:16:55
[2026-06-19 05:16:55,514.514 INFO    ] 2026-06-19 05:16:55
[2026-06-19 05:16:55,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:16:55,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:16:55,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:16:55,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:16:56,023.023 INFO    ] time= 19/06/2026 05:16:55
[2026-06-19 05:16:56,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:16:56,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:16:56,177.177 INFO    ] No existing commands found in stream
[2026-06-19 05:17:01,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:17:01,197.197 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 05:17:04,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:17:04,881.881 INFO    ] Checking for system updates...
[2026-06-19 05:17:04,918.918 INFO    ] 200
[2026-06-19 05:17:04,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:04,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:17:04,977.977 INFO    ] No update needed
[2026-06-19 05:17:04,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 05:17:05,013.013 INFO    ] 200
[2026-06-19 05:17:05,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:05,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:17:05,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:17:05,109.109 INFO    ] No camera update needed
[2026-06-19 05:17:05,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:17:05,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:17:05,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:17:05,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:17:07,164.164 INFO    ] ================================================
[2026-06-19 05:17:07,236.236 INFO    ] Launching Daemon at Fri Jun 19 05:17:07 IST 2026
[2026-06-19 05:17:07,247.247 INFO    ] ================================================
[2026-06-19 05:17:07,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:17:07
[2026-06-19 05:17:08,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:17:08,667.667 INFO    ] Initializing speech engine...
[2026-06-19 05:17:08,675.675 INFO    ] 2026-06-19 05:17:08
[2026-06-19 05:17:08,966.966 INFO    ] 2026-06-19 05:17:08
[2026-06-19 05:17:09,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:17:09,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:17:09,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:17:09,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:17:09,332.332 INFO    ] time= 19/06/2026 05:17:09
[2026-06-19 05:17:09,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:17:09,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:17:09,453.453 INFO    ] No existing commands found in stream
[2026-06-19 05:17:14,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:17:14,470.470 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 05:17:16,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:17:16,103.103 INFO    ] Checking for system updates...
[2026-06-19 05:17:16,139.139 INFO    ] 200
[2026-06-19 05:17:16,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:16,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:17:16,197.197 INFO    ] No update needed
[2026-06-19 05:17:16,200.200 INFO    ] Checking for camera pi updates...
[2026-06-19 05:17:16,233.233 INFO    ] 200
[2026-06-19 05:17:16,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:16,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:17:16,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:17:16,329.329 INFO    ] No camera update needed
[2026-06-19 05:17:16,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:17:16,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:17:16,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:17:16,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:17:18,388.388 INFO    ] ================================================
[2026-06-19 05:17:18,405.405 INFO    ] Launching Daemon at Fri Jun 19 05:17:18 IST 2026
[2026-06-19 05:17:18,416.416 INFO    ] ================================================
[2026-06-19 05:17:19,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:17:19
[2026-06-19 05:17:19,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:17:19,975.975 INFO    ] Initializing speech engine...
[2026-06-19 05:17:19,983.983 INFO    ] 2026-06-19 05:17:19
[2026-06-19 05:17:20,249.249 INFO    ] 2026-06-19 05:17:20
[2026-06-19 05:17:20,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:17:20,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:17:20,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:17:20,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:17:20,732.732 INFO    ] time= 19/06/2026 05:17:20
[2026-06-19 05:17:20,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:17:20,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:17:20,933.933 INFO    ] No existing commands found in stream
[2026-06-19 05:17:25,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:17:25,964.964 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 05:17:27,490.490 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:17:27,493.493 INFO    ] Checking for system updates...
[2026-06-19 05:17:27,529.529 INFO    ] 200
[2026-06-19 05:17:27,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:27,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:17:27,588.588 INFO    ] No update needed
[2026-06-19 05:17:27,591.591 INFO    ] Checking for camera pi updates...
[2026-06-19 05:17:27,625.625 INFO    ] 200
[2026-06-19 05:17:27,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:27,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:17:27,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:17:27,717.717 INFO    ] No camera update needed
[2026-06-19 05:17:27,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:17:27,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:17:27,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:17:27,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:17:29,777.777 INFO    ] ================================================
[2026-06-19 05:17:29,792.792 INFO    ] Launching Daemon at Fri Jun 19 05:17:29 IST 2026
[2026-06-19 05:17:29,803.803 INFO    ] ================================================
[2026-06-19 05:17:30,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:17:30
[2026-06-19 05:17:30,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:17:31,219.219 INFO    ] Initializing speech engine...
[2026-06-19 05:17:31,227.227 INFO    ] 2026-06-19 05:17:31
[2026-06-19 05:17:31,518.518 INFO    ] 2026-06-19 05:17:31
[2026-06-19 05:17:31,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:17:31,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:17:31,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:17:31,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:17:31,892.892 INFO    ] time= 19/06/2026 05:17:31
[2026-06-19 05:17:31,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:17:31,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:17:32,014.014 INFO    ] No existing commands found in stream
[2026-06-19 05:17:37,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:17:37,027.027 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 05:17:37,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:17:37,969.969 INFO    ] Checking for system updates...
[2026-06-19 05:17:38,006.006 INFO    ] 200
[2026-06-19 05:17:38,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:38,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:17:38,064.064 INFO    ] No update needed
[2026-06-19 05:17:38,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 05:17:38,101.101 INFO    ] 200
[2026-06-19 05:17:38,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:38,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:17:38,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:17:38,194.194 INFO    ] No camera update needed
[2026-06-19 05:17:38,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:17:38,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:17:38,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:17:38,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:17:40,249.249 INFO    ] ================================================
[2026-06-19 05:17:40,265.265 INFO    ] Launching Daemon at Fri Jun 19 05:17:40 IST 2026
[2026-06-19 05:17:40,275.275 INFO    ] ================================================
[2026-06-19 05:17:40,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:17:40
[2026-06-19 05:17:41,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:17:41,719.719 INFO    ] Initializing speech engine...
[2026-06-19 05:17:41,740.740 INFO    ] 2026-06-19 05:17:41
[2026-06-19 05:17:42,005.005 INFO    ] 2026-06-19 05:17:41
[2026-06-19 05:17:42,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:17:42,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:17:42,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:17:42,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:17:42,386.386 INFO    ] time= 19/06/2026 05:17:42
[2026-06-19 05:17:42,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:17:42,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:17:42,490.490 INFO    ] No existing commands found in stream
[2026-06-19 05:17:47,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:17:47,505.505 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 05:17:50,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:17:50,145.145 INFO    ] Checking for system updates...
[2026-06-19 05:17:50,182.182 INFO    ] 200
[2026-06-19 05:17:50,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:50,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:17:50,249.249 INFO    ] No update needed
[2026-06-19 05:17:50,252.252 INFO    ] Checking for camera pi updates...
[2026-06-19 05:17:50,286.286 INFO    ] 200
[2026-06-19 05:17:50,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:17:50,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:17:50,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:17:50,373.373 INFO    ] No camera update needed
[2026-06-19 05:17:50,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:17:50,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:17:50,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:17:50,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:17:52,428.428 INFO    ] ================================================
[2026-06-19 05:17:52,443.443 INFO    ] Launching Daemon at Fri Jun 19 05:17:52 IST 2026
[2026-06-19 05:17:52,454.454 INFO    ] ================================================
[2026-06-19 05:17:53,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:17:53
[2026-06-19 05:17:53,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:17:54,017.017 INFO    ] Initializing speech engine...
[2026-06-19 05:17:54,026.026 INFO    ] 2026-06-19 05:17:54
[2026-06-19 05:17:54,273.273 INFO    ] 2026-06-19 05:17:54
[2026-06-19 05:17:54,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:17:54,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:17:54,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:17:54,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:17:54,749.749 INFO    ] time= 19/06/2026 05:17:54
[2026-06-19 05:17:54,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:17:54,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:17:54,893.893 INFO    ] No existing commands found in stream
[2026-06-19 05:17:59,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:17:59,908.908 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 05:18:00,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:18:00,861.861 INFO    ] Checking for system updates...
[2026-06-19 05:18:00,900.900 INFO    ] 200
[2026-06-19 05:18:00,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:00,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:18:00,957.957 INFO    ] No update needed
[2026-06-19 05:18:00,959.959 INFO    ] Checking for camera pi updates...
[2026-06-19 05:18:00,996.996 INFO    ] 200
[2026-06-19 05:18:00,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:01,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:18:01,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:18:01,196.196 INFO    ] No camera update needed
[2026-06-19 05:18:01,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:18:01,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:18:01,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:18:01,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:18:03,269.269 INFO    ] ================================================
[2026-06-19 05:18:03,284.284 INFO    ] Launching Daemon at Fri Jun 19 05:18:03 IST 2026
[2026-06-19 05:18:03,294.294 INFO    ] ================================================
[2026-06-19 05:18:03,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:18:03
[2026-06-19 05:18:04,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:18:04,735.735 INFO    ] Initializing speech engine...
[2026-06-19 05:18:04,753.753 INFO    ] 2026-06-19 05:18:04
[2026-06-19 05:18:05,003.003 INFO    ] 2026-06-19 05:18:04
[2026-06-19 05:18:05,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:18:05,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:18:05,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:18:05,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:18:05,367.367 INFO    ] time= 19/06/2026 05:18:05
[2026-06-19 05:18:05,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:18:05,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:18:05,488.488 INFO    ] No existing commands found in stream
[2026-06-19 05:18:10,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:18:10,500.500 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 05:18:12,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:18:12,506.506 INFO    ] Checking for system updates...
[2026-06-19 05:18:12,542.542 INFO    ] 200
[2026-06-19 05:18:12,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:12,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:18:12,601.601 INFO    ] No update needed
[2026-06-19 05:18:12,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 05:18:12,642.642 INFO    ] 200
[2026-06-19 05:18:12,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:12,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:18:12,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:18:12,740.740 INFO    ] No camera update needed
[2026-06-19 05:18:12,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:18:12,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:18:12,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:18:12,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:18:14,796.796 INFO    ] ================================================
[2026-06-19 05:18:14,811.811 INFO    ] Launching Daemon at Fri Jun 19 05:18:14 IST 2026
[2026-06-19 05:18:14,822.822 INFO    ] ================================================
[2026-06-19 05:18:15,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:18:15
[2026-06-19 05:18:16,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:18:16,375.375 INFO    ] Initializing speech engine...
[2026-06-19 05:18:16,383.383 INFO    ] 2026-06-19 05:18:16
[2026-06-19 05:18:16,664.664 INFO    ] 2026-06-19 05:18:16
[2026-06-19 05:18:16,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:18:16,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:18:16,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:18:17,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:18:17,118.118 INFO    ] time= 19/06/2026 05:18:17
[2026-06-19 05:18:17,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:18:17,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:18:17,264.264 INFO    ] No existing commands found in stream
[2026-06-19 05:18:22,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:18:22,279.279 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 05:18:24,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:18:24,981.981 INFO    ] Checking for system updates...
[2026-06-19 05:18:25,019.019 INFO    ] 200
[2026-06-19 05:18:25,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:25,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:18:25,079.079 INFO    ] No update needed
[2026-06-19 05:18:25,081.081 INFO    ] Checking for camera pi updates...
[2026-06-19 05:18:25,116.116 INFO    ] 200
[2026-06-19 05:18:25,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:25,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:18:25,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:18:25,209.209 INFO    ] No camera update needed
[2026-06-19 05:18:25,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:18:25,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:18:25,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:18:25,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:18:27,263.263 INFO    ] ================================================
[2026-06-19 05:18:27,279.279 INFO    ] Launching Daemon at Fri Jun 19 05:18:27 IST 2026
[2026-06-19 05:18:27,290.290 INFO    ] ================================================
[2026-06-19 05:18:27,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:18:27
[2026-06-19 05:18:28,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:18:28,811.811 INFO    ] Initializing speech engine...
[2026-06-19 05:18:28,818.818 INFO    ] 2026-06-19 05:18:28
[2026-06-19 05:18:29,088.088 INFO    ] 2026-06-19 05:18:29
[2026-06-19 05:18:29,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:18:29,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:18:29,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:18:29,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:18:29,565.565 INFO    ] time= 19/06/2026 05:18:29
[2026-06-19 05:18:29,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:18:29,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:18:29,779.779 INFO    ] No existing commands found in stream
[2026-06-19 05:18:34,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:18:34,798.798 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 05:18:38,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:18:38,364.364 INFO    ] Checking for system updates...
[2026-06-19 05:18:38,399.399 INFO    ] 200
[2026-06-19 05:18:38,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:38,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:18:38,461.461 INFO    ] No update needed
[2026-06-19 05:18:38,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 05:18:38,498.498 INFO    ] 200
[2026-06-19 05:18:38,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:38,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:18:38,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:18:38,589.589 INFO    ] No camera update needed
[2026-06-19 05:18:38,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:18:38,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:18:38,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:18:38,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:18:40,647.647 INFO    ] ================================================
[2026-06-19 05:18:40,663.663 INFO    ] Launching Daemon at Fri Jun 19 05:18:40 IST 2026
[2026-06-19 05:18:40,674.674 INFO    ] ================================================
[2026-06-19 05:18:41,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:18:41
[2026-06-19 05:18:41,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:18:42,248.248 INFO    ] Initializing speech engine...
[2026-06-19 05:18:42,262.262 INFO    ] 2026-06-19 05:18:42
[2026-06-19 05:18:42,536.536 INFO    ] 2026-06-19 05:18:42
[2026-06-19 05:18:42,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:18:42,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:18:42,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:18:43,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:18:43,067.067 INFO    ] time= 19/06/2026 05:18:43
[2026-06-19 05:18:43,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:18:43,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:18:43,202.202 INFO    ] No existing commands found in stream
[2026-06-19 05:18:48,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:18:48,233.233 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 05:18:51,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:18:51,263.263 INFO    ] Checking for system updates...
[2026-06-19 05:18:51,300.300 INFO    ] 200
[2026-06-19 05:18:51,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:51,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:18:51,360.360 INFO    ] No update needed
[2026-06-19 05:18:51,362.362 INFO    ] Checking for camera pi updates...
[2026-06-19 05:18:51,397.397 INFO    ] 200
[2026-06-19 05:18:51,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:18:51,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:18:51,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:18:51,492.492 INFO    ] No camera update needed
[2026-06-19 05:18:51,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:18:51,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:18:51,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:18:51,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:18:53,550.550 INFO    ] ================================================
[2026-06-19 05:18:53,566.566 INFO    ] Launching Daemon at Fri Jun 19 05:18:53 IST 2026
[2026-06-19 05:18:53,578.578 INFO    ] ================================================
[2026-06-19 05:18:54,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:18:54
[2026-06-19 05:18:54,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:18:55,015.015 INFO    ] Initializing speech engine...
[2026-06-19 05:18:55,024.024 INFO    ] 2026-06-19 05:18:55
[2026-06-19 05:18:55,276.276 INFO    ] 2026-06-19 05:18:55
[2026-06-19 05:18:55,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:18:55,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:18:55,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:18:55,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:18:55,634.634 INFO    ] time= 19/06/2026 05:18:55
[2026-06-19 05:18:55,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:18:55,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:18:55,730.730 INFO    ] No existing commands found in stream
[2026-06-19 05:19:00,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:19:00,745.745 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 05:19:03,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:19:03,693.693 INFO    ] Checking for system updates...
[2026-06-19 05:19:03,729.729 INFO    ] 200
[2026-06-19 05:19:03,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:03,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:03,786.786 INFO    ] No update needed
[2026-06-19 05:19:03,789.789 INFO    ] Checking for camera pi updates...
[2026-06-19 05:19:03,823.823 INFO    ] 200
[2026-06-19 05:19:03,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:03,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:19:03,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:03,911.911 INFO    ] No camera update needed
[2026-06-19 05:19:03,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:19:03,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:19:03,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:19:03,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:19:05,968.968 INFO    ] ================================================
[2026-06-19 05:19:05,988.988 INFO    ] Launching Daemon at Fri Jun 19 05:19:05 IST 2026
[2026-06-19 05:19:06,000.000 INFO    ] ================================================
[2026-06-19 05:19:06,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:19:06
[2026-06-19 05:19:07,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:19:07,504.504 INFO    ] Initializing speech engine...
[2026-06-19 05:19:07,510.510 INFO    ] 2026-06-19 05:19:07
[2026-06-19 05:19:07,835.835 INFO    ] 2026-06-19 05:19:07
[2026-06-19 05:19:07,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:19:08,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:19:08,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:19:08,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:19:08,236.236 INFO    ] time= 19/06/2026 05:19:08
[2026-06-19 05:19:08,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:19:08,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:19:08,366.366 INFO    ] No existing commands found in stream
[2026-06-19 05:19:13,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:19:13,382.382 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 05:19:16,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:19:16,751.751 INFO    ] Checking for system updates...
[2026-06-19 05:19:16,788.788 INFO    ] 200
[2026-06-19 05:19:16,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:16,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:16,846.846 INFO    ] No update needed
[2026-06-19 05:19:16,848.848 INFO    ] Checking for camera pi updates...
[2026-06-19 05:19:16,883.883 INFO    ] 200
[2026-06-19 05:19:16,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:16,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:19:16,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:16,984.984 INFO    ] No camera update needed
[2026-06-19 05:19:16,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:19:16,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:19:16,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:19:16,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:19:19,044.044 INFO    ] ================================================
[2026-06-19 05:19:19,060.060 INFO    ] Launching Daemon at Fri Jun 19 05:19:19 IST 2026
[2026-06-19 05:19:19,071.071 INFO    ] ================================================
[2026-06-19 05:19:19,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:19:19
[2026-06-19 05:19:20,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:19:20,487.487 INFO    ] Initializing speech engine...
[2026-06-19 05:19:20,493.493 INFO    ] 2026-06-19 05:19:20
[2026-06-19 05:19:20,784.784 INFO    ] 2026-06-19 05:19:20
[2026-06-19 05:19:20,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:19:21,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:19:21,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:19:21,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:19:21,199.199 INFO    ] time= 19/06/2026 05:19:21
[2026-06-19 05:19:21,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:19:21,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:19:21,290.290 INFO    ] No existing commands found in stream
[2026-06-19 05:19:26,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:19:26,309.309 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 05:19:28,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:19:28,708.708 INFO    ] Checking for system updates...
[2026-06-19 05:19:28,745.745 INFO    ] 200
[2026-06-19 05:19:28,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:28,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:28,809.809 INFO    ] No update needed
[2026-06-19 05:19:28,812.812 INFO    ] Checking for camera pi updates...
[2026-06-19 05:19:28,847.847 INFO    ] 200
[2026-06-19 05:19:28,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:28,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:19:28,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:28,937.937 INFO    ] No camera update needed
[2026-06-19 05:19:28,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:19:28,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:19:28,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:19:28,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:19:30,992.992 INFO    ] ================================================
[2026-06-19 05:19:31,007.007 INFO    ] Launching Daemon at Fri Jun 19 05:19:31 IST 2026
[2026-06-19 05:19:31,018.018 INFO    ] ================================================
[2026-06-19 05:19:31,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:19:31
[2026-06-19 05:19:32,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:19:32,531.531 INFO    ] Initializing speech engine...
[2026-06-19 05:19:32,548.548 INFO    ] 2026-06-19 05:19:32
[2026-06-19 05:19:32,842.842 INFO    ] 2026-06-19 05:19:32
[2026-06-19 05:19:32,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:19:33,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:19:33,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:19:33,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:19:33,222.222 INFO    ] time= 19/06/2026 05:19:33
[2026-06-19 05:19:33,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:19:33,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:19:33,306.306 INFO    ] No existing commands found in stream
[2026-06-19 05:19:38,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:19:38,326.326 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 05:19:42,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:19:42,198.198 INFO    ] Checking for system updates...
[2026-06-19 05:19:42,240.240 INFO    ] 200
[2026-06-19 05:19:42,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:42,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:42,300.300 INFO    ] No update needed
[2026-06-19 05:19:42,302.302 INFO    ] Checking for camera pi updates...
[2026-06-19 05:19:42,342.342 INFO    ] 200
[2026-06-19 05:19:42,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:42,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:19:42,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:42,438.438 INFO    ] No camera update needed
[2026-06-19 05:19:42,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:19:42,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:19:42,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:19:42,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:19:44,500.500 INFO    ] ================================================
[2026-06-19 05:19:44,516.516 INFO    ] Launching Daemon at Fri Jun 19 05:19:44 IST 2026
[2026-06-19 05:19:44,526.526 INFO    ] ================================================
[2026-06-19 05:19:45,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:19:45
[2026-06-19 05:19:45,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:19:46,024.024 INFO    ] Initializing speech engine...
[2026-06-19 05:19:46,037.037 INFO    ] 2026-06-19 05:19:46
[2026-06-19 05:19:46,306.306 INFO    ] 2026-06-19 05:19:46
[2026-06-19 05:19:46,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:19:46,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:19:46,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:19:46,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:19:46,769.769 INFO    ] time= 19/06/2026 05:19:46
[2026-06-19 05:19:46,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:19:46,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:19:46,901.901 INFO    ] No existing commands found in stream
[2026-06-19 05:19:51,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:19:51,917.917 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 05:19:54,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:19:54,104.104 INFO    ] Checking for system updates...
[2026-06-19 05:19:54,140.140 INFO    ] 200
[2026-06-19 05:19:54,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:54,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:54,205.205 INFO    ] No update needed
[2026-06-19 05:19:54,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 05:19:54,241.241 INFO    ] 200
[2026-06-19 05:19:54,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:19:54,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:19:54,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:19:54,343.343 INFO    ] No camera update needed
[2026-06-19 05:19:54,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:19:54,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:19:54,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:19:54,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:19:56,401.401 INFO    ] ================================================
[2026-06-19 05:19:56,416.416 INFO    ] Launching Daemon at Fri Jun 19 05:19:56 IST 2026
[2026-06-19 05:19:56,426.426 INFO    ] ================================================
[2026-06-19 05:19:56,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:19:56
[2026-06-19 05:19:57,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:19:57,838.838 INFO    ] Initializing speech engine...
[2026-06-19 05:19:57,844.844 INFO    ] 2026-06-19 05:19:57
[2026-06-19 05:19:58,129.129 INFO    ] 2026-06-19 05:19:58
[2026-06-19 05:19:58,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:19:58,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:19:58,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:19:58,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:19:58,513.513 INFO    ] time= 19/06/2026 05:19:58
[2026-06-19 05:19:58,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:19:58,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:19:58,667.667 INFO    ] No existing commands found in stream
[2026-06-19 05:20:03,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:20:03,700.700 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 05:20:07,260.260 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:20:07,263.263 INFO    ] Checking for system updates...
[2026-06-19 05:20:07,299.299 INFO    ] 200
[2026-06-19 05:20:07,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:07,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:20:07,358.358 INFO    ] No update needed
[2026-06-19 05:20:07,361.361 INFO    ] Checking for camera pi updates...
[2026-06-19 05:20:07,395.395 INFO    ] 200
[2026-06-19 05:20:07,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:07,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:20:07,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:20:07,596.596 INFO    ] No camera update needed
[2026-06-19 05:20:07,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:20:07,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:20:07,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:20:07,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:20:09,657.657 INFO    ] ================================================
[2026-06-19 05:20:09,672.672 INFO    ] Launching Daemon at Fri Jun 19 05:20:09 IST 2026
[2026-06-19 05:20:09,682.682 INFO    ] ================================================
[2026-06-19 05:20:10,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:20:10
[2026-06-19 05:20:11,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:20:11,348.348 INFO    ] Initializing speech engine...
[2026-06-19 05:20:11,353.353 INFO    ] 2026-06-19 05:20:11
[2026-06-19 05:20:11,665.665 INFO    ] 2026-06-19 05:20:11
[2026-06-19 05:20:11,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:20:11,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:20:11,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:20:12,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:20:12,182.182 INFO    ] time= 19/06/2026 05:20:12
[2026-06-19 05:20:12,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:20:12,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:20:12,341.341 INFO    ] No existing commands found in stream
[2026-06-19 05:20:17,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:20:17,361.361 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 05:20:18,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:20:18,026.026 INFO    ] Checking for system updates...
[2026-06-19 05:20:18,062.062 INFO    ] 200
[2026-06-19 05:20:18,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:18,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:20:18,127.127 INFO    ] No update needed
[2026-06-19 05:20:18,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 05:20:18,166.166 INFO    ] 200
[2026-06-19 05:20:18,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:18,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:20:18,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:20:18,251.251 INFO    ] No camera update needed
[2026-06-19 05:20:18,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:20:18,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:20:18,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:20:18,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:20:20,308.308 INFO    ] ================================================
[2026-06-19 05:20:20,323.323 INFO    ] Launching Daemon at Fri Jun 19 05:20:20 IST 2026
[2026-06-19 05:20:20,333.333 INFO    ] ================================================
[2026-06-19 05:20:20,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:20:20
[2026-06-19 05:20:21,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:20:21,784.784 INFO    ] Initializing speech engine...
[2026-06-19 05:20:21,793.793 INFO    ] 2026-06-19 05:20:21
[2026-06-19 05:20:22,049.049 INFO    ] 2026-06-19 05:20:22
[2026-06-19 05:20:22,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:20:22,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:20:22,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:20:22,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:20:22,536.536 INFO    ] time= 19/06/2026 05:20:22
[2026-06-19 05:20:22,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:20:22,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:20:22,661.661 INFO    ] No existing commands found in stream
[2026-06-19 05:20:27,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:20:27,676.676 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 05:20:29,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:20:29,774.774 INFO    ] Checking for system updates...
[2026-06-19 05:20:29,811.811 INFO    ] 200
[2026-06-19 05:20:29,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:29,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:20:29,868.868 INFO    ] No update needed
[2026-06-19 05:20:29,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 05:20:29,909.909 INFO    ] 200
[2026-06-19 05:20:29,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:29,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:20:29,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:20:29,998.998 INFO    ] No camera update needed
[2026-06-19 05:20:30,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:20:30,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:20:30,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:20:30,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:20:32,057.057 INFO    ] ================================================
[2026-06-19 05:20:32,073.073 INFO    ] Launching Daemon at Fri Jun 19 05:20:32 IST 2026
[2026-06-19 05:20:32,085.085 INFO    ] ================================================
[2026-06-19 05:20:32,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:20:32
[2026-06-19 05:20:33,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:20:33,628.628 INFO    ] Initializing speech engine...
[2026-06-19 05:20:33,638.638 INFO    ] 2026-06-19 05:20:33
[2026-06-19 05:20:33,897.897 INFO    ] 2026-06-19 05:20:33
[2026-06-19 05:20:33,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:20:34,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:20:34,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:20:34,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:20:34,376.376 INFO    ] time= 19/06/2026 05:20:34
[2026-06-19 05:20:34,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:20:34,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:20:34,506.506 INFO    ] No existing commands found in stream
[2026-06-19 05:20:39,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:20:39,530.530 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 05:20:43,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:20:43,279.279 INFO    ] Checking for system updates...
[2026-06-19 05:20:43,316.316 INFO    ] 200
[2026-06-19 05:20:43,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:43,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:20:43,374.374 INFO    ] No update needed
[2026-06-19 05:20:43,376.376 INFO    ] Checking for camera pi updates...
[2026-06-19 05:20:43,410.410 INFO    ] 200
[2026-06-19 05:20:43,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:43,455.455 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:20:43,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:20:43,506.506 INFO    ] No camera update needed
[2026-06-19 05:20:43,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:20:43,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:20:43,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:20:43,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:20:45,561.561 INFO    ] ================================================
[2026-06-19 05:20:45,576.576 INFO    ] Launching Daemon at Fri Jun 19 05:20:45 IST 2026
[2026-06-19 05:20:45,587.587 INFO    ] ================================================
[2026-06-19 05:20:46,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:20:46
[2026-06-19 05:20:46,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:20:47,069.069 INFO    ] Initializing speech engine...
[2026-06-19 05:20:47,077.077 INFO    ] 2026-06-19 05:20:47
[2026-06-19 05:20:47,352.352 INFO    ] 2026-06-19 05:20:47
[2026-06-19 05:20:47,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:20:47,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:20:47,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:20:47,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:20:47,817.817 INFO    ] time= 19/06/2026 05:20:47
[2026-06-19 05:20:47,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:20:47,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:20:47,986.986 INFO    ] No existing commands found in stream
[2026-06-19 05:20:52,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:20:53,001.001 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 05:20:55,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:20:55,427.427 INFO    ] Checking for system updates...
[2026-06-19 05:20:55,468.468 INFO    ] 200
[2026-06-19 05:20:55,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:55,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:20:55,532.532 INFO    ] No update needed
[2026-06-19 05:20:55,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 05:20:55,568.568 INFO    ] 200
[2026-06-19 05:20:55,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:20:55,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:20:55,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:20:55,643.643 INFO    ] No camera update needed
[2026-06-19 05:20:55,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:20:55,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:20:55,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:20:55,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:20:57,701.701 INFO    ] ================================================
[2026-06-19 05:20:57,716.716 INFO    ] Launching Daemon at Fri Jun 19 05:20:57 IST 2026
[2026-06-19 05:20:57,727.727 INFO    ] ================================================
[2026-06-19 05:20:58,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:20:58
[2026-06-19 05:20:58,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:20:59,295.295 INFO    ] Initializing speech engine...
[2026-06-19 05:20:59,308.308 INFO    ] 2026-06-19 05:20:59
[2026-06-19 05:20:59,575.575 INFO    ] 2026-06-19 05:20:59
[2026-06-19 05:20:59,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:20:59,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:20:59,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:20:59,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:21:00,041.041 INFO    ] time= 19/06/2026 05:20:59
[2026-06-19 05:21:00,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:21:00,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:21:00,198.198 INFO    ] No existing commands found in stream
[2026-06-19 05:21:05,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:21:05,239.239 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 05:21:06,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:21:06,589.589 INFO    ] Checking for system updates...
[2026-06-19 05:21:06,626.626 INFO    ] 200
[2026-06-19 05:21:06,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:06,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:21:06,691.691 INFO    ] No update needed
[2026-06-19 05:21:06,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 05:21:06,728.728 INFO    ] 200
[2026-06-19 05:21:06,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:06,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:21:06,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:21:06,837.837 INFO    ] No camera update needed
[2026-06-19 05:21:06,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:21:06,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:21:06,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:21:06,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:21:08,908.908 INFO    ] ================================================
[2026-06-19 05:21:08,924.924 INFO    ] Launching Daemon at Fri Jun 19 05:21:08 IST 2026
[2026-06-19 05:21:08,935.935 INFO    ] ================================================
[2026-06-19 05:21:09,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:21:09
[2026-06-19 05:21:10,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:21:10,483.483 INFO    ] Initializing speech engine...
[2026-06-19 05:21:10,492.492 INFO    ] 2026-06-19 05:21:10
[2026-06-19 05:21:10,755.755 INFO    ] 2026-06-19 05:21:10
[2026-06-19 05:21:10,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:21:11,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:21:11,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:21:11,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:21:11,210.210 INFO    ] time= 19/06/2026 05:21:11
[2026-06-19 05:21:11,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:21:11,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:21:11,361.361 INFO    ] No existing commands found in stream
[2026-06-19 05:21:16,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:21:16,376.376 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 05:21:19,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:21:19,542.542 INFO    ] Checking for system updates...
[2026-06-19 05:21:19,579.579 INFO    ] 200
[2026-06-19 05:21:19,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:19,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:21:19,637.637 INFO    ] No update needed
[2026-06-19 05:21:19,640.640 INFO    ] Checking for camera pi updates...
[2026-06-19 05:21:19,684.684 INFO    ] 200
[2026-06-19 05:21:19,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:19,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:21:19,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:21:19,779.779 INFO    ] No camera update needed
[2026-06-19 05:21:19,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:21:19,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:21:19,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:21:19,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:21:21,836.836 INFO    ] ================================================
[2026-06-19 05:21:21,851.851 INFO    ] Launching Daemon at Fri Jun 19 05:21:21 IST 2026
[2026-06-19 05:21:21,862.862 INFO    ] ================================================
[2026-06-19 05:21:22,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:21:22
[2026-06-19 05:21:23,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:21:23,277.277 INFO    ] Initializing speech engine...
[2026-06-19 05:21:23,293.293 INFO    ] 2026-06-19 05:21:23
[2026-06-19 05:21:23,557.557 INFO    ] 2026-06-19 05:21:23
[2026-06-19 05:21:23,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:21:23,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:21:23,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:21:23,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:21:23,945.945 INFO    ] time= 19/06/2026 05:21:23
[2026-06-19 05:21:23,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:21:23,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:21:24,073.073 INFO    ] No existing commands found in stream
[2026-06-19 05:21:29,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:21:29,088.088 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 05:21:33,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:21:33,237.237 INFO    ] Checking for system updates...
[2026-06-19 05:21:33,273.273 INFO    ] 200
[2026-06-19 05:21:33,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:33,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:21:33,331.331 INFO    ] No update needed
[2026-06-19 05:21:33,333.333 INFO    ] Checking for camera pi updates...
[2026-06-19 05:21:33,367.367 INFO    ] 200
[2026-06-19 05:21:33,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:33,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:21:33,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:21:33,460.460 INFO    ] No camera update needed
[2026-06-19 05:21:33,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:21:33,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:21:33,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:21:33,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:21:35,516.516 INFO    ] ================================================
[2026-06-19 05:21:35,532.532 INFO    ] Launching Daemon at Fri Jun 19 05:21:35 IST 2026
[2026-06-19 05:21:35,542.542 INFO    ] ================================================
[2026-06-19 05:21:36,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:21:36
[2026-06-19 05:21:36,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:21:36,964.964 INFO    ] Initializing speech engine...
[2026-06-19 05:21:36,984.984 INFO    ] 2026-06-19 05:21:36
[2026-06-19 05:21:37,235.235 INFO    ] 2026-06-19 05:21:37
[2026-06-19 05:21:37,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:21:37,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:21:37,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:21:37,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:21:37,617.617 INFO    ] time= 19/06/2026 05:21:37
[2026-06-19 05:21:37,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:21:37,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:21:37,782.782 INFO    ] No existing commands found in stream
[2026-06-19 05:21:42,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:21:42,815.815 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 05:21:45,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:21:45,321.321 INFO    ] Checking for system updates...
[2026-06-19 05:21:45,357.357 INFO    ] 200
[2026-06-19 05:21:45,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:45,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:21:45,415.415 INFO    ] No update needed
[2026-06-19 05:21:45,418.418 INFO    ] Checking for camera pi updates...
[2026-06-19 05:21:45,452.452 INFO    ] 200
[2026-06-19 05:21:45,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:45,495.495 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:21:45,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:21:45,545.545 INFO    ] No camera update needed
[2026-06-19 05:21:45,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:21:45,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:21:45,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:21:45,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:21:47,602.602 INFO    ] ================================================
[2026-06-19 05:21:47,617.617 INFO    ] Launching Daemon at Fri Jun 19 05:21:47 IST 2026
[2026-06-19 05:21:47,628.628 INFO    ] ================================================
[2026-06-19 05:21:48,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:21:48
[2026-06-19 05:21:48,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:21:49,055.055 INFO    ] Initializing speech engine...
[2026-06-19 05:21:49,063.063 INFO    ] 2026-06-19 05:21:49
[2026-06-19 05:21:49,314.314 INFO    ] 2026-06-19 05:21:49
[2026-06-19 05:21:49,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:21:49,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:21:49,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:21:49,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:21:49,670.670 INFO    ] time= 19/06/2026 05:21:49
[2026-06-19 05:21:49,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:21:49,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:21:49,768.768 INFO    ] No existing commands found in stream
[2026-06-19 05:21:54,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:21:54,796.796 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 05:21:58,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:21:58,405.405 INFO    ] Checking for system updates...
[2026-06-19 05:21:58,449.449 INFO    ] 200
[2026-06-19 05:21:58,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:58,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:21:58,514.514 INFO    ] No update needed
[2026-06-19 05:21:58,517.517 INFO    ] Checking for camera pi updates...
[2026-06-19 05:21:58,555.555 INFO    ] 200
[2026-06-19 05:21:58,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:21:58,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:21:58,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:21:58,650.650 INFO    ] No camera update needed
[2026-06-19 05:21:58,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:21:58,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:21:58,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:21:58,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:22:00,708.708 INFO    ] ================================================
[2026-06-19 05:22:00,723.723 INFO    ] Launching Daemon at Fri Jun 19 05:22:00 IST 2026
[2026-06-19 05:22:00,734.734 INFO    ] ================================================
[2026-06-19 05:22:01,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:22:01
[2026-06-19 05:22:01,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:22:02,474.474 INFO    ] Initializing speech engine...
[2026-06-19 05:22:02,481.481 INFO    ] 2026-06-19 05:22:02
[2026-06-19 05:22:02,875.875 INFO    ] 2026-06-19 05:22:02
[2026-06-19 05:22:02,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:22:03,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:22:03,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:22:03,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:22:03,284.284 INFO    ] time= 19/06/2026 05:22:03
[2026-06-19 05:22:03,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:22:03,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:22:03,447.447 INFO    ] No existing commands found in stream
[2026-06-19 05:22:08,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:22:08,460.460 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 05:22:12,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:22:12,096.096 INFO    ] Checking for system updates...
[2026-06-19 05:22:12,136.136 INFO    ] 200
[2026-06-19 05:22:12,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:22:12,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:22:12,193.193 INFO    ] No update needed
[2026-06-19 05:22:12,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 05:22:12,229.229 INFO    ] 200
[2026-06-19 05:22:12,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:22:12,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:22:12,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:22:12,427.427 INFO    ] No camera update needed
[2026-06-19 05:22:12,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:22:12,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:22:12,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:22:12,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:22:14,483.483 INFO    ] ================================================
[2026-06-19 05:22:14,498.498 INFO    ] Launching Daemon at Fri Jun 19 05:22:14 IST 2026
[2026-06-19 05:22:14,508.508 INFO    ] ================================================
[2026-06-19 05:22:15,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:22:15
[2026-06-19 05:22:15,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:22:16,067.067 INFO    ] Initializing speech engine...
[2026-06-19 05:22:16,074.074 INFO    ] 2026-06-19 05:22:16
[2026-06-19 05:22:16,355.355 INFO    ] 2026-06-19 05:22:16
[2026-06-19 05:22:16,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:22:16,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:22:16,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:22:16,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:22:16,829.829 INFO    ] time= 19/06/2026 05:22:16
[2026-06-19 05:22:16,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:22:16,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:22:16,972.972 INFO    ] No existing commands found in stream
[2026-06-19 05:22:21,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:22:21,989.989 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-19 05:22:26,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:22:26,414.414 INFO    ] Checking for system updates...
[2026-06-19 05:22:26,453.453 INFO    ] 200
[2026-06-19 05:22:26,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:22:26,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:22:26,513.513 INFO    ] No update needed
[2026-06-19 05:22:26,515.515 INFO    ] Checking for camera pi updates...
[2026-06-19 05:22:26,553.553 INFO    ] 200
[2026-06-19 05:22:26,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:22:26,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:22:26,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:22:26,643.643 INFO    ] No camera update needed
[2026-06-19 05:22:26,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:22:26,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:22:26,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:22:26,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:22:28,698.698 INFO    ] ================================================
[2026-06-19 05:22:28,714.714 INFO    ] Launching Daemon at Fri Jun 19 05:22:28 IST 2026
[2026-06-19 05:22:28,725.725 INFO    ] ================================================
[2026-06-19 05:22:29,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:22:29
[2026-06-19 05:22:29,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:22:30,191.191 INFO    ] Initializing speech engine...
[2026-06-19 05:22:30,199.199 INFO    ] 2026-06-19 05:22:30
[2026-06-19 05:22:30,469.469 INFO    ] 2026-06-19 05:22:30
[2026-06-19 05:22:30,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:22:30,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:22:30,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:22:30,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:22:30,853.853 INFO    ] time= 19/06/2026 05:22:30
[2026-06-19 05:22:30,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:22:30,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:22:30,964.964 INFO    ] No existing commands found in stream
[2026-06-19 05:22:35,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:22:35,980.980 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 05:22:37,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:22:37,219.219 INFO    ] Checking for system updates...
[2026-06-19 05:22:37,255.255 INFO    ] 200
[2026-06-19 05:22:37,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:22:37,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:22:37,313.313 INFO    ] No update needed
[2026-06-19 05:22:37,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 05:22:37,349.349 INFO    ] 200
[2026-06-19 05:22:37,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:22:37,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:22:37,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:22:37,449.449 INFO    ] No camera update needed
[2026-06-19 05:22:37,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:22:37,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:22:37,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:22:37,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:22:39,504.504 INFO    ] ================================================
[2026-06-19 05:22:39,520.520 INFO    ] Launching Daemon at Fri Jun 19 05:22:39 IST 2026
[2026-06-19 05:22:39,532.532 INFO    ] ================================================
[2026-06-19 05:22:40,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:22:40
[2026-06-19 05:22:40,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:22:41,093.093 INFO    ] Initializing speech engine...
[2026-06-19 05:22:41,105.105 INFO    ] 2026-06-19 05:22:41
[2026-06-19 05:22:41,392.392 INFO    ] 2026-06-19 05:22:41
[2026-06-19 05:22:41,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:22:41,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:22:41,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:22:41,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:22:41,853.853 INFO    ] time= 19/06/2026 05:22:41
[2026-06-19 05:22:41,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:22:41,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:22:42,065.065 INFO    ] No existing commands found in stream
[2026-06-19 05:22:47,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:22:47,105.105 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 05:22:50,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:22:50,875.875 INFO    ] Checking for system updates...
[2026-06-19 05:22:50,912.912 INFO    ] 200
[2026-06-19 05:22:50,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:22:50,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:22:50,973.973 INFO    ] No update needed
[2026-06-19 05:22:50,976.976 INFO    ] Checking for camera pi updates...
[2026-06-19 05:22:51,011.011 INFO    ] 200
[2026-06-19 05:22:51,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:22:51,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:22:51,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:22:51,106.106 INFO    ] No camera update needed
[2026-06-19 05:22:51,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:22:51,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:22:51,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:22:51,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:22:53,166.166 INFO    ] ================================================
[2026-06-19 05:22:53,182.182 INFO    ] Launching Daemon at Fri Jun 19 05:22:53 IST 2026
[2026-06-19 05:22:53,193.193 INFO    ] ================================================
[2026-06-19 05:22:53,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:22:53
[2026-06-19 05:22:54,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:22:54,653.653 INFO    ] Initializing speech engine...
[2026-06-19 05:22:54,664.664 INFO    ] 2026-06-19 05:22:54
[2026-06-19 05:22:54,910.910 INFO    ] 2026-06-19 05:22:54
[2026-06-19 05:22:54,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:22:55,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:22:55,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:22:55,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:22:55,297.297 INFO    ] time= 19/06/2026 05:22:55
[2026-06-19 05:22:55,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:22:55,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:22:55,428.428 INFO    ] No existing commands found in stream
[2026-06-19 05:23:00,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:23:00,442.442 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 05:23:03,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:23:03,420.420 INFO    ] Checking for system updates...
[2026-06-19 05:23:03,465.465 INFO    ] 200
[2026-06-19 05:23:03,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:03,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:03,535.535 INFO    ] No update needed
[2026-06-19 05:23:03,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 05:23:03,572.572 INFO    ] 200
[2026-06-19 05:23:03,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:03,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:23:03,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:03,692.692 INFO    ] No camera update needed
[2026-06-19 05:23:03,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:23:03,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:23:03,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:23:03,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:23:05,752.752 INFO    ] ================================================
[2026-06-19 05:23:05,768.768 INFO    ] Launching Daemon at Fri Jun 19 05:23:05 IST 2026
[2026-06-19 05:23:05,779.779 INFO    ] ================================================
[2026-06-19 05:23:06,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:23:06
[2026-06-19 05:23:06,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:23:07,232.232 INFO    ] Initializing speech engine...
[2026-06-19 05:23:07,246.246 INFO    ] 2026-06-19 05:23:07
[2026-06-19 05:23:07,514.514 INFO    ] 2026-06-19 05:23:07
[2026-06-19 05:23:07,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:23:07,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:23:07,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:23:07,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:23:07,996.996 INFO    ] time= 19/06/2026 05:23:07
[2026-06-19 05:23:08,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:23:08,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:23:08,151.151 INFO    ] No existing commands found in stream
[2026-06-19 05:23:13,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:23:13,184.184 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 05:23:14,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:23:14,837.837 INFO    ] Checking for system updates...
[2026-06-19 05:23:14,877.877 INFO    ] 200
[2026-06-19 05:23:14,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:14,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:14,936.936 INFO    ] No update needed
[2026-06-19 05:23:14,939.939 INFO    ] Checking for camera pi updates...
[2026-06-19 05:23:14,974.974 INFO    ] 200
[2026-06-19 05:23:14,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:15,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:23:15,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:15,082.082 INFO    ] No camera update needed
[2026-06-19 05:23:15,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:23:15,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:23:15,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:23:15,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:23:17,142.142 INFO    ] ================================================
[2026-06-19 05:23:17,158.158 INFO    ] Launching Daemon at Fri Jun 19 05:23:17 IST 2026
[2026-06-19 05:23:17,170.170 INFO    ] ================================================
[2026-06-19 05:23:17,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:23:17
[2026-06-19 05:23:18,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:23:18,574.574 INFO    ] Initializing speech engine...
[2026-06-19 05:23:18,589.589 INFO    ] 2026-06-19 05:23:18
[2026-06-19 05:23:18,867.867 INFO    ] 2026-06-19 05:23:18
[2026-06-19 05:23:18,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:23:19,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:23:19,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:23:19,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:23:19,247.247 INFO    ] time= 19/06/2026 05:23:19
[2026-06-19 05:23:19,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:23:19,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:23:19,407.407 INFO    ] No existing commands found in stream
[2026-06-19 05:23:24,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:23:24,435.435 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 05:23:25,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:23:25,782.782 INFO    ] Checking for system updates...
[2026-06-19 05:23:25,818.818 INFO    ] 200
[2026-06-19 05:23:25,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:25,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:25,879.879 INFO    ] No update needed
[2026-06-19 05:23:25,882.882 INFO    ] Checking for camera pi updates...
[2026-06-19 05:23:25,916.916 INFO    ] 200
[2026-06-19 05:23:25,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:25,965.965 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:23:26,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:26,009.009 INFO    ] No camera update needed
[2026-06-19 05:23:26,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:23:26,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:23:26,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:23:26,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:23:28,070.070 INFO    ] ================================================
[2026-06-19 05:23:28,086.086 INFO    ] Launching Daemon at Fri Jun 19 05:23:28 IST 2026
[2026-06-19 05:23:28,096.096 INFO    ] ================================================
[2026-06-19 05:23:28,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:23:28
[2026-06-19 05:23:29,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:23:29,556.556 INFO    ] Initializing speech engine...
[2026-06-19 05:23:29,572.572 INFO    ] 2026-06-19 05:23:29
[2026-06-19 05:23:29,861.861 INFO    ] 2026-06-19 05:23:29
[2026-06-19 05:23:29,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:23:30,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:23:30,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:23:30,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:23:30,282.282 INFO    ] time= 19/06/2026 05:23:30
[2026-06-19 05:23:30,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:23:30,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:23:30,371.371 INFO    ] No existing commands found in stream
[2026-06-19 05:23:35,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:23:35,387.387 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 05:23:35,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:23:35,828.828 INFO    ] Checking for system updates...
[2026-06-19 05:23:35,871.871 INFO    ] 200
[2026-06-19 05:23:35,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:35,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:35,928.928 INFO    ] No update needed
[2026-06-19 05:23:35,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 05:23:35,964.964 INFO    ] 200
[2026-06-19 05:23:35,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:36,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:23:36,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:36,052.052 INFO    ] No camera update needed
[2026-06-19 05:23:36,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:23:36,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:23:36,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:23:36,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:23:38,109.109 INFO    ] ================================================
[2026-06-19 05:23:38,124.124 INFO    ] Launching Daemon at Fri Jun 19 05:23:38 IST 2026
[2026-06-19 05:23:38,135.135 INFO    ] ================================================
[2026-06-19 05:23:38,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:23:38
[2026-06-19 05:23:39,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:23:39,570.570 INFO    ] Initializing speech engine...
[2026-06-19 05:23:39,583.583 INFO    ] 2026-06-19 05:23:39
[2026-06-19 05:23:39,834.834 INFO    ] 2026-06-19 05:23:39
[2026-06-19 05:23:39,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:23:40,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:23:40,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:23:40,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:23:40,313.313 INFO    ] time= 19/06/2026 05:23:40
[2026-06-19 05:23:40,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:23:40,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:23:40,468.468 INFO    ] No existing commands found in stream
[2026-06-19 05:23:45,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:23:45,483.483 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 05:23:46,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:23:46,239.239 INFO    ] Checking for system updates...
[2026-06-19 05:23:46,281.281 INFO    ] 200
[2026-06-19 05:23:46,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:46,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:46,339.339 INFO    ] No update needed
[2026-06-19 05:23:46,341.341 INFO    ] Checking for camera pi updates...
[2026-06-19 05:23:46,375.375 INFO    ] 200
[2026-06-19 05:23:46,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:46,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:23:46,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:46,453.453 INFO    ] No camera update needed
[2026-06-19 05:23:46,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:23:46,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:23:46,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:23:46,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:23:48,511.511 INFO    ] ================================================
[2026-06-19 05:23:48,526.526 INFO    ] Launching Daemon at Fri Jun 19 05:23:48 IST 2026
[2026-06-19 05:23:48,536.536 INFO    ] ================================================
[2026-06-19 05:23:49,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:23:49
[2026-06-19 05:23:49,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:23:49,953.953 INFO    ] Initializing speech engine...
[2026-06-19 05:23:49,973.973 INFO    ] 2026-06-19 05:23:49
[2026-06-19 05:23:50,224.224 INFO    ] 2026-06-19 05:23:50
[2026-06-19 05:23:50,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:23:50,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:23:50,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:23:50,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:23:50,711.711 INFO    ] time= 19/06/2026 05:23:50
[2026-06-19 05:23:50,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:23:50,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:23:50,856.856 INFO    ] No existing commands found in stream
[2026-06-19 05:23:55,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:23:55,871.871 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 05:23:58,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:23:58,237.237 INFO    ] Checking for system updates...
[2026-06-19 05:23:58,273.273 INFO    ] 200
[2026-06-19 05:23:58,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:58,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:23:58,335.335 INFO    ] No update needed
[2026-06-19 05:23:58,337.337 INFO    ] Checking for camera pi updates...
[2026-06-19 05:23:58,371.371 INFO    ] 200
[2026-06-19 05:23:58,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:23:58,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:23:58,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:23:58,466.466 INFO    ] No camera update needed
[2026-06-19 05:23:58,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:23:58,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:23:58,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:23:58,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:24:00,527.527 INFO    ] ================================================
[2026-06-19 05:24:00,542.542 INFO    ] Launching Daemon at Fri Jun 19 05:24:00 IST 2026
[2026-06-19 05:24:00,553.553 INFO    ] ================================================
[2026-06-19 05:24:01,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:24:01
[2026-06-19 05:24:01,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:24:02,360.360 INFO    ] Initializing speech engine...
[2026-06-19 05:24:02,375.375 INFO    ] 2026-06-19 05:24:02
[2026-06-19 05:24:02,695.695 INFO    ] 2026-06-19 05:24:02
[2026-06-19 05:24:02,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:24:03,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:24:03,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:24:03,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:24:03,200.200 INFO    ] time= 19/06/2026 05:24:03
[2026-06-19 05:24:03,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:24:03,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:24:03,394.394 INFO    ] No existing commands found in stream
[2026-06-19 05:24:08,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:24:08,410.410 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 05:24:11,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:24:11,550.550 INFO    ] Checking for system updates...
[2026-06-19 05:24:11,587.587 INFO    ] 200
[2026-06-19 05:24:11,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:24:11,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:24:11,644.644 INFO    ] No update needed
[2026-06-19 05:24:11,646.646 INFO    ] Checking for camera pi updates...
[2026-06-19 05:24:11,680.680 INFO    ] 200
[2026-06-19 05:24:11,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:24:11,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:24:11,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:24:11,778.778 INFO    ] No camera update needed
[2026-06-19 05:24:11,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:24:11,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:24:11,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:24:11,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:24:13,834.834 INFO    ] ================================================
[2026-06-19 05:24:13,849.849 INFO    ] Launching Daemon at Fri Jun 19 05:24:13 IST 2026
[2026-06-19 05:24:13,860.860 INFO    ] ================================================
[2026-06-19 05:24:14,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:24:14
[2026-06-19 05:24:15,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:24:15,520.520 INFO    ] Initializing speech engine...
[2026-06-19 05:24:15,533.533 INFO    ] 2026-06-19 05:24:15
[2026-06-19 05:24:15,852.852 INFO    ] 2026-06-19 05:24:15
[2026-06-19 05:24:15,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:24:16,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:24:16,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:24:16,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:24:16,375.375 INFO    ] time= 19/06/2026 05:24:16
[2026-06-19 05:24:16,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:24:16,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:24:16,527.527 INFO    ] No existing commands found in stream
[2026-06-19 05:24:21,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:24:21,550.550 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 05:24:23,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:24:23,006.006 INFO    ] Checking for system updates...
[2026-06-19 05:24:23,043.043 INFO    ] 200
[2026-06-19 05:24:23,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:24:23,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:24:23,104.104 INFO    ] No update needed
[2026-06-19 05:24:23,107.107 INFO    ] Checking for camera pi updates...
[2026-06-19 05:24:23,147.147 INFO    ] 200
[2026-06-19 05:24:23,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:24:23,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:24:23,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:24:23,352.352 INFO    ] No camera update needed
[2026-06-19 05:24:23,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:24:23,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:24:23,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:24:23,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:24:25,411.411 INFO    ] ================================================
[2026-06-19 05:24:25,428.428 INFO    ] Launching Daemon at Fri Jun 19 05:24:25 IST 2026
[2026-06-19 05:24:25,439.439 INFO    ] ================================================
[2026-06-19 05:24:26,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:24:26
[2026-06-19 05:24:26,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:24:27,124.124 INFO    ] Initializing speech engine...
[2026-06-19 05:24:27,133.133 INFO    ] 2026-06-19 05:24:27
[2026-06-19 05:24:27,439.439 INFO    ] 2026-06-19 05:24:27
[2026-06-19 05:24:27,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:24:27,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:24:27,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:24:27,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:24:27,958.958 INFO    ] time= 19/06/2026 05:24:27
[2026-06-19 05:24:27,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:24:27,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:24:28,106.106 INFO    ] No existing commands found in stream
[2026-06-19 05:24:33,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:24:33,131.131 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-19 05:24:37,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:24:37,169.169 INFO    ] Checking for system updates...
[2026-06-19 05:24:37,213.213 INFO    ] 200
[2026-06-19 05:24:37,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:24:37,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:24:37,282.282 INFO    ] No update needed
[2026-06-19 05:24:37,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 05:24:37,320.320 INFO    ] 200
[2026-06-19 05:24:37,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:24:37,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:24:37,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:24:37,417.417 INFO    ] No camera update needed
[2026-06-19 05:24:37,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:24:37,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:24:37,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:24:37,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:24:39,472.472 INFO    ] ================================================
[2026-06-19 05:24:39,487.487 INFO    ] Launching Daemon at Fri Jun 19 05:24:39 IST 2026
[2026-06-19 05:24:39,499.499 INFO    ] ================================================
[2026-06-19 05:24:40,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:24:40
[2026-06-19 05:24:40,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:24:41,008.008 INFO    ] Initializing speech engine...
[2026-06-19 05:24:41,031.031 INFO    ] 2026-06-19 05:24:41
[2026-06-19 05:24:41,286.286 INFO    ] 2026-06-19 05:24:41
[2026-06-19 05:24:41,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:24:41,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:24:41,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:24:41,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:24:41,767.767 INFO    ] time= 19/06/2026 05:24:41
[2026-06-19 05:24:41,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:24:41,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:24:41,915.915 INFO    ] No existing commands found in stream
[2026-06-19 05:24:46,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:24:46,930.930 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 05:24:49,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:24:49,652.652 INFO    ] Checking for system updates...
[2026-06-19 05:24:49,688.688 INFO    ] 200
[2026-06-19 05:24:49,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:24:49,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:24:49,745.745 INFO    ] No update needed
[2026-06-19 05:24:49,747.747 INFO    ] Checking for camera pi updates...
[2026-06-19 05:24:49,786.786 INFO    ] 200
[2026-06-19 05:24:49,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:24:49,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:24:49,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:24:49,860.860 INFO    ] No camera update needed
[2026-06-19 05:24:49,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:24:49,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:24:49,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:24:49,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:24:51,918.918 INFO    ] ================================================
[2026-06-19 05:24:51,934.934 INFO    ] Launching Daemon at Fri Jun 19 05:24:51 IST 2026
[2026-06-19 05:24:51,945.945 INFO    ] ================================================
[2026-06-19 05:24:52,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:24:52
[2026-06-19 05:24:53,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:24:53,590.590 INFO    ] Initializing speech engine...
[2026-06-19 05:24:53,602.602 INFO    ] 2026-06-19 05:24:53
[2026-06-19 05:24:53,890.890 INFO    ] 2026-06-19 05:24:53
[2026-06-19 05:24:53,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:24:54,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:24:54,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:24:54,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:24:54,337.337 INFO    ] time= 19/06/2026 05:24:54
[2026-06-19 05:24:54,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:24:54,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:24:54,563.563 INFO    ] No existing commands found in stream
[2026-06-19 05:24:59,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:24:59,593.593 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 05:25:00,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:25:00,794.794 INFO    ] Checking for system updates...
[2026-06-19 05:25:00,832.832 INFO    ] 200
[2026-06-19 05:25:00,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:00,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:25:00,891.891 INFO    ] No update needed
[2026-06-19 05:25:00,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 05:25:00,930.930 INFO    ] 200
[2026-06-19 05:25:00,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:00,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:25:01,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:25:01,024.024 INFO    ] No camera update needed
[2026-06-19 05:25:01,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:25:01,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:25:01,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:25:01,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:25:03,102.102 INFO    ] ================================================
[2026-06-19 05:25:03,125.125 INFO    ] Launching Daemon at Fri Jun 19 05:25:03 IST 2026
[2026-06-19 05:25:03,144.144 INFO    ] ================================================
[2026-06-19 05:25:03,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:25:03
[2026-06-19 05:25:04,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:25:04,621.621 INFO    ] Initializing speech engine...
[2026-06-19 05:25:04,633.633 INFO    ] 2026-06-19 05:25:04
[2026-06-19 05:25:04,901.901 INFO    ] 2026-06-19 05:25:04
[2026-06-19 05:25:04,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:25:05,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:25:05,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:25:05,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:25:05,281.281 INFO    ] time= 19/06/2026 05:25:05
[2026-06-19 05:25:05,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:25:05,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:25:05,445.445 INFO    ] No existing commands found in stream
[2026-06-19 05:25:10,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:25:10,479.479 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 05:25:12,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:25:12,290.290 INFO    ] Checking for system updates...
[2026-06-19 05:25:12,326.326 INFO    ] 200
[2026-06-19 05:25:12,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:12,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:25:12,383.383 INFO    ] No update needed
[2026-06-19 05:25:12,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 05:25:12,419.419 INFO    ] 200
[2026-06-19 05:25:12,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:12,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:25:12,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:25:12,518.518 INFO    ] No camera update needed
[2026-06-19 05:25:12,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:25:12,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:25:12,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:25:12,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:25:14,576.576 INFO    ] ================================================
[2026-06-19 05:25:14,591.591 INFO    ] Launching Daemon at Fri Jun 19 05:25:14 IST 2026
[2026-06-19 05:25:14,602.602 INFO    ] ================================================
[2026-06-19 05:25:15,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:25:15
[2026-06-19 05:25:15,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:25:16,257.257 INFO    ] Initializing speech engine...
[2026-06-19 05:25:16,265.265 INFO    ] 2026-06-19 05:25:16
[2026-06-19 05:25:16,557.557 INFO    ] 2026-06-19 05:25:16
[2026-06-19 05:25:16,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:25:16,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:25:16,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:25:16,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:25:17,025.025 INFO    ] time= 19/06/2026 05:25:16
[2026-06-19 05:25:17,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:25:17,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:25:17,175.175 INFO    ] No existing commands found in stream
[2026-06-19 05:25:22,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:25:22,192.192 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 05:25:22,945.945 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:25:22,948.948 INFO    ] Checking for system updates...
[2026-06-19 05:25:22,983.983 INFO    ] 200
[2026-06-19 05:25:22,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:23,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:25:23,043.043 INFO    ] No update needed
[2026-06-19 05:25:23,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 05:25:23,079.079 INFO    ] 200
[2026-06-19 05:25:23,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:23,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:25:23,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:25:23,177.177 INFO    ] No camera update needed
[2026-06-19 05:25:23,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:25:23,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:25:23,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:25:23,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:25:25,231.231 INFO    ] ================================================
[2026-06-19 05:25:25,246.246 INFO    ] Launching Daemon at Fri Jun 19 05:25:25 IST 2026
[2026-06-19 05:25:25,257.257 INFO    ] ================================================
[2026-06-19 05:25:25,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:25:25
[2026-06-19 05:25:26,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:25:26,680.680 INFO    ] Initializing speech engine...
[2026-06-19 05:25:26,699.699 INFO    ] 2026-06-19 05:25:26
[2026-06-19 05:25:26,950.950 INFO    ] 2026-06-19 05:25:26
[2026-06-19 05:25:26,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:25:27,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:25:27,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:25:27,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:25:27,329.329 INFO    ] time= 19/06/2026 05:25:27
[2026-06-19 05:25:27,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:25:27,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:25:27,508.508 INFO    ] No existing commands found in stream
[2026-06-19 05:25:32,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:25:32,536.536 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 05:25:34,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:25:34,044.044 INFO    ] Checking for system updates...
[2026-06-19 05:25:34,082.082 INFO    ] 200
[2026-06-19 05:25:34,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:34,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:25:34,140.140 INFO    ] No update needed
[2026-06-19 05:25:34,142.142 INFO    ] Checking for camera pi updates...
[2026-06-19 05:25:34,176.176 INFO    ] 200
[2026-06-19 05:25:34,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:34,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:25:34,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:25:34,266.266 INFO    ] No camera update needed
[2026-06-19 05:25:34,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:25:34,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:25:34,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:25:34,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:25:36,322.322 INFO    ] ================================================
[2026-06-19 05:25:36,337.337 INFO    ] Launching Daemon at Fri Jun 19 05:25:36 IST 2026
[2026-06-19 05:25:36,348.348 INFO    ] ================================================
[2026-06-19 05:25:36,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:25:36
[2026-06-19 05:25:37,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:25:37,788.788 INFO    ] Initializing speech engine...
[2026-06-19 05:25:37,809.809 INFO    ] 2026-06-19 05:25:37
[2026-06-19 05:25:38,083.083 INFO    ] 2026-06-19 05:25:38
[2026-06-19 05:25:38,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:25:38,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:25:38,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:25:38,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:25:38,468.468 INFO    ] time= 19/06/2026 05:25:38
[2026-06-19 05:25:38,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:25:38,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:25:38,595.595 INFO    ] No existing commands found in stream
[2026-06-19 05:25:43,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:25:43,610.610 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 05:25:44,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:25:44,620.620 INFO    ] Checking for system updates...
[2026-06-19 05:25:44,656.656 INFO    ] 200
[2026-06-19 05:25:44,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:44,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:25:44,715.715 INFO    ] No update needed
[2026-06-19 05:25:44,718.718 INFO    ] Checking for camera pi updates...
[2026-06-19 05:25:44,752.752 INFO    ] 200
[2026-06-19 05:25:44,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:44,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:25:44,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:25:44,849.849 INFO    ] No camera update needed
[2026-06-19 05:25:44,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:25:44,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:25:44,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:25:44,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:25:46,905.905 INFO    ] ================================================
[2026-06-19 05:25:46,921.921 INFO    ] Launching Daemon at Fri Jun 19 05:25:46 IST 2026
[2026-06-19 05:25:46,932.932 INFO    ] ================================================
[2026-06-19 05:25:47,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:25:47
[2026-06-19 05:25:48,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:25:48,376.376 INFO    ] Initializing speech engine...
[2026-06-19 05:25:48,386.386 INFO    ] 2026-06-19 05:25:48
[2026-06-19 05:25:48,635.635 INFO    ] 2026-06-19 05:25:48
[2026-06-19 05:25:48,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:25:48,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:25:48,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:25:49,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:25:49,127.127 INFO    ] time= 19/06/2026 05:25:49
[2026-06-19 05:25:49,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:25:49,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:25:49,320.320 INFO    ] No existing commands found in stream
[2026-06-19 05:25:54,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:25:54,355.355 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 05:25:57,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:25:57,952.952 INFO    ] Checking for system updates...
[2026-06-19 05:25:57,992.992 INFO    ] 200
[2026-06-19 05:25:57,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:58,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:25:58,058.058 INFO    ] No update needed
[2026-06-19 05:25:58,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 05:25:58,098.098 INFO    ] 200
[2026-06-19 05:25:58,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:25:58,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:25:58,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:25:58,199.199 INFO    ] No camera update needed
[2026-06-19 05:25:58,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:25:58,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:25:58,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:25:58,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:26:00,256.256 INFO    ] ================================================
[2026-06-19 05:26:00,271.271 INFO    ] Launching Daemon at Fri Jun 19 05:26:00 IST 2026
[2026-06-19 05:26:00,282.282 INFO    ] ================================================
[2026-06-19 05:26:00,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:26:00
[2026-06-19 05:26:01,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:26:01,914.914 INFO    ] Initializing speech engine...
[2026-06-19 05:26:01,918.918 INFO    ] 2026-06-19 05:26:01
[2026-06-19 05:26:02,381.381 INFO    ] 2026-06-19 05:26:02
[2026-06-19 05:26:02,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:26:02,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:26:02,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:26:02,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:26:02,900.900 INFO    ] time= 19/06/2026 05:26:02
[2026-06-19 05:26:02,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:26:02,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:26:03,119.119 INFO    ] No existing commands found in stream
[2026-06-19 05:26:08,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:26:08,149.149 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 05:26:09,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:26:09,186.186 INFO    ] Checking for system updates...
[2026-06-19 05:26:09,224.224 INFO    ] 200
[2026-06-19 05:26:09,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:09,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:26:09,287.287 INFO    ] No update needed
[2026-06-19 05:26:09,290.290 INFO    ] Checking for camera pi updates...
[2026-06-19 05:26:09,326.326 INFO    ] 200
[2026-06-19 05:26:09,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:09,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:26:09,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:26:09,428.428 INFO    ] No camera update needed
[2026-06-19 05:26:09,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:26:09,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:26:09,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:26:09,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:26:11,485.485 INFO    ] ================================================
[2026-06-19 05:26:11,500.500 INFO    ] Launching Daemon at Fri Jun 19 05:26:11 IST 2026
[2026-06-19 05:26:11,511.511 INFO    ] ================================================
[2026-06-19 05:26:12,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:26:12
[2026-06-19 05:26:12,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:26:12,938.938 INFO    ] Initializing speech engine...
[2026-06-19 05:26:12,944.944 INFO    ] 2026-06-19 05:26:12
[2026-06-19 05:26:13,204.204 INFO    ] 2026-06-19 05:26:13
[2026-06-19 05:26:13,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:26:13,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:26:13,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:26:13,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:26:13,666.666 INFO    ] time= 19/06/2026 05:26:13
[2026-06-19 05:26:13,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:26:13,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:26:13,821.821 INFO    ] No existing commands found in stream
[2026-06-19 05:26:18,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:26:18,836.836 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 05:26:20,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:26:20,164.164 INFO    ] Checking for system updates...
[2026-06-19 05:26:20,204.204 INFO    ] 200
[2026-06-19 05:26:20,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:20,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:26:20,268.268 INFO    ] No update needed
[2026-06-19 05:26:20,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 05:26:20,308.308 INFO    ] 200
[2026-06-19 05:26:20,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:20,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:26:20,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:26:20,405.405 INFO    ] No camera update needed
[2026-06-19 05:26:20,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:26:20,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:26:20,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:26:20,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:26:22,461.461 INFO    ] ================================================
[2026-06-19 05:26:22,476.476 INFO    ] Launching Daemon at Fri Jun 19 05:26:22 IST 2026
[2026-06-19 05:26:22,487.487 INFO    ] ================================================
[2026-06-19 05:26:23,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:26:23
[2026-06-19 05:26:23,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:26:23,936.936 INFO    ] Initializing speech engine...
[2026-06-19 05:26:23,955.955 INFO    ] 2026-06-19 05:26:23
[2026-06-19 05:26:24,206.206 INFO    ] 2026-06-19 05:26:24
[2026-06-19 05:26:24,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:26:24,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:26:24,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:26:24,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:26:24,668.668 INFO    ] time= 19/06/2026 05:26:24
[2026-06-19 05:26:24,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:26:24,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:26:24,882.882 INFO    ] No existing commands found in stream
[2026-06-19 05:26:29,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:26:29,908.908 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 05:26:31,876.876 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:26:31,878.878 INFO    ] Checking for system updates...
[2026-06-19 05:26:31,914.914 INFO    ] 200
[2026-06-19 05:26:31,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:31,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:26:31,979.979 INFO    ] No update needed
[2026-06-19 05:26:31,981.981 INFO    ] Checking for camera pi updates...
[2026-06-19 05:26:32,023.023 INFO    ] 200
[2026-06-19 05:26:32,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:32,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:26:32,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:26:32,214.214 INFO    ] No camera update needed
[2026-06-19 05:26:32,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:26:32,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:26:32,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:26:32,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:26:34,274.274 INFO    ] ================================================
[2026-06-19 05:26:34,290.290 INFO    ] Launching Daemon at Fri Jun 19 05:26:34 IST 2026
[2026-06-19 05:26:34,300.300 INFO    ] ================================================
[2026-06-19 05:26:34,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:26:34
[2026-06-19 05:26:35,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:26:35,706.706 INFO    ] Initializing speech engine...
[2026-06-19 05:26:35,721.721 INFO    ] 2026-06-19 05:26:35
[2026-06-19 05:26:36,009.009 INFO    ] 2026-06-19 05:26:35
[2026-06-19 05:26:36,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:26:36,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:26:36,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:26:36,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:26:36,363.363 INFO    ] time= 19/06/2026 05:26:36
[2026-06-19 05:26:36,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:26:36,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:26:36,444.444 INFO    ] No existing commands found in stream
[2026-06-19 05:26:41,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:26:41,458.458 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 05:26:43,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:26:43,511.511 INFO    ] Checking for system updates...
[2026-06-19 05:26:43,547.547 INFO    ] 200
[2026-06-19 05:26:43,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:43,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:26:43,610.610 INFO    ] No update needed
[2026-06-19 05:26:43,612.612 INFO    ] Checking for camera pi updates...
[2026-06-19 05:26:43,647.647 INFO    ] 200
[2026-06-19 05:26:43,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:43,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:26:43,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:26:43,732.732 INFO    ] No camera update needed
[2026-06-19 05:26:43,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:26:43,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:26:43,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:26:43,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:26:45,788.788 INFO    ] ================================================
[2026-06-19 05:26:45,803.803 INFO    ] Launching Daemon at Fri Jun 19 05:26:45 IST 2026
[2026-06-19 05:26:45,814.814 INFO    ] ================================================
[2026-06-19 05:26:46,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:26:46
[2026-06-19 05:26:46,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:26:47,271.271 INFO    ] Initializing speech engine...
[2026-06-19 05:26:47,281.281 INFO    ] 2026-06-19 05:26:47
[2026-06-19 05:26:47,530.530 INFO    ] 2026-06-19 05:26:47
[2026-06-19 05:26:47,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:26:47,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:26:47,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:26:47,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:26:47,900.900 INFO    ] time= 19/06/2026 05:26:47
[2026-06-19 05:26:47,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:26:47,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:26:48,077.077 INFO    ] No existing commands found in stream
[2026-06-19 05:26:53,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:26:53,105.105 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 05:26:56,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:26:56,244.244 INFO    ] Checking for system updates...
[2026-06-19 05:26:56,282.282 INFO    ] 200
[2026-06-19 05:26:56,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:56,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:26:56,355.355 INFO    ] No update needed
[2026-06-19 05:26:56,359.359 INFO    ] Checking for camera pi updates...
[2026-06-19 05:26:56,397.397 INFO    ] 200
[2026-06-19 05:26:56,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:26:56,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:26:56,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:26:56,494.494 INFO    ] No camera update needed
[2026-06-19 05:26:56,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:26:56,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:26:56,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:26:56,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:26:58,553.553 INFO    ] ================================================
[2026-06-19 05:26:58,568.568 INFO    ] Launching Daemon at Fri Jun 19 05:26:58 IST 2026
[2026-06-19 05:26:58,579.579 INFO    ] ================================================
[2026-06-19 05:26:59,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:26:59
[2026-06-19 05:26:59,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:27:00,006.006 INFO    ] Initializing speech engine...
[2026-06-19 05:27:00,016.016 INFO    ] 2026-06-19 05:27:00
[2026-06-19 05:27:00,266.266 INFO    ] 2026-06-19 05:27:00
[2026-06-19 05:27:00,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:27:00,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:27:00,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:27:00,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:27:00,644.644 INFO    ] time= 19/06/2026 05:27:00
[2026-06-19 05:27:00,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:27:00,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:27:00,821.821 INFO    ] No existing commands found in stream
[2026-06-19 05:27:05,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:27:05,854.854 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 05:27:09,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:27:09,173.173 INFO    ] Checking for system updates...
[2026-06-19 05:27:09,212.212 INFO    ] 200
[2026-06-19 05:27:09,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:09,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:27:09,270.270 INFO    ] No update needed
[2026-06-19 05:27:09,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 05:27:09,308.308 INFO    ] 200
[2026-06-19 05:27:09,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:09,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:27:09,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:27:09,394.394 INFO    ] No camera update needed
[2026-06-19 05:27:09,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:27:09,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:27:09,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:27:09,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:27:11,448.448 INFO    ] ================================================
[2026-06-19 05:27:11,464.464 INFO    ] Launching Daemon at Fri Jun 19 05:27:11 IST 2026
[2026-06-19 05:27:11,474.474 INFO    ] ================================================
[2026-06-19 05:27:12,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:27:12
[2026-06-19 05:27:12,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:27:13,037.037 INFO    ] Initializing speech engine...
[2026-06-19 05:27:13,051.051 INFO    ] 2026-06-19 05:27:13
[2026-06-19 05:27:13,363.363 INFO    ] 2026-06-19 05:27:13
[2026-06-19 05:27:13,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:27:13,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:27:13,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:27:13,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:27:13,802.802 INFO    ] time= 19/06/2026 05:27:13
[2026-06-19 05:27:13,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:27:13,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:27:13,946.946 INFO    ] No existing commands found in stream
[2026-06-19 05:27:18,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:27:18,962.962 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 05:27:20,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:27:20,047.047 INFO    ] Checking for system updates...
[2026-06-19 05:27:20,088.088 INFO    ] 200
[2026-06-19 05:27:20,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:20,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:27:20,149.149 INFO    ] No update needed
[2026-06-19 05:27:20,151.151 INFO    ] Checking for camera pi updates...
[2026-06-19 05:27:20,186.186 INFO    ] 200
[2026-06-19 05:27:20,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:20,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:27:20,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:27:20,279.279 INFO    ] No camera update needed
[2026-06-19 05:27:20,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:27:20,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:27:20,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:27:20,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:27:22,336.336 INFO    ] ================================================
[2026-06-19 05:27:22,351.351 INFO    ] Launching Daemon at Fri Jun 19 05:27:22 IST 2026
[2026-06-19 05:27:22,362.362 INFO    ] ================================================
[2026-06-19 05:27:22,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:27:22
[2026-06-19 05:27:23,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:27:23,822.822 INFO    ] Initializing speech engine...
[2026-06-19 05:27:23,828.828 INFO    ] 2026-06-19 05:27:23
[2026-06-19 05:27:24,085.085 INFO    ] 2026-06-19 05:27:24
[2026-06-19 05:27:24,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:27:24,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:27:24,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:27:24,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:27:24,460.460 INFO    ] time= 19/06/2026 05:27:24
[2026-06-19 05:27:24,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:27:24,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:27:24,589.589 INFO    ] No existing commands found in stream
[2026-06-19 05:27:29,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:27:29,628.628 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 05:27:32,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:27:32,197.197 INFO    ] Checking for system updates...
[2026-06-19 05:27:32,238.238 INFO    ] 200
[2026-06-19 05:27:32,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:32,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:27:32,310.310 INFO    ] No update needed
[2026-06-19 05:27:32,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 05:27:32,362.362 INFO    ] 200
[2026-06-19 05:27:32,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:32,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:27:32,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:27:32,445.445 INFO    ] No camera update needed
[2026-06-19 05:27:32,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:27:32,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:27:32,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:27:32,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:27:34,508.508 INFO    ] ================================================
[2026-06-19 05:27:34,523.523 INFO    ] Launching Daemon at Fri Jun 19 05:27:34 IST 2026
[2026-06-19 05:27:34,533.533 INFO    ] ================================================
[2026-06-19 05:27:35,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:27:35
[2026-06-19 05:27:35,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:27:35,990.990 INFO    ] Initializing speech engine...
[2026-06-19 05:27:35,998.998 INFO    ] 2026-06-19 05:27:35
[2026-06-19 05:27:36,258.258 INFO    ] 2026-06-19 05:27:36
[2026-06-19 05:27:36,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:27:36,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:27:36,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:27:36,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:27:36,727.727 INFO    ] time= 19/06/2026 05:27:36
[2026-06-19 05:27:36,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:27:36,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:27:36,897.897 INFO    ] No existing commands found in stream
[2026-06-19 05:27:41,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:27:41,931.931 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 05:27:44,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:27:44,456.456 INFO    ] Checking for system updates...
[2026-06-19 05:27:44,492.492 INFO    ] 200
[2026-06-19 05:27:44,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:44,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:27:44,557.557 INFO    ] No update needed
[2026-06-19 05:27:44,559.559 INFO    ] Checking for camera pi updates...
[2026-06-19 05:27:44,594.594 INFO    ] 200
[2026-06-19 05:27:44,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:44,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:27:44,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:27:44,691.691 INFO    ] No camera update needed
[2026-06-19 05:27:44,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:27:44,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:27:44,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:27:44,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:27:46,748.748 INFO    ] ================================================
[2026-06-19 05:27:46,763.763 INFO    ] Launching Daemon at Fri Jun 19 05:27:46 IST 2026
[2026-06-19 05:27:46,773.773 INFO    ] ================================================
[2026-06-19 05:27:47,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:27:47
[2026-06-19 05:27:47,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:27:48,239.239 INFO    ] Initializing speech engine...
[2026-06-19 05:27:48,245.245 INFO    ] 2026-06-19 05:27:48
[2026-06-19 05:27:48,508.508 INFO    ] 2026-06-19 05:27:48
[2026-06-19 05:27:48,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:27:48,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:27:48,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:27:48,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:27:48,946.946 INFO    ] time= 19/06/2026 05:27:48
[2026-06-19 05:27:49,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:27:49,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:27:49,114.114 INFO    ] No existing commands found in stream
[2026-06-19 05:27:54,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:27:54,129.129 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 05:27:55,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:27:55,564.564 INFO    ] Checking for system updates...
[2026-06-19 05:27:55,600.600 INFO    ] 200
[2026-06-19 05:27:55,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:55,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:27:55,658.658 INFO    ] No update needed
[2026-06-19 05:27:55,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 05:27:55,695.695 INFO    ] 200
[2026-06-19 05:27:55,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:27:55,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:27:55,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:27:55,782.782 INFO    ] No camera update needed
[2026-06-19 05:27:55,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:27:55,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:27:55,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:27:55,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:27:57,840.840 INFO    ] ================================================
[2026-06-19 05:27:57,854.854 INFO    ] Launching Daemon at Fri Jun 19 05:27:57 IST 2026
[2026-06-19 05:27:57,865.865 INFO    ] ================================================
[2026-06-19 05:27:58,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:27:58
[2026-06-19 05:27:59,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:27:59,286.286 INFO    ] Initializing speech engine...
[2026-06-19 05:27:59,310.310 INFO    ] 2026-06-19 05:27:59
[2026-06-19 05:27:59,581.581 INFO    ] 2026-06-19 05:27:59
[2026-06-19 05:27:59,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:27:59,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:27:59,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:27:59,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:27:59,955.955 INFO    ] time= 19/06/2026 05:27:59
[2026-06-19 05:27:59,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:27:59,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:28:00,078.078 INFO    ] No existing commands found in stream
[2026-06-19 05:28:05,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:28:05,094.094 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 05:28:07,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:28:08,002.002 INFO    ] Checking for system updates...
[2026-06-19 05:28:08,039.039 INFO    ] 200
[2026-06-19 05:28:08,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:08,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:28:08,097.097 INFO    ] No update needed
[2026-06-19 05:28:08,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 05:28:08,133.133 INFO    ] 200
[2026-06-19 05:28:08,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:08,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:28:08,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:28:08,224.224 INFO    ] No camera update needed
[2026-06-19 05:28:08,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:28:08,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:28:08,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:28:08,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:28:10,280.280 INFO    ] ================================================
[2026-06-19 05:28:10,295.295 INFO    ] Launching Daemon at Fri Jun 19 05:28:10 IST 2026
[2026-06-19 05:28:10,306.306 INFO    ] ================================================
[2026-06-19 05:28:10,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:28:10
[2026-06-19 05:28:11,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:28:11,920.920 INFO    ] Initializing speech engine...
[2026-06-19 05:28:11,928.928 INFO    ] 2026-06-19 05:28:11
[2026-06-19 05:28:12,206.206 INFO    ] 2026-06-19 05:28:12
[2026-06-19 05:28:12,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:28:12,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:28:12,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:28:12,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:28:12,664.664 INFO    ] time= 19/06/2026 05:28:12
[2026-06-19 05:28:12,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:28:12,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:28:12,833.833 INFO    ] No existing commands found in stream
[2026-06-19 05:28:17,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:28:17,849.849 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 05:28:20,372.372 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:28:20,376.376 INFO    ] Checking for system updates...
[2026-06-19 05:28:20,417.417 INFO    ] 200
[2026-06-19 05:28:20,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:20,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:28:20,483.483 INFO    ] No update needed
[2026-06-19 05:28:20,486.486 INFO    ] Checking for camera pi updates...
[2026-06-19 05:28:20,521.521 INFO    ] 200
[2026-06-19 05:28:20,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:20,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:28:20,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:28:20,618.618 INFO    ] No camera update needed
[2026-06-19 05:28:20,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:28:20,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:28:20,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:28:20,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:28:22,678.678 INFO    ] ================================================
[2026-06-19 05:28:22,693.693 INFO    ] Launching Daemon at Fri Jun 19 05:28:22 IST 2026
[2026-06-19 05:28:22,704.704 INFO    ] ================================================
[2026-06-19 05:28:23,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:28:23
[2026-06-19 05:28:24,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:28:24,331.331 INFO    ] Initializing speech engine...
[2026-06-19 05:28:24,342.342 INFO    ] 2026-06-19 05:28:24
[2026-06-19 05:28:24,613.613 INFO    ] 2026-06-19 05:28:24
[2026-06-19 05:28:24,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:28:24,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:28:24,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:28:25,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:28:25,109.109 INFO    ] time= 19/06/2026 05:28:25
[2026-06-19 05:28:25,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:28:25,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:28:25,299.299 INFO    ] No existing commands found in stream
[2026-06-19 05:28:30,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:28:30,330.330 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 05:28:33,364.364 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:28:33,367.367 INFO    ] Checking for system updates...
[2026-06-19 05:28:33,404.404 INFO    ] 200
[2026-06-19 05:28:33,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:33,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:28:33,463.463 INFO    ] No update needed
[2026-06-19 05:28:33,465.465 INFO    ] Checking for camera pi updates...
[2026-06-19 05:28:33,500.500 INFO    ] 200
[2026-06-19 05:28:33,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:33,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:28:33,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:28:33,691.691 INFO    ] No camera update needed
[2026-06-19 05:28:33,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:28:33,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:28:33,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:28:33,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:28:35,747.747 INFO    ] ================================================
[2026-06-19 05:28:35,762.762 INFO    ] Launching Daemon at Fri Jun 19 05:28:35 IST 2026
[2026-06-19 05:28:35,773.773 INFO    ] ================================================
[2026-06-19 05:28:36,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:28:36
[2026-06-19 05:28:36,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:28:37,178.178 INFO    ] Initializing speech engine...
[2026-06-19 05:28:37,183.183 INFO    ] 2026-06-19 05:28:37
[2026-06-19 05:28:37,458.458 INFO    ] 2026-06-19 05:28:37
[2026-06-19 05:28:37,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:28:37,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:28:37,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:28:37,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:28:37,836.836 INFO    ] time= 19/06/2026 05:28:37
[2026-06-19 05:28:37,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:28:37,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:28:38,018.018 INFO    ] No existing commands found in stream
[2026-06-19 05:28:43,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:28:43,046.046 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 05:28:44,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:28:44,662.662 INFO    ] Checking for system updates...
[2026-06-19 05:28:44,698.698 INFO    ] 200
[2026-06-19 05:28:44,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:44,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:28:44,757.757 INFO    ] No update needed
[2026-06-19 05:28:44,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 05:28:44,794.794 INFO    ] 200
[2026-06-19 05:28:44,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:44,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:28:44,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:28:44,880.880 INFO    ] No camera update needed
[2026-06-19 05:28:44,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:28:44,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:28:44,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:28:44,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:28:46,937.937 INFO    ] ================================================
[2026-06-19 05:28:46,952.952 INFO    ] Launching Daemon at Fri Jun 19 05:28:46 IST 2026
[2026-06-19 05:28:46,963.963 INFO    ] ================================================
[2026-06-19 05:28:47,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:28:47
[2026-06-19 05:28:48,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:28:48,367.367 INFO    ] Initializing speech engine...
[2026-06-19 05:28:48,379.379 INFO    ] 2026-06-19 05:28:48
[2026-06-19 05:28:48,642.642 INFO    ] 2026-06-19 05:28:48
[2026-06-19 05:28:48,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:28:48,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:28:48,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:28:48,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:28:49,009.009 INFO    ] time= 19/06/2026 05:28:49
[2026-06-19 05:28:49,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:28:49,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:28:49,086.086 INFO    ] No existing commands found in stream
[2026-06-19 05:28:54,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:28:54,119.119 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 05:28:55,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:28:55,838.838 INFO    ] Checking for system updates...
[2026-06-19 05:28:55,875.875 INFO    ] 200
[2026-06-19 05:28:55,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:55,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:28:55,943.943 INFO    ] No update needed
[2026-06-19 05:28:55,946.946 INFO    ] Checking for camera pi updates...
[2026-06-19 05:28:55,981.981 INFO    ] 200
[2026-06-19 05:28:55,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:28:56,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:28:56,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:28:56,070.070 INFO    ] No camera update needed
[2026-06-19 05:28:56,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:28:56,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:28:56,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:28:56,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:28:58,125.125 INFO    ] ================================================
[2026-06-19 05:28:58,140.140 INFO    ] Launching Daemon at Fri Jun 19 05:28:58 IST 2026
[2026-06-19 05:28:58,151.151 INFO    ] ================================================
[2026-06-19 05:28:58,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:28:58
[2026-06-19 05:28:59,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:28:59,808.808 INFO    ] Initializing speech engine...
[2026-06-19 05:28:59,822.822 INFO    ] 2026-06-19 05:28:59
[2026-06-19 05:29:00,108.108 INFO    ] 2026-06-19 05:29:00
[2026-06-19 05:29:00,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:29:00,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:29:00,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:29:00,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:29:00,643.643 INFO    ] time= 19/06/2026 05:29:00
[2026-06-19 05:29:00,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:29:00,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:29:00,794.794 INFO    ] No existing commands found in stream
[2026-06-19 05:29:05,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:29:05,813.813 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 05:29:08,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:29:08,934.934 INFO    ] Checking for system updates...
[2026-06-19 05:29:08,976.976 INFO    ] 200
[2026-06-19 05:29:08,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:09,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:29:09,036.036 INFO    ] No update needed
[2026-06-19 05:29:09,039.039 INFO    ] Checking for camera pi updates...
[2026-06-19 05:29:09,081.081 INFO    ] 200
[2026-06-19 05:29:09,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:09,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:29:09,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:29:09,171.171 INFO    ] No camera update needed
[2026-06-19 05:29:09,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:29:09,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:29:09,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:29:09,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:29:11,227.227 INFO    ] ================================================
[2026-06-19 05:29:11,242.242 INFO    ] Launching Daemon at Fri Jun 19 05:29:11 IST 2026
[2026-06-19 05:29:11,253.253 INFO    ] ================================================
[2026-06-19 05:29:11,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:29:11
[2026-06-19 05:29:12,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:29:12,712.712 INFO    ] Initializing speech engine...
[2026-06-19 05:29:12,721.721 INFO    ] 2026-06-19 05:29:12
[2026-06-19 05:29:12,988.988 INFO    ] 2026-06-19 05:29:12
[2026-06-19 05:29:13,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:29:13,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:29:13,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:29:13,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:29:13,425.425 INFO    ] time= 19/06/2026 05:29:13
[2026-06-19 05:29:13,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:29:13,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:29:13,590.590 INFO    ] No existing commands found in stream
[2026-06-19 05:29:18,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:29:18,627.627 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 05:29:19,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:29:19,864.864 INFO    ] Checking for system updates...
[2026-06-19 05:29:19,903.903 INFO    ] 200
[2026-06-19 05:29:19,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:19,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:29:19,969.969 INFO    ] No update needed
[2026-06-19 05:29:19,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 05:29:20,006.006 INFO    ] 200
[2026-06-19 05:29:20,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:20,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:29:20,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:29:20,099.099 INFO    ] No camera update needed
[2026-06-19 05:29:20,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:29:20,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:29:20,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:29:20,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:29:22,156.156 INFO    ] ================================================
[2026-06-19 05:29:22,171.171 INFO    ] Launching Daemon at Fri Jun 19 05:29:22 IST 2026
[2026-06-19 05:29:22,182.182 INFO    ] ================================================
[2026-06-19 05:29:22,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:29:22
[2026-06-19 05:29:23,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:29:23,598.598 INFO    ] Initializing speech engine...
[2026-06-19 05:29:23,611.611 INFO    ] 2026-06-19 05:29:23
[2026-06-19 05:29:23,860.860 INFO    ] 2026-06-19 05:29:23
[2026-06-19 05:29:23,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:29:24,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:29:24,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:29:24,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:29:24,305.305 INFO    ] time= 19/06/2026 05:29:24
[2026-06-19 05:29:24,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:29:24,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:29:24,464.464 INFO    ] No existing commands found in stream
[2026-06-19 05:29:29,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:29:29,482.482 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 05:29:30,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:29:30,552.552 INFO    ] Checking for system updates...
[2026-06-19 05:29:30,589.589 INFO    ] 200
[2026-06-19 05:29:30,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:30,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:29:30,653.653 INFO    ] No update needed
[2026-06-19 05:29:30,656.656 INFO    ] Checking for camera pi updates...
[2026-06-19 05:29:30,690.690 INFO    ] 200
[2026-06-19 05:29:30,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:30,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:29:30,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:29:30,777.777 INFO    ] No camera update needed
[2026-06-19 05:29:30,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:29:30,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:29:30,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:29:30,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:29:32,833.833 INFO    ] ================================================
[2026-06-19 05:29:32,850.850 INFO    ] Launching Daemon at Fri Jun 19 05:29:32 IST 2026
[2026-06-19 05:29:32,862.862 INFO    ] ================================================
[2026-06-19 05:29:33,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:29:33
[2026-06-19 05:29:34,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:29:34,337.337 INFO    ] Initializing speech engine...
[2026-06-19 05:29:34,343.343 INFO    ] 2026-06-19 05:29:34
[2026-06-19 05:29:34,640.640 INFO    ] 2026-06-19 05:29:34
[2026-06-19 05:29:34,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:29:34,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:29:34,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:29:35,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:29:35,020.020 INFO    ] time= 19/06/2026 05:29:35
[2026-06-19 05:29:35,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:29:35,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:29:35,145.145 INFO    ] No existing commands found in stream
[2026-06-19 05:29:40,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:29:40,160.160 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 05:29:42,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:29:42,795.795 INFO    ] Checking for system updates...
[2026-06-19 05:29:42,833.833 INFO    ] 200
[2026-06-19 05:29:42,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:42,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:29:42,892.892 INFO    ] No update needed
[2026-06-19 05:29:42,895.895 INFO    ] Checking for camera pi updates...
[2026-06-19 05:29:42,934.934 INFO    ] 200
[2026-06-19 05:29:42,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:42,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:29:43,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:29:43,027.027 INFO    ] No camera update needed
[2026-06-19 05:29:43,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:29:43,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:29:43,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:29:43,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:29:45,088.088 INFO    ] ================================================
[2026-06-19 05:29:45,103.103 INFO    ] Launching Daemon at Fri Jun 19 05:29:45 IST 2026
[2026-06-19 05:29:45,114.114 INFO    ] ================================================
[2026-06-19 05:29:45,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:29:45
[2026-06-19 05:29:46,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:29:46,580.580 INFO    ] Initializing speech engine...
[2026-06-19 05:29:46,589.589 INFO    ] 2026-06-19 05:29:46
[2026-06-19 05:29:46,839.839 INFO    ] 2026-06-19 05:29:46
[2026-06-19 05:29:46,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:29:47,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:29:47,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:29:47,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:29:47,318.318 INFO    ] time= 19/06/2026 05:29:47
[2026-06-19 05:29:47,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:29:47,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:29:47,463.463 INFO    ] No existing commands found in stream
[2026-06-19 05:29:52,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:29:52,478.478 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 05:29:56,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:29:56,172.172 INFO    ] Checking for system updates...
[2026-06-19 05:29:56,211.211 INFO    ] 200
[2026-06-19 05:29:56,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:56,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:29:56,269.269 INFO    ] No update needed
[2026-06-19 05:29:56,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 05:29:56,309.309 INFO    ] 200
[2026-06-19 05:29:56,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:29:56,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:29:56,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:29:56,399.399 INFO    ] No camera update needed
[2026-06-19 05:29:56,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:29:56,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:29:56,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:29:56,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:29:58,455.455 INFO    ] ================================================
[2026-06-19 05:29:58,470.470 INFO    ] Launching Daemon at Fri Jun 19 05:29:58 IST 2026
[2026-06-19 05:29:58,481.481 INFO    ] ================================================
[2026-06-19 05:29:59,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:29:59
[2026-06-19 05:29:59,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:29:59,954.954 INFO    ] Initializing speech engine...
[2026-06-19 05:29:59,961.961 INFO    ] 2026-06-19 05:29:59
[2026-06-19 05:30:00,234.234 INFO    ] 2026-06-19 05:30:00
[2026-06-19 05:30:00,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:30:00,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:30:00,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:30:00,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:30:00,703.703 INFO    ] time= 19/06/2026 05:30:00
[2026-06-19 05:30:00,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:30:00,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:30:00,899.899 INFO    ] No existing commands found in stream
[2026-06-19 05:30:05,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:30:05,935.935 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 05:30:08,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:30:08,682.682 INFO    ] Checking for system updates...
[2026-06-19 05:30:08,718.718 INFO    ] 200
[2026-06-19 05:30:08,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:08,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:30:08,775.775 INFO    ] No update needed
[2026-06-19 05:30:08,777.777 INFO    ] Checking for camera pi updates...
[2026-06-19 05:30:08,813.813 INFO    ] 200
[2026-06-19 05:30:08,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:08,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:30:08,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:30:08,903.903 INFO    ] No camera update needed
[2026-06-19 05:30:08,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:30:08,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:30:08,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:30:08,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:30:10,960.960 INFO    ] ================================================
[2026-06-19 05:30:10,976.976 INFO    ] Launching Daemon at Fri Jun 19 05:30:10 IST 2026
[2026-06-19 05:30:10,987.987 INFO    ] ================================================
[2026-06-19 05:30:11,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:30:11
[2026-06-19 05:30:12,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:30:12,597.597 INFO    ] Initializing speech engine...
[2026-06-19 05:30:12,608.608 INFO    ] 2026-06-19 05:30:12
[2026-06-19 05:30:12,881.881 INFO    ] 2026-06-19 05:30:12
[2026-06-19 05:30:12,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:30:13,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:30:13,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:30:13,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:30:13,379.379 INFO    ] time= 19/06/2026 05:30:13
[2026-06-19 05:30:13,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:30:13,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:30:13,566.566 INFO    ] No existing commands found in stream
[2026-06-19 05:30:18,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:30:18,602.602 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 05:30:20,054.054 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:30:20,057.057 INFO    ] Checking for system updates...
[2026-06-19 05:30:20,096.096 INFO    ] 200
[2026-06-19 05:30:20,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:20,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:30:20,154.154 INFO    ] No update needed
[2026-06-19 05:30:20,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 05:30:20,194.194 INFO    ] 200
[2026-06-19 05:30:20,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:20,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:30:20,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:30:20,280.280 INFO    ] No camera update needed
[2026-06-19 05:30:20,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:30:20,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:30:20,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:30:20,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:30:22,335.335 INFO    ] ================================================
[2026-06-19 05:30:22,351.351 INFO    ] Launching Daemon at Fri Jun 19 05:30:22 IST 2026
[2026-06-19 05:30:22,362.362 INFO    ] ================================================
[2026-06-19 05:30:23,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:30:23
[2026-06-19 05:30:23,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:30:23,994.994 INFO    ] Initializing speech engine...
[2026-06-19 05:30:24,009.009 INFO    ] 2026-06-19 05:30:23
[2026-06-19 05:30:24,317.317 INFO    ] 2026-06-19 05:30:24
[2026-06-19 05:30:24,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:30:24,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:30:24,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:30:24,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:30:24,832.832 INFO    ] time= 19/06/2026 05:30:24
[2026-06-19 05:30:24,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:30:24,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:30:24,984.984 INFO    ] No existing commands found in stream
[2026-06-19 05:30:29,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:30:30,003.003 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 05:30:30,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:30:30,984.984 INFO    ] Checking for system updates...
[2026-06-19 05:30:31,023.023 INFO    ] 200
[2026-06-19 05:30:31,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:31,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:30:31,083.083 INFO    ] No update needed
[2026-06-19 05:30:31,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 05:30:31,119.119 INFO    ] 200
[2026-06-19 05:30:31,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:31,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:30:31,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:30:31,213.213 INFO    ] No camera update needed
[2026-06-19 05:30:31,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:30:31,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:30:31,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:30:31,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:30:33,269.269 INFO    ] ================================================
[2026-06-19 05:30:33,286.286 INFO    ] Launching Daemon at Fri Jun 19 05:30:33 IST 2026
[2026-06-19 05:30:33,298.298 INFO    ] ================================================
[2026-06-19 05:30:33,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:30:33
[2026-06-19 05:30:34,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:30:34,766.766 INFO    ] Initializing speech engine...
[2026-06-19 05:30:34,778.778 INFO    ] 2026-06-19 05:30:34
[2026-06-19 05:30:35,030.030 INFO    ] 2026-06-19 05:30:35
[2026-06-19 05:30:35,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:30:35,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:30:35,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:30:35,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:30:35,408.408 INFO    ] time= 19/06/2026 05:30:35
[2026-06-19 05:30:35,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:30:35,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:30:35,566.566 INFO    ] No existing commands found in stream
[2026-06-19 05:30:40,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:30:40,594.594 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 05:30:43,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:30:43,028.028 INFO    ] Checking for system updates...
[2026-06-19 05:30:43,064.064 INFO    ] 200
[2026-06-19 05:30:43,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:43,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:30:43,130.130 INFO    ] No update needed
[2026-06-19 05:30:43,132.132 INFO    ] Checking for camera pi updates...
[2026-06-19 05:30:43,167.167 INFO    ] 200
[2026-06-19 05:30:43,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:43,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:30:43,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:30:43,364.364 INFO    ] No camera update needed
[2026-06-19 05:30:43,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:30:43,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:30:43,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:30:43,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:30:45,425.425 INFO    ] ================================================
[2026-06-19 05:30:45,440.440 INFO    ] Launching Daemon at Fri Jun 19 05:30:45 IST 2026
[2026-06-19 05:30:45,451.451 INFO    ] ================================================
[2026-06-19 05:30:46,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:30:46
[2026-06-19 05:30:46,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:30:46,866.866 INFO    ] Initializing speech engine...
[2026-06-19 05:30:46,882.882 INFO    ] 2026-06-19 05:30:46
[2026-06-19 05:30:47,169.169 INFO    ] 2026-06-19 05:30:47
[2026-06-19 05:30:47,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:30:47,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:30:47,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:30:47,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:30:47,530.530 INFO    ] time= 19/06/2026 05:30:47
[2026-06-19 05:30:47,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:30:47,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:30:47,609.609 INFO    ] No existing commands found in stream
[2026-06-19 05:30:52,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:30:52,625.625 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 05:30:54,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:30:54,449.449 INFO    ] Checking for system updates...
[2026-06-19 05:30:54,491.491 INFO    ] 200
[2026-06-19 05:30:54,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:54,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:30:54,563.563 INFO    ] No update needed
[2026-06-19 05:30:54,566.566 INFO    ] Checking for camera pi updates...
[2026-06-19 05:30:54,605.605 INFO    ] 200
[2026-06-19 05:30:54,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:30:54,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:30:54,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:30:54,705.705 INFO    ] No camera update needed
[2026-06-19 05:30:54,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:30:54,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:30:54,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:30:54,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:30:56,766.766 INFO    ] ================================================
[2026-06-19 05:30:56,781.781 INFO    ] Launching Daemon at Fri Jun 19 05:30:56 IST 2026
[2026-06-19 05:30:56,792.792 INFO    ] ================================================
[2026-06-19 05:30:57,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:30:57
[2026-06-19 05:30:58,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:30:58,408.408 INFO    ] Initializing speech engine...
[2026-06-19 05:30:58,416.416 INFO    ] 2026-06-19 05:30:58
[2026-06-19 05:30:58,691.691 INFO    ] 2026-06-19 05:30:58
[2026-06-19 05:30:58,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:30:58,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:30:58,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:30:59,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:30:59,179.179 INFO    ] time= 19/06/2026 05:30:59
[2026-06-19 05:30:59,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:30:59,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:30:59,323.323 INFO    ] No existing commands found in stream
[2026-06-19 05:31:04,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:31:04,339.339 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 05:31:07,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:31:07,592.592 INFO    ] Checking for system updates...
[2026-06-19 05:31:07,630.630 INFO    ] 200
[2026-06-19 05:31:07,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:07,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:31:07,690.690 INFO    ] No update needed
[2026-06-19 05:31:07,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 05:31:07,729.729 INFO    ] 200
[2026-06-19 05:31:07,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:07,774.774 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:31:07,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:31:07,824.824 INFO    ] No camera update needed
[2026-06-19 05:31:07,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:31:07,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:31:07,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:31:07,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:31:09,885.885 INFO    ] ================================================
[2026-06-19 05:31:09,901.901 INFO    ] Launching Daemon at Fri Jun 19 05:31:09 IST 2026
[2026-06-19 05:31:09,912.912 INFO    ] ================================================
[2026-06-19 05:31:10,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:31:10
[2026-06-19 05:31:11,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:31:11,581.581 INFO    ] Initializing speech engine...
[2026-06-19 05:31:11,594.594 INFO    ] 2026-06-19 05:31:11
[2026-06-19 05:31:11,867.867 INFO    ] 2026-06-19 05:31:11
[2026-06-19 05:31:11,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:31:12,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:31:12,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:31:12,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:31:12,349.349 INFO    ] time= 19/06/2026 05:31:12
[2026-06-19 05:31:12,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:31:12,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:31:12,500.500 INFO    ] No existing commands found in stream
[2026-06-19 05:31:17,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:31:17,516.516 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 05:31:17,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:31:17,921.921 INFO    ] Checking for system updates...
[2026-06-19 05:31:17,963.963 INFO    ] 200
[2026-06-19 05:31:17,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:18,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:31:18,023.023 INFO    ] No update needed
[2026-06-19 05:31:18,026.026 INFO    ] Checking for camera pi updates...
[2026-06-19 05:31:18,062.062 INFO    ] 200
[2026-06-19 05:31:18,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:18,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:31:18,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:31:18,156.156 INFO    ] No camera update needed
[2026-06-19 05:31:18,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:31:18,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:31:18,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:31:18,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:31:20,217.217 INFO    ] ================================================
[2026-06-19 05:31:20,232.232 INFO    ] Launching Daemon at Fri Jun 19 05:31:20 IST 2026
[2026-06-19 05:31:20,244.244 INFO    ] ================================================
[2026-06-19 05:31:20,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:31:20
[2026-06-19 05:31:21,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:31:21,787.787 INFO    ] Initializing speech engine...
[2026-06-19 05:31:21,801.801 INFO    ] 2026-06-19 05:31:21
[2026-06-19 05:31:22,094.094 INFO    ] 2026-06-19 05:31:22
[2026-06-19 05:31:22,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:31:22,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:31:22,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:31:22,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:31:22,644.644 INFO    ] time= 19/06/2026 05:31:22
[2026-06-19 05:31:22,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:31:22,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:31:22,802.802 INFO    ] No existing commands found in stream
[2026-06-19 05:31:27,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:31:27,829.829 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 05:31:30,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:31:30,667.667 INFO    ] Checking for system updates...
[2026-06-19 05:31:30,704.704 INFO    ] 200
[2026-06-19 05:31:30,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:30,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:31:30,772.772 INFO    ] No update needed
[2026-06-19 05:31:30,775.775 INFO    ] Checking for camera pi updates...
[2026-06-19 05:31:30,810.810 INFO    ] 200
[2026-06-19 05:31:30,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:30,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:31:30,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:31:30,904.904 INFO    ] No camera update needed
[2026-06-19 05:31:30,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:31:30,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:31:30,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:31:30,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:31:32,967.967 INFO    ] ================================================
[2026-06-19 05:31:32,983.983 INFO    ] Launching Daemon at Fri Jun 19 05:31:32 IST 2026
[2026-06-19 05:31:33,995.995 INFO    ] ================================================
[2026-06-19 05:31:33,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:31:33
[2026-06-19 05:31:34,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:31:34,450.450 INFO    ] Initializing speech engine...
[2026-06-19 05:31:34,464.464 INFO    ] 2026-06-19 05:31:34
[2026-06-19 05:31:34,753.753 INFO    ] 2026-06-19 05:31:34
[2026-06-19 05:31:34,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:31:34,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:31:35,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:31:35,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:31:35,138.138 INFO    ] time= 19/06/2026 05:31:35
[2026-06-19 05:31:35,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:31:35,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:31:35,265.265 INFO    ] No existing commands found in stream
[2026-06-19 05:31:40,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:31:40,279.279 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 05:31:40,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:31:40,936.936 INFO    ] Checking for system updates...
[2026-06-19 05:31:40,976.976 INFO    ] 200
[2026-06-19 05:31:40,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:41,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:31:41,036.036 INFO    ] No update needed
[2026-06-19 05:31:41,038.038 INFO    ] Checking for camera pi updates...
[2026-06-19 05:31:41,073.073 INFO    ] 200
[2026-06-19 05:31:41,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:41,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:31:41,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:31:41,161.161 INFO    ] No camera update needed
[2026-06-19 05:31:41,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:31:41,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:31:41,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:31:41,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:31:43,218.218 INFO    ] ================================================
[2026-06-19 05:31:43,234.234 INFO    ] Launching Daemon at Fri Jun 19 05:31:43 IST 2026
[2026-06-19 05:31:43,245.245 INFO    ] ================================================
[2026-06-19 05:31:43,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:31:43
[2026-06-19 05:31:44,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:31:44,655.655 INFO    ] Initializing speech engine...
[2026-06-19 05:31:44,664.664 INFO    ] 2026-06-19 05:31:44
[2026-06-19 05:31:44,963.963 INFO    ] 2026-06-19 05:31:44
[2026-06-19 05:31:44,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:31:45,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:31:45,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:31:45,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:31:45,319.319 INFO    ] time= 19/06/2026 05:31:45
[2026-06-19 05:31:45,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:31:45,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:31:45,398.398 INFO    ] No existing commands found in stream
[2026-06-19 05:31:50,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:31:50,413.413 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 05:31:53,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:31:53,240.240 INFO    ] Checking for system updates...
[2026-06-19 05:31:53,277.277 INFO    ] 200
[2026-06-19 05:31:53,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:53,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:31:53,337.337 INFO    ] No update needed
[2026-06-19 05:31:53,339.339 INFO    ] Checking for camera pi updates...
[2026-06-19 05:31:53,374.374 INFO    ] 200
[2026-06-19 05:31:53,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:31:53,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:31:53,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:31:53,474.474 INFO    ] No camera update needed
[2026-06-19 05:31:53,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:31:53,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:31:53,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:31:53,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:31:55,533.533 INFO    ] ================================================
[2026-06-19 05:31:55,549.549 INFO    ] Launching Daemon at Fri Jun 19 05:31:55 IST 2026
[2026-06-19 05:31:55,560.560 INFO    ] ================================================
[2026-06-19 05:31:56,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:31:56
[2026-06-19 05:31:56,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:31:57,204.204 INFO    ] Initializing speech engine...
[2026-06-19 05:31:57,219.219 INFO    ] 2026-06-19 05:31:57
[2026-06-19 05:31:57,504.504 INFO    ] 2026-06-19 05:31:57
[2026-06-19 05:31:57,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:31:57,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:31:57,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:31:57,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:31:57,967.967 INFO    ] time= 19/06/2026 05:31:57
[2026-06-19 05:31:58,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:31:58,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:31:58,122.122 INFO    ] No existing commands found in stream
[2026-06-19 05:32:03,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:32:03,140.140 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 05:32:04,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:32:04,907.907 INFO    ] Checking for system updates...
[2026-06-19 05:32:04,944.944 INFO    ] 200
[2026-06-19 05:32:04,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:05,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:32:05,004.004 INFO    ] No update needed
[2026-06-19 05:32:05,007.007 INFO    ] Checking for camera pi updates...
[2026-06-19 05:32:05,043.043 INFO    ] 200
[2026-06-19 05:32:05,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:05,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:32:05,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:32:05,134.134 INFO    ] No camera update needed
[2026-06-19 05:32:05,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:32:05,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:32:05,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:32:05,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:32:07,196.196 INFO    ] ================================================
[2026-06-19 05:32:07,212.212 INFO    ] Launching Daemon at Fri Jun 19 05:32:07 IST 2026
[2026-06-19 05:32:07,224.224 INFO    ] ================================================
[2026-06-19 05:32:07,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:32:07
[2026-06-19 05:32:08,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:32:08,752.752 INFO    ] Initializing speech engine...
[2026-06-19 05:32:08,761.761 INFO    ] 2026-06-19 05:32:08
[2026-06-19 05:32:09,041.041 INFO    ] 2026-06-19 05:32:09
[2026-06-19 05:32:09,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:32:09,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:32:09,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:32:09,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:32:09,500.500 INFO    ] time= 19/06/2026 05:32:09
[2026-06-19 05:32:09,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:32:09,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:32:09,722.722 INFO    ] No existing commands found in stream
[2026-06-19 05:32:14,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:32:14,750.750 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 05:32:16,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:32:16,540.540 INFO    ] Checking for system updates...
[2026-06-19 05:32:16,577.577 INFO    ] 200
[2026-06-19 05:32:16,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:16,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:32:16,635.635 INFO    ] No update needed
[2026-06-19 05:32:16,637.637 INFO    ] Checking for camera pi updates...
[2026-06-19 05:32:16,671.671 INFO    ] 200
[2026-06-19 05:32:16,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:16,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:32:16,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:32:16,764.764 INFO    ] No camera update needed
[2026-06-19 05:32:16,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:32:16,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:32:16,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:32:16,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:32:18,820.820 INFO    ] ================================================
[2026-06-19 05:32:18,836.836 INFO    ] Launching Daemon at Fri Jun 19 05:32:18 IST 2026
[2026-06-19 05:32:18,847.847 INFO    ] ================================================
[2026-06-19 05:32:19,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:32:19
[2026-06-19 05:32:20,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:32:20,277.277 INFO    ] Initializing speech engine...
[2026-06-19 05:32:20,286.286 INFO    ] 2026-06-19 05:32:20
[2026-06-19 05:32:20,531.531 INFO    ] 2026-06-19 05:32:20
[2026-06-19 05:32:20,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:32:20,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:32:20,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:32:20,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:32:20,998.998 INFO    ] time= 19/06/2026 05:32:20
[2026-06-19 05:32:21,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:32:21,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:32:21,155.155 INFO    ] No existing commands found in stream
[2026-06-19 05:32:26,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:32:26,172.172 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 05:32:30,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:32:30,171.171 INFO    ] Checking for system updates...
[2026-06-19 05:32:30,207.207 INFO    ] 200
[2026-06-19 05:32:30,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:30,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:32:30,268.268 INFO    ] No update needed
[2026-06-19 05:32:30,270.270 INFO    ] Checking for camera pi updates...
[2026-06-19 05:32:30,305.305 INFO    ] 200
[2026-06-19 05:32:30,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:30,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:32:30,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:32:30,398.398 INFO    ] No camera update needed
[2026-06-19 05:32:30,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:32:30,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:32:30,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:32:30,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:32:32,459.459 INFO    ] ================================================
[2026-06-19 05:32:32,476.476 INFO    ] Launching Daemon at Fri Jun 19 05:32:32 IST 2026
[2026-06-19 05:32:32,487.487 INFO    ] ================================================
[2026-06-19 05:32:33,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:32:33
[2026-06-19 05:32:33,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:32:34,048.048 INFO    ] Initializing speech engine...
[2026-06-19 05:32:34,059.059 INFO    ] 2026-06-19 05:32:34
[2026-06-19 05:32:34,342.342 INFO    ] 2026-06-19 05:32:34
[2026-06-19 05:32:34,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:32:34,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:32:34,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:32:34,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:32:34,873.873 INFO    ] time= 19/06/2026 05:32:34
[2026-06-19 05:32:34,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:32:34,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:32:35,017.017 INFO    ] No existing commands found in stream
[2026-06-19 05:32:40,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:32:40,041.041 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 05:32:43,110.110 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:32:43,113.113 INFO    ] Checking for system updates...
[2026-06-19 05:32:43,150.150 INFO    ] 200
[2026-06-19 05:32:43,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:43,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:32:43,214.214 INFO    ] No update needed
[2026-06-19 05:32:43,216.216 INFO    ] Checking for camera pi updates...
[2026-06-19 05:32:43,250.250 INFO    ] 200
[2026-06-19 05:32:43,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:43,297.297 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:32:43,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:32:43,337.337 INFO    ] No camera update needed
[2026-06-19 05:32:43,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:32:43,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:32:43,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:32:43,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:32:45,398.398 INFO    ] ================================================
[2026-06-19 05:32:45,413.413 INFO    ] Launching Daemon at Fri Jun 19 05:32:45 IST 2026
[2026-06-19 05:32:45,424.424 INFO    ] ================================================
[2026-06-19 05:32:46,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:32:46
[2026-06-19 05:32:46,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:32:46,917.917 INFO    ] Initializing speech engine...
[2026-06-19 05:32:46,927.927 INFO    ] 2026-06-19 05:32:46
[2026-06-19 05:32:47,190.190 INFO    ] 2026-06-19 05:32:47
[2026-06-19 05:32:47,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:32:47,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:32:47,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:32:47,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:32:47,605.605 INFO    ] time= 19/06/2026 05:32:47
[2026-06-19 05:32:47,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:32:47,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:32:47,722.722 INFO    ] No existing commands found in stream
[2026-06-19 05:32:52,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:32:52,734.734 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 05:32:54,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:32:54,024.024 INFO    ] Checking for system updates...
[2026-06-19 05:32:54,062.062 INFO    ] 200
[2026-06-19 05:32:54,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:54,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:32:54,129.129 INFO    ] No update needed
[2026-06-19 05:32:54,132.132 INFO    ] Checking for camera pi updates...
[2026-06-19 05:32:54,166.166 INFO    ] 200
[2026-06-19 05:32:54,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:32:54,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:32:54,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:32:54,355.355 INFO    ] No camera update needed
[2026-06-19 05:32:54,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:32:54,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:32:54,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:32:54,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:32:56,410.410 INFO    ] ================================================
[2026-06-19 05:32:56,426.426 INFO    ] Launching Daemon at Fri Jun 19 05:32:56 IST 2026
[2026-06-19 05:32:56,437.437 INFO    ] ================================================
[2026-06-19 05:32:57,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:32:57
[2026-06-19 05:32:57,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:32:57,974.974 INFO    ] Initializing speech engine...
[2026-06-19 05:32:57,988.988 INFO    ] 2026-06-19 05:32:57
[2026-06-19 05:32:58,251.251 INFO    ] 2026-06-19 05:32:58
[2026-06-19 05:32:58,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:32:58,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:32:58,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:32:58,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:32:58,617.617 INFO    ] time= 19/06/2026 05:32:58
[2026-06-19 05:32:58,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:32:58,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:32:58,777.777 INFO    ] No existing commands found in stream
[2026-06-19 05:33:03,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:33:03,805.805 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 05:33:07,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:33:07,757.757 INFO    ] Checking for system updates...
[2026-06-19 05:33:07,807.807 INFO    ] 200
[2026-06-19 05:33:07,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:07,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:33:07,869.869 INFO    ] No update needed
[2026-06-19 05:33:07,872.872 INFO    ] Checking for camera pi updates...
[2026-06-19 05:33:07,908.908 INFO    ] 200
[2026-06-19 05:33:07,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:07,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:33:07,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:33:07,979.979 INFO    ] No camera update needed
[2026-06-19 05:33:07,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:33:07,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:33:07,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:33:07,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:33:10,035.035 INFO    ] ================================================
[2026-06-19 05:33:10,051.051 INFO    ] Launching Daemon at Fri Jun 19 05:33:10 IST 2026
[2026-06-19 05:33:10,062.062 INFO    ] ================================================
[2026-06-19 05:33:10,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:33:10
[2026-06-19 05:33:11,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:33:11,464.464 INFO    ] Initializing speech engine...
[2026-06-19 05:33:11,487.487 INFO    ] 2026-06-19 05:33:11
[2026-06-19 05:33:11,758.758 INFO    ] 2026-06-19 05:33:11
[2026-06-19 05:33:11,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:33:11,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:33:11,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:33:12,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:33:12,127.127 INFO    ] time= 19/06/2026 05:33:12
[2026-06-19 05:33:12,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:33:12,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:33:12,249.249 INFO    ] No existing commands found in stream
[2026-06-19 05:33:17,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:33:17,263.263 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 05:33:18,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:33:18,551.551 INFO    ] Checking for system updates...
[2026-06-19 05:33:18,587.587 INFO    ] 200
[2026-06-19 05:33:18,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:18,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:33:18,646.646 INFO    ] No update needed
[2026-06-19 05:33:18,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 05:33:18,684.684 INFO    ] 200
[2026-06-19 05:33:18,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:18,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:33:18,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:33:18,772.772 INFO    ] No camera update needed
[2026-06-19 05:33:18,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:33:18,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:33:18,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:33:18,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:33:20,828.828 INFO    ] ================================================
[2026-06-19 05:33:20,843.843 INFO    ] Launching Daemon at Fri Jun 19 05:33:20 IST 2026
[2026-06-19 05:33:20,854.854 INFO    ] ================================================
[2026-06-19 05:33:21,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:33:21
[2026-06-19 05:33:22,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:33:22,444.444 INFO    ] Initializing speech engine...
[2026-06-19 05:33:22,463.463 INFO    ] 2026-06-19 05:33:22
[2026-06-19 05:33:22,738.738 INFO    ] 2026-06-19 05:33:22
[2026-06-19 05:33:22,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:33:23,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:33:23,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:33:23,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:33:23,266.266 INFO    ] time= 19/06/2026 05:33:23
[2026-06-19 05:33:23,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:33:23,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:33:23,424.424 INFO    ] No existing commands found in stream
[2026-06-19 05:33:28,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:33:28,445.445 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 05:33:29,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:33:29,925.925 INFO    ] Checking for system updates...
[2026-06-19 05:33:29,964.964 INFO    ] 200
[2026-06-19 05:33:29,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:30,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:33:30,028.028 INFO    ] No update needed
[2026-06-19 05:33:30,031.031 INFO    ] Checking for camera pi updates...
[2026-06-19 05:33:30,064.064 INFO    ] 200
[2026-06-19 05:33:30,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:30,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:33:30,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:33:30,139.139 INFO    ] No camera update needed
[2026-06-19 05:33:30,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:33:30,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:33:30,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:33:30,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:33:32,196.196 INFO    ] ================================================
[2026-06-19 05:33:32,213.213 INFO    ] Launching Daemon at Fri Jun 19 05:33:32 IST 2026
[2026-06-19 05:33:32,224.224 INFO    ] ================================================
[2026-06-19 05:33:32,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:33:32
[2026-06-19 05:33:33,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:33:33,733.733 INFO    ] Initializing speech engine...
[2026-06-19 05:33:33,743.743 INFO    ] 2026-06-19 05:33:33
[2026-06-19 05:33:34,003.003 INFO    ] 2026-06-19 05:33:33
[2026-06-19 05:33:34,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:33:34,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:33:34,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:33:34,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:33:34,401.401 INFO    ] time= 19/06/2026 05:33:34
[2026-06-19 05:33:34,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:33:34,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:33:34,572.572 INFO    ] No existing commands found in stream
[2026-06-19 05:33:39,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:33:39,595.595 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 05:33:40,777.777 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:33:40,780.780 INFO    ] Checking for system updates...
[2026-06-19 05:33:40,818.818 INFO    ] 200
[2026-06-19 05:33:40,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:40,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:33:40,878.878 INFO    ] No update needed
[2026-06-19 05:33:40,880.880 INFO    ] Checking for camera pi updates...
[2026-06-19 05:33:40,917.917 INFO    ] 200
[2026-06-19 05:33:40,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:40,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:33:41,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:33:41,014.014 INFO    ] No camera update needed
[2026-06-19 05:33:41,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:33:41,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:33:41,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:33:41,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:33:43,070.070 INFO    ] ================================================
[2026-06-19 05:33:43,085.085 INFO    ] Launching Daemon at Fri Jun 19 05:33:43 IST 2026
[2026-06-19 05:33:43,096.096 INFO    ] ================================================
[2026-06-19 05:33:43,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:33:43
[2026-06-19 05:33:44,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:33:44,501.501 INFO    ] Initializing speech engine...
[2026-06-19 05:33:44,524.524 INFO    ] 2026-06-19 05:33:44
[2026-06-19 05:33:44,775.775 INFO    ] 2026-06-19 05:33:44
[2026-06-19 05:33:44,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:33:45,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:33:45,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:33:45,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:33:45,224.224 INFO    ] time= 19/06/2026 05:33:45
[2026-06-19 05:33:45,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:33:45,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:33:45,393.393 INFO    ] No existing commands found in stream
[2026-06-19 05:33:50,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:33:50,408.408 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 05:33:52,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:33:52,860.860 INFO    ] Checking for system updates...
[2026-06-19 05:33:52,896.896 INFO    ] 200
[2026-06-19 05:33:52,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:52,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:33:52,959.959 INFO    ] No update needed
[2026-06-19 05:33:52,961.961 INFO    ] Checking for camera pi updates...
[2026-06-19 05:33:52,997.997 INFO    ] 200
[2026-06-19 05:33:53,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:33:53,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:33:53,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:33:53,097.097 INFO    ] No camera update needed
[2026-06-19 05:33:53,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:33:53,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:33:53,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:33:53,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:33:55,152.152 INFO    ] ================================================
[2026-06-19 05:33:55,168.168 INFO    ] Launching Daemon at Fri Jun 19 05:33:55 IST 2026
[2026-06-19 05:33:55,179.179 INFO    ] ================================================
[2026-06-19 05:33:55,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:33:55
[2026-06-19 05:33:56,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:33:56,614.614 INFO    ] Initializing speech engine...
[2026-06-19 05:33:56,630.630 INFO    ] 2026-06-19 05:33:56
[2026-06-19 05:33:56,909.909 INFO    ] 2026-06-19 05:33:56
[2026-06-19 05:33:56,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:33:57,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:33:57,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:33:57,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:33:57,283.283 INFO    ] time= 19/06/2026 05:33:57
[2026-06-19 05:33:57,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:33:57,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:33:57,406.406 INFO    ] No existing commands found in stream
[2026-06-19 05:34:02,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:34:02,423.423 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 05:34:05,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:34:05,134.134 INFO    ] Checking for system updates...
[2026-06-19 05:34:05,179.179 INFO    ] 200
[2026-06-19 05:34:05,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:05,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:34:05,256.256 INFO    ] No update needed
[2026-06-19 05:34:05,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 05:34:05,301.301 INFO    ] 200
[2026-06-19 05:34:05,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:05,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:34:05,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:34:05,393.393 INFO    ] No camera update needed
[2026-06-19 05:34:05,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:34:05,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:34:05,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:34:05,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:34:07,457.457 INFO    ] ================================================
[2026-06-19 05:34:07,473.473 INFO    ] Launching Daemon at Fri Jun 19 05:34:07 IST 2026
[2026-06-19 05:34:07,485.485 INFO    ] ================================================
[2026-06-19 05:34:08,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:34:08
[2026-06-19 05:34:08,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:34:09,025.025 INFO    ] Initializing speech engine...
[2026-06-19 05:34:09,040.040 INFO    ] 2026-06-19 05:34:09
[2026-06-19 05:34:09,311.311 INFO    ] 2026-06-19 05:34:09
[2026-06-19 05:34:09,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:34:09,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:34:09,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:34:09,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:34:09,685.685 INFO    ] time= 19/06/2026 05:34:09
[2026-06-19 05:34:09,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:34:09,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:34:09,787.787 INFO    ] No existing commands found in stream
[2026-06-19 05:34:14,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:34:14,802.802 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 05:34:18,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:34:18,081.081 INFO    ] Checking for system updates...
[2026-06-19 05:34:18,118.118 INFO    ] 200
[2026-06-19 05:34:18,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:18,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:34:18,207.207 INFO    ] No update needed
[2026-06-19 05:34:18,210.210 INFO    ] Checking for camera pi updates...
[2026-06-19 05:34:18,244.244 INFO    ] 200
[2026-06-19 05:34:18,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:18,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:34:18,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:34:18,339.339 INFO    ] No camera update needed
[2026-06-19 05:34:18,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:34:18,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:34:18,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:34:18,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:34:20,395.395 INFO    ] ================================================
[2026-06-19 05:34:20,411.411 INFO    ] Launching Daemon at Fri Jun 19 05:34:20 IST 2026
[2026-06-19 05:34:20,422.422 INFO    ] ================================================
[2026-06-19 05:34:21,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:34:21
[2026-06-19 05:34:21,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:34:22,031.031 INFO    ] Initializing speech engine...
[2026-06-19 05:34:22,040.040 INFO    ] 2026-06-19 05:34:22
[2026-06-19 05:34:22,314.314 INFO    ] 2026-06-19 05:34:22
[2026-06-19 05:34:22,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:34:22,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:34:22,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:34:22,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:34:22,797.797 INFO    ] time= 19/06/2026 05:34:22
[2026-06-19 05:34:22,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:34:22,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:34:22,990.990 INFO    ] No existing commands found in stream
[2026-06-19 05:34:28,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:34:28,025.025 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 05:34:31,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:34:31,886.886 INFO    ] Checking for system updates...
[2026-06-19 05:34:31,930.930 INFO    ] 200
[2026-06-19 05:34:31,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:31,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:34:32,000.000 INFO    ] No update needed
[2026-06-19 05:34:32,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 05:34:32,040.040 INFO    ] 200
[2026-06-19 05:34:32,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:32,087.087 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:34:32,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:34:32,120.120 INFO    ] No camera update needed
[2026-06-19 05:34:32,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:34:32,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:34:32,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:34:32,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:34:34,178.178 INFO    ] ================================================
[2026-06-19 05:34:34,193.193 INFO    ] Launching Daemon at Fri Jun 19 05:34:34 IST 2026
[2026-06-19 05:34:34,204.204 INFO    ] ================================================
[2026-06-19 05:34:34,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:34:34
[2026-06-19 05:34:35,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:34:35,646.646 INFO    ] Initializing speech engine...
[2026-06-19 05:34:35,657.657 INFO    ] 2026-06-19 05:34:35
[2026-06-19 05:34:35,940.940 INFO    ] 2026-06-19 05:34:35
[2026-06-19 05:34:35,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:34:36,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:34:36,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:34:36,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:34:36,436.436 INFO    ] time= 19/06/2026 05:34:36
[2026-06-19 05:34:36,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:34:36,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:34:36,609.609 INFO    ] No existing commands found in stream
[2026-06-19 05:34:41,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:34:41,625.625 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 05:34:42,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:34:42,023.023 INFO    ] Checking for system updates...
[2026-06-19 05:34:42,064.064 INFO    ] 200
[2026-06-19 05:34:42,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:42,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:34:42,124.124 INFO    ] No update needed
[2026-06-19 05:34:42,127.127 INFO    ] Checking for camera pi updates...
[2026-06-19 05:34:42,161.161 INFO    ] 200
[2026-06-19 05:34:42,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:42,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:34:42,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:34:42,254.254 INFO    ] No camera update needed
[2026-06-19 05:34:42,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:34:42,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:34:42,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:34:42,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:34:44,316.316 INFO    ] ================================================
[2026-06-19 05:34:44,332.332 INFO    ] Launching Daemon at Fri Jun 19 05:34:44 IST 2026
[2026-06-19 05:34:44,344.344 INFO    ] ================================================
[2026-06-19 05:34:44,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:34:44
[2026-06-19 05:34:45,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:34:45,756.756 INFO    ] Initializing speech engine...
[2026-06-19 05:34:45,772.772 INFO    ] 2026-06-19 05:34:45
[2026-06-19 05:34:46,028.028 INFO    ] 2026-06-19 05:34:46
[2026-06-19 05:34:46,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:34:46,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:34:46,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:34:46,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:34:46,407.407 INFO    ] time= 19/06/2026 05:34:46
[2026-06-19 05:34:46,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:34:46,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:34:46,568.568 INFO    ] No existing commands found in stream
[2026-06-19 05:34:51,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:34:51,591.591 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 05:34:54,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:34:54,300.300 INFO    ] Checking for system updates...
[2026-06-19 05:34:54,341.341 INFO    ] 200
[2026-06-19 05:34:54,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:54,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:34:54,413.413 INFO    ] No update needed
[2026-06-19 05:34:54,416.416 INFO    ] Checking for camera pi updates...
[2026-06-19 05:34:54,451.451 INFO    ] 200
[2026-06-19 05:34:54,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:34:54,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:34:54,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:34:54,541.541 INFO    ] No camera update needed
[2026-06-19 05:34:54,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:34:54,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:34:54,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:34:54,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:34:56,601.601 INFO    ] ================================================
[2026-06-19 05:34:56,617.617 INFO    ] Launching Daemon at Fri Jun 19 05:34:56 IST 2026
[2026-06-19 05:34:56,628.628 INFO    ] ================================================
[2026-06-19 05:34:57,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:34:57
[2026-06-19 05:34:57,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:34:58,274.274 INFO    ] Initializing speech engine...
[2026-06-19 05:34:58,283.283 INFO    ] 2026-06-19 05:34:58
[2026-06-19 05:34:58,570.570 INFO    ] 2026-06-19 05:34:58
[2026-06-19 05:34:58,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:34:58,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:34:58,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:34:58,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:34:59,016.016 INFO    ] time= 19/06/2026 05:34:58
[2026-06-19 05:34:59,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:34:59,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:34:59,156.156 INFO    ] No existing commands found in stream
[2026-06-19 05:35:04,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:35:04,171.171 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 05:35:06,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:35:06,637.637 INFO    ] Checking for system updates...
[2026-06-19 05:35:06,673.673 INFO    ] 200
[2026-06-19 05:35:06,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:06,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:35:06,740.740 INFO    ] No update needed
[2026-06-19 05:35:06,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 05:35:06,777.777 INFO    ] 200
[2026-06-19 05:35:06,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:06,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:35:06,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:35:06,867.867 INFO    ] No camera update needed
[2026-06-19 05:35:06,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:35:06,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:35:06,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:35:06,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:35:08,923.923 INFO    ] ================================================
[2026-06-19 05:35:08,939.939 INFO    ] Launching Daemon at Fri Jun 19 05:35:08 IST 2026
[2026-06-19 05:35:08,950.950 INFO    ] ================================================
[2026-06-19 05:35:09,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:35:09
[2026-06-19 05:35:10,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:35:10,395.395 INFO    ] Initializing speech engine...
[2026-06-19 05:35:10,405.405 INFO    ] 2026-06-19 05:35:10
[2026-06-19 05:35:10,667.667 INFO    ] 2026-06-19 05:35:10
[2026-06-19 05:35:10,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:35:10,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:35:10,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:35:11,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:35:11,120.120 INFO    ] time= 19/06/2026 05:35:11
[2026-06-19 05:35:11,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:35:11,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:35:11,242.242 INFO    ] No existing commands found in stream
[2026-06-19 05:35:16,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:35:16,261.261 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 05:35:18,574.574 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:35:18,577.577 INFO    ] Checking for system updates...
[2026-06-19 05:35:18,614.614 INFO    ] 200
[2026-06-19 05:35:18,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:18,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:35:18,673.673 INFO    ] No update needed
[2026-06-19 05:35:18,676.676 INFO    ] Checking for camera pi updates...
[2026-06-19 05:35:18,716.716 INFO    ] 200
[2026-06-19 05:35:18,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:18,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:35:18,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:35:18,805.805 INFO    ] No camera update needed
[2026-06-19 05:35:18,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:35:18,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:35:18,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:35:18,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:35:20,862.862 INFO    ] ================================================
[2026-06-19 05:35:20,878.878 INFO    ] Launching Daemon at Fri Jun 19 05:35:20 IST 2026
[2026-06-19 05:35:20,889.889 INFO    ] ================================================
[2026-06-19 05:35:21,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:35:21
[2026-06-19 05:35:22,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:35:22,301.301 INFO    ] Initializing speech engine...
[2026-06-19 05:35:22,309.309 INFO    ] 2026-06-19 05:35:22
[2026-06-19 05:35:22,581.581 INFO    ] 2026-06-19 05:35:22
[2026-06-19 05:35:22,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:35:22,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:35:22,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:35:23,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:35:23,032.032 INFO    ] time= 19/06/2026 05:35:23
[2026-06-19 05:35:23,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:35:23,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:35:23,198.198 INFO    ] No existing commands found in stream
[2026-06-19 05:35:28,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:35:28,213.213 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 05:35:31,610.610 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:35:31,613.613 INFO    ] Checking for system updates...
[2026-06-19 05:35:31,653.653 INFO    ] 200
[2026-06-19 05:35:31,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:31,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:35:31,730.730 INFO    ] No update needed
[2026-06-19 05:35:31,733.733 INFO    ] Checking for camera pi updates...
[2026-06-19 05:35:31,769.769 INFO    ] 200
[2026-06-19 05:35:31,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:31,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:35:31,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:35:31,852.852 INFO    ] No camera update needed
[2026-06-19 05:35:31,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:35:31,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:35:31,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:35:31,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:35:33,911.911 INFO    ] ================================================
[2026-06-19 05:35:33,927.927 INFO    ] Launching Daemon at Fri Jun 19 05:35:33 IST 2026
[2026-06-19 05:35:33,937.937 INFO    ] ================================================
[2026-06-19 05:35:34,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:35:34
[2026-06-19 05:35:35,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:35:35,360.360 INFO    ] Initializing speech engine...
[2026-06-19 05:35:35,383.383 INFO    ] 2026-06-19 05:35:35
[2026-06-19 05:35:35,634.634 INFO    ] 2026-06-19 05:35:35
[2026-06-19 05:35:35,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:35:35,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:35:35,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:35:35,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:35:36,004.004 INFO    ] time= 19/06/2026 05:35:36
[2026-06-19 05:35:36,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:35:36,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:35:36,162.162 INFO    ] No existing commands found in stream
[2026-06-19 05:35:41,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:35:41,195.195 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 05:35:44,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:35:44,470.470 INFO    ] Checking for system updates...
[2026-06-19 05:35:44,510.510 INFO    ] 200
[2026-06-19 05:35:44,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:44,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:35:44,577.577 INFO    ] No update needed
[2026-06-19 05:35:44,579.579 INFO    ] Checking for camera pi updates...
[2026-06-19 05:35:44,613.613 INFO    ] 200
[2026-06-19 05:35:44,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:44,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:35:44,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:35:44,698.698 INFO    ] No camera update needed
[2026-06-19 05:35:44,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:35:44,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:35:44,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:35:44,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:35:46,754.754 INFO    ] ================================================
[2026-06-19 05:35:46,769.769 INFO    ] Launching Daemon at Fri Jun 19 05:35:46 IST 2026
[2026-06-19 05:35:46,780.780 INFO    ] ================================================
[2026-06-19 05:35:47,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:35:47
[2026-06-19 05:35:48,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:35:48,471.471 INFO    ] Initializing speech engine...
[2026-06-19 05:35:48,478.478 INFO    ] 2026-06-19 05:35:48
[2026-06-19 05:35:48,773.773 INFO    ] 2026-06-19 05:35:48
[2026-06-19 05:35:48,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:35:49,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:35:49,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:35:49,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:35:49,257.257 INFO    ] time= 19/06/2026 05:35:49
[2026-06-19 05:35:49,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:35:49,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:35:49,399.399 INFO    ] No existing commands found in stream
[2026-06-19 05:35:54,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:35:54,442.442 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 05:35:58,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:35:58,657.657 INFO    ] Checking for system updates...
[2026-06-19 05:35:58,695.695 INFO    ] 200
[2026-06-19 05:35:58,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:58,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:35:58,759.759 INFO    ] No update needed
[2026-06-19 05:35:58,761.761 INFO    ] Checking for camera pi updates...
[2026-06-19 05:35:58,795.795 INFO    ] 200
[2026-06-19 05:35:58,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:35:58,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:35:58,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:35:58,886.886 INFO    ] No camera update needed
[2026-06-19 05:35:58,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:35:58,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:35:58,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:35:58,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:36:00,942.942 INFO    ] ================================================
[2026-06-19 05:36:00,957.957 INFO    ] Launching Daemon at Fri Jun 19 05:36:00 IST 2026
[2026-06-19 05:36:00,967.967 INFO    ] ================================================
[2026-06-19 05:36:01,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:36:01
[2026-06-19 05:36:02,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:36:02,730.730 INFO    ] Initializing speech engine...
[2026-06-19 05:36:02,747.747 INFO    ] 2026-06-19 05:36:02
[2026-06-19 05:36:03,030.030 INFO    ] 2026-06-19 05:36:03
[2026-06-19 05:36:03,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:36:03,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:36:03,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:36:03,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:36:03,488.488 INFO    ] time= 19/06/2026 05:36:03
[2026-06-19 05:36:03,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:36:03,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:36:03,636.636 INFO    ] No existing commands found in stream
[2026-06-19 05:36:08,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:36:08,650.650 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 05:36:12,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:36:12,240.240 INFO    ] Checking for system updates...
[2026-06-19 05:36:12,277.277 INFO    ] 200
[2026-06-19 05:36:12,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:36:12,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:36:12,336.336 INFO    ] No update needed
[2026-06-19 05:36:12,339.339 INFO    ] Checking for camera pi updates...
[2026-06-19 05:36:12,377.377 INFO    ] 200
[2026-06-19 05:36:12,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:36:12,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:36:12,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:36:12,477.477 INFO    ] No camera update needed
[2026-06-19 05:36:12,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:36:12,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:36:12,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:36:12,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:36:14,535.535 INFO    ] ================================================
[2026-06-19 05:36:14,554.554 INFO    ] Launching Daemon at Fri Jun 19 05:36:14 IST 2026
[2026-06-19 05:36:14,565.565 INFO    ] ================================================
[2026-06-19 05:36:15,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:36:15
[2026-06-19 05:36:15,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:36:16,151.151 INFO    ] Initializing speech engine...
[2026-06-19 05:36:16,157.157 INFO    ] 2026-06-19 05:36:16
[2026-06-19 05:36:16,429.429 INFO    ] 2026-06-19 05:36:16
[2026-06-19 05:36:16,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:36:16,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:36:16,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:36:16,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:36:16,916.916 INFO    ] time= 19/06/2026 05:36:16
[2026-06-19 05:36:16,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:36:16,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:36:17,054.054 INFO    ] No existing commands found in stream
[2026-06-19 05:36:22,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:36:22,070.070 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 05:36:25,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:36:25,526.526 INFO    ] Checking for system updates...
[2026-06-19 05:36:25,562.562 INFO    ] 200
[2026-06-19 05:36:25,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:36:25,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:36:25,622.622 INFO    ] No update needed
[2026-06-19 05:36:25,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 05:36:25,659.659 INFO    ] 200
[2026-06-19 05:36:25,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:36:25,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:36:25,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:36:25,751.751 INFO    ] No camera update needed
[2026-06-19 05:36:25,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:36:25,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:36:25,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:36:25,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:36:27,807.807 INFO    ] ================================================
[2026-06-19 05:36:27,823.823 INFO    ] Launching Daemon at Fri Jun 19 05:36:27 IST 2026
[2026-06-19 05:36:27,834.834 INFO    ] ================================================
[2026-06-19 05:36:28,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:36:28
[2026-06-19 05:36:29,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:36:29,327.327 INFO    ] Initializing speech engine...
[2026-06-19 05:36:29,335.335 INFO    ] 2026-06-19 05:36:29
[2026-06-19 05:36:29,622.622 INFO    ] 2026-06-19 05:36:29
[2026-06-19 05:36:29,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:36:29,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:36:29,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:36:30,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:36:30,084.084 INFO    ] time= 19/06/2026 05:36:30
[2026-06-19 05:36:30,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:36:30,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:36:30,232.232 INFO    ] No existing commands found in stream
[2026-06-19 05:36:35,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:36:35,248.248 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 05:36:36,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:36:36,176.176 INFO    ] Checking for system updates...
[2026-06-19 05:36:36,214.214 INFO    ] 200
[2026-06-19 05:36:36,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:36:36,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:36:36,276.276 INFO    ] No update needed
[2026-06-19 05:36:36,279.279 INFO    ] Checking for camera pi updates...
[2026-06-19 05:36:36,321.321 INFO    ] 200
[2026-06-19 05:36:36,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:36:36,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:36:36,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:36:36,430.430 INFO    ] No camera update needed
[2026-06-19 05:36:36,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:36:36,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:36:36,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:36:36,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:36:38,489.489 INFO    ] ================================================
[2026-06-19 05:36:38,505.505 INFO    ] Launching Daemon at Fri Jun 19 05:36:38 IST 2026
[2026-06-19 05:36:38,516.516 INFO    ] ================================================
[2026-06-19 05:36:39,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:36:39
[2026-06-19 05:36:39,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:36:39,942.942 INFO    ] Initializing speech engine...
[2026-06-19 05:36:39,955.955 INFO    ] 2026-06-19 05:36:39
[2026-06-19 05:36:40,206.206 INFO    ] 2026-06-19 05:36:40
[2026-06-19 05:36:40,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:36:40,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:36:40,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:36:40,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:36:40,582.582 INFO    ] time= 19/06/2026 05:36:40
[2026-06-19 05:36:40,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:36:40,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:36:40,753.753 INFO    ] No existing commands found in stream
[2026-06-19 05:36:45,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:36:45,781.781 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 05:36:48,236.236 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:36:48,239.239 INFO    ] Checking for system updates...
[2026-06-19 05:36:48,275.275 INFO    ] 200
[2026-06-19 05:36:48,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:36:48,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:36:48,337.337 INFO    ] No update needed
[2026-06-19 05:36:48,340.340 INFO    ] Checking for camera pi updates...
[2026-06-19 05:36:48,373.373 INFO    ] 200
[2026-06-19 05:36:48,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:36:48,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:36:48,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:36:48,446.446 INFO    ] No camera update needed
[2026-06-19 05:36:48,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:36:48,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:36:48,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:36:48,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:36:50,501.501 INFO    ] ================================================
[2026-06-19 05:36:50,517.517 INFO    ] Launching Daemon at Fri Jun 19 05:36:50 IST 2026
[2026-06-19 05:36:50,529.529 INFO    ] ================================================
[2026-06-19 05:36:51,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:36:51
[2026-06-19 05:36:51,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:36:52,111.111 INFO    ] Initializing speech engine...
[2026-06-19 05:36:52,119.119 INFO    ] 2026-06-19 05:36:52
[2026-06-19 05:36:52,402.402 INFO    ] 2026-06-19 05:36:52
[2026-06-19 05:36:52,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:36:52,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:36:52,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:36:52,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:36:52,936.936 INFO    ] time= 19/06/2026 05:36:52
[2026-06-19 05:36:52,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:36:52,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:36:53,072.072 INFO    ] No existing commands found in stream
[2026-06-19 05:36:58,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:36:58,100.100 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 05:36:59,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:36:59,945.945 INFO    ] Checking for system updates...
[2026-06-19 05:36:59,985.985 INFO    ] 200
[2026-06-19 05:36:59,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:00,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:37:00,049.049 INFO    ] No update needed
[2026-06-19 05:37:00,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 05:37:00,093.093 INFO    ] 200
[2026-06-19 05:37:00,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:00,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:37:00,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:37:00,191.191 INFO    ] No camera update needed
[2026-06-19 05:37:00,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:37:00,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:37:00,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:37:00,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:37:02,277.277 INFO    ] ================================================
[2026-06-19 05:37:02,304.304 INFO    ] Launching Daemon at Fri Jun 19 05:37:02 IST 2026
[2026-06-19 05:37:02,321.321 INFO    ] ================================================
[2026-06-19 05:37:02,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:37:02
[2026-06-19 05:37:03,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:37:03,917.917 INFO    ] Initializing speech engine...
[2026-06-19 05:37:03,927.927 INFO    ] 2026-06-19 05:37:03
[2026-06-19 05:37:04,199.199 INFO    ] 2026-06-19 05:37:04
[2026-06-19 05:37:04,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:37:04,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:37:04,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:37:04,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:37:04,571.571 INFO    ] time= 19/06/2026 05:37:04
[2026-06-19 05:37:04,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:37:04,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:37:04,674.674 INFO    ] No existing commands found in stream
[2026-06-19 05:37:09,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:37:09,689.689 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 05:37:12,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:37:12,634.634 INFO    ] Checking for system updates...
[2026-06-19 05:37:12,670.670 INFO    ] 200
[2026-06-19 05:37:12,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:12,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:37:12,728.728 INFO    ] No update needed
[2026-06-19 05:37:12,730.730 INFO    ] Checking for camera pi updates...
[2026-06-19 05:37:12,764.764 INFO    ] 200
[2026-06-19 05:37:12,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:12,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:37:12,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:37:12,957.957 INFO    ] No camera update needed
[2026-06-19 05:37:12,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:37:12,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:37:12,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:37:12,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:37:15,022.022 INFO    ] ================================================
[2026-06-19 05:37:15,040.040 INFO    ] Launching Daemon at Fri Jun 19 05:37:15 IST 2026
[2026-06-19 05:37:15,051.051 INFO    ] ================================================
[2026-06-19 05:37:15,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:37:15
[2026-06-19 05:37:16,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:37:16,628.628 INFO    ] Initializing speech engine...
[2026-06-19 05:37:16,639.639 INFO    ] 2026-06-19 05:37:16
[2026-06-19 05:37:16,915.915 INFO    ] 2026-06-19 05:37:16
[2026-06-19 05:37:16,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:37:17,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:37:17,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:37:17,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:37:17,358.358 INFO    ] time= 19/06/2026 05:37:17
[2026-06-19 05:37:17,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:37:17,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:37:17,542.542 INFO    ] No existing commands found in stream
[2026-06-19 05:37:22,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:37:22,558.558 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 05:37:28,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:37:28,541.541 INFO    ] Checking for system updates...
[2026-06-19 05:37:28,581.581 INFO    ] 200
[2026-06-19 05:37:28,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:28,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:37:28,642.642 INFO    ] No update needed
[2026-06-19 05:37:28,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 05:37:28,680.680 INFO    ] 200
[2026-06-19 05:37:28,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:28,728.728 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:37:28,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:37:28,777.777 INFO    ] No camera update needed
[2026-06-19 05:37:28,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:37:28,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:37:28,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:37:28,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:37:30,837.837 INFO    ] ================================================
[2026-06-19 05:37:30,852.852 INFO    ] Launching Daemon at Fri Jun 19 05:37:30 IST 2026
[2026-06-19 05:37:30,863.863 INFO    ] ================================================
[2026-06-19 05:37:31,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:37:31
[2026-06-19 05:37:32,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:37:32,367.367 INFO    ] Initializing speech engine...
[2026-06-19 05:37:32,383.383 INFO    ] 2026-06-19 05:37:32
[2026-06-19 05:37:32,650.650 INFO    ] 2026-06-19 05:37:32
[2026-06-19 05:37:32,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:37:32,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:37:32,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:37:32,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:37:32,997.997 INFO    ] time= 19/06/2026 05:37:32
[2026-06-19 05:37:33,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:37:33,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:37:33,132.132 INFO    ] No existing commands found in stream
[2026-06-19 05:37:38,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:37:38,147.147 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 05:37:41,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:37:41,340.340 INFO    ] Checking for system updates...
[2026-06-19 05:37:41,379.379 INFO    ] 200
[2026-06-19 05:37:41,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:41,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:37:41,446.446 INFO    ] No update needed
[2026-06-19 05:37:41,449.449 INFO    ] Checking for camera pi updates...
[2026-06-19 05:37:41,507.507 INFO    ] 200
[2026-06-19 05:37:41,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:41,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:37:41,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:37:41,599.599 INFO    ] No camera update needed
[2026-06-19 05:37:41,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:37:41,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:37:41,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:37:41,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:37:43,655.655 INFO    ] ================================================
[2026-06-19 05:37:43,670.670 INFO    ] Launching Daemon at Fri Jun 19 05:37:43 IST 2026
[2026-06-19 05:37:43,681.681 INFO    ] ================================================
[2026-06-19 05:37:44,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:37:44
[2026-06-19 05:37:44,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:37:45,289.289 INFO    ] Initializing speech engine...
[2026-06-19 05:37:45,297.297 INFO    ] 2026-06-19 05:37:45
[2026-06-19 05:37:45,582.582 INFO    ] 2026-06-19 05:37:45
[2026-06-19 05:37:45,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:37:45,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:37:45,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:37:46,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:37:46,101.101 INFO    ] time= 19/06/2026 05:37:46
[2026-06-19 05:37:46,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:37:46,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:37:46,263.263 INFO    ] No existing commands found in stream
[2026-06-19 05:37:51,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:37:51,293.293 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 05:37:55,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:37:55,570.570 INFO    ] Checking for system updates...
[2026-06-19 05:37:55,608.608 INFO    ] 200
[2026-06-19 05:37:55,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:55,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:37:55,667.667 INFO    ] No update needed
[2026-06-19 05:37:55,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 05:37:55,704.704 INFO    ] 200
[2026-06-19 05:37:55,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:37:55,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:37:55,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:37:55,795.795 INFO    ] No camera update needed
[2026-06-19 05:37:55,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:37:55,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:37:55,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:37:55,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:37:57,854.854 INFO    ] ================================================
[2026-06-19 05:37:57,869.869 INFO    ] Launching Daemon at Fri Jun 19 05:37:57 IST 2026
[2026-06-19 05:37:57,880.880 INFO    ] ================================================
[2026-06-19 05:37:58,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:37:58
[2026-06-19 05:37:59,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:37:59,349.349 INFO    ] Initializing speech engine...
[2026-06-19 05:37:59,356.356 INFO    ] 2026-06-19 05:37:59
[2026-06-19 05:37:59,611.611 INFO    ] 2026-06-19 05:37:59
[2026-06-19 05:37:59,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:37:59,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:37:59,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:37:59,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:37:59,981.981 INFO    ] time= 19/06/2026 05:37:59
[2026-06-19 05:37:59,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:38:00,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:38:00,144.144 INFO    ] No existing commands found in stream
[2026-06-19 05:38:05,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:38:05,178.178 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 05:38:06,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:38:06,302.302 INFO    ] Checking for system updates...
[2026-06-19 05:38:06,338.338 INFO    ] 200
[2026-06-19 05:38:06,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:06,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:38:06,397.397 INFO    ] No update needed
[2026-06-19 05:38:06,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 05:38:06,433.433 INFO    ] 200
[2026-06-19 05:38:06,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:06,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:38:06,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:38:06,526.526 INFO    ] No camera update needed
[2026-06-19 05:38:06,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:38:06,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:38:06,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:38:06,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:38:08,583.583 INFO    ] ================================================
[2026-06-19 05:38:08,599.599 INFO    ] Launching Daemon at Fri Jun 19 05:38:08 IST 2026
[2026-06-19 05:38:08,609.609 INFO    ] ================================================
[2026-06-19 05:38:09,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:38:09
[2026-06-19 05:38:09,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:38:10,076.076 INFO    ] Initializing speech engine...
[2026-06-19 05:38:10,085.085 INFO    ] 2026-06-19 05:38:10
[2026-06-19 05:38:10,343.343 INFO    ] 2026-06-19 05:38:10
[2026-06-19 05:38:10,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:38:10,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:38:10,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:38:10,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:38:10,815.815 INFO    ] time= 19/06/2026 05:38:10
[2026-06-19 05:38:10,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:38:10,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:38:10,951.951 INFO    ] No existing commands found in stream
[2026-06-19 05:38:15,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:38:15,967.967 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 05:38:17,397.397 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:38:17,400.400 INFO    ] Checking for system updates...
[2026-06-19 05:38:17,437.437 INFO    ] 200
[2026-06-19 05:38:17,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:17,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:38:17,496.496 INFO    ] No update needed
[2026-06-19 05:38:17,499.499 INFO    ] Checking for camera pi updates...
[2026-06-19 05:38:17,534.534 INFO    ] 200
[2026-06-19 05:38:17,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:17,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:38:17,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:38:17,624.624 INFO    ] No camera update needed
[2026-06-19 05:38:17,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:38:17,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:38:17,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:38:17,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:38:19,682.682 INFO    ] ================================================
[2026-06-19 05:38:19,697.697 INFO    ] Launching Daemon at Fri Jun 19 05:38:19 IST 2026
[2026-06-19 05:38:19,708.708 INFO    ] ================================================
[2026-06-19 05:38:20,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:38:20
[2026-06-19 05:38:21,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:38:21,302.302 INFO    ] Initializing speech engine...
[2026-06-19 05:38:21,309.309 INFO    ] 2026-06-19 05:38:21
[2026-06-19 05:38:21,570.570 INFO    ] 2026-06-19 05:38:21
[2026-06-19 05:38:21,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:38:21,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:38:21,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:38:21,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:38:22,036.036 INFO    ] time= 19/06/2026 05:38:21
[2026-06-19 05:38:22,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:38:22,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:38:22,197.197 INFO    ] No existing commands found in stream
[2026-06-19 05:38:27,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:38:27,237.237 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 05:38:29,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:38:29,253.253 INFO    ] Checking for system updates...
[2026-06-19 05:38:29,289.289 INFO    ] 200
[2026-06-19 05:38:29,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:29,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:38:29,361.361 INFO    ] No update needed
[2026-06-19 05:38:29,363.363 INFO    ] Checking for camera pi updates...
[2026-06-19 05:38:29,396.396 INFO    ] 200
[2026-06-19 05:38:29,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:29,439.439 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:38:29,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:38:29,484.484 INFO    ] No camera update needed
[2026-06-19 05:38:29,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:38:29,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:38:29,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:38:29,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:38:31,539.539 INFO    ] ================================================
[2026-06-19 05:38:31,556.556 INFO    ] Launching Daemon at Fri Jun 19 05:38:31 IST 2026
[2026-06-19 05:38:31,567.567 INFO    ] ================================================
[2026-06-19 05:38:32,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:38:32
[2026-06-19 05:38:32,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:38:33,050.050 INFO    ] Initializing speech engine...
[2026-06-19 05:38:33,060.060 INFO    ] 2026-06-19 05:38:33
[2026-06-19 05:38:33,306.306 INFO    ] 2026-06-19 05:38:33
[2026-06-19 05:38:33,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:38:33,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:38:33,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:38:33,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:38:33,779.779 INFO    ] time= 19/06/2026 05:38:33
[2026-06-19 05:38:33,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:38:33,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:38:33,927.927 INFO    ] No existing commands found in stream
[2026-06-19 05:38:38,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:38:38,941.941 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 05:38:40,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:38:40,204.204 INFO    ] Checking for system updates...
[2026-06-19 05:38:40,240.240 INFO    ] 200
[2026-06-19 05:38:40,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:40,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:38:40,297.297 INFO    ] No update needed
[2026-06-19 05:38:40,300.300 INFO    ] Checking for camera pi updates...
[2026-06-19 05:38:40,334.334 INFO    ] 200
[2026-06-19 05:38:40,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:40,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:38:40,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:38:40,420.420 INFO    ] No camera update needed
[2026-06-19 05:38:40,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:38:40,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:38:40,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:38:40,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:38:42,479.479 INFO    ] ================================================
[2026-06-19 05:38:42,494.494 INFO    ] Launching Daemon at Fri Jun 19 05:38:42 IST 2026
[2026-06-19 05:38:42,505.505 INFO    ] ================================================
[2026-06-19 05:38:43,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:38:43
[2026-06-19 05:38:43,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:38:43,977.977 INFO    ] Initializing speech engine...
[2026-06-19 05:38:43,983.983 INFO    ] 2026-06-19 05:38:43
[2026-06-19 05:38:44,246.246 INFO    ] 2026-06-19 05:38:44
[2026-06-19 05:38:44,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:38:44,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:38:44,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:38:44,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:38:44,714.714 INFO    ] time= 19/06/2026 05:38:44
[2026-06-19 05:38:44,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:38:44,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:38:44,880.880 INFO    ] No existing commands found in stream
[2026-06-19 05:38:49,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:38:49,892.892 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 05:38:51,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:38:51,779.779 INFO    ] Checking for system updates...
[2026-06-19 05:38:51,815.815 INFO    ] 200
[2026-06-19 05:38:51,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:51,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:38:51,872.872 INFO    ] No update needed
[2026-06-19 05:38:51,874.874 INFO    ] Checking for camera pi updates...
[2026-06-19 05:38:51,907.907 INFO    ] 200
[2026-06-19 05:38:51,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:38:51,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:38:51,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:38:51,996.996 INFO    ] No camera update needed
[2026-06-19 05:38:51,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:38:52,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:38:52,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:38:52,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:38:54,052.052 INFO    ] ================================================
[2026-06-19 05:38:54,067.067 INFO    ] Launching Daemon at Fri Jun 19 05:38:54 IST 2026
[2026-06-19 05:38:54,078.078 INFO    ] ================================================
[2026-06-19 05:38:54,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:38:54
[2026-06-19 05:38:55,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:38:55,506.506 INFO    ] Initializing speech engine...
[2026-06-19 05:38:55,516.516 INFO    ] 2026-06-19 05:38:55
[2026-06-19 05:38:55,761.761 INFO    ] 2026-06-19 05:38:55
[2026-06-19 05:38:55,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:38:55,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:38:56,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:38:56,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:38:56,239.239 INFO    ] time= 19/06/2026 05:38:56
[2026-06-19 05:38:56,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:38:56,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:38:56,386.386 INFO    ] No existing commands found in stream
[2026-06-19 05:39:01,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:39:01,408.408 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 05:39:05,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:39:05,180.180 INFO    ] Checking for system updates...
[2026-06-19 05:39:05,216.216 INFO    ] 200
[2026-06-19 05:39:05,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:05,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:39:05,273.273 INFO    ] No update needed
[2026-06-19 05:39:05,275.275 INFO    ] Checking for camera pi updates...
[2026-06-19 05:39:05,310.310 INFO    ] 200
[2026-06-19 05:39:05,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:05,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:39:05,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:39:05,381.381 INFO    ] No camera update needed
[2026-06-19 05:39:05,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:39:05,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:39:05,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:39:05,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:39:07,437.437 INFO    ] ================================================
[2026-06-19 05:39:07,452.452 INFO    ] Launching Daemon at Fri Jun 19 05:39:07 IST 2026
[2026-06-19 05:39:07,463.463 INFO    ] ================================================
[2026-06-19 05:39:08,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:39:08
[2026-06-19 05:39:08,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:39:08,897.897 INFO    ] Initializing speech engine...
[2026-06-19 05:39:08,907.907 INFO    ] 2026-06-19 05:39:08
[2026-06-19 05:39:09,167.167 INFO    ] 2026-06-19 05:39:09
[2026-06-19 05:39:09,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:39:09,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:39:09,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:39:09,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:39:09,606.606 INFO    ] time= 19/06/2026 05:39:09
[2026-06-19 05:39:09,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:39:09,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:39:09,772.772 INFO    ] No existing commands found in stream
[2026-06-19 05:39:14,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:39:14,787.787 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 05:39:17,838.838 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:39:17,842.842 INFO    ] Checking for system updates...
[2026-06-19 05:39:17,880.880 INFO    ] 200
[2026-06-19 05:39:17,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:17,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:39:17,939.939 INFO    ] No update needed
[2026-06-19 05:39:17,942.942 INFO    ] Checking for camera pi updates...
[2026-06-19 05:39:17,977.977 INFO    ] 200
[2026-06-19 05:39:17,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:18,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:39:18,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:39:18,174.174 INFO    ] No camera update needed
[2026-06-19 05:39:18,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:39:18,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:39:18,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:39:18,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:39:20,235.235 INFO    ] ================================================
[2026-06-19 05:39:20,250.250 INFO    ] Launching Daemon at Fri Jun 19 05:39:20 IST 2026
[2026-06-19 05:39:20,261.261 INFO    ] ================================================
[2026-06-19 05:39:20,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:39:20
[2026-06-19 05:39:21,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:39:21,701.701 INFO    ] Initializing speech engine...
[2026-06-19 05:39:21,708.708 INFO    ] 2026-06-19 05:39:21
[2026-06-19 05:39:21,954.954 INFO    ] 2026-06-19 05:39:21
[2026-06-19 05:39:21,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:39:22,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:39:22,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:39:22,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:39:22,325.325 INFO    ] time= 19/06/2026 05:39:22
[2026-06-19 05:39:22,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:39:22,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:39:22,493.493 INFO    ] No existing commands found in stream
[2026-06-19 05:39:27,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:39:27,532.532 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 05:39:31,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:39:31,203.203 INFO    ] Checking for system updates...
[2026-06-19 05:39:31,254.254 INFO    ] 200
[2026-06-19 05:39:31,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:31,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:39:31,318.318 INFO    ] No update needed
[2026-06-19 05:39:31,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 05:39:31,357.357 INFO    ] 200
[2026-06-19 05:39:31,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:31,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:39:31,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:39:31,458.458 INFO    ] No camera update needed
[2026-06-19 05:39:31,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:39:31,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:39:31,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:39:31,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:39:33,521.521 INFO    ] ================================================
[2026-06-19 05:39:33,536.536 INFO    ] Launching Daemon at Fri Jun 19 05:39:33 IST 2026
[2026-06-19 05:39:33,547.547 INFO    ] ================================================
[2026-06-19 05:39:34,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:39:34
[2026-06-19 05:39:34,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:39:34,948.948 INFO    ] Initializing speech engine...
[2026-06-19 05:39:34,963.963 INFO    ] 2026-06-19 05:39:34
[2026-06-19 05:39:35,229.229 INFO    ] 2026-06-19 05:39:35
[2026-06-19 05:39:35,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:39:35,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:39:35,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:39:35,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:39:35,571.571 INFO    ] time= 19/06/2026 05:39:35
[2026-06-19 05:39:35,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:39:35,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:39:35,683.683 INFO    ] No existing commands found in stream
[2026-06-19 05:39:40,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:39:40,699.699 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 05:39:41,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:39:41,693.693 INFO    ] Checking for system updates...
[2026-06-19 05:39:41,729.729 INFO    ] 200
[2026-06-19 05:39:41,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:41,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:39:41,787.787 INFO    ] No update needed
[2026-06-19 05:39:41,789.789 INFO    ] Checking for camera pi updates...
[2026-06-19 05:39:41,823.823 INFO    ] 200
[2026-06-19 05:39:41,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:41,867.867 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:39:41,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:39:41,911.911 INFO    ] No camera update needed
[2026-06-19 05:39:41,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:39:41,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:39:41,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:39:41,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:39:43,968.968 INFO    ] ================================================
[2026-06-19 05:39:43,983.983 INFO    ] Launching Daemon at Fri Jun 19 05:39:43 IST 2026
[2026-06-19 05:39:43,994.994 INFO    ] ================================================
[2026-06-19 05:39:44,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:39:44
[2026-06-19 05:39:45,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:39:45,554.554 INFO    ] Initializing speech engine...
[2026-06-19 05:39:45,569.569 INFO    ] 2026-06-19 05:39:45
[2026-06-19 05:39:45,860.860 INFO    ] 2026-06-19 05:39:45
[2026-06-19 05:39:45,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:39:46,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:39:46,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:39:46,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:39:46,402.402 INFO    ] time= 19/06/2026 05:39:46
[2026-06-19 05:39:46,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:39:46,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:39:46,550.550 INFO    ] No existing commands found in stream
[2026-06-19 05:39:51,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:39:51,575.575 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 05:39:54,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:39:54,096.096 INFO    ] Checking for system updates...
[2026-06-19 05:39:54,133.133 INFO    ] 200
[2026-06-19 05:39:54,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:54,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:39:54,193.193 INFO    ] No update needed
[2026-06-19 05:39:54,196.196 INFO    ] Checking for camera pi updates...
[2026-06-19 05:39:54,231.231 INFO    ] 200
[2026-06-19 05:39:54,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:39:54,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:39:54,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:39:54,321.321 INFO    ] No camera update needed
[2026-06-19 05:39:54,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:39:54,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:39:54,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:39:54,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:39:56,380.380 INFO    ] ================================================
[2026-06-19 05:39:56,396.396 INFO    ] Launching Daemon at Fri Jun 19 05:39:56 IST 2026
[2026-06-19 05:39:56,407.407 INFO    ] ================================================
[2026-06-19 05:39:57,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:39:57
[2026-06-19 05:39:57,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:39:58,078.078 INFO    ] Initializing speech engine...
[2026-06-19 05:39:58,090.090 INFO    ] 2026-06-19 05:39:58
[2026-06-19 05:39:58,403.403 INFO    ] 2026-06-19 05:39:58
[2026-06-19 05:39:58,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:39:58,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:39:58,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:39:58,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:39:58,922.922 INFO    ] time= 19/06/2026 05:39:58
[2026-06-19 05:39:58,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:39:58,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:39:59,079.079 INFO    ] No existing commands found in stream
[2026-06-19 05:40:04,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:40:04,101.101 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 05:40:07,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:40:07,927.927 INFO    ] Checking for system updates...
[2026-06-19 05:40:07,965.965 INFO    ] 200
[2026-06-19 05:40:07,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:08,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:40:08,024.024 INFO    ] No update needed
[2026-06-19 05:40:08,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 05:40:08,061.061 INFO    ] 200
[2026-06-19 05:40:08,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:08,106.106 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:40:08,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:40:08,150.150 INFO    ] No camera update needed
[2026-06-19 05:40:08,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:40:08,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:40:08,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:40:08,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:40:10,208.208 INFO    ] ================================================
[2026-06-19 05:40:10,226.226 INFO    ] Launching Daemon at Fri Jun 19 05:40:10 IST 2026
[2026-06-19 05:40:10,238.238 INFO    ] ================================================
[2026-06-19 05:40:10,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:40:10
[2026-06-19 05:40:11,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:40:11,680.680 INFO    ] Initializing speech engine...
[2026-06-19 05:40:11,696.696 INFO    ] 2026-06-19 05:40:11
[2026-06-19 05:40:11,982.982 INFO    ] 2026-06-19 05:40:11
[2026-06-19 05:40:12,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:40:12,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:40:12,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:40:12,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:40:12,336.336 INFO    ] time= 19/06/2026 05:40:12
[2026-06-19 05:40:12,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:40:12,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:40:12,405.405 INFO    ] No existing commands found in stream
[2026-06-19 05:40:17,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:40:17,425.425 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 05:40:18,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:40:18,147.147 INFO    ] Checking for system updates...
[2026-06-19 05:40:18,182.182 INFO    ] 200
[2026-06-19 05:40:18,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:18,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:40:18,240.240 INFO    ] No update needed
[2026-06-19 05:40:18,242.242 INFO    ] Checking for camera pi updates...
[2026-06-19 05:40:18,277.277 INFO    ] 200
[2026-06-19 05:40:18,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:18,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:40:18,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:40:18,371.371 INFO    ] No camera update needed
[2026-06-19 05:40:18,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:40:18,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:40:18,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:40:18,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:40:20,426.426 INFO    ] ================================================
[2026-06-19 05:40:20,442.442 INFO    ] Launching Daemon at Fri Jun 19 05:40:20 IST 2026
[2026-06-19 05:40:20,453.453 INFO    ] ================================================
[2026-06-19 05:40:21,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:40:21
[2026-06-19 05:40:21,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:40:21,952.952 INFO    ] Initializing speech engine...
[2026-06-19 05:40:21,966.966 INFO    ] 2026-06-19 05:40:21
[2026-06-19 05:40:22,221.221 INFO    ] 2026-06-19 05:40:22
[2026-06-19 05:40:22,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:40:22,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:40:22,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:40:22,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:40:22,560.560 INFO    ] time= 19/06/2026 05:40:22
[2026-06-19 05:40:22,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:40:22,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:40:22,675.675 INFO    ] No existing commands found in stream
[2026-06-19 05:40:27,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:40:27,698.698 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 05:40:30,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:40:30,592.592 INFO    ] Checking for system updates...
[2026-06-19 05:40:30,628.628 INFO    ] 200
[2026-06-19 05:40:30,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:30,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:40:30,686.686 INFO    ] No update needed
[2026-06-19 05:40:30,688.688 INFO    ] Checking for camera pi updates...
[2026-06-19 05:40:30,723.723 INFO    ] 200
[2026-06-19 05:40:30,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:30,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:40:30,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:40:30,812.812 INFO    ] No camera update needed
[2026-06-19 05:40:30,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:40:30,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:40:30,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:40:30,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:40:32,871.871 INFO    ] ================================================
[2026-06-19 05:40:32,888.888 INFO    ] Launching Daemon at Fri Jun 19 05:40:32 IST 2026
[2026-06-19 05:40:32,901.901 INFO    ] ================================================
[2026-06-19 05:40:33,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:40:33
[2026-06-19 05:40:34,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:40:34,397.397 INFO    ] Initializing speech engine...
[2026-06-19 05:40:34,406.406 INFO    ] 2026-06-19 05:40:34
[2026-06-19 05:40:34,665.665 INFO    ] 2026-06-19 05:40:34
[2026-06-19 05:40:34,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:40:34,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:40:34,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:40:35,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:40:35,142.142 INFO    ] time= 19/06/2026 05:40:35
[2026-06-19 05:40:35,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:40:35,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:40:35,273.273 INFO    ] No existing commands found in stream
[2026-06-19 05:40:40,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:40:40,288.288 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 05:40:41,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:40:41,397.397 INFO    ] Checking for system updates...
[2026-06-19 05:40:41,434.434 INFO    ] 200
[2026-06-19 05:40:41,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:41,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:40:41,493.493 INFO    ] No update needed
[2026-06-19 05:40:41,496.496 INFO    ] Checking for camera pi updates...
[2026-06-19 05:40:41,538.538 INFO    ] 200
[2026-06-19 05:40:41,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:41,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:40:41,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:40:41,632.632 INFO    ] No camera update needed
[2026-06-19 05:40:41,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:40:41,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:40:41,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:40:41,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:40:43,688.688 INFO    ] ================================================
[2026-06-19 05:40:43,704.704 INFO    ] Launching Daemon at Fri Jun 19 05:40:43 IST 2026
[2026-06-19 05:40:43,715.715 INFO    ] ================================================
[2026-06-19 05:40:44,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:40:44
[2026-06-19 05:40:44,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:40:45,217.217 INFO    ] Initializing speech engine...
[2026-06-19 05:40:45,224.224 INFO    ] 2026-06-19 05:40:45
[2026-06-19 05:40:45,472.472 INFO    ] 2026-06-19 05:40:45
[2026-06-19 05:40:45,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:40:45,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:40:45,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:40:45,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:40:45,861.861 INFO    ] time= 19/06/2026 05:40:45
[2026-06-19 05:40:45,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:40:45,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:40:45,950.950 INFO    ] No existing commands found in stream
[2026-06-19 05:40:50,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:40:50,965.965 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 05:40:55,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:40:55,192.192 INFO    ] Checking for system updates...
[2026-06-19 05:40:55,228.228 INFO    ] 200
[2026-06-19 05:40:55,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:55,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:40:55,286.286 INFO    ] No update needed
[2026-06-19 05:40:55,288.288 INFO    ] Checking for camera pi updates...
[2026-06-19 05:40:55,322.322 INFO    ] 200
[2026-06-19 05:40:55,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:40:55,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:40:55,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:40:55,411.411 INFO    ] No camera update needed
[2026-06-19 05:40:55,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:40:55,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:40:55,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:40:55,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:40:57,467.467 INFO    ] ================================================
[2026-06-19 05:40:57,483.483 INFO    ] Launching Daemon at Fri Jun 19 05:40:57 IST 2026
[2026-06-19 05:40:57,494.494 INFO    ] ================================================
[2026-06-19 05:40:58,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:40:58
[2026-06-19 05:40:58,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:40:58,939.939 INFO    ] Initializing speech engine...
[2026-06-19 05:40:58,958.958 INFO    ] 2026-06-19 05:40:58
[2026-06-19 05:40:59,208.208 INFO    ] 2026-06-19 05:40:59
[2026-06-19 05:40:59,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:40:59,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:40:59,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:40:59,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:40:59,645.645 INFO    ] time= 19/06/2026 05:40:59
[2026-06-19 05:40:59,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:40:59,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:40:59,827.827 INFO    ] No existing commands found in stream
[2026-06-19 05:41:04,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:41:04,842.842 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 05:41:07,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:41:07,503.503 INFO    ] Checking for system updates...
[2026-06-19 05:41:07,544.544 INFO    ] 200
[2026-06-19 05:41:07,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:07,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:41:07,610.610 INFO    ] No update needed
[2026-06-19 05:41:07,612.612 INFO    ] Checking for camera pi updates...
[2026-06-19 05:41:07,647.647 INFO    ] 200
[2026-06-19 05:41:07,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:07,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:41:07,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:41:07,731.731 INFO    ] No camera update needed
[2026-06-19 05:41:07,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:41:07,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:41:07,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:41:07,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:41:09,787.787 INFO    ] ================================================
[2026-06-19 05:41:09,802.802 INFO    ] Launching Daemon at Fri Jun 19 05:41:09 IST 2026
[2026-06-19 05:41:09,814.814 INFO    ] ================================================
[2026-06-19 05:41:10,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:41:10
[2026-06-19 05:41:11,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:41:11,444.444 INFO    ] Initializing speech engine...
[2026-06-19 05:41:11,457.457 INFO    ] 2026-06-19 05:41:11
[2026-06-19 05:41:11,737.737 INFO    ] 2026-06-19 05:41:11
[2026-06-19 05:41:11,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:41:11,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:41:11,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:41:12,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:41:12,114.114 INFO    ] time= 19/06/2026 05:41:12
[2026-06-19 05:41:12,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:41:12,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:41:12,242.242 INFO    ] No existing commands found in stream
[2026-06-19 05:41:17,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:41:17,258.258 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 05:41:19,988.988 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:41:19,991.991 INFO    ] Checking for system updates...
[2026-06-19 05:41:20,039.039 INFO    ] 200
[2026-06-19 05:41:20,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:20,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:41:20,113.113 INFO    ] No update needed
[2026-06-19 05:41:20,115.115 INFO    ] Checking for camera pi updates...
[2026-06-19 05:41:20,156.156 INFO    ] 200
[2026-06-19 05:41:20,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:20,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:41:20,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:41:20,352.352 INFO    ] No camera update needed
[2026-06-19 05:41:20,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:41:20,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:41:20,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:41:20,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:41:22,406.406 INFO    ] ================================================
[2026-06-19 05:41:22,421.421 INFO    ] Launching Daemon at Fri Jun 19 05:41:22 IST 2026
[2026-06-19 05:41:22,432.432 INFO    ] ================================================
[2026-06-19 05:41:23,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:41:23
[2026-06-19 05:41:23,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:41:23,872.872 INFO    ] Initializing speech engine...
[2026-06-19 05:41:23,898.898 INFO    ] 2026-06-19 05:41:23
[2026-06-19 05:41:24,150.150 INFO    ] 2026-06-19 05:41:24
[2026-06-19 05:41:24,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:41:24,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:41:24,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:41:24,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:41:24,623.623 INFO    ] time= 19/06/2026 05:41:24
[2026-06-19 05:41:24,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:41:24,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:41:24,766.766 INFO    ] No existing commands found in stream
[2026-06-19 05:41:29,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:41:29,781.781 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 05:41:33,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:41:33,075.075 INFO    ] Checking for system updates...
[2026-06-19 05:41:33,111.111 INFO    ] 200
[2026-06-19 05:41:33,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:33,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:41:33,169.169 INFO    ] No update needed
[2026-06-19 05:41:33,172.172 INFO    ] Checking for camera pi updates...
[2026-06-19 05:41:33,206.206 INFO    ] 200
[2026-06-19 05:41:33,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:33,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:41:33,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:41:33,297.297 INFO    ] No camera update needed
[2026-06-19 05:41:33,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:41:33,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:41:33,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:41:33,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:41:35,352.352 INFO    ] ================================================
[2026-06-19 05:41:35,367.367 INFO    ] Launching Daemon at Fri Jun 19 05:41:35 IST 2026
[2026-06-19 05:41:35,379.379 INFO    ] ================================================
[2026-06-19 05:41:36,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:41:36
[2026-06-19 05:41:36,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:41:37,052.052 INFO    ] Initializing speech engine...
[2026-06-19 05:41:37,066.066 INFO    ] 2026-06-19 05:41:37
[2026-06-19 05:41:37,351.351 INFO    ] 2026-06-19 05:41:37
[2026-06-19 05:41:37,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:41:37,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:41:37,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:41:37,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:41:37,786.786 INFO    ] time= 19/06/2026 05:41:37
[2026-06-19 05:41:37,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:41:37,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:41:37,952.952 INFO    ] No existing commands found in stream
[2026-06-19 05:41:42,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:41:42,966.966 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 05:41:43,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:41:43,621.621 INFO    ] Checking for system updates...
[2026-06-19 05:41:43,662.662 INFO    ] 200
[2026-06-19 05:41:43,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:43,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:41:43,727.727 INFO    ] No update needed
[2026-06-19 05:41:43,730.730 INFO    ] Checking for camera pi updates...
[2026-06-19 05:41:43,768.768 INFO    ] 200
[2026-06-19 05:41:43,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:43,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:41:43,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:41:43,858.858 INFO    ] No camera update needed
[2026-06-19 05:41:43,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:41:43,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:41:43,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:41:43,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:41:45,915.915 INFO    ] ================================================
[2026-06-19 05:41:45,930.930 INFO    ] Launching Daemon at Fri Jun 19 05:41:45 IST 2026
[2026-06-19 05:41:45,941.941 INFO    ] ================================================
[2026-06-19 05:41:46,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:41:46
[2026-06-19 05:41:47,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:41:47,374.374 INFO    ] Initializing speech engine...
[2026-06-19 05:41:47,383.383 INFO    ] 2026-06-19 05:41:47
[2026-06-19 05:41:47,645.645 INFO    ] 2026-06-19 05:41:47
[2026-06-19 05:41:47,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:41:47,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:41:47,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:41:48,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:41:48,101.101 INFO    ] time= 19/06/2026 05:41:48
[2026-06-19 05:41:48,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:41:48,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:41:48,252.252 INFO    ] No existing commands found in stream
[2026-06-19 05:41:53,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:41:53,267.267 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 05:41:55,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:41:55,243.243 INFO    ] Checking for system updates...
[2026-06-19 05:41:55,295.295 INFO    ] 200
[2026-06-19 05:41:55,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:55,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:41:55,356.356 INFO    ] No update needed
[2026-06-19 05:41:55,359.359 INFO    ] Checking for camera pi updates...
[2026-06-19 05:41:55,397.397 INFO    ] 200
[2026-06-19 05:41:55,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:41:55,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:41:55,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:41:55,487.487 INFO    ] No camera update needed
[2026-06-19 05:41:55,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:41:55,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:41:55,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:41:55,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:41:57,541.541 INFO    ] ================================================
[2026-06-19 05:41:57,556.556 INFO    ] Launching Daemon at Fri Jun 19 05:41:57 IST 2026
[2026-06-19 05:41:57,566.566 INFO    ] ================================================
[2026-06-19 05:41:58,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:41:58
[2026-06-19 05:41:58,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:41:58,989.989 INFO    ] Initializing speech engine...
[2026-06-19 05:41:58,995.995 INFO    ] 2026-06-19 05:41:58
[2026-06-19 05:41:59,297.297 INFO    ] 2026-06-19 05:41:59
[2026-06-19 05:41:59,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:41:59,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:41:59,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:41:59,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:41:59,688.688 INFO    ] time= 19/06/2026 05:41:59
[2026-06-19 05:41:59,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:41:59,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:41:59,798.798 INFO    ] No existing commands found in stream
[2026-06-19 05:42:04,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:42:04,813.813 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 05:42:08,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:42:08,706.706 INFO    ] Checking for system updates...
[2026-06-19 05:42:08,743.743 INFO    ] 200
[2026-06-19 05:42:08,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:42:08,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:42:08,811.811 INFO    ] No update needed
[2026-06-19 05:42:08,813.813 INFO    ] Checking for camera pi updates...
[2026-06-19 05:42:08,856.856 INFO    ] 200
[2026-06-19 05:42:08,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:42:08,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:42:08,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:42:08,956.956 INFO    ] No camera update needed
[2026-06-19 05:42:08,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:42:08,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:42:08,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:42:08,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:42:11,014.014 INFO    ] ================================================
[2026-06-19 05:42:11,030.030 INFO    ] Launching Daemon at Fri Jun 19 05:42:11 IST 2026
[2026-06-19 05:42:11,042.042 INFO    ] ================================================
[2026-06-19 05:42:11,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:42:11
[2026-06-19 05:42:12,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:42:12,551.551 INFO    ] Initializing speech engine...
[2026-06-19 05:42:12,563.563 INFO    ] 2026-06-19 05:42:12
[2026-06-19 05:42:12,843.843 INFO    ] 2026-06-19 05:42:12
[2026-06-19 05:42:12,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:42:13,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:42:13,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:42:13,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:42:13,337.337 INFO    ] time= 19/06/2026 05:42:13
[2026-06-19 05:42:13,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:42:13,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:42:13,527.527 INFO    ] No existing commands found in stream
[2026-06-19 05:42:18,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:42:18,557.557 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 05:42:20,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:42:20,961.961 INFO    ] Checking for system updates...
[2026-06-19 05:42:21,003.003 INFO    ] 200
[2026-06-19 05:42:21,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:42:21,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:42:21,071.071 INFO    ] No update needed
[2026-06-19 05:42:21,074.074 INFO    ] Checking for camera pi updates...
[2026-06-19 05:42:21,113.113 INFO    ] 200
[2026-06-19 05:42:21,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:42:21,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:42:21,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:42:21,201.201 INFO    ] No camera update needed
[2026-06-19 05:42:21,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:42:21,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:42:21,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:42:21,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:42:23,266.266 INFO    ] ================================================
[2026-06-19 05:42:23,283.283 INFO    ] Launching Daemon at Fri Jun 19 05:42:23 IST 2026
[2026-06-19 05:42:23,293.293 INFO    ] ================================================
[2026-06-19 05:42:23,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:42:23
[2026-06-19 05:42:24,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:42:24,777.777 INFO    ] Initializing speech engine...
[2026-06-19 05:42:24,785.785 INFO    ] 2026-06-19 05:42:24
[2026-06-19 05:42:25,059.059 INFO    ] 2026-06-19 05:42:25
[2026-06-19 05:42:25,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:42:25,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:42:25,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:42:25,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:42:25,483.483 INFO    ] time= 19/06/2026 05:42:25
[2026-06-19 05:42:25,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:42:25,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:42:25,638.638 INFO    ] No existing commands found in stream
[2026-06-19 05:42:30,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:42:30,662.662 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 05:42:33,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:42:33,616.616 INFO    ] Checking for system updates...
[2026-06-19 05:42:33,651.651 INFO    ] 200
[2026-06-19 05:42:33,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:42:33,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:42:33,718.718 INFO    ] No update needed
[2026-06-19 05:42:33,720.720 INFO    ] Checking for camera pi updates...
[2026-06-19 05:42:33,758.758 INFO    ] 200
[2026-06-19 05:42:33,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:42:33,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:42:33,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:42:33,853.853 INFO    ] No camera update needed
[2026-06-19 05:42:33,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:42:33,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:42:33,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:42:33,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:42:35,909.909 INFO    ] ================================================
[2026-06-19 05:42:35,925.925 INFO    ] Launching Daemon at Fri Jun 19 05:42:35 IST 2026
[2026-06-19 05:42:35,936.936 INFO    ] ================================================
[2026-06-19 05:42:36,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:42:36
[2026-06-19 05:42:37,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:42:37,382.382 INFO    ] Initializing speech engine...
[2026-06-19 05:42:37,391.391 INFO    ] 2026-06-19 05:42:37
[2026-06-19 05:42:37,639.639 INFO    ] 2026-06-19 05:42:37
[2026-06-19 05:42:37,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:42:37,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:42:37,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:42:38,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:42:38,112.112 INFO    ] time= 19/06/2026 05:42:38
[2026-06-19 05:42:38,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:42:38,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:42:38,263.263 INFO    ] No existing commands found in stream
[2026-06-19 05:42:43,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:42:43,278.278 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 05:42:47,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:42:47,590.590 INFO    ] Checking for system updates...
[2026-06-19 05:42:47,626.626 INFO    ] 200
[2026-06-19 05:42:47,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:42:47,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:42:47,688.688 INFO    ] No update needed
[2026-06-19 05:42:47,691.691 INFO    ] Checking for camera pi updates...
[2026-06-19 05:42:47,725.725 INFO    ] 200
[2026-06-19 05:42:47,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:42:47,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:42:47,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:42:47,808.808 INFO    ] No camera update needed
[2026-06-19 05:42:47,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:42:47,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:42:47,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:42:47,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:42:49,866.866 INFO    ] ================================================
[2026-06-19 05:42:49,882.882 INFO    ] Launching Daemon at Fri Jun 19 05:42:49 IST 2026
[2026-06-19 05:42:49,893.893 INFO    ] ================================================
[2026-06-19 05:42:50,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:42:50
[2026-06-19 05:42:51,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:42:51,319.319 INFO    ] Initializing speech engine...
[2026-06-19 05:42:51,326.326 INFO    ] 2026-06-19 05:42:51
[2026-06-19 05:42:51,595.595 INFO    ] 2026-06-19 05:42:51
[2026-06-19 05:42:51,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:42:51,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:42:51,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:42:52,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:42:52,060.060 INFO    ] time= 19/06/2026 05:42:52
[2026-06-19 05:42:52,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:42:52,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:42:52,213.213 INFO    ] No existing commands found in stream
[2026-06-19 05:42:57,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:42:57,228.228 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 05:43:01,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:43:01,647.647 INFO    ] Checking for system updates...
[2026-06-19 05:43:01,692.692 INFO    ] 200
[2026-06-19 05:43:01,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:01,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:43:01,782.782 INFO    ] No update needed
[2026-06-19 05:43:01,787.787 INFO    ] Checking for camera pi updates...
[2026-06-19 05:43:01,831.831 INFO    ] 200
[2026-06-19 05:43:01,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:01,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:43:01,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:43:01,930.930 INFO    ] No camera update needed
[2026-06-19 05:43:01,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:43:01,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:43:01,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:43:01,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:43:03,992.992 INFO    ] ================================================
[2026-06-19 05:43:04,009.009 INFO    ] Launching Daemon at Fri Jun 19 05:43:04 IST 2026
[2026-06-19 05:43:04,020.020 INFO    ] ================================================
[2026-06-19 05:43:04,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:43:04
[2026-06-19 05:43:05,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:43:05,426.426 INFO    ] Initializing speech engine...
[2026-06-19 05:43:05,448.448 INFO    ] 2026-06-19 05:43:05
[2026-06-19 05:43:05,712.712 INFO    ] 2026-06-19 05:43:05
[2026-06-19 05:43:05,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:43:05,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:43:05,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:43:06,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:43:06,113.113 INFO    ] time= 19/06/2026 05:43:06
[2026-06-19 05:43:06,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:43:06,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:43:06,192.192 INFO    ] No existing commands found in stream
[2026-06-19 05:43:11,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:43:11,210.210 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 05:43:14,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:43:14,411.411 INFO    ] Checking for system updates...
[2026-06-19 05:43:14,451.451 INFO    ] 200
[2026-06-19 05:43:14,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:14,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:43:14,516.516 INFO    ] No update needed
[2026-06-19 05:43:14,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 05:43:14,556.556 INFO    ] 200
[2026-06-19 05:43:14,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:14,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:43:14,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:43:14,644.644 INFO    ] No camera update needed
[2026-06-19 05:43:14,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:43:14,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:43:14,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:43:14,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:43:16,702.702 INFO    ] ================================================
[2026-06-19 05:43:16,721.721 INFO    ] Launching Daemon at Fri Jun 19 05:43:16 IST 2026
[2026-06-19 05:43:16,733.733 INFO    ] ================================================
[2026-06-19 05:43:17,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:43:17
[2026-06-19 05:43:17,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:43:18,144.144 INFO    ] Initializing speech engine...
[2026-06-19 05:43:18,157.157 INFO    ] 2026-06-19 05:43:18
[2026-06-19 05:43:18,429.429 INFO    ] 2026-06-19 05:43:18
[2026-06-19 05:43:18,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:43:18,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:43:18,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:43:18,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:43:18,916.916 INFO    ] time= 19/06/2026 05:43:18
[2026-06-19 05:43:18,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:43:19,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:43:19,057.057 INFO    ] No existing commands found in stream
[2026-06-19 05:43:24,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:43:24,072.072 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 05:43:26,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:43:26,352.352 INFO    ] Checking for system updates...
[2026-06-19 05:43:26,391.391 INFO    ] 200
[2026-06-19 05:43:26,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:26,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:43:26,451.451 INFO    ] No update needed
[2026-06-19 05:43:26,454.454 INFO    ] Checking for camera pi updates...
[2026-06-19 05:43:26,494.494 INFO    ] 200
[2026-06-19 05:43:26,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:26,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:43:26,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:43:26,686.686 INFO    ] No camera update needed
[2026-06-19 05:43:26,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:43:26,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:43:26,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:43:26,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:43:28,753.753 INFO    ] ================================================
[2026-06-19 05:43:28,769.769 INFO    ] Launching Daemon at Fri Jun 19 05:43:28 IST 2026
[2026-06-19 05:43:28,780.780 INFO    ] ================================================
[2026-06-19 05:43:29,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:43:29
[2026-06-19 05:43:29,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:43:30,209.209 INFO    ] Initializing speech engine...
[2026-06-19 05:43:30,215.215 INFO    ] 2026-06-19 05:43:30
[2026-06-19 05:43:30,462.462 INFO    ] 2026-06-19 05:43:30
[2026-06-19 05:43:30,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:43:30,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:43:30,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:43:30,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:43:30,943.943 INFO    ] time= 19/06/2026 05:43:30
[2026-06-19 05:43:31,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:43:31,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:43:31,083.083 INFO    ] No existing commands found in stream
[2026-06-19 05:43:36,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:43:36,098.098 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 05:43:38,689.689 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:43:38,692.692 INFO    ] Checking for system updates...
[2026-06-19 05:43:38,728.728 INFO    ] 200
[2026-06-19 05:43:38,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:38,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:43:38,786.786 INFO    ] No update needed
[2026-06-19 05:43:38,788.788 INFO    ] Checking for camera pi updates...
[2026-06-19 05:43:38,823.823 INFO    ] 200
[2026-06-19 05:43:38,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:38,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:43:38,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:43:38,909.909 INFO    ] No camera update needed
[2026-06-19 05:43:38,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:43:38,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:43:38,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:43:38,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:43:40,967.967 INFO    ] ================================================
[2026-06-19 05:43:40,982.982 INFO    ] Launching Daemon at Fri Jun 19 05:43:40 IST 2026
[2026-06-19 05:43:40,993.993 INFO    ] ================================================
[2026-06-19 05:43:41,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:43:41
[2026-06-19 05:43:42,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:43:42,455.455 INFO    ] Initializing speech engine...
[2026-06-19 05:43:42,465.465 INFO    ] 2026-06-19 05:43:42
[2026-06-19 05:43:42,723.723 INFO    ] 2026-06-19 05:43:42
[2026-06-19 05:43:42,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:43:43,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:43:43,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:43:43,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:43:43,191.191 INFO    ] time= 19/06/2026 05:43:43
[2026-06-19 05:43:43,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:43:43,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:43:43,329.329 INFO    ] No existing commands found in stream
[2026-06-19 05:43:48,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:43:48,343.343 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 05:43:51,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:43:51,124.124 INFO    ] Checking for system updates...
[2026-06-19 05:43:51,160.160 INFO    ] 200
[2026-06-19 05:43:51,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:51,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:43:51,226.226 INFO    ] No update needed
[2026-06-19 05:43:51,229.229 INFO    ] Checking for camera pi updates...
[2026-06-19 05:43:51,267.267 INFO    ] 200
[2026-06-19 05:43:51,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:43:51,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:43:51,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:43:51,352.352 INFO    ] No camera update needed
[2026-06-19 05:43:51,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:43:51,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:43:51,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:43:51,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:43:53,410.410 INFO    ] ================================================
[2026-06-19 05:43:53,425.425 INFO    ] Launching Daemon at Fri Jun 19 05:43:53 IST 2026
[2026-06-19 05:43:53,436.436 INFO    ] ================================================
[2026-06-19 05:43:54,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:43:54
[2026-06-19 05:43:54,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:43:54,855.855 INFO    ] Initializing speech engine...
[2026-06-19 05:43:54,862.862 INFO    ] 2026-06-19 05:43:54
[2026-06-19 05:43:55,167.167 INFO    ] 2026-06-19 05:43:55
[2026-06-19 05:43:55,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:43:55,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:43:55,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:43:55,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:43:55,561.561 INFO    ] time= 19/06/2026 05:43:55
[2026-06-19 05:43:55,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:43:55,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:43:55,677.677 INFO    ] No existing commands found in stream
[2026-06-19 05:44:00,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:44:00,705.705 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 05:44:03,328.328 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:44:03,331.331 INFO    ] Checking for system updates...
[2026-06-19 05:44:03,371.371 INFO    ] 200
[2026-06-19 05:44:03,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:03,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:44:03,440.440 INFO    ] No update needed
[2026-06-19 05:44:03,444.444 INFO    ] Checking for camera pi updates...
[2026-06-19 05:44:03,490.490 INFO    ] 200
[2026-06-19 05:44:03,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:03,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:44:03,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:44:03,592.592 INFO    ] No camera update needed
[2026-06-19 05:44:03,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:44:03,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:44:03,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:44:03,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:44:05,650.650 INFO    ] ================================================
[2026-06-19 05:44:05,665.665 INFO    ] Launching Daemon at Fri Jun 19 05:44:05 IST 2026
[2026-06-19 05:44:05,676.676 INFO    ] ================================================
[2026-06-19 05:44:06,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:44:06
[2026-06-19 05:44:06,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:44:07,104.104 INFO    ] Initializing speech engine...
[2026-06-19 05:44:07,125.125 INFO    ] 2026-06-19 05:44:07
[2026-06-19 05:44:07,386.386 INFO    ] 2026-06-19 05:44:07
[2026-06-19 05:44:07,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:44:07,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:44:07,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:44:07,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:44:07,768.768 INFO    ] time= 19/06/2026 05:44:07
[2026-06-19 05:44:07,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:44:07,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:44:07,937.937 INFO    ] No existing commands found in stream
[2026-06-19 05:44:12,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:44:12,970.970 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 05:44:14,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:44:14,857.857 INFO    ] Checking for system updates...
[2026-06-19 05:44:14,893.893 INFO    ] 200
[2026-06-19 05:44:14,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:14,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:44:14,956.956 INFO    ] No update needed
[2026-06-19 05:44:14,959.959 INFO    ] Checking for camera pi updates...
[2026-06-19 05:44:14,992.992 INFO    ] 200
[2026-06-19 05:44:14,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:15,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:44:15,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:44:15,086.086 INFO    ] No camera update needed
[2026-06-19 05:44:15,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:44:15,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:44:15,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:44:15,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:44:17,143.143 INFO    ] ================================================
[2026-06-19 05:44:17,158.158 INFO    ] Launching Daemon at Fri Jun 19 05:44:17 IST 2026
[2026-06-19 05:44:17,169.169 INFO    ] ================================================
[2026-06-19 05:44:17,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:44:17
[2026-06-19 05:44:18,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:44:18,822.822 INFO    ] Initializing speech engine...
[2026-06-19 05:44:18,836.836 INFO    ] 2026-06-19 05:44:18
[2026-06-19 05:44:19,126.126 INFO    ] 2026-06-19 05:44:19
[2026-06-19 05:44:19,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:44:19,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:44:19,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:44:19,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:44:19,662.662 INFO    ] time= 19/06/2026 05:44:19
[2026-06-19 05:44:19,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:44:19,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:44:19,791.791 INFO    ] No existing commands found in stream
[2026-06-19 05:44:24,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:44:24,821.821 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 05:44:27,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:44:27,359.359 INFO    ] Checking for system updates...
[2026-06-19 05:44:27,399.399 INFO    ] 200
[2026-06-19 05:44:27,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:27,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:44:27,464.464 INFO    ] No update needed
[2026-06-19 05:44:27,467.467 INFO    ] Checking for camera pi updates...
[2026-06-19 05:44:27,501.501 INFO    ] 200
[2026-06-19 05:44:27,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:27,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:44:27,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:44:27,578.578 INFO    ] No camera update needed
[2026-06-19 05:44:27,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:44:27,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:44:27,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:44:27,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:44:29,634.634 INFO    ] ================================================
[2026-06-19 05:44:29,649.649 INFO    ] Launching Daemon at Fri Jun 19 05:44:29 IST 2026
[2026-06-19 05:44:29,660.660 INFO    ] ================================================
[2026-06-19 05:44:30,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:44:30
[2026-06-19 05:44:30,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:44:31,252.252 INFO    ] Initializing speech engine...
[2026-06-19 05:44:31,260.260 INFO    ] 2026-06-19 05:44:31
[2026-06-19 05:44:31,515.515 INFO    ] 2026-06-19 05:44:31
[2026-06-19 05:44:31,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:44:31,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:44:31,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:44:31,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:44:31,894.894 INFO    ] time= 19/06/2026 05:44:31
[2026-06-19 05:44:31,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:44:31,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:44:31,970.970 INFO    ] No existing commands found in stream
[2026-06-19 05:44:36,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:44:36,985.985 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 05:44:40,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:44:40,302.302 INFO    ] Checking for system updates...
[2026-06-19 05:44:40,339.339 INFO    ] 200
[2026-06-19 05:44:40,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:40,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:44:40,397.397 INFO    ] No update needed
[2026-06-19 05:44:40,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 05:44:40,438.438 INFO    ] 200
[2026-06-19 05:44:40,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:40,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:44:40,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:44:40,526.526 INFO    ] No camera update needed
[2026-06-19 05:44:40,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:44:40,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:44:40,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:44:40,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:44:42,582.582 INFO    ] ================================================
[2026-06-19 05:44:42,597.597 INFO    ] Launching Daemon at Fri Jun 19 05:44:42 IST 2026
[2026-06-19 05:44:42,608.608 INFO    ] ================================================
[2026-06-19 05:44:43,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:44:43
[2026-06-19 05:44:43,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:44:44,036.036 INFO    ] Initializing speech engine...
[2026-06-19 05:44:44,042.042 INFO    ] 2026-06-19 05:44:44
[2026-06-19 05:44:44,286.286 INFO    ] 2026-06-19 05:44:44
[2026-06-19 05:44:44,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:44:44,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:44:44,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:44:44,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:44:44,756.756 INFO    ] time= 19/06/2026 05:44:44
[2026-06-19 05:44:44,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:44:44,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:44:44,903.903 INFO    ] No existing commands found in stream
[2026-06-19 05:44:49,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:44:49,917.917 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 05:44:53,072.072 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:44:53,075.075 INFO    ] Checking for system updates...
[2026-06-19 05:44:53,112.112 INFO    ] 200
[2026-06-19 05:44:53,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:53,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:44:53,171.171 INFO    ] No update needed
[2026-06-19 05:44:53,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 05:44:53,210.210 INFO    ] 200
[2026-06-19 05:44:53,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:44:53,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:44:53,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:44:53,297.297 INFO    ] No camera update needed
[2026-06-19 05:44:53,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:44:53,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:44:53,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:44:53,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:44:55,357.357 INFO    ] ================================================
[2026-06-19 05:44:55,372.372 INFO    ] Launching Daemon at Fri Jun 19 05:44:55 IST 2026
[2026-06-19 05:44:55,382.382 INFO    ] ================================================
[2026-06-19 05:44:55,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:44:55
[2026-06-19 05:44:56,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:44:56,852.852 INFO    ] Initializing speech engine...
[2026-06-19 05:44:56,859.859 INFO    ] 2026-06-19 05:44:56
[2026-06-19 05:44:57,122.122 INFO    ] 2026-06-19 05:44:57
[2026-06-19 05:44:57,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:44:57,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:44:57,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:44:57,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:44:57,609.609 INFO    ] time= 19/06/2026 05:44:57
[2026-06-19 05:44:57,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:44:57,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:44:57,734.734 INFO    ] No existing commands found in stream
[2026-06-19 05:45:02,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:45:02,751.751 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 05:45:07,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:45:07,027.027 INFO    ] Checking for system updates...
[2026-06-19 05:45:07,064.064 INFO    ] 200
[2026-06-19 05:45:07,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:07,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:45:07,142.142 INFO    ] No update needed
[2026-06-19 05:45:07,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 05:45:07,189.189 INFO    ] 200
[2026-06-19 05:45:07,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:07,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:45:07,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:45:07,285.285 INFO    ] No camera update needed
[2026-06-19 05:45:07,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:45:07,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:45:07,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:45:07,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:45:09,343.343 INFO    ] ================================================
[2026-06-19 05:45:09,360.360 INFO    ] Launching Daemon at Fri Jun 19 05:45:09 IST 2026
[2026-06-19 05:45:09,371.371 INFO    ] ================================================
[2026-06-19 05:45:09,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:45:09
[2026-06-19 05:45:10,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:45:10,859.859 INFO    ] Initializing speech engine...
[2026-06-19 05:45:10,865.865 INFO    ] 2026-06-19 05:45:10
[2026-06-19 05:45:11,168.168 INFO    ] 2026-06-19 05:45:11
[2026-06-19 05:45:11,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:45:11,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:45:11,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:45:11,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:45:11,529.529 INFO    ] time= 19/06/2026 05:45:11
[2026-06-19 05:45:11,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:45:11,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:45:11,612.612 INFO    ] No existing commands found in stream
[2026-06-19 05:45:16,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:45:16,626.626 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 05:45:20,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:45:20,209.209 INFO    ] Checking for system updates...
[2026-06-19 05:45:20,249.249 INFO    ] 200
[2026-06-19 05:45:20,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:20,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:45:20,321.321 INFO    ] No update needed
[2026-06-19 05:45:20,323.323 INFO    ] Checking for camera pi updates...
[2026-06-19 05:45:20,367.367 INFO    ] 200
[2026-06-19 05:45:20,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:20,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:45:20,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:45:20,469.469 INFO    ] No camera update needed
[2026-06-19 05:45:20,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:45:20,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:45:20,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:45:20,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:45:22,527.527 INFO    ] ================================================
[2026-06-19 05:45:22,543.543 INFO    ] Launching Daemon at Fri Jun 19 05:45:22 IST 2026
[2026-06-19 05:45:22,554.554 INFO    ] ================================================
[2026-06-19 05:45:23,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:45:23
[2026-06-19 05:45:23,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:45:23,985.985 INFO    ] Initializing speech engine...
[2026-06-19 05:45:23,995.995 INFO    ] 2026-06-19 05:45:23
[2026-06-19 05:45:24,247.247 INFO    ] 2026-06-19 05:45:24
[2026-06-19 05:45:24,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:45:24,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:45:24,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:45:24,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:45:24,605.605 INFO    ] time= 19/06/2026 05:45:24
[2026-06-19 05:45:24,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:45:24,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:45:24,741.741 INFO    ] No existing commands found in stream
[2026-06-19 05:45:29,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:45:29,757.757 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 05:45:33,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:45:33,198.198 INFO    ] Checking for system updates...
[2026-06-19 05:45:33,238.238 INFO    ] 200
[2026-06-19 05:45:33,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:33,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:45:33,312.312 INFO    ] No update needed
[2026-06-19 05:45:33,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 05:45:33,354.354 INFO    ] 200
[2026-06-19 05:45:33,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:33,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:45:33,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:45:33,447.447 INFO    ] No camera update needed
[2026-06-19 05:45:33,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:45:33,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:45:33,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:45:33,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:45:35,514.514 INFO    ] ================================================
[2026-06-19 05:45:35,529.529 INFO    ] Launching Daemon at Fri Jun 19 05:45:35 IST 2026
[2026-06-19 05:45:35,541.541 INFO    ] ================================================
[2026-06-19 05:45:36,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:45:36
[2026-06-19 05:45:36,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:45:36,957.957 INFO    ] Initializing speech engine...
[2026-06-19 05:45:36,976.976 INFO    ] 2026-06-19 05:45:36
[2026-06-19 05:45:37,228.228 INFO    ] 2026-06-19 05:45:37
[2026-06-19 05:45:37,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:45:37,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:45:37,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:45:37,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:45:37,585.585 INFO    ] time= 19/06/2026 05:45:37
[2026-06-19 05:45:37,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:45:37,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:45:37,698.698 INFO    ] No existing commands found in stream
[2026-06-19 05:45:42,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:45:42,714.714 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 05:45:43,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:45:43,519.519 INFO    ] Checking for system updates...
[2026-06-19 05:45:43,555.555 INFO    ] 200
[2026-06-19 05:45:43,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:43,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:45:43,625.625 INFO    ] No update needed
[2026-06-19 05:45:43,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 05:45:43,660.660 INFO    ] 200
[2026-06-19 05:45:43,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:43,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:45:43,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:45:43,751.751 INFO    ] No camera update needed
[2026-06-19 05:45:43,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:45:43,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:45:43,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:45:43,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:45:45,807.807 INFO    ] ================================================
[2026-06-19 05:45:45,823.823 INFO    ] Launching Daemon at Fri Jun 19 05:45:45 IST 2026
[2026-06-19 05:45:45,835.835 INFO    ] ================================================
[2026-06-19 05:45:46,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:45:46
[2026-06-19 05:45:47,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:45:47,371.371 INFO    ] Initializing speech engine...
[2026-06-19 05:45:47,378.378 INFO    ] 2026-06-19 05:45:47
[2026-06-19 05:45:47,642.642 INFO    ] 2026-06-19 05:45:47
[2026-06-19 05:45:47,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:45:47,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:45:47,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:45:48,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:45:48,107.107 INFO    ] time= 19/06/2026 05:45:48
[2026-06-19 05:45:48,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:45:48,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:45:48,253.253 INFO    ] No existing commands found in stream
[2026-06-19 05:45:53,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:45:53,268.268 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 05:45:53,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:45:53,640.640 INFO    ] Checking for system updates...
[2026-06-19 05:45:53,681.681 INFO    ] 200
[2026-06-19 05:45:53,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:53,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:45:53,747.747 INFO    ] No update needed
[2026-06-19 05:45:53,750.750 INFO    ] Checking for camera pi updates...
[2026-06-19 05:45:53,788.788 INFO    ] 200
[2026-06-19 05:45:53,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:45:53,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:45:53,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:45:53,888.888 INFO    ] No camera update needed
[2026-06-19 05:45:53,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:45:53,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:45:53,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:45:53,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:45:55,944.944 INFO    ] ================================================
[2026-06-19 05:45:55,960.960 INFO    ] Launching Daemon at Fri Jun 19 05:45:55 IST 2026
[2026-06-19 05:45:55,971.971 INFO    ] ================================================
[2026-06-19 05:45:56,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:45:56
[2026-06-19 05:45:57,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:45:57,418.418 INFO    ] Initializing speech engine...
[2026-06-19 05:45:57,424.424 INFO    ] 2026-06-19 05:45:57
[2026-06-19 05:45:57,684.684 INFO    ] 2026-06-19 05:45:57
[2026-06-19 05:45:57,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:45:57,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:45:57,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:45:58,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:45:58,169.169 INFO    ] time= 19/06/2026 05:45:58
[2026-06-19 05:45:58,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:45:58,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:45:58,360.360 INFO    ] No existing commands found in stream
[2026-06-19 05:46:03,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:46:03,388.388 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 05:46:05,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:46:05,768.768 INFO    ] Checking for system updates...
[2026-06-19 05:46:05,804.804 INFO    ] 200
[2026-06-19 05:46:05,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:05,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:46:05,870.870 INFO    ] No update needed
[2026-06-19 05:46:05,872.872 INFO    ] Checking for camera pi updates...
[2026-06-19 05:46:05,906.906 INFO    ] 200
[2026-06-19 05:46:05,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:05,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:46:06,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:46:06,015.015 INFO    ] No camera update needed
[2026-06-19 05:46:06,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:46:06,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:46:06,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:46:06,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:46:08,075.075 INFO    ] ================================================
[2026-06-19 05:46:08,092.092 INFO    ] Launching Daemon at Fri Jun 19 05:46:08 IST 2026
[2026-06-19 05:46:08,103.103 INFO    ] ================================================
[2026-06-19 05:46:08,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:46:08
[2026-06-19 05:46:09,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:46:09,698.698 INFO    ] Initializing speech engine...
[2026-06-19 05:46:09,706.706 INFO    ] 2026-06-19 05:46:09
[2026-06-19 05:46:09,961.961 INFO    ] 2026-06-19 05:46:09
[2026-06-19 05:46:09,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:46:10,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:46:10,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:46:10,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:46:10,414.414 INFO    ] time= 19/06/2026 05:46:10
[2026-06-19 05:46:10,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:46:10,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:46:10,580.580 INFO    ] No existing commands found in stream
[2026-06-19 05:46:15,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:46:15,595.595 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 05:46:18,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:46:18,924.924 INFO    ] Checking for system updates...
[2026-06-19 05:46:18,964.964 INFO    ] 200
[2026-06-19 05:46:18,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:19,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:46:19,023.023 INFO    ] No update needed
[2026-06-19 05:46:19,025.025 INFO    ] Checking for camera pi updates...
[2026-06-19 05:46:19,064.064 INFO    ] 200
[2026-06-19 05:46:19,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:19,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:46:19,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:46:19,154.154 INFO    ] No camera update needed
[2026-06-19 05:46:19,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:46:19,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:46:19,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:46:19,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:46:21,211.211 INFO    ] ================================================
[2026-06-19 05:46:21,226.226 INFO    ] Launching Daemon at Fri Jun 19 05:46:21 IST 2026
[2026-06-19 05:46:21,237.237 INFO    ] ================================================
[2026-06-19 05:46:21,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:46:21
[2026-06-19 05:46:22,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:46:22,804.804 INFO    ] Initializing speech engine...
[2026-06-19 05:46:22,813.813 INFO    ] 2026-06-19 05:46:22
[2026-06-19 05:46:23,089.089 INFO    ] 2026-06-19 05:46:23
[2026-06-19 05:46:23,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:46:23,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:46:23,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:46:23,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:46:23,472.472 INFO    ] time= 19/06/2026 05:46:23
[2026-06-19 05:46:23,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:46:23,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:46:23,637.637 INFO    ] No existing commands found in stream
[2026-06-19 05:46:28,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:46:28,670.670 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 05:46:29,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:46:29,403.403 INFO    ] Checking for system updates...
[2026-06-19 05:46:29,444.444 INFO    ] 200
[2026-06-19 05:46:29,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:29,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:46:29,509.509 INFO    ] No update needed
[2026-06-19 05:46:29,511.511 INFO    ] Checking for camera pi updates...
[2026-06-19 05:46:29,546.546 INFO    ] 200
[2026-06-19 05:46:29,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:29,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:46:29,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:46:29,644.644 INFO    ] No camera update needed
[2026-06-19 05:46:29,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:46:29,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:46:29,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:46:29,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:46:31,703.703 INFO    ] ================================================
[2026-06-19 05:46:31,720.720 INFO    ] Launching Daemon at Fri Jun 19 05:46:31 IST 2026
[2026-06-19 05:46:31,732.732 INFO    ] ================================================
[2026-06-19 05:46:32,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:46:32
[2026-06-19 05:46:33,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:46:33,311.311 INFO    ] Initializing speech engine...
[2026-06-19 05:46:33,334.334 INFO    ] 2026-06-19 05:46:33
[2026-06-19 05:46:33,592.592 INFO    ] 2026-06-19 05:46:33
[2026-06-19 05:46:33,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:46:33,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:46:33,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:46:33,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:46:33,970.970 INFO    ] time= 19/06/2026 05:46:33
[2026-06-19 05:46:33,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:46:34,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:46:34,138.138 INFO    ] No existing commands found in stream
[2026-06-19 05:46:39,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:46:39,166.166 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 05:46:42,506.506 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:46:42,508.508 INFO    ] Checking for system updates...
[2026-06-19 05:46:42,544.544 INFO    ] 200
[2026-06-19 05:46:42,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:42,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:46:42,602.602 INFO    ] No update needed
[2026-06-19 05:46:42,604.604 INFO    ] Checking for camera pi updates...
[2026-06-19 05:46:42,643.643 INFO    ] 200
[2026-06-19 05:46:42,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:42,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:46:42,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:46:42,723.723 INFO    ] No camera update needed
[2026-06-19 05:46:42,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:46:42,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:46:42,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:46:42,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:46:44,778.778 INFO    ] ================================================
[2026-06-19 05:46:44,794.794 INFO    ] Launching Daemon at Fri Jun 19 05:46:44 IST 2026
[2026-06-19 05:46:44,805.805 INFO    ] ================================================
[2026-06-19 05:46:45,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:46:45
[2026-06-19 05:46:46,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:46:46,272.272 INFO    ] Initializing speech engine...
[2026-06-19 05:46:46,287.287 INFO    ] 2026-06-19 05:46:46
[2026-06-19 05:46:46,576.576 INFO    ] 2026-06-19 05:46:46
[2026-06-19 05:46:46,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:46:46,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:46:46,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:46:46,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:46:46,961.961 INFO    ] time= 19/06/2026 05:46:46
[2026-06-19 05:46:46,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:46:46,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:46:47,091.091 INFO    ] No existing commands found in stream
[2026-06-19 05:46:52,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:46:52,106.106 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 05:46:52,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:46:52,665.665 INFO    ] Checking for system updates...
[2026-06-19 05:46:52,701.701 INFO    ] 200
[2026-06-19 05:46:52,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:52,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:46:52,767.767 INFO    ] No update needed
[2026-06-19 05:46:52,769.769 INFO    ] Checking for camera pi updates...
[2026-06-19 05:46:52,802.802 INFO    ] 200
[2026-06-19 05:46:52,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:46:52,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:46:52,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:46:52,896.896 INFO    ] No camera update needed
[2026-06-19 05:46:52,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:46:52,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:46:52,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:46:52,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:46:54,952.952 INFO    ] ================================================
[2026-06-19 05:46:54,968.968 INFO    ] Launching Daemon at Fri Jun 19 05:46:54 IST 2026
[2026-06-19 05:46:54,980.980 INFO    ] ================================================
[2026-06-19 05:46:55,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:46:55
[2026-06-19 05:46:56,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:46:56,386.386 INFO    ] Initializing speech engine...
[2026-06-19 05:46:56,408.408 INFO    ] 2026-06-19 05:46:56
[2026-06-19 05:46:56,669.669 INFO    ] 2026-06-19 05:46:56
[2026-06-19 05:46:56,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:46:56,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:46:56,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:46:57,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:46:57,043.043 INFO    ] time= 19/06/2026 05:46:57
[2026-06-19 05:46:57,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:46:57,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:46:57,213.213 INFO    ] No existing commands found in stream
[2026-06-19 05:47:02,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:47:02,240.240 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 05:47:05,501.501 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:47:05,503.503 INFO    ] Checking for system updates...
[2026-06-19 05:47:05,543.543 INFO    ] 200
[2026-06-19 05:47:05,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:05,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:47:05,601.601 INFO    ] No update needed
[2026-06-19 05:47:05,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 05:47:05,637.637 INFO    ] 200
[2026-06-19 05:47:05,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:05,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:47:05,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:47:05,736.736 INFO    ] No camera update needed
[2026-06-19 05:47:05,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:47:05,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:47:05,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:47:05,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:47:07,804.804 INFO    ] ================================================
[2026-06-19 05:47:07,821.821 INFO    ] Launching Daemon at Fri Jun 19 05:47:07 IST 2026
[2026-06-19 05:47:07,832.832 INFO    ] ================================================
[2026-06-19 05:47:08,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:47:08
[2026-06-19 05:47:08,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:47:09,264.264 INFO    ] Initializing speech engine...
[2026-06-19 05:47:09,272.272 INFO    ] 2026-06-19 05:47:09
[2026-06-19 05:47:09,524.524 INFO    ] 2026-06-19 05:47:09
[2026-06-19 05:47:09,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:47:09,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:47:09,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:47:09,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:47:09,901.901 INFO    ] time= 19/06/2026 05:47:09
[2026-06-19 05:47:09,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:47:09,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:47:10,086.086 INFO    ] No existing commands found in stream
[2026-06-19 05:47:15,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:47:15,119.119 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 05:47:17,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:47:17,391.391 INFO    ] Checking for system updates...
[2026-06-19 05:47:17,427.427 INFO    ] 200
[2026-06-19 05:47:17,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:17,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:47:17,491.491 INFO    ] No update needed
[2026-06-19 05:47:17,493.493 INFO    ] Checking for camera pi updates...
[2026-06-19 05:47:17,530.530 INFO    ] 200
[2026-06-19 05:47:17,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:17,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:47:17,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:47:17,619.619 INFO    ] No camera update needed
[2026-06-19 05:47:17,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:47:17,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:47:17,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:47:17,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:47:19,676.676 INFO    ] ================================================
[2026-06-19 05:47:19,692.692 INFO    ] Launching Daemon at Fri Jun 19 05:47:19 IST 2026
[2026-06-19 05:47:19,703.703 INFO    ] ================================================
[2026-06-19 05:47:20,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:47:20
[2026-06-19 05:47:20,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:47:21,112.112 INFO    ] Initializing speech engine...
[2026-06-19 05:47:21,118.118 INFO    ] 2026-06-19 05:47:21
[2026-06-19 05:47:21,406.406 INFO    ] 2026-06-19 05:47:21
[2026-06-19 05:47:21,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:47:21,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:47:21,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:47:21,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:47:21,780.780 INFO    ] time= 19/06/2026 05:47:21
[2026-06-19 05:47:21,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:47:21,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:47:21,957.957 INFO    ] No existing commands found in stream
[2026-06-19 05:47:26,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:47:26,990.990 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 05:47:29,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:47:29,764.764 INFO    ] Checking for system updates...
[2026-06-19 05:47:29,804.804 INFO    ] 200
[2026-06-19 05:47:29,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:29,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:47:29,867.867 INFO    ] No update needed
[2026-06-19 05:47:29,869.869 INFO    ] Checking for camera pi updates...
[2026-06-19 05:47:29,907.907 INFO    ] 200
[2026-06-19 05:47:29,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:29,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:47:30,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:47:30,005.005 INFO    ] No camera update needed
[2026-06-19 05:47:30,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:47:30,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:47:30,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:47:30,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:47:32,063.063 INFO    ] ================================================
[2026-06-19 05:47:32,080.080 INFO    ] Launching Daemon at Fri Jun 19 05:47:32 IST 2026
[2026-06-19 05:47:32,092.092 INFO    ] ================================================
[2026-06-19 05:47:32,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:47:32
[2026-06-19 05:47:33,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:47:33,570.570 INFO    ] Initializing speech engine...
[2026-06-19 05:47:33,579.579 INFO    ] 2026-06-19 05:47:33
[2026-06-19 05:47:33,824.824 INFO    ] 2026-06-19 05:47:33
[2026-06-19 05:47:33,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:47:34,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:47:34,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:47:34,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:47:34,291.291 INFO    ] time= 19/06/2026 05:47:34
[2026-06-19 05:47:34,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:47:34,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:47:34,446.446 INFO    ] No existing commands found in stream
[2026-06-19 05:47:39,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:47:39,460.460 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 05:47:41,573.573 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:47:41,576.576 INFO    ] Checking for system updates...
[2026-06-19 05:47:41,612.612 INFO    ] 200
[2026-06-19 05:47:41,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:41,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:47:41,674.674 INFO    ] No update needed
[2026-06-19 05:47:41,677.677 INFO    ] Checking for camera pi updates...
[2026-06-19 05:47:41,712.712 INFO    ] 200
[2026-06-19 05:47:41,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:41,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:47:41,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:47:41,904.904 INFO    ] No camera update needed
[2026-06-19 05:47:41,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:47:41,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:47:41,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:47:41,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:47:43,961.961 INFO    ] ================================================
[2026-06-19 05:47:43,977.977 INFO    ] Launching Daemon at Fri Jun 19 05:47:43 IST 2026
[2026-06-19 05:47:43,988.988 INFO    ] ================================================
[2026-06-19 05:47:44,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:47:44
[2026-06-19 05:47:45,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:47:45,575.575 INFO    ] Initializing speech engine...
[2026-06-19 05:47:45,581.581 INFO    ] 2026-06-19 05:47:45
[2026-06-19 05:47:45,888.888 INFO    ] 2026-06-19 05:47:45
[2026-06-19 05:47:45,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:47:46,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:47:46,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:47:46,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:47:46,390.390 INFO    ] time= 19/06/2026 05:47:46
[2026-06-19 05:47:46,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:47:46,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:47:46,540.540 INFO    ] No existing commands found in stream
[2026-06-19 05:47:51,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:47:51,560.560 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 05:47:54,867.867 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:47:54,870.870 INFO    ] Checking for system updates...
[2026-06-19 05:47:54,910.910 INFO    ] 200
[2026-06-19 05:47:54,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:54,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:47:54,975.975 INFO    ] No update needed
[2026-06-19 05:47:54,978.978 INFO    ] Checking for camera pi updates...
[2026-06-19 05:47:55,016.016 INFO    ] 200
[2026-06-19 05:47:55,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:47:55,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:47:55,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:47:55,112.112 INFO    ] No camera update needed
[2026-06-19 05:47:55,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:47:55,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:47:55,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:47:55,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:47:57,170.170 INFO    ] ================================================
[2026-06-19 05:47:57,186.186 INFO    ] Launching Daemon at Fri Jun 19 05:47:57 IST 2026
[2026-06-19 05:47:57,197.197 INFO    ] ================================================
[2026-06-19 05:47:57,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:47:57
[2026-06-19 05:47:58,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:47:58,767.767 INFO    ] Initializing speech engine...
[2026-06-19 05:47:58,777.777 INFO    ] 2026-06-19 05:47:58
[2026-06-19 05:47:59,045.045 INFO    ] 2026-06-19 05:47:59
[2026-06-19 05:47:59,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:47:59,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:47:59,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:47:59,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:47:59,594.594 INFO    ] time= 19/06/2026 05:47:59
[2026-06-19 05:47:59,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:47:59,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:47:59,749.749 INFO    ] No existing commands found in stream
[2026-06-19 05:48:04,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:48:04,768.768 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 05:48:08,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:48:08,310.310 INFO    ] Checking for system updates...
[2026-06-19 05:48:08,351.351 INFO    ] 200
[2026-06-19 05:48:08,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:08,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:48:08,410.410 INFO    ] No update needed
[2026-06-19 05:48:08,412.412 INFO    ] Checking for camera pi updates...
[2026-06-19 05:48:08,447.447 INFO    ] 200
[2026-06-19 05:48:08,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:08,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:48:08,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:48:08,543.543 INFO    ] No camera update needed
[2026-06-19 05:48:08,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:48:08,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:48:08,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:48:08,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:48:10,600.600 INFO    ] ================================================
[2026-06-19 05:48:10,616.616 INFO    ] Launching Daemon at Fri Jun 19 05:48:10 IST 2026
[2026-06-19 05:48:10,628.628 INFO    ] ================================================
[2026-06-19 05:48:11,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:48:11
[2026-06-19 05:48:11,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:48:12,032.032 INFO    ] Initializing speech engine...
[2026-06-19 05:48:12,047.047 INFO    ] 2026-06-19 05:48:12
[2026-06-19 05:48:12,313.313 INFO    ] 2026-06-19 05:48:12
[2026-06-19 05:48:12,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:48:12,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:48:12,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:48:12,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:48:12,692.692 INFO    ] time= 19/06/2026 05:48:12
[2026-06-19 05:48:12,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:48:12,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:48:12,864.864 INFO    ] No existing commands found in stream
[2026-06-19 05:48:17,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:48:17,890.890 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 05:48:20,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:48:20,674.674 INFO    ] Checking for system updates...
[2026-06-19 05:48:20,709.709 INFO    ] 200
[2026-06-19 05:48:20,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:20,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:48:20,767.767 INFO    ] No update needed
[2026-06-19 05:48:20,769.769 INFO    ] Checking for camera pi updates...
[2026-06-19 05:48:20,803.803 INFO    ] 200
[2026-06-19 05:48:20,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:20,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:48:20,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:48:20,893.893 INFO    ] No camera update needed
[2026-06-19 05:48:20,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:48:20,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:48:20,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:48:20,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:48:22,949.949 INFO    ] ================================================
[2026-06-19 05:48:22,964.964 INFO    ] Launching Daemon at Fri Jun 19 05:48:22 IST 2026
[2026-06-19 05:48:22,976.976 INFO    ] ================================================
[2026-06-19 05:48:23,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:48:23
[2026-06-19 05:48:24,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:48:24,409.409 INFO    ] Initializing speech engine...
[2026-06-19 05:48:24,417.417 INFO    ] 2026-06-19 05:48:24
[2026-06-19 05:48:24,714.714 INFO    ] 2026-06-19 05:48:24
[2026-06-19 05:48:24,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:48:24,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:48:24,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:48:25,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:48:25,099.099 INFO    ] time= 19/06/2026 05:48:25
[2026-06-19 05:48:25,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:48:25,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:48:25,225.225 INFO    ] No existing commands found in stream
[2026-06-19 05:48:30,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:48:30,241.241 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 05:48:31,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:48:31,218.218 INFO    ] Checking for system updates...
[2026-06-19 05:48:31,253.253 INFO    ] 200
[2026-06-19 05:48:31,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:31,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:48:31,312.312 INFO    ] No update needed
[2026-06-19 05:48:31,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 05:48:31,353.353 INFO    ] 200
[2026-06-19 05:48:31,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:31,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:48:31,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:48:31,450.450 INFO    ] No camera update needed
[2026-06-19 05:48:31,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:48:31,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:48:31,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:48:31,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:48:33,508.508 INFO    ] ================================================
[2026-06-19 05:48:33,523.523 INFO    ] Launching Daemon at Fri Jun 19 05:48:33 IST 2026
[2026-06-19 05:48:33,535.535 INFO    ] ================================================
[2026-06-19 05:48:34,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:48:34
[2026-06-19 05:48:34,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:48:34,999.999 INFO    ] Initializing speech engine...
[2026-06-19 05:48:35,006.006 INFO    ] 2026-06-19 05:48:35
[2026-06-19 05:48:35,263.263 INFO    ] 2026-06-19 05:48:35
[2026-06-19 05:48:35,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:48:35,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:48:35,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:48:35,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:48:35,727.727 INFO    ] time= 19/06/2026 05:48:35
[2026-06-19 05:48:35,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:48:35,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:48:35,871.871 INFO    ] No existing commands found in stream
[2026-06-19 05:48:40,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:48:40,886.886 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 05:48:42,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:48:42,740.740 INFO    ] Checking for system updates...
[2026-06-19 05:48:42,777.777 INFO    ] 200
[2026-06-19 05:48:42,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:42,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:48:42,834.834 INFO    ] No update needed
[2026-06-19 05:48:42,837.837 INFO    ] Checking for camera pi updates...
[2026-06-19 05:48:42,874.874 INFO    ] 200
[2026-06-19 05:48:42,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:42,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:48:42,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:48:42,957.957 INFO    ] No camera update needed
[2026-06-19 05:48:42,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:48:42,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:48:42,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:48:42,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:48:45,013.013 INFO    ] ================================================
[2026-06-19 05:48:45,028.028 INFO    ] Launching Daemon at Fri Jun 19 05:48:45 IST 2026
[2026-06-19 05:48:45,039.039 INFO    ] ================================================
[2026-06-19 05:48:45,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:48:45
[2026-06-19 05:48:46,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:48:46,647.647 INFO    ] Initializing speech engine...
[2026-06-19 05:48:46,661.661 INFO    ] 2026-06-19 05:48:46
[2026-06-19 05:48:46,947.947 INFO    ] 2026-06-19 05:48:46
[2026-06-19 05:48:47,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:48:47,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:48:47,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:48:47,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:48:47,486.486 INFO    ] time= 19/06/2026 05:48:47
[2026-06-19 05:48:47,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:48:47,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:48:47,642.642 INFO    ] No existing commands found in stream
[2026-06-19 05:48:52,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:48:52,658.658 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 05:48:55,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:48:55,522.522 INFO    ] Checking for system updates...
[2026-06-19 05:48:55,560.560 INFO    ] 200
[2026-06-19 05:48:55,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:55,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:48:55,620.620 INFO    ] No update needed
[2026-06-19 05:48:55,623.623 INFO    ] Checking for camera pi updates...
[2026-06-19 05:48:55,661.661 INFO    ] 200
[2026-06-19 05:48:55,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:48:55,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:48:55,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:48:55,752.752 INFO    ] No camera update needed
[2026-06-19 05:48:55,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:48:55,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:48:55,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:48:55,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:48:57,812.812 INFO    ] ================================================
[2026-06-19 05:48:57,827.827 INFO    ] Launching Daemon at Fri Jun 19 05:48:57 IST 2026
[2026-06-19 05:48:57,838.838 INFO    ] ================================================
[2026-06-19 05:48:58,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:48:58
[2026-06-19 05:48:59,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:48:59,271.271 INFO    ] Initializing speech engine...
[2026-06-19 05:48:59,281.281 INFO    ] 2026-06-19 05:48:59
[2026-06-19 05:48:59,533.533 INFO    ] 2026-06-19 05:48:59
[2026-06-19 05:48:59,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:48:59,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:48:59,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:48:59,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:48:59,994.994 INFO    ] time= 19/06/2026 05:48:59
[2026-06-19 05:49:00,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:49:00,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:49:00,150.150 INFO    ] No existing commands found in stream
[2026-06-19 05:49:05,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:49:05,173.173 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 05:49:07,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:49:07,343.343 INFO    ] Checking for system updates...
[2026-06-19 05:49:07,380.380 INFO    ] 200
[2026-06-19 05:49:07,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:07,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:49:07,442.442 INFO    ] No update needed
[2026-06-19 05:49:07,445.445 INFO    ] Checking for camera pi updates...
[2026-06-19 05:49:07,478.478 INFO    ] 200
[2026-06-19 05:49:07,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:07,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:49:07,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:49:07,571.571 INFO    ] No camera update needed
[2026-06-19 05:49:07,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:49:07,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:49:07,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:49:07,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:49:09,627.627 INFO    ] ================================================
[2026-06-19 05:49:09,642.642 INFO    ] Launching Daemon at Fri Jun 19 05:49:09 IST 2026
[2026-06-19 05:49:09,653.653 INFO    ] ================================================
[2026-06-19 05:49:10,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:49:10
[2026-06-19 05:49:10,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:49:11,117.117 INFO    ] Initializing speech engine...
[2026-06-19 05:49:11,126.126 INFO    ] 2026-06-19 05:49:11
[2026-06-19 05:49:11,389.389 INFO    ] 2026-06-19 05:49:11
[2026-06-19 05:49:11,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:49:11,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:49:11,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:49:11,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:49:11,879.879 INFO    ] time= 19/06/2026 05:49:11
[2026-06-19 05:49:11,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:49:11,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:49:12,069.069 INFO    ] No existing commands found in stream
[2026-06-19 05:49:17,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:49:17,098.098 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 05:49:18,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:49:18,543.543 INFO    ] Checking for system updates...
[2026-06-19 05:49:18,578.578 INFO    ] 200
[2026-06-19 05:49:18,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:18,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:49:18,641.641 INFO    ] No update needed
[2026-06-19 05:49:18,643.643 INFO    ] Checking for camera pi updates...
[2026-06-19 05:49:18,677.677 INFO    ] 200
[2026-06-19 05:49:18,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:18,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:49:18,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:49:18,762.762 INFO    ] No camera update needed
[2026-06-19 05:49:18,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:49:18,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:49:18,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:49:18,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:49:20,817.817 INFO    ] ================================================
[2026-06-19 05:49:20,832.832 INFO    ] Launching Daemon at Fri Jun 19 05:49:20 IST 2026
[2026-06-19 05:49:20,843.843 INFO    ] ================================================
[2026-06-19 05:49:21,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:49:21
[2026-06-19 05:49:22,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:49:22,284.284 INFO    ] Initializing speech engine...
[2026-06-19 05:49:22,295.295 INFO    ] 2026-06-19 05:49:22
[2026-06-19 05:49:22,554.554 INFO    ] 2026-06-19 05:49:22
[2026-06-19 05:49:22,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:49:22,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:49:22,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:49:22,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:49:23,016.016 INFO    ] time= 19/06/2026 05:49:22
[2026-06-19 05:49:23,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:49:23,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:49:23,160.160 INFO    ] No existing commands found in stream
[2026-06-19 05:49:28,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:49:28,175.175 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 05:49:32,029.029 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:49:32,032.032 INFO    ] Checking for system updates...
[2026-06-19 05:49:32,076.076 INFO    ] 200
[2026-06-19 05:49:32,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:32,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:49:32,139.139 INFO    ] No update needed
[2026-06-19 05:49:32,142.142 INFO    ] Checking for camera pi updates...
[2026-06-19 05:49:32,179.179 INFO    ] 200
[2026-06-19 05:49:32,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:32,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:49:32,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:49:32,258.258 INFO    ] No camera update needed
[2026-06-19 05:49:32,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:49:32,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:49:32,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:49:32,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:49:34,318.318 INFO    ] ================================================
[2026-06-19 05:49:34,333.333 INFO    ] Launching Daemon at Fri Jun 19 05:49:34 IST 2026
[2026-06-19 05:49:34,344.344 INFO    ] ================================================
[2026-06-19 05:49:34,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:49:34
[2026-06-19 05:49:35,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:49:35,764.764 INFO    ] Initializing speech engine...
[2026-06-19 05:49:35,782.782 INFO    ] 2026-06-19 05:49:35
[2026-06-19 05:49:36,033.033 INFO    ] 2026-06-19 05:49:36
[2026-06-19 05:49:36,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:49:36,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:49:36,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:49:36,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:49:36,411.411 INFO    ] time= 19/06/2026 05:49:36
[2026-06-19 05:49:36,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:49:36,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:49:36,573.573 INFO    ] No existing commands found in stream
[2026-06-19 05:49:41,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:49:41,590.590 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 05:49:43,845.845 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:49:43,848.848 INFO    ] Checking for system updates...
[2026-06-19 05:49:43,887.887 INFO    ] 200
[2026-06-19 05:49:43,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:43,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:49:43,944.944 INFO    ] No update needed
[2026-06-19 05:49:43,947.947 INFO    ] Checking for camera pi updates...
[2026-06-19 05:49:43,980.980 INFO    ] 200
[2026-06-19 05:49:43,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:44,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:49:44,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:49:44,180.180 INFO    ] No camera update needed
[2026-06-19 05:49:44,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:49:44,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:49:44,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:49:44,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:49:46,235.235 INFO    ] ================================================
[2026-06-19 05:49:46,250.250 INFO    ] Launching Daemon at Fri Jun 19 05:49:46 IST 2026
[2026-06-19 05:49:46,261.261 INFO    ] ================================================
[2026-06-19 05:49:46,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:49:46
[2026-06-19 05:49:47,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:49:47,858.858 INFO    ] Initializing speech engine...
[2026-06-19 05:49:47,872.872 INFO    ] 2026-06-19 05:49:47
[2026-06-19 05:49:48,150.150 INFO    ] 2026-06-19 05:49:48
[2026-06-19 05:49:48,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:49:48,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:49:48,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:49:48,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:49:48,684.684 INFO    ] time= 19/06/2026 05:49:48
[2026-06-19 05:49:48,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:49:48,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:49:48,831.831 INFO    ] No existing commands found in stream
[2026-06-19 05:49:53,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:49:53,856.856 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 05:49:55,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:49:55,829.829 INFO    ] Checking for system updates...
[2026-06-19 05:49:55,870.870 INFO    ] 200
[2026-06-19 05:49:55,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:55,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:49:55,931.931 INFO    ] No update needed
[2026-06-19 05:49:55,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 05:49:55,969.969 INFO    ] 200
[2026-06-19 05:49:55,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:49:56,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:49:56,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:49:56,054.054 INFO    ] No camera update needed
[2026-06-19 05:49:56,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:49:56,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:49:56,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:49:56,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:49:58,112.112 INFO    ] ================================================
[2026-06-19 05:49:58,127.127 INFO    ] Launching Daemon at Fri Jun 19 05:49:58 IST 2026
[2026-06-19 05:49:58,138.138 INFO    ] ================================================
[2026-06-19 05:49:58,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:49:58
[2026-06-19 05:49:59,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:49:59,559.559 INFO    ] Initializing speech engine...
[2026-06-19 05:49:59,568.568 INFO    ] 2026-06-19 05:49:59
[2026-06-19 05:49:59,831.831 INFO    ] 2026-06-19 05:49:59
[2026-06-19 05:49:59,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:50:00,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:50:00,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:50:00,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:50:00,245.245 INFO    ] time= 19/06/2026 05:50:00
[2026-06-19 05:50:00,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:50:00,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:50:00,329.329 INFO    ] No existing commands found in stream
[2026-06-19 05:50:05,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:50:05,340.340 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 05:50:09,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:50:09,408.408 INFO    ] Checking for system updates...
[2026-06-19 05:50:09,447.447 INFO    ] 200
[2026-06-19 05:50:09,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:50:09,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:50:09,506.506 INFO    ] No update needed
[2026-06-19 05:50:09,508.508 INFO    ] Checking for camera pi updates...
[2026-06-19 05:50:09,546.546 INFO    ] 200
[2026-06-19 05:50:09,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:50:09,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:50:09,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:50:09,641.641 INFO    ] No camera update needed
[2026-06-19 05:50:09,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:50:09,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:50:09,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:50:09,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:50:11,698.698 INFO    ] ================================================
[2026-06-19 05:50:11,713.713 INFO    ] Launching Daemon at Fri Jun 19 05:50:11 IST 2026
[2026-06-19 05:50:11,724.724 INFO    ] ================================================
[2026-06-19 05:50:12,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:50:12
[2026-06-19 05:50:12,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:50:13,159.159 INFO    ] Initializing speech engine...
[2026-06-19 05:50:13,173.173 INFO    ] 2026-06-19 05:50:13
[2026-06-19 05:50:13,440.440 INFO    ] 2026-06-19 05:50:13
[2026-06-19 05:50:13,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:50:13,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:50:13,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:50:13,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:50:13,815.815 INFO    ] time= 19/06/2026 05:50:13
[2026-06-19 05:50:13,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:50:13,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:50:13,898.898 INFO    ] No existing commands found in stream
[2026-06-19 05:50:18,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:50:18,936.936 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 05:50:22,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:50:22,645.645 INFO    ] Checking for system updates...
[2026-06-19 05:50:22,680.680 INFO    ] 200
[2026-06-19 05:50:22,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:50:22,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:50:22,738.738 INFO    ] No update needed
[2026-06-19 05:50:22,740.740 INFO    ] Checking for camera pi updates...
[2026-06-19 05:50:22,774.774 INFO    ] 200
[2026-06-19 05:50:22,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:50:22,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:50:22,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:50:22,860.860 INFO    ] No camera update needed
[2026-06-19 05:50:22,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:50:22,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:50:22,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:50:22,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:50:24,917.917 INFO    ] ================================================
[2026-06-19 05:50:24,932.932 INFO    ] Launching Daemon at Fri Jun 19 05:50:24 IST 2026
[2026-06-19 05:50:24,943.943 INFO    ] ================================================
[2026-06-19 05:50:25,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:50:25
[2026-06-19 05:50:26,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:50:26,354.354 INFO    ] Initializing speech engine...
[2026-06-19 05:50:26,361.361 INFO    ] 2026-06-19 05:50:26
[2026-06-19 05:50:26,658.658 INFO    ] 2026-06-19 05:50:26
[2026-06-19 05:50:26,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:50:26,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:50:26,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:50:27,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:50:27,013.013 INFO    ] time= 19/06/2026 05:50:27
[2026-06-19 05:50:27,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:50:27,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:50:27,114.114 INFO    ] No existing commands found in stream
[2026-06-19 05:50:32,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:50:32,147.147 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 05:50:33,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:50:33,568.568 INFO    ] Checking for system updates...
[2026-06-19 05:50:33,604.604 INFO    ] 200
[2026-06-19 05:50:33,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:50:33,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:50:33,664.664 INFO    ] No update needed
[2026-06-19 05:50:33,666.666 INFO    ] Checking for camera pi updates...
[2026-06-19 05:50:33,701.701 INFO    ] 200
[2026-06-19 05:50:33,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:50:33,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:50:33,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:50:33,788.788 INFO    ] No camera update needed
[2026-06-19 05:50:33,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:50:33,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:50:33,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:50:33,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:50:35,845.845 INFO    ] ================================================
[2026-06-19 05:50:35,861.861 INFO    ] Launching Daemon at Fri Jun 19 05:50:35 IST 2026
[2026-06-19 05:50:35,871.871 INFO    ] ================================================
[2026-06-19 05:50:36,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:50:36
[2026-06-19 05:50:37,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:50:37,283.283 INFO    ] Initializing speech engine...
[2026-06-19 05:50:37,288.288 INFO    ] 2026-06-19 05:50:37
[2026-06-19 05:50:37,586.586 INFO    ] 2026-06-19 05:50:37
[2026-06-19 05:50:37,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:50:37,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:50:37,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:50:37,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:50:37,979.979 INFO    ] time= 19/06/2026 05:50:37
[2026-06-19 05:50:37,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:50:38,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:50:38,153.153 INFO    ] No existing commands found in stream
[2026-06-19 05:50:43,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:50:43,181.181 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 05:50:47,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:50:47,459.459 INFO    ] Checking for system updates...
[2026-06-19 05:50:47,497.497 INFO    ] 200
[2026-06-19 05:50:47,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:50:47,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:50:47,560.560 INFO    ] No update needed
[2026-06-19 05:50:47,563.563 INFO    ] Checking for camera pi updates...
[2026-06-19 05:50:47,596.596 INFO    ] 200
[2026-06-19 05:50:47,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:50:47,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:50:47,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:50:47,680.680 INFO    ] No camera update needed
[2026-06-19 05:50:47,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:50:47,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:50:47,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:50:47,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:50:49,741.741 INFO    ] ================================================
[2026-06-19 05:50:49,756.756 INFO    ] Launching Daemon at Fri Jun 19 05:50:49 IST 2026
[2026-06-19 05:50:49,766.766 INFO    ] ================================================
[2026-06-19 05:50:50,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:50:50
[2026-06-19 05:50:50,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:50:51,197.197 INFO    ] Initializing speech engine...
[2026-06-19 05:50:51,206.206 INFO    ] 2026-06-19 05:50:51
[2026-06-19 05:50:51,501.501 INFO    ] 2026-06-19 05:50:51
[2026-06-19 05:50:51,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:50:51,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:50:51,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:50:51,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:50:51,925.925 INFO    ] time= 19/06/2026 05:50:51
[2026-06-19 05:50:51,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:50:51,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:50:52,078.078 INFO    ] No existing commands found in stream
[2026-06-19 05:50:57,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:50:57,100.100 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 05:51:00,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:51:00,402.402 INFO    ] Checking for system updates...
[2026-06-19 05:51:00,438.438 INFO    ] 200
[2026-06-19 05:51:00,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:00,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:51:00,495.495 INFO    ] No update needed
[2026-06-19 05:51:00,498.498 INFO    ] Checking for camera pi updates...
[2026-06-19 05:51:00,532.532 INFO    ] 200
[2026-06-19 05:51:00,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:00,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:51:00,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:51:00,630.630 INFO    ] No camera update needed
[2026-06-19 05:51:00,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:51:00,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:51:00,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:51:00,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:51:02,696.696 INFO    ] ================================================
[2026-06-19 05:51:02,712.712 INFO    ] Launching Daemon at Fri Jun 19 05:51:02 IST 2026
[2026-06-19 05:51:02,723.723 INFO    ] ================================================
[2026-06-19 05:51:03,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:51:03
[2026-06-19 05:51:03,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:51:04,187.187 INFO    ] Initializing speech engine...
[2026-06-19 05:51:04,201.201 INFO    ] 2026-06-19 05:51:04
[2026-06-19 05:51:04,469.469 INFO    ] 2026-06-19 05:51:04
[2026-06-19 05:51:04,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:51:04,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:51:04,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:51:04,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:51:04,790.790 INFO    ] time= 19/06/2026 05:51:04
[2026-06-19 05:51:04,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:51:04,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:51:04,926.926 INFO    ] No existing commands found in stream
[2026-06-19 05:51:09,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:51:09,939.939 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 05:51:11,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:51:11,064.064 INFO    ] Checking for system updates...
[2026-06-19 05:51:11,104.104 INFO    ] 200
[2026-06-19 05:51:11,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:11,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:51:11,168.168 INFO    ] No update needed
[2026-06-19 05:51:11,170.170 INFO    ] Checking for camera pi updates...
[2026-06-19 05:51:11,205.205 INFO    ] 200
[2026-06-19 05:51:11,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:11,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:51:11,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:51:11,293.293 INFO    ] No camera update needed
[2026-06-19 05:51:11,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:51:11,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:51:11,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:51:11,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:51:13,349.349 INFO    ] ================================================
[2026-06-19 05:51:13,365.365 INFO    ] Launching Daemon at Fri Jun 19 05:51:13 IST 2026
[2026-06-19 05:51:13,376.376 INFO    ] ================================================
[2026-06-19 05:51:14,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:51:14
[2026-06-19 05:51:14,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:51:15,006.006 INFO    ] Initializing speech engine...
[2026-06-19 05:51:15,017.017 INFO    ] 2026-06-19 05:51:15
[2026-06-19 05:51:15,326.326 INFO    ] 2026-06-19 05:51:15
[2026-06-19 05:51:15,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:51:15,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:51:15,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:51:15,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:51:15,835.835 INFO    ] time= 19/06/2026 05:51:15
[2026-06-19 05:51:15,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:51:15,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:51:15,986.986 INFO    ] No existing commands found in stream
[2026-06-19 05:51:21,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:51:21,006.006 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 05:51:23,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:51:23,873.873 INFO    ] Checking for system updates...
[2026-06-19 05:51:23,911.911 INFO    ] 200
[2026-06-19 05:51:23,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:23,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:51:23,976.976 INFO    ] No update needed
[2026-06-19 05:51:23,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 05:51:24,015.015 INFO    ] 200
[2026-06-19 05:51:24,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:24,060.060 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:51:24,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:51:24,103.103 INFO    ] No camera update needed
[2026-06-19 05:51:24,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:51:24,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:51:24,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:51:24,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:51:26,163.163 INFO    ] ================================================
[2026-06-19 05:51:26,178.178 INFO    ] Launching Daemon at Fri Jun 19 05:51:26 IST 2026
[2026-06-19 05:51:26,188.188 INFO    ] ================================================
[2026-06-19 05:51:26,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:51:26
[2026-06-19 05:51:27,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:51:27,616.616 INFO    ] Initializing speech engine...
[2026-06-19 05:51:27,625.625 INFO    ] 2026-06-19 05:51:27
[2026-06-19 05:51:27,875.875 INFO    ] 2026-06-19 05:51:27
[2026-06-19 05:51:27,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:51:28,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:51:28,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:51:28,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:51:28,253.253 INFO    ] time= 19/06/2026 05:51:28
[2026-06-19 05:51:28,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:51:28,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:51:28,378.378 INFO    ] No existing commands found in stream
[2026-06-19 05:51:33,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:51:33,390.390 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 05:51:35,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:51:35,197.197 INFO    ] Checking for system updates...
[2026-06-19 05:51:35,234.234 INFO    ] 200
[2026-06-19 05:51:35,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:35,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:51:35,300.300 INFO    ] No update needed
[2026-06-19 05:51:35,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 05:51:35,339.339 INFO    ] 200
[2026-06-19 05:51:35,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:35,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:51:35,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:51:35,430.430 INFO    ] No camera update needed
[2026-06-19 05:51:35,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:51:35,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:51:35,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:51:35,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:51:37,490.490 INFO    ] ================================================
[2026-06-19 05:51:37,506.506 INFO    ] Launching Daemon at Fri Jun 19 05:51:37 IST 2026
[2026-06-19 05:51:37,516.516 INFO    ] ================================================
[2026-06-19 05:51:38,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:51:38
[2026-06-19 05:51:38,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:51:39,054.054 INFO    ] Initializing speech engine...
[2026-06-19 05:51:39,061.061 INFO    ] 2026-06-19 05:51:39
[2026-06-19 05:51:39,350.350 INFO    ] 2026-06-19 05:51:39
[2026-06-19 05:51:39,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:51:39,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:51:39,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:51:39,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:51:39,813.813 INFO    ] time= 19/06/2026 05:51:39
[2026-06-19 05:51:39,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:51:39,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:51:39,951.951 INFO    ] No existing commands found in stream
[2026-06-19 05:51:44,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:51:44,967.967 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 05:51:46,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:51:46,433.433 INFO    ] Checking for system updates...
[2026-06-19 05:51:46,470.470 INFO    ] 200
[2026-06-19 05:51:46,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:46,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:51:46,530.530 INFO    ] No update needed
[2026-06-19 05:51:46,533.533 INFO    ] Checking for camera pi updates...
[2026-06-19 05:51:46,568.568 INFO    ] 200
[2026-06-19 05:51:46,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:51:46,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:51:46,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:51:46,752.752 INFO    ] No camera update needed
[2026-06-19 05:51:46,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:51:46,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:51:46,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:51:46,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:51:48,808.808 INFO    ] ================================================
[2026-06-19 05:51:48,822.822 INFO    ] Launching Daemon at Fri Jun 19 05:51:48 IST 2026
[2026-06-19 05:51:48,833.833 INFO    ] ================================================
[2026-06-19 05:51:49,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:51:49
[2026-06-19 05:51:50,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:51:50,428.428 INFO    ] Initializing speech engine...
[2026-06-19 05:51:50,443.443 INFO    ] 2026-06-19 05:51:50
[2026-06-19 05:51:50,719.719 INFO    ] 2026-06-19 05:51:50
[2026-06-19 05:51:50,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:51:50,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:51:51,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:51:51,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:51:51,185.185 INFO    ] time= 19/06/2026 05:51:51
[2026-06-19 05:51:51,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:51:51,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:51:51,378.378 INFO    ] No existing commands found in stream
[2026-06-19 05:51:56,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:51:56,404.404 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 05:51:59,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:52:00,001.001 INFO    ] Checking for system updates...
[2026-06-19 05:52:00,039.039 INFO    ] 200
[2026-06-19 05:52:00,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:00,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:52:00,100.100 INFO    ] No update needed
[2026-06-19 05:52:00,103.103 INFO    ] Checking for camera pi updates...
[2026-06-19 05:52:00,138.138 INFO    ] 200
[2026-06-19 05:52:00,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:00,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:52:00,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:52:00,228.228 INFO    ] No camera update needed
[2026-06-19 05:52:00,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:52:00,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:52:00,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:52:00,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:52:02,307.307 INFO    ] ================================================
[2026-06-19 05:52:02,330.330 INFO    ] Launching Daemon at Fri Jun 19 05:52:02 IST 2026
[2026-06-19 05:52:02,349.349 INFO    ] ================================================
[2026-06-19 05:52:03,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:52:03
[2026-06-19 05:52:03,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:52:03,921.921 INFO    ] Initializing speech engine...
[2026-06-19 05:52:03,930.930 INFO    ] 2026-06-19 05:52:03
[2026-06-19 05:52:04,212.212 INFO    ] 2026-06-19 05:52:04
[2026-06-19 05:52:04,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:52:04,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:52:04,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:52:04,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:52:04,679.679 INFO    ] time= 19/06/2026 05:52:04
[2026-06-19 05:52:04,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:52:04,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:52:04,834.834 INFO    ] No existing commands found in stream
[2026-06-19 05:52:09,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:52:09,849.849 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 05:52:12,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:52:12,827.827 INFO    ] Checking for system updates...
[2026-06-19 05:52:12,863.863 INFO    ] 200
[2026-06-19 05:52:12,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:12,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:52:12,921.921 INFO    ] No update needed
[2026-06-19 05:52:12,923.923 INFO    ] Checking for camera pi updates...
[2026-06-19 05:52:12,957.957 INFO    ] 200
[2026-06-19 05:52:12,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:13,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:52:13,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:52:13,048.048 INFO    ] No camera update needed
[2026-06-19 05:52:13,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:52:13,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:52:13,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:52:13,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:52:15,109.109 INFO    ] ================================================
[2026-06-19 05:52:15,124.124 INFO    ] Launching Daemon at Fri Jun 19 05:52:15 IST 2026
[2026-06-19 05:52:15,134.134 INFO    ] ================================================
[2026-06-19 05:52:15,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:52:15
[2026-06-19 05:52:16,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:52:16,564.564 INFO    ] Initializing speech engine...
[2026-06-19 05:52:16,573.573 INFO    ] 2026-06-19 05:52:16
[2026-06-19 05:52:16,819.819 INFO    ] 2026-06-19 05:52:16
[2026-06-19 05:52:16,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:52:17,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:52:17,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:52:17,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:52:17,183.183 INFO    ] time= 19/06/2026 05:52:17
[2026-06-19 05:52:17,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:52:17,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:52:17,261.261 INFO    ] No existing commands found in stream
[2026-06-19 05:52:22,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:52:22,277.277 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 05:52:22,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:52:22,920.920 INFO    ] Checking for system updates...
[2026-06-19 05:52:22,962.962 INFO    ] 200
[2026-06-19 05:52:22,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:23,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:52:23,023.023 INFO    ] No update needed
[2026-06-19 05:52:23,030.030 INFO    ] Checking for camera pi updates...
[2026-06-19 05:52:23,066.066 INFO    ] 200
[2026-06-19 05:52:23,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:23,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:52:23,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:52:23,157.157 INFO    ] No camera update needed
[2026-06-19 05:52:23,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:52:23,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:52:23,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:52:23,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:52:25,219.219 INFO    ] ================================================
[2026-06-19 05:52:25,235.235 INFO    ] Launching Daemon at Fri Jun 19 05:52:25 IST 2026
[2026-06-19 05:52:25,251.251 INFO    ] ================================================
[2026-06-19 05:52:25,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:52:25
[2026-06-19 05:52:26,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:52:26,753.753 INFO    ] Initializing speech engine...
[2026-06-19 05:52:26,762.762 INFO    ] 2026-06-19 05:52:26
[2026-06-19 05:52:27,010.010 INFO    ] 2026-06-19 05:52:27
[2026-06-19 05:52:27,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:52:27,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:52:27,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:52:27,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:52:27,380.380 INFO    ] time= 19/06/2026 05:52:27
[2026-06-19 05:52:27,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:52:27,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:52:27,567.567 INFO    ] No existing commands found in stream
[2026-06-19 05:52:32,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:52:32,592.592 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 05:52:34,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:52:34,448.448 INFO    ] Checking for system updates...
[2026-06-19 05:52:34,483.483 INFO    ] 200
[2026-06-19 05:52:34,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:34,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:52:34,542.542 INFO    ] No update needed
[2026-06-19 05:52:34,544.544 INFO    ] Checking for camera pi updates...
[2026-06-19 05:52:34,578.578 INFO    ] 200
[2026-06-19 05:52:34,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:34,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:52:34,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:52:34,672.672 INFO    ] No camera update needed
[2026-06-19 05:52:34,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:52:34,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:52:34,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:52:34,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:52:36,731.731 INFO    ] ================================================
[2026-06-19 05:52:36,747.747 INFO    ] Launching Daemon at Fri Jun 19 05:52:36 IST 2026
[2026-06-19 05:52:36,758.758 INFO    ] ================================================
[2026-06-19 05:52:37,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:52:37
[2026-06-19 05:52:37,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:52:38,169.169 INFO    ] Initializing speech engine...
[2026-06-19 05:52:38,194.194 INFO    ] 2026-06-19 05:52:38
[2026-06-19 05:52:38,462.462 INFO    ] 2026-06-19 05:52:38
[2026-06-19 05:52:38,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:52:38,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:52:38,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:52:38,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:52:38,837.837 INFO    ] time= 19/06/2026 05:52:38
[2026-06-19 05:52:38,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:52:38,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:52:38,960.960 INFO    ] No existing commands found in stream
[2026-06-19 05:52:43,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:52:43,973.973 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 05:52:48,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:52:48,023.023 INFO    ] Checking for system updates...
[2026-06-19 05:52:48,059.059 INFO    ] 200
[2026-06-19 05:52:48,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:48,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:52:48,117.117 INFO    ] No update needed
[2026-06-19 05:52:48,120.120 INFO    ] Checking for camera pi updates...
[2026-06-19 05:52:48,154.154 INFO    ] 200
[2026-06-19 05:52:48,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:52:48,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:52:48,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:52:48,227.227 INFO    ] No camera update needed
[2026-06-19 05:52:48,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:52:48,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:52:48,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:52:48,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:52:50,286.286 INFO    ] ================================================
[2026-06-19 05:52:50,302.302 INFO    ] Launching Daemon at Fri Jun 19 05:52:50 IST 2026
[2026-06-19 05:52:50,313.313 INFO    ] ================================================
[2026-06-19 05:52:50,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:52:50
[2026-06-19 05:52:51,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:52:51,732.732 INFO    ] Initializing speech engine...
[2026-06-19 05:52:51,756.756 INFO    ] 2026-06-19 05:52:51
[2026-06-19 05:52:52,027.027 INFO    ] 2026-06-19 05:52:52
[2026-06-19 05:52:52,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:52:52,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:52:52,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:52:52,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:52:52,377.377 INFO    ] time= 19/06/2026 05:52:52
[2026-06-19 05:52:52,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:52:52,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:52:52,461.461 INFO    ] No existing commands found in stream
[2026-06-19 05:52:57,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:52:57,504.504 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 05:53:00,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:53:00,598.598 INFO    ] Checking for system updates...
[2026-06-19 05:53:00,638.638 INFO    ] 200
[2026-06-19 05:53:00,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:00,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:53:00,704.704 INFO    ] No update needed
[2026-06-19 05:53:00,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 05:53:00,741.741 INFO    ] 200
[2026-06-19 05:53:00,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:00,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:53:00,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:53:00,842.842 INFO    ] No camera update needed
[2026-06-19 05:53:00,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:53:00,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:53:00,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:53:00,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:53:02,905.905 INFO    ] ================================================
[2026-06-19 05:53:02,925.925 INFO    ] Launching Daemon at Fri Jun 19 05:53:02 IST 2026
[2026-06-19 05:53:02,943.943 INFO    ] ================================================
[2026-06-19 05:53:03,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:53:03
[2026-06-19 05:53:04,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:53:04,516.516 INFO    ] Initializing speech engine...
[2026-06-19 05:53:04,527.527 INFO    ] 2026-06-19 05:53:04
[2026-06-19 05:53:04,775.775 INFO    ] 2026-06-19 05:53:04
[2026-06-19 05:53:04,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:53:05,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:53:05,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:53:05,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:53:05,211.211 INFO    ] time= 19/06/2026 05:53:05
[2026-06-19 05:53:05,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:53:05,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:53:05,393.393 INFO    ] No existing commands found in stream
[2026-06-19 05:53:10,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:53:10,408.408 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 05:53:13,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:53:13,516.516 INFO    ] Checking for system updates...
[2026-06-19 05:53:13,553.553 INFO    ] 200
[2026-06-19 05:53:13,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:13,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:53:13,612.612 INFO    ] No update needed
[2026-06-19 05:53:13,614.614 INFO    ] Checking for camera pi updates...
[2026-06-19 05:53:13,648.648 INFO    ] 200
[2026-06-19 05:53:13,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:13,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:53:13,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:53:13,743.743 INFO    ] No camera update needed
[2026-06-19 05:53:13,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:53:13,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:53:13,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:53:13,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:53:15,800.800 INFO    ] ================================================
[2026-06-19 05:53:15,816.816 INFO    ] Launching Daemon at Fri Jun 19 05:53:15 IST 2026
[2026-06-19 05:53:15,827.827 INFO    ] ================================================
[2026-06-19 05:53:16,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:53:16
[2026-06-19 05:53:16,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:53:17,242.242 INFO    ] Initializing speech engine...
[2026-06-19 05:53:17,257.257 INFO    ] 2026-06-19 05:53:17
[2026-06-19 05:53:17,531.531 INFO    ] 2026-06-19 05:53:17
[2026-06-19 05:53:17,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:53:17,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:53:17,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:53:17,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:53:17,907.907 INFO    ] time= 19/06/2026 05:53:17
[2026-06-19 05:53:17,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:53:17,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:53:18,062.062 INFO    ] No existing commands found in stream
[2026-06-19 05:53:23,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:53:23,090.090 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 05:53:25,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:53:25,499.499 INFO    ] Checking for system updates...
[2026-06-19 05:53:25,536.536 INFO    ] 200
[2026-06-19 05:53:25,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:25,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:53:25,596.596 INFO    ] No update needed
[2026-06-19 05:53:25,598.598 INFO    ] Checking for camera pi updates...
[2026-06-19 05:53:25,633.633 INFO    ] 200
[2026-06-19 05:53:25,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:25,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:53:25,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:53:25,734.734 INFO    ] No camera update needed
[2026-06-19 05:53:25,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:53:25,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:53:25,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:53:25,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:53:27,792.792 INFO    ] ================================================
[2026-06-19 05:53:27,807.807 INFO    ] Launching Daemon at Fri Jun 19 05:53:27 IST 2026
[2026-06-19 05:53:27,822.822 INFO    ] ================================================
[2026-06-19 05:53:28,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:53:28
[2026-06-19 05:53:28,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:53:29,246.246 INFO    ] Initializing speech engine...
[2026-06-19 05:53:29,255.255 INFO    ] 2026-06-19 05:53:29
[2026-06-19 05:53:29,502.502 INFO    ] 2026-06-19 05:53:29
[2026-06-19 05:53:29,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:53:29,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:53:29,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:53:29,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:53:29,982.982 INFO    ] time= 19/06/2026 05:53:29
[2026-06-19 05:53:30,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:53:30,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:53:30,119.119 INFO    ] No existing commands found in stream
[2026-06-19 05:53:35,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:53:35,133.133 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 05:53:36,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:53:36,189.189 INFO    ] Checking for system updates...
[2026-06-19 05:53:36,225.225 INFO    ] 200
[2026-06-19 05:53:36,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:36,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:53:36,283.283 INFO    ] No update needed
[2026-06-19 05:53:36,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 05:53:36,324.324 INFO    ] 200
[2026-06-19 05:53:36,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:36,367.367 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:53:36,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:53:36,410.410 INFO    ] No camera update needed
[2026-06-19 05:53:36,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:53:36,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:53:36,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:53:36,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:53:38,466.466 INFO    ] ================================================
[2026-06-19 05:53:38,488.488 INFO    ] Launching Daemon at Fri Jun 19 05:53:38 IST 2026
[2026-06-19 05:53:38,499.499 INFO    ] ================================================
[2026-06-19 05:53:39,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:53:39
[2026-06-19 05:53:39,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:53:39,951.951 INFO    ] Initializing speech engine...
[2026-06-19 05:53:39,963.963 INFO    ] 2026-06-19 05:53:39
[2026-06-19 05:53:40,227.227 INFO    ] 2026-06-19 05:53:40
[2026-06-19 05:53:40,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:53:40,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:53:40,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:53:40,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:53:40,630.630 INFO    ] time= 19/06/2026 05:53:40
[2026-06-19 05:53:40,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:53:40,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:53:40,717.717 INFO    ] No existing commands found in stream
[2026-06-19 05:53:45,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:53:45,731.731 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 05:53:47,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:53:47,636.636 INFO    ] Checking for system updates...
[2026-06-19 05:53:47,673.673 INFO    ] 200
[2026-06-19 05:53:47,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:47,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:53:47,733.733 INFO    ] No update needed
[2026-06-19 05:53:47,736.736 INFO    ] Checking for camera pi updates...
[2026-06-19 05:53:47,771.771 INFO    ] 200
[2026-06-19 05:53:47,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:47,815.815 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:53:47,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:53:47,851.851 INFO    ] No camera update needed
[2026-06-19 05:53:47,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:53:47,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:53:47,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:53:47,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:53:49,908.908 INFO    ] ================================================
[2026-06-19 05:53:49,923.923 INFO    ] Launching Daemon at Fri Jun 19 05:53:49 IST 2026
[2026-06-19 05:53:49,934.934 INFO    ] ================================================
[2026-06-19 05:53:50,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:53:50
[2026-06-19 05:53:51,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:53:51,400.400 INFO    ] Initializing speech engine...
[2026-06-19 05:53:51,408.408 INFO    ] 2026-06-19 05:53:51
[2026-06-19 05:53:51,675.675 INFO    ] 2026-06-19 05:53:51
[2026-06-19 05:53:51,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:53:51,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:53:51,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:53:52,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:53:52,047.047 INFO    ] time= 19/06/2026 05:53:52
[2026-06-19 05:53:52,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:53:52,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:53:52,170.170 INFO    ] No existing commands found in stream
[2026-06-19 05:53:57,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:53:57,185.185 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 05:53:58,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:53:58,911.911 INFO    ] Checking for system updates...
[2026-06-19 05:53:58,947.947 INFO    ] 200
[2026-06-19 05:53:58,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:59,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:53:59,003.003 INFO    ] No update needed
[2026-06-19 05:53:59,006.006 INFO    ] Checking for camera pi updates...
[2026-06-19 05:53:59,040.040 INFO    ] 200
[2026-06-19 05:53:59,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:53:59,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:53:59,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:53:59,243.243 INFO    ] No camera update needed
[2026-06-19 05:53:59,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:53:59,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:53:59,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:53:59,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:54:01,298.298 INFO    ] ================================================
[2026-06-19 05:54:01,313.313 INFO    ] Launching Daemon at Fri Jun 19 05:54:01 IST 2026
[2026-06-19 05:54:01,324.324 INFO    ] ================================================
[2026-06-19 05:54:01,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:54:01
[2026-06-19 05:54:02,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:54:02,939.939 INFO    ] Initializing speech engine...
[2026-06-19 05:54:02,942.942 INFO    ] 2026-06-19 05:54:02
[2026-06-19 05:54:03,250.250 INFO    ] 2026-06-19 05:54:03
[2026-06-19 05:54:03,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:54:03,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:54:03,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:54:03,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:54:03,632.632 INFO    ] time= 19/06/2026 05:54:03
[2026-06-19 05:54:03,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:54:03,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:54:03,764.764 INFO    ] No existing commands found in stream
[2026-06-19 05:54:08,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:54:08,779.779 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 05:54:12,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:54:12,698.698 INFO    ] Checking for system updates...
[2026-06-19 05:54:12,735.735 INFO    ] 200
[2026-06-19 05:54:12,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:12,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:54:12,793.793 INFO    ] No update needed
[2026-06-19 05:54:12,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 05:54:12,830.830 INFO    ] 200
[2026-06-19 05:54:12,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:12,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:54:12,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:54:12,930.930 INFO    ] No camera update needed
[2026-06-19 05:54:12,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:54:12,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:54:12,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:54:12,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:54:14,986.986 INFO    ] ================================================
[2026-06-19 05:54:15,002.002 INFO    ] Launching Daemon at Fri Jun 19 05:54:14 IST 2026
[2026-06-19 05:54:15,013.013 INFO    ] ================================================
[2026-06-19 05:54:15,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:54:15
[2026-06-19 05:54:16,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:54:16,664.664 INFO    ] Initializing speech engine...
[2026-06-19 05:54:16,673.673 INFO    ] 2026-06-19 05:54:16
[2026-06-19 05:54:16,991.991 INFO    ] 2026-06-19 05:54:16
[2026-06-19 05:54:17,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:54:17,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:54:17,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:54:17,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:54:17,499.499 INFO    ] time= 19/06/2026 05:54:17
[2026-06-19 05:54:17,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:54:17,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:54:17,652.652 INFO    ] No existing commands found in stream
[2026-06-19 05:54:22,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:54:22,669.669 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 05:54:23,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:54:23,605.605 INFO    ] Checking for system updates...
[2026-06-19 05:54:23,643.643 INFO    ] 200
[2026-06-19 05:54:23,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:23,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:54:23,717.717 INFO    ] No update needed
[2026-06-19 05:54:23,720.720 INFO    ] Checking for camera pi updates...
[2026-06-19 05:54:23,755.755 INFO    ] 200
[2026-06-19 05:54:23,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:23,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:54:23,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:54:23,843.843 INFO    ] No camera update needed
[2026-06-19 05:54:23,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:54:23,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:54:23,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:54:23,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:54:25,904.904 INFO    ] ================================================
[2026-06-19 05:54:25,919.919 INFO    ] Launching Daemon at Fri Jun 19 05:54:25 IST 2026
[2026-06-19 05:54:25,930.930 INFO    ] ================================================
[2026-06-19 05:54:26,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:54:26
[2026-06-19 05:54:27,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:54:27,363.363 INFO    ] Initializing speech engine...
[2026-06-19 05:54:27,371.371 INFO    ] 2026-06-19 05:54:27
[2026-06-19 05:54:27,629.629 INFO    ] 2026-06-19 05:54:27
[2026-06-19 05:54:27,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:54:27,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:54:27,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:54:28,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:54:28,105.105 INFO    ] time= 19/06/2026 05:54:28
[2026-06-19 05:54:28,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:54:28,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:54:28,236.236 INFO    ] No existing commands found in stream
[2026-06-19 05:54:33,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:54:33,250.250 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 05:54:35,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:54:35,156.156 INFO    ] Checking for system updates...
[2026-06-19 05:54:35,195.195 INFO    ] 200
[2026-06-19 05:54:35,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:35,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:54:35,258.258 INFO    ] No update needed
[2026-06-19 05:54:35,261.261 INFO    ] Checking for camera pi updates...
[2026-06-19 05:54:35,296.296 INFO    ] 200
[2026-06-19 05:54:35,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:35,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:54:35,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:54:35,396.396 INFO    ] No camera update needed
[2026-06-19 05:54:35,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:54:35,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:54:35,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:54:35,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:54:37,456.456 INFO    ] ================================================
[2026-06-19 05:54:37,472.472 INFO    ] Launching Daemon at Fri Jun 19 05:54:37 IST 2026
[2026-06-19 05:54:37,482.482 INFO    ] ================================================
[2026-06-19 05:54:38,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:54:38
[2026-06-19 05:54:38,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:54:38,937.937 INFO    ] Initializing speech engine...
[2026-06-19 05:54:38,944.944 INFO    ] 2026-06-19 05:54:38
[2026-06-19 05:54:39,192.192 INFO    ] 2026-06-19 05:54:39
[2026-06-19 05:54:39,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:54:39,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:54:39,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:54:39,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:54:39,579.579 INFO    ] time= 19/06/2026 05:54:39
[2026-06-19 05:54:39,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:54:39,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:54:39,657.657 INFO    ] No existing commands found in stream
[2026-06-19 05:54:44,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:54:44,672.672 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 05:54:46,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:54:46,144.144 INFO    ] Checking for system updates...
[2026-06-19 05:54:46,182.182 INFO    ] 200
[2026-06-19 05:54:46,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:46,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:54:46,242.242 INFO    ] No update needed
[2026-06-19 05:54:46,245.245 INFO    ] Checking for camera pi updates...
[2026-06-19 05:54:46,284.284 INFO    ] 200
[2026-06-19 05:54:46,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:46,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:54:46,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:54:46,390.390 INFO    ] No camera update needed
[2026-06-19 05:54:46,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:54:46,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:54:46,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:54:46,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:54:48,452.452 INFO    ] ================================================
[2026-06-19 05:54:48,467.467 INFO    ] Launching Daemon at Fri Jun 19 05:54:48 IST 2026
[2026-06-19 05:54:48,477.477 INFO    ] ================================================
[2026-06-19 05:54:49,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:54:49
[2026-06-19 05:54:49,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:54:49,916.916 INFO    ] Initializing speech engine...
[2026-06-19 05:54:49,931.931 INFO    ] 2026-06-19 05:54:49
[2026-06-19 05:54:50,208.208 INFO    ] 2026-06-19 05:54:50
[2026-06-19 05:54:50,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:54:50,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:54:50,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:54:50,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:54:50,691.691 INFO    ] time= 19/06/2026 05:54:50
[2026-06-19 05:54:50,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:54:50,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:54:50,844.844 INFO    ] No existing commands found in stream
[2026-06-19 05:54:55,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:54:55,878.878 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 05:54:56,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:54:56,334.334 INFO    ] Checking for system updates...
[2026-06-19 05:54:56,372.372 INFO    ] 200
[2026-06-19 05:54:56,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:56,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:54:56,431.431 INFO    ] No update needed
[2026-06-19 05:54:56,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 05:54:56,469.469 INFO    ] 200
[2026-06-19 05:54:56,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:54:56,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:54:56,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:54:56,559.559 INFO    ] No camera update needed
[2026-06-19 05:54:56,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:54:56,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:54:56,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:54:56,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:54:58,617.617 INFO    ] ================================================
[2026-06-19 05:54:58,632.632 INFO    ] Launching Daemon at Fri Jun 19 05:54:58 IST 2026
[2026-06-19 05:54:58,643.643 INFO    ] ================================================
[2026-06-19 05:54:59,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:54:59
[2026-06-19 05:54:59,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:55:00,087.087 INFO    ] Initializing speech engine...
[2026-06-19 05:55:00,098.098 INFO    ] 2026-06-19 05:55:00
[2026-06-19 05:55:00,343.343 INFO    ] 2026-06-19 05:55:00
[2026-06-19 05:55:00,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:55:00,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:55:00,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:55:00,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:55:00,796.796 INFO    ] time= 19/06/2026 05:55:00
[2026-06-19 05:55:00,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:55:00,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:55:00,954.954 INFO    ] No existing commands found in stream
[2026-06-19 05:55:05,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:55:05,969.969 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 05:55:07,269.269 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:55:07,272.272 INFO    ] Checking for system updates...
[2026-06-19 05:55:07,309.309 INFO    ] 200
[2026-06-19 05:55:07,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:07,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:55:07,373.373 INFO    ] No update needed
[2026-06-19 05:55:07,375.375 INFO    ] Checking for camera pi updates...
[2026-06-19 05:55:07,409.409 INFO    ] 200
[2026-06-19 05:55:07,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:07,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:55:07,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:55:07,492.492 INFO    ] No camera update needed
[2026-06-19 05:55:07,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:55:07,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:55:07,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:55:07,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:55:09,547.547 INFO    ] ================================================
[2026-06-19 05:55:09,562.562 INFO    ] Launching Daemon at Fri Jun 19 05:55:09 IST 2026
[2026-06-19 05:55:09,574.574 INFO    ] ================================================
[2026-06-19 05:55:10,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:55:10
[2026-06-19 05:55:10,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:55:10,991.991 INFO    ] Initializing speech engine...
[2026-06-19 05:55:11,008.008 INFO    ] 2026-06-19 05:55:10
[2026-06-19 05:55:11,295.295 INFO    ] 2026-06-19 05:55:11
[2026-06-19 05:55:11,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:55:11,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:55:11,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:55:11,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:55:11,682.682 INFO    ] time= 19/06/2026 05:55:11
[2026-06-19 05:55:11,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:55:11,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:55:11,808.808 INFO    ] No existing commands found in stream
[2026-06-19 05:55:16,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:55:16,821.821 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 05:55:19,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:55:19,112.112 INFO    ] Checking for system updates...
[2026-06-19 05:55:19,149.149 INFO    ] 200
[2026-06-19 05:55:19,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:19,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:55:19,211.211 INFO    ] No update needed
[2026-06-19 05:55:19,213.213 INFO    ] Checking for camera pi updates...
[2026-06-19 05:55:19,248.248 INFO    ] 200
[2026-06-19 05:55:19,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:19,295.295 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:55:19,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:55:19,341.341 INFO    ] No camera update needed
[2026-06-19 05:55:19,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:55:19,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:55:19,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:55:19,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:55:21,397.397 INFO    ] ================================================
[2026-06-19 05:55:21,412.412 INFO    ] Launching Daemon at Fri Jun 19 05:55:21 IST 2026
[2026-06-19 05:55:21,423.423 INFO    ] ================================================
[2026-06-19 05:55:22,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:55:22
[2026-06-19 05:55:22,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:55:23,073.073 INFO    ] Initializing speech engine...
[2026-06-19 05:55:23,085.085 INFO    ] 2026-06-19 05:55:23
[2026-06-19 05:55:23,396.396 INFO    ] 2026-06-19 05:55:23
[2026-06-19 05:55:23,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:55:23,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:55:23,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:55:23,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:55:23,907.907 INFO    ] time= 19/06/2026 05:55:23
[2026-06-19 05:55:23,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:55:23,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:55:24,063.063 INFO    ] No existing commands found in stream
[2026-06-19 05:55:29,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:55:29,090.090 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 05:55:31,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:55:31,624.624 INFO    ] Checking for system updates...
[2026-06-19 05:55:31,663.663 INFO    ] 200
[2026-06-19 05:55:31,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:31,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:55:31,724.724 INFO    ] No update needed
[2026-06-19 05:55:31,727.727 INFO    ] Checking for camera pi updates...
[2026-06-19 05:55:31,763.763 INFO    ] 200
[2026-06-19 05:55:31,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:31,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:55:31,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:55:31,865.865 INFO    ] No camera update needed
[2026-06-19 05:55:31,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:55:31,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:55:31,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:55:31,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:55:33,924.924 INFO    ] ================================================
[2026-06-19 05:55:33,939.939 INFO    ] Launching Daemon at Fri Jun 19 05:55:33 IST 2026
[2026-06-19 05:55:33,950.950 INFO    ] ================================================
[2026-06-19 05:55:34,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:55:34
[2026-06-19 05:55:35,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:55:35,607.607 INFO    ] Initializing speech engine...
[2026-06-19 05:55:35,617.617 INFO    ] 2026-06-19 05:55:35
[2026-06-19 05:55:35,900.900 INFO    ] 2026-06-19 05:55:35
[2026-06-19 05:55:36,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:55:36,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:55:36,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:55:36,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:55:36,429.429 INFO    ] time= 19/06/2026 05:55:36
[2026-06-19 05:55:36,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:55:36,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:55:36,577.577 INFO    ] No existing commands found in stream
[2026-06-19 05:55:41,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:55:41,600.600 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 05:55:43,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:55:43,140.140 INFO    ] Checking for system updates...
[2026-06-19 05:55:43,177.177 INFO    ] 200
[2026-06-19 05:55:43,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:43,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:55:43,239.239 INFO    ] No update needed
[2026-06-19 05:55:43,242.242 INFO    ] Checking for camera pi updates...
[2026-06-19 05:55:43,276.276 INFO    ] 200
[2026-06-19 05:55:43,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:43,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:55:43,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:55:43,368.368 INFO    ] No camera update needed
[2026-06-19 05:55:43,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:55:43,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:55:43,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:55:43,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:55:45,426.426 INFO    ] ================================================
[2026-06-19 05:55:45,441.441 INFO    ] Launching Daemon at Fri Jun 19 05:55:45 IST 2026
[2026-06-19 05:55:45,451.451 INFO    ] ================================================
[2026-06-19 05:55:46,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:55:46
[2026-06-19 05:55:46,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:55:46,861.861 INFO    ] Initializing speech engine...
[2026-06-19 05:55:46,867.867 INFO    ] 2026-06-19 05:55:46
[2026-06-19 05:55:47,164.164 INFO    ] 2026-06-19 05:55:47
[2026-06-19 05:55:47,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:55:47,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:55:47,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:55:47,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:55:47,547.547 INFO    ] time= 19/06/2026 05:55:47
[2026-06-19 05:55:47,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:55:47,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:55:47,677.677 INFO    ] No existing commands found in stream
[2026-06-19 05:55:52,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:55:52,690.690 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 05:55:56,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:55:56,884.884 INFO    ] Checking for system updates...
[2026-06-19 05:55:56,922.922 INFO    ] 200
[2026-06-19 05:55:56,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:56,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:55:56,984.984 INFO    ] No update needed
[2026-06-19 05:55:56,987.987 INFO    ] Checking for camera pi updates...
[2026-06-19 05:55:57,022.022 INFO    ] 200
[2026-06-19 05:55:57,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:55:57,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:55:57,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:55:57,126.126 INFO    ] No camera update needed
[2026-06-19 05:55:57,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:55:57,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:55:57,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:55:57,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:55:59,186.186 INFO    ] ================================================
[2026-06-19 05:55:59,202.202 INFO    ] Launching Daemon at Fri Jun 19 05:55:59 IST 2026
[2026-06-19 05:55:59,212.212 INFO    ] ================================================
[2026-06-19 05:55:59,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:55:59
[2026-06-19 05:56:00,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:56:00,852.852 INFO    ] Initializing speech engine...
[2026-06-19 05:56:00,867.867 INFO    ] 2026-06-19 05:56:00
[2026-06-19 05:56:01,177.177 INFO    ] 2026-06-19 05:56:01
[2026-06-19 05:56:01,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:56:01,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:56:01,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:56:01,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:56:01,587.587 INFO    ] time= 19/06/2026 05:56:01
[2026-06-19 05:56:01,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:56:01,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:56:01,679.679 INFO    ] No existing commands found in stream
[2026-06-19 05:56:06,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:56:06,693.693 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 05:56:08,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:56:08,204.204 INFO    ] Checking for system updates...
[2026-06-19 05:56:08,242.242 INFO    ] 200
[2026-06-19 05:56:08,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:56:08,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:56:08,304.304 INFO    ] No update needed
[2026-06-19 05:56:08,306.306 INFO    ] Checking for camera pi updates...
[2026-06-19 05:56:08,342.342 INFO    ] 200
[2026-06-19 05:56:08,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:56:08,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:56:08,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:56:08,436.436 INFO    ] No camera update needed
[2026-06-19 05:56:08,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:56:08,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:56:08,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:56:08,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:56:10,495.495 INFO    ] ================================================
[2026-06-19 05:56:10,510.510 INFO    ] Launching Daemon at Fri Jun 19 05:56:10 IST 2026
[2026-06-19 05:56:10,521.521 INFO    ] ================================================
[2026-06-19 05:56:11,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:56:11
[2026-06-19 05:56:11,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:56:11,945.945 INFO    ] Initializing speech engine...
[2026-06-19 05:56:11,954.954 INFO    ] 2026-06-19 05:56:11
[2026-06-19 05:56:12,200.200 INFO    ] 2026-06-19 05:56:12
[2026-06-19 05:56:12,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:56:12,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:56:12,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:56:12,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:56:12,676.676 INFO    ] time= 19/06/2026 05:56:12
[2026-06-19 05:56:12,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:56:12,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:56:12,826.826 INFO    ] No existing commands found in stream
[2026-06-19 05:56:17,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:56:17,860.860 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 05:56:20,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:56:20,962.962 INFO    ] Checking for system updates...
[2026-06-19 05:56:20,998.998 INFO    ] 200
[2026-06-19 05:56:21,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:56:21,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:56:21,056.056 INFO    ] No update needed
[2026-06-19 05:56:21,059.059 INFO    ] Checking for camera pi updates...
[2026-06-19 05:56:21,092.092 INFO    ] 200
[2026-06-19 05:56:21,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:56:21,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:56:21,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:56:21,190.190 INFO    ] No camera update needed
[2026-06-19 05:56:21,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:56:21,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:56:21,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:56:21,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:56:23,247.247 INFO    ] ================================================
[2026-06-19 05:56:23,262.262 INFO    ] Launching Daemon at Fri Jun 19 05:56:23 IST 2026
[2026-06-19 05:56:23,273.273 INFO    ] ================================================
[2026-06-19 05:56:23,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:56:23
[2026-06-19 05:56:24,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:56:24,876.876 INFO    ] Initializing speech engine...
[2026-06-19 05:56:24,888.888 INFO    ] 2026-06-19 05:56:24
[2026-06-19 05:56:25,198.198 INFO    ] 2026-06-19 05:56:25
[2026-06-19 05:56:25,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:56:25,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:56:25,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:56:25,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:56:25,705.705 INFO    ] time= 19/06/2026 05:56:25
[2026-06-19 05:56:25,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:56:25,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:56:25,861.861 INFO    ] No existing commands found in stream
[2026-06-19 05:56:30,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:56:30,881.881 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 05:56:34,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:56:34,955.955 INFO    ] Checking for system updates...
[2026-06-19 05:56:34,992.992 INFO    ] 200
[2026-06-19 05:56:34,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:56:35,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:56:35,052.052 INFO    ] No update needed
[2026-06-19 05:56:35,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 05:56:35,090.090 INFO    ] 200
[2026-06-19 05:56:35,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:56:35,135.135 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:56:35,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:56:35,178.178 INFO    ] No camera update needed
[2026-06-19 05:56:35,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:56:35,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:56:35,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:56:35,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:56:37,236.236 INFO    ] ================================================
[2026-06-19 05:56:37,251.251 INFO    ] Launching Daemon at Fri Jun 19 05:56:37 IST 2026
[2026-06-19 05:56:37,262.262 INFO    ] ================================================
[2026-06-19 05:56:37,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:56:37
[2026-06-19 05:56:38,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:56:38,870.870 INFO    ] Initializing speech engine...
[2026-06-19 05:56:38,883.883 INFO    ] 2026-06-19 05:56:38
[2026-06-19 05:56:39,170.170 INFO    ] 2026-06-19 05:56:39
[2026-06-19 05:56:39,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:56:39,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:56:39,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:56:39,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:56:39,633.633 INFO    ] time= 19/06/2026 05:56:39
[2026-06-19 05:56:39,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:56:39,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:56:39,765.765 INFO    ] No existing commands found in stream
[2026-06-19 05:56:44,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:56:44,781.781 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 05:56:49,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:56:49,184.184 INFO    ] Checking for system updates...
[2026-06-19 05:56:49,221.221 INFO    ] 200
[2026-06-19 05:56:49,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:56:49,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:56:49,280.280 INFO    ] No update needed
[2026-06-19 05:56:49,282.282 INFO    ] Checking for camera pi updates...
[2026-06-19 05:56:49,316.316 INFO    ] 200
[2026-06-19 05:56:49,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:56:49,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:56:49,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:56:49,394.394 INFO    ] No camera update needed
[2026-06-19 05:56:49,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:56:49,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:56:49,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:56:49,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:56:51,450.450 INFO    ] ================================================
[2026-06-19 05:56:51,466.466 INFO    ] Launching Daemon at Fri Jun 19 05:56:51 IST 2026
[2026-06-19 05:56:51,476.476 INFO    ] ================================================
[2026-06-19 05:56:52,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:56:52
[2026-06-19 05:56:52,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:56:52,896.896 INFO    ] Initializing speech engine...
[2026-06-19 05:56:52,904.904 INFO    ] 2026-06-19 05:56:52
[2026-06-19 05:56:53,150.150 INFO    ] 2026-06-19 05:56:53
[2026-06-19 05:56:53,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:56:53,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:56:53,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:56:53,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:56:53,629.629 INFO    ] time= 19/06/2026 05:56:53
[2026-06-19 05:56:53,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:56:53,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:56:53,765.765 INFO    ] No existing commands found in stream
[2026-06-19 05:56:58,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:56:58,779.779 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 05:57:01,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:57:01,726.726 INFO    ] Checking for system updates...
[2026-06-19 05:57:01,767.767 INFO    ] 200
[2026-06-19 05:57:01,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:01,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:57:01,848.848 INFO    ] No update needed
[2026-06-19 05:57:01,852.852 INFO    ] Checking for camera pi updates...
[2026-06-19 05:57:01,905.905 INFO    ] 200
[2026-06-19 05:57:01,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:01,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:57:01,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:57:01,990.990 INFO    ] No camera update needed
[2026-06-19 05:57:01,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:57:01,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:57:02,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:57:02,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:57:04,050.050 INFO    ] ================================================
[2026-06-19 05:57:04,065.065 INFO    ] Launching Daemon at Fri Jun 19 05:57:04 IST 2026
[2026-06-19 05:57:04,076.076 INFO    ] ================================================
[2026-06-19 05:57:04,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:57:04
[2026-06-19 05:57:05,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:57:05,499.499 INFO    ] Initializing speech engine...
[2026-06-19 05:57:05,508.508 INFO    ] 2026-06-19 05:57:05
[2026-06-19 05:57:05,756.756 INFO    ] 2026-06-19 05:57:05
[2026-06-19 05:57:05,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:57:05,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:57:06,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:57:06,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:57:06,144.144 INFO    ] time= 19/06/2026 05:57:06
[2026-06-19 05:57:06,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:57:06,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:57:06,320.320 INFO    ] No existing commands found in stream
[2026-06-19 05:57:11,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:57:11,353.353 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 05:57:12,714.714 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:57:12,717.717 INFO    ] Checking for system updates...
[2026-06-19 05:57:12,753.753 INFO    ] 200
[2026-06-19 05:57:12,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:12,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:57:12,820.820 INFO    ] No update needed
[2026-06-19 05:57:12,822.822 INFO    ] Checking for camera pi updates...
[2026-06-19 05:57:12,856.856 INFO    ] 200
[2026-06-19 05:57:12,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:12,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:57:12,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:57:12,950.950 INFO    ] No camera update needed
[2026-06-19 05:57:12,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:57:12,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:57:12,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:57:12,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:57:15,007.007 INFO    ] ================================================
[2026-06-19 05:57:15,022.022 INFO    ] Launching Daemon at Fri Jun 19 05:57:15 IST 2026
[2026-06-19 05:57:15,033.033 INFO    ] ================================================
[2026-06-19 05:57:15,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:57:15
[2026-06-19 05:57:16,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:57:16,648.648 INFO    ] Initializing speech engine...
[2026-06-19 05:57:16,661.661 INFO    ] 2026-06-19 05:57:16
[2026-06-19 05:57:16,972.972 INFO    ] 2026-06-19 05:57:16
[2026-06-19 05:57:17,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:57:17,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:57:17,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:57:17,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:57:17,408.408 INFO    ] time= 19/06/2026 05:57:17
[2026-06-19 05:57:17,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:57:17,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:57:17,614.614 INFO    ] No existing commands found in stream
[2026-06-19 05:57:22,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:57:22,649.649 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 05:57:23,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:57:23,854.854 INFO    ] Checking for system updates...
[2026-06-19 05:57:23,895.895 INFO    ] 200
[2026-06-19 05:57:23,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:23,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:57:23,953.953 INFO    ] No update needed
[2026-06-19 05:57:23,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 05:57:23,991.991 INFO    ] 200
[2026-06-19 05:57:23,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:24,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:57:24,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:57:24,090.090 INFO    ] No camera update needed
[2026-06-19 05:57:24,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:57:24,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:57:24,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:57:24,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:57:26,145.145 INFO    ] ================================================
[2026-06-19 05:57:26,159.159 INFO    ] Launching Daemon at Fri Jun 19 05:57:26 IST 2026
[2026-06-19 05:57:26,170.170 INFO    ] ================================================
[2026-06-19 05:57:26,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:57:26
[2026-06-19 05:57:27,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:57:27,754.754 INFO    ] Initializing speech engine...
[2026-06-19 05:57:27,761.761 INFO    ] 2026-06-19 05:57:27
[2026-06-19 05:57:28,042.042 INFO    ] 2026-06-19 05:57:28
[2026-06-19 05:57:28,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:57:28,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:57:28,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:57:28,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:57:28,478.478 INFO    ] time= 19/06/2026 05:57:28
[2026-06-19 05:57:28,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:57:28,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:57:28,641.641 INFO    ] No existing commands found in stream
[2026-06-19 05:57:33,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:57:33,657.657 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 05:57:36,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:57:36,100.100 INFO    ] Checking for system updates...
[2026-06-19 05:57:36,137.137 INFO    ] 200
[2026-06-19 05:57:36,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:36,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:57:36,200.200 INFO    ] No update needed
[2026-06-19 05:57:36,202.202 INFO    ] Checking for camera pi updates...
[2026-06-19 05:57:36,239.239 INFO    ] 200
[2026-06-19 05:57:36,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:36,283.283 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:57:36,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:57:36,327.327 INFO    ] No camera update needed
[2026-06-19 05:57:36,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:57:36,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:57:36,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:57:36,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:57:38,382.382 INFO    ] ================================================
[2026-06-19 05:57:38,397.397 INFO    ] Launching Daemon at Fri Jun 19 05:57:38 IST 2026
[2026-06-19 05:57:38,408.408 INFO    ] ================================================
[2026-06-19 05:57:39,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:57:39
[2026-06-19 05:57:39,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:57:39,960.960 INFO    ] Initializing speech engine...
[2026-06-19 05:57:39,968.968 INFO    ] 2026-06-19 05:57:39
[2026-06-19 05:57:40,215.215 INFO    ] 2026-06-19 05:57:40
[2026-06-19 05:57:40,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:57:40,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:57:40,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:57:40,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:57:40,685.685 INFO    ] time= 19/06/2026 05:57:40
[2026-06-19 05:57:40,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:57:40,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:57:40,829.829 INFO    ] No existing commands found in stream
[2026-06-19 05:57:45,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:57:45,844.844 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 05:57:47,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:57:47,232.232 INFO    ] Checking for system updates...
[2026-06-19 05:57:47,268.268 INFO    ] 200
[2026-06-19 05:57:47,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:47,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:57:47,325.325 INFO    ] No update needed
[2026-06-19 05:57:47,328.328 INFO    ] Checking for camera pi updates...
[2026-06-19 05:57:47,365.365 INFO    ] 200
[2026-06-19 05:57:47,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:47,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:57:47,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:57:47,448.448 INFO    ] No camera update needed
[2026-06-19 05:57:47,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:57:47,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:57:47,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:57:47,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:57:49,503.503 INFO    ] ================================================
[2026-06-19 05:57:49,518.518 INFO    ] Launching Daemon at Fri Jun 19 05:57:49 IST 2026
[2026-06-19 05:57:49,529.529 INFO    ] ================================================
[2026-06-19 05:57:50,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:57:50
[2026-06-19 05:57:50,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:57:51,087.087 INFO    ] Initializing speech engine...
[2026-06-19 05:57:51,095.095 INFO    ] 2026-06-19 05:57:51
[2026-06-19 05:57:51,378.378 INFO    ] 2026-06-19 05:57:51
[2026-06-19 05:57:51,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:57:51,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:57:51,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:57:51,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:57:51,878.878 INFO    ] time= 19/06/2026 05:57:51
[2026-06-19 05:57:51,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:57:51,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:57:52,038.038 INFO    ] No existing commands found in stream
[2026-06-19 05:57:57,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:57:57,069.069 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 05:57:57,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 05:57:57,595.595 INFO    ] Checking for system updates...
[2026-06-19 05:57:57,633.633 INFO    ] 200
[2026-06-19 05:57:57,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:57,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:57:57,700.700 INFO    ] No update needed
[2026-06-19 05:57:57,703.703 INFO    ] Checking for camera pi updates...
[2026-06-19 05:57:57,742.742 INFO    ] 200
[2026-06-19 05:57:57,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:57:57,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:57:57,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:57:57,840.840 INFO    ] No camera update needed
[2026-06-19 05:57:57,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:57:57,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:57:57,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:57:57,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:57:59,897.897 INFO    ] ================================================
[2026-06-19 05:57:59,912.912 INFO    ] Launching Daemon at Fri Jun 19 05:57:59 IST 2026
[2026-06-19 05:57:59,923.923 INFO    ] ================================================
[2026-06-19 05:58:00,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:58:00
[2026-06-19 05:58:01,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:58:01,347.347 INFO    ] Initializing speech engine...
[2026-06-19 05:58:01,353.353 INFO    ] 2026-06-19 05:58:01
[2026-06-19 05:58:01,611.611 INFO    ] 2026-06-19 05:58:01
[2026-06-19 05:58:01,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:58:01,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:58:01,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:58:02,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:58:02,035.035 INFO    ] time= 19/06/2026 05:58:02
[2026-06-19 05:58:02,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:58:02,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:58:02,151.151 INFO    ] No existing commands found in stream
[2026-06-19 05:58:07,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:58:07,160.160 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 05:58:10,612.612 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:58:10,615.615 INFO    ] Checking for system updates...
[2026-06-19 05:58:10,654.654 INFO    ] 200
[2026-06-19 05:58:10,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:10,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:58:10,712.712 INFO    ] No update needed
[2026-06-19 05:58:10,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 05:58:10,751.751 INFO    ] 200
[2026-06-19 05:58:10,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:10,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:58:10,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:58:10,942.942 INFO    ] No camera update needed
[2026-06-19 05:58:10,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:58:10,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:58:10,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:58:10,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:58:13,998.998 INFO    ] ================================================
[2026-06-19 05:58:13,013.013 INFO    ] Launching Daemon at Fri Jun 19 05:58:13 IST 2026
[2026-06-19 05:58:13,023.023 INFO    ] ================================================
[2026-06-19 05:58:13,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:58:13
[2026-06-19 05:58:14,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:58:14,476.476 INFO    ] Initializing speech engine...
[2026-06-19 05:58:14,488.488 INFO    ] 2026-06-19 05:58:14
[2026-06-19 05:58:14,757.757 INFO    ] 2026-06-19 05:58:14
[2026-06-19 05:58:14,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:58:14,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:58:15,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:58:15,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:58:15,141.141 INFO    ] time= 19/06/2026 05:58:15
[2026-06-19 05:58:15,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:58:15,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:58:15,319.319 INFO    ] No existing commands found in stream
[2026-06-19 05:58:20,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:58:20,347.347 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 05:58:23,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:58:23,272.272 INFO    ] Checking for system updates...
[2026-06-19 05:58:23,309.309 INFO    ] 200
[2026-06-19 05:58:23,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:23,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:58:23,372.372 INFO    ] No update needed
[2026-06-19 05:58:23,374.374 INFO    ] Checking for camera pi updates...
[2026-06-19 05:58:23,408.408 INFO    ] 200
[2026-06-19 05:58:23,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:23,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:58:23,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:58:23,494.494 INFO    ] No camera update needed
[2026-06-19 05:58:23,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:58:23,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:58:23,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:58:23,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:58:25,551.551 INFO    ] ================================================
[2026-06-19 05:58:25,566.566 INFO    ] Launching Daemon at Fri Jun 19 05:58:25 IST 2026
[2026-06-19 05:58:25,577.577 INFO    ] ================================================
[2026-06-19 05:58:26,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:58:26
[2026-06-19 05:58:26,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:58:27,035.035 INFO    ] Initializing speech engine...
[2026-06-19 05:58:27,044.044 INFO    ] 2026-06-19 05:58:27
[2026-06-19 05:58:27,290.290 INFO    ] 2026-06-19 05:58:27
[2026-06-19 05:58:27,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:58:27,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:58:27,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:58:27,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:58:27,766.766 INFO    ] time= 19/06/2026 05:58:27
[2026-06-19 05:58:27,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:58:27,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:58:27,904.904 INFO    ] No existing commands found in stream
[2026-06-19 05:58:32,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:58:32,919.919 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 05:58:33,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:58:33,806.806 INFO    ] Checking for system updates...
[2026-06-19 05:58:33,842.842 INFO    ] 200
[2026-06-19 05:58:33,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:33,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:58:33,900.900 INFO    ] No update needed
[2026-06-19 05:58:33,903.903 INFO    ] Checking for camera pi updates...
[2026-06-19 05:58:33,937.937 INFO    ] 200
[2026-06-19 05:58:33,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:33,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:58:34,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:58:34,033.033 INFO    ] No camera update needed
[2026-06-19 05:58:34,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:58:34,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:58:34,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:58:34,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:58:36,089.089 INFO    ] ================================================
[2026-06-19 05:58:36,104.104 INFO    ] Launching Daemon at Fri Jun 19 05:58:36 IST 2026
[2026-06-19 05:58:36,114.114 INFO    ] ================================================
[2026-06-19 05:58:36,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:58:36
[2026-06-19 05:58:37,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:58:37,577.577 INFO    ] Initializing speech engine...
[2026-06-19 05:58:37,593.593 INFO    ] 2026-06-19 05:58:37
[2026-06-19 05:58:37,868.868 INFO    ] 2026-06-19 05:58:37
[2026-06-19 05:58:37,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:58:38,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:58:38,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:58:38,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:58:38,217.217 INFO    ] time= 19/06/2026 05:58:38
[2026-06-19 05:58:38,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:58:38,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:58:38,299.299 INFO    ] No existing commands found in stream
[2026-06-19 05:58:43,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:58:43,314.314 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 05:58:44,210.210 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:58:44,212.212 INFO    ] Checking for system updates...
[2026-06-19 05:58:44,252.252 INFO    ] 200
[2026-06-19 05:58:44,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:44,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:58:44,316.316 INFO    ] No update needed
[2026-06-19 05:58:44,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 05:58:44,352.352 INFO    ] 200
[2026-06-19 05:58:44,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:44,403.403 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:58:44,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:58:44,444.444 INFO    ] No camera update needed
[2026-06-19 05:58:44,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:58:44,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:58:44,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:58:44,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:58:46,499.499 INFO    ] ================================================
[2026-06-19 05:58:46,514.514 INFO    ] Launching Daemon at Fri Jun 19 05:58:46 IST 2026
[2026-06-19 05:58:46,525.525 INFO    ] ================================================
[2026-06-19 05:58:47,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:58:47
[2026-06-19 05:58:47,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:58:48,132.132 INFO    ] Initializing speech engine...
[2026-06-19 05:58:48,145.145 INFO    ] 2026-06-19 05:58:48
[2026-06-19 05:58:48,425.425 INFO    ] 2026-06-19 05:58:48
[2026-06-19 05:58:48,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:58:48,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:58:48,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:58:48,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:58:48,905.905 INFO    ] time= 19/06/2026 05:58:48
[2026-06-19 05:58:48,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:58:48,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:58:49,036.036 INFO    ] No existing commands found in stream
[2026-06-19 05:58:54,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:58:54,053.053 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 05:58:58,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 05:58:58,764.764 INFO    ] Checking for system updates...
[2026-06-19 05:58:58,801.801 INFO    ] 200
[2026-06-19 05:58:58,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:58,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:58:58,862.862 INFO    ] No update needed
[2026-06-19 05:58:58,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 05:58:58,902.902 INFO    ] 200
[2026-06-19 05:58:58,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:58:58,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:58:58,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:58:58,987.987 INFO    ] No camera update needed
[2026-06-19 05:58:58,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:58:58,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:58:58,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:58:59,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:59:01,048.048 INFO    ] ================================================
[2026-06-19 05:59:01,063.063 INFO    ] Launching Daemon at Fri Jun 19 05:59:01 IST 2026
[2026-06-19 05:59:01,075.075 INFO    ] ================================================
[2026-06-19 05:59:01,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:59:01
[2026-06-19 05:59:02,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:59:03,042.042 INFO    ] Initializing speech engine...
[2026-06-19 05:59:03,048.048 INFO    ] 2026-06-19 05:59:03
[2026-06-19 05:59:03,325.325 INFO    ] 2026-06-19 05:59:03
[2026-06-19 05:59:03,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:59:03,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:59:03,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:59:03,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:59:03,794.794 INFO    ] time= 19/06/2026 05:59:03
[2026-06-19 05:59:03,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:59:03,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:59:03,930.930 INFO    ] No existing commands found in stream
[2026-06-19 05:59:08,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:59:08,946.946 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 05:59:09,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 05:59:09,448.448 INFO    ] Checking for system updates...
[2026-06-19 05:59:09,486.486 INFO    ] 200
[2026-06-19 05:59:09,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:09,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:59:09,545.545 INFO    ] No update needed
[2026-06-19 05:59:09,547.547 INFO    ] Checking for camera pi updates...
[2026-06-19 05:59:09,582.582 INFO    ] 200
[2026-06-19 05:59:09,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:09,625.625 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:59:09,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:59:09,668.668 INFO    ] No camera update needed
[2026-06-19 05:59:09,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:59:09,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:59:09,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:59:09,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:59:11,725.725 INFO    ] ================================================
[2026-06-19 05:59:11,741.741 INFO    ] Launching Daemon at Fri Jun 19 05:59:11 IST 2026
[2026-06-19 05:59:11,752.752 INFO    ] ================================================
[2026-06-19 05:59:12,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:59:12
[2026-06-19 05:59:12,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:59:13,167.167 INFO    ] Initializing speech engine...
[2026-06-19 05:59:13,188.188 INFO    ] 2026-06-19 05:59:13
[2026-06-19 05:59:13,466.466 INFO    ] 2026-06-19 05:59:13
[2026-06-19 05:59:13,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:59:13,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:59:13,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:59:13,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:59:13,844.844 INFO    ] time= 19/06/2026 05:59:13
[2026-06-19 05:59:13,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:59:13,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:59:13,969.969 INFO    ] No existing commands found in stream
[2026-06-19 05:59:18,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:59:18,984.984 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 05:59:21,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:59:21,979.979 INFO    ] Checking for system updates...
[2026-06-19 05:59:22,018.018 INFO    ] 200
[2026-06-19 05:59:22,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:22,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:59:22,076.076 INFO    ] No update needed
[2026-06-19 05:59:22,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 05:59:22,116.116 INFO    ] 200
[2026-06-19 05:59:22,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:22,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:59:22,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:59:22,204.204 INFO    ] No camera update needed
[2026-06-19 05:59:22,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:59:22,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:59:22,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:59:22,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:59:24,260.260 INFO    ] ================================================
[2026-06-19 05:59:24,275.275 INFO    ] Launching Daemon at Fri Jun 19 05:59:24 IST 2026
[2026-06-19 05:59:24,286.286 INFO    ] ================================================
[2026-06-19 05:59:24,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:59:24
[2026-06-19 05:59:25,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:59:25,724.724 INFO    ] Initializing speech engine...
[2026-06-19 05:59:25,746.746 INFO    ] 2026-06-19 05:59:25
[2026-06-19 05:59:26,000.000 INFO    ] 2026-06-19 05:59:25
[2026-06-19 05:59:26,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:59:26,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:59:26,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:59:26,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:59:26,466.466 INFO    ] time= 19/06/2026 05:59:26
[2026-06-19 05:59:26,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:59:26,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:59:26,614.614 INFO    ] No existing commands found in stream
[2026-06-19 05:59:31,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:59:31,629.629 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 05:59:35,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 05:59:35,962.962 INFO    ] Checking for system updates...
[2026-06-19 05:59:35,998.998 INFO    ] 200
[2026-06-19 05:59:36,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:36,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:59:36,063.063 INFO    ] No update needed
[2026-06-19 05:59:36,065.065 INFO    ] Checking for camera pi updates...
[2026-06-19 05:59:36,099.099 INFO    ] 200
[2026-06-19 05:59:36,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:36,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:59:36,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:59:36,190.190 INFO    ] No camera update needed
[2026-06-19 05:59:36,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:59:36,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:59:36,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:59:36,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:59:38,246.246 INFO    ] ================================================
[2026-06-19 05:59:38,261.261 INFO    ] Launching Daemon at Fri Jun 19 05:59:38 IST 2026
[2026-06-19 05:59:38,272.272 INFO    ] ================================================
[2026-06-19 05:59:38,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:59:38
[2026-06-19 05:59:39,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:59:39,680.680 INFO    ] Initializing speech engine...
[2026-06-19 05:59:39,689.689 INFO    ] 2026-06-19 05:59:39
[2026-06-19 05:59:39,982.982 INFO    ] 2026-06-19 05:59:39
[2026-06-19 05:59:40,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:59:40,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:59:40,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:59:40,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:59:40,361.361 INFO    ] time= 19/06/2026 05:59:40
[2026-06-19 05:59:40,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:59:40,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:59:40,461.461 INFO    ] No existing commands found in stream
[2026-06-19 05:59:45,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:59:45,489.489 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 05:59:46,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 05:59:46,570.570 INFO    ] Checking for system updates...
[2026-06-19 05:59:46,606.606 INFO    ] 200
[2026-06-19 05:59:46,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:46,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:59:46,664.664 INFO    ] No update needed
[2026-06-19 05:59:46,667.667 INFO    ] Checking for camera pi updates...
[2026-06-19 05:59:46,701.701 INFO    ] 200
[2026-06-19 05:59:46,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:46,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:59:46,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 05:59:46,779.779 INFO    ] No camera update needed
[2026-06-19 05:59:46,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:59:46,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:59:46,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:59:46,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 05:59:48,835.835 INFO    ] ================================================
[2026-06-19 05:59:48,851.851 INFO    ] Launching Daemon at Fri Jun 19 05:59:48 IST 2026
[2026-06-19 05:59:48,863.863 INFO    ] ================================================
[2026-06-19 05:59:49,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 05:59:49
[2026-06-19 05:59:50,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 05:59:50,468.468 INFO    ] Initializing speech engine...
[2026-06-19 05:59:50,476.476 INFO    ] 2026-06-19 05:59:50
[2026-06-19 05:59:50,745.745 INFO    ] 2026-06-19 05:59:50
[2026-06-19 05:59:50,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 05:59:51,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 05:59:51,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 05:59:51,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 05:59:51,175.175 INFO    ] time= 19/06/2026 05:59:51
[2026-06-19 05:59:51,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 05:59:51,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-19 05:59:51,332.332 INFO    ] No existing commands found in stream
[2026-06-19 05:59:56,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 05:59:56,347.347 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 05:59:58,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 05:59:58,489.489 INFO    ] Checking for system updates...
[2026-06-19 05:59:58,528.528 INFO    ] 200
[2026-06-19 05:59:58,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:58,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:59:58,593.593 INFO    ] No update needed
[2026-06-19 05:59:58,595.595 INFO    ] Checking for camera pi updates...
[2026-06-19 05:59:58,629.629 INFO    ] 200
[2026-06-19 05:59:58,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 05:59:58,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 05:59:58,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 05:59:58,731.731 INFO    ] No camera update needed
[2026-06-19 05:59:58,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 05:59:58,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 05:59:58,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 05:59:58,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:00:00,788.788 INFO    ] ================================================
[2026-06-19 06:00:00,803.803 INFO    ] Launching Daemon at Fri Jun 19 06:00:00 IST 2026
[2026-06-19 06:00:00,814.814 INFO    ] ================================================
[2026-06-19 06:00:01,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:00:01
[2026-06-19 06:00:04,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:00:05,496.496 INFO    ] Initializing speech engine...
[2026-06-19 06:00:05,500.500 INFO    ] 2026-06-19 06:00:05
[2026-06-19 06:00:06,109.109 INFO    ] 2026-06-19 06:00:06
[2026-06-19 06:00:06,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:00:06,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:00:06,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:00:06,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:00:06,549.549 INFO    ] time= 19/06/2026 06:00:06
[2026-06-19 06:00:06,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:00:06,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:00:06,696.696 INFO    ] No existing commands found in stream
[2026-06-19 06:00:11,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:00:11,711.711 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 06:00:15,890.890 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:00:15,892.892 INFO    ] Checking for system updates...
[2026-06-19 06:00:15,930.930 INFO    ] 200
[2026-06-19 06:00:15,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:00:15,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:00:15,989.989 INFO    ] No update needed
[2026-06-19 06:00:15,992.992 INFO    ] Checking for camera pi updates...
[2026-06-19 06:00:16,027.027 INFO    ] 200
[2026-06-19 06:00:16,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:00:16,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:00:16,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:00:16,227.227 INFO    ] No camera update needed
[2026-06-19 06:00:16,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:00:16,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:00:16,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:00:16,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:00:18,284.284 INFO    ] ================================================
[2026-06-19 06:00:18,299.299 INFO    ] Launching Daemon at Fri Jun 19 06:00:18 IST 2026
[2026-06-19 06:00:18,311.311 INFO    ] ================================================
[2026-06-19 06:00:18,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:00:18
[2026-06-19 06:00:19,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:00:19,756.756 INFO    ] Initializing speech engine...
[2026-06-19 06:00:19,766.766 INFO    ] 2026-06-19 06:00:19
[2026-06-19 06:00:20,017.017 INFO    ] 2026-06-19 06:00:20
[2026-06-19 06:00:20,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:00:20,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:00:20,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:00:20,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:00:20,397.397 INFO    ] time= 19/06/2026 06:00:20
[2026-06-19 06:00:20,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:00:20,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:00:20,576.576 INFO    ] No existing commands found in stream
[2026-06-19 06:00:25,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:00:25,610.610 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 06:00:26,873.873 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:00:26,876.876 INFO    ] Checking for system updates...
[2026-06-19 06:00:26,917.917 INFO    ] 200
[2026-06-19 06:00:26,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:00:26,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:00:26,982.982 INFO    ] No update needed
[2026-06-19 06:00:26,985.985 INFO    ] Checking for camera pi updates...
[2026-06-19 06:00:27,019.019 INFO    ] 200
[2026-06-19 06:00:27,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:00:27,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:00:27,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:00:27,119.119 INFO    ] No camera update needed
[2026-06-19 06:00:27,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:00:27,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:00:27,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:00:27,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:00:29,179.179 INFO    ] ================================================
[2026-06-19 06:00:29,196.196 INFO    ] Launching Daemon at Fri Jun 19 06:00:29 IST 2026
[2026-06-19 06:00:29,207.207 INFO    ] ================================================
[2026-06-19 06:00:29,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:00:29
[2026-06-19 06:00:30,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:00:30,891.891 INFO    ] Initializing speech engine...
[2026-06-19 06:00:30,898.898 INFO    ] 2026-06-19 06:00:30
[2026-06-19 06:00:31,207.207 INFO    ] 2026-06-19 06:00:31
[2026-06-19 06:00:31,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:00:31,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:00:31,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:00:31,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:00:31,737.737 INFO    ] time= 19/06/2026 06:00:31
[2026-06-19 06:00:31,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:00:31,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:00:31,906.906 INFO    ] No existing commands found in stream
[2026-06-19 06:00:36,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:00:36,940.940 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 06:00:38,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:00:38,251.251 INFO    ] Checking for system updates...
[2026-06-19 06:00:38,289.289 INFO    ] 200
[2026-06-19 06:00:38,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:00:38,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:00:38,353.353 INFO    ] No update needed
[2026-06-19 06:00:38,357.357 INFO    ] Checking for camera pi updates...
[2026-06-19 06:00:38,401.401 INFO    ] 200
[2026-06-19 06:00:38,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:00:38,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:00:38,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:00:38,501.501 INFO    ] No camera update needed
[2026-06-19 06:00:38,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:00:38,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:00:38,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:00:38,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:00:40,563.563 INFO    ] ================================================
[2026-06-19 06:00:40,580.580 INFO    ] Launching Daemon at Fri Jun 19 06:00:40 IST 2026
[2026-06-19 06:00:40,592.592 INFO    ] ================================================
[2026-06-19 06:00:41,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:00:41
[2026-06-19 06:00:41,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:00:41,992.992 INFO    ] Initializing speech engine...
[2026-06-19 06:00:42,007.007 INFO    ] 2026-06-19 06:00:41
[2026-06-19 06:00:42,276.276 INFO    ] 2026-06-19 06:00:42
[2026-06-19 06:00:42,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:00:42,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:00:42,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:00:42,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:00:42,756.756 INFO    ] time= 19/06/2026 06:00:42
[2026-06-19 06:00:42,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:00:42,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:00:42,899.899 INFO    ] No existing commands found in stream
[2026-06-19 06:00:47,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:00:47,913.913 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 06:00:50,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:00:50,263.263 INFO    ] Checking for system updates...
[2026-06-19 06:00:50,300.300 INFO    ] 200
[2026-06-19 06:00:50,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:00:50,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:00:50,358.358 INFO    ] No update needed
[2026-06-19 06:00:50,361.361 INFO    ] Checking for camera pi updates...
[2026-06-19 06:00:50,399.399 INFO    ] 200
[2026-06-19 06:00:50,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:00:50,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:00:50,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:00:50,491.491 INFO    ] No camera update needed
[2026-06-19 06:00:50,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:00:50,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:00:50,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:00:50,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:00:52,549.549 INFO    ] ================================================
[2026-06-19 06:00:52,564.564 INFO    ] Launching Daemon at Fri Jun 19 06:00:52 IST 2026
[2026-06-19 06:00:52,575.575 INFO    ] ================================================
[2026-06-19 06:00:53,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:00:53
[2026-06-19 06:00:53,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:00:54,244.244 INFO    ] Initializing speech engine...
[2026-06-19 06:00:54,252.252 INFO    ] 2026-06-19 06:00:54
[2026-06-19 06:00:54,534.534 INFO    ] 2026-06-19 06:00:54
[2026-06-19 06:00:54,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:00:54,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:00:54,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:00:54,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:00:55,015.015 INFO    ] time= 19/06/2026 06:00:54
[2026-06-19 06:00:55,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:00:55,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:00:55,165.165 INFO    ] No existing commands found in stream
[2026-06-19 06:01:00,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:01:00,181.181 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 06:01:01,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:01:01,238.238 INFO    ] Checking for system updates...
[2026-06-19 06:01:01,300.300 INFO    ] 200
[2026-06-19 06:01:01,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:01,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:01:01,396.396 INFO    ] No update needed
[2026-06-19 06:01:01,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 06:01:01,455.455 INFO    ] 200
[2026-06-19 06:01:01,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:01,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:01:01,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:01:01,630.630 INFO    ] No camera update needed
[2026-06-19 06:01:01,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:01:01,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:01:01,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:01:01,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:01:03,701.701 INFO    ] ================================================
[2026-06-19 06:01:03,717.717 INFO    ] Launching Daemon at Fri Jun 19 06:01:03 IST 2026
[2026-06-19 06:01:03,728.728 INFO    ] ================================================
[2026-06-19 06:01:04,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:01:04
[2026-06-19 06:01:04,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:01:05,135.135 INFO    ] Initializing speech engine...
[2026-06-19 06:01:05,141.141 INFO    ] 2026-06-19 06:01:05
[2026-06-19 06:01:05,436.436 INFO    ] 2026-06-19 06:01:05
[2026-06-19 06:01:05,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:01:05,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:01:05,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:01:05,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:01:05,811.811 INFO    ] time= 19/06/2026 06:01:05
[2026-06-19 06:01:05,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:01:05,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:01:05,932.932 INFO    ] No existing commands found in stream
[2026-06-19 06:01:10,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:01:10,954.954 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 06:01:13,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:01:13,305.305 INFO    ] Checking for system updates...
[2026-06-19 06:01:13,345.345 INFO    ] 200
[2026-06-19 06:01:13,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:13,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:01:13,402.402 INFO    ] No update needed
[2026-06-19 06:01:13,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 06:01:13,442.442 INFO    ] 200
[2026-06-19 06:01:13,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:13,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:01:13,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:01:13,519.519 INFO    ] No camera update needed
[2026-06-19 06:01:13,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:01:13,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:01:13,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:01:13,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:01:15,578.578 INFO    ] ================================================
[2026-06-19 06:01:15,594.594 INFO    ] Launching Daemon at Fri Jun 19 06:01:15 IST 2026
[2026-06-19 06:01:15,605.605 INFO    ] ================================================
[2026-06-19 06:01:16,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:01:16
[2026-06-19 06:01:16,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:01:17,030.030 INFO    ] Initializing speech engine...
[2026-06-19 06:01:17,039.039 INFO    ] 2026-06-19 06:01:17
[2026-06-19 06:01:17,292.292 INFO    ] 2026-06-19 06:01:17
[2026-06-19 06:01:17,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:01:17,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:01:17,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:01:17,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:01:17,721.721 INFO    ] time= 19/06/2026 06:01:17
[2026-06-19 06:01:17,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:01:17,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:01:17,900.900 INFO    ] No existing commands found in stream
[2026-06-19 06:01:22,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:01:22,910.910 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 06:01:26,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:01:26,205.205 INFO    ] Checking for system updates...
[2026-06-19 06:01:26,245.245 INFO    ] 200
[2026-06-19 06:01:26,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:26,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:01:26,303.303 INFO    ] No update needed
[2026-06-19 06:01:26,305.305 INFO    ] Checking for camera pi updates...
[2026-06-19 06:01:26,340.340 INFO    ] 200
[2026-06-19 06:01:26,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:26,383.383 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:01:26,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:01:26,428.428 INFO    ] No camera update needed
[2026-06-19 06:01:26,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:01:26,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:01:26,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:01:26,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:01:28,483.483 INFO    ] ================================================
[2026-06-19 06:01:28,500.500 INFO    ] Launching Daemon at Fri Jun 19 06:01:28 IST 2026
[2026-06-19 06:01:28,511.511 INFO    ] ================================================
[2026-06-19 06:01:29,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:01:29
[2026-06-19 06:01:29,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:01:29,942.942 INFO    ] Initializing speech engine...
[2026-06-19 06:01:29,948.948 INFO    ] 2026-06-19 06:01:29
[2026-06-19 06:01:30,208.208 INFO    ] 2026-06-19 06:01:30
[2026-06-19 06:01:30,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:01:30,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:01:30,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:01:30,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:01:30,562.562 INFO    ] time= 19/06/2026 06:01:30
[2026-06-19 06:01:30,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:01:30,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:01:30,729.729 INFO    ] No existing commands found in stream
[2026-06-19 06:01:35,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:01:35,757.757 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 06:01:39,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:01:39,206.206 INFO    ] Checking for system updates...
[2026-06-19 06:01:39,242.242 INFO    ] 200
[2026-06-19 06:01:39,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:39,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:01:39,299.299 INFO    ] No update needed
[2026-06-19 06:01:39,301.301 INFO    ] Checking for camera pi updates...
[2026-06-19 06:01:39,336.336 INFO    ] 200
[2026-06-19 06:01:39,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:39,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:01:39,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:01:39,429.429 INFO    ] No camera update needed
[2026-06-19 06:01:39,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:01:39,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:01:39,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:01:39,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:01:41,484.484 INFO    ] ================================================
[2026-06-19 06:01:41,500.500 INFO    ] Launching Daemon at Fri Jun 19 06:01:41 IST 2026
[2026-06-19 06:01:41,511.511 INFO    ] ================================================
[2026-06-19 06:01:42,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:01:42
[2026-06-19 06:01:42,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:01:43,074.074 INFO    ] Initializing speech engine...
[2026-06-19 06:01:43,086.086 INFO    ] 2026-06-19 06:01:43
[2026-06-19 06:01:43,364.364 INFO    ] 2026-06-19 06:01:43
[2026-06-19 06:01:43,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:01:43,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:01:43,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:01:43,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:01:43,796.796 INFO    ] time= 19/06/2026 06:01:43
[2026-06-19 06:01:43,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:01:43,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:01:43,968.968 INFO    ] No existing commands found in stream
[2026-06-19 06:01:48,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:01:48,983.983 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 06:01:53,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:01:53,369.369 INFO    ] Checking for system updates...
[2026-06-19 06:01:53,409.409 INFO    ] 200
[2026-06-19 06:01:53,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:53,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:01:53,479.479 INFO    ] No update needed
[2026-06-19 06:01:53,482.482 INFO    ] Checking for camera pi updates...
[2026-06-19 06:01:53,517.517 INFO    ] 200
[2026-06-19 06:01:53,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:01:53,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:01:53,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:01:53,608.608 INFO    ] No camera update needed
[2026-06-19 06:01:53,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:01:53,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:01:53,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:01:53,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:01:55,668.668 INFO    ] ================================================
[2026-06-19 06:01:55,683.683 INFO    ] Launching Daemon at Fri Jun 19 06:01:55 IST 2026
[2026-06-19 06:01:55,694.694 INFO    ] ================================================
[2026-06-19 06:01:56,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:01:56
[2026-06-19 06:01:56,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:01:57,118.118 INFO    ] Initializing speech engine...
[2026-06-19 06:01:57,124.124 INFO    ] 2026-06-19 06:01:57
[2026-06-19 06:01:57,416.416 INFO    ] 2026-06-19 06:01:57
[2026-06-19 06:01:57,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:01:57,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:01:57,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:01:57,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:01:57,790.790 INFO    ] time= 19/06/2026 06:01:57
[2026-06-19 06:01:57,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:01:57,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:01:57,914.914 INFO    ] No existing commands found in stream
[2026-06-19 06:02:02,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:02:02,930.930 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 06:02:04,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:02:04,361.361 INFO    ] Checking for system updates...
[2026-06-19 06:02:04,397.397 INFO    ] 200
[2026-06-19 06:02:04,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:02:04,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:02:04,456.456 INFO    ] No update needed
[2026-06-19 06:02:04,458.458 INFO    ] Checking for camera pi updates...
[2026-06-19 06:02:04,496.496 INFO    ] 200
[2026-06-19 06:02:04,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:02:04,540.540 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:02:04,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:02:04,588.588 INFO    ] No camera update needed
[2026-06-19 06:02:04,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:02:04,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:02:04,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:02:04,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:02:06,647.647 INFO    ] ================================================
[2026-06-19 06:02:06,663.663 INFO    ] Launching Daemon at Fri Jun 19 06:02:06 IST 2026
[2026-06-19 06:02:06,674.674 INFO    ] ================================================
[2026-06-19 06:02:07,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:02:07
[2026-06-19 06:02:07,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:02:08,115.115 INFO    ] Initializing speech engine...
[2026-06-19 06:02:08,128.128 INFO    ] 2026-06-19 06:02:08
[2026-06-19 06:02:08,395.395 INFO    ] 2026-06-19 06:02:08
[2026-06-19 06:02:08,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:02:08,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:02:08,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:02:08,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:02:08,847.847 INFO    ] time= 19/06/2026 06:02:08
[2026-06-19 06:02:08,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:02:08,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:02:09,016.016 INFO    ] No existing commands found in stream
[2026-06-19 06:02:14,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:02:14,031.031 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 06:02:14,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:02:14,588.588 INFO    ] Checking for system updates...
[2026-06-19 06:02:14,624.624 INFO    ] 200
[2026-06-19 06:02:14,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:02:14,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:02:14,682.682 INFO    ] No update needed
[2026-06-19 06:02:14,685.685 INFO    ] Checking for camera pi updates...
[2026-06-19 06:02:14,724.724 INFO    ] 200
[2026-06-19 06:02:14,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:02:14,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:02:14,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:02:14,816.816 INFO    ] No camera update needed
[2026-06-19 06:02:14,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:02:14,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:02:14,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:02:14,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:02:16,873.873 INFO    ] ================================================
[2026-06-19 06:02:16,889.889 INFO    ] Launching Daemon at Fri Jun 19 06:02:16 IST 2026
[2026-06-19 06:02:16,899.899 INFO    ] ================================================
[2026-06-19 06:02:17,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:02:17
[2026-06-19 06:02:18,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:02:18,310.310 INFO    ] Initializing speech engine...
[2026-06-19 06:02:18,324.324 INFO    ] 2026-06-19 06:02:18
[2026-06-19 06:02:18,592.592 INFO    ] 2026-06-19 06:02:18
[2026-06-19 06:02:18,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:02:18,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:02:18,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:02:19,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:02:19,065.065 INFO    ] time= 19/06/2026 06:02:19
[2026-06-19 06:02:19,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:02:19,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:02:19,223.223 INFO    ] No existing commands found in stream
[2026-06-19 06:02:24,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:02:24,237.237 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 06:02:26,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:02:26,765.765 INFO    ] Checking for system updates...
[2026-06-19 06:02:26,830.830 INFO    ] 200
[2026-06-19 06:02:26,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 06:02:26,836.836 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 06:02:26,839.839 INFO    ] Checking for camera pi updates...
[2026-06-19 06:02:26,890.890 INFO    ] 200
[2026-06-19 06:02:26,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 06:02:26,895.895 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 06:02:26,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:02:26,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:02:26,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:02:26,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:02:28,958.958 INFO    ] ================================================
[2026-06-19 06:02:28,974.974 INFO    ] Launching Daemon at Fri Jun 19 06:02:28 IST 2026
[2026-06-19 06:02:28,986.986 INFO    ] ================================================
[2026-06-19 06:02:29,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:02:29
[2026-06-19 06:02:30,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:02:30,659.659 INFO    ] Initializing speech engine...
[2026-06-19 06:02:30,670.670 INFO    ] 2026-06-19 06:02:30
[2026-06-19 06:02:30,952.952 INFO    ] 2026-06-19 06:02:30
[2026-06-19 06:02:31,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:02:31,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:02:31,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:02:31,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:02:31,531.531 INFO    ] time= 19/06/2026 06:02:31
[2026-06-19 06:02:31,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:02:31,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:02:31,671.671 INFO    ] No existing commands found in stream
[2026-06-19 06:02:36,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:02:36,711.711 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 06:02:38,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:02:38,286.286 INFO    ] Checking for system updates...
[2026-06-19 06:02:38,334.334 INFO    ] 200
[2026-06-19 06:02:38,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:02:38,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:02:38,400.400 INFO    ] No update needed
[2026-06-19 06:02:38,403.403 INFO    ] Checking for camera pi updates...
[2026-06-19 06:02:38,441.441 INFO    ] 200
[2026-06-19 06:02:38,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:02:38,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:02:38,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:02:38,525.525 INFO    ] No camera update needed
[2026-06-19 06:02:38,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:02:38,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:02:38,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:02:38,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:02:40,587.587 INFO    ] ================================================
[2026-06-19 06:02:40,602.602 INFO    ] Launching Daemon at Fri Jun 19 06:02:40 IST 2026
[2026-06-19 06:02:40,614.614 INFO    ] ================================================
[2026-06-19 06:02:41,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:02:41
[2026-06-19 06:02:41,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:02:42,279.279 INFO    ] Initializing speech engine...
[2026-06-19 06:02:42,290.290 INFO    ] 2026-06-19 06:02:42
[2026-06-19 06:02:42,563.563 INFO    ] 2026-06-19 06:02:42
[2026-06-19 06:02:42,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:02:42,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:02:42,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:02:43,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:02:43,060.060 INFO    ] time= 19/06/2026 06:02:43
[2026-06-19 06:02:43,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:02:43,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:02:43,240.240 INFO    ] No existing commands found in stream
[2026-06-19 06:02:48,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:02:48,271.271 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 06:02:50,173.173 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:02:50,176.176 INFO    ] Checking for system updates...
[2026-06-19 06:02:50,214.214 INFO    ] 200
[2026-06-19 06:02:50,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:02:50,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:02:50,282.282 INFO    ] No update needed
[2026-06-19 06:02:50,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 06:02:50,325.325 INFO    ] 200
[2026-06-19 06:02:50,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:02:50,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:02:50,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:02:50,418.418 INFO    ] No camera update needed
[2026-06-19 06:02:50,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:02:50,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:02:50,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:02:50,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:02:52,478.478 INFO    ] ================================================
[2026-06-19 06:02:52,496.496 INFO    ] Launching Daemon at Fri Jun 19 06:02:52 IST 2026
[2026-06-19 06:02:52,507.507 INFO    ] ================================================
[2026-06-19 06:02:53,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:02:53
[2026-06-19 06:02:53,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:02:54,159.159 INFO    ] Initializing speech engine...
[2026-06-19 06:02:54,183.183 INFO    ] 2026-06-19 06:02:54
[2026-06-19 06:02:54,459.459 INFO    ] 2026-06-19 06:02:54
[2026-06-19 06:02:54,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:02:54,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:02:54,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:02:54,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:02:54,825.825 INFO    ] time= 19/06/2026 06:02:54
[2026-06-19 06:02:54,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:02:54,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:02:54,907.907 INFO    ] No existing commands found in stream
[2026-06-19 06:02:59,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:02:59,923.923 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 06:03:00,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:03:00,451.451 INFO    ] Checking for system updates...
[2026-06-19 06:03:00,488.488 INFO    ] 200
[2026-06-19 06:03:00,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:00,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:00,552.552 INFO    ] No update needed
[2026-06-19 06:03:00,555.555 INFO    ] Checking for camera pi updates...
[2026-06-19 06:03:00,589.589 INFO    ] 200
[2026-06-19 06:03:00,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:00,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:03:00,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:00,677.677 INFO    ] No camera update needed
[2026-06-19 06:03:00,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:03:00,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:03:00,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:03:00,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:03:02,736.736 INFO    ] ================================================
[2026-06-19 06:03:02,754.754 INFO    ] Launching Daemon at Fri Jun 19 06:03:02 IST 2026
[2026-06-19 06:03:02,767.767 INFO    ] ================================================
[2026-06-19 06:03:03,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:03:03
[2026-06-19 06:03:04,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:03:04,284.284 INFO    ] Initializing speech engine...
[2026-06-19 06:03:04,297.297 INFO    ] 2026-06-19 06:03:04
[2026-06-19 06:03:04,563.563 INFO    ] 2026-06-19 06:03:04
[2026-06-19 06:03:04,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:03:04,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:03:04,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:03:05,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:03:05,044.044 INFO    ] time= 19/06/2026 06:03:05
[2026-06-19 06:03:05,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:03:05,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:03:05,191.191 INFO    ] No existing commands found in stream
[2026-06-19 06:03:10,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:03:10,206.206 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 06:03:11,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:03:11,110.110 INFO    ] Checking for system updates...
[2026-06-19 06:03:11,150.150 INFO    ] 200
[2026-06-19 06:03:11,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:11,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:11,208.208 INFO    ] No update needed
[2026-06-19 06:03:11,211.211 INFO    ] Checking for camera pi updates...
[2026-06-19 06:03:11,244.244 INFO    ] 200
[2026-06-19 06:03:11,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:11,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:03:11,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:11,343.343 INFO    ] No camera update needed
[2026-06-19 06:03:11,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:03:11,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:03:11,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:03:11,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:03:13,399.399 INFO    ] ================================================
[2026-06-19 06:03:13,415.415 INFO    ] Launching Daemon at Fri Jun 19 06:03:13 IST 2026
[2026-06-19 06:03:13,427.427 INFO    ] ================================================
[2026-06-19 06:03:14,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:03:14
[2026-06-19 06:03:14,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:03:14,880.880 INFO    ] Initializing speech engine...
[2026-06-19 06:03:14,893.893 INFO    ] 2026-06-19 06:03:14
[2026-06-19 06:03:15,142.142 INFO    ] 2026-06-19 06:03:15
[2026-06-19 06:03:15,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:03:15,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:03:15,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:03:15,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:03:15,622.622 INFO    ] time= 19/06/2026 06:03:15
[2026-06-19 06:03:15,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:03:15,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:03:15,774.774 INFO    ] No existing commands found in stream
[2026-06-19 06:03:20,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:03:20,788.788 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 06:03:21,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:03:21,649.649 INFO    ] Checking for system updates...
[2026-06-19 06:03:21,687.687 INFO    ] 200
[2026-06-19 06:03:21,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:21,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:21,747.747 INFO    ] No update needed
[2026-06-19 06:03:21,750.750 INFO    ] Checking for camera pi updates...
[2026-06-19 06:03:21,785.785 INFO    ] 200
[2026-06-19 06:03:21,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:21,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:03:21,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:21,883.883 INFO    ] No camera update needed
[2026-06-19 06:03:21,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:03:21,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:03:21,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:03:21,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:03:23,943.943 INFO    ] ================================================
[2026-06-19 06:03:23,959.959 INFO    ] Launching Daemon at Fri Jun 19 06:03:23 IST 2026
[2026-06-19 06:03:23,971.971 INFO    ] ================================================
[2026-06-19 06:03:24,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:03:24
[2026-06-19 06:03:25,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:03:25,466.466 INFO    ] Initializing speech engine...
[2026-06-19 06:03:25,479.479 INFO    ] 2026-06-19 06:03:25
[2026-06-19 06:03:25,726.726 INFO    ] 2026-06-19 06:03:25
[2026-06-19 06:03:25,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:03:25,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:03:25,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:03:26,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:03:26,094.094 INFO    ] time= 19/06/2026 06:03:26
[2026-06-19 06:03:26,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:03:26,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:03:26,169.169 INFO    ] No existing commands found in stream
[2026-06-19 06:03:31,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:03:31,184.184 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 06:03:33,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:03:33,302.302 INFO    ] Checking for system updates...
[2026-06-19 06:03:33,339.339 INFO    ] 200
[2026-06-19 06:03:33,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:33,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:33,402.402 INFO    ] No update needed
[2026-06-19 06:03:33,404.404 INFO    ] Checking for camera pi updates...
[2026-06-19 06:03:33,442.442 INFO    ] 200
[2026-06-19 06:03:33,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:33,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:03:33,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:33,535.535 INFO    ] No camera update needed
[2026-06-19 06:03:33,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:03:33,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:03:33,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:03:33,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:03:35,592.592 INFO    ] ================================================
[2026-06-19 06:03:35,608.608 INFO    ] Launching Daemon at Fri Jun 19 06:03:35 IST 2026
[2026-06-19 06:03:35,620.620 INFO    ] ================================================
[2026-06-19 06:03:36,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:03:36
[2026-06-19 06:03:36,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:03:37,051.051 INFO    ] Initializing speech engine...
[2026-06-19 06:03:37,063.063 INFO    ] 2026-06-19 06:03:37
[2026-06-19 06:03:37,331.331 INFO    ] 2026-06-19 06:03:37
[2026-06-19 06:03:37,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:03:37,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:03:37,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:03:37,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:03:37,706.706 INFO    ] time= 19/06/2026 06:03:37
[2026-06-19 06:03:37,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:03:37,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:03:37,831.831 INFO    ] No existing commands found in stream
[2026-06-19 06:03:42,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:03:42,846.846 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 06:03:45,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:03:45,810.810 INFO    ] Checking for system updates...
[2026-06-19 06:03:45,847.847 INFO    ] 200
[2026-06-19 06:03:45,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:45,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:45,913.913 INFO    ] No update needed
[2026-06-19 06:03:45,916.916 INFO    ] Checking for camera pi updates...
[2026-06-19 06:03:45,952.952 INFO    ] 200
[2026-06-19 06:03:45,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:45,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:03:46,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:03:46,053.053 INFO    ] No camera update needed
[2026-06-19 06:03:46,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:03:46,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:03:46,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:03:46,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:03:48,113.113 INFO    ] ================================================
[2026-06-19 06:03:48,128.128 INFO    ] Launching Daemon at Fri Jun 19 06:03:48 IST 2026
[2026-06-19 06:03:48,139.139 INFO    ] ================================================
[2026-06-19 06:03:48,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:03:48
[2026-06-19 06:03:49,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:03:49,568.568 INFO    ] Initializing speech engine...
[2026-06-19 06:03:49,575.575 INFO    ] 2026-06-19 06:03:49
[2026-06-19 06:03:49,858.858 INFO    ] 2026-06-19 06:03:49
[2026-06-19 06:03:49,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:03:50,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:03:50,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:03:50,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:03:50,249.249 INFO    ] time= 19/06/2026 06:03:50
[2026-06-19 06:03:50,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:03:50,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:03:50,395.395 INFO    ] No existing commands found in stream
[2026-06-19 06:03:55,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:03:55,423.423 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 06:03:59,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:03:59,028.028 INFO    ] Checking for system updates...
[2026-06-19 06:03:59,065.065 INFO    ] 200
[2026-06-19 06:03:59,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:59,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:03:59,123.123 INFO    ] No update needed
[2026-06-19 06:03:59,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 06:03:59,160.160 INFO    ] 200
[2026-06-19 06:03:59,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:03:59,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:03:59,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:03:59,250.250 INFO    ] No camera update needed
[2026-06-19 06:03:59,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:03:59,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:03:59,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:03:59,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:04:01,306.306 INFO    ] ================================================
[2026-06-19 06:04:01,321.321 INFO    ] Launching Daemon at Fri Jun 19 06:04:01 IST 2026
[2026-06-19 06:04:01,332.332 INFO    ] ================================================
[2026-06-19 06:04:02,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:04:02
[2026-06-19 06:04:02,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:04:03,139.139 INFO    ] Initializing speech engine...
[2026-06-19 06:04:03,153.153 INFO    ] 2026-06-19 06:04:03
[2026-06-19 06:04:03,460.460 INFO    ] 2026-06-19 06:04:03
[2026-06-19 06:04:03,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:04:03,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:04:03,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:04:03,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:04:03,841.841 INFO    ] time= 19/06/2026 06:04:03
[2026-06-19 06:04:03,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:04:03,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:04:03,955.955 INFO    ] No existing commands found in stream
[2026-06-19 06:04:08,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:04:08,984.984 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 06:04:10,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:04:10,776.776 INFO    ] Checking for system updates...
[2026-06-19 06:04:10,816.816 INFO    ] 200
[2026-06-19 06:04:10,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:04:10,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:04:10,881.881 INFO    ] No update needed
[2026-06-19 06:04:10,884.884 INFO    ] Checking for camera pi updates...
[2026-06-19 06:04:10,919.919 INFO    ] 200
[2026-06-19 06:04:10,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:04:10,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:04:11,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:04:11,016.016 INFO    ] No camera update needed
[2026-06-19 06:04:11,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:04:11,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:04:11,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:04:11,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:04:13,076.076 INFO    ] ================================================
[2026-06-19 06:04:13,092.092 INFO    ] Launching Daemon at Fri Jun 19 06:04:13 IST 2026
[2026-06-19 06:04:13,103.103 INFO    ] ================================================
[2026-06-19 06:04:13,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:04:13
[2026-06-19 06:04:14,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:04:14,524.524 INFO    ] Initializing speech engine...
[2026-06-19 06:04:14,538.538 INFO    ] 2026-06-19 06:04:14
[2026-06-19 06:04:14,823.823 INFO    ] 2026-06-19 06:04:14
[2026-06-19 06:04:14,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:04:15,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:04:15,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:04:15,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:04:15,200.200 INFO    ] time= 19/06/2026 06:04:15
[2026-06-19 06:04:15,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:04:15,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:04:15,324.324 INFO    ] No existing commands found in stream
[2026-06-19 06:04:20,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:04:20,339.339 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 06:04:25,805.805 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:04:25,808.808 INFO    ] Checking for system updates...
[2026-06-19 06:04:25,847.847 INFO    ] 200
[2026-06-19 06:04:25,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:04:25,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:04:25,904.904 INFO    ] No update needed
[2026-06-19 06:04:25,907.907 INFO    ] Checking for camera pi updates...
[2026-06-19 06:04:25,944.944 INFO    ] 200
[2026-06-19 06:04:25,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:04:25,988.988 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:04:26,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:04:26,041.041 INFO    ] No camera update needed
[2026-06-19 06:04:26,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:04:26,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:04:26,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:04:26,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:04:28,097.097 INFO    ] ================================================
[2026-06-19 06:04:28,112.112 INFO    ] Launching Daemon at Fri Jun 19 06:04:28 IST 2026
[2026-06-19 06:04:28,124.124 INFO    ] ================================================
[2026-06-19 06:04:28,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:04:28
[2026-06-19 06:04:29,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:04:29,553.553 INFO    ] Initializing speech engine...
[2026-06-19 06:04:29,562.562 INFO    ] 2026-06-19 06:04:29
[2026-06-19 06:04:29,814.814 INFO    ] 2026-06-19 06:04:29
[2026-06-19 06:04:29,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:04:30,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:04:30,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:04:30,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:04:30,301.301 INFO    ] time= 19/06/2026 06:04:30
[2026-06-19 06:04:30,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:04:30,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:04:30,449.449 INFO    ] No existing commands found in stream
[2026-06-19 06:04:35,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:04:35,464.464 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 06:04:37,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:04:37,534.534 INFO    ] Checking for system updates...
[2026-06-19 06:04:37,570.570 INFO    ] 200
[2026-06-19 06:04:37,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:04:37,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:04:37,628.628 INFO    ] No update needed
[2026-06-19 06:04:37,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 06:04:37,664.664 INFO    ] 200
[2026-06-19 06:04:37,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:04:37,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:04:37,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:04:37,864.864 INFO    ] No camera update needed
[2026-06-19 06:04:37,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:04:37,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:04:37,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:04:37,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:04:39,922.922 INFO    ] ================================================
[2026-06-19 06:04:39,938.938 INFO    ] Launching Daemon at Fri Jun 19 06:04:39 IST 2026
[2026-06-19 06:04:39,949.949 INFO    ] ================================================
[2026-06-19 06:04:40,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:04:40
[2026-06-19 06:04:41,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:04:41,387.387 INFO    ] Initializing speech engine...
[2026-06-19 06:04:41,396.396 INFO    ] 2026-06-19 06:04:41
[2026-06-19 06:04:41,689.689 INFO    ] 2026-06-19 06:04:41
[2026-06-19 06:04:41,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:04:41,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:04:41,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:04:42,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:04:42,066.066 INFO    ] time= 19/06/2026 06:04:42
[2026-06-19 06:04:42,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:04:42,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:04:42,190.190 INFO    ] No existing commands found in stream
[2026-06-19 06:04:47,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:04:47,205.205 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 06:04:49,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:04:49,799.799 INFO    ] Checking for system updates...
[2026-06-19 06:04:49,835.835 INFO    ] 200
[2026-06-19 06:04:49,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:04:49,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:04:49,896.896 INFO    ] No update needed
[2026-06-19 06:04:49,898.898 INFO    ] Checking for camera pi updates...
[2026-06-19 06:04:49,932.932 INFO    ] 200
[2026-06-19 06:04:49,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:04:49,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:04:50,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:04:50,017.017 INFO    ] No camera update needed
[2026-06-19 06:04:50,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:04:50,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:04:50,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:04:50,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:04:52,075.075 INFO    ] ================================================
[2026-06-19 06:04:52,090.090 INFO    ] Launching Daemon at Fri Jun 19 06:04:52 IST 2026
[2026-06-19 06:04:52,102.102 INFO    ] ================================================
[2026-06-19 06:04:52,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:04:52
[2026-06-19 06:04:53,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:04:53,707.707 INFO    ] Initializing speech engine...
[2026-06-19 06:04:53,722.722 INFO    ] 2026-06-19 06:04:53
[2026-06-19 06:04:53,990.990 INFO    ] 2026-06-19 06:04:53
[2026-06-19 06:04:54,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:04:54,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:04:54,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:04:54,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:04:54,477.477 INFO    ] time= 19/06/2026 06:04:54
[2026-06-19 06:04:54,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:04:54,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:04:54,676.676 INFO    ] No existing commands found in stream
[2026-06-19 06:04:59,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:04:59,712.712 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 06:05:02,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:05:02,543.543 INFO    ] Checking for system updates...
[2026-06-19 06:05:02,597.597 INFO    ] 200
[2026-06-19 06:05:02,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:02,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:05:02,673.673 INFO    ] No update needed
[2026-06-19 06:05:02,676.676 INFO    ] Checking for camera pi updates...
[2026-06-19 06:05:02,713.713 INFO    ] 200
[2026-06-19 06:05:02,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:02,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:05:02,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:05:02,794.794 INFO    ] No camera update needed
[2026-06-19 06:05:02,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:05:02,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:05:02,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:05:02,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:05:04,854.854 INFO    ] ================================================
[2026-06-19 06:05:04,869.869 INFO    ] Launching Daemon at Fri Jun 19 06:05:04 IST 2026
[2026-06-19 06:05:04,881.881 INFO    ] ================================================
[2026-06-19 06:05:05,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:05:05
[2026-06-19 06:05:06,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:05:06,281.281 INFO    ] Initializing speech engine...
[2026-06-19 06:05:06,304.304 INFO    ] 2026-06-19 06:05:06
[2026-06-19 06:05:06,554.554 INFO    ] 2026-06-19 06:05:06
[2026-06-19 06:05:06,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:05:06,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:05:06,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:05:06,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:05:06,931.931 INFO    ] time= 19/06/2026 06:05:06
[2026-06-19 06:05:06,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:05:07,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:05:07,134.134 INFO    ] No existing commands found in stream
[2026-06-19 06:05:12,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:05:12,150.150 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 06:05:15,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:05:15,568.568 INFO    ] Checking for system updates...
[2026-06-19 06:05:15,604.604 INFO    ] 200
[2026-06-19 06:05:15,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:15,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:05:15,668.668 INFO    ] No update needed
[2026-06-19 06:05:15,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 06:05:15,706.706 INFO    ] 200
[2026-06-19 06:05:15,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:15,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:05:15,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:05:15,802.802 INFO    ] No camera update needed
[2026-06-19 06:05:15,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:05:15,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:05:15,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:05:15,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:05:17,859.859 INFO    ] ================================================
[2026-06-19 06:05:17,874.874 INFO    ] Launching Daemon at Fri Jun 19 06:05:17 IST 2026
[2026-06-19 06:05:17,884.884 INFO    ] ================================================
[2026-06-19 06:05:18,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:05:18
[2026-06-19 06:05:19,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:05:19,281.281 INFO    ] Initializing speech engine...
[2026-06-19 06:05:19,295.295 INFO    ] 2026-06-19 06:05:19
[2026-06-19 06:05:19,556.556 INFO    ] 2026-06-19 06:05:19
[2026-06-19 06:05:19,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:05:19,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:05:19,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:05:19,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:05:20,020.020 INFO    ] time= 19/06/2026 06:05:19
[2026-06-19 06:05:20,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:05:20,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:05:20,170.170 INFO    ] No existing commands found in stream
[2026-06-19 06:05:25,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:05:25,185.185 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 06:05:26,534.534 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:05:26,537.537 INFO    ] Checking for system updates...
[2026-06-19 06:05:26,573.573 INFO    ] 200
[2026-06-19 06:05:26,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:26,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:05:26,637.637 INFO    ] No update needed
[2026-06-19 06:05:26,639.639 INFO    ] Checking for camera pi updates...
[2026-06-19 06:05:26,674.674 INFO    ] 200
[2026-06-19 06:05:26,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:26,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:05:26,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:05:26,764.764 INFO    ] No camera update needed
[2026-06-19 06:05:26,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:05:26,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:05:26,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:05:26,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:05:28,820.820 INFO    ] ================================================
[2026-06-19 06:05:28,836.836 INFO    ] Launching Daemon at Fri Jun 19 06:05:28 IST 2026
[2026-06-19 06:05:28,847.847 INFO    ] ================================================
[2026-06-19 06:05:29,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:05:29
[2026-06-19 06:05:30,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:05:30,458.458 INFO    ] Initializing speech engine...
[2026-06-19 06:05:30,467.467 INFO    ] 2026-06-19 06:05:30
[2026-06-19 06:05:30,751.751 INFO    ] 2026-06-19 06:05:30
[2026-06-19 06:05:30,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:05:31,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:05:31,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:05:31,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:05:31,217.217 INFO    ] time= 19/06/2026 06:05:31
[2026-06-19 06:05:31,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:05:31,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:05:31,373.373 INFO    ] No existing commands found in stream
[2026-06-19 06:05:36,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:05:36,390.390 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 06:05:37,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:05:37,212.212 INFO    ] Checking for system updates...
[2026-06-19 06:05:37,249.249 INFO    ] 200
[2026-06-19 06:05:37,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:37,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:05:37,310.310 INFO    ] No update needed
[2026-06-19 06:05:37,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 06:05:37,349.349 INFO    ] 200
[2026-06-19 06:05:37,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:37,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:05:37,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:05:37,449.449 INFO    ] No camera update needed
[2026-06-19 06:05:37,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:05:37,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:05:37,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:05:37,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:05:39,507.507 INFO    ] ================================================
[2026-06-19 06:05:39,523.523 INFO    ] Launching Daemon at Fri Jun 19 06:05:39 IST 2026
[2026-06-19 06:05:39,535.535 INFO    ] ================================================
[2026-06-19 06:05:40,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:05:40
[2026-06-19 06:05:40,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:05:40,951.951 INFO    ] Initializing speech engine...
[2026-06-19 06:05:40,958.958 INFO    ] 2026-06-19 06:05:40
[2026-06-19 06:05:41,254.254 INFO    ] 2026-06-19 06:05:41
[2026-06-19 06:05:41,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:05:41,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:05:41,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:05:41,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:05:41,629.629 INFO    ] time= 19/06/2026 06:05:41
[2026-06-19 06:05:41,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:05:41,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:05:41,751.751 INFO    ] No existing commands found in stream
[2026-06-19 06:05:46,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:05:46,766.766 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 06:05:47,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:05:47,333.333 INFO    ] Checking for system updates...
[2026-06-19 06:05:47,370.370 INFO    ] 200
[2026-06-19 06:05:47,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:47,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:05:47,430.430 INFO    ] No update needed
[2026-06-19 06:05:47,432.432 INFO    ] Checking for camera pi updates...
[2026-06-19 06:05:47,470.470 INFO    ] 200
[2026-06-19 06:05:47,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:05:47,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:05:47,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:05:47,551.551 INFO    ] No camera update needed
[2026-06-19 06:05:47,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:05:47,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:05:47,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:05:47,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:05:49,607.607 INFO    ] ================================================
[2026-06-19 06:05:49,623.623 INFO    ] Launching Daemon at Fri Jun 19 06:05:49 IST 2026
[2026-06-19 06:05:49,634.634 INFO    ] ================================================
[2026-06-19 06:05:50,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:05:50
[2026-06-19 06:05:50,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:05:51,103.103 INFO    ] Initializing speech engine...
[2026-06-19 06:05:51,123.123 INFO    ] 2026-06-19 06:05:51
[2026-06-19 06:05:51,386.386 INFO    ] 2026-06-19 06:05:51
[2026-06-19 06:05:51,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:05:51,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:05:51,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:05:51,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:05:51,846.846 INFO    ] time= 19/06/2026 06:05:51
[2026-06-19 06:05:51,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:05:51,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:05:51,997.997 INFO    ] No existing commands found in stream
[2026-06-19 06:05:57,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:05:57,012.012 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 06:06:00,701.701 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:06:00,703.703 INFO    ] Checking for system updates...
[2026-06-19 06:06:00,743.743 INFO    ] 200
[2026-06-19 06:06:00,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:00,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:06:00,802.802 INFO    ] No update needed
[2026-06-19 06:06:00,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 06:06:00,838.838 INFO    ] 200
[2026-06-19 06:06:00,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:00,885.885 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:06:00,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:06:00,932.932 INFO    ] No camera update needed
[2026-06-19 06:06:00,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:06:00,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:06:00,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:06:00,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:06:02,992.992 INFO    ] ================================================
[2026-06-19 06:06:03,007.007 INFO    ] Launching Daemon at Fri Jun 19 06:06:03 IST 2026
[2026-06-19 06:06:03,019.019 INFO    ] ================================================
[2026-06-19 06:06:03,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:06:03
[2026-06-19 06:06:04,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:06:04,432.432 INFO    ] Initializing speech engine...
[2026-06-19 06:06:04,441.441 INFO    ] 2026-06-19 06:06:04
[2026-06-19 06:06:04,733.733 INFO    ] 2026-06-19 06:06:04
[2026-06-19 06:06:04,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:06:04,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:06:04,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:06:05,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:06:05,152.152 INFO    ] time= 19/06/2026 06:06:05
[2026-06-19 06:06:05,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:06:05,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:06:05,237.237 INFO    ] No existing commands found in stream
[2026-06-19 06:06:10,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:06:10,249.249 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 06:06:13,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:06:13,622.622 INFO    ] Checking for system updates...
[2026-06-19 06:06:13,658.658 INFO    ] 200
[2026-06-19 06:06:13,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:13,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:06:13,717.717 INFO    ] No update needed
[2026-06-19 06:06:13,719.719 INFO    ] Checking for camera pi updates...
[2026-06-19 06:06:13,753.753 INFO    ] 200
[2026-06-19 06:06:13,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:13,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:06:13,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:06:13,848.848 INFO    ] No camera update needed
[2026-06-19 06:06:13,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:06:13,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:06:13,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:06:13,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:06:15,903.903 INFO    ] ================================================
[2026-06-19 06:06:15,918.918 INFO    ] Launching Daemon at Fri Jun 19 06:06:15 IST 2026
[2026-06-19 06:06:15,929.929 INFO    ] ================================================
[2026-06-19 06:06:16,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:06:16
[2026-06-19 06:06:17,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:06:17,351.351 INFO    ] Initializing speech engine...
[2026-06-19 06:06:17,361.361 INFO    ] 2026-06-19 06:06:17
[2026-06-19 06:06:17,620.620 INFO    ] 2026-06-19 06:06:17
[2026-06-19 06:06:17,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:06:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:06:17,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:06:18,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:06:18,057.057 INFO    ] time= 19/06/2026 06:06:18
[2026-06-19 06:06:18,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:06:18,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:06:18,227.227 INFO    ] No existing commands found in stream
[2026-06-19 06:06:23,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:06:23,241.241 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-19 06:06:27,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:06:27,489.489 INFO    ] Checking for system updates...
[2026-06-19 06:06:27,524.524 INFO    ] 200
[2026-06-19 06:06:27,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:27,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:06:27,583.583 INFO    ] No update needed
[2026-06-19 06:06:27,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 06:06:27,619.619 INFO    ] 200
[2026-06-19 06:06:27,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:27,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:06:27,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:06:27,705.705 INFO    ] No camera update needed
[2026-06-19 06:06:27,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:06:27,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:06:27,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:06:27,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:06:29,762.762 INFO    ] ================================================
[2026-06-19 06:06:29,778.778 INFO    ] Launching Daemon at Fri Jun 19 06:06:29 IST 2026
[2026-06-19 06:06:29,788.788 INFO    ] ================================================
[2026-06-19 06:06:30,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:06:30
[2026-06-19 06:06:30,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:06:31,252.252 INFO    ] Initializing speech engine...
[2026-06-19 06:06:31,262.262 INFO    ] 2026-06-19 06:06:31
[2026-06-19 06:06:31,552.552 INFO    ] 2026-06-19 06:06:31
[2026-06-19 06:06:31,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:06:31,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:06:31,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:06:31,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:06:31,992.992 INFO    ] time= 19/06/2026 06:06:31
[2026-06-19 06:06:32,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:06:32,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:06:32,172.172 INFO    ] No existing commands found in stream
[2026-06-19 06:06:37,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:06:37,188.188 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-19 06:06:40,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:06:40,718.718 INFO    ] Checking for system updates...
[2026-06-19 06:06:40,755.755 INFO    ] 200
[2026-06-19 06:06:40,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:40,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:06:40,814.814 INFO    ] No update needed
[2026-06-19 06:06:40,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 06:06:40,851.851 INFO    ] 200
[2026-06-19 06:06:40,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:40,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:06:41,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:06:41,043.043 INFO    ] No camera update needed
[2026-06-19 06:06:41,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:06:41,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:06:41,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:06:41,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:06:43,100.100 INFO    ] ================================================
[2026-06-19 06:06:43,117.117 INFO    ] Launching Daemon at Fri Jun 19 06:06:43 IST 2026
[2026-06-19 06:06:43,127.127 INFO    ] ================================================
[2026-06-19 06:06:43,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:06:43
[2026-06-19 06:06:44,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:06:44,741.741 INFO    ] Initializing speech engine...
[2026-06-19 06:06:44,753.753 INFO    ] 2026-06-19 06:06:44
[2026-06-19 06:06:45,031.031 INFO    ] 2026-06-19 06:06:45
[2026-06-19 06:06:45,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:06:45,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:06:45,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:06:45,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:06:45,494.494 INFO    ] time= 19/06/2026 06:06:45
[2026-06-19 06:06:45,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:06:45,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:06:45,706.706 INFO    ] No existing commands found in stream
[2026-06-19 06:06:50,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:06:50,739.739 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 06:06:53,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:06:53,648.648 INFO    ] Checking for system updates...
[2026-06-19 06:06:53,686.686 INFO    ] 200
[2026-06-19 06:06:53,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:53,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:06:53,746.746 INFO    ] No update needed
[2026-06-19 06:06:53,748.748 INFO    ] Checking for camera pi updates...
[2026-06-19 06:06:53,783.783 INFO    ] 200
[2026-06-19 06:06:53,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:06:53,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:06:53,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:06:53,873.873 INFO    ] No camera update needed
[2026-06-19 06:06:53,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:06:53,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:06:53,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:06:53,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:06:55,932.932 INFO    ] ================================================
[2026-06-19 06:06:55,947.947 INFO    ] Launching Daemon at Fri Jun 19 06:06:55 IST 2026
[2026-06-19 06:06:55,959.959 INFO    ] ================================================
[2026-06-19 06:06:56,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:06:56
[2026-06-19 06:06:57,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:06:57,383.383 INFO    ] Initializing speech engine...
[2026-06-19 06:06:57,396.396 INFO    ] 2026-06-19 06:06:57
[2026-06-19 06:06:57,647.647 INFO    ] 2026-06-19 06:06:57
[2026-06-19 06:06:57,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:06:57,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:06:57,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:06:58,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:06:58,112.112 INFO    ] time= 19/06/2026 06:06:58
[2026-06-19 06:06:58,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:06:58,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:06:58,290.290 INFO    ] No existing commands found in stream
[2026-06-19 06:07:03,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:07:03,301.301 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 06:07:05,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:07:05,645.645 INFO    ] Checking for system updates...
[2026-06-19 06:07:05,682.682 INFO    ] 200
[2026-06-19 06:07:05,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:05,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:07:05,746.746 INFO    ] No update needed
[2026-06-19 06:07:05,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 06:07:05,784.784 INFO    ] 200
[2026-06-19 06:07:05,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:05,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:07:05,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:07:05,890.890 INFO    ] No camera update needed
[2026-06-19 06:07:05,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:07:05,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:07:05,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:07:05,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:07:07,947.947 INFO    ] ================================================
[2026-06-19 06:07:07,962.962 INFO    ] Launching Daemon at Fri Jun 19 06:07:07 IST 2026
[2026-06-19 06:07:07,973.973 INFO    ] ================================================
[2026-06-19 06:07:08,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:07:08
[2026-06-19 06:07:09,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:07:09,380.380 INFO    ] Initializing speech engine...
[2026-06-19 06:07:09,394.394 INFO    ] 2026-06-19 06:07:09
[2026-06-19 06:07:09,661.661 INFO    ] 2026-06-19 06:07:09
[2026-06-19 06:07:09,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:07:09,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:07:09,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:07:10,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:07:10,027.027 INFO    ] time= 19/06/2026 06:07:10
[2026-06-19 06:07:10,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:07:10,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:07:10,128.128 INFO    ] No existing commands found in stream
[2026-06-19 06:07:15,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:07:15,156.156 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 06:07:18,617.617 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:07:18,620.620 INFO    ] Checking for system updates...
[2026-06-19 06:07:18,656.656 INFO    ] 200
[2026-06-19 06:07:18,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:18,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:07:18,713.713 INFO    ] No update needed
[2026-06-19 06:07:18,716.716 INFO    ] Checking for camera pi updates...
[2026-06-19 06:07:18,749.749 INFO    ] 200
[2026-06-19 06:07:18,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:18,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:07:18,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:07:18,843.843 INFO    ] No camera update needed
[2026-06-19 06:07:18,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:07:18,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:07:18,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:07:18,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:07:20,898.898 INFO    ] ================================================
[2026-06-19 06:07:20,913.913 INFO    ] Launching Daemon at Fri Jun 19 06:07:20 IST 2026
[2026-06-19 06:07:20,924.924 INFO    ] ================================================
[2026-06-19 06:07:21,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:07:21
[2026-06-19 06:07:22,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:07:22,350.350 INFO    ] Initializing speech engine...
[2026-06-19 06:07:22,359.359 INFO    ] 2026-06-19 06:07:22
[2026-06-19 06:07:22,615.615 INFO    ] 2026-06-19 06:07:22
[2026-06-19 06:07:22,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:07:22,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:07:22,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:07:23,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:07:23,054.054 INFO    ] time= 19/06/2026 06:07:23
[2026-06-19 06:07:23,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:07:23,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:07:23,220.220 INFO    ] No existing commands found in stream
[2026-06-19 06:07:28,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:07:28,234.234 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 06:07:29,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:07:29,554.554 INFO    ] Checking for system updates...
[2026-06-19 06:07:29,590.590 INFO    ] 200
[2026-06-19 06:07:29,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:29,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:07:29,648.648 INFO    ] No update needed
[2026-06-19 06:07:29,651.651 INFO    ] Checking for camera pi updates...
[2026-06-19 06:07:29,684.684 INFO    ] 200
[2026-06-19 06:07:29,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:29,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:07:29,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:07:29,772.772 INFO    ] No camera update needed
[2026-06-19 06:07:29,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:07:29,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:07:29,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:07:29,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:07:31,830.830 INFO    ] ================================================
[2026-06-19 06:07:31,845.845 INFO    ] Launching Daemon at Fri Jun 19 06:07:31 IST 2026
[2026-06-19 06:07:31,856.856 INFO    ] ================================================
[2026-06-19 06:07:32,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:07:32
[2026-06-19 06:07:33,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:07:33,354.354 INFO    ] Initializing speech engine...
[2026-06-19 06:07:33,372.372 INFO    ] 2026-06-19 06:07:33
[2026-06-19 06:07:33,665.665 INFO    ] 2026-06-19 06:07:33
[2026-06-19 06:07:33,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:07:33,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:07:33,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:07:34,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:07:34,084.084 INFO    ] time= 19/06/2026 06:07:34
[2026-06-19 06:07:34,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:07:34,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:07:34,195.195 INFO    ] No existing commands found in stream
[2026-06-19 06:07:39,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:07:39,211.211 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 06:07:41,993.993 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:07:41,996.996 INFO    ] Checking for system updates...
[2026-06-19 06:07:42,032.032 INFO    ] 200
[2026-06-19 06:07:42,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:42,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:07:42,090.090 INFO    ] No update needed
[2026-06-19 06:07:42,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 06:07:42,129.129 INFO    ] 200
[2026-06-19 06:07:42,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:42,173.173 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:07:42,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:07:42,216.216 INFO    ] No camera update needed
[2026-06-19 06:07:42,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:07:42,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:07:42,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:07:42,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:07:44,272.272 INFO    ] ================================================
[2026-06-19 06:07:44,287.287 INFO    ] Launching Daemon at Fri Jun 19 06:07:44 IST 2026
[2026-06-19 06:07:44,297.297 INFO    ] ================================================
[2026-06-19 06:07:44,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:07:44
[2026-06-19 06:07:45,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:07:45,713.713 INFO    ] Initializing speech engine...
[2026-06-19 06:07:45,719.719 INFO    ] 2026-06-19 06:07:45
[2026-06-19 06:07:46,013.013 INFO    ] 2026-06-19 06:07:45
[2026-06-19 06:07:46,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:07:46,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:07:46,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:07:46,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:07:46,391.391 INFO    ] time= 19/06/2026 06:07:46
[2026-06-19 06:07:46,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:07:46,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:07:46,514.514 INFO    ] No existing commands found in stream
[2026-06-19 06:07:51,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:07:51,530.530 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-19 06:07:53,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:07:53,168.168 INFO    ] Checking for system updates...
[2026-06-19 06:07:53,204.204 INFO    ] 200
[2026-06-19 06:07:53,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:53,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:07:53,263.263 INFO    ] No update needed
[2026-06-19 06:07:53,265.265 INFO    ] Checking for camera pi updates...
[2026-06-19 06:07:53,299.299 INFO    ] 200
[2026-06-19 06:07:53,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:07:53,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:07:53,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:07:53,389.389 INFO    ] No camera update needed
[2026-06-19 06:07:53,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:07:53,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:07:53,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:07:53,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:07:55,445.445 INFO    ] ================================================
[2026-06-19 06:07:55,460.460 INFO    ] Launching Daemon at Fri Jun 19 06:07:55 IST 2026
[2026-06-19 06:07:55,471.471 INFO    ] ================================================
[2026-06-19 06:07:56,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:07:56
[2026-06-19 06:07:56,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:07:57,081.081 INFO    ] Initializing speech engine...
[2026-06-19 06:07:57,093.093 INFO    ] 2026-06-19 06:07:57
[2026-06-19 06:07:57,381.381 INFO    ] 2026-06-19 06:07:57
[2026-06-19 06:07:57,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:07:57,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:07:57,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:07:57,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:07:57,834.834 INFO    ] time= 19/06/2026 06:07:57
[2026-06-19 06:07:57,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:07:57,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:07:57,986.986 INFO    ] No existing commands found in stream
[2026-06-19 06:08:03,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:08:03,010.010 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 06:08:05,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:08:05,291.291 INFO    ] Checking for system updates...
[2026-06-19 06:08:05,329.329 INFO    ] 200
[2026-06-19 06:08:05,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:05,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:08:05,387.387 INFO    ] No update needed
[2026-06-19 06:08:05,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 06:08:05,424.424 INFO    ] 200
[2026-06-19 06:08:05,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:05,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:08:05,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:08:05,523.523 INFO    ] No camera update needed
[2026-06-19 06:08:05,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:08:05,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:08:05,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:08:05,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:08:07,587.587 INFO    ] ================================================
[2026-06-19 06:08:07,603.603 INFO    ] Launching Daemon at Fri Jun 19 06:08:07 IST 2026
[2026-06-19 06:08:07,613.613 INFO    ] ================================================
[2026-06-19 06:08:08,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:08:08
[2026-06-19 06:08:08,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:08:09,062.062 INFO    ] Initializing speech engine...
[2026-06-19 06:08:09,071.071 INFO    ] 2026-06-19 06:08:09
[2026-06-19 06:08:09,319.319 INFO    ] 2026-06-19 06:08:09
[2026-06-19 06:08:09,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:08:09,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:08:09,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:08:09,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:08:09,791.791 INFO    ] time= 19/06/2026 06:08:09
[2026-06-19 06:08:09,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:08:09,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:08:09,939.939 INFO    ] No existing commands found in stream
[2026-06-19 06:08:14,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:08:14,953.953 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 06:08:19,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:08:19,327.327 INFO    ] Checking for system updates...
[2026-06-19 06:08:19,364.364 INFO    ] 200
[2026-06-19 06:08:19,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:19,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:08:19,434.434 INFO    ] No update needed
[2026-06-19 06:08:19,436.436 INFO    ] Checking for camera pi updates...
[2026-06-19 06:08:19,471.471 INFO    ] 200
[2026-06-19 06:08:19,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:19,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:08:19,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:08:19,564.564 INFO    ] No camera update needed
[2026-06-19 06:08:19,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:08:19,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:08:19,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:08:19,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:08:21,620.620 INFO    ] ================================================
[2026-06-19 06:08:21,637.637 INFO    ] Launching Daemon at Fri Jun 19 06:08:21 IST 2026
[2026-06-19 06:08:21,648.648 INFO    ] ================================================
[2026-06-19 06:08:22,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:08:22
[2026-06-19 06:08:22,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:08:23,131.131 INFO    ] Initializing speech engine...
[2026-06-19 06:08:23,140.140 INFO    ] 2026-06-19 06:08:23
[2026-06-19 06:08:23,388.388 INFO    ] 2026-06-19 06:08:23
[2026-06-19 06:08:23,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:08:23,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:08:23,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:08:23,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:08:23,879.879 INFO    ] time= 19/06/2026 06:08:23
[2026-06-19 06:08:23,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:08:23,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:08:24,031.031 INFO    ] No existing commands found in stream
[2026-06-19 06:08:29,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:08:29,046.046 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 06:08:30,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:08:30,523.523 INFO    ] Checking for system updates...
[2026-06-19 06:08:30,559.559 INFO    ] 200
[2026-06-19 06:08:30,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:30,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:08:30,619.619 INFO    ] No update needed
[2026-06-19 06:08:30,622.622 INFO    ] Checking for camera pi updates...
[2026-06-19 06:08:30,657.657 INFO    ] 200
[2026-06-19 06:08:30,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:30,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:08:30,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:08:30,748.748 INFO    ] No camera update needed
[2026-06-19 06:08:30,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:08:30,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:08:30,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:08:30,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:08:32,809.809 INFO    ] ================================================
[2026-06-19 06:08:32,825.825 INFO    ] Launching Daemon at Fri Jun 19 06:08:32 IST 2026
[2026-06-19 06:08:32,843.843 INFO    ] ================================================
[2026-06-19 06:08:33,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:08:33
[2026-06-19 06:08:34,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:08:34,309.309 INFO    ] Initializing speech engine...
[2026-06-19 06:08:34,319.319 INFO    ] 2026-06-19 06:08:34
[2026-06-19 06:08:34,565.565 INFO    ] 2026-06-19 06:08:34
[2026-06-19 06:08:34,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:08:34,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:08:34,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:08:34,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:08:35,042.042 INFO    ] time= 19/06/2026 06:08:34
[2026-06-19 06:08:35,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:08:35,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:08:35,184.184 INFO    ] No existing commands found in stream
[2026-06-19 06:08:40,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:08:40,198.198 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 06:08:42,196.196 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:08:42,198.198 INFO    ] Checking for system updates...
[2026-06-19 06:08:42,235.235 INFO    ] 200
[2026-06-19 06:08:42,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:42,292.292 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:08:42,295.295 INFO    ] No update needed
[2026-06-19 06:08:42,298.298 INFO    ] Checking for camera pi updates...
[2026-06-19 06:08:42,334.334 INFO    ] 200
[2026-06-19 06:08:42,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:42,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:08:42,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:08:42,437.437 INFO    ] No camera update needed
[2026-06-19 06:08:42,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:08:42,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:08:42,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:08:42,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:08:44,500.500 INFO    ] ================================================
[2026-06-19 06:08:44,516.516 INFO    ] Launching Daemon at Fri Jun 19 06:08:44 IST 2026
[2026-06-19 06:08:44,527.527 INFO    ] ================================================
[2026-06-19 06:08:45,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:08:45
[2026-06-19 06:08:45,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:08:46,197.197 INFO    ] Initializing speech engine...
[2026-06-19 06:08:46,211.211 INFO    ] 2026-06-19 06:08:46
[2026-06-19 06:08:46,492.492 INFO    ] 2026-06-19 06:08:46
[2026-06-19 06:08:46,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:08:46,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:08:46,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:08:46,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:08:46,959.959 INFO    ] time= 19/06/2026 06:08:46
[2026-06-19 06:08:47,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:08:47,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:08:47,129.129 INFO    ] No existing commands found in stream
[2026-06-19 06:08:52,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:08:52,143.143 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 06:08:55,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:08:55,192.192 INFO    ] Checking for system updates...
[2026-06-19 06:08:55,229.229 INFO    ] 200
[2026-06-19 06:08:55,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:55,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:08:55,289.289 INFO    ] No update needed
[2026-06-19 06:08:55,292.292 INFO    ] Checking for camera pi updates...
[2026-06-19 06:08:55,327.327 INFO    ] 200
[2026-06-19 06:08:55,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:08:55,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:08:55,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:08:55,521.521 INFO    ] No camera update needed
[2026-06-19 06:08:55,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:08:55,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:08:55,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:08:55,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:08:57,581.581 INFO    ] ================================================
[2026-06-19 06:08:57,596.596 INFO    ] Launching Daemon at Fri Jun 19 06:08:57 IST 2026
[2026-06-19 06:08:57,608.608 INFO    ] ================================================
[2026-06-19 06:08:58,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:08:58
[2026-06-19 06:08:58,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:08:59,291.291 INFO    ] Initializing speech engine...
[2026-06-19 06:08:59,303.303 INFO    ] 2026-06-19 06:08:59
[2026-06-19 06:08:59,613.613 INFO    ] 2026-06-19 06:08:59
[2026-06-19 06:08:59,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:08:59,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:08:59,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:09:00,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:09:00,122.122 INFO    ] time= 19/06/2026 06:09:00
[2026-06-19 06:09:00,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:09:00,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:09:00,254.254 INFO    ] No existing commands found in stream
[2026-06-19 06:09:05,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:09:05,290.290 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 06:09:08,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:09:08,298.298 INFO    ] Checking for system updates...
[2026-06-19 06:09:08,337.337 INFO    ] 200
[2026-06-19 06:09:08,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:09:08,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:09:08,399.399 INFO    ] No update needed
[2026-06-19 06:09:08,402.402 INFO    ] Checking for camera pi updates...
[2026-06-19 06:09:08,437.437 INFO    ] 200
[2026-06-19 06:09:08,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:09:08,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:09:08,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:09:08,527.527 INFO    ] No camera update needed
[2026-06-19 06:09:08,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:09:08,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:09:08,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:09:08,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:09:10,589.589 INFO    ] ================================================
[2026-06-19 06:09:10,605.605 INFO    ] Launching Daemon at Fri Jun 19 06:09:10 IST 2026
[2026-06-19 06:09:10,617.617 INFO    ] ================================================
[2026-06-19 06:09:11,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:09:11
[2026-06-19 06:09:11,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:09:12,306.306 INFO    ] Initializing speech engine...
[2026-06-19 06:09:12,315.315 INFO    ] 2026-06-19 06:09:12
[2026-06-19 06:09:12,607.607 INFO    ] 2026-06-19 06:09:12
[2026-06-19 06:09:12,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:09:12,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:09:12,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:09:13,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:09:13,108.108 INFO    ] time= 19/06/2026 06:09:13
[2026-06-19 06:09:13,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:09:13,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:09:13,306.306 INFO    ] No existing commands found in stream
[2026-06-19 06:09:18,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:09:18,341.341 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 06:09:20,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:09:20,330.330 INFO    ] Checking for system updates...
[2026-06-19 06:09:20,368.368 INFO    ] 200
[2026-06-19 06:09:20,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:09:20,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:09:20,430.430 INFO    ] No update needed
[2026-06-19 06:09:20,433.433 INFO    ] Checking for camera pi updates...
[2026-06-19 06:09:20,468.468 INFO    ] 200
[2026-06-19 06:09:20,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:09:20,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:09:20,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:09:20,557.557 INFO    ] No camera update needed
[2026-06-19 06:09:20,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:09:20,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:09:20,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:09:20,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:09:22,618.618 INFO    ] ================================================
[2026-06-19 06:09:22,635.635 INFO    ] Launching Daemon at Fri Jun 19 06:09:22 IST 2026
[2026-06-19 06:09:22,646.646 INFO    ] ================================================
[2026-06-19 06:09:23,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:09:23
[2026-06-19 06:09:24,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:09:24,331.331 INFO    ] Initializing speech engine...
[2026-06-19 06:09:24,344.344 INFO    ] 2026-06-19 06:09:24
[2026-06-19 06:09:24,635.635 INFO    ] 2026-06-19 06:09:24
[2026-06-19 06:09:24,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:09:24,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:09:24,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:09:25,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:09:25,168.168 INFO    ] time= 19/06/2026 06:09:25
[2026-06-19 06:09:25,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:09:25,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:09:25,321.321 INFO    ] No existing commands found in stream
[2026-06-19 06:09:30,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:09:30,343.343 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 06:09:33,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:09:33,657.657 INFO    ] Checking for system updates...
[2026-06-19 06:09:33,693.693 INFO    ] 200
[2026-06-19 06:09:33,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:09:33,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:09:33,751.751 INFO    ] No update needed
[2026-06-19 06:09:33,755.755 INFO    ] Checking for camera pi updates...
[2026-06-19 06:09:33,792.792 INFO    ] 200
[2026-06-19 06:09:33,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:09:33,835.835 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:09:33,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:09:33,891.891 INFO    ] No camera update needed
[2026-06-19 06:09:33,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:09:33,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:09:33,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:09:33,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:09:35,946.946 INFO    ] ================================================
[2026-06-19 06:09:35,962.962 INFO    ] Launching Daemon at Fri Jun 19 06:09:35 IST 2026
[2026-06-19 06:09:35,974.974 INFO    ] ================================================
[2026-06-19 06:09:36,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:09:36
[2026-06-19 06:09:37,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:09:37,662.662 INFO    ] Initializing speech engine...
[2026-06-19 06:09:37,675.675 INFO    ] 2026-06-19 06:09:37
[2026-06-19 06:09:37,990.990 INFO    ] 2026-06-19 06:09:37
[2026-06-19 06:09:38,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:09:38,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:09:38,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:09:38,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:09:38,500.500 INFO    ] time= 19/06/2026 06:09:38
[2026-06-19 06:09:38,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:09:38,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:09:38,649.649 INFO    ] No existing commands found in stream
[2026-06-19 06:09:43,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:09:43,670.670 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 06:09:47,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:09:47,437.437 INFO    ] Checking for system updates...
[2026-06-19 06:09:47,480.480 INFO    ] 200
[2026-06-19 06:09:47,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:09:47,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:09:47,542.542 INFO    ] No update needed
[2026-06-19 06:09:47,545.545 INFO    ] Checking for camera pi updates...
[2026-06-19 06:09:47,581.581 INFO    ] 200
[2026-06-19 06:09:47,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:09:47,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:09:47,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:09:47,665.665 INFO    ] No camera update needed
[2026-06-19 06:09:47,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:09:47,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:09:47,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:09:47,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:09:49,726.726 INFO    ] ================================================
[2026-06-19 06:09:49,742.742 INFO    ] Launching Daemon at Fri Jun 19 06:09:49 IST 2026
[2026-06-19 06:09:49,754.754 INFO    ] ================================================
[2026-06-19 06:09:50,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:09:50
[2026-06-19 06:09:51,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:09:51,428.428 INFO    ] Initializing speech engine...
[2026-06-19 06:09:51,440.440 INFO    ] 2026-06-19 06:09:51
[2026-06-19 06:09:51,731.731 INFO    ] 2026-06-19 06:09:51
[2026-06-19 06:09:51,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:09:52,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:09:52,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:09:52,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:09:52,264.264 INFO    ] time= 19/06/2026 06:09:52
[2026-06-19 06:09:52,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:09:52,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:09:52,404.404 INFO    ] No existing commands found in stream
[2026-06-19 06:09:57,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:09:57,434.434 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 06:10:01,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:10:01,602.602 INFO    ] Checking for system updates...
[2026-06-19 06:10:01,773.773 INFO    ] 200
[2026-06-19 06:10:01,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:02,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:10:02,115.115 INFO    ] No update needed
[2026-06-19 06:10:02,138.138 INFO    ] Checking for camera pi updates...
[2026-06-19 06:10:02,238.238 INFO    ] 200
[2026-06-19 06:10:02,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:02,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:10:02,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:10:02,511.511 INFO    ] No camera update needed
[2026-06-19 06:10:02,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:10:02,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:10:02,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:10:02,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:10:04,593.593 INFO    ] ================================================
[2026-06-19 06:10:04,609.609 INFO    ] Launching Daemon at Fri Jun 19 06:10:04 IST 2026
[2026-06-19 06:10:04,620.620 INFO    ] ================================================
[2026-06-19 06:10:05,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:10:05
[2026-06-19 06:10:05,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:10:06,047.047 INFO    ] Initializing speech engine...
[2026-06-19 06:10:06,067.067 INFO    ] 2026-06-19 06:10:06
[2026-06-19 06:10:06,338.338 INFO    ] 2026-06-19 06:10:06
[2026-06-19 06:10:06,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:10:06,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:10:06,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:10:06,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:10:06,736.736 INFO    ] time= 19/06/2026 06:10:06
[2026-06-19 06:10:06,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:10:06,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:10:06,874.874 INFO    ] No existing commands found in stream
[2026-06-19 06:10:11,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:10:11,888.888 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 06:10:14,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:10:14,376.376 INFO    ] Checking for system updates...
[2026-06-19 06:10:14,413.413 INFO    ] 200
[2026-06-19 06:10:14,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:14,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:10:14,472.472 INFO    ] No update needed
[2026-06-19 06:10:14,475.475 INFO    ] Checking for camera pi updates...
[2026-06-19 06:10:14,509.509 INFO    ] 200
[2026-06-19 06:10:14,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:14,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:10:14,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:10:14,595.595 INFO    ] No camera update needed
[2026-06-19 06:10:14,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:10:14,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:10:14,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:10:14,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:10:16,651.651 INFO    ] ================================================
[2026-06-19 06:10:16,667.667 INFO    ] Launching Daemon at Fri Jun 19 06:10:16 IST 2026
[2026-06-19 06:10:16,678.678 INFO    ] ================================================
[2026-06-19 06:10:17,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:10:17
[2026-06-19 06:10:17,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:10:18,108.108 INFO    ] Initializing speech engine...
[2026-06-19 06:10:18,115.115 INFO    ] 2026-06-19 06:10:18
[2026-06-19 06:10:18,374.374 INFO    ] 2026-06-19 06:10:18
[2026-06-19 06:10:18,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:10:18,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:10:18,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:10:18,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:10:18,838.838 INFO    ] time= 19/06/2026 06:10:18
[2026-06-19 06:10:18,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:10:18,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:10:18,989.989 INFO    ] No existing commands found in stream
[2026-06-19 06:10:24,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:10:24,004.004 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 06:10:27,580.580 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:10:27,583.583 INFO    ] Checking for system updates...
[2026-06-19 06:10:27,621.621 INFO    ] 200
[2026-06-19 06:10:27,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:27,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:10:27,681.681 INFO    ] No update needed
[2026-06-19 06:10:27,684.684 INFO    ] Checking for camera pi updates...
[2026-06-19 06:10:27,723.723 INFO    ] 200
[2026-06-19 06:10:27,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:27,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:10:27,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:10:27,819.819 INFO    ] No camera update needed
[2026-06-19 06:10:27,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:10:27,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:10:27,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:10:27,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:10:29,880.880 INFO    ] ================================================
[2026-06-19 06:10:29,895.895 INFO    ] Launching Daemon at Fri Jun 19 06:10:29 IST 2026
[2026-06-19 06:10:29,907.907 INFO    ] ================================================
[2026-06-19 06:10:30,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:10:30
[2026-06-19 06:10:31,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:10:31,394.394 INFO    ] Initializing speech engine...
[2026-06-19 06:10:31,404.404 INFO    ] 2026-06-19 06:10:31
[2026-06-19 06:10:31,662.662 INFO    ] 2026-06-19 06:10:31
[2026-06-19 06:10:31,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:10:31,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:10:31,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:10:32,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:10:32,193.193 INFO    ] time= 19/06/2026 06:10:32
[2026-06-19 06:10:32,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:10:32,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:10:32,403.403 INFO    ] No existing commands found in stream
[2026-06-19 06:10:37,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:10:37,433.433 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 06:10:41,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:10:41,113.113 INFO    ] Checking for system updates...
[2026-06-19 06:10:41,151.151 INFO    ] 200
[2026-06-19 06:10:41,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:41,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:10:41,217.217 INFO    ] No update needed
[2026-06-19 06:10:41,220.220 INFO    ] Checking for camera pi updates...
[2026-06-19 06:10:41,258.258 INFO    ] 200
[2026-06-19 06:10:41,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:41,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:10:41,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:10:41,348.348 INFO    ] No camera update needed
[2026-06-19 06:10:41,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:10:41,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:10:41,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:10:41,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:10:43,403.403 INFO    ] ================================================
[2026-06-19 06:10:43,419.419 INFO    ] Launching Daemon at Fri Jun 19 06:10:43 IST 2026
[2026-06-19 06:10:43,431.431 INFO    ] ================================================
[2026-06-19 06:10:44,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:10:43
[2026-06-19 06:10:44,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:10:44,837.837 INFO    ] Initializing speech engine...
[2026-06-19 06:10:44,850.850 INFO    ] 2026-06-19 06:10:44
[2026-06-19 06:10:45,115.115 INFO    ] 2026-06-19 06:10:45
[2026-06-19 06:10:45,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:10:45,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:10:45,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:10:45,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:10:45,493.493 INFO    ] time= 19/06/2026 06:10:45
[2026-06-19 06:10:45,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:10:45,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:10:45,664.664 INFO    ] No existing commands found in stream
[2026-06-19 06:10:50,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:10:50,697.697 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 06:10:52,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:10:52,745.745 INFO    ] Checking for system updates...
[2026-06-19 06:10:52,782.782 INFO    ] 200
[2026-06-19 06:10:52,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:52,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:10:52,840.840 INFO    ] No update needed
[2026-06-19 06:10:52,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 06:10:52,877.877 INFO    ] 200
[2026-06-19 06:10:52,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:10:52,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:10:52,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:10:52,962.962 INFO    ] No camera update needed
[2026-06-19 06:10:52,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:10:52,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:10:52,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:10:52,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:10:55,017.017 INFO    ] ================================================
[2026-06-19 06:10:55,032.032 INFO    ] Launching Daemon at Fri Jun 19 06:10:55 IST 2026
[2026-06-19 06:10:55,043.043 INFO    ] ================================================
[2026-06-19 06:10:55,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:10:55
[2026-06-19 06:10:56,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:10:56,484.484 INFO    ] Initializing speech engine...
[2026-06-19 06:10:56,493.493 INFO    ] 2026-06-19 06:10:56
[2026-06-19 06:10:56,742.742 INFO    ] 2026-06-19 06:10:56
[2026-06-19 06:10:56,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:10:57,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:10:57,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:10:57,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:10:57,215.215 INFO    ] time= 19/06/2026 06:10:57
[2026-06-19 06:10:57,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:10:57,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:10:57,359.359 INFO    ] No existing commands found in stream
[2026-06-19 06:11:02,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:11:02,371.371 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 06:11:02,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:11:02,986.986 INFO    ] Checking for system updates...
[2026-06-19 06:11:03,030.030 INFO    ] 200
[2026-06-19 06:11:03,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:03,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:11:03,106.106 INFO    ] No update needed
[2026-06-19 06:11:03,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 06:11:03,152.152 INFO    ] 200
[2026-06-19 06:11:03,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:03,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:11:03,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:11:03,267.267 INFO    ] No camera update needed
[2026-06-19 06:11:03,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:11:03,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:11:03,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:11:03,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:11:05,352.352 INFO    ] ================================================
[2026-06-19 06:11:05,368.368 INFO    ] Launching Daemon at Fri Jun 19 06:11:05 IST 2026
[2026-06-19 06:11:05,379.379 INFO    ] ================================================
[2026-06-19 06:11:06,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:11:06
[2026-06-19 06:11:06,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:11:06,985.985 INFO    ] Initializing speech engine...
[2026-06-19 06:11:06,996.996 INFO    ] 2026-06-19 06:11:06
[2026-06-19 06:11:07,244.244 INFO    ] 2026-06-19 06:11:07
[2026-06-19 06:11:07,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:11:07,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:11:07,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:11:07,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:11:07,631.631 INFO    ] time= 19/06/2026 06:11:07
[2026-06-19 06:11:07,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:11:07,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:11:07,824.824 INFO    ] No existing commands found in stream
[2026-06-19 06:11:12,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:11:12,841.841 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 06:11:14,898.898 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:11:14,901.901 INFO    ] Checking for system updates...
[2026-06-19 06:11:14,944.944 INFO    ] 200
[2026-06-19 06:11:14,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:15,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:11:15,016.016 INFO    ] No update needed
[2026-06-19 06:11:15,019.019 INFO    ] Checking for camera pi updates...
[2026-06-19 06:11:15,055.055 INFO    ] 200
[2026-06-19 06:11:15,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:15,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:11:15,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:11:15,147.147 INFO    ] No camera update needed
[2026-06-19 06:11:15,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:11:15,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:11:15,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:11:15,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:11:17,204.204 INFO    ] ================================================
[2026-06-19 06:11:17,219.219 INFO    ] Launching Daemon at Fri Jun 19 06:11:17 IST 2026
[2026-06-19 06:11:17,230.230 INFO    ] ================================================
[2026-06-19 06:11:17,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:11:17
[2026-06-19 06:11:18,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:11:18,720.720 INFO    ] Initializing speech engine...
[2026-06-19 06:11:18,728.728 INFO    ] 2026-06-19 06:11:18
[2026-06-19 06:11:19,008.008 INFO    ] 2026-06-19 06:11:19
[2026-06-19 06:11:19,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:11:19,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:11:19,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:11:19,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:11:19,377.377 INFO    ] time= 19/06/2026 06:11:19
[2026-06-19 06:11:19,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:11:19,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:11:19,549.549 INFO    ] No existing commands found in stream
[2026-06-19 06:11:24,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:11:24,583.583 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 06:11:25,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:11:25,310.310 INFO    ] Checking for system updates...
[2026-06-19 06:11:25,348.348 INFO    ] 200
[2026-06-19 06:11:25,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:25,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:11:25,412.412 INFO    ] No update needed
[2026-06-19 06:11:25,414.414 INFO    ] Checking for camera pi updates...
[2026-06-19 06:11:25,449.449 INFO    ] 200
[2026-06-19 06:11:25,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:25,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:11:25,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:11:25,540.540 INFO    ] No camera update needed
[2026-06-19 06:11:25,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:11:25,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:11:25,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:11:25,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:11:27,595.595 INFO    ] ================================================
[2026-06-19 06:11:27,610.610 INFO    ] Launching Daemon at Fri Jun 19 06:11:27 IST 2026
[2026-06-19 06:11:27,621.621 INFO    ] ================================================
[2026-06-19 06:11:28,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:11:28
[2026-06-19 06:11:28,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:11:29,044.044 INFO    ] Initializing speech engine...
[2026-06-19 06:11:29,053.053 INFO    ] 2026-06-19 06:11:29
[2026-06-19 06:11:29,311.311 INFO    ] 2026-06-19 06:11:29
[2026-06-19 06:11:29,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:11:29,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:11:29,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:11:29,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:11:29,759.759 INFO    ] time= 19/06/2026 06:11:29
[2026-06-19 06:11:29,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:11:29,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:11:29,918.918 INFO    ] No existing commands found in stream
[2026-06-19 06:11:34,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:11:34,933.933 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 06:11:38,460.460 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:11:38,463.463 INFO    ] Checking for system updates...
[2026-06-19 06:11:38,499.499 INFO    ] 200
[2026-06-19 06:11:38,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:38,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:11:38,562.562 INFO    ] No update needed
[2026-06-19 06:11:38,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 06:11:38,599.599 INFO    ] 200
[2026-06-19 06:11:38,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:38,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:11:38,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:11:38,693.693 INFO    ] No camera update needed
[2026-06-19 06:11:38,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:11:38,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:11:38,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:11:38,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:11:40,750.750 INFO    ] ================================================
[2026-06-19 06:11:40,766.766 INFO    ] Launching Daemon at Fri Jun 19 06:11:40 IST 2026
[2026-06-19 06:11:40,777.777 INFO    ] ================================================
[2026-06-19 06:11:41,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:11:41
[2026-06-19 06:11:41,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:11:42,221.221 INFO    ] Initializing speech engine...
[2026-06-19 06:11:42,231.231 INFO    ] 2026-06-19 06:11:42
[2026-06-19 06:11:42,476.476 INFO    ] 2026-06-19 06:11:42
[2026-06-19 06:11:42,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:11:42,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:11:42,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:11:42,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:11:42,931.931 INFO    ] time= 19/06/2026 06:11:42
[2026-06-19 06:11:42,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:11:43,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:11:43,088.088 INFO    ] No existing commands found in stream
[2026-06-19 06:11:48,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:11:48,102.102 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 06:11:51,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:11:51,021.021 INFO    ] Checking for system updates...
[2026-06-19 06:11:51,061.061 INFO    ] 200
[2026-06-19 06:11:51,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:51,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:11:51,121.121 INFO    ] No update needed
[2026-06-19 06:11:51,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 06:11:51,157.157 INFO    ] 200
[2026-06-19 06:11:51,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:11:51,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:11:51,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:11:51,244.244 INFO    ] No camera update needed
[2026-06-19 06:11:51,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:11:51,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:11:51,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:11:51,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:11:53,298.298 INFO    ] ================================================
[2026-06-19 06:11:53,313.313 INFO    ] Launching Daemon at Fri Jun 19 06:11:53 IST 2026
[2026-06-19 06:11:53,327.327 INFO    ] ================================================
[2026-06-19 06:11:53,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:11:53
[2026-06-19 06:11:54,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:11:54,724.724 INFO    ] Initializing speech engine...
[2026-06-19 06:11:54,737.737 INFO    ] 2026-06-19 06:11:54
[2026-06-19 06:11:54,999.999 INFO    ] 2026-06-19 06:11:54
[2026-06-19 06:11:55,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:11:55,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:11:55,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:11:55,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:11:55,366.366 INFO    ] time= 19/06/2026 06:11:55
[2026-06-19 06:11:55,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:11:55,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:11:55,518.518 INFO    ] No existing commands found in stream
[2026-06-19 06:12:00,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:12:00,541.541 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 06:12:04,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:12:04,208.208 INFO    ] Checking for system updates...
[2026-06-19 06:12:04,248.248 INFO    ] 200
[2026-06-19 06:12:04,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:04,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:12:04,307.307 INFO    ] No update needed
[2026-06-19 06:12:04,309.309 INFO    ] Checking for camera pi updates...
[2026-06-19 06:12:04,347.347 INFO    ] 200
[2026-06-19 06:12:04,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:04,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:12:04,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:12:04,437.437 INFO    ] No camera update needed
[2026-06-19 06:12:04,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:12:04,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:12:04,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:12:04,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:12:06,493.493 INFO    ] ================================================
[2026-06-19 06:12:06,509.509 INFO    ] Launching Daemon at Fri Jun 19 06:12:06 IST 2026
[2026-06-19 06:12:06,521.521 INFO    ] ================================================
[2026-06-19 06:12:07,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:12:07
[2026-06-19 06:12:07,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:12:07,962.962 INFO    ] Initializing speech engine...
[2026-06-19 06:12:07,972.972 INFO    ] 2026-06-19 06:12:07
[2026-06-19 06:12:08,220.220 INFO    ] 2026-06-19 06:12:08
[2026-06-19 06:12:08,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:12:08,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:12:08,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:12:08,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:12:08,603.603 INFO    ] time= 19/06/2026 06:12:08
[2026-06-19 06:12:08,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:12:08,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:12:08,682.682 INFO    ] No existing commands found in stream
[2026-06-19 06:12:13,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:12:13,700.700 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 06:12:15,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:12:15,799.799 INFO    ] Checking for system updates...
[2026-06-19 06:12:15,836.836 INFO    ] 200
[2026-06-19 06:12:15,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:15,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:12:15,894.894 INFO    ] No update needed
[2026-06-19 06:12:15,897.897 INFO    ] Checking for camera pi updates...
[2026-06-19 06:12:15,935.935 INFO    ] 200
[2026-06-19 06:12:15,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:15,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:12:16,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:12:16,026.026 INFO    ] No camera update needed
[2026-06-19 06:12:16,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:12:16,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:12:16,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:12:16,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:12:18,084.084 INFO    ] ================================================
[2026-06-19 06:12:18,099.099 INFO    ] Launching Daemon at Fri Jun 19 06:12:18 IST 2026
[2026-06-19 06:12:18,111.111 INFO    ] ================================================
[2026-06-19 06:12:18,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:12:18
[2026-06-19 06:12:19,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:12:19,584.584 INFO    ] Initializing speech engine...
[2026-06-19 06:12:19,595.595 INFO    ] 2026-06-19 06:12:19
[2026-06-19 06:12:19,884.884 INFO    ] 2026-06-19 06:12:19
[2026-06-19 06:12:19,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:12:20,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:12:20,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:12:20,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:12:20,336.336 INFO    ] time= 19/06/2026 06:12:20
[2026-06-19 06:12:20,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:12:20,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:12:20,477.477 INFO    ] No existing commands found in stream
[2026-06-19 06:12:25,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:12:25,492.492 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 06:12:26,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:12:26,869.869 INFO    ] Checking for system updates...
[2026-06-19 06:12:26,907.907 INFO    ] 200
[2026-06-19 06:12:26,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:26,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:12:26,966.966 INFO    ] No update needed
[2026-06-19 06:12:26,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 06:12:27,004.004 INFO    ] 200
[2026-06-19 06:12:27,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:27,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:12:27,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:12:27,105.105 INFO    ] No camera update needed
[2026-06-19 06:12:27,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:12:27,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:12:27,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:12:27,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:12:29,163.163 INFO    ] ================================================
[2026-06-19 06:12:29,179.179 INFO    ] Launching Daemon at Fri Jun 19 06:12:29 IST 2026
[2026-06-19 06:12:29,191.191 INFO    ] ================================================
[2026-06-19 06:12:29,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:12:29
[2026-06-19 06:12:30,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:12:30,632.632 INFO    ] Initializing speech engine...
[2026-06-19 06:12:30,655.655 INFO    ] 2026-06-19 06:12:30
[2026-06-19 06:12:30,909.909 INFO    ] 2026-06-19 06:12:30
[2026-06-19 06:12:30,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:12:31,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:12:31,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:12:31,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:12:31,288.288 INFO    ] time= 19/06/2026 06:12:31
[2026-06-19 06:12:31,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:12:31,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:12:31,469.469 INFO    ] No existing commands found in stream
[2026-06-19 06:12:36,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:12:36,498.498 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 06:12:37,534.534 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:12:37,537.537 INFO    ] Checking for system updates...
[2026-06-19 06:12:37,578.578 INFO    ] 200
[2026-06-19 06:12:37,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:37,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:12:37,643.643 INFO    ] No update needed
[2026-06-19 06:12:37,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 06:12:37,681.681 INFO    ] 200
[2026-06-19 06:12:37,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:37,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:12:37,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:12:37,775.775 INFO    ] No camera update needed
[2026-06-19 06:12:37,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:12:37,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:12:37,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:12:37,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:12:39,832.832 INFO    ] ================================================
[2026-06-19 06:12:39,848.848 INFO    ] Launching Daemon at Fri Jun 19 06:12:39 IST 2026
[2026-06-19 06:12:39,860.860 INFO    ] ================================================
[2026-06-19 06:12:40,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:12:40
[2026-06-19 06:12:41,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:12:41,273.273 INFO    ] Initializing speech engine...
[2026-06-19 06:12:41,287.287 INFO    ] 2026-06-19 06:12:41
[2026-06-19 06:12:41,551.551 INFO    ] 2026-06-19 06:12:41
[2026-06-19 06:12:41,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:12:41,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:12:41,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:12:41,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:12:42,021.021 INFO    ] time= 19/06/2026 06:12:41
[2026-06-19 06:12:42,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:12:42,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:12:42,166.166 INFO    ] No existing commands found in stream
[2026-06-19 06:12:47,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:12:47,181.181 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 06:12:47,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:12:47,877.877 INFO    ] Checking for system updates...
[2026-06-19 06:12:47,915.915 INFO    ] 200
[2026-06-19 06:12:47,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:47,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:12:47,975.975 INFO    ] No update needed
[2026-06-19 06:12:47,978.978 INFO    ] Checking for camera pi updates...
[2026-06-19 06:12:48,014.014 INFO    ] 200
[2026-06-19 06:12:48,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:12:48,064.064 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:12:48,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:12:48,097.097 INFO    ] No camera update needed
[2026-06-19 06:12:48,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:12:48,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:12:48,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:12:48,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:12:50,158.158 INFO    ] ================================================
[2026-06-19 06:12:50,173.173 INFO    ] Launching Daemon at Fri Jun 19 06:12:50 IST 2026
[2026-06-19 06:12:50,184.184 INFO    ] ================================================
[2026-06-19 06:12:50,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:12:50
[2026-06-19 06:12:51,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:12:51,620.620 INFO    ] Initializing speech engine...
[2026-06-19 06:12:51,629.629 INFO    ] 2026-06-19 06:12:51
[2026-06-19 06:12:51,878.878 INFO    ] 2026-06-19 06:12:51
[2026-06-19 06:12:51,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:12:52,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:12:52,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:12:52,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:12:52,254.254 INFO    ] time= 19/06/2026 06:12:52
[2026-06-19 06:12:52,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:12:52,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:12:52,415.415 INFO    ] No existing commands found in stream
[2026-06-19 06:12:57,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:12:57,442.442 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 06:12:59,948.948 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:12:59,950.950 INFO    ] Checking for system updates...
[2026-06-19 06:12:59,990.990 INFO    ] 200
[2026-06-19 06:12:59,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:00,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:13:00,048.048 INFO    ] No update needed
[2026-06-19 06:13:00,050.050 INFO    ] Checking for camera pi updates...
[2026-06-19 06:13:00,084.084 INFO    ] 200
[2026-06-19 06:13:00,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:00,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:13:00,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:13:00,173.173 INFO    ] No camera update needed
[2026-06-19 06:13:00,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:13:00,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:13:00,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:13:00,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:13:02,234.234 INFO    ] ================================================
[2026-06-19 06:13:02,256.256 INFO    ] Launching Daemon at Fri Jun 19 06:13:02 IST 2026
[2026-06-19 06:13:02,275.275 INFO    ] ================================================
[2026-06-19 06:13:02,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:13:02
[2026-06-19 06:13:03,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:13:03,856.856 INFO    ] Initializing speech engine...
[2026-06-19 06:13:03,876.876 INFO    ] 2026-06-19 06:13:03
[2026-06-19 06:13:04,129.129 INFO    ] 2026-06-19 06:13:04
[2026-06-19 06:13:04,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:13:04,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:13:04,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:13:04,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:13:04,469.469 INFO    ] time= 19/06/2026 06:13:04
[2026-06-19 06:13:04,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:13:04,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:13:04,582.582 INFO    ] No existing commands found in stream
[2026-06-19 06:13:09,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:13:09,601.601 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 06:13:13,825.825 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:13:13,828.828 INFO    ] Checking for system updates...
[2026-06-19 06:13:13,868.868 INFO    ] 200
[2026-06-19 06:13:13,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:13,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:13:13,929.929 INFO    ] No update needed
[2026-06-19 06:13:13,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 06:13:13,970.970 INFO    ] 200
[2026-06-19 06:13:13,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:14,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:13:14,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:13:14,167.167 INFO    ] No camera update needed
[2026-06-19 06:13:14,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:13:14,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:13:14,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:13:14,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:13:16,223.223 INFO    ] ================================================
[2026-06-19 06:13:16,240.240 INFO    ] Launching Daemon at Fri Jun 19 06:13:16 IST 2026
[2026-06-19 06:13:16,252.252 INFO    ] ================================================
[2026-06-19 06:13:16,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:13:16
[2026-06-19 06:13:17,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:13:17,719.719 INFO    ] Initializing speech engine...
[2026-06-19 06:13:17,726.726 INFO    ] 2026-06-19 06:13:17
[2026-06-19 06:13:17,986.986 INFO    ] 2026-06-19 06:13:17
[2026-06-19 06:13:18,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:13:18,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:13:18,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:13:18,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:13:18,412.412 INFO    ] time= 19/06/2026 06:13:18
[2026-06-19 06:13:18,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:13:18,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:13:18,592.592 INFO    ] No existing commands found in stream
[2026-06-19 06:13:23,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:13:23,607.607 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 06:13:27,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:13:27,330.330 INFO    ] Checking for system updates...
[2026-06-19 06:13:27,368.368 INFO    ] 200
[2026-06-19 06:13:27,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:27,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:13:27,429.429 INFO    ] No update needed
[2026-06-19 06:13:27,432.432 INFO    ] Checking for camera pi updates...
[2026-06-19 06:13:27,467.467 INFO    ] 200
[2026-06-19 06:13:27,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:27,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:13:27,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:13:27,561.561 INFO    ] No camera update needed
[2026-06-19 06:13:27,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:13:27,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:13:27,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:13:27,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:13:29,620.620 INFO    ] ================================================
[2026-06-19 06:13:29,635.635 INFO    ] Launching Daemon at Fri Jun 19 06:13:29 IST 2026
[2026-06-19 06:13:29,647.647 INFO    ] ================================================
[2026-06-19 06:13:30,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:13:30
[2026-06-19 06:13:30,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:13:31,220.220 INFO    ] Initializing speech engine...
[2026-06-19 06:13:31,229.229 INFO    ] 2026-06-19 06:13:31
[2026-06-19 06:13:31,484.484 INFO    ] 2026-06-19 06:13:31
[2026-06-19 06:13:31,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:13:31,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:13:31,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:13:31,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:13:31,951.951 INFO    ] time= 19/06/2026 06:13:31
[2026-06-19 06:13:32,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:13:32,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:13:32,136.136 INFO    ] No existing commands found in stream
[2026-06-19 06:13:37,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:13:37,153.153 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 06:13:37,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:13:37,856.856 INFO    ] Checking for system updates...
[2026-06-19 06:13:37,893.893 INFO    ] 200
[2026-06-19 06:13:37,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:37,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:13:37,960.960 INFO    ] No update needed
[2026-06-19 06:13:37,962.962 INFO    ] Checking for camera pi updates...
[2026-06-19 06:13:37,996.996 INFO    ] 200
[2026-06-19 06:13:38,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:38,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:13:38,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:13:38,083.083 INFO    ] No camera update needed
[2026-06-19 06:13:38,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:13:38,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:13:38,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:13:38,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:13:40,142.142 INFO    ] ================================================
[2026-06-19 06:13:40,158.158 INFO    ] Launching Daemon at Fri Jun 19 06:13:40 IST 2026
[2026-06-19 06:13:40,169.169 INFO    ] ================================================
[2026-06-19 06:13:40,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:13:40
[2026-06-19 06:13:41,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:13:41,597.597 INFO    ] Initializing speech engine...
[2026-06-19 06:13:41,605.605 INFO    ] 2026-06-19 06:13:41
[2026-06-19 06:13:41,855.855 INFO    ] 2026-06-19 06:13:41
[2026-06-19 06:13:41,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:13:42,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:13:42,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:13:42,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:13:42,230.230 INFO    ] time= 19/06/2026 06:13:42
[2026-06-19 06:13:42,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:13:42,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:13:42,358.358 INFO    ] No existing commands found in stream
[2026-06-19 06:13:47,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:13:47,373.373 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 06:13:50,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:13:50,144.144 INFO    ] Checking for system updates...
[2026-06-19 06:13:50,181.181 INFO    ] 200
[2026-06-19 06:13:50,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:50,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:13:50,246.246 INFO    ] No update needed
[2026-06-19 06:13:50,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 06:13:50,283.283 INFO    ] 200
[2026-06-19 06:13:50,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:13:50,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:13:50,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:13:50,367.367 INFO    ] No camera update needed
[2026-06-19 06:13:50,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:13:50,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:13:50,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:13:50,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:13:52,424.424 INFO    ] ================================================
[2026-06-19 06:13:52,440.440 INFO    ] Launching Daemon at Fri Jun 19 06:13:52 IST 2026
[2026-06-19 06:13:52,451.451 INFO    ] ================================================
[2026-06-19 06:13:53,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:13:53
[2026-06-19 06:13:53,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:13:53,917.917 INFO    ] Initializing speech engine...
[2026-06-19 06:13:53,924.924 INFO    ] 2026-06-19 06:13:53
[2026-06-19 06:13:54,184.184 INFO    ] 2026-06-19 06:13:54
[2026-06-19 06:13:54,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:13:54,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:13:54,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:13:54,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:13:54,644.644 INFO    ] time= 19/06/2026 06:13:54
[2026-06-19 06:13:54,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:13:54,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:13:54,791.791 INFO    ] No existing commands found in stream
[2026-06-19 06:13:59,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:13:59,806.806 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 06:14:01,110.110 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:14:01,112.112 INFO    ] Checking for system updates...
[2026-06-19 06:14:01,149.149 INFO    ] 200
[2026-06-19 06:14:01,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:01,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:14:01,207.207 INFO    ] No update needed
[2026-06-19 06:14:01,210.210 INFO    ] Checking for camera pi updates...
[2026-06-19 06:14:01,245.245 INFO    ] 200
[2026-06-19 06:14:01,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:01,295.295 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:14:01,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:14:01,352.352 INFO    ] No camera update needed
[2026-06-19 06:14:01,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:14:01,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:14:01,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:14:01,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:14:03,411.411 INFO    ] ================================================
[2026-06-19 06:14:03,431.431 INFO    ] Launching Daemon at Fri Jun 19 06:14:03 IST 2026
[2026-06-19 06:14:03,446.446 INFO    ] ================================================
[2026-06-19 06:14:04,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:14:04
[2026-06-19 06:14:04,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:14:04,861.861 INFO    ] Initializing speech engine...
[2026-06-19 06:14:04,884.884 INFO    ] 2026-06-19 06:14:04
[2026-06-19 06:14:05,136.136 INFO    ] 2026-06-19 06:14:05
[2026-06-19 06:14:05,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:14:05,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:14:05,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:14:05,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:14:05,634.634 INFO    ] time= 19/06/2026 06:14:05
[2026-06-19 06:14:05,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:14:05,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:14:05,816.816 INFO    ] No existing commands found in stream
[2026-06-19 06:14:10,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:14:10,847.847 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-19 06:14:12,929.929 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:14:12,931.931 INFO    ] Checking for system updates...
[2026-06-19 06:14:12,971.971 INFO    ] 200
[2026-06-19 06:14:12,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:13,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:14:13,037.037 INFO    ] No update needed
[2026-06-19 06:14:13,039.039 INFO    ] Checking for camera pi updates...
[2026-06-19 06:14:13,078.078 INFO    ] 200
[2026-06-19 06:14:13,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:13,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:14:13,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:14:13,171.171 INFO    ] No camera update needed
[2026-06-19 06:14:13,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:14:13,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:14:13,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:14:13,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:14:15,228.228 INFO    ] ================================================
[2026-06-19 06:14:15,244.244 INFO    ] Launching Daemon at Fri Jun 19 06:14:15 IST 2026
[2026-06-19 06:14:15,259.259 INFO    ] ================================================
[2026-06-19 06:14:15,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:14:15
[2026-06-19 06:14:16,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:14:16,676.676 INFO    ] Initializing speech engine...
[2026-06-19 06:14:16,688.688 INFO    ] 2026-06-19 06:14:16
[2026-06-19 06:14:16,935.935 INFO    ] 2026-06-19 06:14:16
[2026-06-19 06:14:16,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:14:17,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:14:17,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:14:17,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:14:17,302.302 INFO    ] time= 19/06/2026 06:14:17
[2026-06-19 06:14:17,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:14:17,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:14:17,469.469 INFO    ] No existing commands found in stream
[2026-06-19 06:14:22,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:14:22,502.502 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 06:14:25,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:14:25,753.753 INFO    ] Checking for system updates...
[2026-06-19 06:14:25,793.793 INFO    ] 200
[2026-06-19 06:14:25,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:25,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:14:25,851.851 INFO    ] No update needed
[2026-06-19 06:14:25,854.854 INFO    ] Checking for camera pi updates...
[2026-06-19 06:14:25,887.887 INFO    ] 200
[2026-06-19 06:14:25,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:25,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:14:25,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:14:25,977.977 INFO    ] No camera update needed
[2026-06-19 06:14:25,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:14:25,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:14:25,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:14:25,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:14:28,033.033 INFO    ] ================================================
[2026-06-19 06:14:28,049.049 INFO    ] Launching Daemon at Fri Jun 19 06:14:28 IST 2026
[2026-06-19 06:14:28,060.060 INFO    ] ================================================
[2026-06-19 06:14:28,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:14:28
[2026-06-19 06:14:29,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:14:29,519.519 INFO    ] Initializing speech engine...
[2026-06-19 06:14:29,526.526 INFO    ] 2026-06-19 06:14:29
[2026-06-19 06:14:29,786.786 INFO    ] 2026-06-19 06:14:29
[2026-06-19 06:14:29,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:14:30,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:14:30,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:14:30,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:14:30,245.245 INFO    ] time= 19/06/2026 06:14:30
[2026-06-19 06:14:30,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:14:30,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:14:30,392.392 INFO    ] No existing commands found in stream
[2026-06-19 06:14:35,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:14:35,408.408 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-19 06:14:38,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:14:38,831.831 INFO    ] Checking for system updates...
[2026-06-19 06:14:38,869.869 INFO    ] 200
[2026-06-19 06:14:38,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:38,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:14:38,928.928 INFO    ] No update needed
[2026-06-19 06:14:38,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 06:14:38,971.971 INFO    ] 200
[2026-06-19 06:14:38,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:39,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:14:39,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:14:39,072.072 INFO    ] No camera update needed
[2026-06-19 06:14:39,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:14:39,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:14:39,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:14:39,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:14:41,131.131 INFO    ] ================================================
[2026-06-19 06:14:41,147.147 INFO    ] Launching Daemon at Fri Jun 19 06:14:41 IST 2026
[2026-06-19 06:14:41,158.158 INFO    ] ================================================
[2026-06-19 06:14:41,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:14:41
[2026-06-19 06:14:42,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:14:42,583.583 INFO    ] Initializing speech engine...
[2026-06-19 06:14:42,593.593 INFO    ] 2026-06-19 06:14:42
[2026-06-19 06:14:42,855.855 INFO    ] 2026-06-19 06:14:42
[2026-06-19 06:14:42,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:14:43,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:14:43,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:14:43,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:14:43,349.349 INFO    ] time= 19/06/2026 06:14:43
[2026-06-19 06:14:43,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:14:43,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:14:43,535.535 INFO    ] No existing commands found in stream
[2026-06-19 06:14:48,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:14:48,563.563 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 06:14:51,856.856 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:14:51,859.859 INFO    ] Checking for system updates...
[2026-06-19 06:14:51,895.895 INFO    ] 200
[2026-06-19 06:14:51,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:51,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:14:51,960.960 INFO    ] No update needed
[2026-06-19 06:14:51,962.962 INFO    ] Checking for camera pi updates...
[2026-06-19 06:14:52,000.000 INFO    ] 200
[2026-06-19 06:14:52,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:14:52,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:14:52,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:14:52,091.091 INFO    ] No camera update needed
[2026-06-19 06:14:52,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:14:52,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:14:52,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:14:52,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:14:54,148.148 INFO    ] ================================================
[2026-06-19 06:14:54,164.164 INFO    ] Launching Daemon at Fri Jun 19 06:14:54 IST 2026
[2026-06-19 06:14:54,175.175 INFO    ] ================================================
[2026-06-19 06:14:54,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:14:54
[2026-06-19 06:14:55,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:14:55,718.718 INFO    ] Initializing speech engine...
[2026-06-19 06:14:55,732.732 INFO    ] 2026-06-19 06:14:55
[2026-06-19 06:14:56,012.012 INFO    ] 2026-06-19 06:14:55
[2026-06-19 06:14:56,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:14:56,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:14:56,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:14:56,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:14:56,529.529 INFO    ] time= 19/06/2026 06:14:56
[2026-06-19 06:14:56,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:14:56,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:14:56,714.714 INFO    ] No existing commands found in stream
[2026-06-19 06:15:01,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:15:01,742.742 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 06:15:03,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:15:03,929.929 INFO    ] Checking for system updates...
[2026-06-19 06:15:03,965.965 INFO    ] 200
[2026-06-19 06:15:03,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:04,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:15:04,024.024 INFO    ] No update needed
[2026-06-19 06:15:04,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 06:15:04,065.065 INFO    ] 200
[2026-06-19 06:15:04,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:04,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:15:04,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:15:04,153.153 INFO    ] No camera update needed
[2026-06-19 06:15:04,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:15:04,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:15:04,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:15:04,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:15:06,210.210 INFO    ] ================================================
[2026-06-19 06:15:06,226.226 INFO    ] Launching Daemon at Fri Jun 19 06:15:06 IST 2026
[2026-06-19 06:15:06,237.237 INFO    ] ================================================
[2026-06-19 06:15:06,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:15:06
[2026-06-19 06:15:07,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:15:07,776.776 INFO    ] Initializing speech engine...
[2026-06-19 06:15:07,791.791 INFO    ] 2026-06-19 06:15:07
[2026-06-19 06:15:08,075.075 INFO    ] 2026-06-19 06:15:08
[2026-06-19 06:15:08,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:15:08,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:15:08,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:15:08,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:15:08,498.498 INFO    ] time= 19/06/2026 06:15:08
[2026-06-19 06:15:08,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:15:08,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:15:08,603.603 INFO    ] No existing commands found in stream
[2026-06-19 06:15:13,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:15:13,641.641 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 06:15:15,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:15:15,397.397 INFO    ] Checking for system updates...
[2026-06-19 06:15:15,438.438 INFO    ] 200
[2026-06-19 06:15:15,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:15,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:15:15,503.503 INFO    ] No update needed
[2026-06-19 06:15:15,505.505 INFO    ] Checking for camera pi updates...
[2026-06-19 06:15:15,543.543 INFO    ] 200
[2026-06-19 06:15:15,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:15,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:15:15,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:15:15,631.631 INFO    ] No camera update needed
[2026-06-19 06:15:15,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:15:15,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:15:15,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:15:15,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:15:17,689.689 INFO    ] ================================================
[2026-06-19 06:15:17,705.705 INFO    ] Launching Daemon at Fri Jun 19 06:15:17 IST 2026
[2026-06-19 06:15:17,716.716 INFO    ] ================================================
[2026-06-19 06:15:18,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:15:18
[2026-06-19 06:15:19,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:15:19,399.399 INFO    ] Initializing speech engine...
[2026-06-19 06:15:19,408.408 INFO    ] 2026-06-19 06:15:19
[2026-06-19 06:15:19,720.720 INFO    ] 2026-06-19 06:15:19
[2026-06-19 06:15:19,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:15:19,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:15:19,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:15:20,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:15:20,149.149 INFO    ] time= 19/06/2026 06:15:20
[2026-06-19 06:15:20,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:15:20,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:15:20,293.293 INFO    ] No existing commands found in stream
[2026-06-19 06:15:25,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:15:25,310.310 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 06:15:27,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:15:27,352.352 INFO    ] Checking for system updates...
[2026-06-19 06:15:27,394.394 INFO    ] 200
[2026-06-19 06:15:27,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:27,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:15:27,469.469 INFO    ] No update needed
[2026-06-19 06:15:27,472.472 INFO    ] Checking for camera pi updates...
[2026-06-19 06:15:27,507.507 INFO    ] 200
[2026-06-19 06:15:27,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:27,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:15:27,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:15:27,702.702 INFO    ] No camera update needed
[2026-06-19 06:15:27,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:15:27,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:15:27,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:15:27,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:15:29,763.763 INFO    ] ================================================
[2026-06-19 06:15:29,778.778 INFO    ] Launching Daemon at Fri Jun 19 06:15:29 IST 2026
[2026-06-19 06:15:29,789.789 INFO    ] ================================================
[2026-06-19 06:15:30,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:15:30
[2026-06-19 06:15:30,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:15:31,207.207 INFO    ] Initializing speech engine...
[2026-06-19 06:15:31,216.216 INFO    ] 2026-06-19 06:15:31
[2026-06-19 06:15:31,514.514 INFO    ] 2026-06-19 06:15:31
[2026-06-19 06:15:31,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:15:31,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:15:31,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:15:31,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:15:31,926.926 INFO    ] time= 19/06/2026 06:15:31
[2026-06-19 06:15:31,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:15:31,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:15:32,063.063 INFO    ] No existing commands found in stream
[2026-06-19 06:15:37,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:15:37,076.076 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 06:15:39,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:15:39,396.396 INFO    ] Checking for system updates...
[2026-06-19 06:15:39,432.432 INFO    ] 200
[2026-06-19 06:15:39,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:39,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:15:39,499.499 INFO    ] No update needed
[2026-06-19 06:15:39,501.501 INFO    ] Checking for camera pi updates...
[2026-06-19 06:15:39,535.535 INFO    ] 200
[2026-06-19 06:15:39,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:39,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:15:39,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:15:39,625.625 INFO    ] No camera update needed
[2026-06-19 06:15:39,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:15:39,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:15:39,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:15:39,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:15:41,681.681 INFO    ] ================================================
[2026-06-19 06:15:41,696.696 INFO    ] Launching Daemon at Fri Jun 19 06:15:41 IST 2026
[2026-06-19 06:15:41,707.707 INFO    ] ================================================
[2026-06-19 06:15:42,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:15:42
[2026-06-19 06:15:42,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:15:43,163.163 INFO    ] Initializing speech engine...
[2026-06-19 06:15:43,169.169 INFO    ] 2026-06-19 06:15:43
[2026-06-19 06:15:43,419.419 INFO    ] 2026-06-19 06:15:43
[2026-06-19 06:15:43,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:15:43,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:15:43,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:15:43,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:15:43,908.908 INFO    ] time= 19/06/2026 06:15:43
[2026-06-19 06:15:43,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:15:44,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:15:44,063.063 INFO    ] No existing commands found in stream
[2026-06-19 06:15:49,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:15:49,080.080 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 06:15:49,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:15:49,970.970 INFO    ] Checking for system updates...
[2026-06-19 06:15:50,008.008 INFO    ] 200
[2026-06-19 06:15:50,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:50,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:15:50,075.075 INFO    ] No update needed
[2026-06-19 06:15:50,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 06:15:50,114.114 INFO    ] 200
[2026-06-19 06:15:50,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:15:50,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:15:50,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:15:50,206.206 INFO    ] No camera update needed
[2026-06-19 06:15:50,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:15:50,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:15:50,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:15:50,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:15:52,266.266 INFO    ] ================================================
[2026-06-19 06:15:52,281.281 INFO    ] Launching Daemon at Fri Jun 19 06:15:52 IST 2026
[2026-06-19 06:15:52,292.292 INFO    ] ================================================
[2026-06-19 06:15:52,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:15:52
[2026-06-19 06:15:53,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:15:53,822.822 INFO    ] Initializing speech engine...
[2026-06-19 06:15:53,835.835 INFO    ] 2026-06-19 06:15:53
[2026-06-19 06:15:54,100.100 INFO    ] 2026-06-19 06:15:54
[2026-06-19 06:15:54,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:15:54,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:15:54,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:15:54,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:15:54,604.604 INFO    ] time= 19/06/2026 06:15:54
[2026-06-19 06:15:54,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:15:54,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:15:54,802.802 INFO    ] No existing commands found in stream
[2026-06-19 06:15:59,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:15:59,833.833 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 06:16:00,987.987 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:16:00,990.990 INFO    ] Checking for system updates...
[2026-06-19 06:16:01,061.061 INFO    ] 200
[2026-06-19 06:16:01,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:01,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:16:01,213.213 INFO    ] No update needed
[2026-06-19 06:16:01,217.217 INFO    ] Checking for camera pi updates...
[2026-06-19 06:16:01,273.273 INFO    ] 200
[2026-06-19 06:16:01,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:01,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:16:01,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:16:01,418.418 INFO    ] No camera update needed
[2026-06-19 06:16:01,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:16:01,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:16:01,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:16:01,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:16:03,484.484 INFO    ] ================================================
[2026-06-19 06:16:03,499.499 INFO    ] Launching Daemon at Fri Jun 19 06:16:03 IST 2026
[2026-06-19 06:16:03,510.510 INFO    ] ================================================
[2026-06-19 06:16:04,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:16:04
[2026-06-19 06:16:04,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:16:04,972.972 INFO    ] Initializing speech engine...
[2026-06-19 06:16:04,979.979 INFO    ] 2026-06-19 06:16:04
[2026-06-19 06:16:05,240.240 INFO    ] 2026-06-19 06:16:05
[2026-06-19 06:16:05,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:16:05,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:16:05,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:16:05,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:16:05,727.727 INFO    ] time= 19/06/2026 06:16:05
[2026-06-19 06:16:05,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:16:05,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:16:05,870.870 INFO    ] No existing commands found in stream
[2026-06-19 06:16:10,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:16:10,894.894 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 06:16:12,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:16:12,029.029 INFO    ] Checking for system updates...
[2026-06-19 06:16:12,069.069 INFO    ] 200
[2026-06-19 06:16:12,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:12,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:16:12,135.135 INFO    ] No update needed
[2026-06-19 06:16:12,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 06:16:12,176.176 INFO    ] 200
[2026-06-19 06:16:12,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:12,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:16:12,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:16:12,270.270 INFO    ] No camera update needed
[2026-06-19 06:16:12,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:16:12,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:16:12,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:16:12,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:16:14,327.327 INFO    ] ================================================
[2026-06-19 06:16:14,342.342 INFO    ] Launching Daemon at Fri Jun 19 06:16:14 IST 2026
[2026-06-19 06:16:14,354.354 INFO    ] ================================================
[2026-06-19 06:16:14,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:16:14
[2026-06-19 06:16:15,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:16:15,795.795 INFO    ] Initializing speech engine...
[2026-06-19 06:16:15,805.805 INFO    ] 2026-06-19 06:16:15
[2026-06-19 06:16:16,052.052 INFO    ] 2026-06-19 06:16:16
[2026-06-19 06:16:16,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:16:16,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:16:16,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:16:16,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:16:16,423.423 INFO    ] time= 19/06/2026 06:16:16
[2026-06-19 06:16:16,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:16:16,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:16:16,600.600 INFO    ] No existing commands found in stream
[2026-06-19 06:16:21,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:16:21,633.633 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 06:16:22,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:16:22,079.079 INFO    ] Checking for system updates...
[2026-06-19 06:16:22,116.116 INFO    ] 200
[2026-06-19 06:16:22,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:22,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:16:22,174.174 INFO    ] No update needed
[2026-06-19 06:16:22,176.176 INFO    ] Checking for camera pi updates...
[2026-06-19 06:16:22,211.211 INFO    ] 200
[2026-06-19 06:16:22,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:22,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:16:22,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:16:22,310.310 INFO    ] No camera update needed
[2026-06-19 06:16:22,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:16:22,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:16:22,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:16:22,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:16:24,366.366 INFO    ] ================================================
[2026-06-19 06:16:24,382.382 INFO    ] Launching Daemon at Fri Jun 19 06:16:24 IST 2026
[2026-06-19 06:16:24,393.393 INFO    ] ================================================
[2026-06-19 06:16:25,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:16:25
[2026-06-19 06:16:25,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:16:26,018.018 INFO    ] Initializing speech engine...
[2026-06-19 06:16:26,027.027 INFO    ] 2026-06-19 06:16:26
[2026-06-19 06:16:26,313.313 INFO    ] 2026-06-19 06:16:26
[2026-06-19 06:16:26,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:16:26,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:16:26,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:16:26,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:16:26,780.780 INFO    ] time= 19/06/2026 06:16:26
[2026-06-19 06:16:26,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:16:26,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:16:26,920.920 INFO    ] No existing commands found in stream
[2026-06-19 06:16:31,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:16:31,957.957 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 06:16:34,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:16:34,131.131 INFO    ] Checking for system updates...
[2026-06-19 06:16:34,168.168 INFO    ] 200
[2026-06-19 06:16:34,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:34,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:16:34,227.227 INFO    ] No update needed
[2026-06-19 06:16:34,230.230 INFO    ] Checking for camera pi updates...
[2026-06-19 06:16:34,265.265 INFO    ] 200
[2026-06-19 06:16:34,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:34,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:16:34,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:16:34,358.358 INFO    ] No camera update needed
[2026-06-19 06:16:34,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:16:34,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:16:34,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:16:34,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:16:36,418.418 INFO    ] ================================================
[2026-06-19 06:16:36,433.433 INFO    ] Launching Daemon at Fri Jun 19 06:16:36 IST 2026
[2026-06-19 06:16:36,444.444 INFO    ] ================================================
[2026-06-19 06:16:37,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:16:37
[2026-06-19 06:16:37,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:16:37,861.861 INFO    ] Initializing speech engine...
[2026-06-19 06:16:37,876.876 INFO    ] 2026-06-19 06:16:37
[2026-06-19 06:16:38,141.141 INFO    ] 2026-06-19 06:16:38
[2026-06-19 06:16:38,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:16:38,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:16:38,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:16:38,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:16:38,612.612 INFO    ] time= 19/06/2026 06:16:38
[2026-06-19 06:16:38,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:16:38,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:16:38,764.764 INFO    ] No existing commands found in stream
[2026-06-19 06:16:43,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:16:43,779.779 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 06:16:46,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:16:46,246.246 INFO    ] Checking for system updates...
[2026-06-19 06:16:46,281.281 INFO    ] 200
[2026-06-19 06:16:46,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:46,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:16:46,347.347 INFO    ] No update needed
[2026-06-19 06:16:46,349.349 INFO    ] Checking for camera pi updates...
[2026-06-19 06:16:46,387.387 INFO    ] 200
[2026-06-19 06:16:46,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:46,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:16:46,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:16:46,465.465 INFO    ] No camera update needed
[2026-06-19 06:16:46,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:16:46,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:16:46,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:16:46,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:16:48,524.524 INFO    ] ================================================
[2026-06-19 06:16:48,540.540 INFO    ] Launching Daemon at Fri Jun 19 06:16:48 IST 2026
[2026-06-19 06:16:48,551.551 INFO    ] ================================================
[2026-06-19 06:16:49,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:16:49
[2026-06-19 06:16:49,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:16:50,183.183 INFO    ] Initializing speech engine...
[2026-06-19 06:16:50,191.191 INFO    ] 2026-06-19 06:16:50
[2026-06-19 06:16:50,450.450 INFO    ] 2026-06-19 06:16:50
[2026-06-19 06:16:50,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:16:50,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:16:50,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:16:50,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:16:50,908.908 INFO    ] time= 19/06/2026 06:16:50
[2026-06-19 06:16:50,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:16:51,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:16:51,058.058 INFO    ] No existing commands found in stream
[2026-06-19 06:16:56,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:16:56,072.072 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 06:16:56,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:16:56,768.768 INFO    ] Checking for system updates...
[2026-06-19 06:16:56,806.806 INFO    ] 200
[2026-06-19 06:16:56,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:56,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:16:56,865.865 INFO    ] No update needed
[2026-06-19 06:16:56,868.868 INFO    ] Checking for camera pi updates...
[2026-06-19 06:16:56,902.902 INFO    ] 200
[2026-06-19 06:16:56,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:16:56,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:16:56,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:16:56,987.987 INFO    ] No camera update needed
[2026-06-19 06:16:56,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:16:56,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:16:56,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:16:57,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:16:59,041.041 INFO    ] ================================================
[2026-06-19 06:16:59,056.056 INFO    ] Launching Daemon at Fri Jun 19 06:16:59 IST 2026
[2026-06-19 06:16:59,067.067 INFO    ] ================================================
[2026-06-19 06:16:59,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:16:59
[2026-06-19 06:17:00,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:17:00,508.508 INFO    ] Initializing speech engine...
[2026-06-19 06:17:00,516.516 INFO    ] 2026-06-19 06:17:00
[2026-06-19 06:17:00,775.775 INFO    ] 2026-06-19 06:17:00
[2026-06-19 06:17:00,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:17:01,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:17:01,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:17:01,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:17:01,238.238 INFO    ] time= 19/06/2026 06:17:01
[2026-06-19 06:17:01,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:17:01,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:17:01,388.388 INFO    ] No existing commands found in stream
[2026-06-19 06:17:06,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:17:06,403.403 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 06:17:08,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:17:08,949.949 INFO    ] Checking for system updates...
[2026-06-19 06:17:08,986.986 INFO    ] 200
[2026-06-19 06:17:08,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:09,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:17:09,043.043 INFO    ] No update needed
[2026-06-19 06:17:09,046.046 INFO    ] Checking for camera pi updates...
[2026-06-19 06:17:09,081.081 INFO    ] 200
[2026-06-19 06:17:09,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:09,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:17:09,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:17:09,176.176 INFO    ] No camera update needed
[2026-06-19 06:17:09,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:17:09,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:17:09,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:17:09,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:17:11,232.232 INFO    ] ================================================
[2026-06-19 06:17:11,247.247 INFO    ] Launching Daemon at Fri Jun 19 06:17:11 IST 2026
[2026-06-19 06:17:11,258.258 INFO    ] ================================================
[2026-06-19 06:17:11,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:17:11
[2026-06-19 06:17:12,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:17:12,677.677 INFO    ] Initializing speech engine...
[2026-06-19 06:17:12,686.686 INFO    ] 2026-06-19 06:17:12
[2026-06-19 06:17:12,932.932 INFO    ] 2026-06-19 06:17:12
[2026-06-19 06:17:12,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:17:13,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:17:13,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:17:13,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:17:13,392.392 INFO    ] time= 19/06/2026 06:17:13
[2026-06-19 06:17:13,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:17:13,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:17:13,549.549 INFO    ] No existing commands found in stream
[2026-06-19 06:17:18,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:17:18,563.563 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 06:17:20,694.694 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:17:20,697.697 INFO    ] Checking for system updates...
[2026-06-19 06:17:20,737.737 INFO    ] 200
[2026-06-19 06:17:20,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:20,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:17:20,800.800 INFO    ] No update needed
[2026-06-19 06:17:20,802.802 INFO    ] Checking for camera pi updates...
[2026-06-19 06:17:20,840.840 INFO    ] 200
[2026-06-19 06:17:20,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:20,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:17:20,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:17:20,933.933 INFO    ] No camera update needed
[2026-06-19 06:17:20,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:17:20,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:17:20,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:17:20,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:17:22,989.989 INFO    ] ================================================
[2026-06-19 06:17:23,004.004 INFO    ] Launching Daemon at Fri Jun 19 06:17:22 IST 2026
[2026-06-19 06:17:23,014.014 INFO    ] ================================================
[2026-06-19 06:17:23,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:17:23
[2026-06-19 06:17:24,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:17:24,471.471 INFO    ] Initializing speech engine...
[2026-06-19 06:17:24,480.480 INFO    ] 2026-06-19 06:17:24
[2026-06-19 06:17:24,725.725 INFO    ] 2026-06-19 06:17:24
[2026-06-19 06:17:24,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:17:24,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:17:24,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:17:25,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:17:25,093.093 INFO    ] time= 19/06/2026 06:17:25
[2026-06-19 06:17:25,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:17:25,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:17:25,273.273 INFO    ] No existing commands found in stream
[2026-06-19 06:17:30,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:17:30,301.301 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 06:17:34,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:17:34,209.209 INFO    ] Checking for system updates...
[2026-06-19 06:17:34,245.245 INFO    ] 200
[2026-06-19 06:17:34,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:34,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:17:34,303.303 INFO    ] No update needed
[2026-06-19 06:17:34,306.306 INFO    ] Checking for camera pi updates...
[2026-06-19 06:17:34,339.339 INFO    ] 200
[2026-06-19 06:17:34,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:34,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:17:34,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:17:34,427.427 INFO    ] No camera update needed
[2026-06-19 06:17:34,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:17:34,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:17:34,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:17:34,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:17:36,483.483 INFO    ] ================================================
[2026-06-19 06:17:36,499.499 INFO    ] Launching Daemon at Fri Jun 19 06:17:36 IST 2026
[2026-06-19 06:17:36,509.509 INFO    ] ================================================
[2026-06-19 06:17:37,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:17:37
[2026-06-19 06:17:37,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:17:37,934.934 INFO    ] Initializing speech engine...
[2026-06-19 06:17:37,953.953 INFO    ] 2026-06-19 06:17:37
[2026-06-19 06:17:38,200.200 INFO    ] 2026-06-19 06:17:38
[2026-06-19 06:17:38,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:17:38,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:17:38,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:17:38,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:17:38,572.572 INFO    ] time= 19/06/2026 06:17:38
[2026-06-19 06:17:38,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:17:38,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:17:38,753.753 INFO    ] No existing commands found in stream
[2026-06-19 06:17:43,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:17:43,781.781 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 06:17:45,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:17:45,652.652 INFO    ] Checking for system updates...
[2026-06-19 06:17:45,688.688 INFO    ] 200
[2026-06-19 06:17:45,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:45,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:17:45,747.747 INFO    ] No update needed
[2026-06-19 06:17:45,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 06:17:45,802.802 INFO    ] 200
[2026-06-19 06:17:45,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:45,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:17:45,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:17:45,889.889 INFO    ] No camera update needed
[2026-06-19 06:17:45,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:17:45,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:17:45,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:17:45,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:17:47,946.946 INFO    ] ================================================
[2026-06-19 06:17:47,961.961 INFO    ] Launching Daemon at Fri Jun 19 06:17:47 IST 2026
[2026-06-19 06:17:47,972.972 INFO    ] ================================================
[2026-06-19 06:17:48,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:17:48
[2026-06-19 06:17:49,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:17:49,373.373 INFO    ] Initializing speech engine...
[2026-06-19 06:17:49,382.382 INFO    ] 2026-06-19 06:17:49
[2026-06-19 06:17:49,651.651 INFO    ] 2026-06-19 06:17:49
[2026-06-19 06:17:49,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:17:49,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:17:49,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:17:50,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:17:50,116.116 INFO    ] time= 19/06/2026 06:17:50
[2026-06-19 06:17:50,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:17:50,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:17:50,269.269 INFO    ] No existing commands found in stream
[2026-06-19 06:17:55,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:17:55,284.284 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 06:17:56,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:17:56,472.472 INFO    ] Checking for system updates...
[2026-06-19 06:17:56,508.508 INFO    ] 200
[2026-06-19 06:17:56,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:56,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:17:56,571.571 INFO    ] No update needed
[2026-06-19 06:17:56,573.573 INFO    ] Checking for camera pi updates...
[2026-06-19 06:17:56,612.612 INFO    ] 200
[2026-06-19 06:17:56,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:17:56,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:17:56,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:17:56,704.704 INFO    ] No camera update needed
[2026-06-19 06:17:56,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:17:56,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:17:56,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:17:56,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:17:58,761.761 INFO    ] ================================================
[2026-06-19 06:17:58,776.776 INFO    ] Launching Daemon at Fri Jun 19 06:17:58 IST 2026
[2026-06-19 06:17:58,787.787 INFO    ] ================================================
[2026-06-19 06:17:59,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:17:59
[2026-06-19 06:17:59,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:18:00,225.225 INFO    ] Initializing speech engine...
[2026-06-19 06:18:00,234.234 INFO    ] 2026-06-19 06:18:00
[2026-06-19 06:18:00,528.528 INFO    ] 2026-06-19 06:18:00
[2026-06-19 06:18:00,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:18:00,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:18:00,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:18:00,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:18:00,850.850 INFO    ] time= 19/06/2026 06:18:00
[2026-06-19 06:18:00,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:18:00,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:18:00,985.985 INFO    ] No existing commands found in stream
[2026-06-19 06:18:05,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:18:06,000.000 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 06:18:06,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:18:06,579.579 INFO    ] Checking for system updates...
[2026-06-19 06:18:06,615.615 INFO    ] 200
[2026-06-19 06:18:06,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:06,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:18:06,674.674 INFO    ] No update needed
[2026-06-19 06:18:06,677.677 INFO    ] Checking for camera pi updates...
[2026-06-19 06:18:06,715.715 INFO    ] 200
[2026-06-19 06:18:06,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:06,759.759 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:18:06,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:18:06,801.801 INFO    ] No camera update needed
[2026-06-19 06:18:06,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:18:06,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:18:06,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:18:06,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:18:08,857.857 INFO    ] ================================================
[2026-06-19 06:18:08,872.872 INFO    ] Launching Daemon at Fri Jun 19 06:18:08 IST 2026
[2026-06-19 06:18:08,883.883 INFO    ] ================================================
[2026-06-19 06:18:09,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:18:09
[2026-06-19 06:18:10,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:18:10,293.293 INFO    ] Initializing speech engine...
[2026-06-19 06:18:10,317.317 INFO    ] 2026-06-19 06:18:10
[2026-06-19 06:18:10,573.573 INFO    ] 2026-06-19 06:18:10
[2026-06-19 06:18:10,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:18:10,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:18:10,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:18:11,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:18:11,033.033 INFO    ] time= 19/06/2026 06:18:11
[2026-06-19 06:18:11,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:18:11,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:18:11,171.171 INFO    ] No existing commands found in stream
[2026-06-19 06:18:16,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:18:16,190.190 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 06:18:18,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:18:18,805.805 INFO    ] Checking for system updates...
[2026-06-19 06:18:18,842.842 INFO    ] 200
[2026-06-19 06:18:18,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:18,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:18:18,906.906 INFO    ] No update needed
[2026-06-19 06:18:18,908.908 INFO    ] Checking for camera pi updates...
[2026-06-19 06:18:18,942.942 INFO    ] 200
[2026-06-19 06:18:18,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:18,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:18:19,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:18:19,039.039 INFO    ] No camera update needed
[2026-06-19 06:18:19,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:18:19,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:18:19,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:18:19,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:18:21,096.096 INFO    ] ================================================
[2026-06-19 06:18:21,111.111 INFO    ] Launching Daemon at Fri Jun 19 06:18:21 IST 2026
[2026-06-19 06:18:21,122.122 INFO    ] ================================================
[2026-06-19 06:18:21,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:18:21
[2026-06-19 06:18:22,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:18:22,762.762 INFO    ] Initializing speech engine...
[2026-06-19 06:18:22,770.770 INFO    ] 2026-06-19 06:18:22
[2026-06-19 06:18:23,059.059 INFO    ] 2026-06-19 06:18:23
[2026-06-19 06:18:23,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:18:23,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:18:23,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:18:23,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:18:23,552.552 INFO    ] time= 19/06/2026 06:18:23
[2026-06-19 06:18:23,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:18:23,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:18:23,738.738 INFO    ] No existing commands found in stream
[2026-06-19 06:18:28,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:18:28,766.766 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 06:18:31,153.153 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:18:31,156.156 INFO    ] Checking for system updates...
[2026-06-19 06:18:31,197.197 INFO    ] 200
[2026-06-19 06:18:31,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:31,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:18:31,267.267 INFO    ] No update needed
[2026-06-19 06:18:31,270.270 INFO    ] Checking for camera pi updates...
[2026-06-19 06:18:31,309.309 INFO    ] 200
[2026-06-19 06:18:31,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:31,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:18:31,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:18:31,402.402 INFO    ] No camera update needed
[2026-06-19 06:18:31,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:18:31,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:18:31,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:18:31,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:18:33,461.461 INFO    ] ================================================
[2026-06-19 06:18:33,477.477 INFO    ] Launching Daemon at Fri Jun 19 06:18:33 IST 2026
[2026-06-19 06:18:33,488.488 INFO    ] ================================================
[2026-06-19 06:18:34,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:18:34
[2026-06-19 06:18:34,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:18:35,116.116 INFO    ] Initializing speech engine...
[2026-06-19 06:18:35,125.125 INFO    ] 2026-06-19 06:18:35
[2026-06-19 06:18:35,410.410 INFO    ] 2026-06-19 06:18:35
[2026-06-19 06:18:35,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:18:35,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:18:35,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:18:35,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:18:35,941.941 INFO    ] time= 19/06/2026 06:18:35
[2026-06-19 06:18:35,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:18:35,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:18:36,094.094 INFO    ] No existing commands found in stream
[2026-06-19 06:18:41,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:18:41,122.122 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 06:18:45,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:18:45,135.135 INFO    ] Checking for system updates...
[2026-06-19 06:18:45,172.172 INFO    ] 200
[2026-06-19 06:18:45,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:45,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:18:45,230.230 INFO    ] No update needed
[2026-06-19 06:18:45,233.233 INFO    ] Checking for camera pi updates...
[2026-06-19 06:18:45,270.270 INFO    ] 200
[2026-06-19 06:18:45,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:45,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:18:45,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:18:45,363.363 INFO    ] No camera update needed
[2026-06-19 06:18:45,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:18:45,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:18:45,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:18:45,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:18:47,418.418 INFO    ] ================================================
[2026-06-19 06:18:47,433.433 INFO    ] Launching Daemon at Fri Jun 19 06:18:47 IST 2026
[2026-06-19 06:18:47,444.444 INFO    ] ================================================
[2026-06-19 06:18:48,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:18:48
[2026-06-19 06:18:48,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:18:48,868.868 INFO    ] Initializing speech engine...
[2026-06-19 06:18:48,887.887 INFO    ] 2026-06-19 06:18:48
[2026-06-19 06:18:49,153.153 INFO    ] 2026-06-19 06:18:49
[2026-06-19 06:18:49,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:18:49,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:18:49,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:18:49,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:18:49,548.548 INFO    ] time= 19/06/2026 06:18:49
[2026-06-19 06:18:49,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:18:49,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:18:49,658.658 INFO    ] No existing commands found in stream
[2026-06-19 06:18:54,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:18:54,677.677 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 06:18:59,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:18:59,061.061 INFO    ] Checking for system updates...
[2026-06-19 06:18:59,100.100 INFO    ] 200
[2026-06-19 06:18:59,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:59,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:18:59,159.159 INFO    ] No update needed
[2026-06-19 06:18:59,161.161 INFO    ] Checking for camera pi updates...
[2026-06-19 06:18:59,202.202 INFO    ] 200
[2026-06-19 06:18:59,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:18:59,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:18:59,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:18:59,287.287 INFO    ] No camera update needed
[2026-06-19 06:18:59,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:18:59,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:18:59,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:18:59,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:19:01,358.358 INFO    ] ================================================
[2026-06-19 06:19:01,390.390 INFO    ] Launching Daemon at Fri Jun 19 06:19:01 IST 2026
[2026-06-19 06:19:01,421.421 INFO    ] ================================================
[2026-06-19 06:19:02,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:19:02
[2026-06-19 06:19:02,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:19:03,133.133 INFO    ] Initializing speech engine...
[2026-06-19 06:19:03,142.142 INFO    ] 2026-06-19 06:19:03
[2026-06-19 06:19:03,411.411 INFO    ] 2026-06-19 06:19:03
[2026-06-19 06:19:03,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:19:03,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:19:03,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:19:03,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:19:03,960.960 INFO    ] time= 19/06/2026 06:19:03
[2026-06-19 06:19:03,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:19:03,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:19:04,097.097 INFO    ] No existing commands found in stream
[2026-06-19 06:19:09,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:19:09,128.128 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 06:19:12,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:19:12,308.308 INFO    ] Checking for system updates...
[2026-06-19 06:19:12,344.344 INFO    ] 200
[2026-06-19 06:19:12,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:19:12,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:19:12,405.405 INFO    ] No update needed
[2026-06-19 06:19:12,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 06:19:12,445.445 INFO    ] 200
[2026-06-19 06:19:12,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:19:12,492.492 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:19:12,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:19:12,531.531 INFO    ] No camera update needed
[2026-06-19 06:19:12,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:19:12,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:19:12,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:19:12,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:19:14,589.589 INFO    ] ================================================
[2026-06-19 06:19:14,604.604 INFO    ] Launching Daemon at Fri Jun 19 06:19:14 IST 2026
[2026-06-19 06:19:14,615.615 INFO    ] ================================================
[2026-06-19 06:19:15,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:19:15
[2026-06-19 06:19:15,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:19:16,032.032 INFO    ] Initializing speech engine...
[2026-06-19 06:19:16,050.050 INFO    ] 2026-06-19 06:19:16
[2026-06-19 06:19:16,299.299 INFO    ] 2026-06-19 06:19:16
[2026-06-19 06:19:16,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:19:16,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:19:16,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:19:16,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:19:16,775.775 INFO    ] time= 19/06/2026 06:19:16
[2026-06-19 06:19:16,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:19:16,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:19:16,896.896 INFO    ] No existing commands found in stream
[2026-06-19 06:19:21,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:19:21,914.914 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 06:19:24,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:19:24,478.478 INFO    ] Checking for system updates...
[2026-06-19 06:19:24,516.516 INFO    ] 200
[2026-06-19 06:19:24,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:19:24,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:19:24,575.575 INFO    ] No update needed
[2026-06-19 06:19:24,577.577 INFO    ] Checking for camera pi updates...
[2026-06-19 06:19:24,613.613 INFO    ] 200
[2026-06-19 06:19:24,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:19:24,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:19:24,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:19:24,696.696 INFO    ] No camera update needed
[2026-06-19 06:19:24,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:19:24,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:19:24,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:19:24,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:19:26,752.752 INFO    ] ================================================
[2026-06-19 06:19:26,768.768 INFO    ] Launching Daemon at Fri Jun 19 06:19:26 IST 2026
[2026-06-19 06:19:26,778.778 INFO    ] ================================================
[2026-06-19 06:19:27,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:19:27
[2026-06-19 06:19:27,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:19:28,201.201 INFO    ] Initializing speech engine...
[2026-06-19 06:19:28,211.211 INFO    ] 2026-06-19 06:19:28
[2026-06-19 06:19:28,455.455 INFO    ] 2026-06-19 06:19:28
[2026-06-19 06:19:28,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:19:28,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:19:28,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:19:28,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:19:28,954.954 INFO    ] time= 19/06/2026 06:19:28
[2026-06-19 06:19:29,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:19:29,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:19:29,130.130 INFO    ] No existing commands found in stream
[2026-06-19 06:19:34,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:19:34,154.154 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 06:19:36,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:19:36,578.578 INFO    ] Checking for system updates...
[2026-06-19 06:19:36,614.614 INFO    ] 200
[2026-06-19 06:19:36,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:19:36,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:19:36,671.671 INFO    ] No update needed
[2026-06-19 06:19:36,673.673 INFO    ] Checking for camera pi updates...
[2026-06-19 06:19:36,707.707 INFO    ] 200
[2026-06-19 06:19:36,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:19:36,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:19:36,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:19:36,898.898 INFO    ] No camera update needed
[2026-06-19 06:19:36,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:19:36,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:19:36,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:19:36,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:19:38,954.954 INFO    ] ================================================
[2026-06-19 06:19:38,969.969 INFO    ] Launching Daemon at Fri Jun 19 06:19:38 IST 2026
[2026-06-19 06:19:38,980.980 INFO    ] ================================================
[2026-06-19 06:19:39,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:19:39
[2026-06-19 06:19:40,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:19:40,612.612 INFO    ] Initializing speech engine...
[2026-06-19 06:19:40,620.620 INFO    ] 2026-06-19 06:19:40
[2026-06-19 06:19:40,892.892 INFO    ] 2026-06-19 06:19:40
[2026-06-19 06:19:40,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:19:41,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:19:41,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:19:41,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:19:41,361.361 INFO    ] time= 19/06/2026 06:19:41
[2026-06-19 06:19:41,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:19:41,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:19:41,558.558 INFO    ] No existing commands found in stream
[2026-06-19 06:19:46,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:19:46,583.583 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 06:19:48,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:19:48,617.617 INFO    ] Checking for system updates...
[2026-06-19 06:19:48,656.656 INFO    ] 200
[2026-06-19 06:19:48,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:19:48,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:19:48,716.716 INFO    ] No update needed
[2026-06-19 06:19:48,718.718 INFO    ] Checking for camera pi updates...
[2026-06-19 06:19:48,755.755 INFO    ] 200
[2026-06-19 06:19:48,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:19:48,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:19:48,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:19:48,832.832 INFO    ] No camera update needed
[2026-06-19 06:19:48,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:19:48,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:19:48,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:19:48,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:19:50,889.889 INFO    ] ================================================
[2026-06-19 06:19:50,904.904 INFO    ] Launching Daemon at Fri Jun 19 06:19:50 IST 2026
[2026-06-19 06:19:50,915.915 INFO    ] ================================================
[2026-06-19 06:19:51,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:19:51
[2026-06-19 06:19:52,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:19:52,373.373 INFO    ] Initializing speech engine...
[2026-06-19 06:19:52,382.382 INFO    ] 2026-06-19 06:19:52
[2026-06-19 06:19:52,669.669 INFO    ] 2026-06-19 06:19:52
[2026-06-19 06:19:52,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:19:52,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:19:52,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:19:53,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:19:53,046.046 INFO    ] time= 19/06/2026 06:19:53
[2026-06-19 06:19:53,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:19:53,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:19:53,156.156 INFO    ] No existing commands found in stream
[2026-06-19 06:19:58,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:19:58,170.170 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 06:20:00,148.148 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:20:00,151.151 INFO    ] Checking for system updates...
[2026-06-19 06:20:00,187.187 INFO    ] 200
[2026-06-19 06:20:00,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:00,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:20:00,246.246 INFO    ] No update needed
[2026-06-19 06:20:00,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 06:20:00,282.282 INFO    ] 200
[2026-06-19 06:20:00,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:00,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:20:00,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:20:00,369.369 INFO    ] No camera update needed
[2026-06-19 06:20:00,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:20:00,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:20:00,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:20:00,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:20:02,434.434 INFO    ] ================================================
[2026-06-19 06:20:02,478.478 INFO    ] Launching Daemon at Fri Jun 19 06:20:02 IST 2026
[2026-06-19 06:20:02,537.537 INFO    ] ================================================
[2026-06-19 06:20:03,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:20:03
[2026-06-19 06:20:04,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:20:04,343.343 INFO    ] Initializing speech engine...
[2026-06-19 06:20:04,353.353 INFO    ] 2026-06-19 06:20:04
[2026-06-19 06:20:04,600.600 INFO    ] 2026-06-19 06:20:04
[2026-06-19 06:20:04,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:20:04,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:20:04,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:20:04,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:20:04,970.970 INFO    ] time= 19/06/2026 06:20:04
[2026-06-19 06:20:04,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:20:05,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:20:05,163.163 INFO    ] No existing commands found in stream
[2026-06-19 06:20:10,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:20:10,181.181 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 06:20:14,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:20:14,185.185 INFO    ] Checking for system updates...
[2026-06-19 06:20:14,222.222 INFO    ] 200
[2026-06-19 06:20:14,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:14,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:20:14,283.283 INFO    ] No update needed
[2026-06-19 06:20:14,286.286 INFO    ] Checking for camera pi updates...
[2026-06-19 06:20:14,326.326 INFO    ] 200
[2026-06-19 06:20:14,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:14,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:20:14,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:20:14,420.420 INFO    ] No camera update needed
[2026-06-19 06:20:14,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:20:14,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:20:14,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:20:14,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:20:16,476.476 INFO    ] ================================================
[2026-06-19 06:20:16,491.491 INFO    ] Launching Daemon at Fri Jun 19 06:20:16 IST 2026
[2026-06-19 06:20:16,503.503 INFO    ] ================================================
[2026-06-19 06:20:17,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:20:17
[2026-06-19 06:20:17,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:20:17,919.919 INFO    ] Initializing speech engine...
[2026-06-19 06:20:17,925.925 INFO    ] 2026-06-19 06:20:17
[2026-06-19 06:20:18,227.227 INFO    ] 2026-06-19 06:20:18
[2026-06-19 06:20:18,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:20:18,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:20:18,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:20:18,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:20:18,617.617 INFO    ] time= 19/06/2026 06:20:18
[2026-06-19 06:20:18,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:20:18,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:20:18,746.746 INFO    ] No existing commands found in stream
[2026-06-19 06:20:23,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:20:23,761.761 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 06:20:24,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:20:24,788.788 INFO    ] Checking for system updates...
[2026-06-19 06:20:24,825.825 INFO    ] 200
[2026-06-19 06:20:24,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:24,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:20:24,883.883 INFO    ] No update needed
[2026-06-19 06:20:24,886.886 INFO    ] Checking for camera pi updates...
[2026-06-19 06:20:24,919.919 INFO    ] 200
[2026-06-19 06:20:24,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:24,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:20:25,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:20:25,015.015 INFO    ] No camera update needed
[2026-06-19 06:20:25,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:20:25,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:20:25,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:20:25,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:20:27,070.070 INFO    ] ================================================
[2026-06-19 06:20:27,086.086 INFO    ] Launching Daemon at Fri Jun 19 06:20:27 IST 2026
[2026-06-19 06:20:27,097.097 INFO    ] ================================================
[2026-06-19 06:20:27,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:20:27
[2026-06-19 06:20:28,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:20:28,735.735 INFO    ] Initializing speech engine...
[2026-06-19 06:20:28,747.747 INFO    ] 2026-06-19 06:20:28
[2026-06-19 06:20:29,033.033 INFO    ] 2026-06-19 06:20:29
[2026-06-19 06:20:29,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:20:29,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:20:29,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:20:29,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:20:29,564.564 INFO    ] time= 19/06/2026 06:20:29
[2026-06-19 06:20:29,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:20:29,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:20:29,717.717 INFO    ] No existing commands found in stream
[2026-06-19 06:20:34,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:20:34,734.734 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 06:20:37,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:20:37,645.645 INFO    ] Checking for system updates...
[2026-06-19 06:20:37,683.683 INFO    ] 200
[2026-06-19 06:20:37,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:37,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:20:37,749.749 INFO    ] No update needed
[2026-06-19 06:20:37,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 06:20:37,786.786 INFO    ] 200
[2026-06-19 06:20:37,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:37,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:20:37,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:20:37,890.890 INFO    ] No camera update needed
[2026-06-19 06:20:37,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:20:37,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:20:37,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:20:37,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:20:39,946.946 INFO    ] ================================================
[2026-06-19 06:20:39,962.962 INFO    ] Launching Daemon at Fri Jun 19 06:20:39 IST 2026
[2026-06-19 06:20:39,974.974 INFO    ] ================================================
[2026-06-19 06:20:40,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:20:40
[2026-06-19 06:20:41,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:20:41,617.617 INFO    ] Initializing speech engine...
[2026-06-19 06:20:41,628.628 INFO    ] 2026-06-19 06:20:41
[2026-06-19 06:20:41,889.889 INFO    ] 2026-06-19 06:20:41
[2026-06-19 06:20:41,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:20:42,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:20:42,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:20:42,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:20:42,327.327 INFO    ] time= 19/06/2026 06:20:42
[2026-06-19 06:20:42,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:20:42,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:20:42,476.476 INFO    ] No existing commands found in stream
[2026-06-19 06:20:47,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:20:47,491.491 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 06:20:48,443.443 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:20:48,446.446 INFO    ] Checking for system updates...
[2026-06-19 06:20:48,482.482 INFO    ] 200
[2026-06-19 06:20:48,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:48,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:20:48,540.540 INFO    ] No update needed
[2026-06-19 06:20:48,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 06:20:48,576.576 INFO    ] 200
[2026-06-19 06:20:48,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:20:48,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:20:48,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:20:48,654.654 INFO    ] No camera update needed
[2026-06-19 06:20:48,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:20:48,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:20:48,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:20:48,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:20:50,709.709 INFO    ] ================================================
[2026-06-19 06:20:50,725.725 INFO    ] Launching Daemon at Fri Jun 19 06:20:50 IST 2026
[2026-06-19 06:20:50,736.736 INFO    ] ================================================
[2026-06-19 06:20:51,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:20:51
[2026-06-19 06:20:52,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:20:52,264.264 INFO    ] Initializing speech engine...
[2026-06-19 06:20:52,278.278 INFO    ] 2026-06-19 06:20:52
[2026-06-19 06:20:52,544.544 INFO    ] 2026-06-19 06:20:52
[2026-06-19 06:20:52,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:20:52,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:20:52,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:20:52,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:20:52,938.938 INFO    ] time= 19/06/2026 06:20:52
[2026-06-19 06:20:52,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:20:52,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:20:53,047.047 INFO    ] No existing commands found in stream
[2026-06-19 06:20:58,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:20:58,063.063 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 06:21:01,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:21:01,408.408 INFO    ] Checking for system updates...
[2026-06-19 06:21:01,503.503 INFO    ] 200
[2026-06-19 06:21:01,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:01,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:21:01,598.598 INFO    ] No update needed
[2026-06-19 06:21:01,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 06:21:01,692.692 INFO    ] 200
[2026-06-19 06:21:01,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:01,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:21:01,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:21:01,829.829 INFO    ] No camera update needed
[2026-06-19 06:21:01,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:21:01,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:21:01,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:21:01,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:21:03,895.895 INFO    ] ================================================
[2026-06-19 06:21:03,911.911 INFO    ] Launching Daemon at Fri Jun 19 06:21:03 IST 2026
[2026-06-19 06:21:03,922.922 INFO    ] ================================================
[2026-06-19 06:21:04,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:21:04
[2026-06-19 06:21:05,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:21:05,327.327 INFO    ] Initializing speech engine...
[2026-06-19 06:21:05,335.335 INFO    ] 2026-06-19 06:21:05
[2026-06-19 06:21:05,612.612 INFO    ] 2026-06-19 06:21:05
[2026-06-19 06:21:05,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:21:05,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:21:05,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:21:06,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:21:06,077.077 INFO    ] time= 19/06/2026 06:21:06
[2026-06-19 06:21:06,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:21:06,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:21:06,261.261 INFO    ] No existing commands found in stream
[2026-06-19 06:21:11,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:21:11,277.277 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 06:21:15,157.157 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:21:15,159.159 INFO    ] Checking for system updates...
[2026-06-19 06:21:15,200.200 INFO    ] 200
[2026-06-19 06:21:15,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:15,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:21:15,262.262 INFO    ] No update needed
[2026-06-19 06:21:15,264.264 INFO    ] Checking for camera pi updates...
[2026-06-19 06:21:15,303.303 INFO    ] 200
[2026-06-19 06:21:15,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:15,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:21:15,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:21:15,392.392 INFO    ] No camera update needed
[2026-06-19 06:21:15,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:21:15,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:21:15,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:21:15,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:21:17,451.451 INFO    ] ================================================
[2026-06-19 06:21:17,467.467 INFO    ] Launching Daemon at Fri Jun 19 06:21:17 IST 2026
[2026-06-19 06:21:17,478.478 INFO    ] ================================================
[2026-06-19 06:21:18,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:21:18
[2026-06-19 06:21:18,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:21:18,904.904 INFO    ] Initializing speech engine...
[2026-06-19 06:21:18,913.913 INFO    ] 2026-06-19 06:21:18
[2026-06-19 06:21:19,159.159 INFO    ] 2026-06-19 06:21:19
[2026-06-19 06:21:19,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:21:19,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:21:19,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:21:19,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:21:19,598.598 INFO    ] time= 19/06/2026 06:21:19
[2026-06-19 06:21:19,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:21:19,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:21:19,781.781 INFO    ] No existing commands found in stream
[2026-06-19 06:21:24,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:21:24,796.796 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 06:21:25,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:21:25,360.360 INFO    ] Checking for system updates...
[2026-06-19 06:21:25,396.396 INFO    ] 200
[2026-06-19 06:21:25,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:25,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:21:25,454.454 INFO    ] No update needed
[2026-06-19 06:21:25,457.457 INFO    ] Checking for camera pi updates...
[2026-06-19 06:21:25,494.494 INFO    ] 200
[2026-06-19 06:21:25,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:25,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:21:25,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:21:25,579.579 INFO    ] No camera update needed
[2026-06-19 06:21:25,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:21:25,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:21:25,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:21:25,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:21:27,634.634 INFO    ] ================================================
[2026-06-19 06:21:27,650.650 INFO    ] Launching Daemon at Fri Jun 19 06:21:27 IST 2026
[2026-06-19 06:21:27,661.661 INFO    ] ================================================
[2026-06-19 06:21:28,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:21:28
[2026-06-19 06:21:28,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:21:29,076.076 INFO    ] Initializing speech engine...
[2026-06-19 06:21:29,085.085 INFO    ] 2026-06-19 06:21:29
[2026-06-19 06:21:29,379.379 INFO    ] 2026-06-19 06:21:29
[2026-06-19 06:21:29,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:21:29,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:21:29,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:21:29,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:21:29,763.763 INFO    ] time= 19/06/2026 06:21:29
[2026-06-19 06:21:29,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:21:29,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:21:29,890.890 INFO    ] No existing commands found in stream
[2026-06-19 06:21:34,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:21:34,903.903 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 06:21:36,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:21:36,962.962 INFO    ] Checking for system updates...
[2026-06-19 06:21:37,000.000 INFO    ] 200
[2026-06-19 06:21:37,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:37,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:21:37,066.066 INFO    ] No update needed
[2026-06-19 06:21:37,070.070 INFO    ] Checking for camera pi updates...
[2026-06-19 06:21:37,104.104 INFO    ] 200
[2026-06-19 06:21:37,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:37,155.155 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:21:37,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:21:37,203.203 INFO    ] No camera update needed
[2026-06-19 06:21:37,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:21:37,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:21:37,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:21:37,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:21:39,261.261 INFO    ] ================================================
[2026-06-19 06:21:39,277.277 INFO    ] Launching Daemon at Fri Jun 19 06:21:39 IST 2026
[2026-06-19 06:21:39,288.288 INFO    ] ================================================
[2026-06-19 06:21:39,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:21:39
[2026-06-19 06:21:40,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:21:40,936.936 INFO    ] Initializing speech engine...
[2026-06-19 06:21:40,945.945 INFO    ] 2026-06-19 06:21:40
[2026-06-19 06:21:41,234.234 INFO    ] 2026-06-19 06:21:41
[2026-06-19 06:21:41,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:21:41,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:21:41,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:21:41,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:21:41,787.787 INFO    ] time= 19/06/2026 06:21:41
[2026-06-19 06:21:41,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:21:41,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:21:41,928.928 INFO    ] No existing commands found in stream
[2026-06-19 06:21:46,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:21:46,958.958 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 06:21:49,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:21:49,740.740 INFO    ] Checking for system updates...
[2026-06-19 06:21:49,781.781 INFO    ] 200
[2026-06-19 06:21:49,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:49,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:21:49,838.838 INFO    ] No update needed
[2026-06-19 06:21:49,841.841 INFO    ] Checking for camera pi updates...
[2026-06-19 06:21:49,875.875 INFO    ] 200
[2026-06-19 06:21:49,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:21:49,918.918 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:21:50,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:21:50,072.072 INFO    ] No camera update needed
[2026-06-19 06:21:50,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:21:50,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:21:50,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:21:50,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:21:52,129.129 INFO    ] ================================================
[2026-06-19 06:21:52,145.145 INFO    ] Launching Daemon at Fri Jun 19 06:21:52 IST 2026
[2026-06-19 06:21:52,157.157 INFO    ] ================================================
[2026-06-19 06:21:52,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:21:52
[2026-06-19 06:21:53,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:21:53,777.777 INFO    ] Initializing speech engine...
[2026-06-19 06:21:53,785.785 INFO    ] 2026-06-19 06:21:53
[2026-06-19 06:21:54,060.060 INFO    ] 2026-06-19 06:21:54
[2026-06-19 06:21:54,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:21:54,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:21:54,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:21:54,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:21:54,536.536 INFO    ] time= 19/06/2026 06:21:54
[2026-06-19 06:21:54,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:21:54,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:21:54,690.690 INFO    ] No existing commands found in stream
[2026-06-19 06:21:59,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:21:59,706.706 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 06:22:00,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:22:00,186.186 INFO    ] Checking for system updates...
[2026-06-19 06:22:00,223.223 INFO    ] 200
[2026-06-19 06:22:00,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:00,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:22:00,283.283 INFO    ] No update needed
[2026-06-19 06:22:00,286.286 INFO    ] Checking for camera pi updates...
[2026-06-19 06:22:00,321.321 INFO    ] 200
[2026-06-19 06:22:00,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:00,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:22:00,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:22:00,414.414 INFO    ] No camera update needed
[2026-06-19 06:22:00,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:22:00,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:22:00,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:22:00,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:22:02,491.491 INFO    ] ================================================
[2026-06-19 06:22:02,513.513 INFO    ] Launching Daemon at Fri Jun 19 06:22:02 IST 2026
[2026-06-19 06:22:02,527.527 INFO    ] ================================================
[2026-06-19 06:22:03,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:22:03
[2026-06-19 06:22:03,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:22:04,260.260 INFO    ] Initializing speech engine...
[2026-06-19 06:22:04,267.267 INFO    ] 2026-06-19 06:22:04
[2026-06-19 06:22:04,565.565 INFO    ] 2026-06-19 06:22:04
[2026-06-19 06:22:04,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:22:04,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:22:04,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:22:04,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:22:05,044.044 INFO    ] time= 19/06/2026 06:22:04
[2026-06-19 06:22:05,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:22:05,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:22:05,233.233 INFO    ] No existing commands found in stream
[2026-06-19 06:22:10,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:22:10,268.268 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 06:22:10,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:22:10,949.949 INFO    ] Checking for system updates...
[2026-06-19 06:22:10,986.986 INFO    ] 200
[2026-06-19 06:22:10,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:11,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:22:11,046.046 INFO    ] No update needed
[2026-06-19 06:22:11,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 06:22:11,084.084 INFO    ] 200
[2026-06-19 06:22:11,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:11,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:22:11,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:22:11,176.176 INFO    ] No camera update needed
[2026-06-19 06:22:11,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:22:11,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:22:11,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:22:11,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:22:13,238.238 INFO    ] ================================================
[2026-06-19 06:22:13,254.254 INFO    ] Launching Daemon at Fri Jun 19 06:22:13 IST 2026
[2026-06-19 06:22:13,265.265 INFO    ] ================================================
[2026-06-19 06:22:13,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:22:13
[2026-06-19 06:22:14,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:22:14,937.937 INFO    ] Initializing speech engine...
[2026-06-19 06:22:14,943.943 INFO    ] 2026-06-19 06:22:14
[2026-06-19 06:22:15,227.227 INFO    ] 2026-06-19 06:22:15
[2026-06-19 06:22:15,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:22:15,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:22:15,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:22:15,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:22:15,705.705 INFO    ] time= 19/06/2026 06:22:15
[2026-06-19 06:22:15,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:22:15,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:22:15,843.843 INFO    ] No existing commands found in stream
[2026-06-19 06:22:20,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:22:20,859.859 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 06:22:25,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:22:25,217.217 INFO    ] Checking for system updates...
[2026-06-19 06:22:25,255.255 INFO    ] 200
[2026-06-19 06:22:25,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:25,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:22:25,315.315 INFO    ] No update needed
[2026-06-19 06:22:25,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 06:22:25,352.352 INFO    ] 200
[2026-06-19 06:22:25,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:25,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:22:25,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:22:25,442.442 INFO    ] No camera update needed
[2026-06-19 06:22:25,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:22:25,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:22:25,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:22:25,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:22:27,498.498 INFO    ] ================================================
[2026-06-19 06:22:27,514.514 INFO    ] Launching Daemon at Fri Jun 19 06:22:27 IST 2026
[2026-06-19 06:22:27,525.525 INFO    ] ================================================
[2026-06-19 06:22:28,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:22:28
[2026-06-19 06:22:28,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:22:29,239.239 INFO    ] Initializing speech engine...
[2026-06-19 06:22:29,249.249 INFO    ] 2026-06-19 06:22:29
[2026-06-19 06:22:29,576.576 INFO    ] 2026-06-19 06:22:29
[2026-06-19 06:22:29,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:22:29,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:22:29,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:22:30,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:22:30,113.113 INFO    ] time= 19/06/2026 06:22:30
[2026-06-19 06:22:30,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:22:30,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:22:30,273.273 INFO    ] No existing commands found in stream
[2026-06-19 06:22:35,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:22:35,298.298 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 06:22:37,519.519 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:22:37,522.522 INFO    ] Checking for system updates...
[2026-06-19 06:22:37,560.560 INFO    ] 200
[2026-06-19 06:22:37,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:37,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:22:37,620.620 INFO    ] No update needed
[2026-06-19 06:22:37,622.622 INFO    ] Checking for camera pi updates...
[2026-06-19 06:22:37,657.657 INFO    ] 200
[2026-06-19 06:22:37,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:37,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:22:37,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:22:37,743.743 INFO    ] No camera update needed
[2026-06-19 06:22:37,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:22:37,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:22:37,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:22:37,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:22:39,799.799 INFO    ] ================================================
[2026-06-19 06:22:39,815.815 INFO    ] Launching Daemon at Fri Jun 19 06:22:39 IST 2026
[2026-06-19 06:22:39,827.827 INFO    ] ================================================
[2026-06-19 06:22:40,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:22:40
[2026-06-19 06:22:40,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:22:41,256.256 INFO    ] Initializing speech engine...
[2026-06-19 06:22:41,262.262 INFO    ] 2026-06-19 06:22:41
[2026-06-19 06:22:41,521.521 INFO    ] 2026-06-19 06:22:41
[2026-06-19 06:22:41,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:22:41,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:22:41,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:22:41,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:22:41,878.878 INFO    ] time= 19/06/2026 06:22:41
[2026-06-19 06:22:41,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:22:41,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:22:42,074.074 INFO    ] No existing commands found in stream
[2026-06-19 06:22:47,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:22:47,088.088 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 06:22:48,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:22:48,761.761 INFO    ] Checking for system updates...
[2026-06-19 06:22:48,798.798 INFO    ] 200
[2026-06-19 06:22:48,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:48,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:22:48,864.864 INFO    ] No update needed
[2026-06-19 06:22:48,867.867 INFO    ] Checking for camera pi updates...
[2026-06-19 06:22:48,901.901 INFO    ] 200
[2026-06-19 06:22:48,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:48,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:22:48,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:22:48,976.976 INFO    ] No camera update needed
[2026-06-19 06:22:48,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:22:48,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:22:48,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:22:48,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:22:51,032.032 INFO    ] ================================================
[2026-06-19 06:22:51,048.048 INFO    ] Launching Daemon at Fri Jun 19 06:22:51 IST 2026
[2026-06-19 06:22:51,060.060 INFO    ] ================================================
[2026-06-19 06:22:51,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:22:51
[2026-06-19 06:22:52,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:22:52,572.572 INFO    ] Initializing speech engine...
[2026-06-19 06:22:52,585.585 INFO    ] 2026-06-19 06:22:52
[2026-06-19 06:22:52,865.865 INFO    ] 2026-06-19 06:22:52
[2026-06-19 06:22:52,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:22:53,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:22:53,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:22:53,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:22:53,258.258 INFO    ] time= 19/06/2026 06:22:53
[2026-06-19 06:22:53,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:22:53,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:22:53,396.396 INFO    ] No existing commands found in stream
[2026-06-19 06:22:58,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:22:58,409.409 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 06:22:59,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:22:59,482.482 INFO    ] Checking for system updates...
[2026-06-19 06:22:59,525.525 INFO    ] 200
[2026-06-19 06:22:59,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:59,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:22:59,585.585 INFO    ] No update needed
[2026-06-19 06:22:59,588.588 INFO    ] Checking for camera pi updates...
[2026-06-19 06:22:59,628.628 INFO    ] 200
[2026-06-19 06:22:59,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:22:59,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:22:59,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:22:59,728.728 INFO    ] No camera update needed
[2026-06-19 06:22:59,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:22:59,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:22:59,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:22:59,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:23:01,793.793 INFO    ] ================================================
[2026-06-19 06:23:01,814.814 INFO    ] Launching Daemon at Fri Jun 19 06:23:01 IST 2026
[2026-06-19 06:23:01,830.830 INFO    ] ================================================
[2026-06-19 06:23:02,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:23:02
[2026-06-19 06:23:03,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:23:03,381.381 INFO    ] Initializing speech engine...
[2026-06-19 06:23:03,400.400 INFO    ] 2026-06-19 06:23:03
[2026-06-19 06:23:03,648.648 INFO    ] 2026-06-19 06:23:03
[2026-06-19 06:23:03,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:23:03,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:23:03,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:23:04,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:23:04,132.132 INFO    ] time= 19/06/2026 06:23:04
[2026-06-19 06:23:04,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:23:04,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:23:04,268.268 INFO    ] No existing commands found in stream
[2026-06-19 06:23:09,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:23:09,282.282 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 06:23:11,073.073 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:23:11,076.076 INFO    ] Checking for system updates...
[2026-06-19 06:23:11,117.117 INFO    ] 200
[2026-06-19 06:23:11,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:23:11,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:23:11,176.176 INFO    ] No update needed
[2026-06-19 06:23:11,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 06:23:11,218.218 INFO    ] 200
[2026-06-19 06:23:11,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:23:11,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:23:11,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:23:11,315.315 INFO    ] No camera update needed
[2026-06-19 06:23:11,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:23:11,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:23:11,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:23:11,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:23:13,375.375 INFO    ] ================================================
[2026-06-19 06:23:13,390.390 INFO    ] Launching Daemon at Fri Jun 19 06:23:13 IST 2026
[2026-06-19 06:23:13,401.401 INFO    ] ================================================
[2026-06-19 06:23:13,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:23:13
[2026-06-19 06:23:14,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:23:14,853.853 INFO    ] Initializing speech engine...
[2026-06-19 06:23:14,863.863 INFO    ] 2026-06-19 06:23:14
[2026-06-19 06:23:15,110.110 INFO    ] 2026-06-19 06:23:15
[2026-06-19 06:23:15,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:23:15,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:23:15,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:23:15,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:23:15,581.581 INFO    ] time= 19/06/2026 06:23:15
[2026-06-19 06:23:15,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:23:15,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:23:15,729.729 INFO    ] No existing commands found in stream
[2026-06-19 06:23:20,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:23:20,744.744 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 06:23:24,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:23:24,603.603 INFO    ] Checking for system updates...
[2026-06-19 06:23:24,638.638 INFO    ] 200
[2026-06-19 06:23:24,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:23:24,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:23:24,697.697 INFO    ] No update needed
[2026-06-19 06:23:24,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 06:23:24,734.734 INFO    ] 200
[2026-06-19 06:23:24,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:23:24,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:23:24,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:23:24,824.824 INFO    ] No camera update needed
[2026-06-19 06:23:24,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:23:24,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:23:24,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:23:24,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:23:26,879.879 INFO    ] ================================================
[2026-06-19 06:23:26,895.895 INFO    ] Launching Daemon at Fri Jun 19 06:23:26 IST 2026
[2026-06-19 06:23:26,906.906 INFO    ] ================================================
[2026-06-19 06:23:27,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:23:27
[2026-06-19 06:23:28,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:23:28,545.545 INFO    ] Initializing speech engine...
[2026-06-19 06:23:28,555.555 INFO    ] 2026-06-19 06:23:28
[2026-06-19 06:23:28,842.842 INFO    ] 2026-06-19 06:23:28
[2026-06-19 06:23:28,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:23:29,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:23:29,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:23:29,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:23:29,302.302 INFO    ] time= 19/06/2026 06:23:29
[2026-06-19 06:23:29,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:23:29,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:23:29,450.450 INFO    ] No existing commands found in stream
[2026-06-19 06:23:34,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:23:34,469.469 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 06:23:37,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:23:37,564.564 INFO    ] Checking for system updates...
[2026-06-19 06:23:37,601.601 INFO    ] 200
[2026-06-19 06:23:37,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:23:37,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:23:37,658.658 INFO    ] No update needed
[2026-06-19 06:23:37,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 06:23:37,694.694 INFO    ] 200
[2026-06-19 06:23:37,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:23:37,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:23:37,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:23:37,779.779 INFO    ] No camera update needed
[2026-06-19 06:23:37,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:23:37,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:23:37,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:23:37,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:23:39,834.834 INFO    ] ================================================
[2026-06-19 06:23:39,849.849 INFO    ] Launching Daemon at Fri Jun 19 06:23:39 IST 2026
[2026-06-19 06:23:39,859.859 INFO    ] ================================================
[2026-06-19 06:23:40,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:23:40
[2026-06-19 06:23:41,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:23:41,272.272 INFO    ] Initializing speech engine...
[2026-06-19 06:23:41,290.290 INFO    ] 2026-06-19 06:23:41
[2026-06-19 06:23:41,537.537 INFO    ] 2026-06-19 06:23:41
[2026-06-19 06:23:41,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:23:41,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:23:41,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:23:41,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:23:41,906.906 INFO    ] time= 19/06/2026 06:23:41
[2026-06-19 06:23:41,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:23:41,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:23:42,080.080 INFO    ] No existing commands found in stream
[2026-06-19 06:23:47,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:23:47,113.113 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 06:23:48,704.704 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:23:48,706.706 INFO    ] Checking for system updates...
[2026-06-19 06:23:48,743.743 INFO    ] 200
[2026-06-19 06:23:48,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:23:48,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:23:48,802.802 INFO    ] No update needed
[2026-06-19 06:23:48,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 06:23:48,837.837 INFO    ] 200
[2026-06-19 06:23:48,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:23:48,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:23:48,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:23:48,909.909 INFO    ] No camera update needed
[2026-06-19 06:23:48,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:23:48,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:23:48,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:23:48,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:23:50,966.966 INFO    ] ================================================
[2026-06-19 06:23:50,981.981 INFO    ] Launching Daemon at Fri Jun 19 06:23:50 IST 2026
[2026-06-19 06:23:50,991.991 INFO    ] ================================================
[2026-06-19 06:23:51,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:23:51
[2026-06-19 06:23:52,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:23:52,400.400 INFO    ] Initializing speech engine...
[2026-06-19 06:23:52,409.409 INFO    ] 2026-06-19 06:23:52
[2026-06-19 06:23:52,713.713 INFO    ] 2026-06-19 06:23:52
[2026-06-19 06:23:52,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:23:52,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:23:52,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:23:53,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:23:53,099.099 INFO    ] time= 19/06/2026 06:23:53
[2026-06-19 06:23:53,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:23:53,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:23:53,224.224 INFO    ] No existing commands found in stream
[2026-06-19 06:23:58,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:23:58,239.239 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 06:24:00,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:24:00,040.040 INFO    ] Checking for system updates...
[2026-06-19 06:24:00,077.077 INFO    ] 200
[2026-06-19 06:24:00,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:00,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:24:00,134.134 INFO    ] No update needed
[2026-06-19 06:24:00,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 06:24:00,174.174 INFO    ] 200
[2026-06-19 06:24:00,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:00,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:24:00,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:24:00,367.367 INFO    ] No camera update needed
[2026-06-19 06:24:00,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:24:00,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:24:00,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:24:00,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:24:02,431.431 INFO    ] ================================================
[2026-06-19 06:24:02,454.454 INFO    ] Launching Daemon at Fri Jun 19 06:24:02 IST 2026
[2026-06-19 06:24:02,487.487 INFO    ] ================================================
[2026-06-19 06:24:03,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:24:03
[2026-06-19 06:24:03,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:24:04,214.214 INFO    ] Initializing speech engine...
[2026-06-19 06:24:04,222.222 INFO    ] 2026-06-19 06:24:04
[2026-06-19 06:24:04,526.526 INFO    ] 2026-06-19 06:24:04
[2026-06-19 06:24:04,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:24:04,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:24:04,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:24:05,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:24:05,037.037 INFO    ] time= 19/06/2026 06:24:05
[2026-06-19 06:24:05,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:24:05,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:24:05,190.190 INFO    ] No existing commands found in stream
[2026-06-19 06:24:10,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:24:10,207.207 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 06:24:14,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:24:14,318.318 INFO    ] Checking for system updates...
[2026-06-19 06:24:14,356.356 INFO    ] 200
[2026-06-19 06:24:14,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:14,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:24:14,415.415 INFO    ] No update needed
[2026-06-19 06:24:14,418.418 INFO    ] Checking for camera pi updates...
[2026-06-19 06:24:14,457.457 INFO    ] 200
[2026-06-19 06:24:14,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:14,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:24:14,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:24:14,556.556 INFO    ] No camera update needed
[2026-06-19 06:24:14,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:24:14,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:24:14,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:24:14,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:24:16,616.616 INFO    ] ================================================
[2026-06-19 06:24:16,632.632 INFO    ] Launching Daemon at Fri Jun 19 06:24:16 IST 2026
[2026-06-19 06:24:16,642.642 INFO    ] ================================================
[2026-06-19 06:24:17,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:24:17
[2026-06-19 06:24:17,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:24:18,284.284 INFO    ] Initializing speech engine...
[2026-06-19 06:24:18,298.298 INFO    ] 2026-06-19 06:24:18
[2026-06-19 06:24:18,608.608 INFO    ] 2026-06-19 06:24:18
[2026-06-19 06:24:18,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:24:18,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:24:18,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:24:19,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:24:19,116.116 INFO    ] time= 19/06/2026 06:24:19
[2026-06-19 06:24:19,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:24:19,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:24:19,261.261 INFO    ] No existing commands found in stream
[2026-06-19 06:24:24,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:24:24,285.285 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 06:24:26,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:24:26,459.459 INFO    ] Checking for system updates...
[2026-06-19 06:24:26,497.497 INFO    ] 200
[2026-06-19 06:24:26,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:26,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:24:26,556.556 INFO    ] No update needed
[2026-06-19 06:24:26,559.559 INFO    ] Checking for camera pi updates...
[2026-06-19 06:24:26,594.594 INFO    ] 200
[2026-06-19 06:24:26,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:26,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:24:26,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:24:26,691.691 INFO    ] No camera update needed
[2026-06-19 06:24:26,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:24:26,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:24:26,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:24:26,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:24:28,749.749 INFO    ] ================================================
[2026-06-19 06:24:28,768.768 INFO    ] Launching Daemon at Fri Jun 19 06:24:28 IST 2026
[2026-06-19 06:24:28,779.779 INFO    ] ================================================
[2026-06-19 06:24:29,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:24:29
[2026-06-19 06:24:29,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:24:30,223.223 INFO    ] Initializing speech engine...
[2026-06-19 06:24:30,229.229 INFO    ] 2026-06-19 06:24:30
[2026-06-19 06:24:30,526.526 INFO    ] 2026-06-19 06:24:30
[2026-06-19 06:24:30,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:24:30,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:24:30,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:24:30,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:24:30,915.915 INFO    ] time= 19/06/2026 06:24:30
[2026-06-19 06:24:30,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:24:30,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:24:31,040.040 INFO    ] No existing commands found in stream
[2026-06-19 06:24:36,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:24:36,056.056 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 06:24:37,988.988 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:24:37,991.991 INFO    ] Checking for system updates...
[2026-06-19 06:24:38,031.031 INFO    ] 200
[2026-06-19 06:24:38,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:38,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:24:38,089.089 INFO    ] No update needed
[2026-06-19 06:24:38,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 06:24:38,126.126 INFO    ] 200
[2026-06-19 06:24:38,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:38,170.170 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:24:38,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:24:38,211.211 INFO    ] No camera update needed
[2026-06-19 06:24:38,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:24:38,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:24:38,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:24:38,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:24:40,269.269 INFO    ] ================================================
[2026-06-19 06:24:40,284.284 INFO    ] Launching Daemon at Fri Jun 19 06:24:40 IST 2026
[2026-06-19 06:24:40,296.296 INFO    ] ================================================
[2026-06-19 06:24:40,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:24:40
[2026-06-19 06:24:41,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:24:41,957.957 INFO    ] Initializing speech engine...
[2026-06-19 06:24:41,966.966 INFO    ] 2026-06-19 06:24:41
[2026-06-19 06:24:42,249.249 INFO    ] 2026-06-19 06:24:42
[2026-06-19 06:24:42,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:24:42,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:24:42,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:24:42,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:24:42,685.685 INFO    ] time= 19/06/2026 06:24:42
[2026-06-19 06:24:42,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:24:42,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:24:42,846.846 INFO    ] No existing commands found in stream
[2026-06-19 06:24:47,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:24:47,862.862 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 06:24:51,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:24:51,871.871 INFO    ] Checking for system updates...
[2026-06-19 06:24:51,908.908 INFO    ] 200
[2026-06-19 06:24:51,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:51,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:24:51,968.968 INFO    ] No update needed
[2026-06-19 06:24:51,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 06:24:52,011.011 INFO    ] 200
[2026-06-19 06:24:52,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:24:52,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:24:52,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:24:52,104.104 INFO    ] No camera update needed
[2026-06-19 06:24:52,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:24:52,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:24:52,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:24:52,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:24:54,164.164 INFO    ] ================================================
[2026-06-19 06:24:54,180.180 INFO    ] Launching Daemon at Fri Jun 19 06:24:54 IST 2026
[2026-06-19 06:24:54,191.191 INFO    ] ================================================
[2026-06-19 06:24:54,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:24:54
[2026-06-19 06:24:55,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:24:55,835.835 INFO    ] Initializing speech engine...
[2026-06-19 06:24:55,843.843 INFO    ] 2026-06-19 06:24:55
[2026-06-19 06:24:56,159.159 INFO    ] 2026-06-19 06:24:56
[2026-06-19 06:24:56,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:24:56,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:24:56,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:24:56,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:24:56,666.666 INFO    ] time= 19/06/2026 06:24:56
[2026-06-19 06:24:56,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:24:56,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:24:56,807.807 INFO    ] No existing commands found in stream
[2026-06-19 06:25:01,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:25:01,834.834 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 06:25:04,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:25:04,570.570 INFO    ] Checking for system updates...
[2026-06-19 06:25:04,607.607 INFO    ] 200
[2026-06-19 06:25:04,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:04,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:25:04,674.674 INFO    ] No update needed
[2026-06-19 06:25:04,677.677 INFO    ] Checking for camera pi updates...
[2026-06-19 06:25:04,716.716 INFO    ] 200
[2026-06-19 06:25:04,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:04,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:25:04,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:25:04,810.810 INFO    ] No camera update needed
[2026-06-19 06:25:04,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:25:04,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:25:04,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:25:04,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:25:06,870.870 INFO    ] ================================================
[2026-06-19 06:25:06,885.885 INFO    ] Launching Daemon at Fri Jun 19 06:25:06 IST 2026
[2026-06-19 06:25:06,896.896 INFO    ] ================================================
[2026-06-19 06:25:07,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:25:07
[2026-06-19 06:25:08,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:25:08,321.321 INFO    ] Initializing speech engine...
[2026-06-19 06:25:08,330.330 INFO    ] 2026-06-19 06:25:08
[2026-06-19 06:25:08,626.626 INFO    ] 2026-06-19 06:25:08
[2026-06-19 06:25:08,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:25:08,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:25:08,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:25:09,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:25:09,012.012 INFO    ] time= 19/06/2026 06:25:09
[2026-06-19 06:25:09,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:25:09,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:25:09,139.139 INFO    ] No existing commands found in stream
[2026-06-19 06:25:14,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:25:14,153.153 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 06:25:16,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:25:16,231.231 INFO    ] Checking for system updates...
[2026-06-19 06:25:16,267.267 INFO    ] 200
[2026-06-19 06:25:16,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:16,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:25:16,325.325 INFO    ] No update needed
[2026-06-19 06:25:16,327.327 INFO    ] Checking for camera pi updates...
[2026-06-19 06:25:16,361.361 INFO    ] 200
[2026-06-19 06:25:16,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:16,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:25:16,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:25:16,449.449 INFO    ] No camera update needed
[2026-06-19 06:25:16,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:25:16,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:25:16,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:25:16,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:25:18,504.504 INFO    ] ================================================
[2026-06-19 06:25:18,520.520 INFO    ] Launching Daemon at Fri Jun 19 06:25:18 IST 2026
[2026-06-19 06:25:18,531.531 INFO    ] ================================================
[2026-06-19 06:25:19,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:25:19
[2026-06-19 06:25:19,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:25:19,998.998 INFO    ] Initializing speech engine...
[2026-06-19 06:25:20,004.004 INFO    ] 2026-06-19 06:25:20
[2026-06-19 06:25:20,267.267 INFO    ] 2026-06-19 06:25:20
[2026-06-19 06:25:20,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:25:20,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:25:20,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:25:20,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:25:20,732.732 INFO    ] time= 19/06/2026 06:25:20
[2026-06-19 06:25:20,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:25:20,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:25:20,873.873 INFO    ] No existing commands found in stream
[2026-06-19 06:25:25,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:25:25,888.888 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 06:25:28,623.623 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:25:28,626.626 INFO    ] Checking for system updates...
[2026-06-19 06:25:28,664.664 INFO    ] 200
[2026-06-19 06:25:28,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:28,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:25:28,725.725 INFO    ] No update needed
[2026-06-19 06:25:28,728.728 INFO    ] Checking for camera pi updates...
[2026-06-19 06:25:28,763.763 INFO    ] 200
[2026-06-19 06:25:28,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:28,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:25:28,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:25:28,851.851 INFO    ] No camera update needed
[2026-06-19 06:25:28,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:25:28,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:25:28,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:25:28,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:25:30,911.911 INFO    ] ================================================
[2026-06-19 06:25:30,929.929 INFO    ] Launching Daemon at Fri Jun 19 06:25:30 IST 2026
[2026-06-19 06:25:31,023.023 INFO    ] ================================================
[2026-06-19 06:25:31,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:25:31
[2026-06-19 06:25:32,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:25:32,725.725 INFO    ] Initializing speech engine...
[2026-06-19 06:25:32,730.730 INFO    ] 2026-06-19 06:25:32
[2026-06-19 06:25:33,003.003 INFO    ] 2026-06-19 06:25:32
[2026-06-19 06:25:33,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:25:33,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:25:33,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:25:33,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:25:33,506.506 INFO    ] time= 19/06/2026 06:25:33
[2026-06-19 06:25:33,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:25:33,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:25:33,689.689 INFO    ] No existing commands found in stream
[2026-06-19 06:25:38,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:25:38,726.726 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 06:25:43,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:25:43,096.096 INFO    ] Checking for system updates...
[2026-06-19 06:25:43,134.134 INFO    ] 200
[2026-06-19 06:25:43,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:43,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:25:43,194.194 INFO    ] No update needed
[2026-06-19 06:25:43,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 06:25:43,232.232 INFO    ] 200
[2026-06-19 06:25:43,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:43,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:25:43,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:25:43,321.321 INFO    ] No camera update needed
[2026-06-19 06:25:43,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:25:43,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:25:43,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:25:43,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:25:45,381.381 INFO    ] ================================================
[2026-06-19 06:25:45,396.396 INFO    ] Launching Daemon at Fri Jun 19 06:25:45 IST 2026
[2026-06-19 06:25:45,407.407 INFO    ] ================================================
[2026-06-19 06:25:46,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:25:46
[2026-06-19 06:25:46,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:25:46,938.938 INFO    ] Initializing speech engine...
[2026-06-19 06:25:46,948.948 INFO    ] 2026-06-19 06:25:46
[2026-06-19 06:25:47,198.198 INFO    ] 2026-06-19 06:25:47
[2026-06-19 06:25:47,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:25:47,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:25:47,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:25:47,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:25:47,674.674 INFO    ] time= 19/06/2026 06:25:47
[2026-06-19 06:25:47,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:25:47,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:25:47,832.832 INFO    ] No existing commands found in stream
[2026-06-19 06:25:52,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:25:52,847.847 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 06:25:54,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:25:54,347.347 INFO    ] Checking for system updates...
[2026-06-19 06:25:54,384.384 INFO    ] 200
[2026-06-19 06:25:54,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:54,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:25:54,443.443 INFO    ] No update needed
[2026-06-19 06:25:54,446.446 INFO    ] Checking for camera pi updates...
[2026-06-19 06:25:54,482.482 INFO    ] 200
[2026-06-19 06:25:54,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:25:54,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:25:54,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:25:54,582.582 INFO    ] No camera update needed
[2026-06-19 06:25:54,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:25:54,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:25:54,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:25:54,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:25:56,643.643 INFO    ] ================================================
[2026-06-19 06:25:56,658.658 INFO    ] Launching Daemon at Fri Jun 19 06:25:56 IST 2026
[2026-06-19 06:25:56,668.668 INFO    ] ================================================
[2026-06-19 06:25:57,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:25:57
[2026-06-19 06:25:57,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:25:58,154.154 INFO    ] Initializing speech engine...
[2026-06-19 06:25:58,163.163 INFO    ] 2026-06-19 06:25:58
[2026-06-19 06:25:58,485.485 INFO    ] 2026-06-19 06:25:58
[2026-06-19 06:25:58,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:25:58,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:25:58,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:25:58,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:25:58,991.991 INFO    ] time= 19/06/2026 06:25:58
[2026-06-19 06:25:59,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:25:59,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:25:59,144.144 INFO    ] No existing commands found in stream
[2026-06-19 06:26:04,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:26:04,163.163 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 06:26:05,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:26:05,681.681 INFO    ] Checking for system updates...
[2026-06-19 06:26:05,719.719 INFO    ] 200
[2026-06-19 06:26:05,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:05,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:26:05,786.786 INFO    ] No update needed
[2026-06-19 06:26:05,790.790 INFO    ] Checking for camera pi updates...
[2026-06-19 06:26:05,825.825 INFO    ] 200
[2026-06-19 06:26:05,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:05,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:26:05,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:26:05,913.913 INFO    ] No camera update needed
[2026-06-19 06:26:05,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:26:05,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:26:05,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:26:05,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:26:07,971.971 INFO    ] ================================================
[2026-06-19 06:26:07,987.987 INFO    ] Launching Daemon at Fri Jun 19 06:26:07 IST 2026
[2026-06-19 06:26:08,999.999 INFO    ] ================================================
[2026-06-19 06:26:08,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:26:08
[2026-06-19 06:26:09,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:26:09,462.462 INFO    ] Initializing speech engine...
[2026-06-19 06:26:09,473.473 INFO    ] 2026-06-19 06:26:09
[2026-06-19 06:26:09,729.729 INFO    ] 2026-06-19 06:26:09
[2026-06-19 06:26:09,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:26:10,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:26:10,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:26:10,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:26:10,199.199 INFO    ] time= 19/06/2026 06:26:10
[2026-06-19 06:26:10,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:26:10,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:26:10,342.342 INFO    ] No existing commands found in stream
[2026-06-19 06:26:15,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:26:15,357.357 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 06:26:18,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:26:18,862.862 INFO    ] Checking for system updates...
[2026-06-19 06:26:18,899.899 INFO    ] 200
[2026-06-19 06:26:18,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:18,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:26:18,958.958 INFO    ] No update needed
[2026-06-19 06:26:18,961.961 INFO    ] Checking for camera pi updates...
[2026-06-19 06:26:18,996.996 INFO    ] 200
[2026-06-19 06:26:18,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:19,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:26:19,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:26:19,086.086 INFO    ] No camera update needed
[2026-06-19 06:26:19,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:26:19,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:26:19,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:26:19,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:26:21,146.146 INFO    ] ================================================
[2026-06-19 06:26:21,161.161 INFO    ] Launching Daemon at Fri Jun 19 06:26:21 IST 2026
[2026-06-19 06:26:21,171.171 INFO    ] ================================================
[2026-06-19 06:26:21,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:26:21
[2026-06-19 06:26:22,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:26:22,627.627 INFO    ] Initializing speech engine...
[2026-06-19 06:26:22,635.635 INFO    ] 2026-06-19 06:26:22
[2026-06-19 06:26:22,893.893 INFO    ] 2026-06-19 06:26:22
[2026-06-19 06:26:22,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:26:23,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:26:23,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:26:23,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:26:23,364.364 INFO    ] time= 19/06/2026 06:26:23
[2026-06-19 06:26:23,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:26:23,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:26:23,501.501 INFO    ] No existing commands found in stream
[2026-06-19 06:26:28,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:26:28,517.517 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 06:26:32,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:26:32,391.391 INFO    ] Checking for system updates...
[2026-06-19 06:26:32,430.430 INFO    ] 200
[2026-06-19 06:26:32,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:32,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:26:32,499.499 INFO    ] No update needed
[2026-06-19 06:26:32,502.502 INFO    ] Checking for camera pi updates...
[2026-06-19 06:26:32,538.538 INFO    ] 200
[2026-06-19 06:26:32,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:32,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:26:32,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:26:32,617.617 INFO    ] No camera update needed
[2026-06-19 06:26:32,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:26:32,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:26:32,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:26:32,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:26:34,679.679 INFO    ] ================================================
[2026-06-19 06:26:34,694.694 INFO    ] Launching Daemon at Fri Jun 19 06:26:34 IST 2026
[2026-06-19 06:26:34,704.704 INFO    ] ================================================
[2026-06-19 06:26:35,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:26:35
[2026-06-19 06:26:35,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:26:36,118.118 INFO    ] Initializing speech engine...
[2026-06-19 06:26:36,127.127 INFO    ] 2026-06-19 06:26:36
[2026-06-19 06:26:36,404.404 INFO    ] 2026-06-19 06:26:36
[2026-06-19 06:26:36,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:26:36,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:26:36,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:26:36,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:26:36,775.775 INFO    ] time= 19/06/2026 06:26:36
[2026-06-19 06:26:36,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:26:36,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:26:36,953.953 INFO    ] No existing commands found in stream
[2026-06-19 06:26:41,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:26:41,986.986 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 06:26:43,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:26:43,850.850 INFO    ] Checking for system updates...
[2026-06-19 06:26:43,887.887 INFO    ] 200
[2026-06-19 06:26:43,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:43,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:26:43,947.947 INFO    ] No update needed
[2026-06-19 06:26:43,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 06:26:43,985.985 INFO    ] 200
[2026-06-19 06:26:43,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:44,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:26:44,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:26:44,077.077 INFO    ] No camera update needed
[2026-06-19 06:26:44,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:26:44,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:26:44,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:26:44,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:26:46,136.136 INFO    ] ================================================
[2026-06-19 06:26:46,151.151 INFO    ] Launching Daemon at Fri Jun 19 06:26:46 IST 2026
[2026-06-19 06:26:46,162.162 INFO    ] ================================================
[2026-06-19 06:26:46,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:26:46
[2026-06-19 06:26:47,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:26:47,618.618 INFO    ] Initializing speech engine...
[2026-06-19 06:26:47,627.627 INFO    ] 2026-06-19 06:26:47
[2026-06-19 06:26:47,872.872 INFO    ] 2026-06-19 06:26:47
[2026-06-19 06:26:47,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:26:48,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:26:48,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:26:48,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:26:48,310.310 INFO    ] time= 19/06/2026 06:26:48
[2026-06-19 06:26:48,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:26:48,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:26:48,488.488 INFO    ] No existing commands found in stream
[2026-06-19 06:26:53,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:26:53,502.502 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 06:26:54,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:26:54,921.921 INFO    ] Checking for system updates...
[2026-06-19 06:26:54,958.958 INFO    ] 200
[2026-06-19 06:26:54,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:55,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:26:55,024.024 INFO    ] No update needed
[2026-06-19 06:26:55,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 06:26:55,062.062 INFO    ] 200
[2026-06-19 06:26:55,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:26:55,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:26:55,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:26:55,151.151 INFO    ] No camera update needed
[2026-06-19 06:26:55,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:26:55,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:26:55,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:26:55,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:26:57,209.209 INFO    ] ================================================
[2026-06-19 06:26:57,224.224 INFO    ] Launching Daemon at Fri Jun 19 06:26:57 IST 2026
[2026-06-19 06:26:57,235.235 INFO    ] ================================================
[2026-06-19 06:26:57,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:26:57
[2026-06-19 06:26:58,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:26:58,656.656 INFO    ] Initializing speech engine...
[2026-06-19 06:26:58,665.665 INFO    ] 2026-06-19 06:26:58
[2026-06-19 06:26:58,915.915 INFO    ] 2026-06-19 06:26:58
[2026-06-19 06:26:58,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:26:59,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:26:59,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:26:59,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:26:59,290.290 INFO    ] time= 19/06/2026 06:26:59
[2026-06-19 06:26:59,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:26:59,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:26:59,369.369 INFO    ] No existing commands found in stream
[2026-06-19 06:27:04,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:27:04,407.407 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 06:27:07,557.557 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:27:07,559.559 INFO    ] Checking for system updates...
[2026-06-19 06:27:07,599.599 INFO    ] 200
[2026-06-19 06:27:07,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:07,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:27:07,656.656 INFO    ] No update needed
[2026-06-19 06:27:07,658.658 INFO    ] Checking for camera pi updates...
[2026-06-19 06:27:07,692.692 INFO    ] 200
[2026-06-19 06:27:07,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:07,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:27:07,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:27:07,781.781 INFO    ] No camera update needed
[2026-06-19 06:27:07,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:27:07,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:27:07,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:27:07,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:27:09,836.836 INFO    ] ================================================
[2026-06-19 06:27:09,851.851 INFO    ] Launching Daemon at Fri Jun 19 06:27:09 IST 2026
[2026-06-19 06:27:09,862.862 INFO    ] ================================================
[2026-06-19 06:27:10,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:27:10
[2026-06-19 06:27:11,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:27:11,480.480 INFO    ] Initializing speech engine...
[2026-06-19 06:27:11,486.486 INFO    ] 2026-06-19 06:27:11
[2026-06-19 06:27:11,774.774 INFO    ] 2026-06-19 06:27:11
[2026-06-19 06:27:11,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:27:12,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:27:12,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:27:12,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:27:12,252.252 INFO    ] time= 19/06/2026 06:27:12
[2026-06-19 06:27:12,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:27:12,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:27:12,450.450 INFO    ] No existing commands found in stream
[2026-06-19 06:27:17,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:27:17,483.483 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 06:27:18,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:27:18,966.966 INFO    ] Checking for system updates...
[2026-06-19 06:27:19,004.004 INFO    ] 200
[2026-06-19 06:27:19,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:19,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:27:19,064.064 INFO    ] No update needed
[2026-06-19 06:27:19,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 06:27:19,101.101 INFO    ] 200
[2026-06-19 06:27:19,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:19,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:27:19,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:27:19,188.188 INFO    ] No camera update needed
[2026-06-19 06:27:19,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:27:19,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:27:19,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:27:19,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:27:21,244.244 INFO    ] ================================================
[2026-06-19 06:27:21,259.259 INFO    ] Launching Daemon at Fri Jun 19 06:27:21 IST 2026
[2026-06-19 06:27:21,270.270 INFO    ] ================================================
[2026-06-19 06:27:21,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:27:21
[2026-06-19 06:27:22,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:27:22,897.897 INFO    ] Initializing speech engine...
[2026-06-19 06:27:22,903.903 INFO    ] 2026-06-19 06:27:22
[2026-06-19 06:27:23,187.187 INFO    ] 2026-06-19 06:27:23
[2026-06-19 06:27:23,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:27:23,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:27:23,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:27:23,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:27:23,719.719 INFO    ] time= 19/06/2026 06:27:23
[2026-06-19 06:27:23,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:27:23,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:27:23,873.873 INFO    ] No existing commands found in stream
[2026-06-19 06:27:28,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:27:28,912.912 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 06:27:31,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:27:31,764.764 INFO    ] Checking for system updates...
[2026-06-19 06:27:31,807.807 INFO    ] 200
[2026-06-19 06:27:31,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:31,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:27:31,869.869 INFO    ] No update needed
[2026-06-19 06:27:31,871.871 INFO    ] Checking for camera pi updates...
[2026-06-19 06:27:31,907.907 INFO    ] 200
[2026-06-19 06:27:31,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:31,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:27:31,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:27:31,990.990 INFO    ] No camera update needed
[2026-06-19 06:27:31,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:27:31,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:27:32,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:27:32,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:27:34,049.049 INFO    ] ================================================
[2026-06-19 06:27:34,065.065 INFO    ] Launching Daemon at Fri Jun 19 06:27:34 IST 2026
[2026-06-19 06:27:34,076.076 INFO    ] ================================================
[2026-06-19 06:27:34,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:27:34
[2026-06-19 06:27:35,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:27:35,685.685 INFO    ] Initializing speech engine...
[2026-06-19 06:27:35,699.699 INFO    ] 2026-06-19 06:27:35
[2026-06-19 06:27:36,007.007 INFO    ] 2026-06-19 06:27:35
[2026-06-19 06:27:36,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:27:36,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:27:36,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:27:36,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:27:36,515.515 INFO    ] time= 19/06/2026 06:27:36
[2026-06-19 06:27:36,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:27:36,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:27:36,666.666 INFO    ] No existing commands found in stream
[2026-06-19 06:27:41,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:27:41,687.687 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 06:27:44,954.954 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:27:44,957.957 INFO    ] Checking for system updates...
[2026-06-19 06:27:44,995.995 INFO    ] 200
[2026-06-19 06:27:44,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:45,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:27:45,060.060 INFO    ] No update needed
[2026-06-19 06:27:45,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 06:27:45,100.100 INFO    ] 200
[2026-06-19 06:27:45,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:45,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:27:45,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:27:45,187.187 INFO    ] No camera update needed
[2026-06-19 06:27:45,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:27:45,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:27:45,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:27:45,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:27:47,251.251 INFO    ] ================================================
[2026-06-19 06:27:47,266.266 INFO    ] Launching Daemon at Fri Jun 19 06:27:47 IST 2026
[2026-06-19 06:27:47,277.277 INFO    ] ================================================
[2026-06-19 06:27:47,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:27:47
[2026-06-19 06:27:48,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:27:48,909.909 INFO    ] Initializing speech engine...
[2026-06-19 06:27:48,921.921 INFO    ] 2026-06-19 06:27:48
[2026-06-19 06:27:49,208.208 INFO    ] 2026-06-19 06:27:49
[2026-06-19 06:27:49,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:27:49,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:27:49,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:27:49,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:27:49,696.696 INFO    ] time= 19/06/2026 06:27:49
[2026-06-19 06:27:49,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:27:49,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:27:49,890.890 INFO    ] No existing commands found in stream
[2026-06-19 06:27:54,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:27:54,915.915 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 06:27:56,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:27:56,030.030 INFO    ] Checking for system updates...
[2026-06-19 06:27:56,072.072 INFO    ] 200
[2026-06-19 06:27:56,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:56,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:27:56,132.132 INFO    ] No update needed
[2026-06-19 06:27:56,134.134 INFO    ] Checking for camera pi updates...
[2026-06-19 06:27:56,168.168 INFO    ] 200
[2026-06-19 06:27:56,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:27:56,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:27:56,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:27:56,252.252 INFO    ] No camera update needed
[2026-06-19 06:27:56,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:27:56,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:27:56,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:27:56,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:27:58,307.307 INFO    ] ================================================
[2026-06-19 06:27:58,323.323 INFO    ] Launching Daemon at Fri Jun 19 06:27:58 IST 2026
[2026-06-19 06:27:58,333.333 INFO    ] ================================================
[2026-06-19 06:27:58,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:27:58
[2026-06-19 06:27:59,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:27:59,978.978 INFO    ] Initializing speech engine...
[2026-06-19 06:27:59,986.986 INFO    ] 2026-06-19 06:27:59
[2026-06-19 06:28:00,260.260 INFO    ] 2026-06-19 06:28:00
[2026-06-19 06:28:00,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:28:00,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:28:00,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:28:00,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:28:00,757.757 INFO    ] time= 19/06/2026 06:28:00
[2026-06-19 06:28:00,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:28:00,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:28:00,958.958 INFO    ] No existing commands found in stream
[2026-06-19 06:28:05,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:28:05,984.984 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 06:28:10,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:28:10,314.314 INFO    ] Checking for system updates...
[2026-06-19 06:28:10,350.350 INFO    ] 200
[2026-06-19 06:28:10,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:10,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:10,411.411 INFO    ] No update needed
[2026-06-19 06:28:10,414.414 INFO    ] Checking for camera pi updates...
[2026-06-19 06:28:10,448.448 INFO    ] 200
[2026-06-19 06:28:10,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:10,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:28:10,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:10,634.634 INFO    ] No camera update needed
[2026-06-19 06:28:10,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:28:10,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:28:10,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:28:10,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:28:12,689.689 INFO    ] ================================================
[2026-06-19 06:28:12,703.703 INFO    ] Launching Daemon at Fri Jun 19 06:28:12 IST 2026
[2026-06-19 06:28:12,714.714 INFO    ] ================================================
[2026-06-19 06:28:13,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:28:13
[2026-06-19 06:28:13,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:28:14,145.145 INFO    ] Initializing speech engine...
[2026-06-19 06:28:14,154.154 INFO    ] 2026-06-19 06:28:14
[2026-06-19 06:28:14,399.399 INFO    ] 2026-06-19 06:28:14
[2026-06-19 06:28:14,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:28:14,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:28:14,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:28:14,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:28:14,766.766 INFO    ] time= 19/06/2026 06:28:14
[2026-06-19 06:28:14,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:28:14,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:28:14,951.951 INFO    ] No existing commands found in stream
[2026-06-19 06:28:19,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:28:19,977.977 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 06:28:21,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:28:21,465.465 INFO    ] Checking for system updates...
[2026-06-19 06:28:21,505.505 INFO    ] 200
[2026-06-19 06:28:21,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:21,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:21,569.569 INFO    ] No update needed
[2026-06-19 06:28:21,571.571 INFO    ] Checking for camera pi updates...
[2026-06-19 06:28:21,604.604 INFO    ] 200
[2026-06-19 06:28:21,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:21,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:28:21,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:21,692.692 INFO    ] No camera update needed
[2026-06-19 06:28:21,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:28:21,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:28:21,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:28:21,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:28:23,751.751 INFO    ] ================================================
[2026-06-19 06:28:23,766.766 INFO    ] Launching Daemon at Fri Jun 19 06:28:23 IST 2026
[2026-06-19 06:28:23,777.777 INFO    ] ================================================
[2026-06-19 06:28:24,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:28:24
[2026-06-19 06:28:24,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:28:25,208.208 INFO    ] Initializing speech engine...
[2026-06-19 06:28:25,218.218 INFO    ] 2026-06-19 06:28:25
[2026-06-19 06:28:25,463.463 INFO    ] 2026-06-19 06:28:25
[2026-06-19 06:28:25,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:28:25,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:28:25,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:28:25,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:28:25,940.940 INFO    ] time= 19/06/2026 06:28:25
[2026-06-19 06:28:25,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:28:26,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:28:26,081.081 INFO    ] No existing commands found in stream
[2026-06-19 06:28:31,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:28:31,095.095 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-19 06:28:34,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:28:34,207.207 INFO    ] Checking for system updates...
[2026-06-19 06:28:34,243.243 INFO    ] 200
[2026-06-19 06:28:34,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:34,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:34,301.301 INFO    ] No update needed
[2026-06-19 06:28:34,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 06:28:34,337.337 INFO    ] 200
[2026-06-19 06:28:34,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:34,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:28:34,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:34,424.424 INFO    ] No camera update needed
[2026-06-19 06:28:34,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:28:34,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:28:34,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:28:34,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:28:36,482.482 INFO    ] ================================================
[2026-06-19 06:28:36,497.497 INFO    ] Launching Daemon at Fri Jun 19 06:28:36 IST 2026
[2026-06-19 06:28:36,508.508 INFO    ] ================================================
[2026-06-19 06:28:37,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:28:37
[2026-06-19 06:28:37,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:28:37,929.929 INFO    ] Initializing speech engine...
[2026-06-19 06:28:37,938.938 INFO    ] 2026-06-19 06:28:37
[2026-06-19 06:28:38,185.185 INFO    ] 2026-06-19 06:28:38
[2026-06-19 06:28:38,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:28:38,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:28:38,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:28:38,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:28:38,533.533 INFO    ] time= 19/06/2026 06:28:38
[2026-06-19 06:28:38,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:28:38,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:28:38,630.630 INFO    ] No existing commands found in stream
[2026-06-19 06:28:43,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:28:43,658.658 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 06:28:44,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:28:44,835.835 INFO    ] Checking for system updates...
[2026-06-19 06:28:44,872.872 INFO    ] 200
[2026-06-19 06:28:44,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:44,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:44,929.929 INFO    ] No update needed
[2026-06-19 06:28:44,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 06:28:44,965.965 INFO    ] 200
[2026-06-19 06:28:44,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:45,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:28:45,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:45,055.055 INFO    ] No camera update needed
[2026-06-19 06:28:45,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:28:45,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:28:45,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:28:45,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:28:47,111.111 INFO    ] ================================================
[2026-06-19 06:28:47,127.127 INFO    ] Launching Daemon at Fri Jun 19 06:28:47 IST 2026
[2026-06-19 06:28:47,137.137 INFO    ] ================================================
[2026-06-19 06:28:47,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:28:47
[2026-06-19 06:28:48,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:28:48,774.774 INFO    ] Initializing speech engine...
[2026-06-19 06:28:48,786.786 INFO    ] 2026-06-19 06:28:48
[2026-06-19 06:28:49,062.062 INFO    ] 2026-06-19 06:28:49
[2026-06-19 06:28:49,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:28:49,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:28:49,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:28:49,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:28:49,506.506 INFO    ] time= 19/06/2026 06:28:49
[2026-06-19 06:28:49,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:28:49,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:28:49,730.730 INFO    ] No existing commands found in stream
[2026-06-19 06:28:54,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:28:54,754.754 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 06:28:56,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:28:56,467.467 INFO    ] Checking for system updates...
[2026-06-19 06:28:56,503.503 INFO    ] 200
[2026-06-19 06:28:56,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:56,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:56,568.568 INFO    ] No update needed
[2026-06-19 06:28:56,571.571 INFO    ] Checking for camera pi updates...
[2026-06-19 06:28:56,609.609 INFO    ] 200
[2026-06-19 06:28:56,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:28:56,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:28:56,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:28:56,698.698 INFO    ] No camera update needed
[2026-06-19 06:28:56,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:28:56,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:28:56,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:28:56,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:28:58,757.757 INFO    ] ================================================
[2026-06-19 06:28:58,772.772 INFO    ] Launching Daemon at Fri Jun 19 06:28:58 IST 2026
[2026-06-19 06:28:58,783.783 INFO    ] ================================================
[2026-06-19 06:28:59,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:28:59
[2026-06-19 06:29:00,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:29:00,338.338 INFO    ] Initializing speech engine...
[2026-06-19 06:29:00,353.353 INFO    ] 2026-06-19 06:29:00
[2026-06-19 06:29:00,662.662 INFO    ] 2026-06-19 06:29:00
[2026-06-19 06:29:00,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:29:00,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:29:00,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:29:01,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:29:01,149.149 INFO    ] time= 19/06/2026 06:29:01
[2026-06-19 06:29:01,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:29:01,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:29:01,261.261 INFO    ] No existing commands found in stream
[2026-06-19 06:29:06,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:29:06,276.276 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 06:29:08,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:29:08,647.647 INFO    ] Checking for system updates...
[2026-06-19 06:29:08,684.684 INFO    ] 200
[2026-06-19 06:29:08,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:08,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:29:08,751.751 INFO    ] No update needed
[2026-06-19 06:29:08,754.754 INFO    ] Checking for camera pi updates...
[2026-06-19 06:29:08,809.809 INFO    ] 200
[2026-06-19 06:29:08,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:08,859.859 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:29:08,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:29:08,907.907 INFO    ] No camera update needed
[2026-06-19 06:29:08,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:29:08,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:29:08,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:29:08,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:29:10,967.967 INFO    ] ================================================
[2026-06-19 06:29:10,982.982 INFO    ] Launching Daemon at Fri Jun 19 06:29:10 IST 2026
[2026-06-19 06:29:10,992.992 INFO    ] ================================================
[2026-06-19 06:29:11,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:29:11
[2026-06-19 06:29:12,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:29:12,432.432 INFO    ] Initializing speech engine...
[2026-06-19 06:29:12,441.441 INFO    ] 2026-06-19 06:29:12
[2026-06-19 06:29:12,687.687 INFO    ] 2026-06-19 06:29:12
[2026-06-19 06:29:12,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:29:12,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:29:12,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:29:13,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:29:13,166.166 INFO    ] time= 19/06/2026 06:29:13
[2026-06-19 06:29:13,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:29:13,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:29:13,364.364 INFO    ] No existing commands found in stream
[2026-06-19 06:29:18,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:29:18,402.402 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 06:29:21,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:29:21,300.300 INFO    ] Checking for system updates...
[2026-06-19 06:29:21,336.336 INFO    ] 200
[2026-06-19 06:29:21,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:21,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:29:21,400.400 INFO    ] No update needed
[2026-06-19 06:29:21,402.402 INFO    ] Checking for camera pi updates...
[2026-06-19 06:29:21,440.440 INFO    ] 200
[2026-06-19 06:29:21,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:21,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:29:21,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:29:21,529.529 INFO    ] No camera update needed
[2026-06-19 06:29:21,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:29:21,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:29:21,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:29:21,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:29:23,587.587 INFO    ] ================================================
[2026-06-19 06:29:23,603.603 INFO    ] Launching Daemon at Fri Jun 19 06:29:23 IST 2026
[2026-06-19 06:29:23,613.613 INFO    ] ================================================
[2026-06-19 06:29:24,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:29:24
[2026-06-19 06:29:24,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:29:25,235.235 INFO    ] Initializing speech engine...
[2026-06-19 06:29:25,241.241 INFO    ] 2026-06-19 06:29:25
[2026-06-19 06:29:25,552.552 INFO    ] 2026-06-19 06:29:25
[2026-06-19 06:29:25,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:29:25,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:29:25,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:29:26,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:29:26,062.062 INFO    ] time= 19/06/2026 06:29:26
[2026-06-19 06:29:26,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:29:26,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:29:26,218.218 INFO    ] No existing commands found in stream
[2026-06-19 06:29:31,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:29:31,233.233 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 06:29:32,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:29:32,109.109 INFO    ] Checking for system updates...
[2026-06-19 06:29:32,155.155 INFO    ] 200
[2026-06-19 06:29:32,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:32,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:29:32,232.232 INFO    ] No update needed
[2026-06-19 06:29:32,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 06:29:32,278.278 INFO    ] 200
[2026-06-19 06:29:32,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:32,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:29:32,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:29:32,369.369 INFO    ] No camera update needed
[2026-06-19 06:29:32,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:29:32,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:29:32,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:29:32,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:29:34,433.433 INFO    ] ================================================
[2026-06-19 06:29:34,448.448 INFO    ] Launching Daemon at Fri Jun 19 06:29:34 IST 2026
[2026-06-19 06:29:34,459.459 INFO    ] ================================================
[2026-06-19 06:29:35,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:29:35
[2026-06-19 06:29:35,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:29:35,858.858 INFO    ] Initializing speech engine...
[2026-06-19 06:29:35,880.880 INFO    ] 2026-06-19 06:29:35
[2026-06-19 06:29:36,132.132 INFO    ] 2026-06-19 06:29:36
[2026-06-19 06:29:36,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:29:36,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:29:36,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:29:36,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:29:36,582.582 INFO    ] time= 19/06/2026 06:29:36
[2026-06-19 06:29:36,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:29:36,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:29:36,750.750 INFO    ] No existing commands found in stream
[2026-06-19 06:29:41,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:29:41,764.764 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 06:29:43,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:29:43,079.079 INFO    ] Checking for system updates...
[2026-06-19 06:29:43,116.116 INFO    ] 200
[2026-06-19 06:29:43,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:43,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:29:43,174.174 INFO    ] No update needed
[2026-06-19 06:29:43,177.177 INFO    ] Checking for camera pi updates...
[2026-06-19 06:29:43,211.211 INFO    ] 200
[2026-06-19 06:29:43,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:43,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:29:43,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:29:43,298.298 INFO    ] No camera update needed
[2026-06-19 06:29:43,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:29:43,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:29:43,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:29:43,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:29:45,354.354 INFO    ] ================================================
[2026-06-19 06:29:45,369.369 INFO    ] Launching Daemon at Fri Jun 19 06:29:45 IST 2026
[2026-06-19 06:29:45,380.380 INFO    ] ================================================
[2026-06-19 06:29:46,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:29:46
[2026-06-19 06:29:46,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:29:47,021.021 INFO    ] Initializing speech engine...
[2026-06-19 06:29:47,030.030 INFO    ] 2026-06-19 06:29:47
[2026-06-19 06:29:47,316.316 INFO    ] 2026-06-19 06:29:47
[2026-06-19 06:29:47,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:29:47,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:29:47,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:29:47,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:29:47,776.776 INFO    ] time= 19/06/2026 06:29:47
[2026-06-19 06:29:47,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:29:47,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:29:47,922.922 INFO    ] No existing commands found in stream
[2026-06-19 06:29:52,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:29:52,940.940 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 06:29:56,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:29:56,343.343 INFO    ] Checking for system updates...
[2026-06-19 06:29:56,388.388 INFO    ] 200
[2026-06-19 06:29:56,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:56,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:29:56,446.446 INFO    ] No update needed
[2026-06-19 06:29:56,448.448 INFO    ] Checking for camera pi updates...
[2026-06-19 06:29:56,487.487 INFO    ] 200
[2026-06-19 06:29:56,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:29:56,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:29:56,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:29:56,579.579 INFO    ] No camera update needed
[2026-06-19 06:29:56,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:29:56,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:29:56,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:29:56,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:29:58,635.635 INFO    ] ================================================
[2026-06-19 06:29:58,651.651 INFO    ] Launching Daemon at Fri Jun 19 06:29:58 IST 2026
[2026-06-19 06:29:58,662.662 INFO    ] ================================================
[2026-06-19 06:29:59,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:29:59
[2026-06-19 06:29:59,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:30:00,084.084 INFO    ] Initializing speech engine...
[2026-06-19 06:30:00,092.092 INFO    ] 2026-06-19 06:30:00
[2026-06-19 06:30:00,396.396 INFO    ] 2026-06-19 06:30:00
[2026-06-19 06:30:00,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:30:00,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:30:00,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:30:00,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:30:00,790.790 INFO    ] time= 19/06/2026 06:30:00
[2026-06-19 06:30:00,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:30:00,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:30:00,918.918 INFO    ] No existing commands found in stream
[2026-06-19 06:30:05,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:30:05,934.934 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 06:30:09,866.866 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:30:09,869.869 INFO    ] Checking for system updates...
[2026-06-19 06:30:09,906.906 INFO    ] 200
[2026-06-19 06:30:09,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:09,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:30:09,971.971 INFO    ] No update needed
[2026-06-19 06:30:09,973.973 INFO    ] Checking for camera pi updates...
[2026-06-19 06:30:10,007.007 INFO    ] 200
[2026-06-19 06:30:10,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:10,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:30:10,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:30:10,093.093 INFO    ] No camera update needed
[2026-06-19 06:30:10,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:30:10,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:30:10,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:30:10,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:30:12,149.149 INFO    ] ================================================
[2026-06-19 06:30:12,164.164 INFO    ] Launching Daemon at Fri Jun 19 06:30:12 IST 2026
[2026-06-19 06:30:12,175.175 INFO    ] ================================================
[2026-06-19 06:30:12,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:30:12
[2026-06-19 06:30:13,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:30:13,589.589 INFO    ] Initializing speech engine...
[2026-06-19 06:30:13,597.597 INFO    ] 2026-06-19 06:30:13
[2026-06-19 06:30:13,872.872 INFO    ] 2026-06-19 06:30:13
[2026-06-19 06:30:13,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:30:14,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:30:14,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:30:14,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:30:14,212.212 INFO    ] time= 19/06/2026 06:30:14
[2026-06-19 06:30:14,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:30:14,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:30:14,322.322 INFO    ] No existing commands found in stream
[2026-06-19 06:30:19,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:30:19,342.342 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 06:30:19,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:30:19,791.791 INFO    ] Checking for system updates...
[2026-06-19 06:30:19,827.827 INFO    ] 200
[2026-06-19 06:30:19,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:19,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:30:19,887.887 INFO    ] No update needed
[2026-06-19 06:30:19,890.890 INFO    ] Checking for camera pi updates...
[2026-06-19 06:30:19,930.930 INFO    ] 200
[2026-06-19 06:30:19,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:19,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:30:20,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:30:20,133.133 INFO    ] No camera update needed
[2026-06-19 06:30:20,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:30:20,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:30:20,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:30:20,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:30:22,194.194 INFO    ] ================================================
[2026-06-19 06:30:22,209.209 INFO    ] Launching Daemon at Fri Jun 19 06:30:22 IST 2026
[2026-06-19 06:30:22,221.221 INFO    ] ================================================
[2026-06-19 06:30:22,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:30:22
[2026-06-19 06:30:23,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:30:23,726.726 INFO    ] Initializing speech engine...
[2026-06-19 06:30:23,736.736 INFO    ] 2026-06-19 06:30:23
[2026-06-19 06:30:24,039.039 INFO    ] 2026-06-19 06:30:24
[2026-06-19 06:30:24,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:30:24,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:30:24,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:30:24,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:30:24,546.546 INFO    ] time= 19/06/2026 06:30:24
[2026-06-19 06:30:24,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:30:24,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:30:24,682.682 INFO    ] No existing commands found in stream
[2026-06-19 06:30:29,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:30:29,712.712 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 06:30:31,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:30:31,386.386 INFO    ] Checking for system updates...
[2026-06-19 06:30:31,437.437 INFO    ] 200
[2026-06-19 06:30:31,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:31,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:30:31,503.503 INFO    ] No update needed
[2026-06-19 06:30:31,506.506 INFO    ] Checking for camera pi updates...
[2026-06-19 06:30:31,543.543 INFO    ] 200
[2026-06-19 06:30:31,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:31,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:30:31,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:30:31,638.638 INFO    ] No camera update needed
[2026-06-19 06:30:31,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:30:31,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:30:31,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:30:31,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:30:33,700.700 INFO    ] ================================================
[2026-06-19 06:30:33,717.717 INFO    ] Launching Daemon at Fri Jun 19 06:30:33 IST 2026
[2026-06-19 06:30:33,728.728 INFO    ] ================================================
[2026-06-19 06:30:34,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:30:34
[2026-06-19 06:30:34,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:30:35,155.155 INFO    ] Initializing speech engine...
[2026-06-19 06:30:35,163.163 INFO    ] 2026-06-19 06:30:35
[2026-06-19 06:30:35,412.412 INFO    ] 2026-06-19 06:30:35
[2026-06-19 06:30:35,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:30:35,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:30:35,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:30:35,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:30:35,787.787 INFO    ] time= 19/06/2026 06:30:35
[2026-06-19 06:30:35,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:30:35,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:30:35,954.954 INFO    ] No existing commands found in stream
[2026-06-19 06:30:40,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:30:40,987.987 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 06:30:42,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:30:42,082.082 INFO    ] Checking for system updates...
[2026-06-19 06:30:42,120.120 INFO    ] 200
[2026-06-19 06:30:42,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:42,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:30:42,181.181 INFO    ] No update needed
[2026-06-19 06:30:42,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 06:30:42,223.223 INFO    ] 200
[2026-06-19 06:30:42,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:42,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:30:42,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:30:42,317.317 INFO    ] No camera update needed
[2026-06-19 06:30:42,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:30:42,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:30:42,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:30:42,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:30:44,377.377 INFO    ] ================================================
[2026-06-19 06:30:44,393.393 INFO    ] Launching Daemon at Fri Jun 19 06:30:44 IST 2026
[2026-06-19 06:30:44,405.405 INFO    ] ================================================
[2026-06-19 06:30:44,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:30:44
[2026-06-19 06:30:45,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:30:45,849.849 INFO    ] Initializing speech engine...
[2026-06-19 06:30:45,858.858 INFO    ] 2026-06-19 06:30:45
[2026-06-19 06:30:46,115.115 INFO    ] 2026-06-19 06:30:46
[2026-06-19 06:30:46,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:30:46,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:30:46,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:30:46,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:30:46,550.550 INFO    ] time= 19/06/2026 06:30:46
[2026-06-19 06:30:46,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:30:46,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:30:46,723.723 INFO    ] No existing commands found in stream
[2026-06-19 06:30:51,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:30:51,738.738 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 06:30:53,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:30:53,023.023 INFO    ] Checking for system updates...
[2026-06-19 06:30:53,061.061 INFO    ] 200
[2026-06-19 06:30:53,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:53,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:30:53,121.121 INFO    ] No update needed
[2026-06-19 06:30:53,124.124 INFO    ] Checking for camera pi updates...
[2026-06-19 06:30:53,160.160 INFO    ] 200
[2026-06-19 06:30:53,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:30:53,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:30:53,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:30:53,254.254 INFO    ] No camera update needed
[2026-06-19 06:30:53,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:30:53,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:30:53,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:30:53,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:30:55,314.314 INFO    ] ================================================
[2026-06-19 06:30:55,330.330 INFO    ] Launching Daemon at Fri Jun 19 06:30:55 IST 2026
[2026-06-19 06:30:55,342.342 INFO    ] ================================================
[2026-06-19 06:30:55,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:30:55
[2026-06-19 06:30:56,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:30:56,768.768 INFO    ] Initializing speech engine...
[2026-06-19 06:30:56,778.778 INFO    ] 2026-06-19 06:30:56
[2026-06-19 06:30:57,023.023 INFO    ] 2026-06-19 06:30:57
[2026-06-19 06:30:57,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:30:57,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:30:57,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:30:57,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:30:57,474.474 INFO    ] time= 19/06/2026 06:30:57
[2026-06-19 06:30:57,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:30:57,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:30:57,636.636 INFO    ] No existing commands found in stream
[2026-06-19 06:31:02,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:31:02,651.651 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 06:31:05,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:31:05,748.748 INFO    ] Checking for system updates...
[2026-06-19 06:31:05,790.790 INFO    ] 200
[2026-06-19 06:31:05,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:05,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:31:05,853.853 INFO    ] No update needed
[2026-06-19 06:31:05,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 06:31:05,896.896 INFO    ] 200
[2026-06-19 06:31:05,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:05,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:31:05,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:31:05,988.988 INFO    ] No camera update needed
[2026-06-19 06:31:05,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:31:05,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:31:05,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:31:06,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:31:08,049.049 INFO    ] ================================================
[2026-06-19 06:31:08,065.065 INFO    ] Launching Daemon at Fri Jun 19 06:31:08 IST 2026
[2026-06-19 06:31:08,077.077 INFO    ] ================================================
[2026-06-19 06:31:08,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:31:08
[2026-06-19 06:31:09,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:31:09,731.731 INFO    ] Initializing speech engine...
[2026-06-19 06:31:09,740.740 INFO    ] 2026-06-19 06:31:09
[2026-06-19 06:31:10,027.027 INFO    ] 2026-06-19 06:31:10
[2026-06-19 06:31:10,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:31:10,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:31:10,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:31:10,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:31:10,479.479 INFO    ] time= 19/06/2026 06:31:10
[2026-06-19 06:31:10,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:31:10,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:31:10,696.696 INFO    ] No existing commands found in stream
[2026-06-19 06:31:15,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:31:15,725.725 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 06:31:20,641.641 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:31:20,644.644 INFO    ] Checking for system updates...
[2026-06-19 06:31:20,682.682 INFO    ] 200
[2026-06-19 06:31:20,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:20,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:31:20,743.743 INFO    ] No update needed
[2026-06-19 06:31:20,746.746 INFO    ] Checking for camera pi updates...
[2026-06-19 06:31:20,781.781 INFO    ] 200
[2026-06-19 06:31:20,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:20,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:31:20,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:31:20,868.868 INFO    ] No camera update needed
[2026-06-19 06:31:20,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:31:20,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:31:20,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:31:20,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:31:22,924.924 INFO    ] ================================================
[2026-06-19 06:31:22,940.940 INFO    ] Launching Daemon at Fri Jun 19 06:31:22 IST 2026
[2026-06-19 06:31:22,951.951 INFO    ] ================================================
[2026-06-19 06:31:23,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:31:23
[2026-06-19 06:31:24,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:31:24,386.386 INFO    ] Initializing speech engine...
[2026-06-19 06:31:24,395.395 INFO    ] 2026-06-19 06:31:24
[2026-06-19 06:31:24,643.643 INFO    ] 2026-06-19 06:31:24
[2026-06-19 06:31:24,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:31:24,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:31:24,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:31:25,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:31:25,095.095 INFO    ] time= 19/06/2026 06:31:25
[2026-06-19 06:31:25,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:31:25,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:31:25,258.258 INFO    ] No existing commands found in stream
[2026-06-19 06:31:30,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:31:30,272.272 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 06:31:31,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:31:31,572.572 INFO    ] Checking for system updates...
[2026-06-19 06:31:31,609.609 INFO    ] 200
[2026-06-19 06:31:31,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:31,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:31:31,666.666 INFO    ] No update needed
[2026-06-19 06:31:31,668.668 INFO    ] Checking for camera pi updates...
[2026-06-19 06:31:31,706.706 INFO    ] 200
[2026-06-19 06:31:31,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:31,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:31:31,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:31:31,785.785 INFO    ] No camera update needed
[2026-06-19 06:31:31,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:31:31,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:31:31,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:31:31,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:31:33,841.841 INFO    ] ================================================
[2026-06-19 06:31:33,856.856 INFO    ] Launching Daemon at Fri Jun 19 06:31:33 IST 2026
[2026-06-19 06:31:33,867.867 INFO    ] ================================================
[2026-06-19 06:31:34,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:31:34
[2026-06-19 06:31:35,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:31:35,462.462 INFO    ] Initializing speech engine...
[2026-06-19 06:31:35,470.470 INFO    ] 2026-06-19 06:31:35
[2026-06-19 06:31:35,740.740 INFO    ] 2026-06-19 06:31:35
[2026-06-19 06:31:35,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:31:36,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:31:36,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:31:36,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:31:36,215.215 INFO    ] time= 19/06/2026 06:31:36
[2026-06-19 06:31:36,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:31:36,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:31:36,358.358 INFO    ] No existing commands found in stream
[2026-06-19 06:31:41,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:31:41,391.391 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 06:31:41,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:31:41,796.796 INFO    ] Checking for system updates...
[2026-06-19 06:31:41,835.835 INFO    ] 200
[2026-06-19 06:31:41,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:41,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:31:41,899.899 INFO    ] No update needed
[2026-06-19 06:31:41,902.902 INFO    ] Checking for camera pi updates...
[2026-06-19 06:31:41,937.937 INFO    ] 200
[2026-06-19 06:31:41,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:41,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:31:42,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:31:42,022.022 INFO    ] No camera update needed
[2026-06-19 06:31:42,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:31:42,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:31:42,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:31:42,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:31:44,078.078 INFO    ] ================================================
[2026-06-19 06:31:44,093.093 INFO    ] Launching Daemon at Fri Jun 19 06:31:44 IST 2026
[2026-06-19 06:31:44,104.104 INFO    ] ================================================
[2026-06-19 06:31:44,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:31:44
[2026-06-19 06:31:45,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:31:45,668.668 INFO    ] Initializing speech engine...
[2026-06-19 06:31:45,691.691 INFO    ] 2026-06-19 06:31:45
[2026-06-19 06:31:45,961.961 INFO    ] 2026-06-19 06:31:45
[2026-06-19 06:31:46,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:31:46,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:31:46,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:31:46,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:31:46,425.425 INFO    ] time= 19/06/2026 06:31:46
[2026-06-19 06:31:46,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:31:46,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:31:46,594.594 INFO    ] No existing commands found in stream
[2026-06-19 06:31:51,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:31:51,610.610 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 06:31:55,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:31:55,496.496 INFO    ] Checking for system updates...
[2026-06-19 06:31:55,536.536 INFO    ] 200
[2026-06-19 06:31:55,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:55,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:31:55,594.594 INFO    ] No update needed
[2026-06-19 06:31:55,597.597 INFO    ] Checking for camera pi updates...
[2026-06-19 06:31:55,630.630 INFO    ] 200
[2026-06-19 06:31:55,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:31:55,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:31:55,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:31:55,719.719 INFO    ] No camera update needed
[2026-06-19 06:31:55,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:31:55,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:31:55,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:31:55,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:31:57,775.775 INFO    ] ================================================
[2026-06-19 06:31:57,790.790 INFO    ] Launching Daemon at Fri Jun 19 06:31:57 IST 2026
[2026-06-19 06:31:57,802.802 INFO    ] ================================================
[2026-06-19 06:31:58,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:31:58
[2026-06-19 06:31:59,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:31:59,413.413 INFO    ] Initializing speech engine...
[2026-06-19 06:31:59,422.422 INFO    ] 2026-06-19 06:31:59
[2026-06-19 06:31:59,692.692 INFO    ] 2026-06-19 06:31:59
[2026-06-19 06:31:59,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:31:59,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:31:59,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:32:00,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:32:00,174.174 INFO    ] time= 19/06/2026 06:32:00
[2026-06-19 06:32:00,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:32:00,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:32:00,388.388 INFO    ] No existing commands found in stream
[2026-06-19 06:32:05,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:32:05,420.420 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 06:32:08,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:32:08,857.857 INFO    ] Checking for system updates...
[2026-06-19 06:32:08,899.899 INFO    ] 200
[2026-06-19 06:32:08,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:08,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:32:08,956.956 INFO    ] No update needed
[2026-06-19 06:32:08,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 06:32:08,993.993 INFO    ] 200
[2026-06-19 06:32:08,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:09,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:32:09,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:32:09,082.082 INFO    ] No camera update needed
[2026-06-19 06:32:09,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:32:09,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:32:09,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:32:09,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:32:11,137.137 INFO    ] ================================================
[2026-06-19 06:32:11,152.152 INFO    ] Launching Daemon at Fri Jun 19 06:32:11 IST 2026
[2026-06-19 06:32:11,164.164 INFO    ] ================================================
[2026-06-19 06:32:11,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:32:11
[2026-06-19 06:32:12,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:32:12,813.813 INFO    ] Initializing speech engine...
[2026-06-19 06:32:12,824.824 INFO    ] 2026-06-19 06:32:12
[2026-06-19 06:32:13,106.106 INFO    ] 2026-06-19 06:32:13
[2026-06-19 06:32:13,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:32:13,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:32:13,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:32:13,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:32:13,666.666 INFO    ] time= 19/06/2026 06:32:13
[2026-06-19 06:32:13,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:32:13,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:32:13,796.796 INFO    ] No existing commands found in stream
[2026-06-19 06:32:18,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:32:18,824.824 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 06:32:20,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:32:20,028.028 INFO    ] Checking for system updates...
[2026-06-19 06:32:20,068.068 INFO    ] 200
[2026-06-19 06:32:20,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:20,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:32:20,133.133 INFO    ] No update needed
[2026-06-19 06:32:20,135.135 INFO    ] Checking for camera pi updates...
[2026-06-19 06:32:20,173.173 INFO    ] 200
[2026-06-19 06:32:20,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:20,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:32:20,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:32:20,248.248 INFO    ] No camera update needed
[2026-06-19 06:32:20,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:32:20,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:32:20,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:32:20,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:32:22,303.303 INFO    ] ================================================
[2026-06-19 06:32:22,319.319 INFO    ] Launching Daemon at Fri Jun 19 06:32:22 IST 2026
[2026-06-19 06:32:22,330.330 INFO    ] ================================================
[2026-06-19 06:32:22,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:32:22
[2026-06-19 06:32:23,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:32:23,748.748 INFO    ] Initializing speech engine...
[2026-06-19 06:32:23,756.756 INFO    ] 2026-06-19 06:32:23
[2026-06-19 06:32:24,061.061 INFO    ] 2026-06-19 06:32:24
[2026-06-19 06:32:24,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:32:24,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:32:24,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:32:24,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:32:24,448.448 INFO    ] time= 19/06/2026 06:32:24
[2026-06-19 06:32:24,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:32:24,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:32:24,576.576 INFO    ] No existing commands found in stream
[2026-06-19 06:32:29,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:32:29,588.588 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 06:32:31,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:32:31,317.317 INFO    ] Checking for system updates...
[2026-06-19 06:32:31,355.355 INFO    ] 200
[2026-06-19 06:32:31,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:31,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:32:31,414.414 INFO    ] No update needed
[2026-06-19 06:32:31,417.417 INFO    ] Checking for camera pi updates...
[2026-06-19 06:32:31,454.454 INFO    ] 200
[2026-06-19 06:32:31,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:31,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:32:31,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:32:31,650.650 INFO    ] No camera update needed
[2026-06-19 06:32:31,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:32:31,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:32:31,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:32:31,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:32:33,706.706 INFO    ] ================================================
[2026-06-19 06:32:33,722.722 INFO    ] Launching Daemon at Fri Jun 19 06:32:33 IST 2026
[2026-06-19 06:32:33,733.733 INFO    ] ================================================
[2026-06-19 06:32:34,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:32:34
[2026-06-19 06:32:35,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:32:35,373.373 INFO    ] Initializing speech engine...
[2026-06-19 06:32:35,387.387 INFO    ] 2026-06-19 06:32:35
[2026-06-19 06:32:35,668.668 INFO    ] 2026-06-19 06:32:35
[2026-06-19 06:32:35,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:32:35,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:32:35,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:32:36,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:32:36,141.141 INFO    ] time= 19/06/2026 06:32:36
[2026-06-19 06:32:36,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:32:36,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:32:36,342.342 INFO    ] No existing commands found in stream
[2026-06-19 06:32:41,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:32:41,374.374 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 06:32:41,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:32:41,809.809 INFO    ] Checking for system updates...
[2026-06-19 06:32:41,850.850 INFO    ] 200
[2026-06-19 06:32:41,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:41,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:32:41,909.909 INFO    ] No update needed
[2026-06-19 06:32:41,912.912 INFO    ] Checking for camera pi updates...
[2026-06-19 06:32:41,947.947 INFO    ] 200
[2026-06-19 06:32:41,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:41,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:32:42,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:32:42,040.040 INFO    ] No camera update needed
[2026-06-19 06:32:42,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:32:42,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:32:42,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:32:42,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:32:44,095.095 INFO    ] ================================================
[2026-06-19 06:32:44,112.112 INFO    ] Launching Daemon at Fri Jun 19 06:32:44 IST 2026
[2026-06-19 06:32:44,123.123 INFO    ] ================================================
[2026-06-19 06:32:44,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:32:44
[2026-06-19 06:32:45,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:32:45,737.737 INFO    ] Initializing speech engine...
[2026-06-19 06:32:45,751.751 INFO    ] 2026-06-19 06:32:45
[2026-06-19 06:32:46,043.043 INFO    ] 2026-06-19 06:32:46
[2026-06-19 06:32:46,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:32:46,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:32:46,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:32:46,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:32:46,398.398 INFO    ] time= 19/06/2026 06:32:46
[2026-06-19 06:32:46,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:32:46,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:32:46,476.476 INFO    ] No existing commands found in stream
[2026-06-19 06:32:51,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:32:51,491.491 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 06:32:52,216.216 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:32:52,218.218 INFO    ] Checking for system updates...
[2026-06-19 06:32:52,259.259 INFO    ] 200
[2026-06-19 06:32:52,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:52,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:32:52,316.316 INFO    ] No update needed
[2026-06-19 06:32:52,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 06:32:52,353.353 INFO    ] 200
[2026-06-19 06:32:52,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:32:52,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:32:52,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:32:52,440.440 INFO    ] No camera update needed
[2026-06-19 06:32:52,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:32:52,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:32:52,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:32:52,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:32:54,497.497 INFO    ] ================================================
[2026-06-19 06:32:54,513.513 INFO    ] Launching Daemon at Fri Jun 19 06:32:54 IST 2026
[2026-06-19 06:32:54,525.525 INFO    ] ================================================
[2026-06-19 06:32:55,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:32:55
[2026-06-19 06:32:55,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:32:56,138.138 INFO    ] Initializing speech engine...
[2026-06-19 06:32:56,146.146 INFO    ] 2026-06-19 06:32:56
[2026-06-19 06:32:56,430.430 INFO    ] 2026-06-19 06:32:56
[2026-06-19 06:32:56,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:32:56,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:32:56,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:32:56,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:32:56,918.918 INFO    ] time= 19/06/2026 06:32:56
[2026-06-19 06:32:56,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:32:56,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:32:57,094.094 INFO    ] No existing commands found in stream
[2026-06-19 06:33:02,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:33:02,131.131 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-19 06:33:05,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:33:05,497.497 INFO    ] Checking for system updates...
[2026-06-19 06:33:05,539.539 INFO    ] 200
[2026-06-19 06:33:05,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:05,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:33:05,604.604 INFO    ] No update needed
[2026-06-19 06:33:05,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 06:33:05,646.646 INFO    ] 200
[2026-06-19 06:33:05,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:05,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:33:05,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:33:05,746.746 INFO    ] No camera update needed
[2026-06-19 06:33:05,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:33:05,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:33:05,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:33:05,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:33:07,806.806 INFO    ] ================================================
[2026-06-19 06:33:07,822.822 INFO    ] Launching Daemon at Fri Jun 19 06:33:07 IST 2026
[2026-06-19 06:33:07,834.834 INFO    ] ================================================
[2026-06-19 06:33:08,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:33:08
[2026-06-19 06:33:09,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:33:09,282.282 INFO    ] Initializing speech engine...
[2026-06-19 06:33:09,291.291 INFO    ] 2026-06-19 06:33:09
[2026-06-19 06:33:09,554.554 INFO    ] 2026-06-19 06:33:09
[2026-06-19 06:33:09,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:33:09,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:33:09,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:33:09,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:33:10,029.029 INFO    ] time= 19/06/2026 06:33:09
[2026-06-19 06:33:10,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:33:10,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:33:10,178.178 INFO    ] No existing commands found in stream
[2026-06-19 06:33:15,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:33:15,212.212 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 06:33:15,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:33:15,883.883 INFO    ] Checking for system updates...
[2026-06-19 06:33:15,918.918 INFO    ] 200
[2026-06-19 06:33:15,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:15,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:33:15,982.982 INFO    ] No update needed
[2026-06-19 06:33:15,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 06:33:16,022.022 INFO    ] 200
[2026-06-19 06:33:16,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:16,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:33:16,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:33:16,117.117 INFO    ] No camera update needed
[2026-06-19 06:33:16,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:33:16,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:33:16,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:33:16,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:33:18,174.174 INFO    ] ================================================
[2026-06-19 06:33:18,189.189 INFO    ] Launching Daemon at Fri Jun 19 06:33:18 IST 2026
[2026-06-19 06:33:18,201.201 INFO    ] ================================================
[2026-06-19 06:33:18,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:33:18
[2026-06-19 06:33:19,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:33:19,803.803 INFO    ] Initializing speech engine...
[2026-06-19 06:33:19,817.817 INFO    ] 2026-06-19 06:33:19
[2026-06-19 06:33:20,075.075 INFO    ] 2026-06-19 06:33:20
[2026-06-19 06:33:20,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:33:20,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:33:20,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:33:20,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:33:20,446.446 INFO    ] time= 19/06/2026 06:33:20
[2026-06-19 06:33:20,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:33:20,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:33:20,570.570 INFO    ] No existing commands found in stream
[2026-06-19 06:33:25,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:33:25,585.585 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-19 06:33:30,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:33:30,268.268 INFO    ] Checking for system updates...
[2026-06-19 06:33:30,308.308 INFO    ] 200
[2026-06-19 06:33:30,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:30,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:33:30,365.365 INFO    ] No update needed
[2026-06-19 06:33:30,368.368 INFO    ] Checking for camera pi updates...
[2026-06-19 06:33:30,402.402 INFO    ] 200
[2026-06-19 06:33:30,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:30,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:33:30,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:33:30,490.490 INFO    ] No camera update needed
[2026-06-19 06:33:30,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:33:30,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:33:30,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:33:30,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:33:32,547.547 INFO    ] ================================================
[2026-06-19 06:33:32,564.564 INFO    ] Launching Daemon at Fri Jun 19 06:33:32 IST 2026
[2026-06-19 06:33:32,576.576 INFO    ] ================================================
[2026-06-19 06:33:33,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:33:33
[2026-06-19 06:33:33,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:33:34,045.045 INFO    ] Initializing speech engine...
[2026-06-19 06:33:34,055.055 INFO    ] 2026-06-19 06:33:34
[2026-06-19 06:33:34,316.316 INFO    ] 2026-06-19 06:33:34
[2026-06-19 06:33:34,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:33:34,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:33:34,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:33:34,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:33:34,778.778 INFO    ] time= 19/06/2026 06:33:34
[2026-06-19 06:33:34,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:33:34,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:33:34,951.951 INFO    ] No existing commands found in stream
[2026-06-19 06:33:39,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:33:39,980.980 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 06:33:40,665.665 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:33:40,668.668 INFO    ] Checking for system updates...
[2026-06-19 06:33:40,704.704 INFO    ] 200
[2026-06-19 06:33:40,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:40,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:33:40,762.762 INFO    ] No update needed
[2026-06-19 06:33:40,764.764 INFO    ] Checking for camera pi updates...
[2026-06-19 06:33:40,801.801 INFO    ] 200
[2026-06-19 06:33:40,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:40,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:33:40,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:33:40,892.892 INFO    ] No camera update needed
[2026-06-19 06:33:40,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:33:40,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:33:40,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:33:40,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:33:42,956.956 INFO    ] ================================================
[2026-06-19 06:33:42,972.972 INFO    ] Launching Daemon at Fri Jun 19 06:33:42 IST 2026
[2026-06-19 06:33:42,983.983 INFO    ] ================================================
[2026-06-19 06:33:43,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:33:43
[2026-06-19 06:33:44,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:33:44,396.396 INFO    ] Initializing speech engine...
[2026-06-19 06:33:44,417.417 INFO    ] 2026-06-19 06:33:44
[2026-06-19 06:33:44,680.680 INFO    ] 2026-06-19 06:33:44
[2026-06-19 06:33:44,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:33:44,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:33:44,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:33:45,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:33:45,019.019 INFO    ] time= 19/06/2026 06:33:45
[2026-06-19 06:33:45,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:33:45,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:33:45,147.147 INFO    ] No existing commands found in stream
[2026-06-19 06:33:50,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:33:50,163.163 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 06:33:52,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:33:52,811.811 INFO    ] Checking for system updates...
[2026-06-19 06:33:52,846.846 INFO    ] 200
[2026-06-19 06:33:52,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:52,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:33:52,904.904 INFO    ] No update needed
[2026-06-19 06:33:52,906.906 INFO    ] Checking for camera pi updates...
[2026-06-19 06:33:52,949.949 INFO    ] 200
[2026-06-19 06:33:52,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:33:52,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:33:53,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:33:53,037.037 INFO    ] No camera update needed
[2026-06-19 06:33:53,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:33:53,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:33:53,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:33:53,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:33:55,095.095 INFO    ] ================================================
[2026-06-19 06:33:55,111.111 INFO    ] Launching Daemon at Fri Jun 19 06:33:55 IST 2026
[2026-06-19 06:33:55,127.127 INFO    ] ================================================
[2026-06-19 06:33:55,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:33:55
[2026-06-19 06:33:56,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:33:56,579.579 INFO    ] Initializing speech engine...
[2026-06-19 06:33:56,589.589 INFO    ] 2026-06-19 06:33:56
[2026-06-19 06:33:56,844.844 INFO    ] 2026-06-19 06:33:56
[2026-06-19 06:33:56,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:33:57,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:33:57,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:33:57,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:33:57,324.324 INFO    ] time= 19/06/2026 06:33:57
[2026-06-19 06:33:57,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:33:57,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:33:57,460.460 INFO    ] No existing commands found in stream
[2026-06-19 06:34:02,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:34:02,471.471 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 06:34:04,621.621 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:34:04,624.624 INFO    ] Checking for system updates...
[2026-06-19 06:34:04,667.667 INFO    ] 200
[2026-06-19 06:34:04,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:04,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:34:04,729.729 INFO    ] No update needed
[2026-06-19 06:34:04,732.732 INFO    ] Checking for camera pi updates...
[2026-06-19 06:34:04,776.776 INFO    ] 200
[2026-06-19 06:34:04,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:04,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:34:04,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:34:04,885.885 INFO    ] No camera update needed
[2026-06-19 06:34:04,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:34:04,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:34:04,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:34:04,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:34:06,950.950 INFO    ] ================================================
[2026-06-19 06:34:06,965.965 INFO    ] Launching Daemon at Fri Jun 19 06:34:06 IST 2026
[2026-06-19 06:34:06,976.976 INFO    ] ================================================
[2026-06-19 06:34:07,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:34:07
[2026-06-19 06:34:08,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:34:08,402.402 INFO    ] Initializing speech engine...
[2026-06-19 06:34:08,411.411 INFO    ] 2026-06-19 06:34:08
[2026-06-19 06:34:08,664.664 INFO    ] 2026-06-19 06:34:08
[2026-06-19 06:34:08,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:34:08,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:34:08,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:34:09,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:34:09,042.042 INFO    ] time= 19/06/2026 06:34:09
[2026-06-19 06:34:09,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:34:09,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:34:09,212.212 INFO    ] No existing commands found in stream
[2026-06-19 06:34:14,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:34:14,245.245 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 06:34:17,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:34:17,095.095 INFO    ] Checking for system updates...
[2026-06-19 06:34:17,131.131 INFO    ] 200
[2026-06-19 06:34:17,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:17,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:34:17,188.188 INFO    ] No update needed
[2026-06-19 06:34:17,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 06:34:17,228.228 INFO    ] 200
[2026-06-19 06:34:17,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:17,275.275 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:34:17,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:34:17,321.321 INFO    ] No camera update needed
[2026-06-19 06:34:17,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:34:17,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:34:17,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:34:17,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:34:19,379.379 INFO    ] ================================================
[2026-06-19 06:34:19,405.405 INFO    ] Launching Daemon at Fri Jun 19 06:34:19 IST 2026
[2026-06-19 06:34:19,416.416 INFO    ] ================================================
[2026-06-19 06:34:20,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:34:20
[2026-06-19 06:34:20,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:34:21,001.001 INFO    ] Initializing speech engine...
[2026-06-19 06:34:21,009.009 INFO    ] 2026-06-19 06:34:21
[2026-06-19 06:34:21,280.280 INFO    ] 2026-06-19 06:34:21
[2026-06-19 06:34:21,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:34:21,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:34:21,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:34:21,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:34:21,759.759 INFO    ] time= 19/06/2026 06:34:21
[2026-06-19 06:34:21,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:34:21,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:34:21,903.903 INFO    ] No existing commands found in stream
[2026-06-19 06:34:26,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:34:26,919.919 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 06:34:28,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:34:28,997.997 INFO    ] Checking for system updates...
[2026-06-19 06:34:29,035.035 INFO    ] 200
[2026-06-19 06:34:29,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:29,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:34:29,098.098 INFO    ] No update needed
[2026-06-19 06:34:29,101.101 INFO    ] Checking for camera pi updates...
[2026-06-19 06:34:29,138.138 INFO    ] 200
[2026-06-19 06:34:29,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:29,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:34:29,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:34:29,228.228 INFO    ] No camera update needed
[2026-06-19 06:34:29,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:34:29,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:34:29,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:34:29,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:34:31,284.284 INFO    ] ================================================
[2026-06-19 06:34:31,299.299 INFO    ] Launching Daemon at Fri Jun 19 06:34:31 IST 2026
[2026-06-19 06:34:31,309.309 INFO    ] ================================================
[2026-06-19 06:34:31,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:34:31
[2026-06-19 06:34:32,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:34:32,991.991 INFO    ] Initializing speech engine...
[2026-06-19 06:34:33,000.000 INFO    ] 2026-06-19 06:34:32
[2026-06-19 06:34:33,276.276 INFO    ] 2026-06-19 06:34:33
[2026-06-19 06:34:33,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:34:33,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:34:33,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:34:33,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:34:33,747.747 INFO    ] time= 19/06/2026 06:34:33
[2026-06-19 06:34:33,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:34:33,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:34:33,891.891 INFO    ] No existing commands found in stream
[2026-06-19 06:34:38,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:34:38,908.908 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 06:34:41,222.222 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:34:41,226.226 INFO    ] Checking for system updates...
[2026-06-19 06:34:41,261.261 INFO    ] 200
[2026-06-19 06:34:41,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:41,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:34:41,319.319 INFO    ] No update needed
[2026-06-19 06:34:41,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 06:34:41,354.354 INFO    ] 200
[2026-06-19 06:34:41,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:41,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:34:41,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:34:41,449.449 INFO    ] No camera update needed
[2026-06-19 06:34:41,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:34:41,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:34:41,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:34:41,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:34:43,503.503 INFO    ] ================================================
[2026-06-19 06:34:43,519.519 INFO    ] Launching Daemon at Fri Jun 19 06:34:43 IST 2026
[2026-06-19 06:34:43,530.530 INFO    ] ================================================
[2026-06-19 06:34:44,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:34:44
[2026-06-19 06:34:44,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:34:45,079.079 INFO    ] Initializing speech engine...
[2026-06-19 06:34:45,085.085 INFO    ] 2026-06-19 06:34:45
[2026-06-19 06:34:45,355.355 INFO    ] 2026-06-19 06:34:45
[2026-06-19 06:34:45,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:34:45,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:34:45,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:34:45,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:34:45,903.903 INFO    ] time= 19/06/2026 06:34:45
[2026-06-19 06:34:45,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:34:45,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:34:46,055.055 INFO    ] No existing commands found in stream
[2026-06-19 06:34:51,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:34:51,073.073 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 06:34:54,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:34:54,559.559 INFO    ] Checking for system updates...
[2026-06-19 06:34:54,600.600 INFO    ] 200
[2026-06-19 06:34:54,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:54,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:34:54,663.663 INFO    ] No update needed
[2026-06-19 06:34:54,666.666 INFO    ] Checking for camera pi updates...
[2026-06-19 06:34:54,704.704 INFO    ] 200
[2026-06-19 06:34:54,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:34:54,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:34:54,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:34:54,794.794 INFO    ] No camera update needed
[2026-06-19 06:34:54,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:34:54,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:34:54,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:34:54,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:34:56,849.849 INFO    ] ================================================
[2026-06-19 06:34:56,865.865 INFO    ] Launching Daemon at Fri Jun 19 06:34:56 IST 2026
[2026-06-19 06:34:56,876.876 INFO    ] ================================================
[2026-06-19 06:34:57,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:34:57
[2026-06-19 06:34:58,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:34:58,469.469 INFO    ] Initializing speech engine...
[2026-06-19 06:34:58,478.478 INFO    ] 2026-06-19 06:34:58
[2026-06-19 06:34:58,765.765 INFO    ] 2026-06-19 06:34:58
[2026-06-19 06:34:58,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:34:59,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:34:59,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:34:59,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:34:59,237.237 INFO    ] time= 19/06/2026 06:34:59
[2026-06-19 06:34:59,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:34:59,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:34:59,437.437 INFO    ] No existing commands found in stream
[2026-06-19 06:35:04,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:35:04,468.468 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 06:35:07,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:35:07,793.793 INFO    ] Checking for system updates...
[2026-06-19 06:35:07,833.833 INFO    ] 200
[2026-06-19 06:35:07,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:35:07,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:35:07,893.893 INFO    ] No update needed
[2026-06-19 06:35:07,895.895 INFO    ] Checking for camera pi updates...
[2026-06-19 06:35:07,931.931 INFO    ] 200
[2026-06-19 06:35:07,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:35:07,975.975 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:35:08,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:35:08,022.022 INFO    ] No camera update needed
[2026-06-19 06:35:08,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:35:08,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:35:08,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:35:08,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:35:10,081.081 INFO    ] ================================================
[2026-06-19 06:35:10,097.097 INFO    ] Launching Daemon at Fri Jun 19 06:35:10 IST 2026
[2026-06-19 06:35:10,108.108 INFO    ] ================================================
[2026-06-19 06:35:10,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:35:10
[2026-06-19 06:35:11,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:35:11,662.662 INFO    ] Initializing speech engine...
[2026-06-19 06:35:11,668.668 INFO    ] 2026-06-19 06:35:11
[2026-06-19 06:35:11,935.935 INFO    ] 2026-06-19 06:35:11
[2026-06-19 06:35:11,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:35:12,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:35:12,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:35:12,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:35:12,431.431 INFO    ] time= 19/06/2026 06:35:12
[2026-06-19 06:35:12,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:35:12,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:35:12,620.620 INFO    ] No existing commands found in stream
[2026-06-19 06:35:17,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:35:17,651.651 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 06:35:20,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:35:20,014.014 INFO    ] Checking for system updates...
[2026-06-19 06:35:20,053.053 INFO    ] 200
[2026-06-19 06:35:20,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:35:20,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:35:20,113.113 INFO    ] No update needed
[2026-06-19 06:35:20,115.115 INFO    ] Checking for camera pi updates...
[2026-06-19 06:35:20,153.153 INFO    ] 200
[2026-06-19 06:35:20,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:35:20,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:35:20,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:35:20,244.244 INFO    ] No camera update needed
[2026-06-19 06:35:20,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:35:20,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:35:20,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:35:20,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:35:22,304.304 INFO    ] ================================================
[2026-06-19 06:35:22,319.319 INFO    ] Launching Daemon at Fri Jun 19 06:35:22 IST 2026
[2026-06-19 06:35:22,330.330 INFO    ] ================================================
[2026-06-19 06:35:22,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:35:22
[2026-06-19 06:35:23,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:35:23,904.904 INFO    ] Initializing speech engine...
[2026-06-19 06:35:23,916.916 INFO    ] 2026-06-19 06:35:23
[2026-06-19 06:35:24,189.189 INFO    ] 2026-06-19 06:35:24
[2026-06-19 06:35:24,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:35:24,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:35:24,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:35:24,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:35:24,662.662 INFO    ] time= 19/06/2026 06:35:24
[2026-06-19 06:35:24,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:35:24,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:35:24,816.816 INFO    ] No existing commands found in stream
[2026-06-19 06:35:29,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:35:29,831.831 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 06:35:33,237.237 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:35:33,240.240 INFO    ] Checking for system updates...
[2026-06-19 06:35:33,277.277 INFO    ] 200
[2026-06-19 06:35:33,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:35:33,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:35:33,334.334 INFO    ] No update needed
[2026-06-19 06:35:33,337.337 INFO    ] Checking for camera pi updates...
[2026-06-19 06:35:33,372.372 INFO    ] 200
[2026-06-19 06:35:33,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:35:33,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:35:33,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:35:33,470.470 INFO    ] No camera update needed
[2026-06-19 06:35:33,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:35:33,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:35:33,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:35:33,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:35:35,530.530 INFO    ] ================================================
[2026-06-19 06:35:35,546.546 INFO    ] Launching Daemon at Fri Jun 19 06:35:35 IST 2026
[2026-06-19 06:35:35,557.557 INFO    ] ================================================
[2026-06-19 06:35:36,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:35:36
[2026-06-19 06:35:36,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:35:37,005.005 INFO    ] Initializing speech engine...
[2026-06-19 06:35:37,015.015 INFO    ] 2026-06-19 06:35:37
[2026-06-19 06:35:37,277.277 INFO    ] 2026-06-19 06:35:37
[2026-06-19 06:35:37,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:35:37,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:35:37,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:35:37,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:35:37,719.719 INFO    ] time= 19/06/2026 06:35:37
[2026-06-19 06:35:37,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:35:37,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:35:37,890.890 INFO    ] No existing commands found in stream
[2026-06-19 06:35:42,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:35:42,908.908 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 06:35:46,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:35:46,759.759 INFO    ] Checking for system updates...
[2026-06-19 06:35:46,795.795 INFO    ] 200
[2026-06-19 06:35:46,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:35:46,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:35:46,858.858 INFO    ] No update needed
[2026-06-19 06:35:46,860.860 INFO    ] Checking for camera pi updates...
[2026-06-19 06:35:46,897.897 INFO    ] 200
[2026-06-19 06:35:46,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:35:46,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:35:46,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:35:46,972.972 INFO    ] No camera update needed
[2026-06-19 06:35:46,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:35:46,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:35:46,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:35:46,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:35:49,028.028 INFO    ] ================================================
[2026-06-19 06:35:49,044.044 INFO    ] Launching Daemon at Fri Jun 19 06:35:49 IST 2026
[2026-06-19 06:35:49,054.054 INFO    ] ================================================
[2026-06-19 06:35:49,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:35:49
[2026-06-19 06:35:50,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:35:50,644.644 INFO    ] Initializing speech engine...
[2026-06-19 06:35:50,657.657 INFO    ] 2026-06-19 06:35:50
[2026-06-19 06:35:50,970.970 INFO    ] 2026-06-19 06:35:50
[2026-06-19 06:35:51,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:35:51,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:35:51,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:35:51,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:35:51,404.404 INFO    ] time= 19/06/2026 06:35:51
[2026-06-19 06:35:51,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:35:51,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:35:51,594.594 INFO    ] No existing commands found in stream
[2026-06-19 06:35:56,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:35:56,623.623 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 06:36:00,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:36:00,626.626 INFO    ] Checking for system updates...
[2026-06-19 06:36:00,677.677 INFO    ] 200
[2026-06-19 06:36:00,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:00,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:36:00,752.752 INFO    ] No update needed
[2026-06-19 06:36:00,755.755 INFO    ] Checking for camera pi updates...
[2026-06-19 06:36:00,788.788 INFO    ] 200
[2026-06-19 06:36:00,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:00,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:36:00,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:36:00,887.887 INFO    ] No camera update needed
[2026-06-19 06:36:00,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:36:00,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:36:00,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:36:00,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:36:02,955.955 INFO    ] ================================================
[2026-06-19 06:36:02,973.973 INFO    ] Launching Daemon at Fri Jun 19 06:36:02 IST 2026
[2026-06-19 06:36:03,996.996 INFO    ] ================================================
[2026-06-19 06:36:03,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:36:03
[2026-06-19 06:36:04,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:36:04,666.666 INFO    ] Initializing speech engine...
[2026-06-19 06:36:04,681.681 INFO    ] 2026-06-19 06:36:04
[2026-06-19 06:36:04,967.967 INFO    ] 2026-06-19 06:36:04
[2026-06-19 06:36:05,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:36:05,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:36:05,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:36:05,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:36:05,439.439 INFO    ] time= 19/06/2026 06:36:05
[2026-06-19 06:36:05,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:36:05,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:36:05,573.573 INFO    ] No existing commands found in stream
[2026-06-19 06:36:10,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:36:10,588.588 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 06:36:12,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:36:12,286.286 INFO    ] Checking for system updates...
[2026-06-19 06:36:12,322.322 INFO    ] 200
[2026-06-19 06:36:12,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:12,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:36:12,386.386 INFO    ] No update needed
[2026-06-19 06:36:12,388.388 INFO    ] Checking for camera pi updates...
[2026-06-19 06:36:12,425.425 INFO    ] 200
[2026-06-19 06:36:12,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:12,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:36:12,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:36:12,519.519 INFO    ] No camera update needed
[2026-06-19 06:36:12,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:36:12,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:36:12,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:36:12,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:36:14,575.575 INFO    ] ================================================
[2026-06-19 06:36:14,591.591 INFO    ] Launching Daemon at Fri Jun 19 06:36:14 IST 2026
[2026-06-19 06:36:14,602.602 INFO    ] ================================================
[2026-06-19 06:36:15,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:36:15
[2026-06-19 06:36:15,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:36:16,015.015 INFO    ] Initializing speech engine...
[2026-06-19 06:36:16,028.028 INFO    ] 2026-06-19 06:36:16
[2026-06-19 06:36:16,313.313 INFO    ] 2026-06-19 06:36:16
[2026-06-19 06:36:16,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:36:16,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:36:16,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:36:16,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:36:16,730.730 INFO    ] time= 19/06/2026 06:36:16
[2026-06-19 06:36:16,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:36:16,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:36:16,813.813 INFO    ] No existing commands found in stream
[2026-06-19 06:36:21,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:36:21,828.828 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 06:36:23,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:36:23,255.255 INFO    ] Checking for system updates...
[2026-06-19 06:36:23,297.297 INFO    ] 200
[2026-06-19 06:36:23,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:23,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:36:23,356.356 INFO    ] No update needed
[2026-06-19 06:36:23,359.359 INFO    ] Checking for camera pi updates...
[2026-06-19 06:36:23,393.393 INFO    ] 200
[2026-06-19 06:36:23,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:23,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:36:23,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:36:23,488.488 INFO    ] No camera update needed
[2026-06-19 06:36:23,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:36:23,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:36:23,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:36:23,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:36:25,548.548 INFO    ] ================================================
[2026-06-19 06:36:25,564.564 INFO    ] Launching Daemon at Fri Jun 19 06:36:25 IST 2026
[2026-06-19 06:36:25,574.574 INFO    ] ================================================
[2026-06-19 06:36:26,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:36:26
[2026-06-19 06:36:26,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:36:26,992.992 INFO    ] Initializing speech engine...
[2026-06-19 06:36:27,000.000 INFO    ] 2026-06-19 06:36:26
[2026-06-19 06:36:27,291.291 INFO    ] 2026-06-19 06:36:27
[2026-06-19 06:36:27,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:36:27,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:36:27,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:36:27,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:36:27,666.666 INFO    ] time= 19/06/2026 06:36:27
[2026-06-19 06:36:27,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:36:27,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:36:27,790.790 INFO    ] No existing commands found in stream
[2026-06-19 06:36:32,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:36:32,806.806 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 06:36:33,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:36:33,793.793 INFO    ] Checking for system updates...
[2026-06-19 06:36:33,830.830 INFO    ] 200
[2026-06-19 06:36:33,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:33,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:36:33,888.888 INFO    ] No update needed
[2026-06-19 06:36:33,890.890 INFO    ] Checking for camera pi updates...
[2026-06-19 06:36:33,924.924 INFO    ] 200
[2026-06-19 06:36:33,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:33,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:36:34,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:36:34,013.013 INFO    ] No camera update needed
[2026-06-19 06:36:34,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:36:34,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:36:34,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:36:34,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:36:36,067.067 INFO    ] ================================================
[2026-06-19 06:36:36,082.082 INFO    ] Launching Daemon at Fri Jun 19 06:36:36 IST 2026
[2026-06-19 06:36:36,094.094 INFO    ] ================================================
[2026-06-19 06:36:36,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:36:36
[2026-06-19 06:36:37,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:36:37,507.507 INFO    ] Initializing speech engine...
[2026-06-19 06:36:37,520.520 INFO    ] 2026-06-19 06:36:37
[2026-06-19 06:36:37,792.792 INFO    ] 2026-06-19 06:36:37
[2026-06-19 06:36:37,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:36:38,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:36:38,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:36:38,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:36:38,265.265 INFO    ] time= 19/06/2026 06:36:38
[2026-06-19 06:36:38,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:36:38,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:36:38,427.427 INFO    ] No existing commands found in stream
[2026-06-19 06:36:43,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:36:43,442.442 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 06:36:47,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:36:47,689.689 INFO    ] Checking for system updates...
[2026-06-19 06:36:47,729.729 INFO    ] 200
[2026-06-19 06:36:47,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:47,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:36:47,799.799 INFO    ] No update needed
[2026-06-19 06:36:47,801.801 INFO    ] Checking for camera pi updates...
[2026-06-19 06:36:47,835.835 INFO    ] 200
[2026-06-19 06:36:47,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:36:47,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:36:48,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:36:48,012.012 INFO    ] No camera update needed
[2026-06-19 06:36:48,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:36:48,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:36:48,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:36:48,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:36:50,067.067 INFO    ] ================================================
[2026-06-19 06:36:50,083.083 INFO    ] Launching Daemon at Fri Jun 19 06:36:50 IST 2026
[2026-06-19 06:36:50,093.093 INFO    ] ================================================
[2026-06-19 06:36:50,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:36:50
[2026-06-19 06:36:51,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:36:51,545.545 INFO    ] Initializing speech engine...
[2026-06-19 06:36:51,553.553 INFO    ] 2026-06-19 06:36:51
[2026-06-19 06:36:51,811.811 INFO    ] 2026-06-19 06:36:51
[2026-06-19 06:36:51,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:36:52,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:36:52,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:36:52,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:36:52,279.279 INFO    ] time= 19/06/2026 06:36:52
[2026-06-19 06:36:52,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:36:52,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:36:52,426.426 INFO    ] No existing commands found in stream
[2026-06-19 06:36:57,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:36:57,440.440 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 06:37:01,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:37:01,245.245 INFO    ] Checking for system updates...
[2026-06-19 06:37:01,282.282 INFO    ] 200
[2026-06-19 06:37:01,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:01,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:37:01,341.341 INFO    ] No update needed
[2026-06-19 06:37:01,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 06:37:01,377.377 INFO    ] 200
[2026-06-19 06:37:01,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:01,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:37:01,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:37:01,456.456 INFO    ] No camera update needed
[2026-06-19 06:37:01,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:37:01,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:37:01,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:37:01,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:37:03,515.515 INFO    ] ================================================
[2026-06-19 06:37:03,531.531 INFO    ] Launching Daemon at Fri Jun 19 06:37:03 IST 2026
[2026-06-19 06:37:03,542.542 INFO    ] ================================================
[2026-06-19 06:37:04,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:37:04
[2026-06-19 06:37:04,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:37:04,956.956 INFO    ] Initializing speech engine...
[2026-06-19 06:37:04,963.963 INFO    ] 2026-06-19 06:37:04
[2026-06-19 06:37:05,258.258 INFO    ] 2026-06-19 06:37:05
[2026-06-19 06:37:05,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:37:05,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:37:05,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:37:05,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:37:05,639.639 INFO    ] time= 19/06/2026 06:37:05
[2026-06-19 06:37:05,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:37:05,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:37:05,764.764 INFO    ] No existing commands found in stream
[2026-06-19 06:37:10,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:37:10,777.777 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 06:37:14,791.791 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:37:14,794.794 INFO    ] Checking for system updates...
[2026-06-19 06:37:14,832.832 INFO    ] 200
[2026-06-19 06:37:14,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:14,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:37:14,890.890 INFO    ] No update needed
[2026-06-19 06:37:14,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 06:37:14,926.926 INFO    ] 200
[2026-06-19 06:37:14,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:14,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:37:15,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:37:15,015.015 INFO    ] No camera update needed
[2026-06-19 06:37:15,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:37:15,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:37:15,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:37:15,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:37:17,075.075 INFO    ] ================================================
[2026-06-19 06:37:17,090.090 INFO    ] Launching Daemon at Fri Jun 19 06:37:17 IST 2026
[2026-06-19 06:37:17,101.101 INFO    ] ================================================
[2026-06-19 06:37:17,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:37:17
[2026-06-19 06:37:18,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:37:18,569.569 INFO    ] Initializing speech engine...
[2026-06-19 06:37:18,574.574 INFO    ] 2026-06-19 06:37:18
[2026-06-19 06:37:18,840.840 INFO    ] 2026-06-19 06:37:18
[2026-06-19 06:37:18,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:37:19,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:37:19,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:37:19,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:37:19,305.305 INFO    ] time= 19/06/2026 06:37:19
[2026-06-19 06:37:19,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:37:19,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:37:19,459.459 INFO    ] No existing commands found in stream
[2026-06-19 06:37:24,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:37:24,470.470 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 06:37:27,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:37:27,004.004 INFO    ] Checking for system updates...
[2026-06-19 06:37:27,045.045 INFO    ] 200
[2026-06-19 06:37:27,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:27,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:37:27,111.111 INFO    ] No update needed
[2026-06-19 06:37:27,113.113 INFO    ] Checking for camera pi updates...
[2026-06-19 06:37:27,151.151 INFO    ] 200
[2026-06-19 06:37:27,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:27,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:37:27,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:37:27,237.237 INFO    ] No camera update needed
[2026-06-19 06:37:27,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:37:27,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:37:27,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:37:27,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:37:29,294.294 INFO    ] ================================================
[2026-06-19 06:37:29,310.310 INFO    ] Launching Daemon at Fri Jun 19 06:37:29 IST 2026
[2026-06-19 06:37:29,321.321 INFO    ] ================================================
[2026-06-19 06:37:29,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:37:29
[2026-06-19 06:37:30,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:37:30,742.742 INFO    ] Initializing speech engine...
[2026-06-19 06:37:30,751.751 INFO    ] 2026-06-19 06:37:30
[2026-06-19 06:37:30,999.999 INFO    ] 2026-06-19 06:37:30
[2026-06-19 06:37:31,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:37:31,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:37:31,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:37:31,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:37:31,436.436 INFO    ] time= 19/06/2026 06:37:31
[2026-06-19 06:37:31,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:37:31,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:37:31,586.586 INFO    ] No existing commands found in stream
[2026-06-19 06:37:36,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:37:36,600.600 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 06:37:40,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:37:40,947.947 INFO    ] Checking for system updates...
[2026-06-19 06:37:40,987.987 INFO    ] 200
[2026-06-19 06:37:40,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:41,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:37:41,046.046 INFO    ] No update needed
[2026-06-19 06:37:41,048.048 INFO    ] Checking for camera pi updates...
[2026-06-19 06:37:41,082.082 INFO    ] 200
[2026-06-19 06:37:41,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:41,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:37:41,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:37:41,169.169 INFO    ] No camera update needed
[2026-06-19 06:37:41,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:37:41,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:37:41,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:37:41,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:37:43,228.228 INFO    ] ================================================
[2026-06-19 06:37:43,243.243 INFO    ] Launching Daemon at Fri Jun 19 06:37:43 IST 2026
[2026-06-19 06:37:43,253.253 INFO    ] ================================================
[2026-06-19 06:37:43,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:37:43
[2026-06-19 06:37:44,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:37:44,668.668 INFO    ] Initializing speech engine...
[2026-06-19 06:37:44,675.675 INFO    ] 2026-06-19 06:37:44
[2026-06-19 06:37:44,973.973 INFO    ] 2026-06-19 06:37:44
[2026-06-19 06:37:45,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:37:45,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:37:45,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:37:45,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:37:45,399.399 INFO    ] time= 19/06/2026 06:37:45
[2026-06-19 06:37:45,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:37:45,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:37:45,489.489 INFO    ] No existing commands found in stream
[2026-06-19 06:37:50,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:37:50,503.503 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 06:37:51,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:37:51,844.844 INFO    ] Checking for system updates...
[2026-06-19 06:37:51,881.881 INFO    ] 200
[2026-06-19 06:37:51,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:51,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:37:51,938.938 INFO    ] No update needed
[2026-06-19 06:37:51,940.940 INFO    ] Checking for camera pi updates...
[2026-06-19 06:37:51,974.974 INFO    ] 200
[2026-06-19 06:37:51,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:37:52,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:37:52,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:37:52,063.063 INFO    ] No camera update needed
[2026-06-19 06:37:52,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:37:52,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:37:52,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:37:52,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:37:54,120.120 INFO    ] ================================================
[2026-06-19 06:37:54,136.136 INFO    ] Launching Daemon at Fri Jun 19 06:37:54 IST 2026
[2026-06-19 06:37:54,147.147 INFO    ] ================================================
[2026-06-19 06:37:54,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:37:54
[2026-06-19 06:37:55,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:37:55,825.825 INFO    ] Initializing speech engine...
[2026-06-19 06:37:55,838.838 INFO    ] 2026-06-19 06:37:55
[2026-06-19 06:37:56,126.126 INFO    ] 2026-06-19 06:37:56
[2026-06-19 06:37:56,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:37:56,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:37:56,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:37:56,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:37:56,602.602 INFO    ] time= 19/06/2026 06:37:56
[2026-06-19 06:37:56,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:37:56,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:37:56,744.744 INFO    ] No existing commands found in stream
[2026-06-19 06:38:01,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:38:01,762.762 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 06:38:05,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:38:05,478.478 INFO    ] Checking for system updates...
[2026-06-19 06:38:05,515.515 INFO    ] 200
[2026-06-19 06:38:05,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:05,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:38:05,580.580 INFO    ] No update needed
[2026-06-19 06:38:05,583.583 INFO    ] Checking for camera pi updates...
[2026-06-19 06:38:05,620.620 INFO    ] 200
[2026-06-19 06:38:05,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:05,663.663 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:38:05,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:38:05,706.706 INFO    ] No camera update needed
[2026-06-19 06:38:05,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:38:05,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:38:05,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:38:05,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:38:07,761.761 INFO    ] ================================================
[2026-06-19 06:38:07,776.776 INFO    ] Launching Daemon at Fri Jun 19 06:38:07 IST 2026
[2026-06-19 06:38:07,788.788 INFO    ] ================================================
[2026-06-19 06:38:08,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:38:08
[2026-06-19 06:38:08,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:38:09,255.255 INFO    ] Initializing speech engine...
[2026-06-19 06:38:09,261.261 INFO    ] 2026-06-19 06:38:09
[2026-06-19 06:38:09,520.520 INFO    ] 2026-06-19 06:38:09
[2026-06-19 06:38:09,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:38:09,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:38:09,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:38:09,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:38:09,985.985 INFO    ] time= 19/06/2026 06:38:09
[2026-06-19 06:38:10,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:38:10,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:38:10,126.126 INFO    ] No existing commands found in stream
[2026-06-19 06:38:15,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:38:15,140.140 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 06:38:17,207.207 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:38:17,210.210 INFO    ] Checking for system updates...
[2026-06-19 06:38:17,249.249 INFO    ] 200
[2026-06-19 06:38:17,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:17,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:38:17,313.313 INFO    ] No update needed
[2026-06-19 06:38:17,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 06:38:17,350.350 INFO    ] 200
[2026-06-19 06:38:17,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:17,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:38:17,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:38:17,437.437 INFO    ] No camera update needed
[2026-06-19 06:38:17,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:38:17,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:38:17,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:38:17,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:38:19,491.491 INFO    ] ================================================
[2026-06-19 06:38:19,507.507 INFO    ] Launching Daemon at Fri Jun 19 06:38:19 IST 2026
[2026-06-19 06:38:19,518.518 INFO    ] ================================================
[2026-06-19 06:38:20,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:38:20
[2026-06-19 06:38:20,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:38:20,955.955 INFO    ] Initializing speech engine...
[2026-06-19 06:38:20,964.964 INFO    ] 2026-06-19 06:38:20
[2026-06-19 06:38:21,230.230 INFO    ] 2026-06-19 06:38:21
[2026-06-19 06:38:21,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:38:21,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:38:21,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:38:21,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:38:21,694.694 INFO    ] time= 19/06/2026 06:38:21
[2026-06-19 06:38:21,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:38:21,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:38:21,843.843 INFO    ] No existing commands found in stream
[2026-06-19 06:38:26,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:38:26,858.858 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 06:38:30,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:38:30,821.821 INFO    ] Checking for system updates...
[2026-06-19 06:38:30,859.859 INFO    ] 200
[2026-06-19 06:38:30,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:30,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:38:30,925.925 INFO    ] No update needed
[2026-06-19 06:38:30,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 06:38:30,967.967 INFO    ] 200
[2026-06-19 06:38:30,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:31,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:38:31,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:38:31,071.071 INFO    ] No camera update needed
[2026-06-19 06:38:31,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:38:31,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:38:31,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:38:31,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:38:33,134.134 INFO    ] ================================================
[2026-06-19 06:38:33,149.149 INFO    ] Launching Daemon at Fri Jun 19 06:38:33 IST 2026
[2026-06-19 06:38:33,160.160 INFO    ] ================================================
[2026-06-19 06:38:33,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:38:33
[2026-06-19 06:38:34,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:38:34,625.625 INFO    ] Initializing speech engine...
[2026-06-19 06:38:34,636.636 INFO    ] 2026-06-19 06:38:34
[2026-06-19 06:38:34,901.901 INFO    ] 2026-06-19 06:38:34
[2026-06-19 06:38:34,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:38:35,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:38:35,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:38:35,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:38:35,363.363 INFO    ] time= 19/06/2026 06:38:35
[2026-06-19 06:38:35,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:38:35,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:38:35,522.522 INFO    ] No existing commands found in stream
[2026-06-19 06:38:40,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:38:40,537.537 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 06:38:44,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:38:44,862.862 INFO    ] Checking for system updates...
[2026-06-19 06:38:44,899.899 INFO    ] 200
[2026-06-19 06:38:44,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:44,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:38:44,957.957 INFO    ] No update needed
[2026-06-19 06:38:44,959.959 INFO    ] Checking for camera pi updates...
[2026-06-19 06:38:44,998.998 INFO    ] 200
[2026-06-19 06:38:45,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:45,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:38:45,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:38:45,090.090 INFO    ] No camera update needed
[2026-06-19 06:38:45,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:38:45,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:38:45,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:38:45,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:38:47,146.146 INFO    ] ================================================
[2026-06-19 06:38:47,162.162 INFO    ] Launching Daemon at Fri Jun 19 06:38:47 IST 2026
[2026-06-19 06:38:47,173.173 INFO    ] ================================================
[2026-06-19 06:38:47,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:38:47
[2026-06-19 06:38:48,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:38:48,575.575 INFO    ] Initializing speech engine...
[2026-06-19 06:38:48,583.583 INFO    ] 2026-06-19 06:38:48
[2026-06-19 06:38:48,858.858 INFO    ] 2026-06-19 06:38:48
[2026-06-19 06:38:48,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:38:49,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:38:49,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:38:49,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:38:49,338.338 INFO    ] time= 19/06/2026 06:38:49
[2026-06-19 06:38:49,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:38:49,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:38:49,492.492 INFO    ] No existing commands found in stream
[2026-06-19 06:38:54,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:38:54,507.507 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 06:38:57,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:38:57,564.564 INFO    ] Checking for system updates...
[2026-06-19 06:38:57,605.605 INFO    ] 200
[2026-06-19 06:38:57,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:57,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:38:57,673.673 INFO    ] No update needed
[2026-06-19 06:38:57,676.676 INFO    ] Checking for camera pi updates...
[2026-06-19 06:38:57,716.716 INFO    ] 200
[2026-06-19 06:38:57,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:38:57,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:38:57,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:38:57,914.914 INFO    ] No camera update needed
[2026-06-19 06:38:57,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:38:57,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:38:57,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:38:57,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:38:59,976.976 INFO    ] ================================================
[2026-06-19 06:38:59,992.992 INFO    ] Launching Daemon at Fri Jun 19 06:38:59 IST 2026
[2026-06-19 06:39:00,003.003 INFO    ] ================================================
[2026-06-19 06:39:00,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:39:00
[2026-06-19 06:39:01,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:39:01,409.409 INFO    ] Initializing speech engine...
[2026-06-19 06:39:01,432.432 INFO    ] 2026-06-19 06:39:01
[2026-06-19 06:39:01,762.762 INFO    ] 2026-06-19 06:39:01
[2026-06-19 06:39:01,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:39:02,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:39:02,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:39:02,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:39:02,288.288 INFO    ] time= 19/06/2026 06:39:02
[2026-06-19 06:39:02,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:39:02,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:39:02,394.394 INFO    ] No existing commands found in stream
[2026-06-19 06:39:07,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:39:07,410.410 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 06:39:08,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:39:08,444.444 INFO    ] Checking for system updates...
[2026-06-19 06:39:08,481.481 INFO    ] 200
[2026-06-19 06:39:08,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:08,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:39:08,554.554 INFO    ] No update needed
[2026-06-19 06:39:08,557.557 INFO    ] Checking for camera pi updates...
[2026-06-19 06:39:08,597.597 INFO    ] 200
[2026-06-19 06:39:08,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:08,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:39:08,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:39:08,690.690 INFO    ] No camera update needed
[2026-06-19 06:39:08,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:39:08,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:39:08,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:39:08,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:39:10,750.750 INFO    ] ================================================
[2026-06-19 06:39:10,766.766 INFO    ] Launching Daemon at Fri Jun 19 06:39:10 IST 2026
[2026-06-19 06:39:10,777.777 INFO    ] ================================================
[2026-06-19 06:39:11,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:39:11
[2026-06-19 06:39:12,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:39:12,431.431 INFO    ] Initializing speech engine...
[2026-06-19 06:39:12,440.440 INFO    ] 2026-06-19 06:39:12
[2026-06-19 06:39:12,686.686 INFO    ] 2026-06-19 06:39:12
[2026-06-19 06:39:12,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:39:12,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:39:12,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:39:13,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:39:13,178.178 INFO    ] time= 19/06/2026 06:39:13
[2026-06-19 06:39:13,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:39:13,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:39:13,314.314 INFO    ] No existing commands found in stream
[2026-06-19 06:39:18,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:39:18,349.349 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 06:39:20,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:39:20,990.990 INFO    ] Checking for system updates...
[2026-06-19 06:39:21,031.031 INFO    ] 200
[2026-06-19 06:39:21,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:21,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:39:21,089.089 INFO    ] No update needed
[2026-06-19 06:39:21,091.091 INFO    ] Checking for camera pi updates...
[2026-06-19 06:39:21,130.130 INFO    ] 200
[2026-06-19 06:39:21,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:21,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:39:21,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:39:21,222.222 INFO    ] No camera update needed
[2026-06-19 06:39:21,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:39:21,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:39:21,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:39:21,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:39:23,278.278 INFO    ] ================================================
[2026-06-19 06:39:23,294.294 INFO    ] Launching Daemon at Fri Jun 19 06:39:23 IST 2026
[2026-06-19 06:39:23,305.305 INFO    ] ================================================
[2026-06-19 06:39:23,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:39:23
[2026-06-19 06:39:24,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:39:24,992.992 INFO    ] Initializing speech engine...
[2026-06-19 06:39:25,007.007 INFO    ] 2026-06-19 06:39:24
[2026-06-19 06:39:25,299.299 INFO    ] 2026-06-19 06:39:25
[2026-06-19 06:39:25,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:39:25,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:39:25,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:39:25,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:39:25,760.760 INFO    ] time= 19/06/2026 06:39:25
[2026-06-19 06:39:25,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:39:25,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:39:25,970.970 INFO    ] No existing commands found in stream
[2026-06-19 06:39:30,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:39:30,998.998 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 06:39:34,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:39:34,920.920 INFO    ] Checking for system updates...
[2026-06-19 06:39:34,959.959 INFO    ] 200
[2026-06-19 06:39:34,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:35,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:39:35,020.020 INFO    ] No update needed
[2026-06-19 06:39:35,023.023 INFO    ] Checking for camera pi updates...
[2026-06-19 06:39:35,058.058 INFO    ] 200
[2026-06-19 06:39:35,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:35,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:39:35,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:39:35,147.147 INFO    ] No camera update needed
[2026-06-19 06:39:35,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:39:35,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:39:35,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:39:35,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:39:37,206.206 INFO    ] ================================================
[2026-06-19 06:39:37,221.221 INFO    ] Launching Daemon at Fri Jun 19 06:39:37 IST 2026
[2026-06-19 06:39:37,232.232 INFO    ] ================================================
[2026-06-19 06:39:37,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:39:37
[2026-06-19 06:39:38,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:39:38,663.663 INFO    ] Initializing speech engine...
[2026-06-19 06:39:38,673.673 INFO    ] 2026-06-19 06:39:38
[2026-06-19 06:39:38,931.931 INFO    ] 2026-06-19 06:39:38
[2026-06-19 06:39:38,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:39:39,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:39:39,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:39:39,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:39:39,388.388 INFO    ] time= 19/06/2026 06:39:39
[2026-06-19 06:39:39,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:39:39,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:39:39,562.562 INFO    ] No existing commands found in stream
[2026-06-19 06:39:44,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:39:44,577.577 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 06:39:45,140.140 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:39:45,143.143 INFO    ] Checking for system updates...
[2026-06-19 06:39:45,179.179 INFO    ] 200
[2026-06-19 06:39:45,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:45,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:39:45,237.237 INFO    ] No update needed
[2026-06-19 06:39:45,239.239 INFO    ] Checking for camera pi updates...
[2026-06-19 06:39:45,273.273 INFO    ] 200
[2026-06-19 06:39:45,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:45,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:39:45,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:39:45,371.371 INFO    ] No camera update needed
[2026-06-19 06:39:45,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:39:45,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:39:45,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:39:45,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:39:47,429.429 INFO    ] ================================================
[2026-06-19 06:39:47,444.444 INFO    ] Launching Daemon at Fri Jun 19 06:39:47 IST 2026
[2026-06-19 06:39:47,455.455 INFO    ] ================================================
[2026-06-19 06:39:48,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:39:48
[2026-06-19 06:39:48,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:39:49,124.124 INFO    ] Initializing speech engine...
[2026-06-19 06:39:49,136.136 INFO    ] 2026-06-19 06:39:49
[2026-06-19 06:39:49,421.421 INFO    ] 2026-06-19 06:39:49
[2026-06-19 06:39:49,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:39:49,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:39:49,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:39:49,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:39:49,895.895 INFO    ] time= 19/06/2026 06:39:49
[2026-06-19 06:39:49,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:39:49,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:39:50,107.107 INFO    ] No existing commands found in stream
[2026-06-19 06:39:55,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:39:55,130.130 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 06:39:59,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:39:59,198.198 INFO    ] Checking for system updates...
[2026-06-19 06:39:59,241.241 INFO    ] 200
[2026-06-19 06:39:59,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:59,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:39:59,315.315 INFO    ] No update needed
[2026-06-19 06:39:59,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 06:39:59,354.354 INFO    ] 200
[2026-06-19 06:39:59,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:39:59,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:39:59,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:39:59,454.454 INFO    ] No camera update needed
[2026-06-19 06:39:59,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:39:59,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:39:59,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:39:59,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:40:01,510.510 INFO    ] ================================================
[2026-06-19 06:40:01,528.528 INFO    ] Launching Daemon at Fri Jun 19 06:40:01 IST 2026
[2026-06-19 06:40:01,539.539 INFO    ] ================================================
[2026-06-19 06:40:02,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:40:02
[2026-06-19 06:40:03,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:40:03,662.662 INFO    ] Initializing speech engine...
[2026-06-19 06:40:03,674.674 INFO    ] 2026-06-19 06:40:03
[2026-06-19 06:40:03,973.973 INFO    ] 2026-06-19 06:40:03
[2026-06-19 06:40:04,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:40:04,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:40:04,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:40:04,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:40:04,306.306 INFO    ] time= 19/06/2026 06:40:04
[2026-06-19 06:40:04,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:40:04,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:40:04,415.415 INFO    ] No existing commands found in stream
[2026-06-19 06:40:09,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:40:09,430.430 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 06:40:12,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:40:12,489.489 INFO    ] Checking for system updates...
[2026-06-19 06:40:12,525.525 INFO    ] 200
[2026-06-19 06:40:12,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:40:12,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:40:12,582.582 INFO    ] No update needed
[2026-06-19 06:40:12,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 06:40:12,618.618 INFO    ] 200
[2026-06-19 06:40:12,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:40:12,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:40:12,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:40:12,718.718 INFO    ] No camera update needed
[2026-06-19 06:40:12,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:40:12,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:40:12,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:40:12,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:40:14,773.773 INFO    ] ================================================
[2026-06-19 06:40:14,789.789 INFO    ] Launching Daemon at Fri Jun 19 06:40:14 IST 2026
[2026-06-19 06:40:14,801.801 INFO    ] ================================================
[2026-06-19 06:40:15,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:40:15
[2026-06-19 06:40:15,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:40:16,233.233 INFO    ] Initializing speech engine...
[2026-06-19 06:40:16,250.250 INFO    ] 2026-06-19 06:40:16
[2026-06-19 06:40:16,536.536 INFO    ] 2026-06-19 06:40:16
[2026-06-19 06:40:16,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:40:16,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:40:16,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:40:16,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:40:16,920.920 INFO    ] time= 19/06/2026 06:40:16
[2026-06-19 06:40:16,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:40:16,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:40:17,046.046 INFO    ] No existing commands found in stream
[2026-06-19 06:40:22,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:40:22,061.061 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 06:40:25,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:40:25,162.162 INFO    ] Checking for system updates...
[2026-06-19 06:40:25,202.202 INFO    ] 200
[2026-06-19 06:40:25,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:40:25,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:40:25,259.259 INFO    ] No update needed
[2026-06-19 06:40:25,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 06:40:25,299.299 INFO    ] 200
[2026-06-19 06:40:25,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:40:25,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:40:25,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:40:25,411.411 INFO    ] No camera update needed
[2026-06-19 06:40:25,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:40:25,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:40:25,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:40:25,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:40:27,466.466 INFO    ] ================================================
[2026-06-19 06:40:27,482.482 INFO    ] Launching Daemon at Fri Jun 19 06:40:27 IST 2026
[2026-06-19 06:40:27,493.493 INFO    ] ================================================
[2026-06-19 06:40:28,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:40:28
[2026-06-19 06:40:28,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:40:29,140.140 INFO    ] Initializing speech engine...
[2026-06-19 06:40:29,154.154 INFO    ] 2026-06-19 06:40:29
[2026-06-19 06:40:29,441.441 INFO    ] 2026-06-19 06:40:29
[2026-06-19 06:40:29,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:40:29,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:40:29,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:40:29,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:40:29,903.903 INFO    ] time= 19/06/2026 06:40:29
[2026-06-19 06:40:29,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:40:29,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:40:30,109.109 INFO    ] No existing commands found in stream
[2026-06-19 06:40:35,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:40:35,143.143 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 06:40:39,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:40:39,463.463 INFO    ] Checking for system updates...
[2026-06-19 06:40:39,505.505 INFO    ] 200
[2026-06-19 06:40:39,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:40:39,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:40:39,577.577 INFO    ] No update needed
[2026-06-19 06:40:39,580.580 INFO    ] Checking for camera pi updates...
[2026-06-19 06:40:39,615.615 INFO    ] 200
[2026-06-19 06:40:39,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:40:39,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:40:39,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:40:39,708.708 INFO    ] No camera update needed
[2026-06-19 06:40:39,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:40:39,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:40:39,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:40:39,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:40:41,767.767 INFO    ] ================================================
[2026-06-19 06:40:41,783.783 INFO    ] Launching Daemon at Fri Jun 19 06:40:41 IST 2026
[2026-06-19 06:40:41,794.794 INFO    ] ================================================
[2026-06-19 06:40:42,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:40:42
[2026-06-19 06:40:43,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:40:43,422.422 INFO    ] Initializing speech engine...
[2026-06-19 06:40:43,429.429 INFO    ] 2026-06-19 06:40:43
[2026-06-19 06:40:43,704.704 INFO    ] 2026-06-19 06:40:43
[2026-06-19 06:40:43,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:40:43,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:40:44,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:40:44,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:40:44,178.178 INFO    ] time= 19/06/2026 06:40:44
[2026-06-19 06:40:44,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:40:44,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:40:44,333.333 INFO    ] No existing commands found in stream
[2026-06-19 06:40:49,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:40:49,348.348 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 06:40:52,810.810 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:40:52,813.813 INFO    ] Checking for system updates...
[2026-06-19 06:40:52,849.849 INFO    ] 200
[2026-06-19 06:40:52,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:40:52,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:40:52,910.910 INFO    ] No update needed
[2026-06-19 06:40:52,912.912 INFO    ] Checking for camera pi updates...
[2026-06-19 06:40:52,946.946 INFO    ] 200
[2026-06-19 06:40:52,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:40:52,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:40:53,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:40:53,029.029 INFO    ] No camera update needed
[2026-06-19 06:40:53,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:40:53,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:40:53,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:40:53,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:40:55,084.084 INFO    ] ================================================
[2026-06-19 06:40:55,100.100 INFO    ] Launching Daemon at Fri Jun 19 06:40:55 IST 2026
[2026-06-19 06:40:55,111.111 INFO    ] ================================================
[2026-06-19 06:40:55,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:40:55
[2026-06-19 06:40:56,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:40:56,764.764 INFO    ] Initializing speech engine...
[2026-06-19 06:40:56,777.777 INFO    ] 2026-06-19 06:40:56
[2026-06-19 06:40:57,067.067 INFO    ] 2026-06-19 06:40:57
[2026-06-19 06:40:57,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:40:57,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:40:57,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:40:57,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:40:57,606.606 INFO    ] time= 19/06/2026 06:40:57
[2026-06-19 06:40:57,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:40:57,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:40:57,744.744 INFO    ] No existing commands found in stream
[2026-06-19 06:41:02,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:41:02,782.782 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 06:41:03,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:41:03,193.193 INFO    ] Checking for system updates...
[2026-06-19 06:41:03,234.234 INFO    ] 200
[2026-06-19 06:41:03,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:03,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:41:03,326.326 INFO    ] No update needed
[2026-06-19 06:41:03,329.329 INFO    ] Checking for camera pi updates...
[2026-06-19 06:41:03,382.382 INFO    ] 200
[2026-06-19 06:41:03,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:03,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:41:03,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:41:03,485.485 INFO    ] No camera update needed
[2026-06-19 06:41:03,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:41:03,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:41:03,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:41:03,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:41:05,544.544 INFO    ] ================================================
[2026-06-19 06:41:05,559.559 INFO    ] Launching Daemon at Fri Jun 19 06:41:05 IST 2026
[2026-06-19 06:41:05,571.571 INFO    ] ================================================
[2026-06-19 06:41:06,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:41:06
[2026-06-19 06:41:06,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:41:07,020.020 INFO    ] Initializing speech engine...
[2026-06-19 06:41:07,044.044 INFO    ] 2026-06-19 06:41:07
[2026-06-19 06:41:07,302.302 INFO    ] 2026-06-19 06:41:07
[2026-06-19 06:41:07,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:41:07,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:41:07,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:41:07,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:41:07,772.772 INFO    ] time= 19/06/2026 06:41:07
[2026-06-19 06:41:07,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:41:07,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:41:07,970.970 INFO    ] No existing commands found in stream
[2026-06-19 06:41:12,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:41:12,999.999 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 06:41:17,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:41:17,104.104 INFO    ] Checking for system updates...
[2026-06-19 06:41:17,140.140 INFO    ] 200
[2026-06-19 06:41:17,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:17,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:41:17,198.198 INFO    ] No update needed
[2026-06-19 06:41:17,201.201 INFO    ] Checking for camera pi updates...
[2026-06-19 06:41:17,236.236 INFO    ] 200
[2026-06-19 06:41:17,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:17,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:41:17,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:41:17,322.322 INFO    ] No camera update needed
[2026-06-19 06:41:17,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:41:17,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:41:17,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:41:17,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:41:19,381.381 INFO    ] ================================================
[2026-06-19 06:41:19,398.398 INFO    ] Launching Daemon at Fri Jun 19 06:41:19 IST 2026
[2026-06-19 06:41:19,409.409 INFO    ] ================================================
[2026-06-19 06:41:19,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:41:19
[2026-06-19 06:41:20,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:41:20,824.824 INFO    ] Initializing speech engine...
[2026-06-19 06:41:20,839.839 INFO    ] 2026-06-19 06:41:20
[2026-06-19 06:41:21,123.123 INFO    ] 2026-06-19 06:41:21
[2026-06-19 06:41:21,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:41:21,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:41:21,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:41:21,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:41:21,504.504 INFO    ] time= 19/06/2026 06:41:21
[2026-06-19 06:41:21,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:41:21,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:41:21,631.631 INFO    ] No existing commands found in stream
[2026-06-19 06:41:26,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:41:26,646.646 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 06:41:27,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:41:27,184.184 INFO    ] Checking for system updates...
[2026-06-19 06:41:27,222.222 INFO    ] 200
[2026-06-19 06:41:27,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:27,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:41:27,281.281 INFO    ] No update needed
[2026-06-19 06:41:27,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 06:41:27,319.319 INFO    ] 200
[2026-06-19 06:41:27,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:27,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:41:27,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:41:27,408.408 INFO    ] No camera update needed
[2026-06-19 06:41:27,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:41:27,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:41:27,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:41:27,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:41:29,468.468 INFO    ] ================================================
[2026-06-19 06:41:29,484.484 INFO    ] Launching Daemon at Fri Jun 19 06:41:29 IST 2026
[2026-06-19 06:41:29,495.495 INFO    ] ================================================
[2026-06-19 06:41:30,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:41:30
[2026-06-19 06:41:30,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:41:31,129.129 INFO    ] Initializing speech engine...
[2026-06-19 06:41:31,142.142 INFO    ] 2026-06-19 06:41:31
[2026-06-19 06:41:31,411.411 INFO    ] 2026-06-19 06:41:31
[2026-06-19 06:41:31,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:41:31,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:41:31,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:41:31,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:41:31,958.958 INFO    ] time= 19/06/2026 06:41:31
[2026-06-19 06:41:31,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:41:31,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:41:32,088.088 INFO    ] No existing commands found in stream
[2026-06-19 06:41:37,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:41:37,118.118 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 06:41:39,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:41:39,716.716 INFO    ] Checking for system updates...
[2026-06-19 06:41:39,756.756 INFO    ] 200
[2026-06-19 06:41:39,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:39,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:41:39,816.816 INFO    ] No update needed
[2026-06-19 06:41:39,818.818 INFO    ] Checking for camera pi updates...
[2026-06-19 06:41:39,856.856 INFO    ] 200
[2026-06-19 06:41:39,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:39,905.905 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:41:39,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:41:39,957.957 INFO    ] No camera update needed
[2026-06-19 06:41:39,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:41:39,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:41:39,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:41:39,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:41:42,015.015 INFO    ] ================================================
[2026-06-19 06:41:42,030.030 INFO    ] Launching Daemon at Fri Jun 19 06:41:42 IST 2026
[2026-06-19 06:41:42,042.042 INFO    ] ================================================
[2026-06-19 06:41:42,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:41:42
[2026-06-19 06:41:43,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:41:43,488.488 INFO    ] Initializing speech engine...
[2026-06-19 06:41:43,497.497 INFO    ] 2026-06-19 06:41:43
[2026-06-19 06:41:43,763.763 INFO    ] 2026-06-19 06:41:43
[2026-06-19 06:41:43,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:41:43,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:41:44,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:41:44,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:41:44,120.120 INFO    ] time= 19/06/2026 06:41:44
[2026-06-19 06:41:44,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:41:44,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:41:44,235.235 INFO    ] No existing commands found in stream
[2026-06-19 06:41:49,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:41:49,268.268 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 06:41:53,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:41:53,027.027 INFO    ] Checking for system updates...
[2026-06-19 06:41:53,067.067 INFO    ] 200
[2026-06-19 06:41:53,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:53,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:41:53,126.126 INFO    ] No update needed
[2026-06-19 06:41:53,128.128 INFO    ] Checking for camera pi updates...
[2026-06-19 06:41:53,162.162 INFO    ] 200
[2026-06-19 06:41:53,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:41:53,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:41:53,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:41:53,248.248 INFO    ] No camera update needed
[2026-06-19 06:41:53,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:41:53,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:41:53,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:41:53,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:41:55,305.305 INFO    ] ================================================
[2026-06-19 06:41:55,321.321 INFO    ] Launching Daemon at Fri Jun 19 06:41:55 IST 2026
[2026-06-19 06:41:55,332.332 INFO    ] ================================================
[2026-06-19 06:41:55,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:41:55
[2026-06-19 06:41:56,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:41:56,981.981 INFO    ] Initializing speech engine...
[2026-06-19 06:41:56,992.992 INFO    ] 2026-06-19 06:41:56
[2026-06-19 06:41:57,272.272 INFO    ] 2026-06-19 06:41:57
[2026-06-19 06:41:57,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:41:57,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:41:57,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:41:57,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:41:57,814.814 INFO    ] time= 19/06/2026 06:41:57
[2026-06-19 06:41:57,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:41:57,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:41:57,968.968 INFO    ] No existing commands found in stream
[2026-06-19 06:42:02,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:42:02,986.986 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 06:42:06,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:42:06,593.593 INFO    ] Checking for system updates...
[2026-06-19 06:42:06,638.638 INFO    ] 200
[2026-06-19 06:42:06,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:06,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:42:06,720.720 INFO    ] No update needed
[2026-06-19 06:42:06,722.722 INFO    ] Checking for camera pi updates...
[2026-06-19 06:42:06,759.759 INFO    ] 200
[2026-06-19 06:42:06,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:06,803.803 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:42:06,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:42:06,853.853 INFO    ] No camera update needed
[2026-06-19 06:42:06,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:42:06,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:42:06,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:42:06,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:42:08,912.912 INFO    ] ================================================
[2026-06-19 06:42:08,928.928 INFO    ] Launching Daemon at Fri Jun 19 06:42:08 IST 2026
[2026-06-19 06:42:08,943.943 INFO    ] ================================================
[2026-06-19 06:42:09,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:42:09
[2026-06-19 06:42:10,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:42:10,401.401 INFO    ] Initializing speech engine...
[2026-06-19 06:42:10,413.413 INFO    ] 2026-06-19 06:42:10
[2026-06-19 06:42:10,664.664 INFO    ] 2026-06-19 06:42:10
[2026-06-19 06:42:10,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:42:10,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:42:10,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:42:11,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:42:11,122.122 INFO    ] time= 19/06/2026 06:42:11
[2026-06-19 06:42:11,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:42:11,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:42:11,281.281 INFO    ] No existing commands found in stream
[2026-06-19 06:42:16,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:42:16,296.296 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 06:42:17,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:42:17,593.593 INFO    ] Checking for system updates...
[2026-06-19 06:42:17,629.629 INFO    ] 200
[2026-06-19 06:42:17,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:17,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:42:17,687.687 INFO    ] No update needed
[2026-06-19 06:42:17,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 06:42:17,728.728 INFO    ] 200
[2026-06-19 06:42:17,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:17,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:42:17,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:42:17,814.814 INFO    ] No camera update needed
[2026-06-19 06:42:17,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:42:17,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:42:17,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:42:17,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:42:19,871.871 INFO    ] ================================================
[2026-06-19 06:42:19,887.887 INFO    ] Launching Daemon at Fri Jun 19 06:42:19 IST 2026
[2026-06-19 06:42:19,898.898 INFO    ] ================================================
[2026-06-19 06:42:20,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:42:20
[2026-06-19 06:42:21,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:42:21,506.506 INFO    ] Initializing speech engine...
[2026-06-19 06:42:21,516.516 INFO    ] 2026-06-19 06:42:21
[2026-06-19 06:42:21,766.766 INFO    ] 2026-06-19 06:42:21
[2026-06-19 06:42:21,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:42:22,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:42:22,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:42:22,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:42:22,342.342 INFO    ] time= 19/06/2026 06:42:22
[2026-06-19 06:42:22,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:42:22,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:42:22,473.473 INFO    ] No existing commands found in stream
[2026-06-19 06:42:27,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:42:27,508.508 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 06:42:31,111.111 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:42:31,114.114 INFO    ] Checking for system updates...
[2026-06-19 06:42:31,151.151 INFO    ] 200
[2026-06-19 06:42:31,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:31,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:42:31,210.210 INFO    ] No update needed
[2026-06-19 06:42:31,213.213 INFO    ] Checking for camera pi updates...
[2026-06-19 06:42:31,249.249 INFO    ] 200
[2026-06-19 06:42:31,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:31,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:42:31,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:42:31,335.335 INFO    ] No camera update needed
[2026-06-19 06:42:31,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:42:31,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:42:31,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:42:31,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:42:33,392.392 INFO    ] ================================================
[2026-06-19 06:42:33,408.408 INFO    ] Launching Daemon at Fri Jun 19 06:42:33 IST 2026
[2026-06-19 06:42:33,419.419 INFO    ] ================================================
[2026-06-19 06:42:34,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:42:34
[2026-06-19 06:42:34,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:42:34,922.922 INFO    ] Initializing speech engine...
[2026-06-19 06:42:34,930.930 INFO    ] 2026-06-19 06:42:34
[2026-06-19 06:42:35,232.232 INFO    ] 2026-06-19 06:42:35
[2026-06-19 06:42:35,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:42:35,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:42:35,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:42:35,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:42:35,622.622 INFO    ] time= 19/06/2026 06:42:35
[2026-06-19 06:42:35,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:42:35,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:42:35,754.754 INFO    ] No existing commands found in stream
[2026-06-19 06:42:40,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:42:40,768.768 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 06:42:43,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:42:43,990.990 INFO    ] Checking for system updates...
[2026-06-19 06:42:44,026.026 INFO    ] 200
[2026-06-19 06:42:44,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:44,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:42:44,084.084 INFO    ] No update needed
[2026-06-19 06:42:44,087.087 INFO    ] Checking for camera pi updates...
[2026-06-19 06:42:44,121.121 INFO    ] 200
[2026-06-19 06:42:44,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:44,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:42:44,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:42:44,204.204 INFO    ] No camera update needed
[2026-06-19 06:42:44,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:42:44,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:42:44,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:42:44,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:42:46,263.263 INFO    ] ================================================
[2026-06-19 06:42:46,278.278 INFO    ] Launching Daemon at Fri Jun 19 06:42:46 IST 2026
[2026-06-19 06:42:46,289.289 INFO    ] ================================================
[2026-06-19 06:42:46,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:42:46
[2026-06-19 06:42:47,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:42:47,740.740 INFO    ] Initializing speech engine...
[2026-06-19 06:42:47,754.754 INFO    ] 2026-06-19 06:42:47
[2026-06-19 06:42:48,051.051 INFO    ] 2026-06-19 06:42:48
[2026-06-19 06:42:48,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:42:48,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:42:48,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:42:48,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:42:48,444.444 INFO    ] time= 19/06/2026 06:42:48
[2026-06-19 06:42:48,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:42:48,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:42:48,553.553 INFO    ] No existing commands found in stream
[2026-06-19 06:42:53,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:42:53,581.581 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 06:42:55,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:42:55,012.012 INFO    ] Checking for system updates...
[2026-06-19 06:42:55,054.054 INFO    ] 200
[2026-06-19 06:42:55,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:55,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:42:55,112.112 INFO    ] No update needed
[2026-06-19 06:42:55,115.115 INFO    ] Checking for camera pi updates...
[2026-06-19 06:42:55,149.149 INFO    ] 200
[2026-06-19 06:42:55,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:42:55,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:42:55,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:42:55,243.243 INFO    ] No camera update needed
[2026-06-19 06:42:55,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:42:55,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:42:55,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:42:55,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:42:57,300.300 INFO    ] ================================================
[2026-06-19 06:42:57,316.316 INFO    ] Launching Daemon at Fri Jun 19 06:42:57 IST 2026
[2026-06-19 06:42:57,327.327 INFO    ] ================================================
[2026-06-19 06:42:58,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:42:58
[2026-06-19 06:42:58,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:42:59,013.013 INFO    ] Initializing speech engine...
[2026-06-19 06:42:59,027.027 INFO    ] 2026-06-19 06:42:59
[2026-06-19 06:42:59,292.292 INFO    ] 2026-06-19 06:42:59
[2026-06-19 06:42:59,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:42:59,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:42:59,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:42:59,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:42:59,685.685 INFO    ] time= 19/06/2026 06:42:59
[2026-06-19 06:42:59,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:42:59,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:42:59,812.812 INFO    ] No existing commands found in stream
[2026-06-19 06:43:04,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:43:04,828.828 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 06:43:06,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:43:06,422.422 INFO    ] Checking for system updates...
[2026-06-19 06:43:06,463.463 INFO    ] 200
[2026-06-19 06:43:06,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:06,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:43:06,521.521 INFO    ] No update needed
[2026-06-19 06:43:06,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 06:43:06,558.558 INFO    ] 200
[2026-06-19 06:43:06,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:06,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:43:06,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:43:06,763.763 INFO    ] No camera update needed
[2026-06-19 06:43:06,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:43:06,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:43:06,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:43:06,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:43:08,817.817 INFO    ] ================================================
[2026-06-19 06:43:08,833.833 INFO    ] Launching Daemon at Fri Jun 19 06:43:08 IST 2026
[2026-06-19 06:43:08,844.844 INFO    ] ================================================
[2026-06-19 06:43:09,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:43:09
[2026-06-19 06:43:10,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:43:10,504.504 INFO    ] Initializing speech engine...
[2026-06-19 06:43:10,513.513 INFO    ] 2026-06-19 06:43:10
[2026-06-19 06:43:10,830.830 INFO    ] 2026-06-19 06:43:10
[2026-06-19 06:43:10,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:43:11,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:43:11,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:43:11,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:43:11,341.341 INFO    ] time= 19/06/2026 06:43:11
[2026-06-19 06:43:11,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:43:11,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:43:11,500.500 INFO    ] No existing commands found in stream
[2026-06-19 06:43:16,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:43:16,524.524 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-19 06:43:20,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:43:20,299.299 INFO    ] Checking for system updates...
[2026-06-19 06:43:20,342.342 INFO    ] 200
[2026-06-19 06:43:20,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:20,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:43:20,402.402 INFO    ] No update needed
[2026-06-19 06:43:20,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 06:43:20,441.441 INFO    ] 200
[2026-06-19 06:43:20,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:20,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:43:20,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:43:20,532.532 INFO    ] No camera update needed
[2026-06-19 06:43:20,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:43:20,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:43:20,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:43:20,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:43:22,593.593 INFO    ] ================================================
[2026-06-19 06:43:22,608.608 INFO    ] Launching Daemon at Fri Jun 19 06:43:22 IST 2026
[2026-06-19 06:43:22,620.620 INFO    ] ================================================
[2026-06-19 06:43:23,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:43:23
[2026-06-19 06:43:23,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:43:24,054.054 INFO    ] Initializing speech engine...
[2026-06-19 06:43:24,073.073 INFO    ] 2026-06-19 06:43:24
[2026-06-19 06:43:24,325.325 INFO    ] 2026-06-19 06:43:24
[2026-06-19 06:43:24,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:43:24,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:43:24,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:43:24,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:43:24,799.799 INFO    ] time= 19/06/2026 06:43:24
[2026-06-19 06:43:24,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:43:24,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:43:24,946.946 INFO    ] No existing commands found in stream
[2026-06-19 06:43:29,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:43:29,961.961 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 06:43:33,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:43:33,161.161 INFO    ] Checking for system updates...
[2026-06-19 06:43:33,198.198 INFO    ] 200
[2026-06-19 06:43:33,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:33,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:43:33,259.259 INFO    ] No update needed
[2026-06-19 06:43:33,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 06:43:33,301.301 INFO    ] 200
[2026-06-19 06:43:33,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:33,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:43:33,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:43:33,400.400 INFO    ] No camera update needed
[2026-06-19 06:43:33,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:43:33,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:43:33,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:43:33,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:43:35,461.461 INFO    ] ================================================
[2026-06-19 06:43:35,478.478 INFO    ] Launching Daemon at Fri Jun 19 06:43:35 IST 2026
[2026-06-19 06:43:35,489.489 INFO    ] ================================================
[2026-06-19 06:43:36,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:43:36
[2026-06-19 06:43:36,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:43:36,894.894 INFO    ] Initializing speech engine...
[2026-06-19 06:43:36,916.916 INFO    ] 2026-06-19 06:43:36
[2026-06-19 06:43:37,174.174 INFO    ] 2026-06-19 06:43:37
[2026-06-19 06:43:37,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:43:37,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:43:37,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:43:37,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:43:37,517.517 INFO    ] time= 19/06/2026 06:43:37
[2026-06-19 06:43:37,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:43:37,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:43:37,591.591 INFO    ] No existing commands found in stream
[2026-06-19 06:43:42,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:43:42,614.614 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-19 06:43:45,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:43:45,122.122 INFO    ] Checking for system updates...
[2026-06-19 06:43:45,159.159 INFO    ] 200
[2026-06-19 06:43:45,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:45,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:43:45,228.228 INFO    ] No update needed
[2026-06-19 06:43:45,231.231 INFO    ] Checking for camera pi updates...
[2026-06-19 06:43:45,267.267 INFO    ] 200
[2026-06-19 06:43:45,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:45,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:43:45,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:43:45,363.363 INFO    ] No camera update needed
[2026-06-19 06:43:45,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:43:45,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:43:45,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:43:45,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:43:47,426.426 INFO    ] ================================================
[2026-06-19 06:43:47,442.442 INFO    ] Launching Daemon at Fri Jun 19 06:43:47 IST 2026
[2026-06-19 06:43:47,453.453 INFO    ] ================================================
[2026-06-19 06:43:48,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:43:48
[2026-06-19 06:43:48,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:43:48,872.872 INFO    ] Initializing speech engine...
[2026-06-19 06:43:48,879.879 INFO    ] 2026-06-19 06:43:48
[2026-06-19 06:43:49,179.179 INFO    ] 2026-06-19 06:43:49
[2026-06-19 06:43:49,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:43:49,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:43:49,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:43:49,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:43:49,578.578 INFO    ] time= 19/06/2026 06:43:49
[2026-06-19 06:43:49,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:43:49,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:43:49,707.707 INFO    ] No existing commands found in stream
[2026-06-19 06:43:54,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:43:54,720.720 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 06:43:55,258.258 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:43:55,261.261 INFO    ] Checking for system updates...
[2026-06-19 06:43:55,304.304 INFO    ] 200
[2026-06-19 06:43:55,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:55,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:43:55,364.364 INFO    ] No update needed
[2026-06-19 06:43:55,367.367 INFO    ] Checking for camera pi updates...
[2026-06-19 06:43:55,403.403 INFO    ] 200
[2026-06-19 06:43:55,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:43:55,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:43:55,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:43:55,491.491 INFO    ] No camera update needed
[2026-06-19 06:43:55,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:43:55,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:43:55,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:43:55,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:43:57,548.548 INFO    ] ================================================
[2026-06-19 06:43:57,564.564 INFO    ] Launching Daemon at Fri Jun 19 06:43:57 IST 2026
[2026-06-19 06:43:57,575.575 INFO    ] ================================================
[2026-06-19 06:43:58,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:43:58
[2026-06-19 06:43:58,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:43:59,239.239 INFO    ] Initializing speech engine...
[2026-06-19 06:43:59,247.247 INFO    ] 2026-06-19 06:43:59
[2026-06-19 06:43:59,535.535 INFO    ] 2026-06-19 06:43:59
[2026-06-19 06:43:59,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:43:59,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:43:59,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:43:59,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:44:00,024.024 INFO    ] time= 19/06/2026 06:43:59
[2026-06-19 06:44:00,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:44:00,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:44:00,210.210 INFO    ] No existing commands found in stream
[2026-06-19 06:44:05,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:44:05,242.242 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 06:44:07,026.026 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:44:07,029.029 INFO    ] Checking for system updates...
[2026-06-19 06:44:07,067.067 INFO    ] 200
[2026-06-19 06:44:07,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:07,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:44:07,136.136 INFO    ] No update needed
[2026-06-19 06:44:07,139.139 INFO    ] Checking for camera pi updates...
[2026-06-19 06:44:07,176.176 INFO    ] 200
[2026-06-19 06:44:07,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:07,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:44:07,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:44:07,273.273 INFO    ] No camera update needed
[2026-06-19 06:44:07,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:44:07,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:44:07,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:44:07,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:44:09,329.329 INFO    ] ================================================
[2026-06-19 06:44:09,344.344 INFO    ] Launching Daemon at Fri Jun 19 06:44:09 IST 2026
[2026-06-19 06:44:09,356.356 INFO    ] ================================================
[2026-06-19 06:44:10,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:44:10
[2026-06-19 06:44:10,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:44:10,887.887 INFO    ] Initializing speech engine...
[2026-06-19 06:44:10,901.901 INFO    ] 2026-06-19 06:44:10
[2026-06-19 06:44:11,190.190 INFO    ] 2026-06-19 06:44:11
[2026-06-19 06:44:11,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:44:11,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:44:11,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:44:11,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:44:11,663.663 INFO    ] time= 19/06/2026 06:44:11
[2026-06-19 06:44:11,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:44:11,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:44:11,837.837 INFO    ] No existing commands found in stream
[2026-06-19 06:44:16,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:44:16,867.867 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 06:44:18,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:44:18,399.399 INFO    ] Checking for system updates...
[2026-06-19 06:44:18,435.435 INFO    ] 200
[2026-06-19 06:44:18,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:18,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:44:18,494.494 INFO    ] No update needed
[2026-06-19 06:44:18,496.496 INFO    ] Checking for camera pi updates...
[2026-06-19 06:44:18,530.530 INFO    ] 200
[2026-06-19 06:44:18,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:18,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:44:18,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:44:18,623.623 INFO    ] No camera update needed
[2026-06-19 06:44:18,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:44:18,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:44:18,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:44:18,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:44:20,678.678 INFO    ] ================================================
[2026-06-19 06:44:20,693.693 INFO    ] Launching Daemon at Fri Jun 19 06:44:20 IST 2026
[2026-06-19 06:44:20,704.704 INFO    ] ================================================
[2026-06-19 06:44:21,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:44:21
[2026-06-19 06:44:21,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:44:22,244.244 INFO    ] Initializing speech engine...
[2026-06-19 06:44:22,256.256 INFO    ] 2026-06-19 06:44:22
[2026-06-19 06:44:22,565.565 INFO    ] 2026-06-19 06:44:22
[2026-06-19 06:44:22,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:44:22,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:44:22,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:44:22,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:44:23,010.010 INFO    ] time= 19/06/2026 06:44:22
[2026-06-19 06:44:23,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:44:23,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:44:23,211.211 INFO    ] No existing commands found in stream
[2026-06-19 06:44:28,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:44:28,244.244 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 06:44:30,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:44:30,923.923 INFO    ] Checking for system updates...
[2026-06-19 06:44:30,960.960 INFO    ] 200
[2026-06-19 06:44:30,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:31,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:44:31,018.018 INFO    ] No update needed
[2026-06-19 06:44:31,020.020 INFO    ] Checking for camera pi updates...
[2026-06-19 06:44:31,054.054 INFO    ] 200
[2026-06-19 06:44:31,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:31,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:44:31,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:44:31,143.143 INFO    ] No camera update needed
[2026-06-19 06:44:31,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:44:31,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:44:31,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:44:31,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:44:33,198.198 INFO    ] ================================================
[2026-06-19 06:44:33,213.213 INFO    ] Launching Daemon at Fri Jun 19 06:44:33 IST 2026
[2026-06-19 06:44:33,223.223 INFO    ] ================================================
[2026-06-19 06:44:33,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:44:33
[2026-06-19 06:44:34,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:44:34,854.854 INFO    ] Initializing speech engine...
[2026-06-19 06:44:34,860.860 INFO    ] 2026-06-19 06:44:34
[2026-06-19 06:44:35,139.139 INFO    ] 2026-06-19 06:44:35
[2026-06-19 06:44:35,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:44:35,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:44:35,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:44:35,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:44:35,678.678 INFO    ] time= 19/06/2026 06:44:35
[2026-06-19 06:44:35,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:44:35,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:44:35,823.823 INFO    ] No existing commands found in stream
[2026-06-19 06:44:40,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:44:40,848.848 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 06:44:42,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:44:42,883.883 INFO    ] Checking for system updates...
[2026-06-19 06:44:42,925.925 INFO    ] 200
[2026-06-19 06:44:42,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:42,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:44:42,982.982 INFO    ] No update needed
[2026-06-19 06:44:42,985.985 INFO    ] Checking for camera pi updates...
[2026-06-19 06:44:43,020.020 INFO    ] 200
[2026-06-19 06:44:43,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:43,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:44:43,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:44:43,111.111 INFO    ] No camera update needed
[2026-06-19 06:44:43,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:44:43,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:44:43,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:44:43,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:44:45,166.166 INFO    ] ================================================
[2026-06-19 06:44:45,181.181 INFO    ] Launching Daemon at Fri Jun 19 06:44:45 IST 2026
[2026-06-19 06:44:45,192.192 INFO    ] ================================================
[2026-06-19 06:44:45,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:44:45
[2026-06-19 06:44:46,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:44:46,815.815 INFO    ] Initializing speech engine...
[2026-06-19 06:44:46,824.824 INFO    ] 2026-06-19 06:44:46
[2026-06-19 06:44:47,105.105 INFO    ] 2026-06-19 06:44:47
[2026-06-19 06:44:47,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:44:47,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:44:47,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:44:47,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:44:47,585.585 INFO    ] time= 19/06/2026 06:44:47
[2026-06-19 06:44:47,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:44:47,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:44:47,799.799 INFO    ] No existing commands found in stream
[2026-06-19 06:44:52,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:44:52,833.833 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 06:44:54,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:44:54,538.538 INFO    ] Checking for system updates...
[2026-06-19 06:44:54,575.575 INFO    ] 200
[2026-06-19 06:44:54,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:54,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:44:54,632.632 INFO    ] No update needed
[2026-06-19 06:44:54,635.635 INFO    ] Checking for camera pi updates...
[2026-06-19 06:44:54,668.668 INFO    ] 200
[2026-06-19 06:44:54,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:44:54,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:44:54,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:44:54,752.752 INFO    ] No camera update needed
[2026-06-19 06:44:54,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:44:54,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:44:54,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:44:54,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:44:56,806.806 INFO    ] ================================================
[2026-06-19 06:44:56,821.821 INFO    ] Launching Daemon at Fri Jun 19 06:44:56 IST 2026
[2026-06-19 06:44:56,832.832 INFO    ] ================================================
[2026-06-19 06:44:57,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:44:57
[2026-06-19 06:44:58,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:44:58,295.295 INFO    ] Initializing speech engine...
[2026-06-19 06:44:58,304.304 INFO    ] 2026-06-19 06:44:58
[2026-06-19 06:44:58,556.556 INFO    ] 2026-06-19 06:44:58
[2026-06-19 06:44:58,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:44:58,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:44:58,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:44:58,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:44:59,034.034 INFO    ] time= 19/06/2026 06:44:58
[2026-06-19 06:44:59,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:44:59,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:44:59,235.235 INFO    ] No existing commands found in stream
[2026-06-19 06:45:04,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:45:04,266.266 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 06:45:07,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:45:07,249.249 INFO    ] Checking for system updates...
[2026-06-19 06:45:07,285.285 INFO    ] 200
[2026-06-19 06:45:07,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:07,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:45:07,348.348 INFO    ] No update needed
[2026-06-19 06:45:07,351.351 INFO    ] Checking for camera pi updates...
[2026-06-19 06:45:07,389.389 INFO    ] 200
[2026-06-19 06:45:07,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:07,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:45:07,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:45:07,481.481 INFO    ] No camera update needed
[2026-06-19 06:45:07,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:45:07,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:45:07,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:45:07,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:45:09,540.540 INFO    ] ================================================
[2026-06-19 06:45:09,555.555 INFO    ] Launching Daemon at Fri Jun 19 06:45:09 IST 2026
[2026-06-19 06:45:09,565.565 INFO    ] ================================================
[2026-06-19 06:45:10,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:45:10
[2026-06-19 06:45:10,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:45:10,966.966 INFO    ] Initializing speech engine...
[2026-06-19 06:45:10,981.981 INFO    ] 2026-06-19 06:45:10
[2026-06-19 06:45:11,243.243 INFO    ] 2026-06-19 06:45:11
[2026-06-19 06:45:11,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:45:11,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:45:11,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:45:11,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:45:11,639.639 INFO    ] time= 19/06/2026 06:45:11
[2026-06-19 06:45:11,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:45:11,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:45:11,827.827 INFO    ] No existing commands found in stream
[2026-06-19 06:45:16,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:45:16,854.854 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 06:45:19,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:45:19,519.519 INFO    ] Checking for system updates...
[2026-06-19 06:45:19,560.560 INFO    ] 200
[2026-06-19 06:45:19,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:19,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:45:19,627.627 INFO    ] No update needed
[2026-06-19 06:45:19,629.629 INFO    ] Checking for camera pi updates...
[2026-06-19 06:45:19,667.667 INFO    ] 200
[2026-06-19 06:45:19,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:19,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:45:19,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:45:19,857.857 INFO    ] No camera update needed
[2026-06-19 06:45:19,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:45:19,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:45:19,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:45:19,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:45:21,917.917 INFO    ] ================================================
[2026-06-19 06:45:21,932.932 INFO    ] Launching Daemon at Fri Jun 19 06:45:21 IST 2026
[2026-06-19 06:45:21,943.943 INFO    ] ================================================
[2026-06-19 06:45:22,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:45:22
[2026-06-19 06:45:23,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:45:23,356.356 INFO    ] Initializing speech engine...
[2026-06-19 06:45:23,369.369 INFO    ] 2026-06-19 06:45:23
[2026-06-19 06:45:23,637.637 INFO    ] 2026-06-19 06:45:23
[2026-06-19 06:45:23,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:45:23,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:45:23,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:45:24,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:45:24,026.026 INFO    ] time= 19/06/2026 06:45:24
[2026-06-19 06:45:24,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:45:24,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:45:24,150.150 INFO    ] No existing commands found in stream
[2026-06-19 06:45:29,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:45:29,166.166 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 06:45:29,975.975 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:45:29,977.977 INFO    ] Checking for system updates...
[2026-06-19 06:45:30,016.016 INFO    ] 200
[2026-06-19 06:45:30,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:30,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:45:30,079.079 INFO    ] No update needed
[2026-06-19 06:45:30,082.082 INFO    ] Checking for camera pi updates...
[2026-06-19 06:45:30,116.116 INFO    ] 200
[2026-06-19 06:45:30,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:30,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:45:30,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:45:30,204.204 INFO    ] No camera update needed
[2026-06-19 06:45:30,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:45:30,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:45:30,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:45:30,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:45:32,261.261 INFO    ] ================================================
[2026-06-19 06:45:32,277.277 INFO    ] Launching Daemon at Fri Jun 19 06:45:32 IST 2026
[2026-06-19 06:45:32,288.288 INFO    ] ================================================
[2026-06-19 06:45:32,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:45:32
[2026-06-19 06:45:33,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:45:33,878.878 INFO    ] Initializing speech engine...
[2026-06-19 06:45:33,890.890 INFO    ] 2026-06-19 06:45:33
[2026-06-19 06:45:34,206.206 INFO    ] 2026-06-19 06:45:34
[2026-06-19 06:45:34,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:45:34,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:45:34,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:45:34,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:45:34,712.712 INFO    ] time= 19/06/2026 06:45:34
[2026-06-19 06:45:34,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:45:34,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:45:34,872.872 INFO    ] No existing commands found in stream
[2026-06-19 06:45:39,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:45:39,909.909 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 06:45:40,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:45:40,990.990 INFO    ] Checking for system updates...
[2026-06-19 06:45:41,029.029 INFO    ] 200
[2026-06-19 06:45:41,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:41,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:45:41,096.096 INFO    ] No update needed
[2026-06-19 06:45:41,099.099 INFO    ] Checking for camera pi updates...
[2026-06-19 06:45:41,139.139 INFO    ] 200
[2026-06-19 06:45:41,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:41,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:45:41,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:45:41,241.241 INFO    ] No camera update needed
[2026-06-19 06:45:41,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:45:41,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:45:41,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:45:41,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:45:43,300.300 INFO    ] ================================================
[2026-06-19 06:45:43,315.315 INFO    ] Launching Daemon at Fri Jun 19 06:45:43 IST 2026
[2026-06-19 06:45:43,326.326 INFO    ] ================================================
[2026-06-19 06:45:43,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:45:43
[2026-06-19 06:45:44,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:45:44,734.734 INFO    ] Initializing speech engine...
[2026-06-19 06:45:44,743.743 INFO    ] 2026-06-19 06:45:44
[2026-06-19 06:45:45,038.038 INFO    ] 2026-06-19 06:45:45
[2026-06-19 06:45:45,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:45:45,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:45:45,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:45:45,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:45:45,419.419 INFO    ] time= 19/06/2026 06:45:45
[2026-06-19 06:45:45,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:45:45,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:45:45,545.545 INFO    ] No existing commands found in stream
[2026-06-19 06:45:50,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:45:50,558.558 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 06:45:51,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:45:51,124.124 INFO    ] Checking for system updates...
[2026-06-19 06:45:51,165.165 INFO    ] 200
[2026-06-19 06:45:51,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:51,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:45:51,232.232 INFO    ] No update needed
[2026-06-19 06:45:51,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 06:45:51,270.270 INFO    ] 200
[2026-06-19 06:45:51,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:45:51,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:45:51,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:45:51,346.346 INFO    ] No camera update needed
[2026-06-19 06:45:51,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:45:51,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:45:51,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:45:51,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:45:53,405.405 INFO    ] ================================================
[2026-06-19 06:45:53,420.420 INFO    ] Launching Daemon at Fri Jun 19 06:45:53 IST 2026
[2026-06-19 06:45:53,431.431 INFO    ] ================================================
[2026-06-19 06:45:54,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:45:54
[2026-06-19 06:45:54,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:45:55,041.041 INFO    ] Initializing speech engine...
[2026-06-19 06:45:55,054.054 INFO    ] 2026-06-19 06:45:55
[2026-06-19 06:45:55,366.366 INFO    ] 2026-06-19 06:45:55
[2026-06-19 06:45:55,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:45:55,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:45:55,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:45:55,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:45:55,875.875 INFO    ] time= 19/06/2026 06:45:55
[2026-06-19 06:45:55,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:45:55,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:45:56,033.033 INFO    ] No existing commands found in stream
[2026-06-19 06:46:01,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:46:01,057.057 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 06:46:01,718.718 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:46:01,721.721 INFO    ] Checking for system updates...
[2026-06-19 06:46:01,762.762 INFO    ] 200
[2026-06-19 06:46:01,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:01,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:46:01,829.829 INFO    ] No update needed
[2026-06-19 06:46:01,832.832 INFO    ] Checking for camera pi updates...
[2026-06-19 06:46:01,870.870 INFO    ] 200
[2026-06-19 06:46:01,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:01,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:46:01,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:46:01,979.979 INFO    ] No camera update needed
[2026-06-19 06:46:01,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:46:01,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:46:02,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:46:02,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:46:04,070.070 INFO    ] ================================================
[2026-06-19 06:46:04,085.085 INFO    ] Launching Daemon at Fri Jun 19 06:46:04 IST 2026
[2026-06-19 06:46:04,096.096 INFO    ] ================================================
[2026-06-19 06:46:04,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:46:04
[2026-06-19 06:46:05,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:46:05,495.495 INFO    ] Initializing speech engine...
[2026-06-19 06:46:05,517.517 INFO    ] 2026-06-19 06:46:05
[2026-06-19 06:46:05,770.770 INFO    ] 2026-06-19 06:46:05
[2026-06-19 06:46:05,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:46:05,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:46:05,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:46:06,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:46:06,147.147 INFO    ] time= 19/06/2026 06:46:06
[2026-06-19 06:46:06,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:46:06,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:46:06,225.225 INFO    ] No existing commands found in stream
[2026-06-19 06:46:11,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:46:11,243.243 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 06:46:13,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:46:13,382.382 INFO    ] Checking for system updates...
[2026-06-19 06:46:13,418.418 INFO    ] 200
[2026-06-19 06:46:13,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:13,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:46:13,477.477 INFO    ] No update needed
[2026-06-19 06:46:13,479.479 INFO    ] Checking for camera pi updates...
[2026-06-19 06:46:13,513.513 INFO    ] 200
[2026-06-19 06:46:13,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:13,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:46:13,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:46:13,611.611 INFO    ] No camera update needed
[2026-06-19 06:46:13,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:46:13,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:46:13,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:46:13,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:46:15,669.669 INFO    ] ================================================
[2026-06-19 06:46:15,684.684 INFO    ] Launching Daemon at Fri Jun 19 06:46:15 IST 2026
[2026-06-19 06:46:15,695.695 INFO    ] ================================================
[2026-06-19 06:46:16,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:46:16
[2026-06-19 06:46:17,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:46:17,303.303 INFO    ] Initializing speech engine...
[2026-06-19 06:46:17,313.313 INFO    ] 2026-06-19 06:46:17
[2026-06-19 06:46:17,589.589 INFO    ] 2026-06-19 06:46:17
[2026-06-19 06:46:17,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:46:17,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:46:17,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:46:18,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:46:18,071.071 INFO    ] time= 19/06/2026 06:46:18
[2026-06-19 06:46:18,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:46:18,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:46:18,211.211 INFO    ] No existing commands found in stream
[2026-06-19 06:46:23,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:46:23,228.228 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 06:46:25,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:46:25,299.299 INFO    ] Checking for system updates...
[2026-06-19 06:46:25,337.337 INFO    ] 200
[2026-06-19 06:46:25,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:25,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:46:25,397.397 INFO    ] No update needed
[2026-06-19 06:46:25,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 06:46:25,434.434 INFO    ] 200
[2026-06-19 06:46:25,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:25,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:46:25,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:46:25,532.532 INFO    ] No camera update needed
[2026-06-19 06:46:25,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:46:25,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:46:25,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:46:25,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:46:27,591.591 INFO    ] ================================================
[2026-06-19 06:46:27,607.607 INFO    ] Launching Daemon at Fri Jun 19 06:46:27 IST 2026
[2026-06-19 06:46:27,619.619 INFO    ] ================================================
[2026-06-19 06:46:28,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:46:28
[2026-06-19 06:46:28,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:46:29,040.040 INFO    ] Initializing speech engine...
[2026-06-19 06:46:29,058.058 INFO    ] 2026-06-19 06:46:29
[2026-06-19 06:46:29,342.342 INFO    ] 2026-06-19 06:46:29
[2026-06-19 06:46:29,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:46:29,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:46:29,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:46:29,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:46:29,720.720 INFO    ] time= 19/06/2026 06:46:29
[2026-06-19 06:46:29,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:46:29,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:46:29,844.844 INFO    ] No existing commands found in stream
[2026-06-19 06:46:34,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:46:34,858.858 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 06:46:38,668.668 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:46:38,670.670 INFO    ] Checking for system updates...
[2026-06-19 06:46:38,707.707 INFO    ] 200
[2026-06-19 06:46:38,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:38,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:46:38,766.766 INFO    ] No update needed
[2026-06-19 06:46:38,768.768 INFO    ] Checking for camera pi updates...
[2026-06-19 06:46:38,802.802 INFO    ] 200
[2026-06-19 06:46:38,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:38,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:46:38,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:46:38,889.889 INFO    ] No camera update needed
[2026-06-19 06:46:38,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:46:38,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:46:38,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:46:38,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:46:40,949.949 INFO    ] ================================================
[2026-06-19 06:46:40,964.964 INFO    ] Launching Daemon at Fri Jun 19 06:46:40 IST 2026
[2026-06-19 06:46:40,975.975 INFO    ] ================================================
[2026-06-19 06:46:41,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:46:41
[2026-06-19 06:46:42,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:46:42,536.536 INFO    ] Initializing speech engine...
[2026-06-19 06:46:42,559.559 INFO    ] 2026-06-19 06:46:42
[2026-06-19 06:46:42,828.828 INFO    ] 2026-06-19 06:46:42
[2026-06-19 06:46:42,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:46:43,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:46:43,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:46:43,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:46:43,212.212 INFO    ] time= 19/06/2026 06:46:43
[2026-06-19 06:46:43,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:46:43,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:46:43,414.414 INFO    ] No existing commands found in stream
[2026-06-19 06:46:48,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:46:48,431.431 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 06:46:49,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:46:49,909.909 INFO    ] Checking for system updates...
[2026-06-19 06:46:49,946.946 INFO    ] 200
[2026-06-19 06:46:49,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:50,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:46:50,007.007 INFO    ] No update needed
[2026-06-19 06:46:50,010.010 INFO    ] Checking for camera pi updates...
[2026-06-19 06:46:50,044.044 INFO    ] 200
[2026-06-19 06:46:50,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:46:50,089.089 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:46:50,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:46:50,136.136 INFO    ] No camera update needed
[2026-06-19 06:46:50,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:46:50,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:46:50,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:46:50,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:46:52,196.196 INFO    ] ================================================
[2026-06-19 06:46:52,211.211 INFO    ] Launching Daemon at Fri Jun 19 06:46:52 IST 2026
[2026-06-19 06:46:52,222.222 INFO    ] ================================================
[2026-06-19 06:46:52,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:46:52
[2026-06-19 06:46:53,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:46:53,692.692 INFO    ] Initializing speech engine...
[2026-06-19 06:46:53,703.703 INFO    ] 2026-06-19 06:46:53
[2026-06-19 06:46:53,971.971 INFO    ] 2026-06-19 06:46:53
[2026-06-19 06:46:54,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:46:54,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:46:54,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:46:54,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:46:54,361.361 INFO    ] time= 19/06/2026 06:46:54
[2026-06-19 06:46:54,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:46:54,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:46:54,471.471 INFO    ] No existing commands found in stream
[2026-06-19 06:46:59,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:46:59,490.490 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 06:47:01,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:47:01,406.406 INFO    ] Checking for system updates...
[2026-06-19 06:47:01,442.442 INFO    ] 200
[2026-06-19 06:47:01,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:01,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:47:01,501.501 INFO    ] No update needed
[2026-06-19 06:47:01,503.503 INFO    ] Checking for camera pi updates...
[2026-06-19 06:47:01,538.538 INFO    ] 200
[2026-06-19 06:47:01,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:01,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:47:01,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:47:01,612.612 INFO    ] No camera update needed
[2026-06-19 06:47:01,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:47:01,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:47:01,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:47:01,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:47:03,671.671 INFO    ] ================================================
[2026-06-19 06:47:03,687.687 INFO    ] Launching Daemon at Fri Jun 19 06:47:03 IST 2026
[2026-06-19 06:47:03,698.698 INFO    ] ================================================
[2026-06-19 06:47:04,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:47:04
[2026-06-19 06:47:04,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:47:05,119.119 INFO    ] Initializing speech engine...
[2026-06-19 06:47:05,127.127 INFO    ] 2026-06-19 06:47:05
[2026-06-19 06:47:05,417.417 INFO    ] 2026-06-19 06:47:05
[2026-06-19 06:47:05,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:47:05,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:47:05,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:47:05,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:47:05,835.835 INFO    ] time= 19/06/2026 06:47:05
[2026-06-19 06:47:05,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:47:05,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:47:06,020.020 INFO    ] No existing commands found in stream
[2026-06-19 06:47:11,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:47:11,053.053 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-19 06:47:11,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:47:11,415.415 INFO    ] Checking for system updates...
[2026-06-19 06:47:11,451.451 INFO    ] 200
[2026-06-19 06:47:11,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:11,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:47:11,508.508 INFO    ] No update needed
[2026-06-19 06:47:11,510.510 INFO    ] Checking for camera pi updates...
[2026-06-19 06:47:11,547.547 INFO    ] 200
[2026-06-19 06:47:11,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:11,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:47:11,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:47:11,631.631 INFO    ] No camera update needed
[2026-06-19 06:47:11,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:47:11,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:47:11,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:47:11,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:47:13,690.690 INFO    ] ================================================
[2026-06-19 06:47:13,707.707 INFO    ] Launching Daemon at Fri Jun 19 06:47:13 IST 2026
[2026-06-19 06:47:13,719.719 INFO    ] ================================================
[2026-06-19 06:47:14,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:47:14
[2026-06-19 06:47:15,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:47:15,343.343 INFO    ] Initializing speech engine...
[2026-06-19 06:47:15,357.357 INFO    ] 2026-06-19 06:47:15
[2026-06-19 06:47:15,635.635 INFO    ] 2026-06-19 06:47:15
[2026-06-19 06:47:15,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:47:15,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:47:15,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:47:16,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:47:16,108.108 INFO    ] time= 19/06/2026 06:47:16
[2026-06-19 06:47:16,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:47:16,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:47:16,249.249 INFO    ] No existing commands found in stream
[2026-06-19 06:47:21,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:47:21,266.266 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 06:47:22,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:47:22,357.357 INFO    ] Checking for system updates...
[2026-06-19 06:47:22,396.396 INFO    ] 200
[2026-06-19 06:47:22,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:22,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:47:22,454.454 INFO    ] No update needed
[2026-06-19 06:47:22,457.457 INFO    ] Checking for camera pi updates...
[2026-06-19 06:47:22,493.493 INFO    ] 200
[2026-06-19 06:47:22,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:22,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:47:22,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:47:22,697.697 INFO    ] No camera update needed
[2026-06-19 06:47:22,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:47:22,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:47:22,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:47:22,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:47:24,755.755 INFO    ] ================================================
[2026-06-19 06:47:24,770.770 INFO    ] Launching Daemon at Fri Jun 19 06:47:24 IST 2026
[2026-06-19 06:47:24,781.781 INFO    ] ================================================
[2026-06-19 06:47:25,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:47:25
[2026-06-19 06:47:26,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:47:26,371.371 INFO    ] Initializing speech engine...
[2026-06-19 06:47:26,378.378 INFO    ] 2026-06-19 06:47:26
[2026-06-19 06:47:26,623.623 INFO    ] 2026-06-19 06:47:26
[2026-06-19 06:47:26,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:47:26,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:47:26,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:47:27,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:47:27,016.016 INFO    ] time= 19/06/2026 06:47:27
[2026-06-19 06:47:27,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:47:27,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:47:27,191.191 INFO    ] No existing commands found in stream
[2026-06-19 06:47:32,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:47:32,225.225 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 06:47:34,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:47:34,688.688 INFO    ] Checking for system updates...
[2026-06-19 06:47:34,724.724 INFO    ] 200
[2026-06-19 06:47:34,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:34,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:47:34,782.782 INFO    ] No update needed
[2026-06-19 06:47:34,784.784 INFO    ] Checking for camera pi updates...
[2026-06-19 06:47:34,822.822 INFO    ] 200
[2026-06-19 06:47:34,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:34,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:47:34,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:47:34,919.919 INFO    ] No camera update needed
[2026-06-19 06:47:34,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:47:34,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:47:34,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:47:34,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:47:36,975.975 INFO    ] ================================================
[2026-06-19 06:47:37,995.995 INFO    ] Launching Daemon at Fri Jun 19 06:47:36 IST 2026
[2026-06-19 06:47:37,006.006 INFO    ] ================================================
[2026-06-19 06:47:37,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:47:37
[2026-06-19 06:47:38,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:47:38,430.430 INFO    ] Initializing speech engine...
[2026-06-19 06:47:38,443.443 INFO    ] 2026-06-19 06:47:38
[2026-06-19 06:47:38,728.728 INFO    ] 2026-06-19 06:47:38
[2026-06-19 06:47:38,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:47:38,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:47:38,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:47:39,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:47:39,108.108 INFO    ] time= 19/06/2026 06:47:39
[2026-06-19 06:47:39,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:47:39,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:47:39,234.234 INFO    ] No existing commands found in stream
[2026-06-19 06:47:44,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:47:44,249.249 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 06:47:48,324.324 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:47:48,327.327 INFO    ] Checking for system updates...
[2026-06-19 06:47:48,366.366 INFO    ] 200
[2026-06-19 06:47:48,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:48,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:47:48,429.429 INFO    ] No update needed
[2026-06-19 06:47:48,431.431 INFO    ] Checking for camera pi updates...
[2026-06-19 06:47:48,468.468 INFO    ] 200
[2026-06-19 06:47:48,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:47:48,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:47:48,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:47:48,549.549 INFO    ] No camera update needed
[2026-06-19 06:47:48,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:47:48,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:47:48,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:47:48,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:47:50,605.605 INFO    ] ================================================
[2026-06-19 06:47:50,620.620 INFO    ] Launching Daemon at Fri Jun 19 06:47:50 IST 2026
[2026-06-19 06:47:50,630.630 INFO    ] ================================================
[2026-06-19 06:47:51,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:47:51
[2026-06-19 06:47:51,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:47:52,100.100 INFO    ] Initializing speech engine...
[2026-06-19 06:47:52,109.109 INFO    ] 2026-06-19 06:47:52
[2026-06-19 06:47:52,377.377 INFO    ] 2026-06-19 06:47:52
[2026-06-19 06:47:52,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:47:52,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:47:52,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:47:52,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:47:52,792.792 INFO    ] time= 19/06/2026 06:47:52
[2026-06-19 06:47:52,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:47:52,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:47:52,876.876 INFO    ] No existing commands found in stream
[2026-06-19 06:47:57,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:47:57,891.891 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 06:48:00,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:48:00,184.184 INFO    ] Checking for system updates...
[2026-06-19 06:48:00,220.220 INFO    ] 200
[2026-06-19 06:48:00,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:00,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:48:00,279.279 INFO    ] No update needed
[2026-06-19 06:48:00,282.282 INFO    ] Checking for camera pi updates...
[2026-06-19 06:48:00,319.319 INFO    ] 200
[2026-06-19 06:48:00,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:00,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:48:00,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:48:00,409.409 INFO    ] No camera update needed
[2026-06-19 06:48:00,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:48:00,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:48:00,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:48:00,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:48:02,468.468 INFO    ] ================================================
[2026-06-19 06:48:02,487.487 INFO    ] Launching Daemon at Fri Jun 19 06:48:02 IST 2026
[2026-06-19 06:48:02,499.499 INFO    ] ================================================
[2026-06-19 06:48:03,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:48:03
[2026-06-19 06:48:03,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:48:04,066.066 INFO    ] Initializing speech engine...
[2026-06-19 06:48:04,073.073 INFO    ] 2026-06-19 06:48:04
[2026-06-19 06:48:04,371.371 INFO    ] 2026-06-19 06:48:04
[2026-06-19 06:48:04,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:48:04,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:48:04,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:48:04,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:48:04,765.765 INFO    ] time= 19/06/2026 06:48:04
[2026-06-19 06:48:04,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:48:04,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:48:04,876.876 INFO    ] No existing commands found in stream
[2026-06-19 06:48:09,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:48:09,914.914 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 06:48:13,840.840 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:48:13,843.843 INFO    ] Checking for system updates...
[2026-06-19 06:48:13,879.879 INFO    ] 200
[2026-06-19 06:48:13,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:13,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:48:13,942.942 INFO    ] No update needed
[2026-06-19 06:48:13,945.945 INFO    ] Checking for camera pi updates...
[2026-06-19 06:48:13,979.979 INFO    ] 200
[2026-06-19 06:48:13,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:14,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:48:14,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:48:14,066.066 INFO    ] No camera update needed
[2026-06-19 06:48:14,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:48:14,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:48:14,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:48:14,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:48:16,122.122 INFO    ] ================================================
[2026-06-19 06:48:16,138.138 INFO    ] Launching Daemon at Fri Jun 19 06:48:16 IST 2026
[2026-06-19 06:48:16,148.148 INFO    ] ================================================
[2026-06-19 06:48:16,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:48:16
[2026-06-19 06:48:17,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:48:17,579.579 INFO    ] Initializing speech engine...
[2026-06-19 06:48:17,585.585 INFO    ] 2026-06-19 06:48:17
[2026-06-19 06:48:17,834.834 INFO    ] 2026-06-19 06:48:17
[2026-06-19 06:48:17,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:48:18,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:48:18,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:48:18,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:48:18,325.325 INFO    ] time= 19/06/2026 06:48:18
[2026-06-19 06:48:18,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:48:18,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:48:18,470.470 INFO    ] No existing commands found in stream
[2026-06-19 06:48:23,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:48:23,484.484 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 06:48:27,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:48:27,547.547 INFO    ] Checking for system updates...
[2026-06-19 06:48:27,584.584 INFO    ] 200
[2026-06-19 06:48:27,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:27,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:48:27,642.642 INFO    ] No update needed
[2026-06-19 06:48:27,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 06:48:27,678.678 INFO    ] 200
[2026-06-19 06:48:27,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:27,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:48:27,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:48:27,766.766 INFO    ] No camera update needed
[2026-06-19 06:48:27,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:48:27,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:48:27,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:48:27,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:48:29,821.821 INFO    ] ================================================
[2026-06-19 06:48:29,839.839 INFO    ] Launching Daemon at Fri Jun 19 06:48:29 IST 2026
[2026-06-19 06:48:29,850.850 INFO    ] ================================================
[2026-06-19 06:48:30,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:48:30
[2026-06-19 06:48:31,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:48:31,456.456 INFO    ] Initializing speech engine...
[2026-06-19 06:48:31,470.470 INFO    ] 2026-06-19 06:48:31
[2026-06-19 06:48:31,746.746 INFO    ] 2026-06-19 06:48:31
[2026-06-19 06:48:31,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:48:32,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:48:32,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:48:32,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:48:32,242.242 INFO    ] time= 19/06/2026 06:48:32
[2026-06-19 06:48:32,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:48:32,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:48:32,384.384 INFO    ] No existing commands found in stream
[2026-06-19 06:48:37,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:48:37,400.400 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 06:48:38,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:48:38,666.666 INFO    ] Checking for system updates...
[2026-06-19 06:48:38,702.702 INFO    ] 200
[2026-06-19 06:48:38,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:38,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:48:38,761.761 INFO    ] No update needed
[2026-06-19 06:48:38,764.764 INFO    ] Checking for camera pi updates...
[2026-06-19 06:48:38,797.797 INFO    ] 200
[2026-06-19 06:48:38,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:38,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:48:38,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:48:38,879.879 INFO    ] No camera update needed
[2026-06-19 06:48:38,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:48:38,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:48:38,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:48:38,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:48:40,934.934 INFO    ] ================================================
[2026-06-19 06:48:40,949.949 INFO    ] Launching Daemon at Fri Jun 19 06:48:40 IST 2026
[2026-06-19 06:48:40,960.960 INFO    ] ================================================
[2026-06-19 06:48:41,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:48:41
[2026-06-19 06:48:42,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:48:42,393.393 INFO    ] Initializing speech engine...
[2026-06-19 06:48:42,408.408 INFO    ] 2026-06-19 06:48:42
[2026-06-19 06:48:42,675.675 INFO    ] 2026-06-19 06:48:42
[2026-06-19 06:48:42,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:48:42,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:48:42,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:48:43,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:48:43,058.058 INFO    ] time= 19/06/2026 06:48:43
[2026-06-19 06:48:43,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:48:43,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:48:43,255.255 INFO    ] No existing commands found in stream
[2026-06-19 06:48:48,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:48:48,268.268 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 06:48:52,455.455 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:48:52,457.457 INFO    ] Checking for system updates...
[2026-06-19 06:48:52,497.497 INFO    ] 200
[2026-06-19 06:48:52,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:52,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:48:52,554.554 INFO    ] No update needed
[2026-06-19 06:48:52,556.556 INFO    ] Checking for camera pi updates...
[2026-06-19 06:48:52,590.590 INFO    ] 200
[2026-06-19 06:48:52,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:48:52,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:48:52,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:48:52,691.691 INFO    ] No camera update needed
[2026-06-19 06:48:52,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:48:52,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:48:52,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:48:52,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:48:54,748.748 INFO    ] ================================================
[2026-06-19 06:48:54,763.763 INFO    ] Launching Daemon at Fri Jun 19 06:48:54 IST 2026
[2026-06-19 06:48:54,774.774 INFO    ] ================================================
[2026-06-19 06:48:55,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:48:55
[2026-06-19 06:48:55,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:48:56,215.215 INFO    ] Initializing speech engine...
[2026-06-19 06:48:56,224.224 INFO    ] 2026-06-19 06:48:56
[2026-06-19 06:48:56,518.518 INFO    ] 2026-06-19 06:48:56
[2026-06-19 06:48:56,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:48:56,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:48:56,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:48:56,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:48:56,896.896 INFO    ] time= 19/06/2026 06:48:56
[2026-06-19 06:48:56,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:48:56,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:48:57,022.022 INFO    ] No existing commands found in stream
[2026-06-19 06:49:02,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:49:02,040.040 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 06:49:02,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:49:02,730.730 INFO    ] Checking for system updates...
[2026-06-19 06:49:02,770.770 INFO    ] 200
[2026-06-19 06:49:02,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:02,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:49:02,836.836 INFO    ] No update needed
[2026-06-19 06:49:02,839.839 INFO    ] Checking for camera pi updates...
[2026-06-19 06:49:02,877.877 INFO    ] 200
[2026-06-19 06:49:02,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:02,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:49:02,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:49:03,000.000 INFO    ] No camera update needed
[2026-06-19 06:49:03,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:49:03,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:49:03,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:49:03,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:49:05,066.066 INFO    ] ================================================
[2026-06-19 06:49:05,081.081 INFO    ] Launching Daemon at Fri Jun 19 06:49:05 IST 2026
[2026-06-19 06:49:05,092.092 INFO    ] ================================================
[2026-06-19 06:49:05,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:49:05
[2026-06-19 06:49:06,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:49:06,547.547 INFO    ] Initializing speech engine...
[2026-06-19 06:49:06,553.553 INFO    ] 2026-06-19 06:49:06
[2026-06-19 06:49:06,827.827 INFO    ] 2026-06-19 06:49:06
[2026-06-19 06:49:06,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:49:07,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:49:07,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:49:07,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:49:07,265.265 INFO    ] time= 19/06/2026 06:49:07
[2026-06-19 06:49:07,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:49:07,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:49:07,449.449 INFO    ] No existing commands found in stream
[2026-06-19 06:49:12,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:49:12,463.463 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 06:49:13,973.973 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:49:13,975.975 INFO    ] Checking for system updates...
[2026-06-19 06:49:14,011.011 INFO    ] 200
[2026-06-19 06:49:14,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:14,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:49:14,069.069 INFO    ] No update needed
[2026-06-19 06:49:14,071.071 INFO    ] Checking for camera pi updates...
[2026-06-19 06:49:14,106.106 INFO    ] 200
[2026-06-19 06:49:14,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:14,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:49:14,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:49:14,191.191 INFO    ] No camera update needed
[2026-06-19 06:49:14,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:49:14,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:49:14,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:49:14,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:49:16,247.247 INFO    ] ================================================
[2026-06-19 06:49:16,262.262 INFO    ] Launching Daemon at Fri Jun 19 06:49:16 IST 2026
[2026-06-19 06:49:16,273.273 INFO    ] ================================================
[2026-06-19 06:49:16,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:49:16
[2026-06-19 06:49:17,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:49:17,740.740 INFO    ] Initializing speech engine...
[2026-06-19 06:49:17,755.755 INFO    ] 2026-06-19 06:49:17
[2026-06-19 06:49:18,035.035 INFO    ] 2026-06-19 06:49:18
[2026-06-19 06:49:18,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:49:18,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:49:18,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:49:18,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:49:18,444.444 INFO    ] time= 19/06/2026 06:49:18
[2026-06-19 06:49:18,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:49:18,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:49:18,626.626 INFO    ] No existing commands found in stream
[2026-06-19 06:49:23,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:49:23,659.659 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 06:49:25,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:49:25,382.382 INFO    ] Checking for system updates...
[2026-06-19 06:49:25,418.418 INFO    ] 200
[2026-06-19 06:49:25,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:25,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:49:25,477.477 INFO    ] No update needed
[2026-06-19 06:49:25,480.480 INFO    ] Checking for camera pi updates...
[2026-06-19 06:49:25,517.517 INFO    ] 200
[2026-06-19 06:49:25,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:25,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:49:25,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:49:25,707.707 INFO    ] No camera update needed
[2026-06-19 06:49:25,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:49:25,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:49:25,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:49:25,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:49:27,763.763 INFO    ] ================================================
[2026-06-19 06:49:27,778.778 INFO    ] Launching Daemon at Fri Jun 19 06:49:27 IST 2026
[2026-06-19 06:49:27,789.789 INFO    ] ================================================
[2026-06-19 06:49:28,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:49:28
[2026-06-19 06:49:28,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:49:29,197.197 INFO    ] Initializing speech engine...
[2026-06-19 06:49:29,212.212 INFO    ] 2026-06-19 06:49:29
[2026-06-19 06:49:29,494.494 INFO    ] 2026-06-19 06:49:29
[2026-06-19 06:49:29,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:49:29,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:49:29,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:49:29,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:49:29,862.862 INFO    ] time= 19/06/2026 06:49:29
[2026-06-19 06:49:29,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:49:29,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:49:29,984.984 INFO    ] No existing commands found in stream
[2026-06-19 06:49:34,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:49:34,999.999 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 06:49:36,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:49:36,689.689 INFO    ] Checking for system updates...
[2026-06-19 06:49:36,724.724 INFO    ] 200
[2026-06-19 06:49:36,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:36,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:49:36,781.781 INFO    ] No update needed
[2026-06-19 06:49:36,784.784 INFO    ] Checking for camera pi updates...
[2026-06-19 06:49:36,818.818 INFO    ] 200
[2026-06-19 06:49:36,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:36,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:49:36,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:49:36,905.905 INFO    ] No camera update needed
[2026-06-19 06:49:36,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:49:36,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:49:36,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:49:36,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:49:38,962.962 INFO    ] ================================================
[2026-06-19 06:49:38,978.978 INFO    ] Launching Daemon at Fri Jun 19 06:49:38 IST 2026
[2026-06-19 06:49:38,989.989 INFO    ] ================================================
[2026-06-19 06:49:39,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:49:39
[2026-06-19 06:49:40,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:49:40,518.518 INFO    ] Initializing speech engine...
[2026-06-19 06:49:40,525.525 INFO    ] 2026-06-19 06:49:40
[2026-06-19 06:49:40,808.808 INFO    ] 2026-06-19 06:49:40
[2026-06-19 06:49:40,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:49:41,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:49:41,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:49:41,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:49:41,346.346 INFO    ] time= 19/06/2026 06:49:41
[2026-06-19 06:49:41,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:49:41,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:49:41,486.486 INFO    ] No existing commands found in stream
[2026-06-19 06:49:46,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:49:46,514.514 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 06:49:49,422.422 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:49:49,425.425 INFO    ] Checking for system updates...
[2026-06-19 06:49:49,464.464 INFO    ] 200
[2026-06-19 06:49:49,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:49,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:49:49,527.527 INFO    ] No update needed
[2026-06-19 06:49:49,529.529 INFO    ] Checking for camera pi updates...
[2026-06-19 06:49:49,562.562 INFO    ] 200
[2026-06-19 06:49:49,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:49:49,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:49:49,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:49:49,641.641 INFO    ] No camera update needed
[2026-06-19 06:49:49,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:49:49,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:49:49,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:49:49,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:49:51,697.697 INFO    ] ================================================
[2026-06-19 06:49:51,713.713 INFO    ] Launching Daemon at Fri Jun 19 06:49:51 IST 2026
[2026-06-19 06:49:51,724.724 INFO    ] ================================================
[2026-06-19 06:49:52,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:49:52
[2026-06-19 06:49:52,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:49:53,137.137 INFO    ] Initializing speech engine...
[2026-06-19 06:49:53,151.151 INFO    ] 2026-06-19 06:49:53
[2026-06-19 06:49:53,417.417 INFO    ] 2026-06-19 06:49:53
[2026-06-19 06:49:53,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:49:53,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:49:53,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:49:53,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:49:53,879.879 INFO    ] time= 19/06/2026 06:49:53
[2026-06-19 06:49:53,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:49:53,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:49:54,049.049 INFO    ] No existing commands found in stream
[2026-06-19 06:49:59,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:49:59,064.064 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 06:50:01,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:50:01,121.121 INFO    ] Checking for system updates...
[2026-06-19 06:50:01,157.157 INFO    ] 200
[2026-06-19 06:50:01,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:50:01,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:50:01,214.214 INFO    ] No update needed
[2026-06-19 06:50:01,217.217 INFO    ] Checking for camera pi updates...
[2026-06-19 06:50:01,251.251 INFO    ] 200
[2026-06-19 06:50:01,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:50:01,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:50:01,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:50:01,339.339 INFO    ] No camera update needed
[2026-06-19 06:50:01,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:50:01,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:50:01,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:50:01,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:50:03,401.401 INFO    ] ================================================
[2026-06-19 06:50:03,417.417 INFO    ] Launching Daemon at Fri Jun 19 06:50:03 IST 2026
[2026-06-19 06:50:03,431.431 INFO    ] ================================================
[2026-06-19 06:50:04,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:50:04
[2026-06-19 06:50:04,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:50:04,906.906 INFO    ] Initializing speech engine...
[2026-06-19 06:50:04,911.911 INFO    ] 2026-06-19 06:50:04
[2026-06-19 06:50:05,171.171 INFO    ] 2026-06-19 06:50:05
[2026-06-19 06:50:05,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:50:05,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:50:05,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:50:05,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:50:05,630.630 INFO    ] time= 19/06/2026 06:50:05
[2026-06-19 06:50:05,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:50:05,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:50:05,774.774 INFO    ] No existing commands found in stream
[2026-06-19 06:50:10,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:50:10,789.789 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 06:50:14,103.103 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:50:14,105.105 INFO    ] Checking for system updates...
[2026-06-19 06:50:14,141.141 INFO    ] 200
[2026-06-19 06:50:14,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:50:14,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:50:14,204.204 INFO    ] No update needed
[2026-06-19 06:50:14,207.207 INFO    ] Checking for camera pi updates...
[2026-06-19 06:50:14,243.243 INFO    ] 200
[2026-06-19 06:50:14,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:50:14,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:50:14,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:50:14,341.341 INFO    ] No camera update needed
[2026-06-19 06:50:14,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:50:14,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:50:14,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:50:14,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:50:16,397.397 INFO    ] ================================================
[2026-06-19 06:50:16,413.413 INFO    ] Launching Daemon at Fri Jun 19 06:50:16 IST 2026
[2026-06-19 06:50:16,424.424 INFO    ] ================================================
[2026-06-19 06:50:16,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:50:16
[2026-06-19 06:50:17,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:50:17,829.829 INFO    ] Initializing speech engine...
[2026-06-19 06:50:17,837.837 INFO    ] 2026-06-19 06:50:17
[2026-06-19 06:50:18,125.125 INFO    ] 2026-06-19 06:50:18
[2026-06-19 06:50:18,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:50:18,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:50:18,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:50:18,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:50:18,527.527 INFO    ] time= 19/06/2026 06:50:18
[2026-06-19 06:50:18,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:50:18,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:50:18,616.616 INFO    ] No existing commands found in stream
[2026-06-19 06:50:23,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:50:23,632.632 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 06:50:26,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:50:26,530.530 INFO    ] Checking for system updates...
[2026-06-19 06:50:26,568.568 INFO    ] 200
[2026-06-19 06:50:26,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:50:26,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:50:26,626.626 INFO    ] No update needed
[2026-06-19 06:50:26,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 06:50:26,662.662 INFO    ] 200
[2026-06-19 06:50:26,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:50:26,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:50:26,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:50:26,743.743 INFO    ] No camera update needed
[2026-06-19 06:50:26,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:50:26,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:50:26,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:50:26,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:50:28,799.799 INFO    ] ================================================
[2026-06-19 06:50:28,814.814 INFO    ] Launching Daemon at Fri Jun 19 06:50:28 IST 2026
[2026-06-19 06:50:28,825.825 INFO    ] ================================================
[2026-06-19 06:50:29,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:50:29
[2026-06-19 06:50:30,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:50:30,270.270 INFO    ] Initializing speech engine...
[2026-06-19 06:50:30,285.285 INFO    ] 2026-06-19 06:50:30
[2026-06-19 06:50:30,541.541 INFO    ] 2026-06-19 06:50:30
[2026-06-19 06:50:30,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:50:30,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:50:30,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:50:30,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:50:31,020.020 INFO    ] time= 19/06/2026 06:50:30
[2026-06-19 06:50:31,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:50:31,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:50:31,176.176 INFO    ] No existing commands found in stream
[2026-06-19 06:50:36,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:50:36,216.216 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 06:50:39,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:50:39,367.367 INFO    ] Checking for system updates...
[2026-06-19 06:50:39,403.403 INFO    ] 200
[2026-06-19 06:50:39,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:50:39,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:50:39,466.466 INFO    ] No update needed
[2026-06-19 06:50:39,468.468 INFO    ] Checking for camera pi updates...
[2026-06-19 06:50:39,502.502 INFO    ] 200
[2026-06-19 06:50:39,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:50:39,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:50:39,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:50:39,595.595 INFO    ] No camera update needed
[2026-06-19 06:50:39,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:50:39,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:50:39,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:50:39,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:50:41,652.652 INFO    ] ================================================
[2026-06-19 06:50:41,668.668 INFO    ] Launching Daemon at Fri Jun 19 06:50:41 IST 2026
[2026-06-19 06:50:41,679.679 INFO    ] ================================================
[2026-06-19 06:50:42,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:50:42
[2026-06-19 06:50:42,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:50:43,119.119 INFO    ] Initializing speech engine...
[2026-06-19 06:50:43,128.128 INFO    ] 2026-06-19 06:50:43
[2026-06-19 06:50:43,374.374 INFO    ] 2026-06-19 06:50:43
[2026-06-19 06:50:43,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:50:43,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:50:43,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:50:43,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:50:43,846.846 INFO    ] time= 19/06/2026 06:50:43
[2026-06-19 06:50:43,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:50:43,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:50:43,997.997 INFO    ] No existing commands found in stream
[2026-06-19 06:50:49,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:50:49,029.029 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 06:50:51,070.070 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:50:51,073.073 INFO    ] Checking for system updates...
[2026-06-19 06:50:51,115.115 INFO    ] 200
[2026-06-19 06:50:51,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 06:50:51,121.121 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 06:50:51,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 06:50:51,172.172 INFO    ] 200
[2026-06-19 06:50:51,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 06:50:51,178.178 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 06:50:51,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:50:51,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:50:51,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:50:51,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:50:53,240.240 INFO    ] ================================================
[2026-06-19 06:50:53,256.256 INFO    ] Launching Daemon at Fri Jun 19 06:50:53 IST 2026
[2026-06-19 06:50:53,268.268 INFO    ] ================================================
[2026-06-19 06:50:53,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:50:53
[2026-06-19 06:50:54,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:50:54,800.800 INFO    ] Initializing speech engine...
[2026-06-19 06:50:54,806.806 INFO    ] 2026-06-19 06:50:54
[2026-06-19 06:50:55,094.094 INFO    ] 2026-06-19 06:50:55
[2026-06-19 06:50:55,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:50:55,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:50:55,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:50:55,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:50:55,474.474 INFO    ] time= 19/06/2026 06:50:55
[2026-06-19 06:50:55,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:50:55,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:50:55,635.635 INFO    ] No existing commands found in stream
[2026-06-19 06:51:00,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:51:00,668.668 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 06:51:03,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:51:03,695.695 INFO    ] Checking for system updates...
[2026-06-19 06:51:03,730.730 INFO    ] 200
[2026-06-19 06:51:03,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:03,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:51:03,789.789 INFO    ] No update needed
[2026-06-19 06:51:03,791.791 INFO    ] Checking for camera pi updates...
[2026-06-19 06:51:03,829.829 INFO    ] 200
[2026-06-19 06:51:03,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:03,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:51:03,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:51:03,918.918 INFO    ] No camera update needed
[2026-06-19 06:51:03,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:51:03,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:51:03,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:51:03,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:51:05,975.975 INFO    ] ================================================
[2026-06-19 06:51:05,991.991 INFO    ] Launching Daemon at Fri Jun 19 06:51:05 IST 2026
[2026-06-19 06:51:06,002.002 INFO    ] ================================================
[2026-06-19 06:51:06,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:51:06
[2026-06-19 06:51:07,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:51:07,557.557 INFO    ] Initializing speech engine...
[2026-06-19 06:51:07,565.565 INFO    ] 2026-06-19 06:51:07
[2026-06-19 06:51:07,840.840 INFO    ] 2026-06-19 06:51:07
[2026-06-19 06:51:07,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:51:08,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:51:08,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:51:08,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:51:08,330.330 INFO    ] time= 19/06/2026 06:51:08
[2026-06-19 06:51:08,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:51:08,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:51:08,474.474 INFO    ] No existing commands found in stream
[2026-06-19 06:51:13,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:51:13,490.490 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 06:51:14,018.018 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:51:14,021.021 INFO    ] Checking for system updates...
[2026-06-19 06:51:14,063.063 INFO    ] 200
[2026-06-19 06:51:14,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:14,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:51:14,128.128 INFO    ] No update needed
[2026-06-19 06:51:14,131.131 INFO    ] Checking for camera pi updates...
[2026-06-19 06:51:14,165.165 INFO    ] 200
[2026-06-19 06:51:14,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:14,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:51:14,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:51:14,250.250 INFO    ] No camera update needed
[2026-06-19 06:51:14,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:51:14,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:51:14,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:51:14,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:51:16,307.307 INFO    ] ================================================
[2026-06-19 06:51:16,322.322 INFO    ] Launching Daemon at Fri Jun 19 06:51:16 IST 2026
[2026-06-19 06:51:16,333.333 INFO    ] ================================================
[2026-06-19 06:51:16,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:51:16
[2026-06-19 06:51:17,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:51:17,739.739 INFO    ] Initializing speech engine...
[2026-06-19 06:51:17,761.761 INFO    ] 2026-06-19 06:51:17
[2026-06-19 06:51:18,014.014 INFO    ] 2026-06-19 06:51:18
[2026-06-19 06:51:18,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:51:18,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:51:18,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:51:18,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:51:18,485.485 INFO    ] time= 19/06/2026 06:51:18
[2026-06-19 06:51:18,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:51:18,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:51:18,627.627 INFO    ] No existing commands found in stream
[2026-06-19 06:51:23,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:51:23,641.641 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 06:51:27,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:51:27,576.576 INFO    ] Checking for system updates...
[2026-06-19 06:51:27,616.616 INFO    ] 200
[2026-06-19 06:51:27,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:27,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:51:27,680.680 INFO    ] No update needed
[2026-06-19 06:51:27,682.682 INFO    ] Checking for camera pi updates...
[2026-06-19 06:51:27,717.717 INFO    ] 200
[2026-06-19 06:51:27,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:27,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:51:27,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:51:27,820.820 INFO    ] No camera update needed
[2026-06-19 06:51:27,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:51:27,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:51:27,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:51:27,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:51:29,876.876 INFO    ] ================================================
[2026-06-19 06:51:29,892.892 INFO    ] Launching Daemon at Fri Jun 19 06:51:29 IST 2026
[2026-06-19 06:51:29,903.903 INFO    ] ================================================
[2026-06-19 06:51:30,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:51:30
[2026-06-19 06:51:31,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:51:31,364.364 INFO    ] Initializing speech engine...
[2026-06-19 06:51:31,373.373 INFO    ] 2026-06-19 06:51:31
[2026-06-19 06:51:31,624.624 INFO    ] 2026-06-19 06:51:31
[2026-06-19 06:51:31,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:51:31,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:51:31,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:51:32,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:51:32,028.028 INFO    ] time= 19/06/2026 06:51:32
[2026-06-19 06:51:32,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:51:32,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:51:32,210.210 INFO    ] No existing commands found in stream
[2026-06-19 06:51:37,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:51:37,243.243 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 06:51:40,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:51:40,579.579 INFO    ] Checking for system updates...
[2026-06-19 06:51:40,618.618 INFO    ] 200
[2026-06-19 06:51:40,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:40,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:51:40,679.679 INFO    ] No update needed
[2026-06-19 06:51:40,682.682 INFO    ] Checking for camera pi updates...
[2026-06-19 06:51:40,716.716 INFO    ] 200
[2026-06-19 06:51:40,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:40,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:51:40,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:51:40,813.813 INFO    ] No camera update needed
[2026-06-19 06:51:40,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:51:40,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:51:40,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:51:40,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:51:42,868.868 INFO    ] ================================================
[2026-06-19 06:51:42,884.884 INFO    ] Launching Daemon at Fri Jun 19 06:51:42 IST 2026
[2026-06-19 06:51:42,896.896 INFO    ] ================================================
[2026-06-19 06:51:43,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:51:43
[2026-06-19 06:51:44,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:51:44,509.509 INFO    ] Initializing speech engine...
[2026-06-19 06:51:44,516.516 INFO    ] 2026-06-19 06:51:44
[2026-06-19 06:51:44,779.779 INFO    ] 2026-06-19 06:51:44
[2026-06-19 06:51:44,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:51:45,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:51:45,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:51:45,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:51:45,167.167 INFO    ] time= 19/06/2026 06:51:45
[2026-06-19 06:51:45,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:51:45,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:51:45,338.338 INFO    ] No existing commands found in stream
[2026-06-19 06:51:50,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:51:50,366.366 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 06:51:52,947.947 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:51:52,950.950 INFO    ] Checking for system updates...
[2026-06-19 06:51:52,989.989 INFO    ] 200
[2026-06-19 06:51:52,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:53,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:51:53,047.047 INFO    ] No update needed
[2026-06-19 06:51:53,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 06:51:53,083.083 INFO    ] 200
[2026-06-19 06:51:53,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:51:53,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:51:53,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:51:53,169.169 INFO    ] No camera update needed
[2026-06-19 06:51:53,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:51:53,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:51:53,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:51:53,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:51:55,226.226 INFO    ] ================================================
[2026-06-19 06:51:55,242.242 INFO    ] Launching Daemon at Fri Jun 19 06:51:55 IST 2026
[2026-06-19 06:51:55,253.253 INFO    ] ================================================
[2026-06-19 06:51:55,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:51:55
[2026-06-19 06:51:56,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:51:56,711.711 INFO    ] Initializing speech engine...
[2026-06-19 06:51:56,716.716 INFO    ] 2026-06-19 06:51:56
[2026-06-19 06:51:56,976.976 INFO    ] 2026-06-19 06:51:56
[2026-06-19 06:51:57,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:51:57,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:51:57,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:51:57,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:51:57,424.424 INFO    ] time= 19/06/2026 06:51:57
[2026-06-19 06:51:57,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:51:57,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:51:57,582.582 INFO    ] No existing commands found in stream
[2026-06-19 06:52:02,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:52:02,598.598 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 06:52:06,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:52:06,279.279 INFO    ] Checking for system updates...
[2026-06-19 06:52:06,331.331 INFO    ] 200
[2026-06-19 06:52:06,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:06,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:52:06,401.401 INFO    ] No update needed
[2026-06-19 06:52:06,403.403 INFO    ] Checking for camera pi updates...
[2026-06-19 06:52:06,441.441 INFO    ] 200
[2026-06-19 06:52:06,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:06,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:52:06,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:52:06,538.538 INFO    ] No camera update needed
[2026-06-19 06:52:06,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:52:06,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:52:06,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:52:06,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:52:08,598.598 INFO    ] ================================================
[2026-06-19 06:52:08,613.613 INFO    ] Launching Daemon at Fri Jun 19 06:52:08 IST 2026
[2026-06-19 06:52:08,624.624 INFO    ] ================================================
[2026-06-19 06:52:09,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:52:09
[2026-06-19 06:52:09,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:52:10,095.095 INFO    ] Initializing speech engine...
[2026-06-19 06:52:10,104.104 INFO    ] 2026-06-19 06:52:10
[2026-06-19 06:52:10,370.370 INFO    ] 2026-06-19 06:52:10
[2026-06-19 06:52:10,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:52:10,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:52:10,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:52:10,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:52:10,824.824 INFO    ] time= 19/06/2026 06:52:10
[2026-06-19 06:52:10,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:52:10,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:52:10,989.989 INFO    ] No existing commands found in stream
[2026-06-19 06:52:16,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:52:16,003.003 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 06:52:17,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:52:17,399.399 INFO    ] Checking for system updates...
[2026-06-19 06:52:17,439.439 INFO    ] 200
[2026-06-19 06:52:17,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:17,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:52:17,502.502 INFO    ] No update needed
[2026-06-19 06:52:17,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 06:52:17,539.539 INFO    ] 200
[2026-06-19 06:52:17,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:17,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:52:17,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:52:17,635.635 INFO    ] No camera update needed
[2026-06-19 06:52:17,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:52:17,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:52:17,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:52:17,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:52:19,691.691 INFO    ] ================================================
[2026-06-19 06:52:19,706.706 INFO    ] Launching Daemon at Fri Jun 19 06:52:19 IST 2026
[2026-06-19 06:52:19,717.717 INFO    ] ================================================
[2026-06-19 06:52:20,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:52:20
[2026-06-19 06:52:21,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:52:21,340.340 INFO    ] Initializing speech engine...
[2026-06-19 06:52:21,349.349 INFO    ] 2026-06-19 06:52:21
[2026-06-19 06:52:21,601.601 INFO    ] 2026-06-19 06:52:21
[2026-06-19 06:52:21,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:52:21,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:52:21,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:52:21,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:52:21,979.979 INFO    ] time= 19/06/2026 06:52:21
[2026-06-19 06:52:21,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:52:22,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:52:22,171.171 INFO    ] No existing commands found in stream
[2026-06-19 06:52:27,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:52:27,206.206 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 06:52:30,922.922 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:52:30,925.925 INFO    ] Checking for system updates...
[2026-06-19 06:52:30,963.963 INFO    ] 200
[2026-06-19 06:52:30,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:31,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:52:31,024.024 INFO    ] No update needed
[2026-06-19 06:52:31,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 06:52:31,063.063 INFO    ] 200
[2026-06-19 06:52:31,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:31,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:52:31,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:52:31,150.150 INFO    ] No camera update needed
[2026-06-19 06:52:31,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:52:31,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:52:31,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:52:31,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:52:33,211.211 INFO    ] ================================================
[2026-06-19 06:52:33,231.231 INFO    ] Launching Daemon at Fri Jun 19 06:52:33 IST 2026
[2026-06-19 06:52:33,243.243 INFO    ] ================================================
[2026-06-19 06:52:33,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:52:33
[2026-06-19 06:52:34,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:52:34,699.699 INFO    ] Initializing speech engine...
[2026-06-19 06:52:34,710.710 INFO    ] 2026-06-19 06:52:34
[2026-06-19 06:52:34,953.953 INFO    ] 2026-06-19 06:52:34
[2026-06-19 06:52:34,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:52:35,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:52:35,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:52:35,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:52:35,282.282 INFO    ] time= 19/06/2026 06:52:35
[2026-06-19 06:52:35,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:52:35,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:52:35,419.419 INFO    ] No existing commands found in stream
[2026-06-19 06:52:40,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:52:40,432.432 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 06:52:43,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:52:43,951.951 INFO    ] Checking for system updates...
[2026-06-19 06:52:43,991.991 INFO    ] 200
[2026-06-19 06:52:43,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:44,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:52:44,061.061 INFO    ] No update needed
[2026-06-19 06:52:44,064.064 INFO    ] Checking for camera pi updates...
[2026-06-19 06:52:44,098.098 INFO    ] 200
[2026-06-19 06:52:44,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:44,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:52:44,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:52:44,194.194 INFO    ] No camera update needed
[2026-06-19 06:52:44,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:52:44,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:52:44,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:52:44,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:52:46,249.249 INFO    ] ================================================
[2026-06-19 06:52:46,266.266 INFO    ] Launching Daemon at Fri Jun 19 06:52:46 IST 2026
[2026-06-19 06:52:46,278.278 INFO    ] ================================================
[2026-06-19 06:52:46,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:52:46
[2026-06-19 06:52:47,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:52:47,699.699 INFO    ] Initializing speech engine...
[2026-06-19 06:52:47,721.721 INFO    ] 2026-06-19 06:52:47
[2026-06-19 06:52:47,979.979 INFO    ] 2026-06-19 06:52:47
[2026-06-19 06:52:48,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:52:48,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:52:48,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:52:48,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:52:48,356.356 INFO    ] time= 19/06/2026 06:52:48
[2026-06-19 06:52:48,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:52:48,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:52:48,514.514 INFO    ] No existing commands found in stream
[2026-06-19 06:52:53,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:52:53,547.547 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 06:52:57,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:52:57,660.660 INFO    ] Checking for system updates...
[2026-06-19 06:52:57,701.701 INFO    ] 200
[2026-06-19 06:52:57,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:57,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:52:57,768.768 INFO    ] No update needed
[2026-06-19 06:52:57,770.770 INFO    ] Checking for camera pi updates...
[2026-06-19 06:52:57,804.804 INFO    ] 200
[2026-06-19 06:52:57,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:52:57,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:52:57,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:52:57,912.912 INFO    ] No camera update needed
[2026-06-19 06:52:57,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:52:57,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:52:57,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:52:57,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:52:59,974.974 INFO    ] ================================================
[2026-06-19 06:52:59,991.991 INFO    ] Launching Daemon at Fri Jun 19 06:52:59 IST 2026
[2026-06-19 06:53:00,003.003 INFO    ] ================================================
[2026-06-19 06:53:00,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:53:00
[2026-06-19 06:53:01,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:53:01,616.616 INFO    ] Initializing speech engine...
[2026-06-19 06:53:01,640.640 INFO    ] 2026-06-19 06:53:01
[2026-06-19 06:53:01,982.982 INFO    ] 2026-06-19 06:53:01
[2026-06-19 06:53:02,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:53:02,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:53:02,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:53:02,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:53:02,534.534 INFO    ] time= 19/06/2026 06:53:02
[2026-06-19 06:53:02,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:53:02,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:53:02,679.679 INFO    ] No existing commands found in stream
[2026-06-19 06:53:07,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:53:07,708.708 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 06:53:11,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:53:11,720.720 INFO    ] Checking for system updates...
[2026-06-19 06:53:11,758.758 INFO    ] 200
[2026-06-19 06:53:11,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:53:11,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:53:11,826.826 INFO    ] No update needed
[2026-06-19 06:53:11,830.830 INFO    ] Checking for camera pi updates...
[2026-06-19 06:53:11,864.864 INFO    ] 200
[2026-06-19 06:53:11,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:53:11,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:53:11,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:53:11,957.957 INFO    ] No camera update needed
[2026-06-19 06:53:11,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:53:11,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:53:11,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:53:11,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:53:14,015.015 INFO    ] ================================================
[2026-06-19 06:53:14,031.031 INFO    ] Launching Daemon at Fri Jun 19 06:53:14 IST 2026
[2026-06-19 06:53:14,043.043 INFO    ] ================================================
[2026-06-19 06:53:14,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:53:14
[2026-06-19 06:53:15,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:53:15,468.468 INFO    ] Initializing speech engine...
[2026-06-19 06:53:15,479.479 INFO    ] 2026-06-19 06:53:15
[2026-06-19 06:53:15,738.738 INFO    ] 2026-06-19 06:53:15
[2026-06-19 06:53:15,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:53:15,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:53:15,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:53:16,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:53:16,118.118 INFO    ] time= 19/06/2026 06:53:16
[2026-06-19 06:53:16,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:53:16,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:53:16,247.247 INFO    ] No existing commands found in stream
[2026-06-19 06:53:21,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:53:21,260.260 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 06:53:22,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:53:22,705.705 INFO    ] Checking for system updates...
[2026-06-19 06:53:22,746.746 INFO    ] 200
[2026-06-19 06:53:22,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:53:22,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:53:22,806.806 INFO    ] No update needed
[2026-06-19 06:53:22,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 06:53:22,845.845 INFO    ] 200
[2026-06-19 06:53:22,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:53:22,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:53:22,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:53:22,945.945 INFO    ] No camera update needed
[2026-06-19 06:53:22,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:53:22,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:53:22,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:53:22,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:53:25,006.006 INFO    ] ================================================
[2026-06-19 06:53:25,022.022 INFO    ] Launching Daemon at Fri Jun 19 06:53:25 IST 2026
[2026-06-19 06:53:25,033.033 INFO    ] ================================================
[2026-06-19 06:53:25,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:53:25
[2026-06-19 06:53:26,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:53:26,715.715 INFO    ] Initializing speech engine...
[2026-06-19 06:53:26,728.728 INFO    ] 2026-06-19 06:53:26
[2026-06-19 06:53:27,044.044 INFO    ] 2026-06-19 06:53:27
[2026-06-19 06:53:27,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:53:27,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:53:27,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:53:27,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:53:27,560.560 INFO    ] time= 19/06/2026 06:53:27
[2026-06-19 06:53:27,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:53:27,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:53:27,699.699 INFO    ] No existing commands found in stream
[2026-06-19 06:53:32,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:53:32,728.728 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 06:53:34,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:53:34,284.284 INFO    ] Checking for system updates...
[2026-06-19 06:53:34,326.326 INFO    ] 200
[2026-06-19 06:53:34,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:53:34,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:53:34,390.390 INFO    ] No update needed
[2026-06-19 06:53:34,393.393 INFO    ] Checking for camera pi updates...
[2026-06-19 06:53:34,428.428 INFO    ] 200
[2026-06-19 06:53:34,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:53:34,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:53:34,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:53:34,528.528 INFO    ] No camera update needed
[2026-06-19 06:53:34,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:53:34,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:53:34,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:53:34,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:53:36,592.592 INFO    ] ================================================
[2026-06-19 06:53:36,608.608 INFO    ] Launching Daemon at Fri Jun 19 06:53:36 IST 2026
[2026-06-19 06:53:36,619.619 INFO    ] ================================================
[2026-06-19 06:53:37,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:53:37
[2026-06-19 06:53:37,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:53:38,249.249 INFO    ] Initializing speech engine...
[2026-06-19 06:53:38,262.262 INFO    ] 2026-06-19 06:53:38
[2026-06-19 06:53:38,531.531 INFO    ] 2026-06-19 06:53:38
[2026-06-19 06:53:38,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:53:38,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:53:38,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:53:38,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:53:38,994.994 INFO    ] time= 19/06/2026 06:53:38
[2026-06-19 06:53:39,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:53:39,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:53:39,145.145 INFO    ] No existing commands found in stream
[2026-06-19 06:53:44,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:53:44,160.160 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 06:53:48,438.438 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:53:48,441.441 INFO    ] Checking for system updates...
[2026-06-19 06:53:48,479.479 INFO    ] 200
[2026-06-19 06:53:48,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:53:48,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:53:48,539.539 INFO    ] No update needed
[2026-06-19 06:53:48,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 06:53:48,577.577 INFO    ] 200
[2026-06-19 06:53:48,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:53:48,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:53:48,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:53:48,657.657 INFO    ] No camera update needed
[2026-06-19 06:53:48,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:53:48,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:53:48,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:53:48,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:53:50,717.717 INFO    ] ================================================
[2026-06-19 06:53:50,734.734 INFO    ] Launching Daemon at Fri Jun 19 06:53:50 IST 2026
[2026-06-19 06:53:50,745.745 INFO    ] ================================================
[2026-06-19 06:53:51,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:53:51
[2026-06-19 06:53:52,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:53:52,386.386 INFO    ] Initializing speech engine...
[2026-06-19 06:53:52,399.399 INFO    ] 2026-06-19 06:53:52
[2026-06-19 06:53:52,693.693 INFO    ] 2026-06-19 06:53:52
[2026-06-19 06:53:52,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:53:53,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:53:53,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:53:53,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:53:53,239.239 INFO    ] time= 19/06/2026 06:53:53
[2026-06-19 06:53:53,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:53:53,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:53:53,359.359 INFO    ] No existing commands found in stream
[2026-06-19 06:53:58,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:53:58,390.390 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 06:54:02,050.050 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:54:02,053.053 INFO    ] Checking for system updates...
[2026-06-19 06:54:02,100.100 INFO    ] 200
[2026-06-19 06:54:02,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:02,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:54:02,171.171 INFO    ] No update needed
[2026-06-19 06:54:02,175.175 INFO    ] Checking for camera pi updates...
[2026-06-19 06:54:02,213.213 INFO    ] 200
[2026-06-19 06:54:02,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:02,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:54:02,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:54:02,324.324 INFO    ] No camera update needed
[2026-06-19 06:54:02,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:54:02,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:54:02,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:54:02,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:54:04,387.387 INFO    ] ================================================
[2026-06-19 06:54:04,402.402 INFO    ] Launching Daemon at Fri Jun 19 06:54:04 IST 2026
[2026-06-19 06:54:04,414.414 INFO    ] ================================================
[2026-06-19 06:54:05,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:54:05
[2026-06-19 06:54:05,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:54:05,881.881 INFO    ] Initializing speech engine...
[2026-06-19 06:54:05,887.887 INFO    ] 2026-06-19 06:54:05
[2026-06-19 06:54:06,191.191 INFO    ] 2026-06-19 06:54:06
[2026-06-19 06:54:06,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:54:06,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:54:06,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:54:06,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:54:06,651.651 INFO    ] time= 19/06/2026 06:54:06
[2026-06-19 06:54:06,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:54:06,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:54:06,814.814 INFO    ] No existing commands found in stream
[2026-06-19 06:54:11,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:54:11,829.829 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 06:54:15,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 06:54:15,730.730 INFO    ] Checking for system updates...
[2026-06-19 06:54:15,777.777 INFO    ] 200
[2026-06-19 06:54:15,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:15,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:54:15,843.843 INFO    ] No update needed
[2026-06-19 06:54:15,846.846 INFO    ] Checking for camera pi updates...
[2026-06-19 06:54:15,883.883 INFO    ] 200
[2026-06-19 06:54:15,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:15,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:54:16,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:54:16,005.005 INFO    ] No camera update needed
[2026-06-19 06:54:16,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:54:16,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:54:16,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:54:16,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:54:18,067.067 INFO    ] ================================================
[2026-06-19 06:54:18,083.083 INFO    ] Launching Daemon at Fri Jun 19 06:54:18 IST 2026
[2026-06-19 06:54:18,094.094 INFO    ] ================================================
[2026-06-19 06:54:18,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:54:18
[2026-06-19 06:54:19,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:54:19,577.577 INFO    ] Initializing speech engine...
[2026-06-19 06:54:19,587.587 INFO    ] 2026-06-19 06:54:19
[2026-06-19 06:54:19,859.859 INFO    ] 2026-06-19 06:54:19
[2026-06-19 06:54:19,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:54:20,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:54:20,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:54:20,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:54:20,227.227 INFO    ] time= 19/06/2026 06:54:20
[2026-06-19 06:54:20,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:54:20,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:54:20,308.308 INFO    ] No existing commands found in stream
[2026-06-19 06:54:25,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:54:25,321.321 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 06:54:26,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:54:26,767.767 INFO    ] Checking for system updates...
[2026-06-19 06:54:26,805.805 INFO    ] 200
[2026-06-19 06:54:26,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:26,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:54:26,864.864 INFO    ] No update needed
[2026-06-19 06:54:26,867.867 INFO    ] Checking for camera pi updates...
[2026-06-19 06:54:26,901.901 INFO    ] 200
[2026-06-19 06:54:26,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:26,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:54:26,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:54:26,992.992 INFO    ] No camera update needed
[2026-06-19 06:54:26,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:54:26,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:54:27,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:54:27,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:54:29,050.050 INFO    ] ================================================
[2026-06-19 06:54:29,065.065 INFO    ] Launching Daemon at Fri Jun 19 06:54:29 IST 2026
[2026-06-19 06:54:29,076.076 INFO    ] ================================================
[2026-06-19 06:54:29,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:54:29
[2026-06-19 06:54:30,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:54:30,537.537 INFO    ] Initializing speech engine...
[2026-06-19 06:54:30,545.545 INFO    ] 2026-06-19 06:54:30
[2026-06-19 06:54:30,806.806 INFO    ] 2026-06-19 06:54:30
[2026-06-19 06:54:30,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:54:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:54:31,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:54:31,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:54:31,292.292 INFO    ] time= 19/06/2026 06:54:31
[2026-06-19 06:54:31,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:54:31,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:54:31,467.467 INFO    ] No existing commands found in stream
[2026-06-19 06:54:36,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:54:36,504.504 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 06:54:38,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:54:38,843.843 INFO    ] Checking for system updates...
[2026-06-19 06:54:38,880.880 INFO    ] 200
[2026-06-19 06:54:38,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:38,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:54:38,939.939 INFO    ] No update needed
[2026-06-19 06:54:38,942.942 INFO    ] Checking for camera pi updates...
[2026-06-19 06:54:38,981.981 INFO    ] 200
[2026-06-19 06:54:38,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:39,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:54:39,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:54:39,092.092 INFO    ] No camera update needed
[2026-06-19 06:54:39,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:54:39,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:54:39,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:54:39,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:54:41,151.151 INFO    ] ================================================
[2026-06-19 06:54:41,166.166 INFO    ] Launching Daemon at Fri Jun 19 06:54:41 IST 2026
[2026-06-19 06:54:41,177.177 INFO    ] ================================================
[2026-06-19 06:54:41,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:54:41
[2026-06-19 06:54:42,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:54:42,637.637 INFO    ] Initializing speech engine...
[2026-06-19 06:54:42,644.644 INFO    ] 2026-06-19 06:54:42
[2026-06-19 06:54:42,906.906 INFO    ] 2026-06-19 06:54:42
[2026-06-19 06:54:42,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:54:43,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:54:43,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:54:43,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:54:43,371.371 INFO    ] time= 19/06/2026 06:54:43
[2026-06-19 06:54:43,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:54:43,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:54:43,517.517 INFO    ] No existing commands found in stream
[2026-06-19 06:54:48,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:54:48,546.546 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 06:54:49,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:54:49,034.034 INFO    ] Checking for system updates...
[2026-06-19 06:54:49,070.070 INFO    ] 200
[2026-06-19 06:54:49,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:49,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:54:49,129.129 INFO    ] No update needed
[2026-06-19 06:54:49,131.131 INFO    ] Checking for camera pi updates...
[2026-06-19 06:54:49,167.167 INFO    ] 200
[2026-06-19 06:54:49,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:54:49,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:54:49,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:54:49,246.246 INFO    ] No camera update needed
[2026-06-19 06:54:49,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:54:49,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:54:49,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:54:49,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:54:51,304.304 INFO    ] ================================================
[2026-06-19 06:54:51,319.319 INFO    ] Launching Daemon at Fri Jun 19 06:54:51 IST 2026
[2026-06-19 06:54:51,330.330 INFO    ] ================================================
[2026-06-19 06:54:51,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:54:51
[2026-06-19 06:54:52,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:54:52,753.753 INFO    ] Initializing speech engine...
[2026-06-19 06:54:52,764.764 INFO    ] 2026-06-19 06:54:52
[2026-06-19 06:54:53,013.013 INFO    ] 2026-06-19 06:54:53
[2026-06-19 06:54:53,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:54:53,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:54:53,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:54:53,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:54:53,390.390 INFO    ] time= 19/06/2026 06:54:53
[2026-06-19 06:54:53,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:54:53,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:54:53,568.568 INFO    ] No existing commands found in stream
[2026-06-19 06:54:58,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:54:58,591.591 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 06:55:00,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:55:00,681.681 INFO    ] Checking for system updates...
[2026-06-19 06:55:00,717.717 INFO    ] 200
[2026-06-19 06:55:00,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:00,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:55:00,776.776 INFO    ] No update needed
[2026-06-19 06:55:00,779.779 INFO    ] Checking for camera pi updates...
[2026-06-19 06:55:00,813.813 INFO    ] 200
[2026-06-19 06:55:00,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:00,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:55:00,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:55:00,906.906 INFO    ] No camera update needed
[2026-06-19 06:55:00,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:55:00,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:55:00,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:55:00,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:55:02,967.967 INFO    ] ================================================
[2026-06-19 06:55:02,983.983 INFO    ] Launching Daemon at Fri Jun 19 06:55:02 IST 2026
[2026-06-19 06:55:03,995.995 INFO    ] ================================================
[2026-06-19 06:55:03,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:55:03
[2026-06-19 06:55:04,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:55:04,475.475 INFO    ] Initializing speech engine...
[2026-06-19 06:55:04,484.484 INFO    ] 2026-06-19 06:55:04
[2026-06-19 06:55:04,736.736 INFO    ] 2026-06-19 06:55:04
[2026-06-19 06:55:04,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:55:04,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:55:05,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:55:05,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:55:05,207.207 INFO    ] time= 19/06/2026 06:55:05
[2026-06-19 06:55:05,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:55:05,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:55:05,352.352 INFO    ] No existing commands found in stream
[2026-06-19 06:55:10,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:55:10,367.367 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 06:55:10,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:55:10,902.902 INFO    ] Checking for system updates...
[2026-06-19 06:55:10,938.938 INFO    ] 200
[2026-06-19 06:55:10,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:10,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:55:10,996.996 INFO    ] No update needed
[2026-06-19 06:55:10,998.998 INFO    ] Checking for camera pi updates...
[2026-06-19 06:55:11,032.032 INFO    ] 200
[2026-06-19 06:55:11,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:11,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:55:11,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:55:11,121.121 INFO    ] No camera update needed
[2026-06-19 06:55:11,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:55:11,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:55:11,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:55:11,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:55:13,178.178 INFO    ] ================================================
[2026-06-19 06:55:13,193.193 INFO    ] Launching Daemon at Fri Jun 19 06:55:13 IST 2026
[2026-06-19 06:55:13,204.204 INFO    ] ================================================
[2026-06-19 06:55:13,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:55:13
[2026-06-19 06:55:14,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:55:14,735.735 INFO    ] Initializing speech engine...
[2026-06-19 06:55:14,754.754 INFO    ] 2026-06-19 06:55:14
[2026-06-19 06:55:14,999.999 INFO    ] 2026-06-19 06:55:14
[2026-06-19 06:55:15,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:55:15,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:55:15,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:55:15,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:55:15,433.433 INFO    ] time= 19/06/2026 06:55:15
[2026-06-19 06:55:15,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:55:15,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:55:15,610.610 INFO    ] No existing commands found in stream
[2026-06-19 06:55:20,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:55:20,624.624 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 06:55:21,339.339 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:55:21,341.341 INFO    ] Checking for system updates...
[2026-06-19 06:55:21,382.382 INFO    ] 200
[2026-06-19 06:55:21,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:21,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:55:21,446.446 INFO    ] No update needed
[2026-06-19 06:55:21,448.448 INFO    ] Checking for camera pi updates...
[2026-06-19 06:55:21,482.482 INFO    ] 200
[2026-06-19 06:55:21,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:21,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:55:21,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:55:21,574.574 INFO    ] No camera update needed
[2026-06-19 06:55:21,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:55:21,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:55:21,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:55:21,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:55:23,630.630 INFO    ] ================================================
[2026-06-19 06:55:23,645.645 INFO    ] Launching Daemon at Fri Jun 19 06:55:23 IST 2026
[2026-06-19 06:55:23,656.656 INFO    ] ================================================
[2026-06-19 06:55:24,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:55:24
[2026-06-19 06:55:25,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:55:25,316.316 INFO    ] Initializing speech engine...
[2026-06-19 06:55:25,328.328 INFO    ] 2026-06-19 06:55:25
[2026-06-19 06:55:25,638.638 INFO    ] 2026-06-19 06:55:25
[2026-06-19 06:55:25,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:55:25,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:55:25,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:55:26,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:55:26,150.150 INFO    ] time= 19/06/2026 06:55:26
[2026-06-19 06:55:26,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:55:26,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:55:26,246.246 INFO    ] No existing commands found in stream
[2026-06-19 06:55:31,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:55:31,272.272 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 06:55:34,842.842 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:55:34,845.845 INFO    ] Checking for system updates...
[2026-06-19 06:55:34,883.883 INFO    ] 200
[2026-06-19 06:55:34,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:34,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:55:34,942.942 INFO    ] No update needed
[2026-06-19 06:55:34,944.944 INFO    ] Checking for camera pi updates...
[2026-06-19 06:55:34,982.982 INFO    ] 200
[2026-06-19 06:55:34,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:35,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:55:35,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:55:35,182.182 INFO    ] No camera update needed
[2026-06-19 06:55:35,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:55:35,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:55:35,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:55:35,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:55:37,237.237 INFO    ] ================================================
[2026-06-19 06:55:37,253.253 INFO    ] Launching Daemon at Fri Jun 19 06:55:37 IST 2026
[2026-06-19 06:55:37,264.264 INFO    ] ================================================
[2026-06-19 06:55:37,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:55:37
[2026-06-19 06:55:38,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:55:38,724.724 INFO    ] Initializing speech engine...
[2026-06-19 06:55:38,734.734 INFO    ] 2026-06-19 06:55:38
[2026-06-19 06:55:38,981.981 INFO    ] 2026-06-19 06:55:38
[2026-06-19 06:55:39,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:55:39,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:55:39,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:55:39,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:55:39,455.455 INFO    ] time= 19/06/2026 06:55:39
[2026-06-19 06:55:39,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:55:39,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:55:39,604.604 INFO    ] No existing commands found in stream
[2026-06-19 06:55:44,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:55:44,619.619 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 06:55:47,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:55:47,324.324 INFO    ] Checking for system updates...
[2026-06-19 06:55:47,360.360 INFO    ] 200
[2026-06-19 06:55:47,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:47,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:55:47,418.418 INFO    ] No update needed
[2026-06-19 06:55:47,420.420 INFO    ] Checking for camera pi updates...
[2026-06-19 06:55:47,458.458 INFO    ] 200
[2026-06-19 06:55:47,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:47,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:55:47,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:55:47,539.539 INFO    ] No camera update needed
[2026-06-19 06:55:47,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:55:47,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:55:47,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:55:47,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:55:49,598.598 INFO    ] ================================================
[2026-06-19 06:55:49,613.613 INFO    ] Launching Daemon at Fri Jun 19 06:55:49 IST 2026
[2026-06-19 06:55:49,624.624 INFO    ] ================================================
[2026-06-19 06:55:50,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:55:50
[2026-06-19 06:55:50,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:55:51,118.118 INFO    ] Initializing speech engine...
[2026-06-19 06:55:51,127.127 INFO    ] 2026-06-19 06:55:51
[2026-06-19 06:55:51,374.374 INFO    ] 2026-06-19 06:55:51
[2026-06-19 06:55:51,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:55:51,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:55:51,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:55:51,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:55:51,842.842 INFO    ] time= 19/06/2026 06:55:51
[2026-06-19 06:55:51,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:55:51,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:55:51,996.996 INFO    ] No existing commands found in stream
[2026-06-19 06:55:57,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:55:57,011.011 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 06:55:58,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:55:58,021.021 INFO    ] Checking for system updates...
[2026-06-19 06:55:58,063.063 INFO    ] 200
[2026-06-19 06:55:58,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:58,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:55:58,122.122 INFO    ] No update needed
[2026-06-19 06:55:58,125.125 INFO    ] Checking for camera pi updates...
[2026-06-19 06:55:58,164.164 INFO    ] 200
[2026-06-19 06:55:58,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:55:58,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:55:58,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:55:58,277.277 INFO    ] No camera update needed
[2026-06-19 06:55:58,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:55:58,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:55:58,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:55:58,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:56:00,336.336 INFO    ] ================================================
[2026-06-19 06:56:00,351.351 INFO    ] Launching Daemon at Fri Jun 19 06:56:00 IST 2026
[2026-06-19 06:56:00,362.362 INFO    ] ================================================
[2026-06-19 06:56:00,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:56:00
[2026-06-19 06:56:01,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:56:02,041.041 INFO    ] Initializing speech engine...
[2026-06-19 06:56:02,051.051 INFO    ] 2026-06-19 06:56:02
[2026-06-19 06:56:02,331.331 INFO    ] 2026-06-19 06:56:02
[2026-06-19 06:56:02,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:56:02,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:56:02,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:56:02,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:56:02,751.751 INFO    ] time= 19/06/2026 06:56:02
[2026-06-19 06:56:02,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:56:02,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:56:02,882.882 INFO    ] No existing commands found in stream
[2026-06-19 06:56:07,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:56:07,924.924 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 06:56:11,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:56:11,913.913 INFO    ] Checking for system updates...
[2026-06-19 06:56:11,951.951 INFO    ] 200
[2026-06-19 06:56:11,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:12,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:56:12,017.017 INFO    ] No update needed
[2026-06-19 06:56:12,020.020 INFO    ] Checking for camera pi updates...
[2026-06-19 06:56:12,054.054 INFO    ] 200
[2026-06-19 06:56:12,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:12,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:56:12,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:56:12,152.152 INFO    ] No camera update needed
[2026-06-19 06:56:12,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:56:12,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:56:12,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:56:12,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:56:14,210.210 INFO    ] ================================================
[2026-06-19 06:56:14,226.226 INFO    ] Launching Daemon at Fri Jun 19 06:56:14 IST 2026
[2026-06-19 06:56:14,236.236 INFO    ] ================================================
[2026-06-19 06:56:14,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:56:14
[2026-06-19 06:56:15,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:56:15,718.718 INFO    ] Initializing speech engine...
[2026-06-19 06:56:15,724.724 INFO    ] 2026-06-19 06:56:15
[2026-06-19 06:56:16,013.013 INFO    ] 2026-06-19 06:56:15
[2026-06-19 06:56:16,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:56:16,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:56:16,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:56:16,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:56:16,473.473 INFO    ] time= 19/06/2026 06:56:16
[2026-06-19 06:56:16,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:56:16,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:56:16,563.563 INFO    ] No existing commands found in stream
[2026-06-19 06:56:21,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:56:21,588.588 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 06:56:22,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:56:22,639.639 INFO    ] Checking for system updates...
[2026-06-19 06:56:22,676.676 INFO    ] 200
[2026-06-19 06:56:22,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:22,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:56:22,742.742 INFO    ] No update needed
[2026-06-19 06:56:22,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 06:56:22,782.782 INFO    ] 200
[2026-06-19 06:56:22,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:22,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:56:22,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:56:22,877.877 INFO    ] No camera update needed
[2026-06-19 06:56:22,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:56:22,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:56:22,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:56:22,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:56:24,932.932 INFO    ] ================================================
[2026-06-19 06:56:24,947.947 INFO    ] Launching Daemon at Fri Jun 19 06:56:24 IST 2026
[2026-06-19 06:56:24,958.958 INFO    ] ================================================
[2026-06-19 06:56:25,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:56:25
[2026-06-19 06:56:26,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:56:26,430.430 INFO    ] Initializing speech engine...
[2026-06-19 06:56:26,440.440 INFO    ] 2026-06-19 06:56:26
[2026-06-19 06:56:26,712.712 INFO    ] 2026-06-19 06:56:26
[2026-06-19 06:56:26,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:56:27,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:56:27,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:56:27,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:56:27,227.227 INFO    ] time= 19/06/2026 06:56:27
[2026-06-19 06:56:27,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:56:27,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:56:27,414.414 INFO    ] No existing commands found in stream
[2026-06-19 06:56:32,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:56:32,449.449 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 06:56:35,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:56:35,973.973 INFO    ] Checking for system updates...
[2026-06-19 06:56:36,010.010 INFO    ] 200
[2026-06-19 06:56:36,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:36,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:56:36,067.067 INFO    ] No update needed
[2026-06-19 06:56:36,070.070 INFO    ] Checking for camera pi updates...
[2026-06-19 06:56:36,108.108 INFO    ] 200
[2026-06-19 06:56:36,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:36,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:56:36,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:56:36,194.194 INFO    ] No camera update needed
[2026-06-19 06:56:36,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:56:36,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:56:36,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:56:36,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:56:38,250.250 INFO    ] ================================================
[2026-06-19 06:56:38,266.266 INFO    ] Launching Daemon at Fri Jun 19 06:56:38 IST 2026
[2026-06-19 06:56:38,276.276 INFO    ] ================================================
[2026-06-19 06:56:38,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:56:38
[2026-06-19 06:56:39,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:56:39,727.727 INFO    ] Initializing speech engine...
[2026-06-19 06:56:39,736.736 INFO    ] 2026-06-19 06:56:39
[2026-06-19 06:56:39,993.993 INFO    ] 2026-06-19 06:56:39
[2026-06-19 06:56:40,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:56:40,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:56:40,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:56:40,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:56:40,456.456 INFO    ] time= 19/06/2026 06:56:40
[2026-06-19 06:56:40,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:56:40,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:56:40,607.607 INFO    ] No existing commands found in stream
[2026-06-19 06:56:45,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:56:45,622.622 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 06:56:47,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:56:47,982.982 INFO    ] Checking for system updates...
[2026-06-19 06:56:48,019.019 INFO    ] 200
[2026-06-19 06:56:48,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:48,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:56:48,079.079 INFO    ] No update needed
[2026-06-19 06:56:48,081.081 INFO    ] Checking for camera pi updates...
[2026-06-19 06:56:48,120.120 INFO    ] 200
[2026-06-19 06:56:48,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:48,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:56:48,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:56:48,192.192 INFO    ] No camera update needed
[2026-06-19 06:56:48,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:56:48,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:56:48,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:56:48,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:56:50,249.249 INFO    ] ================================================
[2026-06-19 06:56:50,266.266 INFO    ] Launching Daemon at Fri Jun 19 06:56:50 IST 2026
[2026-06-19 06:56:50,276.276 INFO    ] ================================================
[2026-06-19 06:56:50,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:56:50
[2026-06-19 06:56:51,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:56:51,714.714 INFO    ] Initializing speech engine...
[2026-06-19 06:56:51,724.724 INFO    ] 2026-06-19 06:56:51
[2026-06-19 06:56:51,994.994 INFO    ] 2026-06-19 06:56:51
[2026-06-19 06:56:52,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:56:52,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:56:52,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:56:52,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:56:52,372.372 INFO    ] time= 19/06/2026 06:56:52
[2026-06-19 06:56:52,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:56:52,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:56:52,496.496 INFO    ] No existing commands found in stream
[2026-06-19 06:56:57,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:56:57,509.509 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 06:56:59,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:56:59,289.289 INFO    ] Checking for system updates...
[2026-06-19 06:56:59,328.328 INFO    ] 200
[2026-06-19 06:56:59,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:59,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:56:59,392.392 INFO    ] No update needed
[2026-06-19 06:56:59,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 06:56:59,432.432 INFO    ] 200
[2026-06-19 06:56:59,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:56:59,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:56:59,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:56:59,535.535 INFO    ] No camera update needed
[2026-06-19 06:56:59,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:56:59,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:56:59,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:56:59,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:57:01,632.632 INFO    ] ================================================
[2026-06-19 06:57:01,688.688 INFO    ] Launching Daemon at Fri Jun 19 06:57:01 IST 2026
[2026-06-19 06:57:01,715.715 INFO    ] ================================================
[2026-06-19 06:57:02,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:57:02
[2026-06-19 06:57:03,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:57:03,335.335 INFO    ] Initializing speech engine...
[2026-06-19 06:57:03,341.341 INFO    ] 2026-06-19 06:57:03
[2026-06-19 06:57:03,629.629 INFO    ] 2026-06-19 06:57:03
[2026-06-19 06:57:03,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:57:03,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:57:03,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:57:03,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:57:04,002.002 INFO    ] time= 19/06/2026 06:57:03
[2026-06-19 06:57:04,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:57:04,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:57:04,175.175 INFO    ] No existing commands found in stream
[2026-06-19 06:57:09,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:57:09,208.208 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 06:57:13,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:57:13,212.212 INFO    ] Checking for system updates...
[2026-06-19 06:57:13,248.248 INFO    ] 200
[2026-06-19 06:57:13,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:57:13,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:57:13,305.305 INFO    ] No update needed
[2026-06-19 06:57:13,307.307 INFO    ] Checking for camera pi updates...
[2026-06-19 06:57:13,341.341 INFO    ] 200
[2026-06-19 06:57:13,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:57:13,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:57:13,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:57:13,434.434 INFO    ] No camera update needed
[2026-06-19 06:57:13,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:57:13,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:57:13,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:57:13,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:57:15,489.489 INFO    ] ================================================
[2026-06-19 06:57:15,504.504 INFO    ] Launching Daemon at Fri Jun 19 06:57:15 IST 2026
[2026-06-19 06:57:15,519.519 INFO    ] ================================================
[2026-06-19 06:57:16,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:57:16
[2026-06-19 06:57:16,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:57:16,950.950 INFO    ] Initializing speech engine...
[2026-06-19 06:57:16,960.960 INFO    ] 2026-06-19 06:57:16
[2026-06-19 06:57:17,212.212 INFO    ] 2026-06-19 06:57:17
[2026-06-19 06:57:17,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:57:17,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:57:17,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:57:17,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:57:17,590.590 INFO    ] time= 19/06/2026 06:57:17
[2026-06-19 06:57:17,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:57:17,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:57:17,764.764 INFO    ] No existing commands found in stream
[2026-06-19 06:57:22,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:57:22,797.797 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 06:57:26,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:57:26,068.068 INFO    ] Checking for system updates...
[2026-06-19 06:57:26,106.106 INFO    ] 200
[2026-06-19 06:57:26,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:57:26,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:57:26,164.164 INFO    ] No update needed
[2026-06-19 06:57:26,168.168 INFO    ] Checking for camera pi updates...
[2026-06-19 06:57:26,203.203 INFO    ] 200
[2026-06-19 06:57:26,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:57:26,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:57:26,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:57:26,298.298 INFO    ] No camera update needed
[2026-06-19 06:57:26,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:57:26,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:57:26,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:57:26,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:57:28,356.356 INFO    ] ================================================
[2026-06-19 06:57:28,372.372 INFO    ] Launching Daemon at Fri Jun 19 06:57:28 IST 2026
[2026-06-19 06:57:28,384.384 INFO    ] ================================================
[2026-06-19 06:57:28,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:57:28
[2026-06-19 06:57:29,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:57:29,795.795 INFO    ] Initializing speech engine...
[2026-06-19 06:57:29,814.814 INFO    ] 2026-06-19 06:57:29
[2026-06-19 06:57:30,071.071 INFO    ] 2026-06-19 06:57:30
[2026-06-19 06:57:30,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:57:30,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:57:30,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:57:30,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:57:30,441.441 INFO    ] time= 19/06/2026 06:57:30
[2026-06-19 06:57:30,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:57:30,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:57:30,519.519 INFO    ] No existing commands found in stream
[2026-06-19 06:57:35,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:57:35,536.536 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 06:57:36,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:57:36,795.795 INFO    ] Checking for system updates...
[2026-06-19 06:57:36,840.840 INFO    ] 200
[2026-06-19 06:57:36,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:57:36,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:57:36,915.915 INFO    ] No update needed
[2026-06-19 06:57:36,918.918 INFO    ] Checking for camera pi updates...
[2026-06-19 06:57:36,953.953 INFO    ] 200
[2026-06-19 06:57:36,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:57:37,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:57:37,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:57:37,158.158 INFO    ] No camera update needed
[2026-06-19 06:57:37,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:57:37,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:57:37,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:57:37,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:57:39,220.220 INFO    ] ================================================
[2026-06-19 06:57:39,236.236 INFO    ] Launching Daemon at Fri Jun 19 06:57:39 IST 2026
[2026-06-19 06:57:39,246.246 INFO    ] ================================================
[2026-06-19 06:57:39,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:57:39
[2026-06-19 06:57:40,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:57:40,657.657 INFO    ] Initializing speech engine...
[2026-06-19 06:57:40,672.672 INFO    ] 2026-06-19 06:57:40
[2026-06-19 06:57:40,940.940 INFO    ] 2026-06-19 06:57:40
[2026-06-19 06:57:40,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:57:41,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:57:41,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:57:41,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:57:41,295.295 INFO    ] time= 19/06/2026 06:57:41
[2026-06-19 06:57:41,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:57:41,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:57:41,391.391 INFO    ] No existing commands found in stream
[2026-06-19 06:57:46,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:57:46,407.407 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 06:57:48,479.479 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:57:48,482.482 INFO    ] Checking for system updates...
[2026-06-19 06:57:48,523.523 INFO    ] 200
[2026-06-19 06:57:48,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:57:48,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:57:48,588.588 INFO    ] No update needed
[2026-06-19 06:57:48,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 06:57:48,625.625 INFO    ] 200
[2026-06-19 06:57:48,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:57:48,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:57:48,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:57:48,701.701 INFO    ] No camera update needed
[2026-06-19 06:57:48,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:57:48,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:57:48,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:57:48,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:57:50,756.756 INFO    ] ================================================
[2026-06-19 06:57:50,773.773 INFO    ] Launching Daemon at Fri Jun 19 06:57:50 IST 2026
[2026-06-19 06:57:50,784.784 INFO    ] ================================================
[2026-06-19 06:57:51,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:57:51
[2026-06-19 06:57:52,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:57:52,365.365 INFO    ] Initializing speech engine...
[2026-06-19 06:57:52,378.378 INFO    ] 2026-06-19 06:57:52
[2026-06-19 06:57:52,658.658 INFO    ] 2026-06-19 06:57:52
[2026-06-19 06:57:52,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:57:52,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:57:52,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:57:53,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:57:53,115.115 INFO    ] time= 19/06/2026 06:57:53
[2026-06-19 06:57:53,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:57:53,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:57:53,279.279 INFO    ] No existing commands found in stream
[2026-06-19 06:57:58,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:57:58,304.304 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 06:58:01,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:58:01,548.548 INFO    ] Checking for system updates...
[2026-06-19 06:58:01,612.612 INFO    ] 200
[2026-06-19 06:58:01,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:01,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:58:01,732.732 INFO    ] No update needed
[2026-06-19 06:58:01,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 06:58:01,791.791 INFO    ] 200
[2026-06-19 06:58:01,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:01,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:58:01,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:58:01,953.953 INFO    ] No camera update needed
[2026-06-19 06:58:01,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:58:01,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:58:01,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:58:01,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:58:04,024.024 INFO    ] ================================================
[2026-06-19 06:58:04,040.040 INFO    ] Launching Daemon at Fri Jun 19 06:58:04 IST 2026
[2026-06-19 06:58:04,053.053 INFO    ] ================================================
[2026-06-19 06:58:04,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:58:04
[2026-06-19 06:58:05,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:58:05,492.492 INFO    ] Initializing speech engine...
[2026-06-19 06:58:05,498.498 INFO    ] 2026-06-19 06:58:05
[2026-06-19 06:58:05,744.744 INFO    ] 2026-06-19 06:58:05
[2026-06-19 06:58:05,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:58:06,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:58:06,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:58:06,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:58:06,204.204 INFO    ] time= 19/06/2026 06:58:06
[2026-06-19 06:58:06,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:58:06,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:58:06,332.332 INFO    ] No existing commands found in stream
[2026-06-19 06:58:11,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:58:11,347.347 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 06:58:15,539.539 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:58:15,542.542 INFO    ] Checking for system updates...
[2026-06-19 06:58:15,580.580 INFO    ] 200
[2026-06-19 06:58:15,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:15,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:58:15,637.637 INFO    ] No update needed
[2026-06-19 06:58:15,640.640 INFO    ] Checking for camera pi updates...
[2026-06-19 06:58:15,675.675 INFO    ] 200
[2026-06-19 06:58:15,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:15,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:58:15,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:58:15,773.773 INFO    ] No camera update needed
[2026-06-19 06:58:15,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:58:15,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:58:15,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:58:15,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:58:17,831.831 INFO    ] ================================================
[2026-06-19 06:58:17,847.847 INFO    ] Launching Daemon at Fri Jun 19 06:58:17 IST 2026
[2026-06-19 06:58:17,858.858 INFO    ] ================================================
[2026-06-19 06:58:18,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:58:18
[2026-06-19 06:58:19,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:58:19,328.328 INFO    ] Initializing speech engine...
[2026-06-19 06:58:19,351.351 INFO    ] 2026-06-19 06:58:19
[2026-06-19 06:58:19,608.608 INFO    ] 2026-06-19 06:58:19
[2026-06-19 06:58:19,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:58:19,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:58:19,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:58:19,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:58:19,984.984 INFO    ] time= 19/06/2026 06:58:19
[2026-06-19 06:58:19,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:58:20,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:58:20,149.149 INFO    ] No existing commands found in stream
[2026-06-19 06:58:25,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:58:25,177.177 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 06:58:27,869.869 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:58:27,871.871 INFO    ] Checking for system updates...
[2026-06-19 06:58:27,907.907 INFO    ] 200
[2026-06-19 06:58:27,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:27,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:58:27,964.964 INFO    ] No update needed
[2026-06-19 06:58:27,967.967 INFO    ] Checking for camera pi updates...
[2026-06-19 06:58:28,000.000 INFO    ] 200
[2026-06-19 06:58:28,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:28,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:58:28,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:58:28,095.095 INFO    ] No camera update needed
[2026-06-19 06:58:28,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:58:28,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:58:28,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:58:28,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:58:30,153.153 INFO    ] ================================================
[2026-06-19 06:58:30,168.168 INFO    ] Launching Daemon at Fri Jun 19 06:58:30 IST 2026
[2026-06-19 06:58:30,179.179 INFO    ] ================================================
[2026-06-19 06:58:30,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:58:30
[2026-06-19 06:58:31,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:58:31,805.805 INFO    ] Initializing speech engine...
[2026-06-19 06:58:31,817.817 INFO    ] 2026-06-19 06:58:31
[2026-06-19 06:58:32,074.074 INFO    ] 2026-06-19 06:58:32
[2026-06-19 06:58:32,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:58:32,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:58:32,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:58:32,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:58:32,560.560 INFO    ] time= 19/06/2026 06:58:32
[2026-06-19 06:58:33,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:58:33,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:58:33,454.454 INFO    ] No existing commands found in stream
[2026-06-19 06:58:38,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:58:38,476.476 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 06:58:41,305.305 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 06:58:41,308.308 INFO    ] Checking for system updates...
[2026-06-19 06:58:41,346.346 INFO    ] 200
[2026-06-19 06:58:41,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:41,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:58:41,404.404 INFO    ] No update needed
[2026-06-19 06:58:41,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 06:58:41,444.444 INFO    ] 200
[2026-06-19 06:58:41,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:41,492.492 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:58:41,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:58:41,543.543 INFO    ] No camera update needed
[2026-06-19 06:58:41,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:58:41,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:58:41,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:58:41,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:58:43,603.603 INFO    ] ================================================
[2026-06-19 06:58:43,619.619 INFO    ] Launching Daemon at Fri Jun 19 06:58:43 IST 2026
[2026-06-19 06:58:43,630.630 INFO    ] ================================================
[2026-06-19 06:58:44,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:58:44
[2026-06-19 06:58:44,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:58:45,057.057 INFO    ] Initializing speech engine...
[2026-06-19 06:58:45,065.065 INFO    ] 2026-06-19 06:58:45
[2026-06-19 06:58:45,326.326 INFO    ] 2026-06-19 06:58:45
[2026-06-19 06:58:45,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:58:45,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:58:45,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:58:45,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:58:45,703.703 INFO    ] time= 19/06/2026 06:58:45
[2026-06-19 06:58:45,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:58:45,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:58:45,818.818 INFO    ] No existing commands found in stream
[2026-06-19 06:58:50,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:58:50,832.832 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 06:58:52,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:58:52,727.727 INFO    ] Checking for system updates...
[2026-06-19 06:58:52,767.767 INFO    ] 200
[2026-06-19 06:58:52,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:52,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:58:52,824.824 INFO    ] No update needed
[2026-06-19 06:58:52,827.827 INFO    ] Checking for camera pi updates...
[2026-06-19 06:58:52,864.864 INFO    ] 200
[2026-06-19 06:58:52,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:58:52,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:58:52,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:58:52,957.957 INFO    ] No camera update needed
[2026-06-19 06:58:52,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:58:52,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:58:52,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:58:52,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:58:55,015.015 INFO    ] ================================================
[2026-06-19 06:58:55,031.031 INFO    ] Launching Daemon at Fri Jun 19 06:58:55 IST 2026
[2026-06-19 06:58:55,041.041 INFO    ] ================================================
[2026-06-19 06:58:55,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:58:55
[2026-06-19 06:58:56,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:58:56,490.490 INFO    ] Initializing speech engine...
[2026-06-19 06:58:56,499.499 INFO    ] 2026-06-19 06:58:56
[2026-06-19 06:58:56,748.748 INFO    ] 2026-06-19 06:58:56
[2026-06-19 06:58:56,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:58:56,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:58:56,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:58:57,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:58:57,117.117 INFO    ] time= 19/06/2026 06:58:57
[2026-06-19 06:58:57,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:58:57,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:58:57,275.275 INFO    ] No existing commands found in stream
[2026-06-19 06:59:02,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:59:02,309.309 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 06:59:06,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:59:06,527.527 INFO    ] Checking for system updates...
[2026-06-19 06:59:06,563.563 INFO    ] 200
[2026-06-19 06:59:06,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:06,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:59:06,621.621 INFO    ] No update needed
[2026-06-19 06:59:06,624.624 INFO    ] Checking for camera pi updates...
[2026-06-19 06:59:06,658.658 INFO    ] 200
[2026-06-19 06:59:06,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:06,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:59:06,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:59:06,756.756 INFO    ] No camera update needed
[2026-06-19 06:59:06,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:59:06,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:59:06,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:59:06,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:59:08,817.817 INFO    ] ================================================
[2026-06-19 06:59:08,834.834 INFO    ] Launching Daemon at Fri Jun 19 06:59:08 IST 2026
[2026-06-19 06:59:08,847.847 INFO    ] ================================================
[2026-06-19 06:59:09,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:59:09
[2026-06-19 06:59:10,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:59:10,443.443 INFO    ] Initializing speech engine...
[2026-06-19 06:59:10,455.455 INFO    ] 2026-06-19 06:59:10
[2026-06-19 06:59:10,743.743 INFO    ] 2026-06-19 06:59:10
[2026-06-19 06:59:10,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:59:11,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:59:11,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:59:11,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:59:11,199.199 INFO    ] time= 19/06/2026 06:59:11
[2026-06-19 06:59:11,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:59:11,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:59:11,350.350 INFO    ] No existing commands found in stream
[2026-06-19 06:59:16,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:59:16,366.366 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 06:59:19,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 06:59:19,545.545 INFO    ] Checking for system updates...
[2026-06-19 06:59:19,586.586 INFO    ] 200
[2026-06-19 06:59:19,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:19,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:59:19,656.656 INFO    ] No update needed
[2026-06-19 06:59:19,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 06:59:19,698.698 INFO    ] 200
[2026-06-19 06:59:19,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:19,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:59:19,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:59:19,798.798 INFO    ] No camera update needed
[2026-06-19 06:59:19,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:59:19,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:59:19,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:59:19,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:59:21,858.858 INFO    ] ================================================
[2026-06-19 06:59:21,874.874 INFO    ] Launching Daemon at Fri Jun 19 06:59:21 IST 2026
[2026-06-19 06:59:21,885.885 INFO    ] ================================================
[2026-06-19 06:59:22,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:59:22
[2026-06-19 06:59:23,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:59:23,514.514 INFO    ] Initializing speech engine...
[2026-06-19 06:59:23,522.522 INFO    ] 2026-06-19 06:59:23
[2026-06-19 06:59:23,815.815 INFO    ] 2026-06-19 06:59:23
[2026-06-19 06:59:23,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:59:24,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:59:24,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:59:24,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:59:24,297.297 INFO    ] time= 19/06/2026 06:59:24
[2026-06-19 06:59:24,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:59:24,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:59:24,434.434 INFO    ] No existing commands found in stream
[2026-06-19 06:59:29,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:59:29,464.464 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 06:59:33,112.112 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 06:59:33,116.116 INFO    ] Checking for system updates...
[2026-06-19 06:59:33,158.158 INFO    ] 200
[2026-06-19 06:59:33,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:33,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:59:33,232.232 INFO    ] No update needed
[2026-06-19 06:59:33,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 06:59:33,274.274 INFO    ] 200
[2026-06-19 06:59:33,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:33,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:59:33,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 06:59:33,358.358 INFO    ] No camera update needed
[2026-06-19 06:59:33,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:59:33,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:59:33,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:59:33,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:59:35,416.416 INFO    ] ================================================
[2026-06-19 06:59:35,432.432 INFO    ] Launching Daemon at Fri Jun 19 06:59:35 IST 2026
[2026-06-19 06:59:35,443.443 INFO    ] ================================================
[2026-06-19 06:59:36,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:59:36
[2026-06-19 06:59:36,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:59:36,850.850 INFO    ] Initializing speech engine...
[2026-06-19 06:59:36,872.872 INFO    ] 2026-06-19 06:59:36
[2026-06-19 06:59:37,125.125 INFO    ] 2026-06-19 06:59:37
[2026-06-19 06:59:37,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:59:37,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:59:37,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:59:37,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:59:37,581.581 INFO    ] time= 19/06/2026 06:59:37
[2026-06-19 06:59:37,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:59:37,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:59:37,740.740 INFO    ] No existing commands found in stream
[2026-06-19 06:59:42,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:59:42,755.755 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 06:59:45,976.976 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 06:59:45,978.978 INFO    ] Checking for system updates...
[2026-06-19 06:59:46,015.015 INFO    ] 200
[2026-06-19 06:59:46,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:46,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:59:46,081.081 INFO    ] No update needed
[2026-06-19 06:59:46,084.084 INFO    ] Checking for camera pi updates...
[2026-06-19 06:59:46,123.123 INFO    ] 200
[2026-06-19 06:59:46,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:46,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:59:46,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:59:46,325.325 INFO    ] No camera update needed
[2026-06-19 06:59:46,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:59:46,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:59:46,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:59:46,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 06:59:48,386.386 INFO    ] ================================================
[2026-06-19 06:59:48,402.402 INFO    ] Launching Daemon at Fri Jun 19 06:59:48 IST 2026
[2026-06-19 06:59:48,413.413 INFO    ] ================================================
[2026-06-19 06:59:48,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 06:59:48
[2026-06-19 06:59:49,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 06:59:49,874.874 INFO    ] Initializing speech engine...
[2026-06-19 06:59:49,882.882 INFO    ] 2026-06-19 06:59:49
[2026-06-19 06:59:50,131.131 INFO    ] 2026-06-19 06:59:50
[2026-06-19 06:59:50,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 06:59:50,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 06:59:50,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 06:59:50,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 06:59:50,607.607 INFO    ] time= 19/06/2026 06:59:50
[2026-06-19 06:59:50,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 06:59:50,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-19 06:59:50,751.751 INFO    ] No existing commands found in stream
[2026-06-19 06:59:55,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 06:59:55,767.767 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 06:59:58,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 06:59:58,544.544 INFO    ] Checking for system updates...
[2026-06-19 06:59:58,584.584 INFO    ] 200
[2026-06-19 06:59:58,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:58,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:59:58,650.650 INFO    ] No update needed
[2026-06-19 06:59:58,652.652 INFO    ] Checking for camera pi updates...
[2026-06-19 06:59:58,686.686 INFO    ] 200
[2026-06-19 06:59:58,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 06:59:58,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 06:59:58,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 06:59:58,792.792 INFO    ] No camera update needed
[2026-06-19 06:59:58,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-19 06:59:58,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 06:59:58,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 06:59:58,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:00:00,848.848 INFO    ] ================================================
[2026-06-19 07:00:00,863.863 INFO    ] Launching Daemon at Fri Jun 19 07:00:00 IST 2026
[2026-06-19 07:00:00,874.874 INFO    ] ================================================
[2026-06-19 07:00:03,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:00:03
[2026-06-19 07:00:05,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:00:06,124.124 INFO    ] Initializing speech engine...
[2026-06-19 07:00:06,140.140 INFO    ] 2026-06-19 07:00:06
[2026-06-19 07:00:06,414.414 INFO    ] 2026-06-19 07:00:06
[2026-06-19 07:00:06,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:00:06,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:00:06,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:00:06,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:00:06,836.836 INFO    ] time= 19/06/2026 07:00:06
[2026-06-19 07:00:06,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:00:06,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:00:06,992.992 INFO    ] No existing commands found in stream
[2026-06-19 07:00:12,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:00:12,007.007 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 07:00:13,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:00:13,218.218 INFO    ] Checking for system updates...
[2026-06-19 07:00:13,258.258 INFO    ] 200
[2026-06-19 07:00:13,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:00:13,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:00:13,316.316 INFO    ] No update needed
[2026-06-19 07:00:13,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 07:00:13,351.351 INFO    ] 200
[2026-06-19 07:00:13,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:00:13,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:00:13,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:00:13,443.443 INFO    ] No camera update needed
[2026-06-19 07:00:13,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:00:13,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:00:13,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:00:13,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:00:15,501.501 INFO    ] ================================================
[2026-06-19 07:00:15,516.516 INFO    ] Launching Daemon at Fri Jun 19 07:00:15 IST 2026
[2026-06-19 07:00:15,527.527 INFO    ] ================================================
[2026-06-19 07:00:16,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:00:16
[2026-06-19 07:00:16,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:00:17,024.024 INFO    ] Initializing speech engine...
[2026-06-19 07:00:17,029.029 INFO    ] 2026-06-19 07:00:17
[2026-06-19 07:00:17,280.280 INFO    ] 2026-06-19 07:00:17
[2026-06-19 07:00:17,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:00:17,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:00:17,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:00:17,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:00:17,737.737 INFO    ] time= 19/06/2026 07:00:17
[2026-06-19 07:00:17,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:00:17,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:00:17,908.908 INFO    ] No existing commands found in stream
[2026-06-19 07:00:22,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:00:22,922.922 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 07:00:26,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:00:26,186.186 INFO    ] Checking for system updates...
[2026-06-19 07:00:26,222.222 INFO    ] 200
[2026-06-19 07:00:26,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:00:26,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:00:26,286.286 INFO    ] No update needed
[2026-06-19 07:00:26,288.288 INFO    ] Checking for camera pi updates...
[2026-06-19 07:00:26,325.325 INFO    ] 200
[2026-06-19 07:00:26,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:00:26,372.372 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:00:26,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:00:26,422.422 INFO    ] No camera update needed
[2026-06-19 07:00:26,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:00:26,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:00:26,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:00:26,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:00:28,478.478 INFO    ] ================================================
[2026-06-19 07:00:28,494.494 INFO    ] Launching Daemon at Fri Jun 19 07:00:28 IST 2026
[2026-06-19 07:00:28,505.505 INFO    ] ================================================
[2026-06-19 07:00:29,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:00:29
[2026-06-19 07:00:29,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:00:29,955.955 INFO    ] Initializing speech engine...
[2026-06-19 07:00:29,970.970 INFO    ] 2026-06-19 07:00:29
[2026-06-19 07:00:30,257.257 INFO    ] 2026-06-19 07:00:30
[2026-06-19 07:00:30,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:00:30,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:00:30,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:00:30,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:00:30,636.636 INFO    ] time= 19/06/2026 07:00:30
[2026-06-19 07:00:30,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:00:30,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:00:30,761.761 INFO    ] No existing commands found in stream
[2026-06-19 07:00:35,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:00:35,776.776 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 07:00:39,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:00:39,727.727 INFO    ] Checking for system updates...
[2026-06-19 07:00:39,777.777 INFO    ] 200
[2026-06-19 07:00:39,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 07:00:39,783.783 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 07:00:39,785.785 INFO    ] Checking for camera pi updates...
[2026-06-19 07:00:39,843.843 INFO    ] 200
[2026-06-19 07:00:39,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 07:00:39,849.849 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 07:00:39,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:00:39,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:00:39,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:00:39,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:00:41,908.908 INFO    ] ================================================
[2026-06-19 07:00:41,925.925 INFO    ] Launching Daemon at Fri Jun 19 07:00:41 IST 2026
[2026-06-19 07:00:41,936.936 INFO    ] ================================================
[2026-06-19 07:00:42,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:00:42
[2026-06-19 07:00:43,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:00:43,356.356 INFO    ] Initializing speech engine...
[2026-06-19 07:00:43,368.368 INFO    ] 2026-06-19 07:00:43
[2026-06-19 07:00:43,639.639 INFO    ] 2026-06-19 07:00:43
[2026-06-19 07:00:43,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:00:43,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:00:43,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:00:44,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:00:44,063.063 INFO    ] time= 19/06/2026 07:00:44
[2026-06-19 07:00:44,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:00:44,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:00:44,222.222 INFO    ] No existing commands found in stream
[2026-06-19 07:00:49,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:00:49,237.237 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 07:00:51,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:00:51,186.186 INFO    ] Checking for system updates...
[2026-06-19 07:00:51,222.222 INFO    ] 200
[2026-06-19 07:00:51,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:00:51,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:00:51,289.289 INFO    ] No update needed
[2026-06-19 07:00:51,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 07:00:51,324.324 INFO    ] 200
[2026-06-19 07:00:51,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:00:51,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:00:51,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:00:51,423.423 INFO    ] No camera update needed
[2026-06-19 07:00:51,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:00:51,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:00:51,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:00:51,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:00:53,483.483 INFO    ] ================================================
[2026-06-19 07:00:53,500.500 INFO    ] Launching Daemon at Fri Jun 19 07:00:53 IST 2026
[2026-06-19 07:00:53,513.513 INFO    ] ================================================
[2026-06-19 07:00:54,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:00:54
[2026-06-19 07:00:54,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:00:55,206.206 INFO    ] Initializing speech engine...
[2026-06-19 07:00:55,219.219 INFO    ] 2026-06-19 07:00:55
[2026-06-19 07:00:55,497.497 INFO    ] 2026-06-19 07:00:55
[2026-06-19 07:00:55,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:00:55,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:00:55,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:00:55,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:00:55,955.955 INFO    ] time= 19/06/2026 07:00:55
[2026-06-19 07:00:56,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:00:56,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:00:56,104.104 INFO    ] No existing commands found in stream
[2026-06-19 07:01:01,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:01:01,127.127 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 07:01:04,210.210 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:01:04,213.213 INFO    ] Checking for system updates...
[2026-06-19 07:01:04,254.254 INFO    ] 200
[2026-06-19 07:01:04,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:04,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:01:04,320.320 INFO    ] No update needed
[2026-06-19 07:01:04,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 07:01:04,360.360 INFO    ] 200
[2026-06-19 07:01:04,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:04,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:01:04,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:01:04,454.454 INFO    ] No camera update needed
[2026-06-19 07:01:04,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:01:04,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:01:04,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:01:04,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:01:06,517.517 INFO    ] ================================================
[2026-06-19 07:01:06,533.533 INFO    ] Launching Daemon at Fri Jun 19 07:01:06 IST 2026
[2026-06-19 07:01:06,544.544 INFO    ] ================================================
[2026-06-19 07:01:07,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:01:07
[2026-06-19 07:01:07,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:01:08,003.003 INFO    ] Initializing speech engine...
[2026-06-19 07:01:08,010.010 INFO    ] 2026-06-19 07:01:08
[2026-06-19 07:01:08,271.271 INFO    ] 2026-06-19 07:01:08
[2026-06-19 07:01:08,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:01:08,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:01:08,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:01:08,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:01:08,629.629 INFO    ] time= 19/06/2026 07:01:08
[2026-06-19 07:01:08,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:01:08,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:01:08,809.809 INFO    ] No existing commands found in stream
[2026-06-19 07:01:13,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:01:13,831.831 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 07:01:14,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:01:14,477.477 INFO    ] Checking for system updates...
[2026-06-19 07:01:14,513.513 INFO    ] 200
[2026-06-19 07:01:14,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:14,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:01:14,579.579 INFO    ] No update needed
[2026-06-19 07:01:14,582.582 INFO    ] Checking for camera pi updates...
[2026-06-19 07:01:14,616.616 INFO    ] 200
[2026-06-19 07:01:14,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:14,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:01:14,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:01:14,705.705 INFO    ] No camera update needed
[2026-06-19 07:01:14,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:01:14,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:01:14,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:01:14,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:01:16,763.763 INFO    ] ================================================
[2026-06-19 07:01:16,778.778 INFO    ] Launching Daemon at Fri Jun 19 07:01:16 IST 2026
[2026-06-19 07:01:16,790.790 INFO    ] ================================================
[2026-06-19 07:01:17,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:01:17
[2026-06-19 07:01:18,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:01:18,461.461 INFO    ] Initializing speech engine...
[2026-06-19 07:01:18,475.475 INFO    ] 2026-06-19 07:01:18
[2026-06-19 07:01:18,764.764 INFO    ] 2026-06-19 07:01:18
[2026-06-19 07:01:18,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:01:19,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:01:19,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:01:19,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:01:19,233.233 INFO    ] time= 19/06/2026 07:01:19
[2026-06-19 07:01:19,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:01:19,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:01:19,386.386 INFO    ] No existing commands found in stream
[2026-06-19 07:01:24,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:01:24,402.402 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 07:01:25,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:01:25,246.246 INFO    ] Checking for system updates...
[2026-06-19 07:01:25,289.289 INFO    ] 200
[2026-06-19 07:01:25,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:25,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:01:25,349.349 INFO    ] No update needed
[2026-06-19 07:01:25,352.352 INFO    ] Checking for camera pi updates...
[2026-06-19 07:01:25,387.387 INFO    ] 200
[2026-06-19 07:01:25,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:25,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:01:25,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:01:25,480.480 INFO    ] No camera update needed
[2026-06-19 07:01:25,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:01:25,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:01:25,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:01:25,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:01:27,537.537 INFO    ] ================================================
[2026-06-19 07:01:27,553.553 INFO    ] Launching Daemon at Fri Jun 19 07:01:27 IST 2026
[2026-06-19 07:01:27,565.565 INFO    ] ================================================
[2026-06-19 07:01:28,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:01:28
[2026-06-19 07:01:28,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:01:29,255.255 INFO    ] Initializing speech engine...
[2026-06-19 07:01:29,268.268 INFO    ] 2026-06-19 07:01:29
[2026-06-19 07:01:29,538.538 INFO    ] 2026-06-19 07:01:29
[2026-06-19 07:01:29,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:01:29,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:01:29,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:01:29,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:01:29,953.953 INFO    ] time= 19/06/2026 07:01:29
[2026-06-19 07:01:29,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:01:29,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:01:30,043.043 INFO    ] No existing commands found in stream
[2026-06-19 07:01:35,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:01:35,061.061 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 07:01:39,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:01:39,260.260 INFO    ] Checking for system updates...
[2026-06-19 07:01:39,296.296 INFO    ] 200
[2026-06-19 07:01:39,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:39,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:01:39,362.362 INFO    ] No update needed
[2026-06-19 07:01:39,364.364 INFO    ] Checking for camera pi updates...
[2026-06-19 07:01:39,402.402 INFO    ] 200
[2026-06-19 07:01:39,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:39,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:01:39,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:01:39,502.502 INFO    ] No camera update needed
[2026-06-19 07:01:39,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:01:39,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:01:39,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:01:39,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:01:41,557.557 INFO    ] ================================================
[2026-06-19 07:01:41,573.573 INFO    ] Launching Daemon at Fri Jun 19 07:01:41 IST 2026
[2026-06-19 07:01:41,584.584 INFO    ] ================================================
[2026-06-19 07:01:42,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:01:42
[2026-06-19 07:01:42,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:01:43,055.055 INFO    ] Initializing speech engine...
[2026-06-19 07:01:43,061.061 INFO    ] 2026-06-19 07:01:43
[2026-06-19 07:01:43,323.323 INFO    ] 2026-06-19 07:01:43
[2026-06-19 07:01:43,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:01:43,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:01:43,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:01:43,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:01:43,815.815 INFO    ] time= 19/06/2026 07:01:43
[2026-06-19 07:01:43,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:01:43,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:01:43,998.998 INFO    ] No existing commands found in stream
[2026-06-19 07:01:49,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:01:49,031.031 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 07:01:53,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:01:53,380.380 INFO    ] Checking for system updates...
[2026-06-19 07:01:53,418.418 INFO    ] 200
[2026-06-19 07:01:53,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:53,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:01:53,478.478 INFO    ] No update needed
[2026-06-19 07:01:53,480.480 INFO    ] Checking for camera pi updates...
[2026-06-19 07:01:53,519.519 INFO    ] 200
[2026-06-19 07:01:53,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:01:53,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:01:53,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:01:53,717.717 INFO    ] No camera update needed
[2026-06-19 07:01:53,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:01:53,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:01:53,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:01:53,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:01:55,775.775 INFO    ] ================================================
[2026-06-19 07:01:55,790.790 INFO    ] Launching Daemon at Fri Jun 19 07:01:55 IST 2026
[2026-06-19 07:01:55,802.802 INFO    ] ================================================
[2026-06-19 07:01:56,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:01:56
[2026-06-19 07:01:56,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:01:57,266.266 INFO    ] Initializing speech engine...
[2026-06-19 07:01:57,272.272 INFO    ] 2026-06-19 07:01:57
[2026-06-19 07:01:57,534.534 INFO    ] 2026-06-19 07:01:57
[2026-06-19 07:01:57,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:01:57,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:01:57,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:01:57,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:01:57,998.998 INFO    ] time= 19/06/2026 07:01:57
[2026-06-19 07:01:58,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:01:58,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:01:58,177.177 INFO    ] No existing commands found in stream
[2026-06-19 07:02:03,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:02:03,190.190 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 07:02:07,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:02:07,353.353 INFO    ] Checking for system updates...
[2026-06-19 07:02:07,389.389 INFO    ] 200
[2026-06-19 07:02:07,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:07,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:02:07,447.447 INFO    ] No update needed
[2026-06-19 07:02:07,449.449 INFO    ] Checking for camera pi updates...
[2026-06-19 07:02:07,486.486 INFO    ] 200
[2026-06-19 07:02:07,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:07,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:02:07,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:02:07,583.583 INFO    ] No camera update needed
[2026-06-19 07:02:07,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:02:07,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:02:07,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:02:07,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:02:09,638.638 INFO    ] ================================================
[2026-06-19 07:02:09,654.654 INFO    ] Launching Daemon at Fri Jun 19 07:02:09 IST 2026
[2026-06-19 07:02:09,665.665 INFO    ] ================================================
[2026-06-19 07:02:10,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:02:10
[2026-06-19 07:02:10,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:02:11,094.094 INFO    ] Initializing speech engine...
[2026-06-19 07:02:11,119.119 INFO    ] 2026-06-19 07:02:11
[2026-06-19 07:02:11,390.390 INFO    ] 2026-06-19 07:02:11
[2026-06-19 07:02:11,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:02:11,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:02:11,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:02:11,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:02:11,763.763 INFO    ] time= 19/06/2026 07:02:11
[2026-06-19 07:02:11,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:02:11,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:02:11,890.890 INFO    ] No existing commands found in stream
[2026-06-19 07:02:16,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:02:16,905.905 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 07:02:18,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:02:18,018.018 INFO    ] Checking for system updates...
[2026-06-19 07:02:18,057.057 INFO    ] 200
[2026-06-19 07:02:18,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:18,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:02:18,120.120 INFO    ] No update needed
[2026-06-19 07:02:18,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 07:02:18,161.161 INFO    ] 200
[2026-06-19 07:02:18,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:18,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:02:18,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:02:18,257.257 INFO    ] No camera update needed
[2026-06-19 07:02:18,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:02:18,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:02:18,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:02:18,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:02:20,318.318 INFO    ] ================================================
[2026-06-19 07:02:20,334.334 INFO    ] Launching Daemon at Fri Jun 19 07:02:20 IST 2026
[2026-06-19 07:02:20,345.345 INFO    ] ================================================
[2026-06-19 07:02:20,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:02:20
[2026-06-19 07:02:21,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:02:21,961.961 INFO    ] Initializing speech engine...
[2026-06-19 07:02:21,969.969 INFO    ] 2026-06-19 07:02:21
[2026-06-19 07:02:22,236.236 INFO    ] 2026-06-19 07:02:22
[2026-06-19 07:02:22,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:02:22,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:02:22,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:02:22,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:02:22,679.679 INFO    ] time= 19/06/2026 07:02:22
[2026-06-19 07:02:22,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:02:22,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:02:22,847.847 INFO    ] No existing commands found in stream
[2026-06-19 07:02:27,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:02:27,861.861 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 07:02:28,920.920 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:02:28,922.922 INFO    ] Checking for system updates...
[2026-06-19 07:02:28,958.958 INFO    ] 200
[2026-06-19 07:02:28,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:29,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:02:29,022.022 INFO    ] No update needed
[2026-06-19 07:02:29,024.024 INFO    ] Checking for camera pi updates...
[2026-06-19 07:02:29,061.061 INFO    ] 200
[2026-06-19 07:02:29,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:29,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:02:29,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:02:29,148.148 INFO    ] No camera update needed
[2026-06-19 07:02:29,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:02:29,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:02:29,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:02:29,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:02:31,204.204 INFO    ] ================================================
[2026-06-19 07:02:31,219.219 INFO    ] Launching Daemon at Fri Jun 19 07:02:31 IST 2026
[2026-06-19 07:02:31,231.231 INFO    ] ================================================
[2026-06-19 07:02:31,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:02:31
[2026-06-19 07:02:32,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:02:32,705.705 INFO    ] Initializing speech engine...
[2026-06-19 07:02:32,715.715 INFO    ] 2026-06-19 07:02:32
[2026-06-19 07:02:33,029.029 INFO    ] 2026-06-19 07:02:33
[2026-06-19 07:02:33,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:02:33,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:02:33,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:02:33,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:02:33,474.474 INFO    ] time= 19/06/2026 07:02:33
[2026-06-19 07:02:33,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:02:33,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:02:33,563.563 INFO    ] No existing commands found in stream
[2026-06-19 07:02:38,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:02:38,578.578 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 07:02:41,211.211 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:02:41,213.213 INFO    ] Checking for system updates...
[2026-06-19 07:02:41,249.249 INFO    ] 200
[2026-06-19 07:02:41,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:41,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:02:41,306.306 INFO    ] No update needed
[2026-06-19 07:02:41,309.309 INFO    ] Checking for camera pi updates...
[2026-06-19 07:02:41,342.342 INFO    ] 200
[2026-06-19 07:02:41,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:41,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:02:41,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:02:41,431.431 INFO    ] No camera update needed
[2026-06-19 07:02:41,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:02:41,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:02:41,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:02:41,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:02:43,487.487 INFO    ] ================================================
[2026-06-19 07:02:43,503.503 INFO    ] Launching Daemon at Fri Jun 19 07:02:43 IST 2026
[2026-06-19 07:02:43,514.514 INFO    ] ================================================
[2026-06-19 07:02:44,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:02:44
[2026-06-19 07:02:44,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:02:44,966.966 INFO    ] Initializing speech engine...
[2026-06-19 07:02:44,987.987 INFO    ] 2026-06-19 07:02:44
[2026-06-19 07:02:45,254.254 INFO    ] 2026-06-19 07:02:45
[2026-06-19 07:02:45,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:02:45,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:02:45,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:02:45,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:02:45,643.643 INFO    ] time= 19/06/2026 07:02:45
[2026-06-19 07:02:45,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:02:45,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:02:45,827.827 INFO    ] No existing commands found in stream
[2026-06-19 07:02:50,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:02:50,860.860 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 07:02:53,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:02:53,888.888 INFO    ] Checking for system updates...
[2026-06-19 07:02:53,925.925 INFO    ] 200
[2026-06-19 07:02:53,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:53,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:02:53,996.996 INFO    ] No update needed
[2026-06-19 07:02:53,999.999 INFO    ] Checking for camera pi updates...
[2026-06-19 07:02:54,037.037 INFO    ] 200
[2026-06-19 07:02:54,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:02:54,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:02:54,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:02:54,133.133 INFO    ] No camera update needed
[2026-06-19 07:02:54,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:02:54,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:02:54,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:02:54,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:02:56,192.192 INFO    ] ================================================
[2026-06-19 07:02:56,208.208 INFO    ] Launching Daemon at Fri Jun 19 07:02:56 IST 2026
[2026-06-19 07:02:56,218.218 INFO    ] ================================================
[2026-06-19 07:02:56,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:02:56
[2026-06-19 07:02:57,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:02:57,690.690 INFO    ] Initializing speech engine...
[2026-06-19 07:02:57,706.706 INFO    ] 2026-06-19 07:02:57
[2026-06-19 07:02:57,990.990 INFO    ] 2026-06-19 07:02:57
[2026-06-19 07:02:58,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:02:58,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:02:58,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:02:58,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:02:58,387.387 INFO    ] time= 19/06/2026 07:02:58
[2026-06-19 07:02:58,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:02:58,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:02:58,493.493 INFO    ] No existing commands found in stream
[2026-06-19 07:03:03,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:03:03,509.509 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 07:03:04,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:03:04,152.152 INFO    ] Checking for system updates...
[2026-06-19 07:03:04,188.188 INFO    ] 200
[2026-06-19 07:03:04,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:04,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:03:04,252.252 INFO    ] No update needed
[2026-06-19 07:03:04,254.254 INFO    ] Checking for camera pi updates...
[2026-06-19 07:03:04,287.287 INFO    ] 200
[2026-06-19 07:03:04,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:04,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:03:04,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:03:04,377.377 INFO    ] No camera update needed
[2026-06-19 07:03:04,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:03:04,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:03:04,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:03:04,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:03:06,432.432 INFO    ] ================================================
[2026-06-19 07:03:06,447.447 INFO    ] Launching Daemon at Fri Jun 19 07:03:06 IST 2026
[2026-06-19 07:03:06,458.458 INFO    ] ================================================
[2026-06-19 07:03:07,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:03:07
[2026-06-19 07:03:07,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:03:07,904.904 INFO    ] Initializing speech engine...
[2026-06-19 07:03:07,912.912 INFO    ] 2026-06-19 07:03:07
[2026-06-19 07:03:08,161.161 INFO    ] 2026-06-19 07:03:08
[2026-06-19 07:03:08,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:03:08,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:03:08,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:03:08,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:03:08,644.644 INFO    ] time= 19/06/2026 07:03:08
[2026-06-19 07:03:08,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:03:08,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:03:08,786.786 INFO    ] No existing commands found in stream
[2026-06-19 07:03:13,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:03:13,800.800 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 07:03:15,175.175 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:03:15,178.178 INFO    ] Checking for system updates...
[2026-06-19 07:03:15,219.219 INFO    ] 200
[2026-06-19 07:03:15,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:15,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:03:15,276.276 INFO    ] No update needed
[2026-06-19 07:03:15,279.279 INFO    ] Checking for camera pi updates...
[2026-06-19 07:03:15,313.313 INFO    ] 200
[2026-06-19 07:03:15,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:15,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:03:15,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:03:15,401.401 INFO    ] No camera update needed
[2026-06-19 07:03:15,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:03:15,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:03:15,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:03:15,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:03:17,457.457 INFO    ] ================================================
[2026-06-19 07:03:17,473.473 INFO    ] Launching Daemon at Fri Jun 19 07:03:17 IST 2026
[2026-06-19 07:03:17,485.485 INFO    ] ================================================
[2026-06-19 07:03:18,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:03:18
[2026-06-19 07:03:18,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:03:18,899.899 INFO    ] Initializing speech engine...
[2026-06-19 07:03:18,907.907 INFO    ] 2026-06-19 07:03:18
[2026-06-19 07:03:19,203.203 INFO    ] 2026-06-19 07:03:19
[2026-06-19 07:03:19,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:03:19,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:03:19,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:03:19,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:03:19,557.557 INFO    ] time= 19/06/2026 07:03:19
[2026-06-19 07:03:19,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:03:19,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:03:19,641.641 INFO    ] No existing commands found in stream
[2026-06-19 07:03:24,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:03:24,656.656 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 07:03:27,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:03:27,967.967 INFO    ] Checking for system updates...
[2026-06-19 07:03:28,004.004 INFO    ] 200
[2026-06-19 07:03:28,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:28,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:03:28,063.063 INFO    ] No update needed
[2026-06-19 07:03:28,066.066 INFO    ] Checking for camera pi updates...
[2026-06-19 07:03:28,105.105 INFO    ] 200
[2026-06-19 07:03:28,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:28,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:03:28,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:03:28,193.193 INFO    ] No camera update needed
[2026-06-19 07:03:28,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:03:28,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:03:28,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:03:28,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:03:30,254.254 INFO    ] ================================================
[2026-06-19 07:03:30,272.272 INFO    ] Launching Daemon at Fri Jun 19 07:03:30 IST 2026
[2026-06-19 07:03:30,285.285 INFO    ] ================================================
[2026-06-19 07:03:30,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:03:30
[2026-06-19 07:03:31,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:03:31,921.921 INFO    ] Initializing speech engine...
[2026-06-19 07:03:31,932.932 INFO    ] 2026-06-19 07:03:31
[2026-06-19 07:03:32,224.224 INFO    ] 2026-06-19 07:03:32
[2026-06-19 07:03:32,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:03:32,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:03:32,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:03:32,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:03:32,669.669 INFO    ] time= 19/06/2026 07:03:32
[2026-06-19 07:03:32,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:03:32,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:03:32,860.860 INFO    ] No existing commands found in stream
[2026-06-19 07:03:37,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:03:37,875.875 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 07:03:42,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:03:42,928.928 INFO    ] Checking for system updates...
[2026-06-19 07:03:42,964.964 INFO    ] 200
[2026-06-19 07:03:42,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:43,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:03:43,021.021 INFO    ] No update needed
[2026-06-19 07:03:43,023.023 INFO    ] Checking for camera pi updates...
[2026-06-19 07:03:43,061.061 INFO    ] 200
[2026-06-19 07:03:43,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:43,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:03:43,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:03:43,148.148 INFO    ] No camera update needed
[2026-06-19 07:03:43,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:03:43,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:03:43,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:03:43,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:03:45,203.203 INFO    ] ================================================
[2026-06-19 07:03:45,218.218 INFO    ] Launching Daemon at Fri Jun 19 07:03:45 IST 2026
[2026-06-19 07:03:45,229.229 INFO    ] ================================================
[2026-06-19 07:03:45,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:03:45
[2026-06-19 07:03:46,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:03:46,861.861 INFO    ] Initializing speech engine...
[2026-06-19 07:03:46,873.873 INFO    ] 2026-06-19 07:03:46
[2026-06-19 07:03:47,175.175 INFO    ] 2026-06-19 07:03:47
[2026-06-19 07:03:47,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:03:47,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:03:47,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:03:47,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:03:47,678.678 INFO    ] time= 19/06/2026 07:03:47
[2026-06-19 07:03:47,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:03:47,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:03:47,814.814 INFO    ] No existing commands found in stream
[2026-06-19 07:03:52,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:03:52,845.845 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 07:03:53,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:03:53,530.530 INFO    ] Checking for system updates...
[2026-06-19 07:03:53,567.567 INFO    ] 200
[2026-06-19 07:03:53,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:53,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:03:53,629.629 INFO    ] No update needed
[2026-06-19 07:03:53,631.631 INFO    ] Checking for camera pi updates...
[2026-06-19 07:03:53,666.666 INFO    ] 200
[2026-06-19 07:03:53,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:03:53,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:03:53,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:03:53,760.760 INFO    ] No camera update needed
[2026-06-19 07:03:53,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:03:53,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:03:53,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:03:53,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:03:55,818.818 INFO    ] ================================================
[2026-06-19 07:03:55,833.833 INFO    ] Launching Daemon at Fri Jun 19 07:03:55 IST 2026
[2026-06-19 07:03:55,845.845 INFO    ] ================================================
[2026-06-19 07:03:56,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:03:56
[2026-06-19 07:03:57,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:03:57,284.284 INFO    ] Initializing speech engine...
[2026-06-19 07:03:57,309.309 INFO    ] 2026-06-19 07:03:57
[2026-06-19 07:03:57,560.560 INFO    ] 2026-06-19 07:03:57
[2026-06-19 07:03:57,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:03:57,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:03:57,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:03:57,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:03:58,006.006 INFO    ] time= 19/06/2026 07:03:57
[2026-06-19 07:03:58,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:03:58,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:03:58,179.179 INFO    ] No existing commands found in stream
[2026-06-19 07:04:03,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:04:03,190.190 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 07:04:03,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:04:03,746.746 INFO    ] Checking for system updates...
[2026-06-19 07:04:03,787.787 INFO    ] 200
[2026-06-19 07:04:03,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:03,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:04:03,844.844 INFO    ] No update needed
[2026-06-19 07:04:03,847.847 INFO    ] Checking for camera pi updates...
[2026-06-19 07:04:03,885.885 INFO    ] 200
[2026-06-19 07:04:03,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:03,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:04:03,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:04:03,974.974 INFO    ] No camera update needed
[2026-06-19 07:04:03,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:04:03,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:04:03,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:04:03,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:04:06,032.032 INFO    ] ================================================
[2026-06-19 07:04:06,048.048 INFO    ] Launching Daemon at Fri Jun 19 07:04:06 IST 2026
[2026-06-19 07:04:06,059.059 INFO    ] ================================================
[2026-06-19 07:04:06,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:04:06
[2026-06-19 07:04:07,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:04:07,679.679 INFO    ] Initializing speech engine...
[2026-06-19 07:04:07,693.693 INFO    ] 2026-06-19 07:04:07
[2026-06-19 07:04:07,977.977 INFO    ] 2026-06-19 07:04:07
[2026-06-19 07:04:08,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:04:08,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:04:08,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:04:08,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:04:08,513.513 INFO    ] time= 19/06/2026 07:04:08
[2026-06-19 07:04:08,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:04:08,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:04:08,663.663 INFO    ] No existing commands found in stream
[2026-06-19 07:04:13,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:04:13,688.688 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 07:04:16,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:04:16,611.611 INFO    ] Checking for system updates...
[2026-06-19 07:04:16,648.648 INFO    ] 200
[2026-06-19 07:04:16,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:16,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:04:16,713.713 INFO    ] No update needed
[2026-06-19 07:04:16,715.715 INFO    ] Checking for camera pi updates...
[2026-06-19 07:04:16,749.749 INFO    ] 200
[2026-06-19 07:04:16,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:16,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:04:16,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:04:16,837.837 INFO    ] No camera update needed
[2026-06-19 07:04:16,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:04:16,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:04:16,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:04:16,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:04:18,892.892 INFO    ] ================================================
[2026-06-19 07:04:18,907.907 INFO    ] Launching Daemon at Fri Jun 19 07:04:18 IST 2026
[2026-06-19 07:04:18,918.918 INFO    ] ================================================
[2026-06-19 07:04:19,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:04:19
[2026-06-19 07:04:20,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:04:20,379.379 INFO    ] Initializing speech engine...
[2026-06-19 07:04:20,389.389 INFO    ] 2026-06-19 07:04:20
[2026-06-19 07:04:20,638.638 INFO    ] 2026-06-19 07:04:20
[2026-06-19 07:04:20,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:04:20,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:04:20,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:04:21,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:04:21,019.019 INFO    ] time= 19/06/2026 07:04:21
[2026-06-19 07:04:21,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:04:21,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:04:21,146.146 INFO    ] No existing commands found in stream
[2026-06-19 07:04:26,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:04:26,162.162 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 07:04:26,594.594 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:04:26,597.597 INFO    ] Checking for system updates...
[2026-06-19 07:04:26,635.635 INFO    ] 200
[2026-06-19 07:04:26,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:26,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:04:26,693.693 INFO    ] No update needed
[2026-06-19 07:04:26,696.696 INFO    ] Checking for camera pi updates...
[2026-06-19 07:04:26,730.730 INFO    ] 200
[2026-06-19 07:04:26,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:26,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:04:26,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:04:26,826.826 INFO    ] No camera update needed
[2026-06-19 07:04:26,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:04:26,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:04:26,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:04:26,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:04:28,882.882 INFO    ] ================================================
[2026-06-19 07:04:28,898.898 INFO    ] Launching Daemon at Fri Jun 19 07:04:28 IST 2026
[2026-06-19 07:04:28,909.909 INFO    ] ================================================
[2026-06-19 07:04:29,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:04:29
[2026-06-19 07:04:30,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:04:30,334.334 INFO    ] Initializing speech engine...
[2026-06-19 07:04:30,349.349 INFO    ] 2026-06-19 07:04:30
[2026-06-19 07:04:30,603.603 INFO    ] 2026-06-19 07:04:30
[2026-06-19 07:04:30,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:04:30,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:04:30,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:04:30,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:04:30,975.975 INFO    ] time= 19/06/2026 07:04:30
[2026-06-19 07:04:30,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:04:31,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:04:31,149.149 INFO    ] No existing commands found in stream
[2026-06-19 07:04:36,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:04:36,177.177 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 07:04:38,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:04:38,187.187 INFO    ] Checking for system updates...
[2026-06-19 07:04:38,225.225 INFO    ] 200
[2026-06-19 07:04:38,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:38,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:04:38,283.283 INFO    ] No update needed
[2026-06-19 07:04:38,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 07:04:38,319.319 INFO    ] 200
[2026-06-19 07:04:38,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:38,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:04:38,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:04:38,409.409 INFO    ] No camera update needed
[2026-06-19 07:04:38,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:04:38,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:04:38,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:04:38,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:04:40,468.468 INFO    ] ================================================
[2026-06-19 07:04:40,484.484 INFO    ] Launching Daemon at Fri Jun 19 07:04:40 IST 2026
[2026-06-19 07:04:40,495.495 INFO    ] ================================================
[2026-06-19 07:04:41,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:04:41
[2026-06-19 07:04:41,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:04:41,924.924 INFO    ] Initializing speech engine...
[2026-06-19 07:04:41,933.933 INFO    ] 2026-06-19 07:04:41
[2026-06-19 07:04:42,232.232 INFO    ] 2026-06-19 07:04:42
[2026-06-19 07:04:42,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:04:42,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:04:42,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:04:42,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:04:42,624.624 INFO    ] time= 19/06/2026 07:04:42
[2026-06-19 07:04:42,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:04:42,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:04:42,753.753 INFO    ] No existing commands found in stream
[2026-06-19 07:04:47,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:04:47,768.768 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 07:04:48,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:04:48,806.806 INFO    ] Checking for system updates...
[2026-06-19 07:04:48,843.843 INFO    ] 200
[2026-06-19 07:04:48,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:48,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:04:48,903.903 INFO    ] No update needed
[2026-06-19 07:04:48,906.906 INFO    ] Checking for camera pi updates...
[2026-06-19 07:04:48,941.941 INFO    ] 200
[2026-06-19 07:04:48,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:04:48,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:04:49,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:04:49,019.019 INFO    ] No camera update needed
[2026-06-19 07:04:49,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:04:49,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:04:49,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:04:49,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:04:51,080.080 INFO    ] ================================================
[2026-06-19 07:04:51,096.096 INFO    ] Launching Daemon at Fri Jun 19 07:04:51 IST 2026
[2026-06-19 07:04:51,107.107 INFO    ] ================================================
[2026-06-19 07:04:51,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:04:51
[2026-06-19 07:04:52,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:04:52,592.592 INFO    ] Initializing speech engine...
[2026-06-19 07:04:52,613.613 INFO    ] 2026-06-19 07:04:52
[2026-06-19 07:04:52,889.889 INFO    ] 2026-06-19 07:04:52
[2026-06-19 07:04:52,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:04:53,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:04:53,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:04:53,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:04:53,282.282 INFO    ] time= 19/06/2026 07:04:53
[2026-06-19 07:04:53,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:04:53,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:04:53,413.413 INFO    ] No existing commands found in stream
[2026-06-19 07:04:58,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:04:58,427.427 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 07:05:02,294.294 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:05:02,297.297 INFO    ] Checking for system updates...
[2026-06-19 07:05:02,336.336 INFO    ] 200
[2026-06-19 07:05:02,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:02,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:05:02,414.414 INFO    ] No update needed
[2026-06-19 07:05:02,417.417 INFO    ] Checking for camera pi updates...
[2026-06-19 07:05:02,459.459 INFO    ] 200
[2026-06-19 07:05:02,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:02,512.512 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:05:02,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:05:02,557.557 INFO    ] No camera update needed
[2026-06-19 07:05:02,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:05:02,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:05:02,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:05:02,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:05:04,623.623 INFO    ] ================================================
[2026-06-19 07:05:04,639.639 INFO    ] Launching Daemon at Fri Jun 19 07:05:04 IST 2026
[2026-06-19 07:05:04,653.653 INFO    ] ================================================
[2026-06-19 07:05:05,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:05:05
[2026-06-19 07:05:05,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:05:06,082.082 INFO    ] Initializing speech engine...
[2026-06-19 07:05:06,099.099 INFO    ] 2026-06-19 07:05:06
[2026-06-19 07:05:06,384.384 INFO    ] 2026-06-19 07:05:06
[2026-06-19 07:05:06,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:05:06,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:05:06,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:05:06,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:05:06,822.822 INFO    ] time= 19/06/2026 07:05:06
[2026-06-19 07:05:06,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:05:06,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:05:06,912.912 INFO    ] No existing commands found in stream
[2026-06-19 07:05:11,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:05:11,928.928 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 07:05:16,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:05:16,184.184 INFO    ] Checking for system updates...
[2026-06-19 07:05:16,226.226 INFO    ] 200
[2026-06-19 07:05:16,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:16,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:05:16,286.286 INFO    ] No update needed
[2026-06-19 07:05:16,289.289 INFO    ] Checking for camera pi updates...
[2026-06-19 07:05:16,324.324 INFO    ] 200
[2026-06-19 07:05:16,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:16,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:05:16,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:05:16,423.423 INFO    ] No camera update needed
[2026-06-19 07:05:16,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:05:16,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:05:16,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:05:16,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:05:18,483.483 INFO    ] ================================================
[2026-06-19 07:05:18,499.499 INFO    ] Launching Daemon at Fri Jun 19 07:05:18 IST 2026
[2026-06-19 07:05:18,509.509 INFO    ] ================================================
[2026-06-19 07:05:19,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:05:19
[2026-06-19 07:05:19,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:05:19,961.961 INFO    ] Initializing speech engine...
[2026-06-19 07:05:19,970.970 INFO    ] 2026-06-19 07:05:19
[2026-06-19 07:05:20,222.222 INFO    ] 2026-06-19 07:05:20
[2026-06-19 07:05:20,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:05:20,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:05:20,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:05:20,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:05:20,679.679 INFO    ] time= 19/06/2026 07:05:20
[2026-06-19 07:05:20,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:05:20,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:05:20,845.845 INFO    ] No existing commands found in stream
[2026-06-19 07:05:25,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:05:25,859.859 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 07:05:29,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:05:29,832.832 INFO    ] Checking for system updates...
[2026-06-19 07:05:29,868.868 INFO    ] 200
[2026-06-19 07:05:29,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:29,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:05:29,930.930 INFO    ] No update needed
[2026-06-19 07:05:29,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 07:05:29,967.967 INFO    ] 200
[2026-06-19 07:05:29,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:30,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:05:30,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:05:30,052.052 INFO    ] No camera update needed
[2026-06-19 07:05:30,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:05:30,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:05:30,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:05:30,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:05:32,108.108 INFO    ] ================================================
[2026-06-19 07:05:32,124.124 INFO    ] Launching Daemon at Fri Jun 19 07:05:32 IST 2026
[2026-06-19 07:05:32,136.136 INFO    ] ================================================
[2026-06-19 07:05:32,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:05:32
[2026-06-19 07:05:33,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:05:33,609.609 INFO    ] Initializing speech engine...
[2026-06-19 07:05:33,617.617 INFO    ] 2026-06-19 07:05:33
[2026-06-19 07:05:33,914.914 INFO    ] 2026-06-19 07:05:33
[2026-06-19 07:05:33,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:05:34,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:05:34,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:05:34,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:05:34,300.300 INFO    ] time= 19/06/2026 07:05:34
[2026-06-19 07:05:34,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:05:34,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:05:34,427.427 INFO    ] No existing commands found in stream
[2026-06-19 07:05:39,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:05:39,441.441 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 07:05:42,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:05:42,862.862 INFO    ] Checking for system updates...
[2026-06-19 07:05:42,898.898 INFO    ] 200
[2026-06-19 07:05:42,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:42,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:05:42,955.955 INFO    ] No update needed
[2026-06-19 07:05:42,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 07:05:42,995.995 INFO    ] 200
[2026-06-19 07:05:42,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:43,038.038 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:05:43,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:05:43,080.080 INFO    ] No camera update needed
[2026-06-19 07:05:43,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:05:43,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:05:43,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:05:43,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:05:45,135.135 INFO    ] ================================================
[2026-06-19 07:05:45,151.151 INFO    ] Launching Daemon at Fri Jun 19 07:05:45 IST 2026
[2026-06-19 07:05:45,162.162 INFO    ] ================================================
[2026-06-19 07:05:45,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:05:45
[2026-06-19 07:05:46,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:05:46,815.815 INFO    ] Initializing speech engine...
[2026-06-19 07:05:46,829.829 INFO    ] 2026-06-19 07:05:46
[2026-06-19 07:05:47,109.109 INFO    ] 2026-06-19 07:05:47
[2026-06-19 07:05:47,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:05:47,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:05:47,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:05:47,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:05:47,574.574 INFO    ] time= 19/06/2026 07:05:47
[2026-06-19 07:05:47,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:05:47,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:05:47,768.768 INFO    ] No existing commands found in stream
[2026-06-19 07:05:52,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:05:52,804.804 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 07:05:56,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:05:56,436.436 INFO    ] Checking for system updates...
[2026-06-19 07:05:56,473.473 INFO    ] 200
[2026-06-19 07:05:56,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:56,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:05:56,533.533 INFO    ] No update needed
[2026-06-19 07:05:56,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 07:05:56,570.570 INFO    ] 200
[2026-06-19 07:05:56,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:05:56,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:05:56,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:05:56,664.664 INFO    ] No camera update needed
[2026-06-19 07:05:56,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:05:56,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:05:56,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:05:56,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:05:58,722.722 INFO    ] ================================================
[2026-06-19 07:05:58,737.737 INFO    ] Launching Daemon at Fri Jun 19 07:05:58 IST 2026
[2026-06-19 07:05:58,748.748 INFO    ] ================================================
[2026-06-19 07:05:59,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:05:59
[2026-06-19 07:05:59,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:06:00,179.179 INFO    ] Initializing speech engine...
[2026-06-19 07:06:00,188.188 INFO    ] 2026-06-19 07:06:00
[2026-06-19 07:06:00,489.489 INFO    ] 2026-06-19 07:06:00
[2026-06-19 07:06:00,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:06:00,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:06:00,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:06:00,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:06:00,870.870 INFO    ] time= 19/06/2026 07:06:00
[2026-06-19 07:06:00,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:06:00,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:06:00,951.951 INFO    ] No existing commands found in stream
[2026-06-19 07:06:05,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:06:05,985.985 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 07:06:07,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:06:07,362.362 INFO    ] Checking for system updates...
[2026-06-19 07:06:07,399.399 INFO    ] 200
[2026-06-19 07:06:07,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:07,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:06:07,460.460 INFO    ] No update needed
[2026-06-19 07:06:07,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 07:06:07,497.497 INFO    ] 200
[2026-06-19 07:06:07,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:07,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:06:07,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:06:07,692.692 INFO    ] No camera update needed
[2026-06-19 07:06:07,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:06:07,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:06:07,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:06:07,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:06:09,747.747 INFO    ] ================================================
[2026-06-19 07:06:09,762.762 INFO    ] Launching Daemon at Fri Jun 19 07:06:09 IST 2026
[2026-06-19 07:06:09,773.773 INFO    ] ================================================
[2026-06-19 07:06:10,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:06:10
[2026-06-19 07:06:10,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:06:11,186.186 INFO    ] Initializing speech engine...
[2026-06-19 07:06:11,194.194 INFO    ] 2026-06-19 07:06:11
[2026-06-19 07:06:11,488.488 INFO    ] 2026-06-19 07:06:11
[2026-06-19 07:06:11,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:06:11,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:06:11,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:06:11,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:06:11,868.868 INFO    ] time= 19/06/2026 07:06:11
[2026-06-19 07:06:11,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:06:11,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:06:11,994.994 INFO    ] No existing commands found in stream
[2026-06-19 07:06:17,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:06:17,008.008 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 07:06:19,096.096 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:06:19,099.099 INFO    ] Checking for system updates...
[2026-06-19 07:06:19,135.135 INFO    ] 200
[2026-06-19 07:06:19,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:19,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:06:19,194.194 INFO    ] No update needed
[2026-06-19 07:06:19,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 07:06:19,230.230 INFO    ] 200
[2026-06-19 07:06:19,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:19,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:06:19,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:06:19,319.319 INFO    ] No camera update needed
[2026-06-19 07:06:19,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:06:19,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:06:19,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:06:19,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:06:21,373.373 INFO    ] ================================================
[2026-06-19 07:06:21,389.389 INFO    ] Launching Daemon at Fri Jun 19 07:06:21 IST 2026
[2026-06-19 07:06:21,399.399 INFO    ] ================================================
[2026-06-19 07:06:21,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:06:21
[2026-06-19 07:06:22,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:06:22,834.834 INFO    ] Initializing speech engine...
[2026-06-19 07:06:22,843.843 INFO    ] 2026-06-19 07:06:22
[2026-06-19 07:06:23,090.090 INFO    ] 2026-06-19 07:06:23
[2026-06-19 07:06:23,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:06:23,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:06:23,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:06:23,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:06:23,556.556 INFO    ] time= 19/06/2026 07:06:23
[2026-06-19 07:06:23,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:06:23,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:06:23,705.705 INFO    ] No existing commands found in stream
[2026-06-19 07:06:28,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:06:28,719.719 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 07:06:31,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:06:31,712.712 INFO    ] Checking for system updates...
[2026-06-19 07:06:31,748.748 INFO    ] 200
[2026-06-19 07:06:31,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:31,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:06:31,804.804 INFO    ] No update needed
[2026-06-19 07:06:31,807.807 INFO    ] Checking for camera pi updates...
[2026-06-19 07:06:31,840.840 INFO    ] 200
[2026-06-19 07:06:31,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:31,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:06:31,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:06:31,933.933 INFO    ] No camera update needed
[2026-06-19 07:06:31,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:06:31,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:06:31,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:06:31,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:06:34,997.997 INFO    ] ================================================
[2026-06-19 07:06:34,012.012 INFO    ] Launching Daemon at Fri Jun 19 07:06:34 IST 2026
[2026-06-19 07:06:34,023.023 INFO    ] ================================================
[2026-06-19 07:06:34,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:06:34
[2026-06-19 07:06:35,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:06:35,481.481 INFO    ] Initializing speech engine...
[2026-06-19 07:06:35,490.490 INFO    ] 2026-06-19 07:06:35
[2026-06-19 07:06:35,749.749 INFO    ] 2026-06-19 07:06:35
[2026-06-19 07:06:35,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:06:36,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:06:36,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:06:36,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:06:36,207.207 INFO    ] time= 19/06/2026 07:06:36
[2026-06-19 07:06:36,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:06:36,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:06:36,356.356 INFO    ] No existing commands found in stream
[2026-06-19 07:06:41,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:06:41,370.370 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 07:06:43,760.760 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:06:43,763.763 INFO    ] Checking for system updates...
[2026-06-19 07:06:43,799.799 INFO    ] 200
[2026-06-19 07:06:43,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:43,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:06:43,859.859 INFO    ] No update needed
[2026-06-19 07:06:43,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 07:06:43,895.895 INFO    ] 200
[2026-06-19 07:06:43,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:43,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:06:43,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:06:43,990.990 INFO    ] No camera update needed
[2026-06-19 07:06:43,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:06:43,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:06:44,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:06:44,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:06:46,047.047 INFO    ] ================================================
[2026-06-19 07:06:46,062.062 INFO    ] Launching Daemon at Fri Jun 19 07:06:46 IST 2026
[2026-06-19 07:06:46,073.073 INFO    ] ================================================
[2026-06-19 07:06:46,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:06:46
[2026-06-19 07:06:47,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:06:47,721.721 INFO    ] Initializing speech engine...
[2026-06-19 07:06:47,727.727 INFO    ] 2026-06-19 07:06:47
[2026-06-19 07:06:48,026.026 INFO    ] 2026-06-19 07:06:48
[2026-06-19 07:06:48,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:06:48,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:06:48,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:06:48,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:06:48,474.474 INFO    ] time= 19/06/2026 07:06:48
[2026-06-19 07:06:48,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:06:48,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:06:48,642.642 INFO    ] No existing commands found in stream
[2026-06-19 07:06:53,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:06:53,658.658 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 07:06:55,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:06:55,624.624 INFO    ] Checking for system updates...
[2026-06-19 07:06:55,663.663 INFO    ] 200
[2026-06-19 07:06:55,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:55,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:06:55,725.725 INFO    ] No update needed
[2026-06-19 07:06:55,727.727 INFO    ] Checking for camera pi updates...
[2026-06-19 07:06:55,761.761 INFO    ] 200
[2026-06-19 07:06:55,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:06:55,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:06:55,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:06:55,850.850 INFO    ] No camera update needed
[2026-06-19 07:06:55,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:06:55,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:06:55,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:06:55,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:06:57,907.907 INFO    ] ================================================
[2026-06-19 07:06:57,922.922 INFO    ] Launching Daemon at Fri Jun 19 07:06:57 IST 2026
[2026-06-19 07:06:57,933.933 INFO    ] ================================================
[2026-06-19 07:06:58,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:06:58
[2026-06-19 07:06:59,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:06:59,368.368 INFO    ] Initializing speech engine...
[2026-06-19 07:06:59,378.378 INFO    ] 2026-06-19 07:06:59
[2026-06-19 07:06:59,630.630 INFO    ] 2026-06-19 07:06:59
[2026-06-19 07:06:59,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:06:59,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:06:59,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:06:59,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:07:00,008.008 INFO    ] time= 19/06/2026 07:07:00
[2026-06-19 07:07:00,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:07:00,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:07:00,179.179 INFO    ] No existing commands found in stream
[2026-06-19 07:07:05,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:07:05,207.207 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 07:07:06,795.795 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:07:06,798.798 INFO    ] Checking for system updates...
[2026-06-19 07:07:06,834.834 INFO    ] 200
[2026-06-19 07:07:06,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:06,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:07:06,892.892 INFO    ] No update needed
[2026-06-19 07:07:06,895.895 INFO    ] Checking for camera pi updates...
[2026-06-19 07:07:06,931.931 INFO    ] 200
[2026-06-19 07:07:06,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:06,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:07:07,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:07:07,022.022 INFO    ] No camera update needed
[2026-06-19 07:07:07,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:07:07,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:07:07,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:07:07,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:07:09,079.079 INFO    ] ================================================
[2026-06-19 07:07:09,095.095 INFO    ] Launching Daemon at Fri Jun 19 07:07:09 IST 2026
[2026-06-19 07:07:09,105.105 INFO    ] ================================================
[2026-06-19 07:07:09,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:07:09
[2026-06-19 07:07:10,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:07:10,515.515 INFO    ] Initializing speech engine...
[2026-06-19 07:07:10,523.523 INFO    ] 2026-06-19 07:07:10
[2026-06-19 07:07:10,800.800 INFO    ] 2026-06-19 07:07:10
[2026-06-19 07:07:10,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:07:11,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:07:11,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:07:11,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:07:11,294.294 INFO    ] time= 19/06/2026 07:07:11
[2026-06-19 07:07:11,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:07:11,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:07:11,436.436 INFO    ] No existing commands found in stream
[2026-06-19 07:07:16,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:07:16,451.451 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 07:07:20,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:07:20,104.104 INFO    ] Checking for system updates...
[2026-06-19 07:07:20,141.141 INFO    ] 200
[2026-06-19 07:07:20,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:20,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:07:20,198.198 INFO    ] No update needed
[2026-06-19 07:07:20,200.200 INFO    ] Checking for camera pi updates...
[2026-06-19 07:07:20,237.237 INFO    ] 200
[2026-06-19 07:07:20,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:20,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:07:20,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:07:20,327.327 INFO    ] No camera update needed
[2026-06-19 07:07:20,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:07:20,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:07:20,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:07:20,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:07:22,382.382 INFO    ] ================================================
[2026-06-19 07:07:22,397.397 INFO    ] Launching Daemon at Fri Jun 19 07:07:22 IST 2026
[2026-06-19 07:07:22,408.408 INFO    ] ================================================
[2026-06-19 07:07:22,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:07:22
[2026-06-19 07:07:23,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:07:23,855.855 INFO    ] Initializing speech engine...
[2026-06-19 07:07:23,879.879 INFO    ] 2026-06-19 07:07:23
[2026-06-19 07:07:24,151.151 INFO    ] 2026-06-19 07:07:24
[2026-06-19 07:07:24,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:07:24,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:07:24,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:07:24,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:07:24,526.526 INFO    ] time= 19/06/2026 07:07:24
[2026-06-19 07:07:24,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:07:24,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:07:24,649.649 INFO    ] No existing commands found in stream
[2026-06-19 07:07:29,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:07:29,664.664 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 07:07:32,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:07:32,868.868 INFO    ] Checking for system updates...
[2026-06-19 07:07:32,911.911 INFO    ] 200
[2026-06-19 07:07:32,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:32,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:07:32,980.980 INFO    ] No update needed
[2026-06-19 07:07:32,983.983 INFO    ] Checking for camera pi updates...
[2026-06-19 07:07:33,022.022 INFO    ] 200
[2026-06-19 07:07:33,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:33,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:07:33,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:07:33,110.110 INFO    ] No camera update needed
[2026-06-19 07:07:33,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:07:33,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:07:33,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:07:33,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:07:35,172.172 INFO    ] ================================================
[2026-06-19 07:07:35,186.186 INFO    ] Launching Daemon at Fri Jun 19 07:07:35 IST 2026
[2026-06-19 07:07:35,197.197 INFO    ] ================================================
[2026-06-19 07:07:35,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:07:35
[2026-06-19 07:07:36,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:07:36,806.806 INFO    ] Initializing speech engine...
[2026-06-19 07:07:36,811.811 INFO    ] 2026-06-19 07:07:36
[2026-06-19 07:07:37,088.088 INFO    ] 2026-06-19 07:07:37
[2026-06-19 07:07:37,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:07:37,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:07:37,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:07:37,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:07:37,595.595 INFO    ] time= 19/06/2026 07:07:37
[2026-06-19 07:07:37,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:07:37,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:07:37,779.779 INFO    ] No existing commands found in stream
[2026-06-19 07:07:42,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:07:42,806.806 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 07:07:45,575.575 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:07:45,577.577 INFO    ] Checking for system updates...
[2026-06-19 07:07:45,614.614 INFO    ] 200
[2026-06-19 07:07:45,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:45,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:07:45,678.678 INFO    ] No update needed
[2026-06-19 07:07:45,680.680 INFO    ] Checking for camera pi updates...
[2026-06-19 07:07:45,714.714 INFO    ] 200
[2026-06-19 07:07:45,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:45,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:07:45,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:07:45,816.816 INFO    ] No camera update needed
[2026-06-19 07:07:45,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:07:45,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:07:45,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:07:45,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:07:47,875.875 INFO    ] ================================================
[2026-06-19 07:07:47,890.890 INFO    ] Launching Daemon at Fri Jun 19 07:07:47 IST 2026
[2026-06-19 07:07:47,901.901 INFO    ] ================================================
[2026-06-19 07:07:48,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:07:48
[2026-06-19 07:07:49,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:07:49,314.314 INFO    ] Initializing speech engine...
[2026-06-19 07:07:49,323.323 INFO    ] 2026-06-19 07:07:49
[2026-06-19 07:07:49,615.615 INFO    ] 2026-06-19 07:07:49
[2026-06-19 07:07:49,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:07:49,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:07:49,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:07:49,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:07:49,993.993 INFO    ] time= 19/06/2026 07:07:49
[2026-06-19 07:07:50,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:07:50,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:07:50,118.118 INFO    ] No existing commands found in stream
[2026-06-19 07:07:55,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:07:55,133.133 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 07:07:57,020.020 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:07:57,023.023 INFO    ] Checking for system updates...
[2026-06-19 07:07:57,058.058 INFO    ] 200
[2026-06-19 07:07:57,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:57,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:07:57,116.116 INFO    ] No update needed
[2026-06-19 07:07:57,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 07:07:57,152.152 INFO    ] 200
[2026-06-19 07:07:57,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:07:57,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:07:57,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:07:57,247.247 INFO    ] No camera update needed
[2026-06-19 07:07:57,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:07:57,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:07:57,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:07:57,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:07:59,306.306 INFO    ] ================================================
[2026-06-19 07:07:59,321.321 INFO    ] Launching Daemon at Fri Jun 19 07:07:59 IST 2026
[2026-06-19 07:07:59,332.332 INFO    ] ================================================
[2026-06-19 07:07:59,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:07:59
[2026-06-19 07:08:00,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:08:00,945.945 INFO    ] Initializing speech engine...
[2026-06-19 07:08:00,953.953 INFO    ] 2026-06-19 07:08:00
[2026-06-19 07:08:01,228.228 INFO    ] 2026-06-19 07:08:01
[2026-06-19 07:08:01,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:08:01,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:08:01,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:08:01,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:08:01,789.789 INFO    ] time= 19/06/2026 07:08:01
[2026-06-19 07:08:01,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:08:01,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:08:01,893.893 INFO    ] No existing commands found in stream
[2026-06-19 07:08:06,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:08:06,907.907 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 07:08:08,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:08:08,707.707 INFO    ] Checking for system updates...
[2026-06-19 07:08:08,743.743 INFO    ] 200
[2026-06-19 07:08:08,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:08,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:08:08,805.805 INFO    ] No update needed
[2026-06-19 07:08:08,808.808 INFO    ] Checking for camera pi updates...
[2026-06-19 07:08:08,845.845 INFO    ] 200
[2026-06-19 07:08:08,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:08,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:08:08,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:08:08,932.932 INFO    ] No camera update needed
[2026-06-19 07:08:08,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:08:08,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:08:08,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:08:08,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:08:10,989.989 INFO    ] ================================================
[2026-06-19 07:08:11,004.004 INFO    ] Launching Daemon at Fri Jun 19 07:08:10 IST 2026
[2026-06-19 07:08:11,014.014 INFO    ] ================================================
[2026-06-19 07:08:11,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:08:11
[2026-06-19 07:08:12,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:08:12,459.459 INFO    ] Initializing speech engine...
[2026-06-19 07:08:12,468.468 INFO    ] 2026-06-19 07:08:12
[2026-06-19 07:08:12,726.726 INFO    ] 2026-06-19 07:08:12
[2026-06-19 07:08:12,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:08:13,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:08:13,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:08:13,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:08:13,189.189 INFO    ] time= 19/06/2026 07:08:13
[2026-06-19 07:08:13,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:08:13,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:08:13,335.335 INFO    ] No existing commands found in stream
[2026-06-19 07:08:18,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:08:18,350.350 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 07:08:21,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:08:21,817.817 INFO    ] Checking for system updates...
[2026-06-19 07:08:21,857.857 INFO    ] 200
[2026-06-19 07:08:21,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:21,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:08:21,914.914 INFO    ] No update needed
[2026-06-19 07:08:21,917.917 INFO    ] Checking for camera pi updates...
[2026-06-19 07:08:21,951.951 INFO    ] 200
[2026-06-19 07:08:21,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:21,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:08:22,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:08:22,150.150 INFO    ] No camera update needed
[2026-06-19 07:08:22,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:08:22,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:08:22,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:08:22,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:08:24,207.207 INFO    ] ================================================
[2026-06-19 07:08:24,223.223 INFO    ] Launching Daemon at Fri Jun 19 07:08:24 IST 2026
[2026-06-19 07:08:24,233.233 INFO    ] ================================================
[2026-06-19 07:08:24,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:08:24
[2026-06-19 07:08:25,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:08:25,888.888 INFO    ] Initializing speech engine...
[2026-06-19 07:08:25,899.899 INFO    ] 2026-06-19 07:08:25
[2026-06-19 07:08:26,192.192 INFO    ] 2026-06-19 07:08:26
[2026-06-19 07:08:26,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:08:26,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:08:26,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:08:26,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:08:26,652.652 INFO    ] time= 19/06/2026 07:08:26
[2026-06-19 07:08:26,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:08:26,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:08:26,800.800 INFO    ] No existing commands found in stream
[2026-06-19 07:08:31,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:08:31,820.820 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 07:08:32,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:08:32,924.924 INFO    ] Checking for system updates...
[2026-06-19 07:08:32,976.976 INFO    ] 200
[2026-06-19 07:08:32,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:33,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:08:33,049.049 INFO    ] No update needed
[2026-06-19 07:08:33,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 07:08:33,091.091 INFO    ] 200
[2026-06-19 07:08:33,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:33,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:08:33,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:08:33,173.173 INFO    ] No camera update needed
[2026-06-19 07:08:33,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:08:33,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:08:33,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:08:33,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:08:35,233.233 INFO    ] ================================================
[2026-06-19 07:08:35,248.248 INFO    ] Launching Daemon at Fri Jun 19 07:08:35 IST 2026
[2026-06-19 07:08:35,260.260 INFO    ] ================================================
[2026-06-19 07:08:35,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:08:35
[2026-06-19 07:08:36,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:08:36,900.900 INFO    ] Initializing speech engine...
[2026-06-19 07:08:36,911.911 INFO    ] 2026-06-19 07:08:36
[2026-06-19 07:08:37,182.182 INFO    ] 2026-06-19 07:08:37
[2026-06-19 07:08:37,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:08:37,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:08:37,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:08:37,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:08:37,654.654 INFO    ] time= 19/06/2026 07:08:37
[2026-06-19 07:08:37,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:08:37,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:08:37,802.802 INFO    ] No existing commands found in stream
[2026-06-19 07:08:42,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:08:42,820.820 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 07:08:44,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:08:44,082.082 INFO    ] Checking for system updates...
[2026-06-19 07:08:44,119.119 INFO    ] 200
[2026-06-19 07:08:44,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:44,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:08:44,189.189 INFO    ] No update needed
[2026-06-19 07:08:44,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 07:08:44,225.225 INFO    ] 200
[2026-06-19 07:08:44,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:44,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:08:44,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:08:44,318.318 INFO    ] No camera update needed
[2026-06-19 07:08:44,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:08:44,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:08:44,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:08:44,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:08:46,373.373 INFO    ] ================================================
[2026-06-19 07:08:46,393.393 INFO    ] Launching Daemon at Fri Jun 19 07:08:46 IST 2026
[2026-06-19 07:08:46,404.404 INFO    ] ================================================
[2026-06-19 07:08:46,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:08:46
[2026-06-19 07:08:47,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:08:47,848.848 INFO    ] Initializing speech engine...
[2026-06-19 07:08:47,857.857 INFO    ] 2026-06-19 07:08:47
[2026-06-19 07:08:48,114.114 INFO    ] 2026-06-19 07:08:48
[2026-06-19 07:08:48,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:08:48,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:08:48,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:08:48,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:08:48,553.553 INFO    ] time= 19/06/2026 07:08:48
[2026-06-19 07:08:48,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:08:48,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:08:48,718.718 INFO    ] No existing commands found in stream
[2026-06-19 07:08:53,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:08:53,732.732 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 07:08:54,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:08:54,620.620 INFO    ] Checking for system updates...
[2026-06-19 07:08:54,656.656 INFO    ] 200
[2026-06-19 07:08:54,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:54,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:08:54,725.725 INFO    ] No update needed
[2026-06-19 07:08:54,728.728 INFO    ] Checking for camera pi updates...
[2026-06-19 07:08:54,762.762 INFO    ] 200
[2026-06-19 07:08:54,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:08:54,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:08:54,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:08:54,853.853 INFO    ] No camera update needed
[2026-06-19 07:08:54,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:08:54,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:08:54,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:08:54,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:08:56,912.912 INFO    ] ================================================
[2026-06-19 07:08:56,927.927 INFO    ] Launching Daemon at Fri Jun 19 07:08:56 IST 2026
[2026-06-19 07:08:56,938.938 INFO    ] ================================================
[2026-06-19 07:08:57,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:08:57
[2026-06-19 07:08:58,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:08:58,338.338 INFO    ] Initializing speech engine...
[2026-06-19 07:08:58,346.346 INFO    ] 2026-06-19 07:08:58
[2026-06-19 07:08:58,651.651 INFO    ] 2026-06-19 07:08:58
[2026-06-19 07:08:58,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:08:58,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:08:58,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:08:59,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:08:59,010.010 INFO    ] time= 19/06/2026 07:08:59
[2026-06-19 07:08:59,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:08:59,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:08:59,091.091 INFO    ] No existing commands found in stream
[2026-06-19 07:09:04,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:09:04,104.104 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 07:09:07,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:09:07,913.913 INFO    ] Checking for system updates...
[2026-06-19 07:09:07,949.949 INFO    ] 200
[2026-06-19 07:09:07,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:08,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:08,006.006 INFO    ] No update needed
[2026-06-19 07:09:08,009.009 INFO    ] Checking for camera pi updates...
[2026-06-19 07:09:08,043.043 INFO    ] 200
[2026-06-19 07:09:08,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:08,091.091 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:09:08,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:08,139.139 INFO    ] No camera update needed
[2026-06-19 07:09:08,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:09:08,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:09:08,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:09:08,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:09:10,194.194 INFO    ] ================================================
[2026-06-19 07:09:10,209.209 INFO    ] Launching Daemon at Fri Jun 19 07:09:10 IST 2026
[2026-06-19 07:09:10,219.219 INFO    ] ================================================
[2026-06-19 07:09:10,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:09:10
[2026-06-19 07:09:11,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:09:11,669.669 INFO    ] Initializing speech engine...
[2026-06-19 07:09:11,686.686 INFO    ] 2026-06-19 07:09:11
[2026-06-19 07:09:11,967.967 INFO    ] 2026-06-19 07:09:11
[2026-06-19 07:09:12,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:09:12,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:09:12,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:09:12,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:09:12,379.379 INFO    ] time= 19/06/2026 07:09:12
[2026-06-19 07:09:12,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:09:12,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:09:12,464.464 INFO    ] No existing commands found in stream
[2026-06-19 07:09:17,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:09:17,479.479 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 07:09:19,222.222 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:09:19,224.224 INFO    ] Checking for system updates...
[2026-06-19 07:09:19,260.260 INFO    ] 200
[2026-06-19 07:09:19,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:19,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:19,323.323 INFO    ] No update needed
[2026-06-19 07:09:19,326.326 INFO    ] Checking for camera pi updates...
[2026-06-19 07:09:19,363.363 INFO    ] 200
[2026-06-19 07:09:19,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:19,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:09:19,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:19,453.453 INFO    ] No camera update needed
[2026-06-19 07:09:19,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:09:19,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:09:19,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:09:19,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:09:21,510.510 INFO    ] ================================================
[2026-06-19 07:09:21,525.525 INFO    ] Launching Daemon at Fri Jun 19 07:09:21 IST 2026
[2026-06-19 07:09:21,536.536 INFO    ] ================================================
[2026-06-19 07:09:22,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:09:22
[2026-06-19 07:09:22,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:09:22,950.950 INFO    ] Initializing speech engine...
[2026-06-19 07:09:22,958.958 INFO    ] 2026-06-19 07:09:22
[2026-06-19 07:09:23,247.247 INFO    ] 2026-06-19 07:09:23
[2026-06-19 07:09:23,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:09:23,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:09:23,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:09:23,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:09:23,619.619 INFO    ] time= 19/06/2026 07:09:23
[2026-06-19 07:09:23,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:09:23,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:09:23,743.743 INFO    ] No existing commands found in stream
[2026-06-19 07:09:28,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:09:28,756.756 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 07:09:31,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:09:31,219.219 INFO    ] Checking for system updates...
[2026-06-19 07:09:31,255.255 INFO    ] 200
[2026-06-19 07:09:31,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:31,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:31,312.312 INFO    ] No update needed
[2026-06-19 07:09:31,314.314 INFO    ] Checking for camera pi updates...
[2026-06-19 07:09:31,348.348 INFO    ] 200
[2026-06-19 07:09:31,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:31,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:09:31,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:31,441.441 INFO    ] No camera update needed
[2026-06-19 07:09:31,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:09:31,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:09:31,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:09:31,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:09:33,498.498 INFO    ] ================================================
[2026-06-19 07:09:33,514.514 INFO    ] Launching Daemon at Fri Jun 19 07:09:33 IST 2026
[2026-06-19 07:09:33,525.525 INFO    ] ================================================
[2026-06-19 07:09:34,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:09:34
[2026-06-19 07:09:34,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:09:34,930.930 INFO    ] Initializing speech engine...
[2026-06-19 07:09:34,936.936 INFO    ] 2026-06-19 07:09:34
[2026-06-19 07:09:35,229.229 INFO    ] 2026-06-19 07:09:35
[2026-06-19 07:09:35,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:09:35,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:09:35,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:09:35,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:09:35,605.605 INFO    ] time= 19/06/2026 07:09:35
[2026-06-19 07:09:35,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:09:35,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:09:35,729.729 INFO    ] No existing commands found in stream
[2026-06-19 07:09:40,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:09:40,750.750 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 07:09:41,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:09:41,493.493 INFO    ] Checking for system updates...
[2026-06-19 07:09:41,529.529 INFO    ] 200
[2026-06-19 07:09:41,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:41,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:41,588.588 INFO    ] No update needed
[2026-06-19 07:09:41,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 07:09:41,627.627 INFO    ] 200
[2026-06-19 07:09:41,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:41,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:09:41,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:41,719.719 INFO    ] No camera update needed
[2026-06-19 07:09:41,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:09:41,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:09:41,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:09:41,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:09:43,776.776 INFO    ] ================================================
[2026-06-19 07:09:43,792.792 INFO    ] Launching Daemon at Fri Jun 19 07:09:43 IST 2026
[2026-06-19 07:09:43,803.803 INFO    ] ================================================
[2026-06-19 07:09:44,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:09:44
[2026-06-19 07:09:44,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:09:45,214.214 INFO    ] Initializing speech engine...
[2026-06-19 07:09:45,230.230 INFO    ] 2026-06-19 07:09:45
[2026-06-19 07:09:45,511.511 INFO    ] 2026-06-19 07:09:45
[2026-06-19 07:09:45,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:09:45,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:09:45,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:09:45,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:09:45,925.925 INFO    ] time= 19/06/2026 07:09:45
[2026-06-19 07:09:45,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:09:45,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:09:46,126.126 INFO    ] No existing commands found in stream
[2026-06-19 07:09:51,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:09:51,154.154 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 07:09:54,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:09:54,899.899 INFO    ] Checking for system updates...
[2026-06-19 07:09:54,939.939 INFO    ] 200
[2026-06-19 07:09:54,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:54,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:54,998.998 INFO    ] No update needed
[2026-06-19 07:09:55,001.001 INFO    ] Checking for camera pi updates...
[2026-06-19 07:09:55,034.034 INFO    ] 200
[2026-06-19 07:09:55,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:09:55,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:09:55,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:09:55,118.118 INFO    ] No camera update needed
[2026-06-19 07:09:55,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:09:55,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:09:55,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:09:55,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:09:57,176.176 INFO    ] ================================================
[2026-06-19 07:09:57,191.191 INFO    ] Launching Daemon at Fri Jun 19 07:09:57 IST 2026
[2026-06-19 07:09:57,202.202 INFO    ] ================================================
[2026-06-19 07:09:57,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:09:57
[2026-06-19 07:09:58,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:09:58,653.653 INFO    ] Initializing speech engine...
[2026-06-19 07:09:58,674.674 INFO    ] 2026-06-19 07:09:58
[2026-06-19 07:09:58,944.944 INFO    ] 2026-06-19 07:09:58
[2026-06-19 07:09:58,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:09:59,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:09:59,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:09:59,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:09:59,298.298 INFO    ] time= 19/06/2026 07:09:59
[2026-06-19 07:09:59,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:09:59,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:09:59,378.378 INFO    ] No existing commands found in stream
[2026-06-19 07:10:04,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:10:04,393.393 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 07:10:09,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:10:09,253.253 INFO    ] Checking for system updates...
[2026-06-19 07:10:09,294.294 INFO    ] 200
[2026-06-19 07:10:09,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:09,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:10:09,354.354 INFO    ] No update needed
[2026-06-19 07:10:09,357.357 INFO    ] Checking for camera pi updates...
[2026-06-19 07:10:09,397.397 INFO    ] 200
[2026-06-19 07:10:09,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:09,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:10:09,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:10:09,487.487 INFO    ] No camera update needed
[2026-06-19 07:10:09,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:10:09,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:10:09,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:10:09,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:10:11,546.546 INFO    ] ================================================
[2026-06-19 07:10:11,562.562 INFO    ] Launching Daemon at Fri Jun 19 07:10:11 IST 2026
[2026-06-19 07:10:11,573.573 INFO    ] ================================================
[2026-06-19 07:10:12,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:10:12
[2026-06-19 07:10:12,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:10:13,178.178 INFO    ] Initializing speech engine...
[2026-06-19 07:10:13,187.187 INFO    ] 2026-06-19 07:10:13
[2026-06-19 07:10:13,477.477 INFO    ] 2026-06-19 07:10:13
[2026-06-19 07:10:13,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:10:13,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:10:13,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:10:13,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:10:14,008.008 INFO    ] time= 19/06/2026 07:10:13
[2026-06-19 07:10:14,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:10:14,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:10:14,159.159 INFO    ] No existing commands found in stream
[2026-06-19 07:10:19,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:10:19,184.184 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 07:10:20,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:10:20,436.436 INFO    ] Checking for system updates...
[2026-06-19 07:10:20,477.477 INFO    ] 200
[2026-06-19 07:10:20,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:20,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:10:20,537.537 INFO    ] No update needed
[2026-06-19 07:10:20,540.540 INFO    ] Checking for camera pi updates...
[2026-06-19 07:10:20,574.574 INFO    ] 200
[2026-06-19 07:10:20,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:20,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:10:20,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:10:20,668.668 INFO    ] No camera update needed
[2026-06-19 07:10:20,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:10:20,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:10:20,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:10:20,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:10:22,728.728 INFO    ] ================================================
[2026-06-19 07:10:22,744.744 INFO    ] Launching Daemon at Fri Jun 19 07:10:22 IST 2026
[2026-06-19 07:10:22,754.754 INFO    ] ================================================
[2026-06-19 07:10:23,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:10:23
[2026-06-19 07:10:23,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:10:24,169.169 INFO    ] Initializing speech engine...
[2026-06-19 07:10:24,185.185 INFO    ] 2026-06-19 07:10:24
[2026-06-19 07:10:24,467.467 INFO    ] 2026-06-19 07:10:24
[2026-06-19 07:10:24,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:10:24,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:10:24,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:10:24,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:10:24,876.876 INFO    ] time= 19/06/2026 07:10:24
[2026-06-19 07:10:24,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:10:24,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:10:24,964.964 INFO    ] No existing commands found in stream
[2026-06-19 07:10:29,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:10:29,980.980 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 07:10:33,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:10:33,946.946 INFO    ] Checking for system updates...
[2026-06-19 07:10:33,982.982 INFO    ] 200
[2026-06-19 07:10:33,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:34,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:10:34,041.041 INFO    ] No update needed
[2026-06-19 07:10:34,043.043 INFO    ] Checking for camera pi updates...
[2026-06-19 07:10:34,076.076 INFO    ] 200
[2026-06-19 07:10:34,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:34,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:10:34,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:10:34,169.169 INFO    ] No camera update needed
[2026-06-19 07:10:34,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:10:34,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:10:34,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:10:34,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:10:36,224.224 INFO    ] ================================================
[2026-06-19 07:10:36,241.241 INFO    ] Launching Daemon at Fri Jun 19 07:10:36 IST 2026
[2026-06-19 07:10:36,252.252 INFO    ] ================================================
[2026-06-19 07:10:36,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:10:36
[2026-06-19 07:10:37,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:10:37,670.670 INFO    ] Initializing speech engine...
[2026-06-19 07:10:37,692.692 INFO    ] 2026-06-19 07:10:37
[2026-06-19 07:10:37,944.944 INFO    ] 2026-06-19 07:10:37
[2026-06-19 07:10:37,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:10:38,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:10:38,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:10:38,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:10:38,447.447 INFO    ] time= 19/06/2026 07:10:38
[2026-06-19 07:10:38,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:10:38,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:10:38,627.627 INFO    ] No existing commands found in stream
[2026-06-19 07:10:43,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:10:43,665.665 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 07:10:44,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:10:44,442.442 INFO    ] Checking for system updates...
[2026-06-19 07:10:44,479.479 INFO    ] 200
[2026-06-19 07:10:44,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:44,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:10:44,540.540 INFO    ] No update needed
[2026-06-19 07:10:44,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 07:10:44,577.577 INFO    ] 200
[2026-06-19 07:10:44,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:44,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:10:44,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:10:44,672.672 INFO    ] No camera update needed
[2026-06-19 07:10:44,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:10:44,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:10:44,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:10:44,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:10:46,731.731 INFO    ] ================================================
[2026-06-19 07:10:46,747.747 INFO    ] Launching Daemon at Fri Jun 19 07:10:46 IST 2026
[2026-06-19 07:10:46,758.758 INFO    ] ================================================
[2026-06-19 07:10:47,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:10:47
[2026-06-19 07:10:48,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:10:48,354.354 INFO    ] Initializing speech engine...
[2026-06-19 07:10:48,363.363 INFO    ] 2026-06-19 07:10:48
[2026-06-19 07:10:48,633.633 INFO    ] 2026-06-19 07:10:48
[2026-06-19 07:10:48,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:10:48,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:10:48,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:10:49,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:10:49,097.097 INFO    ] time= 19/06/2026 07:10:49
[2026-06-19 07:10:49,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:10:49,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:10:49,246.246 INFO    ] No existing commands found in stream
[2026-06-19 07:10:54,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:10:54,262.262 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 07:10:57,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:10:57,528.528 INFO    ] Checking for system updates...
[2026-06-19 07:10:57,565.565 INFO    ] 200
[2026-06-19 07:10:57,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:57,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:10:57,624.624 INFO    ] No update needed
[2026-06-19 07:10:57,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 07:10:57,662.662 INFO    ] 200
[2026-06-19 07:10:57,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:10:57,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:10:57,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:10:57,754.754 INFO    ] No camera update needed
[2026-06-19 07:10:57,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:10:57,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:10:57,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:10:57,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:10:59,813.813 INFO    ] ================================================
[2026-06-19 07:10:59,828.828 INFO    ] Launching Daemon at Fri Jun 19 07:10:59 IST 2026
[2026-06-19 07:10:59,839.839 INFO    ] ================================================
[2026-06-19 07:11:00,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:11:00
[2026-06-19 07:11:01,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:11:01,254.254 INFO    ] Initializing speech engine...
[2026-06-19 07:11:01,262.262 INFO    ] 2026-06-19 07:11:01
[2026-06-19 07:11:01,554.554 INFO    ] 2026-06-19 07:11:01
[2026-06-19 07:11:01,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:11:01,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:11:01,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:11:01,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:11:01,946.946 INFO    ] time= 19/06/2026 07:11:01
[2026-06-19 07:11:01,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:11:02,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:11:02,105.105 INFO    ] No existing commands found in stream
[2026-06-19 07:11:07,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:11:07,118.118 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 07:11:09,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:11:09,299.299 INFO    ] Checking for system updates...
[2026-06-19 07:11:09,335.335 INFO    ] 200
[2026-06-19 07:11:09,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:09,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:11:09,392.392 INFO    ] No update needed
[2026-06-19 07:11:09,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 07:11:09,432.432 INFO    ] 200
[2026-06-19 07:11:09,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:09,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:11:09,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:11:09,519.519 INFO    ] No camera update needed
[2026-06-19 07:11:09,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:11:09,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:11:09,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:11:09,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:11:11,574.574 INFO    ] ================================================
[2026-06-19 07:11:11,590.590 INFO    ] Launching Daemon at Fri Jun 19 07:11:11 IST 2026
[2026-06-19 07:11:11,603.603 INFO    ] ================================================
[2026-06-19 07:11:12,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:11:12
[2026-06-19 07:11:12,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:11:13,069.069 INFO    ] Initializing speech engine...
[2026-06-19 07:11:13,079.079 INFO    ] 2026-06-19 07:11:13
[2026-06-19 07:11:13,326.326 INFO    ] 2026-06-19 07:11:13
[2026-06-19 07:11:13,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:11:13,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:11:13,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:11:13,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:11:13,695.695 INFO    ] time= 19/06/2026 07:11:13
[2026-06-19 07:11:13,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:11:13,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:11:13,883.883 INFO    ] No existing commands found in stream
[2026-06-19 07:11:18,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:11:18,906.906 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 07:11:20,528.528 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:11:20,531.531 INFO    ] Checking for system updates...
[2026-06-19 07:11:20,567.567 INFO    ] 200
[2026-06-19 07:11:20,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:20,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:11:20,626.626 INFO    ] No update needed
[2026-06-19 07:11:20,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 07:11:20,661.661 INFO    ] 200
[2026-06-19 07:11:20,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:20,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:11:20,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:11:20,748.748 INFO    ] No camera update needed
[2026-06-19 07:11:20,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:11:20,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:11:20,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:11:20,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:11:22,804.804 INFO    ] ================================================
[2026-06-19 07:11:22,819.819 INFO    ] Launching Daemon at Fri Jun 19 07:11:22 IST 2026
[2026-06-19 07:11:22,831.831 INFO    ] ================================================
[2026-06-19 07:11:23,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:11:23
[2026-06-19 07:11:23,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:11:24,243.243 INFO    ] Initializing speech engine...
[2026-06-19 07:11:24,252.252 INFO    ] 2026-06-19 07:11:24
[2026-06-19 07:11:24,543.543 INFO    ] 2026-06-19 07:11:24
[2026-06-19 07:11:24,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:11:24,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:11:24,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:11:24,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:11:24,920.920 INFO    ] time= 19/06/2026 07:11:24
[2026-06-19 07:11:24,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:11:24,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:11:25,043.043 INFO    ] No existing commands found in stream
[2026-06-19 07:11:30,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:11:30,058.058 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 07:11:31,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:11:31,617.617 INFO    ] Checking for system updates...
[2026-06-19 07:11:31,653.653 INFO    ] 200
[2026-06-19 07:11:31,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:31,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:11:31,730.730 INFO    ] No update needed
[2026-06-19 07:11:31,732.732 INFO    ] Checking for camera pi updates...
[2026-06-19 07:11:31,765.765 INFO    ] 200
[2026-06-19 07:11:31,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:31,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:11:31,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:11:31,840.840 INFO    ] No camera update needed
[2026-06-19 07:11:31,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:11:31,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:11:31,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:11:31,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:11:33,897.897 INFO    ] ================================================
[2026-06-19 07:11:33,912.912 INFO    ] Launching Daemon at Fri Jun 19 07:11:33 IST 2026
[2026-06-19 07:11:33,923.923 INFO    ] ================================================
[2026-06-19 07:11:34,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:11:34
[2026-06-19 07:11:35,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:11:35,329.329 INFO    ] Initializing speech engine...
[2026-06-19 07:11:35,354.354 INFO    ] 2026-06-19 07:11:35
[2026-06-19 07:11:35,615.615 INFO    ] 2026-06-19 07:11:35
[2026-06-19 07:11:35,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:11:35,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:11:35,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:11:36,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:11:36,068.068 INFO    ] time= 19/06/2026 07:11:36
[2026-06-19 07:11:36,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:11:36,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:11:36,261.261 INFO    ] No existing commands found in stream
[2026-06-19 07:11:41,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:11:41,296.296 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 07:11:45,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:11:45,015.015 INFO    ] Checking for system updates...
[2026-06-19 07:11:45,051.051 INFO    ] 200
[2026-06-19 07:11:45,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:45,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:11:45,109.109 INFO    ] No update needed
[2026-06-19 07:11:45,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 07:11:45,145.145 INFO    ] 200
[2026-06-19 07:11:45,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:45,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:11:45,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:11:45,238.238 INFO    ] No camera update needed
[2026-06-19 07:11:45,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:11:45,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:11:45,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:11:45,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:11:47,296.296 INFO    ] ================================================
[2026-06-19 07:11:47,311.311 INFO    ] Launching Daemon at Fri Jun 19 07:11:47 IST 2026
[2026-06-19 07:11:47,322.322 INFO    ] ================================================
[2026-06-19 07:11:47,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:11:47
[2026-06-19 07:11:48,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:11:48,724.724 INFO    ] Initializing speech engine...
[2026-06-19 07:11:48,732.732 INFO    ] 2026-06-19 07:11:48
[2026-06-19 07:11:49,007.007 INFO    ] 2026-06-19 07:11:48
[2026-06-19 07:11:49,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:11:49,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:11:49,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:11:49,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:11:49,485.485 INFO    ] time= 19/06/2026 07:11:49
[2026-06-19 07:11:49,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:11:49,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:11:49,647.647 INFO    ] No existing commands found in stream
[2026-06-19 07:11:54,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:11:54,687.687 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 07:11:58,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:11:58,125.125 INFO    ] Checking for system updates...
[2026-06-19 07:11:58,161.161 INFO    ] 200
[2026-06-19 07:11:58,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:58,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:11:58,218.218 INFO    ] No update needed
[2026-06-19 07:11:58,220.220 INFO    ] Checking for camera pi updates...
[2026-06-19 07:11:58,257.257 INFO    ] 200
[2026-06-19 07:11:58,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:11:58,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:11:58,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:11:58,354.354 INFO    ] No camera update needed
[2026-06-19 07:11:58,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:11:58,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:11:58,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:11:58,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:12:00,409.409 INFO    ] ================================================
[2026-06-19 07:12:00,425.425 INFO    ] Launching Daemon at Fri Jun 19 07:12:00 IST 2026
[2026-06-19 07:12:00,436.436 INFO    ] ================================================
[2026-06-19 07:12:01,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:12:01
[2026-06-19 07:12:01,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:12:02,201.201 INFO    ] Initializing speech engine...
[2026-06-19 07:12:02,205.205 INFO    ] 2026-06-19 07:12:02
[2026-06-19 07:12:02,645.645 INFO    ] 2026-06-19 07:12:02
[2026-06-19 07:12:02,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:12:02,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:12:02,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:12:03,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:12:03,142.142 INFO    ] time= 19/06/2026 07:12:03
[2026-06-19 07:12:03,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:12:03,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:12:03,268.268 INFO    ] No existing commands found in stream
[2026-06-19 07:12:08,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:12:08,282.282 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 07:12:12,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:12:12,456.456 INFO    ] Checking for system updates...
[2026-06-19 07:12:12,493.493 INFO    ] 200
[2026-06-19 07:12:12,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:12:12,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:12:12,553.553 INFO    ] No update needed
[2026-06-19 07:12:12,556.556 INFO    ] Checking for camera pi updates...
[2026-06-19 07:12:12,591.591 INFO    ] 200
[2026-06-19 07:12:12,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:12:12,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:12:12,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:12:12,683.683 INFO    ] No camera update needed
[2026-06-19 07:12:12,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:12:12,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:12:12,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:12:12,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:12:14,744.744 INFO    ] ================================================
[2026-06-19 07:12:14,759.759 INFO    ] Launching Daemon at Fri Jun 19 07:12:14 IST 2026
[2026-06-19 07:12:14,770.770 INFO    ] ================================================
[2026-06-19 07:12:15,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:12:15
[2026-06-19 07:12:15,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:12:16,170.170 INFO    ] Initializing speech engine...
[2026-06-19 07:12:16,182.182 INFO    ] 2026-06-19 07:12:16
[2026-06-19 07:12:16,443.443 INFO    ] 2026-06-19 07:12:16
[2026-06-19 07:12:16,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:12:16,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:12:16,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:12:16,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:12:16,947.947 INFO    ] time= 19/06/2026 07:12:16
[2026-06-19 07:12:17,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:12:17,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:12:17,136.136 INFO    ] No existing commands found in stream
[2026-06-19 07:12:22,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:12:22,166.166 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 07:12:22,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:12:22,841.841 INFO    ] Checking for system updates...
[2026-06-19 07:12:22,877.877 INFO    ] 200
[2026-06-19 07:12:22,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:12:22,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:12:22,934.934 INFO    ] No update needed
[2026-06-19 07:12:22,937.937 INFO    ] Checking for camera pi updates...
[2026-06-19 07:12:22,974.974 INFO    ] 200
[2026-06-19 07:12:22,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:12:23,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:12:23,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:12:23,067.067 INFO    ] No camera update needed
[2026-06-19 07:12:23,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:12:23,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:12:23,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:12:23,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:12:25,127.127 INFO    ] ================================================
[2026-06-19 07:12:25,142.142 INFO    ] Launching Daemon at Fri Jun 19 07:12:25 IST 2026
[2026-06-19 07:12:25,153.153 INFO    ] ================================================
[2026-06-19 07:12:25,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:12:25
[2026-06-19 07:12:26,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:12:26,598.598 INFO    ] Initializing speech engine...
[2026-06-19 07:12:26,619.619 INFO    ] 2026-06-19 07:12:26
[2026-06-19 07:12:26,880.880 INFO    ] 2026-06-19 07:12:26
[2026-06-19 07:12:26,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:12:27,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:12:27,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:12:27,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:12:27,265.265 INFO    ] time= 19/06/2026 07:12:27
[2026-06-19 07:12:27,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:12:27,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:12:27,377.377 INFO    ] No existing commands found in stream
[2026-06-19 07:12:32,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:12:32,390.390 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 07:12:35,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:12:35,877.877 INFO    ] Checking for system updates...
[2026-06-19 07:12:35,913.913 INFO    ] 200
[2026-06-19 07:12:35,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:12:35,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:12:35,972.972 INFO    ] No update needed
[2026-06-19 07:12:35,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 07:12:36,008.008 INFO    ] 200
[2026-06-19 07:12:36,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:12:36,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:12:36,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:12:36,197.197 INFO    ] No camera update needed
[2026-06-19 07:12:36,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:12:36,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:12:36,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:12:36,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:12:38,255.255 INFO    ] ================================================
[2026-06-19 07:12:38,271.271 INFO    ] Launching Daemon at Fri Jun 19 07:12:38 IST 2026
[2026-06-19 07:12:38,282.282 INFO    ] ================================================
[2026-06-19 07:12:38,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:12:38
[2026-06-19 07:12:39,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:12:39,711.711 INFO    ] Initializing speech engine...
[2026-06-19 07:12:39,719.719 INFO    ] 2026-06-19 07:12:39
[2026-06-19 07:12:39,970.970 INFO    ] 2026-06-19 07:12:39
[2026-06-19 07:12:40,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:12:40,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:12:40,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:12:40,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:12:40,451.451 INFO    ] time= 19/06/2026 07:12:40
[2026-06-19 07:12:40,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:12:40,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:12:40,613.613 INFO    ] No existing commands found in stream
[2026-06-19 07:12:45,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:12:45,651.651 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 07:12:48,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:12:48,689.689 INFO    ] Checking for system updates...
[2026-06-19 07:12:48,729.729 INFO    ] 200
[2026-06-19 07:12:48,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:12:48,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:12:48,787.787 INFO    ] No update needed
[2026-06-19 07:12:48,789.789 INFO    ] Checking for camera pi updates...
[2026-06-19 07:12:48,823.823 INFO    ] 200
[2026-06-19 07:12:48,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:12:48,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:12:48,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:12:48,899.899 INFO    ] No camera update needed
[2026-06-19 07:12:48,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:12:48,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:12:48,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:12:48,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:12:50,954.954 INFO    ] ================================================
[2026-06-19 07:12:50,970.970 INFO    ] Launching Daemon at Fri Jun 19 07:12:50 IST 2026
[2026-06-19 07:12:50,981.981 INFO    ] ================================================
[2026-06-19 07:12:51,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:12:51
[2026-06-19 07:12:52,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:12:52,415.415 INFO    ] Initializing speech engine...
[2026-06-19 07:12:52,424.424 INFO    ] 2026-06-19 07:12:52
[2026-06-19 07:12:52,681.681 INFO    ] 2026-06-19 07:12:52
[2026-06-19 07:12:52,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:12:52,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:12:52,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:12:53,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:12:53,139.139 INFO    ] time= 19/06/2026 07:12:53
[2026-06-19 07:12:53,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:12:53,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:12:53,290.290 INFO    ] No existing commands found in stream
[2026-06-19 07:12:58,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:12:58,312.312 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 07:13:00,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:13:00,501.501 INFO    ] Checking for system updates...
[2026-06-19 07:13:00,540.540 INFO    ] 200
[2026-06-19 07:13:00,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:00,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:13:00,602.602 INFO    ] No update needed
[2026-06-19 07:13:00,604.604 INFO    ] Checking for camera pi updates...
[2026-06-19 07:13:00,638.638 INFO    ] 200
[2026-06-19 07:13:00,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:00,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:13:00,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:13:00,727.727 INFO    ] No camera update needed
[2026-06-19 07:13:00,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:13:00,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:13:00,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:13:00,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:13:02,786.786 INFO    ] ================================================
[2026-06-19 07:13:02,804.804 INFO    ] Launching Daemon at Fri Jun 19 07:13:02 IST 2026
[2026-06-19 07:13:02,816.816 INFO    ] ================================================
[2026-06-19 07:13:03,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:13:03
[2026-06-19 07:13:04,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:13:04,313.313 INFO    ] Initializing speech engine...
[2026-06-19 07:13:04,328.328 INFO    ] 2026-06-19 07:13:04
[2026-06-19 07:13:04,589.589 INFO    ] 2026-06-19 07:13:04
[2026-06-19 07:13:04,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:13:04,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:13:04,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:13:05,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:13:05,044.044 INFO    ] time= 19/06/2026 07:13:05
[2026-06-19 07:13:05,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:13:05,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:13:05,203.203 INFO    ] No existing commands found in stream
[2026-06-19 07:13:10,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:13:10,217.217 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 07:13:12,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:13:12,046.046 INFO    ] Checking for system updates...
[2026-06-19 07:13:12,083.083 INFO    ] 200
[2026-06-19 07:13:12,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:12,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:13:12,140.140 INFO    ] No update needed
[2026-06-19 07:13:12,142.142 INFO    ] Checking for camera pi updates...
[2026-06-19 07:13:12,178.178 INFO    ] 200
[2026-06-19 07:13:12,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:12,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:13:12,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:13:12,278.278 INFO    ] No camera update needed
[2026-06-19 07:13:12,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:13:12,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:13:12,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:13:12,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:13:14,336.336 INFO    ] ================================================
[2026-06-19 07:13:14,352.352 INFO    ] Launching Daemon at Fri Jun 19 07:13:14 IST 2026
[2026-06-19 07:13:14,362.362 INFO    ] ================================================
[2026-06-19 07:13:15,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:13:15
[2026-06-19 07:13:15,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:13:15,906.906 INFO    ] Initializing speech engine...
[2026-06-19 07:13:15,921.921 INFO    ] 2026-06-19 07:13:15
[2026-06-19 07:13:16,182.182 INFO    ] 2026-06-19 07:13:16
[2026-06-19 07:13:16,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:13:16,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:13:16,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:13:16,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:13:16,682.682 INFO    ] time= 19/06/2026 07:13:16
[2026-06-19 07:13:16,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:13:16,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:13:16,797.797 INFO    ] No existing commands found in stream
[2026-06-19 07:13:21,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:13:21,811.811 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 07:13:22,298.298 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:13:22,301.301 INFO    ] Checking for system updates...
[2026-06-19 07:13:22,337.337 INFO    ] 200
[2026-06-19 07:13:22,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:22,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:13:22,401.401 INFO    ] No update needed
[2026-06-19 07:13:22,403.403 INFO    ] Checking for camera pi updates...
[2026-06-19 07:13:22,437.437 INFO    ] 200
[2026-06-19 07:13:22,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:22,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:13:22,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:13:22,521.521 INFO    ] No camera update needed
[2026-06-19 07:13:22,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:13:22,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:13:22,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:13:22,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:13:24,578.578 INFO    ] ================================================
[2026-06-19 07:13:24,593.593 INFO    ] Launching Daemon at Fri Jun 19 07:13:24 IST 2026
[2026-06-19 07:13:24,604.604 INFO    ] ================================================
[2026-06-19 07:13:25,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:13:25
[2026-06-19 07:13:25,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:13:26,023.023 INFO    ] Initializing speech engine...
[2026-06-19 07:13:26,032.032 INFO    ] 2026-06-19 07:13:26
[2026-06-19 07:13:26,280.280 INFO    ] 2026-06-19 07:13:26
[2026-06-19 07:13:26,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:13:26,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:13:26,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:13:26,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:13:26,748.748 INFO    ] time= 19/06/2026 07:13:26
[2026-06-19 07:13:26,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:13:26,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:13:26,915.915 INFO    ] No existing commands found in stream
[2026-06-19 07:13:31,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:13:31,954.954 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 07:13:34,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:13:34,842.842 INFO    ] Checking for system updates...
[2026-06-19 07:13:34,882.882 INFO    ] 200
[2026-06-19 07:13:34,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:34,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:13:34,940.940 INFO    ] No update needed
[2026-06-19 07:13:34,942.942 INFO    ] Checking for camera pi updates...
[2026-06-19 07:13:34,980.980 INFO    ] 200
[2026-06-19 07:13:34,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:35,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:13:35,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:13:35,071.071 INFO    ] No camera update needed
[2026-06-19 07:13:35,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:13:35,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:13:35,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:13:35,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:13:37,130.130 INFO    ] ================================================
[2026-06-19 07:13:37,145.145 INFO    ] Launching Daemon at Fri Jun 19 07:13:37 IST 2026
[2026-06-19 07:13:37,156.156 INFO    ] ================================================
[2026-06-19 07:13:37,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:13:37
[2026-06-19 07:13:38,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:13:38,565.565 INFO    ] Initializing speech engine...
[2026-06-19 07:13:38,580.580 INFO    ] 2026-06-19 07:13:38
[2026-06-19 07:13:38,849.849 INFO    ] 2026-06-19 07:13:38
[2026-06-19 07:13:38,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:13:39,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:13:39,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:13:39,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:13:39,190.190 INFO    ] time= 19/06/2026 07:13:39
[2026-06-19 07:13:39,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:13:39,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:13:39,302.302 INFO    ] No existing commands found in stream
[2026-06-19 07:13:44,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:13:44,317.317 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 07:13:47,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:13:47,319.319 INFO    ] Checking for system updates...
[2026-06-19 07:13:47,362.362 INFO    ] 200
[2026-06-19 07:13:47,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:47,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:13:47,428.428 INFO    ] No update needed
[2026-06-19 07:13:47,430.430 INFO    ] Checking for camera pi updates...
[2026-06-19 07:13:47,464.464 INFO    ] 200
[2026-06-19 07:13:47,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:13:47,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:13:47,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:13:47,545.545 INFO    ] No camera update needed
[2026-06-19 07:13:47,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:13:47,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:13:47,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:13:47,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:13:49,599.599 INFO    ] ================================================
[2026-06-19 07:13:49,615.615 INFO    ] Launching Daemon at Fri Jun 19 07:13:49 IST 2026
[2026-06-19 07:13:49,626.626 INFO    ] ================================================
[2026-06-19 07:13:50,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:13:50
[2026-06-19 07:13:50,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:13:51,213.213 INFO    ] Initializing speech engine...
[2026-06-19 07:13:51,222.222 INFO    ] 2026-06-19 07:13:51
[2026-06-19 07:13:51,473.473 INFO    ] 2026-06-19 07:13:51
[2026-06-19 07:13:51,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:13:51,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:13:51,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:13:51,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:13:51,943.943 INFO    ] time= 19/06/2026 07:13:51
[2026-06-19 07:13:52,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:13:52,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:13:52,087.087 INFO    ] No existing commands found in stream
[2026-06-19 07:13:57,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:13:57,101.101 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 07:14:01,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:14:01,241.241 INFO    ] Checking for system updates...
[2026-06-19 07:14:01,282.282 INFO    ] 200
[2026-06-19 07:14:01,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:01,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:14:01,340.340 INFO    ] No update needed
[2026-06-19 07:14:01,343.343 INFO    ] Checking for camera pi updates...
[2026-06-19 07:14:01,381.381 INFO    ] 200
[2026-06-19 07:14:01,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:01,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:14:01,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:14:01,465.465 INFO    ] No camera update needed
[2026-06-19 07:14:01,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:14:01,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:14:01,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:14:01,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:14:03,531.531 INFO    ] ================================================
[2026-06-19 07:14:03,548.548 INFO    ] Launching Daemon at Fri Jun 19 07:14:03 IST 2026
[2026-06-19 07:14:03,558.558 INFO    ] ================================================
[2026-06-19 07:14:04,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:14:04
[2026-06-19 07:14:04,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:14:05,033.033 INFO    ] Initializing speech engine...
[2026-06-19 07:14:05,039.039 INFO    ] 2026-06-19 07:14:05
[2026-06-19 07:14:05,289.289 INFO    ] 2026-06-19 07:14:05
[2026-06-19 07:14:05,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:14:05,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:14:05,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:14:05,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:14:05,784.784 INFO    ] time= 19/06/2026 07:14:05
[2026-06-19 07:14:05,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:14:05,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:14:05,966.966 INFO    ] No existing commands found in stream
[2026-06-19 07:14:11,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:14:11,005.005 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 07:14:14,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:14:14,188.188 INFO    ] Checking for system updates...
[2026-06-19 07:14:14,224.224 INFO    ] 200
[2026-06-19 07:14:14,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:14,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:14:14,289.289 INFO    ] No update needed
[2026-06-19 07:14:14,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 07:14:14,325.325 INFO    ] 200
[2026-06-19 07:14:14,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:14,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:14:14,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:14:14,417.417 INFO    ] No camera update needed
[2026-06-19 07:14:14,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:14:14,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:14:14,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:14:14,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:14:16,474.474 INFO    ] ================================================
[2026-06-19 07:14:16,489.489 INFO    ] Launching Daemon at Fri Jun 19 07:14:16 IST 2026
[2026-06-19 07:14:16,500.500 INFO    ] ================================================
[2026-06-19 07:14:17,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:14:17
[2026-06-19 07:14:17,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:14:17,983.983 INFO    ] Initializing speech engine...
[2026-06-19 07:14:17,997.997 INFO    ] 2026-06-19 07:14:17
[2026-06-19 07:14:18,306.306 INFO    ] 2026-06-19 07:14:18
[2026-06-19 07:14:18,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:14:18,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:14:18,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:14:18,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:14:18,816.816 INFO    ] time= 19/06/2026 07:14:18
[2026-06-19 07:14:18,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:14:18,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:14:18,985.985 INFO    ] No existing commands found in stream
[2026-06-19 07:14:24,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:14:24,019.019 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 07:14:24,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:14:24,513.513 INFO    ] Checking for system updates...
[2026-06-19 07:14:24,552.552 INFO    ] 200
[2026-06-19 07:14:24,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:24,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:14:24,611.611 INFO    ] No update needed
[2026-06-19 07:14:24,613.613 INFO    ] Checking for camera pi updates...
[2026-06-19 07:14:24,648.648 INFO    ] 200
[2026-06-19 07:14:24,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:24,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:14:24,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:14:24,740.740 INFO    ] No camera update needed
[2026-06-19 07:14:24,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:14:24,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:14:24,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:14:24,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:14:26,799.799 INFO    ] ================================================
[2026-06-19 07:14:26,814.814 INFO    ] Launching Daemon at Fri Jun 19 07:14:26 IST 2026
[2026-06-19 07:14:26,825.825 INFO    ] ================================================
[2026-06-19 07:14:27,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:14:27
[2026-06-19 07:14:28,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:14:28,354.354 INFO    ] Initializing speech engine...
[2026-06-19 07:14:28,365.365 INFO    ] 2026-06-19 07:14:28
[2026-06-19 07:14:28,643.643 INFO    ] 2026-06-19 07:14:28
[2026-06-19 07:14:28,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:14:28,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:14:28,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:14:29,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:14:29,141.141 INFO    ] time= 19/06/2026 07:14:29
[2026-06-19 07:14:29,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:14:29,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:14:29,337.337 INFO    ] No existing commands found in stream
[2026-06-19 07:14:34,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:14:34,354.354 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 07:14:36,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:14:36,361.361 INFO    ] Checking for system updates...
[2026-06-19 07:14:36,399.399 INFO    ] 200
[2026-06-19 07:14:36,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:36,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:14:36,466.466 INFO    ] No update needed
[2026-06-19 07:14:36,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 07:14:36,505.505 INFO    ] 200
[2026-06-19 07:14:36,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:36,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:14:36,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:14:36,595.595 INFO    ] No camera update needed
[2026-06-19 07:14:36,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:14:36,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:14:36,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:14:36,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:14:38,651.651 INFO    ] ================================================
[2026-06-19 07:14:38,666.666 INFO    ] Launching Daemon at Fri Jun 19 07:14:38 IST 2026
[2026-06-19 07:14:38,676.676 INFO    ] ================================================
[2026-06-19 07:14:39,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:14:39
[2026-06-19 07:14:39,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:14:40,163.163 INFO    ] Initializing speech engine...
[2026-06-19 07:14:40,171.171 INFO    ] 2026-06-19 07:14:40
[2026-06-19 07:14:40,447.447 INFO    ] 2026-06-19 07:14:40
[2026-06-19 07:14:40,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:14:40,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:14:40,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:14:40,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:14:40,923.923 INFO    ] time= 19/06/2026 07:14:40
[2026-06-19 07:14:40,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:14:41,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:14:41,130.130 INFO    ] No existing commands found in stream
[2026-06-19 07:14:46,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:14:46,159.159 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 07:14:48,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:14:48,862.862 INFO    ] Checking for system updates...
[2026-06-19 07:14:48,903.903 INFO    ] 200
[2026-06-19 07:14:48,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:48,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:14:48,970.970 INFO    ] No update needed
[2026-06-19 07:14:48,972.972 INFO    ] Checking for camera pi updates...
[2026-06-19 07:14:49,012.012 INFO    ] 200
[2026-06-19 07:14:49,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:14:49,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:14:49,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:14:49,190.190 INFO    ] No camera update needed
[2026-06-19 07:14:49,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:14:49,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:14:49,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:14:49,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:14:51,248.248 INFO    ] ================================================
[2026-06-19 07:14:51,263.263 INFO    ] Launching Daemon at Fri Jun 19 07:14:51 IST 2026
[2026-06-19 07:14:51,274.274 INFO    ] ================================================
[2026-06-19 07:14:51,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:14:51
[2026-06-19 07:14:52,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:14:52,754.754 INFO    ] Initializing speech engine...
[2026-06-19 07:14:52,762.762 INFO    ] 2026-06-19 07:14:52
[2026-06-19 07:14:53,046.046 INFO    ] 2026-06-19 07:14:53
[2026-06-19 07:14:53,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:14:53,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:14:53,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:14:53,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:14:53,564.564 INFO    ] time= 19/06/2026 07:14:53
[2026-06-19 07:14:53,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:14:53,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:14:53,711.711 INFO    ] No existing commands found in stream
[2026-06-19 07:14:58,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:14:58,743.743 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 07:15:02,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:15:02,643.643 INFO    ] Checking for system updates...
[2026-06-19 07:15:02,778.778 INFO    ] 200
[2026-06-19 07:15:02,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:02,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:15:02,848.848 INFO    ] No update needed
[2026-06-19 07:15:02,851.851 INFO    ] Checking for camera pi updates...
[2026-06-19 07:15:02,890.890 INFO    ] 200
[2026-06-19 07:15:02,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:02,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:15:02,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:15:02,982.982 INFO    ] No camera update needed
[2026-06-19 07:15:02,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:15:02,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:15:03,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:15:03,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:15:05,053.053 INFO    ] ================================================
[2026-06-19 07:15:05,068.068 INFO    ] Launching Daemon at Fri Jun 19 07:15:05 IST 2026
[2026-06-19 07:15:05,079.079 INFO    ] ================================================
[2026-06-19 07:15:05,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:15:05
[2026-06-19 07:15:06,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:15:06,548.548 INFO    ] Initializing speech engine...
[2026-06-19 07:15:06,561.561 INFO    ] 2026-06-19 07:15:06
[2026-06-19 07:15:06,869.869 INFO    ] 2026-06-19 07:15:06
[2026-06-19 07:15:06,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:15:07,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:15:07,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:15:07,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:15:07,393.393 INFO    ] time= 19/06/2026 07:15:07
[2026-06-19 07:15:07,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:15:07,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:15:07,537.537 INFO    ] No existing commands found in stream
[2026-06-19 07:15:12,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:15:12,562.562 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 07:15:16,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:15:16,813.813 INFO    ] Checking for system updates...
[2026-06-19 07:15:16,854.854 INFO    ] 200
[2026-06-19 07:15:16,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:16,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:15:16,914.914 INFO    ] No update needed
[2026-06-19 07:15:16,917.917 INFO    ] Checking for camera pi updates...
[2026-06-19 07:15:16,952.952 INFO    ] 200
[2026-06-19 07:15:16,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:16,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:15:17,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:15:17,042.042 INFO    ] No camera update needed
[2026-06-19 07:15:17,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:15:17,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:15:17,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:15:17,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:15:19,102.102 INFO    ] ================================================
[2026-06-19 07:15:19,117.117 INFO    ] Launching Daemon at Fri Jun 19 07:15:19 IST 2026
[2026-06-19 07:15:19,128.128 INFO    ] ================================================
[2026-06-19 07:15:19,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:15:19
[2026-06-19 07:15:20,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:15:20,619.619 INFO    ] Initializing speech engine...
[2026-06-19 07:15:20,628.628 INFO    ] 2026-06-19 07:15:20
[2026-06-19 07:15:20,889.889 INFO    ] 2026-06-19 07:15:20
[2026-06-19 07:15:20,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:15:21,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:15:21,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:15:21,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:15:21,253.253 INFO    ] time= 19/06/2026 07:15:21
[2026-06-19 07:15:21,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:15:21,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:15:21,438.438 INFO    ] No existing commands found in stream
[2026-06-19 07:15:26,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:15:26,460.460 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 07:15:27,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:15:27,389.389 INFO    ] Checking for system updates...
[2026-06-19 07:15:27,426.426 INFO    ] 200
[2026-06-19 07:15:27,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:27,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:15:27,484.484 INFO    ] No update needed
[2026-06-19 07:15:27,487.487 INFO    ] Checking for camera pi updates...
[2026-06-19 07:15:27,520.520 INFO    ] 200
[2026-06-19 07:15:27,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:27,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:15:27,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:15:27,605.605 INFO    ] No camera update needed
[2026-06-19 07:15:27,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:15:27,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:15:27,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:15:27,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:15:29,661.661 INFO    ] ================================================
[2026-06-19 07:15:29,676.676 INFO    ] Launching Daemon at Fri Jun 19 07:15:29 IST 2026
[2026-06-19 07:15:29,687.687 INFO    ] ================================================
[2026-06-19 07:15:30,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:15:30
[2026-06-19 07:15:30,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:15:31,240.240 INFO    ] Initializing speech engine...
[2026-06-19 07:15:31,249.249 INFO    ] 2026-06-19 07:15:31
[2026-06-19 07:15:31,528.528 INFO    ] 2026-06-19 07:15:31
[2026-06-19 07:15:31,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:15:31,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:15:31,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:15:31,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:15:31,996.996 INFO    ] time= 19/06/2026 07:15:31
[2026-06-19 07:15:32,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:15:32,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:15:32,211.211 INFO    ] No existing commands found in stream
[2026-06-19 07:15:37,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:15:37,247.247 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 07:15:39,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:15:39,381.381 INFO    ] Checking for system updates...
[2026-06-19 07:15:39,419.419 INFO    ] 200
[2026-06-19 07:15:39,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:39,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:15:39,479.479 INFO    ] No update needed
[2026-06-19 07:15:39,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 07:15:39,516.516 INFO    ] 200
[2026-06-19 07:15:39,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:39,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:15:39,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:15:39,602.602 INFO    ] No camera update needed
[2026-06-19 07:15:39,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:15:39,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:15:39,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:15:39,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:15:41,658.658 INFO    ] ================================================
[2026-06-19 07:15:41,673.673 INFO    ] Launching Daemon at Fri Jun 19 07:15:41 IST 2026
[2026-06-19 07:15:41,684.684 INFO    ] ================================================
[2026-06-19 07:15:42,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:15:42
[2026-06-19 07:15:42,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:15:43,113.113 INFO    ] Initializing speech engine...
[2026-06-19 07:15:43,122.122 INFO    ] 2026-06-19 07:15:43
[2026-06-19 07:15:43,421.421 INFO    ] 2026-06-19 07:15:43
[2026-06-19 07:15:43,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:15:43,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:15:43,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:15:43,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:15:43,828.828 INFO    ] time= 19/06/2026 07:15:43
[2026-06-19 07:15:43,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:15:43,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:15:43,938.938 INFO    ] No existing commands found in stream
[2026-06-19 07:15:48,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:15:48,953.953 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 07:15:52,345.345 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:15:52,348.348 INFO    ] Checking for system updates...
[2026-06-19 07:15:52,385.385 INFO    ] 200
[2026-06-19 07:15:52,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:52,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:15:52,447.447 INFO    ] No update needed
[2026-06-19 07:15:52,450.450 INFO    ] Checking for camera pi updates...
[2026-06-19 07:15:52,485.485 INFO    ] 200
[2026-06-19 07:15:52,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:15:52,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:15:52,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:15:52,588.588 INFO    ] No camera update needed
[2026-06-19 07:15:52,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:15:52,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:15:52,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:15:52,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:15:54,646.646 INFO    ] ================================================
[2026-06-19 07:15:54,661.661 INFO    ] Launching Daemon at Fri Jun 19 07:15:54 IST 2026
[2026-06-19 07:15:54,672.672 INFO    ] ================================================
[2026-06-19 07:15:55,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:15:55
[2026-06-19 07:15:55,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:15:56,130.130 INFO    ] Initializing speech engine...
[2026-06-19 07:15:56,139.139 INFO    ] 2026-06-19 07:15:56
[2026-06-19 07:15:56,387.387 INFO    ] 2026-06-19 07:15:56
[2026-06-19 07:15:56,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:15:56,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:15:56,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:15:56,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:15:56,847.847 INFO    ] time= 19/06/2026 07:15:56
[2026-06-19 07:15:56,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:15:56,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:15:57,020.020 INFO    ] No existing commands found in stream
[2026-06-19 07:16:02,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:16:02,038.038 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 07:16:03,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:16:03,829.829 INFO    ] Checking for system updates...
[2026-06-19 07:16:03,865.865 INFO    ] 200
[2026-06-19 07:16:03,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:16:03,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:16:03,923.923 INFO    ] No update needed
[2026-06-19 07:16:03,926.926 INFO    ] Checking for camera pi updates...
[2026-06-19 07:16:03,964.964 INFO    ] 200
[2026-06-19 07:16:03,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:16:04,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:16:04,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:16:04,037.037 INFO    ] No camera update needed
[2026-06-19 07:16:04,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:16:04,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:16:04,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:16:04,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:16:06,098.098 INFO    ] ================================================
[2026-06-19 07:16:06,114.114 INFO    ] Launching Daemon at Fri Jun 19 07:16:06 IST 2026
[2026-06-19 07:16:06,126.126 INFO    ] ================================================
[2026-06-19 07:16:06,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:16:06
[2026-06-19 07:16:07,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:16:07,526.526 INFO    ] Initializing speech engine...
[2026-06-19 07:16:07,550.550 INFO    ] 2026-06-19 07:16:07
[2026-06-19 07:16:07,807.807 INFO    ] 2026-06-19 07:16:07
[2026-06-19 07:16:07,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:16:08,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:16:08,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:16:08,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:16:08,276.276 INFO    ] time= 19/06/2026 07:16:08
[2026-06-19 07:16:08,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:16:08,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:16:08,439.439 INFO    ] No existing commands found in stream
[2026-06-19 07:16:13,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:16:13,454.454 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 07:16:16,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:16:16,258.258 INFO    ] Checking for system updates...
[2026-06-19 07:16:16,313.313 INFO    ] 200
[2026-06-19 07:16:16,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 07:16:16,319.319 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 07:16:16,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 07:16:16,381.381 INFO    ] 200
[2026-06-19 07:16:16,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 07:16:16,386.386 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 07:16:16,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:16:16,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:16:16,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:16:16,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:16:18,444.444 INFO    ] ================================================
[2026-06-19 07:16:18,460.460 INFO    ] Launching Daemon at Fri Jun 19 07:16:18 IST 2026
[2026-06-19 07:16:18,471.471 INFO    ] ================================================
[2026-06-19 07:16:19,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:16:19
[2026-06-19 07:16:19,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:16:19,926.926 INFO    ] Initializing speech engine...
[2026-06-19 07:16:19,935.935 INFO    ] 2026-06-19 07:16:19
[2026-06-19 07:16:20,181.181 INFO    ] 2026-06-19 07:16:20
[2026-06-19 07:16:20,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:16:20,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:16:20,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:16:20,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:16:20,531.531 INFO    ] time= 19/06/2026 07:16:20
[2026-06-19 07:16:20,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:16:20,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:16:20,628.628 INFO    ] No existing commands found in stream
[2026-06-19 07:16:25,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:16:25,666.666 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 07:16:26,852.852 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:16:26,854.854 INFO    ] Checking for system updates...
[2026-06-19 07:16:26,891.891 INFO    ] 200
[2026-06-19 07:16:26,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:16:26,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:16:26,950.950 INFO    ] No update needed
[2026-06-19 07:16:26,952.952 INFO    ] Checking for camera pi updates...
[2026-06-19 07:16:26,986.986 INFO    ] 200
[2026-06-19 07:16:26,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:16:27,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:16:27,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:16:27,075.075 INFO    ] No camera update needed
[2026-06-19 07:16:27,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:16:27,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:16:27,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:16:27,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:16:29,140.140 INFO    ] ================================================
[2026-06-19 07:16:29,156.156 INFO    ] Launching Daemon at Fri Jun 19 07:16:29 IST 2026
[2026-06-19 07:16:29,166.166 INFO    ] ================================================
[2026-06-19 07:16:29,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:16:29
[2026-06-19 07:16:30,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:16:30,596.596 INFO    ] Initializing speech engine...
[2026-06-19 07:16:30,605.605 INFO    ] 2026-06-19 07:16:30
[2026-06-19 07:16:30,849.849 INFO    ] 2026-06-19 07:16:30
[2026-06-19 07:16:30,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:16:31,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:16:31,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:16:31,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:16:31,310.310 INFO    ] time= 19/06/2026 07:16:31
[2026-06-19 07:16:31,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:16:31,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:16:31,489.489 INFO    ] No existing commands found in stream
[2026-06-19 07:16:36,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:16:36,504.504 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 07:16:40,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:16:40,833.833 INFO    ] Checking for system updates...
[2026-06-19 07:16:40,870.870 INFO    ] 200
[2026-06-19 07:16:40,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:16:40,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:16:40,927.927 INFO    ] No update needed
[2026-06-19 07:16:40,929.929 INFO    ] Checking for camera pi updates...
[2026-06-19 07:16:40,968.968 INFO    ] 200
[2026-06-19 07:16:40,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:16:41,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:16:41,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:16:41,058.058 INFO    ] No camera update needed
[2026-06-19 07:16:41,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:16:41,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:16:41,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:16:41,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:16:43,117.117 INFO    ] ================================================
[2026-06-19 07:16:43,133.133 INFO    ] Launching Daemon at Fri Jun 19 07:16:43 IST 2026
[2026-06-19 07:16:43,144.144 INFO    ] ================================================
[2026-06-19 07:16:43,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:16:43
[2026-06-19 07:16:44,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:16:44,808.808 INFO    ] Initializing speech engine...
[2026-06-19 07:16:44,819.819 INFO    ] 2026-06-19 07:16:44
[2026-06-19 07:16:45,104.104 INFO    ] 2026-06-19 07:16:45
[2026-06-19 07:16:45,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:16:45,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:16:45,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:16:45,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:16:45,638.638 INFO    ] time= 19/06/2026 07:16:45
[2026-06-19 07:16:45,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:16:45,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:16:45,789.789 INFO    ] No existing commands found in stream
[2026-06-19 07:16:50,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:16:50,809.809 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 07:16:54,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:16:54,188.188 INFO    ] Checking for system updates...
[2026-06-19 07:16:54,224.224 INFO    ] 200
[2026-06-19 07:16:54,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:16:54,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:16:54,282.282 INFO    ] No update needed
[2026-06-19 07:16:54,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 07:16:54,318.318 INFO    ] 200
[2026-06-19 07:16:54,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:16:54,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:16:54,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:16:54,512.512 INFO    ] No camera update needed
[2026-06-19 07:16:54,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:16:54,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:16:54,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:16:54,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:16:56,567.567 INFO    ] ================================================
[2026-06-19 07:16:56,582.582 INFO    ] Launching Daemon at Fri Jun 19 07:16:56 IST 2026
[2026-06-19 07:16:56,593.593 INFO    ] ================================================
[2026-06-19 07:16:57,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:16:57
[2026-06-19 07:16:57,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:16:58,013.013 INFO    ] Initializing speech engine...
[2026-06-19 07:16:58,032.032 INFO    ] 2026-06-19 07:16:58
[2026-06-19 07:16:58,291.291 INFO    ] 2026-06-19 07:16:58
[2026-06-19 07:16:58,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:16:58,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:16:58,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:16:58,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:16:58,707.707 INFO    ] time= 19/06/2026 07:16:58
[2026-06-19 07:16:58,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:16:58,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:16:58,800.800 INFO    ] No existing commands found in stream
[2026-06-19 07:17:03,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:17:03,838.838 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 07:17:06,263.263 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:17:06,266.266 INFO    ] Checking for system updates...
[2026-06-19 07:17:06,303.303 INFO    ] 200
[2026-06-19 07:17:06,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:06,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:17:06,369.369 INFO    ] No update needed
[2026-06-19 07:17:06,372.372 INFO    ] Checking for camera pi updates...
[2026-06-19 07:17:06,411.411 INFO    ] 200
[2026-06-19 07:17:06,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:06,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:17:06,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:17:06,510.510 INFO    ] No camera update needed
[2026-06-19 07:17:06,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:17:06,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:17:06,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:17:06,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:17:08,571.571 INFO    ] ================================================
[2026-06-19 07:17:08,588.588 INFO    ] Launching Daemon at Fri Jun 19 07:17:08 IST 2026
[2026-06-19 07:17:08,599.599 INFO    ] ================================================
[2026-06-19 07:17:09,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:17:09
[2026-06-19 07:17:09,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:17:10,263.263 INFO    ] Initializing speech engine...
[2026-06-19 07:17:10,271.271 INFO    ] 2026-06-19 07:17:10
[2026-06-19 07:17:10,580.580 INFO    ] 2026-06-19 07:17:10
[2026-06-19 07:17:10,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:17:10,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:17:10,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:17:11,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:17:11,089.089 INFO    ] time= 19/06/2026 07:17:11
[2026-06-19 07:17:11,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:17:11,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:17:11,242.242 INFO    ] No existing commands found in stream
[2026-06-19 07:17:16,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:17:16,262.262 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 07:17:19,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:17:19,670.670 INFO    ] Checking for system updates...
[2026-06-19 07:17:19,707.707 INFO    ] 200
[2026-06-19 07:17:19,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:19,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:17:19,775.775 INFO    ] No update needed
[2026-06-19 07:17:19,778.778 INFO    ] Checking for camera pi updates...
[2026-06-19 07:17:19,814.814 INFO    ] 200
[2026-06-19 07:17:19,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:19,859.859 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:17:19,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:17:19,906.906 INFO    ] No camera update needed
[2026-06-19 07:17:19,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:17:19,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:17:19,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:17:19,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:17:21,961.961 INFO    ] ================================================
[2026-06-19 07:17:21,977.977 INFO    ] Launching Daemon at Fri Jun 19 07:17:21 IST 2026
[2026-06-19 07:17:21,988.988 INFO    ] ================================================
[2026-06-19 07:17:22,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:17:22
[2026-06-19 07:17:23,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:17:23,638.638 INFO    ] Initializing speech engine...
[2026-06-19 07:17:23,652.652 INFO    ] 2026-06-19 07:17:23
[2026-06-19 07:17:23,921.921 INFO    ] 2026-06-19 07:17:23
[2026-06-19 07:17:23,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:17:24,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:17:24,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:17:24,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:17:24,411.411 INFO    ] time= 19/06/2026 07:17:24
[2026-06-19 07:17:24,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:17:24,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:17:24,528.528 INFO    ] No existing commands found in stream
[2026-06-19 07:17:29,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:17:29,541.541 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 07:17:30,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:17:30,317.317 INFO    ] Checking for system updates...
[2026-06-19 07:17:30,361.361 INFO    ] 200
[2026-06-19 07:17:30,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:30,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:17:30,426.426 INFO    ] No update needed
[2026-06-19 07:17:30,429.429 INFO    ] Checking for camera pi updates...
[2026-06-19 07:17:30,471.471 INFO    ] 200
[2026-06-19 07:17:30,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:30,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:17:30,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:17:30,581.581 INFO    ] No camera update needed
[2026-06-19 07:17:30,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:17:30,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:17:30,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:17:30,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:17:32,643.643 INFO    ] ================================================
[2026-06-19 07:17:32,659.659 INFO    ] Launching Daemon at Fri Jun 19 07:17:32 IST 2026
[2026-06-19 07:17:32,670.670 INFO    ] ================================================
[2026-06-19 07:17:33,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:17:33
[2026-06-19 07:17:33,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:17:34,200.200 INFO    ] Initializing speech engine...
[2026-06-19 07:17:34,214.214 INFO    ] 2026-06-19 07:17:34
[2026-06-19 07:17:34,508.508 INFO    ] 2026-06-19 07:17:34
[2026-06-19 07:17:34,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:17:34,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:17:34,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:17:34,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:17:34,970.970 INFO    ] time= 19/06/2026 07:17:34
[2026-06-19 07:17:34,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:17:35,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:17:35,124.124 INFO    ] No existing commands found in stream
[2026-06-19 07:17:40,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:17:40,139.139 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 07:17:40,642.642 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:17:40,645.645 INFO    ] Checking for system updates...
[2026-06-19 07:17:40,683.683 INFO    ] 200
[2026-06-19 07:17:40,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:40,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:17:40,744.744 INFO    ] No update needed
[2026-06-19 07:17:40,747.747 INFO    ] Checking for camera pi updates...
[2026-06-19 07:17:40,786.786 INFO    ] 200
[2026-06-19 07:17:40,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:40,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:17:40,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:17:40,892.892 INFO    ] No camera update needed
[2026-06-19 07:17:40,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:17:40,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:17:40,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:17:40,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:17:42,951.951 INFO    ] ================================================
[2026-06-19 07:17:42,967.967 INFO    ] Launching Daemon at Fri Jun 19 07:17:42 IST 2026
[2026-06-19 07:17:42,979.979 INFO    ] ================================================
[2026-06-19 07:17:43,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:17:43
[2026-06-19 07:17:44,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:17:44,520.520 INFO    ] Initializing speech engine...
[2026-06-19 07:17:44,528.528 INFO    ] 2026-06-19 07:17:44
[2026-06-19 07:17:44,800.800 INFO    ] 2026-06-19 07:17:44
[2026-06-19 07:17:44,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:17:45,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:17:45,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:17:45,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:17:45,295.295 INFO    ] time= 19/06/2026 07:17:45
[2026-06-19 07:17:45,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:17:45,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:17:45,482.482 INFO    ] No existing commands found in stream
[2026-06-19 07:17:50,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:17:50,511.511 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 07:17:51,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:17:51,366.366 INFO    ] Checking for system updates...
[2026-06-19 07:17:51,403.403 INFO    ] 200
[2026-06-19 07:17:51,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:51,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:17:51,463.463 INFO    ] No update needed
[2026-06-19 07:17:51,466.466 INFO    ] Checking for camera pi updates...
[2026-06-19 07:17:51,500.500 INFO    ] 200
[2026-06-19 07:17:51,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:17:51,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:17:51,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:17:51,585.585 INFO    ] No camera update needed
[2026-06-19 07:17:51,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:17:51,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:17:51,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:17:51,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:17:53,640.640 INFO    ] ================================================
[2026-06-19 07:17:53,655.655 INFO    ] Launching Daemon at Fri Jun 19 07:17:53 IST 2026
[2026-06-19 07:17:53,666.666 INFO    ] ================================================
[2026-06-19 07:17:54,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:17:54
[2026-06-19 07:17:54,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:17:55,112.112 INFO    ] Initializing speech engine...
[2026-06-19 07:17:55,127.127 INFO    ] 2026-06-19 07:17:55
[2026-06-19 07:17:55,398.398 INFO    ] 2026-06-19 07:17:55
[2026-06-19 07:17:55,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:17:55,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:17:55,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:17:55,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:17:55,773.773 INFO    ] time= 19/06/2026 07:17:55
[2026-06-19 07:17:55,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:17:55,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:17:55,896.896 INFO    ] No existing commands found in stream
[2026-06-19 07:18:00,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:18:00,912.912 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 07:18:02,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:18:02,869.869 INFO    ] Checking for system updates...
[2026-06-19 07:18:02,905.905 INFO    ] 200
[2026-06-19 07:18:02,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:02,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:18:02,963.963 INFO    ] No update needed
[2026-06-19 07:18:02,966.966 INFO    ] Checking for camera pi updates...
[2026-06-19 07:18:03,000.000 INFO    ] 200
[2026-06-19 07:18:03,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:03,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:18:03,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:18:03,088.088 INFO    ] No camera update needed
[2026-06-19 07:18:03,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:18:03,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:18:03,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:18:03,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:18:05,143.143 INFO    ] ================================================
[2026-06-19 07:18:05,159.159 INFO    ] Launching Daemon at Fri Jun 19 07:18:05 IST 2026
[2026-06-19 07:18:05,171.171 INFO    ] ================================================
[2026-06-19 07:18:05,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:18:05
[2026-06-19 07:18:06,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:18:06,620.620 INFO    ] Initializing speech engine...
[2026-06-19 07:18:06,629.629 INFO    ] 2026-06-19 07:18:06
[2026-06-19 07:18:06,875.875 INFO    ] 2026-06-19 07:18:06
[2026-06-19 07:18:06,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:18:07,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:18:07,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:18:07,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:18:07,350.350 INFO    ] time= 19/06/2026 07:18:07
[2026-06-19 07:18:07,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:18:07,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:18:07,549.549 INFO    ] No existing commands found in stream
[2026-06-19 07:18:12,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:18:12,584.584 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 07:18:16,920.920 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:18:16,922.922 INFO    ] Checking for system updates...
[2026-06-19 07:18:16,959.959 INFO    ] 200
[2026-06-19 07:18:16,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:17,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:18:17,016.016 INFO    ] No update needed
[2026-06-19 07:18:17,018.018 INFO    ] Checking for camera pi updates...
[2026-06-19 07:18:17,053.053 INFO    ] 200
[2026-06-19 07:18:17,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:17,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:18:17,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:18:17,135.135 INFO    ] No camera update needed
[2026-06-19 07:18:17,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:18:17,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:18:17,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:18:17,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:18:19,192.192 INFO    ] ================================================
[2026-06-19 07:18:19,206.206 INFO    ] Launching Daemon at Fri Jun 19 07:18:19 IST 2026
[2026-06-19 07:18:19,217.217 INFO    ] ================================================
[2026-06-19 07:18:19,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:18:19
[2026-06-19 07:18:20,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:18:20,639.639 INFO    ] Initializing speech engine...
[2026-06-19 07:18:20,648.648 INFO    ] 2026-06-19 07:18:20
[2026-06-19 07:18:20,895.895 INFO    ] 2026-06-19 07:18:20
[2026-06-19 07:18:20,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:18:21,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:18:21,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:18:21,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:18:21,347.347 INFO    ] time= 19/06/2026 07:18:21
[2026-06-19 07:18:21,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:18:21,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:18:21,513.513 INFO    ] No existing commands found in stream
[2026-06-19 07:18:26,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:18:26,528.528 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 07:18:27,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:18:27,919.919 INFO    ] Checking for system updates...
[2026-06-19 07:18:27,956.956 INFO    ] 200
[2026-06-19 07:18:27,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:28,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:18:28,021.021 INFO    ] No update needed
[2026-06-19 07:18:28,023.023 INFO    ] Checking for camera pi updates...
[2026-06-19 07:18:28,057.057 INFO    ] 200
[2026-06-19 07:18:28,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:28,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:18:28,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:18:28,146.146 INFO    ] No camera update needed
[2026-06-19 07:18:28,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:18:28,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:18:28,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:18:28,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:18:30,205.205 INFO    ] ================================================
[2026-06-19 07:18:30,220.220 INFO    ] Launching Daemon at Fri Jun 19 07:18:30 IST 2026
[2026-06-19 07:18:30,231.231 INFO    ] ================================================
[2026-06-19 07:18:30,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:18:30
[2026-06-19 07:18:31,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:18:31,960.960 INFO    ] Initializing speech engine...
[2026-06-19 07:18:31,972.972 INFO    ] 2026-06-19 07:18:31
[2026-06-19 07:18:32,252.252 INFO    ] 2026-06-19 07:18:32
[2026-06-19 07:18:32,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:18:32,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:18:32,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:18:32,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:18:32,730.730 INFO    ] time= 19/06/2026 07:18:32
[2026-06-19 07:18:32,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:18:32,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:18:32,886.886 INFO    ] No existing commands found in stream
[2026-06-19 07:18:37,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:18:37,911.911 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 07:18:38,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:18:38,341.341 INFO    ] Checking for system updates...
[2026-06-19 07:18:38,381.381 INFO    ] 200
[2026-06-19 07:18:38,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:38,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:18:38,439.439 INFO    ] No update needed
[2026-06-19 07:18:38,442.442 INFO    ] Checking for camera pi updates...
[2026-06-19 07:18:38,476.476 INFO    ] 200
[2026-06-19 07:18:38,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:38,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:18:38,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:18:38,567.567 INFO    ] No camera update needed
[2026-06-19 07:18:38,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:18:38,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:18:38,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:18:38,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:18:40,624.624 INFO    ] ================================================
[2026-06-19 07:18:40,639.639 INFO    ] Launching Daemon at Fri Jun 19 07:18:40 IST 2026
[2026-06-19 07:18:40,650.650 INFO    ] ================================================
[2026-06-19 07:18:41,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:18:41
[2026-06-19 07:18:41,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:18:42,114.114 INFO    ] Initializing speech engine...
[2026-06-19 07:18:42,125.125 INFO    ] 2026-06-19 07:18:42
[2026-06-19 07:18:42,370.370 INFO    ] 2026-06-19 07:18:42
[2026-06-19 07:18:42,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:18:42,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:18:42,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:18:42,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:18:42,738.738 INFO    ] time= 19/06/2026 07:18:42
[2026-06-19 07:18:42,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:18:42,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:18:42,912.912 INFO    ] No existing commands found in stream
[2026-06-19 07:18:47,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:18:47,945.945 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 07:18:48,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:18:48,667.667 INFO    ] Checking for system updates...
[2026-06-19 07:18:48,708.708 INFO    ] 200
[2026-06-19 07:18:48,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:48,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:18:48,785.785 INFO    ] No update needed
[2026-06-19 07:18:48,788.788 INFO    ] Checking for camera pi updates...
[2026-06-19 07:18:48,827.827 INFO    ] 200
[2026-06-19 07:18:48,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:18:48,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:18:48,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:18:48,908.908 INFO    ] No camera update needed
[2026-06-19 07:18:48,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:18:48,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:18:48,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:18:48,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:18:50,967.967 INFO    ] ================================================
[2026-06-19 07:18:50,982.982 INFO    ] Launching Daemon at Fri Jun 19 07:18:50 IST 2026
[2026-06-19 07:18:50,993.993 INFO    ] ================================================
[2026-06-19 07:18:51,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:18:51
[2026-06-19 07:18:52,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:18:52,632.632 INFO    ] Initializing speech engine...
[2026-06-19 07:18:52,641.641 INFO    ] 2026-06-19 07:18:52
[2026-06-19 07:18:52,936.936 INFO    ] 2026-06-19 07:18:52
[2026-06-19 07:18:52,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:18:53,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:18:53,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:18:53,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:18:53,466.466 INFO    ] time= 19/06/2026 07:18:53
[2026-06-19 07:18:53,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:18:53,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:18:53,608.608 INFO    ] No existing commands found in stream
[2026-06-19 07:18:58,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:18:58,637.637 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 07:19:00,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:19:00,149.149 INFO    ] Checking for system updates...
[2026-06-19 07:19:00,186.186 INFO    ] 200
[2026-06-19 07:19:00,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:00,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:19:00,246.246 INFO    ] No update needed
[2026-06-19 07:19:00,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 07:19:00,287.287 INFO    ] 200
[2026-06-19 07:19:00,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:00,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:19:00,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:19:00,494.494 INFO    ] No camera update needed
[2026-06-19 07:19:00,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:19:00,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:19:00,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:19:00,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:19:02,551.551 INFO    ] ================================================
[2026-06-19 07:19:02,572.572 INFO    ] Launching Daemon at Fri Jun 19 07:19:02 IST 2026
[2026-06-19 07:19:02,588.588 INFO    ] ================================================
[2026-06-19 07:19:03,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:19:03
[2026-06-19 07:19:03,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:19:04,243.243 INFO    ] Initializing speech engine...
[2026-06-19 07:19:04,249.249 INFO    ] 2026-06-19 07:19:04
[2026-06-19 07:19:04,518.518 INFO    ] 2026-06-19 07:19:04
[2026-06-19 07:19:04,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:19:04,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:19:04,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:19:04,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:19:04,893.893 INFO    ] time= 19/06/2026 07:19:04
[2026-06-19 07:19:04,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:19:04,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:19:05,017.017 INFO    ] No existing commands found in stream
[2026-06-19 07:19:10,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:19:10,033.033 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 07:19:12,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:19:12,969.969 INFO    ] Checking for system updates...
[2026-06-19 07:19:13,005.005 INFO    ] 200
[2026-06-19 07:19:13,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:13,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:19:13,063.063 INFO    ] No update needed
[2026-06-19 07:19:13,065.065 INFO    ] Checking for camera pi updates...
[2026-06-19 07:19:13,103.103 INFO    ] 200
[2026-06-19 07:19:13,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:13,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:19:13,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:19:13,195.195 INFO    ] No camera update needed
[2026-06-19 07:19:13,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:19:13,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:19:13,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:19:13,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:19:15,251.251 INFO    ] ================================================
[2026-06-19 07:19:15,266.266 INFO    ] Launching Daemon at Fri Jun 19 07:19:15 IST 2026
[2026-06-19 07:19:15,278.278 INFO    ] ================================================
[2026-06-19 07:19:15,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:19:15
[2026-06-19 07:19:16,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:19:16,929.929 INFO    ] Initializing speech engine...
[2026-06-19 07:19:16,938.938 INFO    ] 2026-06-19 07:19:16
[2026-06-19 07:19:17,243.243 INFO    ] 2026-06-19 07:19:17
[2026-06-19 07:19:17,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:19:17,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:19:17,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:19:17,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:19:17,753.753 INFO    ] time= 19/06/2026 07:19:17
[2026-06-19 07:19:17,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:19:17,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:19:17,889.889 INFO    ] No existing commands found in stream
[2026-06-19 07:19:22,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:19:22,921.921 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 07:19:25,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:19:25,908.908 INFO    ] Checking for system updates...
[2026-06-19 07:19:25,946.946 INFO    ] 200
[2026-06-19 07:19:25,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:26,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:19:26,014.014 INFO    ] No update needed
[2026-06-19 07:19:26,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 07:19:26,052.052 INFO    ] 200
[2026-06-19 07:19:26,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:26,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:19:26,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:19:26,145.145 INFO    ] No camera update needed
[2026-06-19 07:19:26,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:19:26,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:19:26,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:19:26,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:19:28,206.206 INFO    ] ================================================
[2026-06-19 07:19:28,221.221 INFO    ] Launching Daemon at Fri Jun 19 07:19:28 IST 2026
[2026-06-19 07:19:28,233.233 INFO    ] ================================================
[2026-06-19 07:19:28,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:19:28
[2026-06-19 07:19:29,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:19:29,687.687 INFO    ] Initializing speech engine...
[2026-06-19 07:19:29,692.692 INFO    ] 2026-06-19 07:19:29
[2026-06-19 07:19:29,953.953 INFO    ] 2026-06-19 07:19:29
[2026-06-19 07:19:29,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:19:30,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:19:30,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:19:30,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:19:30,435.435 INFO    ] time= 19/06/2026 07:19:30
[2026-06-19 07:19:30,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:19:30,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:19:30,612.612 INFO    ] No existing commands found in stream
[2026-06-19 07:19:35,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:19:35,648.648 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 07:19:38,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:19:38,426.426 INFO    ] Checking for system updates...
[2026-06-19 07:19:38,464.464 INFO    ] 200
[2026-06-19 07:19:38,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:38,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:19:38,533.533 INFO    ] No update needed
[2026-06-19 07:19:38,536.536 INFO    ] Checking for camera pi updates...
[2026-06-19 07:19:38,571.571 INFO    ] 200
[2026-06-19 07:19:38,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:38,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:19:38,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:19:38,666.666 INFO    ] No camera update needed
[2026-06-19 07:19:38,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:19:38,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:19:38,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:19:38,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:19:40,728.728 INFO    ] ================================================
[2026-06-19 07:19:40,743.743 INFO    ] Launching Daemon at Fri Jun 19 07:19:40 IST 2026
[2026-06-19 07:19:40,755.755 INFO    ] ================================================
[2026-06-19 07:19:41,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:19:41
[2026-06-19 07:19:41,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:19:42,194.194 INFO    ] Initializing speech engine...
[2026-06-19 07:19:42,204.204 INFO    ] 2026-06-19 07:19:42
[2026-06-19 07:19:42,464.464 INFO    ] 2026-06-19 07:19:42
[2026-06-19 07:19:42,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:19:42,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:19:42,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:19:42,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:19:42,931.931 INFO    ] time= 19/06/2026 07:19:42
[2026-06-19 07:19:42,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:19:43,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:19:43,078.078 INFO    ] No existing commands found in stream
[2026-06-19 07:19:48,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:19:48,107.107 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 07:19:51,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:19:51,476.476 INFO    ] Checking for system updates...
[2026-06-19 07:19:51,512.512 INFO    ] 200
[2026-06-19 07:19:51,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:51,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:19:51,570.570 INFO    ] No update needed
[2026-06-19 07:19:51,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 07:19:51,605.605 INFO    ] 200
[2026-06-19 07:19:51,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:19:51,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:19:51,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:19:51,705.705 INFO    ] No camera update needed
[2026-06-19 07:19:51,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:19:51,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:19:51,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:19:51,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:19:53,761.761 INFO    ] ================================================
[2026-06-19 07:19:53,777.777 INFO    ] Launching Daemon at Fri Jun 19 07:19:53 IST 2026
[2026-06-19 07:19:53,788.788 INFO    ] ================================================
[2026-06-19 07:19:54,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:19:54
[2026-06-19 07:19:55,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:19:55,321.321 INFO    ] Initializing speech engine...
[2026-06-19 07:19:55,331.331 INFO    ] 2026-06-19 07:19:55
[2026-06-19 07:19:55,638.638 INFO    ] 2026-06-19 07:19:55
[2026-06-19 07:19:55,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:19:55,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:19:55,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:19:56,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:19:56,150.150 INFO    ] time= 19/06/2026 07:19:56
[2026-06-19 07:19:56,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:19:56,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:19:56,305.305 INFO    ] No existing commands found in stream
[2026-06-19 07:20:01,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:20:01,329.329 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 07:20:02,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:20:02,547.547 INFO    ] Checking for system updates...
[2026-06-19 07:20:02,644.644 INFO    ] 200
[2026-06-19 07:20:02,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:02,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:20:02,814.814 INFO    ] No update needed
[2026-06-19 07:20:02,840.840 INFO    ] Checking for camera pi updates...
[2026-06-19 07:20:02,894.894 INFO    ] 200
[2026-06-19 07:20:02,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:02,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:20:03,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:20:03,037.037 INFO    ] No camera update needed
[2026-06-19 07:20:03,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:20:03,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:20:03,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:20:03,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:20:05,117.117 INFO    ] ================================================
[2026-06-19 07:20:05,133.133 INFO    ] Launching Daemon at Fri Jun 19 07:20:05 IST 2026
[2026-06-19 07:20:05,144.144 INFO    ] ================================================
[2026-06-19 07:20:05,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:20:05
[2026-06-19 07:20:06,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:20:06,572.572 INFO    ] Initializing speech engine...
[2026-06-19 07:20:06,581.581 INFO    ] 2026-06-19 07:20:06
[2026-06-19 07:20:06,873.873 INFO    ] 2026-06-19 07:20:06
[2026-06-19 07:20:06,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:20:07,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:20:07,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:20:07,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:20:07,257.257 INFO    ] time= 19/06/2026 07:20:07
[2026-06-19 07:20:07,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:20:07,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:20:07,393.393 INFO    ] No existing commands found in stream
[2026-06-19 07:20:12,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:20:12,409.409 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 07:20:13,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:20:13,854.854 INFO    ] Checking for system updates...
[2026-06-19 07:20:13,890.890 INFO    ] 200
[2026-06-19 07:20:13,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:13,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:20:13,954.954 INFO    ] No update needed
[2026-06-19 07:20:13,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 07:20:13,990.990 INFO    ] 200
[2026-06-19 07:20:13,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:14,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:20:14,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:20:14,064.064 INFO    ] No camera update needed
[2026-06-19 07:20:14,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:20:14,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:20:14,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:20:14,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:20:16,119.119 INFO    ] ================================================
[2026-06-19 07:20:16,135.135 INFO    ] Launching Daemon at Fri Jun 19 07:20:16 IST 2026
[2026-06-19 07:20:16,146.146 INFO    ] ================================================
[2026-06-19 07:20:16,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:20:16
[2026-06-19 07:20:17,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:20:17,743.743 INFO    ] Initializing speech engine...
[2026-06-19 07:20:17,762.762 INFO    ] 2026-06-19 07:20:17
[2026-06-19 07:20:18,029.029 INFO    ] 2026-06-19 07:20:18
[2026-06-19 07:20:18,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:20:18,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:20:18,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:20:18,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:20:18,548.548 INFO    ] time= 19/06/2026 07:20:18
[2026-06-19 07:20:18,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:20:18,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:20:18,736.736 INFO    ] No existing commands found in stream
[2026-06-19 07:20:23,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:20:23,765.765 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 07:20:24,814.814 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:20:24,817.817 INFO    ] Checking for system updates...
[2026-06-19 07:20:24,855.855 INFO    ] 200
[2026-06-19 07:20:24,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:24,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:20:24,915.915 INFO    ] No update needed
[2026-06-19 07:20:24,918.918 INFO    ] Checking for camera pi updates...
[2026-06-19 07:20:24,953.953 INFO    ] 200
[2026-06-19 07:20:24,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:24,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:20:25,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:20:25,042.042 INFO    ] No camera update needed
[2026-06-19 07:20:25,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:20:25,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:20:25,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:20:25,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:20:27,098.098 INFO    ] ================================================
[2026-06-19 07:20:27,113.113 INFO    ] Launching Daemon at Fri Jun 19 07:20:27 IST 2026
[2026-06-19 07:20:27,124.124 INFO    ] ================================================
[2026-06-19 07:20:27,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:20:27
[2026-06-19 07:20:28,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:20:28,736.736 INFO    ] Initializing speech engine...
[2026-06-19 07:20:28,750.750 INFO    ] 2026-06-19 07:20:28
[2026-06-19 07:20:29,059.059 INFO    ] 2026-06-19 07:20:29
[2026-06-19 07:20:29,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:20:29,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:20:29,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:20:29,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:20:29,568.568 INFO    ] time= 19/06/2026 07:20:29
[2026-06-19 07:20:29,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:20:29,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:20:29,720.720 INFO    ] No existing commands found in stream
[2026-06-19 07:20:34,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:20:34,739.739 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 07:20:37,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:20:37,737.737 INFO    ] Checking for system updates...
[2026-06-19 07:20:37,775.775 INFO    ] 200
[2026-06-19 07:20:37,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:37,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:20:37,832.832 INFO    ] No update needed
[2026-06-19 07:20:37,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 07:20:37,872.872 INFO    ] 200
[2026-06-19 07:20:37,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:37,920.920 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:20:37,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:20:37,963.963 INFO    ] No camera update needed
[2026-06-19 07:20:37,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:20:37,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:20:37,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:20:37,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:20:40,019.019 INFO    ] ================================================
[2026-06-19 07:20:40,034.034 INFO    ] Launching Daemon at Fri Jun 19 07:20:40 IST 2026
[2026-06-19 07:20:40,044.044 INFO    ] ================================================
[2026-06-19 07:20:40,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:20:40
[2026-06-19 07:20:41,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:20:41,661.661 INFO    ] Initializing speech engine...
[2026-06-19 07:20:41,673.673 INFO    ] 2026-06-19 07:20:41
[2026-06-19 07:20:41,985.985 INFO    ] 2026-06-19 07:20:41
[2026-06-19 07:20:42,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:20:42,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:20:42,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:20:42,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:20:42,491.491 INFO    ] time= 19/06/2026 07:20:42
[2026-06-19 07:20:42,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:20:42,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:20:42,641.641 INFO    ] No existing commands found in stream
[2026-06-19 07:20:47,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:20:47,660.660 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 07:20:49,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:20:49,724.724 INFO    ] Checking for system updates...
[2026-06-19 07:20:49,761.761 INFO    ] 200
[2026-06-19 07:20:49,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:49,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:20:49,820.820 INFO    ] No update needed
[2026-06-19 07:20:49,822.822 INFO    ] Checking for camera pi updates...
[2026-06-19 07:20:49,857.857 INFO    ] 200
[2026-06-19 07:20:49,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:20:49,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:20:49,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:20:49,933.933 INFO    ] No camera update needed
[2026-06-19 07:20:49,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:20:49,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:20:49,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:20:49,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:20:51,987.987 INFO    ] ================================================
[2026-06-19 07:20:52,003.003 INFO    ] Launching Daemon at Fri Jun 19 07:20:51 IST 2026
[2026-06-19 07:20:52,014.014 INFO    ] ================================================
[2026-06-19 07:20:52,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:20:52
[2026-06-19 07:20:53,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:20:53,514.514 INFO    ] Initializing speech engine...
[2026-06-19 07:20:53,523.523 INFO    ] 2026-06-19 07:20:53
[2026-06-19 07:20:53,770.770 INFO    ] 2026-06-19 07:20:53
[2026-06-19 07:20:53,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:20:54,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:20:54,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:20:54,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:20:54,257.257 INFO    ] time= 19/06/2026 07:20:54
[2026-06-19 07:20:54,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:20:54,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:20:54,403.403 INFO    ] No existing commands found in stream
[2026-06-19 07:20:59,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:20:59,418.418 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 07:21:01,797.797 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:21:01,800.800 INFO    ] Checking for system updates...
[2026-06-19 07:21:01,850.850 INFO    ] 200
[2026-06-19 07:21:01,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:01,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:21:01,924.924 INFO    ] No update needed
[2026-06-19 07:21:01,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 07:21:01,970.970 INFO    ] 200
[2026-06-19 07:21:01,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:02,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:21:02,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:21:02,167.167 INFO    ] No camera update needed
[2026-06-19 07:21:02,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:21:02,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:21:02,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:21:02,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:21:04,237.237 INFO    ] ================================================
[2026-06-19 07:21:04,252.252 INFO    ] Launching Daemon at Fri Jun 19 07:21:04 IST 2026
[2026-06-19 07:21:04,263.263 INFO    ] ================================================
[2026-06-19 07:21:04,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:21:04
[2026-06-19 07:21:05,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:21:05,841.841 INFO    ] Initializing speech engine...
[2026-06-19 07:21:05,846.846 INFO    ] 2026-06-19 07:21:05
[2026-06-19 07:21:06,093.093 INFO    ] 2026-06-19 07:21:06
[2026-06-19 07:21:06,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:21:06,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:21:06,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:21:06,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:21:06,491.491 INFO    ] time= 19/06/2026 07:21:06
[2026-06-19 07:21:06,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:21:06,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:21:06,599.599 INFO    ] No existing commands found in stream
[2026-06-19 07:21:11,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:21:11,614.614 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 07:21:15,321.321 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:21:15,323.323 INFO    ] Checking for system updates...
[2026-06-19 07:21:15,360.360 INFO    ] 200
[2026-06-19 07:21:15,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:15,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:21:15,423.423 INFO    ] No update needed
[2026-06-19 07:21:15,427.427 INFO    ] Checking for camera pi updates...
[2026-06-19 07:21:15,468.468 INFO    ] 200
[2026-06-19 07:21:15,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:15,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:21:15,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:21:15,561.561 INFO    ] No camera update needed
[2026-06-19 07:21:15,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:21:15,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:21:15,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:21:15,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:21:17,619.619 INFO    ] ================================================
[2026-06-19 07:21:17,635.635 INFO    ] Launching Daemon at Fri Jun 19 07:21:17 IST 2026
[2026-06-19 07:21:17,646.646 INFO    ] ================================================
[2026-06-19 07:21:18,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:21:18
[2026-06-19 07:21:18,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:21:19,104.104 INFO    ] Initializing speech engine...
[2026-06-19 07:21:19,111.111 INFO    ] 2026-06-19 07:21:19
[2026-06-19 07:21:19,371.371 INFO    ] 2026-06-19 07:21:19
[2026-06-19 07:21:19,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:21:19,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:21:19,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:21:19,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:21:19,837.837 INFO    ] time= 19/06/2026 07:21:19
[2026-06-19 07:21:19,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:21:19,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:21:19,980.980 INFO    ] No existing commands found in stream
[2026-06-19 07:21:24,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:21:24,995.995 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 07:21:28,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:21:28,829.829 INFO    ] Checking for system updates...
[2026-06-19 07:21:28,867.867 INFO    ] 200
[2026-06-19 07:21:28,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:28,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:21:28,926.926 INFO    ] No update needed
[2026-06-19 07:21:28,929.929 INFO    ] Checking for camera pi updates...
[2026-06-19 07:21:28,965.965 INFO    ] 200
[2026-06-19 07:21:28,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:29,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:21:29,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:21:29,061.061 INFO    ] No camera update needed
[2026-06-19 07:21:29,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:21:29,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:21:29,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:21:29,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:21:31,122.122 INFO    ] ================================================
[2026-06-19 07:21:31,138.138 INFO    ] Launching Daemon at Fri Jun 19 07:21:31 IST 2026
[2026-06-19 07:21:31,150.150 INFO    ] ================================================
[2026-06-19 07:21:31,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:21:31
[2026-06-19 07:21:32,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:21:32,787.787 INFO    ] Initializing speech engine...
[2026-06-19 07:21:32,792.792 INFO    ] 2026-06-19 07:21:32
[2026-06-19 07:21:33,071.071 INFO    ] 2026-06-19 07:21:33
[2026-06-19 07:21:33,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:21:33,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:21:33,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:21:33,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:21:33,477.477 INFO    ] time= 19/06/2026 07:21:33
[2026-06-19 07:21:33,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:21:33,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:21:33,607.607 INFO    ] No existing commands found in stream
[2026-06-19 07:21:38,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:21:38,640.640 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 07:21:42,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:21:42,325.325 INFO    ] Checking for system updates...
[2026-06-19 07:21:42,367.367 INFO    ] 200
[2026-06-19 07:21:42,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:42,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:21:42,440.440 INFO    ] No update needed
[2026-06-19 07:21:42,443.443 INFO    ] Checking for camera pi updates...
[2026-06-19 07:21:42,482.482 INFO    ] 200
[2026-06-19 07:21:42,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:42,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:21:42,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:21:42,578.578 INFO    ] No camera update needed
[2026-06-19 07:21:42,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:21:42,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:21:42,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:21:42,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:21:44,638.638 INFO    ] ================================================
[2026-06-19 07:21:44,653.653 INFO    ] Launching Daemon at Fri Jun 19 07:21:44 IST 2026
[2026-06-19 07:21:44,664.664 INFO    ] ================================================
[2026-06-19 07:21:45,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:21:45
[2026-06-19 07:21:46,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:21:46,314.314 INFO    ] Initializing speech engine...
[2026-06-19 07:21:46,323.323 INFO    ] 2026-06-19 07:21:46
[2026-06-19 07:21:46,610.610 INFO    ] 2026-06-19 07:21:46
[2026-06-19 07:21:46,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:21:46,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:21:46,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:21:47,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:21:47,145.145 INFO    ] time= 19/06/2026 07:21:47
[2026-06-19 07:21:47,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:21:47,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:21:47,287.287 INFO    ] No existing commands found in stream
[2026-06-19 07:21:52,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:21:52,313.313 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 07:21:54,027.027 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:21:54,030.030 INFO    ] Checking for system updates...
[2026-06-19 07:21:54,072.072 INFO    ] 200
[2026-06-19 07:21:54,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:54,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:21:54,132.132 INFO    ] No update needed
[2026-06-19 07:21:54,135.135 INFO    ] Checking for camera pi updates...
[2026-06-19 07:21:54,170.170 INFO    ] 200
[2026-06-19 07:21:54,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:21:54,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:21:54,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:21:54,250.250 INFO    ] No camera update needed
[2026-06-19 07:21:54,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:21:54,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:21:54,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:21:54,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:21:56,305.305 INFO    ] ================================================
[2026-06-19 07:21:56,320.320 INFO    ] Launching Daemon at Fri Jun 19 07:21:56 IST 2026
[2026-06-19 07:21:56,331.331 INFO    ] ================================================
[2026-06-19 07:21:56,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:21:56
[2026-06-19 07:21:57,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:21:57,769.769 INFO    ] Initializing speech engine...
[2026-06-19 07:21:57,776.776 INFO    ] 2026-06-19 07:21:57
[2026-06-19 07:21:58,051.051 INFO    ] 2026-06-19 07:21:58
[2026-06-19 07:21:58,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:21:58,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:21:58,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:21:58,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:21:58,429.429 INFO    ] time= 19/06/2026 07:21:58
[2026-06-19 07:21:58,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:21:58,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:21:58,496.496 INFO    ] No existing commands found in stream
[2026-06-19 07:22:03,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:22:03,530.530 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 07:22:05,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:22:05,146.146 INFO    ] Checking for system updates...
[2026-06-19 07:22:05,184.184 INFO    ] 200
[2026-06-19 07:22:05,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:05,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:22:05,241.241 INFO    ] No update needed
[2026-06-19 07:22:05,243.243 INFO    ] Checking for camera pi updates...
[2026-06-19 07:22:05,277.277 INFO    ] 200
[2026-06-19 07:22:05,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:05,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:22:05,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:22:05,371.371 INFO    ] No camera update needed
[2026-06-19 07:22:05,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:22:05,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:22:05,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:22:05,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:22:07,425.425 INFO    ] ================================================
[2026-06-19 07:22:07,440.440 INFO    ] Launching Daemon at Fri Jun 19 07:22:07 IST 2026
[2026-06-19 07:22:07,452.452 INFO    ] ================================================
[2026-06-19 07:22:08,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:22:08
[2026-06-19 07:22:08,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:22:09,110.110 INFO    ] Initializing speech engine...
[2026-06-19 07:22:09,117.117 INFO    ] 2026-06-19 07:22:09
[2026-06-19 07:22:09,411.411 INFO    ] 2026-06-19 07:22:09
[2026-06-19 07:22:09,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:22:09,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:22:09,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:22:09,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:22:09,890.890 INFO    ] time= 19/06/2026 07:22:09
[2026-06-19 07:22:09,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:22:09,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:22:10,029.029 INFO    ] No existing commands found in stream
[2026-06-19 07:22:15,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:22:15,046.046 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 07:22:17,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:22:17,447.447 INFO    ] Checking for system updates...
[2026-06-19 07:22:17,483.483 INFO    ] 200
[2026-06-19 07:22:17,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:17,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:22:17,542.542 INFO    ] No update needed
[2026-06-19 07:22:17,544.544 INFO    ] Checking for camera pi updates...
[2026-06-19 07:22:17,578.578 INFO    ] 200
[2026-06-19 07:22:17,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:17,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:22:17,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:22:17,668.668 INFO    ] No camera update needed
[2026-06-19 07:22:17,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:22:17,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:22:17,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:22:17,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:22:19,723.723 INFO    ] ================================================
[2026-06-19 07:22:19,738.738 INFO    ] Launching Daemon at Fri Jun 19 07:22:19 IST 2026
[2026-06-19 07:22:19,748.748 INFO    ] ================================================
[2026-06-19 07:22:20,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:22:20
[2026-06-19 07:22:20,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:22:21,225.225 INFO    ] Initializing speech engine...
[2026-06-19 07:22:21,232.232 INFO    ] 2026-06-19 07:22:21
[2026-06-19 07:22:21,500.500 INFO    ] 2026-06-19 07:22:21
[2026-06-19 07:22:21,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:22:21,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:22:21,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:22:21,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:22:21,896.896 INFO    ] time= 19/06/2026 07:22:21
[2026-06-19 07:22:21,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:22:21,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:22:21,995.995 INFO    ] No existing commands found in stream
[2026-06-19 07:22:27,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:22:27,029.029 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 07:22:31,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:22:31,293.293 INFO    ] Checking for system updates...
[2026-06-19 07:22:31,328.328 INFO    ] 200
[2026-06-19 07:22:31,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:31,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:22:31,403.403 INFO    ] No update needed
[2026-06-19 07:22:31,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 07:22:31,458.458 INFO    ] 200
[2026-06-19 07:22:31,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:31,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:22:31,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:22:31,552.552 INFO    ] No camera update needed
[2026-06-19 07:22:31,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:22:31,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:22:31,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:22:31,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:22:33,615.615 INFO    ] ================================================
[2026-06-19 07:22:33,635.635 INFO    ] Launching Daemon at Fri Jun 19 07:22:33 IST 2026
[2026-06-19 07:22:33,647.647 INFO    ] ================================================
[2026-06-19 07:22:34,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:22:34
[2026-06-19 07:22:34,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:22:35,168.168 INFO    ] Initializing speech engine...
[2026-06-19 07:22:35,177.177 INFO    ] 2026-06-19 07:22:35
[2026-06-19 07:22:35,476.476 INFO    ] 2026-06-19 07:22:35
[2026-06-19 07:22:35,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:22:35,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:22:35,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:22:35,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:22:35,834.834 INFO    ] time= 19/06/2026 07:22:35
[2026-06-19 07:22:35,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:22:35,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:22:35,920.920 INFO    ] No existing commands found in stream
[2026-06-19 07:22:40,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:22:40,935.935 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 07:22:42,592.592 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:22:42,595.595 INFO    ] Checking for system updates...
[2026-06-19 07:22:42,631.631 INFO    ] 200
[2026-06-19 07:22:42,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:42,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:22:42,690.690 INFO    ] No update needed
[2026-06-19 07:22:42,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 07:22:42,726.726 INFO    ] 200
[2026-06-19 07:22:42,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:42,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:22:42,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:22:42,816.816 INFO    ] No camera update needed
[2026-06-19 07:22:42,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:22:42,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:22:42,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:22:42,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:22:44,873.873 INFO    ] ================================================
[2026-06-19 07:22:44,888.888 INFO    ] Launching Daemon at Fri Jun 19 07:22:44 IST 2026
[2026-06-19 07:22:44,898.898 INFO    ] ================================================
[2026-06-19 07:22:45,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:22:45
[2026-06-19 07:22:46,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:22:46,460.460 INFO    ] Initializing speech engine...
[2026-06-19 07:22:46,474.474 INFO    ] 2026-06-19 07:22:46
[2026-06-19 07:22:46,788.788 INFO    ] 2026-06-19 07:22:46
[2026-06-19 07:22:46,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:22:47,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:22:47,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:22:47,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:22:47,297.297 INFO    ] time= 19/06/2026 07:22:47
[2026-06-19 07:22:47,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:22:47,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:22:47,433.433 INFO    ] No existing commands found in stream
[2026-06-19 07:22:52,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:22:52,465.465 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 07:22:53,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:22:53,984.984 INFO    ] Checking for system updates...
[2026-06-19 07:22:54,028.028 INFO    ] 200
[2026-06-19 07:22:54,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:54,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:22:54,102.102 INFO    ] No update needed
[2026-06-19 07:22:54,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 07:22:54,140.140 INFO    ] 200
[2026-06-19 07:22:54,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:22:54,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:22:54,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:22:54,231.231 INFO    ] No camera update needed
[2026-06-19 07:22:54,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:22:54,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:22:54,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:22:54,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:22:56,288.288 INFO    ] ================================================
[2026-06-19 07:22:56,303.303 INFO    ] Launching Daemon at Fri Jun 19 07:22:56 IST 2026
[2026-06-19 07:22:56,314.314 INFO    ] ================================================
[2026-06-19 07:22:56,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:22:56
[2026-06-19 07:22:57,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:22:57,738.738 INFO    ] Initializing speech engine...
[2026-06-19 07:22:57,752.752 INFO    ] 2026-06-19 07:22:57
[2026-06-19 07:22:58,010.010 INFO    ] 2026-06-19 07:22:58
[2026-06-19 07:22:58,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:22:58,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:22:58,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:22:58,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:22:58,475.475 INFO    ] time= 19/06/2026 07:22:58
[2026-06-19 07:22:58,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:22:58,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:22:58,646.646 INFO    ] No existing commands found in stream
[2026-06-19 07:23:03,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:23:03,661.661 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 07:23:06,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:23:06,608.608 INFO    ] Checking for system updates...
[2026-06-19 07:23:06,649.649 INFO    ] 200
[2026-06-19 07:23:06,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:06,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:23:06,707.707 INFO    ] No update needed
[2026-06-19 07:23:06,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 07:23:06,744.744 INFO    ] 200
[2026-06-19 07:23:06,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:06,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:23:06,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:23:06,940.940 INFO    ] No camera update needed
[2026-06-19 07:23:06,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:23:06,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:23:06,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:23:06,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:23:09,996.996 INFO    ] ================================================
[2026-06-19 07:23:09,011.011 INFO    ] Launching Daemon at Fri Jun 19 07:23:09 IST 2026
[2026-06-19 07:23:09,022.022 INFO    ] ================================================
[2026-06-19 07:23:09,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:23:09
[2026-06-19 07:23:10,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:23:10,526.526 INFO    ] Initializing speech engine...
[2026-06-19 07:23:10,541.541 INFO    ] 2026-06-19 07:23:10
[2026-06-19 07:23:10,808.808 INFO    ] 2026-06-19 07:23:10
[2026-06-19 07:23:10,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:23:11,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:23:11,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:23:11,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:23:11,271.271 INFO    ] time= 19/06/2026 07:23:11
[2026-06-19 07:23:11,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:23:11,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:23:11,442.442 INFO    ] No existing commands found in stream
[2026-06-19 07:23:16,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:23:16,457.457 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 07:23:20,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:23:20,502.502 INFO    ] Checking for system updates...
[2026-06-19 07:23:20,539.539 INFO    ] 200
[2026-06-19 07:23:20,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:20,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:23:20,598.598 INFO    ] No update needed
[2026-06-19 07:23:20,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 07:23:20,638.638 INFO    ] 200
[2026-06-19 07:23:20,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:20,682.682 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:23:20,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:23:20,725.725 INFO    ] No camera update needed
[2026-06-19 07:23:20,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:23:20,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:23:20,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:23:20,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:23:22,782.782 INFO    ] ================================================
[2026-06-19 07:23:22,798.798 INFO    ] Launching Daemon at Fri Jun 19 07:23:22 IST 2026
[2026-06-19 07:23:22,808.808 INFO    ] ================================================
[2026-06-19 07:23:23,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:23:23
[2026-06-19 07:23:23,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:23:24,266.266 INFO    ] Initializing speech engine...
[2026-06-19 07:23:24,275.275 INFO    ] 2026-06-19 07:23:24
[2026-06-19 07:23:24,523.523 INFO    ] 2026-06-19 07:23:24
[2026-06-19 07:23:24,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:23:24,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:23:24,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:23:24,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:23:24,900.900 INFO    ] time= 19/06/2026 07:23:24
[2026-06-19 07:23:24,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:23:24,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:23:25,077.077 INFO    ] No existing commands found in stream
[2026-06-19 07:23:30,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:23:30,107.107 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 07:23:31,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:23:31,915.915 INFO    ] Checking for system updates...
[2026-06-19 07:23:31,956.956 INFO    ] 200
[2026-06-19 07:23:31,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:32,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:23:32,031.031 INFO    ] No update needed
[2026-06-19 07:23:32,034.034 INFO    ] Checking for camera pi updates...
[2026-06-19 07:23:32,080.080 INFO    ] 200
[2026-06-19 07:23:32,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:32,135.135 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:23:32,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:23:32,175.175 INFO    ] No camera update needed
[2026-06-19 07:23:32,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:23:32,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:23:32,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:23:32,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:23:34,238.238 INFO    ] ================================================
[2026-06-19 07:23:34,253.253 INFO    ] Launching Daemon at Fri Jun 19 07:23:34 IST 2026
[2026-06-19 07:23:34,264.264 INFO    ] ================================================
[2026-06-19 07:23:34,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:23:34
[2026-06-19 07:23:35,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:23:35,679.679 INFO    ] Initializing speech engine...
[2026-06-19 07:23:35,704.704 INFO    ] 2026-06-19 07:23:35
[2026-06-19 07:23:35,961.961 INFO    ] 2026-06-19 07:23:35
[2026-06-19 07:23:35,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:23:36,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:23:36,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:23:36,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:23:36,339.339 INFO    ] time= 19/06/2026 07:23:36
[2026-06-19 07:23:36,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:23:36,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:23:36,514.514 INFO    ] No existing commands found in stream
[2026-06-19 07:23:41,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:23:41,548.548 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 07:23:45,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:23:45,422.422 INFO    ] Checking for system updates...
[2026-06-19 07:23:45,479.479 INFO    ] 200
[2026-06-19 07:23:45,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:45,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:23:45,543.543 INFO    ] No update needed
[2026-06-19 07:23:45,545.545 INFO    ] Checking for camera pi updates...
[2026-06-19 07:23:45,582.582 INFO    ] 200
[2026-06-19 07:23:45,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:45,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:23:45,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:23:45,668.668 INFO    ] No camera update needed
[2026-06-19 07:23:45,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:23:45,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:23:45,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:23:45,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:23:47,724.724 INFO    ] ================================================
[2026-06-19 07:23:47,740.740 INFO    ] Launching Daemon at Fri Jun 19 07:23:47 IST 2026
[2026-06-19 07:23:47,751.751 INFO    ] ================================================
[2026-06-19 07:23:48,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:23:48
[2026-06-19 07:23:48,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:23:49,211.211 INFO    ] Initializing speech engine...
[2026-06-19 07:23:49,218.218 INFO    ] 2026-06-19 07:23:49
[2026-06-19 07:23:49,478.478 INFO    ] 2026-06-19 07:23:49
[2026-06-19 07:23:49,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:23:49,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:23:49,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:23:49,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:23:49,951.951 INFO    ] time= 19/06/2026 07:23:49
[2026-06-19 07:23:50,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:23:50,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:23:50,080.080 INFO    ] No existing commands found in stream
[2026-06-19 07:23:55,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:23:55,094.094 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 07:23:57,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:23:57,514.514 INFO    ] Checking for system updates...
[2026-06-19 07:23:57,551.551 INFO    ] 200
[2026-06-19 07:23:57,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:57,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:23:57,617.617 INFO    ] No update needed
[2026-06-19 07:23:57,619.619 INFO    ] Checking for camera pi updates...
[2026-06-19 07:23:57,653.653 INFO    ] 200
[2026-06-19 07:23:57,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:23:57,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:23:57,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:23:57,752.752 INFO    ] No camera update needed
[2026-06-19 07:23:57,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:23:57,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:23:57,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:23:57,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:23:59,809.809 INFO    ] ================================================
[2026-06-19 07:23:59,824.824 INFO    ] Launching Daemon at Fri Jun 19 07:23:59 IST 2026
[2026-06-19 07:23:59,835.835 INFO    ] ================================================
[2026-06-19 07:24:00,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:24:00
[2026-06-19 07:24:00,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:24:01,239.239 INFO    ] Initializing speech engine...
[2026-06-19 07:24:01,251.251 INFO    ] 2026-06-19 07:24:01
[2026-06-19 07:24:01,520.520 INFO    ] 2026-06-19 07:24:01
[2026-06-19 07:24:01,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:24:01,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:24:01,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:24:01,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:24:01,896.896 INFO    ] time= 19/06/2026 07:24:01
[2026-06-19 07:24:01,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:24:01,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:24:02,049.049 INFO    ] No existing commands found in stream
[2026-06-19 07:24:07,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:24:07,069.069 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 07:24:11,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:24:11,166.166 INFO    ] Checking for system updates...
[2026-06-19 07:24:11,202.202 INFO    ] 200
[2026-06-19 07:24:11,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:11,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:24:11,265.265 INFO    ] No update needed
[2026-06-19 07:24:11,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 07:24:11,303.303 INFO    ] 200
[2026-06-19 07:24:11,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:11,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:24:11,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:24:11,405.405 INFO    ] No camera update needed
[2026-06-19 07:24:11,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:24:11,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:24:11,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:24:11,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:24:13,460.460 INFO    ] ================================================
[2026-06-19 07:24:13,481.481 INFO    ] Launching Daemon at Fri Jun 19 07:24:13 IST 2026
[2026-06-19 07:24:13,491.491 INFO    ] ================================================
[2026-06-19 07:24:14,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:24:14
[2026-06-19 07:24:14,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:24:14,949.949 INFO    ] Initializing speech engine...
[2026-06-19 07:24:14,957.957 INFO    ] 2026-06-19 07:24:14
[2026-06-19 07:24:15,214.214 INFO    ] 2026-06-19 07:24:15
[2026-06-19 07:24:15,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:24:15,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:24:15,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:24:15,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:24:15,681.681 INFO    ] time= 19/06/2026 07:24:15
[2026-06-19 07:24:15,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:24:15,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:24:15,825.825 INFO    ] No existing commands found in stream
[2026-06-19 07:24:20,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:24:20,840.840 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 07:24:22,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:24:22,085.085 INFO    ] Checking for system updates...
[2026-06-19 07:24:22,122.122 INFO    ] 200
[2026-06-19 07:24:22,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:22,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:24:22,184.184 INFO    ] No update needed
[2026-06-19 07:24:22,187.187 INFO    ] Checking for camera pi updates...
[2026-06-19 07:24:22,221.221 INFO    ] 200
[2026-06-19 07:24:22,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:22,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:24:22,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:24:22,324.324 INFO    ] No camera update needed
[2026-06-19 07:24:22,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:24:22,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:24:22,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:24:22,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:24:24,379.379 INFO    ] ================================================
[2026-06-19 07:24:24,394.394 INFO    ] Launching Daemon at Fri Jun 19 07:24:24 IST 2026
[2026-06-19 07:24:24,404.404 INFO    ] ================================================
[2026-06-19 07:24:24,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:24:24
[2026-06-19 07:24:25,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:24:25,865.865 INFO    ] Initializing speech engine...
[2026-06-19 07:24:25,874.874 INFO    ] 2026-06-19 07:24:25
[2026-06-19 07:24:26,122.122 INFO    ] 2026-06-19 07:24:26
[2026-06-19 07:24:26,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:24:26,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:24:26,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:24:26,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:24:26,491.491 INFO    ] time= 19/06/2026 07:24:26
[2026-06-19 07:24:26,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:24:26,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:24:26,681.681 INFO    ] No existing commands found in stream
[2026-06-19 07:24:31,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:24:31,704.704 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 07:24:32,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:24:32,641.641 INFO    ] Checking for system updates...
[2026-06-19 07:24:32,686.686 INFO    ] 200
[2026-06-19 07:24:32,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:32,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:24:32,755.755 INFO    ] No update needed
[2026-06-19 07:24:32,758.758 INFO    ] Checking for camera pi updates...
[2026-06-19 07:24:32,798.798 INFO    ] 200
[2026-06-19 07:24:32,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:32,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:24:32,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:24:32,900.900 INFO    ] No camera update needed
[2026-06-19 07:24:32,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:24:32,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:24:32,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:24:32,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:24:34,959.959 INFO    ] ================================================
[2026-06-19 07:24:34,973.973 INFO    ] Launching Daemon at Fri Jun 19 07:24:34 IST 2026
[2026-06-19 07:24:34,984.984 INFO    ] ================================================
[2026-06-19 07:24:35,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:24:35
[2026-06-19 07:24:36,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:24:36,449.449 INFO    ] Initializing speech engine...
[2026-06-19 07:24:36,459.459 INFO    ] 2026-06-19 07:24:36
[2026-06-19 07:24:36,710.710 INFO    ] 2026-06-19 07:24:36
[2026-06-19 07:24:36,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:24:37,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:24:37,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:24:37,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:24:37,275.275 INFO    ] time= 19/06/2026 07:24:37
[2026-06-19 07:24:37,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:24:37,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:24:37,417.417 INFO    ] No existing commands found in stream
[2026-06-19 07:24:42,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:24:42,445.445 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 07:24:45,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:24:45,468.468 INFO    ] Checking for system updates...
[2026-06-19 07:24:45,508.508 INFO    ] 200
[2026-06-19 07:24:45,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:45,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:24:45,577.577 INFO    ] No update needed
[2026-06-19 07:24:45,580.580 INFO    ] Checking for camera pi updates...
[2026-06-19 07:24:45,618.618 INFO    ] 200
[2026-06-19 07:24:45,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:45,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:24:45,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:24:45,721.721 INFO    ] No camera update needed
[2026-06-19 07:24:45,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:24:45,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:24:45,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:24:45,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:24:47,778.778 INFO    ] ================================================
[2026-06-19 07:24:47,794.794 INFO    ] Launching Daemon at Fri Jun 19 07:24:47 IST 2026
[2026-06-19 07:24:47,804.804 INFO    ] ================================================
[2026-06-19 07:24:48,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:24:48
[2026-06-19 07:24:48,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:24:49,227.227 INFO    ] Initializing speech engine...
[2026-06-19 07:24:49,242.242 INFO    ] 2026-06-19 07:24:49
[2026-06-19 07:24:49,512.512 INFO    ] 2026-06-19 07:24:49
[2026-06-19 07:24:49,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:24:49,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:24:49,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:24:49,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:24:49,923.923 INFO    ] time= 19/06/2026 07:24:49
[2026-06-19 07:24:49,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:24:49,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:24:50,078.078 INFO    ] No existing commands found in stream
[2026-06-19 07:24:55,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:24:55,107.107 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 07:24:56,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:24:56,595.595 INFO    ] Checking for system updates...
[2026-06-19 07:24:56,634.634 INFO    ] 200
[2026-06-19 07:24:56,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:56,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:24:56,691.691 INFO    ] No update needed
[2026-06-19 07:24:56,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 07:24:56,730.730 INFO    ] 200
[2026-06-19 07:24:56,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:24:56,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:24:56,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:24:56,818.818 INFO    ] No camera update needed
[2026-06-19 07:24:56,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:24:56,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:24:56,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:24:56,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:24:58,875.875 INFO    ] ================================================
[2026-06-19 07:24:58,890.890 INFO    ] Launching Daemon at Fri Jun 19 07:24:58 IST 2026
[2026-06-19 07:24:58,900.900 INFO    ] ================================================
[2026-06-19 07:24:59,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:24:59
[2026-06-19 07:25:00,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:25:00,331.331 INFO    ] Initializing speech engine...
[2026-06-19 07:25:00,340.340 INFO    ] 2026-06-19 07:25:00
[2026-06-19 07:25:00,610.610 INFO    ] 2026-06-19 07:25:00
[2026-06-19 07:25:00,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:25:00,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:25:00,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:25:01,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:25:01,095.095 INFO    ] time= 19/06/2026 07:25:01
[2026-06-19 07:25:01,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:25:01,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:25:01,254.254 INFO    ] No existing commands found in stream
[2026-06-19 07:25:06,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:25:06,269.269 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 07:25:09,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:25:09,587.587 INFO    ] Checking for system updates...
[2026-06-19 07:25:09,629.629 INFO    ] 200
[2026-06-19 07:25:09,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:09,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:25:09,688.688 INFO    ] No update needed
[2026-06-19 07:25:09,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 07:25:09,729.729 INFO    ] 200
[2026-06-19 07:25:09,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:09,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:25:09,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:25:09,932.932 INFO    ] No camera update needed
[2026-06-19 07:25:09,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:25:09,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:25:09,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:25:09,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:25:11,992.992 INFO    ] ================================================
[2026-06-19 07:25:12,008.008 INFO    ] Launching Daemon at Fri Jun 19 07:25:12 IST 2026
[2026-06-19 07:25:12,019.019 INFO    ] ================================================
[2026-06-19 07:25:12,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:25:12
[2026-06-19 07:25:13,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:25:13,490.490 INFO    ] Initializing speech engine...
[2026-06-19 07:25:13,499.499 INFO    ] 2026-06-19 07:25:13
[2026-06-19 07:25:13,764.764 INFO    ] 2026-06-19 07:25:13
[2026-06-19 07:25:13,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:25:14,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:25:14,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:25:14,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:25:14,232.232 INFO    ] time= 19/06/2026 07:25:14
[2026-06-19 07:25:14,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:25:14,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:25:14,371.371 INFO    ] No existing commands found in stream
[2026-06-19 07:25:19,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:25:19,386.386 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 07:25:22,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:25:22,351.351 INFO    ] Checking for system updates...
[2026-06-19 07:25:22,387.387 INFO    ] 200
[2026-06-19 07:25:22,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:22,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:25:22,446.446 INFO    ] No update needed
[2026-06-19 07:25:22,448.448 INFO    ] Checking for camera pi updates...
[2026-06-19 07:25:22,486.486 INFO    ] 200
[2026-06-19 07:25:22,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:22,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:25:22,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:25:22,580.580 INFO    ] No camera update needed
[2026-06-19 07:25:22,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:25:22,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:25:22,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:25:22,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:25:24,637.637 INFO    ] ================================================
[2026-06-19 07:25:24,652.652 INFO    ] Launching Daemon at Fri Jun 19 07:25:24 IST 2026
[2026-06-19 07:25:24,663.663 INFO    ] ================================================
[2026-06-19 07:25:25,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:25:25
[2026-06-19 07:25:25,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:25:26,074.074 INFO    ] Initializing speech engine...
[2026-06-19 07:25:26,088.088 INFO    ] 2026-06-19 07:25:26
[2026-06-19 07:25:26,348.348 INFO    ] 2026-06-19 07:25:26
[2026-06-19 07:25:26,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:25:26,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:25:26,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:25:26,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:25:26,822.822 INFO    ] time= 19/06/2026 07:25:26
[2026-06-19 07:25:26,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:25:26,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:25:26,985.985 INFO    ] No existing commands found in stream
[2026-06-19 07:25:32,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:25:32,011.011 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 07:25:35,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:25:35,343.343 INFO    ] Checking for system updates...
[2026-06-19 07:25:35,379.379 INFO    ] 200
[2026-06-19 07:25:35,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:35,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:25:35,437.437 INFO    ] No update needed
[2026-06-19 07:25:35,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 07:25:35,472.472 INFO    ] 200
[2026-06-19 07:25:35,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:35,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:25:35,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:25:35,570.570 INFO    ] No camera update needed
[2026-06-19 07:25:35,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:25:35,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:25:35,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:25:35,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:25:37,627.627 INFO    ] ================================================
[2026-06-19 07:25:37,642.642 INFO    ] Launching Daemon at Fri Jun 19 07:25:37 IST 2026
[2026-06-19 07:25:37,652.652 INFO    ] ================================================
[2026-06-19 07:25:38,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:25:38
[2026-06-19 07:25:38,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:25:39,144.144 INFO    ] Initializing speech engine...
[2026-06-19 07:25:39,154.154 INFO    ] 2026-06-19 07:25:39
[2026-06-19 07:25:39,426.426 INFO    ] 2026-06-19 07:25:39
[2026-06-19 07:25:39,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:25:39,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:25:39,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:25:39,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:25:39,839.839 INFO    ] time= 19/06/2026 07:25:39
[2026-06-19 07:25:39,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:25:39,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:25:40,008.008 INFO    ] No existing commands found in stream
[2026-06-19 07:25:45,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:25:45,045.045 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 07:25:46,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:25:46,166.166 INFO    ] Checking for system updates...
[2026-06-19 07:25:46,202.202 INFO    ] 200
[2026-06-19 07:25:46,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:46,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:25:46,260.260 INFO    ] No update needed
[2026-06-19 07:25:46,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 07:25:46,296.296 INFO    ] 200
[2026-06-19 07:25:46,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:46,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:25:46,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:25:46,404.404 INFO    ] No camera update needed
[2026-06-19 07:25:46,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:25:46,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:25:46,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:25:46,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:25:48,459.459 INFO    ] ================================================
[2026-06-19 07:25:48,474.474 INFO    ] Launching Daemon at Fri Jun 19 07:25:48 IST 2026
[2026-06-19 07:25:48,484.484 INFO    ] ================================================
[2026-06-19 07:25:49,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:25:49
[2026-06-19 07:25:49,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:25:49,961.961 INFO    ] Initializing speech engine...
[2026-06-19 07:25:49,969.969 INFO    ] 2026-06-19 07:25:49
[2026-06-19 07:25:50,271.271 INFO    ] 2026-06-19 07:25:50
[2026-06-19 07:25:50,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:25:50,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:25:50,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:25:50,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:25:50,691.691 INFO    ] time= 19/06/2026 07:25:50
[2026-06-19 07:25:50,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:25:50,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:25:50,780.780 INFO    ] No existing commands found in stream
[2026-06-19 07:25:55,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:25:55,818.818 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 07:25:57,033.033 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:25:57,036.036 INFO    ] Checking for system updates...
[2026-06-19 07:25:57,076.076 INFO    ] 200
[2026-06-19 07:25:57,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:57,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:25:57,134.134 INFO    ] No update needed
[2026-06-19 07:25:57,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 07:25:57,172.172 INFO    ] 200
[2026-06-19 07:25:57,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:25:57,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:25:57,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:25:57,269.269 INFO    ] No camera update needed
[2026-06-19 07:25:57,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:25:57,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:25:57,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:25:57,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:25:59,326.326 INFO    ] ================================================
[2026-06-19 07:25:59,345.345 INFO    ] Launching Daemon at Fri Jun 19 07:25:59 IST 2026
[2026-06-19 07:25:59,355.355 INFO    ] ================================================
[2026-06-19 07:25:59,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:25:59
[2026-06-19 07:26:00,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:26:00,760.760 INFO    ] Initializing speech engine...
[2026-06-19 07:26:00,768.768 INFO    ] 2026-06-19 07:26:00
[2026-06-19 07:26:01,061.061 INFO    ] 2026-06-19 07:26:01
[2026-06-19 07:26:01,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:26:01,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:26:01,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:26:01,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:26:01,513.513 INFO    ] time= 19/06/2026 07:26:01
[2026-06-19 07:26:01,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:26:01,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:26:01,575.575 INFO    ] No existing commands found in stream
[2026-06-19 07:26:06,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:26:06,588.588 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 07:26:07,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:26:07,629.629 INFO    ] Checking for system updates...
[2026-06-19 07:26:07,665.665 INFO    ] 200
[2026-06-19 07:26:07,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:07,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:26:07,725.725 INFO    ] No update needed
[2026-06-19 07:26:07,728.728 INFO    ] Checking for camera pi updates...
[2026-06-19 07:26:07,763.763 INFO    ] 200
[2026-06-19 07:26:07,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:07,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:26:07,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:26:07,847.847 INFO    ] No camera update needed
[2026-06-19 07:26:07,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:26:07,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:26:07,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:26:07,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:26:09,903.903 INFO    ] ================================================
[2026-06-19 07:26:09,918.918 INFO    ] Launching Daemon at Fri Jun 19 07:26:09 IST 2026
[2026-06-19 07:26:09,929.929 INFO    ] ================================================
[2026-06-19 07:26:10,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:26:10
[2026-06-19 07:26:11,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:26:11,327.327 INFO    ] Initializing speech engine...
[2026-06-19 07:26:11,339.339 INFO    ] 2026-06-19 07:26:11
[2026-06-19 07:26:11,609.609 INFO    ] 2026-06-19 07:26:11
[2026-06-19 07:26:11,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:26:11,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:26:11,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:26:12,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:26:12,099.099 INFO    ] time= 19/06/2026 07:26:12
[2026-06-19 07:26:12,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:26:12,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:26:12,293.293 INFO    ] No existing commands found in stream
[2026-06-19 07:26:17,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:26:17,326.326 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 07:26:18,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:26:18,401.401 INFO    ] Checking for system updates...
[2026-06-19 07:26:18,437.437 INFO    ] 200
[2026-06-19 07:26:18,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:18,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:26:18,494.494 INFO    ] No update needed
[2026-06-19 07:26:18,497.497 INFO    ] Checking for camera pi updates...
[2026-06-19 07:26:18,531.531 INFO    ] 200
[2026-06-19 07:26:18,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:18,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:26:18,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:26:18,625.625 INFO    ] No camera update needed
[2026-06-19 07:26:18,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:26:18,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:26:18,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:26:18,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:26:20,681.681 INFO    ] ================================================
[2026-06-19 07:26:20,696.696 INFO    ] Launching Daemon at Fri Jun 19 07:26:20 IST 2026
[2026-06-19 07:26:20,707.707 INFO    ] ================================================
[2026-06-19 07:26:21,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:26:21
[2026-06-19 07:26:21,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:26:22,184.184 INFO    ] Initializing speech engine...
[2026-06-19 07:26:22,197.197 INFO    ] 2026-06-19 07:26:22
[2026-06-19 07:26:22,465.465 INFO    ] 2026-06-19 07:26:22
[2026-06-19 07:26:22,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:26:22,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:26:22,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:26:22,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:26:22,927.927 INFO    ] time= 19/06/2026 07:26:22
[2026-06-19 07:26:22,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:26:23,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:26:23,068.068 INFO    ] No existing commands found in stream
[2026-06-19 07:26:28,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:26:28,082.082 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 07:26:32,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:26:32,304.304 INFO    ] Checking for system updates...
[2026-06-19 07:26:32,347.347 INFO    ] 200
[2026-06-19 07:26:32,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:32,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:26:32,411.411 INFO    ] No update needed
[2026-06-19 07:26:32,414.414 INFO    ] Checking for camera pi updates...
[2026-06-19 07:26:32,450.450 INFO    ] 200
[2026-06-19 07:26:32,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:32,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:26:32,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:26:32,534.534 INFO    ] No camera update needed
[2026-06-19 07:26:32,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:26:32,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:26:32,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:26:32,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:26:34,595.595 INFO    ] ================================================
[2026-06-19 07:26:34,611.611 INFO    ] Launching Daemon at Fri Jun 19 07:26:34 IST 2026
[2026-06-19 07:26:34,622.622 INFO    ] ================================================
[2026-06-19 07:26:35,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:26:35
[2026-06-19 07:26:35,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:26:36,023.023 INFO    ] Initializing speech engine...
[2026-06-19 07:26:36,029.029 INFO    ] 2026-06-19 07:26:36
[2026-06-19 07:26:36,303.303 INFO    ] 2026-06-19 07:26:36
[2026-06-19 07:26:36,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:26:36,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:26:36,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:26:36,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:26:36,686.686 INFO    ] time= 19/06/2026 07:26:36
[2026-06-19 07:26:36,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:26:36,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:26:36,858.858 INFO    ] No existing commands found in stream
[2026-06-19 07:26:41,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:26:41,891.891 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 07:26:45,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:26:45,596.596 INFO    ] Checking for system updates...
[2026-06-19 07:26:45,632.632 INFO    ] 200
[2026-06-19 07:26:45,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:45,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:26:45,691.691 INFO    ] No update needed
[2026-06-19 07:26:45,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 07:26:45,727.727 INFO    ] 200
[2026-06-19 07:26:45,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:45,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:26:45,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:26:45,812.812 INFO    ] No camera update needed
[2026-06-19 07:26:45,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:26:45,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:26:45,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:26:45,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:26:47,872.872 INFO    ] ================================================
[2026-06-19 07:26:47,887.887 INFO    ] Launching Daemon at Fri Jun 19 07:26:47 IST 2026
[2026-06-19 07:26:47,897.897 INFO    ] ================================================
[2026-06-19 07:26:48,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:26:48
[2026-06-19 07:26:49,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:26:49,319.319 INFO    ] Initializing speech engine...
[2026-06-19 07:26:49,328.328 INFO    ] 2026-06-19 07:26:49
[2026-06-19 07:26:49,573.573 INFO    ] 2026-06-19 07:26:49
[2026-06-19 07:26:49,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:26:49,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:26:49,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:26:50,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:26:50,073.073 INFO    ] time= 19/06/2026 07:26:50
[2026-06-19 07:26:50,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:26:50,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:26:50,259.259 INFO    ] No existing commands found in stream
[2026-06-19 07:26:55,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:26:55,292.292 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 07:26:58,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:26:58,971.971 INFO    ] Checking for system updates...
[2026-06-19 07:26:59,007.007 INFO    ] 200
[2026-06-19 07:26:59,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:59,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:26:59,073.073 INFO    ] No update needed
[2026-06-19 07:26:59,076.076 INFO    ] Checking for camera pi updates...
[2026-06-19 07:26:59,109.109 INFO    ] 200
[2026-06-19 07:26:59,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:26:59,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:26:59,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:26:59,204.204 INFO    ] No camera update needed
[2026-06-19 07:26:59,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:26:59,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:26:59,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:26:59,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:27:01,260.260 INFO    ] ================================================
[2026-06-19 07:27:01,275.275 INFO    ] Launching Daemon at Fri Jun 19 07:27:01 IST 2026
[2026-06-19 07:27:01,285.285 INFO    ] ================================================
[2026-06-19 07:27:02,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:27:02
[2026-06-19 07:27:02,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:27:02,997.997 INFO    ] Initializing speech engine...
[2026-06-19 07:27:03,012.012 INFO    ] 2026-06-19 07:27:03
[2026-06-19 07:27:03,305.305 INFO    ] 2026-06-19 07:27:03
[2026-06-19 07:27:03,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:27:03,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:27:03,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:27:03,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:27:03,682.682 INFO    ] time= 19/06/2026 07:27:03
[2026-06-19 07:27:03,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:27:03,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:27:03,857.857 INFO    ] No existing commands found in stream
[2026-06-19 07:27:08,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:27:08,885.885 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 07:27:10,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:27:10,273.273 INFO    ] Checking for system updates...
[2026-06-19 07:27:10,312.312 INFO    ] 200
[2026-06-19 07:27:10,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:10,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:27:10,369.369 INFO    ] No update needed
[2026-06-19 07:27:10,372.372 INFO    ] Checking for camera pi updates...
[2026-06-19 07:27:10,405.405 INFO    ] 200
[2026-06-19 07:27:10,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:10,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:27:10,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:27:10,490.490 INFO    ] No camera update needed
[2026-06-19 07:27:10,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:27:10,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:27:10,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:27:10,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:27:12,546.546 INFO    ] ================================================
[2026-06-19 07:27:12,560.560 INFO    ] Launching Daemon at Fri Jun 19 07:27:12 IST 2026
[2026-06-19 07:27:12,571.571 INFO    ] ================================================
[2026-06-19 07:27:13,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:27:13
[2026-06-19 07:27:13,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:27:14,006.006 INFO    ] Initializing speech engine...
[2026-06-19 07:27:14,014.014 INFO    ] 2026-06-19 07:27:14
[2026-06-19 07:27:14,309.309 INFO    ] 2026-06-19 07:27:14
[2026-06-19 07:27:14,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:27:14,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:27:14,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:27:14,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:27:14,677.677 INFO    ] time= 19/06/2026 07:27:14
[2026-06-19 07:27:14,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:27:14,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:27:14,800.800 INFO    ] No existing commands found in stream
[2026-06-19 07:27:19,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:27:19,814.814 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 07:27:21,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:27:21,110.110 INFO    ] Checking for system updates...
[2026-06-19 07:27:21,148.148 INFO    ] 200
[2026-06-19 07:27:21,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:21,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:27:21,207.207 INFO    ] No update needed
[2026-06-19 07:27:21,210.210 INFO    ] Checking for camera pi updates...
[2026-06-19 07:27:21,247.247 INFO    ] 200
[2026-06-19 07:27:21,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:21,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:27:21,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:27:21,456.456 INFO    ] No camera update needed
[2026-06-19 07:27:21,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:27:21,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:27:21,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:27:21,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:27:23,510.510 INFO    ] ================================================
[2026-06-19 07:27:23,525.525 INFO    ] Launching Daemon at Fri Jun 19 07:27:23 IST 2026
[2026-06-19 07:27:23,542.542 INFO    ] ================================================
[2026-06-19 07:27:24,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:27:24
[2026-06-19 07:27:24,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:27:25,132.132 INFO    ] Initializing speech engine...
[2026-06-19 07:27:25,146.146 INFO    ] 2026-06-19 07:27:25
[2026-06-19 07:27:25,430.430 INFO    ] 2026-06-19 07:27:25
[2026-06-19 07:27:25,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:27:25,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:27:25,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:27:25,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:27:25,962.962 INFO    ] time= 19/06/2026 07:27:25
[2026-06-19 07:27:25,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:27:26,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:27:26,113.113 INFO    ] No existing commands found in stream
[2026-06-19 07:27:31,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:27:31,132.132 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-19 07:27:34,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:27:34,556.556 INFO    ] Checking for system updates...
[2026-06-19 07:27:34,597.597 INFO    ] 200
[2026-06-19 07:27:34,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:34,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:27:34,661.661 INFO    ] No update needed
[2026-06-19 07:27:34,663.663 INFO    ] Checking for camera pi updates...
[2026-06-19 07:27:34,701.701 INFO    ] 200
[2026-06-19 07:27:34,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:34,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:27:34,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:27:34,804.804 INFO    ] No camera update needed
[2026-06-19 07:27:34,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:27:34,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:27:34,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:27:34,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:27:36,864.864 INFO    ] ================================================
[2026-06-19 07:27:36,880.880 INFO    ] Launching Daemon at Fri Jun 19 07:27:36 IST 2026
[2026-06-19 07:27:36,890.890 INFO    ] ================================================
[2026-06-19 07:27:37,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:27:37
[2026-06-19 07:27:38,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:27:38,348.348 INFO    ] Initializing speech engine...
[2026-06-19 07:27:38,357.357 INFO    ] 2026-06-19 07:27:38
[2026-06-19 07:27:38,608.608 INFO    ] 2026-06-19 07:27:38
[2026-06-19 07:27:38,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:27:38,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:27:38,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:27:39,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:27:39,078.078 INFO    ] time= 19/06/2026 07:27:39
[2026-06-19 07:27:39,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:27:39,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:27:39,260.260 INFO    ] No existing commands found in stream
[2026-06-19 07:27:44,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:27:44,294.294 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 07:27:47,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:27:47,052.052 INFO    ] Checking for system updates...
[2026-06-19 07:27:47,092.092 INFO    ] 200
[2026-06-19 07:27:47,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:47,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:27:47,155.155 INFO    ] No update needed
[2026-06-19 07:27:47,158.158 INFO    ] Checking for camera pi updates...
[2026-06-19 07:27:47,191.191 INFO    ] 200
[2026-06-19 07:27:47,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:47,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:27:47,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:27:47,268.268 INFO    ] No camera update needed
[2026-06-19 07:27:47,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:27:47,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:27:47,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:27:47,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:27:49,326.326 INFO    ] ================================================
[2026-06-19 07:27:49,341.341 INFO    ] Launching Daemon at Fri Jun 19 07:27:49 IST 2026
[2026-06-19 07:27:49,352.352 INFO    ] ================================================
[2026-06-19 07:27:49,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:27:49
[2026-06-19 07:27:50,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:27:50,943.943 INFO    ] Initializing speech engine...
[2026-06-19 07:27:50,954.954 INFO    ] 2026-06-19 07:27:50
[2026-06-19 07:27:51,239.239 INFO    ] 2026-06-19 07:27:51
[2026-06-19 07:27:51,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:27:51,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:27:51,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:27:51,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:27:51,764.764 INFO    ] time= 19/06/2026 07:27:51
[2026-06-19 07:27:51,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:27:51,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:27:51,912.912 INFO    ] No existing commands found in stream
[2026-06-19 07:27:56,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:27:56,931.931 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 07:27:59,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:27:59,647.647 INFO    ] Checking for system updates...
[2026-06-19 07:27:59,684.684 INFO    ] 200
[2026-06-19 07:27:59,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:59,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:27:59,752.752 INFO    ] No update needed
[2026-06-19 07:27:59,754.754 INFO    ] Checking for camera pi updates...
[2026-06-19 07:27:59,791.791 INFO    ] 200
[2026-06-19 07:27:59,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:27:59,835.835 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:27:59,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:27:59,889.889 INFO    ] No camera update needed
[2026-06-19 07:27:59,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:27:59,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:27:59,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:27:59,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:28:01,946.946 INFO    ] ================================================
[2026-06-19 07:28:01,969.969 INFO    ] Launching Daemon at Fri Jun 19 07:28:01 IST 2026
[2026-06-19 07:28:01,986.986 INFO    ] ================================================
[2026-06-19 07:28:02,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:28:02
[2026-06-19 07:28:03,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:28:03,629.629 INFO    ] Initializing speech engine...
[2026-06-19 07:28:03,635.635 INFO    ] 2026-06-19 07:28:03
[2026-06-19 07:28:03,895.895 INFO    ] 2026-06-19 07:28:03
[2026-06-19 07:28:03,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:28:04,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:28:04,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:28:04,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:28:04,350.350 INFO    ] time= 19/06/2026 07:28:04
[2026-06-19 07:28:04,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:28:04,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:28:04,506.506 INFO    ] No existing commands found in stream
[2026-06-19 07:28:09,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:28:09,520.520 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 07:28:12,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:28:12,995.995 INFO    ] Checking for system updates...
[2026-06-19 07:28:13,031.031 INFO    ] 200
[2026-06-19 07:28:13,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:28:13,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:28:13,090.090 INFO    ] No update needed
[2026-06-19 07:28:13,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 07:28:13,128.128 INFO    ] 200
[2026-06-19 07:28:13,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:28:13,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:28:13,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:28:13,228.228 INFO    ] No camera update needed
[2026-06-19 07:28:13,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:28:13,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:28:13,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:28:13,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:28:15,288.288 INFO    ] ================================================
[2026-06-19 07:28:15,304.304 INFO    ] Launching Daemon at Fri Jun 19 07:28:15 IST 2026
[2026-06-19 07:28:15,315.315 INFO    ] ================================================
[2026-06-19 07:28:15,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:28:15
[2026-06-19 07:28:16,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:28:16,755.755 INFO    ] Initializing speech engine...
[2026-06-19 07:28:16,765.765 INFO    ] 2026-06-19 07:28:16
[2026-06-19 07:28:17,030.030 INFO    ] 2026-06-19 07:28:17
[2026-06-19 07:28:17,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:28:17,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:28:17,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:28:17,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:28:17,486.486 INFO    ] time= 19/06/2026 07:28:17
[2026-06-19 07:28:17,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:28:17,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:28:17,657.657 INFO    ] No existing commands found in stream
[2026-06-19 07:28:22,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:28:22,674.674 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 07:28:25,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:28:25,527.527 INFO    ] Checking for system updates...
[2026-06-19 07:28:25,569.569 INFO    ] 200
[2026-06-19 07:28:25,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:28:25,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:28:25,626.626 INFO    ] No update needed
[2026-06-19 07:28:25,629.629 INFO    ] Checking for camera pi updates...
[2026-06-19 07:28:25,662.662 INFO    ] 200
[2026-06-19 07:28:25,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:28:25,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:28:25,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:28:25,759.759 INFO    ] No camera update needed
[2026-06-19 07:28:25,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:28:25,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:28:25,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:28:25,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:28:27,816.816 INFO    ] ================================================
[2026-06-19 07:28:27,832.832 INFO    ] Launching Daemon at Fri Jun 19 07:28:27 IST 2026
[2026-06-19 07:28:27,844.844 INFO    ] ================================================
[2026-06-19 07:28:28,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:28:28
[2026-06-19 07:28:29,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:28:29,511.511 INFO    ] Initializing speech engine...
[2026-06-19 07:28:29,522.522 INFO    ] 2026-06-19 07:28:29
[2026-06-19 07:28:29,838.838 INFO    ] 2026-06-19 07:28:29
[2026-06-19 07:28:29,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:28:30,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:28:30,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:28:30,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:28:30,344.344 INFO    ] time= 19/06/2026 07:28:30
[2026-06-19 07:28:30,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:28:30,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:28:30,501.501 INFO    ] No existing commands found in stream
[2026-06-19 07:28:35,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:28:35,536.536 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 07:28:37,033.033 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:28:37,037.037 INFO    ] Checking for system updates...
[2026-06-19 07:28:37,078.078 INFO    ] 200
[2026-06-19 07:28:37,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:28:37,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:28:37,144.144 INFO    ] No update needed
[2026-06-19 07:28:37,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 07:28:37,181.181 INFO    ] 200
[2026-06-19 07:28:37,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:28:37,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:28:37,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:28:37,265.265 INFO    ] No camera update needed
[2026-06-19 07:28:37,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:28:37,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:28:37,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:28:37,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:28:39,324.324 INFO    ] ================================================
[2026-06-19 07:28:39,340.340 INFO    ] Launching Daemon at Fri Jun 19 07:28:39 IST 2026
[2026-06-19 07:28:39,351.351 INFO    ] ================================================
[2026-06-19 07:28:40,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:28:40
[2026-06-19 07:28:40,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:28:40,996.996 INFO    ] Initializing speech engine...
[2026-06-19 07:28:41,003.003 INFO    ] 2026-06-19 07:28:40
[2026-06-19 07:28:41,298.298 INFO    ] 2026-06-19 07:28:41
[2026-06-19 07:28:41,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:28:41,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:28:41,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:28:41,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:28:41,834.834 INFO    ] time= 19/06/2026 07:28:41
[2026-06-19 07:28:41,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:28:41,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:28:41,993.993 INFO    ] No existing commands found in stream
[2026-06-19 07:28:47,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:28:47,021.021 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 07:28:49,872.872 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:28:49,875.875 INFO    ] Checking for system updates...
[2026-06-19 07:28:49,917.917 INFO    ] 200
[2026-06-19 07:28:49,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:28:49,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:28:49,977.977 INFO    ] No update needed
[2026-06-19 07:28:49,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 07:28:50,019.019 INFO    ] 200
[2026-06-19 07:28:50,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:28:50,064.064 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:28:50,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:28:50,106.106 INFO    ] No camera update needed
[2026-06-19 07:28:50,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:28:50,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:28:50,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:28:50,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:28:52,166.166 INFO    ] ================================================
[2026-06-19 07:28:52,182.182 INFO    ] Launching Daemon at Fri Jun 19 07:28:52 IST 2026
[2026-06-19 07:28:52,193.193 INFO    ] ================================================
[2026-06-19 07:28:52,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:28:52
[2026-06-19 07:28:53,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:28:53,621.621 INFO    ] Initializing speech engine...
[2026-06-19 07:28:53,631.631 INFO    ] 2026-06-19 07:28:53
[2026-06-19 07:28:53,883.883 INFO    ] 2026-06-19 07:28:53
[2026-06-19 07:28:53,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:28:54,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:28:54,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:28:54,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:28:54,365.365 INFO    ] time= 19/06/2026 07:28:54
[2026-06-19 07:28:54,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:28:54,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:28:54,513.513 INFO    ] No existing commands found in stream
[2026-06-19 07:28:59,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:28:59,527.527 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 07:29:00,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:29:00,861.861 INFO    ] Checking for system updates...
[2026-06-19 07:29:00,900.900 INFO    ] 200
[2026-06-19 07:29:00,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:00,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:29:00,968.968 INFO    ] No update needed
[2026-06-19 07:29:00,970.970 INFO    ] Checking for camera pi updates...
[2026-06-19 07:29:01,009.009 INFO    ] 200
[2026-06-19 07:29:01,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:01,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:29:01,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:29:01,118.118 INFO    ] No camera update needed
[2026-06-19 07:29:01,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:29:01,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:29:01,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:29:01,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:29:03,175.175 INFO    ] ================================================
[2026-06-19 07:29:03,191.191 INFO    ] Launching Daemon at Fri Jun 19 07:29:03 IST 2026
[2026-06-19 07:29:03,202.202 INFO    ] ================================================
[2026-06-19 07:29:03,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:29:03
[2026-06-19 07:29:04,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:29:04,610.610 INFO    ] Initializing speech engine...
[2026-06-19 07:29:04,617.617 INFO    ] 2026-06-19 07:29:04
[2026-06-19 07:29:04,905.905 INFO    ] 2026-06-19 07:29:04
[2026-06-19 07:29:04,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:29:05,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:29:05,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:29:05,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:29:05,301.301 INFO    ] time= 19/06/2026 07:29:05
[2026-06-19 07:29:05,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:29:05,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:29:05,492.492 INFO    ] No existing commands found in stream
[2026-06-19 07:29:10,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:29:10,509.509 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 07:29:12,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:29:12,700.700 INFO    ] Checking for system updates...
[2026-06-19 07:29:12,740.740 INFO    ] 200
[2026-06-19 07:29:12,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:12,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:29:12,799.799 INFO    ] No update needed
[2026-06-19 07:29:12,802.802 INFO    ] Checking for camera pi updates...
[2026-06-19 07:29:12,836.836 INFO    ] 200
[2026-06-19 07:29:12,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:12,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:29:12,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:29:12,932.932 INFO    ] No camera update needed
[2026-06-19 07:29:12,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:29:12,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:29:12,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:29:12,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:29:14,988.988 INFO    ] ================================================
[2026-06-19 07:29:15,003.003 INFO    ] Launching Daemon at Fri Jun 19 07:29:14 IST 2026
[2026-06-19 07:29:15,014.014 INFO    ] ================================================
[2026-06-19 07:29:15,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:29:15
[2026-06-19 07:29:16,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:29:16,624.624 INFO    ] Initializing speech engine...
[2026-06-19 07:29:16,630.630 INFO    ] 2026-06-19 07:29:16
[2026-06-19 07:29:16,883.883 INFO    ] 2026-06-19 07:29:16
[2026-06-19 07:29:16,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:29:17,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:29:17,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:29:17,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:29:17,375.375 INFO    ] time= 19/06/2026 07:29:17
[2026-06-19 07:29:17,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:29:17,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:29:17,564.564 INFO    ] No existing commands found in stream
[2026-06-19 07:29:22,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:29:22,584.584 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 07:29:24,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:29:24,120.120 INFO    ] Checking for system updates...
[2026-06-19 07:29:24,157.157 INFO    ] 200
[2026-06-19 07:29:24,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:24,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:29:24,216.216 INFO    ] No update needed
[2026-06-19 07:29:24,220.220 INFO    ] Checking for camera pi updates...
[2026-06-19 07:29:24,258.258 INFO    ] 200
[2026-06-19 07:29:24,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:24,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:29:24,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:29:24,450.450 INFO    ] No camera update needed
[2026-06-19 07:29:24,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:29:24,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:29:24,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:29:24,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:29:26,507.507 INFO    ] ================================================
[2026-06-19 07:29:26,522.522 INFO    ] Launching Daemon at Fri Jun 19 07:29:26 IST 2026
[2026-06-19 07:29:26,533.533 INFO    ] ================================================
[2026-06-19 07:29:27,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:29:27
[2026-06-19 07:29:27,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:29:27,949.949 INFO    ] Initializing speech engine...
[2026-06-19 07:29:27,957.957 INFO    ] 2026-06-19 07:29:27
[2026-06-19 07:29:28,248.248 INFO    ] 2026-06-19 07:29:28
[2026-06-19 07:29:28,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:29:28,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:29:28,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:29:28,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:29:28,642.642 INFO    ] time= 19/06/2026 07:29:28
[2026-06-19 07:29:28,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:29:28,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:29:28,749.749 INFO    ] No existing commands found in stream
[2026-06-19 07:29:33,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:29:33,764.764 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 07:29:38,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:29:38,102.102 INFO    ] Checking for system updates...
[2026-06-19 07:29:38,141.141 INFO    ] 200
[2026-06-19 07:29:38,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:38,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:29:38,204.204 INFO    ] No update needed
[2026-06-19 07:29:38,206.206 INFO    ] Checking for camera pi updates...
[2026-06-19 07:29:38,243.243 INFO    ] 200
[2026-06-19 07:29:38,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:38,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:29:38,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:29:38,339.339 INFO    ] No camera update needed
[2026-06-19 07:29:38,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:29:38,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:29:38,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:29:38,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:29:40,395.395 INFO    ] ================================================
[2026-06-19 07:29:40,410.410 INFO    ] Launching Daemon at Fri Jun 19 07:29:40 IST 2026
[2026-06-19 07:29:40,421.421 INFO    ] ================================================
[2026-06-19 07:29:40,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:29:40
[2026-06-19 07:29:41,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:29:41,841.841 INFO    ] Initializing speech engine...
[2026-06-19 07:29:41,850.850 INFO    ] 2026-06-19 07:29:41
[2026-06-19 07:29:42,142.142 INFO    ] 2026-06-19 07:29:42
[2026-06-19 07:29:42,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:29:42,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:29:42,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:29:42,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:29:42,519.519 INFO    ] time= 19/06/2026 07:29:42
[2026-06-19 07:29:42,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:29:42,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:29:42,643.643 INFO    ] No existing commands found in stream
[2026-06-19 07:29:47,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:29:47,658.658 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 07:29:49,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:29:49,774.774 INFO    ] Checking for system updates...
[2026-06-19 07:29:49,809.809 INFO    ] 200
[2026-06-19 07:29:49,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:49,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:29:49,875.875 INFO    ] No update needed
[2026-06-19 07:29:49,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 07:29:49,914.914 INFO    ] 200
[2026-06-19 07:29:49,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:29:49,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:29:49,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:29:49,989.989 INFO    ] No camera update needed
[2026-06-19 07:29:49,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:29:49,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:29:49,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:29:50,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:29:52,044.044 INFO    ] ================================================
[2026-06-19 07:29:52,059.059 INFO    ] Launching Daemon at Fri Jun 19 07:29:52 IST 2026
[2026-06-19 07:29:52,070.070 INFO    ] ================================================
[2026-06-19 07:29:52,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:29:52
[2026-06-19 07:29:53,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:29:53,531.531 INFO    ] Initializing speech engine...
[2026-06-19 07:29:53,538.538 INFO    ] 2026-06-19 07:29:53
[2026-06-19 07:29:53,786.786 INFO    ] 2026-06-19 07:29:53
[2026-06-19 07:29:53,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:29:54,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:29:54,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:29:54,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:29:54,237.237 INFO    ] time= 19/06/2026 07:29:54
[2026-06-19 07:29:54,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:29:54,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:29:54,408.408 INFO    ] No existing commands found in stream
[2026-06-19 07:29:59,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:29:59,422.422 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 07:30:04,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:30:04,388.388 INFO    ] Checking for system updates...
[2026-06-19 07:30:04,429.429 INFO    ] 200
[2026-06-19 07:30:04,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:04,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:30:04,500.500 INFO    ] No update needed
[2026-06-19 07:30:04,502.502 INFO    ] Checking for camera pi updates...
[2026-06-19 07:30:04,541.541 INFO    ] 200
[2026-06-19 07:30:04,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:04,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:30:04,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:30:04,638.638 INFO    ] No camera update needed
[2026-06-19 07:30:04,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:30:04,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:30:04,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:30:04,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:30:06,696.696 INFO    ] ================================================
[2026-06-19 07:30:06,713.713 INFO    ] Launching Daemon at Fri Jun 19 07:30:06 IST 2026
[2026-06-19 07:30:06,724.724 INFO    ] ================================================
[2026-06-19 07:30:07,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:30:07
[2026-06-19 07:30:07,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:30:08,142.142 INFO    ] Initializing speech engine...
[2026-06-19 07:30:08,161.161 INFO    ] 2026-06-19 07:30:08
[2026-06-19 07:30:08,409.409 INFO    ] 2026-06-19 07:30:08
[2026-06-19 07:30:08,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:30:08,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:30:08,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:30:08,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:30:08,875.875 INFO    ] time= 19/06/2026 07:30:08
[2026-06-19 07:30:08,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:30:08,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:30:09,032.032 INFO    ] No existing commands found in stream
[2026-06-19 07:30:14,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:30:14,060.060 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 07:30:17,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:30:17,326.326 INFO    ] Checking for system updates...
[2026-06-19 07:30:17,362.362 INFO    ] 200
[2026-06-19 07:30:17,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:17,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:30:17,429.429 INFO    ] No update needed
[2026-06-19 07:30:17,431.431 INFO    ] Checking for camera pi updates...
[2026-06-19 07:30:17,469.469 INFO    ] 200
[2026-06-19 07:30:17,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:17,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:30:17,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:30:17,564.564 INFO    ] No camera update needed
[2026-06-19 07:30:17,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:30:17,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:30:17,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:30:17,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:30:19,619.619 INFO    ] ================================================
[2026-06-19 07:30:19,635.635 INFO    ] Launching Daemon at Fri Jun 19 07:30:19 IST 2026
[2026-06-19 07:30:19,647.647 INFO    ] ================================================
[2026-06-19 07:30:20,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:30:20
[2026-06-19 07:30:21,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:30:21,324.324 INFO    ] Initializing speech engine...
[2026-06-19 07:30:21,336.336 INFO    ] 2026-06-19 07:30:21
[2026-06-19 07:30:21,662.662 INFO    ] 2026-06-19 07:30:21
[2026-06-19 07:30:21,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:30:21,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:30:21,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:30:22,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:30:22,118.118 INFO    ] time= 19/06/2026 07:30:22
[2026-06-19 07:30:22,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:30:22,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:30:22,318.318 INFO    ] No existing commands found in stream
[2026-06-19 07:30:27,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:30:27,332.332 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 07:30:30,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:30:30,187.187 INFO    ] Checking for system updates...
[2026-06-19 07:30:30,224.224 INFO    ] 200
[2026-06-19 07:30:30,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:30,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:30:30,283.283 INFO    ] No update needed
[2026-06-19 07:30:30,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 07:30:30,320.320 INFO    ] 200
[2026-06-19 07:30:30,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:30,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:30:30,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:30:30,416.416 INFO    ] No camera update needed
[2026-06-19 07:30:30,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:30:30,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:30:30,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:30:30,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:30:32,473.473 INFO    ] ================================================
[2026-06-19 07:30:32,489.489 INFO    ] Launching Daemon at Fri Jun 19 07:30:32 IST 2026
[2026-06-19 07:30:32,500.500 INFO    ] ================================================
[2026-06-19 07:30:33,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:30:33
[2026-06-19 07:30:33,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:30:33,994.994 INFO    ] Initializing speech engine...
[2026-06-19 07:30:34,003.003 INFO    ] 2026-06-19 07:30:33
[2026-06-19 07:30:34,301.301 INFO    ] 2026-06-19 07:30:34
[2026-06-19 07:30:34,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:30:34,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:30:34,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:30:34,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:30:34,807.807 INFO    ] time= 19/06/2026 07:30:34
[2026-06-19 07:30:34,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:30:34,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:30:34,982.982 INFO    ] No existing commands found in stream
[2026-06-19 07:30:39,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:30:39,998.998 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 07:30:41,586.586 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:30:41,588.588 INFO    ] Checking for system updates...
[2026-06-19 07:30:41,625.625 INFO    ] 200
[2026-06-19 07:30:41,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:41,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:30:41,690.690 INFO    ] No update needed
[2026-06-19 07:30:41,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 07:30:41,727.727 INFO    ] 200
[2026-06-19 07:30:41,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:41,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:30:41,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:30:41,822.822 INFO    ] No camera update needed
[2026-06-19 07:30:41,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:30:41,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:30:41,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:30:41,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:30:43,880.880 INFO    ] ================================================
[2026-06-19 07:30:43,895.895 INFO    ] Launching Daemon at Fri Jun 19 07:30:43 IST 2026
[2026-06-19 07:30:43,906.906 INFO    ] ================================================
[2026-06-19 07:30:44,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:30:44
[2026-06-19 07:30:45,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:30:45,309.309 INFO    ] Initializing speech engine...
[2026-06-19 07:30:45,318.318 INFO    ] 2026-06-19 07:30:45
[2026-06-19 07:30:45,591.591 INFO    ] 2026-06-19 07:30:45
[2026-06-19 07:30:45,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:30:45,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:30:45,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:30:45,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:30:45,972.972 INFO    ] time= 19/06/2026 07:30:45
[2026-06-19 07:30:45,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:30:46,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:30:46,174.174 INFO    ] No existing commands found in stream
[2026-06-19 07:30:51,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:30:51,188.188 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 07:30:53,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:30:53,820.820 INFO    ] Checking for system updates...
[2026-06-19 07:30:53,861.861 INFO    ] 200
[2026-06-19 07:30:53,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:53,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:30:53,926.926 INFO    ] No update needed
[2026-06-19 07:30:53,929.929 INFO    ] Checking for camera pi updates...
[2026-06-19 07:30:53,963.963 INFO    ] 200
[2026-06-19 07:30:53,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:30:54,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:30:54,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:30:54,059.059 INFO    ] No camera update needed
[2026-06-19 07:30:54,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:30:54,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:30:54,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:30:54,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:30:56,117.117 INFO    ] ================================================
[2026-06-19 07:30:56,132.132 INFO    ] Launching Daemon at Fri Jun 19 07:30:56 IST 2026
[2026-06-19 07:30:56,143.143 INFO    ] ================================================
[2026-06-19 07:30:56,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:30:56
[2026-06-19 07:30:57,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:30:57,590.590 INFO    ] Initializing speech engine...
[2026-06-19 07:30:57,606.606 INFO    ] 2026-06-19 07:30:57
[2026-06-19 07:30:57,860.860 INFO    ] 2026-06-19 07:30:57
[2026-06-19 07:30:57,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:30:58,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:30:58,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:30:58,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:30:58,238.238 INFO    ] time= 19/06/2026 07:30:58
[2026-06-19 07:30:58,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:30:58,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:30:58,413.413 INFO    ] No existing commands found in stream
[2026-06-19 07:31:03,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:31:03,447.447 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 07:31:06,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:31:06,711.711 INFO    ] Checking for system updates...
[2026-06-19 07:31:06,749.749 INFO    ] 200
[2026-06-19 07:31:06,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:06,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:31:06,814.814 INFO    ] No update needed
[2026-06-19 07:31:06,820.820 INFO    ] Checking for camera pi updates...
[2026-06-19 07:31:06,860.860 INFO    ] 200
[2026-06-19 07:31:06,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:06,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:31:06,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:31:06,963.963 INFO    ] No camera update needed
[2026-06-19 07:31:06,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:31:06,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:31:06,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:31:06,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:31:09,024.024 INFO    ] ================================================
[2026-06-19 07:31:09,039.039 INFO    ] Launching Daemon at Fri Jun 19 07:31:09 IST 2026
[2026-06-19 07:31:09,050.050 INFO    ] ================================================
[2026-06-19 07:31:09,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:31:09
[2026-06-19 07:31:10,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:31:10,458.458 INFO    ] Initializing speech engine...
[2026-06-19 07:31:10,466.466 INFO    ] 2026-06-19 07:31:10
[2026-06-19 07:31:10,765.765 INFO    ] 2026-06-19 07:31:10
[2026-06-19 07:31:10,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:31:11,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:31:11,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:31:11,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:31:11,191.191 INFO    ] time= 19/06/2026 07:31:11
[2026-06-19 07:31:11,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:31:11,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:31:11,278.278 INFO    ] No existing commands found in stream
[2026-06-19 07:31:16,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:31:16,293.293 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 07:31:18,703.703 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:31:18,706.706 INFO    ] Checking for system updates...
[2026-06-19 07:31:18,746.746 INFO    ] 200
[2026-06-19 07:31:18,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:18,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:31:18,803.803 INFO    ] No update needed
[2026-06-19 07:31:18,806.806 INFO    ] Checking for camera pi updates...
[2026-06-19 07:31:18,840.840 INFO    ] 200
[2026-06-19 07:31:18,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:18,885.885 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:31:18,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:31:18,932.932 INFO    ] No camera update needed
[2026-06-19 07:31:18,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:31:18,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:31:18,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:31:18,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:31:20,988.988 INFO    ] ================================================
[2026-06-19 07:31:21,004.004 INFO    ] Launching Daemon at Fri Jun 19 07:31:20 IST 2026
[2026-06-19 07:31:21,016.016 INFO    ] ================================================
[2026-06-19 07:31:21,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:31:21
[2026-06-19 07:31:22,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:31:22,685.685 INFO    ] Initializing speech engine...
[2026-06-19 07:31:22,691.691 INFO    ] 2026-06-19 07:31:22
[2026-06-19 07:31:23,000.000 INFO    ] 2026-06-19 07:31:22
[2026-06-19 07:31:23,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:31:23,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:31:23,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:31:23,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:31:23,510.510 INFO    ] time= 19/06/2026 07:31:23
[2026-06-19 07:31:23,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:31:23,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:31:23,663.663 INFO    ] No existing commands found in stream
[2026-06-19 07:31:28,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:31:28,683.683 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 07:31:31,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:31:31,759.759 INFO    ] Checking for system updates...
[2026-06-19 07:31:31,810.810 INFO    ] 200
[2026-06-19 07:31:31,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:31,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:31:31,883.883 INFO    ] No update needed
[2026-06-19 07:31:31,886.886 INFO    ] Checking for camera pi updates...
[2026-06-19 07:31:31,929.929 INFO    ] 200
[2026-06-19 07:31:31,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:31,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:31:32,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:31:32,113.113 INFO    ] No camera update needed
[2026-06-19 07:31:32,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:31:32,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:31:32,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:31:32,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:31:34,172.172 INFO    ] ================================================
[2026-06-19 07:31:34,188.188 INFO    ] Launching Daemon at Fri Jun 19 07:31:34 IST 2026
[2026-06-19 07:31:34,199.199 INFO    ] ================================================
[2026-06-19 07:31:34,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:31:34
[2026-06-19 07:31:35,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:31:35,664.664 INFO    ] Initializing speech engine...
[2026-06-19 07:31:35,675.675 INFO    ] 2026-06-19 07:31:35
[2026-06-19 07:31:35,933.933 INFO    ] 2026-06-19 07:31:35
[2026-06-19 07:31:35,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:31:36,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:31:36,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:31:36,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:31:36,481.481 INFO    ] time= 19/06/2026 07:31:36
[2026-06-19 07:31:36,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:31:36,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:31:36,616.616 INFO    ] No existing commands found in stream
[2026-06-19 07:31:41,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:31:41,644.644 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 07:31:44,898.898 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:31:44,901.901 INFO    ] Checking for system updates...
[2026-06-19 07:31:44,938.938 INFO    ] 200
[2026-06-19 07:31:44,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:44,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:31:44,997.997 INFO    ] No update needed
[2026-06-19 07:31:45,000.000 INFO    ] Checking for camera pi updates...
[2026-06-19 07:31:45,034.034 INFO    ] 200
[2026-06-19 07:31:45,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:45,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:31:45,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:31:45,122.122 INFO    ] No camera update needed
[2026-06-19 07:31:45,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:31:45,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:31:45,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:31:45,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:31:47,181.181 INFO    ] ================================================
[2026-06-19 07:31:47,197.197 INFO    ] Launching Daemon at Fri Jun 19 07:31:47 IST 2026
[2026-06-19 07:31:47,208.208 INFO    ] ================================================
[2026-06-19 07:31:47,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:31:47
[2026-06-19 07:31:48,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:31:48,869.869 INFO    ] Initializing speech engine...
[2026-06-19 07:31:48,878.878 INFO    ] 2026-06-19 07:31:48
[2026-06-19 07:31:49,151.151 INFO    ] 2026-06-19 07:31:49
[2026-06-19 07:31:49,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:31:49,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:31:49,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:31:49,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:31:49,639.639 INFO    ] time= 19/06/2026 07:31:49
[2026-06-19 07:31:49,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:31:49,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:31:49,846.846 INFO    ] No existing commands found in stream
[2026-06-19 07:31:54,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:31:54,874.874 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 07:31:56,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:31:56,510.510 INFO    ] Checking for system updates...
[2026-06-19 07:31:56,548.548 INFO    ] 200
[2026-06-19 07:31:56,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:56,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:31:56,608.608 INFO    ] No update needed
[2026-06-19 07:31:56,611.611 INFO    ] Checking for camera pi updates...
[2026-06-19 07:31:56,645.645 INFO    ] 200
[2026-06-19 07:31:56,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:31:56,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:31:56,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:31:56,737.737 INFO    ] No camera update needed
[2026-06-19 07:31:56,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:31:56,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:31:56,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:31:56,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:31:58,792.792 INFO    ] ================================================
[2026-06-19 07:31:58,808.808 INFO    ] Launching Daemon at Fri Jun 19 07:31:58 IST 2026
[2026-06-19 07:31:58,819.819 INFO    ] ================================================
[2026-06-19 07:31:59,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:31:59
[2026-06-19 07:32:00,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:32:00,263.263 INFO    ] Initializing speech engine...
[2026-06-19 07:32:00,286.286 INFO    ] 2026-06-19 07:32:00
[2026-06-19 07:32:00,541.541 INFO    ] 2026-06-19 07:32:00
[2026-06-19 07:32:00,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:32:00,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:32:00,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:32:00,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:32:00,992.992 INFO    ] time= 19/06/2026 07:32:00
[2026-06-19 07:32:01,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:32:01,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:32:01,166.166 INFO    ] No existing commands found in stream
[2026-06-19 07:32:06,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:32:06,191.191 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 07:32:08,928.928 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:32:08,930.930 INFO    ] Checking for system updates...
[2026-06-19 07:32:08,966.966 INFO    ] 200
[2026-06-19 07:32:08,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:09,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:32:09,027.027 INFO    ] No update needed
[2026-06-19 07:32:09,030.030 INFO    ] Checking for camera pi updates...
[2026-06-19 07:32:09,064.064 INFO    ] 200
[2026-06-19 07:32:09,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:09,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:32:09,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:32:09,160.160 INFO    ] No camera update needed
[2026-06-19 07:32:09,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:32:09,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:32:09,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:32:09,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:32:11,218.218 INFO    ] ================================================
[2026-06-19 07:32:11,233.233 INFO    ] Launching Daemon at Fri Jun 19 07:32:11 IST 2026
[2026-06-19 07:32:11,244.244 INFO    ] ================================================
[2026-06-19 07:32:11,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:32:11
[2026-06-19 07:32:12,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:32:12,804.804 INFO    ] Initializing speech engine...
[2026-06-19 07:32:12,812.812 INFO    ] 2026-06-19 07:32:12
[2026-06-19 07:32:13,082.082 INFO    ] 2026-06-19 07:32:13
[2026-06-19 07:32:13,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:32:13,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:32:13,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:32:13,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:32:13,524.524 INFO    ] time= 19/06/2026 07:32:13
[2026-06-19 07:32:13,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:32:13,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:32:13,711.711 INFO    ] No existing commands found in stream
[2026-06-19 07:32:18,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:32:18,728.728 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 07:32:19,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:32:19,972.972 INFO    ] Checking for system updates...
[2026-06-19 07:32:20,010.010 INFO    ] 200
[2026-06-19 07:32:20,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:20,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:32:20,073.073 INFO    ] No update needed
[2026-06-19 07:32:20,075.075 INFO    ] Checking for camera pi updates...
[2026-06-19 07:32:20,109.109 INFO    ] 200
[2026-06-19 07:32:20,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:20,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:32:20,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:32:20,191.191 INFO    ] No camera update needed
[2026-06-19 07:32:20,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:32:20,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:32:20,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:32:20,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:32:22,247.247 INFO    ] ================================================
[2026-06-19 07:32:22,266.266 INFO    ] Launching Daemon at Fri Jun 19 07:32:22 IST 2026
[2026-06-19 07:32:22,277.277 INFO    ] ================================================
[2026-06-19 07:32:22,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:32:22
[2026-06-19 07:32:23,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:32:23,683.683 INFO    ] Initializing speech engine...
[2026-06-19 07:32:23,692.692 INFO    ] 2026-06-19 07:32:23
[2026-06-19 07:32:23,982.982 INFO    ] 2026-06-19 07:32:23
[2026-06-19 07:32:24,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:32:24,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:32:24,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:32:24,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:32:24,341.341 INFO    ] time= 19/06/2026 07:32:24
[2026-06-19 07:32:24,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:32:24,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:32:24,425.425 INFO    ] No existing commands found in stream
[2026-06-19 07:32:29,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:32:29,438.438 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 07:32:32,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:32:32,074.074 INFO    ] Checking for system updates...
[2026-06-19 07:32:32,120.120 INFO    ] 200
[2026-06-19 07:32:32,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:32,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:32:32,182.182 INFO    ] No update needed
[2026-06-19 07:32:32,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 07:32:32,220.220 INFO    ] 200
[2026-06-19 07:32:32,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:32,275.275 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:32:32,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:32:32,328.328 INFO    ] No camera update needed
[2026-06-19 07:32:32,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:32:32,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:32:32,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:32:32,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:32:34,387.387 INFO    ] ================================================
[2026-06-19 07:32:34,402.402 INFO    ] Launching Daemon at Fri Jun 19 07:32:34 IST 2026
[2026-06-19 07:32:34,413.413 INFO    ] ================================================
[2026-06-19 07:32:34,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:32:34
[2026-06-19 07:32:35,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:32:35,838.838 INFO    ] Initializing speech engine...
[2026-06-19 07:32:35,847.847 INFO    ] 2026-06-19 07:32:35
[2026-06-19 07:32:36,104.104 INFO    ] 2026-06-19 07:32:36
[2026-06-19 07:32:36,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:32:36,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:32:36,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:32:36,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:32:36,539.539 INFO    ] time= 19/06/2026 07:32:36
[2026-06-19 07:32:36,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:32:36,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:32:36,724.724 INFO    ] No existing commands found in stream
[2026-06-19 07:32:41,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:32:41,740.740 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 07:32:42,657.657 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:32:42,660.660 INFO    ] Checking for system updates...
[2026-06-19 07:32:42,697.697 INFO    ] 200
[2026-06-19 07:32:42,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:42,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:32:42,758.758 INFO    ] No update needed
[2026-06-19 07:32:42,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 07:32:42,795.795 INFO    ] 200
[2026-06-19 07:32:42,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:42,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:32:42,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:32:42,893.893 INFO    ] No camera update needed
[2026-06-19 07:32:42,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:32:42,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:32:42,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:32:42,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:32:44,951.951 INFO    ] ================================================
[2026-06-19 07:32:44,966.966 INFO    ] Launching Daemon at Fri Jun 19 07:32:44 IST 2026
[2026-06-19 07:32:44,977.977 INFO    ] ================================================
[2026-06-19 07:32:45,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:32:45
[2026-06-19 07:32:46,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:32:46,627.627 INFO    ] Initializing speech engine...
[2026-06-19 07:32:46,636.636 INFO    ] 2026-06-19 07:32:46
[2026-06-19 07:32:46,923.923 INFO    ] 2026-06-19 07:32:46
[2026-06-19 07:32:46,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:32:47,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:32:47,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:32:47,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:32:47,459.459 INFO    ] time= 19/06/2026 07:32:47
[2026-06-19 07:32:47,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:32:47,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:32:47,600.600 INFO    ] No existing commands found in stream
[2026-06-19 07:32:52,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:32:52,629.629 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 07:32:54,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:32:54,015.015 INFO    ] Checking for system updates...
[2026-06-19 07:32:54,057.057 INFO    ] 200
[2026-06-19 07:32:54,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:54,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:32:54,117.117 INFO    ] No update needed
[2026-06-19 07:32:54,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 07:32:54,153.153 INFO    ] 200
[2026-06-19 07:32:54,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:32:54,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:32:54,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:32:54,238.238 INFO    ] No camera update needed
[2026-06-19 07:32:54,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:32:54,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:32:54,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:32:54,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:32:56,296.296 INFO    ] ================================================
[2026-06-19 07:32:56,311.311 INFO    ] Launching Daemon at Fri Jun 19 07:32:56 IST 2026
[2026-06-19 07:32:56,321.321 INFO    ] ================================================
[2026-06-19 07:32:56,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:32:56
[2026-06-19 07:32:57,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:32:57,776.776 INFO    ] Initializing speech engine...
[2026-06-19 07:32:57,785.785 INFO    ] 2026-06-19 07:32:57
[2026-06-19 07:32:58,047.047 INFO    ] 2026-06-19 07:32:58
[2026-06-19 07:32:58,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:32:58,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:32:58,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:32:58,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:32:58,517.517 INFO    ] time= 19/06/2026 07:32:58
[2026-06-19 07:32:58,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:32:58,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:32:58,657.657 INFO    ] No existing commands found in stream
[2026-06-19 07:33:03,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:33:03,670.670 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 07:33:06,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:33:06,854.854 INFO    ] Checking for system updates...
[2026-06-19 07:33:06,893.893 INFO    ] 200
[2026-06-19 07:33:06,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:06,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:33:06,951.951 INFO    ] No update needed
[2026-06-19 07:33:06,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 07:33:06,988.988 INFO    ] 200
[2026-06-19 07:33:06,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:07,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:33:07,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:33:07,073.073 INFO    ] No camera update needed
[2026-06-19 07:33:07,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:33:07,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:33:07,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:33:07,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:33:09,128.128 INFO    ] ================================================
[2026-06-19 07:33:09,143.143 INFO    ] Launching Daemon at Fri Jun 19 07:33:09 IST 2026
[2026-06-19 07:33:09,153.153 INFO    ] ================================================
[2026-06-19 07:33:09,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:33:09
[2026-06-19 07:33:10,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:33:10,563.563 INFO    ] Initializing speech engine...
[2026-06-19 07:33:10,570.570 INFO    ] 2026-06-19 07:33:10
[2026-06-19 07:33:10,846.846 INFO    ] 2026-06-19 07:33:10
[2026-06-19 07:33:10,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:33:11,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:33:11,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:33:11,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:33:11,227.227 INFO    ] time= 19/06/2026 07:33:11
[2026-06-19 07:33:11,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:33:11,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:33:11,394.394 INFO    ] No existing commands found in stream
[2026-06-19 07:33:16,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:33:16,428.428 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 07:33:17,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:33:17,905.905 INFO    ] Checking for system updates...
[2026-06-19 07:33:17,941.941 INFO    ] 200
[2026-06-19 07:33:17,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:18,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:33:18,004.004 INFO    ] No update needed
[2026-06-19 07:33:18,007.007 INFO    ] Checking for camera pi updates...
[2026-06-19 07:33:18,043.043 INFO    ] 200
[2026-06-19 07:33:18,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:18,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:33:18,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:33:18,132.132 INFO    ] No camera update needed
[2026-06-19 07:33:18,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:33:18,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:33:18,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:33:18,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:33:20,189.189 INFO    ] ================================================
[2026-06-19 07:33:20,204.204 INFO    ] Launching Daemon at Fri Jun 19 07:33:20 IST 2026
[2026-06-19 07:33:20,215.215 INFO    ] ================================================
[2026-06-19 07:33:20,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:33:20
[2026-06-19 07:33:21,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:33:21,675.675 INFO    ] Initializing speech engine...
[2026-06-19 07:33:21,684.684 INFO    ] 2026-06-19 07:33:21
[2026-06-19 07:33:21,929.929 INFO    ] 2026-06-19 07:33:21
[2026-06-19 07:33:21,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:33:22,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:33:22,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:33:22,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:33:22,396.396 INFO    ] time= 19/06/2026 07:33:22
[2026-06-19 07:33:22,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:33:22,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:33:22,627.627 INFO    ] No existing commands found in stream
[2026-06-19 07:33:27,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:33:27,654.654 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 07:33:29,977.977 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:33:29,980.980 INFO    ] Checking for system updates...
[2026-06-19 07:33:30,017.017 INFO    ] 200
[2026-06-19 07:33:30,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:30,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:33:30,076.076 INFO    ] No update needed
[2026-06-19 07:33:30,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 07:33:30,116.116 INFO    ] 200
[2026-06-19 07:33:30,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:30,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:33:30,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:33:30,214.214 INFO    ] No camera update needed
[2026-06-19 07:33:30,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:33:30,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:33:30,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:33:30,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:33:32,275.275 INFO    ] ================================================
[2026-06-19 07:33:32,292.292 INFO    ] Launching Daemon at Fri Jun 19 07:33:32 IST 2026
[2026-06-19 07:33:32,304.304 INFO    ] ================================================
[2026-06-19 07:33:32,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:33:32
[2026-06-19 07:33:33,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:33:33,916.916 INFO    ] Initializing speech engine...
[2026-06-19 07:33:33,931.931 INFO    ] 2026-06-19 07:33:33
[2026-06-19 07:33:34,213.213 INFO    ] 2026-06-19 07:33:34
[2026-06-19 07:33:34,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:33:34,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:33:34,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:33:34,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:33:34,637.637 INFO    ] time= 19/06/2026 07:33:34
[2026-06-19 07:33:34,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:33:34,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:33:34,811.811 INFO    ] No existing commands found in stream
[2026-06-19 07:33:39,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:33:39,834.834 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 07:33:41,268.268 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:33:41,271.271 INFO    ] Checking for system updates...
[2026-06-19 07:33:41,309.309 INFO    ] 200
[2026-06-19 07:33:41,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:41,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:33:41,369.369 INFO    ] No update needed
[2026-06-19 07:33:41,372.372 INFO    ] Checking for camera pi updates...
[2026-06-19 07:33:41,407.407 INFO    ] 200
[2026-06-19 07:33:41,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:41,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:33:41,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:33:41,585.585 INFO    ] No camera update needed
[2026-06-19 07:33:41,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:33:41,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:33:41,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:33:41,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:33:43,650.650 INFO    ] ================================================
[2026-06-19 07:33:43,666.666 INFO    ] Launching Daemon at Fri Jun 19 07:33:43 IST 2026
[2026-06-19 07:33:43,677.677 INFO    ] ================================================
[2026-06-19 07:33:44,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:33:44
[2026-06-19 07:33:44,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:33:45,079.079 INFO    ] Initializing speech engine...
[2026-06-19 07:33:45,091.091 INFO    ] 2026-06-19 07:33:45
[2026-06-19 07:33:45,356.356 INFO    ] 2026-06-19 07:33:45
[2026-06-19 07:33:45,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:33:45,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:33:45,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:33:45,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:33:45,834.834 INFO    ] time= 19/06/2026 07:33:45
[2026-06-19 07:33:45,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:33:45,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:33:45,979.979 INFO    ] No existing commands found in stream
[2026-06-19 07:33:50,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:33:50,994.994 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 07:33:52,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:33:52,804.804 INFO    ] Checking for system updates...
[2026-06-19 07:33:52,848.848 INFO    ] 200
[2026-06-19 07:33:52,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:52,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:33:52,919.919 INFO    ] No update needed
[2026-06-19 07:33:52,921.921 INFO    ] Checking for camera pi updates...
[2026-06-19 07:33:52,958.958 INFO    ] 200
[2026-06-19 07:33:52,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:33:53,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:33:53,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:33:53,048.048 INFO    ] No camera update needed
[2026-06-19 07:33:53,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:33:53,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:33:53,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:33:53,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:33:55,103.103 INFO    ] ================================================
[2026-06-19 07:33:55,119.119 INFO    ] Launching Daemon at Fri Jun 19 07:33:55 IST 2026
[2026-06-19 07:33:55,131.131 INFO    ] ================================================
[2026-06-19 07:33:55,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:33:55
[2026-06-19 07:33:56,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:33:56,714.714 INFO    ] Initializing speech engine...
[2026-06-19 07:33:56,723.723 INFO    ] 2026-06-19 07:33:56
[2026-06-19 07:33:57,054.054 INFO    ] 2026-06-19 07:33:57
[2026-06-19 07:33:57,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:33:57,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:33:57,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:33:57,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:33:57,575.575 INFO    ] time= 19/06/2026 07:33:57
[2026-06-19 07:33:57,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:33:57,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:33:57,704.704 INFO    ] No existing commands found in stream
[2026-06-19 07:34:02,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:34:02,741.741 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 07:34:03,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:34:03,778.778 INFO    ] Checking for system updates...
[2026-06-19 07:34:03,815.815 INFO    ] 200
[2026-06-19 07:34:03,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:03,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:34:03,872.872 INFO    ] No update needed
[2026-06-19 07:34:03,876.876 INFO    ] Checking for camera pi updates...
[2026-06-19 07:34:03,910.910 INFO    ] 200
[2026-06-19 07:34:03,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:03,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:34:04,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:34:04,008.008 INFO    ] No camera update needed
[2026-06-19 07:34:04,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:34:04,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:34:04,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:34:04,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:34:06,063.063 INFO    ] ================================================
[2026-06-19 07:34:06,080.080 INFO    ] Launching Daemon at Fri Jun 19 07:34:06 IST 2026
[2026-06-19 07:34:06,091.091 INFO    ] ================================================
[2026-06-19 07:34:06,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:34:06
[2026-06-19 07:34:07,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:34:07,537.537 INFO    ] Initializing speech engine...
[2026-06-19 07:34:07,547.547 INFO    ] 2026-06-19 07:34:07
[2026-06-19 07:34:07,799.799 INFO    ] 2026-06-19 07:34:07
[2026-06-19 07:34:07,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:34:08,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:34:08,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:34:08,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:34:08,293.293 INFO    ] time= 19/06/2026 07:34:08
[2026-06-19 07:34:08,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:34:08,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:34:08,456.456 INFO    ] No existing commands found in stream
[2026-06-19 07:34:13,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:34:13,470.470 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 07:34:15,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:34:15,831.831 INFO    ] Checking for system updates...
[2026-06-19 07:34:15,867.867 INFO    ] 200
[2026-06-19 07:34:15,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:15,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:34:15,926.926 INFO    ] No update needed
[2026-06-19 07:34:15,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 07:34:15,966.966 INFO    ] 200
[2026-06-19 07:34:15,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:16,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:34:16,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:34:16,062.062 INFO    ] No camera update needed
[2026-06-19 07:34:16,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:34:16,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:34:16,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:34:16,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:34:18,120.120 INFO    ] ================================================
[2026-06-19 07:34:18,135.135 INFO    ] Launching Daemon at Fri Jun 19 07:34:18 IST 2026
[2026-06-19 07:34:18,146.146 INFO    ] ================================================
[2026-06-19 07:34:18,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:34:18
[2026-06-19 07:34:19,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:34:19,752.752 INFO    ] Initializing speech engine...
[2026-06-19 07:34:19,761.761 INFO    ] 2026-06-19 07:34:19
[2026-06-19 07:34:20,047.047 INFO    ] 2026-06-19 07:34:20
[2026-06-19 07:34:20,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:34:20,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:34:20,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:34:20,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:34:20,510.510 INFO    ] time= 19/06/2026 07:34:20
[2026-06-19 07:34:20,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:34:20,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:34:20,647.647 INFO    ] No existing commands found in stream
[2026-06-19 07:34:25,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:34:25,662.662 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 07:34:28,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:34:28,861.861 INFO    ] Checking for system updates...
[2026-06-19 07:34:28,902.902 INFO    ] 200
[2026-06-19 07:34:28,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:28,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:34:28,966.966 INFO    ] No update needed
[2026-06-19 07:34:28,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 07:34:29,004.004 INFO    ] 200
[2026-06-19 07:34:29,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:29,053.053 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:34:29,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:34:29,105.105 INFO    ] No camera update needed
[2026-06-19 07:34:29,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:34:29,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:34:29,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:34:29,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:34:31,164.164 INFO    ] ================================================
[2026-06-19 07:34:31,179.179 INFO    ] Launching Daemon at Fri Jun 19 07:34:31 IST 2026
[2026-06-19 07:34:31,191.191 INFO    ] ================================================
[2026-06-19 07:34:31,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:34:31
[2026-06-19 07:34:32,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:34:32,719.719 INFO    ] Initializing speech engine...
[2026-06-19 07:34:32,728.728 INFO    ] 2026-06-19 07:34:32
[2026-06-19 07:34:33,001.001 INFO    ] 2026-06-19 07:34:32
[2026-06-19 07:34:33,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:34:33,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:34:33,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:34:33,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:34:33,471.471 INFO    ] time= 19/06/2026 07:34:33
[2026-06-19 07:34:33,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:34:33,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:34:33,729.729 INFO    ] No existing commands found in stream
[2026-06-19 07:34:38,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:34:38,763.763 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 07:34:43,094.094 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:34:43,097.097 INFO    ] Checking for system updates...
[2026-06-19 07:34:43,134.134 INFO    ] 200
[2026-06-19 07:34:43,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:43,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:34:43,194.194 INFO    ] No update needed
[2026-06-19 07:34:43,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 07:34:43,232.232 INFO    ] 200
[2026-06-19 07:34:43,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:43,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:34:43,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:34:43,326.326 INFO    ] No camera update needed
[2026-06-19 07:34:43,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:34:43,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:34:43,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:34:43,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:34:45,383.383 INFO    ] ================================================
[2026-06-19 07:34:45,400.400 INFO    ] Launching Daemon at Fri Jun 19 07:34:45 IST 2026
[2026-06-19 07:34:45,411.411 INFO    ] ================================================
[2026-06-19 07:34:45,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:34:45
[2026-06-19 07:34:46,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:34:46,865.865 INFO    ] Initializing speech engine...
[2026-06-19 07:34:46,870.870 INFO    ] 2026-06-19 07:34:46
[2026-06-19 07:34:47,133.133 INFO    ] 2026-06-19 07:34:47
[2026-06-19 07:34:47,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:34:47,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:34:47,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:34:47,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:34:47,684.684 INFO    ] time= 19/06/2026 07:34:47
[2026-06-19 07:34:47,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:34:47,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:34:47,796.796 INFO    ] No existing commands found in stream
[2026-06-19 07:34:52,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:34:52,809.809 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 07:34:56,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:34:56,482.482 INFO    ] Checking for system updates...
[2026-06-19 07:34:56,519.519 INFO    ] 200
[2026-06-19 07:34:56,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:56,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:34:56,578.578 INFO    ] No update needed
[2026-06-19 07:34:56,581.581 INFO    ] Checking for camera pi updates...
[2026-06-19 07:34:56,619.619 INFO    ] 200
[2026-06-19 07:34:56,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:34:56,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:34:56,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:34:56,712.712 INFO    ] No camera update needed
[2026-06-19 07:34:56,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:34:56,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:34:56,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:34:56,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:34:58,771.771 INFO    ] ================================================
[2026-06-19 07:34:58,787.787 INFO    ] Launching Daemon at Fri Jun 19 07:34:58 IST 2026
[2026-06-19 07:34:58,798.798 INFO    ] ================================================
[2026-06-19 07:34:59,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:34:59
[2026-06-19 07:34:59,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:35:00,249.249 INFO    ] Initializing speech engine...
[2026-06-19 07:35:00,256.256 INFO    ] 2026-06-19 07:35:00
[2026-06-19 07:35:00,515.515 INFO    ] 2026-06-19 07:35:00
[2026-06-19 07:35:00,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:35:00,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:35:00,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:35:00,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:35:00,978.978 INFO    ] time= 19/06/2026 07:35:00
[2026-06-19 07:35:01,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:35:01,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:35:01,139.139 INFO    ] No existing commands found in stream
[2026-06-19 07:35:06,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:35:06,179.179 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 07:35:06,887.887 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:35:06,890.890 INFO    ] Checking for system updates...
[2026-06-19 07:35:06,941.941 INFO    ] 200
[2026-06-19 07:35:06,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:07,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:35:07,004.004 INFO    ] No update needed
[2026-06-19 07:35:07,007.007 INFO    ] Checking for camera pi updates...
[2026-06-19 07:35:07,043.043 INFO    ] 200
[2026-06-19 07:35:07,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:07,087.087 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:35:07,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:35:07,128.128 INFO    ] No camera update needed
[2026-06-19 07:35:07,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:35:07,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:35:07,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:35:07,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:35:09,184.184 INFO    ] ================================================
[2026-06-19 07:35:09,200.200 INFO    ] Launching Daemon at Fri Jun 19 07:35:09 IST 2026
[2026-06-19 07:35:09,212.212 INFO    ] ================================================
[2026-06-19 07:35:09,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:35:09
[2026-06-19 07:35:10,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:35:10,623.623 INFO    ] Initializing speech engine...
[2026-06-19 07:35:10,636.636 INFO    ] 2026-06-19 07:35:10
[2026-06-19 07:35:10,904.904 INFO    ] 2026-06-19 07:35:10
[2026-06-19 07:35:10,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:35:11,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:35:11,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:35:11,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:35:11,259.259 INFO    ] time= 19/06/2026 07:35:11
[2026-06-19 07:35:11,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:35:11,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:35:11,359.359 INFO    ] No existing commands found in stream
[2026-06-19 07:35:16,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:35:16,388.388 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 07:35:18,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:35:18,564.564 INFO    ] Checking for system updates...
[2026-06-19 07:35:18,604.604 INFO    ] 200
[2026-06-19 07:35:18,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:18,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:35:18,661.661 INFO    ] No update needed
[2026-06-19 07:35:18,664.664 INFO    ] Checking for camera pi updates...
[2026-06-19 07:35:18,699.699 INFO    ] 200
[2026-06-19 07:35:18,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:18,741.741 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:35:18,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:35:18,789.789 INFO    ] No camera update needed
[2026-06-19 07:35:18,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:35:18,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:35:18,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:35:18,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:35:20,847.847 INFO    ] ================================================
[2026-06-19 07:35:20,863.863 INFO    ] Launching Daemon at Fri Jun 19 07:35:20 IST 2026
[2026-06-19 07:35:20,875.875 INFO    ] ================================================
[2026-06-19 07:35:21,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:35:21
[2026-06-19 07:35:22,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:35:22,489.489 INFO    ] Initializing speech engine...
[2026-06-19 07:35:22,501.501 INFO    ] 2026-06-19 07:35:22
[2026-06-19 07:35:22,781.781 INFO    ] 2026-06-19 07:35:22
[2026-06-19 07:35:22,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:35:23,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:35:23,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:35:23,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:35:23,237.237 INFO    ] time= 19/06/2026 07:35:23
[2026-06-19 07:35:23,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:35:23,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:35:23,393.393 INFO    ] No existing commands found in stream
[2026-06-19 07:35:28,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:35:28,409.409 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 07:35:29,982.982 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:35:29,985.985 INFO    ] Checking for system updates...
[2026-06-19 07:35:30,022.022 INFO    ] 200
[2026-06-19 07:35:30,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:30,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:35:30,086.086 INFO    ] No update needed
[2026-06-19 07:35:30,089.089 INFO    ] Checking for camera pi updates...
[2026-06-19 07:35:30,124.124 INFO    ] 200
[2026-06-19 07:35:30,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:30,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:35:30,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:35:30,220.220 INFO    ] No camera update needed
[2026-06-19 07:35:30,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:35:30,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:35:30,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:35:30,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:35:32,283.283 INFO    ] ================================================
[2026-06-19 07:35:32,310.310 INFO    ] Launching Daemon at Fri Jun 19 07:35:32 IST 2026
[2026-06-19 07:35:32,328.328 INFO    ] ================================================
[2026-06-19 07:35:32,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:35:32
[2026-06-19 07:35:33,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:35:33,865.865 INFO    ] Initializing speech engine...
[2026-06-19 07:35:33,876.876 INFO    ] 2026-06-19 07:35:33
[2026-06-19 07:35:34,168.168 INFO    ] 2026-06-19 07:35:34
[2026-06-19 07:35:34,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:35:34,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:35:34,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:35:34,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:35:34,623.623 INFO    ] time= 19/06/2026 07:35:34
[2026-06-19 07:35:34,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:35:34,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:35:34,769.769 INFO    ] No existing commands found in stream
[2026-06-19 07:35:39,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:35:39,784.784 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 07:35:41,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:35:41,049.049 INFO    ] Checking for system updates...
[2026-06-19 07:35:41,085.085 INFO    ] 200
[2026-06-19 07:35:41,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:41,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:35:41,150.150 INFO    ] No update needed
[2026-06-19 07:35:41,153.153 INFO    ] Checking for camera pi updates...
[2026-06-19 07:35:41,190.190 INFO    ] 200
[2026-06-19 07:35:41,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:41,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:35:41,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:35:41,280.280 INFO    ] No camera update needed
[2026-06-19 07:35:41,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:35:41,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:35:41,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:35:41,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:35:43,340.340 INFO    ] ================================================
[2026-06-19 07:35:43,356.356 INFO    ] Launching Daemon at Fri Jun 19 07:35:43 IST 2026
[2026-06-19 07:35:43,367.367 INFO    ] ================================================
[2026-06-19 07:35:43,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:35:43
[2026-06-19 07:35:44,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:35:44,857.857 INFO    ] Initializing speech engine...
[2026-06-19 07:35:44,864.864 INFO    ] 2026-06-19 07:35:44
[2026-06-19 07:35:45,137.137 INFO    ] 2026-06-19 07:35:45
[2026-06-19 07:35:45,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:35:45,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:35:45,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:35:45,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:35:45,622.622 INFO    ] time= 19/06/2026 07:35:45
[2026-06-19 07:35:45,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:35:45,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:35:45,767.767 INFO    ] No existing commands found in stream
[2026-06-19 07:35:50,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:35:50,782.782 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 07:35:55,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:35:55,014.014 INFO    ] Checking for system updates...
[2026-06-19 07:35:55,059.059 INFO    ] 200
[2026-06-19 07:35:55,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:55,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:35:55,132.132 INFO    ] No update needed
[2026-06-19 07:35:55,135.135 INFO    ] Checking for camera pi updates...
[2026-06-19 07:35:55,173.173 INFO    ] 200
[2026-06-19 07:35:55,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:35:55,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:35:55,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:35:55,376.376 INFO    ] No camera update needed
[2026-06-19 07:35:55,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:35:55,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:35:55,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:35:55,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:35:57,435.435 INFO    ] ================================================
[2026-06-19 07:35:57,452.452 INFO    ] Launching Daemon at Fri Jun 19 07:35:57 IST 2026
[2026-06-19 07:35:57,463.463 INFO    ] ================================================
[2026-06-19 07:35:58,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:35:58
[2026-06-19 07:35:58,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:35:58,930.930 INFO    ] Initializing speech engine...
[2026-06-19 07:35:58,939.939 INFO    ] 2026-06-19 07:35:58
[2026-06-19 07:35:59,243.243 INFO    ] 2026-06-19 07:35:59
[2026-06-19 07:35:59,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:35:59,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:35:59,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:35:59,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:35:59,632.632 INFO    ] time= 19/06/2026 07:35:59
[2026-06-19 07:35:59,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:35:59,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:35:59,763.763 INFO    ] No existing commands found in stream
[2026-06-19 07:36:04,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:36:04,779.779 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 07:36:06,425.425 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:36:06,428.428 INFO    ] Checking for system updates...
[2026-06-19 07:36:06,464.464 INFO    ] 200
[2026-06-19 07:36:06,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:06,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:36:06,522.522 INFO    ] No update needed
[2026-06-19 07:36:06,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 07:36:06,558.558 INFO    ] 200
[2026-06-19 07:36:06,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:06,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:36:06,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:36:06,647.647 INFO    ] No camera update needed
[2026-06-19 07:36:06,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:36:06,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:36:06,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:36:06,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:36:08,703.703 INFO    ] ================================================
[2026-06-19 07:36:08,718.718 INFO    ] Launching Daemon at Fri Jun 19 07:36:08 IST 2026
[2026-06-19 07:36:08,729.729 INFO    ] ================================================
[2026-06-19 07:36:09,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:36:09
[2026-06-19 07:36:09,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:36:10,191.191 INFO    ] Initializing speech engine...
[2026-06-19 07:36:10,197.197 INFO    ] 2026-06-19 07:36:10
[2026-06-19 07:36:10,446.446 INFO    ] 2026-06-19 07:36:10
[2026-06-19 07:36:10,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:36:10,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:36:10,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:36:10,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:36:10,944.944 INFO    ] time= 19/06/2026 07:36:10
[2026-06-19 07:36:11,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:36:11,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:36:11,142.142 INFO    ] No existing commands found in stream
[2026-06-19 07:36:16,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:36:16,169.169 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 07:36:18,946.946 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:36:18,948.948 INFO    ] Checking for system updates...
[2026-06-19 07:36:18,985.985 INFO    ] 200
[2026-06-19 07:36:18,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:19,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:36:19,044.044 INFO    ] No update needed
[2026-06-19 07:36:19,047.047 INFO    ] Checking for camera pi updates...
[2026-06-19 07:36:19,084.084 INFO    ] 200
[2026-06-19 07:36:19,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:19,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:36:19,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:36:19,181.181 INFO    ] No camera update needed
[2026-06-19 07:36:19,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:36:19,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:36:19,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:36:19,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:36:21,240.240 INFO    ] ================================================
[2026-06-19 07:36:21,256.256 INFO    ] Launching Daemon at Fri Jun 19 07:36:21 IST 2026
[2026-06-19 07:36:21,267.267 INFO    ] ================================================
[2026-06-19 07:36:21,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:36:21
[2026-06-19 07:36:22,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:36:22,962.962 INFO    ] Initializing speech engine...
[2026-06-19 07:36:22,974.974 INFO    ] 2026-06-19 07:36:22
[2026-06-19 07:36:23,263.263 INFO    ] 2026-06-19 07:36:23
[2026-06-19 07:36:23,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:36:23,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:36:23,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:36:23,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:36:23,732.732 INFO    ] time= 19/06/2026 07:36:23
[2026-06-19 07:36:23,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:36:23,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:36:23,923.923 INFO    ] No existing commands found in stream
[2026-06-19 07:36:28,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:36:28,959.959 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 07:36:32,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:36:32,662.662 INFO    ] Checking for system updates...
[2026-06-19 07:36:32,708.708 INFO    ] 200
[2026-06-19 07:36:32,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:32,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:36:32,778.778 INFO    ] No update needed
[2026-06-19 07:36:32,781.781 INFO    ] Checking for camera pi updates...
[2026-06-19 07:36:32,820.820 INFO    ] 200
[2026-06-19 07:36:32,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:32,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:36:32,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:36:32,909.909 INFO    ] No camera update needed
[2026-06-19 07:36:32,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:36:32,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:36:32,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:36:32,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:36:34,970.970 INFO    ] ================================================
[2026-06-19 07:36:34,986.986 INFO    ] Launching Daemon at Fri Jun 19 07:36:34 IST 2026
[2026-06-19 07:36:35,997.997 INFO    ] ================================================
[2026-06-19 07:36:35,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:36:35
[2026-06-19 07:36:36,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:36:36,691.691 INFO    ] Initializing speech engine...
[2026-06-19 07:36:36,705.705 INFO    ] 2026-06-19 07:36:36
[2026-06-19 07:36:37,020.020 INFO    ] 2026-06-19 07:36:36
[2026-06-19 07:36:37,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:36:37,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:36:37,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:36:37,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:36:37,528.528 INFO    ] time= 19/06/2026 07:36:37
[2026-06-19 07:36:37,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:36:37,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:36:37,683.683 INFO    ] No existing commands found in stream
[2026-06-19 07:36:42,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:36:42,709.709 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 07:36:44,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:36:44,486.486 INFO    ] Checking for system updates...
[2026-06-19 07:36:44,523.523 INFO    ] 200
[2026-06-19 07:36:44,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:44,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:36:44,583.583 INFO    ] No update needed
[2026-06-19 07:36:44,586.586 INFO    ] Checking for camera pi updates...
[2026-06-19 07:36:44,621.621 INFO    ] 200
[2026-06-19 07:36:44,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:44,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:36:44,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:36:44,716.716 INFO    ] No camera update needed
[2026-06-19 07:36:44,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:36:44,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:36:44,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:36:44,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:36:46,776.776 INFO    ] ================================================
[2026-06-19 07:36:46,792.792 INFO    ] Launching Daemon at Fri Jun 19 07:36:46 IST 2026
[2026-06-19 07:36:46,804.804 INFO    ] ================================================
[2026-06-19 07:36:47,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:36:47
[2026-06-19 07:36:48,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:36:48,442.442 INFO    ] Initializing speech engine...
[2026-06-19 07:36:48,453.453 INFO    ] 2026-06-19 07:36:48
[2026-06-19 07:36:48,744.744 INFO    ] 2026-06-19 07:36:48
[2026-06-19 07:36:48,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:36:49,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:36:49,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:36:49,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:36:49,279.279 INFO    ] time= 19/06/2026 07:36:49
[2026-06-19 07:36:49,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:36:49,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:36:49,425.425 INFO    ] No existing commands found in stream
[2026-06-19 07:36:54,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:36:54,450.450 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 07:36:56,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:36:56,887.887 INFO    ] Checking for system updates...
[2026-06-19 07:36:56,924.924 INFO    ] 200
[2026-06-19 07:36:56,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:56,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:36:56,992.992 INFO    ] No update needed
[2026-06-19 07:36:56,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 07:36:57,030.030 INFO    ] 200
[2026-06-19 07:36:57,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:36:57,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:36:57,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:36:57,123.123 INFO    ] No camera update needed
[2026-06-19 07:36:57,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:36:57,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:36:57,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:36:57,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:36:59,185.185 INFO    ] ================================================
[2026-06-19 07:36:59,201.201 INFO    ] Launching Daemon at Fri Jun 19 07:36:59 IST 2026
[2026-06-19 07:36:59,211.211 INFO    ] ================================================
[2026-06-19 07:36:59,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:36:59
[2026-06-19 07:37:00,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:37:00,634.634 INFO    ] Initializing speech engine...
[2026-06-19 07:37:00,643.643 INFO    ] 2026-06-19 07:37:00
[2026-06-19 07:37:00,888.888 INFO    ] 2026-06-19 07:37:00
[2026-06-19 07:37:00,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:37:01,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:37:01,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:37:01,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:37:01,369.369 INFO    ] time= 19/06/2026 07:37:01
[2026-06-19 07:37:01,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:37:01,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:37:01,514.514 INFO    ] No existing commands found in stream
[2026-06-19 07:37:06,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:37:06,549.549 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 07:37:07,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:37:07,822.822 INFO    ] Checking for system updates...
[2026-06-19 07:37:07,860.860 INFO    ] 200
[2026-06-19 07:37:07,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:07,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:37:07,919.919 INFO    ] No update needed
[2026-06-19 07:37:07,922.922 INFO    ] Checking for camera pi updates...
[2026-06-19 07:37:07,959.959 INFO    ] 200
[2026-06-19 07:37:07,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:08,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:37:08,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:37:08,053.053 INFO    ] No camera update needed
[2026-06-19 07:37:08,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:37:08,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:37:08,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:37:08,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:37:10,113.113 INFO    ] ================================================
[2026-06-19 07:37:10,128.128 INFO    ] Launching Daemon at Fri Jun 19 07:37:10 IST 2026
[2026-06-19 07:37:10,138.138 INFO    ] ================================================
[2026-06-19 07:37:10,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:37:10
[2026-06-19 07:37:11,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:37:11,545.545 INFO    ] Initializing speech engine...
[2026-06-19 07:37:11,566.566 INFO    ] 2026-06-19 07:37:11
[2026-06-19 07:37:11,832.832 INFO    ] 2026-06-19 07:37:11
[2026-06-19 07:37:11,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:37:12,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:37:12,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:37:12,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:37:12,210.210 INFO    ] time= 19/06/2026 07:37:12
[2026-06-19 07:37:12,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:37:12,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:37:12,371.371 INFO    ] No existing commands found in stream
[2026-06-19 07:37:17,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:37:17,399.399 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 07:37:21,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:37:21,193.193 INFO    ] Checking for system updates...
[2026-06-19 07:37:21,228.228 INFO    ] 200
[2026-06-19 07:37:21,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:21,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:37:21,290.290 INFO    ] No update needed
[2026-06-19 07:37:21,292.292 INFO    ] Checking for camera pi updates...
[2026-06-19 07:37:21,326.326 INFO    ] 200
[2026-06-19 07:37:21,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:21,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:37:21,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:37:21,414.414 INFO    ] No camera update needed
[2026-06-19 07:37:21,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:37:21,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:37:21,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:37:21,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:37:23,468.468 INFO    ] ================================================
[2026-06-19 07:37:23,484.484 INFO    ] Launching Daemon at Fri Jun 19 07:37:23 IST 2026
[2026-06-19 07:37:23,495.495 INFO    ] ================================================
[2026-06-19 07:37:24,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:37:24
[2026-06-19 07:37:24,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:37:24,965.965 INFO    ] Initializing speech engine...
[2026-06-19 07:37:24,974.974 INFO    ] 2026-06-19 07:37:24
[2026-06-19 07:37:25,223.223 INFO    ] 2026-06-19 07:37:25
[2026-06-19 07:37:25,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:37:25,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:37:25,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:37:25,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:37:25,696.696 INFO    ] time= 19/06/2026 07:37:25
[2026-06-19 07:37:25,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:37:25,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:37:25,863.863 INFO    ] No existing commands found in stream
[2026-06-19 07:37:30,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:37:30,902.902 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 07:37:33,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:37:33,646.646 INFO    ] Checking for system updates...
[2026-06-19 07:37:33,683.683 INFO    ] 200
[2026-06-19 07:37:33,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:33,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:37:33,742.742 INFO    ] No update needed
[2026-06-19 07:37:33,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 07:37:33,779.779 INFO    ] 200
[2026-06-19 07:37:33,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:33,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:37:33,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:37:33,887.887 INFO    ] No camera update needed
[2026-06-19 07:37:33,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:37:33,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:37:33,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:37:33,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:37:35,941.941 INFO    ] ================================================
[2026-06-19 07:37:35,956.956 INFO    ] Launching Daemon at Fri Jun 19 07:37:35 IST 2026
[2026-06-19 07:37:35,967.967 INFO    ] ================================================
[2026-06-19 07:37:36,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:37:36
[2026-06-19 07:37:37,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:37:37,429.429 INFO    ] Initializing speech engine...
[2026-06-19 07:37:37,436.436 INFO    ] 2026-06-19 07:37:37
[2026-06-19 07:37:37,684.684 INFO    ] 2026-06-19 07:37:37
[2026-06-19 07:37:37,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:37:37,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:37:37,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:37:38,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:37:38,166.166 INFO    ] time= 19/06/2026 07:37:38
[2026-06-19 07:37:38,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:37:38,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:37:38,305.305 INFO    ] No existing commands found in stream
[2026-06-19 07:37:43,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:37:43,320.320 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 07:37:44,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:37:44,453.453 INFO    ] Checking for system updates...
[2026-06-19 07:37:44,490.490 INFO    ] 200
[2026-06-19 07:37:44,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:44,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:37:44,547.547 INFO    ] No update needed
[2026-06-19 07:37:44,550.550 INFO    ] Checking for camera pi updates...
[2026-06-19 07:37:44,583.583 INFO    ] 200
[2026-06-19 07:37:44,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:44,627.627 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:37:44,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:37:44,672.672 INFO    ] No camera update needed
[2026-06-19 07:37:44,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:37:44,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:37:44,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:37:44,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:37:46,729.729 INFO    ] ================================================
[2026-06-19 07:37:46,744.744 INFO    ] Launching Daemon at Fri Jun 19 07:37:46 IST 2026
[2026-06-19 07:37:46,755.755 INFO    ] ================================================
[2026-06-19 07:37:47,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:37:47
[2026-06-19 07:37:48,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:37:48,398.398 INFO    ] Initializing speech engine...
[2026-06-19 07:37:48,411.411 INFO    ] 2026-06-19 07:37:48
[2026-06-19 07:37:48,661.661 INFO    ] 2026-06-19 07:37:48
[2026-06-19 07:37:48,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:37:48,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:37:48,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:37:49,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:37:49,130.130 INFO    ] time= 19/06/2026 07:37:49
[2026-06-19 07:37:49,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:37:49,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:37:49,266.266 INFO    ] No existing commands found in stream
[2026-06-19 07:37:54,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:37:54,281.281 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 07:37:58,298.298 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:37:58,301.301 INFO    ] Checking for system updates...
[2026-06-19 07:37:58,337.337 INFO    ] 200
[2026-06-19 07:37:58,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:58,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:37:58,394.394 INFO    ] No update needed
[2026-06-19 07:37:58,397.397 INFO    ] Checking for camera pi updates...
[2026-06-19 07:37:58,431.431 INFO    ] 200
[2026-06-19 07:37:58,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:37:58,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:37:58,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:37:58,624.624 INFO    ] No camera update needed
[2026-06-19 07:37:58,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:37:58,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:37:58,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:37:58,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:38:00,679.679 INFO    ] ================================================
[2026-06-19 07:38:00,695.695 INFO    ] Launching Daemon at Fri Jun 19 07:38:00 IST 2026
[2026-06-19 07:38:00,705.705 INFO    ] ================================================
[2026-06-19 07:38:01,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:38:01
[2026-06-19 07:38:01,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:38:02,557.557 INFO    ] Initializing speech engine...
[2026-06-19 07:38:02,571.571 INFO    ] 2026-06-19 07:38:02
[2026-06-19 07:38:03,017.017 INFO    ] 2026-06-19 07:38:02
[2026-06-19 07:38:03,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:38:03,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:38:03,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:38:03,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:38:03,498.498 INFO    ] time= 19/06/2026 07:38:03
[2026-06-19 07:38:03,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:38:03,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:38:03,721.721 INFO    ] No existing commands found in stream
[2026-06-19 07:38:08,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:38:08,754.754 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 07:38:10,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:38:10,209.209 INFO    ] Checking for system updates...
[2026-06-19 07:38:10,248.248 INFO    ] 200
[2026-06-19 07:38:10,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:10,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:38:10,306.306 INFO    ] No update needed
[2026-06-19 07:38:10,308.308 INFO    ] Checking for camera pi updates...
[2026-06-19 07:38:10,345.345 INFO    ] 200
[2026-06-19 07:38:10,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:10,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:38:10,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:38:10,436.436 INFO    ] No camera update needed
[2026-06-19 07:38:10,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:38:10,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:38:10,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:38:10,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:38:12,491.491 INFO    ] ================================================
[2026-06-19 07:38:12,507.507 INFO    ] Launching Daemon at Fri Jun 19 07:38:12 IST 2026
[2026-06-19 07:38:12,517.517 INFO    ] ================================================
[2026-06-19 07:38:13,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:38:13
[2026-06-19 07:38:13,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:38:13,917.917 INFO    ] Initializing speech engine...
[2026-06-19 07:38:13,929.929 INFO    ] 2026-06-19 07:38:13
[2026-06-19 07:38:14,197.197 INFO    ] 2026-06-19 07:38:14
[2026-06-19 07:38:14,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:38:14,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:38:14,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:38:14,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:38:14,687.687 INFO    ] time= 19/06/2026 07:38:14
[2026-06-19 07:38:14,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:38:14,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:38:14,824.824 INFO    ] No existing commands found in stream
[2026-06-19 07:38:19,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:38:19,839.839 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 07:38:23,666.666 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:38:23,668.668 INFO    ] Checking for system updates...
[2026-06-19 07:38:23,705.705 INFO    ] 200
[2026-06-19 07:38:23,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:23,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:38:23,763.763 INFO    ] No update needed
[2026-06-19 07:38:23,765.765 INFO    ] Checking for camera pi updates...
[2026-06-19 07:38:23,799.799 INFO    ] 200
[2026-06-19 07:38:23,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:23,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:38:23,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:38:23,887.887 INFO    ] No camera update needed
[2026-06-19 07:38:23,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:38:23,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:38:23,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:38:23,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:38:25,946.946 INFO    ] ================================================
[2026-06-19 07:38:25,961.961 INFO    ] Launching Daemon at Fri Jun 19 07:38:25 IST 2026
[2026-06-19 07:38:25,972.972 INFO    ] ================================================
[2026-06-19 07:38:26,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:38:26
[2026-06-19 07:38:27,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:38:27,592.592 INFO    ] Initializing speech engine...
[2026-06-19 07:38:27,600.600 INFO    ] 2026-06-19 07:38:27
[2026-06-19 07:38:27,918.918 INFO    ] 2026-06-19 07:38:27
[2026-06-19 07:38:28,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:38:28,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:38:28,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:38:28,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:38:28,329.329 INFO    ] time= 19/06/2026 07:38:28
[2026-06-19 07:38:28,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:38:28,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:38:28,506.506 INFO    ] No existing commands found in stream
[2026-06-19 07:38:33,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:38:33,522.522 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 07:38:35,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:38:35,836.836 INFO    ] Checking for system updates...
[2026-06-19 07:38:35,877.877 INFO    ] 200
[2026-06-19 07:38:35,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:35,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:38:35,942.942 INFO    ] No update needed
[2026-06-19 07:38:35,945.945 INFO    ] Checking for camera pi updates...
[2026-06-19 07:38:35,981.981 INFO    ] 200
[2026-06-19 07:38:35,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:36,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:38:36,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:38:36,068.068 INFO    ] No camera update needed
[2026-06-19 07:38:36,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:38:36,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:38:36,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:38:36,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:38:38,129.129 INFO    ] ================================================
[2026-06-19 07:38:38,143.143 INFO    ] Launching Daemon at Fri Jun 19 07:38:38 IST 2026
[2026-06-19 07:38:38,155.155 INFO    ] ================================================
[2026-06-19 07:38:38,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:38:38
[2026-06-19 07:38:39,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:38:39,582.582 INFO    ] Initializing speech engine...
[2026-06-19 07:38:39,591.591 INFO    ] 2026-06-19 07:38:39
[2026-06-19 07:38:39,886.886 INFO    ] 2026-06-19 07:38:39
[2026-06-19 07:38:39,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:38:40,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:38:40,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:38:40,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:38:40,259.259 INFO    ] time= 19/06/2026 07:38:40
[2026-06-19 07:38:40,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:38:40,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:38:40,365.365 INFO    ] No existing commands found in stream
[2026-06-19 07:38:45,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:38:45,393.393 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 07:38:47,228.228 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:38:47,231.231 INFO    ] Checking for system updates...
[2026-06-19 07:38:47,267.267 INFO    ] 200
[2026-06-19 07:38:47,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:47,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:38:47,331.331 INFO    ] No update needed
[2026-06-19 07:38:47,333.333 INFO    ] Checking for camera pi updates...
[2026-06-19 07:38:47,371.371 INFO    ] 200
[2026-06-19 07:38:47,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:47,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:38:47,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:38:47,449.449 INFO    ] No camera update needed
[2026-06-19 07:38:47,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:38:47,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:38:47,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:38:47,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:38:49,506.506 INFO    ] ================================================
[2026-06-19 07:38:49,521.521 INFO    ] Launching Daemon at Fri Jun 19 07:38:49 IST 2026
[2026-06-19 07:38:49,532.532 INFO    ] ================================================
[2026-06-19 07:38:50,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:38:50
[2026-06-19 07:38:50,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:38:50,950.950 INFO    ] Initializing speech engine...
[2026-06-19 07:38:50,967.967 INFO    ] 2026-06-19 07:38:50
[2026-06-19 07:38:51,255.255 INFO    ] 2026-06-19 07:38:51
[2026-06-19 07:38:51,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:38:51,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:38:51,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:38:51,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:38:51,651.651 INFO    ] time= 19/06/2026 07:38:51
[2026-06-19 07:38:51,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:38:51,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:38:51,758.758 INFO    ] No existing commands found in stream
[2026-06-19 07:38:56,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:38:56,773.773 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 07:38:57,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:38:57,657.657 INFO    ] Checking for system updates...
[2026-06-19 07:38:57,693.693 INFO    ] 200
[2026-06-19 07:38:57,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:57,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:38:57,750.750 INFO    ] No update needed
[2026-06-19 07:38:57,753.753 INFO    ] Checking for camera pi updates...
[2026-06-19 07:38:57,787.787 INFO    ] 200
[2026-06-19 07:38:57,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:38:57,834.834 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:38:57,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:38:57,876.876 INFO    ] No camera update needed
[2026-06-19 07:38:57,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:38:57,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:38:57,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:38:57,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:38:59,933.933 INFO    ] ================================================
[2026-06-19 07:38:59,949.949 INFO    ] Launching Daemon at Fri Jun 19 07:38:59 IST 2026
[2026-06-19 07:38:59,961.961 INFO    ] ================================================
[2026-06-19 07:39:00,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:39:00
[2026-06-19 07:39:01,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:39:01,580.580 INFO    ] Initializing speech engine...
[2026-06-19 07:39:01,584.584 INFO    ] 2026-06-19 07:39:01
[2026-06-19 07:39:01,934.934 INFO    ] 2026-06-19 07:39:01
[2026-06-19 07:39:01,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:39:02,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:39:02,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:39:02,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:39:02,366.366 INFO    ] time= 19/06/2026 07:39:02
[2026-06-19 07:39:02,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:39:02,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:39:02,456.456 INFO    ] No existing commands found in stream
[2026-06-19 07:39:07,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:39:07,475.475 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 07:39:11,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:39:11,265.265 INFO    ] Checking for system updates...
[2026-06-19 07:39:11,302.302 INFO    ] 200
[2026-06-19 07:39:11,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:39:11,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:39:11,359.359 INFO    ] No update needed
[2026-06-19 07:39:11,362.362 INFO    ] Checking for camera pi updates...
[2026-06-19 07:39:11,395.395 INFO    ] 200
[2026-06-19 07:39:11,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:39:11,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:39:11,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:39:11,486.486 INFO    ] No camera update needed
[2026-06-19 07:39:11,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:39:11,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:39:11,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:39:11,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:39:13,542.542 INFO    ] ================================================
[2026-06-19 07:39:13,558.558 INFO    ] Launching Daemon at Fri Jun 19 07:39:13 IST 2026
[2026-06-19 07:39:13,568.568 INFO    ] ================================================
[2026-06-19 07:39:14,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:39:14
[2026-06-19 07:39:14,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:39:15,011.011 INFO    ] Initializing speech engine...
[2026-06-19 07:39:15,036.036 INFO    ] 2026-06-19 07:39:15
[2026-06-19 07:39:15,313.313 INFO    ] 2026-06-19 07:39:15
[2026-06-19 07:39:15,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:39:15,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:39:15,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:39:15,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:39:15,672.672 INFO    ] time= 19/06/2026 07:39:15
[2026-06-19 07:39:15,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:39:15,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:39:15,753.753 INFO    ] No existing commands found in stream
[2026-06-19 07:39:20,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:39:20,766.766 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 07:39:21,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:39:21,988.988 INFO    ] Checking for system updates...
[2026-06-19 07:39:22,028.028 INFO    ] 200
[2026-06-19 07:39:22,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:39:22,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:39:22,094.094 INFO    ] No update needed
[2026-06-19 07:39:22,097.097 INFO    ] Checking for camera pi updates...
[2026-06-19 07:39:22,131.131 INFO    ] 200
[2026-06-19 07:39:22,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:39:22,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:39:22,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:39:22,222.222 INFO    ] No camera update needed
[2026-06-19 07:39:22,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:39:22,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:39:22,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:39:22,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:39:24,277.277 INFO    ] ================================================
[2026-06-19 07:39:24,293.293 INFO    ] Launching Daemon at Fri Jun 19 07:39:24 IST 2026
[2026-06-19 07:39:24,309.309 INFO    ] ================================================
[2026-06-19 07:39:24,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:39:24
[2026-06-19 07:39:25,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:39:25,945.945 INFO    ] Initializing speech engine...
[2026-06-19 07:39:25,954.954 INFO    ] 2026-06-19 07:39:25
[2026-06-19 07:39:26,227.227 INFO    ] 2026-06-19 07:39:26
[2026-06-19 07:39:26,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:39:26,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:39:26,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:39:26,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:39:26,724.724 INFO    ] time= 19/06/2026 07:39:26
[2026-06-19 07:39:26,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:39:26,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:39:26,862.862 INFO    ] No existing commands found in stream
[2026-06-19 07:39:31,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:39:31,879.879 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 07:39:32,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:39:32,954.954 INFO    ] Checking for system updates...
[2026-06-19 07:39:32,991.991 INFO    ] 200
[2026-06-19 07:39:32,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:39:33,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:39:33,051.051 INFO    ] No update needed
[2026-06-19 07:39:33,054.054 INFO    ] Checking for camera pi updates...
[2026-06-19 07:39:33,093.093 INFO    ] 200
[2026-06-19 07:39:33,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:39:33,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:39:33,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:39:33,173.173 INFO    ] No camera update needed
[2026-06-19 07:39:33,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:39:33,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:39:33,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:39:33,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:39:35,234.234 INFO    ] ================================================
[2026-06-19 07:39:35,249.249 INFO    ] Launching Daemon at Fri Jun 19 07:39:35 IST 2026
[2026-06-19 07:39:35,260.260 INFO    ] ================================================
[2026-06-19 07:39:35,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:39:35
[2026-06-19 07:39:36,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:39:36,895.895 INFO    ] Initializing speech engine...
[2026-06-19 07:39:36,901.901 INFO    ] 2026-06-19 07:39:36
[2026-06-19 07:39:37,184.184 INFO    ] 2026-06-19 07:39:37
[2026-06-19 07:39:37,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:39:37,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:39:37,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:39:37,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:39:37,658.658 INFO    ] time= 19/06/2026 07:39:37
[2026-06-19 07:39:37,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:39:37,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:39:37,807.807 INFO    ] No existing commands found in stream
[2026-06-19 07:39:42,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:39:42,823.823 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 07:39:47,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:39:47,067.067 INFO    ] Checking for system updates...
[2026-06-19 07:39:47,108.108 INFO    ] 200
[2026-06-19 07:39:47,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:39:47,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:39:47,169.169 INFO    ] No update needed
[2026-06-19 07:39:47,171.171 INFO    ] Checking for camera pi updates...
[2026-06-19 07:39:47,207.207 INFO    ] 200
[2026-06-19 07:39:47,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:39:47,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:39:47,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:39:47,282.282 INFO    ] No camera update needed
[2026-06-19 07:39:47,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:39:47,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:39:47,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:39:47,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:39:49,342.342 INFO    ] ================================================
[2026-06-19 07:39:49,357.357 INFO    ] Launching Daemon at Fri Jun 19 07:39:49 IST 2026
[2026-06-19 07:39:49,368.368 INFO    ] ================================================
[2026-06-19 07:39:50,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:39:50
[2026-06-19 07:39:50,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:39:51,015.015 INFO    ] Initializing speech engine...
[2026-06-19 07:39:51,026.026 INFO    ] 2026-06-19 07:39:51
[2026-06-19 07:39:51,340.340 INFO    ] 2026-06-19 07:39:51
[2026-06-19 07:39:51,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:39:51,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:39:51,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:39:51,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:39:51,804.804 INFO    ] time= 19/06/2026 07:39:51
[2026-06-19 07:39:51,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:39:51,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:39:51,997.997 INFO    ] No existing commands found in stream
[2026-06-19 07:39:57,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:39:57,031.031 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 07:40:00,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:40:00,446.446 INFO    ] Checking for system updates...
[2026-06-19 07:40:00,482.482 INFO    ] 200
[2026-06-19 07:40:00,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:00,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:40:00,547.547 INFO    ] No update needed
[2026-06-19 07:40:00,549.549 INFO    ] Checking for camera pi updates...
[2026-06-19 07:40:00,588.588 INFO    ] 200
[2026-06-19 07:40:00,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:00,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:40:00,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:40:00,777.777 INFO    ] No camera update needed
[2026-06-19 07:40:00,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:40:00,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:40:00,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:40:00,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:40:02,854.854 INFO    ] ================================================
[2026-06-19 07:40:02,873.873 INFO    ] Launching Daemon at Fri Jun 19 07:40:02 IST 2026
[2026-06-19 07:40:02,893.893 INFO    ] ================================================
[2026-06-19 07:40:03,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:40:03
[2026-06-19 07:40:04,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:40:04,446.446 INFO    ] Initializing speech engine...
[2026-06-19 07:40:04,460.460 INFO    ] 2026-06-19 07:40:04
[2026-06-19 07:40:04,740.740 INFO    ] 2026-06-19 07:40:04
[2026-06-19 07:40:04,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:40:05,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:40:05,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:40:05,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:40:05,189.189 INFO    ] time= 19/06/2026 07:40:05
[2026-06-19 07:40:05,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:40:05,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:40:05,336.336 INFO    ] No existing commands found in stream
[2026-06-19 07:40:10,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:40:10,351.351 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 07:40:13,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:40:13,663.663 INFO    ] Checking for system updates...
[2026-06-19 07:40:13,700.700 INFO    ] 200
[2026-06-19 07:40:13,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:13,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:40:13,760.760 INFO    ] No update needed
[2026-06-19 07:40:13,763.763 INFO    ] Checking for camera pi updates...
[2026-06-19 07:40:13,800.800 INFO    ] 200
[2026-06-19 07:40:13,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:13,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:40:13,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:40:13,890.890 INFO    ] No camera update needed
[2026-06-19 07:40:13,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:40:13,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:40:13,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:40:13,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:40:15,946.946 INFO    ] ================================================
[2026-06-19 07:40:15,962.962 INFO    ] Launching Daemon at Fri Jun 19 07:40:15 IST 2026
[2026-06-19 07:40:15,974.974 INFO    ] ================================================
[2026-06-19 07:40:16,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:40:16
[2026-06-19 07:40:17,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:40:17,431.431 INFO    ] Initializing speech engine...
[2026-06-19 07:40:17,439.439 INFO    ] 2026-06-19 07:40:17
[2026-06-19 07:40:17,698.698 INFO    ] 2026-06-19 07:40:17
[2026-06-19 07:40:17,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:40:17,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:40:17,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:40:18,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:40:18,193.193 INFO    ] time= 19/06/2026 07:40:18
[2026-06-19 07:40:18,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:40:18,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:40:18,372.372 INFO    ] No existing commands found in stream
[2026-06-19 07:40:23,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:40:23,405.405 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 07:40:24,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:40:24,891.891 INFO    ] Checking for system updates...
[2026-06-19 07:40:24,927.927 INFO    ] 200
[2026-06-19 07:40:24,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:24,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:40:24,993.993 INFO    ] No update needed
[2026-06-19 07:40:24,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 07:40:25,034.034 INFO    ] 200
[2026-06-19 07:40:25,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:25,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:40:25,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:40:25,126.126 INFO    ] No camera update needed
[2026-06-19 07:40:25,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:40:25,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:40:25,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:40:25,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:40:27,186.186 INFO    ] ================================================
[2026-06-19 07:40:27,201.201 INFO    ] Launching Daemon at Fri Jun 19 07:40:27 IST 2026
[2026-06-19 07:40:27,212.212 INFO    ] ================================================
[2026-06-19 07:40:27,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:40:27
[2026-06-19 07:40:28,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:40:28,676.676 INFO    ] Initializing speech engine...
[2026-06-19 07:40:28,690.690 INFO    ] 2026-06-19 07:40:28
[2026-06-19 07:40:28,953.953 INFO    ] 2026-06-19 07:40:28
[2026-06-19 07:40:28,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:40:29,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:40:29,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:40:29,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:40:29,425.425 INFO    ] time= 19/06/2026 07:40:29
[2026-06-19 07:40:29,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:40:29,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:40:29,571.571 INFO    ] No existing commands found in stream
[2026-06-19 07:40:34,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:40:34,586.586 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 07:40:35,004.004 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:40:35,007.007 INFO    ] Checking for system updates...
[2026-06-19 07:40:35,051.051 INFO    ] 200
[2026-06-19 07:40:35,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:35,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:40:35,116.116 INFO    ] No update needed
[2026-06-19 07:40:35,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 07:40:35,152.152 INFO    ] 200
[2026-06-19 07:40:35,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:35,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:40:35,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:40:35,238.238 INFO    ] No camera update needed
[2026-06-19 07:40:35,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:40:35,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:40:35,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:40:35,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:40:37,294.294 INFO    ] ================================================
[2026-06-19 07:40:37,310.310 INFO    ] Launching Daemon at Fri Jun 19 07:40:37 IST 2026
[2026-06-19 07:40:37,321.321 INFO    ] ================================================
[2026-06-19 07:40:37,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:40:37
[2026-06-19 07:40:38,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:40:38,833.833 INFO    ] Initializing speech engine...
[2026-06-19 07:40:38,847.847 INFO    ] 2026-06-19 07:40:38
[2026-06-19 07:40:39,160.160 INFO    ] 2026-06-19 07:40:39
[2026-06-19 07:40:39,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:40:39,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:40:39,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:40:39,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:40:39,686.686 INFO    ] time= 19/06/2026 07:40:39
[2026-06-19 07:40:39,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:40:39,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:40:39,827.827 INFO    ] No existing commands found in stream
[2026-06-19 07:40:44,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:40:44,850.850 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 07:40:49,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:40:49,122.122 INFO    ] Checking for system updates...
[2026-06-19 07:40:49,159.159 INFO    ] 200
[2026-06-19 07:40:49,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:49,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:40:49,219.219 INFO    ] No update needed
[2026-06-19 07:40:49,222.222 INFO    ] Checking for camera pi updates...
[2026-06-19 07:40:49,256.256 INFO    ] 200
[2026-06-19 07:40:49,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:49,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:40:49,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:40:49,346.346 INFO    ] No camera update needed
[2026-06-19 07:40:49,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:40:49,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:40:49,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:40:49,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:40:51,404.404 INFO    ] ================================================
[2026-06-19 07:40:51,422.422 INFO    ] Launching Daemon at Fri Jun 19 07:40:51 IST 2026
[2026-06-19 07:40:51,434.434 INFO    ] ================================================
[2026-06-19 07:40:52,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:40:52
[2026-06-19 07:40:52,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:40:53,068.068 INFO    ] Initializing speech engine...
[2026-06-19 07:40:53,093.093 INFO    ] 2026-06-19 07:40:53
[2026-06-19 07:40:53,365.365 INFO    ] 2026-06-19 07:40:53
[2026-06-19 07:40:53,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:40:53,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:40:53,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:40:53,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:40:53,869.869 INFO    ] time= 19/06/2026 07:40:53
[2026-06-19 07:40:53,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:40:53,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:40:53,995.995 INFO    ] Found 1 existing command(s) in stream
[2026-06-19 07:40:54,032.032 INFO    ] Checking historical command: ID=1781835052917-0
[2026-06-19 07:40:54,089.089 INFO    ] process_and_cleanup_command: msg_id=1781835052917-0
[2026-06-19 07:40:54,119.119 INFO    ] is_command_expired: timestamp=2026-06-19T02:10:52.440Z, expiry=30s
[2026-06-19 07:40:54,337.337 INFO    ] Command removed from stream: 1781835052917-0. returning for processing...
[2026-06-19 07:40:54,379.379 INFO    ] ***** get_valid_command
[2026-06-19 07:40:54,426.426 INFO    ] {'timestamp': '2026-06-19T02:10:52.440Z', 'command': 'start-order', 'data': '{"request_id":"start-order-1781835052440-xiq9me4sr","orderId":"TM07202501260619074009665","is_vending":false}', 'source': 'webapp', 'timeout': '10'}
[2026-06-19 07:40:54,436.436 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1781835052440-xiq9me4sr', 'orderId': 'TM07202501260619074009665'}
[2026-06-19 07:40:54,440.440 INFO    ] Handling start order...
[2026-06-19 07:40:54,443.443 INFO    ] handle_start_order_command
[2026-06-19 07:40:54,549.549 INFO    ] _send_start_order_success: request_id=start-order-1781835052440-xiq9me4sr, order_id=TM07202501260619074009665
[2026-06-19 07:40:54,577.577 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-19 07:40:54,682.682 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781835054593-0
[2026-06-19 07:40:54,695.695 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-19 07:40:54,699.699 INFO    ] Checking for system updates...
[2026-06-19 07:40:54,820.820 INFO    ] 200
[2026-06-19 07:40:54,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:54,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:40:54,928.928 INFO    ] No update needed
[2026-06-19 07:40:54,934.934 INFO    ] Checking for camera pi updates...
[2026-06-19 07:40:54,978.978 INFO    ] 200
[2026-06-19 07:40:54,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:40:55,037.037 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:40:55,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:40:55,091.091 INFO    ] No camera update needed
[2026-06-19 07:40:55,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:40:55,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:40:55,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:40:55,137.137 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 07:40:55,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:40:57,197.197 INFO    ] ================================================
[2026-06-19 07:40:57,213.213 INFO    ] Launching Daemon at Fri Jun 19 07:40:57 IST 2026
[2026-06-19 07:40:57,224.224 INFO    ] ================================================
[2026-06-19 07:40:57,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:40:57
[2026-06-19 07:40:58,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:40:58,689.689 INFO    ] Initializing speech engine...
[2026-06-19 07:40:58,696.696 INFO    ] 2026-06-19 07:40:58
[2026-06-19 07:40:58,955.955 INFO    ] 2026-06-19 07:40:58
[2026-06-19 07:40:58,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:40:59,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:40:59,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:40:59,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:40:59,416.416 INFO    ] time= 19/06/2026 07:40:59
[2026-06-19 07:40:59,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:40:59,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:40:59,567.567 INFO    ] Found 2 existing command(s) in stream
[2026-06-19 07:40:59,573.573 INFO    ] Checking historical command: ID=1781835054593-0
[2026-06-19 07:40:59,623.623 INFO    ] process_and_cleanup_command: msg_id=1781835054593-0
[2026-06-19 07:40:59,665.665 INFO    ] is_command_expired: timestamp=2026-06-19T02:10:54.556076Z, expiry=30s
[2026-06-19 07:40:59,800.800 INFO    ] Command removed from stream: 1781835054593-0. returning for processing...
[2026-06-19 07:40:59,864.864 INFO    ] ***** get_valid_command
[2026-06-19 07:40:59,929.929 INFO    ] {'imei': 'TM07202501', 'status': 'success', 'message_type': 'command_response', 'timestamp': '2026-06-19T02:10:54.556076Z', 'metadata_order_id': 'TM07202501260619074009665', 'metadata_request_id': 'start-order-1781835052440-xiq9me4sr', 'message': 'start-order success'}
[2026-06-19 07:40:59,969.969 INFO    ] Checking historical command: ID=1781835055898-0
[2026-06-19 07:41:00,000.000 INFO    ] process_and_cleanup_command: msg_id=1781835055898-0
[2026-06-19 07:41:00,010.010 INFO    ] is_command_expired: timestamp=2026-06-19T02:10:55.484Z, expiry=30s
[2026-06-19 07:41:00,113.113 INFO    ] Command removed from stream: 1781835055898-0. returning for processing...
[2026-06-19 07:41:00,142.142 INFO    ] ***** get_valid_command
[2026-06-19 07:41:00,149.149 INFO    ] {'timeout': '60', 'data': '{"request_id":"process-order-1781835055484-syb2kzjkg","orderId":"TM07202501260619074009665","is_vending":false,"accessCode":"42801892"}', 'command': 'process-order', 'timestamp': '2026-06-19T02:10:55.484Z', 'source': 'webapp'}
[2026-06-19 07:41:00,152.152 INFO    ] ***** Parsed command data: {'accessCode': '42801892', 'orderId': 'TM07202501260619074009665', 'is_vending': False, 'request_id': 'process-order-1781835055484-syb2kzjkg'}
[2026-06-19 07:41:00,202.202 INFO    ] Handling process order...
[2026-06-19 07:41:00,206.206 INFO    ] Processing process-order command...
[2026-06-19 07:41:00,209.209 INFO    ] 🔍 Lock file Order ID: TM07202501260619074009665, TS: 2026-06-19 07:40:54
[2026-06-19 07:41:00,271.271 INFO    ] ✅ Order lock valid for TM07202501260619074009665
[2026-06-19 07:41:00,277.277 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-19 07:41:00,282.282 INFO    ] processing access code 42801892 for order TM07202501260619074009665
[2026-06-19 07:41:00,288.288 INFO    ] 🔍 Lock file Order ID: TM07202501260619074009665, TS: 2026-06-19 07:40:54
[2026-06-19 07:41:00,293.293 INFO    ] ✅ Order lock valid for TM07202501260619074009665
[2026-06-19 07:41:00,298.298 INFO    ] 2026-06-19 07:41:00
[2026-06-19 07:41:00,426.426 INFO    ] 200
[2026-06-19 07:41:00,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:41:00,459.459 INFO    ] 42801892
[2026-06-19 07:41:00,464.464 INFO    ] 2026-06-19 07:41:00
[2026-06-19 07:41:00,473.473 INFO    ] session id :429154709
[2026-06-19 07:41:00,479.479 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=42801892&imei=TM07202501&session_id=429154709
[2026-06-19 07:41:01,605.605 INFO    ] 200
[2026-06-19 07:41:01,610.610 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"sku_total": 10, "image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "skuid": "4500680", "unit_price": 10, "offer_id": "", "name": "McVities Coconut Cookies 66gm", "offer_desc": "", "door_id": "1", "mrp": "10", "qty": 1, "tray_id": "22"}, {"sku_total": 25, "image_url": "https://images.tinymart.in/product/4500700-8130.jpg", "skuid": "4500700", "unit_price": 25, "offer_id": "", "name": "Paper Boat Aamras 160ml", "offer_desc": "", "door_id": "2", "mrp": "25", "qty": 1, "tray_id": "45"}], "bill_amount": "35", "mobile": "7090884344", "access_code": "42801892", "invoice_bill": "35", "order_id": "TM07202501260619074009665"}}
[2026-06-19 07:41:01,654.654 INFO    ] 35
[2026-06-19 07:41:01,658.658 INFO    ] TM07202501260619074009665
[2026-06-19 07:41:01,661.661 INFO    ] 7090884344
[2026-06-19 07:41:01,679.679 INFO    ] 2026-06-19 07:41:01
[2026-06-19 07:41:01,703.703 INFO    ] Door Opening for user mobile ending with  four three four four 
[2026-06-19 07:41:01,738.738 INFO    ] Door Opening for user mobile ending with  four three four four 
[2026-06-19 07:41:01,788.788 INFO    ] f0669fc9b2b3ba9d376c3fdd87cfe79b
[2026-06-19 07:41:01,821.821 INFO    ] 2026-06-19 07:41:01
[2026-06-19 07:41:01,843.843 INFO    ] creating audio file
[2026-06-19 07:41:02,407.407 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-19 07:41:03,099.099 INFO    ] gTTS API call completed successfully
[2026-06-19 07:41:04,312.312 INFO    ] 2026-06-19 07:41:04
[2026-06-19 07:41:04,316.316 INFO    ] playing audio file
[2026-06-19 07:41:04,334.334 INFO    ] 2026-06-19 07:41:04
[2026-06-19 07:41:04,337.337 INFO    ] 2026-06-19 07:41:04
[2026-06-19 07:41:04,340.340 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:41:04,343.343 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:41:04,412.412 INFO    ] [publish_status] Message added to stream with ID: 1781835064363-0
[2026-06-19 07:41:04,415.415 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'order-started', 'timestamp': '2026-06-19T02:11:04.338862Z', 'order_id': 'TM07202501260619074009665', 'server_response': '{"msg": "Order Data", "rstatus": true, "status": true, "data": {"access_code": "42801892", "order_id": "TM07202501260619074009665", "invoice_bill": "35", "mobile": "7090884344", "bill_amount": "35", "proposed_sku_json": [{"sku_total": 10, "door_id": "1", "offer_id": "", "unit_price": 10, "image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "offer_desc": "", "mrp": "10", "name": "McVities Coconut Cookies 66gm", "qty": 1, "skuid": "4500680", "tray_id": "22"}, {"sku_total": 25, "door_id": "2", "offer_id": "", "unit_price": 25, "image_url": "https://images.tinymart.in/product/4500700-8130.jpg", "offer_desc": "", "mrp": "25", "name": "Paper Boat Aamras 160ml", "qty": 1, "skuid": "4500700", "tray_id": "45"}]}}'} (ID: 1781835064363-0)
[2026-06-19 07:41:04,806.806 INFO    ] {'server_status': 'order-started', 'order_id': 'TM07202501260619074009665', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'status': True, 'data': {'access_code': '42801892', 'order_id': 'TM07202501260619074009665', 'invoice_bill': '35', 'mobile': '7090884344', 'bill_amount': '35', 'proposed_sku_json': [{'sku_total': 10, 'door_id': '1', 'offer_id': '', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'offer_desc': '', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm', 'qty': 1, 'skuid': '4500680', 'tray_id': '22'}, {'sku_total': 25, 'door_id': '2', 'offer_id': '', 'unit_price': 25, 'image_url': 'https://images.tinymart.in/product/4500700-8130.jpg', 'offer_desc': '', 'mrp': '25', 'name': 'Paper Boat Aamras 160ml', 'qty': 1, 'skuid': '4500700', 'tray_id': '45'}]}}}
[2026-06-19 07:41:04,809.809 INFO    ] 200
[2026-06-19 07:41:04,812.812 INFO    ] {"data":{"server_status":"order-started","order_id":"TM07202501260619074009665","server_response":{"msg":"Order Data","rstatus":true,"status":true,"data":{"access_code":"42801892","order_id":"TM07202501260619074009665","invoice_bill":"35","mobile":"7090884344","bill_amount":"35","proposed_sku_json":[{"sku_total":10,"door_id":"1","offer_id":"","unit_price":10,"image_url":"https:\/\/images.tinymart.in\/product\/4500680-2380.jpg","offer_desc":"","mrp":"10","name":"McVities Coconut Cookies 66gm","qty":1,"skuid":"4500680","tray_id":"22"},{"sku_total":25,"door_id":"2","offer_id":"","unit_price":25,"image_url":"https:\/\/images.tinymart.in\/product\/4500700-8130.jpg","offer_desc":"","mrp":"25","name":"Paper Boat Aamras 160ml","qty":1,"skuid":"4500700","tray_id":"45"}]}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 07:41:04,815.815 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM07202501260619074009665', 'server_response': {'msg': 'Order Data', 'rstatus': True, 'status': True, 'data': {'access_code': '42801892', 'proposed_sku_json': [{'sku_total': 10, 'door_id': '1', 'offer_id': '', 'unit_price': 10, 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm', 'offer_desc': '', 'qty': 1, 'skuid': '4500680', 'tray_id': '22'}, {'sku_total': 25, 'door_id': '2', 'offer_id': '', 'unit_price': 25, 'image_url': 'https://images.tinymart.in/product/4500700-8130.jpg', 'mrp': '25', 'name': 'Paper Boat Aamras 160ml', 'offer_desc': '', 'qty': 1, 'skuid': '4500700', 'tray_id': '45'}], 'bill_amount': '35', 'mobile': '7090884344', 'invoice_bill': '35', 'order_id': 'TM07202501260619074009665'}}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:41:04,818.818 INFO    ] 2026-06-19 07:41:04
[2026-06-19 07:41:04,863.863 INFO    ] 200
[2026-06-19 07:41:04,866.866 INFO    ] True
[2026-06-19 07:41:05,026.026 INFO    ] 200
[2026-06-19 07:41:05,029.029 INFO    ] {"rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "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": ""}}
[2026-06-19 07:41:05,032.032 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:05,036.036 INFO    ] *** process_order ***
[2026-06-19 07:41:06,254.254 INFO    ] 200
[2026-06-19 07:41:06,256.256 INFO    ] {"rstatus": true, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True", "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": ""}}
[2026-06-19 07:41:06,259.259 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'status': 'True', 'rstatus': True}
[2026-06-19 07:41:06,261.261 INFO    ] *** process_order ***
[2026-06-19 07:41:06,264.264 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:41:06,266.266 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:41:06,330.330 INFO    ] [publish_status] Message added to stream with ID: 1781835066281-0
[2026-06-19 07:41:06,334.334 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'doorOpened', 'order_id': 'TM07202501260619074009665', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now.", "UI_Header": ""}, "status": "True", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "rstatus": true, "voiceNote": "Door is open..."}'} (ID: 1781835066281-0)
[2026-06-19 07:41:07,377.377 INFO    ] 2026-06-19 07:41:07
[2026-06-19 07:41:07,380.380 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:41:07,382.382 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:41:07,430.430 INFO    ] [publish_status] Message added to stream with ID: 1781835067381-0
[2026-06-19 07:41:07,433.433 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'processOrder', 'timestamp': '2026-06-19T02:11:07.378959Z', 'order_id': 'TM07202501260619074009665', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "status": "True", "rstatus": true}'} (ID: 1781835067381-0)
[2026-06-19 07:41:07,540.540 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'status': 'True', 'rstatus': True}}
[2026-06-19 07:41:07,543.543 INFO    ] 200
[2026-06-19 07:41:07,546.546 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM07202501260619074009665","server_response":{"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"Note":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order","UI_Header":""},"voiceNote":"Please Wait","SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"delay":0,"status":"true","rstatus":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 07:41:07,549.549 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order', 'UI_Header': ''}, 'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'status': 'true', 'rstatus': True}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:41:07,552.552 INFO    ] 2026-06-19 07:41:07
[2026-06-19 07:41:07,555.555 INFO    ] None
[2026-06-19 07:41:07,558.558 INFO    ] Opening Door now
[2026-06-19 07:41:07,560.560 INFO    ] Opening Door now
[2026-06-19 07:41:07,563.563 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-19 07:41:07,566.566 INFO    ] 2026-06-19 07:41:07
[2026-06-19 07:41:07,569.569 INFO    ] playing audio file
[2026-06-19 07:41:07,587.587 INFO    ] 2026-06-19 07:41:07
[2026-06-19 07:41:07,590.590 INFO    ] 2026-06-19 07:41:07
[2026-06-19 07:41:10,751.751 INFO    ] 200
[2026-06-19 07:41:10,754.754 INFO    ] {"rstatus": false, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "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"}}
[2026-06-19 07:41:10,757.757 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Door 1 is open now', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:13,839.839 INFO    ] 200
[2026-06-19 07:41:13,842.842 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "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"}}
[2026-06-19 07:41:13,845.845 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:16,955.955 INFO    ] 200
[2026-06-19 07:41:16,958.958 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "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"}}
[2026-06-19 07:41:16,961.961 INFO    ] Please close door 1
[2026-06-19 07:41:16,963.963 INFO    ] Please close door 1
[2026-06-19 07:41:16,966.966 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-19 07:41:16,969.969 INFO    ] 2026-06-19 07:41:16
[2026-06-19 07:41:16,972.972 INFO    ] playing audio file
[2026-06-19 07:41:16,990.990 INFO    ] 2026-06-19 07:41:16
[2026-06-19 07:41:16,993.993 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:41:16,996.996 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:41:17,074.074 INFO    ] [publish_status] Message added to stream with ID: 1781835077024-0
[2026-06-19 07:41:17,077.077 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'OrderStatus', 'timestamp': '2026-06-19T02:11:16.991727Z', 'order_id': 'TM07202501260619074009665', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "McVities Coconut Cookies 66gm", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "rstatus": false}'} (ID: 1781835077024-0)
[2026-06-19 07:41:17,505.505 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}}
[2026-06-19 07:41:17,508.508 INFO    ] 200
[2026-06-19 07:41:17,510.510 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260619074009665","server_response":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"McVities Coconut Cookies 66gm","qty":1}],"Header":"Pick the below items from the door"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 07:41:17,514.514 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'false', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:41:17,517.517 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:20,856.856 INFO    ] 200
[2026-06-19 07:41:20,859.859 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "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"}}
[2026-06-19 07:41:20,862.862 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:24,000.000 INFO    ] 200
[2026-06-19 07:41:24,002.002 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "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"}}
[2026-06-19 07:41:24,006.006 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:27,057.057 INFO    ] 200
[2026-06-19 07:41:27,059.059 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "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"}}
[2026-06-19 07:41:27,062.062 INFO    ] Please close door 1
[2026-06-19 07:41:27,064.064 INFO    ] Please close door 1
[2026-06-19 07:41:27,066.066 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-19 07:41:27,069.069 INFO    ] 2026-06-19 07:41:27
[2026-06-19 07:41:27,072.072 INFO    ] playing audio file
[2026-06-19 07:41:27,090.090 INFO    ] 2026-06-19 07:41:27
[2026-06-19 07:41:27,093.093 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:41:27,096.096 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:41:27,173.173 INFO    ] [publish_status] Message added to stream with ID: 1781835087124-0
[2026-06-19 07:41:27,176.176 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'OrderStatus', 'timestamp': '2026-06-19T02:11:27.091887Z', 'order_id': 'TM07202501260619074009665', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "McVities Coconut Cookies 66gm", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "rstatus": false}'} (ID: 1781835087124-0)
[2026-06-19 07:41:27,603.603 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}}
[2026-06-19 07:41:27,606.606 INFO    ] 200
[2026-06-19 07:41:27,609.609 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260619074009665","server_response":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"McVities Coconut Cookies 66gm","qty":1}],"Header":"Pick the below items from the door"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 07:41:27,612.612 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'false', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:41:27,615.615 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:30,690.690 INFO    ] 200
[2026-06-19 07:41:30,693.693 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "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"}}
[2026-06-19 07:41:30,696.696 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:33,774.774 INFO    ] 200
[2026-06-19 07:41:33,777.777 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "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"}}
[2026-06-19 07:41:33,780.780 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:36,841.841 INFO    ] 200
[2026-06-19 07:41:36,844.844 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "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"}}
[2026-06-19 07:41:36,848.848 INFO    ] Please close door 1
[2026-06-19 07:41:36,851.851 INFO    ] Please close door 1
[2026-06-19 07:41:36,854.854 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-19 07:41:36,857.857 INFO    ] 2026-06-19 07:41:36
[2026-06-19 07:41:36,861.861 INFO    ] playing audio file
[2026-06-19 07:41:36,891.891 INFO    ] 2026-06-19 07:41:36
[2026-06-19 07:41:36,900.900 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:41:36,905.905 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:41:36,983.983 INFO    ] [publish_status] Message added to stream with ID: 1781835096934-0
[2026-06-19 07:41:36,986.986 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'OrderStatus', 'timestamp': '2026-06-19T02:11:36.895621Z', 'order_id': 'TM07202501260619074009665', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "McVities Coconut Cookies 66gm", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "rstatus": false}'} (ID: 1781835096934-0)
[2026-06-19 07:41:37,407.407 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}}
[2026-06-19 07:41:37,410.410 INFO    ] 200
[2026-06-19 07:41:37,412.412 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260619074009665","server_response":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"Note":"Please Close the door after picking up products","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door","UI_Header":"DOOR 1\nIS \nOPEN \nNOW"},"voiceNote":"Please close door 1","SectionSKU":{"skus":[{"name":"McVities Coconut Cookies 66gm","qty":1}],"Header":"Pick the below items from the door"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 07:41:37,416.416 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'false', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:41:37,419.419 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'voiceNote': 'Please close door 1', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:40,471.471 INFO    ] 200
[2026-06-19 07:41:40,473.473 INFO    ] {"rstatus": false, "voiceNote": "Door 1 is closed now", "delay": 1000, "SectionMain": {"Header": "Door Close"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "McVities Coconut Cookies 66gm"}]}, "SectionStatus": {"SubHeader": "Please wait for invoice to generate", "Header": "Door 1 is closed now", "UI_Header": "DOOR 1\nIS \nCLOSED \nNOW", "Note": "If any due amount, clear at https://go.tinymart.in"}}
[2026-06-19 07:41:40,477.477 INFO    ] {'SectionMain': {'Header': 'Door Close'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': 'Door 1 is closed now', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 1\nIS \nCLOSED \nNOW'}, 'voiceNote': 'Door 1 is closed now', 'SectionSKU': {'skus': [{'name': 'McVities Coconut Cookies 66gm', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'delay': 1000, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:43,553.553 INFO    ] 200
[2026-06-19 07:41:43,556.556 INFO    ] {"rstatus": false, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Aamras 160ml"}]}, "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"}}
[2026-06-19 07:41:43,559.559 INFO    ] {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Door 2 is open now', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:46,643.643 INFO    ] 200
[2026-06-19 07:41:46,646.646 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Aamras 160ml"}]}, "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"}}
[2026-06-19 07:41:46,649.649 INFO    ] Please close door 2
[2026-06-19 07:41:46,653.653 INFO    ] Please close door 2
[2026-06-19 07:41:46,656.656 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-19 07:41:46,660.660 INFO    ] 2026-06-19 07:41:46
[2026-06-19 07:41:46,663.663 INFO    ] playing audio file
[2026-06-19 07:41:46,683.683 INFO    ] 2026-06-19 07:41:46
[2026-06-19 07:41:46,688.688 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:41:46,692.692 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:41:46,773.773 INFO    ] [publish_status] Message added to stream with ID: 1781835106724-0
[2026-06-19 07:41:46,776.776 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'OrderStatus', 'timestamp': '2026-06-19T02:11:46.685767Z', 'order_id': 'TM07202501260619074009665', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Paper Boat Aamras 160ml", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "rstatus": false}'} (ID: 1781835106724-0)
[2026-06-19 07:41:47,232.232 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}}
[2026-06-19 07:41:47,235.235 INFO    ] 200
[2026-06-19 07:41:47,238.238 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260619074009665","server_response":{"SectionMain":{"Header":"Door Open"},"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"},"voiceNote":"Please close door 2","SectionSKU":{"skus":[{"name":"Paper Boat Aamras 160ml","qty":1}],"Header":"Pick the below items from the door"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 07:41:47,241.241 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'false', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:41:47,244.244 INFO    ] {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:50,324.324 INFO    ] 200
[2026-06-19 07:41:50,327.327 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Aamras 160ml"}]}, "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"}}
[2026-06-19 07:41:50,331.331 INFO    ] {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:53,449.449 INFO    ] 200
[2026-06-19 07:41:53,452.452 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Aamras 160ml"}]}, "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"}}
[2026-06-19 07:41:53,456.456 INFO    ] {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:41:56,524.524 INFO    ] 200
[2026-06-19 07:41:56,527.527 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Aamras 160ml"}]}, "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"}}
[2026-06-19 07:41:56,530.530 INFO    ] Please close door 2
[2026-06-19 07:41:56,534.534 INFO    ] Please close door 2
[2026-06-19 07:41:56,537.537 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-19 07:41:56,540.540 INFO    ] 2026-06-19 07:41:56
[2026-06-19 07:41:56,543.543 INFO    ] playing audio file
[2026-06-19 07:41:56,562.562 INFO    ] 2026-06-19 07:41:56
[2026-06-19 07:41:56,567.567 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:41:56,570.570 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:41:56,653.653 INFO    ] [publish_status] Message added to stream with ID: 1781835116604-0
[2026-06-19 07:41:56,657.657 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'OrderStatus', 'timestamp': '2026-06-19T02:11:56.564558Z', 'order_id': 'TM07202501260619074009665', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Paper Boat Aamras 160ml", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "rstatus": false}'} (ID: 1781835116604-0)
[2026-06-19 07:41:57,086.086 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}}
[2026-06-19 07:41:57,089.089 INFO    ] 200
[2026-06-19 07:41:57,092.092 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260619074009665","server_response":{"SectionMain":{"Header":"Door Open"},"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"},"voiceNote":"Please close door 2","SectionSKU":{"skus":[{"name":"Paper Boat Aamras 160ml","qty":1}],"Header":"Pick the below items from the door"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 07:41:57,096.096 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'false', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:41:57,099.099 INFO    ] {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:42:00,209.209 INFO    ] 200
[2026-06-19 07:42:00,212.212 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Aamras 160ml"}]}, "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"}}
[2026-06-19 07:42:00,216.216 INFO    ] {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:42:03,328.328 INFO    ] 200
[2026-06-19 07:42:03,331.331 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Aamras 160ml"}]}, "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"}}
[2026-06-19 07:42:03,336.336 INFO    ] {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:42:06,406.406 INFO    ] 200
[2026-06-19 07:42:06,411.411 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Aamras 160ml"}]}, "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"}}
[2026-06-19 07:42:06,415.415 INFO    ] Please close door 2
[2026-06-19 07:42:06,418.418 INFO    ] Please close door 2
[2026-06-19 07:42:06,423.423 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-19 07:42:06,427.427 INFO    ] 2026-06-19 07:42:06
[2026-06-19 07:42:06,430.430 INFO    ] playing audio file
[2026-06-19 07:42:06,452.452 INFO    ] 2026-06-19 07:42:06
[2026-06-19 07:42:06,457.457 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:42:06,460.460 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:42:06,543.543 INFO    ] [publish_status] Message added to stream with ID: 1781835126494-0
[2026-06-19 07:42:06,546.546 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'OrderStatus', 'timestamp': '2026-06-19T02:12:06.454900Z', 'order_id': 'TM07202501260619074009665', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Paper Boat Aamras 160ml", "qty": 1}], "Header": "Pick the below items from the door"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "rstatus": false}'} (ID: 1781835126494-0)
[2026-06-19 07:42:06,986.986 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}}
[2026-06-19 07:42:06,990.990 INFO    ] 200
[2026-06-19 07:42:06,999.999 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260619074009665","server_response":{"SectionMain":{"Header":"Door Open"},"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"},"voiceNote":"Please close door 2","SectionSKU":{"skus":[{"name":"Paper Boat Aamras 160ml","qty":1}],"Header":"Pick the below items from the door"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","rstatus":false}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 07:42:07,005.005 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619074009665', 'server_response': {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'false', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:42:07,011.011 INFO    ] {'SectionMain': {'Header': 'Door Open'}, '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'}, 'voiceNote': 'Please close door 2', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:42:10,067.067 INFO    ] 200
[2026-06-19 07:42:10,070.070 INFO    ] {"rstatus": false, "voiceNote": "Door 2 is closed now", "delay": 1000, "SectionMain": {"Header": "Door Close"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Paper Boat Aamras 160ml"}]}, "SectionStatus": {"SubHeader": "Please wait for invoice to generate", "Header": "Door 2 is closed now", "UI_Header": "DOOR 2\nIS \nCLOSED \nNOW", "Note": "If any due amount, clear at https://go.tinymart.in"}}
[2026-06-19 07:42:10,073.073 INFO    ] {'SectionMain': {'Header': 'Door Close'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': 'Door 2 is closed now', 'SubHeader': 'Please wait for invoice to generate', 'UI_Header': 'DOOR 2\nIS \nCLOSED \nNOW'}, 'voiceNote': 'Door 2 is closed now', 'SectionSKU': {'skus': [{'name': 'Paper Boat Aamras 160ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'delay': 1000, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'rstatus': False}
[2026-06-19 07:42:13,147.147 INFO    ] 200
[2026-06-19 07:42:13,156.156 INFO    ] {"rstatus": true, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "status": "True", "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"}}
[2026-06-19 07:42:13,160.160 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, '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': ''}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'status': 'True', 'rstatus': True}
[2026-06-19 07:42:13,163.163 INFO    ] 2026-06-19 07:42:13
[2026-06-19 07:42:13,167.167 INFO    ] Order Completed 
[2026-06-19 07:42:13,170.170 INFO    ] Order Completed 
[2026-06-19 07:42:13,173.173 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-19 07:42:13,177.177 INFO    ] 2026-06-19 07:42:13
[2026-06-19 07:42:13,180.180 INFO    ] playing audio file
[2026-06-19 07:42:13,199.199 INFO    ] 2026-06-19 07:42:13
[2026-06-19 07:42:13,202.202 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, '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': ''}, 'voiceNote': 'Transaction Completed', 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'status': 'True', 'rstatus': True}
[2026-06-19 07:42:13,205.205 INFO    ] 2026-06-19 07:42:13
[2026-06-19 07:42:13,603.603 INFO    ] 200
[2026-06-19 07:42:13,606.606 INFO    ] {"rstatus": true, "anomaly": 0, "orderId": "TM07202501260619074009665", "total_amount": 141.0, "logic": "WBL", "res": "True", "skus": [{"sku_total": 40.0, "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "door_id": "", "qty": 1, "mrp": "40", "name": "Farmely Classic date Bites 20gm per peice", "skuid": "4500667", "tray_id": "17", "unit_price": "40"}, {"sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500696-244.webp", "door_id": "", "qty": 1, "mrp": "10", "name": "McVities Cashew almond  Cookies 58gm per peice", "skuid": "4500696", "tray_id": "18", "unit_price": "10"}, {"sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500673-8519.webp", "door_id": "", "qty": 1, "mrp": "10", "name": "Modern kitchens Salted Peanuts 25gm per peice", "skuid": "4500673", "tray_id": "20", "unit_price": "10"}, {"sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "door_id": "", "qty": 1, "mrp": "10", "name": "McVities Coconut Cookies 66gm per peice", "skuid": "4500680", "tray_id": "22", "unit_price": "10"}, {"sku_total": 10.0, "image_url": "https://images.tinymart.in/product/4500647-1968.png", "door_id": "", "qty": 1, "mrp": "10", "name": "Modern kitchens Roasted Channa 32g per peice", "skuid": "4500647", "tray_id": "26", "unit_price": "10"}, {"sku_total": 36.0, "image_url": "https://images.tinymart.in/product/4500612-4575.jpg", "door_id": "", "qty": 1, "mrp": "38", "name": "Alo Frut Mosambi Juice  per peice", "skuid": "4500612", "tray_id": "38", "unit_price": "36"}, {"sku_total": 25.0, "image_url": "https://images.tinymart.in/product/4500700-8130.jpg", "door_id": "", "qty": 1, "mrp": "25", "name": "Paper Boat Aamras 160ml per peice", "skuid": "4500700", "tray_id": "45", "unit_price": "25"}]}
[2026-06-19 07:42:13,610.610 INFO    ] {'skus': [{'sku_total': 40.0, 'door_id': '', 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'qty': 1, 'skuid': '4500667', 'tray_id': '17'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'mrp': '10', 'name': 'McVities Cashew almond  Cookies 58gm per peice', 'qty': 1, 'skuid': '4500696', 'tray_id': '18'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'mrp': '10', 'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'qty': 1, 'skuid': '4500673', 'tray_id': '20'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm per peice', 'qty': 1, 'skuid': '4500680', 'tray_id': '22'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'qty': 1, 'skuid': '4500647', 'tray_id': '26'}, {'sku_total': 36.0, 'door_id': '', 'unit_price': '36', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'mrp': '38', 'name': 'Alo Frut Mosambi Juice  per peice', 'qty': 1, 'skuid': '4500612', 'tray_id': '38'}, {'sku_total': 25.0, 'door_id': '', 'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500700-8130.jpg', 'mrp': '25', 'name': 'Paper Boat Aamras 160ml per peice', 'qty': 1, 'skuid': '4500700', 'tray_id': '45'}], 'orderId': 'TM07202501260619074009665', 'res': 'True', 'total_amount': 141.0, 'anomaly': 0, 'rstatus': True, 'logic': 'WBL'}
[2026-06-19 07:42:13,613.613 INFO    ] {'skus': [{'sku_total': 40.0, 'door_id': '', 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'qty': 1, 'skuid': '4500667', 'tray_id': '17'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'mrp': '10', 'name': 'McVities Cashew almond  Cookies 58gm per peice', 'qty': 1, 'skuid': '4500696', 'tray_id': '18'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'mrp': '10', 'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'qty': 1, 'skuid': '4500673', 'tray_id': '20'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm per peice', 'qty': 1, 'skuid': '4500680', 'tray_id': '22'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'qty': 1, 'skuid': '4500647', 'tray_id': '26'}, {'sku_total': 36.0, 'door_id': '', 'unit_price': '36', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'mrp': '38', 'name': 'Alo Frut Mosambi Juice  per peice', 'qty': 1, 'skuid': '4500612', 'tray_id': '38'}, {'sku_total': 25.0, 'door_id': '', 'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500700-8130.jpg', 'mrp': '25', 'name': 'Paper Boat Aamras 160ml per peice', 'qty': 1, 'skuid': '4500700', 'tray_id': '45'}], 'orderId': 'TM07202501260619074009665', 'res': 'True', 'total_amount': 141.0, 'anomaly': 0, 'rstatus': True, 'logic': 'WBL'}
[2026-06-19 07:42:13,617.617 INFO    ] 2026-06-19 07:42:13
[2026-06-19 07:42:13,619.619 INFO    ] 2026-06-19 07:42:13
[2026-06-19 07:42:13,622.622 INFO    ] 35
[2026-06-19 07:42:13,624.624 INFO    ] 2026-06-19 07:42:13
[2026-06-19 07:42:13,627.627 INFO    ] 2026-06-19 07:42:13
[2026-06-19 07:42:13,630.630 INFO    ]  You had Picked Excess of 106 Your Bill Amount is 141
[2026-06-19 07:42:13,632.632 INFO    ]  You had Picked Excess of 106 Your Bill Amount is 141
[2026-06-19 07:42:13,635.635 INFO    ] f323e8e398bd8f6e9edf26beef6f2465
[2026-06-19 07:42:13,638.638 INFO    ] 2026-06-19 07:42:13
[2026-06-19 07:42:13,641.641 INFO    ] creating audio file
[2026-06-19 07:42:13,644.644 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-19 07:42:14,114.114 INFO    ] gTTS API call completed successfully
[2026-06-19 07:42:15,644.644 INFO    ] 2026-06-19 07:42:15
[2026-06-19 07:42:15,647.647 INFO    ] playing audio file
[2026-06-19 07:42:15,666.666 INFO    ] 2026-06-19 07:42:15
[2026-06-19 07:42:15,670.670 INFO    ] 2026-06-19 07:42:15
[2026-06-19 07:42:15,675.675 INFO    ] publish_status: order_id=TM07202501260619074009665
[2026-06-19 07:42:15,678.678 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619074009665
[2026-06-19 07:42:15,780.780 INFO    ] [publish_status] Message added to stream with ID: 1781835135732-0
[2026-06-19 07:42:15,783.783 INFO    ] Published to order:TM07202501260619074009665: {'server_status': 'invoiceOrder', 'timestamp': '2026-06-19T02:12:15.672327Z', 'order_id': 'TM07202501260619074009665', 'server_response': '{"skus": [{"sku_total": 40.0, "door_id": "", "unit_price": "40", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "mrp": "40", "name": "Farmely Classic date Bites 20gm per peice", "qty": 1, "skuid": "4500667", "tray_id": "17"}, {"sku_total": 10.0, "door_id": "", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500696-244.webp", "mrp": "10", "name": "McVities Cashew almond  Cookies 58gm per peice", "qty": 1, "skuid": "4500696", "tray_id": "18"}, {"sku_total": 10.0, "door_id": "", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500673-8519.webp", "mrp": "10", "name": "Modern kitchens Salted Peanuts 25gm per peice", "qty": 1, "skuid": "4500673", "tray_id": "20"}, {"sku_total": 10.0, "door_id": "", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500680-2380.jpg", "mrp": "10", "name": "McVities Coconut Cookies 66gm per peice", "qty": 1, "skuid": "4500680", "tray_id": "22"}, {"sku_total": 10.0, "door_id": "", "unit_price": "10", "image_url": "https://images.tinymart.in/product/4500647-1968.png", "mrp": "10", "name": "Modern kitchens Roasted Channa 32g per peice", "qty": 1, "skuid": "4500647", "tray_id": "26"}, {"sku_total": 36.0, "door_id": "", "unit_price": "36", "image_url": "https://images.tinymart.in/product/4500612-4575.jpg", "mrp": "38", "name": "Alo Frut Mosambi Juice  per peice", "qty": 1, "skuid": "4500612", "tray_id": "38"}, {"sku_total": 25.0, "door_id": "", "unit_price": "25", "image_url": "https://images.tinymart.in/product/4500700-8130.jpg", "mrp": "25", "name": "Paper Boat Aamras 160ml per peice", "qty": 1, "skuid": "4500700", "tray_id": "45"}], "orderId": "TM07202501260619074009665", "res": "True", "total_amount": 141.0, "anomaly": 0, "rstatus": true, "logic": "WBL"}'} (ID: 1781835135732-0)
[2026-06-19 07:42:16,227.227 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260619074009665', 'server_response': {'skus': [{'sku_total': 40.0, 'door_id': '', 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'qty': 1, 'skuid': '4500667', 'tray_id': '17'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'mrp': '10', 'name': 'McVities Cashew almond  Cookies 58gm per peice', 'qty': 1, 'skuid': '4500696', 'tray_id': '18'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'mrp': '10', 'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'qty': 1, 'skuid': '4500673', 'tray_id': '20'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm per peice', 'qty': 1, 'skuid': '4500680', 'tray_id': '22'}, {'sku_total': 10.0, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'qty': 1, 'skuid': '4500647', 'tray_id': '26'}, {'sku_total': 36.0, 'door_id': '', 'unit_price': '36', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'mrp': '38', 'name': 'Alo Frut Mosambi Juice  per peice', 'qty': 1, 'skuid': '4500612', 'tray_id': '38'}, {'sku_total': 25.0, 'door_id': '', 'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500700-8130.jpg', 'mrp': '25', 'name': 'Paper Boat Aamras 160ml per peice', 'qty': 1, 'skuid': '4500700', 'tray_id': '45'}], 'orderId': 'TM07202501260619074009665', 'res': 'True', 'total_amount': 141.0, 'anomaly': 0, 'rstatus': True, 'logic': 'WBL'}}
[2026-06-19 07:42:16,230.230 INFO    ] 200
[2026-06-19 07:42:16,233.233 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM07202501260619074009665","server_response":{"skus":[{"sku_total":40,"door_id":"","unit_price":"40","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","mrp":"40","name":"Farmely Classic date Bites 20gm per peice","qty":1,"skuid":"4500667","tray_id":"17"},{"sku_total":10,"door_id":"","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500696-244.webp","mrp":"10","name":"McVities Cashew almond  Cookies 58gm per peice","qty":1,"skuid":"4500696","tray_id":"18"},{"sku_total":10,"door_id":"","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500673-8519.webp","mrp":"10","name":"Modern kitchens Salted Peanuts 25gm per peice","qty":1,"skuid":"4500673","tray_id":"20"},{"sku_total":10,"door_id":"","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500680-2380.jpg","mrp":"10","name":"McVities Coconut Cookies 66gm per peice","qty":1,"skuid":"4500680","tray_id":"22"},{"sku_total":10,"door_id":"","unit_price":"10","image_url":"https:\/\/images.tinymart.in\/product\/4500647-1968.png","mrp":"10","name":"Modern kitchens Roasted Channa 32g per peice","qty":1,"skuid":"4500647","tray_id":"26"},{"sku_total":36,"door_id":"","unit_price":"36","image_url":"https:\/\/images.tinymart.in\/product\/4500612-4575.jpg","mrp":"38","name":"Alo Frut Mosambi Juice  per peice","qty":1,"skuid":"4500612","tray_id":"38"},{"sku_total":25,"door_id":"","unit_price":"25","image_url":"https:\/\/images.tinymart.in\/product\/4500700-8130.jpg","mrp":"25","name":"Paper Boat Aamras 160ml per peice","qty":1,"skuid":"4500700","tray_id":"45"}],"orderId":"TM07202501260619074009665","res":"true","total_amount":141,"anomaly":0,"rstatus":true,"logic":"WBL"}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 07:42:16,237.237 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260619074009665', 'server_response': {'anomaly': 0, 'orderId': 'TM07202501260619074009665', 'res': 'true', 'total_amount': 141, 'skus': [{'sku_total': 40, 'door_id': '', 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'qty': 1, 'skuid': '4500667', 'tray_id': '17'}, {'sku_total': 10, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'mrp': '10', 'name': 'McVities Cashew almond  Cookies 58gm per peice', 'qty': 1, 'skuid': '4500696', 'tray_id': '18'}, {'sku_total': 10, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'mrp': '10', 'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'qty': 1, 'skuid': '4500673', 'tray_id': '20'}, {'sku_total': 10, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm per peice', 'qty': 1, 'skuid': '4500680', 'tray_id': '22'}, {'sku_total': 10, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'qty': 1, 'skuid': '4500647', 'tray_id': '26'}, {'sku_total': 36, 'door_id': '', 'unit_price': '36', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'mrp': '38', 'name': 'Alo Frut Mosambi Juice  per peice', 'qty': 1, 'skuid': '4500612', 'tray_id': '38'}, {'sku_total': 25, 'door_id': '', 'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500700-8130.jpg', 'mrp': '25', 'name': 'Paper Boat Aamras 160ml per peice', 'qty': 1, 'skuid': '4500700', 'tray_id': '45'}], 'rstatus': True, 'logic': 'WBL'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:42:16,241.241 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260619074009665', 'server_response': {'anomaly': 0, 'orderId': 'TM07202501260619074009665', 'res': 'true', 'total_amount': 141, 'skus': [{'sku_total': 40, 'door_id': '', 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'name': 'Farmely Classic date Bites 20gm per peice', 'qty': 1, 'skuid': '4500667', 'tray_id': '17'}, {'sku_total': 10, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'mrp': '10', 'name': 'McVities Cashew almond  Cookies 58gm per peice', 'qty': 1, 'skuid': '4500696', 'tray_id': '18'}, {'sku_total': 10, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500673-8519.webp', 'mrp': '10', 'name': 'Modern kitchens Salted Peanuts 25gm per peice', 'qty': 1, 'skuid': '4500673', 'tray_id': '20'}, {'sku_total': 10, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500680-2380.jpg', 'mrp': '10', 'name': 'McVities Coconut Cookies 66gm per peice', 'qty': 1, 'skuid': '4500680', 'tray_id': '22'}, {'sku_total': 10, 'door_id': '', 'unit_price': '10', 'image_url': 'https://images.tinymart.in/product/4500647-1968.png', 'mrp': '10', 'name': 'Modern kitchens Roasted Channa 32g per peice', 'qty': 1, 'skuid': '4500647', 'tray_id': '26'}, {'sku_total': 36, 'door_id': '', 'unit_price': '36', 'image_url': 'https://images.tinymart.in/product/4500612-4575.jpg', 'mrp': '38', 'name': 'Alo Frut Mosambi Juice  per peice', 'qty': 1, 'skuid': '4500612', 'tray_id': '38'}, {'sku_total': 25, 'door_id': '', 'unit_price': '25', 'image_url': 'https://images.tinymart.in/product/4500700-8130.jpg', 'mrp': '25', 'name': 'Paper Boat Aamras 160ml per peice', 'qty': 1, 'skuid': '4500700', 'tray_id': '45'}], 'rstatus': True, 'logic': 'WBL'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 07:42:16,244.244 INFO    ] 2026-06-19 07:42:16
[2026-06-19 07:42:23,123.123 INFO    ] 200
[2026-06-19 07:42:23,126.126 INFO    ] {"tray_sync": [], "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"], "orders_data": [], "orders_synced": [], "order_items_synced": [], "orders": [], "status": true, "orders_data_synced": [], "order_items": []}
[2026-06-19 07:42:23,130.130 INFO    ] 2026-06-19 07:42:23
[2026-06-19 07:42:23,228.228 INFO    ] 200
[2026-06-19 07:42:23,230.230 INFO    ] True
[2026-06-19 07:42:23,233.233 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260619074009665
[2026-06-19 07:42:23,237.237 INFO    ] start order file deleted
[2026-06-19 07:42:23,241.241 INFO    ] Checking for system updates...
[2026-06-19 07:42:23,280.280 INFO    ] 200
[2026-06-19 07:42:23,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:42:23,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:42:23,352.352 INFO    ] No update needed
[2026-06-19 07:42:23,355.355 INFO    ] Checking for camera pi updates...
[2026-06-19 07:42:23,393.393 INFO    ] 200
[2026-06-19 07:42:23,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:42:23,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:42:23,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:42:23,503.503 INFO    ] No camera update needed
[2026-06-19 07:42:23,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:42:23,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:42:23,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:42:23,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:42:25,565.565 INFO    ] ================================================
[2026-06-19 07:42:25,581.581 INFO    ] Launching Daemon at Fri Jun 19 07:42:25 IST 2026
[2026-06-19 07:42:25,592.592 INFO    ] ================================================
[2026-06-19 07:42:26,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:42:26
[2026-06-19 07:42:26,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:42:27,356.356 INFO    ] Initializing speech engine...
[2026-06-19 07:42:27,378.378 INFO    ] 2026-06-19 07:42:27
[2026-06-19 07:42:27,750.750 INFO    ] 2026-06-19 07:42:27
[2026-06-19 07:42:27,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:42:29,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:42:29,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:42:29,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:42:29,206.206 INFO    ] time= 19/06/2026 07:42:29
[2026-06-19 07:42:29,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:42:29,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:42:29,277.277 INFO    ] No existing commands found in stream
[2026-06-19 07:42:34,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:42:34,291.291 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 07:42:35,115.115 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:42:35,118.118 INFO    ] Checking for system updates...
[2026-06-19 07:42:35,154.154 INFO    ] 200
[2026-06-19 07:42:35,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:42:35,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:42:35,213.213 INFO    ] No update needed
[2026-06-19 07:42:35,215.215 INFO    ] Checking for camera pi updates...
[2026-06-19 07:42:35,249.249 INFO    ] 200
[2026-06-19 07:42:35,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:42:35,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:42:35,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:42:35,323.323 INFO    ] No camera update needed
[2026-06-19 07:42:35,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:42:35,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:42:35,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:42:35,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:42:37,381.381 INFO    ] ================================================
[2026-06-19 07:42:37,397.397 INFO    ] Launching Daemon at Fri Jun 19 07:42:37 IST 2026
[2026-06-19 07:42:37,407.407 INFO    ] ================================================
[2026-06-19 07:42:37,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:42:37
[2026-06-19 07:42:38,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:42:38,845.845 INFO    ] Initializing speech engine...
[2026-06-19 07:42:38,861.861 INFO    ] 2026-06-19 07:42:38
[2026-06-19 07:42:39,130.130 INFO    ] 2026-06-19 07:42:39
[2026-06-19 07:42:39,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:42:39,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:42:39,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:42:39,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:42:39,542.542 INFO    ] time= 19/06/2026 07:42:39
[2026-06-19 07:42:39,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:42:39,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:42:39,626.626 INFO    ] No existing commands found in stream
[2026-06-19 07:42:44,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:42:44,641.641 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 07:42:48,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:42:48,610.610 INFO    ] Checking for system updates...
[2026-06-19 07:42:48,649.649 INFO    ] 200
[2026-06-19 07:42:48,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:42:48,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:42:48,708.708 INFO    ] No update needed
[2026-06-19 07:42:48,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 07:42:48,743.743 INFO    ] 200
[2026-06-19 07:42:48,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:42:48,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:42:49,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:42:49,918.918 INFO    ] No camera update needed
[2026-06-19 07:42:49,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:42:49,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:42:49,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:42:49,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:42:51,975.975 INFO    ] ================================================
[2026-06-19 07:42:51,989.989 INFO    ] Launching Daemon at Fri Jun 19 07:42:51 IST 2026
[2026-06-19 07:42:52,001.001 INFO    ] ================================================
[2026-06-19 07:42:52,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:42:52
[2026-06-19 07:42:53,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:42:53,580.580 INFO    ] Initializing speech engine...
[2026-06-19 07:42:53,600.600 INFO    ] 2026-06-19 07:42:53
[2026-06-19 07:42:53,875.875 INFO    ] 2026-06-19 07:42:53
[2026-06-19 07:42:53,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:42:54,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:42:54,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:42:54,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:42:54,370.370 INFO    ] time= 19/06/2026 07:42:54
[2026-06-19 07:42:54,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:42:54,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:42:54,497.497 INFO    ] No existing commands found in stream
[2026-06-19 07:42:59,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:42:59,515.515 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 07:43:02,494.494 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:43:02,497.497 INFO    ] Checking for system updates...
[2026-06-19 07:43:02,540.540 INFO    ] 200
[2026-06-19 07:43:02,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:02,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:43:02,619.619 INFO    ] No update needed
[2026-06-19 07:43:02,622.622 INFO    ] Checking for camera pi updates...
[2026-06-19 07:43:02,660.660 INFO    ] 200
[2026-06-19 07:43:02,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:02,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:43:02,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:43:02,750.750 INFO    ] No camera update needed
[2026-06-19 07:43:02,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:43:02,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:43:02,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:43:02,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:43:04,810.810 INFO    ] ================================================
[2026-06-19 07:43:04,826.826 INFO    ] Launching Daemon at Fri Jun 19 07:43:04 IST 2026
[2026-06-19 07:43:04,837.837 INFO    ] ================================================
[2026-06-19 07:43:05,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:43:05
[2026-06-19 07:43:06,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:43:06,303.303 INFO    ] Initializing speech engine...
[2026-06-19 07:43:06,320.320 INFO    ] 2026-06-19 07:43:06
[2026-06-19 07:43:06,608.608 INFO    ] 2026-06-19 07:43:06
[2026-06-19 07:43:06,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:43:06,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:43:06,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:43:07,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:43:07,067.067 INFO    ] time= 19/06/2026 07:43:07
[2026-06-19 07:43:07,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:43:07,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:43:07,300.300 INFO    ] No existing commands found in stream
[2026-06-19 07:43:12,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:43:12,336.336 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 07:43:14,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:43:14,012.012 INFO    ] Checking for system updates...
[2026-06-19 07:43:14,049.049 INFO    ] 200
[2026-06-19 07:43:14,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:14,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:43:14,108.108 INFO    ] No update needed
[2026-06-19 07:43:14,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 07:43:14,145.145 INFO    ] 200
[2026-06-19 07:43:14,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:14,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:43:14,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:43:14,243.243 INFO    ] No camera update needed
[2026-06-19 07:43:14,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:43:14,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:43:14,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:43:14,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:43:16,302.302 INFO    ] ================================================
[2026-06-19 07:43:16,317.317 INFO    ] Launching Daemon at Fri Jun 19 07:43:16 IST 2026
[2026-06-19 07:43:16,328.328 INFO    ] ================================================
[2026-06-19 07:43:16,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:43:16
[2026-06-19 07:43:17,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:43:17,941.941 INFO    ] Initializing speech engine...
[2026-06-19 07:43:17,952.952 INFO    ] 2026-06-19 07:43:17
[2026-06-19 07:43:18,230.230 INFO    ] 2026-06-19 07:43:18
[2026-06-19 07:43:18,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:43:18,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:43:18,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:43:18,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:43:18,696.696 INFO    ] time= 19/06/2026 07:43:18
[2026-06-19 07:43:18,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:43:18,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:43:18,832.832 INFO    ] No existing commands found in stream
[2026-06-19 07:43:23,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:43:23,849.849 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 07:43:24,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:43:24,438.438 INFO    ] Checking for system updates...
[2026-06-19 07:43:24,476.476 INFO    ] 200
[2026-06-19 07:43:24,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:24,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:43:24,535.535 INFO    ] No update needed
[2026-06-19 07:43:24,538.538 INFO    ] Checking for camera pi updates...
[2026-06-19 07:43:24,576.576 INFO    ] 200
[2026-06-19 07:43:24,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:24,625.625 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:43:24,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:43:24,673.673 INFO    ] No camera update needed
[2026-06-19 07:43:24,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:43:24,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:43:24,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:43:24,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:43:26,730.730 INFO    ] ================================================
[2026-06-19 07:43:26,746.746 INFO    ] Launching Daemon at Fri Jun 19 07:43:26 IST 2026
[2026-06-19 07:43:26,756.756 INFO    ] ================================================
[2026-06-19 07:43:27,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:43:27
[2026-06-19 07:43:27,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:43:28,196.196 INFO    ] Initializing speech engine...
[2026-06-19 07:43:28,215.215 INFO    ] 2026-06-19 07:43:28
[2026-06-19 07:43:28,469.469 INFO    ] 2026-06-19 07:43:28
[2026-06-19 07:43:28,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:43:28,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:43:28,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:43:28,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:43:28,937.937 INFO    ] time= 19/06/2026 07:43:28
[2026-06-19 07:43:28,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:43:29,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:43:29,091.091 INFO    ] No existing commands found in stream
[2026-06-19 07:43:34,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:43:34,106.106 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-19 07:43:37,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:43:37,499.499 INFO    ] Checking for system updates...
[2026-06-19 07:43:37,536.536 INFO    ] 200
[2026-06-19 07:43:37,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:37,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:43:37,593.593 INFO    ] No update needed
[2026-06-19 07:43:37,596.596 INFO    ] Checking for camera pi updates...
[2026-06-19 07:43:37,633.633 INFO    ] 200
[2026-06-19 07:43:37,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:37,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:43:37,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:43:37,719.719 INFO    ] No camera update needed
[2026-06-19 07:43:37,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:43:37,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:43:37,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:43:37,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:43:39,776.776 INFO    ] ================================================
[2026-06-19 07:43:39,791.791 INFO    ] Launching Daemon at Fri Jun 19 07:43:39 IST 2026
[2026-06-19 07:43:39,802.802 INFO    ] ================================================
[2026-06-19 07:43:40,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:43:40
[2026-06-19 07:43:40,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:43:41,207.207 INFO    ] Initializing speech engine...
[2026-06-19 07:43:41,230.230 INFO    ] 2026-06-19 07:43:41
[2026-06-19 07:43:41,482.482 INFO    ] 2026-06-19 07:43:41
[2026-06-19 07:43:41,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:43:41,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:43:41,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:43:41,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:43:41,978.978 INFO    ] time= 19/06/2026 07:43:41
[2026-06-19 07:43:42,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:43:42,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:43:42,105.105 INFO    ] No existing commands found in stream
[2026-06-19 07:43:47,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:43:47,119.119 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 07:43:49,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:43:49,782.782 INFO    ] Checking for system updates...
[2026-06-19 07:43:49,818.818 INFO    ] 200
[2026-06-19 07:43:49,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:49,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:43:49,876.876 INFO    ] No update needed
[2026-06-19 07:43:49,879.879 INFO    ] Checking for camera pi updates...
[2026-06-19 07:43:49,913.913 INFO    ] 200
[2026-06-19 07:43:49,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:43:49,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:43:50,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:43:50,016.016 INFO    ] No camera update needed
[2026-06-19 07:43:50,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:43:50,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:43:50,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:43:50,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:43:52,071.071 INFO    ] ================================================
[2026-06-19 07:43:52,086.086 INFO    ] Launching Daemon at Fri Jun 19 07:43:52 IST 2026
[2026-06-19 07:43:52,096.096 INFO    ] ================================================
[2026-06-19 07:43:52,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:43:52
[2026-06-19 07:43:53,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:43:53,531.531 INFO    ] Initializing speech engine...
[2026-06-19 07:43:53,537.537 INFO    ] 2026-06-19 07:43:53
[2026-06-19 07:43:53,815.815 INFO    ] 2026-06-19 07:43:53
[2026-06-19 07:43:53,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:43:54,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:43:54,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:43:54,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:43:54,187.187 INFO    ] time= 19/06/2026 07:43:54
[2026-06-19 07:43:54,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:43:54,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:43:54,360.360 INFO    ] No existing commands found in stream
[2026-06-19 07:43:59,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:43:59,393.393 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 07:44:00,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:44:00,194.194 INFO    ] Checking for system updates...
[2026-06-19 07:44:00,233.233 INFO    ] 200
[2026-06-19 07:44:00,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:00,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:44:00,293.293 INFO    ] No update needed
[2026-06-19 07:44:00,295.295 INFO    ] Checking for camera pi updates...
[2026-06-19 07:44:00,331.331 INFO    ] 200
[2026-06-19 07:44:00,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:00,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:44:00,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:44:00,424.424 INFO    ] No camera update needed
[2026-06-19 07:44:00,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:44:00,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:44:00,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:44:00,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:44:02,494.494 INFO    ] ================================================
[2026-06-19 07:44:02,515.515 INFO    ] Launching Daemon at Fri Jun 19 07:44:02 IST 2026
[2026-06-19 07:44:02,531.531 INFO    ] ================================================
[2026-06-19 07:44:03,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:44:03
[2026-06-19 07:44:03,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:44:04,164.164 INFO    ] Initializing speech engine...
[2026-06-19 07:44:04,172.172 INFO    ] 2026-06-19 07:44:04
[2026-06-19 07:44:04,445.445 INFO    ] 2026-06-19 07:44:04
[2026-06-19 07:44:04,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:44:04,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:44:04,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:44:04,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:44:04,941.941 INFO    ] time= 19/06/2026 07:44:04
[2026-06-19 07:44:04,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:44:05,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:44:05,141.141 INFO    ] No existing commands found in stream
[2026-06-19 07:44:10,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:44:10,166.166 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 07:44:14,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:44:14,196.196 INFO    ] Checking for system updates...
[2026-06-19 07:44:14,232.232 INFO    ] 200
[2026-06-19 07:44:14,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:14,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:44:14,296.296 INFO    ] No update needed
[2026-06-19 07:44:14,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 07:44:14,334.334 INFO    ] 200
[2026-06-19 07:44:14,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:14,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:44:14,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:44:14,537.537 INFO    ] No camera update needed
[2026-06-19 07:44:14,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:44:14,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:44:14,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:44:14,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:44:16,596.596 INFO    ] ================================================
[2026-06-19 07:44:16,612.612 INFO    ] Launching Daemon at Fri Jun 19 07:44:16 IST 2026
[2026-06-19 07:44:16,622.622 INFO    ] ================================================
[2026-06-19 07:44:17,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:44:17
[2026-06-19 07:44:17,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:44:18,029.029 INFO    ] Initializing speech engine...
[2026-06-19 07:44:18,038.038 INFO    ] 2026-06-19 07:44:18
[2026-06-19 07:44:18,326.326 INFO    ] 2026-06-19 07:44:18
[2026-06-19 07:44:18,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:44:18,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:44:18,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:44:18,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:44:18,711.711 INFO    ] time= 19/06/2026 07:44:18
[2026-06-19 07:44:18,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:44:18,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:44:18,817.817 INFO    ] No existing commands found in stream
[2026-06-19 07:44:23,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:44:23,832.832 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 07:44:27,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:44:27,741.741 INFO    ] Checking for system updates...
[2026-06-19 07:44:27,777.777 INFO    ] 200
[2026-06-19 07:44:27,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:27,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:44:27,833.833 INFO    ] No update needed
[2026-06-19 07:44:27,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 07:44:27,869.869 INFO    ] 200
[2026-06-19 07:44:27,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:27,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:44:27,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:44:27,954.954 INFO    ] No camera update needed
[2026-06-19 07:44:27,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:44:27,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:44:27,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:44:27,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:44:30,011.011 INFO    ] ================================================
[2026-06-19 07:44:30,033.033 INFO    ] Launching Daemon at Fri Jun 19 07:44:30 IST 2026
[2026-06-19 07:44:30,043.043 INFO    ] ================================================
[2026-06-19 07:44:30,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:44:30
[2026-06-19 07:44:31,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:44:31,470.470 INFO    ] Initializing speech engine...
[2026-06-19 07:44:31,483.483 INFO    ] 2026-06-19 07:44:31
[2026-06-19 07:44:31,759.759 INFO    ] 2026-06-19 07:44:31
[2026-06-19 07:44:31,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:44:32,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:44:32,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:44:32,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:44:32,145.145 INFO    ] time= 19/06/2026 07:44:32
[2026-06-19 07:44:32,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:44:32,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:44:32,262.262 INFO    ] No existing commands found in stream
[2026-06-19 07:44:37,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:44:37,275.275 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 07:44:39,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:44:39,690.690 INFO    ] Checking for system updates...
[2026-06-19 07:44:39,726.726 INFO    ] 200
[2026-06-19 07:44:39,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:39,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:44:39,784.784 INFO    ] No update needed
[2026-06-19 07:44:39,787.787 INFO    ] Checking for camera pi updates...
[2026-06-19 07:44:39,821.821 INFO    ] 200
[2026-06-19 07:44:39,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:39,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:44:39,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:44:39,891.891 INFO    ] No camera update needed
[2026-06-19 07:44:39,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:44:39,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:44:39,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:44:39,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:44:41,946.946 INFO    ] ================================================
[2026-06-19 07:44:41,962.962 INFO    ] Launching Daemon at Fri Jun 19 07:44:41 IST 2026
[2026-06-19 07:44:41,972.972 INFO    ] ================================================
[2026-06-19 07:44:42,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:44:42
[2026-06-19 07:44:43,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:44:43,412.412 INFO    ] Initializing speech engine...
[2026-06-19 07:44:43,421.421 INFO    ] 2026-06-19 07:44:43
[2026-06-19 07:44:43,708.708 INFO    ] 2026-06-19 07:44:43
[2026-06-19 07:44:43,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:44:43,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:44:43,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:44:44,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:44:44,117.117 INFO    ] time= 19/06/2026 07:44:44
[2026-06-19 07:44:44,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:44:44,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:44:44,202.202 INFO    ] No existing commands found in stream
[2026-06-19 07:44:49,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:44:49,225.225 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 07:44:52,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:44:52,803.803 INFO    ] Checking for system updates...
[2026-06-19 07:44:52,840.840 INFO    ] 200
[2026-06-19 07:44:52,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:52,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:44:52,900.900 INFO    ] No update needed
[2026-06-19 07:44:52,903.903 INFO    ] Checking for camera pi updates...
[2026-06-19 07:44:52,937.937 INFO    ] 200
[2026-06-19 07:44:52,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:44:52,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:44:53,024.024 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:44:53,027.027 INFO    ] No camera update needed
[2026-06-19 07:44:53,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:44:53,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:44:53,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:44:53,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:44:55,085.085 INFO    ] ================================================
[2026-06-19 07:44:55,100.100 INFO    ] Launching Daemon at Fri Jun 19 07:44:55 IST 2026
[2026-06-19 07:44:55,111.111 INFO    ] ================================================
[2026-06-19 07:44:55,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:44:55
[2026-06-19 07:44:56,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:44:56,689.689 INFO    ] Initializing speech engine...
[2026-06-19 07:44:56,697.697 INFO    ] 2026-06-19 07:44:56
[2026-06-19 07:44:56,984.984 INFO    ] 2026-06-19 07:44:56
[2026-06-19 07:44:57,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:44:57,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:44:57,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:44:57,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:44:57,477.477 INFO    ] time= 19/06/2026 07:44:57
[2026-06-19 07:44:57,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:44:57,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:44:57,642.642 INFO    ] No existing commands found in stream
[2026-06-19 07:45:02,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:45:02,679.679 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 07:45:03,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:45:03,184.184 INFO    ] Checking for system updates...
[2026-06-19 07:45:03,245.245 INFO    ] 200
[2026-06-19 07:45:03,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:03,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:45:03,319.319 INFO    ] No update needed
[2026-06-19 07:45:03,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 07:45:03,368.368 INFO    ] 200
[2026-06-19 07:45:03,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:03,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:45:03,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:45:03,473.473 INFO    ] No camera update needed
[2026-06-19 07:45:03,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:45:03,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:45:03,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:45:03,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:45:05,533.533 INFO    ] ================================================
[2026-06-19 07:45:05,548.548 INFO    ] Launching Daemon at Fri Jun 19 07:45:05 IST 2026
[2026-06-19 07:45:05,559.559 INFO    ] ================================================
[2026-06-19 07:45:06,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:45:06
[2026-06-19 07:45:06,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:45:07,010.010 INFO    ] Initializing speech engine...
[2026-06-19 07:45:07,017.017 INFO    ] 2026-06-19 07:45:07
[2026-06-19 07:45:07,292.292 INFO    ] 2026-06-19 07:45:07
[2026-06-19 07:45:07,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:45:07,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:45:07,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:45:07,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:45:07,771.771 INFO    ] time= 19/06/2026 07:45:07
[2026-06-19 07:45:07,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:45:07,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:45:07,915.915 INFO    ] No existing commands found in stream
[2026-06-19 07:45:12,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:45:12,933.933 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 07:45:16,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:45:16,999.999 INFO    ] Checking for system updates...
[2026-06-19 07:45:17,034.034 INFO    ] 200
[2026-06-19 07:45:17,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:17,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:45:17,092.092 INFO    ] No update needed
[2026-06-19 07:45:17,095.095 INFO    ] Checking for camera pi updates...
[2026-06-19 07:45:17,129.129 INFO    ] 200
[2026-06-19 07:45:17,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:17,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:45:17,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:45:17,218.218 INFO    ] No camera update needed
[2026-06-19 07:45:17,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:45:17,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:45:17,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:45:17,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:45:19,277.277 INFO    ] ================================================
[2026-06-19 07:45:19,292.292 INFO    ] Launching Daemon at Fri Jun 19 07:45:19 IST 2026
[2026-06-19 07:45:19,303.303 INFO    ] ================================================
[2026-06-19 07:45:19,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:45:19
[2026-06-19 07:45:20,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:45:20,723.723 INFO    ] Initializing speech engine...
[2026-06-19 07:45:20,747.747 INFO    ] 2026-06-19 07:45:20
[2026-06-19 07:45:21,016.016 INFO    ] 2026-06-19 07:45:20
[2026-06-19 07:45:21,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:45:21,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:45:21,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:45:21,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:45:21,431.431 INFO    ] time= 19/06/2026 07:45:21
[2026-06-19 07:45:21,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:45:21,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:45:21,620.620 INFO    ] No existing commands found in stream
[2026-06-19 07:45:26,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:45:26,653.653 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 07:45:29,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:45:29,832.832 INFO    ] Checking for system updates...
[2026-06-19 07:45:29,869.869 INFO    ] 200
[2026-06-19 07:45:29,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:29,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:45:29,928.928 INFO    ] No update needed
[2026-06-19 07:45:29,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 07:45:29,968.968 INFO    ] 200
[2026-06-19 07:45:29,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:30,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:45:30,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:45:30,056.056 INFO    ] No camera update needed
[2026-06-19 07:45:30,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:45:30,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:45:30,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:45:30,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:45:32,117.117 INFO    ] ================================================
[2026-06-19 07:45:32,133.133 INFO    ] Launching Daemon at Fri Jun 19 07:45:32 IST 2026
[2026-06-19 07:45:32,145.145 INFO    ] ================================================
[2026-06-19 07:45:32,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:45:32
[2026-06-19 07:45:33,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:45:33,623.623 INFO    ] Initializing speech engine...
[2026-06-19 07:45:33,631.631 INFO    ] 2026-06-19 07:45:33
[2026-06-19 07:45:33,929.929 INFO    ] 2026-06-19 07:45:33
[2026-06-19 07:45:33,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:45:34,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:45:34,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:45:34,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:45:34,302.302 INFO    ] time= 19/06/2026 07:45:34
[2026-06-19 07:45:34,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:45:34,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:45:34,425.425 INFO    ] No existing commands found in stream
[2026-06-19 07:45:39,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:45:39,440.440 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 07:45:43,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:45:43,054.054 INFO    ] Checking for system updates...
[2026-06-19 07:45:43,090.090 INFO    ] 200
[2026-06-19 07:45:43,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:43,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:45:43,148.148 INFO    ] No update needed
[2026-06-19 07:45:43,150.150 INFO    ] Checking for camera pi updates...
[2026-06-19 07:45:43,184.184 INFO    ] 200
[2026-06-19 07:45:43,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:43,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:45:43,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:45:43,271.271 INFO    ] No camera update needed
[2026-06-19 07:45:43,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:45:43,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:45:43,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:45:43,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:45:45,332.332 INFO    ] ================================================
[2026-06-19 07:45:45,347.347 INFO    ] Launching Daemon at Fri Jun 19 07:45:45 IST 2026
[2026-06-19 07:45:45,358.358 INFO    ] ================================================
[2026-06-19 07:45:45,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:45:45
[2026-06-19 07:45:46,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:45:46,784.784 INFO    ] Initializing speech engine...
[2026-06-19 07:45:46,790.790 INFO    ] 2026-06-19 07:45:46
[2026-06-19 07:45:47,085.085 INFO    ] 2026-06-19 07:45:47
[2026-06-19 07:45:47,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:45:47,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:45:47,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:45:47,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:45:47,467.467 INFO    ] time= 19/06/2026 07:45:47
[2026-06-19 07:45:47,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:45:47,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:45:47,594.594 INFO    ] No existing commands found in stream
[2026-06-19 07:45:52,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:45:52,608.608 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 07:45:56,345.345 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:45:56,347.347 INFO    ] Checking for system updates...
[2026-06-19 07:45:56,384.384 INFO    ] 200
[2026-06-19 07:45:56,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:56,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:45:56,447.447 INFO    ] No update needed
[2026-06-19 07:45:56,449.449 INFO    ] Checking for camera pi updates...
[2026-06-19 07:45:56,483.483 INFO    ] 200
[2026-06-19 07:45:56,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:45:56,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:45:56,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:45:56,571.571 INFO    ] No camera update needed
[2026-06-19 07:45:56,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:45:56,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:45:56,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:45:56,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:45:58,627.627 INFO    ] ================================================
[2026-06-19 07:45:58,644.644 INFO    ] Launching Daemon at Fri Jun 19 07:45:58 IST 2026
[2026-06-19 07:45:58,655.655 INFO    ] ================================================
[2026-06-19 07:45:59,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:45:59
[2026-06-19 07:45:59,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:46:00,267.267 INFO    ] Initializing speech engine...
[2026-06-19 07:46:00,280.280 INFO    ] 2026-06-19 07:46:00
[2026-06-19 07:46:00,561.561 INFO    ] 2026-06-19 07:46:00
[2026-06-19 07:46:00,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:46:00,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:46:00,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:46:01,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:46:01,093.093 INFO    ] time= 19/06/2026 07:46:01
[2026-06-19 07:46:01,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:46:01,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:46:01,263.263 INFO    ] No existing commands found in stream
[2026-06-19 07:46:06,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:46:06,301.301 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 07:46:09,374.374 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:46:09,377.377 INFO    ] Checking for system updates...
[2026-06-19 07:46:09,417.417 INFO    ] 200
[2026-06-19 07:46:09,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:09,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:46:09,483.483 INFO    ] No update needed
[2026-06-19 07:46:09,485.485 INFO    ] Checking for camera pi updates...
[2026-06-19 07:46:09,520.520 INFO    ] 200
[2026-06-19 07:46:09,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:09,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:46:09,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:46:09,609.609 INFO    ] No camera update needed
[2026-06-19 07:46:09,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:46:09,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:46:09,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:46:09,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:46:11,667.667 INFO    ] ================================================
[2026-06-19 07:46:11,682.682 INFO    ] Launching Daemon at Fri Jun 19 07:46:11 IST 2026
[2026-06-19 07:46:11,693.693 INFO    ] ================================================
[2026-06-19 07:46:12,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:46:12
[2026-06-19 07:46:12,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:46:13,112.112 INFO    ] Initializing speech engine...
[2026-06-19 07:46:13,128.128 INFO    ] 2026-06-19 07:46:13
[2026-06-19 07:46:13,406.406 INFO    ] 2026-06-19 07:46:13
[2026-06-19 07:46:13,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:46:13,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:46:13,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:46:13,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:46:13,772.772 INFO    ] time= 19/06/2026 07:46:13
[2026-06-19 07:46:13,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:46:13,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:46:13,872.872 INFO    ] No existing commands found in stream
[2026-06-19 07:46:18,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:46:18,900.900 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 07:46:21,009.009 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:46:21,012.012 INFO    ] Checking for system updates...
[2026-06-19 07:46:21,052.052 INFO    ] 200
[2026-06-19 07:46:21,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:21,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:46:21,109.109 INFO    ] No update needed
[2026-06-19 07:46:21,112.112 INFO    ] Checking for camera pi updates...
[2026-06-19 07:46:21,146.146 INFO    ] 200
[2026-06-19 07:46:21,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:21,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:46:21,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:46:21,335.335 INFO    ] No camera update needed
[2026-06-19 07:46:21,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:46:21,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:46:21,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:46:21,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:46:23,391.391 INFO    ] ================================================
[2026-06-19 07:46:23,407.407 INFO    ] Launching Daemon at Fri Jun 19 07:46:23 IST 2026
[2026-06-19 07:46:23,418.418 INFO    ] ================================================
[2026-06-19 07:46:24,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:46:24
[2026-06-19 07:46:24,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:46:25,002.002 INFO    ] Initializing speech engine...
[2026-06-19 07:46:25,007.007 INFO    ] 2026-06-19 07:46:25
[2026-06-19 07:46:25,293.293 INFO    ] 2026-06-19 07:46:25
[2026-06-19 07:46:25,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:46:25,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:46:25,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:46:25,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:46:25,763.763 INFO    ] time= 19/06/2026 07:46:25
[2026-06-19 07:46:25,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:46:25,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:46:25,909.909 INFO    ] No existing commands found in stream
[2026-06-19 07:46:30,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:46:30,950.950 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 07:46:32,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:46:32,996.996 INFO    ] Checking for system updates...
[2026-06-19 07:46:33,039.039 INFO    ] 200
[2026-06-19 07:46:33,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:33,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:46:33,109.109 INFO    ] No update needed
[2026-06-19 07:46:33,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 07:46:33,148.148 INFO    ] 200
[2026-06-19 07:46:33,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:33,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:46:33,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:46:33,233.233 INFO    ] No camera update needed
[2026-06-19 07:46:33,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:46:33,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:46:33,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:46:33,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:46:35,290.290 INFO    ] ================================================
[2026-06-19 07:46:35,305.305 INFO    ] Launching Daemon at Fri Jun 19 07:46:35 IST 2026
[2026-06-19 07:46:35,316.316 INFO    ] ================================================
[2026-06-19 07:46:35,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:46:35
[2026-06-19 07:46:36,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:46:36,895.895 INFO    ] Initializing speech engine...
[2026-06-19 07:46:36,902.902 INFO    ] 2026-06-19 07:46:36
[2026-06-19 07:46:37,171.171 INFO    ] 2026-06-19 07:46:37
[2026-06-19 07:46:37,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:46:37,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:46:37,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:46:37,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:46:37,652.652 INFO    ] time= 19/06/2026 07:46:37
[2026-06-19 07:46:37,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:46:37,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:46:37,799.799 INFO    ] No existing commands found in stream
[2026-06-19 07:46:42,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:46:42,828.828 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 07:46:44,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:46:44,999.999 INFO    ] Checking for system updates...
[2026-06-19 07:46:45,036.036 INFO    ] 200
[2026-06-19 07:46:45,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:45,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:46:45,096.096 INFO    ] No update needed
[2026-06-19 07:46:45,099.099 INFO    ] Checking for camera pi updates...
[2026-06-19 07:46:45,133.133 INFO    ] 200
[2026-06-19 07:46:45,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:45,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:46:45,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:46:45,225.225 INFO    ] No camera update needed
[2026-06-19 07:46:45,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:46:45,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:46:45,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:46:45,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:46:47,283.283 INFO    ] ================================================
[2026-06-19 07:46:47,299.299 INFO    ] Launching Daemon at Fri Jun 19 07:46:47 IST 2026
[2026-06-19 07:46:47,310.310 INFO    ] ================================================
[2026-06-19 07:46:47,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:46:47
[2026-06-19 07:46:48,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:46:48,737.737 INFO    ] Initializing speech engine...
[2026-06-19 07:46:48,746.746 INFO    ] 2026-06-19 07:46:48
[2026-06-19 07:46:48,996.996 INFO    ] 2026-06-19 07:46:48
[2026-06-19 07:46:49,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:46:49,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:46:49,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:46:49,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:46:49,372.372 INFO    ] time= 19/06/2026 07:46:49
[2026-06-19 07:46:49,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:46:49,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:46:49,546.546 INFO    ] No existing commands found in stream
[2026-06-19 07:46:54,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:46:54,574.574 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 07:46:56,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:46:56,310.310 INFO    ] Checking for system updates...
[2026-06-19 07:46:56,347.347 INFO    ] 200
[2026-06-19 07:46:56,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:56,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:46:56,413.413 INFO    ] No update needed
[2026-06-19 07:46:56,416.416 INFO    ] Checking for camera pi updates...
[2026-06-19 07:46:56,451.451 INFO    ] 200
[2026-06-19 07:46:56,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:46:56,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:46:56,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:46:56,527.527 INFO    ] No camera update needed
[2026-06-19 07:46:56,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:46:56,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:46:56,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:46:56,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:46:58,588.588 INFO    ] ================================================
[2026-06-19 07:46:58,603.603 INFO    ] Launching Daemon at Fri Jun 19 07:46:58 IST 2026
[2026-06-19 07:46:58,614.614 INFO    ] ================================================
[2026-06-19 07:46:59,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:46:59
[2026-06-19 07:46:59,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:47:00,231.231 INFO    ] Initializing speech engine...
[2026-06-19 07:47:00,241.241 INFO    ] 2026-06-19 07:47:00
[2026-06-19 07:47:00,528.528 INFO    ] 2026-06-19 07:47:00
[2026-06-19 07:47:00,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:47:00,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:47:00,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:47:01,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:47:01,059.059 INFO    ] time= 19/06/2026 07:47:01
[2026-06-19 07:47:01,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:47:01,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:47:01,215.215 INFO    ] No existing commands found in stream
[2026-06-19 07:47:06,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:47:06,243.243 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 07:47:08,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:47:08,426.426 INFO    ] Checking for system updates...
[2026-06-19 07:47:08,464.464 INFO    ] 200
[2026-06-19 07:47:08,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:08,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:47:08,528.528 INFO    ] No update needed
[2026-06-19 07:47:08,531.531 INFO    ] Checking for camera pi updates...
[2026-06-19 07:47:08,566.566 INFO    ] 200
[2026-06-19 07:47:08,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:08,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:47:08,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:47:08,657.657 INFO    ] No camera update needed
[2026-06-19 07:47:08,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:47:08,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:47:08,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:47:08,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:47:10,715.715 INFO    ] ================================================
[2026-06-19 07:47:10,730.730 INFO    ] Launching Daemon at Fri Jun 19 07:47:10 IST 2026
[2026-06-19 07:47:10,741.741 INFO    ] ================================================
[2026-06-19 07:47:11,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:47:11
[2026-06-19 07:47:11,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:47:12,152.152 INFO    ] Initializing speech engine...
[2026-06-19 07:47:12,176.176 INFO    ] 2026-06-19 07:47:12
[2026-06-19 07:47:12,447.447 INFO    ] 2026-06-19 07:47:12
[2026-06-19 07:47:12,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:47:12,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:47:12,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:47:12,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:47:12,816.816 INFO    ] time= 19/06/2026 07:47:12
[2026-06-19 07:47:12,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:47:12,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:47:12,938.938 INFO    ] No existing commands found in stream
[2026-06-19 07:47:17,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:47:17,953.953 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 07:47:19,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:47:19,489.489 INFO    ] Checking for system updates...
[2026-06-19 07:47:19,526.526 INFO    ] 200
[2026-06-19 07:47:19,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:19,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:47:19,588.588 INFO    ] No update needed
[2026-06-19 07:47:19,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 07:47:19,624.624 INFO    ] 200
[2026-06-19 07:47:19,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:19,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:47:19,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:47:19,717.717 INFO    ] No camera update needed
[2026-06-19 07:47:19,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:47:19,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:47:19,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:47:19,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:47:21,773.773 INFO    ] ================================================
[2026-06-19 07:47:21,789.789 INFO    ] Launching Daemon at Fri Jun 19 07:47:21 IST 2026
[2026-06-19 07:47:21,800.800 INFO    ] ================================================
[2026-06-19 07:47:22,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:47:22
[2026-06-19 07:47:22,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:47:23,226.226 INFO    ] Initializing speech engine...
[2026-06-19 07:47:23,235.235 INFO    ] 2026-06-19 07:47:23
[2026-06-19 07:47:23,523.523 INFO    ] 2026-06-19 07:47:23
[2026-06-19 07:47:23,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:47:23,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:47:23,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:47:23,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:47:24,021.021 INFO    ] time= 19/06/2026 07:47:23
[2026-06-19 07:47:24,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:47:24,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:47:24,196.196 INFO    ] No existing commands found in stream
[2026-06-19 07:47:29,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:47:29,211.211 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 07:47:30,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:47:30,807.807 INFO    ] Checking for system updates...
[2026-06-19 07:47:30,843.843 INFO    ] 200
[2026-06-19 07:47:30,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:30,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:47:30,902.902 INFO    ] No update needed
[2026-06-19 07:47:30,904.904 INFO    ] Checking for camera pi updates...
[2026-06-19 07:47:30,938.938 INFO    ] 200
[2026-06-19 07:47:30,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:30,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:47:31,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:47:31,037.037 INFO    ] No camera update needed
[2026-06-19 07:47:31,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:47:31,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:47:31,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:47:31,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:47:33,092.092 INFO    ] ================================================
[2026-06-19 07:47:33,108.108 INFO    ] Launching Daemon at Fri Jun 19 07:47:33 IST 2026
[2026-06-19 07:47:33,119.119 INFO    ] ================================================
[2026-06-19 07:47:33,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:47:33
[2026-06-19 07:47:34,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:47:34,555.555 INFO    ] Initializing speech engine...
[2026-06-19 07:47:34,564.564 INFO    ] 2026-06-19 07:47:34
[2026-06-19 07:47:34,812.812 INFO    ] 2026-06-19 07:47:34
[2026-06-19 07:47:34,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:47:35,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:47:35,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:47:35,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:47:35,277.277 INFO    ] time= 19/06/2026 07:47:35
[2026-06-19 07:47:35,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:47:35,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:47:35,449.449 INFO    ] No existing commands found in stream
[2026-06-19 07:47:40,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:47:40,464.464 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 07:47:41,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:47:41,488.488 INFO    ] Checking for system updates...
[2026-06-19 07:47:41,523.523 INFO    ] 200
[2026-06-19 07:47:41,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:41,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:47:41,581.581 INFO    ] No update needed
[2026-06-19 07:47:41,583.583 INFO    ] Checking for camera pi updates...
[2026-06-19 07:47:41,616.616 INFO    ] 200
[2026-06-19 07:47:41,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:41,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:47:41,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:47:41,706.706 INFO    ] No camera update needed
[2026-06-19 07:47:41,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:47:41,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:47:41,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:47:41,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:47:43,761.761 INFO    ] ================================================
[2026-06-19 07:47:43,776.776 INFO    ] Launching Daemon at Fri Jun 19 07:47:43 IST 2026
[2026-06-19 07:47:43,787.787 INFO    ] ================================================
[2026-06-19 07:47:44,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:47:44
[2026-06-19 07:47:45,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:47:45,363.363 INFO    ] Initializing speech engine...
[2026-06-19 07:47:45,377.377 INFO    ] 2026-06-19 07:47:45
[2026-06-19 07:47:45,654.654 INFO    ] 2026-06-19 07:47:45
[2026-06-19 07:47:45,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:47:45,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:47:45,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:47:46,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:47:46,135.135 INFO    ] time= 19/06/2026 07:47:46
[2026-06-19 07:47:46,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:47:46,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:47:46,326.326 INFO    ] No existing commands found in stream
[2026-06-19 07:47:51,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:47:51,357.357 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 07:47:55,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:47:55,241.241 INFO    ] Checking for system updates...
[2026-06-19 07:47:55,278.278 INFO    ] 200
[2026-06-19 07:47:55,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:55,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:47:55,338.338 INFO    ] No update needed
[2026-06-19 07:47:55,340.340 INFO    ] Checking for camera pi updates...
[2026-06-19 07:47:55,375.375 INFO    ] 200
[2026-06-19 07:47:55,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:47:55,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:47:55,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:47:55,462.462 INFO    ] No camera update needed
[2026-06-19 07:47:55,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:47:55,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:47:55,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:47:55,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:47:57,519.519 INFO    ] ================================================
[2026-06-19 07:47:57,534.534 INFO    ] Launching Daemon at Fri Jun 19 07:47:57 IST 2026
[2026-06-19 07:47:57,545.545 INFO    ] ================================================
[2026-06-19 07:47:58,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:47:58
[2026-06-19 07:47:58,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:47:59,121.121 INFO    ] Initializing speech engine...
[2026-06-19 07:47:59,129.129 INFO    ] 2026-06-19 07:47:59
[2026-06-19 07:47:59,411.411 INFO    ] 2026-06-19 07:47:59
[2026-06-19 07:47:59,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:47:59,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:47:59,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:47:59,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:47:59,932.932 INFO    ] time= 19/06/2026 07:47:59
[2026-06-19 07:47:59,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:47:59,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:48:00,095.095 INFO    ] No existing commands found in stream
[2026-06-19 07:48:05,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:48:05,116.116 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 07:48:07,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:48:07,601.601 INFO    ] Checking for system updates...
[2026-06-19 07:48:07,638.638 INFO    ] 200
[2026-06-19 07:48:07,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:07,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:48:07,697.697 INFO    ] No update needed
[2026-06-19 07:48:07,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 07:48:07,734.734 INFO    ] 200
[2026-06-19 07:48:07,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:07,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:48:07,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:48:07,832.832 INFO    ] No camera update needed
[2026-06-19 07:48:07,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:48:07,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:48:07,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:48:07,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:48:09,888.888 INFO    ] ================================================
[2026-06-19 07:48:09,903.903 INFO    ] Launching Daemon at Fri Jun 19 07:48:09 IST 2026
[2026-06-19 07:48:09,914.914 INFO    ] ================================================
[2026-06-19 07:48:10,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:48:10
[2026-06-19 07:48:11,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:48:11,528.528 INFO    ] Initializing speech engine...
[2026-06-19 07:48:11,534.534 INFO    ] 2026-06-19 07:48:11
[2026-06-19 07:48:11,805.805 INFO    ] 2026-06-19 07:48:11
[2026-06-19 07:48:11,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:48:12,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:48:12,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:48:12,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:48:12,316.316 INFO    ] time= 19/06/2026 07:48:12
[2026-06-19 07:48:12,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:48:12,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:48:12,511.511 INFO    ] No existing commands found in stream
[2026-06-19 07:48:17,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:48:17,539.539 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 07:48:18,238.238 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:48:18,241.241 INFO    ] Checking for system updates...
[2026-06-19 07:48:18,278.278 INFO    ] 200
[2026-06-19 07:48:18,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:18,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:48:18,339.339 INFO    ] No update needed
[2026-06-19 07:48:18,341.341 INFO    ] Checking for camera pi updates...
[2026-06-19 07:48:18,376.376 INFO    ] 200
[2026-06-19 07:48:18,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:18,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:48:18,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:48:18,466.466 INFO    ] No camera update needed
[2026-06-19 07:48:18,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:48:18,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:48:18,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:48:18,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:48:20,524.524 INFO    ] ================================================
[2026-06-19 07:48:20,540.540 INFO    ] Launching Daemon at Fri Jun 19 07:48:20 IST 2026
[2026-06-19 07:48:20,551.551 INFO    ] ================================================
[2026-06-19 07:48:21,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:48:21
[2026-06-19 07:48:21,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:48:21,969.969 INFO    ] Initializing speech engine...
[2026-06-19 07:48:21,978.978 INFO    ] 2026-06-19 07:48:21
[2026-06-19 07:48:22,222.222 INFO    ] 2026-06-19 07:48:22
[2026-06-19 07:48:22,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:48:22,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:48:22,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:48:22,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:48:22,721.721 INFO    ] time= 19/06/2026 07:48:22
[2026-06-19 07:48:22,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:48:22,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:48:22,899.899 INFO    ] No existing commands found in stream
[2026-06-19 07:48:27,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:48:27,922.922 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 07:48:30,052.052 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:48:30,054.054 INFO    ] Checking for system updates...
[2026-06-19 07:48:30,090.090 INFO    ] 200
[2026-06-19 07:48:30,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:30,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:48:30,148.148 INFO    ] No update needed
[2026-06-19 07:48:30,150.150 INFO    ] Checking for camera pi updates...
[2026-06-19 07:48:30,184.184 INFO    ] 200
[2026-06-19 07:48:30,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:30,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:48:30,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:48:30,386.386 INFO    ] No camera update needed
[2026-06-19 07:48:30,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:48:30,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:48:30,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:48:30,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:48:32,450.450 INFO    ] ================================================
[2026-06-19 07:48:32,468.468 INFO    ] Launching Daemon at Fri Jun 19 07:48:32 IST 2026
[2026-06-19 07:48:32,480.480 INFO    ] ================================================
[2026-06-19 07:48:33,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:48:33
[2026-06-19 07:48:33,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:48:33,987.987 INFO    ] Initializing speech engine...
[2026-06-19 07:48:34,018.018 INFO    ] 2026-06-19 07:48:33
[2026-06-19 07:48:34,277.277 INFO    ] 2026-06-19 07:48:34
[2026-06-19 07:48:34,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:48:34,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:48:34,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:48:34,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:48:34,651.651 INFO    ] time= 19/06/2026 07:48:34
[2026-06-19 07:48:34,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:48:34,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:48:34,826.826 INFO    ] No existing commands found in stream
[2026-06-19 07:48:39,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:48:39,861.861 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 07:48:40,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:48:40,648.648 INFO    ] Checking for system updates...
[2026-06-19 07:48:40,689.689 INFO    ] 200
[2026-06-19 07:48:40,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:40,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:48:40,747.747 INFO    ] No update needed
[2026-06-19 07:48:40,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 07:48:40,783.783 INFO    ] 200
[2026-06-19 07:48:40,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:40,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:48:40,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:48:40,870.870 INFO    ] No camera update needed
[2026-06-19 07:48:40,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:48:40,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:48:40,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:48:40,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:48:42,925.925 INFO    ] ================================================
[2026-06-19 07:48:42,941.941 INFO    ] Launching Daemon at Fri Jun 19 07:48:42 IST 2026
[2026-06-19 07:48:42,952.952 INFO    ] ================================================
[2026-06-19 07:48:43,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:48:43
[2026-06-19 07:48:44,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:48:44,425.425 INFO    ] Initializing speech engine...
[2026-06-19 07:48:44,434.434 INFO    ] 2026-06-19 07:48:44
[2026-06-19 07:48:44,727.727 INFO    ] 2026-06-19 07:48:44
[2026-06-19 07:48:44,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:48:44,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:48:44,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:48:45,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:48:45,105.105 INFO    ] time= 19/06/2026 07:48:45
[2026-06-19 07:48:45,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:48:45,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:48:45,230.230 INFO    ] No existing commands found in stream
[2026-06-19 07:48:50,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:48:50,245.245 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 07:48:53,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:48:53,604.604 INFO    ] Checking for system updates...
[2026-06-19 07:48:53,640.640 INFO    ] 200
[2026-06-19 07:48:53,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:53,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:48:53,697.697 INFO    ] No update needed
[2026-06-19 07:48:53,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 07:48:53,750.750 INFO    ] 200
[2026-06-19 07:48:53,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:48:53,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:48:53,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:48:53,838.838 INFO    ] No camera update needed
[2026-06-19 07:48:53,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:48:53,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:48:53,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:48:53,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:48:55,896.896 INFO    ] ================================================
[2026-06-19 07:48:55,912.912 INFO    ] Launching Daemon at Fri Jun 19 07:48:55 IST 2026
[2026-06-19 07:48:55,923.923 INFO    ] ================================================
[2026-06-19 07:48:56,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:48:56
[2026-06-19 07:48:57,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:48:57,345.345 INFO    ] Initializing speech engine...
[2026-06-19 07:48:57,354.354 INFO    ] 2026-06-19 07:48:57
[2026-06-19 07:48:57,600.600 INFO    ] 2026-06-19 07:48:57
[2026-06-19 07:48:57,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:48:57,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:48:57,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:48:58,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:48:58,102.102 INFO    ] time= 19/06/2026 07:48:58
[2026-06-19 07:48:58,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:48:58,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:48:58,292.292 INFO    ] No existing commands found in stream
[2026-06-19 07:49:03,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:49:03,321.321 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 07:49:07,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:49:07,460.460 INFO    ] Checking for system updates...
[2026-06-19 07:49:07,496.496 INFO    ] 200
[2026-06-19 07:49:07,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:07,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:49:07,560.560 INFO    ] No update needed
[2026-06-19 07:49:07,563.563 INFO    ] Checking for camera pi updates...
[2026-06-19 07:49:07,600.600 INFO    ] 200
[2026-06-19 07:49:07,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:07,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:49:07,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:49:07,687.687 INFO    ] No camera update needed
[2026-06-19 07:49:07,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:49:07,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:49:07,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:49:07,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:49:09,746.746 INFO    ] ================================================
[2026-06-19 07:49:09,761.761 INFO    ] Launching Daemon at Fri Jun 19 07:49:09 IST 2026
[2026-06-19 07:49:09,772.772 INFO    ] ================================================
[2026-06-19 07:49:10,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:49:10
[2026-06-19 07:49:10,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:49:11,256.256 INFO    ] Initializing speech engine...
[2026-06-19 07:49:11,271.271 INFO    ] 2026-06-19 07:49:11
[2026-06-19 07:49:11,540.540 INFO    ] 2026-06-19 07:49:11
[2026-06-19 07:49:11,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:49:11,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:49:11,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:49:11,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:49:11,957.957 INFO    ] time= 19/06/2026 07:49:11
[2026-06-19 07:49:11,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:49:11,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:49:12,113.113 INFO    ] No existing commands found in stream
[2026-06-19 07:49:17,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:49:17,141.141 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 07:49:20,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:49:20,142.142 INFO    ] Checking for system updates...
[2026-06-19 07:49:20,178.178 INFO    ] 200
[2026-06-19 07:49:20,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:20,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:49:20,236.236 INFO    ] No update needed
[2026-06-19 07:49:20,238.238 INFO    ] Checking for camera pi updates...
[2026-06-19 07:49:20,272.272 INFO    ] 200
[2026-06-19 07:49:20,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:20,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:49:20,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:49:20,362.362 INFO    ] No camera update needed
[2026-06-19 07:49:20,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:49:20,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:49:20,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:49:20,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:49:22,417.417 INFO    ] ================================================
[2026-06-19 07:49:22,433.433 INFO    ] Launching Daemon at Fri Jun 19 07:49:22 IST 2026
[2026-06-19 07:49:22,444.444 INFO    ] ================================================
[2026-06-19 07:49:23,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:49:23
[2026-06-19 07:49:23,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:49:24,056.056 INFO    ] Initializing speech engine...
[2026-06-19 07:49:24,064.064 INFO    ] 2026-06-19 07:49:24
[2026-06-19 07:49:24,352.352 INFO    ] 2026-06-19 07:49:24
[2026-06-19 07:49:24,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:49:24,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:49:24,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:49:24,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:49:24,768.768 INFO    ] time= 19/06/2026 07:49:24
[2026-06-19 07:49:24,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:49:24,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:49:24,853.853 INFO    ] No existing commands found in stream
[2026-06-19 07:49:29,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:49:29,875.875 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 07:49:31,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:49:31,686.686 INFO    ] Checking for system updates...
[2026-06-19 07:49:31,722.722 INFO    ] 200
[2026-06-19 07:49:31,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:31,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:49:31,780.780 INFO    ] No update needed
[2026-06-19 07:49:31,782.782 INFO    ] Checking for camera pi updates...
[2026-06-19 07:49:31,816.816 INFO    ] 200
[2026-06-19 07:49:31,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:31,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:49:31,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:49:31,905.905 INFO    ] No camera update needed
[2026-06-19 07:49:31,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:49:31,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:49:31,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:49:31,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:49:33,968.968 INFO    ] ================================================
[2026-06-19 07:49:33,988.988 INFO    ] Launching Daemon at Fri Jun 19 07:49:33 IST 2026
[2026-06-19 07:49:34,999.999 INFO    ] ================================================
[2026-06-19 07:49:34,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:49:34
[2026-06-19 07:49:35,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:49:35,466.466 INFO    ] Initializing speech engine...
[2026-06-19 07:49:35,474.474 INFO    ] 2026-06-19 07:49:35
[2026-06-19 07:49:35,733.733 INFO    ] 2026-06-19 07:49:35
[2026-06-19 07:49:35,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:49:36,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:49:36,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:49:36,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:49:36,275.275 INFO    ] time= 19/06/2026 07:49:36
[2026-06-19 07:49:36,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:49:36,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:49:36,422.422 INFO    ] No existing commands found in stream
[2026-06-19 07:49:41,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:49:41,444.444 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 07:49:41,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:49:41,981.981 INFO    ] Checking for system updates...
[2026-06-19 07:49:42,021.021 INFO    ] 200
[2026-06-19 07:49:42,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:42,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:49:42,089.089 INFO    ] No update needed
[2026-06-19 07:49:42,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 07:49:42,126.126 INFO    ] 200
[2026-06-19 07:49:42,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:42,174.174 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:49:42,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:49:42,208.208 INFO    ] No camera update needed
[2026-06-19 07:49:42,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:49:42,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:49:42,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:49:42,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:49:44,267.267 INFO    ] ================================================
[2026-06-19 07:49:44,282.282 INFO    ] Launching Daemon at Fri Jun 19 07:49:44 IST 2026
[2026-06-19 07:49:44,293.293 INFO    ] ================================================
[2026-06-19 07:49:44,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:49:44
[2026-06-19 07:49:45,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:49:45,742.742 INFO    ] Initializing speech engine...
[2026-06-19 07:49:45,752.752 INFO    ] 2026-06-19 07:49:45
[2026-06-19 07:49:46,013.013 INFO    ] 2026-06-19 07:49:46
[2026-06-19 07:49:46,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:49:46,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:49:46,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:49:46,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:49:46,475.475 INFO    ] time= 19/06/2026 07:49:46
[2026-06-19 07:49:46,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:49:46,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:49:46,622.622 INFO    ] No existing commands found in stream
[2026-06-19 07:49:51,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:49:51,650.650 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 07:49:53,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:49:53,510.510 INFO    ] Checking for system updates...
[2026-06-19 07:49:53,546.546 INFO    ] 200
[2026-06-19 07:49:53,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:53,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:49:53,603.603 INFO    ] No update needed
[2026-06-19 07:49:53,605.605 INFO    ] Checking for camera pi updates...
[2026-06-19 07:49:53,643.643 INFO    ] 200
[2026-06-19 07:49:53,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:49:53,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:49:53,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:49:53,729.729 INFO    ] No camera update needed
[2026-06-19 07:49:53,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:49:53,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:49:53,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:49:53,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:49:55,786.786 INFO    ] ================================================
[2026-06-19 07:49:55,801.801 INFO    ] Launching Daemon at Fri Jun 19 07:49:55 IST 2026
[2026-06-19 07:49:55,812.812 INFO    ] ================================================
[2026-06-19 07:49:56,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:49:56
[2026-06-19 07:49:56,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:49:57,220.220 INFO    ] Initializing speech engine...
[2026-06-19 07:49:57,236.236 INFO    ] 2026-06-19 07:49:57
[2026-06-19 07:49:57,516.516 INFO    ] 2026-06-19 07:49:57
[2026-06-19 07:49:57,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:49:57,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:49:57,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:49:57,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:49:57,861.861 INFO    ] time= 19/06/2026 07:49:57
[2026-06-19 07:49:57,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:49:57,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:49:57,953.953 INFO    ] No existing commands found in stream
[2026-06-19 07:50:02,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:50:02,990.990 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 07:50:08,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:50:08,026.026 INFO    ] Checking for system updates...
[2026-06-19 07:50:08,067.067 INFO    ] 200
[2026-06-19 07:50:08,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:08,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:50:08,127.127 INFO    ] No update needed
[2026-06-19 07:50:08,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 07:50:08,166.166 INFO    ] 200
[2026-06-19 07:50:08,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:08,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:50:08,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:50:08,267.267 INFO    ] No camera update needed
[2026-06-19 07:50:08,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:50:08,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:50:08,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:50:08,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:50:10,324.324 INFO    ] ================================================
[2026-06-19 07:50:10,340.340 INFO    ] Launching Daemon at Fri Jun 19 07:50:10 IST 2026
[2026-06-19 07:50:10,350.350 INFO    ] ================================================
[2026-06-19 07:50:10,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:50:10
[2026-06-19 07:50:11,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:50:11,820.820 INFO    ] Initializing speech engine...
[2026-06-19 07:50:11,829.829 INFO    ] 2026-06-19 07:50:11
[2026-06-19 07:50:12,075.075 INFO    ] 2026-06-19 07:50:12
[2026-06-19 07:50:12,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:50:12,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:50:12,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:50:12,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:50:12,548.548 INFO    ] time= 19/06/2026 07:50:12
[2026-06-19 07:50:12,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:50:12,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:50:12,751.751 INFO    ] No existing commands found in stream
[2026-06-19 07:50:17,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:50:17,776.776 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 07:50:19,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:50:19,973.973 INFO    ] Checking for system updates...
[2026-06-19 07:50:20,010.010 INFO    ] 200
[2026-06-19 07:50:20,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:20,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:50:20,068.068 INFO    ] No update needed
[2026-06-19 07:50:20,070.070 INFO    ] Checking for camera pi updates...
[2026-06-19 07:50:20,104.104 INFO    ] 200
[2026-06-19 07:50:20,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:20,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:50:20,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:50:20,202.202 INFO    ] No camera update needed
[2026-06-19 07:50:20,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:50:20,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:50:20,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:50:20,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:50:22,256.256 INFO    ] ================================================
[2026-06-19 07:50:22,271.271 INFO    ] Launching Daemon at Fri Jun 19 07:50:22 IST 2026
[2026-06-19 07:50:22,282.282 INFO    ] ================================================
[2026-06-19 07:50:22,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:50:22
[2026-06-19 07:50:23,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:50:23,705.705 INFO    ] Initializing speech engine...
[2026-06-19 07:50:23,713.713 INFO    ] 2026-06-19 07:50:23
[2026-06-19 07:50:23,961.961 INFO    ] 2026-06-19 07:50:23
[2026-06-19 07:50:23,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:50:24,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:50:24,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:50:24,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:50:24,331.331 INFO    ] time= 19/06/2026 07:50:24
[2026-06-19 07:50:24,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:50:24,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:50:24,513.513 INFO    ] No existing commands found in stream
[2026-06-19 07:50:29,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:50:29,541.541 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 07:50:32,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:50:32,758.758 INFO    ] Checking for system updates...
[2026-06-19 07:50:32,810.810 INFO    ] 200
[2026-06-19 07:50:32,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:32,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:50:32,878.878 INFO    ] No update needed
[2026-06-19 07:50:32,880.880 INFO    ] Checking for camera pi updates...
[2026-06-19 07:50:32,932.932 INFO    ] 200
[2026-06-19 07:50:32,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:32,988.988 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:50:33,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:50:33,021.021 INFO    ] No camera update needed
[2026-06-19 07:50:33,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:50:33,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:50:33,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:50:33,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:50:35,084.084 INFO    ] ================================================
[2026-06-19 07:50:35,100.100 INFO    ] Launching Daemon at Fri Jun 19 07:50:35 IST 2026
[2026-06-19 07:50:35,111.111 INFO    ] ================================================
[2026-06-19 07:50:35,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:50:35
[2026-06-19 07:50:36,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:50:36,575.575 INFO    ] Initializing speech engine...
[2026-06-19 07:50:36,598.598 INFO    ] 2026-06-19 07:50:36
[2026-06-19 07:50:36,854.854 INFO    ] 2026-06-19 07:50:36
[2026-06-19 07:50:36,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:50:37,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:50:37,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:50:37,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:50:37,225.225 INFO    ] time= 19/06/2026 07:50:37
[2026-06-19 07:50:37,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:50:37,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:50:37,413.413 INFO    ] No existing commands found in stream
[2026-06-19 07:50:42,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:50:42,435.435 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 07:50:44,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:50:44,590.590 INFO    ] Checking for system updates...
[2026-06-19 07:50:44,627.627 INFO    ] 200
[2026-06-19 07:50:44,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:44,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:50:44,688.688 INFO    ] No update needed
[2026-06-19 07:50:44,691.691 INFO    ] Checking for camera pi updates...
[2026-06-19 07:50:44,731.731 INFO    ] 200
[2026-06-19 07:50:44,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:44,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:50:44,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:50:44,820.820 INFO    ] No camera update needed
[2026-06-19 07:50:44,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:50:44,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:50:44,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:50:44,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:50:46,883.883 INFO    ] ================================================
[2026-06-19 07:50:46,899.899 INFO    ] Launching Daemon at Fri Jun 19 07:50:46 IST 2026
[2026-06-19 07:50:46,910.910 INFO    ] ================================================
[2026-06-19 07:50:47,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:50:47
[2026-06-19 07:50:48,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:50:48,559.559 INFO    ] Initializing speech engine...
[2026-06-19 07:50:48,572.572 INFO    ] 2026-06-19 07:50:48
[2026-06-19 07:50:48,871.871 INFO    ] 2026-06-19 07:50:48
[2026-06-19 07:50:48,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:50:49,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:50:49,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:50:49,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:50:49,333.333 INFO    ] time= 19/06/2026 07:50:49
[2026-06-19 07:50:49,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:50:49,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:50:49,551.551 INFO    ] No existing commands found in stream
[2026-06-19 07:50:54,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:50:54,582.582 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 07:50:55,943.943 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:50:55,946.946 INFO    ] Checking for system updates...
[2026-06-19 07:50:55,983.983 INFO    ] 200
[2026-06-19 07:50:55,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:56,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:50:56,054.054 INFO    ] No update needed
[2026-06-19 07:50:56,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 07:50:56,098.098 INFO    ] 200
[2026-06-19 07:50:56,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:50:56,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:50:56,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:50:56,213.213 INFO    ] No camera update needed
[2026-06-19 07:50:56,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:50:56,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:50:56,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:50:56,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:50:58,274.274 INFO    ] ================================================
[2026-06-19 07:50:58,291.291 INFO    ] Launching Daemon at Fri Jun 19 07:50:58 IST 2026
[2026-06-19 07:50:58,303.303 INFO    ] ================================================
[2026-06-19 07:50:58,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:50:58
[2026-06-19 07:50:59,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:50:59,759.759 INFO    ] Initializing speech engine...
[2026-06-19 07:50:59,785.785 INFO    ] 2026-06-19 07:50:59
[2026-06-19 07:51:00,076.076 INFO    ] 2026-06-19 07:51:00
[2026-06-19 07:51:00,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:51:00,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:51:00,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:51:00,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:51:00,499.499 INFO    ] time= 19/06/2026 07:51:00
[2026-06-19 07:51:00,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:51:00,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:51:00,603.603 INFO    ] No existing commands found in stream
[2026-06-19 07:51:05,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:51:05,621.621 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 07:51:06,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:51:06,982.982 INFO    ] Checking for system updates...
[2026-06-19 07:51:07,023.023 INFO    ] 200
[2026-06-19 07:51:07,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:07,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:51:07,080.080 INFO    ] No update needed
[2026-06-19 07:51:07,082.082 INFO    ] Checking for camera pi updates...
[2026-06-19 07:51:07,117.117 INFO    ] 200
[2026-06-19 07:51:07,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:07,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:51:07,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:51:07,206.206 INFO    ] No camera update needed
[2026-06-19 07:51:07,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:51:07,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:51:07,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:51:07,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:51:09,262.262 INFO    ] ================================================
[2026-06-19 07:51:09,277.277 INFO    ] Launching Daemon at Fri Jun 19 07:51:09 IST 2026
[2026-06-19 07:51:09,288.288 INFO    ] ================================================
[2026-06-19 07:51:09,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:51:09
[2026-06-19 07:51:10,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:51:10,738.738 INFO    ] Initializing speech engine...
[2026-06-19 07:51:10,745.745 INFO    ] 2026-06-19 07:51:10
[2026-06-19 07:51:11,002.002 INFO    ] 2026-06-19 07:51:10
[2026-06-19 07:51:11,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:51:11,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:51:11,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:51:11,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:51:11,489.489 INFO    ] time= 19/06/2026 07:51:11
[2026-06-19 07:51:11,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:51:11,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:51:11,675.675 INFO    ] No existing commands found in stream
[2026-06-19 07:51:16,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:51:16,710.710 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 07:51:20,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:51:20,204.204 INFO    ] Checking for system updates...
[2026-06-19 07:51:20,241.241 INFO    ] 200
[2026-06-19 07:51:20,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:20,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:51:20,300.300 INFO    ] No update needed
[2026-06-19 07:51:20,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 07:51:20,337.337 INFO    ] 200
[2026-06-19 07:51:20,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:20,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:51:20,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:51:20,426.426 INFO    ] No camera update needed
[2026-06-19 07:51:20,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:51:20,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:51:20,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:51:20,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:51:22,485.485 INFO    ] ================================================
[2026-06-19 07:51:22,501.501 INFO    ] Launching Daemon at Fri Jun 19 07:51:22 IST 2026
[2026-06-19 07:51:22,512.512 INFO    ] ================================================
[2026-06-19 07:51:23,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:51:23
[2026-06-19 07:51:23,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:51:24,130.130 INFO    ] Initializing speech engine...
[2026-06-19 07:51:24,143.143 INFO    ] 2026-06-19 07:51:24
[2026-06-19 07:51:24,411.411 INFO    ] 2026-06-19 07:51:24
[2026-06-19 07:51:24,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:51:24,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:51:24,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:51:24,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:51:24,901.901 INFO    ] time= 19/06/2026 07:51:24
[2026-06-19 07:51:24,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:51:24,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:51:25,054.054 INFO    ] No existing commands found in stream
[2026-06-19 07:51:30,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:51:30,079.079 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 07:51:34,112.112 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:51:34,115.115 INFO    ] Checking for system updates...
[2026-06-19 07:51:34,153.153 INFO    ] 200
[2026-06-19 07:51:34,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:34,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:51:34,220.220 INFO    ] No update needed
[2026-06-19 07:51:34,223.223 INFO    ] Checking for camera pi updates...
[2026-06-19 07:51:34,257.257 INFO    ] 200
[2026-06-19 07:51:34,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:34,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:51:34,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:51:34,349.349 INFO    ] No camera update needed
[2026-06-19 07:51:34,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:51:34,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:51:34,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:51:34,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:51:36,406.406 INFO    ] ================================================
[2026-06-19 07:51:36,422.422 INFO    ] Launching Daemon at Fri Jun 19 07:51:36 IST 2026
[2026-06-19 07:51:36,433.433 INFO    ] ================================================
[2026-06-19 07:51:37,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:51:37
[2026-06-19 07:51:37,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:51:37,925.925 INFO    ] Initializing speech engine...
[2026-06-19 07:51:37,934.934 INFO    ] 2026-06-19 07:51:37
[2026-06-19 07:51:38,204.204 INFO    ] 2026-06-19 07:51:38
[2026-06-19 07:51:38,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:51:38,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:51:38,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:51:38,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:51:38,700.700 INFO    ] time= 19/06/2026 07:51:38
[2026-06-19 07:51:38,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:51:38,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:51:38,890.890 INFO    ] No existing commands found in stream
[2026-06-19 07:51:43,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:51:43,921.921 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 07:51:46,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:51:46,752.752 INFO    ] Checking for system updates...
[2026-06-19 07:51:46,789.789 INFO    ] 200
[2026-06-19 07:51:46,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:46,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:51:46,856.856 INFO    ] No update needed
[2026-06-19 07:51:46,859.859 INFO    ] Checking for camera pi updates...
[2026-06-19 07:51:46,892.892 INFO    ] 200
[2026-06-19 07:51:46,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:46,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:51:46,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:51:46,983.983 INFO    ] No camera update needed
[2026-06-19 07:51:46,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:51:46,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:51:46,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:51:46,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:51:49,038.038 INFO    ] ================================================
[2026-06-19 07:51:49,053.053 INFO    ] Launching Daemon at Fri Jun 19 07:51:49 IST 2026
[2026-06-19 07:51:49,065.065 INFO    ] ================================================
[2026-06-19 07:51:49,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:51:49
[2026-06-19 07:51:50,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:51:50,670.670 INFO    ] Initializing speech engine...
[2026-06-19 07:51:50,683.683 INFO    ] 2026-06-19 07:51:50
[2026-06-19 07:51:50,992.992 INFO    ] 2026-06-19 07:51:50
[2026-06-19 07:51:51,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:51:51,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:51:51,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:51:51,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:51:51,499.499 INFO    ] time= 19/06/2026 07:51:51
[2026-06-19 07:51:51,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:51:51,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:51:51,655.655 INFO    ] No existing commands found in stream
[2026-06-19 07:51:56,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:51:56,672.672 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 07:51:58,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:51:58,438.438 INFO    ] Checking for system updates...
[2026-06-19 07:51:58,475.475 INFO    ] 200
[2026-06-19 07:51:58,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:58,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:51:58,532.532 INFO    ] No update needed
[2026-06-19 07:51:58,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 07:51:58,572.572 INFO    ] 200
[2026-06-19 07:51:58,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:51:58,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:51:58,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:51:58,658.658 INFO    ] No camera update needed
[2026-06-19 07:51:58,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:51:58,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:51:58,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:51:58,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:52:00,715.715 INFO    ] ================================================
[2026-06-19 07:52:00,731.731 INFO    ] Launching Daemon at Fri Jun 19 07:52:00 IST 2026
[2026-06-19 07:52:00,742.742 INFO    ] ================================================
[2026-06-19 07:52:01,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:52:01
[2026-06-19 07:52:02,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:52:02,501.501 INFO    ] Initializing speech engine...
[2026-06-19 07:52:02,508.508 INFO    ] 2026-06-19 07:52:02
[2026-06-19 07:52:02,797.797 INFO    ] 2026-06-19 07:52:02
[2026-06-19 07:52:02,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:52:03,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:52:03,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:52:03,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:52:03,197.197 INFO    ] time= 19/06/2026 07:52:03
[2026-06-19 07:52:03,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:52:03,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:52:03,308.308 INFO    ] No existing commands found in stream
[2026-06-19 07:52:08,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:52:08,356.356 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 07:52:12,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:52:12,242.242 INFO    ] Checking for system updates...
[2026-06-19 07:52:12,283.283 INFO    ] 200
[2026-06-19 07:52:12,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:12,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:52:12,349.349 INFO    ] No update needed
[2026-06-19 07:52:12,351.351 INFO    ] Checking for camera pi updates...
[2026-06-19 07:52:12,389.389 INFO    ] 200
[2026-06-19 07:52:12,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:12,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:52:12,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:52:12,487.487 INFO    ] No camera update needed
[2026-06-19 07:52:12,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:52:12,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:52:12,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:52:12,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:52:14,547.547 INFO    ] ================================================
[2026-06-19 07:52:14,562.562 INFO    ] Launching Daemon at Fri Jun 19 07:52:14 IST 2026
[2026-06-19 07:52:14,574.574 INFO    ] ================================================
[2026-06-19 07:52:15,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:52:15
[2026-06-19 07:52:15,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:52:15,985.985 INFO    ] Initializing speech engine...
[2026-06-19 07:52:15,999.999 INFO    ] 2026-06-19 07:52:15
[2026-06-19 07:52:16,267.267 INFO    ] 2026-06-19 07:52:16
[2026-06-19 07:52:16,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:52:16,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:52:16,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:52:16,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:52:16,732.732 INFO    ] time= 19/06/2026 07:52:16
[2026-06-19 07:52:16,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:52:16,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:52:16,900.900 INFO    ] No existing commands found in stream
[2026-06-19 07:52:21,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:52:21,915.915 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 07:52:23,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:52:23,317.317 INFO    ] Checking for system updates...
[2026-06-19 07:52:23,353.353 INFO    ] 200
[2026-06-19 07:52:23,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:23,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:52:23,414.414 INFO    ] No update needed
[2026-06-19 07:52:23,417.417 INFO    ] Checking for camera pi updates...
[2026-06-19 07:52:23,452.452 INFO    ] 200
[2026-06-19 07:52:23,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:23,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:52:23,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:52:23,551.551 INFO    ] No camera update needed
[2026-06-19 07:52:23,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:52:23,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:52:23,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:52:23,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:52:25,612.612 INFO    ] ================================================
[2026-06-19 07:52:25,627.627 INFO    ] Launching Daemon at Fri Jun 19 07:52:25 IST 2026
[2026-06-19 07:52:25,638.638 INFO    ] ================================================
[2026-06-19 07:52:26,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:52:26
[2026-06-19 07:52:26,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:52:27,065.065 INFO    ] Initializing speech engine...
[2026-06-19 07:52:27,080.080 INFO    ] 2026-06-19 07:52:27
[2026-06-19 07:52:27,345.345 INFO    ] 2026-06-19 07:52:27
[2026-06-19 07:52:27,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:52:27,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:52:27,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:52:27,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:52:27,784.784 INFO    ] time= 19/06/2026 07:52:27
[2026-06-19 07:52:27,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:52:27,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:52:27,966.966 INFO    ] No existing commands found in stream
[2026-06-19 07:52:32,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:52:32,982.982 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 07:52:35,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:52:35,014.014 INFO    ] Checking for system updates...
[2026-06-19 07:52:35,051.051 INFO    ] 200
[2026-06-19 07:52:35,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:35,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:52:35,109.109 INFO    ] No update needed
[2026-06-19 07:52:35,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 07:52:35,144.144 INFO    ] 200
[2026-06-19 07:52:35,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:35,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:52:35,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:52:35,337.337 INFO    ] No camera update needed
[2026-06-19 07:52:35,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:52:35,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:52:35,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:52:35,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:52:37,393.393 INFO    ] ================================================
[2026-06-19 07:52:37,409.409 INFO    ] Launching Daemon at Fri Jun 19 07:52:37 IST 2026
[2026-06-19 07:52:37,420.420 INFO    ] ================================================
[2026-06-19 07:52:37,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:52:37
[2026-06-19 07:52:38,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:52:38,841.841 INFO    ] Initializing speech engine...
[2026-06-19 07:52:38,850.850 INFO    ] 2026-06-19 07:52:38
[2026-06-19 07:52:39,094.094 INFO    ] 2026-06-19 07:52:39
[2026-06-19 07:52:39,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:52:39,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:52:39,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:52:39,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:52:39,567.567 INFO    ] time= 19/06/2026 07:52:39
[2026-06-19 07:52:39,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:52:39,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:52:39,727.727 INFO    ] No existing commands found in stream
[2026-06-19 07:52:44,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:52:44,766.766 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 07:52:47,461.461 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:52:47,464.464 INFO    ] Checking for system updates...
[2026-06-19 07:52:47,503.503 INFO    ] 200
[2026-06-19 07:52:47,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:47,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:52:47,568.568 INFO    ] No update needed
[2026-06-19 07:52:47,570.570 INFO    ] Checking for camera pi updates...
[2026-06-19 07:52:47,604.604 INFO    ] 200
[2026-06-19 07:52:47,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:47,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:52:47,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:52:47,679.679 INFO    ] No camera update needed
[2026-06-19 07:52:47,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:52:47,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:52:47,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:52:47,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:52:49,735.735 INFO    ] ================================================
[2026-06-19 07:52:49,750.750 INFO    ] Launching Daemon at Fri Jun 19 07:52:49 IST 2026
[2026-06-19 07:52:49,766.766 INFO    ] ================================================
[2026-06-19 07:52:50,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:52:50
[2026-06-19 07:52:50,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:52:51,182.182 INFO    ] Initializing speech engine...
[2026-06-19 07:52:51,191.191 INFO    ] 2026-06-19 07:52:51
[2026-06-19 07:52:51,480.480 INFO    ] 2026-06-19 07:52:51
[2026-06-19 07:52:51,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:52:51,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:52:51,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:52:51,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:52:51,977.977 INFO    ] time= 19/06/2026 07:52:51
[2026-06-19 07:52:52,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:52:52,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:52:52,107.107 INFO    ] No existing commands found in stream
[2026-06-19 07:52:57,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:52:57,146.146 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 07:52:58,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:52:58,514.514 INFO    ] Checking for system updates...
[2026-06-19 07:52:58,551.551 INFO    ] 200
[2026-06-19 07:52:58,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:58,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:52:58,610.610 INFO    ] No update needed
[2026-06-19 07:52:58,612.612 INFO    ] Checking for camera pi updates...
[2026-06-19 07:52:58,650.650 INFO    ] 200
[2026-06-19 07:52:58,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:52:58,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:52:58,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:52:58,742.742 INFO    ] No camera update needed
[2026-06-19 07:52:58,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:52:58,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:52:58,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:52:58,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:53:00,798.798 INFO    ] ================================================
[2026-06-19 07:53:00,813.813 INFO    ] Launching Daemon at Fri Jun 19 07:53:00 IST 2026
[2026-06-19 07:53:00,824.824 INFO    ] ================================================
[2026-06-19 07:53:01,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:53:01
[2026-06-19 07:53:02,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:53:02,511.511 INFO    ] Initializing speech engine...
[2026-06-19 07:53:02,524.524 INFO    ] 2026-06-19 07:53:02
[2026-06-19 07:53:02,850.850 INFO    ] 2026-06-19 07:53:02
[2026-06-19 07:53:02,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:53:03,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:53:03,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:53:03,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:53:03,391.391 INFO    ] time= 19/06/2026 07:53:03
[2026-06-19 07:53:03,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:53:03,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:53:03,603.603 INFO    ] No existing commands found in stream
[2026-06-19 07:53:08,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:53:08,632.632 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 07:53:11,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:53:11,504.504 INFO    ] Checking for system updates...
[2026-06-19 07:53:11,540.540 INFO    ] 200
[2026-06-19 07:53:11,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:11,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:53:11,605.605 INFO    ] No update needed
[2026-06-19 07:53:11,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 07:53:11,647.647 INFO    ] 200
[2026-06-19 07:53:11,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:11,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:53:11,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:53:11,742.742 INFO    ] No camera update needed
[2026-06-19 07:53:11,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:53:11,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:53:11,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:53:11,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:53:13,798.798 INFO    ] ================================================
[2026-06-19 07:53:13,814.814 INFO    ] Launching Daemon at Fri Jun 19 07:53:13 IST 2026
[2026-06-19 07:53:13,824.824 INFO    ] ================================================
[2026-06-19 07:53:14,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:53:14
[2026-06-19 07:53:15,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:53:15,267.267 INFO    ] Initializing speech engine...
[2026-06-19 07:53:15,275.275 INFO    ] 2026-06-19 07:53:15
[2026-06-19 07:53:15,586.586 INFO    ] 2026-06-19 07:53:15
[2026-06-19 07:53:15,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:53:15,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:53:15,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:53:15,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:53:15,949.949 INFO    ] time= 19/06/2026 07:53:15
[2026-06-19 07:53:15,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:53:15,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:53:16,038.038 INFO    ] No existing commands found in stream
[2026-06-19 07:53:21,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:53:21,053.053 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 07:53:23,825.825 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:53:23,828.828 INFO    ] Checking for system updates...
[2026-06-19 07:53:23,866.866 INFO    ] 200
[2026-06-19 07:53:23,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:23,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:53:23,925.925 INFO    ] No update needed
[2026-06-19 07:53:23,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 07:53:23,963.963 INFO    ] 200
[2026-06-19 07:53:23,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:24,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:53:24,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:53:24,053.053 INFO    ] No camera update needed
[2026-06-19 07:53:24,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:53:24,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:53:24,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:53:24,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:53:26,114.114 INFO    ] ================================================
[2026-06-19 07:53:26,130.130 INFO    ] Launching Daemon at Fri Jun 19 07:53:26 IST 2026
[2026-06-19 07:53:26,141.141 INFO    ] ================================================
[2026-06-19 07:53:26,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:53:26
[2026-06-19 07:53:27,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:53:27,544.544 INFO    ] Initializing speech engine...
[2026-06-19 07:53:27,553.553 INFO    ] 2026-06-19 07:53:27
[2026-06-19 07:53:27,830.830 INFO    ] 2026-06-19 07:53:27
[2026-06-19 07:53:27,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:53:28,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:53:28,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:53:28,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:53:28,283.283 INFO    ] time= 19/06/2026 07:53:28
[2026-06-19 07:53:28,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:53:28,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:53:28,461.461 INFO    ] No existing commands found in stream
[2026-06-19 07:53:33,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:53:33,476.476 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 07:53:36,496.496 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:53:36,499.499 INFO    ] Checking for system updates...
[2026-06-19 07:53:36,536.536 INFO    ] 200
[2026-06-19 07:53:36,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:36,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:53:36,593.593 INFO    ] No update needed
[2026-06-19 07:53:36,595.595 INFO    ] Checking for camera pi updates...
[2026-06-19 07:53:36,634.634 INFO    ] 200
[2026-06-19 07:53:36,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:36,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:53:36,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:53:36,727.727 INFO    ] No camera update needed
[2026-06-19 07:53:36,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:53:36,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:53:36,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:53:36,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:53:38,783.783 INFO    ] ================================================
[2026-06-19 07:53:38,799.799 INFO    ] Launching Daemon at Fri Jun 19 07:53:38 IST 2026
[2026-06-19 07:53:38,810.810 INFO    ] ================================================
[2026-06-19 07:53:39,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:53:39
[2026-06-19 07:53:39,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:53:40,264.264 INFO    ] Initializing speech engine...
[2026-06-19 07:53:40,276.276 INFO    ] 2026-06-19 07:53:40
[2026-06-19 07:53:40,592.592 INFO    ] 2026-06-19 07:53:40
[2026-06-19 07:53:40,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:53:40,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:53:40,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:53:41,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:53:41,098.098 INFO    ] time= 19/06/2026 07:53:41
[2026-06-19 07:53:41,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:53:41,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:53:41,258.258 INFO    ] No existing commands found in stream
[2026-06-19 07:53:46,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:53:46,304.304 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 07:53:47,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:53:47,606.606 INFO    ] Checking for system updates...
[2026-06-19 07:53:47,644.644 INFO    ] 200
[2026-06-19 07:53:47,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:47,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:53:47,704.704 INFO    ] No update needed
[2026-06-19 07:53:47,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 07:53:47,746.746 INFO    ] 200
[2026-06-19 07:53:47,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:47,797.797 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:53:47,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:53:47,833.833 INFO    ] No camera update needed
[2026-06-19 07:53:47,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:53:47,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:53:47,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:53:47,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:53:49,888.888 INFO    ] ================================================
[2026-06-19 07:53:49,903.903 INFO    ] Launching Daemon at Fri Jun 19 07:53:49 IST 2026
[2026-06-19 07:53:49,914.914 INFO    ] ================================================
[2026-06-19 07:53:50,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:53:50
[2026-06-19 07:53:51,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:53:51,377.377 INFO    ] Initializing speech engine...
[2026-06-19 07:53:51,384.384 INFO    ] 2026-06-19 07:53:51
[2026-06-19 07:53:51,646.646 INFO    ] 2026-06-19 07:53:51
[2026-06-19 07:53:51,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:53:51,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:53:51,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:53:52,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:53:52,189.189 INFO    ] time= 19/06/2026 07:53:52
[2026-06-19 07:53:52,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:53:52,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:53:52,331.331 INFO    ] No existing commands found in stream
[2026-06-19 07:53:57,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:53:57,359.359 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 07:53:59,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:53:59,415.415 INFO    ] Checking for system updates...
[2026-06-19 07:53:59,451.451 INFO    ] 200
[2026-06-19 07:53:59,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:59,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:53:59,511.511 INFO    ] No update needed
[2026-06-19 07:53:59,513.513 INFO    ] Checking for camera pi updates...
[2026-06-19 07:53:59,547.547 INFO    ] 200
[2026-06-19 07:53:59,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:53:59,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:53:59,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:53:59,631.631 INFO    ] No camera update needed
[2026-06-19 07:53:59,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:53:59,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:53:59,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:53:59,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:54:01,689.689 INFO    ] ================================================
[2026-06-19 07:54:01,705.705 INFO    ] Launching Daemon at Fri Jun 19 07:54:01 IST 2026
[2026-06-19 07:54:01,716.716 INFO    ] ================================================
[2026-06-19 07:54:02,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:54:02
[2026-06-19 07:54:03,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:54:03,511.511 INFO    ] Initializing speech engine...
[2026-06-19 07:54:03,518.518 INFO    ] 2026-06-19 07:54:03
[2026-06-19 07:54:03,811.811 INFO    ] 2026-06-19 07:54:03
[2026-06-19 07:54:03,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:54:04,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:54:04,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:54:04,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:54:04,277.277 INFO    ] time= 19/06/2026 07:54:04
[2026-06-19 07:54:04,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:54:04,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:54:04,472.472 INFO    ] No existing commands found in stream
[2026-06-19 07:54:09,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:54:09,511.511 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 07:54:12,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:54:12,586.586 INFO    ] Checking for system updates...
[2026-06-19 07:54:12,622.622 INFO    ] 200
[2026-06-19 07:54:12,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:54:12,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:54:12,687.687 INFO    ] No update needed
[2026-06-19 07:54:12,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 07:54:12,728.728 INFO    ] 200
[2026-06-19 07:54:12,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:54:12,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:54:12,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:54:12,817.817 INFO    ] No camera update needed
[2026-06-19 07:54:12,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:54:12,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:54:12,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:54:12,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:54:14,874.874 INFO    ] ================================================
[2026-06-19 07:54:14,890.890 INFO    ] Launching Daemon at Fri Jun 19 07:54:14 IST 2026
[2026-06-19 07:54:14,901.901 INFO    ] ================================================
[2026-06-19 07:54:15,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:54:15
[2026-06-19 07:54:16,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:54:16,310.310 INFO    ] Initializing speech engine...
[2026-06-19 07:54:16,317.317 INFO    ] 2026-06-19 07:54:16
[2026-06-19 07:54:16,618.618 INFO    ] 2026-06-19 07:54:16
[2026-06-19 07:54:16,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:54:16,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:54:16,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:54:17,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:54:17,053.053 INFO    ] time= 19/06/2026 07:54:17
[2026-06-19 07:54:17,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:54:17,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:54:17,196.196 INFO    ] No existing commands found in stream
[2026-06-19 07:54:22,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:54:22,224.224 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 07:54:23,055.055 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:54:23,058.058 INFO    ] Checking for system updates...
[2026-06-19 07:54:23,103.103 INFO    ] 200
[2026-06-19 07:54:23,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:54:23,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:54:23,172.172 INFO    ] No update needed
[2026-06-19 07:54:23,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 07:54:23,215.215 INFO    ] 200
[2026-06-19 07:54:23,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:54:23,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:54:23,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:54:23,309.309 INFO    ] No camera update needed
[2026-06-19 07:54:23,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:54:23,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:54:23,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:54:23,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:54:25,367.367 INFO    ] ================================================
[2026-06-19 07:54:25,383.383 INFO    ] Launching Daemon at Fri Jun 19 07:54:25 IST 2026
[2026-06-19 07:54:25,395.395 INFO    ] ================================================
[2026-06-19 07:54:26,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:54:26
[2026-06-19 07:54:26,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:54:27,086.086 INFO    ] Initializing speech engine...
[2026-06-19 07:54:27,094.094 INFO    ] 2026-06-19 07:54:27
[2026-06-19 07:54:27,392.392 INFO    ] 2026-06-19 07:54:27
[2026-06-19 07:54:27,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:54:27,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:54:27,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:54:27,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:54:27,929.929 INFO    ] time= 19/06/2026 07:54:27
[2026-06-19 07:54:27,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:54:27,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:54:28,069.069 INFO    ] No existing commands found in stream
[2026-06-19 07:54:33,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:54:33,098.098 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 07:54:35,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:54:35,574.574 INFO    ] Checking for system updates...
[2026-06-19 07:54:35,616.616 INFO    ] 200
[2026-06-19 07:54:35,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:54:35,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:54:35,676.676 INFO    ] No update needed
[2026-06-19 07:54:35,679.679 INFO    ] Checking for camera pi updates...
[2026-06-19 07:54:35,718.718 INFO    ] 200
[2026-06-19 07:54:35,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:54:35,763.763 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:54:35,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:54:35,806.806 INFO    ] No camera update needed
[2026-06-19 07:54:35,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:54:35,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:54:35,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:54:35,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:54:37,865.865 INFO    ] ================================================
[2026-06-19 07:54:37,881.881 INFO    ] Launching Daemon at Fri Jun 19 07:54:37 IST 2026
[2026-06-19 07:54:37,892.892 INFO    ] ================================================
[2026-06-19 07:54:38,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:54:38
[2026-06-19 07:54:39,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:54:39,563.563 INFO    ] Initializing speech engine...
[2026-06-19 07:54:39,571.571 INFO    ] 2026-06-19 07:54:39
[2026-06-19 07:54:39,877.877 INFO    ] 2026-06-19 07:54:39
[2026-06-19 07:54:39,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:54:40,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:54:40,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:54:40,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:54:40,401.401 INFO    ] time= 19/06/2026 07:54:40
[2026-06-19 07:54:40,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:54:40,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:54:40,540.540 INFO    ] No existing commands found in stream
[2026-06-19 07:54:45,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:54:45,572.572 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 07:54:49,299.299 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:54:49,302.302 INFO    ] Checking for system updates...
[2026-06-19 07:54:49,340.340 INFO    ] 200
[2026-06-19 07:54:49,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:54:49,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:54:49,400.400 INFO    ] No update needed
[2026-06-19 07:54:49,403.403 INFO    ] Checking for camera pi updates...
[2026-06-19 07:54:49,442.442 INFO    ] 200
[2026-06-19 07:54:49,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:54:49,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:54:49,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:54:49,624.624 INFO    ] No camera update needed
[2026-06-19 07:54:49,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:54:49,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:54:49,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:54:49,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:54:51,684.684 INFO    ] ================================================
[2026-06-19 07:54:51,699.699 INFO    ] Launching Daemon at Fri Jun 19 07:54:51 IST 2026
[2026-06-19 07:54:51,710.710 INFO    ] ================================================
[2026-06-19 07:54:52,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:54:52
[2026-06-19 07:54:52,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:54:53,161.161 INFO    ] Initializing speech engine...
[2026-06-19 07:54:53,170.170 INFO    ] 2026-06-19 07:54:53
[2026-06-19 07:54:53,468.468 INFO    ] 2026-06-19 07:54:53
[2026-06-19 07:54:53,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:54:53,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:54:53,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:54:53,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:54:53,854.854 INFO    ] time= 19/06/2026 07:54:53
[2026-06-19 07:54:53,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:54:53,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:54:53,981.981 INFO    ] No existing commands found in stream
[2026-06-19 07:54:58,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:54:58,997.997 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 07:55:00,159.159 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:55:00,162.162 INFO    ] Checking for system updates...
[2026-06-19 07:55:00,202.202 INFO    ] 200
[2026-06-19 07:55:00,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:00,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:55:00,267.267 INFO    ] No update needed
[2026-06-19 07:55:00,270.270 INFO    ] Checking for camera pi updates...
[2026-06-19 07:55:00,308.308 INFO    ] 200
[2026-06-19 07:55:00,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:00,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:55:00,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:55:00,407.407 INFO    ] No camera update needed
[2026-06-19 07:55:00,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:55:00,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:55:00,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:55:00,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:55:02,468.468 INFO    ] ================================================
[2026-06-19 07:55:02,490.490 INFO    ] Launching Daemon at Fri Jun 19 07:55:02 IST 2026
[2026-06-19 07:55:02,513.513 INFO    ] ================================================
[2026-06-19 07:55:03,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:55:03
[2026-06-19 07:55:03,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:55:04,094.094 INFO    ] Initializing speech engine...
[2026-06-19 07:55:04,103.103 INFO    ] 2026-06-19 07:55:04
[2026-06-19 07:55:04,353.353 INFO    ] 2026-06-19 07:55:04
[2026-06-19 07:55:04,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:55:04,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:55:04,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:55:04,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:55:04,870.870 INFO    ] time= 19/06/2026 07:55:04
[2026-06-19 07:55:04,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:55:04,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:55:05,067.067 INFO    ] No existing commands found in stream
[2026-06-19 07:55:10,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:55:10,095.095 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 07:55:11,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:55:11,705.705 INFO    ] Checking for system updates...
[2026-06-19 07:55:11,747.747 INFO    ] 200
[2026-06-19 07:55:11,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:11,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:55:11,807.807 INFO    ] No update needed
[2026-06-19 07:55:11,810.810 INFO    ] Checking for camera pi updates...
[2026-06-19 07:55:11,845.845 INFO    ] 200
[2026-06-19 07:55:11,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:11,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:55:11,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:55:11,939.939 INFO    ] No camera update needed
[2026-06-19 07:55:11,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:55:11,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:55:11,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:55:11,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:55:14,000.000 INFO    ] ================================================
[2026-06-19 07:55:14,016.016 INFO    ] Launching Daemon at Fri Jun 19 07:55:14 IST 2026
[2026-06-19 07:55:14,027.027 INFO    ] ================================================
[2026-06-19 07:55:14,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:55:14
[2026-06-19 07:55:15,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:55:15,489.489 INFO    ] Initializing speech engine...
[2026-06-19 07:55:15,499.499 INFO    ] 2026-06-19 07:55:15
[2026-06-19 07:55:15,765.765 INFO    ] 2026-06-19 07:55:15
[2026-06-19 07:55:15,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:55:16,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:55:16,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:55:16,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:55:16,229.229 INFO    ] time= 19/06/2026 07:55:16
[2026-06-19 07:55:16,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:55:16,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:55:16,383.383 INFO    ] No existing commands found in stream
[2026-06-19 07:55:21,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:55:21,398.398 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 07:55:25,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:55:25,506.506 INFO    ] Checking for system updates...
[2026-06-19 07:55:25,547.547 INFO    ] 200
[2026-06-19 07:55:25,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:25,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:55:25,605.605 INFO    ] No update needed
[2026-06-19 07:55:25,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 07:55:25,662.662 INFO    ] 200
[2026-06-19 07:55:25,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:25,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:55:25,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:55:25,756.756 INFO    ] No camera update needed
[2026-06-19 07:55:25,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:55:25,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:55:25,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:55:25,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:55:27,813.813 INFO    ] ================================================
[2026-06-19 07:55:27,829.829 INFO    ] Launching Daemon at Fri Jun 19 07:55:27 IST 2026
[2026-06-19 07:55:27,841.841 INFO    ] ================================================
[2026-06-19 07:55:28,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:55:28
[2026-06-19 07:55:29,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:55:29,304.304 INFO    ] Initializing speech engine...
[2026-06-19 07:55:29,310.310 INFO    ] 2026-06-19 07:55:29
[2026-06-19 07:55:29,559.559 INFO    ] 2026-06-19 07:55:29
[2026-06-19 07:55:29,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:55:29,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:55:29,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:55:30,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:55:30,117.117 INFO    ] time= 19/06/2026 07:55:30
[2026-06-19 07:55:30,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:55:30,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:55:30,268.268 INFO    ] No existing commands found in stream
[2026-06-19 07:55:35,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:55:35,286.286 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 07:55:39,490.490 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:55:39,493.493 INFO    ] Checking for system updates...
[2026-06-19 07:55:39,536.536 INFO    ] 200
[2026-06-19 07:55:39,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:39,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:55:39,597.597 INFO    ] No update needed
[2026-06-19 07:55:39,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 07:55:39,635.635 INFO    ] 200
[2026-06-19 07:55:39,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:39,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:55:39,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:55:39,730.730 INFO    ] No camera update needed
[2026-06-19 07:55:39,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:55:39,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:55:39,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:55:39,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:55:41,786.786 INFO    ] ================================================
[2026-06-19 07:55:41,802.802 INFO    ] Launching Daemon at Fri Jun 19 07:55:41 IST 2026
[2026-06-19 07:55:41,814.814 INFO    ] ================================================
[2026-06-19 07:55:42,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:55:42
[2026-06-19 07:55:43,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:55:43,310.310 INFO    ] Initializing speech engine...
[2026-06-19 07:55:43,320.320 INFO    ] 2026-06-19 07:55:43
[2026-06-19 07:55:43,568.568 INFO    ] 2026-06-19 07:55:43
[2026-06-19 07:55:43,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:55:43,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:55:43,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:55:44,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:55:44,067.067 INFO    ] time= 19/06/2026 07:55:44
[2026-06-19 07:55:44,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:55:44,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:55:44,261.261 INFO    ] No existing commands found in stream
[2026-06-19 07:55:49,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:55:49,293.293 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 07:55:50,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:55:50,648.648 INFO    ] Checking for system updates...
[2026-06-19 07:55:50,684.684 INFO    ] 200
[2026-06-19 07:55:50,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:50,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:55:50,792.792 INFO    ] No update needed
[2026-06-19 07:55:50,795.795 INFO    ] Checking for camera pi updates...
[2026-06-19 07:55:50,829.829 INFO    ] 200
[2026-06-19 07:55:50,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:55:50,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:55:50,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:55:50,917.917 INFO    ] No camera update needed
[2026-06-19 07:55:50,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:55:50,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:55:50,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:55:50,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:55:52,972.972 INFO    ] ================================================
[2026-06-19 07:55:52,989.989 INFO    ] Launching Daemon at Fri Jun 19 07:55:52 IST 2026
[2026-06-19 07:55:53,000.000 INFO    ] ================================================
[2026-06-19 07:55:53,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:55:53
[2026-06-19 07:55:54,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:55:54,416.416 INFO    ] Initializing speech engine...
[2026-06-19 07:55:54,428.428 INFO    ] 2026-06-19 07:55:54
[2026-06-19 07:55:54,676.676 INFO    ] 2026-06-19 07:55:54
[2026-06-19 07:55:54,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:55:54,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:55:54,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:55:55,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:55:55,181.181 INFO    ] time= 19/06/2026 07:55:55
[2026-06-19 07:55:55,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:55:55,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:55:55,370.370 INFO    ] No existing commands found in stream
[2026-06-19 07:56:00,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:56:00,394.394 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 07:56:04,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:56:04,202.202 INFO    ] Checking for system updates...
[2026-06-19 07:56:04,238.238 INFO    ] 200
[2026-06-19 07:56:04,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:04,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:56:04,303.303 INFO    ] No update needed
[2026-06-19 07:56:04,306.306 INFO    ] Checking for camera pi updates...
[2026-06-19 07:56:04,343.343 INFO    ] 200
[2026-06-19 07:56:04,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:04,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:56:04,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:56:04,441.441 INFO    ] No camera update needed
[2026-06-19 07:56:04,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:56:04,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:56:04,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:56:04,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:56:06,498.498 INFO    ] ================================================
[2026-06-19 07:56:06,513.513 INFO    ] Launching Daemon at Fri Jun 19 07:56:06 IST 2026
[2026-06-19 07:56:06,524.524 INFO    ] ================================================
[2026-06-19 07:56:07,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:56:07
[2026-06-19 07:56:07,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:56:07,978.978 INFO    ] Initializing speech engine...
[2026-06-19 07:56:07,986.986 INFO    ] 2026-06-19 07:56:07
[2026-06-19 07:56:08,237.237 INFO    ] 2026-06-19 07:56:08
[2026-06-19 07:56:08,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:56:08,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:56:08,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:56:08,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:56:08,707.707 INFO    ] time= 19/06/2026 07:56:08
[2026-06-19 07:56:08,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:56:08,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:56:08,874.874 INFO    ] No existing commands found in stream
[2026-06-19 07:56:13,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:56:13,889.889 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 07:56:15,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:56:15,702.702 INFO    ] Checking for system updates...
[2026-06-19 07:56:15,739.739 INFO    ] 200
[2026-06-19 07:56:15,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:15,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:56:15,799.799 INFO    ] No update needed
[2026-06-19 07:56:15,802.802 INFO    ] Checking for camera pi updates...
[2026-06-19 07:56:15,840.840 INFO    ] 200
[2026-06-19 07:56:15,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:15,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:56:15,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:56:15,946.946 INFO    ] No camera update needed
[2026-06-19 07:56:15,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:56:15,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:56:15,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:56:15,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:56:18,000.000 INFO    ] ================================================
[2026-06-19 07:56:18,016.016 INFO    ] Launching Daemon at Fri Jun 19 07:56:18 IST 2026
[2026-06-19 07:56:18,027.027 INFO    ] ================================================
[2026-06-19 07:56:18,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:56:18
[2026-06-19 07:56:19,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:56:19,452.452 INFO    ] Initializing speech engine...
[2026-06-19 07:56:19,462.462 INFO    ] 2026-06-19 07:56:19
[2026-06-19 07:56:19,709.709 INFO    ] 2026-06-19 07:56:19
[2026-06-19 07:56:19,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:56:19,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:56:19,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:56:20,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:56:20,201.201 INFO    ] time= 19/06/2026 07:56:20
[2026-06-19 07:56:20,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:56:20,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:56:20,396.396 INFO    ] No existing commands found in stream
[2026-06-19 07:56:25,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:56:25,429.429 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 07:56:29,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:56:29,686.686 INFO    ] Checking for system updates...
[2026-06-19 07:56:29,727.727 INFO    ] 200
[2026-06-19 07:56:29,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:29,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:56:29,786.786 INFO    ] No update needed
[2026-06-19 07:56:29,789.789 INFO    ] Checking for camera pi updates...
[2026-06-19 07:56:29,828.828 INFO    ] 200
[2026-06-19 07:56:29,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:29,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:56:29,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:56:29,919.919 INFO    ] No camera update needed
[2026-06-19 07:56:29,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:56:29,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:56:29,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:56:29,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:56:31,981.981 INFO    ] ================================================
[2026-06-19 07:56:32,997.997 INFO    ] Launching Daemon at Fri Jun 19 07:56:31 IST 2026
[2026-06-19 07:56:32,008.008 INFO    ] ================================================
[2026-06-19 07:56:32,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:56:32
[2026-06-19 07:56:33,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:56:33,492.492 INFO    ] Initializing speech engine...
[2026-06-19 07:56:33,499.499 INFO    ] 2026-06-19 07:56:33
[2026-06-19 07:56:33,798.798 INFO    ] 2026-06-19 07:56:33
[2026-06-19 07:56:33,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:56:34,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:56:34,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:56:34,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:56:34,274.274 INFO    ] time= 19/06/2026 07:56:34
[2026-06-19 07:56:34,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:56:34,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:56:34,466.466 INFO    ] No existing commands found in stream
[2026-06-19 07:56:39,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:56:39,496.496 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 07:56:42,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:56:42,111.111 INFO    ] Checking for system updates...
[2026-06-19 07:56:42,151.151 INFO    ] 200
[2026-06-19 07:56:42,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:42,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:56:42,217.217 INFO    ] No update needed
[2026-06-19 07:56:42,219.219 INFO    ] Checking for camera pi updates...
[2026-06-19 07:56:42,257.257 INFO    ] 200
[2026-06-19 07:56:42,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:42,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:56:42,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:56:42,341.341 INFO    ] No camera update needed
[2026-06-19 07:56:42,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:56:42,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:56:42,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:56:42,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:56:44,396.396 INFO    ] ================================================
[2026-06-19 07:56:44,412.412 INFO    ] Launching Daemon at Fri Jun 19 07:56:44 IST 2026
[2026-06-19 07:56:44,423.423 INFO    ] ================================================
[2026-06-19 07:56:44,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:56:44
[2026-06-19 07:56:45,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:56:45,827.827 INFO    ] Initializing speech engine...
[2026-06-19 07:56:45,850.850 INFO    ] 2026-06-19 07:56:45
[2026-06-19 07:56:46,104.104 INFO    ] 2026-06-19 07:56:46
[2026-06-19 07:56:46,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:56:46,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:56:46,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:56:46,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:56:46,606.606 INFO    ] time= 19/06/2026 07:56:46
[2026-06-19 07:56:46,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:56:46,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:56:46,808.808 INFO    ] No existing commands found in stream
[2026-06-19 07:56:51,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:56:51,834.834 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 07:56:53,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:56:53,844.844 INFO    ] Checking for system updates...
[2026-06-19 07:56:53,880.880 INFO    ] 200
[2026-06-19 07:56:53,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:53,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:56:53,944.944 INFO    ] No update needed
[2026-06-19 07:56:53,947.947 INFO    ] Checking for camera pi updates...
[2026-06-19 07:56:53,985.985 INFO    ] 200
[2026-06-19 07:56:53,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:56:54,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:56:54,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:56:54,172.172 INFO    ] No camera update needed
[2026-06-19 07:56:54,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:56:54,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:56:54,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:56:54,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:56:56,227.227 INFO    ] ================================================
[2026-06-19 07:56:56,242.242 INFO    ] Launching Daemon at Fri Jun 19 07:56:56 IST 2026
[2026-06-19 07:56:56,253.253 INFO    ] ================================================
[2026-06-19 07:56:56,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:56:56
[2026-06-19 07:56:57,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:56:57,699.699 INFO    ] Initializing speech engine...
[2026-06-19 07:56:57,711.711 INFO    ] 2026-06-19 07:56:57
[2026-06-19 07:56:57,977.977 INFO    ] 2026-06-19 07:56:57
[2026-06-19 07:56:58,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:56:58,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:56:58,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:56:58,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:56:58,446.446 INFO    ] time= 19/06/2026 07:56:58
[2026-06-19 07:56:58,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:56:58,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:56:58,604.604 INFO    ] No existing commands found in stream
[2026-06-19 07:57:03,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:57:03,627.627 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 07:57:04,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:57:04,589.589 INFO    ] Checking for system updates...
[2026-06-19 07:57:04,626.626 INFO    ] 200
[2026-06-19 07:57:04,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:04,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:57:04,692.692 INFO    ] No update needed
[2026-06-19 07:57:04,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 07:57:04,728.728 INFO    ] 200
[2026-06-19 07:57:04,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:04,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:57:04,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:57:04,817.817 INFO    ] No camera update needed
[2026-06-19 07:57:04,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:57:04,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:57:04,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:57:04,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:57:06,874.874 INFO    ] ================================================
[2026-06-19 07:57:06,889.889 INFO    ] Launching Daemon at Fri Jun 19 07:57:06 IST 2026
[2026-06-19 07:57:06,901.901 INFO    ] ================================================
[2026-06-19 07:57:07,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:57:07
[2026-06-19 07:57:08,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:57:08,472.472 INFO    ] Initializing speech engine...
[2026-06-19 07:57:08,480.480 INFO    ] 2026-06-19 07:57:08
[2026-06-19 07:57:08,755.755 INFO    ] 2026-06-19 07:57:08
[2026-06-19 07:57:08,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:57:09,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:57:09,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:57:09,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:57:09,274.274 INFO    ] time= 19/06/2026 07:57:09
[2026-06-19 07:57:09,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:57:09,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:57:09,468.468 INFO    ] No existing commands found in stream
[2026-06-19 07:57:14,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:57:14,504.504 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 07:57:17,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:57:17,628.628 INFO    ] Checking for system updates...
[2026-06-19 07:57:17,666.666 INFO    ] 200
[2026-06-19 07:57:17,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:17,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:57:17,734.734 INFO    ] No update needed
[2026-06-19 07:57:17,736.736 INFO    ] Checking for camera pi updates...
[2026-06-19 07:57:17,776.776 INFO    ] 200
[2026-06-19 07:57:17,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:17,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:57:17,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:57:17,873.873 INFO    ] No camera update needed
[2026-06-19 07:57:17,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:57:17,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:57:17,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:57:17,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:57:19,931.931 INFO    ] ================================================
[2026-06-19 07:57:19,947.947 INFO    ] Launching Daemon at Fri Jun 19 07:57:19 IST 2026
[2026-06-19 07:57:19,957.957 INFO    ] ================================================
[2026-06-19 07:57:20,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:57:20
[2026-06-19 07:57:21,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:57:21,624.624 INFO    ] Initializing speech engine...
[2026-06-19 07:57:21,635.635 INFO    ] 2026-06-19 07:57:21
[2026-06-19 07:57:21,953.953 INFO    ] 2026-06-19 07:57:21
[2026-06-19 07:57:22,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:57:22,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:57:22,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:57:22,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:57:22,476.476 INFO    ] time= 19/06/2026 07:57:22
[2026-06-19 07:57:22,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:57:22,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:57:22,638.638 INFO    ] No existing commands found in stream
[2026-06-19 07:57:27,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:57:27,676.676 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 07:57:34,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:57:34,016.016 INFO    ] Checking for system updates...
[2026-06-19 07:57:34,059.059 INFO    ] 200
[2026-06-19 07:57:34,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:34,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:57:34,128.128 INFO    ] No update needed
[2026-06-19 07:57:34,131.131 INFO    ] Checking for camera pi updates...
[2026-06-19 07:57:34,166.166 INFO    ] 200
[2026-06-19 07:57:34,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:34,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:57:34,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:57:34,269.269 INFO    ] No camera update needed
[2026-06-19 07:57:34,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:57:34,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:57:34,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:57:34,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:57:36,332.332 INFO    ] ================================================
[2026-06-19 07:57:36,348.348 INFO    ] Launching Daemon at Fri Jun 19 07:57:36 IST 2026
[2026-06-19 07:57:36,361.361 INFO    ] ================================================
[2026-06-19 07:57:36,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:57:36
[2026-06-19 07:57:37,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:57:37,762.762 INFO    ] Initializing speech engine...
[2026-06-19 07:57:37,770.770 INFO    ] 2026-06-19 07:57:37
[2026-06-19 07:57:38,045.045 INFO    ] 2026-06-19 07:57:38
[2026-06-19 07:57:38,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:57:38,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:57:38,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:57:38,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:57:38,526.526 INFO    ] time= 19/06/2026 07:57:38
[2026-06-19 07:57:38,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:57:38,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:57:38,676.676 INFO    ] No existing commands found in stream
[2026-06-19 07:57:43,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:57:43,690.690 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 07:57:45,283.283 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:57:45,286.286 INFO    ] Checking for system updates...
[2026-06-19 07:57:45,322.322 INFO    ] 200
[2026-06-19 07:57:45,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:45,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:57:45,379.379 INFO    ] No update needed
[2026-06-19 07:57:45,382.382 INFO    ] Checking for camera pi updates...
[2026-06-19 07:57:45,420.420 INFO    ] 200
[2026-06-19 07:57:45,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:45,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:57:45,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:57:45,509.509 INFO    ] No camera update needed
[2026-06-19 07:57:45,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:57:45,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:57:45,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:57:45,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:57:47,566.566 INFO    ] ================================================
[2026-06-19 07:57:47,586.586 INFO    ] Launching Daemon at Fri Jun 19 07:57:47 IST 2026
[2026-06-19 07:57:47,597.597 INFO    ] ================================================
[2026-06-19 07:57:48,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:57:48
[2026-06-19 07:57:48,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:57:49,015.015 INFO    ] Initializing speech engine...
[2026-06-19 07:57:49,039.039 INFO    ] 2026-06-19 07:57:49
[2026-06-19 07:57:49,295.295 INFO    ] 2026-06-19 07:57:49
[2026-06-19 07:57:49,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:57:49,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:57:49,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:57:49,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:57:49,802.802 INFO    ] time= 19/06/2026 07:57:49
[2026-06-19 07:57:49,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:57:49,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:57:49,998.998 INFO    ] No existing commands found in stream
[2026-06-19 07:57:55,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:57:55,032.032 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 07:57:55,603.603 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 07:57:55,605.605 INFO    ] Checking for system updates...
[2026-06-19 07:57:55,646.646 INFO    ] 200
[2026-06-19 07:57:55,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:55,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:57:55,704.704 INFO    ] No update needed
[2026-06-19 07:57:55,707.707 INFO    ] Checking for camera pi updates...
[2026-06-19 07:57:55,744.744 INFO    ] 200
[2026-06-19 07:57:55,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:57:55,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:57:55,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:57:55,839.839 INFO    ] No camera update needed
[2026-06-19 07:57:55,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:57:55,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:57:55,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:57:55,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:57:57,897.897 INFO    ] ================================================
[2026-06-19 07:57:57,913.913 INFO    ] Launching Daemon at Fri Jun 19 07:57:57 IST 2026
[2026-06-19 07:57:57,924.924 INFO    ] ================================================
[2026-06-19 07:57:58,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:57:58
[2026-06-19 07:57:59,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:57:59,355.355 INFO    ] Initializing speech engine...
[2026-06-19 07:57:59,364.364 INFO    ] 2026-06-19 07:57:59
[2026-06-19 07:57:59,616.616 INFO    ] 2026-06-19 07:57:59
[2026-06-19 07:57:59,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:57:59,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:57:59,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:57:59,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:57:59,995.995 INFO    ] time= 19/06/2026 07:57:59
[2026-06-19 07:58:00,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:58:00,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:58:00,169.169 INFO    ] No existing commands found in stream
[2026-06-19 07:58:05,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:58:05,202.202 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 07:58:06,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:58:06,388.388 INFO    ] Checking for system updates...
[2026-06-19 07:58:06,424.424 INFO    ] 200
[2026-06-19 07:58:06,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:06,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:58:06,482.482 INFO    ] No update needed
[2026-06-19 07:58:06,484.484 INFO    ] Checking for camera pi updates...
[2026-06-19 07:58:06,517.517 INFO    ] 200
[2026-06-19 07:58:06,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:06,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:58:06,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:58:06,623.623 INFO    ] No camera update needed
[2026-06-19 07:58:06,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:58:06,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:58:06,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:58:06,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:58:08,687.687 INFO    ] ================================================
[2026-06-19 07:58:08,701.701 INFO    ] Launching Daemon at Fri Jun 19 07:58:08 IST 2026
[2026-06-19 07:58:08,712.712 INFO    ] ================================================
[2026-06-19 07:58:09,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:58:09
[2026-06-19 07:58:09,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:58:10,151.151 INFO    ] Initializing speech engine...
[2026-06-19 07:58:10,174.174 INFO    ] 2026-06-19 07:58:10
[2026-06-19 07:58:10,451.451 INFO    ] 2026-06-19 07:58:10
[2026-06-19 07:58:10,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:58:10,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:58:10,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:58:10,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:58:10,965.965 INFO    ] time= 19/06/2026 07:58:10
[2026-06-19 07:58:11,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:58:11,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:58:11,104.104 INFO    ] No existing commands found in stream
[2026-06-19 07:58:16,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:58:16,123.123 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 07:58:18,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:58:18,780.780 INFO    ] Checking for system updates...
[2026-06-19 07:58:18,817.817 INFO    ] 200
[2026-06-19 07:58:18,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:18,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:58:18,884.884 INFO    ] No update needed
[2026-06-19 07:58:18,887.887 INFO    ] Checking for camera pi updates...
[2026-06-19 07:58:18,922.922 INFO    ] 200
[2026-06-19 07:58:18,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:18,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:58:19,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:58:19,008.008 INFO    ] No camera update needed
[2026-06-19 07:58:19,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:58:19,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:58:19,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:58:19,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:58:21,066.066 INFO    ] ================================================
[2026-06-19 07:58:21,081.081 INFO    ] Launching Daemon at Fri Jun 19 07:58:21 IST 2026
[2026-06-19 07:58:21,092.092 INFO    ] ================================================
[2026-06-19 07:58:21,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:58:21
[2026-06-19 07:58:22,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:58:22,689.689 INFO    ] Initializing speech engine...
[2026-06-19 07:58:22,703.703 INFO    ] 2026-06-19 07:58:22
[2026-06-19 07:58:23,011.011 INFO    ] 2026-06-19 07:58:22
[2026-06-19 07:58:23,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:58:23,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:58:23,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:58:23,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:58:23,522.522 INFO    ] time= 19/06/2026 07:58:23
[2026-06-19 07:58:23,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:58:23,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:58:23,689.689 INFO    ] No existing commands found in stream
[2026-06-19 07:58:28,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:58:28,722.722 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 07:58:29,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:58:29,410.410 INFO    ] Checking for system updates...
[2026-06-19 07:58:29,447.447 INFO    ] 200
[2026-06-19 07:58:29,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:29,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:58:29,506.506 INFO    ] No update needed
[2026-06-19 07:58:29,509.509 INFO    ] Checking for camera pi updates...
[2026-06-19 07:58:29,547.547 INFO    ] 200
[2026-06-19 07:58:29,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:29,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:58:29,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:58:29,649.649 INFO    ] No camera update needed
[2026-06-19 07:58:29,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:58:29,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:58:29,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:58:29,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:58:31,708.708 INFO    ] ================================================
[2026-06-19 07:58:31,725.725 INFO    ] Launching Daemon at Fri Jun 19 07:58:31 IST 2026
[2026-06-19 07:58:31,736.736 INFO    ] ================================================
[2026-06-19 07:58:32,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:58:32
[2026-06-19 07:58:33,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:58:33,472.472 INFO    ] Initializing speech engine...
[2026-06-19 07:58:33,477.477 INFO    ] 2026-06-19 07:58:33
[2026-06-19 07:58:33,746.746 INFO    ] 2026-06-19 07:58:33
[2026-06-19 07:58:33,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:58:34,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:58:34,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:58:34,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:58:34,247.247 INFO    ] time= 19/06/2026 07:58:34
[2026-06-19 07:58:34,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:58:34,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:58:34,428.428 INFO    ] No existing commands found in stream
[2026-06-19 07:58:39,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:58:39,461.461 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 07:58:40,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:58:40,907.907 INFO    ] Checking for system updates...
[2026-06-19 07:58:40,944.944 INFO    ] 200
[2026-06-19 07:58:40,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:41,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:58:41,010.010 INFO    ] No update needed
[2026-06-19 07:58:41,013.013 INFO    ] Checking for camera pi updates...
[2026-06-19 07:58:41,047.047 INFO    ] 200
[2026-06-19 07:58:41,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:41,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:58:41,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:58:41,143.143 INFO    ] No camera update needed
[2026-06-19 07:58:41,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:58:41,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:58:41,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:58:41,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:58:43,202.202 INFO    ] ================================================
[2026-06-19 07:58:43,217.217 INFO    ] Launching Daemon at Fri Jun 19 07:58:43 IST 2026
[2026-06-19 07:58:43,229.229 INFO    ] ================================================
[2026-06-19 07:58:43,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:58:43
[2026-06-19 07:58:44,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:58:44,635.635 INFO    ] Initializing speech engine...
[2026-06-19 07:58:44,644.644 INFO    ] 2026-06-19 07:58:44
[2026-06-19 07:58:44,935.935 INFO    ] 2026-06-19 07:58:44
[2026-06-19 07:58:44,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:58:45,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:58:45,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:58:45,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:58:45,433.433 INFO    ] time= 19/06/2026 07:58:45
[2026-06-19 07:58:45,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:58:45,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:58:45,628.628 INFO    ] No existing commands found in stream
[2026-06-19 07:58:50,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:58:50,656.656 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 07:58:55,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:58:55,037.037 INFO    ] Checking for system updates...
[2026-06-19 07:58:55,073.073 INFO    ] 200
[2026-06-19 07:58:55,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:55,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:58:55,134.134 INFO    ] No update needed
[2026-06-19 07:58:55,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 07:58:55,170.170 INFO    ] 200
[2026-06-19 07:58:55,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:58:55,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:58:55,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:58:55,268.268 INFO    ] No camera update needed
[2026-06-19 07:58:55,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:58:55,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:58:55,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:58:55,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:58:57,325.325 INFO    ] ================================================
[2026-06-19 07:58:57,341.341 INFO    ] Launching Daemon at Fri Jun 19 07:58:57 IST 2026
[2026-06-19 07:58:57,353.353 INFO    ] ================================================
[2026-06-19 07:58:57,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:58:57
[2026-06-19 07:58:58,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:58:58,767.767 INFO    ] Initializing speech engine...
[2026-06-19 07:58:58,789.789 INFO    ] 2026-06-19 07:58:58
[2026-06-19 07:58:59,049.049 INFO    ] 2026-06-19 07:58:59
[2026-06-19 07:58:59,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:58:59,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:58:59,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:58:59,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:58:59,430.430 INFO    ] time= 19/06/2026 07:58:59
[2026-06-19 07:58:59,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:58:59,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:58:59,596.596 INFO    ] No existing commands found in stream
[2026-06-19 07:59:04,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:59:04,629.629 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 07:59:06,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 07:59:06,746.746 INFO    ] Checking for system updates...
[2026-06-19 07:59:06,782.782 INFO    ] 200
[2026-06-19 07:59:06,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:06,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:59:06,839.839 INFO    ] No update needed
[2026-06-19 07:59:06,841.841 INFO    ] Checking for camera pi updates...
[2026-06-19 07:59:06,875.875 INFO    ] 200
[2026-06-19 07:59:06,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:06,918.918 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:59:06,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:59:06,964.964 INFO    ] No camera update needed
[2026-06-19 07:59:06,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:59:06,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:59:06,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:59:06,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:59:09,022.022 INFO    ] ================================================
[2026-06-19 07:59:09,037.037 INFO    ] Launching Daemon at Fri Jun 19 07:59:09 IST 2026
[2026-06-19 07:59:09,048.048 INFO    ] ================================================
[2026-06-19 07:59:09,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:59:09
[2026-06-19 07:59:10,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:59:10,654.654 INFO    ] Initializing speech engine...
[2026-06-19 07:59:10,662.662 INFO    ] 2026-06-19 07:59:10
[2026-06-19 07:59:10,947.947 INFO    ] 2026-06-19 07:59:10
[2026-06-19 07:59:10,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:59:11,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:59:11,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:59:11,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:59:11,424.424 INFO    ] time= 19/06/2026 07:59:11
[2026-06-19 07:59:11,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:59:11,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:59:11,620.620 INFO    ] No existing commands found in stream
[2026-06-19 07:59:16,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:59:16,651.651 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 07:59:19,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 07:59:19,602.602 INFO    ] Checking for system updates...
[2026-06-19 07:59:19,639.639 INFO    ] 200
[2026-06-19 07:59:19,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:19,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:59:19,700.700 INFO    ] No update needed
[2026-06-19 07:59:19,702.702 INFO    ] Checking for camera pi updates...
[2026-06-19 07:59:19,737.737 INFO    ] 200
[2026-06-19 07:59:19,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:19,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:59:19,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:59:19,826.826 INFO    ] No camera update needed
[2026-06-19 07:59:19,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:59:19,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:59:19,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:59:19,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:59:21,882.882 INFO    ] ================================================
[2026-06-19 07:59:21,898.898 INFO    ] Launching Daemon at Fri Jun 19 07:59:21 IST 2026
[2026-06-19 07:59:21,909.909 INFO    ] ================================================
[2026-06-19 07:59:22,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:59:22
[2026-06-19 07:59:23,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:59:23,312.312 INFO    ] Initializing speech engine...
[2026-06-19 07:59:23,326.326 INFO    ] 2026-06-19 07:59:23
[2026-06-19 07:59:23,595.595 INFO    ] 2026-06-19 07:59:23
[2026-06-19 07:59:23,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:59:23,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:59:23,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:59:24,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:59:24,042.042 INFO    ] time= 19/06/2026 07:59:24
[2026-06-19 07:59:24,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:59:24,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:59:24,216.216 INFO    ] No existing commands found in stream
[2026-06-19 07:59:29,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:59:29,235.235 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 07:59:30,222.222 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 07:59:30,225.225 INFO    ] Checking for system updates...
[2026-06-19 07:59:30,264.264 INFO    ] 200
[2026-06-19 07:59:30,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:30,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:59:30,322.322 INFO    ] No update needed
[2026-06-19 07:59:30,324.324 INFO    ] Checking for camera pi updates...
[2026-06-19 07:59:30,357.357 INFO    ] 200
[2026-06-19 07:59:30,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:30,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:59:30,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 07:59:30,451.451 INFO    ] No camera update needed
[2026-06-19 07:59:30,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:59:30,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:59:30,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:59:30,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:59:32,508.508 INFO    ] ================================================
[2026-06-19 07:59:32,525.525 INFO    ] Launching Daemon at Fri Jun 19 07:59:32 IST 2026
[2026-06-19 07:59:32,537.537 INFO    ] ================================================
[2026-06-19 07:59:33,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:59:33
[2026-06-19 07:59:33,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:59:34,098.098 INFO    ] Initializing speech engine...
[2026-06-19 07:59:34,106.106 INFO    ] 2026-06-19 07:59:34
[2026-06-19 07:59:34,354.354 INFO    ] 2026-06-19 07:59:34
[2026-06-19 07:59:34,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:59:34,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:59:34,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:59:34,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:59:34,819.819 INFO    ] time= 19/06/2026 07:59:34
[2026-06-19 07:59:34,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:59:34,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:59:34,977.977 INFO    ] No existing commands found in stream
[2026-06-19 07:59:40,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:59:40,004.004 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 07:59:43,699.699 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 07:59:43,702.702 INFO    ] Checking for system updates...
[2026-06-19 07:59:43,738.738 INFO    ] 200
[2026-06-19 07:59:43,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:43,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:59:43,796.796 INFO    ] No update needed
[2026-06-19 07:59:43,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 07:59:43,832.832 INFO    ] 200
[2026-06-19 07:59:43,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:43,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:59:43,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:59:43,921.921 INFO    ] No camera update needed
[2026-06-19 07:59:43,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:59:43,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:59:43,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:59:43,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 07:59:45,976.976 INFO    ] ================================================
[2026-06-19 07:59:45,991.991 INFO    ] Launching Daemon at Fri Jun 19 07:59:45 IST 2026
[2026-06-19 07:59:46,002.002 INFO    ] ================================================
[2026-06-19 07:59:46,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 07:59:46
[2026-06-19 07:59:47,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 07:59:47,503.503 INFO    ] Initializing speech engine...
[2026-06-19 07:59:47,512.512 INFO    ] 2026-06-19 07:59:47
[2026-06-19 07:59:47,785.785 INFO    ] 2026-06-19 07:59:47
[2026-06-19 07:59:47,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 07:59:47,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 07:59:48,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 07:59:48,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 07:59:48,161.161 INFO    ] time= 19/06/2026 07:59:48
[2026-06-19 07:59:48,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 07:59:48,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-19 07:59:48,342.342 INFO    ] No existing commands found in stream
[2026-06-19 07:59:53,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 07:59:53,368.368 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 07:59:57,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 07:59:57,750.750 INFO    ] Checking for system updates...
[2026-06-19 07:59:57,789.789 INFO    ] 200
[2026-06-19 07:59:57,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:57,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:59:57,846.846 INFO    ] No update needed
[2026-06-19 07:59:57,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 07:59:57,883.883 INFO    ] 200
[2026-06-19 07:59:57,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 07:59:57,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 07:59:57,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 07:59:57,968.968 INFO    ] No camera update needed
[2026-06-19 07:59:57,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 07:59:57,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 07:59:57,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 07:59:57,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:00:00,025.025 INFO    ] ================================================
[2026-06-19 08:00:00,040.040 INFO    ] Launching Daemon at Fri Jun 19 08:00:00 IST 2026
[2026-06-19 08:00:00,051.051 INFO    ] ================================================
[2026-06-19 08:00:00,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:00:00
[2026-06-19 08:00:01,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:00:01,547.547 INFO    ] Initializing speech engine...
[2026-06-19 08:00:01,557.557 INFO    ] 2026-06-19 08:00:01
[2026-06-19 08:00:01,850.850 INFO    ] 2026-06-19 08:00:01
[2026-06-19 08:00:01,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:00:02,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:00:02,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:00:02,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:00:02,730.730 INFO    ] time= 19/06/2026 08:00:02
[2026-06-19 08:00:02,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:00:02,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:00:02,996.996 INFO    ] No existing commands found in stream
[2026-06-19 08:00:08,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:00:08,059.059 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 08:00:09,514.514 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:00:09,517.517 INFO    ] Checking for system updates...
[2026-06-19 08:00:09,555.555 INFO    ] 200
[2026-06-19 08:00:09,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:09,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:00:09,627.627 INFO    ] No update needed
[2026-06-19 08:00:09,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 08:00:09,671.671 INFO    ] 200
[2026-06-19 08:00:09,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:09,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:00:09,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:00:09,778.778 INFO    ] No camera update needed
[2026-06-19 08:00:09,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:00:09,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:00:09,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:00:09,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:00:11,833.833 INFO    ] ================================================
[2026-06-19 08:00:11,848.848 INFO    ] Launching Daemon at Fri Jun 19 08:00:11 IST 2026
[2026-06-19 08:00:11,859.859 INFO    ] ================================================
[2026-06-19 08:00:12,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:00:12
[2026-06-19 08:00:13,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:00:13,324.324 INFO    ] Initializing speech engine...
[2026-06-19 08:00:13,338.338 INFO    ] 2026-06-19 08:00:13
[2026-06-19 08:00:13,616.616 INFO    ] 2026-06-19 08:00:13
[2026-06-19 08:00:13,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:00:13,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:00:13,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:00:14,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:00:14,074.074 INFO    ] time= 19/06/2026 08:00:14
[2026-06-19 08:00:14,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:00:14,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:00:14,241.241 INFO    ] No existing commands found in stream
[2026-06-19 08:00:19,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:00:19,281.281 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 08:00:22,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:00:22,983.983 INFO    ] Checking for system updates...
[2026-06-19 08:00:23,021.021 INFO    ] 200
[2026-06-19 08:00:23,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:23,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:00:23,080.080 INFO    ] No update needed
[2026-06-19 08:00:23,083.083 INFO    ] Checking for camera pi updates...
[2026-06-19 08:00:23,118.118 INFO    ] 200
[2026-06-19 08:00:23,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:23,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:00:23,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:00:23,207.207 INFO    ] No camera update needed
[2026-06-19 08:00:23,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:00:23,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:00:23,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:00:23,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:00:25,264.264 INFO    ] ================================================
[2026-06-19 08:00:25,279.279 INFO    ] Launching Daemon at Fri Jun 19 08:00:25 IST 2026
[2026-06-19 08:00:25,291.291 INFO    ] ================================================
[2026-06-19 08:00:25,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:00:25
[2026-06-19 08:00:26,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:00:26,798.798 INFO    ] Initializing speech engine...
[2026-06-19 08:00:26,805.805 INFO    ] 2026-06-19 08:00:26
[2026-06-19 08:00:27,068.068 INFO    ] 2026-06-19 08:00:27
[2026-06-19 08:00:27,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:00:27,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:00:27,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:00:27,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:00:27,525.525 INFO    ] time= 19/06/2026 08:00:27
[2026-06-19 08:00:27,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:00:27,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:00:27,683.683 INFO    ] No existing commands found in stream
[2026-06-19 08:00:32,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:00:32,701.701 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 08:00:36,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:00:36,211.211 INFO    ] Checking for system updates...
[2026-06-19 08:00:36,249.249 INFO    ] 200
[2026-06-19 08:00:36,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:36,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:00:36,308.308 INFO    ] No update needed
[2026-06-19 08:00:36,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 08:00:36,348.348 INFO    ] 200
[2026-06-19 08:00:36,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:36,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:00:36,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:00:36,441.441 INFO    ] No camera update needed
[2026-06-19 08:00:36,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:00:36,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:00:36,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:00:36,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:00:38,497.497 INFO    ] ================================================
[2026-06-19 08:00:38,513.513 INFO    ] Launching Daemon at Fri Jun 19 08:00:38 IST 2026
[2026-06-19 08:00:38,524.524 INFO    ] ================================================
[2026-06-19 08:00:39,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:00:39
[2026-06-19 08:00:39,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:00:39,928.928 INFO    ] Initializing speech engine...
[2026-06-19 08:00:39,943.943 INFO    ] 2026-06-19 08:00:39
[2026-06-19 08:00:40,210.210 INFO    ] 2026-06-19 08:00:40
[2026-06-19 08:00:40,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:00:40,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:00:40,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:00:40,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:00:40,589.589 INFO    ] time= 19/06/2026 08:00:40
[2026-06-19 08:00:40,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:00:40,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:00:40,751.751 INFO    ] No existing commands found in stream
[2026-06-19 08:00:45,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:00:45,779.779 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 08:00:48,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:00:48,073.073 INFO    ] Checking for system updates...
[2026-06-19 08:00:48,109.109 INFO    ] 200
[2026-06-19 08:00:48,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:48,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:00:48,171.171 INFO    ] No update needed
[2026-06-19 08:00:48,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 08:00:48,210.210 INFO    ] 200
[2026-06-19 08:00:48,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:48,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:00:48,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:00:48,298.298 INFO    ] No camera update needed
[2026-06-19 08:00:48,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:00:48,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:00:48,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:00:48,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:00:50,353.353 INFO    ] ================================================
[2026-06-19 08:00:50,369.369 INFO    ] Launching Daemon at Fri Jun 19 08:00:50 IST 2026
[2026-06-19 08:00:50,380.380 INFO    ] ================================================
[2026-06-19 08:00:50,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:00:50
[2026-06-19 08:00:51,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:00:51,814.814 INFO    ] Initializing speech engine...
[2026-06-19 08:00:51,823.823 INFO    ] 2026-06-19 08:00:51
[2026-06-19 08:00:52,070.070 INFO    ] 2026-06-19 08:00:52
[2026-06-19 08:00:52,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:00:52,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:00:52,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:00:52,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:00:52,573.573 INFO    ] time= 19/06/2026 08:00:52
[2026-06-19 08:00:52,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:00:52,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:00:52,764.764 INFO    ] No existing commands found in stream
[2026-06-19 08:00:57,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:00:57,796.796 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 08:00:58,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:00:58,262.262 INFO    ] Checking for system updates...
[2026-06-19 08:00:58,298.298 INFO    ] 200
[2026-06-19 08:00:58,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:58,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:00:58,356.356 INFO    ] No update needed
[2026-06-19 08:00:58,358.358 INFO    ] Checking for camera pi updates...
[2026-06-19 08:00:58,392.392 INFO    ] 200
[2026-06-19 08:00:58,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:00:58,439.439 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:00:58,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:00:58,480.480 INFO    ] No camera update needed
[2026-06-19 08:00:58,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:00:58,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:00:58,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:00:58,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:01:00,536.536 INFO    ] ================================================
[2026-06-19 08:01:00,552.552 INFO    ] Launching Daemon at Fri Jun 19 08:01:00 IST 2026
[2026-06-19 08:01:00,563.563 INFO    ] ================================================
[2026-06-19 08:01:01,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:01:01
[2026-06-19 08:01:01,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:01:02,252.252 INFO    ] Initializing speech engine...
[2026-06-19 08:01:02,259.259 INFO    ] 2026-06-19 08:01:02
[2026-06-19 08:01:02,666.666 INFO    ] 2026-06-19 08:01:02
[2026-06-19 08:01:02,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:01:02,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:01:02,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:01:03,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:01:03,159.159 INFO    ] time= 19/06/2026 08:01:03
[2026-06-19 08:01:03,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:01:03,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:01:03,292.292 INFO    ] No existing commands found in stream
[2026-06-19 08:01:08,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:01:08,308.308 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 08:01:09,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:01:09,337.337 INFO    ] Checking for system updates...
[2026-06-19 08:01:09,377.377 INFO    ] 200
[2026-06-19 08:01:09,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:01:09,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:01:09,472.472 INFO    ] No update needed
[2026-06-19 08:01:09,475.475 INFO    ] Checking for camera pi updates...
[2026-06-19 08:01:09,514.514 INFO    ] 200
[2026-06-19 08:01:09,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:01:09,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:01:09,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:01:09,703.703 INFO    ] No camera update needed
[2026-06-19 08:01:09,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:01:09,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:01:09,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:01:09,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:01:11,760.760 INFO    ] ================================================
[2026-06-19 08:01:11,776.776 INFO    ] Launching Daemon at Fri Jun 19 08:01:11 IST 2026
[2026-06-19 08:01:11,787.787 INFO    ] ================================================
[2026-06-19 08:01:12,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:01:12
[2026-06-19 08:01:12,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:01:13,215.215 INFO    ] Initializing speech engine...
[2026-06-19 08:01:13,224.224 INFO    ] 2026-06-19 08:01:13
[2026-06-19 08:01:13,484.484 INFO    ] 2026-06-19 08:01:13
[2026-06-19 08:01:13,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:01:13,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:01:13,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:01:13,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:01:13,976.976 INFO    ] time= 19/06/2026 08:01:13
[2026-06-19 08:01:14,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:01:14,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:01:14,166.166 INFO    ] No existing commands found in stream
[2026-06-19 08:01:19,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:01:19,196.196 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 08:01:22,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:01:22,369.369 INFO    ] Checking for system updates...
[2026-06-19 08:01:22,405.405 INFO    ] 200
[2026-06-19 08:01:22,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:01:22,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:01:22,468.468 INFO    ] No update needed
[2026-06-19 08:01:22,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 08:01:22,504.504 INFO    ] 200
[2026-06-19 08:01:22,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:01:22,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:01:22,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:01:22,596.596 INFO    ] No camera update needed
[2026-06-19 08:01:22,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:01:22,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:01:22,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:01:22,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:01:24,651.651 INFO    ] ================================================
[2026-06-19 08:01:24,668.668 INFO    ] Launching Daemon at Fri Jun 19 08:01:24 IST 2026
[2026-06-19 08:01:24,679.679 INFO    ] ================================================
[2026-06-19 08:01:25,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:01:25
[2026-06-19 08:01:25,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:01:26,118.118 INFO    ] Initializing speech engine...
[2026-06-19 08:01:26,133.133 INFO    ] 2026-06-19 08:01:26
[2026-06-19 08:01:26,398.398 INFO    ] 2026-06-19 08:01:26
[2026-06-19 08:01:26,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:01:26,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:01:26,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:01:26,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:01:26,880.880 INFO    ] time= 19/06/2026 08:01:26
[2026-06-19 08:01:26,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:01:26,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:01:27,090.090 INFO    ] No existing commands found in stream
[2026-06-19 08:01:32,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:01:32,120.120 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 08:01:34,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:01:34,959.959 INFO    ] Checking for system updates...
[2026-06-19 08:01:34,999.999 INFO    ] 200
[2026-06-19 08:01:35,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:01:35,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:01:35,058.058 INFO    ] No update needed
[2026-06-19 08:01:35,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 08:01:35,098.098 INFO    ] 200
[2026-06-19 08:01:35,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:01:35,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:01:35,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:01:35,183.183 INFO    ] No camera update needed
[2026-06-19 08:01:35,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:01:35,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:01:35,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:01:35,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:01:37,240.240 INFO    ] ================================================
[2026-06-19 08:01:37,256.256 INFO    ] Launching Daemon at Fri Jun 19 08:01:37 IST 2026
[2026-06-19 08:01:37,268.268 INFO    ] ================================================
[2026-06-19 08:01:37,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:01:37
[2026-06-19 08:01:38,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:01:38,878.878 INFO    ] Initializing speech engine...
[2026-06-19 08:01:38,890.890 INFO    ] 2026-06-19 08:01:38
[2026-06-19 08:01:39,159.159 INFO    ] 2026-06-19 08:01:39
[2026-06-19 08:01:39,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:01:39,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:01:39,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:01:39,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:01:39,537.537 INFO    ] time= 19/06/2026 08:01:39
[2026-06-19 08:01:39,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:01:39,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:01:39,715.715 INFO    ] No existing commands found in stream
[2026-06-19 08:01:44,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:01:44,752.752 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 08:01:48,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:01:48,912.912 INFO    ] Checking for system updates...
[2026-06-19 08:01:48,953.953 INFO    ] 200
[2026-06-19 08:01:48,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:01:49,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:01:49,024.024 INFO    ] No update needed
[2026-06-19 08:01:49,028.028 INFO    ] Checking for camera pi updates...
[2026-06-19 08:01:49,067.067 INFO    ] 200
[2026-06-19 08:01:49,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:01:49,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:01:49,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:01:49,152.152 INFO    ] No camera update needed
[2026-06-19 08:01:49,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:01:49,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:01:49,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:01:49,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:01:51,216.216 INFO    ] ================================================
[2026-06-19 08:01:51,233.233 INFO    ] Launching Daemon at Fri Jun 19 08:01:51 IST 2026
[2026-06-19 08:01:51,244.244 INFO    ] ================================================
[2026-06-19 08:01:51,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:01:51
[2026-06-19 08:01:52,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:01:52,717.717 INFO    ] Initializing speech engine...
[2026-06-19 08:01:52,735.735 INFO    ] 2026-06-19 08:01:52
[2026-06-19 08:01:52,991.991 INFO    ] 2026-06-19 08:01:52
[2026-06-19 08:01:53,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:01:53,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:01:53,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:01:53,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:01:53,498.498 INFO    ] time= 19/06/2026 08:01:53
[2026-06-19 08:01:53,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:01:53,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:01:53,702.702 INFO    ] No existing commands found in stream
[2026-06-19 08:01:58,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:01:58,730.730 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 08:02:00,739.739 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:02:00,742.742 INFO    ] Checking for system updates...
[2026-06-19 08:02:00,783.783 INFO    ] 200
[2026-06-19 08:02:00,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:00,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:02:00,842.842 INFO    ] No update needed
[2026-06-19 08:02:00,845.845 INFO    ] Checking for camera pi updates...
[2026-06-19 08:02:00,880.880 INFO    ] 200
[2026-06-19 08:02:00,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:00,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:02:00,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:02:00,968.968 INFO    ] No camera update needed
[2026-06-19 08:02:00,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:02:00,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:02:00,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:02:00,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:02:03,034.034 INFO    ] ================================================
[2026-06-19 08:02:03,057.057 INFO    ] Launching Daemon at Fri Jun 19 08:02:03 IST 2026
[2026-06-19 08:02:03,075.075 INFO    ] ================================================
[2026-06-19 08:02:03,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:02:03
[2026-06-19 08:02:04,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:02:04,616.616 INFO    ] Initializing speech engine...
[2026-06-19 08:02:04,619.619 INFO    ] 2026-06-19 08:02:04
[2026-06-19 08:02:04,874.874 INFO    ] 2026-06-19 08:02:04
[2026-06-19 08:02:04,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:02:05,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:02:05,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:02:05,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:02:05,280.280 INFO    ] time= 19/06/2026 08:02:05
[2026-06-19 08:02:05,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:02:05,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:02:05,372.372 INFO    ] No existing commands found in stream
[2026-06-19 08:02:10,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:02:10,410.410 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 08:02:12,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:02:12,533.533 INFO    ] Checking for system updates...
[2026-06-19 08:02:12,570.570 INFO    ] 200
[2026-06-19 08:02:12,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:12,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:02:12,628.628 INFO    ] No update needed
[2026-06-19 08:02:12,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 08:02:12,664.664 INFO    ] 200
[2026-06-19 08:02:12,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:12,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:02:12,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:02:12,749.749 INFO    ] No camera update needed
[2026-06-19 08:02:12,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:02:12,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:02:12,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:02:12,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:02:14,805.805 INFO    ] ================================================
[2026-06-19 08:02:14,821.821 INFO    ] Launching Daemon at Fri Jun 19 08:02:14 IST 2026
[2026-06-19 08:02:14,833.833 INFO    ] ================================================
[2026-06-19 08:02:15,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:02:15
[2026-06-19 08:02:15,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:02:16,252.252 INFO    ] Initializing speech engine...
[2026-06-19 08:02:16,269.269 INFO    ] 2026-06-19 08:02:16
[2026-06-19 08:02:16,525.525 INFO    ] 2026-06-19 08:02:16
[2026-06-19 08:02:16,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:02:16,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:02:16,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:02:16,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:02:17,009.009 INFO    ] time= 19/06/2026 08:02:16
[2026-06-19 08:02:17,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:02:17,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:02:17,211.211 INFO    ] No existing commands found in stream
[2026-06-19 08:02:22,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:02:22,235.235 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 08:02:26,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:02:26,013.013 INFO    ] Checking for system updates...
[2026-06-19 08:02:26,050.050 INFO    ] 200
[2026-06-19 08:02:26,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:26,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:02:26,118.118 INFO    ] No update needed
[2026-06-19 08:02:26,120.120 INFO    ] Checking for camera pi updates...
[2026-06-19 08:02:26,154.154 INFO    ] 200
[2026-06-19 08:02:26,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:26,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:02:26,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:02:26,243.243 INFO    ] No camera update needed
[2026-06-19 08:02:26,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:02:26,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:02:26,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:02:26,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:02:28,300.300 INFO    ] ================================================
[2026-06-19 08:02:28,316.316 INFO    ] Launching Daemon at Fri Jun 19 08:02:28 IST 2026
[2026-06-19 08:02:28,328.328 INFO    ] ================================================
[2026-06-19 08:02:28,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:02:28
[2026-06-19 08:02:29,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:02:29,755.755 INFO    ] Initializing speech engine...
[2026-06-19 08:02:29,763.763 INFO    ] 2026-06-19 08:02:29
[2026-06-19 08:02:30,016.016 INFO    ] 2026-06-19 08:02:30
[2026-06-19 08:02:30,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:02:30,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:02:30,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:02:30,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:02:30,472.472 INFO    ] time= 19/06/2026 08:02:30
[2026-06-19 08:02:30,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:02:30,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:02:30,644.644 INFO    ] No existing commands found in stream
[2026-06-19 08:02:35,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:02:35,659.659 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 08:02:39,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:02:39,947.947 INFO    ] Checking for system updates...
[2026-06-19 08:02:39,983.983 INFO    ] 200
[2026-06-19 08:02:39,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:40,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:02:40,041.041 INFO    ] No update needed
[2026-06-19 08:02:40,043.043 INFO    ] Checking for camera pi updates...
[2026-06-19 08:02:40,078.078 INFO    ] 200
[2026-06-19 08:02:40,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:40,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:02:40,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:02:40,167.167 INFO    ] No camera update needed
[2026-06-19 08:02:40,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:02:40,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:02:40,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:02:40,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:02:42,223.223 INFO    ] ================================================
[2026-06-19 08:02:42,239.239 INFO    ] Launching Daemon at Fri Jun 19 08:02:42 IST 2026
[2026-06-19 08:02:42,250.250 INFO    ] ================================================
[2026-06-19 08:02:42,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:02:42
[2026-06-19 08:02:43,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:02:43,677.677 INFO    ] Initializing speech engine...
[2026-06-19 08:02:43,686.686 INFO    ] 2026-06-19 08:02:43
[2026-06-19 08:02:43,949.949 INFO    ] 2026-06-19 08:02:43
[2026-06-19 08:02:43,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:02:44,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:02:44,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:02:44,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:02:44,411.411 INFO    ] time= 19/06/2026 08:02:44
[2026-06-19 08:02:44,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:02:44,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:02:44,577.577 INFO    ] No existing commands found in stream
[2026-06-19 08:02:49,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:02:49,616.616 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 08:02:56,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:02:56,533.533 INFO    ] Checking for system updates...
[2026-06-19 08:02:56,572.572 INFO    ] 200
[2026-06-19 08:02:56,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:56,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:02:56,629.629 INFO    ] No update needed
[2026-06-19 08:02:56,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 08:02:56,670.670 INFO    ] 200
[2026-06-19 08:02:56,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:02:56,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:02:56,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:02:56,757.757 INFO    ] No camera update needed
[2026-06-19 08:02:56,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:02:56,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:02:56,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:02:56,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:02:58,814.814 INFO    ] ================================================
[2026-06-19 08:02:58,830.830 INFO    ] Launching Daemon at Fri Jun 19 08:02:58 IST 2026
[2026-06-19 08:02:58,841.841 INFO    ] ================================================
[2026-06-19 08:02:59,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:02:59
[2026-06-19 08:03:00,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:03:00,273.273 INFO    ] Initializing speech engine...
[2026-06-19 08:03:00,289.289 INFO    ] 2026-06-19 08:03:00
[2026-06-19 08:03:00,563.563 INFO    ] 2026-06-19 08:03:00
[2026-06-19 08:03:00,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:03:00,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:03:00,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:03:00,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:03:00,984.984 INFO    ] time= 19/06/2026 08:03:00
[2026-06-19 08:03:00,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:03:00,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:03:01,070.070 INFO    ] No existing commands found in stream
[2026-06-19 08:03:06,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:03:06,086.086 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 08:03:10,260.260 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:03:10,263.263 INFO    ] Checking for system updates...
[2026-06-19 08:03:10,309.309 INFO    ] 200
[2026-06-19 08:03:10,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:10,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:03:10,372.372 INFO    ] No update needed
[2026-06-19 08:03:10,375.375 INFO    ] Checking for camera pi updates...
[2026-06-19 08:03:10,415.415 INFO    ] 200
[2026-06-19 08:03:10,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:10,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:03:10,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:03:10,528.528 INFO    ] No camera update needed
[2026-06-19 08:03:10,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:03:10,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:03:10,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:03:10,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:03:12,587.587 INFO    ] ================================================
[2026-06-19 08:03:12,604.604 INFO    ] Launching Daemon at Fri Jun 19 08:03:12 IST 2026
[2026-06-19 08:03:12,614.614 INFO    ] ================================================
[2026-06-19 08:03:13,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:03:13
[2026-06-19 08:03:13,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:03:14,041.041 INFO    ] Initializing speech engine...
[2026-06-19 08:03:14,063.063 INFO    ] 2026-06-19 08:03:14
[2026-06-19 08:03:14,316.316 INFO    ] 2026-06-19 08:03:14
[2026-06-19 08:03:14,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:03:14,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:03:14,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:03:14,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:03:14,762.762 INFO    ] time= 19/06/2026 08:03:14
[2026-06-19 08:03:14,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:03:14,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:03:14,940.940 INFO    ] No existing commands found in stream
[2026-06-19 08:03:19,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:03:19,955.955 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 08:03:20,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:03:20,975.975 INFO    ] Checking for system updates...
[2026-06-19 08:03:21,015.015 INFO    ] 200
[2026-06-19 08:03:21,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:21,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:03:21,072.072 INFO    ] No update needed
[2026-06-19 08:03:21,074.074 INFO    ] Checking for camera pi updates...
[2026-06-19 08:03:21,112.112 INFO    ] 200
[2026-06-19 08:03:21,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:21,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:03:21,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:03:21,312.312 INFO    ] No camera update needed
[2026-06-19 08:03:21,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:03:21,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:03:21,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:03:21,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:03:23,368.368 INFO    ] ================================================
[2026-06-19 08:03:23,384.384 INFO    ] Launching Daemon at Fri Jun 19 08:03:23 IST 2026
[2026-06-19 08:03:23,396.396 INFO    ] ================================================
[2026-06-19 08:03:23,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:03:23
[2026-06-19 08:03:24,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:03:24,884.884 INFO    ] Initializing speech engine...
[2026-06-19 08:03:24,892.892 INFO    ] 2026-06-19 08:03:24
[2026-06-19 08:03:25,173.173 INFO    ] 2026-06-19 08:03:25
[2026-06-19 08:03:25,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:03:25,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:03:25,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:03:25,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:03:25,704.704 INFO    ] time= 19/06/2026 08:03:25
[2026-06-19 08:03:25,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:03:25,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:03:25,852.852 INFO    ] No existing commands found in stream
[2026-06-19 08:03:30,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:03:30,872.872 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 08:03:32,561.561 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:03:32,564.564 INFO    ] Checking for system updates...
[2026-06-19 08:03:32,608.608 INFO    ] 200
[2026-06-19 08:03:32,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:32,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:03:32,670.670 INFO    ] No update needed
[2026-06-19 08:03:32,673.673 INFO    ] Checking for camera pi updates...
[2026-06-19 08:03:32,709.709 INFO    ] 200
[2026-06-19 08:03:32,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:32,756.756 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:03:32,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:03:32,791.791 INFO    ] No camera update needed
[2026-06-19 08:03:32,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:03:32,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:03:32,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:03:32,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:03:34,856.856 INFO    ] ================================================
[2026-06-19 08:03:34,871.871 INFO    ] Launching Daemon at Fri Jun 19 08:03:34 IST 2026
[2026-06-19 08:03:34,883.883 INFO    ] ================================================
[2026-06-19 08:03:35,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:03:35
[2026-06-19 08:03:36,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:03:36,343.343 INFO    ] Initializing speech engine...
[2026-06-19 08:03:36,349.349 INFO    ] 2026-06-19 08:03:36
[2026-06-19 08:03:36,614.614 INFO    ] 2026-06-19 08:03:36
[2026-06-19 08:03:36,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:03:36,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:03:36,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:03:37,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:03:37,073.073 INFO    ] time= 19/06/2026 08:03:37
[2026-06-19 08:03:37,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:03:37,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:03:37,250.250 INFO    ] No existing commands found in stream
[2026-06-19 08:03:42,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:03:42,290.290 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-19 08:03:46,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:03:46,582.582 INFO    ] Checking for system updates...
[2026-06-19 08:03:46,619.619 INFO    ] 200
[2026-06-19 08:03:46,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:46,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:03:46,676.676 INFO    ] No update needed
[2026-06-19 08:03:46,678.678 INFO    ] Checking for camera pi updates...
[2026-06-19 08:03:46,712.712 INFO    ] 200
[2026-06-19 08:03:46,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:46,756.756 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:03:46,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:03:46,795.795 INFO    ] No camera update needed
[2026-06-19 08:03:46,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:03:46,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:03:46,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:03:46,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:03:48,852.852 INFO    ] ================================================
[2026-06-19 08:03:48,868.868 INFO    ] Launching Daemon at Fri Jun 19 08:03:48 IST 2026
[2026-06-19 08:03:48,880.880 INFO    ] ================================================
[2026-06-19 08:03:49,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:03:49
[2026-06-19 08:03:50,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:03:50,518.518 INFO    ] Initializing speech engine...
[2026-06-19 08:03:50,533.533 INFO    ] 2026-06-19 08:03:50
[2026-06-19 08:03:50,844.844 INFO    ] 2026-06-19 08:03:50
[2026-06-19 08:03:50,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:03:51,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:03:51,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:03:51,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:03:51,368.368 INFO    ] time= 19/06/2026 08:03:51
[2026-06-19 08:03:51,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:03:51,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:03:51,524.524 INFO    ] No existing commands found in stream
[2026-06-19 08:03:56,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:03:56,544.544 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 08:03:58,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:03:58,179.179 INFO    ] Checking for system updates...
[2026-06-19 08:03:58,221.221 INFO    ] 200
[2026-06-19 08:03:58,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:58,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:03:58,282.282 INFO    ] No update needed
[2026-06-19 08:03:58,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 08:03:58,324.324 INFO    ] 200
[2026-06-19 08:03:58,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:03:58,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:03:58,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:03:58,417.417 INFO    ] No camera update needed
[2026-06-19 08:03:58,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:03:58,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:03:58,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:03:58,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:04:00,480.480 INFO    ] ================================================
[2026-06-19 08:04:00,496.496 INFO    ] Launching Daemon at Fri Jun 19 08:04:00 IST 2026
[2026-06-19 08:04:00,509.509 INFO    ] ================================================
[2026-06-19 08:04:01,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:04:01
[2026-06-19 08:04:01,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:04:02,222.222 INFO    ] Initializing speech engine...
[2026-06-19 08:04:02,229.229 INFO    ] 2026-06-19 08:04:02
[2026-06-19 08:04:02,609.609 INFO    ] 2026-06-19 08:04:02
[2026-06-19 08:04:02,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:04:02,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:04:02,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:04:03,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:04:03,056.056 INFO    ] time= 19/06/2026 08:04:03
[2026-06-19 08:04:03,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:04:03,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:04:03,159.159 INFO    ] No existing commands found in stream
[2026-06-19 08:04:08,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:04:08,179.179 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 08:04:11,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:04:11,664.664 INFO    ] Checking for system updates...
[2026-06-19 08:04:11,701.701 INFO    ] 200
[2026-06-19 08:04:11,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:04:11,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:04:11,760.760 INFO    ] No update needed
[2026-06-19 08:04:11,762.762 INFO    ] Checking for camera pi updates...
[2026-06-19 08:04:11,796.796 INFO    ] 200
[2026-06-19 08:04:11,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:04:11,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:04:11,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:04:11,888.888 INFO    ] No camera update needed
[2026-06-19 08:04:11,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:04:11,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:04:11,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:04:11,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:04:13,945.945 INFO    ] ================================================
[2026-06-19 08:04:13,961.961 INFO    ] Launching Daemon at Fri Jun 19 08:04:13 IST 2026
[2026-06-19 08:04:13,972.972 INFO    ] ================================================
[2026-06-19 08:04:14,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:04:14
[2026-06-19 08:04:15,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:04:15,451.451 INFO    ] Initializing speech engine...
[2026-06-19 08:04:15,457.457 INFO    ] 2026-06-19 08:04:15
[2026-06-19 08:04:15,705.705 INFO    ] 2026-06-19 08:04:15
[2026-06-19 08:04:15,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:04:15,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:04:16,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:04:16,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:04:16,182.182 INFO    ] time= 19/06/2026 08:04:16
[2026-06-19 08:04:16,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:04:16,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:04:16,384.384 INFO    ] No existing commands found in stream
[2026-06-19 08:04:21,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:04:21,409.409 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 08:04:23,758.758 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:04:23,760.760 INFO    ] Checking for system updates...
[2026-06-19 08:04:23,796.796 INFO    ] 200
[2026-06-19 08:04:23,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:04:23,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:04:23,853.853 INFO    ] No update needed
[2026-06-19 08:04:23,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 08:04:23,889.889 INFO    ] 200
[2026-06-19 08:04:23,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:04:23,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:04:23,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:04:23,984.984 INFO    ] No camera update needed
[2026-06-19 08:04:23,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:04:23,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:04:23,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:04:23,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:04:26,042.042 INFO    ] ================================================
[2026-06-19 08:04:26,058.058 INFO    ] Launching Daemon at Fri Jun 19 08:04:26 IST 2026
[2026-06-19 08:04:26,069.069 INFO    ] ================================================
[2026-06-19 08:04:26,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:04:26
[2026-06-19 08:04:27,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:04:27,522.522 INFO    ] Initializing speech engine...
[2026-06-19 08:04:27,534.534 INFO    ] 2026-06-19 08:04:27
[2026-06-19 08:04:27,785.785 INFO    ] 2026-06-19 08:04:27
[2026-06-19 08:04:27,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:04:28,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:04:28,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:04:28,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:04:28,268.268 INFO    ] time= 19/06/2026 08:04:28
[2026-06-19 08:04:28,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:04:28,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:04:28,441.441 INFO    ] No existing commands found in stream
[2026-06-19 08:04:33,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:04:33,470.470 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 08:04:35,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:04:35,650.650 INFO    ] Checking for system updates...
[2026-06-19 08:04:35,687.687 INFO    ] 200
[2026-06-19 08:04:35,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:04:35,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:04:35,747.747 INFO    ] No update needed
[2026-06-19 08:04:35,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 08:04:35,789.789 INFO    ] 200
[2026-06-19 08:04:35,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:04:35,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:04:35,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:04:35,893.893 INFO    ] No camera update needed
[2026-06-19 08:04:35,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:04:35,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:04:35,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:04:35,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:04:37,954.954 INFO    ] ================================================
[2026-06-19 08:04:37,970.970 INFO    ] Launching Daemon at Fri Jun 19 08:04:37 IST 2026
[2026-06-19 08:04:37,981.981 INFO    ] ================================================
[2026-06-19 08:04:38,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:04:38
[2026-06-19 08:04:39,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:04:39,653.653 INFO    ] Initializing speech engine...
[2026-06-19 08:04:39,664.664 INFO    ] 2026-06-19 08:04:39
[2026-06-19 08:04:39,959.959 INFO    ] 2026-06-19 08:04:39
[2026-06-19 08:04:40,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:04:40,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:04:40,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:04:40,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:04:40,427.427 INFO    ] time= 19/06/2026 08:04:40
[2026-06-19 08:04:40,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:04:40,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:04:40,563.563 INFO    ] No existing commands found in stream
[2026-06-19 08:04:45,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:04:45,577.577 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 08:04:49,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:04:49,077.077 INFO    ] Checking for system updates...
[2026-06-19 08:04:49,115.115 INFO    ] 200
[2026-06-19 08:04:49,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:04:49,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:04:49,174.174 INFO    ] No update needed
[2026-06-19 08:04:49,177.177 INFO    ] Checking for camera pi updates...
[2026-06-19 08:04:49,212.212 INFO    ] 200
[2026-06-19 08:04:49,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:04:49,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:04:49,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:04:49,309.309 INFO    ] No camera update needed
[2026-06-19 08:04:49,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:04:49,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:04:49,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:04:49,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:04:51,371.371 INFO    ] ================================================
[2026-06-19 08:04:51,386.386 INFO    ] Launching Daemon at Fri Jun 19 08:04:51 IST 2026
[2026-06-19 08:04:51,398.398 INFO    ] ================================================
[2026-06-19 08:04:52,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:04:52
[2026-06-19 08:04:52,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:04:52,869.869 INFO    ] Initializing speech engine...
[2026-06-19 08:04:52,892.892 INFO    ] 2026-06-19 08:04:52
[2026-06-19 08:04:53,149.149 INFO    ] 2026-06-19 08:04:53
[2026-06-19 08:04:53,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:04:53,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:04:53,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:04:53,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:04:53,525.525 INFO    ] time= 19/06/2026 08:04:53
[2026-06-19 08:04:53,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:04:53,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:04:53,694.694 INFO    ] No existing commands found in stream
[2026-06-19 08:04:58,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:04:59,178.178 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 08:05:00,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:05:00,557.557 INFO    ] Checking for system updates...
[2026-06-19 08:05:00,593.593 INFO    ] 200
[2026-06-19 08:05:00,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:00,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:05:00,651.651 INFO    ] No update needed
[2026-06-19 08:05:00,654.654 INFO    ] Checking for camera pi updates...
[2026-06-19 08:05:00,691.691 INFO    ] 200
[2026-06-19 08:05:00,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:00,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:05:00,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:05:00,775.775 INFO    ] No camera update needed
[2026-06-19 08:05:00,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:05:00,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:05:00,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:05:00,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:05:02,876.876 INFO    ] ================================================
[2026-06-19 08:05:02,896.896 INFO    ] Launching Daemon at Fri Jun 19 08:05:02 IST 2026
[2026-06-19 08:05:02,914.914 INFO    ] ================================================
[2026-06-19 08:05:03,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:05:03
[2026-06-19 08:05:04,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:05:04,547.547 INFO    ] Initializing speech engine...
[2026-06-19 08:05:04,556.556 INFO    ] 2026-06-19 08:05:04
[2026-06-19 08:05:04,909.909 INFO    ] 2026-06-19 08:05:04
[2026-06-19 08:05:04,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:05:05,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:05:05,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:05:05,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:05:05,353.353 INFO    ] time= 19/06/2026 08:05:05
[2026-06-19 08:05:05,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:05:05,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:05:05,496.496 INFO    ] No existing commands found in stream
[2026-06-19 08:05:10,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:05:10,521.521 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 08:05:14,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:05:14,783.783 INFO    ] Checking for system updates...
[2026-06-19 08:05:14,821.821 INFO    ] 200
[2026-06-19 08:05:14,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:14,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:05:14,881.881 INFO    ] No update needed
[2026-06-19 08:05:14,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 08:05:14,918.918 INFO    ] 200
[2026-06-19 08:05:14,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:14,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:05:15,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:05:15,005.005 INFO    ] No camera update needed
[2026-06-19 08:05:15,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:05:15,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:05:15,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:05:15,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:05:17,060.060 INFO    ] ================================================
[2026-06-19 08:05:17,076.076 INFO    ] Launching Daemon at Fri Jun 19 08:05:17 IST 2026
[2026-06-19 08:05:17,090.090 INFO    ] ================================================
[2026-06-19 08:05:17,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:05:17
[2026-06-19 08:05:18,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:05:18,553.553 INFO    ] Initializing speech engine...
[2026-06-19 08:05:18,563.563 INFO    ] 2026-06-19 08:05:18
[2026-06-19 08:05:18,845.845 INFO    ] 2026-06-19 08:05:18
[2026-06-19 08:05:18,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:05:19,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:05:19,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:05:19,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:05:19,404.404 INFO    ] time= 19/06/2026 08:05:19
[2026-06-19 08:05:19,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:05:19,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:05:19,693.693 INFO    ] No existing commands found in stream
[2026-06-19 08:05:24,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:05:24,720.720 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 08:05:27,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:05:27,551.551 INFO    ] Checking for system updates...
[2026-06-19 08:05:27,588.588 INFO    ] 200
[2026-06-19 08:05:27,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:27,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:05:27,646.646 INFO    ] No update needed
[2026-06-19 08:05:27,649.649 INFO    ] Checking for camera pi updates...
[2026-06-19 08:05:27,683.683 INFO    ] 200
[2026-06-19 08:05:27,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:27,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:05:27,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:05:27,875.875 INFO    ] No camera update needed
[2026-06-19 08:05:27,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:05:27,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:05:27,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:05:27,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:05:29,931.931 INFO    ] ================================================
[2026-06-19 08:05:29,947.947 INFO    ] Launching Daemon at Fri Jun 19 08:05:29 IST 2026
[2026-06-19 08:05:29,957.957 INFO    ] ================================================
[2026-06-19 08:05:30,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:05:30
[2026-06-19 08:05:31,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:05:31,410.410 INFO    ] Initializing speech engine...
[2026-06-19 08:05:31,420.420 INFO    ] 2026-06-19 08:05:31
[2026-06-19 08:05:31,669.669 INFO    ] 2026-06-19 08:05:31
[2026-06-19 08:05:31,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:05:31,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:05:31,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:05:32,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:05:32,200.200 INFO    ] time= 19/06/2026 08:05:32
[2026-06-19 08:05:32,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:05:32,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:05:32,390.390 INFO    ] No existing commands found in stream
[2026-06-19 08:05:37,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:05:37,424.424 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 08:05:41,526.526 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:05:41,528.528 INFO    ] Checking for system updates...
[2026-06-19 08:05:41,566.566 INFO    ] 200
[2026-06-19 08:05:41,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:41,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:05:41,623.623 INFO    ] No update needed
[2026-06-19 08:05:41,626.626 INFO    ] Checking for camera pi updates...
[2026-06-19 08:05:41,660.660 INFO    ] 200
[2026-06-19 08:05:41,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:41,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:05:41,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:05:41,749.749 INFO    ] No camera update needed
[2026-06-19 08:05:41,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:05:41,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:05:41,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:05:41,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:05:43,809.809 INFO    ] ================================================
[2026-06-19 08:05:43,824.824 INFO    ] Launching Daemon at Fri Jun 19 08:05:43 IST 2026
[2026-06-19 08:05:43,835.835 INFO    ] ================================================
[2026-06-19 08:05:44,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:05:44
[2026-06-19 08:05:45,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:05:45,300.300 INFO    ] Initializing speech engine...
[2026-06-19 08:05:45,308.308 INFO    ] 2026-06-19 08:05:45
[2026-06-19 08:05:45,576.576 INFO    ] 2026-06-19 08:05:45
[2026-06-19 08:05:45,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:05:45,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:05:45,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:05:45,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:05:46,043.043 INFO    ] time= 19/06/2026 08:05:45
[2026-06-19 08:05:46,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:05:46,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:05:46,173.173 INFO    ] No existing commands found in stream
[2026-06-19 08:05:51,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:05:51,205.205 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 08:05:51,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:05:51,795.795 INFO    ] Checking for system updates...
[2026-06-19 08:05:51,836.836 INFO    ] 200
[2026-06-19 08:05:51,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:51,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:05:51,894.894 INFO    ] No update needed
[2026-06-19 08:05:51,896.896 INFO    ] Checking for camera pi updates...
[2026-06-19 08:05:51,934.934 INFO    ] 200
[2026-06-19 08:05:51,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:05:51,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:05:52,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:05:52,019.019 INFO    ] No camera update needed
[2026-06-19 08:05:52,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:05:52,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:05:52,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:05:52,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:05:54,075.075 INFO    ] ================================================
[2026-06-19 08:05:54,091.091 INFO    ] Launching Daemon at Fri Jun 19 08:05:54 IST 2026
[2026-06-19 08:05:54,102.102 INFO    ] ================================================
[2026-06-19 08:05:54,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:05:54
[2026-06-19 08:05:55,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:05:55,564.564 INFO    ] Initializing speech engine...
[2026-06-19 08:05:55,569.569 INFO    ] 2026-06-19 08:05:55
[2026-06-19 08:05:55,830.830 INFO    ] 2026-06-19 08:05:55
[2026-06-19 08:05:55,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:05:56,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:05:56,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:05:56,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:05:56,296.296 INFO    ] time= 19/06/2026 08:05:56
[2026-06-19 08:05:56,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:05:56,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:05:56,439.439 INFO    ] No existing commands found in stream
[2026-06-19 08:06:01,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:06:01,454.454 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 08:06:03,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:06:03,612.612 INFO    ] Checking for system updates...
[2026-06-19 08:06:03,654.654 INFO    ] 200
[2026-06-19 08:06:03,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:03,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:06:03,713.713 INFO    ] No update needed
[2026-06-19 08:06:03,716.716 INFO    ] Checking for camera pi updates...
[2026-06-19 08:06:03,751.751 INFO    ] 200
[2026-06-19 08:06:03,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:03,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:06:03,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:06:03,843.843 INFO    ] No camera update needed
[2026-06-19 08:06:03,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:06:03,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:06:03,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:06:03,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:06:05,900.900 INFO    ] ================================================
[2026-06-19 08:06:05,916.916 INFO    ] Launching Daemon at Fri Jun 19 08:06:05 IST 2026
[2026-06-19 08:06:05,927.927 INFO    ] ================================================
[2026-06-19 08:06:06,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:06:06
[2026-06-19 08:06:07,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:06:07,381.381 INFO    ] Initializing speech engine...
[2026-06-19 08:06:07,406.406 INFO    ] 2026-06-19 08:06:07
[2026-06-19 08:06:07,677.677 INFO    ] 2026-06-19 08:06:07
[2026-06-19 08:06:07,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:06:07,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:06:07,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:06:08,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:06:08,091.091 INFO    ] time= 19/06/2026 08:06:08
[2026-06-19 08:06:08,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:06:08,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:06:08,175.175 INFO    ] No existing commands found in stream
[2026-06-19 08:06:13,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:06:13,190.190 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 08:06:14,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:06:14,126.126 INFO    ] Checking for system updates...
[2026-06-19 08:06:14,162.162 INFO    ] 200
[2026-06-19 08:06:14,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:14,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:06:14,220.220 INFO    ] No update needed
[2026-06-19 08:06:14,222.222 INFO    ] Checking for camera pi updates...
[2026-06-19 08:06:14,256.256 INFO    ] 200
[2026-06-19 08:06:14,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:14,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:06:14,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:06:14,352.352 INFO    ] No camera update needed
[2026-06-19 08:06:14,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:06:14,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:06:14,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:06:14,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:06:16,409.409 INFO    ] ================================================
[2026-06-19 08:06:16,425.425 INFO    ] Launching Daemon at Fri Jun 19 08:06:16 IST 2026
[2026-06-19 08:06:16,437.437 INFO    ] ================================================
[2026-06-19 08:06:17,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:06:17
[2026-06-19 08:06:17,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:06:18,034.034 INFO    ] Initializing speech engine...
[2026-06-19 08:06:18,042.042 INFO    ] 2026-06-19 08:06:18
[2026-06-19 08:06:18,312.312 INFO    ] 2026-06-19 08:06:18
[2026-06-19 08:06:18,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:06:18,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:06:18,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:06:18,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:06:18,694.694 INFO    ] time= 19/06/2026 08:06:18
[2026-06-19 08:06:18,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:06:18,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:06:18,886.886 INFO    ] No existing commands found in stream
[2026-06-19 08:06:23,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:06:23,905.905 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 08:06:27,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:06:27,851.851 INFO    ] Checking for system updates...
[2026-06-19 08:06:27,889.889 INFO    ] 200
[2026-06-19 08:06:27,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:27,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:06:27,947.947 INFO    ] No update needed
[2026-06-19 08:06:27,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 08:06:27,984.984 INFO    ] 200
[2026-06-19 08:06:27,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:28,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:06:28,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:06:28,074.074 INFO    ] No camera update needed
[2026-06-19 08:06:28,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:06:28,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:06:28,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:06:28,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:06:30,131.131 INFO    ] ================================================
[2026-06-19 08:06:30,151.151 INFO    ] Launching Daemon at Fri Jun 19 08:06:30 IST 2026
[2026-06-19 08:06:30,163.163 INFO    ] ================================================
[2026-06-19 08:06:30,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:06:30
[2026-06-19 08:06:31,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:06:31,767.767 INFO    ] Initializing speech engine...
[2026-06-19 08:06:31,779.779 INFO    ] 2026-06-19 08:06:31
[2026-06-19 08:06:32,082.082 INFO    ] 2026-06-19 08:06:32
[2026-06-19 08:06:32,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:06:32,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:06:32,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:06:32,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:06:32,592.592 INFO    ] time= 19/06/2026 08:06:32
[2026-06-19 08:06:32,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:06:32,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:06:32,787.787 INFO    ] No existing commands found in stream
[2026-06-19 08:06:37,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:06:37,823.823 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 08:06:39,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:06:39,137.137 INFO    ] Checking for system updates...
[2026-06-19 08:06:39,175.175 INFO    ] 200
[2026-06-19 08:06:39,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:39,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:06:39,234.234 INFO    ] No update needed
[2026-06-19 08:06:39,237.237 INFO    ] Checking for camera pi updates...
[2026-06-19 08:06:39,275.275 INFO    ] 200
[2026-06-19 08:06:39,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:39,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:06:39,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:06:39,372.372 INFO    ] No camera update needed
[2026-06-19 08:06:39,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:06:39,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:06:39,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:06:39,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:06:41,430.430 INFO    ] ================================================
[2026-06-19 08:06:41,446.446 INFO    ] Launching Daemon at Fri Jun 19 08:06:41 IST 2026
[2026-06-19 08:06:41,457.457 INFO    ] ================================================
[2026-06-19 08:06:42,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:06:42
[2026-06-19 08:06:42,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:06:43,080.080 INFO    ] Initializing speech engine...
[2026-06-19 08:06:43,092.092 INFO    ] 2026-06-19 08:06:43
[2026-06-19 08:06:43,378.378 INFO    ] 2026-06-19 08:06:43
[2026-06-19 08:06:43,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:06:43,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:06:43,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:06:43,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:06:43,840.840 INFO    ] time= 19/06/2026 08:06:43
[2026-06-19 08:06:43,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:06:43,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:06:43,991.991 INFO    ] No existing commands found in stream
[2026-06-19 08:06:49,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:06:49,009.009 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 08:06:53,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:06:53,146.146 INFO    ] Checking for system updates...
[2026-06-19 08:06:53,182.182 INFO    ] 200
[2026-06-19 08:06:53,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:53,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:06:53,240.240 INFO    ] No update needed
[2026-06-19 08:06:53,242.242 INFO    ] Checking for camera pi updates...
[2026-06-19 08:06:53,280.280 INFO    ] 200
[2026-06-19 08:06:53,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:06:53,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:06:53,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:06:53,378.378 INFO    ] No camera update needed
[2026-06-19 08:06:53,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:06:53,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:06:53,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:06:53,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:06:55,434.434 INFO    ] ================================================
[2026-06-19 08:06:55,450.450 INFO    ] Launching Daemon at Fri Jun 19 08:06:55 IST 2026
[2026-06-19 08:06:55,461.461 INFO    ] ================================================
[2026-06-19 08:06:56,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:06:56
[2026-06-19 08:06:56,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:06:56,865.865 INFO    ] Initializing speech engine...
[2026-06-19 08:06:56,878.878 INFO    ] 2026-06-19 08:06:56
[2026-06-19 08:06:57,144.144 INFO    ] 2026-06-19 08:06:57
[2026-06-19 08:06:57,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:06:57,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:06:57,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:06:57,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:06:57,521.521 INFO    ] time= 19/06/2026 08:06:57
[2026-06-19 08:06:57,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:06:57,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:06:57,708.708 INFO    ] No existing commands found in stream
[2026-06-19 08:07:02,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:07:02,738.738 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 08:07:04,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:07:04,765.765 INFO    ] Checking for system updates...
[2026-06-19 08:07:04,800.800 INFO    ] 200
[2026-06-19 08:07:04,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:04,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:07:04,859.859 INFO    ] No update needed
[2026-06-19 08:07:04,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 08:07:04,896.896 INFO    ] 200
[2026-06-19 08:07:04,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:04,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:07:04,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:07:04,981.981 INFO    ] No camera update needed
[2026-06-19 08:07:04,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:07:04,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:07:04,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:07:04,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:07:07,037.037 INFO    ] ================================================
[2026-06-19 08:07:07,052.052 INFO    ] Launching Daemon at Fri Jun 19 08:07:07 IST 2026
[2026-06-19 08:07:07,062.062 INFO    ] ================================================
[2026-06-19 08:07:07,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:07:07
[2026-06-19 08:07:08,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:07:08,475.475 INFO    ] Initializing speech engine...
[2026-06-19 08:07:08,484.484 INFO    ] 2026-06-19 08:07:08
[2026-06-19 08:07:08,782.782 INFO    ] 2026-06-19 08:07:08
[2026-06-19 08:07:08,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:07:08,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:07:08,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:07:09,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:07:09,136.136 INFO    ] time= 19/06/2026 08:07:09
[2026-06-19 08:07:09,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:07:09,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:07:09,214.214 INFO    ] No existing commands found in stream
[2026-06-19 08:07:14,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:07:14,230.230 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 08:07:15,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:07:15,468.468 INFO    ] Checking for system updates...
[2026-06-19 08:07:15,504.504 INFO    ] 200
[2026-06-19 08:07:15,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:15,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:07:15,563.563 INFO    ] No update needed
[2026-06-19 08:07:15,566.566 INFO    ] Checking for camera pi updates...
[2026-06-19 08:07:15,600.600 INFO    ] 200
[2026-06-19 08:07:15,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:15,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:07:15,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:07:15,691.691 INFO    ] No camera update needed
[2026-06-19 08:07:15,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:07:15,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:07:15,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:07:15,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:07:17,747.747 INFO    ] ================================================
[2026-06-19 08:07:17,762.762 INFO    ] Launching Daemon at Fri Jun 19 08:07:17 IST 2026
[2026-06-19 08:07:17,773.773 INFO    ] ================================================
[2026-06-19 08:07:18,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:07:18
[2026-06-19 08:07:18,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:07:19,206.206 INFO    ] Initializing speech engine...
[2026-06-19 08:07:19,214.214 INFO    ] 2026-06-19 08:07:19
[2026-06-19 08:07:19,509.509 INFO    ] 2026-06-19 08:07:19
[2026-06-19 08:07:19,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:07:19,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:07:19,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:07:19,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:07:19,894.894 INFO    ] time= 19/06/2026 08:07:19
[2026-06-19 08:07:19,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:07:19,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:07:20,019.019 INFO    ] No existing commands found in stream
[2026-06-19 08:07:25,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:07:25,035.035 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 08:07:26,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:07:26,502.502 INFO    ] Checking for system updates...
[2026-06-19 08:07:26,539.539 INFO    ] 200
[2026-06-19 08:07:26,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:26,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:07:26,605.605 INFO    ] No update needed
[2026-06-19 08:07:26,609.609 INFO    ] Checking for camera pi updates...
[2026-06-19 08:07:26,647.647 INFO    ] 200
[2026-06-19 08:07:26,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:26,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:07:26,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:07:26,740.740 INFO    ] No camera update needed
[2026-06-19 08:07:26,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:07:26,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:07:26,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:07:26,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:07:28,800.800 INFO    ] ================================================
[2026-06-19 08:07:28,816.816 INFO    ] Launching Daemon at Fri Jun 19 08:07:28 IST 2026
[2026-06-19 08:07:28,827.827 INFO    ] ================================================
[2026-06-19 08:07:29,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:07:29
[2026-06-19 08:07:30,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:07:30,472.472 INFO    ] Initializing speech engine...
[2026-06-19 08:07:30,486.486 INFO    ] 2026-06-19 08:07:30
[2026-06-19 08:07:30,796.796 INFO    ] 2026-06-19 08:07:30
[2026-06-19 08:07:30,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:07:31,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:07:31,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:07:31,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:07:31,306.306 INFO    ] time= 19/06/2026 08:07:31
[2026-06-19 08:07:31,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:07:31,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:07:31,463.463 INFO    ] No existing commands found in stream
[2026-06-19 08:07:36,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:07:36,501.501 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 08:07:38,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:07:38,886.886 INFO    ] Checking for system updates...
[2026-06-19 08:07:38,923.923 INFO    ] 200
[2026-06-19 08:07:38,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:38,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:07:38,982.982 INFO    ] No update needed
[2026-06-19 08:07:38,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 08:07:39,019.019 INFO    ] 200
[2026-06-19 08:07:39,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:39,063.063 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:07:39,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:07:39,104.104 INFO    ] No camera update needed
[2026-06-19 08:07:39,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:07:39,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:07:39,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:07:39,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:07:41,160.160 INFO    ] ================================================
[2026-06-19 08:07:41,176.176 INFO    ] Launching Daemon at Fri Jun 19 08:07:41 IST 2026
[2026-06-19 08:07:41,187.187 INFO    ] ================================================
[2026-06-19 08:07:41,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:07:41
[2026-06-19 08:07:42,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:07:42,857.857 INFO    ] Initializing speech engine...
[2026-06-19 08:07:42,864.864 INFO    ] 2026-06-19 08:07:42
[2026-06-19 08:07:43,149.149 INFO    ] 2026-06-19 08:07:43
[2026-06-19 08:07:43,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:07:43,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:07:43,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:07:43,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:07:43,641.641 INFO    ] time= 19/06/2026 08:07:43
[2026-06-19 08:07:43,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:07:43,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:07:43,792.792 INFO    ] No existing commands found in stream
[2026-06-19 08:07:48,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:07:48,821.821 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 08:07:52,043.043 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:07:52,046.046 INFO    ] Checking for system updates...
[2026-06-19 08:07:52,083.083 INFO    ] 200
[2026-06-19 08:07:52,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:52,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:07:52,144.144 INFO    ] No update needed
[2026-06-19 08:07:52,147.147 INFO    ] Checking for camera pi updates...
[2026-06-19 08:07:52,182.182 INFO    ] 200
[2026-06-19 08:07:52,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:07:52,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:07:52,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:07:52,280.280 INFO    ] No camera update needed
[2026-06-19 08:07:52,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:07:52,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:07:52,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:07:52,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:07:54,340.340 INFO    ] ================================================
[2026-06-19 08:07:54,356.356 INFO    ] Launching Daemon at Fri Jun 19 08:07:54 IST 2026
[2026-06-19 08:07:54,367.367 INFO    ] ================================================
[2026-06-19 08:07:54,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:07:54
[2026-06-19 08:07:55,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:07:55,898.898 INFO    ] Initializing speech engine...
[2026-06-19 08:07:55,911.911 INFO    ] 2026-06-19 08:07:55
[2026-06-19 08:07:56,168.168 INFO    ] 2026-06-19 08:07:56
[2026-06-19 08:07:56,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:07:56,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:07:56,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:07:56,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:07:56,635.635 INFO    ] time= 19/06/2026 08:07:56
[2026-06-19 08:07:56,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:07:56,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:07:56,789.789 INFO    ] No existing commands found in stream
[2026-06-19 08:08:01,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:08:01,801.801 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 08:08:05,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:08:05,551.551 INFO    ] Checking for system updates...
[2026-06-19 08:08:05,641.641 INFO    ] 200
[2026-06-19 08:08:05,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:05,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:08:05,699.699 INFO    ] No update needed
[2026-06-19 08:08:05,701.701 INFO    ] Checking for camera pi updates...
[2026-06-19 08:08:05,738.738 INFO    ] 200
[2026-06-19 08:08:05,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:05,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:08:05,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:08:05,841.841 INFO    ] No camera update needed
[2026-06-19 08:08:05,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:08:05,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:08:05,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:08:05,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:08:07,897.897 INFO    ] ================================================
[2026-06-19 08:08:07,912.912 INFO    ] Launching Daemon at Fri Jun 19 08:08:07 IST 2026
[2026-06-19 08:08:07,923.923 INFO    ] ================================================
[2026-06-19 08:08:08,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:08:08
[2026-06-19 08:08:09,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:08:09,347.347 INFO    ] Initializing speech engine...
[2026-06-19 08:08:09,357.357 INFO    ] 2026-06-19 08:08:09
[2026-06-19 08:08:09,651.651 INFO    ] 2026-06-19 08:08:09
[2026-06-19 08:08:09,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:08:09,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:08:09,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:08:10,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:08:10,061.061 INFO    ] time= 19/06/2026 08:08:10
[2026-06-19 08:08:10,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:08:10,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:08:10,144.144 INFO    ] No existing commands found in stream
[2026-06-19 08:08:15,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:08:15,158.158 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 08:08:15,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:08:15,551.551 INFO    ] Checking for system updates...
[2026-06-19 08:08:15,588.588 INFO    ] 200
[2026-06-19 08:08:15,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:15,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:08:15,646.646 INFO    ] No update needed
[2026-06-19 08:08:15,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 08:08:15,697.697 INFO    ] 200
[2026-06-19 08:08:15,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:15,739.739 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:08:15,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:08:15,779.779 INFO    ] No camera update needed
[2026-06-19 08:08:15,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:08:15,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:08:15,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:08:15,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:08:17,834.834 INFO    ] ================================================
[2026-06-19 08:08:17,849.849 INFO    ] Launching Daemon at Fri Jun 19 08:08:17 IST 2026
[2026-06-19 08:08:17,860.860 INFO    ] ================================================
[2026-06-19 08:08:18,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:08:18
[2026-06-19 08:08:19,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:08:19,316.316 INFO    ] Initializing speech engine...
[2026-06-19 08:08:19,330.330 INFO    ] 2026-06-19 08:08:19
[2026-06-19 08:08:19,603.603 INFO    ] 2026-06-19 08:08:19
[2026-06-19 08:08:19,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:08:19,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:08:19,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:08:19,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:08:19,993.993 INFO    ] time= 19/06/2026 08:08:19
[2026-06-19 08:08:20,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:08:20,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:08:20,099.099 INFO    ] No existing commands found in stream
[2026-06-19 08:08:25,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:08:25,115.115 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 08:08:27,047.047 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:08:27,049.049 INFO    ] Checking for system updates...
[2026-06-19 08:08:27,087.087 INFO    ] 200
[2026-06-19 08:08:27,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:27,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:08:27,152.152 INFO    ] No update needed
[2026-06-19 08:08:27,154.154 INFO    ] Checking for camera pi updates...
[2026-06-19 08:08:27,188.188 INFO    ] 200
[2026-06-19 08:08:27,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:27,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:08:27,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:08:27,278.278 INFO    ] No camera update needed
[2026-06-19 08:08:27,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:08:27,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:08:27,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:08:27,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:08:29,334.334 INFO    ] ================================================
[2026-06-19 08:08:29,350.350 INFO    ] Launching Daemon at Fri Jun 19 08:08:29 IST 2026
[2026-06-19 08:08:29,362.362 INFO    ] ================================================
[2026-06-19 08:08:29,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:08:29
[2026-06-19 08:08:30,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:08:30,793.793 INFO    ] Initializing speech engine...
[2026-06-19 08:08:30,802.802 INFO    ] 2026-06-19 08:08:30
[2026-06-19 08:08:31,047.047 INFO    ] 2026-06-19 08:08:31
[2026-06-19 08:08:31,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:08:31,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:08:31,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:08:31,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:08:31,533.533 INFO    ] time= 19/06/2026 08:08:31
[2026-06-19 08:08:31,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:08:31,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:08:31,686.686 INFO    ] No existing commands found in stream
[2026-06-19 08:08:36,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:08:36,701.701 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 08:08:37,669.669 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:08:37,671.671 INFO    ] Checking for system updates...
[2026-06-19 08:08:37,711.711 INFO    ] 200
[2026-06-19 08:08:37,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:37,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:08:37,772.772 INFO    ] No update needed
[2026-06-19 08:08:37,774.774 INFO    ] Checking for camera pi updates...
[2026-06-19 08:08:37,810.810 INFO    ] 200
[2026-06-19 08:08:37,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:37,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:08:37,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:08:37,897.897 INFO    ] No camera update needed
[2026-06-19 08:08:37,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:08:37,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:08:37,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:08:37,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:08:39,957.957 INFO    ] ================================================
[2026-06-19 08:08:39,973.973 INFO    ] Launching Daemon at Fri Jun 19 08:08:39 IST 2026
[2026-06-19 08:08:39,984.984 INFO    ] ================================================
[2026-06-19 08:08:40,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:08:40
[2026-06-19 08:08:41,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:08:41,479.479 INFO    ] Initializing speech engine...
[2026-06-19 08:08:41,484.484 INFO    ] 2026-06-19 08:08:41
[2026-06-19 08:08:41,733.733 INFO    ] 2026-06-19 08:08:41
[2026-06-19 08:08:41,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:08:42,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:08:42,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:08:42,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:08:42,207.207 INFO    ] time= 19/06/2026 08:08:42
[2026-06-19 08:08:42,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:08:42,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:08:42,351.351 INFO    ] No existing commands found in stream
[2026-06-19 08:08:47,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:08:47,366.366 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 08:08:51,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:08:51,182.182 INFO    ] Checking for system updates...
[2026-06-19 08:08:51,219.219 INFO    ] 200
[2026-06-19 08:08:51,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:51,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:08:51,277.277 INFO    ] No update needed
[2026-06-19 08:08:51,280.280 INFO    ] Checking for camera pi updates...
[2026-06-19 08:08:51,313.313 INFO    ] 200
[2026-06-19 08:08:51,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:08:51,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:08:51,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:08:51,399.399 INFO    ] No camera update needed
[2026-06-19 08:08:51,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:08:51,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:08:51,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:08:51,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:08:53,453.453 INFO    ] ================================================
[2026-06-19 08:08:53,470.470 INFO    ] Launching Daemon at Fri Jun 19 08:08:53 IST 2026
[2026-06-19 08:08:53,481.481 INFO    ] ================================================
[2026-06-19 08:08:54,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:08:54
[2026-06-19 08:08:54,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:08:54,932.932 INFO    ] Initializing speech engine...
[2026-06-19 08:08:54,941.941 INFO    ] 2026-06-19 08:08:54
[2026-06-19 08:08:55,189.189 INFO    ] 2026-06-19 08:08:55
[2026-06-19 08:08:55,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:08:55,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:08:55,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:08:55,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:08:55,672.672 INFO    ] time= 19/06/2026 08:08:55
[2026-06-19 08:08:55,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:08:55,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:08:55,823.823 INFO    ] No existing commands found in stream
[2026-06-19 08:09:00,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:09:00,846.846 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 08:09:03,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:09:03,390.390 INFO    ] Checking for system updates...
[2026-06-19 08:09:03,429.429 INFO    ] 200
[2026-06-19 08:09:03,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:03,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:09:03,487.487 INFO    ] No update needed
[2026-06-19 08:09:03,490.490 INFO    ] Checking for camera pi updates...
[2026-06-19 08:09:03,523.523 INFO    ] 200
[2026-06-19 08:09:03,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:03,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:09:03,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:09:03,617.617 INFO    ] No camera update needed
[2026-06-19 08:09:03,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:09:03,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:09:03,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:09:03,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:09:05,673.673 INFO    ] ================================================
[2026-06-19 08:09:05,688.688 INFO    ] Launching Daemon at Fri Jun 19 08:09:05 IST 2026
[2026-06-19 08:09:05,699.699 INFO    ] ================================================
[2026-06-19 08:09:06,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:09:06
[2026-06-19 08:09:06,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:09:07,189.189 INFO    ] Initializing speech engine...
[2026-06-19 08:09:07,195.195 INFO    ] 2026-06-19 08:09:07
[2026-06-19 08:09:07,450.450 INFO    ] 2026-06-19 08:09:07
[2026-06-19 08:09:07,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:09:07,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:09:07,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:09:07,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:09:07,822.822 INFO    ] time= 19/06/2026 08:09:07
[2026-06-19 08:09:07,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:09:07,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:09:07,989.989 INFO    ] No existing commands found in stream
[2026-06-19 08:09:13,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:09:13,022.022 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 08:09:13,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:09:13,739.739 INFO    ] Checking for system updates...
[2026-06-19 08:09:13,780.780 INFO    ] 200
[2026-06-19 08:09:13,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:13,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:09:13,840.840 INFO    ] No update needed
[2026-06-19 08:09:13,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 08:09:13,881.881 INFO    ] 200
[2026-06-19 08:09:13,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:13,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:09:13,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:09:13,979.979 INFO    ] No camera update needed
[2026-06-19 08:09:13,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:09:13,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:09:13,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:09:13,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:09:16,038.038 INFO    ] ================================================
[2026-06-19 08:09:16,054.054 INFO    ] Launching Daemon at Fri Jun 19 08:09:16 IST 2026
[2026-06-19 08:09:16,065.065 INFO    ] ================================================
[2026-06-19 08:09:16,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:09:16
[2026-06-19 08:09:17,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:09:17,504.504 INFO    ] Initializing speech engine...
[2026-06-19 08:09:17,512.512 INFO    ] 2026-06-19 08:09:17
[2026-06-19 08:09:17,763.763 INFO    ] 2026-06-19 08:09:17
[2026-06-19 08:09:17,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:09:18,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:09:18,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:09:18,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:09:18,226.226 INFO    ] time= 19/06/2026 08:09:18
[2026-06-19 08:09:18,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:09:18,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:09:18,398.398 INFO    ] No existing commands found in stream
[2026-06-19 08:09:23,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:09:23,413.413 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 08:09:23,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:09:23,938.938 INFO    ] Checking for system updates...
[2026-06-19 08:09:23,974.974 INFO    ] 200
[2026-06-19 08:09:23,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:24,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:09:24,032.032 INFO    ] No update needed
[2026-06-19 08:09:24,035.035 INFO    ] Checking for camera pi updates...
[2026-06-19 08:09:24,068.068 INFO    ] 200
[2026-06-19 08:09:24,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:24,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:09:24,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:09:24,161.161 INFO    ] No camera update needed
[2026-06-19 08:09:24,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:09:24,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:09:24,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:09:24,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:09:26,217.217 INFO    ] ================================================
[2026-06-19 08:09:26,232.232 INFO    ] Launching Daemon at Fri Jun 19 08:09:26 IST 2026
[2026-06-19 08:09:26,243.243 INFO    ] ================================================
[2026-06-19 08:09:26,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:09:26
[2026-06-19 08:09:27,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:09:27,648.648 INFO    ] Initializing speech engine...
[2026-06-19 08:09:27,654.654 INFO    ] 2026-06-19 08:09:27
[2026-06-19 08:09:27,946.946 INFO    ] 2026-06-19 08:09:27
[2026-06-19 08:09:27,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:09:28,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:09:28,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:09:28,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:09:28,318.318 INFO    ] time= 19/06/2026 08:09:28
[2026-06-19 08:09:28,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:09:28,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:09:28,439.439 INFO    ] No existing commands found in stream
[2026-06-19 08:09:33,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:09:33,455.455 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 08:09:37,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:09:37,745.745 INFO    ] Checking for system updates...
[2026-06-19 08:09:37,784.784 INFO    ] 200
[2026-06-19 08:09:37,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:37,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:09:37,847.847 INFO    ] No update needed
[2026-06-19 08:09:37,850.850 INFO    ] Checking for camera pi updates...
[2026-06-19 08:09:37,886.886 INFO    ] 200
[2026-06-19 08:09:37,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:37,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:09:38,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:09:38,085.085 INFO    ] No camera update needed
[2026-06-19 08:09:38,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:09:38,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:09:38,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:09:38,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:09:40,141.141 INFO    ] ================================================
[2026-06-19 08:09:40,157.157 INFO    ] Launching Daemon at Fri Jun 19 08:09:40 IST 2026
[2026-06-19 08:09:40,168.168 INFO    ] ================================================
[2026-06-19 08:09:40,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:09:40
[2026-06-19 08:09:41,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:09:41,618.618 INFO    ] Initializing speech engine...
[2026-06-19 08:09:41,625.625 INFO    ] 2026-06-19 08:09:41
[2026-06-19 08:09:41,900.900 INFO    ] 2026-06-19 08:09:41
[2026-06-19 08:09:41,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:09:42,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:09:42,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:09:42,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:09:42,425.425 INFO    ] time= 19/06/2026 08:09:42
[2026-06-19 08:09:42,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:09:42,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:09:42,568.568 INFO    ] No existing commands found in stream
[2026-06-19 08:09:47,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:09:47,595.595 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 08:09:48,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:09:48,260.260 INFO    ] Checking for system updates...
[2026-06-19 08:09:48,298.298 INFO    ] 200
[2026-06-19 08:09:48,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:48,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:09:48,362.362 INFO    ] No update needed
[2026-06-19 08:09:48,364.364 INFO    ] Checking for camera pi updates...
[2026-06-19 08:09:48,401.401 INFO    ] 200
[2026-06-19 08:09:48,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:09:48,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:09:48,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:09:48,475.475 INFO    ] No camera update needed
[2026-06-19 08:09:48,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:09:48,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:09:48,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:09:48,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:09:50,534.534 INFO    ] ================================================
[2026-06-19 08:09:50,550.550 INFO    ] Launching Daemon at Fri Jun 19 08:09:50 IST 2026
[2026-06-19 08:09:50,563.563 INFO    ] ================================================
[2026-06-19 08:09:51,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:09:51
[2026-06-19 08:09:51,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:09:52,010.010 INFO    ] Initializing speech engine...
[2026-06-19 08:09:52,030.030 INFO    ] 2026-06-19 08:09:52
[2026-06-19 08:09:52,293.293 INFO    ] 2026-06-19 08:09:52
[2026-06-19 08:09:52,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:09:52,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:09:52,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:09:52,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:09:52,699.699 INFO    ] time= 19/06/2026 08:09:52
[2026-06-19 08:09:52,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:09:52,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:09:52,876.876 INFO    ] No existing commands found in stream
[2026-06-19 08:09:57,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:09:57,904.904 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 08:10:00,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:10:00,344.344 INFO    ] Checking for system updates...
[2026-06-19 08:10:00,380.380 INFO    ] 200
[2026-06-19 08:10:00,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:00,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:10:00,439.439 INFO    ] No update needed
[2026-06-19 08:10:00,441.441 INFO    ] Checking for camera pi updates...
[2026-06-19 08:10:00,474.474 INFO    ] 200
[2026-06-19 08:10:00,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:00,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:10:00,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:10:00,566.566 INFO    ] No camera update needed
[2026-06-19 08:10:00,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:10:00,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:10:00,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:10:00,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:10:02,637.637 INFO    ] ================================================
[2026-06-19 08:10:02,666.666 INFO    ] Launching Daemon at Fri Jun 19 08:10:02 IST 2026
[2026-06-19 08:10:02,687.687 INFO    ] ================================================
[2026-06-19 08:10:03,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:10:03
[2026-06-19 08:10:04,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:10:04,415.415 INFO    ] Initializing speech engine...
[2026-06-19 08:10:04,429.429 INFO    ] 2026-06-19 08:10:04
[2026-06-19 08:10:04,735.735 INFO    ] 2026-06-19 08:10:04
[2026-06-19 08:10:04,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:10:04,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:10:04,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:10:05,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:10:05,136.136 INFO    ] time= 19/06/2026 08:10:05
[2026-06-19 08:10:05,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:10:05,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:10:05,307.307 INFO    ] No existing commands found in stream
[2026-06-19 08:10:10,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:10:10,323.323 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 08:10:11,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:10:11,147.147 INFO    ] Checking for system updates...
[2026-06-19 08:10:11,194.194 INFO    ] 200
[2026-06-19 08:10:11,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:11,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:10:11,254.254 INFO    ] No update needed
[2026-06-19 08:10:11,257.257 INFO    ] Checking for camera pi updates...
[2026-06-19 08:10:11,292.292 INFO    ] 200
[2026-06-19 08:10:11,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:11,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:10:11,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:10:11,382.382 INFO    ] No camera update needed
[2026-06-19 08:10:11,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:10:11,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:10:11,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:10:11,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:10:13,441.441 INFO    ] ================================================
[2026-06-19 08:10:13,456.456 INFO    ] Launching Daemon at Fri Jun 19 08:10:13 IST 2026
[2026-06-19 08:10:13,467.467 INFO    ] ================================================
[2026-06-19 08:10:14,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:10:14
[2026-06-19 08:10:14,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:10:15,052.052 INFO    ] Initializing speech engine...
[2026-06-19 08:10:15,058.058 INFO    ] 2026-06-19 08:10:15
[2026-06-19 08:10:15,339.339 INFO    ] 2026-06-19 08:10:15
[2026-06-19 08:10:15,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:10:15,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:10:15,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:10:15,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:10:15,878.878 INFO    ] time= 19/06/2026 08:10:15
[2026-06-19 08:10:15,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:10:15,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:10:16,028.028 INFO    ] No existing commands found in stream
[2026-06-19 08:10:21,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:10:21,049.049 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 08:10:22,624.624 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:10:22,627.627 INFO    ] Checking for system updates...
[2026-06-19 08:10:22,667.667 INFO    ] 200
[2026-06-19 08:10:22,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:22,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:10:22,730.730 INFO    ] No update needed
[2026-06-19 08:10:22,732.732 INFO    ] Checking for camera pi updates...
[2026-06-19 08:10:22,767.767 INFO    ] 200
[2026-06-19 08:10:22,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:22,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:10:22,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:10:22,866.866 INFO    ] No camera update needed
[2026-06-19 08:10:22,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:10:22,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:10:22,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:10:22,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:10:24,922.922 INFO    ] ================================================
[2026-06-19 08:10:24,937.937 INFO    ] Launching Daemon at Fri Jun 19 08:10:24 IST 2026
[2026-06-19 08:10:24,948.948 INFO    ] ================================================
[2026-06-19 08:10:25,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:10:25
[2026-06-19 08:10:26,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:10:26,352.352 INFO    ] Initializing speech engine...
[2026-06-19 08:10:26,361.361 INFO    ] 2026-06-19 08:10:26
[2026-06-19 08:10:26,649.649 INFO    ] 2026-06-19 08:10:26
[2026-06-19 08:10:26,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:10:26,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:10:26,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:10:27,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:10:27,058.058 INFO    ] time= 19/06/2026 08:10:27
[2026-06-19 08:10:27,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:10:27,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:10:27,208.208 INFO    ] No existing commands found in stream
[2026-06-19 08:10:32,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:10:32,231.231 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 08:10:34,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:10:34,516.516 INFO    ] Checking for system updates...
[2026-06-19 08:10:34,556.556 INFO    ] 200
[2026-06-19 08:10:34,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:34,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:10:34,621.621 INFO    ] No update needed
[2026-06-19 08:10:34,624.624 INFO    ] Checking for camera pi updates...
[2026-06-19 08:10:34,659.659 INFO    ] 200
[2026-06-19 08:10:34,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:34,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:10:34,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:10:34,755.755 INFO    ] No camera update needed
[2026-06-19 08:10:34,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:10:34,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:10:34,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:10:34,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:10:36,812.812 INFO    ] ================================================
[2026-06-19 08:10:36,828.828 INFO    ] Launching Daemon at Fri Jun 19 08:10:36 IST 2026
[2026-06-19 08:10:36,838.838 INFO    ] ================================================
[2026-06-19 08:10:37,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:10:37
[2026-06-19 08:10:38,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:10:38,420.420 INFO    ] Initializing speech engine...
[2026-06-19 08:10:38,433.433 INFO    ] 2026-06-19 08:10:38
[2026-06-19 08:10:38,711.711 INFO    ] 2026-06-19 08:10:38
[2026-06-19 08:10:38,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:10:38,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:10:38,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:10:39,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:10:39,191.191 INFO    ] time= 19/06/2026 08:10:39
[2026-06-19 08:10:39,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:10:39,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:10:39,385.385 INFO    ] No existing commands found in stream
[2026-06-19 08:10:44,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:10:44,413.413 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 08:10:45,422.422 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:10:45,424.424 INFO    ] Checking for system updates...
[2026-06-19 08:10:45,460.460 INFO    ] 200
[2026-06-19 08:10:45,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:45,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:10:45,524.524 INFO    ] No update needed
[2026-06-19 08:10:45,527.527 INFO    ] Checking for camera pi updates...
[2026-06-19 08:10:45,561.561 INFO    ] 200
[2026-06-19 08:10:45,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:45,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:10:45,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:10:45,647.647 INFO    ] No camera update needed
[2026-06-19 08:10:45,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:10:45,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:10:45,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:10:45,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:10:47,701.701 INFO    ] ================================================
[2026-06-19 08:10:47,717.717 INFO    ] Launching Daemon at Fri Jun 19 08:10:47 IST 2026
[2026-06-19 08:10:47,728.728 INFO    ] ================================================
[2026-06-19 08:10:48,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:10:48
[2026-06-19 08:10:49,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:10:49,304.304 INFO    ] Initializing speech engine...
[2026-06-19 08:10:49,315.315 INFO    ] 2026-06-19 08:10:49
[2026-06-19 08:10:49,595.595 INFO    ] 2026-06-19 08:10:49
[2026-06-19 08:10:49,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:10:49,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:10:49,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:10:50,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:10:50,129.129 INFO    ] time= 19/06/2026 08:10:50
[2026-06-19 08:10:50,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:10:50,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:10:50,287.287 INFO    ] No existing commands found in stream
[2026-06-19 08:10:55,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:10:55,313.313 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 08:10:57,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:10:57,004.004 INFO    ] Checking for system updates...
[2026-06-19 08:10:57,042.042 INFO    ] 200
[2026-06-19 08:10:57,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:57,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:10:57,107.107 INFO    ] No update needed
[2026-06-19 08:10:57,110.110 INFO    ] Checking for camera pi updates...
[2026-06-19 08:10:57,147.147 INFO    ] 200
[2026-06-19 08:10:57,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:10:57,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:10:57,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:10:57,237.237 INFO    ] No camera update needed
[2026-06-19 08:10:57,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:10:57,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:10:57,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:10:57,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:10:59,296.296 INFO    ] ================================================
[2026-06-19 08:10:59,311.311 INFO    ] Launching Daemon at Fri Jun 19 08:10:59 IST 2026
[2026-06-19 08:10:59,322.322 INFO    ] ================================================
[2026-06-19 08:10:59,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:10:59
[2026-06-19 08:11:00,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:11:00,761.761 INFO    ] Initializing speech engine...
[2026-06-19 08:11:00,776.776 INFO    ] 2026-06-19 08:11:00
[2026-06-19 08:11:01,057.057 INFO    ] 2026-06-19 08:11:01
[2026-06-19 08:11:01,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:11:01,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:11:01,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:11:01,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:11:01,423.423 INFO    ] time= 19/06/2026 08:11:01
[2026-06-19 08:11:01,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:11:01,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:11:01,544.544 INFO    ] No existing commands found in stream
[2026-06-19 08:11:06,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:11:06,559.559 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 08:11:07,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:11:07,897.897 INFO    ] Checking for system updates...
[2026-06-19 08:11:07,934.934 INFO    ] 200
[2026-06-19 08:11:07,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:07,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:11:07,992.992 INFO    ] No update needed
[2026-06-19 08:11:07,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 08:11:08,029.029 INFO    ] 200
[2026-06-19 08:11:08,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:08,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:11:08,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:11:08,115.115 INFO    ] No camera update needed
[2026-06-19 08:11:08,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:11:08,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:11:08,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:11:08,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:11:10,171.171 INFO    ] ================================================
[2026-06-19 08:11:10,186.186 INFO    ] Launching Daemon at Fri Jun 19 08:11:10 IST 2026
[2026-06-19 08:11:10,197.197 INFO    ] ================================================
[2026-06-19 08:11:10,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:11:10
[2026-06-19 08:11:11,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:11:11,619.619 INFO    ] Initializing speech engine...
[2026-06-19 08:11:11,632.632 INFO    ] 2026-06-19 08:11:11
[2026-06-19 08:11:11,898.898 INFO    ] 2026-06-19 08:11:11
[2026-06-19 08:11:11,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:11:12,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:11:12,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:11:12,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:11:12,254.254 INFO    ] time= 19/06/2026 08:11:12
[2026-06-19 08:11:12,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:11:12,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:11:12,350.350 INFO    ] No existing commands found in stream
[2026-06-19 08:11:17,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:11:17,366.366 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 08:11:19,604.604 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:11:19,606.606 INFO    ] Checking for system updates...
[2026-06-19 08:11:19,643.643 INFO    ] 200
[2026-06-19 08:11:19,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:19,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:11:19,701.701 INFO    ] No update needed
[2026-06-19 08:11:19,703.703 INFO    ] Checking for camera pi updates...
[2026-06-19 08:11:19,737.737 INFO    ] 200
[2026-06-19 08:11:19,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:19,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:11:19,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:11:19,829.829 INFO    ] No camera update needed
[2026-06-19 08:11:19,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:11:19,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:11:19,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:11:19,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:11:21,886.886 INFO    ] ================================================
[2026-06-19 08:11:21,902.902 INFO    ] Launching Daemon at Fri Jun 19 08:11:21 IST 2026
[2026-06-19 08:11:21,913.913 INFO    ] ================================================
[2026-06-19 08:11:22,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:11:22
[2026-06-19 08:11:23,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:11:23,360.360 INFO    ] Initializing speech engine...
[2026-06-19 08:11:23,376.376 INFO    ] 2026-06-19 08:11:23
[2026-06-19 08:11:23,632.632 INFO    ] 2026-06-19 08:11:23
[2026-06-19 08:11:23,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:11:23,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:11:23,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:11:24,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:11:24,136.136 INFO    ] time= 19/06/2026 08:11:24
[2026-06-19 08:11:24,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:11:24,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:11:24,282.282 INFO    ] No existing commands found in stream
[2026-06-19 08:11:29,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:11:29,322.322 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 08:11:29,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:11:29,955.955 INFO    ] Checking for system updates...
[2026-06-19 08:11:29,992.992 INFO    ] 200
[2026-06-19 08:11:29,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:30,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:11:30,054.054 INFO    ] No update needed
[2026-06-19 08:11:30,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 08:11:30,091.091 INFO    ] 200
[2026-06-19 08:11:30,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:30,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:11:30,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:11:30,183.183 INFO    ] No camera update needed
[2026-06-19 08:11:30,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:11:30,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:11:30,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:11:30,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:11:32,242.242 INFO    ] ================================================
[2026-06-19 08:11:32,259.259 INFO    ] Launching Daemon at Fri Jun 19 08:11:32 IST 2026
[2026-06-19 08:11:32,271.271 INFO    ] ================================================
[2026-06-19 08:11:32,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:11:32
[2026-06-19 08:11:33,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:11:33,749.749 INFO    ] Initializing speech engine...
[2026-06-19 08:11:33,768.768 INFO    ] 2026-06-19 08:11:33
[2026-06-19 08:11:34,018.018 INFO    ] 2026-06-19 08:11:34
[2026-06-19 08:11:34,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:11:34,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:11:34,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:11:34,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:11:34,393.393 INFO    ] time= 19/06/2026 08:11:34
[2026-06-19 08:11:34,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:11:34,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:11:34,564.564 INFO    ] No existing commands found in stream
[2026-06-19 08:11:39,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:11:39,597.597 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 08:11:43,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:11:43,807.807 INFO    ] Checking for system updates...
[2026-06-19 08:11:43,842.842 INFO    ] 200
[2026-06-19 08:11:43,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:43,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:11:43,901.901 INFO    ] No update needed
[2026-06-19 08:11:43,903.903 INFO    ] Checking for camera pi updates...
[2026-06-19 08:11:43,937.937 INFO    ] 200
[2026-06-19 08:11:43,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:43,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:11:44,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:11:44,137.137 INFO    ] No camera update needed
[2026-06-19 08:11:44,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:11:44,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:11:44,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:11:44,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:11:46,193.193 INFO    ] ================================================
[2026-06-19 08:11:46,208.208 INFO    ] Launching Daemon at Fri Jun 19 08:11:46 IST 2026
[2026-06-19 08:11:46,218.218 INFO    ] ================================================
[2026-06-19 08:11:46,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:11:46
[2026-06-19 08:11:47,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:11:47,619.619 INFO    ] Initializing speech engine...
[2026-06-19 08:11:47,633.633 INFO    ] 2026-06-19 08:11:47
[2026-06-19 08:11:47,898.898 INFO    ] 2026-06-19 08:11:47
[2026-06-19 08:11:47,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:11:48,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:11:48,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:11:48,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:11:48,279.279 INFO    ] time= 19/06/2026 08:11:48
[2026-06-19 08:11:48,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:11:48,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:11:48,451.451 INFO    ] No existing commands found in stream
[2026-06-19 08:11:53,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:11:53,490.490 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 08:11:57,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:11:57,795.795 INFO    ] Checking for system updates...
[2026-06-19 08:11:57,832.832 INFO    ] 200
[2026-06-19 08:11:57,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:57,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:11:57,890.890 INFO    ] No update needed
[2026-06-19 08:11:57,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 08:11:57,927.927 INFO    ] 200
[2026-06-19 08:11:57,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:11:57,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:11:58,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:11:58,012.012 INFO    ] No camera update needed
[2026-06-19 08:11:58,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:11:58,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:11:58,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:11:58,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:12:00,068.068 INFO    ] ================================================
[2026-06-19 08:12:00,084.084 INFO    ] Launching Daemon at Fri Jun 19 08:12:00 IST 2026
[2026-06-19 08:12:00,094.094 INFO    ] ================================================
[2026-06-19 08:12:00,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:12:00
[2026-06-19 08:12:01,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:12:01,562.562 INFO    ] Initializing speech engine...
[2026-06-19 08:12:01,567.567 INFO    ] 2026-06-19 08:12:01
[2026-06-19 08:12:01,994.994 INFO    ] 2026-06-19 08:12:01
[2026-06-19 08:12:02,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:12:02,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:12:02,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:12:02,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:12:02,455.455 INFO    ] time= 19/06/2026 08:12:02
[2026-06-19 08:12:02,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:12:02,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:12:02,607.607 INFO    ] No existing commands found in stream
[2026-06-19 08:12:07,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:12:07,620.620 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 08:12:08,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:12:08,268.268 INFO    ] Checking for system updates...
[2026-06-19 08:12:08,310.310 INFO    ] 200
[2026-06-19 08:12:08,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:08,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:12:08,408.408 INFO    ] No update needed
[2026-06-19 08:12:08,415.415 INFO    ] Checking for camera pi updates...
[2026-06-19 08:12:08,450.450 INFO    ] 200
[2026-06-19 08:12:08,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:08,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:12:08,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:12:08,536.536 INFO    ] No camera update needed
[2026-06-19 08:12:08,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:12:08,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:12:08,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:12:08,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:12:10,595.595 INFO    ] ================================================
[2026-06-19 08:12:10,610.610 INFO    ] Launching Daemon at Fri Jun 19 08:12:10 IST 2026
[2026-06-19 08:12:10,622.622 INFO    ] ================================================
[2026-06-19 08:12:11,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:12:11
[2026-06-19 08:12:11,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:12:12,080.080 INFO    ] Initializing speech engine...
[2026-06-19 08:12:12,087.087 INFO    ] 2026-06-19 08:12:12
[2026-06-19 08:12:12,332.332 INFO    ] 2026-06-19 08:12:12
[2026-06-19 08:12:12,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:12:12,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:12:12,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:12:12,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:12:12,798.798 INFO    ] time= 19/06/2026 08:12:12
[2026-06-19 08:12:12,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:12:12,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:12:12,953.953 INFO    ] No existing commands found in stream
[2026-06-19 08:12:17,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:12:17,968.968 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 08:12:18,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:12:18,579.579 INFO    ] Checking for system updates...
[2026-06-19 08:12:18,617.617 INFO    ] 200
[2026-06-19 08:12:18,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:18,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:12:18,677.677 INFO    ] No update needed
[2026-06-19 08:12:18,679.679 INFO    ] Checking for camera pi updates...
[2026-06-19 08:12:18,712.712 INFO    ] 200
[2026-06-19 08:12:18,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:18,758.758 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:12:18,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:12:18,800.800 INFO    ] No camera update needed
[2026-06-19 08:12:18,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:12:18,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:12:18,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:12:18,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:12:20,856.856 INFO    ] ================================================
[2026-06-19 08:12:20,871.871 INFO    ] Launching Daemon at Fri Jun 19 08:12:20 IST 2026
[2026-06-19 08:12:20,882.882 INFO    ] ================================================
[2026-06-19 08:12:21,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:12:21
[2026-06-19 08:12:22,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:12:22,318.318 INFO    ] Initializing speech engine...
[2026-06-19 08:12:22,327.327 INFO    ] 2026-06-19 08:12:22
[2026-06-19 08:12:22,587.587 INFO    ] 2026-06-19 08:12:22
[2026-06-19 08:12:22,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:12:22,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:12:22,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:12:23,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:12:23,054.054 INFO    ] time= 19/06/2026 08:12:23
[2026-06-19 08:12:23,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:12:23,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:12:23,199.199 INFO    ] No existing commands found in stream
[2026-06-19 08:12:28,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:12:28,214.214 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 08:12:30,153.153 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:12:30,155.155 INFO    ] Checking for system updates...
[2026-06-19 08:12:30,192.192 INFO    ] 200
[2026-06-19 08:12:30,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:30,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:12:30,250.250 INFO    ] No update needed
[2026-06-19 08:12:30,252.252 INFO    ] Checking for camera pi updates...
[2026-06-19 08:12:30,287.287 INFO    ] 200
[2026-06-19 08:12:30,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:30,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:12:30,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:12:30,374.374 INFO    ] No camera update needed
[2026-06-19 08:12:30,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:12:30,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:12:30,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:12:30,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:12:32,434.434 INFO    ] ================================================
[2026-06-19 08:12:32,452.452 INFO    ] Launching Daemon at Fri Jun 19 08:12:32 IST 2026
[2026-06-19 08:12:32,469.469 INFO    ] ================================================
[2026-06-19 08:12:33,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:12:33
[2026-06-19 08:12:33,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:12:34,022.022 INFO    ] Initializing speech engine...
[2026-06-19 08:12:34,036.036 INFO    ] 2026-06-19 08:12:34
[2026-06-19 08:12:34,304.304 INFO    ] 2026-06-19 08:12:34
[2026-06-19 08:12:34,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:12:34,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:12:34,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:12:34,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:12:34,783.783 INFO    ] time= 19/06/2026 08:12:34
[2026-06-19 08:12:34,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:12:34,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:12:34,942.942 INFO    ] No existing commands found in stream
[2026-06-19 08:12:39,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:12:39,957.957 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 08:12:40,490.490 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:12:40,494.494 INFO    ] Checking for system updates...
[2026-06-19 08:12:40,531.531 INFO    ] 200
[2026-06-19 08:12:40,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:40,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:12:40,590.590 INFO    ] No update needed
[2026-06-19 08:12:40,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 08:12:40,630.630 INFO    ] 200
[2026-06-19 08:12:40,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:40,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:12:40,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:12:40,730.730 INFO    ] No camera update needed
[2026-06-19 08:12:40,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:12:40,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:12:40,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:12:40,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:12:42,784.784 INFO    ] ================================================
[2026-06-19 08:12:42,799.799 INFO    ] Launching Daemon at Fri Jun 19 08:12:42 IST 2026
[2026-06-19 08:12:42,810.810 INFO    ] ================================================
[2026-06-19 08:12:43,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:12:43
[2026-06-19 08:12:44,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:12:44,316.316 INFO    ] Initializing speech engine...
[2026-06-19 08:12:44,330.330 INFO    ] 2026-06-19 08:12:44
[2026-06-19 08:12:44,612.612 INFO    ] 2026-06-19 08:12:44
[2026-06-19 08:12:44,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:12:44,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:12:44,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:12:45,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:12:45,096.096 INFO    ] time= 19/06/2026 08:12:45
[2026-06-19 08:12:45,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:12:45,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:12:45,278.278 INFO    ] No existing commands found in stream
[2026-06-19 08:12:50,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:12:50,313.313 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 08:12:53,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:12:53,052.052 INFO    ] Checking for system updates...
[2026-06-19 08:12:53,095.095 INFO    ] 200
[2026-06-19 08:12:53,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:53,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:12:53,160.160 INFO    ] No update needed
[2026-06-19 08:12:53,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 08:12:53,198.198 INFO    ] 200
[2026-06-19 08:12:53,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:12:53,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:12:53,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:12:53,285.285 INFO    ] No camera update needed
[2026-06-19 08:12:53,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:12:53,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:12:53,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:12:53,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:12:55,340.340 INFO    ] ================================================
[2026-06-19 08:12:55,355.355 INFO    ] Launching Daemon at Fri Jun 19 08:12:55 IST 2026
[2026-06-19 08:12:55,366.366 INFO    ] ================================================
[2026-06-19 08:12:55,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:12:55
[2026-06-19 08:12:56,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:12:56,833.833 INFO    ] Initializing speech engine...
[2026-06-19 08:12:56,842.842 INFO    ] 2026-06-19 08:12:56
[2026-06-19 08:12:57,116.116 INFO    ] 2026-06-19 08:12:57
[2026-06-19 08:12:57,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:12:57,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:12:57,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:12:57,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:12:57,569.569 INFO    ] time= 19/06/2026 08:12:57
[2026-06-19 08:12:57,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:12:57,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:12:57,785.785 INFO    ] No existing commands found in stream
[2026-06-19 08:13:02,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:13:02,822.822 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 08:13:03,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:13:03,453.453 INFO    ] Checking for system updates...
[2026-06-19 08:13:03,492.492 INFO    ] 200
[2026-06-19 08:13:03,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:03,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:03,550.550 INFO    ] No update needed
[2026-06-19 08:13:03,552.552 INFO    ] Checking for camera pi updates...
[2026-06-19 08:13:03,589.589 INFO    ] 200
[2026-06-19 08:13:03,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:03,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:13:03,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:03,677.677 INFO    ] No camera update needed
[2026-06-19 08:13:03,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:13:03,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:13:03,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:13:03,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:13:05,732.732 INFO    ] ================================================
[2026-06-19 08:13:05,747.747 INFO    ] Launching Daemon at Fri Jun 19 08:13:05 IST 2026
[2026-06-19 08:13:05,758.758 INFO    ] ================================================
[2026-06-19 08:13:06,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:13:06
[2026-06-19 08:13:06,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:13:07,200.200 INFO    ] Initializing speech engine...
[2026-06-19 08:13:07,206.206 INFO    ] 2026-06-19 08:13:07
[2026-06-19 08:13:07,494.494 INFO    ] 2026-06-19 08:13:07
[2026-06-19 08:13:07,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:13:07,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:13:07,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:13:07,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:13:07,965.965 INFO    ] time= 19/06/2026 08:13:07
[2026-06-19 08:13:08,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:13:08,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:13:08,116.116 INFO    ] No existing commands found in stream
[2026-06-19 08:13:13,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:13:13,138.138 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 08:13:14,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:13:14,402.402 INFO    ] Checking for system updates...
[2026-06-19 08:13:14,440.440 INFO    ] 200
[2026-06-19 08:13:14,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:14,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:14,499.499 INFO    ] No update needed
[2026-06-19 08:13:14,502.502 INFO    ] Checking for camera pi updates...
[2026-06-19 08:13:14,536.536 INFO    ] 200
[2026-06-19 08:13:14,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:14,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:13:14,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:14,627.627 INFO    ] No camera update needed
[2026-06-19 08:13:14,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:13:14,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:13:14,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:13:14,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:13:16,686.686 INFO    ] ================================================
[2026-06-19 08:13:16,701.701 INFO    ] Launching Daemon at Fri Jun 19 08:13:16 IST 2026
[2026-06-19 08:13:16,712.712 INFO    ] ================================================
[2026-06-19 08:13:17,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:13:17
[2026-06-19 08:13:17,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:13:18,163.163 INFO    ] Initializing speech engine...
[2026-06-19 08:13:18,169.169 INFO    ] 2026-06-19 08:13:18
[2026-06-19 08:13:18,458.458 INFO    ] 2026-06-19 08:13:18
[2026-06-19 08:13:18,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:13:18,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:13:18,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:13:18,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:13:18,866.866 INFO    ] time= 19/06/2026 08:13:18
[2026-06-19 08:13:18,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:13:18,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:13:18,951.951 INFO    ] No existing commands found in stream
[2026-06-19 08:13:23,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:13:23,967.967 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 08:13:24,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:13:24,333.333 INFO    ] Checking for system updates...
[2026-06-19 08:13:24,370.370 INFO    ] 200
[2026-06-19 08:13:24,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:24,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:24,432.432 INFO    ] No update needed
[2026-06-19 08:13:24,436.436 INFO    ] Checking for camera pi updates...
[2026-06-19 08:13:24,470.470 INFO    ] 200
[2026-06-19 08:13:24,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:24,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:13:24,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:24,556.556 INFO    ] No camera update needed
[2026-06-19 08:13:24,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:13:24,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:13:24,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:13:24,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:13:26,611.611 INFO    ] ================================================
[2026-06-19 08:13:26,626.626 INFO    ] Launching Daemon at Fri Jun 19 08:13:26 IST 2026
[2026-06-19 08:13:26,636.636 INFO    ] ================================================
[2026-06-19 08:13:27,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:13:27
[2026-06-19 08:13:27,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:13:28,060.060 INFO    ] Initializing speech engine...
[2026-06-19 08:13:28,082.082 INFO    ] 2026-06-19 08:13:28
[2026-06-19 08:13:28,334.334 INFO    ] 2026-06-19 08:13:28
[2026-06-19 08:13:28,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:13:28,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:13:28,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:13:28,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:13:28,809.809 INFO    ] time= 19/06/2026 08:13:28
[2026-06-19 08:13:28,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:13:28,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:13:28,952.952 INFO    ] No existing commands found in stream
[2026-06-19 08:13:33,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:13:33,967.967 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 08:13:35,760.760 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:13:35,763.763 INFO    ] Checking for system updates...
[2026-06-19 08:13:35,800.800 INFO    ] 200
[2026-06-19 08:13:35,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:35,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:35,866.866 INFO    ] No update needed
[2026-06-19 08:13:35,869.869 INFO    ] Checking for camera pi updates...
[2026-06-19 08:13:35,903.903 INFO    ] 200
[2026-06-19 08:13:35,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:35,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:13:36,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:36,002.002 INFO    ] No camera update needed
[2026-06-19 08:13:36,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:13:36,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:13:36,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:13:36,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:13:38,058.058 INFO    ] ================================================
[2026-06-19 08:13:38,073.073 INFO    ] Launching Daemon at Fri Jun 19 08:13:38 IST 2026
[2026-06-19 08:13:38,084.084 INFO    ] ================================================
[2026-06-19 08:13:38,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:13:38
[2026-06-19 08:13:39,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:13:39,536.536 INFO    ] Initializing speech engine...
[2026-06-19 08:13:39,548.548 INFO    ] 2026-06-19 08:13:39
[2026-06-19 08:13:39,813.813 INFO    ] 2026-06-19 08:13:39
[2026-06-19 08:13:39,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:13:40,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:13:40,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:13:40,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:13:40,192.192 INFO    ] time= 19/06/2026 08:13:40
[2026-06-19 08:13:40,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:13:40,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:13:40,320.320 INFO    ] No existing commands found in stream
[2026-06-19 08:13:45,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:13:45,338.338 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 08:13:47,793.793 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:13:47,796.796 INFO    ] Checking for system updates...
[2026-06-19 08:13:47,832.832 INFO    ] 200
[2026-06-19 08:13:47,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:47,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:13:47,889.889 INFO    ] No update needed
[2026-06-19 08:13:47,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 08:13:47,925.925 INFO    ] 200
[2026-06-19 08:13:47,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:47,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:13:48,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:13:48,110.110 INFO    ] No camera update needed
[2026-06-19 08:13:48,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:13:48,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:13:48,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:13:48,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:13:50,166.166 INFO    ] ================================================
[2026-06-19 08:13:50,181.181 INFO    ] Launching Daemon at Fri Jun 19 08:13:50 IST 2026
[2026-06-19 08:13:50,192.192 INFO    ] ================================================
[2026-06-19 08:13:50,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:13:50
[2026-06-19 08:13:51,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:13:51,591.591 INFO    ] Initializing speech engine...
[2026-06-19 08:13:51,612.612 INFO    ] 2026-06-19 08:13:51
[2026-06-19 08:13:51,871.871 INFO    ] 2026-06-19 08:13:51
[2026-06-19 08:13:51,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:13:52,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:13:52,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:13:52,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:13:52,246.246 INFO    ] time= 19/06/2026 08:13:52
[2026-06-19 08:13:52,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:13:52,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:13:52,335.335 INFO    ] No existing commands found in stream
[2026-06-19 08:13:57,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:13:57,354.354 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 08:13:59,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:13:59,187.187 INFO    ] Checking for system updates...
[2026-06-19 08:13:59,223.223 INFO    ] 200
[2026-06-19 08:13:59,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:59,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:59,280.280 INFO    ] No update needed
[2026-06-19 08:13:59,282.282 INFO    ] Checking for camera pi updates...
[2026-06-19 08:13:59,316.316 INFO    ] 200
[2026-06-19 08:13:59,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:13:59,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:13:59,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:13:59,416.416 INFO    ] No camera update needed
[2026-06-19 08:13:59,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:13:59,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:13:59,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:13:59,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:14:01,501.501 INFO    ] ================================================
[2026-06-19 08:14:01,540.540 INFO    ] Launching Daemon at Fri Jun 19 08:14:01 IST 2026
[2026-06-19 08:14:01,556.556 INFO    ] ================================================
[2026-06-19 08:14:02,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:14:02
[2026-06-19 08:14:03,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:14:03,413.413 INFO    ] Initializing speech engine...
[2026-06-19 08:14:03,421.421 INFO    ] 2026-06-19 08:14:03
[2026-06-19 08:14:03,693.693 INFO    ] 2026-06-19 08:14:03
[2026-06-19 08:14:03,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:14:03,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:14:03,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:14:04,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:14:04,178.178 INFO    ] time= 19/06/2026 08:14:04
[2026-06-19 08:14:04,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:14:04,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:14:04,328.328 INFO    ] No existing commands found in stream
[2026-06-19 08:14:09,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:14:09,343.343 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 08:14:11,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:14:11,589.589 INFO    ] Checking for system updates...
[2026-06-19 08:14:11,631.631 INFO    ] 200
[2026-06-19 08:14:11,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:11,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:14:11,697.697 INFO    ] No update needed
[2026-06-19 08:14:11,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 08:14:11,738.738 INFO    ] 200
[2026-06-19 08:14:11,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:11,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:14:11,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:14:11,841.841 INFO    ] No camera update needed
[2026-06-19 08:14:11,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:14:11,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:14:11,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:14:11,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:14:13,900.900 INFO    ] ================================================
[2026-06-19 08:14:13,915.915 INFO    ] Launching Daemon at Fri Jun 19 08:14:13 IST 2026
[2026-06-19 08:14:13,926.926 INFO    ] ================================================
[2026-06-19 08:14:14,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:14:14
[2026-06-19 08:14:15,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:14:15,379.379 INFO    ] Initializing speech engine...
[2026-06-19 08:14:15,387.387 INFO    ] 2026-06-19 08:14:15
[2026-06-19 08:14:15,683.683 INFO    ] 2026-06-19 08:14:15
[2026-06-19 08:14:15,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:14:15,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:14:15,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:14:16,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:14:16,103.103 INFO    ] time= 19/06/2026 08:14:16
[2026-06-19 08:14:16,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:14:16,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:14:16,193.193 INFO    ] No existing commands found in stream
[2026-06-19 08:14:21,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:14:21,209.209 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 08:14:21,728.728 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:14:21,731.731 INFO    ] Checking for system updates...
[2026-06-19 08:14:21,768.768 INFO    ] 200
[2026-06-19 08:14:21,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:21,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:14:21,827.827 INFO    ] No update needed
[2026-06-19 08:14:21,830.830 INFO    ] Checking for camera pi updates...
[2026-06-19 08:14:21,865.865 INFO    ] 200
[2026-06-19 08:14:21,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:21,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:14:21,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:14:21,963.963 INFO    ] No camera update needed
[2026-06-19 08:14:21,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:14:21,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:14:21,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:14:21,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:14:24,022.022 INFO    ] ================================================
[2026-06-19 08:14:24,037.037 INFO    ] Launching Daemon at Fri Jun 19 08:14:24 IST 2026
[2026-06-19 08:14:24,048.048 INFO    ] ================================================
[2026-06-19 08:14:24,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:14:24
[2026-06-19 08:14:25,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:14:25,481.481 INFO    ] Initializing speech engine...
[2026-06-19 08:14:25,490.490 INFO    ] 2026-06-19 08:14:25
[2026-06-19 08:14:25,755.755 INFO    ] 2026-06-19 08:14:25
[2026-06-19 08:14:25,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:14:26,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:14:26,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:14:26,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:14:26,228.228 INFO    ] time= 19/06/2026 08:14:26
[2026-06-19 08:14:26,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:14:26,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:14:26,380.380 INFO    ] No existing commands found in stream
[2026-06-19 08:14:31,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:14:31,395.395 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 08:14:33,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:14:33,295.295 INFO    ] Checking for system updates...
[2026-06-19 08:14:33,331.331 INFO    ] 200
[2026-06-19 08:14:33,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:33,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:14:33,388.388 INFO    ] No update needed
[2026-06-19 08:14:33,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 08:14:33,428.428 INFO    ] 200
[2026-06-19 08:14:33,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:33,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:14:33,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:14:33,510.510 INFO    ] No camera update needed
[2026-06-19 08:14:33,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:14:33,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:14:33,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:14:33,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:14:35,566.566 INFO    ] ================================================
[2026-06-19 08:14:35,581.581 INFO    ] Launching Daemon at Fri Jun 19 08:14:35 IST 2026
[2026-06-19 08:14:35,592.592 INFO    ] ================================================
[2026-06-19 08:14:36,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:14:36
[2026-06-19 08:14:36,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:14:37,007.007 INFO    ] Initializing speech engine...
[2026-06-19 08:14:37,022.022 INFO    ] 2026-06-19 08:14:37
[2026-06-19 08:14:37,289.289 INFO    ] 2026-06-19 08:14:37
[2026-06-19 08:14:37,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:14:37,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:14:37,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:14:37,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:14:37,668.668 INFO    ] time= 19/06/2026 08:14:37
[2026-06-19 08:14:37,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:14:37,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:14:37,843.843 INFO    ] No existing commands found in stream
[2026-06-19 08:14:42,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:14:42,871.871 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 08:14:43,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:14:43,539.539 INFO    ] Checking for system updates...
[2026-06-19 08:14:43,576.576 INFO    ] 200
[2026-06-19 08:14:43,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:43,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:14:43,633.633 INFO    ] No update needed
[2026-06-19 08:14:43,636.636 INFO    ] Checking for camera pi updates...
[2026-06-19 08:14:43,673.673 INFO    ] 200
[2026-06-19 08:14:43,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:43,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:14:43,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:14:43,758.758 INFO    ] No camera update needed
[2026-06-19 08:14:43,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:14:43,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:14:43,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:14:43,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:14:45,816.816 INFO    ] ================================================
[2026-06-19 08:14:45,831.831 INFO    ] Launching Daemon at Fri Jun 19 08:14:45 IST 2026
[2026-06-19 08:14:45,842.842 INFO    ] ================================================
[2026-06-19 08:14:46,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:14:46
[2026-06-19 08:14:47,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:14:47,461.461 INFO    ] Initializing speech engine...
[2026-06-19 08:14:47,474.474 INFO    ] 2026-06-19 08:14:47
[2026-06-19 08:14:47,755.755 INFO    ] 2026-06-19 08:14:47
[2026-06-19 08:14:47,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:14:48,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:14:48,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:14:48,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:14:48,295.295 INFO    ] time= 19/06/2026 08:14:48
[2026-06-19 08:14:48,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:14:48,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:14:48,447.447 INFO    ] No existing commands found in stream
[2026-06-19 08:14:53,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:14:53,473.473 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 08:14:55,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:14:55,377.377 INFO    ] Checking for system updates...
[2026-06-19 08:14:55,415.415 INFO    ] 200
[2026-06-19 08:14:55,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:55,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:14:55,474.474 INFO    ] No update needed
[2026-06-19 08:14:55,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 08:14:55,512.512 INFO    ] 200
[2026-06-19 08:14:55,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:14:55,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:14:55,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:14:55,604.604 INFO    ] No camera update needed
[2026-06-19 08:14:55,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:14:55,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:14:55,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:14:55,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:14:57,664.664 INFO    ] ================================================
[2026-06-19 08:14:57,679.679 INFO    ] Launching Daemon at Fri Jun 19 08:14:57 IST 2026
[2026-06-19 08:14:57,690.690 INFO    ] ================================================
[2026-06-19 08:14:58,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:14:58
[2026-06-19 08:14:59,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:14:59,320.320 INFO    ] Initializing speech engine...
[2026-06-19 08:14:59,328.328 INFO    ] 2026-06-19 08:14:59
[2026-06-19 08:14:59,599.599 INFO    ] 2026-06-19 08:14:59
[2026-06-19 08:14:59,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:14:59,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:14:59,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:15:00,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:15:00,087.087 INFO    ] time= 19/06/2026 08:15:00
[2026-06-19 08:15:00,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:15:00,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:15:00,237.237 INFO    ] No existing commands found in stream
[2026-06-19 08:15:05,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:15:05,252.252 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 08:15:09,260.260 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:15:09,263.263 INFO    ] Checking for system updates...
[2026-06-19 08:15:09,300.300 INFO    ] 200
[2026-06-19 08:15:09,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:09,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:15:09,367.367 INFO    ] No update needed
[2026-06-19 08:15:09,370.370 INFO    ] Checking for camera pi updates...
[2026-06-19 08:15:09,406.406 INFO    ] 200
[2026-06-19 08:15:09,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:09,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:15:09,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:15:09,503.503 INFO    ] No camera update needed
[2026-06-19 08:15:09,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:15:09,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:15:09,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:15:09,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:15:11,560.560 INFO    ] ================================================
[2026-06-19 08:15:11,575.575 INFO    ] Launching Daemon at Fri Jun 19 08:15:11 IST 2026
[2026-06-19 08:15:11,585.585 INFO    ] ================================================
[2026-06-19 08:15:12,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:15:12
[2026-06-19 08:15:12,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:15:13,006.006 INFO    ] Initializing speech engine...
[2026-06-19 08:15:13,021.021 INFO    ] 2026-06-19 08:15:13
[2026-06-19 08:15:13,288.288 INFO    ] 2026-06-19 08:15:13
[2026-06-19 08:15:13,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:15:13,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:15:13,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:15:13,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:15:13,664.664 INFO    ] time= 19/06/2026 08:15:13
[2026-06-19 08:15:13,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:15:13,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:15:13,852.852 INFO    ] No existing commands found in stream
[2026-06-19 08:15:18,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:15:18,880.880 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 08:15:21,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:15:21,156.156 INFO    ] Checking for system updates...
[2026-06-19 08:15:21,192.192 INFO    ] 200
[2026-06-19 08:15:21,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:21,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:15:21,254.254 INFO    ] No update needed
[2026-06-19 08:15:21,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 08:15:21,290.290 INFO    ] 200
[2026-06-19 08:15:21,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:21,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:15:21,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:15:21,380.380 INFO    ] No camera update needed
[2026-06-19 08:15:21,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:15:21,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:15:21,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:15:21,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:15:23,434.434 INFO    ] ================================================
[2026-06-19 08:15:23,449.449 INFO    ] Launching Daemon at Fri Jun 19 08:15:23 IST 2026
[2026-06-19 08:15:23,460.460 INFO    ] ================================================
[2026-06-19 08:15:24,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:15:24
[2026-06-19 08:15:24,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:15:25,026.026 INFO    ] Initializing speech engine...
[2026-06-19 08:15:25,039.039 INFO    ] 2026-06-19 08:15:25
[2026-06-19 08:15:25,319.319 INFO    ] 2026-06-19 08:15:25
[2026-06-19 08:15:25,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:15:25,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:15:25,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:15:25,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:15:25,800.800 INFO    ] time= 19/06/2026 08:15:25
[2026-06-19 08:15:25,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:15:25,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:15:26,012.012 INFO    ] No existing commands found in stream
[2026-06-19 08:15:31,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:15:31,043.043 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 08:15:32,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:15:32,241.241 INFO    ] Checking for system updates...
[2026-06-19 08:15:32,281.281 INFO    ] 200
[2026-06-19 08:15:32,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:32,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:15:32,347.347 INFO    ] No update needed
[2026-06-19 08:15:32,350.350 INFO    ] Checking for camera pi updates...
[2026-06-19 08:15:32,388.388 INFO    ] 200
[2026-06-19 08:15:32,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:32,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:15:32,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:15:32,473.473 INFO    ] No camera update needed
[2026-06-19 08:15:32,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:15:32,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:15:32,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:15:32,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:15:34,537.537 INFO    ] ================================================
[2026-06-19 08:15:34,552.552 INFO    ] Launching Daemon at Fri Jun 19 08:15:34 IST 2026
[2026-06-19 08:15:34,563.563 INFO    ] ================================================
[2026-06-19 08:15:35,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:15:35
[2026-06-19 08:15:35,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:15:36,158.158 INFO    ] Initializing speech engine...
[2026-06-19 08:15:36,169.169 INFO    ] 2026-06-19 08:15:36
[2026-06-19 08:15:36,449.449 INFO    ] 2026-06-19 08:15:36
[2026-06-19 08:15:36,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:15:36,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:15:36,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:15:36,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:15:36,938.938 INFO    ] time= 19/06/2026 08:15:36
[2026-06-19 08:15:36,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:15:37,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:15:37,119.119 INFO    ] No existing commands found in stream
[2026-06-19 08:15:42,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:15:42,154.154 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 08:15:43,156.156 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:15:43,159.159 INFO    ] Checking for system updates...
[2026-06-19 08:15:43,196.196 INFO    ] 200
[2026-06-19 08:15:43,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:43,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:15:43,253.253 INFO    ] No update needed
[2026-06-19 08:15:43,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 08:15:43,290.290 INFO    ] 200
[2026-06-19 08:15:43,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:43,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:15:43,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:15:43,375.375 INFO    ] No camera update needed
[2026-06-19 08:15:43,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:15:43,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:15:43,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:15:43,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:15:45,432.432 INFO    ] ================================================
[2026-06-19 08:15:45,447.447 INFO    ] Launching Daemon at Fri Jun 19 08:15:45 IST 2026
[2026-06-19 08:15:45,458.458 INFO    ] ================================================
[2026-06-19 08:15:46,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:15:46
[2026-06-19 08:15:46,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:15:46,886.886 INFO    ] Initializing speech engine...
[2026-06-19 08:15:46,891.891 INFO    ] 2026-06-19 08:15:46
[2026-06-19 08:15:47,194.194 INFO    ] 2026-06-19 08:15:47
[2026-06-19 08:15:47,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:15:47,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:15:47,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:15:47,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:15:47,576.576 INFO    ] time= 19/06/2026 08:15:47
[2026-06-19 08:15:47,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:15:47,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:15:47,677.677 INFO    ] No existing commands found in stream
[2026-06-19 08:15:52,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:15:52,715.715 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 08:15:53,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:15:53,401.401 INFO    ] Checking for system updates...
[2026-06-19 08:15:53,444.444 INFO    ] 200
[2026-06-19 08:15:53,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:53,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:15:53,509.509 INFO    ] No update needed
[2026-06-19 08:15:53,511.511 INFO    ] Checking for camera pi updates...
[2026-06-19 08:15:53,545.545 INFO    ] 200
[2026-06-19 08:15:53,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:15:53,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:15:53,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:15:53,736.736 INFO    ] No camera update needed
[2026-06-19 08:15:53,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:15:53,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:15:53,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:15:53,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:15:55,792.792 INFO    ] ================================================
[2026-06-19 08:15:55,807.807 INFO    ] Launching Daemon at Fri Jun 19 08:15:55 IST 2026
[2026-06-19 08:15:55,818.818 INFO    ] ================================================
[2026-06-19 08:15:56,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:15:56
[2026-06-19 08:15:57,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:15:57,280.280 INFO    ] Initializing speech engine...
[2026-06-19 08:15:57,292.292 INFO    ] 2026-06-19 08:15:57
[2026-06-19 08:15:57,543.543 INFO    ] 2026-06-19 08:15:57
[2026-06-19 08:15:57,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:15:57,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:15:57,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:15:57,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:15:58,015.015 INFO    ] time= 19/06/2026 08:15:57
[2026-06-19 08:15:58,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:15:58,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:15:58,208.208 INFO    ] No existing commands found in stream
[2026-06-19 08:16:03,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:16:03,237.237 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 08:16:06,493.493 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:16:06,496.496 INFO    ] Checking for system updates...
[2026-06-19 08:16:06,533.533 INFO    ] 200
[2026-06-19 08:16:06,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:06,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:16:06,600.600 INFO    ] No update needed
[2026-06-19 08:16:06,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 08:16:06,648.648 INFO    ] 200
[2026-06-19 08:16:06,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:06,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:16:06,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:16:06,738.738 INFO    ] No camera update needed
[2026-06-19 08:16:06,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:16:06,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:16:06,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:16:06,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:16:08,793.793 INFO    ] ================================================
[2026-06-19 08:16:08,808.808 INFO    ] Launching Daemon at Fri Jun 19 08:16:08 IST 2026
[2026-06-19 08:16:08,819.819 INFO    ] ================================================
[2026-06-19 08:16:09,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:16:09
[2026-06-19 08:16:10,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:16:10,422.422 INFO    ] Initializing speech engine...
[2026-06-19 08:16:10,430.430 INFO    ] 2026-06-19 08:16:10
[2026-06-19 08:16:10,712.712 INFO    ] 2026-06-19 08:16:10
[2026-06-19 08:16:10,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:16:10,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:16:10,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:16:11,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:16:11,185.185 INFO    ] time= 19/06/2026 08:16:11
[2026-06-19 08:16:11,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:16:11,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:16:11,376.376 INFO    ] No existing commands found in stream
[2026-06-19 08:16:16,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:16:16,411.411 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 08:16:17,881.881 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:16:17,884.884 INFO    ] Checking for system updates...
[2026-06-19 08:16:17,927.927 INFO    ] 200
[2026-06-19 08:16:17,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:17,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:16:17,991.991 INFO    ] No update needed
[2026-06-19 08:16:17,994.994 INFO    ] Checking for camera pi updates...
[2026-06-19 08:16:18,030.030 INFO    ] 200
[2026-06-19 08:16:18,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:18,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:16:18,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:16:18,121.121 INFO    ] No camera update needed
[2026-06-19 08:16:18,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:16:18,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:16:18,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:16:18,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:16:20,180.180 INFO    ] ================================================
[2026-06-19 08:16:20,195.195 INFO    ] Launching Daemon at Fri Jun 19 08:16:20 IST 2026
[2026-06-19 08:16:20,206.206 INFO    ] ================================================
[2026-06-19 08:16:20,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:16:20
[2026-06-19 08:16:21,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:16:21,628.628 INFO    ] Initializing speech engine...
[2026-06-19 08:16:21,637.637 INFO    ] 2026-06-19 08:16:21
[2026-06-19 08:16:21,878.878 INFO    ] 2026-06-19 08:16:21
[2026-06-19 08:16:21,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:16:22,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:16:22,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:16:22,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:16:22,346.346 INFO    ] time= 19/06/2026 08:16:22
[2026-06-19 08:16:22,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:16:22,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:16:22,496.496 INFO    ] No existing commands found in stream
[2026-06-19 08:16:27,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:16:27,524.524 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 08:16:30,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:16:30,859.859 INFO    ] Checking for system updates...
[2026-06-19 08:16:30,898.898 INFO    ] 200
[2026-06-19 08:16:30,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:30,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:16:30,955.955 INFO    ] No update needed
[2026-06-19 08:16:30,957.957 INFO    ] Checking for camera pi updates...
[2026-06-19 08:16:30,991.991 INFO    ] 200
[2026-06-19 08:16:30,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:31,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:16:31,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:16:31,088.088 INFO    ] No camera update needed
[2026-06-19 08:16:31,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:16:31,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:16:31,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:16:31,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:16:33,143.143 INFO    ] ================================================
[2026-06-19 08:16:33,160.160 INFO    ] Launching Daemon at Fri Jun 19 08:16:33 IST 2026
[2026-06-19 08:16:33,170.170 INFO    ] ================================================
[2026-06-19 08:16:33,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:16:33
[2026-06-19 08:16:34,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:16:34,640.640 INFO    ] Initializing speech engine...
[2026-06-19 08:16:34,648.648 INFO    ] 2026-06-19 08:16:34
[2026-06-19 08:16:34,908.908 INFO    ] 2026-06-19 08:16:34
[2026-06-19 08:16:34,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:16:35,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:16:35,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:16:35,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:16:35,389.389 INFO    ] time= 19/06/2026 08:16:35
[2026-06-19 08:16:35,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:16:35,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:16:35,580.580 INFO    ] No existing commands found in stream
[2026-06-19 08:16:40,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:16:40,613.613 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 08:16:44,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:16:44,315.315 INFO    ] Checking for system updates...
[2026-06-19 08:16:44,352.352 INFO    ] 200
[2026-06-19 08:16:44,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:44,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:16:44,412.412 INFO    ] No update needed
[2026-06-19 08:16:44,414.414 INFO    ] Checking for camera pi updates...
[2026-06-19 08:16:44,448.448 INFO    ] 200
[2026-06-19 08:16:44,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:44,492.492 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:16:44,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:16:44,545.545 INFO    ] No camera update needed
[2026-06-19 08:16:44,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:16:44,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:16:44,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:16:44,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:16:46,605.605 INFO    ] ================================================
[2026-06-19 08:16:46,620.620 INFO    ] Launching Daemon at Fri Jun 19 08:16:46 IST 2026
[2026-06-19 08:16:46,631.631 INFO    ] ================================================
[2026-06-19 08:16:47,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:16:47
[2026-06-19 08:16:47,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:16:48,236.236 INFO    ] Initializing speech engine...
[2026-06-19 08:16:48,250.250 INFO    ] 2026-06-19 08:16:48
[2026-06-19 08:16:48,558.558 INFO    ] 2026-06-19 08:16:48
[2026-06-19 08:16:48,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:16:48,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:16:48,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:16:48,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:16:49,021.021 INFO    ] time= 19/06/2026 08:16:48
[2026-06-19 08:16:49,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:16:49,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:16:49,149.149 INFO    ] No existing commands found in stream
[2026-06-19 08:16:54,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:16:54,164.164 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 08:16:55,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:16:55,048.048 INFO    ] Checking for system updates...
[2026-06-19 08:16:55,084.084 INFO    ] 200
[2026-06-19 08:16:55,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:55,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:16:55,148.148 INFO    ] No update needed
[2026-06-19 08:16:55,150.150 INFO    ] Checking for camera pi updates...
[2026-06-19 08:16:55,187.187 INFO    ] 200
[2026-06-19 08:16:55,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:16:55,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:16:55,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:16:55,275.275 INFO    ] No camera update needed
[2026-06-19 08:16:55,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:16:55,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:16:55,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:16:55,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:16:57,329.329 INFO    ] ================================================
[2026-06-19 08:16:57,344.344 INFO    ] Launching Daemon at Fri Jun 19 08:16:57 IST 2026
[2026-06-19 08:16:57,354.354 INFO    ] ================================================
[2026-06-19 08:16:57,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:16:57
[2026-06-19 08:16:58,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:16:58,762.762 INFO    ] Initializing speech engine...
[2026-06-19 08:16:58,777.777 INFO    ] 2026-06-19 08:16:58
[2026-06-19 08:16:59,044.044 INFO    ] 2026-06-19 08:16:59
[2026-06-19 08:16:59,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:16:59,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:16:59,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:16:59,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:16:59,423.423 INFO    ] time= 19/06/2026 08:16:59
[2026-06-19 08:16:59,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:16:59,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:16:59,586.586 INFO    ] No existing commands found in stream
[2026-06-19 08:17:04,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:17:04,614.614 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 08:17:07,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:17:07,042.042 INFO    ] Checking for system updates...
[2026-06-19 08:17:07,079.079 INFO    ] 200
[2026-06-19 08:17:07,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:07,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:17:07,136.136 INFO    ] No update needed
[2026-06-19 08:17:07,139.139 INFO    ] Checking for camera pi updates...
[2026-06-19 08:17:07,176.176 INFO    ] 200
[2026-06-19 08:17:07,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:07,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:17:07,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:17:07,271.271 INFO    ] No camera update needed
[2026-06-19 08:17:07,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:17:07,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:17:07,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:17:07,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:17:09,326.326 INFO    ] ================================================
[2026-06-19 08:17:09,341.341 INFO    ] Launching Daemon at Fri Jun 19 08:17:09 IST 2026
[2026-06-19 08:17:09,352.352 INFO    ] ================================================
[2026-06-19 08:17:09,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:17:09
[2026-06-19 08:17:10,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:17:10,758.758 INFO    ] Initializing speech engine...
[2026-06-19 08:17:10,764.764 INFO    ] 2026-06-19 08:17:10
[2026-06-19 08:17:11,056.056 INFO    ] 2026-06-19 08:17:11
[2026-06-19 08:17:11,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:17:11,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:17:11,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:17:11,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:17:11,468.468 INFO    ] time= 19/06/2026 08:17:11
[2026-06-19 08:17:11,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:17:11,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:17:11,648.648 INFO    ] No existing commands found in stream
[2026-06-19 08:17:16,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:17:16,686.686 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 08:17:19,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:17:19,363.363 INFO    ] Checking for system updates...
[2026-06-19 08:17:19,400.400 INFO    ] 200
[2026-06-19 08:17:19,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:19,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:17:19,462.462 INFO    ] No update needed
[2026-06-19 08:17:19,465.465 INFO    ] Checking for camera pi updates...
[2026-06-19 08:17:19,499.499 INFO    ] 200
[2026-06-19 08:17:19,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:19,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:17:19,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:17:19,587.587 INFO    ] No camera update needed
[2026-06-19 08:17:19,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:17:19,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:17:19,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:17:19,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:17:21,643.643 INFO    ] ================================================
[2026-06-19 08:17:21,658.658 INFO    ] Launching Daemon at Fri Jun 19 08:17:21 IST 2026
[2026-06-19 08:17:21,675.675 INFO    ] ================================================
[2026-06-19 08:17:22,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:17:22
[2026-06-19 08:17:22,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:17:23,085.085 INFO    ] Initializing speech engine...
[2026-06-19 08:17:23,094.094 INFO    ] 2026-06-19 08:17:23
[2026-06-19 08:17:23,385.385 INFO    ] 2026-06-19 08:17:23
[2026-06-19 08:17:23,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:17:23,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:17:23,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:17:23,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:17:23,785.785 INFO    ] time= 19/06/2026 08:17:23
[2026-06-19 08:17:23,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:17:23,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:17:23,871.871 INFO    ] No existing commands found in stream
[2026-06-19 08:17:28,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:17:28,887.887 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 08:17:31,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:17:31,124.124 INFO    ] Checking for system updates...
[2026-06-19 08:17:31,163.163 INFO    ] 200
[2026-06-19 08:17:31,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:31,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:17:31,225.225 INFO    ] No update needed
[2026-06-19 08:17:31,228.228 INFO    ] Checking for camera pi updates...
[2026-06-19 08:17:31,262.262 INFO    ] 200
[2026-06-19 08:17:31,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:31,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:17:31,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:17:31,347.347 INFO    ] No camera update needed
[2026-06-19 08:17:31,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:17:31,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:17:31,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:17:31,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:17:33,404.404 INFO    ] ================================================
[2026-06-19 08:17:33,420.420 INFO    ] Launching Daemon at Fri Jun 19 08:17:33 IST 2026
[2026-06-19 08:17:33,430.430 INFO    ] ================================================
[2026-06-19 08:17:33,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:17:33
[2026-06-19 08:17:34,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:17:34,861.861 INFO    ] Initializing speech engine...
[2026-06-19 08:17:34,867.867 INFO    ] 2026-06-19 08:17:34
[2026-06-19 08:17:35,166.166 INFO    ] 2026-06-19 08:17:35
[2026-06-19 08:17:35,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:17:35,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:17:35,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:17:35,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:17:35,544.544 INFO    ] time= 19/06/2026 08:17:35
[2026-06-19 08:17:35,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:17:35,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:17:35,669.669 INFO    ] No existing commands found in stream
[2026-06-19 08:17:40,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:17:40,685.685 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 08:17:43,946.946 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:17:43,948.948 INFO    ] Checking for system updates...
[2026-06-19 08:17:43,984.984 INFO    ] 200
[2026-06-19 08:17:43,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:44,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:17:44,044.044 INFO    ] No update needed
[2026-06-19 08:17:44,047.047 INFO    ] Checking for camera pi updates...
[2026-06-19 08:17:44,081.081 INFO    ] 200
[2026-06-19 08:17:44,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:44,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:17:44,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:17:44,173.173 INFO    ] No camera update needed
[2026-06-19 08:17:44,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:17:44,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:17:44,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:17:44,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:17:46,228.228 INFO    ] ================================================
[2026-06-19 08:17:46,243.243 INFO    ] Launching Daemon at Fri Jun 19 08:17:46 IST 2026
[2026-06-19 08:17:46,254.254 INFO    ] ================================================
[2026-06-19 08:17:46,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:17:46
[2026-06-19 08:17:47,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:17:47,709.709 INFO    ] Initializing speech engine...
[2026-06-19 08:17:47,717.717 INFO    ] 2026-06-19 08:17:47
[2026-06-19 08:17:47,985.985 INFO    ] 2026-06-19 08:17:47
[2026-06-19 08:17:48,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:17:48,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:17:48,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:17:48,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:17:48,472.472 INFO    ] time= 19/06/2026 08:17:48
[2026-06-19 08:17:48,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:17:48,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:17:48,683.683 INFO    ] No existing commands found in stream
[2026-06-19 08:17:53,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:17:53,704.704 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 08:17:55,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:17:55,290.290 INFO    ] Checking for system updates...
[2026-06-19 08:17:55,326.326 INFO    ] 200
[2026-06-19 08:17:55,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:55,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:17:55,388.388 INFO    ] No update needed
[2026-06-19 08:17:55,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 08:17:55,430.430 INFO    ] 200
[2026-06-19 08:17:55,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:17:55,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:17:55,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:17:55,627.627 INFO    ] No camera update needed
[2026-06-19 08:17:55,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:17:55,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:17:55,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:17:55,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:17:57,686.686 INFO    ] ================================================
[2026-06-19 08:17:57,701.701 INFO    ] Launching Daemon at Fri Jun 19 08:17:57 IST 2026
[2026-06-19 08:17:57,711.711 INFO    ] ================================================
[2026-06-19 08:17:58,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:17:58
[2026-06-19 08:17:58,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:17:59,271.271 INFO    ] Initializing speech engine...
[2026-06-19 08:17:59,279.279 INFO    ] 2026-06-19 08:17:59
[2026-06-19 08:17:59,561.561 INFO    ] 2026-06-19 08:17:59
[2026-06-19 08:17:59,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:17:59,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:17:59,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:17:59,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:18:00,041.041 INFO    ] time= 19/06/2026 08:17:59
[2026-06-19 08:18:00,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:18:00,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:18:00,231.231 INFO    ] No existing commands found in stream
[2026-06-19 08:18:05,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:18:05,259.259 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 08:18:07,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:18:07,704.704 INFO    ] Checking for system updates...
[2026-06-19 08:18:07,742.742 INFO    ] 200
[2026-06-19 08:18:07,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:07,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:18:07,803.803 INFO    ] No update needed
[2026-06-19 08:18:07,806.806 INFO    ] Checking for camera pi updates...
[2026-06-19 08:18:07,841.841 INFO    ] 200
[2026-06-19 08:18:07,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:07,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:18:07,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:18:07,941.941 INFO    ] No camera update needed
[2026-06-19 08:18:07,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:18:07,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:18:07,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:18:07,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:18:10,002.002 INFO    ] ================================================
[2026-06-19 08:18:10,018.018 INFO    ] Launching Daemon at Fri Jun 19 08:18:10 IST 2026
[2026-06-19 08:18:10,029.029 INFO    ] ================================================
[2026-06-19 08:18:10,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:18:10
[2026-06-19 08:18:11,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:18:11,453.453 INFO    ] Initializing speech engine...
[2026-06-19 08:18:11,463.463 INFO    ] 2026-06-19 08:18:11
[2026-06-19 08:18:11,713.713 INFO    ] 2026-06-19 08:18:11
[2026-06-19 08:18:11,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:18:12,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:18:12,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:18:12,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:18:12,200.200 INFO    ] time= 19/06/2026 08:18:12
[2026-06-19 08:18:12,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:18:12,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:18:12,346.346 INFO    ] No existing commands found in stream
[2026-06-19 08:18:17,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:18:17,361.361 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 08:18:21,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:18:21,602.602 INFO    ] Checking for system updates...
[2026-06-19 08:18:21,638.638 INFO    ] 200
[2026-06-19 08:18:21,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:21,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:18:21,697.697 INFO    ] No update needed
[2026-06-19 08:18:21,699.699 INFO    ] Checking for camera pi updates...
[2026-06-19 08:18:21,733.733 INFO    ] 200
[2026-06-19 08:18:21,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:21,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:18:21,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:18:21,827.827 INFO    ] No camera update needed
[2026-06-19 08:18:21,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:18:21,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:18:21,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:18:21,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:18:23,885.885 INFO    ] ================================================
[2026-06-19 08:18:23,901.901 INFO    ] Launching Daemon at Fri Jun 19 08:18:23 IST 2026
[2026-06-19 08:18:23,913.913 INFO    ] ================================================
[2026-06-19 08:18:24,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:18:24
[2026-06-19 08:18:25,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:18:25,349.349 INFO    ] Initializing speech engine...
[2026-06-19 08:18:25,358.358 INFO    ] 2026-06-19 08:18:25
[2026-06-19 08:18:25,662.662 INFO    ] 2026-06-19 08:18:25
[2026-06-19 08:18:25,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:18:25,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:18:25,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:18:26,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:18:26,096.096 INFO    ] time= 19/06/2026 08:18:26
[2026-06-19 08:18:26,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:18:26,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:18:26,268.268 INFO    ] No existing commands found in stream
[2026-06-19 08:18:31,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:18:31,296.296 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 08:18:31,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:18:31,883.883 INFO    ] Checking for system updates...
[2026-06-19 08:18:31,924.924 INFO    ] 200
[2026-06-19 08:18:31,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:31,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:18:31,994.994 INFO    ] No update needed
[2026-06-19 08:18:31,997.997 INFO    ] Checking for camera pi updates...
[2026-06-19 08:18:32,034.034 INFO    ] 200
[2026-06-19 08:18:32,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:32,091.091 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:18:32,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:18:32,133.133 INFO    ] No camera update needed
[2026-06-19 08:18:32,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:18:32,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:18:32,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:18:32,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:18:34,191.191 INFO    ] ================================================
[2026-06-19 08:18:34,207.207 INFO    ] Launching Daemon at Fri Jun 19 08:18:34 IST 2026
[2026-06-19 08:18:34,218.218 INFO    ] ================================================
[2026-06-19 08:18:34,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:18:34
[2026-06-19 08:18:35,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:18:35,631.631 INFO    ] Initializing speech engine...
[2026-06-19 08:18:35,640.640 INFO    ] 2026-06-19 08:18:35
[2026-06-19 08:18:35,940.940 INFO    ] 2026-06-19 08:18:35
[2026-06-19 08:18:35,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:18:36,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:18:36,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:18:36,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:18:36,332.332 INFO    ] time= 19/06/2026 08:18:36
[2026-06-19 08:18:36,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:18:36,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:18:36,461.461 INFO    ] No existing commands found in stream
[2026-06-19 08:18:41,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:18:41,477.477 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 08:18:42,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:18:42,186.186 INFO    ] Checking for system updates...
[2026-06-19 08:18:42,223.223 INFO    ] 200
[2026-06-19 08:18:42,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:42,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:18:42,281.281 INFO    ] No update needed
[2026-06-19 08:18:42,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 08:18:42,317.317 INFO    ] 200
[2026-06-19 08:18:42,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:42,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:18:42,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:18:42,413.413 INFO    ] No camera update needed
[2026-06-19 08:18:42,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:18:42,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:18:42,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:18:42,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:18:44,470.470 INFO    ] ================================================
[2026-06-19 08:18:44,486.486 INFO    ] Launching Daemon at Fri Jun 19 08:18:44 IST 2026
[2026-06-19 08:18:44,498.498 INFO    ] ================================================
[2026-06-19 08:18:45,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:18:45
[2026-06-19 08:18:45,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:18:45,909.909 INFO    ] Initializing speech engine...
[2026-06-19 08:18:45,918.918 INFO    ] 2026-06-19 08:18:45
[2026-06-19 08:18:46,218.218 INFO    ] 2026-06-19 08:18:46
[2026-06-19 08:18:46,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:18:46,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:18:46,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:18:46,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:18:46,583.583 INFO    ] time= 19/06/2026 08:18:46
[2026-06-19 08:18:46,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:18:46,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:18:46,738.738 INFO    ] No existing commands found in stream
[2026-06-19 08:18:51,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:18:51,751.751 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 08:18:54,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:18:54,980.980 INFO    ] Checking for system updates...
[2026-06-19 08:18:55,016.016 INFO    ] 200
[2026-06-19 08:18:55,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:55,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:18:55,073.073 INFO    ] No update needed
[2026-06-19 08:18:55,076.076 INFO    ] Checking for camera pi updates...
[2026-06-19 08:18:55,110.110 INFO    ] 200
[2026-06-19 08:18:55,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:18:55,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:18:55,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:18:55,201.201 INFO    ] No camera update needed
[2026-06-19 08:18:55,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:18:55,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:18:55,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:18:55,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:18:57,257.257 INFO    ] ================================================
[2026-06-19 08:18:57,272.272 INFO    ] Launching Daemon at Fri Jun 19 08:18:57 IST 2026
[2026-06-19 08:18:57,284.284 INFO    ] ================================================
[2026-06-19 08:18:57,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:18:57
[2026-06-19 08:18:58,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:18:58,718.718 INFO    ] Initializing speech engine...
[2026-06-19 08:18:58,731.731 INFO    ] 2026-06-19 08:18:58
[2026-06-19 08:18:58,977.977 INFO    ] 2026-06-19 08:18:58
[2026-06-19 08:18:59,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:18:59,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:18:59,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:18:59,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:18:59,476.476 INFO    ] time= 19/06/2026 08:18:59
[2026-06-19 08:18:59,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:18:59,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:18:59,664.664 INFO    ] No existing commands found in stream
[2026-06-19 08:19:04,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:19:04,698.698 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-19 08:19:08,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:19:08,478.478 INFO    ] Checking for system updates...
[2026-06-19 08:19:08,517.517 INFO    ] 200
[2026-06-19 08:19:08,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:08,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:19:08,575.575 INFO    ] No update needed
[2026-06-19 08:19:08,577.577 INFO    ] Checking for camera pi updates...
[2026-06-19 08:19:08,612.612 INFO    ] 200
[2026-06-19 08:19:08,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:08,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:19:08,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:19:08,707.707 INFO    ] No camera update needed
[2026-06-19 08:19:08,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:19:08,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:19:08,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:19:08,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:19:10,770.770 INFO    ] ================================================
[2026-06-19 08:19:10,786.786 INFO    ] Launching Daemon at Fri Jun 19 08:19:10 IST 2026
[2026-06-19 08:19:10,797.797 INFO    ] ================================================
[2026-06-19 08:19:11,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:19:11
[2026-06-19 08:19:11,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:19:12,291.291 INFO    ] Initializing speech engine...
[2026-06-19 08:19:12,299.299 INFO    ] 2026-06-19 08:19:12
[2026-06-19 08:19:12,583.583 INFO    ] 2026-06-19 08:19:12
[2026-06-19 08:19:12,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:19:12,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:19:12,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:19:13,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:19:13,124.124 INFO    ] time= 19/06/2026 08:19:13
[2026-06-19 08:19:13,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:19:13,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:19:13,281.281 INFO    ] No existing commands found in stream
[2026-06-19 08:19:18,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:19:18,314.314 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 08:19:21,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:19:21,807.807 INFO    ] Checking for system updates...
[2026-06-19 08:19:21,844.844 INFO    ] 200
[2026-06-19 08:19:21,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:21,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:19:21,906.906 INFO    ] No update needed
[2026-06-19 08:19:21,908.908 INFO    ] Checking for camera pi updates...
[2026-06-19 08:19:21,942.942 INFO    ] 200
[2026-06-19 08:19:21,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:21,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:19:22,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:19:22,033.033 INFO    ] No camera update needed
[2026-06-19 08:19:22,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:19:22,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:19:22,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:19:22,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:19:24,088.088 INFO    ] ================================================
[2026-06-19 08:19:24,103.103 INFO    ] Launching Daemon at Fri Jun 19 08:19:24 IST 2026
[2026-06-19 08:19:24,115.115 INFO    ] ================================================
[2026-06-19 08:19:24,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:19:24
[2026-06-19 08:19:25,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:19:25,554.554 INFO    ] Initializing speech engine...
[2026-06-19 08:19:25,563.563 INFO    ] 2026-06-19 08:19:25
[2026-06-19 08:19:25,812.812 INFO    ] 2026-06-19 08:19:25
[2026-06-19 08:19:25,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:19:26,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:19:26,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:19:26,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:19:26,288.288 INFO    ] time= 19/06/2026 08:19:26
[2026-06-19 08:19:26,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:19:26,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:19:26,431.431 INFO    ] No existing commands found in stream
[2026-06-19 08:19:31,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:19:31,445.445 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 08:19:32,919.919 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:19:32,923.923 INFO    ] Checking for system updates...
[2026-06-19 08:19:32,961.961 INFO    ] 200
[2026-06-19 08:19:32,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:33,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:19:33,019.019 INFO    ] No update needed
[2026-06-19 08:19:33,022.022 INFO    ] Checking for camera pi updates...
[2026-06-19 08:19:33,059.059 INFO    ] 200
[2026-06-19 08:19:33,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:33,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:19:33,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:19:33,145.145 INFO    ] No camera update needed
[2026-06-19 08:19:33,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:19:33,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:19:33,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:19:33,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:19:35,201.201 INFO    ] ================================================
[2026-06-19 08:19:35,217.217 INFO    ] Launching Daemon at Fri Jun 19 08:19:35 IST 2026
[2026-06-19 08:19:35,229.229 INFO    ] ================================================
[2026-06-19 08:19:35,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:19:35
[2026-06-19 08:19:36,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:19:36,832.832 INFO    ] Initializing speech engine...
[2026-06-19 08:19:36,842.842 INFO    ] 2026-06-19 08:19:36
[2026-06-19 08:19:37,116.116 INFO    ] 2026-06-19 08:19:37
[2026-06-19 08:19:37,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:19:37,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:19:37,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:19:37,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:19:37,627.627 INFO    ] time= 19/06/2026 08:19:37
[2026-06-19 08:19:37,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:19:37,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:19:37,802.802 INFO    ] No existing commands found in stream
[2026-06-19 08:19:42,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:19:42,838.838 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 08:19:43,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:19:43,263.263 INFO    ] Checking for system updates...
[2026-06-19 08:19:43,299.299 INFO    ] 200
[2026-06-19 08:19:43,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:43,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:19:43,362.362 INFO    ] No update needed
[2026-06-19 08:19:43,365.365 INFO    ] Checking for camera pi updates...
[2026-06-19 08:19:43,398.398 INFO    ] 200
[2026-06-19 08:19:43,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:43,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:19:43,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:19:43,497.497 INFO    ] No camera update needed
[2026-06-19 08:19:43,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:19:43,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:19:43,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:19:43,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:19:45,552.552 INFO    ] ================================================
[2026-06-19 08:19:45,568.568 INFO    ] Launching Daemon at Fri Jun 19 08:19:45 IST 2026
[2026-06-19 08:19:45,579.579 INFO    ] ================================================
[2026-06-19 08:19:46,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:19:46
[2026-06-19 08:19:46,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:19:47,027.027 INFO    ] Initializing speech engine...
[2026-06-19 08:19:47,054.054 INFO    ] 2026-06-19 08:19:47
[2026-06-19 08:19:47,329.329 INFO    ] 2026-06-19 08:19:47
[2026-06-19 08:19:47,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:19:47,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:19:47,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:19:47,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:19:47,716.716 INFO    ] time= 19/06/2026 08:19:47
[2026-06-19 08:19:47,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:19:47,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:19:47,829.829 INFO    ] No existing commands found in stream
[2026-06-19 08:19:52,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:19:52,845.845 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 08:19:56,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:19:56,033.033 INFO    ] Checking for system updates...
[2026-06-19 08:19:56,070.070 INFO    ] 200
[2026-06-19 08:19:56,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:56,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:19:56,127.127 INFO    ] No update needed
[2026-06-19 08:19:56,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 08:19:56,163.163 INFO    ] 200
[2026-06-19 08:19:56,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:19:56,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:19:56,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:19:56,257.257 INFO    ] No camera update needed
[2026-06-19 08:19:56,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:19:56,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:19:56,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:19:56,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:19:58,311.311 INFO    ] ================================================
[2026-06-19 08:19:58,327.327 INFO    ] Launching Daemon at Fri Jun 19 08:19:58 IST 2026
[2026-06-19 08:19:58,338.338 INFO    ] ================================================
[2026-06-19 08:19:58,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:19:58
[2026-06-19 08:19:59,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:19:59,829.829 INFO    ] Initializing speech engine...
[2026-06-19 08:19:59,842.842 INFO    ] 2026-06-19 08:19:59
[2026-06-19 08:20:00,108.108 INFO    ] 2026-06-19 08:20:00
[2026-06-19 08:20:00,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:20:00,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:20:00,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:20:00,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:20:00,591.591 INFO    ] time= 19/06/2026 08:20:00
[2026-06-19 08:20:00,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:20:00,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:20:00,742.742 INFO    ] No existing commands found in stream
[2026-06-19 08:20:05,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:20:05,759.759 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 08:20:10,132.132 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:20:10,135.135 INFO    ] Checking for system updates...
[2026-06-19 08:20:10,173.173 INFO    ] 200
[2026-06-19 08:20:10,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:10,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:20:10,232.232 INFO    ] No update needed
[2026-06-19 08:20:10,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 08:20:10,291.291 INFO    ] 200
[2026-06-19 08:20:10,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:10,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:20:10,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:20:10,396.396 INFO    ] No camera update needed
[2026-06-19 08:20:10,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:20:10,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:20:10,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:20:10,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:20:12,462.462 INFO    ] ================================================
[2026-06-19 08:20:12,477.477 INFO    ] Launching Daemon at Fri Jun 19 08:20:12 IST 2026
[2026-06-19 08:20:12,493.493 INFO    ] ================================================
[2026-06-19 08:20:13,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:20:13
[2026-06-19 08:20:13,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:20:14,084.084 INFO    ] Initializing speech engine...
[2026-06-19 08:20:14,090.090 INFO    ] 2026-06-19 08:20:14
[2026-06-19 08:20:14,384.384 INFO    ] 2026-06-19 08:20:14
[2026-06-19 08:20:14,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:20:14,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:20:14,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:20:14,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:20:14,766.766 INFO    ] time= 19/06/2026 08:20:14
[2026-06-19 08:20:14,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:20:14,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:20:14,892.892 INFO    ] No existing commands found in stream
[2026-06-19 08:20:19,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:20:19,908.908 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 08:20:21,105.105 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:20:21,108.108 INFO    ] Checking for system updates...
[2026-06-19 08:20:21,144.144 INFO    ] 200
[2026-06-19 08:20:21,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:21,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:20:21,203.203 INFO    ] No update needed
[2026-06-19 08:20:21,205.205 INFO    ] Checking for camera pi updates...
[2026-06-19 08:20:21,239.239 INFO    ] 200
[2026-06-19 08:20:21,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:21,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:20:21,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:20:21,328.328 INFO    ] No camera update needed
[2026-06-19 08:20:21,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:20:21,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:20:21,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:20:21,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:20:23,384.384 INFO    ] ================================================
[2026-06-19 08:20:23,400.400 INFO    ] Launching Daemon at Fri Jun 19 08:20:23 IST 2026
[2026-06-19 08:20:23,411.411 INFO    ] ================================================
[2026-06-19 08:20:24,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:20:24
[2026-06-19 08:20:24,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:20:25,042.042 INFO    ] Initializing speech engine...
[2026-06-19 08:20:25,048.048 INFO    ] 2026-06-19 08:20:25
[2026-06-19 08:20:25,320.320 INFO    ] 2026-06-19 08:20:25
[2026-06-19 08:20:25,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:20:25,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:20:25,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:20:25,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:20:25,832.832 INFO    ] time= 19/06/2026 08:20:25
[2026-06-19 08:20:25,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:20:25,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:20:26,025.025 INFO    ] No existing commands found in stream
[2026-06-19 08:20:31,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:20:31,054.054 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 08:20:31,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:20:31,523.523 INFO    ] Checking for system updates...
[2026-06-19 08:20:31,562.562 INFO    ] 200
[2026-06-19 08:20:31,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:31,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:20:31,621.621 INFO    ] No update needed
[2026-06-19 08:20:31,624.624 INFO    ] Checking for camera pi updates...
[2026-06-19 08:20:31,658.658 INFO    ] 200
[2026-06-19 08:20:31,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:31,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:20:31,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:20:31,742.742 INFO    ] No camera update needed
[2026-06-19 08:20:31,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:20:31,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:20:31,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:20:31,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:20:33,805.805 INFO    ] ================================================
[2026-06-19 08:20:33,821.821 INFO    ] Launching Daemon at Fri Jun 19 08:20:33 IST 2026
[2026-06-19 08:20:33,833.833 INFO    ] ================================================
[2026-06-19 08:20:34,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:20:34
[2026-06-19 08:20:34,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:20:35,279.279 INFO    ] Initializing speech engine...
[2026-06-19 08:20:35,289.289 INFO    ] 2026-06-19 08:20:35
[2026-06-19 08:20:35,552.552 INFO    ] 2026-06-19 08:20:35
[2026-06-19 08:20:35,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:20:35,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:20:35,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:20:35,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:20:36,043.043 INFO    ] time= 19/06/2026 08:20:35
[2026-06-19 08:20:36,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:20:36,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:20:36,208.208 INFO    ] No existing commands found in stream
[2026-06-19 08:20:41,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:20:41,250.250 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 08:20:42,050.050 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:20:42,053.053 INFO    ] Checking for system updates...
[2026-06-19 08:20:42,091.091 INFO    ] 200
[2026-06-19 08:20:42,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:42,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:20:42,152.152 INFO    ] No update needed
[2026-06-19 08:20:42,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 08:20:42,191.191 INFO    ] 200
[2026-06-19 08:20:42,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:42,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:20:42,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:20:42,281.281 INFO    ] No camera update needed
[2026-06-19 08:20:42,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:20:42,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:20:42,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:20:42,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:20:44,342.342 INFO    ] ================================================
[2026-06-19 08:20:44,358.358 INFO    ] Launching Daemon at Fri Jun 19 08:20:44 IST 2026
[2026-06-19 08:20:44,369.369 INFO    ] ================================================
[2026-06-19 08:20:44,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:20:44
[2026-06-19 08:20:45,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:20:45,815.815 INFO    ] Initializing speech engine...
[2026-06-19 08:20:45,820.820 INFO    ] 2026-06-19 08:20:45
[2026-06-19 08:20:46,071.071 INFO    ] 2026-06-19 08:20:46
[2026-06-19 08:20:46,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:20:46,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:20:46,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:20:46,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:20:46,557.557 INFO    ] time= 19/06/2026 08:20:46
[2026-06-19 08:20:46,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:20:46,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:20:46,713.713 INFO    ] No existing commands found in stream
[2026-06-19 08:20:51,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:20:51,728.728 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 08:20:56,115.115 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:20:56,118.118 INFO    ] Checking for system updates...
[2026-06-19 08:20:56,154.154 INFO    ] 200
[2026-06-19 08:20:56,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:56,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:20:56,212.212 INFO    ] No update needed
[2026-06-19 08:20:56,215.215 INFO    ] Checking for camera pi updates...
[2026-06-19 08:20:56,249.249 INFO    ] 200
[2026-06-19 08:20:56,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:20:56,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:20:56,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:20:56,333.333 INFO    ] No camera update needed
[2026-06-19 08:20:56,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:20:56,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:20:56,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:20:56,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:20:58,389.389 INFO    ] ================================================
[2026-06-19 08:20:58,405.405 INFO    ] Launching Daemon at Fri Jun 19 08:20:58 IST 2026
[2026-06-19 08:20:58,416.416 INFO    ] ================================================
[2026-06-19 08:20:58,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:20:58
[2026-06-19 08:20:59,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:20:59,980.980 INFO    ] Initializing speech engine...
[2026-06-19 08:20:59,988.988 INFO    ] 2026-06-19 08:20:59
[2026-06-19 08:21:00,277.277 INFO    ] 2026-06-19 08:21:00
[2026-06-19 08:21:00,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:21:00,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:21:00,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:21:00,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:21:00,741.741 INFO    ] time= 19/06/2026 08:21:00
[2026-06-19 08:21:00,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:21:00,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:21:00,885.885 INFO    ] No existing commands found in stream
[2026-06-19 08:21:05,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:21:05,914.914 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-19 08:21:07,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:21:07,678.678 INFO    ] Checking for system updates...
[2026-06-19 08:21:07,715.715 INFO    ] 200
[2026-06-19 08:21:07,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:07,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:21:07,775.775 INFO    ] No update needed
[2026-06-19 08:21:07,778.778 INFO    ] Checking for camera pi updates...
[2026-06-19 08:21:07,817.817 INFO    ] 200
[2026-06-19 08:21:07,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:07,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:21:07,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:21:07,910.910 INFO    ] No camera update needed
[2026-06-19 08:21:07,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:21:07,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:21:07,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:21:07,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:21:09,969.969 INFO    ] ================================================
[2026-06-19 08:21:09,985.985 INFO    ] Launching Daemon at Fri Jun 19 08:21:09 IST 2026
[2026-06-19 08:21:10,996.996 INFO    ] ================================================
[2026-06-19 08:21:10,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:21:10
[2026-06-19 08:21:11,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:21:11,628.628 INFO    ] Initializing speech engine...
[2026-06-19 08:21:11,638.638 INFO    ] 2026-06-19 08:21:11
[2026-06-19 08:21:11,904.904 INFO    ] 2026-06-19 08:21:11
[2026-06-19 08:21:11,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:21:12,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:21:12,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:21:12,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:21:12,362.362 INFO    ] time= 19/06/2026 08:21:12
[2026-06-19 08:21:12,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:21:12,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:21:12,510.510 INFO    ] No existing commands found in stream
[2026-06-19 08:21:17,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:21:17,524.524 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 08:21:18,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:21:18,405.405 INFO    ] Checking for system updates...
[2026-06-19 08:21:18,441.441 INFO    ] 200
[2026-06-19 08:21:18,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:18,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:21:18,499.499 INFO    ] No update needed
[2026-06-19 08:21:18,502.502 INFO    ] Checking for camera pi updates...
[2026-06-19 08:21:18,536.536 INFO    ] 200
[2026-06-19 08:21:18,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:18,579.579 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:21:18,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:21:18,622.622 INFO    ] No camera update needed
[2026-06-19 08:21:18,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:21:18,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:21:18,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:21:18,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:21:20,683.683 INFO    ] ================================================
[2026-06-19 08:21:20,699.699 INFO    ] Launching Daemon at Fri Jun 19 08:21:20 IST 2026
[2026-06-19 08:21:20,709.709 INFO    ] ================================================
[2026-06-19 08:21:21,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:21:21
[2026-06-19 08:21:21,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:21:22,136.136 INFO    ] Initializing speech engine...
[2026-06-19 08:21:22,160.160 INFO    ] 2026-06-19 08:21:22
[2026-06-19 08:21:22,433.433 INFO    ] 2026-06-19 08:21:22
[2026-06-19 08:21:22,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:21:22,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:21:22,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:21:22,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:21:22,781.781 INFO    ] time= 19/06/2026 08:21:22
[2026-06-19 08:21:22,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:21:22,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:21:22,864.864 INFO    ] No existing commands found in stream
[2026-06-19 08:21:27,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:21:27,880.880 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 08:21:28,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:21:28,687.687 INFO    ] Checking for system updates...
[2026-06-19 08:21:28,732.732 INFO    ] 200
[2026-06-19 08:21:28,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:28,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:21:28,791.791 INFO    ] No update needed
[2026-06-19 08:21:28,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 08:21:28,828.828 INFO    ] 200
[2026-06-19 08:21:28,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:28,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:21:28,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:21:28,922.922 INFO    ] No camera update needed
[2026-06-19 08:21:28,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:21:28,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:21:28,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:21:28,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:21:30,980.980 INFO    ] ================================================
[2026-06-19 08:21:31,996.996 INFO    ] Launching Daemon at Fri Jun 19 08:21:30 IST 2026
[2026-06-19 08:21:31,007.007 INFO    ] ================================================
[2026-06-19 08:21:31,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:21:31
[2026-06-19 08:21:32,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:21:32,597.597 INFO    ] Initializing speech engine...
[2026-06-19 08:21:32,605.605 INFO    ] 2026-06-19 08:21:32
[2026-06-19 08:21:32,888.888 INFO    ] 2026-06-19 08:21:32
[2026-06-19 08:21:32,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:21:33,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:21:33,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:21:33,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:21:33,323.323 INFO    ] time= 19/06/2026 08:21:33
[2026-06-19 08:21:33,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:21:33,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:21:33,414.414 INFO    ] No existing commands found in stream
[2026-06-19 08:21:38,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:21:38,452.452 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 08:21:40,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:21:40,427.427 INFO    ] Checking for system updates...
[2026-06-19 08:21:40,465.465 INFO    ] 200
[2026-06-19 08:21:40,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:40,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:21:40,523.523 INFO    ] No update needed
[2026-06-19 08:21:40,526.526 INFO    ] Checking for camera pi updates...
[2026-06-19 08:21:40,562.562 INFO    ] 200
[2026-06-19 08:21:40,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:40,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:21:40,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:21:40,654.654 INFO    ] No camera update needed
[2026-06-19 08:21:40,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:21:40,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:21:40,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:21:40,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:21:42,712.712 INFO    ] ================================================
[2026-06-19 08:21:42,728.728 INFO    ] Launching Daemon at Fri Jun 19 08:21:42 IST 2026
[2026-06-19 08:21:42,739.739 INFO    ] ================================================
[2026-06-19 08:21:43,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:21:43
[2026-06-19 08:21:43,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:21:44,183.183 INFO    ] Initializing speech engine...
[2026-06-19 08:21:44,208.208 INFO    ] 2026-06-19 08:21:44
[2026-06-19 08:21:44,482.482 INFO    ] 2026-06-19 08:21:44
[2026-06-19 08:21:44,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:21:44,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:21:44,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:21:44,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:21:44,847.847 INFO    ] time= 19/06/2026 08:21:44
[2026-06-19 08:21:44,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:21:44,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:21:44,973.973 INFO    ] No existing commands found in stream
[2026-06-19 08:21:49,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:21:49,989.989 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 08:21:54,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:21:54,046.046 INFO    ] Checking for system updates...
[2026-06-19 08:21:54,086.086 INFO    ] 200
[2026-06-19 08:21:54,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:54,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:21:54,145.145 INFO    ] No update needed
[2026-06-19 08:21:54,148.148 INFO    ] Checking for camera pi updates...
[2026-06-19 08:21:54,183.183 INFO    ] 200
[2026-06-19 08:21:54,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:21:54,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:21:54,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:21:54,276.276 INFO    ] No camera update needed
[2026-06-19 08:21:54,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:21:54,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:21:54,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:21:54,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:21:56,336.336 INFO    ] ================================================
[2026-06-19 08:21:56,353.353 INFO    ] Launching Daemon at Fri Jun 19 08:21:56 IST 2026
[2026-06-19 08:21:56,365.365 INFO    ] ================================================
[2026-06-19 08:21:56,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:21:56
[2026-06-19 08:21:57,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:21:57,942.942 INFO    ] Initializing speech engine...
[2026-06-19 08:21:57,956.956 INFO    ] 2026-06-19 08:21:57
[2026-06-19 08:21:58,229.229 INFO    ] 2026-06-19 08:21:58
[2026-06-19 08:21:58,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:21:58,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:21:58,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:21:58,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:21:58,689.689 INFO    ] time= 19/06/2026 08:21:58
[2026-06-19 08:21:58,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:21:58,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:21:58,827.827 INFO    ] No existing commands found in stream
[2026-06-19 08:22:03,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:22:03,842.842 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 08:22:06,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:22:06,701.701 INFO    ] Checking for system updates...
[2026-06-19 08:22:06,748.748 INFO    ] 200
[2026-06-19 08:22:06,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:06,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:22:06,814.814 INFO    ] No update needed
[2026-06-19 08:22:06,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 08:22:06,851.851 INFO    ] 200
[2026-06-19 08:22:06,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:06,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:22:07,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:22:07,044.044 INFO    ] No camera update needed
[2026-06-19 08:22:07,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:22:07,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:22:07,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:22:07,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:22:09,101.101 INFO    ] ================================================
[2026-06-19 08:22:09,116.116 INFO    ] Launching Daemon at Fri Jun 19 08:22:09 IST 2026
[2026-06-19 08:22:09,127.127 INFO    ] ================================================
[2026-06-19 08:22:09,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:22:09
[2026-06-19 08:22:10,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:22:10,744.744 INFO    ] Initializing speech engine...
[2026-06-19 08:22:10,753.753 INFO    ] 2026-06-19 08:22:10
[2026-06-19 08:22:11,024.024 INFO    ] 2026-06-19 08:22:11
[2026-06-19 08:22:11,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:22:11,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:22:11,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:22:11,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:22:11,521.521 INFO    ] time= 19/06/2026 08:22:11
[2026-06-19 08:22:11,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:22:11,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:22:11,717.717 INFO    ] No existing commands found in stream
[2026-06-19 08:22:16,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:22:16,740.740 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 08:22:17,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:22:17,699.699 INFO    ] Checking for system updates...
[2026-06-19 08:22:17,736.736 INFO    ] 200
[2026-06-19 08:22:17,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:17,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:22:17,796.796 INFO    ] No update needed
[2026-06-19 08:22:17,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 08:22:17,834.834 INFO    ] 200
[2026-06-19 08:22:17,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:17,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:22:17,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:22:17,931.931 INFO    ] No camera update needed
[2026-06-19 08:22:17,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:22:17,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:22:17,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:22:17,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:22:19,989.989 INFO    ] ================================================
[2026-06-19 08:22:20,005.005 INFO    ] Launching Daemon at Fri Jun 19 08:22:20 IST 2026
[2026-06-19 08:22:20,016.016 INFO    ] ================================================
[2026-06-19 08:22:20,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:22:20
[2026-06-19 08:22:21,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:22:21,434.434 INFO    ] Initializing speech engine...
[2026-06-19 08:22:21,443.443 INFO    ] 2026-06-19 08:22:21
[2026-06-19 08:22:21,732.732 INFO    ] 2026-06-19 08:22:21
[2026-06-19 08:22:21,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:22:21,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:22:21,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:22:22,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:22:22,146.146 INFO    ] time= 19/06/2026 08:22:22
[2026-06-19 08:22:22,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:22:22,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:22:22,313.313 INFO    ] No existing commands found in stream
[2026-06-19 08:22:27,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:22:27,351.351 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 08:22:28,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:22:28,121.121 INFO    ] Checking for system updates...
[2026-06-19 08:22:28,157.157 INFO    ] 200
[2026-06-19 08:22:28,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:28,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:22:28,216.216 INFO    ] No update needed
[2026-06-19 08:22:28,218.218 INFO    ] Checking for camera pi updates...
[2026-06-19 08:22:28,251.251 INFO    ] 200
[2026-06-19 08:22:28,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:28,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:22:28,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:22:28,335.335 INFO    ] No camera update needed
[2026-06-19 08:22:28,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:22:28,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:22:28,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:22:28,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:22:30,391.391 INFO    ] ================================================
[2026-06-19 08:22:30,407.407 INFO    ] Launching Daemon at Fri Jun 19 08:22:30 IST 2026
[2026-06-19 08:22:30,419.419 INFO    ] ================================================
[2026-06-19 08:22:31,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:22:31
[2026-06-19 08:22:31,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:22:32,016.016 INFO    ] Initializing speech engine...
[2026-06-19 08:22:32,033.033 INFO    ] 2026-06-19 08:22:32
[2026-06-19 08:22:32,336.336 INFO    ] 2026-06-19 08:22:32
[2026-06-19 08:22:32,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:22:32,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:22:32,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:22:32,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:22:32,803.803 INFO    ] time= 19/06/2026 08:22:32
[2026-06-19 08:22:32,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:22:32,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:22:32,976.976 INFO    ] No existing commands found in stream
[2026-06-19 08:22:37,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:22:37,991.991 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 08:22:40,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:22:40,067.067 INFO    ] Checking for system updates...
[2026-06-19 08:22:40,103.103 INFO    ] 200
[2026-06-19 08:22:40,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:40,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:22:40,162.162 INFO    ] No update needed
[2026-06-19 08:22:40,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 08:22:40,198.198 INFO    ] 200
[2026-06-19 08:22:40,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:40,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:22:40,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:22:40,287.287 INFO    ] No camera update needed
[2026-06-19 08:22:40,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:22:40,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:22:40,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:22:40,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:22:42,344.344 INFO    ] ================================================
[2026-06-19 08:22:42,359.359 INFO    ] Launching Daemon at Fri Jun 19 08:22:42 IST 2026
[2026-06-19 08:22:42,370.370 INFO    ] ================================================
[2026-06-19 08:22:43,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:22:43
[2026-06-19 08:22:43,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:22:43,916.916 INFO    ] Initializing speech engine...
[2026-06-19 08:22:43,925.925 INFO    ] 2026-06-19 08:22:43
[2026-06-19 08:22:44,176.176 INFO    ] 2026-06-19 08:22:44
[2026-06-19 08:22:44,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:22:44,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:22:44,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:22:44,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:22:44,554.554 INFO    ] time= 19/06/2026 08:22:44
[2026-06-19 08:22:44,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:22:44,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:22:44,736.736 INFO    ] No existing commands found in stream
[2026-06-19 08:22:49,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:22:49,761.761 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 08:22:50,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:22:50,970.970 INFO    ] Checking for system updates...
[2026-06-19 08:22:51,009.009 INFO    ] 200
[2026-06-19 08:22:51,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:51,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:22:51,068.068 INFO    ] No update needed
[2026-06-19 08:22:51,070.070 INFO    ] Checking for camera pi updates...
[2026-06-19 08:22:51,104.104 INFO    ] 200
[2026-06-19 08:22:51,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:22:51,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:22:51,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:22:51,199.199 INFO    ] No camera update needed
[2026-06-19 08:22:51,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:22:51,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:22:51,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:22:51,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:22:53,259.259 INFO    ] ================================================
[2026-06-19 08:22:53,276.276 INFO    ] Launching Daemon at Fri Jun 19 08:22:53 IST 2026
[2026-06-19 08:22:53,287.287 INFO    ] ================================================
[2026-06-19 08:22:53,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:22:53
[2026-06-19 08:22:54,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:22:54,767.767 INFO    ] Initializing speech engine...
[2026-06-19 08:22:54,779.779 INFO    ] 2026-06-19 08:22:54
[2026-06-19 08:22:55,031.031 INFO    ] 2026-06-19 08:22:55
[2026-06-19 08:22:55,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:22:55,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:22:55,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:22:55,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:22:55,373.373 INFO    ] time= 19/06/2026 08:22:55
[2026-06-19 08:22:55,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:22:55,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:22:55,489.489 INFO    ] No existing commands found in stream
[2026-06-19 08:23:00,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:23:00,517.517 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 08:23:04,722.722 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:23:04,725.725 INFO    ] Checking for system updates...
[2026-06-19 08:23:04,771.771 INFO    ] 200
[2026-06-19 08:23:04,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 08:23:04,778.778 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 08:23:04,781.781 INFO    ] Checking for camera pi updates...
[2026-06-19 08:23:04,831.831 INFO    ] 200
[2026-06-19 08:23:04,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 08:23:04,838.838 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 08:23:04,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:23:04,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:23:04,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:23:04,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:23:06,900.900 INFO    ] ================================================
[2026-06-19 08:23:06,922.922 INFO    ] Launching Daemon at Fri Jun 19 08:23:06 IST 2026
[2026-06-19 08:23:06,934.934 INFO    ] ================================================
[2026-06-19 08:23:07,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:23:07
[2026-06-19 08:23:08,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:23:08,411.411 INFO    ] Initializing speech engine...
[2026-06-19 08:23:08,418.418 INFO    ] 2026-06-19 08:23:08
[2026-06-19 08:23:08,679.679 INFO    ] 2026-06-19 08:23:08
[2026-06-19 08:23:08,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:23:08,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:23:08,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:23:09,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:23:09,144.144 INFO    ] time= 19/06/2026 08:23:09
[2026-06-19 08:23:09,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:23:09,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:23:09,322.322 INFO    ] No existing commands found in stream
[2026-06-19 08:23:14,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:23:14,356.356 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 08:23:16,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:23:16,926.926 INFO    ] Checking for system updates...
[2026-06-19 08:23:16,963.963 INFO    ] 200
[2026-06-19 08:23:16,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:23:17,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:23:17,027.027 INFO    ] No update needed
[2026-06-19 08:23:17,029.029 INFO    ] Checking for camera pi updates...
[2026-06-19 08:23:17,063.063 INFO    ] 200
[2026-06-19 08:23:17,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:23:17,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:23:17,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:23:17,153.153 INFO    ] No camera update needed
[2026-06-19 08:23:17,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:23:17,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:23:17,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:23:17,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:23:19,209.209 INFO    ] ================================================
[2026-06-19 08:23:19,224.224 INFO    ] Launching Daemon at Fri Jun 19 08:23:19 IST 2026
[2026-06-19 08:23:19,235.235 INFO    ] ================================================
[2026-06-19 08:23:19,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:23:19
[2026-06-19 08:23:20,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:23:20,852.852 INFO    ] Initializing speech engine...
[2026-06-19 08:23:20,860.860 INFO    ] 2026-06-19 08:23:20
[2026-06-19 08:23:21,131.131 INFO    ] 2026-06-19 08:23:21
[2026-06-19 08:23:21,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:23:21,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:23:21,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:23:21,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:23:21,613.613 INFO    ] time= 19/06/2026 08:23:21
[2026-06-19 08:23:21,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:23:21,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:23:21,814.814 INFO    ] No existing commands found in stream
[2026-06-19 08:23:26,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:23:26,848.848 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 08:23:28,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:23:28,126.126 INFO    ] Checking for system updates...
[2026-06-19 08:23:28,163.163 INFO    ] 200
[2026-06-19 08:23:28,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:23:28,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:23:28,224.224 INFO    ] No update needed
[2026-06-19 08:23:28,227.227 INFO    ] Checking for camera pi updates...
[2026-06-19 08:23:28,262.262 INFO    ] 200
[2026-06-19 08:23:28,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:23:28,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:23:28,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:23:28,359.359 INFO    ] No camera update needed
[2026-06-19 08:23:28,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:23:28,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:23:28,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:23:28,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:23:30,421.421 INFO    ] ================================================
[2026-06-19 08:23:30,436.436 INFO    ] Launching Daemon at Fri Jun 19 08:23:30 IST 2026
[2026-06-19 08:23:30,447.447 INFO    ] ================================================
[2026-06-19 08:23:31,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:23:31
[2026-06-19 08:23:31,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:23:32,089.089 INFO    ] Initializing speech engine...
[2026-06-19 08:23:32,099.099 INFO    ] 2026-06-19 08:23:32
[2026-06-19 08:23:32,397.397 INFO    ] 2026-06-19 08:23:32
[2026-06-19 08:23:32,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:23:32,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:23:32,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:23:32,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:23:32,915.915 INFO    ] time= 19/06/2026 08:23:32
[2026-06-19 08:23:32,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:23:32,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:23:33,035.035 INFO    ] No existing commands found in stream
[2026-06-19 08:23:38,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:23:38,048.048 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 08:23:39,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:23:39,160.160 INFO    ] Checking for system updates...
[2026-06-19 08:23:39,196.196 INFO    ] 200
[2026-06-19 08:23:39,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:23:39,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:23:39,253.253 INFO    ] No update needed
[2026-06-19 08:23:39,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 08:23:39,290.290 INFO    ] 200
[2026-06-19 08:23:39,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:23:39,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:23:39,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:23:39,377.377 INFO    ] No camera update needed
[2026-06-19 08:23:39,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:23:39,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:23:39,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:23:39,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:23:41,437.437 INFO    ] ================================================
[2026-06-19 08:23:41,452.452 INFO    ] Launching Daemon at Fri Jun 19 08:23:41 IST 2026
[2026-06-19 08:23:41,463.463 INFO    ] ================================================
[2026-06-19 08:23:42,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:23:42
[2026-06-19 08:23:42,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:23:42,883.883 INFO    ] Initializing speech engine...
[2026-06-19 08:23:42,892.892 INFO    ] 2026-06-19 08:23:42
[2026-06-19 08:23:43,152.152 INFO    ] 2026-06-19 08:23:43
[2026-06-19 08:23:43,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:23:43,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:23:43,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:23:43,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:23:43,629.629 INFO    ] time= 19/06/2026 08:23:43
[2026-06-19 08:23:43,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:23:43,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:23:43,774.774 INFO    ] No existing commands found in stream
[2026-06-19 08:23:48,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:23:48,813.813 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 08:23:52,491.491 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:23:52,494.494 INFO    ] Checking for system updates...
[2026-06-19 08:23:52,530.530 INFO    ] 200
[2026-06-19 08:23:52,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:23:52,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:23:52,588.588 INFO    ] No update needed
[2026-06-19 08:23:52,591.591 INFO    ] Checking for camera pi updates...
[2026-06-19 08:23:52,636.636 INFO    ] 200
[2026-06-19 08:23:52,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:23:52,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:23:52,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:23:52,722.722 INFO    ] No camera update needed
[2026-06-19 08:23:52,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:23:52,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:23:52,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:23:52,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:23:54,779.779 INFO    ] ================================================
[2026-06-19 08:23:54,795.795 INFO    ] Launching Daemon at Fri Jun 19 08:23:54 IST 2026
[2026-06-19 08:23:54,806.806 INFO    ] ================================================
[2026-06-19 08:23:55,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:23:55
[2026-06-19 08:23:56,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:23:56,447.447 INFO    ] Initializing speech engine...
[2026-06-19 08:23:56,455.455 INFO    ] 2026-06-19 08:23:56
[2026-06-19 08:23:56,726.726 INFO    ] 2026-06-19 08:23:56
[2026-06-19 08:23:56,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:23:56,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:23:56,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:23:57,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:23:57,198.198 INFO    ] time= 19/06/2026 08:23:57
[2026-06-19 08:23:57,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:23:57,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:23:57,397.397 INFO    ] No existing commands found in stream
[2026-06-19 08:24:02,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:24:02,428.428 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 08:24:05,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:24:05,497.497 INFO    ] Checking for system updates...
[2026-06-19 08:24:05,535.535 INFO    ] 200
[2026-06-19 08:24:05,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:05,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:24:05,594.594 INFO    ] No update needed
[2026-06-19 08:24:05,597.597 INFO    ] Checking for camera pi updates...
[2026-06-19 08:24:05,632.632 INFO    ] 200
[2026-06-19 08:24:05,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:05,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:24:05,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:24:05,720.720 INFO    ] No camera update needed
[2026-06-19 08:24:05,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:24:05,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:24:05,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:24:05,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:24:07,776.776 INFO    ] ================================================
[2026-06-19 08:24:07,791.791 INFO    ] Launching Daemon at Fri Jun 19 08:24:07 IST 2026
[2026-06-19 08:24:07,803.803 INFO    ] ================================================
[2026-06-19 08:24:08,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:24:08
[2026-06-19 08:24:08,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:24:09,223.223 INFO    ] Initializing speech engine...
[2026-06-19 08:24:09,232.232 INFO    ] 2026-06-19 08:24:09
[2026-06-19 08:24:09,486.486 INFO    ] 2026-06-19 08:24:09
[2026-06-19 08:24:09,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:24:09,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:24:09,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:24:09,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:24:09,853.853 INFO    ] time= 19/06/2026 08:24:09
[2026-06-19 08:24:09,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:24:09,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:24:10,020.020 INFO    ] No existing commands found in stream
[2026-06-19 08:24:15,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:24:15,164.164 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 08:24:17,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:24:17,358.358 INFO    ] Checking for system updates...
[2026-06-19 08:24:17,394.394 INFO    ] 200
[2026-06-19 08:24:17,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:17,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:24:17,452.452 INFO    ] No update needed
[2026-06-19 08:24:17,454.454 INFO    ] Checking for camera pi updates...
[2026-06-19 08:24:17,500.500 INFO    ] 200
[2026-06-19 08:24:17,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:17,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:24:17,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:24:17,700.700 INFO    ] No camera update needed
[2026-06-19 08:24:17,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:24:17,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:24:17,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:24:17,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:24:19,759.759 INFO    ] ================================================
[2026-06-19 08:24:19,774.774 INFO    ] Launching Daemon at Fri Jun 19 08:24:19 IST 2026
[2026-06-19 08:24:19,786.786 INFO    ] ================================================
[2026-06-19 08:24:20,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:24:20
[2026-06-19 08:24:20,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:24:21,216.216 INFO    ] Initializing speech engine...
[2026-06-19 08:24:21,223.223 INFO    ] 2026-06-19 08:24:21
[2026-06-19 08:24:21,471.471 INFO    ] 2026-06-19 08:24:21
[2026-06-19 08:24:21,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:24:21,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:24:21,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:24:21,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:24:21,894.894 INFO    ] time= 19/06/2026 08:24:21
[2026-06-19 08:24:21,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:24:21,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:24:22,059.059 INFO    ] No existing commands found in stream
[2026-06-19 08:24:27,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:24:27,072.072 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 08:24:28,538.538 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:24:28,541.541 INFO    ] Checking for system updates...
[2026-06-19 08:24:28,577.577 INFO    ] 200
[2026-06-19 08:24:28,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:28,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:24:28,636.636 INFO    ] No update needed
[2026-06-19 08:24:28,638.638 INFO    ] Checking for camera pi updates...
[2026-06-19 08:24:28,676.676 INFO    ] 200
[2026-06-19 08:24:28,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:28,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:24:28,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:24:28,749.749 INFO    ] No camera update needed
[2026-06-19 08:24:28,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:24:28,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:24:28,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:24:28,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:24:30,805.805 INFO    ] ================================================
[2026-06-19 08:24:30,821.821 INFO    ] Launching Daemon at Fri Jun 19 08:24:30 IST 2026
[2026-06-19 08:24:30,832.832 INFO    ] ================================================
[2026-06-19 08:24:31,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:24:31
[2026-06-19 08:24:32,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:24:32,287.287 INFO    ] Initializing speech engine...
[2026-06-19 08:24:32,303.303 INFO    ] 2026-06-19 08:24:32
[2026-06-19 08:24:32,602.602 INFO    ] 2026-06-19 08:24:32
[2026-06-19 08:24:32,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:24:32,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:24:32,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:24:32,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:24:32,998.998 INFO    ] time= 19/06/2026 08:24:32
[2026-06-19 08:24:33,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:24:33,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:24:33,081.081 INFO    ] No existing commands found in stream
[2026-06-19 08:24:38,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:24:38,094.094 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 08:24:40,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:24:40,007.007 INFO    ] Checking for system updates...
[2026-06-19 08:24:40,043.043 INFO    ] 200
[2026-06-19 08:24:40,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:40,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:24:40,101.101 INFO    ] No update needed
[2026-06-19 08:24:40,103.103 INFO    ] Checking for camera pi updates...
[2026-06-19 08:24:40,142.142 INFO    ] 200
[2026-06-19 08:24:40,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:40,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:24:40,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:24:40,233.233 INFO    ] No camera update needed
[2026-06-19 08:24:40,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:24:40,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:24:40,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:24:40,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:24:42,290.290 INFO    ] ================================================
[2026-06-19 08:24:42,306.306 INFO    ] Launching Daemon at Fri Jun 19 08:24:42 IST 2026
[2026-06-19 08:24:42,318.318 INFO    ] ================================================
[2026-06-19 08:24:42,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:24:42
[2026-06-19 08:24:43,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:24:43,713.713 INFO    ] Initializing speech engine...
[2026-06-19 08:24:43,727.727 INFO    ] 2026-06-19 08:24:43
[2026-06-19 08:24:43,989.989 INFO    ] 2026-06-19 08:24:43
[2026-06-19 08:24:44,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:24:44,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:24:44,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:24:44,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:24:44,458.458 INFO    ] time= 19/06/2026 08:24:44
[2026-06-19 08:24:44,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:24:44,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:24:44,624.624 INFO    ] No existing commands found in stream
[2026-06-19 08:24:49,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:24:49,638.638 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 08:24:50,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:24:50,768.768 INFO    ] Checking for system updates...
[2026-06-19 08:24:50,805.805 INFO    ] 200
[2026-06-19 08:24:50,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:50,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:24:50,863.863 INFO    ] No update needed
[2026-06-19 08:24:50,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 08:24:50,899.899 INFO    ] 200
[2026-06-19 08:24:50,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:24:50,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:24:50,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:24:50,998.998 INFO    ] No camera update needed
[2026-06-19 08:24:51,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:24:51,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:24:51,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:24:51,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:24:53,052.052 INFO    ] ================================================
[2026-06-19 08:24:53,068.068 INFO    ] Launching Daemon at Fri Jun 19 08:24:53 IST 2026
[2026-06-19 08:24:53,079.079 INFO    ] ================================================
[2026-06-19 08:24:53,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:24:53
[2026-06-19 08:24:54,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:24:54,540.540 INFO    ] Initializing speech engine...
[2026-06-19 08:24:54,548.548 INFO    ] 2026-06-19 08:24:54
[2026-06-19 08:24:54,807.807 INFO    ] 2026-06-19 08:24:54
[2026-06-19 08:24:54,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:24:55,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:24:55,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:24:55,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:24:55,273.273 INFO    ] time= 19/06/2026 08:24:55
[2026-06-19 08:24:55,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:24:55,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:24:55,420.420 INFO    ] No existing commands found in stream
[2026-06-19 08:25:00,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:25:00,450.450 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 08:25:04,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:25:04,571.571 INFO    ] Checking for system updates...
[2026-06-19 08:25:04,608.608 INFO    ] 200
[2026-06-19 08:25:04,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:04,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:04,668.668 INFO    ] No update needed
[2026-06-19 08:25:04,671.671 INFO    ] Checking for camera pi updates...
[2026-06-19 08:25:04,706.706 INFO    ] 200
[2026-06-19 08:25:04,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:04,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:25:04,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:04,804.804 INFO    ] No camera update needed
[2026-06-19 08:25:04,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:25:04,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:25:04,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:25:04,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:25:06,866.866 INFO    ] ================================================
[2026-06-19 08:25:06,883.883 INFO    ] Launching Daemon at Fri Jun 19 08:25:06 IST 2026
[2026-06-19 08:25:06,894.894 INFO    ] ================================================
[2026-06-19 08:25:07,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:25:07
[2026-06-19 08:25:08,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:25:08,580.580 INFO    ] Initializing speech engine...
[2026-06-19 08:25:08,590.590 INFO    ] 2026-06-19 08:25:08
[2026-06-19 08:25:08,901.901 INFO    ] 2026-06-19 08:25:08
[2026-06-19 08:25:08,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:25:09,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:25:09,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:25:09,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:25:09,425.425 INFO    ] time= 19/06/2026 08:25:09
[2026-06-19 08:25:09,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:25:09,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:25:09,580.580 INFO    ] No existing commands found in stream
[2026-06-19 08:25:14,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:25:14,599.599 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 08:25:17,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:25:17,508.508 INFO    ] Checking for system updates...
[2026-06-19 08:25:17,545.545 INFO    ] 200
[2026-06-19 08:25:17,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:17,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:17,605.605 INFO    ] No update needed
[2026-06-19 08:25:17,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 08:25:17,644.644 INFO    ] 200
[2026-06-19 08:25:17,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:17,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:25:17,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:17,748.748 INFO    ] No camera update needed
[2026-06-19 08:25:17,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:25:17,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:25:17,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:25:17,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:25:19,811.811 INFO    ] ================================================
[2026-06-19 08:25:19,828.828 INFO    ] Launching Daemon at Fri Jun 19 08:25:19 IST 2026
[2026-06-19 08:25:19,838.838 INFO    ] ================================================
[2026-06-19 08:25:20,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:25:20
[2026-06-19 08:25:21,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:25:21,369.369 INFO    ] Initializing speech engine...
[2026-06-19 08:25:21,384.384 INFO    ] 2026-06-19 08:25:21
[2026-06-19 08:25:21,664.664 INFO    ] 2026-06-19 08:25:21
[2026-06-19 08:25:21,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:25:21,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:25:21,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:25:22,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:25:22,155.155 INFO    ] time= 19/06/2026 08:25:22
[2026-06-19 08:25:22,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:25:22,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:25:22,301.301 INFO    ] No existing commands found in stream
[2026-06-19 08:25:27,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:25:27,327.327 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 08:25:28,417.417 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:25:28,420.420 INFO    ] Checking for system updates...
[2026-06-19 08:25:28,460.460 INFO    ] 200
[2026-06-19 08:25:28,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:28,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:28,526.526 INFO    ] No update needed
[2026-06-19 08:25:28,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 08:25:28,562.562 INFO    ] 200
[2026-06-19 08:25:28,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:28,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:25:28,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:28,657.657 INFO    ] No camera update needed
[2026-06-19 08:25:28,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:25:28,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:25:28,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:25:28,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:25:30,712.712 INFO    ] ================================================
[2026-06-19 08:25:30,727.727 INFO    ] Launching Daemon at Fri Jun 19 08:25:30 IST 2026
[2026-06-19 08:25:30,738.738 INFO    ] ================================================
[2026-06-19 08:25:31,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:25:31
[2026-06-19 08:25:31,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:25:32,336.336 INFO    ] Initializing speech engine...
[2026-06-19 08:25:32,342.342 INFO    ] 2026-06-19 08:25:32
[2026-06-19 08:25:32,643.643 INFO    ] 2026-06-19 08:25:32
[2026-06-19 08:25:32,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:25:32,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:25:32,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:25:33,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:25:33,159.159 INFO    ] time= 19/06/2026 08:25:33
[2026-06-19 08:25:33,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:25:33,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:25:33,346.346 INFO    ] No existing commands found in stream
[2026-06-19 08:25:38,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:25:38,381.381 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 08:25:42,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:25:42,067.067 INFO    ] Checking for system updates...
[2026-06-19 08:25:42,111.111 INFO    ] 200
[2026-06-19 08:25:42,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:42,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:42,172.172 INFO    ] No update needed
[2026-06-19 08:25:42,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 08:25:42,212.212 INFO    ] 200
[2026-06-19 08:25:42,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:42,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:25:42,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:42,299.299 INFO    ] No camera update needed
[2026-06-19 08:25:42,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:25:42,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:25:42,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:25:42,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:25:44,360.360 INFO    ] ================================================
[2026-06-19 08:25:44,375.375 INFO    ] Launching Daemon at Fri Jun 19 08:25:44 IST 2026
[2026-06-19 08:25:44,386.386 INFO    ] ================================================
[2026-06-19 08:25:44,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:25:44
[2026-06-19 08:25:45,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:25:45,802.802 INFO    ] Initializing speech engine...
[2026-06-19 08:25:45,809.809 INFO    ] 2026-06-19 08:25:45
[2026-06-19 08:25:46,115.115 INFO    ] 2026-06-19 08:25:46
[2026-06-19 08:25:46,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:25:46,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:25:46,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:25:46,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:25:46,503.503 INFO    ] time= 19/06/2026 08:25:46
[2026-06-19 08:25:46,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:25:46,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:25:46,628.628 INFO    ] No existing commands found in stream
[2026-06-19 08:25:51,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:25:51,643.643 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 08:25:53,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:25:53,518.518 INFO    ] Checking for system updates...
[2026-06-19 08:25:53,558.558 INFO    ] 200
[2026-06-19 08:25:53,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:53,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:53,616.616 INFO    ] No update needed
[2026-06-19 08:25:53,618.618 INFO    ] Checking for camera pi updates...
[2026-06-19 08:25:53,652.652 INFO    ] 200
[2026-06-19 08:25:53,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:25:53,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:25:53,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:25:53,737.737 INFO    ] No camera update needed
[2026-06-19 08:25:53,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:25:53,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:25:53,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:25:53,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:25:55,792.792 INFO    ] ================================================
[2026-06-19 08:25:55,808.808 INFO    ] Launching Daemon at Fri Jun 19 08:25:55 IST 2026
[2026-06-19 08:25:55,819.819 INFO    ] ================================================
[2026-06-19 08:25:56,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:25:56
[2026-06-19 08:25:57,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:25:57,268.268 INFO    ] Initializing speech engine...
[2026-06-19 08:25:57,293.293 INFO    ] 2026-06-19 08:25:57
[2026-06-19 08:25:57,572.572 INFO    ] 2026-06-19 08:25:57
[2026-06-19 08:25:57,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:25:57,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:25:57,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:25:57,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:25:57,959.959 INFO    ] time= 19/06/2026 08:25:57
[2026-06-19 08:25:57,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:25:57,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:25:58,086.086 INFO    ] No existing commands found in stream
[2026-06-19 08:26:03,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:26:03,101.101 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 08:26:07,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:26:07,269.269 INFO    ] Checking for system updates...
[2026-06-19 08:26:07,309.309 INFO    ] 200
[2026-06-19 08:26:07,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:07,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:26:07,367.367 INFO    ] No update needed
[2026-06-19 08:26:07,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 08:26:07,403.403 INFO    ] 200
[2026-06-19 08:26:07,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:07,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:26:07,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:26:07,504.504 INFO    ] No camera update needed
[2026-06-19 08:26:07,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:26:07,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:26:07,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:26:07,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:26:09,565.565 INFO    ] ================================================
[2026-06-19 08:26:09,580.580 INFO    ] Launching Daemon at Fri Jun 19 08:26:09 IST 2026
[2026-06-19 08:26:09,591.591 INFO    ] ================================================
[2026-06-19 08:26:10,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:26:10
[2026-06-19 08:26:10,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:26:11,068.068 INFO    ] Initializing speech engine...
[2026-06-19 08:26:11,078.078 INFO    ] 2026-06-19 08:26:11
[2026-06-19 08:26:11,342.342 INFO    ] 2026-06-19 08:26:11
[2026-06-19 08:26:11,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:26:11,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:26:11,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:26:11,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:26:11,803.803 INFO    ] time= 19/06/2026 08:26:11
[2026-06-19 08:26:11,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:26:11,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:26:11,950.950 INFO    ] No existing commands found in stream
[2026-06-19 08:26:16,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:26:16,960.960 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 08:26:20,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:26:20,721.721 INFO    ] Checking for system updates...
[2026-06-19 08:26:20,773.773 INFO    ] 200
[2026-06-19 08:26:20,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:20,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:26:20,839.839 INFO    ] No update needed
[2026-06-19 08:26:20,841.841 INFO    ] Checking for camera pi updates...
[2026-06-19 08:26:20,875.875 INFO    ] 200
[2026-06-19 08:26:20,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:20,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:26:21,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:26:21,068.068 INFO    ] No camera update needed
[2026-06-19 08:26:21,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:26:21,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:26:21,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:26:21,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:26:23,128.128 INFO    ] ================================================
[2026-06-19 08:26:23,143.143 INFO    ] Launching Daemon at Fri Jun 19 08:26:23 IST 2026
[2026-06-19 08:26:23,155.155 INFO    ] ================================================
[2026-06-19 08:26:23,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:26:23
[2026-06-19 08:26:24,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:26:24,589.589 INFO    ] Initializing speech engine...
[2026-06-19 08:26:24,606.606 INFO    ] 2026-06-19 08:26:24
[2026-06-19 08:26:24,882.882 INFO    ] 2026-06-19 08:26:24
[2026-06-19 08:26:24,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:26:25,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:26:25,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:26:25,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:26:25,239.239 INFO    ] time= 19/06/2026 08:26:25
[2026-06-19 08:26:25,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:26:25,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:26:25,372.372 INFO    ] No existing commands found in stream
[2026-06-19 08:26:30,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:26:30,401.401 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 08:26:31,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:26:31,359.359 INFO    ] Checking for system updates...
[2026-06-19 08:26:31,395.395 INFO    ] 200
[2026-06-19 08:26:31,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:31,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:26:31,458.458 INFO    ] No update needed
[2026-06-19 08:26:31,461.461 INFO    ] Checking for camera pi updates...
[2026-06-19 08:26:31,499.499 INFO    ] 200
[2026-06-19 08:26:31,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:31,548.548 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:26:31,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:26:31,595.595 INFO    ] No camera update needed
[2026-06-19 08:26:31,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:26:31,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:26:31,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:26:31,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:26:33,652.652 INFO    ] ================================================
[2026-06-19 08:26:33,668.668 INFO    ] Launching Daemon at Fri Jun 19 08:26:33 IST 2026
[2026-06-19 08:26:33,679.679 INFO    ] ================================================
[2026-06-19 08:26:34,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:26:34
[2026-06-19 08:26:34,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:26:35,093.093 INFO    ] Initializing speech engine...
[2026-06-19 08:26:35,099.099 INFO    ] 2026-06-19 08:26:35
[2026-06-19 08:26:35,399.399 INFO    ] 2026-06-19 08:26:35
[2026-06-19 08:26:35,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:26:35,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:26:35,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:26:35,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:26:35,786.786 INFO    ] time= 19/06/2026 08:26:35
[2026-06-19 08:26:35,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:26:35,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:26:35,907.907 INFO    ] No existing commands found in stream
[2026-06-19 08:26:40,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:26:40,925.925 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 08:26:41,462.462 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:26:41,465.465 INFO    ] Checking for system updates...
[2026-06-19 08:26:41,501.501 INFO    ] 200
[2026-06-19 08:26:41,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:41,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:26:41,570.570 INFO    ] No update needed
[2026-06-19 08:26:41,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 08:26:41,606.606 INFO    ] 200
[2026-06-19 08:26:41,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:41,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:26:41,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:26:41,698.698 INFO    ] No camera update needed
[2026-06-19 08:26:41,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:26:41,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:26:41,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:26:41,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:26:43,755.755 INFO    ] ================================================
[2026-06-19 08:26:43,770.770 INFO    ] Launching Daemon at Fri Jun 19 08:26:43 IST 2026
[2026-06-19 08:26:43,780.780 INFO    ] ================================================
[2026-06-19 08:26:44,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:26:44
[2026-06-19 08:26:44,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:26:45,231.231 INFO    ] Initializing speech engine...
[2026-06-19 08:26:45,237.237 INFO    ] 2026-06-19 08:26:45
[2026-06-19 08:26:45,538.538 INFO    ] 2026-06-19 08:26:45
[2026-06-19 08:26:45,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:26:45,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:26:45,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:26:45,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:26:45,898.898 INFO    ] time= 19/06/2026 08:26:45
[2026-06-19 08:26:45,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:26:45,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:26:46,032.032 INFO    ] No existing commands found in stream
[2026-06-19 08:26:51,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:26:51,046.046 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 08:26:52,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:26:52,086.086 INFO    ] Checking for system updates...
[2026-06-19 08:26:52,121.121 INFO    ] 200
[2026-06-19 08:26:52,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:52,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:26:52,180.180 INFO    ] No update needed
[2026-06-19 08:26:52,182.182 INFO    ] Checking for camera pi updates...
[2026-06-19 08:26:52,220.220 INFO    ] 200
[2026-06-19 08:26:52,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:26:52,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:26:52,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:26:52,320.320 INFO    ] No camera update needed
[2026-06-19 08:26:52,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:26:52,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:26:52,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:26:52,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:26:54,375.375 INFO    ] ================================================
[2026-06-19 08:26:54,390.390 INFO    ] Launching Daemon at Fri Jun 19 08:26:54 IST 2026
[2026-06-19 08:26:54,401.401 INFO    ] ================================================
[2026-06-19 08:26:55,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:26:55
[2026-06-19 08:26:55,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:26:56,061.061 INFO    ] Initializing speech engine...
[2026-06-19 08:26:56,070.070 INFO    ] 2026-06-19 08:26:56
[2026-06-19 08:26:56,369.369 INFO    ] 2026-06-19 08:26:56
[2026-06-19 08:26:56,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:26:56,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:26:56,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:26:56,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:26:56,914.914 INFO    ] time= 19/06/2026 08:26:56
[2026-06-19 08:26:56,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:26:56,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:26:57,099.099 INFO    ] No existing commands found in stream
[2026-06-19 08:27:02,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:27:02,139.139 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 08:27:03,613.613 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:27:03,617.617 INFO    ] Checking for system updates...
[2026-06-19 08:27:03,659.659 INFO    ] 200
[2026-06-19 08:27:03,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:03,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:27:03,733.733 INFO    ] No update needed
[2026-06-19 08:27:03,736.736 INFO    ] Checking for camera pi updates...
[2026-06-19 08:27:03,776.776 INFO    ] 200
[2026-06-19 08:27:03,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:03,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:27:03,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:27:03,868.868 INFO    ] No camera update needed
[2026-06-19 08:27:03,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:27:03,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:27:03,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:27:03,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:27:05,928.928 INFO    ] ================================================
[2026-06-19 08:27:05,944.944 INFO    ] Launching Daemon at Fri Jun 19 08:27:05 IST 2026
[2026-06-19 08:27:05,956.956 INFO    ] ================================================
[2026-06-19 08:27:06,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:27:06
[2026-06-19 08:27:07,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:27:07,644.644 INFO    ] Initializing speech engine...
[2026-06-19 08:27:07,656.656 INFO    ] 2026-06-19 08:27:07
[2026-06-19 08:27:07,969.969 INFO    ] 2026-06-19 08:27:07
[2026-06-19 08:27:08,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:27:08,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:27:08,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:27:08,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:27:08,479.479 INFO    ] time= 19/06/2026 08:27:08
[2026-06-19 08:27:08,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:27:08,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:27:08,622.622 INFO    ] No existing commands found in stream
[2026-06-19 08:27:13,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:27:13,653.653 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 08:27:17,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:27:17,184.184 INFO    ] Checking for system updates...
[2026-06-19 08:27:17,227.227 INFO    ] 200
[2026-06-19 08:27:17,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:17,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:27:17,284.284 INFO    ] No update needed
[2026-06-19 08:27:17,287.287 INFO    ] Checking for camera pi updates...
[2026-06-19 08:27:17,321.321 INFO    ] 200
[2026-06-19 08:27:17,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:17,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:27:17,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:27:17,409.409 INFO    ] No camera update needed
[2026-06-19 08:27:17,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:27:17,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:27:17,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:27:17,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:27:19,465.465 INFO    ] ================================================
[2026-06-19 08:27:19,481.481 INFO    ] Launching Daemon at Fri Jun 19 08:27:19 IST 2026
[2026-06-19 08:27:19,492.492 INFO    ] ================================================
[2026-06-19 08:27:20,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:27:20
[2026-06-19 08:27:20,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:27:20,958.958 INFO    ] Initializing speech engine...
[2026-06-19 08:27:20,967.967 INFO    ] 2026-06-19 08:27:20
[2026-06-19 08:27:21,238.238 INFO    ] 2026-06-19 08:27:21
[2026-06-19 08:27:21,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:27:21,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:27:21,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:27:21,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:27:21,629.629 INFO    ] time= 19/06/2026 08:27:21
[2026-06-19 08:27:21,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:27:21,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:27:21,761.761 INFO    ] No existing commands found in stream
[2026-06-19 08:27:26,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:27:26,776.776 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 08:27:28,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:27:28,061.061 INFO    ] Checking for system updates...
[2026-06-19 08:27:28,097.097 INFO    ] 200
[2026-06-19 08:27:28,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:28,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:27:28,154.154 INFO    ] No update needed
[2026-06-19 08:27:28,157.157 INFO    ] Checking for camera pi updates...
[2026-06-19 08:27:28,196.196 INFO    ] 200
[2026-06-19 08:27:28,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:28,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:27:28,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:27:28,280.280 INFO    ] No camera update needed
[2026-06-19 08:27:28,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:27:28,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:27:28,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:27:28,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:27:30,335.335 INFO    ] ================================================
[2026-06-19 08:27:30,354.354 INFO    ] Launching Daemon at Fri Jun 19 08:27:30 IST 2026
[2026-06-19 08:27:30,365.365 INFO    ] ================================================
[2026-06-19 08:27:30,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:27:30
[2026-06-19 08:27:31,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:27:31,876.876 INFO    ] Initializing speech engine...
[2026-06-19 08:27:31,889.889 INFO    ] 2026-06-19 08:27:31
[2026-06-19 08:27:32,188.188 INFO    ] 2026-06-19 08:27:32
[2026-06-19 08:27:32,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:27:32,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:27:32,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:27:32,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:27:32,688.688 INFO    ] time= 19/06/2026 08:27:32
[2026-06-19 08:27:32,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:27:32,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:27:32,838.838 INFO    ] No existing commands found in stream
[2026-06-19 08:27:37,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:27:37,880.880 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 08:27:39,414.414 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:27:39,417.417 INFO    ] Checking for system updates...
[2026-06-19 08:27:39,453.453 INFO    ] 200
[2026-06-19 08:27:39,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:39,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:27:39,510.510 INFO    ] No update needed
[2026-06-19 08:27:39,513.513 INFO    ] Checking for camera pi updates...
[2026-06-19 08:27:39,551.551 INFO    ] 200
[2026-06-19 08:27:39,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:39,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:27:39,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:27:39,638.638 INFO    ] No camera update needed
[2026-06-19 08:27:39,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:27:39,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:27:39,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:27:39,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:27:41,694.694 INFO    ] ================================================
[2026-06-19 08:27:41,710.710 INFO    ] Launching Daemon at Fri Jun 19 08:27:41 IST 2026
[2026-06-19 08:27:41,721.721 INFO    ] ================================================
[2026-06-19 08:27:42,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:27:42
[2026-06-19 08:27:42,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:27:43,134.134 INFO    ] Initializing speech engine...
[2026-06-19 08:27:43,153.153 INFO    ] 2026-06-19 08:27:43
[2026-06-19 08:27:43,404.404 INFO    ] 2026-06-19 08:27:43
[2026-06-19 08:27:43,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:27:43,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:27:43,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:27:43,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:27:43,781.781 INFO    ] time= 19/06/2026 08:27:43
[2026-06-19 08:27:43,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:27:43,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:27:43,961.961 INFO    ] No existing commands found in stream
[2026-06-19 08:27:48,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:27:48,994.994 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 08:27:52,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:27:52,592.592 INFO    ] Checking for system updates...
[2026-06-19 08:27:52,633.633 INFO    ] 200
[2026-06-19 08:27:52,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:52,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:27:52,691.691 INFO    ] No update needed
[2026-06-19 08:27:52,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 08:27:52,727.727 INFO    ] 200
[2026-06-19 08:27:52,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:27:52,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:27:52,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:27:52,821.821 INFO    ] No camera update needed
[2026-06-19 08:27:52,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:27:52,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:27:52,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:27:52,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:27:54,878.878 INFO    ] ================================================
[2026-06-19 08:27:54,893.893 INFO    ] Launching Daemon at Fri Jun 19 08:27:54 IST 2026
[2026-06-19 08:27:54,904.904 INFO    ] ================================================
[2026-06-19 08:27:55,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:27:55
[2026-06-19 08:27:56,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:27:56,331.331 INFO    ] Initializing speech engine...
[2026-06-19 08:27:56,338.338 INFO    ] 2026-06-19 08:27:56
[2026-06-19 08:27:56,616.616 INFO    ] 2026-06-19 08:27:56
[2026-06-19 08:27:56,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:27:56,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:27:56,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:27:56,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:27:56,986.986 INFO    ] time= 19/06/2026 08:27:56
[2026-06-19 08:27:56,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:27:57,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:27:57,166.166 INFO    ] No existing commands found in stream
[2026-06-19 08:28:02,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:28:02,191.191 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 08:28:06,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:28:06,325.325 INFO    ] Checking for system updates...
[2026-06-19 08:28:06,362.362 INFO    ] 200
[2026-06-19 08:28:06,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:06,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:28:06,430.430 INFO    ] No update needed
[2026-06-19 08:28:06,433.433 INFO    ] Checking for camera pi updates...
[2026-06-19 08:28:06,469.469 INFO    ] 200
[2026-06-19 08:28:06,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:06,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:28:06,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:28:06,568.568 INFO    ] No camera update needed
[2026-06-19 08:28:06,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:28:06,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:28:06,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:28:06,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:28:08,627.627 INFO    ] ================================================
[2026-06-19 08:28:08,642.642 INFO    ] Launching Daemon at Fri Jun 19 08:28:08 IST 2026
[2026-06-19 08:28:08,653.653 INFO    ] ================================================
[2026-06-19 08:28:09,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:28:09
[2026-06-19 08:28:09,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:28:10,303.303 INFO    ] Initializing speech engine...
[2026-06-19 08:28:10,315.315 INFO    ] 2026-06-19 08:28:10
[2026-06-19 08:28:10,588.588 INFO    ] 2026-06-19 08:28:10
[2026-06-19 08:28:10,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:28:10,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:28:10,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:28:11,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:28:11,096.096 INFO    ] time= 19/06/2026 08:28:11
[2026-06-19 08:28:11,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:28:11,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:28:11,296.296 INFO    ] No existing commands found in stream
[2026-06-19 08:28:16,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:28:16,329.329 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 08:28:17,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:28:17,978.978 INFO    ] Checking for system updates...
[2026-06-19 08:28:18,015.015 INFO    ] 200
[2026-06-19 08:28:18,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:18,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:28:18,083.083 INFO    ] No update needed
[2026-06-19 08:28:18,086.086 INFO    ] Checking for camera pi updates...
[2026-06-19 08:28:18,121.121 INFO    ] 200
[2026-06-19 08:28:18,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:18,166.166 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:28:18,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:28:18,218.218 INFO    ] No camera update needed
[2026-06-19 08:28:18,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:28:18,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:28:18,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:28:18,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:28:20,276.276 INFO    ] ================================================
[2026-06-19 08:28:20,291.291 INFO    ] Launching Daemon at Fri Jun 19 08:28:20 IST 2026
[2026-06-19 08:28:20,302.302 INFO    ] ================================================
[2026-06-19 08:28:20,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:28:20
[2026-06-19 08:28:21,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:28:21,757.757 INFO    ] Initializing speech engine...
[2026-06-19 08:28:21,782.782 INFO    ] 2026-06-19 08:28:21
[2026-06-19 08:28:22,061.061 INFO    ] 2026-06-19 08:28:22
[2026-06-19 08:28:22,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:28:22,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:28:22,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:28:22,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:28:22,449.449 INFO    ] time= 19/06/2026 08:28:22
[2026-06-19 08:28:22,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:28:22,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:28:22,576.576 INFO    ] No existing commands found in stream
[2026-06-19 08:28:27,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:28:27,592.592 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 08:28:31,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:28:31,282.282 INFO    ] Checking for system updates...
[2026-06-19 08:28:31,331.331 INFO    ] 200
[2026-06-19 08:28:31,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:31,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:28:31,389.389 INFO    ] No update needed
[2026-06-19 08:28:31,392.392 INFO    ] Checking for camera pi updates...
[2026-06-19 08:28:31,430.430 INFO    ] 200
[2026-06-19 08:28:31,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:31,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:28:31,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:28:31,617.617 INFO    ] No camera update needed
[2026-06-19 08:28:31,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:28:31,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:28:31,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:28:31,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:28:33,678.678 INFO    ] ================================================
[2026-06-19 08:28:33,693.693 INFO    ] Launching Daemon at Fri Jun 19 08:28:33 IST 2026
[2026-06-19 08:28:33,704.704 INFO    ] ================================================
[2026-06-19 08:28:34,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:28:34
[2026-06-19 08:28:34,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:28:35,131.131 INFO    ] Initializing speech engine...
[2026-06-19 08:28:35,147.147 INFO    ] 2026-06-19 08:28:35
[2026-06-19 08:28:35,421.421 INFO    ] 2026-06-19 08:28:35
[2026-06-19 08:28:35,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:28:35,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:28:35,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:28:35,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:28:35,803.803 INFO    ] time= 19/06/2026 08:28:35
[2026-06-19 08:28:35,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:28:35,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:28:35,929.929 INFO    ] No existing commands found in stream
[2026-06-19 08:28:40,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:28:40,944.944 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 08:28:44,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:28:44,868.868 INFO    ] Checking for system updates...
[2026-06-19 08:28:44,904.904 INFO    ] 200
[2026-06-19 08:28:44,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:44,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:28:44,964.964 INFO    ] No update needed
[2026-06-19 08:28:44,967.967 INFO    ] Checking for camera pi updates...
[2026-06-19 08:28:45,001.001 INFO    ] 200
[2026-06-19 08:28:45,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:45,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:28:45,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:28:45,089.089 INFO    ] No camera update needed
[2026-06-19 08:28:45,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:28:45,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:28:45,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:28:45,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:28:47,146.146 INFO    ] ================================================
[2026-06-19 08:28:47,162.162 INFO    ] Launching Daemon at Fri Jun 19 08:28:47 IST 2026
[2026-06-19 08:28:47,173.173 INFO    ] ================================================
[2026-06-19 08:28:47,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:28:47
[2026-06-19 08:28:48,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:28:48,802.802 INFO    ] Initializing speech engine...
[2026-06-19 08:28:48,823.823 INFO    ] 2026-06-19 08:28:48
[2026-06-19 08:28:49,104.104 INFO    ] 2026-06-19 08:28:49
[2026-06-19 08:28:49,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:28:49,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:28:49,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:28:49,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:28:49,581.581 INFO    ] time= 19/06/2026 08:28:49
[2026-06-19 08:28:49,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:28:49,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:28:49,737.737 INFO    ] No existing commands found in stream
[2026-06-19 08:28:54,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:28:54,754.754 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 08:28:57,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:28:57,539.539 INFO    ] Checking for system updates...
[2026-06-19 08:28:57,577.577 INFO    ] 200
[2026-06-19 08:28:57,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:57,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:28:57,646.646 INFO    ] No update needed
[2026-06-19 08:28:57,649.649 INFO    ] Checking for camera pi updates...
[2026-06-19 08:28:57,684.684 INFO    ] 200
[2026-06-19 08:28:57,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:28:57,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:28:57,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:28:57,793.793 INFO    ] No camera update needed
[2026-06-19 08:28:57,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:28:57,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:28:57,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:28:57,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:28:59,853.853 INFO    ] ================================================
[2026-06-19 08:28:59,868.868 INFO    ] Launching Daemon at Fri Jun 19 08:28:59 IST 2026
[2026-06-19 08:28:59,879.879 INFO    ] ================================================
[2026-06-19 08:29:00,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:29:00
[2026-06-19 08:29:01,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:29:01,533.533 INFO    ] Initializing speech engine...
[2026-06-19 08:29:01,536.536 INFO    ] 2026-06-19 08:29:01
[2026-06-19 08:29:01,943.943 INFO    ] 2026-06-19 08:29:01
[2026-06-19 08:29:02,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:29:02,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:29:02,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:29:02,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:29:02,423.423 INFO    ] time= 19/06/2026 08:29:02
[2026-06-19 08:29:02,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:29:02,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:29:02,573.573 INFO    ] No existing commands found in stream
[2026-06-19 08:29:07,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:29:07,607.607 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 08:29:10,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:29:10,237.237 INFO    ] Checking for system updates...
[2026-06-19 08:29:10,273.273 INFO    ] 200
[2026-06-19 08:29:10,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:29:10,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:29:10,339.339 INFO    ] No update needed
[2026-06-19 08:29:10,341.341 INFO    ] Checking for camera pi updates...
[2026-06-19 08:29:10,380.380 INFO    ] 200
[2026-06-19 08:29:10,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:29:10,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:29:10,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:29:10,466.466 INFO    ] No camera update needed
[2026-06-19 08:29:10,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:29:10,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:29:10,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:29:10,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:29:12,522.522 INFO    ] ================================================
[2026-06-19 08:29:12,538.538 INFO    ] Launching Daemon at Fri Jun 19 08:29:12 IST 2026
[2026-06-19 08:29:12,549.549 INFO    ] ================================================
[2026-06-19 08:29:13,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:29:13
[2026-06-19 08:29:13,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:29:13,948.948 INFO    ] Initializing speech engine...
[2026-06-19 08:29:13,956.956 INFO    ] 2026-06-19 08:29:13
[2026-06-19 08:29:14,230.230 INFO    ] 2026-06-19 08:29:14
[2026-06-19 08:29:14,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:29:14,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:29:14,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:29:14,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:29:14,607.607 INFO    ] time= 19/06/2026 08:29:14
[2026-06-19 08:29:14,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:29:14,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:29:14,767.767 INFO    ] No existing commands found in stream
[2026-06-19 08:29:19,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:29:19,794.794 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 08:29:21,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:29:21,835.835 INFO    ] Checking for system updates...
[2026-06-19 08:29:21,872.872 INFO    ] 200
[2026-06-19 08:29:21,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:29:21,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:29:21,930.930 INFO    ] No update needed
[2026-06-19 08:29:21,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 08:29:21,966.966 INFO    ] 200
[2026-06-19 08:29:21,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:29:22,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:29:22,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:29:22,052.052 INFO    ] No camera update needed
[2026-06-19 08:29:22,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:29:22,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:29:22,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:29:22,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:29:24,107.107 INFO    ] ================================================
[2026-06-19 08:29:24,121.121 INFO    ] Launching Daemon at Fri Jun 19 08:29:24 IST 2026
[2026-06-19 08:29:24,132.132 INFO    ] ================================================
[2026-06-19 08:29:24,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:29:24
[2026-06-19 08:29:25,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:29:25,792.792 INFO    ] Initializing speech engine...
[2026-06-19 08:29:25,800.800 INFO    ] 2026-06-19 08:29:25
[2026-06-19 08:29:26,093.093 INFO    ] 2026-06-19 08:29:26
[2026-06-19 08:29:26,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:29:26,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:29:26,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:29:26,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:29:26,599.599 INFO    ] time= 19/06/2026 08:29:26
[2026-06-19 08:29:26,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:29:26,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:29:26,778.778 INFO    ] No existing commands found in stream
[2026-06-19 08:29:31,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:29:31,810.810 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 08:29:34,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:29:34,746.746 INFO    ] Checking for system updates...
[2026-06-19 08:29:34,782.782 INFO    ] 200
[2026-06-19 08:29:34,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:29:34,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:29:34,843.843 INFO    ] No update needed
[2026-06-19 08:29:34,845.845 INFO    ] Checking for camera pi updates...
[2026-06-19 08:29:34,879.879 INFO    ] 200
[2026-06-19 08:29:34,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:29:34,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:29:34,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:29:34,973.973 INFO    ] No camera update needed
[2026-06-19 08:29:34,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:29:34,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:29:34,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:29:34,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:29:37,030.030 INFO    ] ================================================
[2026-06-19 08:29:37,045.045 INFO    ] Launching Daemon at Fri Jun 19 08:29:37 IST 2026
[2026-06-19 08:29:37,056.056 INFO    ] ================================================
[2026-06-19 08:29:37,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:29:37
[2026-06-19 08:29:38,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:29:38,479.479 INFO    ] Initializing speech engine...
[2026-06-19 08:29:38,489.489 INFO    ] 2026-06-19 08:29:38
[2026-06-19 08:29:38,745.745 INFO    ] 2026-06-19 08:29:38
[2026-06-19 08:29:38,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:29:38,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:29:38,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:29:39,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:29:39,112.112 INFO    ] time= 19/06/2026 08:29:39
[2026-06-19 08:29:39,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:29:39,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:29:39,202.202 INFO    ] No existing commands found in stream
[2026-06-19 08:29:44,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:29:44,217.217 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 08:29:50,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:29:50,295.295 INFO    ] Checking for system updates...
[2026-06-19 08:29:50,335.335 INFO    ] 200
[2026-06-19 08:29:50,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:29:50,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:29:50,392.392 INFO    ] No update needed
[2026-06-19 08:29:50,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 08:29:50,432.432 INFO    ] 200
[2026-06-19 08:29:50,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:29:50,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:29:50,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:29:50,532.532 INFO    ] No camera update needed
[2026-06-19 08:29:50,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:29:50,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:29:50,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:29:50,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:29:52,590.590 INFO    ] ================================================
[2026-06-19 08:29:52,605.605 INFO    ] Launching Daemon at Fri Jun 19 08:29:52 IST 2026
[2026-06-19 08:29:52,617.617 INFO    ] ================================================
[2026-06-19 08:29:53,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:29:53
[2026-06-19 08:29:53,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:29:54,028.028 INFO    ] Initializing speech engine...
[2026-06-19 08:29:54,034.034 INFO    ] 2026-06-19 08:29:54
[2026-06-19 08:29:54,328.328 INFO    ] 2026-06-19 08:29:54
[2026-06-19 08:29:54,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:29:54,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:29:54,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:29:54,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:29:54,710.710 INFO    ] time= 19/06/2026 08:29:54
[2026-06-19 08:29:54,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:29:54,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:29:54,837.837 INFO    ] No existing commands found in stream
[2026-06-19 08:29:59,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:29:59,850.850 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 08:30:02,903.903 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:30:02,906.906 INFO    ] Checking for system updates...
[2026-06-19 08:30:02,961.961 INFO    ] 200
[2026-06-19 08:30:02,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:03,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:30:03,041.041 INFO    ] No update needed
[2026-06-19 08:30:03,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 08:30:03,094.094 INFO    ] 200
[2026-06-19 08:30:03,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:03,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:30:03,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:30:03,212.212 INFO    ] No camera update needed
[2026-06-19 08:30:03,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:30:03,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:30:03,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:30:03,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:30:05,283.283 INFO    ] ================================================
[2026-06-19 08:30:05,299.299 INFO    ] Launching Daemon at Fri Jun 19 08:30:05 IST 2026
[2026-06-19 08:30:05,309.309 INFO    ] ================================================
[2026-06-19 08:30:05,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:30:05
[2026-06-19 08:30:06,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:30:06,929.929 INFO    ] Initializing speech engine...
[2026-06-19 08:30:06,941.941 INFO    ] 2026-06-19 08:30:06
[2026-06-19 08:30:07,209.209 INFO    ] 2026-06-19 08:30:07
[2026-06-19 08:30:07,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:30:07,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:30:07,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:30:07,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:30:07,668.668 INFO    ] time= 19/06/2026 08:30:07
[2026-06-19 08:30:07,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:30:07,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:30:07,826.826 INFO    ] No existing commands found in stream
[2026-06-19 08:30:12,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:30:12,866.866 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 08:30:16,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:30:16,546.546 INFO    ] Checking for system updates...
[2026-06-19 08:30:16,582.582 INFO    ] 200
[2026-06-19 08:30:16,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:16,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:30:16,640.640 INFO    ] No update needed
[2026-06-19 08:30:16,643.643 INFO    ] Checking for camera pi updates...
[2026-06-19 08:30:16,681.681 INFO    ] 200
[2026-06-19 08:30:16,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:16,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:30:16,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:30:16,774.774 INFO    ] No camera update needed
[2026-06-19 08:30:16,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:30:16,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:30:16,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:30:16,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:30:18,830.830 INFO    ] ================================================
[2026-06-19 08:30:18,846.846 INFO    ] Launching Daemon at Fri Jun 19 08:30:18 IST 2026
[2026-06-19 08:30:18,857.857 INFO    ] ================================================
[2026-06-19 08:30:19,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:30:19
[2026-06-19 08:30:20,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:30:20,286.286 INFO    ] Initializing speech engine...
[2026-06-19 08:30:20,295.295 INFO    ] 2026-06-19 08:30:20
[2026-06-19 08:30:20,545.545 INFO    ] 2026-06-19 08:30:20
[2026-06-19 08:30:20,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:30:20,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:30:20,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:30:20,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:30:21,028.028 INFO    ] time= 19/06/2026 08:30:20
[2026-06-19 08:30:21,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:30:21,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:30:21,180.180 INFO    ] No existing commands found in stream
[2026-06-19 08:30:26,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:30:26,195.195 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 08:30:27,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:30:27,795.795 INFO    ] Checking for system updates...
[2026-06-19 08:30:27,835.835 INFO    ] 200
[2026-06-19 08:30:27,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:27,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:30:27,892.892 INFO    ] No update needed
[2026-06-19 08:30:27,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 08:30:27,928.928 INFO    ] 200
[2026-06-19 08:30:27,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:27,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:30:28,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:30:28,016.016 INFO    ] No camera update needed
[2026-06-19 08:30:28,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:30:28,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:30:28,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:30:28,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:30:30,072.072 INFO    ] ================================================
[2026-06-19 08:30:30,087.087 INFO    ] Launching Daemon at Fri Jun 19 08:30:30 IST 2026
[2026-06-19 08:30:30,098.098 INFO    ] ================================================
[2026-06-19 08:30:30,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:30:30
[2026-06-19 08:30:31,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:30:31,731.731 INFO    ] Initializing speech engine...
[2026-06-19 08:30:31,748.748 INFO    ] 2026-06-19 08:30:31
[2026-06-19 08:30:32,070.070 INFO    ] 2026-06-19 08:30:32
[2026-06-19 08:30:32,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:30:32,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:30:32,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:30:32,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:30:32,526.526 INFO    ] time= 19/06/2026 08:30:32
[2026-06-19 08:30:32,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:30:32,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:30:32,711.711 INFO    ] No existing commands found in stream
[2026-06-19 08:30:37,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:30:37,726.726 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 08:30:40,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:30:40,330.330 INFO    ] Checking for system updates...
[2026-06-19 08:30:40,367.367 INFO    ] 200
[2026-06-19 08:30:40,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:40,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:30:40,431.431 INFO    ] No update needed
[2026-06-19 08:30:40,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 08:30:40,468.468 INFO    ] 200
[2026-06-19 08:30:40,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:40,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:30:40,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:30:40,661.661 INFO    ] No camera update needed
[2026-06-19 08:30:40,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:30:40,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:30:40,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:30:40,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:30:42,718.718 INFO    ] ================================================
[2026-06-19 08:30:42,734.734 INFO    ] Launching Daemon at Fri Jun 19 08:30:42 IST 2026
[2026-06-19 08:30:42,744.744 INFO    ] ================================================
[2026-06-19 08:30:43,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:30:43
[2026-06-19 08:30:43,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:30:44,191.191 INFO    ] Initializing speech engine...
[2026-06-19 08:30:44,200.200 INFO    ] 2026-06-19 08:30:44
[2026-06-19 08:30:44,458.458 INFO    ] 2026-06-19 08:30:44
[2026-06-19 08:30:44,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:30:44,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:30:44,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:30:44,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:30:44,932.932 INFO    ] time= 19/06/2026 08:30:44
[2026-06-19 08:30:44,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:30:45,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:30:45,114.114 INFO    ] No existing commands found in stream
[2026-06-19 08:30:50,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:30:50,149.149 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 08:30:50,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:30:50,579.579 INFO    ] Checking for system updates...
[2026-06-19 08:30:50,621.621 INFO    ] 200
[2026-06-19 08:30:50,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:50,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:30:50,692.692 INFO    ] No update needed
[2026-06-19 08:30:50,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 08:30:50,735.735 INFO    ] 200
[2026-06-19 08:30:50,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:30:50,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:30:50,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:30:50,835.835 INFO    ] No camera update needed
[2026-06-19 08:30:50,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:30:50,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:30:50,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:30:50,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:30:52,892.892 INFO    ] ================================================
[2026-06-19 08:30:52,908.908 INFO    ] Launching Daemon at Fri Jun 19 08:30:52 IST 2026
[2026-06-19 08:30:52,919.919 INFO    ] ================================================
[2026-06-19 08:30:53,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:30:53
[2026-06-19 08:30:54,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:30:54,361.361 INFO    ] Initializing speech engine...
[2026-06-19 08:30:54,367.367 INFO    ] 2026-06-19 08:30:54
[2026-06-19 08:30:54,632.632 INFO    ] 2026-06-19 08:30:54
[2026-06-19 08:30:54,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:30:54,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:30:54,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:30:55,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:30:55,119.119 INFO    ] time= 19/06/2026 08:30:55
[2026-06-19 08:30:55,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:30:55,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:30:55,309.309 INFO    ] No existing commands found in stream
[2026-06-19 08:31:00,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:31:00,343.343 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 08:31:01,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:31:01,649.649 INFO    ] Checking for system updates...
[2026-06-19 08:31:01,691.691 INFO    ] 200
[2026-06-19 08:31:01,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:01,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:31:01,856.856 INFO    ] No update needed
[2026-06-19 08:31:01,860.860 INFO    ] Checking for camera pi updates...
[2026-06-19 08:31:01,921.921 INFO    ] 200
[2026-06-19 08:31:01,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:02,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:31:02,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:31:02,052.052 INFO    ] No camera update needed
[2026-06-19 08:31:02,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:31:02,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:31:02,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:31:02,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:31:04,130.130 INFO    ] ================================================
[2026-06-19 08:31:04,146.146 INFO    ] Launching Daemon at Fri Jun 19 08:31:04 IST 2026
[2026-06-19 08:31:04,157.157 INFO    ] ================================================
[2026-06-19 08:31:04,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:31:04
[2026-06-19 08:31:05,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:31:05,774.774 INFO    ] Initializing speech engine...
[2026-06-19 08:31:05,788.788 INFO    ] 2026-06-19 08:31:05
[2026-06-19 08:31:06,099.099 INFO    ] 2026-06-19 08:31:06
[2026-06-19 08:31:06,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:31:06,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:31:06,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:31:06,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:31:06,582.582 INFO    ] time= 19/06/2026 08:31:06
[2026-06-19 08:31:06,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:31:06,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:31:06,765.765 INFO    ] No existing commands found in stream
[2026-06-19 08:31:11,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:31:11,800.800 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 08:31:15,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:31:15,798.798 INFO    ] Checking for system updates...
[2026-06-19 08:31:15,835.835 INFO    ] 200
[2026-06-19 08:31:15,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:15,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:31:15,894.894 INFO    ] No update needed
[2026-06-19 08:31:15,897.897 INFO    ] Checking for camera pi updates...
[2026-06-19 08:31:15,933.933 INFO    ] 200
[2026-06-19 08:31:15,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:15,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:31:16,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:31:16,021.021 INFO    ] No camera update needed
[2026-06-19 08:31:16,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:31:16,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:31:16,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:31:16,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:31:18,081.081 INFO    ] ================================================
[2026-06-19 08:31:18,096.096 INFO    ] Launching Daemon at Fri Jun 19 08:31:18 IST 2026
[2026-06-19 08:31:18,107.107 INFO    ] ================================================
[2026-06-19 08:31:18,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:31:18
[2026-06-19 08:31:19,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:31:19,666.666 INFO    ] Initializing speech engine...
[2026-06-19 08:31:19,677.677 INFO    ] 2026-06-19 08:31:19
[2026-06-19 08:31:19,965.965 INFO    ] 2026-06-19 08:31:19
[2026-06-19 08:31:20,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:31:20,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:31:20,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:31:20,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:31:20,429.429 INFO    ] time= 19/06/2026 08:31:20
[2026-06-19 08:31:20,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:31:20,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:31:20,657.657 INFO    ] No existing commands found in stream
[2026-06-19 08:31:25,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:31:25,689.689 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 08:31:28,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:31:28,368.368 INFO    ] Checking for system updates...
[2026-06-19 08:31:28,406.406 INFO    ] 200
[2026-06-19 08:31:28,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:28,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:31:28,471.471 INFO    ] No update needed
[2026-06-19 08:31:28,473.473 INFO    ] Checking for camera pi updates...
[2026-06-19 08:31:28,510.510 INFO    ] 200
[2026-06-19 08:31:28,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:28,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:31:28,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:31:28,606.606 INFO    ] No camera update needed
[2026-06-19 08:31:28,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:31:28,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:31:28,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:31:28,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:31:30,662.662 INFO    ] ================================================
[2026-06-19 08:31:30,678.678 INFO    ] Launching Daemon at Fri Jun 19 08:31:30 IST 2026
[2026-06-19 08:31:30,688.688 INFO    ] ================================================
[2026-06-19 08:31:31,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:31:31
[2026-06-19 08:31:32,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:31:32,337.337 INFO    ] Initializing speech engine...
[2026-06-19 08:31:32,344.344 INFO    ] 2026-06-19 08:31:32
[2026-06-19 08:31:32,620.620 INFO    ] 2026-06-19 08:31:32
[2026-06-19 08:31:32,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:31:32,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:31:32,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:31:33,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:31:33,088.088 INFO    ] time= 19/06/2026 08:31:33
[2026-06-19 08:31:33,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:31:33,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:31:33,283.283 INFO    ] No existing commands found in stream
[2026-06-19 08:31:38,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:31:38,300.300 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 08:31:42,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:31:42,211.211 INFO    ] Checking for system updates...
[2026-06-19 08:31:42,253.253 INFO    ] 200
[2026-06-19 08:31:42,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:42,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:31:42,328.328 INFO    ] No update needed
[2026-06-19 08:31:42,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 08:31:42,367.367 INFO    ] 200
[2026-06-19 08:31:42,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:42,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:31:42,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:31:42,463.463 INFO    ] No camera update needed
[2026-06-19 08:31:42,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:31:42,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:31:42,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:31:42,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:31:44,521.521 INFO    ] ================================================
[2026-06-19 08:31:44,536.536 INFO    ] Launching Daemon at Fri Jun 19 08:31:44 IST 2026
[2026-06-19 08:31:44,547.547 INFO    ] ================================================
[2026-06-19 08:31:45,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:31:45
[2026-06-19 08:31:45,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:31:46,225.225 INFO    ] Initializing speech engine...
[2026-06-19 08:31:46,238.238 INFO    ] 2026-06-19 08:31:46
[2026-06-19 08:31:46,524.524 INFO    ] 2026-06-19 08:31:46
[2026-06-19 08:31:46,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:31:46,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:31:46,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:31:47,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:31:47,056.056 INFO    ] time= 19/06/2026 08:31:47
[2026-06-19 08:31:47,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:31:47,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:31:47,211.211 INFO    ] No existing commands found in stream
[2026-06-19 08:31:52,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:31:52,236.236 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 08:31:54,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:31:54,175.175 INFO    ] Checking for system updates...
[2026-06-19 08:31:54,213.213 INFO    ] 200
[2026-06-19 08:31:54,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:54,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:31:54,271.271 INFO    ] No update needed
[2026-06-19 08:31:54,274.274 INFO    ] Checking for camera pi updates...
[2026-06-19 08:31:54,307.307 INFO    ] 200
[2026-06-19 08:31:54,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:31:54,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:31:54,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:31:54,393.393 INFO    ] No camera update needed
[2026-06-19 08:31:54,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:31:54,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:31:54,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:31:54,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:31:56,447.447 INFO    ] ================================================
[2026-06-19 08:31:56,462.462 INFO    ] Launching Daemon at Fri Jun 19 08:31:56 IST 2026
[2026-06-19 08:31:56,472.472 INFO    ] ================================================
[2026-06-19 08:31:57,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:31:57
[2026-06-19 08:31:57,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:31:58,085.085 INFO    ] Initializing speech engine...
[2026-06-19 08:31:58,099.099 INFO    ] 2026-06-19 08:31:58
[2026-06-19 08:31:58,384.384 INFO    ] 2026-06-19 08:31:58
[2026-06-19 08:31:58,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:31:58,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:31:58,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:31:58,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:31:58,921.921 INFO    ] time= 19/06/2026 08:31:58
[2026-06-19 08:31:58,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:31:58,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:31:59,075.075 INFO    ] No existing commands found in stream
[2026-06-19 08:32:04,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:32:04,094.094 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 08:32:04,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:32:04,688.688 INFO    ] Checking for system updates...
[2026-06-19 08:32:04,729.729 INFO    ] 200
[2026-06-19 08:32:04,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:32:04,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:32:04,794.794 INFO    ] No update needed
[2026-06-19 08:32:04,797.797 INFO    ] Checking for camera pi updates...
[2026-06-19 08:32:04,835.835 INFO    ] 200
[2026-06-19 08:32:04,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:32:04,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:32:04,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:32:04,921.921 INFO    ] No camera update needed
[2026-06-19 08:32:04,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:32:04,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:32:04,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:32:04,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:32:06,977.977 INFO    ] ================================================
[2026-06-19 08:32:06,991.991 INFO    ] Launching Daemon at Fri Jun 19 08:32:06 IST 2026
[2026-06-19 08:32:07,002.002 INFO    ] ================================================
[2026-06-19 08:32:07,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:32:07
[2026-06-19 08:32:08,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:32:08,405.405 INFO    ] Initializing speech engine...
[2026-06-19 08:32:08,420.420 INFO    ] 2026-06-19 08:32:08
[2026-06-19 08:32:08,687.687 INFO    ] 2026-06-19 08:32:08
[2026-06-19 08:32:08,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:32:08,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:32:08,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:32:09,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:32:09,039.039 INFO    ] time= 19/06/2026 08:32:09
[2026-06-19 08:32:09,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:32:09,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:32:09,138.138 INFO    ] No existing commands found in stream
[2026-06-19 08:32:14,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:32:14,153.153 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 08:32:17,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:32:17,945.945 INFO    ] Checking for system updates...
[2026-06-19 08:32:17,981.981 INFO    ] 200
[2026-06-19 08:32:17,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:32:18,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:32:18,040.040 INFO    ] No update needed
[2026-06-19 08:32:18,042.042 INFO    ] Checking for camera pi updates...
[2026-06-19 08:32:18,076.076 INFO    ] 200
[2026-06-19 08:32:18,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:32:18,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:32:18,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:32:18,171.171 INFO    ] No camera update needed
[2026-06-19 08:32:18,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:32:18,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:32:18,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:32:18,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:32:20,228.228 INFO    ] ================================================
[2026-06-19 08:32:20,243.243 INFO    ] Launching Daemon at Fri Jun 19 08:32:20 IST 2026
[2026-06-19 08:32:20,258.258 INFO    ] ================================================
[2026-06-19 08:32:20,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:32:20
[2026-06-19 08:32:21,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:32:21,691.691 INFO    ] Initializing speech engine...
[2026-06-19 08:32:21,700.700 INFO    ] 2026-06-19 08:32:21
[2026-06-19 08:32:21,971.971 INFO    ] 2026-06-19 08:32:21
[2026-06-19 08:32:22,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:32:22,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:32:22,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:32:22,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:32:22,419.419 INFO    ] time= 19/06/2026 08:32:22
[2026-06-19 08:32:22,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:32:22,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:32:22,574.574 INFO    ] No existing commands found in stream
[2026-06-19 08:32:27,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:32:27,609.609 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 08:32:28,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:32:28,118.118 INFO    ] Checking for system updates...
[2026-06-19 08:32:28,155.155 INFO    ] 200
[2026-06-19 08:32:28,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:32:28,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:32:28,213.213 INFO    ] No update needed
[2026-06-19 08:32:28,215.215 INFO    ] Checking for camera pi updates...
[2026-06-19 08:32:28,249.249 INFO    ] 200
[2026-06-19 08:32:28,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:32:28,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:32:28,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:32:28,340.340 INFO    ] No camera update needed
[2026-06-19 08:32:28,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:32:28,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:32:28,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:32:28,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:32:30,395.395 INFO    ] ================================================
[2026-06-19 08:32:30,411.411 INFO    ] Launching Daemon at Fri Jun 19 08:32:30 IST 2026
[2026-06-19 08:32:30,421.421 INFO    ] ================================================
[2026-06-19 08:32:31,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:32:31
[2026-06-19 08:32:31,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:32:31,925.925 INFO    ] Initializing speech engine...
[2026-06-19 08:32:31,934.934 INFO    ] 2026-06-19 08:32:31
[2026-06-19 08:32:32,218.218 INFO    ] 2026-06-19 08:32:32
[2026-06-19 08:32:32,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:32:32,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:32:32,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:32:32,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:32:32,639.639 INFO    ] time= 19/06/2026 08:32:32
[2026-06-19 08:32:32,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:32:32,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:32:32,775.775 INFO    ] No existing commands found in stream
[2026-06-19 08:32:37,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:32:37,793.793 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 08:32:39,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:32:39,301.301 INFO    ] Checking for system updates...
[2026-06-19 08:32:39,355.355 INFO    ] 200
[2026-06-19 08:32:39,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 08:32:39,361.361 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 08:32:39,363.363 INFO    ] Checking for camera pi updates...
[2026-06-19 08:32:39,410.410 INFO    ] 200
[2026-06-19 08:32:39,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 08:32:39,416.416 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 08:32:39,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:32:39,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:32:39,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:32:39,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:32:41,494.494 INFO    ] ================================================
[2026-06-19 08:32:41,510.510 INFO    ] Launching Daemon at Fri Jun 19 08:32:41 IST 2026
[2026-06-19 08:32:41,521.521 INFO    ] ================================================
[2026-06-19 08:32:42,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:32:42
[2026-06-19 08:32:42,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:32:43,167.167 INFO    ] Initializing speech engine...
[2026-06-19 08:32:43,179.179 INFO    ] 2026-06-19 08:32:43
[2026-06-19 08:32:43,458.458 INFO    ] 2026-06-19 08:32:43
[2026-06-19 08:32:43,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:32:43,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:32:43,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:32:43,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:32:43,996.996 INFO    ] time= 19/06/2026 08:32:43
[2026-06-19 08:32:44,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:32:44,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:32:44,153.153 INFO    ] No existing commands found in stream
[2026-06-19 08:32:49,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:32:49,180.180 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 08:32:52,084.084 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:32:52,087.087 INFO    ] Checking for system updates...
[2026-06-19 08:32:52,125.125 INFO    ] 200
[2026-06-19 08:32:52,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:32:52,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:32:52,192.192 INFO    ] No update needed
[2026-06-19 08:32:52,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 08:32:52,234.234 INFO    ] 200
[2026-06-19 08:32:52,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:32:52,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:32:52,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:32:52,426.426 INFO    ] No camera update needed
[2026-06-19 08:32:52,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:32:52,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:32:52,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:32:52,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:32:54,485.485 INFO    ] ================================================
[2026-06-19 08:32:54,500.500 INFO    ] Launching Daemon at Fri Jun 19 08:32:54 IST 2026
[2026-06-19 08:32:54,511.511 INFO    ] ================================================
[2026-06-19 08:32:55,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:32:55
[2026-06-19 08:32:55,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:32:56,138.138 INFO    ] Initializing speech engine...
[2026-06-19 08:32:56,146.146 INFO    ] 2026-06-19 08:32:56
[2026-06-19 08:32:56,432.432 INFO    ] 2026-06-19 08:32:56
[2026-06-19 08:32:56,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:32:56,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:32:56,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:32:56,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:32:56,904.904 INFO    ] time= 19/06/2026 08:32:56
[2026-06-19 08:32:56,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:32:56,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:32:57,087.087 INFO    ] No existing commands found in stream
[2026-06-19 08:33:02,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:33:02,121.121 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 08:33:04,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:33:04,504.504 INFO    ] Checking for system updates...
[2026-06-19 08:33:04,546.546 INFO    ] 200
[2026-06-19 08:33:04,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:04,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:33:04,611.611 INFO    ] No update needed
[2026-06-19 08:33:04,613.613 INFO    ] Checking for camera pi updates...
[2026-06-19 08:33:04,653.653 INFO    ] 200
[2026-06-19 08:33:04,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:04,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:33:04,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:33:04,762.762 INFO    ] No camera update needed
[2026-06-19 08:33:04,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:33:04,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:33:04,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:33:04,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:33:06,821.821 INFO    ] ================================================
[2026-06-19 08:33:06,836.836 INFO    ] Launching Daemon at Fri Jun 19 08:33:06 IST 2026
[2026-06-19 08:33:06,847.847 INFO    ] ================================================
[2026-06-19 08:33:07,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:33:07
[2026-06-19 08:33:08,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:33:08,488.488 INFO    ] Initializing speech engine...
[2026-06-19 08:33:08,497.497 INFO    ] 2026-06-19 08:33:08
[2026-06-19 08:33:08,787.787 INFO    ] 2026-06-19 08:33:08
[2026-06-19 08:33:08,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:33:09,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:33:09,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:33:09,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:33:09,274.274 INFO    ] time= 19/06/2026 08:33:09
[2026-06-19 08:33:09,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:33:09,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:33:09,472.472 INFO    ] No existing commands found in stream
[2026-06-19 08:33:14,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:33:14,498.498 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 08:33:17,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:33:17,782.782 INFO    ] Checking for system updates...
[2026-06-19 08:33:17,820.820 INFO    ] 200
[2026-06-19 08:33:17,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:17,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:33:17,886.886 INFO    ] No update needed
[2026-06-19 08:33:17,889.889 INFO    ] Checking for camera pi updates...
[2026-06-19 08:33:17,925.925 INFO    ] 200
[2026-06-19 08:33:17,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:17,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:33:18,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:33:18,015.015 INFO    ] No camera update needed
[2026-06-19 08:33:18,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:33:18,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:33:18,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:33:18,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:33:20,074.074 INFO    ] ================================================
[2026-06-19 08:33:20,090.090 INFO    ] Launching Daemon at Fri Jun 19 08:33:20 IST 2026
[2026-06-19 08:33:20,101.101 INFO    ] ================================================
[2026-06-19 08:33:20,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:33:20
[2026-06-19 08:33:21,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:33:21,525.525 INFO    ] Initializing speech engine...
[2026-06-19 08:33:21,533.533 INFO    ] 2026-06-19 08:33:21
[2026-06-19 08:33:21,783.783 INFO    ] 2026-06-19 08:33:21
[2026-06-19 08:33:21,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:33:22,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:33:22,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:33:22,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:33:22,228.228 INFO    ] time= 19/06/2026 08:33:22
[2026-06-19 08:33:22,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:33:22,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:33:22,409.409 INFO    ] No existing commands found in stream
[2026-06-19 08:33:27,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:33:27,424.424 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 08:33:29,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:33:29,951.951 INFO    ] Checking for system updates...
[2026-06-19 08:33:29,990.990 INFO    ] 200
[2026-06-19 08:33:29,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:30,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:33:30,049.049 INFO    ] No update needed
[2026-06-19 08:33:30,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 08:33:30,086.086 INFO    ] 200
[2026-06-19 08:33:30,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:30,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:33:30,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:33:30,177.177 INFO    ] No camera update needed
[2026-06-19 08:33:30,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:33:30,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:33:30,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:33:30,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:33:32,235.235 INFO    ] ================================================
[2026-06-19 08:33:32,252.252 INFO    ] Launching Daemon at Fri Jun 19 08:33:32 IST 2026
[2026-06-19 08:33:32,264.264 INFO    ] ================================================
[2026-06-19 08:33:32,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:33:32
[2026-06-19 08:33:33,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:33:33,809.809 INFO    ] Initializing speech engine...
[2026-06-19 08:33:33,823.823 INFO    ] 2026-06-19 08:33:33
[2026-06-19 08:33:34,095.095 INFO    ] 2026-06-19 08:33:34
[2026-06-19 08:33:34,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:33:34,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:33:34,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:33:34,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:33:34,571.571 INFO    ] time= 19/06/2026 08:33:34
[2026-06-19 08:33:34,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:33:34,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:33:34,723.723 INFO    ] No existing commands found in stream
[2026-06-19 08:33:39,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:33:39,738.738 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 08:33:40,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:33:40,853.853 INFO    ] Checking for system updates...
[2026-06-19 08:33:40,890.890 INFO    ] 200
[2026-06-19 08:33:40,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:40,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:33:40,955.955 INFO    ] No update needed
[2026-06-19 08:33:40,959.959 INFO    ] Checking for camera pi updates...
[2026-06-19 08:33:40,997.997 INFO    ] 200
[2026-06-19 08:33:40,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:41,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:33:41,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:33:41,085.085 INFO    ] No camera update needed
[2026-06-19 08:33:41,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:33:41,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:33:41,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:33:41,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:33:43,144.144 INFO    ] ================================================
[2026-06-19 08:33:43,159.159 INFO    ] Launching Daemon at Fri Jun 19 08:33:43 IST 2026
[2026-06-19 08:33:43,171.171 INFO    ] ================================================
[2026-06-19 08:33:43,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:33:43
[2026-06-19 08:33:44,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:33:44,783.783 INFO    ] Initializing speech engine...
[2026-06-19 08:33:44,793.793 INFO    ] 2026-06-19 08:33:44
[2026-06-19 08:33:45,066.066 INFO    ] 2026-06-19 08:33:45
[2026-06-19 08:33:45,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:33:45,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:33:45,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:33:45,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:33:45,521.521 INFO    ] time= 19/06/2026 08:33:45
[2026-06-19 08:33:45,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:33:45,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:33:45,697.697 INFO    ] No existing commands found in stream
[2026-06-19 08:33:50,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:33:50,713.713 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 08:33:54,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:33:54,758.758 INFO    ] Checking for system updates...
[2026-06-19 08:33:54,795.795 INFO    ] 200
[2026-06-19 08:33:54,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:54,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:33:54,854.854 INFO    ] No update needed
[2026-06-19 08:33:54,857.857 INFO    ] Checking for camera pi updates...
[2026-06-19 08:33:54,893.893 INFO    ] 200
[2026-06-19 08:33:54,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:33:54,938.938 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:33:54,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:33:54,986.986 INFO    ] No camera update needed
[2026-06-19 08:33:54,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:33:54,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:33:54,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:33:55,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:33:57,045.045 INFO    ] ================================================
[2026-06-19 08:33:57,060.060 INFO    ] Launching Daemon at Fri Jun 19 08:33:57 IST 2026
[2026-06-19 08:33:57,070.070 INFO    ] ================================================
[2026-06-19 08:33:57,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:33:57
[2026-06-19 08:33:58,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:33:58,490.490 INFO    ] Initializing speech engine...
[2026-06-19 08:33:58,499.499 INFO    ] 2026-06-19 08:33:58
[2026-06-19 08:33:58,789.789 INFO    ] 2026-06-19 08:33:58
[2026-06-19 08:33:58,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:33:59,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:33:59,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:33:59,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:33:59,207.207 INFO    ] time= 19/06/2026 08:33:59
[2026-06-19 08:33:59,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:33:59,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:33:59,349.349 INFO    ] No existing commands found in stream
[2026-06-19 08:34:04,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:34:04,377.377 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 08:34:06,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:34:06,148.148 INFO    ] Checking for system updates...
[2026-06-19 08:34:06,186.186 INFO    ] 200
[2026-06-19 08:34:06,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:06,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:34:06,261.261 INFO    ] No update needed
[2026-06-19 08:34:06,264.264 INFO    ] Checking for camera pi updates...
[2026-06-19 08:34:06,306.306 INFO    ] 200
[2026-06-19 08:34:06,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:06,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:34:06,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:34:06,398.398 INFO    ] No camera update needed
[2026-06-19 08:34:06,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:34:06,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:34:06,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:34:06,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:34:08,453.453 INFO    ] ================================================
[2026-06-19 08:34:08,468.468 INFO    ] Launching Daemon at Fri Jun 19 08:34:08 IST 2026
[2026-06-19 08:34:08,479.479 INFO    ] ================================================
[2026-06-19 08:34:09,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:34:09
[2026-06-19 08:34:09,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:34:09,915.915 INFO    ] Initializing speech engine...
[2026-06-19 08:34:09,938.938 INFO    ] 2026-06-19 08:34:09
[2026-06-19 08:34:10,192.192 INFO    ] 2026-06-19 08:34:10
[2026-06-19 08:34:10,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:34:10,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:34:10,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:34:10,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:34:10,705.705 INFO    ] time= 19/06/2026 08:34:10
[2026-06-19 08:34:10,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:34:10,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:34:10,872.872 INFO    ] No existing commands found in stream
[2026-06-19 08:34:15,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:34:15,898.898 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 08:34:18,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:34:18,867.867 INFO    ] Checking for system updates...
[2026-06-19 08:34:18,903.903 INFO    ] 200
[2026-06-19 08:34:18,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:18,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:34:18,968.968 INFO    ] No update needed
[2026-06-19 08:34:18,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 08:34:19,005.005 INFO    ] 200
[2026-06-19 08:34:19,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:19,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:34:19,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:34:19,092.092 INFO    ] No camera update needed
[2026-06-19 08:34:19,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:34:19,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:34:19,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:34:19,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:34:21,148.148 INFO    ] ================================================
[2026-06-19 08:34:21,164.164 INFO    ] Launching Daemon at Fri Jun 19 08:34:21 IST 2026
[2026-06-19 08:34:21,175.175 INFO    ] ================================================
[2026-06-19 08:34:21,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:34:21
[2026-06-19 08:34:22,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:34:22,609.609 INFO    ] Initializing speech engine...
[2026-06-19 08:34:22,619.619 INFO    ] 2026-06-19 08:34:22
[2026-06-19 08:34:22,868.868 INFO    ] 2026-06-19 08:34:22
[2026-06-19 08:34:22,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:34:23,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:34:23,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:34:23,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:34:23,251.251 INFO    ] time= 19/06/2026 08:34:23
[2026-06-19 08:34:23,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:34:23,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:34:23,450.450 INFO    ] No existing commands found in stream
[2026-06-19 08:34:28,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:34:28,463.463 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 08:34:32,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:34:32,147.147 INFO    ] Checking for system updates...
[2026-06-19 08:34:32,193.193 INFO    ] 200
[2026-06-19 08:34:32,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:32,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:34:32,258.258 INFO    ] No update needed
[2026-06-19 08:34:32,261.261 INFO    ] Checking for camera pi updates...
[2026-06-19 08:34:32,297.297 INFO    ] 200
[2026-06-19 08:34:32,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:32,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:34:32,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:34:32,383.383 INFO    ] No camera update needed
[2026-06-19 08:34:32,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:34:32,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:34:32,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:34:32,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:34:34,444.444 INFO    ] ================================================
[2026-06-19 08:34:34,459.459 INFO    ] Launching Daemon at Fri Jun 19 08:34:34 IST 2026
[2026-06-19 08:34:34,471.471 INFO    ] ================================================
[2026-06-19 08:34:35,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:34:35
[2026-06-19 08:34:35,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:34:35,921.921 INFO    ] Initializing speech engine...
[2026-06-19 08:34:35,934.934 INFO    ] 2026-06-19 08:34:35
[2026-06-19 08:34:36,219.219 INFO    ] 2026-06-19 08:34:36
[2026-06-19 08:34:36,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:34:36,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:34:36,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:34:36,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:34:36,639.639 INFO    ] time= 19/06/2026 08:34:36
[2026-06-19 08:34:36,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:34:36,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:34:36,722.722 INFO    ] No existing commands found in stream
[2026-06-19 08:34:41,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:34:41,738.738 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 08:34:44,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:34:44,415.415 INFO    ] Checking for system updates...
[2026-06-19 08:34:44,452.452 INFO    ] 200
[2026-06-19 08:34:44,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:44,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:34:44,512.512 INFO    ] No update needed
[2026-06-19 08:34:44,515.515 INFO    ] Checking for camera pi updates...
[2026-06-19 08:34:44,550.550 INFO    ] 200
[2026-06-19 08:34:44,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:44,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:34:44,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:34:44,649.649 INFO    ] No camera update needed
[2026-06-19 08:34:44,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:34:44,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:34:44,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:34:44,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:34:46,709.709 INFO    ] ================================================
[2026-06-19 08:34:46,725.725 INFO    ] Launching Daemon at Fri Jun 19 08:34:46 IST 2026
[2026-06-19 08:34:46,736.736 INFO    ] ================================================
[2026-06-19 08:34:47,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:34:47
[2026-06-19 08:34:47,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:34:48,178.178 INFO    ] Initializing speech engine...
[2026-06-19 08:34:48,191.191 INFO    ] 2026-06-19 08:34:48
[2026-06-19 08:34:48,479.479 INFO    ] 2026-06-19 08:34:48
[2026-06-19 08:34:48,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:34:48,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:34:48,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:34:48,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:34:48,987.987 INFO    ] time= 19/06/2026 08:34:48
[2026-06-19 08:34:49,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:34:49,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:34:49,173.173 INFO    ] No existing commands found in stream
[2026-06-19 08:34:54,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:34:54,188.188 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 08:34:54,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:34:54,832.832 INFO    ] Checking for system updates...
[2026-06-19 08:34:54,869.869 INFO    ] 200
[2026-06-19 08:34:54,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:54,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:34:54,929.929 INFO    ] No update needed
[2026-06-19 08:34:54,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 08:34:54,966.966 INFO    ] 200
[2026-06-19 08:34:54,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:34:55,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:34:55,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:34:55,158.158 INFO    ] No camera update needed
[2026-06-19 08:34:55,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:34:55,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:34:55,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:34:55,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:34:57,217.217 INFO    ] ================================================
[2026-06-19 08:34:57,233.233 INFO    ] Launching Daemon at Fri Jun 19 08:34:57 IST 2026
[2026-06-19 08:34:57,244.244 INFO    ] ================================================
[2026-06-19 08:34:57,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:34:57
[2026-06-19 08:34:58,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:34:58,673.673 INFO    ] Initializing speech engine...
[2026-06-19 08:34:58,697.697 INFO    ] 2026-06-19 08:34:58
[2026-06-19 08:34:58,951.951 INFO    ] 2026-06-19 08:34:58
[2026-06-19 08:34:58,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:34:59,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:34:59,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:34:59,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:34:59,331.331 INFO    ] time= 19/06/2026 08:34:59
[2026-06-19 08:34:59,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:34:59,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:34:59,500.500 INFO    ] No existing commands found in stream
[2026-06-19 08:35:04,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:35:04,533.533 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 08:35:07,434.434 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:35:07,436.436 INFO    ] Checking for system updates...
[2026-06-19 08:35:07,477.477 INFO    ] 200
[2026-06-19 08:35:07,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:07,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:35:07,533.533 INFO    ] No update needed
[2026-06-19 08:35:07,536.536 INFO    ] Checking for camera pi updates...
[2026-06-19 08:35:07,570.570 INFO    ] 200
[2026-06-19 08:35:07,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:07,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:35:07,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:35:07,656.656 INFO    ] No camera update needed
[2026-06-19 08:35:07,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:35:07,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:35:07,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:35:07,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:35:09,712.712 INFO    ] ================================================
[2026-06-19 08:35:09,728.728 INFO    ] Launching Daemon at Fri Jun 19 08:35:09 IST 2026
[2026-06-19 08:35:09,738.738 INFO    ] ================================================
[2026-06-19 08:35:10,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:35:10
[2026-06-19 08:35:10,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:35:11,153.153 INFO    ] Initializing speech engine...
[2026-06-19 08:35:11,162.162 INFO    ] 2026-06-19 08:35:11
[2026-06-19 08:35:11,455.455 INFO    ] 2026-06-19 08:35:11
[2026-06-19 08:35:11,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:35:11,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:35:11,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:35:11,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:35:11,851.851 INFO    ] time= 19/06/2026 08:35:11
[2026-06-19 08:35:11,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:35:11,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:35:11,959.959 INFO    ] No existing commands found in stream
[2026-06-19 08:35:16,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:35:16,974.974 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 08:35:19,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:35:19,060.060 INFO    ] Checking for system updates...
[2026-06-19 08:35:19,098.098 INFO    ] 200
[2026-06-19 08:35:19,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:19,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:35:19,158.158 INFO    ] No update needed
[2026-06-19 08:35:19,160.160 INFO    ] Checking for camera pi updates...
[2026-06-19 08:35:19,196.196 INFO    ] 200
[2026-06-19 08:35:19,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:19,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:35:19,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:35:19,293.293 INFO    ] No camera update needed
[2026-06-19 08:35:19,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:35:19,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:35:19,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:35:19,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:35:21,352.352 INFO    ] ================================================
[2026-06-19 08:35:21,368.368 INFO    ] Launching Daemon at Fri Jun 19 08:35:21 IST 2026
[2026-06-19 08:35:21,379.379 INFO    ] ================================================
[2026-06-19 08:35:21,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:35:21
[2026-06-19 08:35:22,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:35:22,819.819 INFO    ] Initializing speech engine...
[2026-06-19 08:35:22,828.828 INFO    ] 2026-06-19 08:35:22
[2026-06-19 08:35:23,124.124 INFO    ] 2026-06-19 08:35:23
[2026-06-19 08:35:23,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:35:23,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:35:23,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:35:23,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:35:23,511.511 INFO    ] time= 19/06/2026 08:35:23
[2026-06-19 08:35:23,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:35:23,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:35:23,676.676 INFO    ] No existing commands found in stream
[2026-06-19 08:35:28,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:35:28,715.715 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 08:35:31,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:35:31,797.797 INFO    ] Checking for system updates...
[2026-06-19 08:35:31,836.836 INFO    ] 200
[2026-06-19 08:35:31,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:31,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:35:31,906.906 INFO    ] No update needed
[2026-06-19 08:35:31,909.909 INFO    ] Checking for camera pi updates...
[2026-06-19 08:35:31,946.946 INFO    ] 200
[2026-06-19 08:35:31,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:32,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:35:32,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:35:32,038.038 INFO    ] No camera update needed
[2026-06-19 08:35:32,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:35:32,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:35:32,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:35:32,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:35:34,101.101 INFO    ] ================================================
[2026-06-19 08:35:34,117.117 INFO    ] Launching Daemon at Fri Jun 19 08:35:34 IST 2026
[2026-06-19 08:35:34,129.129 INFO    ] ================================================
[2026-06-19 08:35:34,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:35:34
[2026-06-19 08:35:35,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:35:35,547.547 INFO    ] Initializing speech engine...
[2026-06-19 08:35:35,565.565 INFO    ] 2026-06-19 08:35:35
[2026-06-19 08:35:35,815.815 INFO    ] 2026-06-19 08:35:35
[2026-06-19 08:35:35,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:35:36,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:35:36,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:35:36,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:35:36,190.190 INFO    ] time= 19/06/2026 08:35:36
[2026-06-19 08:35:36,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:35:36,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:35:36,376.376 INFO    ] No existing commands found in stream
[2026-06-19 08:35:41,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:35:41,403.403 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 08:35:43,561.561 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:35:43,564.564 INFO    ] Checking for system updates...
[2026-06-19 08:35:43,601.601 INFO    ] 200
[2026-06-19 08:35:43,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:43,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:35:43,661.661 INFO    ] No update needed
[2026-06-19 08:35:43,664.664 INFO    ] Checking for camera pi updates...
[2026-06-19 08:35:43,703.703 INFO    ] 200
[2026-06-19 08:35:43,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:43,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:35:43,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:35:43,790.790 INFO    ] No camera update needed
[2026-06-19 08:35:43,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:35:43,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:35:43,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:35:43,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:35:45,861.861 INFO    ] ================================================
[2026-06-19 08:35:45,877.877 INFO    ] Launching Daemon at Fri Jun 19 08:35:45 IST 2026
[2026-06-19 08:35:45,893.893 INFO    ] ================================================
[2026-06-19 08:35:46,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:35:46
[2026-06-19 08:35:47,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:35:47,337.337 INFO    ] Initializing speech engine...
[2026-06-19 08:35:47,344.344 INFO    ] 2026-06-19 08:35:47
[2026-06-19 08:35:47,642.642 INFO    ] 2026-06-19 08:35:47
[2026-06-19 08:35:47,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:35:47,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:35:47,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:35:48,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:35:48,024.024 INFO    ] time= 19/06/2026 08:35:48
[2026-06-19 08:35:48,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:35:48,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:35:48,148.148 INFO    ] No existing commands found in stream
[2026-06-19 08:35:53,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:35:53,164.164 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 08:35:55,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:35:55,952.952 INFO    ] Checking for system updates...
[2026-06-19 08:35:55,988.988 INFO    ] 200
[2026-06-19 08:35:55,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:56,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:35:56,046.046 INFO    ] No update needed
[2026-06-19 08:35:56,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 08:35:56,082.082 INFO    ] 200
[2026-06-19 08:35:56,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:35:56,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:35:56,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:35:56,175.175 INFO    ] No camera update needed
[2026-06-19 08:35:56,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:35:56,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:35:56,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:35:56,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:35:58,232.232 INFO    ] ================================================
[2026-06-19 08:35:58,248.248 INFO    ] Launching Daemon at Fri Jun 19 08:35:58 IST 2026
[2026-06-19 08:35:58,259.259 INFO    ] ================================================
[2026-06-19 08:35:58,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:35:58
[2026-06-19 08:35:59,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:35:59,686.686 INFO    ] Initializing speech engine...
[2026-06-19 08:35:59,703.703 INFO    ] 2026-06-19 08:35:59
[2026-06-19 08:35:59,992.992 INFO    ] 2026-06-19 08:35:59
[2026-06-19 08:36:00,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:36:00,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:36:00,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:36:00,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:36:00,414.414 INFO    ] time= 19/06/2026 08:36:00
[2026-06-19 08:36:00,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:36:00,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:36:00,501.501 INFO    ] No existing commands found in stream
[2026-06-19 08:36:05,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:36:05,529.529 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 08:36:08,500.500 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:36:08,503.503 INFO    ] Checking for system updates...
[2026-06-19 08:36:08,539.539 INFO    ] 200
[2026-06-19 08:36:08,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:08,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:36:08,598.598 INFO    ] No update needed
[2026-06-19 08:36:08,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 08:36:08,634.634 INFO    ] 200
[2026-06-19 08:36:08,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:08,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:36:08,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:36:08,720.720 INFO    ] No camera update needed
[2026-06-19 08:36:08,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:36:08,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:36:08,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:36:08,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:36:10,776.776 INFO    ] ================================================
[2026-06-19 08:36:10,793.793 INFO    ] Launching Daemon at Fri Jun 19 08:36:10 IST 2026
[2026-06-19 08:36:10,804.804 INFO    ] ================================================
[2026-06-19 08:36:11,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:36:11
[2026-06-19 08:36:12,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:36:12,428.428 INFO    ] Initializing speech engine...
[2026-06-19 08:36:12,436.436 INFO    ] 2026-06-19 08:36:12
[2026-06-19 08:36:12,724.724 INFO    ] 2026-06-19 08:36:12
[2026-06-19 08:36:12,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:36:13,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:36:13,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:36:13,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:36:13,185.185 INFO    ] time= 19/06/2026 08:36:13
[2026-06-19 08:36:13,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:36:13,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:36:13,423.423 INFO    ] No existing commands found in stream
[2026-06-19 08:36:18,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:36:18,450.450 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 08:36:20,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:36:20,663.663 INFO    ] Checking for system updates...
[2026-06-19 08:36:20,700.700 INFO    ] 200
[2026-06-19 08:36:20,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:20,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:36:20,760.760 INFO    ] No update needed
[2026-06-19 08:36:20,763.763 INFO    ] Checking for camera pi updates...
[2026-06-19 08:36:20,798.798 INFO    ] 200
[2026-06-19 08:36:20,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:20,844.844 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:36:20,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:36:20,888.888 INFO    ] No camera update needed
[2026-06-19 08:36:20,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:36:20,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:36:20,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:36:20,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:36:22,947.947 INFO    ] ================================================
[2026-06-19 08:36:22,962.962 INFO    ] Launching Daemon at Fri Jun 19 08:36:22 IST 2026
[2026-06-19 08:36:22,974.974 INFO    ] ================================================
[2026-06-19 08:36:23,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:36:23
[2026-06-19 08:36:24,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:36:24,416.416 INFO    ] Initializing speech engine...
[2026-06-19 08:36:24,426.426 INFO    ] 2026-06-19 08:36:24
[2026-06-19 08:36:24,722.722 INFO    ] 2026-06-19 08:36:24
[2026-06-19 08:36:24,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:36:24,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:36:24,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:36:25,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:36:25,102.102 INFO    ] time= 19/06/2026 08:36:25
[2026-06-19 08:36:25,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:36:25,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:36:25,229.229 INFO    ] No existing commands found in stream
[2026-06-19 08:36:30,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:36:30,244.244 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 08:36:33,833.833 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:36:33,836.836 INFO    ] Checking for system updates...
[2026-06-19 08:36:33,872.872 INFO    ] 200
[2026-06-19 08:36:33,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:33,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:36:33,930.930 INFO    ] No update needed
[2026-06-19 08:36:33,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 08:36:33,970.970 INFO    ] 200
[2026-06-19 08:36:33,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:34,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:36:34,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:36:34,064.064 INFO    ] No camera update needed
[2026-06-19 08:36:34,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:36:34,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:36:34,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:36:34,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:36:36,122.122 INFO    ] ================================================
[2026-06-19 08:36:36,138.138 INFO    ] Launching Daemon at Fri Jun 19 08:36:36 IST 2026
[2026-06-19 08:36:36,148.148 INFO    ] ================================================
[2026-06-19 08:36:36,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:36:36
[2026-06-19 08:36:37,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:36:37,743.743 INFO    ] Initializing speech engine...
[2026-06-19 08:36:37,751.751 INFO    ] 2026-06-19 08:36:37
[2026-06-19 08:36:38,023.023 INFO    ] 2026-06-19 08:36:38
[2026-06-19 08:36:38,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:36:38,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:36:38,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:36:38,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:36:38,523.523 INFO    ] time= 19/06/2026 08:36:38
[2026-06-19 08:36:38,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:36:38,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:36:38,651.651 INFO    ] No existing commands found in stream
[2026-06-19 08:36:43,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:36:43,667.667 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 08:36:46,500.500 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:36:46,502.502 INFO    ] Checking for system updates...
[2026-06-19 08:36:46,543.543 INFO    ] 200
[2026-06-19 08:36:46,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:46,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:36:46,602.602 INFO    ] No update needed
[2026-06-19 08:36:46,604.604 INFO    ] Checking for camera pi updates...
[2026-06-19 08:36:46,640.640 INFO    ] 200
[2026-06-19 08:36:46,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:46,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:36:46,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:36:46,718.718 INFO    ] No camera update needed
[2026-06-19 08:36:46,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:36:46,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:36:46,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:36:46,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:36:48,775.775 INFO    ] ================================================
[2026-06-19 08:36:48,791.791 INFO    ] Launching Daemon at Fri Jun 19 08:36:48 IST 2026
[2026-06-19 08:36:48,802.802 INFO    ] ================================================
[2026-06-19 08:36:49,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:36:49
[2026-06-19 08:36:50,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:36:50,382.382 INFO    ] Initializing speech engine...
[2026-06-19 08:36:50,391.391 INFO    ] 2026-06-19 08:36:50
[2026-06-19 08:36:50,676.676 INFO    ] 2026-06-19 08:36:50
[2026-06-19 08:36:50,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:36:50,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:36:50,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:36:51,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:36:51,141.141 INFO    ] time= 19/06/2026 08:36:51
[2026-06-19 08:36:51,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:36:51,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:36:51,290.290 INFO    ] No existing commands found in stream
[2026-06-19 08:36:56,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:36:56,306.306 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 08:36:58,429.429 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:36:58,431.431 INFO    ] Checking for system updates...
[2026-06-19 08:36:58,468.468 INFO    ] 200
[2026-06-19 08:36:58,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:58,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:36:58,530.530 INFO    ] No update needed
[2026-06-19 08:36:58,533.533 INFO    ] Checking for camera pi updates...
[2026-06-19 08:36:58,567.567 INFO    ] 200
[2026-06-19 08:36:58,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:36:58,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:36:58,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:36:58,754.754 INFO    ] No camera update needed
[2026-06-19 08:36:58,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:36:58,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:36:58,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:36:58,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:37:00,810.810 INFO    ] ================================================
[2026-06-19 08:37:00,825.825 INFO    ] Launching Daemon at Fri Jun 19 08:37:00 IST 2026
[2026-06-19 08:37:00,836.836 INFO    ] ================================================
[2026-06-19 08:37:01,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:37:01
[2026-06-19 08:37:02,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:37:02,526.526 INFO    ] Initializing speech engine...
[2026-06-19 08:37:02,543.543 INFO    ] 2026-06-19 08:37:02
[2026-06-19 08:37:02,863.863 INFO    ] 2026-06-19 08:37:02
[2026-06-19 08:37:02,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:37:03,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:37:03,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:37:03,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:37:03,370.370 INFO    ] time= 19/06/2026 08:37:03
[2026-06-19 08:37:03,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:37:03,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:37:03,552.552 INFO    ] No existing commands found in stream
[2026-06-19 08:37:08,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:37:08,567.567 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 08:37:12,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:37:12,298.298 INFO    ] Checking for system updates...
[2026-06-19 08:37:12,334.334 INFO    ] 200
[2026-06-19 08:37:12,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:37:12,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:37:12,398.398 INFO    ] No update needed
[2026-06-19 08:37:12,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 08:37:12,433.433 INFO    ] 200
[2026-06-19 08:37:12,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:37:12,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:37:12,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:37:12,525.525 INFO    ] No camera update needed
[2026-06-19 08:37:12,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:37:12,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:37:12,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:37:12,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:37:14,581.581 INFO    ] ================================================
[2026-06-19 08:37:14,597.597 INFO    ] Launching Daemon at Fri Jun 19 08:37:14 IST 2026
[2026-06-19 08:37:14,608.608 INFO    ] ================================================
[2026-06-19 08:37:15,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:37:15
[2026-06-19 08:37:15,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:37:16,036.036 INFO    ] Initializing speech engine...
[2026-06-19 08:37:16,042.042 INFO    ] 2026-06-19 08:37:16
[2026-06-19 08:37:16,335.335 INFO    ] 2026-06-19 08:37:16
[2026-06-19 08:37:16,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:37:16,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:37:16,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:37:16,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:37:16,712.712 INFO    ] time= 19/06/2026 08:37:16
[2026-06-19 08:37:16,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:37:16,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:37:16,836.836 INFO    ] No existing commands found in stream
[2026-06-19 08:37:21,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:37:21,852.852 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 08:37:23,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:37:23,762.762 INFO    ] Checking for system updates...
[2026-06-19 08:37:23,804.804 INFO    ] 200
[2026-06-19 08:37:23,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:37:23,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:37:23,866.866 INFO    ] No update needed
[2026-06-19 08:37:23,869.869 INFO    ] Checking for camera pi updates...
[2026-06-19 08:37:23,903.903 INFO    ] 200
[2026-06-19 08:37:23,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:37:23,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:37:23,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:37:23,997.997 INFO    ] No camera update needed
[2026-06-19 08:37:24,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:37:24,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:37:24,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:37:24,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:37:26,053.053 INFO    ] ================================================
[2026-06-19 08:37:26,068.068 INFO    ] Launching Daemon at Fri Jun 19 08:37:26 IST 2026
[2026-06-19 08:37:26,079.079 INFO    ] ================================================
[2026-06-19 08:37:26,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:37:26
[2026-06-19 08:37:27,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:37:27,511.511 INFO    ] Initializing speech engine...
[2026-06-19 08:37:27,519.519 INFO    ] 2026-06-19 08:37:27
[2026-06-19 08:37:27,796.796 INFO    ] 2026-06-19 08:37:27
[2026-06-19 08:37:27,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:37:28,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:37:28,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:37:28,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:37:28,273.273 INFO    ] time= 19/06/2026 08:37:28
[2026-06-19 08:37:28,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:37:28,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:37:28,413.413 INFO    ] No existing commands found in stream
[2026-06-19 08:37:33,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:37:33,428.428 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 08:37:37,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:37:37,383.383 INFO    ] Checking for system updates...
[2026-06-19 08:37:37,420.420 INFO    ] 200
[2026-06-19 08:37:37,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:37:37,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:37:37,478.478 INFO    ] No update needed
[2026-06-19 08:37:37,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 08:37:37,514.514 INFO    ] 200
[2026-06-19 08:37:37,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:37:37,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:37:37,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:37:37,598.598 INFO    ] No camera update needed
[2026-06-19 08:37:37,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:37:37,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:37:37,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:37:37,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:37:39,655.655 INFO    ] ================================================
[2026-06-19 08:37:39,670.670 INFO    ] Launching Daemon at Fri Jun 19 08:37:39 IST 2026
[2026-06-19 08:37:39,681.681 INFO    ] ================================================
[2026-06-19 08:37:40,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:37:40
[2026-06-19 08:37:40,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:37:41,093.093 INFO    ] Initializing speech engine...
[2026-06-19 08:37:41,107.107 INFO    ] 2026-06-19 08:37:41
[2026-06-19 08:37:41,375.375 INFO    ] 2026-06-19 08:37:41
[2026-06-19 08:37:41,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:37:41,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:37:41,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:37:41,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:37:41,757.757 INFO    ] time= 19/06/2026 08:37:41
[2026-06-19 08:37:41,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:37:41,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:37:41,945.945 INFO    ] No existing commands found in stream
[2026-06-19 08:37:46,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:37:46,973.973 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 08:37:50,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:37:50,784.784 INFO    ] Checking for system updates...
[2026-06-19 08:37:50,824.824 INFO    ] 200
[2026-06-19 08:37:50,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:37:50,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:37:50,881.881 INFO    ] No update needed
[2026-06-19 08:37:50,884.884 INFO    ] Checking for camera pi updates...
[2026-06-19 08:37:50,917.917 INFO    ] 200
[2026-06-19 08:37:50,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:37:50,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:37:51,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:37:51,008.008 INFO    ] No camera update needed
[2026-06-19 08:37:51,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:37:51,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:37:51,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:37:51,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:37:53,065.065 INFO    ] ================================================
[2026-06-19 08:37:53,081.081 INFO    ] Launching Daemon at Fri Jun 19 08:37:53 IST 2026
[2026-06-19 08:37:53,092.092 INFO    ] ================================================
[2026-06-19 08:37:53,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:37:53
[2026-06-19 08:37:54,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:37:54,492.492 INFO    ] Initializing speech engine...
[2026-06-19 08:37:54,507.507 INFO    ] 2026-06-19 08:37:54
[2026-06-19 08:37:54,768.768 INFO    ] 2026-06-19 08:37:54
[2026-06-19 08:37:54,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:37:55,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:37:55,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:37:55,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:37:55,259.259 INFO    ] time= 19/06/2026 08:37:55
[2026-06-19 08:37:55,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:37:55,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:37:55,384.384 INFO    ] No existing commands found in stream
[2026-06-19 08:38:00,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:38:00,399.399 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 08:38:01,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:38:01,352.352 INFO    ] Checking for system updates...
[2026-06-19 08:38:01,388.388 INFO    ] 200
[2026-06-19 08:38:01,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:01,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:38:01,446.446 INFO    ] No update needed
[2026-06-19 08:38:01,448.448 INFO    ] Checking for camera pi updates...
[2026-06-19 08:38:01,483.483 INFO    ] 200
[2026-06-19 08:38:01,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:01,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:38:01,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:38:01,559.559 INFO    ] No camera update needed
[2026-06-19 08:38:01,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:38:01,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:38:01,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:38:01,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:38:03,618.618 INFO    ] ================================================
[2026-06-19 08:38:03,634.634 INFO    ] Launching Daemon at Fri Jun 19 08:38:03 IST 2026
[2026-06-19 08:38:03,645.645 INFO    ] ================================================
[2026-06-19 08:38:04,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:38:04
[2026-06-19 08:38:04,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:38:05,120.120 INFO    ] Initializing speech engine...
[2026-06-19 08:38:05,143.143 INFO    ] 2026-06-19 08:38:05
[2026-06-19 08:38:05,395.395 INFO    ] 2026-06-19 08:38:05
[2026-06-19 08:38:05,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:38:05,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:38:05,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:38:05,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:38:05,891.891 INFO    ] time= 19/06/2026 08:38:05
[2026-06-19 08:38:05,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:38:05,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:38:06,012.012 INFO    ] No existing commands found in stream
[2026-06-19 08:38:11,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:38:11,027.027 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 08:38:13,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:38:13,644.644 INFO    ] Checking for system updates...
[2026-06-19 08:38:13,685.685 INFO    ] 200
[2026-06-19 08:38:13,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:13,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:38:13,748.748 INFO    ] No update needed
[2026-06-19 08:38:13,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 08:38:13,788.788 INFO    ] 200
[2026-06-19 08:38:13,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:13,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:38:13,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:38:13,877.877 INFO    ] No camera update needed
[2026-06-19 08:38:13,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:38:13,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:38:13,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:38:13,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:38:15,936.936 INFO    ] ================================================
[2026-06-19 08:38:15,952.952 INFO    ] Launching Daemon at Fri Jun 19 08:38:15 IST 2026
[2026-06-19 08:38:15,963.963 INFO    ] ================================================
[2026-06-19 08:38:16,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:38:16
[2026-06-19 08:38:17,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:38:17,417.417 INFO    ] Initializing speech engine...
[2026-06-19 08:38:17,423.423 INFO    ] 2026-06-19 08:38:17
[2026-06-19 08:38:17,683.683 INFO    ] 2026-06-19 08:38:17
[2026-06-19 08:38:17,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:38:17,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:38:17,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:38:18,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:38:18,170.170 INFO    ] time= 19/06/2026 08:38:18
[2026-06-19 08:38:18,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:38:18,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:38:18,367.367 INFO    ] No existing commands found in stream
[2026-06-19 08:38:23,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:38:23,398.398 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 08:38:24,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:38:24,167.167 INFO    ] Checking for system updates...
[2026-06-19 08:38:24,204.204 INFO    ] 200
[2026-06-19 08:38:24,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:24,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:38:24,263.263 INFO    ] No update needed
[2026-06-19 08:38:24,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 08:38:24,301.301 INFO    ] 200
[2026-06-19 08:38:24,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:24,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:38:24,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:38:24,374.374 INFO    ] No camera update needed
[2026-06-19 08:38:24,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:38:24,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:38:24,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:38:24,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:38:26,430.430 INFO    ] ================================================
[2026-06-19 08:38:26,446.446 INFO    ] Launching Daemon at Fri Jun 19 08:38:26 IST 2026
[2026-06-19 08:38:26,457.457 INFO    ] ================================================
[2026-06-19 08:38:27,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:38:27
[2026-06-19 08:38:27,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:38:27,942.942 INFO    ] Initializing speech engine...
[2026-06-19 08:38:27,950.950 INFO    ] 2026-06-19 08:38:27
[2026-06-19 08:38:28,209.209 INFO    ] 2026-06-19 08:38:28
[2026-06-19 08:38:28,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:38:28,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:38:28,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:38:28,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:38:28,682.682 INFO    ] time= 19/06/2026 08:38:28
[2026-06-19 08:38:28,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:38:28,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:38:28,892.892 INFO    ] No existing commands found in stream
[2026-06-19 08:38:33,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:38:33,928.928 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 08:38:35,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:38:35,855.855 INFO    ] Checking for system updates...
[2026-06-19 08:38:35,894.894 INFO    ] 200
[2026-06-19 08:38:35,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:35,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:38:35,958.958 INFO    ] No update needed
[2026-06-19 08:38:35,960.960 INFO    ] Checking for camera pi updates...
[2026-06-19 08:38:35,995.995 INFO    ] 200
[2026-06-19 08:38:35,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:36,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:38:36,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:38:36,084.084 INFO    ] No camera update needed
[2026-06-19 08:38:36,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:38:36,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:38:36,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:38:36,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:38:38,142.142 INFO    ] ================================================
[2026-06-19 08:38:38,158.158 INFO    ] Launching Daemon at Fri Jun 19 08:38:38 IST 2026
[2026-06-19 08:38:38,169.169 INFO    ] ================================================
[2026-06-19 08:38:38,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:38:38
[2026-06-19 08:38:39,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:38:39,591.591 INFO    ] Initializing speech engine...
[2026-06-19 08:38:39,599.599 INFO    ] 2026-06-19 08:38:39
[2026-06-19 08:38:39,846.846 INFO    ] 2026-06-19 08:38:39
[2026-06-19 08:38:39,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:38:40,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:38:40,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:38:40,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:38:40,268.268 INFO    ] time= 19/06/2026 08:38:40
[2026-06-19 08:38:40,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:38:40,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:38:40,415.415 INFO    ] No existing commands found in stream
[2026-06-19 08:38:45,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:38:45,430.430 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 08:38:47,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:38:47,620.620 INFO    ] Checking for system updates...
[2026-06-19 08:38:47,659.659 INFO    ] 200
[2026-06-19 08:38:47,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:47,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:38:47,728.728 INFO    ] No update needed
[2026-06-19 08:38:47,731.731 INFO    ] Checking for camera pi updates...
[2026-06-19 08:38:47,770.770 INFO    ] 200
[2026-06-19 08:38:47,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:38:47,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:38:47,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:38:47,872.872 INFO    ] No camera update needed
[2026-06-19 08:38:47,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:38:47,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:38:47,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:38:47,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:38:49,930.930 INFO    ] ================================================
[2026-06-19 08:38:49,946.946 INFO    ] Launching Daemon at Fri Jun 19 08:38:49 IST 2026
[2026-06-19 08:38:49,957.957 INFO    ] ================================================
[2026-06-19 08:38:50,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:38:50
[2026-06-19 08:38:51,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:38:51,421.421 INFO    ] Initializing speech engine...
[2026-06-19 08:38:51,431.431 INFO    ] 2026-06-19 08:38:51
[2026-06-19 08:38:51,687.687 INFO    ] 2026-06-19 08:38:51
[2026-06-19 08:38:51,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:38:51,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:38:51,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:38:52,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:38:52,155.155 INFO    ] time= 19/06/2026 08:38:52
[2026-06-19 08:38:52,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:38:52,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:38:52,331.331 INFO    ] No existing commands found in stream
[2026-06-19 08:38:57,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:38:57,366.366 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 08:39:01,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:39:01,264.264 INFO    ] Checking for system updates...
[2026-06-19 08:39:01,304.304 INFO    ] 200
[2026-06-19 08:39:01,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:01,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:01,361.361 INFO    ] No update needed
[2026-06-19 08:39:01,363.363 INFO    ] Checking for camera pi updates...
[2026-06-19 08:39:01,400.400 INFO    ] 200
[2026-06-19 08:39:01,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:01,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:39:01,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:01,591.591 INFO    ] No camera update needed
[2026-06-19 08:39:01,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:39:01,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:39:01,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:39:01,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:39:03,674.674 INFO    ] ================================================
[2026-06-19 08:39:03,689.689 INFO    ] Launching Daemon at Fri Jun 19 08:39:03 IST 2026
[2026-06-19 08:39:03,700.700 INFO    ] ================================================
[2026-06-19 08:39:04,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:39:04
[2026-06-19 08:39:04,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:39:05,258.258 INFO    ] Initializing speech engine...
[2026-06-19 08:39:05,263.263 INFO    ] 2026-06-19 08:39:05
[2026-06-19 08:39:05,527.527 INFO    ] 2026-06-19 08:39:05
[2026-06-19 08:39:05,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:39:05,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:39:05,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:39:05,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:39:05,903.903 INFO    ] time= 19/06/2026 08:39:05
[2026-06-19 08:39:05,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:39:05,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:39:06,026.026 INFO    ] No existing commands found in stream
[2026-06-19 08:39:11,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:39:11,042.042 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 08:39:14,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:39:14,211.211 INFO    ] Checking for system updates...
[2026-06-19 08:39:14,249.249 INFO    ] 200
[2026-06-19 08:39:14,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:14,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:14,327.327 INFO    ] No update needed
[2026-06-19 08:39:14,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 08:39:14,363.363 INFO    ] 200
[2026-06-19 08:39:14,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:14,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:39:14,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:14,449.449 INFO    ] No camera update needed
[2026-06-19 08:39:14,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:39:14,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:39:14,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:39:14,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:39:16,505.505 INFO    ] ================================================
[2026-06-19 08:39:16,521.521 INFO    ] Launching Daemon at Fri Jun 19 08:39:16 IST 2026
[2026-06-19 08:39:16,532.532 INFO    ] ================================================
[2026-06-19 08:39:17,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:39:17
[2026-06-19 08:39:17,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:39:17,995.995 INFO    ] Initializing speech engine...
[2026-06-19 08:39:18,004.004 INFO    ] 2026-06-19 08:39:17
[2026-06-19 08:39:18,262.262 INFO    ] 2026-06-19 08:39:18
[2026-06-19 08:39:18,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:39:18,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:39:18,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:39:18,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:39:18,721.721 INFO    ] time= 19/06/2026 08:39:18
[2026-06-19 08:39:18,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:39:18,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:39:18,878.878 INFO    ] No existing commands found in stream
[2026-06-19 08:39:23,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:39:23,916.916 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 08:39:25,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:39:25,349.349 INFO    ] Checking for system updates...
[2026-06-19 08:39:25,387.387 INFO    ] 200
[2026-06-19 08:39:25,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:25,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:25,450.450 INFO    ] No update needed
[2026-06-19 08:39:25,453.453 INFO    ] Checking for camera pi updates...
[2026-06-19 08:39:25,490.490 INFO    ] 200
[2026-06-19 08:39:25,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:25,533.533 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:39:25,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:25,579.579 INFO    ] No camera update needed
[2026-06-19 08:39:25,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:39:25,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:39:25,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:39:25,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:39:27,633.633 INFO    ] ================================================
[2026-06-19 08:39:27,649.649 INFO    ] Launching Daemon at Fri Jun 19 08:39:27 IST 2026
[2026-06-19 08:39:27,661.661 INFO    ] ================================================
[2026-06-19 08:39:28,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:39:28
[2026-06-19 08:39:28,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:39:29,119.119 INFO    ] Initializing speech engine...
[2026-06-19 08:39:29,125.125 INFO    ] 2026-06-19 08:39:29
[2026-06-19 08:39:29,375.375 INFO    ] 2026-06-19 08:39:29
[2026-06-19 08:39:29,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:39:29,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:39:29,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:39:29,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:39:29,871.871 INFO    ] time= 19/06/2026 08:39:29
[2026-06-19 08:39:29,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:39:29,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:39:30,049.049 INFO    ] No existing commands found in stream
[2026-06-19 08:39:35,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:39:35,084.084 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 08:39:36,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:39:36,834.834 INFO    ] Checking for system updates...
[2026-06-19 08:39:36,870.870 INFO    ] 200
[2026-06-19 08:39:36,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:36,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:36,936.936 INFO    ] No update needed
[2026-06-19 08:39:36,939.939 INFO    ] Checking for camera pi updates...
[2026-06-19 08:39:36,976.976 INFO    ] 200
[2026-06-19 08:39:36,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:37,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:39:37,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:37,065.065 INFO    ] No camera update needed
[2026-06-19 08:39:37,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:39:37,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:39:37,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:39:37,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:39:39,122.122 INFO    ] ================================================
[2026-06-19 08:39:39,137.137 INFO    ] Launching Daemon at Fri Jun 19 08:39:39 IST 2026
[2026-06-19 08:39:39,147.147 INFO    ] ================================================
[2026-06-19 08:39:39,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:39:39
[2026-06-19 08:39:40,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:39:40,692.692 INFO    ] Initializing speech engine...
[2026-06-19 08:39:40,702.702 INFO    ] 2026-06-19 08:39:40
[2026-06-19 08:39:40,962.962 INFO    ] 2026-06-19 08:39:40
[2026-06-19 08:39:41,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:39:41,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:39:41,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:39:41,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:39:41,423.423 INFO    ] time= 19/06/2026 08:39:41
[2026-06-19 08:39:41,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:39:41,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:39:41,575.575 INFO    ] No existing commands found in stream
[2026-06-19 08:39:46,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:39:46,589.589 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 08:39:49,273.273 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:39:49,276.276 INFO    ] Checking for system updates...
[2026-06-19 08:39:49,316.316 INFO    ] 200
[2026-06-19 08:39:49,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:49,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:39:49,376.376 INFO    ] No update needed
[2026-06-19 08:39:49,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 08:39:49,418.418 INFO    ] 200
[2026-06-19 08:39:49,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:49,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:39:49,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:39:49,518.518 INFO    ] No camera update needed
[2026-06-19 08:39:49,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:39:49,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:39:49,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:39:49,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:39:51,574.574 INFO    ] ================================================
[2026-06-19 08:39:51,589.589 INFO    ] Launching Daemon at Fri Jun 19 08:39:51 IST 2026
[2026-06-19 08:39:51,599.599 INFO    ] ================================================
[2026-06-19 08:39:52,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:39:52
[2026-06-19 08:39:52,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:39:53,014.014 INFO    ] Initializing speech engine...
[2026-06-19 08:39:53,033.033 INFO    ] 2026-06-19 08:39:53
[2026-06-19 08:39:53,283.283 INFO    ] 2026-06-19 08:39:53
[2026-06-19 08:39:53,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:39:53,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:39:53,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:39:53,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:39:53,767.767 INFO    ] time= 19/06/2026 08:39:53
[2026-06-19 08:39:53,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:39:53,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:39:53,918.918 INFO    ] No existing commands found in stream
[2026-06-19 08:39:58,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:39:58,932.932 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 08:39:59,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:39:59,420.420 INFO    ] Checking for system updates...
[2026-06-19 08:39:59,460.460 INFO    ] 200
[2026-06-19 08:39:59,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:59,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:59,532.532 INFO    ] No update needed
[2026-06-19 08:39:59,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 08:39:59,572.572 INFO    ] 200
[2026-06-19 08:39:59,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:39:59,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:39:59,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:39:59,667.667 INFO    ] No camera update needed
[2026-06-19 08:39:59,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:39:59,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:39:59,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:39:59,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:40:01,759.759 INFO    ] ================================================
[2026-06-19 08:40:01,874.874 INFO    ] Launching Daemon at Fri Jun 19 08:40:01 IST 2026
[2026-06-19 08:40:01,901.901 INFO    ] ================================================
[2026-06-19 08:40:02,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:40:02
[2026-06-19 08:40:03,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:40:03,760.760 INFO    ] Initializing speech engine...
[2026-06-19 08:40:03,774.774 INFO    ] 2026-06-19 08:40:03
[2026-06-19 08:40:04,053.053 INFO    ] 2026-06-19 08:40:04
[2026-06-19 08:40:04,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:40:04,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:40:04,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:40:04,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:40:04,526.526 INFO    ] time= 19/06/2026 08:40:04
[2026-06-19 08:40:04,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:40:04,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:40:04,702.702 INFO    ] No existing commands found in stream
[2026-06-19 08:40:09,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:40:09,738.738 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 08:40:12,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:40:12,851.851 INFO    ] Checking for system updates...
[2026-06-19 08:40:12,891.891 INFO    ] 200
[2026-06-19 08:40:12,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:40:12,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:40:12,951.951 INFO    ] No update needed
[2026-06-19 08:40:12,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 08:40:12,991.991 INFO    ] 200
[2026-06-19 08:40:12,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:40:13,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:40:13,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:40:13,085.085 INFO    ] No camera update needed
[2026-06-19 08:40:13,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:40:13,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:40:13,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:40:13,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:40:15,144.144 INFO    ] ================================================
[2026-06-19 08:40:15,159.159 INFO    ] Launching Daemon at Fri Jun 19 08:40:15 IST 2026
[2026-06-19 08:40:15,170.170 INFO    ] ================================================
[2026-06-19 08:40:15,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:40:15
[2026-06-19 08:40:16,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:40:16,627.627 INFO    ] Initializing speech engine...
[2026-06-19 08:40:16,640.640 INFO    ] 2026-06-19 08:40:16
[2026-06-19 08:40:16,908.908 INFO    ] 2026-06-19 08:40:16
[2026-06-19 08:40:16,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:40:17,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:40:17,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:40:17,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:40:17,321.321 INFO    ] time= 19/06/2026 08:40:17
[2026-06-19 08:40:17,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:40:17,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:40:17,503.503 INFO    ] No existing commands found in stream
[2026-06-19 08:40:22,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:40:22,537.537 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 08:40:24,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:40:24,475.475 INFO    ] Checking for system updates...
[2026-06-19 08:40:24,511.511 INFO    ] 200
[2026-06-19 08:40:24,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:40:24,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:40:24,573.573 INFO    ] No update needed
[2026-06-19 08:40:24,576.576 INFO    ] Checking for camera pi updates...
[2026-06-19 08:40:24,619.619 INFO    ] 200
[2026-06-19 08:40:24,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:40:24,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:40:24,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:40:24,718.718 INFO    ] No camera update needed
[2026-06-19 08:40:24,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:40:24,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:40:24,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:40:24,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:40:26,774.774 INFO    ] ================================================
[2026-06-19 08:40:26,790.790 INFO    ] Launching Daemon at Fri Jun 19 08:40:26 IST 2026
[2026-06-19 08:40:26,801.801 INFO    ] ================================================
[2026-06-19 08:40:27,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:40:27
[2026-06-19 08:40:27,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:40:28,217.217 INFO    ] Initializing speech engine...
[2026-06-19 08:40:28,231.231 INFO    ] 2026-06-19 08:40:28
[2026-06-19 08:40:28,513.513 INFO    ] 2026-06-19 08:40:28
[2026-06-19 08:40:28,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:40:28,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:40:28,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:40:28,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:40:28,928.928 INFO    ] time= 19/06/2026 08:40:28
[2026-06-19 08:40:28,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:40:28,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:40:29,011.011 INFO    ] No existing commands found in stream
[2026-06-19 08:40:34,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:40:34,027.027 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 08:40:37,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:40:37,747.747 INFO    ] Checking for system updates...
[2026-06-19 08:40:37,786.786 INFO    ] 200
[2026-06-19 08:40:37,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:40:37,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:40:37,844.844 INFO    ] No update needed
[2026-06-19 08:40:37,846.846 INFO    ] Checking for camera pi updates...
[2026-06-19 08:40:37,884.884 INFO    ] 200
[2026-06-19 08:40:37,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:40:37,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:40:37,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:40:37,973.973 INFO    ] No camera update needed
[2026-06-19 08:40:37,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:40:37,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:40:37,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:40:37,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:40:40,030.030 INFO    ] ================================================
[2026-06-19 08:40:40,045.045 INFO    ] Launching Daemon at Fri Jun 19 08:40:40 IST 2026
[2026-06-19 08:40:40,056.056 INFO    ] ================================================
[2026-06-19 08:40:40,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:40:40
[2026-06-19 08:40:41,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:40:41,500.500 INFO    ] Initializing speech engine...
[2026-06-19 08:40:41,520.520 INFO    ] 2026-06-19 08:40:41
[2026-06-19 08:40:41,786.786 INFO    ] 2026-06-19 08:40:41
[2026-06-19 08:40:41,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:40:42,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:40:42,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:40:42,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:40:42,178.178 INFO    ] time= 19/06/2026 08:40:42
[2026-06-19 08:40:42,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:40:42,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:40:42,285.285 INFO    ] No existing commands found in stream
[2026-06-19 08:40:47,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:40:47,301.301 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 08:40:49,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:40:49,220.220 INFO    ] Checking for system updates...
[2026-06-19 08:40:49,256.256 INFO    ] 200
[2026-06-19 08:40:49,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:40:49,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:40:49,314.314 INFO    ] No update needed
[2026-06-19 08:40:49,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 08:40:49,350.350 INFO    ] 200
[2026-06-19 08:40:49,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:40:49,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:40:49,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:40:49,428.428 INFO    ] No camera update needed
[2026-06-19 08:40:49,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:40:49,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:40:49,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:40:49,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:40:51,482.482 INFO    ] ================================================
[2026-06-19 08:40:51,499.499 INFO    ] Launching Daemon at Fri Jun 19 08:40:51 IST 2026
[2026-06-19 08:40:51,510.510 INFO    ] ================================================
[2026-06-19 08:40:52,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:40:52
[2026-06-19 08:40:52,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:40:53,123.123 INFO    ] Initializing speech engine...
[2026-06-19 08:40:53,137.137 INFO    ] 2026-06-19 08:40:53
[2026-06-19 08:40:53,421.421 INFO    ] 2026-06-19 08:40:53
[2026-06-19 08:40:53,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:40:53,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:40:53,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:40:53,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:40:53,901.901 INFO    ] time= 19/06/2026 08:40:53
[2026-06-19 08:40:53,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:40:53,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:40:54,109.109 INFO    ] No existing commands found in stream
[2026-06-19 08:40:59,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:40:59,141.141 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 08:41:02,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:41:02,260.260 INFO    ] Checking for system updates...
[2026-06-19 08:41:02,304.304 INFO    ] 200
[2026-06-19 08:41:02,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:02,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:02,377.377 INFO    ] No update needed
[2026-06-19 08:41:02,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 08:41:02,428.428 INFO    ] 200
[2026-06-19 08:41:02,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:02,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:41:02,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:02,525.525 INFO    ] No camera update needed
[2026-06-19 08:41:02,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:41:02,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:41:02,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:41:02,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:41:04,590.590 INFO    ] ================================================
[2026-06-19 08:41:04,606.606 INFO    ] Launching Daemon at Fri Jun 19 08:41:04 IST 2026
[2026-06-19 08:41:04,617.617 INFO    ] ================================================
[2026-06-19 08:41:05,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:41:05
[2026-06-19 08:41:05,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:41:06,062.062 INFO    ] Initializing speech engine...
[2026-06-19 08:41:06,071.071 INFO    ] 2026-06-19 08:41:06
[2026-06-19 08:41:06,367.367 INFO    ] 2026-06-19 08:41:06
[2026-06-19 08:41:06,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:41:06,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:41:06,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:41:06,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:41:06,767.767 INFO    ] time= 19/06/2026 08:41:06
[2026-06-19 08:41:06,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:41:06,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:41:06,941.941 INFO    ] No existing commands found in stream
[2026-06-19 08:41:11,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:41:11,970.970 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 08:41:13,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:41:13,795.795 INFO    ] Checking for system updates...
[2026-06-19 08:41:13,832.832 INFO    ] 200
[2026-06-19 08:41:13,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:13,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:13,898.898 INFO    ] No update needed
[2026-06-19 08:41:13,901.901 INFO    ] Checking for camera pi updates...
[2026-06-19 08:41:13,936.936 INFO    ] 200
[2026-06-19 08:41:13,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:13,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:41:14,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:14,131.131 INFO    ] No camera update needed
[2026-06-19 08:41:14,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:41:14,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:41:14,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:41:14,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:41:16,190.190 INFO    ] ================================================
[2026-06-19 08:41:16,206.206 INFO    ] Launching Daemon at Fri Jun 19 08:41:16 IST 2026
[2026-06-19 08:41:16,217.217 INFO    ] ================================================
[2026-06-19 08:41:16,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:41:16
[2026-06-19 08:41:17,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:41:17,823.823 INFO    ] Initializing speech engine...
[2026-06-19 08:41:17,832.832 INFO    ] 2026-06-19 08:41:17
[2026-06-19 08:41:18,121.121 INFO    ] 2026-06-19 08:41:18
[2026-06-19 08:41:18,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:41:18,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:41:18,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:41:18,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:41:18,604.604 INFO    ] time= 19/06/2026 08:41:18
[2026-06-19 08:41:18,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:41:18,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:41:18,734.734 INFO    ] No existing commands found in stream
[2026-06-19 08:41:23,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:41:23,761.761 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 08:41:26,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:41:26,874.874 INFO    ] Checking for system updates...
[2026-06-19 08:41:26,913.913 INFO    ] 200
[2026-06-19 08:41:26,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:26,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:26,970.970 INFO    ] No update needed
[2026-06-19 08:41:26,973.973 INFO    ] Checking for camera pi updates...
[2026-06-19 08:41:27,009.009 INFO    ] 200
[2026-06-19 08:41:27,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:27,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:41:27,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:27,102.102 INFO    ] No camera update needed
[2026-06-19 08:41:27,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:41:27,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:41:27,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:41:27,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:41:29,156.156 INFO    ] ================================================
[2026-06-19 08:41:29,172.172 INFO    ] Launching Daemon at Fri Jun 19 08:41:29 IST 2026
[2026-06-19 08:41:29,183.183 INFO    ] ================================================
[2026-06-19 08:41:29,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:41:29
[2026-06-19 08:41:30,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:41:30,616.616 INFO    ] Initializing speech engine...
[2026-06-19 08:41:30,628.628 INFO    ] 2026-06-19 08:41:30
[2026-06-19 08:41:30,903.903 INFO    ] 2026-06-19 08:41:30
[2026-06-19 08:41:30,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:41:31,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:41:31,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:41:31,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:41:31,307.307 INFO    ] time= 19/06/2026 08:41:31
[2026-06-19 08:41:31,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:41:31,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:41:31,485.485 INFO    ] No existing commands found in stream
[2026-06-19 08:41:36,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:41:36,513.513 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 08:41:40,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:41:40,367.367 INFO    ] Checking for system updates...
[2026-06-19 08:41:40,406.406 INFO    ] 200
[2026-06-19 08:41:40,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:40,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:40,477.477 INFO    ] No update needed
[2026-06-19 08:41:40,479.479 INFO    ] Checking for camera pi updates...
[2026-06-19 08:41:40,513.513 INFO    ] 200
[2026-06-19 08:41:40,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:40,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:41:40,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:40,598.598 INFO    ] No camera update needed
[2026-06-19 08:41:40,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:41:40,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:41:40,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:41:40,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:41:42,654.654 INFO    ] ================================================
[2026-06-19 08:41:42,669.669 INFO    ] Launching Daemon at Fri Jun 19 08:41:42 IST 2026
[2026-06-19 08:41:42,681.681 INFO    ] ================================================
[2026-06-19 08:41:43,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:41:43
[2026-06-19 08:41:43,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:41:44,139.139 INFO    ] Initializing speech engine...
[2026-06-19 08:41:44,148.148 INFO    ] 2026-06-19 08:41:44
[2026-06-19 08:41:44,410.410 INFO    ] 2026-06-19 08:41:44
[2026-06-19 08:41:44,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:41:44,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:41:44,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:41:44,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:41:44,870.870 INFO    ] time= 19/06/2026 08:41:44
[2026-06-19 08:41:44,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:41:44,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:41:45,096.096 INFO    ] No existing commands found in stream
[2026-06-19 08:41:50,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:41:50,123.123 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 08:41:53,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:41:53,621.621 INFO    ] Checking for system updates...
[2026-06-19 08:41:53,658.658 INFO    ] 200
[2026-06-19 08:41:53,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:53,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:53,715.715 INFO    ] No update needed
[2026-06-19 08:41:53,718.718 INFO    ] Checking for camera pi updates...
[2026-06-19 08:41:53,751.751 INFO    ] 200
[2026-06-19 08:41:53,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:41:53,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:41:53,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:41:53,836.836 INFO    ] No camera update needed
[2026-06-19 08:41:53,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:41:53,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:41:53,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:41:53,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:41:55,893.893 INFO    ] ================================================
[2026-06-19 08:41:55,909.909 INFO    ] Launching Daemon at Fri Jun 19 08:41:55 IST 2026
[2026-06-19 08:41:55,920.920 INFO    ] ================================================
[2026-06-19 08:41:56,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:41:56
[2026-06-19 08:41:57,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:41:57,335.335 INFO    ] Initializing speech engine...
[2026-06-19 08:41:57,354.354 INFO    ] 2026-06-19 08:41:57
[2026-06-19 08:41:57,601.601 INFO    ] 2026-06-19 08:41:57
[2026-06-19 08:41:57,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:41:57,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:41:57,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:41:58,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:41:58,091.091 INFO    ] time= 19/06/2026 08:41:58
[2026-06-19 08:41:58,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:41:58,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:41:58,306.306 INFO    ] No existing commands found in stream
[2026-06-19 08:42:03,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:42:03,320.320 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 08:42:06,789.789 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:42:06,791.791 INFO    ] Checking for system updates...
[2026-06-19 08:42:06,827.827 INFO    ] 200
[2026-06-19 08:42:06,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:06,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:42:06,891.891 INFO    ] No update needed
[2026-06-19 08:42:06,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 08:42:06,927.927 INFO    ] 200
[2026-06-19 08:42:06,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:06,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:42:07,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:42:07,026.026 INFO    ] No camera update needed
[2026-06-19 08:42:07,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:42:07,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:42:07,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:42:07,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:42:09,081.081 INFO    ] ================================================
[2026-06-19 08:42:09,097.097 INFO    ] Launching Daemon at Fri Jun 19 08:42:09 IST 2026
[2026-06-19 08:42:09,108.108 INFO    ] ================================================
[2026-06-19 08:42:09,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:42:09
[2026-06-19 08:42:10,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:42:10,508.508 INFO    ] Initializing speech engine...
[2026-06-19 08:42:10,516.516 INFO    ] 2026-06-19 08:42:10
[2026-06-19 08:42:10,803.803 INFO    ] 2026-06-19 08:42:10
[2026-06-19 08:42:10,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:42:11,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:42:11,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:42:11,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:42:11,203.203 INFO    ] time= 19/06/2026 08:42:11
[2026-06-19 08:42:11,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:42:11,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:42:11,288.288 INFO    ] No existing commands found in stream
[2026-06-19 08:42:16,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:42:16,304.304 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 08:42:19,733.733 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:42:19,736.736 INFO    ] Checking for system updates...
[2026-06-19 08:42:19,774.774 INFO    ] 200
[2026-06-19 08:42:19,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:19,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:42:19,831.831 INFO    ] No update needed
[2026-06-19 08:42:19,833.833 INFO    ] Checking for camera pi updates...
[2026-06-19 08:42:19,867.867 INFO    ] 200
[2026-06-19 08:42:19,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:19,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:42:19,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:42:19,951.951 INFO    ] No camera update needed
[2026-06-19 08:42:19,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:42:19,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:42:19,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:42:19,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:42:22,006.006 INFO    ] ================================================
[2026-06-19 08:42:22,022.022 INFO    ] Launching Daemon at Fri Jun 19 08:42:22 IST 2026
[2026-06-19 08:42:22,033.033 INFO    ] ================================================
[2026-06-19 08:42:22,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:42:22
[2026-06-19 08:42:23,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:42:23,491.491 INFO    ] Initializing speech engine...
[2026-06-19 08:42:23,497.497 INFO    ] 2026-06-19 08:42:23
[2026-06-19 08:42:23,747.747 INFO    ] 2026-06-19 08:42:23
[2026-06-19 08:42:23,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:42:23,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:42:23,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:42:24,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:42:24,126.126 INFO    ] time= 19/06/2026 08:42:24
[2026-06-19 08:42:24,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:42:24,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:42:24,299.299 INFO    ] No existing commands found in stream
[2026-06-19 08:42:29,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:42:29,327.327 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 08:42:31,565.565 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:42:31,568.568 INFO    ] Checking for system updates...
[2026-06-19 08:42:31,608.608 INFO    ] 200
[2026-06-19 08:42:31,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:31,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:42:31,693.693 INFO    ] No update needed
[2026-06-19 08:42:31,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 08:42:31,732.732 INFO    ] 200
[2026-06-19 08:42:31,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:31,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:42:31,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:42:31,814.814 INFO    ] No camera update needed
[2026-06-19 08:42:31,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:42:31,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:42:31,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:42:31,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:42:33,874.874 INFO    ] ================================================
[2026-06-19 08:42:33,889.889 INFO    ] Launching Daemon at Fri Jun 19 08:42:33 IST 2026
[2026-06-19 08:42:33,901.901 INFO    ] ================================================
[2026-06-19 08:42:34,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:42:34
[2026-06-19 08:42:35,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:42:35,341.341 INFO    ] Initializing speech engine...
[2026-06-19 08:42:35,347.347 INFO    ] 2026-06-19 08:42:35
[2026-06-19 08:42:35,618.618 INFO    ] 2026-06-19 08:42:35
[2026-06-19 08:42:35,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:42:35,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:42:35,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:42:36,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:42:36,094.094 INFO    ] time= 19/06/2026 08:42:36
[2026-06-19 08:42:36,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:42:36,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:42:36,242.242 INFO    ] No existing commands found in stream
[2026-06-19 08:42:41,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:42:41,257.257 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 08:42:42,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:42:42,028.028 INFO    ] Checking for system updates...
[2026-06-19 08:42:42,067.067 INFO    ] 200
[2026-06-19 08:42:42,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:42,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:42:42,129.129 INFO    ] No update needed
[2026-06-19 08:42:42,132.132 INFO    ] Checking for camera pi updates...
[2026-06-19 08:42:42,169.169 INFO    ] 200
[2026-06-19 08:42:42,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:42,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:42:42,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:42:42,242.242 INFO    ] No camera update needed
[2026-06-19 08:42:42,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:42:42,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:42:42,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:42:42,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:42:44,300.300 INFO    ] ================================================
[2026-06-19 08:42:44,316.316 INFO    ] Launching Daemon at Fri Jun 19 08:42:44 IST 2026
[2026-06-19 08:42:44,327.327 INFO    ] ================================================
[2026-06-19 08:42:44,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:42:44
[2026-06-19 08:42:45,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:42:45,884.884 INFO    ] Initializing speech engine...
[2026-06-19 08:42:45,895.895 INFO    ] 2026-06-19 08:42:45
[2026-06-19 08:42:46,202.202 INFO    ] 2026-06-19 08:42:46
[2026-06-19 08:42:46,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:42:46,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:42:46,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:42:46,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:42:46,704.704 INFO    ] time= 19/06/2026 08:42:46
[2026-06-19 08:42:46,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:42:46,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:42:46,835.835 INFO    ] No existing commands found in stream
[2026-06-19 08:42:51,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:42:51,869.869 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 08:42:55,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:42:55,921.921 INFO    ] Checking for system updates...
[2026-06-19 08:42:55,960.960 INFO    ] 200
[2026-06-19 08:42:55,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:56,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:42:56,023.023 INFO    ] No update needed
[2026-06-19 08:42:56,026.026 INFO    ] Checking for camera pi updates...
[2026-06-19 08:42:56,063.063 INFO    ] 200
[2026-06-19 08:42:56,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:42:56,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:42:56,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:42:56,162.162 INFO    ] No camera update needed
[2026-06-19 08:42:56,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:42:56,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:42:56,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:42:56,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:42:58,219.219 INFO    ] ================================================
[2026-06-19 08:42:58,234.234 INFO    ] Launching Daemon at Fri Jun 19 08:42:58 IST 2026
[2026-06-19 08:42:58,245.245 INFO    ] ================================================
[2026-06-19 08:42:58,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:42:58
[2026-06-19 08:42:59,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:42:59,687.687 INFO    ] Initializing speech engine...
[2026-06-19 08:42:59,696.696 INFO    ] 2026-06-19 08:42:59
[2026-06-19 08:42:59,947.947 INFO    ] 2026-06-19 08:42:59
[2026-06-19 08:42:59,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:43:00,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:43:00,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:43:00,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:43:00,314.314 INFO    ] time= 19/06/2026 08:43:00
[2026-06-19 08:43:00,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:43:00,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:43:00,425.425 INFO    ] No existing commands found in stream
[2026-06-19 08:43:05,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:43:05,464.464 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 08:43:06,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:43:06,452.452 INFO    ] Checking for system updates...
[2026-06-19 08:43:06,492.492 INFO    ] 200
[2026-06-19 08:43:06,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:06,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:43:06,555.555 INFO    ] No update needed
[2026-06-19 08:43:06,558.558 INFO    ] Checking for camera pi updates...
[2026-06-19 08:43:06,592.592 INFO    ] 200
[2026-06-19 08:43:06,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:06,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:43:06,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:43:06,678.678 INFO    ] No camera update needed
[2026-06-19 08:43:06,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:43:06,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:43:06,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:43:06,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:43:08,737.737 INFO    ] ================================================
[2026-06-19 08:43:08,753.753 INFO    ] Launching Daemon at Fri Jun 19 08:43:08 IST 2026
[2026-06-19 08:43:08,764.764 INFO    ] ================================================
[2026-06-19 08:43:09,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:43:09
[2026-06-19 08:43:09,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:43:10,194.194 INFO    ] Initializing speech engine...
[2026-06-19 08:43:10,204.204 INFO    ] 2026-06-19 08:43:10
[2026-06-19 08:43:10,468.468 INFO    ] 2026-06-19 08:43:10
[2026-06-19 08:43:10,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:43:10,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:43:10,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:43:10,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:43:10,933.933 INFO    ] time= 19/06/2026 08:43:10
[2026-06-19 08:43:10,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:43:11,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:43:11,079.079 INFO    ] No existing commands found in stream
[2026-06-19 08:43:16,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:43:16,096.096 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 08:43:19,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:43:19,201.201 INFO    ] Checking for system updates...
[2026-06-19 08:43:19,238.238 INFO    ] 200
[2026-06-19 08:43:19,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:19,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:43:19,295.295 INFO    ] No update needed
[2026-06-19 08:43:19,298.298 INFO    ] Checking for camera pi updates...
[2026-06-19 08:43:19,331.331 INFO    ] 200
[2026-06-19 08:43:19,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:19,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:43:19,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:43:19,529.529 INFO    ] No camera update needed
[2026-06-19 08:43:19,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:43:19,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:43:19,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:43:19,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:43:21,584.584 INFO    ] ================================================
[2026-06-19 08:43:21,600.600 INFO    ] Launching Daemon at Fri Jun 19 08:43:21 IST 2026
[2026-06-19 08:43:21,611.611 INFO    ] ================================================
[2026-06-19 08:43:22,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:43:22
[2026-06-19 08:43:22,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:43:23,029.029 INFO    ] Initializing speech engine...
[2026-06-19 08:43:23,039.039 INFO    ] 2026-06-19 08:43:23
[2026-06-19 08:43:23,284.284 INFO    ] 2026-06-19 08:43:23
[2026-06-19 08:43:23,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:43:23,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:43:23,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:43:23,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:43:23,739.739 INFO    ] time= 19/06/2026 08:43:23
[2026-06-19 08:43:23,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:43:23,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:43:23,902.902 INFO    ] No existing commands found in stream
[2026-06-19 08:43:28,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:43:28,917.917 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 08:43:29,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:43:29,795.795 INFO    ] Checking for system updates...
[2026-06-19 08:43:29,832.832 INFO    ] 200
[2026-06-19 08:43:29,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:29,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:43:29,898.898 INFO    ] No update needed
[2026-06-19 08:43:29,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 08:43:29,934.934 INFO    ] 200
[2026-06-19 08:43:29,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:29,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:43:30,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:43:30,011.011 INFO    ] No camera update needed
[2026-06-19 08:43:30,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:43:30,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:43:30,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:43:30,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:43:32,069.069 INFO    ] ================================================
[2026-06-19 08:43:32,086.086 INFO    ] Launching Daemon at Fri Jun 19 08:43:32 IST 2026
[2026-06-19 08:43:32,098.098 INFO    ] ================================================
[2026-06-19 08:43:32,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:43:32
[2026-06-19 08:43:33,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:43:33,575.575 INFO    ] Initializing speech engine...
[2026-06-19 08:43:33,584.584 INFO    ] 2026-06-19 08:43:33
[2026-06-19 08:43:33,834.834 INFO    ] 2026-06-19 08:43:33
[2026-06-19 08:43:33,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:43:34,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:43:34,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:43:34,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:43:34,211.211 INFO    ] time= 19/06/2026 08:43:34
[2026-06-19 08:43:34,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:43:34,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:43:34,389.389 INFO    ] No existing commands found in stream
[2026-06-19 08:43:39,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:43:39,422.422 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 08:43:39,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:43:39,860.860 INFO    ] Checking for system updates...
[2026-06-19 08:43:39,897.897 INFO    ] 200
[2026-06-19 08:43:39,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:39,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:43:39,964.964 INFO    ] No update needed
[2026-06-19 08:43:39,967.967 INFO    ] Checking for camera pi updates...
[2026-06-19 08:43:40,000.000 INFO    ] 200
[2026-06-19 08:43:40,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:40,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:43:40,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:43:40,085.085 INFO    ] No camera update needed
[2026-06-19 08:43:40,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:43:40,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:43:40,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:43:40,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:43:42,142.142 INFO    ] ================================================
[2026-06-19 08:43:42,158.158 INFO    ] Launching Daemon at Fri Jun 19 08:43:42 IST 2026
[2026-06-19 08:43:42,169.169 INFO    ] ================================================
[2026-06-19 08:43:42,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:43:42
[2026-06-19 08:43:43,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:43:43,598.598 INFO    ] Initializing speech engine...
[2026-06-19 08:43:43,607.607 INFO    ] 2026-06-19 08:43:43
[2026-06-19 08:43:43,868.868 INFO    ] 2026-06-19 08:43:43
[2026-06-19 08:43:43,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:43:44,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:43:44,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:43:44,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:43:44,331.331 INFO    ] time= 19/06/2026 08:43:44
[2026-06-19 08:43:44,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:43:44,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:43:44,496.496 INFO    ] No existing commands found in stream
[2026-06-19 08:43:49,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:43:49,513.513 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 08:43:51,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:43:51,959.959 INFO    ] Checking for system updates...
[2026-06-19 08:43:51,998.998 INFO    ] 200
[2026-06-19 08:43:52,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:52,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:43:52,055.055 INFO    ] No update needed
[2026-06-19 08:43:52,058.058 INFO    ] Checking for camera pi updates...
[2026-06-19 08:43:52,091.091 INFO    ] 200
[2026-06-19 08:43:52,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:43:52,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:43:52,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:43:52,182.182 INFO    ] No camera update needed
[2026-06-19 08:43:52,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:43:52,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:43:52,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:43:52,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:43:54,236.236 INFO    ] ================================================
[2026-06-19 08:43:54,251.251 INFO    ] Launching Daemon at Fri Jun 19 08:43:54 IST 2026
[2026-06-19 08:43:54,262.262 INFO    ] ================================================
[2026-06-19 08:43:54,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:43:54
[2026-06-19 08:43:55,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:43:55,867.867 INFO    ] Initializing speech engine...
[2026-06-19 08:43:55,875.875 INFO    ] 2026-06-19 08:43:55
[2026-06-19 08:43:56,167.167 INFO    ] 2026-06-19 08:43:56
[2026-06-19 08:43:56,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:43:56,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:43:56,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:43:56,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:43:56,857.857 INFO    ] time= 19/06/2026 08:43:56
[2026-06-19 08:43:56,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:43:56,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:43:57,058.058 INFO    ] No existing commands found in stream
[2026-06-19 08:44:02,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:44:02,093.093 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 08:44:04,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:44:04,908.908 INFO    ] Checking for system updates...
[2026-06-19 08:44:04,949.949 INFO    ] 200
[2026-06-19 08:44:04,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:05,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:44:05,006.006 INFO    ] No update needed
[2026-06-19 08:44:05,009.009 INFO    ] Checking for camera pi updates...
[2026-06-19 08:44:05,049.049 INFO    ] 200
[2026-06-19 08:44:05,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:05,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:44:05,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:44:05,145.145 INFO    ] No camera update needed
[2026-06-19 08:44:05,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:44:05,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:44:05,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:44:05,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:44:07,199.199 INFO    ] ================================================
[2026-06-19 08:44:07,214.214 INFO    ] Launching Daemon at Fri Jun 19 08:44:07 IST 2026
[2026-06-19 08:44:07,225.225 INFO    ] ================================================
[2026-06-19 08:44:07,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:44:07
[2026-06-19 08:44:08,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:44:08,663.663 INFO    ] Initializing speech engine...
[2026-06-19 08:44:08,671.671 INFO    ] 2026-06-19 08:44:08
[2026-06-19 08:44:08,925.925 INFO    ] 2026-06-19 08:44:08
[2026-06-19 08:44:08,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:44:09,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:44:09,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:44:09,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:44:09,412.412 INFO    ] time= 19/06/2026 08:44:09
[2026-06-19 08:44:09,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:44:09,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:44:09,558.558 INFO    ] No existing commands found in stream
[2026-06-19 08:44:14,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:44:14,572.572 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 08:44:16,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:44:16,679.679 INFO    ] Checking for system updates...
[2026-06-19 08:44:16,715.715 INFO    ] 200
[2026-06-19 08:44:16,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:16,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:44:16,777.777 INFO    ] No update needed
[2026-06-19 08:44:16,779.779 INFO    ] Checking for camera pi updates...
[2026-06-19 08:44:16,815.815 INFO    ] 200
[2026-06-19 08:44:16,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:16,861.861 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:44:16,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:44:16,910.910 INFO    ] No camera update needed
[2026-06-19 08:44:16,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:44:16,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:44:16,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:44:16,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:44:18,967.967 INFO    ] ================================================
[2026-06-19 08:44:18,982.982 INFO    ] Launching Daemon at Fri Jun 19 08:44:18 IST 2026
[2026-06-19 08:44:18,993.993 INFO    ] ================================================
[2026-06-19 08:44:19,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:44:19
[2026-06-19 08:44:20,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:44:20,411.411 INFO    ] Initializing speech engine...
[2026-06-19 08:44:20,435.435 INFO    ] 2026-06-19 08:44:20
[2026-06-19 08:44:20,695.695 INFO    ] 2026-06-19 08:44:20
[2026-06-19 08:44:20,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:44:20,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:44:20,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:44:21,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:44:21,051.051 INFO    ] time= 19/06/2026 08:44:21
[2026-06-19 08:44:21,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:44:21,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:44:21,148.148 INFO    ] No existing commands found in stream
[2026-06-19 08:44:26,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:44:26,164.164 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 08:44:29,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:44:29,863.863 INFO    ] Checking for system updates...
[2026-06-19 08:44:29,899.899 INFO    ] 200
[2026-06-19 08:44:29,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:29,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:44:29,956.956 INFO    ] No update needed
[2026-06-19 08:44:29,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 08:44:29,992.992 INFO    ] 200
[2026-06-19 08:44:29,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:30,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:44:30,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:44:30,090.090 INFO    ] No camera update needed
[2026-06-19 08:44:30,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:44:30,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:44:30,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:44:30,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:44:32,146.146 INFO    ] ================================================
[2026-06-19 08:44:32,163.163 INFO    ] Launching Daemon at Fri Jun 19 08:44:32 IST 2026
[2026-06-19 08:44:32,175.175 INFO    ] ================================================
[2026-06-19 08:44:32,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:44:32
[2026-06-19 08:44:33,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:44:33,655.655 INFO    ] Initializing speech engine...
[2026-06-19 08:44:33,664.664 INFO    ] 2026-06-19 08:44:33
[2026-06-19 08:44:33,915.915 INFO    ] 2026-06-19 08:44:33
[2026-06-19 08:44:33,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:44:34,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:44:34,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:44:34,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:44:34,399.399 INFO    ] time= 19/06/2026 08:44:34
[2026-06-19 08:44:34,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:44:34,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:44:34,546.546 INFO    ] No existing commands found in stream
[2026-06-19 08:44:39,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:44:39,560.560 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 08:44:42,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:44:42,305.305 INFO    ] Checking for system updates...
[2026-06-19 08:44:42,345.345 INFO    ] 200
[2026-06-19 08:44:42,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:42,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:44:42,410.410 INFO    ] No update needed
[2026-06-19 08:44:42,412.412 INFO    ] Checking for camera pi updates...
[2026-06-19 08:44:42,446.446 INFO    ] 200
[2026-06-19 08:44:42,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:42,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:44:42,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:44:42,536.536 INFO    ] No camera update needed
[2026-06-19 08:44:42,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:44:42,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:44:42,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:44:42,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:44:44,593.593 INFO    ] ================================================
[2026-06-19 08:44:44,609.609 INFO    ] Launching Daemon at Fri Jun 19 08:44:44 IST 2026
[2026-06-19 08:44:44,620.620 INFO    ] ================================================
[2026-06-19 08:44:45,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:44:45
[2026-06-19 08:44:45,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:44:46,067.067 INFO    ] Initializing speech engine...
[2026-06-19 08:44:46,083.083 INFO    ] 2026-06-19 08:44:46
[2026-06-19 08:44:46,338.338 INFO    ] 2026-06-19 08:44:46
[2026-06-19 08:44:46,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:44:46,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:44:46,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:44:46,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:44:46,837.837 INFO    ] time= 19/06/2026 08:44:46
[2026-06-19 08:44:46,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:44:46,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:44:46,961.961 INFO    ] No existing commands found in stream
[2026-06-19 08:44:51,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:44:51,977.977 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 08:44:53,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:44:53,833.833 INFO    ] Checking for system updates...
[2026-06-19 08:44:53,869.869 INFO    ] 200
[2026-06-19 08:44:53,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:53,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:44:53,927.927 INFO    ] No update needed
[2026-06-19 08:44:53,929.929 INFO    ] Checking for camera pi updates...
[2026-06-19 08:44:53,963.963 INFO    ] 200
[2026-06-19 08:44:53,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:44:54,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:44:54,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:44:54,061.061 INFO    ] No camera update needed
[2026-06-19 08:44:54,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:44:54,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:44:54,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:44:54,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:44:56,117.117 INFO    ] ================================================
[2026-06-19 08:44:56,133.133 INFO    ] Launching Daemon at Fri Jun 19 08:44:56 IST 2026
[2026-06-19 08:44:56,144.144 INFO    ] ================================================
[2026-06-19 08:44:56,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:44:56
[2026-06-19 08:44:57,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:44:57,779.779 INFO    ] Initializing speech engine...
[2026-06-19 08:44:57,791.791 INFO    ] 2026-06-19 08:44:57
[2026-06-19 08:44:58,060.060 INFO    ] 2026-06-19 08:44:58
[2026-06-19 08:44:58,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:44:58,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:44:58,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:44:58,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:44:58,559.559 INFO    ] time= 19/06/2026 08:44:58
[2026-06-19 08:44:58,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:44:58,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:44:58,740.740 INFO    ] No existing commands found in stream
[2026-06-19 08:45:03,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:45:03,774.774 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 08:45:05,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:45:05,303.303 INFO    ] Checking for system updates...
[2026-06-19 08:45:05,346.346 INFO    ] 200
[2026-06-19 08:45:05,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:05,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:45:05,413.413 INFO    ] No update needed
[2026-06-19 08:45:05,416.416 INFO    ] Checking for camera pi updates...
[2026-06-19 08:45:05,454.454 INFO    ] 200
[2026-06-19 08:45:05,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:05,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:45:05,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:45:05,546.546 INFO    ] No camera update needed
[2026-06-19 08:45:05,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:45:05,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:45:05,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:45:05,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:45:07,608.608 INFO    ] ================================================
[2026-06-19 08:45:07,623.623 INFO    ] Launching Daemon at Fri Jun 19 08:45:07 IST 2026
[2026-06-19 08:45:07,634.634 INFO    ] ================================================
[2026-06-19 08:45:08,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:45:08
[2026-06-19 08:45:08,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:45:09,094.094 INFO    ] Initializing speech engine...
[2026-06-19 08:45:09,099.099 INFO    ] 2026-06-19 08:45:09
[2026-06-19 08:45:09,354.354 INFO    ] 2026-06-19 08:45:09
[2026-06-19 08:45:09,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:45:09,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:45:09,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:45:09,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:45:09,821.821 INFO    ] time= 19/06/2026 08:45:09
[2026-06-19 08:45:09,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:45:09,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:45:09,973.973 INFO    ] No existing commands found in stream
[2026-06-19 08:45:15,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:45:15,006.006 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 08:45:18,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:45:18,934.934 INFO    ] Checking for system updates...
[2026-06-19 08:45:18,974.974 INFO    ] 200
[2026-06-19 08:45:18,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:19,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:45:19,033.033 INFO    ] No update needed
[2026-06-19 08:45:19,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 08:45:19,071.071 INFO    ] 200
[2026-06-19 08:45:19,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:19,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:45:19,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:45:19,168.168 INFO    ] No camera update needed
[2026-06-19 08:45:19,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:45:19,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:45:19,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:45:19,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:45:21,228.228 INFO    ] ================================================
[2026-06-19 08:45:21,243.243 INFO    ] Launching Daemon at Fri Jun 19 08:45:21 IST 2026
[2026-06-19 08:45:21,254.254 INFO    ] ================================================
[2026-06-19 08:45:21,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:45:21
[2026-06-19 08:45:22,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:45:22,698.698 INFO    ] Initializing speech engine...
[2026-06-19 08:45:22,714.714 INFO    ] 2026-06-19 08:45:22
[2026-06-19 08:45:22,971.971 INFO    ] 2026-06-19 08:45:22
[2026-06-19 08:45:23,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:45:23,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:45:23,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:45:23,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:45:23,475.475 INFO    ] time= 19/06/2026 08:45:23
[2026-06-19 08:45:23,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:45:23,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:45:23,661.661 INFO    ] No existing commands found in stream
[2026-06-19 08:45:28,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:45:28,689.689 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 08:45:30,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:45:30,748.748 INFO    ] Checking for system updates...
[2026-06-19 08:45:30,790.790 INFO    ] 200
[2026-06-19 08:45:30,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:30,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:45:30,853.853 INFO    ] No update needed
[2026-06-19 08:45:30,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 08:45:30,895.895 INFO    ] 200
[2026-06-19 08:45:30,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:30,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:45:31,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:45:31,088.088 INFO    ] No camera update needed
[2026-06-19 08:45:31,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:45:31,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:45:31,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:45:31,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:45:33,150.150 INFO    ] ================================================
[2026-06-19 08:45:33,166.166 INFO    ] Launching Daemon at Fri Jun 19 08:45:33 IST 2026
[2026-06-19 08:45:33,177.177 INFO    ] ================================================
[2026-06-19 08:45:33,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:45:33
[2026-06-19 08:45:34,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:45:34,637.637 INFO    ] Initializing speech engine...
[2026-06-19 08:45:34,644.644 INFO    ] 2026-06-19 08:45:34
[2026-06-19 08:45:34,905.905 INFO    ] 2026-06-19 08:45:34
[2026-06-19 08:45:34,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:45:35,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:45:35,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:45:35,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:45:35,394.394 INFO    ] time= 19/06/2026 08:45:35
[2026-06-19 08:45:35,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:45:35,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:45:35,584.584 INFO    ] No existing commands found in stream
[2026-06-19 08:45:40,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:45:40,615.615 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 08:45:44,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:45:44,139.139 INFO    ] Checking for system updates...
[2026-06-19 08:45:44,176.176 INFO    ] 200
[2026-06-19 08:45:44,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:44,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:45:44,239.239 INFO    ] No update needed
[2026-06-19 08:45:44,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 08:45:44,275.275 INFO    ] 200
[2026-06-19 08:45:44,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:44,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:45:44,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:45:44,374.374 INFO    ] No camera update needed
[2026-06-19 08:45:44,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:45:44,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:45:44,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:45:44,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:45:46,431.431 INFO    ] ================================================
[2026-06-19 08:45:46,446.446 INFO    ] Launching Daemon at Fri Jun 19 08:45:46 IST 2026
[2026-06-19 08:45:46,457.457 INFO    ] ================================================
[2026-06-19 08:45:47,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:45:47
[2026-06-19 08:45:47,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:45:47,997.997 INFO    ] Initializing speech engine...
[2026-06-19 08:45:48,008.008 INFO    ] 2026-06-19 08:45:48
[2026-06-19 08:45:48,263.263 INFO    ] 2026-06-19 08:45:48
[2026-06-19 08:45:48,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:45:48,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:45:48,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:45:48,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:45:48,728.728 INFO    ] time= 19/06/2026 08:45:48
[2026-06-19 08:45:48,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:45:48,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:45:48,874.874 INFO    ] No existing commands found in stream
[2026-06-19 08:45:53,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:45:53,897.897 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 08:45:57,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:45:57,670.670 INFO    ] Checking for system updates...
[2026-06-19 08:45:57,706.706 INFO    ] 200
[2026-06-19 08:45:57,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:57,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:45:57,763.763 INFO    ] No update needed
[2026-06-19 08:45:57,765.765 INFO    ] Checking for camera pi updates...
[2026-06-19 08:45:57,800.800 INFO    ] 200
[2026-06-19 08:45:57,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:45:57,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:45:57,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:45:57,890.890 INFO    ] No camera update needed
[2026-06-19 08:45:57,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:45:57,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:45:57,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:45:57,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:45:59,947.947 INFO    ] ================================================
[2026-06-19 08:45:59,962.962 INFO    ] Launching Daemon at Fri Jun 19 08:45:59 IST 2026
[2026-06-19 08:45:59,974.974 INFO    ] ================================================
[2026-06-19 08:46:00,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:46:00
[2026-06-19 08:46:01,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:46:01,585.585 INFO    ] Initializing speech engine...
[2026-06-19 08:46:01,593.593 INFO    ] 2026-06-19 08:46:01
[2026-06-19 08:46:02,036.036 INFO    ] 2026-06-19 08:46:01
[2026-06-19 08:46:02,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:46:02,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:46:02,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:46:02,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:46:02,585.585 INFO    ] time= 19/06/2026 08:46:02
[2026-06-19 08:46:02,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:46:02,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:46:02,744.744 INFO    ] No existing commands found in stream
[2026-06-19 08:46:07,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:46:07,761.761 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 08:46:10,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:46:10,707.707 INFO    ] Checking for system updates...
[2026-06-19 08:46:10,744.744 INFO    ] 200
[2026-06-19 08:46:10,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:46:10,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:46:10,805.805 INFO    ] No update needed
[2026-06-19 08:46:10,808.808 INFO    ] Checking for camera pi updates...
[2026-06-19 08:46:10,843.843 INFO    ] 200
[2026-06-19 08:46:10,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:46:10,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:46:10,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:46:10,946.946 INFO    ] No camera update needed
[2026-06-19 08:46:10,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:46:10,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:46:10,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:46:10,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:46:13,006.006 INFO    ] ================================================
[2026-06-19 08:46:13,022.022 INFO    ] Launching Daemon at Fri Jun 19 08:46:13 IST 2026
[2026-06-19 08:46:13,034.034 INFO    ] ================================================
[2026-06-19 08:46:13,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:46:13
[2026-06-19 08:46:14,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:46:14,632.632 INFO    ] Initializing speech engine...
[2026-06-19 08:46:14,640.640 INFO    ] 2026-06-19 08:46:14
[2026-06-19 08:46:14,925.925 INFO    ] 2026-06-19 08:46:14
[2026-06-19 08:46:14,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:46:15,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:46:15,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:46:15,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:46:15,402.402 INFO    ] time= 19/06/2026 08:46:15
[2026-06-19 08:46:15,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:46:15,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:46:15,603.603 INFO    ] No existing commands found in stream
[2026-06-19 08:46:20,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:46:20,630.630 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 08:46:24,376.376 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:46:24,379.379 INFO    ] Checking for system updates...
[2026-06-19 08:46:24,418.418 INFO    ] 200
[2026-06-19 08:46:24,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:46:24,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:46:24,481.481 INFO    ] No update needed
[2026-06-19 08:46:24,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 08:46:24,517.517 INFO    ] 200
[2026-06-19 08:46:24,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:46:24,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:46:24,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:46:24,592.592 INFO    ] No camera update needed
[2026-06-19 08:46:24,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:46:24,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:46:24,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:46:24,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:46:26,648.648 INFO    ] ================================================
[2026-06-19 08:46:26,664.664 INFO    ] Launching Daemon at Fri Jun 19 08:46:26 IST 2026
[2026-06-19 08:46:26,675.675 INFO    ] ================================================
[2026-06-19 08:46:27,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:46:27
[2026-06-19 08:46:27,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:46:28,101.101 INFO    ] Initializing speech engine...
[2026-06-19 08:46:28,110.110 INFO    ] 2026-06-19 08:46:28
[2026-06-19 08:46:28,361.361 INFO    ] 2026-06-19 08:46:28
[2026-06-19 08:46:28,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:46:28,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:46:28,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:46:28,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:46:28,847.847 INFO    ] time= 19/06/2026 08:46:28
[2026-06-19 08:46:28,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:46:28,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:46:28,999.999 INFO    ] No existing commands found in stream
[2026-06-19 08:46:34,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:46:34,031.031 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 08:46:37,152.152 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:46:37,154.154 INFO    ] Checking for system updates...
[2026-06-19 08:46:37,194.194 INFO    ] 200
[2026-06-19 08:46:37,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:46:37,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:46:37,252.252 INFO    ] No update needed
[2026-06-19 08:46:37,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 08:46:37,292.292 INFO    ] 200
[2026-06-19 08:46:37,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:46:37,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:46:37,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:46:37,382.382 INFO    ] No camera update needed
[2026-06-19 08:46:37,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:46:37,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:46:37,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:46:37,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:46:39,441.441 INFO    ] ================================================
[2026-06-19 08:46:39,457.457 INFO    ] Launching Daemon at Fri Jun 19 08:46:39 IST 2026
[2026-06-19 08:46:39,468.468 INFO    ] ================================================
[2026-06-19 08:46:40,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:46:40
[2026-06-19 08:46:40,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:46:41,110.110 INFO    ] Initializing speech engine...
[2026-06-19 08:46:41,123.123 INFO    ] 2026-06-19 08:46:41
[2026-06-19 08:46:41,411.411 INFO    ] 2026-06-19 08:46:41
[2026-06-19 08:46:41,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:46:41,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:46:41,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:46:41,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:46:41,962.962 INFO    ] time= 19/06/2026 08:46:41
[2026-06-19 08:46:41,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:46:41,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:46:42,107.107 INFO    ] No existing commands found in stream
[2026-06-19 08:46:47,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:46:47,137.137 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 08:46:50,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:46:50,542.542 INFO    ] Checking for system updates...
[2026-06-19 08:46:50,591.591 INFO    ] 200
[2026-06-19 08:46:50,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 08:46:50,597.597 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 08:46:50,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 08:46:50,647.647 INFO    ] 200
[2026-06-19 08:46:50,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 08:46:50,653.653 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 08:46:50,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:46:50,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:46:50,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:46:50,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:46:52,712.712 INFO    ] ================================================
[2026-06-19 08:46:52,729.729 INFO    ] Launching Daemon at Fri Jun 19 08:46:52 IST 2026
[2026-06-19 08:46:52,740.740 INFO    ] ================================================
[2026-06-19 08:46:53,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:46:53
[2026-06-19 08:46:54,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:46:54,372.372 INFO    ] Initializing speech engine...
[2026-06-19 08:46:54,380.380 INFO    ] 2026-06-19 08:46:54
[2026-06-19 08:46:54,670.670 INFO    ] 2026-06-19 08:46:54
[2026-06-19 08:46:54,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:46:54,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:46:54,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:46:55,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:46:55,221.221 INFO    ] time= 19/06/2026 08:46:55
[2026-06-19 08:46:55,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:46:55,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:46:55,399.399 INFO    ] No existing commands found in stream
[2026-06-19 08:47:00,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:47:00,433.433 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 08:47:02,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:47:02,351.351 INFO    ] Checking for system updates...
[2026-06-19 08:47:02,400.400 INFO    ] 200
[2026-06-19 08:47:02,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:02,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:47:02,472.472 INFO    ] No update needed
[2026-06-19 08:47:02,475.475 INFO    ] Checking for camera pi updates...
[2026-06-19 08:47:02,518.518 INFO    ] 200
[2026-06-19 08:47:02,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:02,572.572 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:47:02,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:47:02,610.610 INFO    ] No camera update needed
[2026-06-19 08:47:02,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:47:02,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:47:02,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:47:02,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:47:04,676.676 INFO    ] ================================================
[2026-06-19 08:47:04,691.691 INFO    ] Launching Daemon at Fri Jun 19 08:47:04 IST 2026
[2026-06-19 08:47:04,702.702 INFO    ] ================================================
[2026-06-19 08:47:05,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:47:05
[2026-06-19 08:47:05,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:47:06,165.165 INFO    ] Initializing speech engine...
[2026-06-19 08:47:06,174.174 INFO    ] 2026-06-19 08:47:06
[2026-06-19 08:47:06,434.434 INFO    ] 2026-06-19 08:47:06
[2026-06-19 08:47:06,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:47:06,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:47:06,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:47:06,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:47:06,860.860 INFO    ] time= 19/06/2026 08:47:06
[2026-06-19 08:47:06,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:47:06,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:47:06,923.923 INFO    ] No existing commands found in stream
[2026-06-19 08:47:11,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:47:11,935.935 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 08:47:14,007.007 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:47:14,010.010 INFO    ] Checking for system updates...
[2026-06-19 08:47:14,047.047 INFO    ] 200
[2026-06-19 08:47:14,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:14,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:47:14,104.104 INFO    ] No update needed
[2026-06-19 08:47:14,107.107 INFO    ] Checking for camera pi updates...
[2026-06-19 08:47:14,141.141 INFO    ] 200
[2026-06-19 08:47:14,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:14,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:47:14,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:47:14,229.229 INFO    ] No camera update needed
[2026-06-19 08:47:14,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:47:14,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:47:14,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:47:14,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:47:16,286.286 INFO    ] ================================================
[2026-06-19 08:47:16,301.301 INFO    ] Launching Daemon at Fri Jun 19 08:47:16 IST 2026
[2026-06-19 08:47:16,312.312 INFO    ] ================================================
[2026-06-19 08:47:16,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:47:16
[2026-06-19 08:47:17,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:47:17,752.752 INFO    ] Initializing speech engine...
[2026-06-19 08:47:17,759.759 INFO    ] 2026-06-19 08:47:17
[2026-06-19 08:47:18,022.022 INFO    ] 2026-06-19 08:47:18
[2026-06-19 08:47:18,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:47:18,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:47:18,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:47:18,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:47:18,468.468 INFO    ] time= 19/06/2026 08:47:18
[2026-06-19 08:47:18,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:47:18,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:47:18,641.641 INFO    ] No existing commands found in stream
[2026-06-19 08:47:23,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:47:23,656.656 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 08:47:25,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:47:25,170.170 INFO    ] Checking for system updates...
[2026-06-19 08:47:25,211.211 INFO    ] 200
[2026-06-19 08:47:25,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:25,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:47:25,273.273 INFO    ] No update needed
[2026-06-19 08:47:25,276.276 INFO    ] Checking for camera pi updates...
[2026-06-19 08:47:25,311.311 INFO    ] 200
[2026-06-19 08:47:25,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:25,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:47:25,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:47:25,419.419 INFO    ] No camera update needed
[2026-06-19 08:47:25,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:47:25,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:47:25,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:47:25,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:47:27,478.478 INFO    ] ================================================
[2026-06-19 08:47:27,493.493 INFO    ] Launching Daemon at Fri Jun 19 08:47:27 IST 2026
[2026-06-19 08:47:27,504.504 INFO    ] ================================================
[2026-06-19 08:47:28,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:47:28
[2026-06-19 08:47:28,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:47:28,961.961 INFO    ] Initializing speech engine...
[2026-06-19 08:47:28,971.971 INFO    ] 2026-06-19 08:47:28
[2026-06-19 08:47:29,229.229 INFO    ] 2026-06-19 08:47:29
[2026-06-19 08:47:29,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:47:29,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:47:29,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:47:29,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:47:29,668.668 INFO    ] time= 19/06/2026 08:47:29
[2026-06-19 08:47:29,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:47:29,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:47:29,832.832 INFO    ] No existing commands found in stream
[2026-06-19 08:47:34,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:47:34,847.847 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 08:47:37,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:47:37,100.100 INFO    ] Checking for system updates...
[2026-06-19 08:47:37,136.136 INFO    ] 200
[2026-06-19 08:47:37,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:37,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:47:37,195.195 INFO    ] No update needed
[2026-06-19 08:47:37,202.202 INFO    ] Checking for camera pi updates...
[2026-06-19 08:47:37,236.236 INFO    ] 200
[2026-06-19 08:47:37,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:37,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:47:37,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:47:37,433.433 INFO    ] No camera update needed
[2026-06-19 08:47:37,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:47:37,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:47:37,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:47:37,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:47:39,489.489 INFO    ] ================================================
[2026-06-19 08:47:39,505.505 INFO    ] Launching Daemon at Fri Jun 19 08:47:39 IST 2026
[2026-06-19 08:47:39,516.516 INFO    ] ================================================
[2026-06-19 08:47:40,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:47:40
[2026-06-19 08:47:40,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:47:40,989.989 INFO    ] Initializing speech engine...
[2026-06-19 08:47:40,995.995 INFO    ] 2026-06-19 08:47:40
[2026-06-19 08:47:41,254.254 INFO    ] 2026-06-19 08:47:41
[2026-06-19 08:47:41,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:47:41,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:47:41,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:47:41,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:47:41,719.719 INFO    ] time= 19/06/2026 08:47:41
[2026-06-19 08:47:41,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:47:41,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:47:41,871.871 INFO    ] No existing commands found in stream
[2026-06-19 08:47:46,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:47:46,899.899 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 08:47:49,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:47:49,509.509 INFO    ] Checking for system updates...
[2026-06-19 08:47:49,551.551 INFO    ] 200
[2026-06-19 08:47:49,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:49,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:47:49,611.611 INFO    ] No update needed
[2026-06-19 08:47:49,613.613 INFO    ] Checking for camera pi updates...
[2026-06-19 08:47:49,648.648 INFO    ] 200
[2026-06-19 08:47:49,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:49,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:47:49,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:47:49,723.723 INFO    ] No camera update needed
[2026-06-19 08:47:49,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:47:49,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:47:49,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:47:49,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:47:51,784.784 INFO    ] ================================================
[2026-06-19 08:47:51,800.800 INFO    ] Launching Daemon at Fri Jun 19 08:47:51 IST 2026
[2026-06-19 08:47:51,811.811 INFO    ] ================================================
[2026-06-19 08:47:52,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:47:52
[2026-06-19 08:47:52,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:47:53,234.234 INFO    ] Initializing speech engine...
[2026-06-19 08:47:53,242.242 INFO    ] 2026-06-19 08:47:53
[2026-06-19 08:47:53,494.494 INFO    ] 2026-06-19 08:47:53
[2026-06-19 08:47:53,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:47:53,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:47:53,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:47:53,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:47:53,955.955 INFO    ] time= 19/06/2026 08:47:53
[2026-06-19 08:47:54,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:47:54,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:47:54,127.127 INFO    ] No existing commands found in stream
[2026-06-19 08:47:59,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:47:59,140.140 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 08:47:59,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:47:59,539.539 INFO    ] Checking for system updates...
[2026-06-19 08:47:59,574.574 INFO    ] 200
[2026-06-19 08:47:59,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:59,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:47:59,631.631 INFO    ] No update needed
[2026-06-19 08:47:59,633.633 INFO    ] Checking for camera pi updates...
[2026-06-19 08:47:59,668.668 INFO    ] 200
[2026-06-19 08:47:59,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:47:59,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:47:59,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:47:59,752.752 INFO    ] No camera update needed
[2026-06-19 08:47:59,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:47:59,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:47:59,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:47:59,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:48:01,814.814 INFO    ] ================================================
[2026-06-19 08:48:01,842.842 INFO    ] Launching Daemon at Fri Jun 19 08:48:01 IST 2026
[2026-06-19 08:48:01,864.864 INFO    ] ================================================
[2026-06-19 08:48:02,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:48:02
[2026-06-19 08:48:03,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:48:03,472.472 INFO    ] Initializing speech engine...
[2026-06-19 08:48:03,487.487 INFO    ] 2026-06-19 08:48:03
[2026-06-19 08:48:03,756.756 INFO    ] 2026-06-19 08:48:03
[2026-06-19 08:48:03,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:48:03,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:48:03,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:48:04,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:48:04,134.134 INFO    ] time= 19/06/2026 08:48:04
[2026-06-19 08:48:04,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:48:04,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:48:04,294.294 INFO    ] No existing commands found in stream
[2026-06-19 08:48:09,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:48:09,328.328 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 08:48:12,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:48:12,253.253 INFO    ] Checking for system updates...
[2026-06-19 08:48:12,290.290 INFO    ] 200
[2026-06-19 08:48:12,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:48:12,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:48:12,348.348 INFO    ] No update needed
[2026-06-19 08:48:12,350.350 INFO    ] Checking for camera pi updates...
[2026-06-19 08:48:12,388.388 INFO    ] 200
[2026-06-19 08:48:12,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:48:12,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:48:12,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:48:12,481.481 INFO    ] No camera update needed
[2026-06-19 08:48:12,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:48:12,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:48:12,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:48:12,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:48:14,541.541 INFO    ] ================================================
[2026-06-19 08:48:14,561.561 INFO    ] Launching Daemon at Fri Jun 19 08:48:14 IST 2026
[2026-06-19 08:48:14,572.572 INFO    ] ================================================
[2026-06-19 08:48:15,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:48:15
[2026-06-19 08:48:15,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:48:16,056.056 INFO    ] Initializing speech engine...
[2026-06-19 08:48:16,079.079 INFO    ] 2026-06-19 08:48:16
[2026-06-19 08:48:16,347.347 INFO    ] 2026-06-19 08:48:16
[2026-06-19 08:48:16,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:48:16,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:48:16,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:48:16,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:48:16,735.735 INFO    ] time= 19/06/2026 08:48:16
[2026-06-19 08:48:16,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:48:16,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:48:16,930.930 INFO    ] No existing commands found in stream
[2026-06-19 08:48:21,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:48:21,948.948 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 08:48:25,076.076 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:48:25,079.079 INFO    ] Checking for system updates...
[2026-06-19 08:48:25,118.118 INFO    ] 200
[2026-06-19 08:48:25,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:48:25,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:48:25,176.176 INFO    ] No update needed
[2026-06-19 08:48:25,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 08:48:25,212.212 INFO    ] 200
[2026-06-19 08:48:25,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:48:25,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:48:25,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:48:25,303.303 INFO    ] No camera update needed
[2026-06-19 08:48:25,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:48:25,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:48:25,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:48:25,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:48:27,358.358 INFO    ] ================================================
[2026-06-19 08:48:27,373.373 INFO    ] Launching Daemon at Fri Jun 19 08:48:27 IST 2026
[2026-06-19 08:48:27,384.384 INFO    ] ================================================
[2026-06-19 08:48:27,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:48:27
[2026-06-19 08:48:28,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:48:28,823.823 INFO    ] Initializing speech engine...
[2026-06-19 08:48:28,832.832 INFO    ] 2026-06-19 08:48:28
[2026-06-19 08:48:29,080.080 INFO    ] 2026-06-19 08:48:29
[2026-06-19 08:48:29,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:48:29,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:48:29,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:48:29,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:48:29,452.452 INFO    ] time= 19/06/2026 08:48:29
[2026-06-19 08:48:29,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:48:29,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:48:29,635.635 INFO    ] No existing commands found in stream
[2026-06-19 08:48:34,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:48:34,662.662 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 08:48:38,669.669 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:48:38,671.671 INFO    ] Checking for system updates...
[2026-06-19 08:48:38,711.711 INFO    ] 200
[2026-06-19 08:48:38,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:48:38,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:48:38,769.769 INFO    ] No update needed
[2026-06-19 08:48:38,771.771 INFO    ] Checking for camera pi updates...
[2026-06-19 08:48:38,806.806 INFO    ] 200
[2026-06-19 08:48:38,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:48:38,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:48:38,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:48:38,891.891 INFO    ] No camera update needed
[2026-06-19 08:48:38,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:48:38,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:48:38,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:48:38,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:48:40,948.948 INFO    ] ================================================
[2026-06-19 08:48:40,964.964 INFO    ] Launching Daemon at Fri Jun 19 08:48:40 IST 2026
[2026-06-19 08:48:40,975.975 INFO    ] ================================================
[2026-06-19 08:48:41,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:48:41
[2026-06-19 08:48:42,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:48:42,404.404 INFO    ] Initializing speech engine...
[2026-06-19 08:48:42,417.417 INFO    ] 2026-06-19 08:48:42
[2026-06-19 08:48:42,702.702 INFO    ] 2026-06-19 08:48:42
[2026-06-19 08:48:42,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:48:42,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:48:42,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:48:43,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:48:43,103.103 INFO    ] time= 19/06/2026 08:48:43
[2026-06-19 08:48:43,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:48:43,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:48:43,211.211 INFO    ] No existing commands found in stream
[2026-06-19 08:48:48,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:48:48,226.226 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 08:48:48,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:48:48,946.946 INFO    ] Checking for system updates...
[2026-06-19 08:48:48,985.985 INFO    ] 200
[2026-06-19 08:48:48,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:48:49,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:48:49,053.053 INFO    ] No update needed
[2026-06-19 08:48:49,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 08:48:49,092.092 INFO    ] 200
[2026-06-19 08:48:49,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:48:49,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:48:49,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:48:49,175.175 INFO    ] No camera update needed
[2026-06-19 08:48:49,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:48:49,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:48:49,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:48:49,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:48:51,234.234 INFO    ] ================================================
[2026-06-19 08:48:51,249.249 INFO    ] Launching Daemon at Fri Jun 19 08:48:51 IST 2026
[2026-06-19 08:48:51,260.260 INFO    ] ================================================
[2026-06-19 08:48:51,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:48:51
[2026-06-19 08:48:52,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:48:52,691.691 INFO    ] Initializing speech engine...
[2026-06-19 08:48:52,700.700 INFO    ] 2026-06-19 08:48:52
[2026-06-19 08:48:52,995.995 INFO    ] 2026-06-19 08:48:52
[2026-06-19 08:48:53,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:48:53,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:48:53,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:48:53,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:48:53,412.412 INFO    ] time= 19/06/2026 08:48:53
[2026-06-19 08:48:53,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:48:53,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:48:53,566.566 INFO    ] No existing commands found in stream
[2026-06-19 08:48:58,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:48:58,594.594 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 08:49:02,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:49:02,543.543 INFO    ] Checking for system updates...
[2026-06-19 08:49:02,583.583 INFO    ] 200
[2026-06-19 08:49:02,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:02,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:49:02,650.650 INFO    ] No update needed
[2026-06-19 08:49:02,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 08:49:02,691.691 INFO    ] 200
[2026-06-19 08:49:02,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:02,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:49:02,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:49:02,785.785 INFO    ] No camera update needed
[2026-06-19 08:49:02,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:49:02,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:49:02,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:49:02,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:49:04,847.847 INFO    ] ================================================
[2026-06-19 08:49:04,863.863 INFO    ] Launching Daemon at Fri Jun 19 08:49:04 IST 2026
[2026-06-19 08:49:04,874.874 INFO    ] ================================================
[2026-06-19 08:49:05,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:49:05
[2026-06-19 08:49:06,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:49:06,297.297 INFO    ] Initializing speech engine...
[2026-06-19 08:49:06,316.316 INFO    ] 2026-06-19 08:49:06
[2026-06-19 08:49:06,601.601 INFO    ] 2026-06-19 08:49:06
[2026-06-19 08:49:06,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:49:06,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:49:06,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:49:07,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:49:07,093.093 INFO    ] time= 19/06/2026 08:49:07
[2026-06-19 08:49:07,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:49:07,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:49:07,184.184 INFO    ] No existing commands found in stream
[2026-06-19 08:49:12,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:49:12,210.210 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 08:49:16,476.476 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:49:16,479.479 INFO    ] Checking for system updates...
[2026-06-19 08:49:16,514.514 INFO    ] 200
[2026-06-19 08:49:16,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:16,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:49:16,571.571 INFO    ] No update needed
[2026-06-19 08:49:16,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 08:49:16,607.607 INFO    ] 200
[2026-06-19 08:49:16,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:16,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:49:16,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:49:16,691.691 INFO    ] No camera update needed
[2026-06-19 08:49:16,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:49:16,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:49:16,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:49:16,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:49:18,746.746 INFO    ] ================================================
[2026-06-19 08:49:18,761.761 INFO    ] Launching Daemon at Fri Jun 19 08:49:18 IST 2026
[2026-06-19 08:49:18,772.772 INFO    ] ================================================
[2026-06-19 08:49:19,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:49:19
[2026-06-19 08:49:19,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:49:20,206.206 INFO    ] Initializing speech engine...
[2026-06-19 08:49:20,215.215 INFO    ] 2026-06-19 08:49:20
[2026-06-19 08:49:20,465.465 INFO    ] 2026-06-19 08:49:20
[2026-06-19 08:49:20,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:49:20,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:49:20,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:49:20,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:49:20,956.956 INFO    ] time= 19/06/2026 08:49:20
[2026-06-19 08:49:21,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:49:21,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:49:21,086.086 INFO    ] No existing commands found in stream
[2026-06-19 08:49:26,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:49:26,103.103 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 08:49:30,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:49:30,480.480 INFO    ] Checking for system updates...
[2026-06-19 08:49:30,517.517 INFO    ] 200
[2026-06-19 08:49:30,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:30,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:49:30,580.580 INFO    ] No update needed
[2026-06-19 08:49:30,583.583 INFO    ] Checking for camera pi updates...
[2026-06-19 08:49:30,621.621 INFO    ] 200
[2026-06-19 08:49:30,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:30,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:49:30,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:49:30,709.709 INFO    ] No camera update needed
[2026-06-19 08:49:30,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:49:30,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:49:30,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:49:30,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:49:32,771.771 INFO    ] ================================================
[2026-06-19 08:49:32,789.789 INFO    ] Launching Daemon at Fri Jun 19 08:49:32 IST 2026
[2026-06-19 08:49:32,803.803 INFO    ] ================================================
[2026-06-19 08:49:33,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:49:33
[2026-06-19 08:49:34,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:49:34,358.358 INFO    ] Initializing speech engine...
[2026-06-19 08:49:34,365.365 INFO    ] 2026-06-19 08:49:34
[2026-06-19 08:49:34,653.653 INFO    ] 2026-06-19 08:49:34
[2026-06-19 08:49:34,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:49:34,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:49:34,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:49:35,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:49:35,182.182 INFO    ] time= 19/06/2026 08:49:35
[2026-06-19 08:49:35,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:49:35,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:49:35,323.323 INFO    ] No existing commands found in stream
[2026-06-19 08:49:40,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:49:40,349.349 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 08:49:41,988.988 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:49:41,990.990 INFO    ] Checking for system updates...
[2026-06-19 08:49:42,027.027 INFO    ] 200
[2026-06-19 08:49:42,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:42,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:49:42,090.090 INFO    ] No update needed
[2026-06-19 08:49:42,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 08:49:42,127.127 INFO    ] 200
[2026-06-19 08:49:42,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:42,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:49:42,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:49:42,344.344 INFO    ] No camera update needed
[2026-06-19 08:49:42,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:49:42,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:49:42,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:49:42,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:49:44,402.402 INFO    ] ================================================
[2026-06-19 08:49:44,417.417 INFO    ] Launching Daemon at Fri Jun 19 08:49:44 IST 2026
[2026-06-19 08:49:44,428.428 INFO    ] ================================================
[2026-06-19 08:49:44,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:49:44
[2026-06-19 08:49:45,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:49:45,859.859 INFO    ] Initializing speech engine...
[2026-06-19 08:49:45,869.869 INFO    ] 2026-06-19 08:49:45
[2026-06-19 08:49:46,130.130 INFO    ] 2026-06-19 08:49:46
[2026-06-19 08:49:46,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:49:46,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:49:46,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:49:46,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:49:46,529.529 INFO    ] time= 19/06/2026 08:49:46
[2026-06-19 08:49:46,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:49:46,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:49:46,697.697 INFO    ] No existing commands found in stream
[2026-06-19 08:49:51,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:49:51,720.720 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 08:49:54,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:49:54,957.957 INFO    ] Checking for system updates...
[2026-06-19 08:49:54,996.996 INFO    ] 200
[2026-06-19 08:49:54,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:55,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:49:55,060.060 INFO    ] No update needed
[2026-06-19 08:49:55,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 08:49:55,099.099 INFO    ] 200
[2026-06-19 08:49:55,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:49:55,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:49:55,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:49:55,197.197 INFO    ] No camera update needed
[2026-06-19 08:49:55,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:49:55,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:49:55,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:49:55,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:49:57,259.259 INFO    ] ================================================
[2026-06-19 08:49:57,274.274 INFO    ] Launching Daemon at Fri Jun 19 08:49:57 IST 2026
[2026-06-19 08:49:57,284.284 INFO    ] ================================================
[2026-06-19 08:49:57,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:49:57
[2026-06-19 08:49:58,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:49:58,690.690 INFO    ] Initializing speech engine...
[2026-06-19 08:49:58,714.714 INFO    ] 2026-06-19 08:49:58
[2026-06-19 08:49:58,979.979 INFO    ] 2026-06-19 08:49:58
[2026-06-19 08:49:59,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:49:59,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:49:59,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:49:59,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:49:59,376.376 INFO    ] time= 19/06/2026 08:49:59
[2026-06-19 08:49:59,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:49:59,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:49:59,461.461 INFO    ] No existing commands found in stream
[2026-06-19 08:50:04,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:50:04,477.477 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 08:50:07,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:50:07,918.918 INFO    ] Checking for system updates...
[2026-06-19 08:50:07,965.965 INFO    ] 200
[2026-06-19 08:50:07,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:08,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:50:08,024.024 INFO    ] No update needed
[2026-06-19 08:50:08,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 08:50:08,064.064 INFO    ] 200
[2026-06-19 08:50:08,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:08,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:50:08,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:50:08,138.138 INFO    ] No camera update needed
[2026-06-19 08:50:08,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:50:08,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:50:08,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:50:08,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:50:10,194.194 INFO    ] ================================================
[2026-06-19 08:50:10,209.209 INFO    ] Launching Daemon at Fri Jun 19 08:50:10 IST 2026
[2026-06-19 08:50:10,220.220 INFO    ] ================================================
[2026-06-19 08:50:10,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:50:10
[2026-06-19 08:50:11,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:50:11,813.813 INFO    ] Initializing speech engine...
[2026-06-19 08:50:11,825.825 INFO    ] 2026-06-19 08:50:11
[2026-06-19 08:50:12,133.133 INFO    ] 2026-06-19 08:50:12
[2026-06-19 08:50:12,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:50:12,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:50:12,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:50:12,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:50:12,636.636 INFO    ] time= 19/06/2026 08:50:12
[2026-06-19 08:50:12,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:50:12,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:50:12,795.795 INFO    ] No existing commands found in stream
[2026-06-19 08:50:17,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:50:17,821.821 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 08:50:20,063.063 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:50:20,067.067 INFO    ] Checking for system updates...
[2026-06-19 08:50:20,104.104 INFO    ] 200
[2026-06-19 08:50:20,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:20,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:50:20,163.163 INFO    ] No update needed
[2026-06-19 08:50:20,165.165 INFO    ] Checking for camera pi updates...
[2026-06-19 08:50:20,203.203 INFO    ] 200
[2026-06-19 08:50:20,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:20,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:50:20,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:50:20,308.308 INFO    ] No camera update needed
[2026-06-19 08:50:20,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:50:20,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:50:20,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:50:20,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:50:22,367.367 INFO    ] ================================================
[2026-06-19 08:50:22,386.386 INFO    ] Launching Daemon at Fri Jun 19 08:50:22 IST 2026
[2026-06-19 08:50:22,397.397 INFO    ] ================================================
[2026-06-19 08:50:23,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:50:23
[2026-06-19 08:50:23,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:50:23,982.982 INFO    ] Initializing speech engine...
[2026-06-19 08:50:23,991.991 INFO    ] 2026-06-19 08:50:23
[2026-06-19 08:50:24,276.276 INFO    ] 2026-06-19 08:50:24
[2026-06-19 08:50:24,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:50:24,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:50:24,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:50:24,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:50:24,824.824 INFO    ] time= 19/06/2026 08:50:24
[2026-06-19 08:50:24,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:50:24,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:50:24,984.984 INFO    ] No existing commands found in stream
[2026-06-19 08:50:29,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:50:30,001.001 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 08:50:33,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:50:33,333.333 INFO    ] Checking for system updates...
[2026-06-19 08:50:33,371.371 INFO    ] 200
[2026-06-19 08:50:33,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:33,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:50:33,431.431 INFO    ] No update needed
[2026-06-19 08:50:33,433.433 INFO    ] Checking for camera pi updates...
[2026-06-19 08:50:33,467.467 INFO    ] 200
[2026-06-19 08:50:33,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:33,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:50:33,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:50:33,540.540 INFO    ] No camera update needed
[2026-06-19 08:50:33,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:50:33,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:50:33,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:50:33,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:50:35,596.596 INFO    ] ================================================
[2026-06-19 08:50:35,611.611 INFO    ] Launching Daemon at Fri Jun 19 08:50:35 IST 2026
[2026-06-19 08:50:35,622.622 INFO    ] ================================================
[2026-06-19 08:50:36,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:50:36
[2026-06-19 08:50:36,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:50:37,158.158 INFO    ] Initializing speech engine...
[2026-06-19 08:50:37,167.167 INFO    ] 2026-06-19 08:50:37
[2026-06-19 08:50:37,451.451 INFO    ] 2026-06-19 08:50:37
[2026-06-19 08:50:37,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:50:37,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:50:37,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:50:37,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:50:37,987.987 INFO    ] time= 19/06/2026 08:50:37
[2026-06-19 08:50:38,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:50:38,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:50:38,126.126 INFO    ] No existing commands found in stream
[2026-06-19 08:50:43,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:50:43,157.157 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 08:50:47,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:50:47,207.207 INFO    ] Checking for system updates...
[2026-06-19 08:50:47,243.243 INFO    ] 200
[2026-06-19 08:50:47,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:47,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:50:47,301.301 INFO    ] No update needed
[2026-06-19 08:50:47,304.304 INFO    ] Checking for camera pi updates...
[2026-06-19 08:50:47,338.338 INFO    ] 200
[2026-06-19 08:50:47,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:47,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:50:47,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:50:47,416.416 INFO    ] No camera update needed
[2026-06-19 08:50:47,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:50:47,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:50:47,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:50:47,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:50:49,470.470 INFO    ] ================================================
[2026-06-19 08:50:49,485.485 INFO    ] Launching Daemon at Fri Jun 19 08:50:49 IST 2026
[2026-06-19 08:50:49,496.496 INFO    ] ================================================
[2026-06-19 08:50:50,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:50:50
[2026-06-19 08:50:50,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:50:50,912.912 INFO    ] Initializing speech engine...
[2026-06-19 08:50:50,927.927 INFO    ] 2026-06-19 08:50:50
[2026-06-19 08:50:51,193.193 INFO    ] 2026-06-19 08:50:51
[2026-06-19 08:50:51,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:50:51,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:50:51,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:50:51,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:50:51,678.678 INFO    ] time= 19/06/2026 08:50:51
[2026-06-19 08:50:51,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:50:51,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:50:51,811.811 INFO    ] No existing commands found in stream
[2026-06-19 08:50:56,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:50:56,826.826 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 08:50:58,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:50:58,708.708 INFO    ] Checking for system updates...
[2026-06-19 08:50:58,743.743 INFO    ] 200
[2026-06-19 08:50:58,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:58,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:50:58,807.807 INFO    ] No update needed
[2026-06-19 08:50:58,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 08:50:58,846.846 INFO    ] 200
[2026-06-19 08:50:58,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:50:58,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:50:58,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:50:58,938.938 INFO    ] No camera update needed
[2026-06-19 08:50:58,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:50:58,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:50:58,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:50:58,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:51:01,997.997 INFO    ] ================================================
[2026-06-19 08:51:01,013.013 INFO    ] Launching Daemon at Fri Jun 19 08:51:01 IST 2026
[2026-06-19 08:51:01,024.024 INFO    ] ================================================
[2026-06-19 08:51:01,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:51:01
[2026-06-19 08:51:02,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:51:02,702.702 INFO    ] Initializing speech engine...
[2026-06-19 08:51:02,712.712 INFO    ] 2026-06-19 08:51:02
[2026-06-19 08:51:03,052.052 INFO    ] 2026-06-19 08:51:03
[2026-06-19 08:51:03,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:51:03,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:51:03,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:51:03,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:51:03,576.576 INFO    ] time= 19/06/2026 08:51:03
[2026-06-19 08:51:03,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:51:03,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:51:03,761.761 INFO    ] No existing commands found in stream
[2026-06-19 08:51:08,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:51:08,774.774 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 08:51:11,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:51:11,824.824 INFO    ] Checking for system updates...
[2026-06-19 08:51:11,861.861 INFO    ] 200
[2026-06-19 08:51:11,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:11,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:51:11,922.922 INFO    ] No update needed
[2026-06-19 08:51:11,924.924 INFO    ] Checking for camera pi updates...
[2026-06-19 08:51:11,958.958 INFO    ] 200
[2026-06-19 08:51:11,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:12,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:51:12,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:51:12,050.050 INFO    ] No camera update needed
[2026-06-19 08:51:12,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:51:12,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:51:12,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:51:12,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:51:14,104.104 INFO    ] ================================================
[2026-06-19 08:51:14,119.119 INFO    ] Launching Daemon at Fri Jun 19 08:51:14 IST 2026
[2026-06-19 08:51:14,129.129 INFO    ] ================================================
[2026-06-19 08:51:14,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:51:14
[2026-06-19 08:51:15,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:51:15,680.680 INFO    ] Initializing speech engine...
[2026-06-19 08:51:15,685.685 INFO    ] 2026-06-19 08:51:15
[2026-06-19 08:51:15,942.942 INFO    ] 2026-06-19 08:51:15
[2026-06-19 08:51:15,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:51:16,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:51:16,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:51:16,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:51:16,422.422 INFO    ] time= 19/06/2026 08:51:16
[2026-06-19 08:51:16,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:51:16,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:51:16,585.585 INFO    ] No existing commands found in stream
[2026-06-19 08:51:21,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:51:21,604.604 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 08:51:22,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:51:22,560.560 INFO    ] Checking for system updates...
[2026-06-19 08:51:22,597.597 INFO    ] 200
[2026-06-19 08:51:22,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:22,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:51:22,657.657 INFO    ] No update needed
[2026-06-19 08:51:22,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 08:51:22,707.707 INFO    ] 200
[2026-06-19 08:51:22,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:22,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:51:22,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:51:22,803.803 INFO    ] No camera update needed
[2026-06-19 08:51:22,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:51:22,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:51:22,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:51:22,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:51:24,862.862 INFO    ] ================================================
[2026-06-19 08:51:24,877.877 INFO    ] Launching Daemon at Fri Jun 19 08:51:24 IST 2026
[2026-06-19 08:51:24,888.888 INFO    ] ================================================
[2026-06-19 08:51:25,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:51:25
[2026-06-19 08:51:26,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:51:26,339.339 INFO    ] Initializing speech engine...
[2026-06-19 08:51:26,349.349 INFO    ] 2026-06-19 08:51:26
[2026-06-19 08:51:26,596.596 INFO    ] 2026-06-19 08:51:26
[2026-06-19 08:51:26,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:51:26,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:51:26,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:51:27,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:51:27,089.089 INFO    ] time= 19/06/2026 08:51:27
[2026-06-19 08:51:27,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:51:27,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:51:27,282.282 INFO    ] No existing commands found in stream
[2026-06-19 08:51:32,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:51:32,316.316 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 08:51:33,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:51:33,694.694 INFO    ] Checking for system updates...
[2026-06-19 08:51:33,732.732 INFO    ] 200
[2026-06-19 08:51:33,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:33,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:51:33,798.798 INFO    ] No update needed
[2026-06-19 08:51:33,801.801 INFO    ] Checking for camera pi updates...
[2026-06-19 08:51:33,836.836 INFO    ] 200
[2026-06-19 08:51:33,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:33,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:51:33,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:51:33,931.931 INFO    ] No camera update needed
[2026-06-19 08:51:33,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:51:33,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:51:33,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:51:33,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:51:35,988.988 INFO    ] ================================================
[2026-06-19 08:51:36,003.003 INFO    ] Launching Daemon at Fri Jun 19 08:51:35 IST 2026
[2026-06-19 08:51:36,014.014 INFO    ] ================================================
[2026-06-19 08:51:36,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:51:36
[2026-06-19 08:51:37,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:51:37,460.460 INFO    ] Initializing speech engine...
[2026-06-19 08:51:37,483.483 INFO    ] 2026-06-19 08:51:37
[2026-06-19 08:51:37,753.753 INFO    ] 2026-06-19 08:51:37
[2026-06-19 08:51:37,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:51:38,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:51:38,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:51:38,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:51:38,225.225 INFO    ] time= 19/06/2026 08:51:38
[2026-06-19 08:51:38,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:51:38,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:51:38,377.377 INFO    ] No existing commands found in stream
[2026-06-19 08:51:43,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:51:43,409.409 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 08:51:46,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:51:46,227.227 INFO    ] Checking for system updates...
[2026-06-19 08:51:46,263.263 INFO    ] 200
[2026-06-19 08:51:46,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:46,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:51:46,322.322 INFO    ] No update needed
[2026-06-19 08:51:46,324.324 INFO    ] Checking for camera pi updates...
[2026-06-19 08:51:46,361.361 INFO    ] 200
[2026-06-19 08:51:46,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:46,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:51:46,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:51:46,547.547 INFO    ] No camera update needed
[2026-06-19 08:51:46,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:51:46,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:51:46,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:51:46,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:51:48,602.602 INFO    ] ================================================
[2026-06-19 08:51:48,617.617 INFO    ] Launching Daemon at Fri Jun 19 08:51:48 IST 2026
[2026-06-19 08:51:48,627.627 INFO    ] ================================================
[2026-06-19 08:51:49,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:51:49
[2026-06-19 08:51:49,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:51:50,027.027 INFO    ] Initializing speech engine...
[2026-06-19 08:51:50,035.035 INFO    ] 2026-06-19 08:51:50
[2026-06-19 08:51:50,315.315 INFO    ] 2026-06-19 08:51:50
[2026-06-19 08:51:50,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:51:50,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:51:50,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:51:50,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:51:50,688.688 INFO    ] time= 19/06/2026 08:51:50
[2026-06-19 08:51:50,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:51:50,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:51:50,810.810 INFO    ] No existing commands found in stream
[2026-06-19 08:51:55,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:51:55,826.826 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 08:51:56,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:51:56,625.625 INFO    ] Checking for system updates...
[2026-06-19 08:51:56,664.664 INFO    ] 200
[2026-06-19 08:51:56,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:56,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:51:56,726.726 INFO    ] No update needed
[2026-06-19 08:51:56,729.729 INFO    ] Checking for camera pi updates...
[2026-06-19 08:51:56,762.762 INFO    ] 200
[2026-06-19 08:51:56,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:51:56,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:51:56,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:51:56,851.851 INFO    ] No camera update needed
[2026-06-19 08:51:56,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:51:56,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:51:56,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:51:56,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:51:58,906.906 INFO    ] ================================================
[2026-06-19 08:51:58,920.920 INFO    ] Launching Daemon at Fri Jun 19 08:51:58 IST 2026
[2026-06-19 08:51:58,931.931 INFO    ] ================================================
[2026-06-19 08:51:59,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:51:59
[2026-06-19 08:52:00,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:52:00,516.516 INFO    ] Initializing speech engine...
[2026-06-19 08:52:00,530.530 INFO    ] 2026-06-19 08:52:00
[2026-06-19 08:52:00,811.811 INFO    ] 2026-06-19 08:52:00
[2026-06-19 08:52:00,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:52:01,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:52:01,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:52:01,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:52:01,331.331 INFO    ] time= 19/06/2026 08:52:01
[2026-06-19 08:52:01,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:52:01,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:52:01,481.481 INFO    ] No existing commands found in stream
[2026-06-19 08:52:06,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:52:06,510.510 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 08:52:10,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:52:10,521.521 INFO    ] Checking for system updates...
[2026-06-19 08:52:10,561.561 INFO    ] 200
[2026-06-19 08:52:10,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:10,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:52:10,621.621 INFO    ] No update needed
[2026-06-19 08:52:10,624.624 INFO    ] Checking for camera pi updates...
[2026-06-19 08:52:10,659.659 INFO    ] 200
[2026-06-19 08:52:10,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:10,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:52:10,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:52:10,755.755 INFO    ] No camera update needed
[2026-06-19 08:52:10,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:52:10,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:52:10,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:52:10,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:52:12,813.813 INFO    ] ================================================
[2026-06-19 08:52:12,829.829 INFO    ] Launching Daemon at Fri Jun 19 08:52:12 IST 2026
[2026-06-19 08:52:12,841.841 INFO    ] ================================================
[2026-06-19 08:52:13,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:52:13
[2026-06-19 08:52:13,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:52:14,269.269 INFO    ] Initializing speech engine...
[2026-06-19 08:52:14,277.277 INFO    ] 2026-06-19 08:52:14
[2026-06-19 08:52:14,534.534 INFO    ] 2026-06-19 08:52:14
[2026-06-19 08:52:14,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:52:14,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:52:14,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:52:14,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:52:14,991.991 INFO    ] time= 19/06/2026 08:52:14
[2026-06-19 08:52:15,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:52:15,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:52:15,138.138 INFO    ] No existing commands found in stream
[2026-06-19 08:52:20,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:52:20,152.152 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 08:52:23,656.656 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:52:23,658.658 INFO    ] Checking for system updates...
[2026-06-19 08:52:23,699.699 INFO    ] 200
[2026-06-19 08:52:23,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:23,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:52:23,766.766 INFO    ] No update needed
[2026-06-19 08:52:23,769.769 INFO    ] Checking for camera pi updates...
[2026-06-19 08:52:23,806.806 INFO    ] 200
[2026-06-19 08:52:23,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:23,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:52:23,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:52:23,903.903 INFO    ] No camera update needed
[2026-06-19 08:52:23,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:52:23,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:52:23,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:52:23,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:52:25,963.963 INFO    ] ================================================
[2026-06-19 08:52:25,979.979 INFO    ] Launching Daemon at Fri Jun 19 08:52:25 IST 2026
[2026-06-19 08:52:25,990.990 INFO    ] ================================================
[2026-06-19 08:52:26,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:52:26
[2026-06-19 08:52:27,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:52:27,581.581 INFO    ] Initializing speech engine...
[2026-06-19 08:52:27,589.589 INFO    ] 2026-06-19 08:52:27
[2026-06-19 08:52:27,884.884 INFO    ] 2026-06-19 08:52:27
[2026-06-19 08:52:28,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:52:28,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:52:28,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:52:28,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:52:28,348.348 INFO    ] time= 19/06/2026 08:52:28
[2026-06-19 08:52:28,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:52:28,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:52:28,501.501 INFO    ] No existing commands found in stream
[2026-06-19 08:52:33,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:52:33,513.513 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 08:52:33,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:52:33,917.917 INFO    ] Checking for system updates...
[2026-06-19 08:52:33,953.953 INFO    ] 200
[2026-06-19 08:52:33,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:34,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:52:34,020.020 INFO    ] No update needed
[2026-06-19 08:52:34,022.022 INFO    ] Checking for camera pi updates...
[2026-06-19 08:52:34,056.056 INFO    ] 200
[2026-06-19 08:52:34,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:34,100.100 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:52:34,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:52:34,129.129 INFO    ] No camera update needed
[2026-06-19 08:52:34,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:52:34,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:52:34,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:52:34,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:52:36,184.184 INFO    ] ================================================
[2026-06-19 08:52:36,200.200 INFO    ] Launching Daemon at Fri Jun 19 08:52:36 IST 2026
[2026-06-19 08:52:36,212.212 INFO    ] ================================================
[2026-06-19 08:52:36,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:52:36
[2026-06-19 08:52:37,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:52:37,671.671 INFO    ] Initializing speech engine...
[2026-06-19 08:52:37,693.693 INFO    ] 2026-06-19 08:52:37
[2026-06-19 08:52:37,958.958 INFO    ] 2026-06-19 08:52:37
[2026-06-19 08:52:37,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:52:38,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:52:38,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:52:38,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:52:38,333.333 INFO    ] time= 19/06/2026 08:52:38
[2026-06-19 08:52:38,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:52:38,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:52:38,458.458 INFO    ] No existing commands found in stream
[2026-06-19 08:52:43,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:52:43,470.470 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 08:52:45,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:52:45,981.981 INFO    ] Checking for system updates...
[2026-06-19 08:52:46,021.021 INFO    ] 200
[2026-06-19 08:52:46,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:46,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:52:46,083.083 INFO    ] No update needed
[2026-06-19 08:52:46,086.086 INFO    ] Checking for camera pi updates...
[2026-06-19 08:52:46,120.120 INFO    ] 200
[2026-06-19 08:52:46,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:46,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:52:46,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:52:46,207.207 INFO    ] No camera update needed
[2026-06-19 08:52:46,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:52:46,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:52:46,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:52:46,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:52:48,263.263 INFO    ] ================================================
[2026-06-19 08:52:48,278.278 INFO    ] Launching Daemon at Fri Jun 19 08:52:48 IST 2026
[2026-06-19 08:52:48,289.289 INFO    ] ================================================
[2026-06-19 08:52:48,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:52:48
[2026-06-19 08:52:49,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:52:49,724.724 INFO    ] Initializing speech engine...
[2026-06-19 08:52:49,739.739 INFO    ] 2026-06-19 08:52:49
[2026-06-19 08:52:50,019.019 INFO    ] 2026-06-19 08:52:49
[2026-06-19 08:52:50,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:52:50,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:52:50,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:52:50,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:52:50,423.423 INFO    ] time= 19/06/2026 08:52:50
[2026-06-19 08:52:50,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:52:50,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:52:50,507.507 INFO    ] No existing commands found in stream
[2026-06-19 08:52:55,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:52:55,525.525 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 08:52:59,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:52:59,328.328 INFO    ] Checking for system updates...
[2026-06-19 08:52:59,364.364 INFO    ] 200
[2026-06-19 08:52:59,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:59,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:52:59,421.421 INFO    ] No update needed
[2026-06-19 08:52:59,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 08:52:59,457.457 INFO    ] 200
[2026-06-19 08:52:59,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:52:59,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:52:59,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:52:59,552.552 INFO    ] No camera update needed
[2026-06-19 08:52:59,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:52:59,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:52:59,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:52:59,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:53:01,607.607 INFO    ] ================================================
[2026-06-19 08:53:01,622.622 INFO    ] Launching Daemon at Fri Jun 19 08:53:01 IST 2026
[2026-06-19 08:53:01,633.633 INFO    ] ================================================
[2026-06-19 08:53:02,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:53:02
[2026-06-19 08:53:03,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:53:03,381.381 INFO    ] Initializing speech engine...
[2026-06-19 08:53:03,387.387 INFO    ] 2026-06-19 08:53:03
[2026-06-19 08:53:03,703.703 INFO    ] 2026-06-19 08:53:03
[2026-06-19 08:53:03,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:53:03,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:53:03,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:53:04,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:53:04,135.135 INFO    ] time= 19/06/2026 08:53:04
[2026-06-19 08:53:04,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:53:04,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:53:04,277.277 INFO    ] No existing commands found in stream
[2026-06-19 08:53:09,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:53:09,305.305 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 08:53:11,211.211 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:53:11,214.214 INFO    ] Checking for system updates...
[2026-06-19 08:53:11,252.252 INFO    ] 200
[2026-06-19 08:53:11,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:11,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:53:11,312.312 INFO    ] No update needed
[2026-06-19 08:53:11,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 08:53:11,350.350 INFO    ] 200
[2026-06-19 08:53:11,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:11,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:53:11,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:53:11,436.436 INFO    ] No camera update needed
[2026-06-19 08:53:11,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:53:11,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:53:11,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:53:11,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:53:13,496.496 INFO    ] ================================================
[2026-06-19 08:53:13,510.510 INFO    ] Launching Daemon at Fri Jun 19 08:53:13 IST 2026
[2026-06-19 08:53:13,522.522 INFO    ] ================================================
[2026-06-19 08:53:14,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:53:14
[2026-06-19 08:53:14,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:53:14,977.977 INFO    ] Initializing speech engine...
[2026-06-19 08:53:14,982.982 INFO    ] 2026-06-19 08:53:14
[2026-06-19 08:53:15,229.229 INFO    ] 2026-06-19 08:53:15
[2026-06-19 08:53:15,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:53:15,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:53:15,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:53:15,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:53:15,724.724 INFO    ] time= 19/06/2026 08:53:15
[2026-06-19 08:53:15,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:53:15,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:53:15,919.919 INFO    ] No existing commands found in stream
[2026-06-19 08:53:20,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:53:20,949.949 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 08:53:23,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:53:23,088.088 INFO    ] Checking for system updates...
[2026-06-19 08:53:23,127.127 INFO    ] 200
[2026-06-19 08:53:23,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:23,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:53:23,183.183 INFO    ] No update needed
[2026-06-19 08:53:23,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 08:53:23,224.224 INFO    ] 200
[2026-06-19 08:53:23,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:23,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:53:23,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:53:23,327.327 INFO    ] No camera update needed
[2026-06-19 08:53:23,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:53:23,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:53:23,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:53:23,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:53:25,384.384 INFO    ] ================================================
[2026-06-19 08:53:25,400.400 INFO    ] Launching Daemon at Fri Jun 19 08:53:25 IST 2026
[2026-06-19 08:53:25,411.411 INFO    ] ================================================
[2026-06-19 08:53:25,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:53:25
[2026-06-19 08:53:26,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:53:26,817.817 INFO    ] Initializing speech engine...
[2026-06-19 08:53:26,842.842 INFO    ] 2026-06-19 08:53:26
[2026-06-19 08:53:27,108.108 INFO    ] 2026-06-19 08:53:27
[2026-06-19 08:53:27,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:53:27,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:53:27,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:53:27,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:53:27,517.517 INFO    ] time= 19/06/2026 08:53:27
[2026-06-19 08:53:27,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:53:27,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:53:27,668.668 INFO    ] No existing commands found in stream
[2026-06-19 08:53:32,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:53:32,691.691 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 08:53:35,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:53:35,841.841 INFO    ] Checking for system updates...
[2026-06-19 08:53:35,877.877 INFO    ] 200
[2026-06-19 08:53:35,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:35,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:53:35,941.941 INFO    ] No update needed
[2026-06-19 08:53:35,943.943 INFO    ] Checking for camera pi updates...
[2026-06-19 08:53:35,977.977 INFO    ] 200
[2026-06-19 08:53:35,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:36,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:53:36,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:53:36,065.065 INFO    ] No camera update needed
[2026-06-19 08:53:36,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:53:36,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:53:36,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:53:36,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:53:38,120.120 INFO    ] ================================================
[2026-06-19 08:53:38,136.136 INFO    ] Launching Daemon at Fri Jun 19 08:53:38 IST 2026
[2026-06-19 08:53:38,147.147 INFO    ] ================================================
[2026-06-19 08:53:38,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:53:38
[2026-06-19 08:53:39,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:53:39,601.601 INFO    ] Initializing speech engine...
[2026-06-19 08:53:39,606.606 INFO    ] 2026-06-19 08:53:39
[2026-06-19 08:53:39,858.858 INFO    ] 2026-06-19 08:53:39
[2026-06-19 08:53:39,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:53:40,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:53:40,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:53:40,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:53:40,345.345 INFO    ] time= 19/06/2026 08:53:40
[2026-06-19 08:53:40,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:53:40,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:53:40,487.487 INFO    ] No existing commands found in stream
[2026-06-19 08:53:45,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:53:45,501.501 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 08:53:46,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:53:46,431.431 INFO    ] Checking for system updates...
[2026-06-19 08:53:46,467.467 INFO    ] 200
[2026-06-19 08:53:46,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:46,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:53:46,524.524 INFO    ] No update needed
[2026-06-19 08:53:46,527.527 INFO    ] Checking for camera pi updates...
[2026-06-19 08:53:46,561.561 INFO    ] 200
[2026-06-19 08:53:46,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:46,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:53:46,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:53:46,634.634 INFO    ] No camera update needed
[2026-06-19 08:53:46,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:53:46,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:53:46,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:53:46,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:53:48,690.690 INFO    ] ================================================
[2026-06-19 08:53:48,705.705 INFO    ] Launching Daemon at Fri Jun 19 08:53:48 IST 2026
[2026-06-19 08:53:48,717.717 INFO    ] ================================================
[2026-06-19 08:53:49,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:53:49
[2026-06-19 08:53:49,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:53:50,164.164 INFO    ] Initializing speech engine...
[2026-06-19 08:53:50,173.173 INFO    ] 2026-06-19 08:53:50
[2026-06-19 08:53:50,440.440 INFO    ] 2026-06-19 08:53:50
[2026-06-19 08:53:50,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:53:50,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:53:50,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:53:50,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:53:50,848.848 INFO    ] time= 19/06/2026 08:53:50
[2026-06-19 08:53:50,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:53:50,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:53:51,019.019 INFO    ] No existing commands found in stream
[2026-06-19 08:53:56,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:53:56,052.052 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 08:53:57,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:53:57,542.542 INFO    ] Checking for system updates...
[2026-06-19 08:53:57,580.580 INFO    ] 200
[2026-06-19 08:53:57,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:57,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:53:57,643.643 INFO    ] No update needed
[2026-06-19 08:53:57,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 08:53:57,679.679 INFO    ] 200
[2026-06-19 08:53:57,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:53:57,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:53:57,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:53:57,870.870 INFO    ] No camera update needed
[2026-06-19 08:53:57,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:53:57,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:53:57,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:53:57,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:53:59,925.925 INFO    ] ================================================
[2026-06-19 08:53:59,941.941 INFO    ] Launching Daemon at Fri Jun 19 08:53:59 IST 2026
[2026-06-19 08:53:59,952.952 INFO    ] ================================================
[2026-06-19 08:54:00,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:54:00
[2026-06-19 08:54:01,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:54:01,425.425 INFO    ] Initializing speech engine...
[2026-06-19 08:54:01,436.436 INFO    ] 2026-06-19 08:54:01
[2026-06-19 08:54:01,702.702 INFO    ] 2026-06-19 08:54:01
[2026-06-19 08:54:01,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:54:01,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:54:01,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:54:02,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:54:02,074.074 INFO    ] time= 19/06/2026 08:54:02
[2026-06-19 08:54:02,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:54:02,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:54:02,200.200 INFO    ] No existing commands found in stream
[2026-06-19 08:54:07,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:54:07,229.229 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 08:54:10,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:54:10,411.411 INFO    ] Checking for system updates...
[2026-06-19 08:54:10,451.451 INFO    ] 200
[2026-06-19 08:54:10,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:10,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:54:10,511.511 INFO    ] No update needed
[2026-06-19 08:54:10,514.514 INFO    ] Checking for camera pi updates...
[2026-06-19 08:54:10,548.548 INFO    ] 200
[2026-06-19 08:54:10,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:10,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:54:10,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:54:10,648.648 INFO    ] No camera update needed
[2026-06-19 08:54:10,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:54:10,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:54:10,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:54:10,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:54:12,702.702 INFO    ] ================================================
[2026-06-19 08:54:12,718.718 INFO    ] Launching Daemon at Fri Jun 19 08:54:12 IST 2026
[2026-06-19 08:54:12,729.729 INFO    ] ================================================
[2026-06-19 08:54:13,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:54:13
[2026-06-19 08:54:13,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:54:14,187.187 INFO    ] Initializing speech engine...
[2026-06-19 08:54:14,198.198 INFO    ] 2026-06-19 08:54:14
[2026-06-19 08:54:14,445.445 INFO    ] 2026-06-19 08:54:14
[2026-06-19 08:54:14,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:54:14,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:54:14,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:54:14,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:54:14,886.886 INFO    ] time= 19/06/2026 08:54:14
[2026-06-19 08:54:14,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:54:15,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:54:15,067.067 INFO    ] No existing commands found in stream
[2026-06-19 08:54:20,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:54:20,081.081 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 08:54:24,011.011 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:54:24,014.014 INFO    ] Checking for system updates...
[2026-06-19 08:54:24,053.053 INFO    ] 200
[2026-06-19 08:54:24,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:24,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:54:24,116.116 INFO    ] No update needed
[2026-06-19 08:54:24,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 08:54:24,153.153 INFO    ] 200
[2026-06-19 08:54:24,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:24,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:54:24,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:54:24,238.238 INFO    ] No camera update needed
[2026-06-19 08:54:24,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:54:24,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:54:24,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:54:24,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:54:26,296.296 INFO    ] ================================================
[2026-06-19 08:54:26,312.312 INFO    ] Launching Daemon at Fri Jun 19 08:54:26 IST 2026
[2026-06-19 08:54:26,324.324 INFO    ] ================================================
[2026-06-19 08:54:26,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:54:26
[2026-06-19 08:54:27,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:54:27,919.919 INFO    ] Initializing speech engine...
[2026-06-19 08:54:27,931.931 INFO    ] 2026-06-19 08:54:27
[2026-06-19 08:54:28,208.208 INFO    ] 2026-06-19 08:54:28
[2026-06-19 08:54:28,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:54:28,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:54:28,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:54:28,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:54:28,671.671 INFO    ] time= 19/06/2026 08:54:28
[2026-06-19 08:54:28,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:54:28,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:54:28,829.829 INFO    ] No existing commands found in stream
[2026-06-19 08:54:33,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:54:33,843.843 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 08:54:34,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:54:34,752.752 INFO    ] Checking for system updates...
[2026-06-19 08:54:34,788.788 INFO    ] 200
[2026-06-19 08:54:34,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:34,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:54:34,846.846 INFO    ] No update needed
[2026-06-19 08:54:34,848.848 INFO    ] Checking for camera pi updates...
[2026-06-19 08:54:34,882.882 INFO    ] 200
[2026-06-19 08:54:34,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:34,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:54:34,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:54:34,966.966 INFO    ] No camera update needed
[2026-06-19 08:54:34,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:54:34,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:54:34,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:54:34,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:54:37,022.022 INFO    ] ================================================
[2026-06-19 08:54:37,037.037 INFO    ] Launching Daemon at Fri Jun 19 08:54:37 IST 2026
[2026-06-19 08:54:37,049.049 INFO    ] ================================================
[2026-06-19 08:54:37,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:54:37
[2026-06-19 08:54:38,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:54:38,528.528 INFO    ] Initializing speech engine...
[2026-06-19 08:54:38,536.536 INFO    ] 2026-06-19 08:54:38
[2026-06-19 08:54:38,785.785 INFO    ] 2026-06-19 08:54:38
[2026-06-19 08:54:38,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:54:39,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:54:39,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:54:39,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:54:39,233.233 INFO    ] time= 19/06/2026 08:54:39
[2026-06-19 08:54:39,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:54:39,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:54:39,419.419 INFO    ] No existing commands found in stream
[2026-06-19 08:54:44,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:54:44,451.451 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 08:54:46,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:54:46,352.352 INFO    ] Checking for system updates...
[2026-06-19 08:54:46,388.388 INFO    ] 200
[2026-06-19 08:54:46,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:46,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:54:46,447.447 INFO    ] No update needed
[2026-06-19 08:54:46,449.449 INFO    ] Checking for camera pi updates...
[2026-06-19 08:54:46,483.483 INFO    ] 200
[2026-06-19 08:54:46,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:46,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:54:46,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:54:46,560.560 INFO    ] No camera update needed
[2026-06-19 08:54:46,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:54:46,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:54:46,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:54:46,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:54:48,617.617 INFO    ] ================================================
[2026-06-19 08:54:48,633.633 INFO    ] Launching Daemon at Fri Jun 19 08:54:48 IST 2026
[2026-06-19 08:54:48,649.649 INFO    ] ================================================
[2026-06-19 08:54:49,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:54:49
[2026-06-19 08:54:49,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:54:50,058.058 INFO    ] Initializing speech engine...
[2026-06-19 08:54:50,064.064 INFO    ] 2026-06-19 08:54:50
[2026-06-19 08:54:50,359.359 INFO    ] 2026-06-19 08:54:50
[2026-06-19 08:54:50,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:54:50,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:54:50,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:54:50,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:54:50,743.743 INFO    ] time= 19/06/2026 08:54:50
[2026-06-19 08:54:50,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:54:50,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:54:50,866.866 INFO    ] No existing commands found in stream
[2026-06-19 08:54:55,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:54:55,880.880 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-19 08:54:56,255.255 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:54:56,258.258 INFO    ] Checking for system updates...
[2026-06-19 08:54:56,294.294 INFO    ] 200
[2026-06-19 08:54:56,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:56,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:54:56,352.352 INFO    ] No update needed
[2026-06-19 08:54:56,354.354 INFO    ] Checking for camera pi updates...
[2026-06-19 08:54:56,390.390 INFO    ] 200
[2026-06-19 08:54:56,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:54:56,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:54:56,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:54:56,477.477 INFO    ] No camera update needed
[2026-06-19 08:54:56,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:54:56,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:54:56,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:54:56,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:54:58,533.533 INFO    ] ================================================
[2026-06-19 08:54:58,548.548 INFO    ] Launching Daemon at Fri Jun 19 08:54:58 IST 2026
[2026-06-19 08:54:58,558.558 INFO    ] ================================================
[2026-06-19 08:54:59,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:54:59
[2026-06-19 08:54:59,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:55:00,076.076 INFO    ] Initializing speech engine...
[2026-06-19 08:55:00,082.082 INFO    ] 2026-06-19 08:55:00
[2026-06-19 08:55:00,326.326 INFO    ] 2026-06-19 08:55:00
[2026-06-19 08:55:00,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:55:00,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:55:00,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:55:00,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:55:00,797.797 INFO    ] time= 19/06/2026 08:55:00
[2026-06-19 08:55:00,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:55:00,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:55:00,946.946 INFO    ] No existing commands found in stream
[2026-06-19 08:55:05,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:55:05,963.963 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 08:55:06,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:55:06,494.494 INFO    ] Checking for system updates...
[2026-06-19 08:55:06,530.530 INFO    ] 200
[2026-06-19 08:55:06,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:06,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:55:06,592.592 INFO    ] No update needed
[2026-06-19 08:55:06,594.594 INFO    ] Checking for camera pi updates...
[2026-06-19 08:55:06,627.627 INFO    ] 200
[2026-06-19 08:55:06,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:06,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:55:06,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:55:06,714.714 INFO    ] No camera update needed
[2026-06-19 08:55:06,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:55:06,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:55:06,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:55:06,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:55:08,773.773 INFO    ] ================================================
[2026-06-19 08:55:08,788.788 INFO    ] Launching Daemon at Fri Jun 19 08:55:08 IST 2026
[2026-06-19 08:55:08,799.799 INFO    ] ================================================
[2026-06-19 08:55:09,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:55:09
[2026-06-19 08:55:10,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:55:10,297.297 INFO    ] Initializing speech engine...
[2026-06-19 08:55:10,307.307 INFO    ] 2026-06-19 08:55:10
[2026-06-19 08:55:10,556.556 INFO    ] 2026-06-19 08:55:10
[2026-06-19 08:55:10,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:55:10,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:55:10,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:55:11,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:55:11,117.117 INFO    ] time= 19/06/2026 08:55:11
[2026-06-19 08:55:11,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:55:11,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:55:11,257.257 INFO    ] No existing commands found in stream
[2026-06-19 08:55:16,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:55:16,286.286 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 08:55:20,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:55:20,647.647 INFO    ] Checking for system updates...
[2026-06-19 08:55:20,686.686 INFO    ] 200
[2026-06-19 08:55:20,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:20,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:55:20,743.743 INFO    ] No update needed
[2026-06-19 08:55:20,746.746 INFO    ] Checking for camera pi updates...
[2026-06-19 08:55:20,783.783 INFO    ] 200
[2026-06-19 08:55:20,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:20,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:55:20,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:55:20,876.876 INFO    ] No camera update needed
[2026-06-19 08:55:20,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:55:20,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:55:20,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:55:20,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:55:22,934.934 INFO    ] ================================================
[2026-06-19 08:55:22,949.949 INFO    ] Launching Daemon at Fri Jun 19 08:55:22 IST 2026
[2026-06-19 08:55:22,960.960 INFO    ] ================================================
[2026-06-19 08:55:23,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:55:23
[2026-06-19 08:55:24,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:55:24,446.446 INFO    ] Initializing speech engine...
[2026-06-19 08:55:24,454.454 INFO    ] 2026-06-19 08:55:24
[2026-06-19 08:55:24,722.722 INFO    ] 2026-06-19 08:55:24
[2026-06-19 08:55:24,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:55:25,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:55:25,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:55:25,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:55:25,192.192 INFO    ] time= 19/06/2026 08:55:25
[2026-06-19 08:55:25,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:55:25,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:55:25,350.350 INFO    ] No existing commands found in stream
[2026-06-19 08:55:30,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:55:30,390.390 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 08:55:34,337.337 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:55:34,339.339 INFO    ] Checking for system updates...
[2026-06-19 08:55:34,377.377 INFO    ] 200
[2026-06-19 08:55:34,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:34,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:55:34,437.437 INFO    ] No update needed
[2026-06-19 08:55:34,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 08:55:34,477.477 INFO    ] 200
[2026-06-19 08:55:34,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:34,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:55:34,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:55:34,580.580 INFO    ] No camera update needed
[2026-06-19 08:55:34,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:55:34,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:55:34,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:55:34,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:55:36,638.638 INFO    ] ================================================
[2026-06-19 08:55:36,653.653 INFO    ] Launching Daemon at Fri Jun 19 08:55:36 IST 2026
[2026-06-19 08:55:36,664.664 INFO    ] ================================================
[2026-06-19 08:55:37,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:55:37
[2026-06-19 08:55:37,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:55:38,111.111 INFO    ] Initializing speech engine...
[2026-06-19 08:55:38,117.117 INFO    ] 2026-06-19 08:55:38
[2026-06-19 08:55:38,404.404 INFO    ] 2026-06-19 08:55:38
[2026-06-19 08:55:38,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:55:38,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:55:38,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:55:38,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:55:38,953.953 INFO    ] time= 19/06/2026 08:55:38
[2026-06-19 08:55:39,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:55:39,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:55:39,081.081 INFO    ] No existing commands found in stream
[2026-06-19 08:55:44,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:55:44,096.096 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 08:55:46,461.461 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:55:46,465.465 INFO    ] Checking for system updates...
[2026-06-19 08:55:46,502.502 INFO    ] 200
[2026-06-19 08:55:46,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:46,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:55:46,561.561 INFO    ] No update needed
[2026-06-19 08:55:46,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 08:55:46,601.601 INFO    ] 200
[2026-06-19 08:55:46,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:46,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:55:46,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:55:46,679.679 INFO    ] No camera update needed
[2026-06-19 08:55:46,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:55:46,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:55:46,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:55:46,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:55:48,735.735 INFO    ] ================================================
[2026-06-19 08:55:48,751.751 INFO    ] Launching Daemon at Fri Jun 19 08:55:48 IST 2026
[2026-06-19 08:55:48,762.762 INFO    ] ================================================
[2026-06-19 08:55:49,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:55:49
[2026-06-19 08:55:50,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:55:50,329.329 INFO    ] Initializing speech engine...
[2026-06-19 08:55:50,334.334 INFO    ] 2026-06-19 08:55:50
[2026-06-19 08:55:50,591.591 INFO    ] 2026-06-19 08:55:50
[2026-06-19 08:55:50,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:55:50,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:55:50,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:55:51,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:55:51,077.077 INFO    ] time= 19/06/2026 08:55:51
[2026-06-19 08:55:51,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:55:51,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:55:51,229.229 INFO    ] No existing commands found in stream
[2026-06-19 08:55:56,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:55:56,245.245 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 08:55:57,658.658 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:55:57,661.661 INFO    ] Checking for system updates...
[2026-06-19 08:55:57,698.698 INFO    ] 200
[2026-06-19 08:55:57,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:57,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:55:57,762.762 INFO    ] No update needed
[2026-06-19 08:55:57,765.765 INFO    ] Checking for camera pi updates...
[2026-06-19 08:55:57,799.799 INFO    ] 200
[2026-06-19 08:55:57,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:55:57,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:55:57,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:55:57,890.890 INFO    ] No camera update needed
[2026-06-19 08:55:57,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:55:57,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:55:57,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:55:57,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:55:59,948.948 INFO    ] ================================================
[2026-06-19 08:55:59,964.964 INFO    ] Launching Daemon at Fri Jun 19 08:55:59 IST 2026
[2026-06-19 08:55:59,974.974 INFO    ] ================================================
[2026-06-19 08:56:00,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:56:00
[2026-06-19 08:56:01,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:56:01,405.405 INFO    ] Initializing speech engine...
[2026-06-19 08:56:01,418.418 INFO    ] 2026-06-19 08:56:01
[2026-06-19 08:56:01,668.668 INFO    ] 2026-06-19 08:56:01
[2026-06-19 08:56:01,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:56:01,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:56:01,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:56:02,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:56:02,092.092 INFO    ] time= 19/06/2026 08:56:02
[2026-06-19 08:56:02,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:56:02,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:56:02,192.192 INFO    ] No existing commands found in stream
[2026-06-19 08:56:07,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:56:07,220.220 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 08:56:07,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:56:07,840.840 INFO    ] Checking for system updates...
[2026-06-19 08:56:07,877.877 INFO    ] 200
[2026-06-19 08:56:07,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:56:07,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:56:07,941.941 INFO    ] No update needed
[2026-06-19 08:56:07,944.944 INFO    ] Checking for camera pi updates...
[2026-06-19 08:56:07,982.982 INFO    ] 200
[2026-06-19 08:56:07,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:56:08,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:56:08,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:56:08,073.073 INFO    ] No camera update needed
[2026-06-19 08:56:08,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:56:08,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:56:08,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:56:08,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:56:10,132.132 INFO    ] ================================================
[2026-06-19 08:56:10,147.147 INFO    ] Launching Daemon at Fri Jun 19 08:56:10 IST 2026
[2026-06-19 08:56:10,158.158 INFO    ] ================================================
[2026-06-19 08:56:10,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:56:10
[2026-06-19 08:56:11,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:56:11,562.562 INFO    ] Initializing speech engine...
[2026-06-19 08:56:11,574.574 INFO    ] 2026-06-19 08:56:11
[2026-06-19 08:56:11,842.842 INFO    ] 2026-06-19 08:56:11
[2026-06-19 08:56:11,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:56:12,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:56:12,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:56:12,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:56:12,333.333 INFO    ] time= 19/06/2026 08:56:12
[2026-06-19 08:56:12,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:56:12,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:56:12,479.479 INFO    ] No existing commands found in stream
[2026-06-19 08:56:17,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:56:17,518.518 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 08:56:20,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:56:20,153.153 INFO    ] Checking for system updates...
[2026-06-19 08:56:20,188.188 INFO    ] 200
[2026-06-19 08:56:20,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:56:20,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:56:20,246.246 INFO    ] No update needed
[2026-06-19 08:56:20,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 08:56:20,281.281 INFO    ] 200
[2026-06-19 08:56:20,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:56:20,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:56:20,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:56:20,378.378 INFO    ] No camera update needed
[2026-06-19 08:56:20,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:56:20,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:56:20,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:56:20,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:56:22,433.433 INFO    ] ================================================
[2026-06-19 08:56:22,448.448 INFO    ] Launching Daemon at Fri Jun 19 08:56:22 IST 2026
[2026-06-19 08:56:22,459.459 INFO    ] ================================================
[2026-06-19 08:56:23,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:56:23
[2026-06-19 08:56:23,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:56:23,912.912 INFO    ] Initializing speech engine...
[2026-06-19 08:56:23,926.926 INFO    ] 2026-06-19 08:56:23
[2026-06-19 08:56:24,189.189 INFO    ] 2026-06-19 08:56:24
[2026-06-19 08:56:24,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:56:24,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:56:24,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:56:24,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:56:24,701.701 INFO    ] time= 19/06/2026 08:56:24
[2026-06-19 08:56:24,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:56:24,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:56:24,889.889 INFO    ] No existing commands found in stream
[2026-06-19 08:56:29,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:56:29,915.915 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 08:56:33,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:56:33,543.543 INFO    ] Checking for system updates...
[2026-06-19 08:56:33,579.579 INFO    ] 200
[2026-06-19 08:56:33,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:56:33,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:56:33,636.636 INFO    ] No update needed
[2026-06-19 08:56:33,638.638 INFO    ] Checking for camera pi updates...
[2026-06-19 08:56:33,672.672 INFO    ] 200
[2026-06-19 08:56:33,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:56:33,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:56:33,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:56:33,759.759 INFO    ] No camera update needed
[2026-06-19 08:56:33,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:56:33,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:56:33,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:56:33,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:56:35,817.817 INFO    ] ================================================
[2026-06-19 08:56:35,832.832 INFO    ] Launching Daemon at Fri Jun 19 08:56:35 IST 2026
[2026-06-19 08:56:35,843.843 INFO    ] ================================================
[2026-06-19 08:56:36,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:56:36
[2026-06-19 08:56:37,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:56:37,381.381 INFO    ] Initializing speech engine...
[2026-06-19 08:56:37,397.397 INFO    ] 2026-06-19 08:56:37
[2026-06-19 08:56:37,664.664 INFO    ] 2026-06-19 08:56:37
[2026-06-19 08:56:37,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:56:37,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:56:37,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:56:38,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:56:38,150.150 INFO    ] time= 19/06/2026 08:56:38
[2026-06-19 08:56:38,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:56:38,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:56:38,307.307 INFO    ] No existing commands found in stream
[2026-06-19 08:56:43,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:56:43,340.340 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 08:56:45,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:56:45,959.959 INFO    ] Checking for system updates...
[2026-06-19 08:56:45,998.998 INFO    ] 200
[2026-06-19 08:56:46,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:56:46,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:56:46,058.058 INFO    ] No update needed
[2026-06-19 08:56:46,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 08:56:46,097.097 INFO    ] 200
[2026-06-19 08:56:46,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:56:46,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:56:46,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:56:46,189.189 INFO    ] No camera update needed
[2026-06-19 08:56:46,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:56:46,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:56:46,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:56:46,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:56:48,248.248 INFO    ] ================================================
[2026-06-19 08:56:48,263.263 INFO    ] Launching Daemon at Fri Jun 19 08:56:48 IST 2026
[2026-06-19 08:56:48,273.273 INFO    ] ================================================
[2026-06-19 08:56:48,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:56:48
[2026-06-19 08:56:49,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:56:49,830.830 INFO    ] Initializing speech engine...
[2026-06-19 08:56:49,838.838 INFO    ] 2026-06-19 08:56:49
[2026-06-19 08:56:50,108.108 INFO    ] 2026-06-19 08:56:50
[2026-06-19 08:56:50,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:56:50,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:56:50,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:56:50,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:56:50,578.578 INFO    ] time= 19/06/2026 08:56:50
[2026-06-19 08:56:50,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:56:50,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:56:50,732.732 INFO    ] No existing commands found in stream
[2026-06-19 08:56:55,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:56:55,747.747 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 08:57:00,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:57:00,106.106 INFO    ] Checking for system updates...
[2026-06-19 08:57:00,143.143 INFO    ] 200
[2026-06-19 08:57:00,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:00,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:57:00,207.207 INFO    ] No update needed
[2026-06-19 08:57:00,211.211 INFO    ] Checking for camera pi updates...
[2026-06-19 08:57:00,245.245 INFO    ] 200
[2026-06-19 08:57:00,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:00,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:57:00,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:57:00,337.337 INFO    ] No camera update needed
[2026-06-19 08:57:00,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:57:00,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:57:00,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:57:00,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:57:02,399.399 INFO    ] ================================================
[2026-06-19 08:57:02,421.421 INFO    ] Launching Daemon at Fri Jun 19 08:57:02 IST 2026
[2026-06-19 08:57:02,438.438 INFO    ] ================================================
[2026-06-19 08:57:03,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:57:03
[2026-06-19 08:57:03,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:57:04,139.139 INFO    ] Initializing speech engine...
[2026-06-19 08:57:04,146.146 INFO    ] 2026-06-19 08:57:04
[2026-06-19 08:57:04,411.411 INFO    ] 2026-06-19 08:57:04
[2026-06-19 08:57:04,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:57:04,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:57:04,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:57:04,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:57:04,902.902 INFO    ] time= 19/06/2026 08:57:04
[2026-06-19 08:57:04,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:57:04,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:57:05,102.102 INFO    ] No existing commands found in stream
[2026-06-19 08:57:10,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:57:10,126.126 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 08:57:13,435.435 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:57:13,438.438 INFO    ] Checking for system updates...
[2026-06-19 08:57:13,474.474 INFO    ] 200
[2026-06-19 08:57:13,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:13,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:57:13,532.532 INFO    ] No update needed
[2026-06-19 08:57:13,534.534 INFO    ] Checking for camera pi updates...
[2026-06-19 08:57:13,568.568 INFO    ] 200
[2026-06-19 08:57:13,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:13,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:57:13,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:57:13,659.659 INFO    ] No camera update needed
[2026-06-19 08:57:13,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:57:13,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:57:13,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:57:13,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:57:15,716.716 INFO    ] ================================================
[2026-06-19 08:57:15,730.730 INFO    ] Launching Daemon at Fri Jun 19 08:57:15 IST 2026
[2026-06-19 08:57:15,741.741 INFO    ] ================================================
[2026-06-19 08:57:16,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:57:16
[2026-06-19 08:57:16,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:57:17,179.179 INFO    ] Initializing speech engine...
[2026-06-19 08:57:17,187.187 INFO    ] 2026-06-19 08:57:17
[2026-06-19 08:57:17,461.461 INFO    ] 2026-06-19 08:57:17
[2026-06-19 08:57:17,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:57:17,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:57:17,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:57:17,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:57:18,022.022 INFO    ] time= 19/06/2026 08:57:17
[2026-06-19 08:57:18,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:57:18,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:57:18,155.155 INFO    ] No existing commands found in stream
[2026-06-19 08:57:23,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:57:23,188.188 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 08:57:26,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:57:26,083.083 INFO    ] Checking for system updates...
[2026-06-19 08:57:26,119.119 INFO    ] 200
[2026-06-19 08:57:26,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:26,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:57:26,177.177 INFO    ] No update needed
[2026-06-19 08:57:26,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 08:57:26,213.213 INFO    ] 200
[2026-06-19 08:57:26,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:26,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:57:26,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:57:26,300.300 INFO    ] No camera update needed
[2026-06-19 08:57:26,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:57:26,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:57:26,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:57:26,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:57:28,356.356 INFO    ] ================================================
[2026-06-19 08:57:28,371.371 INFO    ] Launching Daemon at Fri Jun 19 08:57:28 IST 2026
[2026-06-19 08:57:28,382.382 INFO    ] ================================================
[2026-06-19 08:57:28,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:57:28
[2026-06-19 08:57:29,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:57:29,808.808 INFO    ] Initializing speech engine...
[2026-06-19 08:57:29,815.815 INFO    ] 2026-06-19 08:57:29
[2026-06-19 08:57:30,059.059 INFO    ] 2026-06-19 08:57:30
[2026-06-19 08:57:30,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:57:30,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:57:30,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:57:30,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:57:30,554.554 INFO    ] time= 19/06/2026 08:57:30
[2026-06-19 08:57:30,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:57:30,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:57:30,679.679 INFO    ] No existing commands found in stream
[2026-06-19 08:57:35,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:57:35,707.707 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 08:57:37,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 08:57:37,461.461 INFO    ] Checking for system updates...
[2026-06-19 08:57:37,497.497 INFO    ] 200
[2026-06-19 08:57:37,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:37,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:57:37,554.554 INFO    ] No update needed
[2026-06-19 08:57:37,557.557 INFO    ] Checking for camera pi updates...
[2026-06-19 08:57:37,590.590 INFO    ] 200
[2026-06-19 08:57:37,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:37,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:57:37,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:57:37,684.684 INFO    ] No camera update needed
[2026-06-19 08:57:37,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:57:37,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:57:37,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:57:37,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:57:39,739.739 INFO    ] ================================================
[2026-06-19 08:57:39,754.754 INFO    ] Launching Daemon at Fri Jun 19 08:57:39 IST 2026
[2026-06-19 08:57:39,765.765 INFO    ] ================================================
[2026-06-19 08:57:40,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:57:40
[2026-06-19 08:57:40,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:57:41,228.228 INFO    ] Initializing speech engine...
[2026-06-19 08:57:41,233.233 INFO    ] 2026-06-19 08:57:41
[2026-06-19 08:57:41,496.496 INFO    ] 2026-06-19 08:57:41
[2026-06-19 08:57:41,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:57:41,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:57:41,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:57:41,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:57:41,957.957 INFO    ] time= 19/06/2026 08:57:41
[2026-06-19 08:57:42,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:57:42,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:57:42,125.125 INFO    ] No existing commands found in stream
[2026-06-19 08:57:47,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:57:47,165.165 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 08:57:49,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:57:49,345.345 INFO    ] Checking for system updates...
[2026-06-19 08:57:49,381.381 INFO    ] 200
[2026-06-19 08:57:49,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:49,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:57:49,439.439 INFO    ] No update needed
[2026-06-19 08:57:49,442.442 INFO    ] Checking for camera pi updates...
[2026-06-19 08:57:49,477.477 INFO    ] 200
[2026-06-19 08:57:49,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:57:49,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:57:49,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:57:49,572.572 INFO    ] No camera update needed
[2026-06-19 08:57:49,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:57:49,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:57:49,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:57:49,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:57:51,627.627 INFO    ] ================================================
[2026-06-19 08:57:51,642.642 INFO    ] Launching Daemon at Fri Jun 19 08:57:51 IST 2026
[2026-06-19 08:57:51,653.653 INFO    ] ================================================
[2026-06-19 08:57:52,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:57:52
[2026-06-19 08:57:52,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:57:53,111.111 INFO    ] Initializing speech engine...
[2026-06-19 08:57:53,135.135 INFO    ] 2026-06-19 08:57:53
[2026-06-19 08:57:53,391.391 INFO    ] 2026-06-19 08:57:53
[2026-06-19 08:57:53,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:57:53,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:57:53,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:57:53,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:57:53,767.767 INFO    ] time= 19/06/2026 08:57:53
[2026-06-19 08:57:53,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:57:53,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:57:53,919.919 INFO    ] No existing commands found in stream
[2026-06-19 08:57:58,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:57:58,947.947 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 08:58:00,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:58:00,066.066 INFO    ] Checking for system updates...
[2026-06-19 08:58:00,102.102 INFO    ] 200
[2026-06-19 08:58:00,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:00,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:58:00,160.160 INFO    ] No update needed
[2026-06-19 08:58:00,162.162 INFO    ] Checking for camera pi updates...
[2026-06-19 08:58:00,196.196 INFO    ] 200
[2026-06-19 08:58:00,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:00,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:58:00,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:58:00,286.286 INFO    ] No camera update needed
[2026-06-19 08:58:00,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:58:00,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:58:00,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:58:00,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:58:02,341.341 INFO    ] ================================================
[2026-06-19 08:58:02,362.362 INFO    ] Launching Daemon at Fri Jun 19 08:58:02 IST 2026
[2026-06-19 08:58:02,377.377 INFO    ] ================================================
[2026-06-19 08:58:03,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:58:03
[2026-06-19 08:58:03,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:58:03,958.958 INFO    ] Initializing speech engine...
[2026-06-19 08:58:03,974.974 INFO    ] 2026-06-19 08:58:03
[2026-06-19 08:58:04,244.244 INFO    ] 2026-06-19 08:58:04
[2026-06-19 08:58:04,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:58:04,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:58:04,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:58:04,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:58:04,664.664 INFO    ] time= 19/06/2026 08:58:04
[2026-06-19 08:58:04,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:58:04,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:58:04,830.830 INFO    ] No existing commands found in stream
[2026-06-19 08:58:09,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:58:09,863.863 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 08:58:11,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:58:11,995.995 INFO    ] Checking for system updates...
[2026-06-19 08:58:12,033.033 INFO    ] 200
[2026-06-19 08:58:12,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:12,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:58:12,098.098 INFO    ] No update needed
[2026-06-19 08:58:12,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 08:58:12,137.137 INFO    ] 200
[2026-06-19 08:58:12,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:12,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:58:12,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:58:12,323.323 INFO    ] No camera update needed
[2026-06-19 08:58:12,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:58:12,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:58:12,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:58:12,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:58:14,377.377 INFO    ] ================================================
[2026-06-19 08:58:14,392.392 INFO    ] Launching Daemon at Fri Jun 19 08:58:14 IST 2026
[2026-06-19 08:58:14,403.403 INFO    ] ================================================
[2026-06-19 08:58:15,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:58:15
[2026-06-19 08:58:15,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:58:15,891.891 INFO    ] Initializing speech engine...
[2026-06-19 08:58:15,910.910 INFO    ] 2026-06-19 08:58:15
[2026-06-19 08:58:16,160.160 INFO    ] 2026-06-19 08:58:16
[2026-06-19 08:58:16,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:58:16,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:58:16,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:58:16,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:58:16,536.536 INFO    ] time= 19/06/2026 08:58:16
[2026-06-19 08:58:16,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:58:16,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:58:16,717.717 INFO    ] No existing commands found in stream
[2026-06-19 08:58:21,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:58:21,745.745 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-19 08:58:22,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 08:58:22,955.955 INFO    ] Checking for system updates...
[2026-06-19 08:58:22,991.991 INFO    ] 200
[2026-06-19 08:58:22,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:23,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:58:23,048.048 INFO    ] No update needed
[2026-06-19 08:58:23,050.050 INFO    ] Checking for camera pi updates...
[2026-06-19 08:58:23,084.084 INFO    ] 200
[2026-06-19 08:58:23,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:23,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:58:23,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:58:23,175.175 INFO    ] No camera update needed
[2026-06-19 08:58:23,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:58:23,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:58:23,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:58:23,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:58:25,231.231 INFO    ] ================================================
[2026-06-19 08:58:25,246.246 INFO    ] Launching Daemon at Fri Jun 19 08:58:25 IST 2026
[2026-06-19 08:58:25,257.257 INFO    ] ================================================
[2026-06-19 08:58:25,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:58:25
[2026-06-19 08:58:26,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:58:26,681.681 INFO    ] Initializing speech engine...
[2026-06-19 08:58:26,694.694 INFO    ] 2026-06-19 08:58:26
[2026-06-19 08:58:26,943.943 INFO    ] 2026-06-19 08:58:26
[2026-06-19 08:58:26,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:58:27,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:58:27,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:58:27,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:58:27,393.393 INFO    ] time= 19/06/2026 08:58:27
[2026-06-19 08:58:27,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:58:27,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:58:27,575.575 INFO    ] No existing commands found in stream
[2026-06-19 08:58:32,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:58:32,590.590 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 08:58:33,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 08:58:33,340.340 INFO    ] Checking for system updates...
[2026-06-19 08:58:33,376.376 INFO    ] 200
[2026-06-19 08:58:33,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:33,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:58:33,434.434 INFO    ] No update needed
[2026-06-19 08:58:33,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 08:58:33,474.474 INFO    ] 200
[2026-06-19 08:58:33,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:33,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:58:33,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:58:33,552.552 INFO    ] No camera update needed
[2026-06-19 08:58:33,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:58:33,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:58:33,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:58:33,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:58:35,611.611 INFO    ] ================================================
[2026-06-19 08:58:35,626.626 INFO    ] Launching Daemon at Fri Jun 19 08:58:35 IST 2026
[2026-06-19 08:58:35,638.638 INFO    ] ================================================
[2026-06-19 08:58:36,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:58:36
[2026-06-19 08:58:36,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:58:37,095.095 INFO    ] Initializing speech engine...
[2026-06-19 08:58:37,104.104 INFO    ] 2026-06-19 08:58:37
[2026-06-19 08:58:37,369.369 INFO    ] 2026-06-19 08:58:37
[2026-06-19 08:58:37,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:58:37,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:58:37,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:58:37,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:58:37,771.771 INFO    ] time= 19/06/2026 08:58:37
[2026-06-19 08:58:37,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:58:37,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:58:37,927.927 INFO    ] No existing commands found in stream
[2026-06-19 08:58:42,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:58:42,956.956 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 08:58:43,598.598 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:58:43,601.601 INFO    ] Checking for system updates...
[2026-06-19 08:58:43,637.637 INFO    ] 200
[2026-06-19 08:58:43,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:43,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:58:43,694.694 INFO    ] No update needed
[2026-06-19 08:58:43,697.697 INFO    ] Checking for camera pi updates...
[2026-06-19 08:58:43,733.733 INFO    ] 200
[2026-06-19 08:58:43,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:43,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:58:43,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:58:43,824.824 INFO    ] No camera update needed
[2026-06-19 08:58:43,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:58:43,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:58:43,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:58:43,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:58:45,881.881 INFO    ] ================================================
[2026-06-19 08:58:45,896.896 INFO    ] Launching Daemon at Fri Jun 19 08:58:45 IST 2026
[2026-06-19 08:58:45,907.907 INFO    ] ================================================
[2026-06-19 08:58:46,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:58:46
[2026-06-19 08:58:47,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:58:47,306.306 INFO    ] Initializing speech engine...
[2026-06-19 08:58:47,320.320 INFO    ] 2026-06-19 08:58:47
[2026-06-19 08:58:47,585.585 INFO    ] 2026-06-19 08:58:47
[2026-06-19 08:58:47,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:58:47,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:58:47,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:58:48,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:58:48,055.055 INFO    ] time= 19/06/2026 08:58:48
[2026-06-19 08:58:48,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:58:48,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:58:48,269.269 INFO    ] No existing commands found in stream
[2026-06-19 08:58:53,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:58:53,292.292 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 08:58:57,268.268 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:58:57,270.270 INFO    ] Checking for system updates...
[2026-06-19 08:58:57,307.307 INFO    ] 200
[2026-06-19 08:58:57,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:57,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:58:57,370.370 INFO    ] No update needed
[2026-06-19 08:58:57,372.372 INFO    ] Checking for camera pi updates...
[2026-06-19 08:58:57,407.407 INFO    ] 200
[2026-06-19 08:58:57,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:58:57,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:58:57,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:58:57,494.494 INFO    ] No camera update needed
[2026-06-19 08:58:57,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:58:57,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:58:57,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:58:57,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:58:59,550.550 INFO    ] ================================================
[2026-06-19 08:58:59,566.566 INFO    ] Launching Daemon at Fri Jun 19 08:58:59 IST 2026
[2026-06-19 08:58:59,576.576 INFO    ] ================================================
[2026-06-19 08:59:00,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:59:00
[2026-06-19 08:59:00,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:59:01,006.006 INFO    ] Initializing speech engine...
[2026-06-19 08:59:01,015.015 INFO    ] 2026-06-19 08:59:01
[2026-06-19 08:59:01,263.263 INFO    ] 2026-06-19 08:59:01
[2026-06-19 08:59:01,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:59:01,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:59:01,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:59:01,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:59:01,708.708 INFO    ] time= 19/06/2026 08:59:01
[2026-06-19 08:59:01,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:59:01,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:59:01,933.933 INFO    ] No existing commands found in stream
[2026-06-19 08:59:06,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:59:06,947.947 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 08:59:08,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:59:08,119.119 INFO    ] Checking for system updates...
[2026-06-19 08:59:08,161.161 INFO    ] 200
[2026-06-19 08:59:08,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:08,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:59:08,221.221 INFO    ] No update needed
[2026-06-19 08:59:08,224.224 INFO    ] Checking for camera pi updates...
[2026-06-19 08:59:08,259.259 INFO    ] 200
[2026-06-19 08:59:08,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:08,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:59:08,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:59:08,352.352 INFO    ] No camera update needed
[2026-06-19 08:59:08,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:59:08,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:59:08,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:59:08,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:59:10,409.409 INFO    ] ================================================
[2026-06-19 08:59:10,424.424 INFO    ] Launching Daemon at Fri Jun 19 08:59:10 IST 2026
[2026-06-19 08:59:10,434.434 INFO    ] ================================================
[2026-06-19 08:59:11,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:59:10
[2026-06-19 08:59:11,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:59:11,907.907 INFO    ] Initializing speech engine...
[2026-06-19 08:59:11,920.920 INFO    ] 2026-06-19 08:59:11
[2026-06-19 08:59:12,208.208 INFO    ] 2026-06-19 08:59:12
[2026-06-19 08:59:12,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:59:12,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:59:12,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:59:12,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:59:12,751.751 INFO    ] time= 19/06/2026 08:59:12
[2026-06-19 08:59:12,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:59:12,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:59:12,912.912 INFO    ] No existing commands found in stream
[2026-06-19 08:59:17,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:59:17,950.950 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 08:59:21,196.196 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:59:21,199.199 INFO    ] Checking for system updates...
[2026-06-19 08:59:21,236.236 INFO    ] 200
[2026-06-19 08:59:21,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:21,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:59:21,303.303 INFO    ] No update needed
[2026-06-19 08:59:21,306.306 INFO    ] Checking for camera pi updates...
[2026-06-19 08:59:21,344.344 INFO    ] 200
[2026-06-19 08:59:21,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:21,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:59:21,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:59:21,446.446 INFO    ] No camera update needed
[2026-06-19 08:59:21,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:59:21,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:59:21,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:59:21,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:59:23,504.504 INFO    ] ================================================
[2026-06-19 08:59:23,519.519 INFO    ] Launching Daemon at Fri Jun 19 08:59:23 IST 2026
[2026-06-19 08:59:23,530.530 INFO    ] ================================================
[2026-06-19 08:59:24,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:59:24
[2026-06-19 08:59:24,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:59:24,941.941 INFO    ] Initializing speech engine...
[2026-06-19 08:59:24,953.953 INFO    ] 2026-06-19 08:59:24
[2026-06-19 08:59:25,221.221 INFO    ] 2026-06-19 08:59:25
[2026-06-19 08:59:25,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:59:25,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:59:25,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:59:25,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:59:25,684.684 INFO    ] time= 19/06/2026 08:59:25
[2026-06-19 08:59:25,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:59:25,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:59:25,852.852 INFO    ] No existing commands found in stream
[2026-06-19 08:59:30,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:59:30,867.867 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 08:59:34,094.094 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 08:59:34,096.096 INFO    ] Checking for system updates...
[2026-06-19 08:59:34,133.133 INFO    ] 200
[2026-06-19 08:59:34,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:34,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:59:34,193.193 INFO    ] No update needed
[2026-06-19 08:59:34,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 08:59:34,230.230 INFO    ] 200
[2026-06-19 08:59:34,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:34,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:59:34,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:59:34,336.336 INFO    ] No camera update needed
[2026-06-19 08:59:34,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:59:34,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:59:34,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:59:34,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:59:36,396.396 INFO    ] ================================================
[2026-06-19 08:59:36,411.411 INFO    ] Launching Daemon at Fri Jun 19 08:59:36 IST 2026
[2026-06-19 08:59:36,422.422 INFO    ] ================================================
[2026-06-19 08:59:37,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:59:37
[2026-06-19 08:59:37,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:59:37,880.880 INFO    ] Initializing speech engine...
[2026-06-19 08:59:37,889.889 INFO    ] 2026-06-19 08:59:37
[2026-06-19 08:59:38,152.152 INFO    ] 2026-06-19 08:59:38
[2026-06-19 08:59:38,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:59:38,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:59:38,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:59:38,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:59:38,632.632 INFO    ] time= 19/06/2026 08:59:38
[2026-06-19 08:59:38,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:59:38,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:59:38,763.763 INFO    ] No existing commands found in stream
[2026-06-19 08:59:43,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:59:43,781.781 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 08:59:45,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 08:59:45,550.550 INFO    ] Checking for system updates...
[2026-06-19 08:59:45,586.586 INFO    ] 200
[2026-06-19 08:59:45,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:45,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:59:45,650.650 INFO    ] No update needed
[2026-06-19 08:59:45,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 08:59:45,688.688 INFO    ] 200
[2026-06-19 08:59:45,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:45,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:59:45,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 08:59:45,786.786 INFO    ] No camera update needed
[2026-06-19 08:59:45,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:59:45,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:59:45,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:59:45,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 08:59:47,845.845 INFO    ] ================================================
[2026-06-19 08:59:47,861.861 INFO    ] Launching Daemon at Fri Jun 19 08:59:47 IST 2026
[2026-06-19 08:59:47,872.872 INFO    ] ================================================
[2026-06-19 08:59:48,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 08:59:48
[2026-06-19 08:59:49,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 08:59:49,288.288 INFO    ] Initializing speech engine...
[2026-06-19 08:59:49,293.293 INFO    ] 2026-06-19 08:59:49
[2026-06-19 08:59:49,596.596 INFO    ] 2026-06-19 08:59:49
[2026-06-19 08:59:49,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 08:59:49,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 08:59:49,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 08:59:49,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 08:59:49,977.977 INFO    ] time= 19/06/2026 08:59:49
[2026-06-19 08:59:49,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 08:59:50,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-19 08:59:50,104.104 INFO    ] No existing commands found in stream
[2026-06-19 08:59:55,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 08:59:55,119.119 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 08:59:58,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 08:59:58,970.970 INFO    ] Checking for system updates...
[2026-06-19 08:59:59,006.006 INFO    ] 200
[2026-06-19 08:59:59,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:59,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:59:59,063.063 INFO    ] No update needed
[2026-06-19 08:59:59,066.066 INFO    ] Checking for camera pi updates...
[2026-06-19 08:59:59,101.101 INFO    ] 200
[2026-06-19 08:59:59,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 08:59:59,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 08:59:59,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 08:59:59,196.196 INFO    ] No camera update needed
[2026-06-19 08:59:59,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-19 08:59:59,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 08:59:59,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 08:59:59,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:00:01,253.253 INFO    ] ================================================
[2026-06-19 09:00:01,269.269 INFO    ] Launching Daemon at Fri Jun 19 09:00:01 IST 2026
[2026-06-19 09:00:01,280.280 INFO    ] ================================================
[2026-06-19 09:00:02,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:00:02
[2026-06-19 09:00:04,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:00:06,360.360 INFO    ] Initializing speech engine...
[2026-06-19 09:00:06,363.363 INFO    ] 2026-06-19 09:00:06
[2026-06-19 09:00:07,004.004 INFO    ] 2026-06-19 09:00:06
[2026-06-19 09:00:07,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:00:07,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:00:07,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:00:07,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:00:07,524.524 INFO    ] time= 19/06/2026 09:00:07
[2026-06-19 09:00:07,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:00:07,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:00:07,746.746 INFO    ] No existing commands found in stream
[2026-06-19 09:00:12,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:00:12,781.781 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 09:00:15,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:00:15,510.510 INFO    ] Checking for system updates...
[2026-06-19 09:00:15,557.557 INFO    ] 200
[2026-06-19 09:00:15,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:00:15,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:00:15,615.615 INFO    ] No update needed
[2026-06-19 09:00:15,618.618 INFO    ] Checking for camera pi updates...
[2026-06-19 09:00:15,652.652 INFO    ] 200
[2026-06-19 09:00:15,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:00:15,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:00:15,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:00:15,853.853 INFO    ] No camera update needed
[2026-06-19 09:00:15,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:00:15,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:00:15,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:00:15,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:00:17,909.909 INFO    ] ================================================
[2026-06-19 09:00:17,925.925 INFO    ] Launching Daemon at Fri Jun 19 09:00:17 IST 2026
[2026-06-19 09:00:17,939.939 INFO    ] ================================================
[2026-06-19 09:00:18,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:00:18
[2026-06-19 09:00:19,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:00:19,364.364 INFO    ] Initializing speech engine...
[2026-06-19 09:00:19,373.373 INFO    ] 2026-06-19 09:00:19
[2026-06-19 09:00:19,634.634 INFO    ] 2026-06-19 09:00:19
[2026-06-19 09:00:19,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:00:19,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:00:19,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:00:20,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:00:20,108.108 INFO    ] time= 19/06/2026 09:00:20
[2026-06-19 09:00:20,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:00:20,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:00:20,249.249 INFO    ] No existing commands found in stream
[2026-06-19 09:00:25,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:00:25,297.297 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 09:00:27,847.847 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:00:27,849.849 INFO    ] Checking for system updates...
[2026-06-19 09:00:27,886.886 INFO    ] 200
[2026-06-19 09:00:27,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:00:27,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:00:27,944.944 INFO    ] No update needed
[2026-06-19 09:00:27,947.947 INFO    ] Checking for camera pi updates...
[2026-06-19 09:00:27,982.982 INFO    ] 200
[2026-06-19 09:00:27,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:00:28,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:00:28,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:00:28,067.067 INFO    ] No camera update needed
[2026-06-19 09:00:28,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:00:28,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:00:28,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:00:28,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:00:30,121.121 INFO    ] ================================================
[2026-06-19 09:00:30,137.137 INFO    ] Launching Daemon at Fri Jun 19 09:00:30 IST 2026
[2026-06-19 09:00:30,148.148 INFO    ] ================================================
[2026-06-19 09:00:30,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:00:30
[2026-06-19 09:00:31,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:00:31,594.594 INFO    ] Initializing speech engine...
[2026-06-19 09:00:31,604.604 INFO    ] 2026-06-19 09:00:31
[2026-06-19 09:00:31,860.860 INFO    ] 2026-06-19 09:00:31
[2026-06-19 09:00:31,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:00:32,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:00:32,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:00:32,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:00:32,299.299 INFO    ] time= 19/06/2026 09:00:32
[2026-06-19 09:00:32,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:00:32,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:00:32,479.479 INFO    ] No existing commands found in stream
[2026-06-19 09:00:37,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:00:37,494.494 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 09:00:40,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:00:40,883.883 INFO    ] Checking for system updates...
[2026-06-19 09:00:40,926.926 INFO    ] 200
[2026-06-19 09:00:40,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:00:40,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:00:40,986.986 INFO    ] No update needed
[2026-06-19 09:00:40,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 09:00:41,025.025 INFO    ] 200
[2026-06-19 09:00:41,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:00:41,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:00:41,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:00:41,124.124 INFO    ] No camera update needed
[2026-06-19 09:00:41,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:00:41,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:00:41,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:00:41,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:00:43,181.181 INFO    ] ================================================
[2026-06-19 09:00:43,197.197 INFO    ] Launching Daemon at Fri Jun 19 09:00:43 IST 2026
[2026-06-19 09:00:43,212.212 INFO    ] ================================================
[2026-06-19 09:00:43,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:00:43
[2026-06-19 09:00:44,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:00:44,673.673 INFO    ] Initializing speech engine...
[2026-06-19 09:00:44,682.682 INFO    ] 2026-06-19 09:00:44
[2026-06-19 09:00:44,941.941 INFO    ] 2026-06-19 09:00:44
[2026-06-19 09:00:44,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:00:45,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:00:45,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:00:45,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:00:45,414.414 INFO    ] time= 19/06/2026 09:00:45
[2026-06-19 09:00:45,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:00:45,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:00:45,552.552 INFO    ] No existing commands found in stream
[2026-06-19 09:00:50,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:00:50,567.567 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 09:00:52,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:00:52,473.473 INFO    ] Checking for system updates...
[2026-06-19 09:00:52,516.516 INFO    ] 200
[2026-06-19 09:00:52,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:00:52,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:00:52,599.599 INFO    ] No update needed
[2026-06-19 09:00:52,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 09:00:52,639.639 INFO    ] 200
[2026-06-19 09:00:52,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:00:52,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:00:52,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:00:52,751.751 INFO    ] No camera update needed
[2026-06-19 09:00:52,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:00:52,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:00:52,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:00:52,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:00:54,808.808 INFO    ] ================================================
[2026-06-19 09:00:54,823.823 INFO    ] Launching Daemon at Fri Jun 19 09:00:54 IST 2026
[2026-06-19 09:00:54,834.834 INFO    ] ================================================
[2026-06-19 09:00:55,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:00:55
[2026-06-19 09:00:56,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:00:56,319.319 INFO    ] Initializing speech engine...
[2026-06-19 09:00:56,342.342 INFO    ] 2026-06-19 09:00:56
[2026-06-19 09:00:56,599.599 INFO    ] 2026-06-19 09:00:56
[2026-06-19 09:00:56,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:00:56,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:00:56,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:00:56,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:00:56,975.975 INFO    ] time= 19/06/2026 09:00:56
[2026-06-19 09:00:56,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:00:57,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:00:57,158.158 INFO    ] No existing commands found in stream
[2026-06-19 09:01:02,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:01:02,187.187 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 09:01:05,803.803 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:01:05,806.806 INFO    ] Checking for system updates...
[2026-06-19 09:01:05,842.842 INFO    ] 200
[2026-06-19 09:01:05,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:05,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:01:05,899.899 INFO    ] No update needed
[2026-06-19 09:01:05,902.902 INFO    ] Checking for camera pi updates...
[2026-06-19 09:01:05,935.935 INFO    ] 200
[2026-06-19 09:01:05,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:05,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:01:06,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:01:06,028.028 INFO    ] No camera update needed
[2026-06-19 09:01:06,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:01:06,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:01:06,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:01:06,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:01:08,082.082 INFO    ] ================================================
[2026-06-19 09:01:08,098.098 INFO    ] Launching Daemon at Fri Jun 19 09:01:08 IST 2026
[2026-06-19 09:01:08,109.109 INFO    ] ================================================
[2026-06-19 09:01:08,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:01:08
[2026-06-19 09:01:09,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:01:09,578.578 INFO    ] Initializing speech engine...
[2026-06-19 09:01:09,589.589 INFO    ] 2026-06-19 09:01:09
[2026-06-19 09:01:09,849.849 INFO    ] 2026-06-19 09:01:09
[2026-06-19 09:01:09,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:01:10,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:01:10,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:01:10,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:01:10,211.211 INFO    ] time= 19/06/2026 09:01:10
[2026-06-19 09:01:10,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:01:10,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:01:10,379.379 INFO    ] No existing commands found in stream
[2026-06-19 09:01:15,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:01:15,408.408 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 09:01:16,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:01:16,670.670 INFO    ] Checking for system updates...
[2026-06-19 09:01:16,710.710 INFO    ] 200
[2026-06-19 09:01:16,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:16,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:01:16,769.769 INFO    ] No update needed
[2026-06-19 09:01:16,772.772 INFO    ] Checking for camera pi updates...
[2026-06-19 09:01:16,806.806 INFO    ] 200
[2026-06-19 09:01:16,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:16,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:01:16,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:01:16,896.896 INFO    ] No camera update needed
[2026-06-19 09:01:16,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:01:16,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:01:16,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:01:16,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:01:18,952.952 INFO    ] ================================================
[2026-06-19 09:01:18,967.967 INFO    ] Launching Daemon at Fri Jun 19 09:01:18 IST 2026
[2026-06-19 09:01:18,979.979 INFO    ] ================================================
[2026-06-19 09:01:19,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:01:19
[2026-06-19 09:01:20,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:01:20,436.436 INFO    ] Initializing speech engine...
[2026-06-19 09:01:20,445.445 INFO    ] 2026-06-19 09:01:20
[2026-06-19 09:01:20,714.714 INFO    ] 2026-06-19 09:01:20
[2026-06-19 09:01:20,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:01:20,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:01:20,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:01:21,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:01:21,093.093 INFO    ] time= 19/06/2026 09:01:21
[2026-06-19 09:01:21,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:01:21,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:01:21,219.219 INFO    ] No existing commands found in stream
[2026-06-19 09:01:26,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:01:26,232.232 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 09:01:26,801.801 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:01:26,803.803 INFO    ] Checking for system updates...
[2026-06-19 09:01:26,840.840 INFO    ] 200
[2026-06-19 09:01:26,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:26,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:01:26,898.898 INFO    ] No update needed
[2026-06-19 09:01:26,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 09:01:26,939.939 INFO    ] 200
[2026-06-19 09:01:26,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:26,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:01:27,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:01:27,024.024 INFO    ] No camera update needed
[2026-06-19 09:01:27,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:01:27,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:01:27,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:01:27,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:01:29,082.082 INFO    ] ================================================
[2026-06-19 09:01:29,097.097 INFO    ] Launching Daemon at Fri Jun 19 09:01:29 IST 2026
[2026-06-19 09:01:29,108.108 INFO    ] ================================================
[2026-06-19 09:01:29,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:01:29
[2026-06-19 09:01:30,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:01:30,725.725 INFO    ] Initializing speech engine...
[2026-06-19 09:01:30,743.743 INFO    ] 2026-06-19 09:01:30
[2026-06-19 09:01:31,027.027 INFO    ] 2026-06-19 09:01:31
[2026-06-19 09:01:31,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:01:31,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:01:31,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:01:31,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:01:31,568.568 INFO    ] time= 19/06/2026 09:01:31
[2026-06-19 09:01:31,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:01:31,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:01:31,730.730 INFO    ] No existing commands found in stream
[2026-06-19 09:01:36,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:01:36,761.761 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 09:01:39,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:01:39,415.415 INFO    ] Checking for system updates...
[2026-06-19 09:01:39,453.453 INFO    ] 200
[2026-06-19 09:01:39,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:39,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:01:39,513.513 INFO    ] No update needed
[2026-06-19 09:01:39,516.516 INFO    ] Checking for camera pi updates...
[2026-06-19 09:01:39,551.551 INFO    ] 200
[2026-06-19 09:01:39,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:39,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:01:39,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:01:39,643.643 INFO    ] No camera update needed
[2026-06-19 09:01:39,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:01:39,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:01:39,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:01:39,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:01:41,703.703 INFO    ] ================================================
[2026-06-19 09:01:41,718.718 INFO    ] Launching Daemon at Fri Jun 19 09:01:41 IST 2026
[2026-06-19 09:01:41,729.729 INFO    ] ================================================
[2026-06-19 09:01:42,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:01:42
[2026-06-19 09:01:42,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:01:43,163.163 INFO    ] Initializing speech engine...
[2026-06-19 09:01:43,171.171 INFO    ] 2026-06-19 09:01:43
[2026-06-19 09:01:43,423.423 INFO    ] 2026-06-19 09:01:43
[2026-06-19 09:01:43,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:01:43,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:01:43,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:01:43,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:01:43,868.868 INFO    ] time= 19/06/2026 09:01:43
[2026-06-19 09:01:43,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:01:43,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:01:44,052.052 INFO    ] No existing commands found in stream
[2026-06-19 09:01:49,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:01:49,067.067 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 09:01:53,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:01:53,074.074 INFO    ] Checking for system updates...
[2026-06-19 09:01:53,118.118 INFO    ] 200
[2026-06-19 09:01:53,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:53,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:01:53,194.194 INFO    ] No update needed
[2026-06-19 09:01:53,196.196 INFO    ] Checking for camera pi updates...
[2026-06-19 09:01:53,236.236 INFO    ] 200
[2026-06-19 09:01:53,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:01:53,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:01:53,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:01:53,336.336 INFO    ] No camera update needed
[2026-06-19 09:01:53,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:01:53,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:01:53,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:01:53,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:01:55,395.395 INFO    ] ================================================
[2026-06-19 09:01:55,411.411 INFO    ] Launching Daemon at Fri Jun 19 09:01:55 IST 2026
[2026-06-19 09:01:55,422.422 INFO    ] ================================================
[2026-06-19 09:01:56,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:01:55
[2026-06-19 09:01:56,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:01:56,844.844 INFO    ] Initializing speech engine...
[2026-06-19 09:01:56,867.867 INFO    ] 2026-06-19 09:01:56
[2026-06-19 09:01:57,126.126 INFO    ] 2026-06-19 09:01:57
[2026-06-19 09:01:57,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:01:57,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:01:57,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:01:57,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:01:57,611.611 INFO    ] time= 19/06/2026 09:01:57
[2026-06-19 09:01:57,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:01:57,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:01:57,847.847 INFO    ] No existing commands found in stream
[2026-06-19 09:02:02,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:02:02,867.867 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 09:02:06,015.015 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:02:06,018.018 INFO    ] Checking for system updates...
[2026-06-19 09:02:06,054.054 INFO    ] 200
[2026-06-19 09:02:06,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:06,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:02:06,111.111 INFO    ] No update needed
[2026-06-19 09:02:06,113.113 INFO    ] Checking for camera pi updates...
[2026-06-19 09:02:06,147.147 INFO    ] 200
[2026-06-19 09:02:06,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:06,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:02:06,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:02:06,238.238 INFO    ] No camera update needed
[2026-06-19 09:02:06,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:02:06,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:02:06,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:02:06,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:02:08,297.297 INFO    ] ================================================
[2026-06-19 09:02:08,313.313 INFO    ] Launching Daemon at Fri Jun 19 09:02:08 IST 2026
[2026-06-19 09:02:08,324.324 INFO    ] ================================================
[2026-06-19 09:02:08,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:02:08
[2026-06-19 09:02:09,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:02:09,757.757 INFO    ] Initializing speech engine...
[2026-06-19 09:02:09,764.764 INFO    ] 2026-06-19 09:02:09
[2026-06-19 09:02:10,025.025 INFO    ] 2026-06-19 09:02:10
[2026-06-19 09:02:10,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:02:10,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:02:10,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:02:10,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:02:10,472.472 INFO    ] time= 19/06/2026 09:02:10
[2026-06-19 09:02:10,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:02:10,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:02:10,627.627 INFO    ] No existing commands found in stream
[2026-06-19 09:02:15,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:02:15,636.636 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 09:02:19,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:02:19,036.036 INFO    ] Checking for system updates...
[2026-06-19 09:02:19,072.072 INFO    ] 200
[2026-06-19 09:02:19,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:19,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:02:19,130.130 INFO    ] No update needed
[2026-06-19 09:02:19,132.132 INFO    ] Checking for camera pi updates...
[2026-06-19 09:02:19,169.169 INFO    ] 200
[2026-06-19 09:02:19,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:19,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:02:19,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:02:19,374.374 INFO    ] No camera update needed
[2026-06-19 09:02:19,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:02:19,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:02:19,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:02:19,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:02:21,431.431 INFO    ] ================================================
[2026-06-19 09:02:21,447.447 INFO    ] Launching Daemon at Fri Jun 19 09:02:21 IST 2026
[2026-06-19 09:02:21,458.458 INFO    ] ================================================
[2026-06-19 09:02:22,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:02:22
[2026-06-19 09:02:22,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:02:22,922.922 INFO    ] Initializing speech engine...
[2026-06-19 09:02:22,941.941 INFO    ] 2026-06-19 09:02:22
[2026-06-19 09:02:23,192.192 INFO    ] 2026-06-19 09:02:23
[2026-06-19 09:02:23,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:02:23,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:02:23,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:02:23,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:02:23,562.562 INFO    ] time= 19/06/2026 09:02:23
[2026-06-19 09:02:23,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:02:23,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:02:23,723.723 INFO    ] No existing commands found in stream
[2026-06-19 09:02:28,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:02:28,751.751 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 09:02:29,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:02:29,970.970 INFO    ] Checking for system updates...
[2026-06-19 09:02:30,012.012 INFO    ] 200
[2026-06-19 09:02:30,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:30,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:02:30,072.072 INFO    ] No update needed
[2026-06-19 09:02:30,074.074 INFO    ] Checking for camera pi updates...
[2026-06-19 09:02:30,109.109 INFO    ] 200
[2026-06-19 09:02:30,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:30,155.155 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:02:30,199.199 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:02:30,202.202 INFO    ] No camera update needed
[2026-06-19 09:02:30,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:02:30,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:02:30,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:02:30,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:02:32,262.262 INFO    ] ================================================
[2026-06-19 09:02:32,279.279 INFO    ] Launching Daemon at Fri Jun 19 09:02:32 IST 2026
[2026-06-19 09:02:32,291.291 INFO    ] ================================================
[2026-06-19 09:02:32,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:02:32
[2026-06-19 09:02:33,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:02:33,942.942 INFO    ] Initializing speech engine...
[2026-06-19 09:02:33,949.949 INFO    ] 2026-06-19 09:02:33
[2026-06-19 09:02:34,233.233 INFO    ] 2026-06-19 09:02:34
[2026-06-19 09:02:34,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:02:34,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:02:34,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:02:34,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:02:34,767.767 INFO    ] time= 19/06/2026 09:02:34
[2026-06-19 09:02:34,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:02:34,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:02:34,922.922 INFO    ] No existing commands found in stream
[2026-06-19 09:02:39,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:02:39,942.942 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 09:02:44,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:02:44,119.119 INFO    ] Checking for system updates...
[2026-06-19 09:02:44,160.160 INFO    ] 200
[2026-06-19 09:02:44,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:44,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:02:44,224.224 INFO    ] No update needed
[2026-06-19 09:02:44,227.227 INFO    ] Checking for camera pi updates...
[2026-06-19 09:02:44,262.262 INFO    ] 200
[2026-06-19 09:02:44,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:44,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:02:44,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:02:44,359.359 INFO    ] No camera update needed
[2026-06-19 09:02:44,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:02:44,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:02:44,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:02:44,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:02:46,416.416 INFO    ] ================================================
[2026-06-19 09:02:46,432.432 INFO    ] Launching Daemon at Fri Jun 19 09:02:46 IST 2026
[2026-06-19 09:02:46,444.444 INFO    ] ================================================
[2026-06-19 09:02:47,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:02:47
[2026-06-19 09:02:47,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:02:48,010.010 INFO    ] Initializing speech engine...
[2026-06-19 09:02:48,022.022 INFO    ] 2026-06-19 09:02:48
[2026-06-19 09:02:48,332.332 INFO    ] 2026-06-19 09:02:48
[2026-06-19 09:02:48,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:02:48,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:02:48,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:02:48,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:02:48,840.840 INFO    ] time= 19/06/2026 09:02:48
[2026-06-19 09:02:48,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:02:48,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:02:48,984.984 INFO    ] No existing commands found in stream
[2026-06-19 09:02:54,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:02:54,010.010 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 09:02:56,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:02:56,376.376 INFO    ] Checking for system updates...
[2026-06-19 09:02:56,413.413 INFO    ] 200
[2026-06-19 09:02:56,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:56,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:02:56,481.481 INFO    ] No update needed
[2026-06-19 09:02:56,484.484 INFO    ] Checking for camera pi updates...
[2026-06-19 09:02:56,523.523 INFO    ] 200
[2026-06-19 09:02:56,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:02:56,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:02:56,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:02:56,616.616 INFO    ] No camera update needed
[2026-06-19 09:02:56,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:02:56,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:02:56,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:02:56,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:02:58,677.677 INFO    ] ================================================
[2026-06-19 09:02:58,693.693 INFO    ] Launching Daemon at Fri Jun 19 09:02:58 IST 2026
[2026-06-19 09:02:58,705.705 INFO    ] ================================================
[2026-06-19 09:02:59,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:02:59
[2026-06-19 09:02:59,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:03:00,128.128 INFO    ] Initializing speech engine...
[2026-06-19 09:03:00,138.138 INFO    ] 2026-06-19 09:03:00
[2026-06-19 09:03:00,384.384 INFO    ] 2026-06-19 09:03:00
[2026-06-19 09:03:00,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:03:00,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:03:00,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:03:00,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:03:00,824.824 INFO    ] time= 19/06/2026 09:03:00
[2026-06-19 09:03:00,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:03:00,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:03:01,081.081 INFO    ] No existing commands found in stream
[2026-06-19 09:03:06,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:03:06,108.108 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 09:03:09,639.639 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:03:09,642.642 INFO    ] Checking for system updates...
[2026-06-19 09:03:09,681.681 INFO    ] 200
[2026-06-19 09:03:09,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:09,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:03:09,740.740 INFO    ] No update needed
[2026-06-19 09:03:09,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 09:03:09,779.779 INFO    ] 200
[2026-06-19 09:03:09,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:09,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:03:09,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:03:09,882.882 INFO    ] No camera update needed
[2026-06-19 09:03:09,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:03:09,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:03:09,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:03:09,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:03:11,940.940 INFO    ] ================================================
[2026-06-19 09:03:11,956.956 INFO    ] Launching Daemon at Fri Jun 19 09:03:11 IST 2026
[2026-06-19 09:03:11,968.968 INFO    ] ================================================
[2026-06-19 09:03:12,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:03:12
[2026-06-19 09:03:13,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:03:13,390.390 INFO    ] Initializing speech engine...
[2026-06-19 09:03:13,400.400 INFO    ] 2026-06-19 09:03:13
[2026-06-19 09:03:13,644.644 INFO    ] 2026-06-19 09:03:13
[2026-06-19 09:03:13,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:03:13,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:03:13,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:03:14,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:03:14,138.138 INFO    ] time= 19/06/2026 09:03:14
[2026-06-19 09:03:14,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:03:14,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:03:14,326.326 INFO    ] No existing commands found in stream
[2026-06-19 09:03:19,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:03:19,356.356 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 09:03:22,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:03:22,068.068 INFO    ] Checking for system updates...
[2026-06-19 09:03:22,105.105 INFO    ] 200
[2026-06-19 09:03:22,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:22,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:03:22,165.165 INFO    ] No update needed
[2026-06-19 09:03:22,168.168 INFO    ] Checking for camera pi updates...
[2026-06-19 09:03:22,208.208 INFO    ] 200
[2026-06-19 09:03:22,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:22,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:03:22,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:03:22,309.309 INFO    ] No camera update needed
[2026-06-19 09:03:22,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:03:22,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:03:22,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:03:22,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:03:24,369.369 INFO    ] ================================================
[2026-06-19 09:03:24,386.386 INFO    ] Launching Daemon at Fri Jun 19 09:03:24 IST 2026
[2026-06-19 09:03:24,399.399 INFO    ] ================================================
[2026-06-19 09:03:24,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:03:24
[2026-06-19 09:03:25,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:03:25,829.829 INFO    ] Initializing speech engine...
[2026-06-19 09:03:25,836.836 INFO    ] 2026-06-19 09:03:25
[2026-06-19 09:03:26,096.096 INFO    ] 2026-06-19 09:03:26
[2026-06-19 09:03:26,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:03:26,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:03:26,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:03:26,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:03:26,475.475 INFO    ] time= 19/06/2026 09:03:26
[2026-06-19 09:03:26,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:03:26,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:03:26,656.656 INFO    ] No existing commands found in stream
[2026-06-19 09:03:31,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:03:31,690.690 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 09:03:32,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:03:32,726.726 INFO    ] Checking for system updates...
[2026-06-19 09:03:32,764.764 INFO    ] 200
[2026-06-19 09:03:32,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:32,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:03:32,826.826 INFO    ] No update needed
[2026-06-19 09:03:32,829.829 INFO    ] Checking for camera pi updates...
[2026-06-19 09:03:32,863.863 INFO    ] 200
[2026-06-19 09:03:32,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:32,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:03:32,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:03:32,942.942 INFO    ] No camera update needed
[2026-06-19 09:03:32,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:03:32,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:03:32,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:03:32,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:03:35,999.999 INFO    ] ================================================
[2026-06-19 09:03:35,015.015 INFO    ] Launching Daemon at Fri Jun 19 09:03:35 IST 2026
[2026-06-19 09:03:35,026.026 INFO    ] ================================================
[2026-06-19 09:03:35,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:03:35
[2026-06-19 09:03:36,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:03:36,648.648 INFO    ] Initializing speech engine...
[2026-06-19 09:03:36,655.655 INFO    ] 2026-06-19 09:03:36
[2026-06-19 09:03:36,930.930 INFO    ] 2026-06-19 09:03:36
[2026-06-19 09:03:36,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:03:37,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:03:37,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:03:37,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:03:37,417.417 INFO    ] time= 19/06/2026 09:03:37
[2026-06-19 09:03:37,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:03:37,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:03:37,607.607 INFO    ] No existing commands found in stream
[2026-06-19 09:03:42,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:03:42,637.637 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 09:03:44,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:03:44,890.890 INFO    ] Checking for system updates...
[2026-06-19 09:03:44,928.928 INFO    ] 200
[2026-06-19 09:03:44,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:44,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:03:44,992.992 INFO    ] No update needed
[2026-06-19 09:03:44,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 09:03:45,029.029 INFO    ] 200
[2026-06-19 09:03:45,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:45,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:03:45,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:03:45,116.116 INFO    ] No camera update needed
[2026-06-19 09:03:45,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:03:45,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:03:45,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:03:45,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:03:47,177.177 INFO    ] ================================================
[2026-06-19 09:03:47,193.193 INFO    ] Launching Daemon at Fri Jun 19 09:03:47 IST 2026
[2026-06-19 09:03:47,204.204 INFO    ] ================================================
[2026-06-19 09:03:47,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:03:47
[2026-06-19 09:03:48,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:03:48,795.795 INFO    ] Initializing speech engine...
[2026-06-19 09:03:48,807.807 INFO    ] 2026-06-19 09:03:48
[2026-06-19 09:03:49,083.083 INFO    ] 2026-06-19 09:03:49
[2026-06-19 09:03:49,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:03:49,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:03:49,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:03:49,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:03:49,619.619 INFO    ] time= 19/06/2026 09:03:49
[2026-06-19 09:03:49,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:03:49,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:03:49,760.760 INFO    ] No existing commands found in stream
[2026-06-19 09:03:54,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:03:54,788.788 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 09:03:59,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:03:59,208.208 INFO    ] Checking for system updates...
[2026-06-19 09:03:59,249.249 INFO    ] 200
[2026-06-19 09:03:59,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:59,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:03:59,308.308 INFO    ] No update needed
[2026-06-19 09:03:59,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 09:03:59,348.348 INFO    ] 200
[2026-06-19 09:03:59,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:03:59,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:03:59,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:03:59,443.443 INFO    ] No camera update needed
[2026-06-19 09:03:59,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:03:59,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:03:59,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:03:59,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:04:01,518.518 INFO    ] ================================================
[2026-06-19 09:04:01,551.551 INFO    ] Launching Daemon at Fri Jun 19 09:04:01 IST 2026
[2026-06-19 09:04:01,577.577 INFO    ] ================================================
[2026-06-19 09:04:02,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:04:02
[2026-06-19 09:04:02,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:04:03,239.239 INFO    ] Initializing speech engine...
[2026-06-19 09:04:03,253.253 INFO    ] 2026-06-19 09:04:03
[2026-06-19 09:04:03,519.519 INFO    ] 2026-06-19 09:04:03
[2026-06-19 09:04:03,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:04:03,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:04:03,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:04:03,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:04:03,895.895 INFO    ] time= 19/06/2026 09:04:03
[2026-06-19 09:04:03,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:04:03,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:04:04,078.078 INFO    ] No existing commands found in stream
[2026-06-19 09:04:09,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:04:09,106.106 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 09:04:12,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:04:12,382.382 INFO    ] Checking for system updates...
[2026-06-19 09:04:12,422.422 INFO    ] 200
[2026-06-19 09:04:12,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:12,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:04:12,488.488 INFO    ] No update needed
[2026-06-19 09:04:12,491.491 INFO    ] Checking for camera pi updates...
[2026-06-19 09:04:12,529.529 INFO    ] 200
[2026-06-19 09:04:12,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:12,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:04:12,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:04:12,614.614 INFO    ] No camera update needed
[2026-06-19 09:04:12,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:04:12,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:04:12,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:04:12,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:04:14,671.671 INFO    ] ================================================
[2026-06-19 09:04:14,687.687 INFO    ] Launching Daemon at Fri Jun 19 09:04:14 IST 2026
[2026-06-19 09:04:14,698.698 INFO    ] ================================================
[2026-06-19 09:04:15,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:04:15
[2026-06-19 09:04:15,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:04:16,132.132 INFO    ] Initializing speech engine...
[2026-06-19 09:04:16,141.141 INFO    ] 2026-06-19 09:04:16
[2026-06-19 09:04:16,406.406 INFO    ] 2026-06-19 09:04:16
[2026-06-19 09:04:16,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:04:16,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:04:16,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:04:16,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:04:16,872.872 INFO    ] time= 19/06/2026 09:04:16
[2026-06-19 09:04:16,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:04:16,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:04:17,020.020 INFO    ] No existing commands found in stream
[2026-06-19 09:04:22,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:04:22,054.054 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 09:04:22,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:04:22,508.508 INFO    ] Checking for system updates...
[2026-06-19 09:04:22,549.549 INFO    ] 200
[2026-06-19 09:04:22,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:22,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:04:22,614.614 INFO    ] No update needed
[2026-06-19 09:04:22,617.617 INFO    ] Checking for camera pi updates...
[2026-06-19 09:04:22,655.655 INFO    ] 200
[2026-06-19 09:04:22,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:22,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:04:22,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:04:22,859.859 INFO    ] No camera update needed
[2026-06-19 09:04:22,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:04:22,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:04:22,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:04:22,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:04:24,914.914 INFO    ] ================================================
[2026-06-19 09:04:24,930.930 INFO    ] Launching Daemon at Fri Jun 19 09:04:24 IST 2026
[2026-06-19 09:04:24,941.941 INFO    ] ================================================
[2026-06-19 09:04:25,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:04:25
[2026-06-19 09:04:26,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:04:26,358.358 INFO    ] Initializing speech engine...
[2026-06-19 09:04:26,372.372 INFO    ] 2026-06-19 09:04:26
[2026-06-19 09:04:26,638.638 INFO    ] 2026-06-19 09:04:26
[2026-06-19 09:04:26,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:04:26,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:04:26,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:04:27,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:04:27,021.021 INFO    ] time= 19/06/2026 09:04:27
[2026-06-19 09:04:27,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:04:27,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:04:27,189.189 INFO    ] No existing commands found in stream
[2026-06-19 09:04:32,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:04:32,217.217 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 09:04:33,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:04:33,139.139 INFO    ] Checking for system updates...
[2026-06-19 09:04:33,180.180 INFO    ] 200
[2026-06-19 09:04:33,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:33,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:04:33,238.238 INFO    ] No update needed
[2026-06-19 09:04:33,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 09:04:33,275.275 INFO    ] 200
[2026-06-19 09:04:33,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:33,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:04:33,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:04:33,374.374 INFO    ] No camera update needed
[2026-06-19 09:04:33,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:04:33,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:04:33,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:04:33,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:04:35,430.430 INFO    ] ================================================
[2026-06-19 09:04:35,446.446 INFO    ] Launching Daemon at Fri Jun 19 09:04:35 IST 2026
[2026-06-19 09:04:35,457.457 INFO    ] ================================================
[2026-06-19 09:04:36,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:04:36
[2026-06-19 09:04:36,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:04:37,042.042 INFO    ] Initializing speech engine...
[2026-06-19 09:04:37,065.065 INFO    ] 2026-06-19 09:04:37
[2026-06-19 09:04:37,336.336 INFO    ] 2026-06-19 09:04:37
[2026-06-19 09:04:37,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:04:37,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:04:37,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:04:37,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:04:37,901.901 INFO    ] time= 19/06/2026 09:04:37
[2026-06-19 09:04:37,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:04:37,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:04:38,055.055 INFO    ] No existing commands found in stream
[2026-06-19 09:04:43,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:04:43,082.082 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 09:04:46,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:04:46,025.025 INFO    ] Checking for system updates...
[2026-06-19 09:04:46,066.066 INFO    ] 200
[2026-06-19 09:04:46,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:46,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:04:46,123.123 INFO    ] No update needed
[2026-06-19 09:04:46,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 09:04:46,164.164 INFO    ] 200
[2026-06-19 09:04:46,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:46,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:04:46,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:04:46,261.261 INFO    ] No camera update needed
[2026-06-19 09:04:46,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:04:46,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:04:46,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:04:46,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:04:48,318.318 INFO    ] ================================================
[2026-06-19 09:04:48,333.333 INFO    ] Launching Daemon at Fri Jun 19 09:04:48 IST 2026
[2026-06-19 09:04:48,344.344 INFO    ] ================================================
[2026-06-19 09:04:49,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:04:49
[2026-06-19 09:04:49,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:04:50,004.004 INFO    ] Initializing speech engine...
[2026-06-19 09:04:50,020.020 INFO    ] 2026-06-19 09:04:50
[2026-06-19 09:04:50,289.289 INFO    ] 2026-06-19 09:04:50
[2026-06-19 09:04:50,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:04:50,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:04:50,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:04:50,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:04:50,837.837 INFO    ] time= 19/06/2026 09:04:50
[2026-06-19 09:04:50,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:04:50,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:04:50,989.989 INFO    ] No existing commands found in stream
[2026-06-19 09:04:56,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:04:56,010.010 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 09:04:58,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:04:58,461.461 INFO    ] Checking for system updates...
[2026-06-19 09:04:58,498.498 INFO    ] 200
[2026-06-19 09:04:58,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:58,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:04:58,557.557 INFO    ] No update needed
[2026-06-19 09:04:58,559.559 INFO    ] Checking for camera pi updates...
[2026-06-19 09:04:58,597.597 INFO    ] 200
[2026-06-19 09:04:58,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:04:58,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:04:58,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:04:58,695.695 INFO    ] No camera update needed
[2026-06-19 09:04:58,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:04:58,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:04:58,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:04:58,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:05:00,749.749 INFO    ] ================================================
[2026-06-19 09:05:00,765.765 INFO    ] Launching Daemon at Fri Jun 19 09:05:00 IST 2026
[2026-06-19 09:05:00,776.776 INFO    ] ================================================
[2026-06-19 09:05:01,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:05:01
[2026-06-19 09:05:02,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:05:02,792.792 INFO    ] Initializing speech engine...
[2026-06-19 09:05:02,800.800 INFO    ] 2026-06-19 09:05:02
[2026-06-19 09:05:03,116.116 INFO    ] 2026-06-19 09:05:03
[2026-06-19 09:05:03,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:05:03,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:05:03,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:05:03,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:05:03,616.616 INFO    ] time= 19/06/2026 09:05:03
[2026-06-19 09:05:03,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:05:03,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:05:03,777.777 INFO    ] No existing commands found in stream
[2026-06-19 09:05:08,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:05:08,791.791 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 09:05:10,328.328 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:05:10,330.330 INFO    ] Checking for system updates...
[2026-06-19 09:05:10,371.371 INFO    ] 200
[2026-06-19 09:05:10,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:05:10,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:05:10,435.435 INFO    ] No update needed
[2026-06-19 09:05:10,438.438 INFO    ] Checking for camera pi updates...
[2026-06-19 09:05:10,476.476 INFO    ] 200
[2026-06-19 09:05:10,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:05:10,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:05:10,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:05:10,560.560 INFO    ] No camera update needed
[2026-06-19 09:05:10,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:05:10,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:05:10,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:05:10,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:05:12,615.615 INFO    ] ================================================
[2026-06-19 09:05:12,630.630 INFO    ] Launching Daemon at Fri Jun 19 09:05:12 IST 2026
[2026-06-19 09:05:12,641.641 INFO    ] ================================================
[2026-06-19 09:05:13,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:05:13
[2026-06-19 09:05:13,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:05:14,054.054 INFO    ] Initializing speech engine...
[2026-06-19 09:05:14,063.063 INFO    ] 2026-06-19 09:05:14
[2026-06-19 09:05:14,368.368 INFO    ] 2026-06-19 09:05:14
[2026-06-19 09:05:14,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:05:14,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:05:14,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:05:14,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:05:14,793.793 INFO    ] time= 19/06/2026 09:05:14
[2026-06-19 09:05:14,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:05:14,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:05:14,880.880 INFO    ] No existing commands found in stream
[2026-06-19 09:05:19,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:05:19,898.898 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 09:05:23,525.525 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:05:23,528.528 INFO    ] Checking for system updates...
[2026-06-19 09:05:23,565.565 INFO    ] 200
[2026-06-19 09:05:23,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:05:23,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:05:23,628.628 INFO    ] No update needed
[2026-06-19 09:05:23,631.631 INFO    ] Checking for camera pi updates...
[2026-06-19 09:05:23,668.668 INFO    ] 200
[2026-06-19 09:05:23,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:05:23,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:05:23,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:05:23,768.768 INFO    ] No camera update needed
[2026-06-19 09:05:23,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:05:23,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:05:23,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:05:23,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:05:25,823.823 INFO    ] ================================================
[2026-06-19 09:05:25,839.839 INFO    ] Launching Daemon at Fri Jun 19 09:05:25 IST 2026
[2026-06-19 09:05:25,850.850 INFO    ] ================================================
[2026-06-19 09:05:26,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:05:26
[2026-06-19 09:05:27,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:05:27,274.274 INFO    ] Initializing speech engine...
[2026-06-19 09:05:27,284.284 INFO    ] 2026-06-19 09:05:27
[2026-06-19 09:05:27,533.533 INFO    ] 2026-06-19 09:05:27
[2026-06-19 09:05:27,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:05:27,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:05:27,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:05:27,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:05:27,977.977 INFO    ] time= 19/06/2026 09:05:27
[2026-06-19 09:05:28,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:05:28,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:05:28,159.159 INFO    ] No existing commands found in stream
[2026-06-19 09:05:33,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:05:33,174.174 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 09:05:36,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:05:36,641.641 INFO    ] Checking for system updates...
[2026-06-19 09:05:36,681.681 INFO    ] 200
[2026-06-19 09:05:36,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:05:36,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:05:36,766.766 INFO    ] No update needed
[2026-06-19 09:05:36,768.768 INFO    ] Checking for camera pi updates...
[2026-06-19 09:05:36,806.806 INFO    ] 200
[2026-06-19 09:05:36,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:05:36,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:05:36,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:05:36,902.902 INFO    ] No camera update needed
[2026-06-19 09:05:36,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:05:36,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:05:36,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:05:36,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:05:38,957.957 INFO    ] ================================================
[2026-06-19 09:05:38,972.972 INFO    ] Launching Daemon at Fri Jun 19 09:05:38 IST 2026
[2026-06-19 09:05:38,983.983 INFO    ] ================================================
[2026-06-19 09:05:39,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:05:39
[2026-06-19 09:05:40,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:05:40,486.486 INFO    ] Initializing speech engine...
[2026-06-19 09:05:40,495.495 INFO    ] 2026-06-19 09:05:40
[2026-06-19 09:05:40,764.764 INFO    ] 2026-06-19 09:05:40
[2026-06-19 09:05:40,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:05:41,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:05:41,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:05:41,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:05:41,253.253 INFO    ] time= 19/06/2026 09:05:41
[2026-06-19 09:05:41,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:05:41,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:05:41,394.394 INFO    ] No existing commands found in stream
[2026-06-19 09:05:46,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:05:46,409.409 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 09:05:47,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:05:47,648.648 INFO    ] Checking for system updates...
[2026-06-19 09:05:47,687.687 INFO    ] 200
[2026-06-19 09:05:47,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:05:47,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:05:47,759.759 INFO    ] No update needed
[2026-06-19 09:05:47,762.762 INFO    ] Checking for camera pi updates...
[2026-06-19 09:05:47,799.799 INFO    ] 200
[2026-06-19 09:05:47,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:05:47,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:05:47,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:05:47,883.883 INFO    ] No camera update needed
[2026-06-19 09:05:47,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:05:47,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:05:47,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:05:47,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:05:49,939.939 INFO    ] ================================================
[2026-06-19 09:05:49,956.956 INFO    ] Launching Daemon at Fri Jun 19 09:05:49 IST 2026
[2026-06-19 09:05:49,967.967 INFO    ] ================================================
[2026-06-19 09:05:50,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:05:50
[2026-06-19 09:05:51,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:05:51,435.435 INFO    ] Initializing speech engine...
[2026-06-19 09:05:51,448.448 INFO    ] 2026-06-19 09:05:51
[2026-06-19 09:05:51,767.767 INFO    ] 2026-06-19 09:05:51
[2026-06-19 09:05:51,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:05:52,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:05:52,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:05:52,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:05:52,278.278 INFO    ] time= 19/06/2026 09:05:52
[2026-06-19 09:05:52,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:05:52,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:05:52,445.445 INFO    ] No existing commands found in stream
[2026-06-19 09:05:57,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:05:57,469.469 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 09:05:59,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:05:59,929.929 INFO    ] Checking for system updates...
[2026-06-19 09:05:59,968.968 INFO    ] 200
[2026-06-19 09:05:59,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:00,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:06:00,041.041 INFO    ] No update needed
[2026-06-19 09:06:00,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 09:06:00,084.084 INFO    ] 200
[2026-06-19 09:06:00,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:00,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:06:00,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:06:00,189.189 INFO    ] No camera update needed
[2026-06-19 09:06:00,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:06:00,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:06:00,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:06:00,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:06:02,252.252 INFO    ] ================================================
[2026-06-19 09:06:02,273.273 INFO    ] Launching Daemon at Fri Jun 19 09:06:02 IST 2026
[2026-06-19 09:06:02,288.288 INFO    ] ================================================
[2026-06-19 09:06:03,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:06:03
[2026-06-19 09:06:03,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:06:04,038.038 INFO    ] Initializing speech engine...
[2026-06-19 09:06:04,052.052 INFO    ] 2026-06-19 09:06:04
[2026-06-19 09:06:04,333.333 INFO    ] 2026-06-19 09:06:04
[2026-06-19 09:06:04,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:06:04,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:06:04,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:06:04,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:06:04,828.828 INFO    ] time= 19/06/2026 09:06:04
[2026-06-19 09:06:04,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:06:04,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:06:05,003.003 INFO    ] No existing commands found in stream
[2026-06-19 09:06:10,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:06:10,040.040 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 09:06:14,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:06:14,091.091 INFO    ] Checking for system updates...
[2026-06-19 09:06:14,133.133 INFO    ] 200
[2026-06-19 09:06:14,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:14,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:06:14,205.205 INFO    ] No update needed
[2026-06-19 09:06:14,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 09:06:14,247.247 INFO    ] 200
[2026-06-19 09:06:14,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:14,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:06:14,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:06:14,349.349 INFO    ] No camera update needed
[2026-06-19 09:06:14,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:06:14,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:06:14,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:06:14,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:06:16,405.405 INFO    ] ================================================
[2026-06-19 09:06:16,427.427 INFO    ] Launching Daemon at Fri Jun 19 09:06:16 IST 2026
[2026-06-19 09:06:16,437.437 INFO    ] ================================================
[2026-06-19 09:06:17,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:06:17
[2026-06-19 09:06:17,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:06:17,892.892 INFO    ] Initializing speech engine...
[2026-06-19 09:06:17,901.901 INFO    ] 2026-06-19 09:06:17
[2026-06-19 09:06:18,202.202 INFO    ] 2026-06-19 09:06:18
[2026-06-19 09:06:18,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:06:18,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:06:18,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:06:18,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:06:18,560.560 INFO    ] time= 19/06/2026 09:06:18
[2026-06-19 09:06:18,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:06:18,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:06:18,643.643 INFO    ] No existing commands found in stream
[2026-06-19 09:06:23,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:06:23,657.657 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 09:06:25,886.886 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:06:25,888.888 INFO    ] Checking for system updates...
[2026-06-19 09:06:25,928.928 INFO    ] 200
[2026-06-19 09:06:25,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:25,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:06:25,986.986 INFO    ] No update needed
[2026-06-19 09:06:25,988.988 INFO    ] Checking for camera pi updates...
[2026-06-19 09:06:26,022.022 INFO    ] 200
[2026-06-19 09:06:26,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:26,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:06:26,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:06:26,217.217 INFO    ] No camera update needed
[2026-06-19 09:06:26,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:06:26,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:06:26,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:06:26,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:06:28,273.273 INFO    ] ================================================
[2026-06-19 09:06:28,288.288 INFO    ] Launching Daemon at Fri Jun 19 09:06:28 IST 2026
[2026-06-19 09:06:28,299.299 INFO    ] ================================================
[2026-06-19 09:06:28,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:06:28
[2026-06-19 09:06:29,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:06:29,914.914 INFO    ] Initializing speech engine...
[2026-06-19 09:06:29,927.927 INFO    ] 2026-06-19 09:06:29
[2026-06-19 09:06:30,242.242 INFO    ] 2026-06-19 09:06:30
[2026-06-19 09:06:30,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:06:30,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:06:30,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:06:30,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:06:30,775.775 INFO    ] time= 19/06/2026 09:06:30
[2026-06-19 09:06:30,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:06:30,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:06:30,915.915 INFO    ] No existing commands found in stream
[2026-06-19 09:06:35,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:06:35,935.935 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 09:06:36,980.980 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:06:36,983.983 INFO    ] Checking for system updates...
[2026-06-19 09:06:37,021.021 INFO    ] 200
[2026-06-19 09:06:37,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:37,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:06:37,097.097 INFO    ] No update needed
[2026-06-19 09:06:37,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 09:06:37,134.134 INFO    ] 200
[2026-06-19 09:06:37,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:37,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:06:37,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:06:37,219.219 INFO    ] No camera update needed
[2026-06-19 09:06:37,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:06:37,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:06:37,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:06:37,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:06:39,277.277 INFO    ] ================================================
[2026-06-19 09:06:39,292.292 INFO    ] Launching Daemon at Fri Jun 19 09:06:39 IST 2026
[2026-06-19 09:06:39,303.303 INFO    ] ================================================
[2026-06-19 09:06:39,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:06:39
[2026-06-19 09:06:40,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:06:40,712.712 INFO    ] Initializing speech engine...
[2026-06-19 09:06:40,724.724 INFO    ] 2026-06-19 09:06:40
[2026-06-19 09:06:40,991.991 INFO    ] 2026-06-19 09:06:40
[2026-06-19 09:06:41,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:06:41,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:06:41,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:06:41,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:06:41,470.470 INFO    ] time= 19/06/2026 09:06:41
[2026-06-19 09:06:41,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:06:41,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:06:41,622.622 INFO    ] No existing commands found in stream
[2026-06-19 09:06:46,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:06:46,637.637 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 09:06:50,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:06:50,781.781 INFO    ] Checking for system updates...
[2026-06-19 09:06:50,821.821 INFO    ] 200
[2026-06-19 09:06:50,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:50,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:06:50,884.884 INFO    ] No update needed
[2026-06-19 09:06:50,887.887 INFO    ] Checking for camera pi updates...
[2026-06-19 09:06:50,921.921 INFO    ] 200
[2026-06-19 09:06:50,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:06:50,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:06:51,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:06:51,015.015 INFO    ] No camera update needed
[2026-06-19 09:06:51,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:06:51,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:06:51,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:06:51,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:06:53,071.071 INFO    ] ================================================
[2026-06-19 09:06:53,086.086 INFO    ] Launching Daemon at Fri Jun 19 09:06:53 IST 2026
[2026-06-19 09:06:53,097.097 INFO    ] ================================================
[2026-06-19 09:06:53,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:06:53
[2026-06-19 09:06:54,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:06:54,570.570 INFO    ] Initializing speech engine...
[2026-06-19 09:06:54,577.577 INFO    ] 2026-06-19 09:06:54
[2026-06-19 09:06:54,837.837 INFO    ] 2026-06-19 09:06:54
[2026-06-19 09:06:54,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:06:55,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:06:55,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:06:55,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:06:55,302.302 INFO    ] time= 19/06/2026 09:06:55
[2026-06-19 09:06:55,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:06:55,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:06:55,478.478 INFO    ] No existing commands found in stream
[2026-06-19 09:07:00,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:07:00,512.512 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 09:07:04,707.707 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:07:04,710.710 INFO    ] Checking for system updates...
[2026-06-19 09:07:04,749.749 INFO    ] 200
[2026-06-19 09:07:04,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:04,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:07:04,813.813 INFO    ] No update needed
[2026-06-19 09:07:04,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 09:07:04,856.856 INFO    ] 200
[2026-06-19 09:07:04,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:04,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:07:04,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:07:04,968.968 INFO    ] No camera update needed
[2026-06-19 09:07:04,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:07:04,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:07:04,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:07:04,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:07:07,028.028 INFO    ] ================================================
[2026-06-19 09:07:07,043.043 INFO    ] Launching Daemon at Fri Jun 19 09:07:07 IST 2026
[2026-06-19 09:07:07,054.054 INFO    ] ================================================
[2026-06-19 09:07:07,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:07:07
[2026-06-19 09:07:08,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:07:08,510.510 INFO    ] Initializing speech engine...
[2026-06-19 09:07:08,519.519 INFO    ] 2026-06-19 09:07:08
[2026-06-19 09:07:08,779.779 INFO    ] 2026-06-19 09:07:08
[2026-06-19 09:07:08,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:07:09,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:07:09,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:07:09,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:07:09,235.235 INFO    ] time= 19/06/2026 09:07:09
[2026-06-19 09:07:09,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:07:09,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:07:09,389.389 INFO    ] No existing commands found in stream
[2026-06-19 09:07:14,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:07:14,403.403 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 09:07:17,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:07:17,196.196 INFO    ] Checking for system updates...
[2026-06-19 09:07:17,235.235 INFO    ] 200
[2026-06-19 09:07:17,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:17,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:07:17,311.311 INFO    ] No update needed
[2026-06-19 09:07:17,314.314 INFO    ] Checking for camera pi updates...
[2026-06-19 09:07:17,348.348 INFO    ] 200
[2026-06-19 09:07:17,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:17,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:07:17,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:07:17,444.444 INFO    ] No camera update needed
[2026-06-19 09:07:17,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:07:17,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:07:17,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:07:17,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:07:19,499.499 INFO    ] ================================================
[2026-06-19 09:07:19,515.515 INFO    ] Launching Daemon at Fri Jun 19 09:07:19 IST 2026
[2026-06-19 09:07:19,525.525 INFO    ] ================================================
[2026-06-19 09:07:20,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:07:20
[2026-06-19 09:07:20,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:07:20,981.981 INFO    ] Initializing speech engine...
[2026-06-19 09:07:20,988.988 INFO    ] 2026-06-19 09:07:20
[2026-06-19 09:07:21,237.237 INFO    ] 2026-06-19 09:07:21
[2026-06-19 09:07:21,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:07:21,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:07:21,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:07:21,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:07:21,724.724 INFO    ] time= 19/06/2026 09:07:21
[2026-06-19 09:07:21,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:07:21,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:07:21,865.865 INFO    ] No existing commands found in stream
[2026-06-19 09:07:26,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:07:26,900.900 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 09:07:29,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:07:29,668.668 INFO    ] Checking for system updates...
[2026-06-19 09:07:29,704.704 INFO    ] 200
[2026-06-19 09:07:29,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:29,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:07:29,767.767 INFO    ] No update needed
[2026-06-19 09:07:29,769.769 INFO    ] Checking for camera pi updates...
[2026-06-19 09:07:29,804.804 INFO    ] 200
[2026-06-19 09:07:29,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:29,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:07:29,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:07:29,876.876 INFO    ] No camera update needed
[2026-06-19 09:07:29,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:07:29,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:07:29,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:07:29,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:07:31,933.933 INFO    ] ================================================
[2026-06-19 09:07:31,949.949 INFO    ] Launching Daemon at Fri Jun 19 09:07:31 IST 2026
[2026-06-19 09:07:31,961.961 INFO    ] ================================================
[2026-06-19 09:07:32,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:07:32
[2026-06-19 09:07:33,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:07:33,482.482 INFO    ] Initializing speech engine...
[2026-06-19 09:07:33,488.488 INFO    ] 2026-06-19 09:07:33
[2026-06-19 09:07:33,749.749 INFO    ] 2026-06-19 09:07:33
[2026-06-19 09:07:33,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:07:34,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:07:34,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:07:34,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:07:34,235.235 INFO    ] time= 19/06/2026 09:07:34
[2026-06-19 09:07:34,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:07:34,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:07:34,361.361 INFO    ] No existing commands found in stream
[2026-06-19 09:07:39,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:07:39,379.379 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 09:07:42,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:07:42,274.274 INFO    ] Checking for system updates...
[2026-06-19 09:07:42,310.310 INFO    ] 200
[2026-06-19 09:07:42,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:42,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:07:42,373.373 INFO    ] No update needed
[2026-06-19 09:07:42,376.376 INFO    ] Checking for camera pi updates...
[2026-06-19 09:07:42,410.410 INFO    ] 200
[2026-06-19 09:07:42,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:42,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:07:42,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:07:42,499.499 INFO    ] No camera update needed
[2026-06-19 09:07:42,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:07:42,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:07:42,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:07:42,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:07:44,557.557 INFO    ] ================================================
[2026-06-19 09:07:44,572.572 INFO    ] Launching Daemon at Fri Jun 19 09:07:44 IST 2026
[2026-06-19 09:07:44,583.583 INFO    ] ================================================
[2026-06-19 09:07:45,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:07:45
[2026-06-19 09:07:45,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:07:45,995.995 INFO    ] Initializing speech engine...
[2026-06-19 09:07:46,007.007 INFO    ] 2026-06-19 09:07:45
[2026-06-19 09:07:46,288.288 INFO    ] 2026-06-19 09:07:46
[2026-06-19 09:07:46,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:07:46,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:07:46,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:07:46,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:07:46,653.653 INFO    ] time= 19/06/2026 09:07:46
[2026-06-19 09:07:46,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:07:46,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:07:46,774.774 INFO    ] No existing commands found in stream
[2026-06-19 09:07:51,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:07:51,789.789 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 09:07:55,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:07:55,545.545 INFO    ] Checking for system updates...
[2026-06-19 09:07:55,584.584 INFO    ] 200
[2026-06-19 09:07:55,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:55,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:07:55,645.645 INFO    ] No update needed
[2026-06-19 09:07:55,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 09:07:55,682.682 INFO    ] 200
[2026-06-19 09:07:55,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:07:55,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:07:55,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:07:55,779.779 INFO    ] No camera update needed
[2026-06-19 09:07:55,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:07:55,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:07:55,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:07:55,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:07:57,836.836 INFO    ] ================================================
[2026-06-19 09:07:57,866.866 INFO    ] Launching Daemon at Fri Jun 19 09:07:57 IST 2026
[2026-06-19 09:07:57,894.894 INFO    ] ================================================
[2026-06-19 09:07:58,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:07:58
[2026-06-19 09:07:59,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:07:59,447.447 INFO    ] Initializing speech engine...
[2026-06-19 09:07:59,455.455 INFO    ] 2026-06-19 09:07:59
[2026-06-19 09:07:59,729.729 INFO    ] 2026-06-19 09:07:59
[2026-06-19 09:07:59,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:08:00,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:08:00,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:08:00,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:08:00,201.201 INFO    ] time= 19/06/2026 09:08:00
[2026-06-19 09:08:00,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:08:00,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:08:00,357.357 INFO    ] No existing commands found in stream
[2026-06-19 09:08:05,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:08:05,375.375 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 09:08:06,090.090 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:08:06,093.093 INFO    ] Checking for system updates...
[2026-06-19 09:08:06,130.130 INFO    ] 200
[2026-06-19 09:08:06,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:06,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:08:06,188.188 INFO    ] No update needed
[2026-06-19 09:08:06,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 09:08:06,227.227 INFO    ] 200
[2026-06-19 09:08:06,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:06,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:08:06,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:08:06,331.331 INFO    ] No camera update needed
[2026-06-19 09:08:06,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:08:06,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:08:06,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:08:06,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:08:08,389.389 INFO    ] ================================================
[2026-06-19 09:08:08,404.404 INFO    ] Launching Daemon at Fri Jun 19 09:08:08 IST 2026
[2026-06-19 09:08:08,415.415 INFO    ] ================================================
[2026-06-19 09:08:08,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:08:08
[2026-06-19 09:08:09,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:08:09,826.826 INFO    ] Initializing speech engine...
[2026-06-19 09:08:09,838.838 INFO    ] 2026-06-19 09:08:09
[2026-06-19 09:08:10,102.102 INFO    ] 2026-06-19 09:08:10
[2026-06-19 09:08:10,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:08:10,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:08:10,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:08:10,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:08:10,586.586 INFO    ] time= 19/06/2026 09:08:10
[2026-06-19 09:08:10,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:08:10,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:08:10,722.722 INFO    ] No existing commands found in stream
[2026-06-19 09:08:15,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:08:15,737.737 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 09:08:19,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:08:19,716.716 INFO    ] Checking for system updates...
[2026-06-19 09:08:19,754.754 INFO    ] 200
[2026-06-19 09:08:19,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:19,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:08:19,816.816 INFO    ] No update needed
[2026-06-19 09:08:19,819.819 INFO    ] Checking for camera pi updates...
[2026-06-19 09:08:19,852.852 INFO    ] 200
[2026-06-19 09:08:19,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:19,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:08:19,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:08:19,944.944 INFO    ] No camera update needed
[2026-06-19 09:08:19,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:08:19,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:08:19,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:08:19,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:08:22,000.000 INFO    ] ================================================
[2026-06-19 09:08:22,015.015 INFO    ] Launching Daemon at Fri Jun 19 09:08:22 IST 2026
[2026-06-19 09:08:22,025.025 INFO    ] ================================================
[2026-06-19 09:08:22,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:08:22
[2026-06-19 09:08:23,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:08:23,480.480 INFO    ] Initializing speech engine...
[2026-06-19 09:08:23,489.489 INFO    ] 2026-06-19 09:08:23
[2026-06-19 09:08:23,747.747 INFO    ] 2026-06-19 09:08:23
[2026-06-19 09:08:23,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:08:24,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:08:24,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:08:24,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:08:24,226.226 INFO    ] time= 19/06/2026 09:08:24
[2026-06-19 09:08:24,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:08:24,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:08:24,356.356 INFO    ] No existing commands found in stream
[2026-06-19 09:08:29,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:08:29,370.370 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 09:08:30,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:08:30,844.844 INFO    ] Checking for system updates...
[2026-06-19 09:08:30,879.879 INFO    ] 200
[2026-06-19 09:08:30,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:30,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:08:30,937.937 INFO    ] No update needed
[2026-06-19 09:08:30,939.939 INFO    ] Checking for camera pi updates...
[2026-06-19 09:08:30,972.972 INFO    ] 200
[2026-06-19 09:08:30,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:31,019.019 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:08:31,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:08:31,176.176 INFO    ] No camera update needed
[2026-06-19 09:08:31,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:08:31,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:08:31,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:08:31,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:08:33,231.231 INFO    ] ================================================
[2026-06-19 09:08:33,246.246 INFO    ] Launching Daemon at Fri Jun 19 09:08:33 IST 2026
[2026-06-19 09:08:33,256.256 INFO    ] ================================================
[2026-06-19 09:08:33,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:08:33
[2026-06-19 09:08:34,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:08:34,822.822 INFO    ] Initializing speech engine...
[2026-06-19 09:08:34,831.831 INFO    ] 2026-06-19 09:08:34
[2026-06-19 09:08:35,097.097 INFO    ] 2026-06-19 09:08:35
[2026-06-19 09:08:35,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:08:35,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:08:35,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:08:35,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:08:35,580.580 INFO    ] time= 19/06/2026 09:08:35
[2026-06-19 09:08:35,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:08:35,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:08:35,769.769 INFO    ] No existing commands found in stream
[2026-06-19 09:08:40,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:08:40,803.803 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 09:08:43,274.274 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:08:43,277.277 INFO    ] Checking for system updates...
[2026-06-19 09:08:43,313.313 INFO    ] 200
[2026-06-19 09:08:43,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:43,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:08:43,373.373 INFO    ] No update needed
[2026-06-19 09:08:43,376.376 INFO    ] Checking for camera pi updates...
[2026-06-19 09:08:43,410.410 INFO    ] 200
[2026-06-19 09:08:43,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:43,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:08:43,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:08:43,512.512 INFO    ] No camera update needed
[2026-06-19 09:08:43,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:08:43,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:08:43,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:08:43,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:08:45,576.576 INFO    ] ================================================
[2026-06-19 09:08:45,591.591 INFO    ] Launching Daemon at Fri Jun 19 09:08:45 IST 2026
[2026-06-19 09:08:45,601.601 INFO    ] ================================================
[2026-06-19 09:08:46,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:08:46
[2026-06-19 09:08:46,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:08:47,044.044 INFO    ] Initializing speech engine...
[2026-06-19 09:08:47,064.064 INFO    ] 2026-06-19 09:08:47
[2026-06-19 09:08:47,338.338 INFO    ] 2026-06-19 09:08:47
[2026-06-19 09:08:47,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:08:47,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:08:47,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:08:47,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:08:47,749.749 INFO    ] time= 19/06/2026 09:08:47
[2026-06-19 09:08:47,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:08:47,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:08:47,925.925 INFO    ] No existing commands found in stream
[2026-06-19 09:08:52,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:08:52,958.958 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 09:08:56,211.211 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:08:56,214.214 INFO    ] Checking for system updates...
[2026-06-19 09:08:56,254.254 INFO    ] 200
[2026-06-19 09:08:56,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:56,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:08:56,312.312 INFO    ] No update needed
[2026-06-19 09:08:56,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 09:08:56,352.352 INFO    ] 200
[2026-06-19 09:08:56,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:08:56,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:08:56,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:08:56,442.442 INFO    ] No camera update needed
[2026-06-19 09:08:56,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:08:56,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:08:56,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:08:56,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:08:58,497.497 INFO    ] ================================================
[2026-06-19 09:08:58,513.513 INFO    ] Launching Daemon at Fri Jun 19 09:08:58 IST 2026
[2026-06-19 09:08:58,524.524 INFO    ] ================================================
[2026-06-19 09:08:59,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:08:59
[2026-06-19 09:08:59,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:09:00,115.115 INFO    ] Initializing speech engine...
[2026-06-19 09:09:00,129.129 INFO    ] 2026-06-19 09:09:00
[2026-06-19 09:09:00,390.390 INFO    ] 2026-06-19 09:09:00
[2026-06-19 09:09:00,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:09:00,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:09:00,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:09:00,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:09:00,920.920 INFO    ] time= 19/06/2026 09:09:00
[2026-06-19 09:09:00,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:09:00,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:09:01,077.077 INFO    ] No existing commands found in stream
[2026-06-19 09:09:06,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:09:06,101.101 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 09:09:09,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:09:09,292.292 INFO    ] Checking for system updates...
[2026-06-19 09:09:09,331.331 INFO    ] 200
[2026-06-19 09:09:09,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:09:09,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:09:09,390.390 INFO    ] No update needed
[2026-06-19 09:09:09,393.393 INFO    ] Checking for camera pi updates...
[2026-06-19 09:09:09,426.426 INFO    ] 200
[2026-06-19 09:09:09,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:09:09,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:09:09,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:09:09,512.512 INFO    ] No camera update needed
[2026-06-19 09:09:09,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:09:09,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:09:09,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:09:09,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:09:11,568.568 INFO    ] ================================================
[2026-06-19 09:09:11,584.584 INFO    ] Launching Daemon at Fri Jun 19 09:09:11 IST 2026
[2026-06-19 09:09:11,596.596 INFO    ] ================================================
[2026-06-19 09:09:12,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:09:12
[2026-06-19 09:09:12,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:09:13,246.246 INFO    ] Initializing speech engine...
[2026-06-19 09:09:13,261.261 INFO    ] 2026-06-19 09:09:13
[2026-06-19 09:09:13,545.545 INFO    ] 2026-06-19 09:09:13
[2026-06-19 09:09:13,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:09:13,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:09:13,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:09:13,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:09:14,018.018 INFO    ] time= 19/06/2026 09:09:13
[2026-06-19 09:09:14,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:09:14,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:09:14,172.172 INFO    ] No existing commands found in stream
[2026-06-19 09:09:19,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:09:19,196.196 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 09:09:22,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:09:22,019.019 INFO    ] Checking for system updates...
[2026-06-19 09:09:22,056.056 INFO    ] 200
[2026-06-19 09:09:22,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:09:22,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:09:22,121.121 INFO    ] No update needed
[2026-06-19 09:09:22,124.124 INFO    ] Checking for camera pi updates...
[2026-06-19 09:09:22,157.157 INFO    ] 200
[2026-06-19 09:09:22,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:09:22,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:09:22,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:09:22,247.247 INFO    ] No camera update needed
[2026-06-19 09:09:22,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:09:22,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:09:22,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:09:22,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:09:24,303.303 INFO    ] ================================================
[2026-06-19 09:09:24,320.320 INFO    ] Launching Daemon at Fri Jun 19 09:09:24 IST 2026
[2026-06-19 09:09:24,331.331 INFO    ] ================================================
[2026-06-19 09:09:24,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:09:24
[2026-06-19 09:09:25,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:09:25,735.735 INFO    ] Initializing speech engine...
[2026-06-19 09:09:25,750.750 INFO    ] 2026-06-19 09:09:25
[2026-06-19 09:09:26,014.014 INFO    ] 2026-06-19 09:09:26
[2026-06-19 09:09:26,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:09:26,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:09:26,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:09:26,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:09:26,374.374 INFO    ] time= 19/06/2026 09:09:26
[2026-06-19 09:09:26,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:09:26,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:09:26,474.474 INFO    ] No existing commands found in stream
[2026-06-19 09:09:31,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:09:31,492.492 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 09:09:35,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:09:35,166.166 INFO    ] Checking for system updates...
[2026-06-19 09:09:35,202.202 INFO    ] 200
[2026-06-19 09:09:35,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:09:35,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:09:35,262.262 INFO    ] No update needed
[2026-06-19 09:09:35,264.264 INFO    ] Checking for camera pi updates...
[2026-06-19 09:09:35,302.302 INFO    ] 200
[2026-06-19 09:09:35,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:09:35,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:09:35,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:09:35,380.380 INFO    ] No camera update needed
[2026-06-19 09:09:35,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:09:35,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:09:35,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:09:35,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:09:37,434.434 INFO    ] ================================================
[2026-06-19 09:09:37,450.450 INFO    ] Launching Daemon at Fri Jun 19 09:09:37 IST 2026
[2026-06-19 09:09:37,461.461 INFO    ] ================================================
[2026-06-19 09:09:38,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:09:38
[2026-06-19 09:09:38,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:09:38,926.926 INFO    ] Initializing speech engine...
[2026-06-19 09:09:38,933.933 INFO    ] 2026-06-19 09:09:38
[2026-06-19 09:09:39,210.210 INFO    ] 2026-06-19 09:09:39
[2026-06-19 09:09:39,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:09:39,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:09:39,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:09:39,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:09:39,673.673 INFO    ] time= 19/06/2026 09:09:39
[2026-06-19 09:09:39,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:09:39,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:09:39,810.810 INFO    ] No existing commands found in stream
[2026-06-19 09:09:44,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:09:44,839.839 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 09:09:47,739.739 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:09:47,742.742 INFO    ] Checking for system updates...
[2026-06-19 09:09:47,778.778 INFO    ] 200
[2026-06-19 09:09:47,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:09:47,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:09:47,841.841 INFO    ] No update needed
[2026-06-19 09:09:47,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 09:09:47,878.878 INFO    ] 200
[2026-06-19 09:09:47,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:09:47,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:09:47,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:09:47,953.953 INFO    ] No camera update needed
[2026-06-19 09:09:47,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:09:47,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:09:47,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:09:47,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:09:50,010.010 INFO    ] ================================================
[2026-06-19 09:09:50,025.025 INFO    ] Launching Daemon at Fri Jun 19 09:09:50 IST 2026
[2026-06-19 09:09:50,036.036 INFO    ] ================================================
[2026-06-19 09:09:50,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:09:50
[2026-06-19 09:09:51,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:09:51,672.672 INFO    ] Initializing speech engine...
[2026-06-19 09:09:51,679.679 INFO    ] 2026-06-19 09:09:51
[2026-06-19 09:09:51,956.956 INFO    ] 2026-06-19 09:09:51
[2026-06-19 09:09:52,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:09:52,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:09:52,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:09:52,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:09:52,441.441 INFO    ] time= 19/06/2026 09:09:52
[2026-06-19 09:09:52,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:09:52,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:09:52,592.592 INFO    ] No existing commands found in stream
[2026-06-19 09:09:57,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:09:57,608.608 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 09:10:00,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:10:00,945.945 INFO    ] Checking for system updates...
[2026-06-19 09:10:00,981.981 INFO    ] 200
[2026-06-19 09:10:00,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:01,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:10:01,046.046 INFO    ] No update needed
[2026-06-19 09:10:01,048.048 INFO    ] Checking for camera pi updates...
[2026-06-19 09:10:01,086.086 INFO    ] 200
[2026-06-19 09:10:01,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:01,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:10:01,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:10:01,189.189 INFO    ] No camera update needed
[2026-06-19 09:10:01,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:10:01,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:10:01,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:10:01,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:10:03,284.284 INFO    ] ================================================
[2026-06-19 09:10:03,315.315 INFO    ] Launching Daemon at Fri Jun 19 09:10:03 IST 2026
[2026-06-19 09:10:03,368.368 INFO    ] ================================================
[2026-06-19 09:10:04,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:10:04
[2026-06-19 09:10:04,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:10:05,007.007 INFO    ] Initializing speech engine...
[2026-06-19 09:10:05,017.017 INFO    ] 2026-06-19 09:10:05
[2026-06-19 09:10:05,283.283 INFO    ] 2026-06-19 09:10:05
[2026-06-19 09:10:05,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:10:05,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:10:05,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:10:05,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:10:05,730.730 INFO    ] time= 19/06/2026 09:10:05
[2026-06-19 09:10:05,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:10:05,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:10:05,849.849 INFO    ] No existing commands found in stream
[2026-06-19 09:10:10,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:10:10,882.882 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 09:10:12,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:10:12,046.046 INFO    ] Checking for system updates...
[2026-06-19 09:10:12,082.082 INFO    ] 200
[2026-06-19 09:10:12,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:12,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:10:12,147.147 INFO    ] No update needed
[2026-06-19 09:10:12,149.149 INFO    ] Checking for camera pi updates...
[2026-06-19 09:10:12,185.185 INFO    ] 200
[2026-06-19 09:10:12,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:12,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:10:12,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:10:12,273.273 INFO    ] No camera update needed
[2026-06-19 09:10:12,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:10:12,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:10:12,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:10:12,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:10:14,330.330 INFO    ] ================================================
[2026-06-19 09:10:14,346.346 INFO    ] Launching Daemon at Fri Jun 19 09:10:14 IST 2026
[2026-06-19 09:10:14,356.356 INFO    ] ================================================
[2026-06-19 09:10:14,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:10:14
[2026-06-19 09:10:15,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:10:15,806.806 INFO    ] Initializing speech engine...
[2026-06-19 09:10:15,827.827 INFO    ] 2026-06-19 09:10:15
[2026-06-19 09:10:16,108.108 INFO    ] 2026-06-19 09:10:16
[2026-06-19 09:10:16,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:10:16,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:10:16,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:10:16,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:10:16,490.490 INFO    ] time= 19/06/2026 09:10:16
[2026-06-19 09:10:16,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:10:16,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:10:16,616.616 INFO    ] No existing commands found in stream
[2026-06-19 09:10:21,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:10:21,629.629 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 09:10:25,953.953 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:10:25,956.956 INFO    ] Checking for system updates...
[2026-06-19 09:10:25,993.993 INFO    ] 200
[2026-06-19 09:10:25,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:26,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:10:26,057.057 INFO    ] No update needed
[2026-06-19 09:10:26,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 09:10:26,096.096 INFO    ] 200
[2026-06-19 09:10:26,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:26,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:10:26,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:10:26,191.191 INFO    ] No camera update needed
[2026-06-19 09:10:26,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:10:26,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:10:26,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:10:26,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:10:28,248.248 INFO    ] ================================================
[2026-06-19 09:10:28,263.263 INFO    ] Launching Daemon at Fri Jun 19 09:10:28 IST 2026
[2026-06-19 09:10:28,273.273 INFO    ] ================================================
[2026-06-19 09:10:28,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:10:28
[2026-06-19 09:10:29,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:10:29,722.722 INFO    ] Initializing speech engine...
[2026-06-19 09:10:29,728.728 INFO    ] 2026-06-19 09:10:29
[2026-06-19 09:10:29,977.977 INFO    ] 2026-06-19 09:10:29
[2026-06-19 09:10:30,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:10:30,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:10:30,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:10:30,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:10:30,355.355 INFO    ] time= 19/06/2026 09:10:30
[2026-06-19 09:10:30,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:10:30,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:10:30,532.532 INFO    ] No existing commands found in stream
[2026-06-19 09:10:35,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:10:35,555.555 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 09:10:39,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:10:39,879.879 INFO    ] Checking for system updates...
[2026-06-19 09:10:39,919.919 INFO    ] 200
[2026-06-19 09:10:39,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:39,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:10:39,979.979 INFO    ] No update needed
[2026-06-19 09:10:39,982.982 INFO    ] Checking for camera pi updates...
[2026-06-19 09:10:40,017.017 INFO    ] 200
[2026-06-19 09:10:40,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:40,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:10:40,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:10:40,213.213 INFO    ] No camera update needed
[2026-06-19 09:10:40,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:10:40,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:10:40,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:10:40,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:10:42,271.271 INFO    ] ================================================
[2026-06-19 09:10:42,287.287 INFO    ] Launching Daemon at Fri Jun 19 09:10:42 IST 2026
[2026-06-19 09:10:42,297.297 INFO    ] ================================================
[2026-06-19 09:10:42,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:10:42
[2026-06-19 09:10:43,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:10:43,742.742 INFO    ] Initializing speech engine...
[2026-06-19 09:10:43,753.753 INFO    ] 2026-06-19 09:10:43
[2026-06-19 09:10:44,026.026 INFO    ] 2026-06-19 09:10:44
[2026-06-19 09:10:44,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:10:44,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:10:44,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:10:44,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:10:44,469.469 INFO    ] time= 19/06/2026 09:10:44
[2026-06-19 09:10:44,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:10:44,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:10:44,626.626 INFO    ] No existing commands found in stream
[2026-06-19 09:10:49,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:10:49,661.661 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 09:10:52,862.862 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:10:52,865.865 INFO    ] Checking for system updates...
[2026-06-19 09:10:52,901.901 INFO    ] 200
[2026-06-19 09:10:52,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:52,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:10:52,958.958 INFO    ] No update needed
[2026-06-19 09:10:52,960.960 INFO    ] Checking for camera pi updates...
[2026-06-19 09:10:52,994.994 INFO    ] 200
[2026-06-19 09:10:52,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:10:53,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:10:53,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:10:53,086.086 INFO    ] No camera update needed
[2026-06-19 09:10:53,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:10:53,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:10:53,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:10:53,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:10:55,143.143 INFO    ] ================================================
[2026-06-19 09:10:55,158.158 INFO    ] Launching Daemon at Fri Jun 19 09:10:55 IST 2026
[2026-06-19 09:10:55,169.169 INFO    ] ================================================
[2026-06-19 09:10:55,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:10:55
[2026-06-19 09:10:56,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:10:56,626.626 INFO    ] Initializing speech engine...
[2026-06-19 09:10:56,631.631 INFO    ] 2026-06-19 09:10:56
[2026-06-19 09:10:56,879.879 INFO    ] 2026-06-19 09:10:56
[2026-06-19 09:10:56,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:10:57,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:10:57,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:10:57,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:10:57,250.250 INFO    ] time= 19/06/2026 09:10:57
[2026-06-19 09:10:57,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:10:57,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:10:57,430.430 INFO    ] No existing commands found in stream
[2026-06-19 09:11:02,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:11:02,460.460 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 09:11:04,449.449 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:11:04,452.452 INFO    ] Checking for system updates...
[2026-06-19 09:11:04,491.491 INFO    ] 200
[2026-06-19 09:11:04,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:04,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:11:04,556.556 INFO    ] No update needed
[2026-06-19 09:11:04,558.558 INFO    ] Checking for camera pi updates...
[2026-06-19 09:11:04,595.595 INFO    ] 200
[2026-06-19 09:11:04,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:04,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:11:04,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:11:04,687.687 INFO    ] No camera update needed
[2026-06-19 09:11:04,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:11:04,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:11:04,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:11:04,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:11:06,744.744 INFO    ] ================================================
[2026-06-19 09:11:06,760.760 INFO    ] Launching Daemon at Fri Jun 19 09:11:06 IST 2026
[2026-06-19 09:11:06,771.771 INFO    ] ================================================
[2026-06-19 09:11:07,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:11:07
[2026-06-19 09:11:08,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:11:08,404.404 INFO    ] Initializing speech engine...
[2026-06-19 09:11:08,412.412 INFO    ] 2026-06-19 09:11:08
[2026-06-19 09:11:08,700.700 INFO    ] 2026-06-19 09:11:08
[2026-06-19 09:11:08,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:11:08,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:11:08,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:11:09,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:11:09,187.187 INFO    ] time= 19/06/2026 09:11:09
[2026-06-19 09:11:09,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:11:09,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:11:09,379.379 INFO    ] No existing commands found in stream
[2026-06-19 09:11:14,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:11:14,410.410 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 09:11:18,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:11:18,625.625 INFO    ] Checking for system updates...
[2026-06-19 09:11:18,668.668 INFO    ] 200
[2026-06-19 09:11:18,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:18,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:11:18,733.733 INFO    ] No update needed
[2026-06-19 09:11:18,737.737 INFO    ] Checking for camera pi updates...
[2026-06-19 09:11:18,773.773 INFO    ] 200
[2026-06-19 09:11:18,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:18,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:11:18,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:11:18,862.862 INFO    ] No camera update needed
[2026-06-19 09:11:18,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:11:18,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:11:18,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:11:18,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:11:20,921.921 INFO    ] ================================================
[2026-06-19 09:11:20,937.937 INFO    ] Launching Daemon at Fri Jun 19 09:11:20 IST 2026
[2026-06-19 09:11:20,947.947 INFO    ] ================================================
[2026-06-19 09:11:21,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:11:21
[2026-06-19 09:11:22,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:11:22,404.404 INFO    ] Initializing speech engine...
[2026-06-19 09:11:22,413.413 INFO    ] 2026-06-19 09:11:22
[2026-06-19 09:11:22,710.710 INFO    ] 2026-06-19 09:11:22
[2026-06-19 09:11:22,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:11:22,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:11:22,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:11:23,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:11:23,134.134 INFO    ] time= 19/06/2026 09:11:23
[2026-06-19 09:11:23,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:11:23,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:11:23,219.219 INFO    ] No existing commands found in stream
[2026-06-19 09:11:28,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:11:28,234.234 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 09:11:32,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:11:32,586.586 INFO    ] Checking for system updates...
[2026-06-19 09:11:32,627.627 INFO    ] 200
[2026-06-19 09:11:32,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:32,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:11:32,689.689 INFO    ] No update needed
[2026-06-19 09:11:32,691.691 INFO    ] Checking for camera pi updates...
[2026-06-19 09:11:32,729.729 INFO    ] 200
[2026-06-19 09:11:32,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:32,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:11:32,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:11:32,804.804 INFO    ] No camera update needed
[2026-06-19 09:11:32,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:11:32,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:11:32,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:11:32,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:11:34,862.862 INFO    ] ================================================
[2026-06-19 09:11:34,877.877 INFO    ] Launching Daemon at Fri Jun 19 09:11:34 IST 2026
[2026-06-19 09:11:34,888.888 INFO    ] ================================================
[2026-06-19 09:11:35,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:11:35
[2026-06-19 09:11:36,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:11:36,337.337 INFO    ] Initializing speech engine...
[2026-06-19 09:11:36,346.346 INFO    ] 2026-06-19 09:11:36
[2026-06-19 09:11:36,612.612 INFO    ] 2026-06-19 09:11:36
[2026-06-19 09:11:36,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:11:36,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:11:36,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:11:37,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:11:37,130.130 INFO    ] time= 19/06/2026 09:11:37
[2026-06-19 09:11:37,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:11:37,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:11:37,301.301 INFO    ] No existing commands found in stream
[2026-06-19 09:11:42,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:11:42,329.329 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 09:11:42,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:11:42,984.984 INFO    ] Checking for system updates...
[2026-06-19 09:11:43,020.020 INFO    ] 200
[2026-06-19 09:11:43,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:43,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:11:43,084.084 INFO    ] No update needed
[2026-06-19 09:11:43,086.086 INFO    ] Checking for camera pi updates...
[2026-06-19 09:11:43,124.124 INFO    ] 200
[2026-06-19 09:11:43,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:43,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:11:43,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:11:43,214.214 INFO    ] No camera update needed
[2026-06-19 09:11:43,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:11:43,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:11:43,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:11:43,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:11:45,273.273 INFO    ] ================================================
[2026-06-19 09:11:45,288.288 INFO    ] Launching Daemon at Fri Jun 19 09:11:45 IST 2026
[2026-06-19 09:11:45,300.300 INFO    ] ================================================
[2026-06-19 09:11:45,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:11:45
[2026-06-19 09:11:46,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:11:46,762.762 INFO    ] Initializing speech engine...
[2026-06-19 09:11:46,771.771 INFO    ] 2026-06-19 09:11:46
[2026-06-19 09:11:47,030.030 INFO    ] 2026-06-19 09:11:47
[2026-06-19 09:11:47,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:11:47,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:11:47,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:11:47,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:11:47,505.505 INFO    ] time= 19/06/2026 09:11:47
[2026-06-19 09:11:47,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:11:47,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:11:47,711.711 INFO    ] No existing commands found in stream
[2026-06-19 09:11:52,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:11:52,741.741 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 09:11:57,096.096 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:11:57,099.099 INFO    ] Checking for system updates...
[2026-06-19 09:11:57,136.136 INFO    ] 200
[2026-06-19 09:11:57,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:57,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:11:57,200.200 INFO    ] No update needed
[2026-06-19 09:11:57,203.203 INFO    ] Checking for camera pi updates...
[2026-06-19 09:11:57,239.239 INFO    ] 200
[2026-06-19 09:11:57,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:11:57,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:11:57,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:11:57,335.335 INFO    ] No camera update needed
[2026-06-19 09:11:57,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:11:57,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:11:57,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:11:57,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:11:59,397.397 INFO    ] ================================================
[2026-06-19 09:11:59,413.413 INFO    ] Launching Daemon at Fri Jun 19 09:11:59 IST 2026
[2026-06-19 09:11:59,424.424 INFO    ] ================================================
[2026-06-19 09:12:00,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:12:00
[2026-06-19 09:12:00,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:12:00,886.886 INFO    ] Initializing speech engine...
[2026-06-19 09:12:00,893.893 INFO    ] 2026-06-19 09:12:00
[2026-06-19 09:12:01,159.159 INFO    ] 2026-06-19 09:12:01
[2026-06-19 09:12:01,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:12:01,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:12:01,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:12:01,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:12:01,628.628 INFO    ] time= 19/06/2026 09:12:01
[2026-06-19 09:12:01,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:12:01,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:12:01,699.699 INFO    ] No existing commands found in stream
[2026-06-19 09:12:06,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:12:06,712.712 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 09:12:10,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:12:10,787.787 INFO    ] Checking for system updates...
[2026-06-19 09:12:10,824.824 INFO    ] 200
[2026-06-19 09:12:10,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:10,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:12:10,888.888 INFO    ] No update needed
[2026-06-19 09:12:10,891.891 INFO    ] Checking for camera pi updates...
[2026-06-19 09:12:10,924.924 INFO    ] 200
[2026-06-19 09:12:10,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:10,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:12:11,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:12:11,009.009 INFO    ] No camera update needed
[2026-06-19 09:12:11,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:12:11,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:12:11,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:12:11,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:12:13,066.066 INFO    ] ================================================
[2026-06-19 09:12:13,082.082 INFO    ] Launching Daemon at Fri Jun 19 09:12:13 IST 2026
[2026-06-19 09:12:13,094.094 INFO    ] ================================================
[2026-06-19 09:12:13,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:12:13
[2026-06-19 09:12:14,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:12:14,711.711 INFO    ] Initializing speech engine...
[2026-06-19 09:12:14,723.723 INFO    ] 2026-06-19 09:12:14
[2026-06-19 09:12:15,002.002 INFO    ] 2026-06-19 09:12:14
[2026-06-19 09:12:15,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:12:15,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:12:15,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:12:15,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:12:15,473.473 INFO    ] time= 19/06/2026 09:12:15
[2026-06-19 09:12:15,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:12:15,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:12:15,684.684 INFO    ] No existing commands found in stream
[2026-06-19 09:12:20,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:12:20,719.719 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 09:12:23,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:12:23,871.871 INFO    ] Checking for system updates...
[2026-06-19 09:12:23,912.912 INFO    ] 200
[2026-06-19 09:12:23,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:23,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:12:23,991.991 INFO    ] No update needed
[2026-06-19 09:12:23,994.994 INFO    ] Checking for camera pi updates...
[2026-06-19 09:12:24,037.037 INFO    ] 200
[2026-06-19 09:12:24,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:24,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:12:24,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:12:24,136.136 INFO    ] No camera update needed
[2026-06-19 09:12:24,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:12:24,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:12:24,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:12:24,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:12:26,196.196 INFO    ] ================================================
[2026-06-19 09:12:26,212.212 INFO    ] Launching Daemon at Fri Jun 19 09:12:26 IST 2026
[2026-06-19 09:12:26,223.223 INFO    ] ================================================
[2026-06-19 09:12:26,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:12:26
[2026-06-19 09:12:27,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:12:27,691.691 INFO    ] Initializing speech engine...
[2026-06-19 09:12:27,698.698 INFO    ] 2026-06-19 09:12:27
[2026-06-19 09:12:27,958.958 INFO    ] 2026-06-19 09:12:27
[2026-06-19 09:12:27,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:12:28,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:12:28,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:12:28,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:12:28,446.446 INFO    ] time= 19/06/2026 09:12:28
[2026-06-19 09:12:28,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:12:28,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:12:28,574.574 INFO    ] No existing commands found in stream
[2026-06-19 09:12:33,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:12:33,591.591 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 09:12:34,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:12:34,728.728 INFO    ] Checking for system updates...
[2026-06-19 09:12:34,765.765 INFO    ] 200
[2026-06-19 09:12:34,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:34,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:12:34,828.828 INFO    ] No update needed
[2026-06-19 09:12:34,831.831 INFO    ] Checking for camera pi updates...
[2026-06-19 09:12:34,869.869 INFO    ] 200
[2026-06-19 09:12:34,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:34,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:12:34,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:12:34,963.963 INFO    ] No camera update needed
[2026-06-19 09:12:34,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:12:34,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:12:34,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:12:34,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:12:37,023.023 INFO    ] ================================================
[2026-06-19 09:12:37,039.039 INFO    ] Launching Daemon at Fri Jun 19 09:12:37 IST 2026
[2026-06-19 09:12:37,050.050 INFO    ] ================================================
[2026-06-19 09:12:37,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:12:37
[2026-06-19 09:12:38,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:12:38,459.459 INFO    ] Initializing speech engine...
[2026-06-19 09:12:38,466.466 INFO    ] 2026-06-19 09:12:38
[2026-06-19 09:12:38,758.758 INFO    ] 2026-06-19 09:12:38
[2026-06-19 09:12:38,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:12:38,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:12:39,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:12:39,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:12:39,181.181 INFO    ] time= 19/06/2026 09:12:39
[2026-06-19 09:12:39,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:12:39,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:12:39,366.366 INFO    ] No existing commands found in stream
[2026-06-19 09:12:44,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:12:44,394.394 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 09:12:46,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:12:46,308.308 INFO    ] Checking for system updates...
[2026-06-19 09:12:46,347.347 INFO    ] 200
[2026-06-19 09:12:46,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:46,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:12:46,404.404 INFO    ] No update needed
[2026-06-19 09:12:46,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 09:12:46,444.444 INFO    ] 200
[2026-06-19 09:12:46,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:46,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:12:46,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:12:46,619.619 INFO    ] No camera update needed
[2026-06-19 09:12:46,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:12:46,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:12:46,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:12:46,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:12:48,676.676 INFO    ] ================================================
[2026-06-19 09:12:48,692.692 INFO    ] Launching Daemon at Fri Jun 19 09:12:48 IST 2026
[2026-06-19 09:12:48,703.703 INFO    ] ================================================
[2026-06-19 09:12:49,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:12:49
[2026-06-19 09:12:49,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:12:50,162.162 INFO    ] Initializing speech engine...
[2026-06-19 09:12:50,171.171 INFO    ] 2026-06-19 09:12:50
[2026-06-19 09:12:50,428.428 INFO    ] 2026-06-19 09:12:50
[2026-06-19 09:12:50,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:12:50,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:12:50,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:12:50,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:12:50,920.920 INFO    ] time= 19/06/2026 09:12:50
[2026-06-19 09:12:50,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:12:50,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:12:51,106.106 INFO    ] No existing commands found in stream
[2026-06-19 09:12:56,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:12:56,142.142 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 09:12:59,675.675 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:12:59,678.678 INFO    ] Checking for system updates...
[2026-06-19 09:12:59,718.718 INFO    ] 200
[2026-06-19 09:12:59,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:59,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:12:59,785.785 INFO    ] No update needed
[2026-06-19 09:12:59,788.788 INFO    ] Checking for camera pi updates...
[2026-06-19 09:12:59,822.822 INFO    ] 200
[2026-06-19 09:12:59,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:12:59,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:12:59,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:12:59,916.916 INFO    ] No camera update needed
[2026-06-19 09:12:59,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:12:59,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:12:59,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:12:59,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:13:01,977.977 INFO    ] ================================================
[2026-06-19 09:13:02,995.995 INFO    ] Launching Daemon at Fri Jun 19 09:13:01 IST 2026
[2026-06-19 09:13:02,007.007 INFO    ] ================================================
[2026-06-19 09:13:02,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:13:02
[2026-06-19 09:13:03,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:13:03,656.656 INFO    ] Initializing speech engine...
[2026-06-19 09:13:03,666.666 INFO    ] 2026-06-19 09:13:03
[2026-06-19 09:13:03,950.950 INFO    ] 2026-06-19 09:13:03
[2026-06-19 09:13:03,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:13:04,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:13:04,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:13:04,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:13:04,436.436 INFO    ] time= 19/06/2026 09:13:04
[2026-06-19 09:13:04,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:13:04,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:13:04,648.648 INFO    ] No existing commands found in stream
[2026-06-19 09:13:09,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:13:09,669.669 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 09:13:12,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:13:12,464.464 INFO    ] Checking for system updates...
[2026-06-19 09:13:12,500.500 INFO    ] 200
[2026-06-19 09:13:12,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:12,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:13:12,559.559 INFO    ] No update needed
[2026-06-19 09:13:12,562.562 INFO    ] Checking for camera pi updates...
[2026-06-19 09:13:12,596.596 INFO    ] 200
[2026-06-19 09:13:12,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:12,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:13:12,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:13:12,683.683 INFO    ] No camera update needed
[2026-06-19 09:13:12,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:13:12,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:13:12,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:13:12,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:13:14,738.738 INFO    ] ================================================
[2026-06-19 09:13:14,753.753 INFO    ] Launching Daemon at Fri Jun 19 09:13:14 IST 2026
[2026-06-19 09:13:14,765.765 INFO    ] ================================================
[2026-06-19 09:13:15,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:13:15
[2026-06-19 09:13:16,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:13:16,380.380 INFO    ] Initializing speech engine...
[2026-06-19 09:13:16,391.391 INFO    ] 2026-06-19 09:13:16
[2026-06-19 09:13:16,672.672 INFO    ] 2026-06-19 09:13:16
[2026-06-19 09:13:16,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:13:16,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:13:16,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:13:17,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:13:17,131.131 INFO    ] time= 19/06/2026 09:13:17
[2026-06-19 09:13:17,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:13:17,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:13:17,293.293 INFO    ] No existing commands found in stream
[2026-06-19 09:13:22,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:13:22,312.312 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 09:13:23,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:13:23,295.295 INFO    ] Checking for system updates...
[2026-06-19 09:13:23,332.332 INFO    ] 200
[2026-06-19 09:13:23,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:23,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:13:23,391.391 INFO    ] No update needed
[2026-06-19 09:13:23,393.393 INFO    ] Checking for camera pi updates...
[2026-06-19 09:13:23,426.426 INFO    ] 200
[2026-06-19 09:13:23,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:23,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:13:23,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:13:23,524.524 INFO    ] No camera update needed
[2026-06-19 09:13:23,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:13:23,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:13:23,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:13:23,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:13:25,578.578 INFO    ] ================================================
[2026-06-19 09:13:25,594.594 INFO    ] Launching Daemon at Fri Jun 19 09:13:25 IST 2026
[2026-06-19 09:13:25,605.605 INFO    ] ================================================
[2026-06-19 09:13:26,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:13:26
[2026-06-19 09:13:26,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:13:27,011.011 INFO    ] Initializing speech engine...
[2026-06-19 09:13:27,034.034 INFO    ] 2026-06-19 09:13:27
[2026-06-19 09:13:27,290.290 INFO    ] 2026-06-19 09:13:27
[2026-06-19 09:13:27,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:13:27,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:13:27,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:13:27,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:13:27,784.784 INFO    ] time= 19/06/2026 09:13:27
[2026-06-19 09:13:27,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:13:27,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:13:27,962.962 INFO    ] No existing commands found in stream
[2026-06-19 09:13:32,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:13:32,997.997 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 09:13:37,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:13:37,153.153 INFO    ] Checking for system updates...
[2026-06-19 09:13:37,192.192 INFO    ] 200
[2026-06-19 09:13:37,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:37,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:13:37,250.250 INFO    ] No update needed
[2026-06-19 09:13:37,253.253 INFO    ] Checking for camera pi updates...
[2026-06-19 09:13:37,290.290 INFO    ] 200
[2026-06-19 09:13:37,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:37,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:13:37,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:13:37,382.382 INFO    ] No camera update needed
[2026-06-19 09:13:37,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:13:37,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:13:37,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:13:37,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:13:39,438.438 INFO    ] ================================================
[2026-06-19 09:13:39,454.454 INFO    ] Launching Daemon at Fri Jun 19 09:13:39 IST 2026
[2026-06-19 09:13:39,464.464 INFO    ] ================================================
[2026-06-19 09:13:40,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:13:40
[2026-06-19 09:13:40,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:13:40,900.900 INFO    ] Initializing speech engine...
[2026-06-19 09:13:40,912.912 INFO    ] 2026-06-19 09:13:40
[2026-06-19 09:13:41,163.163 INFO    ] 2026-06-19 09:13:41
[2026-06-19 09:13:41,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:13:41,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:13:41,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:13:41,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:13:41,540.540 INFO    ] time= 19/06/2026 09:13:41
[2026-06-19 09:13:41,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:13:41,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:13:41,719.719 INFO    ] No existing commands found in stream
[2026-06-19 09:13:46,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:13:46,752.752 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 09:13:47,203.203 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:13:47,206.206 INFO    ] Checking for system updates...
[2026-06-19 09:13:47,242.242 INFO    ] 200
[2026-06-19 09:13:47,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:47,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:13:47,300.300 INFO    ] No update needed
[2026-06-19 09:13:47,302.302 INFO    ] Checking for camera pi updates...
[2026-06-19 09:13:47,336.336 INFO    ] 200
[2026-06-19 09:13:47,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:47,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:13:47,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:13:47,408.408 INFO    ] No camera update needed
[2026-06-19 09:13:47,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:13:47,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:13:47,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:13:47,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:13:49,463.463 INFO    ] ================================================
[2026-06-19 09:13:49,478.478 INFO    ] Launching Daemon at Fri Jun 19 09:13:49 IST 2026
[2026-06-19 09:13:49,490.490 INFO    ] ================================================
[2026-06-19 09:13:50,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:13:50
[2026-06-19 09:13:50,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:13:50,932.932 INFO    ] Initializing speech engine...
[2026-06-19 09:13:50,948.948 INFO    ] 2026-06-19 09:13:50
[2026-06-19 09:13:51,236.236 INFO    ] 2026-06-19 09:13:51
[2026-06-19 09:13:51,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:13:51,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:13:51,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:13:51,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:13:51,613.613 INFO    ] time= 19/06/2026 09:13:51
[2026-06-19 09:13:51,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:13:51,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:13:51,737.737 INFO    ] No existing commands found in stream
[2026-06-19 09:13:56,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:13:56,751.751 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 09:13:59,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:13:59,311.311 INFO    ] Checking for system updates...
[2026-06-19 09:13:59,361.361 INFO    ] 200
[2026-06-19 09:13:59,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:59,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:13:59,419.419 INFO    ] No update needed
[2026-06-19 09:13:59,421.421 INFO    ] Checking for camera pi updates...
[2026-06-19 09:13:59,458.458 INFO    ] 200
[2026-06-19 09:13:59,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:13:59,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:13:59,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:13:59,552.552 INFO    ] No camera update needed
[2026-06-19 09:13:59,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:13:59,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:13:59,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:13:59,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:14:01,608.608 INFO    ] ================================================
[2026-06-19 09:14:01,629.629 INFO    ] Launching Daemon at Fri Jun 19 09:14:01 IST 2026
[2026-06-19 09:14:01,645.645 INFO    ] ================================================
[2026-06-19 09:14:02,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:14:02
[2026-06-19 09:14:03,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:14:03,336.336 INFO    ] Initializing speech engine...
[2026-06-19 09:14:03,344.344 INFO    ] 2026-06-19 09:14:03
[2026-06-19 09:14:03,632.632 INFO    ] 2026-06-19 09:14:03
[2026-06-19 09:14:03,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:14:03,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:14:03,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:14:04,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:14:04,101.101 INFO    ] time= 19/06/2026 09:14:04
[2026-06-19 09:14:04,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:14:04,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:14:04,250.250 INFO    ] No existing commands found in stream
[2026-06-19 09:14:09,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:14:09,266.266 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-19 09:14:11,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:14:11,774.774 INFO    ] Checking for system updates...
[2026-06-19 09:14:11,811.811 INFO    ] 200
[2026-06-19 09:14:11,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:14:11,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:14:11,874.874 INFO    ] No update needed
[2026-06-19 09:14:11,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 09:14:11,913.913 INFO    ] 200
[2026-06-19 09:14:11,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:14:11,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:14:11,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:14:11,993.993 INFO    ] No camera update needed
[2026-06-19 09:14:11,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:14:11,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:14:12,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:14:12,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:14:14,048.048 INFO    ] ================================================
[2026-06-19 09:14:14,064.064 INFO    ] Launching Daemon at Fri Jun 19 09:14:14 IST 2026
[2026-06-19 09:14:14,075.075 INFO    ] ================================================
[2026-06-19 09:14:14,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:14:14
[2026-06-19 09:14:15,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:14:15,544.544 INFO    ] Initializing speech engine...
[2026-06-19 09:14:15,551.551 INFO    ] 2026-06-19 09:14:15
[2026-06-19 09:14:15,814.814 INFO    ] 2026-06-19 09:14:15
[2026-06-19 09:14:15,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:14:16,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:14:16,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:14:16,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:14:16,238.238 INFO    ] time= 19/06/2026 09:14:16
[2026-06-19 09:14:16,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:14:16,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:14:16,482.482 INFO    ] No existing commands found in stream
[2026-06-19 09:14:21,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:14:21,512.512 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 09:14:25,568.568 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:14:25,571.571 INFO    ] Checking for system updates...
[2026-06-19 09:14:25,607.607 INFO    ] 200
[2026-06-19 09:14:25,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:14:25,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:14:25,664.664 INFO    ] No update needed
[2026-06-19 09:14:25,667.667 INFO    ] Checking for camera pi updates...
[2026-06-19 09:14:25,708.708 INFO    ] 200
[2026-06-19 09:14:25,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:14:25,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:14:25,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:14:25,819.819 INFO    ] No camera update needed
[2026-06-19 09:14:25,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:14:25,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:14:25,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:14:25,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:14:27,877.877 INFO    ] ================================================
[2026-06-19 09:14:27,892.892 INFO    ] Launching Daemon at Fri Jun 19 09:14:27 IST 2026
[2026-06-19 09:14:27,903.903 INFO    ] ================================================
[2026-06-19 09:14:28,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:14:28
[2026-06-19 09:14:29,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:14:29,386.386 INFO    ] Initializing speech engine...
[2026-06-19 09:14:29,392.392 INFO    ] 2026-06-19 09:14:29
[2026-06-19 09:14:29,662.662 INFO    ] 2026-06-19 09:14:29
[2026-06-19 09:14:29,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:14:29,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:14:29,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:14:30,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:14:30,038.038 INFO    ] time= 19/06/2026 09:14:30
[2026-06-19 09:14:30,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:14:30,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:14:30,162.162 INFO    ] No existing commands found in stream
[2026-06-19 09:14:35,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:14:35,178.178 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 09:14:38,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:14:38,615.615 INFO    ] Checking for system updates...
[2026-06-19 09:14:38,656.656 INFO    ] 200
[2026-06-19 09:14:38,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:14:38,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:14:38,717.717 INFO    ] No update needed
[2026-06-19 09:14:38,719.719 INFO    ] Checking for camera pi updates...
[2026-06-19 09:14:38,757.757 INFO    ] 200
[2026-06-19 09:14:38,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:14:38,805.805 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:14:38,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:14:38,850.850 INFO    ] No camera update needed
[2026-06-19 09:14:38,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:14:38,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:14:38,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:14:38,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:14:40,908.908 INFO    ] ================================================
[2026-06-19 09:14:40,923.923 INFO    ] Launching Daemon at Fri Jun 19 09:14:40 IST 2026
[2026-06-19 09:14:40,934.934 INFO    ] ================================================
[2026-06-19 09:14:41,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:14:41
[2026-06-19 09:14:42,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:14:42,534.534 INFO    ] Initializing speech engine...
[2026-06-19 09:14:42,542.542 INFO    ] 2026-06-19 09:14:42
[2026-06-19 09:14:42,818.818 INFO    ] 2026-06-19 09:14:42
[2026-06-19 09:14:42,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:14:43,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:14:43,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:14:43,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:14:43,320.320 INFO    ] time= 19/06/2026 09:14:43
[2026-06-19 09:14:43,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:14:43,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:14:43,515.515 INFO    ] No existing commands found in stream
[2026-06-19 09:14:48,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:14:48,546.546 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 09:14:49,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:14:49,439.439 INFO    ] Checking for system updates...
[2026-06-19 09:14:49,480.480 INFO    ] 200
[2026-06-19 09:14:49,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:14:49,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:14:49,548.548 INFO    ] No update needed
[2026-06-19 09:14:49,550.550 INFO    ] Checking for camera pi updates...
[2026-06-19 09:14:49,588.588 INFO    ] 200
[2026-06-19 09:14:49,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:14:49,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:14:49,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:14:49,771.771 INFO    ] No camera update needed
[2026-06-19 09:14:49,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:14:49,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:14:49,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:14:49,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:14:51,828.828 INFO    ] ================================================
[2026-06-19 09:14:51,843.843 INFO    ] Launching Daemon at Fri Jun 19 09:14:51 IST 2026
[2026-06-19 09:14:51,854.854 INFO    ] ================================================
[2026-06-19 09:14:52,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:14:52
[2026-06-19 09:14:53,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:14:53,324.324 INFO    ] Initializing speech engine...
[2026-06-19 09:14:53,331.331 INFO    ] 2026-06-19 09:14:53
[2026-06-19 09:14:53,604.604 INFO    ] 2026-06-19 09:14:53
[2026-06-19 09:14:53,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:14:53,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:14:53,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:14:54,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:14:54,068.068 INFO    ] time= 19/06/2026 09:14:54
[2026-06-19 09:14:54,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:14:54,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:14:54,230.230 INFO    ] No existing commands found in stream
[2026-06-19 09:14:59,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:14:59,265.265 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 09:15:02,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:15:03,000.000 INFO    ] Checking for system updates...
[2026-06-19 09:15:03,042.042 INFO    ] 200
[2026-06-19 09:15:03,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:03,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:15:03,118.118 INFO    ] No update needed
[2026-06-19 09:15:03,121.121 INFO    ] Checking for camera pi updates...
[2026-06-19 09:15:03,162.162 INFO    ] 200
[2026-06-19 09:15:03,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:03,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:15:03,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:15:03,259.259 INFO    ] No camera update needed
[2026-06-19 09:15:03,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:15:03,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:15:03,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:15:03,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:15:05,330.330 INFO    ] ================================================
[2026-06-19 09:15:05,346.346 INFO    ] Launching Daemon at Fri Jun 19 09:15:05 IST 2026
[2026-06-19 09:15:05,358.358 INFO    ] ================================================
[2026-06-19 09:15:05,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:15:05
[2026-06-19 09:15:06,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:15:06,791.791 INFO    ] Initializing speech engine...
[2026-06-19 09:15:06,797.797 INFO    ] 2026-06-19 09:15:06
[2026-06-19 09:15:07,046.046 INFO    ] 2026-06-19 09:15:07
[2026-06-19 09:15:07,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:15:07,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:15:07,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:15:07,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:15:07,510.510 INFO    ] time= 19/06/2026 09:15:07
[2026-06-19 09:15:07,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:15:07,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:15:07,664.664 INFO    ] No existing commands found in stream
[2026-06-19 09:15:12,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:15:12,684.684 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 09:15:13,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:15:13,673.673 INFO    ] Checking for system updates...
[2026-06-19 09:15:13,709.709 INFO    ] 200
[2026-06-19 09:15:13,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:13,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:15:13,774.774 INFO    ] No update needed
[2026-06-19 09:15:13,776.776 INFO    ] Checking for camera pi updates...
[2026-06-19 09:15:13,814.814 INFO    ] 200
[2026-06-19 09:15:13,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:13,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:15:13,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:15:13,898.898 INFO    ] No camera update needed
[2026-06-19 09:15:13,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:15:13,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:15:13,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:15:13,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:15:15,956.956 INFO    ] ================================================
[2026-06-19 09:15:15,972.972 INFO    ] Launching Daemon at Fri Jun 19 09:15:15 IST 2026
[2026-06-19 09:15:15,984.984 INFO    ] ================================================
[2026-06-19 09:15:16,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:15:16
[2026-06-19 09:15:17,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:15:17,463.463 INFO    ] Initializing speech engine...
[2026-06-19 09:15:17,471.471 INFO    ] 2026-06-19 09:15:17
[2026-06-19 09:15:17,729.729 INFO    ] 2026-06-19 09:15:17
[2026-06-19 09:15:17,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:15:18,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:15:18,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:15:18,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:15:18,207.207 INFO    ] time= 19/06/2026 09:15:18
[2026-06-19 09:15:18,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:15:18,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:15:18,345.345 INFO    ] No existing commands found in stream
[2026-06-19 09:15:23,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:15:23,360.360 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 09:15:24,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:15:24,380.380 INFO    ] Checking for system updates...
[2026-06-19 09:15:24,417.417 INFO    ] 200
[2026-06-19 09:15:24,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:24,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:15:24,477.477 INFO    ] No update needed
[2026-06-19 09:15:24,480.480 INFO    ] Checking for camera pi updates...
[2026-06-19 09:15:24,518.518 INFO    ] 200
[2026-06-19 09:15:24,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:24,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:15:24,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:15:24,615.615 INFO    ] No camera update needed
[2026-06-19 09:15:24,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:15:24,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:15:24,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:15:24,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:15:26,672.672 INFO    ] ================================================
[2026-06-19 09:15:26,688.688 INFO    ] Launching Daemon at Fri Jun 19 09:15:26 IST 2026
[2026-06-19 09:15:26,698.698 INFO    ] ================================================
[2026-06-19 09:15:27,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:15:27
[2026-06-19 09:15:27,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:15:28,156.156 INFO    ] Initializing speech engine...
[2026-06-19 09:15:28,165.165 INFO    ] 2026-06-19 09:15:28
[2026-06-19 09:15:28,463.463 INFO    ] 2026-06-19 09:15:28
[2026-06-19 09:15:28,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:15:28,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:15:28,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:15:28,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:15:28,824.824 INFO    ] time= 19/06/2026 09:15:28
[2026-06-19 09:15:28,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:15:28,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:15:28,927.927 INFO    ] No existing commands found in stream
[2026-06-19 09:15:33,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:15:33,960.960 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 09:15:36,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:15:36,970.970 INFO    ] Checking for system updates...
[2026-06-19 09:15:37,006.006 INFO    ] 200
[2026-06-19 09:15:37,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:37,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:15:37,065.065 INFO    ] No update needed
[2026-06-19 09:15:37,068.068 INFO    ] Checking for camera pi updates...
[2026-06-19 09:15:37,101.101 INFO    ] 200
[2026-06-19 09:15:37,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:37,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:15:37,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:15:37,190.190 INFO    ] No camera update needed
[2026-06-19 09:15:37,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:15:37,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:15:37,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:15:37,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:15:39,245.245 INFO    ] ================================================
[2026-06-19 09:15:39,261.261 INFO    ] Launching Daemon at Fri Jun 19 09:15:39 IST 2026
[2026-06-19 09:15:39,273.273 INFO    ] ================================================
[2026-06-19 09:15:39,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:15:39
[2026-06-19 09:15:40,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:15:40,931.931 INFO    ] Initializing speech engine...
[2026-06-19 09:15:40,939.939 INFO    ] 2026-06-19 09:15:40
[2026-06-19 09:15:41,231.231 INFO    ] 2026-06-19 09:15:41
[2026-06-19 09:15:41,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:15:41,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:15:41,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:15:41,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:15:41,703.703 INFO    ] time= 19/06/2026 09:15:41
[2026-06-19 09:15:41,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:15:41,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:15:41,857.857 INFO    ] No existing commands found in stream
[2026-06-19 09:15:46,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:15:46,876.876 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 09:15:50,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:15:50,459.459 INFO    ] Checking for system updates...
[2026-06-19 09:15:50,500.500 INFO    ] 200
[2026-06-19 09:15:50,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:50,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:15:50,568.568 INFO    ] No update needed
[2026-06-19 09:15:50,571.571 INFO    ] Checking for camera pi updates...
[2026-06-19 09:15:50,611.611 INFO    ] 200
[2026-06-19 09:15:50,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:15:50,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:15:50,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:15:50,713.713 INFO    ] No camera update needed
[2026-06-19 09:15:50,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:15:50,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:15:50,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:15:50,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:15:52,771.771 INFO    ] ================================================
[2026-06-19 09:15:52,787.787 INFO    ] Launching Daemon at Fri Jun 19 09:15:52 IST 2026
[2026-06-19 09:15:52,798.798 INFO    ] ================================================
[2026-06-19 09:15:53,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:15:53
[2026-06-19 09:15:53,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:15:54,224.224 INFO    ] Initializing speech engine...
[2026-06-19 09:15:54,230.230 INFO    ] 2026-06-19 09:15:54
[2026-06-19 09:15:54,525.525 INFO    ] 2026-06-19 09:15:54
[2026-06-19 09:15:54,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:15:54,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:15:54,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:15:54,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:15:54,951.951 INFO    ] time= 19/06/2026 09:15:54
[2026-06-19 09:15:54,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:15:55,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:15:55,127.127 INFO    ] No existing commands found in stream
[2026-06-19 09:16:00,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:16:00,160.160 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 09:16:01,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:16:01,650.650 INFO    ] Checking for system updates...
[2026-06-19 09:16:01,703.703 INFO    ] 200
[2026-06-19 09:16:01,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:01,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:16:01,788.788 INFO    ] No update needed
[2026-06-19 09:16:01,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 09:16:01,879.879 INFO    ] 200
[2026-06-19 09:16:01,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:01,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:16:01,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:16:01,975.975 INFO    ] No camera update needed
[2026-06-19 09:16:01,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:16:01,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:16:01,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:16:01,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:16:04,037.037 INFO    ] ================================================
[2026-06-19 09:16:04,053.053 INFO    ] Launching Daemon at Fri Jun 19 09:16:04 IST 2026
[2026-06-19 09:16:04,064.064 INFO    ] ================================================
[2026-06-19 09:16:04,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:16:04
[2026-06-19 09:16:05,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:16:05,536.536 INFO    ] Initializing speech engine...
[2026-06-19 09:16:05,544.544 INFO    ] 2026-06-19 09:16:05
[2026-06-19 09:16:05,799.799 INFO    ] 2026-06-19 09:16:05
[2026-06-19 09:16:05,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:16:06,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:16:06,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:16:06,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:16:06,175.175 INFO    ] time= 19/06/2026 09:16:06
[2026-06-19 09:16:06,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:16:06,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:16:06,251.251 INFO    ] No existing commands found in stream
[2026-06-19 09:16:11,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:16:11,289.289 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 09:16:13,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:16:13,533.533 INFO    ] Checking for system updates...
[2026-06-19 09:16:13,570.570 INFO    ] 200
[2026-06-19 09:16:13,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:13,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:16:13,633.633 INFO    ] No update needed
[2026-06-19 09:16:13,636.636 INFO    ] Checking for camera pi updates...
[2026-06-19 09:16:13,670.670 INFO    ] 200
[2026-06-19 09:16:13,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:13,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:16:13,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:16:13,759.759 INFO    ] No camera update needed
[2026-06-19 09:16:13,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:16:13,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:16:13,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:16:13,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:16:15,816.816 INFO    ] ================================================
[2026-06-19 09:16:15,831.831 INFO    ] Launching Daemon at Fri Jun 19 09:16:15 IST 2026
[2026-06-19 09:16:15,843.843 INFO    ] ================================================
[2026-06-19 09:16:16,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:16:16
[2026-06-19 09:16:17,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:16:17,464.464 INFO    ] Initializing speech engine...
[2026-06-19 09:16:17,476.476 INFO    ] 2026-06-19 09:16:17
[2026-06-19 09:16:17,780.780 INFO    ] 2026-06-19 09:16:17
[2026-06-19 09:16:17,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:16:18,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:16:18,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:16:18,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:16:18,289.289 INFO    ] time= 19/06/2026 09:16:18
[2026-06-19 09:16:18,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:16:18,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:16:18,444.444 INFO    ] No existing commands found in stream
[2026-06-19 09:16:23,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:16:23,463.463 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 09:16:25,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:16:25,848.848 INFO    ] Checking for system updates...
[2026-06-19 09:16:25,884.884 INFO    ] 200
[2026-06-19 09:16:25,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:25,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:16:25,945.945 INFO    ] No update needed
[2026-06-19 09:16:25,948.948 INFO    ] Checking for camera pi updates...
[2026-06-19 09:16:25,983.983 INFO    ] 200
[2026-06-19 09:16:25,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:26,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:16:26,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:16:26,076.076 INFO    ] No camera update needed
[2026-06-19 09:16:26,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:16:26,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:16:26,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:16:26,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:16:28,132.132 INFO    ] ================================================
[2026-06-19 09:16:28,148.148 INFO    ] Launching Daemon at Fri Jun 19 09:16:28 IST 2026
[2026-06-19 09:16:28,159.159 INFO    ] ================================================
[2026-06-19 09:16:28,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:16:28
[2026-06-19 09:16:29,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:16:29,560.560 INFO    ] Initializing speech engine...
[2026-06-19 09:16:29,568.568 INFO    ] 2026-06-19 09:16:29
[2026-06-19 09:16:29,865.865 INFO    ] 2026-06-19 09:16:29
[2026-06-19 09:16:29,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:16:30,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:16:30,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:16:30,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:16:30,242.242 INFO    ] time= 19/06/2026 09:16:30
[2026-06-19 09:16:30,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:16:30,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:16:30,367.367 INFO    ] No existing commands found in stream
[2026-06-19 09:16:35,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:16:35,382.382 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 09:16:38,497.497 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:16:38,500.500 INFO    ] Checking for system updates...
[2026-06-19 09:16:38,537.537 INFO    ] 200
[2026-06-19 09:16:38,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:38,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:16:38,601.601 INFO    ] No update needed
[2026-06-19 09:16:38,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 09:16:38,637.637 INFO    ] 200
[2026-06-19 09:16:38,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:38,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:16:38,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:16:38,741.741 INFO    ] No camera update needed
[2026-06-19 09:16:38,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:16:38,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:16:38,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:16:38,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:16:40,796.796 INFO    ] ================================================
[2026-06-19 09:16:40,812.812 INFO    ] Launching Daemon at Fri Jun 19 09:16:40 IST 2026
[2026-06-19 09:16:40,824.824 INFO    ] ================================================
[2026-06-19 09:16:41,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:16:41
[2026-06-19 09:16:42,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:16:42,314.314 INFO    ] Initializing speech engine...
[2026-06-19 09:16:42,326.326 INFO    ] 2026-06-19 09:16:42
[2026-06-19 09:16:42,577.577 INFO    ] 2026-06-19 09:16:42
[2026-06-19 09:16:42,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:16:42,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:16:42,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:16:43,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:16:43,094.094 INFO    ] time= 19/06/2026 09:16:43
[2026-06-19 09:16:43,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:16:43,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:16:43,273.273 INFO    ] No existing commands found in stream
[2026-06-19 09:16:48,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:16:48,302.302 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 09:16:50,674.674 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:16:50,677.677 INFO    ] Checking for system updates...
[2026-06-19 09:16:50,718.718 INFO    ] 200
[2026-06-19 09:16:50,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:50,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:16:50,778.778 INFO    ] No update needed
[2026-06-19 09:16:50,781.781 INFO    ] Checking for camera pi updates...
[2026-06-19 09:16:50,815.815 INFO    ] 200
[2026-06-19 09:16:50,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:16:50,859.859 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:16:50,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:16:50,908.908 INFO    ] No camera update needed
[2026-06-19 09:16:50,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:16:50,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:16:50,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:16:50,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:16:52,971.971 INFO    ] ================================================
[2026-06-19 09:16:52,987.987 INFO    ] Launching Daemon at Fri Jun 19 09:16:52 IST 2026
[2026-06-19 09:16:53,998.998 INFO    ] ================================================
[2026-06-19 09:16:53,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:16:53
[2026-06-19 09:16:54,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:16:54,458.458 INFO    ] Initializing speech engine...
[2026-06-19 09:16:54,467.467 INFO    ] 2026-06-19 09:16:54
[2026-06-19 09:16:54,726.726 INFO    ] 2026-06-19 09:16:54
[2026-06-19 09:16:54,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:16:55,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:16:55,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:16:55,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:16:55,192.192 INFO    ] time= 19/06/2026 09:16:55
[2026-06-19 09:16:55,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:16:55,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:16:55,350.350 INFO    ] No existing commands found in stream
[2026-06-19 09:17:00,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:17:00,391.391 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 09:17:03,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:17:03,109.109 INFO    ] Checking for system updates...
[2026-06-19 09:17:03,159.159 INFO    ] 200
[2026-06-19 09:17:03,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:03,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:03,238.238 INFO    ] No update needed
[2026-06-19 09:17:03,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 09:17:03,281.281 INFO    ] 200
[2026-06-19 09:17:03,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:03,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:17:03,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:03,381.381 INFO    ] No camera update needed
[2026-06-19 09:17:03,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:17:03,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:17:03,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:17:03,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:17:05,442.442 INFO    ] ================================================
[2026-06-19 09:17:05,458.458 INFO    ] Launching Daemon at Fri Jun 19 09:17:05 IST 2026
[2026-06-19 09:17:05,470.470 INFO    ] ================================================
[2026-06-19 09:17:06,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:17:06
[2026-06-19 09:17:06,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:17:07,082.082 INFO    ] Initializing speech engine...
[2026-06-19 09:17:07,092.092 INFO    ] 2026-06-19 09:17:07
[2026-06-19 09:17:07,360.360 INFO    ] 2026-06-19 09:17:07
[2026-06-19 09:17:07,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:17:07,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:17:07,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:17:07,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:17:07,778.778 INFO    ] time= 19/06/2026 09:17:07
[2026-06-19 09:17:07,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:17:07,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:17:07,905.905 INFO    ] No existing commands found in stream
[2026-06-19 09:17:12,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:17:12,933.933 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 09:17:13,490.490 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:17:13,493.493 INFO    ] Checking for system updates...
[2026-06-19 09:17:13,529.529 INFO    ] 200
[2026-06-19 09:17:13,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:13,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:13,588.588 INFO    ] No update needed
[2026-06-19 09:17:13,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 09:17:13,624.624 INFO    ] 200
[2026-06-19 09:17:13,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:13,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:17:13,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:13,716.716 INFO    ] No camera update needed
[2026-06-19 09:17:13,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:17:13,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:17:13,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:17:13,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:17:15,772.772 INFO    ] ================================================
[2026-06-19 09:17:15,788.788 INFO    ] Launching Daemon at Fri Jun 19 09:17:15 IST 2026
[2026-06-19 09:17:15,799.799 INFO    ] ================================================
[2026-06-19 09:17:16,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:17:16
[2026-06-19 09:17:17,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:17:17,378.378 INFO    ] Initializing speech engine...
[2026-06-19 09:17:17,385.385 INFO    ] 2026-06-19 09:17:17
[2026-06-19 09:17:17,647.647 INFO    ] 2026-06-19 09:17:17
[2026-06-19 09:17:17,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:17:17,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:17:17,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:17:18,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:17:18,117.117 INFO    ] time= 19/06/2026 09:17:18
[2026-06-19 09:17:18,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:17:18,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:17:18,326.326 INFO    ] No existing commands found in stream
[2026-06-19 09:17:23,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:17:23,360.360 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 09:17:24,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:17:24,084.084 INFO    ] Checking for system updates...
[2026-06-19 09:17:24,121.121 INFO    ] 200
[2026-06-19 09:17:24,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:24,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:24,182.182 INFO    ] No update needed
[2026-06-19 09:17:24,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 09:17:24,219.219 INFO    ] 200
[2026-06-19 09:17:24,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:24,264.264 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:17:24,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:24,316.316 INFO    ] No camera update needed
[2026-06-19 09:17:24,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:17:24,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:17:24,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:17:24,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:17:26,376.376 INFO    ] ================================================
[2026-06-19 09:17:26,390.390 INFO    ] Launching Daemon at Fri Jun 19 09:17:26 IST 2026
[2026-06-19 09:17:26,401.401 INFO    ] ================================================
[2026-06-19 09:17:26,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:17:26
[2026-06-19 09:17:27,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:17:27,874.874 INFO    ] Initializing speech engine...
[2026-06-19 09:17:27,885.885 INFO    ] 2026-06-19 09:17:27
[2026-06-19 09:17:28,154.154 INFO    ] 2026-06-19 09:17:28
[2026-06-19 09:17:28,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:17:28,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:17:28,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:17:28,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:17:28,666.666 INFO    ] time= 19/06/2026 09:17:28
[2026-06-19 09:17:28,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:17:28,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:17:28,880.880 INFO    ] No existing commands found in stream
[2026-06-19 09:17:33,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:17:33,897.897 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 09:17:34,416.416 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:17:34,419.419 INFO    ] Checking for system updates...
[2026-06-19 09:17:34,460.460 INFO    ] 200
[2026-06-19 09:17:34,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:34,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:34,521.521 INFO    ] No update needed
[2026-06-19 09:17:34,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 09:17:34,562.562 INFO    ] 200
[2026-06-19 09:17:34,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:34,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:17:34,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:34,665.665 INFO    ] No camera update needed
[2026-06-19 09:17:34,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:17:34,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:17:34,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:17:34,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:17:36,725.725 INFO    ] ================================================
[2026-06-19 09:17:36,740.740 INFO    ] Launching Daemon at Fri Jun 19 09:17:36 IST 2026
[2026-06-19 09:17:36,751.751 INFO    ] ================================================
[2026-06-19 09:17:37,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:17:37
[2026-06-19 09:17:37,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:17:38,265.265 INFO    ] Initializing speech engine...
[2026-06-19 09:17:38,275.275 INFO    ] 2026-06-19 09:17:38
[2026-06-19 09:17:38,527.527 INFO    ] 2026-06-19 09:17:38
[2026-06-19 09:17:38,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:17:38,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:17:38,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:17:38,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:17:39,021.021 INFO    ] time= 19/06/2026 09:17:38
[2026-06-19 09:17:39,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:17:39,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:17:39,242.242 INFO    ] No existing commands found in stream
[2026-06-19 09:17:44,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:17:44,268.268 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 09:17:44,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:17:44,700.700 INFO    ] Checking for system updates...
[2026-06-19 09:17:44,736.736 INFO    ] 200
[2026-06-19 09:17:44,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:44,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:44,793.793 INFO    ] No update needed
[2026-06-19 09:17:44,795.795 INFO    ] Checking for camera pi updates...
[2026-06-19 09:17:44,830.830 INFO    ] 200
[2026-06-19 09:17:44,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:44,874.874 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:17:44,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:17:44,929.929 INFO    ] No camera update needed
[2026-06-19 09:17:44,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:17:44,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:17:44,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:17:44,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:17:46,986.986 INFO    ] ================================================
[2026-06-19 09:17:47,002.002 INFO    ] Launching Daemon at Fri Jun 19 09:17:46 IST 2026
[2026-06-19 09:17:47,013.013 INFO    ] ================================================
[2026-06-19 09:17:47,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:17:47
[2026-06-19 09:17:48,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:17:48,639.639 INFO    ] Initializing speech engine...
[2026-06-19 09:17:48,652.652 INFO    ] 2026-06-19 09:17:48
[2026-06-19 09:17:48,931.931 INFO    ] 2026-06-19 09:17:48
[2026-06-19 09:17:48,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:17:49,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:17:49,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:17:49,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:17:49,431.431 INFO    ] time= 19/06/2026 09:17:49
[2026-06-19 09:17:49,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:17:49,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:17:49,610.610 INFO    ] No existing commands found in stream
[2026-06-19 09:17:54,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:17:54,634.634 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 09:17:58,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:17:58,600.600 INFO    ] Checking for system updates...
[2026-06-19 09:17:58,637.637 INFO    ] 200
[2026-06-19 09:17:58,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:58,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:17:58,704.704 INFO    ] No update needed
[2026-06-19 09:17:58,708.708 INFO    ] Checking for camera pi updates...
[2026-06-19 09:17:58,743.743 INFO    ] 200
[2026-06-19 09:17:58,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:17:58,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:17:58,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:17:58,849.849 INFO    ] No camera update needed
[2026-06-19 09:17:58,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:17:58,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:17:58,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:17:58,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:18:00,906.906 INFO    ] ================================================
[2026-06-19 09:18:00,921.921 INFO    ] Launching Daemon at Fri Jun 19 09:18:00 IST 2026
[2026-06-19 09:18:00,932.932 INFO    ] ================================================
[2026-06-19 09:18:01,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:18:01
[2026-06-19 09:18:02,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:18:02,617.617 INFO    ] Initializing speech engine...
[2026-06-19 09:18:02,628.628 INFO    ] 2026-06-19 09:18:02
[2026-06-19 09:18:02,920.920 INFO    ] 2026-06-19 09:18:02
[2026-06-19 09:18:02,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:18:03,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:18:03,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:18:03,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:18:03,430.430 INFO    ] time= 19/06/2026 09:18:03
[2026-06-19 09:18:03,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:18:03,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:18:03,619.619 INFO    ] No existing commands found in stream
[2026-06-19 09:18:08,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:18:08,655.655 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 09:18:11,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:18:11,981.981 INFO    ] Checking for system updates...
[2026-06-19 09:18:12,017.017 INFO    ] 200
[2026-06-19 09:18:12,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:12,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:18:12,074.074 INFO    ] No update needed
[2026-06-19 09:18:12,077.077 INFO    ] Checking for camera pi updates...
[2026-06-19 09:18:12,111.111 INFO    ] 200
[2026-06-19 09:18:12,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:12,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:18:12,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:18:12,199.199 INFO    ] No camera update needed
[2026-06-19 09:18:12,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:18:12,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:18:12,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:18:12,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:18:14,253.253 INFO    ] ================================================
[2026-06-19 09:18:14,269.269 INFO    ] Launching Daemon at Fri Jun 19 09:18:14 IST 2026
[2026-06-19 09:18:14,281.281 INFO    ] ================================================
[2026-06-19 09:18:14,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:18:14
[2026-06-19 09:18:15,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:18:15,871.871 INFO    ] Initializing speech engine...
[2026-06-19 09:18:15,885.885 INFO    ] 2026-06-19 09:18:15
[2026-06-19 09:18:16,167.167 INFO    ] 2026-06-19 09:18:16
[2026-06-19 09:18:16,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:18:16,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:18:16,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:18:16,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:18:16,644.644 INFO    ] time= 19/06/2026 09:18:16
[2026-06-19 09:18:16,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:18:16,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:18:16,856.856 INFO    ] No existing commands found in stream
[2026-06-19 09:18:21,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:18:21,889.889 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 09:18:24,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:18:24,266.266 INFO    ] Checking for system updates...
[2026-06-19 09:18:24,303.303 INFO    ] 200
[2026-06-19 09:18:24,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:24,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:18:24,363.363 INFO    ] No update needed
[2026-06-19 09:18:24,366.366 INFO    ] Checking for camera pi updates...
[2026-06-19 09:18:24,402.402 INFO    ] 200
[2026-06-19 09:18:24,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:24,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:18:24,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:18:24,491.491 INFO    ] No camera update needed
[2026-06-19 09:18:24,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:18:24,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:18:24,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:18:24,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:18:26,549.549 INFO    ] ================================================
[2026-06-19 09:18:26,565.565 INFO    ] Launching Daemon at Fri Jun 19 09:18:26 IST 2026
[2026-06-19 09:18:26,575.575 INFO    ] ================================================
[2026-06-19 09:18:27,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:18:27
[2026-06-19 09:18:27,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:18:28,190.190 INFO    ] Initializing speech engine...
[2026-06-19 09:18:28,203.203 INFO    ] 2026-06-19 09:18:28
[2026-06-19 09:18:28,491.491 INFO    ] 2026-06-19 09:18:28
[2026-06-19 09:18:28,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:18:28,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:18:28,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:18:29,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:18:29,024.024 INFO    ] time= 19/06/2026 09:18:29
[2026-06-19 09:18:29,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:18:29,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:18:29,181.181 INFO    ] No existing commands found in stream
[2026-06-19 09:18:34,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:18:34,214.214 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 09:18:37,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:18:37,571.571 INFO    ] Checking for system updates...
[2026-06-19 09:18:37,608.608 INFO    ] 200
[2026-06-19 09:18:37,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:37,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:18:37,669.669 INFO    ] No update needed
[2026-06-19 09:18:37,671.671 INFO    ] Checking for camera pi updates...
[2026-06-19 09:18:37,710.710 INFO    ] 200
[2026-06-19 09:18:37,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:37,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:18:37,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:18:37,808.808 INFO    ] No camera update needed
[2026-06-19 09:18:37,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:18:37,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:18:37,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:18:37,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:18:39,866.866 INFO    ] ================================================
[2026-06-19 09:18:39,881.881 INFO    ] Launching Daemon at Fri Jun 19 09:18:39 IST 2026
[2026-06-19 09:18:39,892.892 INFO    ] ================================================
[2026-06-19 09:18:40,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:18:40
[2026-06-19 09:18:41,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:18:41,470.470 INFO    ] Initializing speech engine...
[2026-06-19 09:18:41,478.478 INFO    ] 2026-06-19 09:18:41
[2026-06-19 09:18:41,753.753 INFO    ] 2026-06-19 09:18:41
[2026-06-19 09:18:41,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:18:42,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:18:42,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:18:42,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:18:42,218.218 INFO    ] time= 19/06/2026 09:18:42
[2026-06-19 09:18:42,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:18:42,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:18:42,410.410 INFO    ] No existing commands found in stream
[2026-06-19 09:18:47,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:18:47,423.423 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 09:18:47,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:18:47,899.899 INFO    ] Checking for system updates...
[2026-06-19 09:18:47,935.935 INFO    ] 200
[2026-06-19 09:18:47,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:47,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:18:47,995.995 INFO    ] No update needed
[2026-06-19 09:18:47,998.998 INFO    ] Checking for camera pi updates...
[2026-06-19 09:18:48,035.035 INFO    ] 200
[2026-06-19 09:18:48,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:48,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:18:48,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:18:48,118.118 INFO    ] No camera update needed
[2026-06-19 09:18:48,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:18:48,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:18:48,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:18:48,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:18:50,174.174 INFO    ] ================================================
[2026-06-19 09:18:50,189.189 INFO    ] Launching Daemon at Fri Jun 19 09:18:50 IST 2026
[2026-06-19 09:18:50,200.200 INFO    ] ================================================
[2026-06-19 09:18:50,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:18:50
[2026-06-19 09:18:51,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:18:51,623.623 INFO    ] Initializing speech engine...
[2026-06-19 09:18:51,631.631 INFO    ] 2026-06-19 09:18:51
[2026-06-19 09:18:51,903.903 INFO    ] 2026-06-19 09:18:51
[2026-06-19 09:18:51,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:18:52,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:18:52,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:18:52,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:18:52,379.379 INFO    ] time= 19/06/2026 09:18:52
[2026-06-19 09:18:52,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:18:52,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:18:52,578.578 INFO    ] No existing commands found in stream
[2026-06-19 09:18:57,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:18:57,598.598 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 09:18:59,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:18:59,751.751 INFO    ] Checking for system updates...
[2026-06-19 09:18:59,787.787 INFO    ] 200
[2026-06-19 09:18:59,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:59,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:18:59,845.845 INFO    ] No update needed
[2026-06-19 09:18:59,847.847 INFO    ] Checking for camera pi updates...
[2026-06-19 09:18:59,882.882 INFO    ] 200
[2026-06-19 09:18:59,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:18:59,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:18:59,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:18:59,975.975 INFO    ] No camera update needed
[2026-06-19 09:18:59,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:18:59,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:18:59,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:18:59,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:19:02,034.034 INFO    ] ================================================
[2026-06-19 09:19:02,054.054 INFO    ] Launching Daemon at Fri Jun 19 09:19:02 IST 2026
[2026-06-19 09:19:02,070.070 INFO    ] ================================================
[2026-06-19 09:19:02,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:19:02
[2026-06-19 09:19:03,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:19:03,632.632 INFO    ] Initializing speech engine...
[2026-06-19 09:19:03,647.647 INFO    ] 2026-06-19 09:19:03
[2026-06-19 09:19:03,909.909 INFO    ] 2026-06-19 09:19:03
[2026-06-19 09:19:03,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:19:04,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:19:04,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:19:04,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:19:04,396.396 INFO    ] time= 19/06/2026 09:19:04
[2026-06-19 09:19:04,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:19:04,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:19:04,600.600 INFO    ] No existing commands found in stream
[2026-06-19 09:19:09,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:19:09,629.629 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 09:19:10,761.761 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:19:10,764.764 INFO    ] Checking for system updates...
[2026-06-19 09:19:10,803.803 INFO    ] 200
[2026-06-19 09:19:10,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:19:10,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:19:10,867.867 INFO    ] No update needed
[2026-06-19 09:19:10,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 09:19:10,904.904 INFO    ] 200
[2026-06-19 09:19:10,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:19:10,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:19:11,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:19:11,101.101 INFO    ] No camera update needed
[2026-06-19 09:19:11,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:19:11,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:19:11,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:19:11,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:19:13,158.158 INFO    ] ================================================
[2026-06-19 09:19:13,174.174 INFO    ] Launching Daemon at Fri Jun 19 09:19:13 IST 2026
[2026-06-19 09:19:13,185.185 INFO    ] ================================================
[2026-06-19 09:19:13,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:19:13
[2026-06-19 09:19:14,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:19:14,734.734 INFO    ] Initializing speech engine...
[2026-06-19 09:19:14,744.744 INFO    ] 2026-06-19 09:19:14
[2026-06-19 09:19:15,023.023 INFO    ] 2026-06-19 09:19:15
[2026-06-19 09:19:15,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:19:15,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:19:15,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:19:15,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:19:15,511.511 INFO    ] time= 19/06/2026 09:19:15
[2026-06-19 09:19:15,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:19:15,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:19:15,719.719 INFO    ] No existing commands found in stream
[2026-06-19 09:19:20,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:19:20,737.737 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-19 09:19:24,806.806 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:19:24,809.809 INFO    ] Checking for system updates...
[2026-06-19 09:19:24,848.848 INFO    ] 200
[2026-06-19 09:19:24,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:19:24,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:19:24,918.918 INFO    ] No update needed
[2026-06-19 09:19:24,921.921 INFO    ] Checking for camera pi updates...
[2026-06-19 09:19:24,974.974 INFO    ] 200
[2026-06-19 09:19:24,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:19:25,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:19:25,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:19:25,071.071 INFO    ] No camera update needed
[2026-06-19 09:19:25,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:19:25,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:19:25,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:19:25,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:19:27,130.130 INFO    ] ================================================
[2026-06-19 09:19:27,146.146 INFO    ] Launching Daemon at Fri Jun 19 09:19:27 IST 2026
[2026-06-19 09:19:27,156.156 INFO    ] ================================================
[2026-06-19 09:19:27,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:19:27
[2026-06-19 09:19:28,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:19:28,716.716 INFO    ] Initializing speech engine...
[2026-06-19 09:19:28,724.724 INFO    ] 2026-06-19 09:19:28
[2026-06-19 09:19:28,990.990 INFO    ] 2026-06-19 09:19:28
[2026-06-19 09:19:29,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:19:29,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:19:29,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:19:29,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:19:29,486.486 INFO    ] time= 19/06/2026 09:19:29
[2026-06-19 09:19:29,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:19:29,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:19:29,686.686 INFO    ] No existing commands found in stream
[2026-06-19 09:19:34,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:19:34,723.723 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 09:19:38,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:19:38,530.530 INFO    ] Checking for system updates...
[2026-06-19 09:19:38,566.566 INFO    ] 200
[2026-06-19 09:19:38,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:19:38,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:19:38,624.624 INFO    ] No update needed
[2026-06-19 09:19:38,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 09:19:38,661.661 INFO    ] 200
[2026-06-19 09:19:38,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:19:38,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:19:38,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:19:38,753.753 INFO    ] No camera update needed
[2026-06-19 09:19:38,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:19:38,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:19:38,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:19:38,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:19:40,811.811 INFO    ] ================================================
[2026-06-19 09:19:40,826.826 INFO    ] Launching Daemon at Fri Jun 19 09:19:40 IST 2026
[2026-06-19 09:19:40,837.837 INFO    ] ================================================
[2026-06-19 09:19:41,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:19:41
[2026-06-19 09:19:41,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:19:42,271.271 INFO    ] Initializing speech engine...
[2026-06-19 09:19:42,278.278 INFO    ] 2026-06-19 09:19:42
[2026-06-19 09:19:42,530.530 INFO    ] 2026-06-19 09:19:42
[2026-06-19 09:19:42,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:19:42,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:19:42,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:19:43,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:19:43,052.052 INFO    ] time= 19/06/2026 09:19:43
[2026-06-19 09:19:43,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:19:43,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:19:43,243.243 INFO    ] No existing commands found in stream
[2026-06-19 09:19:48,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:19:48,268.268 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 09:19:51,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:19:51,166.166 INFO    ] Checking for system updates...
[2026-06-19 09:19:51,203.203 INFO    ] 200
[2026-06-19 09:19:51,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:19:51,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:19:51,268.268 INFO    ] No update needed
[2026-06-19 09:19:51,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 09:19:51,306.306 INFO    ] 200
[2026-06-19 09:19:51,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:19:51,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:19:51,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:19:51,402.402 INFO    ] No camera update needed
[2026-06-19 09:19:51,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:19:51,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:19:51,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:19:51,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:19:53,463.463 INFO    ] ================================================
[2026-06-19 09:19:53,479.479 INFO    ] Launching Daemon at Fri Jun 19 09:19:53 IST 2026
[2026-06-19 09:19:53,490.490 INFO    ] ================================================
[2026-06-19 09:19:54,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:19:54
[2026-06-19 09:19:54,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:19:54,949.949 INFO    ] Initializing speech engine...
[2026-06-19 09:19:54,958.958 INFO    ] 2026-06-19 09:19:54
[2026-06-19 09:19:55,222.222 INFO    ] 2026-06-19 09:19:55
[2026-06-19 09:19:55,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:19:55,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:19:55,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:19:55,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:19:55,761.761 INFO    ] time= 19/06/2026 09:19:55
[2026-06-19 09:19:55,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:19:55,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:19:55,901.901 INFO    ] No existing commands found in stream
[2026-06-19 09:20:00,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:20:00,928.928 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 09:20:01,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:20:01,892.892 INFO    ] Checking for system updates...
[2026-06-19 09:20:01,969.969 INFO    ] 200
[2026-06-19 09:20:01,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:02,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:20:02,180.180 INFO    ] No update needed
[2026-06-19 09:20:02,189.189 INFO    ] Checking for camera pi updates...
[2026-06-19 09:20:02,340.340 INFO    ] 200
[2026-06-19 09:20:02,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:02,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:20:02,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:20:02,577.577 INFO    ] No camera update needed
[2026-06-19 09:20:02,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:20:02,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:20:02,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:20:02,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:20:04,641.641 INFO    ] ================================================
[2026-06-19 09:20:04,657.657 INFO    ] Launching Daemon at Fri Jun 19 09:20:04 IST 2026
[2026-06-19 09:20:04,667.667 INFO    ] ================================================
[2026-06-19 09:20:05,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:20:05
[2026-06-19 09:20:05,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:20:06,216.216 INFO    ] Initializing speech engine...
[2026-06-19 09:20:06,225.225 INFO    ] 2026-06-19 09:20:06
[2026-06-19 09:20:06,486.486 INFO    ] 2026-06-19 09:20:06
[2026-06-19 09:20:06,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:20:06,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:20:06,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:20:06,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:20:07,050.050 INFO    ] time= 19/06/2026 09:20:07
[2026-06-19 09:20:07,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:20:07,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:20:07,185.185 INFO    ] No existing commands found in stream
[2026-06-19 09:20:12,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:20:12,220.220 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 09:20:16,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:20:16,015.015 INFO    ] Checking for system updates...
[2026-06-19 09:20:16,061.061 INFO    ] 200
[2026-06-19 09:20:16,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:16,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:20:16,124.124 INFO    ] No update needed
[2026-06-19 09:20:16,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 09:20:16,165.165 INFO    ] 200
[2026-06-19 09:20:16,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:16,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:20:16,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:20:16,254.254 INFO    ] No camera update needed
[2026-06-19 09:20:16,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:20:16,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:20:16,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:20:16,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:20:18,310.310 INFO    ] ================================================
[2026-06-19 09:20:18,325.325 INFO    ] Launching Daemon at Fri Jun 19 09:20:18 IST 2026
[2026-06-19 09:20:18,336.336 INFO    ] ================================================
[2026-06-19 09:20:18,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:20:18
[2026-06-19 09:20:19,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:20:19,733.733 INFO    ] Initializing speech engine...
[2026-06-19 09:20:19,742.742 INFO    ] 2026-06-19 09:20:19
[2026-06-19 09:20:20,025.025 INFO    ] 2026-06-19 09:20:20
[2026-06-19 09:20:20,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:20:20,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:20:20,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:20:20,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:20:20,498.498 INFO    ] time= 19/06/2026 09:20:20
[2026-06-19 09:20:20,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:20:20,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:20:20,693.693 INFO    ] No existing commands found in stream
[2026-06-19 09:20:25,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:20:25,708.708 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 09:20:26,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:20:26,444.444 INFO    ] Checking for system updates...
[2026-06-19 09:20:26,480.480 INFO    ] 200
[2026-06-19 09:20:26,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:26,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:20:26,537.537 INFO    ] No update needed
[2026-06-19 09:20:26,540.540 INFO    ] Checking for camera pi updates...
[2026-06-19 09:20:26,573.573 INFO    ] 200
[2026-06-19 09:20:26,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:26,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:20:26,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:20:26,665.665 INFO    ] No camera update needed
[2026-06-19 09:20:26,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:20:26,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:20:26,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:20:26,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:20:28,720.720 INFO    ] ================================================
[2026-06-19 09:20:28,735.735 INFO    ] Launching Daemon at Fri Jun 19 09:20:28 IST 2026
[2026-06-19 09:20:28,745.745 INFO    ] ================================================
[2026-06-19 09:20:29,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:20:29
[2026-06-19 09:20:29,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:20:30,212.212 INFO    ] Initializing speech engine...
[2026-06-19 09:20:30,219.219 INFO    ] 2026-06-19 09:20:30
[2026-06-19 09:20:30,480.480 INFO    ] 2026-06-19 09:20:30
[2026-06-19 09:20:30,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:20:30,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:20:30,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:20:30,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:20:30,969.969 INFO    ] time= 19/06/2026 09:20:30
[2026-06-19 09:20:31,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:20:31,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:20:31,180.180 INFO    ] No existing commands found in stream
[2026-06-19 09:20:36,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:20:36,202.202 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 09:20:37,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:20:37,313.313 INFO    ] Checking for system updates...
[2026-06-19 09:20:37,348.348 INFO    ] 200
[2026-06-19 09:20:37,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:37,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:20:37,406.406 INFO    ] No update needed
[2026-06-19 09:20:37,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 09:20:37,445.445 INFO    ] 200
[2026-06-19 09:20:37,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:37,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:20:37,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:20:37,537.537 INFO    ] No camera update needed
[2026-06-19 09:20:37,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:20:37,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:20:37,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:20:37,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:20:39,593.593 INFO    ] ================================================
[2026-06-19 09:20:39,609.609 INFO    ] Launching Daemon at Fri Jun 19 09:20:39 IST 2026
[2026-06-19 09:20:39,620.620 INFO    ] ================================================
[2026-06-19 09:20:40,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:20:40
[2026-06-19 09:20:40,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:20:41,079.079 INFO    ] Initializing speech engine...
[2026-06-19 09:20:41,088.088 INFO    ] 2026-06-19 09:20:41
[2026-06-19 09:20:41,349.349 INFO    ] 2026-06-19 09:20:41
[2026-06-19 09:20:41,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:20:41,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:20:41,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:20:41,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:20:41,801.801 INFO    ] time= 19/06/2026 09:20:41
[2026-06-19 09:20:41,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:20:41,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:20:42,046.046 INFO    ] No existing commands found in stream
[2026-06-19 09:20:47,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:20:47,063.063 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 09:20:49,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:20:49,907.907 INFO    ] Checking for system updates...
[2026-06-19 09:20:49,944.944 INFO    ] 200
[2026-06-19 09:20:49,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:50,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:20:50,006.006 INFO    ] No update needed
[2026-06-19 09:20:50,008.008 INFO    ] Checking for camera pi updates...
[2026-06-19 09:20:50,044.044 INFO    ] 200
[2026-06-19 09:20:50,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:20:50,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:20:50,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:20:50,139.139 INFO    ] No camera update needed
[2026-06-19 09:20:50,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:20:50,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:20:50,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:20:50,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:20:52,195.195 INFO    ] ================================================
[2026-06-19 09:20:52,210.210 INFO    ] Launching Daemon at Fri Jun 19 09:20:52 IST 2026
[2026-06-19 09:20:52,221.221 INFO    ] ================================================
[2026-06-19 09:20:52,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:20:52
[2026-06-19 09:20:53,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:20:53,787.787 INFO    ] Initializing speech engine...
[2026-06-19 09:20:53,800.800 INFO    ] 2026-06-19 09:20:53
[2026-06-19 09:20:54,074.074 INFO    ] 2026-06-19 09:20:54
[2026-06-19 09:20:54,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:20:54,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:20:54,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:20:54,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:20:54,609.609 INFO    ] time= 19/06/2026 09:20:54
[2026-06-19 09:20:54,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:20:54,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:20:54,765.765 INFO    ] No existing commands found in stream
[2026-06-19 09:20:59,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:20:59,788.788 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 09:21:03,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:21:03,189.189 INFO    ] Checking for system updates...
[2026-06-19 09:21:03,230.230 INFO    ] 200
[2026-06-19 09:21:03,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:03,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:21:03,309.309 INFO    ] No update needed
[2026-06-19 09:21:03,312.312 INFO    ] Checking for camera pi updates...
[2026-06-19 09:21:03,365.365 INFO    ] 200
[2026-06-19 09:21:03,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:03,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:21:03,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:21:03,499.499 INFO    ] No camera update needed
[2026-06-19 09:21:03,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:21:03,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:21:03,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:21:03,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:21:05,564.564 INFO    ] ================================================
[2026-06-19 09:21:05,581.581 INFO    ] Launching Daemon at Fri Jun 19 09:21:05 IST 2026
[2026-06-19 09:21:05,593.593 INFO    ] ================================================
[2026-06-19 09:21:06,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:21:06
[2026-06-19 09:21:06,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:21:07,030.030 INFO    ] Initializing speech engine...
[2026-06-19 09:21:07,046.046 INFO    ] 2026-06-19 09:21:07
[2026-06-19 09:21:07,314.314 INFO    ] 2026-06-19 09:21:07
[2026-06-19 09:21:07,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:21:07,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:21:07,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:21:07,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:21:07,762.762 INFO    ] time= 19/06/2026 09:21:07
[2026-06-19 09:21:07,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:21:07,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:21:08,024.024 INFO    ] No existing commands found in stream
[2026-06-19 09:21:13,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:21:13,061.061 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 09:21:14,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:21:14,041.041 INFO    ] Checking for system updates...
[2026-06-19 09:21:14,079.079 INFO    ] 200
[2026-06-19 09:21:14,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:14,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:21:14,138.138 INFO    ] No update needed
[2026-06-19 09:21:14,141.141 INFO    ] Checking for camera pi updates...
[2026-06-19 09:21:14,176.176 INFO    ] 200
[2026-06-19 09:21:14,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:14,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:21:14,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:21:14,374.374 INFO    ] No camera update needed
[2026-06-19 09:21:14,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:21:14,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:21:14,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:21:14,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:21:16,433.433 INFO    ] ================================================
[2026-06-19 09:21:16,449.449 INFO    ] Launching Daemon at Fri Jun 19 09:21:16 IST 2026
[2026-06-19 09:21:16,461.461 INFO    ] ================================================
[2026-06-19 09:21:17,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:21:17
[2026-06-19 09:21:17,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:21:17,911.911 INFO    ] Initializing speech engine...
[2026-06-19 09:21:17,922.922 INFO    ] 2026-06-19 09:21:17
[2026-06-19 09:21:18,183.183 INFO    ] 2026-06-19 09:21:18
[2026-06-19 09:21:18,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:21:18,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:21:18,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:21:18,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:21:18,675.675 INFO    ] time= 19/06/2026 09:21:18
[2026-06-19 09:21:18,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:21:18,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:21:18,876.876 INFO    ] No existing commands found in stream
[2026-06-19 09:21:23,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:21:23,903.903 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 09:21:26,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:21:26,130.130 INFO    ] Checking for system updates...
[2026-06-19 09:21:26,169.169 INFO    ] 200
[2026-06-19 09:21:26,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:26,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:21:26,228.228 INFO    ] No update needed
[2026-06-19 09:21:26,230.230 INFO    ] Checking for camera pi updates...
[2026-06-19 09:21:26,267.267 INFO    ] 200
[2026-06-19 09:21:26,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:26,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:21:26,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:21:26,352.352 INFO    ] No camera update needed
[2026-06-19 09:21:26,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:21:26,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:21:26,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:21:26,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:21:28,411.411 INFO    ] ================================================
[2026-06-19 09:21:28,427.427 INFO    ] Launching Daemon at Fri Jun 19 09:21:28 IST 2026
[2026-06-19 09:21:28,437.437 INFO    ] ================================================
[2026-06-19 09:21:29,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:21:29
[2026-06-19 09:21:29,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:21:30,049.049 INFO    ] Initializing speech engine...
[2026-06-19 09:21:30,054.054 INFO    ] 2026-06-19 09:21:30
[2026-06-19 09:21:30,332.332 INFO    ] 2026-06-19 09:21:30
[2026-06-19 09:21:30,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:21:30,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:21:30,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:21:30,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:21:30,892.892 INFO    ] time= 19/06/2026 09:21:30
[2026-06-19 09:21:30,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:21:30,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:21:31,056.056 INFO    ] No existing commands found in stream
[2026-06-19 09:21:36,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:21:36,073.073 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 09:21:36,826.826 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:21:36,829.829 INFO    ] Checking for system updates...
[2026-06-19 09:21:36,866.866 INFO    ] 200
[2026-06-19 09:21:36,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:36,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:21:36,925.925 INFO    ] No update needed
[2026-06-19 09:21:36,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 09:21:36,966.966 INFO    ] 200
[2026-06-19 09:21:36,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:37,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:21:37,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:21:37,056.056 INFO    ] No camera update needed
[2026-06-19 09:21:37,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:21:37,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:21:37,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:21:37,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:21:39,112.112 INFO    ] ================================================
[2026-06-19 09:21:39,128.128 INFO    ] Launching Daemon at Fri Jun 19 09:21:39 IST 2026
[2026-06-19 09:21:39,139.139 INFO    ] ================================================
[2026-06-19 09:21:39,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:21:39
[2026-06-19 09:21:40,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:21:40,590.590 INFO    ] Initializing speech engine...
[2026-06-19 09:21:40,602.602 INFO    ] 2026-06-19 09:21:40
[2026-06-19 09:21:40,876.876 INFO    ] 2026-06-19 09:21:40
[2026-06-19 09:21:40,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:21:41,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:21:41,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:21:41,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:21:41,348.348 INFO    ] time= 19/06/2026 09:21:41
[2026-06-19 09:21:41,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:21:41,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:21:41,589.589 INFO    ] No existing commands found in stream
[2026-06-19 09:21:46,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:21:46,623.623 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 09:21:48,433.433 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:21:48,436.436 INFO    ] Checking for system updates...
[2026-06-19 09:21:48,472.472 INFO    ] 200
[2026-06-19 09:21:48,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:48,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:21:48,530.530 INFO    ] No update needed
[2026-06-19 09:21:48,532.532 INFO    ] Checking for camera pi updates...
[2026-06-19 09:21:48,567.567 INFO    ] 200
[2026-06-19 09:21:48,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:21:48,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:21:48,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:21:48,649.649 INFO    ] No camera update needed
[2026-06-19 09:21:48,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:21:48,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:21:48,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:21:48,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:21:50,705.705 INFO    ] ================================================
[2026-06-19 09:21:50,722.722 INFO    ] Launching Daemon at Fri Jun 19 09:21:50 IST 2026
[2026-06-19 09:21:50,733.733 INFO    ] ================================================
[2026-06-19 09:21:51,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:21:51
[2026-06-19 09:21:51,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:21:52,190.190 INFO    ] Initializing speech engine...
[2026-06-19 09:21:52,202.202 INFO    ] 2026-06-19 09:21:52
[2026-06-19 09:21:52,454.454 INFO    ] 2026-06-19 09:21:52
[2026-06-19 09:21:52,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:21:52,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:21:52,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:21:52,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:21:52,962.962 INFO    ] time= 19/06/2026 09:21:52
[2026-06-19 09:21:53,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:21:53,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:21:53,169.169 INFO    ] No existing commands found in stream
[2026-06-19 09:21:58,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:21:58,191.191 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 09:22:02,461.461 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:22:02,463.463 INFO    ] Checking for system updates...
[2026-06-19 09:22:02,505.505 INFO    ] 200
[2026-06-19 09:22:02,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:02,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:22:02,576.576 INFO    ] No update needed
[2026-06-19 09:22:02,579.579 INFO    ] Checking for camera pi updates...
[2026-06-19 09:22:02,616.616 INFO    ] 200
[2026-06-19 09:22:02,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:02,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:22:02,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:22:02,706.706 INFO    ] No camera update needed
[2026-06-19 09:22:02,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:22:02,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:22:02,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:22:02,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:22:04,774.774 INFO    ] ================================================
[2026-06-19 09:22:04,790.790 INFO    ] Launching Daemon at Fri Jun 19 09:22:04 IST 2026
[2026-06-19 09:22:04,801.801 INFO    ] ================================================
[2026-06-19 09:22:05,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:22:05
[2026-06-19 09:22:05,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:22:06,259.259 INFO    ] Initializing speech engine...
[2026-06-19 09:22:06,266.266 INFO    ] 2026-06-19 09:22:06
[2026-06-19 09:22:06,527.527 INFO    ] 2026-06-19 09:22:06
[2026-06-19 09:22:06,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:22:06,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:22:06,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:22:06,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:22:07,035.035 INFO    ] time= 19/06/2026 09:22:06
[2026-06-19 09:22:07,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:22:07,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:22:07,258.258 INFO    ] No existing commands found in stream
[2026-06-19 09:22:12,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:22:12,281.281 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 09:22:15,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:22:15,611.611 INFO    ] Checking for system updates...
[2026-06-19 09:22:15,648.648 INFO    ] 200
[2026-06-19 09:22:15,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:15,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:22:15,709.709 INFO    ] No update needed
[2026-06-19 09:22:15,712.712 INFO    ] Checking for camera pi updates...
[2026-06-19 09:22:15,746.746 INFO    ] 200
[2026-06-19 09:22:15,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:15,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:22:15,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:22:15,834.834 INFO    ] No camera update needed
[2026-06-19 09:22:15,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:22:15,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:22:15,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:22:15,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:22:17,891.891 INFO    ] ================================================
[2026-06-19 09:22:17,907.907 INFO    ] Launching Daemon at Fri Jun 19 09:22:17 IST 2026
[2026-06-19 09:22:17,919.919 INFO    ] ================================================
[2026-06-19 09:22:18,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:22:18
[2026-06-19 09:22:19,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:22:19,391.391 INFO    ] Initializing speech engine...
[2026-06-19 09:22:19,399.399 INFO    ] 2026-06-19 09:22:19
[2026-06-19 09:22:19,670.670 INFO    ] 2026-06-19 09:22:19
[2026-06-19 09:22:19,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:22:19,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:22:19,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:22:20,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:22:20,139.139 INFO    ] time= 19/06/2026 09:22:20
[2026-06-19 09:22:20,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:22:20,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:22:20,389.389 INFO    ] No existing commands found in stream
[2026-06-19 09:22:25,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:22:25,422.422 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 09:22:26,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:22:26,507.507 INFO    ] Checking for system updates...
[2026-06-19 09:22:26,544.544 INFO    ] 200
[2026-06-19 09:22:26,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:26,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:22:26,604.604 INFO    ] No update needed
[2026-06-19 09:22:26,606.606 INFO    ] Checking for camera pi updates...
[2026-06-19 09:22:26,647.647 INFO    ] 200
[2026-06-19 09:22:26,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:26,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:22:26,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:22:26,760.760 INFO    ] No camera update needed
[2026-06-19 09:22:26,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:22:26,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:22:26,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:22:26,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:22:28,818.818 INFO    ] ================================================
[2026-06-19 09:22:28,833.833 INFO    ] Launching Daemon at Fri Jun 19 09:22:28 IST 2026
[2026-06-19 09:22:28,845.845 INFO    ] ================================================
[2026-06-19 09:22:29,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:22:29
[2026-06-19 09:22:30,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:22:30,459.459 INFO    ] Initializing speech engine...
[2026-06-19 09:22:30,473.473 INFO    ] 2026-06-19 09:22:30
[2026-06-19 09:22:30,780.780 INFO    ] 2026-06-19 09:22:30
[2026-06-19 09:22:30,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:22:31,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:22:31,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:22:31,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:22:31,291.291 INFO    ] time= 19/06/2026 09:22:31
[2026-06-19 09:22:31,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:22:31,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:22:31,447.447 INFO    ] No existing commands found in stream
[2026-06-19 09:22:36,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:22:36,469.469 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 09:22:40,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:22:40,165.165 INFO    ] Checking for system updates...
[2026-06-19 09:22:40,205.205 INFO    ] 200
[2026-06-19 09:22:40,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:40,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:22:40,265.265 INFO    ] No update needed
[2026-06-19 09:22:40,268.268 INFO    ] Checking for camera pi updates...
[2026-06-19 09:22:40,306.306 INFO    ] 200
[2026-06-19 09:22:40,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:40,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:22:40,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:22:40,395.395 INFO    ] No camera update needed
[2026-06-19 09:22:40,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:22:40,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:22:40,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:22:40,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:22:42,453.453 INFO    ] ================================================
[2026-06-19 09:22:42,469.469 INFO    ] Launching Daemon at Fri Jun 19 09:22:42 IST 2026
[2026-06-19 09:22:42,480.480 INFO    ] ================================================
[2026-06-19 09:22:43,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:22:43
[2026-06-19 09:22:43,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:22:43,924.924 INFO    ] Initializing speech engine...
[2026-06-19 09:22:43,934.934 INFO    ] 2026-06-19 09:22:43
[2026-06-19 09:22:44,192.192 INFO    ] 2026-06-19 09:22:44
[2026-06-19 09:22:44,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:22:44,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:22:44,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:22:44,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:22:44,657.657 INFO    ] time= 19/06/2026 09:22:44
[2026-06-19 09:22:44,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:22:44,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:22:44,881.881 INFO    ] No existing commands found in stream
[2026-06-19 09:22:49,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:22:49,909.909 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 09:22:51,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:22:51,949.949 INFO    ] Checking for system updates...
[2026-06-19 09:22:51,985.985 INFO    ] 200
[2026-06-19 09:22:51,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:52,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:22:52,049.049 INFO    ] No update needed
[2026-06-19 09:22:52,051.051 INFO    ] Checking for camera pi updates...
[2026-06-19 09:22:52,085.085 INFO    ] 200
[2026-06-19 09:22:52,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:22:52,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:22:52,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:22:52,178.178 INFO    ] No camera update needed
[2026-06-19 09:22:52,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:22:52,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:22:52,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:22:52,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:22:54,233.233 INFO    ] ================================================
[2026-06-19 09:22:54,250.250 INFO    ] Launching Daemon at Fri Jun 19 09:22:54 IST 2026
[2026-06-19 09:22:54,260.260 INFO    ] ================================================
[2026-06-19 09:22:54,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:22:54
[2026-06-19 09:22:55,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:22:55,704.704 INFO    ] Initializing speech engine...
[2026-06-19 09:22:55,722.722 INFO    ] 2026-06-19 09:22:55
[2026-06-19 09:22:55,994.994 INFO    ] 2026-06-19 09:22:55
[2026-06-19 09:22:56,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:22:56,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:22:56,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:22:56,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:22:56,384.384 INFO    ] time= 19/06/2026 09:22:56
[2026-06-19 09:22:56,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:22:56,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:22:56,498.498 INFO    ] No existing commands found in stream
[2026-06-19 09:23:01,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:23:01,511.511 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 09:23:03,054.054 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:23:03,058.058 INFO    ] Checking for system updates...
[2026-06-19 09:23:03,104.104 INFO    ] 200
[2026-06-19 09:23:03,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:03,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:23:03,180.180 INFO    ] No update needed
[2026-06-19 09:23:03,185.185 INFO    ] Checking for camera pi updates...
[2026-06-19 09:23:03,238.238 INFO    ] 200
[2026-06-19 09:23:03,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:03,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:23:03,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:23:03,359.359 INFO    ] No camera update needed
[2026-06-19 09:23:03,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:23:03,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:23:03,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:23:03,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:23:05,417.417 INFO    ] ================================================
[2026-06-19 09:23:05,432.432 INFO    ] Launching Daemon at Fri Jun 19 09:23:05 IST 2026
[2026-06-19 09:23:05,443.443 INFO    ] ================================================
[2026-06-19 09:23:06,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:23:06
[2026-06-19 09:23:06,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:23:06,925.925 INFO    ] Initializing speech engine...
[2026-06-19 09:23:06,945.945 INFO    ] 2026-06-19 09:23:06
[2026-06-19 09:23:07,207.207 INFO    ] 2026-06-19 09:23:07
[2026-06-19 09:23:07,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:23:07,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:23:07,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:23:07,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:23:07,616.616 INFO    ] time= 19/06/2026 09:23:07
[2026-06-19 09:23:07,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:23:07,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:23:07,806.806 INFO    ] No existing commands found in stream
[2026-06-19 09:23:12,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:23:12,840.840 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 09:23:13,874.874 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:23:13,877.877 INFO    ] Checking for system updates...
[2026-06-19 09:23:13,917.917 INFO    ] 200
[2026-06-19 09:23:13,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:13,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:23:13,980.980 INFO    ] No update needed
[2026-06-19 09:23:13,983.983 INFO    ] Checking for camera pi updates...
[2026-06-19 09:23:14,023.023 INFO    ] 200
[2026-06-19 09:23:14,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:14,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:23:14,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:23:14,113.113 INFO    ] No camera update needed
[2026-06-19 09:23:14,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:23:14,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:23:14,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:23:14,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:23:16,171.171 INFO    ] ================================================
[2026-06-19 09:23:16,187.187 INFO    ] Launching Daemon at Fri Jun 19 09:23:16 IST 2026
[2026-06-19 09:23:16,197.197 INFO    ] ================================================
[2026-06-19 09:23:16,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:23:16
[2026-06-19 09:23:17,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:23:17,666.666 INFO    ] Initializing speech engine...
[2026-06-19 09:23:17,675.675 INFO    ] 2026-06-19 09:23:17
[2026-06-19 09:23:17,958.958 INFO    ] 2026-06-19 09:23:17
[2026-06-19 09:23:17,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:23:18,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:23:18,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:23:18,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:23:18,361.361 INFO    ] time= 19/06/2026 09:23:18
[2026-06-19 09:23:18,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:23:18,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:23:18,444.444 INFO    ] No existing commands found in stream
[2026-06-19 09:23:23,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:23:23,478.478 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 09:23:27,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:23:27,779.779 INFO    ] Checking for system updates...
[2026-06-19 09:23:27,816.816 INFO    ] 200
[2026-06-19 09:23:27,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:27,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:23:27,878.878 INFO    ] No update needed
[2026-06-19 09:23:27,880.880 INFO    ] Checking for camera pi updates...
[2026-06-19 09:23:27,916.916 INFO    ] 200
[2026-06-19 09:23:27,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:27,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:23:28,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:23:28,106.106 INFO    ] No camera update needed
[2026-06-19 09:23:28,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:23:28,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:23:28,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:23:28,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:23:30,163.163 INFO    ] ================================================
[2026-06-19 09:23:30,179.179 INFO    ] Launching Daemon at Fri Jun 19 09:23:30 IST 2026
[2026-06-19 09:23:30,190.190 INFO    ] ================================================
[2026-06-19 09:23:30,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:23:30
[2026-06-19 09:23:31,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:23:31,605.605 INFO    ] Initializing speech engine...
[2026-06-19 09:23:31,624.624 INFO    ] 2026-06-19 09:23:31
[2026-06-19 09:23:31,872.872 INFO    ] 2026-06-19 09:23:31
[2026-06-19 09:23:31,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:23:32,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:23:32,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:23:32,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:23:32,382.382 INFO    ] time= 19/06/2026 09:23:32
[2026-06-19 09:23:32,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:23:32,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:23:32,607.607 INFO    ] No existing commands found in stream
[2026-06-19 09:23:37,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:23:37,640.640 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 09:23:41,136.136 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:23:41,139.139 INFO    ] Checking for system updates...
[2026-06-19 09:23:41,176.176 INFO    ] 200
[2026-06-19 09:23:41,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:41,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:23:41,234.234 INFO    ] No update needed
[2026-06-19 09:23:41,237.237 INFO    ] Checking for camera pi updates...
[2026-06-19 09:23:41,274.274 INFO    ] 200
[2026-06-19 09:23:41,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:41,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:23:41,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:23:41,359.359 INFO    ] No camera update needed
[2026-06-19 09:23:41,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:23:41,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:23:41,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:23:41,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:23:43,417.417 INFO    ] ================================================
[2026-06-19 09:23:43,432.432 INFO    ] Launching Daemon at Fri Jun 19 09:23:43 IST 2026
[2026-06-19 09:23:43,443.443 INFO    ] ================================================
[2026-06-19 09:23:44,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:23:44
[2026-06-19 09:23:44,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:23:44,936.936 INFO    ] Initializing speech engine...
[2026-06-19 09:23:44,942.942 INFO    ] 2026-06-19 09:23:44
[2026-06-19 09:23:45,224.224 INFO    ] 2026-06-19 09:23:45
[2026-06-19 09:23:45,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:23:45,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:23:45,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:23:45,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:23:45,762.762 INFO    ] time= 19/06/2026 09:23:45
[2026-06-19 09:23:45,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:23:45,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:23:45,918.918 INFO    ] No existing commands found in stream
[2026-06-19 09:23:50,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:23:50,950.950 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 09:23:51,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:23:51,520.520 INFO    ] Checking for system updates...
[2026-06-19 09:23:51,557.557 INFO    ] 200
[2026-06-19 09:23:51,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:51,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:23:51,617.617 INFO    ] No update needed
[2026-06-19 09:23:51,619.619 INFO    ] Checking for camera pi updates...
[2026-06-19 09:23:51,656.656 INFO    ] 200
[2026-06-19 09:23:51,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:23:51,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:23:51,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:23:51,747.747 INFO    ] No camera update needed
[2026-06-19 09:23:51,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:23:51,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:23:51,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:23:51,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:23:53,804.804 INFO    ] ================================================
[2026-06-19 09:23:53,820.820 INFO    ] Launching Daemon at Fri Jun 19 09:23:53 IST 2026
[2026-06-19 09:23:53,831.831 INFO    ] ================================================
[2026-06-19 09:23:54,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:23:54
[2026-06-19 09:23:54,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:23:55,226.226 INFO    ] Initializing speech engine...
[2026-06-19 09:23:55,234.234 INFO    ] 2026-06-19 09:23:55
[2026-06-19 09:23:55,508.508 INFO    ] 2026-06-19 09:23:55
[2026-06-19 09:23:55,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:23:55,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:23:55,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:23:55,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:23:55,985.985 INFO    ] time= 19/06/2026 09:23:55
[2026-06-19 09:23:56,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:23:56,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:23:56,194.194 INFO    ] No existing commands found in stream
[2026-06-19 09:24:01,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:24:01,229.229 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 09:24:02,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:24:02,428.428 INFO    ] Checking for system updates...
[2026-06-19 09:24:02,470.470 INFO    ] 200
[2026-06-19 09:24:02,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:02,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:24:02,541.541 INFO    ] No update needed
[2026-06-19 09:24:02,544.544 INFO    ] Checking for camera pi updates...
[2026-06-19 09:24:02,593.593 INFO    ] 200
[2026-06-19 09:24:02,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:02,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:24:02,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:24:02,686.686 INFO    ] No camera update needed
[2026-06-19 09:24:02,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:24:02,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:24:02,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:24:02,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:24:04,747.747 INFO    ] ================================================
[2026-06-19 09:24:04,762.762 INFO    ] Launching Daemon at Fri Jun 19 09:24:04 IST 2026
[2026-06-19 09:24:04,773.773 INFO    ] ================================================
[2026-06-19 09:24:05,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:24:05
[2026-06-19 09:24:05,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:24:06,234.234 INFO    ] Initializing speech engine...
[2026-06-19 09:24:06,244.244 INFO    ] 2026-06-19 09:24:06
[2026-06-19 09:24:06,516.516 INFO    ] 2026-06-19 09:24:06
[2026-06-19 09:24:06,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:24:06,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:24:06,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:24:06,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:24:07,055.055 INFO    ] time= 19/06/2026 09:24:06
[2026-06-19 09:24:07,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:24:07,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:24:07,292.292 INFO    ] No existing commands found in stream
[2026-06-19 09:24:12,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:24:12,331.331 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 09:24:13,746.746 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:24:13,748.748 INFO    ] Checking for system updates...
[2026-06-19 09:24:13,786.786 INFO    ] 200
[2026-06-19 09:24:13,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:13,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:24:13,844.844 INFO    ] No update needed
[2026-06-19 09:24:13,847.847 INFO    ] Checking for camera pi updates...
[2026-06-19 09:24:13,882.882 INFO    ] 200
[2026-06-19 09:24:13,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:13,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:24:13,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:24:13,980.980 INFO    ] No camera update needed
[2026-06-19 09:24:13,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:24:13,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:24:13,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:24:13,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:24:16,037.037 INFO    ] ================================================
[2026-06-19 09:24:16,052.052 INFO    ] Launching Daemon at Fri Jun 19 09:24:16 IST 2026
[2026-06-19 09:24:16,063.063 INFO    ] ================================================
[2026-06-19 09:24:16,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:24:16
[2026-06-19 09:24:17,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:24:17,490.490 INFO    ] Initializing speech engine...
[2026-06-19 09:24:17,499.499 INFO    ] 2026-06-19 09:24:17
[2026-06-19 09:24:17,748.748 INFO    ] 2026-06-19 09:24:17
[2026-06-19 09:24:17,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:24:18,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:24:18,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:24:18,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:24:18,221.221 INFO    ] time= 19/06/2026 09:24:18
[2026-06-19 09:24:18,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:24:18,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:24:18,451.451 INFO    ] No existing commands found in stream
[2026-06-19 09:24:23,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:24:23,484.484 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 09:24:24,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:24:24,896.896 INFO    ] Checking for system updates...
[2026-06-19 09:24:24,934.934 INFO    ] 200
[2026-06-19 09:24:24,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:24,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:24:24,999.999 INFO    ] No update needed
[2026-06-19 09:24:25,002.002 INFO    ] Checking for camera pi updates...
[2026-06-19 09:24:25,038.038 INFO    ] 200
[2026-06-19 09:24:25,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:25,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:24:25,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:24:25,131.131 INFO    ] No camera update needed
[2026-06-19 09:24:25,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:24:25,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:24:25,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:24:25,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:24:27,191.191 INFO    ] ================================================
[2026-06-19 09:24:27,212.212 INFO    ] Launching Daemon at Fri Jun 19 09:24:27 IST 2026
[2026-06-19 09:24:27,223.223 INFO    ] ================================================
[2026-06-19 09:24:27,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:24:27
[2026-06-19 09:24:28,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:24:28,682.682 INFO    ] Initializing speech engine...
[2026-06-19 09:24:28,687.687 INFO    ] 2026-06-19 09:24:28
[2026-06-19 09:24:28,936.936 INFO    ] 2026-06-19 09:24:28
[2026-06-19 09:24:28,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:24:29,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:24:29,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:24:29,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:24:29,414.414 INFO    ] time= 19/06/2026 09:24:29
[2026-06-19 09:24:29,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:24:29,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:24:29,633.633 INFO    ] No existing commands found in stream
[2026-06-19 09:24:34,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:24:34,662.662 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 09:24:36,326.326 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:24:36,329.329 INFO    ] Checking for system updates...
[2026-06-19 09:24:36,366.366 INFO    ] 200
[2026-06-19 09:24:36,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:36,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:24:36,424.424 INFO    ] No update needed
[2026-06-19 09:24:36,427.427 INFO    ] Checking for camera pi updates...
[2026-06-19 09:24:36,461.461 INFO    ] 200
[2026-06-19 09:24:36,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:36,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:24:36,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:24:36,548.548 INFO    ] No camera update needed
[2026-06-19 09:24:36,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:24:36,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:24:36,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:24:36,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:24:38,606.606 INFO    ] ================================================
[2026-06-19 09:24:38,621.621 INFO    ] Launching Daemon at Fri Jun 19 09:24:38 IST 2026
[2026-06-19 09:24:38,632.632 INFO    ] ================================================
[2026-06-19 09:24:39,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:24:39
[2026-06-19 09:24:39,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:24:40,196.196 INFO    ] Initializing speech engine...
[2026-06-19 09:24:40,210.210 INFO    ] 2026-06-19 09:24:40
[2026-06-19 09:24:40,485.485 INFO    ] 2026-06-19 09:24:40
[2026-06-19 09:24:40,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:24:40,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:24:40,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:24:40,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:24:41,021.021 INFO    ] time= 19/06/2026 09:24:40
[2026-06-19 09:24:41,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:24:41,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:24:41,201.201 INFO    ] No existing commands found in stream
[2026-06-19 09:24:46,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:24:46,241.241 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 09:24:50,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:24:50,052.052 INFO    ] Checking for system updates...
[2026-06-19 09:24:50,089.089 INFO    ] 200
[2026-06-19 09:24:50,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:50,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:24:50,148.148 INFO    ] No update needed
[2026-06-19 09:24:50,151.151 INFO    ] Checking for camera pi updates...
[2026-06-19 09:24:50,186.186 INFO    ] 200
[2026-06-19 09:24:50,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:24:50,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:24:50,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:24:50,271.271 INFO    ] No camera update needed
[2026-06-19 09:24:50,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:24:50,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:24:50,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:24:50,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:24:52,326.326 INFO    ] ================================================
[2026-06-19 09:24:52,345.345 INFO    ] Launching Daemon at Fri Jun 19 09:24:52 IST 2026
[2026-06-19 09:24:52,360.360 INFO    ] ================================================
[2026-06-19 09:24:52,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:24:52
[2026-06-19 09:24:53,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:24:53,777.777 INFO    ] Initializing speech engine...
[2026-06-19 09:24:53,784.784 INFO    ] 2026-06-19 09:24:53
[2026-06-19 09:24:54,075.075 INFO    ] 2026-06-19 09:24:54
[2026-06-19 09:24:54,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:24:54,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:24:54,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:24:54,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:24:54,450.450 INFO    ] time= 19/06/2026 09:24:54
[2026-06-19 09:24:54,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:24:54,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:24:54,573.573 INFO    ] No existing commands found in stream
[2026-06-19 09:24:59,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:24:59,589.589 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 09:25:03,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:25:03,759.759 INFO    ] Checking for system updates...
[2026-06-19 09:25:03,796.796 INFO    ] 200
[2026-06-19 09:25:03,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:03,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:25:03,853.853 INFO    ] No update needed
[2026-06-19 09:25:03,855.855 INFO    ] Checking for camera pi updates...
[2026-06-19 09:25:03,890.890 INFO    ] 200
[2026-06-19 09:25:03,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:03,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:25:03,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:25:03,989.989 INFO    ] No camera update needed
[2026-06-19 09:25:03,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:25:03,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:25:03,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:25:04,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:25:06,048.048 INFO    ] ================================================
[2026-06-19 09:25:06,065.065 INFO    ] Launching Daemon at Fri Jun 19 09:25:06 IST 2026
[2026-06-19 09:25:06,077.077 INFO    ] ================================================
[2026-06-19 09:25:06,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:25:06
[2026-06-19 09:25:07,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:25:07,595.595 INFO    ] Initializing speech engine...
[2026-06-19 09:25:07,621.621 INFO    ] 2026-06-19 09:25:07
[2026-06-19 09:25:07,896.896 INFO    ] 2026-06-19 09:25:07
[2026-06-19 09:25:07,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:25:08,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:25:08,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:25:08,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:25:08,316.316 INFO    ] time= 19/06/2026 09:25:08
[2026-06-19 09:25:08,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:25:08,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:25:08,504.504 INFO    ] No existing commands found in stream
[2026-06-19 09:25:13,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:25:13,538.538 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 09:25:16,081.081 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:25:16,084.084 INFO    ] Checking for system updates...
[2026-06-19 09:25:16,121.121 INFO    ] 200
[2026-06-19 09:25:16,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:16,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:25:16,181.181 INFO    ] No update needed
[2026-06-19 09:25:16,183.183 INFO    ] Checking for camera pi updates...
[2026-06-19 09:25:16,222.222 INFO    ] 200
[2026-06-19 09:25:16,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:16,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:25:16,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:25:16,311.311 INFO    ] No camera update needed
[2026-06-19 09:25:16,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:25:16,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:25:16,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:25:16,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:25:18,370.370 INFO    ] ================================================
[2026-06-19 09:25:18,385.385 INFO    ] Launching Daemon at Fri Jun 19 09:25:18 IST 2026
[2026-06-19 09:25:18,396.396 INFO    ] ================================================
[2026-06-19 09:25:18,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:25:18
[2026-06-19 09:25:19,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:25:19,802.802 INFO    ] Initializing speech engine...
[2026-06-19 09:25:19,825.825 INFO    ] 2026-06-19 09:25:19
[2026-06-19 09:25:20,081.081 INFO    ] 2026-06-19 09:25:20
[2026-06-19 09:25:20,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:25:20,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:25:20,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:25:20,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:25:20,579.579 INFO    ] time= 19/06/2026 09:25:20
[2026-06-19 09:25:20,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:25:20,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:25:20,711.711 INFO    ] No existing commands found in stream
[2026-06-19 09:25:25,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:25:25,726.726 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 09:25:28,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:25:28,538.538 INFO    ] Checking for system updates...
[2026-06-19 09:25:28,574.574 INFO    ] 200
[2026-06-19 09:25:28,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:28,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:25:28,632.632 INFO    ] No update needed
[2026-06-19 09:25:28,635.635 INFO    ] Checking for camera pi updates...
[2026-06-19 09:25:28,668.668 INFO    ] 200
[2026-06-19 09:25:28,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:28,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:25:28,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:25:28,757.757 INFO    ] No camera update needed
[2026-06-19 09:25:28,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:25:28,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:25:28,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:25:28,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:25:30,814.814 INFO    ] ================================================
[2026-06-19 09:25:30,829.829 INFO    ] Launching Daemon at Fri Jun 19 09:25:30 IST 2026
[2026-06-19 09:25:30,839.839 INFO    ] ================================================
[2026-06-19 09:25:31,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:25:31
[2026-06-19 09:25:32,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:25:32,337.337 INFO    ] Initializing speech engine...
[2026-06-19 09:25:32,357.357 INFO    ] 2026-06-19 09:25:32
[2026-06-19 09:25:32,656.656 INFO    ] 2026-06-19 09:25:32
[2026-06-19 09:25:32,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:25:32,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:25:32,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:25:33,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:25:33,061.061 INFO    ] time= 19/06/2026 09:25:33
[2026-06-19 09:25:33,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:25:33,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:25:33,189.189 INFO    ] No existing commands found in stream
[2026-06-19 09:25:38,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:25:38,220.220 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 09:25:39,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:25:39,777.777 INFO    ] Checking for system updates...
[2026-06-19 09:25:39,817.817 INFO    ] 200
[2026-06-19 09:25:39,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:39,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:25:39,874.874 INFO    ] No update needed
[2026-06-19 09:25:39,876.876 INFO    ] Checking for camera pi updates...
[2026-06-19 09:25:39,910.910 INFO    ] 200
[2026-06-19 09:25:39,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:39,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:25:40,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:25:40,009.009 INFO    ] No camera update needed
[2026-06-19 09:25:40,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:25:40,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:25:40,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:25:40,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:25:42,064.064 INFO    ] ================================================
[2026-06-19 09:25:42,080.080 INFO    ] Launching Daemon at Fri Jun 19 09:25:42 IST 2026
[2026-06-19 09:25:42,091.091 INFO    ] ================================================
[2026-06-19 09:25:42,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:25:42
[2026-06-19 09:25:43,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:25:43,549.549 INFO    ] Initializing speech engine...
[2026-06-19 09:25:43,556.556 INFO    ] 2026-06-19 09:25:43
[2026-06-19 09:25:43,816.816 INFO    ] 2026-06-19 09:25:43
[2026-06-19 09:25:43,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:25:44,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:25:44,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:25:44,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:25:44,316.316 INFO    ] time= 19/06/2026 09:25:44
[2026-06-19 09:25:44,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:25:44,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:25:44,515.515 INFO    ] No existing commands found in stream
[2026-06-19 09:25:49,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:25:49,532.532 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 09:25:50,156.156 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:25:50,159.159 INFO    ] Checking for system updates...
[2026-06-19 09:25:50,195.195 INFO    ] 200
[2026-06-19 09:25:50,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:50,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:25:50,253.253 INFO    ] No update needed
[2026-06-19 09:25:50,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 09:25:50,289.289 INFO    ] 200
[2026-06-19 09:25:50,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:25:50,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:25:50,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:25:50,385.385 INFO    ] No camera update needed
[2026-06-19 09:25:50,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:25:50,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:25:50,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:25:50,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:25:52,443.443 INFO    ] ================================================
[2026-06-19 09:25:52,458.458 INFO    ] Launching Daemon at Fri Jun 19 09:25:52 IST 2026
[2026-06-19 09:25:52,469.469 INFO    ] ================================================
[2026-06-19 09:25:53,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:25:53
[2026-06-19 09:25:53,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:25:53,887.887 INFO    ] Initializing speech engine...
[2026-06-19 09:25:53,900.900 INFO    ] 2026-06-19 09:25:53
[2026-06-19 09:25:54,174.174 INFO    ] 2026-06-19 09:25:54
[2026-06-19 09:25:54,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:25:54,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:25:54,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:25:54,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:25:54,688.688 INFO    ] time= 19/06/2026 09:25:54
[2026-06-19 09:25:54,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:25:54,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:25:54,897.897 INFO    ] No existing commands found in stream
[2026-06-19 09:25:59,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:25:59,922.922 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 09:26:01,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:26:01,573.573 INFO    ] Checking for system updates...
[2026-06-19 09:26:01,610.610 INFO    ] 200
[2026-06-19 09:26:01,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:01,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:26:01,673.673 INFO    ] No update needed
[2026-06-19 09:26:01,676.676 INFO    ] Checking for camera pi updates...
[2026-06-19 09:26:01,710.710 INFO    ] 200
[2026-06-19 09:26:01,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:01,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:26:01,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:26:01,786.786 INFO    ] No camera update needed
[2026-06-19 09:26:01,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:26:01,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:26:01,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:26:01,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:26:03,843.843 INFO    ] ================================================
[2026-06-19 09:26:03,858.858 INFO    ] Launching Daemon at Fri Jun 19 09:26:03 IST 2026
[2026-06-19 09:26:03,869.869 INFO    ] ================================================
[2026-06-19 09:26:04,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:26:04
[2026-06-19 09:26:05,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:26:05,271.271 INFO    ] Initializing speech engine...
[2026-06-19 09:26:05,284.284 INFO    ] 2026-06-19 09:26:05
[2026-06-19 09:26:05,549.549 INFO    ] 2026-06-19 09:26:05
[2026-06-19 09:26:05,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:26:05,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:26:05,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:26:05,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:26:06,050.050 INFO    ] time= 19/06/2026 09:26:05
[2026-06-19 09:26:06,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:26:06,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:26:06,269.269 INFO    ] No existing commands found in stream
[2026-06-19 09:26:11,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:26:11,287.287 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 09:26:15,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:26:15,233.233 INFO    ] Checking for system updates...
[2026-06-19 09:26:15,270.270 INFO    ] 200
[2026-06-19 09:26:15,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:15,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:26:15,328.328 INFO    ] No update needed
[2026-06-19 09:26:15,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 09:26:15,368.368 INFO    ] 200
[2026-06-19 09:26:15,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:15,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:26:15,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:26:15,457.457 INFO    ] No camera update needed
[2026-06-19 09:26:15,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:26:15,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:26:15,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:26:15,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:26:17,515.515 INFO    ] ================================================
[2026-06-19 09:26:17,530.530 INFO    ] Launching Daemon at Fri Jun 19 09:26:17 IST 2026
[2026-06-19 09:26:17,541.541 INFO    ] ================================================
[2026-06-19 09:26:18,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:26:18
[2026-06-19 09:26:18,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:26:19,166.166 INFO    ] Initializing speech engine...
[2026-06-19 09:26:19,174.174 INFO    ] 2026-06-19 09:26:19
[2026-06-19 09:26:19,454.454 INFO    ] 2026-06-19 09:26:19
[2026-06-19 09:26:19,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:26:19,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:26:19,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:26:19,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:26:19,931.931 INFO    ] time= 19/06/2026 09:26:19
[2026-06-19 09:26:19,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:26:20,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:26:20,069.069 INFO    ] No existing commands found in stream
[2026-06-19 09:26:25,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:26:25,085.085 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 09:26:26,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:26:26,528.528 INFO    ] Checking for system updates...
[2026-06-19 09:26:26,564.564 INFO    ] 200
[2026-06-19 09:26:26,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:26,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:26:26,623.623 INFO    ] No update needed
[2026-06-19 09:26:26,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 09:26:26,662.662 INFO    ] 200
[2026-06-19 09:26:26,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:26,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:26:26,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:26:26,756.756 INFO    ] No camera update needed
[2026-06-19 09:26:26,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:26:26,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:26:26,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:26:26,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:26:28,814.814 INFO    ] ================================================
[2026-06-19 09:26:28,829.829 INFO    ] Launching Daemon at Fri Jun 19 09:26:28 IST 2026
[2026-06-19 09:26:28,840.840 INFO    ] ================================================
[2026-06-19 09:26:29,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:26:29
[2026-06-19 09:26:29,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:26:30,238.238 INFO    ] Initializing speech engine...
[2026-06-19 09:26:30,244.244 INFO    ] 2026-06-19 09:26:30
[2026-06-19 09:26:30,537.537 INFO    ] 2026-06-19 09:26:30
[2026-06-19 09:26:30,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:26:30,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:26:30,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:26:30,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:26:30,943.943 INFO    ] time= 19/06/2026 09:26:30
[2026-06-19 09:26:30,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:26:30,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:26:31,094.094 INFO    ] No existing commands found in stream
[2026-06-19 09:26:36,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:26:36,127.127 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 09:26:37,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:26:37,604.604 INFO    ] Checking for system updates...
[2026-06-19 09:26:37,641.641 INFO    ] 200
[2026-06-19 09:26:37,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:37,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:26:37,701.701 INFO    ] No update needed
[2026-06-19 09:26:37,704.704 INFO    ] Checking for camera pi updates...
[2026-06-19 09:26:37,745.745 INFO    ] 200
[2026-06-19 09:26:37,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:37,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:26:37,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:26:37,833.833 INFO    ] No camera update needed
[2026-06-19 09:26:37,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:26:37,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:26:37,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:26:37,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:26:39,891.891 INFO    ] ================================================
[2026-06-19 09:26:39,907.907 INFO    ] Launching Daemon at Fri Jun 19 09:26:39 IST 2026
[2026-06-19 09:26:39,917.917 INFO    ] ================================================
[2026-06-19 09:26:40,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:26:40
[2026-06-19 09:26:41,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:26:41,344.344 INFO    ] Initializing speech engine...
[2026-06-19 09:26:41,357.357 INFO    ] 2026-06-19 09:26:41
[2026-06-19 09:26:41,640.640 INFO    ] 2026-06-19 09:26:41
[2026-06-19 09:26:41,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:26:41,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:26:41,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:26:42,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:26:42,048.048 INFO    ] time= 19/06/2026 09:26:42
[2026-06-19 09:26:42,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:26:42,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:26:42,136.136 INFO    ] No existing commands found in stream
[2026-06-19 09:26:47,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:26:47,151.151 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 09:26:48,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:26:48,843.843 INFO    ] Checking for system updates...
[2026-06-19 09:26:48,883.883 INFO    ] 200
[2026-06-19 09:26:48,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:48,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:26:48,942.942 INFO    ] No update needed
[2026-06-19 09:26:48,945.945 INFO    ] Checking for camera pi updates...
[2026-06-19 09:26:48,979.979 INFO    ] 200
[2026-06-19 09:26:48,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:26:49,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:26:49,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:26:49,054.054 INFO    ] No camera update needed
[2026-06-19 09:26:49,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:26:49,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:26:49,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:26:49,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:26:51,111.111 INFO    ] ================================================
[2026-06-19 09:26:51,126.126 INFO    ] Launching Daemon at Fri Jun 19 09:26:51 IST 2026
[2026-06-19 09:26:51,137.137 INFO    ] ================================================
[2026-06-19 09:26:51,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:26:51
[2026-06-19 09:26:52,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:26:52,607.607 INFO    ] Initializing speech engine...
[2026-06-19 09:26:52,617.617 INFO    ] 2026-06-19 09:26:52
[2026-06-19 09:26:52,878.878 INFO    ] 2026-06-19 09:26:52
[2026-06-19 09:26:52,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:26:53,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:26:53,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:26:53,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:26:53,342.342 INFO    ] time= 19/06/2026 09:26:53
[2026-06-19 09:26:53,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:26:53,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:26:53,499.499 INFO    ] No existing commands found in stream
[2026-06-19 09:26:58,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:26:58,538.538 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 09:27:00,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:27:00,416.416 INFO    ] Checking for system updates...
[2026-06-19 09:27:00,452.452 INFO    ] 200
[2026-06-19 09:27:00,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:00,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:27:00,516.516 INFO    ] No update needed
[2026-06-19 09:27:00,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 09:27:00,552.552 INFO    ] 200
[2026-06-19 09:27:00,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:00,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:27:00,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:27:00,652.652 INFO    ] No camera update needed
[2026-06-19 09:27:00,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:27:00,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:27:00,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:27:00,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:27:02,715.715 INFO    ] ================================================
[2026-06-19 09:27:02,732.732 INFO    ] Launching Daemon at Fri Jun 19 09:27:02 IST 2026
[2026-06-19 09:27:02,748.748 INFO    ] ================================================
[2026-06-19 09:27:03,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:27:03
[2026-06-19 09:27:04,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:27:04,278.278 INFO    ] Initializing speech engine...
[2026-06-19 09:27:04,294.294 INFO    ] 2026-06-19 09:27:04
[2026-06-19 09:27:04,549.549 INFO    ] 2026-06-19 09:27:04
[2026-06-19 09:27:04,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:27:04,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:27:04,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:27:04,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:27:05,027.027 INFO    ] time= 19/06/2026 09:27:04
[2026-06-19 09:27:05,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:27:05,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:27:05,227.227 INFO    ] No existing commands found in stream
[2026-06-19 09:27:10,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:27:10,257.257 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 09:27:12,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:27:12,122.122 INFO    ] Checking for system updates...
[2026-06-19 09:27:12,159.159 INFO    ] 200
[2026-06-19 09:27:12,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:12,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:27:12,230.230 INFO    ] No update needed
[2026-06-19 09:27:12,232.232 INFO    ] Checking for camera pi updates...
[2026-06-19 09:27:12,266.266 INFO    ] 200
[2026-06-19 09:27:12,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:12,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:27:12,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:27:12,351.351 INFO    ] No camera update needed
[2026-06-19 09:27:12,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:27:12,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:27:12,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:27:12,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:27:14,410.410 INFO    ] ================================================
[2026-06-19 09:27:14,425.425 INFO    ] Launching Daemon at Fri Jun 19 09:27:14 IST 2026
[2026-06-19 09:27:14,435.435 INFO    ] ================================================
[2026-06-19 09:27:15,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:27:15
[2026-06-19 09:27:15,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:27:15,893.893 INFO    ] Initializing speech engine...
[2026-06-19 09:27:15,904.904 INFO    ] 2026-06-19 09:27:15
[2026-06-19 09:27:16,164.164 INFO    ] 2026-06-19 09:27:16
[2026-06-19 09:27:16,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:27:16,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:27:16,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:27:16,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:27:16,632.632 INFO    ] time= 19/06/2026 09:27:16
[2026-06-19 09:27:16,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:27:16,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:27:16,818.818 INFO    ] No existing commands found in stream
[2026-06-19 09:27:21,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:27:21,832.832 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 09:27:24,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:27:24,144.144 INFO    ] Checking for system updates...
[2026-06-19 09:27:24,180.180 INFO    ] 200
[2026-06-19 09:27:24,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:24,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:27:24,238.238 INFO    ] No update needed
[2026-06-19 09:27:24,240.240 INFO    ] Checking for camera pi updates...
[2026-06-19 09:27:24,278.278 INFO    ] 200
[2026-06-19 09:27:24,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:24,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:27:24,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:27:24,366.366 INFO    ] No camera update needed
[2026-06-19 09:27:24,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:27:24,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:27:24,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:27:24,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:27:26,421.421 INFO    ] ================================================
[2026-06-19 09:27:26,436.436 INFO    ] Launching Daemon at Fri Jun 19 09:27:26 IST 2026
[2026-06-19 09:27:26,446.446 INFO    ] ================================================
[2026-06-19 09:27:27,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:27:27
[2026-06-19 09:27:27,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:27:27,899.899 INFO    ] Initializing speech engine...
[2026-06-19 09:27:27,910.910 INFO    ] 2026-06-19 09:27:27
[2026-06-19 09:27:28,170.170 INFO    ] 2026-06-19 09:27:28
[2026-06-19 09:27:28,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:27:28,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:27:28,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:27:28,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:27:28,648.648 INFO    ] time= 19/06/2026 09:27:28
[2026-06-19 09:27:28,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:27:28,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:27:28,778.778 INFO    ] No existing commands found in stream
[2026-06-19 09:27:33,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:27:33,807.807 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 09:27:38,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:27:38,018.018 INFO    ] Checking for system updates...
[2026-06-19 09:27:38,057.057 INFO    ] 200
[2026-06-19 09:27:38,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:38,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:27:38,119.119 INFO    ] No update needed
[2026-06-19 09:27:38,121.121 INFO    ] Checking for camera pi updates...
[2026-06-19 09:27:38,160.160 INFO    ] 200
[2026-06-19 09:27:38,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:38,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:27:38,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:27:38,355.355 INFO    ] No camera update needed
[2026-06-19 09:27:38,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:27:38,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:27:38,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:27:38,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:27:40,411.411 INFO    ] ================================================
[2026-06-19 09:27:40,426.426 INFO    ] Launching Daemon at Fri Jun 19 09:27:40 IST 2026
[2026-06-19 09:27:40,436.436 INFO    ] ================================================
[2026-06-19 09:27:41,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:27:41
[2026-06-19 09:27:41,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:27:41,884.884 INFO    ] Initializing speech engine...
[2026-06-19 09:27:41,909.909 INFO    ] 2026-06-19 09:27:41
[2026-06-19 09:27:42,178.178 INFO    ] 2026-06-19 09:27:42
[2026-06-19 09:27:42,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:27:42,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:27:42,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:27:42,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:27:42,545.545 INFO    ] time= 19/06/2026 09:27:42
[2026-06-19 09:27:42,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:27:42,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:27:42,666.666 INFO    ] No existing commands found in stream
[2026-06-19 09:27:47,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:27:47,680.680 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 09:27:48,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:27:48,680.680 INFO    ] Checking for system updates...
[2026-06-19 09:27:48,717.717 INFO    ] 200
[2026-06-19 09:27:48,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:48,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:27:48,774.774 INFO    ] No update needed
[2026-06-19 09:27:48,776.776 INFO    ] Checking for camera pi updates...
[2026-06-19 09:27:48,810.810 INFO    ] 200
[2026-06-19 09:27:48,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:27:48,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:27:48,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:27:48,882.882 INFO    ] No camera update needed
[2026-06-19 09:27:48,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:27:48,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:27:48,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:27:48,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:27:50,941.941 INFO    ] ================================================
[2026-06-19 09:27:50,957.957 INFO    ] Launching Daemon at Fri Jun 19 09:27:50 IST 2026
[2026-06-19 09:27:50,967.967 INFO    ] ================================================
[2026-06-19 09:27:51,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:27:51
[2026-06-19 09:27:52,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:27:52,410.410 INFO    ] Initializing speech engine...
[2026-06-19 09:27:52,423.423 INFO    ] 2026-06-19 09:27:52
[2026-06-19 09:27:52,701.701 INFO    ] 2026-06-19 09:27:52
[2026-06-19 09:27:52,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:27:52,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:27:52,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:27:53,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:27:53,083.083 INFO    ] time= 19/06/2026 09:27:53
[2026-06-19 09:27:53,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:27:53,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:27:53,181.181 INFO    ] No existing commands found in stream
[2026-06-19 09:27:58,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:27:58,199.199 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 09:28:02,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:28:02,038.038 INFO    ] Checking for system updates...
[2026-06-19 09:28:02,088.088 INFO    ] 200
[2026-06-19 09:28:02,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:02,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:28:02,156.156 INFO    ] No update needed
[2026-06-19 09:28:02,159.159 INFO    ] Checking for camera pi updates...
[2026-06-19 09:28:02,201.201 INFO    ] 200
[2026-06-19 09:28:02,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:02,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:28:02,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:28:02,285.285 INFO    ] No camera update needed
[2026-06-19 09:28:02,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:28:02,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:28:02,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:28:02,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:28:04,350.350 INFO    ] ================================================
[2026-06-19 09:28:04,365.365 INFO    ] Launching Daemon at Fri Jun 19 09:28:04 IST 2026
[2026-06-19 09:28:04,376.376 INFO    ] ================================================
[2026-06-19 09:28:04,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:28:04
[2026-06-19 09:28:05,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:28:05,841.841 INFO    ] Initializing speech engine...
[2026-06-19 09:28:05,847.847 INFO    ] 2026-06-19 09:28:05
[2026-06-19 09:28:06,108.108 INFO    ] 2026-06-19 09:28:06
[2026-06-19 09:28:06,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:28:06,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:28:06,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:28:06,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:28:06,592.592 INFO    ] time= 19/06/2026 09:28:06
[2026-06-19 09:28:06,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:28:06,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:28:06,745.745 INFO    ] No existing commands found in stream
[2026-06-19 09:28:11,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:28:11,758.758 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 09:28:12,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:28:12,501.501 INFO    ] Checking for system updates...
[2026-06-19 09:28:12,540.540 INFO    ] 200
[2026-06-19 09:28:12,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:12,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:28:12,598.598 INFO    ] No update needed
[2026-06-19 09:28:12,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 09:28:12,634.634 INFO    ] 200
[2026-06-19 09:28:12,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:12,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:28:12,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:28:12,728.728 INFO    ] No camera update needed
[2026-06-19 09:28:12,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:28:12,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:28:12,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:28:12,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:28:14,790.790 INFO    ] ================================================
[2026-06-19 09:28:14,804.804 INFO    ] Launching Daemon at Fri Jun 19 09:28:14 IST 2026
[2026-06-19 09:28:14,815.815 INFO    ] ================================================
[2026-06-19 09:28:15,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:28:15
[2026-06-19 09:28:15,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:28:16,233.233 INFO    ] Initializing speech engine...
[2026-06-19 09:28:16,246.246 INFO    ] 2026-06-19 09:28:16
[2026-06-19 09:28:16,528.528 INFO    ] 2026-06-19 09:28:16
[2026-06-19 09:28:16,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:28:16,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:28:16,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:28:16,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:28:16,937.937 INFO    ] time= 19/06/2026 09:28:16
[2026-06-19 09:28:16,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:28:16,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:28:17,020.020 INFO    ] No existing commands found in stream
[2026-06-19 09:28:22,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:28:22,035.035 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 09:28:22,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:28:22,703.703 INFO    ] Checking for system updates...
[2026-06-19 09:28:22,739.739 INFO    ] 200
[2026-06-19 09:28:22,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:22,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:28:22,798.798 INFO    ] No update needed
[2026-06-19 09:28:22,800.800 INFO    ] Checking for camera pi updates...
[2026-06-19 09:28:22,834.834 INFO    ] 200
[2026-06-19 09:28:22,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:22,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:28:22,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:28:22,922.922 INFO    ] No camera update needed
[2026-06-19 09:28:22,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:28:22,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:28:22,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:28:22,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:28:24,977.977 INFO    ] ================================================
[2026-06-19 09:28:24,992.992 INFO    ] Launching Daemon at Fri Jun 19 09:28:24 IST 2026
[2026-06-19 09:28:25,003.003 INFO    ] ================================================
[2026-06-19 09:28:25,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:28:25
[2026-06-19 09:28:26,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:28:26,426.426 INFO    ] Initializing speech engine...
[2026-06-19 09:28:26,436.436 INFO    ] 2026-06-19 09:28:26
[2026-06-19 09:28:26,694.694 INFO    ] 2026-06-19 09:28:26
[2026-06-19 09:28:26,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:28:26,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:28:26,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:28:27,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:28:27,233.233 INFO    ] time= 19/06/2026 09:28:27
[2026-06-19 09:28:27,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:28:27,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:28:27,372.372 INFO    ] No existing commands found in stream
[2026-06-19 09:28:32,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:28:32,399.399 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 09:28:33,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:28:33,708.708 INFO    ] Checking for system updates...
[2026-06-19 09:28:33,743.743 INFO    ] 200
[2026-06-19 09:28:33,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:33,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:28:33,807.807 INFO    ] No update needed
[2026-06-19 09:28:33,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 09:28:33,843.843 INFO    ] 200
[2026-06-19 09:28:33,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:33,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:28:33,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:28:33,926.926 INFO    ] No camera update needed
[2026-06-19 09:28:33,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:28:33,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:28:33,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:28:33,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:28:35,981.981 INFO    ] ================================================
[2026-06-19 09:28:36,997.997 INFO    ] Launching Daemon at Fri Jun 19 09:28:35 IST 2026
[2026-06-19 09:28:36,007.007 INFO    ] ================================================
[2026-06-19 09:28:36,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:28:36
[2026-06-19 09:28:37,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:28:37,461.461 INFO    ] Initializing speech engine...
[2026-06-19 09:28:37,470.470 INFO    ] 2026-06-19 09:28:37
[2026-06-19 09:28:37,730.730 INFO    ] 2026-06-19 09:28:37
[2026-06-19 09:28:37,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:28:38,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:28:38,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:28:38,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:28:38,167.167 INFO    ] time= 19/06/2026 09:28:38
[2026-06-19 09:28:38,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:28:38,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:28:38,333.333 INFO    ] No existing commands found in stream
[2026-06-19 09:28:43,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:28:43,347.347 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 09:28:47,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:28:47,439.439 INFO    ] Checking for system updates...
[2026-06-19 09:28:47,479.479 INFO    ] 200
[2026-06-19 09:28:47,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:47,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:28:47,542.542 INFO    ] No update needed
[2026-06-19 09:28:47,544.544 INFO    ] Checking for camera pi updates...
[2026-06-19 09:28:47,579.579 INFO    ] 200
[2026-06-19 09:28:47,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:47,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:28:47,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:28:47,653.653 INFO    ] No camera update needed
[2026-06-19 09:28:47,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:28:47,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:28:47,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:28:47,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:28:49,712.712 INFO    ] ================================================
[2026-06-19 09:28:49,727.727 INFO    ] Launching Daemon at Fri Jun 19 09:28:49 IST 2026
[2026-06-19 09:28:49,738.738 INFO    ] ================================================
[2026-06-19 09:28:50,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:28:50
[2026-06-19 09:28:50,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:28:51,199.199 INFO    ] Initializing speech engine...
[2026-06-19 09:28:51,208.208 INFO    ] 2026-06-19 09:28:51
[2026-06-19 09:28:51,469.469 INFO    ] 2026-06-19 09:28:51
[2026-06-19 09:28:51,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:28:51,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:28:51,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:28:51,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:28:51,947.947 INFO    ] time= 19/06/2026 09:28:51
[2026-06-19 09:28:51,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:28:52,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:28:52,131.131 INFO    ] No existing commands found in stream
[2026-06-19 09:28:57,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:28:57,161.161 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 09:28:58,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:28:58,386.386 INFO    ] Checking for system updates...
[2026-06-19 09:28:58,422.422 INFO    ] 200
[2026-06-19 09:28:58,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:58,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:28:58,481.481 INFO    ] No update needed
[2026-06-19 09:28:58,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 09:28:58,523.523 INFO    ] 200
[2026-06-19 09:28:58,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:28:58,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:28:58,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:28:58,618.618 INFO    ] No camera update needed
[2026-06-19 09:28:58,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:28:58,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:28:58,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:28:58,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:29:00,674.674 INFO    ] ================================================
[2026-06-19 09:29:00,690.690 INFO    ] Launching Daemon at Fri Jun 19 09:29:00 IST 2026
[2026-06-19 09:29:00,701.701 INFO    ] ================================================
[2026-06-19 09:29:01,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:29:01
[2026-06-19 09:29:02,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:29:02,352.352 INFO    ] Initializing speech engine...
[2026-06-19 09:29:02,374.374 INFO    ] 2026-06-19 09:29:02
[2026-06-19 09:29:02,679.679 INFO    ] 2026-06-19 09:29:02
[2026-06-19 09:29:02,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:29:02,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:29:02,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:29:03,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:29:03,104.104 INFO    ] time= 19/06/2026 09:29:03
[2026-06-19 09:29:03,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:29:03,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:29:03,249.249 INFO    ] No existing commands found in stream
[2026-06-19 09:29:08,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:29:08,287.287 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 09:29:09,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:29:09,664.664 INFO    ] Checking for system updates...
[2026-06-19 09:29:09,705.705 INFO    ] 200
[2026-06-19 09:29:09,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:09,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:29:09,765.765 INFO    ] No update needed
[2026-06-19 09:29:09,768.768 INFO    ] Checking for camera pi updates...
[2026-06-19 09:29:09,803.803 INFO    ] 200
[2026-06-19 09:29:09,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:09,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:29:09,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:29:09,897.897 INFO    ] No camera update needed
[2026-06-19 09:29:09,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:29:09,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:29:09,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:29:09,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:29:11,955.955 INFO    ] ================================================
[2026-06-19 09:29:11,970.970 INFO    ] Launching Daemon at Fri Jun 19 09:29:11 IST 2026
[2026-06-19 09:29:11,980.980 INFO    ] ================================================
[2026-06-19 09:29:12,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:29:12
[2026-06-19 09:29:13,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:29:13,398.398 INFO    ] Initializing speech engine...
[2026-06-19 09:29:13,408.408 INFO    ] 2026-06-19 09:29:13
[2026-06-19 09:29:13,653.653 INFO    ] 2026-06-19 09:29:13
[2026-06-19 09:29:13,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:29:13,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:29:13,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:29:14,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:29:14,125.125 INFO    ] time= 19/06/2026 09:29:14
[2026-06-19 09:29:14,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:29:14,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:29:14,288.288 INFO    ] No existing commands found in stream
[2026-06-19 09:29:19,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:29:19,327.327 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 09:29:23,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:29:23,412.412 INFO    ] Checking for system updates...
[2026-06-19 09:29:23,451.451 INFO    ] 200
[2026-06-19 09:29:23,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:23,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:29:23,510.510 INFO    ] No update needed
[2026-06-19 09:29:23,512.512 INFO    ] Checking for camera pi updates...
[2026-06-19 09:29:23,546.546 INFO    ] 200
[2026-06-19 09:29:23,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:23,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:29:23,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:29:23,634.634 INFO    ] No camera update needed
[2026-06-19 09:29:23,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:29:23,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:29:23,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:29:23,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:29:25,724.724 INFO    ] ================================================
[2026-06-19 09:29:25,739.739 INFO    ] Launching Daemon at Fri Jun 19 09:29:25 IST 2026
[2026-06-19 09:29:25,750.750 INFO    ] ================================================
[2026-06-19 09:29:26,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:29:26
[2026-06-19 09:29:26,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:29:27,170.170 INFO    ] Initializing speech engine...
[2026-06-19 09:29:27,179.179 INFO    ] 2026-06-19 09:29:27
[2026-06-19 09:29:27,425.425 INFO    ] 2026-06-19 09:29:27
[2026-06-19 09:29:27,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:29:27,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:29:27,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:29:27,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:29:27,893.893 INFO    ] time= 19/06/2026 09:29:27
[2026-06-19 09:29:27,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:29:27,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:29:28,042.042 INFO    ] No existing commands found in stream
[2026-06-19 09:29:33,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:29:33,056.056 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 09:29:35,962.962 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:29:35,964.964 INFO    ] Checking for system updates...
[2026-06-19 09:29:36,003.003 INFO    ] 200
[2026-06-19 09:29:36,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:36,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:29:36,065.065 INFO    ] No update needed
[2026-06-19 09:29:36,068.068 INFO    ] Checking for camera pi updates...
[2026-06-19 09:29:36,102.102 INFO    ] 200
[2026-06-19 09:29:36,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:36,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:29:36,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:29:36,188.188 INFO    ] No camera update needed
[2026-06-19 09:29:36,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:29:36,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:29:36,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:29:36,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:29:38,243.243 INFO    ] ================================================
[2026-06-19 09:29:38,258.258 INFO    ] Launching Daemon at Fri Jun 19 09:29:38 IST 2026
[2026-06-19 09:29:38,269.269 INFO    ] ================================================
[2026-06-19 09:29:38,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:29:38
[2026-06-19 09:29:39,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:29:39,750.750 INFO    ] Initializing speech engine...
[2026-06-19 09:29:39,771.771 INFO    ] 2026-06-19 09:29:39
[2026-06-19 09:29:40,030.030 INFO    ] 2026-06-19 09:29:40
[2026-06-19 09:29:40,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:29:40,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:29:40,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:29:40,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:29:40,400.400 INFO    ] time= 19/06/2026 09:29:40
[2026-06-19 09:29:40,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:29:40,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:29:40,540.540 INFO    ] No existing commands found in stream
[2026-06-19 09:29:45,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:29:45,568.568 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 09:29:47,807.807 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:29:47,810.810 INFO    ] Checking for system updates...
[2026-06-19 09:29:47,846.846 INFO    ] 200
[2026-06-19 09:29:47,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:47,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:29:47,905.905 INFO    ] No update needed
[2026-06-19 09:29:47,908.908 INFO    ] Checking for camera pi updates...
[2026-06-19 09:29:47,941.941 INFO    ] 200
[2026-06-19 09:29:47,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:47,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:29:48,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:29:48,120.120 INFO    ] No camera update needed
[2026-06-19 09:29:48,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:29:48,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:29:48,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:29:48,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:29:50,177.177 INFO    ] ================================================
[2026-06-19 09:29:50,193.193 INFO    ] Launching Daemon at Fri Jun 19 09:29:50 IST 2026
[2026-06-19 09:29:50,204.204 INFO    ] ================================================
[2026-06-19 09:29:50,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:29:50
[2026-06-19 09:29:51,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:29:51,796.796 INFO    ] Initializing speech engine...
[2026-06-19 09:29:51,804.804 INFO    ] 2026-06-19 09:29:51
[2026-06-19 09:29:52,073.073 INFO    ] 2026-06-19 09:29:52
[2026-06-19 09:29:52,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:29:52,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:29:52,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:29:52,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:29:52,624.624 INFO    ] time= 19/06/2026 09:29:52
[2026-06-19 09:29:52,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:29:52,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:29:52,782.782 INFO    ] No existing commands found in stream
[2026-06-19 09:29:57,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:29:57,805.805 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 09:29:58,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:29:58,265.265 INFO    ] Checking for system updates...
[2026-06-19 09:29:58,305.305 INFO    ] 200
[2026-06-19 09:29:58,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:58,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:29:58,368.368 INFO    ] No update needed
[2026-06-19 09:29:58,370.370 INFO    ] Checking for camera pi updates...
[2026-06-19 09:29:58,404.404 INFO    ] 200
[2026-06-19 09:29:58,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:29:58,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:29:58,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:29:58,490.490 INFO    ] No camera update needed
[2026-06-19 09:29:58,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:29:58,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:29:58,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:29:58,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:30:00,545.545 INFO    ] ================================================
[2026-06-19 09:30:00,561.561 INFO    ] Launching Daemon at Fri Jun 19 09:30:00 IST 2026
[2026-06-19 09:30:00,573.573 INFO    ] ================================================
[2026-06-19 09:30:01,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:30:01
[2026-06-19 09:30:02,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:30:03,013.013 INFO    ] Initializing speech engine...
[2026-06-19 09:30:03,017.017 INFO    ] 2026-06-19 09:30:03
[2026-06-19 09:30:03,370.370 INFO    ] 2026-06-19 09:30:03
[2026-06-19 09:30:03,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:30:03,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:30:03,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:30:03,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:30:03,674.674 INFO    ] time= 19/06/2026 09:30:03
[2026-06-19 09:30:03,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:30:03,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:30:03,779.779 INFO    ] No existing commands found in stream
[2026-06-19 09:30:08,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:30:08,806.806 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 09:30:11,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:30:11,079.079 INFO    ] Checking for system updates...
[2026-06-19 09:30:11,115.115 INFO    ] 200
[2026-06-19 09:30:11,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:11,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:30:11,174.174 INFO    ] No update needed
[2026-06-19 09:30:11,176.176 INFO    ] Checking for camera pi updates...
[2026-06-19 09:30:11,210.210 INFO    ] 200
[2026-06-19 09:30:11,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:11,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:30:11,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:30:11,294.294 INFO    ] No camera update needed
[2026-06-19 09:30:11,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:30:11,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:30:11,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:30:11,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:30:13,352.352 INFO    ] ================================================
[2026-06-19 09:30:13,368.368 INFO    ] Launching Daemon at Fri Jun 19 09:30:13 IST 2026
[2026-06-19 09:30:13,380.380 INFO    ] ================================================
[2026-06-19 09:30:13,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:30:13
[2026-06-19 09:30:14,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:30:14,833.833 INFO    ] Initializing speech engine...
[2026-06-19 09:30:14,842.842 INFO    ] 2026-06-19 09:30:14
[2026-06-19 09:30:15,106.106 INFO    ] 2026-06-19 09:30:15
[2026-06-19 09:30:15,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:30:15,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:30:15,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:30:15,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:30:15,561.561 INFO    ] time= 19/06/2026 09:30:15
[2026-06-19 09:30:15,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:30:15,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:30:15,777.777 INFO    ] No existing commands found in stream
[2026-06-19 09:30:20,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:30:20,810.810 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 09:30:24,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:30:24,082.082 INFO    ] Checking for system updates...
[2026-06-19 09:30:24,120.120 INFO    ] 200
[2026-06-19 09:30:24,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:24,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:30:24,177.177 INFO    ] No update needed
[2026-06-19 09:30:24,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 09:30:24,215.215 INFO    ] 200
[2026-06-19 09:30:24,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:24,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:30:24,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:30:24,310.310 INFO    ] No camera update needed
[2026-06-19 09:30:24,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:30:24,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:30:24,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:30:24,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:30:26,366.366 INFO    ] ================================================
[2026-06-19 09:30:26,382.382 INFO    ] Launching Daemon at Fri Jun 19 09:30:26 IST 2026
[2026-06-19 09:30:26,393.393 INFO    ] ================================================
[2026-06-19 09:30:26,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:30:26
[2026-06-19 09:30:27,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:30:27,969.969 INFO    ] Initializing speech engine...
[2026-06-19 09:30:27,981.981 INFO    ] 2026-06-19 09:30:27
[2026-06-19 09:30:28,271.271 INFO    ] 2026-06-19 09:30:28
[2026-06-19 09:30:28,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:30:28,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:30:28,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:30:28,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:30:28,766.766 INFO    ] time= 19/06/2026 09:30:28
[2026-06-19 09:30:28,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:30:28,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:30:28,907.907 INFO    ] No existing commands found in stream
[2026-06-19 09:30:33,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:30:33,923.923 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 09:30:34,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:30:34,741.741 INFO    ] Checking for system updates...
[2026-06-19 09:30:34,780.780 INFO    ] 200
[2026-06-19 09:30:34,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:34,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:30:34,843.843 INFO    ] No update needed
[2026-06-19 09:30:34,845.845 INFO    ] Checking for camera pi updates...
[2026-06-19 09:30:34,888.888 INFO    ] 200
[2026-06-19 09:30:34,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:34,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:30:35,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:30:35,014.014 INFO    ] No camera update needed
[2026-06-19 09:30:35,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:30:35,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:30:35,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:30:35,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:30:37,076.076 INFO    ] ================================================
[2026-06-19 09:30:37,093.093 INFO    ] Launching Daemon at Fri Jun 19 09:30:37 IST 2026
[2026-06-19 09:30:37,105.105 INFO    ] ================================================
[2026-06-19 09:30:37,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:30:37
[2026-06-19 09:30:38,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:30:38,614.614 INFO    ] Initializing speech engine...
[2026-06-19 09:30:38,628.628 INFO    ] 2026-06-19 09:30:38
[2026-06-19 09:30:38,885.885 INFO    ] 2026-06-19 09:30:38
[2026-06-19 09:30:38,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:30:39,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:30:39,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:30:39,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:30:39,223.223 INFO    ] time= 19/06/2026 09:30:39
[2026-06-19 09:30:39,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:30:39,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:30:39,340.340 INFO    ] No existing commands found in stream
[2026-06-19 09:30:44,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:30:44,355.355 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 09:30:45,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:30:45,801.801 INFO    ] Checking for system updates...
[2026-06-19 09:30:45,837.837 INFO    ] 200
[2026-06-19 09:30:45,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:45,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:30:45,894.894 INFO    ] No update needed
[2026-06-19 09:30:45,896.896 INFO    ] Checking for camera pi updates...
[2026-06-19 09:30:45,930.930 INFO    ] 200
[2026-06-19 09:30:45,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:45,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:30:46,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:30:46,027.027 INFO    ] No camera update needed
[2026-06-19 09:30:46,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:30:46,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:30:46,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:30:46,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:30:48,082.082 INFO    ] ================================================
[2026-06-19 09:30:48,099.099 INFO    ] Launching Daemon at Fri Jun 19 09:30:48 IST 2026
[2026-06-19 09:30:48,110.110 INFO    ] ================================================
[2026-06-19 09:30:48,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:30:48
[2026-06-19 09:30:49,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:30:49,701.701 INFO    ] Initializing speech engine...
[2026-06-19 09:30:49,709.709 INFO    ] 2026-06-19 09:30:49
[2026-06-19 09:30:49,997.997 INFO    ] 2026-06-19 09:30:49
[2026-06-19 09:30:50,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:30:50,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:30:50,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:30:50,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:30:50,459.459 INFO    ] time= 19/06/2026 09:30:50
[2026-06-19 09:30:50,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:30:50,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:30:50,672.672 INFO    ] No existing commands found in stream
[2026-06-19 09:30:55,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:30:55,702.702 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 09:30:59,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:30:59,632.632 INFO    ] Checking for system updates...
[2026-06-19 09:30:59,669.669 INFO    ] 200
[2026-06-19 09:30:59,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:59,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:30:59,733.733 INFO    ] No update needed
[2026-06-19 09:30:59,736.736 INFO    ] Checking for camera pi updates...
[2026-06-19 09:30:59,774.774 INFO    ] 200
[2026-06-19 09:30:59,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:30:59,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:30:59,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:30:59,866.866 INFO    ] No camera update needed
[2026-06-19 09:30:59,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:30:59,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:30:59,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:30:59,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:31:01,926.926 INFO    ] ================================================
[2026-06-19 09:31:01,948.948 INFO    ] Launching Daemon at Fri Jun 19 09:31:01 IST 2026
[2026-06-19 09:31:01,963.963 INFO    ] ================================================
[2026-06-19 09:31:02,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:31:02
[2026-06-19 09:31:03,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:31:03,507.507 INFO    ] Initializing speech engine...
[2026-06-19 09:31:03,520.520 INFO    ] 2026-06-19 09:31:03
[2026-06-19 09:31:03,787.787 INFO    ] 2026-06-19 09:31:03
[2026-06-19 09:31:03,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:31:04,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:31:04,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:31:04,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:31:04,166.166 INFO    ] time= 19/06/2026 09:31:04
[2026-06-19 09:31:04,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:31:04,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:31:04,342.342 INFO    ] No existing commands found in stream
[2026-06-19 09:31:09,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:31:09,376.376 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 09:31:10,243.243 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:31:10,246.246 INFO    ] Checking for system updates...
[2026-06-19 09:31:10,283.283 INFO    ] 200
[2026-06-19 09:31:10,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:10,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:31:10,348.348 INFO    ] No update needed
[2026-06-19 09:31:10,351.351 INFO    ] Checking for camera pi updates...
[2026-06-19 09:31:10,386.386 INFO    ] 200
[2026-06-19 09:31:10,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:10,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:31:10,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:31:10,480.480 INFO    ] No camera update needed
[2026-06-19 09:31:10,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:31:10,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:31:10,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:31:10,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:31:12,540.540 INFO    ] ================================================
[2026-06-19 09:31:12,555.555 INFO    ] Launching Daemon at Fri Jun 19 09:31:12 IST 2026
[2026-06-19 09:31:12,568.568 INFO    ] ================================================
[2026-06-19 09:31:13,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:31:13
[2026-06-19 09:31:13,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:31:13,978.978 INFO    ] Initializing speech engine...
[2026-06-19 09:31:13,985.985 INFO    ] 2026-06-19 09:31:13
[2026-06-19 09:31:14,277.277 INFO    ] 2026-06-19 09:31:14
[2026-06-19 09:31:14,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:31:14,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:31:14,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:31:14,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:31:14,647.647 INFO    ] time= 19/06/2026 09:31:14
[2026-06-19 09:31:14,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:31:14,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:31:14,769.769 INFO    ] No existing commands found in stream
[2026-06-19 09:31:19,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:31:19,785.785 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 09:31:23,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:31:23,093.093 INFO    ] Checking for system updates...
[2026-06-19 09:31:23,129.129 INFO    ] 200
[2026-06-19 09:31:23,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:23,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:31:23,191.191 INFO    ] No update needed
[2026-06-19 09:31:23,194.194 INFO    ] Checking for camera pi updates...
[2026-06-19 09:31:23,227.227 INFO    ] 200
[2026-06-19 09:31:23,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:23,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:31:23,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:31:23,318.318 INFO    ] No camera update needed
[2026-06-19 09:31:23,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:31:23,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:31:23,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:31:23,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:31:25,373.373 INFO    ] ================================================
[2026-06-19 09:31:25,390.390 INFO    ] Launching Daemon at Fri Jun 19 09:31:25 IST 2026
[2026-06-19 09:31:25,401.401 INFO    ] ================================================
[2026-06-19 09:31:25,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:31:25
[2026-06-19 09:31:26,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:31:26,840.840 INFO    ] Initializing speech engine...
[2026-06-19 09:31:26,849.849 INFO    ] 2026-06-19 09:31:26
[2026-06-19 09:31:27,094.094 INFO    ] 2026-06-19 09:31:27
[2026-06-19 09:31:27,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:31:27,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:31:27,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:31:27,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:31:27,463.463 INFO    ] time= 19/06/2026 09:31:27
[2026-06-19 09:31:27,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:31:27,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:31:27,540.540 INFO    ] No existing commands found in stream
[2026-06-19 09:31:32,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:31:32,574.574 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 09:31:33,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:31:33,181.181 INFO    ] Checking for system updates...
[2026-06-19 09:31:33,217.217 INFO    ] 200
[2026-06-19 09:31:33,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:33,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:31:33,275.275 INFO    ] No update needed
[2026-06-19 09:31:33,278.278 INFO    ] Checking for camera pi updates...
[2026-06-19 09:31:33,315.315 INFO    ] 200
[2026-06-19 09:31:33,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:33,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:31:33,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:31:33,414.414 INFO    ] No camera update needed
[2026-06-19 09:31:33,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:31:33,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:31:33,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:31:33,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:31:35,474.474 INFO    ] ================================================
[2026-06-19 09:31:35,490.490 INFO    ] Launching Daemon at Fri Jun 19 09:31:35 IST 2026
[2026-06-19 09:31:35,501.501 INFO    ] ================================================
[2026-06-19 09:31:36,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:31:36
[2026-06-19 09:31:36,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:31:36,902.902 INFO    ] Initializing speech engine...
[2026-06-19 09:31:36,911.911 INFO    ] 2026-06-19 09:31:36
[2026-06-19 09:31:37,186.186 INFO    ] 2026-06-19 09:31:37
[2026-06-19 09:31:37,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:31:37,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:31:37,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:31:37,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:31:37,647.647 INFO    ] time= 19/06/2026 09:31:37
[2026-06-19 09:31:37,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:31:37,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:31:37,816.816 INFO    ] No existing commands found in stream
[2026-06-19 09:31:42,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:31:42,830.830 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 09:31:43,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:31:43,573.573 INFO    ] Checking for system updates...
[2026-06-19 09:31:43,609.609 INFO    ] 200
[2026-06-19 09:31:43,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:43,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:31:43,667.667 INFO    ] No update needed
[2026-06-19 09:31:43,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 09:31:43,703.703 INFO    ] 200
[2026-06-19 09:31:43,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:43,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:31:43,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:31:43,798.798 INFO    ] No camera update needed
[2026-06-19 09:31:43,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:31:43,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:31:43,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:31:43,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:31:45,855.855 INFO    ] ================================================
[2026-06-19 09:31:45,871.871 INFO    ] Launching Daemon at Fri Jun 19 09:31:45 IST 2026
[2026-06-19 09:31:45,882.882 INFO    ] ================================================
[2026-06-19 09:31:46,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:31:46
[2026-06-19 09:31:47,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:31:47,418.418 INFO    ] Initializing speech engine...
[2026-06-19 09:31:47,432.432 INFO    ] 2026-06-19 09:31:47
[2026-06-19 09:31:47,718.718 INFO    ] 2026-06-19 09:31:47
[2026-06-19 09:31:47,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:31:48,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:31:48,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:31:48,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:31:48,248.248 INFO    ] time= 19/06/2026 09:31:48
[2026-06-19 09:31:48,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:31:48,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:31:48,389.389 INFO    ] No existing commands found in stream
[2026-06-19 09:31:53,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:31:53,419.419 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 09:31:57,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:31:57,453.453 INFO    ] Checking for system updates...
[2026-06-19 09:31:57,494.494 INFO    ] 200
[2026-06-19 09:31:57,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:57,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:31:57,557.557 INFO    ] No update needed
[2026-06-19 09:31:57,560.560 INFO    ] Checking for camera pi updates...
[2026-06-19 09:31:57,595.595 INFO    ] 200
[2026-06-19 09:31:57,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:31:57,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:31:57,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:31:57,809.809 INFO    ] No camera update needed
[2026-06-19 09:31:57,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:31:57,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:31:57,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:31:57,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:31:59,868.868 INFO    ] ================================================
[2026-06-19 09:31:59,884.884 INFO    ] Launching Daemon at Fri Jun 19 09:31:59 IST 2026
[2026-06-19 09:31:59,895.895 INFO    ] ================================================
[2026-06-19 09:32:00,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:32:00
[2026-06-19 09:32:01,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:32:01,793.793 INFO    ] Initializing speech engine...
[2026-06-19 09:32:01,797.797 INFO    ] 2026-06-19 09:32:01
[2026-06-19 09:32:02,158.158 INFO    ] 2026-06-19 09:32:02
[2026-06-19 09:32:02,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:32:02,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:32:02,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:32:02,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:32:02,632.632 INFO    ] time= 19/06/2026 09:32:02
[2026-06-19 09:32:02,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:32:02,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:32:02,775.775 INFO    ] No existing commands found in stream
[2026-06-19 09:32:07,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:32:07,827.827 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 09:32:08,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:32:08,514.514 INFO    ] Checking for system updates...
[2026-06-19 09:32:08,557.557 INFO    ] 200
[2026-06-19 09:32:08,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:08,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:32:08,615.615 INFO    ] No update needed
[2026-06-19 09:32:08,617.617 INFO    ] Checking for camera pi updates...
[2026-06-19 09:32:08,651.651 INFO    ] 200
[2026-06-19 09:32:08,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:08,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:32:08,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:32:08,743.743 INFO    ] No camera update needed
[2026-06-19 09:32:08,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:32:08,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:32:08,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:32:08,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:32:10,799.799 INFO    ] ================================================
[2026-06-19 09:32:10,815.815 INFO    ] Launching Daemon at Fri Jun 19 09:32:10 IST 2026
[2026-06-19 09:32:10,826.826 INFO    ] ================================================
[2026-06-19 09:32:11,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:32:11
[2026-06-19 09:32:11,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:32:12,254.254 INFO    ] Initializing speech engine...
[2026-06-19 09:32:12,261.261 INFO    ] 2026-06-19 09:32:12
[2026-06-19 09:32:12,556.556 INFO    ] 2026-06-19 09:32:12
[2026-06-19 09:32:12,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:32:12,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:32:12,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:32:12,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:32:12,974.974 INFO    ] time= 19/06/2026 09:32:12
[2026-06-19 09:32:12,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:32:13,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:32:13,152.152 INFO    ] No existing commands found in stream
[2026-06-19 09:32:18,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:32:18,180.180 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 09:32:20,214.214 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:32:20,216.216 INFO    ] Checking for system updates...
[2026-06-19 09:32:20,252.252 INFO    ] 200
[2026-06-19 09:32:20,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:20,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:32:20,310.310 INFO    ] No update needed
[2026-06-19 09:32:20,312.312 INFO    ] Checking for camera pi updates...
[2026-06-19 09:32:20,346.346 INFO    ] 200
[2026-06-19 09:32:20,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:20,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:32:20,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:32:20,434.434 INFO    ] No camera update needed
[2026-06-19 09:32:20,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:32:20,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:32:20,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:32:20,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:32:22,490.490 INFO    ] ================================================
[2026-06-19 09:32:22,505.505 INFO    ] Launching Daemon at Fri Jun 19 09:32:22 IST 2026
[2026-06-19 09:32:22,516.516 INFO    ] ================================================
[2026-06-19 09:32:23,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:32:23
[2026-06-19 09:32:23,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:32:24,135.135 INFO    ] Initializing speech engine...
[2026-06-19 09:32:24,144.144 INFO    ] 2026-06-19 09:32:24
[2026-06-19 09:32:24,421.421 INFO    ] 2026-06-19 09:32:24
[2026-06-19 09:32:24,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:32:24,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:32:24,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:32:24,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:32:24,989.989 INFO    ] time= 19/06/2026 09:32:24
[2026-06-19 09:32:25,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:32:25,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:32:25,173.173 INFO    ] No existing commands found in stream
[2026-06-19 09:32:30,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:32:30,202.202 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 09:32:34,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:32:34,150.150 INFO    ] Checking for system updates...
[2026-06-19 09:32:34,191.191 INFO    ] 200
[2026-06-19 09:32:34,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:34,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:32:34,253.253 INFO    ] No update needed
[2026-06-19 09:32:34,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 09:32:34,291.291 INFO    ] 200
[2026-06-19 09:32:34,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:34,341.341 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:32:34,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:32:34,390.390 INFO    ] No camera update needed
[2026-06-19 09:32:34,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:32:34,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:32:34,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:32:34,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:32:36,451.451 INFO    ] ================================================
[2026-06-19 09:32:36,467.467 INFO    ] Launching Daemon at Fri Jun 19 09:32:36 IST 2026
[2026-06-19 09:32:36,479.479 INFO    ] ================================================
[2026-06-19 09:32:37,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:32:37
[2026-06-19 09:32:37,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:32:37,903.903 INFO    ] Initializing speech engine...
[2026-06-19 09:32:37,910.910 INFO    ] 2026-06-19 09:32:37
[2026-06-19 09:32:38,208.208 INFO    ] 2026-06-19 09:32:38
[2026-06-19 09:32:38,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:32:38,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:32:38,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:32:38,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:32:38,633.633 INFO    ] time= 19/06/2026 09:32:38
[2026-06-19 09:32:38,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:32:38,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:32:38,792.792 INFO    ] No existing commands found in stream
[2026-06-19 09:32:43,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:32:43,820.820 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 09:32:47,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:32:47,557.557 INFO    ] Checking for system updates...
[2026-06-19 09:32:47,593.593 INFO    ] 200
[2026-06-19 09:32:47,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:47,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:32:47,652.652 INFO    ] No update needed
[2026-06-19 09:32:47,654.654 INFO    ] Checking for camera pi updates...
[2026-06-19 09:32:47,688.688 INFO    ] 200
[2026-06-19 09:32:47,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:47,731.731 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:32:47,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:32:47,762.762 INFO    ] No camera update needed
[2026-06-19 09:32:47,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:32:47,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:32:47,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:32:47,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:32:49,818.818 INFO    ] ================================================
[2026-06-19 09:32:49,835.835 INFO    ] Launching Daemon at Fri Jun 19 09:32:49 IST 2026
[2026-06-19 09:32:49,846.846 INFO    ] ================================================
[2026-06-19 09:32:50,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:32:50
[2026-06-19 09:32:51,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:32:51,276.276 INFO    ] Initializing speech engine...
[2026-06-19 09:32:51,282.282 INFO    ] 2026-06-19 09:32:51
[2026-06-19 09:32:51,558.558 INFO    ] 2026-06-19 09:32:51
[2026-06-19 09:32:51,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:32:51,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:32:51,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:32:51,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:32:51,942.942 INFO    ] time= 19/06/2026 09:32:51
[2026-06-19 09:32:51,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:32:52,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:32:52,129.129 INFO    ] No existing commands found in stream
[2026-06-19 09:32:57,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:32:57,157.157 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 09:32:57,611.611 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:32:57,613.613 INFO    ] Checking for system updates...
[2026-06-19 09:32:57,649.649 INFO    ] 200
[2026-06-19 09:32:57,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:57,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:32:57,707.707 INFO    ] No update needed
[2026-06-19 09:32:57,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 09:32:57,743.743 INFO    ] 200
[2026-06-19 09:32:57,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:32:57,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:32:57,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:32:57,837.837 INFO    ] No camera update needed
[2026-06-19 09:32:57,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:32:57,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:32:57,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:32:57,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:32:59,895.895 INFO    ] ================================================
[2026-06-19 09:32:59,911.911 INFO    ] Launching Daemon at Fri Jun 19 09:32:59 IST 2026
[2026-06-19 09:32:59,923.923 INFO    ] ================================================
[2026-06-19 09:33:00,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:33:00
[2026-06-19 09:33:01,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:33:01,857.857 INFO    ] Initializing speech engine...
[2026-06-19 09:33:01,863.863 INFO    ] 2026-06-19 09:33:01
[2026-06-19 09:33:02,247.247 INFO    ] 2026-06-19 09:33:02
[2026-06-19 09:33:02,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:33:02,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:33:02,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:33:02,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:33:02,860.860 INFO    ] time= 19/06/2026 09:33:02
[2026-06-19 09:33:02,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:33:02,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:33:03,114.114 INFO    ] No existing commands found in stream
[2026-06-19 09:33:08,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:33:08,142.142 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 09:33:09,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:33:09,653.653 INFO    ] Checking for system updates...
[2026-06-19 09:33:09,701.701 INFO    ] 200
[2026-06-19 09:33:09,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:09,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:33:09,757.757 INFO    ] No update needed
[2026-06-19 09:33:09,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 09:33:09,794.794 INFO    ] 200
[2026-06-19 09:33:09,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:09,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:33:09,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:33:09,888.888 INFO    ] No camera update needed
[2026-06-19 09:33:09,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:33:09,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:33:09,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:33:09,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:33:11,946.946 INFO    ] ================================================
[2026-06-19 09:33:11,962.962 INFO    ] Launching Daemon at Fri Jun 19 09:33:11 IST 2026
[2026-06-19 09:33:11,973.973 INFO    ] ================================================
[2026-06-19 09:33:12,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:33:12
[2026-06-19 09:33:13,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:33:13,423.423 INFO    ] Initializing speech engine...
[2026-06-19 09:33:13,439.439 INFO    ] 2026-06-19 09:33:13
[2026-06-19 09:33:13,727.727 INFO    ] 2026-06-19 09:33:13
[2026-06-19 09:33:13,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:33:13,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:33:13,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:33:14,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:33:14,149.149 INFO    ] time= 19/06/2026 09:33:14
[2026-06-19 09:33:14,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:33:14,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:33:14,233.233 INFO    ] No existing commands found in stream
[2026-06-19 09:33:19,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:33:19,249.249 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 09:33:21,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:33:21,273.273 INFO    ] Checking for system updates...
[2026-06-19 09:33:21,309.309 INFO    ] 200
[2026-06-19 09:33:21,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:21,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:33:21,367.367 INFO    ] No update needed
[2026-06-19 09:33:21,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 09:33:21,407.407 INFO    ] 200
[2026-06-19 09:33:21,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:21,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:33:21,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:33:21,496.496 INFO    ] No camera update needed
[2026-06-19 09:33:21,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:33:21,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:33:21,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:33:21,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:33:23,554.554 INFO    ] ================================================
[2026-06-19 09:33:23,570.570 INFO    ] Launching Daemon at Fri Jun 19 09:33:23 IST 2026
[2026-06-19 09:33:23,581.581 INFO    ] ================================================
[2026-06-19 09:33:24,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:33:24
[2026-06-19 09:33:24,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:33:25,009.009 INFO    ] Initializing speech engine...
[2026-06-19 09:33:25,015.015 INFO    ] 2026-06-19 09:33:25
[2026-06-19 09:33:25,312.312 INFO    ] 2026-06-19 09:33:25
[2026-06-19 09:33:25,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:33:25,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:33:25,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:33:25,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:33:25,694.694 INFO    ] time= 19/06/2026 09:33:25
[2026-06-19 09:33:25,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:33:25,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:33:25,819.819 INFO    ] No existing commands found in stream
[2026-06-19 09:33:30,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:33:30,833.833 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 09:33:33,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:33:33,591.591 INFO    ] Checking for system updates...
[2026-06-19 09:33:33,628.628 INFO    ] 200
[2026-06-19 09:33:33,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:33,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:33:33,689.689 INFO    ] No update needed
[2026-06-19 09:33:33,691.691 INFO    ] Checking for camera pi updates...
[2026-06-19 09:33:33,727.727 INFO    ] 200
[2026-06-19 09:33:33,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:33,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:33:33,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:33:33,820.820 INFO    ] No camera update needed
[2026-06-19 09:33:33,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:33:33,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:33:33,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:33:33,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:33:35,882.882 INFO    ] ================================================
[2026-06-19 09:33:35,899.899 INFO    ] Launching Daemon at Fri Jun 19 09:33:35 IST 2026
[2026-06-19 09:33:35,910.910 INFO    ] ================================================
[2026-06-19 09:33:36,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:33:36
[2026-06-19 09:33:37,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:33:37,345.345 INFO    ] Initializing speech engine...
[2026-06-19 09:33:37,353.353 INFO    ] 2026-06-19 09:33:37
[2026-06-19 09:33:37,638.638 INFO    ] 2026-06-19 09:33:37
[2026-06-19 09:33:37,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:33:37,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:33:37,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:33:38,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:33:38,060.060 INFO    ] time= 19/06/2026 09:33:38
[2026-06-19 09:33:38,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:33:38,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:33:38,199.199 INFO    ] No existing commands found in stream
[2026-06-19 09:33:43,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:33:43,232.232 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 09:33:47,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:33:47,330.330 INFO    ] Checking for system updates...
[2026-06-19 09:33:47,366.366 INFO    ] 200
[2026-06-19 09:33:47,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:47,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:33:47,425.425 INFO    ] No update needed
[2026-06-19 09:33:47,427.427 INFO    ] Checking for camera pi updates...
[2026-06-19 09:33:47,461.461 INFO    ] 200
[2026-06-19 09:33:47,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:47,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:33:47,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:33:47,534.534 INFO    ] No camera update needed
[2026-06-19 09:33:47,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:33:47,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:33:47,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:33:47,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:33:49,592.592 INFO    ] ================================================
[2026-06-19 09:33:49,607.607 INFO    ] Launching Daemon at Fri Jun 19 09:33:49 IST 2026
[2026-06-19 09:33:49,619.619 INFO    ] ================================================
[2026-06-19 09:33:50,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:33:50
[2026-06-19 09:33:50,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:33:51,242.242 INFO    ] Initializing speech engine...
[2026-06-19 09:33:51,256.256 INFO    ] 2026-06-19 09:33:51
[2026-06-19 09:33:51,565.565 INFO    ] 2026-06-19 09:33:51
[2026-06-19 09:33:51,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:33:51,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:33:51,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:33:51,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:33:52,021.021 INFO    ] time= 19/06/2026 09:33:51
[2026-06-19 09:33:52,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:33:52,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:33:52,207.207 INFO    ] No existing commands found in stream
[2026-06-19 09:33:57,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:33:57,236.236 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 09:33:57,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:33:57,755.755 INFO    ] Checking for system updates...
[2026-06-19 09:33:57,792.792 INFO    ] 200
[2026-06-19 09:33:57,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:57,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:33:57,858.858 INFO    ] No update needed
[2026-06-19 09:33:57,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 09:33:57,897.897 INFO    ] 200
[2026-06-19 09:33:57,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:33:57,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:33:57,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:33:57,989.989 INFO    ] No camera update needed
[2026-06-19 09:33:57,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:33:57,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:33:58,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:33:58,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:34:00,051.051 INFO    ] ================================================
[2026-06-19 09:34:00,066.066 INFO    ] Launching Daemon at Fri Jun 19 09:34:00 IST 2026
[2026-06-19 09:34:00,078.078 INFO    ] ================================================
[2026-06-19 09:34:00,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:34:00
[2026-06-19 09:34:01,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:34:01,613.613 INFO    ] Initializing speech engine...
[2026-06-19 09:34:01,620.620 INFO    ] 2026-06-19 09:34:01
[2026-06-19 09:34:02,010.010 INFO    ] 2026-06-19 09:34:01
[2026-06-19 09:34:02,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:34:02,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:34:02,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:34:02,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:34:02,448.448 INFO    ] time= 19/06/2026 09:34:02
[2026-06-19 09:34:02,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:34:02,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:34:02,591.591 INFO    ] No existing commands found in stream
[2026-06-19 09:34:07,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:34:07,617.617 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 09:34:08,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:34:08,162.162 INFO    ] Checking for system updates...
[2026-06-19 09:34:08,198.198 INFO    ] 200
[2026-06-19 09:34:08,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:34:08,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:34:08,255.255 INFO    ] No update needed
[2026-06-19 09:34:08,257.257 INFO    ] Checking for camera pi updates...
[2026-06-19 09:34:08,295.295 INFO    ] 200
[2026-06-19 09:34:08,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:34:08,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:34:08,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:34:08,383.383 INFO    ] No camera update needed
[2026-06-19 09:34:08,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:34:08,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:34:08,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:34:08,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:34:10,438.438 INFO    ] ================================================
[2026-06-19 09:34:10,453.453 INFO    ] Launching Daemon at Fri Jun 19 09:34:10 IST 2026
[2026-06-19 09:34:10,464.464 INFO    ] ================================================
[2026-06-19 09:34:11,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:34:11
[2026-06-19 09:34:11,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:34:11,930.930 INFO    ] Initializing speech engine...
[2026-06-19 09:34:11,936.936 INFO    ] 2026-06-19 09:34:11
[2026-06-19 09:34:12,192.192 INFO    ] 2026-06-19 09:34:12
[2026-06-19 09:34:12,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:34:12,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:34:12,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:34:12,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:34:12,529.529 INFO    ] time= 19/06/2026 09:34:12
[2026-06-19 09:34:12,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:34:12,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:34:12,627.627 INFO    ] No existing commands found in stream
[2026-06-19 09:34:17,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:34:17,640.640 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 09:34:21,538.538 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:34:21,540.540 INFO    ] Checking for system updates...
[2026-06-19 09:34:21,576.576 INFO    ] 200
[2026-06-19 09:34:21,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:34:21,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:34:21,634.634 INFO    ] No update needed
[2026-06-19 09:34:21,636.636 INFO    ] Checking for camera pi updates...
[2026-06-19 09:34:21,676.676 INFO    ] 200
[2026-06-19 09:34:21,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:34:21,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:34:21,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:34:21,772.772 INFO    ] No camera update needed
[2026-06-19 09:34:21,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:34:21,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:34:21,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:34:21,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:34:23,831.831 INFO    ] ================================================
[2026-06-19 09:34:23,846.846 INFO    ] Launching Daemon at Fri Jun 19 09:34:23 IST 2026
[2026-06-19 09:34:23,857.857 INFO    ] ================================================
[2026-06-19 09:34:24,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:34:24
[2026-06-19 09:34:25,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:34:25,478.478 INFO    ] Initializing speech engine...
[2026-06-19 09:34:25,483.483 INFO    ] 2026-06-19 09:34:25
[2026-06-19 09:34:25,749.749 INFO    ] 2026-06-19 09:34:25
[2026-06-19 09:34:25,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:34:26,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:34:26,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:34:26,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:34:26,256.256 INFO    ] time= 19/06/2026 09:34:26
[2026-06-19 09:34:26,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:34:26,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:34:26,510.510 INFO    ] No existing commands found in stream
[2026-06-19 09:34:31,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:34:31,535.535 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 09:34:35,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:34:35,546.546 INFO    ] Checking for system updates...
[2026-06-19 09:34:35,582.582 INFO    ] 200
[2026-06-19 09:34:35,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:34:35,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:34:35,641.641 INFO    ] No update needed
[2026-06-19 09:34:35,643.643 INFO    ] Checking for camera pi updates...
[2026-06-19 09:34:35,677.677 INFO    ] 200
[2026-06-19 09:34:35,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:34:35,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:34:35,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:34:35,768.768 INFO    ] No camera update needed
[2026-06-19 09:34:35,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:34:35,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:34:35,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:34:35,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:34:37,827.827 INFO    ] ================================================
[2026-06-19 09:34:37,843.843 INFO    ] Launching Daemon at Fri Jun 19 09:34:37 IST 2026
[2026-06-19 09:34:37,854.854 INFO    ] ================================================
[2026-06-19 09:34:38,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:34:38
[2026-06-19 09:34:39,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:34:39,451.451 INFO    ] Initializing speech engine...
[2026-06-19 09:34:39,460.460 INFO    ] 2026-06-19 09:34:39
[2026-06-19 09:34:39,748.748 INFO    ] 2026-06-19 09:34:39
[2026-06-19 09:34:39,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:34:40,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:34:40,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:34:40,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:34:40,298.298 INFO    ] time= 19/06/2026 09:34:40
[2026-06-19 09:34:40,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:34:40,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:34:40,479.479 INFO    ] No existing commands found in stream
[2026-06-19 09:34:45,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:34:45,514.514 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 09:34:48,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:34:48,565.565 INFO    ] Checking for system updates...
[2026-06-19 09:34:48,602.602 INFO    ] 200
[2026-06-19 09:34:48,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:34:48,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:34:48,663.663 INFO    ] No update needed
[2026-06-19 09:34:48,665.665 INFO    ] Checking for camera pi updates...
[2026-06-19 09:34:48,701.701 INFO    ] 200
[2026-06-19 09:34:48,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:34:48,745.745 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:34:48,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:34:48,775.775 INFO    ] No camera update needed
[2026-06-19 09:34:48,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:34:48,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:34:48,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:34:48,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:34:50,833.833 INFO    ] ================================================
[2026-06-19 09:34:50,848.848 INFO    ] Launching Daemon at Fri Jun 19 09:34:50 IST 2026
[2026-06-19 09:34:50,859.859 INFO    ] ================================================
[2026-06-19 09:34:51,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:34:51
[2026-06-19 09:34:52,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:34:52,286.286 INFO    ] Initializing speech engine...
[2026-06-19 09:34:52,295.295 INFO    ] 2026-06-19 09:34:52
[2026-06-19 09:34:52,545.545 INFO    ] 2026-06-19 09:34:52
[2026-06-19 09:34:52,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:34:52,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:34:52,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:34:53,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:34:53,163.163 INFO    ] time= 19/06/2026 09:34:53
[2026-06-19 09:34:53,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:34:53,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:34:53,368.368 INFO    ] No existing commands found in stream
[2026-06-19 09:34:58,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:34:58,385.385 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 09:35:00,748.748 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:35:00,751.751 INFO    ] Checking for system updates...
[2026-06-19 09:35:00,788.788 INFO    ] 200
[2026-06-19 09:35:00,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:00,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:35:00,846.846 INFO    ] No update needed
[2026-06-19 09:35:00,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 09:35:00,883.883 INFO    ] 200
[2026-06-19 09:35:00,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:00,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:35:00,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:35:00,971.971 INFO    ] No camera update needed
[2026-06-19 09:35:00,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:35:00,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:35:00,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:35:00,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:35:03,038.038 INFO    ] ================================================
[2026-06-19 09:35:03,056.056 INFO    ] Launching Daemon at Fri Jun 19 09:35:03 IST 2026
[2026-06-19 09:35:03,069.069 INFO    ] ================================================
[2026-06-19 09:35:03,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:35:03
[2026-06-19 09:35:04,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:35:04,746.746 INFO    ] Initializing speech engine...
[2026-06-19 09:35:04,754.754 INFO    ] 2026-06-19 09:35:04
[2026-06-19 09:35:05,072.072 INFO    ] 2026-06-19 09:35:05
[2026-06-19 09:35:05,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:35:05,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:35:05,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:35:05,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:35:05,528.528 INFO    ] time= 19/06/2026 09:35:05
[2026-06-19 09:35:05,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:35:05,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:35:05,744.744 INFO    ] No existing commands found in stream
[2026-06-19 09:35:10,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:35:10,777.777 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 09:35:11,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:35:11,862.862 INFO    ] Checking for system updates...
[2026-06-19 09:35:11,900.900 INFO    ] 200
[2026-06-19 09:35:11,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:11,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:35:11,966.966 INFO    ] No update needed
[2026-06-19 09:35:11,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 09:35:12,004.004 INFO    ] 200
[2026-06-19 09:35:12,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:12,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:35:12,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:35:12,102.102 INFO    ] No camera update needed
[2026-06-19 09:35:12,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:35:12,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:35:12,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:35:12,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:35:14,162.162 INFO    ] ================================================
[2026-06-19 09:35:14,177.177 INFO    ] Launching Daemon at Fri Jun 19 09:35:14 IST 2026
[2026-06-19 09:35:14,187.187 INFO    ] ================================================
[2026-06-19 09:35:14,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:35:14
[2026-06-19 09:35:15,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:35:15,641.641 INFO    ] Initializing speech engine...
[2026-06-19 09:35:15,648.648 INFO    ] 2026-06-19 09:35:15
[2026-06-19 09:35:15,949.949 INFO    ] 2026-06-19 09:35:15
[2026-06-19 09:35:15,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:35:16,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:35:16,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:35:16,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:35:16,376.376 INFO    ] time= 19/06/2026 09:35:16
[2026-06-19 09:35:16,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:35:16,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:35:16,543.543 INFO    ] No existing commands found in stream
[2026-06-19 09:35:21,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:35:21,566.566 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 09:35:24,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:35:24,484.484 INFO    ] Checking for system updates...
[2026-06-19 09:35:24,520.520 INFO    ] 200
[2026-06-19 09:35:24,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:24,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:35:24,578.578 INFO    ] No update needed
[2026-06-19 09:35:24,581.581 INFO    ] Checking for camera pi updates...
[2026-06-19 09:35:24,617.617 INFO    ] 200
[2026-06-19 09:35:24,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:24,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:35:24,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:35:24,716.716 INFO    ] No camera update needed
[2026-06-19 09:35:24,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:35:24,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:35:24,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:35:24,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:35:26,773.773 INFO    ] ================================================
[2026-06-19 09:35:26,788.788 INFO    ] Launching Daemon at Fri Jun 19 09:35:26 IST 2026
[2026-06-19 09:35:26,799.799 INFO    ] ================================================
[2026-06-19 09:35:27,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:35:27
[2026-06-19 09:35:28,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:35:28,407.407 INFO    ] Initializing speech engine...
[2026-06-19 09:35:28,418.418 INFO    ] 2026-06-19 09:35:28
[2026-06-19 09:35:28,728.728 INFO    ] 2026-06-19 09:35:28
[2026-06-19 09:35:28,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:35:29,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:35:29,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:35:29,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:35:29,237.237 INFO    ] time= 19/06/2026 09:35:29
[2026-06-19 09:35:29,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:35:29,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:35:29,395.395 INFO    ] No existing commands found in stream
[2026-06-19 09:35:34,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:35:34,428.428 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 09:35:38,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:35:38,175.175 INFO    ] Checking for system updates...
[2026-06-19 09:35:38,212.212 INFO    ] 200
[2026-06-19 09:35:38,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:38,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:35:38,279.279 INFO    ] No update needed
[2026-06-19 09:35:38,282.282 INFO    ] Checking for camera pi updates...
[2026-06-19 09:35:38,317.317 INFO    ] 200
[2026-06-19 09:35:38,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:38,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:35:38,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:35:38,415.415 INFO    ] No camera update needed
[2026-06-19 09:35:38,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:35:38,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:35:38,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:35:38,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:35:40,474.474 INFO    ] ================================================
[2026-06-19 09:35:40,490.490 INFO    ] Launching Daemon at Fri Jun 19 09:35:40 IST 2026
[2026-06-19 09:35:40,501.501 INFO    ] ================================================
[2026-06-19 09:35:41,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:35:41
[2026-06-19 09:35:41,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:35:42,149.149 INFO    ] Initializing speech engine...
[2026-06-19 09:35:42,157.157 INFO    ] 2026-06-19 09:35:42
[2026-06-19 09:35:42,446.446 INFO    ] 2026-06-19 09:35:42
[2026-06-19 09:35:42,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:35:42,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:35:42,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:35:42,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:35:43,005.005 INFO    ] time= 19/06/2026 09:35:42
[2026-06-19 09:35:43,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:35:43,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:35:43,143.143 INFO    ] No existing commands found in stream
[2026-06-19 09:35:48,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:35:48,169.169 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 09:35:51,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:35:51,611.611 INFO    ] Checking for system updates...
[2026-06-19 09:35:51,649.649 INFO    ] 200
[2026-06-19 09:35:51,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:51,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:35:51,712.712 INFO    ] No update needed
[2026-06-19 09:35:51,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 09:35:51,748.748 INFO    ] 200
[2026-06-19 09:35:51,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:35:51,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:35:51,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:35:51,837.837 INFO    ] No camera update needed
[2026-06-19 09:35:51,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:35:51,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:35:51,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:35:51,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:35:53,893.893 INFO    ] ================================================
[2026-06-19 09:35:53,908.908 INFO    ] Launching Daemon at Fri Jun 19 09:35:53 IST 2026
[2026-06-19 09:35:53,919.919 INFO    ] ================================================
[2026-06-19 09:35:54,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:35:54
[2026-06-19 09:35:55,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:35:55,324.324 INFO    ] Initializing speech engine...
[2026-06-19 09:35:55,338.338 INFO    ] 2026-06-19 09:35:55
[2026-06-19 09:35:55,602.602 INFO    ] 2026-06-19 09:35:55
[2026-06-19 09:35:55,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:35:55,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:35:55,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:35:56,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:35:56,156.156 INFO    ] time= 19/06/2026 09:35:56
[2026-06-19 09:35:56,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:35:56,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:35:56,296.296 INFO    ] No existing commands found in stream
[2026-06-19 09:36:01,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:36:01,323.323 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 09:36:01,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:36:01,779.779 INFO    ] Checking for system updates...
[2026-06-19 09:36:01,850.850 INFO    ] 200
[2026-06-19 09:36:01,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:01,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:36:01,971.971 INFO    ] No update needed
[2026-06-19 09:36:01,976.976 INFO    ] Checking for camera pi updates...
[2026-06-19 09:36:02,030.030 INFO    ] 200
[2026-06-19 09:36:02,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:02,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:36:02,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:36:02,118.118 INFO    ] No camera update needed
[2026-06-19 09:36:02,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:36:02,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:36:02,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:36:02,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:36:04,184.184 INFO    ] ================================================
[2026-06-19 09:36:04,200.200 INFO    ] Launching Daemon at Fri Jun 19 09:36:04 IST 2026
[2026-06-19 09:36:04,211.211 INFO    ] ================================================
[2026-06-19 09:36:04,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:36:04
[2026-06-19 09:36:05,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:36:05,849.849 INFO    ] Initializing speech engine...
[2026-06-19 09:36:05,860.860 INFO    ] 2026-06-19 09:36:05
[2026-06-19 09:36:06,144.144 INFO    ] 2026-06-19 09:36:06
[2026-06-19 09:36:06,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:36:06,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:36:06,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:36:06,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:36:06,712.712 INFO    ] time= 19/06/2026 09:36:06
[2026-06-19 09:36:06,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:36:06,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:36:06,866.866 INFO    ] No existing commands found in stream
[2026-06-19 09:36:11,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:36:11,889.889 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 09:36:16,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:36:16,023.023 INFO    ] Checking for system updates...
[2026-06-19 09:36:16,060.060 INFO    ] 200
[2026-06-19 09:36:16,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:16,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:36:16,120.120 INFO    ] No update needed
[2026-06-19 09:36:16,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 09:36:16,158.158 INFO    ] 200
[2026-06-19 09:36:16,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:16,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:36:16,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:36:16,358.358 INFO    ] No camera update needed
[2026-06-19 09:36:16,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:36:16,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:36:16,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:36:16,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:36:18,417.417 INFO    ] ================================================
[2026-06-19 09:36:18,433.433 INFO    ] Launching Daemon at Fri Jun 19 09:36:18 IST 2026
[2026-06-19 09:36:18,444.444 INFO    ] ================================================
[2026-06-19 09:36:19,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:36:19
[2026-06-19 09:36:19,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:36:19,867.867 INFO    ] Initializing speech engine...
[2026-06-19 09:36:19,875.875 INFO    ] 2026-06-19 09:36:19
[2026-06-19 09:36:20,175.175 INFO    ] 2026-06-19 09:36:20
[2026-06-19 09:36:20,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:36:20,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:36:20,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:36:20,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:36:20,586.586 INFO    ] time= 19/06/2026 09:36:20
[2026-06-19 09:36:20,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:36:20,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:36:20,696.696 INFO    ] No existing commands found in stream
[2026-06-19 09:36:25,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:36:25,711.711 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 09:36:26,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:36:26,603.603 INFO    ] Checking for system updates...
[2026-06-19 09:36:26,639.639 INFO    ] 200
[2026-06-19 09:36:26,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:26,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:36:26,697.697 INFO    ] No update needed
[2026-06-19 09:36:26,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 09:36:26,734.734 INFO    ] 200
[2026-06-19 09:36:26,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:26,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:36:26,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:36:26,829.829 INFO    ] No camera update needed
[2026-06-19 09:36:26,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:36:26,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:36:26,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:36:26,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:36:28,885.885 INFO    ] ================================================
[2026-06-19 09:36:28,901.901 INFO    ] Launching Daemon at Fri Jun 19 09:36:28 IST 2026
[2026-06-19 09:36:28,911.911 INFO    ] ================================================
[2026-06-19 09:36:29,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:36:29
[2026-06-19 09:36:30,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:36:30,593.593 INFO    ] Initializing speech engine...
[2026-06-19 09:36:30,605.605 INFO    ] 2026-06-19 09:36:30
[2026-06-19 09:36:30,915.915 INFO    ] 2026-06-19 09:36:30
[2026-06-19 09:36:31,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:36:31,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:36:31,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:36:31,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:36:31,438.438 INFO    ] time= 19/06/2026 09:36:31
[2026-06-19 09:36:31,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:36:31,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:36:31,581.581 INFO    ] No existing commands found in stream
[2026-06-19 09:36:36,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:36:36,602.602 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 09:36:39,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:36:39,290.290 INFO    ] Checking for system updates...
[2026-06-19 09:36:39,326.326 INFO    ] 200
[2026-06-19 09:36:39,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:39,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:36:39,384.384 INFO    ] No update needed
[2026-06-19 09:36:39,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 09:36:39,421.421 INFO    ] 200
[2026-06-19 09:36:39,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:39,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:36:39,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:36:39,519.519 INFO    ] No camera update needed
[2026-06-19 09:36:39,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:36:39,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:36:39,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:36:39,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:36:41,576.576 INFO    ] ================================================
[2026-06-19 09:36:41,591.591 INFO    ] Launching Daemon at Fri Jun 19 09:36:41 IST 2026
[2026-06-19 09:36:41,604.604 INFO    ] ================================================
[2026-06-19 09:36:42,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:36:42
[2026-06-19 09:36:42,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:36:43,043.043 INFO    ] Initializing speech engine...
[2026-06-19 09:36:43,052.052 INFO    ] 2026-06-19 09:36:43
[2026-06-19 09:36:43,305.305 INFO    ] 2026-06-19 09:36:43
[2026-06-19 09:36:43,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:36:43,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:36:43,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:36:43,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:36:43,685.685 INFO    ] time= 19/06/2026 09:36:43
[2026-06-19 09:36:43,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:36:43,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:36:43,877.877 INFO    ] No existing commands found in stream
[2026-06-19 09:36:48,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:36:48,900.900 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 09:36:49,508.508 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:36:49,510.510 INFO    ] Checking for system updates...
[2026-06-19 09:36:49,547.547 INFO    ] 200
[2026-06-19 09:36:49,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:49,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:36:49,604.604 INFO    ] No update needed
[2026-06-19 09:36:49,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 09:36:49,641.641 INFO    ] 200
[2026-06-19 09:36:49,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:36:49,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:36:49,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:36:49,714.714 INFO    ] No camera update needed
[2026-06-19 09:36:49,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:36:49,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:36:49,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:36:49,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:36:51,772.772 INFO    ] ================================================
[2026-06-19 09:36:51,788.788 INFO    ] Launching Daemon at Fri Jun 19 09:36:51 IST 2026
[2026-06-19 09:36:51,799.799 INFO    ] ================================================
[2026-06-19 09:36:52,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:36:52
[2026-06-19 09:36:52,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:36:53,221.221 INFO    ] Initializing speech engine...
[2026-06-19 09:36:53,235.235 INFO    ] 2026-06-19 09:36:53
[2026-06-19 09:36:53,499.499 INFO    ] 2026-06-19 09:36:53
[2026-06-19 09:36:53,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:36:53,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:36:53,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:36:53,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:36:54,017.017 INFO    ] time= 19/06/2026 09:36:53
[2026-06-19 09:36:54,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:36:54,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:36:54,199.199 INFO    ] No existing commands found in stream
[2026-06-19 09:36:59,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:36:59,230.230 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 09:37:02,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:37:02,965.965 INFO    ] Checking for system updates...
[2026-06-19 09:37:03,004.004 INFO    ] 200
[2026-06-19 09:37:03,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:03,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:37:03,072.072 INFO    ] No update needed
[2026-06-19 09:37:03,075.075 INFO    ] Checking for camera pi updates...
[2026-06-19 09:37:03,125.125 INFO    ] 200
[2026-06-19 09:37:03,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:03,173.173 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:37:03,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:37:03,206.206 INFO    ] No camera update needed
[2026-06-19 09:37:03,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:37:03,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:37:03,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:37:03,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:37:05,273.273 INFO    ] ================================================
[2026-06-19 09:37:05,288.288 INFO    ] Launching Daemon at Fri Jun 19 09:37:05 IST 2026
[2026-06-19 09:37:05,300.300 INFO    ] ================================================
[2026-06-19 09:37:05,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:37:05
[2026-06-19 09:37:06,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:37:06,955.955 INFO    ] Initializing speech engine...
[2026-06-19 09:37:06,964.964 INFO    ] 2026-06-19 09:37:06
[2026-06-19 09:37:07,251.251 INFO    ] 2026-06-19 09:37:07
[2026-06-19 09:37:07,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:37:07,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:37:07,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:37:07,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:37:07,742.742 INFO    ] time= 19/06/2026 09:37:07
[2026-06-19 09:37:07,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:37:07,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:37:07,945.945 INFO    ] No existing commands found in stream
[2026-06-19 09:37:12,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:37:12,982.982 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 09:37:16,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:37:16,976.976 INFO    ] Checking for system updates...
[2026-06-19 09:37:17,013.013 INFO    ] 200
[2026-06-19 09:37:17,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:17,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:37:17,074.074 INFO    ] No update needed
[2026-06-19 09:37:17,077.077 INFO    ] Checking for camera pi updates...
[2026-06-19 09:37:17,112.112 INFO    ] 200
[2026-06-19 09:37:17,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:17,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:37:17,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:37:17,205.205 INFO    ] No camera update needed
[2026-06-19 09:37:17,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:37:17,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:37:17,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:37:17,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:37:19,264.264 INFO    ] ================================================
[2026-06-19 09:37:19,280.280 INFO    ] Launching Daemon at Fri Jun 19 09:37:19 IST 2026
[2026-06-19 09:37:19,291.291 INFO    ] ================================================
[2026-06-19 09:37:19,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:37:19
[2026-06-19 09:37:20,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:37:20,949.949 INFO    ] Initializing speech engine...
[2026-06-19 09:37:20,954.954 INFO    ] 2026-06-19 09:37:20
[2026-06-19 09:37:21,270.270 INFO    ] 2026-06-19 09:37:21
[2026-06-19 09:37:21,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:37:21,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:37:21,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:37:21,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:37:21,799.799 INFO    ] time= 19/06/2026 09:37:21
[2026-06-19 09:37:21,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:37:21,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:37:21,962.962 INFO    ] No existing commands found in stream
[2026-06-19 09:37:26,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:37:27,002.002 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 09:37:29,299.299 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:37:29,302.302 INFO    ] Checking for system updates...
[2026-06-19 09:37:29,339.339 INFO    ] 200
[2026-06-19 09:37:29,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:29,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:37:29,398.398 INFO    ] No update needed
[2026-06-19 09:37:29,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 09:37:29,434.434 INFO    ] 200
[2026-06-19 09:37:29,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:29,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:37:29,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:37:29,524.524 INFO    ] No camera update needed
[2026-06-19 09:37:29,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:37:29,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:37:29,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:37:29,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:37:31,581.581 INFO    ] ================================================
[2026-06-19 09:37:31,599.599 INFO    ] Launching Daemon at Fri Jun 19 09:37:31 IST 2026
[2026-06-19 09:37:31,611.611 INFO    ] ================================================
[2026-06-19 09:37:32,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:37:32
[2026-06-19 09:37:33,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:37:33,379.379 INFO    ] Initializing speech engine...
[2026-06-19 09:37:33,388.388 INFO    ] 2026-06-19 09:37:33
[2026-06-19 09:37:33,677.677 INFO    ] 2026-06-19 09:37:33
[2026-06-19 09:37:33,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:37:33,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:37:33,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:37:34,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:37:34,218.218 INFO    ] time= 19/06/2026 09:37:34
[2026-06-19 09:37:34,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:37:34,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:37:34,382.382 INFO    ] No existing commands found in stream
[2026-06-19 09:37:39,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:37:39,412.412 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 09:37:41,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:37:41,673.673 INFO    ] Checking for system updates...
[2026-06-19 09:37:41,711.711 INFO    ] 200
[2026-06-19 09:37:41,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:41,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:37:41,780.780 INFO    ] No update needed
[2026-06-19 09:37:41,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 09:37:41,819.819 INFO    ] 200
[2026-06-19 09:37:41,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:41,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:37:41,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:37:41,920.920 INFO    ] No camera update needed
[2026-06-19 09:37:41,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:37:41,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:37:41,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:37:41,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:37:43,982.982 INFO    ] ================================================
[2026-06-19 09:37:44,998.998 INFO    ] Launching Daemon at Fri Jun 19 09:37:43 IST 2026
[2026-06-19 09:37:44,009.009 INFO    ] ================================================
[2026-06-19 09:37:44,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:37:44
[2026-06-19 09:37:45,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:37:45,666.666 INFO    ] Initializing speech engine...
[2026-06-19 09:37:45,680.680 INFO    ] 2026-06-19 09:37:45
[2026-06-19 09:37:45,968.968 INFO    ] 2026-06-19 09:37:45
[2026-06-19 09:37:46,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:37:46,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:37:46,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:37:46,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:37:46,499.499 INFO    ] time= 19/06/2026 09:37:46
[2026-06-19 09:37:46,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:37:46,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:37:46,677.677 INFO    ] No existing commands found in stream
[2026-06-19 09:37:51,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:37:51,717.717 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 09:37:55,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:37:55,743.743 INFO    ] Checking for system updates...
[2026-06-19 09:37:55,781.781 INFO    ] 200
[2026-06-19 09:37:55,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:55,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:37:55,841.841 INFO    ] No update needed
[2026-06-19 09:37:55,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 09:37:55,880.880 INFO    ] 200
[2026-06-19 09:37:55,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:37:55,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:37:55,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:37:55,968.968 INFO    ] No camera update needed
[2026-06-19 09:37:55,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:37:55,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:37:55,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:37:55,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:37:58,028.028 INFO    ] ================================================
[2026-06-19 09:37:58,043.043 INFO    ] Launching Daemon at Fri Jun 19 09:37:58 IST 2026
[2026-06-19 09:37:58,054.054 INFO    ] ================================================
[2026-06-19 09:37:58,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:37:58
[2026-06-19 09:37:59,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:37:59,678.678 INFO    ] Initializing speech engine...
[2026-06-19 09:37:59,687.687 INFO    ] 2026-06-19 09:37:59
[2026-06-19 09:37:59,934.934 INFO    ] 2026-06-19 09:37:59
[2026-06-19 09:37:59,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:38:00,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:38:00,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:38:00,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:38:00,442.442 INFO    ] time= 19/06/2026 09:38:00
[2026-06-19 09:38:00,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:38:00,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:38:00,646.646 INFO    ] No existing commands found in stream
[2026-06-19 09:38:05,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:38:05,663.663 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 09:38:08,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:38:08,839.839 INFO    ] Checking for system updates...
[2026-06-19 09:38:08,880.880 INFO    ] 200
[2026-06-19 09:38:08,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:38:08,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:38:08,941.941 INFO    ] No update needed
[2026-06-19 09:38:08,944.944 INFO    ] Checking for camera pi updates...
[2026-06-19 09:38:08,979.979 INFO    ] 200
[2026-06-19 09:38:08,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:38:09,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:38:09,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:38:09,070.070 INFO    ] No camera update needed
[2026-06-19 09:38:09,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:38:09,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:38:09,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:38:09,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:38:11,129.129 INFO    ] ================================================
[2026-06-19 09:38:11,144.144 INFO    ] Launching Daemon at Fri Jun 19 09:38:11 IST 2026
[2026-06-19 09:38:11,155.155 INFO    ] ================================================
[2026-06-19 09:38:11,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:38:11
[2026-06-19 09:38:12,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:38:12,623.623 INFO    ] Initializing speech engine...
[2026-06-19 09:38:12,631.631 INFO    ] 2026-06-19 09:38:12
[2026-06-19 09:38:12,882.882 INFO    ] 2026-06-19 09:38:12
[2026-06-19 09:38:12,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:38:13,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:38:13,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:38:13,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:38:13,387.387 INFO    ] time= 19/06/2026 09:38:13
[2026-06-19 09:38:13,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:38:13,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:38:13,599.599 INFO    ] No existing commands found in stream
[2026-06-19 09:38:18,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:38:18,624.624 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 09:38:22,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:38:22,415.415 INFO    ] Checking for system updates...
[2026-06-19 09:38:22,451.451 INFO    ] 200
[2026-06-19 09:38:22,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:38:22,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:38:22,509.509 INFO    ] No update needed
[2026-06-19 09:38:22,511.511 INFO    ] Checking for camera pi updates...
[2026-06-19 09:38:22,545.545 INFO    ] 200
[2026-06-19 09:38:22,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:38:22,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:38:22,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:38:22,741.741 INFO    ] No camera update needed
[2026-06-19 09:38:22,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:38:22,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:38:22,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:38:22,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:38:24,798.798 INFO    ] ================================================
[2026-06-19 09:38:24,813.813 INFO    ] Launching Daemon at Fri Jun 19 09:38:24 IST 2026
[2026-06-19 09:38:24,824.824 INFO    ] ================================================
[2026-06-19 09:38:25,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:38:25
[2026-06-19 09:38:25,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:38:26,259.259 INFO    ] Initializing speech engine...
[2026-06-19 09:38:26,269.269 INFO    ] 2026-06-19 09:38:26
[2026-06-19 09:38:26,518.518 INFO    ] 2026-06-19 09:38:26
[2026-06-19 09:38:26,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:38:26,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:38:26,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:38:26,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:38:26,962.962 INFO    ] time= 19/06/2026 09:38:26
[2026-06-19 09:38:26,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:38:27,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:38:27,121.121 INFO    ] No existing commands found in stream
[2026-06-19 09:38:32,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:38:32,140.140 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 09:38:35,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:38:35,232.232 INFO    ] Checking for system updates...
[2026-06-19 09:38:35,268.268 INFO    ] 200
[2026-06-19 09:38:35,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:38:35,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:38:35,326.326 INFO    ] No update needed
[2026-06-19 09:38:35,328.328 INFO    ] Checking for camera pi updates...
[2026-06-19 09:38:35,367.367 INFO    ] 200
[2026-06-19 09:38:35,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:38:35,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:38:35,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:38:35,459.459 INFO    ] No camera update needed
[2026-06-19 09:38:35,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:38:35,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:38:35,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:38:35,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:38:37,516.516 INFO    ] ================================================
[2026-06-19 09:38:37,532.532 INFO    ] Launching Daemon at Fri Jun 19 09:38:37 IST 2026
[2026-06-19 09:38:37,544.544 INFO    ] ================================================
[2026-06-19 09:38:38,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:38:38
[2026-06-19 09:38:38,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:38:38,976.976 INFO    ] Initializing speech engine...
[2026-06-19 09:38:38,985.985 INFO    ] 2026-06-19 09:38:38
[2026-06-19 09:38:39,232.232 INFO    ] 2026-06-19 09:38:39
[2026-06-19 09:38:39,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:38:39,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:38:39,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:38:39,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:38:39,710.710 INFO    ] time= 19/06/2026 09:38:39
[2026-06-19 09:38:39,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:38:39,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:38:39,951.951 INFO    ] No existing commands found in stream
[2026-06-19 09:38:44,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:38:44,972.972 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 09:38:47,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:38:47,023.023 INFO    ] Checking for system updates...
[2026-06-19 09:38:47,060.060 INFO    ] 200
[2026-06-19 09:38:47,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:38:47,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:38:47,120.120 INFO    ] No update needed
[2026-06-19 09:38:47,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 09:38:47,158.158 INFO    ] 200
[2026-06-19 09:38:47,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:38:47,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:38:47,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:38:47,241.241 INFO    ] No camera update needed
[2026-06-19 09:38:47,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:38:47,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:38:47,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:38:47,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:38:49,298.298 INFO    ] ================================================
[2026-06-19 09:38:49,314.314 INFO    ] Launching Daemon at Fri Jun 19 09:38:49 IST 2026
[2026-06-19 09:38:49,325.325 INFO    ] ================================================
[2026-06-19 09:38:49,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:38:49
[2026-06-19 09:38:50,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:38:50,761.761 INFO    ] Initializing speech engine...
[2026-06-19 09:38:50,770.770 INFO    ] 2026-06-19 09:38:50
[2026-06-19 09:38:51,061.061 INFO    ] 2026-06-19 09:38:51
[2026-06-19 09:38:51,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:38:51,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:38:51,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:38:51,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:38:51,472.472 INFO    ] time= 19/06/2026 09:38:51
[2026-06-19 09:38:51,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:38:51,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:38:51,646.646 INFO    ] No existing commands found in stream
[2026-06-19 09:38:56,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:38:56,680.680 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 09:39:00,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:39:00,885.885 INFO    ] Checking for system updates...
[2026-06-19 09:39:00,921.921 INFO    ] 200
[2026-06-19 09:39:00,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:00,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:39:00,979.979 INFO    ] No update needed
[2026-06-19 09:39:00,982.982 INFO    ] Checking for camera pi updates...
[2026-06-19 09:39:01,016.016 INFO    ] 200
[2026-06-19 09:39:01,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:01,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:39:01,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:39:01,104.104 INFO    ] No camera update needed
[2026-06-19 09:39:01,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:39:01,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:39:01,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:39:01,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:39:03,164.164 INFO    ] ================================================
[2026-06-19 09:39:03,180.180 INFO    ] Launching Daemon at Fri Jun 19 09:39:03 IST 2026
[2026-06-19 09:39:03,191.191 INFO    ] ================================================
[2026-06-19 09:39:03,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:39:03
[2026-06-19 09:39:04,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:39:04,623.623 INFO    ] Initializing speech engine...
[2026-06-19 09:39:04,629.629 INFO    ] 2026-06-19 09:39:04
[2026-06-19 09:39:04,915.915 INFO    ] 2026-06-19 09:39:04
[2026-06-19 09:39:04,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:39:05,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:39:05,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:39:05,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:39:05,406.406 INFO    ] time= 19/06/2026 09:39:05
[2026-06-19 09:39:05,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:39:05,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:39:05,593.593 INFO    ] No existing commands found in stream
[2026-06-19 09:39:10,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:39:10,607.607 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 09:39:12,927.927 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:39:12,929.929 INFO    ] Checking for system updates...
[2026-06-19 09:39:12,965.965 INFO    ] 200
[2026-06-19 09:39:12,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:13,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:39:13,023.023 INFO    ] No update needed
[2026-06-19 09:39:13,026.026 INFO    ] Checking for camera pi updates...
[2026-06-19 09:39:13,060.060 INFO    ] 200
[2026-06-19 09:39:13,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:13,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:39:13,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:39:13,148.148 INFO    ] No camera update needed
[2026-06-19 09:39:13,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:39:13,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:39:13,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:39:13,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:39:15,204.204 INFO    ] ================================================
[2026-06-19 09:39:15,219.219 INFO    ] Launching Daemon at Fri Jun 19 09:39:15 IST 2026
[2026-06-19 09:39:15,229.229 INFO    ] ================================================
[2026-06-19 09:39:15,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:39:15
[2026-06-19 09:39:16,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:39:16,684.684 INFO    ] Initializing speech engine...
[2026-06-19 09:39:16,694.694 INFO    ] 2026-06-19 09:39:16
[2026-06-19 09:39:16,958.958 INFO    ] 2026-06-19 09:39:16
[2026-06-19 09:39:17,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:39:17,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:39:17,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:39:17,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:39:17,441.441 INFO    ] time= 19/06/2026 09:39:17
[2026-06-19 09:39:17,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:39:17,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:39:17,644.644 INFO    ] No existing commands found in stream
[2026-06-19 09:39:22,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:39:22,663.663 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 09:39:24,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:39:24,992.992 INFO    ] Checking for system updates...
[2026-06-19 09:39:25,029.029 INFO    ] 200
[2026-06-19 09:39:25,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:25,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:39:25,089.089 INFO    ] No update needed
[2026-06-19 09:39:25,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 09:39:25,126.126 INFO    ] 200
[2026-06-19 09:39:25,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:25,170.170 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:39:25,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:39:25,222.222 INFO    ] No camera update needed
[2026-06-19 09:39:25,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:39:25,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:39:25,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:39:25,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:39:27,280.280 INFO    ] ================================================
[2026-06-19 09:39:27,295.295 INFO    ] Launching Daemon at Fri Jun 19 09:39:27 IST 2026
[2026-06-19 09:39:27,306.306 INFO    ] ================================================
[2026-06-19 09:39:27,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:39:27
[2026-06-19 09:39:28,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:39:28,787.787 INFO    ] Initializing speech engine...
[2026-06-19 09:39:28,807.807 INFO    ] 2026-06-19 09:39:28
[2026-06-19 09:39:29,092.092 INFO    ] 2026-06-19 09:39:29
[2026-06-19 09:39:29,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:39:29,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:39:29,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:39:29,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:39:29,588.588 INFO    ] time= 19/06/2026 09:39:29
[2026-06-19 09:39:29,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:39:29,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:39:29,765.765 INFO    ] No existing commands found in stream
[2026-06-19 09:39:34,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:39:34,803.803 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 09:39:36,142.142 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:39:36,145.145 INFO    ] Checking for system updates...
[2026-06-19 09:39:36,186.186 INFO    ] 200
[2026-06-19 09:39:36,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:36,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:39:36,271.271 INFO    ] No update needed
[2026-06-19 09:39:36,274.274 INFO    ] Checking for camera pi updates...
[2026-06-19 09:39:36,314.314 INFO    ] 200
[2026-06-19 09:39:36,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:36,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:39:36,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:39:36,403.403 INFO    ] No camera update needed
[2026-06-19 09:39:36,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:39:36,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:39:36,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:39:36,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:39:38,459.459 INFO    ] ================================================
[2026-06-19 09:39:38,474.474 INFO    ] Launching Daemon at Fri Jun 19 09:39:38 IST 2026
[2026-06-19 09:39:38,485.485 INFO    ] ================================================
[2026-06-19 09:39:39,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:39:39
[2026-06-19 09:39:39,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:39:39,926.926 INFO    ] Initializing speech engine...
[2026-06-19 09:39:39,935.935 INFO    ] 2026-06-19 09:39:39
[2026-06-19 09:39:40,233.233 INFO    ] 2026-06-19 09:39:40
[2026-06-19 09:39:40,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:39:40,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:39:40,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:39:40,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:39:40,651.651 INFO    ] time= 19/06/2026 09:39:40
[2026-06-19 09:39:40,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:39:40,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:39:40,743.743 INFO    ] No existing commands found in stream
[2026-06-19 09:39:45,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:39:45,761.761 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 09:39:51,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:39:51,445.445 INFO    ] Checking for system updates...
[2026-06-19 09:39:51,481.481 INFO    ] 200
[2026-06-19 09:39:51,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:51,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:39:51,539.539 INFO    ] No update needed
[2026-06-19 09:39:51,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 09:39:51,575.575 INFO    ] 200
[2026-06-19 09:39:51,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:39:51,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:39:51,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:39:51,668.668 INFO    ] No camera update needed
[2026-06-19 09:39:51,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:39:51,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:39:51,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:39:51,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:39:53,723.723 INFO    ] ================================================
[2026-06-19 09:39:53,739.739 INFO    ] Launching Daemon at Fri Jun 19 09:39:53 IST 2026
[2026-06-19 09:39:53,749.749 INFO    ] ================================================
[2026-06-19 09:39:54,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:39:54
[2026-06-19 09:39:55,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:39:55,380.380 INFO    ] Initializing speech engine...
[2026-06-19 09:39:55,388.388 INFO    ] 2026-06-19 09:39:55
[2026-06-19 09:39:55,673.673 INFO    ] 2026-06-19 09:39:55
[2026-06-19 09:39:55,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:39:55,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:39:55,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:39:56,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:39:56,213.213 INFO    ] time= 19/06/2026 09:39:56
[2026-06-19 09:39:56,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:39:56,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:39:56,371.371 INFO    ] No existing commands found in stream
[2026-06-19 09:40:01,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:40:01,398.398 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 09:40:02,491.491 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:40:02,494.494 INFO    ] Checking for system updates...
[2026-06-19 09:40:02,547.547 INFO    ] 200
[2026-06-19 09:40:02,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:02,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:40:02,629.629 INFO    ] No update needed
[2026-06-19 09:40:02,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 09:40:02,681.681 INFO    ] 200
[2026-06-19 09:40:02,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:02,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:40:02,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:40:02,781.781 INFO    ] No camera update needed
[2026-06-19 09:40:02,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:40:02,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:40:02,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:40:02,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:40:04,845.845 INFO    ] ================================================
[2026-06-19 09:40:04,860.860 INFO    ] Launching Daemon at Fri Jun 19 09:40:04 IST 2026
[2026-06-19 09:40:04,871.871 INFO    ] ================================================
[2026-06-19 09:40:05,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:40:05
[2026-06-19 09:40:06,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:40:06,293.293 INFO    ] Initializing speech engine...
[2026-06-19 09:40:06,297.297 INFO    ] 2026-06-19 09:40:06
[2026-06-19 09:40:06,565.565 INFO    ] 2026-06-19 09:40:06
[2026-06-19 09:40:06,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:40:06,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:40:06,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:40:07,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:40:07,034.034 INFO    ] time= 19/06/2026 09:40:07
[2026-06-19 09:40:07,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:40:07,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:40:07,215.215 INFO    ] No existing commands found in stream
[2026-06-19 09:40:12,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:40:12,230.230 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 09:40:12,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:40:12,874.874 INFO    ] Checking for system updates...
[2026-06-19 09:40:12,911.911 INFO    ] 200
[2026-06-19 09:40:12,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:12,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:40:12,968.968 INFO    ] No update needed
[2026-06-19 09:40:12,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 09:40:13,009.009 INFO    ] 200
[2026-06-19 09:40:13,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:13,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:40:13,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:40:13,097.097 INFO    ] No camera update needed
[2026-06-19 09:40:13,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:40:13,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:40:13,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:40:13,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:40:15,155.155 INFO    ] ================================================
[2026-06-19 09:40:15,170.170 INFO    ] Launching Daemon at Fri Jun 19 09:40:15 IST 2026
[2026-06-19 09:40:15,181.181 INFO    ] ================================================
[2026-06-19 09:40:15,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:40:15
[2026-06-19 09:40:16,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:40:16,780.780 INFO    ] Initializing speech engine...
[2026-06-19 09:40:16,793.793 INFO    ] 2026-06-19 09:40:16
[2026-06-19 09:40:17,060.060 INFO    ] 2026-06-19 09:40:17
[2026-06-19 09:40:17,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:40:17,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:40:17,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:40:17,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:40:17,611.611 INFO    ] time= 19/06/2026 09:40:17
[2026-06-19 09:40:17,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:40:17,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:40:17,771.771 INFO    ] No existing commands found in stream
[2026-06-19 09:40:22,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:40:22,804.804 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 09:40:24,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:40:24,707.707 INFO    ] Checking for system updates...
[2026-06-19 09:40:24,744.744 INFO    ] 200
[2026-06-19 09:40:24,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:24,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:40:24,811.811 INFO    ] No update needed
[2026-06-19 09:40:24,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 09:40:24,848.848 INFO    ] 200
[2026-06-19 09:40:24,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:24,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:40:25,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:40:25,036.036 INFO    ] No camera update needed
[2026-06-19 09:40:25,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:40:25,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:40:25,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:40:25,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:40:27,092.092 INFO    ] ================================================
[2026-06-19 09:40:27,107.107 INFO    ] Launching Daemon at Fri Jun 19 09:40:27 IST 2026
[2026-06-19 09:40:27,117.117 INFO    ] ================================================
[2026-06-19 09:40:27,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:40:27
[2026-06-19 09:40:28,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:40:28,557.557 INFO    ] Initializing speech engine...
[2026-06-19 09:40:28,566.566 INFO    ] 2026-06-19 09:40:28
[2026-06-19 09:40:28,855.855 INFO    ] 2026-06-19 09:40:28
[2026-06-19 09:40:28,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:40:29,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:40:29,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:40:29,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:40:29,275.275 INFO    ] time= 19/06/2026 09:40:29
[2026-06-19 09:40:29,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:40:29,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:40:29,362.362 INFO    ] No existing commands found in stream
[2026-06-19 09:40:34,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:40:34,400.400 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 09:40:35,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:40:35,688.688 INFO    ] Checking for system updates...
[2026-06-19 09:40:35,724.724 INFO    ] 200
[2026-06-19 09:40:35,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:35,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:40:35,788.788 INFO    ] No update needed
[2026-06-19 09:40:35,791.791 INFO    ] Checking for camera pi updates...
[2026-06-19 09:40:35,824.824 INFO    ] 200
[2026-06-19 09:40:35,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:35,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:40:35,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:40:35,918.918 INFO    ] No camera update needed
[2026-06-19 09:40:35,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:40:35,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:40:35,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:40:35,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:40:37,974.974 INFO    ] ================================================
[2026-06-19 09:40:37,989.989 INFO    ] Launching Daemon at Fri Jun 19 09:40:37 IST 2026
[2026-06-19 09:40:38,000.000 INFO    ] ================================================
[2026-06-19 09:40:38,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:40:38
[2026-06-19 09:40:39,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:40:39,561.561 INFO    ] Initializing speech engine...
[2026-06-19 09:40:39,571.571 INFO    ] 2026-06-19 09:40:39
[2026-06-19 09:40:39,820.820 INFO    ] 2026-06-19 09:40:39
[2026-06-19 09:40:39,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:40:40,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:40:40,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:40:40,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:40:40,306.306 INFO    ] time= 19/06/2026 09:40:40
[2026-06-19 09:40:40,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:40:40,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:40:40,516.516 INFO    ] No existing commands found in stream
[2026-06-19 09:40:45,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:40:45,543.543 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 09:40:48,078.078 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:40:48,081.081 INFO    ] Checking for system updates...
[2026-06-19 09:40:48,117.117 INFO    ] 200
[2026-06-19 09:40:48,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:48,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:40:48,176.176 INFO    ] No update needed
[2026-06-19 09:40:48,178.178 INFO    ] Checking for camera pi updates...
[2026-06-19 09:40:48,213.213 INFO    ] 200
[2026-06-19 09:40:48,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:40:48,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:40:48,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:40:48,292.292 INFO    ] No camera update needed
[2026-06-19 09:40:48,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:40:48,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:40:48,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:40:48,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:40:50,349.349 INFO    ] ================================================
[2026-06-19 09:40:50,364.364 INFO    ] Launching Daemon at Fri Jun 19 09:40:50 IST 2026
[2026-06-19 09:40:50,375.375 INFO    ] ================================================
[2026-06-19 09:40:50,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:40:50
[2026-06-19 09:40:51,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:40:51,828.828 INFO    ] Initializing speech engine...
[2026-06-19 09:40:51,853.853 INFO    ] 2026-06-19 09:40:51
[2026-06-19 09:40:52,124.124 INFO    ] 2026-06-19 09:40:52
[2026-06-19 09:40:52,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:40:52,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:40:52,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:40:52,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:40:52,540.540 INFO    ] time= 19/06/2026 09:40:52
[2026-06-19 09:40:52,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:40:52,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:40:52,627.627 INFO    ] No existing commands found in stream
[2026-06-19 09:40:57,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:40:57,645.645 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 09:41:00,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:41:00,370.370 INFO    ] Checking for system updates...
[2026-06-19 09:41:00,409.409 INFO    ] 200
[2026-06-19 09:41:00,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:00,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:41:00,467.467 INFO    ] No update needed
[2026-06-19 09:41:00,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 09:41:00,504.504 INFO    ] 200
[2026-06-19 09:41:00,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:00,548.548 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:41:00,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:41:00,593.593 INFO    ] No camera update needed
[2026-06-19 09:41:00,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:41:00,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:41:00,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:41:00,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:41:02,654.654 INFO    ] ================================================
[2026-06-19 09:41:02,672.672 INFO    ] Launching Daemon at Fri Jun 19 09:41:02 IST 2026
[2026-06-19 09:41:02,684.684 INFO    ] ================================================
[2026-06-19 09:41:03,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:41:03
[2026-06-19 09:41:04,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:41:04,324.324 INFO    ] Initializing speech engine...
[2026-06-19 09:41:04,337.337 INFO    ] 2026-06-19 09:41:04
[2026-06-19 09:41:04,590.590 INFO    ] 2026-06-19 09:41:04
[2026-06-19 09:41:04,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:41:04,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:41:04,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:41:05,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:41:05,214.214 INFO    ] time= 19/06/2026 09:41:05
[2026-06-19 09:41:05,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:41:05,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:41:05,416.416 INFO    ] No existing commands found in stream
[2026-06-19 09:41:10,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:41:10,435.435 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 09:41:11,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:41:11,920.920 INFO    ] Checking for system updates...
[2026-06-19 09:41:11,956.956 INFO    ] 200
[2026-06-19 09:41:11,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:12,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:41:12,014.014 INFO    ] No update needed
[2026-06-19 09:41:12,016.016 INFO    ] Checking for camera pi updates...
[2026-06-19 09:41:12,050.050 INFO    ] 200
[2026-06-19 09:41:12,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:12,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:41:12,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:41:12,136.136 INFO    ] No camera update needed
[2026-06-19 09:41:12,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:41:12,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:41:12,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:41:12,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:41:14,193.193 INFO    ] ================================================
[2026-06-19 09:41:14,211.211 INFO    ] Launching Daemon at Fri Jun 19 09:41:14 IST 2026
[2026-06-19 09:41:14,226.226 INFO    ] ================================================
[2026-06-19 09:41:14,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:41:14
[2026-06-19 09:41:15,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:41:15,662.662 INFO    ] Initializing speech engine...
[2026-06-19 09:41:15,683.683 INFO    ] 2026-06-19 09:41:15
[2026-06-19 09:41:15,950.950 INFO    ] 2026-06-19 09:41:15
[2026-06-19 09:41:15,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:41:16,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:41:16,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:41:16,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:41:16,363.363 INFO    ] time= 19/06/2026 09:41:16
[2026-06-19 09:41:16,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:41:16,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:41:16,523.523 INFO    ] No existing commands found in stream
[2026-06-19 09:41:21,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:41:21,546.546 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 09:41:25,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:41:25,370.370 INFO    ] Checking for system updates...
[2026-06-19 09:41:25,406.406 INFO    ] 200
[2026-06-19 09:41:25,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:25,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:41:25,463.463 INFO    ] No update needed
[2026-06-19 09:41:25,466.466 INFO    ] Checking for camera pi updates...
[2026-06-19 09:41:25,501.501 INFO    ] 200
[2026-06-19 09:41:25,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:25,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:41:25,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:41:25,591.591 INFO    ] No camera update needed
[2026-06-19 09:41:25,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:41:25,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:41:25,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:41:25,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:41:27,648.648 INFO    ] ================================================
[2026-06-19 09:41:27,663.663 INFO    ] Launching Daemon at Fri Jun 19 09:41:27 IST 2026
[2026-06-19 09:41:27,674.674 INFO    ] ================================================
[2026-06-19 09:41:28,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:41:28
[2026-06-19 09:41:28,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:41:29,177.177 INFO    ] Initializing speech engine...
[2026-06-19 09:41:29,184.184 INFO    ] 2026-06-19 09:41:29
[2026-06-19 09:41:29,448.448 INFO    ] 2026-06-19 09:41:29
[2026-06-19 09:41:29,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:41:29,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:41:29,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:41:29,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:41:29,953.953 INFO    ] time= 19/06/2026 09:41:29
[2026-06-19 09:41:29,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:41:30,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:41:30,142.142 INFO    ] No existing commands found in stream
[2026-06-19 09:41:35,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:41:35,160.160 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 09:41:39,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:41:39,133.133 INFO    ] Checking for system updates...
[2026-06-19 09:41:39,170.170 INFO    ] 200
[2026-06-19 09:41:39,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:39,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:41:39,228.228 INFO    ] No update needed
[2026-06-19 09:41:39,231.231 INFO    ] Checking for camera pi updates...
[2026-06-19 09:41:39,266.266 INFO    ] 200
[2026-06-19 09:41:39,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:39,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:41:39,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:41:39,367.367 INFO    ] No camera update needed
[2026-06-19 09:41:39,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:41:39,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:41:39,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:41:39,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:41:41,429.429 INFO    ] ================================================
[2026-06-19 09:41:41,445.445 INFO    ] Launching Daemon at Fri Jun 19 09:41:41 IST 2026
[2026-06-19 09:41:41,456.456 INFO    ] ================================================
[2026-06-19 09:41:42,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:41:42
[2026-06-19 09:41:42,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:41:43,051.051 INFO    ] Initializing speech engine...
[2026-06-19 09:41:43,070.070 INFO    ] 2026-06-19 09:41:43
[2026-06-19 09:41:43,336.336 INFO    ] 2026-06-19 09:41:43
[2026-06-19 09:41:43,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:41:43,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:41:43,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:41:43,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:41:43,858.858 INFO    ] time= 19/06/2026 09:41:43
[2026-06-19 09:41:43,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:41:43,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:41:44,043.043 INFO    ] No existing commands found in stream
[2026-06-19 09:41:49,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:41:49,073.073 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 09:41:51,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:41:51,985.985 INFO    ] Checking for system updates...
[2026-06-19 09:41:52,023.023 INFO    ] 200
[2026-06-19 09:41:52,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:52,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:41:52,082.082 INFO    ] No update needed
[2026-06-19 09:41:52,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 09:41:52,119.119 INFO    ] 200
[2026-06-19 09:41:52,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:41:52,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:41:52,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:41:52,210.210 INFO    ] No camera update needed
[2026-06-19 09:41:52,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:41:52,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:41:52,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:41:52,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:41:54,266.266 INFO    ] ================================================
[2026-06-19 09:41:54,282.282 INFO    ] Launching Daemon at Fri Jun 19 09:41:54 IST 2026
[2026-06-19 09:41:54,293.293 INFO    ] ================================================
[2026-06-19 09:41:54,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:41:54
[2026-06-19 09:41:55,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:41:55,930.930 INFO    ] Initializing speech engine...
[2026-06-19 09:41:55,942.942 INFO    ] 2026-06-19 09:41:55
[2026-06-19 09:41:56,229.229 INFO    ] 2026-06-19 09:41:56
[2026-06-19 09:41:56,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:41:56,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:41:56,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:41:56,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:41:56,762.762 INFO    ] time= 19/06/2026 09:41:56
[2026-06-19 09:41:56,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:41:56,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:41:56,919.919 INFO    ] No existing commands found in stream
[2026-06-19 09:42:01,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:42:01,972.972 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 09:42:03,585.585 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:42:03,588.588 INFO    ] Checking for system updates...
[2026-06-19 09:42:03,625.625 INFO    ] 200
[2026-06-19 09:42:03,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:03,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:42:03,688.688 INFO    ] No update needed
[2026-06-19 09:42:03,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 09:42:03,728.728 INFO    ] 200
[2026-06-19 09:42:03,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:03,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:42:03,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:42:03,821.821 INFO    ] No camera update needed
[2026-06-19 09:42:03,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:42:03,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:42:03,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:42:03,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:42:05,877.877 INFO    ] ================================================
[2026-06-19 09:42:05,892.892 INFO    ] Launching Daemon at Fri Jun 19 09:42:05 IST 2026
[2026-06-19 09:42:05,903.903 INFO    ] ================================================
[2026-06-19 09:42:06,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:42:06
[2026-06-19 09:42:07,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:42:07,349.349 INFO    ] Initializing speech engine...
[2026-06-19 09:42:07,355.355 INFO    ] 2026-06-19 09:42:07
[2026-06-19 09:42:07,600.600 INFO    ] 2026-06-19 09:42:07
[2026-06-19 09:42:07,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:42:07,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:42:07,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:42:08,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:42:08,069.069 INFO    ] time= 19/06/2026 09:42:08
[2026-06-19 09:42:08,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:42:08,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:42:08,289.289 INFO    ] No existing commands found in stream
[2026-06-19 09:42:13,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:42:13,319.319 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 09:42:14,045.045 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:42:14,048.048 INFO    ] Checking for system updates...
[2026-06-19 09:42:14,084.084 INFO    ] 200
[2026-06-19 09:42:14,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:14,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:42:14,142.142 INFO    ] No update needed
[2026-06-19 09:42:14,145.145 INFO    ] Checking for camera pi updates...
[2026-06-19 09:42:14,178.178 INFO    ] 200
[2026-06-19 09:42:14,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:14,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:42:14,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:42:14,267.267 INFO    ] No camera update needed
[2026-06-19 09:42:14,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:42:14,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:42:14,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:42:14,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:42:16,322.322 INFO    ] ================================================
[2026-06-19 09:42:16,338.338 INFO    ] Launching Daemon at Fri Jun 19 09:42:16 IST 2026
[2026-06-19 09:42:16,349.349 INFO    ] ================================================
[2026-06-19 09:42:16,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:42:16
[2026-06-19 09:42:17,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:42:17,817.817 INFO    ] Initializing speech engine...
[2026-06-19 09:42:17,826.826 INFO    ] 2026-06-19 09:42:17
[2026-06-19 09:42:18,087.087 INFO    ] 2026-06-19 09:42:18
[2026-06-19 09:42:18,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:42:18,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:42:18,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:42:18,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:42:18,575.575 INFO    ] time= 19/06/2026 09:42:18
[2026-06-19 09:42:18,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:42:18,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:42:18,772.772 INFO    ] No existing commands found in stream
[2026-06-19 09:42:23,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:42:23,800.800 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 09:42:26,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:42:26,256.256 INFO    ] Checking for system updates...
[2026-06-19 09:42:26,293.293 INFO    ] 200
[2026-06-19 09:42:26,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:26,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:42:26,351.351 INFO    ] No update needed
[2026-06-19 09:42:26,353.353 INFO    ] Checking for camera pi updates...
[2026-06-19 09:42:26,387.387 INFO    ] 200
[2026-06-19 09:42:26,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:26,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:42:26,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:42:26,483.483 INFO    ] No camera update needed
[2026-06-19 09:42:26,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:42:26,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:42:26,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:42:26,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:42:28,541.541 INFO    ] ================================================
[2026-06-19 09:42:28,557.557 INFO    ] Launching Daemon at Fri Jun 19 09:42:28 IST 2026
[2026-06-19 09:42:28,568.568 INFO    ] ================================================
[2026-06-19 09:42:29,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:42:29
[2026-06-19 09:42:29,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:42:30,138.138 INFO    ] Initializing speech engine...
[2026-06-19 09:42:30,147.147 INFO    ] 2026-06-19 09:42:30
[2026-06-19 09:42:30,395.395 INFO    ] 2026-06-19 09:42:30
[2026-06-19 09:42:30,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:42:30,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:42:30,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:42:30,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:42:30,820.820 INFO    ] time= 19/06/2026 09:42:30
[2026-06-19 09:42:30,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:42:30,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:42:30,907.907 INFO    ] No existing commands found in stream
[2026-06-19 09:42:35,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:42:35,920.920 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 09:42:36,704.704 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:42:36,707.707 INFO    ] Checking for system updates...
[2026-06-19 09:42:36,748.748 INFO    ] 200
[2026-06-19 09:42:36,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:36,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:42:36,808.808 INFO    ] No update needed
[2026-06-19 09:42:36,811.811 INFO    ] Checking for camera pi updates...
[2026-06-19 09:42:36,850.850 INFO    ] 200
[2026-06-19 09:42:36,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:36,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:42:36,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:42:36,951.951 INFO    ] No camera update needed
[2026-06-19 09:42:36,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:42:36,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:42:36,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:42:36,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:42:39,011.011 INFO    ] ================================================
[2026-06-19 09:42:39,028.028 INFO    ] Launching Daemon at Fri Jun 19 09:42:39 IST 2026
[2026-06-19 09:42:39,039.039 INFO    ] ================================================
[2026-06-19 09:42:39,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:42:39
[2026-06-19 09:42:40,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:42:40,622.622 INFO    ] Initializing speech engine...
[2026-06-19 09:42:40,631.631 INFO    ] 2026-06-19 09:42:40
[2026-06-19 09:42:40,908.908 INFO    ] 2026-06-19 09:42:40
[2026-06-19 09:42:40,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:42:41,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:42:41,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:42:41,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:42:41,468.468 INFO    ] time= 19/06/2026 09:42:41
[2026-06-19 09:42:41,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:42:41,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:42:41,651.651 INFO    ] No existing commands found in stream
[2026-06-19 09:42:46,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:42:46,686.686 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 09:42:47,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:42:47,137.137 INFO    ] Checking for system updates...
[2026-06-19 09:42:47,174.174 INFO    ] 200
[2026-06-19 09:42:47,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:47,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:42:47,242.242 INFO    ] No update needed
[2026-06-19 09:42:47,244.244 INFO    ] Checking for camera pi updates...
[2026-06-19 09:42:47,285.285 INFO    ] 200
[2026-06-19 09:42:47,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:42:47,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:42:47,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:42:47,372.372 INFO    ] No camera update needed
[2026-06-19 09:42:47,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:42:47,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:42:47,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:42:47,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:42:49,433.433 INFO    ] ================================================
[2026-06-19 09:42:49,448.448 INFO    ] Launching Daemon at Fri Jun 19 09:42:49 IST 2026
[2026-06-19 09:42:49,459.459 INFO    ] ================================================
[2026-06-19 09:42:50,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:42:50
[2026-06-19 09:42:50,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:42:50,890.890 INFO    ] Initializing speech engine...
[2026-06-19 09:42:50,897.897 INFO    ] 2026-06-19 09:42:50
[2026-06-19 09:42:51,140.140 INFO    ] 2026-06-19 09:42:51
[2026-06-19 09:42:51,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:42:51,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:42:51,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:42:51,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:42:51,615.615 INFO    ] time= 19/06/2026 09:42:51
[2026-06-19 09:42:51,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:42:51,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:42:51,828.828 INFO    ] No existing commands found in stream
[2026-06-19 09:42:56,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:42:56,858.858 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 09:42:59,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:42:59,912.912 INFO    ] Checking for system updates...
[2026-06-19 09:42:59,950.950 INFO    ] 200
[2026-06-19 09:42:59,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:00,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:43:00,010.010 INFO    ] No update needed
[2026-06-19 09:43:00,013.013 INFO    ] Checking for camera pi updates...
[2026-06-19 09:43:00,048.048 INFO    ] 200
[2026-06-19 09:43:00,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:00,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:43:00,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:43:00,126.126 INFO    ] No camera update needed
[2026-06-19 09:43:00,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:43:00,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:43:00,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:43:00,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:43:02,188.188 INFO    ] ================================================
[2026-06-19 09:43:02,208.208 INFO    ] Launching Daemon at Fri Jun 19 09:43:02 IST 2026
[2026-06-19 09:43:02,224.224 INFO    ] ================================================
[2026-06-19 09:43:02,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:43:02
[2026-06-19 09:43:03,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:43:03,804.804 INFO    ] Initializing speech engine...
[2026-06-19 09:43:03,839.839 INFO    ] 2026-06-19 09:43:03
[2026-06-19 09:43:04,148.148 INFO    ] 2026-06-19 09:43:04
[2026-06-19 09:43:04,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:43:04,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:43:04,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:43:04,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:43:04,615.615 INFO    ] time= 19/06/2026 09:43:04
[2026-06-19 09:43:04,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:43:04,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:43:04,797.797 INFO    ] No existing commands found in stream
[2026-06-19 09:43:09,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:43:09,812.812 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 09:43:13,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:43:13,764.764 INFO    ] Checking for system updates...
[2026-06-19 09:43:13,800.800 INFO    ] 200
[2026-06-19 09:43:13,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:13,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:43:13,859.859 INFO    ] No update needed
[2026-06-19 09:43:13,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 09:43:13,895.895 INFO    ] 200
[2026-06-19 09:43:13,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:13,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:43:13,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:43:13,990.990 INFO    ] No camera update needed
[2026-06-19 09:43:13,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:43:13,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:43:14,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:43:14,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:43:16,048.048 INFO    ] ================================================
[2026-06-19 09:43:16,063.063 INFO    ] Launching Daemon at Fri Jun 19 09:43:16 IST 2026
[2026-06-19 09:43:16,074.074 INFO    ] ================================================
[2026-06-19 09:43:16,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:43:16
[2026-06-19 09:43:17,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:43:17,485.485 INFO    ] Initializing speech engine...
[2026-06-19 09:43:17,494.494 INFO    ] 2026-06-19 09:43:17
[2026-06-19 09:43:17,791.791 INFO    ] 2026-06-19 09:43:17
[2026-06-19 09:43:17,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:43:18,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:43:18,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:43:18,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:43:18,215.215 INFO    ] time= 19/06/2026 09:43:18
[2026-06-19 09:43:18,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:43:18,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:43:18,308.308 INFO    ] No existing commands found in stream
[2026-06-19 09:43:23,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:43:23,341.341 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 09:43:25,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:43:25,905.905 INFO    ] Checking for system updates...
[2026-06-19 09:43:25,942.942 INFO    ] 200
[2026-06-19 09:43:25,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:25,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:43:26,000.000 INFO    ] No update needed
[2026-06-19 09:43:26,002.002 INFO    ] Checking for camera pi updates...
[2026-06-19 09:43:26,036.036 INFO    ] 200
[2026-06-19 09:43:26,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:26,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:43:26,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:43:26,134.134 INFO    ] No camera update needed
[2026-06-19 09:43:26,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:43:26,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:43:26,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:43:26,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:43:28,189.189 INFO    ] ================================================
[2026-06-19 09:43:28,205.205 INFO    ] Launching Daemon at Fri Jun 19 09:43:28 IST 2026
[2026-06-19 09:43:28,217.217 INFO    ] ================================================
[2026-06-19 09:43:28,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:43:28
[2026-06-19 09:43:29,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:43:29,663.663 INFO    ] Initializing speech engine...
[2026-06-19 09:43:29,672.672 INFO    ] 2026-06-19 09:43:29
[2026-06-19 09:43:29,921.921 INFO    ] 2026-06-19 09:43:29
[2026-06-19 09:43:29,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:43:30,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:43:30,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:43:30,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:43:30,402.402 INFO    ] time= 19/06/2026 09:43:30
[2026-06-19 09:43:30,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:43:30,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:43:30,625.625 INFO    ] No existing commands found in stream
[2026-06-19 09:43:35,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:43:35,649.649 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 09:43:36,528.528 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:43:36,531.531 INFO    ] Checking for system updates...
[2026-06-19 09:43:36,567.567 INFO    ] 200
[2026-06-19 09:43:36,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:36,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:43:36,627.627 INFO    ] No update needed
[2026-06-19 09:43:36,629.629 INFO    ] Checking for camera pi updates...
[2026-06-19 09:43:36,663.663 INFO    ] 200
[2026-06-19 09:43:36,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:36,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:43:36,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:43:36,749.749 INFO    ] No camera update needed
[2026-06-19 09:43:36,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:43:36,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:43:36,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:43:36,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:43:38,805.805 INFO    ] ================================================
[2026-06-19 09:43:38,821.821 INFO    ] Launching Daemon at Fri Jun 19 09:43:38 IST 2026
[2026-06-19 09:43:38,832.832 INFO    ] ================================================
[2026-06-19 09:43:39,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:43:39
[2026-06-19 09:43:40,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:43:40,296.296 INFO    ] Initializing speech engine...
[2026-06-19 09:43:40,305.305 INFO    ] 2026-06-19 09:43:40
[2026-06-19 09:43:40,568.568 INFO    ] 2026-06-19 09:43:40
[2026-06-19 09:43:40,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:43:40,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:43:40,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:43:41,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:43:41,110.110 INFO    ] time= 19/06/2026 09:43:41
[2026-06-19 09:43:41,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:43:41,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:43:41,244.244 INFO    ] No existing commands found in stream
[2026-06-19 09:43:46,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:43:46,277.277 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 09:43:50,430.430 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:43:50,433.433 INFO    ] Checking for system updates...
[2026-06-19 09:43:50,474.474 INFO    ] 200
[2026-06-19 09:43:50,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:50,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:43:50,540.540 INFO    ] No update needed
[2026-06-19 09:43:50,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 09:43:50,576.576 INFO    ] 200
[2026-06-19 09:43:50,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:43:50,619.619 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:43:50,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:43:50,651.651 INFO    ] No camera update needed
[2026-06-19 09:43:50,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:43:50,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:43:50,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:43:50,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:43:52,707.707 INFO    ] ================================================
[2026-06-19 09:43:52,723.723 INFO    ] Launching Daemon at Fri Jun 19 09:43:52 IST 2026
[2026-06-19 09:43:52,735.735 INFO    ] ================================================
[2026-06-19 09:43:53,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:43:53
[2026-06-19 09:43:54,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:43:54,361.361 INFO    ] Initializing speech engine...
[2026-06-19 09:43:54,368.368 INFO    ] 2026-06-19 09:43:54
[2026-06-19 09:43:54,640.640 INFO    ] 2026-06-19 09:43:54
[2026-06-19 09:43:54,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:43:54,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:43:54,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:43:55,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:43:55,192.192 INFO    ] time= 19/06/2026 09:43:55
[2026-06-19 09:43:55,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:43:55,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:43:55,356.356 INFO    ] No existing commands found in stream
[2026-06-19 09:44:00,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:44:00,380.380 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 09:44:02,729.729 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:44:02,732.732 INFO    ] Checking for system updates...
[2026-06-19 09:44:02,779.779 INFO    ] 200
[2026-06-19 09:44:02,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:02,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:44:02,844.844 INFO    ] No update needed
[2026-06-19 09:44:02,848.848 INFO    ] Checking for camera pi updates...
[2026-06-19 09:44:02,885.885 INFO    ] 200
[2026-06-19 09:44:02,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:02,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:44:02,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:44:02,993.993 INFO    ] No camera update needed
[2026-06-19 09:44:02,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:44:02,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:44:03,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:44:03,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:44:05,058.058 INFO    ] ================================================
[2026-06-19 09:44:05,075.075 INFO    ] Launching Daemon at Fri Jun 19 09:44:05 IST 2026
[2026-06-19 09:44:05,086.086 INFO    ] ================================================
[2026-06-19 09:44:05,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:44:05
[2026-06-19 09:44:06,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:44:06,513.513 INFO    ] Initializing speech engine...
[2026-06-19 09:44:06,522.522 INFO    ] 2026-06-19 09:44:06
[2026-06-19 09:44:06,831.831 INFO    ] 2026-06-19 09:44:06
[2026-06-19 09:44:06,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:44:07,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:44:07,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:44:07,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:44:07,338.338 INFO    ] time= 19/06/2026 09:44:07
[2026-06-19 09:44:07,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:44:07,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:44:07,525.525 INFO    ] No existing commands found in stream
[2026-06-19 09:44:12,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:44:12,539.539 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 09:44:13,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:44:13,680.680 INFO    ] Checking for system updates...
[2026-06-19 09:44:13,717.717 INFO    ] 200
[2026-06-19 09:44:13,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:13,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:44:13,783.783 INFO    ] No update needed
[2026-06-19 09:44:13,786.786 INFO    ] Checking for camera pi updates...
[2026-06-19 09:44:13,821.821 INFO    ] 200
[2026-06-19 09:44:13,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:13,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:44:13,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:44:13,918.918 INFO    ] No camera update needed
[2026-06-19 09:44:13,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:44:13,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:44:13,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:44:13,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:44:15,973.973 INFO    ] ================================================
[2026-06-19 09:44:15,989.989 INFO    ] Launching Daemon at Fri Jun 19 09:44:15 IST 2026
[2026-06-19 09:44:16,001.001 INFO    ] ================================================
[2026-06-19 09:44:16,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:44:16
[2026-06-19 09:44:17,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:44:17,437.437 INFO    ] Initializing speech engine...
[2026-06-19 09:44:17,446.446 INFO    ] 2026-06-19 09:44:17
[2026-06-19 09:44:17,694.694 INFO    ] 2026-06-19 09:44:17
[2026-06-19 09:44:17,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:44:17,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:44:17,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:44:18,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:44:18,066.066 INFO    ] time= 19/06/2026 09:44:18
[2026-06-19 09:44:18,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:44:18,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:44:18,253.253 INFO    ] No existing commands found in stream
[2026-06-19 09:44:23,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:44:23,277.277 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 09:44:24,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:44:24,520.520 INFO    ] Checking for system updates...
[2026-06-19 09:44:24,560.560 INFO    ] 200
[2026-06-19 09:44:24,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:24,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:44:24,617.617 INFO    ] No update needed
[2026-06-19 09:44:24,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 09:44:24,653.653 INFO    ] 200
[2026-06-19 09:44:24,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:24,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:44:24,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:44:24,749.749 INFO    ] No camera update needed
[2026-06-19 09:44:24,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:44:24,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:44:24,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:44:24,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:44:26,806.806 INFO    ] ================================================
[2026-06-19 09:44:26,822.822 INFO    ] Launching Daemon at Fri Jun 19 09:44:26 IST 2026
[2026-06-19 09:44:26,833.833 INFO    ] ================================================
[2026-06-19 09:44:27,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:44:27
[2026-06-19 09:44:27,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:44:28,260.260 INFO    ] Initializing speech engine...
[2026-06-19 09:44:28,268.268 INFO    ] 2026-06-19 09:44:28
[2026-06-19 09:44:28,517.517 INFO    ] 2026-06-19 09:44:28
[2026-06-19 09:44:28,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:44:28,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:44:28,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:44:28,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:44:29,014.014 INFO    ] time= 19/06/2026 09:44:28
[2026-06-19 09:44:29,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:44:29,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:44:29,215.215 INFO    ] No existing commands found in stream
[2026-06-19 09:44:34,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:44:34,242.242 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 09:44:34,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:44:34,844.844 INFO    ] Checking for system updates...
[2026-06-19 09:44:34,880.880 INFO    ] 200
[2026-06-19 09:44:34,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:34,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:44:34,939.939 INFO    ] No update needed
[2026-06-19 09:44:34,941.941 INFO    ] Checking for camera pi updates...
[2026-06-19 09:44:34,975.975 INFO    ] 200
[2026-06-19 09:44:34,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:35,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:44:35,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:44:35,169.169 INFO    ] No camera update needed
[2026-06-19 09:44:35,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:44:35,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:44:35,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:44:35,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:44:37,228.228 INFO    ] ================================================
[2026-06-19 09:44:37,244.244 INFO    ] Launching Daemon at Fri Jun 19 09:44:37 IST 2026
[2026-06-19 09:44:37,255.255 INFO    ] ================================================
[2026-06-19 09:44:37,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:44:37
[2026-06-19 09:44:38,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:44:38,676.676 INFO    ] Initializing speech engine...
[2026-06-19 09:44:38,683.683 INFO    ] 2026-06-19 09:44:38
[2026-06-19 09:44:38,977.977 INFO    ] 2026-06-19 09:44:38
[2026-06-19 09:44:39,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:44:39,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:44:39,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:44:39,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:44:39,360.360 INFO    ] time= 19/06/2026 09:44:39
[2026-06-19 09:44:39,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:44:39,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:44:39,485.485 INFO    ] No existing commands found in stream
[2026-06-19 09:44:44,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:44:44,501.501 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 09:44:45,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:44:45,259.259 INFO    ] Checking for system updates...
[2026-06-19 09:44:45,295.295 INFO    ] 200
[2026-06-19 09:44:45,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:45,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:44:45,351.351 INFO    ] No update needed
[2026-06-19 09:44:45,354.354 INFO    ] Checking for camera pi updates...
[2026-06-19 09:44:45,387.387 INFO    ] 200
[2026-06-19 09:44:45,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:45,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:44:45,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:44:45,486.486 INFO    ] No camera update needed
[2026-06-19 09:44:45,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:44:45,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:44:45,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:44:45,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:44:47,542.542 INFO    ] ================================================
[2026-06-19 09:44:47,558.558 INFO    ] Launching Daemon at Fri Jun 19 09:44:47 IST 2026
[2026-06-19 09:44:47,569.569 INFO    ] ================================================
[2026-06-19 09:44:48,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:44:48
[2026-06-19 09:44:48,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:44:49,221.221 INFO    ] Initializing speech engine...
[2026-06-19 09:44:49,227.227 INFO    ] 2026-06-19 09:44:49
[2026-06-19 09:44:49,512.512 INFO    ] 2026-06-19 09:44:49
[2026-06-19 09:44:49,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:44:49,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:44:49,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:44:50,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:44:50,046.046 INFO    ] time= 19/06/2026 09:44:50
[2026-06-19 09:44:50,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:44:50,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:44:50,213.213 INFO    ] No existing commands found in stream
[2026-06-19 09:44:55,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:44:55,247.247 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 09:44:56,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:44:56,682.682 INFO    ] Checking for system updates...
[2026-06-19 09:44:56,724.724 INFO    ] 200
[2026-06-19 09:44:56,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:56,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:44:56,791.791 INFO    ] No update needed
[2026-06-19 09:44:56,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 09:44:56,834.834 INFO    ] 200
[2026-06-19 09:44:56,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:44:56,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:44:56,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:44:56,933.933 INFO    ] No camera update needed
[2026-06-19 09:44:56,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:44:56,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:44:56,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:44:56,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:44:58,990.990 INFO    ] ================================================
[2026-06-19 09:44:59,006.006 INFO    ] Launching Daemon at Fri Jun 19 09:44:59 IST 2026
[2026-06-19 09:44:59,018.018 INFO    ] ================================================
[2026-06-19 09:44:59,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:44:59
[2026-06-19 09:45:00,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:45:00,663.663 INFO    ] Initializing speech engine...
[2026-06-19 09:45:00,677.677 INFO    ] 2026-06-19 09:45:00
[2026-06-19 09:45:00,984.984 INFO    ] 2026-06-19 09:45:00
[2026-06-19 09:45:01,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:45:01,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:45:01,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:45:01,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:45:01,493.493 INFO    ] time= 19/06/2026 09:45:01
[2026-06-19 09:45:01,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:45:01,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:45:01,689.689 INFO    ] No existing commands found in stream
[2026-06-19 09:45:06,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:45:06,722.722 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 09:45:13,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:45:13,027.027 INFO    ] Checking for system updates...
[2026-06-19 09:45:13,063.063 INFO    ] 200
[2026-06-19 09:45:13,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:13,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:45:13,123.123 INFO    ] No update needed
[2026-06-19 09:45:13,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 09:45:13,164.164 INFO    ] 200
[2026-06-19 09:45:13,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:13,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:45:13,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:45:13,265.265 INFO    ] No camera update needed
[2026-06-19 09:45:13,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:45:13,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:45:13,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:45:13,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:45:15,326.326 INFO    ] ================================================
[2026-06-19 09:45:15,342.342 INFO    ] Launching Daemon at Fri Jun 19 09:45:15 IST 2026
[2026-06-19 09:45:15,354.354 INFO    ] ================================================
[2026-06-19 09:45:15,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:45:15
[2026-06-19 09:45:16,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:45:16,779.779 INFO    ] Initializing speech engine...
[2026-06-19 09:45:16,785.785 INFO    ] 2026-06-19 09:45:16
[2026-06-19 09:45:17,029.029 INFO    ] 2026-06-19 09:45:17
[2026-06-19 09:45:17,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:45:17,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:45:17,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:45:17,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:45:17,505.505 INFO    ] time= 19/06/2026 09:45:17
[2026-06-19 09:45:17,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:45:17,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:45:17,724.724 INFO    ] No existing commands found in stream
[2026-06-19 09:45:22,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:45:22,752.752 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 09:45:24,443.443 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:45:24,446.446 INFO    ] Checking for system updates...
[2026-06-19 09:45:24,490.490 INFO    ] 200
[2026-06-19 09:45:24,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:24,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:45:24,548.548 INFO    ] No update needed
[2026-06-19 09:45:24,551.551 INFO    ] Checking for camera pi updates...
[2026-06-19 09:45:24,584.584 INFO    ] 200
[2026-06-19 09:45:24,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:24,627.627 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:45:24,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:45:24,677.677 INFO    ] No camera update needed
[2026-06-19 09:45:24,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:45:24,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:45:24,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:45:24,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:45:26,735.735 INFO    ] ================================================
[2026-06-19 09:45:26,751.751 INFO    ] Launching Daemon at Fri Jun 19 09:45:26 IST 2026
[2026-06-19 09:45:26,763.763 INFO    ] ================================================
[2026-06-19 09:45:27,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:45:27
[2026-06-19 09:45:27,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:45:28,188.188 INFO    ] Initializing speech engine...
[2026-06-19 09:45:28,197.197 INFO    ] 2026-06-19 09:45:28
[2026-06-19 09:45:28,443.443 INFO    ] 2026-06-19 09:45:28
[2026-06-19 09:45:28,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:45:28,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:45:28,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:45:28,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:45:28,939.939 INFO    ] time= 19/06/2026 09:45:28
[2026-06-19 09:45:28,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:45:29,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:45:29,138.138 INFO    ] No existing commands found in stream
[2026-06-19 09:45:34,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:45:34,166.166 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 09:45:34,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:45:34,866.866 INFO    ] Checking for system updates...
[2026-06-19 09:45:34,903.903 INFO    ] 200
[2026-06-19 09:45:34,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:34,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:45:34,966.966 INFO    ] No update needed
[2026-06-19 09:45:34,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 09:45:35,002.002 INFO    ] 200
[2026-06-19 09:45:35,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:35,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:45:35,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:45:35,093.093 INFO    ] No camera update needed
[2026-06-19 09:45:35,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:45:35,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:45:35,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:45:35,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:45:37,150.150 INFO    ] ================================================
[2026-06-19 09:45:37,165.165 INFO    ] Launching Daemon at Fri Jun 19 09:45:37 IST 2026
[2026-06-19 09:45:37,176.176 INFO    ] ================================================
[2026-06-19 09:45:37,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:45:37
[2026-06-19 09:45:38,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:45:38,640.640 INFO    ] Initializing speech engine...
[2026-06-19 09:45:38,656.656 INFO    ] 2026-06-19 09:45:38
[2026-06-19 09:45:38,940.940 INFO    ] 2026-06-19 09:45:38
[2026-06-19 09:45:38,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:45:39,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:45:39,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:45:39,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:45:39,530.530 INFO    ] time= 19/06/2026 09:45:39
[2026-06-19 09:45:39,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:45:39,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:45:39,734.734 INFO    ] No existing commands found in stream
[2026-06-19 09:45:44,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:45:44,756.756 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 09:45:45,159.159 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:45:45,162.162 INFO    ] Checking for system updates...
[2026-06-19 09:45:45,198.198 INFO    ] 200
[2026-06-19 09:45:45,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:45,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:45:45,257.257 INFO    ] No update needed
[2026-06-19 09:45:45,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 09:45:45,297.297 INFO    ] 200
[2026-06-19 09:45:45,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:45,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:45:45,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:45:45,391.391 INFO    ] No camera update needed
[2026-06-19 09:45:45,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:45:45,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:45:45,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:45:45,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:45:47,446.446 INFO    ] ================================================
[2026-06-19 09:45:47,461.461 INFO    ] Launching Daemon at Fri Jun 19 09:45:47 IST 2026
[2026-06-19 09:45:47,472.472 INFO    ] ================================================
[2026-06-19 09:45:48,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:45:48
[2026-06-19 09:45:48,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:45:48,874.874 INFO    ] Initializing speech engine...
[2026-06-19 09:45:48,883.883 INFO    ] 2026-06-19 09:45:48
[2026-06-19 09:45:49,173.173 INFO    ] 2026-06-19 09:45:49
[2026-06-19 09:45:49,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:45:49,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:45:49,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:45:49,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:45:49,658.658 INFO    ] time= 19/06/2026 09:45:49
[2026-06-19 09:45:49,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:45:49,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:45:49,854.854 INFO    ] No existing commands found in stream
[2026-06-19 09:45:54,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:45:54,869.869 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 09:45:58,609.609 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:45:58,611.611 INFO    ] Checking for system updates...
[2026-06-19 09:45:58,647.647 INFO    ] 200
[2026-06-19 09:45:58,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:58,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:45:58,710.710 INFO    ] No update needed
[2026-06-19 09:45:58,712.712 INFO    ] Checking for camera pi updates...
[2026-06-19 09:45:58,746.746 INFO    ] 200
[2026-06-19 09:45:58,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:45:58,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:45:58,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:45:58,830.830 INFO    ] No camera update needed
[2026-06-19 09:45:58,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:45:58,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:45:58,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:45:58,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:46:00,887.887 INFO    ] ================================================
[2026-06-19 09:46:00,902.902 INFO    ] Launching Daemon at Fri Jun 19 09:46:00 IST 2026
[2026-06-19 09:46:00,913.913 INFO    ] ================================================
[2026-06-19 09:46:01,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:46:01
[2026-06-19 09:46:02,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:46:02,815.815 INFO    ] Initializing speech engine...
[2026-06-19 09:46:02,821.821 INFO    ] 2026-06-19 09:46:02
[2026-06-19 09:46:03,124.124 INFO    ] 2026-06-19 09:46:03
[2026-06-19 09:46:03,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:46:03,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:46:03,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:46:03,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:46:03,664.664 INFO    ] time= 19/06/2026 09:46:03
[2026-06-19 09:46:03,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:46:03,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:46:03,812.812 INFO    ] No existing commands found in stream
[2026-06-19 09:46:08,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:46:08,838.838 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 09:46:09,772.772 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:46:09,776.776 INFO    ] Checking for system updates...
[2026-06-19 09:46:09,813.813 INFO    ] 200
[2026-06-19 09:46:09,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:09,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:46:09,874.874 INFO    ] No update needed
[2026-06-19 09:46:09,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 09:46:09,913.913 INFO    ] 200
[2026-06-19 09:46:09,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:09,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:46:10,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:46:10,002.002 INFO    ] No camera update needed
[2026-06-19 09:46:10,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:46:10,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:46:10,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:46:10,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:46:12,063.063 INFO    ] ================================================
[2026-06-19 09:46:12,078.078 INFO    ] Launching Daemon at Fri Jun 19 09:46:12 IST 2026
[2026-06-19 09:46:12,089.089 INFO    ] ================================================
[2026-06-19 09:46:12,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:46:12
[2026-06-19 09:46:13,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:46:13,704.704 INFO    ] Initializing speech engine...
[2026-06-19 09:46:13,717.717 INFO    ] 2026-06-19 09:46:13
[2026-06-19 09:46:13,996.996 INFO    ] 2026-06-19 09:46:13
[2026-06-19 09:46:14,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:46:14,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:46:14,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:46:14,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:46:14,533.533 INFO    ] time= 19/06/2026 09:46:14
[2026-06-19 09:46:14,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:46:14,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:46:14,675.675 INFO    ] No existing commands found in stream
[2026-06-19 09:46:19,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:46:19,703.703 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 09:46:23,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:46:23,138.138 INFO    ] Checking for system updates...
[2026-06-19 09:46:23,175.175 INFO    ] 200
[2026-06-19 09:46:23,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:23,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:46:23,242.242 INFO    ] No update needed
[2026-06-19 09:46:23,244.244 INFO    ] Checking for camera pi updates...
[2026-06-19 09:46:23,281.281 INFO    ] 200
[2026-06-19 09:46:23,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:23,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:46:23,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:46:23,375.375 INFO    ] No camera update needed
[2026-06-19 09:46:23,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:46:23,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:46:23,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:46:23,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:46:25,434.434 INFO    ] ================================================
[2026-06-19 09:46:25,449.449 INFO    ] Launching Daemon at Fri Jun 19 09:46:25 IST 2026
[2026-06-19 09:46:25,460.460 INFO    ] ================================================
[2026-06-19 09:46:26,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:46:26
[2026-06-19 09:46:26,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:46:26,913.913 INFO    ] Initializing speech engine...
[2026-06-19 09:46:26,937.937 INFO    ] 2026-06-19 09:46:26
[2026-06-19 09:46:27,216.216 INFO    ] 2026-06-19 09:46:27
[2026-06-19 09:46:27,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:46:27,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:46:27,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:46:27,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:46:27,596.596 INFO    ] time= 19/06/2026 09:46:27
[2026-06-19 09:46:27,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:46:27,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:46:27,725.725 INFO    ] No existing commands found in stream
[2026-06-19 09:46:32,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:46:32,740.740 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 09:46:33,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:46:33,267.267 INFO    ] Checking for system updates...
[2026-06-19 09:46:33,304.304 INFO    ] 200
[2026-06-19 09:46:33,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:33,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:46:33,363.363 INFO    ] No update needed
[2026-06-19 09:46:33,365.365 INFO    ] Checking for camera pi updates...
[2026-06-19 09:46:33,403.403 INFO    ] 200
[2026-06-19 09:46:33,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:33,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:46:33,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:46:33,508.508 INFO    ] No camera update needed
[2026-06-19 09:46:33,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:46:33,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:46:33,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:46:33,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:46:35,569.569 INFO    ] ================================================
[2026-06-19 09:46:35,584.584 INFO    ] Launching Daemon at Fri Jun 19 09:46:35 IST 2026
[2026-06-19 09:46:35,595.595 INFO    ] ================================================
[2026-06-19 09:46:36,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:46:36
[2026-06-19 09:46:36,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:46:37,047.047 INFO    ] Initializing speech engine...
[2026-06-19 09:46:37,054.054 INFO    ] 2026-06-19 09:46:37
[2026-06-19 09:46:37,326.326 INFO    ] 2026-06-19 09:46:37
[2026-06-19 09:46:37,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:46:37,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:46:37,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:46:37,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:46:37,874.874 INFO    ] time= 19/06/2026 09:46:37
[2026-06-19 09:46:37,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:46:37,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:46:38,081.081 INFO    ] No existing commands found in stream
[2026-06-19 09:46:43,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:46:43,113.113 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 09:46:46,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:46:46,031.031 INFO    ] Checking for system updates...
[2026-06-19 09:46:46,069.069 INFO    ] 200
[2026-06-19 09:46:46,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:46,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:46:46,130.130 INFO    ] No update needed
[2026-06-19 09:46:46,133.133 INFO    ] Checking for camera pi updates...
[2026-06-19 09:46:46,168.168 INFO    ] 200
[2026-06-19 09:46:46,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:46,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:46:46,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:46:46,356.356 INFO    ] No camera update needed
[2026-06-19 09:46:46,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:46:46,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:46:46,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:46:46,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:46:48,417.417 INFO    ] ================================================
[2026-06-19 09:46:48,432.432 INFO    ] Launching Daemon at Fri Jun 19 09:46:48 IST 2026
[2026-06-19 09:46:48,443.443 INFO    ] ================================================
[2026-06-19 09:46:49,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:46:49
[2026-06-19 09:46:49,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:46:49,882.882 INFO    ] Initializing speech engine...
[2026-06-19 09:46:49,888.888 INFO    ] 2026-06-19 09:46:49
[2026-06-19 09:46:50,148.148 INFO    ] 2026-06-19 09:46:50
[2026-06-19 09:46:50,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:46:50,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:46:50,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:46:50,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:46:50,601.601 INFO    ] time= 19/06/2026 09:46:50
[2026-06-19 09:46:50,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:46:50,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:46:50,839.839 INFO    ] No existing commands found in stream
[2026-06-19 09:46:55,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:46:55,867.867 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 09:46:57,744.744 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:46:57,747.747 INFO    ] Checking for system updates...
[2026-06-19 09:46:57,783.783 INFO    ] 200
[2026-06-19 09:46:57,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:57,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:46:57,841.841 INFO    ] No update needed
[2026-06-19 09:46:57,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 09:46:57,878.878 INFO    ] 200
[2026-06-19 09:46:57,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:46:57,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:46:57,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:46:57,954.954 INFO    ] No camera update needed
[2026-06-19 09:46:57,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:46:57,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:46:57,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:46:57,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:47:00,010.010 INFO    ] ================================================
[2026-06-19 09:47:00,025.025 INFO    ] Launching Daemon at Fri Jun 19 09:47:00 IST 2026
[2026-06-19 09:47:00,036.036 INFO    ] ================================================
[2026-06-19 09:47:00,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:47:00
[2026-06-19 09:47:01,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:47:01,760.760 INFO    ] Initializing speech engine...
[2026-06-19 09:47:01,769.769 INFO    ] 2026-06-19 09:47:01
[2026-06-19 09:47:02,105.105 INFO    ] 2026-06-19 09:47:02
[2026-06-19 09:47:02,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:47:02,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:47:02,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:47:02,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:47:02,620.620 INFO    ] time= 19/06/2026 09:47:02
[2026-06-19 09:47:02,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:47:02,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:47:02,813.813 INFO    ] No existing commands found in stream
[2026-06-19 09:47:07,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:47:07,828.828 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 09:47:08,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:47:08,410.410 INFO    ] Checking for system updates...
[2026-06-19 09:47:08,446.446 INFO    ] 200
[2026-06-19 09:47:08,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:08,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:08,509.509 INFO    ] No update needed
[2026-06-19 09:47:08,512.512 INFO    ] Checking for camera pi updates...
[2026-06-19 09:47:08,545.545 INFO    ] 200
[2026-06-19 09:47:08,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:08,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:47:08,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:08,642.642 INFO    ] No camera update needed
[2026-06-19 09:47:08,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:47:08,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:47:08,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:47:08,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:47:10,698.698 INFO    ] ================================================
[2026-06-19 09:47:10,714.714 INFO    ] Launching Daemon at Fri Jun 19 09:47:10 IST 2026
[2026-06-19 09:47:10,725.725 INFO    ] ================================================
[2026-06-19 09:47:11,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:47:11
[2026-06-19 09:47:11,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:47:12,148.148 INFO    ] Initializing speech engine...
[2026-06-19 09:47:12,156.156 INFO    ] 2026-06-19 09:47:12
[2026-06-19 09:47:12,446.446 INFO    ] 2026-06-19 09:47:12
[2026-06-19 09:47:12,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:47:12,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:47:12,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:47:12,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:47:12,820.820 INFO    ] time= 19/06/2026 09:47:12
[2026-06-19 09:47:12,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:47:12,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:47:12,946.946 INFO    ] No existing commands found in stream
[2026-06-19 09:47:17,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:47:17,960.960 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 09:47:20,806.806 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:47:20,809.809 INFO    ] Checking for system updates...
[2026-06-19 09:47:20,845.845 INFO    ] 200
[2026-06-19 09:47:20,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:20,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:20,920.920 INFO    ] No update needed
[2026-06-19 09:47:20,923.923 INFO    ] Checking for camera pi updates...
[2026-06-19 09:47:20,957.957 INFO    ] 200
[2026-06-19 09:47:20,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:21,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:47:21,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:21,046.046 INFO    ] No camera update needed
[2026-06-19 09:47:21,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:47:21,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:47:21,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:47:21,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:47:23,103.103 INFO    ] ================================================
[2026-06-19 09:47:23,118.118 INFO    ] Launching Daemon at Fri Jun 19 09:47:23 IST 2026
[2026-06-19 09:47:23,129.129 INFO    ] ================================================
[2026-06-19 09:47:23,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:47:23
[2026-06-19 09:47:24,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:47:24,764.764 INFO    ] Initializing speech engine...
[2026-06-19 09:47:24,776.776 INFO    ] 2026-06-19 09:47:24
[2026-06-19 09:47:25,073.073 INFO    ] 2026-06-19 09:47:25
[2026-06-19 09:47:25,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:47:25,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:47:25,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:47:25,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:47:25,605.605 INFO    ] time= 19/06/2026 09:47:25
[2026-06-19 09:47:25,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:47:25,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:47:25,766.766 INFO    ] No existing commands found in stream
[2026-06-19 09:47:30,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:47:30,800.800 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 09:47:34,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:47:34,470.470 INFO    ] Checking for system updates...
[2026-06-19 09:47:34,509.509 INFO    ] 200
[2026-06-19 09:47:34,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:34,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:34,576.576 INFO    ] No update needed
[2026-06-19 09:47:34,579.579 INFO    ] Checking for camera pi updates...
[2026-06-19 09:47:34,614.614 INFO    ] 200
[2026-06-19 09:47:34,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:34,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:47:34,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:34,705.705 INFO    ] No camera update needed
[2026-06-19 09:47:34,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:47:34,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:47:34,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:47:34,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:47:36,767.767 INFO    ] ================================================
[2026-06-19 09:47:36,783.783 INFO    ] Launching Daemon at Fri Jun 19 09:47:36 IST 2026
[2026-06-19 09:47:36,797.797 INFO    ] ================================================
[2026-06-19 09:47:37,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:47:37
[2026-06-19 09:47:38,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:47:38,442.442 INFO    ] Initializing speech engine...
[2026-06-19 09:47:38,454.454 INFO    ] 2026-06-19 09:47:38
[2026-06-19 09:47:38,743.743 INFO    ] 2026-06-19 09:47:38
[2026-06-19 09:47:38,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:47:39,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:47:39,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:47:39,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:47:39,277.277 INFO    ] time= 19/06/2026 09:47:39
[2026-06-19 09:47:39,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:47:39,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:47:39,453.453 INFO    ] No existing commands found in stream
[2026-06-19 09:47:44,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:47:44,492.492 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 09:47:45,061.061 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:47:45,064.064 INFO    ] Checking for system updates...
[2026-06-19 09:47:45,103.103 INFO    ] 200
[2026-06-19 09:47:45,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:45,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:45,164.164 INFO    ] No update needed
[2026-06-19 09:47:45,167.167 INFO    ] Checking for camera pi updates...
[2026-06-19 09:47:45,203.203 INFO    ] 200
[2026-06-19 09:47:45,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:45,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:47:45,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:45,303.303 INFO    ] No camera update needed
[2026-06-19 09:47:45,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:47:45,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:47:45,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:47:45,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:47:47,364.364 INFO    ] ================================================
[2026-06-19 09:47:47,379.379 INFO    ] Launching Daemon at Fri Jun 19 09:47:47 IST 2026
[2026-06-19 09:47:47,390.390 INFO    ] ================================================
[2026-06-19 09:47:47,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:47:47
[2026-06-19 09:47:48,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:47:48,867.867 INFO    ] Initializing speech engine...
[2026-06-19 09:47:48,876.876 INFO    ] 2026-06-19 09:47:48
[2026-06-19 09:47:49,147.147 INFO    ] 2026-06-19 09:47:49
[2026-06-19 09:47:49,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:47:49,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:47:49,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:47:49,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:47:49,535.535 INFO    ] time= 19/06/2026 09:47:49
[2026-06-19 09:47:49,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:47:49,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:47:49,733.733 INFO    ] No existing commands found in stream
[2026-06-19 09:47:54,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:47:54,754.754 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 09:47:58,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:47:58,930.930 INFO    ] Checking for system updates...
[2026-06-19 09:47:58,967.967 INFO    ] 200
[2026-06-19 09:47:58,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:59,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:59,025.025 INFO    ] No update needed
[2026-06-19 09:47:59,028.028 INFO    ] Checking for camera pi updates...
[2026-06-19 09:47:59,062.062 INFO    ] 200
[2026-06-19 09:47:59,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:47:59,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:47:59,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:47:59,151.151 INFO    ] No camera update needed
[2026-06-19 09:47:59,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:47:59,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:47:59,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:47:59,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:48:01,237.237 INFO    ] ================================================
[2026-06-19 09:48:01,276.276 INFO    ] Launching Daemon at Fri Jun 19 09:48:01 IST 2026
[2026-06-19 09:48:01,301.301 INFO    ] ================================================
[2026-06-19 09:48:02,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:48:02
[2026-06-19 09:48:02,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:48:03,060.060 INFO    ] Initializing speech engine...
[2026-06-19 09:48:03,073.073 INFO    ] 2026-06-19 09:48:03
[2026-06-19 09:48:03,341.341 INFO    ] 2026-06-19 09:48:03
[2026-06-19 09:48:03,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:48:03,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:48:03,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:48:03,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:48:03,876.876 INFO    ] time= 19/06/2026 09:48:03
[2026-06-19 09:48:03,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:48:03,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:48:04,014.014 INFO    ] No existing commands found in stream
[2026-06-19 09:48:09,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:48:09,042.042 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 09:48:10,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:48:10,012.012 INFO    ] Checking for system updates...
[2026-06-19 09:48:10,050.050 INFO    ] 200
[2026-06-19 09:48:10,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:10,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:48:10,110.110 INFO    ] No update needed
[2026-06-19 09:48:10,113.113 INFO    ] Checking for camera pi updates...
[2026-06-19 09:48:10,149.149 INFO    ] 200
[2026-06-19 09:48:10,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:10,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:48:10,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:48:10,247.247 INFO    ] No camera update needed
[2026-06-19 09:48:10,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:48:10,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:48:10,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:48:10,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:48:12,307.307 INFO    ] ================================================
[2026-06-19 09:48:12,322.322 INFO    ] Launching Daemon at Fri Jun 19 09:48:12 IST 2026
[2026-06-19 09:48:12,332.332 INFO    ] ================================================
[2026-06-19 09:48:12,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:48:12
[2026-06-19 09:48:13,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:48:13,773.773 INFO    ] Initializing speech engine...
[2026-06-19 09:48:13,782.782 INFO    ] 2026-06-19 09:48:13
[2026-06-19 09:48:14,028.028 INFO    ] 2026-06-19 09:48:14
[2026-06-19 09:48:14,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:48:14,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:48:14,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:48:14,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:48:14,529.529 INFO    ] time= 19/06/2026 09:48:14
[2026-06-19 09:48:14,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:48:14,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:48:14,712.712 INFO    ] No existing commands found in stream
[2026-06-19 09:48:19,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:48:19,745.745 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 09:48:23,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:48:23,020.020 INFO    ] Checking for system updates...
[2026-06-19 09:48:23,057.057 INFO    ] 200
[2026-06-19 09:48:23,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:23,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:48:23,115.115 INFO    ] No update needed
[2026-06-19 09:48:23,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 09:48:23,151.151 INFO    ] 200
[2026-06-19 09:48:23,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:23,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:48:23,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:48:23,249.249 INFO    ] No camera update needed
[2026-06-19 09:48:23,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:48:23,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:48:23,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:48:23,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:48:25,306.306 INFO    ] ================================================
[2026-06-19 09:48:25,327.327 INFO    ] Launching Daemon at Fri Jun 19 09:48:25 IST 2026
[2026-06-19 09:48:25,338.338 INFO    ] ================================================
[2026-06-19 09:48:25,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:48:25
[2026-06-19 09:48:26,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:48:26,982.982 INFO    ] Initializing speech engine...
[2026-06-19 09:48:26,995.995 INFO    ] 2026-06-19 09:48:26
[2026-06-19 09:48:27,277.277 INFO    ] 2026-06-19 09:48:27
[2026-06-19 09:48:27,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:48:27,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:48:27,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:48:27,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:48:27,819.819 INFO    ] time= 19/06/2026 09:48:27
[2026-06-19 09:48:27,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:48:27,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:48:27,974.974 INFO    ] No existing commands found in stream
[2026-06-19 09:48:32,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:48:32,994.994 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 09:48:33,938.938 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:48:33,941.941 INFO    ] Checking for system updates...
[2026-06-19 09:48:33,980.980 INFO    ] 200
[2026-06-19 09:48:33,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:34,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:48:34,041.041 INFO    ] No update needed
[2026-06-19 09:48:34,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 09:48:34,078.078 INFO    ] 200
[2026-06-19 09:48:34,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:34,122.122 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:48:34,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:48:34,185.185 INFO    ] No camera update needed
[2026-06-19 09:48:34,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:48:34,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:48:34,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:48:34,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:48:36,244.244 INFO    ] ================================================
[2026-06-19 09:48:36,260.260 INFO    ] Launching Daemon at Fri Jun 19 09:48:36 IST 2026
[2026-06-19 09:48:36,271.271 INFO    ] ================================================
[2026-06-19 09:48:36,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:48:36
[2026-06-19 09:48:37,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:48:37,742.742 INFO    ] Initializing speech engine...
[2026-06-19 09:48:37,748.748 INFO    ] 2026-06-19 09:48:37
[2026-06-19 09:48:38,046.046 INFO    ] 2026-06-19 09:48:38
[2026-06-19 09:48:38,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:48:38,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:48:38,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:48:38,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:48:38,587.587 INFO    ] time= 19/06/2026 09:48:38
[2026-06-19 09:48:38,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:48:38,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:48:38,831.831 INFO    ] No existing commands found in stream
[2026-06-19 09:48:43,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:48:43,851.851 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 09:48:47,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:48:47,070.070 INFO    ] Checking for system updates...
[2026-06-19 09:48:47,106.106 INFO    ] 200
[2026-06-19 09:48:47,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:47,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:48:47,164.164 INFO    ] No update needed
[2026-06-19 09:48:47,166.166 INFO    ] Checking for camera pi updates...
[2026-06-19 09:48:47,200.200 INFO    ] 200
[2026-06-19 09:48:47,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:47,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:48:47,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:48:47,276.276 INFO    ] No camera update needed
[2026-06-19 09:48:47,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:48:47,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:48:47,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:48:47,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:48:49,333.333 INFO    ] ================================================
[2026-06-19 09:48:49,349.349 INFO    ] Launching Daemon at Fri Jun 19 09:48:49 IST 2026
[2026-06-19 09:48:49,361.361 INFO    ] ================================================
[2026-06-19 09:48:49,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:48:49
[2026-06-19 09:48:50,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:48:50,767.767 INFO    ] Initializing speech engine...
[2026-06-19 09:48:50,775.775 INFO    ] 2026-06-19 09:48:50
[2026-06-19 09:48:51,053.053 INFO    ] 2026-06-19 09:48:51
[2026-06-19 09:48:51,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:48:51,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:48:51,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:48:51,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:48:51,438.438 INFO    ] time= 19/06/2026 09:48:51
[2026-06-19 09:48:51,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:48:51,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:48:51,599.599 INFO    ] No existing commands found in stream
[2026-06-19 09:48:56,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:48:56,622.622 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 09:48:58,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:48:58,641.641 INFO    ] Checking for system updates...
[2026-06-19 09:48:58,679.679 INFO    ] 200
[2026-06-19 09:48:58,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:58,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:48:58,737.737 INFO    ] No update needed
[2026-06-19 09:48:58,739.739 INFO    ] Checking for camera pi updates...
[2026-06-19 09:48:58,773.773 INFO    ] 200
[2026-06-19 09:48:58,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:48:58,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:48:58,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:48:58,962.962 INFO    ] No camera update needed
[2026-06-19 09:48:58,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:48:58,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:48:58,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:48:58,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:49:01,017.017 INFO    ] ================================================
[2026-06-19 09:49:01,033.033 INFO    ] Launching Daemon at Fri Jun 19 09:49:01 IST 2026
[2026-06-19 09:49:01,044.044 INFO    ] ================================================
[2026-06-19 09:49:01,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:49:01
[2026-06-19 09:49:02,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:49:02,980.980 INFO    ] Initializing speech engine...
[2026-06-19 09:49:02,987.987 INFO    ] 2026-06-19 09:49:02
[2026-06-19 09:49:03,294.294 INFO    ] 2026-06-19 09:49:03
[2026-06-19 09:49:03,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:49:03,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:49:03,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:49:03,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:49:03,716.716 INFO    ] time= 19/06/2026 09:49:03
[2026-06-19 09:49:03,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:49:03,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:49:03,835.835 INFO    ] No existing commands found in stream
[2026-06-19 09:49:08,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:49:08,868.868 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 09:49:11,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:49:11,385.385 INFO    ] Checking for system updates...
[2026-06-19 09:49:11,427.427 INFO    ] 200
[2026-06-19 09:49:11,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:11,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:49:11,484.484 INFO    ] No update needed
[2026-06-19 09:49:11,487.487 INFO    ] Checking for camera pi updates...
[2026-06-19 09:49:11,521.521 INFO    ] 200
[2026-06-19 09:49:11,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:11,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:49:11,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:49:11,609.609 INFO    ] No camera update needed
[2026-06-19 09:49:11,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:49:11,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:49:11,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:49:11,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:49:13,664.664 INFO    ] ================================================
[2026-06-19 09:49:13,680.680 INFO    ] Launching Daemon at Fri Jun 19 09:49:13 IST 2026
[2026-06-19 09:49:13,692.692 INFO    ] ================================================
[2026-06-19 09:49:14,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:49:14
[2026-06-19 09:49:14,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:49:15,128.128 INFO    ] Initializing speech engine...
[2026-06-19 09:49:15,134.134 INFO    ] 2026-06-19 09:49:15
[2026-06-19 09:49:15,400.400 INFO    ] 2026-06-19 09:49:15
[2026-06-19 09:49:15,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:49:15,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:49:15,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:49:15,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:49:15,910.910 INFO    ] time= 19/06/2026 09:49:15
[2026-06-19 09:49:15,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:49:15,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:49:16,144.144 INFO    ] No existing commands found in stream
[2026-06-19 09:49:21,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:49:21,168.168 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 09:49:23,519.519 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:49:23,522.522 INFO    ] Checking for system updates...
[2026-06-19 09:49:23,560.560 INFO    ] 200
[2026-06-19 09:49:23,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:23,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:49:23,620.620 INFO    ] No update needed
[2026-06-19 09:49:23,622.622 INFO    ] Checking for camera pi updates...
[2026-06-19 09:49:23,657.657 INFO    ] 200
[2026-06-19 09:49:23,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:23,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:49:23,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:49:23,745.745 INFO    ] No camera update needed
[2026-06-19 09:49:23,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:49:23,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:49:23,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:49:23,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:49:25,800.800 INFO    ] ================================================
[2026-06-19 09:49:25,816.816 INFO    ] Launching Daemon at Fri Jun 19 09:49:25 IST 2026
[2026-06-19 09:49:25,828.828 INFO    ] ================================================
[2026-06-19 09:49:26,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:49:26
[2026-06-19 09:49:26,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:49:27,242.242 INFO    ] Initializing speech engine...
[2026-06-19 09:49:27,265.265 INFO    ] 2026-06-19 09:49:27
[2026-06-19 09:49:27,544.544 INFO    ] 2026-06-19 09:49:27
[2026-06-19 09:49:27,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:49:27,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:49:27,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:49:27,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:49:27,929.929 INFO    ] time= 19/06/2026 09:49:27
[2026-06-19 09:49:27,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:49:27,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:49:28,031.031 INFO    ] No existing commands found in stream
[2026-06-19 09:49:33,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:49:33,047.047 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 09:49:33,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:49:33,980.980 INFO    ] Checking for system updates...
[2026-06-19 09:49:34,016.016 INFO    ] 200
[2026-06-19 09:49:34,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:34,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:49:34,074.074 INFO    ] No update needed
[2026-06-19 09:49:34,077.077 INFO    ] Checking for camera pi updates...
[2026-06-19 09:49:34,111.111 INFO    ] 200
[2026-06-19 09:49:34,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:34,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:49:34,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:49:34,198.198 INFO    ] No camera update needed
[2026-06-19 09:49:34,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:49:34,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:49:34,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:49:34,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:49:36,255.255 INFO    ] ================================================
[2026-06-19 09:49:36,271.271 INFO    ] Launching Daemon at Fri Jun 19 09:49:36 IST 2026
[2026-06-19 09:49:36,283.283 INFO    ] ================================================
[2026-06-19 09:49:36,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:49:36
[2026-06-19 09:49:37,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:49:37,755.755 INFO    ] Initializing speech engine...
[2026-06-19 09:49:37,769.769 INFO    ] 2026-06-19 09:49:37
[2026-06-19 09:49:38,044.044 INFO    ] 2026-06-19 09:49:38
[2026-06-19 09:49:38,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:49:38,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:49:38,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:49:38,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:49:38,454.454 INFO    ] time= 19/06/2026 09:49:38
[2026-06-19 09:49:38,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:49:38,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:49:38,651.651 INFO    ] No existing commands found in stream
[2026-06-19 09:49:43,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:49:43,664.664 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 09:49:47,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:49:47,844.844 INFO    ] Checking for system updates...
[2026-06-19 09:49:47,881.881 INFO    ] 200
[2026-06-19 09:49:47,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:47,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:49:47,941.941 INFO    ] No update needed
[2026-06-19 09:49:47,944.944 INFO    ] Checking for camera pi updates...
[2026-06-19 09:49:47,983.983 INFO    ] 200
[2026-06-19 09:49:47,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:48,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:49:48,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:49:48,057.057 INFO    ] No camera update needed
[2026-06-19 09:49:48,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:49:48,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:49:48,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:49:48,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:49:50,112.112 INFO    ] ================================================
[2026-06-19 09:49:50,128.128 INFO    ] Launching Daemon at Fri Jun 19 09:49:50 IST 2026
[2026-06-19 09:49:50,138.138 INFO    ] ================================================
[2026-06-19 09:49:50,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:49:50
[2026-06-19 09:49:51,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:49:51,628.628 INFO    ] Initializing speech engine...
[2026-06-19 09:49:51,640.640 INFO    ] 2026-06-19 09:49:51
[2026-06-19 09:49:51,889.889 INFO    ] 2026-06-19 09:49:51
[2026-06-19 09:49:51,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:49:52,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:49:52,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:49:52,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:49:52,282.282 INFO    ] time= 19/06/2026 09:49:52
[2026-06-19 09:49:52,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:49:52,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:49:52,400.400 INFO    ] No existing commands found in stream
[2026-06-19 09:49:57,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:49:57,415.415 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 09:49:58,659.659 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:49:58,662.662 INFO    ] Checking for system updates...
[2026-06-19 09:49:58,699.699 INFO    ] 200
[2026-06-19 09:49:58,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:58,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:49:58,757.757 INFO    ] No update needed
[2026-06-19 09:49:58,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 09:49:58,793.793 INFO    ] 200
[2026-06-19 09:49:58,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:49:58,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:49:58,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:49:58,879.879 INFO    ] No camera update needed
[2026-06-19 09:49:58,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:49:58,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:49:58,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:49:58,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:50:00,933.933 INFO    ] ================================================
[2026-06-19 09:50:00,950.950 INFO    ] Launching Daemon at Fri Jun 19 09:50:00 IST 2026
[2026-06-19 09:50:00,961.961 INFO    ] ================================================
[2026-06-19 09:50:02,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:50:02
[2026-06-19 09:50:02,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:50:03,295.295 INFO    ] Initializing speech engine...
[2026-06-19 09:50:03,306.306 INFO    ] 2026-06-19 09:50:03
[2026-06-19 09:50:03,579.579 INFO    ] 2026-06-19 09:50:03
[2026-06-19 09:50:03,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:50:03,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:50:03,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:50:03,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:50:03,965.965 INFO    ] time= 19/06/2026 09:50:03
[2026-06-19 09:50:03,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:50:04,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:50:04,090.090 INFO    ] No existing commands found in stream
[2026-06-19 09:50:09,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:50:09,105.105 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 09:50:10,944.944 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:50:10,947.947 INFO    ] Checking for system updates...
[2026-06-19 09:50:10,983.983 INFO    ] 200
[2026-06-19 09:50:10,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:50:11,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:50:11,042.042 INFO    ] No update needed
[2026-06-19 09:50:11,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 09:50:11,082.082 INFO    ] 200
[2026-06-19 09:50:11,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:50:11,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:50:11,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:50:11,175.175 INFO    ] No camera update needed
[2026-06-19 09:50:11,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:50:11,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:50:11,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:50:11,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:50:13,231.231 INFO    ] ================================================
[2026-06-19 09:50:13,247.247 INFO    ] Launching Daemon at Fri Jun 19 09:50:13 IST 2026
[2026-06-19 09:50:13,258.258 INFO    ] ================================================
[2026-06-19 09:50:13,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:50:13
[2026-06-19 09:50:14,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:50:14,655.655 INFO    ] Initializing speech engine...
[2026-06-19 09:50:14,669.669 INFO    ] 2026-06-19 09:50:14
[2026-06-19 09:50:14,932.932 INFO    ] 2026-06-19 09:50:14
[2026-06-19 09:50:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:50:15,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:50:15,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:50:15,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:50:15,421.421 INFO    ] time= 19/06/2026 09:50:15
[2026-06-19 09:50:15,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:50:15,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:50:15,641.641 INFO    ] No existing commands found in stream
[2026-06-19 09:50:20,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:50:20,663.663 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 09:50:24,013.013 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:50:24,016.016 INFO    ] Checking for system updates...
[2026-06-19 09:50:24,052.052 INFO    ] 200
[2026-06-19 09:50:24,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:50:24,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:50:24,118.118 INFO    ] No update needed
[2026-06-19 09:50:24,120.120 INFO    ] Checking for camera pi updates...
[2026-06-19 09:50:24,154.154 INFO    ] 200
[2026-06-19 09:50:24,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:50:24,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:50:24,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:50:24,245.245 INFO    ] No camera update needed
[2026-06-19 09:50:24,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:50:24,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:50:24,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:50:24,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:50:26,302.302 INFO    ] ================================================
[2026-06-19 09:50:26,318.318 INFO    ] Launching Daemon at Fri Jun 19 09:50:26 IST 2026
[2026-06-19 09:50:26,329.329 INFO    ] ================================================
[2026-06-19 09:50:26,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:50:26
[2026-06-19 09:50:27,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:50:27,881.881 INFO    ] Initializing speech engine...
[2026-06-19 09:50:27,890.890 INFO    ] 2026-06-19 09:50:27
[2026-06-19 09:50:28,137.137 INFO    ] 2026-06-19 09:50:28
[2026-06-19 09:50:28,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:50:28,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:50:28,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:50:28,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:50:28,639.639 INFO    ] time= 19/06/2026 09:50:28
[2026-06-19 09:50:28,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:50:28,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:50:28,851.851 INFO    ] No existing commands found in stream
[2026-06-19 09:50:33,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:50:33,872.872 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 09:50:36,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:50:36,044.044 INFO    ] Checking for system updates...
[2026-06-19 09:50:36,080.080 INFO    ] 200
[2026-06-19 09:50:36,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:50:36,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:50:36,138.138 INFO    ] No update needed
[2026-06-19 09:50:36,140.140 INFO    ] Checking for camera pi updates...
[2026-06-19 09:50:36,174.174 INFO    ] 200
[2026-06-19 09:50:36,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:50:36,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:50:36,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:50:36,259.259 INFO    ] No camera update needed
[2026-06-19 09:50:36,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:50:36,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:50:36,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:50:36,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:50:38,316.316 INFO    ] ================================================
[2026-06-19 09:50:38,332.332 INFO    ] Launching Daemon at Fri Jun 19 09:50:38 IST 2026
[2026-06-19 09:50:38,343.343 INFO    ] ================================================
[2026-06-19 09:50:38,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:50:38
[2026-06-19 09:50:39,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:50:39,763.763 INFO    ] Initializing speech engine...
[2026-06-19 09:50:39,771.771 INFO    ] 2026-06-19 09:50:39
[2026-06-19 09:50:40,018.018 INFO    ] 2026-06-19 09:50:40
[2026-06-19 09:50:40,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:50:40,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:50:40,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:50:40,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:50:40,488.488 INFO    ] time= 19/06/2026 09:50:40
[2026-06-19 09:50:40,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:50:40,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:50:40,708.708 INFO    ] No existing commands found in stream
[2026-06-19 09:50:45,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:50:45,736.736 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 09:50:49,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:50:49,513.513 INFO    ] Checking for system updates...
[2026-06-19 09:50:49,550.550 INFO    ] 200
[2026-06-19 09:50:49,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:50:49,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:50:49,615.615 INFO    ] No update needed
[2026-06-19 09:50:49,618.618 INFO    ] Checking for camera pi updates...
[2026-06-19 09:50:49,651.651 INFO    ] 200
[2026-06-19 09:50:49,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:50:49,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:50:49,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:50:49,741.741 INFO    ] No camera update needed
[2026-06-19 09:50:49,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:50:49,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:50:49,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:50:49,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:50:51,798.798 INFO    ] ================================================
[2026-06-19 09:50:51,814.814 INFO    ] Launching Daemon at Fri Jun 19 09:50:51 IST 2026
[2026-06-19 09:50:51,825.825 INFO    ] ================================================
[2026-06-19 09:50:52,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:50:52
[2026-06-19 09:50:53,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:50:53,460.460 INFO    ] Initializing speech engine...
[2026-06-19 09:50:53,473.473 INFO    ] 2026-06-19 09:50:53
[2026-06-19 09:50:53,759.759 INFO    ] 2026-06-19 09:50:53
[2026-06-19 09:50:53,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:50:54,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:50:54,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:50:54,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:50:54,292.292 INFO    ] time= 19/06/2026 09:50:54
[2026-06-19 09:50:54,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:50:54,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:50:54,453.453 INFO    ] No existing commands found in stream
[2026-06-19 09:50:59,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:50:59,486.486 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 09:51:00,899.899 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:51:00,902.902 INFO    ] Checking for system updates...
[2026-06-19 09:51:00,943.943 INFO    ] 200
[2026-06-19 09:51:00,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:01,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:51:01,009.009 INFO    ] No update needed
[2026-06-19 09:51:01,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 09:51:01,051.051 INFO    ] 200
[2026-06-19 09:51:01,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:01,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:51:01,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:51:01,252.252 INFO    ] No camera update needed
[2026-06-19 09:51:01,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:51:01,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:51:01,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:51:01,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:51:03,314.314 INFO    ] ================================================
[2026-06-19 09:51:03,329.329 INFO    ] Launching Daemon at Fri Jun 19 09:51:03 IST 2026
[2026-06-19 09:51:03,341.341 INFO    ] ================================================
[2026-06-19 09:51:04,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:51:03
[2026-06-19 09:51:04,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:51:04,857.857 INFO    ] Initializing speech engine...
[2026-06-19 09:51:04,866.866 INFO    ] 2026-06-19 09:51:04
[2026-06-19 09:51:05,163.163 INFO    ] 2026-06-19 09:51:05
[2026-06-19 09:51:05,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:51:05,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:51:05,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:51:05,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:51:05,588.588 INFO    ] time= 19/06/2026 09:51:05
[2026-06-19 09:51:05,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:51:05,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:51:05,676.676 INFO    ] No existing commands found in stream
[2026-06-19 09:51:10,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:51:10,703.703 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 09:51:12,376.376 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:51:12,378.378 INFO    ] Checking for system updates...
[2026-06-19 09:51:12,414.414 INFO    ] 200
[2026-06-19 09:51:12,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:12,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:51:12,472.472 INFO    ] No update needed
[2026-06-19 09:51:12,475.475 INFO    ] Checking for camera pi updates...
[2026-06-19 09:51:12,508.508 INFO    ] 200
[2026-06-19 09:51:12,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:12,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:51:12,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:51:12,603.603 INFO    ] No camera update needed
[2026-06-19 09:51:12,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:51:12,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:51:12,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:51:12,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:51:14,662.662 INFO    ] ================================================
[2026-06-19 09:51:14,678.678 INFO    ] Launching Daemon at Fri Jun 19 09:51:14 IST 2026
[2026-06-19 09:51:14,689.689 INFO    ] ================================================
[2026-06-19 09:51:15,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:51:15
[2026-06-19 09:51:16,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:51:16,347.347 INFO    ] Initializing speech engine...
[2026-06-19 09:51:16,354.354 INFO    ] 2026-06-19 09:51:16
[2026-06-19 09:51:16,672.672 INFO    ] 2026-06-19 09:51:16
[2026-06-19 09:51:16,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:51:16,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:51:17,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:51:17,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:51:17,206.206 INFO    ] time= 19/06/2026 09:51:17
[2026-06-19 09:51:17,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:51:17,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:51:17,349.349 INFO    ] No existing commands found in stream
[2026-06-19 09:51:22,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:51:22,377.377 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 09:51:24,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:51:24,992.992 INFO    ] Checking for system updates...
[2026-06-19 09:51:25,031.031 INFO    ] 200
[2026-06-19 09:51:25,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:25,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:51:25,088.088 INFO    ] No update needed
[2026-06-19 09:51:25,090.090 INFO    ] Checking for camera pi updates...
[2026-06-19 09:51:25,128.128 INFO    ] 200
[2026-06-19 09:51:25,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:25,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:51:25,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:51:25,220.220 INFO    ] No camera update needed
[2026-06-19 09:51:25,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:51:25,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:51:25,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:51:25,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:51:27,278.278 INFO    ] ================================================
[2026-06-19 09:51:27,293.293 INFO    ] Launching Daemon at Fri Jun 19 09:51:27 IST 2026
[2026-06-19 09:51:27,304.304 INFO    ] ================================================
[2026-06-19 09:51:27,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:51:27
[2026-06-19 09:51:28,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:51:28,939.939 INFO    ] Initializing speech engine...
[2026-06-19 09:51:28,950.950 INFO    ] 2026-06-19 09:51:28
[2026-06-19 09:51:29,240.240 INFO    ] 2026-06-19 09:51:29
[2026-06-19 09:51:29,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:51:29,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:51:29,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:51:29,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:51:29,789.789 INFO    ] time= 19/06/2026 09:51:29
[2026-06-19 09:51:29,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:51:29,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:51:29,952.952 INFO    ] No existing commands found in stream
[2026-06-19 09:51:34,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:51:34,991.991 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 09:51:37,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:51:37,178.178 INFO    ] Checking for system updates...
[2026-06-19 09:51:37,216.216 INFO    ] 200
[2026-06-19 09:51:37,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:37,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:51:37,276.276 INFO    ] No update needed
[2026-06-19 09:51:37,279.279 INFO    ] Checking for camera pi updates...
[2026-06-19 09:51:37,314.314 INFO    ] 200
[2026-06-19 09:51:37,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:37,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:51:37,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:51:37,408.408 INFO    ] No camera update needed
[2026-06-19 09:51:37,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:51:37,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:51:37,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:51:37,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:51:39,466.466 INFO    ] ================================================
[2026-06-19 09:51:39,481.481 INFO    ] Launching Daemon at Fri Jun 19 09:51:39 IST 2026
[2026-06-19 09:51:39,492.492 INFO    ] ================================================
[2026-06-19 09:51:40,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:51:40
[2026-06-19 09:51:40,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:51:40,901.901 INFO    ] Initializing speech engine...
[2026-06-19 09:51:40,910.910 INFO    ] 2026-06-19 09:51:40
[2026-06-19 09:51:41,204.204 INFO    ] 2026-06-19 09:51:41
[2026-06-19 09:51:41,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:51:41,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:51:41,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:51:41,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:51:41,617.617 INFO    ] time= 19/06/2026 09:51:41
[2026-06-19 09:51:41,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:51:41,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:51:41,708.708 INFO    ] No existing commands found in stream
[2026-06-19 09:51:46,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:51:46,741.741 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 09:51:50,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:51:50,153.153 INFO    ] Checking for system updates...
[2026-06-19 09:51:50,189.189 INFO    ] 200
[2026-06-19 09:51:50,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:50,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:51:50,248.248 INFO    ] No update needed
[2026-06-19 09:51:50,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 09:51:50,287.287 INFO    ] 200
[2026-06-19 09:51:50,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:51:50,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:51:50,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:51:50,377.377 INFO    ] No camera update needed
[2026-06-19 09:51:50,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:51:50,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:51:50,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:51:50,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:51:52,432.432 INFO    ] ================================================
[2026-06-19 09:51:52,448.448 INFO    ] Launching Daemon at Fri Jun 19 09:51:52 IST 2026
[2026-06-19 09:51:52,459.459 INFO    ] ================================================
[2026-06-19 09:51:53,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:51:53
[2026-06-19 09:51:53,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:51:53,864.864 INFO    ] Initializing speech engine...
[2026-06-19 09:51:53,871.871 INFO    ] 2026-06-19 09:51:53
[2026-06-19 09:51:54,161.161 INFO    ] 2026-06-19 09:51:54
[2026-06-19 09:51:54,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:51:54,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:51:54,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:51:54,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:51:54,576.576 INFO    ] time= 19/06/2026 09:51:54
[2026-06-19 09:51:54,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:51:54,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:51:54,662.662 INFO    ] No existing commands found in stream
[2026-06-19 09:51:59,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:51:59,684.684 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 09:52:00,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:52:00,914.914 INFO    ] Checking for system updates...
[2026-06-19 09:52:00,953.953 INFO    ] 200
[2026-06-19 09:52:00,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:01,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:52:01,011.011 INFO    ] No update needed
[2026-06-19 09:52:01,013.013 INFO    ] Checking for camera pi updates...
[2026-06-19 09:52:01,047.047 INFO    ] 200
[2026-06-19 09:52:01,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:01,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:52:01,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:52:01,131.131 INFO    ] No camera update needed
[2026-06-19 09:52:01,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:52:01,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:52:01,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:52:01,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:52:03,187.187 INFO    ] ================================================
[2026-06-19 09:52:03,203.203 INFO    ] Launching Daemon at Fri Jun 19 09:52:03 IST 2026
[2026-06-19 09:52:03,214.214 INFO    ] ================================================
[2026-06-19 09:52:03,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:52:03
[2026-06-19 09:52:04,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:52:04,654.654 INFO    ] Initializing speech engine...
[2026-06-19 09:52:04,669.669 INFO    ] 2026-06-19 09:52:04
[2026-06-19 09:52:04,940.940 INFO    ] 2026-06-19 09:52:04
[2026-06-19 09:52:04,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:52:05,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:52:05,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:52:05,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:52:05,319.319 INFO    ] time= 19/06/2026 09:52:05
[2026-06-19 09:52:05,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:52:05,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:52:05,443.443 INFO    ] No existing commands found in stream
[2026-06-19 09:52:10,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:52:10,464.464 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 09:52:14,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:52:14,553.553 INFO    ] Checking for system updates...
[2026-06-19 09:52:14,588.588 INFO    ] 200
[2026-06-19 09:52:14,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:14,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:52:14,647.647 INFO    ] No update needed
[2026-06-19 09:52:14,649.649 INFO    ] Checking for camera pi updates...
[2026-06-19 09:52:14,684.684 INFO    ] 200
[2026-06-19 09:52:14,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:14,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:52:14,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:52:14,770.770 INFO    ] No camera update needed
[2026-06-19 09:52:14,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:52:14,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:52:14,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:52:14,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:52:16,827.827 INFO    ] ================================================
[2026-06-19 09:52:16,842.842 INFO    ] Launching Daemon at Fri Jun 19 09:52:16 IST 2026
[2026-06-19 09:52:16,853.853 INFO    ] ================================================
[2026-06-19 09:52:17,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:52:17
[2026-06-19 09:52:18,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:52:18,322.322 INFO    ] Initializing speech engine...
[2026-06-19 09:52:18,330.330 INFO    ] 2026-06-19 09:52:18
[2026-06-19 09:52:18,589.589 INFO    ] 2026-06-19 09:52:18
[2026-06-19 09:52:18,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:52:18,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:52:18,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:52:19,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:52:19,073.073 INFO    ] time= 19/06/2026 09:52:19
[2026-06-19 09:52:19,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:52:19,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:52:19,295.295 INFO    ] No existing commands found in stream
[2026-06-19 09:52:24,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:52:24,318.318 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 09:52:27,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:52:27,030.030 INFO    ] Checking for system updates...
[2026-06-19 09:52:27,067.067 INFO    ] 200
[2026-06-19 09:52:27,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:27,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:52:27,131.131 INFO    ] No update needed
[2026-06-19 09:52:27,134.134 INFO    ] Checking for camera pi updates...
[2026-06-19 09:52:27,167.167 INFO    ] 200
[2026-06-19 09:52:27,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:27,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:52:27,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:52:27,256.256 INFO    ] No camera update needed
[2026-06-19 09:52:27,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:52:27,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:52:27,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:52:27,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:52:29,327.327 INFO    ] ================================================
[2026-06-19 09:52:29,343.343 INFO    ] Launching Daemon at Fri Jun 19 09:52:29 IST 2026
[2026-06-19 09:52:29,354.354 INFO    ] ================================================
[2026-06-19 09:52:29,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:52:29
[2026-06-19 09:52:30,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:52:30,789.789 INFO    ] Initializing speech engine...
[2026-06-19 09:52:30,798.798 INFO    ] 2026-06-19 09:52:30
[2026-06-19 09:52:31,049.049 INFO    ] 2026-06-19 09:52:31
[2026-06-19 09:52:31,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:52:31,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:52:31,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:52:31,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:52:31,552.552 INFO    ] time= 19/06/2026 09:52:31
[2026-06-19 09:52:31,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:52:31,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:52:31,767.767 INFO    ] No existing commands found in stream
[2026-06-19 09:52:36,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:52:36,799.799 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 09:52:40,149.149 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:52:40,151.151 INFO    ] Checking for system updates...
[2026-06-19 09:52:40,187.187 INFO    ] 200
[2026-06-19 09:52:40,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:40,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:52:40,248.248 INFO    ] No update needed
[2026-06-19 09:52:40,251.251 INFO    ] Checking for camera pi updates...
[2026-06-19 09:52:40,288.288 INFO    ] 200
[2026-06-19 09:52:40,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:40,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:52:40,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:52:40,395.395 INFO    ] No camera update needed
[2026-06-19 09:52:40,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:52:40,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:52:40,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:52:40,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:52:42,456.456 INFO    ] ================================================
[2026-06-19 09:52:42,472.472 INFO    ] Launching Daemon at Fri Jun 19 09:52:42 IST 2026
[2026-06-19 09:52:42,483.483 INFO    ] ================================================
[2026-06-19 09:52:43,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:52:43
[2026-06-19 09:52:43,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:52:44,092.092 INFO    ] Initializing speech engine...
[2026-06-19 09:52:44,105.105 INFO    ] 2026-06-19 09:52:44
[2026-06-19 09:52:44,390.390 INFO    ] 2026-06-19 09:52:44
[2026-06-19 09:52:44,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:52:44,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:52:44,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:52:44,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:52:44,882.882 INFO    ] time= 19/06/2026 09:52:44
[2026-06-19 09:52:44,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:52:44,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:52:45,098.098 INFO    ] No existing commands found in stream
[2026-06-19 09:52:50,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:52:50,128.128 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 09:52:52,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:52:52,323.323 INFO    ] Checking for system updates...
[2026-06-19 09:52:52,360.360 INFO    ] 200
[2026-06-19 09:52:52,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:52,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:52:52,426.426 INFO    ] No update needed
[2026-06-19 09:52:52,429.429 INFO    ] Checking for camera pi updates...
[2026-06-19 09:52:52,464.464 INFO    ] 200
[2026-06-19 09:52:52,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:52:52,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:52:52,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:52:52,557.557 INFO    ] No camera update needed
[2026-06-19 09:52:52,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:52:52,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:52:52,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:52:52,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:52:54,617.617 INFO    ] ================================================
[2026-06-19 09:52:54,632.632 INFO    ] Launching Daemon at Fri Jun 19 09:52:54 IST 2026
[2026-06-19 09:52:54,644.644 INFO    ] ================================================
[2026-06-19 09:52:55,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:52:55
[2026-06-19 09:52:55,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:52:56,095.095 INFO    ] Initializing speech engine...
[2026-06-19 09:52:56,101.101 INFO    ] 2026-06-19 09:52:56
[2026-06-19 09:52:56,398.398 INFO    ] 2026-06-19 09:52:56
[2026-06-19 09:52:56,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:52:56,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:52:56,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:52:56,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:52:56,822.822 INFO    ] time= 19/06/2026 09:52:56
[2026-06-19 09:52:56,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:52:56,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:52:56,996.996 INFO    ] No existing commands found in stream
[2026-06-19 09:53:02,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:53:02,021.021 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 09:53:04,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:53:04,805.805 INFO    ] Checking for system updates...
[2026-06-19 09:53:04,847.847 INFO    ] 200
[2026-06-19 09:53:04,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:04,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:53:04,914.914 INFO    ] No update needed
[2026-06-19 09:53:04,917.917 INFO    ] Checking for camera pi updates...
[2026-06-19 09:53:04,957.957 INFO    ] 200
[2026-06-19 09:53:04,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:05,006.006 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:53:05,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:53:05,149.149 INFO    ] No camera update needed
[2026-06-19 09:53:05,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:53:05,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:53:05,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:53:05,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:53:07,209.209 INFO    ] ================================================
[2026-06-19 09:53:07,225.225 INFO    ] Launching Daemon at Fri Jun 19 09:53:07 IST 2026
[2026-06-19 09:53:07,236.236 INFO    ] ================================================
[2026-06-19 09:53:07,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:53:07
[2026-06-19 09:53:08,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:53:08,881.881 INFO    ] Initializing speech engine...
[2026-06-19 09:53:08,894.894 INFO    ] 2026-06-19 09:53:08
[2026-06-19 09:53:09,177.177 INFO    ] 2026-06-19 09:53:09
[2026-06-19 09:53:09,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:53:09,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:53:09,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:53:09,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:53:09,733.733 INFO    ] time= 19/06/2026 09:53:09
[2026-06-19 09:53:09,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:53:09,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:53:09,895.895 INFO    ] No existing commands found in stream
[2026-06-19 09:53:14,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:53:14,930.930 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 09:53:16,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:53:16,078.078 INFO    ] Checking for system updates...
[2026-06-19 09:53:16,117.117 INFO    ] 200
[2026-06-19 09:53:16,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:16,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:53:16,185.185 INFO    ] No update needed
[2026-06-19 09:53:16,188.188 INFO    ] Checking for camera pi updates...
[2026-06-19 09:53:16,224.224 INFO    ] 200
[2026-06-19 09:53:16,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:16,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:53:16,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:53:16,311.311 INFO    ] No camera update needed
[2026-06-19 09:53:16,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:53:16,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:53:16,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:53:16,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:53:18,374.374 INFO    ] ================================================
[2026-06-19 09:53:18,391.391 INFO    ] Launching Daemon at Fri Jun 19 09:53:18 IST 2026
[2026-06-19 09:53:18,403.403 INFO    ] ================================================
[2026-06-19 09:53:19,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:53:19
[2026-06-19 09:53:19,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:53:19,889.889 INFO    ] Initializing speech engine...
[2026-06-19 09:53:19,899.899 INFO    ] 2026-06-19 09:53:19
[2026-06-19 09:53:20,210.210 INFO    ] 2026-06-19 09:53:20
[2026-06-19 09:53:20,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:53:20,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:53:20,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:53:20,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:53:20,618.618 INFO    ] time= 19/06/2026 09:53:20
[2026-06-19 09:53:20,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:53:20,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:53:20,752.752 INFO    ] No existing commands found in stream
[2026-06-19 09:53:25,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:53:25,765.765 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 09:53:28,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:53:28,083.083 INFO    ] Checking for system updates...
[2026-06-19 09:53:28,120.120 INFO    ] 200
[2026-06-19 09:53:28,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:28,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:53:28,180.180 INFO    ] No update needed
[2026-06-19 09:53:28,182.182 INFO    ] Checking for camera pi updates...
[2026-06-19 09:53:28,216.216 INFO    ] 200
[2026-06-19 09:53:28,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:28,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:53:28,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:53:28,302.302 INFO    ] No camera update needed
[2026-06-19 09:53:28,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:53:28,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:53:28,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:53:28,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:53:30,358.358 INFO    ] ================================================
[2026-06-19 09:53:30,373.373 INFO    ] Launching Daemon at Fri Jun 19 09:53:30 IST 2026
[2026-06-19 09:53:30,384.384 INFO    ] ================================================
[2026-06-19 09:53:30,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:53:30
[2026-06-19 09:53:31,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:53:31,949.949 INFO    ] Initializing speech engine...
[2026-06-19 09:53:31,957.957 INFO    ] 2026-06-19 09:53:31
[2026-06-19 09:53:32,273.273 INFO    ] 2026-06-19 09:53:32
[2026-06-19 09:53:32,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:53:32,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:53:32,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:53:32,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:53:32,833.833 INFO    ] time= 19/06/2026 09:53:32
[2026-06-19 09:53:32,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:53:32,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:53:33,017.017 INFO    ] No existing commands found in stream
[2026-06-19 09:53:38,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:53:38,052.052 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 09:53:40,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:53:40,459.459 INFO    ] Checking for system updates...
[2026-06-19 09:53:40,504.504 INFO    ] 200
[2026-06-19 09:53:40,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:40,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:53:40,581.581 INFO    ] No update needed
[2026-06-19 09:53:40,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 09:53:40,635.635 INFO    ] 200
[2026-06-19 09:53:40,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:40,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:53:40,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:53:40,734.734 INFO    ] No camera update needed
[2026-06-19 09:53:40,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:53:40,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:53:40,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:53:40,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:53:42,792.792 INFO    ] ================================================
[2026-06-19 09:53:42,808.808 INFO    ] Launching Daemon at Fri Jun 19 09:53:42 IST 2026
[2026-06-19 09:53:42,821.821 INFO    ] ================================================
[2026-06-19 09:53:43,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:53:43
[2026-06-19 09:53:44,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:53:44,372.372 INFO    ] Initializing speech engine...
[2026-06-19 09:53:44,382.382 INFO    ] 2026-06-19 09:53:44
[2026-06-19 09:53:44,652.652 INFO    ] 2026-06-19 09:53:44
[2026-06-19 09:53:44,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:53:44,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:53:44,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:53:45,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:53:45,181.181 INFO    ] time= 19/06/2026 09:53:45
[2026-06-19 09:53:45,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:53:45,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:53:45,372.372 INFO    ] No existing commands found in stream
[2026-06-19 09:53:50,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:53:50,405.405 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 09:53:52,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:53:52,561.561 INFO    ] Checking for system updates...
[2026-06-19 09:53:52,597.597 INFO    ] 200
[2026-06-19 09:53:52,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:52,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:53:52,659.659 INFO    ] No update needed
[2026-06-19 09:53:52,662.662 INFO    ] Checking for camera pi updates...
[2026-06-19 09:53:52,711.711 INFO    ] 200
[2026-06-19 09:53:52,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:53:52,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:53:52,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:53:52,797.797 INFO    ] No camera update needed
[2026-06-19 09:53:52,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:53:52,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:53:52,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:53:52,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:53:54,854.854 INFO    ] ================================================
[2026-06-19 09:53:54,870.870 INFO    ] Launching Daemon at Fri Jun 19 09:53:54 IST 2026
[2026-06-19 09:53:54,881.881 INFO    ] ================================================
[2026-06-19 09:53:55,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:53:55
[2026-06-19 09:53:56,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:53:56,337.337 INFO    ] Initializing speech engine...
[2026-06-19 09:53:56,344.344 INFO    ] 2026-06-19 09:53:56
[2026-06-19 09:53:56,605.605 INFO    ] 2026-06-19 09:53:56
[2026-06-19 09:53:56,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:53:56,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:53:56,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:53:57,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:53:57,148.148 INFO    ] time= 19/06/2026 09:53:57
[2026-06-19 09:53:57,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:53:57,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:53:57,303.303 INFO    ] No existing commands found in stream
[2026-06-19 09:54:02,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:54:02,318.318 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 09:54:05,751.751 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:54:05,754.754 INFO    ] Checking for system updates...
[2026-06-19 09:54:05,790.790 INFO    ] 200
[2026-06-19 09:54:05,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:05,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:54:05,847.847 INFO    ] No update needed
[2026-06-19 09:54:05,850.850 INFO    ] Checking for camera pi updates...
[2026-06-19 09:54:05,884.884 INFO    ] 200
[2026-06-19 09:54:05,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:05,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:54:05,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:54:05,975.975 INFO    ] No camera update needed
[2026-06-19 09:54:05,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:54:05,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:54:05,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:54:05,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:54:08,033.033 INFO    ] ================================================
[2026-06-19 09:54:08,049.049 INFO    ] Launching Daemon at Fri Jun 19 09:54:08 IST 2026
[2026-06-19 09:54:08,060.060 INFO    ] ================================================
[2026-06-19 09:54:08,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:54:08
[2026-06-19 09:54:09,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:54:09,498.498 INFO    ] Initializing speech engine...
[2026-06-19 09:54:09,504.504 INFO    ] 2026-06-19 09:54:09
[2026-06-19 09:54:09,751.751 INFO    ] 2026-06-19 09:54:09
[2026-06-19 09:54:09,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:54:10,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:54:10,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:54:10,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:54:10,310.310 INFO    ] time= 19/06/2026 09:54:10
[2026-06-19 09:54:10,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:54:10,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:54:10,460.460 INFO    ] No existing commands found in stream
[2026-06-19 09:54:15,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:54:15,479.479 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 09:54:16,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:54:16,818.818 INFO    ] Checking for system updates...
[2026-06-19 09:54:16,854.854 INFO    ] 200
[2026-06-19 09:54:16,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:16,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:54:16,913.913 INFO    ] No update needed
[2026-06-19 09:54:16,915.915 INFO    ] Checking for camera pi updates...
[2026-06-19 09:54:16,950.950 INFO    ] 200
[2026-06-19 09:54:16,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:16,992.992 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:54:17,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:54:17,034.034 INFO    ] No camera update needed
[2026-06-19 09:54:17,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:54:17,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:54:17,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:54:17,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:54:19,092.092 INFO    ] ================================================
[2026-06-19 09:54:19,108.108 INFO    ] Launching Daemon at Fri Jun 19 09:54:19 IST 2026
[2026-06-19 09:54:19,119.119 INFO    ] ================================================
[2026-06-19 09:54:19,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:54:19
[2026-06-19 09:54:20,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:54:20,758.758 INFO    ] Initializing speech engine...
[2026-06-19 09:54:20,771.771 INFO    ] 2026-06-19 09:54:20
[2026-06-19 09:54:21,038.038 INFO    ] 2026-06-19 09:54:21
[2026-06-19 09:54:21,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:54:21,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:54:21,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:54:21,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:54:21,549.549 INFO    ] time= 19/06/2026 09:54:21
[2026-06-19 09:54:21,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:54:21,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:54:21,769.769 INFO    ] No existing commands found in stream
[2026-06-19 09:54:26,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:54:26,792.792 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 09:54:29,605.605 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:54:29,608.608 INFO    ] Checking for system updates...
[2026-06-19 09:54:29,646.646 INFO    ] 200
[2026-06-19 09:54:29,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:29,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:54:29,705.705 INFO    ] No update needed
[2026-06-19 09:54:29,708.708 INFO    ] Checking for camera pi updates...
[2026-06-19 09:54:29,742.742 INFO    ] 200
[2026-06-19 09:54:29,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:29,786.786 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:54:29,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:54:29,829.829 INFO    ] No camera update needed
[2026-06-19 09:54:29,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:54:29,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:54:29,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:54:29,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:54:31,885.885 INFO    ] ================================================
[2026-06-19 09:54:31,901.901 INFO    ] Launching Daemon at Fri Jun 19 09:54:31 IST 2026
[2026-06-19 09:54:31,912.912 INFO    ] ================================================
[2026-06-19 09:54:32,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:54:32
[2026-06-19 09:54:33,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:54:33,380.380 INFO    ] Initializing speech engine...
[2026-06-19 09:54:33,403.403 INFO    ] 2026-06-19 09:54:33
[2026-06-19 09:54:33,660.660 INFO    ] 2026-06-19 09:54:33
[2026-06-19 09:54:33,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:54:33,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:54:33,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:54:34,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:54:34,161.161 INFO    ] time= 19/06/2026 09:54:34
[2026-06-19 09:54:34,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:54:34,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:54:34,319.319 INFO    ] No existing commands found in stream
[2026-06-19 09:54:39,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:54:39,359.359 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 09:54:43,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:54:43,072.072 INFO    ] Checking for system updates...
[2026-06-19 09:54:43,109.109 INFO    ] 200
[2026-06-19 09:54:43,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:43,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:54:43,166.166 INFO    ] No update needed
[2026-06-19 09:54:43,169.169 INFO    ] Checking for camera pi updates...
[2026-06-19 09:54:43,202.202 INFO    ] 200
[2026-06-19 09:54:43,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:43,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:54:43,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:54:43,295.295 INFO    ] No camera update needed
[2026-06-19 09:54:43,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:54:43,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:54:43,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:54:43,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:54:45,353.353 INFO    ] ================================================
[2026-06-19 09:54:45,370.370 INFO    ] Launching Daemon at Fri Jun 19 09:54:45 IST 2026
[2026-06-19 09:54:45,381.381 INFO    ] ================================================
[2026-06-19 09:54:45,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:54:45
[2026-06-19 09:54:46,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:54:46,849.849 INFO    ] Initializing speech engine...
[2026-06-19 09:54:46,858.858 INFO    ] 2026-06-19 09:54:46
[2026-06-19 09:54:47,118.118 INFO    ] 2026-06-19 09:54:47
[2026-06-19 09:54:47,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:54:47,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:54:47,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:54:47,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:54:47,554.554 INFO    ] time= 19/06/2026 09:54:47
[2026-06-19 09:54:47,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:54:47,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:54:47,828.828 INFO    ] No existing commands found in stream
[2026-06-19 09:54:52,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:54:52,846.846 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 09:54:54,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:54:54,295.295 INFO    ] Checking for system updates...
[2026-06-19 09:54:54,332.332 INFO    ] 200
[2026-06-19 09:54:54,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:54,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:54:54,391.391 INFO    ] No update needed
[2026-06-19 09:54:54,393.393 INFO    ] Checking for camera pi updates...
[2026-06-19 09:54:54,427.427 INFO    ] 200
[2026-06-19 09:54:54,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:54:54,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:54:54,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:54:54,510.510 INFO    ] No camera update needed
[2026-06-19 09:54:54,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:54:54,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:54:54,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:54:54,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:54:56,565.565 INFO    ] ================================================
[2026-06-19 09:54:56,581.581 INFO    ] Launching Daemon at Fri Jun 19 09:54:56 IST 2026
[2026-06-19 09:54:56,593.593 INFO    ] ================================================
[2026-06-19 09:54:57,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:54:57
[2026-06-19 09:54:57,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:54:58,199.199 INFO    ] Initializing speech engine...
[2026-06-19 09:54:58,207.207 INFO    ] 2026-06-19 09:54:58
[2026-06-19 09:54:58,460.460 INFO    ] 2026-06-19 09:54:58
[2026-06-19 09:54:58,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:54:58,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:54:58,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:54:58,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:54:58,842.842 INFO    ] time= 19/06/2026 09:54:58
[2026-06-19 09:54:58,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:54:58,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:54:59,025.025 INFO    ] No existing commands found in stream
[2026-06-19 09:55:04,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:55:04,038.038 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 09:55:05,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:55:05,311.311 INFO    ] Checking for system updates...
[2026-06-19 09:55:05,347.347 INFO    ] 200
[2026-06-19 09:55:05,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:05,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:55:05,404.404 INFO    ] No update needed
[2026-06-19 09:55:05,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 09:55:05,445.445 INFO    ] 200
[2026-06-19 09:55:05,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:05,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:55:05,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:55:05,553.553 INFO    ] No camera update needed
[2026-06-19 09:55:05,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:55:05,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:55:05,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:55:05,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:55:07,609.609 INFO    ] ================================================
[2026-06-19 09:55:07,625.625 INFO    ] Launching Daemon at Fri Jun 19 09:55:07 IST 2026
[2026-06-19 09:55:07,636.636 INFO    ] ================================================
[2026-06-19 09:55:08,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:55:08
[2026-06-19 09:55:08,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:55:09,073.073 INFO    ] Initializing speech engine...
[2026-06-19 09:55:09,079.079 INFO    ] 2026-06-19 09:55:09
[2026-06-19 09:55:09,377.377 INFO    ] 2026-06-19 09:55:09
[2026-06-19 09:55:09,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:55:09,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:55:09,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:55:09,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:55:09,803.803 INFO    ] time= 19/06/2026 09:55:09
[2026-06-19 09:55:09,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:55:09,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:55:09,947.947 INFO    ] No existing commands found in stream
[2026-06-19 09:55:14,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:55:14,975.975 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 09:55:18,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:55:18,537.537 INFO    ] Checking for system updates...
[2026-06-19 09:55:18,573.573 INFO    ] 200
[2026-06-19 09:55:18,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:18,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:55:18,633.633 INFO    ] No update needed
[2026-06-19 09:55:18,635.635 INFO    ] Checking for camera pi updates...
[2026-06-19 09:55:18,669.669 INFO    ] 200
[2026-06-19 09:55:18,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:18,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:55:18,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:55:18,860.860 INFO    ] No camera update needed
[2026-06-19 09:55:18,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:55:18,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:55:18,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:55:18,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:55:20,918.918 INFO    ] ================================================
[2026-06-19 09:55:20,933.933 INFO    ] Launching Daemon at Fri Jun 19 09:55:20 IST 2026
[2026-06-19 09:55:20,944.944 INFO    ] ================================================
[2026-06-19 09:55:21,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:55:21
[2026-06-19 09:55:22,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:55:22,601.601 INFO    ] Initializing speech engine...
[2026-06-19 09:55:22,615.615 INFO    ] 2026-06-19 09:55:22
[2026-06-19 09:55:22,902.902 INFO    ] 2026-06-19 09:55:22
[2026-06-19 09:55:22,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:55:23,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:55:23,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:55:23,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:55:23,464.464 INFO    ] time= 19/06/2026 09:55:23
[2026-06-19 09:55:23,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:55:23,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:55:23,626.626 INFO    ] No existing commands found in stream
[2026-06-19 09:55:28,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:55:28,654.654 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 09:55:30,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:55:30,288.288 INFO    ] Checking for system updates...
[2026-06-19 09:55:30,324.324 INFO    ] 200
[2026-06-19 09:55:30,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:30,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:55:30,382.382 INFO    ] No update needed
[2026-06-19 09:55:30,387.387 INFO    ] Checking for camera pi updates...
[2026-06-19 09:55:30,421.421 INFO    ] 200
[2026-06-19 09:55:30,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:30,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:55:30,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:55:30,510.510 INFO    ] No camera update needed
[2026-06-19 09:55:30,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:55:30,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:55:30,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:55:30,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:55:32,566.566 INFO    ] ================================================
[2026-06-19 09:55:32,583.583 INFO    ] Launching Daemon at Fri Jun 19 09:55:32 IST 2026
[2026-06-19 09:55:32,595.595 INFO    ] ================================================
[2026-06-19 09:55:33,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:55:33
[2026-06-19 09:55:33,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:55:34,088.088 INFO    ] Initializing speech engine...
[2026-06-19 09:55:34,097.097 INFO    ] 2026-06-19 09:55:34
[2026-06-19 09:55:34,359.359 INFO    ] 2026-06-19 09:55:34
[2026-06-19 09:55:34,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:55:34,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:55:34,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:55:34,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:55:34,843.843 INFO    ] time= 19/06/2026 09:55:34
[2026-06-19 09:55:34,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:55:34,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:55:35,040.040 INFO    ] No existing commands found in stream
[2026-06-19 09:55:40,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:55:40,074.074 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 09:55:43,832.832 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:55:43,835.835 INFO    ] Checking for system updates...
[2026-06-19 09:55:43,871.871 INFO    ] 200
[2026-06-19 09:55:43,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:43,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:55:43,929.929 INFO    ] No update needed
[2026-06-19 09:55:43,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 09:55:43,965.965 INFO    ] 200
[2026-06-19 09:55:43,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:44,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:55:44,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:55:44,061.061 INFO    ] No camera update needed
[2026-06-19 09:55:44,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:55:44,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:55:44,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:55:44,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:55:46,119.119 INFO    ] ================================================
[2026-06-19 09:55:46,136.136 INFO    ] Launching Daemon at Fri Jun 19 09:55:46 IST 2026
[2026-06-19 09:55:46,146.146 INFO    ] ================================================
[2026-06-19 09:55:46,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:55:46
[2026-06-19 09:55:47,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:55:47,629.629 INFO    ] Initializing speech engine...
[2026-06-19 09:55:47,634.634 INFO    ] 2026-06-19 09:55:47
[2026-06-19 09:55:47,897.897 INFO    ] 2026-06-19 09:55:47
[2026-06-19 09:55:47,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:55:48,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:55:48,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:55:48,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:55:48,511.511 INFO    ] time= 19/06/2026 09:55:48
[2026-06-19 09:55:48,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:55:48,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:55:48,693.693 INFO    ] No existing commands found in stream
[2026-06-19 09:55:53,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:55:53,727.727 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 09:55:55,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:55:55,430.430 INFO    ] Checking for system updates...
[2026-06-19 09:55:55,468.468 INFO    ] 200
[2026-06-19 09:55:55,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:55,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:55:55,530.530 INFO    ] No update needed
[2026-06-19 09:55:55,532.532 INFO    ] Checking for camera pi updates...
[2026-06-19 09:55:55,568.568 INFO    ] 200
[2026-06-19 09:55:55,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:55:55,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:55:55,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:55:55,662.662 INFO    ] No camera update needed
[2026-06-19 09:55:55,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:55:55,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:55:55,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:55:55,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:55:57,722.722 INFO    ] ================================================
[2026-06-19 09:55:57,738.738 INFO    ] Launching Daemon at Fri Jun 19 09:55:57 IST 2026
[2026-06-19 09:55:57,749.749 INFO    ] ================================================
[2026-06-19 09:55:58,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:55:58
[2026-06-19 09:55:58,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:55:59,226.226 INFO    ] Initializing speech engine...
[2026-06-19 09:55:59,235.235 INFO    ] 2026-06-19 09:55:59
[2026-06-19 09:55:59,522.522 INFO    ] 2026-06-19 09:55:59
[2026-06-19 09:55:59,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:55:59,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:55:59,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:55:59,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:56:00,014.014 INFO    ] time= 19/06/2026 09:55:59
[2026-06-19 09:56:00,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:56:00,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:56:00,270.270 INFO    ] No existing commands found in stream
[2026-06-19 09:56:05,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:56:05,291.291 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 09:56:09,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:56:09,234.234 INFO    ] Checking for system updates...
[2026-06-19 09:56:09,272.272 INFO    ] 200
[2026-06-19 09:56:09,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:56:09,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:56:09,330.330 INFO    ] No update needed
[2026-06-19 09:56:09,333.333 INFO    ] Checking for camera pi updates...
[2026-06-19 09:56:09,371.371 INFO    ] 200
[2026-06-19 09:56:09,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:56:09,415.415 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:56:09,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:56:09,461.461 INFO    ] No camera update needed
[2026-06-19 09:56:09,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:56:09,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:56:09,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:56:09,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:56:11,522.522 INFO    ] ================================================
[2026-06-19 09:56:11,537.537 INFO    ] Launching Daemon at Fri Jun 19 09:56:11 IST 2026
[2026-06-19 09:56:11,549.549 INFO    ] ================================================
[2026-06-19 09:56:12,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:56:12
[2026-06-19 09:56:12,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:56:12,986.986 INFO    ] Initializing speech engine...
[2026-06-19 09:56:12,995.995 INFO    ] 2026-06-19 09:56:12
[2026-06-19 09:56:13,304.304 INFO    ] 2026-06-19 09:56:13
[2026-06-19 09:56:13,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:56:13,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:56:13,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:56:13,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:56:13,694.694 INFO    ] time= 19/06/2026 09:56:13
[2026-06-19 09:56:13,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:56:13,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:56:13,879.879 INFO    ] No existing commands found in stream
[2026-06-19 09:56:18,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:56:18,907.907 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 09:56:21,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:56:21,855.855 INFO    ] Checking for system updates...
[2026-06-19 09:56:21,891.891 INFO    ] 200
[2026-06-19 09:56:21,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:56:21,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:56:21,951.951 INFO    ] No update needed
[2026-06-19 09:56:21,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 09:56:21,993.993 INFO    ] 200
[2026-06-19 09:56:21,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:56:22,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:56:22,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:56:22,086.086 INFO    ] No camera update needed
[2026-06-19 09:56:22,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:56:22,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:56:22,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:56:22,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:56:24,142.142 INFO    ] ================================================
[2026-06-19 09:56:24,158.158 INFO    ] Launching Daemon at Fri Jun 19 09:56:24 IST 2026
[2026-06-19 09:56:24,169.169 INFO    ] ================================================
[2026-06-19 09:56:24,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:56:24
[2026-06-19 09:56:25,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:56:25,682.682 INFO    ] Initializing speech engine...
[2026-06-19 09:56:25,695.695 INFO    ] 2026-06-19 09:56:25
[2026-06-19 09:56:25,974.974 INFO    ] 2026-06-19 09:56:25
[2026-06-19 09:56:26,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:56:26,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:56:26,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:56:26,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:56:26,515.515 INFO    ] time= 19/06/2026 09:56:26
[2026-06-19 09:56:26,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:56:26,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:56:26,698.698 INFO    ] No existing commands found in stream
[2026-06-19 09:56:31,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:56:31,731.731 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 09:56:34,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:56:34,196.196 INFO    ] Checking for system updates...
[2026-06-19 09:56:34,234.234 INFO    ] 200
[2026-06-19 09:56:34,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:56:34,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:56:34,294.294 INFO    ] No update needed
[2026-06-19 09:56:34,297.297 INFO    ] Checking for camera pi updates...
[2026-06-19 09:56:34,332.332 INFO    ] 200
[2026-06-19 09:56:34,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:56:34,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:56:34,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:56:34,419.419 INFO    ] No camera update needed
[2026-06-19 09:56:34,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:56:34,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:56:34,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:56:34,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:56:36,475.475 INFO    ] ================================================
[2026-06-19 09:56:36,491.491 INFO    ] Launching Daemon at Fri Jun 19 09:56:36 IST 2026
[2026-06-19 09:56:36,502.502 INFO    ] ================================================
[2026-06-19 09:56:37,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:56:37
[2026-06-19 09:56:37,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:56:38,097.097 INFO    ] Initializing speech engine...
[2026-06-19 09:56:38,108.108 INFO    ] 2026-06-19 09:56:38
[2026-06-19 09:56:38,395.395 INFO    ] 2026-06-19 09:56:38
[2026-06-19 09:56:38,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:56:38,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:56:38,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:56:38,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:56:38,935.935 INFO    ] time= 19/06/2026 09:56:38
[2026-06-19 09:56:38,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:56:38,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:56:39,136.136 INFO    ] No existing commands found in stream
[2026-06-19 09:56:44,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:56:44,171.171 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 09:56:47,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:56:47,864.864 INFO    ] Checking for system updates...
[2026-06-19 09:56:47,901.901 INFO    ] 200
[2026-06-19 09:56:47,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:56:47,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:56:47,961.961 INFO    ] No update needed
[2026-06-19 09:56:47,964.964 INFO    ] Checking for camera pi updates...
[2026-06-19 09:56:47,998.998 INFO    ] 200
[2026-06-19 09:56:48,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:56:48,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:56:48,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:56:48,079.079 INFO    ] No camera update needed
[2026-06-19 09:56:48,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:56:48,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:56:48,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:56:48,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:56:50,135.135 INFO    ] ================================================
[2026-06-19 09:56:50,151.151 INFO    ] Launching Daemon at Fri Jun 19 09:56:50 IST 2026
[2026-06-19 09:56:50,163.163 INFO    ] ================================================
[2026-06-19 09:56:50,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:56:50
[2026-06-19 09:56:51,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:56:51,581.581 INFO    ] Initializing speech engine...
[2026-06-19 09:56:51,590.590 INFO    ] 2026-06-19 09:56:51
[2026-06-19 09:56:51,850.850 INFO    ] 2026-06-19 09:56:51
[2026-06-19 09:56:51,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:56:52,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:56:52,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:56:52,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:56:52,291.291 INFO    ] time= 19/06/2026 09:56:52
[2026-06-19 09:56:52,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:56:52,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:56:52,530.530 INFO    ] No existing commands found in stream
[2026-06-19 09:56:57,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:56:57,558.558 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 09:57:00,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:57:00,228.228 INFO    ] Checking for system updates...
[2026-06-19 09:57:00,264.264 INFO    ] 200
[2026-06-19 09:57:00,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:00,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:57:00,321.321 INFO    ] No update needed
[2026-06-19 09:57:00,324.324 INFO    ] Checking for camera pi updates...
[2026-06-19 09:57:00,357.357 INFO    ] 200
[2026-06-19 09:57:00,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:00,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:57:00,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:57:00,448.448 INFO    ] No camera update needed
[2026-06-19 09:57:00,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:57:00,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:57:00,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:57:00,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:57:02,517.517 INFO    ] ================================================
[2026-06-19 09:57:02,537.537 INFO    ] Launching Daemon at Fri Jun 19 09:57:02 IST 2026
[2026-06-19 09:57:02,554.554 INFO    ] ================================================
[2026-06-19 09:57:03,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:57:03
[2026-06-19 09:57:03,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:57:04,059.059 INFO    ] Initializing speech engine...
[2026-06-19 09:57:04,074.074 INFO    ] 2026-06-19 09:57:04
[2026-06-19 09:57:04,341.341 INFO    ] 2026-06-19 09:57:04
[2026-06-19 09:57:04,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:57:04,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:57:04,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:57:04,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:57:04,819.819 INFO    ] time= 19/06/2026 09:57:04
[2026-06-19 09:57:04,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:57:04,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:57:05,047.047 INFO    ] No existing commands found in stream
[2026-06-19 09:57:10,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:57:10,075.075 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 09:57:13,523.523 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:57:13,526.526 INFO    ] Checking for system updates...
[2026-06-19 09:57:13,563.563 INFO    ] 200
[2026-06-19 09:57:13,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:13,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:57:13,621.621 INFO    ] No update needed
[2026-06-19 09:57:13,624.624 INFO    ] Checking for camera pi updates...
[2026-06-19 09:57:13,668.668 INFO    ] 200
[2026-06-19 09:57:13,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:13,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:57:13,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:57:13,759.759 INFO    ] No camera update needed
[2026-06-19 09:57:13,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:57:13,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:57:13,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:57:13,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:57:15,813.813 INFO    ] ================================================
[2026-06-19 09:57:15,831.831 INFO    ] Launching Daemon at Fri Jun 19 09:57:15 IST 2026
[2026-06-19 09:57:15,842.842 INFO    ] ================================================
[2026-06-19 09:57:16,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:57:16
[2026-06-19 09:57:16,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:57:17,237.237 INFO    ] Initializing speech engine...
[2026-06-19 09:57:17,251.251 INFO    ] 2026-06-19 09:57:17
[2026-06-19 09:57:17,513.513 INFO    ] 2026-06-19 09:57:17
[2026-06-19 09:57:17,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:57:17,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:57:17,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:57:17,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:57:17,993.993 INFO    ] time= 19/06/2026 09:57:17
[2026-06-19 09:57:18,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:57:18,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:57:18,197.197 INFO    ] No existing commands found in stream
[2026-06-19 09:57:23,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:57:23,230.230 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 09:57:26,871.871 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:57:26,873.873 INFO    ] Checking for system updates...
[2026-06-19 09:57:26,913.913 INFO    ] 200
[2026-06-19 09:57:26,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:26,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:57:26,978.978 INFO    ] No update needed
[2026-06-19 09:57:26,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 09:57:27,017.017 INFO    ] 200
[2026-06-19 09:57:27,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:27,060.060 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:57:27,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:57:27,204.204 INFO    ] No camera update needed
[2026-06-19 09:57:27,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:57:27,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:57:27,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:57:27,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:57:29,260.260 INFO    ] ================================================
[2026-06-19 09:57:29,275.275 INFO    ] Launching Daemon at Fri Jun 19 09:57:29 IST 2026
[2026-06-19 09:57:29,286.286 INFO    ] ================================================
[2026-06-19 09:57:29,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:57:29
[2026-06-19 09:57:30,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:57:30,690.690 INFO    ] Initializing speech engine...
[2026-06-19 09:57:30,704.704 INFO    ] 2026-06-19 09:57:30
[2026-06-19 09:57:30,966.966 INFO    ] 2026-06-19 09:57:30
[2026-06-19 09:57:31,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:57:31,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:57:31,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:57:31,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:57:31,415.415 INFO    ] time= 19/06/2026 09:57:31
[2026-06-19 09:57:31,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:57:31,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:57:31,656.656 INFO    ] No existing commands found in stream
[2026-06-19 09:57:36,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:57:36,691.691 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 09:57:39,652.652 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 09:57:39,655.655 INFO    ] Checking for system updates...
[2026-06-19 09:57:39,691.691 INFO    ] 200
[2026-06-19 09:57:39,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:39,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:57:39,748.748 INFO    ] No update needed
[2026-06-19 09:57:39,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 09:57:39,785.785 INFO    ] 200
[2026-06-19 09:57:39,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:39,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:57:39,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:57:39,884.884 INFO    ] No camera update needed
[2026-06-19 09:57:39,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:57:39,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:57:39,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:57:39,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:57:41,940.940 INFO    ] ================================================
[2026-06-19 09:57:41,955.955 INFO    ] Launching Daemon at Fri Jun 19 09:57:41 IST 2026
[2026-06-19 09:57:41,966.966 INFO    ] ================================================
[2026-06-19 09:57:42,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:57:42
[2026-06-19 09:57:43,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:57:43,495.495 INFO    ] Initializing speech engine...
[2026-06-19 09:57:43,509.509 INFO    ] 2026-06-19 09:57:43
[2026-06-19 09:57:43,789.789 INFO    ] 2026-06-19 09:57:43
[2026-06-19 09:57:43,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:57:44,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:57:44,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:57:44,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:57:44,327.327 INFO    ] time= 19/06/2026 09:57:44
[2026-06-19 09:57:44,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:57:44,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:57:44,528.528 INFO    ] No existing commands found in stream
[2026-06-19 09:57:49,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:57:49,562.562 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 09:57:52,113.113 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:57:52,117.117 INFO    ] Checking for system updates...
[2026-06-19 09:57:52,155.155 INFO    ] 200
[2026-06-19 09:57:52,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:52,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:57:52,215.215 INFO    ] No update needed
[2026-06-19 09:57:52,218.218 INFO    ] Checking for camera pi updates...
[2026-06-19 09:57:52,256.256 INFO    ] 200
[2026-06-19 09:57:52,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:57:52,305.305 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:57:52,345.345 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:57:52,348.348 INFO    ] No camera update needed
[2026-06-19 09:57:52,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:57:52,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:57:52,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:57:52,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:57:54,403.403 INFO    ] ================================================
[2026-06-19 09:57:54,419.419 INFO    ] Launching Daemon at Fri Jun 19 09:57:54 IST 2026
[2026-06-19 09:57:54,430.430 INFO    ] ================================================
[2026-06-19 09:57:55,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:57:55
[2026-06-19 09:57:55,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:57:56,062.062 INFO    ] Initializing speech engine...
[2026-06-19 09:57:56,076.076 INFO    ] 2026-06-19 09:57:56
[2026-06-19 09:57:56,388.388 INFO    ] 2026-06-19 09:57:56
[2026-06-19 09:57:56,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:57:56,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:57:56,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:57:56,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:57:56,898.898 INFO    ] time= 19/06/2026 09:57:56
[2026-06-19 09:57:56,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:57:56,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:57:57,068.068 INFO    ] No existing commands found in stream
[2026-06-19 09:58:02,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:58:02,108.108 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 09:58:05,505.505 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:58:05,508.508 INFO    ] Checking for system updates...
[2026-06-19 09:58:05,548.548 INFO    ] 200
[2026-06-19 09:58:05,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:05,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:58:05,612.612 INFO    ] No update needed
[2026-06-19 09:58:05,615.615 INFO    ] Checking for camera pi updates...
[2026-06-19 09:58:05,650.650 INFO    ] 200
[2026-06-19 09:58:05,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:05,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:58:05,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:58:05,740.740 INFO    ] No camera update needed
[2026-06-19 09:58:05,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:58:05,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:58:05,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:58:05,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:58:07,795.795 INFO    ] ================================================
[2026-06-19 09:58:07,810.810 INFO    ] Launching Daemon at Fri Jun 19 09:58:07 IST 2026
[2026-06-19 09:58:07,821.821 INFO    ] ================================================
[2026-06-19 09:58:08,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:58:08
[2026-06-19 09:58:09,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:58:09,320.320 INFO    ] Initializing speech engine...
[2026-06-19 09:58:09,331.331 INFO    ] 2026-06-19 09:58:09
[2026-06-19 09:58:09,608.608 INFO    ] 2026-06-19 09:58:09
[2026-06-19 09:58:09,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:58:09,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:58:09,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:58:10,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:58:10,147.147 INFO    ] time= 19/06/2026 09:58:10
[2026-06-19 09:58:10,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:58:10,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:58:10,300.300 INFO    ] No existing commands found in stream
[2026-06-19 09:58:15,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:58:15,322.322 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 09:58:18,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:58:18,787.787 INFO    ] Checking for system updates...
[2026-06-19 09:58:18,825.825 INFO    ] 200
[2026-06-19 09:58:18,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:18,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:58:18,896.896 INFO    ] No update needed
[2026-06-19 09:58:18,899.899 INFO    ] Checking for camera pi updates...
[2026-06-19 09:58:18,949.949 INFO    ] 200
[2026-06-19 09:58:18,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:18,998.998 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:58:19,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:58:19,050.050 INFO    ] No camera update needed
[2026-06-19 09:58:19,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:58:19,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:58:19,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:58:19,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:58:21,105.105 INFO    ] ================================================
[2026-06-19 09:58:21,120.120 INFO    ] Launching Daemon at Fri Jun 19 09:58:21 IST 2026
[2026-06-19 09:58:21,130.130 INFO    ] ================================================
[2026-06-19 09:58:21,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:58:21
[2026-06-19 09:58:22,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:58:22,743.743 INFO    ] Initializing speech engine...
[2026-06-19 09:58:22,750.750 INFO    ] 2026-06-19 09:58:22
[2026-06-19 09:58:23,026.026 INFO    ] 2026-06-19 09:58:23
[2026-06-19 09:58:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:58:23,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:58:23,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:58:23,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:58:23,554.554 INFO    ] time= 19/06/2026 09:58:23
[2026-06-19 09:58:23,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:58:23,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:58:23,764.764 INFO    ] No existing commands found in stream
[2026-06-19 09:58:28,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:58:28,791.791 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 09:58:30,061.061 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:58:30,064.064 INFO    ] Checking for system updates...
[2026-06-19 09:58:30,101.101 INFO    ] 200
[2026-06-19 09:58:30,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:30,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:58:30,166.166 INFO    ] No update needed
[2026-06-19 09:58:30,169.169 INFO    ] Checking for camera pi updates...
[2026-06-19 09:58:30,208.208 INFO    ] 200
[2026-06-19 09:58:30,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:30,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:58:30,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:58:30,304.304 INFO    ] No camera update needed
[2026-06-19 09:58:30,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:58:30,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:58:30,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:58:30,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:58:32,361.361 INFO    ] ================================================
[2026-06-19 09:58:32,378.378 INFO    ] Launching Daemon at Fri Jun 19 09:58:32 IST 2026
[2026-06-19 09:58:32,389.389 INFO    ] ================================================
[2026-06-19 09:58:33,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:58:33
[2026-06-19 09:58:33,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:58:33,997.997 INFO    ] Initializing speech engine...
[2026-06-19 09:58:34,001.001 INFO    ] 2026-06-19 09:58:33
[2026-06-19 09:58:34,271.271 INFO    ] 2026-06-19 09:58:34
[2026-06-19 09:58:34,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:58:34,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:58:34,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:58:34,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:58:34,768.768 INFO    ] time= 19/06/2026 09:58:34
[2026-06-19 09:58:34,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:58:34,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:58:34,983.983 INFO    ] No existing commands found in stream
[2026-06-19 09:58:39,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:58:39,998.998 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 09:58:42,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 09:58:42,060.060 INFO    ] Checking for system updates...
[2026-06-19 09:58:42,096.096 INFO    ] 200
[2026-06-19 09:58:42,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:42,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:58:42,154.154 INFO    ] No update needed
[2026-06-19 09:58:42,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 09:58:42,191.191 INFO    ] 200
[2026-06-19 09:58:42,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:42,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:58:42,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:58:42,278.278 INFO    ] No camera update needed
[2026-06-19 09:58:42,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:58:42,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:58:42,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:58:42,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:58:44,335.335 INFO    ] ================================================
[2026-06-19 09:58:44,351.351 INFO    ] Launching Daemon at Fri Jun 19 09:58:44 IST 2026
[2026-06-19 09:58:44,362.362 INFO    ] ================================================
[2026-06-19 09:58:44,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:58:44
[2026-06-19 09:58:45,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:58:45,778.778 INFO    ] Initializing speech engine...
[2026-06-19 09:58:45,794.794 INFO    ] 2026-06-19 09:58:45
[2026-06-19 09:58:46,070.070 INFO    ] 2026-06-19 09:58:46
[2026-06-19 09:58:46,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:58:46,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:58:46,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:58:46,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:58:46,577.577 INFO    ] time= 19/06/2026 09:58:46
[2026-06-19 09:58:46,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:58:46,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:58:46,782.782 INFO    ] No existing commands found in stream
[2026-06-19 09:58:51,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:58:51,798.798 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 09:58:55,082.082 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 09:58:55,085.085 INFO    ] Checking for system updates...
[2026-06-19 09:58:55,122.122 INFO    ] 200
[2026-06-19 09:58:55,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:55,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:58:55,183.183 INFO    ] No update needed
[2026-06-19 09:58:55,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 09:58:55,221.221 INFO    ] 200
[2026-06-19 09:58:55,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:58:55,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:58:55,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:58:55,314.314 INFO    ] No camera update needed
[2026-06-19 09:58:55,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:58:55,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:58:55,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:58:55,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:58:57,374.374 INFO    ] ================================================
[2026-06-19 09:58:57,389.389 INFO    ] Launching Daemon at Fri Jun 19 09:58:57 IST 2026
[2026-06-19 09:58:57,400.400 INFO    ] ================================================
[2026-06-19 09:58:57,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:58:57
[2026-06-19 09:58:58,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:58:58,813.813 INFO    ] Initializing speech engine...
[2026-06-19 09:58:58,828.828 INFO    ] 2026-06-19 09:58:58
[2026-06-19 09:58:59,110.110 INFO    ] 2026-06-19 09:58:59
[2026-06-19 09:58:59,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:58:59,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:58:59,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:58:59,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:58:59,661.661 INFO    ] time= 19/06/2026 09:58:59
[2026-06-19 09:58:59,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:58:59,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:58:59,810.810 INFO    ] No existing commands found in stream
[2026-06-19 09:59:04,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:59:04,828.828 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 09:59:08,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 09:59:08,096.096 INFO    ] Checking for system updates...
[2026-06-19 09:59:08,137.137 INFO    ] 200
[2026-06-19 09:59:08,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:08,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:59:08,197.197 INFO    ] No update needed
[2026-06-19 09:59:08,200.200 INFO    ] Checking for camera pi updates...
[2026-06-19 09:59:08,239.239 INFO    ] 200
[2026-06-19 09:59:08,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:08,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:59:08,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 09:59:08,333.333 INFO    ] No camera update needed
[2026-06-19 09:59:08,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:59:08,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:59:08,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:59:08,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:59:10,394.394 INFO    ] ================================================
[2026-06-19 09:59:10,409.409 INFO    ] Launching Daemon at Fri Jun 19 09:59:10 IST 2026
[2026-06-19 09:59:10,421.421 INFO    ] ================================================
[2026-06-19 09:59:11,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:59:11
[2026-06-19 09:59:11,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:59:12,081.081 INFO    ] Initializing speech engine...
[2026-06-19 09:59:12,090.090 INFO    ] 2026-06-19 09:59:12
[2026-06-19 09:59:12,383.383 INFO    ] 2026-06-19 09:59:12
[2026-06-19 09:59:12,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:59:12,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:59:12,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:59:12,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:59:12,939.939 INFO    ] time= 19/06/2026 09:59:12
[2026-06-19 09:59:12,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:59:12,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:59:13,137.137 INFO    ] No existing commands found in stream
[2026-06-19 09:59:18,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:59:18,167.167 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 09:59:18,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 09:59:18,826.826 INFO    ] Checking for system updates...
[2026-06-19 09:59:18,864.864 INFO    ] 200
[2026-06-19 09:59:18,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:18,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:59:18,926.926 INFO    ] No update needed
[2026-06-19 09:59:18,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 09:59:18,964.964 INFO    ] 200
[2026-06-19 09:59:18,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:19,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:59:19,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:59:19,054.054 INFO    ] No camera update needed
[2026-06-19 09:59:19,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:59:19,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:59:19,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:59:19,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:59:21,113.113 INFO    ] ================================================
[2026-06-19 09:59:21,129.129 INFO    ] Launching Daemon at Fri Jun 19 09:59:21 IST 2026
[2026-06-19 09:59:21,140.140 INFO    ] ================================================
[2026-06-19 09:59:21,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:59:21
[2026-06-19 09:59:22,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:59:22,546.546 INFO    ] Initializing speech engine...
[2026-06-19 09:59:22,559.559 INFO    ] 2026-06-19 09:59:22
[2026-06-19 09:59:22,824.824 INFO    ] 2026-06-19 09:59:22
[2026-06-19 09:59:22,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:59:23,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:59:23,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:59:23,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:59:23,301.301 INFO    ] time= 19/06/2026 09:59:23
[2026-06-19 09:59:23,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:59:23,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:59:23,555.555 INFO    ] No existing commands found in stream
[2026-06-19 09:59:28,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:59:28,570.570 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 09:59:32,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:59:32,426.426 INFO    ] Checking for system updates...
[2026-06-19 09:59:32,471.471 INFO    ] 200
[2026-06-19 09:59:32,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:32,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:59:32,540.540 INFO    ] No update needed
[2026-06-19 09:59:32,543.543 INFO    ] Checking for camera pi updates...
[2026-06-19 09:59:32,587.587 INFO    ] 200
[2026-06-19 09:59:32,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:32,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:59:32,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:59:32,714.714 INFO    ] No camera update needed
[2026-06-19 09:59:32,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:59:32,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:59:32,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:59:32,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:59:34,770.770 INFO    ] ================================================
[2026-06-19 09:59:34,786.786 INFO    ] Launching Daemon at Fri Jun 19 09:59:34 IST 2026
[2026-06-19 09:59:34,798.798 INFO    ] ================================================
[2026-06-19 09:59:35,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:59:35
[2026-06-19 09:59:36,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:59:36,447.447 INFO    ] Initializing speech engine...
[2026-06-19 09:59:36,460.460 INFO    ] 2026-06-19 09:59:36
[2026-06-19 09:59:36,771.771 INFO    ] 2026-06-19 09:59:36
[2026-06-19 09:59:36,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:59:37,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:59:37,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:59:37,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:59:37,229.229 INFO    ] time= 19/06/2026 09:59:37
[2026-06-19 09:59:37,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:59:37,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:59:37,440.440 INFO    ] No existing commands found in stream
[2026-06-19 09:59:42,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:59:42,459.459 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 09:59:44,723.723 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:59:44,726.726 INFO    ] Checking for system updates...
[2026-06-19 09:59:44,763.763 INFO    ] 200
[2026-06-19 09:59:44,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:44,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:59:44,831.831 INFO    ] No update needed
[2026-06-19 09:59:44,834.834 INFO    ] Checking for camera pi updates...
[2026-06-19 09:59:44,869.869 INFO    ] 200
[2026-06-19 09:59:44,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:44,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:59:44,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:59:44,955.955 INFO    ] No camera update needed
[2026-06-19 09:59:44,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:59:44,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:59:44,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:59:44,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:59:47,011.011 INFO    ] ================================================
[2026-06-19 09:59:47,028.028 INFO    ] Launching Daemon at Fri Jun 19 09:59:47 IST 2026
[2026-06-19 09:59:47,039.039 INFO    ] ================================================
[2026-06-19 09:59:47,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:59:47
[2026-06-19 09:59:48,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 09:59:48,473.473 INFO    ] Initializing speech engine...
[2026-06-19 09:59:48,479.479 INFO    ] 2026-06-19 09:59:48
[2026-06-19 09:59:48,737.737 INFO    ] 2026-06-19 09:59:48
[2026-06-19 09:59:48,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 09:59:49,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 09:59:49,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 09:59:49,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 09:59:49,195.195 INFO    ] time= 19/06/2026 09:59:49
[2026-06-19 09:59:49,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 09:59:49,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 09:59:49,416.416 INFO    ] No existing commands found in stream
[2026-06-19 09:59:54,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 09:59:54,446.446 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 09:59:56,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 09:59:56,887.887 INFO    ] Checking for system updates...
[2026-06-19 09:59:56,923.923 INFO    ] 200
[2026-06-19 09:59:56,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:56,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:59:56,982.982 INFO    ] No update needed
[2026-06-19 09:59:56,985.985 INFO    ] Checking for camera pi updates...
[2026-06-19 09:59:57,027.027 INFO    ] 200
[2026-06-19 09:59:57,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 09:59:57,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 09:59:57,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 09:59:57,120.120 INFO    ] No camera update needed
[2026-06-19 09:59:57,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 09:59:57,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 09:59:57,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 09:59:57,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 09:59:59,177.177 INFO    ] ================================================
[2026-06-19 09:59:59,193.193 INFO    ] Launching Daemon at Fri Jun 19 09:59:59 IST 2026
[2026-06-19 09:59:59,205.205 INFO    ] ================================================
[2026-06-19 09:59:59,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 09:59:59
[2026-06-19 10:00:00,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:00:00,672.672 INFO    ] Initializing speech engine...
[2026-06-19 10:00:00,687.687 INFO    ] 2026-06-19 10:00:00
[2026-06-19 10:00:00,957.957 INFO    ] 2026-06-19 10:00:00
[2026-06-19 10:00:01,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:00:01,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:00:01,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:00:01,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:00:01,490.490 INFO    ] time= 19/06/2026 10:00:01
[2026-06-19 10:00:01,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:00:01,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:00:01,619.619 INFO    ] No existing commands found in stream
[2026-06-19 10:00:06,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:00:06,973.973 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 10:00:10,116.116 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:00:10,119.119 INFO    ] Checking for system updates...
[2026-06-19 10:00:10,160.160 INFO    ] 200
[2026-06-19 10:00:10,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:10,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:00:10,218.218 INFO    ] No update needed
[2026-06-19 10:00:10,220.220 INFO    ] Checking for camera pi updates...
[2026-06-19 10:00:10,255.255 INFO    ] 200
[2026-06-19 10:00:10,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:10,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:00:10,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:00:10,344.344 INFO    ] No camera update needed
[2026-06-19 10:00:10,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:00:10,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:00:10,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:00:10,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:00:12,402.402 INFO    ] ================================================
[2026-06-19 10:00:12,418.418 INFO    ] Launching Daemon at Fri Jun 19 10:00:12 IST 2026
[2026-06-19 10:00:12,429.429 INFO    ] ================================================
[2026-06-19 10:00:13,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:00:13
[2026-06-19 10:00:13,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:00:13,917.917 INFO    ] Initializing speech engine...
[2026-06-19 10:00:13,923.923 INFO    ] 2026-06-19 10:00:13
[2026-06-19 10:00:14,184.184 INFO    ] 2026-06-19 10:00:14
[2026-06-19 10:00:14,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:00:14,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:00:14,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:00:14,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:00:14,613.613 INFO    ] time= 19/06/2026 10:00:14
[2026-06-19 10:00:14,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:00:14,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:00:14,755.755 INFO    ] No existing commands found in stream
[2026-06-19 10:00:19,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:00:19,770.770 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 10:00:22,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:00:22,932.932 INFO    ] Checking for system updates...
[2026-06-19 10:00:22,968.968 INFO    ] 200
[2026-06-19 10:00:22,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:23,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:00:23,027.027 INFO    ] No update needed
[2026-06-19 10:00:23,029.029 INFO    ] Checking for camera pi updates...
[2026-06-19 10:00:23,064.064 INFO    ] 200
[2026-06-19 10:00:23,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:23,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:00:23,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:00:23,163.163 INFO    ] No camera update needed
[2026-06-19 10:00:23,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:00:23,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:00:23,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:00:23,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:00:25,222.222 INFO    ] ================================================
[2026-06-19 10:00:25,237.237 INFO    ] Launching Daemon at Fri Jun 19 10:00:25 IST 2026
[2026-06-19 10:00:25,248.248 INFO    ] ================================================
[2026-06-19 10:00:25,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:00:25
[2026-06-19 10:00:26,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:00:26,735.735 INFO    ] Initializing speech engine...
[2026-06-19 10:00:26,741.741 INFO    ] 2026-06-19 10:00:26
[2026-06-19 10:00:27,020.020 INFO    ] 2026-06-19 10:00:27
[2026-06-19 10:00:27,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:00:27,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:00:27,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:00:27,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:00:27,516.516 INFO    ] time= 19/06/2026 10:00:27
[2026-06-19 10:00:27,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:00:27,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:00:27,734.734 INFO    ] No existing commands found in stream
[2026-06-19 10:00:32,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:00:32,752.752 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 10:00:33,772.772 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:00:33,775.775 INFO    ] Checking for system updates...
[2026-06-19 10:00:33,811.811 INFO    ] 200
[2026-06-19 10:00:33,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:33,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:00:33,870.870 INFO    ] No update needed
[2026-06-19 10:00:33,872.872 INFO    ] Checking for camera pi updates...
[2026-06-19 10:00:33,908.908 INFO    ] 200
[2026-06-19 10:00:33,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:33,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:00:33,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:00:33,995.995 INFO    ] No camera update needed
[2026-06-19 10:00:33,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:00:34,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:00:34,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:00:34,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:00:36,049.049 INFO    ] ================================================
[2026-06-19 10:00:36,064.064 INFO    ] Launching Daemon at Fri Jun 19 10:00:36 IST 2026
[2026-06-19 10:00:36,075.075 INFO    ] ================================================
[2026-06-19 10:00:36,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:00:36
[2026-06-19 10:00:37,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:00:37,549.549 INFO    ] Initializing speech engine...
[2026-06-19 10:00:37,560.560 INFO    ] 2026-06-19 10:00:37
[2026-06-19 10:00:37,832.832 INFO    ] 2026-06-19 10:00:37
[2026-06-19 10:00:37,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:00:38,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:00:38,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:00:38,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:00:38,258.258 INFO    ] time= 19/06/2026 10:00:38
[2026-06-19 10:00:38,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:00:38,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:00:38,440.440 INFO    ] No existing commands found in stream
[2026-06-19 10:00:43,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:00:43,468.468 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 10:00:46,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:00:46,932.932 INFO    ] Checking for system updates...
[2026-06-19 10:00:46,972.972 INFO    ] 200
[2026-06-19 10:00:46,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:47,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:00:47,045.045 INFO    ] No update needed
[2026-06-19 10:00:47,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 10:00:47,096.096 INFO    ] 200
[2026-06-19 10:00:47,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:47,155.155 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:00:47,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:00:47,189.189 INFO    ] No camera update needed
[2026-06-19 10:00:47,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:00:47,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:00:47,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:00:47,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:00:49,248.248 INFO    ] ================================================
[2026-06-19 10:00:49,263.263 INFO    ] Launching Daemon at Fri Jun 19 10:00:49 IST 2026
[2026-06-19 10:00:49,274.274 INFO    ] ================================================
[2026-06-19 10:00:49,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:00:49
[2026-06-19 10:00:50,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:00:50,715.715 INFO    ] Initializing speech engine...
[2026-06-19 10:00:50,721.721 INFO    ] 2026-06-19 10:00:50
[2026-06-19 10:00:50,983.983 INFO    ] 2026-06-19 10:00:50
[2026-06-19 10:00:51,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:00:51,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:00:51,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:00:51,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:00:51,442.442 INFO    ] time= 19/06/2026 10:00:51
[2026-06-19 10:00:51,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:00:51,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:00:51,667.667 INFO    ] No existing commands found in stream
[2026-06-19 10:00:56,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:00:56,694.694 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 10:00:58,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:00:58,564.564 INFO    ] Checking for system updates...
[2026-06-19 10:00:58,600.600 INFO    ] 200
[2026-06-19 10:00:58,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:58,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:00:58,665.665 INFO    ] No update needed
[2026-06-19 10:00:58,668.668 INFO    ] Checking for camera pi updates...
[2026-06-19 10:00:58,702.702 INFO    ] 200
[2026-06-19 10:00:58,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:00:58,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:00:58,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:00:58,793.793 INFO    ] No camera update needed
[2026-06-19 10:00:58,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:00:58,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:00:58,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:00:58,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:01:00,853.853 INFO    ] ================================================
[2026-06-19 10:01:00,869.869 INFO    ] Launching Daemon at Fri Jun 19 10:01:00 IST 2026
[2026-06-19 10:01:00,880.880 INFO    ] ================================================
[2026-06-19 10:01:01,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:01:01
[2026-06-19 10:01:02,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:01:02,611.611 INFO    ] Initializing speech engine...
[2026-06-19 10:01:02,625.625 INFO    ] 2026-06-19 10:01:02
[2026-06-19 10:01:02,939.939 INFO    ] 2026-06-19 10:01:02
[2026-06-19 10:01:02,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:01:03,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:01:03,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:01:03,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:01:03,489.489 INFO    ] time= 19/06/2026 10:01:03
[2026-06-19 10:01:03,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:01:03,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:01:03,664.664 INFO    ] No existing commands found in stream
[2026-06-19 10:01:08,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:01:08,703.703 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 10:01:12,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:01:12,892.892 INFO    ] Checking for system updates...
[2026-06-19 10:01:12,929.929 INFO    ] 200
[2026-06-19 10:01:12,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:01:12,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:01:12,993.993 INFO    ] No update needed
[2026-06-19 10:01:12,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 10:01:13,029.029 INFO    ] 200
[2026-06-19 10:01:13,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:01:13,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:01:13,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:01:13,112.112 INFO    ] No camera update needed
[2026-06-19 10:01:13,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:01:13,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:01:13,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:01:13,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:01:15,169.169 INFO    ] ================================================
[2026-06-19 10:01:15,185.185 INFO    ] Launching Daemon at Fri Jun 19 10:01:15 IST 2026
[2026-06-19 10:01:15,197.197 INFO    ] ================================================
[2026-06-19 10:01:15,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:01:15
[2026-06-19 10:01:16,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:01:16,657.657 INFO    ] Initializing speech engine...
[2026-06-19 10:01:16,668.668 INFO    ] 2026-06-19 10:01:16
[2026-06-19 10:01:16,930.930 INFO    ] 2026-06-19 10:01:16
[2026-06-19 10:01:16,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:01:17,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:01:17,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:01:17,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:01:17,422.422 INFO    ] time= 19/06/2026 10:01:17
[2026-06-19 10:01:17,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:01:17,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:01:17,652.652 INFO    ] No existing commands found in stream
[2026-06-19 10:01:22,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:01:22,691.691 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 10:01:25,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:01:25,219.219 INFO    ] Checking for system updates...
[2026-06-19 10:01:25,255.255 INFO    ] 200
[2026-06-19 10:01:25,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:01:25,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:01:25,313.313 INFO    ] No update needed
[2026-06-19 10:01:25,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 10:01:25,349.349 INFO    ] 200
[2026-06-19 10:01:25,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:01:25,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:01:25,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:01:25,443.443 INFO    ] No camera update needed
[2026-06-19 10:01:25,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:01:25,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:01:25,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:01:25,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:01:27,503.503 INFO    ] ================================================
[2026-06-19 10:01:27,519.519 INFO    ] Launching Daemon at Fri Jun 19 10:01:27 IST 2026
[2026-06-19 10:01:27,530.530 INFO    ] ================================================
[2026-06-19 10:01:28,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:01:28
[2026-06-19 10:01:28,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:01:29,162.162 INFO    ] Initializing speech engine...
[2026-06-19 10:01:29,172.172 INFO    ] 2026-06-19 10:01:29
[2026-06-19 10:01:29,462.462 INFO    ] 2026-06-19 10:01:29
[2026-06-19 10:01:29,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:01:29,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:01:29,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:01:29,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:01:29,972.972 INFO    ] time= 19/06/2026 10:01:29
[2026-06-19 10:01:30,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:01:30,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:01:30,163.163 INFO    ] No existing commands found in stream
[2026-06-19 10:01:35,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:01:35,190.190 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 10:01:36,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:01:36,288.288 INFO    ] Checking for system updates...
[2026-06-19 10:01:36,330.330 INFO    ] 200
[2026-06-19 10:01:36,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:01:36,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:01:36,390.390 INFO    ] No update needed
[2026-06-19 10:01:36,393.393 INFO    ] Checking for camera pi updates...
[2026-06-19 10:01:36,428.428 INFO    ] 200
[2026-06-19 10:01:36,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:01:36,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:01:36,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:01:36,626.626 INFO    ] No camera update needed
[2026-06-19 10:01:36,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:01:36,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:01:36,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:01:36,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:01:38,686.686 INFO    ] ================================================
[2026-06-19 10:01:38,702.702 INFO    ] Launching Daemon at Fri Jun 19 10:01:38 IST 2026
[2026-06-19 10:01:38,714.714 INFO    ] ================================================
[2026-06-19 10:01:39,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:01:39
[2026-06-19 10:01:39,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:01:40,134.134 INFO    ] Initializing speech engine...
[2026-06-19 10:01:40,140.140 INFO    ] 2026-06-19 10:01:40
[2026-06-19 10:01:40,433.433 INFO    ] 2026-06-19 10:01:40
[2026-06-19 10:01:40,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:01:40,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:01:40,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:01:40,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:01:40,928.928 INFO    ] time= 19/06/2026 10:01:40
[2026-06-19 10:01:40,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:01:41,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:01:41,082.082 INFO    ] No existing commands found in stream
[2026-06-19 10:01:46,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:01:46,095.095 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 10:01:46,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:01:46,885.885 INFO    ] Checking for system updates...
[2026-06-19 10:01:46,924.924 INFO    ] 200
[2026-06-19 10:01:46,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:01:46,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:01:46,988.988 INFO    ] No update needed
[2026-06-19 10:01:46,990.990 INFO    ] Checking for camera pi updates...
[2026-06-19 10:01:47,031.031 INFO    ] 200
[2026-06-19 10:01:47,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:01:47,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:01:47,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:01:47,109.109 INFO    ] No camera update needed
[2026-06-19 10:01:47,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:01:47,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:01:47,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:01:47,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:01:49,171.171 INFO    ] ================================================
[2026-06-19 10:01:49,188.188 INFO    ] Launching Daemon at Fri Jun 19 10:01:49 IST 2026
[2026-06-19 10:01:49,200.200 INFO    ] ================================================
[2026-06-19 10:01:49,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:01:49
[2026-06-19 10:01:50,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:01:50,745.745 INFO    ] Initializing speech engine...
[2026-06-19 10:01:50,752.752 INFO    ] 2026-06-19 10:01:50
[2026-06-19 10:01:51,002.002 INFO    ] 2026-06-19 10:01:50
[2026-06-19 10:01:51,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:01:51,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:01:51,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:01:51,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:01:51,490.490 INFO    ] time= 19/06/2026 10:01:51
[2026-06-19 10:01:51,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:01:51,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:01:51,655.655 INFO    ] No existing commands found in stream
[2026-06-19 10:01:56,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:01:56,695.695 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 10:01:59,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:01:59,958.958 INFO    ] Checking for system updates...
[2026-06-19 10:01:59,995.995 INFO    ] 200
[2026-06-19 10:01:59,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:00,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:02:00,052.052 INFO    ] No update needed
[2026-06-19 10:02:00,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 10:02:00,093.093 INFO    ] 200
[2026-06-19 10:02:00,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:00,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:02:00,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:02:00,184.184 INFO    ] No camera update needed
[2026-06-19 10:02:00,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:02:00,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:02:00,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:02:00,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:02:02,243.243 INFO    ] ================================================
[2026-06-19 10:02:02,266.266 INFO    ] Launching Daemon at Fri Jun 19 10:02:02 IST 2026
[2026-06-19 10:02:02,279.279 INFO    ] ================================================
[2026-06-19 10:02:02,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:02:02
[2026-06-19 10:02:03,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:02:03,891.891 INFO    ] Initializing speech engine...
[2026-06-19 10:02:03,909.909 INFO    ] 2026-06-19 10:02:03
[2026-06-19 10:02:04,165.165 INFO    ] 2026-06-19 10:02:04
[2026-06-19 10:02:04,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:02:04,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:02:04,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:02:04,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:02:04,626.626 INFO    ] time= 19/06/2026 10:02:04
[2026-06-19 10:02:04,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:02:04,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:02:04,872.872 INFO    ] No existing commands found in stream
[2026-06-19 10:02:09,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:02:09,904.904 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 10:02:10,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:02:10,382.382 INFO    ] Checking for system updates...
[2026-06-19 10:02:10,420.420 INFO    ] 200
[2026-06-19 10:02:10,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:10,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:02:10,486.486 INFO    ] No update needed
[2026-06-19 10:02:10,489.489 INFO    ] Checking for camera pi updates...
[2026-06-19 10:02:10,527.527 INFO    ] 200
[2026-06-19 10:02:10,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:10,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:02:10,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:02:10,618.618 INFO    ] No camera update needed
[2026-06-19 10:02:10,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:02:10,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:02:10,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:02:10,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:02:12,673.673 INFO    ] ================================================
[2026-06-19 10:02:12,688.688 INFO    ] Launching Daemon at Fri Jun 19 10:02:12 IST 2026
[2026-06-19 10:02:12,699.699 INFO    ] ================================================
[2026-06-19 10:02:13,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:02:13
[2026-06-19 10:02:13,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:02:14,164.164 INFO    ] Initializing speech engine...
[2026-06-19 10:02:14,174.174 INFO    ] 2026-06-19 10:02:14
[2026-06-19 10:02:14,424.424 INFO    ] 2026-06-19 10:02:14
[2026-06-19 10:02:14,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:02:14,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:02:14,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:02:14,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:02:14,930.930 INFO    ] time= 19/06/2026 10:02:14
[2026-06-19 10:02:14,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:02:14,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:02:15,128.128 INFO    ] No existing commands found in stream
[2026-06-19 10:02:20,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:02:20,156.156 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 10:02:22,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:02:22,159.159 INFO    ] Checking for system updates...
[2026-06-19 10:02:22,197.197 INFO    ] 200
[2026-06-19 10:02:22,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:22,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:02:22,264.264 INFO    ] No update needed
[2026-06-19 10:02:22,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 10:02:22,302.302 INFO    ] 200
[2026-06-19 10:02:22,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:22,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:02:22,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:02:22,392.392 INFO    ] No camera update needed
[2026-06-19 10:02:22,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:02:22,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:02:22,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:02:22,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:02:24,452.452 INFO    ] ================================================
[2026-06-19 10:02:24,466.466 INFO    ] Launching Daemon at Fri Jun 19 10:02:24 IST 2026
[2026-06-19 10:02:24,477.477 INFO    ] ================================================
[2026-06-19 10:02:25,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:02:25
[2026-06-19 10:02:25,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:02:26,034.034 INFO    ] Initializing speech engine...
[2026-06-19 10:02:26,049.049 INFO    ] 2026-06-19 10:02:26
[2026-06-19 10:02:26,333.333 INFO    ] 2026-06-19 10:02:26
[2026-06-19 10:02:26,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:02:26,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:02:26,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:02:26,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:02:26,887.887 INFO    ] time= 19/06/2026 10:02:26
[2026-06-19 10:02:26,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:02:26,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:02:27,008.008 INFO    ] No existing commands found in stream
[2026-06-19 10:02:32,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:02:32,022.022 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 10:02:35,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:02:35,661.661 INFO    ] Checking for system updates...
[2026-06-19 10:02:35,762.762 INFO    ] 200
[2026-06-19 10:02:35,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:35,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:02:35,831.831 INFO    ] No update needed
[2026-06-19 10:02:35,833.833 INFO    ] Checking for camera pi updates...
[2026-06-19 10:02:35,874.874 INFO    ] 200
[2026-06-19 10:02:35,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:35,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:02:35,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:02:35,970.970 INFO    ] No camera update needed
[2026-06-19 10:02:35,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:02:35,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:02:35,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:02:35,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:02:38,030.030 INFO    ] ================================================
[2026-06-19 10:02:38,045.045 INFO    ] Launching Daemon at Fri Jun 19 10:02:38 IST 2026
[2026-06-19 10:02:38,056.056 INFO    ] ================================================
[2026-06-19 10:02:38,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:02:38
[2026-06-19 10:02:39,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:02:39,482.482 INFO    ] Initializing speech engine...
[2026-06-19 10:02:39,491.491 INFO    ] 2026-06-19 10:02:39
[2026-06-19 10:02:39,738.738 INFO    ] 2026-06-19 10:02:39
[2026-06-19 10:02:39,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:02:40,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:02:40,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:02:40,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:02:40,244.244 INFO    ] time= 19/06/2026 10:02:40
[2026-06-19 10:02:40,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:02:40,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:02:40,448.448 INFO    ] No existing commands found in stream
[2026-06-19 10:02:45,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:02:45,464.464 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 10:02:48,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:02:48,736.736 INFO    ] Checking for system updates...
[2026-06-19 10:02:48,773.773 INFO    ] 200
[2026-06-19 10:02:48,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:48,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:02:48,839.839 INFO    ] No update needed
[2026-06-19 10:02:48,842.842 INFO    ] Checking for camera pi updates...
[2026-06-19 10:02:48,880.880 INFO    ] 200
[2026-06-19 10:02:48,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:02:48,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:02:48,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:02:48,957.957 INFO    ] No camera update needed
[2026-06-19 10:02:48,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:02:48,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:02:48,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:02:48,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:02:51,015.015 INFO    ] ================================================
[2026-06-19 10:02:51,031.031 INFO    ] Launching Daemon at Fri Jun 19 10:02:51 IST 2026
[2026-06-19 10:02:51,042.042 INFO    ] ================================================
[2026-06-19 10:02:51,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:02:51
[2026-06-19 10:02:52,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:02:52,653.653 INFO    ] Initializing speech engine...
[2026-06-19 10:02:52,666.666 INFO    ] 2026-06-19 10:02:52
[2026-06-19 10:02:52,978.978 INFO    ] 2026-06-19 10:02:52
[2026-06-19 10:02:53,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:02:53,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:02:53,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:02:53,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:02:53,499.499 INFO    ] time= 19/06/2026 10:02:53
[2026-06-19 10:02:53,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:02:53,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:02:53,637.637 INFO    ] No existing commands found in stream
[2026-06-19 10:02:58,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:02:58,657.657 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 10:03:01,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:03:01,475.475 INFO    ] Checking for system updates...
[2026-06-19 10:03:01,514.514 INFO    ] 200
[2026-06-19 10:03:01,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:01,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:03:01,589.589 INFO    ] No update needed
[2026-06-19 10:03:01,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 10:03:01,627.627 INFO    ] 200
[2026-06-19 10:03:01,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:01,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:03:01,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:03:01,706.706 INFO    ] No camera update needed
[2026-06-19 10:03:01,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:03:01,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:03:01,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:03:01,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:03:03,767.767 INFO    ] ================================================
[2026-06-19 10:03:03,782.782 INFO    ] Launching Daemon at Fri Jun 19 10:03:03 IST 2026
[2026-06-19 10:03:03,792.792 INFO    ] ================================================
[2026-06-19 10:03:04,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:03:04
[2026-06-19 10:03:04,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:03:05,215.215 INFO    ] Initializing speech engine...
[2026-06-19 10:03:05,224.224 INFO    ] 2026-06-19 10:03:05
[2026-06-19 10:03:05,470.470 INFO    ] 2026-06-19 10:03:05
[2026-06-19 10:03:05,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:03:05,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:03:05,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:03:05,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:03:05,945.945 INFO    ] time= 19/06/2026 10:03:05
[2026-06-19 10:03:05,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:03:06,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:03:06,165.165 INFO    ] No existing commands found in stream
[2026-06-19 10:03:11,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:03:11,192.192 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 10:03:14,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:03:14,132.132 INFO    ] Checking for system updates...
[2026-06-19 10:03:14,168.168 INFO    ] 200
[2026-06-19 10:03:14,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:14,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:03:14,228.228 INFO    ] No update needed
[2026-06-19 10:03:14,231.231 INFO    ] Checking for camera pi updates...
[2026-06-19 10:03:14,266.266 INFO    ] 200
[2026-06-19 10:03:14,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:14,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:03:14,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:03:14,356.356 INFO    ] No camera update needed
[2026-06-19 10:03:14,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:03:14,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:03:14,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:03:14,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:03:16,411.411 INFO    ] ================================================
[2026-06-19 10:03:16,426.426 INFO    ] Launching Daemon at Fri Jun 19 10:03:16 IST 2026
[2026-06-19 10:03:16,437.437 INFO    ] ================================================
[2026-06-19 10:03:17,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:03:17
[2026-06-19 10:03:17,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:03:17,852.852 INFO    ] Initializing speech engine...
[2026-06-19 10:03:17,871.871 INFO    ] 2026-06-19 10:03:17
[2026-06-19 10:03:18,119.119 INFO    ] 2026-06-19 10:03:18
[2026-06-19 10:03:18,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:03:18,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:03:18,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:03:18,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:03:18,613.613 INFO    ] time= 19/06/2026 10:03:18
[2026-06-19 10:03:18,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:03:18,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:03:18,807.807 INFO    ] No existing commands found in stream
[2026-06-19 10:03:23,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:03:23,835.835 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 10:03:25,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:03:25,320.320 INFO    ] Checking for system updates...
[2026-06-19 10:03:25,360.360 INFO    ] 200
[2026-06-19 10:03:25,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:25,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:03:25,418.418 INFO    ] No update needed
[2026-06-19 10:03:25,420.420 INFO    ] Checking for camera pi updates...
[2026-06-19 10:03:25,454.454 INFO    ] 200
[2026-06-19 10:03:25,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:25,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:03:25,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:03:25,539.539 INFO    ] No camera update needed
[2026-06-19 10:03:25,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:03:25,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:03:25,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:03:25,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:03:27,596.596 INFO    ] ================================================
[2026-06-19 10:03:27,612.612 INFO    ] Launching Daemon at Fri Jun 19 10:03:27 IST 2026
[2026-06-19 10:03:27,622.622 INFO    ] ================================================
[2026-06-19 10:03:28,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:03:28
[2026-06-19 10:03:28,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:03:29,023.023 INFO    ] Initializing speech engine...
[2026-06-19 10:03:29,045.045 INFO    ] 2026-06-19 10:03:29
[2026-06-19 10:03:29,297.297 INFO    ] 2026-06-19 10:03:29
[2026-06-19 10:03:29,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:03:29,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:03:29,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:03:29,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:03:29,773.773 INFO    ] time= 19/06/2026 10:03:29
[2026-06-19 10:03:29,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:03:29,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:03:29,975.975 INFO    ] No existing commands found in stream
[2026-06-19 10:03:34,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:03:35,000.000 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 10:03:37,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:03:37,992.992 INFO    ] Checking for system updates...
[2026-06-19 10:03:38,028.028 INFO    ] 200
[2026-06-19 10:03:38,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:38,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:03:38,093.093 INFO    ] No update needed
[2026-06-19 10:03:38,096.096 INFO    ] Checking for camera pi updates...
[2026-06-19 10:03:38,130.130 INFO    ] 200
[2026-06-19 10:03:38,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:38,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:03:38,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:03:38,327.327 INFO    ] No camera update needed
[2026-06-19 10:03:38,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:03:38,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:03:38,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:03:38,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:03:40,384.384 INFO    ] ================================================
[2026-06-19 10:03:40,400.400 INFO    ] Launching Daemon at Fri Jun 19 10:03:40 IST 2026
[2026-06-19 10:03:40,411.411 INFO    ] ================================================
[2026-06-19 10:03:40,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:03:40
[2026-06-19 10:03:41,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:03:41,827.827 INFO    ] Initializing speech engine...
[2026-06-19 10:03:41,840.840 INFO    ] 2026-06-19 10:03:41
[2026-06-19 10:03:42,107.107 INFO    ] 2026-06-19 10:03:42
[2026-06-19 10:03:42,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:03:42,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:03:42,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:03:42,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:03:42,587.587 INFO    ] time= 19/06/2026 10:03:42
[2026-06-19 10:03:42,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:03:42,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:03:42,837.837 INFO    ] No existing commands found in stream
[2026-06-19 10:03:47,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:03:47,856.856 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 10:03:50,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:03:50,074.074 INFO    ] Checking for system updates...
[2026-06-19 10:03:50,116.116 INFO    ] 200
[2026-06-19 10:03:50,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:50,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:03:50,181.181 INFO    ] No update needed
[2026-06-19 10:03:50,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 10:03:50,228.228 INFO    ] 200
[2026-06-19 10:03:50,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:03:50,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:03:50,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:03:50,318.318 INFO    ] No camera update needed
[2026-06-19 10:03:50,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:03:50,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:03:50,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:03:50,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:03:52,372.372 INFO    ] ================================================
[2026-06-19 10:03:52,388.388 INFO    ] Launching Daemon at Fri Jun 19 10:03:52 IST 2026
[2026-06-19 10:03:52,398.398 INFO    ] ================================================
[2026-06-19 10:03:53,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:03:53
[2026-06-19 10:03:53,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:03:54,055.055 INFO    ] Initializing speech engine...
[2026-06-19 10:03:54,067.067 INFO    ] 2026-06-19 10:03:54
[2026-06-19 10:03:54,380.380 INFO    ] 2026-06-19 10:03:54
[2026-06-19 10:03:54,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:03:54,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:03:54,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:03:54,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:03:54,902.902 INFO    ] time= 19/06/2026 10:03:54
[2026-06-19 10:03:54,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:03:54,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:03:55,065.065 INFO    ] No existing commands found in stream
[2026-06-19 10:04:00,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:04:00,103.103 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 10:04:03,726.726 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:04:03,728.728 INFO    ] Checking for system updates...
[2026-06-19 10:04:03,787.787 INFO    ] 200
[2026-06-19 10:04:03,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 10:04:03,793.793 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 10:04:03,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 10:04:03,857.857 INFO    ] 200
[2026-06-19 10:04:03,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:04:03,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:04:03,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:04:03,953.953 INFO    ] No camera update needed
[2026-06-19 10:04:03,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:04:03,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:04:03,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:04:03,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:04:06,009.009 INFO    ] ================================================
[2026-06-19 10:04:06,026.026 INFO    ] Launching Daemon at Fri Jun 19 10:04:06 IST 2026
[2026-06-19 10:04:06,037.037 INFO    ] ================================================
[2026-06-19 10:04:06,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:04:06
[2026-06-19 10:04:07,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:04:07,492.492 INFO    ] Initializing speech engine...
[2026-06-19 10:04:07,501.501 INFO    ] 2026-06-19 10:04:07
[2026-06-19 10:04:07,753.753 INFO    ] 2026-06-19 10:04:07
[2026-06-19 10:04:07,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:04:07,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:04:08,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:04:08,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:04:08,261.261 INFO    ] time= 19/06/2026 10:04:08
[2026-06-19 10:04:08,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:04:08,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:04:08,454.454 INFO    ] No existing commands found in stream
[2026-06-19 10:04:13,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:04:13,490.490 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 10:04:17,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:04:17,705.705 INFO    ] Checking for system updates...
[2026-06-19 10:04:17,741.741 INFO    ] 200
[2026-06-19 10:04:17,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:04:17,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:04:17,806.806 INFO    ] No update needed
[2026-06-19 10:04:17,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 10:04:17,842.842 INFO    ] 200
[2026-06-19 10:04:17,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:04:17,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:04:17,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:04:17,932.932 INFO    ] No camera update needed
[2026-06-19 10:04:17,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:04:17,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:04:17,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:04:17,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:04:19,991.991 INFO    ] ================================================
[2026-06-19 10:04:20,006.006 INFO    ] Launching Daemon at Fri Jun 19 10:04:20 IST 2026
[2026-06-19 10:04:20,017.017 INFO    ] ================================================
[2026-06-19 10:04:20,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:04:20
[2026-06-19 10:04:21,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:04:21,511.511 INFO    ] Initializing speech engine...
[2026-06-19 10:04:21,519.519 INFO    ] 2026-06-19 10:04:21
[2026-06-19 10:04:21,797.797 INFO    ] 2026-06-19 10:04:21
[2026-06-19 10:04:21,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:04:22,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:04:22,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:04:22,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:04:22,327.327 INFO    ] time= 19/06/2026 10:04:22
[2026-06-19 10:04:22,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:04:22,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:04:22,483.483 INFO    ] No existing commands found in stream
[2026-06-19 10:04:27,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:04:27,501.501 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 10:04:31,525.525 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:04:31,528.528 INFO    ] Checking for system updates...
[2026-06-19 10:04:31,564.564 INFO    ] 200
[2026-06-19 10:04:31,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:04:31,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:04:31,628.628 INFO    ] No update needed
[2026-06-19 10:04:31,631.631 INFO    ] Checking for camera pi updates...
[2026-06-19 10:04:31,665.665 INFO    ] 200
[2026-06-19 10:04:31,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:04:31,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:04:31,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:04:31,755.755 INFO    ] No camera update needed
[2026-06-19 10:04:31,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:04:31,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:04:31,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:04:31,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:04:33,817.817 INFO    ] ================================================
[2026-06-19 10:04:33,832.832 INFO    ] Launching Daemon at Fri Jun 19 10:04:33 IST 2026
[2026-06-19 10:04:33,842.842 INFO    ] ================================================
[2026-06-19 10:04:34,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:04:34
[2026-06-19 10:04:35,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:04:35,290.290 INFO    ] Initializing speech engine...
[2026-06-19 10:04:35,297.297 INFO    ] 2026-06-19 10:04:35
[2026-06-19 10:04:35,560.560 INFO    ] 2026-06-19 10:04:35
[2026-06-19 10:04:35,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:04:35,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:04:35,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:04:35,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:04:36,039.039 INFO    ] time= 19/06/2026 10:04:35
[2026-06-19 10:04:36,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:04:36,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:04:36,250.250 INFO    ] No existing commands found in stream
[2026-06-19 10:04:41,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:04:41,281.281 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 10:04:44,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:04:44,352.352 INFO    ] Checking for system updates...
[2026-06-19 10:04:44,388.388 INFO    ] 200
[2026-06-19 10:04:44,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:04:44,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:04:44,455.455 INFO    ] No update needed
[2026-06-19 10:04:44,458.458 INFO    ] Checking for camera pi updates...
[2026-06-19 10:04:44,496.496 INFO    ] 200
[2026-06-19 10:04:44,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:04:44,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:04:44,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:04:44,599.599 INFO    ] No camera update needed
[2026-06-19 10:04:44,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:04:44,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:04:44,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:04:44,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:04:46,654.654 INFO    ] ================================================
[2026-06-19 10:04:46,670.670 INFO    ] Launching Daemon at Fri Jun 19 10:04:46 IST 2026
[2026-06-19 10:04:46,681.681 INFO    ] ================================================
[2026-06-19 10:04:47,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:04:47
[2026-06-19 10:04:47,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:04:48,141.141 INFO    ] Initializing speech engine...
[2026-06-19 10:04:48,149.149 INFO    ] 2026-06-19 10:04:48
[2026-06-19 10:04:48,409.409 INFO    ] 2026-06-19 10:04:48
[2026-06-19 10:04:48,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:04:48,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:04:48,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:04:48,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:04:48,902.902 INFO    ] time= 19/06/2026 10:04:48
[2026-06-19 10:04:48,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:04:48,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:04:49,103.103 INFO    ] No existing commands found in stream
[2026-06-19 10:04:54,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:04:54,120.120 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 10:04:57,066.066 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:04:57,069.069 INFO    ] Checking for system updates...
[2026-06-19 10:04:57,125.125 INFO    ] 200
[2026-06-19 10:04:57,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:04:57,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:04:57,182.182 INFO    ] No update needed
[2026-06-19 10:04:57,185.185 INFO    ] Checking for camera pi updates...
[2026-06-19 10:04:57,223.223 INFO    ] 200
[2026-06-19 10:04:57,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:04:57,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:04:57,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:04:57,319.319 INFO    ] No camera update needed
[2026-06-19 10:04:57,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:04:57,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:04:57,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:04:57,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:04:59,379.379 INFO    ] ================================================
[2026-06-19 10:04:59,395.395 INFO    ] Launching Daemon at Fri Jun 19 10:04:59 IST 2026
[2026-06-19 10:04:59,406.406 INFO    ] ================================================
[2026-06-19 10:05:00,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:05:00
[2026-06-19 10:05:00,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:05:01,058.058 INFO    ] Initializing speech engine...
[2026-06-19 10:05:01,071.071 INFO    ] 2026-06-19 10:05:01
[2026-06-19 10:05:01,352.352 INFO    ] 2026-06-19 10:05:01
[2026-06-19 10:05:01,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:05:01,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:05:01,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:05:01,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:05:01,902.902 INFO    ] time= 19/06/2026 10:05:01
[2026-06-19 10:05:01,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:05:01,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:05:02,081.081 INFO    ] No existing commands found in stream
[2026-06-19 10:05:07,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:05:07,099.099 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 10:05:08,295.295 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:05:08,298.298 INFO    ] Checking for system updates...
[2026-06-19 10:05:08,335.335 INFO    ] 200
[2026-06-19 10:05:08,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:08,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:05:08,393.393 INFO    ] No update needed
[2026-06-19 10:05:08,396.396 INFO    ] Checking for camera pi updates...
[2026-06-19 10:05:08,431.431 INFO    ] 200
[2026-06-19 10:05:08,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:08,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:05:08,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:05:08,525.525 INFO    ] No camera update needed
[2026-06-19 10:05:08,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:05:08,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:05:08,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:05:08,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:05:10,584.584 INFO    ] ================================================
[2026-06-19 10:05:10,600.600 INFO    ] Launching Daemon at Fri Jun 19 10:05:10 IST 2026
[2026-06-19 10:05:10,611.611 INFO    ] ================================================
[2026-06-19 10:05:11,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:05:11
[2026-06-19 10:05:11,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:05:12,044.044 INFO    ] Initializing speech engine...
[2026-06-19 10:05:12,053.053 INFO    ] 2026-06-19 10:05:12
[2026-06-19 10:05:12,322.322 INFO    ] 2026-06-19 10:05:12
[2026-06-19 10:05:12,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:05:12,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:05:12,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:05:12,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:05:12,734.734 INFO    ] time= 19/06/2026 10:05:12
[2026-06-19 10:05:12,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:05:12,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:05:12,823.823 INFO    ] No existing commands found in stream
[2026-06-19 10:05:17,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:05:17,839.839 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 10:05:20,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:05:20,417.417 INFO    ] Checking for system updates...
[2026-06-19 10:05:20,456.456 INFO    ] 200
[2026-06-19 10:05:20,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:20,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:05:20,513.513 INFO    ] No update needed
[2026-06-19 10:05:20,516.516 INFO    ] Checking for camera pi updates...
[2026-06-19 10:05:20,553.553 INFO    ] 200
[2026-06-19 10:05:20,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:20,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:05:20,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:05:20,647.647 INFO    ] No camera update needed
[2026-06-19 10:05:20,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:05:20,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:05:20,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:05:20,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:05:22,705.705 INFO    ] ================================================
[2026-06-19 10:05:22,720.720 INFO    ] Launching Daemon at Fri Jun 19 10:05:22 IST 2026
[2026-06-19 10:05:22,731.731 INFO    ] ================================================
[2026-06-19 10:05:23,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:05:23
[2026-06-19 10:05:23,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:05:24,158.158 INFO    ] Initializing speech engine...
[2026-06-19 10:05:24,163.163 INFO    ] 2026-06-19 10:05:24
[2026-06-19 10:05:24,410.410 INFO    ] 2026-06-19 10:05:24
[2026-06-19 10:05:24,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:05:24,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:05:24,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:05:24,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:05:24,878.878 INFO    ] time= 19/06/2026 10:05:24
[2026-06-19 10:05:24,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:05:24,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:05:25,142.142 INFO    ] No existing commands found in stream
[2026-06-19 10:05:30,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:05:30,180.180 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 10:05:34,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:05:34,235.235 INFO    ] Checking for system updates...
[2026-06-19 10:05:34,274.274 INFO    ] 200
[2026-06-19 10:05:34,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:34,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:05:34,332.332 INFO    ] No update needed
[2026-06-19 10:05:34,334.334 INFO    ] Checking for camera pi updates...
[2026-06-19 10:05:34,367.367 INFO    ] 200
[2026-06-19 10:05:34,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:34,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:05:34,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:05:34,462.462 INFO    ] No camera update needed
[2026-06-19 10:05:34,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:05:34,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:05:34,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:05:34,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:05:36,517.517 INFO    ] ================================================
[2026-06-19 10:05:36,532.532 INFO    ] Launching Daemon at Fri Jun 19 10:05:36 IST 2026
[2026-06-19 10:05:36,543.543 INFO    ] ================================================
[2026-06-19 10:05:37,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:05:37
[2026-06-19 10:05:37,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:05:37,990.990 INFO    ] Initializing speech engine...
[2026-06-19 10:05:37,999.999 INFO    ] 2026-06-19 10:05:37
[2026-06-19 10:05:38,256.256 INFO    ] 2026-06-19 10:05:38
[2026-06-19 10:05:38,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:05:38,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:05:38,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:05:38,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:05:38,753.753 INFO    ] time= 19/06/2026 10:05:38
[2026-06-19 10:05:38,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:05:38,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:05:38,952.952 INFO    ] No existing commands found in stream
[2026-06-19 10:05:43,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:05:43,970.970 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 10:05:45,944.944 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:05:45,947.947 INFO    ] Checking for system updates...
[2026-06-19 10:05:45,982.982 INFO    ] 200
[2026-06-19 10:05:45,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:46,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:05:46,040.040 INFO    ] No update needed
[2026-06-19 10:05:46,042.042 INFO    ] Checking for camera pi updates...
[2026-06-19 10:05:46,076.076 INFO    ] 200
[2026-06-19 10:05:46,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:46,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:05:46,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:05:46,266.266 INFO    ] No camera update needed
[2026-06-19 10:05:46,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:05:46,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:05:46,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:05:46,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:05:48,325.325 INFO    ] ================================================
[2026-06-19 10:05:48,340.340 INFO    ] Launching Daemon at Fri Jun 19 10:05:48 IST 2026
[2026-06-19 10:05:48,352.352 INFO    ] ================================================
[2026-06-19 10:05:48,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:05:48
[2026-06-19 10:05:49,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:05:49,756.756 INFO    ] Initializing speech engine...
[2026-06-19 10:05:49,771.771 INFO    ] 2026-06-19 10:05:49
[2026-06-19 10:05:50,037.037 INFO    ] 2026-06-19 10:05:50
[2026-06-19 10:05:50,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:05:50,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:05:50,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:05:50,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:05:50,539.539 INFO    ] time= 19/06/2026 10:05:50
[2026-06-19 10:05:50,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:05:50,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:05:50,751.751 INFO    ] No existing commands found in stream
[2026-06-19 10:05:55,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:05:55,777.777 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 10:05:58,484.484 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:05:58,487.487 INFO    ] Checking for system updates...
[2026-06-19 10:05:58,526.526 INFO    ] 200
[2026-06-19 10:05:58,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:58,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:05:58,590.590 INFO    ] No update needed
[2026-06-19 10:05:58,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 10:05:58,627.627 INFO    ] 200
[2026-06-19 10:05:58,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:05:58,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:05:58,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:05:58,721.721 INFO    ] No camera update needed
[2026-06-19 10:05:58,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:05:58,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:05:58,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:05:58,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:06:00,780.780 INFO    ] ================================================
[2026-06-19 10:06:00,796.796 INFO    ] Launching Daemon at Fri Jun 19 10:06:00 IST 2026
[2026-06-19 10:06:00,807.807 INFO    ] ================================================
[2026-06-19 10:06:01,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:06:01
[2026-06-19 10:06:01,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:06:02,530.530 INFO    ] Initializing speech engine...
[2026-06-19 10:06:02,538.538 INFO    ] 2026-06-19 10:06:02
[2026-06-19 10:06:02,918.918 INFO    ] 2026-06-19 10:06:02
[2026-06-19 10:06:02,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:06:03,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:06:03,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:06:03,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:06:03,384.384 INFO    ] time= 19/06/2026 10:06:03
[2026-06-19 10:06:03,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:06:03,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:06:03,559.559 INFO    ] No existing commands found in stream
[2026-06-19 10:06:08,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:06:08,583.583 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 10:06:10,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:06:10,467.467 INFO    ] Checking for system updates...
[2026-06-19 10:06:10,503.503 INFO    ] 200
[2026-06-19 10:06:10,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:06:10,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:06:10,565.565 INFO    ] No update needed
[2026-06-19 10:06:10,568.568 INFO    ] Checking for camera pi updates...
[2026-06-19 10:06:10,603.603 INFO    ] 200
[2026-06-19 10:06:10,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:06:10,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:06:10,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:06:10,688.688 INFO    ] No camera update needed
[2026-06-19 10:06:10,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:06:10,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:06:10,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:06:10,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:06:12,742.742 INFO    ] ================================================
[2026-06-19 10:06:12,758.758 INFO    ] Launching Daemon at Fri Jun 19 10:06:12 IST 2026
[2026-06-19 10:06:12,769.769 INFO    ] ================================================
[2026-06-19 10:06:13,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:06:13
[2026-06-19 10:06:13,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:06:14,197.197 INFO    ] Initializing speech engine...
[2026-06-19 10:06:14,206.206 INFO    ] 2026-06-19 10:06:14
[2026-06-19 10:06:14,470.470 INFO    ] 2026-06-19 10:06:14
[2026-06-19 10:06:14,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:06:14,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:06:14,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:06:14,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:06:15,023.023 INFO    ] time= 19/06/2026 10:06:15
[2026-06-19 10:06:15,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:06:15,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:06:15,174.174 INFO    ] No existing commands found in stream
[2026-06-19 10:06:20,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:06:20,194.194 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 10:06:23,109.109 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:06:23,111.111 INFO    ] Checking for system updates...
[2026-06-19 10:06:23,147.147 INFO    ] 200
[2026-06-19 10:06:23,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:06:23,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:06:23,207.207 INFO    ] No update needed
[2026-06-19 10:06:23,210.210 INFO    ] Checking for camera pi updates...
[2026-06-19 10:06:23,243.243 INFO    ] 200
[2026-06-19 10:06:23,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:06:23,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:06:23,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:06:23,344.344 INFO    ] No camera update needed
[2026-06-19 10:06:23,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:06:23,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:06:23,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:06:23,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:06:25,401.401 INFO    ] ================================================
[2026-06-19 10:06:25,417.417 INFO    ] Launching Daemon at Fri Jun 19 10:06:25 IST 2026
[2026-06-19 10:06:25,429.429 INFO    ] ================================================
[2026-06-19 10:06:26,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:06:26
[2026-06-19 10:06:26,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:06:26,896.896 INFO    ] Initializing speech engine...
[2026-06-19 10:06:26,905.905 INFO    ] 2026-06-19 10:06:26
[2026-06-19 10:06:27,154.154 INFO    ] 2026-06-19 10:06:27
[2026-06-19 10:06:27,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:06:27,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:06:27,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:06:27,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:06:27,638.638 INFO    ] time= 19/06/2026 10:06:27
[2026-06-19 10:06:27,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:06:27,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:06:27,863.863 INFO    ] No existing commands found in stream
[2026-06-19 10:06:32,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:06:32,882.882 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-19 10:06:35,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:06:35,408.408 INFO    ] Checking for system updates...
[2026-06-19 10:06:35,448.448 INFO    ] 200
[2026-06-19 10:06:35,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:06:35,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:06:35,506.506 INFO    ] No update needed
[2026-06-19 10:06:35,508.508 INFO    ] Checking for camera pi updates...
[2026-06-19 10:06:35,542.542 INFO    ] 200
[2026-06-19 10:06:35,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:06:35,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:06:35,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:06:35,631.631 INFO    ] No camera update needed
[2026-06-19 10:06:35,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:06:35,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:06:35,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:06:35,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:06:37,688.688 INFO    ] ================================================
[2026-06-19 10:06:37,704.704 INFO    ] Launching Daemon at Fri Jun 19 10:06:37 IST 2026
[2026-06-19 10:06:37,715.715 INFO    ] ================================================
[2026-06-19 10:06:38,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:06:38
[2026-06-19 10:06:38,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:06:39,191.191 INFO    ] Initializing speech engine...
[2026-06-19 10:06:39,198.198 INFO    ] 2026-06-19 10:06:39
[2026-06-19 10:06:39,461.461 INFO    ] 2026-06-19 10:06:39
[2026-06-19 10:06:39,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:06:39,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:06:39,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:06:39,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:06:40,005.005 INFO    ] time= 19/06/2026 10:06:39
[2026-06-19 10:06:40,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:06:40,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:06:40,145.145 INFO    ] No existing commands found in stream
[2026-06-19 10:06:45,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:06:45,172.172 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 10:06:49,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:06:49,330.330 INFO    ] Checking for system updates...
[2026-06-19 10:06:49,371.371 INFO    ] 200
[2026-06-19 10:06:49,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:06:49,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:06:49,429.429 INFO    ] No update needed
[2026-06-19 10:06:49,431.431 INFO    ] Checking for camera pi updates...
[2026-06-19 10:06:49,465.465 INFO    ] 200
[2026-06-19 10:06:49,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:06:49,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:06:49,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:06:49,539.539 INFO    ] No camera update needed
[2026-06-19 10:06:49,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:06:49,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:06:49,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:06:49,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:06:51,596.596 INFO    ] ================================================
[2026-06-19 10:06:51,612.612 INFO    ] Launching Daemon at Fri Jun 19 10:06:51 IST 2026
[2026-06-19 10:06:51,624.624 INFO    ] ================================================
[2026-06-19 10:06:52,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:06:52
[2026-06-19 10:06:52,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:06:53,280.280 INFO    ] Initializing speech engine...
[2026-06-19 10:06:53,288.288 INFO    ] 2026-06-19 10:06:53
[2026-06-19 10:06:53,562.562 INFO    ] 2026-06-19 10:06:53
[2026-06-19 10:06:53,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:06:53,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:06:53,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:06:53,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:06:54,054.054 INFO    ] time= 19/06/2026 10:06:54
[2026-06-19 10:06:54,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:06:54,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:06:54,272.272 INFO    ] No existing commands found in stream
[2026-06-19 10:06:59,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:06:59,299.299 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 10:06:59,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:06:59,947.947 INFO    ] Checking for system updates...
[2026-06-19 10:06:59,985.985 INFO    ] 200
[2026-06-19 10:06:59,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:00,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:07:00,047.047 INFO    ] No update needed
[2026-06-19 10:07:00,050.050 INFO    ] Checking for camera pi updates...
[2026-06-19 10:07:00,089.089 INFO    ] 200
[2026-06-19 10:07:00,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:00,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:07:00,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:07:00,179.179 INFO    ] No camera update needed
[2026-06-19 10:07:00,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:07:00,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:07:00,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:07:00,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:07:02,246.246 INFO    ] ================================================
[2026-06-19 10:07:02,270.270 INFO    ] Launching Daemon at Fri Jun 19 10:07:02 IST 2026
[2026-06-19 10:07:02,285.285 INFO    ] ================================================
[2026-06-19 10:07:02,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:07:02
[2026-06-19 10:07:03,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:07:03,767.767 INFO    ] Initializing speech engine...
[2026-06-19 10:07:03,775.775 INFO    ] 2026-06-19 10:07:03
[2026-06-19 10:07:04,066.066 INFO    ] 2026-06-19 10:07:04
[2026-06-19 10:07:04,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:07:04,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:07:04,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:07:04,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:07:04,468.468 INFO    ] time= 19/06/2026 10:07:04
[2026-06-19 10:07:04,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:07:04,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:07:04,650.650 INFO    ] No existing commands found in stream
[2026-06-19 10:07:09,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:07:09,678.678 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 10:07:11,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:07:11,441.441 INFO    ] Checking for system updates...
[2026-06-19 10:07:11,480.480 INFO    ] 200
[2026-06-19 10:07:11,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:11,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:07:11,569.569 INFO    ] No update needed
[2026-06-19 10:07:11,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 10:07:11,611.611 INFO    ] 200
[2026-06-19 10:07:11,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:11,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:07:11,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:07:11,707.707 INFO    ] No camera update needed
[2026-06-19 10:07:11,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:07:11,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:07:11,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:07:11,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:07:13,764.764 INFO    ] ================================================
[2026-06-19 10:07:13,779.779 INFO    ] Launching Daemon at Fri Jun 19 10:07:13 IST 2026
[2026-06-19 10:07:13,790.790 INFO    ] ================================================
[2026-06-19 10:07:14,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:07:14
[2026-06-19 10:07:14,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:07:15,185.185 INFO    ] Initializing speech engine...
[2026-06-19 10:07:15,193.193 INFO    ] 2026-06-19 10:07:15
[2026-06-19 10:07:15,468.468 INFO    ] 2026-06-19 10:07:15
[2026-06-19 10:07:15,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:07:15,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:07:15,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:07:15,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:07:15,964.964 INFO    ] time= 19/06/2026 10:07:15
[2026-06-19 10:07:16,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:07:16,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:07:16,194.194 INFO    ] No existing commands found in stream
[2026-06-19 10:07:21,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:07:21,210.210 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-19 10:07:21,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:07:21,629.629 INFO    ] Checking for system updates...
[2026-06-19 10:07:21,665.665 INFO    ] 200
[2026-06-19 10:07:21,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:21,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:07:21,724.724 INFO    ] No update needed
[2026-06-19 10:07:21,726.726 INFO    ] Checking for camera pi updates...
[2026-06-19 10:07:21,760.760 INFO    ] 200
[2026-06-19 10:07:21,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:21,803.803 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:07:21,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:07:21,849.849 INFO    ] No camera update needed
[2026-06-19 10:07:21,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:07:21,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:07:21,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:07:21,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:07:23,904.904 INFO    ] ================================================
[2026-06-19 10:07:23,920.920 INFO    ] Launching Daemon at Fri Jun 19 10:07:23 IST 2026
[2026-06-19 10:07:23,931.931 INFO    ] ================================================
[2026-06-19 10:07:24,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:07:24
[2026-06-19 10:07:25,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:07:25,352.352 INFO    ] Initializing speech engine...
[2026-06-19 10:07:25,361.361 INFO    ] 2026-06-19 10:07:25
[2026-06-19 10:07:25,610.610 INFO    ] 2026-06-19 10:07:25
[2026-06-19 10:07:25,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:07:25,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:07:25,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:07:26,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:07:26,088.088 INFO    ] time= 19/06/2026 10:07:26
[2026-06-19 10:07:26,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:07:26,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:07:26,286.286 INFO    ] No existing commands found in stream
[2026-06-19 10:07:31,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:07:31,310.310 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 10:07:34,653.653 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:07:34,656.656 INFO    ] Checking for system updates...
[2026-06-19 10:07:34,694.694 INFO    ] 200
[2026-06-19 10:07:34,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:34,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:07:34,753.753 INFO    ] No update needed
[2026-06-19 10:07:34,756.756 INFO    ] Checking for camera pi updates...
[2026-06-19 10:07:34,790.790 INFO    ] 200
[2026-06-19 10:07:34,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:34,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:07:34,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:07:34,877.877 INFO    ] No camera update needed
[2026-06-19 10:07:34,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:07:34,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:07:34,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:07:34,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:07:36,934.934 INFO    ] ================================================
[2026-06-19 10:07:36,949.949 INFO    ] Launching Daemon at Fri Jun 19 10:07:36 IST 2026
[2026-06-19 10:07:36,960.960 INFO    ] ================================================
[2026-06-19 10:07:37,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:07:37
[2026-06-19 10:07:38,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:07:38,412.412 INFO    ] Initializing speech engine...
[2026-06-19 10:07:38,421.421 INFO    ] 2026-06-19 10:07:38
[2026-06-19 10:07:38,670.670 INFO    ] 2026-06-19 10:07:38
[2026-06-19 10:07:38,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:07:38,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:07:38,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:07:39,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:07:39,193.193 INFO    ] time= 19/06/2026 10:07:39
[2026-06-19 10:07:39,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:07:39,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:07:39,380.380 INFO    ] No existing commands found in stream
[2026-06-19 10:07:44,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:07:44,398.398 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 10:07:45,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:07:45,612.612 INFO    ] Checking for system updates...
[2026-06-19 10:07:45,648.648 INFO    ] 200
[2026-06-19 10:07:45,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:45,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:07:45,706.706 INFO    ] No update needed
[2026-06-19 10:07:45,709.709 INFO    ] Checking for camera pi updates...
[2026-06-19 10:07:45,742.742 INFO    ] 200
[2026-06-19 10:07:45,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:45,786.786 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:07:45,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:07:45,837.837 INFO    ] No camera update needed
[2026-06-19 10:07:45,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:07:45,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:07:45,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:07:45,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:07:47,893.893 INFO    ] ================================================
[2026-06-19 10:07:47,909.909 INFO    ] Launching Daemon at Fri Jun 19 10:07:47 IST 2026
[2026-06-19 10:07:47,921.921 INFO    ] ================================================
[2026-06-19 10:07:48,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:07:48
[2026-06-19 10:07:49,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:07:49,513.513 INFO    ] Initializing speech engine...
[2026-06-19 10:07:49,519.519 INFO    ] 2026-06-19 10:07:49
[2026-06-19 10:07:49,777.777 INFO    ] 2026-06-19 10:07:49
[2026-06-19 10:07:49,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:07:50,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:07:50,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:07:50,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:07:50,239.239 INFO    ] time= 19/06/2026 10:07:50
[2026-06-19 10:07:50,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:07:50,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:07:50,454.454 INFO    ] No existing commands found in stream
[2026-06-19 10:07:55,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:07:55,488.488 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 10:07:56,135.135 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:07:56,138.138 INFO    ] Checking for system updates...
[2026-06-19 10:07:56,180.180 INFO    ] 200
[2026-06-19 10:07:56,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:56,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:07:56,242.242 INFO    ] No update needed
[2026-06-19 10:07:56,245.245 INFO    ] Checking for camera pi updates...
[2026-06-19 10:07:56,283.283 INFO    ] 200
[2026-06-19 10:07:56,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:07:56,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:07:56,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:07:56,479.479 INFO    ] No camera update needed
[2026-06-19 10:07:56,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:07:56,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:07:56,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:07:56,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:07:58,537.537 INFO    ] ================================================
[2026-06-19 10:07:58,552.552 INFO    ] Launching Daemon at Fri Jun 19 10:07:58 IST 2026
[2026-06-19 10:07:58,563.563 INFO    ] ================================================
[2026-06-19 10:07:59,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:07:59
[2026-06-19 10:07:59,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:08:00,022.022 INFO    ] Initializing speech engine...
[2026-06-19 10:08:00,031.031 INFO    ] 2026-06-19 10:08:00
[2026-06-19 10:08:00,290.290 INFO    ] 2026-06-19 10:08:00
[2026-06-19 10:08:00,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:08:00,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:08:00,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:08:00,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:08:00,764.764 INFO    ] time= 19/06/2026 10:08:00
[2026-06-19 10:08:00,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:08:00,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:08:00,986.986 INFO    ] No existing commands found in stream
[2026-06-19 10:08:06,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:08:06,004.004 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 10:08:08,173.173 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:08:08,176.176 INFO    ] Checking for system updates...
[2026-06-19 10:08:08,216.216 INFO    ] 200
[2026-06-19 10:08:08,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:08,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:08:08,273.273 INFO    ] No update needed
[2026-06-19 10:08:08,276.276 INFO    ] Checking for camera pi updates...
[2026-06-19 10:08:08,309.309 INFO    ] 200
[2026-06-19 10:08:08,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:08,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:08:08,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:08:08,407.407 INFO    ] No camera update needed
[2026-06-19 10:08:08,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:08:08,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:08:08,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:08:08,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:08:10,463.463 INFO    ] ================================================
[2026-06-19 10:08:10,478.478 INFO    ] Launching Daemon at Fri Jun 19 10:08:10 IST 2026
[2026-06-19 10:08:10,489.489 INFO    ] ================================================
[2026-06-19 10:08:11,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:08:11
[2026-06-19 10:08:11,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:08:12,032.032 INFO    ] Initializing speech engine...
[2026-06-19 10:08:12,041.041 INFO    ] 2026-06-19 10:08:12
[2026-06-19 10:08:12,311.311 INFO    ] 2026-06-19 10:08:12
[2026-06-19 10:08:12,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:08:12,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:08:12,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:08:12,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:08:12,808.808 INFO    ] time= 19/06/2026 10:08:12
[2026-06-19 10:08:12,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:08:12,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:08:13,028.028 INFO    ] No existing commands found in stream
[2026-06-19 10:08:18,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:08:18,053.053 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 10:08:18,910.910 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:08:18,913.913 INFO    ] Checking for system updates...
[2026-06-19 10:08:18,950.950 INFO    ] 200
[2026-06-19 10:08:18,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:19,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:08:19,010.010 INFO    ] No update needed
[2026-06-19 10:08:19,013.013 INFO    ] Checking for camera pi updates...
[2026-06-19 10:08:19,051.051 INFO    ] 200
[2026-06-19 10:08:19,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:19,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:08:19,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:08:19,132.132 INFO    ] No camera update needed
[2026-06-19 10:08:19,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:08:19,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:08:19,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:08:19,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:08:21,189.189 INFO    ] ================================================
[2026-06-19 10:08:21,205.205 INFO    ] Launching Daemon at Fri Jun 19 10:08:21 IST 2026
[2026-06-19 10:08:21,216.216 INFO    ] ================================================
[2026-06-19 10:08:21,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:08:21
[2026-06-19 10:08:22,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:08:22,812.812 INFO    ] Initializing speech engine...
[2026-06-19 10:08:22,821.821 INFO    ] 2026-06-19 10:08:22
[2026-06-19 10:08:23,094.094 INFO    ] 2026-06-19 10:08:23
[2026-06-19 10:08:23,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:08:23,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:08:23,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:08:23,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:08:23,659.659 INFO    ] time= 19/06/2026 10:08:23
[2026-06-19 10:08:23,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:08:23,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:08:23,820.820 INFO    ] No existing commands found in stream
[2026-06-19 10:08:28,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:08:28,843.843 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 10:08:32,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:08:32,122.122 INFO    ] Checking for system updates...
[2026-06-19 10:08:32,171.171 INFO    ] 200
[2026-06-19 10:08:32,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:32,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:08:32,237.237 INFO    ] No update needed
[2026-06-19 10:08:32,240.240 INFO    ] Checking for camera pi updates...
[2026-06-19 10:08:32,279.279 INFO    ] 200
[2026-06-19 10:08:32,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:32,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:08:32,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:08:32,370.370 INFO    ] No camera update needed
[2026-06-19 10:08:32,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:08:32,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:08:32,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:08:32,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:08:34,431.431 INFO    ] ================================================
[2026-06-19 10:08:34,447.447 INFO    ] Launching Daemon at Fri Jun 19 10:08:34 IST 2026
[2026-06-19 10:08:34,457.457 INFO    ] ================================================
[2026-06-19 10:08:35,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:08:35
[2026-06-19 10:08:35,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:08:35,863.863 INFO    ] Initializing speech engine...
[2026-06-19 10:08:35,871.871 INFO    ] 2026-06-19 10:08:35
[2026-06-19 10:08:36,145.145 INFO    ] 2026-06-19 10:08:36
[2026-06-19 10:08:36,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:08:36,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:08:36,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:08:36,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:08:36,591.591 INFO    ] time= 19/06/2026 10:08:36
[2026-06-19 10:08:36,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:08:36,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:08:36,871.871 INFO    ] No existing commands found in stream
[2026-06-19 10:08:41,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:08:41,883.883 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 10:08:42,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:08:42,934.934 INFO    ] Checking for system updates...
[2026-06-19 10:08:42,971.971 INFO    ] 200
[2026-06-19 10:08:42,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:43,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:08:43,033.033 INFO    ] No update needed
[2026-06-19 10:08:43,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 10:08:43,070.070 INFO    ] 200
[2026-06-19 10:08:43,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:43,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:08:43,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:08:43,172.172 INFO    ] No camera update needed
[2026-06-19 10:08:43,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:08:43,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:08:43,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:08:43,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:08:45,229.229 INFO    ] ================================================
[2026-06-19 10:08:45,244.244 INFO    ] Launching Daemon at Fri Jun 19 10:08:45 IST 2026
[2026-06-19 10:08:45,254.254 INFO    ] ================================================
[2026-06-19 10:08:45,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:08:45
[2026-06-19 10:08:46,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:08:46,672.672 INFO    ] Initializing speech engine...
[2026-06-19 10:08:46,680.680 INFO    ] 2026-06-19 10:08:46
[2026-06-19 10:08:46,969.969 INFO    ] 2026-06-19 10:08:46
[2026-06-19 10:08:47,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:08:47,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:08:47,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:08:47,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:08:47,387.387 INFO    ] time= 19/06/2026 10:08:47
[2026-06-19 10:08:47,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:08:47,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:08:47,579.579 INFO    ] No existing commands found in stream
[2026-06-19 10:08:52,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:08:52,607.607 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 10:08:55,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:08:55,040.040 INFO    ] Checking for system updates...
[2026-06-19 10:08:55,076.076 INFO    ] 200
[2026-06-19 10:08:55,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:55,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:08:55,133.133 INFO    ] No update needed
[2026-06-19 10:08:55,136.136 INFO    ] Checking for camera pi updates...
[2026-06-19 10:08:55,170.170 INFO    ] 200
[2026-06-19 10:08:55,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:08:55,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:08:55,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:08:55,263.263 INFO    ] No camera update needed
[2026-06-19 10:08:55,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:08:55,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:08:55,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:08:55,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:08:57,318.318 INFO    ] ================================================
[2026-06-19 10:08:57,334.334 INFO    ] Launching Daemon at Fri Jun 19 10:08:57 IST 2026
[2026-06-19 10:08:57,344.344 INFO    ] ================================================
[2026-06-19 10:08:57,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:08:57
[2026-06-19 10:08:58,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:08:58,787.787 INFO    ] Initializing speech engine...
[2026-06-19 10:08:58,792.792 INFO    ] 2026-06-19 10:08:58
[2026-06-19 10:08:59,084.084 INFO    ] 2026-06-19 10:08:59
[2026-06-19 10:08:59,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:08:59,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:08:59,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:08:59,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:08:59,494.494 INFO    ] time= 19/06/2026 10:08:59
[2026-06-19 10:08:59,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:08:59,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:08:59,697.697 INFO    ] No existing commands found in stream
[2026-06-19 10:09:04,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:09:04,720.720 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 10:09:07,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:09:07,533.533 INFO    ] Checking for system updates...
[2026-06-19 10:09:07,570.570 INFO    ] 200
[2026-06-19 10:09:07,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:07,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:09:07,629.629 INFO    ] No update needed
[2026-06-19 10:09:07,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 10:09:07,667.667 INFO    ] 200
[2026-06-19 10:09:07,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:07,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:09:07,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:09:07,762.762 INFO    ] No camera update needed
[2026-06-19 10:09:07,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:09:07,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:09:07,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:09:07,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:09:09,817.817 INFO    ] ================================================
[2026-06-19 10:09:09,832.832 INFO    ] Launching Daemon at Fri Jun 19 10:09:09 IST 2026
[2026-06-19 10:09:09,843.843 INFO    ] ================================================
[2026-06-19 10:09:10,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:09:10
[2026-06-19 10:09:11,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:09:11,282.282 INFO    ] Initializing speech engine...
[2026-06-19 10:09:11,298.298 INFO    ] 2026-06-19 10:09:11
[2026-06-19 10:09:11,566.566 INFO    ] 2026-06-19 10:09:11
[2026-06-19 10:09:11,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:09:11,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:09:11,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:09:11,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:09:11,980.980 INFO    ] time= 19/06/2026 10:09:11
[2026-06-19 10:09:11,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:09:11,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:09:12,069.069 INFO    ] No existing commands found in stream
[2026-06-19 10:09:17,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:09:17,107.107 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 10:09:18,814.814 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:09:18,817.817 INFO    ] Checking for system updates...
[2026-06-19 10:09:18,854.854 INFO    ] 200
[2026-06-19 10:09:18,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:18,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:09:18,916.916 INFO    ] No update needed
[2026-06-19 10:09:18,918.918 INFO    ] Checking for camera pi updates...
[2026-06-19 10:09:18,951.951 INFO    ] 200
[2026-06-19 10:09:18,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:18,998.998 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:09:19,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:09:19,041.041 INFO    ] No camera update needed
[2026-06-19 10:09:19,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:09:19,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:09:19,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:09:19,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:09:21,096.096 INFO    ] ================================================
[2026-06-19 10:09:21,111.111 INFO    ] Launching Daemon at Fri Jun 19 10:09:21 IST 2026
[2026-06-19 10:09:21,122.122 INFO    ] ================================================
[2026-06-19 10:09:21,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:09:21
[2026-06-19 10:09:22,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:09:22,537.537 INFO    ] Initializing speech engine...
[2026-06-19 10:09:22,549.549 INFO    ] 2026-06-19 10:09:22
[2026-06-19 10:09:22,795.795 INFO    ] 2026-06-19 10:09:22
[2026-06-19 10:09:22,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:09:23,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:09:23,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:09:23,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:09:23,255.255 INFO    ] time= 19/06/2026 10:09:23
[2026-06-19 10:09:23,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:09:23,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:09:23,381.381 INFO    ] No existing commands found in stream
[2026-06-19 10:09:28,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:09:28,404.404 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-19 10:09:32,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:09:32,846.846 INFO    ] Checking for system updates...
[2026-06-19 10:09:32,883.883 INFO    ] 200
[2026-06-19 10:09:32,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:32,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:09:32,947.947 INFO    ] No update needed
[2026-06-19 10:09:32,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 10:09:32,984.984 INFO    ] 200
[2026-06-19 10:09:32,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:33,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:09:33,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:09:33,062.062 INFO    ] No camera update needed
[2026-06-19 10:09:33,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:09:33,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:09:33,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:09:33,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:09:35,120.120 INFO    ] ================================================
[2026-06-19 10:09:35,135.135 INFO    ] Launching Daemon at Fri Jun 19 10:09:35 IST 2026
[2026-06-19 10:09:35,145.145 INFO    ] ================================================
[2026-06-19 10:09:35,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:09:35
[2026-06-19 10:09:36,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:09:36,583.583 INFO    ] Initializing speech engine...
[2026-06-19 10:09:36,591.591 INFO    ] 2026-06-19 10:09:36
[2026-06-19 10:09:36,887.887 INFO    ] 2026-06-19 10:09:36
[2026-06-19 10:09:36,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:09:37,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:09:37,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:09:37,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:09:37,386.386 INFO    ] time= 19/06/2026 10:09:37
[2026-06-19 10:09:37,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:09:37,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:09:37,579.579 INFO    ] No existing commands found in stream
[2026-06-19 10:09:42,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:09:42,606.606 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 10:09:45,512.512 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:09:45,515.515 INFO    ] Checking for system updates...
[2026-06-19 10:09:45,551.551 INFO    ] 200
[2026-06-19 10:09:45,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:45,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:09:45,615.615 INFO    ] No update needed
[2026-06-19 10:09:45,617.617 INFO    ] Checking for camera pi updates...
[2026-06-19 10:09:45,651.651 INFO    ] 200
[2026-06-19 10:09:45,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:45,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:09:45,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:09:45,741.741 INFO    ] No camera update needed
[2026-06-19 10:09:45,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:09:45,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:09:45,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:09:45,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:09:47,796.796 INFO    ] ================================================
[2026-06-19 10:09:47,811.811 INFO    ] Launching Daemon at Fri Jun 19 10:09:47 IST 2026
[2026-06-19 10:09:47,822.822 INFO    ] ================================================
[2026-06-19 10:09:48,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:09:48
[2026-06-19 10:09:48,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:09:49,263.263 INFO    ] Initializing speech engine...
[2026-06-19 10:09:49,272.272 INFO    ] 2026-06-19 10:09:49
[2026-06-19 10:09:49,522.522 INFO    ] 2026-06-19 10:09:49
[2026-06-19 10:09:49,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:09:49,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:09:49,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:09:49,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:09:49,997.997 INFO    ] time= 19/06/2026 10:09:49
[2026-06-19 10:09:50,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:09:50,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:09:50,218.218 INFO    ] No existing commands found in stream
[2026-06-19 10:09:55,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:09:55,247.247 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 10:09:57,821.821 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:09:57,823.823 INFO    ] Checking for system updates...
[2026-06-19 10:09:57,860.860 INFO    ] 200
[2026-06-19 10:09:57,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:57,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:09:57,919.919 INFO    ] No update needed
[2026-06-19 10:09:57,921.921 INFO    ] Checking for camera pi updates...
[2026-06-19 10:09:57,956.956 INFO    ] 200
[2026-06-19 10:09:57,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:09:58,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:09:58,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:09:58,148.148 INFO    ] No camera update needed
[2026-06-19 10:09:58,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:09:58,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:09:58,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:09:58,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:10:00,206.206 INFO    ] ================================================
[2026-06-19 10:10:00,221.221 INFO    ] Launching Daemon at Fri Jun 19 10:10:00 IST 2026
[2026-06-19 10:10:00,232.232 INFO    ] ================================================
[2026-06-19 10:10:00,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:10:00
[2026-06-19 10:10:01,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:10:02,270.270 INFO    ] Initializing speech engine...
[2026-06-19 10:10:02,275.275 INFO    ] 2026-06-19 10:10:02
[2026-06-19 10:10:02,618.618 INFO    ] 2026-06-19 10:10:02
[2026-06-19 10:10:02,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:10:02,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:10:02,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:10:03,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:10:03,066.066 INFO    ] time= 19/06/2026 10:10:03
[2026-06-19 10:10:03,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:10:03,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:10:03,266.266 INFO    ] No existing commands found in stream
[2026-06-19 10:10:08,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:10:08,283.283 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 10:10:10,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:10:10,812.812 INFO    ] Checking for system updates...
[2026-06-19 10:10:10,848.848 INFO    ] 200
[2026-06-19 10:10:10,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:10,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:10:10,910.910 INFO    ] No update needed
[2026-06-19 10:10:10,912.912 INFO    ] Checking for camera pi updates...
[2026-06-19 10:10:10,946.946 INFO    ] 200
[2026-06-19 10:10:10,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:10,992.992 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:10:11,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:10:11,032.032 INFO    ] No camera update needed
[2026-06-19 10:10:11,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:10:11,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:10:11,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:10:11,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:10:13,087.087 INFO    ] ================================================
[2026-06-19 10:10:13,102.102 INFO    ] Launching Daemon at Fri Jun 19 10:10:13 IST 2026
[2026-06-19 10:10:13,113.113 INFO    ] ================================================
[2026-06-19 10:10:13,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:10:13
[2026-06-19 10:10:14,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:10:14,577.577 INFO    ] Initializing speech engine...
[2026-06-19 10:10:14,592.592 INFO    ] 2026-06-19 10:10:14
[2026-06-19 10:10:14,856.856 INFO    ] 2026-06-19 10:10:14
[2026-06-19 10:10:14,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:10:15,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:10:15,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:10:15,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:10:15,320.320 INFO    ] time= 19/06/2026 10:10:15
[2026-06-19 10:10:15,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:10:15,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:10:15,578.578 INFO    ] No existing commands found in stream
[2026-06-19 10:10:20,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:10:20,598.598 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 10:10:21,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:10:21,683.683 INFO    ] Checking for system updates...
[2026-06-19 10:10:21,719.719 INFO    ] 200
[2026-06-19 10:10:21,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:21,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:10:21,785.785 INFO    ] No update needed
[2026-06-19 10:10:21,788.788 INFO    ] Checking for camera pi updates...
[2026-06-19 10:10:21,821.821 INFO    ] 200
[2026-06-19 10:10:21,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:21,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:10:21,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:10:21,907.907 INFO    ] No camera update needed
[2026-06-19 10:10:21,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:10:21,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:10:21,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:10:21,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:10:23,962.962 INFO    ] ================================================
[2026-06-19 10:10:23,976.976 INFO    ] Launching Daemon at Fri Jun 19 10:10:23 IST 2026
[2026-06-19 10:10:23,987.987 INFO    ] ================================================
[2026-06-19 10:10:24,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:10:24
[2026-06-19 10:10:25,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:10:25,447.447 INFO    ] Initializing speech engine...
[2026-06-19 10:10:25,454.454 INFO    ] 2026-06-19 10:10:25
[2026-06-19 10:10:25,726.726 INFO    ] 2026-06-19 10:10:25
[2026-06-19 10:10:25,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:10:25,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:10:25,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:10:26,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:10:26,172.172 INFO    ] time= 19/06/2026 10:10:26
[2026-06-19 10:10:26,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:10:26,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:10:26,408.408 INFO    ] No existing commands found in stream
[2026-06-19 10:10:31,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:10:31,427.427 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 10:10:32,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:10:32,132.132 INFO    ] Checking for system updates...
[2026-06-19 10:10:32,170.170 INFO    ] 200
[2026-06-19 10:10:32,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:32,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:10:32,232.232 INFO    ] No update needed
[2026-06-19 10:10:32,234.234 INFO    ] Checking for camera pi updates...
[2026-06-19 10:10:32,272.272 INFO    ] 200
[2026-06-19 10:10:32,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:32,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:10:32,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:10:32,372.372 INFO    ] No camera update needed
[2026-06-19 10:10:32,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:10:32,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:10:32,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:10:32,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:10:34,445.445 INFO    ] ================================================
[2026-06-19 10:10:34,460.460 INFO    ] Launching Daemon at Fri Jun 19 10:10:34 IST 2026
[2026-06-19 10:10:34,470.470 INFO    ] ================================================
[2026-06-19 10:10:35,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:10:35
[2026-06-19 10:10:35,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:10:35,885.885 INFO    ] Initializing speech engine...
[2026-06-19 10:10:35,894.894 INFO    ] 2026-06-19 10:10:35
[2026-06-19 10:10:36,147.147 INFO    ] 2026-06-19 10:10:36
[2026-06-19 10:10:36,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:10:36,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:10:36,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:10:36,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:10:36,608.608 INFO    ] time= 19/06/2026 10:10:36
[2026-06-19 10:10:36,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:10:36,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:10:36,816.816 INFO    ] No existing commands found in stream
[2026-06-19 10:10:41,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:10:41,849.849 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 10:10:43,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:10:43,933.933 INFO    ] Checking for system updates...
[2026-06-19 10:10:43,972.972 INFO    ] 200
[2026-06-19 10:10:43,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:44,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:10:44,034.034 INFO    ] No update needed
[2026-06-19 10:10:44,037.037 INFO    ] Checking for camera pi updates...
[2026-06-19 10:10:44,073.073 INFO    ] 200
[2026-06-19 10:10:44,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:44,116.116 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:10:44,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:10:44,162.162 INFO    ] No camera update needed
[2026-06-19 10:10:44,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:10:44,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:10:44,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:10:44,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:10:46,221.221 INFO    ] ================================================
[2026-06-19 10:10:46,238.238 INFO    ] Launching Daemon at Fri Jun 19 10:10:46 IST 2026
[2026-06-19 10:10:46,249.249 INFO    ] ================================================
[2026-06-19 10:10:46,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:10:46
[2026-06-19 10:10:47,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:10:47,644.644 INFO    ] Initializing speech engine...
[2026-06-19 10:10:47,653.653 INFO    ] 2026-06-19 10:10:47
[2026-06-19 10:10:47,923.923 INFO    ] 2026-06-19 10:10:47
[2026-06-19 10:10:47,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:10:48,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:10:48,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:10:48,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:10:48,398.398 INFO    ] time= 19/06/2026 10:10:48
[2026-06-19 10:10:48,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:10:48,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:10:48,606.606 INFO    ] No existing commands found in stream
[2026-06-19 10:10:53,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:10:53,634.634 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 10:10:55,392.392 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:10:55,395.395 INFO    ] Checking for system updates...
[2026-06-19 10:10:55,431.431 INFO    ] 200
[2026-06-19 10:10:55,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:55,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:10:55,488.488 INFO    ] No update needed
[2026-06-19 10:10:55,490.490 INFO    ] Checking for camera pi updates...
[2026-06-19 10:10:55,526.526 INFO    ] 200
[2026-06-19 10:10:55,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:10:55,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:10:55,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:10:55,613.613 INFO    ] No camera update needed
[2026-06-19 10:10:55,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:10:55,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:10:55,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:10:55,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:10:57,668.668 INFO    ] ================================================
[2026-06-19 10:10:57,683.683 INFO    ] Launching Daemon at Fri Jun 19 10:10:57 IST 2026
[2026-06-19 10:10:57,694.694 INFO    ] ================================================
[2026-06-19 10:10:58,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:10:58
[2026-06-19 10:10:58,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:10:59,156.156 INFO    ] Initializing speech engine...
[2026-06-19 10:10:59,161.161 INFO    ] 2026-06-19 10:10:59
[2026-06-19 10:10:59,436.436 INFO    ] 2026-06-19 10:10:59
[2026-06-19 10:10:59,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:10:59,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:10:59,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:10:59,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:10:59,965.965 INFO    ] time= 19/06/2026 10:10:59
[2026-06-19 10:10:59,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:10:59,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:11:00,113.113 INFO    ] No existing commands found in stream
[2026-06-19 10:11:05,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:11:05,131.131 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 10:11:06,965.965 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:11:06,967.967 INFO    ] Checking for system updates...
[2026-06-19 10:11:07,008.008 INFO    ] 200
[2026-06-19 10:11:07,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:07,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:07,073.073 INFO    ] No update needed
[2026-06-19 10:11:07,077.077 INFO    ] Checking for camera pi updates...
[2026-06-19 10:11:07,114.114 INFO    ] 200
[2026-06-19 10:11:07,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:07,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:11:07,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:07,202.202 INFO    ] No camera update needed
[2026-06-19 10:11:07,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:11:07,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:11:07,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:11:07,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:11:09,260.260 INFO    ] ================================================
[2026-06-19 10:11:09,276.276 INFO    ] Launching Daemon at Fri Jun 19 10:11:09 IST 2026
[2026-06-19 10:11:09,286.286 INFO    ] ================================================
[2026-06-19 10:11:09,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:11:09
[2026-06-19 10:11:10,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:11:10,796.796 INFO    ] Initializing speech engine...
[2026-06-19 10:11:10,804.804 INFO    ] 2026-06-19 10:11:10
[2026-06-19 10:11:11,081.081 INFO    ] 2026-06-19 10:11:11
[2026-06-19 10:11:11,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:11:11,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:11:11,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:11:11,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:11:11,459.459 INFO    ] time= 19/06/2026 10:11:11
[2026-06-19 10:11:11,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:11:11,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:11:11,651.651 INFO    ] No existing commands found in stream
[2026-06-19 10:11:16,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:11:16,675.675 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 10:11:19,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:11:19,785.785 INFO    ] Checking for system updates...
[2026-06-19 10:11:19,820.820 INFO    ] 200
[2026-06-19 10:11:19,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:19,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:19,884.884 INFO    ] No update needed
[2026-06-19 10:11:19,886.886 INFO    ] Checking for camera pi updates...
[2026-06-19 10:11:19,926.926 INFO    ] 200
[2026-06-19 10:11:19,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:19,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:11:20,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:20,017.017 INFO    ] No camera update needed
[2026-06-19 10:11:20,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:11:20,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:11:20,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:11:20,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:11:22,071.071 INFO    ] ================================================
[2026-06-19 10:11:22,087.087 INFO    ] Launching Daemon at Fri Jun 19 10:11:22 IST 2026
[2026-06-19 10:11:22,098.098 INFO    ] ================================================
[2026-06-19 10:11:22,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:11:22
[2026-06-19 10:11:23,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:11:23,561.561 INFO    ] Initializing speech engine...
[2026-06-19 10:11:23,567.567 INFO    ] 2026-06-19 10:11:23
[2026-06-19 10:11:23,830.830 INFO    ] 2026-06-19 10:11:23
[2026-06-19 10:11:23,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:11:24,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:11:24,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:11:24,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:11:24,327.327 INFO    ] time= 19/06/2026 10:11:24
[2026-06-19 10:11:24,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:11:24,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:11:24,588.588 INFO    ] No existing commands found in stream
[2026-06-19 10:11:29,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:11:29,616.616 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 10:11:32,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:11:32,197.197 INFO    ] Checking for system updates...
[2026-06-19 10:11:32,236.236 INFO    ] 200
[2026-06-19 10:11:32,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:32,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:32,302.302 INFO    ] No update needed
[2026-06-19 10:11:32,306.306 INFO    ] Checking for camera pi updates...
[2026-06-19 10:11:32,347.347 INFO    ] 200
[2026-06-19 10:11:32,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:32,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:11:32,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:32,429.429 INFO    ] No camera update needed
[2026-06-19 10:11:32,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:11:32,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:11:32,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:11:32,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:11:34,488.488 INFO    ] ================================================
[2026-06-19 10:11:34,503.503 INFO    ] Launching Daemon at Fri Jun 19 10:11:34 IST 2026
[2026-06-19 10:11:34,514.514 INFO    ] ================================================
[2026-06-19 10:11:35,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:11:35
[2026-06-19 10:11:35,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:11:35,985.985 INFO    ] Initializing speech engine...
[2026-06-19 10:11:35,991.991 INFO    ] 2026-06-19 10:11:35
[2026-06-19 10:11:36,253.253 INFO    ] 2026-06-19 10:11:36
[2026-06-19 10:11:36,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:11:36,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:11:36,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:11:36,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:11:36,749.749 INFO    ] time= 19/06/2026 10:11:36
[2026-06-19 10:11:36,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:11:36,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:11:36,949.949 INFO    ] No existing commands found in stream
[2026-06-19 10:11:41,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:11:41,968.968 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 10:11:44,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:11:44,512.512 INFO    ] Checking for system updates...
[2026-06-19 10:11:44,548.548 INFO    ] 200
[2026-06-19 10:11:44,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:44,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:44,611.611 INFO    ] No update needed
[2026-06-19 10:11:44,614.614 INFO    ] Checking for camera pi updates...
[2026-06-19 10:11:44,650.650 INFO    ] 200
[2026-06-19 10:11:44,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:44,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:11:44,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:44,739.739 INFO    ] No camera update needed
[2026-06-19 10:11:44,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:11:44,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:11:44,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:11:44,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:11:46,796.796 INFO    ] ================================================
[2026-06-19 10:11:46,811.811 INFO    ] Launching Daemon at Fri Jun 19 10:11:46 IST 2026
[2026-06-19 10:11:46,821.821 INFO    ] ================================================
[2026-06-19 10:11:47,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:11:47
[2026-06-19 10:11:47,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:11:48,227.227 INFO    ] Initializing speech engine...
[2026-06-19 10:11:48,250.250 INFO    ] 2026-06-19 10:11:48
[2026-06-19 10:11:48,502.502 INFO    ] 2026-06-19 10:11:48
[2026-06-19 10:11:48,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:11:48,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:11:48,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:11:48,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:11:49,042.042 INFO    ] time= 19/06/2026 10:11:49
[2026-06-19 10:11:49,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:11:49,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:11:49,217.217 INFO    ] No existing commands found in stream
[2026-06-19 10:11:54,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:11:54,248.248 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 10:11:56,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:11:56,046.046 INFO    ] Checking for system updates...
[2026-06-19 10:11:56,085.085 INFO    ] 200
[2026-06-19 10:11:56,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:56,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:56,143.143 INFO    ] No update needed
[2026-06-19 10:11:56,145.145 INFO    ] Checking for camera pi updates...
[2026-06-19 10:11:56,182.182 INFO    ] 200
[2026-06-19 10:11:56,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:11:56,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:11:56,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:11:56,267.267 INFO    ] No camera update needed
[2026-06-19 10:11:56,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:11:56,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:11:56,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:11:56,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:11:58,322.322 INFO    ] ================================================
[2026-06-19 10:11:58,338.338 INFO    ] Launching Daemon at Fri Jun 19 10:11:58 IST 2026
[2026-06-19 10:11:58,349.349 INFO    ] ================================================
[2026-06-19 10:11:58,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:11:58
[2026-06-19 10:11:59,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:11:59,799.799 INFO    ] Initializing speech engine...
[2026-06-19 10:11:59,805.805 INFO    ] 2026-06-19 10:11:59
[2026-06-19 10:12:00,098.098 INFO    ] 2026-06-19 10:12:00
[2026-06-19 10:12:00,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:12:00,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:12:00,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:12:00,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:12:00,585.585 INFO    ] time= 19/06/2026 10:12:00
[2026-06-19 10:12:00,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:12:00,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:12:00,800.800 INFO    ] No existing commands found in stream
[2026-06-19 10:12:05,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:12:05,814.814 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 10:12:08,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:12:08,725.725 INFO    ] Checking for system updates...
[2026-06-19 10:12:08,761.761 INFO    ] 200
[2026-06-19 10:12:08,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:08,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:12:08,820.820 INFO    ] No update needed
[2026-06-19 10:12:08,823.823 INFO    ] Checking for camera pi updates...
[2026-06-19 10:12:08,860.860 INFO    ] 200
[2026-06-19 10:12:08,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:08,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:12:08,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:12:08,954.954 INFO    ] No camera update needed
[2026-06-19 10:12:08,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:12:08,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:12:08,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:12:08,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:12:11,010.010 INFO    ] ================================================
[2026-06-19 10:12:11,025.025 INFO    ] Launching Daemon at Fri Jun 19 10:12:11 IST 2026
[2026-06-19 10:12:11,036.036 INFO    ] ================================================
[2026-06-19 10:12:11,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:12:11
[2026-06-19 10:12:12,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:12:12,499.499 INFO    ] Initializing speech engine...
[2026-06-19 10:12:12,506.506 INFO    ] 2026-06-19 10:12:12
[2026-06-19 10:12:12,766.766 INFO    ] 2026-06-19 10:12:12
[2026-06-19 10:12:12,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:12:13,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:12:13,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:12:13,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:12:13,299.299 INFO    ] time= 19/06/2026 10:12:13
[2026-06-19 10:12:13,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:12:13,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:12:13,504.504 INFO    ] No existing commands found in stream
[2026-06-19 10:12:18,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:12:18,546.546 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 10:12:20,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:12:20,425.425 INFO    ] Checking for system updates...
[2026-06-19 10:12:20,468.468 INFO    ] 200
[2026-06-19 10:12:20,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:20,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:12:20,534.534 INFO    ] No update needed
[2026-06-19 10:12:20,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 10:12:20,576.576 INFO    ] 200
[2026-06-19 10:12:20,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:20,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:12:20,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:12:20,672.672 INFO    ] No camera update needed
[2026-06-19 10:12:20,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:12:20,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:12:20,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:12:20,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:12:22,731.731 INFO    ] ================================================
[2026-06-19 10:12:22,746.746 INFO    ] Launching Daemon at Fri Jun 19 10:12:22 IST 2026
[2026-06-19 10:12:22,757.757 INFO    ] ================================================
[2026-06-19 10:12:23,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:12:23
[2026-06-19 10:12:23,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:12:24,215.215 INFO    ] Initializing speech engine...
[2026-06-19 10:12:24,228.228 INFO    ] 2026-06-19 10:12:24
[2026-06-19 10:12:24,514.514 INFO    ] 2026-06-19 10:12:24
[2026-06-19 10:12:24,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:12:24,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:12:24,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:12:24,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:12:24,934.934 INFO    ] time= 19/06/2026 10:12:24
[2026-06-19 10:12:24,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:12:24,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:12:25,097.097 INFO    ] No existing commands found in stream
[2026-06-19 10:12:30,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:12:30,124.124 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 10:12:31,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:12:31,499.499 INFO    ] Checking for system updates...
[2026-06-19 10:12:31,540.540 INFO    ] 200
[2026-06-19 10:12:31,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:31,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:12:31,605.605 INFO    ] No update needed
[2026-06-19 10:12:31,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 10:12:31,644.644 INFO    ] 200
[2026-06-19 10:12:31,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:31,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:12:31,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:12:31,747.747 INFO    ] No camera update needed
[2026-06-19 10:12:31,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:12:31,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:12:31,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:12:31,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:12:33,811.811 INFO    ] ================================================
[2026-06-19 10:12:33,827.827 INFO    ] Launching Daemon at Fri Jun 19 10:12:33 IST 2026
[2026-06-19 10:12:33,838.838 INFO    ] ================================================
[2026-06-19 10:12:34,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:12:34
[2026-06-19 10:12:35,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:12:35,426.426 INFO    ] Initializing speech engine...
[2026-06-19 10:12:35,433.433 INFO    ] 2026-06-19 10:12:35
[2026-06-19 10:12:35,709.709 INFO    ] 2026-06-19 10:12:35
[2026-06-19 10:12:35,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:12:36,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:12:36,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:12:36,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:12:36,187.187 INFO    ] time= 19/06/2026 10:12:36
[2026-06-19 10:12:36,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:12:36,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:12:36,433.433 INFO    ] No existing commands found in stream
[2026-06-19 10:12:41,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:12:41,452.452 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 10:12:42,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:12:42,950.950 INFO    ] Checking for system updates...
[2026-06-19 10:12:42,987.987 INFO    ] 200
[2026-06-19 10:12:42,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:43,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:12:43,046.046 INFO    ] No update needed
[2026-06-19 10:12:43,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 10:12:43,083.083 INFO    ] 200
[2026-06-19 10:12:43,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:43,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:12:43,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:12:43,173.173 INFO    ] No camera update needed
[2026-06-19 10:12:43,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:12:43,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:12:43,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:12:43,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:12:45,228.228 INFO    ] ================================================
[2026-06-19 10:12:45,243.243 INFO    ] Launching Daemon at Fri Jun 19 10:12:45 IST 2026
[2026-06-19 10:12:45,255.255 INFO    ] ================================================
[2026-06-19 10:12:45,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:12:45
[2026-06-19 10:12:46,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:12:46,673.673 INFO    ] Initializing speech engine...
[2026-06-19 10:12:46,691.691 INFO    ] 2026-06-19 10:12:46
[2026-06-19 10:12:46,944.944 INFO    ] 2026-06-19 10:12:46
[2026-06-19 10:12:46,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:12:47,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:12:47,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:12:47,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:12:47,418.418 INFO    ] time= 19/06/2026 10:12:47
[2026-06-19 10:12:47,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:12:47,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:12:47,649.649 INFO    ] No existing commands found in stream
[2026-06-19 10:12:52,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:12:52,680.680 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 10:12:54,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:12:54,433.433 INFO    ] Checking for system updates...
[2026-06-19 10:12:54,469.469 INFO    ] 200
[2026-06-19 10:12:54,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:54,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:12:54,530.530 INFO    ] No update needed
[2026-06-19 10:12:54,533.533 INFO    ] Checking for camera pi updates...
[2026-06-19 10:12:54,566.566 INFO    ] 200
[2026-06-19 10:12:54,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:12:54,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:12:54,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:12:54,651.651 INFO    ] No camera update needed
[2026-06-19 10:12:54,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:12:54,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:12:54,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:12:54,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:12:56,707.707 INFO    ] ================================================
[2026-06-19 10:12:56,722.722 INFO    ] Launching Daemon at Fri Jun 19 10:12:56 IST 2026
[2026-06-19 10:12:56,732.732 INFO    ] ================================================
[2026-06-19 10:12:57,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:12:57
[2026-06-19 10:12:57,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:12:58,161.161 INFO    ] Initializing speech engine...
[2026-06-19 10:12:58,170.170 INFO    ] 2026-06-19 10:12:58
[2026-06-19 10:12:58,418.418 INFO    ] 2026-06-19 10:12:58
[2026-06-19 10:12:58,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:12:58,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:12:58,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:12:58,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:12:58,905.905 INFO    ] time= 19/06/2026 10:12:58
[2026-06-19 10:12:58,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:12:58,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:12:59,125.125 INFO    ] No existing commands found in stream
[2026-06-19 10:13:04,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:13:04,149.149 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 10:13:04,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:13:04,786.786 INFO    ] Checking for system updates...
[2026-06-19 10:13:04,823.823 INFO    ] 200
[2026-06-19 10:13:04,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:04,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:04,881.881 INFO    ] No update needed
[2026-06-19 10:13:04,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 10:13:04,918.918 INFO    ] 200
[2026-06-19 10:13:04,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:04,965.965 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:13:05,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:05,007.007 INFO    ] No camera update needed
[2026-06-19 10:13:05,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:13:05,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:13:05,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:13:05,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:13:07,064.064 INFO    ] ================================================
[2026-06-19 10:13:07,079.079 INFO    ] Launching Daemon at Fri Jun 19 10:13:07 IST 2026
[2026-06-19 10:13:07,090.090 INFO    ] ================================================
[2026-06-19 10:13:07,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:13:07
[2026-06-19 10:13:08,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:13:08,672.672 INFO    ] Initializing speech engine...
[2026-06-19 10:13:08,678.678 INFO    ] 2026-06-19 10:13:08
[2026-06-19 10:13:08,949.949 INFO    ] 2026-06-19 10:13:08
[2026-06-19 10:13:08,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:13:09,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:13:09,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:13:09,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:13:09,434.434 INFO    ] time= 19/06/2026 10:13:09
[2026-06-19 10:13:09,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:13:09,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:13:09,658.658 INFO    ] No existing commands found in stream
[2026-06-19 10:13:14,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:13:14,687.687 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 10:13:19,106.106 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:13:19,109.109 INFO    ] Checking for system updates...
[2026-06-19 10:13:19,146.146 INFO    ] 200
[2026-06-19 10:13:19,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:19,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:19,212.212 INFO    ] No update needed
[2026-06-19 10:13:19,214.214 INFO    ] Checking for camera pi updates...
[2026-06-19 10:13:19,249.249 INFO    ] 200
[2026-06-19 10:13:19,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:19,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:13:19,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:19,344.344 INFO    ] No camera update needed
[2026-06-19 10:13:19,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:13:19,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:13:19,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:13:19,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:13:21,406.406 INFO    ] ================================================
[2026-06-19 10:13:21,421.421 INFO    ] Launching Daemon at Fri Jun 19 10:13:21 IST 2026
[2026-06-19 10:13:21,432.432 INFO    ] ================================================
[2026-06-19 10:13:22,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:13:22
[2026-06-19 10:13:22,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:13:22,893.893 INFO    ] Initializing speech engine...
[2026-06-19 10:13:22,898.898 INFO    ] 2026-06-19 10:13:22
[2026-06-19 10:13:23,162.162 INFO    ] 2026-06-19 10:13:23
[2026-06-19 10:13:23,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:13:23,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:13:23,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:13:23,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:13:23,710.710 INFO    ] time= 19/06/2026 10:13:23
[2026-06-19 10:13:23,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:13:23,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:13:23,891.891 INFO    ] No existing commands found in stream
[2026-06-19 10:13:28,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:13:28,926.926 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 10:13:29,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:13:29,917.917 INFO    ] Checking for system updates...
[2026-06-19 10:13:29,954.954 INFO    ] 200
[2026-06-19 10:13:29,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:30,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:30,013.013 INFO    ] No update needed
[2026-06-19 10:13:30,016.016 INFO    ] Checking for camera pi updates...
[2026-06-19 10:13:30,050.050 INFO    ] 200
[2026-06-19 10:13:30,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:30,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:13:30,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:30,138.138 INFO    ] No camera update needed
[2026-06-19 10:13:30,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:13:30,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:13:30,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:13:30,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:13:32,197.197 INFO    ] ================================================
[2026-06-19 10:13:32,213.213 INFO    ] Launching Daemon at Fri Jun 19 10:13:32 IST 2026
[2026-06-19 10:13:32,230.230 INFO    ] ================================================
[2026-06-19 10:13:32,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:13:32
[2026-06-19 10:13:33,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:13:33,689.689 INFO    ] Initializing speech engine...
[2026-06-19 10:13:33,698.698 INFO    ] 2026-06-19 10:13:33
[2026-06-19 10:13:33,988.988 INFO    ] 2026-06-19 10:13:33
[2026-06-19 10:13:34,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:13:34,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:13:34,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:13:34,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:13:34,400.400 INFO    ] time= 19/06/2026 10:13:34
[2026-06-19 10:13:34,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:13:34,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:13:34,487.487 INFO    ] No existing commands found in stream
[2026-06-19 10:13:39,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:13:39,506.506 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 10:13:42,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:13:42,265.265 INFO    ] Checking for system updates...
[2026-06-19 10:13:42,301.301 INFO    ] 200
[2026-06-19 10:13:42,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:42,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:42,357.357 INFO    ] No update needed
[2026-06-19 10:13:42,359.359 INFO    ] Checking for camera pi updates...
[2026-06-19 10:13:42,394.394 INFO    ] 200
[2026-06-19 10:13:42,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:42,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:13:42,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:42,481.481 INFO    ] No camera update needed
[2026-06-19 10:13:42,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:13:42,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:13:42,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:13:42,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:13:44,538.538 INFO    ] ================================================
[2026-06-19 10:13:44,553.553 INFO    ] Launching Daemon at Fri Jun 19 10:13:44 IST 2026
[2026-06-19 10:13:44,564.564 INFO    ] ================================================
[2026-06-19 10:13:45,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:13:45
[2026-06-19 10:13:45,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:13:46,067.067 INFO    ] Initializing speech engine...
[2026-06-19 10:13:46,085.085 INFO    ] 2026-06-19 10:13:46
[2026-06-19 10:13:46,335.335 INFO    ] 2026-06-19 10:13:46
[2026-06-19 10:13:46,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:13:46,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:13:46,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:13:46,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:13:46,816.816 INFO    ] time= 19/06/2026 10:13:46
[2026-06-19 10:13:46,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:13:46,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:13:47,058.058 INFO    ] No existing commands found in stream
[2026-06-19 10:13:52,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:13:52,076.076 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 10:13:55,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:13:55,622.622 INFO    ] Checking for system updates...
[2026-06-19 10:13:55,658.658 INFO    ] 200
[2026-06-19 10:13:55,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:55,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:55,719.719 INFO    ] No update needed
[2026-06-19 10:13:55,721.721 INFO    ] Checking for camera pi updates...
[2026-06-19 10:13:55,755.755 INFO    ] 200
[2026-06-19 10:13:55,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:13:55,797.797 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:13:55,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:13:55,843.843 INFO    ] No camera update needed
[2026-06-19 10:13:55,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:13:55,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:13:55,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:13:55,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:13:57,899.899 INFO    ] ================================================
[2026-06-19 10:13:57,915.915 INFO    ] Launching Daemon at Fri Jun 19 10:13:57 IST 2026
[2026-06-19 10:13:57,926.926 INFO    ] ================================================
[2026-06-19 10:13:58,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:13:58
[2026-06-19 10:13:59,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:13:59,535.535 INFO    ] Initializing speech engine...
[2026-06-19 10:13:59,546.546 INFO    ] 2026-06-19 10:13:59
[2026-06-19 10:13:59,827.827 INFO    ] 2026-06-19 10:13:59
[2026-06-19 10:13:59,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:14:00,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:14:00,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:14:00,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:14:00,362.362 INFO    ] time= 19/06/2026 10:14:00
[2026-06-19 10:14:00,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:14:00,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:14:00,520.520 INFO    ] No existing commands found in stream
[2026-06-19 10:14:05,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:14:05,567.567 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 10:14:06,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:14:06,893.893 INFO    ] Checking for system updates...
[2026-06-19 10:14:06,929.929 INFO    ] 200
[2026-06-19 10:14:06,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:06,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:14:06,988.988 INFO    ] No update needed
[2026-06-19 10:14:06,990.990 INFO    ] Checking for camera pi updates...
[2026-06-19 10:14:07,025.025 INFO    ] 200
[2026-06-19 10:14:07,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:07,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:14:07,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:14:07,220.220 INFO    ] No camera update needed
[2026-06-19 10:14:07,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:14:07,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:14:07,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:14:07,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:14:09,276.276 INFO    ] ================================================
[2026-06-19 10:14:09,291.291 INFO    ] Launching Daemon at Fri Jun 19 10:14:09 IST 2026
[2026-06-19 10:14:09,302.302 INFO    ] ================================================
[2026-06-19 10:14:09,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:14:09
[2026-06-19 10:14:10,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:14:10,764.764 INFO    ] Initializing speech engine...
[2026-06-19 10:14:10,772.772 INFO    ] 2026-06-19 10:14:10
[2026-06-19 10:14:11,030.030 INFO    ] 2026-06-19 10:14:11
[2026-06-19 10:14:11,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:14:11,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:14:11,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:14:11,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:14:11,515.515 INFO    ] time= 19/06/2026 10:14:11
[2026-06-19 10:14:11,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:14:11,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:14:11,729.729 INFO    ] No existing commands found in stream
[2026-06-19 10:14:16,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:14:16,745.745 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 10:14:18,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:14:18,054.054 INFO    ] Checking for system updates...
[2026-06-19 10:14:18,090.090 INFO    ] 200
[2026-06-19 10:14:18,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:18,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:14:18,149.149 INFO    ] No update needed
[2026-06-19 10:14:18,151.151 INFO    ] Checking for camera pi updates...
[2026-06-19 10:14:18,186.186 INFO    ] 200
[2026-06-19 10:14:18,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:18,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:14:18,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:14:18,291.291 INFO    ] No camera update needed
[2026-06-19 10:14:18,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:14:18,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:14:18,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:14:18,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:14:20,349.349 INFO    ] ================================================
[2026-06-19 10:14:20,364.364 INFO    ] Launching Daemon at Fri Jun 19 10:14:20 IST 2026
[2026-06-19 10:14:20,376.376 INFO    ] ================================================
[2026-06-19 10:14:20,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:14:20
[2026-06-19 10:14:21,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:14:21,825.825 INFO    ] Initializing speech engine...
[2026-06-19 10:14:21,833.833 INFO    ] 2026-06-19 10:14:21
[2026-06-19 10:14:22,105.105 INFO    ] 2026-06-19 10:14:22
[2026-06-19 10:14:22,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:14:22,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:14:22,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:14:22,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:14:22,638.638 INFO    ] time= 19/06/2026 10:14:22
[2026-06-19 10:14:22,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:14:22,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:14:22,802.802 INFO    ] No existing commands found in stream
[2026-06-19 10:14:27,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:14:27,834.834 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 10:14:28,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:14:28,368.368 INFO    ] Checking for system updates...
[2026-06-19 10:14:28,404.404 INFO    ] 200
[2026-06-19 10:14:28,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:28,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:14:28,466.466 INFO    ] No update needed
[2026-06-19 10:14:28,468.468 INFO    ] Checking for camera pi updates...
[2026-06-19 10:14:28,501.501 INFO    ] 200
[2026-06-19 10:14:28,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:28,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:14:28,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:14:28,590.590 INFO    ] No camera update needed
[2026-06-19 10:14:28,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:14:28,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:14:28,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:14:28,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:14:30,645.645 INFO    ] ================================================
[2026-06-19 10:14:30,661.661 INFO    ] Launching Daemon at Fri Jun 19 10:14:30 IST 2026
[2026-06-19 10:14:30,672.672 INFO    ] ================================================
[2026-06-19 10:14:31,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:14:31
[2026-06-19 10:14:31,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:14:32,124.124 INFO    ] Initializing speech engine...
[2026-06-19 10:14:32,134.134 INFO    ] 2026-06-19 10:14:32
[2026-06-19 10:14:32,405.405 INFO    ] 2026-06-19 10:14:32
[2026-06-19 10:14:32,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:14:32,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:14:32,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:14:32,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:14:32,798.798 INFO    ] time= 19/06/2026 10:14:32
[2026-06-19 10:14:32,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:14:32,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:14:32,992.992 INFO    ] No existing commands found in stream
[2026-06-19 10:14:38,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:14:38,015.015 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 10:14:39,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:14:39,903.903 INFO    ] Checking for system updates...
[2026-06-19 10:14:39,939.939 INFO    ] 200
[2026-06-19 10:14:39,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:40,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:14:40,003.003 INFO    ] No update needed
[2026-06-19 10:14:40,005.005 INFO    ] Checking for camera pi updates...
[2026-06-19 10:14:40,039.039 INFO    ] 200
[2026-06-19 10:14:40,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:40,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:14:40,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:14:40,124.124 INFO    ] No camera update needed
[2026-06-19 10:14:40,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:14:40,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:14:40,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:14:40,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:14:42,180.180 INFO    ] ================================================
[2026-06-19 10:14:42,195.195 INFO    ] Launching Daemon at Fri Jun 19 10:14:42 IST 2026
[2026-06-19 10:14:42,207.207 INFO    ] ================================================
[2026-06-19 10:14:42,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:14:42
[2026-06-19 10:14:43,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:14:43,672.672 INFO    ] Initializing speech engine...
[2026-06-19 10:14:43,681.681 INFO    ] 2026-06-19 10:14:43
[2026-06-19 10:14:43,941.941 INFO    ] 2026-06-19 10:14:43
[2026-06-19 10:14:43,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:14:44,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:14:44,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:14:44,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:14:44,483.483 INFO    ] time= 19/06/2026 10:14:44
[2026-06-19 10:14:44,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:14:44,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:14:44,642.642 INFO    ] No existing commands found in stream
[2026-06-19 10:14:49,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:14:49,668.668 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 10:14:51,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:14:51,065.065 INFO    ] Checking for system updates...
[2026-06-19 10:14:51,101.101 INFO    ] 200
[2026-06-19 10:14:51,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:51,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:14:51,159.159 INFO    ] No update needed
[2026-06-19 10:14:51,161.161 INFO    ] Checking for camera pi updates...
[2026-06-19 10:14:51,198.198 INFO    ] 200
[2026-06-19 10:14:51,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:14:51,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:14:51,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:14:51,282.282 INFO    ] No camera update needed
[2026-06-19 10:14:51,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:14:51,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:14:51,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:14:51,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:14:53,340.340 INFO    ] ================================================
[2026-06-19 10:14:53,355.355 INFO    ] Launching Daemon at Fri Jun 19 10:14:53 IST 2026
[2026-06-19 10:14:53,367.367 INFO    ] ================================================
[2026-06-19 10:14:53,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:14:53
[2026-06-19 10:14:54,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:14:54,891.891 INFO    ] Initializing speech engine...
[2026-06-19 10:14:54,901.901 INFO    ] 2026-06-19 10:14:54
[2026-06-19 10:14:55,161.161 INFO    ] 2026-06-19 10:14:55
[2026-06-19 10:14:55,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:14:55,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:14:55,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:14:55,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:14:55,612.612 INFO    ] time= 19/06/2026 10:14:55
[2026-06-19 10:14:55,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:14:55,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:14:55,864.864 INFO    ] No existing commands found in stream
[2026-06-19 10:15:00,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:15:00,882.882 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 10:15:03,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:15:03,107.107 INFO    ] Checking for system updates...
[2026-06-19 10:15:03,150.150 INFO    ] 200
[2026-06-19 10:15:03,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:03,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:15:03,219.219 INFO    ] No update needed
[2026-06-19 10:15:03,222.222 INFO    ] Checking for camera pi updates...
[2026-06-19 10:15:03,263.263 INFO    ] 200
[2026-06-19 10:15:03,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:03,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:15:03,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:15:03,376.376 INFO    ] No camera update needed
[2026-06-19 10:15:03,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:15:03,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:15:03,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:15:03,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:15:05,441.441 INFO    ] ================================================
[2026-06-19 10:15:05,459.459 INFO    ] Launching Daemon at Fri Jun 19 10:15:05 IST 2026
[2026-06-19 10:15:05,472.472 INFO    ] ================================================
[2026-06-19 10:15:06,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:15:06
[2026-06-19 10:15:06,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:15:07,022.022 INFO    ] Initializing speech engine...
[2026-06-19 10:15:07,046.046 INFO    ] 2026-06-19 10:15:07
[2026-06-19 10:15:07,347.347 INFO    ] 2026-06-19 10:15:07
[2026-06-19 10:15:07,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:15:07,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:15:07,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:15:07,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:15:07,868.868 INFO    ] time= 19/06/2026 10:15:07
[2026-06-19 10:15:07,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:15:07,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:15:08,120.120 INFO    ] No existing commands found in stream
[2026-06-19 10:15:13,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:15:13,139.139 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 10:15:13,645.645 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:15:13,648.648 INFO    ] Checking for system updates...
[2026-06-19 10:15:13,687.687 INFO    ] 200
[2026-06-19 10:15:13,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:13,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:15:13,747.747 INFO    ] No update needed
[2026-06-19 10:15:13,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 10:15:13,788.788 INFO    ] 200
[2026-06-19 10:15:13,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:13,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:15:13,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:15:13,886.886 INFO    ] No camera update needed
[2026-06-19 10:15:13,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:15:13,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:15:13,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:15:13,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:15:15,944.944 INFO    ] ================================================
[2026-06-19 10:15:15,960.960 INFO    ] Launching Daemon at Fri Jun 19 10:15:15 IST 2026
[2026-06-19 10:15:15,971.971 INFO    ] ================================================
[2026-06-19 10:15:16,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:15:16
[2026-06-19 10:15:17,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:15:17,434.434 INFO    ] Initializing speech engine...
[2026-06-19 10:15:17,441.441 INFO    ] 2026-06-19 10:15:17
[2026-06-19 10:15:17,719.719 INFO    ] 2026-06-19 10:15:17
[2026-06-19 10:15:17,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:15:18,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:15:18,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:15:18,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:15:18,250.250 INFO    ] time= 19/06/2026 10:15:18
[2026-06-19 10:15:18,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:15:18,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:15:18,436.436 INFO    ] No existing commands found in stream
[2026-06-19 10:15:23,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:15:23,471.471 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 10:15:25,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:15:25,585.585 INFO    ] Checking for system updates...
[2026-06-19 10:15:25,620.620 INFO    ] 200
[2026-06-19 10:15:25,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:25,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:15:25,678.678 INFO    ] No update needed
[2026-06-19 10:15:25,680.680 INFO    ] Checking for camera pi updates...
[2026-06-19 10:15:25,715.715 INFO    ] 200
[2026-06-19 10:15:25,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:25,759.759 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:15:25,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:15:25,816.816 INFO    ] No camera update needed
[2026-06-19 10:15:25,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:15:25,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:15:25,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:15:25,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:15:27,870.870 INFO    ] ================================================
[2026-06-19 10:15:27,886.886 INFO    ] Launching Daemon at Fri Jun 19 10:15:27 IST 2026
[2026-06-19 10:15:27,897.897 INFO    ] ================================================
[2026-06-19 10:15:28,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:15:28
[2026-06-19 10:15:29,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:15:29,339.339 INFO    ] Initializing speech engine...
[2026-06-19 10:15:29,362.362 INFO    ] 2026-06-19 10:15:29
[2026-06-19 10:15:29,618.618 INFO    ] 2026-06-19 10:15:29
[2026-06-19 10:15:29,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:15:29,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:15:29,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:15:30,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:15:30,106.106 INFO    ] time= 19/06/2026 10:15:30
[2026-06-19 10:15:30,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:15:30,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:15:30,337.337 INFO    ] No existing commands found in stream
[2026-06-19 10:15:35,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:15:35,362.362 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 10:15:37,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:15:37,959.959 INFO    ] Checking for system updates...
[2026-06-19 10:15:37,996.996 INFO    ] 200
[2026-06-19 10:15:37,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:38,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:15:38,052.052 INFO    ] No update needed
[2026-06-19 10:15:38,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 10:15:38,088.088 INFO    ] 200
[2026-06-19 10:15:38,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:38,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:15:38,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:15:38,174.174 INFO    ] No camera update needed
[2026-06-19 10:15:38,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:15:38,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:15:38,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:15:38,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:15:40,229.229 INFO    ] ================================================
[2026-06-19 10:15:40,245.245 INFO    ] Launching Daemon at Fri Jun 19 10:15:40 IST 2026
[2026-06-19 10:15:40,256.256 INFO    ] ================================================
[2026-06-19 10:15:40,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:15:40
[2026-06-19 10:15:41,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:15:41,768.768 INFO    ] Initializing speech engine...
[2026-06-19 10:15:41,776.776 INFO    ] 2026-06-19 10:15:41
[2026-06-19 10:15:42,035.035 INFO    ] 2026-06-19 10:15:42
[2026-06-19 10:15:42,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:15:42,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:15:42,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:15:42,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:15:42,452.452 INFO    ] time= 19/06/2026 10:15:42
[2026-06-19 10:15:42,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:15:42,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:15:42,541.541 INFO    ] No existing commands found in stream
[2026-06-19 10:15:47,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:15:47,559.559 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 10:15:50,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:15:50,386.386 INFO    ] Checking for system updates...
[2026-06-19 10:15:50,422.422 INFO    ] 200
[2026-06-19 10:15:50,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:50,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:15:50,482.482 INFO    ] No update needed
[2026-06-19 10:15:50,485.485 INFO    ] Checking for camera pi updates...
[2026-06-19 10:15:50,519.519 INFO    ] 200
[2026-06-19 10:15:50,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:15:50,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:15:50,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:15:50,593.593 INFO    ] No camera update needed
[2026-06-19 10:15:50,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:15:50,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:15:50,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:15:50,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:15:52,649.649 INFO    ] ================================================
[2026-06-19 10:15:52,664.664 INFO    ] Launching Daemon at Fri Jun 19 10:15:52 IST 2026
[2026-06-19 10:15:52,674.674 INFO    ] ================================================
[2026-06-19 10:15:53,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:15:53
[2026-06-19 10:15:53,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:15:54,286.286 INFO    ] Initializing speech engine...
[2026-06-19 10:15:54,302.302 INFO    ] 2026-06-19 10:15:54
[2026-06-19 10:15:54,572.572 INFO    ] 2026-06-19 10:15:54
[2026-06-19 10:15:54,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:15:54,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:15:54,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:15:55,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:15:55,123.123 INFO    ] time= 19/06/2026 10:15:55
[2026-06-19 10:15:55,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:15:55,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:15:55,278.278 INFO    ] No existing commands found in stream
[2026-06-19 10:16:00,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:16:00,301.301 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 10:16:04,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:16:04,485.485 INFO    ] Checking for system updates...
[2026-06-19 10:16:04,522.522 INFO    ] 200
[2026-06-19 10:16:04,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:04,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:16:04,582.582 INFO    ] No update needed
[2026-06-19 10:16:04,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 10:16:04,620.620 INFO    ] 200
[2026-06-19 10:16:04,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:04,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:16:04,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:16:04,718.718 INFO    ] No camera update needed
[2026-06-19 10:16:04,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:16:04,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:16:04,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:16:04,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:16:06,778.778 INFO    ] ================================================
[2026-06-19 10:16:06,793.793 INFO    ] Launching Daemon at Fri Jun 19 10:16:06 IST 2026
[2026-06-19 10:16:06,804.804 INFO    ] ================================================
[2026-06-19 10:16:07,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:16:07
[2026-06-19 10:16:07,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:16:08,232.232 INFO    ] Initializing speech engine...
[2026-06-19 10:16:08,244.244 INFO    ] 2026-06-19 10:16:08
[2026-06-19 10:16:08,498.498 INFO    ] 2026-06-19 10:16:08
[2026-06-19 10:16:08,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:16:08,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:16:08,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:16:08,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:16:08,988.988 INFO    ] time= 19/06/2026 10:16:08
[2026-06-19 10:16:09,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:16:09,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:16:09,221.221 INFO    ] No existing commands found in stream
[2026-06-19 10:16:14,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:16:14,246.246 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 10:16:17,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:16:17,202.202 INFO    ] Checking for system updates...
[2026-06-19 10:16:17,238.238 INFO    ] 200
[2026-06-19 10:16:17,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:17,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:16:17,296.296 INFO    ] No update needed
[2026-06-19 10:16:17,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 10:16:17,332.332 INFO    ] 200
[2026-06-19 10:16:17,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:17,379.379 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:16:17,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:16:17,532.532 INFO    ] No camera update needed
[2026-06-19 10:16:17,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:16:17,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:16:17,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:16:17,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:16:19,589.589 INFO    ] ================================================
[2026-06-19 10:16:19,606.606 INFO    ] Launching Daemon at Fri Jun 19 10:16:19 IST 2026
[2026-06-19 10:16:19,617.617 INFO    ] ================================================
[2026-06-19 10:16:20,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:16:20
[2026-06-19 10:16:20,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:16:21,192.192 INFO    ] Initializing speech engine...
[2026-06-19 10:16:21,201.201 INFO    ] 2026-06-19 10:16:21
[2026-06-19 10:16:21,463.463 INFO    ] 2026-06-19 10:16:21
[2026-06-19 10:16:21,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:16:21,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:16:21,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:16:21,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:16:21,929.929 INFO    ] time= 19/06/2026 10:16:21
[2026-06-19 10:16:21,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:16:22,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:16:22,149.149 INFO    ] No existing commands found in stream
[2026-06-19 10:16:27,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:16:27,179.179 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 10:16:29,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:16:29,373.373 INFO    ] Checking for system updates...
[2026-06-19 10:16:29,410.410 INFO    ] 200
[2026-06-19 10:16:29,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:29,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:16:29,484.484 INFO    ] No update needed
[2026-06-19 10:16:29,487.487 INFO    ] Checking for camera pi updates...
[2026-06-19 10:16:29,522.522 INFO    ] 200
[2026-06-19 10:16:29,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:29,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:16:29,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:16:29,614.614 INFO    ] No camera update needed
[2026-06-19 10:16:29,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:16:29,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:16:29,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:16:29,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:16:31,675.675 INFO    ] ================================================
[2026-06-19 10:16:31,690.690 INFO    ] Launching Daemon at Fri Jun 19 10:16:31 IST 2026
[2026-06-19 10:16:31,701.701 INFO    ] ================================================
[2026-06-19 10:16:32,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:16:32
[2026-06-19 10:16:33,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:16:33,433.433 INFO    ] Initializing speech engine...
[2026-06-19 10:16:33,446.446 INFO    ] 2026-06-19 10:16:33
[2026-06-19 10:16:33,725.725 INFO    ] 2026-06-19 10:16:33
[2026-06-19 10:16:33,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:16:34,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:16:34,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:16:34,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:16:34,270.270 INFO    ] time= 19/06/2026 10:16:34
[2026-06-19 10:16:34,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:16:34,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:16:34,451.451 INFO    ] No existing commands found in stream
[2026-06-19 10:16:39,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:16:39,490.490 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 10:16:39,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:16:39,940.940 INFO    ] Checking for system updates...
[2026-06-19 10:16:39,978.978 INFO    ] 200
[2026-06-19 10:16:39,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:40,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:16:40,038.038 INFO    ] No update needed
[2026-06-19 10:16:40,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 10:16:40,076.076 INFO    ] 200
[2026-06-19 10:16:40,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:40,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:16:40,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:16:40,171.171 INFO    ] No camera update needed
[2026-06-19 10:16:40,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:16:40,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:16:40,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:16:40,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:16:42,231.231 INFO    ] ================================================
[2026-06-19 10:16:42,247.247 INFO    ] Launching Daemon at Fri Jun 19 10:16:42 IST 2026
[2026-06-19 10:16:42,258.258 INFO    ] ================================================
[2026-06-19 10:16:42,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:16:42
[2026-06-19 10:16:43,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:16:43,925.925 INFO    ] Initializing speech engine...
[2026-06-19 10:16:43,938.938 INFO    ] 2026-06-19 10:16:43
[2026-06-19 10:16:44,251.251 INFO    ] 2026-06-19 10:16:44
[2026-06-19 10:16:44,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:16:44,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:16:44,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:16:44,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:16:44,761.761 INFO    ] time= 19/06/2026 10:16:44
[2026-06-19 10:16:44,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:16:44,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:16:44,916.916 INFO    ] No existing commands found in stream
[2026-06-19 10:16:49,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:16:49,941.941 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 10:16:51,121.121 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:16:51,124.124 INFO    ] Checking for system updates...
[2026-06-19 10:16:51,166.166 INFO    ] 200
[2026-06-19 10:16:51,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:51,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:16:51,235.235 INFO    ] No update needed
[2026-06-19 10:16:51,238.238 INFO    ] Checking for camera pi updates...
[2026-06-19 10:16:51,274.274 INFO    ] 200
[2026-06-19 10:16:51,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:16:51,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:16:51,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:16:51,360.360 INFO    ] No camera update needed
[2026-06-19 10:16:51,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:16:51,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:16:51,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:16:51,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:16:53,424.424 INFO    ] ================================================
[2026-06-19 10:16:53,439.439 INFO    ] Launching Daemon at Fri Jun 19 10:16:53 IST 2026
[2026-06-19 10:16:53,449.449 INFO    ] ================================================
[2026-06-19 10:16:54,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:16:54
[2026-06-19 10:16:54,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:16:54,866.866 INFO    ] Initializing speech engine...
[2026-06-19 10:16:54,885.885 INFO    ] 2026-06-19 10:16:54
[2026-06-19 10:16:55,136.136 INFO    ] 2026-06-19 10:16:55
[2026-06-19 10:16:55,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:16:55,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:16:55,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:16:55,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:16:55,619.619 INFO    ] time= 19/06/2026 10:16:55
[2026-06-19 10:16:55,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:16:55,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:16:55,845.845 INFO    ] No existing commands found in stream
[2026-06-19 10:17:00,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:17:00,873.873 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 10:17:01,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:17:01,821.821 INFO    ] Checking for system updates...
[2026-06-19 10:17:01,923.923 INFO    ] 200
[2026-06-19 10:17:01,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:02,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:17:02,047.047 INFO    ] No update needed
[2026-06-19 10:17:02,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 10:17:02,100.100 INFO    ] 200
[2026-06-19 10:17:02,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:02,196.196 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:17:02,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:17:02,238.238 INFO    ] No camera update needed
[2026-06-19 10:17:02,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:17:02,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:17:02,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:17:02,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:17:04,313.313 INFO    ] ================================================
[2026-06-19 10:17:04,329.329 INFO    ] Launching Daemon at Fri Jun 19 10:17:04 IST 2026
[2026-06-19 10:17:04,341.341 INFO    ] ================================================
[2026-06-19 10:17:04,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:17:04
[2026-06-19 10:17:05,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:17:05,771.771 INFO    ] Initializing speech engine...
[2026-06-19 10:17:05,777.777 INFO    ] 2026-06-19 10:17:05
[2026-06-19 10:17:06,039.039 INFO    ] 2026-06-19 10:17:06
[2026-06-19 10:17:06,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:17:06,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:17:06,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:17:06,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:17:06,529.529 INFO    ] time= 19/06/2026 10:17:06
[2026-06-19 10:17:06,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:17:06,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:17:06,737.737 INFO    ] No existing commands found in stream
[2026-06-19 10:17:11,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:17:11,752.752 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 10:17:12,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:17:12,523.523 INFO    ] Checking for system updates...
[2026-06-19 10:17:12,559.559 INFO    ] 200
[2026-06-19 10:17:12,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:12,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:17:12,624.624 INFO    ] No update needed
[2026-06-19 10:17:12,626.626 INFO    ] Checking for camera pi updates...
[2026-06-19 10:17:12,660.660 INFO    ] 200
[2026-06-19 10:17:12,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:12,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:17:12,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:17:12,749.749 INFO    ] No camera update needed
[2026-06-19 10:17:12,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:17:12,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:17:12,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:17:12,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:17:14,814.814 INFO    ] ================================================
[2026-06-19 10:17:14,830.830 INFO    ] Launching Daemon at Fri Jun 19 10:17:14 IST 2026
[2026-06-19 10:17:14,841.841 INFO    ] ================================================
[2026-06-19 10:17:15,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:17:15
[2026-06-19 10:17:16,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:17:16,371.371 INFO    ] Initializing speech engine...
[2026-06-19 10:17:16,378.378 INFO    ] 2026-06-19 10:17:16
[2026-06-19 10:17:16,622.622 INFO    ] 2026-06-19 10:17:16
[2026-06-19 10:17:16,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:17:16,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:17:16,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:17:17,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:17:17,176.176 INFO    ] time= 19/06/2026 10:17:17
[2026-06-19 10:17:17,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:17:17,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:17:17,320.320 INFO    ] No existing commands found in stream
[2026-06-19 10:17:22,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:17:22,343.343 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 10:17:25,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:17:25,911.911 INFO    ] Checking for system updates...
[2026-06-19 10:17:25,948.948 INFO    ] 200
[2026-06-19 10:17:25,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:26,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:17:26,011.011 INFO    ] No update needed
[2026-06-19 10:17:26,014.014 INFO    ] Checking for camera pi updates...
[2026-06-19 10:17:26,052.052 INFO    ] 200
[2026-06-19 10:17:26,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:26,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:17:26,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:17:26,141.141 INFO    ] No camera update needed
[2026-06-19 10:17:26,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:17:26,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:17:26,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:17:26,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:17:28,200.200 INFO    ] ================================================
[2026-06-19 10:17:28,215.215 INFO    ] Launching Daemon at Fri Jun 19 10:17:28 IST 2026
[2026-06-19 10:17:28,225.225 INFO    ] ================================================
[2026-06-19 10:17:28,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:17:28
[2026-06-19 10:17:29,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:17:29,683.683 INFO    ] Initializing speech engine...
[2026-06-19 10:17:29,692.692 INFO    ] 2026-06-19 10:17:29
[2026-06-19 10:17:29,953.953 INFO    ] 2026-06-19 10:17:29
[2026-06-19 10:17:29,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:17:30,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:17:30,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:17:30,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:17:30,418.418 INFO    ] time= 19/06/2026 10:17:30
[2026-06-19 10:17:30,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:17:30,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:17:30,644.644 INFO    ] No existing commands found in stream
[2026-06-19 10:17:35,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:17:35,669.669 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 10:17:42,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:17:42,484.484 INFO    ] Checking for system updates...
[2026-06-19 10:17:42,520.520 INFO    ] 200
[2026-06-19 10:17:42,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:42,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:17:42,578.578 INFO    ] No update needed
[2026-06-19 10:17:42,580.580 INFO    ] Checking for camera pi updates...
[2026-06-19 10:17:42,614.614 INFO    ] 200
[2026-06-19 10:17:42,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:42,657.657 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:17:42,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:17:42,710.710 INFO    ] No camera update needed
[2026-06-19 10:17:42,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:17:42,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:17:42,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:17:42,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:17:44,767.767 INFO    ] ================================================
[2026-06-19 10:17:44,782.782 INFO    ] Launching Daemon at Fri Jun 19 10:17:44 IST 2026
[2026-06-19 10:17:44,793.793 INFO    ] ================================================
[2026-06-19 10:17:45,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:17:45
[2026-06-19 10:17:46,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:17:46,322.322 INFO    ] Initializing speech engine...
[2026-06-19 10:17:46,330.330 INFO    ] 2026-06-19 10:17:46
[2026-06-19 10:17:46,581.581 INFO    ] 2026-06-19 10:17:46
[2026-06-19 10:17:46,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:17:46,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:17:46,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:17:47,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:17:47,071.071 INFO    ] time= 19/06/2026 10:17:47
[2026-06-19 10:17:47,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:17:47,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:17:47,298.298 INFO    ] No existing commands found in stream
[2026-06-19 10:17:52,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:17:52,321.321 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 10:17:53,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:17:53,169.169 INFO    ] Checking for system updates...
[2026-06-19 10:17:53,206.206 INFO    ] 200
[2026-06-19 10:17:53,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:53,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:17:53,269.269 INFO    ] No update needed
[2026-06-19 10:17:53,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 10:17:53,309.309 INFO    ] 200
[2026-06-19 10:17:53,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:17:53,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:17:53,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:17:53,393.393 INFO    ] No camera update needed
[2026-06-19 10:17:53,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:17:53,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:17:53,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:17:53,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:17:55,449.449 INFO    ] ================================================
[2026-06-19 10:17:55,464.464 INFO    ] Launching Daemon at Fri Jun 19 10:17:55 IST 2026
[2026-06-19 10:17:55,475.475 INFO    ] ================================================
[2026-06-19 10:17:56,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:17:56
[2026-06-19 10:17:56,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:17:56,892.892 INFO    ] Initializing speech engine...
[2026-06-19 10:17:56,914.914 INFO    ] 2026-06-19 10:17:56
[2026-06-19 10:17:57,171.171 INFO    ] 2026-06-19 10:17:57
[2026-06-19 10:17:57,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:17:57,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:17:57,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:17:57,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:17:57,549.549 INFO    ] time= 19/06/2026 10:17:57
[2026-06-19 10:17:57,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:17:57,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:17:57,742.742 INFO    ] No existing commands found in stream
[2026-06-19 10:18:02,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:18:02,761.761 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 10:18:05,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:18:05,100.100 INFO    ] Checking for system updates...
[2026-06-19 10:18:05,137.137 INFO    ] 200
[2026-06-19 10:18:05,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:05,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:18:05,195.195 INFO    ] No update needed
[2026-06-19 10:18:05,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 10:18:05,232.232 INFO    ] 200
[2026-06-19 10:18:05,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:05,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:18:05,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:18:05,319.319 INFO    ] No camera update needed
[2026-06-19 10:18:05,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:18:05,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:18:05,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:18:05,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:18:07,376.376 INFO    ] ================================================
[2026-06-19 10:18:07,391.391 INFO    ] Launching Daemon at Fri Jun 19 10:18:07 IST 2026
[2026-06-19 10:18:07,402.402 INFO    ] ================================================
[2026-06-19 10:18:08,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:18:08
[2026-06-19 10:18:08,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:18:08,968.968 INFO    ] Initializing speech engine...
[2026-06-19 10:18:08,976.976 INFO    ] 2026-06-19 10:18:08
[2026-06-19 10:18:09,261.261 INFO    ] 2026-06-19 10:18:09
[2026-06-19 10:18:09,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:18:09,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:18:09,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:18:09,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:18:09,798.798 INFO    ] time= 19/06/2026 10:18:09
[2026-06-19 10:18:09,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:18:09,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:18:09,948.948 INFO    ] No existing commands found in stream
[2026-06-19 10:18:14,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:18:14,969.969 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-19 10:18:18,331.331 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:18:18,334.334 INFO    ] Checking for system updates...
[2026-06-19 10:18:18,371.371 INFO    ] 200
[2026-06-19 10:18:18,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:18,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:18:18,439.439 INFO    ] No update needed
[2026-06-19 10:18:18,441.441 INFO    ] Checking for camera pi updates...
[2026-06-19 10:18:18,476.476 INFO    ] 200
[2026-06-19 10:18:18,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:18,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:18:18,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:18:18,563.563 INFO    ] No camera update needed
[2026-06-19 10:18:18,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:18:18,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:18:18,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:18:18,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:18:20,620.620 INFO    ] ================================================
[2026-06-19 10:18:20,635.635 INFO    ] Launching Daemon at Fri Jun 19 10:18:20 IST 2026
[2026-06-19 10:18:20,646.646 INFO    ] ================================================
[2026-06-19 10:18:21,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:18:21
[2026-06-19 10:18:21,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:18:22,109.109 INFO    ] Initializing speech engine...
[2026-06-19 10:18:22,119.119 INFO    ] 2026-06-19 10:18:22
[2026-06-19 10:18:22,378.378 INFO    ] 2026-06-19 10:18:22
[2026-06-19 10:18:22,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:18:22,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:18:22,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:18:22,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:18:22,867.867 INFO    ] time= 19/06/2026 10:18:22
[2026-06-19 10:18:22,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:18:22,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:18:23,098.098 INFO    ] No existing commands found in stream
[2026-06-19 10:18:28,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:18:28,132.132 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 10:18:29,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:18:29,803.803 INFO    ] Checking for system updates...
[2026-06-19 10:18:29,839.839 INFO    ] 200
[2026-06-19 10:18:29,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:29,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:18:29,904.904 INFO    ] No update needed
[2026-06-19 10:18:29,907.907 INFO    ] Checking for camera pi updates...
[2026-06-19 10:18:29,941.941 INFO    ] 200
[2026-06-19 10:18:29,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:29,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:18:30,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:18:30,130.130 INFO    ] No camera update needed
[2026-06-19 10:18:30,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:18:30,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:18:30,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:18:30,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:18:32,188.188 INFO    ] ================================================
[2026-06-19 10:18:32,205.205 INFO    ] Launching Daemon at Fri Jun 19 10:18:32 IST 2026
[2026-06-19 10:18:32,217.217 INFO    ] ================================================
[2026-06-19 10:18:32,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:18:32
[2026-06-19 10:18:33,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:18:33,761.761 INFO    ] Initializing speech engine...
[2026-06-19 10:18:33,769.769 INFO    ] 2026-06-19 10:18:33
[2026-06-19 10:18:34,092.092 INFO    ] 2026-06-19 10:18:34
[2026-06-19 10:18:34,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:18:34,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:18:34,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:18:34,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:18:34,769.769 INFO    ] time= 19/06/2026 10:18:34
[2026-06-19 10:18:34,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:18:34,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:18:35,020.020 INFO    ] No existing commands found in stream
[2026-06-19 10:18:40,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:18:40,037.037 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 10:18:41,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:18:41,684.684 INFO    ] Checking for system updates...
[2026-06-19 10:18:41,722.722 INFO    ] 200
[2026-06-19 10:18:41,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:41,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:18:41,782.782 INFO    ] No update needed
[2026-06-19 10:18:41,785.785 INFO    ] Checking for camera pi updates...
[2026-06-19 10:18:41,819.819 INFO    ] 200
[2026-06-19 10:18:41,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:41,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:18:41,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:18:41,906.906 INFO    ] No camera update needed
[2026-06-19 10:18:41,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:18:41,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:18:41,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:18:41,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:18:43,961.961 INFO    ] ================================================
[2026-06-19 10:18:43,977.977 INFO    ] Launching Daemon at Fri Jun 19 10:18:43 IST 2026
[2026-06-19 10:18:43,987.987 INFO    ] ================================================
[2026-06-19 10:18:44,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:18:44
[2026-06-19 10:18:45,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:18:45,428.428 INFO    ] Initializing speech engine...
[2026-06-19 10:18:45,449.449 INFO    ] 2026-06-19 10:18:45
[2026-06-19 10:18:45,712.712 INFO    ] 2026-06-19 10:18:45
[2026-06-19 10:18:45,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:18:45,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:18:45,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:18:46,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:18:46,135.135 INFO    ] time= 19/06/2026 10:18:46
[2026-06-19 10:18:46,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:18:46,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:18:46,315.315 INFO    ] No existing commands found in stream
[2026-06-19 10:18:51,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:18:51,345.345 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 10:18:53,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:18:53,589.589 INFO    ] Checking for system updates...
[2026-06-19 10:18:53,627.627 INFO    ] 200
[2026-06-19 10:18:53,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:53,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:18:53,694.694 INFO    ] No update needed
[2026-06-19 10:18:53,697.697 INFO    ] Checking for camera pi updates...
[2026-06-19 10:18:53,732.732 INFO    ] 200
[2026-06-19 10:18:53,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:18:53,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:18:53,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:18:53,820.820 INFO    ] No camera update needed
[2026-06-19 10:18:53,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:18:53,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:18:53,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:18:53,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:18:55,879.879 INFO    ] ================================================
[2026-06-19 10:18:55,894.894 INFO    ] Launching Daemon at Fri Jun 19 10:18:55 IST 2026
[2026-06-19 10:18:55,905.905 INFO    ] ================================================
[2026-06-19 10:18:56,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:18:56
[2026-06-19 10:18:57,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:18:57,367.367 INFO    ] Initializing speech engine...
[2026-06-19 10:18:57,376.376 INFO    ] 2026-06-19 10:18:57
[2026-06-19 10:18:57,636.636 INFO    ] 2026-06-19 10:18:57
[2026-06-19 10:18:57,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:18:57,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:18:57,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:18:58,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:18:58,119.119 INFO    ] time= 19/06/2026 10:18:58
[2026-06-19 10:18:58,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:18:58,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:18:58,333.333 INFO    ] No existing commands found in stream
[2026-06-19 10:19:03,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:19:03,352.352 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 10:19:05,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:19:05,016.016 INFO    ] Checking for system updates...
[2026-06-19 10:19:05,058.058 INFO    ] 200
[2026-06-19 10:19:05,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:05,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:19:05,116.116 INFO    ] No update needed
[2026-06-19 10:19:05,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 10:19:05,154.154 INFO    ] 200
[2026-06-19 10:19:05,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:05,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:19:05,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:19:05,250.250 INFO    ] No camera update needed
[2026-06-19 10:19:05,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:19:05,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:19:05,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:19:05,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:19:07,307.307 INFO    ] ================================================
[2026-06-19 10:19:07,322.322 INFO    ] Launching Daemon at Fri Jun 19 10:19:07 IST 2026
[2026-06-19 10:19:07,332.332 INFO    ] ================================================
[2026-06-19 10:19:07,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:19:07
[2026-06-19 10:19:08,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:19:08,950.950 INFO    ] Initializing speech engine...
[2026-06-19 10:19:08,959.959 INFO    ] 2026-06-19 10:19:08
[2026-06-19 10:19:09,230.230 INFO    ] 2026-06-19 10:19:09
[2026-06-19 10:19:09,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:19:09,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:19:09,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:19:09,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:19:09,729.729 INFO    ] time= 19/06/2026 10:19:09
[2026-06-19 10:19:09,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:19:09,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:19:09,923.923 INFO    ] No existing commands found in stream
[2026-06-19 10:19:14,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:19:14,946.946 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 10:19:17,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:19:17,317.317 INFO    ] Checking for system updates...
[2026-06-19 10:19:17,356.356 INFO    ] 200
[2026-06-19 10:19:17,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:17,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:19:17,415.415 INFO    ] No update needed
[2026-06-19 10:19:17,418.418 INFO    ] Checking for camera pi updates...
[2026-06-19 10:19:17,457.457 INFO    ] 200
[2026-06-19 10:19:17,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:17,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:19:17,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:19:17,544.544 INFO    ] No camera update needed
[2026-06-19 10:19:17,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:19:17,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:19:17,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:19:17,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:19:19,602.602 INFO    ] ================================================
[2026-06-19 10:19:19,617.617 INFO    ] Launching Daemon at Fri Jun 19 10:19:19 IST 2026
[2026-06-19 10:19:19,628.628 INFO    ] ================================================
[2026-06-19 10:19:20,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:19:20
[2026-06-19 10:19:20,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:19:21,062.062 INFO    ] Initializing speech engine...
[2026-06-19 10:19:21,080.080 INFO    ] 2026-06-19 10:19:21
[2026-06-19 10:19:21,350.350 INFO    ] 2026-06-19 10:19:21
[2026-06-19 10:19:21,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:19:21,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:19:21,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:19:21,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:19:21,865.865 INFO    ] time= 19/06/2026 10:19:21
[2026-06-19 10:19:21,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:19:21,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:19:22,055.055 INFO    ] No existing commands found in stream
[2026-06-19 10:19:27,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:19:27,073.073 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 10:19:29,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:19:29,442.442 INFO    ] Checking for system updates...
[2026-06-19 10:19:29,480.480 INFO    ] 200
[2026-06-19 10:19:29,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:29,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:19:29,550.550 INFO    ] No update needed
[2026-06-19 10:19:29,552.552 INFO    ] Checking for camera pi updates...
[2026-06-19 10:19:29,591.591 INFO    ] 200
[2026-06-19 10:19:29,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:29,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:19:29,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:19:29,680.680 INFO    ] No camera update needed
[2026-06-19 10:19:29,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:19:29,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:19:29,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:19:29,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:19:31,738.738 INFO    ] ================================================
[2026-06-19 10:19:31,753.753 INFO    ] Launching Daemon at Fri Jun 19 10:19:31 IST 2026
[2026-06-19 10:19:31,764.764 INFO    ] ================================================
[2026-06-19 10:19:32,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:19:32
[2026-06-19 10:19:32,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:19:33,260.260 INFO    ] Initializing speech engine...
[2026-06-19 10:19:33,268.268 INFO    ] 2026-06-19 10:19:33
[2026-06-19 10:19:33,557.557 INFO    ] 2026-06-19 10:19:33
[2026-06-19 10:19:33,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:19:33,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:19:33,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:19:33,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:19:33,971.971 INFO    ] time= 19/06/2026 10:19:33
[2026-06-19 10:19:33,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:19:34,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:19:34,167.167 INFO    ] No existing commands found in stream
[2026-06-19 10:19:39,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:19:39,181.181 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 10:19:40,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:19:40,213.213 INFO    ] Checking for system updates...
[2026-06-19 10:19:40,253.253 INFO    ] 200
[2026-06-19 10:19:40,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:40,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:19:40,318.318 INFO    ] No update needed
[2026-06-19 10:19:40,320.320 INFO    ] Checking for camera pi updates...
[2026-06-19 10:19:40,355.355 INFO    ] 200
[2026-06-19 10:19:40,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:40,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:19:40,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:19:40,440.440 INFO    ] No camera update needed
[2026-06-19 10:19:40,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:19:40,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:19:40,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:19:40,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:19:42,495.495 INFO    ] ================================================
[2026-06-19 10:19:42,511.511 INFO    ] Launching Daemon at Fri Jun 19 10:19:42 IST 2026
[2026-06-19 10:19:42,521.521 INFO    ] ================================================
[2026-06-19 10:19:43,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:19:43
[2026-06-19 10:19:43,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:19:43,940.940 INFO    ] Initializing speech engine...
[2026-06-19 10:19:43,952.952 INFO    ] 2026-06-19 10:19:43
[2026-06-19 10:19:44,198.198 INFO    ] 2026-06-19 10:19:44
[2026-06-19 10:19:44,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:19:44,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:19:44,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:19:44,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:19:44,702.702 INFO    ] time= 19/06/2026 10:19:44
[2026-06-19 10:19:44,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:19:44,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:19:44,919.919 INFO    ] No existing commands found in stream
[2026-06-19 10:19:49,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:19:49,954.954 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 10:19:51,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:19:51,754.754 INFO    ] Checking for system updates...
[2026-06-19 10:19:51,791.791 INFO    ] 200
[2026-06-19 10:19:51,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:51,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:19:51,858.858 INFO    ] No update needed
[2026-06-19 10:19:51,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 10:19:51,896.896 INFO    ] 200
[2026-06-19 10:19:51,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:19:51,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:19:51,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:19:51,988.988 INFO    ] No camera update needed
[2026-06-19 10:19:51,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:19:51,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:19:52,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:19:52,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:19:54,048.048 INFO    ] ================================================
[2026-06-19 10:19:54,063.063 INFO    ] Launching Daemon at Fri Jun 19 10:19:54 IST 2026
[2026-06-19 10:19:54,074.074 INFO    ] ================================================
[2026-06-19 10:19:54,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:19:54
[2026-06-19 10:19:55,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:19:55,507.507 INFO    ] Initializing speech engine...
[2026-06-19 10:19:55,513.513 INFO    ] 2026-06-19 10:19:55
[2026-06-19 10:19:55,764.764 INFO    ] 2026-06-19 10:19:55
[2026-06-19 10:19:55,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:19:56,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:19:56,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:19:56,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:19:56,184.184 INFO    ] time= 19/06/2026 10:19:56
[2026-06-19 10:19:56,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:19:56,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:19:56,391.391 INFO    ] No existing commands found in stream
[2026-06-19 10:20:01,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:20:01,429.429 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 10:20:03,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:20:03,646.646 INFO    ] Checking for system updates...
[2026-06-19 10:20:03,685.685 INFO    ] 200
[2026-06-19 10:20:03,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:03,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:20:03,754.754 INFO    ] No update needed
[2026-06-19 10:20:03,757.757 INFO    ] Checking for camera pi updates...
[2026-06-19 10:20:03,793.793 INFO    ] 200
[2026-06-19 10:20:03,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:03,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:20:03,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:20:03,864.864 INFO    ] No camera update needed
[2026-06-19 10:20:03,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:20:03,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:20:03,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:20:03,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:20:05,922.922 INFO    ] ================================================
[2026-06-19 10:20:05,938.938 INFO    ] Launching Daemon at Fri Jun 19 10:20:05 IST 2026
[2026-06-19 10:20:05,949.949 INFO    ] ================================================
[2026-06-19 10:20:06,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:20:06
[2026-06-19 10:20:07,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:20:07,434.434 INFO    ] Initializing speech engine...
[2026-06-19 10:20:07,441.441 INFO    ] 2026-06-19 10:20:07
[2026-06-19 10:20:07,688.688 INFO    ] 2026-06-19 10:20:07
[2026-06-19 10:20:07,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:20:07,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:20:07,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:20:08,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:20:08,191.191 INFO    ] time= 19/06/2026 10:20:08
[2026-06-19 10:20:08,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:20:08,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:20:08,401.401 INFO    ] No existing commands found in stream
[2026-06-19 10:20:13,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:20:13,423.423 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 10:20:17,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:20:17,714.714 INFO    ] Checking for system updates...
[2026-06-19 10:20:17,751.751 INFO    ] 200
[2026-06-19 10:20:17,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:17,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:20:17,810.810 INFO    ] No update needed
[2026-06-19 10:20:17,812.812 INFO    ] Checking for camera pi updates...
[2026-06-19 10:20:17,846.846 INFO    ] 200
[2026-06-19 10:20:17,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:17,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:20:17,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:20:17,943.943 INFO    ] No camera update needed
[2026-06-19 10:20:17,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:20:17,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:20:17,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:20:17,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:20:20,999.999 INFO    ] ================================================
[2026-06-19 10:20:20,015.015 INFO    ] Launching Daemon at Fri Jun 19 10:20:20 IST 2026
[2026-06-19 10:20:20,026.026 INFO    ] ================================================
[2026-06-19 10:20:20,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:20:20
[2026-06-19 10:20:21,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:20:21,430.430 INFO    ] Initializing speech engine...
[2026-06-19 10:20:21,446.446 INFO    ] 2026-06-19 10:20:21
[2026-06-19 10:20:21,728.728 INFO    ] 2026-06-19 10:20:21
[2026-06-19 10:20:21,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:20:21,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:20:21,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:20:22,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:20:22,138.138 INFO    ] time= 19/06/2026 10:20:22
[2026-06-19 10:20:22,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:20:22,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:20:22,286.286 INFO    ] No existing commands found in stream
[2026-06-19 10:20:27,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:20:27,314.314 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 10:20:27,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:20:27,822.822 INFO    ] Checking for system updates...
[2026-06-19 10:20:27,861.861 INFO    ] 200
[2026-06-19 10:20:27,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:27,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:20:27,919.919 INFO    ] No update needed
[2026-06-19 10:20:27,921.921 INFO    ] Checking for camera pi updates...
[2026-06-19 10:20:27,961.961 INFO    ] 200
[2026-06-19 10:20:27,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:28,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:20:28,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:20:28,050.050 INFO    ] No camera update needed
[2026-06-19 10:20:28,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:20:28,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:20:28,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:20:28,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:20:30,104.104 INFO    ] ================================================
[2026-06-19 10:20:30,119.119 INFO    ] Launching Daemon at Fri Jun 19 10:20:30 IST 2026
[2026-06-19 10:20:30,130.130 INFO    ] ================================================
[2026-06-19 10:20:30,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:20:30
[2026-06-19 10:20:31,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:20:31,545.545 INFO    ] Initializing speech engine...
[2026-06-19 10:20:31,561.561 INFO    ] 2026-06-19 10:20:31
[2026-06-19 10:20:31,854.854 INFO    ] 2026-06-19 10:20:31
[2026-06-19 10:20:31,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:20:32,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:20:32,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:20:32,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:20:32,272.272 INFO    ] time= 19/06/2026 10:20:32
[2026-06-19 10:20:32,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:20:32,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:20:32,390.390 INFO    ] No existing commands found in stream
[2026-06-19 10:20:37,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:20:37,409.409 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 10:20:40,204.204 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:20:40,206.206 INFO    ] Checking for system updates...
[2026-06-19 10:20:40,242.242 INFO    ] 200
[2026-06-19 10:20:40,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:40,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:20:40,301.301 INFO    ] No update needed
[2026-06-19 10:20:40,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 10:20:40,340.340 INFO    ] 200
[2026-06-19 10:20:40,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:40,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:20:40,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:20:40,527.527 INFO    ] No camera update needed
[2026-06-19 10:20:40,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:20:40,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:20:40,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:20:40,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:20:42,581.581 INFO    ] ================================================
[2026-06-19 10:20:42,597.597 INFO    ] Launching Daemon at Fri Jun 19 10:20:42 IST 2026
[2026-06-19 10:20:42,608.608 INFO    ] ================================================
[2026-06-19 10:20:43,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:20:43
[2026-06-19 10:20:43,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:20:44,052.052 INFO    ] Initializing speech engine...
[2026-06-19 10:20:44,069.069 INFO    ] 2026-06-19 10:20:44
[2026-06-19 10:20:44,351.351 INFO    ] 2026-06-19 10:20:44
[2026-06-19 10:20:44,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:20:44,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:20:44,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:20:44,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:20:44,766.766 INFO    ] time= 19/06/2026 10:20:44
[2026-06-19 10:20:44,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:20:44,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:20:44,849.849 INFO    ] No existing commands found in stream
[2026-06-19 10:20:49,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:20:49,864.864 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 10:20:53,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:20:53,525.525 INFO    ] Checking for system updates...
[2026-06-19 10:20:53,567.567 INFO    ] 200
[2026-06-19 10:20:53,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:53,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:20:53,627.627 INFO    ] No update needed
[2026-06-19 10:20:53,629.629 INFO    ] Checking for camera pi updates...
[2026-06-19 10:20:53,663.663 INFO    ] 200
[2026-06-19 10:20:53,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:20:53,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:20:53,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:20:53,758.758 INFO    ] No camera update needed
[2026-06-19 10:20:53,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:20:53,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:20:53,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:20:53,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:20:55,812.812 INFO    ] ================================================
[2026-06-19 10:20:55,828.828 INFO    ] Launching Daemon at Fri Jun 19 10:20:55 IST 2026
[2026-06-19 10:20:55,838.838 INFO    ] ================================================
[2026-06-19 10:20:56,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:20:56
[2026-06-19 10:20:57,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:20:57,300.300 INFO    ] Initializing speech engine...
[2026-06-19 10:20:57,307.307 INFO    ] 2026-06-19 10:20:57
[2026-06-19 10:20:57,567.567 INFO    ] 2026-06-19 10:20:57
[2026-06-19 10:20:57,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:20:57,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:20:57,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:20:57,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:20:58,043.043 INFO    ] time= 19/06/2026 10:20:57
[2026-06-19 10:20:58,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:20:58,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:20:58,235.235 INFO    ] No existing commands found in stream
[2026-06-19 10:21:03,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:21:03,262.262 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 10:21:05,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:21:05,799.799 INFO    ] Checking for system updates...
[2026-06-19 10:21:05,835.835 INFO    ] 200
[2026-06-19 10:21:05,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:05,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:21:05,897.897 INFO    ] No update needed
[2026-06-19 10:21:05,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 10:21:05,935.935 INFO    ] 200
[2026-06-19 10:21:05,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:05,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:21:06,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:21:06,028.028 INFO    ] No camera update needed
[2026-06-19 10:21:06,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:21:06,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:21:06,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:21:06,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:21:08,084.084 INFO    ] ================================================
[2026-06-19 10:21:08,099.099 INFO    ] Launching Daemon at Fri Jun 19 10:21:08 IST 2026
[2026-06-19 10:21:08,109.109 INFO    ] ================================================
[2026-06-19 10:21:08,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:21:08
[2026-06-19 10:21:09,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:21:09,524.524 INFO    ] Initializing speech engine...
[2026-06-19 10:21:09,530.530 INFO    ] 2026-06-19 10:21:09
[2026-06-19 10:21:09,826.826 INFO    ] 2026-06-19 10:21:09
[2026-06-19 10:21:09,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:21:10,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:21:10,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:21:10,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:21:10,231.231 INFO    ] time= 19/06/2026 10:21:10
[2026-06-19 10:21:10,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:21:10,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:21:10,400.400 INFO    ] No existing commands found in stream
[2026-06-19 10:21:15,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:21:15,423.423 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 10:21:16,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:21:16,790.790 INFO    ] Checking for system updates...
[2026-06-19 10:21:16,826.826 INFO    ] 200
[2026-06-19 10:21:16,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:16,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:21:16,889.889 INFO    ] No update needed
[2026-06-19 10:21:16,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 10:21:16,926.926 INFO    ] 200
[2026-06-19 10:21:16,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:16,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:21:17,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:21:17,018.018 INFO    ] No camera update needed
[2026-06-19 10:21:17,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:21:17,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:21:17,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:21:17,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:21:19,072.072 INFO    ] ================================================
[2026-06-19 10:21:19,088.088 INFO    ] Launching Daemon at Fri Jun 19 10:21:19 IST 2026
[2026-06-19 10:21:19,099.099 INFO    ] ================================================
[2026-06-19 10:21:19,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:21:19
[2026-06-19 10:21:20,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:21:20,532.532 INFO    ] Initializing speech engine...
[2026-06-19 10:21:20,538.538 INFO    ] 2026-06-19 10:21:20
[2026-06-19 10:21:20,797.797 INFO    ] 2026-06-19 10:21:20
[2026-06-19 10:21:20,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:21:21,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:21:21,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:21:21,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:21:21,287.287 INFO    ] time= 19/06/2026 10:21:21
[2026-06-19 10:21:21,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:21:21,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:21:21,483.483 INFO    ] No existing commands found in stream
[2026-06-19 10:21:26,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:21:26,518.518 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 10:21:30,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:21:30,893.893 INFO    ] Checking for system updates...
[2026-06-19 10:21:30,929.929 INFO    ] 200
[2026-06-19 10:21:30,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:30,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:21:30,989.989 INFO    ] No update needed
[2026-06-19 10:21:30,992.992 INFO    ] Checking for camera pi updates...
[2026-06-19 10:21:31,027.027 INFO    ] 200
[2026-06-19 10:21:31,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:31,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:21:31,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:21:31,115.115 INFO    ] No camera update needed
[2026-06-19 10:21:31,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:21:31,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:21:31,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:21:31,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:21:33,172.172 INFO    ] ================================================
[2026-06-19 10:21:33,188.188 INFO    ] Launching Daemon at Fri Jun 19 10:21:33 IST 2026
[2026-06-19 10:21:33,199.199 INFO    ] ================================================
[2026-06-19 10:21:33,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:21:33
[2026-06-19 10:21:34,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:21:34,631.631 INFO    ] Initializing speech engine...
[2026-06-19 10:21:34,640.640 INFO    ] 2026-06-19 10:21:34
[2026-06-19 10:21:34,890.890 INFO    ] 2026-06-19 10:21:34
[2026-06-19 10:21:34,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:21:35,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:21:35,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:21:35,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:21:35,332.332 INFO    ] time= 19/06/2026 10:21:35
[2026-06-19 10:21:35,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:21:35,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:21:35,517.517 INFO    ] No existing commands found in stream
[2026-06-19 10:21:40,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:21:40,532.532 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 10:21:42,070.070 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:21:42,073.073 INFO    ] Checking for system updates...
[2026-06-19 10:21:42,112.112 INFO    ] 200
[2026-06-19 10:21:42,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:42,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:21:42,170.170 INFO    ] No update needed
[2026-06-19 10:21:42,172.172 INFO    ] Checking for camera pi updates...
[2026-06-19 10:21:42,213.213 INFO    ] 200
[2026-06-19 10:21:42,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:42,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:21:42,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:21:42,316.316 INFO    ] No camera update needed
[2026-06-19 10:21:42,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:21:42,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:21:42,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:21:42,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:21:44,371.371 INFO    ] ================================================
[2026-06-19 10:21:44,387.387 INFO    ] Launching Daemon at Fri Jun 19 10:21:44 IST 2026
[2026-06-19 10:21:44,398.398 INFO    ] ================================================
[2026-06-19 10:21:44,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:21:44
[2026-06-19 10:21:45,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:21:45,827.827 INFO    ] Initializing speech engine...
[2026-06-19 10:21:45,845.845 INFO    ] 2026-06-19 10:21:45
[2026-06-19 10:21:46,097.097 INFO    ] 2026-06-19 10:21:46
[2026-06-19 10:21:46,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:21:46,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:21:46,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:21:46,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:21:46,473.473 INFO    ] time= 19/06/2026 10:21:46
[2026-06-19 10:21:46,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:21:46,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:21:46,656.656 INFO    ] No existing commands found in stream
[2026-06-19 10:21:51,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:21:51,685.685 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 10:21:52,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:21:52,224.224 INFO    ] Checking for system updates...
[2026-06-19 10:21:52,261.261 INFO    ] 200
[2026-06-19 10:21:52,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:52,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:21:52,320.320 INFO    ] No update needed
[2026-06-19 10:21:52,323.323 INFO    ] Checking for camera pi updates...
[2026-06-19 10:21:52,361.361 INFO    ] 200
[2026-06-19 10:21:52,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:21:52,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:21:52,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:21:52,454.454 INFO    ] No camera update needed
[2026-06-19 10:21:52,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:21:52,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:21:52,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:21:52,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:21:54,512.512 INFO    ] ================================================
[2026-06-19 10:21:54,527.527 INFO    ] Launching Daemon at Fri Jun 19 10:21:54 IST 2026
[2026-06-19 10:21:54,538.538 INFO    ] ================================================
[2026-06-19 10:21:55,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:21:55
[2026-06-19 10:21:55,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:21:56,033.033 INFO    ] Initializing speech engine...
[2026-06-19 10:21:56,056.056 INFO    ] 2026-06-19 10:21:56
[2026-06-19 10:21:56,311.311 INFO    ] 2026-06-19 10:21:56
[2026-06-19 10:21:56,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:21:56,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:21:56,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:21:56,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:21:56,741.741 INFO    ] time= 19/06/2026 10:21:56
[2026-06-19 10:21:56,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:21:56,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:21:56,867.867 INFO    ] No existing commands found in stream
[2026-06-19 10:22:01,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:22:01,892.892 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 10:22:04,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:22:04,291.291 INFO    ] Checking for system updates...
[2026-06-19 10:22:04,330.330 INFO    ] 200
[2026-06-19 10:22:04,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:04,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:22:04,387.387 INFO    ] No update needed
[2026-06-19 10:22:04,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 10:22:04,426.426 INFO    ] 200
[2026-06-19 10:22:04,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:04,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:22:04,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:22:04,498.498 INFO    ] No camera update needed
[2026-06-19 10:22:04,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:22:04,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:22:04,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:22:04,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:22:06,555.555 INFO    ] ================================================
[2026-06-19 10:22:06,571.571 INFO    ] Launching Daemon at Fri Jun 19 10:22:06 IST 2026
[2026-06-19 10:22:06,585.585 INFO    ] ================================================
[2026-06-19 10:22:07,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:22:07
[2026-06-19 10:22:07,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:22:08,046.046 INFO    ] Initializing speech engine...
[2026-06-19 10:22:08,055.055 INFO    ] 2026-06-19 10:22:08
[2026-06-19 10:22:08,327.327 INFO    ] 2026-06-19 10:22:08
[2026-06-19 10:22:08,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:22:08,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:22:08,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:22:08,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:22:08,768.768 INFO    ] time= 19/06/2026 10:22:08
[2026-06-19 10:22:08,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:22:08,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:22:09,008.008 INFO    ] No existing commands found in stream
[2026-06-19 10:22:14,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:22:14,025.025 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 10:22:16,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:22:16,555.555 INFO    ] Checking for system updates...
[2026-06-19 10:22:16,592.592 INFO    ] 200
[2026-06-19 10:22:16,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:16,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:22:16,651.651 INFO    ] No update needed
[2026-06-19 10:22:16,654.654 INFO    ] Checking for camera pi updates...
[2026-06-19 10:22:16,689.689 INFO    ] 200
[2026-06-19 10:22:16,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:16,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:22:16,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:22:16,780.780 INFO    ] No camera update needed
[2026-06-19 10:22:16,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:22:16,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:22:16,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:22:16,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:22:18,841.841 INFO    ] ================================================
[2026-06-19 10:22:18,857.857 INFO    ] Launching Daemon at Fri Jun 19 10:22:18 IST 2026
[2026-06-19 10:22:18,868.868 INFO    ] ================================================
[2026-06-19 10:22:19,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:22:19
[2026-06-19 10:22:20,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:22:20,320.320 INFO    ] Initializing speech engine...
[2026-06-19 10:22:20,330.330 INFO    ] 2026-06-19 10:22:20
[2026-06-19 10:22:20,589.589 INFO    ] 2026-06-19 10:22:20
[2026-06-19 10:22:20,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:22:20,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:22:20,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:22:21,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:22:21,045.045 INFO    ] time= 19/06/2026 10:22:21
[2026-06-19 10:22:21,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:22:21,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:22:21,289.289 INFO    ] No existing commands found in stream
[2026-06-19 10:22:26,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:22:26,309.309 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 10:22:27,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:22:27,798.798 INFO    ] Checking for system updates...
[2026-06-19 10:22:27,834.834 INFO    ] 200
[2026-06-19 10:22:27,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:27,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:22:27,897.897 INFO    ] No update needed
[2026-06-19 10:22:27,899.899 INFO    ] Checking for camera pi updates...
[2026-06-19 10:22:27,936.936 INFO    ] 200
[2026-06-19 10:22:27,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:27,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:22:28,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:22:28,022.022 INFO    ] No camera update needed
[2026-06-19 10:22:28,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:22:28,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:22:28,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:22:28,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:22:30,077.077 INFO    ] ================================================
[2026-06-19 10:22:30,092.092 INFO    ] Launching Daemon at Fri Jun 19 10:22:30 IST 2026
[2026-06-19 10:22:30,103.103 INFO    ] ================================================
[2026-06-19 10:22:30,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:22:30
[2026-06-19 10:22:31,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:22:31,663.663 INFO    ] Initializing speech engine...
[2026-06-19 10:22:31,670.670 INFO    ] 2026-06-19 10:22:31
[2026-06-19 10:22:31,955.955 INFO    ] 2026-06-19 10:22:31
[2026-06-19 10:22:32,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:22:32,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:22:32,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:22:32,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:22:32,456.456 INFO    ] time= 19/06/2026 10:22:32
[2026-06-19 10:22:32,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:22:32,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:22:32,681.681 INFO    ] No existing commands found in stream
[2026-06-19 10:22:37,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:22:37,715.715 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 10:22:39,861.861 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:22:39,864.864 INFO    ] Checking for system updates...
[2026-06-19 10:22:39,904.904 INFO    ] 200
[2026-06-19 10:22:39,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:39,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:22:39,967.967 INFO    ] No update needed
[2026-06-19 10:22:39,970.970 INFO    ] Checking for camera pi updates...
[2026-06-19 10:22:40,003.003 INFO    ] 200
[2026-06-19 10:22:40,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:40,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:22:40,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:22:40,094.094 INFO    ] No camera update needed
[2026-06-19 10:22:40,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:22:40,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:22:40,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:22:40,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:22:42,150.150 INFO    ] ================================================
[2026-06-19 10:22:42,165.165 INFO    ] Launching Daemon at Fri Jun 19 10:22:42 IST 2026
[2026-06-19 10:22:42,176.176 INFO    ] ================================================
[2026-06-19 10:22:42,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:22:42
[2026-06-19 10:22:43,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:22:43,728.728 INFO    ] Initializing speech engine...
[2026-06-19 10:22:43,736.736 INFO    ] 2026-06-19 10:22:43
[2026-06-19 10:22:44,001.001 INFO    ] 2026-06-19 10:22:43
[2026-06-19 10:22:44,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:22:44,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:22:44,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:22:44,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:22:44,702.702 INFO    ] time= 19/06/2026 10:22:44
[2026-06-19 10:22:44,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:22:44,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:22:44,942.942 INFO    ] No existing commands found in stream
[2026-06-19 10:22:49,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:22:49,961.961 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 10:22:50,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:22:50,905.905 INFO    ] Checking for system updates...
[2026-06-19 10:22:50,946.946 INFO    ] 200
[2026-06-19 10:22:50,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:51,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:22:51,009.009 INFO    ] No update needed
[2026-06-19 10:22:51,011.011 INFO    ] Checking for camera pi updates...
[2026-06-19 10:22:51,049.049 INFO    ] 200
[2026-06-19 10:22:51,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:22:51,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:22:51,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:22:51,255.255 INFO    ] No camera update needed
[2026-06-19 10:22:51,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:22:51,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:22:51,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:22:51,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:22:53,311.311 INFO    ] ================================================
[2026-06-19 10:22:53,327.327 INFO    ] Launching Daemon at Fri Jun 19 10:22:53 IST 2026
[2026-06-19 10:22:53,337.337 INFO    ] ================================================
[2026-06-19 10:22:53,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:22:53
[2026-06-19 10:22:54,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:22:54,747.747 INFO    ] Initializing speech engine...
[2026-06-19 10:22:54,752.752 INFO    ] 2026-06-19 10:22:54
[2026-06-19 10:22:55,036.036 INFO    ] 2026-06-19 10:22:55
[2026-06-19 10:22:55,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:22:55,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:22:55,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:22:55,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:22:55,429.429 INFO    ] time= 19/06/2026 10:22:55
[2026-06-19 10:22:55,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:22:55,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:22:55,622.622 INFO    ] No existing commands found in stream
[2026-06-19 10:23:00,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:23:00,646.646 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 10:23:03,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:23:03,577.577 INFO    ] Checking for system updates...
[2026-06-19 10:23:03,618.618 INFO    ] 200
[2026-06-19 10:23:03,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:03,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:23:03,681.681 INFO    ] No update needed
[2026-06-19 10:23:03,684.684 INFO    ] Checking for camera pi updates...
[2026-06-19 10:23:03,718.718 INFO    ] 200
[2026-06-19 10:23:03,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:03,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:23:03,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:23:03,809.809 INFO    ] No camera update needed
[2026-06-19 10:23:03,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:23:03,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:23:03,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:23:03,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:23:05,862.862 INFO    ] ================================================
[2026-06-19 10:23:05,877.877 INFO    ] Launching Daemon at Fri Jun 19 10:23:05 IST 2026
[2026-06-19 10:23:05,888.888 INFO    ] ================================================
[2026-06-19 10:23:06,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:23:06
[2026-06-19 10:23:07,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:23:07,429.429 INFO    ] Initializing speech engine...
[2026-06-19 10:23:07,443.443 INFO    ] 2026-06-19 10:23:07
[2026-06-19 10:23:07,754.754 INFO    ] 2026-06-19 10:23:07
[2026-06-19 10:23:07,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:23:08,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:23:08,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:23:08,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:23:08,276.276 INFO    ] time= 19/06/2026 10:23:08
[2026-06-19 10:23:08,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:23:08,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:23:08,434.434 INFO    ] No existing commands found in stream
[2026-06-19 10:23:13,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:23:13,469.469 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 10:23:15,134.134 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:23:15,137.137 INFO    ] Checking for system updates...
[2026-06-19 10:23:15,179.179 INFO    ] 200
[2026-06-19 10:23:15,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:15,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:23:15,237.237 INFO    ] No update needed
[2026-06-19 10:23:15,239.239 INFO    ] Checking for camera pi updates...
[2026-06-19 10:23:15,273.273 INFO    ] 200
[2026-06-19 10:23:15,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:15,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:23:15,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:23:15,365.365 INFO    ] No camera update needed
[2026-06-19 10:23:15,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:23:15,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:23:15,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:23:15,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:23:17,420.420 INFO    ] ================================================
[2026-06-19 10:23:17,435.435 INFO    ] Launching Daemon at Fri Jun 19 10:23:17 IST 2026
[2026-06-19 10:23:17,446.446 INFO    ] ================================================
[2026-06-19 10:23:18,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:23:18
[2026-06-19 10:23:18,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:23:18,896.896 INFO    ] Initializing speech engine...
[2026-06-19 10:23:18,902.902 INFO    ] 2026-06-19 10:23:18
[2026-06-19 10:23:19,164.164 INFO    ] 2026-06-19 10:23:19
[2026-06-19 10:23:19,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:23:19,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:23:19,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:23:19,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:23:19,674.674 INFO    ] time= 19/06/2026 10:23:19
[2026-06-19 10:23:19,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:23:19,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:23:19,852.852 INFO    ] No existing commands found in stream
[2026-06-19 10:23:24,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:23:24,876.876 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 10:23:27,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:23:27,886.886 INFO    ] Checking for system updates...
[2026-06-19 10:23:27,922.922 INFO    ] 200
[2026-06-19 10:23:27,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:27,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:23:27,980.980 INFO    ] No update needed
[2026-06-19 10:23:27,982.982 INFO    ] Checking for camera pi updates...
[2026-06-19 10:23:28,017.017 INFO    ] 200
[2026-06-19 10:23:28,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:28,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:23:28,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:23:28,108.108 INFO    ] No camera update needed
[2026-06-19 10:23:28,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:23:28,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:23:28,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:23:28,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:23:30,165.165 INFO    ] ================================================
[2026-06-19 10:23:30,180.180 INFO    ] Launching Daemon at Fri Jun 19 10:23:30 IST 2026
[2026-06-19 10:23:30,191.191 INFO    ] ================================================
[2026-06-19 10:23:30,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:23:30
[2026-06-19 10:23:31,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:23:31,880.880 INFO    ] Initializing speech engine...
[2026-06-19 10:23:31,889.889 INFO    ] 2026-06-19 10:23:31
[2026-06-19 10:23:32,214.214 INFO    ] 2026-06-19 10:23:32
[2026-06-19 10:23:32,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:23:32,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:23:32,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:23:32,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:23:32,749.749 INFO    ] time= 19/06/2026 10:23:32
[2026-06-19 10:23:32,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:23:32,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:23:32,934.934 INFO    ] No existing commands found in stream
[2026-06-19 10:23:37,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:23:37,970.970 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 10:23:41,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:23:41,306.306 INFO    ] Checking for system updates...
[2026-06-19 10:23:41,346.346 INFO    ] 200
[2026-06-19 10:23:41,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:41,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:23:41,405.405 INFO    ] No update needed
[2026-06-19 10:23:41,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 10:23:41,443.443 INFO    ] 200
[2026-06-19 10:23:41,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:41,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:23:41,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:23:41,557.557 INFO    ] No camera update needed
[2026-06-19 10:23:41,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:23:41,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:23:41,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:23:41,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:23:43,614.614 INFO    ] ================================================
[2026-06-19 10:23:43,630.630 INFO    ] Launching Daemon at Fri Jun 19 10:23:43 IST 2026
[2026-06-19 10:23:43,640.640 INFO    ] ================================================
[2026-06-19 10:23:44,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:23:44
[2026-06-19 10:23:44,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:23:45,114.114 INFO    ] Initializing speech engine...
[2026-06-19 10:23:45,120.120 INFO    ] 2026-06-19 10:23:45
[2026-06-19 10:23:45,368.368 INFO    ] 2026-06-19 10:23:45
[2026-06-19 10:23:45,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:23:45,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:23:45,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:23:45,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:23:45,830.830 INFO    ] time= 19/06/2026 10:23:45
[2026-06-19 10:23:45,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:23:45,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:23:46,056.056 INFO    ] No existing commands found in stream
[2026-06-19 10:23:51,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:23:51,090.090 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 10:23:55,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:23:55,343.343 INFO    ] Checking for system updates...
[2026-06-19 10:23:55,379.379 INFO    ] 200
[2026-06-19 10:23:55,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:55,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:23:55,444.444 INFO    ] No update needed
[2026-06-19 10:23:55,446.446 INFO    ] Checking for camera pi updates...
[2026-06-19 10:23:55,481.481 INFO    ] 200
[2026-06-19 10:23:55,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:23:55,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:23:55,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:23:55,570.570 INFO    ] No camera update needed
[2026-06-19 10:23:55,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:23:55,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:23:55,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:23:55,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:23:57,627.627 INFO    ] ================================================
[2026-06-19 10:23:57,643.643 INFO    ] Launching Daemon at Fri Jun 19 10:23:57 IST 2026
[2026-06-19 10:23:57,653.653 INFO    ] ================================================
[2026-06-19 10:23:58,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:23:58
[2026-06-19 10:23:58,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:23:59,076.076 INFO    ] Initializing speech engine...
[2026-06-19 10:23:59,085.085 INFO    ] 2026-06-19 10:23:59
[2026-06-19 10:23:59,331.331 INFO    ] 2026-06-19 10:23:59
[2026-06-19 10:23:59,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:23:59,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:23:59,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:23:59,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:23:59,699.699 INFO    ] time= 19/06/2026 10:23:59
[2026-06-19 10:23:59,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:23:59,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:23:59,776.776 INFO    ] No existing commands found in stream
[2026-06-19 10:24:04,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:24:04,814.814 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 10:24:09,073.073 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:24:09,076.076 INFO    ] Checking for system updates...
[2026-06-19 10:24:09,116.116 INFO    ] 200
[2026-06-19 10:24:09,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:09,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:24:09,183.183 INFO    ] No update needed
[2026-06-19 10:24:09,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 10:24:09,227.227 INFO    ] 200
[2026-06-19 10:24:09,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:09,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:24:09,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:24:09,319.319 INFO    ] No camera update needed
[2026-06-19 10:24:09,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:24:09,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:24:09,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:24:09,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:24:11,383.383 INFO    ] ================================================
[2026-06-19 10:24:11,400.400 INFO    ] Launching Daemon at Fri Jun 19 10:24:11 IST 2026
[2026-06-19 10:24:11,412.412 INFO    ] ================================================
[2026-06-19 10:24:12,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:24:12
[2026-06-19 10:24:12,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:24:12,864.864 INFO    ] Initializing speech engine...
[2026-06-19 10:24:12,885.885 INFO    ] 2026-06-19 10:24:12
[2026-06-19 10:24:13,142.142 INFO    ] 2026-06-19 10:24:13
[2026-06-19 10:24:13,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:24:13,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:24:13,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:24:13,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:24:13,617.617 INFO    ] time= 19/06/2026 10:24:13
[2026-06-19 10:24:13,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:24:13,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:24:13,773.773 INFO    ] No existing commands found in stream
[2026-06-19 10:24:18,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:24:18,787.787 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 10:24:20,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:24:20,727.727 INFO    ] Checking for system updates...
[2026-06-19 10:24:20,764.764 INFO    ] 200
[2026-06-19 10:24:20,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:20,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:24:20,830.830 INFO    ] No update needed
[2026-06-19 10:24:20,833.833 INFO    ] Checking for camera pi updates...
[2026-06-19 10:24:20,871.871 INFO    ] 200
[2026-06-19 10:24:20,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:20,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:24:20,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:24:20,970.970 INFO    ] No camera update needed
[2026-06-19 10:24:20,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:24:20,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:24:20,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:24:20,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:24:23,028.028 INFO    ] ================================================
[2026-06-19 10:24:23,044.044 INFO    ] Launching Daemon at Fri Jun 19 10:24:23 IST 2026
[2026-06-19 10:24:23,056.056 INFO    ] ================================================
[2026-06-19 10:24:23,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:24:23
[2026-06-19 10:24:24,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:24:24,488.488 INFO    ] Initializing speech engine...
[2026-06-19 10:24:24,495.495 INFO    ] 2026-06-19 10:24:24
[2026-06-19 10:24:24,754.754 INFO    ] 2026-06-19 10:24:24
[2026-06-19 10:24:24,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:24:25,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:24:25,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:24:25,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:24:25,241.241 INFO    ] time= 19/06/2026 10:24:25
[2026-06-19 10:24:25,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:24:25,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:24:25,449.449 INFO    ] No existing commands found in stream
[2026-06-19 10:24:30,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:24:30,465.465 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 10:24:32,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:24:32,253.253 INFO    ] Checking for system updates...
[2026-06-19 10:24:32,296.296 INFO    ] 200
[2026-06-19 10:24:32,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:32,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:24:32,360.360 INFO    ] No update needed
[2026-06-19 10:24:32,362.362 INFO    ] Checking for camera pi updates...
[2026-06-19 10:24:32,424.424 INFO    ] 200
[2026-06-19 10:24:32,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:32,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:24:32,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:24:32,512.512 INFO    ] No camera update needed
[2026-06-19 10:24:32,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:24:32,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:24:32,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:24:32,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:24:34,574.574 INFO    ] ================================================
[2026-06-19 10:24:34,590.590 INFO    ] Launching Daemon at Fri Jun 19 10:24:34 IST 2026
[2026-06-19 10:24:34,601.601 INFO    ] ================================================
[2026-06-19 10:24:35,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:24:35
[2026-06-19 10:24:35,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:24:36,125.125 INFO    ] Initializing speech engine...
[2026-06-19 10:24:36,140.140 INFO    ] 2026-06-19 10:24:36
[2026-06-19 10:24:36,423.423 INFO    ] 2026-06-19 10:24:36
[2026-06-19 10:24:36,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:24:36,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:24:36,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:24:36,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:24:36,821.821 INFO    ] time= 19/06/2026 10:24:36
[2026-06-19 10:24:36,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:24:36,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:24:37,011.011 INFO    ] No existing commands found in stream
[2026-06-19 10:24:42,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:24:42,030.030 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 10:24:43,076.076 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:24:43,079.079 INFO    ] Checking for system updates...
[2026-06-19 10:24:43,116.116 INFO    ] 200
[2026-06-19 10:24:43,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:43,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:24:43,174.174 INFO    ] No update needed
[2026-06-19 10:24:43,177.177 INFO    ] Checking for camera pi updates...
[2026-06-19 10:24:43,211.211 INFO    ] 200
[2026-06-19 10:24:43,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:43,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:24:43,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:24:43,299.299 INFO    ] No camera update needed
[2026-06-19 10:24:43,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:24:43,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:24:43,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:24:43,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:24:45,355.355 INFO    ] ================================================
[2026-06-19 10:24:45,371.371 INFO    ] Launching Daemon at Fri Jun 19 10:24:45 IST 2026
[2026-06-19 10:24:45,382.382 INFO    ] ================================================
[2026-06-19 10:24:45,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:24:45
[2026-06-19 10:24:46,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:24:46,845.845 INFO    ] Initializing speech engine...
[2026-06-19 10:24:46,852.852 INFO    ] 2026-06-19 10:24:46
[2026-06-19 10:24:47,114.114 INFO    ] 2026-06-19 10:24:47
[2026-06-19 10:24:47,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:24:47,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:24:47,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:24:47,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:24:47,597.597 INFO    ] time= 19/06/2026 10:24:47
[2026-06-19 10:24:47,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:24:47,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:24:47,818.818 INFO    ] No existing commands found in stream
[2026-06-19 10:24:52,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:24:52,837.837 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 10:24:53,462.462 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:24:53,465.465 INFO    ] Checking for system updates...
[2026-06-19 10:24:53,502.502 INFO    ] 200
[2026-06-19 10:24:53,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:53,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:24:53,559.559 INFO    ] No update needed
[2026-06-19 10:24:53,562.562 INFO    ] Checking for camera pi updates...
[2026-06-19 10:24:53,596.596 INFO    ] 200
[2026-06-19 10:24:53,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:24:53,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:24:53,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:24:53,782.782 INFO    ] No camera update needed
[2026-06-19 10:24:53,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:24:53,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:24:53,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:24:53,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:24:55,837.837 INFO    ] ================================================
[2026-06-19 10:24:55,853.853 INFO    ] Launching Daemon at Fri Jun 19 10:24:55 IST 2026
[2026-06-19 10:24:55,864.864 INFO    ] ================================================
[2026-06-19 10:24:56,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:24:56
[2026-06-19 10:24:57,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:24:57,331.331 INFO    ] Initializing speech engine...
[2026-06-19 10:24:57,340.340 INFO    ] 2026-06-19 10:24:57
[2026-06-19 10:24:57,605.605 INFO    ] 2026-06-19 10:24:57
[2026-06-19 10:24:57,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:24:57,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:24:57,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:24:58,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:24:58,068.068 INFO    ] time= 19/06/2026 10:24:58
[2026-06-19 10:24:58,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:24:58,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:24:58,272.272 INFO    ] No existing commands found in stream
[2026-06-19 10:25:03,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:25:03,301.301 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 10:25:04,986.986 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:25:04,988.988 INFO    ] Checking for system updates...
[2026-06-19 10:25:05,025.025 INFO    ] 200
[2026-06-19 10:25:05,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:05,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:25:05,089.089 INFO    ] No update needed
[2026-06-19 10:25:05,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 10:25:05,127.127 INFO    ] 200
[2026-06-19 10:25:05,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:05,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:25:05,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:25:05,205.205 INFO    ] No camera update needed
[2026-06-19 10:25:05,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:25:05,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:25:05,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:25:05,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:25:07,261.261 INFO    ] ================================================
[2026-06-19 10:25:07,277.277 INFO    ] Launching Daemon at Fri Jun 19 10:25:07 IST 2026
[2026-06-19 10:25:07,288.288 INFO    ] ================================================
[2026-06-19 10:25:07,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:25:07
[2026-06-19 10:25:08,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:25:08,893.893 INFO    ] Initializing speech engine...
[2026-06-19 10:25:08,902.902 INFO    ] 2026-06-19 10:25:08
[2026-06-19 10:25:09,186.186 INFO    ] 2026-06-19 10:25:09
[2026-06-19 10:25:09,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:25:09,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:25:09,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:25:09,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:25:09,721.721 INFO    ] time= 19/06/2026 10:25:09
[2026-06-19 10:25:09,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:25:09,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:25:09,894.894 INFO    ] No existing commands found in stream
[2026-06-19 10:25:14,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:25:14,923.923 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 10:25:15,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:25:15,605.605 INFO    ] Checking for system updates...
[2026-06-19 10:25:15,642.642 INFO    ] 200
[2026-06-19 10:25:15,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:15,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:25:15,708.708 INFO    ] No update needed
[2026-06-19 10:25:15,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 10:25:15,745.745 INFO    ] 200
[2026-06-19 10:25:15,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:15,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:25:15,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:25:15,839.839 INFO    ] No camera update needed
[2026-06-19 10:25:15,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:25:15,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:25:15,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:25:15,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:25:17,898.898 INFO    ] ================================================
[2026-06-19 10:25:17,913.913 INFO    ] Launching Daemon at Fri Jun 19 10:25:17 IST 2026
[2026-06-19 10:25:17,924.924 INFO    ] ================================================
[2026-06-19 10:25:18,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:25:18
[2026-06-19 10:25:19,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:25:19,353.353 INFO    ] Initializing speech engine...
[2026-06-19 10:25:19,370.370 INFO    ] 2026-06-19 10:25:19
[2026-06-19 10:25:19,642.642 INFO    ] 2026-06-19 10:25:19
[2026-06-19 10:25:19,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:25:19,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:25:19,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:25:20,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:25:20,057.057 INFO    ] time= 19/06/2026 10:25:20
[2026-06-19 10:25:20,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:25:20,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:25:20,144.144 INFO    ] No existing commands found in stream
[2026-06-19 10:25:25,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:25:25,172.172 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 10:25:25,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:25:25,857.857 INFO    ] Checking for system updates...
[2026-06-19 10:25:25,893.893 INFO    ] 200
[2026-06-19 10:25:25,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:25,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:25:25,958.958 INFO    ] No update needed
[2026-06-19 10:25:25,961.961 INFO    ] Checking for camera pi updates...
[2026-06-19 10:25:25,994.994 INFO    ] 200
[2026-06-19 10:25:25,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:26,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:25:26,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:25:26,099.099 INFO    ] No camera update needed
[2026-06-19 10:25:26,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:25:26,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:25:26,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:25:26,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:25:28,156.156 INFO    ] ================================================
[2026-06-19 10:25:28,171.171 INFO    ] Launching Daemon at Fri Jun 19 10:25:28 IST 2026
[2026-06-19 10:25:28,182.182 INFO    ] ================================================
[2026-06-19 10:25:28,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:25:28
[2026-06-19 10:25:29,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:25:29,790.790 INFO    ] Initializing speech engine...
[2026-06-19 10:25:29,800.800 INFO    ] 2026-06-19 10:25:29
[2026-06-19 10:25:30,084.084 INFO    ] 2026-06-19 10:25:30
[2026-06-19 10:25:30,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:25:30,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:25:30,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:25:30,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:25:30,623.623 INFO    ] time= 19/06/2026 10:25:30
[2026-06-19 10:25:30,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:25:30,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:25:30,780.780 INFO    ] No existing commands found in stream
[2026-06-19 10:25:35,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:25:35,805.805 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 10:25:38,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:25:38,422.422 INFO    ] Checking for system updates...
[2026-06-19 10:25:38,463.463 INFO    ] 200
[2026-06-19 10:25:38,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:38,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:25:38,523.523 INFO    ] No update needed
[2026-06-19 10:25:38,526.526 INFO    ] Checking for camera pi updates...
[2026-06-19 10:25:38,564.564 INFO    ] 200
[2026-06-19 10:25:38,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:38,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:25:38,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:25:38,657.657 INFO    ] No camera update needed
[2026-06-19 10:25:38,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:25:38,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:25:38,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:25:38,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:25:40,716.716 INFO    ] ================================================
[2026-06-19 10:25:40,731.731 INFO    ] Launching Daemon at Fri Jun 19 10:25:40 IST 2026
[2026-06-19 10:25:40,742.742 INFO    ] ================================================
[2026-06-19 10:25:41,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:25:41
[2026-06-19 10:25:41,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:25:42,186.186 INFO    ] Initializing speech engine...
[2026-06-19 10:25:42,195.195 INFO    ] 2026-06-19 10:25:42
[2026-06-19 10:25:42,452.452 INFO    ] 2026-06-19 10:25:42
[2026-06-19 10:25:42,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:25:42,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:25:42,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:25:42,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:25:42,916.916 INFO    ] time= 19/06/2026 10:25:42
[2026-06-19 10:25:42,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:25:43,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:25:43,093.093 INFO    ] No existing commands found in stream
[2026-06-19 10:25:48,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:25:48,125.125 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 10:25:51,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:25:51,879.879 INFO    ] Checking for system updates...
[2026-06-19 10:25:51,919.919 INFO    ] 200
[2026-06-19 10:25:51,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:51,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:25:51,982.982 INFO    ] No update needed
[2026-06-19 10:25:51,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 10:25:52,020.020 INFO    ] 200
[2026-06-19 10:25:52,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:25:52,064.064 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:25:52,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:25:52,112.112 INFO    ] No camera update needed
[2026-06-19 10:25:52,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:25:52,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:25:52,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:25:52,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:25:54,170.170 INFO    ] ================================================
[2026-06-19 10:25:54,185.185 INFO    ] Launching Daemon at Fri Jun 19 10:25:54 IST 2026
[2026-06-19 10:25:54,195.195 INFO    ] ================================================
[2026-06-19 10:25:54,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:25:54
[2026-06-19 10:25:55,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:25:55,623.623 INFO    ] Initializing speech engine...
[2026-06-19 10:25:55,630.630 INFO    ] 2026-06-19 10:25:55
[2026-06-19 10:25:55,889.889 INFO    ] 2026-06-19 10:25:55
[2026-06-19 10:25:55,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:25:56,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:25:56,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:25:56,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:25:56,364.364 INFO    ] time= 19/06/2026 10:25:56
[2026-06-19 10:25:56,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:25:56,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:25:56,585.585 INFO    ] No existing commands found in stream
[2026-06-19 10:26:01,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:26:01,603.603 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 10:26:05,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:26:05,749.749 INFO    ] Checking for system updates...
[2026-06-19 10:26:05,788.788 INFO    ] 200
[2026-06-19 10:26:05,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:05,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:26:05,845.845 INFO    ] No update needed
[2026-06-19 10:26:05,847.847 INFO    ] Checking for camera pi updates...
[2026-06-19 10:26:05,887.887 INFO    ] 200
[2026-06-19 10:26:05,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:05,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:26:05,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:26:05,972.972 INFO    ] No camera update needed
[2026-06-19 10:26:05,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:26:05,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:26:05,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:26:05,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:26:08,027.027 INFO    ] ================================================
[2026-06-19 10:26:08,043.043 INFO    ] Launching Daemon at Fri Jun 19 10:26:08 IST 2026
[2026-06-19 10:26:08,054.054 INFO    ] ================================================
[2026-06-19 10:26:08,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:26:08
[2026-06-19 10:26:09,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:26:09,499.499 INFO    ] Initializing speech engine...
[2026-06-19 10:26:09,521.521 INFO    ] 2026-06-19 10:26:09
[2026-06-19 10:26:09,776.776 INFO    ] 2026-06-19 10:26:09
[2026-06-19 10:26:09,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:26:10,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:26:10,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:26:10,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:26:10,332.332 INFO    ] time= 19/06/2026 10:26:10
[2026-06-19 10:26:10,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:26:10,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:26:10,458.458 INFO    ] No existing commands found in stream
[2026-06-19 10:26:15,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:26:15,497.497 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 10:26:19,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:26:19,273.273 INFO    ] Checking for system updates...
[2026-06-19 10:26:19,309.309 INFO    ] 200
[2026-06-19 10:26:19,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:19,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:26:19,373.373 INFO    ] No update needed
[2026-06-19 10:26:19,376.376 INFO    ] Checking for camera pi updates...
[2026-06-19 10:26:19,411.411 INFO    ] 200
[2026-06-19 10:26:19,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:19,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:26:19,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:26:19,511.511 INFO    ] No camera update needed
[2026-06-19 10:26:19,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:26:19,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:26:19,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:26:19,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:26:21,571.571 INFO    ] ================================================
[2026-06-19 10:26:21,586.586 INFO    ] Launching Daemon at Fri Jun 19 10:26:21 IST 2026
[2026-06-19 10:26:21,598.598 INFO    ] ================================================
[2026-06-19 10:26:22,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:26:22
[2026-06-19 10:26:22,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:26:23,050.050 INFO    ] Initializing speech engine...
[2026-06-19 10:26:23,055.055 INFO    ] 2026-06-19 10:26:23
[2026-06-19 10:26:23,335.335 INFO    ] 2026-06-19 10:26:23
[2026-06-19 10:26:23,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:26:23,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:26:23,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:26:23,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:26:23,867.867 INFO    ] time= 19/06/2026 10:26:23
[2026-06-19 10:26:23,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:26:23,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:26:24,022.022 INFO    ] No existing commands found in stream
[2026-06-19 10:26:29,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:26:29,055.055 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 10:26:32,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:26:32,045.045 INFO    ] Checking for system updates...
[2026-06-19 10:26:32,089.089 INFO    ] 200
[2026-06-19 10:26:32,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:32,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:26:32,154.154 INFO    ] No update needed
[2026-06-19 10:26:32,158.158 INFO    ] Checking for camera pi updates...
[2026-06-19 10:26:32,195.195 INFO    ] 200
[2026-06-19 10:26:32,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:32,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:26:32,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:26:32,279.279 INFO    ] No camera update needed
[2026-06-19 10:26:32,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:26:32,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:26:32,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:26:32,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:26:34,340.340 INFO    ] ================================================
[2026-06-19 10:26:34,356.356 INFO    ] Launching Daemon at Fri Jun 19 10:26:34 IST 2026
[2026-06-19 10:26:34,367.367 INFO    ] ================================================
[2026-06-19 10:26:34,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:26:34
[2026-06-19 10:26:35,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:26:35,940.940 INFO    ] Initializing speech engine...
[2026-06-19 10:26:35,950.950 INFO    ] 2026-06-19 10:26:35
[2026-06-19 10:26:36,231.231 INFO    ] 2026-06-19 10:26:36
[2026-06-19 10:26:36,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:26:36,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:26:36,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:26:36,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:26:36,760.760 INFO    ] time= 19/06/2026 10:26:36
[2026-06-19 10:26:36,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:26:36,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:26:36,944.944 INFO    ] No existing commands found in stream
[2026-06-19 10:26:41,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:26:41,978.978 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 10:26:42,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:26:42,916.916 INFO    ] Checking for system updates...
[2026-06-19 10:26:42,964.964 INFO    ] 200
[2026-06-19 10:26:42,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:43,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:26:43,028.028 INFO    ] No update needed
[2026-06-19 10:26:43,030.030 INFO    ] Checking for camera pi updates...
[2026-06-19 10:26:43,065.065 INFO    ] 200
[2026-06-19 10:26:43,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:43,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:26:43,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:26:43,158.158 INFO    ] No camera update needed
[2026-06-19 10:26:43,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:26:43,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:26:43,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:26:43,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:26:45,213.213 INFO    ] ================================================
[2026-06-19 10:26:45,228.228 INFO    ] Launching Daemon at Fri Jun 19 10:26:45 IST 2026
[2026-06-19 10:26:45,239.239 INFO    ] ================================================
[2026-06-19 10:26:45,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:26:45
[2026-06-19 10:26:46,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:26:46,750.750 INFO    ] Initializing speech engine...
[2026-06-19 10:26:46,758.758 INFO    ] 2026-06-19 10:26:46
[2026-06-19 10:26:47,029.029 INFO    ] 2026-06-19 10:26:47
[2026-06-19 10:26:47,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:26:47,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:26:47,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:26:47,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:26:47,580.580 INFO    ] time= 19/06/2026 10:26:47
[2026-06-19 10:26:47,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:26:47,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:26:47,726.726 INFO    ] No existing commands found in stream
[2026-06-19 10:26:52,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:26:52,750.750 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 10:26:57,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:26:57,150.150 INFO    ] Checking for system updates...
[2026-06-19 10:26:57,188.188 INFO    ] 200
[2026-06-19 10:26:57,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:57,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:26:57,247.247 INFO    ] No update needed
[2026-06-19 10:26:57,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 10:26:57,283.283 INFO    ] 200
[2026-06-19 10:26:57,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:26:57,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:26:57,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:26:57,479.479 INFO    ] No camera update needed
[2026-06-19 10:26:57,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:26:57,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:26:57,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:26:57,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:26:59,535.535 INFO    ] ================================================
[2026-06-19 10:26:59,551.551 INFO    ] Launching Daemon at Fri Jun 19 10:26:59 IST 2026
[2026-06-19 10:26:59,563.563 INFO    ] ================================================
[2026-06-19 10:27:00,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:27:00
[2026-06-19 10:27:00,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:27:01,087.087 INFO    ] Initializing speech engine...
[2026-06-19 10:27:01,100.100 INFO    ] 2026-06-19 10:27:01
[2026-06-19 10:27:01,376.376 INFO    ] 2026-06-19 10:27:01
[2026-06-19 10:27:01,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:27:01,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:27:01,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:27:01,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:27:01,811.811 INFO    ] time= 19/06/2026 10:27:01
[2026-06-19 10:27:01,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:27:01,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:27:01,891.891 INFO    ] No existing commands found in stream
[2026-06-19 10:27:06,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:27:06,937.937 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 10:27:10,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:27:10,608.608 INFO    ] Checking for system updates...
[2026-06-19 10:27:10,644.644 INFO    ] 200
[2026-06-19 10:27:10,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:10,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:27:10,702.702 INFO    ] No update needed
[2026-06-19 10:27:10,704.704 INFO    ] Checking for camera pi updates...
[2026-06-19 10:27:10,743.743 INFO    ] 200
[2026-06-19 10:27:10,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:10,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:27:10,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:27:10,837.837 INFO    ] No camera update needed
[2026-06-19 10:27:10,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:27:10,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:27:10,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:27:10,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:27:12,892.892 INFO    ] ================================================
[2026-06-19 10:27:12,907.907 INFO    ] Launching Daemon at Fri Jun 19 10:27:12 IST 2026
[2026-06-19 10:27:12,918.918 INFO    ] ================================================
[2026-06-19 10:27:13,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:27:13
[2026-06-19 10:27:14,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:27:14,377.377 INFO    ] Initializing speech engine...
[2026-06-19 10:27:14,386.386 INFO    ] 2026-06-19 10:27:14
[2026-06-19 10:27:14,644.644 INFO    ] 2026-06-19 10:27:14
[2026-06-19 10:27:14,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:27:14,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:27:14,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:27:15,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:27:15,129.129 INFO    ] time= 19/06/2026 10:27:15
[2026-06-19 10:27:15,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:27:15,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:27:15,344.344 INFO    ] No existing commands found in stream
[2026-06-19 10:27:20,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:27:20,362.362 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 10:27:20,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:27:20,789.789 INFO    ] Checking for system updates...
[2026-06-19 10:27:20,829.829 INFO    ] 200
[2026-06-19 10:27:20,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:20,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:27:20,886.886 INFO    ] No update needed
[2026-06-19 10:27:20,889.889 INFO    ] Checking for camera pi updates...
[2026-06-19 10:27:20,923.923 INFO    ] 200
[2026-06-19 10:27:20,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:20,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:27:21,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:27:21,007.007 INFO    ] No camera update needed
[2026-06-19 10:27:21,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:27:21,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:27:21,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:27:21,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:27:23,066.066 INFO    ] ================================================
[2026-06-19 10:27:23,081.081 INFO    ] Launching Daemon at Fri Jun 19 10:27:23 IST 2026
[2026-06-19 10:27:23,092.092 INFO    ] ================================================
[2026-06-19 10:27:23,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:27:23
[2026-06-19 10:27:24,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:27:24,709.709 INFO    ] Initializing speech engine...
[2026-06-19 10:27:24,721.721 INFO    ] 2026-06-19 10:27:24
[2026-06-19 10:27:25,001.001 INFO    ] 2026-06-19 10:27:24
[2026-06-19 10:27:25,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:27:25,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:27:25,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:27:25,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:27:25,458.458 INFO    ] time= 19/06/2026 10:27:25
[2026-06-19 10:27:25,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:27:25,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:27:25,689.689 INFO    ] No existing commands found in stream
[2026-06-19 10:27:30,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:27:30,714.714 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 10:27:35,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:27:35,079.079 INFO    ] Checking for system updates...
[2026-06-19 10:27:35,117.117 INFO    ] 200
[2026-06-19 10:27:35,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:35,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:27:35,176.176 INFO    ] No update needed
[2026-06-19 10:27:35,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 10:27:35,214.214 INFO    ] 200
[2026-06-19 10:27:35,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:35,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:27:35,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:27:35,301.301 INFO    ] No camera update needed
[2026-06-19 10:27:35,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:27:35,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:27:35,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:27:35,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:27:37,357.357 INFO    ] ================================================
[2026-06-19 10:27:37,372.372 INFO    ] Launching Daemon at Fri Jun 19 10:27:37 IST 2026
[2026-06-19 10:27:37,383.383 INFO    ] ================================================
[2026-06-19 10:27:37,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:27:37
[2026-06-19 10:27:38,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:27:38,853.853 INFO    ] Initializing speech engine...
[2026-06-19 10:27:38,863.863 INFO    ] 2026-06-19 10:27:38
[2026-06-19 10:27:39,112.112 INFO    ] 2026-06-19 10:27:39
[2026-06-19 10:27:39,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:27:39,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:27:39,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:27:39,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:27:39,666.666 INFO    ] time= 19/06/2026 10:27:39
[2026-06-19 10:27:39,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:27:39,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:27:39,820.820 INFO    ] No existing commands found in stream
[2026-06-19 10:27:44,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:27:44,837.837 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 10:27:47,059.059 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:27:47,062.062 INFO    ] Checking for system updates...
[2026-06-19 10:27:47,099.099 INFO    ] 200
[2026-06-19 10:27:47,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:47,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:27:47,156.156 INFO    ] No update needed
[2026-06-19 10:27:47,159.159 INFO    ] Checking for camera pi updates...
[2026-06-19 10:27:47,193.193 INFO    ] 200
[2026-06-19 10:27:47,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:47,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:27:47,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:27:47,272.272 INFO    ] No camera update needed
[2026-06-19 10:27:47,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:27:47,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:27:47,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:27:47,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:27:49,327.327 INFO    ] ================================================
[2026-06-19 10:27:49,342.342 INFO    ] Launching Daemon at Fri Jun 19 10:27:49 IST 2026
[2026-06-19 10:27:49,353.353 INFO    ] ================================================
[2026-06-19 10:27:49,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:27:49
[2026-06-19 10:27:50,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:27:50,757.757 INFO    ] Initializing speech engine...
[2026-06-19 10:27:50,770.770 INFO    ] 2026-06-19 10:27:50
[2026-06-19 10:27:51,039.039 INFO    ] 2026-06-19 10:27:51
[2026-06-19 10:27:51,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:27:51,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:27:51,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:27:51,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:27:51,503.503 INFO    ] time= 19/06/2026 10:27:51
[2026-06-19 10:27:51,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:27:51,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:27:51,736.736 INFO    ] No existing commands found in stream
[2026-06-19 10:27:56,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:27:56,760.760 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 10:27:57,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:27:57,590.590 INFO    ] Checking for system updates...
[2026-06-19 10:27:57,629.629 INFO    ] 200
[2026-06-19 10:27:57,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:57,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:27:57,692.692 INFO    ] No update needed
[2026-06-19 10:27:57,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 10:27:57,728.728 INFO    ] 200
[2026-06-19 10:27:57,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:27:57,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:27:57,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:27:57,816.816 INFO    ] No camera update needed
[2026-06-19 10:27:57,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:27:57,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:27:57,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:27:57,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:27:59,874.874 INFO    ] ================================================
[2026-06-19 10:27:59,889.889 INFO    ] Launching Daemon at Fri Jun 19 10:27:59 IST 2026
[2026-06-19 10:27:59,900.900 INFO    ] ================================================
[2026-06-19 10:28:00,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:28:00
[2026-06-19 10:28:01,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:28:01,333.333 INFO    ] Initializing speech engine...
[2026-06-19 10:28:01,341.341 INFO    ] 2026-06-19 10:28:01
[2026-06-19 10:28:01,588.588 INFO    ] 2026-06-19 10:28:01
[2026-06-19 10:28:01,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:28:01,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:28:01,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:28:02,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:28:02,048.048 INFO    ] time= 19/06/2026 10:28:02
[2026-06-19 10:28:02,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:28:02,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:28:02,137.137 INFO    ] No existing commands found in stream
[2026-06-19 10:28:07,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:28:07,163.163 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 10:28:08,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:28:08,192.192 INFO    ] Checking for system updates...
[2026-06-19 10:28:08,228.228 INFO    ] 200
[2026-06-19 10:28:08,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:08,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:28:08,288.288 INFO    ] No update needed
[2026-06-19 10:28:08,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 10:28:08,333.333 INFO    ] 200
[2026-06-19 10:28:08,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:08,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:28:08,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:28:08,434.434 INFO    ] No camera update needed
[2026-06-19 10:28:08,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:28:08,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:28:08,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:28:08,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:28:10,490.490 INFO    ] ================================================
[2026-06-19 10:28:10,506.506 INFO    ] Launching Daemon at Fri Jun 19 10:28:10 IST 2026
[2026-06-19 10:28:10,517.517 INFO    ] ================================================
[2026-06-19 10:28:11,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:28:11
[2026-06-19 10:28:11,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:28:12,123.123 INFO    ] Initializing speech engine...
[2026-06-19 10:28:12,132.132 INFO    ] 2026-06-19 10:28:12
[2026-06-19 10:28:12,419.419 INFO    ] 2026-06-19 10:28:12
[2026-06-19 10:28:12,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:28:12,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:28:12,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:28:12,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:28:12,969.969 INFO    ] time= 19/06/2026 10:28:12
[2026-06-19 10:28:12,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:28:12,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:28:13,133.133 INFO    ] No existing commands found in stream
[2026-06-19 10:28:18,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:28:18,160.160 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 10:28:22,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:28:22,281.281 INFO    ] Checking for system updates...
[2026-06-19 10:28:22,318.318 INFO    ] 200
[2026-06-19 10:28:22,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:22,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:28:22,377.377 INFO    ] No update needed
[2026-06-19 10:28:22,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 10:28:22,418.418 INFO    ] 200
[2026-06-19 10:28:22,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:22,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:28:22,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:28:22,516.516 INFO    ] No camera update needed
[2026-06-19 10:28:22,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:28:22,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:28:22,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:28:22,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:28:24,577.577 INFO    ] ================================================
[2026-06-19 10:28:24,592.592 INFO    ] Launching Daemon at Fri Jun 19 10:28:24 IST 2026
[2026-06-19 10:28:24,603.603 INFO    ] ================================================
[2026-06-19 10:28:25,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:28:25
[2026-06-19 10:28:25,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:28:26,043.043 INFO    ] Initializing speech engine...
[2026-06-19 10:28:26,053.053 INFO    ] 2026-06-19 10:28:26
[2026-06-19 10:28:26,317.317 INFO    ] 2026-06-19 10:28:26
[2026-06-19 10:28:26,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:28:26,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:28:26,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:28:26,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:28:26,696.696 INFO    ] time= 19/06/2026 10:28:26
[2026-06-19 10:28:26,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:28:26,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:28:26,817.817 INFO    ] No existing commands found in stream
[2026-06-19 10:28:31,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:28:31,833.833 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 10:28:32,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:28:32,524.524 INFO    ] Checking for system updates...
[2026-06-19 10:28:32,569.569 INFO    ] 200
[2026-06-19 10:28:32,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:32,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:28:32,640.640 INFO    ] No update needed
[2026-06-19 10:28:32,643.643 INFO    ] Checking for camera pi updates...
[2026-06-19 10:28:32,680.680 INFO    ] 200
[2026-06-19 10:28:32,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:32,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:28:32,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:28:32,761.761 INFO    ] No camera update needed
[2026-06-19 10:28:32,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:28:32,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:28:32,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:28:32,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:28:34,821.821 INFO    ] ================================================
[2026-06-19 10:28:34,840.840 INFO    ] Launching Daemon at Fri Jun 19 10:28:34 IST 2026
[2026-06-19 10:28:34,851.851 INFO    ] ================================================
[2026-06-19 10:28:35,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:28:35
[2026-06-19 10:28:36,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:28:36,464.464 INFO    ] Initializing speech engine...
[2026-06-19 10:28:36,476.476 INFO    ] 2026-06-19 10:28:36
[2026-06-19 10:28:36,787.787 INFO    ] 2026-06-19 10:28:36
[2026-06-19 10:28:36,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:28:37,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:28:37,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:28:37,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:28:37,306.306 INFO    ] time= 19/06/2026 10:28:37
[2026-06-19 10:28:37,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:28:37,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:28:37,443.443 INFO    ] No existing commands found in stream
[2026-06-19 10:28:42,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:28:42,475.475 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 10:28:46,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:28:46,891.891 INFO    ] Checking for system updates...
[2026-06-19 10:28:46,928.928 INFO    ] 200
[2026-06-19 10:28:46,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:46,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:28:46,988.988 INFO    ] No update needed
[2026-06-19 10:28:46,991.991 INFO    ] Checking for camera pi updates...
[2026-06-19 10:28:47,026.026 INFO    ] 200
[2026-06-19 10:28:47,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:47,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:28:47,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:28:47,106.106 INFO    ] No camera update needed
[2026-06-19 10:28:47,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:28:47,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:28:47,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:28:47,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:28:49,166.166 INFO    ] ================================================
[2026-06-19 10:28:49,182.182 INFO    ] Launching Daemon at Fri Jun 19 10:28:49 IST 2026
[2026-06-19 10:28:49,193.193 INFO    ] ================================================
[2026-06-19 10:28:49,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:28:49
[2026-06-19 10:28:50,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:28:50,632.632 INFO    ] Initializing speech engine...
[2026-06-19 10:28:50,641.641 INFO    ] 2026-06-19 10:28:50
[2026-06-19 10:28:50,931.931 INFO    ] 2026-06-19 10:28:50
[2026-06-19 10:28:50,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:28:51,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:28:51,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:28:51,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:28:51,344.344 INFO    ] time= 19/06/2026 10:28:51
[2026-06-19 10:28:51,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:28:51,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:28:51,428.428 INFO    ] No existing commands found in stream
[2026-06-19 10:28:56,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:28:56,443.443 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 10:28:59,205.205 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:28:59,208.208 INFO    ] Checking for system updates...
[2026-06-19 10:28:59,243.243 INFO    ] 200
[2026-06-19 10:28:59,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:59,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:28:59,301.301 INFO    ] No update needed
[2026-06-19 10:28:59,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 10:28:59,337.337 INFO    ] 200
[2026-06-19 10:28:59,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:28:59,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:28:59,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:28:59,423.423 INFO    ] No camera update needed
[2026-06-19 10:28:59,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:28:59,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:28:59,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:28:59,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:29:01,481.481 INFO    ] ================================================
[2026-06-19 10:29:01,497.497 INFO    ] Launching Daemon at Fri Jun 19 10:29:01 IST 2026
[2026-06-19 10:29:01,509.509 INFO    ] ================================================
[2026-06-19 10:29:02,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:29:02
[2026-06-19 10:29:02,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:29:03,351.351 INFO    ] Initializing speech engine...
[2026-06-19 10:29:03,366.366 INFO    ] 2026-06-19 10:29:03
[2026-06-19 10:29:03,642.642 INFO    ] 2026-06-19 10:29:03
[2026-06-19 10:29:03,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:29:03,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:29:03,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:29:04,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:29:04,055.055 INFO    ] time= 19/06/2026 10:29:04
[2026-06-19 10:29:04,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:29:04,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:29:04,240.240 INFO    ] No existing commands found in stream
[2026-06-19 10:29:09,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:29:09,273.273 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 10:29:09,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:29:09,942.942 INFO    ] Checking for system updates...
[2026-06-19 10:29:09,981.981 INFO    ] 200
[2026-06-19 10:29:09,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:10,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:29:10,039.039 INFO    ] No update needed
[2026-06-19 10:29:10,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 10:29:10,075.075 INFO    ] 200
[2026-06-19 10:29:10,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:10,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:29:10,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:29:10,162.162 INFO    ] No camera update needed
[2026-06-19 10:29:10,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:29:10,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:29:10,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:29:10,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:29:12,219.219 INFO    ] ================================================
[2026-06-19 10:29:12,234.234 INFO    ] Launching Daemon at Fri Jun 19 10:29:12 IST 2026
[2026-06-19 10:29:12,246.246 INFO    ] ================================================
[2026-06-19 10:29:12,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:29:12
[2026-06-19 10:29:13,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:29:13,888.888 INFO    ] Initializing speech engine...
[2026-06-19 10:29:13,903.903 INFO    ] 2026-06-19 10:29:13
[2026-06-19 10:29:14,194.194 INFO    ] 2026-06-19 10:29:14
[2026-06-19 10:29:14,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:29:14,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:29:14,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:29:14,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:29:14,634.634 INFO    ] time= 19/06/2026 10:29:14
[2026-06-19 10:29:14,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:29:14,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:29:14,884.884 INFO    ] No existing commands found in stream
[2026-06-19 10:29:19,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:29:19,913.913 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 10:29:23,151.151 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:29:23,154.154 INFO    ] Checking for system updates...
[2026-06-19 10:29:23,191.191 INFO    ] 200
[2026-06-19 10:29:23,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:23,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:29:23,251.251 INFO    ] No update needed
[2026-06-19 10:29:23,254.254 INFO    ] Checking for camera pi updates...
[2026-06-19 10:29:23,287.287 INFO    ] 200
[2026-06-19 10:29:23,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:23,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:29:23,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:29:23,372.372 INFO    ] No camera update needed
[2026-06-19 10:29:23,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:29:23,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:29:23,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:29:23,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:29:25,428.428 INFO    ] ================================================
[2026-06-19 10:29:25,443.443 INFO    ] Launching Daemon at Fri Jun 19 10:29:25 IST 2026
[2026-06-19 10:29:25,454.454 INFO    ] ================================================
[2026-06-19 10:29:26,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:29:26
[2026-06-19 10:29:26,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:29:26,916.916 INFO    ] Initializing speech engine...
[2026-06-19 10:29:26,924.924 INFO    ] 2026-06-19 10:29:26
[2026-06-19 10:29:27,183.183 INFO    ] 2026-06-19 10:29:27
[2026-06-19 10:29:27,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:29:27,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:29:27,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:29:27,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:29:27,729.729 INFO    ] time= 19/06/2026 10:29:27
[2026-06-19 10:29:27,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:29:27,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:29:27,879.879 INFO    ] No existing commands found in stream
[2026-06-19 10:29:32,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:29:32,898.898 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 10:29:35,057.057 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:29:35,060.060 INFO    ] Checking for system updates...
[2026-06-19 10:29:35,096.096 INFO    ] 200
[2026-06-19 10:29:35,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:35,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:29:35,154.154 INFO    ] No update needed
[2026-06-19 10:29:35,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 10:29:35,190.190 INFO    ] 200
[2026-06-19 10:29:35,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:35,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:29:35,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:29:35,284.284 INFO    ] No camera update needed
[2026-06-19 10:29:35,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:29:35,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:29:35,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:29:35,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:29:37,340.340 INFO    ] ================================================
[2026-06-19 10:29:37,355.355 INFO    ] Launching Daemon at Fri Jun 19 10:29:37 IST 2026
[2026-06-19 10:29:37,366.366 INFO    ] ================================================
[2026-06-19 10:29:37,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:29:37
[2026-06-19 10:29:38,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:29:38,793.793 INFO    ] Initializing speech engine...
[2026-06-19 10:29:38,808.808 INFO    ] 2026-06-19 10:29:38
[2026-06-19 10:29:39,082.082 INFO    ] 2026-06-19 10:29:39
[2026-06-19 10:29:39,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:29:39,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:29:39,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:29:39,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:29:39,464.464 INFO    ] time= 19/06/2026 10:29:39
[2026-06-19 10:29:39,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:29:39,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:29:39,581.581 INFO    ] No existing commands found in stream
[2026-06-19 10:29:44,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:29:44,609.609 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 10:29:48,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:29:48,561.561 INFO    ] Checking for system updates...
[2026-06-19 10:29:48,602.602 INFO    ] 200
[2026-06-19 10:29:48,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:48,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:29:48,667.667 INFO    ] No update needed
[2026-06-19 10:29:48,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 10:29:48,708.708 INFO    ] 200
[2026-06-19 10:29:48,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:48,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:29:48,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:29:48,805.805 INFO    ] No camera update needed
[2026-06-19 10:29:48,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:29:48,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:29:48,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:29:48,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:29:50,861.861 INFO    ] ================================================
[2026-06-19 10:29:50,877.877 INFO    ] Launching Daemon at Fri Jun 19 10:29:50 IST 2026
[2026-06-19 10:29:50,888.888 INFO    ] ================================================
[2026-06-19 10:29:51,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:29:51
[2026-06-19 10:29:52,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:29:52,353.353 INFO    ] Initializing speech engine...
[2026-06-19 10:29:52,359.359 INFO    ] 2026-06-19 10:29:52
[2026-06-19 10:29:52,621.621 INFO    ] 2026-06-19 10:29:52
[2026-06-19 10:29:52,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:29:52,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:29:52,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:29:53,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:29:53,086.086 INFO    ] time= 19/06/2026 10:29:53
[2026-06-19 10:29:53,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:29:53,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:29:53,305.305 INFO    ] No existing commands found in stream
[2026-06-19 10:29:58,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:29:58,332.332 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 10:29:59,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:29:59,630.630 INFO    ] Checking for system updates...
[2026-06-19 10:29:59,666.666 INFO    ] 200
[2026-06-19 10:29:59,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:59,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:29:59,731.731 INFO    ] No update needed
[2026-06-19 10:29:59,733.733 INFO    ] Checking for camera pi updates...
[2026-06-19 10:29:59,768.768 INFO    ] 200
[2026-06-19 10:29:59,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:29:59,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:29:59,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:29:59,860.860 INFO    ] No camera update needed
[2026-06-19 10:29:59,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:29:59,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:29:59,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:29:59,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:30:01,959.959 INFO    ] ================================================
[2026-06-19 10:30:02,011.011 INFO    ] Launching Daemon at Fri Jun 19 10:30:02 IST 2026
[2026-06-19 10:30:02,138.138 INFO    ] ================================================
[2026-06-19 10:30:03,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:30:03
[2026-06-19 10:30:04,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:30:04,387.387 INFO    ] Initializing speech engine...
[2026-06-19 10:30:04,396.396 INFO    ] 2026-06-19 10:30:04
[2026-06-19 10:30:04,654.654 INFO    ] 2026-06-19 10:30:04
[2026-06-19 10:30:04,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:30:04,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:30:04,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:30:05,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:30:05,127.127 INFO    ] time= 19/06/2026 10:30:05
[2026-06-19 10:30:05,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:30:05,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:30:05,336.336 INFO    ] No existing commands found in stream
[2026-06-19 10:30:10,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:30:10,363.363 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 10:30:14,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:30:14,646.646 INFO    ] Checking for system updates...
[2026-06-19 10:30:14,688.688 INFO    ] 200
[2026-06-19 10:30:14,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:30:14,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:30:14,752.752 INFO    ] No update needed
[2026-06-19 10:30:14,754.754 INFO    ] Checking for camera pi updates...
[2026-06-19 10:30:14,791.791 INFO    ] 200
[2026-06-19 10:30:14,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:30:14,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:30:14,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:30:14,882.882 INFO    ] No camera update needed
[2026-06-19 10:30:14,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:30:14,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:30:14,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:30:14,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:30:16,938.938 INFO    ] ================================================
[2026-06-19 10:30:16,953.953 INFO    ] Launching Daemon at Fri Jun 19 10:30:16 IST 2026
[2026-06-19 10:30:16,964.964 INFO    ] ================================================
[2026-06-19 10:30:17,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:30:17
[2026-06-19 10:30:18,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:30:18,427.427 INFO    ] Initializing speech engine...
[2026-06-19 10:30:18,436.436 INFO    ] 2026-06-19 10:30:18
[2026-06-19 10:30:18,686.686 INFO    ] 2026-06-19 10:30:18
[2026-06-19 10:30:18,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:30:18,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:30:18,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:30:19,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:30:19,175.175 INFO    ] time= 19/06/2026 10:30:19
[2026-06-19 10:30:19,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:30:19,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:30:19,391.391 INFO    ] No existing commands found in stream
[2026-06-19 10:30:24,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:30:24,416.416 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 10:30:28,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:30:28,322.322 INFO    ] Checking for system updates...
[2026-06-19 10:30:28,358.358 INFO    ] 200
[2026-06-19 10:30:28,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:30:28,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:30:28,416.416 INFO    ] No update needed
[2026-06-19 10:30:28,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 10:30:28,453.453 INFO    ] 200
[2026-06-19 10:30:28,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:30:28,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:30:28,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:30:28,549.549 INFO    ] No camera update needed
[2026-06-19 10:30:28,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:30:28,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:30:28,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:30:28,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:30:30,606.606 INFO    ] ================================================
[2026-06-19 10:30:30,621.621 INFO    ] Launching Daemon at Fri Jun 19 10:30:30 IST 2026
[2026-06-19 10:30:30,632.632 INFO    ] ================================================
[2026-06-19 10:30:31,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:30:31
[2026-06-19 10:30:31,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:30:32,088.088 INFO    ] Initializing speech engine...
[2026-06-19 10:30:32,097.097 INFO    ] 2026-06-19 10:30:32
[2026-06-19 10:30:32,359.359 INFO    ] 2026-06-19 10:30:32
[2026-06-19 10:30:32,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:30:32,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:30:32,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:30:32,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:30:32,827.827 INFO    ] time= 19/06/2026 10:30:32
[2026-06-19 10:30:32,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:30:32,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:30:33,032.032 INFO    ] No existing commands found in stream
[2026-06-19 10:30:38,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:30:38,048.048 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 10:30:41,312.312 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:30:41,315.315 INFO    ] Checking for system updates...
[2026-06-19 10:30:41,352.352 INFO    ] 200
[2026-06-19 10:30:41,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:30:41,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:30:41,412.412 INFO    ] No update needed
[2026-06-19 10:30:41,414.414 INFO    ] Checking for camera pi updates...
[2026-06-19 10:30:41,450.450 INFO    ] 200
[2026-06-19 10:30:41,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:30:41,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:30:41,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:30:41,535.535 INFO    ] No camera update needed
[2026-06-19 10:30:41,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:30:41,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:30:41,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:30:41,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:30:43,590.590 INFO    ] ================================================
[2026-06-19 10:30:43,605.605 INFO    ] Launching Daemon at Fri Jun 19 10:30:43 IST 2026
[2026-06-19 10:30:43,616.616 INFO    ] ================================================
[2026-06-19 10:30:44,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:30:44
[2026-06-19 10:30:44,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:30:45,051.051 INFO    ] Initializing speech engine...
[2026-06-19 10:30:45,060.060 INFO    ] 2026-06-19 10:30:45
[2026-06-19 10:30:45,306.306 INFO    ] 2026-06-19 10:30:45
[2026-06-19 10:30:45,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:30:45,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:30:45,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:30:45,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:30:45,805.805 INFO    ] time= 19/06/2026 10:30:45
[2026-06-19 10:30:45,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:30:45,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:30:46,020.020 INFO    ] No existing commands found in stream
[2026-06-19 10:30:51,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:30:51,037.037 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 10:30:53,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:30:53,186.186 INFO    ] Checking for system updates...
[2026-06-19 10:30:53,225.225 INFO    ] 200
[2026-06-19 10:30:53,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:30:53,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:30:53,287.287 INFO    ] No update needed
[2026-06-19 10:30:53,290.290 INFO    ] Checking for camera pi updates...
[2026-06-19 10:30:53,326.326 INFO    ] 200
[2026-06-19 10:30:53,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:30:53,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:30:53,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:30:53,414.414 INFO    ] No camera update needed
[2026-06-19 10:30:53,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:30:53,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:30:53,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:30:53,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:30:55,469.469 INFO    ] ================================================
[2026-06-19 10:30:55,484.484 INFO    ] Launching Daemon at Fri Jun 19 10:30:55 IST 2026
[2026-06-19 10:30:55,495.495 INFO    ] ================================================
[2026-06-19 10:30:56,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:30:56
[2026-06-19 10:30:56,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:30:56,938.938 INFO    ] Initializing speech engine...
[2026-06-19 10:30:56,947.947 INFO    ] 2026-06-19 10:30:56
[2026-06-19 10:30:57,211.211 INFO    ] 2026-06-19 10:30:57
[2026-06-19 10:30:57,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:30:57,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:30:57,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:30:57,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:30:57,691.691 INFO    ] time= 19/06/2026 10:30:57
[2026-06-19 10:30:57,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:30:57,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:30:57,895.895 INFO    ] No existing commands found in stream
[2026-06-19 10:31:02,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:31:02,922.922 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 10:31:06,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:31:06,776.776 INFO    ] Checking for system updates...
[2026-06-19 10:31:06,816.816 INFO    ] 200
[2026-06-19 10:31:06,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:06,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:31:06,874.874 INFO    ] No update needed
[2026-06-19 10:31:06,876.876 INFO    ] Checking for camera pi updates...
[2026-06-19 10:31:06,910.910 INFO    ] 200
[2026-06-19 10:31:06,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:06,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:31:07,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:31:07,100.100 INFO    ] No camera update needed
[2026-06-19 10:31:07,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:31:07,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:31:07,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:31:07,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:31:09,157.157 INFO    ] ================================================
[2026-06-19 10:31:09,173.173 INFO    ] Launching Daemon at Fri Jun 19 10:31:09 IST 2026
[2026-06-19 10:31:09,185.185 INFO    ] ================================================
[2026-06-19 10:31:09,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:31:09
[2026-06-19 10:31:10,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:31:10,646.646 INFO    ] Initializing speech engine...
[2026-06-19 10:31:10,654.654 INFO    ] 2026-06-19 10:31:10
[2026-06-19 10:31:10,906.906 INFO    ] 2026-06-19 10:31:10
[2026-06-19 10:31:10,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:31:11,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:31:11,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:31:11,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:31:11,396.396 INFO    ] time= 19/06/2026 10:31:11
[2026-06-19 10:31:11,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:31:11,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:31:11,622.622 INFO    ] No existing commands found in stream
[2026-06-19 10:31:16,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:31:16,640.640 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 10:31:18,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:31:18,682.682 INFO    ] Checking for system updates...
[2026-06-19 10:31:18,724.724 INFO    ] 200
[2026-06-19 10:31:18,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:18,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:31:18,783.783 INFO    ] No update needed
[2026-06-19 10:31:18,786.786 INFO    ] Checking for camera pi updates...
[2026-06-19 10:31:18,826.826 INFO    ] 200
[2026-06-19 10:31:18,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:18,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:31:18,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:31:18,940.940 INFO    ] No camera update needed
[2026-06-19 10:31:18,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:31:18,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:31:18,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:31:18,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:31:21,000.000 INFO    ] ================================================
[2026-06-19 10:31:21,017.017 INFO    ] Launching Daemon at Fri Jun 19 10:31:21 IST 2026
[2026-06-19 10:31:21,028.028 INFO    ] ================================================
[2026-06-19 10:31:21,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:31:21
[2026-06-19 10:31:22,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:31:22,519.519 INFO    ] Initializing speech engine...
[2026-06-19 10:31:22,534.534 INFO    ] 2026-06-19 10:31:22
[2026-06-19 10:31:22,803.803 INFO    ] 2026-06-19 10:31:22
[2026-06-19 10:31:22,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:31:23,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:31:23,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:31:23,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:31:23,277.277 INFO    ] time= 19/06/2026 10:31:23
[2026-06-19 10:31:23,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:31:23,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:31:23,509.509 INFO    ] No existing commands found in stream
[2026-06-19 10:31:28,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:31:28,537.537 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 10:31:30,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:31:30,252.252 INFO    ] Checking for system updates...
[2026-06-19 10:31:30,289.289 INFO    ] 200
[2026-06-19 10:31:30,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:30,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:31:30,349.349 INFO    ] No update needed
[2026-06-19 10:31:30,352.352 INFO    ] Checking for camera pi updates...
[2026-06-19 10:31:30,386.386 INFO    ] 200
[2026-06-19 10:31:30,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:30,431.431 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:31:30,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:31:30,482.482 INFO    ] No camera update needed
[2026-06-19 10:31:30,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:31:30,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:31:30,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:31:30,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:31:32,544.544 INFO    ] ================================================
[2026-06-19 10:31:32,561.561 INFO    ] Launching Daemon at Fri Jun 19 10:31:32 IST 2026
[2026-06-19 10:31:32,573.573 INFO    ] ================================================
[2026-06-19 10:31:33,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:31:33
[2026-06-19 10:31:33,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:31:34,024.024 INFO    ] Initializing speech engine...
[2026-06-19 10:31:34,034.034 INFO    ] 2026-06-19 10:31:34
[2026-06-19 10:31:34,283.283 INFO    ] 2026-06-19 10:31:34
[2026-06-19 10:31:34,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:31:34,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:31:34,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:31:34,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:31:34,755.755 INFO    ] time= 19/06/2026 10:31:34
[2026-06-19 10:31:34,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:31:34,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:31:34,997.997 INFO    ] No existing commands found in stream
[2026-06-19 10:31:40,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:31:40,020.020 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-19 10:31:42,109.109 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:31:42,112.112 INFO    ] Checking for system updates...
[2026-06-19 10:31:42,147.147 INFO    ] 200
[2026-06-19 10:31:42,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:42,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:31:42,204.204 INFO    ] No update needed
[2026-06-19 10:31:42,207.207 INFO    ] Checking for camera pi updates...
[2026-06-19 10:31:42,244.244 INFO    ] 200
[2026-06-19 10:31:42,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:42,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:31:42,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:31:42,320.320 INFO    ] No camera update needed
[2026-06-19 10:31:42,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:31:42,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:31:42,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:31:42,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:31:44,376.376 INFO    ] ================================================
[2026-06-19 10:31:44,392.392 INFO    ] Launching Daemon at Fri Jun 19 10:31:44 IST 2026
[2026-06-19 10:31:44,403.403 INFO    ] ================================================
[2026-06-19 10:31:44,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:31:44
[2026-06-19 10:31:45,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:31:45,836.836 INFO    ] Initializing speech engine...
[2026-06-19 10:31:45,841.841 INFO    ] 2026-06-19 10:31:45
[2026-06-19 10:31:46,092.092 INFO    ] 2026-06-19 10:31:46
[2026-06-19 10:31:46,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:31:46,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:31:46,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:31:46,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:31:46,573.573 INFO    ] time= 19/06/2026 10:31:46
[2026-06-19 10:31:46,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:31:46,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:31:46,800.800 INFO    ] No existing commands found in stream
[2026-06-19 10:31:51,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:31:51,828.828 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 10:31:53,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:31:53,811.811 INFO    ] Checking for system updates...
[2026-06-19 10:31:53,848.848 INFO    ] 200
[2026-06-19 10:31:53,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:53,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:31:53,911.911 INFO    ] No update needed
[2026-06-19 10:31:53,914.914 INFO    ] Checking for camera pi updates...
[2026-06-19 10:31:53,947.947 INFO    ] 200
[2026-06-19 10:31:53,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:31:53,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:31:54,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:31:54,044.044 INFO    ] No camera update needed
[2026-06-19 10:31:54,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:31:54,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:31:54,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:31:54,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:31:56,101.101 INFO    ] ================================================
[2026-06-19 10:31:56,116.116 INFO    ] Launching Daemon at Fri Jun 19 10:31:56 IST 2026
[2026-06-19 10:31:56,127.127 INFO    ] ================================================
[2026-06-19 10:31:56,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:31:56
[2026-06-19 10:31:57,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:31:57,570.570 INFO    ] Initializing speech engine...
[2026-06-19 10:31:57,578.578 INFO    ] 2026-06-19 10:31:57
[2026-06-19 10:31:57,827.827 INFO    ] 2026-06-19 10:31:57
[2026-06-19 10:31:57,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:31:58,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:31:58,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:31:58,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:31:58,310.310 INFO    ] time= 19/06/2026 10:31:58
[2026-06-19 10:31:58,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:31:58,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:31:58,546.546 INFO    ] No existing commands found in stream
[2026-06-19 10:32:03,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:32:03,571.571 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 10:32:06,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:32:06,523.523 INFO    ] Checking for system updates...
[2026-06-19 10:32:06,560.560 INFO    ] 200
[2026-06-19 10:32:06,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:06,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:32:06,617.617 INFO    ] No update needed
[2026-06-19 10:32:06,619.619 INFO    ] Checking for camera pi updates...
[2026-06-19 10:32:06,653.653 INFO    ] 200
[2026-06-19 10:32:06,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:06,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:32:06,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:32:06,760.760 INFO    ] No camera update needed
[2026-06-19 10:32:06,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:32:06,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:32:06,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:32:06,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:32:08,817.817 INFO    ] ================================================
[2026-06-19 10:32:08,833.833 INFO    ] Launching Daemon at Fri Jun 19 10:32:08 IST 2026
[2026-06-19 10:32:08,844.844 INFO    ] ================================================
[2026-06-19 10:32:09,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:32:09
[2026-06-19 10:32:10,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:32:10,376.376 INFO    ] Initializing speech engine...
[2026-06-19 10:32:10,393.393 INFO    ] 2026-06-19 10:32:10
[2026-06-19 10:32:10,660.660 INFO    ] 2026-06-19 10:32:10
[2026-06-19 10:32:10,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:32:10,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:32:10,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:32:11,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:32:11,142.142 INFO    ] time= 19/06/2026 10:32:11
[2026-06-19 10:32:11,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:32:11,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:32:11,387.387 INFO    ] No existing commands found in stream
[2026-06-19 10:32:16,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:32:16,411.411 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 10:32:18,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:32:18,637.637 INFO    ] Checking for system updates...
[2026-06-19 10:32:18,673.673 INFO    ] 200
[2026-06-19 10:32:18,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:18,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:32:18,737.737 INFO    ] No update needed
[2026-06-19 10:32:18,740.740 INFO    ] Checking for camera pi updates...
[2026-06-19 10:32:18,774.774 INFO    ] 200
[2026-06-19 10:32:18,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:18,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:32:18,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:32:18,864.864 INFO    ] No camera update needed
[2026-06-19 10:32:18,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:32:18,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:32:18,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:32:18,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:32:20,922.922 INFO    ] ================================================
[2026-06-19 10:32:20,938.938 INFO    ] Launching Daemon at Fri Jun 19 10:32:20 IST 2026
[2026-06-19 10:32:20,949.949 INFO    ] ================================================
[2026-06-19 10:32:21,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:32:21
[2026-06-19 10:32:22,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:32:22,377.377 INFO    ] Initializing speech engine...
[2026-06-19 10:32:22,385.385 INFO    ] 2026-06-19 10:32:22
[2026-06-19 10:32:22,677.677 INFO    ] 2026-06-19 10:32:22
[2026-06-19 10:32:22,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:32:22,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:32:22,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:32:23,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:32:23,053.053 INFO    ] time= 19/06/2026 10:32:23
[2026-06-19 10:32:23,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:32:23,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:32:23,191.191 INFO    ] No existing commands found in stream
[2026-06-19 10:32:28,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:32:28,205.205 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 10:32:29,061.061 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:32:29,063.063 INFO    ] Checking for system updates...
[2026-06-19 10:32:29,105.105 INFO    ] 200
[2026-06-19 10:32:29,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:29,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:32:29,173.173 INFO    ] No update needed
[2026-06-19 10:32:29,175.175 INFO    ] Checking for camera pi updates...
[2026-06-19 10:32:29,210.210 INFO    ] 200
[2026-06-19 10:32:29,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:29,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:32:29,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:32:29,328.328 INFO    ] No camera update needed
[2026-06-19 10:32:29,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:32:29,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:32:29,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:32:29,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:32:31,383.383 INFO    ] ================================================
[2026-06-19 10:32:31,400.400 INFO    ] Launching Daemon at Fri Jun 19 10:32:31 IST 2026
[2026-06-19 10:32:31,411.411 INFO    ] ================================================
[2026-06-19 10:32:32,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:32:32
[2026-06-19 10:32:32,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:32:32,952.952 INFO    ] Initializing speech engine...
[2026-06-19 10:32:32,959.959 INFO    ] 2026-06-19 10:32:32
[2026-06-19 10:32:33,261.261 INFO    ] 2026-06-19 10:32:33
[2026-06-19 10:32:33,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:32:33,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:32:33,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:32:33,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:32:33,673.673 INFO    ] time= 19/06/2026 10:32:33
[2026-06-19 10:32:33,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:32:33,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:32:33,767.767 INFO    ] No existing commands found in stream
[2026-06-19 10:32:38,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:32:38,796.796 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 10:32:42,107.107 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:32:42,110.110 INFO    ] Checking for system updates...
[2026-06-19 10:32:42,146.146 INFO    ] 200
[2026-06-19 10:32:42,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:42,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:32:42,203.203 INFO    ] No update needed
[2026-06-19 10:32:42,205.205 INFO    ] Checking for camera pi updates...
[2026-06-19 10:32:42,243.243 INFO    ] 200
[2026-06-19 10:32:42,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:42,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:32:42,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:32:42,338.338 INFO    ] No camera update needed
[2026-06-19 10:32:42,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:32:42,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:32:42,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:32:42,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:32:44,394.394 INFO    ] ================================================
[2026-06-19 10:32:44,410.410 INFO    ] Launching Daemon at Fri Jun 19 10:32:44 IST 2026
[2026-06-19 10:32:44,421.421 INFO    ] ================================================
[2026-06-19 10:32:45,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:32:45
[2026-06-19 10:32:45,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:32:45,877.877 INFO    ] Initializing speech engine...
[2026-06-19 10:32:45,886.886 INFO    ] 2026-06-19 10:32:45
[2026-06-19 10:32:46,137.137 INFO    ] 2026-06-19 10:32:46
[2026-06-19 10:32:46,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:32:46,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:32:46,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:32:46,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:32:46,516.516 INFO    ] time= 19/06/2026 10:32:46
[2026-06-19 10:32:46,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:32:46,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:32:46,690.690 INFO    ] No existing commands found in stream
[2026-06-19 10:32:51,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:32:51,723.723 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 10:32:55,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:32:55,482.482 INFO    ] Checking for system updates...
[2026-06-19 10:32:55,518.518 INFO    ] 200
[2026-06-19 10:32:55,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:55,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:32:55,575.575 INFO    ] No update needed
[2026-06-19 10:32:55,577.577 INFO    ] Checking for camera pi updates...
[2026-06-19 10:32:55,611.611 INFO    ] 200
[2026-06-19 10:32:55,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:32:55,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:32:55,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:32:55,699.699 INFO    ] No camera update needed
[2026-06-19 10:32:55,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:32:55,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:32:55,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:32:55,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:32:57,755.755 INFO    ] ================================================
[2026-06-19 10:32:57,770.770 INFO    ] Launching Daemon at Fri Jun 19 10:32:57 IST 2026
[2026-06-19 10:32:57,781.781 INFO    ] ================================================
[2026-06-19 10:32:58,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:32:58
[2026-06-19 10:32:58,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:32:59,215.215 INFO    ] Initializing speech engine...
[2026-06-19 10:32:59,237.237 INFO    ] 2026-06-19 10:32:59
[2026-06-19 10:32:59,491.491 INFO    ] 2026-06-19 10:32:59
[2026-06-19 10:32:59,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:32:59,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:32:59,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:33:00,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:33:00,047.047 INFO    ] time= 19/06/2026 10:33:00
[2026-06-19 10:33:00,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:33:00,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:33:00,203.203 INFO    ] No existing commands found in stream
[2026-06-19 10:33:05,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:33:05,220.220 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 10:33:06,050.050 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:33:06,053.053 INFO    ] Checking for system updates...
[2026-06-19 10:33:06,092.092 INFO    ] 200
[2026-06-19 10:33:06,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:06,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:33:06,150.150 INFO    ] No update needed
[2026-06-19 10:33:06,152.152 INFO    ] Checking for camera pi updates...
[2026-06-19 10:33:06,186.186 INFO    ] 200
[2026-06-19 10:33:06,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:06,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:33:06,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:33:06,290.290 INFO    ] No camera update needed
[2026-06-19 10:33:06,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:33:06,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:33:06,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:33:06,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:33:08,347.347 INFO    ] ================================================
[2026-06-19 10:33:08,363.363 INFO    ] Launching Daemon at Fri Jun 19 10:33:08 IST 2026
[2026-06-19 10:33:08,373.373 INFO    ] ================================================
[2026-06-19 10:33:08,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:33:08
[2026-06-19 10:33:09,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:33:09,801.801 INFO    ] Initializing speech engine...
[2026-06-19 10:33:09,808.808 INFO    ] 2026-06-19 10:33:09
[2026-06-19 10:33:10,056.056 INFO    ] 2026-06-19 10:33:10
[2026-06-19 10:33:10,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:33:10,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:33:10,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:33:10,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:33:10,570.570 INFO    ] time= 19/06/2026 10:33:10
[2026-06-19 10:33:10,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:33:10,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:33:10,775.775 INFO    ] No existing commands found in stream
[2026-06-19 10:33:15,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:33:15,801.801 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 10:33:18,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:33:18,159.159 INFO    ] Checking for system updates...
[2026-06-19 10:33:18,195.195 INFO    ] 200
[2026-06-19 10:33:18,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:18,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:33:18,252.252 INFO    ] No update needed
[2026-06-19 10:33:18,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 10:33:18,288.288 INFO    ] 200
[2026-06-19 10:33:18,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:18,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:33:18,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:33:18,494.494 INFO    ] No camera update needed
[2026-06-19 10:33:18,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:33:18,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:33:18,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:33:18,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:33:20,550.550 INFO    ] ================================================
[2026-06-19 10:33:20,566.566 INFO    ] Launching Daemon at Fri Jun 19 10:33:20 IST 2026
[2026-06-19 10:33:20,577.577 INFO    ] ================================================
[2026-06-19 10:33:21,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:33:21
[2026-06-19 10:33:21,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:33:22,118.118 INFO    ] Initializing speech engine...
[2026-06-19 10:33:22,130.130 INFO    ] 2026-06-19 10:33:22
[2026-06-19 10:33:22,443.443 INFO    ] 2026-06-19 10:33:22
[2026-06-19 10:33:22,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:33:22,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:33:22,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:33:22,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:33:22,961.961 INFO    ] time= 19/06/2026 10:33:22
[2026-06-19 10:33:22,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:33:23,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:33:23,121.121 INFO    ] No existing commands found in stream
[2026-06-19 10:33:28,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:33:28,152.152 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 10:33:31,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:33:31,904.904 INFO    ] Checking for system updates...
[2026-06-19 10:33:31,944.944 INFO    ] 200
[2026-06-19 10:33:31,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:32,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:33:32,021.021 INFO    ] No update needed
[2026-06-19 10:33:32,024.024 INFO    ] Checking for camera pi updates...
[2026-06-19 10:33:32,072.072 INFO    ] 200
[2026-06-19 10:33:32,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:32,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:33:32,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:33:32,170.170 INFO    ] No camera update needed
[2026-06-19 10:33:32,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:33:32,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:33:32,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:33:32,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:33:34,233.233 INFO    ] ================================================
[2026-06-19 10:33:34,248.248 INFO    ] Launching Daemon at Fri Jun 19 10:33:34 IST 2026
[2026-06-19 10:33:34,259.259 INFO    ] ================================================
[2026-06-19 10:33:34,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:33:34
[2026-06-19 10:33:35,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:33:35,711.711 INFO    ] Initializing speech engine...
[2026-06-19 10:33:35,720.720 INFO    ] 2026-06-19 10:33:35
[2026-06-19 10:33:36,020.020 INFO    ] 2026-06-19 10:33:35
[2026-06-19 10:33:36,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:33:36,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:33:36,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:33:36,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:33:36,379.379 INFO    ] time= 19/06/2026 10:33:36
[2026-06-19 10:33:36,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:33:36,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:33:36,532.532 INFO    ] No existing commands found in stream
[2026-06-19 10:33:41,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:33:41,546.546 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 10:33:44,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:33:44,509.509 INFO    ] Checking for system updates...
[2026-06-19 10:33:44,547.547 INFO    ] 200
[2026-06-19 10:33:44,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:44,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:33:44,606.606 INFO    ] No update needed
[2026-06-19 10:33:44,609.609 INFO    ] Checking for camera pi updates...
[2026-06-19 10:33:44,644.644 INFO    ] 200
[2026-06-19 10:33:44,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:44,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:33:44,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:33:44,742.742 INFO    ] No camera update needed
[2026-06-19 10:33:44,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:33:44,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:33:44,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:33:44,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:33:46,803.803 INFO    ] ================================================
[2026-06-19 10:33:46,819.819 INFO    ] Launching Daemon at Fri Jun 19 10:33:46 IST 2026
[2026-06-19 10:33:46,830.830 INFO    ] ================================================
[2026-06-19 10:33:47,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:33:47
[2026-06-19 10:33:47,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:33:48,266.266 INFO    ] Initializing speech engine...
[2026-06-19 10:33:48,272.272 INFO    ] 2026-06-19 10:33:48
[2026-06-19 10:33:48,518.518 INFO    ] 2026-06-19 10:33:48
[2026-06-19 10:33:48,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:33:48,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:33:48,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:33:48,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:33:49,025.025 INFO    ] time= 19/06/2026 10:33:48
[2026-06-19 10:33:49,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:33:49,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:33:49,210.210 INFO    ] No existing commands found in stream
[2026-06-19 10:33:54,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:33:54,243.243 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 10:33:56,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:33:56,314.314 INFO    ] Checking for system updates...
[2026-06-19 10:33:56,350.350 INFO    ] 200
[2026-06-19 10:33:56,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:56,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:33:56,407.407 INFO    ] No update needed
[2026-06-19 10:33:56,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 10:33:56,447.447 INFO    ] 200
[2026-06-19 10:33:56,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:33:56,495.495 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:33:56,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:33:56,537.537 INFO    ] No camera update needed
[2026-06-19 10:33:56,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:33:56,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:33:56,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:33:56,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:33:58,592.592 INFO    ] ================================================
[2026-06-19 10:33:58,609.609 INFO    ] Launching Daemon at Fri Jun 19 10:33:58 IST 2026
[2026-06-19 10:33:58,620.620 INFO    ] ================================================
[2026-06-19 10:33:59,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:33:59
[2026-06-19 10:33:59,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:34:00,111.111 INFO    ] Initializing speech engine...
[2026-06-19 10:34:00,120.120 INFO    ] 2026-06-19 10:34:00
[2026-06-19 10:34:00,389.389 INFO    ] 2026-06-19 10:34:00
[2026-06-19 10:34:00,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:34:00,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:34:00,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:34:00,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:34:00,886.886 INFO    ] time= 19/06/2026 10:34:00
[2026-06-19 10:34:00,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:34:00,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:34:01,078.078 INFO    ] No existing commands found in stream
[2026-06-19 10:34:06,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:34:06,091.091 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 10:34:07,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:34:07,844.844 INFO    ] Checking for system updates...
[2026-06-19 10:34:07,880.880 INFO    ] 200
[2026-06-19 10:34:07,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:07,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:34:07,942.942 INFO    ] No update needed
[2026-06-19 10:34:07,944.944 INFO    ] Checking for camera pi updates...
[2026-06-19 10:34:07,978.978 INFO    ] 200
[2026-06-19 10:34:07,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:08,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:34:08,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:34:08,065.065 INFO    ] No camera update needed
[2026-06-19 10:34:08,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:34:08,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:34:08,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:34:08,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:34:10,121.121 INFO    ] ================================================
[2026-06-19 10:34:10,137.137 INFO    ] Launching Daemon at Fri Jun 19 10:34:10 IST 2026
[2026-06-19 10:34:10,148.148 INFO    ] ================================================
[2026-06-19 10:34:10,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:34:10
[2026-06-19 10:34:11,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:34:11,574.574 INFO    ] Initializing speech engine...
[2026-06-19 10:34:11,590.590 INFO    ] 2026-06-19 10:34:11
[2026-06-19 10:34:11,861.861 INFO    ] 2026-06-19 10:34:11
[2026-06-19 10:34:11,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:34:12,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:34:12,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:34:12,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:34:12,351.351 INFO    ] time= 19/06/2026 10:34:12
[2026-06-19 10:34:12,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:34:12,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:34:12,626.626 INFO    ] No existing commands found in stream
[2026-06-19 10:34:17,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:34:17,651.651 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 10:34:19,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:34:19,711.711 INFO    ] Checking for system updates...
[2026-06-19 10:34:19,751.751 INFO    ] 200
[2026-06-19 10:34:19,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:19,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:34:19,808.808 INFO    ] No update needed
[2026-06-19 10:34:19,811.811 INFO    ] Checking for camera pi updates...
[2026-06-19 10:34:19,844.844 INFO    ] 200
[2026-06-19 10:34:19,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:19,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:34:19,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:34:19,941.941 INFO    ] No camera update needed
[2026-06-19 10:34:19,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:34:19,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:34:19,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:34:19,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:34:22,002.002 INFO    ] ================================================
[2026-06-19 10:34:22,018.018 INFO    ] Launching Daemon at Fri Jun 19 10:34:22 IST 2026
[2026-06-19 10:34:22,029.029 INFO    ] ================================================
[2026-06-19 10:34:22,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:34:22
[2026-06-19 10:34:23,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:34:23,466.466 INFO    ] Initializing speech engine...
[2026-06-19 10:34:23,473.473 INFO    ] 2026-06-19 10:34:23
[2026-06-19 10:34:23,733.733 INFO    ] 2026-06-19 10:34:23
[2026-06-19 10:34:23,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:34:24,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:34:24,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:34:24,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:34:24,198.198 INFO    ] time= 19/06/2026 10:34:24
[2026-06-19 10:34:24,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:34:24,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:34:24,429.429 INFO    ] No existing commands found in stream
[2026-06-19 10:34:29,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:34:29,448.448 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 10:34:30,088.088 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:34:30,090.090 INFO    ] Checking for system updates...
[2026-06-19 10:34:30,129.129 INFO    ] 200
[2026-06-19 10:34:30,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:30,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:34:30,193.193 INFO    ] No update needed
[2026-06-19 10:34:30,196.196 INFO    ] Checking for camera pi updates...
[2026-06-19 10:34:30,230.230 INFO    ] 200
[2026-06-19 10:34:30,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:30,274.274 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:34:30,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:34:30,319.319 INFO    ] No camera update needed
[2026-06-19 10:34:30,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:34:30,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:34:30,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:34:30,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:34:32,379.379 INFO    ] ================================================
[2026-06-19 10:34:32,395.395 INFO    ] Launching Daemon at Fri Jun 19 10:34:32 IST 2026
[2026-06-19 10:34:32,407.407 INFO    ] ================================================
[2026-06-19 10:34:33,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:34:33
[2026-06-19 10:34:33,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:34:33,988.988 INFO    ] Initializing speech engine...
[2026-06-19 10:34:33,996.996 INFO    ] 2026-06-19 10:34:33
[2026-06-19 10:34:34,279.279 INFO    ] 2026-06-19 10:34:34
[2026-06-19 10:34:34,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:34:34,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:34:34,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:34:34,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:34:34,765.765 INFO    ] time= 19/06/2026 10:34:34
[2026-06-19 10:34:34,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:34:34,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:34:34,988.988 INFO    ] No existing commands found in stream
[2026-06-19 10:34:40,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:34:40,032.032 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 10:34:41,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:34:41,066.066 INFO    ] Checking for system updates...
[2026-06-19 10:34:41,103.103 INFO    ] 200
[2026-06-19 10:34:41,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:41,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:34:41,163.163 INFO    ] No update needed
[2026-06-19 10:34:41,165.165 INFO    ] Checking for camera pi updates...
[2026-06-19 10:34:41,200.200 INFO    ] 200
[2026-06-19 10:34:41,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:41,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:34:41,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:34:41,291.291 INFO    ] No camera update needed
[2026-06-19 10:34:41,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:34:41,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:34:41,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:34:41,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:34:43,351.351 INFO    ] ================================================
[2026-06-19 10:34:43,367.367 INFO    ] Launching Daemon at Fri Jun 19 10:34:43 IST 2026
[2026-06-19 10:34:43,377.377 INFO    ] ================================================
[2026-06-19 10:34:43,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:34:43
[2026-06-19 10:34:44,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:34:44,834.834 INFO    ] Initializing speech engine...
[2026-06-19 10:34:44,854.854 INFO    ] 2026-06-19 10:34:44
[2026-06-19 10:34:45,123.123 INFO    ] 2026-06-19 10:34:45
[2026-06-19 10:34:45,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:34:45,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:34:45,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:34:45,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:34:45,520.520 INFO    ] time= 19/06/2026 10:34:45
[2026-06-19 10:34:45,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:34:45,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:34:45,628.628 INFO    ] No existing commands found in stream
[2026-06-19 10:34:50,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:34:50,643.643 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 10:34:54,242.242 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:34:54,245.245 INFO    ] Checking for system updates...
[2026-06-19 10:34:54,287.287 INFO    ] 200
[2026-06-19 10:34:54,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:54,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:34:54,353.353 INFO    ] No update needed
[2026-06-19 10:34:54,356.356 INFO    ] Checking for camera pi updates...
[2026-06-19 10:34:54,395.395 INFO    ] 200
[2026-06-19 10:34:54,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:34:54,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:34:54,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:34:54,490.490 INFO    ] No camera update needed
[2026-06-19 10:34:54,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:34:54,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:34:54,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:34:54,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:34:56,548.548 INFO    ] ================================================
[2026-06-19 10:34:56,563.563 INFO    ] Launching Daemon at Fri Jun 19 10:34:56 IST 2026
[2026-06-19 10:34:56,574.574 INFO    ] ================================================
[2026-06-19 10:34:57,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:34:57
[2026-06-19 10:34:57,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:34:58,100.100 INFO    ] Initializing speech engine...
[2026-06-19 10:34:58,113.113 INFO    ] 2026-06-19 10:34:58
[2026-06-19 10:34:58,401.401 INFO    ] 2026-06-19 10:34:58
[2026-06-19 10:34:58,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:34:58,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:34:58,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:34:58,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:34:59,040.040 INFO    ] time= 19/06/2026 10:34:58
[2026-06-19 10:34:59,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:34:59,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:34:59,184.184 INFO    ] No existing commands found in stream
[2026-06-19 10:35:04,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:35:04,210.210 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 10:35:06,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:35:06,583.583 INFO    ] Checking for system updates...
[2026-06-19 10:35:06,619.619 INFO    ] 200
[2026-06-19 10:35:06,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:06,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:06,677.677 INFO    ] No update needed
[2026-06-19 10:35:06,679.679 INFO    ] Checking for camera pi updates...
[2026-06-19 10:35:06,714.714 INFO    ] 200
[2026-06-19 10:35:06,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:06,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:35:06,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:06,804.804 INFO    ] No camera update needed
[2026-06-19 10:35:06,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:35:06,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:35:06,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:35:06,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:35:08,861.861 INFO    ] ================================================
[2026-06-19 10:35:08,876.876 INFO    ] Launching Daemon at Fri Jun 19 10:35:08 IST 2026
[2026-06-19 10:35:08,886.886 INFO    ] ================================================
[2026-06-19 10:35:09,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:35:09
[2026-06-19 10:35:10,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:35:10,504.504 INFO    ] Initializing speech engine...
[2026-06-19 10:35:10,516.516 INFO    ] 2026-06-19 10:35:10
[2026-06-19 10:35:10,799.799 INFO    ] 2026-06-19 10:35:10
[2026-06-19 10:35:10,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:35:11,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:35:11,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:35:11,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:35:11,330.330 INFO    ] time= 19/06/2026 10:35:11
[2026-06-19 10:35:11,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:35:11,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:35:11,489.489 INFO    ] No existing commands found in stream
[2026-06-19 10:35:16,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:35:16,508.508 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 10:35:17,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:35:17,711.711 INFO    ] Checking for system updates...
[2026-06-19 10:35:17,750.750 INFO    ] 200
[2026-06-19 10:35:17,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:17,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:17,815.815 INFO    ] No update needed
[2026-06-19 10:35:17,819.819 INFO    ] Checking for camera pi updates...
[2026-06-19 10:35:17,857.857 INFO    ] 200
[2026-06-19 10:35:17,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:17,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:35:17,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:17,946.946 INFO    ] No camera update needed
[2026-06-19 10:35:17,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:35:17,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:35:17,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:35:17,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:35:20,005.005 INFO    ] ================================================
[2026-06-19 10:35:20,020.020 INFO    ] Launching Daemon at Fri Jun 19 10:35:20 IST 2026
[2026-06-19 10:35:20,031.031 INFO    ] ================================================
[2026-06-19 10:35:20,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:35:20
[2026-06-19 10:35:21,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:35:21,629.629 INFO    ] Initializing speech engine...
[2026-06-19 10:35:21,638.638 INFO    ] 2026-06-19 10:35:21
[2026-06-19 10:35:21,909.909 INFO    ] 2026-06-19 10:35:21
[2026-06-19 10:35:21,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:35:22,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:35:22,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:35:22,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:35:22,406.406 INFO    ] time= 19/06/2026 10:35:22
[2026-06-19 10:35:22,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:35:22,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:35:22,835.835 INFO    ] No existing commands found in stream
[2026-06-19 10:35:27,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:35:27,864.864 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 10:35:31,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:35:31,222.222 INFO    ] Checking for system updates...
[2026-06-19 10:35:31,263.263 INFO    ] 200
[2026-06-19 10:35:31,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:31,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:31,321.321 INFO    ] No update needed
[2026-06-19 10:35:31,323.323 INFO    ] Checking for camera pi updates...
[2026-06-19 10:35:31,357.357 INFO    ] 200
[2026-06-19 10:35:31,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:31,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:35:31,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:31,545.545 INFO    ] No camera update needed
[2026-06-19 10:35:31,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:35:31,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:35:31,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:35:31,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:35:33,608.608 INFO    ] ================================================
[2026-06-19 10:35:33,623.623 INFO    ] Launching Daemon at Fri Jun 19 10:35:33 IST 2026
[2026-06-19 10:35:33,634.634 INFO    ] ================================================
[2026-06-19 10:35:34,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:35:34
[2026-06-19 10:35:34,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:35:35,221.221 INFO    ] Initializing speech engine...
[2026-06-19 10:35:35,235.235 INFO    ] 2026-06-19 10:35:35
[2026-06-19 10:35:35,511.511 INFO    ] 2026-06-19 10:35:35
[2026-06-19 10:35:35,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:35:35,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:35:35,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:35:35,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:35:35,978.978 INFO    ] time= 19/06/2026 10:35:35
[2026-06-19 10:35:36,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:35:36,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:35:36,198.198 INFO    ] No existing commands found in stream
[2026-06-19 10:35:41,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:35:41,220.220 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 10:35:42,337.337 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:35:42,340.340 INFO    ] Checking for system updates...
[2026-06-19 10:35:42,379.379 INFO    ] 200
[2026-06-19 10:35:42,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:42,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:42,437.437 INFO    ] No update needed
[2026-06-19 10:35:42,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 10:35:42,473.473 INFO    ] 200
[2026-06-19 10:35:42,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:42,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:35:42,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:42,569.569 INFO    ] No camera update needed
[2026-06-19 10:35:42,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:35:42,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:35:42,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:35:42,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:35:44,625.625 INFO    ] ================================================
[2026-06-19 10:35:44,640.640 INFO    ] Launching Daemon at Fri Jun 19 10:35:44 IST 2026
[2026-06-19 10:35:44,651.651 INFO    ] ================================================
[2026-06-19 10:35:45,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:35:45
[2026-06-19 10:35:45,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:35:46,088.088 INFO    ] Initializing speech engine...
[2026-06-19 10:35:46,106.106 INFO    ] 2026-06-19 10:35:46
[2026-06-19 10:35:46,369.369 INFO    ] 2026-06-19 10:35:46
[2026-06-19 10:35:46,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:35:46,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:35:46,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:35:46,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:35:46,781.781 INFO    ] time= 19/06/2026 10:35:46
[2026-06-19 10:35:46,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:35:46,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:35:46,952.952 INFO    ] No existing commands found in stream
[2026-06-19 10:35:51,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:35:51,981.981 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 10:35:55,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:35:55,325.325 INFO    ] Checking for system updates...
[2026-06-19 10:35:55,378.378 INFO    ] 200
[2026-06-19 10:35:55,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:55,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:55,437.437 INFO    ] No update needed
[2026-06-19 10:35:55,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 10:35:55,474.474 INFO    ] 200
[2026-06-19 10:35:55,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:35:55,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:35:55,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:35:55,569.569 INFO    ] No camera update needed
[2026-06-19 10:35:55,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:35:55,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:35:55,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:35:55,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:35:57,624.624 INFO    ] ================================================
[2026-06-19 10:35:57,639.639 INFO    ] Launching Daemon at Fri Jun 19 10:35:57 IST 2026
[2026-06-19 10:35:57,649.649 INFO    ] ================================================
[2026-06-19 10:35:58,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:35:58
[2026-06-19 10:35:58,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:35:59,155.155 INFO    ] Initializing speech engine...
[2026-06-19 10:35:59,168.168 INFO    ] 2026-06-19 10:35:59
[2026-06-19 10:35:59,444.444 INFO    ] 2026-06-19 10:35:59
[2026-06-19 10:35:59,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:35:59,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:35:59,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:35:59,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:35:59,986.986 INFO    ] time= 19/06/2026 10:35:59
[2026-06-19 10:36:00,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:36:00,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:36:00,151.151 INFO    ] No existing commands found in stream
[2026-06-19 10:36:05,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:36:05,181.181 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 10:36:08,482.482 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:36:08,485.485 INFO    ] Checking for system updates...
[2026-06-19 10:36:08,521.521 INFO    ] 200
[2026-06-19 10:36:08,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:08,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:08,580.580 INFO    ] No update needed
[2026-06-19 10:36:08,583.583 INFO    ] Checking for camera pi updates...
[2026-06-19 10:36:08,618.618 INFO    ] 200
[2026-06-19 10:36:08,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:08,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:36:08,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:08,712.712 INFO    ] No camera update needed
[2026-06-19 10:36:08,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:36:08,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:36:08,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:36:08,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:36:10,771.771 INFO    ] ================================================
[2026-06-19 10:36:10,787.787 INFO    ] Launching Daemon at Fri Jun 19 10:36:10 IST 2026
[2026-06-19 10:36:10,797.797 INFO    ] ================================================
[2026-06-19 10:36:11,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:36:11
[2026-06-19 10:36:11,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:36:12,211.211 INFO    ] Initializing speech engine...
[2026-06-19 10:36:12,226.226 INFO    ] 2026-06-19 10:36:12
[2026-06-19 10:36:12,506.506 INFO    ] 2026-06-19 10:36:12
[2026-06-19 10:36:12,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:36:12,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:36:12,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:36:12,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:36:12,921.921 INFO    ] time= 19/06/2026 10:36:12
[2026-06-19 10:36:12,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:36:12,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:36:13,004.004 INFO    ] No existing commands found in stream
[2026-06-19 10:36:18,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:36:18,020.020 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 10:36:19,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:36:19,353.353 INFO    ] Checking for system updates...
[2026-06-19 10:36:19,389.389 INFO    ] 200
[2026-06-19 10:36:19,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:19,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:19,446.446 INFO    ] No update needed
[2026-06-19 10:36:19,449.449 INFO    ] Checking for camera pi updates...
[2026-06-19 10:36:19,482.482 INFO    ] 200
[2026-06-19 10:36:19,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:19,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:36:19,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:19,572.572 INFO    ] No camera update needed
[2026-06-19 10:36:19,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:36:19,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:36:19,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:36:19,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:36:21,632.632 INFO    ] ================================================
[2026-06-19 10:36:21,647.647 INFO    ] Launching Daemon at Fri Jun 19 10:36:21 IST 2026
[2026-06-19 10:36:21,657.657 INFO    ] ================================================
[2026-06-19 10:36:22,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:36:22
[2026-06-19 10:36:22,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:36:23,186.186 INFO    ] Initializing speech engine...
[2026-06-19 10:36:23,202.202 INFO    ] 2026-06-19 10:36:23
[2026-06-19 10:36:23,496.496 INFO    ] 2026-06-19 10:36:23
[2026-06-19 10:36:23,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:36:23,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:36:23,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:36:23,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:36:23,892.892 INFO    ] time= 19/06/2026 10:36:23
[2026-06-19 10:36:23,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:36:23,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:36:24,026.026 INFO    ] No existing commands found in stream
[2026-06-19 10:36:29,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:36:29,042.042 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 10:36:32,901.901 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:36:32,903.903 INFO    ] Checking for system updates...
[2026-06-19 10:36:32,939.939 INFO    ] 200
[2026-06-19 10:36:32,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:32,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:32,998.998 INFO    ] No update needed
[2026-06-19 10:36:33,000.000 INFO    ] Checking for camera pi updates...
[2026-06-19 10:36:33,038.038 INFO    ] 200
[2026-06-19 10:36:33,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:33,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:36:33,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:33,114.114 INFO    ] No camera update needed
[2026-06-19 10:36:33,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:36:33,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:36:33,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:36:33,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:36:35,172.172 INFO    ] ================================================
[2026-06-19 10:36:35,187.187 INFO    ] Launching Daemon at Fri Jun 19 10:36:35 IST 2026
[2026-06-19 10:36:35,197.197 INFO    ] ================================================
[2026-06-19 10:36:35,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:36:35
[2026-06-19 10:36:36,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:36:36,615.615 INFO    ] Initializing speech engine...
[2026-06-19 10:36:36,628.628 INFO    ] 2026-06-19 10:36:36
[2026-06-19 10:36:36,897.897 INFO    ] 2026-06-19 10:36:36
[2026-06-19 10:36:36,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:36:37,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:36:37,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:36:37,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:36:37,278.278 INFO    ] time= 19/06/2026 10:36:37
[2026-06-19 10:36:37,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:36:37,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:36:37,479.479 INFO    ] No existing commands found in stream
[2026-06-19 10:36:42,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:36:42,492.492 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 10:36:44,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:36:44,855.855 INFO    ] Checking for system updates...
[2026-06-19 10:36:44,891.891 INFO    ] 200
[2026-06-19 10:36:44,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:44,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:44,948.948 INFO    ] No update needed
[2026-06-19 10:36:44,951.951 INFO    ] Checking for camera pi updates...
[2026-06-19 10:36:44,986.986 INFO    ] 200
[2026-06-19 10:36:44,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:45,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:36:45,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:45,077.077 INFO    ] No camera update needed
[2026-06-19 10:36:45,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:36:45,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:36:45,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:36:45,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:36:47,135.135 INFO    ] ================================================
[2026-06-19 10:36:47,150.150 INFO    ] Launching Daemon at Fri Jun 19 10:36:47 IST 2026
[2026-06-19 10:36:47,161.161 INFO    ] ================================================
[2026-06-19 10:36:47,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:36:47
[2026-06-19 10:36:48,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:36:48,582.582 INFO    ] Initializing speech engine...
[2026-06-19 10:36:48,590.590 INFO    ] 2026-06-19 10:36:48
[2026-06-19 10:36:48,841.841 INFO    ] 2026-06-19 10:36:48
[2026-06-19 10:36:48,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:36:49,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:36:49,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:36:49,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:36:49,290.290 INFO    ] time= 19/06/2026 10:36:49
[2026-06-19 10:36:49,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:36:49,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:36:49,557.557 INFO    ] No existing commands found in stream
[2026-06-19 10:36:54,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:36:54,583.583 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 10:36:58,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:36:58,028.028 INFO    ] Checking for system updates...
[2026-06-19 10:36:58,064.064 INFO    ] 200
[2026-06-19 10:36:58,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:58,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:58,123.123 INFO    ] No update needed
[2026-06-19 10:36:58,125.125 INFO    ] Checking for camera pi updates...
[2026-06-19 10:36:58,158.158 INFO    ] 200
[2026-06-19 10:36:58,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:36:58,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:36:58,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:36:58,249.249 INFO    ] No camera update needed
[2026-06-19 10:36:58,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:36:58,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:36:58,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:36:58,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:37:00,306.306 INFO    ] ================================================
[2026-06-19 10:37:00,320.320 INFO    ] Launching Daemon at Fri Jun 19 10:37:00 IST 2026
[2026-06-19 10:37:00,331.331 INFO    ] ================================================
[2026-06-19 10:37:00,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:37:00
[2026-06-19 10:37:01,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:37:02,102.102 INFO    ] Initializing speech engine...
[2026-06-19 10:37:02,114.114 INFO    ] 2026-06-19 10:37:02
[2026-06-19 10:37:02,444.444 INFO    ] 2026-06-19 10:37:02
[2026-06-19 10:37:02,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:37:02,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:37:02,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:37:02,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:37:03,008.008 INFO    ] time= 19/06/2026 10:37:02
[2026-06-19 10:37:03,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:37:03,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:37:03,203.203 INFO    ] No existing commands found in stream
[2026-06-19 10:37:08,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:37:08,237.237 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 10:37:10,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:37:10,715.715 INFO    ] Checking for system updates...
[2026-06-19 10:37:10,753.753 INFO    ] 200
[2026-06-19 10:37:10,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:37:10,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:37:10,821.821 INFO    ] No update needed
[2026-06-19 10:37:10,824.824 INFO    ] Checking for camera pi updates...
[2026-06-19 10:37:10,860.860 INFO    ] 200
[2026-06-19 10:37:10,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:37:10,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:37:10,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:37:10,956.956 INFO    ] No camera update needed
[2026-06-19 10:37:10,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:37:10,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:37:10,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:37:10,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:37:13,013.013 INFO    ] ================================================
[2026-06-19 10:37:13,029.029 INFO    ] Launching Daemon at Fri Jun 19 10:37:13 IST 2026
[2026-06-19 10:37:13,040.040 INFO    ] ================================================
[2026-06-19 10:37:13,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:37:13
[2026-06-19 10:37:14,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:37:14,448.448 INFO    ] Initializing speech engine...
[2026-06-19 10:37:14,455.455 INFO    ] 2026-06-19 10:37:14
[2026-06-19 10:37:14,753.753 INFO    ] 2026-06-19 10:37:14
[2026-06-19 10:37:14,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:37:14,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:37:15,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:37:15,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:37:15,173.173 INFO    ] time= 19/06/2026 10:37:15
[2026-06-19 10:37:15,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:37:15,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:37:15,265.265 INFO    ] No existing commands found in stream
[2026-06-19 10:37:20,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:37:20,283.283 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 10:37:24,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:37:24,102.102 INFO    ] Checking for system updates...
[2026-06-19 10:37:24,140.140 INFO    ] 200
[2026-06-19 10:37:24,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:37:24,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:37:24,205.205 INFO    ] No update needed
[2026-06-19 10:37:24,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 10:37:24,241.241 INFO    ] 200
[2026-06-19 10:37:24,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:37:24,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:37:24,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:37:24,332.332 INFO    ] No camera update needed
[2026-06-19 10:37:24,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:37:24,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:37:24,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:37:24,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:37:26,388.388 INFO    ] ================================================
[2026-06-19 10:37:26,403.403 INFO    ] Launching Daemon at Fri Jun 19 10:37:26 IST 2026
[2026-06-19 10:37:26,414.414 INFO    ] ================================================
[2026-06-19 10:37:26,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:37:26
[2026-06-19 10:37:27,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:37:27,881.881 INFO    ] Initializing speech engine...
[2026-06-19 10:37:27,890.890 INFO    ] 2026-06-19 10:37:27
[2026-06-19 10:37:28,150.150 INFO    ] 2026-06-19 10:37:28
[2026-06-19 10:37:28,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:37:28,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:37:28,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:37:28,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:37:28,646.646 INFO    ] time= 19/06/2026 10:37:28
[2026-06-19 10:37:28,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:37:28,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:37:28,836.836 INFO    ] No existing commands found in stream
[2026-06-19 10:37:33,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:37:33,864.864 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 10:37:38,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:37:38,055.055 INFO    ] Checking for system updates...
[2026-06-19 10:37:38,092.092 INFO    ] 200
[2026-06-19 10:37:38,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:37:38,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:37:38,163.163 INFO    ] No update needed
[2026-06-19 10:37:38,165.165 INFO    ] Checking for camera pi updates...
[2026-06-19 10:37:38,203.203 INFO    ] 200
[2026-06-19 10:37:38,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:37:38,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:37:38,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:37:38,396.396 INFO    ] No camera update needed
[2026-06-19 10:37:38,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:37:38,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:37:38,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:37:38,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:37:40,452.452 INFO    ] ================================================
[2026-06-19 10:37:40,467.467 INFO    ] Launching Daemon at Fri Jun 19 10:37:40 IST 2026
[2026-06-19 10:37:40,478.478 INFO    ] ================================================
[2026-06-19 10:37:41,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:37:41
[2026-06-19 10:37:41,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:37:41,937.937 INFO    ] Initializing speech engine...
[2026-06-19 10:37:41,949.949 INFO    ] 2026-06-19 10:37:41
[2026-06-19 10:37:42,200.200 INFO    ] 2026-06-19 10:37:42
[2026-06-19 10:37:42,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:37:42,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:37:42,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:37:42,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:37:42,682.682 INFO    ] time= 19/06/2026 10:37:42
[2026-06-19 10:37:42,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:37:42,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:37:42,917.917 INFO    ] No existing commands found in stream
[2026-06-19 10:37:47,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:37:47,942.942 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 10:37:50,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:37:50,994.994 INFO    ] Checking for system updates...
[2026-06-19 10:37:51,031.031 INFO    ] 200
[2026-06-19 10:37:51,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:37:51,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:37:51,090.090 INFO    ] No update needed
[2026-06-19 10:37:51,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 10:37:51,125.125 INFO    ] 200
[2026-06-19 10:37:51,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:37:51,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:37:51,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:37:51,221.221 INFO    ] No camera update needed
[2026-06-19 10:37:51,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:37:51,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:37:51,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:37:51,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:37:53,275.275 INFO    ] ================================================
[2026-06-19 10:37:53,290.290 INFO    ] Launching Daemon at Fri Jun 19 10:37:53 IST 2026
[2026-06-19 10:37:53,301.301 INFO    ] ================================================
[2026-06-19 10:37:53,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:37:53
[2026-06-19 10:37:54,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:37:54,722.722 INFO    ] Initializing speech engine...
[2026-06-19 10:37:54,732.732 INFO    ] 2026-06-19 10:37:54
[2026-06-19 10:37:54,981.981 INFO    ] 2026-06-19 10:37:54
[2026-06-19 10:37:55,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:37:55,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:37:55,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:37:55,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:37:55,513.513 INFO    ] time= 19/06/2026 10:37:55
[2026-06-19 10:37:55,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:37:55,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:37:55,704.704 INFO    ] No existing commands found in stream
[2026-06-19 10:38:00,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:38:00,722.722 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 10:38:04,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:38:04,725.725 INFO    ] Checking for system updates...
[2026-06-19 10:38:04,766.766 INFO    ] 200
[2026-06-19 10:38:04,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:04,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:38:04,831.831 INFO    ] No update needed
[2026-06-19 10:38:04,834.834 INFO    ] Checking for camera pi updates...
[2026-06-19 10:38:04,868.868 INFO    ] 200
[2026-06-19 10:38:04,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:04,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:38:04,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:38:04,954.954 INFO    ] No camera update needed
[2026-06-19 10:38:04,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:38:04,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:38:04,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:38:04,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:38:07,010.010 INFO    ] ================================================
[2026-06-19 10:38:07,030.030 INFO    ] Launching Daemon at Fri Jun 19 10:38:07 IST 2026
[2026-06-19 10:38:07,041.041 INFO    ] ================================================
[2026-06-19 10:38:07,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:38:07
[2026-06-19 10:38:08,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:38:08,443.443 INFO    ] Initializing speech engine...
[2026-06-19 10:38:08,465.465 INFO    ] 2026-06-19 10:38:08
[2026-06-19 10:38:08,725.725 INFO    ] 2026-06-19 10:38:08
[2026-06-19 10:38:08,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:38:08,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:38:09,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:38:09,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:38:09,292.292 INFO    ] time= 19/06/2026 10:38:09
[2026-06-19 10:38:09,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:38:09,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:38:09,470.470 INFO    ] No existing commands found in stream
[2026-06-19 10:38:14,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:38:14,505.505 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 10:38:16,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:38:16,698.698 INFO    ] Checking for system updates...
[2026-06-19 10:38:16,739.739 INFO    ] 200
[2026-06-19 10:38:16,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:16,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:38:16,796.796 INFO    ] No update needed
[2026-06-19 10:38:16,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 10:38:16,832.832 INFO    ] 200
[2026-06-19 10:38:16,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:16,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:38:16,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:38:16,927.927 INFO    ] No camera update needed
[2026-06-19 10:38:16,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:38:16,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:38:16,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:38:16,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:38:18,981.981 INFO    ] ================================================
[2026-06-19 10:38:19,997.997 INFO    ] Launching Daemon at Fri Jun 19 10:38:18 IST 2026
[2026-06-19 10:38:19,007.007 INFO    ] ================================================
[2026-06-19 10:38:19,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:38:19
[2026-06-19 10:38:20,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:38:20,638.638 INFO    ] Initializing speech engine...
[2026-06-19 10:38:20,650.650 INFO    ] 2026-06-19 10:38:20
[2026-06-19 10:38:20,947.947 INFO    ] 2026-06-19 10:38:20
[2026-06-19 10:38:21,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:38:21,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:38:21,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:38:21,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:38:21,461.461 INFO    ] time= 19/06/2026 10:38:21
[2026-06-19 10:38:21,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:38:21,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:38:21,616.616 INFO    ] No existing commands found in stream
[2026-06-19 10:38:26,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:38:26,642.642 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 10:38:28,979.979 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:38:28,981.981 INFO    ] Checking for system updates...
[2026-06-19 10:38:29,018.018 INFO    ] 200
[2026-06-19 10:38:29,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:29,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:38:29,077.077 INFO    ] No update needed
[2026-06-19 10:38:29,080.080 INFO    ] Checking for camera pi updates...
[2026-06-19 10:38:29,115.115 INFO    ] 200
[2026-06-19 10:38:29,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:29,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:38:29,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:38:29,209.209 INFO    ] No camera update needed
[2026-06-19 10:38:29,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:38:29,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:38:29,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:38:29,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:38:31,266.266 INFO    ] ================================================
[2026-06-19 10:38:31,281.281 INFO    ] Launching Daemon at Fri Jun 19 10:38:31 IST 2026
[2026-06-19 10:38:31,293.293 INFO    ] ================================================
[2026-06-19 10:38:31,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:38:31
[2026-06-19 10:38:32,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:38:32,791.791 INFO    ] Initializing speech engine...
[2026-06-19 10:38:32,807.807 INFO    ] 2026-06-19 10:38:32
[2026-06-19 10:38:33,093.093 INFO    ] 2026-06-19 10:38:33
[2026-06-19 10:38:33,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:38:33,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:38:33,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:38:33,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:38:33,479.479 INFO    ] time= 19/06/2026 10:38:33
[2026-06-19 10:38:33,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:38:33,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:38:33,648.648 INFO    ] No existing commands found in stream
[2026-06-19 10:38:38,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:38:38,670.670 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 10:38:41,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:38:41,918.918 INFO    ] Checking for system updates...
[2026-06-19 10:38:41,954.954 INFO    ] 200
[2026-06-19 10:38:41,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:42,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:38:42,019.019 INFO    ] No update needed
[2026-06-19 10:38:42,021.021 INFO    ] Checking for camera pi updates...
[2026-06-19 10:38:42,059.059 INFO    ] 200
[2026-06-19 10:38:42,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:42,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:38:42,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:38:42,146.146 INFO    ] No camera update needed
[2026-06-19 10:38:42,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:38:42,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:38:42,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:38:42,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:38:44,200.200 INFO    ] ================================================
[2026-06-19 10:38:44,216.216 INFO    ] Launching Daemon at Fri Jun 19 10:38:44 IST 2026
[2026-06-19 10:38:44,226.226 INFO    ] ================================================
[2026-06-19 10:38:44,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:38:44
[2026-06-19 10:38:45,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:38:45,658.658 INFO    ] Initializing speech engine...
[2026-06-19 10:38:45,677.677 INFO    ] 2026-06-19 10:38:45
[2026-06-19 10:38:45,931.931 INFO    ] 2026-06-19 10:38:45
[2026-06-19 10:38:45,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:38:46,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:38:46,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:38:46,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:38:46,312.312 INFO    ] time= 19/06/2026 10:38:46
[2026-06-19 10:38:46,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:38:46,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:38:46,451.451 INFO    ] No existing commands found in stream
[2026-06-19 10:38:51,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:38:51,489.489 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 10:38:52,064.064 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:38:52,066.066 INFO    ] Checking for system updates...
[2026-06-19 10:38:52,103.103 INFO    ] 200
[2026-06-19 10:38:52,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:52,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:38:52,168.168 INFO    ] No update needed
[2026-06-19 10:38:52,170.170 INFO    ] Checking for camera pi updates...
[2026-06-19 10:38:52,204.204 INFO    ] 200
[2026-06-19 10:38:52,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:38:52,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:38:52,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:38:52,305.305 INFO    ] No camera update needed
[2026-06-19 10:38:52,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:38:52,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:38:52,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:38:52,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:38:54,361.361 INFO    ] ================================================
[2026-06-19 10:38:54,377.377 INFO    ] Launching Daemon at Fri Jun 19 10:38:54 IST 2026
[2026-06-19 10:38:54,387.387 INFO    ] ================================================
[2026-06-19 10:38:54,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:38:54
[2026-06-19 10:38:55,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:38:55,847.847 INFO    ] Initializing speech engine...
[2026-06-19 10:38:55,863.863 INFO    ] 2026-06-19 10:38:55
[2026-06-19 10:38:56,152.152 INFO    ] 2026-06-19 10:38:56
[2026-06-19 10:38:56,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:38:56,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:38:56,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:38:56,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:38:56,561.561 INFO    ] time= 19/06/2026 10:38:56
[2026-06-19 10:38:56,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:38:56,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:38:56,670.670 INFO    ] No existing commands found in stream
[2026-06-19 10:39:01,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:39:01,687.687 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 10:39:03,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:39:03,679.679 INFO    ] Checking for system updates...
[2026-06-19 10:39:03,715.715 INFO    ] 200
[2026-06-19 10:39:03,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:03,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:39:03,781.781 INFO    ] No update needed
[2026-06-19 10:39:03,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 10:39:03,826.826 INFO    ] 200
[2026-06-19 10:39:03,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:03,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:39:03,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:39:03,919.919 INFO    ] No camera update needed
[2026-06-19 10:39:03,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:39:03,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:39:03,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:39:03,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:39:05,979.979 INFO    ] ================================================
[2026-06-19 10:39:06,994.994 INFO    ] Launching Daemon at Fri Jun 19 10:39:05 IST 2026
[2026-06-19 10:39:06,006.006 INFO    ] ================================================
[2026-06-19 10:39:06,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:39:06
[2026-06-19 10:39:07,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:39:07,503.503 INFO    ] Initializing speech engine...
[2026-06-19 10:39:07,520.520 INFO    ] 2026-06-19 10:39:07
[2026-06-19 10:39:07,811.811 INFO    ] 2026-06-19 10:39:07
[2026-06-19 10:39:07,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:39:08,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:39:08,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:39:08,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:39:08,220.220 INFO    ] time= 19/06/2026 10:39:08
[2026-06-19 10:39:08,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:39:08,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:39:08,332.332 INFO    ] No existing commands found in stream
[2026-06-19 10:39:13,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:39:13,349.349 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 10:39:15,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:39:15,765.765 INFO    ] Checking for system updates...
[2026-06-19 10:39:15,801.801 INFO    ] 200
[2026-06-19 10:39:15,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:15,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:39:15,861.861 INFO    ] No update needed
[2026-06-19 10:39:15,863.863 INFO    ] Checking for camera pi updates...
[2026-06-19 10:39:15,900.900 INFO    ] 200
[2026-06-19 10:39:15,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:15,953.953 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:39:15,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:39:15,995.995 INFO    ] No camera update needed
[2026-06-19 10:39:15,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:39:16,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:39:16,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:39:16,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:39:18,053.053 INFO    ] ================================================
[2026-06-19 10:39:18,069.069 INFO    ] Launching Daemon at Fri Jun 19 10:39:18 IST 2026
[2026-06-19 10:39:18,080.080 INFO    ] ================================================
[2026-06-19 10:39:18,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:39:18
[2026-06-19 10:39:19,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:39:19,553.553 INFO    ] Initializing speech engine...
[2026-06-19 10:39:19,562.562 INFO    ] 2026-06-19 10:39:19
[2026-06-19 10:39:19,823.823 INFO    ] 2026-06-19 10:39:19
[2026-06-19 10:39:19,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:39:20,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:39:20,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:39:20,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:39:20,308.308 INFO    ] time= 19/06/2026 10:39:20
[2026-06-19 10:39:20,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:39:20,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:39:20,526.526 INFO    ] No existing commands found in stream
[2026-06-19 10:39:25,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:39:25,551.551 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 10:39:27,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:39:27,949.949 INFO    ] Checking for system updates...
[2026-06-19 10:39:27,989.989 INFO    ] 200
[2026-06-19 10:39:27,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:28,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:39:28,048.048 INFO    ] No update needed
[2026-06-19 10:39:28,051.051 INFO    ] Checking for camera pi updates...
[2026-06-19 10:39:28,089.089 INFO    ] 200
[2026-06-19 10:39:28,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:28,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:39:28,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:39:28,176.176 INFO    ] No camera update needed
[2026-06-19 10:39:28,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:39:28,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:39:28,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:39:28,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:39:30,232.232 INFO    ] ================================================
[2026-06-19 10:39:30,247.247 INFO    ] Launching Daemon at Fri Jun 19 10:39:30 IST 2026
[2026-06-19 10:39:30,258.258 INFO    ] ================================================
[2026-06-19 10:39:30,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:39:30
[2026-06-19 10:39:31,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:39:31,744.744 INFO    ] Initializing speech engine...
[2026-06-19 10:39:31,758.758 INFO    ] 2026-06-19 10:39:31
[2026-06-19 10:39:32,023.023 INFO    ] 2026-06-19 10:39:32
[2026-06-19 10:39:32,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:39:32,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:39:32,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:39:32,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:39:32,433.433 INFO    ] time= 19/06/2026 10:39:32
[2026-06-19 10:39:32,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:39:32,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:39:32,611.611 INFO    ] No existing commands found in stream
[2026-06-19 10:39:37,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:39:37,626.626 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 10:39:39,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:39:39,225.225 INFO    ] Checking for system updates...
[2026-06-19 10:39:39,267.267 INFO    ] 200
[2026-06-19 10:39:39,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:39,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:39:39,332.332 INFO    ] No update needed
[2026-06-19 10:39:39,335.335 INFO    ] Checking for camera pi updates...
[2026-06-19 10:39:39,369.369 INFO    ] 200
[2026-06-19 10:39:39,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:39,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:39:39,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:39:39,565.565 INFO    ] No camera update needed
[2026-06-19 10:39:39,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:39:39,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:39:39,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:39:39,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:39:41,626.626 INFO    ] ================================================
[2026-06-19 10:39:41,641.641 INFO    ] Launching Daemon at Fri Jun 19 10:39:41 IST 2026
[2026-06-19 10:39:41,652.652 INFO    ] ================================================
[2026-06-19 10:39:42,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:39:42
[2026-06-19 10:39:42,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:39:43,292.292 INFO    ] Initializing speech engine...
[2026-06-19 10:39:43,306.306 INFO    ] 2026-06-19 10:39:43
[2026-06-19 10:39:43,588.588 INFO    ] 2026-06-19 10:39:43
[2026-06-19 10:39:43,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:39:43,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:39:43,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:39:44,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:39:44,126.126 INFO    ] time= 19/06/2026 10:39:44
[2026-06-19 10:39:44,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:39:44,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:39:44,295.295 INFO    ] No existing commands found in stream
[2026-06-19 10:39:49,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:39:49,334.334 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 10:39:50,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:39:50,387.387 INFO    ] Checking for system updates...
[2026-06-19 10:39:50,429.429 INFO    ] 200
[2026-06-19 10:39:50,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:50,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:39:50,492.492 INFO    ] No update needed
[2026-06-19 10:39:50,495.495 INFO    ] Checking for camera pi updates...
[2026-06-19 10:39:50,530.530 INFO    ] 200
[2026-06-19 10:39:50,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:39:50,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:39:50,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:39:50,630.630 INFO    ] No camera update needed
[2026-06-19 10:39:50,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:39:50,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:39:50,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:39:50,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:39:52,693.693 INFO    ] ================================================
[2026-06-19 10:39:52,708.708 INFO    ] Launching Daemon at Fri Jun 19 10:39:52 IST 2026
[2026-06-19 10:39:52,720.720 INFO    ] ================================================
[2026-06-19 10:39:53,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:39:53
[2026-06-19 10:39:53,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:39:54,170.170 INFO    ] Initializing speech engine...
[2026-06-19 10:39:54,191.191 INFO    ] 2026-06-19 10:39:54
[2026-06-19 10:39:54,474.474 INFO    ] 2026-06-19 10:39:54
[2026-06-19 10:39:54,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:39:54,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:39:54,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:39:54,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:39:54,861.861 INFO    ] time= 19/06/2026 10:39:54
[2026-06-19 10:39:54,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:39:54,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:39:54,987.987 INFO    ] No existing commands found in stream
[2026-06-19 10:39:59,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:40:00,002.002 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 10:40:02,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:40:02,720.720 INFO    ] Checking for system updates...
[2026-06-19 10:40:02,810.810 INFO    ] 200
[2026-06-19 10:40:02,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:03,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:40:03,029.029 INFO    ] No update needed
[2026-06-19 10:40:03,033.033 INFO    ] Checking for camera pi updates...
[2026-06-19 10:40:03,102.102 INFO    ] 200
[2026-06-19 10:40:03,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:03,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:40:03,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:40:03,236.236 INFO    ] No camera update needed
[2026-06-19 10:40:03,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:40:03,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:40:03,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:40:03,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:40:05,307.307 INFO    ] ================================================
[2026-06-19 10:40:05,323.323 INFO    ] Launching Daemon at Fri Jun 19 10:40:05 IST 2026
[2026-06-19 10:40:05,334.334 INFO    ] ================================================
[2026-06-19 10:40:05,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:40:05
[2026-06-19 10:40:06,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:40:06,738.738 INFO    ] Initializing speech engine...
[2026-06-19 10:40:06,745.745 INFO    ] 2026-06-19 10:40:06
[2026-06-19 10:40:07,057.057 INFO    ] 2026-06-19 10:40:07
[2026-06-19 10:40:07,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:40:07,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:40:07,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:40:07,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:40:07,477.477 INFO    ] time= 19/06/2026 10:40:07
[2026-06-19 10:40:07,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:40:07,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:40:07,569.569 INFO    ] No existing commands found in stream
[2026-06-19 10:40:12,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:40:12,607.607 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 10:40:15,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:40:15,629.629 INFO    ] Checking for system updates...
[2026-06-19 10:40:15,666.666 INFO    ] 200
[2026-06-19 10:40:15,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:15,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:40:15,724.724 INFO    ] No update needed
[2026-06-19 10:40:15,731.731 INFO    ] Checking for camera pi updates...
[2026-06-19 10:40:15,772.772 INFO    ] 200
[2026-06-19 10:40:15,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:15,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:40:15,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:40:15,871.871 INFO    ] No camera update needed
[2026-06-19 10:40:15,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:40:15,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:40:15,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:40:15,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:40:17,928.928 INFO    ] ================================================
[2026-06-19 10:40:17,943.943 INFO    ] Launching Daemon at Fri Jun 19 10:40:17 IST 2026
[2026-06-19 10:40:17,954.954 INFO    ] ================================================
[2026-06-19 10:40:18,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:40:18
[2026-06-19 10:40:19,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:40:19,369.369 INFO    ] Initializing speech engine...
[2026-06-19 10:40:19,378.378 INFO    ] 2026-06-19 10:40:19
[2026-06-19 10:40:19,672.672 INFO    ] 2026-06-19 10:40:19
[2026-06-19 10:40:19,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:40:19,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:40:19,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:40:20,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:40:20,093.093 INFO    ] time= 19/06/2026 10:40:20
[2026-06-19 10:40:20,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:40:20,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:40:20,268.268 INFO    ] No existing commands found in stream
[2026-06-19 10:40:25,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:40:25,290.290 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 10:40:26,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:40:26,142.142 INFO    ] Checking for system updates...
[2026-06-19 10:40:26,178.178 INFO    ] 200
[2026-06-19 10:40:26,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:26,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:40:26,242.242 INFO    ] No update needed
[2026-06-19 10:40:26,244.244 INFO    ] Checking for camera pi updates...
[2026-06-19 10:40:26,278.278 INFO    ] 200
[2026-06-19 10:40:26,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:26,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:40:26,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:40:26,368.368 INFO    ] No camera update needed
[2026-06-19 10:40:26,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:40:26,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:40:26,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:40:26,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:40:28,424.424 INFO    ] ================================================
[2026-06-19 10:40:28,439.439 INFO    ] Launching Daemon at Fri Jun 19 10:40:28 IST 2026
[2026-06-19 10:40:28,450.450 INFO    ] ================================================
[2026-06-19 10:40:29,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:40:29
[2026-06-19 10:40:29,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:40:29,873.873 INFO    ] Initializing speech engine...
[2026-06-19 10:40:29,882.882 INFO    ] 2026-06-19 10:40:29
[2026-06-19 10:40:30,127.127 INFO    ] 2026-06-19 10:40:30
[2026-06-19 10:40:30,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:40:30,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:40:30,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:40:30,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:40:30,627.627 INFO    ] time= 19/06/2026 10:40:30
[2026-06-19 10:40:30,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:40:30,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:40:30,832.832 INFO    ] No existing commands found in stream
[2026-06-19 10:40:35,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:40:35,850.850 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 10:40:36,309.309 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:40:36,311.311 INFO    ] Checking for system updates...
[2026-06-19 10:40:36,349.349 INFO    ] 200
[2026-06-19 10:40:36,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:36,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:40:36,408.408 INFO    ] No update needed
[2026-06-19 10:40:36,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 10:40:36,446.446 INFO    ] 200
[2026-06-19 10:40:36,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:36,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:40:36,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:40:36,532.532 INFO    ] No camera update needed
[2026-06-19 10:40:36,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:40:36,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:40:36,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:40:36,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:40:38,595.595 INFO    ] ================================================
[2026-06-19 10:40:38,611.611 INFO    ] Launching Daemon at Fri Jun 19 10:40:38 IST 2026
[2026-06-19 10:40:38,621.621 INFO    ] ================================================
[2026-06-19 10:40:39,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:40:39
[2026-06-19 10:40:39,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:40:40,018.018 INFO    ] Initializing speech engine...
[2026-06-19 10:40:40,041.041 INFO    ] 2026-06-19 10:40:40
[2026-06-19 10:40:40,297.297 INFO    ] 2026-06-19 10:40:40
[2026-06-19 10:40:40,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:40:40,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:40:40,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:40:40,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:40:40,762.762 INFO    ] time= 19/06/2026 10:40:40
[2026-06-19 10:40:40,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:40:40,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:40:40,985.985 INFO    ] No existing commands found in stream
[2026-06-19 10:40:46,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:40:46,015.015 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 10:40:47,463.463 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:40:47,466.466 INFO    ] Checking for system updates...
[2026-06-19 10:40:47,503.503 INFO    ] 200
[2026-06-19 10:40:47,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:47,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:40:47,560.560 INFO    ] No update needed
[2026-06-19 10:40:47,563.563 INFO    ] Checking for camera pi updates...
[2026-06-19 10:40:47,597.597 INFO    ] 200
[2026-06-19 10:40:47,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:47,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:40:47,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:40:47,675.675 INFO    ] No camera update needed
[2026-06-19 10:40:47,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:40:47,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:40:47,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:40:47,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:40:49,730.730 INFO    ] ================================================
[2026-06-19 10:40:49,746.746 INFO    ] Launching Daemon at Fri Jun 19 10:40:49 IST 2026
[2026-06-19 10:40:49,756.756 INFO    ] ================================================
[2026-06-19 10:40:50,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:40:50
[2026-06-19 10:40:51,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:40:51,303.303 INFO    ] Initializing speech engine...
[2026-06-19 10:40:51,326.326 INFO    ] 2026-06-19 10:40:51
[2026-06-19 10:40:51,581.581 INFO    ] 2026-06-19 10:40:51
[2026-06-19 10:40:51,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:40:51,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:40:51,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:40:52,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:40:52,032.032 INFO    ] time= 19/06/2026 10:40:52
[2026-06-19 10:40:52,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:40:52,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:40:52,311.311 INFO    ] No existing commands found in stream
[2026-06-19 10:40:57,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:40:57,328.328 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 10:40:57,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:40:57,983.983 INFO    ] Checking for system updates...
[2026-06-19 10:40:58,022.022 INFO    ] 200
[2026-06-19 10:40:58,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:58,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:40:58,081.081 INFO    ] No update needed
[2026-06-19 10:40:58,083.083 INFO    ] Checking for camera pi updates...
[2026-06-19 10:40:58,120.120 INFO    ] 200
[2026-06-19 10:40:58,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:40:58,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:40:58,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:40:58,214.214 INFO    ] No camera update needed
[2026-06-19 10:40:58,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:40:58,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:40:58,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:40:58,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:41:00,270.270 INFO    ] ================================================
[2026-06-19 10:41:00,285.285 INFO    ] Launching Daemon at Fri Jun 19 10:41:00 IST 2026
[2026-06-19 10:41:00,296.296 INFO    ] ================================================
[2026-06-19 10:41:00,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:41:00
[2026-06-19 10:41:01,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:41:01,757.757 INFO    ] Initializing speech engine...
[2026-06-19 10:41:01,768.768 INFO    ] 2026-06-19 10:41:01
[2026-06-19 10:41:02,061.061 INFO    ] 2026-06-19 10:41:02
[2026-06-19 10:41:02,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:41:02,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:41:02,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:41:02,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:41:02,520.520 INFO    ] time= 19/06/2026 10:41:02
[2026-06-19 10:41:02,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:41:02,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:41:02,668.668 INFO    ] No existing commands found in stream
[2026-06-19 10:41:07,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:41:07,683.683 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 10:41:08,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:41:08,565.565 INFO    ] Checking for system updates...
[2026-06-19 10:41:08,601.601 INFO    ] 200
[2026-06-19 10:41:08,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:08,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:41:08,666.666 INFO    ] No update needed
[2026-06-19 10:41:08,669.669 INFO    ] Checking for camera pi updates...
[2026-06-19 10:41:08,703.703 INFO    ] 200
[2026-06-19 10:41:08,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:08,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:41:08,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:41:08,790.790 INFO    ] No camera update needed
[2026-06-19 10:41:08,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:41:08,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:41:08,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:41:08,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:41:10,845.845 INFO    ] ================================================
[2026-06-19 10:41:10,861.861 INFO    ] Launching Daemon at Fri Jun 19 10:41:10 IST 2026
[2026-06-19 10:41:10,872.872 INFO    ] ================================================
[2026-06-19 10:41:11,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:41:11
[2026-06-19 10:41:12,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:41:12,514.514 INFO    ] Initializing speech engine...
[2026-06-19 10:41:12,524.524 INFO    ] 2026-06-19 10:41:12
[2026-06-19 10:41:12,791.791 INFO    ] 2026-06-19 10:41:12
[2026-06-19 10:41:12,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:41:13,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:41:13,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:41:13,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:41:13,267.267 INFO    ] time= 19/06/2026 10:41:13
[2026-06-19 10:41:13,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:41:13,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:41:13,504.504 INFO    ] No existing commands found in stream
[2026-06-19 10:41:18,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:41:18,526.526 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-19 10:41:21,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:41:21,970.970 INFO    ] Checking for system updates...
[2026-06-19 10:41:22,006.006 INFO    ] 200
[2026-06-19 10:41:22,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:22,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:41:22,068.068 INFO    ] No update needed
[2026-06-19 10:41:22,071.071 INFO    ] Checking for camera pi updates...
[2026-06-19 10:41:22,108.108 INFO    ] 200
[2026-06-19 10:41:22,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:22,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:41:22,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:41:22,183.183 INFO    ] No camera update needed
[2026-06-19 10:41:22,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:41:22,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:41:22,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:41:22,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:41:24,240.240 INFO    ] ================================================
[2026-06-19 10:41:24,256.256 INFO    ] Launching Daemon at Fri Jun 19 10:41:24 IST 2026
[2026-06-19 10:41:24,266.266 INFO    ] ================================================
[2026-06-19 10:41:24,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:41:24
[2026-06-19 10:41:25,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:41:25,693.693 INFO    ] Initializing speech engine...
[2026-06-19 10:41:25,710.710 INFO    ] 2026-06-19 10:41:25
[2026-06-19 10:41:25,963.963 INFO    ] 2026-06-19 10:41:25
[2026-06-19 10:41:25,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:41:26,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:41:26,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:41:26,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:41:26,443.443 INFO    ] time= 19/06/2026 10:41:26
[2026-06-19 10:41:26,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:41:26,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:41:26,653.653 INFO    ] No existing commands found in stream
[2026-06-19 10:41:31,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:41:31,682.682 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 10:41:33,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:41:33,048.048 INFO    ] Checking for system updates...
[2026-06-19 10:41:33,087.087 INFO    ] 200
[2026-06-19 10:41:33,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:33,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:41:33,158.158 INFO    ] No update needed
[2026-06-19 10:41:33,161.161 INFO    ] Checking for camera pi updates...
[2026-06-19 10:41:33,198.198 INFO    ] 200
[2026-06-19 10:41:33,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:33,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:41:33,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:41:33,305.305 INFO    ] No camera update needed
[2026-06-19 10:41:33,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:41:33,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:41:33,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:41:33,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:41:35,368.368 INFO    ] ================================================
[2026-06-19 10:41:35,383.383 INFO    ] Launching Daemon at Fri Jun 19 10:41:35 IST 2026
[2026-06-19 10:41:35,395.395 INFO    ] ================================================
[2026-06-19 10:41:36,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:41:36
[2026-06-19 10:41:36,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:41:37,068.068 INFO    ] Initializing speech engine...
[2026-06-19 10:41:37,081.081 INFO    ] 2026-06-19 10:41:37
[2026-06-19 10:41:37,370.370 INFO    ] 2026-06-19 10:41:37
[2026-06-19 10:41:37,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:41:37,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:41:37,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:41:37,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:41:37,922.922 INFO    ] time= 19/06/2026 10:41:37
[2026-06-19 10:41:37,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:41:37,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:41:38,083.083 INFO    ] No existing commands found in stream
[2026-06-19 10:41:43,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:41:43,101.101 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 10:41:44,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:41:44,157.157 INFO    ] Checking for system updates...
[2026-06-19 10:41:44,196.196 INFO    ] 200
[2026-06-19 10:41:44,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:44,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:41:44,256.256 INFO    ] No update needed
[2026-06-19 10:41:44,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 10:41:44,294.294 INFO    ] 200
[2026-06-19 10:41:44,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:44,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:41:44,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:41:44,488.488 INFO    ] No camera update needed
[2026-06-19 10:41:44,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:41:44,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:41:44,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:41:44,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:41:46,544.544 INFO    ] ================================================
[2026-06-19 10:41:46,561.561 INFO    ] Launching Daemon at Fri Jun 19 10:41:46 IST 2026
[2026-06-19 10:41:46,572.572 INFO    ] ================================================
[2026-06-19 10:41:47,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:41:47
[2026-06-19 10:41:47,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:41:48,187.187 INFO    ] Initializing speech engine...
[2026-06-19 10:41:48,199.199 INFO    ] 2026-06-19 10:41:48
[2026-06-19 10:41:48,494.494 INFO    ] 2026-06-19 10:41:48
[2026-06-19 10:41:48,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:41:48,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:41:48,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:41:49,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:41:49,042.042 INFO    ] time= 19/06/2026 10:41:49
[2026-06-19 10:41:49,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:41:49,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:41:49,228.228 INFO    ] No existing commands found in stream
[2026-06-19 10:41:54,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:41:54,262.262 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 10:41:56,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:41:56,999.999 INFO    ] Checking for system updates...
[2026-06-19 10:41:57,042.042 INFO    ] 200
[2026-06-19 10:41:57,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:57,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:41:57,102.102 INFO    ] No update needed
[2026-06-19 10:41:57,105.105 INFO    ] Checking for camera pi updates...
[2026-06-19 10:41:57,139.139 INFO    ] 200
[2026-06-19 10:41:57,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:41:57,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:41:57,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:41:57,232.232 INFO    ] No camera update needed
[2026-06-19 10:41:57,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:41:57,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:41:57,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:41:57,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:41:59,288.288 INFO    ] ================================================
[2026-06-19 10:41:59,304.304 INFO    ] Launching Daemon at Fri Jun 19 10:41:59 IST 2026
[2026-06-19 10:41:59,315.315 INFO    ] ================================================
[2026-06-19 10:41:59,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:41:59
[2026-06-19 10:42:00,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:42:00,990.990 INFO    ] Initializing speech engine...
[2026-06-19 10:42:01,001.001 INFO    ] 2026-06-19 10:42:00
[2026-06-19 10:42:01,290.290 INFO    ] 2026-06-19 10:42:01
[2026-06-19 10:42:01,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:42:01,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:42:01,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:42:01,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:42:01,820.820 INFO    ] time= 19/06/2026 10:42:01
[2026-06-19 10:42:01,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:42:01,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:42:01,972.972 INFO    ] No existing commands found in stream
[2026-06-19 10:42:06,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:42:06,991.991 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 10:42:10,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:42:10,879.879 INFO    ] Checking for system updates...
[2026-06-19 10:42:10,920.920 INFO    ] 200
[2026-06-19 10:42:10,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:10,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:42:10,978.978 INFO    ] No update needed
[2026-06-19 10:42:10,981.981 INFO    ] Checking for camera pi updates...
[2026-06-19 10:42:11,015.015 INFO    ] 200
[2026-06-19 10:42:11,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:11,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:42:11,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:42:11,109.109 INFO    ] No camera update needed
[2026-06-19 10:42:11,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:42:11,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:42:11,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:42:11,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:42:13,164.164 INFO    ] ================================================
[2026-06-19 10:42:13,180.180 INFO    ] Launching Daemon at Fri Jun 19 10:42:13 IST 2026
[2026-06-19 10:42:13,191.191 INFO    ] ================================================
[2026-06-19 10:42:13,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:42:13
[2026-06-19 10:42:14,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:42:14,795.795 INFO    ] Initializing speech engine...
[2026-06-19 10:42:14,809.809 INFO    ] 2026-06-19 10:42:14
[2026-06-19 10:42:15,105.105 INFO    ] 2026-06-19 10:42:15
[2026-06-19 10:42:15,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:42:15,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:42:15,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:42:15,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:42:15,645.645 INFO    ] time= 19/06/2026 10:42:15
[2026-06-19 10:42:15,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:42:15,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:42:15,801.801 INFO    ] No existing commands found in stream
[2026-06-19 10:42:20,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:42:20,821.821 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 10:42:21,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:42:21,376.376 INFO    ] Checking for system updates...
[2026-06-19 10:42:21,414.414 INFO    ] 200
[2026-06-19 10:42:21,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:21,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:42:21,473.473 INFO    ] No update needed
[2026-06-19 10:42:21,475.475 INFO    ] Checking for camera pi updates...
[2026-06-19 10:42:21,509.509 INFO    ] 200
[2026-06-19 10:42:21,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:21,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:42:21,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:42:21,608.608 INFO    ] No camera update needed
[2026-06-19 10:42:21,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:42:21,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:42:21,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:42:21,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:42:23,663.663 INFO    ] ================================================
[2026-06-19 10:42:23,680.680 INFO    ] Launching Daemon at Fri Jun 19 10:42:23 IST 2026
[2026-06-19 10:42:23,690.690 INFO    ] ================================================
[2026-06-19 10:42:24,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:42:24
[2026-06-19 10:42:24,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:42:25,152.152 INFO    ] Initializing speech engine...
[2026-06-19 10:42:25,157.157 INFO    ] 2026-06-19 10:42:25
[2026-06-19 10:42:25,417.417 INFO    ] 2026-06-19 10:42:25
[2026-06-19 10:42:25,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:42:25,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:42:25,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:42:25,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:42:25,876.876 INFO    ] time= 19/06/2026 10:42:25
[2026-06-19 10:42:25,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:42:25,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:42:26,113.113 INFO    ] No existing commands found in stream
[2026-06-19 10:42:31,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:42:31,131.131 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-19 10:42:34,321.321 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:42:34,323.323 INFO    ] Checking for system updates...
[2026-06-19 10:42:34,359.359 INFO    ] 200
[2026-06-19 10:42:34,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:34,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:42:34,418.418 INFO    ] No update needed
[2026-06-19 10:42:34,421.421 INFO    ] Checking for camera pi updates...
[2026-06-19 10:42:34,460.460 INFO    ] 200
[2026-06-19 10:42:34,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:34,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:42:34,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:42:34,546.546 INFO    ] No camera update needed
[2026-06-19 10:42:34,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:42:34,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:42:34,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:42:34,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:42:36,603.603 INFO    ] ================================================
[2026-06-19 10:42:36,619.619 INFO    ] Launching Daemon at Fri Jun 19 10:42:36 IST 2026
[2026-06-19 10:42:36,629.629 INFO    ] ================================================
[2026-06-19 10:42:37,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:42:37
[2026-06-19 10:42:37,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:42:38,061.061 INFO    ] Initializing speech engine...
[2026-06-19 10:42:38,078.078 INFO    ] 2026-06-19 10:42:38
[2026-06-19 10:42:38,362.362 INFO    ] 2026-06-19 10:42:38
[2026-06-19 10:42:38,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:42:38,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:42:38,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:42:38,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:42:38,864.864 INFO    ] time= 19/06/2026 10:42:38
[2026-06-19 10:42:38,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:42:38,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:42:39,076.076 INFO    ] No existing commands found in stream
[2026-06-19 10:42:44,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:42:44,090.090 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 10:42:48,432.432 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:42:48,434.434 INFO    ] Checking for system updates...
[2026-06-19 10:42:48,471.471 INFO    ] 200
[2026-06-19 10:42:48,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:48,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:42:48,541.541 INFO    ] No update needed
[2026-06-19 10:42:48,543.543 INFO    ] Checking for camera pi updates...
[2026-06-19 10:42:48,578.578 INFO    ] 200
[2026-06-19 10:42:48,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:48,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:42:48,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:42:48,656.656 INFO    ] No camera update needed
[2026-06-19 10:42:48,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:42:48,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:42:48,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:42:48,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:42:50,714.714 INFO    ] ================================================
[2026-06-19 10:42:50,730.730 INFO    ] Launching Daemon at Fri Jun 19 10:42:50 IST 2026
[2026-06-19 10:42:50,741.741 INFO    ] ================================================
[2026-06-19 10:42:51,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:42:51
[2026-06-19 10:42:51,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:42:52,221.221 INFO    ] Initializing speech engine...
[2026-06-19 10:42:52,228.228 INFO    ] 2026-06-19 10:42:52
[2026-06-19 10:42:52,485.485 INFO    ] 2026-06-19 10:42:52
[2026-06-19 10:42:52,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:42:52,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:42:52,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:42:52,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:42:52,973.973 INFO    ] time= 19/06/2026 10:42:52
[2026-06-19 10:42:53,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:42:53,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:42:53,178.178 INFO    ] No existing commands found in stream
[2026-06-19 10:42:58,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:42:58,204.204 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 10:42:59,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:42:59,760.760 INFO    ] Checking for system updates...
[2026-06-19 10:42:59,798.798 INFO    ] 200
[2026-06-19 10:42:59,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:59,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:42:59,858.858 INFO    ] No update needed
[2026-06-19 10:42:59,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 10:42:59,899.899 INFO    ] 200
[2026-06-19 10:42:59,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:42:59,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:42:59,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:42:59,990.990 INFO    ] No camera update needed
[2026-06-19 10:42:59,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:42:59,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:43:00,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:43:00,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:43:02,096.096 INFO    ] ================================================
[2026-06-19 10:43:02,138.138 INFO    ] Launching Daemon at Fri Jun 19 10:43:02 IST 2026
[2026-06-19 10:43:02,168.168 INFO    ] ================================================
[2026-06-19 10:43:02,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:43:02
[2026-06-19 10:43:03,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:43:03,887.887 INFO    ] Initializing speech engine...
[2026-06-19 10:43:03,896.896 INFO    ] 2026-06-19 10:43:03
[2026-06-19 10:43:04,177.177 INFO    ] 2026-06-19 10:43:04
[2026-06-19 10:43:04,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:43:04,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:43:04,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:43:04,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:43:04,684.684 INFO    ] time= 19/06/2026 10:43:04
[2026-06-19 10:43:04,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:43:04,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:43:04,868.868 INFO    ] No existing commands found in stream
[2026-06-19 10:43:09,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:43:09,898.898 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 10:43:10,423.423 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:43:10,426.426 INFO    ] Checking for system updates...
[2026-06-19 10:43:10,467.467 INFO    ] 200
[2026-06-19 10:43:10,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:43:10,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:43:10,534.534 INFO    ] No update needed
[2026-06-19 10:43:10,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 10:43:10,572.572 INFO    ] 200
[2026-06-19 10:43:10,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:43:10,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:43:10,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:43:10,669.669 INFO    ] No camera update needed
[2026-06-19 10:43:10,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:43:10,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:43:10,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:43:10,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:43:12,729.729 INFO    ] ================================================
[2026-06-19 10:43:12,744.744 INFO    ] Launching Daemon at Fri Jun 19 10:43:12 IST 2026
[2026-06-19 10:43:12,754.754 INFO    ] ================================================
[2026-06-19 10:43:13,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:43:13
[2026-06-19 10:43:13,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:43:14,153.153 INFO    ] Initializing speech engine...
[2026-06-19 10:43:14,161.161 INFO    ] 2026-06-19 10:43:14
[2026-06-19 10:43:14,458.458 INFO    ] 2026-06-19 10:43:14
[2026-06-19 10:43:14,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:43:14,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:43:14,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:43:14,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:43:14,870.870 INFO    ] time= 19/06/2026 10:43:14
[2026-06-19 10:43:14,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:43:14,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:43:14,953.953 INFO    ] No existing commands found in stream
[2026-06-19 10:43:19,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:43:19,968.968 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 10:43:23,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:43:23,700.700 INFO    ] Checking for system updates...
[2026-06-19 10:43:23,739.739 INFO    ] 200
[2026-06-19 10:43:23,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:43:23,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:43:23,800.800 INFO    ] No update needed
[2026-06-19 10:43:23,802.802 INFO    ] Checking for camera pi updates...
[2026-06-19 10:43:23,836.836 INFO    ] 200
[2026-06-19 10:43:23,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:43:23,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:43:23,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:43:23,931.931 INFO    ] No camera update needed
[2026-06-19 10:43:23,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:43:23,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:43:23,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:43:23,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:43:25,986.986 INFO    ] ================================================
[2026-06-19 10:43:26,001.001 INFO    ] Launching Daemon at Fri Jun 19 10:43:25 IST 2026
[2026-06-19 10:43:26,012.012 INFO    ] ================================================
[2026-06-19 10:43:26,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:43:26
[2026-06-19 10:43:27,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:43:27,624.624 INFO    ] Initializing speech engine...
[2026-06-19 10:43:27,638.638 INFO    ] 2026-06-19 10:43:27
[2026-06-19 10:43:27,928.928 INFO    ] 2026-06-19 10:43:27
[2026-06-19 10:43:28,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:43:28,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:43:28,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:43:28,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:43:28,475.475 INFO    ] time= 19/06/2026 10:43:28
[2026-06-19 10:43:28,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:43:28,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:43:28,665.665 INFO    ] No existing commands found in stream
[2026-06-19 10:43:33,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:43:33,699.699 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 10:43:34,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:43:34,190.190 INFO    ] Checking for system updates...
[2026-06-19 10:43:34,228.228 INFO    ] 200
[2026-06-19 10:43:34,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:43:34,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:43:34,294.294 INFO    ] No update needed
[2026-06-19 10:43:34,298.298 INFO    ] Checking for camera pi updates...
[2026-06-19 10:43:34,337.337 INFO    ] 200
[2026-06-19 10:43:34,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:43:34,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:43:34,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:43:34,439.439 INFO    ] No camera update needed
[2026-06-19 10:43:34,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:43:34,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:43:34,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:43:34,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:43:36,500.500 INFO    ] ================================================
[2026-06-19 10:43:36,514.514 INFO    ] Launching Daemon at Fri Jun 19 10:43:36 IST 2026
[2026-06-19 10:43:36,525.525 INFO    ] ================================================
[2026-06-19 10:43:37,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:43:37
[2026-06-19 10:43:37,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:43:38,175.175 INFO    ] Initializing speech engine...
[2026-06-19 10:43:38,182.182 INFO    ] 2026-06-19 10:43:38
[2026-06-19 10:43:38,468.468 INFO    ] 2026-06-19 10:43:38
[2026-06-19 10:43:38,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:43:38,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:43:38,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:43:38,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:43:38,994.994 INFO    ] time= 19/06/2026 10:43:38
[2026-06-19 10:43:39,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:43:39,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:43:39,153.153 INFO    ] No existing commands found in stream
[2026-06-19 10:43:44,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:43:44,185.185 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 10:43:46,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:43:46,333.333 INFO    ] Checking for system updates...
[2026-06-19 10:43:46,371.371 INFO    ] 200
[2026-06-19 10:43:46,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:43:46,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:43:46,437.437 INFO    ] No update needed
[2026-06-19 10:43:46,441.441 INFO    ] Checking for camera pi updates...
[2026-06-19 10:43:46,480.480 INFO    ] 200
[2026-06-19 10:43:46,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:43:46,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:43:46,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:43:46,663.663 INFO    ] No camera update needed
[2026-06-19 10:43:46,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:43:46,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:43:46,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:43:46,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:43:48,724.724 INFO    ] ================================================
[2026-06-19 10:43:48,739.739 INFO    ] Launching Daemon at Fri Jun 19 10:43:48 IST 2026
[2026-06-19 10:43:48,751.751 INFO    ] ================================================
[2026-06-19 10:43:49,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:43:49
[2026-06-19 10:43:49,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:43:50,187.187 INFO    ] Initializing speech engine...
[2026-06-19 10:43:50,209.209 INFO    ] 2026-06-19 10:43:50
[2026-06-19 10:43:50,475.475 INFO    ] 2026-06-19 10:43:50
[2026-06-19 10:43:50,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:43:50,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:43:50,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:43:50,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:43:50,855.855 INFO    ] time= 19/06/2026 10:43:50
[2026-06-19 10:43:50,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:43:50,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:43:50,979.979 INFO    ] No existing commands found in stream
[2026-06-19 10:43:55,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:43:55,995.995 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 10:44:00,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:44:00,223.223 INFO    ] Checking for system updates...
[2026-06-19 10:44:00,261.261 INFO    ] 200
[2026-06-19 10:44:00,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:00,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:44:00,328.328 INFO    ] No update needed
[2026-06-19 10:44:00,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 10:44:00,367.367 INFO    ] 200
[2026-06-19 10:44:00,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:00,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:44:00,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:44:00,460.460 INFO    ] No camera update needed
[2026-06-19 10:44:00,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:44:00,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:44:00,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:44:00,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:44:02,525.525 INFO    ] ================================================
[2026-06-19 10:44:02,543.543 INFO    ] Launching Daemon at Fri Jun 19 10:44:02 IST 2026
[2026-06-19 10:44:02,553.553 INFO    ] ================================================
[2026-06-19 10:44:03,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:44:03
[2026-06-19 10:44:03,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:44:04,209.209 INFO    ] Initializing speech engine...
[2026-06-19 10:44:04,219.219 INFO    ] 2026-06-19 10:44:04
[2026-06-19 10:44:04,500.500 INFO    ] 2026-06-19 10:44:04
[2026-06-19 10:44:04,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:44:04,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:44:04,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:44:05,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:44:05,030.030 INFO    ] time= 19/06/2026 10:44:05
[2026-06-19 10:44:05,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:44:05,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:44:05,199.199 INFO    ] No existing commands found in stream
[2026-06-19 10:44:10,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:44:10,233.233 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 10:44:14,385.385 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:44:14,388.388 INFO    ] Checking for system updates...
[2026-06-19 10:44:14,426.426 INFO    ] 200
[2026-06-19 10:44:14,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:14,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:44:14,485.485 INFO    ] No update needed
[2026-06-19 10:44:14,488.488 INFO    ] Checking for camera pi updates...
[2026-06-19 10:44:14,523.523 INFO    ] 200
[2026-06-19 10:44:14,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:14,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:44:14,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:44:14,615.615 INFO    ] No camera update needed
[2026-06-19 10:44:14,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:44:14,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:44:14,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:44:14,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:44:16,675.675 INFO    ] ================================================
[2026-06-19 10:44:16,691.691 INFO    ] Launching Daemon at Fri Jun 19 10:44:16 IST 2026
[2026-06-19 10:44:16,702.702 INFO    ] ================================================
[2026-06-19 10:44:17,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:44:17
[2026-06-19 10:44:17,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:44:18,167.167 INFO    ] Initializing speech engine...
[2026-06-19 10:44:18,180.180 INFO    ] 2026-06-19 10:44:18
[2026-06-19 10:44:18,466.466 INFO    ] 2026-06-19 10:44:18
[2026-06-19 10:44:18,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:44:18,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:44:18,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:44:18,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:44:18,879.879 INFO    ] time= 19/06/2026 10:44:18
[2026-06-19 10:44:18,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:44:18,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:44:19,003.003 INFO    ] No existing commands found in stream
[2026-06-19 10:44:24,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:44:24,031.031 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 10:44:27,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:44:27,796.796 INFO    ] Checking for system updates...
[2026-06-19 10:44:27,832.832 INFO    ] 200
[2026-06-19 10:44:27,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:27,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:44:27,891.891 INFO    ] No update needed
[2026-06-19 10:44:27,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 10:44:27,927.927 INFO    ] 200
[2026-06-19 10:44:27,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:27,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:44:28,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:44:28,029.029 INFO    ] No camera update needed
[2026-06-19 10:44:28,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:44:28,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:44:28,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:44:28,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:44:30,084.084 INFO    ] ================================================
[2026-06-19 10:44:30,099.099 INFO    ] Launching Daemon at Fri Jun 19 10:44:30 IST 2026
[2026-06-19 10:44:30,111.111 INFO    ] ================================================
[2026-06-19 10:44:30,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:44:30
[2026-06-19 10:44:31,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:44:31,762.762 INFO    ] Initializing speech engine...
[2026-06-19 10:44:31,776.776 INFO    ] 2026-06-19 10:44:31
[2026-06-19 10:44:32,109.109 INFO    ] 2026-06-19 10:44:32
[2026-06-19 10:44:32,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:44:32,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:44:32,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:44:32,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:44:32,638.638 INFO    ] time= 19/06/2026 10:44:32
[2026-06-19 10:44:32,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:44:32,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:44:32,752.752 INFO    ] No existing commands found in stream
[2026-06-19 10:44:37,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:44:37,785.785 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 10:44:39,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:44:39,420.420 INFO    ] Checking for system updates...
[2026-06-19 10:44:39,457.457 INFO    ] 200
[2026-06-19 10:44:39,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:39,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:44:39,519.519 INFO    ] No update needed
[2026-06-19 10:44:39,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 10:44:39,555.555 INFO    ] 200
[2026-06-19 10:44:39,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:39,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:44:39,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:44:39,644.644 INFO    ] No camera update needed
[2026-06-19 10:44:39,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:44:39,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:44:39,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:44:39,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:44:41,701.701 INFO    ] ================================================
[2026-06-19 10:44:41,717.717 INFO    ] Launching Daemon at Fri Jun 19 10:44:41 IST 2026
[2026-06-19 10:44:41,728.728 INFO    ] ================================================
[2026-06-19 10:44:42,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:44:42
[2026-06-19 10:44:42,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:44:43,198.198 INFO    ] Initializing speech engine...
[2026-06-19 10:44:43,213.213 INFO    ] 2026-06-19 10:44:43
[2026-06-19 10:44:43,485.485 INFO    ] 2026-06-19 10:44:43
[2026-06-19 10:44:43,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:44:43,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:44:43,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:44:43,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:44:44,012.012 INFO    ] time= 19/06/2026 10:44:43
[2026-06-19 10:44:44,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:44:44,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:44:44,259.259 INFO    ] No existing commands found in stream
[2026-06-19 10:44:49,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:44:49,288.288 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 10:44:51,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:44:51,462.462 INFO    ] Checking for system updates...
[2026-06-19 10:44:51,498.498 INFO    ] 200
[2026-06-19 10:44:51,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:51,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:44:51,559.559 INFO    ] No update needed
[2026-06-19 10:44:51,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 10:44:51,596.596 INFO    ] 200
[2026-06-19 10:44:51,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:44:51,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:44:51,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:44:51,685.685 INFO    ] No camera update needed
[2026-06-19 10:44:51,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:44:51,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:44:51,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:44:51,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:44:53,745.745 INFO    ] ================================================
[2026-06-19 10:44:53,761.761 INFO    ] Launching Daemon at Fri Jun 19 10:44:53 IST 2026
[2026-06-19 10:44:53,772.772 INFO    ] ================================================
[2026-06-19 10:44:54,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:44:54
[2026-06-19 10:44:54,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:44:55,226.226 INFO    ] Initializing speech engine...
[2026-06-19 10:44:55,240.240 INFO    ] 2026-06-19 10:44:55
[2026-06-19 10:44:55,524.524 INFO    ] 2026-06-19 10:44:55
[2026-06-19 10:44:55,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:44:55,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:44:55,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:44:55,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:44:55,942.942 INFO    ] time= 19/06/2026 10:44:55
[2026-06-19 10:44:55,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:44:56,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:44:56,125.125 INFO    ] No existing commands found in stream
[2026-06-19 10:45:01,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:45:01,161.161 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 10:45:05,286.286 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:45:05,288.288 INFO    ] Checking for system updates...
[2026-06-19 10:45:05,324.324 INFO    ] 200
[2026-06-19 10:45:05,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:05,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:45:05,383.383 INFO    ] No update needed
[2026-06-19 10:45:05,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 10:45:05,420.420 INFO    ] 200
[2026-06-19 10:45:05,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:05,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:45:05,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:45:05,518.518 INFO    ] No camera update needed
[2026-06-19 10:45:05,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:45:05,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:45:05,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:45:05,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:45:07,574.574 INFO    ] ================================================
[2026-06-19 10:45:07,590.590 INFO    ] Launching Daemon at Fri Jun 19 10:45:07 IST 2026
[2026-06-19 10:45:07,601.601 INFO    ] ================================================
[2026-06-19 10:45:08,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:45:08
[2026-06-19 10:45:08,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:45:09,063.063 INFO    ] Initializing speech engine...
[2026-06-19 10:45:09,074.074 INFO    ] 2026-06-19 10:45:09
[2026-06-19 10:45:09,338.338 INFO    ] 2026-06-19 10:45:09
[2026-06-19 10:45:09,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:45:09,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:45:09,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:45:09,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:45:09,814.814 INFO    ] time= 19/06/2026 10:45:09
[2026-06-19 10:45:09,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:45:09,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:45:10,026.026 INFO    ] No existing commands found in stream
[2026-06-19 10:45:15,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:45:15,053.053 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 10:45:16,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:45:16,680.680 INFO    ] Checking for system updates...
[2026-06-19 10:45:16,716.716 INFO    ] 200
[2026-06-19 10:45:16,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:16,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:45:16,773.773 INFO    ] No update needed
[2026-06-19 10:45:16,776.776 INFO    ] Checking for camera pi updates...
[2026-06-19 10:45:16,810.810 INFO    ] 200
[2026-06-19 10:45:16,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:16,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:45:16,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:45:16,884.884 INFO    ] No camera update needed
[2026-06-19 10:45:16,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:45:16,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:45:16,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:45:16,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:45:18,941.941 INFO    ] ================================================
[2026-06-19 10:45:18,956.956 INFO    ] Launching Daemon at Fri Jun 19 10:45:18 IST 2026
[2026-06-19 10:45:18,967.967 INFO    ] ================================================
[2026-06-19 10:45:19,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:45:19
[2026-06-19 10:45:20,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:45:20,573.573 INFO    ] Initializing speech engine...
[2026-06-19 10:45:20,581.581 INFO    ] 2026-06-19 10:45:20
[2026-06-19 10:45:20,852.852 INFO    ] 2026-06-19 10:45:20
[2026-06-19 10:45:20,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:45:21,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:45:21,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:45:21,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:45:21,405.405 INFO    ] time= 19/06/2026 10:45:21
[2026-06-19 10:45:21,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:45:21,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:45:21,571.571 INFO    ] No existing commands found in stream
[2026-06-19 10:45:26,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:45:26,590.590 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 10:45:27,708.708 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:45:27,711.711 INFO    ] Checking for system updates...
[2026-06-19 10:45:27,753.753 INFO    ] 200
[2026-06-19 10:45:27,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:27,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:45:27,818.818 INFO    ] No update needed
[2026-06-19 10:45:27,821.821 INFO    ] Checking for camera pi updates...
[2026-06-19 10:45:27,856.856 INFO    ] 200
[2026-06-19 10:45:27,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:27,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:45:27,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:45:27,955.955 INFO    ] No camera update needed
[2026-06-19 10:45:27,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:45:27,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:45:27,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:45:27,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:45:30,017.017 INFO    ] ================================================
[2026-06-19 10:45:30,032.032 INFO    ] Launching Daemon at Fri Jun 19 10:45:30 IST 2026
[2026-06-19 10:45:30,043.043 INFO    ] ================================================
[2026-06-19 10:45:30,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:45:30
[2026-06-19 10:45:31,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:45:31,483.483 INFO    ] Initializing speech engine...
[2026-06-19 10:45:31,501.501 INFO    ] 2026-06-19 10:45:31
[2026-06-19 10:45:31,776.776 INFO    ] 2026-06-19 10:45:31
[2026-06-19 10:45:31,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:45:32,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:45:32,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:45:32,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:45:32,244.244 INFO    ] time= 19/06/2026 10:45:32
[2026-06-19 10:45:32,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:45:32,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:45:32,405.405 INFO    ] No existing commands found in stream
[2026-06-19 10:45:37,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:45:37,421.421 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 10:45:40,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:45:40,235.235 INFO    ] Checking for system updates...
[2026-06-19 10:45:40,270.270 INFO    ] 200
[2026-06-19 10:45:40,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:40,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:45:40,328.328 INFO    ] No update needed
[2026-06-19 10:45:40,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 10:45:40,364.364 INFO    ] 200
[2026-06-19 10:45:40,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:40,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:45:40,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:45:40,451.451 INFO    ] No camera update needed
[2026-06-19 10:45:40,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:45:40,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:45:40,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:45:40,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:45:42,508.508 INFO    ] ================================================
[2026-06-19 10:45:42,523.523 INFO    ] Launching Daemon at Fri Jun 19 10:45:42 IST 2026
[2026-06-19 10:45:42,534.534 INFO    ] ================================================
[2026-06-19 10:45:43,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:45:43
[2026-06-19 10:45:43,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:45:44,073.073 INFO    ] Initializing speech engine...
[2026-06-19 10:45:44,081.081 INFO    ] 2026-06-19 10:45:44
[2026-06-19 10:45:44,342.342 INFO    ] 2026-06-19 10:45:44
[2026-06-19 10:45:44,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:45:44,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:45:44,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:45:44,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:45:44,802.802 INFO    ] time= 19/06/2026 10:45:44
[2026-06-19 10:45:44,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:45:44,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:45:44,954.954 INFO    ] No existing commands found in stream
[2026-06-19 10:45:49,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:45:49,970.970 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 10:45:52,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:45:52,843.843 INFO    ] Checking for system updates...
[2026-06-19 10:45:52,880.880 INFO    ] 200
[2026-06-19 10:45:52,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:52,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:45:52,939.939 INFO    ] No update needed
[2026-06-19 10:45:52,942.942 INFO    ] Checking for camera pi updates...
[2026-06-19 10:45:52,982.982 INFO    ] 200
[2026-06-19 10:45:52,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:45:53,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:45:53,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:45:53,183.183 INFO    ] No camera update needed
[2026-06-19 10:45:53,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:45:53,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:45:53,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:45:53,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:45:55,245.245 INFO    ] ================================================
[2026-06-19 10:45:55,260.260 INFO    ] Launching Daemon at Fri Jun 19 10:45:55 IST 2026
[2026-06-19 10:45:55,272.272 INFO    ] ================================================
[2026-06-19 10:45:55,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:45:55
[2026-06-19 10:45:56,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:45:56,733.733 INFO    ] Initializing speech engine...
[2026-06-19 10:45:56,743.743 INFO    ] 2026-06-19 10:45:56
[2026-06-19 10:45:57,002.002 INFO    ] 2026-06-19 10:45:56
[2026-06-19 10:45:57,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:45:57,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:45:57,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:45:57,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:45:57,493.493 INFO    ] time= 19/06/2026 10:45:57
[2026-06-19 10:45:57,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:45:57,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:45:57,703.703 INFO    ] No existing commands found in stream
[2026-06-19 10:46:02,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:46:02,721.721 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 10:46:04,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:46:04,102.102 INFO    ] Checking for system updates...
[2026-06-19 10:46:04,138.138 INFO    ] 200
[2026-06-19 10:46:04,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:04,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:46:04,196.196 INFO    ] No update needed
[2026-06-19 10:46:04,198.198 INFO    ] Checking for camera pi updates...
[2026-06-19 10:46:04,232.232 INFO    ] 200
[2026-06-19 10:46:04,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:04,275.275 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:46:04,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:46:04,324.324 INFO    ] No camera update needed
[2026-06-19 10:46:04,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:46:04,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:46:04,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:46:04,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:46:06,380.380 INFO    ] ================================================
[2026-06-19 10:46:06,396.396 INFO    ] Launching Daemon at Fri Jun 19 10:46:06 IST 2026
[2026-06-19 10:46:06,406.406 INFO    ] ================================================
[2026-06-19 10:46:07,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:46:07
[2026-06-19 10:46:07,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:46:07,965.965 INFO    ] Initializing speech engine...
[2026-06-19 10:46:07,980.980 INFO    ] 2026-06-19 10:46:07
[2026-06-19 10:46:08,242.242 INFO    ] 2026-06-19 10:46:08
[2026-06-19 10:46:08,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:46:08,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:46:08,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:46:08,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:46:08,791.791 INFO    ] time= 19/06/2026 10:46:08
[2026-06-19 10:46:08,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:46:08,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:46:08,948.948 INFO    ] No existing commands found in stream
[2026-06-19 10:46:13,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:46:13,970.970 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 10:46:14,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:46:14,526.526 INFO    ] Checking for system updates...
[2026-06-19 10:46:14,563.563 INFO    ] 200
[2026-06-19 10:46:14,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:14,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:46:14,625.625 INFO    ] No update needed
[2026-06-19 10:46:14,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 10:46:14,662.662 INFO    ] 200
[2026-06-19 10:46:14,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:14,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:46:14,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:46:14,754.754 INFO    ] No camera update needed
[2026-06-19 10:46:14,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:46:14,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:46:14,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:46:14,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:46:16,809.809 INFO    ] ================================================
[2026-06-19 10:46:16,824.824 INFO    ] Launching Daemon at Fri Jun 19 10:46:16 IST 2026
[2026-06-19 10:46:16,834.834 INFO    ] ================================================
[2026-06-19 10:46:17,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:46:17
[2026-06-19 10:46:18,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:46:18,405.405 INFO    ] Initializing speech engine...
[2026-06-19 10:46:18,416.416 INFO    ] 2026-06-19 10:46:18
[2026-06-19 10:46:18,696.696 INFO    ] 2026-06-19 10:46:18
[2026-06-19 10:46:18,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:46:19,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:46:19,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:46:19,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:46:19,227.227 INFO    ] time= 19/06/2026 10:46:19
[2026-06-19 10:46:19,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:46:19,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:46:19,406.406 INFO    ] No existing commands found in stream
[2026-06-19 10:46:24,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:46:24,440.440 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 10:46:25,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:46:25,561.561 INFO    ] Checking for system updates...
[2026-06-19 10:46:25,597.597 INFO    ] 200
[2026-06-19 10:46:25,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:25,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:46:25,657.657 INFO    ] No update needed
[2026-06-19 10:46:25,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 10:46:25,693.693 INFO    ] 200
[2026-06-19 10:46:25,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:25,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:46:25,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:46:25,786.786 INFO    ] No camera update needed
[2026-06-19 10:46:25,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:46:25,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:46:25,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:46:25,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:46:27,843.843 INFO    ] ================================================
[2026-06-19 10:46:27,858.858 INFO    ] Launching Daemon at Fri Jun 19 10:46:27 IST 2026
[2026-06-19 10:46:27,868.868 INFO    ] ================================================
[2026-06-19 10:46:28,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:46:28
[2026-06-19 10:46:29,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:46:29,308.308 INFO    ] Initializing speech engine...
[2026-06-19 10:46:29,318.318 INFO    ] 2026-06-19 10:46:29
[2026-06-19 10:46:29,561.561 INFO    ] 2026-06-19 10:46:29
[2026-06-19 10:46:29,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:46:29,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:46:29,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:46:30,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:46:30,010.010 INFO    ] time= 19/06/2026 10:46:30
[2026-06-19 10:46:30,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:46:30,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:46:30,207.207 INFO    ] No existing commands found in stream
[2026-06-19 10:46:35,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:46:35,222.222 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 10:46:38,073.073 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:46:38,075.075 INFO    ] Checking for system updates...
[2026-06-19 10:46:38,114.114 INFO    ] 200
[2026-06-19 10:46:38,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:38,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:46:38,172.172 INFO    ] No update needed
[2026-06-19 10:46:38,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 10:46:38,210.210 INFO    ] 200
[2026-06-19 10:46:38,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:38,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:46:38,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:46:38,300.300 INFO    ] No camera update needed
[2026-06-19 10:46:38,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:46:38,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:46:38,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:46:38,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:46:40,355.355 INFO    ] ================================================
[2026-06-19 10:46:40,370.370 INFO    ] Launching Daemon at Fri Jun 19 10:46:40 IST 2026
[2026-06-19 10:46:40,381.381 INFO    ] ================================================
[2026-06-19 10:46:40,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:46:40
[2026-06-19 10:46:41,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:46:41,842.842 INFO    ] Initializing speech engine...
[2026-06-19 10:46:41,852.852 INFO    ] 2026-06-19 10:46:41
[2026-06-19 10:46:42,116.116 INFO    ] 2026-06-19 10:46:42
[2026-06-19 10:46:42,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:46:42,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:46:42,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:46:42,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:46:42,664.664 INFO    ] time= 19/06/2026 10:46:42
[2026-06-19 10:46:42,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:46:42,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:46:42,822.822 INFO    ] No existing commands found in stream
[2026-06-19 10:46:47,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:46:47,847.847 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 10:46:48,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:46:48,686.686 INFO    ] Checking for system updates...
[2026-06-19 10:46:48,722.722 INFO    ] 200
[2026-06-19 10:46:48,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:48,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:46:48,781.781 INFO    ] No update needed
[2026-06-19 10:46:48,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 10:46:48,819.819 INFO    ] 200
[2026-06-19 10:46:48,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:46:48,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:46:48,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:46:48,894.894 INFO    ] No camera update needed
[2026-06-19 10:46:48,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:46:48,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:46:48,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:46:48,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:46:50,952.952 INFO    ] ================================================
[2026-06-19 10:46:50,967.967 INFO    ] Launching Daemon at Fri Jun 19 10:46:50 IST 2026
[2026-06-19 10:46:50,978.978 INFO    ] ================================================
[2026-06-19 10:46:51,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:46:51
[2026-06-19 10:46:52,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:46:52,573.573 INFO    ] Initializing speech engine...
[2026-06-19 10:46:52,586.586 INFO    ] 2026-06-19 10:46:52
[2026-06-19 10:46:52,855.855 INFO    ] 2026-06-19 10:46:52
[2026-06-19 10:46:52,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:46:53,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:46:53,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:46:53,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:46:53,352.352 INFO    ] time= 19/06/2026 10:46:53
[2026-06-19 10:46:53,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:46:53,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:46:53,567.567 INFO    ] No existing commands found in stream
[2026-06-19 10:46:58,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:46:58,584.584 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 10:47:01,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:47:01,025.025 INFO    ] Checking for system updates...
[2026-06-19 10:47:01,062.062 INFO    ] 200
[2026-06-19 10:47:01,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:01,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:47:01,121.121 INFO    ] No update needed
[2026-06-19 10:47:01,124.124 INFO    ] Checking for camera pi updates...
[2026-06-19 10:47:01,161.161 INFO    ] 200
[2026-06-19 10:47:01,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:01,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:47:01,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:47:01,250.250 INFO    ] No camera update needed
[2026-06-19 10:47:01,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:47:01,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:47:01,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:47:01,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:47:03,310.310 INFO    ] ================================================
[2026-06-19 10:47:03,327.327 INFO    ] Launching Daemon at Fri Jun 19 10:47:03 IST 2026
[2026-06-19 10:47:03,339.339 INFO    ] ================================================
[2026-06-19 10:47:03,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:47:03
[2026-06-19 10:47:04,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:47:04,861.861 INFO    ] Initializing speech engine...
[2026-06-19 10:47:04,885.885 INFO    ] 2026-06-19 10:47:04
[2026-06-19 10:47:05,155.155 INFO    ] 2026-06-19 10:47:05
[2026-06-19 10:47:05,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:47:05,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:47:05,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:47:05,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:47:05,549.549 INFO    ] time= 19/06/2026 10:47:05
[2026-06-19 10:47:05,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:47:05,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:47:05,731.731 INFO    ] No existing commands found in stream
[2026-06-19 10:47:10,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:47:10,759.759 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 10:47:14,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:47:14,263.263 INFO    ] Checking for system updates...
[2026-06-19 10:47:14,303.303 INFO    ] 200
[2026-06-19 10:47:14,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:14,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:47:14,363.363 INFO    ] No update needed
[2026-06-19 10:47:14,365.365 INFO    ] Checking for camera pi updates...
[2026-06-19 10:47:14,399.399 INFO    ] 200
[2026-06-19 10:47:14,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:14,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:47:14,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:47:14,493.493 INFO    ] No camera update needed
[2026-06-19 10:47:14,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:47:14,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:47:14,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:47:14,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:47:16,547.547 INFO    ] ================================================
[2026-06-19 10:47:16,562.562 INFO    ] Launching Daemon at Fri Jun 19 10:47:16 IST 2026
[2026-06-19 10:47:16,573.573 INFO    ] ================================================
[2026-06-19 10:47:17,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:47:17
[2026-06-19 10:47:17,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:47:18,000.000 INFO    ] Initializing speech engine...
[2026-06-19 10:47:18,010.010 INFO    ] 2026-06-19 10:47:18
[2026-06-19 10:47:18,253.253 INFO    ] 2026-06-19 10:47:18
[2026-06-19 10:47:18,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:47:18,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:47:18,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:47:18,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:47:18,675.675 INFO    ] time= 19/06/2026 10:47:18
[2026-06-19 10:47:18,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:47:18,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:47:18,765.765 INFO    ] No existing commands found in stream
[2026-06-19 10:47:23,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:47:23,781.781 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 10:47:26,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:47:26,632.632 INFO    ] Checking for system updates...
[2026-06-19 10:47:26,668.668 INFO    ] 200
[2026-06-19 10:47:26,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:26,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:47:26,735.735 INFO    ] No update needed
[2026-06-19 10:47:26,738.738 INFO    ] Checking for camera pi updates...
[2026-06-19 10:47:26,773.773 INFO    ] 200
[2026-06-19 10:47:26,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:26,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:47:26,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:47:26,873.873 INFO    ] No camera update needed
[2026-06-19 10:47:26,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:47:26,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:47:26,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:47:26,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:47:28,933.933 INFO    ] ================================================
[2026-06-19 10:47:28,948.948 INFO    ] Launching Daemon at Fri Jun 19 10:47:28 IST 2026
[2026-06-19 10:47:28,959.959 INFO    ] ================================================
[2026-06-19 10:47:29,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:47:29
[2026-06-19 10:47:30,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:47:30,362.362 INFO    ] Initializing speech engine...
[2026-06-19 10:47:30,378.378 INFO    ] 2026-06-19 10:47:30
[2026-06-19 10:47:30,644.644 INFO    ] 2026-06-19 10:47:30
[2026-06-19 10:47:30,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:47:30,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:47:30,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:47:31,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:47:31,147.147 INFO    ] time= 19/06/2026 10:47:31
[2026-06-19 10:47:31,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:47:31,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:47:31,332.332 INFO    ] No existing commands found in stream
[2026-06-19 10:47:36,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:47:36,358.358 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 10:47:37,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:47:37,735.735 INFO    ] Checking for system updates...
[2026-06-19 10:47:37,771.771 INFO    ] 200
[2026-06-19 10:47:37,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:37,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:47:37,829.829 INFO    ] No update needed
[2026-06-19 10:47:37,831.831 INFO    ] Checking for camera pi updates...
[2026-06-19 10:47:37,866.866 INFO    ] 200
[2026-06-19 10:47:37,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:37,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:47:37,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:47:37,962.962 INFO    ] No camera update needed
[2026-06-19 10:47:37,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:47:37,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:47:37,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:47:37,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:47:40,022.022 INFO    ] ================================================
[2026-06-19 10:47:40,038.038 INFO    ] Launching Daemon at Fri Jun 19 10:47:40 IST 2026
[2026-06-19 10:47:40,049.049 INFO    ] ================================================
[2026-06-19 10:47:40,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:47:40
[2026-06-19 10:47:41,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:47:41,549.549 INFO    ] Initializing speech engine...
[2026-06-19 10:47:41,560.560 INFO    ] 2026-06-19 10:47:41
[2026-06-19 10:47:41,850.850 INFO    ] 2026-06-19 10:47:41
[2026-06-19 10:47:41,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:47:42,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:47:42,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:47:42,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:47:42,357.357 INFO    ] time= 19/06/2026 10:47:42
[2026-06-19 10:47:42,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:47:42,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:47:42,545.545 INFO    ] No existing commands found in stream
[2026-06-19 10:47:47,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:47:47,576.576 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 10:47:48,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:47:48,811.811 INFO    ] Checking for system updates...
[2026-06-19 10:47:48,853.853 INFO    ] 200
[2026-06-19 10:47:48,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:48,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:47:48,911.911 INFO    ] No update needed
[2026-06-19 10:47:48,913.913 INFO    ] Checking for camera pi updates...
[2026-06-19 10:47:48,952.952 INFO    ] 200
[2026-06-19 10:47:48,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:47:49,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:47:49,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:47:49,029.029 INFO    ] No camera update needed
[2026-06-19 10:47:49,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:47:49,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:47:49,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:47:49,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:47:51,086.086 INFO    ] ================================================
[2026-06-19 10:47:51,102.102 INFO    ] Launching Daemon at Fri Jun 19 10:47:51 IST 2026
[2026-06-19 10:47:51,112.112 INFO    ] ================================================
[2026-06-19 10:47:51,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:47:51
[2026-06-19 10:47:52,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:47:52,665.665 INFO    ] Initializing speech engine...
[2026-06-19 10:47:52,677.677 INFO    ] 2026-06-19 10:47:52
[2026-06-19 10:47:52,990.990 INFO    ] 2026-06-19 10:47:52
[2026-06-19 10:47:53,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:47:53,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:47:53,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:47:53,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:47:53,503.503 INFO    ] time= 19/06/2026 10:47:53
[2026-06-19 10:47:53,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:47:53,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:47:53,678.678 INFO    ] No existing commands found in stream
[2026-06-19 10:47:58,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:47:58,708.708 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 10:48:01,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:48:01,352.352 INFO    ] Checking for system updates...
[2026-06-19 10:48:01,428.428 INFO    ] 200
[2026-06-19 10:48:01,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:01,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:48:01,560.560 INFO    ] No update needed
[2026-06-19 10:48:01,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 10:48:01,647.647 INFO    ] 200
[2026-06-19 10:48:01,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:01,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:48:01,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:48:01,874.874 INFO    ] No camera update needed
[2026-06-19 10:48:01,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:48:01,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:48:01,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:48:01,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:48:03,934.934 INFO    ] ================================================
[2026-06-19 10:48:03,950.950 INFO    ] Launching Daemon at Fri Jun 19 10:48:03 IST 2026
[2026-06-19 10:48:03,961.961 INFO    ] ================================================
[2026-06-19 10:48:04,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:48:04
[2026-06-19 10:48:05,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:48:05,406.406 INFO    ] Initializing speech engine...
[2026-06-19 10:48:05,412.412 INFO    ] 2026-06-19 10:48:05
[2026-06-19 10:48:05,716.716 INFO    ] 2026-06-19 10:48:05
[2026-06-19 10:48:05,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:48:05,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:48:05,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:48:06,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:48:06,105.105 INFO    ] time= 19/06/2026 10:48:06
[2026-06-19 10:48:06,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:48:06,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:48:06,233.233 INFO    ] No existing commands found in stream
[2026-06-19 10:48:11,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:48:11,249.249 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 10:48:13,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:48:13,758.758 INFO    ] Checking for system updates...
[2026-06-19 10:48:13,800.800 INFO    ] 200
[2026-06-19 10:48:13,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:13,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:48:13,879.879 INFO    ] No update needed
[2026-06-19 10:48:13,881.881 INFO    ] Checking for camera pi updates...
[2026-06-19 10:48:13,916.916 INFO    ] 200
[2026-06-19 10:48:13,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:13,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:48:13,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:48:14,000.000 INFO    ] No camera update needed
[2026-06-19 10:48:14,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:48:14,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:48:14,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:48:14,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:48:16,056.056 INFO    ] ================================================
[2026-06-19 10:48:16,072.072 INFO    ] Launching Daemon at Fri Jun 19 10:48:16 IST 2026
[2026-06-19 10:48:16,083.083 INFO    ] ================================================
[2026-06-19 10:48:16,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:48:16
[2026-06-19 10:48:17,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:48:17,728.728 INFO    ] Initializing speech engine...
[2026-06-19 10:48:17,735.735 INFO    ] 2026-06-19 10:48:17
[2026-06-19 10:48:18,012.012 INFO    ] 2026-06-19 10:48:18
[2026-06-19 10:48:18,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:48:18,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:48:18,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:48:18,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:48:18,500.500 INFO    ] time= 19/06/2026 10:48:18
[2026-06-19 10:48:18,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:48:18,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:48:18,714.714 INFO    ] No existing commands found in stream
[2026-06-19 10:48:23,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:48:23,741.741 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 10:48:27,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:48:27,327.327 INFO    ] Checking for system updates...
[2026-06-19 10:48:27,371.371 INFO    ] 200
[2026-06-19 10:48:27,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:27,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:48:27,437.437 INFO    ] No update needed
[2026-06-19 10:48:27,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 10:48:27,475.475 INFO    ] 200
[2026-06-19 10:48:27,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:27,525.525 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:48:27,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:48:27,579.579 INFO    ] No camera update needed
[2026-06-19 10:48:27,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:48:27,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:48:27,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:48:27,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:48:29,636.636 INFO    ] ================================================
[2026-06-19 10:48:29,652.652 INFO    ] Launching Daemon at Fri Jun 19 10:48:29 IST 2026
[2026-06-19 10:48:29,663.663 INFO    ] ================================================
[2026-06-19 10:48:30,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:48:30
[2026-06-19 10:48:31,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:48:31,380.380 INFO    ] Initializing speech engine...
[2026-06-19 10:48:31,392.392 INFO    ] 2026-06-19 10:48:31
[2026-06-19 10:48:31,730.730 INFO    ] 2026-06-19 10:48:31
[2026-06-19 10:48:31,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:48:32,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:48:32,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:48:32,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:48:32,287.287 INFO    ] time= 19/06/2026 10:48:32
[2026-06-19 10:48:32,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:48:32,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:48:32,456.456 INFO    ] No existing commands found in stream
[2026-06-19 10:48:37,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:48:37,489.489 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 10:48:38,685.685 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:48:38,688.688 INFO    ] Checking for system updates...
[2026-06-19 10:48:38,729.729 INFO    ] 200
[2026-06-19 10:48:38,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:38,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:48:38,789.789 INFO    ] No update needed
[2026-06-19 10:48:38,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 10:48:38,832.832 INFO    ] 200
[2026-06-19 10:48:38,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:38,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:48:38,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:48:38,938.938 INFO    ] No camera update needed
[2026-06-19 10:48:38,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:48:38,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:48:38,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:48:38,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:48:41,002.002 INFO    ] ================================================
[2026-06-19 10:48:41,017.017 INFO    ] Launching Daemon at Fri Jun 19 10:48:41 IST 2026
[2026-06-19 10:48:41,028.028 INFO    ] ================================================
[2026-06-19 10:48:41,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:48:41
[2026-06-19 10:48:42,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:48:42,729.729 INFO    ] Initializing speech engine...
[2026-06-19 10:48:42,742.742 INFO    ] 2026-06-19 10:48:42
[2026-06-19 10:48:43,036.036 INFO    ] 2026-06-19 10:48:43
[2026-06-19 10:48:43,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:48:43,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:48:43,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:48:43,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:48:43,744.744 INFO    ] time= 19/06/2026 10:48:43
[2026-06-19 10:48:43,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:48:43,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:48:44,003.003 INFO    ] No existing commands found in stream
[2026-06-19 10:48:49,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:48:49,021.021 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 10:48:53,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:48:53,098.098 INFO    ] Checking for system updates...
[2026-06-19 10:48:53,136.136 INFO    ] 200
[2026-06-19 10:48:53,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:53,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:48:53,204.204 INFO    ] No update needed
[2026-06-19 10:48:53,207.207 INFO    ] Checking for camera pi updates...
[2026-06-19 10:48:53,241.241 INFO    ] 200
[2026-06-19 10:48:53,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:48:53,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:48:53,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:48:53,338.338 INFO    ] No camera update needed
[2026-06-19 10:48:53,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:48:53,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:48:53,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:48:53,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:48:55,395.395 INFO    ] ================================================
[2026-06-19 10:48:55,411.411 INFO    ] Launching Daemon at Fri Jun 19 10:48:55 IST 2026
[2026-06-19 10:48:55,423.423 INFO    ] ================================================
[2026-06-19 10:48:55,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:48:55
[2026-06-19 10:48:56,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:48:56,831.831 INFO    ] Initializing speech engine...
[2026-06-19 10:48:56,844.844 INFO    ] 2026-06-19 10:48:56
[2026-06-19 10:48:57,113.113 INFO    ] 2026-06-19 10:48:57
[2026-06-19 10:48:57,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:48:57,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:48:57,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:48:57,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:48:57,596.596 INFO    ] time= 19/06/2026 10:48:57
[2026-06-19 10:48:57,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:48:57,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:48:57,834.834 INFO    ] No existing commands found in stream
[2026-06-19 10:49:02,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:49:02,857.857 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 10:49:03,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:49:03,775.775 INFO    ] Checking for system updates...
[2026-06-19 10:49:03,818.818 INFO    ] 200
[2026-06-19 10:49:03,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:03,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:49:03,877.877 INFO    ] No update needed
[2026-06-19 10:49:03,879.879 INFO    ] Checking for camera pi updates...
[2026-06-19 10:49:03,919.919 INFO    ] 200
[2026-06-19 10:49:03,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:03,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:49:04,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:49:04,004.004 INFO    ] No camera update needed
[2026-06-19 10:49:04,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:49:04,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:49:04,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:49:04,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:49:06,068.068 INFO    ] ================================================
[2026-06-19 10:49:06,084.084 INFO    ] Launching Daemon at Fri Jun 19 10:49:06 IST 2026
[2026-06-19 10:49:06,095.095 INFO    ] ================================================
[2026-06-19 10:49:06,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:49:06
[2026-06-19 10:49:07,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:49:07,686.686 INFO    ] Initializing speech engine...
[2026-06-19 10:49:07,696.696 INFO    ] 2026-06-19 10:49:07
[2026-06-19 10:49:07,961.961 INFO    ] 2026-06-19 10:49:07
[2026-06-19 10:49:07,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:49:08,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:49:08,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:49:08,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:49:08,439.439 INFO    ] time= 19/06/2026 10:49:08
[2026-06-19 10:49:08,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:49:08,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:49:08,667.667 INFO    ] No existing commands found in stream
[2026-06-19 10:49:13,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:49:13,693.693 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 10:49:15,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:49:15,785.785 INFO    ] Checking for system updates...
[2026-06-19 10:49:15,821.821 INFO    ] 200
[2026-06-19 10:49:15,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:15,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:49:15,890.890 INFO    ] No update needed
[2026-06-19 10:49:15,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 10:49:15,926.926 INFO    ] 200
[2026-06-19 10:49:15,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:15,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:49:16,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:49:16,030.030 INFO    ] No camera update needed
[2026-06-19 10:49:16,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:49:16,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:49:16,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:49:16,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:49:18,087.087 INFO    ] ================================================
[2026-06-19 10:49:18,102.102 INFO    ] Launching Daemon at Fri Jun 19 10:49:18 IST 2026
[2026-06-19 10:49:18,113.113 INFO    ] ================================================
[2026-06-19 10:49:18,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:49:18
[2026-06-19 10:49:19,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:49:19,539.539 INFO    ] Initializing speech engine...
[2026-06-19 10:49:19,558.558 INFO    ] 2026-06-19 10:49:19
[2026-06-19 10:49:19,809.809 INFO    ] 2026-06-19 10:49:19
[2026-06-19 10:49:19,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:49:20,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:49:20,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:49:20,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:49:20,294.294 INFO    ] time= 19/06/2026 10:49:20
[2026-06-19 10:49:20,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:49:20,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:49:20,513.513 INFO    ] No existing commands found in stream
[2026-06-19 10:49:25,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:49:25,541.541 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 10:49:26,955.955 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:49:26,958.958 INFO    ] Checking for system updates...
[2026-06-19 10:49:26,995.995 INFO    ] 200
[2026-06-19 10:49:26,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:27,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:49:27,063.063 INFO    ] No update needed
[2026-06-19 10:49:27,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 10:49:27,102.102 INFO    ] 200
[2026-06-19 10:49:27,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:27,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:49:27,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:49:27,197.197 INFO    ] No camera update needed
[2026-06-19 10:49:27,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:49:27,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:49:27,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:49:27,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:49:29,258.258 INFO    ] ================================================
[2026-06-19 10:49:29,273.273 INFO    ] Launching Daemon at Fri Jun 19 10:49:29 IST 2026
[2026-06-19 10:49:29,284.284 INFO    ] ================================================
[2026-06-19 10:49:29,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:49:29
[2026-06-19 10:49:30,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:49:30,928.928 INFO    ] Initializing speech engine...
[2026-06-19 10:49:30,941.941 INFO    ] 2026-06-19 10:49:30
[2026-06-19 10:49:31,255.255 INFO    ] 2026-06-19 10:49:31
[2026-06-19 10:49:31,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:49:31,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:49:31,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:49:31,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:49:31,803.803 INFO    ] time= 19/06/2026 10:49:31
[2026-06-19 10:49:31,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:49:31,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:49:31,975.975 INFO    ] No existing commands found in stream
[2026-06-19 10:49:36,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:49:36,991.991 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 10:49:37,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:49:37,946.946 INFO    ] Checking for system updates...
[2026-06-19 10:49:37,983.983 INFO    ] 200
[2026-06-19 10:49:37,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:38,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:49:38,049.049 INFO    ] No update needed
[2026-06-19 10:49:38,051.051 INFO    ] Checking for camera pi updates...
[2026-06-19 10:49:38,086.086 INFO    ] 200
[2026-06-19 10:49:38,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:38,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:49:38,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:49:38,175.175 INFO    ] No camera update needed
[2026-06-19 10:49:38,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:49:38,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:49:38,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:49:38,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:49:40,230.230 INFO    ] ================================================
[2026-06-19 10:49:40,245.245 INFO    ] Launching Daemon at Fri Jun 19 10:49:40 IST 2026
[2026-06-19 10:49:40,257.257 INFO    ] ================================================
[2026-06-19 10:49:40,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:49:40
[2026-06-19 10:49:41,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:49:41,717.717 INFO    ] Initializing speech engine...
[2026-06-19 10:49:41,726.726 INFO    ] 2026-06-19 10:49:41
[2026-06-19 10:49:41,975.975 INFO    ] 2026-06-19 10:49:41
[2026-06-19 10:49:42,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:49:42,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:49:42,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:49:42,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:49:42,376.376 INFO    ] time= 19/06/2026 10:49:42
[2026-06-19 10:49:42,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:49:42,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:49:42,462.462 INFO    ] No existing commands found in stream
[2026-06-19 10:49:47,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:49:47,470.470 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-19 10:49:51,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:49:51,246.246 INFO    ] Checking for system updates...
[2026-06-19 10:49:51,287.287 INFO    ] 200
[2026-06-19 10:49:51,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:51,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:49:51,345.345 INFO    ] No update needed
[2026-06-19 10:49:51,347.347 INFO    ] Checking for camera pi updates...
[2026-06-19 10:49:51,386.386 INFO    ] 200
[2026-06-19 10:49:51,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:49:51,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:49:51,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:49:51,482.482 INFO    ] No camera update needed
[2026-06-19 10:49:51,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:49:51,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:49:51,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:49:51,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:49:53,542.542 INFO    ] ================================================
[2026-06-19 10:49:53,557.557 INFO    ] Launching Daemon at Fri Jun 19 10:49:53 IST 2026
[2026-06-19 10:49:53,568.568 INFO    ] ================================================
[2026-06-19 10:49:54,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:49:54
[2026-06-19 10:49:54,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:49:54,981.981 INFO    ] Initializing speech engine...
[2026-06-19 10:49:55,004.004 INFO    ] 2026-06-19 10:49:54
[2026-06-19 10:49:55,261.261 INFO    ] 2026-06-19 10:49:55
[2026-06-19 10:49:55,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:49:55,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:49:55,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:49:55,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:49:55,739.739 INFO    ] time= 19/06/2026 10:49:55
[2026-06-19 10:49:55,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:49:55,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:49:55,987.987 INFO    ] No existing commands found in stream
[2026-06-19 10:50:01,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:50:01,007.007 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 10:50:04,879.879 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:50:04,882.882 INFO    ] Checking for system updates...
[2026-06-19 10:50:04,918.918 INFO    ] 200
[2026-06-19 10:50:04,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:04,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:50:04,983.983 INFO    ] No update needed
[2026-06-19 10:50:04,985.985 INFO    ] Checking for camera pi updates...
[2026-06-19 10:50:05,019.019 INFO    ] 200
[2026-06-19 10:50:05,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:05,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:50:05,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:50:05,108.108 INFO    ] No camera update needed
[2026-06-19 10:50:05,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:50:05,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:50:05,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:50:05,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:50:07,163.163 INFO    ] ================================================
[2026-06-19 10:50:07,179.179 INFO    ] Launching Daemon at Fri Jun 19 10:50:07 IST 2026
[2026-06-19 10:50:07,190.190 INFO    ] ================================================
[2026-06-19 10:50:07,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:50:07
[2026-06-19 10:50:08,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:50:08,671.671 INFO    ] Initializing speech engine...
[2026-06-19 10:50:08,683.683 INFO    ] 2026-06-19 10:50:08
[2026-06-19 10:50:08,969.969 INFO    ] 2026-06-19 10:50:08
[2026-06-19 10:50:09,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:50:09,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:50:09,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:50:09,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:50:09,503.503 INFO    ] time= 19/06/2026 10:50:09
[2026-06-19 10:50:09,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:50:09,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:50:09,668.668 INFO    ] No existing commands found in stream
[2026-06-19 10:50:14,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:50:14,707.707 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 10:50:18,473.473 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:50:18,476.476 INFO    ] Checking for system updates...
[2026-06-19 10:50:18,514.514 INFO    ] 200
[2026-06-19 10:50:18,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:18,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:50:18,573.573 INFO    ] No update needed
[2026-06-19 10:50:18,576.576 INFO    ] Checking for camera pi updates...
[2026-06-19 10:50:18,616.616 INFO    ] 200
[2026-06-19 10:50:18,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:18,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:50:18,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:50:18,710.710 INFO    ] No camera update needed
[2026-06-19 10:50:18,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:50:18,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:50:18,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:50:18,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:50:20,772.772 INFO    ] ================================================
[2026-06-19 10:50:20,787.787 INFO    ] Launching Daemon at Fri Jun 19 10:50:20 IST 2026
[2026-06-19 10:50:20,798.798 INFO    ] ================================================
[2026-06-19 10:50:21,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:50:21
[2026-06-19 10:50:21,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:50:22,247.247 INFO    ] Initializing speech engine...
[2026-06-19 10:50:22,256.256 INFO    ] 2026-06-19 10:50:22
[2026-06-19 10:50:22,553.553 INFO    ] 2026-06-19 10:50:22
[2026-06-19 10:50:22,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:50:22,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:50:22,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:50:22,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:50:22,933.933 INFO    ] time= 19/06/2026 10:50:22
[2026-06-19 10:50:22,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:50:22,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:50:23,058.058 INFO    ] No existing commands found in stream
[2026-06-19 10:50:28,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:50:28,073.073 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 10:50:28,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:50:28,823.823 INFO    ] Checking for system updates...
[2026-06-19 10:50:28,858.858 INFO    ] 200
[2026-06-19 10:50:28,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:28,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:50:28,922.922 INFO    ] No update needed
[2026-06-19 10:50:28,925.925 INFO    ] Checking for camera pi updates...
[2026-06-19 10:50:28,959.959 INFO    ] 200
[2026-06-19 10:50:28,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:29,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:50:29,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:50:29,051.051 INFO    ] No camera update needed
[2026-06-19 10:50:29,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:50:29,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:50:29,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:50:29,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:50:31,108.108 INFO    ] ================================================
[2026-06-19 10:50:31,123.123 INFO    ] Launching Daemon at Fri Jun 19 10:50:31 IST 2026
[2026-06-19 10:50:31,135.135 INFO    ] ================================================
[2026-06-19 10:50:31,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:50:31
[2026-06-19 10:50:32,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:50:32,619.619 INFO    ] Initializing speech engine...
[2026-06-19 10:50:32,645.645 INFO    ] 2026-06-19 10:50:32
[2026-06-19 10:50:32,928.928 INFO    ] 2026-06-19 10:50:32
[2026-06-19 10:50:32,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:50:33,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:50:33,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:50:33,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:50:33,382.382 INFO    ] time= 19/06/2026 10:50:33
[2026-06-19 10:50:33,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:50:33,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:50:33,654.654 INFO    ] No existing commands found in stream
[2026-06-19 10:50:38,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:50:38,672.672 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 10:50:40,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:50:40,007.007 INFO    ] Checking for system updates...
[2026-06-19 10:50:40,044.044 INFO    ] 200
[2026-06-19 10:50:40,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:40,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:50:40,108.108 INFO    ] No update needed
[2026-06-19 10:50:40,110.110 INFO    ] Checking for camera pi updates...
[2026-06-19 10:50:40,147.147 INFO    ] 200
[2026-06-19 10:50:40,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:40,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:50:40,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:50:40,245.245 INFO    ] No camera update needed
[2026-06-19 10:50:40,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:50:40,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:50:40,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:50:40,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:50:42,305.305 INFO    ] ================================================
[2026-06-19 10:50:42,321.321 INFO    ] Launching Daemon at Fri Jun 19 10:50:42 IST 2026
[2026-06-19 10:50:42,333.333 INFO    ] ================================================
[2026-06-19 10:50:42,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:50:42
[2026-06-19 10:50:43,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:50:43,942.942 INFO    ] Initializing speech engine...
[2026-06-19 10:50:43,950.950 INFO    ] 2026-06-19 10:50:43
[2026-06-19 10:50:44,243.243 INFO    ] 2026-06-19 10:50:44
[2026-06-19 10:50:44,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:50:44,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:50:44,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:50:44,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:50:44,791.791 INFO    ] time= 19/06/2026 10:50:44
[2026-06-19 10:50:44,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:50:44,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:50:44,953.953 INFO    ] No existing commands found in stream
[2026-06-19 10:50:49,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:50:49,987.987 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 10:50:51,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:50:51,311.311 INFO    ] Checking for system updates...
[2026-06-19 10:50:51,349.349 INFO    ] 200
[2026-06-19 10:50:51,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:51,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:50:51,409.409 INFO    ] No update needed
[2026-06-19 10:50:51,412.412 INFO    ] Checking for camera pi updates...
[2026-06-19 10:50:51,446.446 INFO    ] 200
[2026-06-19 10:50:51,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:50:51,492.492 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:50:51,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:50:51,536.536 INFO    ] No camera update needed
[2026-06-19 10:50:51,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:50:51,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:50:51,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:50:51,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:50:53,595.595 INFO    ] ================================================
[2026-06-19 10:50:53,611.611 INFO    ] Launching Daemon at Fri Jun 19 10:50:53 IST 2026
[2026-06-19 10:50:53,622.622 INFO    ] ================================================
[2026-06-19 10:50:54,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:50:54
[2026-06-19 10:50:54,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:50:55,032.032 INFO    ] Initializing speech engine...
[2026-06-19 10:50:55,045.045 INFO    ] 2026-06-19 10:50:55
[2026-06-19 10:50:55,311.311 INFO    ] 2026-06-19 10:50:55
[2026-06-19 10:50:55,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:50:55,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:50:55,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:50:55,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:50:55,755.755 INFO    ] time= 19/06/2026 10:50:55
[2026-06-19 10:50:55,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:50:55,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:50:56,005.005 INFO    ] No existing commands found in stream
[2026-06-19 10:51:01,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:51:01,030.030 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 10:51:02,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:51:03,002.002 INFO    ] Checking for system updates...
[2026-06-19 10:51:03,057.057 INFO    ] 200
[2026-06-19 10:51:03,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:03,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:51:03,164.164 INFO    ] No update needed
[2026-06-19 10:51:03,168.168 INFO    ] Checking for camera pi updates...
[2026-06-19 10:51:03,207.207 INFO    ] 200
[2026-06-19 10:51:03,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:03,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:51:03,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:51:03,292.292 INFO    ] No camera update needed
[2026-06-19 10:51:03,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:51:03,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:51:03,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:51:03,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:51:05,366.366 INFO    ] ================================================
[2026-06-19 10:51:05,382.382 INFO    ] Launching Daemon at Fri Jun 19 10:51:05 IST 2026
[2026-06-19 10:51:05,393.393 INFO    ] ================================================
[2026-06-19 10:51:05,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:51:05
[2026-06-19 10:51:06,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:51:06,828.828 INFO    ] Initializing speech engine...
[2026-06-19 10:51:06,847.847 INFO    ] 2026-06-19 10:51:06
[2026-06-19 10:51:07,098.098 INFO    ] 2026-06-19 10:51:07
[2026-06-19 10:51:07,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:51:07,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:51:07,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:51:07,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:51:07,473.473 INFO    ] time= 19/06/2026 10:51:07
[2026-06-19 10:51:07,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:51:07,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:51:07,649.649 INFO    ] No existing commands found in stream
[2026-06-19 10:51:12,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:51:12,677.677 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 10:51:13,483.483 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:51:13,485.485 INFO    ] Checking for system updates...
[2026-06-19 10:51:13,521.521 INFO    ] 200
[2026-06-19 10:51:13,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:13,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:51:13,583.583 INFO    ] No update needed
[2026-06-19 10:51:13,586.586 INFO    ] Checking for camera pi updates...
[2026-06-19 10:51:13,620.620 INFO    ] 200
[2026-06-19 10:51:13,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:13,663.663 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:51:13,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:51:13,709.709 INFO    ] No camera update needed
[2026-06-19 10:51:13,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:51:13,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:51:13,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:51:13,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:51:15,766.766 INFO    ] ================================================
[2026-06-19 10:51:15,781.781 INFO    ] Launching Daemon at Fri Jun 19 10:51:15 IST 2026
[2026-06-19 10:51:15,792.792 INFO    ] ================================================
[2026-06-19 10:51:16,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:51:16
[2026-06-19 10:51:16,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:51:17,205.205 INFO    ] Initializing speech engine...
[2026-06-19 10:51:17,219.219 INFO    ] 2026-06-19 10:51:17
[2026-06-19 10:51:17,487.487 INFO    ] 2026-06-19 10:51:17
[2026-06-19 10:51:17,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:51:17,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:51:17,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:51:17,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:51:17,995.995 INFO    ] time= 19/06/2026 10:51:17
[2026-06-19 10:51:18,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:51:18,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:51:18,196.196 INFO    ] No existing commands found in stream
[2026-06-19 10:51:23,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:51:23,227.227 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-19 10:51:26,901.901 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:51:26,903.903 INFO    ] Checking for system updates...
[2026-06-19 10:51:26,944.944 INFO    ] 200
[2026-06-19 10:51:26,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:27,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:51:27,006.006 INFO    ] No update needed
[2026-06-19 10:51:27,009.009 INFO    ] Checking for camera pi updates...
[2026-06-19 10:51:27,043.043 INFO    ] 200
[2026-06-19 10:51:27,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:27,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:51:27,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:51:27,135.135 INFO    ] No camera update needed
[2026-06-19 10:51:27,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:51:27,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:51:27,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:51:27,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:51:29,192.192 INFO    ] ================================================
[2026-06-19 10:51:29,207.207 INFO    ] Launching Daemon at Fri Jun 19 10:51:29 IST 2026
[2026-06-19 10:51:29,217.217 INFO    ] ================================================
[2026-06-19 10:51:29,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:51:29
[2026-06-19 10:51:30,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:51:30,675.675 INFO    ] Initializing speech engine...
[2026-06-19 10:51:30,681.681 INFO    ] 2026-06-19 10:51:30
[2026-06-19 10:51:30,929.929 INFO    ] 2026-06-19 10:51:30
[2026-06-19 10:51:30,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:51:31,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:51:31,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:51:31,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:51:31,429.429 INFO    ] time= 19/06/2026 10:51:31
[2026-06-19 10:51:31,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:51:31,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:51:31,634.634 INFO    ] No existing commands found in stream
[2026-06-19 10:51:36,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:51:36,652.652 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 10:51:38,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:51:38,747.747 INFO    ] Checking for system updates...
[2026-06-19 10:51:38,783.783 INFO    ] 200
[2026-06-19 10:51:38,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:38,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:51:38,843.843 INFO    ] No update needed
[2026-06-19 10:51:38,845.845 INFO    ] Checking for camera pi updates...
[2026-06-19 10:51:38,879.879 INFO    ] 200
[2026-06-19 10:51:38,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:38,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:51:38,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:51:38,967.967 INFO    ] No camera update needed
[2026-06-19 10:51:38,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:51:38,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:51:38,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:51:38,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:51:41,027.027 INFO    ] ================================================
[2026-06-19 10:51:41,042.042 INFO    ] Launching Daemon at Fri Jun 19 10:51:41 IST 2026
[2026-06-19 10:51:41,053.053 INFO    ] ================================================
[2026-06-19 10:51:41,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:51:41
[2026-06-19 10:51:42,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:51:42,577.577 INFO    ] Initializing speech engine...
[2026-06-19 10:51:42,589.589 INFO    ] 2026-06-19 10:51:42
[2026-06-19 10:51:42,840.840 INFO    ] 2026-06-19 10:51:42
[2026-06-19 10:51:42,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:51:43,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:51:43,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:51:43,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:51:43,314.314 INFO    ] time= 19/06/2026 10:51:43
[2026-06-19 10:51:43,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:51:43,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:51:43,567.567 INFO    ] No existing commands found in stream
[2026-06-19 10:51:48,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:51:48,584.584 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 10:51:51,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:51:51,059.059 INFO    ] Checking for system updates...
[2026-06-19 10:51:51,095.095 INFO    ] 200
[2026-06-19 10:51:51,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:51,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:51:51,158.158 INFO    ] No update needed
[2026-06-19 10:51:51,160.160 INFO    ] Checking for camera pi updates...
[2026-06-19 10:51:51,194.194 INFO    ] 200
[2026-06-19 10:51:51,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:51:51,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:51:51,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:51:51,280.280 INFO    ] No camera update needed
[2026-06-19 10:51:51,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:51:51,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:51:51,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:51:51,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:51:53,343.343 INFO    ] ================================================
[2026-06-19 10:51:53,359.359 INFO    ] Launching Daemon at Fri Jun 19 10:51:53 IST 2026
[2026-06-19 10:51:53,369.369 INFO    ] ================================================
[2026-06-19 10:51:54,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:51:54
[2026-06-19 10:51:54,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:51:54,970.970 INFO    ] Initializing speech engine...
[2026-06-19 10:51:54,978.978 INFO    ] 2026-06-19 10:51:54
[2026-06-19 10:51:55,252.252 INFO    ] 2026-06-19 10:51:55
[2026-06-19 10:51:55,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:51:55,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:51:55,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:51:55,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:51:55,783.783 INFO    ] time= 19/06/2026 10:51:55
[2026-06-19 10:51:55,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:51:55,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:51:55,937.937 INFO    ] No existing commands found in stream
[2026-06-19 10:52:00,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:52:00,968.968 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 10:52:03,716.716 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:52:03,719.719 INFO    ] Checking for system updates...
[2026-06-19 10:52:03,754.754 INFO    ] 200
[2026-06-19 10:52:03,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:03,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:52:03,813.813 INFO    ] No update needed
[2026-06-19 10:52:03,815.815 INFO    ] Checking for camera pi updates...
[2026-06-19 10:52:03,849.849 INFO    ] 200
[2026-06-19 10:52:03,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:03,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:52:03,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:52:03,940.940 INFO    ] No camera update needed
[2026-06-19 10:52:03,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:52:03,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:52:03,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:52:03,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:52:06,997.997 INFO    ] ================================================
[2026-06-19 10:52:06,012.012 INFO    ] Launching Daemon at Fri Jun 19 10:52:06 IST 2026
[2026-06-19 10:52:06,023.023 INFO    ] ================================================
[2026-06-19 10:52:06,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:52:06
[2026-06-19 10:52:07,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:52:07,459.459 INFO    ] Initializing speech engine...
[2026-06-19 10:52:07,467.467 INFO    ] 2026-06-19 10:52:07
[2026-06-19 10:52:07,759.759 INFO    ] 2026-06-19 10:52:07
[2026-06-19 10:52:07,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:52:07,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:52:08,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:52:08,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:52:08,137.137 INFO    ] time= 19/06/2026 10:52:08
[2026-06-19 10:52:08,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:52:08,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:52:08,260.260 INFO    ] No existing commands found in stream
[2026-06-19 10:52:13,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:52:13,276.276 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 10:52:16,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:52:16,999.999 INFO    ] Checking for system updates...
[2026-06-19 10:52:17,036.036 INFO    ] 200
[2026-06-19 10:52:17,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:17,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:52:17,115.115 INFO    ] No update needed
[2026-06-19 10:52:17,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 10:52:17,151.151 INFO    ] 200
[2026-06-19 10:52:17,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:17,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:52:17,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:52:17,344.344 INFO    ] No camera update needed
[2026-06-19 10:52:17,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:52:17,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:52:17,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:52:17,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:52:19,399.399 INFO    ] ================================================
[2026-06-19 10:52:19,414.414 INFO    ] Launching Daemon at Fri Jun 19 10:52:19 IST 2026
[2026-06-19 10:52:19,424.424 INFO    ] ================================================
[2026-06-19 10:52:20,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:52:19
[2026-06-19 10:52:20,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:52:20,853.853 INFO    ] Initializing speech engine...
[2026-06-19 10:52:20,879.879 INFO    ] 2026-06-19 10:52:20
[2026-06-19 10:52:21,152.152 INFO    ] 2026-06-19 10:52:21
[2026-06-19 10:52:21,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:52:21,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:52:21,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:52:21,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:52:21,651.651 INFO    ] time= 19/06/2026 10:52:21
[2026-06-19 10:52:21,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:52:21,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:52:21,897.897 INFO    ] No existing commands found in stream
[2026-06-19 10:52:26,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:52:26,922.922 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 10:52:30,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:52:30,164.164 INFO    ] Checking for system updates...
[2026-06-19 10:52:30,206.206 INFO    ] 200
[2026-06-19 10:52:30,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:30,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:52:30,264.264 INFO    ] No update needed
[2026-06-19 10:52:30,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 10:52:30,303.303 INFO    ] 200
[2026-06-19 10:52:30,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:30,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:52:30,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:52:30,393.393 INFO    ] No camera update needed
[2026-06-19 10:52:30,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:52:30,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:52:30,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:52:30,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:52:32,452.452 INFO    ] ================================================
[2026-06-19 10:52:32,468.468 INFO    ] Launching Daemon at Fri Jun 19 10:52:32 IST 2026
[2026-06-19 10:52:32,480.480 INFO    ] ================================================
[2026-06-19 10:52:33,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:52:33
[2026-06-19 10:52:33,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:52:33,984.984 INFO    ] Initializing speech engine...
[2026-06-19 10:52:34,002.002 INFO    ] 2026-06-19 10:52:33
[2026-06-19 10:52:34,259.259 INFO    ] 2026-06-19 10:52:34
[2026-06-19 10:52:34,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:52:34,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:52:34,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:52:34,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:52:34,815.815 INFO    ] time= 19/06/2026 10:52:34
[2026-06-19 10:52:34,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:52:34,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:52:34,954.954 INFO    ] No existing commands found in stream
[2026-06-19 10:52:39,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:52:39,981.981 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 10:52:41,271.271 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:52:41,273.273 INFO    ] Checking for system updates...
[2026-06-19 10:52:41,309.309 INFO    ] 200
[2026-06-19 10:52:41,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:41,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:52:41,367.367 INFO    ] No update needed
[2026-06-19 10:52:41,370.370 INFO    ] Checking for camera pi updates...
[2026-06-19 10:52:41,404.404 INFO    ] 200
[2026-06-19 10:52:41,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:41,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:52:41,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:52:41,482.482 INFO    ] No camera update needed
[2026-06-19 10:52:41,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:52:41,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:52:41,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:52:41,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:52:43,538.538 INFO    ] ================================================
[2026-06-19 10:52:43,554.554 INFO    ] Launching Daemon at Fri Jun 19 10:52:43 IST 2026
[2026-06-19 10:52:43,565.565 INFO    ] ================================================
[2026-06-19 10:52:44,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:52:44
[2026-06-19 10:52:44,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:52:45,052.052 INFO    ] Initializing speech engine...
[2026-06-19 10:52:45,070.070 INFO    ] 2026-06-19 10:52:45
[2026-06-19 10:52:45,324.324 INFO    ] 2026-06-19 10:52:45
[2026-06-19 10:52:45,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:52:45,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:52:45,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:52:45,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:52:45,706.706 INFO    ] time= 19/06/2026 10:52:45
[2026-06-19 10:52:45,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:52:45,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:52:45,901.901 INFO    ] No existing commands found in stream
[2026-06-19 10:52:50,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:52:50,915.915 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 10:52:52,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:52:52,160.160 INFO    ] Checking for system updates...
[2026-06-19 10:52:52,197.197 INFO    ] 200
[2026-06-19 10:52:52,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:52,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:52:52,254.254 INFO    ] No update needed
[2026-06-19 10:52:52,257.257 INFO    ] Checking for camera pi updates...
[2026-06-19 10:52:52,295.295 INFO    ] 200
[2026-06-19 10:52:52,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:52:52,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:52:52,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:52:52,382.382 INFO    ] No camera update needed
[2026-06-19 10:52:52,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:52:52,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:52:52,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:52:52,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:52:54,440.440 INFO    ] ================================================
[2026-06-19 10:52:54,456.456 INFO    ] Launching Daemon at Fri Jun 19 10:52:54 IST 2026
[2026-06-19 10:52:54,467.467 INFO    ] ================================================
[2026-06-19 10:52:55,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:52:55
[2026-06-19 10:52:55,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:52:55,986.986 INFO    ] Initializing speech engine...
[2026-06-19 10:52:56,001.001 INFO    ] 2026-06-19 10:52:55
[2026-06-19 10:52:56,310.310 INFO    ] 2026-06-19 10:52:56
[2026-06-19 10:52:56,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:52:56,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:52:56,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:52:56,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:52:56,841.841 INFO    ] time= 19/06/2026 10:52:56
[2026-06-19 10:52:56,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:52:56,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:52:56,998.998 INFO    ] No existing commands found in stream
[2026-06-19 10:53:02,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:53:02,033.033 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 10:53:05,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:53:05,150.150 INFO    ] Checking for system updates...
[2026-06-19 10:53:05,187.187 INFO    ] 200
[2026-06-19 10:53:05,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:05,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:53:05,257.257 INFO    ] No update needed
[2026-06-19 10:53:05,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 10:53:05,294.294 INFO    ] 200
[2026-06-19 10:53:05,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:05,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:53:05,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:53:05,384.384 INFO    ] No camera update needed
[2026-06-19 10:53:05,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:53:05,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:53:05,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:53:05,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:53:07,444.444 INFO    ] ================================================
[2026-06-19 10:53:07,459.459 INFO    ] Launching Daemon at Fri Jun 19 10:53:07 IST 2026
[2026-06-19 10:53:07,470.470 INFO    ] ================================================
[2026-06-19 10:53:08,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:53:08
[2026-06-19 10:53:08,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:53:08,924.924 INFO    ] Initializing speech engine...
[2026-06-19 10:53:08,940.940 INFO    ] 2026-06-19 10:53:08
[2026-06-19 10:53:09,217.217 INFO    ] 2026-06-19 10:53:09
[2026-06-19 10:53:09,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:53:09,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:53:09,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:53:09,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:53:09,653.653 INFO    ] time= 19/06/2026 10:53:09
[2026-06-19 10:53:09,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:53:09,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:53:09,862.862 INFO    ] No existing commands found in stream
[2026-06-19 10:53:14,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:53:14,879.879 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 10:53:18,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:53:18,986.986 INFO    ] Checking for system updates...
[2026-06-19 10:53:19,022.022 INFO    ] 200
[2026-06-19 10:53:19,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:19,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:53:19,082.082 INFO    ] No update needed
[2026-06-19 10:53:19,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 10:53:19,119.119 INFO    ] 200
[2026-06-19 10:53:19,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:19,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:53:19,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:53:19,221.221 INFO    ] No camera update needed
[2026-06-19 10:53:19,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:53:19,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:53:19,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:53:19,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:53:21,277.277 INFO    ] ================================================
[2026-06-19 10:53:21,293.293 INFO    ] Launching Daemon at Fri Jun 19 10:53:21 IST 2026
[2026-06-19 10:53:21,304.304 INFO    ] ================================================
[2026-06-19 10:53:21,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:53:21
[2026-06-19 10:53:22,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:53:22,736.736 INFO    ] Initializing speech engine...
[2026-06-19 10:53:22,745.745 INFO    ] 2026-06-19 10:53:22
[2026-06-19 10:53:23,041.041 INFO    ] 2026-06-19 10:53:23
[2026-06-19 10:53:23,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:53:23,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:53:23,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:53:23,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:53:23,461.461 INFO    ] time= 19/06/2026 10:53:23
[2026-06-19 10:53:23,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:53:23,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:53:23,643.643 INFO    ] No existing commands found in stream
[2026-06-19 10:53:28,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:53:28,671.671 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 10:53:30,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:53:30,946.946 INFO    ] Checking for system updates...
[2026-06-19 10:53:30,981.981 INFO    ] 200
[2026-06-19 10:53:30,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:31,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:53:31,046.046 INFO    ] No update needed
[2026-06-19 10:53:31,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 10:53:31,082.082 INFO    ] 200
[2026-06-19 10:53:31,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:31,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:53:31,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:53:31,169.169 INFO    ] No camera update needed
[2026-06-19 10:53:31,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:53:31,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:53:31,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:53:31,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:53:33,226.226 INFO    ] ================================================
[2026-06-19 10:53:33,242.242 INFO    ] Launching Daemon at Fri Jun 19 10:53:33 IST 2026
[2026-06-19 10:53:33,254.254 INFO    ] ================================================
[2026-06-19 10:53:33,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:53:33
[2026-06-19 10:53:34,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:53:34,666.666 INFO    ] Initializing speech engine...
[2026-06-19 10:53:34,681.681 INFO    ] 2026-06-19 10:53:34
[2026-06-19 10:53:34,947.947 INFO    ] 2026-06-19 10:53:34
[2026-06-19 10:53:34,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:53:35,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:53:35,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:53:35,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:53:35,428.428 INFO    ] time= 19/06/2026 10:53:35
[2026-06-19 10:53:35,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:53:35,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:53:35,656.656 INFO    ] No existing commands found in stream
[2026-06-19 10:53:40,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:53:40,691.691 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 10:53:42,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:53:42,177.177 INFO    ] Checking for system updates...
[2026-06-19 10:53:42,213.213 INFO    ] 200
[2026-06-19 10:53:42,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:42,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:53:42,271.271 INFO    ] No update needed
[2026-06-19 10:53:42,273.273 INFO    ] Checking for camera pi updates...
[2026-06-19 10:53:42,311.311 INFO    ] 200
[2026-06-19 10:53:42,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:42,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:53:42,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:53:42,398.398 INFO    ] No camera update needed
[2026-06-19 10:53:42,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:53:42,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:53:42,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:53:42,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:53:44,452.452 INFO    ] ================================================
[2026-06-19 10:53:44,467.467 INFO    ] Launching Daemon at Fri Jun 19 10:53:44 IST 2026
[2026-06-19 10:53:44,485.485 INFO    ] ================================================
[2026-06-19 10:53:45,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:53:45
[2026-06-19 10:53:45,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:53:46,139.139 INFO    ] Initializing speech engine...
[2026-06-19 10:53:46,150.150 INFO    ] 2026-06-19 10:53:46
[2026-06-19 10:53:46,432.432 INFO    ] 2026-06-19 10:53:46
[2026-06-19 10:53:46,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:53:46,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:53:46,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:53:46,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:53:46,968.968 INFO    ] time= 19/06/2026 10:53:46
[2026-06-19 10:53:46,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:53:46,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:53:47,125.125 INFO    ] No existing commands found in stream
[2026-06-19 10:53:52,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:53:52,146.146 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 10:53:55,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:53:55,533.533 INFO    ] Checking for system updates...
[2026-06-19 10:53:55,571.571 INFO    ] 200
[2026-06-19 10:53:55,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:55,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:53:55,632.632 INFO    ] No update needed
[2026-06-19 10:53:55,635.635 INFO    ] Checking for camera pi updates...
[2026-06-19 10:53:55,670.670 INFO    ] 200
[2026-06-19 10:53:55,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:53:55,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:53:55,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:53:55,764.764 INFO    ] No camera update needed
[2026-06-19 10:53:55,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:53:55,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:53:55,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:53:55,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:53:57,820.820 INFO    ] ================================================
[2026-06-19 10:53:57,836.836 INFO    ] Launching Daemon at Fri Jun 19 10:53:57 IST 2026
[2026-06-19 10:53:57,847.847 INFO    ] ================================================
[2026-06-19 10:53:58,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:53:58
[2026-06-19 10:53:59,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:53:59,299.299 INFO    ] Initializing speech engine...
[2026-06-19 10:53:59,308.308 INFO    ] 2026-06-19 10:53:59
[2026-06-19 10:53:59,565.565 INFO    ] 2026-06-19 10:53:59
[2026-06-19 10:53:59,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:53:59,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:53:59,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:54:00,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:54:00,110.110 INFO    ] time= 19/06/2026 10:54:00
[2026-06-19 10:54:00,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:54:00,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:54:00,267.267 INFO    ] No existing commands found in stream
[2026-06-19 10:54:05,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:54:05,297.297 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 10:54:09,512.512 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:54:09,515.515 INFO    ] Checking for system updates...
[2026-06-19 10:54:09,555.555 INFO    ] 200
[2026-06-19 10:54:09,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:09,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:54:09,613.613 INFO    ] No update needed
[2026-06-19 10:54:09,616.616 INFO    ] Checking for camera pi updates...
[2026-06-19 10:54:09,650.650 INFO    ] 200
[2026-06-19 10:54:09,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:09,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:54:09,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:54:09,750.750 INFO    ] No camera update needed
[2026-06-19 10:54:09,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:54:09,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:54:09,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:54:09,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:54:11,808.808 INFO    ] ================================================
[2026-06-19 10:54:11,823.823 INFO    ] Launching Daemon at Fri Jun 19 10:54:11 IST 2026
[2026-06-19 10:54:11,834.834 INFO    ] ================================================
[2026-06-19 10:54:12,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:54:12
[2026-06-19 10:54:13,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:54:13,293.293 INFO    ] Initializing speech engine...
[2026-06-19 10:54:13,301.301 INFO    ] 2026-06-19 10:54:13
[2026-06-19 10:54:13,573.573 INFO    ] 2026-06-19 10:54:13
[2026-06-19 10:54:13,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:54:13,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:54:13,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:54:13,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:54:13,991.991 INFO    ] time= 19/06/2026 10:54:13
[2026-06-19 10:54:13,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:54:14,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:54:14,095.095 INFO    ] No existing commands found in stream
[2026-06-19 10:54:19,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:54:19,128.128 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 10:54:21,596.596 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:54:21,599.599 INFO    ] Checking for system updates...
[2026-06-19 10:54:21,634.634 INFO    ] 200
[2026-06-19 10:54:21,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:21,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:54:21,692.692 INFO    ] No update needed
[2026-06-19 10:54:21,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 10:54:21,729.729 INFO    ] 200
[2026-06-19 10:54:21,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:21,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:54:21,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:54:21,927.927 INFO    ] No camera update needed
[2026-06-19 10:54:21,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:54:21,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:54:21,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:54:21,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:54:23,986.986 INFO    ] ================================================
[2026-06-19 10:54:24,001.001 INFO    ] Launching Daemon at Fri Jun 19 10:54:23 IST 2026
[2026-06-19 10:54:24,012.012 INFO    ] ================================================
[2026-06-19 10:54:24,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:54:24
[2026-06-19 10:54:25,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:54:25,465.465 INFO    ] Initializing speech engine...
[2026-06-19 10:54:25,474.474 INFO    ] 2026-06-19 10:54:25
[2026-06-19 10:54:25,723.723 INFO    ] 2026-06-19 10:54:25
[2026-06-19 10:54:25,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:54:26,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:54:26,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:54:26,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:54:26,218.218 INFO    ] time= 19/06/2026 10:54:26
[2026-06-19 10:54:26,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:54:26,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:54:26,417.417 INFO    ] No existing commands found in stream
[2026-06-19 10:54:31,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:54:31,450.450 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 10:54:32,782.782 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:54:32,785.785 INFO    ] Checking for system updates...
[2026-06-19 10:54:32,831.831 INFO    ] 200
[2026-06-19 10:54:32,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:32,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:54:32,888.888 INFO    ] No update needed
[2026-06-19 10:54:32,891.891 INFO    ] Checking for camera pi updates...
[2026-06-19 10:54:32,927.927 INFO    ] 200
[2026-06-19 10:54:32,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:32,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:54:32,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:54:32,999.999 INFO    ] No camera update needed
[2026-06-19 10:54:33,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:54:33,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:54:33,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:54:33,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:54:35,055.055 INFO    ] ================================================
[2026-06-19 10:54:35,070.070 INFO    ] Launching Daemon at Fri Jun 19 10:54:35 IST 2026
[2026-06-19 10:54:35,080.080 INFO    ] ================================================
[2026-06-19 10:54:35,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:54:35
[2026-06-19 10:54:36,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:54:36,498.498 INFO    ] Initializing speech engine...
[2026-06-19 10:54:36,520.520 INFO    ] 2026-06-19 10:54:36
[2026-06-19 10:54:36,793.793 INFO    ] 2026-06-19 10:54:36
[2026-06-19 10:54:36,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:54:37,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:54:37,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:54:37,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:54:37,204.204 INFO    ] time= 19/06/2026 10:54:37
[2026-06-19 10:54:37,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:54:37,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:54:37,373.373 INFO    ] No existing commands found in stream
[2026-06-19 10:54:42,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:54:42,401.401 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 10:54:46,845.845 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:54:46,848.848 INFO    ] Checking for system updates...
[2026-06-19 10:54:46,884.884 INFO    ] 200
[2026-06-19 10:54:46,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:46,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:54:46,947.947 INFO    ] No update needed
[2026-06-19 10:54:46,949.949 INFO    ] Checking for camera pi updates...
[2026-06-19 10:54:46,983.983 INFO    ] 200
[2026-06-19 10:54:46,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:47,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:54:47,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:54:47,063.063 INFO    ] No camera update needed
[2026-06-19 10:54:47,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:54:47,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:54:47,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:54:47,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:54:49,119.119 INFO    ] ================================================
[2026-06-19 10:54:49,134.134 INFO    ] Launching Daemon at Fri Jun 19 10:54:49 IST 2026
[2026-06-19 10:54:49,145.145 INFO    ] ================================================
[2026-06-19 10:54:49,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:54:49
[2026-06-19 10:54:50,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:54:50,596.596 INFO    ] Initializing speech engine...
[2026-06-19 10:54:50,603.603 INFO    ] 2026-06-19 10:54:50
[2026-06-19 10:54:50,865.865 INFO    ] 2026-06-19 10:54:50
[2026-06-19 10:54:50,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:54:51,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:54:51,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:54:51,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:54:51,321.321 INFO    ] time= 19/06/2026 10:54:51
[2026-06-19 10:54:51,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:54:51,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:54:51,537.537 INFO    ] No existing commands found in stream
[2026-06-19 10:54:56,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:54:56,570.570 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 10:54:57,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:54:57,028.028 INFO    ] Checking for system updates...
[2026-06-19 10:54:57,064.064 INFO    ] 200
[2026-06-19 10:54:57,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:57,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:54:57,123.123 INFO    ] No update needed
[2026-06-19 10:54:57,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 10:54:57,160.160 INFO    ] 200
[2026-06-19 10:54:57,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:54:57,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:54:57,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:54:57,243.243 INFO    ] No camera update needed
[2026-06-19 10:54:57,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:54:57,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:54:57,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:54:57,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:54:59,299.299 INFO    ] ================================================
[2026-06-19 10:54:59,314.314 INFO    ] Launching Daemon at Fri Jun 19 10:54:59 IST 2026
[2026-06-19 10:54:59,325.325 INFO    ] ================================================
[2026-06-19 10:54:59,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:54:59
[2026-06-19 10:55:00,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:55:00,856.856 INFO    ] Initializing speech engine...
[2026-06-19 10:55:00,869.869 INFO    ] 2026-06-19 10:55:00
[2026-06-19 10:55:01,139.139 INFO    ] 2026-06-19 10:55:01
[2026-06-19 10:55:01,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:55:01,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:55:01,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:55:01,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:55:01,555.555 INFO    ] time= 19/06/2026 10:55:01
[2026-06-19 10:55:01,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:55:01,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:55:01,656.656 INFO    ] No existing commands found in stream
[2026-06-19 10:55:06,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:55:06,690.690 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 10:55:09,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:55:09,363.363 INFO    ] Checking for system updates...
[2026-06-19 10:55:09,400.400 INFO    ] 200
[2026-06-19 10:55:09,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:55:09,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:55:09,460.460 INFO    ] No update needed
[2026-06-19 10:55:09,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 10:55:09,498.498 INFO    ] 200
[2026-06-19 10:55:09,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:55:09,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:55:09,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:55:09,594.594 INFO    ] No camera update needed
[2026-06-19 10:55:09,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:55:09,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:55:09,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:55:09,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:55:11,650.650 INFO    ] ================================================
[2026-06-19 10:55:11,665.665 INFO    ] Launching Daemon at Fri Jun 19 10:55:11 IST 2026
[2026-06-19 10:55:11,676.676 INFO    ] ================================================
[2026-06-19 10:55:12,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:55:12
[2026-06-19 10:55:12,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:55:13,097.097 INFO    ] Initializing speech engine...
[2026-06-19 10:55:13,105.105 INFO    ] 2026-06-19 10:55:13
[2026-06-19 10:55:13,396.396 INFO    ] 2026-06-19 10:55:13
[2026-06-19 10:55:13,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:55:13,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:55:13,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:55:13,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:55:13,889.889 INFO    ] time= 19/06/2026 10:55:13
[2026-06-19 10:55:13,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:55:13,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:55:14,143.143 INFO    ] No existing commands found in stream
[2026-06-19 10:55:19,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:55:19,182.182 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 10:55:23,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:55:23,381.381 INFO    ] Checking for system updates...
[2026-06-19 10:55:23,418.418 INFO    ] 200
[2026-06-19 10:55:23,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:55:23,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:55:23,479.479 INFO    ] No update needed
[2026-06-19 10:55:23,482.482 INFO    ] Checking for camera pi updates...
[2026-06-19 10:55:23,515.515 INFO    ] 200
[2026-06-19 10:55:23,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:55:23,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:55:23,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:55:23,608.608 INFO    ] No camera update needed
[2026-06-19 10:55:23,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:55:23,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:55:23,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:55:23,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:55:25,663.663 INFO    ] ================================================
[2026-06-19 10:55:25,678.678 INFO    ] Launching Daemon at Fri Jun 19 10:55:25 IST 2026
[2026-06-19 10:55:25,689.689 INFO    ] ================================================
[2026-06-19 10:55:26,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:55:26
[2026-06-19 10:55:26,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:55:27,119.119 INFO    ] Initializing speech engine...
[2026-06-19 10:55:27,127.127 INFO    ] 2026-06-19 10:55:27
[2026-06-19 10:55:27,385.385 INFO    ] 2026-06-19 10:55:27
[2026-06-19 10:55:27,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:55:27,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:55:27,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:55:27,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:55:27,829.829 INFO    ] time= 19/06/2026 10:55:27
[2026-06-19 10:55:27,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:55:27,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:55:28,086.086 INFO    ] No existing commands found in stream
[2026-06-19 10:55:33,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:55:33,110.110 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 10:55:35,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:55:35,348.348 INFO    ] Checking for system updates...
[2026-06-19 10:55:35,385.385 INFO    ] 200
[2026-06-19 10:55:35,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:55:35,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:55:35,443.443 INFO    ] No update needed
[2026-06-19 10:55:35,445.445 INFO    ] Checking for camera pi updates...
[2026-06-19 10:55:35,479.479 INFO    ] 200
[2026-06-19 10:55:35,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:55:35,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:55:35,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:55:35,569.569 INFO    ] No camera update needed
[2026-06-19 10:55:35,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:55:35,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:55:35,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:55:35,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:55:37,625.625 INFO    ] ================================================
[2026-06-19 10:55:37,639.639 INFO    ] Launching Daemon at Fri Jun 19 10:55:37 IST 2026
[2026-06-19 10:55:37,650.650 INFO    ] ================================================
[2026-06-19 10:55:38,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:55:38
[2026-06-19 10:55:38,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:55:39,104.104 INFO    ] Initializing speech engine...
[2026-06-19 10:55:39,113.113 INFO    ] 2026-06-19 10:55:39
[2026-06-19 10:55:39,376.376 INFO    ] 2026-06-19 10:55:39
[2026-06-19 10:55:39,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:55:39,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:55:39,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:55:39,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:55:39,858.858 INFO    ] time= 19/06/2026 10:55:39
[2026-06-19 10:55:39,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:55:39,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:55:40,080.080 INFO    ] No existing commands found in stream
[2026-06-19 10:55:45,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:55:45,107.107 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 10:55:48,417.417 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:55:48,420.420 INFO    ] Checking for system updates...
[2026-06-19 10:55:48,458.458 INFO    ] 200
[2026-06-19 10:55:48,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:55:48,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:55:48,517.517 INFO    ] No update needed
[2026-06-19 10:55:48,519.519 INFO    ] Checking for camera pi updates...
[2026-06-19 10:55:48,553.553 INFO    ] 200
[2026-06-19 10:55:48,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:55:48,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:55:48,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:55:48,632.632 INFO    ] No camera update needed
[2026-06-19 10:55:48,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:55:48,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:55:48,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:55:48,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:55:50,688.688 INFO    ] ================================================
[2026-06-19 10:55:50,703.703 INFO    ] Launching Daemon at Fri Jun 19 10:55:50 IST 2026
[2026-06-19 10:55:50,713.713 INFO    ] ================================================
[2026-06-19 10:55:51,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:55:51
[2026-06-19 10:55:51,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:55:52,111.111 INFO    ] Initializing speech engine...
[2026-06-19 10:55:52,120.120 INFO    ] 2026-06-19 10:55:52
[2026-06-19 10:55:52,389.389 INFO    ] 2026-06-19 10:55:52
[2026-06-19 10:55:52,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:55:52,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:55:52,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:55:52,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:55:52,881.881 INFO    ] time= 19/06/2026 10:55:52
[2026-06-19 10:55:52,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:55:52,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:55:53,019.019 INFO    ] No existing commands found in stream
[2026-06-19 10:55:58,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:55:58,033.033 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 10:56:00,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:56:00,438.438 INFO    ] Checking for system updates...
[2026-06-19 10:56:00,475.475 INFO    ] 200
[2026-06-19 10:56:00,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:00,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:56:00,532.532 INFO    ] No update needed
[2026-06-19 10:56:00,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 10:56:00,568.568 INFO    ] 200
[2026-06-19 10:56:00,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:00,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:56:00,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:56:00,653.653 INFO    ] No camera update needed
[2026-06-19 10:56:00,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:56:00,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:56:00,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:56:00,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:56:02,710.710 INFO    ] ================================================
[2026-06-19 10:56:02,730.730 INFO    ] Launching Daemon at Fri Jun 19 10:56:02 IST 2026
[2026-06-19 10:56:02,746.746 INFO    ] ================================================
[2026-06-19 10:56:03,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:56:03
[2026-06-19 10:56:04,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:56:04,381.381 INFO    ] Initializing speech engine...
[2026-06-19 10:56:04,390.390 INFO    ] 2026-06-19 10:56:04
[2026-06-19 10:56:04,659.659 INFO    ] 2026-06-19 10:56:04
[2026-06-19 10:56:04,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:56:04,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:56:04,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:56:05,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:56:05,209.209 INFO    ] time= 19/06/2026 10:56:05
[2026-06-19 10:56:05,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:56:05,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:56:05,359.359 INFO    ] No existing commands found in stream
[2026-06-19 10:56:10,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:56:10,379.379 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 10:56:14,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:56:14,059.059 INFO    ] Checking for system updates...
[2026-06-19 10:56:14,096.096 INFO    ] 200
[2026-06-19 10:56:14,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:14,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:56:14,154.154 INFO    ] No update needed
[2026-06-19 10:56:14,157.157 INFO    ] Checking for camera pi updates...
[2026-06-19 10:56:14,194.194 INFO    ] 200
[2026-06-19 10:56:14,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:14,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:56:14,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:56:14,290.290 INFO    ] No camera update needed
[2026-06-19 10:56:14,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:56:14,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:56:14,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:56:14,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:56:16,348.348 INFO    ] ================================================
[2026-06-19 10:56:16,364.364 INFO    ] Launching Daemon at Fri Jun 19 10:56:16 IST 2026
[2026-06-19 10:56:16,375.375 INFO    ] ================================================
[2026-06-19 10:56:16,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:56:16
[2026-06-19 10:56:17,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:56:17,773.773 INFO    ] Initializing speech engine...
[2026-06-19 10:56:17,781.781 INFO    ] 2026-06-19 10:56:17
[2026-06-19 10:56:18,058.058 INFO    ] 2026-06-19 10:56:18
[2026-06-19 10:56:18,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:56:18,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:56:18,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:56:18,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:56:18,512.512 INFO    ] time= 19/06/2026 10:56:18
[2026-06-19 10:56:18,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:56:18,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:56:18,783.783 INFO    ] No existing commands found in stream
[2026-06-19 10:56:23,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:56:23,800.800 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 10:56:27,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:56:27,307.307 INFO    ] Checking for system updates...
[2026-06-19 10:56:27,344.344 INFO    ] 200
[2026-06-19 10:56:27,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:27,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:56:27,402.402 INFO    ] No update needed
[2026-06-19 10:56:27,404.404 INFO    ] Checking for camera pi updates...
[2026-06-19 10:56:27,439.439 INFO    ] 200
[2026-06-19 10:56:27,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:27,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:56:27,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:56:27,632.632 INFO    ] No camera update needed
[2026-06-19 10:56:27,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:56:27,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:56:27,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:56:27,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:56:29,690.690 INFO    ] ================================================
[2026-06-19 10:56:29,705.705 INFO    ] Launching Daemon at Fri Jun 19 10:56:29 IST 2026
[2026-06-19 10:56:29,716.716 INFO    ] ================================================
[2026-06-19 10:56:30,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:56:30
[2026-06-19 10:56:30,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:56:31,280.280 INFO    ] Initializing speech engine...
[2026-06-19 10:56:31,287.287 INFO    ] 2026-06-19 10:56:31
[2026-06-19 10:56:31,574.574 INFO    ] 2026-06-19 10:56:31
[2026-06-19 10:56:31,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:56:31,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:56:31,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:56:32,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:56:32,144.144 INFO    ] time= 19/06/2026 10:56:32
[2026-06-19 10:56:32,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:56:32,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:56:32,309.309 INFO    ] No existing commands found in stream
[2026-06-19 10:56:37,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:56:37,339.339 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 10:56:38,785.785 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:56:38,788.788 INFO    ] Checking for system updates...
[2026-06-19 10:56:38,825.825 INFO    ] 200
[2026-06-19 10:56:38,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:38,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:56:38,884.884 INFO    ] No update needed
[2026-06-19 10:56:38,887.887 INFO    ] Checking for camera pi updates...
[2026-06-19 10:56:38,923.923 INFO    ] 200
[2026-06-19 10:56:38,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:38,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:56:39,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:56:39,012.012 INFO    ] No camera update needed
[2026-06-19 10:56:39,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:56:39,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:56:39,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:56:39,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:56:41,066.066 INFO    ] ================================================
[2026-06-19 10:56:41,081.081 INFO    ] Launching Daemon at Fri Jun 19 10:56:41 IST 2026
[2026-06-19 10:56:41,092.092 INFO    ] ================================================
[2026-06-19 10:56:41,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:56:41
[2026-06-19 10:56:42,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:56:42,687.687 INFO    ] Initializing speech engine...
[2026-06-19 10:56:42,696.696 INFO    ] 2026-06-19 10:56:42
[2026-06-19 10:56:42,981.981 INFO    ] 2026-06-19 10:56:42
[2026-06-19 10:56:43,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:56:43,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:56:43,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:56:43,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:56:43,527.527 INFO    ] time= 19/06/2026 10:56:43
[2026-06-19 10:56:43,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:56:43,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:56:43,665.665 INFO    ] No existing commands found in stream
[2026-06-19 10:56:48,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:56:48,694.694 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 10:56:52,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:56:52,354.354 INFO    ] Checking for system updates...
[2026-06-19 10:56:52,391.391 INFO    ] 200
[2026-06-19 10:56:52,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:52,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:56:52,449.449 INFO    ] No update needed
[2026-06-19 10:56:52,451.451 INFO    ] Checking for camera pi updates...
[2026-06-19 10:56:52,485.485 INFO    ] 200
[2026-06-19 10:56:52,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:56:52,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:56:52,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:56:52,571.571 INFO    ] No camera update needed
[2026-06-19 10:56:52,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:56:52,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:56:52,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:56:52,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:56:54,625.625 INFO    ] ================================================
[2026-06-19 10:56:54,640.640 INFO    ] Launching Daemon at Fri Jun 19 10:56:54 IST 2026
[2026-06-19 10:56:54,651.651 INFO    ] ================================================
[2026-06-19 10:56:55,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:56:55
[2026-06-19 10:56:55,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:56:56,236.236 INFO    ] Initializing speech engine...
[2026-06-19 10:56:56,245.245 INFO    ] 2026-06-19 10:56:56
[2026-06-19 10:56:56,531.531 INFO    ] 2026-06-19 10:56:56
[2026-06-19 10:56:56,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:56:56,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:56:56,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:56:57,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:56:57,082.082 INFO    ] time= 19/06/2026 10:56:57
[2026-06-19 10:56:57,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:56:57,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:56:57,222.222 INFO    ] No existing commands found in stream
[2026-06-19 10:57:02,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:57:02,254.254 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 10:57:04,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:57:04,370.370 INFO    ] Checking for system updates...
[2026-06-19 10:57:04,407.407 INFO    ] 200
[2026-06-19 10:57:04,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:04,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:57:04,466.466 INFO    ] No update needed
[2026-06-19 10:57:04,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 10:57:04,504.504 INFO    ] 200
[2026-06-19 10:57:04,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:04,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:57:04,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:57:04,581.581 INFO    ] No camera update needed
[2026-06-19 10:57:04,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:57:04,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:57:04,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:57:04,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:57:06,646.646 INFO    ] ================================================
[2026-06-19 10:57:06,661.661 INFO    ] Launching Daemon at Fri Jun 19 10:57:06 IST 2026
[2026-06-19 10:57:06,672.672 INFO    ] ================================================
[2026-06-19 10:57:07,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:57:07
[2026-06-19 10:57:08,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:57:08,321.321 INFO    ] Initializing speech engine...
[2026-06-19 10:57:08,332.332 INFO    ] 2026-06-19 10:57:08
[2026-06-19 10:57:08,619.619 INFO    ] 2026-06-19 10:57:08
[2026-06-19 10:57:08,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:57:08,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:57:08,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:57:09,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:57:09,171.171 INFO    ] time= 19/06/2026 10:57:09
[2026-06-19 10:57:09,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:57:09,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:57:09,355.355 INFO    ] No existing commands found in stream
[2026-06-19 10:57:14,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:57:14,376.376 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 10:57:16,232.232 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:57:16,235.235 INFO    ] Checking for system updates...
[2026-06-19 10:57:16,271.271 INFO    ] 200
[2026-06-19 10:57:16,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:16,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:57:16,329.329 INFO    ] No update needed
[2026-06-19 10:57:16,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 10:57:16,365.365 INFO    ] 200
[2026-06-19 10:57:16,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:16,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:57:16,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:57:16,459.459 INFO    ] No camera update needed
[2026-06-19 10:57:16,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:57:16,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:57:16,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:57:16,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:57:18,515.515 INFO    ] ================================================
[2026-06-19 10:57:18,530.530 INFO    ] Launching Daemon at Fri Jun 19 10:57:18 IST 2026
[2026-06-19 10:57:18,541.541 INFO    ] ================================================
[2026-06-19 10:57:19,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:57:19
[2026-06-19 10:57:19,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:57:20,169.169 INFO    ] Initializing speech engine...
[2026-06-19 10:57:20,183.183 INFO    ] 2026-06-19 10:57:20
[2026-06-19 10:57:20,453.453 INFO    ] 2026-06-19 10:57:20
[2026-06-19 10:57:20,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:57:20,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:57:20,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:57:20,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:57:21,007.007 INFO    ] time= 19/06/2026 10:57:20
[2026-06-19 10:57:21,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:57:21,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:57:21,173.173 INFO    ] No existing commands found in stream
[2026-06-19 10:57:26,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:57:26,207.207 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 10:57:26,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:57:26,892.892 INFO    ] Checking for system updates...
[2026-06-19 10:57:26,929.929 INFO    ] 200
[2026-06-19 10:57:26,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:26,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:57:26,996.996 INFO    ] No update needed
[2026-06-19 10:57:26,999.999 INFO    ] Checking for camera pi updates...
[2026-06-19 10:57:27,036.036 INFO    ] 200
[2026-06-19 10:57:27,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:27,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:57:27,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:57:27,133.133 INFO    ] No camera update needed
[2026-06-19 10:57:27,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:57:27,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:57:27,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:57:27,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:57:29,191.191 INFO    ] ================================================
[2026-06-19 10:57:29,207.207 INFO    ] Launching Daemon at Fri Jun 19 10:57:29 IST 2026
[2026-06-19 10:57:29,218.218 INFO    ] ================================================
[2026-06-19 10:57:29,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:57:29
[2026-06-19 10:57:30,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:57:30,668.668 INFO    ] Initializing speech engine...
[2026-06-19 10:57:30,674.674 INFO    ] 2026-06-19 10:57:30
[2026-06-19 10:57:30,970.970 INFO    ] 2026-06-19 10:57:30
[2026-06-19 10:57:31,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:57:31,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:57:31,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:57:31,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:57:31,395.395 INFO    ] time= 19/06/2026 10:57:31
[2026-06-19 10:57:31,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:57:31,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:57:31,599.599 INFO    ] No existing commands found in stream
[2026-06-19 10:57:36,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:57:36,629.629 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 10:57:40,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:57:40,984.984 INFO    ] Checking for system updates...
[2026-06-19 10:57:41,020.020 INFO    ] 200
[2026-06-19 10:57:41,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:41,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:57:41,078.078 INFO    ] No update needed
[2026-06-19 10:57:41,080.080 INFO    ] Checking for camera pi updates...
[2026-06-19 10:57:41,115.115 INFO    ] 200
[2026-06-19 10:57:41,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:41,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:57:41,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:57:41,209.209 INFO    ] No camera update needed
[2026-06-19 10:57:41,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:57:41,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:57:41,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:57:41,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:57:43,266.266 INFO    ] ================================================
[2026-06-19 10:57:43,281.281 INFO    ] Launching Daemon at Fri Jun 19 10:57:43 IST 2026
[2026-06-19 10:57:43,292.292 INFO    ] ================================================
[2026-06-19 10:57:43,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:57:43
[2026-06-19 10:57:44,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:57:44,723.723 INFO    ] Initializing speech engine...
[2026-06-19 10:57:44,732.732 INFO    ] 2026-06-19 10:57:44
[2026-06-19 10:57:44,977.977 INFO    ] 2026-06-19 10:57:44
[2026-06-19 10:57:45,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:57:45,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:57:45,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:57:45,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:57:45,449.449 INFO    ] time= 19/06/2026 10:57:45
[2026-06-19 10:57:45,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:57:45,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:57:45,689.689 INFO    ] No existing commands found in stream
[2026-06-19 10:57:50,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:57:50,704.704 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 10:57:52,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:57:52,888.888 INFO    ] Checking for system updates...
[2026-06-19 10:57:52,924.924 INFO    ] 200
[2026-06-19 10:57:52,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:52,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:57:52,982.982 INFO    ] No update needed
[2026-06-19 10:57:52,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 10:57:53,018.018 INFO    ] 200
[2026-06-19 10:57:53,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:57:53,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:57:53,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:57:53,102.102 INFO    ] No camera update needed
[2026-06-19 10:57:53,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:57:53,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:57:53,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:57:53,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:57:55,162.162 INFO    ] ================================================
[2026-06-19 10:57:55,177.177 INFO    ] Launching Daemon at Fri Jun 19 10:57:55 IST 2026
[2026-06-19 10:57:55,188.188 INFO    ] ================================================
[2026-06-19 10:57:55,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:57:55
[2026-06-19 10:57:56,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:57:56,654.654 INFO    ] Initializing speech engine...
[2026-06-19 10:57:56,660.660 INFO    ] 2026-06-19 10:57:56
[2026-06-19 10:57:56,913.913 INFO    ] 2026-06-19 10:57:56
[2026-06-19 10:57:56,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:57:57,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:57:57,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:57:57,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:57:57,393.393 INFO    ] time= 19/06/2026 10:57:57
[2026-06-19 10:57:57,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:57:57,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:57:57,592.592 INFO    ] No existing commands found in stream
[2026-06-19 10:58:02,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:58:02,620.620 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 10:58:03,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:58:03,669.669 INFO    ] Checking for system updates...
[2026-06-19 10:58:03,706.706 INFO    ] 200
[2026-06-19 10:58:03,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:03,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:58:03,765.765 INFO    ] No update needed
[2026-06-19 10:58:03,768.768 INFO    ] Checking for camera pi updates...
[2026-06-19 10:58:03,801.801 INFO    ] 200
[2026-06-19 10:58:03,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:03,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:58:03,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:58:03,888.888 INFO    ] No camera update needed
[2026-06-19 10:58:03,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:58:03,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:58:03,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:58:03,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:58:05,945.945 INFO    ] ================================================
[2026-06-19 10:58:05,960.960 INFO    ] Launching Daemon at Fri Jun 19 10:58:05 IST 2026
[2026-06-19 10:58:05,971.971 INFO    ] ================================================
[2026-06-19 10:58:06,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:58:06
[2026-06-19 10:58:07,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:58:07,537.537 INFO    ] Initializing speech engine...
[2026-06-19 10:58:07,546.546 INFO    ] 2026-06-19 10:58:07
[2026-06-19 10:58:07,802.802 INFO    ] 2026-06-19 10:58:07
[2026-06-19 10:58:07,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:58:08,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:58:08,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:58:08,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:58:08,344.344 INFO    ] time= 19/06/2026 10:58:08
[2026-06-19 10:58:08,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:58:08,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:58:08,503.503 INFO    ] No existing commands found in stream
[2026-06-19 10:58:13,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:58:13,531.531 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 10:58:15,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 10:58:15,990.990 INFO    ] Checking for system updates...
[2026-06-19 10:58:16,026.026 INFO    ] 200
[2026-06-19 10:58:16,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:16,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:58:16,085.085 INFO    ] No update needed
[2026-06-19 10:58:16,087.087 INFO    ] Checking for camera pi updates...
[2026-06-19 10:58:16,121.121 INFO    ] 200
[2026-06-19 10:58:16,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:16,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:58:16,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:58:16,206.206 INFO    ] No camera update needed
[2026-06-19 10:58:16,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:58:16,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:58:16,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:58:16,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:58:18,262.262 INFO    ] ================================================
[2026-06-19 10:58:18,277.277 INFO    ] Launching Daemon at Fri Jun 19 10:58:18 IST 2026
[2026-06-19 10:58:18,288.288 INFO    ] ================================================
[2026-06-19 10:58:18,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:58:18
[2026-06-19 10:58:19,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:58:19,920.920 INFO    ] Initializing speech engine...
[2026-06-19 10:58:19,934.934 INFO    ] 2026-06-19 10:58:19
[2026-06-19 10:58:20,221.221 INFO    ] 2026-06-19 10:58:20
[2026-06-19 10:58:20,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:58:20,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:58:20,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:58:20,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:58:20,745.745 INFO    ] time= 19/06/2026 10:58:20
[2026-06-19 10:58:20,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:58:20,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:58:20,932.932 INFO    ] No existing commands found in stream
[2026-06-19 10:58:25,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:58:25,971.971 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 10:58:28,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:58:28,626.626 INFO    ] Checking for system updates...
[2026-06-19 10:58:28,663.663 INFO    ] 200
[2026-06-19 10:58:28,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:28,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:58:28,727.727 INFO    ] No update needed
[2026-06-19 10:58:28,729.729 INFO    ] Checking for camera pi updates...
[2026-06-19 10:58:28,767.767 INFO    ] 200
[2026-06-19 10:58:28,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:28,815.815 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:58:28,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:58:28,859.859 INFO    ] No camera update needed
[2026-06-19 10:58:28,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:58:28,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:58:28,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:58:28,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:58:30,915.915 INFO    ] ================================================
[2026-06-19 10:58:30,930.930 INFO    ] Launching Daemon at Fri Jun 19 10:58:30 IST 2026
[2026-06-19 10:58:30,940.940 INFO    ] ================================================
[2026-06-19 10:58:31,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:58:31
[2026-06-19 10:58:32,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:58:32,549.549 INFO    ] Initializing speech engine...
[2026-06-19 10:58:32,557.557 INFO    ] 2026-06-19 10:58:32
[2026-06-19 10:58:32,868.868 INFO    ] 2026-06-19 10:58:32
[2026-06-19 10:58:32,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:58:33,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:58:33,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:58:33,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:58:33,312.312 INFO    ] time= 19/06/2026 10:58:33
[2026-06-19 10:58:33,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:58:33,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:58:33,396.396 INFO    ] No existing commands found in stream
[2026-06-19 10:58:38,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:58:38,412.412 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 10:58:39,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:58:39,878.878 INFO    ] Checking for system updates...
[2026-06-19 10:58:39,918.918 INFO    ] 200
[2026-06-19 10:58:39,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:39,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:58:39,977.977 INFO    ] No update needed
[2026-06-19 10:58:39,983.983 INFO    ] Checking for camera pi updates...
[2026-06-19 10:58:40,034.034 INFO    ] 200
[2026-06-19 10:58:40,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:40,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:58:40,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:58:40,128.128 INFO    ] No camera update needed
[2026-06-19 10:58:40,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:58:40,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:58:40,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:58:40,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:58:42,188.188 INFO    ] ================================================
[2026-06-19 10:58:42,203.203 INFO    ] Launching Daemon at Fri Jun 19 10:58:42 IST 2026
[2026-06-19 10:58:42,214.214 INFO    ] ================================================
[2026-06-19 10:58:42,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:58:42
[2026-06-19 10:58:43,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:58:43,631.631 INFO    ] Initializing speech engine...
[2026-06-19 10:58:43,643.643 INFO    ] 2026-06-19 10:58:43
[2026-06-19 10:58:43,911.911 INFO    ] 2026-06-19 10:58:43
[2026-06-19 10:58:43,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:58:44,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:58:44,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:58:44,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:58:44,290.290 INFO    ] time= 19/06/2026 10:58:44
[2026-06-19 10:58:44,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:58:44,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:58:44,481.481 INFO    ] No existing commands found in stream
[2026-06-19 10:58:49,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:58:49,504.504 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 10:58:51,126.126 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 10:58:51,128.128 INFO    ] Checking for system updates...
[2026-06-19 10:58:51,165.165 INFO    ] 200
[2026-06-19 10:58:51,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:51,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:58:51,232.232 INFO    ] No update needed
[2026-06-19 10:58:51,234.234 INFO    ] Checking for camera pi updates...
[2026-06-19 10:58:51,272.272 INFO    ] 200
[2026-06-19 10:58:51,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:58:51,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:58:51,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:58:51,367.367 INFO    ] No camera update needed
[2026-06-19 10:58:51,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:58:51,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:58:51,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:58:51,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:58:53,424.424 INFO    ] ================================================
[2026-06-19 10:58:53,440.440 INFO    ] Launching Daemon at Fri Jun 19 10:58:53 IST 2026
[2026-06-19 10:58:53,450.450 INFO    ] ================================================
[2026-06-19 10:58:54,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:58:54
[2026-06-19 10:58:54,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:58:54,907.907 INFO    ] Initializing speech engine...
[2026-06-19 10:58:54,916.916 INFO    ] 2026-06-19 10:58:54
[2026-06-19 10:58:55,175.175 INFO    ] 2026-06-19 10:58:55
[2026-06-19 10:58:55,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:58:55,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:58:55,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:58:55,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:58:55,717.717 INFO    ] time= 19/06/2026 10:58:55
[2026-06-19 10:58:55,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:58:55,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:58:55,871.871 INFO    ] No existing commands found in stream
[2026-06-19 10:59:00,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:59:00,888.888 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 10:59:02,767.767 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:59:02,770.770 INFO    ] Checking for system updates...
[2026-06-19 10:59:02,817.817 INFO    ] 200
[2026-06-19 10:59:02,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:02,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:59:02,888.888 INFO    ] No update needed
[2026-06-19 10:59:02,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 10:59:02,937.937 INFO    ] 200
[2026-06-19 10:59:02,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:03,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:59:03,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:59:03,051.051 INFO    ] No camera update needed
[2026-06-19 10:59:03,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:59:03,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:59:03,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:59:03,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:59:05,109.109 INFO    ] ================================================
[2026-06-19 10:59:05,124.124 INFO    ] Launching Daemon at Fri Jun 19 10:59:05 IST 2026
[2026-06-19 10:59:05,134.134 INFO    ] ================================================
[2026-06-19 10:59:05,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:59:05
[2026-06-19 10:59:06,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:59:06,617.617 INFO    ] Initializing speech engine...
[2026-06-19 10:59:06,634.634 INFO    ] 2026-06-19 10:59:06
[2026-06-19 10:59:06,888.888 INFO    ] 2026-06-19 10:59:06
[2026-06-19 10:59:06,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:59:07,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:59:07,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:59:07,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:59:07,442.442 INFO    ] time= 19/06/2026 10:59:07
[2026-06-19 10:59:07,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:59:07,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:59:07,598.598 INFO    ] No existing commands found in stream
[2026-06-19 10:59:12,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:59:12,620.620 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 10:59:13,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 10:59:13,388.388 INFO    ] Checking for system updates...
[2026-06-19 10:59:13,426.426 INFO    ] 200
[2026-06-19 10:59:13,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:13,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:59:13,484.484 INFO    ] No update needed
[2026-06-19 10:59:13,486.486 INFO    ] Checking for camera pi updates...
[2026-06-19 10:59:13,521.521 INFO    ] 200
[2026-06-19 10:59:13,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:13,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:59:13,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:59:13,602.602 INFO    ] No camera update needed
[2026-06-19 10:59:13,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:59:13,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:59:13,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:59:13,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:59:15,659.659 INFO    ] ================================================
[2026-06-19 10:59:15,674.674 INFO    ] Launching Daemon at Fri Jun 19 10:59:15 IST 2026
[2026-06-19 10:59:15,686.686 INFO    ] ================================================
[2026-06-19 10:59:16,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:59:16
[2026-06-19 10:59:16,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:59:17,087.087 INFO    ] Initializing speech engine...
[2026-06-19 10:59:17,102.102 INFO    ] 2026-06-19 10:59:17
[2026-06-19 10:59:17,405.405 INFO    ] 2026-06-19 10:59:17
[2026-06-19 10:59:17,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:59:17,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:59:17,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:59:17,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:59:17,907.907 INFO    ] time= 19/06/2026 10:59:17
[2026-06-19 10:59:17,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:59:17,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:59:18,144.144 INFO    ] No existing commands found in stream
[2026-06-19 10:59:23,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:59:23,178.178 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 10:59:24,122.122 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 10:59:24,125.125 INFO    ] Checking for system updates...
[2026-06-19 10:59:24,166.166 INFO    ] 200
[2026-06-19 10:59:24,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:24,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:59:24,234.234 INFO    ] No update needed
[2026-06-19 10:59:24,237.237 INFO    ] Checking for camera pi updates...
[2026-06-19 10:59:24,272.272 INFO    ] 200
[2026-06-19 10:59:24,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:24,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:59:24,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:59:24,362.362 INFO    ] No camera update needed
[2026-06-19 10:59:24,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:59:24,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:59:24,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:59:24,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:59:26,422.422 INFO    ] ================================================
[2026-06-19 10:59:26,438.438 INFO    ] Launching Daemon at Fri Jun 19 10:59:26 IST 2026
[2026-06-19 10:59:26,448.448 INFO    ] ================================================
[2026-06-19 10:59:27,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:59:27
[2026-06-19 10:59:27,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:59:27,891.891 INFO    ] Initializing speech engine...
[2026-06-19 10:59:27,900.900 INFO    ] 2026-06-19 10:59:27
[2026-06-19 10:59:28,160.160 INFO    ] 2026-06-19 10:59:28
[2026-06-19 10:59:28,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:59:28,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:59:28,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:59:28,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:59:28,706.706 INFO    ] time= 19/06/2026 10:59:28
[2026-06-19 10:59:28,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:59:28,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:59:28,846.846 INFO    ] No existing commands found in stream
[2026-06-19 10:59:33,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:59:33,874.874 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 10:59:37,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 10:59:37,389.389 INFO    ] Checking for system updates...
[2026-06-19 10:59:37,425.425 INFO    ] 200
[2026-06-19 10:59:37,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:37,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:59:37,490.490 INFO    ] No update needed
[2026-06-19 10:59:37,492.492 INFO    ] Checking for camera pi updates...
[2026-06-19 10:59:37,526.526 INFO    ] 200
[2026-06-19 10:59:37,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:37,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:59:37,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 10:59:37,611.611 INFO    ] No camera update needed
[2026-06-19 10:59:37,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:59:37,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:59:37,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:59:37,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:59:39,667.667 INFO    ] ================================================
[2026-06-19 10:59:39,682.682 INFO    ] Launching Daemon at Fri Jun 19 10:59:39 IST 2026
[2026-06-19 10:59:39,693.693 INFO    ] ================================================
[2026-06-19 10:59:40,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:59:40
[2026-06-19 10:59:40,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:59:41,129.129 INFO    ] Initializing speech engine...
[2026-06-19 10:59:41,138.138 INFO    ] 2026-06-19 10:59:41
[2026-06-19 10:59:41,391.391 INFO    ] 2026-06-19 10:59:41
[2026-06-19 10:59:41,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:59:41,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:59:41,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:59:41,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:59:41,899.899 INFO    ] time= 19/06/2026 10:59:41
[2026-06-19 10:59:41,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:59:41,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:59:42,135.135 INFO    ] No existing commands found in stream
[2026-06-19 10:59:47,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:59:47,163.163 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 10:59:49,176.176 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 10:59:49,179.179 INFO    ] Checking for system updates...
[2026-06-19 10:59:49,215.215 INFO    ] 200
[2026-06-19 10:59:49,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:49,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:59:49,272.272 INFO    ] No update needed
[2026-06-19 10:59:49,274.274 INFO    ] Checking for camera pi updates...
[2026-06-19 10:59:49,308.308 INFO    ] 200
[2026-06-19 10:59:49,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 10:59:49,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 10:59:49,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 10:59:49,379.379 INFO    ] No camera update needed
[2026-06-19 10:59:49,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-19 10:59:49,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 10:59:49,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 10:59:49,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 10:59:51,435.435 INFO    ] ================================================
[2026-06-19 10:59:51,450.450 INFO    ] Launching Daemon at Fri Jun 19 10:59:51 IST 2026
[2026-06-19 10:59:51,461.461 INFO    ] ================================================
[2026-06-19 10:59:52,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 10:59:52
[2026-06-19 10:59:52,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 10:59:53,032.032 INFO    ] Initializing speech engine...
[2026-06-19 10:59:53,040.040 INFO    ] 2026-06-19 10:59:53
[2026-06-19 10:59:53,291.291 INFO    ] 2026-06-19 10:59:53
[2026-06-19 10:59:53,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 10:59:53,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 10:59:53,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 10:59:53,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 10:59:53,793.793 INFO    ] time= 19/06/2026 10:59:53
[2026-06-19 10:59:53,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 10:59:53,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-19 10:59:54,008.008 INFO    ] No existing commands found in stream
[2026-06-19 10:59:59,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 10:59:59,032.032 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 11:00:03,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:00:03,610.610 INFO    ] Checking for system updates...
[2026-06-19 11:00:03,773.773 INFO    ] 200
[2026-06-19 11:00:03,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:04,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:00:04,224.224 INFO    ] No update needed
[2026-06-19 11:00:04,258.258 INFO    ] Checking for camera pi updates...
[2026-06-19 11:00:04,421.421 INFO    ] 200
[2026-06-19 11:00:04,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:04,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:00:04,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:00:04,782.782 INFO    ] No camera update needed
[2026-06-19 11:00:04,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:00:04,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:00:04,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:00:04,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:00:06,939.939 INFO    ] ================================================
[2026-06-19 11:00:06,954.954 INFO    ] Launching Daemon at Fri Jun 19 11:00:06 IST 2026
[2026-06-19 11:00:06,966.966 INFO    ] ================================================
[2026-06-19 11:00:07,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:00:07
[2026-06-19 11:00:08,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:00:08,533.533 INFO    ] Initializing speech engine...
[2026-06-19 11:00:08,548.548 INFO    ] 2026-06-19 11:00:08
[2026-06-19 11:00:08,834.834 INFO    ] 2026-06-19 11:00:08
[2026-06-19 11:00:08,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:00:09,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:00:09,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:00:09,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:00:09,376.376 INFO    ] time= 19/06/2026 11:00:09
[2026-06-19 11:00:09,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:00:09,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:00:09,558.558 INFO    ] No existing commands found in stream
[2026-06-19 11:00:14,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:00:14,588.588 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 11:00:15,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:00:15,397.397 INFO    ] Checking for system updates...
[2026-06-19 11:00:15,434.434 INFO    ] 200
[2026-06-19 11:00:15,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:15,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:00:15,493.493 INFO    ] No update needed
[2026-06-19 11:00:15,495.495 INFO    ] Checking for camera pi updates...
[2026-06-19 11:00:15,529.529 INFO    ] 200
[2026-06-19 11:00:15,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:15,572.572 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:00:15,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:00:15,623.623 INFO    ] No camera update needed
[2026-06-19 11:00:15,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:00:15,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:00:15,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:00:15,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:00:17,679.679 INFO    ] ================================================
[2026-06-19 11:00:17,694.694 INFO    ] Launching Daemon at Fri Jun 19 11:00:17 IST 2026
[2026-06-19 11:00:17,705.705 INFO    ] ================================================
[2026-06-19 11:00:18,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:00:18
[2026-06-19 11:00:18,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:00:19,167.167 INFO    ] Initializing speech engine...
[2026-06-19 11:00:19,177.177 INFO    ] 2026-06-19 11:00:19
[2026-06-19 11:00:19,442.442 INFO    ] 2026-06-19 11:00:19
[2026-06-19 11:00:19,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:00:19,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:00:19,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:00:19,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:00:19,929.929 INFO    ] time= 19/06/2026 11:00:19
[2026-06-19 11:00:20,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:00:20,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:00:20,139.139 INFO    ] No existing commands found in stream
[2026-06-19 11:00:25,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:00:25,153.153 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 11:00:26,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:00:26,818.818 INFO    ] Checking for system updates...
[2026-06-19 11:00:26,857.857 INFO    ] 200
[2026-06-19 11:00:26,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:26,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:00:26,920.920 INFO    ] No update needed
[2026-06-19 11:00:26,923.923 INFO    ] Checking for camera pi updates...
[2026-06-19 11:00:26,959.959 INFO    ] 200
[2026-06-19 11:00:26,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:27,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:00:27,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:00:27,048.048 INFO    ] No camera update needed
[2026-06-19 11:00:27,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:00:27,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:00:27,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:00:27,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:00:29,103.103 INFO    ] ================================================
[2026-06-19 11:00:29,118.118 INFO    ] Launching Daemon at Fri Jun 19 11:00:29 IST 2026
[2026-06-19 11:00:29,128.128 INFO    ] ================================================
[2026-06-19 11:00:29,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:00:29
[2026-06-19 11:00:30,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:00:30,549.549 INFO    ] Initializing speech engine...
[2026-06-19 11:00:30,573.573 INFO    ] 2026-06-19 11:00:30
[2026-06-19 11:00:30,843.843 INFO    ] 2026-06-19 11:00:30
[2026-06-19 11:00:30,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:00:31,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:00:31,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:00:31,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:00:31,257.257 INFO    ] time= 19/06/2026 11:00:31
[2026-06-19 11:00:31,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:00:31,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:00:31,450.450 INFO    ] No existing commands found in stream
[2026-06-19 11:00:36,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:00:36,483.483 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 11:00:38,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:00:38,557.557 INFO    ] Checking for system updates...
[2026-06-19 11:00:38,594.594 INFO    ] 200
[2026-06-19 11:00:38,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:38,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:00:38,657.657 INFO    ] No update needed
[2026-06-19 11:00:38,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 11:00:38,696.696 INFO    ] 200
[2026-06-19 11:00:38,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:38,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:00:38,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:00:38,892.892 INFO    ] No camera update needed
[2026-06-19 11:00:38,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:00:38,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:00:38,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:00:38,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:00:40,946.946 INFO    ] ================================================
[2026-06-19 11:00:40,961.961 INFO    ] Launching Daemon at Fri Jun 19 11:00:40 IST 2026
[2026-06-19 11:00:40,972.972 INFO    ] ================================================
[2026-06-19 11:00:41,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:00:41
[2026-06-19 11:00:42,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:00:42,385.385 INFO    ] Initializing speech engine...
[2026-06-19 11:00:42,393.393 INFO    ] 2026-06-19 11:00:42
[2026-06-19 11:00:42,687.687 INFO    ] 2026-06-19 11:00:42
[2026-06-19 11:00:42,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:00:42,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:00:42,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:00:43,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:00:43,102.102 INFO    ] time= 19/06/2026 11:00:43
[2026-06-19 11:00:43,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:00:43,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:00:43,286.286 INFO    ] No existing commands found in stream
[2026-06-19 11:00:48,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:00:48,313.313 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 11:00:50,343.343 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:00:50,346.346 INFO    ] Checking for system updates...
[2026-06-19 11:00:50,383.383 INFO    ] 200
[2026-06-19 11:00:50,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:50,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:00:50,442.442 INFO    ] No update needed
[2026-06-19 11:00:50,444.444 INFO    ] Checking for camera pi updates...
[2026-06-19 11:00:50,479.479 INFO    ] 200
[2026-06-19 11:00:50,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:00:50,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:00:50,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:00:50,570.570 INFO    ] No camera update needed
[2026-06-19 11:00:50,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:00:50,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:00:50,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:00:50,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:00:52,628.628 INFO    ] ================================================
[2026-06-19 11:00:52,643.643 INFO    ] Launching Daemon at Fri Jun 19 11:00:52 IST 2026
[2026-06-19 11:00:52,654.654 INFO    ] ================================================
[2026-06-19 11:00:53,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:00:53
[2026-06-19 11:00:53,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:00:54,079.079 INFO    ] Initializing speech engine...
[2026-06-19 11:00:54,106.106 INFO    ] 2026-06-19 11:00:54
[2026-06-19 11:00:54,375.375 INFO    ] 2026-06-19 11:00:54
[2026-06-19 11:00:54,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:00:54,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:00:54,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:00:54,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:00:54,785.785 INFO    ] time= 19/06/2026 11:00:54
[2026-06-19 11:00:54,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:00:54,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:00:54,978.978 INFO    ] No existing commands found in stream
[2026-06-19 11:00:59,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:01:00,000.000 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 11:01:00,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:01:00,536.536 INFO    ] Checking for system updates...
[2026-06-19 11:01:00,577.577 INFO    ] 200
[2026-06-19 11:01:00,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:00,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:01:00,647.647 INFO    ] No update needed
[2026-06-19 11:01:00,650.650 INFO    ] Checking for camera pi updates...
[2026-06-19 11:01:00,689.689 INFO    ] 200
[2026-06-19 11:01:00,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:00,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:01:00,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:01:00,792.792 INFO    ] No camera update needed
[2026-06-19 11:01:00,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:01:00,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:01:00,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:01:00,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:01:02,860.860 INFO    ] ================================================
[2026-06-19 11:01:02,883.883 INFO    ] Launching Daemon at Fri Jun 19 11:01:02 IST 2026
[2026-06-19 11:01:02,895.895 INFO    ] ================================================
[2026-06-19 11:01:03,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:01:03
[2026-06-19 11:01:04,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:01:04,389.389 INFO    ] Initializing speech engine...
[2026-06-19 11:01:04,409.409 INFO    ] 2026-06-19 11:01:04
[2026-06-19 11:01:04,681.681 INFO    ] 2026-06-19 11:01:04
[2026-06-19 11:01:04,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:01:04,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:01:04,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:01:05,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:01:05,104.104 INFO    ] time= 19/06/2026 11:01:05
[2026-06-19 11:01:05,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:01:05,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:01:05,282.282 INFO    ] No existing commands found in stream
[2026-06-19 11:01:10,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:01:10,320.320 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-19 11:01:13,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:01:13,486.486 INFO    ] Checking for system updates...
[2026-06-19 11:01:13,523.523 INFO    ] 200
[2026-06-19 11:01:13,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:13,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:01:13,588.588 INFO    ] No update needed
[2026-06-19 11:01:13,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 11:01:13,627.627 INFO    ] 200
[2026-06-19 11:01:13,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:13,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:01:13,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:01:13,721.721 INFO    ] No camera update needed
[2026-06-19 11:01:13,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:01:13,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:01:13,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:01:13,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:01:15,778.778 INFO    ] ================================================
[2026-06-19 11:01:15,793.793 INFO    ] Launching Daemon at Fri Jun 19 11:01:15 IST 2026
[2026-06-19 11:01:15,804.804 INFO    ] ================================================
[2026-06-19 11:01:16,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:01:16
[2026-06-19 11:01:17,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:01:17,498.498 INFO    ] Initializing speech engine...
[2026-06-19 11:01:17,511.511 INFO    ] 2026-06-19 11:01:17
[2026-06-19 11:01:17,815.815 INFO    ] 2026-06-19 11:01:17
[2026-06-19 11:01:17,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:01:18,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:01:18,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:01:18,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:01:18,321.321 INFO    ] time= 19/06/2026 11:01:18
[2026-06-19 11:01:18,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:01:18,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:01:18,556.556 INFO    ] No existing commands found in stream
[2026-06-19 11:01:23,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:01:23,573.573 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 11:01:26,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:01:26,359.359 INFO    ] Checking for system updates...
[2026-06-19 11:01:26,399.399 INFO    ] 200
[2026-06-19 11:01:26,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:26,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:01:26,458.458 INFO    ] No update needed
[2026-06-19 11:01:26,461.461 INFO    ] Checking for camera pi updates...
[2026-06-19 11:01:26,500.500 INFO    ] 200
[2026-06-19 11:01:26,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:26,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:01:26,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:01:26,597.597 INFO    ] No camera update needed
[2026-06-19 11:01:26,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:01:26,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:01:26,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:01:26,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:01:28,657.657 INFO    ] ================================================
[2026-06-19 11:01:28,672.672 INFO    ] Launching Daemon at Fri Jun 19 11:01:28 IST 2026
[2026-06-19 11:01:28,683.683 INFO    ] ================================================
[2026-06-19 11:01:29,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:01:29
[2026-06-19 11:01:30,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:01:30,343.343 INFO    ] Initializing speech engine...
[2026-06-19 11:01:30,349.349 INFO    ] 2026-06-19 11:01:30
[2026-06-19 11:01:30,677.677 INFO    ] 2026-06-19 11:01:30
[2026-06-19 11:01:30,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:01:30,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:01:30,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:01:31,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:01:31,195.195 INFO    ] time= 19/06/2026 11:01:31
[2026-06-19 11:01:31,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:01:31,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:01:31,410.410 INFO    ] No existing commands found in stream
[2026-06-19 11:01:36,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:01:36,440.440 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 11:01:37,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:01:37,906.906 INFO    ] Checking for system updates...
[2026-06-19 11:01:38,012.012 INFO    ] 200
[2026-06-19 11:01:38,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:38,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:01:38,074.074 INFO    ] No update needed
[2026-06-19 11:01:38,077.077 INFO    ] Checking for camera pi updates...
[2026-06-19 11:01:38,113.113 INFO    ] 200
[2026-06-19 11:01:38,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:38,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:01:38,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:01:38,217.217 INFO    ] No camera update needed
[2026-06-19 11:01:38,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:01:38,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:01:38,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:01:38,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:01:40,272.272 INFO    ] ================================================
[2026-06-19 11:01:40,287.287 INFO    ] Launching Daemon at Fri Jun 19 11:01:40 IST 2026
[2026-06-19 11:01:40,298.298 INFO    ] ================================================
[2026-06-19 11:01:40,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:01:40
[2026-06-19 11:01:41,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:01:41,751.751 INFO    ] Initializing speech engine...
[2026-06-19 11:01:41,768.768 INFO    ] 2026-06-19 11:01:41
[2026-06-19 11:01:42,052.052 INFO    ] 2026-06-19 11:01:42
[2026-06-19 11:01:42,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:01:42,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:01:42,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:01:42,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:01:42,452.452 INFO    ] time= 19/06/2026 11:01:42
[2026-06-19 11:01:42,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:01:42,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:01:42,582.582 INFO    ] No existing commands found in stream
[2026-06-19 11:01:47,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:01:47,598.598 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 11:01:49,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:01:49,480.480 INFO    ] Checking for system updates...
[2026-06-19 11:01:49,524.524 INFO    ] 200
[2026-06-19 11:01:49,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:49,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:01:49,593.593 INFO    ] No update needed
[2026-06-19 11:01:49,596.596 INFO    ] Checking for camera pi updates...
[2026-06-19 11:01:49,631.631 INFO    ] 200
[2026-06-19 11:01:49,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:01:49,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:01:49,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:01:49,729.729 INFO    ] No camera update needed
[2026-06-19 11:01:49,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:01:49,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:01:49,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:01:49,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:01:51,791.791 INFO    ] ================================================
[2026-06-19 11:01:51,806.806 INFO    ] Launching Daemon at Fri Jun 19 11:01:51 IST 2026
[2026-06-19 11:01:51,817.817 INFO    ] ================================================
[2026-06-19 11:01:52,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:01:52
[2026-06-19 11:01:53,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:01:53,280.280 INFO    ] Initializing speech engine...
[2026-06-19 11:01:53,289.289 INFO    ] 2026-06-19 11:01:53
[2026-06-19 11:01:53,555.555 INFO    ] 2026-06-19 11:01:53
[2026-06-19 11:01:53,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:01:53,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:01:53,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:01:53,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:01:54,022.022 INFO    ] time= 19/06/2026 11:01:53
[2026-06-19 11:01:54,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:01:54,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:01:54,260.260 INFO    ] No existing commands found in stream
[2026-06-19 11:01:59,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:01:59,277.277 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 11:02:01,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:02:01,202.202 INFO    ] Checking for system updates...
[2026-06-19 11:02:01,238.238 INFO    ] 200
[2026-06-19 11:02:01,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:01,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:02:01,297.297 INFO    ] No update needed
[2026-06-19 11:02:01,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 11:02:01,333.333 INFO    ] 200
[2026-06-19 11:02:01,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:01,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:02:01,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:02:01,420.420 INFO    ] No camera update needed
[2026-06-19 11:02:01,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:02:01,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:02:01,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:02:01,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:02:03,501.501 INFO    ] ================================================
[2026-06-19 11:02:03,517.517 INFO    ] Launching Daemon at Fri Jun 19 11:02:03 IST 2026
[2026-06-19 11:02:03,528.528 INFO    ] ================================================
[2026-06-19 11:02:04,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:02:04
[2026-06-19 11:02:04,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:02:04,958.958 INFO    ] Initializing speech engine...
[2026-06-19 11:02:04,964.964 INFO    ] 2026-06-19 11:02:04
[2026-06-19 11:02:05,266.266 INFO    ] 2026-06-19 11:02:05
[2026-06-19 11:02:05,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:02:05,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:02:05,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:02:05,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:02:05,703.703 INFO    ] time= 19/06/2026 11:02:05
[2026-06-19 11:02:05,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:02:05,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:02:05,887.887 INFO    ] No existing commands found in stream
[2026-06-19 11:02:10,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:02:10,915.915 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 11:02:14,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:02:14,634.634 INFO    ] Checking for system updates...
[2026-06-19 11:02:14,675.675 INFO    ] 200
[2026-06-19 11:02:14,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:14,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:02:14,732.732 INFO    ] No update needed
[2026-06-19 11:02:14,734.734 INFO    ] Checking for camera pi updates...
[2026-06-19 11:02:14,773.773 INFO    ] 200
[2026-06-19 11:02:14,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:14,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:02:14,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:02:14,862.862 INFO    ] No camera update needed
[2026-06-19 11:02:14,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:02:14,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:02:14,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:02:14,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:02:16,919.919 INFO    ] ================================================
[2026-06-19 11:02:16,933.933 INFO    ] Launching Daemon at Fri Jun 19 11:02:16 IST 2026
[2026-06-19 11:02:16,944.944 INFO    ] ================================================
[2026-06-19 11:02:17,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:02:17
[2026-06-19 11:02:18,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:02:18,410.410 INFO    ] Initializing speech engine...
[2026-06-19 11:02:18,418.418 INFO    ] 2026-06-19 11:02:18
[2026-06-19 11:02:18,679.679 INFO    ] 2026-06-19 11:02:18
[2026-06-19 11:02:18,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:02:18,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:02:18,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:02:19,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:02:19,143.143 INFO    ] time= 19/06/2026 11:02:19
[2026-06-19 11:02:19,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:02:19,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:02:19,322.322 INFO    ] No existing commands found in stream
[2026-06-19 11:02:24,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:02:24,337.337 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 11:02:25,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:02:25,487.487 INFO    ] Checking for system updates...
[2026-06-19 11:02:25,523.523 INFO    ] 200
[2026-06-19 11:02:25,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:25,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:02:25,581.581 INFO    ] No update needed
[2026-06-19 11:02:25,583.583 INFO    ] Checking for camera pi updates...
[2026-06-19 11:02:25,618.618 INFO    ] 200
[2026-06-19 11:02:25,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:25,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:02:25,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:02:25,698.698 INFO    ] No camera update needed
[2026-06-19 11:02:25,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:02:25,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:02:25,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:02:25,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:02:27,756.756 INFO    ] ================================================
[2026-06-19 11:02:27,771.771 INFO    ] Launching Daemon at Fri Jun 19 11:02:27 IST 2026
[2026-06-19 11:02:27,783.783 INFO    ] ================================================
[2026-06-19 11:02:28,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:02:28
[2026-06-19 11:02:29,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:02:29,468.468 INFO    ] Initializing speech engine...
[2026-06-19 11:02:29,476.476 INFO    ] 2026-06-19 11:02:29
[2026-06-19 11:02:29,755.755 INFO    ] 2026-06-19 11:02:29
[2026-06-19 11:02:29,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:02:30,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:02:30,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:02:30,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:02:30,308.308 INFO    ] time= 19/06/2026 11:02:30
[2026-06-19 11:02:30,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:02:30,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:02:30,465.465 INFO    ] No existing commands found in stream
[2026-06-19 11:02:35,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:02:35,491.491 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 11:02:38,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:02:38,086.086 INFO    ] Checking for system updates...
[2026-06-19 11:02:38,126.126 INFO    ] 200
[2026-06-19 11:02:38,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:38,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:02:38,192.192 INFO    ] No update needed
[2026-06-19 11:02:38,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 11:02:38,233.233 INFO    ] 200
[2026-06-19 11:02:38,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:38,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:02:38,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:02:38,327.327 INFO    ] No camera update needed
[2026-06-19 11:02:38,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:02:38,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:02:38,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:02:38,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:02:40,392.392 INFO    ] ================================================
[2026-06-19 11:02:40,408.408 INFO    ] Launching Daemon at Fri Jun 19 11:02:40 IST 2026
[2026-06-19 11:02:40,419.419 INFO    ] ================================================
[2026-06-19 11:02:41,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:02:41
[2026-06-19 11:02:41,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:02:41,970.970 INFO    ] Initializing speech engine...
[2026-06-19 11:02:41,983.983 INFO    ] 2026-06-19 11:02:41
[2026-06-19 11:02:42,278.278 INFO    ] 2026-06-19 11:02:42
[2026-06-19 11:02:42,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:02:42,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:02:42,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:02:42,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:02:42,780.780 INFO    ] time= 19/06/2026 11:02:42
[2026-06-19 11:02:42,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:02:42,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:02:42,986.986 INFO    ] No existing commands found in stream
[2026-06-19 11:02:48,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:02:48,018.018 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 11:02:50,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:02:50,732.732 INFO    ] Checking for system updates...
[2026-06-19 11:02:50,770.770 INFO    ] 200
[2026-06-19 11:02:50,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:50,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:02:50,836.836 INFO    ] No update needed
[2026-06-19 11:02:50,839.839 INFO    ] Checking for camera pi updates...
[2026-06-19 11:02:50,874.874 INFO    ] 200
[2026-06-19 11:02:50,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:02:50,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:02:51,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:02:51,082.082 INFO    ] No camera update needed
[2026-06-19 11:02:51,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:02:51,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:02:51,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:02:51,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:02:53,141.141 INFO    ] ================================================
[2026-06-19 11:02:53,156.156 INFO    ] Launching Daemon at Fri Jun 19 11:02:53 IST 2026
[2026-06-19 11:02:53,167.167 INFO    ] ================================================
[2026-06-19 11:02:53,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:02:53
[2026-06-19 11:02:54,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:02:54,821.821 INFO    ] Initializing speech engine...
[2026-06-19 11:02:54,829.829 INFO    ] 2026-06-19 11:02:54
[2026-06-19 11:02:55,111.111 INFO    ] 2026-06-19 11:02:55
[2026-06-19 11:02:55,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:02:55,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:02:55,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:02:55,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:02:55,640.640 INFO    ] time= 19/06/2026 11:02:55
[2026-06-19 11:02:55,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:02:55,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:02:55,802.802 INFO    ] No existing commands found in stream
[2026-06-19 11:03:00,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:03:00,831.831 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 11:03:04,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:03:04,979.979 INFO    ] Checking for system updates...
[2026-06-19 11:03:05,021.021 INFO    ] 200
[2026-06-19 11:03:05,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:05,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:05,080.080 INFO    ] No update needed
[2026-06-19 11:03:05,082.082 INFO    ] Checking for camera pi updates...
[2026-06-19 11:03:05,116.116 INFO    ] 200
[2026-06-19 11:03:05,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:05,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:03:05,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:05,203.203 INFO    ] No camera update needed
[2026-06-19 11:03:05,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:03:05,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:03:05,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:03:05,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:03:07,260.260 INFO    ] ================================================
[2026-06-19 11:03:07,275.275 INFO    ] Launching Daemon at Fri Jun 19 11:03:07 IST 2026
[2026-06-19 11:03:07,286.286 INFO    ] ================================================
[2026-06-19 11:03:07,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:03:07
[2026-06-19 11:03:08,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:03:08,862.862 INFO    ] Initializing speech engine...
[2026-06-19 11:03:08,870.870 INFO    ] 2026-06-19 11:03:08
[2026-06-19 11:03:09,181.181 INFO    ] 2026-06-19 11:03:09
[2026-06-19 11:03:09,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:03:09,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:03:09,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:03:09,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:03:09,590.590 INFO    ] time= 19/06/2026 11:03:09
[2026-06-19 11:03:09,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:03:09,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:03:09,726.726 INFO    ] No existing commands found in stream
[2026-06-19 11:03:14,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:03:14,754.754 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 11:03:17,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:03:17,217.217 INFO    ] Checking for system updates...
[2026-06-19 11:03:17,255.255 INFO    ] 200
[2026-06-19 11:03:17,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:17,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:17,313.313 INFO    ] No update needed
[2026-06-19 11:03:17,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 11:03:17,349.349 INFO    ] 200
[2026-06-19 11:03:17,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:17,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:03:17,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:17,423.423 INFO    ] No camera update needed
[2026-06-19 11:03:17,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:03:17,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:03:17,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:03:17,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:03:19,477.477 INFO    ] ================================================
[2026-06-19 11:03:19,493.493 INFO    ] Launching Daemon at Fri Jun 19 11:03:19 IST 2026
[2026-06-19 11:03:19,504.504 INFO    ] ================================================
[2026-06-19 11:03:20,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:03:20
[2026-06-19 11:03:20,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:03:21,037.037 INFO    ] Initializing speech engine...
[2026-06-19 11:03:21,052.052 INFO    ] 2026-06-19 11:03:21
[2026-06-19 11:03:21,321.321 INFO    ] 2026-06-19 11:03:21
[2026-06-19 11:03:21,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:03:21,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:03:21,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:03:21,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:03:21,797.797 INFO    ] time= 19/06/2026 11:03:21
[2026-06-19 11:03:21,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:03:21,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:03:22,038.038 INFO    ] No existing commands found in stream
[2026-06-19 11:03:27,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:03:27,062.062 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 11:03:30,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:03:30,221.221 INFO    ] Checking for system updates...
[2026-06-19 11:03:30,258.258 INFO    ] 200
[2026-06-19 11:03:30,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:30,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:30,317.317 INFO    ] No update needed
[2026-06-19 11:03:30,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 11:03:30,353.353 INFO    ] 200
[2026-06-19 11:03:30,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:30,403.403 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:03:30,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:30,449.449 INFO    ] No camera update needed
[2026-06-19 11:03:30,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:03:30,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:03:30,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:03:30,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:03:32,512.512 INFO    ] ================================================
[2026-06-19 11:03:32,529.529 INFO    ] Launching Daemon at Fri Jun 19 11:03:32 IST 2026
[2026-06-19 11:03:32,541.541 INFO    ] ================================================
[2026-06-19 11:03:33,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:03:33
[2026-06-19 11:03:33,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:03:34,084.084 INFO    ] Initializing speech engine...
[2026-06-19 11:03:34,092.092 INFO    ] 2026-06-19 11:03:34
[2026-06-19 11:03:34,363.363 INFO    ] 2026-06-19 11:03:34
[2026-06-19 11:03:34,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:03:34,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:03:34,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:03:35,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:03:35,121.121 INFO    ] time= 19/06/2026 11:03:35
[2026-06-19 11:03:35,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:03:35,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:03:35,353.353 INFO    ] No existing commands found in stream
[2026-06-19 11:03:40,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:03:40,370.370 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 11:03:42,199.199 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:03:42,201.201 INFO    ] Checking for system updates...
[2026-06-19 11:03:42,239.239 INFO    ] 200
[2026-06-19 11:03:42,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:42,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:42,300.300 INFO    ] No update needed
[2026-06-19 11:03:42,302.302 INFO    ] Checking for camera pi updates...
[2026-06-19 11:03:42,346.346 INFO    ] 200
[2026-06-19 11:03:42,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:42,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:03:42,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:42,444.444 INFO    ] No camera update needed
[2026-06-19 11:03:42,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:03:42,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:03:42,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:03:42,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:03:44,506.506 INFO    ] ================================================
[2026-06-19 11:03:44,521.521 INFO    ] Launching Daemon at Fri Jun 19 11:03:44 IST 2026
[2026-06-19 11:03:44,531.531 INFO    ] ================================================
[2026-06-19 11:03:45,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:03:45
[2026-06-19 11:03:45,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:03:46,110.110 INFO    ] Initializing speech engine...
[2026-06-19 11:03:46,128.128 INFO    ] 2026-06-19 11:03:46
[2026-06-19 11:03:46,379.379 INFO    ] 2026-06-19 11:03:46
[2026-06-19 11:03:46,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:03:46,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:03:46,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:03:46,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:03:46,876.876 INFO    ] time= 19/06/2026 11:03:46
[2026-06-19 11:03:46,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:03:46,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:03:47,106.106 INFO    ] No existing commands found in stream
[2026-06-19 11:03:52,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:03:52,122.122 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 11:03:53,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:03:53,433.433 INFO    ] Checking for system updates...
[2026-06-19 11:03:53,475.475 INFO    ] 200
[2026-06-19 11:03:53,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:53,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:53,533.533 INFO    ] No update needed
[2026-06-19 11:03:53,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 11:03:53,570.570 INFO    ] 200
[2026-06-19 11:03:53,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:03:53,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:03:53,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:03:53,664.664 INFO    ] No camera update needed
[2026-06-19 11:03:53,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:03:53,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:03:53,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:03:53,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:03:55,720.720 INFO    ] ================================================
[2026-06-19 11:03:55,736.736 INFO    ] Launching Daemon at Fri Jun 19 11:03:55 IST 2026
[2026-06-19 11:03:55,746.746 INFO    ] ================================================
[2026-06-19 11:03:56,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:03:56
[2026-06-19 11:03:57,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:03:57,349.349 INFO    ] Initializing speech engine...
[2026-06-19 11:03:57,356.356 INFO    ] 2026-06-19 11:03:57
[2026-06-19 11:03:57,618.618 INFO    ] 2026-06-19 11:03:57
[2026-06-19 11:03:57,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:03:57,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:03:57,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:03:58,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:03:58,077.077 INFO    ] time= 19/06/2026 11:03:58
[2026-06-19 11:03:58,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:03:58,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:03:58,293.293 INFO    ] No existing commands found in stream
[2026-06-19 11:04:03,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:04:03,327.327 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 11:04:05,738.738 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:04:05,741.741 INFO    ] Checking for system updates...
[2026-06-19 11:04:05,780.780 INFO    ] 200
[2026-06-19 11:04:05,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:05,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:04:05,837.837 INFO    ] No update needed
[2026-06-19 11:04:05,840.840 INFO    ] Checking for camera pi updates...
[2026-06-19 11:04:05,874.874 INFO    ] 200
[2026-06-19 11:04:05,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:05,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:04:05,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:04:05,973.973 INFO    ] No camera update needed
[2026-06-19 11:04:05,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:04:05,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:04:05,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:04:05,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:04:08,038.038 INFO    ] ================================================
[2026-06-19 11:04:08,053.053 INFO    ] Launching Daemon at Fri Jun 19 11:04:08 IST 2026
[2026-06-19 11:04:08,064.064 INFO    ] ================================================
[2026-06-19 11:04:08,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:04:08
[2026-06-19 11:04:09,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:04:09,527.527 INFO    ] Initializing speech engine...
[2026-06-19 11:04:09,532.532 INFO    ] 2026-06-19 11:04:09
[2026-06-19 11:04:09,811.811 INFO    ] 2026-06-19 11:04:09
[2026-06-19 11:04:09,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:04:10,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:04:10,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:04:10,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:04:10,343.343 INFO    ] time= 19/06/2026 11:04:10
[2026-06-19 11:04:10,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:04:10,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:04:10,526.526 INFO    ] No existing commands found in stream
[2026-06-19 11:04:15,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:04:15,560.560 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 11:04:17,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:04:17,351.351 INFO    ] Checking for system updates...
[2026-06-19 11:04:17,388.388 INFO    ] 200
[2026-06-19 11:04:17,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:17,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:04:17,446.446 INFO    ] No update needed
[2026-06-19 11:04:17,448.448 INFO    ] Checking for camera pi updates...
[2026-06-19 11:04:17,486.486 INFO    ] 200
[2026-06-19 11:04:17,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:17,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:04:17,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:04:17,580.580 INFO    ] No camera update needed
[2026-06-19 11:04:17,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:04:17,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:04:17,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:04:17,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:04:19,640.640 INFO    ] ================================================
[2026-06-19 11:04:19,655.655 INFO    ] Launching Daemon at Fri Jun 19 11:04:19 IST 2026
[2026-06-19 11:04:19,666.666 INFO    ] ================================================
[2026-06-19 11:04:20,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:04:20
[2026-06-19 11:04:20,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:04:21,276.276 INFO    ] Initializing speech engine...
[2026-06-19 11:04:21,284.284 INFO    ] 2026-06-19 11:04:21
[2026-06-19 11:04:21,573.573 INFO    ] 2026-06-19 11:04:21
[2026-06-19 11:04:21,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:04:21,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:04:21,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:04:22,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:04:22,114.114 INFO    ] time= 19/06/2026 11:04:22
[2026-06-19 11:04:22,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:04:22,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:04:22,273.273 INFO    ] No existing commands found in stream
[2026-06-19 11:04:27,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:04:27,300.300 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 11:04:29,156.156 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:04:29,159.159 INFO    ] Checking for system updates...
[2026-06-19 11:04:29,196.196 INFO    ] 200
[2026-06-19 11:04:29,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:29,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:04:29,256.256 INFO    ] No update needed
[2026-06-19 11:04:29,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 11:04:29,296.296 INFO    ] 200
[2026-06-19 11:04:29,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:29,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:04:29,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:04:29,381.381 INFO    ] No camera update needed
[2026-06-19 11:04:29,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:04:29,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:04:29,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:04:29,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:04:31,440.440 INFO    ] ================================================
[2026-06-19 11:04:31,457.457 INFO    ] Launching Daemon at Fri Jun 19 11:04:31 IST 2026
[2026-06-19 11:04:31,469.469 INFO    ] ================================================
[2026-06-19 11:04:32,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:04:32
[2026-06-19 11:04:32,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:04:32,974.974 INFO    ] Initializing speech engine...
[2026-06-19 11:04:32,991.991 INFO    ] 2026-06-19 11:04:32
[2026-06-19 11:04:33,276.276 INFO    ] 2026-06-19 11:04:33
[2026-06-19 11:04:33,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:04:33,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:04:33,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:04:33,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:04:33,698.698 INFO    ] time= 19/06/2026 11:04:33
[2026-06-19 11:04:33,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:04:33,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:04:33,788.788 INFO    ] No existing commands found in stream
[2026-06-19 11:04:38,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:04:38,803.803 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 11:04:40,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:04:40,650.650 INFO    ] Checking for system updates...
[2026-06-19 11:04:40,686.686 INFO    ] 200
[2026-06-19 11:04:40,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:40,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:04:40,748.748 INFO    ] No update needed
[2026-06-19 11:04:40,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 11:04:40,784.784 INFO    ] 200
[2026-06-19 11:04:40,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:40,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:04:40,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:04:40,874.874 INFO    ] No camera update needed
[2026-06-19 11:04:40,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:04:40,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:04:40,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:04:40,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:04:42,930.930 INFO    ] ================================================
[2026-06-19 11:04:42,945.945 INFO    ] Launching Daemon at Fri Jun 19 11:04:42 IST 2026
[2026-06-19 11:04:42,956.956 INFO    ] ================================================
[2026-06-19 11:04:43,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:04:43
[2026-06-19 11:04:44,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:04:44,388.388 INFO    ] Initializing speech engine...
[2026-06-19 11:04:44,397.397 INFO    ] 2026-06-19 11:04:44
[2026-06-19 11:04:44,648.648 INFO    ] 2026-06-19 11:04:44
[2026-06-19 11:04:44,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:04:44,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:04:44,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:04:45,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:04:45,129.129 INFO    ] time= 19/06/2026 11:04:45
[2026-06-19 11:04:45,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:04:45,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:04:45,345.345 INFO    ] No existing commands found in stream
[2026-06-19 11:04:50,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:04:50,383.383 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 11:04:51,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:04:51,783.783 INFO    ] Checking for system updates...
[2026-06-19 11:04:51,824.824 INFO    ] 200
[2026-06-19 11:04:51,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:51,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:04:51,882.882 INFO    ] No update needed
[2026-06-19 11:04:51,885.885 INFO    ] Checking for camera pi updates...
[2026-06-19 11:04:51,919.919 INFO    ] 200
[2026-06-19 11:04:51,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:04:51,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:04:52,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:04:52,003.003 INFO    ] No camera update needed
[2026-06-19 11:04:52,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:04:52,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:04:52,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:04:52,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:04:54,061.061 INFO    ] ================================================
[2026-06-19 11:04:54,078.078 INFO    ] Launching Daemon at Fri Jun 19 11:04:54 IST 2026
[2026-06-19 11:04:54,089.089 INFO    ] ================================================
[2026-06-19 11:04:54,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:04:54
[2026-06-19 11:04:55,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:04:55,676.676 INFO    ] Initializing speech engine...
[2026-06-19 11:04:55,686.686 INFO    ] 2026-06-19 11:04:55
[2026-06-19 11:04:55,936.936 INFO    ] 2026-06-19 11:04:55
[2026-06-19 11:04:55,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:04:56,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:04:56,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:04:56,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:04:56,422.422 INFO    ] time= 19/06/2026 11:04:56
[2026-06-19 11:04:56,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:04:56,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:04:56,625.625 INFO    ] No existing commands found in stream
[2026-06-19 11:05:01,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:05:01,650.650 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 11:05:05,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:05:05,841.841 INFO    ] Checking for system updates...
[2026-06-19 11:05:05,878.878 INFO    ] 200
[2026-06-19 11:05:05,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:05,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:05:05,943.943 INFO    ] No update needed
[2026-06-19 11:05:05,946.946 INFO    ] Checking for camera pi updates...
[2026-06-19 11:05:05,979.979 INFO    ] 200
[2026-06-19 11:05:05,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:06,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:05:06,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:05:06,082.082 INFO    ] No camera update needed
[2026-06-19 11:05:06,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:05:06,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:05:06,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:05:06,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:05:08,143.143 INFO    ] ================================================
[2026-06-19 11:05:08,158.158 INFO    ] Launching Daemon at Fri Jun 19 11:05:08 IST 2026
[2026-06-19 11:05:08,169.169 INFO    ] ================================================
[2026-06-19 11:05:08,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:05:08
[2026-06-19 11:05:09,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:05:09,587.587 INFO    ] Initializing speech engine...
[2026-06-19 11:05:09,603.603 INFO    ] 2026-06-19 11:05:09
[2026-06-19 11:05:09,894.894 INFO    ] 2026-06-19 11:05:09
[2026-06-19 11:05:09,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:05:10,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:05:10,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:05:10,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:05:10,258.258 INFO    ] time= 19/06/2026 11:05:10
[2026-06-19 11:05:10,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:05:10,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:05:10,415.415 INFO    ] No existing commands found in stream
[2026-06-19 11:05:15,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:05:15,429.429 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 11:05:19,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:05:19,140.140 INFO    ] Checking for system updates...
[2026-06-19 11:05:19,180.180 INFO    ] 200
[2026-06-19 11:05:19,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:19,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:05:19,246.246 INFO    ] No update needed
[2026-06-19 11:05:19,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 11:05:19,287.287 INFO    ] 200
[2026-06-19 11:05:19,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:19,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:05:19,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:05:19,374.374 INFO    ] No camera update needed
[2026-06-19 11:05:19,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:05:19,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:05:19,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:05:19,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:05:21,430.430 INFO    ] ================================================
[2026-06-19 11:05:21,446.446 INFO    ] Launching Daemon at Fri Jun 19 11:05:21 IST 2026
[2026-06-19 11:05:21,458.458 INFO    ] ================================================
[2026-06-19 11:05:22,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:05:22
[2026-06-19 11:05:22,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:05:22,877.877 INFO    ] Initializing speech engine...
[2026-06-19 11:05:22,882.882 INFO    ] 2026-06-19 11:05:22
[2026-06-19 11:05:23,191.191 INFO    ] 2026-06-19 11:05:23
[2026-06-19 11:05:23,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:05:23,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:05:23,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:05:23,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:05:23,714.714 INFO    ] time= 19/06/2026 11:05:23
[2026-06-19 11:05:23,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:05:23,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:05:23,911.911 INFO    ] No existing commands found in stream
[2026-06-19 11:05:28,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:05:28,925.925 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 11:05:32,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:05:32,533.533 INFO    ] Checking for system updates...
[2026-06-19 11:05:32,574.574 INFO    ] 200
[2026-06-19 11:05:32,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:32,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:05:32,642.642 INFO    ] No update needed
[2026-06-19 11:05:32,644.644 INFO    ] Checking for camera pi updates...
[2026-06-19 11:05:32,678.678 INFO    ] 200
[2026-06-19 11:05:32,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:32,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:05:32,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:05:32,752.752 INFO    ] No camera update needed
[2026-06-19 11:05:32,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:05:32,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:05:32,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:05:32,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:05:34,809.809 INFO    ] ================================================
[2026-06-19 11:05:34,824.824 INFO    ] Launching Daemon at Fri Jun 19 11:05:34 IST 2026
[2026-06-19 11:05:34,835.835 INFO    ] ================================================
[2026-06-19 11:05:35,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:05:35
[2026-06-19 11:05:36,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:05:36,606.606 INFO    ] Initializing speech engine...
[2026-06-19 11:05:36,617.617 INFO    ] 2026-06-19 11:05:36
[2026-06-19 11:05:36,891.891 INFO    ] 2026-06-19 11:05:36
[2026-06-19 11:05:36,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:05:37,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:05:37,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:05:37,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:05:37,278.278 INFO    ] time= 19/06/2026 11:05:37
[2026-06-19 11:05:37,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:05:37,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:05:37,400.400 INFO    ] No existing commands found in stream
[2026-06-19 11:05:42,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:05:42,426.426 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 11:05:44,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:05:44,133.133 INFO    ] Checking for system updates...
[2026-06-19 11:05:44,174.174 INFO    ] 200
[2026-06-19 11:05:44,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:44,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:05:44,233.233 INFO    ] No update needed
[2026-06-19 11:05:44,236.236 INFO    ] Checking for camera pi updates...
[2026-06-19 11:05:44,274.274 INFO    ] 200
[2026-06-19 11:05:44,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:44,323.323 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:05:44,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:05:44,373.373 INFO    ] No camera update needed
[2026-06-19 11:05:44,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:05:44,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:05:44,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:05:44,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:05:46,431.431 INFO    ] ================================================
[2026-06-19 11:05:46,447.447 INFO    ] Launching Daemon at Fri Jun 19 11:05:46 IST 2026
[2026-06-19 11:05:46,457.457 INFO    ] ================================================
[2026-06-19 11:05:47,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:05:47
[2026-06-19 11:05:47,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:05:48,009.009 INFO    ] Initializing speech engine...
[2026-06-19 11:05:48,017.017 INFO    ] 2026-06-19 11:05:48
[2026-06-19 11:05:48,293.293 INFO    ] 2026-06-19 11:05:48
[2026-06-19 11:05:48,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:05:48,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:05:48,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:05:48,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:05:48,844.844 INFO    ] time= 19/06/2026 11:05:48
[2026-06-19 11:05:48,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:05:48,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:05:49,002.002 INFO    ] No existing commands found in stream
[2026-06-19 11:05:54,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:05:54,036.036 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 11:05:56,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:05:56,268.268 INFO    ] Checking for system updates...
[2026-06-19 11:05:56,308.308 INFO    ] 200
[2026-06-19 11:05:56,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:56,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:05:56,374.374 INFO    ] No update needed
[2026-06-19 11:05:56,377.377 INFO    ] Checking for camera pi updates...
[2026-06-19 11:05:56,412.412 INFO    ] 200
[2026-06-19 11:05:56,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:05:56,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:05:56,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:05:56,507.507 INFO    ] No camera update needed
[2026-06-19 11:05:56,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:05:56,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:05:56,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:05:56,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:05:58,563.563 INFO    ] ================================================
[2026-06-19 11:05:58,579.579 INFO    ] Launching Daemon at Fri Jun 19 11:05:58 IST 2026
[2026-06-19 11:05:58,590.590 INFO    ] ================================================
[2026-06-19 11:05:59,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:05:59
[2026-06-19 11:05:59,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:05:59,993.993 INFO    ] Initializing speech engine...
[2026-06-19 11:06:00,019.019 INFO    ] 2026-06-19 11:05:59
[2026-06-19 11:06:00,300.300 INFO    ] 2026-06-19 11:06:00
[2026-06-19 11:06:00,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:06:00,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:06:00,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:06:00,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:06:00,734.734 INFO    ] time= 19/06/2026 11:06:00
[2026-06-19 11:06:00,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:06:00,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:06:00,946.946 INFO    ] No existing commands found in stream
[2026-06-19 11:06:05,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:06:05,961.961 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 11:06:07,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:06:07,606.606 INFO    ] Checking for system updates...
[2026-06-19 11:06:07,648.648 INFO    ] 200
[2026-06-19 11:06:07,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:07,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:06:07,708.708 INFO    ] No update needed
[2026-06-19 11:06:07,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 11:06:07,749.749 INFO    ] 200
[2026-06-19 11:06:07,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:07,797.797 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:06:07,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:06:07,853.853 INFO    ] No camera update needed
[2026-06-19 11:06:07,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:06:07,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:06:07,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:06:07,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:06:09,913.913 INFO    ] ================================================
[2026-06-19 11:06:09,929.929 INFO    ] Launching Daemon at Fri Jun 19 11:06:09 IST 2026
[2026-06-19 11:06:09,940.940 INFO    ] ================================================
[2026-06-19 11:06:10,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:06:10
[2026-06-19 11:06:11,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:06:11,381.381 INFO    ] Initializing speech engine...
[2026-06-19 11:06:11,397.397 INFO    ] 2026-06-19 11:06:11
[2026-06-19 11:06:11,681.681 INFO    ] 2026-06-19 11:06:11
[2026-06-19 11:06:11,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:06:11,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:06:11,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:06:12,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:06:12,098.098 INFO    ] time= 19/06/2026 11:06:12
[2026-06-19 11:06:12,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:06:12,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:06:12,302.302 INFO    ] No existing commands found in stream
[2026-06-19 11:06:17,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:06:17,332.332 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 11:06:20,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:06:20,442.442 INFO    ] Checking for system updates...
[2026-06-19 11:06:20,483.483 INFO    ] 200
[2026-06-19 11:06:20,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:20,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:06:20,547.547 INFO    ] No update needed
[2026-06-19 11:06:20,549.549 INFO    ] Checking for camera pi updates...
[2026-06-19 11:06:20,583.583 INFO    ] 200
[2026-06-19 11:06:20,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:20,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:06:20,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:06:20,670.670 INFO    ] No camera update needed
[2026-06-19 11:06:20,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:06:20,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:06:20,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:06:20,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:06:22,728.728 INFO    ] ================================================
[2026-06-19 11:06:22,744.744 INFO    ] Launching Daemon at Fri Jun 19 11:06:22 IST 2026
[2026-06-19 11:06:22,755.755 INFO    ] ================================================
[2026-06-19 11:06:23,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:06:23
[2026-06-19 11:06:23,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:06:24,158.158 INFO    ] Initializing speech engine...
[2026-06-19 11:06:24,181.181 INFO    ] 2026-06-19 11:06:24
[2026-06-19 11:06:24,436.436 INFO    ] 2026-06-19 11:06:24
[2026-06-19 11:06:24,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:06:24,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:06:24,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:06:24,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:06:24,846.846 INFO    ] time= 19/06/2026 11:06:24
[2026-06-19 11:06:24,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:06:24,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:06:25,047.047 INFO    ] No existing commands found in stream
[2026-06-19 11:06:30,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:06:30,060.060 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 11:06:32,104.104 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:06:32,107.107 INFO    ] Checking for system updates...
[2026-06-19 11:06:32,151.151 INFO    ] 200
[2026-06-19 11:06:32,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:32,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:06:32,214.214 INFO    ] No update needed
[2026-06-19 11:06:32,217.217 INFO    ] Checking for camera pi updates...
[2026-06-19 11:06:32,257.257 INFO    ] 200
[2026-06-19 11:06:32,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:32,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:06:32,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:06:32,336.336 INFO    ] No camera update needed
[2026-06-19 11:06:32,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:06:32,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:06:32,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:06:32,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:06:34,398.398 INFO    ] ================================================
[2026-06-19 11:06:34,414.414 INFO    ] Launching Daemon at Fri Jun 19 11:06:34 IST 2026
[2026-06-19 11:06:34,426.426 INFO    ] ================================================
[2026-06-19 11:06:35,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:06:35
[2026-06-19 11:06:35,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:06:36,023.023 INFO    ] Initializing speech engine...
[2026-06-19 11:06:36,032.032 INFO    ] 2026-06-19 11:06:36
[2026-06-19 11:06:36,303.303 INFO    ] 2026-06-19 11:06:36
[2026-06-19 11:06:36,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:06:36,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:06:36,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:06:36,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:06:36,866.866 INFO    ] time= 19/06/2026 11:06:36
[2026-06-19 11:06:36,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:06:36,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:06:37,027.027 INFO    ] No existing commands found in stream
[2026-06-19 11:06:42,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:06:42,045.045 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 11:06:42,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:06:42,992.992 INFO    ] Checking for system updates...
[2026-06-19 11:06:43,032.032 INFO    ] 200
[2026-06-19 11:06:43,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:43,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:06:43,092.092 INFO    ] No update needed
[2026-06-19 11:06:43,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 11:06:43,131.131 INFO    ] 200
[2026-06-19 11:06:43,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:43,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:06:43,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:06:43,230.230 INFO    ] No camera update needed
[2026-06-19 11:06:43,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:06:43,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:06:43,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:06:43,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:06:45,286.286 INFO    ] ================================================
[2026-06-19 11:06:45,302.302 INFO    ] Launching Daemon at Fri Jun 19 11:06:45 IST 2026
[2026-06-19 11:06:45,313.313 INFO    ] ================================================
[2026-06-19 11:06:45,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:06:45
[2026-06-19 11:06:46,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:06:46,743.743 INFO    ] Initializing speech engine...
[2026-06-19 11:06:46,752.752 INFO    ] 2026-06-19 11:06:46
[2026-06-19 11:06:47,045.045 INFO    ] 2026-06-19 11:06:47
[2026-06-19 11:06:47,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:06:47,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:06:47,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:06:47,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:06:47,541.541 INFO    ] time= 19/06/2026 11:06:47
[2026-06-19 11:06:47,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:06:47,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:06:47,809.809 INFO    ] No existing commands found in stream
[2026-06-19 11:06:52,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:06:52,835.835 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 11:06:55,727.727 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:06:55,730.730 INFO    ] Checking for system updates...
[2026-06-19 11:06:55,769.769 INFO    ] 200
[2026-06-19 11:06:55,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:55,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:06:55,828.828 INFO    ] No update needed
[2026-06-19 11:06:55,830.830 INFO    ] Checking for camera pi updates...
[2026-06-19 11:06:55,864.864 INFO    ] 200
[2026-06-19 11:06:55,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:06:55,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:06:55,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:06:55,958.958 INFO    ] No camera update needed
[2026-06-19 11:06:55,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:06:55,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:06:55,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:06:55,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:06:58,015.015 INFO    ] ================================================
[2026-06-19 11:06:58,031.031 INFO    ] Launching Daemon at Fri Jun 19 11:06:58 IST 2026
[2026-06-19 11:06:58,042.042 INFO    ] ================================================
[2026-06-19 11:06:58,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:06:58
[2026-06-19 11:06:59,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:06:59,669.669 INFO    ] Initializing speech engine...
[2026-06-19 11:06:59,682.682 INFO    ] 2026-06-19 11:06:59
[2026-06-19 11:06:59,972.972 INFO    ] 2026-06-19 11:06:59
[2026-06-19 11:07:00,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:07:00,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:07:00,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:07:00,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:07:00,515.515 INFO    ] time= 19/06/2026 11:07:00
[2026-06-19 11:07:00,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:07:00,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:07:00,697.697 INFO    ] No existing commands found in stream
[2026-06-19 11:07:05,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:07:05,736.736 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 11:07:06,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:07:06,782.782 INFO    ] Checking for system updates...
[2026-06-19 11:07:06,826.826 INFO    ] 200
[2026-06-19 11:07:06,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:06,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:07:06,885.885 INFO    ] No update needed
[2026-06-19 11:07:06,888.888 INFO    ] Checking for camera pi updates...
[2026-06-19 11:07:06,923.923 INFO    ] 200
[2026-06-19 11:07:06,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:06,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:07:07,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:07:07,118.118 INFO    ] No camera update needed
[2026-06-19 11:07:07,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:07:07,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:07:07,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:07:07,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:07:09,176.176 INFO    ] ================================================
[2026-06-19 11:07:09,192.192 INFO    ] Launching Daemon at Fri Jun 19 11:07:09 IST 2026
[2026-06-19 11:07:09,203.203 INFO    ] ================================================
[2026-06-19 11:07:09,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:07:09
[2026-06-19 11:07:10,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:07:10,653.653 INFO    ] Initializing speech engine...
[2026-06-19 11:07:10,663.663 INFO    ] 2026-06-19 11:07:10
[2026-06-19 11:07:10,959.959 INFO    ] 2026-06-19 11:07:10
[2026-06-19 11:07:10,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:07:11,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:07:11,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:07:11,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:07:11,383.383 INFO    ] time= 19/06/2026 11:07:11
[2026-06-19 11:07:11,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:07:11,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:07:11,539.539 INFO    ] No existing commands found in stream
[2026-06-19 11:07:16,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:07:16,572.572 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 11:07:19,908.908 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:07:19,911.911 INFO    ] Checking for system updates...
[2026-06-19 11:07:19,950.950 INFO    ] 200
[2026-06-19 11:07:19,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:20,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:07:20,015.015 INFO    ] No update needed
[2026-06-19 11:07:20,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 11:07:20,056.056 INFO    ] 200
[2026-06-19 11:07:20,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:20,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:07:20,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:07:20,145.145 INFO    ] No camera update needed
[2026-06-19 11:07:20,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:07:20,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:07:20,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:07:20,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:07:22,201.201 INFO    ] ================================================
[2026-06-19 11:07:22,217.217 INFO    ] Launching Daemon at Fri Jun 19 11:07:22 IST 2026
[2026-06-19 11:07:22,228.228 INFO    ] ================================================
[2026-06-19 11:07:22,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:07:22
[2026-06-19 11:07:23,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:07:23,838.838 INFO    ] Initializing speech engine...
[2026-06-19 11:07:23,851.851 INFO    ] 2026-06-19 11:07:23
[2026-06-19 11:07:24,145.145 INFO    ] 2026-06-19 11:07:24
[2026-06-19 11:07:24,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:07:24,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:07:24,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:07:24,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:07:24,708.708 INFO    ] time= 19/06/2026 11:07:24
[2026-06-19 11:07:24,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:07:24,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:07:24,858.858 INFO    ] No existing commands found in stream
[2026-06-19 11:07:29,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:07:29,880.880 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 11:07:32,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:07:32,914.914 INFO    ] Checking for system updates...
[2026-06-19 11:07:32,951.951 INFO    ] 200
[2026-06-19 11:07:32,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:33,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:07:33,018.018 INFO    ] No update needed
[2026-06-19 11:07:33,021.021 INFO    ] Checking for camera pi updates...
[2026-06-19 11:07:33,056.056 INFO    ] 200
[2026-06-19 11:07:33,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:33,100.100 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:07:33,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:07:33,161.161 INFO    ] No camera update needed
[2026-06-19 11:07:33,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:07:33,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:07:33,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:07:33,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:07:35,218.218 INFO    ] ================================================
[2026-06-19 11:07:35,235.235 INFO    ] Launching Daemon at Fri Jun 19 11:07:35 IST 2026
[2026-06-19 11:07:35,245.245 INFO    ] ================================================
[2026-06-19 11:07:35,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:07:35
[2026-06-19 11:07:36,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:07:36,882.882 INFO    ] Initializing speech engine...
[2026-06-19 11:07:36,893.893 INFO    ] 2026-06-19 11:07:36
[2026-06-19 11:07:37,184.184 INFO    ] 2026-06-19 11:07:37
[2026-06-19 11:07:37,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:07:37,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:07:37,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:07:37,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:07:37,734.734 INFO    ] time= 19/06/2026 11:07:37
[2026-06-19 11:07:37,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:07:37,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:07:37,902.902 INFO    ] No existing commands found in stream
[2026-06-19 11:07:42,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:07:42,937.937 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 11:07:46,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:07:46,479.479 INFO    ] Checking for system updates...
[2026-06-19 11:07:46,517.517 INFO    ] 200
[2026-06-19 11:07:46,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:46,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:07:46,584.584 INFO    ] No update needed
[2026-06-19 11:07:46,587.587 INFO    ] Checking for camera pi updates...
[2026-06-19 11:07:46,626.626 INFO    ] 200
[2026-06-19 11:07:46,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:46,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:07:46,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:07:46,710.710 INFO    ] No camera update needed
[2026-06-19 11:07:46,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:07:46,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:07:46,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:07:46,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:07:48,769.769 INFO    ] ================================================
[2026-06-19 11:07:48,784.784 INFO    ] Launching Daemon at Fri Jun 19 11:07:48 IST 2026
[2026-06-19 11:07:48,795.795 INFO    ] ================================================
[2026-06-19 11:07:49,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:07:49
[2026-06-19 11:07:50,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:07:50,434.434 INFO    ] Initializing speech engine...
[2026-06-19 11:07:50,443.443 INFO    ] 2026-06-19 11:07:50
[2026-06-19 11:07:50,714.714 INFO    ] 2026-06-19 11:07:50
[2026-06-19 11:07:50,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:07:51,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:07:51,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:07:51,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:07:51,207.207 INFO    ] time= 19/06/2026 11:07:51
[2026-06-19 11:07:51,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:07:51,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:07:51,414.414 INFO    ] No existing commands found in stream
[2026-06-19 11:07:56,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:07:56,445.445 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 11:07:57,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:07:57,205.205 INFO    ] Checking for system updates...
[2026-06-19 11:07:57,245.245 INFO    ] 200
[2026-06-19 11:07:57,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:57,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:07:57,309.309 INFO    ] No update needed
[2026-06-19 11:07:57,312.312 INFO    ] Checking for camera pi updates...
[2026-06-19 11:07:57,347.347 INFO    ] 200
[2026-06-19 11:07:57,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:07:57,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:07:57,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:07:57,437.437 INFO    ] No camera update needed
[2026-06-19 11:07:57,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:07:57,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:07:57,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:07:57,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:07:59,492.492 INFO    ] ================================================
[2026-06-19 11:07:59,508.508 INFO    ] Launching Daemon at Fri Jun 19 11:07:59 IST 2026
[2026-06-19 11:07:59,519.519 INFO    ] ================================================
[2026-06-19 11:08:00,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:08:00
[2026-06-19 11:08:00,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:08:01,061.061 INFO    ] Initializing speech engine...
[2026-06-19 11:08:01,069.069 INFO    ] 2026-06-19 11:08:01
[2026-06-19 11:08:01,359.359 INFO    ] 2026-06-19 11:08:01
[2026-06-19 11:08:01,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:08:01,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:08:01,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:08:01,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:08:01,826.826 INFO    ] time= 19/06/2026 11:08:01
[2026-06-19 11:08:01,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:08:01,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:08:01,997.997 INFO    ] No existing commands found in stream
[2026-06-19 11:08:07,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:08:07,020.020 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 11:08:09,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:08:09,311.311 INFO    ] Checking for system updates...
[2026-06-19 11:08:09,347.347 INFO    ] 200
[2026-06-19 11:08:09,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:09,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:08:09,405.405 INFO    ] No update needed
[2026-06-19 11:08:09,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 11:08:09,441.441 INFO    ] 200
[2026-06-19 11:08:09,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:09,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:08:09,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:08:09,530.530 INFO    ] No camera update needed
[2026-06-19 11:08:09,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:08:09,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:08:09,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:08:09,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:08:11,587.587 INFO    ] ================================================
[2026-06-19 11:08:11,602.602 INFO    ] Launching Daemon at Fri Jun 19 11:08:11 IST 2026
[2026-06-19 11:08:11,613.613 INFO    ] ================================================
[2026-06-19 11:08:12,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:08:12
[2026-06-19 11:08:12,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:08:13,031.031 INFO    ] Initializing speech engine...
[2026-06-19 11:08:13,039.039 INFO    ] 2026-06-19 11:08:13
[2026-06-19 11:08:13,335.335 INFO    ] 2026-06-19 11:08:13
[2026-06-19 11:08:13,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:08:13,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:08:13,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:08:13,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:08:13,757.757 INFO    ] time= 19/06/2026 11:08:13
[2026-06-19 11:08:13,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:08:13,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:08:13,845.845 INFO    ] No existing commands found in stream
[2026-06-19 11:08:18,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:08:18,862.862 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 11:08:19,338.338 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:08:19,341.341 INFO    ] Checking for system updates...
[2026-06-19 11:08:19,377.377 INFO    ] 200
[2026-06-19 11:08:19,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:19,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:08:19,443.443 INFO    ] No update needed
[2026-06-19 11:08:19,446.446 INFO    ] Checking for camera pi updates...
[2026-06-19 11:08:19,481.481 INFO    ] 200
[2026-06-19 11:08:19,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:19,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:08:19,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:08:19,573.573 INFO    ] No camera update needed
[2026-06-19 11:08:19,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:08:19,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:08:19,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:08:19,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:08:21,630.630 INFO    ] ================================================
[2026-06-19 11:08:21,645.645 INFO    ] Launching Daemon at Fri Jun 19 11:08:21 IST 2026
[2026-06-19 11:08:21,656.656 INFO    ] ================================================
[2026-06-19 11:08:22,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:08:22
[2026-06-19 11:08:22,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:08:23,184.184 INFO    ] Initializing speech engine...
[2026-06-19 11:08:23,197.197 INFO    ] 2026-06-19 11:08:23
[2026-06-19 11:08:23,463.463 INFO    ] 2026-06-19 11:08:23
[2026-06-19 11:08:23,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:08:23,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:08:23,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:08:23,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:08:23,942.942 INFO    ] time= 19/06/2026 11:08:23
[2026-06-19 11:08:24,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:08:24,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:08:24,181.181 INFO    ] No existing commands found in stream
[2026-06-19 11:08:29,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:08:29,204.204 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 11:08:30,197.197 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:08:30,200.200 INFO    ] Checking for system updates...
[2026-06-19 11:08:30,240.240 INFO    ] 200
[2026-06-19 11:08:30,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:30,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:08:30,298.298 INFO    ] No update needed
[2026-06-19 11:08:30,301.301 INFO    ] Checking for camera pi updates...
[2026-06-19 11:08:30,338.338 INFO    ] 200
[2026-06-19 11:08:30,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:30,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:08:30,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:08:30,425.425 INFO    ] No camera update needed
[2026-06-19 11:08:30,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:08:30,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:08:30,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:08:30,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:08:32,481.481 INFO    ] ================================================
[2026-06-19 11:08:32,496.496 INFO    ] Launching Daemon at Fri Jun 19 11:08:32 IST 2026
[2026-06-19 11:08:32,506.506 INFO    ] ================================================
[2026-06-19 11:08:33,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:08:33
[2026-06-19 11:08:33,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:08:33,990.990 INFO    ] Initializing speech engine...
[2026-06-19 11:08:34,013.013 INFO    ] 2026-06-19 11:08:33
[2026-06-19 11:08:34,272.272 INFO    ] 2026-06-19 11:08:34
[2026-06-19 11:08:34,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:08:34,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:08:34,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:08:34,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:08:34,749.749 INFO    ] time= 19/06/2026 11:08:34
[2026-06-19 11:08:34,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:08:34,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:08:35,000.000 INFO    ] No existing commands found in stream
[2026-06-19 11:08:40,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:08:40,017.017 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 11:08:41,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:08:41,448.448 INFO    ] Checking for system updates...
[2026-06-19 11:08:41,484.484 INFO    ] 200
[2026-06-19 11:08:41,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:41,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:08:41,542.542 INFO    ] No update needed
[2026-06-19 11:08:41,544.544 INFO    ] Checking for camera pi updates...
[2026-06-19 11:08:41,578.578 INFO    ] 200
[2026-06-19 11:08:41,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:41,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:08:41,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:08:41,668.668 INFO    ] No camera update needed
[2026-06-19 11:08:41,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:08:41,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:08:41,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:08:41,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:08:43,727.727 INFO    ] ================================================
[2026-06-19 11:08:43,743.743 INFO    ] Launching Daemon at Fri Jun 19 11:08:43 IST 2026
[2026-06-19 11:08:43,755.755 INFO    ] ================================================
[2026-06-19 11:08:44,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:08:44
[2026-06-19 11:08:45,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:08:45,392.392 INFO    ] Initializing speech engine...
[2026-06-19 11:08:45,399.399 INFO    ] 2026-06-19 11:08:45
[2026-06-19 11:08:45,691.691 INFO    ] 2026-06-19 11:08:45
[2026-06-19 11:08:45,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:08:46,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:08:46,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:08:46,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:08:46,231.231 INFO    ] time= 19/06/2026 11:08:46
[2026-06-19 11:08:46,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:08:46,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:08:46,387.387 INFO    ] No existing commands found in stream
[2026-06-19 11:08:51,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:08:51,406.406 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 11:08:53,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:08:53,450.450 INFO    ] Checking for system updates...
[2026-06-19 11:08:53,487.487 INFO    ] 200
[2026-06-19 11:08:53,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:53,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:08:53,545.545 INFO    ] No update needed
[2026-06-19 11:08:53,547.547 INFO    ] Checking for camera pi updates...
[2026-06-19 11:08:53,581.581 INFO    ] 200
[2026-06-19 11:08:53,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:08:53,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:08:53,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:08:53,671.671 INFO    ] No camera update needed
[2026-06-19 11:08:53,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:08:53,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:08:53,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:08:53,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:08:55,727.727 INFO    ] ================================================
[2026-06-19 11:08:55,743.743 INFO    ] Launching Daemon at Fri Jun 19 11:08:55 IST 2026
[2026-06-19 11:08:55,754.754 INFO    ] ================================================
[2026-06-19 11:08:56,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:08:56
[2026-06-19 11:08:57,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:08:57,375.375 INFO    ] Initializing speech engine...
[2026-06-19 11:08:57,384.384 INFO    ] 2026-06-19 11:08:57
[2026-06-19 11:08:57,675.675 INFO    ] 2026-06-19 11:08:57
[2026-06-19 11:08:57,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:08:57,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:08:57,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:08:58,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:08:58,225.225 INFO    ] time= 19/06/2026 11:08:58
[2026-06-19 11:08:58,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:08:58,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:08:58,397.397 INFO    ] No existing commands found in stream
[2026-06-19 11:09:03,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:09:03,422.422 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 11:09:06,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:09:06,816.816 INFO    ] Checking for system updates...
[2026-06-19 11:09:06,863.863 INFO    ] 200
[2026-06-19 11:09:06,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:06,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:09:06,928.928 INFO    ] No update needed
[2026-06-19 11:09:06,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 11:09:06,964.964 INFO    ] 200
[2026-06-19 11:09:06,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:07,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:09:07,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:09:07,052.052 INFO    ] No camera update needed
[2026-06-19 11:09:07,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:09:07,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:09:07,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:09:07,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:09:09,110.110 INFO    ] ================================================
[2026-06-19 11:09:09,125.125 INFO    ] Launching Daemon at Fri Jun 19 11:09:09 IST 2026
[2026-06-19 11:09:09,137.137 INFO    ] ================================================
[2026-06-19 11:09:09,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:09:09
[2026-06-19 11:09:10,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:09:10,568.568 INFO    ] Initializing speech engine...
[2026-06-19 11:09:10,578.578 INFO    ] 2026-06-19 11:09:10
[2026-06-19 11:09:10,824.824 INFO    ] 2026-06-19 11:09:10
[2026-06-19 11:09:10,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:09:11,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:09:11,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:09:11,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:09:11,303.303 INFO    ] time= 19/06/2026 11:09:11
[2026-06-19 11:09:11,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:09:11,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:09:11,516.516 INFO    ] No existing commands found in stream
[2026-06-19 11:09:16,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:09:16,543.543 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 11:09:19,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:09:19,899.899 INFO    ] Checking for system updates...
[2026-06-19 11:09:19,936.936 INFO    ] 200
[2026-06-19 11:09:19,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:19,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:09:19,996.996 INFO    ] No update needed
[2026-06-19 11:09:19,999.999 INFO    ] Checking for camera pi updates...
[2026-06-19 11:09:20,034.034 INFO    ] 200
[2026-06-19 11:09:20,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:20,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:09:20,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:09:20,230.230 INFO    ] No camera update needed
[2026-06-19 11:09:20,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:09:20,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:09:20,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:09:20,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:09:22,289.289 INFO    ] ================================================
[2026-06-19 11:09:22,305.305 INFO    ] Launching Daemon at Fri Jun 19 11:09:22 IST 2026
[2026-06-19 11:09:22,315.315 INFO    ] ================================================
[2026-06-19 11:09:22,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:09:22
[2026-06-19 11:09:23,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:09:23,962.962 INFO    ] Initializing speech engine...
[2026-06-19 11:09:23,971.971 INFO    ] 2026-06-19 11:09:23
[2026-06-19 11:09:24,242.242 INFO    ] 2026-06-19 11:09:24
[2026-06-19 11:09:24,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:09:24,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:09:24,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:09:24,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:09:24,807.807 INFO    ] time= 19/06/2026 11:09:24
[2026-06-19 11:09:24,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:09:24,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:09:24,962.962 INFO    ] No existing commands found in stream
[2026-06-19 11:09:29,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:09:29,983.983 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 11:09:32,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:09:32,159.159 INFO    ] Checking for system updates...
[2026-06-19 11:09:32,199.199 INFO    ] 200
[2026-06-19 11:09:32,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:32,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:09:32,262.262 INFO    ] No update needed
[2026-06-19 11:09:32,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 11:09:32,307.307 INFO    ] 200
[2026-06-19 11:09:32,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:32,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:09:32,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:09:32,405.405 INFO    ] No camera update needed
[2026-06-19 11:09:32,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:09:32,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:09:32,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:09:32,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:09:34,470.470 INFO    ] ================================================
[2026-06-19 11:09:34,485.485 INFO    ] Launching Daemon at Fri Jun 19 11:09:34 IST 2026
[2026-06-19 11:09:34,497.497 INFO    ] ================================================
[2026-06-19 11:09:35,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:09:35
[2026-06-19 11:09:35,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:09:36,117.117 INFO    ] Initializing speech engine...
[2026-06-19 11:09:36,125.125 INFO    ] 2026-06-19 11:09:36
[2026-06-19 11:09:36,402.402 INFO    ] 2026-06-19 11:09:36
[2026-06-19 11:09:36,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:09:36,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:09:36,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:09:36,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:09:36,986.986 INFO    ] time= 19/06/2026 11:09:36
[2026-06-19 11:09:37,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:09:37,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:09:37,294.294 INFO    ] No existing commands found in stream
[2026-06-19 11:09:42,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:09:42,329.329 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 11:09:43,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:09:43,048.048 INFO    ] Checking for system updates...
[2026-06-19 11:09:43,085.085 INFO    ] 200
[2026-06-19 11:09:43,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:43,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:09:43,146.146 INFO    ] No update needed
[2026-06-19 11:09:43,149.149 INFO    ] Checking for camera pi updates...
[2026-06-19 11:09:43,187.187 INFO    ] 200
[2026-06-19 11:09:43,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:43,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:09:43,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:09:43,267.267 INFO    ] No camera update needed
[2026-06-19 11:09:43,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:09:43,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:09:43,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:09:43,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:09:45,327.327 INFO    ] ================================================
[2026-06-19 11:09:45,343.343 INFO    ] Launching Daemon at Fri Jun 19 11:09:45 IST 2026
[2026-06-19 11:09:45,354.354 INFO    ] ================================================
[2026-06-19 11:09:45,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:09:45
[2026-06-19 11:09:46,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:09:46,810.810 INFO    ] Initializing speech engine...
[2026-06-19 11:09:46,816.816 INFO    ] 2026-06-19 11:09:46
[2026-06-19 11:09:47,078.078 INFO    ] 2026-06-19 11:09:47
[2026-06-19 11:09:47,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:09:47,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:09:47,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:09:47,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:09:47,620.620 INFO    ] time= 19/06/2026 11:09:47
[2026-06-19 11:09:47,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:09:47,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:09:47,775.775 INFO    ] No existing commands found in stream
[2026-06-19 11:09:52,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:09:52,790.790 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 11:09:54,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:09:54,607.607 INFO    ] Checking for system updates...
[2026-06-19 11:09:54,648.648 INFO    ] 200
[2026-06-19 11:09:54,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:54,704.704 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:09:54,707.707 INFO    ] No update needed
[2026-06-19 11:09:54,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 11:09:54,745.745 INFO    ] 200
[2026-06-19 11:09:54,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:09:54,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:09:54,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:09:54,832.832 INFO    ] No camera update needed
[2026-06-19 11:09:54,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:09:54,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:09:54,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:09:54,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:09:56,888.888 INFO    ] ================================================
[2026-06-19 11:09:56,903.903 INFO    ] Launching Daemon at Fri Jun 19 11:09:56 IST 2026
[2026-06-19 11:09:56,914.914 INFO    ] ================================================
[2026-06-19 11:09:57,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:09:57
[2026-06-19 11:09:58,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:09:58,407.407 INFO    ] Initializing speech engine...
[2026-06-19 11:09:58,415.415 INFO    ] 2026-06-19 11:09:58
[2026-06-19 11:09:58,675.675 INFO    ] 2026-06-19 11:09:58
[2026-06-19 11:09:58,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:09:58,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:09:58,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:09:59,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:09:59,185.185 INFO    ] time= 19/06/2026 11:09:59
[2026-06-19 11:09:59,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:09:59,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:09:59,357.357 INFO    ] No existing commands found in stream
[2026-06-19 11:10:04,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:10:04,385.385 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 11:10:08,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:10:08,724.724 INFO    ] Checking for system updates...
[2026-06-19 11:10:08,761.761 INFO    ] 200
[2026-06-19 11:10:08,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:08,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:10:08,824.824 INFO    ] No update needed
[2026-06-19 11:10:08,827.827 INFO    ] Checking for camera pi updates...
[2026-06-19 11:10:08,861.861 INFO    ] 200
[2026-06-19 11:10:08,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:08,905.905 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:10:08,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:10:08,951.951 INFO    ] No camera update needed
[2026-06-19 11:10:08,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:10:08,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:10:08,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:10:08,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:10:11,008.008 INFO    ] ================================================
[2026-06-19 11:10:11,024.024 INFO    ] Launching Daemon at Fri Jun 19 11:10:11 IST 2026
[2026-06-19 11:10:11,035.035 INFO    ] ================================================
[2026-06-19 11:10:11,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:10:11
[2026-06-19 11:10:12,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:10:12,615.615 INFO    ] Initializing speech engine...
[2026-06-19 11:10:12,624.624 INFO    ] 2026-06-19 11:10:12
[2026-06-19 11:10:12,881.881 INFO    ] 2026-06-19 11:10:12
[2026-06-19 11:10:12,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:10:13,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:10:13,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:10:13,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:10:13,346.346 INFO    ] time= 19/06/2026 11:10:13
[2026-06-19 11:10:13,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:10:13,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:10:13,579.579 INFO    ] No existing commands found in stream
[2026-06-19 11:10:18,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:10:18,596.596 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 11:10:20,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:10:20,322.322 INFO    ] Checking for system updates...
[2026-06-19 11:10:20,358.358 INFO    ] 200
[2026-06-19 11:10:20,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:20,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:10:20,417.417 INFO    ] No update needed
[2026-06-19 11:10:20,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 11:10:20,453.453 INFO    ] 200
[2026-06-19 11:10:20,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:20,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:10:20,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:10:20,545.545 INFO    ] No camera update needed
[2026-06-19 11:10:20,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:10:20,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:10:20,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:10:20,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:10:22,601.601 INFO    ] ================================================
[2026-06-19 11:10:22,617.617 INFO    ] Launching Daemon at Fri Jun 19 11:10:22 IST 2026
[2026-06-19 11:10:22,628.628 INFO    ] ================================================
[2026-06-19 11:10:23,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:10:23
[2026-06-19 11:10:23,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:10:24,237.237 INFO    ] Initializing speech engine...
[2026-06-19 11:10:24,244.244 INFO    ] 2026-06-19 11:10:24
[2026-06-19 11:10:24,531.531 INFO    ] 2026-06-19 11:10:24
[2026-06-19 11:10:24,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:10:24,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:10:24,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:10:25,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:10:25,072.072 INFO    ] time= 19/06/2026 11:10:25
[2026-06-19 11:10:25,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:10:25,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:10:25,266.266 INFO    ] No existing commands found in stream
[2026-06-19 11:10:30,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:10:30,301.301 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 11:10:33,610.610 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:10:33,613.613 INFO    ] Checking for system updates...
[2026-06-19 11:10:33,654.654 INFO    ] 200
[2026-06-19 11:10:33,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:33,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:10:33,719.719 INFO    ] No update needed
[2026-06-19 11:10:33,721.721 INFO    ] Checking for camera pi updates...
[2026-06-19 11:10:33,755.755 INFO    ] 200
[2026-06-19 11:10:33,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:33,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:10:33,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:10:33,858.858 INFO    ] No camera update needed
[2026-06-19 11:10:33,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:10:33,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:10:33,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:10:33,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:10:35,912.912 INFO    ] ================================================
[2026-06-19 11:10:35,929.929 INFO    ] Launching Daemon at Fri Jun 19 11:10:35 IST 2026
[2026-06-19 11:10:35,941.941 INFO    ] ================================================
[2026-06-19 11:10:36,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:10:36
[2026-06-19 11:10:37,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:10:37,401.401 INFO    ] Initializing speech engine...
[2026-06-19 11:10:37,411.411 INFO    ] 2026-06-19 11:10:37
[2026-06-19 11:10:37,660.660 INFO    ] 2026-06-19 11:10:37
[2026-06-19 11:10:37,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:10:37,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:10:37,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:10:38,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:10:38,218.218 INFO    ] time= 19/06/2026 11:10:38
[2026-06-19 11:10:38,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:10:38,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:10:38,385.385 INFO    ] No existing commands found in stream
[2026-06-19 11:10:43,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:10:43,418.418 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 11:10:45,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:10:45,278.278 INFO    ] Checking for system updates...
[2026-06-19 11:10:45,318.318 INFO    ] 200
[2026-06-19 11:10:45,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:45,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:10:45,378.378 INFO    ] No update needed
[2026-06-19 11:10:45,381.381 INFO    ] Checking for camera pi updates...
[2026-06-19 11:10:45,419.419 INFO    ] 200
[2026-06-19 11:10:45,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:45,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:10:45,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:10:45,502.502 INFO    ] No camera update needed
[2026-06-19 11:10:45,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:10:45,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:10:45,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:10:45,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:10:47,563.563 INFO    ] ================================================
[2026-06-19 11:10:47,578.578 INFO    ] Launching Daemon at Fri Jun 19 11:10:47 IST 2026
[2026-06-19 11:10:47,589.589 INFO    ] ================================================
[2026-06-19 11:10:48,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:10:48
[2026-06-19 11:10:48,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:10:48,986.986 INFO    ] Initializing speech engine...
[2026-06-19 11:10:48,999.999 INFO    ] 2026-06-19 11:10:48
[2026-06-19 11:10:49,260.260 INFO    ] 2026-06-19 11:10:49
[2026-06-19 11:10:49,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:10:49,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:10:49,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:10:49,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:10:49,668.668 INFO    ] time= 19/06/2026 11:10:49
[2026-06-19 11:10:49,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:10:49,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:10:49,850.850 INFO    ] No existing commands found in stream
[2026-06-19 11:10:54,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:10:54,888.888 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 11:10:57,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:10:57,884.884 INFO    ] Checking for system updates...
[2026-06-19 11:10:57,921.921 INFO    ] 200
[2026-06-19 11:10:57,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:57,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:10:57,984.984 INFO    ] No update needed
[2026-06-19 11:10:57,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 11:10:58,023.023 INFO    ] 200
[2026-06-19 11:10:58,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:10:58,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:10:58,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:10:58,108.108 INFO    ] No camera update needed
[2026-06-19 11:10:58,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:10:58,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:10:58,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:10:58,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:11:00,164.164 INFO    ] ================================================
[2026-06-19 11:11:00,180.180 INFO    ] Launching Daemon at Fri Jun 19 11:11:00 IST 2026
[2026-06-19 11:11:00,194.194 INFO    ] ================================================
[2026-06-19 11:11:00,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:11:00
[2026-06-19 11:11:01,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:11:01,945.945 INFO    ] Initializing speech engine...
[2026-06-19 11:11:01,954.954 INFO    ] 2026-06-19 11:11:01
[2026-06-19 11:11:02,340.340 INFO    ] 2026-06-19 11:11:02
[2026-06-19 11:11:02,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:11:02,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:11:02,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:11:02,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:11:02,842.842 INFO    ] time= 19/06/2026 11:11:02
[2026-06-19 11:11:02,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:11:02,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:11:03,016.016 INFO    ] No existing commands found in stream
[2026-06-19 11:11:08,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:11:08,034.034 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 11:11:10,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:11:10,222.222 INFO    ] Checking for system updates...
[2026-06-19 11:11:10,261.261 INFO    ] 200
[2026-06-19 11:11:10,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:10,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:11:10,324.324 INFO    ] No update needed
[2026-06-19 11:11:10,327.327 INFO    ] Checking for camera pi updates...
[2026-06-19 11:11:10,364.364 INFO    ] 200
[2026-06-19 11:11:10,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:10,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:11:10,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:11:10,457.457 INFO    ] No camera update needed
[2026-06-19 11:11:10,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:11:10,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:11:10,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:11:10,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:11:12,514.514 INFO    ] ================================================
[2026-06-19 11:11:12,529.529 INFO    ] Launching Daemon at Fri Jun 19 11:11:12 IST 2026
[2026-06-19 11:11:12,541.541 INFO    ] ================================================
[2026-06-19 11:11:13,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:11:13
[2026-06-19 11:11:13,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:11:14,146.146 INFO    ] Initializing speech engine...
[2026-06-19 11:11:14,158.158 INFO    ] 2026-06-19 11:11:14
[2026-06-19 11:11:14,440.440 INFO    ] 2026-06-19 11:11:14
[2026-06-19 11:11:14,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:11:14,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:11:14,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:11:14,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:11:14,929.929 INFO    ] time= 19/06/2026 11:11:14
[2026-06-19 11:11:14,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:11:15,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:11:15,129.129 INFO    ] No existing commands found in stream
[2026-06-19 11:11:20,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:11:20,161.161 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 11:11:22,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:11:22,072.072 INFO    ] Checking for system updates...
[2026-06-19 11:11:22,114.114 INFO    ] 200
[2026-06-19 11:11:22,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:22,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:11:22,185.185 INFO    ] No update needed
[2026-06-19 11:11:22,188.188 INFO    ] Checking for camera pi updates...
[2026-06-19 11:11:22,223.223 INFO    ] 200
[2026-06-19 11:11:22,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:22,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:11:22,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:11:22,419.419 INFO    ] No camera update needed
[2026-06-19 11:11:22,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:11:22,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:11:22,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:11:22,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:11:24,478.478 INFO    ] ================================================
[2026-06-19 11:11:24,493.493 INFO    ] Launching Daemon at Fri Jun 19 11:11:24 IST 2026
[2026-06-19 11:11:24,504.504 INFO    ] ================================================
[2026-06-19 11:11:25,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:11:25
[2026-06-19 11:11:25,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:11:26,130.130 INFO    ] Initializing speech engine...
[2026-06-19 11:11:26,140.140 INFO    ] 2026-06-19 11:11:26
[2026-06-19 11:11:26,420.420 INFO    ] 2026-06-19 11:11:26
[2026-06-19 11:11:26,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:11:26,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:11:26,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:11:26,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:11:26,957.957 INFO    ] time= 19/06/2026 11:11:26
[2026-06-19 11:11:26,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:11:27,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:11:27,111.111 INFO    ] No existing commands found in stream
[2026-06-19 11:11:32,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:11:32,128.128 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 11:11:34,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:11:34,250.250 INFO    ] Checking for system updates...
[2026-06-19 11:11:34,290.290 INFO    ] 200
[2026-06-19 11:11:34,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:34,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:11:34,354.354 INFO    ] No update needed
[2026-06-19 11:11:34,356.356 INFO    ] Checking for camera pi updates...
[2026-06-19 11:11:34,391.391 INFO    ] 200
[2026-06-19 11:11:34,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:34,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:11:34,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:11:34,474.474 INFO    ] No camera update needed
[2026-06-19 11:11:34,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:11:34,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:11:34,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:11:34,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:11:36,528.528 INFO    ] ================================================
[2026-06-19 11:11:36,543.543 INFO    ] Launching Daemon at Fri Jun 19 11:11:36 IST 2026
[2026-06-19 11:11:36,554.554 INFO    ] ================================================
[2026-06-19 11:11:37,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:11:37
[2026-06-19 11:11:37,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:11:38,008.008 INFO    ] Initializing speech engine...
[2026-06-19 11:11:38,022.022 INFO    ] 2026-06-19 11:11:38
[2026-06-19 11:11:38,315.315 INFO    ] 2026-06-19 11:11:38
[2026-06-19 11:11:38,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:11:38,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:11:38,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:11:38,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:11:38,747.747 INFO    ] time= 19/06/2026 11:11:38
[2026-06-19 11:11:38,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:11:38,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:11:38,834.834 INFO    ] No existing commands found in stream
[2026-06-19 11:11:43,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:11:43,850.850 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 11:11:46,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:11:46,743.743 INFO    ] Checking for system updates...
[2026-06-19 11:11:46,779.779 INFO    ] 200
[2026-06-19 11:11:46,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:46,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:11:46,846.846 INFO    ] No update needed
[2026-06-19 11:11:46,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 11:11:46,888.888 INFO    ] 200
[2026-06-19 11:11:46,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:46,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:11:46,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:11:46,966.966 INFO    ] No camera update needed
[2026-06-19 11:11:46,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:11:46,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:11:46,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:11:46,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:11:49,021.021 INFO    ] ================================================
[2026-06-19 11:11:49,037.037 INFO    ] Launching Daemon at Fri Jun 19 11:11:49 IST 2026
[2026-06-19 11:11:49,048.048 INFO    ] ================================================
[2026-06-19 11:11:49,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:11:49
[2026-06-19 11:11:50,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:11:50,721.721 INFO    ] Initializing speech engine...
[2026-06-19 11:11:50,734.734 INFO    ] 2026-06-19 11:11:50
[2026-06-19 11:11:51,018.018 INFO    ] 2026-06-19 11:11:51
[2026-06-19 11:11:51,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:11:51,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:11:51,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:11:51,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:11:51,560.560 INFO    ] time= 19/06/2026 11:11:51
[2026-06-19 11:11:51,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:11:51,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:11:51,736.736 INFO    ] No existing commands found in stream
[2026-06-19 11:11:56,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:11:56,770.770 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 11:11:59,221.221 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:11:59,224.224 INFO    ] Checking for system updates...
[2026-06-19 11:11:59,266.266 INFO    ] 200
[2026-06-19 11:11:59,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:59,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:11:59,323.323 INFO    ] No update needed
[2026-06-19 11:11:59,326.326 INFO    ] Checking for camera pi updates...
[2026-06-19 11:11:59,360.360 INFO    ] 200
[2026-06-19 11:11:59,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:11:59,403.403 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:11:59,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:11:59,450.450 INFO    ] No camera update needed
[2026-06-19 11:11:59,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:11:59,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:11:59,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:11:59,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:12:01,533.533 INFO    ] ================================================
[2026-06-19 11:12:01,579.579 INFO    ] Launching Daemon at Fri Jun 19 11:12:01 IST 2026
[2026-06-19 11:12:01,598.598 INFO    ] ================================================
[2026-06-19 11:12:02,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:12:02
[2026-06-19 11:12:03,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:12:03,513.513 INFO    ] Initializing speech engine...
[2026-06-19 11:12:03,521.521 INFO    ] 2026-06-19 11:12:03
[2026-06-19 11:12:03,806.806 INFO    ] 2026-06-19 11:12:03
[2026-06-19 11:12:03,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:12:04,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:12:04,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:12:04,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:12:04,297.297 INFO    ] time= 19/06/2026 11:12:04
[2026-06-19 11:12:04,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:12:04,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:12:04,497.497 INFO    ] No existing commands found in stream
[2026-06-19 11:12:09,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:12:09,527.527 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 11:12:11,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:12:11,997.997 INFO    ] Checking for system updates...
[2026-06-19 11:12:12,038.038 INFO    ] 200
[2026-06-19 11:12:12,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:12:12,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:12:12,097.097 INFO    ] No update needed
[2026-06-19 11:12:12,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 11:12:12,134.134 INFO    ] 200
[2026-06-19 11:12:12,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:12:12,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:12:12,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:12:12,221.221 INFO    ] No camera update needed
[2026-06-19 11:12:12,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:12:12,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:12:12,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:12:12,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:12:14,276.276 INFO    ] ================================================
[2026-06-19 11:12:14,291.291 INFO    ] Launching Daemon at Fri Jun 19 11:12:14 IST 2026
[2026-06-19 11:12:14,301.301 INFO    ] ================================================
[2026-06-19 11:12:14,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:12:14
[2026-06-19 11:12:15,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:12:15,707.707 INFO    ] Initializing speech engine...
[2026-06-19 11:12:15,721.721 INFO    ] 2026-06-19 11:12:15
[2026-06-19 11:12:15,985.985 INFO    ] 2026-06-19 11:12:15
[2026-06-19 11:12:16,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:12:16,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:12:16,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:12:16,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:12:16,476.476 INFO    ] time= 19/06/2026 11:12:16
[2026-06-19 11:12:16,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:12:16,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:12:16,669.669 INFO    ] No existing commands found in stream
[2026-06-19 11:12:21,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:12:21,698.698 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 11:12:22,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:12:22,410.410 INFO    ] Checking for system updates...
[2026-06-19 11:12:22,453.453 INFO    ] 200
[2026-06-19 11:12:22,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:12:22,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:12:22,516.516 INFO    ] No update needed
[2026-06-19 11:12:22,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 11:12:22,558.558 INFO    ] 200
[2026-06-19 11:12:22,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:12:22,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:12:22,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:12:22,658.658 INFO    ] No camera update needed
[2026-06-19 11:12:22,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:12:22,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:12:22,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:12:22,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:12:24,713.713 INFO    ] ================================================
[2026-06-19 11:12:24,728.728 INFO    ] Launching Daemon at Fri Jun 19 11:12:24 IST 2026
[2026-06-19 11:12:24,739.739 INFO    ] ================================================
[2026-06-19 11:12:25,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:12:25
[2026-06-19 11:12:26,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:12:26,292.292 INFO    ] Initializing speech engine...
[2026-06-19 11:12:26,299.299 INFO    ] 2026-06-19 11:12:26
[2026-06-19 11:12:26,554.554 INFO    ] 2026-06-19 11:12:26
[2026-06-19 11:12:26,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:12:26,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:12:26,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:12:26,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:12:27,044.044 INFO    ] time= 19/06/2026 11:12:26
[2026-06-19 11:12:27,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:12:27,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:12:27,253.253 INFO    ] No existing commands found in stream
[2026-06-19 11:12:32,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:12:32,270.270 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 11:12:35,898.898 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:12:35,900.900 INFO    ] Checking for system updates...
[2026-06-19 11:12:35,936.936 INFO    ] 200
[2026-06-19 11:12:35,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:12:35,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:12:35,993.993 INFO    ] No update needed
[2026-06-19 11:12:35,996.996 INFO    ] Checking for camera pi updates...
[2026-06-19 11:12:36,030.030 INFO    ] 200
[2026-06-19 11:12:36,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:12:36,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:12:36,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:12:36,114.114 INFO    ] No camera update needed
[2026-06-19 11:12:36,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:12:36,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:12:36,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:12:36,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:12:38,170.170 INFO    ] ================================================
[2026-06-19 11:12:38,186.186 INFO    ] Launching Daemon at Fri Jun 19 11:12:38 IST 2026
[2026-06-19 11:12:38,196.196 INFO    ] ================================================
[2026-06-19 11:12:38,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:12:38
[2026-06-19 11:12:39,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:12:39,803.803 INFO    ] Initializing speech engine...
[2026-06-19 11:12:39,815.815 INFO    ] 2026-06-19 11:12:39
[2026-06-19 11:12:40,096.096 INFO    ] 2026-06-19 11:12:40
[2026-06-19 11:12:40,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:12:40,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:12:40,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:12:40,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:12:40,633.633 INFO    ] time= 19/06/2026 11:12:40
[2026-06-19 11:12:40,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:12:40,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:12:40,788.788 INFO    ] No existing commands found in stream
[2026-06-19 11:12:45,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:12:45,812.812 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 11:12:46,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:12:46,864.864 INFO    ] Checking for system updates...
[2026-06-19 11:12:46,906.906 INFO    ] 200
[2026-06-19 11:12:46,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:12:46,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:12:46,973.973 INFO    ] No update needed
[2026-06-19 11:12:46,976.976 INFO    ] Checking for camera pi updates...
[2026-06-19 11:12:47,012.012 INFO    ] 200
[2026-06-19 11:12:47,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:12:47,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:12:47,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:12:47,093.093 INFO    ] No camera update needed
[2026-06-19 11:12:47,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:12:47,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:12:47,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:12:47,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:12:49,148.148 INFO    ] ================================================
[2026-06-19 11:12:49,164.164 INFO    ] Launching Daemon at Fri Jun 19 11:12:49 IST 2026
[2026-06-19 11:12:49,174.174 INFO    ] ================================================
[2026-06-19 11:12:49,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:12:49
[2026-06-19 11:12:50,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:12:50,841.841 INFO    ] Initializing speech engine...
[2026-06-19 11:12:50,855.855 INFO    ] 2026-06-19 11:12:50
[2026-06-19 11:12:51,166.166 INFO    ] 2026-06-19 11:12:51
[2026-06-19 11:12:51,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:12:51,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:12:51,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:12:51,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:12:51,680.680 INFO    ] time= 19/06/2026 11:12:51
[2026-06-19 11:12:51,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:12:51,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:12:51,891.891 INFO    ] No existing commands found in stream
[2026-06-19 11:12:56,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:12:56,926.926 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 11:13:01,135.135 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:13:01,138.138 INFO    ] Checking for system updates...
[2026-06-19 11:13:01,179.179 INFO    ] 200
[2026-06-19 11:13:01,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:01,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:13:01,245.245 INFO    ] No update needed
[2026-06-19 11:13:01,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 11:13:01,284.284 INFO    ] 200
[2026-06-19 11:13:01,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:01,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:13:01,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:13:01,361.361 INFO    ] No camera update needed
[2026-06-19 11:13:01,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:13:01,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:13:01,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:13:01,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:13:03,422.422 INFO    ] ================================================
[2026-06-19 11:13:03,437.437 INFO    ] Launching Daemon at Fri Jun 19 11:13:03 IST 2026
[2026-06-19 11:13:03,447.447 INFO    ] ================================================
[2026-06-19 11:13:04,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:13:04
[2026-06-19 11:13:04,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:13:04,910.910 INFO    ] Initializing speech engine...
[2026-06-19 11:13:04,921.921 INFO    ] 2026-06-19 11:13:04
[2026-06-19 11:13:05,175.175 INFO    ] 2026-06-19 11:13:05
[2026-06-19 11:13:05,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:13:05,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:13:05,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:13:05,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:13:05,654.654 INFO    ] time= 19/06/2026 11:13:05
[2026-06-19 11:13:05,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:13:05,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:13:05,871.871 INFO    ] No existing commands found in stream
[2026-06-19 11:13:10,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:13:10,891.891 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 11:13:13,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:13:13,007.007 INFO    ] Checking for system updates...
[2026-06-19 11:13:13,043.043 INFO    ] 200
[2026-06-19 11:13:13,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:13,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:13:13,101.101 INFO    ] No update needed
[2026-06-19 11:13:13,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 11:13:13,144.144 INFO    ] 200
[2026-06-19 11:13:13,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:13,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:13:13,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:13:13,242.242 INFO    ] No camera update needed
[2026-06-19 11:13:13,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:13:13,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:13:13,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:13:13,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:13:15,298.298 INFO    ] ================================================
[2026-06-19 11:13:15,313.313 INFO    ] Launching Daemon at Fri Jun 19 11:13:15 IST 2026
[2026-06-19 11:13:15,324.324 INFO    ] ================================================
[2026-06-19 11:13:15,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:13:15
[2026-06-19 11:13:16,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:13:16,723.723 INFO    ] Initializing speech engine...
[2026-06-19 11:13:16,737.737 INFO    ] 2026-06-19 11:13:16
[2026-06-19 11:13:17,001.001 INFO    ] 2026-06-19 11:13:16
[2026-06-19 11:13:17,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:13:17,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:13:17,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:13:17,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:13:17,469.469 INFO    ] time= 19/06/2026 11:13:17
[2026-06-19 11:13:17,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:13:17,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:13:17,693.693 INFO    ] No existing commands found in stream
[2026-06-19 11:13:22,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:13:22,718.718 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 11:13:25,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:13:25,364.364 INFO    ] Checking for system updates...
[2026-06-19 11:13:25,403.403 INFO    ] 200
[2026-06-19 11:13:25,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:25,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:13:25,461.461 INFO    ] No update needed
[2026-06-19 11:13:25,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 11:13:25,497.497 INFO    ] 200
[2026-06-19 11:13:25,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:25,548.548 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:13:25,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:13:25,702.702 INFO    ] No camera update needed
[2026-06-19 11:13:25,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:13:25,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:13:25,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:13:25,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:13:27,758.758 INFO    ] ================================================
[2026-06-19 11:13:27,773.773 INFO    ] Launching Daemon at Fri Jun 19 11:13:27 IST 2026
[2026-06-19 11:13:27,783.783 INFO    ] ================================================
[2026-06-19 11:13:28,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:13:28
[2026-06-19 11:13:29,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:13:29,337.337 INFO    ] Initializing speech engine...
[2026-06-19 11:13:29,347.347 INFO    ] 2026-06-19 11:13:29
[2026-06-19 11:13:29,594.594 INFO    ] 2026-06-19 11:13:29
[2026-06-19 11:13:29,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:13:29,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:13:29,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:13:30,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:13:30,151.151 INFO    ] time= 19/06/2026 11:13:30
[2026-06-19 11:13:30,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:13:30,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:13:30,303.303 INFO    ] No existing commands found in stream
[2026-06-19 11:13:35,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:13:35,321.321 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 11:13:38,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:13:38,395.395 INFO    ] Checking for system updates...
[2026-06-19 11:13:38,435.435 INFO    ] 200
[2026-06-19 11:13:38,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:38,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:13:38,493.493 INFO    ] No update needed
[2026-06-19 11:13:38,495.495 INFO    ] Checking for camera pi updates...
[2026-06-19 11:13:38,533.533 INFO    ] 200
[2026-06-19 11:13:38,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:38,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:13:38,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:13:38,630.630 INFO    ] No camera update needed
[2026-06-19 11:13:38,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:13:38,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:13:38,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:13:38,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:13:40,687.687 INFO    ] ================================================
[2026-06-19 11:13:40,702.702 INFO    ] Launching Daemon at Fri Jun 19 11:13:40 IST 2026
[2026-06-19 11:13:40,713.713 INFO    ] ================================================
[2026-06-19 11:13:41,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:13:41
[2026-06-19 11:13:42,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:13:42,340.340 INFO    ] Initializing speech engine...
[2026-06-19 11:13:42,353.353 INFO    ] 2026-06-19 11:13:42
[2026-06-19 11:13:42,662.662 INFO    ] 2026-06-19 11:13:42
[2026-06-19 11:13:42,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:13:42,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:13:42,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:13:43,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:13:43,171.171 INFO    ] time= 19/06/2026 11:13:43
[2026-06-19 11:13:43,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:13:43,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:13:43,358.358 INFO    ] No existing commands found in stream
[2026-06-19 11:13:48,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:13:48,392.392 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 11:13:52,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:13:52,133.133 INFO    ] Checking for system updates...
[2026-06-19 11:13:52,174.174 INFO    ] 200
[2026-06-19 11:13:52,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:52,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:13:52,236.236 INFO    ] No update needed
[2026-06-19 11:13:52,239.239 INFO    ] Checking for camera pi updates...
[2026-06-19 11:13:52,278.278 INFO    ] 200
[2026-06-19 11:13:52,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:13:52,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:13:52,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:13:52,369.369 INFO    ] No camera update needed
[2026-06-19 11:13:52,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:13:52,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:13:52,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:13:52,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:13:54,432.432 INFO    ] ================================================
[2026-06-19 11:13:54,448.448 INFO    ] Launching Daemon at Fri Jun 19 11:13:54 IST 2026
[2026-06-19 11:13:54,460.460 INFO    ] ================================================
[2026-06-19 11:13:55,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:13:55
[2026-06-19 11:13:55,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:13:55,879.879 INFO    ] Initializing speech engine...
[2026-06-19 11:13:55,888.888 INFO    ] 2026-06-19 11:13:55
[2026-06-19 11:13:56,180.180 INFO    ] 2026-06-19 11:13:56
[2026-06-19 11:13:56,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:13:56,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:13:56,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:13:56,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:13:56,677.677 INFO    ] time= 19/06/2026 11:13:56
[2026-06-19 11:13:56,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:13:56,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:13:56,832.832 INFO    ] No existing commands found in stream
[2026-06-19 11:14:01,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:14:01,858.858 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 11:14:03,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:14:03,864.864 INFO    ] Checking for system updates...
[2026-06-19 11:14:03,904.904 INFO    ] 200
[2026-06-19 11:14:03,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:03,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:14:03,969.969 INFO    ] No update needed
[2026-06-19 11:14:03,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 11:14:04,009.009 INFO    ] 200
[2026-06-19 11:14:04,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:04,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:14:04,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:14:04,093.093 INFO    ] No camera update needed
[2026-06-19 11:14:04,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:14:04,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:14:04,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:14:04,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:14:06,149.149 INFO    ] ================================================
[2026-06-19 11:14:06,165.165 INFO    ] Launching Daemon at Fri Jun 19 11:14:06 IST 2026
[2026-06-19 11:14:06,177.177 INFO    ] ================================================
[2026-06-19 11:14:06,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:14:06
[2026-06-19 11:14:07,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:14:07,651.651 INFO    ] Initializing speech engine...
[2026-06-19 11:14:07,666.666 INFO    ] 2026-06-19 11:14:07
[2026-06-19 11:14:07,945.945 INFO    ] 2026-06-19 11:14:07
[2026-06-19 11:14:07,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:14:08,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:14:08,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:14:08,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:14:08,367.367 INFO    ] time= 19/06/2026 11:14:08
[2026-06-19 11:14:08,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:14:08,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:14:08,541.541 INFO    ] No existing commands found in stream
[2026-06-19 11:14:13,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:14:13,574.574 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 11:14:17,614.614 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:14:17,617.617 INFO    ] Checking for system updates...
[2026-06-19 11:14:17,653.653 INFO    ] 200
[2026-06-19 11:14:17,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:17,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:14:17,711.711 INFO    ] No update needed
[2026-06-19 11:14:17,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 11:14:17,748.748 INFO    ] 200
[2026-06-19 11:14:17,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:17,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:14:17,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:14:17,833.833 INFO    ] No camera update needed
[2026-06-19 11:14:17,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:14:17,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:14:17,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:14:17,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:14:19,888.888 INFO    ] ================================================
[2026-06-19 11:14:19,904.904 INFO    ] Launching Daemon at Fri Jun 19 11:14:19 IST 2026
[2026-06-19 11:14:19,915.915 INFO    ] ================================================
[2026-06-19 11:14:20,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:14:20
[2026-06-19 11:14:21,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:14:21,540.540 INFO    ] Initializing speech engine...
[2026-06-19 11:14:21,551.551 INFO    ] 2026-06-19 11:14:21
[2026-06-19 11:14:21,859.859 INFO    ] 2026-06-19 11:14:21
[2026-06-19 11:14:21,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:14:22,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:14:22,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:14:22,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:14:22,366.366 INFO    ] time= 19/06/2026 11:14:22
[2026-06-19 11:14:22,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:14:22,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:14:22,546.546 INFO    ] No existing commands found in stream
[2026-06-19 11:14:27,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:14:27,580.580 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 11:14:29,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:14:29,571.571 INFO    ] Checking for system updates...
[2026-06-19 11:14:29,610.610 INFO    ] 200
[2026-06-19 11:14:29,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:29,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:14:29,669.669 INFO    ] No update needed
[2026-06-19 11:14:29,672.672 INFO    ] Checking for camera pi updates...
[2026-06-19 11:14:29,710.710 INFO    ] 200
[2026-06-19 11:14:29,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:29,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:14:29,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:14:29,802.802 INFO    ] No camera update needed
[2026-06-19 11:14:29,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:14:29,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:14:29,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:14:29,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:14:31,864.864 INFO    ] ================================================
[2026-06-19 11:14:31,881.881 INFO    ] Launching Daemon at Fri Jun 19 11:14:31 IST 2026
[2026-06-19 11:14:31,896.896 INFO    ] ================================================
[2026-06-19 11:14:32,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:14:32
[2026-06-19 11:14:33,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:14:33,424.424 INFO    ] Initializing speech engine...
[2026-06-19 11:14:33,432.432 INFO    ] 2026-06-19 11:14:33
[2026-06-19 11:14:33,717.717 INFO    ] 2026-06-19 11:14:33
[2026-06-19 11:14:33,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:14:33,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:14:33,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:14:34,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:14:34,256.256 INFO    ] time= 19/06/2026 11:14:34
[2026-06-19 11:14:34,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:14:34,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:14:34,442.442 INFO    ] No existing commands found in stream
[2026-06-19 11:14:39,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:14:39,471.471 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 11:14:43,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:14:43,130.130 INFO    ] Checking for system updates...
[2026-06-19 11:14:43,167.167 INFO    ] 200
[2026-06-19 11:14:43,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:43,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:14:43,232.232 INFO    ] No update needed
[2026-06-19 11:14:43,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 11:14:43,273.273 INFO    ] 200
[2026-06-19 11:14:43,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:43,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:14:43,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:14:43,374.374 INFO    ] No camera update needed
[2026-06-19 11:14:43,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:14:43,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:14:43,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:14:43,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:14:45,431.431 INFO    ] ================================================
[2026-06-19 11:14:45,446.446 INFO    ] Launching Daemon at Fri Jun 19 11:14:45 IST 2026
[2026-06-19 11:14:45,458.458 INFO    ] ================================================
[2026-06-19 11:14:46,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:14:46
[2026-06-19 11:14:46,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:14:47,048.048 INFO    ] Initializing speech engine...
[2026-06-19 11:14:47,056.056 INFO    ] 2026-06-19 11:14:47
[2026-06-19 11:14:47,340.340 INFO    ] 2026-06-19 11:14:47
[2026-06-19 11:14:47,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:14:47,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:14:47,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:14:47,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:14:47,875.875 INFO    ] time= 19/06/2026 11:14:47
[2026-06-19 11:14:47,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:14:47,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:14:48,084.084 INFO    ] No existing commands found in stream
[2026-06-19 11:14:53,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:14:53,118.118 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 11:14:57,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:14:57,277.277 INFO    ] Checking for system updates...
[2026-06-19 11:14:57,314.314 INFO    ] 200
[2026-06-19 11:14:57,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:57,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:14:57,376.376 INFO    ] No update needed
[2026-06-19 11:14:57,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 11:14:57,413.413 INFO    ] 200
[2026-06-19 11:14:57,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:14:57,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:14:57,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:14:57,503.503 INFO    ] No camera update needed
[2026-06-19 11:14:57,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:14:57,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:14:57,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:14:57,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:14:59,559.559 INFO    ] ================================================
[2026-06-19 11:14:59,574.574 INFO    ] Launching Daemon at Fri Jun 19 11:14:59 IST 2026
[2026-06-19 11:14:59,586.586 INFO    ] ================================================
[2026-06-19 11:15:00,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:15:00
[2026-06-19 11:15:00,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:15:01,879.879 INFO    ] Initializing speech engine...
[2026-06-19 11:15:01,882.882 INFO    ] 2026-06-19 11:15:01
[2026-06-19 11:15:02,364.364 INFO    ] 2026-06-19 11:15:02
[2026-06-19 11:15:02,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:15:02,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:15:02,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:15:02,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:15:02,843.843 INFO    ] time= 19/06/2026 11:15:02
[2026-06-19 11:15:02,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:15:02,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:15:03,038.038 INFO    ] No existing commands found in stream
[2026-06-19 11:15:08,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:15:08,076.076 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 11:15:10,416.416 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:15:10,419.419 INFO    ] Checking for system updates...
[2026-06-19 11:15:10,455.455 INFO    ] 200
[2026-06-19 11:15:10,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:10,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:15:10,513.513 INFO    ] No update needed
[2026-06-19 11:15:10,515.515 INFO    ] Checking for camera pi updates...
[2026-06-19 11:15:10,549.549 INFO    ] 200
[2026-06-19 11:15:10,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:10,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:15:10,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:15:10,639.639 INFO    ] No camera update needed
[2026-06-19 11:15:10,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:15:10,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:15:10,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:15:10,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:15:12,697.697 INFO    ] ================================================
[2026-06-19 11:15:12,712.712 INFO    ] Launching Daemon at Fri Jun 19 11:15:12 IST 2026
[2026-06-19 11:15:12,724.724 INFO    ] ================================================
[2026-06-19 11:15:13,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:15:13
[2026-06-19 11:15:13,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:15:14,178.178 INFO    ] Initializing speech engine...
[2026-06-19 11:15:14,188.188 INFO    ] 2026-06-19 11:15:14
[2026-06-19 11:15:14,484.484 INFO    ] 2026-06-19 11:15:14
[2026-06-19 11:15:14,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:15:14,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:15:14,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:15:14,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:15:14,911.911 INFO    ] time= 19/06/2026 11:15:14
[2026-06-19 11:15:14,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:15:14,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:15:15,105.105 INFO    ] No existing commands found in stream
[2026-06-19 11:15:20,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:15:20,133.133 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 11:15:23,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:15:23,212.212 INFO    ] Checking for system updates...
[2026-06-19 11:15:23,250.250 INFO    ] 200
[2026-06-19 11:15:23,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:23,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:15:23,311.311 INFO    ] No update needed
[2026-06-19 11:15:23,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 11:15:23,348.348 INFO    ] 200
[2026-06-19 11:15:23,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:23,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:15:23,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:15:23,443.443 INFO    ] No camera update needed
[2026-06-19 11:15:23,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:15:23,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:15:23,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:15:23,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:15:25,501.501 INFO    ] ================================================
[2026-06-19 11:15:25,517.517 INFO    ] Launching Daemon at Fri Jun 19 11:15:25 IST 2026
[2026-06-19 11:15:25,528.528 INFO    ] ================================================
[2026-06-19 11:15:26,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:15:26
[2026-06-19 11:15:26,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:15:26,978.978 INFO    ] Initializing speech engine...
[2026-06-19 11:15:26,987.987 INFO    ] 2026-06-19 11:15:26
[2026-06-19 11:15:27,287.287 INFO    ] 2026-06-19 11:15:27
[2026-06-19 11:15:27,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:15:27,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:15:27,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:15:27,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:15:27,705.705 INFO    ] time= 19/06/2026 11:15:27
[2026-06-19 11:15:27,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:15:27,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:15:27,848.848 INFO    ] No existing commands found in stream
[2026-06-19 11:15:32,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:15:32,877.877 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 11:15:34,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:15:34,714.714 INFO    ] Checking for system updates...
[2026-06-19 11:15:34,752.752 INFO    ] 200
[2026-06-19 11:15:34,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:34,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:15:34,812.812 INFO    ] No update needed
[2026-06-19 11:15:34,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 11:15:34,850.850 INFO    ] 200
[2026-06-19 11:15:34,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:34,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:15:34,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:15:34,955.955 INFO    ] No camera update needed
[2026-06-19 11:15:34,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:15:34,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:15:34,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:15:34,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:15:37,015.015 INFO    ] ================================================
[2026-06-19 11:15:37,031.031 INFO    ] Launching Daemon at Fri Jun 19 11:15:37 IST 2026
[2026-06-19 11:15:37,043.043 INFO    ] ================================================
[2026-06-19 11:15:37,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:15:37
[2026-06-19 11:15:38,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:15:38,469.469 INFO    ] Initializing speech engine...
[2026-06-19 11:15:38,484.484 INFO    ] 2026-06-19 11:15:38
[2026-06-19 11:15:38,774.774 INFO    ] 2026-06-19 11:15:38
[2026-06-19 11:15:38,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:15:39,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:15:39,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:15:39,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:15:39,404.404 INFO    ] time= 19/06/2026 11:15:39
[2026-06-19 11:15:39,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:15:39,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:15:39,563.563 INFO    ] No existing commands found in stream
[2026-06-19 11:15:44,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:15:44,591.591 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 11:15:48,755.755 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:15:48,758.758 INFO    ] Checking for system updates...
[2026-06-19 11:15:48,799.799 INFO    ] 200
[2026-06-19 11:15:48,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:48,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:15:48,863.863 INFO    ] No update needed
[2026-06-19 11:15:48,866.866 INFO    ] Checking for camera pi updates...
[2026-06-19 11:15:48,907.907 INFO    ] 200
[2026-06-19 11:15:48,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:48,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:15:48,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:15:48,989.989 INFO    ] No camera update needed
[2026-06-19 11:15:48,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:15:48,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:15:49,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:15:49,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:15:51,049.049 INFO    ] ================================================
[2026-06-19 11:15:51,065.065 INFO    ] Launching Daemon at Fri Jun 19 11:15:51 IST 2026
[2026-06-19 11:15:51,077.077 INFO    ] ================================================
[2026-06-19 11:15:51,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:15:51
[2026-06-19 11:15:52,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:15:52,521.521 INFO    ] Initializing speech engine...
[2026-06-19 11:15:52,527.527 INFO    ] 2026-06-19 11:15:52
[2026-06-19 11:15:52,820.820 INFO    ] 2026-06-19 11:15:52
[2026-06-19 11:15:52,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:15:53,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:15:53,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:15:53,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:15:53,233.233 INFO    ] time= 19/06/2026 11:15:53
[2026-06-19 11:15:53,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:15:53,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:15:53,325.325 INFO    ] No existing commands found in stream
[2026-06-19 11:15:58,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:15:58,343.343 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 11:15:58,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:15:58,841.841 INFO    ] Checking for system updates...
[2026-06-19 11:15:58,894.894 INFO    ] 200
[2026-06-19 11:15:58,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:58,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:15:58,953.953 INFO    ] No update needed
[2026-06-19 11:15:58,955.955 INFO    ] Checking for camera pi updates...
[2026-06-19 11:15:58,990.990 INFO    ] 200
[2026-06-19 11:15:58,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:15:59,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:15:59,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:15:59,088.088 INFO    ] No camera update needed
[2026-06-19 11:15:59,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:15:59,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:15:59,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:15:59,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:16:01,148.148 INFO    ] ================================================
[2026-06-19 11:16:01,163.163 INFO    ] Launching Daemon at Fri Jun 19 11:16:01 IST 2026
[2026-06-19 11:16:01,173.173 INFO    ] ================================================
[2026-06-19 11:16:01,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:16:01
[2026-06-19 11:16:02,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:16:02,857.857 INFO    ] Initializing speech engine...
[2026-06-19 11:16:02,878.878 INFO    ] 2026-06-19 11:16:02
[2026-06-19 11:16:03,159.159 INFO    ] 2026-06-19 11:16:03
[2026-06-19 11:16:03,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:16:03,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:16:03,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:16:03,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:16:03,646.646 INFO    ] time= 19/06/2026 11:16:03
[2026-06-19 11:16:03,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:16:03,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:16:03,839.839 INFO    ] No existing commands found in stream
[2026-06-19 11:16:08,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:16:08,865.865 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 11:16:11,243.243 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:16:11,246.246 INFO    ] Checking for system updates...
[2026-06-19 11:16:11,282.282 INFO    ] 200
[2026-06-19 11:16:11,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:16:11,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:16:11,348.348 INFO    ] No update needed
[2026-06-19 11:16:11,351.351 INFO    ] Checking for camera pi updates...
[2026-06-19 11:16:11,385.385 INFO    ] 200
[2026-06-19 11:16:11,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:16:11,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:16:11,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:16:11,477.477 INFO    ] No camera update needed
[2026-06-19 11:16:11,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:16:11,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:16:11,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:16:11,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:16:13,540.540 INFO    ] ================================================
[2026-06-19 11:16:13,581.581 INFO    ] Launching Daemon at Fri Jun 19 11:16:13 IST 2026
[2026-06-19 11:16:13,597.597 INFO    ] ================================================
[2026-06-19 11:16:14,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:16:14
[2026-06-19 11:16:14,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:16:15,096.096 INFO    ] Initializing speech engine...
[2026-06-19 11:16:15,105.105 INFO    ] 2026-06-19 11:16:15
[2026-06-19 11:16:15,365.365 INFO    ] 2026-06-19 11:16:15
[2026-06-19 11:16:15,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:16:15,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:16:15,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:16:15,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:16:15,913.913 INFO    ] time= 19/06/2026 11:16:15
[2026-06-19 11:16:15,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:16:15,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:16:16,055.055 INFO    ] No existing commands found in stream
[2026-06-19 11:16:21,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:16:21,079.079 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-19 11:16:24,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:16:24,240.240 INFO    ] Checking for system updates...
[2026-06-19 11:16:24,277.277 INFO    ] 200
[2026-06-19 11:16:24,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:16:24,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:16:24,334.334 INFO    ] No update needed
[2026-06-19 11:16:24,337.337 INFO    ] Checking for camera pi updates...
[2026-06-19 11:16:24,371.371 INFO    ] 200
[2026-06-19 11:16:24,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:16:24,415.415 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:16:24,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:16:24,458.458 INFO    ] No camera update needed
[2026-06-19 11:16:24,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:16:24,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:16:24,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:16:24,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:16:26,518.518 INFO    ] ================================================
[2026-06-19 11:16:26,533.533 INFO    ] Launching Daemon at Fri Jun 19 11:16:26 IST 2026
[2026-06-19 11:16:26,543.543 INFO    ] ================================================
[2026-06-19 11:16:27,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:16:27
[2026-06-19 11:16:27,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:16:28,133.133 INFO    ] Initializing speech engine...
[2026-06-19 11:16:28,146.146 INFO    ] 2026-06-19 11:16:28
[2026-06-19 11:16:28,454.454 INFO    ] 2026-06-19 11:16:28
[2026-06-19 11:16:28,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:16:28,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:16:28,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:16:28,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:16:28,957.957 INFO    ] time= 19/06/2026 11:16:28
[2026-06-19 11:16:28,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:16:28,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:16:29,149.149 INFO    ] No existing commands found in stream
[2026-06-19 11:16:34,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:16:34,178.178 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 11:16:37,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:16:37,337.337 INFO    ] Checking for system updates...
[2026-06-19 11:16:37,376.376 INFO    ] 200
[2026-06-19 11:16:37,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:16:37,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:16:37,437.437 INFO    ] No update needed
[2026-06-19 11:16:37,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 11:16:37,474.474 INFO    ] 200
[2026-06-19 11:16:37,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:16:37,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:16:37,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:16:37,561.561 INFO    ] No camera update needed
[2026-06-19 11:16:37,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:16:37,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:16:37,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:16:37,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:16:39,618.618 INFO    ] ================================================
[2026-06-19 11:16:39,633.633 INFO    ] Launching Daemon at Fri Jun 19 11:16:39 IST 2026
[2026-06-19 11:16:39,644.644 INFO    ] ================================================
[2026-06-19 11:16:40,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:16:40
[2026-06-19 11:16:40,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:16:41,059.059 INFO    ] Initializing speech engine...
[2026-06-19 11:16:41,068.068 INFO    ] 2026-06-19 11:16:41
[2026-06-19 11:16:41,362.362 INFO    ] 2026-06-19 11:16:41
[2026-06-19 11:16:41,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:16:41,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:16:41,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:16:41,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:16:41,763.763 INFO    ] time= 19/06/2026 11:16:41
[2026-06-19 11:16:41,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:16:41,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:16:41,871.871 INFO    ] No existing commands found in stream
[2026-06-19 11:16:46,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:16:46,887.887 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 11:16:48,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:16:48,556.556 INFO    ] Checking for system updates...
[2026-06-19 11:16:48,593.593 INFO    ] 200
[2026-06-19 11:16:48,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:16:48,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:16:48,658.658 INFO    ] No update needed
[2026-06-19 11:16:48,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 11:16:48,694.694 INFO    ] 200
[2026-06-19 11:16:48,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:16:48,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:16:48,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:16:48,774.774 INFO    ] No camera update needed
[2026-06-19 11:16:48,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:16:48,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:16:48,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:16:48,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:16:50,828.828 INFO    ] ================================================
[2026-06-19 11:16:50,843.843 INFO    ] Launching Daemon at Fri Jun 19 11:16:50 IST 2026
[2026-06-19 11:16:50,854.854 INFO    ] ================================================
[2026-06-19 11:16:51,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:16:51
[2026-06-19 11:16:52,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:16:52,471.471 INFO    ] Initializing speech engine...
[2026-06-19 11:16:52,486.486 INFO    ] 2026-06-19 11:16:52
[2026-06-19 11:16:52,753.753 INFO    ] 2026-06-19 11:16:52
[2026-06-19 11:16:52,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:16:53,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:16:53,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:16:53,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:16:53,243.243 INFO    ] time= 19/06/2026 11:16:53
[2026-06-19 11:16:53,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:16:53,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:16:53,455.455 INFO    ] No existing commands found in stream
[2026-06-19 11:16:58,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:16:58,476.476 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 11:17:00,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:17:00,934.934 INFO    ] Checking for system updates...
[2026-06-19 11:17:00,971.971 INFO    ] 200
[2026-06-19 11:17:00,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:01,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:17:01,029.029 INFO    ] No update needed
[2026-06-19 11:17:01,032.032 INFO    ] Checking for camera pi updates...
[2026-06-19 11:17:01,067.067 INFO    ] 200
[2026-06-19 11:17:01,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:01,110.110 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:17:01,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:17:01,146.146 INFO    ] No camera update needed
[2026-06-19 11:17:01,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:17:01,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:17:01,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:17:01,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:17:03,207.207 INFO    ] ================================================
[2026-06-19 11:17:03,232.232 INFO    ] Launching Daemon at Fri Jun 19 11:17:03 IST 2026
[2026-06-19 11:17:03,246.246 INFO    ] ================================================
[2026-06-19 11:17:03,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:17:03
[2026-06-19 11:17:04,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:17:04,787.787 INFO    ] Initializing speech engine...
[2026-06-19 11:17:04,810.810 INFO    ] 2026-06-19 11:17:04
[2026-06-19 11:17:05,066.066 INFO    ] 2026-06-19 11:17:05
[2026-06-19 11:17:05,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:17:05,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:17:05,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:17:05,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:17:05,555.555 INFO    ] time= 19/06/2026 11:17:05
[2026-06-19 11:17:05,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:17:05,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:17:05,705.705 INFO    ] No existing commands found in stream
[2026-06-19 11:17:10,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:17:10,729.729 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 11:17:12,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:17:12,489.489 INFO    ] Checking for system updates...
[2026-06-19 11:17:12,526.526 INFO    ] 200
[2026-06-19 11:17:12,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:12,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:17:12,588.588 INFO    ] No update needed
[2026-06-19 11:17:12,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 11:17:12,624.624 INFO    ] 200
[2026-06-19 11:17:12,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:12,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:17:12,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:17:12,714.714 INFO    ] No camera update needed
[2026-06-19 11:17:12,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:17:12,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:17:12,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:17:12,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:17:14,770.770 INFO    ] ================================================
[2026-06-19 11:17:14,786.786 INFO    ] Launching Daemon at Fri Jun 19 11:17:14 IST 2026
[2026-06-19 11:17:14,797.797 INFO    ] ================================================
[2026-06-19 11:17:15,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:17:15
[2026-06-19 11:17:16,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:17:16,390.390 INFO    ] Initializing speech engine...
[2026-06-19 11:17:16,401.401 INFO    ] 2026-06-19 11:17:16
[2026-06-19 11:17:16,667.667 INFO    ] 2026-06-19 11:17:16
[2026-06-19 11:17:16,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:17:16,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:17:17,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:17:17,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:17:17,230.230 INFO    ] time= 19/06/2026 11:17:17
[2026-06-19 11:17:17,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:17:17,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:17:17,407.407 INFO    ] No existing commands found in stream
[2026-06-19 11:17:22,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:17:22,441.441 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 11:17:25,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:17:25,425.425 INFO    ] Checking for system updates...
[2026-06-19 11:17:25,463.463 INFO    ] 200
[2026-06-19 11:17:25,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:25,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:17:25,529.529 INFO    ] No update needed
[2026-06-19 11:17:25,531.531 INFO    ] Checking for camera pi updates...
[2026-06-19 11:17:25,569.569 INFO    ] 200
[2026-06-19 11:17:25,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:25,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:17:25,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:17:25,661.661 INFO    ] No camera update needed
[2026-06-19 11:17:25,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:17:25,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:17:25,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:17:25,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:17:27,716.716 INFO    ] ================================================
[2026-06-19 11:17:27,732.732 INFO    ] Launching Daemon at Fri Jun 19 11:17:27 IST 2026
[2026-06-19 11:17:27,743.743 INFO    ] ================================================
[2026-06-19 11:17:28,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:17:28
[2026-06-19 11:17:28,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:17:29,154.154 INFO    ] Initializing speech engine...
[2026-06-19 11:17:29,162.162 INFO    ] 2026-06-19 11:17:29
[2026-06-19 11:17:29,458.458 INFO    ] 2026-06-19 11:17:29
[2026-06-19 11:17:29,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:17:29,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:17:29,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:17:29,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:17:29,867.867 INFO    ] time= 19/06/2026 11:17:29
[2026-06-19 11:17:29,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:17:29,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:17:29,954.954 INFO    ] No existing commands found in stream
[2026-06-19 11:17:34,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:17:34,992.992 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-19 11:17:39,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:17:39,024.024 INFO    ] Checking for system updates...
[2026-06-19 11:17:39,060.060 INFO    ] 200
[2026-06-19 11:17:39,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:39,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:17:39,119.119 INFO    ] No update needed
[2026-06-19 11:17:39,121.121 INFO    ] Checking for camera pi updates...
[2026-06-19 11:17:39,156.156 INFO    ] 200
[2026-06-19 11:17:39,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:39,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:17:39,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:17:39,356.356 INFO    ] No camera update needed
[2026-06-19 11:17:39,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:17:39,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:17:39,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:17:39,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:17:41,411.411 INFO    ] ================================================
[2026-06-19 11:17:41,426.426 INFO    ] Launching Daemon at Fri Jun 19 11:17:41 IST 2026
[2026-06-19 11:17:41,437.437 INFO    ] ================================================
[2026-06-19 11:17:42,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:17:42
[2026-06-19 11:17:42,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:17:43,025.025 INFO    ] Initializing speech engine...
[2026-06-19 11:17:43,031.031 INFO    ] 2026-06-19 11:17:43
[2026-06-19 11:17:43,296.296 INFO    ] 2026-06-19 11:17:43
[2026-06-19 11:17:43,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:17:43,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:17:43,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:17:43,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:17:43,707.707 INFO    ] time= 19/06/2026 11:17:43
[2026-06-19 11:17:43,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:17:43,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:17:43,850.850 INFO    ] No existing commands found in stream
[2026-06-19 11:17:48,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:17:48,878.878 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 11:17:50,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:17:50,688.688 INFO    ] Checking for system updates...
[2026-06-19 11:17:50,723.723 INFO    ] 200
[2026-06-19 11:17:50,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:50,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:17:50,781.781 INFO    ] No update needed
[2026-06-19 11:17:50,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 11:17:50,817.817 INFO    ] 200
[2026-06-19 11:17:50,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:17:50,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:17:50,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:17:50,910.910 INFO    ] No camera update needed
[2026-06-19 11:17:50,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:17:50,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:17:50,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:17:50,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:17:52,966.966 INFO    ] ================================================
[2026-06-19 11:17:52,982.982 INFO    ] Launching Daemon at Fri Jun 19 11:17:52 IST 2026
[2026-06-19 11:17:52,993.993 INFO    ] ================================================
[2026-06-19 11:17:53,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:17:53
[2026-06-19 11:17:54,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:17:54,453.453 INFO    ] Initializing speech engine...
[2026-06-19 11:17:54,461.461 INFO    ] 2026-06-19 11:17:54
[2026-06-19 11:17:54,721.721 INFO    ] 2026-06-19 11:17:54
[2026-06-19 11:17:54,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:17:54,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:17:55,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:17:55,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:17:55,211.211 INFO    ] time= 19/06/2026 11:17:55
[2026-06-19 11:17:55,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:17:55,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:17:55,422.422 INFO    ] No existing commands found in stream
[2026-06-19 11:18:00,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:18:00,444.444 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 11:18:03,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:18:03,776.776 INFO    ] Checking for system updates...
[2026-06-19 11:18:03,815.815 INFO    ] 200
[2026-06-19 11:18:03,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:03,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:18:03,872.872 INFO    ] No update needed
[2026-06-19 11:18:03,874.874 INFO    ] Checking for camera pi updates...
[2026-06-19 11:18:03,909.909 INFO    ] 200
[2026-06-19 11:18:03,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:03,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:18:03,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:18:03,999.999 INFO    ] No camera update needed
[2026-06-19 11:18:04,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:18:04,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:18:04,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:18:04,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:18:06,054.054 INFO    ] ================================================
[2026-06-19 11:18:06,069.069 INFO    ] Launching Daemon at Fri Jun 19 11:18:06 IST 2026
[2026-06-19 11:18:06,080.080 INFO    ] ================================================
[2026-06-19 11:18:06,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:18:06
[2026-06-19 11:18:07,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:18:07,622.622 INFO    ] Initializing speech engine...
[2026-06-19 11:18:07,646.646 INFO    ] 2026-06-19 11:18:07
[2026-06-19 11:18:07,915.915 INFO    ] 2026-06-19 11:18:07
[2026-06-19 11:18:07,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:18:08,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:18:08,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:18:08,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:18:08,432.432 INFO    ] time= 19/06/2026 11:18:08
[2026-06-19 11:18:08,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:18:08,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:18:08,632.632 INFO    ] No existing commands found in stream
[2026-06-19 11:18:13,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:18:13,661.661 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 11:18:16,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:18:16,710.710 INFO    ] Checking for system updates...
[2026-06-19 11:18:16,748.748 INFO    ] 200
[2026-06-19 11:18:16,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:16,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:18:16,808.808 INFO    ] No update needed
[2026-06-19 11:18:16,811.811 INFO    ] Checking for camera pi updates...
[2026-06-19 11:18:16,851.851 INFO    ] 200
[2026-06-19 11:18:16,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:16,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:18:16,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:18:16,948.948 INFO    ] No camera update needed
[2026-06-19 11:18:16,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:18:16,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:18:16,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:18:16,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:18:19,005.005 INFO    ] ================================================
[2026-06-19 11:18:19,020.020 INFO    ] Launching Daemon at Fri Jun 19 11:18:19 IST 2026
[2026-06-19 11:18:19,031.031 INFO    ] ================================================
[2026-06-19 11:18:19,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:18:19
[2026-06-19 11:18:20,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:18:20,612.612 INFO    ] Initializing speech engine...
[2026-06-19 11:18:20,619.619 INFO    ] 2026-06-19 11:18:20
[2026-06-19 11:18:20,909.909 INFO    ] 2026-06-19 11:18:20
[2026-06-19 11:18:20,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:18:21,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:18:21,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:18:21,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:18:21,379.379 INFO    ] time= 19/06/2026 11:18:21
[2026-06-19 11:18:21,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:18:21,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:18:21,606.606 INFO    ] No existing commands found in stream
[2026-06-19 11:18:26,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:18:26,638.638 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 11:18:29,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:18:29,721.721 INFO    ] Checking for system updates...
[2026-06-19 11:18:29,757.757 INFO    ] 200
[2026-06-19 11:18:29,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:29,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:18:29,814.814 INFO    ] No update needed
[2026-06-19 11:18:29,817.817 INFO    ] Checking for camera pi updates...
[2026-06-19 11:18:29,854.854 INFO    ] 200
[2026-06-19 11:18:29,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:29,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:18:29,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:18:29,941.941 INFO    ] No camera update needed
[2026-06-19 11:18:29,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:18:29,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:18:29,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:18:29,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:18:32,997.997 INFO    ] ================================================
[2026-06-19 11:18:32,014.014 INFO    ] Launching Daemon at Fri Jun 19 11:18:32 IST 2026
[2026-06-19 11:18:32,026.026 INFO    ] ================================================
[2026-06-19 11:18:32,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:18:32
[2026-06-19 11:18:33,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:18:33,589.589 INFO    ] Initializing speech engine...
[2026-06-19 11:18:33,595.595 INFO    ] 2026-06-19 11:18:33
[2026-06-19 11:18:33,883.883 INFO    ] 2026-06-19 11:18:33
[2026-06-19 11:18:33,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:18:34,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:18:34,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:18:34,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:18:34,372.372 INFO    ] time= 19/06/2026 11:18:34
[2026-06-19 11:18:34,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:18:34,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:18:34,637.637 INFO    ] No existing commands found in stream
[2026-06-19 11:18:39,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:18:39,671.671 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 11:18:42,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:18:42,672.672 INFO    ] Checking for system updates...
[2026-06-19 11:18:42,709.709 INFO    ] 200
[2026-06-19 11:18:42,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:42,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:18:42,770.770 INFO    ] No update needed
[2026-06-19 11:18:42,772.772 INFO    ] Checking for camera pi updates...
[2026-06-19 11:18:42,807.807 INFO    ] 200
[2026-06-19 11:18:42,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:42,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:18:42,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:18:42,888.888 INFO    ] No camera update needed
[2026-06-19 11:18:42,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:18:42,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:18:42,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:18:42,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:18:44,943.943 INFO    ] ================================================
[2026-06-19 11:18:44,959.959 INFO    ] Launching Daemon at Fri Jun 19 11:18:44 IST 2026
[2026-06-19 11:18:44,969.969 INFO    ] ================================================
[2026-06-19 11:18:45,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:18:45
[2026-06-19 11:18:46,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:18:46,523.523 INFO    ] Initializing speech engine...
[2026-06-19 11:18:46,534.534 INFO    ] 2026-06-19 11:18:46
[2026-06-19 11:18:46,804.804 INFO    ] 2026-06-19 11:18:46
[2026-06-19 11:18:46,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:18:47,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:18:47,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:18:47,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:18:47,357.357 INFO    ] time= 19/06/2026 11:18:47
[2026-06-19 11:18:47,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:18:47,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:18:47,513.513 INFO    ] No existing commands found in stream
[2026-06-19 11:18:52,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:18:52,535.535 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 11:18:53,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:18:53,216.216 INFO    ] Checking for system updates...
[2026-06-19 11:18:53,257.257 INFO    ] 200
[2026-06-19 11:18:53,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:53,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:18:53,319.319 INFO    ] No update needed
[2026-06-19 11:18:53,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 11:18:53,360.360 INFO    ] 200
[2026-06-19 11:18:53,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:18:53,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:18:53,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:18:53,456.456 INFO    ] No camera update needed
[2026-06-19 11:18:53,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:18:53,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:18:53,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:18:53,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:18:55,514.514 INFO    ] ================================================
[2026-06-19 11:18:55,529.529 INFO    ] Launching Daemon at Fri Jun 19 11:18:55 IST 2026
[2026-06-19 11:18:55,539.539 INFO    ] ================================================
[2026-06-19 11:18:56,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:18:56
[2026-06-19 11:18:56,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:18:56,977.977 INFO    ] Initializing speech engine...
[2026-06-19 11:18:56,990.990 INFO    ] 2026-06-19 11:18:56
[2026-06-19 11:18:57,270.270 INFO    ] 2026-06-19 11:18:57
[2026-06-19 11:18:57,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:18:57,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:18:57,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:18:57,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:18:57,778.778 INFO    ] time= 19/06/2026 11:18:57
[2026-06-19 11:18:57,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:18:57,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:18:58,053.053 INFO    ] No existing commands found in stream
[2026-06-19 11:19:03,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:19:03,079.079 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 11:19:04,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:19:04,261.261 INFO    ] Checking for system updates...
[2026-06-19 11:19:04,297.297 INFO    ] 200
[2026-06-19 11:19:04,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:04,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:19:04,359.359 INFO    ] No update needed
[2026-06-19 11:19:04,361.361 INFO    ] Checking for camera pi updates...
[2026-06-19 11:19:04,398.398 INFO    ] 200
[2026-06-19 11:19:04,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:04,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:19:04,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:19:04,491.491 INFO    ] No camera update needed
[2026-06-19 11:19:04,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:19:04,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:19:04,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:19:04,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:19:06,547.547 INFO    ] ================================================
[2026-06-19 11:19:06,562.562 INFO    ] Launching Daemon at Fri Jun 19 11:19:06 IST 2026
[2026-06-19 11:19:06,573.573 INFO    ] ================================================
[2026-06-19 11:19:07,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:19:07
[2026-06-19 11:19:07,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:19:08,005.005 INFO    ] Initializing speech engine...
[2026-06-19 11:19:08,014.014 INFO    ] 2026-06-19 11:19:08
[2026-06-19 11:19:08,304.304 INFO    ] 2026-06-19 11:19:08
[2026-06-19 11:19:08,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:19:08,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:19:08,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:19:08,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:19:08,715.715 INFO    ] time= 19/06/2026 11:19:08
[2026-06-19 11:19:08,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:19:08,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:19:08,930.930 INFO    ] No existing commands found in stream
[2026-06-19 11:19:13,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:19:13,943.943 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 11:19:15,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:19:15,443.443 INFO    ] Checking for system updates...
[2026-06-19 11:19:15,479.479 INFO    ] 200
[2026-06-19 11:19:15,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:15,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:19:15,538.538 INFO    ] No update needed
[2026-06-19 11:19:15,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 11:19:15,575.575 INFO    ] 200
[2026-06-19 11:19:15,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:15,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:19:15,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:19:15,664.664 INFO    ] No camera update needed
[2026-06-19 11:19:15,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:19:15,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:19:15,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:19:15,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:19:17,719.719 INFO    ] ================================================
[2026-06-19 11:19:17,734.734 INFO    ] Launching Daemon at Fri Jun 19 11:19:17 IST 2026
[2026-06-19 11:19:17,745.745 INFO    ] ================================================
[2026-06-19 11:19:18,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:19:18
[2026-06-19 11:19:18,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:19:19,207.207 INFO    ] Initializing speech engine...
[2026-06-19 11:19:19,218.218 INFO    ] 2026-06-19 11:19:19
[2026-06-19 11:19:19,463.463 INFO    ] 2026-06-19 11:19:19
[2026-06-19 11:19:19,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:19:19,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:19:19,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:19:19,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:19:19,983.983 INFO    ] time= 19/06/2026 11:19:19
[2026-06-19 11:19:20,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:19:20,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:19:20,178.178 INFO    ] No existing commands found in stream
[2026-06-19 11:19:25,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:19:25,209.209 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 11:19:26,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:19:26,463.463 INFO    ] Checking for system updates...
[2026-06-19 11:19:26,499.499 INFO    ] 200
[2026-06-19 11:19:26,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:26,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:19:26,557.557 INFO    ] No update needed
[2026-06-19 11:19:26,559.559 INFO    ] Checking for camera pi updates...
[2026-06-19 11:19:26,595.595 INFO    ] 200
[2026-06-19 11:19:26,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:26,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:19:26,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:19:26,688.688 INFO    ] No camera update needed
[2026-06-19 11:19:26,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:19:26,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:19:26,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:19:26,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:19:28,745.745 INFO    ] ================================================
[2026-06-19 11:19:28,760.760 INFO    ] Launching Daemon at Fri Jun 19 11:19:28 IST 2026
[2026-06-19 11:19:28,771.771 INFO    ] ================================================
[2026-06-19 11:19:29,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:19:29
[2026-06-19 11:19:29,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:19:30,227.227 INFO    ] Initializing speech engine...
[2026-06-19 11:19:30,248.248 INFO    ] 2026-06-19 11:19:30
[2026-06-19 11:19:30,510.510 INFO    ] 2026-06-19 11:19:30
[2026-06-19 11:19:30,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:19:30,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:19:30,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:19:30,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:19:31,032.032 INFO    ] time= 19/06/2026 11:19:30
[2026-06-19 11:19:31,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:19:31,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:19:31,276.276 INFO    ] No existing commands found in stream
[2026-06-19 11:19:36,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:19:36,304.304 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 11:19:38,002.002 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:19:38,005.005 INFO    ] Checking for system updates...
[2026-06-19 11:19:38,041.041 INFO    ] 200
[2026-06-19 11:19:38,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:38,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:19:38,102.102 INFO    ] No update needed
[2026-06-19 11:19:38,105.105 INFO    ] Checking for camera pi updates...
[2026-06-19 11:19:38,141.141 INFO    ] 200
[2026-06-19 11:19:38,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:38,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:19:38,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:19:38,236.236 INFO    ] No camera update needed
[2026-06-19 11:19:38,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:19:38,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:19:38,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:19:38,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:19:40,294.294 INFO    ] ================================================
[2026-06-19 11:19:40,309.309 INFO    ] Launching Daemon at Fri Jun 19 11:19:40 IST 2026
[2026-06-19 11:19:40,320.320 INFO    ] ================================================
[2026-06-19 11:19:40,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:19:40
[2026-06-19 11:19:41,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:19:41,782.782 INFO    ] Initializing speech engine...
[2026-06-19 11:19:41,790.790 INFO    ] 2026-06-19 11:19:41
[2026-06-19 11:19:42,061.061 INFO    ] 2026-06-19 11:19:42
[2026-06-19 11:19:42,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:19:42,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:19:42,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:19:42,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:19:42,549.549 INFO    ] time= 19/06/2026 11:19:42
[2026-06-19 11:19:42,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:19:42,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:19:42,750.750 INFO    ] No existing commands found in stream
[2026-06-19 11:19:47,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:19:47,771.771 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 11:19:51,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:19:51,045.045 INFO    ] Checking for system updates...
[2026-06-19 11:19:51,080.080 INFO    ] 200
[2026-06-19 11:19:51,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:51,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:19:51,137.137 INFO    ] No update needed
[2026-06-19 11:19:51,140.140 INFO    ] Checking for camera pi updates...
[2026-06-19 11:19:51,175.175 INFO    ] 200
[2026-06-19 11:19:51,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:19:51,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:19:51,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:19:51,361.361 INFO    ] No camera update needed
[2026-06-19 11:19:51,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:19:51,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:19:51,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:19:51,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:19:53,419.419 INFO    ] ================================================
[2026-06-19 11:19:53,436.436 INFO    ] Launching Daemon at Fri Jun 19 11:19:53 IST 2026
[2026-06-19 11:19:53,447.447 INFO    ] ================================================
[2026-06-19 11:19:54,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:19:54
[2026-06-19 11:19:54,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:19:54,962.962 INFO    ] Initializing speech engine...
[2026-06-19 11:19:54,984.984 INFO    ] 2026-06-19 11:19:54
[2026-06-19 11:19:55,271.271 INFO    ] 2026-06-19 11:19:55
[2026-06-19 11:19:55,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:19:55,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:19:55,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:19:55,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:19:55,822.822 INFO    ] time= 19/06/2026 11:19:55
[2026-06-19 11:19:55,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:19:55,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:19:56,087.087 INFO    ] No existing commands found in stream
[2026-06-19 11:20:01,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:20:01,106.106 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 11:20:01,912.912 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:20:01,934.934 INFO    ] Checking for system updates...
[2026-06-19 11:20:02,028.028 INFO    ] 200
[2026-06-19 11:20:02,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:02,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:20:02,246.246 INFO    ] No update needed
[2026-06-19 11:20:02,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 11:20:02,314.314 INFO    ] 200
[2026-06-19 11:20:02,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:02,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:20:02,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:20:02,516.516 INFO    ] No camera update needed
[2026-06-19 11:20:02,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:20:02,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:20:02,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:20:02,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:20:04,580.580 INFO    ] ================================================
[2026-06-19 11:20:04,596.596 INFO    ] Launching Daemon at Fri Jun 19 11:20:04 IST 2026
[2026-06-19 11:20:04,607.607 INFO    ] ================================================
[2026-06-19 11:20:05,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:20:05
[2026-06-19 11:20:05,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:20:06,011.011 INFO    ] Initializing speech engine...
[2026-06-19 11:20:06,026.026 INFO    ] 2026-06-19 11:20:06
[2026-06-19 11:20:06,293.293 INFO    ] 2026-06-19 11:20:06
[2026-06-19 11:20:06,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:20:06,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:20:06,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:20:06,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:20:06,756.756 INFO    ] time= 19/06/2026 11:20:06
[2026-06-19 11:20:06,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:20:06,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:20:06,973.973 INFO    ] No existing commands found in stream
[2026-06-19 11:20:12,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:20:12,012.012 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 11:20:14,444.444 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:20:14,447.447 INFO    ] Checking for system updates...
[2026-06-19 11:20:14,482.482 INFO    ] 200
[2026-06-19 11:20:14,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:14,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:20:14,540.540 INFO    ] No update needed
[2026-06-19 11:20:14,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 11:20:14,580.580 INFO    ] 200
[2026-06-19 11:20:14,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:14,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:20:14,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:20:14,674.674 INFO    ] No camera update needed
[2026-06-19 11:20:14,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:20:14,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:20:14,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:20:14,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:20:16,731.731 INFO    ] ================================================
[2026-06-19 11:20:16,750.750 INFO    ] Launching Daemon at Fri Jun 19 11:20:16 IST 2026
[2026-06-19 11:20:16,761.761 INFO    ] ================================================
[2026-06-19 11:20:17,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:20:17
[2026-06-19 11:20:17,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:20:18,168.168 INFO    ] Initializing speech engine...
[2026-06-19 11:20:18,191.191 INFO    ] 2026-06-19 11:20:18
[2026-06-19 11:20:18,444.444 INFO    ] 2026-06-19 11:20:18
[2026-06-19 11:20:18,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:20:18,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:20:18,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:20:18,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:20:18,919.919 INFO    ] time= 19/06/2026 11:20:18
[2026-06-19 11:20:18,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:20:19,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:20:19,069.069 INFO    ] No existing commands found in stream
[2026-06-19 11:20:24,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:20:24,104.104 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 11:20:25,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:20:25,851.851 INFO    ] Checking for system updates...
[2026-06-19 11:20:25,888.888 INFO    ] 200
[2026-06-19 11:20:25,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:25,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:20:25,955.955 INFO    ] No update needed
[2026-06-19 11:20:25,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 11:20:25,997.997 INFO    ] 200
[2026-06-19 11:20:26,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:26,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:20:26,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:20:26,089.089 INFO    ] No camera update needed
[2026-06-19 11:20:26,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:20:26,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:20:26,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:20:26,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:20:28,149.149 INFO    ] ================================================
[2026-06-19 11:20:28,164.164 INFO    ] Launching Daemon at Fri Jun 19 11:20:28 IST 2026
[2026-06-19 11:20:28,175.175 INFO    ] ================================================
[2026-06-19 11:20:28,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:20:28
[2026-06-19 11:20:29,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:20:29,787.787 INFO    ] Initializing speech engine...
[2026-06-19 11:20:29,797.797 INFO    ] 2026-06-19 11:20:29
[2026-06-19 11:20:30,108.108 INFO    ] 2026-06-19 11:20:30
[2026-06-19 11:20:30,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:20:30,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:20:30,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:20:30,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:20:30,617.617 INFO    ] time= 19/06/2026 11:20:30
[2026-06-19 11:20:30,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:20:30,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:20:30,817.817 INFO    ] No existing commands found in stream
[2026-06-19 11:20:35,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:20:35,851.851 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 11:20:36,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:20:36,558.558 INFO    ] Checking for system updates...
[2026-06-19 11:20:36,596.596 INFO    ] 200
[2026-06-19 11:20:36,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:36,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:20:36,656.656 INFO    ] No update needed
[2026-06-19 11:20:36,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 11:20:36,693.693 INFO    ] 200
[2026-06-19 11:20:36,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:36,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:20:36,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:20:36,783.783 INFO    ] No camera update needed
[2026-06-19 11:20:36,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:20:36,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:20:36,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:20:36,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:20:38,840.840 INFO    ] ================================================
[2026-06-19 11:20:38,856.856 INFO    ] Launching Daemon at Fri Jun 19 11:20:38 IST 2026
[2026-06-19 11:20:38,866.866 INFO    ] ================================================
[2026-06-19 11:20:39,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:20:39
[2026-06-19 11:20:40,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:20:40,311.311 INFO    ] Initializing speech engine...
[2026-06-19 11:20:40,318.318 INFO    ] 2026-06-19 11:20:40
[2026-06-19 11:20:40,579.579 INFO    ] 2026-06-19 11:20:40
[2026-06-19 11:20:40,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:20:40,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:20:40,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:20:41,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:20:41,069.069 INFO    ] time= 19/06/2026 11:20:41
[2026-06-19 11:20:41,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:20:41,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:20:41,280.280 INFO    ] No existing commands found in stream
[2026-06-19 11:20:46,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:20:46,298.298 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 11:20:49,913.913 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:20:49,916.916 INFO    ] Checking for system updates...
[2026-06-19 11:20:49,957.957 INFO    ] 200
[2026-06-19 11:20:49,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:50,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:20:50,015.015 INFO    ] No update needed
[2026-06-19 11:20:50,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 11:20:50,051.051 INFO    ] 200
[2026-06-19 11:20:50,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:20:50,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:20:50,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:20:50,133.133 INFO    ] No camera update needed
[2026-06-19 11:20:50,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:20:50,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:20:50,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:20:50,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:20:52,204.204 INFO    ] ================================================
[2026-06-19 11:20:52,219.219 INFO    ] Launching Daemon at Fri Jun 19 11:20:52 IST 2026
[2026-06-19 11:20:52,230.230 INFO    ] ================================================
[2026-06-19 11:20:52,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:20:52
[2026-06-19 11:20:53,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:20:53,653.653 INFO    ] Initializing speech engine...
[2026-06-19 11:20:53,664.664 INFO    ] 2026-06-19 11:20:53
[2026-06-19 11:20:53,908.908 INFO    ] 2026-06-19 11:20:53
[2026-06-19 11:20:53,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:20:54,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:20:54,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:20:54,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:20:54,384.384 INFO    ] time= 19/06/2026 11:20:54
[2026-06-19 11:20:54,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:20:54,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:20:54,600.600 INFO    ] No existing commands found in stream
[2026-06-19 11:20:59,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:20:59,630.630 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 11:21:03,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:21:03,252.252 INFO    ] Checking for system updates...
[2026-06-19 11:21:03,290.290 INFO    ] 200
[2026-06-19 11:21:03,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:03,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:21:03,358.358 INFO    ] No update needed
[2026-06-19 11:21:03,361.361 INFO    ] Checking for camera pi updates...
[2026-06-19 11:21:03,395.395 INFO    ] 200
[2026-06-19 11:21:03,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:03,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:21:03,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:21:03,491.491 INFO    ] No camera update needed
[2026-06-19 11:21:03,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:21:03,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:21:03,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:21:03,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:21:05,549.549 INFO    ] ================================================
[2026-06-19 11:21:05,564.564 INFO    ] Launching Daemon at Fri Jun 19 11:21:05 IST 2026
[2026-06-19 11:21:05,574.574 INFO    ] ================================================
[2026-06-19 11:21:06,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:21:06
[2026-06-19 11:21:06,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:21:07,023.023 INFO    ] Initializing speech engine...
[2026-06-19 11:21:07,032.032 INFO    ] 2026-06-19 11:21:07
[2026-06-19 11:21:07,278.278 INFO    ] 2026-06-19 11:21:07
[2026-06-19 11:21:07,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:21:07,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:21:07,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:21:07,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:21:07,834.834 INFO    ] time= 19/06/2026 11:21:07
[2026-06-19 11:21:07,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:21:07,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:21:07,990.990 INFO    ] No existing commands found in stream
[2026-06-19 11:21:13,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:21:13,012.012 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 11:21:14,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:21:14,797.797 INFO    ] Checking for system updates...
[2026-06-19 11:21:14,834.834 INFO    ] 200
[2026-06-19 11:21:14,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:14,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:21:14,897.897 INFO    ] No update needed
[2026-06-19 11:21:14,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 11:21:14,935.935 INFO    ] 200
[2026-06-19 11:21:14,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:14,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:21:15,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:21:15,027.027 INFO    ] No camera update needed
[2026-06-19 11:21:15,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:21:15,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:21:15,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:21:15,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:21:17,087.087 INFO    ] ================================================
[2026-06-19 11:21:17,102.102 INFO    ] Launching Daemon at Fri Jun 19 11:21:17 IST 2026
[2026-06-19 11:21:17,113.113 INFO    ] ================================================
[2026-06-19 11:21:17,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:21:17
[2026-06-19 11:21:18,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:21:18,756.756 INFO    ] Initializing speech engine...
[2026-06-19 11:21:18,768.768 INFO    ] 2026-06-19 11:21:18
[2026-06-19 11:21:19,059.059 INFO    ] 2026-06-19 11:21:19
[2026-06-19 11:21:19,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:21:19,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:21:19,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:21:19,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:21:19,603.603 INFO    ] time= 19/06/2026 11:21:19
[2026-06-19 11:21:19,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:21:19,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:21:19,783.783 INFO    ] No existing commands found in stream
[2026-06-19 11:21:24,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:21:24,824.824 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 11:21:25,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:21:25,454.454 INFO    ] Checking for system updates...
[2026-06-19 11:21:25,493.493 INFO    ] 200
[2026-06-19 11:21:25,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:25,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:21:25,558.558 INFO    ] No update needed
[2026-06-19 11:21:25,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 11:21:25,595.595 INFO    ] 200
[2026-06-19 11:21:25,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:25,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:21:25,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:21:25,679.679 INFO    ] No camera update needed
[2026-06-19 11:21:25,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:21:25,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:21:25,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:21:25,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:21:27,733.733 INFO    ] ================================================
[2026-06-19 11:21:27,748.748 INFO    ] Launching Daemon at Fri Jun 19 11:21:27 IST 2026
[2026-06-19 11:21:27,759.759 INFO    ] ================================================
[2026-06-19 11:21:28,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:21:28
[2026-06-19 11:21:28,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:21:29,177.177 INFO    ] Initializing speech engine...
[2026-06-19 11:21:29,191.191 INFO    ] 2026-06-19 11:21:29
[2026-06-19 11:21:29,477.477 INFO    ] 2026-06-19 11:21:29
[2026-06-19 11:21:29,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:21:29,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:21:29,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:21:29,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:21:29,860.860 INFO    ] time= 19/06/2026 11:21:29
[2026-06-19 11:21:29,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:21:29,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:21:29,988.988 INFO    ] No existing commands found in stream
[2026-06-19 11:21:35,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:21:35,004.004 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 11:21:39,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:21:39,193.193 INFO    ] Checking for system updates...
[2026-06-19 11:21:39,229.229 INFO    ] 200
[2026-06-19 11:21:39,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:39,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:21:39,286.286 INFO    ] No update needed
[2026-06-19 11:21:39,289.289 INFO    ] Checking for camera pi updates...
[2026-06-19 11:21:39,322.322 INFO    ] 200
[2026-06-19 11:21:39,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:39,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:21:39,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:21:39,412.412 INFO    ] No camera update needed
[2026-06-19 11:21:39,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:21:39,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:21:39,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:21:39,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:21:41,468.468 INFO    ] ================================================
[2026-06-19 11:21:41,484.484 INFO    ] Launching Daemon at Fri Jun 19 11:21:41 IST 2026
[2026-06-19 11:21:41,495.495 INFO    ] ================================================
[2026-06-19 11:21:42,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:21:42
[2026-06-19 11:21:42,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:21:42,909.909 INFO    ] Initializing speech engine...
[2026-06-19 11:21:42,924.924 INFO    ] 2026-06-19 11:21:42
[2026-06-19 11:21:43,190.190 INFO    ] 2026-06-19 11:21:43
[2026-06-19 11:21:43,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:21:43,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:21:43,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:21:43,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:21:43,674.674 INFO    ] time= 19/06/2026 11:21:43
[2026-06-19 11:21:43,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:21:43,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:21:43,892.892 INFO    ] No existing commands found in stream
[2026-06-19 11:21:48,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:21:48,923.923 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 11:21:50,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:21:50,059.059 INFO    ] Checking for system updates...
[2026-06-19 11:21:50,095.095 INFO    ] 200
[2026-06-19 11:21:50,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:50,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:21:50,153.153 INFO    ] No update needed
[2026-06-19 11:21:50,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 11:21:50,190.190 INFO    ] 200
[2026-06-19 11:21:50,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:21:50,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:21:50,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:21:50,283.283 INFO    ] No camera update needed
[2026-06-19 11:21:50,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:21:50,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:21:50,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:21:50,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:21:52,338.338 INFO    ] ================================================
[2026-06-19 11:21:52,354.354 INFO    ] Launching Daemon at Fri Jun 19 11:21:52 IST 2026
[2026-06-19 11:21:52,366.366 INFO    ] ================================================
[2026-06-19 11:21:52,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:21:52
[2026-06-19 11:21:53,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:21:53,786.786 INFO    ] Initializing speech engine...
[2026-06-19 11:21:53,791.791 INFO    ] 2026-06-19 11:21:53
[2026-06-19 11:21:54,067.067 INFO    ] 2026-06-19 11:21:54
[2026-06-19 11:21:54,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:21:54,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:21:54,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:21:54,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:21:54,549.549 INFO    ] time= 19/06/2026 11:21:54
[2026-06-19 11:21:54,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:21:54,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:21:54,716.716 INFO    ] No existing commands found in stream
[2026-06-19 11:21:59,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:21:59,730.730 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 11:22:02,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:22:02,744.744 INFO    ] Checking for system updates...
[2026-06-19 11:22:02,797.797 INFO    ] 200
[2026-06-19 11:22:02,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:02,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:22:02,879.879 INFO    ] No update needed
[2026-06-19 11:22:02,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 11:22:02,951.951 INFO    ] 200
[2026-06-19 11:22:02,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:03,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:22:03,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:22:03,051.051 INFO    ] No camera update needed
[2026-06-19 11:22:03,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:22:03,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:22:03,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:22:03,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:22:05,116.116 INFO    ] ================================================
[2026-06-19 11:22:05,132.132 INFO    ] Launching Daemon at Fri Jun 19 11:22:05 IST 2026
[2026-06-19 11:22:05,143.143 INFO    ] ================================================
[2026-06-19 11:22:05,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:22:05
[2026-06-19 11:22:06,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:22:06,756.756 INFO    ] Initializing speech engine...
[2026-06-19 11:22:06,762.762 INFO    ] 2026-06-19 11:22:06
[2026-06-19 11:22:07,025.025 INFO    ] 2026-06-19 11:22:07
[2026-06-19 11:22:07,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:22:07,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:22:07,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:22:07,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:22:07,510.510 INFO    ] time= 19/06/2026 11:22:07
[2026-06-19 11:22:07,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:22:07,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:22:07,660.660 INFO    ] No existing commands found in stream
[2026-06-19 11:22:12,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:22:12,676.676 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 11:22:16,391.391 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:22:16,394.394 INFO    ] Checking for system updates...
[2026-06-19 11:22:16,430.430 INFO    ] 200
[2026-06-19 11:22:16,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:16,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:22:16,487.487 INFO    ] No update needed
[2026-06-19 11:22:16,489.489 INFO    ] Checking for camera pi updates...
[2026-06-19 11:22:16,523.523 INFO    ] 200
[2026-06-19 11:22:16,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:16,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:22:16,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:22:16,609.609 INFO    ] No camera update needed
[2026-06-19 11:22:16,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:22:16,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:22:16,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:22:16,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:22:18,664.664 INFO    ] ================================================
[2026-06-19 11:22:18,679.679 INFO    ] Launching Daemon at Fri Jun 19 11:22:18 IST 2026
[2026-06-19 11:22:18,690.690 INFO    ] ================================================
[2026-06-19 11:22:19,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:22:19
[2026-06-19 11:22:19,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:22:20,122.122 INFO    ] Initializing speech engine...
[2026-06-19 11:22:20,132.132 INFO    ] 2026-06-19 11:22:20
[2026-06-19 11:22:20,397.397 INFO    ] 2026-06-19 11:22:20
[2026-06-19 11:22:20,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:22:20,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:22:20,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:22:20,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:22:20,907.907 INFO    ] time= 19/06/2026 11:22:20
[2026-06-19 11:22:20,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:22:21,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:22:21,185.185 INFO    ] No existing commands found in stream
[2026-06-19 11:22:26,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:22:26,213.213 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 11:22:28,971.971 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:22:28,974.974 INFO    ] Checking for system updates...
[2026-06-19 11:22:29,010.010 INFO    ] 200
[2026-06-19 11:22:29,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:29,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:22:29,069.069 INFO    ] No update needed
[2026-06-19 11:22:29,072.072 INFO    ] Checking for camera pi updates...
[2026-06-19 11:22:29,105.105 INFO    ] 200
[2026-06-19 11:22:29,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:29,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:22:29,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:22:29,190.190 INFO    ] No camera update needed
[2026-06-19 11:22:29,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:22:29,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:22:29,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:22:29,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:22:31,245.245 INFO    ] ================================================
[2026-06-19 11:22:31,261.261 INFO    ] Launching Daemon at Fri Jun 19 11:22:31 IST 2026
[2026-06-19 11:22:31,272.272 INFO    ] ================================================
[2026-06-19 11:22:31,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:22:31
[2026-06-19 11:22:32,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:22:32,810.810 INFO    ] Initializing speech engine...
[2026-06-19 11:22:32,832.832 INFO    ] 2026-06-19 11:22:32
[2026-06-19 11:22:33,103.103 INFO    ] 2026-06-19 11:22:33
[2026-06-19 11:22:33,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:22:33,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:22:33,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:22:33,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:22:33,587.587 INFO    ] time= 19/06/2026 11:22:33
[2026-06-19 11:22:33,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:22:33,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:22:33,828.828 INFO    ] No existing commands found in stream
[2026-06-19 11:22:38,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:22:38,858.858 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 11:22:39,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:22:39,624.624 INFO    ] Checking for system updates...
[2026-06-19 11:22:39,660.660 INFO    ] 200
[2026-06-19 11:22:39,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:39,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:22:39,718.718 INFO    ] No update needed
[2026-06-19 11:22:39,720.720 INFO    ] Checking for camera pi updates...
[2026-06-19 11:22:39,754.754 INFO    ] 200
[2026-06-19 11:22:39,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:39,796.796 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:22:39,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:22:39,838.838 INFO    ] No camera update needed
[2026-06-19 11:22:39,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:22:39,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:22:39,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:22:39,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:22:41,894.894 INFO    ] ================================================
[2026-06-19 11:22:41,910.910 INFO    ] Launching Daemon at Fri Jun 19 11:22:41 IST 2026
[2026-06-19 11:22:41,921.921 INFO    ] ================================================
[2026-06-19 11:22:42,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:22:42
[2026-06-19 11:22:43,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:22:43,343.343 INFO    ] Initializing speech engine...
[2026-06-19 11:22:43,351.351 INFO    ] 2026-06-19 11:22:43
[2026-06-19 11:22:43,600.600 INFO    ] 2026-06-19 11:22:43
[2026-06-19 11:22:43,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:22:43,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:22:43,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:22:43,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:22:43,964.964 INFO    ] time= 19/06/2026 11:22:43
[2026-06-19 11:22:43,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:22:43,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:22:44,052.052 INFO    ] No existing commands found in stream
[2026-06-19 11:22:49,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:22:49,070.070 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 11:22:50,590.590 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:22:50,593.593 INFO    ] Checking for system updates...
[2026-06-19 11:22:50,633.633 INFO    ] 200
[2026-06-19 11:22:50,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:50,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:22:50,690.690 INFO    ] No update needed
[2026-06-19 11:22:50,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 11:22:50,728.728 INFO    ] 200
[2026-06-19 11:22:50,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:22:50,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:22:50,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:22:50,832.832 INFO    ] No camera update needed
[2026-06-19 11:22:50,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:22:50,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:22:50,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:22:50,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:22:52,887.887 INFO    ] ================================================
[2026-06-19 11:22:52,902.902 INFO    ] Launching Daemon at Fri Jun 19 11:22:52 IST 2026
[2026-06-19 11:22:52,912.912 INFO    ] ================================================
[2026-06-19 11:22:53,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:22:53
[2026-06-19 11:22:54,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:22:54,326.326 INFO    ] Initializing speech engine...
[2026-06-19 11:22:54,342.342 INFO    ] 2026-06-19 11:22:54
[2026-06-19 11:22:54,624.624 INFO    ] 2026-06-19 11:22:54
[2026-06-19 11:22:54,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:22:54,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:22:54,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:22:55,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:22:55,048.048 INFO    ] time= 19/06/2026 11:22:55
[2026-06-19 11:22:55,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:22:55,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:22:55,203.203 INFO    ] No existing commands found in stream
[2026-06-19 11:23:00,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:23:00,231.231 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 11:23:04,121.121 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:23:04,124.124 INFO    ] Checking for system updates...
[2026-06-19 11:23:04,160.160 INFO    ] 200
[2026-06-19 11:23:04,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:04,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:23:04,218.218 INFO    ] No update needed
[2026-06-19 11:23:04,221.221 INFO    ] Checking for camera pi updates...
[2026-06-19 11:23:04,254.254 INFO    ] 200
[2026-06-19 11:23:04,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:04,302.302 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:23:04,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:23:04,353.353 INFO    ] No camera update needed
[2026-06-19 11:23:04,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:23:04,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:23:04,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:23:04,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:23:06,410.410 INFO    ] ================================================
[2026-06-19 11:23:06,426.426 INFO    ] Launching Daemon at Fri Jun 19 11:23:06 IST 2026
[2026-06-19 11:23:06,437.437 INFO    ] ================================================
[2026-06-19 11:23:07,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:23:07
[2026-06-19 11:23:07,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:23:07,844.844 INFO    ] Initializing speech engine...
[2026-06-19 11:23:07,851.851 INFO    ] 2026-06-19 11:23:07
[2026-06-19 11:23:08,146.146 INFO    ] 2026-06-19 11:23:08
[2026-06-19 11:23:08,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:23:08,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:23:08,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:23:08,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:23:08,636.636 INFO    ] time= 19/06/2026 11:23:08
[2026-06-19 11:23:08,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:23:08,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:23:08,792.792 INFO    ] No existing commands found in stream
[2026-06-19 11:23:13,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:23:13,818.818 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 11:23:16,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:23:16,708.708 INFO    ] Checking for system updates...
[2026-06-19 11:23:16,744.744 INFO    ] 200
[2026-06-19 11:23:16,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:16,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:23:16,801.801 INFO    ] No update needed
[2026-06-19 11:23:16,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 11:23:16,837.837 INFO    ] 200
[2026-06-19 11:23:16,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:16,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:23:16,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:23:16,920.920 INFO    ] No camera update needed
[2026-06-19 11:23:16,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:23:16,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:23:16,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:23:16,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:23:18,976.976 INFO    ] ================================================
[2026-06-19 11:23:18,991.991 INFO    ] Launching Daemon at Fri Jun 19 11:23:18 IST 2026
[2026-06-19 11:23:19,003.003 INFO    ] ================================================
[2026-06-19 11:23:19,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:23:19
[2026-06-19 11:23:20,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:23:20,430.430 INFO    ] Initializing speech engine...
[2026-06-19 11:23:20,439.439 INFO    ] 2026-06-19 11:23:20
[2026-06-19 11:23:20,685.685 INFO    ] 2026-06-19 11:23:20
[2026-06-19 11:23:20,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:23:20,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:23:20,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:23:21,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:23:21,241.241 INFO    ] time= 19/06/2026 11:23:21
[2026-06-19 11:23:21,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:23:21,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:23:21,398.398 INFO    ] No existing commands found in stream
[2026-06-19 11:23:26,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:23:26,415.415 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 11:23:27,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:23:27,756.756 INFO    ] Checking for system updates...
[2026-06-19 11:23:27,792.792 INFO    ] 200
[2026-06-19 11:23:27,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:27,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:23:27,851.851 INFO    ] No update needed
[2026-06-19 11:23:27,854.854 INFO    ] Checking for camera pi updates...
[2026-06-19 11:23:27,888.888 INFO    ] 200
[2026-06-19 11:23:27,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:27,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:23:27,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:23:27,978.978 INFO    ] No camera update needed
[2026-06-19 11:23:27,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:23:27,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:23:27,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:23:27,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:23:30,035.035 INFO    ] ================================================
[2026-06-19 11:23:30,051.051 INFO    ] Launching Daemon at Fri Jun 19 11:23:30 IST 2026
[2026-06-19 11:23:30,062.062 INFO    ] ================================================
[2026-06-19 11:23:30,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:23:30
[2026-06-19 11:23:31,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:23:31,623.623 INFO    ] Initializing speech engine...
[2026-06-19 11:23:31,631.631 INFO    ] 2026-06-19 11:23:31
[2026-06-19 11:23:31,905.905 INFO    ] 2026-06-19 11:23:31
[2026-06-19 11:23:31,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:23:32,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:23:32,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:23:32,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:23:32,383.383 INFO    ] time= 19/06/2026 11:23:32
[2026-06-19 11:23:32,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:23:32,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:23:32,623.623 INFO    ] No existing commands found in stream
[2026-06-19 11:23:37,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:23:37,645.645 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 11:23:38,812.812 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:23:38,815.815 INFO    ] Checking for system updates...
[2026-06-19 11:23:38,852.852 INFO    ] 200
[2026-06-19 11:23:38,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:38,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:23:38,911.911 INFO    ] No update needed
[2026-06-19 11:23:38,913.913 INFO    ] Checking for camera pi updates...
[2026-06-19 11:23:38,953.953 INFO    ] 200
[2026-06-19 11:23:38,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:38,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:23:39,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:23:39,039.039 INFO    ] No camera update needed
[2026-06-19 11:23:39,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:23:39,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:23:39,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:23:39,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:23:41,096.096 INFO    ] ================================================
[2026-06-19 11:23:41,112.112 INFO    ] Launching Daemon at Fri Jun 19 11:23:41 IST 2026
[2026-06-19 11:23:41,123.123 INFO    ] ================================================
[2026-06-19 11:23:41,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:23:41
[2026-06-19 11:23:42,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:23:42,762.762 INFO    ] Initializing speech engine...
[2026-06-19 11:23:42,777.777 INFO    ] 2026-06-19 11:23:42
[2026-06-19 11:23:43,085.085 INFO    ] 2026-06-19 11:23:43
[2026-06-19 11:23:43,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:23:43,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:23:43,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:23:43,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:23:43,647.647 INFO    ] time= 19/06/2026 11:23:43
[2026-06-19 11:23:43,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:23:43,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:23:43,926.926 INFO    ] No existing commands found in stream
[2026-06-19 11:23:48,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:23:48,956.956 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 11:23:49,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:23:49,638.638 INFO    ] Checking for system updates...
[2026-06-19 11:23:49,676.676 INFO    ] 200
[2026-06-19 11:23:49,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:49,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:23:49,735.735 INFO    ] No update needed
[2026-06-19 11:23:49,738.738 INFO    ] Checking for camera pi updates...
[2026-06-19 11:23:49,773.773 INFO    ] 200
[2026-06-19 11:23:49,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:23:49,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:23:49,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:23:49,867.867 INFO    ] No camera update needed
[2026-06-19 11:23:49,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:23:49,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:23:49,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:23:49,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:23:51,927.927 INFO    ] ================================================
[2026-06-19 11:23:51,942.942 INFO    ] Launching Daemon at Fri Jun 19 11:23:51 IST 2026
[2026-06-19 11:23:51,954.954 INFO    ] ================================================
[2026-06-19 11:23:52,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:23:52
[2026-06-19 11:23:53,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:23:53,362.362 INFO    ] Initializing speech engine...
[2026-06-19 11:23:53,371.371 INFO    ] 2026-06-19 11:23:53
[2026-06-19 11:23:53,666.666 INFO    ] 2026-06-19 11:23:53
[2026-06-19 11:23:53,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:23:53,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:23:53,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:23:54,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:23:54,063.063 INFO    ] time= 19/06/2026 11:23:54
[2026-06-19 11:23:54,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:23:54,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:23:54,187.187 INFO    ] No existing commands found in stream
[2026-06-19 11:23:59,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:23:59,199.199 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 11:24:00,812.812 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:24:00,815.815 INFO    ] Checking for system updates...
[2026-06-19 11:24:00,855.855 INFO    ] 200
[2026-06-19 11:24:00,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:00,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:24:00,914.914 INFO    ] No update needed
[2026-06-19 11:24:00,916.916 INFO    ] Checking for camera pi updates...
[2026-06-19 11:24:00,950.950 INFO    ] 200
[2026-06-19 11:24:00,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:00,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:24:01,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:24:01,041.041 INFO    ] No camera update needed
[2026-06-19 11:24:01,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:24:01,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:24:01,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:24:01,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:24:03,138.138 INFO    ] ================================================
[2026-06-19 11:24:03,156.156 INFO    ] Launching Daemon at Fri Jun 19 11:24:03 IST 2026
[2026-06-19 11:24:03,168.168 INFO    ] ================================================
[2026-06-19 11:24:03,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:24:03
[2026-06-19 11:24:04,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:24:04,746.746 INFO    ] Initializing speech engine...
[2026-06-19 11:24:04,759.759 INFO    ] 2026-06-19 11:24:04
[2026-06-19 11:24:05,034.034 INFO    ] 2026-06-19 11:24:05
[2026-06-19 11:24:05,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:24:05,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:24:05,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:24:05,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:24:05,572.572 INFO    ] time= 19/06/2026 11:24:05
[2026-06-19 11:24:05,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:24:05,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:24:05,736.736 INFO    ] No existing commands found in stream
[2026-06-19 11:24:10,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:24:10,771.771 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 11:24:14,865.865 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:24:14,868.868 INFO    ] Checking for system updates...
[2026-06-19 11:24:14,905.905 INFO    ] 200
[2026-06-19 11:24:14,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:14,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:24:14,967.967 INFO    ] No update needed
[2026-06-19 11:24:14,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 11:24:15,002.002 INFO    ] 200
[2026-06-19 11:24:15,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:15,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:24:15,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:24:15,198.198 INFO    ] No camera update needed
[2026-06-19 11:24:15,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:24:15,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:24:15,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:24:15,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:24:17,255.255 INFO    ] ================================================
[2026-06-19 11:24:17,272.272 INFO    ] Launching Daemon at Fri Jun 19 11:24:17 IST 2026
[2026-06-19 11:24:17,283.283 INFO    ] ================================================
[2026-06-19 11:24:17,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:24:17
[2026-06-19 11:24:18,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:24:18,828.828 INFO    ] Initializing speech engine...
[2026-06-19 11:24:18,842.842 INFO    ] 2026-06-19 11:24:18
[2026-06-19 11:24:19,130.130 INFO    ] 2026-06-19 11:24:19
[2026-06-19 11:24:19,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:24:19,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:24:19,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:24:19,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:24:19,685.685 INFO    ] time= 19/06/2026 11:24:19
[2026-06-19 11:24:19,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:24:19,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:24:19,839.839 INFO    ] No existing commands found in stream
[2026-06-19 11:24:24,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:24:24,863.863 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 11:24:27,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:24:27,131.131 INFO    ] Checking for system updates...
[2026-06-19 11:24:27,170.170 INFO    ] 200
[2026-06-19 11:24:27,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:27,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:24:27,229.229 INFO    ] No update needed
[2026-06-19 11:24:27,231.231 INFO    ] Checking for camera pi updates...
[2026-06-19 11:24:27,268.268 INFO    ] 200
[2026-06-19 11:24:27,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:27,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:24:27,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:24:27,354.354 INFO    ] No camera update needed
[2026-06-19 11:24:27,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:24:27,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:24:27,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:24:27,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:24:29,410.410 INFO    ] ================================================
[2026-06-19 11:24:29,425.425 INFO    ] Launching Daemon at Fri Jun 19 11:24:29 IST 2026
[2026-06-19 11:24:29,435.435 INFO    ] ================================================
[2026-06-19 11:24:30,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:24:30
[2026-06-19 11:24:30,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:24:30,883.883 INFO    ] Initializing speech engine...
[2026-06-19 11:24:30,909.909 INFO    ] 2026-06-19 11:24:30
[2026-06-19 11:24:31,184.184 INFO    ] 2026-06-19 11:24:31
[2026-06-19 11:24:31,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:24:31,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:24:31,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:24:31,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:24:31,553.553 INFO    ] time= 19/06/2026 11:24:31
[2026-06-19 11:24:31,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:24:31,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:24:31,695.695 INFO    ] No existing commands found in stream
[2026-06-19 11:24:36,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:24:36,710.710 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 11:24:38,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:24:38,896.896 INFO    ] Checking for system updates...
[2026-06-19 11:24:38,932.932 INFO    ] 200
[2026-06-19 11:24:38,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:38,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:24:38,999.999 INFO    ] No update needed
[2026-06-19 11:24:39,001.001 INFO    ] Checking for camera pi updates...
[2026-06-19 11:24:39,035.035 INFO    ] 200
[2026-06-19 11:24:39,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:39,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:24:39,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:24:39,126.126 INFO    ] No camera update needed
[2026-06-19 11:24:39,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:24:39,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:24:39,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:24:39,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:24:41,182.182 INFO    ] ================================================
[2026-06-19 11:24:41,198.198 INFO    ] Launching Daemon at Fri Jun 19 11:24:41 IST 2026
[2026-06-19 11:24:41,208.208 INFO    ] ================================================
[2026-06-19 11:24:41,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:24:41
[2026-06-19 11:24:42,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:24:42,642.642 INFO    ] Initializing speech engine...
[2026-06-19 11:24:42,651.651 INFO    ] 2026-06-19 11:24:42
[2026-06-19 11:24:42,900.900 INFO    ] 2026-06-19 11:24:42
[2026-06-19 11:24:42,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:24:43,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:24:43,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:24:43,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:24:43,390.390 INFO    ] time= 19/06/2026 11:24:43
[2026-06-19 11:24:43,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:24:43,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:24:43,592.592 INFO    ] No existing commands found in stream
[2026-06-19 11:24:48,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:24:48,608.608 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 11:24:52,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:24:52,651.651 INFO    ] Checking for system updates...
[2026-06-19 11:24:52,687.687 INFO    ] 200
[2026-06-19 11:24:52,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:52,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:24:52,749.749 INFO    ] No update needed
[2026-06-19 11:24:52,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 11:24:52,785.785 INFO    ] 200
[2026-06-19 11:24:52,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:24:52,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:24:52,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:24:52,882.882 INFO    ] No camera update needed
[2026-06-19 11:24:52,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:24:52,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:24:52,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:24:52,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:24:54,941.941 INFO    ] ================================================
[2026-06-19 11:24:54,956.956 INFO    ] Launching Daemon at Fri Jun 19 11:24:54 IST 2026
[2026-06-19 11:24:54,967.967 INFO    ] ================================================
[2026-06-19 11:24:55,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:24:55
[2026-06-19 11:24:56,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:24:56,395.395 INFO    ] Initializing speech engine...
[2026-06-19 11:24:56,401.401 INFO    ] 2026-06-19 11:24:56
[2026-06-19 11:24:56,693.693 INFO    ] 2026-06-19 11:24:56
[2026-06-19 11:24:56,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:24:56,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:24:56,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:24:57,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:24:57,115.115 INFO    ] time= 19/06/2026 11:24:57
[2026-06-19 11:24:57,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:24:57,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:24:57,261.261 INFO    ] No existing commands found in stream
[2026-06-19 11:25:02,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:25:02,289.289 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 11:25:02,969.969 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:25:02,972.972 INFO    ] Checking for system updates...
[2026-06-19 11:25:03,008.008 INFO    ] 200
[2026-06-19 11:25:03,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:03,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:25:03,084.084 INFO    ] No update needed
[2026-06-19 11:25:03,087.087 INFO    ] Checking for camera pi updates...
[2026-06-19 11:25:03,121.121 INFO    ] 200
[2026-06-19 11:25:03,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:03,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:25:03,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:25:03,206.206 INFO    ] No camera update needed
[2026-06-19 11:25:03,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:25:03,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:25:03,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:25:03,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:25:05,268.268 INFO    ] ================================================
[2026-06-19 11:25:05,284.284 INFO    ] Launching Daemon at Fri Jun 19 11:25:05 IST 2026
[2026-06-19 11:25:05,295.295 INFO    ] ================================================
[2026-06-19 11:25:05,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:25:05
[2026-06-19 11:25:06,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:25:06,766.766 INFO    ] Initializing speech engine...
[2026-06-19 11:25:06,775.775 INFO    ] 2026-06-19 11:25:06
[2026-06-19 11:25:07,021.021 INFO    ] 2026-06-19 11:25:07
[2026-06-19 11:25:07,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:25:07,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:25:07,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:25:07,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:25:07,571.571 INFO    ] time= 19/06/2026 11:25:07
[2026-06-19 11:25:07,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:25:07,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:25:07,755.755 INFO    ] No existing commands found in stream
[2026-06-19 11:25:12,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:25:12,783.783 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 11:25:14,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:25:14,095.095 INFO    ] Checking for system updates...
[2026-06-19 11:25:14,130.130 INFO    ] 200
[2026-06-19 11:25:14,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:14,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:25:14,187.187 INFO    ] No update needed
[2026-06-19 11:25:14,190.190 INFO    ] Checking for camera pi updates...
[2026-06-19 11:25:14,223.223 INFO    ] 200
[2026-06-19 11:25:14,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:14,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:25:14,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:25:14,321.321 INFO    ] No camera update needed
[2026-06-19 11:25:14,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:25:14,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:25:14,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:25:14,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:25:16,378.378 INFO    ] ================================================
[2026-06-19 11:25:16,394.394 INFO    ] Launching Daemon at Fri Jun 19 11:25:16 IST 2026
[2026-06-19 11:25:16,405.405 INFO    ] ================================================
[2026-06-19 11:25:17,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:25:17
[2026-06-19 11:25:17,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:25:18,038.038 INFO    ] Initializing speech engine...
[2026-06-19 11:25:18,047.047 INFO    ] 2026-06-19 11:25:18
[2026-06-19 11:25:18,339.339 INFO    ] 2026-06-19 11:25:18
[2026-06-19 11:25:18,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:25:18,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:25:18,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:25:18,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:25:18,837.837 INFO    ] time= 19/06/2026 11:25:18
[2026-06-19 11:25:18,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:25:18,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:25:19,032.032 INFO    ] No existing commands found in stream
[2026-06-19 11:25:24,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:25:24,058.058 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 11:25:27,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:25:27,165.165 INFO    ] Checking for system updates...
[2026-06-19 11:25:27,205.205 INFO    ] 200
[2026-06-19 11:25:27,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:27,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:25:27,270.270 INFO    ] No update needed
[2026-06-19 11:25:27,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 11:25:27,309.309 INFO    ] 200
[2026-06-19 11:25:27,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:27,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:25:27,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:25:27,398.398 INFO    ] No camera update needed
[2026-06-19 11:25:27,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:25:27,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:25:27,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:25:27,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:25:29,452.452 INFO    ] ================================================
[2026-06-19 11:25:29,467.467 INFO    ] Launching Daemon at Fri Jun 19 11:25:29 IST 2026
[2026-06-19 11:25:29,477.477 INFO    ] ================================================
[2026-06-19 11:25:30,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:25:30
[2026-06-19 11:25:30,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:25:31,032.032 INFO    ] Initializing speech engine...
[2026-06-19 11:25:31,042.042 INFO    ] 2026-06-19 11:25:31
[2026-06-19 11:25:31,300.300 INFO    ] 2026-06-19 11:25:31
[2026-06-19 11:25:31,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:25:31,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:25:31,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:25:31,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:25:31,793.793 INFO    ] time= 19/06/2026 11:25:31
[2026-06-19 11:25:31,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:25:31,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:25:32,006.006 INFO    ] No existing commands found in stream
[2026-06-19 11:25:37,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:25:37,043.043 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 11:25:38,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:25:38,568.568 INFO    ] Checking for system updates...
[2026-06-19 11:25:38,605.605 INFO    ] 200
[2026-06-19 11:25:38,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:38,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:25:38,667.667 INFO    ] No update needed
[2026-06-19 11:25:38,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 11:25:38,708.708 INFO    ] 200
[2026-06-19 11:25:38,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:38,756.756 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:25:38,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:25:38,805.805 INFO    ] No camera update needed
[2026-06-19 11:25:38,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:25:38,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:25:38,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:25:38,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:25:40,865.865 INFO    ] ================================================
[2026-06-19 11:25:40,880.880 INFO    ] Launching Daemon at Fri Jun 19 11:25:40 IST 2026
[2026-06-19 11:25:40,891.891 INFO    ] ================================================
[2026-06-19 11:25:41,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:25:41
[2026-06-19 11:25:42,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:25:42,310.310 INFO    ] Initializing speech engine...
[2026-06-19 11:25:42,319.319 INFO    ] 2026-06-19 11:25:42
[2026-06-19 11:25:42,564.564 INFO    ] 2026-06-19 11:25:42
[2026-06-19 11:25:42,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:25:42,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:25:42,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:25:42,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:25:43,064.064 INFO    ] time= 19/06/2026 11:25:43
[2026-06-19 11:25:43,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:25:43,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:25:43,263.263 INFO    ] No existing commands found in stream
[2026-06-19 11:25:48,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:25:48,287.287 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 11:25:49,590.590 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:25:49,593.593 INFO    ] Checking for system updates...
[2026-06-19 11:25:49,629.629 INFO    ] 200
[2026-06-19 11:25:49,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:49,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:25:49,687.687 INFO    ] No update needed
[2026-06-19 11:25:49,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 11:25:49,727.727 INFO    ] 200
[2026-06-19 11:25:49,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:25:49,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:25:49,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:25:49,798.798 INFO    ] No camera update needed
[2026-06-19 11:25:49,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:25:49,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:25:49,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:25:49,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:25:51,853.853 INFO    ] ================================================
[2026-06-19 11:25:51,868.868 INFO    ] Launching Daemon at Fri Jun 19 11:25:51 IST 2026
[2026-06-19 11:25:51,879.879 INFO    ] ================================================
[2026-06-19 11:25:52,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:25:52
[2026-06-19 11:25:53,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:25:53,298.298 INFO    ] Initializing speech engine...
[2026-06-19 11:25:53,307.307 INFO    ] 2026-06-19 11:25:53
[2026-06-19 11:25:53,566.566 INFO    ] 2026-06-19 11:25:53
[2026-06-19 11:25:53,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:25:53,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:25:53,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:25:53,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:25:54,048.048 INFO    ] time= 19/06/2026 11:25:53
[2026-06-19 11:25:54,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:25:54,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:25:54,246.246 INFO    ] No existing commands found in stream
[2026-06-19 11:25:59,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:25:59,271.271 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 11:26:02,468.468 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:26:02,471.471 INFO    ] Checking for system updates...
[2026-06-19 11:26:02,516.516 INFO    ] 200
[2026-06-19 11:26:02,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:02,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:26:02,590.590 INFO    ] No update needed
[2026-06-19 11:26:02,593.593 INFO    ] Checking for camera pi updates...
[2026-06-19 11:26:02,638.638 INFO    ] 200
[2026-06-19 11:26:02,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:02,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:26:02,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:26:02,758.758 INFO    ] No camera update needed
[2026-06-19 11:26:02,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:26:02,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:26:02,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:26:02,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:26:04,823.823 INFO    ] ================================================
[2026-06-19 11:26:04,838.838 INFO    ] Launching Daemon at Fri Jun 19 11:26:04 IST 2026
[2026-06-19 11:26:04,849.849 INFO    ] ================================================
[2026-06-19 11:26:05,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:26:05
[2026-06-19 11:26:06,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:26:06,440.440 INFO    ] Initializing speech engine...
[2026-06-19 11:26:06,456.456 INFO    ] 2026-06-19 11:26:06
[2026-06-19 11:26:06,739.739 INFO    ] 2026-06-19 11:26:06
[2026-06-19 11:26:06,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:26:07,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:26:07,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:26:07,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:26:07,159.159 INFO    ] time= 19/06/2026 11:26:07
[2026-06-19 11:26:07,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:26:07,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:26:07,246.246 INFO    ] No existing commands found in stream
[2026-06-19 11:26:12,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:26:12,279.279 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 11:26:13,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:26:13,617.617 INFO    ] Checking for system updates...
[2026-06-19 11:26:13,653.653 INFO    ] 200
[2026-06-19 11:26:13,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:13,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:26:13,717.717 INFO    ] No update needed
[2026-06-19 11:26:13,720.720 INFO    ] Checking for camera pi updates...
[2026-06-19 11:26:13,757.757 INFO    ] 200
[2026-06-19 11:26:13,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:13,803.803 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:26:13,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:26:13,845.845 INFO    ] No camera update needed
[2026-06-19 11:26:13,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:26:13,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:26:13,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:26:13,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:26:15,900.900 INFO    ] ================================================
[2026-06-19 11:26:15,915.915 INFO    ] Launching Daemon at Fri Jun 19 11:26:15 IST 2026
[2026-06-19 11:26:15,926.926 INFO    ] ================================================
[2026-06-19 11:26:16,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:26:16
[2026-06-19 11:26:17,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:26:17,348.348 INFO    ] Initializing speech engine...
[2026-06-19 11:26:17,357.357 INFO    ] 2026-06-19 11:26:17
[2026-06-19 11:26:17,602.602 INFO    ] 2026-06-19 11:26:17
[2026-06-19 11:26:17,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:26:17,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:26:17,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:26:17,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:26:17,989.989 INFO    ] time= 19/06/2026 11:26:17
[2026-06-19 11:26:18,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:26:18,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:26:18,187.187 INFO    ] No existing commands found in stream
[2026-06-19 11:26:23,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:26:23,202.202 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 11:26:26,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:26:26,970.970 INFO    ] Checking for system updates...
[2026-06-19 11:26:27,005.005 INFO    ] 200
[2026-06-19 11:26:27,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:27,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:26:27,068.068 INFO    ] No update needed
[2026-06-19 11:26:27,071.071 INFO    ] Checking for camera pi updates...
[2026-06-19 11:26:27,104.104 INFO    ] 200
[2026-06-19 11:26:27,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:27,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:26:27,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:26:27,295.295 INFO    ] No camera update needed
[2026-06-19 11:26:27,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:26:27,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:26:27,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:26:27,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:26:29,351.351 INFO    ] ================================================
[2026-06-19 11:26:29,366.366 INFO    ] Launching Daemon at Fri Jun 19 11:26:29 IST 2026
[2026-06-19 11:26:29,376.376 INFO    ] ================================================
[2026-06-19 11:26:29,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:26:29
[2026-06-19 11:26:30,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:26:30,796.796 INFO    ] Initializing speech engine...
[2026-06-19 11:26:30,805.805 INFO    ] 2026-06-19 11:26:30
[2026-06-19 11:26:31,098.098 INFO    ] 2026-06-19 11:26:31
[2026-06-19 11:26:31,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:26:31,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:26:31,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:26:31,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:26:31,534.534 INFO    ] time= 19/06/2026 11:26:31
[2026-06-19 11:26:31,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:26:31,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:26:31,626.626 INFO    ] No existing commands found in stream
[2026-06-19 11:26:36,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:26:36,660.660 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 11:26:37,726.726 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:26:37,728.728 INFO    ] Checking for system updates...
[2026-06-19 11:26:37,767.767 INFO    ] 200
[2026-06-19 11:26:37,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:37,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:26:37,831.831 INFO    ] No update needed
[2026-06-19 11:26:37,833.833 INFO    ] Checking for camera pi updates...
[2026-06-19 11:26:37,870.870 INFO    ] 200
[2026-06-19 11:26:37,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:37,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:26:37,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:26:37,966.966 INFO    ] No camera update needed
[2026-06-19 11:26:37,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:26:37,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:26:37,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:26:37,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:26:40,020.020 INFO    ] ================================================
[2026-06-19 11:26:40,035.035 INFO    ] Launching Daemon at Fri Jun 19 11:26:40 IST 2026
[2026-06-19 11:26:40,046.046 INFO    ] ================================================
[2026-06-19 11:26:40,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:26:40
[2026-06-19 11:26:41,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:26:41,456.456 INFO    ] Initializing speech engine...
[2026-06-19 11:26:41,471.471 INFO    ] 2026-06-19 11:26:41
[2026-06-19 11:26:41,753.753 INFO    ] 2026-06-19 11:26:41
[2026-06-19 11:26:41,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:26:42,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:26:42,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:26:42,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:26:42,258.258 INFO    ] time= 19/06/2026 11:26:42
[2026-06-19 11:26:42,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:26:42,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:26:42,506.506 INFO    ] No existing commands found in stream
[2026-06-19 11:26:47,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:26:47,530.530 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 11:26:51,251.251 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:26:51,253.253 INFO    ] Checking for system updates...
[2026-06-19 11:26:51,296.296 INFO    ] 200
[2026-06-19 11:26:51,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:51,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:26:51,358.358 INFO    ] No update needed
[2026-06-19 11:26:51,360.360 INFO    ] Checking for camera pi updates...
[2026-06-19 11:26:51,397.397 INFO    ] 200
[2026-06-19 11:26:51,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:26:51,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:26:51,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:26:51,490.490 INFO    ] No camera update needed
[2026-06-19 11:26:51,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:26:51,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:26:51,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:26:51,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:26:53,547.547 INFO    ] ================================================
[2026-06-19 11:26:53,562.562 INFO    ] Launching Daemon at Fri Jun 19 11:26:53 IST 2026
[2026-06-19 11:26:53,573.573 INFO    ] ================================================
[2026-06-19 11:26:54,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:26:54
[2026-06-19 11:26:54,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:26:55,207.207 INFO    ] Initializing speech engine...
[2026-06-19 11:26:55,220.220 INFO    ] 2026-06-19 11:26:55
[2026-06-19 11:26:55,514.514 INFO    ] 2026-06-19 11:26:55
[2026-06-19 11:26:55,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:26:55,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:26:55,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:26:55,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:26:56,002.002 INFO    ] time= 19/06/2026 11:26:55
[2026-06-19 11:26:56,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:26:56,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:26:56,220.220 INFO    ] No existing commands found in stream
[2026-06-19 11:27:01,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:27:01,238.238 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 11:27:03,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:27:03,967.967 INFO    ] Checking for system updates...
[2026-06-19 11:27:04,009.009 INFO    ] 200
[2026-06-19 11:27:04,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:04,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:27:04,069.069 INFO    ] No update needed
[2026-06-19 11:27:04,072.072 INFO    ] Checking for camera pi updates...
[2026-06-19 11:27:04,111.111 INFO    ] 200
[2026-06-19 11:27:04,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:04,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:27:04,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:27:04,200.200 INFO    ] No camera update needed
[2026-06-19 11:27:04,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:27:04,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:27:04,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:27:04,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:27:06,261.261 INFO    ] ================================================
[2026-06-19 11:27:06,279.279 INFO    ] Launching Daemon at Fri Jun 19 11:27:06 IST 2026
[2026-06-19 11:27:06,291.291 INFO    ] ================================================
[2026-06-19 11:27:06,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:27:06
[2026-06-19 11:27:07,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:27:07,938.938 INFO    ] Initializing speech engine...
[2026-06-19 11:27:07,950.950 INFO    ] 2026-06-19 11:27:07
[2026-06-19 11:27:08,235.235 INFO    ] 2026-06-19 11:27:08
[2026-06-19 11:27:08,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:27:08,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:27:08,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:27:08,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:27:08,780.780 INFO    ] time= 19/06/2026 11:27:08
[2026-06-19 11:27:08,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:27:08,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:27:08,922.922 INFO    ] No existing commands found in stream
[2026-06-19 11:27:13,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:27:13,955.955 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 11:27:18,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:27:18,085.085 INFO    ] Checking for system updates...
[2026-06-19 11:27:18,127.127 INFO    ] 200
[2026-06-19 11:27:18,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:18,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:27:18,195.195 INFO    ] No update needed
[2026-06-19 11:27:18,198.198 INFO    ] Checking for camera pi updates...
[2026-06-19 11:27:18,236.236 INFO    ] 200
[2026-06-19 11:27:18,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:18,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:27:18,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:27:18,332.332 INFO    ] No camera update needed
[2026-06-19 11:27:18,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:27:18,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:27:18,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:27:18,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:27:20,392.392 INFO    ] ================================================
[2026-06-19 11:27:20,408.408 INFO    ] Launching Daemon at Fri Jun 19 11:27:20 IST 2026
[2026-06-19 11:27:20,418.418 INFO    ] ================================================
[2026-06-19 11:27:20,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:27:20
[2026-06-19 11:27:21,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:27:21,829.829 INFO    ] Initializing speech engine...
[2026-06-19 11:27:21,837.837 INFO    ] 2026-06-19 11:27:21
[2026-06-19 11:27:22,142.142 INFO    ] 2026-06-19 11:27:22
[2026-06-19 11:27:22,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:27:22,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:27:22,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:27:22,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:27:22,572.572 INFO    ] time= 19/06/2026 11:27:22
[2026-06-19 11:27:22,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:27:22,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:27:22,741.741 INFO    ] No existing commands found in stream
[2026-06-19 11:27:27,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:27:27,764.764 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 11:27:30,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:27:30,576.576 INFO    ] Checking for system updates...
[2026-06-19 11:27:30,614.614 INFO    ] 200
[2026-06-19 11:27:30,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:30,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:27:30,680.680 INFO    ] No update needed
[2026-06-19 11:27:30,684.684 INFO    ] Checking for camera pi updates...
[2026-06-19 11:27:30,723.723 INFO    ] 200
[2026-06-19 11:27:30,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:30,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:27:30,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:27:30,825.825 INFO    ] No camera update needed
[2026-06-19 11:27:30,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:27:30,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:27:30,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:27:30,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:27:32,884.884 INFO    ] ================================================
[2026-06-19 11:27:32,900.900 INFO    ] Launching Daemon at Fri Jun 19 11:27:32 IST 2026
[2026-06-19 11:27:32,912.912 INFO    ] ================================================
[2026-06-19 11:27:33,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:27:33
[2026-06-19 11:27:34,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:27:34,335.335 INFO    ] Initializing speech engine...
[2026-06-19 11:27:34,348.348 INFO    ] 2026-06-19 11:27:34
[2026-06-19 11:27:34,615.615 INFO    ] 2026-06-19 11:27:34
[2026-06-19 11:27:34,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:27:34,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:27:34,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:27:35,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:27:35,075.075 INFO    ] time= 19/06/2026 11:27:35
[2026-06-19 11:27:35,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:27:35,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:27:35,321.321 INFO    ] No existing commands found in stream
[2026-06-19 11:27:40,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:27:40,351.351 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 11:27:43,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:27:43,598.598 INFO    ] Checking for system updates...
[2026-06-19 11:27:43,633.633 INFO    ] 200
[2026-06-19 11:27:43,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:43,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:27:43,692.692 INFO    ] No update needed
[2026-06-19 11:27:43,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 11:27:43,728.728 INFO    ] 200
[2026-06-19 11:27:43,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:43,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:27:43,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:27:43,813.813 INFO    ] No camera update needed
[2026-06-19 11:27:43,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:27:43,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:27:43,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:27:43,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:27:45,870.870 INFO    ] ================================================
[2026-06-19 11:27:45,885.885 INFO    ] Launching Daemon at Fri Jun 19 11:27:45 IST 2026
[2026-06-19 11:27:45,897.897 INFO    ] ================================================
[2026-06-19 11:27:46,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:27:46
[2026-06-19 11:27:47,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:27:47,310.310 INFO    ] Initializing speech engine...
[2026-06-19 11:27:47,317.317 INFO    ] 2026-06-19 11:27:47
[2026-06-19 11:27:47,610.610 INFO    ] 2026-06-19 11:27:47
[2026-06-19 11:27:47,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:27:47,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:27:47,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:27:48,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:27:48,028.028 INFO    ] time= 19/06/2026 11:27:48
[2026-06-19 11:27:48,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:27:48,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:27:48,194.194 INFO    ] No existing commands found in stream
[2026-06-19 11:27:53,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:27:53,221.221 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 11:27:56,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:27:56,401.401 INFO    ] Checking for system updates...
[2026-06-19 11:27:56,440.440 INFO    ] 200
[2026-06-19 11:27:56,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:56,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:27:56,498.498 INFO    ] No update needed
[2026-06-19 11:27:56,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 11:27:56,534.534 INFO    ] 200
[2026-06-19 11:27:56,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:27:56,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:27:56,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:27:56,626.626 INFO    ] No camera update needed
[2026-06-19 11:27:56,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:27:56,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:27:56,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:27:56,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:27:58,682.682 INFO    ] ================================================
[2026-06-19 11:27:58,698.698 INFO    ] Launching Daemon at Fri Jun 19 11:27:58 IST 2026
[2026-06-19 11:27:58,709.709 INFO    ] ================================================
[2026-06-19 11:27:59,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:27:59
[2026-06-19 11:28:00,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:28:00,315.315 INFO    ] Initializing speech engine...
[2026-06-19 11:28:00,327.327 INFO    ] 2026-06-19 11:28:00
[2026-06-19 11:28:00,597.597 INFO    ] 2026-06-19 11:28:00
[2026-06-19 11:28:00,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:28:00,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:28:00,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:28:01,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:28:01,151.151 INFO    ] time= 19/06/2026 11:28:01
[2026-06-19 11:28:01,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:28:01,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:28:01,334.334 INFO    ] No existing commands found in stream
[2026-06-19 11:28:06,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:28:06,361.361 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 11:28:08,229.229 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:28:08,231.231 INFO    ] Checking for system updates...
[2026-06-19 11:28:08,267.267 INFO    ] 200
[2026-06-19 11:28:08,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:28:08,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:28:08,333.333 INFO    ] No update needed
[2026-06-19 11:28:08,335.335 INFO    ] Checking for camera pi updates...
[2026-06-19 11:28:08,373.373 INFO    ] 200
[2026-06-19 11:28:08,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:28:08,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:28:08,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:28:08,462.462 INFO    ] No camera update needed
[2026-06-19 11:28:08,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:28:08,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:28:08,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:28:08,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:28:10,520.520 INFO    ] ================================================
[2026-06-19 11:28:10,536.536 INFO    ] Launching Daemon at Fri Jun 19 11:28:10 IST 2026
[2026-06-19 11:28:10,547.547 INFO    ] ================================================
[2026-06-19 11:28:11,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:28:11
[2026-06-19 11:28:11,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:28:12,009.009 INFO    ] Initializing speech engine...
[2026-06-19 11:28:12,030.030 INFO    ] 2026-06-19 11:28:12
[2026-06-19 11:28:12,313.313 INFO    ] 2026-06-19 11:28:12
[2026-06-19 11:28:12,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:28:12,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:28:12,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:28:12,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:28:12,831.831 INFO    ] time= 19/06/2026 11:28:12
[2026-06-19 11:28:12,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:28:12,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:28:13,091.091 INFO    ] No existing commands found in stream
[2026-06-19 11:28:18,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:28:18,111.111 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 11:28:21,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:28:21,845.845 INFO    ] Checking for system updates...
[2026-06-19 11:28:21,882.882 INFO    ] 200
[2026-06-19 11:28:21,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:28:21,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:28:21,952.952 INFO    ] No update needed
[2026-06-19 11:28:21,955.955 INFO    ] Checking for camera pi updates...
[2026-06-19 11:28:21,989.989 INFO    ] 200
[2026-06-19 11:28:21,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:28:22,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:28:22,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:28:22,082.082 INFO    ] No camera update needed
[2026-06-19 11:28:22,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:28:22,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:28:22,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:28:22,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:28:24,139.139 INFO    ] ================================================
[2026-06-19 11:28:24,155.155 INFO    ] Launching Daemon at Fri Jun 19 11:28:24 IST 2026
[2026-06-19 11:28:24,166.166 INFO    ] ================================================
[2026-06-19 11:28:24,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:28:24
[2026-06-19 11:28:25,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:28:25,637.637 INFO    ] Initializing speech engine...
[2026-06-19 11:28:25,644.644 INFO    ] 2026-06-19 11:28:25
[2026-06-19 11:28:25,905.905 INFO    ] 2026-06-19 11:28:25
[2026-06-19 11:28:25,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:28:26,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:28:26,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:28:26,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:28:26,449.449 INFO    ] time= 19/06/2026 11:28:26
[2026-06-19 11:28:26,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:28:26,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:28:26,604.604 INFO    ] No existing commands found in stream
[2026-06-19 11:28:31,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:28:31,627.627 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 11:28:35,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:28:35,888.888 INFO    ] Checking for system updates...
[2026-06-19 11:28:35,923.923 INFO    ] 200
[2026-06-19 11:28:35,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:28:35,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:28:35,987.987 INFO    ] No update needed
[2026-06-19 11:28:35,990.990 INFO    ] Checking for camera pi updates...
[2026-06-19 11:28:36,024.024 INFO    ] 200
[2026-06-19 11:28:36,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:28:36,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:28:36,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:28:36,117.117 INFO    ] No camera update needed
[2026-06-19 11:28:36,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:28:36,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:28:36,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:28:36,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:28:38,174.174 INFO    ] ================================================
[2026-06-19 11:28:38,189.189 INFO    ] Launching Daemon at Fri Jun 19 11:28:38 IST 2026
[2026-06-19 11:28:38,200.200 INFO    ] ================================================
[2026-06-19 11:28:38,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:28:38
[2026-06-19 11:28:39,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:28:39,831.831 INFO    ] Initializing speech engine...
[2026-06-19 11:28:39,843.843 INFO    ] 2026-06-19 11:28:39
[2026-06-19 11:28:40,129.129 INFO    ] 2026-06-19 11:28:40
[2026-06-19 11:28:40,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:28:40,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:28:40,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:28:40,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:28:40,661.661 INFO    ] time= 19/06/2026 11:28:40
[2026-06-19 11:28:40,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:28:40,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:28:40,863.863 INFO    ] No existing commands found in stream
[2026-06-19 11:28:45,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:28:45,902.902 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 11:28:50,272.272 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:28:50,276.276 INFO    ] Checking for system updates...
[2026-06-19 11:28:50,313.313 INFO    ] 200
[2026-06-19 11:28:50,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:28:50,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:28:50,374.374 INFO    ] No update needed
[2026-06-19 11:28:50,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 11:28:50,416.416 INFO    ] 200
[2026-06-19 11:28:50,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:28:50,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:28:50,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:28:50,511.511 INFO    ] No camera update needed
[2026-06-19 11:28:50,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:28:50,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:28:50,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:28:50,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:28:52,570.570 INFO    ] ================================================
[2026-06-19 11:28:52,587.587 INFO    ] Launching Daemon at Fri Jun 19 11:28:52 IST 2026
[2026-06-19 11:28:52,598.598 INFO    ] ================================================
[2026-06-19 11:28:53,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:28:53
[2026-06-19 11:28:53,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:28:54,007.007 INFO    ] Initializing speech engine...
[2026-06-19 11:28:54,019.019 INFO    ] 2026-06-19 11:28:54
[2026-06-19 11:28:54,284.284 INFO    ] 2026-06-19 11:28:54
[2026-06-19 11:28:54,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:28:54,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:28:54,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:28:54,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:28:54,792.792 INFO    ] time= 19/06/2026 11:28:54
[2026-06-19 11:28:54,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:28:54,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:28:54,999.999 INFO    ] No existing commands found in stream
[2026-06-19 11:29:00,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:29:00,027.027 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 11:29:02,152.152 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:29:02,158.158 INFO    ] Checking for system updates...
[2026-06-19 11:29:02,206.206 INFO    ] 200
[2026-06-19 11:29:02,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:02,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:29:02,277.277 INFO    ] No update needed
[2026-06-19 11:29:02,280.280 INFO    ] Checking for camera pi updates...
[2026-06-19 11:29:02,320.320 INFO    ] 200
[2026-06-19 11:29:02,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:02,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:29:02,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:29:02,406.406 INFO    ] No camera update needed
[2026-06-19 11:29:02,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:29:02,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:29:02,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:29:02,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:29:04,477.477 INFO    ] ================================================
[2026-06-19 11:29:04,492.492 INFO    ] Launching Daemon at Fri Jun 19 11:29:04 IST 2026
[2026-06-19 11:29:04,503.503 INFO    ] ================================================
[2026-06-19 11:29:05,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:29:05
[2026-06-19 11:29:05,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:29:06,025.025 INFO    ] Initializing speech engine...
[2026-06-19 11:29:06,034.034 INFO    ] 2026-06-19 11:29:06
[2026-06-19 11:29:06,288.288 INFO    ] 2026-06-19 11:29:06
[2026-06-19 11:29:06,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:29:06,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:29:06,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:29:06,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:29:06,773.773 INFO    ] time= 19/06/2026 11:29:06
[2026-06-19 11:29:06,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:29:06,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:29:07,014.014 INFO    ] No existing commands found in stream
[2026-06-19 11:29:12,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:29:12,032.032 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 11:29:13,185.185 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:29:13,188.188 INFO    ] Checking for system updates...
[2026-06-19 11:29:13,224.224 INFO    ] 200
[2026-06-19 11:29:13,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:13,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:29:13,282.282 INFO    ] No update needed
[2026-06-19 11:29:13,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 11:29:13,319.319 INFO    ] 200
[2026-06-19 11:29:13,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:13,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:29:13,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:29:13,408.408 INFO    ] No camera update needed
[2026-06-19 11:29:13,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:29:13,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:29:13,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:29:13,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:29:15,464.464 INFO    ] ================================================
[2026-06-19 11:29:15,480.480 INFO    ] Launching Daemon at Fri Jun 19 11:29:15 IST 2026
[2026-06-19 11:29:15,490.490 INFO    ] ================================================
[2026-06-19 11:29:16,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:29:16
[2026-06-19 11:29:16,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:29:16,895.895 INFO    ] Initializing speech engine...
[2026-06-19 11:29:16,909.909 INFO    ] 2026-06-19 11:29:16
[2026-06-19 11:29:17,178.178 INFO    ] 2026-06-19 11:29:17
[2026-06-19 11:29:17,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:29:17,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:29:17,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:29:17,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:29:17,636.636 INFO    ] time= 19/06/2026 11:29:17
[2026-06-19 11:29:17,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:29:17,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:29:17,889.889 INFO    ] No existing commands found in stream
[2026-06-19 11:29:22,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:29:22,917.917 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 11:29:23,843.843 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:29:23,846.846 INFO    ] Checking for system updates...
[2026-06-19 11:29:23,883.883 INFO    ] 200
[2026-06-19 11:29:23,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:23,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:29:23,941.941 INFO    ] No update needed
[2026-06-19 11:29:23,943.943 INFO    ] Checking for camera pi updates...
[2026-06-19 11:29:23,977.977 INFO    ] 200
[2026-06-19 11:29:23,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:24,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:29:24,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:29:24,064.064 INFO    ] No camera update needed
[2026-06-19 11:29:24,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:29:24,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:29:24,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:29:24,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:29:26,120.120 INFO    ] ================================================
[2026-06-19 11:29:26,135.135 INFO    ] Launching Daemon at Fri Jun 19 11:29:26 IST 2026
[2026-06-19 11:29:26,146.146 INFO    ] ================================================
[2026-06-19 11:29:26,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:29:26
[2026-06-19 11:29:27,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:29:27,557.557 INFO    ] Initializing speech engine...
[2026-06-19 11:29:27,580.580 INFO    ] 2026-06-19 11:29:27
[2026-06-19 11:29:27,853.853 INFO    ] 2026-06-19 11:29:27
[2026-06-19 11:29:27,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:29:28,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:29:28,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:29:28,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:29:28,274.274 INFO    ] time= 19/06/2026 11:29:28
[2026-06-19 11:29:28,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:29:28,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:29:28,456.456 INFO    ] No existing commands found in stream
[2026-06-19 11:29:33,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:29:33,484.484 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 11:29:37,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:29:37,605.605 INFO    ] Checking for system updates...
[2026-06-19 11:29:37,647.647 INFO    ] 200
[2026-06-19 11:29:37,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:37,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:29:37,711.711 INFO    ] No update needed
[2026-06-19 11:29:37,713.713 INFO    ] Checking for camera pi updates...
[2026-06-19 11:29:37,747.747 INFO    ] 200
[2026-06-19 11:29:37,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:37,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:29:37,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:29:37,835.835 INFO    ] No camera update needed
[2026-06-19 11:29:37,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:29:37,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:29:37,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:29:37,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:29:39,890.890 INFO    ] ================================================
[2026-06-19 11:29:39,905.905 INFO    ] Launching Daemon at Fri Jun 19 11:29:39 IST 2026
[2026-06-19 11:29:39,916.916 INFO    ] ================================================
[2026-06-19 11:29:40,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:29:40
[2026-06-19 11:29:41,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:29:41,342.342 INFO    ] Initializing speech engine...
[2026-06-19 11:29:41,367.367 INFO    ] 2026-06-19 11:29:41
[2026-06-19 11:29:41,638.638 INFO    ] 2026-06-19 11:29:41
[2026-06-19 11:29:41,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:29:41,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:29:41,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:29:42,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:29:42,052.052 INFO    ] time= 19/06/2026 11:29:42
[2026-06-19 11:29:42,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:29:42,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:29:42,183.183 INFO    ] No existing commands found in stream
[2026-06-19 11:29:47,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:29:47,212.212 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 11:29:49,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:29:49,578.578 INFO    ] Checking for system updates...
[2026-06-19 11:29:49,614.614 INFO    ] 200
[2026-06-19 11:29:49,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:49,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:29:49,672.672 INFO    ] No update needed
[2026-06-19 11:29:49,674.674 INFO    ] Checking for camera pi updates...
[2026-06-19 11:29:49,710.710 INFO    ] 200
[2026-06-19 11:29:49,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:29:49,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:29:49,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:29:49,783.783 INFO    ] No camera update needed
[2026-06-19 11:29:49,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:29:49,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:29:49,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:29:49,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:29:51,839.839 INFO    ] ================================================
[2026-06-19 11:29:51,854.854 INFO    ] Launching Daemon at Fri Jun 19 11:29:51 IST 2026
[2026-06-19 11:29:51,864.864 INFO    ] ================================================
[2026-06-19 11:29:52,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:29:52
[2026-06-19 11:29:53,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:29:53,296.296 INFO    ] Initializing speech engine...
[2026-06-19 11:29:53,305.305 INFO    ] 2026-06-19 11:29:53
[2026-06-19 11:29:53,555.555 INFO    ] 2026-06-19 11:29:53
[2026-06-19 11:29:53,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:29:53,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:29:53,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:29:54,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:29:54,070.070 INFO    ] time= 19/06/2026 11:29:54
[2026-06-19 11:29:54,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:29:54,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:29:54,301.301 INFO    ] No existing commands found in stream
[2026-06-19 11:29:59,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:29:59,324.324 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 11:30:02,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:30:02,495.495 INFO    ] Checking for system updates...
[2026-06-19 11:30:02,580.580 INFO    ] 200
[2026-06-19 11:30:02,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:02,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:30:02,666.666 INFO    ] No update needed
[2026-06-19 11:30:02,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 11:30:02,740.740 INFO    ] 200
[2026-06-19 11:30:02,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:02,813.813 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:30:02,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:30:02,855.855 INFO    ] No camera update needed
[2026-06-19 11:30:02,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:30:02,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:30:02,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:30:02,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:30:04,925.925 INFO    ] ================================================
[2026-06-19 11:30:04,941.941 INFO    ] Launching Daemon at Fri Jun 19 11:30:04 IST 2026
[2026-06-19 11:30:04,952.952 INFO    ] ================================================
[2026-06-19 11:30:05,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:30:05
[2026-06-19 11:30:06,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:30:06,435.435 INFO    ] Initializing speech engine...
[2026-06-19 11:30:06,445.445 INFO    ] 2026-06-19 11:30:06
[2026-06-19 11:30:06,709.709 INFO    ] 2026-06-19 11:30:06
[2026-06-19 11:30:06,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:30:06,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:30:06,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:30:07,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:30:07,116.116 INFO    ] time= 19/06/2026 11:30:07
[2026-06-19 11:30:07,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:30:07,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:30:07,275.275 INFO    ] No existing commands found in stream
[2026-06-19 11:30:12,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:30:12,303.303 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 11:30:16,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:30:16,698.698 INFO    ] Checking for system updates...
[2026-06-19 11:30:16,735.735 INFO    ] 200
[2026-06-19 11:30:16,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:16,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:30:16,793.793 INFO    ] No update needed
[2026-06-19 11:30:16,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 11:30:16,830.830 INFO    ] 200
[2026-06-19 11:30:16,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:16,874.874 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:30:16,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:30:16,919.919 INFO    ] No camera update needed
[2026-06-19 11:30:16,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:30:16,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:30:16,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:30:16,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:30:18,977.977 INFO    ] ================================================
[2026-06-19 11:30:18,992.992 INFO    ] Launching Daemon at Fri Jun 19 11:30:18 IST 2026
[2026-06-19 11:30:19,003.003 INFO    ] ================================================
[2026-06-19 11:30:19,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:30:19
[2026-06-19 11:30:20,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:30:20,563.563 INFO    ] Initializing speech engine...
[2026-06-19 11:30:20,569.569 INFO    ] 2026-06-19 11:30:20
[2026-06-19 11:30:20,831.831 INFO    ] 2026-06-19 11:30:20
[2026-06-19 11:30:20,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:30:21,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:30:21,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:30:21,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:30:21,326.326 INFO    ] time= 19/06/2026 11:30:21
[2026-06-19 11:30:21,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:30:21,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:30:21,515.515 INFO    ] No existing commands found in stream
[2026-06-19 11:30:26,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:30:26,543.543 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 11:30:29,979.979 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:30:29,981.981 INFO    ] Checking for system updates...
[2026-06-19 11:30:30,017.017 INFO    ] 200
[2026-06-19 11:30:30,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:30,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:30:30,075.075 INFO    ] No update needed
[2026-06-19 11:30:30,077.077 INFO    ] Checking for camera pi updates...
[2026-06-19 11:30:30,111.111 INFO    ] 200
[2026-06-19 11:30:30,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:30,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:30:30,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:30:30,199.199 INFO    ] No camera update needed
[2026-06-19 11:30:30,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:30:30,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:30:30,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:30:30,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:30:32,259.259 INFO    ] ================================================
[2026-06-19 11:30:32,276.276 INFO    ] Launching Daemon at Fri Jun 19 11:30:32 IST 2026
[2026-06-19 11:30:32,290.290 INFO    ] ================================================
[2026-06-19 11:30:32,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:30:32
[2026-06-19 11:30:33,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:30:33,775.775 INFO    ] Initializing speech engine...
[2026-06-19 11:30:33,792.792 INFO    ] 2026-06-19 11:30:33
[2026-06-19 11:30:34,066.066 INFO    ] 2026-06-19 11:30:34
[2026-06-19 11:30:34,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:30:34,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:30:34,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:30:34,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:30:34,556.556 INFO    ] time= 19/06/2026 11:30:34
[2026-06-19 11:30:34,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:30:34,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:30:34,781.781 INFO    ] No existing commands found in stream
[2026-06-19 11:30:39,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:30:39,809.809 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 11:30:41,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:30:41,727.727 INFO    ] Checking for system updates...
[2026-06-19 11:30:41,763.763 INFO    ] 200
[2026-06-19 11:30:41,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:41,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:30:41,820.820 INFO    ] No update needed
[2026-06-19 11:30:41,822.822 INFO    ] Checking for camera pi updates...
[2026-06-19 11:30:41,859.859 INFO    ] 200
[2026-06-19 11:30:41,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:41,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:30:42,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:30:42,049.049 INFO    ] No camera update needed
[2026-06-19 11:30:42,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:30:42,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:30:42,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:30:42,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:30:44,104.104 INFO    ] ================================================
[2026-06-19 11:30:44,119.119 INFO    ] Launching Daemon at Fri Jun 19 11:30:44 IST 2026
[2026-06-19 11:30:44,130.130 INFO    ] ================================================
[2026-06-19 11:30:44,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:30:44
[2026-06-19 11:30:45,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:30:45,552.552 INFO    ] Initializing speech engine...
[2026-06-19 11:30:45,561.561 INFO    ] 2026-06-19 11:30:45
[2026-06-19 11:30:45,810.810 INFO    ] 2026-06-19 11:30:45
[2026-06-19 11:30:45,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:30:46,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:30:46,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:30:46,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:30:46,294.294 INFO    ] time= 19/06/2026 11:30:46
[2026-06-19 11:30:46,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:30:46,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:30:46,534.534 INFO    ] No existing commands found in stream
[2026-06-19 11:30:51,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:30:51,550.550 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 11:30:52,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:30:52,246.246 INFO    ] Checking for system updates...
[2026-06-19 11:30:52,283.283 INFO    ] 200
[2026-06-19 11:30:52,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:52,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:30:52,341.341 INFO    ] No update needed
[2026-06-19 11:30:52,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 11:30:52,378.378 INFO    ] 200
[2026-06-19 11:30:52,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:30:52,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:30:52,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:30:52,463.463 INFO    ] No camera update needed
[2026-06-19 11:30:52,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:30:52,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:30:52,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:30:52,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:30:54,518.518 INFO    ] ================================================
[2026-06-19 11:30:54,533.533 INFO    ] Launching Daemon at Fri Jun 19 11:30:54 IST 2026
[2026-06-19 11:30:54,544.544 INFO    ] ================================================
[2026-06-19 11:30:55,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:30:55
[2026-06-19 11:30:55,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:30:55,947.947 INFO    ] Initializing speech engine...
[2026-06-19 11:30:55,960.960 INFO    ] 2026-06-19 11:30:55
[2026-06-19 11:30:56,222.222 INFO    ] 2026-06-19 11:30:56
[2026-06-19 11:30:56,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:30:56,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:30:56,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:30:56,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:30:56,717.717 INFO    ] time= 19/06/2026 11:30:56
[2026-06-19 11:30:56,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:30:56,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:30:56,918.918 INFO    ] No existing commands found in stream
[2026-06-19 11:31:01,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:31:01,946.946 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 11:31:03,688.688 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:31:03,692.692 INFO    ] Checking for system updates...
[2026-06-19 11:31:03,738.738 INFO    ] 200
[2026-06-19 11:31:03,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:03,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:31:03,795.795 INFO    ] No update needed
[2026-06-19 11:31:03,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 11:31:03,831.831 INFO    ] 200
[2026-06-19 11:31:03,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:03,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:31:03,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:31:03,903.903 INFO    ] No camera update needed
[2026-06-19 11:31:03,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:31:03,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:31:03,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:31:03,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:31:05,962.962 INFO    ] ================================================
[2026-06-19 11:31:05,977.977 INFO    ] Launching Daemon at Fri Jun 19 11:31:05 IST 2026
[2026-06-19 11:31:05,987.987 INFO    ] ================================================
[2026-06-19 11:31:06,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:31:06
[2026-06-19 11:31:07,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:31:07,440.440 INFO    ] Initializing speech engine...
[2026-06-19 11:31:07,450.450 INFO    ] 2026-06-19 11:31:07
[2026-06-19 11:31:07,706.706 INFO    ] 2026-06-19 11:31:07
[2026-06-19 11:31:07,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:31:07,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:31:08,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:31:08,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:31:08,181.181 INFO    ] time= 19/06/2026 11:31:08
[2026-06-19 11:31:08,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:31:08,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:31:08,433.433 INFO    ] No existing commands found in stream
[2026-06-19 11:31:13,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:31:13,461.461 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 11:31:17,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:31:17,663.663 INFO    ] Checking for system updates...
[2026-06-19 11:31:17,699.699 INFO    ] 200
[2026-06-19 11:31:17,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:17,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:31:17,763.763 INFO    ] No update needed
[2026-06-19 11:31:17,766.766 INFO    ] Checking for camera pi updates...
[2026-06-19 11:31:17,803.803 INFO    ] 200
[2026-06-19 11:31:17,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:17,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:31:17,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:31:17,887.887 INFO    ] No camera update needed
[2026-06-19 11:31:17,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:31:17,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:31:17,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:31:17,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:31:19,944.944 INFO    ] ================================================
[2026-06-19 11:31:19,960.960 INFO    ] Launching Daemon at Fri Jun 19 11:31:19 IST 2026
[2026-06-19 11:31:19,971.971 INFO    ] ================================================
[2026-06-19 11:31:20,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:31:20
[2026-06-19 11:31:21,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:31:21,568.568 INFO    ] Initializing speech engine...
[2026-06-19 11:31:21,574.574 INFO    ] 2026-06-19 11:31:21
[2026-06-19 11:31:21,823.823 INFO    ] 2026-06-19 11:31:21
[2026-06-19 11:31:21,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:31:22,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:31:22,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:31:22,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:31:22,303.303 INFO    ] time= 19/06/2026 11:31:22
[2026-06-19 11:31:22,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:31:22,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:31:22,557.557 INFO    ] No existing commands found in stream
[2026-06-19 11:31:27,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:31:27,574.574 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 11:31:31,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:31:31,278.278 INFO    ] Checking for system updates...
[2026-06-19 11:31:31,314.314 INFO    ] 200
[2026-06-19 11:31:31,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:31,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:31:31,372.372 INFO    ] No update needed
[2026-06-19 11:31:31,376.376 INFO    ] Checking for camera pi updates...
[2026-06-19 11:31:31,414.414 INFO    ] 200
[2026-06-19 11:31:31,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:31,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:31:31,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:31:31,491.491 INFO    ] No camera update needed
[2026-06-19 11:31:31,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:31:31,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:31:31,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:31:31,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:31:33,548.548 INFO    ] ================================================
[2026-06-19 11:31:33,563.563 INFO    ] Launching Daemon at Fri Jun 19 11:31:33 IST 2026
[2026-06-19 11:31:33,575.575 INFO    ] ================================================
[2026-06-19 11:31:34,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:31:34
[2026-06-19 11:31:34,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:31:34,997.997 INFO    ] Initializing speech engine...
[2026-06-19 11:31:35,010.010 INFO    ] 2026-06-19 11:31:34
[2026-06-19 11:31:35,273.273 INFO    ] 2026-06-19 11:31:35
[2026-06-19 11:31:35,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:31:35,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:31:35,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:31:35,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:31:35,747.747 INFO    ] time= 19/06/2026 11:31:35
[2026-06-19 11:31:35,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:31:35,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:31:35,972.972 INFO    ] No existing commands found in stream
[2026-06-19 11:31:40,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:31:40,999.999 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 11:31:43,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:31:43,257.257 INFO    ] Checking for system updates...
[2026-06-19 11:31:43,294.294 INFO    ] 200
[2026-06-19 11:31:43,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:43,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:31:43,352.352 INFO    ] No update needed
[2026-06-19 11:31:43,354.354 INFO    ] Checking for camera pi updates...
[2026-06-19 11:31:43,390.390 INFO    ] 200
[2026-06-19 11:31:43,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:43,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:31:43,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:31:43,484.484 INFO    ] No camera update needed
[2026-06-19 11:31:43,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:31:43,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:31:43,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:31:43,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:31:45,540.540 INFO    ] ================================================
[2026-06-19 11:31:45,557.557 INFO    ] Launching Daemon at Fri Jun 19 11:31:45 IST 2026
[2026-06-19 11:31:45,568.568 INFO    ] ================================================
[2026-06-19 11:31:46,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:31:46
[2026-06-19 11:31:46,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:31:47,009.009 INFO    ] Initializing speech engine...
[2026-06-19 11:31:47,017.017 INFO    ] 2026-06-19 11:31:47
[2026-06-19 11:31:47,318.318 INFO    ] 2026-06-19 11:31:47
[2026-06-19 11:31:47,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:31:47,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:31:47,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:31:47,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:31:47,743.743 INFO    ] time= 19/06/2026 11:31:47
[2026-06-19 11:31:47,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:31:47,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:31:47,940.940 INFO    ] No existing commands found in stream
[2026-06-19 11:31:52,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:31:52,970.970 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 11:31:54,970.970 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:31:54,973.973 INFO    ] Checking for system updates...
[2026-06-19 11:31:55,009.009 INFO    ] 200
[2026-06-19 11:31:55,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:55,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:31:55,068.068 INFO    ] No update needed
[2026-06-19 11:31:55,071.071 INFO    ] Checking for camera pi updates...
[2026-06-19 11:31:55,109.109 INFO    ] 200
[2026-06-19 11:31:55,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:31:55,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:31:55,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:31:55,202.202 INFO    ] No camera update needed
[2026-06-19 11:31:55,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:31:55,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:31:55,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:31:55,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:31:57,259.259 INFO    ] ================================================
[2026-06-19 11:31:57,276.276 INFO    ] Launching Daemon at Fri Jun 19 11:31:57 IST 2026
[2026-06-19 11:31:57,286.286 INFO    ] ================================================
[2026-06-19 11:31:57,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:31:57
[2026-06-19 11:31:58,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:31:58,745.745 INFO    ] Initializing speech engine...
[2026-06-19 11:31:58,755.755 INFO    ] 2026-06-19 11:31:58
[2026-06-19 11:31:59,003.003 INFO    ] 2026-06-19 11:31:58
[2026-06-19 11:31:59,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:31:59,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:31:59,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:31:59,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:31:59,479.479 INFO    ] time= 19/06/2026 11:31:59
[2026-06-19 11:31:59,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:31:59,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:31:59,726.726 INFO    ] No existing commands found in stream
[2026-06-19 11:32:04,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:32:04,747.747 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 11:32:06,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:32:06,146.146 INFO    ] Checking for system updates...
[2026-06-19 11:32:06,182.182 INFO    ] 200
[2026-06-19 11:32:06,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:06,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:06,241.241 INFO    ] No update needed
[2026-06-19 11:32:06,244.244 INFO    ] Checking for camera pi updates...
[2026-06-19 11:32:06,277.277 INFO    ] 200
[2026-06-19 11:32:06,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:06,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:32:06,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:06,366.366 INFO    ] No camera update needed
[2026-06-19 11:32:06,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:32:06,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:32:06,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:32:06,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:32:08,421.421 INFO    ] ================================================
[2026-06-19 11:32:08,437.437 INFO    ] Launching Daemon at Fri Jun 19 11:32:08 IST 2026
[2026-06-19 11:32:08,447.447 INFO    ] ================================================
[2026-06-19 11:32:09,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:32:09
[2026-06-19 11:32:09,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:32:10,121.121 INFO    ] Initializing speech engine...
[2026-06-19 11:32:10,132.132 INFO    ] 2026-06-19 11:32:10
[2026-06-19 11:32:10,411.411 INFO    ] 2026-06-19 11:32:10
[2026-06-19 11:32:10,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:32:10,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:32:10,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:32:10,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:32:10,914.914 INFO    ] time= 19/06/2026 11:32:10
[2026-06-19 11:32:10,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:32:10,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:32:11,106.106 INFO    ] No existing commands found in stream
[2026-06-19 11:32:16,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:32:16,139.139 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 11:32:18,862.862 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:32:18,865.865 INFO    ] Checking for system updates...
[2026-06-19 11:32:18,908.908 INFO    ] 200
[2026-06-19 11:32:18,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:18,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:18,973.973 INFO    ] No update needed
[2026-06-19 11:32:18,976.976 INFO    ] Checking for camera pi updates...
[2026-06-19 11:32:19,010.010 INFO    ] 200
[2026-06-19 11:32:19,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:19,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:32:19,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:19,101.101 INFO    ] No camera update needed
[2026-06-19 11:32:19,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:32:19,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:32:19,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:32:19,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:32:21,157.157 INFO    ] ================================================
[2026-06-19 11:32:21,173.173 INFO    ] Launching Daemon at Fri Jun 19 11:32:21 IST 2026
[2026-06-19 11:32:21,184.184 INFO    ] ================================================
[2026-06-19 11:32:21,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:32:21
[2026-06-19 11:32:22,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:32:22,817.817 INFO    ] Initializing speech engine...
[2026-06-19 11:32:22,829.829 INFO    ] 2026-06-19 11:32:22
[2026-06-19 11:32:23,136.136 INFO    ] 2026-06-19 11:32:23
[2026-06-19 11:32:23,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:32:23,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:32:23,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:32:23,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:32:23,657.657 INFO    ] time= 19/06/2026 11:32:23
[2026-06-19 11:32:23,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:32:23,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:32:23,806.806 INFO    ] No existing commands found in stream
[2026-06-19 11:32:28,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:32:28,837.837 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 11:32:30,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:32:30,639.639 INFO    ] Checking for system updates...
[2026-06-19 11:32:30,681.681 INFO    ] 200
[2026-06-19 11:32:30,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:30,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:30,740.740 INFO    ] No update needed
[2026-06-19 11:32:30,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 11:32:30,779.779 INFO    ] 200
[2026-06-19 11:32:30,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:30,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:32:30,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:30,875.875 INFO    ] No camera update needed
[2026-06-19 11:32:30,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:32:30,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:32:30,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:32:30,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:32:32,936.936 INFO    ] ================================================
[2026-06-19 11:32:32,952.952 INFO    ] Launching Daemon at Fri Jun 19 11:32:32 IST 2026
[2026-06-19 11:32:32,964.964 INFO    ] ================================================
[2026-06-19 11:32:33,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:32:33
[2026-06-19 11:32:34,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:32:34,453.453 INFO    ] Initializing speech engine...
[2026-06-19 11:32:34,463.463 INFO    ] 2026-06-19 11:32:34
[2026-06-19 11:32:34,729.729 INFO    ] 2026-06-19 11:32:34
[2026-06-19 11:32:34,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:32:35,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:32:35,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:32:35,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:32:35,228.228 INFO    ] time= 19/06/2026 11:32:35
[2026-06-19 11:32:35,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:32:35,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:32:35,448.448 INFO    ] No existing commands found in stream
[2026-06-19 11:32:40,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:32:40,470.470 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 11:32:42,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:32:42,171.171 INFO    ] Checking for system updates...
[2026-06-19 11:32:42,208.208 INFO    ] 200
[2026-06-19 11:32:42,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:42,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:42,269.269 INFO    ] No update needed
[2026-06-19 11:32:42,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 11:32:42,307.307 INFO    ] 200
[2026-06-19 11:32:42,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:42,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:32:42,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:42,500.500 INFO    ] No camera update needed
[2026-06-19 11:32:42,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:32:42,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:32:42,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:32:42,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:32:44,558.558 INFO    ] ================================================
[2026-06-19 11:32:44,573.573 INFO    ] Launching Daemon at Fri Jun 19 11:32:44 IST 2026
[2026-06-19 11:32:44,585.585 INFO    ] ================================================
[2026-06-19 11:32:45,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:32:45
[2026-06-19 11:32:45,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:32:45,986.986 INFO    ] Initializing speech engine...
[2026-06-19 11:32:46,009.009 INFO    ] 2026-06-19 11:32:45
[2026-06-19 11:32:46,265.265 INFO    ] 2026-06-19 11:32:46
[2026-06-19 11:32:46,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:32:46,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:32:46,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:32:46,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:32:46,746.746 INFO    ] time= 19/06/2026 11:32:46
[2026-06-19 11:32:46,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:32:46,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:32:46,959.959 INFO    ] No existing commands found in stream
[2026-06-19 11:32:51,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:32:51,989.989 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 11:32:54,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:32:54,201.201 INFO    ] Checking for system updates...
[2026-06-19 11:32:54,238.238 INFO    ] 200
[2026-06-19 11:32:54,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:54,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:54,295.295 INFO    ] No update needed
[2026-06-19 11:32:54,298.298 INFO    ] Checking for camera pi updates...
[2026-06-19 11:32:54,331.331 INFO    ] 200
[2026-06-19 11:32:54,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:32:54,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:32:54,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:32:54,424.424 INFO    ] No camera update needed
[2026-06-19 11:32:54,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:32:54,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:32:54,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:32:54,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:32:56,479.479 INFO    ] ================================================
[2026-06-19 11:32:56,494.494 INFO    ] Launching Daemon at Fri Jun 19 11:32:56 IST 2026
[2026-06-19 11:32:56,506.506 INFO    ] ================================================
[2026-06-19 11:32:57,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:32:57
[2026-06-19 11:32:57,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:32:57,993.993 INFO    ] Initializing speech engine...
[2026-06-19 11:32:58,000.000 INFO    ] 2026-06-19 11:32:57
[2026-06-19 11:32:58,251.251 INFO    ] 2026-06-19 11:32:58
[2026-06-19 11:32:58,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:32:58,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:32:58,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:32:58,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:32:58,698.698 INFO    ] time= 19/06/2026 11:32:58
[2026-06-19 11:32:58,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:32:58,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:32:58,965.965 INFO    ] No existing commands found in stream
[2026-06-19 11:33:03,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:33:03,993.993 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 11:33:06,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:33:06,851.851 INFO    ] Checking for system updates...
[2026-06-19 11:33:06,888.888 INFO    ] 200
[2026-06-19 11:33:06,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:06,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:06,955.955 INFO    ] No update needed
[2026-06-19 11:33:06,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 11:33:06,997.997 INFO    ] 200
[2026-06-19 11:33:07,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:07,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:33:07,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:07,101.101 INFO    ] No camera update needed
[2026-06-19 11:33:07,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:33:07,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:33:07,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:33:07,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:33:09,156.156 INFO    ] ================================================
[2026-06-19 11:33:09,172.172 INFO    ] Launching Daemon at Fri Jun 19 11:33:09 IST 2026
[2026-06-19 11:33:09,183.183 INFO    ] ================================================
[2026-06-19 11:33:09,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:33:09
[2026-06-19 11:33:10,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:33:10,828.828 INFO    ] Initializing speech engine...
[2026-06-19 11:33:10,842.842 INFO    ] 2026-06-19 11:33:10
[2026-06-19 11:33:11,130.130 INFO    ] 2026-06-19 11:33:11
[2026-06-19 11:33:11,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:33:11,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:33:11,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:33:11,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:33:11,649.649 INFO    ] time= 19/06/2026 11:33:11
[2026-06-19 11:33:11,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:33:11,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:33:11,848.848 INFO    ] No existing commands found in stream
[2026-06-19 11:33:16,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:33:16,878.878 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 11:33:21,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:33:21,029.029 INFO    ] Checking for system updates...
[2026-06-19 11:33:21,067.067 INFO    ] 200
[2026-06-19 11:33:21,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:21,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:21,131.131 INFO    ] No update needed
[2026-06-19 11:33:21,133.133 INFO    ] Checking for camera pi updates...
[2026-06-19 11:33:21,167.167 INFO    ] 200
[2026-06-19 11:33:21,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:21,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:33:21,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:21,256.256 INFO    ] No camera update needed
[2026-06-19 11:33:21,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:33:21,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:33:21,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:33:21,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:33:23,312.312 INFO    ] ================================================
[2026-06-19 11:33:23,327.327 INFO    ] Launching Daemon at Fri Jun 19 11:33:23 IST 2026
[2026-06-19 11:33:23,339.339 INFO    ] ================================================
[2026-06-19 11:33:23,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:33:23
[2026-06-19 11:33:24,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:33:24,801.801 INFO    ] Initializing speech engine...
[2026-06-19 11:33:24,808.808 INFO    ] 2026-06-19 11:33:24
[2026-06-19 11:33:25,104.104 INFO    ] 2026-06-19 11:33:25
[2026-06-19 11:33:25,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:33:25,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:33:25,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:33:25,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:33:25,524.524 INFO    ] time= 19/06/2026 11:33:25
[2026-06-19 11:33:25,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:33:25,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:33:25,723.723 INFO    ] No existing commands found in stream
[2026-06-19 11:33:30,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:33:30,748.748 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 11:33:33,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:33:33,319.319 INFO    ] Checking for system updates...
[2026-06-19 11:33:33,360.360 INFO    ] 200
[2026-06-19 11:33:33,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:33,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:33,418.418 INFO    ] No update needed
[2026-06-19 11:33:33,420.420 INFO    ] Checking for camera pi updates...
[2026-06-19 11:33:33,454.454 INFO    ] 200
[2026-06-19 11:33:33,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:33,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:33:33,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:33,545.545 INFO    ] No camera update needed
[2026-06-19 11:33:33,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:33:33,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:33:33,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:33:33,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:33:35,600.600 INFO    ] ================================================
[2026-06-19 11:33:35,617.617 INFO    ] Launching Daemon at Fri Jun 19 11:33:35 IST 2026
[2026-06-19 11:33:35,627.627 INFO    ] ================================================
[2026-06-19 11:33:36,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:33:36
[2026-06-19 11:33:36,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:33:37,101.101 INFO    ] Initializing speech engine...
[2026-06-19 11:33:37,109.109 INFO    ] 2026-06-19 11:33:37
[2026-06-19 11:33:37,375.375 INFO    ] 2026-06-19 11:33:37
[2026-06-19 11:33:37,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:33:37,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:33:37,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:33:37,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:33:37,862.862 INFO    ] time= 19/06/2026 11:33:37
[2026-06-19 11:33:37,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:33:37,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:33:38,070.070 INFO    ] No existing commands found in stream
[2026-06-19 11:33:43,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:33:43,087.087 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 11:33:45,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:33:45,217.217 INFO    ] Checking for system updates...
[2026-06-19 11:33:45,253.253 INFO    ] 200
[2026-06-19 11:33:45,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:45,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:45,311.311 INFO    ] No update needed
[2026-06-19 11:33:45,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 11:33:45,351.351 INFO    ] 200
[2026-06-19 11:33:45,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:45,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:33:45,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:45,443.443 INFO    ] No camera update needed
[2026-06-19 11:33:45,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:33:45,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:33:45,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:33:45,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:33:47,500.500 INFO    ] ================================================
[2026-06-19 11:33:47,517.517 INFO    ] Launching Daemon at Fri Jun 19 11:33:47 IST 2026
[2026-06-19 11:33:47,528.528 INFO    ] ================================================
[2026-06-19 11:33:48,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:33:48
[2026-06-19 11:33:48,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:33:48,945.945 INFO    ] Initializing speech engine...
[2026-06-19 11:33:48,951.951 INFO    ] 2026-06-19 11:33:48
[2026-06-19 11:33:49,226.226 INFO    ] 2026-06-19 11:33:49
[2026-06-19 11:33:49,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:33:49,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:33:49,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:33:49,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:33:49,696.696 INFO    ] time= 19/06/2026 11:33:49
[2026-06-19 11:33:49,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:33:49,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:33:49,911.911 INFO    ] No existing commands found in stream
[2026-06-19 11:33:54,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:33:54,923.923 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 11:33:58,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:33:58,016.016 INFO    ] Checking for system updates...
[2026-06-19 11:33:58,056.056 INFO    ] 200
[2026-06-19 11:33:58,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:58,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:58,116.116 INFO    ] No update needed
[2026-06-19 11:33:58,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 11:33:58,151.151 INFO    ] 200
[2026-06-19 11:33:58,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:33:58,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:33:58,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:33:58,240.240 INFO    ] No camera update needed
[2026-06-19 11:33:58,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:33:58,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:33:58,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:33:58,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:34:00,299.299 INFO    ] ================================================
[2026-06-19 11:34:00,314.314 INFO    ] Launching Daemon at Fri Jun 19 11:34:00 IST 2026
[2026-06-19 11:34:00,327.327 INFO    ] ================================================
[2026-06-19 11:34:00,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:34:00
[2026-06-19 11:34:01,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:34:01,768.768 INFO    ] Initializing speech engine...
[2026-06-19 11:34:01,802.802 INFO    ] 2026-06-19 11:34:01
[2026-06-19 11:34:02,306.306 INFO    ] 2026-06-19 11:34:02
[2026-06-19 11:34:02,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:34:02,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:34:02,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:34:02,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:34:02,851.851 INFO    ] time= 19/06/2026 11:34:02
[2026-06-19 11:34:02,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:34:02,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:34:03,053.053 INFO    ] No existing commands found in stream
[2026-06-19 11:34:08,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:34:08,082.082 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 11:34:09,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:34:09,536.536 INFO    ] Checking for system updates...
[2026-06-19 11:34:09,573.573 INFO    ] 200
[2026-06-19 11:34:09,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:34:09,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:34:09,630.630 INFO    ] No update needed
[2026-06-19 11:34:09,633.633 INFO    ] Checking for camera pi updates...
[2026-06-19 11:34:09,670.670 INFO    ] 200
[2026-06-19 11:34:09,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:34:09,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:34:09,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:34:09,756.756 INFO    ] No camera update needed
[2026-06-19 11:34:09,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:34:09,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:34:09,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:34:09,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:34:11,813.813 INFO    ] ================================================
[2026-06-19 11:34:11,829.829 INFO    ] Launching Daemon at Fri Jun 19 11:34:11 IST 2026
[2026-06-19 11:34:11,840.840 INFO    ] ================================================
[2026-06-19 11:34:12,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:34:12
[2026-06-19 11:34:13,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:34:13,478.478 INFO    ] Initializing speech engine...
[2026-06-19 11:34:13,492.492 INFO    ] 2026-06-19 11:34:13
[2026-06-19 11:34:13,760.760 INFO    ] 2026-06-19 11:34:13
[2026-06-19 11:34:13,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:34:14,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:34:14,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:34:14,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:34:14,314.314 INFO    ] time= 19/06/2026 11:34:14
[2026-06-19 11:34:14,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:34:14,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:34:14,463.463 INFO    ] No existing commands found in stream
[2026-06-19 11:34:19,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:34:19,481.481 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 11:34:24,376.376 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:34:24,379.379 INFO    ] Checking for system updates...
[2026-06-19 11:34:24,415.415 INFO    ] 200
[2026-06-19 11:34:24,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:34:24,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:34:24,474.474 INFO    ] No update needed
[2026-06-19 11:34:24,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 11:34:24,514.514 INFO    ] 200
[2026-06-19 11:34:24,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:34:24,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:34:24,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:34:24,600.600 INFO    ] No camera update needed
[2026-06-19 11:34:24,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:34:24,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:34:24,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:34:24,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:34:26,657.657 INFO    ] ================================================
[2026-06-19 11:34:26,673.673 INFO    ] Launching Daemon at Fri Jun 19 11:34:26 IST 2026
[2026-06-19 11:34:26,684.684 INFO    ] ================================================
[2026-06-19 11:34:27,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:34:27
[2026-06-19 11:34:27,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:34:28,264.264 INFO    ] Initializing speech engine...
[2026-06-19 11:34:28,274.274 INFO    ] 2026-06-19 11:34:28
[2026-06-19 11:34:28,548.548 INFO    ] 2026-06-19 11:34:28
[2026-06-19 11:34:28,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:34:28,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:34:28,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:34:28,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:34:29,042.042 INFO    ] time= 19/06/2026 11:34:28
[2026-06-19 11:34:29,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:34:29,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:34:29,252.252 INFO    ] No existing commands found in stream
[2026-06-19 11:34:34,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:34:34,281.281 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 11:34:35,967.967 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:34:35,970.970 INFO    ] Checking for system updates...
[2026-06-19 11:34:36,016.016 INFO    ] 200
[2026-06-19 11:34:36,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:34:36,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:34:36,103.103 INFO    ] No update needed
[2026-06-19 11:34:36,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 11:34:36,142.142 INFO    ] 200
[2026-06-19 11:34:36,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:34:36,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:34:36,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:34:36,231.231 INFO    ] No camera update needed
[2026-06-19 11:34:36,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:34:36,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:34:36,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:34:36,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:34:38,292.292 INFO    ] ================================================
[2026-06-19 11:34:38,307.307 INFO    ] Launching Daemon at Fri Jun 19 11:34:38 IST 2026
[2026-06-19 11:34:38,319.319 INFO    ] ================================================
[2026-06-19 11:34:38,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:34:38
[2026-06-19 11:34:39,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:34:39,741.741 INFO    ] Initializing speech engine...
[2026-06-19 11:34:39,757.757 INFO    ] 2026-06-19 11:34:39
[2026-06-19 11:34:40,041.041 INFO    ] 2026-06-19 11:34:40
[2026-06-19 11:34:40,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:34:40,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:34:40,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:34:40,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:34:40,426.426 INFO    ] time= 19/06/2026 11:34:40
[2026-06-19 11:34:40,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:34:40,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:34:40,551.551 INFO    ] No existing commands found in stream
[2026-06-19 11:34:45,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:34:45,566.566 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 11:34:49,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:34:49,400.400 INFO    ] Checking for system updates...
[2026-06-19 11:34:49,438.438 INFO    ] 200
[2026-06-19 11:34:49,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:34:49,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:34:49,504.504 INFO    ] No update needed
[2026-06-19 11:34:49,507.507 INFO    ] Checking for camera pi updates...
[2026-06-19 11:34:49,542.542 INFO    ] 200
[2026-06-19 11:34:49,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:34:49,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:34:49,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:34:49,723.723 INFO    ] No camera update needed
[2026-06-19 11:34:49,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:34:49,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:34:49,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:34:49,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:34:51,782.782 INFO    ] ================================================
[2026-06-19 11:34:51,798.798 INFO    ] Launching Daemon at Fri Jun 19 11:34:51 IST 2026
[2026-06-19 11:34:51,810.810 INFO    ] ================================================
[2026-06-19 11:34:52,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:34:52
[2026-06-19 11:34:53,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:34:53,283.283 INFO    ] Initializing speech engine...
[2026-06-19 11:34:53,292.292 INFO    ] 2026-06-19 11:34:53
[2026-06-19 11:34:53,550.550 INFO    ] 2026-06-19 11:34:53
[2026-06-19 11:34:53,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:34:53,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:34:53,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:34:53,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:34:54,013.013 INFO    ] time= 19/06/2026 11:34:53
[2026-06-19 11:34:54,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:34:54,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:34:54,243.243 INFO    ] No existing commands found in stream
[2026-06-19 11:34:59,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:34:59,260.260 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 11:35:02,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:35:02,470.470 INFO    ] Checking for system updates...
[2026-06-19 11:35:02,536.536 INFO    ] 200
[2026-06-19 11:35:02,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:02,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:35:02,628.628 INFO    ] No update needed
[2026-06-19 11:35:02,631.631 INFO    ] Checking for camera pi updates...
[2026-06-19 11:35:02,670.670 INFO    ] 200
[2026-06-19 11:35:02,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:02,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:35:02,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:35:02,756.756 INFO    ] No camera update needed
[2026-06-19 11:35:02,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:35:02,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:35:02,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:35:02,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:35:04,820.820 INFO    ] ================================================
[2026-06-19 11:35:04,836.836 INFO    ] Launching Daemon at Fri Jun 19 11:35:04 IST 2026
[2026-06-19 11:35:04,847.847 INFO    ] ================================================
[2026-06-19 11:35:05,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:35:05
[2026-06-19 11:35:06,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:35:06,262.262 INFO    ] Initializing speech engine...
[2026-06-19 11:35:06,278.278 INFO    ] 2026-06-19 11:35:06
[2026-06-19 11:35:06,566.566 INFO    ] 2026-06-19 11:35:06
[2026-06-19 11:35:06,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:35:07,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:35:07,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:35:07,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:35:07,450.450 INFO    ] time= 19/06/2026 11:35:07
[2026-06-19 11:35:07,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:35:07,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:35:07,657.657 INFO    ] No existing commands found in stream
[2026-06-19 11:35:12,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:35:12,670.670 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 11:35:15,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:35:15,124.124 INFO    ] Checking for system updates...
[2026-06-19 11:35:15,161.161 INFO    ] 200
[2026-06-19 11:35:15,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:15,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:35:15,220.220 INFO    ] No update needed
[2026-06-19 11:35:15,222.222 INFO    ] Checking for camera pi updates...
[2026-06-19 11:35:15,257.257 INFO    ] 200
[2026-06-19 11:35:15,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:15,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:35:15,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:35:15,354.354 INFO    ] No camera update needed
[2026-06-19 11:35:15,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:35:15,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:35:15,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:35:15,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:35:17,413.413 INFO    ] ================================================
[2026-06-19 11:35:17,429.429 INFO    ] Launching Daemon at Fri Jun 19 11:35:17 IST 2026
[2026-06-19 11:35:17,439.439 INFO    ] ================================================
[2026-06-19 11:35:18,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:35:18
[2026-06-19 11:35:18,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:35:18,895.895 INFO    ] Initializing speech engine...
[2026-06-19 11:35:18,902.902 INFO    ] 2026-06-19 11:35:18
[2026-06-19 11:35:19,163.163 INFO    ] 2026-06-19 11:35:19
[2026-06-19 11:35:19,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:35:19,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:35:19,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:35:19,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:35:19,564.564 INFO    ] time= 19/06/2026 11:35:19
[2026-06-19 11:35:19,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:35:19,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:35:19,648.648 INFO    ] No existing commands found in stream
[2026-06-19 11:35:24,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:35:24,664.664 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 11:35:28,523.523 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:35:28,525.525 INFO    ] Checking for system updates...
[2026-06-19 11:35:28,563.563 INFO    ] 200
[2026-06-19 11:35:28,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:28,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:35:28,622.622 INFO    ] No update needed
[2026-06-19 11:35:28,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 11:35:28,662.662 INFO    ] 200
[2026-06-19 11:35:28,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:28,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:35:28,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:35:28,754.754 INFO    ] No camera update needed
[2026-06-19 11:35:28,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:35:28,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:35:28,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:35:28,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:35:30,811.811 INFO    ] ================================================
[2026-06-19 11:35:30,827.827 INFO    ] Launching Daemon at Fri Jun 19 11:35:30 IST 2026
[2026-06-19 11:35:30,838.838 INFO    ] ================================================
[2026-06-19 11:35:31,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:35:31
[2026-06-19 11:35:32,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:35:32,525.525 INFO    ] Initializing speech engine...
[2026-06-19 11:35:32,537.537 INFO    ] 2026-06-19 11:35:32
[2026-06-19 11:35:32,882.882 INFO    ] 2026-06-19 11:35:32
[2026-06-19 11:35:32,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:35:33,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:35:33,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:35:33,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:35:33,368.368 INFO    ] time= 19/06/2026 11:35:33
[2026-06-19 11:35:33,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:35:33,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:35:33,571.571 INFO    ] No existing commands found in stream
[2026-06-19 11:35:38,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:35:38,608.608 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 11:35:40,612.612 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:35:40,615.615 INFO    ] Checking for system updates...
[2026-06-19 11:35:40,652.652 INFO    ] 200
[2026-06-19 11:35:40,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:40,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:35:40,712.712 INFO    ] No update needed
[2026-06-19 11:35:40,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 11:35:40,749.749 INFO    ] 200
[2026-06-19 11:35:40,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:40,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:35:40,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:35:40,841.841 INFO    ] No camera update needed
[2026-06-19 11:35:40,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:35:40,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:35:40,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:35:40,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:35:42,901.901 INFO    ] ================================================
[2026-06-19 11:35:42,917.917 INFO    ] Launching Daemon at Fri Jun 19 11:35:42 IST 2026
[2026-06-19 11:35:42,929.929 INFO    ] ================================================
[2026-06-19 11:35:43,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:35:43
[2026-06-19 11:35:44,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:35:44,543.543 INFO    ] Initializing speech engine...
[2026-06-19 11:35:44,557.557 INFO    ] 2026-06-19 11:35:44
[2026-06-19 11:35:44,828.828 INFO    ] 2026-06-19 11:35:44
[2026-06-19 11:35:44,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:35:45,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:35:45,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:35:45,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:35:45,315.315 INFO    ] time= 19/06/2026 11:35:45
[2026-06-19 11:35:45,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:35:45,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:35:45,591.591 INFO    ] No existing commands found in stream
[2026-06-19 11:35:50,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:35:50,611.611 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 11:35:51,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:35:51,546.546 INFO    ] Checking for system updates...
[2026-06-19 11:35:51,583.583 INFO    ] 200
[2026-06-19 11:35:51,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:51,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:35:51,643.643 INFO    ] No update needed
[2026-06-19 11:35:51,646.646 INFO    ] Checking for camera pi updates...
[2026-06-19 11:35:51,681.681 INFO    ] 200
[2026-06-19 11:35:51,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:35:51,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:35:51,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:35:51,774.774 INFO    ] No camera update needed
[2026-06-19 11:35:51,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:35:51,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:35:51,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:35:51,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:35:53,833.833 INFO    ] ================================================
[2026-06-19 11:35:53,849.849 INFO    ] Launching Daemon at Fri Jun 19 11:35:53 IST 2026
[2026-06-19 11:35:53,860.860 INFO    ] ================================================
[2026-06-19 11:35:54,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:35:54
[2026-06-19 11:35:55,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:35:55,272.272 INFO    ] Initializing speech engine...
[2026-06-19 11:35:55,281.281 INFO    ] 2026-06-19 11:35:55
[2026-06-19 11:35:55,576.576 INFO    ] 2026-06-19 11:35:55
[2026-06-19 11:35:55,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:35:55,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:35:55,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:35:55,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:35:55,974.974 INFO    ] time= 19/06/2026 11:35:55
[2026-06-19 11:35:55,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:35:56,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:35:56,084.084 INFO    ] No existing commands found in stream
[2026-06-19 11:36:01,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:36:01,099.099 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 11:36:02,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:36:02,778.778 INFO    ] Checking for system updates...
[2026-06-19 11:36:02,817.817 INFO    ] 200
[2026-06-19 11:36:02,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:02,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:36:02,889.889 INFO    ] No update needed
[2026-06-19 11:36:02,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 11:36:02,931.931 INFO    ] 200
[2026-06-19 11:36:02,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:02,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:36:03,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:36:03,011.011 INFO    ] No camera update needed
[2026-06-19 11:36:03,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:36:03,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:36:03,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:36:03,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:36:05,071.071 INFO    ] ================================================
[2026-06-19 11:36:05,086.086 INFO    ] Launching Daemon at Fri Jun 19 11:36:05 IST 2026
[2026-06-19 11:36:05,097.097 INFO    ] ================================================
[2026-06-19 11:36:05,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:36:05
[2026-06-19 11:36:06,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:36:06,680.680 INFO    ] Initializing speech engine...
[2026-06-19 11:36:06,690.690 INFO    ] 2026-06-19 11:36:06
[2026-06-19 11:36:06,936.936 INFO    ] 2026-06-19 11:36:06
[2026-06-19 11:36:06,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:36:07,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:36:07,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:36:07,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:36:07,371.371 INFO    ] time= 19/06/2026 11:36:07
[2026-06-19 11:36:07,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:36:07,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:36:07,550.550 INFO    ] No existing commands found in stream
[2026-06-19 11:36:12,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:36:12,564.564 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 11:36:16,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:36:16,514.514 INFO    ] Checking for system updates...
[2026-06-19 11:36:16,550.550 INFO    ] 200
[2026-06-19 11:36:16,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:16,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:36:16,607.607 INFO    ] No update needed
[2026-06-19 11:36:16,609.609 INFO    ] Checking for camera pi updates...
[2026-06-19 11:36:16,642.642 INFO    ] 200
[2026-06-19 11:36:16,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:16,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:36:16,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:36:16,732.732 INFO    ] No camera update needed
[2026-06-19 11:36:16,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:36:16,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:36:16,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:36:16,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:36:18,797.797 INFO    ] ================================================
[2026-06-19 11:36:18,815.815 INFO    ] Launching Daemon at Fri Jun 19 11:36:18 IST 2026
[2026-06-19 11:36:18,828.828 INFO    ] ================================================
[2026-06-19 11:36:19,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:36:19
[2026-06-19 11:36:20,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:36:20,428.428 INFO    ] Initializing speech engine...
[2026-06-19 11:36:20,435.435 INFO    ] 2026-06-19 11:36:20
[2026-06-19 11:36:20,742.742 INFO    ] 2026-06-19 11:36:20
[2026-06-19 11:36:20,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:36:20,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:36:21,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:36:21,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:36:21,151.151 INFO    ] time= 19/06/2026 11:36:21
[2026-06-19 11:36:21,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:36:21,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:36:21,351.351 INFO    ] No existing commands found in stream
[2026-06-19 11:36:26,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:36:26,368.368 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 11:36:26,897.897 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:36:26,900.900 INFO    ] Checking for system updates...
[2026-06-19 11:36:26,937.937 INFO    ] 200
[2026-06-19 11:36:26,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:26,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:36:27,005.005 INFO    ] No update needed
[2026-06-19 11:36:27,008.008 INFO    ] Checking for camera pi updates...
[2026-06-19 11:36:27,044.044 INFO    ] 200
[2026-06-19 11:36:27,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:27,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:36:27,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:36:27,134.134 INFO    ] No camera update needed
[2026-06-19 11:36:27,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:36:27,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:36:27,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:36:27,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:36:29,190.190 INFO    ] ================================================
[2026-06-19 11:36:29,205.205 INFO    ] Launching Daemon at Fri Jun 19 11:36:29 IST 2026
[2026-06-19 11:36:29,216.216 INFO    ] ================================================
[2026-06-19 11:36:29,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:36:29
[2026-06-19 11:36:30,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:36:30,620.620 INFO    ] Initializing speech engine...
[2026-06-19 11:36:30,634.634 INFO    ] 2026-06-19 11:36:30
[2026-06-19 11:36:30,898.898 INFO    ] 2026-06-19 11:36:30
[2026-06-19 11:36:30,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:36:31,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:36:31,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:36:31,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:36:31,399.399 INFO    ] time= 19/06/2026 11:36:31
[2026-06-19 11:36:31,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:36:31,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:36:31,624.624 INFO    ] No existing commands found in stream
[2026-06-19 11:36:36,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:36:36,657.657 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 11:36:40,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:36:40,015.015 INFO    ] Checking for system updates...
[2026-06-19 11:36:40,051.051 INFO    ] 200
[2026-06-19 11:36:40,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:40,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:36:40,110.110 INFO    ] No update needed
[2026-06-19 11:36:40,113.113 INFO    ] Checking for camera pi updates...
[2026-06-19 11:36:40,147.147 INFO    ] 200
[2026-06-19 11:36:40,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:40,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:36:40,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:36:40,238.238 INFO    ] No camera update needed
[2026-06-19 11:36:40,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:36:40,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:36:40,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:36:40,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:36:42,296.296 INFO    ] ================================================
[2026-06-19 11:36:42,312.312 INFO    ] Launching Daemon at Fri Jun 19 11:36:42 IST 2026
[2026-06-19 11:36:42,323.323 INFO    ] ================================================
[2026-06-19 11:36:42,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:36:42
[2026-06-19 11:36:43,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:36:43,928.928 INFO    ] Initializing speech engine...
[2026-06-19 11:36:43,940.940 INFO    ] 2026-06-19 11:36:43
[2026-06-19 11:36:44,218.218 INFO    ] 2026-06-19 11:36:44
[2026-06-19 11:36:44,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:36:44,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:36:44,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:36:44,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:36:44,696.696 INFO    ] time= 19/06/2026 11:36:44
[2026-06-19 11:36:44,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:36:44,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:36:44,914.914 INFO    ] No existing commands found in stream
[2026-06-19 11:36:49,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:36:49,940.940 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 11:36:52,671.671 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:36:52,674.674 INFO    ] Checking for system updates...
[2026-06-19 11:36:52,710.710 INFO    ] 200
[2026-06-19 11:36:52,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:52,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:36:52,767.767 INFO    ] No update needed
[2026-06-19 11:36:52,770.770 INFO    ] Checking for camera pi updates...
[2026-06-19 11:36:52,808.808 INFO    ] 200
[2026-06-19 11:36:52,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:36:52,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:36:53,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:36:53,002.002 INFO    ] No camera update needed
[2026-06-19 11:36:53,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:36:53,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:36:53,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:36:53,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:36:55,058.058 INFO    ] ================================================
[2026-06-19 11:36:55,074.074 INFO    ] Launching Daemon at Fri Jun 19 11:36:55 IST 2026
[2026-06-19 11:36:55,085.085 INFO    ] ================================================
[2026-06-19 11:36:55,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:36:55
[2026-06-19 11:36:56,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:36:56,598.598 INFO    ] Initializing speech engine...
[2026-06-19 11:36:56,608.608 INFO    ] 2026-06-19 11:36:56
[2026-06-19 11:36:56,875.875 INFO    ] 2026-06-19 11:36:56
[2026-06-19 11:36:56,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:36:57,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:36:57,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:36:57,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:36:57,359.359 INFO    ] time= 19/06/2026 11:36:57
[2026-06-19 11:36:57,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:36:57,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:36:57,571.571 INFO    ] No existing commands found in stream
[2026-06-19 11:37:02,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:37:02,580.580 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 11:37:06,624.624 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:37:06,627.627 INFO    ] Checking for system updates...
[2026-06-19 11:37:06,663.663 INFO    ] 200
[2026-06-19 11:37:06,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:06,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:37:06,720.720 INFO    ] No update needed
[2026-06-19 11:37:06,722.722 INFO    ] Checking for camera pi updates...
[2026-06-19 11:37:06,756.756 INFO    ] 200
[2026-06-19 11:37:06,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:06,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:37:06,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:37:06,852.852 INFO    ] No camera update needed
[2026-06-19 11:37:06,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:37:06,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:37:06,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:37:06,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:37:08,913.913 INFO    ] ================================================
[2026-06-19 11:37:08,929.929 INFO    ] Launching Daemon at Fri Jun 19 11:37:08 IST 2026
[2026-06-19 11:37:08,940.940 INFO    ] ================================================
[2026-06-19 11:37:09,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:37:09
[2026-06-19 11:37:10,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:37:10,552.552 INFO    ] Initializing speech engine...
[2026-06-19 11:37:10,561.561 INFO    ] 2026-06-19 11:37:10
[2026-06-19 11:37:10,845.845 INFO    ] 2026-06-19 11:37:10
[2026-06-19 11:37:10,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:37:11,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:37:11,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:37:11,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:37:11,383.383 INFO    ] time= 19/06/2026 11:37:11
[2026-06-19 11:37:11,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:37:11,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:37:11,539.539 INFO    ] No existing commands found in stream
[2026-06-19 11:37:16,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:37:16,567.567 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 11:37:20,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:37:20,647.647 INFO    ] Checking for system updates...
[2026-06-19 11:37:20,684.684 INFO    ] 200
[2026-06-19 11:37:20,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:20,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:37:20,744.744 INFO    ] No update needed
[2026-06-19 11:37:20,746.746 INFO    ] Checking for camera pi updates...
[2026-06-19 11:37:20,783.783 INFO    ] 200
[2026-06-19 11:37:20,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:20,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:37:20,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:37:20,873.873 INFO    ] No camera update needed
[2026-06-19 11:37:20,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:37:20,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:37:20,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:37:20,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:37:22,931.931 INFO    ] ================================================
[2026-06-19 11:37:22,947.947 INFO    ] Launching Daemon at Fri Jun 19 11:37:22 IST 2026
[2026-06-19 11:37:22,958.958 INFO    ] ================================================
[2026-06-19 11:37:23,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:37:23
[2026-06-19 11:37:24,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:37:24,407.407 INFO    ] Initializing speech engine...
[2026-06-19 11:37:24,423.423 INFO    ] 2026-06-19 11:37:24
[2026-06-19 11:37:24,697.697 INFO    ] 2026-06-19 11:37:24
[2026-06-19 11:37:24,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:37:24,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:37:24,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:37:25,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:37:25,175.175 INFO    ] time= 19/06/2026 11:37:25
[2026-06-19 11:37:25,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:37:25,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:37:25,441.441 INFO    ] No existing commands found in stream
[2026-06-19 11:37:30,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:37:30,451.451 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 11:37:34,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:37:34,416.416 INFO    ] Checking for system updates...
[2026-06-19 11:37:34,456.456 INFO    ] 200
[2026-06-19 11:37:34,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:34,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:37:34,520.520 INFO    ] No update needed
[2026-06-19 11:37:34,522.522 INFO    ] Checking for camera pi updates...
[2026-06-19 11:37:34,556.556 INFO    ] 200
[2026-06-19 11:37:34,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:34,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:37:34,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:37:34,641.641 INFO    ] No camera update needed
[2026-06-19 11:37:34,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:37:34,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:37:34,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:37:34,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:37:36,697.697 INFO    ] ================================================
[2026-06-19 11:37:36,712.712 INFO    ] Launching Daemon at Fri Jun 19 11:37:36 IST 2026
[2026-06-19 11:37:36,723.723 INFO    ] ================================================
[2026-06-19 11:37:37,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:37:37
[2026-06-19 11:37:37,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:37:38,178.178 INFO    ] Initializing speech engine...
[2026-06-19 11:37:38,184.184 INFO    ] 2026-06-19 11:37:38
[2026-06-19 11:37:38,442.442 INFO    ] 2026-06-19 11:37:38
[2026-06-19 11:37:38,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:37:38,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:37:38,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:37:38,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:37:38,905.905 INFO    ] time= 19/06/2026 11:37:38
[2026-06-19 11:37:38,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:37:38,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:37:39,122.122 INFO    ] No existing commands found in stream
[2026-06-19 11:37:44,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:37:44,134.134 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 11:37:45,653.653 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:37:45,655.655 INFO    ] Checking for system updates...
[2026-06-19 11:37:45,691.691 INFO    ] 200
[2026-06-19 11:37:45,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:45,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:37:45,750.750 INFO    ] No update needed
[2026-06-19 11:37:45,752.752 INFO    ] Checking for camera pi updates...
[2026-06-19 11:37:45,786.786 INFO    ] 200
[2026-06-19 11:37:45,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:45,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:37:45,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:37:45,871.871 INFO    ] No camera update needed
[2026-06-19 11:37:45,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:37:45,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:37:45,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:37:45,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:37:47,928.928 INFO    ] ================================================
[2026-06-19 11:37:47,944.944 INFO    ] Launching Daemon at Fri Jun 19 11:37:47 IST 2026
[2026-06-19 11:37:47,956.956 INFO    ] ================================================
[2026-06-19 11:37:48,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:37:48
[2026-06-19 11:37:49,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:37:49,577.577 INFO    ] Initializing speech engine...
[2026-06-19 11:37:49,590.590 INFO    ] 2026-06-19 11:37:49
[2026-06-19 11:37:49,877.877 INFO    ] 2026-06-19 11:37:49
[2026-06-19 11:37:49,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:37:50,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:37:50,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:37:50,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:37:50,409.409 INFO    ] time= 19/06/2026 11:37:50
[2026-06-19 11:37:50,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:37:50,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:37:50,579.579 INFO    ] No existing commands found in stream
[2026-06-19 11:37:55,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:37:55,613.613 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 11:37:57,768.768 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:37:57,771.771 INFO    ] Checking for system updates...
[2026-06-19 11:37:57,808.808 INFO    ] 200
[2026-06-19 11:37:57,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:57,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:37:57,874.874 INFO    ] No update needed
[2026-06-19 11:37:57,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 11:37:57,916.916 INFO    ] 200
[2026-06-19 11:37:57,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:37:57,965.965 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:37:58,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:37:58,008.008 INFO    ] No camera update needed
[2026-06-19 11:37:58,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:37:58,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:37:58,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:37:58,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:38:00,063.063 INFO    ] ================================================
[2026-06-19 11:38:00,079.079 INFO    ] Launching Daemon at Fri Jun 19 11:38:00 IST 2026
[2026-06-19 11:38:00,090.090 INFO    ] ================================================
[2026-06-19 11:38:00,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:38:00
[2026-06-19 11:38:01,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:38:01,516.516 INFO    ] Initializing speech engine...
[2026-06-19 11:38:01,526.526 INFO    ] 2026-06-19 11:38:01
[2026-06-19 11:38:01,790.790 INFO    ] 2026-06-19 11:38:01
[2026-06-19 11:38:01,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:38:02,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:38:02,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:38:02,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:38:02,213.213 INFO    ] time= 19/06/2026 11:38:02
[2026-06-19 11:38:02,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:38:02,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:38:02,314.314 INFO    ] No existing commands found in stream
[2026-06-19 11:38:07,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:38:07,330.330 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 11:38:09,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:38:09,104.104 INFO    ] Checking for system updates...
[2026-06-19 11:38:09,140.140 INFO    ] 200
[2026-06-19 11:38:09,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:09,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:38:09,199.199 INFO    ] No update needed
[2026-06-19 11:38:09,202.202 INFO    ] Checking for camera pi updates...
[2026-06-19 11:38:09,236.236 INFO    ] 200
[2026-06-19 11:38:09,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:09,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:38:09,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:38:09,337.337 INFO    ] No camera update needed
[2026-06-19 11:38:09,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:38:09,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:38:09,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:38:09,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:38:11,396.396 INFO    ] ================================================
[2026-06-19 11:38:11,411.411 INFO    ] Launching Daemon at Fri Jun 19 11:38:11 IST 2026
[2026-06-19 11:38:11,422.422 INFO    ] ================================================
[2026-06-19 11:38:11,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:38:11
[2026-06-19 11:38:12,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:38:12,853.853 INFO    ] Initializing speech engine...
[2026-06-19 11:38:12,860.860 INFO    ] 2026-06-19 11:38:12
[2026-06-19 11:38:13,115.115 INFO    ] 2026-06-19 11:38:13
[2026-06-19 11:38:13,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:38:13,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:38:13,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:38:13,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:38:13,592.592 INFO    ] time= 19/06/2026 11:38:13
[2026-06-19 11:38:13,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:38:13,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:38:13,808.808 INFO    ] No existing commands found in stream
[2026-06-19 11:38:18,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:38:18,831.831 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 11:38:20,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:38:20,868.868 INFO    ] Checking for system updates...
[2026-06-19 11:38:20,904.904 INFO    ] 200
[2026-06-19 11:38:20,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:20,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:38:20,967.967 INFO    ] No update needed
[2026-06-19 11:38:20,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 11:38:21,011.011 INFO    ] 200
[2026-06-19 11:38:21,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:21,053.053 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:38:21,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:38:21,096.096 INFO    ] No camera update needed
[2026-06-19 11:38:21,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:38:21,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:38:21,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:38:21,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:38:23,152.152 INFO    ] ================================================
[2026-06-19 11:38:23,167.167 INFO    ] Launching Daemon at Fri Jun 19 11:38:23 IST 2026
[2026-06-19 11:38:23,178.178 INFO    ] ================================================
[2026-06-19 11:38:23,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:38:23
[2026-06-19 11:38:24,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:38:24,788.788 INFO    ] Initializing speech engine...
[2026-06-19 11:38:24,799.799 INFO    ] 2026-06-19 11:38:24
[2026-06-19 11:38:25,086.086 INFO    ] 2026-06-19 11:38:25
[2026-06-19 11:38:25,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:38:25,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:38:25,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:38:25,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:38:25,615.615 INFO    ] time= 19/06/2026 11:38:25
[2026-06-19 11:38:25,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:38:25,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:38:25,769.769 INFO    ] No existing commands found in stream
[2026-06-19 11:38:30,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:38:30,797.797 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 11:38:32,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:38:32,367.367 INFO    ] Checking for system updates...
[2026-06-19 11:38:32,405.405 INFO    ] 200
[2026-06-19 11:38:32,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:32,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:38:32,470.470 INFO    ] No update needed
[2026-06-19 11:38:32,472.472 INFO    ] Checking for camera pi updates...
[2026-06-19 11:38:32,517.517 INFO    ] 200
[2026-06-19 11:38:32,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:32,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:38:32,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:38:32,611.611 INFO    ] No camera update needed
[2026-06-19 11:38:32,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:38:32,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:38:32,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:38:32,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:38:34,674.674 INFO    ] ================================================
[2026-06-19 11:38:34,690.690 INFO    ] Launching Daemon at Fri Jun 19 11:38:34 IST 2026
[2026-06-19 11:38:34,702.702 INFO    ] ================================================
[2026-06-19 11:38:35,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:38:35
[2026-06-19 11:38:35,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:38:36,291.291 INFO    ] Initializing speech engine...
[2026-06-19 11:38:36,304.304 INFO    ] 2026-06-19 11:38:36
[2026-06-19 11:38:36,584.584 INFO    ] 2026-06-19 11:38:36
[2026-06-19 11:38:36,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:38:36,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:38:36,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:38:37,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:38:37,122.122 INFO    ] time= 19/06/2026 11:38:37
[2026-06-19 11:38:37,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:38:37,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:38:37,279.279 INFO    ] No existing commands found in stream
[2026-06-19 11:38:42,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:38:42,302.302 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 11:38:43,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:38:43,369.369 INFO    ] Checking for system updates...
[2026-06-19 11:38:43,406.406 INFO    ] 200
[2026-06-19 11:38:43,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:43,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:38:43,467.467 INFO    ] No update needed
[2026-06-19 11:38:43,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 11:38:43,504.504 INFO    ] 200
[2026-06-19 11:38:43,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:43,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:38:43,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:38:43,592.592 INFO    ] No camera update needed
[2026-06-19 11:38:43,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:38:43,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:38:43,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:38:43,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:38:45,650.650 INFO    ] ================================================
[2026-06-19 11:38:45,667.667 INFO    ] Launching Daemon at Fri Jun 19 11:38:45 IST 2026
[2026-06-19 11:38:45,677.677 INFO    ] ================================================
[2026-06-19 11:38:46,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:38:46
[2026-06-19 11:38:47,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:38:47,323.323 INFO    ] Initializing speech engine...
[2026-06-19 11:38:47,331.331 INFO    ] 2026-06-19 11:38:47
[2026-06-19 11:38:47,610.610 INFO    ] 2026-06-19 11:38:47
[2026-06-19 11:38:47,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:38:47,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:38:47,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:38:48,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:38:48,113.113 INFO    ] time= 19/06/2026 11:38:48
[2026-06-19 11:38:48,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:38:48,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:38:48,329.329 INFO    ] No existing commands found in stream
[2026-06-19 11:38:53,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:38:53,359.359 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 11:38:55,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:38:55,499.499 INFO    ] Checking for system updates...
[2026-06-19 11:38:55,541.541 INFO    ] 200
[2026-06-19 11:38:55,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:55,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:38:55,604.604 INFO    ] No update needed
[2026-06-19 11:38:55,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 11:38:55,645.645 INFO    ] 200
[2026-06-19 11:38:55,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:38:55,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:38:55,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:38:55,844.844 INFO    ] No camera update needed
[2026-06-19 11:38:55,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:38:55,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:38:55,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:38:55,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:38:57,905.905 INFO    ] ================================================
[2026-06-19 11:38:57,921.921 INFO    ] Launching Daemon at Fri Jun 19 11:38:57 IST 2026
[2026-06-19 11:38:57,932.932 INFO    ] ================================================
[2026-06-19 11:38:58,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:38:58
[2026-06-19 11:38:59,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:38:59,356.356 INFO    ] Initializing speech engine...
[2026-06-19 11:38:59,365.365 INFO    ] 2026-06-19 11:38:59
[2026-06-19 11:38:59,612.612 INFO    ] 2026-06-19 11:38:59
[2026-06-19 11:38:59,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:38:59,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:38:59,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:39:00,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:39:00,097.097 INFO    ] time= 19/06/2026 11:39:00
[2026-06-19 11:39:00,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:39:00,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:39:00,314.314 INFO    ] No existing commands found in stream
[2026-06-19 11:39:05,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:39:05,347.347 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 11:39:08,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:39:08,793.793 INFO    ] Checking for system updates...
[2026-06-19 11:39:08,829.829 INFO    ] 200
[2026-06-19 11:39:08,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:08,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:39:08,892.892 INFO    ] No update needed
[2026-06-19 11:39:08,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 11:39:08,929.929 INFO    ] 200
[2026-06-19 11:39:08,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:08,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:39:09,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:39:09,017.017 INFO    ] No camera update needed
[2026-06-19 11:39:09,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:39:09,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:39:09,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:39:09,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:39:11,073.073 INFO    ] ================================================
[2026-06-19 11:39:11,088.088 INFO    ] Launching Daemon at Fri Jun 19 11:39:11 IST 2026
[2026-06-19 11:39:11,098.098 INFO    ] ================================================
[2026-06-19 11:39:11,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:39:11
[2026-06-19 11:39:12,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:39:12,520.520 INFO    ] Initializing speech engine...
[2026-06-19 11:39:12,529.529 INFO    ] 2026-06-19 11:39:12
[2026-06-19 11:39:12,776.776 INFO    ] 2026-06-19 11:39:12
[2026-06-19 11:39:12,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:39:13,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:39:13,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:39:13,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:39:13,250.250 INFO    ] time= 19/06/2026 11:39:13
[2026-06-19 11:39:13,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:39:13,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:39:13,469.469 INFO    ] No existing commands found in stream
[2026-06-19 11:39:18,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:39:18,498.498 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 11:39:21,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:39:21,662.662 INFO    ] Checking for system updates...
[2026-06-19 11:39:21,699.699 INFO    ] 200
[2026-06-19 11:39:21,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:21,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:39:21,758.758 INFO    ] No update needed
[2026-06-19 11:39:21,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 11:39:21,795.795 INFO    ] 200
[2026-06-19 11:39:21,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:21,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:39:21,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:39:21,873.873 INFO    ] No camera update needed
[2026-06-19 11:39:21,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:39:21,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:39:21,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:39:21,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:39:23,932.932 INFO    ] ================================================
[2026-06-19 11:39:23,947.947 INFO    ] Launching Daemon at Fri Jun 19 11:39:23 IST 2026
[2026-06-19 11:39:23,957.957 INFO    ] ================================================
[2026-06-19 11:39:24,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:39:24
[2026-06-19 11:39:25,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:39:25,532.532 INFO    ] Initializing speech engine...
[2026-06-19 11:39:25,557.557 INFO    ] 2026-06-19 11:39:25
[2026-06-19 11:39:25,826.826 INFO    ] 2026-06-19 11:39:25
[2026-06-19 11:39:25,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:39:26,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:39:26,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:39:26,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:39:26,229.229 INFO    ] time= 19/06/2026 11:39:26
[2026-06-19 11:39:26,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:39:26,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:39:26,350.350 INFO    ] No existing commands found in stream
[2026-06-19 11:39:31,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:39:31,380.380 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 11:39:33,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:39:33,642.642 INFO    ] Checking for system updates...
[2026-06-19 11:39:33,678.678 INFO    ] 200
[2026-06-19 11:39:33,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:33,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:39:33,734.734 INFO    ] No update needed
[2026-06-19 11:39:33,737.737 INFO    ] Checking for camera pi updates...
[2026-06-19 11:39:33,774.774 INFO    ] 200
[2026-06-19 11:39:33,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:33,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:39:33,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:39:33,868.868 INFO    ] No camera update needed
[2026-06-19 11:39:33,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:39:33,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:39:33,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:39:33,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:39:35,924.924 INFO    ] ================================================
[2026-06-19 11:39:35,939.939 INFO    ] Launching Daemon at Fri Jun 19 11:39:35 IST 2026
[2026-06-19 11:39:35,950.950 INFO    ] ================================================
[2026-06-19 11:39:36,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:39:36
[2026-06-19 11:39:37,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:39:37,364.364 INFO    ] Initializing speech engine...
[2026-06-19 11:39:37,370.370 INFO    ] 2026-06-19 11:39:37
[2026-06-19 11:39:37,667.667 INFO    ] 2026-06-19 11:39:37
[2026-06-19 11:39:37,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:39:37,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:39:37,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:39:38,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:39:38,086.086 INFO    ] time= 19/06/2026 11:39:38
[2026-06-19 11:39:38,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:39:38,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:39:38,254.254 INFO    ] No existing commands found in stream
[2026-06-19 11:39:43,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:39:43,287.287 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 11:39:44,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:39:44,100.100 INFO    ] Checking for system updates...
[2026-06-19 11:39:44,141.141 INFO    ] 200
[2026-06-19 11:39:44,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:44,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:39:44,201.201 INFO    ] No update needed
[2026-06-19 11:39:44,203.203 INFO    ] Checking for camera pi updates...
[2026-06-19 11:39:44,238.238 INFO    ] 200
[2026-06-19 11:39:44,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:44,283.283 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:39:44,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:39:44,325.325 INFO    ] No camera update needed
[2026-06-19 11:39:44,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:39:44,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:39:44,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:39:44,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:39:46,383.383 INFO    ] ================================================
[2026-06-19 11:39:46,400.400 INFO    ] Launching Daemon at Fri Jun 19 11:39:46 IST 2026
[2026-06-19 11:39:46,412.412 INFO    ] ================================================
[2026-06-19 11:39:47,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:39:47
[2026-06-19 11:39:47,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:39:48,021.021 INFO    ] Initializing speech engine...
[2026-06-19 11:39:48,033.033 INFO    ] 2026-06-19 11:39:48
[2026-06-19 11:39:48,320.320 INFO    ] 2026-06-19 11:39:48
[2026-06-19 11:39:48,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:39:48,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:39:48,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:39:48,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:39:48,852.852 INFO    ] time= 19/06/2026 11:39:48
[2026-06-19 11:39:48,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:39:48,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:39:49,028.028 INFO    ] No existing commands found in stream
[2026-06-19 11:39:54,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:39:54,063.063 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 11:39:56,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:39:56,427.427 INFO    ] Checking for system updates...
[2026-06-19 11:39:56,464.464 INFO    ] 200
[2026-06-19 11:39:56,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:56,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:39:56,522.522 INFO    ] No update needed
[2026-06-19 11:39:56,525.525 INFO    ] Checking for camera pi updates...
[2026-06-19 11:39:56,559.559 INFO    ] 200
[2026-06-19 11:39:56,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:39:56,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:39:56,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:39:56,659.659 INFO    ] No camera update needed
[2026-06-19 11:39:56,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:39:56,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:39:56,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:39:56,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:39:58,714.714 INFO    ] ================================================
[2026-06-19 11:39:58,729.729 INFO    ] Launching Daemon at Fri Jun 19 11:39:58 IST 2026
[2026-06-19 11:39:58,741.741 INFO    ] ================================================
[2026-06-19 11:39:59,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:39:59
[2026-06-19 11:40:00,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:40:00,316.316 INFO    ] Initializing speech engine...
[2026-06-19 11:40:00,329.329 INFO    ] 2026-06-19 11:40:00
[2026-06-19 11:40:00,613.613 INFO    ] 2026-06-19 11:40:00
[2026-06-19 11:40:00,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:40:00,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:40:00,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:40:01,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:40:01,149.149 INFO    ] time= 19/06/2026 11:40:01
[2026-06-19 11:40:01,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:40:01,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:40:01,308.308 INFO    ] No existing commands found in stream
[2026-06-19 11:40:06,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:40:06,333.333 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 11:40:09,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:40:09,500.500 INFO    ] Checking for system updates...
[2026-06-19 11:40:09,543.543 INFO    ] 200
[2026-06-19 11:40:09,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:40:09,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:40:09,626.626 INFO    ] No update needed
[2026-06-19 11:40:09,634.634 INFO    ] Checking for camera pi updates...
[2026-06-19 11:40:09,703.703 INFO    ] 200
[2026-06-19 11:40:09,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:40:09,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:40:09,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:40:09,799.799 INFO    ] No camera update needed
[2026-06-19 11:40:09,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:40:09,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:40:09,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:40:09,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:40:11,855.855 INFO    ] ================================================
[2026-06-19 11:40:11,871.871 INFO    ] Launching Daemon at Fri Jun 19 11:40:11 IST 2026
[2026-06-19 11:40:11,882.882 INFO    ] ================================================
[2026-06-19 11:40:12,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:40:12
[2026-06-19 11:40:13,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:40:13,381.381 INFO    ] Initializing speech engine...
[2026-06-19 11:40:13,393.393 INFO    ] 2026-06-19 11:40:13
[2026-06-19 11:40:13,680.680 INFO    ] 2026-06-19 11:40:13
[2026-06-19 11:40:13,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:40:14,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:40:14,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:40:14,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:40:14,213.213 INFO    ] time= 19/06/2026 11:40:14
[2026-06-19 11:40:14,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:40:14,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:40:14,382.382 INFO    ] No existing commands found in stream
[2026-06-19 11:40:19,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:40:19,416.416 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 11:40:22,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:40:22,343.343 INFO    ] Checking for system updates...
[2026-06-19 11:40:22,381.381 INFO    ] 200
[2026-06-19 11:40:22,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:40:22,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:40:22,448.448 INFO    ] No update needed
[2026-06-19 11:40:22,451.451 INFO    ] Checking for camera pi updates...
[2026-06-19 11:40:22,487.487 INFO    ] 200
[2026-06-19 11:40:22,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:40:22,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:40:22,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:40:22,578.578 INFO    ] No camera update needed
[2026-06-19 11:40:22,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:40:22,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:40:22,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:40:22,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:40:24,638.638 INFO    ] ================================================
[2026-06-19 11:40:24,654.654 INFO    ] Launching Daemon at Fri Jun 19 11:40:24 IST 2026
[2026-06-19 11:40:24,664.664 INFO    ] ================================================
[2026-06-19 11:40:25,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:40:25
[2026-06-19 11:40:26,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:40:26,300.300 INFO    ] Initializing speech engine...
[2026-06-19 11:40:26,314.314 INFO    ] 2026-06-19 11:40:26
[2026-06-19 11:40:26,581.581 INFO    ] 2026-06-19 11:40:26
[2026-06-19 11:40:26,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:40:26,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:40:26,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:40:27,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:40:27,103.103 INFO    ] time= 19/06/2026 11:40:27
[2026-06-19 11:40:27,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:40:27,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:40:27,319.319 INFO    ] No existing commands found in stream
[2026-06-19 11:40:32,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:40:32,340.340 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 11:40:36,465.465 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:40:36,468.468 INFO    ] Checking for system updates...
[2026-06-19 11:40:36,510.510 INFO    ] 200
[2026-06-19 11:40:36,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:40:36,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:40:36,571.571 INFO    ] No update needed
[2026-06-19 11:40:36,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 11:40:36,609.609 INFO    ] 200
[2026-06-19 11:40:36,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:40:36,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:40:36,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:40:36,699.699 INFO    ] No camera update needed
[2026-06-19 11:40:36,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:40:36,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:40:36,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:40:36,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:40:38,758.758 INFO    ] ================================================
[2026-06-19 11:40:38,774.774 INFO    ] Launching Daemon at Fri Jun 19 11:40:38 IST 2026
[2026-06-19 11:40:38,785.785 INFO    ] ================================================
[2026-06-19 11:40:39,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:40:39
[2026-06-19 11:40:40,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:40:40,427.427 INFO    ] Initializing speech engine...
[2026-06-19 11:40:40,440.440 INFO    ] 2026-06-19 11:40:40
[2026-06-19 11:40:40,727.727 INFO    ] 2026-06-19 11:40:40
[2026-06-19 11:40:40,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:40:41,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:40:41,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:40:41,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:40:41,256.256 INFO    ] time= 19/06/2026 11:40:41
[2026-06-19 11:40:41,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:40:41,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:40:41,393.393 INFO    ] No existing commands found in stream
[2026-06-19 11:40:46,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:40:46,424.424 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 11:40:48,453.453 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:40:48,456.456 INFO    ] Checking for system updates...
[2026-06-19 11:40:48,499.499 INFO    ] 200
[2026-06-19 11:40:48,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:40:48,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:40:48,567.567 INFO    ] No update needed
[2026-06-19 11:40:48,569.569 INFO    ] Checking for camera pi updates...
[2026-06-19 11:40:48,604.604 INFO    ] 200
[2026-06-19 11:40:48,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:40:48,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:40:48,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:40:48,688.688 INFO    ] No camera update needed
[2026-06-19 11:40:48,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:40:48,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:40:48,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:40:48,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:40:50,744.744 INFO    ] ================================================
[2026-06-19 11:40:50,760.760 INFO    ] Launching Daemon at Fri Jun 19 11:40:50 IST 2026
[2026-06-19 11:40:50,771.771 INFO    ] ================================================
[2026-06-19 11:40:51,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:40:51
[2026-06-19 11:40:51,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:40:52,199.199 INFO    ] Initializing speech engine...
[2026-06-19 11:40:52,207.207 INFO    ] 2026-06-19 11:40:52
[2026-06-19 11:40:52,463.463 INFO    ] 2026-06-19 11:40:52
[2026-06-19 11:40:52,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:40:52,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:40:52,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:40:52,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:40:53,014.014 INFO    ] time= 19/06/2026 11:40:53
[2026-06-19 11:40:53,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:40:53,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:40:53,162.162 INFO    ] No existing commands found in stream
[2026-06-19 11:40:58,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:40:58,180.180 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 11:41:00,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:41:00,282.282 INFO    ] Checking for system updates...
[2026-06-19 11:41:00,318.318 INFO    ] 200
[2026-06-19 11:41:00,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:00,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:41:00,377.377 INFO    ] No update needed
[2026-06-19 11:41:00,379.379 INFO    ] Checking for camera pi updates...
[2026-06-19 11:41:00,413.413 INFO    ] 200
[2026-06-19 11:41:00,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:00,456.456 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:41:00,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:41:00,609.609 INFO    ] No camera update needed
[2026-06-19 11:41:00,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:41:00,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:41:00,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:41:00,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:41:02,684.684 INFO    ] ================================================
[2026-06-19 11:41:02,708.708 INFO    ] Launching Daemon at Fri Jun 19 11:41:02 IST 2026
[2026-06-19 11:41:02,726.726 INFO    ] ================================================
[2026-06-19 11:41:03,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:41:03
[2026-06-19 11:41:03,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:41:04,234.234 INFO    ] Initializing speech engine...
[2026-06-19 11:41:04,255.255 INFO    ] 2026-06-19 11:41:04
[2026-06-19 11:41:04,515.515 INFO    ] 2026-06-19 11:41:04
[2026-06-19 11:41:04,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:41:04,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:41:04,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:41:04,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:41:04,990.990 INFO    ] time= 19/06/2026 11:41:04
[2026-06-19 11:41:05,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:41:05,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:41:05,205.205 INFO    ] No existing commands found in stream
[2026-06-19 11:41:10,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:41:10,240.240 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 11:41:12,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:41:12,184.184 INFO    ] Checking for system updates...
[2026-06-19 11:41:12,222.222 INFO    ] 200
[2026-06-19 11:41:12,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:12,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:41:12,282.282 INFO    ] No update needed
[2026-06-19 11:41:12,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 11:41:12,321.321 INFO    ] 200
[2026-06-19 11:41:12,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:12,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:41:12,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:41:12,414.414 INFO    ] No camera update needed
[2026-06-19 11:41:12,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:41:12,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:41:12,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:41:12,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:41:14,475.475 INFO    ] ================================================
[2026-06-19 11:41:14,491.491 INFO    ] Launching Daemon at Fri Jun 19 11:41:14 IST 2026
[2026-06-19 11:41:14,503.503 INFO    ] ================================================
[2026-06-19 11:41:15,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:41:15
[2026-06-19 11:41:15,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:41:15,957.957 INFO    ] Initializing speech engine...
[2026-06-19 11:41:15,970.970 INFO    ] 2026-06-19 11:41:15
[2026-06-19 11:41:16,264.264 INFO    ] 2026-06-19 11:41:16
[2026-06-19 11:41:16,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:41:16,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:41:16,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:41:16,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:41:16,761.761 INFO    ] time= 19/06/2026 11:41:16
[2026-06-19 11:41:16,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:41:16,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:41:16,987.987 INFO    ] No existing commands found in stream
[2026-06-19 11:41:22,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:41:22,008.008 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 11:41:24,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:41:24,754.754 INFO    ] Checking for system updates...
[2026-06-19 11:41:24,793.793 INFO    ] 200
[2026-06-19 11:41:24,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:24,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:41:24,853.853 INFO    ] No update needed
[2026-06-19 11:41:24,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 11:41:24,896.896 INFO    ] 200
[2026-06-19 11:41:24,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:24,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:41:24,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:41:24,991.991 INFO    ] No camera update needed
[2026-06-19 11:41:24,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:41:24,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:41:25,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:41:25,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:41:27,051.051 INFO    ] ================================================
[2026-06-19 11:41:27,067.067 INFO    ] Launching Daemon at Fri Jun 19 11:41:27 IST 2026
[2026-06-19 11:41:27,078.078 INFO    ] ================================================
[2026-06-19 11:41:27,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:41:27
[2026-06-19 11:41:28,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:41:28,488.488 INFO    ] Initializing speech engine...
[2026-06-19 11:41:28,510.510 INFO    ] 2026-06-19 11:41:28
[2026-06-19 11:41:28,765.765 INFO    ] 2026-06-19 11:41:28
[2026-06-19 11:41:28,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:41:29,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:41:29,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:41:29,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:41:29,237.237 INFO    ] time= 19/06/2026 11:41:29
[2026-06-19 11:41:29,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:41:29,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:41:29,472.472 INFO    ] No existing commands found in stream
[2026-06-19 11:41:34,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:41:34,492.492 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 11:41:38,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:41:38,376.376 INFO    ] Checking for system updates...
[2026-06-19 11:41:38,413.413 INFO    ] 200
[2026-06-19 11:41:38,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:38,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:41:38,480.480 INFO    ] No update needed
[2026-06-19 11:41:38,482.482 INFO    ] Checking for camera pi updates...
[2026-06-19 11:41:38,520.520 INFO    ] 200
[2026-06-19 11:41:38,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:38,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:41:38,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:41:38,613.613 INFO    ] No camera update needed
[2026-06-19 11:41:38,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:41:38,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:41:38,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:41:38,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:41:40,672.672 INFO    ] ================================================
[2026-06-19 11:41:40,689.689 INFO    ] Launching Daemon at Fri Jun 19 11:41:40 IST 2026
[2026-06-19 11:41:40,700.700 INFO    ] ================================================
[2026-06-19 11:41:41,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:41:41
[2026-06-19 11:41:41,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:41:42,211.211 INFO    ] Initializing speech engine...
[2026-06-19 11:41:42,219.219 INFO    ] 2026-06-19 11:41:42
[2026-06-19 11:41:42,479.479 INFO    ] 2026-06-19 11:41:42
[2026-06-19 11:41:42,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:41:42,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:41:42,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:41:42,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:41:42,975.975 INFO    ] time= 19/06/2026 11:41:42
[2026-06-19 11:41:43,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:41:43,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:41:43,173.173 INFO    ] No existing commands found in stream
[2026-06-19 11:41:48,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:41:48,199.199 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 11:41:51,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:41:51,889.889 INFO    ] Checking for system updates...
[2026-06-19 11:41:51,932.932 INFO    ] 200
[2026-06-19 11:41:51,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:51,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:41:51,999.999 INFO    ] No update needed
[2026-06-19 11:41:52,002.002 INFO    ] Checking for camera pi updates...
[2026-06-19 11:41:52,037.037 INFO    ] 200
[2026-06-19 11:41:52,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:41:52,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:41:52,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:41:52,125.125 INFO    ] No camera update needed
[2026-06-19 11:41:52,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:41:52,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:41:52,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:41:52,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:41:54,186.186 INFO    ] ================================================
[2026-06-19 11:41:54,203.203 INFO    ] Launching Daemon at Fri Jun 19 11:41:54 IST 2026
[2026-06-19 11:41:54,214.214 INFO    ] ================================================
[2026-06-19 11:41:54,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:41:54
[2026-06-19 11:41:55,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:41:55,910.910 INFO    ] Initializing speech engine...
[2026-06-19 11:41:55,920.920 INFO    ] 2026-06-19 11:41:55
[2026-06-19 11:41:56,230.230 INFO    ] 2026-06-19 11:41:56
[2026-06-19 11:41:56,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:41:56,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:41:56,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:41:56,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:41:56,678.678 INFO    ] time= 19/06/2026 11:41:56
[2026-06-19 11:41:56,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:41:56,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:41:56,892.892 INFO    ] No existing commands found in stream
[2026-06-19 11:42:01,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:42:01,916.916 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 11:42:02,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:42:02,902.902 INFO    ] Checking for system updates...
[2026-06-19 11:42:02,946.946 INFO    ] 200
[2026-06-19 11:42:02,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:03,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:42:03,010.010 INFO    ] No update needed
[2026-06-19 11:42:03,013.013 INFO    ] Checking for camera pi updates...
[2026-06-19 11:42:03,062.062 INFO    ] 200
[2026-06-19 11:42:03,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:03,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:42:03,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:42:03,148.148 INFO    ] No camera update needed
[2026-06-19 11:42:03,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:42:03,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:42:03,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:42:03,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:42:05,207.207 INFO    ] ================================================
[2026-06-19 11:42:05,223.223 INFO    ] Launching Daemon at Fri Jun 19 11:42:05 IST 2026
[2026-06-19 11:42:05,234.234 INFO    ] ================================================
[2026-06-19 11:42:05,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:42:05
[2026-06-19 11:42:06,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:42:06,766.766 INFO    ] Initializing speech engine...
[2026-06-19 11:42:06,787.787 INFO    ] 2026-06-19 11:42:06
[2026-06-19 11:42:07,036.036 INFO    ] 2026-06-19 11:42:07
[2026-06-19 11:42:07,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:42:07,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:42:07,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:42:07,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:42:07,440.440 INFO    ] time= 19/06/2026 11:42:07
[2026-06-19 11:42:07,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:42:07,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:42:07,527.527 INFO    ] No existing commands found in stream
[2026-06-19 11:42:12,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:42:12,543.543 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 11:42:14,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:42:14,369.369 INFO    ] Checking for system updates...
[2026-06-19 11:42:14,411.411 INFO    ] 200
[2026-06-19 11:42:14,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:14,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:42:14,482.482 INFO    ] No update needed
[2026-06-19 11:42:14,485.485 INFO    ] Checking for camera pi updates...
[2026-06-19 11:42:14,520.520 INFO    ] 200
[2026-06-19 11:42:14,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:14,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:42:14,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:42:14,619.619 INFO    ] No camera update needed
[2026-06-19 11:42:14,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:42:14,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:42:14,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:42:14,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:42:16,678.678 INFO    ] ================================================
[2026-06-19 11:42:16,694.694 INFO    ] Launching Daemon at Fri Jun 19 11:42:16 IST 2026
[2026-06-19 11:42:16,705.705 INFO    ] ================================================
[2026-06-19 11:42:17,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:42:17
[2026-06-19 11:42:17,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:42:18,209.209 INFO    ] Initializing speech engine...
[2026-06-19 11:42:18,217.217 INFO    ] 2026-06-19 11:42:18
[2026-06-19 11:42:18,464.464 INFO    ] 2026-06-19 11:42:18
[2026-06-19 11:42:18,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:42:18,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:42:18,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:42:18,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:42:19,020.020 INFO    ] time= 19/06/2026 11:42:18
[2026-06-19 11:42:19,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:42:19,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:42:19,158.158 INFO    ] No existing commands found in stream
[2026-06-19 11:42:24,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:42:24,183.183 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 11:42:25,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:42:25,501.501 INFO    ] Checking for system updates...
[2026-06-19 11:42:25,539.539 INFO    ] 200
[2026-06-19 11:42:25,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:25,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:42:25,602.602 INFO    ] No update needed
[2026-06-19 11:42:25,604.604 INFO    ] Checking for camera pi updates...
[2026-06-19 11:42:25,640.640 INFO    ] 200
[2026-06-19 11:42:25,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:25,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:42:25,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:42:25,740.740 INFO    ] No camera update needed
[2026-06-19 11:42:25,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:42:25,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:42:25,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:42:25,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:42:27,806.806 INFO    ] ================================================
[2026-06-19 11:42:27,822.822 INFO    ] Launching Daemon at Fri Jun 19 11:42:27 IST 2026
[2026-06-19 11:42:27,834.834 INFO    ] ================================================
[2026-06-19 11:42:28,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:42:28
[2026-06-19 11:42:28,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:42:29,259.259 INFO    ] Initializing speech engine...
[2026-06-19 11:42:29,268.268 INFO    ] 2026-06-19 11:42:29
[2026-06-19 11:42:29,529.529 INFO    ] 2026-06-19 11:42:29
[2026-06-19 11:42:29,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:42:29,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:42:29,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:42:30,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:42:30,072.072 INFO    ] time= 19/06/2026 11:42:30
[2026-06-19 11:42:30,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:42:30,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:42:30,223.223 INFO    ] No existing commands found in stream
[2026-06-19 11:42:35,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:42:35,241.241 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 11:42:37,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:42:37,934.934 INFO    ] Checking for system updates...
[2026-06-19 11:42:37,970.970 INFO    ] 200
[2026-06-19 11:42:37,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:38,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:42:38,029.029 INFO    ] No update needed
[2026-06-19 11:42:38,031.031 INFO    ] Checking for camera pi updates...
[2026-06-19 11:42:38,065.065 INFO    ] 200
[2026-06-19 11:42:38,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:38,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:42:38,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:42:38,156.156 INFO    ] No camera update needed
[2026-06-19 11:42:38,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:42:38,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:42:38,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:42:38,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:42:40,211.211 INFO    ] ================================================
[2026-06-19 11:42:40,228.228 INFO    ] Launching Daemon at Fri Jun 19 11:42:40 IST 2026
[2026-06-19 11:42:40,240.240 INFO    ] ================================================
[2026-06-19 11:42:40,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:42:40
[2026-06-19 11:42:41,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:42:41,816.816 INFO    ] Initializing speech engine...
[2026-06-19 11:42:41,826.826 INFO    ] 2026-06-19 11:42:41
[2026-06-19 11:42:42,073.073 INFO    ] 2026-06-19 11:42:42
[2026-06-19 11:42:42,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:42:42,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:42:42,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:42:42,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:42:42,551.551 INFO    ] time= 19/06/2026 11:42:42
[2026-06-19 11:42:42,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:42:42,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:42:42,699.699 INFO    ] No existing commands found in stream
[2026-06-19 11:42:47,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:42:47,726.726 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 11:42:49,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:42:49,889.889 INFO    ] Checking for system updates...
[2026-06-19 11:42:49,926.926 INFO    ] 200
[2026-06-19 11:42:49,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:49,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:42:49,984.984 INFO    ] No update needed
[2026-06-19 11:42:49,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 11:42:50,020.020 INFO    ] 200
[2026-06-19 11:42:50,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:42:50,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:42:50,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:42:50,102.102 INFO    ] No camera update needed
[2026-06-19 11:42:50,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:42:50,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:42:50,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:42:50,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:42:52,159.159 INFO    ] ================================================
[2026-06-19 11:42:52,176.176 INFO    ] Launching Daemon at Fri Jun 19 11:42:52 IST 2026
[2026-06-19 11:42:52,187.187 INFO    ] ================================================
[2026-06-19 11:42:52,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:42:52
[2026-06-19 11:42:53,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:42:53,895.895 INFO    ] Initializing speech engine...
[2026-06-19 11:42:53,903.903 INFO    ] 2026-06-19 11:42:53
[2026-06-19 11:42:54,214.214 INFO    ] 2026-06-19 11:42:54
[2026-06-19 11:42:54,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:42:54,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:42:54,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:42:54,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:42:54,726.726 INFO    ] time= 19/06/2026 11:42:54
[2026-06-19 11:42:54,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:42:54,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:42:54,895.895 INFO    ] No existing commands found in stream
[2026-06-19 11:42:59,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:42:59,929.929 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 11:43:02,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:43:02,085.085 INFO    ] Checking for system updates...
[2026-06-19 11:43:02,129.129 INFO    ] 200
[2026-06-19 11:43:02,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:02,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:43:02,199.199 INFO    ] No update needed
[2026-06-19 11:43:02,203.203 INFO    ] Checking for camera pi updates...
[2026-06-19 11:43:02,246.246 INFO    ] 200
[2026-06-19 11:43:02,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:02,297.297 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:43:02,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:43:02,435.435 INFO    ] No camera update needed
[2026-06-19 11:43:02,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:43:02,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:43:02,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:43:02,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:43:04,496.496 INFO    ] ================================================
[2026-06-19 11:43:04,512.512 INFO    ] Launching Daemon at Fri Jun 19 11:43:04 IST 2026
[2026-06-19 11:43:04,523.523 INFO    ] ================================================
[2026-06-19 11:43:05,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:43:05
[2026-06-19 11:43:05,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:43:06,194.194 INFO    ] Initializing speech engine...
[2026-06-19 11:43:06,204.204 INFO    ] 2026-06-19 11:43:06
[2026-06-19 11:43:06,506.506 INFO    ] 2026-06-19 11:43:06
[2026-06-19 11:43:06,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:43:06,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:43:06,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:43:06,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:43:07,047.047 INFO    ] time= 19/06/2026 11:43:06
[2026-06-19 11:43:07,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:43:07,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:43:07,216.216 INFO    ] No existing commands found in stream
[2026-06-19 11:43:12,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:43:12,239.239 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 11:43:13,214.214 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:43:13,217.217 INFO    ] Checking for system updates...
[2026-06-19 11:43:13,254.254 INFO    ] 200
[2026-06-19 11:43:13,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:13,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:43:13,315.315 INFO    ] No update needed
[2026-06-19 11:43:13,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 11:43:13,353.353 INFO    ] 200
[2026-06-19 11:43:13,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:13,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:43:13,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:43:13,443.443 INFO    ] No camera update needed
[2026-06-19 11:43:13,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:43:13,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:43:13,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:43:13,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:43:15,502.502 INFO    ] ================================================
[2026-06-19 11:43:15,518.518 INFO    ] Launching Daemon at Fri Jun 19 11:43:15 IST 2026
[2026-06-19 11:43:15,529.529 INFO    ] ================================================
[2026-06-19 11:43:16,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:43:16
[2026-06-19 11:43:16,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:43:16,958.958 INFO    ] Initializing speech engine...
[2026-06-19 11:43:16,967.967 INFO    ] 2026-06-19 11:43:16
[2026-06-19 11:43:17,214.214 INFO    ] 2026-06-19 11:43:17
[2026-06-19 11:43:17,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:43:17,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:43:17,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:43:17,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:43:17,712.712 INFO    ] time= 19/06/2026 11:43:17
[2026-06-19 11:43:17,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:43:17,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:43:17,908.908 INFO    ] No existing commands found in stream
[2026-06-19 11:43:22,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:43:22,931.931 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 11:43:25,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:43:25,472.472 INFO    ] Checking for system updates...
[2026-06-19 11:43:25,509.509 INFO    ] 200
[2026-06-19 11:43:25,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:25,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:43:25,569.569 INFO    ] No update needed
[2026-06-19 11:43:25,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 11:43:25,606.606 INFO    ] 200
[2026-06-19 11:43:25,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:25,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:43:25,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:43:25,702.702 INFO    ] No camera update needed
[2026-06-19 11:43:25,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:43:25,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:43:25,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:43:25,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:43:27,763.763 INFO    ] ================================================
[2026-06-19 11:43:27,778.778 INFO    ] Launching Daemon at Fri Jun 19 11:43:27 IST 2026
[2026-06-19 11:43:27,789.789 INFO    ] ================================================
[2026-06-19 11:43:28,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:43:28
[2026-06-19 11:43:28,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:43:29,214.214 INFO    ] Initializing speech engine...
[2026-06-19 11:43:29,223.223 INFO    ] 2026-06-19 11:43:29
[2026-06-19 11:43:29,469.469 INFO    ] 2026-06-19 11:43:29
[2026-06-19 11:43:29,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:43:29,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:43:29,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:43:29,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:43:29,942.942 INFO    ] time= 19/06/2026 11:43:29
[2026-06-19 11:43:29,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:43:30,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:43:30,153.153 INFO    ] No existing commands found in stream
[2026-06-19 11:43:35,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:43:35,181.181 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 11:43:36,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:43:36,163.163 INFO    ] Checking for system updates...
[2026-06-19 11:43:36,200.200 INFO    ] 200
[2026-06-19 11:43:36,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:36,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:43:36,257.257 INFO    ] No update needed
[2026-06-19 11:43:36,260.260 INFO    ] Checking for camera pi updates...
[2026-06-19 11:43:36,293.293 INFO    ] 200
[2026-06-19 11:43:36,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:36,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:43:36,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:43:36,387.387 INFO    ] No camera update needed
[2026-06-19 11:43:36,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:43:36,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:43:36,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:43:36,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:43:38,441.441 INFO    ] ================================================
[2026-06-19 11:43:38,457.457 INFO    ] Launching Daemon at Fri Jun 19 11:43:38 IST 2026
[2026-06-19 11:43:38,467.467 INFO    ] ================================================
[2026-06-19 11:43:39,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:43:39
[2026-06-19 11:43:39,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:43:39,996.996 INFO    ] Initializing speech engine...
[2026-06-19 11:43:40,006.006 INFO    ] 2026-06-19 11:43:39
[2026-06-19 11:43:40,305.305 INFO    ] 2026-06-19 11:43:40
[2026-06-19 11:43:40,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:43:40,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:43:40,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:43:40,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:43:40,814.814 INFO    ] time= 19/06/2026 11:43:40
[2026-06-19 11:43:40,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:43:40,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:43:40,989.989 INFO    ] No existing commands found in stream
[2026-06-19 11:43:46,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:43:46,029.029 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 11:43:47,076.076 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:43:47,079.079 INFO    ] Checking for system updates...
[2026-06-19 11:43:47,117.117 INFO    ] 200
[2026-06-19 11:43:47,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:47,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:43:47,175.175 INFO    ] No update needed
[2026-06-19 11:43:47,177.177 INFO    ] Checking for camera pi updates...
[2026-06-19 11:43:47,211.211 INFO    ] 200
[2026-06-19 11:43:47,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:43:47,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:43:47,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:43:47,303.303 INFO    ] No camera update needed
[2026-06-19 11:43:47,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:43:47,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:43:47,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:43:47,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:43:49,358.358 INFO    ] ================================================
[2026-06-19 11:43:49,373.373 INFO    ] Launching Daemon at Fri Jun 19 11:43:49 IST 2026
[2026-06-19 11:43:49,385.385 INFO    ] ================================================
[2026-06-19 11:43:49,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:43:49
[2026-06-19 11:43:50,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:43:50,810.810 INFO    ] Initializing speech engine...
[2026-06-19 11:43:50,820.820 INFO    ] 2026-06-19 11:43:50
[2026-06-19 11:43:51,072.072 INFO    ] 2026-06-19 11:43:51
[2026-06-19 11:43:51,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:43:51,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:43:51,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:43:51,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:43:51,555.555 INFO    ] time= 19/06/2026 11:43:51
[2026-06-19 11:43:51,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:43:51,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:43:51,686.686 INFO    ] No existing commands found in stream
[2026-06-19 11:43:56,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:43:56,709.709 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 11:44:02,008.008 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:44:02,011.011 INFO    ] Checking for system updates...
[2026-06-19 11:44:02,058.058 INFO    ] 200
[2026-06-19 11:44:02,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:02,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:44:02,137.137 INFO    ] No update needed
[2026-06-19 11:44:02,140.140 INFO    ] Checking for camera pi updates...
[2026-06-19 11:44:02,179.179 INFO    ] 200
[2026-06-19 11:44:02,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:02,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:44:02,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:44:02,270.270 INFO    ] No camera update needed
[2026-06-19 11:44:02,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:44:02,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:44:02,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:44:02,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:44:04,332.332 INFO    ] ================================================
[2026-06-19 11:44:04,349.349 INFO    ] Launching Daemon at Fri Jun 19 11:44:04 IST 2026
[2026-06-19 11:44:04,360.360 INFO    ] ================================================
[2026-06-19 11:44:04,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:44:04
[2026-06-19 11:44:05,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:44:05,772.772 INFO    ] Initializing speech engine...
[2026-06-19 11:44:05,795.795 INFO    ] 2026-06-19 11:44:05
[2026-06-19 11:44:06,082.082 INFO    ] 2026-06-19 11:44:06
[2026-06-19 11:44:06,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:44:06,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:44:06,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:44:06,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:44:06,571.571 INFO    ] time= 19/06/2026 11:44:06
[2026-06-19 11:44:06,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:44:06,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:44:06,787.787 INFO    ] No existing commands found in stream
[2026-06-19 11:44:11,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:44:11,818.818 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 11:44:12,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:44:12,726.726 INFO    ] Checking for system updates...
[2026-06-19 11:44:12,766.766 INFO    ] 200
[2026-06-19 11:44:12,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:12,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:44:12,824.824 INFO    ] No update needed
[2026-06-19 11:44:12,827.827 INFO    ] Checking for camera pi updates...
[2026-06-19 11:44:12,862.862 INFO    ] 200
[2026-06-19 11:44:12,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:12,906.906 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:44:12,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:44:12,956.956 INFO    ] No camera update needed
[2026-06-19 11:44:12,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:44:12,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:44:12,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:44:12,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:44:15,012.012 INFO    ] ================================================
[2026-06-19 11:44:15,028.028 INFO    ] Launching Daemon at Fri Jun 19 11:44:15 IST 2026
[2026-06-19 11:44:15,039.039 INFO    ] ================================================
[2026-06-19 11:44:15,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:44:15
[2026-06-19 11:44:16,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:44:16,447.447 INFO    ] Initializing speech engine...
[2026-06-19 11:44:16,461.461 INFO    ] 2026-06-19 11:44:16
[2026-06-19 11:44:16,725.725 INFO    ] 2026-06-19 11:44:16
[2026-06-19 11:44:16,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:44:16,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:44:17,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:44:17,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:44:17,196.196 INFO    ] time= 19/06/2026 11:44:17
[2026-06-19 11:44:17,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:44:17,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:44:17,430.430 INFO    ] No existing commands found in stream
[2026-06-19 11:44:22,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:44:22,449.449 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 11:44:26,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:44:26,184.184 INFO    ] Checking for system updates...
[2026-06-19 11:44:26,225.225 INFO    ] 200
[2026-06-19 11:44:26,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:26,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:44:26,298.298 INFO    ] No update needed
[2026-06-19 11:44:26,300.300 INFO    ] Checking for camera pi updates...
[2026-06-19 11:44:26,339.339 INFO    ] 200
[2026-06-19 11:44:26,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:26,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:44:26,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:44:26,428.428 INFO    ] No camera update needed
[2026-06-19 11:44:26,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:44:26,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:44:26,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:44:26,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:44:28,488.488 INFO    ] ================================================
[2026-06-19 11:44:28,505.505 INFO    ] Launching Daemon at Fri Jun 19 11:44:28 IST 2026
[2026-06-19 11:44:28,516.516 INFO    ] ================================================
[2026-06-19 11:44:29,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:44:29
[2026-06-19 11:44:29,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:44:30,037.037 INFO    ] Initializing speech engine...
[2026-06-19 11:44:30,047.047 INFO    ] 2026-06-19 11:44:30
[2026-06-19 11:44:30,291.291 INFO    ] 2026-06-19 11:44:30
[2026-06-19 11:44:30,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:44:30,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:44:30,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:44:30,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:44:30,768.768 INFO    ] time= 19/06/2026 11:44:30
[2026-06-19 11:44:30,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:44:30,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:44:30,989.989 INFO    ] No existing commands found in stream
[2026-06-19 11:44:36,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:44:36,014.014 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 11:44:38,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:44:38,975.975 INFO    ] Checking for system updates...
[2026-06-19 11:44:39,015.015 INFO    ] 200
[2026-06-19 11:44:39,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:39,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:44:39,080.080 INFO    ] No update needed
[2026-06-19 11:44:39,082.082 INFO    ] Checking for camera pi updates...
[2026-06-19 11:44:39,120.120 INFO    ] 200
[2026-06-19 11:44:39,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:39,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:44:39,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:44:39,205.205 INFO    ] No camera update needed
[2026-06-19 11:44:39,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:44:39,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:44:39,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:44:39,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:44:41,262.262 INFO    ] ================================================
[2026-06-19 11:44:41,278.278 INFO    ] Launching Daemon at Fri Jun 19 11:44:41 IST 2026
[2026-06-19 11:44:41,290.290 INFO    ] ================================================
[2026-06-19 11:44:41,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:44:41
[2026-06-19 11:44:42,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:44:42,710.710 INFO    ] Initializing speech engine...
[2026-06-19 11:44:42,719.719 INFO    ] 2026-06-19 11:44:42
[2026-06-19 11:44:42,972.972 INFO    ] 2026-06-19 11:44:42
[2026-06-19 11:44:43,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:44:43,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:44:43,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:44:43,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:44:43,467.467 INFO    ] time= 19/06/2026 11:44:43
[2026-06-19 11:44:43,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:44:43,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:44:43,678.678 INFO    ] No existing commands found in stream
[2026-06-19 11:44:48,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:44:48,695.695 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 11:44:50,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:44:50,923.923 INFO    ] Checking for system updates...
[2026-06-19 11:44:50,959.959 INFO    ] 200
[2026-06-19 11:44:50,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:51,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:44:51,024.024 INFO    ] No update needed
[2026-06-19 11:44:51,026.026 INFO    ] Checking for camera pi updates...
[2026-06-19 11:44:51,064.064 INFO    ] 200
[2026-06-19 11:44:51,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:44:51,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:44:51,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:44:51,161.161 INFO    ] No camera update needed
[2026-06-19 11:44:51,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:44:51,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:44:51,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:44:51,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:44:53,216.216 INFO    ] ================================================
[2026-06-19 11:44:53,232.232 INFO    ] Launching Daemon at Fri Jun 19 11:44:53 IST 2026
[2026-06-19 11:44:53,243.243 INFO    ] ================================================
[2026-06-19 11:44:53,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:44:53
[2026-06-19 11:44:54,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:44:54,823.823 INFO    ] Initializing speech engine...
[2026-06-19 11:44:54,833.833 INFO    ] 2026-06-19 11:44:54
[2026-06-19 11:44:55,078.078 INFO    ] 2026-06-19 11:44:55
[2026-06-19 11:44:55,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:44:55,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:44:55,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:44:55,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:44:55,530.530 INFO    ] time= 19/06/2026 11:44:55
[2026-06-19 11:44:55,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:44:55,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:44:55,758.758 INFO    ] No existing commands found in stream
[2026-06-19 11:45:00,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:45:00,783.783 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 11:45:04,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:45:04,976.976 INFO    ] Checking for system updates...
[2026-06-19 11:45:05,012.012 INFO    ] 200
[2026-06-19 11:45:05,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:05,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:45:05,076.076 INFO    ] No update needed
[2026-06-19 11:45:05,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 11:45:05,115.115 INFO    ] 200
[2026-06-19 11:45:05,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:05,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:45:05,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:45:05,317.317 INFO    ] No camera update needed
[2026-06-19 11:45:05,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:45:05,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:45:05,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:45:05,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:45:07,374.374 INFO    ] ================================================
[2026-06-19 11:45:07,392.392 INFO    ] Launching Daemon at Fri Jun 19 11:45:07 IST 2026
[2026-06-19 11:45:07,407.407 INFO    ] ================================================
[2026-06-19 11:45:07,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:45:07
[2026-06-19 11:45:08,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:45:08,871.871 INFO    ] Initializing speech engine...
[2026-06-19 11:45:08,876.876 INFO    ] 2026-06-19 11:45:08
[2026-06-19 11:45:09,126.126 INFO    ] 2026-06-19 11:45:09
[2026-06-19 11:45:09,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:45:09,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:45:09,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:45:09,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:45:09,618.618 INFO    ] time= 19/06/2026 11:45:09
[2026-06-19 11:45:09,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:45:09,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:45:09,822.822 INFO    ] No existing commands found in stream
[2026-06-19 11:45:14,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:45:14,850.850 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 11:45:15,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:45:15,475.475 INFO    ] Checking for system updates...
[2026-06-19 11:45:15,515.515 INFO    ] 200
[2026-06-19 11:45:15,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:15,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:45:15,572.572 INFO    ] No update needed
[2026-06-19 11:45:15,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 11:45:15,611.611 INFO    ] 200
[2026-06-19 11:45:15,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:15,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:45:15,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:45:15,700.700 INFO    ] No camera update needed
[2026-06-19 11:45:15,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:45:15,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:45:15,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:45:15,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:45:17,757.757 INFO    ] ================================================
[2026-06-19 11:45:17,773.773 INFO    ] Launching Daemon at Fri Jun 19 11:45:17 IST 2026
[2026-06-19 11:45:17,784.784 INFO    ] ================================================
[2026-06-19 11:45:18,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:45:18
[2026-06-19 11:45:19,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:45:19,361.361 INFO    ] Initializing speech engine...
[2026-06-19 11:45:19,373.373 INFO    ] 2026-06-19 11:45:19
[2026-06-19 11:45:19,653.653 INFO    ] 2026-06-19 11:45:19
[2026-06-19 11:45:19,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:45:19,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:45:19,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:45:20,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:45:20,189.189 INFO    ] time= 19/06/2026 11:45:20
[2026-06-19 11:45:20,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:45:20,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:45:20,367.367 INFO    ] No existing commands found in stream
[2026-06-19 11:45:25,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:45:25,406.406 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 11:45:27,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:45:27,945.945 INFO    ] Checking for system updates...
[2026-06-19 11:45:27,982.982 INFO    ] 200
[2026-06-19 11:45:27,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:28,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:45:28,044.044 INFO    ] No update needed
[2026-06-19 11:45:28,047.047 INFO    ] Checking for camera pi updates...
[2026-06-19 11:45:28,082.082 INFO    ] 200
[2026-06-19 11:45:28,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:28,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:45:28,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:45:28,183.183 INFO    ] No camera update needed
[2026-06-19 11:45:28,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:45:28,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:45:28,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:45:28,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:45:30,242.242 INFO    ] ================================================
[2026-06-19 11:45:30,257.257 INFO    ] Launching Daemon at Fri Jun 19 11:45:30 IST 2026
[2026-06-19 11:45:30,268.268 INFO    ] ================================================
[2026-06-19 11:45:30,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:45:30
[2026-06-19 11:45:31,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:45:31,679.679 INFO    ] Initializing speech engine...
[2026-06-19 11:45:31,685.685 INFO    ] 2026-06-19 11:45:31
[2026-06-19 11:45:31,979.979 INFO    ] 2026-06-19 11:45:31
[2026-06-19 11:45:32,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:45:32,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:45:32,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:45:32,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:45:32,429.429 INFO    ] time= 19/06/2026 11:45:32
[2026-06-19 11:45:32,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:45:32,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:45:32,551.551 INFO    ] No existing commands found in stream
[2026-06-19 11:45:37,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:45:37,564.564 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 11:45:40,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:45:40,280.280 INFO    ] Checking for system updates...
[2026-06-19 11:45:40,319.319 INFO    ] 200
[2026-06-19 11:45:40,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:40,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:45:40,382.382 INFO    ] No update needed
[2026-06-19 11:45:40,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 11:45:40,422.422 INFO    ] 200
[2026-06-19 11:45:40,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:40,465.465 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:45:40,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:45:40,515.515 INFO    ] No camera update needed
[2026-06-19 11:45:40,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:45:40,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:45:40,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:45:40,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:45:42,573.573 INFO    ] ================================================
[2026-06-19 11:45:42,588.588 INFO    ] Launching Daemon at Fri Jun 19 11:45:42 IST 2026
[2026-06-19 11:45:42,599.599 INFO    ] ================================================
[2026-06-19 11:45:43,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:45:43
[2026-06-19 11:45:43,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:45:44,058.058 INFO    ] Initializing speech engine...
[2026-06-19 11:45:44,064.064 INFO    ] 2026-06-19 11:45:44
[2026-06-19 11:45:44,326.326 INFO    ] 2026-06-19 11:45:44
[2026-06-19 11:45:44,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:45:44,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:45:44,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:45:44,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:45:44,807.807 INFO    ] time= 19/06/2026 11:45:44
[2026-06-19 11:45:44,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:45:44,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:45:44,996.996 INFO    ] No existing commands found in stream
[2026-06-19 11:45:50,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:45:50,026.026 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 11:45:51,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:45:51,387.387 INFO    ] Checking for system updates...
[2026-06-19 11:45:51,428.428 INFO    ] 200
[2026-06-19 11:45:51,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:51,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:45:51,498.498 INFO    ] No update needed
[2026-06-19 11:45:51,501.501 INFO    ] Checking for camera pi updates...
[2026-06-19 11:45:51,540.540 INFO    ] 200
[2026-06-19 11:45:51,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:45:51,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:45:51,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:45:51,636.636 INFO    ] No camera update needed
[2026-06-19 11:45:51,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:45:51,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:45:51,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:45:51,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:45:53,691.691 INFO    ] ================================================
[2026-06-19 11:45:53,707.707 INFO    ] Launching Daemon at Fri Jun 19 11:45:53 IST 2026
[2026-06-19 11:45:53,717.717 INFO    ] ================================================
[2026-06-19 11:45:54,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:45:54
[2026-06-19 11:45:54,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:45:55,149.149 INFO    ] Initializing speech engine...
[2026-06-19 11:45:55,157.157 INFO    ] 2026-06-19 11:45:55
[2026-06-19 11:45:55,408.408 INFO    ] 2026-06-19 11:45:55
[2026-06-19 11:45:55,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:45:55,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:45:55,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:45:55,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:45:55,810.810 INFO    ] time= 19/06/2026 11:45:55
[2026-06-19 11:45:55,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:45:55,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:45:55,950.950 INFO    ] No existing commands found in stream
[2026-06-19 11:46:00,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:46:00,984.984 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 11:46:03,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:46:03,096.096 INFO    ] Checking for system updates...
[2026-06-19 11:46:03,139.139 INFO    ] 200
[2026-06-19 11:46:03,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:03,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:46:03,203.203 INFO    ] No update needed
[2026-06-19 11:46:03,206.206 INFO    ] Checking for camera pi updates...
[2026-06-19 11:46:03,249.249 INFO    ] 200
[2026-06-19 11:46:03,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:03,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:46:03,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:46:03,361.361 INFO    ] No camera update needed
[2026-06-19 11:46:03,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:46:03,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:46:03,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:46:03,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:46:05,419.419 INFO    ] ================================================
[2026-06-19 11:46:05,435.435 INFO    ] Launching Daemon at Fri Jun 19 11:46:05 IST 2026
[2026-06-19 11:46:05,446.446 INFO    ] ================================================
[2026-06-19 11:46:06,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:46:06
[2026-06-19 11:46:06,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:46:06,880.880 INFO    ] Initializing speech engine...
[2026-06-19 11:46:06,888.888 INFO    ] 2026-06-19 11:46:06
[2026-06-19 11:46:07,180.180 INFO    ] 2026-06-19 11:46:07
[2026-06-19 11:46:07,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:46:07,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:46:07,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:46:07,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:46:07,598.598 INFO    ] time= 19/06/2026 11:46:07
[2026-06-19 11:46:07,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:46:07,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:46:07,695.695 INFO    ] No existing commands found in stream
[2026-06-19 11:46:12,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:46:12,733.733 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 11:46:16,420.420 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:46:16,423.423 INFO    ] Checking for system updates...
[2026-06-19 11:46:16,462.462 INFO    ] 200
[2026-06-19 11:46:16,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:16,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:46:16,526.526 INFO    ] No update needed
[2026-06-19 11:46:16,529.529 INFO    ] Checking for camera pi updates...
[2026-06-19 11:46:16,566.566 INFO    ] 200
[2026-06-19 11:46:16,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:16,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:46:16,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:46:16,656.656 INFO    ] No camera update needed
[2026-06-19 11:46:16,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:46:16,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:46:16,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:46:16,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:46:18,712.712 INFO    ] ================================================
[2026-06-19 11:46:18,727.727 INFO    ] Launching Daemon at Fri Jun 19 11:46:18 IST 2026
[2026-06-19 11:46:18,738.738 INFO    ] ================================================
[2026-06-19 11:46:19,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:46:19
[2026-06-19 11:46:20,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:46:20,343.343 INFO    ] Initializing speech engine...
[2026-06-19 11:46:20,356.356 INFO    ] 2026-06-19 11:46:20
[2026-06-19 11:46:20,636.636 INFO    ] 2026-06-19 11:46:20
[2026-06-19 11:46:20,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:46:20,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:46:20,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:46:21,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:46:21,093.093 INFO    ] time= 19/06/2026 11:46:21
[2026-06-19 11:46:21,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:46:21,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:46:21,332.332 INFO    ] No existing commands found in stream
[2026-06-19 11:46:26,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:46:26,356.356 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 11:46:29,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:46:29,299.299 INFO    ] Checking for system updates...
[2026-06-19 11:46:29,337.337 INFO    ] 200
[2026-06-19 11:46:29,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:29,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:46:29,397.397 INFO    ] No update needed
[2026-06-19 11:46:29,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 11:46:29,434.434 INFO    ] 200
[2026-06-19 11:46:29,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:29,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:46:29,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:46:29,533.533 INFO    ] No camera update needed
[2026-06-19 11:46:29,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:46:29,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:46:29,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:46:29,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:46:31,590.590 INFO    ] ================================================
[2026-06-19 11:46:31,607.607 INFO    ] Launching Daemon at Fri Jun 19 11:46:31 IST 2026
[2026-06-19 11:46:31,618.618 INFO    ] ================================================
[2026-06-19 11:46:32,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:46:32
[2026-06-19 11:46:32,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:46:33,159.159 INFO    ] Initializing speech engine...
[2026-06-19 11:46:33,175.175 INFO    ] 2026-06-19 11:46:33
[2026-06-19 11:46:33,452.452 INFO    ] 2026-06-19 11:46:33
[2026-06-19 11:46:33,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:46:33,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:46:33,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:46:33,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:46:33,840.840 INFO    ] time= 19/06/2026 11:46:33
[2026-06-19 11:46:33,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:46:33,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:46:34,034.034 INFO    ] No existing commands found in stream
[2026-06-19 11:46:39,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:46:39,049.049 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 11:46:39,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:46:39,595.595 INFO    ] Checking for system updates...
[2026-06-19 11:46:39,632.632 INFO    ] 200
[2026-06-19 11:46:39,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:39,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:46:39,698.698 INFO    ] No update needed
[2026-06-19 11:46:39,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 11:46:39,738.738 INFO    ] 200
[2026-06-19 11:46:39,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:39,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:46:39,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:46:39,828.828 INFO    ] No camera update needed
[2026-06-19 11:46:39,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:46:39,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:46:39,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:46:39,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:46:41,884.884 INFO    ] ================================================
[2026-06-19 11:46:41,900.900 INFO    ] Launching Daemon at Fri Jun 19 11:46:41 IST 2026
[2026-06-19 11:46:41,911.911 INFO    ] ================================================
[2026-06-19 11:46:42,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:46:42
[2026-06-19 11:46:43,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:46:43,559.559 INFO    ] Initializing speech engine...
[2026-06-19 11:46:43,571.571 INFO    ] 2026-06-19 11:46:43
[2026-06-19 11:46:43,884.884 INFO    ] 2026-06-19 11:46:43
[2026-06-19 11:46:43,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:46:44,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:46:44,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:46:44,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:46:44,403.403 INFO    ] time= 19/06/2026 11:46:44
[2026-06-19 11:46:44,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:46:44,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:46:44,558.558 INFO    ] No existing commands found in stream
[2026-06-19 11:46:49,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:46:49,591.591 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-19 11:46:52,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:46:52,829.829 INFO    ] Checking for system updates...
[2026-06-19 11:46:52,870.870 INFO    ] 200
[2026-06-19 11:46:52,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:52,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:46:52,935.935 INFO    ] No update needed
[2026-06-19 11:46:52,937.937 INFO    ] Checking for camera pi updates...
[2026-06-19 11:46:52,972.972 INFO    ] 200
[2026-06-19 11:46:52,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:46:53,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:46:53,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:46:53,073.073 INFO    ] No camera update needed
[2026-06-19 11:46:53,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:46:53,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:46:53,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:46:53,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:46:55,129.129 INFO    ] ================================================
[2026-06-19 11:46:55,145.145 INFO    ] Launching Daemon at Fri Jun 19 11:46:55 IST 2026
[2026-06-19 11:46:55,156.156 INFO    ] ================================================
[2026-06-19 11:46:55,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:46:55
[2026-06-19 11:46:56,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:46:56,817.817 INFO    ] Initializing speech engine...
[2026-06-19 11:46:56,830.830 INFO    ] 2026-06-19 11:46:56
[2026-06-19 11:46:57,104.104 INFO    ] 2026-06-19 11:46:57
[2026-06-19 11:46:57,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:46:57,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:46:57,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:46:57,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:46:57,677.677 INFO    ] time= 19/06/2026 11:46:57
[2026-06-19 11:46:57,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:46:57,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:46:57,841.841 INFO    ] No existing commands found in stream
[2026-06-19 11:47:02,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:47:02,861.861 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 11:47:05,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:47:05,370.370 INFO    ] Checking for system updates...
[2026-06-19 11:47:05,408.408 INFO    ] 200
[2026-06-19 11:47:05,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:05,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:47:05,468.468 INFO    ] No update needed
[2026-06-19 11:47:05,471.471 INFO    ] Checking for camera pi updates...
[2026-06-19 11:47:05,506.506 INFO    ] 200
[2026-06-19 11:47:05,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:05,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:47:05,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:47:05,701.701 INFO    ] No camera update needed
[2026-06-19 11:47:05,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:47:05,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:47:05,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:47:05,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:47:07,758.758 INFO    ] ================================================
[2026-06-19 11:47:07,774.774 INFO    ] Launching Daemon at Fri Jun 19 11:47:07 IST 2026
[2026-06-19 11:47:07,785.785 INFO    ] ================================================
[2026-06-19 11:47:08,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:47:08
[2026-06-19 11:47:09,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:47:09,474.474 INFO    ] Initializing speech engine...
[2026-06-19 11:47:09,489.489 INFO    ] 2026-06-19 11:47:09
[2026-06-19 11:47:09,775.775 INFO    ] 2026-06-19 11:47:09
[2026-06-19 11:47:09,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:47:10,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:47:10,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:47:10,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:47:10,246.246 INFO    ] time= 19/06/2026 11:47:10
[2026-06-19 11:47:10,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:47:10,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:47:10,474.474 INFO    ] No existing commands found in stream
[2026-06-19 11:47:15,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:47:15,499.499 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 11:47:19,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:47:19,788.788 INFO    ] Checking for system updates...
[2026-06-19 11:47:19,829.829 INFO    ] 200
[2026-06-19 11:47:19,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:19,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:47:19,895.895 INFO    ] No update needed
[2026-06-19 11:47:19,898.898 INFO    ] Checking for camera pi updates...
[2026-06-19 11:47:19,938.938 INFO    ] 200
[2026-06-19 11:47:19,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:19,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:47:20,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:47:20,038.038 INFO    ] No camera update needed
[2026-06-19 11:47:20,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:47:20,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:47:20,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:47:20,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:47:22,095.095 INFO    ] ================================================
[2026-06-19 11:47:22,111.111 INFO    ] Launching Daemon at Fri Jun 19 11:47:22 IST 2026
[2026-06-19 11:47:22,122.122 INFO    ] ================================================
[2026-06-19 11:47:22,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:47:22
[2026-06-19 11:47:23,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:47:23,523.523 INFO    ] Initializing speech engine...
[2026-06-19 11:47:23,544.544 INFO    ] 2026-06-19 11:47:23
[2026-06-19 11:47:23,803.803 INFO    ] 2026-06-19 11:47:23
[2026-06-19 11:47:23,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:47:24,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:47:24,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:47:24,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:47:24,254.254 INFO    ] time= 19/06/2026 11:47:24
[2026-06-19 11:47:24,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:47:24,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:47:24,421.421 INFO    ] No existing commands found in stream
[2026-06-19 11:47:29,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:47:29,454.454 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 11:47:31,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:47:31,707.707 INFO    ] Checking for system updates...
[2026-06-19 11:47:31,750.750 INFO    ] 200
[2026-06-19 11:47:31,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:31,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:47:31,817.817 INFO    ] No update needed
[2026-06-19 11:47:31,821.821 INFO    ] Checking for camera pi updates...
[2026-06-19 11:47:31,858.858 INFO    ] 200
[2026-06-19 11:47:31,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:31,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:47:31,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:47:31,941.941 INFO    ] No camera update needed
[2026-06-19 11:47:31,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:47:31,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:47:31,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:47:31,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:47:34,006.006 INFO    ] ================================================
[2026-06-19 11:47:34,021.021 INFO    ] Launching Daemon at Fri Jun 19 11:47:34 IST 2026
[2026-06-19 11:47:34,033.033 INFO    ] ================================================
[2026-06-19 11:47:34,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:47:34
[2026-06-19 11:47:35,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:47:35,482.482 INFO    ] Initializing speech engine...
[2026-06-19 11:47:35,492.492 INFO    ] 2026-06-19 11:47:35
[2026-06-19 11:47:35,754.754 INFO    ] 2026-06-19 11:47:35
[2026-06-19 11:47:35,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:47:36,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:47:36,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:47:36,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:47:36,207.207 INFO    ] time= 19/06/2026 11:47:36
[2026-06-19 11:47:36,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:47:36,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:47:36,423.423 INFO    ] No existing commands found in stream
[2026-06-19 11:47:41,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:47:41,456.456 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 11:47:45,513.513 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:47:45,516.516 INFO    ] Checking for system updates...
[2026-06-19 11:47:45,554.554 INFO    ] 200
[2026-06-19 11:47:45,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:45,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:47:45,613.613 INFO    ] No update needed
[2026-06-19 11:47:45,616.616 INFO    ] Checking for camera pi updates...
[2026-06-19 11:47:45,656.656 INFO    ] 200
[2026-06-19 11:47:45,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:45,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:47:45,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:47:45,758.758 INFO    ] No camera update needed
[2026-06-19 11:47:45,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:47:45,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:47:45,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:47:45,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:47:47,819.819 INFO    ] ================================================
[2026-06-19 11:47:47,835.835 INFO    ] Launching Daemon at Fri Jun 19 11:47:47 IST 2026
[2026-06-19 11:47:47,846.846 INFO    ] ================================================
[2026-06-19 11:47:48,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:47:48
[2026-06-19 11:47:49,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:47:49,339.339 INFO    ] Initializing speech engine...
[2026-06-19 11:47:49,361.361 INFO    ] 2026-06-19 11:47:49
[2026-06-19 11:47:49,624.624 INFO    ] 2026-06-19 11:47:49
[2026-06-19 11:47:49,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:47:49,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:47:49,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:47:50,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:47:50,052.052 INFO    ] time= 19/06/2026 11:47:50
[2026-06-19 11:47:50,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:47:50,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:47:50,233.233 INFO    ] No existing commands found in stream
[2026-06-19 11:47:55,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:47:55,261.261 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 11:47:58,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:47:58,032.032 INFO    ] Checking for system updates...
[2026-06-19 11:47:58,072.072 INFO    ] 200
[2026-06-19 11:47:58,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:58,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:47:58,138.138 INFO    ] No update needed
[2026-06-19 11:47:58,141.141 INFO    ] Checking for camera pi updates...
[2026-06-19 11:47:58,179.179 INFO    ] 200
[2026-06-19 11:47:58,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:47:58,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:47:58,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:47:58,276.276 INFO    ] No camera update needed
[2026-06-19 11:47:58,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:47:58,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:47:58,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:47:58,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:48:00,332.332 INFO    ] ================================================
[2026-06-19 11:48:00,348.348 INFO    ] Launching Daemon at Fri Jun 19 11:48:00 IST 2026
[2026-06-19 11:48:00,359.359 INFO    ] ================================================
[2026-06-19 11:48:00,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:48:00
[2026-06-19 11:48:01,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:48:01,985.985 INFO    ] Initializing speech engine...
[2026-06-19 11:48:01,994.994 INFO    ] 2026-06-19 11:48:01
[2026-06-19 11:48:02,275.275 INFO    ] 2026-06-19 11:48:02
[2026-06-19 11:48:02,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:48:02,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:48:02,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:48:02,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:48:02,721.721 INFO    ] time= 19/06/2026 11:48:02
[2026-06-19 11:48:02,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:48:02,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:48:02,867.867 INFO    ] No existing commands found in stream
[2026-06-19 11:48:07,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:48:07,890.890 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 11:48:11,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:48:11,305.305 INFO    ] Checking for system updates...
[2026-06-19 11:48:11,342.342 INFO    ] 200
[2026-06-19 11:48:11,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:11,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:48:11,400.400 INFO    ] No update needed
[2026-06-19 11:48:11,402.402 INFO    ] Checking for camera pi updates...
[2026-06-19 11:48:11,437.437 INFO    ] 200
[2026-06-19 11:48:11,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:11,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:48:11,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:48:11,527.527 INFO    ] No camera update needed
[2026-06-19 11:48:11,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:48:11,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:48:11,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:48:11,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:48:13,584.584 INFO    ] ================================================
[2026-06-19 11:48:13,599.599 INFO    ] Launching Daemon at Fri Jun 19 11:48:13 IST 2026
[2026-06-19 11:48:13,610.610 INFO    ] ================================================
[2026-06-19 11:48:14,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:48:14
[2026-06-19 11:48:14,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:48:15,255.255 INFO    ] Initializing speech engine...
[2026-06-19 11:48:15,266.266 INFO    ] 2026-06-19 11:48:15
[2026-06-19 11:48:15,552.552 INFO    ] 2026-06-19 11:48:15
[2026-06-19 11:48:15,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:48:15,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:48:15,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:48:16,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:48:16,107.107 INFO    ] time= 19/06/2026 11:48:16
[2026-06-19 11:48:16,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:48:16,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:48:16,270.270 INFO    ] No existing commands found in stream
[2026-06-19 11:48:21,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:48:21,294.294 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 11:48:22,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:48:22,242.242 INFO    ] Checking for system updates...
[2026-06-19 11:48:22,277.277 INFO    ] 200
[2026-06-19 11:48:22,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:22,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:48:22,341.341 INFO    ] No update needed
[2026-06-19 11:48:22,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 11:48:22,377.377 INFO    ] 200
[2026-06-19 11:48:22,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:22,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:48:22,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:48:22,471.471 INFO    ] No camera update needed
[2026-06-19 11:48:22,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:48:22,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:48:22,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:48:22,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:48:24,529.529 INFO    ] ================================================
[2026-06-19 11:48:24,628.628 INFO    ] Launching Daemon at Fri Jun 19 11:48:24 IST 2026
[2026-06-19 11:48:24,640.640 INFO    ] ================================================
[2026-06-19 11:48:25,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:48:25
[2026-06-19 11:48:25,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:48:26,170.170 INFO    ] Initializing speech engine...
[2026-06-19 11:48:26,200.200 INFO    ] 2026-06-19 11:48:26
[2026-06-19 11:48:26,473.473 INFO    ] 2026-06-19 11:48:26
[2026-06-19 11:48:26,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:48:26,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:48:26,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:48:26,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:48:26,901.901 INFO    ] time= 19/06/2026 11:48:26
[2026-06-19 11:48:26,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:48:26,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:48:27,046.046 INFO    ] No existing commands found in stream
[2026-06-19 11:48:32,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:48:32,070.070 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 11:48:32,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:48:32,726.726 INFO    ] Checking for system updates...
[2026-06-19 11:48:32,775.775 INFO    ] 200
[2026-06-19 11:48:32,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:32,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:48:32,843.843 INFO    ] No update needed
[2026-06-19 11:48:32,846.846 INFO    ] Checking for camera pi updates...
[2026-06-19 11:48:32,882.882 INFO    ] 200
[2026-06-19 11:48:32,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:32,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:48:32,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:48:32,974.974 INFO    ] No camera update needed
[2026-06-19 11:48:32,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:48:32,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:48:32,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:48:32,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:48:35,036.036 INFO    ] ================================================
[2026-06-19 11:48:35,051.051 INFO    ] Launching Daemon at Fri Jun 19 11:48:35 IST 2026
[2026-06-19 11:48:35,063.063 INFO    ] ================================================
[2026-06-19 11:48:35,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:48:35
[2026-06-19 11:48:36,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:48:36,678.678 INFO    ] Initializing speech engine...
[2026-06-19 11:48:36,691.691 INFO    ] 2026-06-19 11:48:36
[2026-06-19 11:48:37,005.005 INFO    ] 2026-06-19 11:48:36
[2026-06-19 11:48:37,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:48:37,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:48:37,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:48:37,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:48:37,526.526 INFO    ] time= 19/06/2026 11:48:37
[2026-06-19 11:48:37,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:48:37,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:48:37,684.684 INFO    ] No existing commands found in stream
[2026-06-19 11:48:42,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:48:42,705.705 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 11:48:44,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:48:44,760.760 INFO    ] Checking for system updates...
[2026-06-19 11:48:44,797.797 INFO    ] 200
[2026-06-19 11:48:44,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:44,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:48:44,856.856 INFO    ] No update needed
[2026-06-19 11:48:44,859.859 INFO    ] Checking for camera pi updates...
[2026-06-19 11:48:44,895.895 INFO    ] 200
[2026-06-19 11:48:44,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:44,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:48:44,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:48:44,993.993 INFO    ] No camera update needed
[2026-06-19 11:48:44,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:48:44,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:48:45,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:48:45,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:48:47,053.053 INFO    ] ================================================
[2026-06-19 11:48:47,068.068 INFO    ] Launching Daemon at Fri Jun 19 11:48:47 IST 2026
[2026-06-19 11:48:47,079.079 INFO    ] ================================================
[2026-06-19 11:48:47,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:48:47
[2026-06-19 11:48:48,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:48:48,521.521 INFO    ] Initializing speech engine...
[2026-06-19 11:48:48,546.546 INFO    ] 2026-06-19 11:48:48
[2026-06-19 11:48:48,823.823 INFO    ] 2026-06-19 11:48:48
[2026-06-19 11:48:48,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:48:49,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:48:49,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:48:49,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:48:49,248.248 INFO    ] time= 19/06/2026 11:48:49
[2026-06-19 11:48:49,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:48:49,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:48:49,416.416 INFO    ] No existing commands found in stream
[2026-06-19 11:48:54,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:48:54,444.444 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 11:48:58,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:48:58,146.146 INFO    ] Checking for system updates...
[2026-06-19 11:48:58,186.186 INFO    ] 200
[2026-06-19 11:48:58,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:58,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:48:58,251.251 INFO    ] No update needed
[2026-06-19 11:48:58,253.253 INFO    ] Checking for camera pi updates...
[2026-06-19 11:48:58,291.291 INFO    ] 200
[2026-06-19 11:48:58,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:48:58,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:48:58,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:48:58,383.383 INFO    ] No camera update needed
[2026-06-19 11:48:58,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:48:58,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:48:58,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:48:58,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:49:00,441.441 INFO    ] ================================================
[2026-06-19 11:49:00,456.456 INFO    ] Launching Daemon at Fri Jun 19 11:49:00 IST 2026
[2026-06-19 11:49:00,467.467 INFO    ] ================================================
[2026-06-19 11:49:01,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:49:01
[2026-06-19 11:49:01,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:49:02,104.104 INFO    ] Initializing speech engine...
[2026-06-19 11:49:02,121.121 INFO    ] 2026-06-19 11:49:02
[2026-06-19 11:49:02,404.404 INFO    ] 2026-06-19 11:49:02
[2026-06-19 11:49:02,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:49:02,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:49:02,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:49:02,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:49:02,837.837 INFO    ] time= 19/06/2026 11:49:02
[2026-06-19 11:49:02,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:49:02,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:49:03,023.023 INFO    ] No existing commands found in stream
[2026-06-19 11:49:08,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:49:08,052.052 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 11:49:11,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:49:11,057.057 INFO    ] Checking for system updates...
[2026-06-19 11:49:11,101.101 INFO    ] 200
[2026-06-19 11:49:11,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 11:49:11,107.107 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 11:49:11,109.109 INFO    ] Checking for camera pi updates...
[2026-06-19 11:49:11,162.162 INFO    ] 200
[2026-06-19 11:49:11,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 11:49:11,168.168 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 11:49:11,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:49:11,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:49:11,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:49:11,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:49:13,225.225 INFO    ] ================================================
[2026-06-19 11:49:13,240.240 INFO    ] Launching Daemon at Fri Jun 19 11:49:13 IST 2026
[2026-06-19 11:49:13,251.251 INFO    ] ================================================
[2026-06-19 11:49:13,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:49:13
[2026-06-19 11:49:14,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:49:14,710.710 INFO    ] Initializing speech engine...
[2026-06-19 11:49:14,719.719 INFO    ] 2026-06-19 11:49:14
[2026-06-19 11:49:14,971.971 INFO    ] 2026-06-19 11:49:14
[2026-06-19 11:49:15,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:49:15,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:49:15,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:49:15,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:49:15,467.467 INFO    ] time= 19/06/2026 11:49:15
[2026-06-19 11:49:15,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:49:15,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:49:15,686.686 INFO    ] No existing commands found in stream
[2026-06-19 11:49:20,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:49:20,704.704 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 11:49:26,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:49:26,490.490 INFO    ] Checking for system updates...
[2026-06-19 11:49:26,526.526 INFO    ] 200
[2026-06-19 11:49:26,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:49:26,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:49:26,584.584 INFO    ] No update needed
[2026-06-19 11:49:26,586.586 INFO    ] Checking for camera pi updates...
[2026-06-19 11:49:26,620.620 INFO    ] 200
[2026-06-19 11:49:26,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:49:26,663.663 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:49:26,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:49:26,808.808 INFO    ] No camera update needed
[2026-06-19 11:49:26,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:49:26,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:49:26,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:49:26,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:49:28,867.867 INFO    ] ================================================
[2026-06-19 11:49:28,882.882 INFO    ] Launching Daemon at Fri Jun 19 11:49:28 IST 2026
[2026-06-19 11:49:28,893.893 INFO    ] ================================================
[2026-06-19 11:49:29,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:49:29
[2026-06-19 11:49:30,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:49:30,300.300 INFO    ] Initializing speech engine...
[2026-06-19 11:49:30,306.306 INFO    ] 2026-06-19 11:49:30
[2026-06-19 11:49:30,607.607 INFO    ] 2026-06-19 11:49:30
[2026-06-19 11:49:30,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:49:30,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:49:30,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:49:30,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:49:31,000.000 INFO    ] time= 19/06/2026 11:49:30
[2026-06-19 11:49:31,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:49:31,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:49:31,118.118 INFO    ] No existing commands found in stream
[2026-06-19 11:49:36,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:49:36,132.132 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 11:49:37,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:49:37,013.013 INFO    ] Checking for system updates...
[2026-06-19 11:49:37,057.057 INFO    ] 200
[2026-06-19 11:49:37,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:49:37,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:49:37,121.121 INFO    ] No update needed
[2026-06-19 11:49:37,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 11:49:37,161.161 INFO    ] 200
[2026-06-19 11:49:37,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:49:37,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:49:37,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:49:37,250.250 INFO    ] No camera update needed
[2026-06-19 11:49:37,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:49:37,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:49:37,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:49:37,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:49:39,304.304 INFO    ] ================================================
[2026-06-19 11:49:39,320.320 INFO    ] Launching Daemon at Fri Jun 19 11:49:39 IST 2026
[2026-06-19 11:49:39,330.330 INFO    ] ================================================
[2026-06-19 11:49:39,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:49:39
[2026-06-19 11:49:40,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:49:40,736.736 INFO    ] Initializing speech engine...
[2026-06-19 11:49:40,758.758 INFO    ] 2026-06-19 11:49:40
[2026-06-19 11:49:41,010.010 INFO    ] 2026-06-19 11:49:41
[2026-06-19 11:49:41,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:49:41,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:49:41,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:49:41,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:49:41,555.555 INFO    ] time= 19/06/2026 11:49:41
[2026-06-19 11:49:41,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:49:41,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:49:41,746.746 INFO    ] No existing commands found in stream
[2026-06-19 11:49:46,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:49:46,779.779 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 11:49:47,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:49:47,923.923 INFO    ] Checking for system updates...
[2026-06-19 11:49:47,960.960 INFO    ] 200
[2026-06-19 11:49:47,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:49:48,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:49:48,018.018 INFO    ] No update needed
[2026-06-19 11:49:48,021.021 INFO    ] Checking for camera pi updates...
[2026-06-19 11:49:48,055.055 INFO    ] 200
[2026-06-19 11:49:48,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:49:48,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:49:48,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:49:48,128.128 INFO    ] No camera update needed
[2026-06-19 11:49:48,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:49:48,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:49:48,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:49:48,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:49:50,183.183 INFO    ] ================================================
[2026-06-19 11:49:50,199.199 INFO    ] Launching Daemon at Fri Jun 19 11:49:50 IST 2026
[2026-06-19 11:49:50,209.209 INFO    ] ================================================
[2026-06-19 11:49:50,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:49:50
[2026-06-19 11:49:51,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:49:51,640.640 INFO    ] Initializing speech engine...
[2026-06-19 11:49:51,646.646 INFO    ] 2026-06-19 11:49:51
[2026-06-19 11:49:51,890.890 INFO    ] 2026-06-19 11:49:51
[2026-06-19 11:49:51,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:49:52,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:49:52,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:49:52,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:49:52,368.368 INFO    ] time= 19/06/2026 11:49:52
[2026-06-19 11:49:52,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:49:52,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:49:52,596.596 INFO    ] No existing commands found in stream
[2026-06-19 11:49:57,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:49:57,630.630 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 11:49:58,845.845 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:49:58,848.848 INFO    ] Checking for system updates...
[2026-06-19 11:49:58,888.888 INFO    ] 200
[2026-06-19 11:49:58,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:49:58,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:49:58,947.947 INFO    ] No update needed
[2026-06-19 11:49:58,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 11:49:58,984.984 INFO    ] 200
[2026-06-19 11:49:58,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:49:59,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:49:59,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:49:59,073.073 INFO    ] No camera update needed
[2026-06-19 11:49:59,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:49:59,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:49:59,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:49:59,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:50:01,130.130 INFO    ] ================================================
[2026-06-19 11:50:01,145.145 INFO    ] Launching Daemon at Fri Jun 19 11:50:01 IST 2026
[2026-06-19 11:50:01,156.156 INFO    ] ================================================
[2026-06-19 11:50:02,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:50:02
[2026-06-19 11:50:02,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:50:03,323.323 INFO    ] Initializing speech engine...
[2026-06-19 11:50:03,335.335 INFO    ] 2026-06-19 11:50:03
[2026-06-19 11:50:03,649.649 INFO    ] 2026-06-19 11:50:03
[2026-06-19 11:50:03,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:50:03,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:50:03,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:50:04,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:50:04,139.139 INFO    ] time= 19/06/2026 11:50:04
[2026-06-19 11:50:04,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:50:04,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:50:04,302.302 INFO    ] No existing commands found in stream
[2026-06-19 11:50:09,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:50:09,317.317 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 11:50:11,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:50:11,695.695 INFO    ] Checking for system updates...
[2026-06-19 11:50:11,732.732 INFO    ] 200
[2026-06-19 11:50:11,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:50:11,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:50:11,791.791 INFO    ] No update needed
[2026-06-19 11:50:11,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 11:50:11,829.829 INFO    ] 200
[2026-06-19 11:50:11,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:50:11,874.874 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:50:11,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:50:11,919.919 INFO    ] No camera update needed
[2026-06-19 11:50:11,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:50:11,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:50:11,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:50:11,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:50:13,981.981 INFO    ] ================================================
[2026-06-19 11:50:14,996.996 INFO    ] Launching Daemon at Fri Jun 19 11:50:13 IST 2026
[2026-06-19 11:50:14,007.007 INFO    ] ================================================
[2026-06-19 11:50:14,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:50:14
[2026-06-19 11:50:15,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:50:15,452.452 INFO    ] Initializing speech engine...
[2026-06-19 11:50:15,458.458 INFO    ] 2026-06-19 11:50:15
[2026-06-19 11:50:15,718.718 INFO    ] 2026-06-19 11:50:15
[2026-06-19 11:50:15,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:50:16,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:50:16,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:50:16,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:50:16,200.200 INFO    ] time= 19/06/2026 11:50:16
[2026-06-19 11:50:16,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:50:16,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:50:16,371.371 INFO    ] No existing commands found in stream
[2026-06-19 11:50:21,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:50:21,412.412 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 11:50:24,306.306 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:50:24,308.308 INFO    ] Checking for system updates...
[2026-06-19 11:50:24,345.345 INFO    ] 200
[2026-06-19 11:50:24,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:50:24,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:50:24,407.407 INFO    ] No update needed
[2026-06-19 11:50:24,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 11:50:24,446.446 INFO    ] 200
[2026-06-19 11:50:24,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:50:24,490.490 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:50:24,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:50:24,529.529 INFO    ] No camera update needed
[2026-06-19 11:50:24,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:50:24,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:50:24,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:50:24,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:50:26,585.585 INFO    ] ================================================
[2026-06-19 11:50:26,600.600 INFO    ] Launching Daemon at Fri Jun 19 11:50:26 IST 2026
[2026-06-19 11:50:26,611.611 INFO    ] ================================================
[2026-06-19 11:50:27,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:50:27
[2026-06-19 11:50:27,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:50:28,043.043 INFO    ] Initializing speech engine...
[2026-06-19 11:50:28,050.050 INFO    ] 2026-06-19 11:50:28
[2026-06-19 11:50:28,311.311 INFO    ] 2026-06-19 11:50:28
[2026-06-19 11:50:28,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:50:28,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:50:28,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:50:28,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:50:28,852.852 INFO    ] time= 19/06/2026 11:50:28
[2026-06-19 11:50:28,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:50:28,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:50:29,020.020 INFO    ] No existing commands found in stream
[2026-06-19 11:50:34,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:50:34,047.047 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 11:50:34,963.963 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:50:34,966.966 INFO    ] Checking for system updates...
[2026-06-19 11:50:35,002.002 INFO    ] 200
[2026-06-19 11:50:35,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:50:35,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:50:35,059.059 INFO    ] No update needed
[2026-06-19 11:50:35,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 11:50:35,098.098 INFO    ] 200
[2026-06-19 11:50:35,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:50:35,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:50:35,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:50:35,186.186 INFO    ] No camera update needed
[2026-06-19 11:50:35,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:50:35,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:50:35,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:50:35,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:50:37,266.266 INFO    ] ================================================
[2026-06-19 11:50:37,282.282 INFO    ] Launching Daemon at Fri Jun 19 11:50:37 IST 2026
[2026-06-19 11:50:37,292.292 INFO    ] ================================================
[2026-06-19 11:50:37,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:50:37
[2026-06-19 11:50:38,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:50:38,721.721 INFO    ] Initializing speech engine...
[2026-06-19 11:50:38,731.731 INFO    ] 2026-06-19 11:50:38
[2026-06-19 11:50:38,977.977 INFO    ] 2026-06-19 11:50:38
[2026-06-19 11:50:39,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:50:39,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:50:39,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:50:39,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:50:39,450.450 INFO    ] time= 19/06/2026 11:50:39
[2026-06-19 11:50:39,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:50:39,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:50:39,686.686 INFO    ] No existing commands found in stream
[2026-06-19 11:50:44,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:50:44,703.703 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 11:50:46,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:50:46,987.987 INFO    ] Checking for system updates...
[2026-06-19 11:50:47,026.026 INFO    ] 200
[2026-06-19 11:50:47,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:50:47,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:50:47,083.083 INFO    ] No update needed
[2026-06-19 11:50:47,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 11:50:47,119.119 INFO    ] 200
[2026-06-19 11:50:47,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:50:47,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:50:47,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:50:47,198.198 INFO    ] No camera update needed
[2026-06-19 11:50:47,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:50:47,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:50:47,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:50:47,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:50:49,253.253 INFO    ] ================================================
[2026-06-19 11:50:49,268.268 INFO    ] Launching Daemon at Fri Jun 19 11:50:49 IST 2026
[2026-06-19 11:50:49,279.279 INFO    ] ================================================
[2026-06-19 11:50:49,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:50:49
[2026-06-19 11:50:50,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:50:50,686.686 INFO    ] Initializing speech engine...
[2026-06-19 11:50:50,692.692 INFO    ] 2026-06-19 11:50:50
[2026-06-19 11:50:50,984.984 INFO    ] 2026-06-19 11:50:50
[2026-06-19 11:50:51,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:50:51,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:50:51,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:50:51,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:50:51,358.358 INFO    ] time= 19/06/2026 11:50:51
[2026-06-19 11:50:51,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:50:51,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:50:51,478.478 INFO    ] No existing commands found in stream
[2026-06-19 11:50:56,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:50:56,494.494 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 11:50:59,958.958 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:50:59,961.961 INFO    ] Checking for system updates...
[2026-06-19 11:50:59,997.997 INFO    ] 200
[2026-06-19 11:51:00,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:00,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:51:00,056.056 INFO    ] No update needed
[2026-06-19 11:51:00,058.058 INFO    ] Checking for camera pi updates...
[2026-06-19 11:51:00,096.096 INFO    ] 200
[2026-06-19 11:51:00,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:00,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:51:00,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:51:00,185.185 INFO    ] No camera update needed
[2026-06-19 11:51:00,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:51:00,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:51:00,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:51:00,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:51:02,242.242 INFO    ] ================================================
[2026-06-19 11:51:02,263.263 INFO    ] Launching Daemon at Fri Jun 19 11:51:02 IST 2026
[2026-06-19 11:51:02,279.279 INFO    ] ================================================
[2026-06-19 11:51:02,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:51:02
[2026-06-19 11:51:03,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:51:03,896.896 INFO    ] Initializing speech engine...
[2026-06-19 11:51:03,906.906 INFO    ] 2026-06-19 11:51:03
[2026-06-19 11:51:04,155.155 INFO    ] 2026-06-19 11:51:04
[2026-06-19 11:51:04,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:51:04,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:51:04,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:51:04,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:51:04,627.627 INFO    ] time= 19/06/2026 11:51:04
[2026-06-19 11:51:04,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:51:04,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:51:04,835.835 INFO    ] No existing commands found in stream
[2026-06-19 11:51:09,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:51:09,860.860 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 11:51:13,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:51:13,248.248 INFO    ] Checking for system updates...
[2026-06-19 11:51:13,285.285 INFO    ] 200
[2026-06-19 11:51:13,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:13,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:51:13,348.348 INFO    ] No update needed
[2026-06-19 11:51:13,350.350 INFO    ] Checking for camera pi updates...
[2026-06-19 11:51:13,387.387 INFO    ] 200
[2026-06-19 11:51:13,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:13,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:51:13,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:51:13,479.479 INFO    ] No camera update needed
[2026-06-19 11:51:13,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:51:13,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:51:13,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:51:13,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:51:15,532.532 INFO    ] ================================================
[2026-06-19 11:51:15,547.547 INFO    ] Launching Daemon at Fri Jun 19 11:51:15 IST 2026
[2026-06-19 11:51:15,558.558 INFO    ] ================================================
[2026-06-19 11:51:16,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:51:16
[2026-06-19 11:51:16,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:51:17,020.020 INFO    ] Initializing speech engine...
[2026-06-19 11:51:17,029.029 INFO    ] 2026-06-19 11:51:17
[2026-06-19 11:51:17,291.291 INFO    ] 2026-06-19 11:51:17
[2026-06-19 11:51:17,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:51:17,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:51:17,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:51:17,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:51:17,755.755 INFO    ] time= 19/06/2026 11:51:17
[2026-06-19 11:51:17,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:51:17,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:51:17,992.992 INFO    ] No existing commands found in stream
[2026-06-19 11:51:23,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:51:23,010.010 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 11:51:27,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:51:27,161.161 INFO    ] Checking for system updates...
[2026-06-19 11:51:27,197.197 INFO    ] 200
[2026-06-19 11:51:27,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:27,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:51:27,253.253 INFO    ] No update needed
[2026-06-19 11:51:27,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 11:51:27,290.290 INFO    ] 200
[2026-06-19 11:51:27,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:27,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:51:27,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:51:27,382.382 INFO    ] No camera update needed
[2026-06-19 11:51:27,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:51:27,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:51:27,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:51:27,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:51:29,438.438 INFO    ] ================================================
[2026-06-19 11:51:29,453.453 INFO    ] Launching Daemon at Fri Jun 19 11:51:29 IST 2026
[2026-06-19 11:51:29,464.464 INFO    ] ================================================
[2026-06-19 11:51:30,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:51:30
[2026-06-19 11:51:30,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:51:30,928.928 INFO    ] Initializing speech engine...
[2026-06-19 11:51:30,937.937 INFO    ] 2026-06-19 11:51:30
[2026-06-19 11:51:31,199.199 INFO    ] 2026-06-19 11:51:31
[2026-06-19 11:51:31,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:51:31,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:51:31,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:51:31,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:51:31,579.579 INFO    ] time= 19/06/2026 11:51:31
[2026-06-19 11:51:31,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:51:31,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:51:31,775.775 INFO    ] No existing commands found in stream
[2026-06-19 11:51:36,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:51:36,789.789 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 11:51:37,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:51:37,230.230 INFO    ] Checking for system updates...
[2026-06-19 11:51:37,266.266 INFO    ] 200
[2026-06-19 11:51:37,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:37,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:51:37,330.330 INFO    ] No update needed
[2026-06-19 11:51:37,332.332 INFO    ] Checking for camera pi updates...
[2026-06-19 11:51:37,373.373 INFO    ] 200
[2026-06-19 11:51:37,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:37,417.417 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:51:37,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:51:37,459.459 INFO    ] No camera update needed
[2026-06-19 11:51:37,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:51:37,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:51:37,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:51:37,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:51:39,515.515 INFO    ] ================================================
[2026-06-19 11:51:39,530.530 INFO    ] Launching Daemon at Fri Jun 19 11:51:39 IST 2026
[2026-06-19 11:51:39,541.541 INFO    ] ================================================
[2026-06-19 11:51:40,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:51:40
[2026-06-19 11:51:40,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:51:40,946.946 INFO    ] Initializing speech engine...
[2026-06-19 11:51:40,965.965 INFO    ] 2026-06-19 11:51:40
[2026-06-19 11:51:41,220.220 INFO    ] 2026-06-19 11:51:41
[2026-06-19 11:51:41,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:51:41,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:51:41,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:51:41,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:51:41,696.696 INFO    ] time= 19/06/2026 11:51:41
[2026-06-19 11:51:41,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:51:41,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:51:41,907.907 INFO    ] No existing commands found in stream
[2026-06-19 11:51:46,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:51:46,942.942 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 11:51:47,855.855 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:51:47,858.858 INFO    ] Checking for system updates...
[2026-06-19 11:51:47,894.894 INFO    ] 200
[2026-06-19 11:51:47,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:47,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:51:47,958.958 INFO    ] No update needed
[2026-06-19 11:51:47,960.960 INFO    ] Checking for camera pi updates...
[2026-06-19 11:51:47,997.997 INFO    ] 200
[2026-06-19 11:51:48,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:48,047.047 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:51:48,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:51:48,078.078 INFO    ] No camera update needed
[2026-06-19 11:51:48,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:51:48,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:51:48,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:51:48,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:51:50,134.134 INFO    ] ================================================
[2026-06-19 11:51:50,150.150 INFO    ] Launching Daemon at Fri Jun 19 11:51:50 IST 2026
[2026-06-19 11:51:50,161.161 INFO    ] ================================================
[2026-06-19 11:51:50,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:51:50
[2026-06-19 11:51:51,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:51:51,570.570 INFO    ] Initializing speech engine...
[2026-06-19 11:51:51,593.593 INFO    ] 2026-06-19 11:51:51
[2026-06-19 11:51:51,850.850 INFO    ] 2026-06-19 11:51:51
[2026-06-19 11:51:51,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:51:52,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:51:52,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:51:52,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:51:52,313.313 INFO    ] time= 19/06/2026 11:51:52
[2026-06-19 11:51:52,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:51:52,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:51:52,540.540 INFO    ] No existing commands found in stream
[2026-06-19 11:51:57,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:51:57,566.566 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 11:51:59,572.572 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:51:59,574.574 INFO    ] Checking for system updates...
[2026-06-19 11:51:59,612.612 INFO    ] 200
[2026-06-19 11:51:59,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:59,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:51:59,680.680 INFO    ] No update needed
[2026-06-19 11:51:59,683.683 INFO    ] Checking for camera pi updates...
[2026-06-19 11:51:59,720.720 INFO    ] 200
[2026-06-19 11:51:59,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:51:59,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:51:59,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:51:59,821.821 INFO    ] No camera update needed
[2026-06-19 11:51:59,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:51:59,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:51:59,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:51:59,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:52:01,884.884 INFO    ] ================================================
[2026-06-19 11:52:01,899.899 INFO    ] Launching Daemon at Fri Jun 19 11:52:01 IST 2026
[2026-06-19 11:52:01,910.910 INFO    ] ================================================
[2026-06-19 11:52:02,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:52:02
[2026-06-19 11:52:03,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:52:03,616.616 INFO    ] Initializing speech engine...
[2026-06-19 11:52:03,629.629 INFO    ] 2026-06-19 11:52:03
[2026-06-19 11:52:03,958.958 INFO    ] 2026-06-19 11:52:03
[2026-06-19 11:52:04,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:52:04,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:52:04,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:52:04,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:52:04,396.396 INFO    ] time= 19/06/2026 11:52:04
[2026-06-19 11:52:04,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:52:04,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:52:04,664.664 INFO    ] No existing commands found in stream
[2026-06-19 11:52:09,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:52:09,691.691 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 11:52:14,059.059 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:52:14,061.061 INFO    ] Checking for system updates...
[2026-06-19 11:52:14,098.098 INFO    ] 200
[2026-06-19 11:52:14,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:52:14,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:52:14,160.160 INFO    ] No update needed
[2026-06-19 11:52:14,162.162 INFO    ] Checking for camera pi updates...
[2026-06-19 11:52:14,197.197 INFO    ] 200
[2026-06-19 11:52:14,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:52:14,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:52:14,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:52:14,286.286 INFO    ] No camera update needed
[2026-06-19 11:52:14,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:52:14,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:52:14,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:52:14,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:52:16,341.341 INFO    ] ================================================
[2026-06-19 11:52:16,357.357 INFO    ] Launching Daemon at Fri Jun 19 11:52:16 IST 2026
[2026-06-19 11:52:16,367.367 INFO    ] ================================================
[2026-06-19 11:52:16,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:52:16
[2026-06-19 11:52:17,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:52:17,778.778 INFO    ] Initializing speech engine...
[2026-06-19 11:52:17,798.798 INFO    ] 2026-06-19 11:52:17
[2026-06-19 11:52:18,072.072 INFO    ] 2026-06-19 11:52:18
[2026-06-19 11:52:18,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:52:18,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:52:18,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:52:18,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:52:18,580.580 INFO    ] time= 19/06/2026 11:52:18
[2026-06-19 11:52:18,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:52:18,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:52:18,784.784 INFO    ] No existing commands found in stream
[2026-06-19 11:52:23,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:52:23,801.801 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 11:52:26,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:52:26,410.410 INFO    ] Checking for system updates...
[2026-06-19 11:52:26,449.449 INFO    ] 200
[2026-06-19 11:52:26,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:52:26,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:52:26,512.512 INFO    ] No update needed
[2026-06-19 11:52:26,514.514 INFO    ] Checking for camera pi updates...
[2026-06-19 11:52:26,550.550 INFO    ] 200
[2026-06-19 11:52:26,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:52:26,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:52:26,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:52:26,633.633 INFO    ] No camera update needed
[2026-06-19 11:52:26,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:52:26,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:52:26,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:52:26,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:52:28,689.689 INFO    ] ================================================
[2026-06-19 11:52:28,705.705 INFO    ] Launching Daemon at Fri Jun 19 11:52:28 IST 2026
[2026-06-19 11:52:28,716.716 INFO    ] ================================================
[2026-06-19 11:52:29,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:52:29
[2026-06-19 11:52:29,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:52:30,158.158 INFO    ] Initializing speech engine...
[2026-06-19 11:52:30,164.164 INFO    ] 2026-06-19 11:52:30
[2026-06-19 11:52:30,455.455 INFO    ] 2026-06-19 11:52:30
[2026-06-19 11:52:30,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:52:30,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:52:30,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:52:30,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:52:31,002.002 INFO    ] time= 19/06/2026 11:52:30
[2026-06-19 11:52:31,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:52:31,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:52:31,149.149 INFO    ] No existing commands found in stream
[2026-06-19 11:52:36,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:52:36,164.164 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 11:52:39,353.353 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:52:39,356.356 INFO    ] Checking for system updates...
[2026-06-19 11:52:39,392.392 INFO    ] 200
[2026-06-19 11:52:39,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:52:39,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:52:39,450.450 INFO    ] No update needed
[2026-06-19 11:52:39,452.452 INFO    ] Checking for camera pi updates...
[2026-06-19 11:52:39,487.487 INFO    ] 200
[2026-06-19 11:52:39,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:52:39,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:52:39,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:52:39,585.585 INFO    ] No camera update needed
[2026-06-19 11:52:39,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:52:39,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:52:39,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:52:39,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:52:41,640.640 INFO    ] ================================================
[2026-06-19 11:52:41,656.656 INFO    ] Launching Daemon at Fri Jun 19 11:52:41 IST 2026
[2026-06-19 11:52:41,667.667 INFO    ] ================================================
[2026-06-19 11:52:42,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:52:42
[2026-06-19 11:52:42,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:52:43,140.140 INFO    ] Initializing speech engine...
[2026-06-19 11:52:43,146.146 INFO    ] 2026-06-19 11:52:43
[2026-06-19 11:52:43,395.395 INFO    ] 2026-06-19 11:52:43
[2026-06-19 11:52:43,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:52:43,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:52:43,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:52:43,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:52:43,875.875 INFO    ] time= 19/06/2026 11:52:43
[2026-06-19 11:52:43,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:52:43,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:52:44,090.090 INFO    ] No existing commands found in stream
[2026-06-19 11:52:49,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:52:49,120.120 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 11:52:49,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:52:49,922.922 INFO    ] Checking for system updates...
[2026-06-19 11:52:49,962.962 INFO    ] 200
[2026-06-19 11:52:49,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:52:50,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:52:50,021.021 INFO    ] No update needed
[2026-06-19 11:52:50,024.024 INFO    ] Checking for camera pi updates...
[2026-06-19 11:52:50,062.062 INFO    ] 200
[2026-06-19 11:52:50,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:52:50,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:52:50,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:52:50,152.152 INFO    ] No camera update needed
[2026-06-19 11:52:50,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:52:50,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:52:50,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:52:50,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:52:52,211.211 INFO    ] ================================================
[2026-06-19 11:52:52,226.226 INFO    ] Launching Daemon at Fri Jun 19 11:52:52 IST 2026
[2026-06-19 11:52:52,238.238 INFO    ] ================================================
[2026-06-19 11:52:52,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:52:52
[2026-06-19 11:52:53,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:52:53,694.694 INFO    ] Initializing speech engine...
[2026-06-19 11:52:53,704.704 INFO    ] 2026-06-19 11:52:53
[2026-06-19 11:52:53,967.967 INFO    ] 2026-06-19 11:52:53
[2026-06-19 11:52:54,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:52:54,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:52:54,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:52:54,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:52:54,512.512 INFO    ] time= 19/06/2026 11:52:54
[2026-06-19 11:52:54,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:52:54,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:52:54,666.666 INFO    ] No existing commands found in stream
[2026-06-19 11:52:59,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:52:59,682.682 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 11:53:02,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:53:02,018.018 INFO    ] Checking for system updates...
[2026-06-19 11:53:02,064.064 INFO    ] 200
[2026-06-19 11:53:02,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:02,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:53:02,139.139 INFO    ] No update needed
[2026-06-19 11:53:02,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 11:53:02,181.181 INFO    ] 200
[2026-06-19 11:53:02,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:02,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:53:02,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:53:02,272.272 INFO    ] No camera update needed
[2026-06-19 11:53:02,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:53:02,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:53:02,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:53:02,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:53:04,337.337 INFO    ] ================================================
[2026-06-19 11:53:04,352.352 INFO    ] Launching Daemon at Fri Jun 19 11:53:04 IST 2026
[2026-06-19 11:53:04,364.364 INFO    ] ================================================
[2026-06-19 11:53:04,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:53:04
[2026-06-19 11:53:05,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:53:05,984.984 INFO    ] Initializing speech engine...
[2026-06-19 11:53:05,995.995 INFO    ] 2026-06-19 11:53:05
[2026-06-19 11:53:06,256.256 INFO    ] 2026-06-19 11:53:06
[2026-06-19 11:53:06,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:53:06,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:53:06,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:53:06,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:53:06,783.783 INFO    ] time= 19/06/2026 11:53:06
[2026-06-19 11:53:06,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:53:06,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:53:06,932.932 INFO    ] No existing commands found in stream
[2026-06-19 11:53:11,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:53:11,950.950 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 11:53:13,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:53:13,385.385 INFO    ] Checking for system updates...
[2026-06-19 11:53:13,422.422 INFO    ] 200
[2026-06-19 11:53:13,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:13,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:53:13,479.479 INFO    ] No update needed
[2026-06-19 11:53:13,482.482 INFO    ] Checking for camera pi updates...
[2026-06-19 11:53:13,516.516 INFO    ] 200
[2026-06-19 11:53:13,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:13,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:53:13,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:53:13,605.605 INFO    ] No camera update needed
[2026-06-19 11:53:13,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:53:13,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:53:13,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:53:13,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:53:15,660.660 INFO    ] ================================================
[2026-06-19 11:53:15,676.676 INFO    ] Launching Daemon at Fri Jun 19 11:53:15 IST 2026
[2026-06-19 11:53:15,687.687 INFO    ] ================================================
[2026-06-19 11:53:16,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:53:16
[2026-06-19 11:53:16,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:53:17,125.125 INFO    ] Initializing speech engine...
[2026-06-19 11:53:17,133.133 INFO    ] 2026-06-19 11:53:17
[2026-06-19 11:53:17,384.384 INFO    ] 2026-06-19 11:53:17
[2026-06-19 11:53:17,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:53:17,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:53:17,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:53:17,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:53:17,866.866 INFO    ] time= 19/06/2026 11:53:17
[2026-06-19 11:53:17,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:53:17,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:53:18,082.082 INFO    ] No existing commands found in stream
[2026-06-19 11:53:23,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:53:23,110.110 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 11:53:25,625.625 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:53:25,628.628 INFO    ] Checking for system updates...
[2026-06-19 11:53:25,664.664 INFO    ] 200
[2026-06-19 11:53:25,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:25,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:53:25,721.721 INFO    ] No update needed
[2026-06-19 11:53:25,724.724 INFO    ] Checking for camera pi updates...
[2026-06-19 11:53:25,758.758 INFO    ] 200
[2026-06-19 11:53:25,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:25,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:53:25,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:53:25,851.851 INFO    ] No camera update needed
[2026-06-19 11:53:25,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:53:25,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:53:25,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:53:25,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:53:27,907.907 INFO    ] ================================================
[2026-06-19 11:53:27,923.923 INFO    ] Launching Daemon at Fri Jun 19 11:53:27 IST 2026
[2026-06-19 11:53:27,935.935 INFO    ] ================================================
[2026-06-19 11:53:28,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:53:28
[2026-06-19 11:53:29,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:53:29,421.421 INFO    ] Initializing speech engine...
[2026-06-19 11:53:29,429.429 INFO    ] 2026-06-19 11:53:29
[2026-06-19 11:53:29,718.718 INFO    ] 2026-06-19 11:53:29
[2026-06-19 11:53:29,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:53:29,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:53:29,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:53:30,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:53:30,123.123 INFO    ] time= 19/06/2026 11:53:30
[2026-06-19 11:53:30,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:53:30,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:53:30,277.277 INFO    ] No existing commands found in stream
[2026-06-19 11:53:35,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:53:35,311.311 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 11:53:39,149.149 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:53:39,152.152 INFO    ] Checking for system updates...
[2026-06-19 11:53:39,188.188 INFO    ] 200
[2026-06-19 11:53:39,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:39,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:53:39,246.246 INFO    ] No update needed
[2026-06-19 11:53:39,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 11:53:39,282.282 INFO    ] 200
[2026-06-19 11:53:39,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:39,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:53:39,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:53:39,479.479 INFO    ] No camera update needed
[2026-06-19 11:53:39,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:53:39,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:53:39,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:53:39,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:53:41,534.534 INFO    ] ================================================
[2026-06-19 11:53:41,550.550 INFO    ] Launching Daemon at Fri Jun 19 11:53:41 IST 2026
[2026-06-19 11:53:41,561.561 INFO    ] ================================================
[2026-06-19 11:53:42,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:53:42
[2026-06-19 11:53:42,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:53:43,011.011 INFO    ] Initializing speech engine...
[2026-06-19 11:53:43,018.018 INFO    ] 2026-06-19 11:53:43
[2026-06-19 11:53:43,283.283 INFO    ] 2026-06-19 11:53:43
[2026-06-19 11:53:43,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:53:43,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:53:43,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:53:43,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:53:43,794.794 INFO    ] time= 19/06/2026 11:53:43
[2026-06-19 11:53:43,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:53:43,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:53:44,013.013 INFO    ] No existing commands found in stream
[2026-06-19 11:53:49,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:53:49,043.043 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 11:53:51,406.406 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:53:51,409.409 INFO    ] Checking for system updates...
[2026-06-19 11:53:51,445.445 INFO    ] 200
[2026-06-19 11:53:51,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:51,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:53:51,508.508 INFO    ] No update needed
[2026-06-19 11:53:51,511.511 INFO    ] Checking for camera pi updates...
[2026-06-19 11:53:51,545.545 INFO    ] 200
[2026-06-19 11:53:51,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:53:51,589.589 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:53:51,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:53:51,630.630 INFO    ] No camera update needed
[2026-06-19 11:53:51,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:53:51,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:53:51,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:53:51,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:53:53,688.688 INFO    ] ================================================
[2026-06-19 11:53:53,704.704 INFO    ] Launching Daemon at Fri Jun 19 11:53:53 IST 2026
[2026-06-19 11:53:53,714.714 INFO    ] ================================================
[2026-06-19 11:53:54,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:53:54
[2026-06-19 11:53:54,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:53:55,139.139 INFO    ] Initializing speech engine...
[2026-06-19 11:53:55,155.155 INFO    ] 2026-06-19 11:53:55
[2026-06-19 11:53:55,426.426 INFO    ] 2026-06-19 11:53:55
[2026-06-19 11:53:55,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:53:55,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:53:55,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:53:55,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:53:55,836.836 INFO    ] time= 19/06/2026 11:53:55
[2026-06-19 11:53:55,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:53:55,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:53:55,988.988 INFO    ] No existing commands found in stream
[2026-06-19 11:54:01,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:54:01,011.011 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 11:54:01,865.865 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:54:01,868.868 INFO    ] Checking for system updates...
[2026-06-19 11:54:01,907.907 INFO    ] 200
[2026-06-19 11:54:01,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:01,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:54:01,973.973 INFO    ] No update needed
[2026-06-19 11:54:01,987.987 INFO    ] Checking for camera pi updates...
[2026-06-19 11:54:02,064.064 INFO    ] 200
[2026-06-19 11:54:02,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:02,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:54:02,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:54:02,221.221 INFO    ] No camera update needed
[2026-06-19 11:54:02,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:54:02,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:54:02,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:54:02,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:54:04,291.291 INFO    ] ================================================
[2026-06-19 11:54:04,307.307 INFO    ] Launching Daemon at Fri Jun 19 11:54:04 IST 2026
[2026-06-19 11:54:04,318.318 INFO    ] ================================================
[2026-06-19 11:54:04,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:54:04
[2026-06-19 11:54:05,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:54:05,751.751 INFO    ] Initializing speech engine...
[2026-06-19 11:54:05,758.758 INFO    ] 2026-06-19 11:54:05
[2026-06-19 11:54:06,014.014 INFO    ] 2026-06-19 11:54:06
[2026-06-19 11:54:06,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:54:06,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:54:06,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:54:06,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:54:06,491.491 INFO    ] time= 19/06/2026 11:54:06
[2026-06-19 11:54:06,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:54:06,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:54:06,690.690 INFO    ] No existing commands found in stream
[2026-06-19 11:54:11,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:54:11,722.722 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 11:54:15,463.463 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:54:15,466.466 INFO    ] Checking for system updates...
[2026-06-19 11:54:15,502.502 INFO    ] 200
[2026-06-19 11:54:15,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:15,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:54:15,560.560 INFO    ] No update needed
[2026-06-19 11:54:15,562.562 INFO    ] Checking for camera pi updates...
[2026-06-19 11:54:15,598.598 INFO    ] 200
[2026-06-19 11:54:15,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:15,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:54:15,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:54:15,693.693 INFO    ] No camera update needed
[2026-06-19 11:54:15,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:54:15,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:54:15,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:54:15,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:54:17,749.749 INFO    ] ================================================
[2026-06-19 11:54:17,764.764 INFO    ] Launching Daemon at Fri Jun 19 11:54:17 IST 2026
[2026-06-19 11:54:17,775.775 INFO    ] ================================================
[2026-06-19 11:54:18,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:54:18
[2026-06-19 11:54:18,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:54:19,279.279 INFO    ] Initializing speech engine...
[2026-06-19 11:54:19,292.292 INFO    ] 2026-06-19 11:54:19
[2026-06-19 11:54:19,572.572 INFO    ] 2026-06-19 11:54:19
[2026-06-19 11:54:19,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:54:19,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:54:19,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:54:20,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:54:20,120.120 INFO    ] time= 19/06/2026 11:54:20
[2026-06-19 11:54:20,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:54:20,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:54:20,297.297 INFO    ] No existing commands found in stream
[2026-06-19 11:54:25,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:54:25,331.331 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 11:54:26,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:54:26,123.123 INFO    ] Checking for system updates...
[2026-06-19 11:54:26,162.162 INFO    ] 200
[2026-06-19 11:54:26,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:26,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:54:26,219.219 INFO    ] No update needed
[2026-06-19 11:54:26,221.221 INFO    ] Checking for camera pi updates...
[2026-06-19 11:54:26,254.254 INFO    ] 200
[2026-06-19 11:54:26,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:26,302.302 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:54:26,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:54:26,349.349 INFO    ] No camera update needed
[2026-06-19 11:54:26,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:54:26,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:54:26,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:54:26,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:54:28,405.405 INFO    ] ================================================
[2026-06-19 11:54:28,421.421 INFO    ] Launching Daemon at Fri Jun 19 11:54:28 IST 2026
[2026-06-19 11:54:28,432.432 INFO    ] ================================================
[2026-06-19 11:54:29,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:54:28
[2026-06-19 11:54:29,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:54:29,853.853 INFO    ] Initializing speech engine...
[2026-06-19 11:54:29,862.862 INFO    ] 2026-06-19 11:54:29
[2026-06-19 11:54:30,122.122 INFO    ] 2026-06-19 11:54:30
[2026-06-19 11:54:30,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:54:30,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:54:30,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:54:30,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:54:30,666.666 INFO    ] time= 19/06/2026 11:54:30
[2026-06-19 11:54:30,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:54:30,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:54:30,799.799 INFO    ] No existing commands found in stream
[2026-06-19 11:54:35,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:54:35,829.829 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 11:54:38,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:54:38,504.504 INFO    ] Checking for system updates...
[2026-06-19 11:54:38,545.545 INFO    ] 200
[2026-06-19 11:54:38,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:38,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:54:38,608.608 INFO    ] No update needed
[2026-06-19 11:54:38,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 11:54:38,644.644 INFO    ] 200
[2026-06-19 11:54:38,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:38,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:54:38,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:54:38,737.737 INFO    ] No camera update needed
[2026-06-19 11:54:38,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:54:38,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:54:38,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:54:38,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:54:40,792.792 INFO    ] ================================================
[2026-06-19 11:54:40,808.808 INFO    ] Launching Daemon at Fri Jun 19 11:54:40 IST 2026
[2026-06-19 11:54:40,819.819 INFO    ] ================================================
[2026-06-19 11:54:41,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:54:41
[2026-06-19 11:54:42,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:54:42,291.291 INFO    ] Initializing speech engine...
[2026-06-19 11:54:42,300.300 INFO    ] 2026-06-19 11:54:42
[2026-06-19 11:54:42,562.562 INFO    ] 2026-06-19 11:54:42
[2026-06-19 11:54:42,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:54:42,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:54:42,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:54:43,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:54:43,105.105 INFO    ] time= 19/06/2026 11:54:43
[2026-06-19 11:54:43,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:54:43,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:54:43,259.259 INFO    ] No existing commands found in stream
[2026-06-19 11:54:48,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:54:48,276.276 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 11:54:52,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:54:52,620.620 INFO    ] Checking for system updates...
[2026-06-19 11:54:52,657.657 INFO    ] 200
[2026-06-19 11:54:52,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:52,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:54:52,723.723 INFO    ] No update needed
[2026-06-19 11:54:52,726.726 INFO    ] Checking for camera pi updates...
[2026-06-19 11:54:52,762.762 INFO    ] 200
[2026-06-19 11:54:52,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:54:52,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:54:52,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:54:52,853.853 INFO    ] No camera update needed
[2026-06-19 11:54:52,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:54:52,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:54:52,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:54:52,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:54:54,910.910 INFO    ] ================================================
[2026-06-19 11:54:54,925.925 INFO    ] Launching Daemon at Fri Jun 19 11:54:54 IST 2026
[2026-06-19 11:54:54,936.936 INFO    ] ================================================
[2026-06-19 11:54:55,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:54:55
[2026-06-19 11:54:56,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:54:56,440.440 INFO    ] Initializing speech engine...
[2026-06-19 11:54:56,450.450 INFO    ] 2026-06-19 11:54:56
[2026-06-19 11:54:56,722.722 INFO    ] 2026-06-19 11:54:56
[2026-06-19 11:54:56,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:54:57,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:54:57,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:54:57,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:54:57,215.215 INFO    ] time= 19/06/2026 11:54:57
[2026-06-19 11:54:57,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:54:57,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:54:57,411.411 INFO    ] No existing commands found in stream
[2026-06-19 11:55:02,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:55:02,443.443 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 11:55:04,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:55:04,313.313 INFO    ] Checking for system updates...
[2026-06-19 11:55:04,355.355 INFO    ] 200
[2026-06-19 11:55:04,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:04,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:55:04,420.420 INFO    ] No update needed
[2026-06-19 11:55:04,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 11:55:04,457.457 INFO    ] 200
[2026-06-19 11:55:04,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:04,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:55:04,557.557 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:55:04,560.560 INFO    ] No camera update needed
[2026-06-19 11:55:04,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:55:04,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:55:04,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:55:04,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:55:06,616.616 INFO    ] ================================================
[2026-06-19 11:55:06,631.631 INFO    ] Launching Daemon at Fri Jun 19 11:55:06 IST 2026
[2026-06-19 11:55:06,642.642 INFO    ] ================================================
[2026-06-19 11:55:07,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:55:07
[2026-06-19 11:55:07,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:55:08,114.114 INFO    ] Initializing speech engine...
[2026-06-19 11:55:08,123.123 INFO    ] 2026-06-19 11:55:08
[2026-06-19 11:55:08,370.370 INFO    ] 2026-06-19 11:55:08
[2026-06-19 11:55:08,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:55:08,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:55:08,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:55:08,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:55:08,876.876 INFO    ] time= 19/06/2026 11:55:08
[2026-06-19 11:55:08,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:55:08,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:55:09,079.079 INFO    ] No existing commands found in stream
[2026-06-19 11:55:14,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:55:14,096.096 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 11:55:15,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:55:15,846.846 INFO    ] Checking for system updates...
[2026-06-19 11:55:15,882.882 INFO    ] 200
[2026-06-19 11:55:15,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:15,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:55:15,941.941 INFO    ] No update needed
[2026-06-19 11:55:15,943.943 INFO    ] Checking for camera pi updates...
[2026-06-19 11:55:15,977.977 INFO    ] 200
[2026-06-19 11:55:15,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:16,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:55:16,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:55:16,065.065 INFO    ] No camera update needed
[2026-06-19 11:55:16,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:55:16,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:55:16,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:55:16,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:55:18,122.122 INFO    ] ================================================
[2026-06-19 11:55:18,137.137 INFO    ] Launching Daemon at Fri Jun 19 11:55:18 IST 2026
[2026-06-19 11:55:18,148.148 INFO    ] ================================================
[2026-06-19 11:55:18,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:55:18
[2026-06-19 11:55:19,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:55:19,572.572 INFO    ] Initializing speech engine...
[2026-06-19 11:55:19,582.582 INFO    ] 2026-06-19 11:55:19
[2026-06-19 11:55:19,831.831 INFO    ] 2026-06-19 11:55:19
[2026-06-19 11:55:19,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:55:20,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:55:20,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:55:20,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:55:20,327.327 INFO    ] time= 19/06/2026 11:55:20
[2026-06-19 11:55:20,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:55:20,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:55:20,541.541 INFO    ] No existing commands found in stream
[2026-06-19 11:55:25,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:55:25,557.557 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 11:55:28,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:55:28,769.769 INFO    ] Checking for system updates...
[2026-06-19 11:55:28,805.805 INFO    ] 200
[2026-06-19 11:55:28,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:28,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:55:28,868.868 INFO    ] No update needed
[2026-06-19 11:55:28,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 11:55:28,904.904 INFO    ] 200
[2026-06-19 11:55:28,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:28,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:55:28,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:55:28,989.989 INFO    ] No camera update needed
[2026-06-19 11:55:28,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:55:28,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:55:28,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:55:29,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:55:31,045.045 INFO    ] ================================================
[2026-06-19 11:55:31,061.061 INFO    ] Launching Daemon at Fri Jun 19 11:55:31 IST 2026
[2026-06-19 11:55:31,072.072 INFO    ] ================================================
[2026-06-19 11:55:31,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:55:31
[2026-06-19 11:55:32,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:55:32,544.544 INFO    ] Initializing speech engine...
[2026-06-19 11:55:32,553.553 INFO    ] 2026-06-19 11:55:32
[2026-06-19 11:55:32,846.846 INFO    ] 2026-06-19 11:55:32
[2026-06-19 11:55:32,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:55:33,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:55:33,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:55:33,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:55:33,253.253 INFO    ] time= 19/06/2026 11:55:33
[2026-06-19 11:55:33,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:55:33,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:55:33,375.375 INFO    ] No existing commands found in stream
[2026-06-19 11:55:38,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:55:38,408.408 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 11:55:41,365.365 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:55:41,368.368 INFO    ] Checking for system updates...
[2026-06-19 11:55:41,408.408 INFO    ] 200
[2026-06-19 11:55:41,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:41,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:55:41,472.472 INFO    ] No update needed
[2026-06-19 11:55:41,475.475 INFO    ] Checking for camera pi updates...
[2026-06-19 11:55:41,512.512 INFO    ] 200
[2026-06-19 11:55:41,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:41,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:55:41,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:55:41,724.724 INFO    ] No camera update needed
[2026-06-19 11:55:41,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:55:41,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:55:41,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:55:41,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:55:43,784.784 INFO    ] ================================================
[2026-06-19 11:55:43,799.799 INFO    ] Launching Daemon at Fri Jun 19 11:55:43 IST 2026
[2026-06-19 11:55:43,810.810 INFO    ] ================================================
[2026-06-19 11:55:44,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:55:44
[2026-06-19 11:55:44,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:55:45,224.224 INFO    ] Initializing speech engine...
[2026-06-19 11:55:45,243.243 INFO    ] 2026-06-19 11:55:45
[2026-06-19 11:55:45,492.492 INFO    ] 2026-06-19 11:55:45
[2026-06-19 11:55:45,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:55:45,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:55:45,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:55:45,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:55:45,989.989 INFO    ] time= 19/06/2026 11:55:45
[2026-06-19 11:55:46,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:55:46,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:55:46,213.213 INFO    ] No existing commands found in stream
[2026-06-19 11:55:51,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:55:51,233.233 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 11:55:52,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:55:52,006.006 INFO    ] Checking for system updates...
[2026-06-19 11:55:52,043.043 INFO    ] 200
[2026-06-19 11:55:52,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:52,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:55:52,102.102 INFO    ] No update needed
[2026-06-19 11:55:52,105.105 INFO    ] Checking for camera pi updates...
[2026-06-19 11:55:52,140.140 INFO    ] 200
[2026-06-19 11:55:52,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:55:52,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:55:52,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:55:52,232.232 INFO    ] No camera update needed
[2026-06-19 11:55:52,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:55:52,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:55:52,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:55:52,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:55:54,293.293 INFO    ] ================================================
[2026-06-19 11:55:54,308.308 INFO    ] Launching Daemon at Fri Jun 19 11:55:54 IST 2026
[2026-06-19 11:55:54,319.319 INFO    ] ================================================
[2026-06-19 11:55:54,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:55:54
[2026-06-19 11:55:55,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:55:55,948.948 INFO    ] Initializing speech engine...
[2026-06-19 11:55:55,955.955 INFO    ] 2026-06-19 11:55:55
[2026-06-19 11:55:56,244.244 INFO    ] 2026-06-19 11:55:56
[2026-06-19 11:55:56,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:55:56,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:55:56,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:55:56,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:55:56,954.954 INFO    ] time= 19/06/2026 11:55:56
[2026-06-19 11:55:57,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:55:57,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:55:57,195.195 INFO    ] No existing commands found in stream
[2026-06-19 11:56:02,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:56:02,213.213 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 11:56:05,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:56:05,133.133 INFO    ] Checking for system updates...
[2026-06-19 11:56:05,171.171 INFO    ] 200
[2026-06-19 11:56:05,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:05,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:56:05,233.233 INFO    ] No update needed
[2026-06-19 11:56:05,236.236 INFO    ] Checking for camera pi updates...
[2026-06-19 11:56:05,276.276 INFO    ] 200
[2026-06-19 11:56:05,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:05,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:56:05,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:56:05,373.373 INFO    ] No camera update needed
[2026-06-19 11:56:05,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:56:05,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:56:05,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:56:05,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:56:07,433.433 INFO    ] ================================================
[2026-06-19 11:56:07,449.449 INFO    ] Launching Daemon at Fri Jun 19 11:56:07 IST 2026
[2026-06-19 11:56:07,460.460 INFO    ] ================================================
[2026-06-19 11:56:08,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:56:08
[2026-06-19 11:56:08,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:56:08,933.933 INFO    ] Initializing speech engine...
[2026-06-19 11:56:08,940.940 INFO    ] 2026-06-19 11:56:08
[2026-06-19 11:56:09,203.203 INFO    ] 2026-06-19 11:56:09
[2026-06-19 11:56:09,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:56:09,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:56:09,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:56:09,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:56:09,757.757 INFO    ] time= 19/06/2026 11:56:09
[2026-06-19 11:56:09,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:56:09,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:56:09,928.928 INFO    ] No existing commands found in stream
[2026-06-19 11:56:14,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:56:14,961.961 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 11:56:18,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:56:18,839.839 INFO    ] Checking for system updates...
[2026-06-19 11:56:18,881.881 INFO    ] 200
[2026-06-19 11:56:18,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:18,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:56:18,947.947 INFO    ] No update needed
[2026-06-19 11:56:18,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 11:56:18,985.985 INFO    ] 200
[2026-06-19 11:56:18,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:19,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:56:19,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:56:19,080.080 INFO    ] No camera update needed
[2026-06-19 11:56:19,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:56:19,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:56:19,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:56:19,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:56:21,138.138 INFO    ] ================================================
[2026-06-19 11:56:21,153.153 INFO    ] Launching Daemon at Fri Jun 19 11:56:21 IST 2026
[2026-06-19 11:56:21,164.164 INFO    ] ================================================
[2026-06-19 11:56:21,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:56:21
[2026-06-19 11:56:22,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:56:22,857.857 INFO    ] Initializing speech engine...
[2026-06-19 11:56:22,863.863 INFO    ] 2026-06-19 11:56:22
[2026-06-19 11:56:23,179.179 INFO    ] 2026-06-19 11:56:23
[2026-06-19 11:56:23,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:56:23,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:56:23,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:56:23,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:56:23,687.687 INFO    ] time= 19/06/2026 11:56:23
[2026-06-19 11:56:23,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:56:23,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:56:23,831.831 INFO    ] No existing commands found in stream
[2026-06-19 11:56:28,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:56:28,854.854 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 11:56:32,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:56:32,460.460 INFO    ] Checking for system updates...
[2026-06-19 11:56:32,501.501 INFO    ] 200
[2026-06-19 11:56:32,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:32,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:56:32,573.573 INFO    ] No update needed
[2026-06-19 11:56:32,577.577 INFO    ] Checking for camera pi updates...
[2026-06-19 11:56:32,625.625 INFO    ] 200
[2026-06-19 11:56:32,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:32,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:56:32,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:56:32,711.711 INFO    ] No camera update needed
[2026-06-19 11:56:32,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:56:32,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:56:32,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:56:32,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:56:34,774.774 INFO    ] ================================================
[2026-06-19 11:56:34,789.789 INFO    ] Launching Daemon at Fri Jun 19 11:56:34 IST 2026
[2026-06-19 11:56:34,799.799 INFO    ] ================================================
[2026-06-19 11:56:35,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:56:35
[2026-06-19 11:56:35,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:56:36,253.253 INFO    ] Initializing speech engine...
[2026-06-19 11:56:36,267.267 INFO    ] 2026-06-19 11:56:36
[2026-06-19 11:56:36,529.529 INFO    ] 2026-06-19 11:56:36
[2026-06-19 11:56:36,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:56:36,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:56:36,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:56:36,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:56:36,942.942 INFO    ] time= 19/06/2026 11:56:36
[2026-06-19 11:56:36,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:56:36,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:56:37,142.142 INFO    ] No existing commands found in stream
[2026-06-19 11:56:42,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:56:42,161.161 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 11:56:45,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:56:45,067.067 INFO    ] Checking for system updates...
[2026-06-19 11:56:45,104.104 INFO    ] 200
[2026-06-19 11:56:45,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:45,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:56:45,170.170 INFO    ] No update needed
[2026-06-19 11:56:45,172.172 INFO    ] Checking for camera pi updates...
[2026-06-19 11:56:45,206.206 INFO    ] 200
[2026-06-19 11:56:45,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:45,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:56:45,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:56:45,308.308 INFO    ] No camera update needed
[2026-06-19 11:56:45,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:56:45,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:56:45,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:56:45,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:56:47,363.363 INFO    ] ================================================
[2026-06-19 11:56:47,379.379 INFO    ] Launching Daemon at Fri Jun 19 11:56:47 IST 2026
[2026-06-19 11:56:47,390.390 INFO    ] ================================================
[2026-06-19 11:56:48,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:56:48
[2026-06-19 11:56:48,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:56:49,084.084 INFO    ] Initializing speech engine...
[2026-06-19 11:56:49,094.094 INFO    ] 2026-06-19 11:56:49
[2026-06-19 11:56:49,401.401 INFO    ] 2026-06-19 11:56:49
[2026-06-19 11:56:49,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:56:49,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:56:49,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:56:49,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:56:49,922.922 INFO    ] time= 19/06/2026 11:56:49
[2026-06-19 11:56:49,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:56:49,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:56:50,081.081 INFO    ] No existing commands found in stream
[2026-06-19 11:56:55,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:56:55,109.109 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 11:56:57,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:56:57,974.974 INFO    ] Checking for system updates...
[2026-06-19 11:56:58,017.017 INFO    ] 200
[2026-06-19 11:56:58,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:58,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:56:58,084.084 INFO    ] No update needed
[2026-06-19 11:56:58,086.086 INFO    ] Checking for camera pi updates...
[2026-06-19 11:56:58,130.130 INFO    ] 200
[2026-06-19 11:56:58,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:56:58,174.174 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:56:58,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:56:58,217.217 INFO    ] No camera update needed
[2026-06-19 11:56:58,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:56:58,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:56:58,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:56:58,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:57:00,274.274 INFO    ] ================================================
[2026-06-19 11:57:00,289.289 INFO    ] Launching Daemon at Fri Jun 19 11:57:00 IST 2026
[2026-06-19 11:57:00,300.300 INFO    ] ================================================
[2026-06-19 11:57:00,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:57:00
[2026-06-19 11:57:01,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:57:02,076.076 INFO    ] Initializing speech engine...
[2026-06-19 11:57:02,083.083 INFO    ] 2026-06-19 11:57:02
[2026-06-19 11:57:02,513.513 INFO    ] 2026-06-19 11:57:02
[2026-06-19 11:57:02,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:57:02,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:57:02,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:57:03,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:57:03,061.061 INFO    ] time= 19/06/2026 11:57:03
[2026-06-19 11:57:03,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:57:03,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:57:03,206.206 INFO    ] No existing commands found in stream
[2026-06-19 11:57:08,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:57:08,242.242 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 11:57:12,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:57:12,167.167 INFO    ] Checking for system updates...
[2026-06-19 11:57:12,204.204 INFO    ] 200
[2026-06-19 11:57:12,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:57:12,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:57:12,270.270 INFO    ] No update needed
[2026-06-19 11:57:12,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 11:57:12,307.307 INFO    ] 200
[2026-06-19 11:57:12,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:57:12,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:57:12,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:57:12,397.397 INFO    ] No camera update needed
[2026-06-19 11:57:12,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:57:12,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:57:12,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:57:12,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:57:14,454.454 INFO    ] ================================================
[2026-06-19 11:57:14,469.469 INFO    ] Launching Daemon at Fri Jun 19 11:57:14 IST 2026
[2026-06-19 11:57:14,480.480 INFO    ] ================================================
[2026-06-19 11:57:15,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:57:15
[2026-06-19 11:57:15,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:57:16,157.157 INFO    ] Initializing speech engine...
[2026-06-19 11:57:16,170.170 INFO    ] 2026-06-19 11:57:16
[2026-06-19 11:57:16,465.465 INFO    ] 2026-06-19 11:57:16
[2026-06-19 11:57:16,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:57:16,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:57:16,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:57:16,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:57:17,013.013 INFO    ] time= 19/06/2026 11:57:17
[2026-06-19 11:57:17,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:57:17,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:57:17,174.174 INFO    ] No existing commands found in stream
[2026-06-19 11:57:22,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:57:22,195.195 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 11:57:26,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:57:26,629.629 INFO    ] Checking for system updates...
[2026-06-19 11:57:26,671.671 INFO    ] 200
[2026-06-19 11:57:26,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:57:26,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:57:26,739.739 INFO    ] No update needed
[2026-06-19 11:57:26,742.742 INFO    ] Checking for camera pi updates...
[2026-06-19 11:57:26,781.781 INFO    ] 200
[2026-06-19 11:57:26,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:57:26,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:57:26,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:57:26,871.871 INFO    ] No camera update needed
[2026-06-19 11:57:26,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:57:26,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:57:26,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:57:26,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:57:28,931.931 INFO    ] ================================================
[2026-06-19 11:57:28,945.945 INFO    ] Launching Daemon at Fri Jun 19 11:57:28 IST 2026
[2026-06-19 11:57:28,956.956 INFO    ] ================================================
[2026-06-19 11:57:29,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:57:29
[2026-06-19 11:57:30,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:57:30,420.420 INFO    ] Initializing speech engine...
[2026-06-19 11:57:30,429.429 INFO    ] 2026-06-19 11:57:30
[2026-06-19 11:57:30,677.677 INFO    ] 2026-06-19 11:57:30
[2026-06-19 11:57:30,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:57:30,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:57:30,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:57:31,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:57:31,054.054 INFO    ] time= 19/06/2026 11:57:31
[2026-06-19 11:57:31,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:57:31,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:57:31,242.242 INFO    ] No existing commands found in stream
[2026-06-19 11:57:36,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:57:36,268.268 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 11:57:39,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:57:39,482.482 INFO    ] Checking for system updates...
[2026-06-19 11:57:39,518.518 INFO    ] 200
[2026-06-19 11:57:39,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:57:39,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:57:39,585.585 INFO    ] No update needed
[2026-06-19 11:57:39,587.587 INFO    ] Checking for camera pi updates...
[2026-06-19 11:57:39,622.622 INFO    ] 200
[2026-06-19 11:57:39,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:57:39,665.665 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:57:39,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:57:39,715.715 INFO    ] No camera update needed
[2026-06-19 11:57:39,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:57:39,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:57:39,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:57:39,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:57:41,773.773 INFO    ] ================================================
[2026-06-19 11:57:41,788.788 INFO    ] Launching Daemon at Fri Jun 19 11:57:41 IST 2026
[2026-06-19 11:57:41,800.800 INFO    ] ================================================
[2026-06-19 11:57:42,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:57:42
[2026-06-19 11:57:42,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:57:43,211.211 INFO    ] Initializing speech engine...
[2026-06-19 11:57:43,234.234 INFO    ] 2026-06-19 11:57:43
[2026-06-19 11:57:43,489.489 INFO    ] 2026-06-19 11:57:43
[2026-06-19 11:57:43,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:57:44,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:57:44,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:57:44,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:57:44,294.294 INFO    ] time= 19/06/2026 11:57:44
[2026-06-19 11:57:44,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:57:44,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:57:44,504.504 INFO    ] No existing commands found in stream
[2026-06-19 11:57:49,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:57:49,522.522 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 11:57:51,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:57:51,525.525 INFO    ] Checking for system updates...
[2026-06-19 11:57:51,561.561 INFO    ] 200
[2026-06-19 11:57:51,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:57:51,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:57:51,619.619 INFO    ] No update needed
[2026-06-19 11:57:51,621.621 INFO    ] Checking for camera pi updates...
[2026-06-19 11:57:51,660.660 INFO    ] 200
[2026-06-19 11:57:51,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:57:51,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:57:51,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:57:51,853.853 INFO    ] No camera update needed
[2026-06-19 11:57:51,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:57:51,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:57:51,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:57:51,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:57:53,910.910 INFO    ] ================================================
[2026-06-19 11:57:53,926.926 INFO    ] Launching Daemon at Fri Jun 19 11:57:53 IST 2026
[2026-06-19 11:57:53,937.937 INFO    ] ================================================
[2026-06-19 11:57:54,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:57:54
[2026-06-19 11:57:55,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:57:55,409.409 INFO    ] Initializing speech engine...
[2026-06-19 11:57:55,418.418 INFO    ] 2026-06-19 11:57:55
[2026-06-19 11:57:55,722.722 INFO    ] 2026-06-19 11:57:55
[2026-06-19 11:57:55,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:57:55,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:57:55,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:57:56,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:57:56,117.117 INFO    ] time= 19/06/2026 11:57:56
[2026-06-19 11:57:56,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:57:56,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:57:56,247.247 INFO    ] No existing commands found in stream
[2026-06-19 11:58:01,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:58:01,263.263 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 11:58:01,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:58:01,746.746 INFO    ] Checking for system updates...
[2026-06-19 11:58:01,816.816 INFO    ] 200
[2026-06-19 11:58:01,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:01,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:58:01,937.937 INFO    ] No update needed
[2026-06-19 11:58:01,941.941 INFO    ] Checking for camera pi updates...
[2026-06-19 11:58:01,998.998 INFO    ] 200
[2026-06-19 11:58:02,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:02,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:58:02,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:58:02,117.117 INFO    ] No camera update needed
[2026-06-19 11:58:02,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:58:02,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:58:02,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:58:02,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:58:04,188.188 INFO    ] ================================================
[2026-06-19 11:58:04,203.203 INFO    ] Launching Daemon at Fri Jun 19 11:58:04 IST 2026
[2026-06-19 11:58:04,214.214 INFO    ] ================================================
[2026-06-19 11:58:04,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:58:04
[2026-06-19 11:58:05,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:58:05,622.622 INFO    ] Initializing speech engine...
[2026-06-19 11:58:05,635.635 INFO    ] 2026-06-19 11:58:05
[2026-06-19 11:58:05,902.902 INFO    ] 2026-06-19 11:58:05
[2026-06-19 11:58:05,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:58:06,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:58:06,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:58:06,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:58:06,362.362 INFO    ] time= 19/06/2026 11:58:06
[2026-06-19 11:58:06,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:58:06,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:58:06,620.620 INFO    ] No existing commands found in stream
[2026-06-19 11:58:11,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:58:11,640.640 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 11:58:12,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:58:12,782.782 INFO    ] Checking for system updates...
[2026-06-19 11:58:12,819.819 INFO    ] 200
[2026-06-19 11:58:12,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:12,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:58:12,880.880 INFO    ] No update needed
[2026-06-19 11:58:12,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 11:58:12,919.919 INFO    ] 200
[2026-06-19 11:58:12,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:12,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:58:13,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:58:13,012.012 INFO    ] No camera update needed
[2026-06-19 11:58:13,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:58:13,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:58:13,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:58:13,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:58:15,070.070 INFO    ] ================================================
[2026-06-19 11:58:15,086.086 INFO    ] Launching Daemon at Fri Jun 19 11:58:15 IST 2026
[2026-06-19 11:58:15,098.098 INFO    ] ================================================
[2026-06-19 11:58:15,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:58:15
[2026-06-19 11:58:16,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:58:16,782.782 INFO    ] Initializing speech engine...
[2026-06-19 11:58:16,790.790 INFO    ] 2026-06-19 11:58:16
[2026-06-19 11:58:17,063.063 INFO    ] 2026-06-19 11:58:17
[2026-06-19 11:58:17,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:58:17,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:58:17,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:58:17,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:58:17,545.545 INFO    ] time= 19/06/2026 11:58:17
[2026-06-19 11:58:17,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:58:17,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:58:17,749.749 INFO    ] No existing commands found in stream
[2026-06-19 11:58:22,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:58:22,771.771 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 11:58:25,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:58:25,387.387 INFO    ] Checking for system updates...
[2026-06-19 11:58:25,424.424 INFO    ] 200
[2026-06-19 11:58:25,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:25,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:58:25,490.490 INFO    ] No update needed
[2026-06-19 11:58:25,492.492 INFO    ] Checking for camera pi updates...
[2026-06-19 11:58:25,531.531 INFO    ] 200
[2026-06-19 11:58:25,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:25,575.575 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:58:25,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:58:25,626.626 INFO    ] No camera update needed
[2026-06-19 11:58:25,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:58:25,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:58:25,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:58:25,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:58:27,682.682 INFO    ] ================================================
[2026-06-19 11:58:27,698.698 INFO    ] Launching Daemon at Fri Jun 19 11:58:27 IST 2026
[2026-06-19 11:58:27,709.709 INFO    ] ================================================
[2026-06-19 11:58:28,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:58:28
[2026-06-19 11:58:28,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:58:29,137.137 INFO    ] Initializing speech engine...
[2026-06-19 11:58:29,146.146 INFO    ] 2026-06-19 11:58:29
[2026-06-19 11:58:29,391.391 INFO    ] 2026-06-19 11:58:29
[2026-06-19 11:58:29,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:58:29,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:58:29,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:58:29,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:58:29,898.898 INFO    ] time= 19/06/2026 11:58:29
[2026-06-19 11:58:29,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:58:29,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:58:30,087.087 INFO    ] No existing commands found in stream
[2026-06-19 11:58:35,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:58:35,114.114 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 11:58:37,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 11:58:37,184.184 INFO    ] Checking for system updates...
[2026-06-19 11:58:37,221.221 INFO    ] 200
[2026-06-19 11:58:37,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:37,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:58:37,282.282 INFO    ] No update needed
[2026-06-19 11:58:37,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 11:58:37,321.321 INFO    ] 200
[2026-06-19 11:58:37,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:37,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:58:37,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:58:37,411.411 INFO    ] No camera update needed
[2026-06-19 11:58:37,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:58:37,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:58:37,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:58:37,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:58:39,471.471 INFO    ] ================================================
[2026-06-19 11:58:39,487.487 INFO    ] Launching Daemon at Fri Jun 19 11:58:39 IST 2026
[2026-06-19 11:58:39,498.498 INFO    ] ================================================
[2026-06-19 11:58:40,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:58:40
[2026-06-19 11:58:40,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:58:40,909.909 INFO    ] Initializing speech engine...
[2026-06-19 11:58:40,932.932 INFO    ] 2026-06-19 11:58:40
[2026-06-19 11:58:41,188.188 INFO    ] 2026-06-19 11:58:41
[2026-06-19 11:58:41,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:58:41,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:58:41,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:58:41,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:58:41,746.746 INFO    ] time= 19/06/2026 11:58:41
[2026-06-19 11:58:41,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:58:41,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:58:41,901.901 INFO    ] No existing commands found in stream
[2026-06-19 11:58:46,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:58:46,921.921 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 11:58:47,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 11:58:47,610.610 INFO    ] Checking for system updates...
[2026-06-19 11:58:47,647.647 INFO    ] 200
[2026-06-19 11:58:47,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:47,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:58:47,705.705 INFO    ] No update needed
[2026-06-19 11:58:47,707.707 INFO    ] Checking for camera pi updates...
[2026-06-19 11:58:47,743.743 INFO    ] 200
[2026-06-19 11:58:47,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:47,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:58:47,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:58:47,821.821 INFO    ] No camera update needed
[2026-06-19 11:58:47,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:58:47,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:58:47,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:58:47,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:58:49,882.882 INFO    ] ================================================
[2026-06-19 11:58:49,897.897 INFO    ] Launching Daemon at Fri Jun 19 11:58:49 IST 2026
[2026-06-19 11:58:49,909.909 INFO    ] ================================================
[2026-06-19 11:58:50,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:58:50
[2026-06-19 11:58:51,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:58:51,327.327 INFO    ] Initializing speech engine...
[2026-06-19 11:58:51,336.336 INFO    ] 2026-06-19 11:58:51
[2026-06-19 11:58:51,638.638 INFO    ] 2026-06-19 11:58:51
[2026-06-19 11:58:51,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:58:51,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:58:51,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:58:52,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:58:52,073.073 INFO    ] time= 19/06/2026 11:58:52
[2026-06-19 11:58:52,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:58:52,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:58:52,162.162 INFO    ] No existing commands found in stream
[2026-06-19 11:58:57,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:58:57,201.201 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 11:58:58,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:58:58,280.280 INFO    ] Checking for system updates...
[2026-06-19 11:58:58,321.321 INFO    ] 200
[2026-06-19 11:58:58,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:58,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:58:58,386.386 INFO    ] No update needed
[2026-06-19 11:58:58,389.389 INFO    ] Checking for camera pi updates...
[2026-06-19 11:58:58,428.428 INFO    ] 200
[2026-06-19 11:58:58,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:58:58,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:58:58,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:58:58,526.526 INFO    ] No camera update needed
[2026-06-19 11:58:58,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:58:58,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:58:58,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:58:58,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:59:00,582.582 INFO    ] ================================================
[2026-06-19 11:59:00,598.598 INFO    ] Launching Daemon at Fri Jun 19 11:59:00 IST 2026
[2026-06-19 11:59:00,609.609 INFO    ] ================================================
[2026-06-19 11:59:01,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:59:01
[2026-06-19 11:59:01,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:59:02,254.254 INFO    ] Initializing speech engine...
[2026-06-19 11:59:02,264.264 INFO    ] 2026-06-19 11:59:02
[2026-06-19 11:59:02,561.561 INFO    ] 2026-06-19 11:59:02
[2026-06-19 11:59:02,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:59:02,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:59:02,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:59:02,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:59:02,981.981 INFO    ] time= 19/06/2026 11:59:02
[2026-06-19 11:59:02,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:59:03,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:59:03,163.163 INFO    ] No existing commands found in stream
[2026-06-19 11:59:08,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:59:08,202.202 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 11:59:08,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 11:59:08,735.735 INFO    ] Checking for system updates...
[2026-06-19 11:59:08,772.772 INFO    ] 200
[2026-06-19 11:59:08,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:08,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:59:08,829.829 INFO    ] No update needed
[2026-06-19 11:59:08,832.832 INFO    ] Checking for camera pi updates...
[2026-06-19 11:59:08,866.866 INFO    ] 200
[2026-06-19 11:59:08,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:08,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:59:08,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:59:08,967.967 INFO    ] No camera update needed
[2026-06-19 11:59:08,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:59:08,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:59:08,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:59:08,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:59:11,026.026 INFO    ] ================================================
[2026-06-19 11:59:11,042.042 INFO    ] Launching Daemon at Fri Jun 19 11:59:11 IST 2026
[2026-06-19 11:59:11,054.054 INFO    ] ================================================
[2026-06-19 11:59:11,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:59:11
[2026-06-19 11:59:12,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:59:12,451.451 INFO    ] Initializing speech engine...
[2026-06-19 11:59:12,475.475 INFO    ] 2026-06-19 11:59:12
[2026-06-19 11:59:12,742.742 INFO    ] 2026-06-19 11:59:12
[2026-06-19 11:59:12,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:59:13,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:59:13,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:59:13,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:59:13,238.238 INFO    ] time= 19/06/2026 11:59:13
[2026-06-19 11:59:13,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:59:13,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:59:13,443.443 INFO    ] No existing commands found in stream
[2026-06-19 11:59:18,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:59:18,469.469 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 11:59:20,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:59:20,497.497 INFO    ] Checking for system updates...
[2026-06-19 11:59:20,534.534 INFO    ] 200
[2026-06-19 11:59:20,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:20,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:59:20,593.593 INFO    ] No update needed
[2026-06-19 11:59:20,595.595 INFO    ] Checking for camera pi updates...
[2026-06-19 11:59:20,630.630 INFO    ] 200
[2026-06-19 11:59:20,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:20,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:59:20,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:59:20,732.732 INFO    ] No camera update needed
[2026-06-19 11:59:20,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:59:20,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:59:20,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:59:20,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:59:22,787.787 INFO    ] ================================================
[2026-06-19 11:59:22,803.803 INFO    ] Launching Daemon at Fri Jun 19 11:59:22 IST 2026
[2026-06-19 11:59:22,814.814 INFO    ] ================================================
[2026-06-19 11:59:23,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:59:23
[2026-06-19 11:59:24,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:59:24,485.485 INFO    ] Initializing speech engine...
[2026-06-19 11:59:24,498.498 INFO    ] 2026-06-19 11:59:24
[2026-06-19 11:59:24,788.788 INFO    ] 2026-06-19 11:59:24
[2026-06-19 11:59:24,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:59:25,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:59:25,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:59:25,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:59:25,321.321 INFO    ] time= 19/06/2026 11:59:25
[2026-06-19 11:59:25,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:59:25,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:59:25,502.502 INFO    ] No existing commands found in stream
[2026-06-19 11:59:30,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:59:30,536.536 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 11:59:31,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 11:59:31,051.051 INFO    ] Checking for system updates...
[2026-06-19 11:59:31,092.092 INFO    ] 200
[2026-06-19 11:59:31,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:31,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:59:31,158.158 INFO    ] No update needed
[2026-06-19 11:59:31,160.160 INFO    ] Checking for camera pi updates...
[2026-06-19 11:59:31,198.198 INFO    ] 200
[2026-06-19 11:59:31,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:31,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:59:31,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:59:31,287.287 INFO    ] No camera update needed
[2026-06-19 11:59:31,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:59:31,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:59:31,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:59:31,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:59:33,350.350 INFO    ] ================================================
[2026-06-19 11:59:33,366.366 INFO    ] Launching Daemon at Fri Jun 19 11:59:33 IST 2026
[2026-06-19 11:59:33,377.377 INFO    ] ================================================
[2026-06-19 11:59:34,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:59:34
[2026-06-19 11:59:34,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:59:34,980.980 INFO    ] Initializing speech engine...
[2026-06-19 11:59:34,989.989 INFO    ] 2026-06-19 11:59:34
[2026-06-19 11:59:35,241.241 INFO    ] 2026-06-19 11:59:35
[2026-06-19 11:59:35,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:59:35,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:59:35,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:59:35,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:59:35,617.617 INFO    ] time= 19/06/2026 11:59:35
[2026-06-19 11:59:35,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:59:35,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:59:35,796.796 INFO    ] No existing commands found in stream
[2026-06-19 11:59:40,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:59:40,824.824 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 11:59:43,792.792 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 11:59:43,795.795 INFO    ] Checking for system updates...
[2026-06-19 11:59:43,831.831 INFO    ] 200
[2026-06-19 11:59:43,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:43,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:59:43,890.890 INFO    ] No update needed
[2026-06-19 11:59:43,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 11:59:43,926.926 INFO    ] 200
[2026-06-19 11:59:43,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:43,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:59:44,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 11:59:44,019.019 INFO    ] No camera update needed
[2026-06-19 11:59:44,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:59:44,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:59:44,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:59:44,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:59:46,075.075 INFO    ] ================================================
[2026-06-19 11:59:46,091.091 INFO    ] Launching Daemon at Fri Jun 19 11:59:46 IST 2026
[2026-06-19 11:59:46,103.103 INFO    ] ================================================
[2026-06-19 11:59:46,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:59:46
[2026-06-19 11:59:47,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 11:59:47,529.529 INFO    ] Initializing speech engine...
[2026-06-19 11:59:47,535.535 INFO    ] 2026-06-19 11:59:47
[2026-06-19 11:59:47,788.788 INFO    ] 2026-06-19 11:59:47
[2026-06-19 11:59:47,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 11:59:48,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 11:59:48,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 11:59:48,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 11:59:48,226.226 INFO    ] time= 19/06/2026 11:59:48
[2026-06-19 11:59:48,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 11:59:48,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-19 11:59:48,433.433 INFO    ] No existing commands found in stream
[2026-06-19 11:59:53,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 11:59:53,447.447 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 11:59:56,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 11:59:56,205.205 INFO    ] Checking for system updates...
[2026-06-19 11:59:56,246.246 INFO    ] 200
[2026-06-19 11:59:56,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:56,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:59:56,312.312 INFO    ] No update needed
[2026-06-19 11:59:56,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 11:59:56,349.349 INFO    ] 200
[2026-06-19 11:59:56,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 11:59:56,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 11:59:56,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 11:59:56,548.548 INFO    ] No camera update needed
[2026-06-19 11:59:56,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-19 11:59:56,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 11:59:56,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 11:59:56,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 11:59:58,609.609 INFO    ] ================================================
[2026-06-19 11:59:58,624.624 INFO    ] Launching Daemon at Fri Jun 19 11:59:58 IST 2026
[2026-06-19 11:59:58,635.635 INFO    ] ================================================
[2026-06-19 11:59:59,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 11:59:59
[2026-06-19 11:59:59,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:00:00,097.097 INFO    ] Initializing speech engine...
[2026-06-19 12:00:00,105.105 INFO    ] 2026-06-19 12:00:00
[2026-06-19 12:00:00,408.408 INFO    ] 2026-06-19 12:00:00
[2026-06-19 12:00:00,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:00:00,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:00:00,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:00:00,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:00:00,840.840 INFO    ] time= 19/06/2026 12:00:00
[2026-06-19 12:00:00,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:00:00,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:00:01,012.012 INFO    ] No existing commands found in stream
[2026-06-19 12:00:06,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:00:06,071.071 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 12:00:10,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:00:10,956.956 INFO    ] Checking for system updates...
[2026-06-19 12:00:10,997.997 INFO    ] 200
[2026-06-19 12:00:11,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:11,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:00:11,059.059 INFO    ] No update needed
[2026-06-19 12:00:11,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 12:00:11,097.097 INFO    ] 200
[2026-06-19 12:00:11,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:11,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:00:11,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:00:11,193.193 INFO    ] No camera update needed
[2026-06-19 12:00:11,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:00:11,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:00:11,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:00:11,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:00:13,252.252 INFO    ] ================================================
[2026-06-19 12:00:13,267.267 INFO    ] Launching Daemon at Fri Jun 19 12:00:13 IST 2026
[2026-06-19 12:00:13,277.277 INFO    ] ================================================
[2026-06-19 12:00:13,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:00:13
[2026-06-19 12:00:14,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:00:14,747.747 INFO    ] Initializing speech engine...
[2026-06-19 12:00:14,759.759 INFO    ] 2026-06-19 12:00:14
[2026-06-19 12:00:15,032.032 INFO    ] 2026-06-19 12:00:15
[2026-06-19 12:00:15,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:00:15,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:00:15,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:00:15,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:00:15,413.413 INFO    ] time= 19/06/2026 12:00:15
[2026-06-19 12:00:15,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:00:15,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:00:15,538.538 INFO    ] No existing commands found in stream
[2026-06-19 12:00:20,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:00:20,553.553 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 12:00:21,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:00:21,139.139 INFO    ] Checking for system updates...
[2026-06-19 12:00:21,179.179 INFO    ] 200
[2026-06-19 12:00:21,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:21,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:00:21,243.243 INFO    ] No update needed
[2026-06-19 12:00:21,246.246 INFO    ] Checking for camera pi updates...
[2026-06-19 12:00:21,280.280 INFO    ] 200
[2026-06-19 12:00:21,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:21,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:00:21,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:00:21,355.355 INFO    ] No camera update needed
[2026-06-19 12:00:21,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:00:21,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:00:21,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:00:21,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:00:23,410.410 INFO    ] ================================================
[2026-06-19 12:00:23,426.426 INFO    ] Launching Daemon at Fri Jun 19 12:00:23 IST 2026
[2026-06-19 12:00:23,437.437 INFO    ] ================================================
[2026-06-19 12:00:24,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:00:24
[2026-06-19 12:00:24,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:00:24,884.884 INFO    ] Initializing speech engine...
[2026-06-19 12:00:24,895.895 INFO    ] 2026-06-19 12:00:24
[2026-06-19 12:00:25,158.158 INFO    ] 2026-06-19 12:00:25
[2026-06-19 12:00:25,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:00:25,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:00:25,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:00:25,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:00:25,709.709 INFO    ] time= 19/06/2026 12:00:25
[2026-06-19 12:00:25,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:00:25,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:00:25,860.860 INFO    ] No existing commands found in stream
[2026-06-19 12:00:30,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:00:30,879.879 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 12:00:31,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:00:31,841.841 INFO    ] Checking for system updates...
[2026-06-19 12:00:31,881.881 INFO    ] 200
[2026-06-19 12:00:31,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:31,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:00:31,945.945 INFO    ] No update needed
[2026-06-19 12:00:31,948.948 INFO    ] Checking for camera pi updates...
[2026-06-19 12:00:31,986.986 INFO    ] 200
[2026-06-19 12:00:31,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:32,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:00:32,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:00:32,087.087 INFO    ] No camera update needed
[2026-06-19 12:00:32,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:00:32,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:00:32,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:00:32,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:00:34,145.145 INFO    ] ================================================
[2026-06-19 12:00:34,161.161 INFO    ] Launching Daemon at Fri Jun 19 12:00:34 IST 2026
[2026-06-19 12:00:34,172.172 INFO    ] ================================================
[2026-06-19 12:00:34,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:00:34
[2026-06-19 12:00:35,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:00:35,810.810 INFO    ] Initializing speech engine...
[2026-06-19 12:00:35,817.817 INFO    ] 2026-06-19 12:00:35
[2026-06-19 12:00:36,092.092 INFO    ] 2026-06-19 12:00:36
[2026-06-19 12:00:36,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:00:36,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:00:36,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:00:36,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:00:36,648.648 INFO    ] time= 19/06/2026 12:00:36
[2026-06-19 12:00:36,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:00:36,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:00:36,827.827 INFO    ] No existing commands found in stream
[2026-06-19 12:00:41,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:00:41,861.861 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 12:00:44,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:00:44,175.175 INFO    ] Checking for system updates...
[2026-06-19 12:00:44,213.213 INFO    ] 200
[2026-06-19 12:00:44,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:44,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:00:44,272.272 INFO    ] No update needed
[2026-06-19 12:00:44,275.275 INFO    ] Checking for camera pi updates...
[2026-06-19 12:00:44,311.311 INFO    ] 200
[2026-06-19 12:00:44,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:44,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:00:44,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:00:44,405.405 INFO    ] No camera update needed
[2026-06-19 12:00:44,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:00:44,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:00:44,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:00:44,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:00:46,465.465 INFO    ] ================================================
[2026-06-19 12:00:46,480.480 INFO    ] Launching Daemon at Fri Jun 19 12:00:46 IST 2026
[2026-06-19 12:00:46,491.491 INFO    ] ================================================
[2026-06-19 12:00:47,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:00:47
[2026-06-19 12:00:47,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:00:48,132.132 INFO    ] Initializing speech engine...
[2026-06-19 12:00:48,139.139 INFO    ] 2026-06-19 12:00:48
[2026-06-19 12:00:48,384.384 INFO    ] 2026-06-19 12:00:48
[2026-06-19 12:00:48,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:00:48,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:00:48,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:00:48,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:00:48,859.859 INFO    ] time= 19/06/2026 12:00:48
[2026-06-19 12:00:48,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:00:48,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:00:49,029.029 INFO    ] No existing commands found in stream
[2026-06-19 12:00:54,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:00:54,069.069 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 12:00:56,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:00:56,899.899 INFO    ] Checking for system updates...
[2026-06-19 12:00:56,941.941 INFO    ] 200
[2026-06-19 12:00:56,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:56,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:00:57,001.001 INFO    ] No update needed
[2026-06-19 12:00:57,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 12:00:57,038.038 INFO    ] 200
[2026-06-19 12:00:57,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:00:57,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:00:57,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:00:57,126.126 INFO    ] No camera update needed
[2026-06-19 12:00:57,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:00:57,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:00:57,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:00:57,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:00:59,188.188 INFO    ] ================================================
[2026-06-19 12:00:59,203.203 INFO    ] Launching Daemon at Fri Jun 19 12:00:59 IST 2026
[2026-06-19 12:00:59,214.214 INFO    ] ================================================
[2026-06-19 12:00:59,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:00:59
[2026-06-19 12:01:00,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:01:00,857.857 INFO    ] Initializing speech engine...
[2026-06-19 12:01:00,864.864 INFO    ] 2026-06-19 12:01:00
[2026-06-19 12:01:01,183.183 INFO    ] 2026-06-19 12:01:01
[2026-06-19 12:01:01,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:01:01,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:01:01,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:01:01,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:01:01,691.691 INFO    ] time= 19/06/2026 12:01:01
[2026-06-19 12:01:01,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:01:01,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:01:01,856.856 INFO    ] No existing commands found in stream
[2026-06-19 12:01:06,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:01:06,891.891 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 12:01:07,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:01:07,930.930 INFO    ] Checking for system updates...
[2026-06-19 12:01:07,970.970 INFO    ] 200
[2026-06-19 12:01:07,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:01:08,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:01:08,027.027 INFO    ] No update needed
[2026-06-19 12:01:08,030.030 INFO    ] Checking for camera pi updates...
[2026-06-19 12:01:08,063.063 INFO    ] 200
[2026-06-19 12:01:08,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:01:08,106.106 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:01:08,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:01:08,149.149 INFO    ] No camera update needed
[2026-06-19 12:01:08,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:01:08,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:01:08,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:01:08,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:01:10,207.207 INFO    ] ================================================
[2026-06-19 12:01:10,222.222 INFO    ] Launching Daemon at Fri Jun 19 12:01:10 IST 2026
[2026-06-19 12:01:10,233.233 INFO    ] ================================================
[2026-06-19 12:01:10,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:01:10
[2026-06-19 12:01:11,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:01:11,691.691 INFO    ] Initializing speech engine...
[2026-06-19 12:01:11,697.697 INFO    ] 2026-06-19 12:01:11
[2026-06-19 12:01:11,961.961 INFO    ] 2026-06-19 12:01:11
[2026-06-19 12:01:12,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:01:12,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:01:12,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:01:12,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:01:12,506.506 INFO    ] time= 19/06/2026 12:01:12
[2026-06-19 12:01:12,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:01:12,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:01:12,660.660 INFO    ] No existing commands found in stream
[2026-06-19 12:01:17,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:01:17,691.691 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 12:01:21,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:01:21,875.875 INFO    ] Checking for system updates...
[2026-06-19 12:01:21,911.911 INFO    ] 200
[2026-06-19 12:01:21,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:01:21,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:01:21,968.968 INFO    ] No update needed
[2026-06-19 12:01:21,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 12:01:22,005.005 INFO    ] 200
[2026-06-19 12:01:22,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:01:22,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:01:22,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:01:22,095.095 INFO    ] No camera update needed
[2026-06-19 12:01:22,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:01:22,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:01:22,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:01:22,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:01:24,151.151 INFO    ] ================================================
[2026-06-19 12:01:24,166.166 INFO    ] Launching Daemon at Fri Jun 19 12:01:24 IST 2026
[2026-06-19 12:01:24,177.177 INFO    ] ================================================
[2026-06-19 12:01:24,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:01:24
[2026-06-19 12:01:25,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:01:25,589.589 INFO    ] Initializing speech engine...
[2026-06-19 12:01:25,612.612 INFO    ] 2026-06-19 12:01:25
[2026-06-19 12:01:25,868.868 INFO    ] 2026-06-19 12:01:25
[2026-06-19 12:01:25,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:01:26,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:01:26,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:01:26,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:01:26,350.350 INFO    ] time= 19/06/2026 12:01:26
[2026-06-19 12:01:26,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:01:26,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:01:26,506.506 INFO    ] No existing commands found in stream
[2026-06-19 12:01:31,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:01:31,520.520 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 12:01:33,960.960 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:01:33,962.962 INFO    ] Checking for system updates...
[2026-06-19 12:01:33,998.998 INFO    ] 200
[2026-06-19 12:01:34,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:01:34,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:01:34,056.056 INFO    ] No update needed
[2026-06-19 12:01:34,059.059 INFO    ] Checking for camera pi updates...
[2026-06-19 12:01:34,093.093 INFO    ] 200
[2026-06-19 12:01:34,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:01:34,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:01:34,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:01:34,186.186 INFO    ] No camera update needed
[2026-06-19 12:01:34,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:01:34,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:01:34,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:01:34,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:01:36,242.242 INFO    ] ================================================
[2026-06-19 12:01:36,258.258 INFO    ] Launching Daemon at Fri Jun 19 12:01:36 IST 2026
[2026-06-19 12:01:36,269.269 INFO    ] ================================================
[2026-06-19 12:01:36,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:01:36
[2026-06-19 12:01:37,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:01:37,707.707 INFO    ] Initializing speech engine...
[2026-06-19 12:01:37,713.713 INFO    ] 2026-06-19 12:01:37
[2026-06-19 12:01:37,958.958 INFO    ] 2026-06-19 12:01:37
[2026-06-19 12:01:37,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:01:38,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:01:38,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:01:38,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:01:38,437.437 INFO    ] time= 19/06/2026 12:01:38
[2026-06-19 12:01:38,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:01:38,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:01:38,635.635 INFO    ] No existing commands found in stream
[2026-06-19 12:01:43,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:01:43,665.665 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 12:01:46,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:01:46,861.861 INFO    ] Checking for system updates...
[2026-06-19 12:01:46,899.899 INFO    ] 200
[2026-06-19 12:01:46,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:01:46,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:01:46,963.963 INFO    ] No update needed
[2026-06-19 12:01:46,966.966 INFO    ] Checking for camera pi updates...
[2026-06-19 12:01:47,000.000 INFO    ] 200
[2026-06-19 12:01:47,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:01:47,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:01:47,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:01:47,076.076 INFO    ] No camera update needed
[2026-06-19 12:01:47,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:01:47,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:01:47,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:01:47,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:01:49,133.133 INFO    ] ================================================
[2026-06-19 12:01:49,149.149 INFO    ] Launching Daemon at Fri Jun 19 12:01:49 IST 2026
[2026-06-19 12:01:49,161.161 INFO    ] ================================================
[2026-06-19 12:01:49,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:01:49
[2026-06-19 12:01:50,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:01:50,615.615 INFO    ] Initializing speech engine...
[2026-06-19 12:01:50,631.631 INFO    ] 2026-06-19 12:01:50
[2026-06-19 12:01:50,888.888 INFO    ] 2026-06-19 12:01:50
[2026-06-19 12:01:50,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:01:51,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:01:51,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:01:51,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:01:51,393.393 INFO    ] time= 19/06/2026 12:01:51
[2026-06-19 12:01:51,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:01:51,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:01:51,605.605 INFO    ] No existing commands found in stream
[2026-06-19 12:01:56,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:01:56,626.626 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 12:01:59,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:01:59,831.831 INFO    ] Checking for system updates...
[2026-06-19 12:01:59,867.867 INFO    ] 200
[2026-06-19 12:01:59,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:01:59,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:01:59,926.926 INFO    ] No update needed
[2026-06-19 12:01:59,929.929 INFO    ] Checking for camera pi updates...
[2026-06-19 12:01:59,966.966 INFO    ] 200
[2026-06-19 12:01:59,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:00,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:02:00,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:02:00,146.146 INFO    ] No camera update needed
[2026-06-19 12:02:00,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:02:00,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:02:00,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:02:00,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:02:02,214.214 INFO    ] ================================================
[2026-06-19 12:02:02,252.252 INFO    ] Launching Daemon at Fri Jun 19 12:02:02 IST 2026
[2026-06-19 12:02:02,271.271 INFO    ] ================================================
[2026-06-19 12:02:02,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:02:02
[2026-06-19 12:02:03,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:02:03,859.859 INFO    ] Initializing speech engine...
[2026-06-19 12:02:03,881.881 INFO    ] 2026-06-19 12:02:03
[2026-06-19 12:02:04,141.141 INFO    ] 2026-06-19 12:02:04
[2026-06-19 12:02:04,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:02:04,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:02:04,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:02:04,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:02:04,603.603 INFO    ] time= 19/06/2026 12:02:04
[2026-06-19 12:02:04,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:02:04,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:02:04,776.776 INFO    ] No existing commands found in stream
[2026-06-19 12:02:09,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:02:09,791.791 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 12:02:11,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:02:11,168.168 INFO    ] Checking for system updates...
[2026-06-19 12:02:11,207.207 INFO    ] 200
[2026-06-19 12:02:11,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:11,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:02:11,265.265 INFO    ] No update needed
[2026-06-19 12:02:11,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 12:02:11,305.305 INFO    ] 200
[2026-06-19 12:02:11,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:11,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:02:11,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:02:11,392.392 INFO    ] No camera update needed
[2026-06-19 12:02:11,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:02:11,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:02:11,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:02:11,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:02:13,449.449 INFO    ] ================================================
[2026-06-19 12:02:13,465.465 INFO    ] Launching Daemon at Fri Jun 19 12:02:13 IST 2026
[2026-06-19 12:02:13,475.475 INFO    ] ================================================
[2026-06-19 12:02:14,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:02:14
[2026-06-19 12:02:14,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:02:15,078.078 INFO    ] Initializing speech engine...
[2026-06-19 12:02:15,092.092 INFO    ] 2026-06-19 12:02:15
[2026-06-19 12:02:15,368.368 INFO    ] 2026-06-19 12:02:15
[2026-06-19 12:02:15,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:02:15,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:02:15,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:02:15,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:02:15,902.902 INFO    ] time= 19/06/2026 12:02:15
[2026-06-19 12:02:15,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:02:15,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:02:16,060.060 INFO    ] No existing commands found in stream
[2026-06-19 12:02:21,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:02:21,086.086 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 12:02:22,362.362 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:02:22,365.365 INFO    ] Checking for system updates...
[2026-06-19 12:02:22,401.401 INFO    ] 200
[2026-06-19 12:02:22,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:22,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:02:22,460.460 INFO    ] No update needed
[2026-06-19 12:02:22,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 12:02:22,500.500 INFO    ] 200
[2026-06-19 12:02:22,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:22,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:02:22,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:02:22,594.594 INFO    ] No camera update needed
[2026-06-19 12:02:22,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:02:22,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:02:22,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:02:22,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:02:24,650.650 INFO    ] ================================================
[2026-06-19 12:02:24,666.666 INFO    ] Launching Daemon at Fri Jun 19 12:02:24 IST 2026
[2026-06-19 12:02:24,676.676 INFO    ] ================================================
[2026-06-19 12:02:25,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:02:25
[2026-06-19 12:02:25,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:02:26,226.226 INFO    ] Initializing speech engine...
[2026-06-19 12:02:26,242.242 INFO    ] 2026-06-19 12:02:26
[2026-06-19 12:02:26,522.522 INFO    ] 2026-06-19 12:02:26
[2026-06-19 12:02:26,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:02:26,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:02:26,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:02:26,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:02:26,927.927 INFO    ] time= 19/06/2026 12:02:26
[2026-06-19 12:02:26,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:02:26,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:02:27,017.017 INFO    ] No existing commands found in stream
[2026-06-19 12:02:32,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:02:32,045.045 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-19 12:02:35,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:02:35,613.613 INFO    ] Checking for system updates...
[2026-06-19 12:02:35,649.649 INFO    ] 200
[2026-06-19 12:02:35,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:35,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:02:35,713.713 INFO    ] No update needed
[2026-06-19 12:02:35,715.715 INFO    ] Checking for camera pi updates...
[2026-06-19 12:02:35,749.749 INFO    ] 200
[2026-06-19 12:02:35,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:35,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:02:35,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:02:35,833.833 INFO    ] No camera update needed
[2026-06-19 12:02:35,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:02:35,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:02:35,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:02:35,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:02:37,891.891 INFO    ] ================================================
[2026-06-19 12:02:37,906.906 INFO    ] Launching Daemon at Fri Jun 19 12:02:37 IST 2026
[2026-06-19 12:02:37,917.917 INFO    ] ================================================
[2026-06-19 12:02:38,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:02:38
[2026-06-19 12:02:39,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:02:39,363.363 INFO    ] Initializing speech engine...
[2026-06-19 12:02:39,376.376 INFO    ] 2026-06-19 12:02:39
[2026-06-19 12:02:39,659.659 INFO    ] 2026-06-19 12:02:39
[2026-06-19 12:02:39,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:02:39,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:02:39,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:02:40,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:02:40,037.037 INFO    ] time= 19/06/2026 12:02:40
[2026-06-19 12:02:40,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:02:40,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:02:40,164.164 INFO    ] No existing commands found in stream
[2026-06-19 12:02:45,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:02:45,182.182 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 12:02:46,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:02:46,558.558 INFO    ] Checking for system updates...
[2026-06-19 12:02:46,593.593 INFO    ] 200
[2026-06-19 12:02:46,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:46,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:02:46,657.657 INFO    ] No update needed
[2026-06-19 12:02:46,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 12:02:46,693.693 INFO    ] 200
[2026-06-19 12:02:46,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:46,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:02:46,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:02:46,775.775 INFO    ] No camera update needed
[2026-06-19 12:02:46,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:02:46,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:02:46,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:02:46,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:02:48,831.831 INFO    ] ================================================
[2026-06-19 12:02:48,847.847 INFO    ] Launching Daemon at Fri Jun 19 12:02:48 IST 2026
[2026-06-19 12:02:48,857.857 INFO    ] ================================================
[2026-06-19 12:02:49,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:02:49
[2026-06-19 12:02:50,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:02:50,461.461 INFO    ] Initializing speech engine...
[2026-06-19 12:02:50,470.470 INFO    ] 2026-06-19 12:02:50
[2026-06-19 12:02:50,746.746 INFO    ] 2026-06-19 12:02:50
[2026-06-19 12:02:50,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:02:51,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:02:51,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:02:51,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:02:51,249.249 INFO    ] time= 19/06/2026 12:02:51
[2026-06-19 12:02:51,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:02:51,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:02:51,436.436 INFO    ] No existing commands found in stream
[2026-06-19 12:02:56,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:02:56,478.478 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 12:02:59,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:02:59,458.458 INFO    ] Checking for system updates...
[2026-06-19 12:02:59,494.494 INFO    ] 200
[2026-06-19 12:02:59,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:59,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:02:59,552.552 INFO    ] No update needed
[2026-06-19 12:02:59,554.554 INFO    ] Checking for camera pi updates...
[2026-06-19 12:02:59,587.587 INFO    ] 200
[2026-06-19 12:02:59,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:02:59,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:02:59,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:02:59,677.677 INFO    ] No camera update needed
[2026-06-19 12:02:59,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:02:59,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:02:59,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:02:59,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:03:01,733.733 INFO    ] ================================================
[2026-06-19 12:03:01,748.748 INFO    ] Launching Daemon at Fri Jun 19 12:03:01 IST 2026
[2026-06-19 12:03:01,759.759 INFO    ] ================================================
[2026-06-19 12:03:02,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:03:02
[2026-06-19 12:03:03,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:03:03,634.634 INFO    ] Initializing speech engine...
[2026-06-19 12:03:03,653.653 INFO    ] 2026-06-19 12:03:03
[2026-06-19 12:03:03,961.961 INFO    ] 2026-06-19 12:03:03
[2026-06-19 12:03:04,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:03:04,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:03:04,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:03:04,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:03:04,498.498 INFO    ] time= 19/06/2026 12:03:04
[2026-06-19 12:03:04,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:03:04,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:03:04,747.747 INFO    ] No existing commands found in stream
[2026-06-19 12:03:09,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:03:09,777.777 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 12:03:11,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:03:11,781.781 INFO    ] Checking for system updates...
[2026-06-19 12:03:11,826.826 INFO    ] 200
[2026-06-19 12:03:11,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:03:11,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:03:11,894.894 INFO    ] No update needed
[2026-06-19 12:03:11,897.897 INFO    ] Checking for camera pi updates...
[2026-06-19 12:03:11,931.931 INFO    ] 200
[2026-06-19 12:03:11,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:03:11,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:03:12,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:03:12,031.031 INFO    ] No camera update needed
[2026-06-19 12:03:12,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:03:12,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:03:12,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:03:12,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:03:14,089.089 INFO    ] ================================================
[2026-06-19 12:03:14,105.105 INFO    ] Launching Daemon at Fri Jun 19 12:03:14 IST 2026
[2026-06-19 12:03:14,116.116 INFO    ] ================================================
[2026-06-19 12:03:14,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:03:14
[2026-06-19 12:03:15,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:03:15,799.799 INFO    ] Initializing speech engine...
[2026-06-19 12:03:15,809.809 INFO    ] 2026-06-19 12:03:15
[2026-06-19 12:03:16,104.104 INFO    ] 2026-06-19 12:03:16
[2026-06-19 12:03:16,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:03:16,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:03:16,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:03:16,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:03:16,661.661 INFO    ] time= 19/06/2026 12:03:16
[2026-06-19 12:03:16,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:03:16,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:03:16,829.829 INFO    ] No existing commands found in stream
[2026-06-19 12:03:21,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:03:21,860.860 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 12:03:24,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:03:24,217.217 INFO    ] Checking for system updates...
[2026-06-19 12:03:24,255.255 INFO    ] 200
[2026-06-19 12:03:24,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:03:24,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:03:24,323.323 INFO    ] No update needed
[2026-06-19 12:03:24,326.326 INFO    ] Checking for camera pi updates...
[2026-06-19 12:03:24,360.360 INFO    ] 200
[2026-06-19 12:03:24,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:03:24,403.403 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:03:24,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:03:24,449.449 INFO    ] No camera update needed
[2026-06-19 12:03:24,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:03:24,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:03:24,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:03:24,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:03:26,504.504 INFO    ] ================================================
[2026-06-19 12:03:26,520.520 INFO    ] Launching Daemon at Fri Jun 19 12:03:26 IST 2026
[2026-06-19 12:03:26,531.531 INFO    ] ================================================
[2026-06-19 12:03:27,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:03:27
[2026-06-19 12:03:27,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:03:27,981.981 INFO    ] Initializing speech engine...
[2026-06-19 12:03:28,007.007 INFO    ] 2026-06-19 12:03:27
[2026-06-19 12:03:28,288.288 INFO    ] 2026-06-19 12:03:28
[2026-06-19 12:03:28,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:03:28,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:03:28,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:03:28,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:03:28,708.708 INFO    ] time= 19/06/2026 12:03:28
[2026-06-19 12:03:28,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:03:28,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:03:28,799.799 INFO    ] No existing commands found in stream
[2026-06-19 12:03:33,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:03:33,815.815 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 12:03:36,377.377 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:03:36,379.379 INFO    ] Checking for system updates...
[2026-06-19 12:03:36,416.416 INFO    ] 200
[2026-06-19 12:03:36,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:03:36,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:03:36,482.482 INFO    ] No update needed
[2026-06-19 12:03:36,484.484 INFO    ] Checking for camera pi updates...
[2026-06-19 12:03:36,522.522 INFO    ] 200
[2026-06-19 12:03:36,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:03:36,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:03:36,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:03:36,615.615 INFO    ] No camera update needed
[2026-06-19 12:03:36,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:03:36,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:03:36,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:03:36,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:03:38,670.670 INFO    ] ================================================
[2026-06-19 12:03:38,685.685 INFO    ] Launching Daemon at Fri Jun 19 12:03:38 IST 2026
[2026-06-19 12:03:38,696.696 INFO    ] ================================================
[2026-06-19 12:03:39,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:03:39
[2026-06-19 12:03:39,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:03:40,192.192 INFO    ] Initializing speech engine...
[2026-06-19 12:03:40,199.199 INFO    ] 2026-06-19 12:03:40
[2026-06-19 12:03:40,499.499 INFO    ] 2026-06-19 12:03:40
[2026-06-19 12:03:40,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:03:40,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:03:40,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:03:40,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:03:40,884.884 INFO    ] time= 19/06/2026 12:03:40
[2026-06-19 12:03:40,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:03:40,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:03:41,011.011 INFO    ] No existing commands found in stream
[2026-06-19 12:03:46,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:03:46,026.026 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 12:03:50,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:03:50,350.350 INFO    ] Checking for system updates...
[2026-06-19 12:03:50,387.387 INFO    ] 200
[2026-06-19 12:03:50,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:03:50,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:03:50,445.445 INFO    ] No update needed
[2026-06-19 12:03:50,447.447 INFO    ] Checking for camera pi updates...
[2026-06-19 12:03:50,485.485 INFO    ] 200
[2026-06-19 12:03:50,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:03:50,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:03:50,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:03:50,566.566 INFO    ] No camera update needed
[2026-06-19 12:03:50,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:03:50,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:03:50,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:03:50,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:03:52,621.621 INFO    ] ================================================
[2026-06-19 12:03:52,638.638 INFO    ] Launching Daemon at Fri Jun 19 12:03:52 IST 2026
[2026-06-19 12:03:52,648.648 INFO    ] ================================================
[2026-06-19 12:03:53,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:03:53
[2026-06-19 12:03:53,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:03:54,112.112 INFO    ] Initializing speech engine...
[2026-06-19 12:03:54,123.123 INFO    ] 2026-06-19 12:03:54
[2026-06-19 12:03:54,384.384 INFO    ] 2026-06-19 12:03:54
[2026-06-19 12:03:54,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:03:54,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:03:54,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:03:54,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:03:54,857.857 INFO    ] time= 19/06/2026 12:03:54
[2026-06-19 12:03:54,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:03:54,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:03:55,093.093 INFO    ] No existing commands found in stream
[2026-06-19 12:04:00,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:04:00,111.111 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 12:04:00,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:04:00,524.524 INFO    ] Checking for system updates...
[2026-06-19 12:04:00,560.560 INFO    ] 200
[2026-06-19 12:04:00,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:00,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:04:00,624.624 INFO    ] No update needed
[2026-06-19 12:04:00,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 12:04:00,665.665 INFO    ] 200
[2026-06-19 12:04:00,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:00,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:04:00,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:04:00,752.752 INFO    ] No camera update needed
[2026-06-19 12:04:00,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:04:00,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:04:00,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:04:00,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:04:02,812.812 INFO    ] ================================================
[2026-06-19 12:04:02,828.828 INFO    ] Launching Daemon at Fri Jun 19 12:04:02 IST 2026
[2026-06-19 12:04:02,846.846 INFO    ] ================================================
[2026-06-19 12:04:03,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:04:03
[2026-06-19 12:04:04,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:04:04,301.301 INFO    ] Initializing speech engine...
[2026-06-19 12:04:04,310.310 INFO    ] 2026-06-19 12:04:04
[2026-06-19 12:04:04,605.605 INFO    ] 2026-06-19 12:04:04
[2026-06-19 12:04:04,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:04:04,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:04:04,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:04:04,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:04:05,019.019 INFO    ] time= 19/06/2026 12:04:04
[2026-06-19 12:04:05,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:04:05,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:04:05,111.111 INFO    ] No existing commands found in stream
[2026-06-19 12:04:10,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:04:10,129.129 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 12:04:12,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:04:12,120.120 INFO    ] Checking for system updates...
[2026-06-19 12:04:12,161.161 INFO    ] 200
[2026-06-19 12:04:12,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:12,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:04:12,227.227 INFO    ] No update needed
[2026-06-19 12:04:12,229.229 INFO    ] Checking for camera pi updates...
[2026-06-19 12:04:12,263.263 INFO    ] 200
[2026-06-19 12:04:12,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:12,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:04:12,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:04:12,458.458 INFO    ] No camera update needed
[2026-06-19 12:04:12,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:04:12,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:04:12,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:04:12,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:04:14,513.513 INFO    ] ================================================
[2026-06-19 12:04:14,529.529 INFO    ] Launching Daemon at Fri Jun 19 12:04:14 IST 2026
[2026-06-19 12:04:14,541.541 INFO    ] ================================================
[2026-06-19 12:04:15,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:04:15
[2026-06-19 12:04:15,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:04:16,005.005 INFO    ] Initializing speech engine...
[2026-06-19 12:04:16,013.013 INFO    ] 2026-06-19 12:04:16
[2026-06-19 12:04:16,274.274 INFO    ] 2026-06-19 12:04:16
[2026-06-19 12:04:16,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:04:16,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:04:16,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:04:16,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:04:16,739.739 INFO    ] time= 19/06/2026 12:04:16
[2026-06-19 12:04:16,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:04:16,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:04:16,955.955 INFO    ] No existing commands found in stream
[2026-06-19 12:04:21,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:04:21,988.988 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 12:04:24,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:04:24,013.013 INFO    ] Checking for system updates...
[2026-06-19 12:04:24,049.049 INFO    ] 200
[2026-06-19 12:04:24,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:24,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:04:24,116.116 INFO    ] No update needed
[2026-06-19 12:04:24,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 12:04:24,157.157 INFO    ] 200
[2026-06-19 12:04:24,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:24,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:04:24,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:04:24,257.257 INFO    ] No camera update needed
[2026-06-19 12:04:24,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:04:24,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:04:24,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:04:24,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:04:26,321.321 INFO    ] ================================================
[2026-06-19 12:04:26,337.337 INFO    ] Launching Daemon at Fri Jun 19 12:04:26 IST 2026
[2026-06-19 12:04:26,348.348 INFO    ] ================================================
[2026-06-19 12:04:26,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:04:26
[2026-06-19 12:04:27,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:04:27,752.752 INFO    ] Initializing speech engine...
[2026-06-19 12:04:27,764.764 INFO    ] 2026-06-19 12:04:27
[2026-06-19 12:04:28,030.030 INFO    ] 2026-06-19 12:04:28
[2026-06-19 12:04:28,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:04:28,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:04:28,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:04:28,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:04:28,515.515 INFO    ] time= 19/06/2026 12:04:28
[2026-06-19 12:04:28,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:04:28,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:04:28,740.740 INFO    ] No existing commands found in stream
[2026-06-19 12:04:33,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:04:33,773.773 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 12:04:35,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:04:35,225.225 INFO    ] Checking for system updates...
[2026-06-19 12:04:35,267.267 INFO    ] 200
[2026-06-19 12:04:35,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:35,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:04:35,331.331 INFO    ] No update needed
[2026-06-19 12:04:35,334.334 INFO    ] Checking for camera pi updates...
[2026-06-19 12:04:35,367.367 INFO    ] 200
[2026-06-19 12:04:35,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:35,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:04:35,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:04:35,451.451 INFO    ] No camera update needed
[2026-06-19 12:04:35,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:04:35,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:04:35,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:04:35,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:04:37,508.508 INFO    ] ================================================
[2026-06-19 12:04:37,524.524 INFO    ] Launching Daemon at Fri Jun 19 12:04:37 IST 2026
[2026-06-19 12:04:37,535.535 INFO    ] ================================================
[2026-06-19 12:04:38,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:04:38
[2026-06-19 12:04:38,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:04:39,179.179 INFO    ] Initializing speech engine...
[2026-06-19 12:04:39,193.193 INFO    ] 2026-06-19 12:04:39
[2026-06-19 12:04:39,479.479 INFO    ] 2026-06-19 12:04:39
[2026-06-19 12:04:39,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:04:39,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:04:39,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:04:39,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:04:40,003.003 INFO    ] time= 19/06/2026 12:04:39
[2026-06-19 12:04:40,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:04:40,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:04:40,160.160 INFO    ] No existing commands found in stream
[2026-06-19 12:04:45,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:04:45,177.177 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 12:04:46,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:04:46,847.847 INFO    ] Checking for system updates...
[2026-06-19 12:04:46,883.883 INFO    ] 200
[2026-06-19 12:04:46,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:46,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:04:46,948.948 INFO    ] No update needed
[2026-06-19 12:04:46,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 12:04:46,988.988 INFO    ] 200
[2026-06-19 12:04:46,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:47,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:04:47,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:04:47,067.067 INFO    ] No camera update needed
[2026-06-19 12:04:47,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:04:47,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:04:47,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:04:47,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:04:49,129.129 INFO    ] ================================================
[2026-06-19 12:04:49,146.146 INFO    ] Launching Daemon at Fri Jun 19 12:04:49 IST 2026
[2026-06-19 12:04:49,156.156 INFO    ] ================================================
[2026-06-19 12:04:49,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:04:49
[2026-06-19 12:04:50,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:04:50,576.576 INFO    ] Initializing speech engine...
[2026-06-19 12:04:50,583.583 INFO    ] 2026-06-19 12:04:50
[2026-06-19 12:04:50,883.883 INFO    ] 2026-06-19 12:04:50
[2026-06-19 12:04:50,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:04:51,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:04:51,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:04:51,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:04:51,310.310 INFO    ] time= 19/06/2026 12:04:51
[2026-06-19 12:04:51,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:04:51,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:04:51,459.459 INFO    ] No existing commands found in stream
[2026-06-19 12:04:56,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:04:56,487.487 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 12:04:57,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:04:57,202.202 INFO    ] Checking for system updates...
[2026-06-19 12:04:57,238.238 INFO    ] 200
[2026-06-19 12:04:57,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:57,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:04:57,297.297 INFO    ] No update needed
[2026-06-19 12:04:57,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 12:04:57,337.337 INFO    ] 200
[2026-06-19 12:04:57,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:04:57,385.385 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:04:57,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:04:57,435.435 INFO    ] No camera update needed
[2026-06-19 12:04:57,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:04:57,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:04:57,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:04:57,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:04:59,491.491 INFO    ] ================================================
[2026-06-19 12:04:59,516.516 INFO    ] Launching Daemon at Fri Jun 19 12:04:59 IST 2026
[2026-06-19 12:04:59,529.529 INFO    ] ================================================
[2026-06-19 12:05:00,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:05:00
[2026-06-19 12:05:00,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:05:00,943.943 INFO    ] Initializing speech engine...
[2026-06-19 12:05:00,956.956 INFO    ] 2026-06-19 12:05:00
[2026-06-19 12:05:01,298.298 INFO    ] 2026-06-19 12:05:01
[2026-06-19 12:05:01,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:05:01,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:05:01,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:05:01,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:05:01,839.839 INFO    ] time= 19/06/2026 12:05:01
[2026-06-19 12:05:01,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:05:01,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:05:01,944.944 INFO    ] No existing commands found in stream
[2026-06-19 12:05:06,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:05:06,957.957 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 12:05:09,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:05:09,253.253 INFO    ] Checking for system updates...
[2026-06-19 12:05:09,288.288 INFO    ] 200
[2026-06-19 12:05:09,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:09,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:05:09,367.367 INFO    ] No update needed
[2026-06-19 12:05:09,370.370 INFO    ] Checking for camera pi updates...
[2026-06-19 12:05:09,407.407 INFO    ] 200
[2026-06-19 12:05:09,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:09,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:05:09,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:05:09,501.501 INFO    ] No camera update needed
[2026-06-19 12:05:09,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:05:09,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:05:09,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:05:09,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:05:11,562.562 INFO    ] ================================================
[2026-06-19 12:05:11,579.579 INFO    ] Launching Daemon at Fri Jun 19 12:05:11 IST 2026
[2026-06-19 12:05:11,591.591 INFO    ] ================================================
[2026-06-19 12:05:12,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:05:12
[2026-06-19 12:05:12,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:05:13,069.069 INFO    ] Initializing speech engine...
[2026-06-19 12:05:13,084.084 INFO    ] 2026-06-19 12:05:13
[2026-06-19 12:05:13,356.356 INFO    ] 2026-06-19 12:05:13
[2026-06-19 12:05:13,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:05:13,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:05:13,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:05:13,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:05:13,772.772 INFO    ] time= 19/06/2026 12:05:13
[2026-06-19 12:05:13,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:05:13,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:05:13,936.936 INFO    ] No existing commands found in stream
[2026-06-19 12:05:18,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:05:18,970.970 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 12:05:20,702.702 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:05:20,705.705 INFO    ] Checking for system updates...
[2026-06-19 12:05:20,741.741 INFO    ] 200
[2026-06-19 12:05:20,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:20,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:05:20,803.803 INFO    ] No update needed
[2026-06-19 12:05:20,806.806 INFO    ] Checking for camera pi updates...
[2026-06-19 12:05:20,840.840 INFO    ] 200
[2026-06-19 12:05:20,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:20,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:05:20,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:05:20,927.927 INFO    ] No camera update needed
[2026-06-19 12:05:20,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:05:20,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:05:20,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:05:20,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:05:22,982.982 INFO    ] ================================================
[2026-06-19 12:05:23,998.998 INFO    ] Launching Daemon at Fri Jun 19 12:05:22 IST 2026
[2026-06-19 12:05:23,008.008 INFO    ] ================================================
[2026-06-19 12:05:23,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:05:23
[2026-06-19 12:05:24,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:05:24,469.469 INFO    ] Initializing speech engine...
[2026-06-19 12:05:24,478.478 INFO    ] 2026-06-19 12:05:24
[2026-06-19 12:05:24,737.737 INFO    ] 2026-06-19 12:05:24
[2026-06-19 12:05:24,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:05:25,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:05:25,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:05:25,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:05:25,288.288 INFO    ] time= 19/06/2026 12:05:25
[2026-06-19 12:05:25,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:05:25,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:05:25,425.425 INFO    ] No existing commands found in stream
[2026-06-19 12:05:30,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:05:30,453.453 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 12:05:31,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:05:31,431.431 INFO    ] Checking for system updates...
[2026-06-19 12:05:31,474.474 INFO    ] 200
[2026-06-19 12:05:31,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:31,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:05:31,537.537 INFO    ] No update needed
[2026-06-19 12:05:31,540.540 INFO    ] Checking for camera pi updates...
[2026-06-19 12:05:31,579.579 INFO    ] 200
[2026-06-19 12:05:31,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:31,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:05:31,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:05:31,670.670 INFO    ] No camera update needed
[2026-06-19 12:05:31,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:05:31,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:05:31,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:05:31,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:05:33,730.730 INFO    ] ================================================
[2026-06-19 12:05:33,746.746 INFO    ] Launching Daemon at Fri Jun 19 12:05:33 IST 2026
[2026-06-19 12:05:33,757.757 INFO    ] ================================================
[2026-06-19 12:05:34,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:05:34
[2026-06-19 12:05:35,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:05:35,369.369 INFO    ] Initializing speech engine...
[2026-06-19 12:05:35,382.382 INFO    ] 2026-06-19 12:05:35
[2026-06-19 12:05:35,673.673 INFO    ] 2026-06-19 12:05:35
[2026-06-19 12:05:35,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:05:35,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:05:35,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:05:36,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:05:36,218.218 INFO    ] time= 19/06/2026 12:05:36
[2026-06-19 12:05:36,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:05:36,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:05:36,377.377 INFO    ] No existing commands found in stream
[2026-06-19 12:05:41,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:05:41,400.400 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 12:05:45,276.276 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:05:45,279.279 INFO    ] Checking for system updates...
[2026-06-19 12:05:45,318.318 INFO    ] 200
[2026-06-19 12:05:45,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:45,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:05:45,377.377 INFO    ] No update needed
[2026-06-19 12:05:45,379.379 INFO    ] Checking for camera pi updates...
[2026-06-19 12:05:45,418.418 INFO    ] 200
[2026-06-19 12:05:45,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:45,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:05:45,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:05:45,508.508 INFO    ] No camera update needed
[2026-06-19 12:05:45,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:05:45,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:05:45,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:05:45,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:05:47,564.564 INFO    ] ================================================
[2026-06-19 12:05:47,580.580 INFO    ] Launching Daemon at Fri Jun 19 12:05:47 IST 2026
[2026-06-19 12:05:47,591.591 INFO    ] ================================================
[2026-06-19 12:05:48,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:05:48
[2026-06-19 12:05:48,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:05:49,041.041 INFO    ] Initializing speech engine...
[2026-06-19 12:05:49,066.066 INFO    ] 2026-06-19 12:05:49
[2026-06-19 12:05:49,343.343 INFO    ] 2026-06-19 12:05:49
[2026-06-19 12:05:49,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:05:49,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:05:49,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:05:49,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:05:49,721.721 INFO    ] time= 19/06/2026 12:05:49
[2026-06-19 12:05:49,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:05:49,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:05:49,845.845 INFO    ] No existing commands found in stream
[2026-06-19 12:05:54,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:05:54,860.860 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 12:05:57,169.169 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:05:57,171.171 INFO    ] Checking for system updates...
[2026-06-19 12:05:57,211.211 INFO    ] 200
[2026-06-19 12:05:57,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:57,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:05:57,270.270 INFO    ] No update needed
[2026-06-19 12:05:57,273.273 INFO    ] Checking for camera pi updates...
[2026-06-19 12:05:57,307.307 INFO    ] 200
[2026-06-19 12:05:57,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:05:57,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:05:57,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:05:57,407.407 INFO    ] No camera update needed
[2026-06-19 12:05:57,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:05:57,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:05:57,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:05:57,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:05:59,462.462 INFO    ] ================================================
[2026-06-19 12:05:59,478.478 INFO    ] Launching Daemon at Fri Jun 19 12:05:59 IST 2026
[2026-06-19 12:05:59,489.489 INFO    ] ================================================
[2026-06-19 12:06:00,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:06:00
[2026-06-19 12:06:00,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:06:00,987.987 INFO    ] Initializing speech engine...
[2026-06-19 12:06:00,996.996 INFO    ] 2026-06-19 12:06:00
[2026-06-19 12:06:01,254.254 INFO    ] 2026-06-19 12:06:01
[2026-06-19 12:06:01,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:06:01,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:06:01,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:06:01,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:06:01,717.717 INFO    ] time= 19/06/2026 12:06:01
[2026-06-19 12:06:01,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:06:01,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:06:01,924.924 INFO    ] No existing commands found in stream
[2026-06-19 12:06:06,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:06:06,939.939 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 12:06:09,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:06:09,952.952 INFO    ] Checking for system updates...
[2026-06-19 12:06:09,993.993 INFO    ] 200
[2026-06-19 12:06:09,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:10,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:06:10,053.053 INFO    ] No update needed
[2026-06-19 12:06:10,056.056 INFO    ] Checking for camera pi updates...
[2026-06-19 12:06:10,094.094 INFO    ] 200
[2026-06-19 12:06:10,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:10,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:06:10,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:06:10,196.196 INFO    ] No camera update needed
[2026-06-19 12:06:10,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:06:10,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:06:10,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:06:10,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:06:12,255.255 INFO    ] ================================================
[2026-06-19 12:06:12,271.271 INFO    ] Launching Daemon at Fri Jun 19 12:06:12 IST 2026
[2026-06-19 12:06:12,282.282 INFO    ] ================================================
[2026-06-19 12:06:12,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:06:12
[2026-06-19 12:06:13,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:06:13,781.781 INFO    ] Initializing speech engine...
[2026-06-19 12:06:13,789.789 INFO    ] 2026-06-19 12:06:13
[2026-06-19 12:06:14,063.063 INFO    ] 2026-06-19 12:06:14
[2026-06-19 12:06:14,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:06:14,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:06:14,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:06:14,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:06:14,556.556 INFO    ] time= 19/06/2026 12:06:14
[2026-06-19 12:06:14,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:06:14,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:06:14,752.752 INFO    ] No existing commands found in stream
[2026-06-19 12:06:19,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:06:19,783.783 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 12:06:23,117.117 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:06:23,120.120 INFO    ] Checking for system updates...
[2026-06-19 12:06:23,157.157 INFO    ] 200
[2026-06-19 12:06:23,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:23,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:06:23,223.223 INFO    ] No update needed
[2026-06-19 12:06:23,226.226 INFO    ] Checking for camera pi updates...
[2026-06-19 12:06:23,264.264 INFO    ] 200
[2026-06-19 12:06:23,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:23,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:06:23,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:06:23,463.463 INFO    ] No camera update needed
[2026-06-19 12:06:23,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:06:23,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:06:23,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:06:23,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:06:25,525.525 INFO    ] ================================================
[2026-06-19 12:06:25,540.540 INFO    ] Launching Daemon at Fri Jun 19 12:06:25 IST 2026
[2026-06-19 12:06:25,552.552 INFO    ] ================================================
[2026-06-19 12:06:26,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:06:26
[2026-06-19 12:06:26,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:06:27,158.158 INFO    ] Initializing speech engine...
[2026-06-19 12:06:27,170.170 INFO    ] 2026-06-19 12:06:27
[2026-06-19 12:06:27,447.447 INFO    ] 2026-06-19 12:06:27
[2026-06-19 12:06:27,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:06:27,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:06:27,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:06:27,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:06:27,945.945 INFO    ] time= 19/06/2026 12:06:27
[2026-06-19 12:06:27,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:06:28,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:06:28,184.184 INFO    ] No existing commands found in stream
[2026-06-19 12:06:33,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:06:33,210.210 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 12:06:34,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:06:34,091.091 INFO    ] Checking for system updates...
[2026-06-19 12:06:34,127.127 INFO    ] 200
[2026-06-19 12:06:34,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:34,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:06:34,184.184 INFO    ] No update needed
[2026-06-19 12:06:34,187.187 INFO    ] Checking for camera pi updates...
[2026-06-19 12:06:34,224.224 INFO    ] 200
[2026-06-19 12:06:34,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:34,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:06:34,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:06:34,314.314 INFO    ] No camera update needed
[2026-06-19 12:06:34,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:06:34,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:06:34,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:06:34,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:06:36,371.371 INFO    ] ================================================
[2026-06-19 12:06:36,387.387 INFO    ] Launching Daemon at Fri Jun 19 12:06:36 IST 2026
[2026-06-19 12:06:36,398.398 INFO    ] ================================================
[2026-06-19 12:06:36,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:06:36
[2026-06-19 12:06:37,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:06:37,822.822 INFO    ] Initializing speech engine...
[2026-06-19 12:06:37,831.831 INFO    ] 2026-06-19 12:06:37
[2026-06-19 12:06:38,076.076 INFO    ] 2026-06-19 12:06:38
[2026-06-19 12:06:38,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:06:38,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:06:38,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:06:38,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:06:38,553.553 INFO    ] time= 19/06/2026 12:06:38
[2026-06-19 12:06:38,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:06:38,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:06:38,785.785 INFO    ] No existing commands found in stream
[2026-06-19 12:06:43,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:06:43,803.803 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 12:06:46,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:06:46,269.269 INFO    ] Checking for system updates...
[2026-06-19 12:06:46,306.306 INFO    ] 200
[2026-06-19 12:06:46,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:46,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:06:46,364.364 INFO    ] No update needed
[2026-06-19 12:06:46,367.367 INFO    ] Checking for camera pi updates...
[2026-06-19 12:06:46,401.401 INFO    ] 200
[2026-06-19 12:06:46,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:46,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:06:46,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:06:46,493.493 INFO    ] No camera update needed
[2026-06-19 12:06:46,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:06:46,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:06:46,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:06:46,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:06:48,550.550 INFO    ] ================================================
[2026-06-19 12:06:48,565.565 INFO    ] Launching Daemon at Fri Jun 19 12:06:48 IST 2026
[2026-06-19 12:06:48,577.577 INFO    ] ================================================
[2026-06-19 12:06:49,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:06:49
[2026-06-19 12:06:49,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:06:50,219.219 INFO    ] Initializing speech engine...
[2026-06-19 12:06:50,230.230 INFO    ] 2026-06-19 12:06:50
[2026-06-19 12:06:50,518.518 INFO    ] 2026-06-19 12:06:50
[2026-06-19 12:06:50,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:06:50,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:06:50,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:06:51,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:06:51,051.051 INFO    ] time= 19/06/2026 12:06:51
[2026-06-19 12:06:51,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:06:51,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:06:51,208.208 INFO    ] No existing commands found in stream
[2026-06-19 12:06:56,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:06:56,238.238 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 12:06:58,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:06:58,041.041 INFO    ] Checking for system updates...
[2026-06-19 12:06:58,082.082 INFO    ] 200
[2026-06-19 12:06:58,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:58,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:06:58,140.140 INFO    ] No update needed
[2026-06-19 12:06:58,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 12:06:58,178.178 INFO    ] 200
[2026-06-19 12:06:58,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:06:58,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:06:58,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:06:58,278.278 INFO    ] No camera update needed
[2026-06-19 12:06:58,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:06:58,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:06:58,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:06:58,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:07:00,335.335 INFO    ] ================================================
[2026-06-19 12:07:00,351.351 INFO    ] Launching Daemon at Fri Jun 19 12:07:00 IST 2026
[2026-06-19 12:07:00,363.363 INFO    ] ================================================
[2026-06-19 12:07:00,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:07:00
[2026-06-19 12:07:01,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:07:02,058.058 INFO    ] Initializing speech engine...
[2026-06-19 12:07:02,068.068 INFO    ] 2026-06-19 12:07:02
[2026-06-19 12:07:02,452.452 INFO    ] 2026-06-19 12:07:02
[2026-06-19 12:07:02,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:07:02,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:07:02,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:07:02,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:07:03,001.001 INFO    ] time= 19/06/2026 12:07:02
[2026-06-19 12:07:03,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:07:03,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:07:03,181.181 INFO    ] No existing commands found in stream
[2026-06-19 12:07:08,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:07:08,214.214 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 12:07:09,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:07:09,799.799 INFO    ] Checking for system updates...
[2026-06-19 12:07:09,835.835 INFO    ] 200
[2026-06-19 12:07:09,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:09,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:07:09,900.900 INFO    ] No update needed
[2026-06-19 12:07:09,903.903 INFO    ] Checking for camera pi updates...
[2026-06-19 12:07:09,940.940 INFO    ] 200
[2026-06-19 12:07:09,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:09,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:07:10,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:07:10,025.025 INFO    ] No camera update needed
[2026-06-19 12:07:10,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:07:10,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:07:10,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:07:10,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:07:12,081.081 INFO    ] ================================================
[2026-06-19 12:07:12,097.097 INFO    ] Launching Daemon at Fri Jun 19 12:07:12 IST 2026
[2026-06-19 12:07:12,109.109 INFO    ] ================================================
[2026-06-19 12:07:12,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:07:12
[2026-06-19 12:07:13,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:07:13,527.527 INFO    ] Initializing speech engine...
[2026-06-19 12:07:13,536.536 INFO    ] 2026-06-19 12:07:13
[2026-06-19 12:07:13,832.832 INFO    ] 2026-06-19 12:07:13
[2026-06-19 12:07:13,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:07:14,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:07:14,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:07:14,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:07:14,351.351 INFO    ] time= 19/06/2026 12:07:14
[2026-06-19 12:07:14,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:07:14,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:07:14,605.605 INFO    ] No existing commands found in stream
[2026-06-19 12:07:19,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:07:19,629.629 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 12:07:21,673.673 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:07:21,676.676 INFO    ] Checking for system updates...
[2026-06-19 12:07:21,716.716 INFO    ] 200
[2026-06-19 12:07:21,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:21,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:07:21,776.776 INFO    ] No update needed
[2026-06-19 12:07:21,778.778 INFO    ] Checking for camera pi updates...
[2026-06-19 12:07:21,821.821 INFO    ] 200
[2026-06-19 12:07:21,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:21,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:07:21,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:07:21,913.913 INFO    ] No camera update needed
[2026-06-19 12:07:21,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:07:21,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:07:21,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:07:21,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:07:23,977.977 INFO    ] ================================================
[2026-06-19 12:07:23,993.993 INFO    ] Launching Daemon at Fri Jun 19 12:07:23 IST 2026
[2026-06-19 12:07:24,004.004 INFO    ] ================================================
[2026-06-19 12:07:24,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:07:24
[2026-06-19 12:07:25,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:07:25,641.641 INFO    ] Initializing speech engine...
[2026-06-19 12:07:25,657.657 INFO    ] 2026-06-19 12:07:25
[2026-06-19 12:07:25,922.922 INFO    ] 2026-06-19 12:07:25
[2026-06-19 12:07:25,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:07:26,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:07:26,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:07:26,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:07:26,449.449 INFO    ] time= 19/06/2026 12:07:26
[2026-06-19 12:07:26,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:07:26,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:07:26,704.704 INFO    ] No existing commands found in stream
[2026-06-19 12:07:31,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:07:31,739.739 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 12:07:32,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:07:32,778.778 INFO    ] Checking for system updates...
[2026-06-19 12:07:32,822.822 INFO    ] 200
[2026-06-19 12:07:32,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:32,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:07:32,885.885 INFO    ] No update needed
[2026-06-19 12:07:32,887.887 INFO    ] Checking for camera pi updates...
[2026-06-19 12:07:32,925.925 INFO    ] 200
[2026-06-19 12:07:32,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:32,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:07:32,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:07:33,002.002 INFO    ] No camera update needed
[2026-06-19 12:07:33,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:07:33,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:07:33,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:07:33,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:07:35,058.058 INFO    ] ================================================
[2026-06-19 12:07:35,073.073 INFO    ] Launching Daemon at Fri Jun 19 12:07:35 IST 2026
[2026-06-19 12:07:35,083.083 INFO    ] ================================================
[2026-06-19 12:07:35,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:07:35
[2026-06-19 12:07:36,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:07:36,496.496 INFO    ] Initializing speech engine...
[2026-06-19 12:07:36,503.503 INFO    ] 2026-06-19 12:07:36
[2026-06-19 12:07:36,803.803 INFO    ] 2026-06-19 12:07:36
[2026-06-19 12:07:36,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:07:37,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:07:37,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:07:37,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:07:37,180.180 INFO    ] time= 19/06/2026 12:07:37
[2026-06-19 12:07:37,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:07:37,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:07:37,308.308 INFO    ] No existing commands found in stream
[2026-06-19 12:07:42,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:07:42,326.326 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 12:07:46,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:07:46,213.213 INFO    ] Checking for system updates...
[2026-06-19 12:07:46,250.250 INFO    ] 200
[2026-06-19 12:07:46,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:46,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:07:46,313.313 INFO    ] No update needed
[2026-06-19 12:07:46,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 12:07:46,353.353 INFO    ] 200
[2026-06-19 12:07:46,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:46,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:07:46,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:07:46,448.448 INFO    ] No camera update needed
[2026-06-19 12:07:46,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:07:46,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:07:46,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:07:46,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:07:48,505.505 INFO    ] ================================================
[2026-06-19 12:07:48,520.520 INFO    ] Launching Daemon at Fri Jun 19 12:07:48 IST 2026
[2026-06-19 12:07:48,532.532 INFO    ] ================================================
[2026-06-19 12:07:49,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:07:49
[2026-06-19 12:07:49,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:07:49,986.986 INFO    ] Initializing speech engine...
[2026-06-19 12:07:49,995.995 INFO    ] 2026-06-19 12:07:49
[2026-06-19 12:07:50,259.259 INFO    ] 2026-06-19 12:07:50
[2026-06-19 12:07:50,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:07:50,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:07:50,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:07:50,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:07:50,672.672 INFO    ] time= 19/06/2026 12:07:50
[2026-06-19 12:07:50,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:07:50,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:07:50,761.761 INFO    ] No existing commands found in stream
[2026-06-19 12:07:55,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:07:55,780.780 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 12:07:57,242.242 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:07:57,245.245 INFO    ] Checking for system updates...
[2026-06-19 12:07:57,282.282 INFO    ] 200
[2026-06-19 12:07:57,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:57,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:07:57,348.348 INFO    ] No update needed
[2026-06-19 12:07:57,351.351 INFO    ] Checking for camera pi updates...
[2026-06-19 12:07:57,385.385 INFO    ] 200
[2026-06-19 12:07:57,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:07:57,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:07:57,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:07:57,474.474 INFO    ] No camera update needed
[2026-06-19 12:07:57,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:07:57,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:07:57,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:07:57,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:07:59,530.530 INFO    ] ================================================
[2026-06-19 12:07:59,545.545 INFO    ] Launching Daemon at Fri Jun 19 12:07:59 IST 2026
[2026-06-19 12:07:59,556.556 INFO    ] ================================================
[2026-06-19 12:08:00,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:08:00
[2026-06-19 12:08:00,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:08:01,169.169 INFO    ] Initializing speech engine...
[2026-06-19 12:08:01,184.184 INFO    ] 2026-06-19 12:08:01
[2026-06-19 12:08:01,498.498 INFO    ] 2026-06-19 12:08:01
[2026-06-19 12:08:01,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:08:01,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:08:01,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:08:01,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:08:01,999.999 INFO    ] time= 19/06/2026 12:08:01
[2026-06-19 12:08:02,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:08:02,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:08:02,139.139 INFO    ] No existing commands found in stream
[2026-06-19 12:08:07,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:08:07,152.152 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 12:08:07,946.946 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:08:07,949.949 INFO    ] Checking for system updates...
[2026-06-19 12:08:07,987.987 INFO    ] 200
[2026-06-19 12:08:07,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:08,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:08:08,050.050 INFO    ] No update needed
[2026-06-19 12:08:08,053.053 INFO    ] Checking for camera pi updates...
[2026-06-19 12:08:08,087.087 INFO    ] 200
[2026-06-19 12:08:08,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:08,131.131 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:08:08,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:08:08,175.175 INFO    ] No camera update needed
[2026-06-19 12:08:08,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:08:08,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:08:08,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:08:08,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:08:10,234.234 INFO    ] ================================================
[2026-06-19 12:08:10,250.250 INFO    ] Launching Daemon at Fri Jun 19 12:08:10 IST 2026
[2026-06-19 12:08:10,260.260 INFO    ] ================================================
[2026-06-19 12:08:10,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:08:10
[2026-06-19 12:08:11,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:08:11,712.712 INFO    ] Initializing speech engine...
[2026-06-19 12:08:11,722.722 INFO    ] 2026-06-19 12:08:11
[2026-06-19 12:08:11,995.995 INFO    ] 2026-06-19 12:08:11
[2026-06-19 12:08:12,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:08:12,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:08:12,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:08:12,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:08:12,487.487 INFO    ] time= 19/06/2026 12:08:12
[2026-06-19 12:08:12,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:08:12,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:08:12,745.745 INFO    ] No existing commands found in stream
[2026-06-19 12:08:17,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:08:17,773.773 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 12:08:20,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:08:20,169.169 INFO    ] Checking for system updates...
[2026-06-19 12:08:20,207.207 INFO    ] 200
[2026-06-19 12:08:20,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:20,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:08:20,269.269 INFO    ] No update needed
[2026-06-19 12:08:20,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 12:08:20,308.308 INFO    ] 200
[2026-06-19 12:08:20,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:20,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:08:20,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:08:20,400.400 INFO    ] No camera update needed
[2026-06-19 12:08:20,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:08:20,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:08:20,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:08:20,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:08:22,465.465 INFO    ] ================================================
[2026-06-19 12:08:22,480.480 INFO    ] Launching Daemon at Fri Jun 19 12:08:22 IST 2026
[2026-06-19 12:08:22,491.491 INFO    ] ================================================
[2026-06-19 12:08:23,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:08:23
[2026-06-19 12:08:23,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:08:23,902.902 INFO    ] Initializing speech engine...
[2026-06-19 12:08:23,908.908 INFO    ] 2026-06-19 12:08:23
[2026-06-19 12:08:24,195.195 INFO    ] 2026-06-19 12:08:24
[2026-06-19 12:08:24,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:08:24,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:08:24,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:08:24,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:08:24,612.612 INFO    ] time= 19/06/2026 12:08:24
[2026-06-19 12:08:24,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:08:24,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:08:24,787.787 INFO    ] No existing commands found in stream
[2026-06-19 12:08:29,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:08:29,815.815 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 12:08:33,492.492 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:08:33,495.495 INFO    ] Checking for system updates...
[2026-06-19 12:08:33,535.535 INFO    ] 200
[2026-06-19 12:08:33,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:33,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:08:33,599.599 INFO    ] No update needed
[2026-06-19 12:08:33,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 12:08:33,635.635 INFO    ] 200
[2026-06-19 12:08:33,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:33,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:08:33,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:08:33,723.723 INFO    ] No camera update needed
[2026-06-19 12:08:33,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:08:33,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:08:33,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:08:33,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:08:35,778.778 INFO    ] ================================================
[2026-06-19 12:08:35,793.793 INFO    ] Launching Daemon at Fri Jun 19 12:08:35 IST 2026
[2026-06-19 12:08:35,804.804 INFO    ] ================================================
[2026-06-19 12:08:36,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:08:36
[2026-06-19 12:08:37,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:08:37,409.409 INFO    ] Initializing speech engine...
[2026-06-19 12:08:37,423.423 INFO    ] 2026-06-19 12:08:37
[2026-06-19 12:08:37,703.703 INFO    ] 2026-06-19 12:08:37
[2026-06-19 12:08:37,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:08:38,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:08:38,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:08:38,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:08:38,190.190 INFO    ] time= 19/06/2026 12:08:38
[2026-06-19 12:08:38,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:08:38,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:08:38,423.423 INFO    ] No existing commands found in stream
[2026-06-19 12:08:43,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:08:43,449.449 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 12:08:45,013.013 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:08:45,016.016 INFO    ] Checking for system updates...
[2026-06-19 12:08:45,056.056 INFO    ] 200
[2026-06-19 12:08:45,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:45,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:08:45,114.114 INFO    ] No update needed
[2026-06-19 12:08:45,117.117 INFO    ] Checking for camera pi updates...
[2026-06-19 12:08:45,151.151 INFO    ] 200
[2026-06-19 12:08:45,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:45,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:08:45,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:08:45,237.237 INFO    ] No camera update needed
[2026-06-19 12:08:45,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:08:45,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:08:45,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:08:45,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:08:47,291.291 INFO    ] ================================================
[2026-06-19 12:08:47,307.307 INFO    ] Launching Daemon at Fri Jun 19 12:08:47 IST 2026
[2026-06-19 12:08:47,317.317 INFO    ] ================================================
[2026-06-19 12:08:47,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:08:47
[2026-06-19 12:08:48,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:08:48,732.732 INFO    ] Initializing speech engine...
[2026-06-19 12:08:48,739.739 INFO    ] 2026-06-19 12:08:48
[2026-06-19 12:08:49,034.034 INFO    ] 2026-06-19 12:08:49
[2026-06-19 12:08:49,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:08:49,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:08:49,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:08:49,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:08:49,540.540 INFO    ] time= 19/06/2026 12:08:49
[2026-06-19 12:08:49,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:08:49,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:08:49,812.812 INFO    ] No existing commands found in stream
[2026-06-19 12:08:54,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:08:54,837.837 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 12:08:56,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:08:56,328.328 INFO    ] Checking for system updates...
[2026-06-19 12:08:56,369.369 INFO    ] 200
[2026-06-19 12:08:56,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:56,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:08:56,427.427 INFO    ] No update needed
[2026-06-19 12:08:56,430.430 INFO    ] Checking for camera pi updates...
[2026-06-19 12:08:56,468.468 INFO    ] 200
[2026-06-19 12:08:56,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:08:56,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:08:56,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:08:56,565.565 INFO    ] No camera update needed
[2026-06-19 12:08:56,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:08:56,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:08:56,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:08:56,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:08:58,620.620 INFO    ] ================================================
[2026-06-19 12:08:58,635.635 INFO    ] Launching Daemon at Fri Jun 19 12:08:58 IST 2026
[2026-06-19 12:08:58,646.646 INFO    ] ================================================
[2026-06-19 12:08:59,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:08:59
[2026-06-19 12:08:59,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:09:00,097.097 INFO    ] Initializing speech engine...
[2026-06-19 12:09:00,110.110 INFO    ] 2026-06-19 12:09:00
[2026-06-19 12:09:00,373.373 INFO    ] 2026-06-19 12:09:00
[2026-06-19 12:09:00,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:09:00,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:09:00,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:09:00,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:09:00,835.835 INFO    ] time= 19/06/2026 12:09:00
[2026-06-19 12:09:00,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:09:00,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:09:01,078.078 INFO    ] No existing commands found in stream
[2026-06-19 12:09:06,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:09:06,104.104 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 12:09:10,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:09:10,455.455 INFO    ] Checking for system updates...
[2026-06-19 12:09:10,491.491 INFO    ] 200
[2026-06-19 12:09:10,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:10,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:09:10,548.548 INFO    ] No update needed
[2026-06-19 12:09:10,551.551 INFO    ] Checking for camera pi updates...
[2026-06-19 12:09:10,589.589 INFO    ] 200
[2026-06-19 12:09:10,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:10,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:09:10,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:09:10,688.688 INFO    ] No camera update needed
[2026-06-19 12:09:10,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:09:10,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:09:10,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:09:10,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:09:12,747.747 INFO    ] ================================================
[2026-06-19 12:09:12,762.762 INFO    ] Launching Daemon at Fri Jun 19 12:09:12 IST 2026
[2026-06-19 12:09:12,773.773 INFO    ] ================================================
[2026-06-19 12:09:13,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:09:13
[2026-06-19 12:09:13,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:09:14,176.176 INFO    ] Initializing speech engine...
[2026-06-19 12:09:14,182.182 INFO    ] 2026-06-19 12:09:14
[2026-06-19 12:09:14,452.452 INFO    ] 2026-06-19 12:09:14
[2026-06-19 12:09:14,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:09:14,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:09:14,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:09:14,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:09:14,927.927 INFO    ] time= 19/06/2026 12:09:14
[2026-06-19 12:09:14,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:09:15,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:09:15,130.130 INFO    ] No existing commands found in stream
[2026-06-19 12:09:20,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:09:20,163.163 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 12:09:23,065.065 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:09:23,068.068 INFO    ] Checking for system updates...
[2026-06-19 12:09:23,105.105 INFO    ] 200
[2026-06-19 12:09:23,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:23,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:09:23,166.166 INFO    ] No update needed
[2026-06-19 12:09:23,169.169 INFO    ] Checking for camera pi updates...
[2026-06-19 12:09:23,203.203 INFO    ] 200
[2026-06-19 12:09:23,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:23,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:09:23,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:09:23,286.286 INFO    ] No camera update needed
[2026-06-19 12:09:23,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:09:23,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:09:23,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:09:23,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:09:25,341.341 INFO    ] ================================================
[2026-06-19 12:09:25,356.356 INFO    ] Launching Daemon at Fri Jun 19 12:09:25 IST 2026
[2026-06-19 12:09:25,367.367 INFO    ] ================================================
[2026-06-19 12:09:25,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:09:25
[2026-06-19 12:09:26,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:09:26,776.776 INFO    ] Initializing speech engine...
[2026-06-19 12:09:26,794.794 INFO    ] 2026-06-19 12:09:26
[2026-06-19 12:09:27,056.056 INFO    ] 2026-06-19 12:09:27
[2026-06-19 12:09:27,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:09:27,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:09:27,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:09:27,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:09:27,432.432 INFO    ] time= 19/06/2026 12:09:27
[2026-06-19 12:09:27,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:09:27,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:09:27,630.630 INFO    ] No existing commands found in stream
[2026-06-19 12:09:32,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:09:32,649.649 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 12:09:35,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:09:35,943.943 INFO    ] Checking for system updates...
[2026-06-19 12:09:35,982.982 INFO    ] 200
[2026-06-19 12:09:35,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:36,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:09:36,082.082 INFO    ] No update needed
[2026-06-19 12:09:36,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 12:09:36,120.120 INFO    ] 200
[2026-06-19 12:09:36,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:36,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:09:36,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:09:36,209.209 INFO    ] No camera update needed
[2026-06-19 12:09:36,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:09:36,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:09:36,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:09:36,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:09:38,269.269 INFO    ] ================================================
[2026-06-19 12:09:38,284.284 INFO    ] Launching Daemon at Fri Jun 19 12:09:38 IST 2026
[2026-06-19 12:09:38,295.295 INFO    ] ================================================
[2026-06-19 12:09:38,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:09:38
[2026-06-19 12:09:39,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:09:39,887.887 INFO    ] Initializing speech engine...
[2026-06-19 12:09:39,895.895 INFO    ] 2026-06-19 12:09:39
[2026-06-19 12:09:40,164.164 INFO    ] 2026-06-19 12:09:40
[2026-06-19 12:09:40,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:09:40,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:09:40,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:09:40,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:09:40,620.620 INFO    ] time= 19/06/2026 12:09:40
[2026-06-19 12:09:40,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:09:40,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:09:40,862.862 INFO    ] No existing commands found in stream
[2026-06-19 12:09:45,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:09:45,895.895 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 12:09:46,918.918 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:09:46,920.920 INFO    ] Checking for system updates...
[2026-06-19 12:09:46,958.958 INFO    ] 200
[2026-06-19 12:09:46,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:47,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:09:47,022.022 INFO    ] No update needed
[2026-06-19 12:09:47,025.025 INFO    ] Checking for camera pi updates...
[2026-06-19 12:09:47,064.064 INFO    ] 200
[2026-06-19 12:09:47,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:47,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:09:47,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:09:47,148.148 INFO    ] No camera update needed
[2026-06-19 12:09:47,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:09:47,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:09:47,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:09:47,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:09:49,206.206 INFO    ] ================================================
[2026-06-19 12:09:49,222.222 INFO    ] Launching Daemon at Fri Jun 19 12:09:49 IST 2026
[2026-06-19 12:09:49,232.232 INFO    ] ================================================
[2026-06-19 12:09:49,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:09:49
[2026-06-19 12:09:50,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:09:50,658.658 INFO    ] Initializing speech engine...
[2026-06-19 12:09:50,667.667 INFO    ] 2026-06-19 12:09:50
[2026-06-19 12:09:50,918.918 INFO    ] 2026-06-19 12:09:50
[2026-06-19 12:09:50,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:09:51,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:09:51,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:09:51,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:09:51,381.381 INFO    ] time= 19/06/2026 12:09:51
[2026-06-19 12:09:51,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:09:51,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:09:51,619.619 INFO    ] No existing commands found in stream
[2026-06-19 12:09:56,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:09:56,657.657 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 12:09:58,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:09:58,217.217 INFO    ] Checking for system updates...
[2026-06-19 12:09:58,256.256 INFO    ] 200
[2026-06-19 12:09:58,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:58,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:09:58,318.318 INFO    ] No update needed
[2026-06-19 12:09:58,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 12:09:58,355.355 INFO    ] 200
[2026-06-19 12:09:58,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:09:58,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:09:58,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:09:58,439.439 INFO    ] No camera update needed
[2026-06-19 12:09:58,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:09:58,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:09:58,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:09:58,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:10:00,495.495 INFO    ] ================================================
[2026-06-19 12:10:00,510.510 INFO    ] Launching Daemon at Fri Jun 19 12:10:00 IST 2026
[2026-06-19 12:10:00,520.520 INFO    ] ================================================
[2026-06-19 12:10:01,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:10:01
[2026-06-19 12:10:01,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:10:02,714.714 INFO    ] Initializing speech engine...
[2026-06-19 12:10:02,718.718 INFO    ] 2026-06-19 12:10:02
[2026-06-19 12:10:03,091.091 INFO    ] 2026-06-19 12:10:03
[2026-06-19 12:10:03,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:10:03,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:10:03,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:10:03,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:10:03,604.604 INFO    ] time= 19/06/2026 12:10:03
[2026-06-19 12:10:03,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:10:03,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:10:03,854.854 INFO    ] No existing commands found in stream
[2026-06-19 12:10:08,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:10:08,873.873 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 12:10:10,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:10:10,294.294 INFO    ] Checking for system updates...
[2026-06-19 12:10:10,331.331 INFO    ] 200
[2026-06-19 12:10:10,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:10:10,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:10:10,400.400 INFO    ] No update needed
[2026-06-19 12:10:10,402.402 INFO    ] Checking for camera pi updates...
[2026-06-19 12:10:10,440.440 INFO    ] 200
[2026-06-19 12:10:10,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:10:10,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:10:10,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:10:10,531.531 INFO    ] No camera update needed
[2026-06-19 12:10:10,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:10:10,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:10:10,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:10:10,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:10:12,587.587 INFO    ] ================================================
[2026-06-19 12:10:12,603.603 INFO    ] Launching Daemon at Fri Jun 19 12:10:12 IST 2026
[2026-06-19 12:10:12,614.614 INFO    ] ================================================
[2026-06-19 12:10:13,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:10:13
[2026-06-19 12:10:13,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:10:14,091.091 INFO    ] Initializing speech engine...
[2026-06-19 12:10:14,098.098 INFO    ] 2026-06-19 12:10:14
[2026-06-19 12:10:14,360.360 INFO    ] 2026-06-19 12:10:14
[2026-06-19 12:10:14,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:10:14,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:10:14,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:10:14,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:10:14,840.840 INFO    ] time= 19/06/2026 12:10:14
[2026-06-19 12:10:14,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:10:14,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:10:15,079.079 INFO    ] No existing commands found in stream
[2026-06-19 12:10:20,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:10:20,112.112 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 12:10:22,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:10:22,539.539 INFO    ] Checking for system updates...
[2026-06-19 12:10:22,575.575 INFO    ] 200
[2026-06-19 12:10:22,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:10:22,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:10:22,641.641 INFO    ] No update needed
[2026-06-19 12:10:22,644.644 INFO    ] Checking for camera pi updates...
[2026-06-19 12:10:22,682.682 INFO    ] 200
[2026-06-19 12:10:22,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:10:22,731.731 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:10:22,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:10:22,772.772 INFO    ] No camera update needed
[2026-06-19 12:10:22,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:10:22,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:10:22,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:10:22,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:10:24,830.830 INFO    ] ================================================
[2026-06-19 12:10:24,846.846 INFO    ] Launching Daemon at Fri Jun 19 12:10:24 IST 2026
[2026-06-19 12:10:24,858.858 INFO    ] ================================================
[2026-06-19 12:10:25,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:10:25
[2026-06-19 12:10:26,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:10:26,310.310 INFO    ] Initializing speech engine...
[2026-06-19 12:10:26,324.324 INFO    ] 2026-06-19 12:10:26
[2026-06-19 12:10:26,581.581 INFO    ] 2026-06-19 12:10:26
[2026-06-19 12:10:26,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:10:26,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:10:26,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:10:27,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:10:27,058.058 INFO    ] time= 19/06/2026 12:10:27
[2026-06-19 12:10:27,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:10:27,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:10:27,283.283 INFO    ] No existing commands found in stream
[2026-06-19 12:10:32,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:10:32,308.308 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 12:10:35,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:10:35,758.758 INFO    ] Checking for system updates...
[2026-06-19 12:10:35,799.799 INFO    ] 200
[2026-06-19 12:10:35,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:10:35,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:10:35,858.858 INFO    ] No update needed
[2026-06-19 12:10:35,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 12:10:35,895.895 INFO    ] 200
[2026-06-19 12:10:35,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:10:35,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:10:36,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:10:36,080.080 INFO    ] No camera update needed
[2026-06-19 12:10:36,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:10:36,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:10:36,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:10:36,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:10:38,138.138 INFO    ] ================================================
[2026-06-19 12:10:38,154.154 INFO    ] Launching Daemon at Fri Jun 19 12:10:38 IST 2026
[2026-06-19 12:10:38,165.165 INFO    ] ================================================
[2026-06-19 12:10:38,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:10:38
[2026-06-19 12:10:39,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:10:39,632.632 INFO    ] Initializing speech engine...
[2026-06-19 12:10:39,654.654 INFO    ] 2026-06-19 12:10:39
[2026-06-19 12:10:39,911.911 INFO    ] 2026-06-19 12:10:39
[2026-06-19 12:10:39,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:10:40,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:10:40,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:10:40,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:10:40,291.291 INFO    ] time= 19/06/2026 12:10:40
[2026-06-19 12:10:40,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:10:40,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:10:40,486.486 INFO    ] No existing commands found in stream
[2026-06-19 12:10:45,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:10:45,506.506 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 12:10:48,521.521 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:10:48,524.524 INFO    ] Checking for system updates...
[2026-06-19 12:10:48,560.560 INFO    ] 200
[2026-06-19 12:10:48,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:10:48,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:10:48,621.621 INFO    ] No update needed
[2026-06-19 12:10:48,623.623 INFO    ] Checking for camera pi updates...
[2026-06-19 12:10:48,661.661 INFO    ] 200
[2026-06-19 12:10:48,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:10:48,710.710 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:10:48,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:10:48,741.741 INFO    ] No camera update needed
[2026-06-19 12:10:48,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:10:48,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:10:48,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:10:48,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:10:50,798.798 INFO    ] ================================================
[2026-06-19 12:10:50,814.814 INFO    ] Launching Daemon at Fri Jun 19 12:10:50 IST 2026
[2026-06-19 12:10:50,825.825 INFO    ] ================================================
[2026-06-19 12:10:51,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:10:51
[2026-06-19 12:10:52,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:10:52,372.372 INFO    ] Initializing speech engine...
[2026-06-19 12:10:52,380.380 INFO    ] 2026-06-19 12:10:52
[2026-06-19 12:10:52,656.656 INFO    ] 2026-06-19 12:10:52
[2026-06-19 12:10:52,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:10:52,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:10:52,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:10:53,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:10:53,225.225 INFO    ] time= 19/06/2026 12:10:53
[2026-06-19 12:10:53,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:10:53,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:10:53,388.388 INFO    ] No existing commands found in stream
[2026-06-19 12:10:58,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:10:58,411.411 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 12:11:02,024.024 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:11:02,033.033 INFO    ] Checking for system updates...
[2026-06-19 12:11:02,093.093 INFO    ] 200
[2026-06-19 12:11:02,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:02,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:11:02,192.192 INFO    ] No update needed
[2026-06-19 12:11:02,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 12:11:02,258.258 INFO    ] 200
[2026-06-19 12:11:02,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:02,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:11:02,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:11:02,390.390 INFO    ] No camera update needed
[2026-06-19 12:11:02,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:11:02,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:11:02,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:11:02,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:11:04,456.456 INFO    ] ================================================
[2026-06-19 12:11:04,472.472 INFO    ] Launching Daemon at Fri Jun 19 12:11:04 IST 2026
[2026-06-19 12:11:04,483.483 INFO    ] ================================================
[2026-06-19 12:11:05,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:11:05
[2026-06-19 12:11:05,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:11:05,910.910 INFO    ] Initializing speech engine...
[2026-06-19 12:11:05,919.919 INFO    ] 2026-06-19 12:11:05
[2026-06-19 12:11:06,221.221 INFO    ] 2026-06-19 12:11:06
[2026-06-19 12:11:06,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:11:06,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:11:06,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:11:06,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:11:06,715.715 INFO    ] time= 19/06/2026 12:11:06
[2026-06-19 12:11:06,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:11:06,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:11:06,950.950 INFO    ] No existing commands found in stream
[2026-06-19 12:11:11,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:11:11,970.970 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 12:11:13,431.431 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:11:13,434.434 INFO    ] Checking for system updates...
[2026-06-19 12:11:13,477.477 INFO    ] 200
[2026-06-19 12:11:13,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:13,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:11:13,537.537 INFO    ] No update needed
[2026-06-19 12:11:13,540.540 INFO    ] Checking for camera pi updates...
[2026-06-19 12:11:13,580.580 INFO    ] 200
[2026-06-19 12:11:13,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:13,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:11:13,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:11:13,675.675 INFO    ] No camera update needed
[2026-06-19 12:11:13,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:11:13,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:11:13,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:11:13,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:11:15,729.729 INFO    ] ================================================
[2026-06-19 12:11:15,745.745 INFO    ] Launching Daemon at Fri Jun 19 12:11:15 IST 2026
[2026-06-19 12:11:15,756.756 INFO    ] ================================================
[2026-06-19 12:11:16,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:11:16
[2026-06-19 12:11:17,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:11:17,274.274 INFO    ] Initializing speech engine...
[2026-06-19 12:11:17,297.297 INFO    ] 2026-06-19 12:11:17
[2026-06-19 12:11:17,555.555 INFO    ] 2026-06-19 12:11:17
[2026-06-19 12:11:17,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:11:17,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:11:17,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:11:17,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:11:17,926.926 INFO    ] time= 19/06/2026 12:11:17
[2026-06-19 12:11:17,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:11:17,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:11:18,100.100 INFO    ] No existing commands found in stream
[2026-06-19 12:11:23,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:11:23,133.133 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 12:11:26,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:11:26,333.333 INFO    ] Checking for system updates...
[2026-06-19 12:11:26,371.371 INFO    ] 200
[2026-06-19 12:11:26,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:26,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:11:26,437.437 INFO    ] No update needed
[2026-06-19 12:11:26,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 12:11:26,478.478 INFO    ] 200
[2026-06-19 12:11:26,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:26,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:11:26,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:11:26,568.568 INFO    ] No camera update needed
[2026-06-19 12:11:26,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:11:26,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:11:26,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:11:26,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:11:28,624.624 INFO    ] ================================================
[2026-06-19 12:11:28,641.641 INFO    ] Launching Daemon at Fri Jun 19 12:11:28 IST 2026
[2026-06-19 12:11:28,653.653 INFO    ] ================================================
[2026-06-19 12:11:29,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:11:29
[2026-06-19 12:11:29,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:11:30,124.124 INFO    ] Initializing speech engine...
[2026-06-19 12:11:30,143.143 INFO    ] 2026-06-19 12:11:30
[2026-06-19 12:11:30,422.422 INFO    ] 2026-06-19 12:11:30
[2026-06-19 12:11:30,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:11:30,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:11:30,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:11:30,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:11:30,920.920 INFO    ] time= 19/06/2026 12:11:30
[2026-06-19 12:11:30,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:11:31,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:11:31,185.185 INFO    ] No existing commands found in stream
[2026-06-19 12:11:36,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:11:36,206.206 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 12:11:39,643.643 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:11:39,646.646 INFO    ] Checking for system updates...
[2026-06-19 12:11:39,682.682 INFO    ] 200
[2026-06-19 12:11:39,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:39,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:11:39,741.741 INFO    ] No update needed
[2026-06-19 12:11:39,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 12:11:39,777.777 INFO    ] 200
[2026-06-19 12:11:39,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:39,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:11:39,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:11:39,863.863 INFO    ] No camera update needed
[2026-06-19 12:11:39,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:11:39,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:11:39,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:11:39,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:11:41,920.920 INFO    ] ================================================
[2026-06-19 12:11:41,936.936 INFO    ] Launching Daemon at Fri Jun 19 12:11:41 IST 2026
[2026-06-19 12:11:41,947.947 INFO    ] ================================================
[2026-06-19 12:11:42,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:11:42
[2026-06-19 12:11:43,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:11:43,612.612 INFO    ] Initializing speech engine...
[2026-06-19 12:11:43,626.626 INFO    ] 2026-06-19 12:11:43
[2026-06-19 12:11:43,937.937 INFO    ] 2026-06-19 12:11:43
[2026-06-19 12:11:44,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:11:44,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:11:44,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:11:44,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:11:44,462.462 INFO    ] time= 19/06/2026 12:11:44
[2026-06-19 12:11:44,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:11:44,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:11:44,602.602 INFO    ] No existing commands found in stream
[2026-06-19 12:11:49,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:11:49,635.635 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 12:11:51,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:11:51,893.893 INFO    ] Checking for system updates...
[2026-06-19 12:11:51,939.939 INFO    ] 200
[2026-06-19 12:11:51,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:51,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:11:51,999.999 INFO    ] No update needed
[2026-06-19 12:11:52,002.002 INFO    ] Checking for camera pi updates...
[2026-06-19 12:11:52,037.037 INFO    ] 200
[2026-06-19 12:11:52,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:11:52,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:11:52,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:11:52,142.142 INFO    ] No camera update needed
[2026-06-19 12:11:52,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:11:52,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:11:52,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:11:52,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:11:54,201.201 INFO    ] ================================================
[2026-06-19 12:11:54,217.217 INFO    ] Launching Daemon at Fri Jun 19 12:11:54 IST 2026
[2026-06-19 12:11:54,228.228 INFO    ] ================================================
[2026-06-19 12:11:54,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:11:54
[2026-06-19 12:11:55,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:11:55,692.692 INFO    ] Initializing speech engine...
[2026-06-19 12:11:55,701.701 INFO    ] 2026-06-19 12:11:55
[2026-06-19 12:11:55,963.963 INFO    ] 2026-06-19 12:11:55
[2026-06-19 12:11:55,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:11:56,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:11:56,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:11:56,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:11:56,438.438 INFO    ] time= 19/06/2026 12:11:56
[2026-06-19 12:11:56,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:11:56,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:11:56,662.662 INFO    ] No existing commands found in stream
[2026-06-19 12:12:01,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:12:01,674.674 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 12:12:04,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:12:04,678.678 INFO    ] Checking for system updates...
[2026-06-19 12:12:04,717.717 INFO    ] 200
[2026-06-19 12:12:04,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:04,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:12:04,780.780 INFO    ] No update needed
[2026-06-19 12:12:04,782.782 INFO    ] Checking for camera pi updates...
[2026-06-19 12:12:04,819.819 INFO    ] 200
[2026-06-19 12:12:04,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:04,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:12:04,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:12:04,908.908 INFO    ] No camera update needed
[2026-06-19 12:12:04,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:12:04,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:12:04,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:12:04,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:12:06,965.965 INFO    ] ================================================
[2026-06-19 12:12:06,981.981 INFO    ] Launching Daemon at Fri Jun 19 12:12:06 IST 2026
[2026-06-19 12:12:06,991.991 INFO    ] ================================================
[2026-06-19 12:12:07,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:12:07
[2026-06-19 12:12:08,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:12:08,429.429 INFO    ] Initializing speech engine...
[2026-06-19 12:12:08,452.452 INFO    ] 2026-06-19 12:12:08
[2026-06-19 12:12:08,706.706 INFO    ] 2026-06-19 12:12:08
[2026-06-19 12:12:08,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:12:08,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:12:09,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:12:09,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:12:09,163.163 INFO    ] time= 19/06/2026 12:12:09
[2026-06-19 12:12:09,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:12:09,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:12:09,417.417 INFO    ] No existing commands found in stream
[2026-06-19 12:12:14,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:12:14,447.447 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 12:12:17,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:12:17,981.981 INFO    ] Checking for system updates...
[2026-06-19 12:12:18,017.017 INFO    ] 200
[2026-06-19 12:12:18,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:18,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:12:18,080.080 INFO    ] No update needed
[2026-06-19 12:12:18,083.083 INFO    ] Checking for camera pi updates...
[2026-06-19 12:12:18,117.117 INFO    ] 200
[2026-06-19 12:12:18,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:18,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:12:18,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:12:18,207.207 INFO    ] No camera update needed
[2026-06-19 12:12:18,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:12:18,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:12:18,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:12:18,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:12:20,261.261 INFO    ] ================================================
[2026-06-19 12:12:20,277.277 INFO    ] Launching Daemon at Fri Jun 19 12:12:20 IST 2026
[2026-06-19 12:12:20,288.288 INFO    ] ================================================
[2026-06-19 12:12:20,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:12:20
[2026-06-19 12:12:21,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:12:21,703.703 INFO    ] Initializing speech engine...
[2026-06-19 12:12:21,726.726 INFO    ] 2026-06-19 12:12:21
[2026-06-19 12:12:21,983.983 INFO    ] 2026-06-19 12:12:21
[2026-06-19 12:12:22,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:12:22,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:12:22,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:12:22,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:12:22,522.522 INFO    ] time= 19/06/2026 12:12:22
[2026-06-19 12:12:22,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:12:22,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:12:22,691.691 INFO    ] No existing commands found in stream
[2026-06-19 12:12:27,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:12:27,706.706 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 12:12:31,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:12:31,343.343 INFO    ] Checking for system updates...
[2026-06-19 12:12:31,381.381 INFO    ] 200
[2026-06-19 12:12:31,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:31,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:12:31,444.444 INFO    ] No update needed
[2026-06-19 12:12:31,446.446 INFO    ] Checking for camera pi updates...
[2026-06-19 12:12:31,483.483 INFO    ] 200
[2026-06-19 12:12:31,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:31,525.525 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:12:31,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:12:31,557.557 INFO    ] No camera update needed
[2026-06-19 12:12:31,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:12:31,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:12:31,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:12:31,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:12:33,615.615 INFO    ] ================================================
[2026-06-19 12:12:33,630.630 INFO    ] Launching Daemon at Fri Jun 19 12:12:33 IST 2026
[2026-06-19 12:12:33,641.641 INFO    ] ================================================
[2026-06-19 12:12:34,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:12:34
[2026-06-19 12:12:34,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:12:35,200.200 INFO    ] Initializing speech engine...
[2026-06-19 12:12:35,213.213 INFO    ] 2026-06-19 12:12:35
[2026-06-19 12:12:35,492.492 INFO    ] 2026-06-19 12:12:35
[2026-06-19 12:12:35,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:12:35,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:12:35,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:12:35,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:12:36,025.025 INFO    ] time= 19/06/2026 12:12:35
[2026-06-19 12:12:36,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:12:36,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:12:36,182.182 INFO    ] No existing commands found in stream
[2026-06-19 12:12:41,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:12:41,214.214 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 12:12:43,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:12:43,532.532 INFO    ] Checking for system updates...
[2026-06-19 12:12:43,571.571 INFO    ] 200
[2026-06-19 12:12:43,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:43,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:12:43,634.634 INFO    ] No update needed
[2026-06-19 12:12:43,636.636 INFO    ] Checking for camera pi updates...
[2026-06-19 12:12:43,670.670 INFO    ] 200
[2026-06-19 12:12:43,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:43,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:12:43,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:12:43,864.864 INFO    ] No camera update needed
[2026-06-19 12:12:43,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:12:43,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:12:43,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:12:43,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:12:45,919.919 INFO    ] ================================================
[2026-06-19 12:12:45,934.934 INFO    ] Launching Daemon at Fri Jun 19 12:12:45 IST 2026
[2026-06-19 12:12:45,945.945 INFO    ] ================================================
[2026-06-19 12:12:46,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:12:46
[2026-06-19 12:12:47,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:12:47,406.406 INFO    ] Initializing speech engine...
[2026-06-19 12:12:47,413.413 INFO    ] 2026-06-19 12:12:47
[2026-06-19 12:12:47,684.684 INFO    ] 2026-06-19 12:12:47
[2026-06-19 12:12:47,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:12:47,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:12:47,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:12:48,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:12:48,174.174 INFO    ] time= 19/06/2026 12:12:48
[2026-06-19 12:12:48,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:12:48,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:12:48,390.390 INFO    ] No existing commands found in stream
[2026-06-19 12:12:53,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:12:53,423.423 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 12:12:55,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:12:56,000.000 INFO    ] Checking for system updates...
[2026-06-19 12:12:56,037.037 INFO    ] 200
[2026-06-19 12:12:56,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:56,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:12:56,098.098 INFO    ] No update needed
[2026-06-19 12:12:56,101.101 INFO    ] Checking for camera pi updates...
[2026-06-19 12:12:56,135.135 INFO    ] 200
[2026-06-19 12:12:56,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:12:56,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:12:56,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:12:56,225.225 INFO    ] No camera update needed
[2026-06-19 12:12:56,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:12:56,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:12:56,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:12:56,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:12:58,282.282 INFO    ] ================================================
[2026-06-19 12:12:58,297.297 INFO    ] Launching Daemon at Fri Jun 19 12:12:58 IST 2026
[2026-06-19 12:12:58,308.308 INFO    ] ================================================
[2026-06-19 12:12:58,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:12:58
[2026-06-19 12:12:59,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:12:59,771.771 INFO    ] Initializing speech engine...
[2026-06-19 12:12:59,779.779 INFO    ] 2026-06-19 12:12:59
[2026-06-19 12:13:00,031.031 INFO    ] 2026-06-19 12:13:00
[2026-06-19 12:13:00,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:13:00,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:13:00,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:13:00,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:13:00,587.587 INFO    ] time= 19/06/2026 12:13:00
[2026-06-19 12:13:00,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:13:00,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:13:00,745.745 INFO    ] No existing commands found in stream
[2026-06-19 12:13:05,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:13:05,770.770 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 12:13:09,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:13:09,630.630 INFO    ] Checking for system updates...
[2026-06-19 12:13:09,669.669 INFO    ] 200
[2026-06-19 12:13:09,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:09,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:13:09,732.732 INFO    ] No update needed
[2026-06-19 12:13:09,735.735 INFO    ] Checking for camera pi updates...
[2026-06-19 12:13:09,769.769 INFO    ] 200
[2026-06-19 12:13:09,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:09,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:13:09,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:13:09,853.853 INFO    ] No camera update needed
[2026-06-19 12:13:09,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:13:09,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:13:09,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:13:09,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:13:11,908.908 INFO    ] ================================================
[2026-06-19 12:13:11,924.924 INFO    ] Launching Daemon at Fri Jun 19 12:13:11 IST 2026
[2026-06-19 12:13:11,936.936 INFO    ] ================================================
[2026-06-19 12:13:12,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:13:12
[2026-06-19 12:13:13,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:13:13,336.336 INFO    ] Initializing speech engine...
[2026-06-19 12:13:13,344.344 INFO    ] 2026-06-19 12:13:13
[2026-06-19 12:13:13,618.618 INFO    ] 2026-06-19 12:13:13
[2026-06-19 12:13:13,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:13:13,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:13:13,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:13:14,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:13:14,097.097 INFO    ] time= 19/06/2026 12:13:14
[2026-06-19 12:13:14,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:13:14,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:13:14,254.254 INFO    ] No existing commands found in stream
[2026-06-19 12:13:19,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:13:19,281.281 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 12:13:20,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:13:20,617.617 INFO    ] Checking for system updates...
[2026-06-19 12:13:20,656.656 INFO    ] 200
[2026-06-19 12:13:20,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:20,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:13:20,713.713 INFO    ] No update needed
[2026-06-19 12:13:20,716.716 INFO    ] Checking for camera pi updates...
[2026-06-19 12:13:20,750.750 INFO    ] 200
[2026-06-19 12:13:20,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:20,796.796 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:13:20,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:13:20,847.847 INFO    ] No camera update needed
[2026-06-19 12:13:20,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:13:20,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:13:20,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:13:20,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:13:22,905.905 INFO    ] ================================================
[2026-06-19 12:13:22,920.920 INFO    ] Launching Daemon at Fri Jun 19 12:13:22 IST 2026
[2026-06-19 12:13:22,931.931 INFO    ] ================================================
[2026-06-19 12:13:23,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:13:23
[2026-06-19 12:13:24,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:13:24,344.344 INFO    ] Initializing speech engine...
[2026-06-19 12:13:24,364.364 INFO    ] 2026-06-19 12:13:24
[2026-06-19 12:13:24,621.621 INFO    ] 2026-06-19 12:13:24
[2026-06-19 12:13:24,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:13:24,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:13:24,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:13:25,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:13:25,102.102 INFO    ] time= 19/06/2026 12:13:25
[2026-06-19 12:13:25,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:13:25,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:13:25,316.316 INFO    ] No existing commands found in stream
[2026-06-19 12:13:30,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:13:30,343.343 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 12:13:33,027.027 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:13:33,030.030 INFO    ] Checking for system updates...
[2026-06-19 12:13:33,072.072 INFO    ] 200
[2026-06-19 12:13:33,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:33,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:13:33,135.135 INFO    ] No update needed
[2026-06-19 12:13:33,138.138 INFO    ] Checking for camera pi updates...
[2026-06-19 12:13:33,177.177 INFO    ] 200
[2026-06-19 12:13:33,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:33,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:13:33,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:13:33,279.279 INFO    ] No camera update needed
[2026-06-19 12:13:33,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:13:33,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:13:33,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:13:33,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:13:35,335.335 INFO    ] ================================================
[2026-06-19 12:13:35,351.351 INFO    ] Launching Daemon at Fri Jun 19 12:13:35 IST 2026
[2026-06-19 12:13:35,362.362 INFO    ] ================================================
[2026-06-19 12:13:35,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:13:35
[2026-06-19 12:13:36,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:13:36,828.828 INFO    ] Initializing speech engine...
[2026-06-19 12:13:36,838.838 INFO    ] 2026-06-19 12:13:36
[2026-06-19 12:13:37,088.088 INFO    ] 2026-06-19 12:13:37
[2026-06-19 12:13:37,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:13:37,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:13:37,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:13:37,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:13:37,548.548 INFO    ] time= 19/06/2026 12:13:37
[2026-06-19 12:13:37,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:13:37,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:13:37,772.772 INFO    ] No existing commands found in stream
[2026-06-19 12:13:42,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:13:42,803.803 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 12:13:44,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:13:44,023.023 INFO    ] Checking for system updates...
[2026-06-19 12:13:44,062.062 INFO    ] 200
[2026-06-19 12:13:44,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:44,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:13:44,126.126 INFO    ] No update needed
[2026-06-19 12:13:44,128.128 INFO    ] Checking for camera pi updates...
[2026-06-19 12:13:44,165.165 INFO    ] 200
[2026-06-19 12:13:44,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:44,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:13:44,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:13:44,259.259 INFO    ] No camera update needed
[2026-06-19 12:13:44,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:13:44,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:13:44,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:13:44,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:13:46,317.317 INFO    ] ================================================
[2026-06-19 12:13:46,333.333 INFO    ] Launching Daemon at Fri Jun 19 12:13:46 IST 2026
[2026-06-19 12:13:46,344.344 INFO    ] ================================================
[2026-06-19 12:13:46,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:13:46
[2026-06-19 12:13:47,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:13:47,892.892 INFO    ] Initializing speech engine...
[2026-06-19 12:13:47,902.902 INFO    ] 2026-06-19 12:13:47
[2026-06-19 12:13:48,151.151 INFO    ] 2026-06-19 12:13:48
[2026-06-19 12:13:48,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:13:48,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:13:48,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:13:48,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:13:48,643.643 INFO    ] time= 19/06/2026 12:13:48
[2026-06-19 12:13:48,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:13:48,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:13:48,859.859 INFO    ] No existing commands found in stream
[2026-06-19 12:13:53,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:13:53,878.878 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 12:13:56,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:13:56,849.849 INFO    ] Checking for system updates...
[2026-06-19 12:13:56,889.889 INFO    ] 200
[2026-06-19 12:13:56,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:56,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:13:56,947.947 INFO    ] No update needed
[2026-06-19 12:13:56,949.949 INFO    ] Checking for camera pi updates...
[2026-06-19 12:13:56,986.986 INFO    ] 200
[2026-06-19 12:13:56,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:13:57,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:13:57,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:13:57,077.077 INFO    ] No camera update needed
[2026-06-19 12:13:57,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:13:57,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:13:57,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:13:57,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:13:59,134.134 INFO    ] ================================================
[2026-06-19 12:13:59,150.150 INFO    ] Launching Daemon at Fri Jun 19 12:13:59 IST 2026
[2026-06-19 12:13:59,161.161 INFO    ] ================================================
[2026-06-19 12:13:59,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:13:59
[2026-06-19 12:14:00,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:14:00,600.600 INFO    ] Initializing speech engine...
[2026-06-19 12:14:00,609.609 INFO    ] 2026-06-19 12:14:00
[2026-06-19 12:14:00,901.901 INFO    ] 2026-06-19 12:14:00
[2026-06-19 12:14:00,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:14:01,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:14:01,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:14:01,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:14:01,390.390 INFO    ] time= 19/06/2026 12:14:01
[2026-06-19 12:14:01,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:14:01,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:14:01,591.591 INFO    ] No existing commands found in stream
[2026-06-19 12:14:06,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:14:06,606.606 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 12:14:07,169.169 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:14:07,172.172 INFO    ] Checking for system updates...
[2026-06-19 12:14:07,208.208 INFO    ] 200
[2026-06-19 12:14:07,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:07,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:14:07,266.266 INFO    ] No update needed
[2026-06-19 12:14:07,269.269 INFO    ] Checking for camera pi updates...
[2026-06-19 12:14:07,306.306 INFO    ] 200
[2026-06-19 12:14:07,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:07,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:14:07,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:14:07,394.394 INFO    ] No camera update needed
[2026-06-19 12:14:07,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:14:07,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:14:07,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:14:07,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:14:09,458.458 INFO    ] ================================================
[2026-06-19 12:14:09,474.474 INFO    ] Launching Daemon at Fri Jun 19 12:14:09 IST 2026
[2026-06-19 12:14:09,484.484 INFO    ] ================================================
[2026-06-19 12:14:10,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:14:10
[2026-06-19 12:14:10,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:14:11,125.125 INFO    ] Initializing speech engine...
[2026-06-19 12:14:11,136.136 INFO    ] 2026-06-19 12:14:11
[2026-06-19 12:14:11,414.414 INFO    ] 2026-06-19 12:14:11
[2026-06-19 12:14:11,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:14:11,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:14:11,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:14:11,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:14:11,967.967 INFO    ] time= 19/06/2026 12:14:11
[2026-06-19 12:14:11,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:14:12,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:14:12,109.109 INFO    ] No existing commands found in stream
[2026-06-19 12:14:17,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:14:17,129.129 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 12:14:18,899.899 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:14:18,902.902 INFO    ] Checking for system updates...
[2026-06-19 12:14:18,944.944 INFO    ] 200
[2026-06-19 12:14:18,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:19,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:14:19,011.011 INFO    ] No update needed
[2026-06-19 12:14:19,014.014 INFO    ] Checking for camera pi updates...
[2026-06-19 12:14:19,049.049 INFO    ] 200
[2026-06-19 12:14:19,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:19,095.095 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:14:19,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:14:19,143.143 INFO    ] No camera update needed
[2026-06-19 12:14:19,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:14:19,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:14:19,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:14:19,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:14:21,202.202 INFO    ] ================================================
[2026-06-19 12:14:21,218.218 INFO    ] Launching Daemon at Fri Jun 19 12:14:21 IST 2026
[2026-06-19 12:14:21,229.229 INFO    ] ================================================
[2026-06-19 12:14:21,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:14:21
[2026-06-19 12:14:22,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:14:22,651.651 INFO    ] Initializing speech engine...
[2026-06-19 12:14:22,659.659 INFO    ] 2026-06-19 12:14:22
[2026-06-19 12:14:22,935.935 INFO    ] 2026-06-19 12:14:22
[2026-06-19 12:14:22,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:14:23,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:14:23,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:14:23,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:14:23,503.503 INFO    ] time= 19/06/2026 12:14:23
[2026-06-19 12:14:23,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:14:23,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:14:23,663.663 INFO    ] No existing commands found in stream
[2026-06-19 12:14:28,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:14:28,684.684 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 12:14:31,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:14:31,838.838 INFO    ] Checking for system updates...
[2026-06-19 12:14:31,874.874 INFO    ] 200
[2026-06-19 12:14:31,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:31,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:14:31,940.940 INFO    ] No update needed
[2026-06-19 12:14:31,943.943 INFO    ] Checking for camera pi updates...
[2026-06-19 12:14:31,976.976 INFO    ] 200
[2026-06-19 12:14:31,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:32,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:14:32,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:14:32,066.066 INFO    ] No camera update needed
[2026-06-19 12:14:32,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:14:32,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:14:32,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:14:32,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:14:34,122.122 INFO    ] ================================================
[2026-06-19 12:14:34,138.138 INFO    ] Launching Daemon at Fri Jun 19 12:14:34 IST 2026
[2026-06-19 12:14:34,149.149 INFO    ] ================================================
[2026-06-19 12:14:34,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:14:34
[2026-06-19 12:14:35,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:14:35,554.554 INFO    ] Initializing speech engine...
[2026-06-19 12:14:35,577.577 INFO    ] 2026-06-19 12:14:35
[2026-06-19 12:14:35,832.832 INFO    ] 2026-06-19 12:14:35
[2026-06-19 12:14:35,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:14:36,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:14:36,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:14:36,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:14:36,210.210 INFO    ] time= 19/06/2026 12:14:36
[2026-06-19 12:14:36,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:14:36,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:14:36,373.373 INFO    ] No existing commands found in stream
[2026-06-19 12:14:41,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:14:41,411.411 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 12:14:42,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:14:42,507.507 INFO    ] Checking for system updates...
[2026-06-19 12:14:42,547.547 INFO    ] 200
[2026-06-19 12:14:42,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:42,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:14:42,604.604 INFO    ] No update needed
[2026-06-19 12:14:42,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 12:14:42,645.645 INFO    ] 200
[2026-06-19 12:14:42,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:42,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:14:42,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:14:42,753.753 INFO    ] No camera update needed
[2026-06-19 12:14:42,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:14:42,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:14:42,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:14:42,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:14:44,809.809 INFO    ] ================================================
[2026-06-19 12:14:44,823.823 INFO    ] Launching Daemon at Fri Jun 19 12:14:44 IST 2026
[2026-06-19 12:14:44,834.834 INFO    ] ================================================
[2026-06-19 12:14:45,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:14:45
[2026-06-19 12:14:46,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:14:46,478.478 INFO    ] Initializing speech engine...
[2026-06-19 12:14:46,486.486 INFO    ] 2026-06-19 12:14:46
[2026-06-19 12:14:46,773.773 INFO    ] 2026-06-19 12:14:46
[2026-06-19 12:14:46,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:14:47,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:14:47,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:14:47,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:14:47,251.251 INFO    ] time= 19/06/2026 12:14:47
[2026-06-19 12:14:47,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:14:47,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:14:47,464.464 INFO    ] No existing commands found in stream
[2026-06-19 12:14:52,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:14:52,484.484 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 12:14:53,135.135 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:14:53,139.139 INFO    ] Checking for system updates...
[2026-06-19 12:14:53,181.181 INFO    ] 200
[2026-06-19 12:14:53,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:53,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:14:53,249.249 INFO    ] No update needed
[2026-06-19 12:14:53,252.252 INFO    ] Checking for camera pi updates...
[2026-06-19 12:14:53,291.291 INFO    ] 200
[2026-06-19 12:14:53,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:14:53,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:14:53,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:14:53,483.483 INFO    ] No camera update needed
[2026-06-19 12:14:53,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:14:53,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:14:53,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:14:53,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:14:55,542.542 INFO    ] ================================================
[2026-06-19 12:14:55,558.558 INFO    ] Launching Daemon at Fri Jun 19 12:14:55 IST 2026
[2026-06-19 12:14:55,569.569 INFO    ] ================================================
[2026-06-19 12:14:56,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:14:56
[2026-06-19 12:14:56,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:14:56,976.976 INFO    ] Initializing speech engine...
[2026-06-19 12:14:57,000.000 INFO    ] 2026-06-19 12:14:56
[2026-06-19 12:14:57,256.256 INFO    ] 2026-06-19 12:14:57
[2026-06-19 12:14:57,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:14:57,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:14:57,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:14:57,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:14:57,728.728 INFO    ] time= 19/06/2026 12:14:57
[2026-06-19 12:14:57,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:14:57,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:14:57,975.975 INFO    ] No existing commands found in stream
[2026-06-19 12:15:02,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:15:03,000.000 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 12:15:04,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:15:04,180.180 INFO    ] Checking for system updates...
[2026-06-19 12:15:04,223.223 INFO    ] 200
[2026-06-19 12:15:04,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:04,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:15:04,283.283 INFO    ] No update needed
[2026-06-19 12:15:04,286.286 INFO    ] Checking for camera pi updates...
[2026-06-19 12:15:04,326.326 INFO    ] 200
[2026-06-19 12:15:04,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:04,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:15:04,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:15:04,424.424 INFO    ] No camera update needed
[2026-06-19 12:15:04,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:15:04,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:15:04,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:15:04,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:15:06,486.486 INFO    ] ================================================
[2026-06-19 12:15:06,502.502 INFO    ] Launching Daemon at Fri Jun 19 12:15:06 IST 2026
[2026-06-19 12:15:06,515.515 INFO    ] ================================================
[2026-06-19 12:15:07,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:15:07
[2026-06-19 12:15:07,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:15:07,976.976 INFO    ] Initializing speech engine...
[2026-06-19 12:15:07,982.982 INFO    ] 2026-06-19 12:15:07
[2026-06-19 12:15:08,281.281 INFO    ] 2026-06-19 12:15:08
[2026-06-19 12:15:08,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:15:08,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:15:08,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:15:08,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:15:08,668.668 INFO    ] time= 19/06/2026 12:15:08
[2026-06-19 12:15:08,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:15:08,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:15:08,798.798 INFO    ] No existing commands found in stream
[2026-06-19 12:15:13,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:15:13,815.815 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 12:15:15,072.072 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:15:15,074.074 INFO    ] Checking for system updates...
[2026-06-19 12:15:15,115.115 INFO    ] 200
[2026-06-19 12:15:15,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:15,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:15:15,173.173 INFO    ] No update needed
[2026-06-19 12:15:15,175.175 INFO    ] Checking for camera pi updates...
[2026-06-19 12:15:15,209.209 INFO    ] 200
[2026-06-19 12:15:15,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:15,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:15:15,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:15:15,309.309 INFO    ] No camera update needed
[2026-06-19 12:15:15,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:15:15,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:15:15,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:15:15,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:15:17,366.366 INFO    ] ================================================
[2026-06-19 12:15:17,381.381 INFO    ] Launching Daemon at Fri Jun 19 12:15:17 IST 2026
[2026-06-19 12:15:17,392.392 INFO    ] ================================================
[2026-06-19 12:15:17,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:15:17
[2026-06-19 12:15:18,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:15:18,853.853 INFO    ] Initializing speech engine...
[2026-06-19 12:15:18,859.859 INFO    ] 2026-06-19 12:15:18
[2026-06-19 12:15:19,120.120 INFO    ] 2026-06-19 12:15:19
[2026-06-19 12:15:19,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:15:19,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:15:19,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:15:19,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:15:19,585.585 INFO    ] time= 19/06/2026 12:15:19
[2026-06-19 12:15:19,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:15:19,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:15:19,815.815 INFO    ] No existing commands found in stream
[2026-06-19 12:15:24,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:15:24,834.834 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 12:15:28,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:15:28,169.169 INFO    ] Checking for system updates...
[2026-06-19 12:15:28,206.206 INFO    ] 200
[2026-06-19 12:15:28,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:28,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:15:28,263.263 INFO    ] No update needed
[2026-06-19 12:15:28,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 12:15:28,299.299 INFO    ] 200
[2026-06-19 12:15:28,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:28,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:15:28,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:15:28,389.389 INFO    ] No camera update needed
[2026-06-19 12:15:28,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:15:28,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:15:28,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:15:28,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:15:30,448.448 INFO    ] ================================================
[2026-06-19 12:15:30,463.463 INFO    ] Launching Daemon at Fri Jun 19 12:15:30 IST 2026
[2026-06-19 12:15:30,474.474 INFO    ] ================================================
[2026-06-19 12:15:31,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:15:31
[2026-06-19 12:15:31,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:15:31,888.888 INFO    ] Initializing speech engine...
[2026-06-19 12:15:31,906.906 INFO    ] 2026-06-19 12:15:31
[2026-06-19 12:15:32,194.194 INFO    ] 2026-06-19 12:15:32
[2026-06-19 12:15:32,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:15:32,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:15:32,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:15:32,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:15:32,607.607 INFO    ] time= 19/06/2026 12:15:32
[2026-06-19 12:15:32,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:15:32,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:15:32,741.741 INFO    ] No existing commands found in stream
[2026-06-19 12:15:37,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:15:37,757.757 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 12:15:41,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:15:41,070.070 INFO    ] Checking for system updates...
[2026-06-19 12:15:41,106.106 INFO    ] 200
[2026-06-19 12:15:41,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:41,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:15:41,164.164 INFO    ] No update needed
[2026-06-19 12:15:41,166.166 INFO    ] Checking for camera pi updates...
[2026-06-19 12:15:41,200.200 INFO    ] 200
[2026-06-19 12:15:41,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:41,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:15:41,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:15:41,288.288 INFO    ] No camera update needed
[2026-06-19 12:15:41,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:15:41,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:15:41,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:15:41,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:15:43,344.344 INFO    ] ================================================
[2026-06-19 12:15:43,359.359 INFO    ] Launching Daemon at Fri Jun 19 12:15:43 IST 2026
[2026-06-19 12:15:43,370.370 INFO    ] ================================================
[2026-06-19 12:15:44,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:15:44
[2026-06-19 12:15:44,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:15:45,017.017 INFO    ] Initializing speech engine...
[2026-06-19 12:15:45,031.031 INFO    ] 2026-06-19 12:15:45
[2026-06-19 12:15:45,305.305 INFO    ] 2026-06-19 12:15:45
[2026-06-19 12:15:45,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:15:45,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:15:45,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:15:45,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:15:45,799.799 INFO    ] time= 19/06/2026 12:15:45
[2026-06-19 12:15:45,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:15:45,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:15:46,010.010 INFO    ] No existing commands found in stream
[2026-06-19 12:15:51,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:15:51,040.040 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 12:15:55,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:15:55,446.446 INFO    ] Checking for system updates...
[2026-06-19 12:15:55,484.484 INFO    ] 200
[2026-06-19 12:15:55,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:55,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:15:55,551.551 INFO    ] No update needed
[2026-06-19 12:15:55,554.554 INFO    ] Checking for camera pi updates...
[2026-06-19 12:15:55,593.593 INFO    ] 200
[2026-06-19 12:15:55,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:15:55,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:15:55,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:15:55,689.689 INFO    ] No camera update needed
[2026-06-19 12:15:55,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:15:55,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:15:55,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:15:55,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:15:57,749.749 INFO    ] ================================================
[2026-06-19 12:15:57,764.764 INFO    ] Launching Daemon at Fri Jun 19 12:15:57 IST 2026
[2026-06-19 12:15:57,775.775 INFO    ] ================================================
[2026-06-19 12:15:58,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:15:58
[2026-06-19 12:15:58,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:15:59,243.243 INFO    ] Initializing speech engine...
[2026-06-19 12:15:59,249.249 INFO    ] 2026-06-19 12:15:59
[2026-06-19 12:15:59,511.511 INFO    ] 2026-06-19 12:15:59
[2026-06-19 12:15:59,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:15:59,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:15:59,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:16:00,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:16:00,059.059 INFO    ] time= 19/06/2026 12:16:00
[2026-06-19 12:16:00,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:16:00,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:16:00,216.216 INFO    ] No existing commands found in stream
[2026-06-19 12:16:05,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:16:05,241.241 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 12:16:07,922.922 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:16:07,924.924 INFO    ] Checking for system updates...
[2026-06-19 12:16:07,964.964 INFO    ] 200
[2026-06-19 12:16:07,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:08,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:16:08,030.030 INFO    ] No update needed
[2026-06-19 12:16:08,032.032 INFO    ] Checking for camera pi updates...
[2026-06-19 12:16:08,077.077 INFO    ] 200
[2026-06-19 12:16:08,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:08,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:16:08,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:16:08,184.184 INFO    ] No camera update needed
[2026-06-19 12:16:08,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:16:08,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:16:08,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:16:08,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:16:10,241.241 INFO    ] ================================================
[2026-06-19 12:16:10,257.257 INFO    ] Launching Daemon at Fri Jun 19 12:16:10 IST 2026
[2026-06-19 12:16:10,268.268 INFO    ] ================================================
[2026-06-19 12:16:10,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:16:10
[2026-06-19 12:16:11,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:16:11,761.761 INFO    ] Initializing speech engine...
[2026-06-19 12:16:11,784.784 INFO    ] 2026-06-19 12:16:11
[2026-06-19 12:16:12,052.052 INFO    ] 2026-06-19 12:16:12
[2026-06-19 12:16:12,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:16:12,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:16:12,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:16:12,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:16:12,588.588 INFO    ] time= 19/06/2026 12:16:12
[2026-06-19 12:16:12,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:16:12,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:16:12,802.802 INFO    ] No existing commands found in stream
[2026-06-19 12:16:17,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:16:17,818.818 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 12:16:18,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:16:18,341.341 INFO    ] Checking for system updates...
[2026-06-19 12:16:18,376.376 INFO    ] 200
[2026-06-19 12:16:18,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:18,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:16:18,434.434 INFO    ] No update needed
[2026-06-19 12:16:18,436.436 INFO    ] Checking for camera pi updates...
[2026-06-19 12:16:18,470.470 INFO    ] 200
[2026-06-19 12:16:18,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:18,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:16:18,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:16:18,560.560 INFO    ] No camera update needed
[2026-06-19 12:16:18,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:16:18,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:16:18,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:16:18,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:16:20,615.615 INFO    ] ================================================
[2026-06-19 12:16:20,631.631 INFO    ] Launching Daemon at Fri Jun 19 12:16:20 IST 2026
[2026-06-19 12:16:20,641.641 INFO    ] ================================================
[2026-06-19 12:16:21,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:16:21
[2026-06-19 12:16:21,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:16:22,112.112 INFO    ] Initializing speech engine...
[2026-06-19 12:16:22,137.137 INFO    ] 2026-06-19 12:16:22
[2026-06-19 12:16:22,407.407 INFO    ] 2026-06-19 12:16:22
[2026-06-19 12:16:22,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:16:22,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:16:22,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:16:22,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:16:22,820.820 INFO    ] time= 19/06/2026 12:16:22
[2026-06-19 12:16:22,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:16:22,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:16:22,964.964 INFO    ] No existing commands found in stream
[2026-06-19 12:16:27,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:16:27,992.992 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 12:16:30,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:16:30,568.568 INFO    ] Checking for system updates...
[2026-06-19 12:16:30,604.604 INFO    ] 200
[2026-06-19 12:16:30,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:30,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:16:30,661.661 INFO    ] No update needed
[2026-06-19 12:16:30,664.664 INFO    ] Checking for camera pi updates...
[2026-06-19 12:16:30,698.698 INFO    ] 200
[2026-06-19 12:16:30,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:30,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:16:30,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:16:30,778.778 INFO    ] No camera update needed
[2026-06-19 12:16:30,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:16:30,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:16:30,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:16:30,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:16:32,836.836 INFO    ] ================================================
[2026-06-19 12:16:32,851.851 INFO    ] Launching Daemon at Fri Jun 19 12:16:32 IST 2026
[2026-06-19 12:16:32,862.862 INFO    ] ================================================
[2026-06-19 12:16:33,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:16:33
[2026-06-19 12:16:34,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:16:34,337.337 INFO    ] Initializing speech engine...
[2026-06-19 12:16:34,350.350 INFO    ] 2026-06-19 12:16:34
[2026-06-19 12:16:34,620.620 INFO    ] 2026-06-19 12:16:34
[2026-06-19 12:16:34,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:16:34,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:16:34,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:16:35,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:16:35,157.157 INFO    ] time= 19/06/2026 12:16:35
[2026-06-19 12:16:35,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:16:35,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:16:35,395.395 INFO    ] No existing commands found in stream
[2026-06-19 12:16:40,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:16:40,429.429 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 12:16:41,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:16:41,372.372 INFO    ] Checking for system updates...
[2026-06-19 12:16:41,410.410 INFO    ] 200
[2026-06-19 12:16:41,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:41,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:16:41,476.476 INFO    ] No update needed
[2026-06-19 12:16:41,479.479 INFO    ] Checking for camera pi updates...
[2026-06-19 12:16:41,514.514 INFO    ] 200
[2026-06-19 12:16:41,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:41,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:16:41,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:16:41,606.606 INFO    ] No camera update needed
[2026-06-19 12:16:41,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:16:41,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:16:41,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:16:41,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:16:43,667.667 INFO    ] ================================================
[2026-06-19 12:16:43,682.682 INFO    ] Launching Daemon at Fri Jun 19 12:16:43 IST 2026
[2026-06-19 12:16:43,692.692 INFO    ] ================================================
[2026-06-19 12:16:44,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:16:44
[2026-06-19 12:16:44,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:16:45,111.111 INFO    ] Initializing speech engine...
[2026-06-19 12:16:45,123.123 INFO    ] 2026-06-19 12:16:45
[2026-06-19 12:16:45,404.404 INFO    ] 2026-06-19 12:16:45
[2026-06-19 12:16:45,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:16:45,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:16:45,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:16:45,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:16:45,771.771 INFO    ] time= 19/06/2026 12:16:45
[2026-06-19 12:16:45,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:16:45,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:16:45,894.894 INFO    ] No existing commands found in stream
[2026-06-19 12:16:50,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:16:50,909.909 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 12:16:53,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:16:53,705.705 INFO    ] Checking for system updates...
[2026-06-19 12:16:53,742.742 INFO    ] 200
[2026-06-19 12:16:53,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:53,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:16:53,800.800 INFO    ] No update needed
[2026-06-19 12:16:53,803.803 INFO    ] Checking for camera pi updates...
[2026-06-19 12:16:53,837.837 INFO    ] 200
[2026-06-19 12:16:53,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:16:53,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:16:53,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:16:53,928.928 INFO    ] No camera update needed
[2026-06-19 12:16:53,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:16:53,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:16:53,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:16:53,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:16:55,983.983 INFO    ] ================================================
[2026-06-19 12:16:56,998.998 INFO    ] Launching Daemon at Fri Jun 19 12:16:55 IST 2026
[2026-06-19 12:16:56,009.009 INFO    ] ================================================
[2026-06-19 12:16:56,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:16:56
[2026-06-19 12:16:57,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:16:57,460.460 INFO    ] Initializing speech engine...
[2026-06-19 12:16:57,469.469 INFO    ] 2026-06-19 12:16:57
[2026-06-19 12:16:57,764.764 INFO    ] 2026-06-19 12:16:57
[2026-06-19 12:16:57,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:16:57,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:16:58,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:16:58,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:16:58,150.150 INFO    ] time= 19/06/2026 12:16:58
[2026-06-19 12:16:58,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:16:58,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:16:58,248.248 INFO    ] No existing commands found in stream
[2026-06-19 12:17:03,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:17:03,261.261 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 12:17:06,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:17:06,065.065 INFO    ] Checking for system updates...
[2026-06-19 12:17:06,101.101 INFO    ] 200
[2026-06-19 12:17:06,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:06,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:17:06,170.170 INFO    ] No update needed
[2026-06-19 12:17:06,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 12:17:06,218.218 INFO    ] 200
[2026-06-19 12:17:06,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:06,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:17:06,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:17:06,318.318 INFO    ] No camera update needed
[2026-06-19 12:17:06,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:17:06,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:17:06,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:17:06,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:17:08,374.374 INFO    ] ================================================
[2026-06-19 12:17:08,390.390 INFO    ] Launching Daemon at Fri Jun 19 12:17:08 IST 2026
[2026-06-19 12:17:08,401.401 INFO    ] ================================================
[2026-06-19 12:17:09,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:17:09
[2026-06-19 12:17:09,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:17:09,974.974 INFO    ] Initializing speech engine...
[2026-06-19 12:17:09,981.981 INFO    ] 2026-06-19 12:17:09
[2026-06-19 12:17:10,253.253 INFO    ] 2026-06-19 12:17:10
[2026-06-19 12:17:10,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:17:10,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:17:10,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:17:10,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:17:10,748.748 INFO    ] time= 19/06/2026 12:17:10
[2026-06-19 12:17:10,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:17:10,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:17:10,944.944 INFO    ] No existing commands found in stream
[2026-06-19 12:17:15,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:17:15,976.976 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 12:17:18,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:17:18,606.606 INFO    ] Checking for system updates...
[2026-06-19 12:17:18,644.644 INFO    ] 200
[2026-06-19 12:17:18,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:18,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:17:18,703.703 INFO    ] No update needed
[2026-06-19 12:17:18,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 12:17:18,741.741 INFO    ] 200
[2026-06-19 12:17:18,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:18,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:17:18,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:17:18,832.832 INFO    ] No camera update needed
[2026-06-19 12:17:18,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:17:18,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:17:18,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:17:18,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:17:20,889.889 INFO    ] ================================================
[2026-06-19 12:17:20,904.904 INFO    ] Launching Daemon at Fri Jun 19 12:17:20 IST 2026
[2026-06-19 12:17:20,915.915 INFO    ] ================================================
[2026-06-19 12:17:21,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:17:21
[2026-06-19 12:17:22,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:17:22,343.343 INFO    ] Initializing speech engine...
[2026-06-19 12:17:22,352.352 INFO    ] 2026-06-19 12:17:22
[2026-06-19 12:17:22,600.600 INFO    ] 2026-06-19 12:17:22
[2026-06-19 12:17:22,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:17:22,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:17:22,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:17:23,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:17:23,142.142 INFO    ] time= 19/06/2026 12:17:23
[2026-06-19 12:17:23,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:17:23,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:17:23,306.306 INFO    ] No existing commands found in stream
[2026-06-19 12:17:28,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:17:28,325.325 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 12:17:31,939.939 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:17:31,942.942 INFO    ] Checking for system updates...
[2026-06-19 12:17:31,981.981 INFO    ] 200
[2026-06-19 12:17:31,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:32,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:17:32,044.044 INFO    ] No update needed
[2026-06-19 12:17:32,048.048 INFO    ] Checking for camera pi updates...
[2026-06-19 12:17:32,086.086 INFO    ] 200
[2026-06-19 12:17:32,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:32,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:17:32,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:17:32,173.173 INFO    ] No camera update needed
[2026-06-19 12:17:32,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:17:32,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:17:32,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:17:32,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:17:34,235.235 INFO    ] ================================================
[2026-06-19 12:17:34,250.250 INFO    ] Launching Daemon at Fri Jun 19 12:17:34 IST 2026
[2026-06-19 12:17:34,261.261 INFO    ] ================================================
[2026-06-19 12:17:34,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:17:34
[2026-06-19 12:17:35,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:17:35,817.817 INFO    ] Initializing speech engine...
[2026-06-19 12:17:35,823.823 INFO    ] 2026-06-19 12:17:35
[2026-06-19 12:17:36,091.091 INFO    ] 2026-06-19 12:17:36
[2026-06-19 12:17:36,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:17:36,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:17:36,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:17:36,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:17:36,629.629 INFO    ] time= 19/06/2026 12:17:36
[2026-06-19 12:17:36,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:17:36,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:17:36,825.825 INFO    ] No existing commands found in stream
[2026-06-19 12:17:41,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:17:41,867.867 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 12:17:42,940.940 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:17:42,943.943 INFO    ] Checking for system updates...
[2026-06-19 12:17:42,980.980 INFO    ] 200
[2026-06-19 12:17:42,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:43,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:17:43,039.039 INFO    ] No update needed
[2026-06-19 12:17:43,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 12:17:43,079.079 INFO    ] 200
[2026-06-19 12:17:43,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:43,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:17:43,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:17:43,170.170 INFO    ] No camera update needed
[2026-06-19 12:17:43,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:17:43,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:17:43,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:17:43,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:17:45,230.230 INFO    ] ================================================
[2026-06-19 12:17:45,245.245 INFO    ] Launching Daemon at Fri Jun 19 12:17:45 IST 2026
[2026-06-19 12:17:45,256.256 INFO    ] ================================================
[2026-06-19 12:17:45,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:17:45
[2026-06-19 12:17:46,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:17:46,684.684 INFO    ] Initializing speech engine...
[2026-06-19 12:17:46,693.693 INFO    ] 2026-06-19 12:17:46
[2026-06-19 12:17:46,940.940 INFO    ] 2026-06-19 12:17:46
[2026-06-19 12:17:46,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:17:47,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:17:47,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:17:47,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:17:47,495.495 INFO    ] time= 19/06/2026 12:17:47
[2026-06-19 12:17:47,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:17:47,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:17:47,646.646 INFO    ] No existing commands found in stream
[2026-06-19 12:17:52,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:17:52,663.663 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 12:17:56,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:17:56,950.950 INFO    ] Checking for system updates...
[2026-06-19 12:17:56,986.986 INFO    ] 200
[2026-06-19 12:17:56,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:57,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:17:57,046.046 INFO    ] No update needed
[2026-06-19 12:17:57,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 12:17:57,083.083 INFO    ] 200
[2026-06-19 12:17:57,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:17:57,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:17:57,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:17:57,184.184 INFO    ] No camera update needed
[2026-06-19 12:17:57,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:17:57,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:17:57,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:17:57,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:17:59,241.241 INFO    ] ================================================
[2026-06-19 12:17:59,256.256 INFO    ] Launching Daemon at Fri Jun 19 12:17:59 IST 2026
[2026-06-19 12:17:59,267.267 INFO    ] ================================================
[2026-06-19 12:17:59,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:17:59
[2026-06-19 12:18:00,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:18:00,690.690 INFO    ] Initializing speech engine...
[2026-06-19 12:18:00,705.705 INFO    ] 2026-06-19 12:18:00
[2026-06-19 12:18:00,970.970 INFO    ] 2026-06-19 12:18:00
[2026-06-19 12:18:01,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:18:01,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:18:01,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:18:01,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:18:01,362.362 INFO    ] time= 19/06/2026 12:18:01
[2026-06-19 12:18:01,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:18:01,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:18:01,442.442 INFO    ] No existing commands found in stream
[2026-06-19 12:18:06,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:18:06,455.455 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 12:18:09,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:18:09,727.727 INFO    ] Checking for system updates...
[2026-06-19 12:18:09,764.764 INFO    ] 200
[2026-06-19 12:18:09,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:18:09,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:18:09,823.823 INFO    ] No update needed
[2026-06-19 12:18:09,826.826 INFO    ] Checking for camera pi updates...
[2026-06-19 12:18:09,861.861 INFO    ] 200
[2026-06-19 12:18:09,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:18:09,905.905 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:18:09,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:18:09,951.951 INFO    ] No camera update needed
[2026-06-19 12:18:09,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:18:09,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:18:09,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:18:09,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:18:12,009.009 INFO    ] ================================================
[2026-06-19 12:18:12,024.024 INFO    ] Launching Daemon at Fri Jun 19 12:18:12 IST 2026
[2026-06-19 12:18:12,034.034 INFO    ] ================================================
[2026-06-19 12:18:12,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:18:12
[2026-06-19 12:18:13,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:18:13,438.438 INFO    ] Initializing speech engine...
[2026-06-19 12:18:13,447.447 INFO    ] 2026-06-19 12:18:13
[2026-06-19 12:18:13,737.737 INFO    ] 2026-06-19 12:18:13
[2026-06-19 12:18:13,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:18:13,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:18:13,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:18:14,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:18:14,110.110 INFO    ] time= 19/06/2026 12:18:14
[2026-06-19 12:18:14,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:18:14,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:18:14,232.232 INFO    ] No existing commands found in stream
[2026-06-19 12:18:19,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:18:19,254.254 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 12:18:22,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:18:22,980.980 INFO    ] Checking for system updates...
[2026-06-19 12:18:23,017.017 INFO    ] 200
[2026-06-19 12:18:23,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:18:23,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:18:23,075.075 INFO    ] No update needed
[2026-06-19 12:18:23,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 12:18:23,112.112 INFO    ] 200
[2026-06-19 12:18:23,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:18:23,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:18:23,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:18:23,200.200 INFO    ] No camera update needed
[2026-06-19 12:18:23,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:18:23,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:18:23,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:18:23,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:18:25,255.255 INFO    ] ================================================
[2026-06-19 12:18:25,271.271 INFO    ] Launching Daemon at Fri Jun 19 12:18:25 IST 2026
[2026-06-19 12:18:25,282.282 INFO    ] ================================================
[2026-06-19 12:18:25,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:18:25
[2026-06-19 12:18:26,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:18:26,690.690 INFO    ] Initializing speech engine...
[2026-06-19 12:18:26,696.696 INFO    ] 2026-06-19 12:18:26
[2026-06-19 12:18:26,991.991 INFO    ] 2026-06-19 12:18:26
[2026-06-19 12:18:27,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:18:27,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:18:27,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:18:27,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:18:27,403.403 INFO    ] time= 19/06/2026 12:18:27
[2026-06-19 12:18:27,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:18:27,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:18:27,586.586 INFO    ] No existing commands found in stream
[2026-06-19 12:18:32,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:18:32,614.614 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-19 12:18:33,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:18:33,859.859 INFO    ] Checking for system updates...
[2026-06-19 12:18:33,896.896 INFO    ] 200
[2026-06-19 12:18:33,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:18:33,953.953 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:18:33,955.955 INFO    ] No update needed
[2026-06-19 12:18:33,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 12:18:33,996.996 INFO    ] 200
[2026-06-19 12:18:33,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:18:34,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:18:34,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:18:34,093.093 INFO    ] No camera update needed
[2026-06-19 12:18:34,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:18:34,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:18:34,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:18:34,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:18:36,151.151 INFO    ] ================================================
[2026-06-19 12:18:36,166.166 INFO    ] Launching Daemon at Fri Jun 19 12:18:36 IST 2026
[2026-06-19 12:18:36,177.177 INFO    ] ================================================
[2026-06-19 12:18:36,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:18:36
[2026-06-19 12:18:37,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:18:37,605.605 INFO    ] Initializing speech engine...
[2026-06-19 12:18:37,613.613 INFO    ] 2026-06-19 12:18:37
[2026-06-19 12:18:37,861.861 INFO    ] 2026-06-19 12:18:37
[2026-06-19 12:18:37,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:18:38,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:18:38,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:18:38,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:18:38,315.315 INFO    ] time= 19/06/2026 12:18:38
[2026-06-19 12:18:38,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:18:38,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:18:38,562.562 INFO    ] No existing commands found in stream
[2026-06-19 12:18:43,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:18:43,598.598 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 12:18:47,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:18:47,289.289 INFO    ] Checking for system updates...
[2026-06-19 12:18:47,326.326 INFO    ] 200
[2026-06-19 12:18:47,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:18:47,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:18:47,383.383 INFO    ] No update needed
[2026-06-19 12:18:47,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 12:18:47,419.419 INFO    ] 200
[2026-06-19 12:18:47,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:18:47,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:18:47,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:18:47,492.492 INFO    ] No camera update needed
[2026-06-19 12:18:47,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:18:47,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:18:47,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:18:47,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:18:49,549.549 INFO    ] ================================================
[2026-06-19 12:18:49,564.564 INFO    ] Launching Daemon at Fri Jun 19 12:18:49 IST 2026
[2026-06-19 12:18:49,574.574 INFO    ] ================================================
[2026-06-19 12:18:50,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:18:50
[2026-06-19 12:18:50,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:18:50,990.990 INFO    ] Initializing speech engine...
[2026-06-19 12:18:51,010.010 INFO    ] 2026-06-19 12:18:51
[2026-06-19 12:18:51,259.259 INFO    ] 2026-06-19 12:18:51
[2026-06-19 12:18:51,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:18:51,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:18:51,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:18:51,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:18:51,738.738 INFO    ] time= 19/06/2026 12:18:51
[2026-06-19 12:18:51,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:18:51,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:18:51,974.974 INFO    ] No existing commands found in stream
[2026-06-19 12:18:56,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:18:56,997.997 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 12:18:59,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:18:59,978.978 INFO    ] Checking for system updates...
[2026-06-19 12:19:00,015.015 INFO    ] 200
[2026-06-19 12:19:00,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:00,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:19:00,074.074 INFO    ] No update needed
[2026-06-19 12:19:00,077.077 INFO    ] Checking for camera pi updates...
[2026-06-19 12:19:00,111.111 INFO    ] 200
[2026-06-19 12:19:00,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:00,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:19:00,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:19:00,211.211 INFO    ] No camera update needed
[2026-06-19 12:19:00,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:19:00,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:19:00,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:19:00,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:19:02,269.269 INFO    ] ================================================
[2026-06-19 12:19:02,289.289 INFO    ] Launching Daemon at Fri Jun 19 12:19:02 IST 2026
[2026-06-19 12:19:02,305.305 INFO    ] ================================================
[2026-06-19 12:19:02,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:19:02
[2026-06-19 12:19:03,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:19:03,917.917 INFO    ] Initializing speech engine...
[2026-06-19 12:19:03,925.925 INFO    ] 2026-06-19 12:19:03
[2026-06-19 12:19:04,184.184 INFO    ] 2026-06-19 12:19:04
[2026-06-19 12:19:04,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:19:04,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:19:04,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:19:04,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:19:04,743.743 INFO    ] time= 19/06/2026 12:19:04
[2026-06-19 12:19:04,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:19:04,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:19:04,896.896 INFO    ] No existing commands found in stream
[2026-06-19 12:19:09,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:19:09,914.914 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 12:19:13,628.628 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:19:13,631.631 INFO    ] Checking for system updates...
[2026-06-19 12:19:13,668.668 INFO    ] 200
[2026-06-19 12:19:13,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:13,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:19:13,730.730 INFO    ] No update needed
[2026-06-19 12:19:13,733.733 INFO    ] Checking for camera pi updates...
[2026-06-19 12:19:13,766.766 INFO    ] 200
[2026-06-19 12:19:13,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:13,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:19:13,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:19:13,959.959 INFO    ] No camera update needed
[2026-06-19 12:19:13,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:19:13,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:19:13,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:19:13,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:19:16,014.014 INFO    ] ================================================
[2026-06-19 12:19:16,029.029 INFO    ] Launching Daemon at Fri Jun 19 12:19:16 IST 2026
[2026-06-19 12:19:16,040.040 INFO    ] ================================================
[2026-06-19 12:19:16,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:19:16
[2026-06-19 12:19:17,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:19:17,501.501 INFO    ] Initializing speech engine...
[2026-06-19 12:19:17,509.509 INFO    ] 2026-06-19 12:19:17
[2026-06-19 12:19:17,770.770 INFO    ] 2026-06-19 12:19:17
[2026-06-19 12:19:17,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:19:18,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:19:18,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:19:18,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:19:18,249.249 INFO    ] time= 19/06/2026 12:19:18
[2026-06-19 12:19:18,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:19:18,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:19:18,459.459 INFO    ] No existing commands found in stream
[2026-06-19 12:19:23,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:19:23,482.482 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 12:19:24,259.259 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:19:24,262.262 INFO    ] Checking for system updates...
[2026-06-19 12:19:24,298.298 INFO    ] 200
[2026-06-19 12:19:24,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:24,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:19:24,356.356 INFO    ] No update needed
[2026-06-19 12:19:24,358.358 INFO    ] Checking for camera pi updates...
[2026-06-19 12:19:24,393.393 INFO    ] 200
[2026-06-19 12:19:24,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:24,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:19:24,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:19:24,485.485 INFO    ] No camera update needed
[2026-06-19 12:19:24,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:19:24,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:19:24,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:19:24,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:19:26,541.541 INFO    ] ================================================
[2026-06-19 12:19:26,556.556 INFO    ] Launching Daemon at Fri Jun 19 12:19:26 IST 2026
[2026-06-19 12:19:26,567.567 INFO    ] ================================================
[2026-06-19 12:19:27,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:19:27
[2026-06-19 12:19:27,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:19:27,970.970 INFO    ] Initializing speech engine...
[2026-06-19 12:19:27,984.984 INFO    ] 2026-06-19 12:19:27
[2026-06-19 12:19:28,255.255 INFO    ] 2026-06-19 12:19:28
[2026-06-19 12:19:28,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:19:28,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:19:28,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:19:28,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:19:28,739.739 INFO    ] time= 19/06/2026 12:19:28
[2026-06-19 12:19:28,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:19:28,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:19:29,009.009 INFO    ] No existing commands found in stream
[2026-06-19 12:19:34,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:19:34,042.042 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 12:19:37,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:19:37,243.243 INFO    ] Checking for system updates...
[2026-06-19 12:19:37,279.279 INFO    ] 200
[2026-06-19 12:19:37,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:37,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:19:37,341.341 INFO    ] No update needed
[2026-06-19 12:19:37,343.343 INFO    ] Checking for camera pi updates...
[2026-06-19 12:19:37,380.380 INFO    ] 200
[2026-06-19 12:19:37,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:37,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:19:37,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:19:37,465.465 INFO    ] No camera update needed
[2026-06-19 12:19:37,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:19:37,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:19:37,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:19:37,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:19:39,523.523 INFO    ] ================================================
[2026-06-19 12:19:39,539.539 INFO    ] Launching Daemon at Fri Jun 19 12:19:39 IST 2026
[2026-06-19 12:19:39,550.550 INFO    ] ================================================
[2026-06-19 12:19:40,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:19:40
[2026-06-19 12:19:40,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:19:41,002.002 INFO    ] Initializing speech engine...
[2026-06-19 12:19:41,012.012 INFO    ] 2026-06-19 12:19:41
[2026-06-19 12:19:41,277.277 INFO    ] 2026-06-19 12:19:41
[2026-06-19 12:19:41,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:19:41,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:19:41,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:19:41,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:19:41,821.821 INFO    ] time= 19/06/2026 12:19:41
[2026-06-19 12:19:41,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:19:41,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:19:41,973.973 INFO    ] No existing commands found in stream
[2026-06-19 12:19:46,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:19:46,991.991 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 12:19:47,743.743 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:19:47,746.746 INFO    ] Checking for system updates...
[2026-06-19 12:19:47,783.783 INFO    ] 200
[2026-06-19 12:19:47,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:47,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:19:47,847.847 INFO    ] No update needed
[2026-06-19 12:19:47,850.850 INFO    ] Checking for camera pi updates...
[2026-06-19 12:19:47,884.884 INFO    ] 200
[2026-06-19 12:19:47,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:47,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:19:47,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:19:47,957.957 INFO    ] No camera update needed
[2026-06-19 12:19:47,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:19:47,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:19:47,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:19:47,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:19:50,015.015 INFO    ] ================================================
[2026-06-19 12:19:50,032.032 INFO    ] Launching Daemon at Fri Jun 19 12:19:50 IST 2026
[2026-06-19 12:19:50,044.044 INFO    ] ================================================
[2026-06-19 12:19:50,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:19:50
[2026-06-19 12:19:51,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:19:51,508.508 INFO    ] Initializing speech engine...
[2026-06-19 12:19:51,531.531 INFO    ] 2026-06-19 12:19:51
[2026-06-19 12:19:51,783.783 INFO    ] 2026-06-19 12:19:51
[2026-06-19 12:19:51,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:19:52,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:19:52,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:19:52,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:19:52,279.279 INFO    ] time= 19/06/2026 12:19:52
[2026-06-19 12:19:52,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:19:52,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:19:52,493.493 INFO    ] No existing commands found in stream
[2026-06-19 12:19:57,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:19:57,510.510 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-19 12:19:59,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:19:59,279.279 INFO    ] Checking for system updates...
[2026-06-19 12:19:59,318.318 INFO    ] 200
[2026-06-19 12:19:59,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:59,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:19:59,376.376 INFO    ] No update needed
[2026-06-19 12:19:59,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 12:19:59,418.418 INFO    ] 200
[2026-06-19 12:19:59,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:19:59,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:19:59,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:19:59,517.517 INFO    ] No camera update needed
[2026-06-19 12:19:59,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:19:59,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:19:59,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:19:59,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:20:01,586.586 INFO    ] ================================================
[2026-06-19 12:20:01,618.618 INFO    ] Launching Daemon at Fri Jun 19 12:20:01 IST 2026
[2026-06-19 12:20:01,676.676 INFO    ] ================================================
[2026-06-19 12:20:02,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:20:02
[2026-06-19 12:20:03,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:20:03,696.696 INFO    ] Initializing speech engine...
[2026-06-19 12:20:03,700.700 INFO    ] 2026-06-19 12:20:03
[2026-06-19 12:20:04,004.004 INFO    ] 2026-06-19 12:20:03
[2026-06-19 12:20:04,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:20:04,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:20:04,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:20:04,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:20:04,510.510 INFO    ] time= 19/06/2026 12:20:04
[2026-06-19 12:20:04,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:20:04,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:20:04,660.660 INFO    ] No existing commands found in stream
[2026-06-19 12:20:09,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:20:09,686.686 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 12:20:11,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:20:11,622.622 INFO    ] Checking for system updates...
[2026-06-19 12:20:11,666.666 INFO    ] 200
[2026-06-19 12:20:11,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:20:11,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:20:11,736.736 INFO    ] No update needed
[2026-06-19 12:20:11,739.739 INFO    ] Checking for camera pi updates...
[2026-06-19 12:20:11,780.780 INFO    ] 200
[2026-06-19 12:20:11,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:20:11,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:20:11,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:20:11,876.876 INFO    ] No camera update needed
[2026-06-19 12:20:11,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:20:11,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:20:11,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:20:11,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:20:13,938.938 INFO    ] ================================================
[2026-06-19 12:20:13,954.954 INFO    ] Launching Daemon at Fri Jun 19 12:20:13 IST 2026
[2026-06-19 12:20:13,965.965 INFO    ] ================================================
[2026-06-19 12:20:14,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:20:14
[2026-06-19 12:20:15,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:20:15,657.657 INFO    ] Initializing speech engine...
[2026-06-19 12:20:15,669.669 INFO    ] 2026-06-19 12:20:15
[2026-06-19 12:20:15,960.960 INFO    ] 2026-06-19 12:20:15
[2026-06-19 12:20:16,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:20:16,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:20:16,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:20:16,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:20:16,517.517 INFO    ] time= 19/06/2026 12:20:16
[2026-06-19 12:20:16,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:20:16,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:20:16,703.703 INFO    ] No existing commands found in stream
[2026-06-19 12:20:21,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:20:21,738.738 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 12:20:24,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:20:24,658.658 INFO    ] Checking for system updates...
[2026-06-19 12:20:24,701.701 INFO    ] 200
[2026-06-19 12:20:24,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:20:24,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:20:24,767.767 INFO    ] No update needed
[2026-06-19 12:20:24,770.770 INFO    ] Checking for camera pi updates...
[2026-06-19 12:20:24,811.811 INFO    ] 200
[2026-06-19 12:20:24,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:20:24,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:20:24,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:20:24,912.912 INFO    ] No camera update needed
[2026-06-19 12:20:24,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:20:24,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:20:24,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:20:24,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:20:26,974.974 INFO    ] ================================================
[2026-06-19 12:20:26,989.989 INFO    ] Launching Daemon at Fri Jun 19 12:20:26 IST 2026
[2026-06-19 12:20:27,001.001 INFO    ] ================================================
[2026-06-19 12:20:27,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:20:27
[2026-06-19 12:20:28,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:20:28,467.467 INFO    ] Initializing speech engine...
[2026-06-19 12:20:28,472.472 INFO    ] 2026-06-19 12:20:28
[2026-06-19 12:20:28,736.736 INFO    ] 2026-06-19 12:20:28
[2026-06-19 12:20:28,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:20:29,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:20:29,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:20:29,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:20:29,281.281 INFO    ] time= 19/06/2026 12:20:29
[2026-06-19 12:20:29,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:20:29,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:20:29,433.433 INFO    ] No existing commands found in stream
[2026-06-19 12:20:34,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:20:34,458.458 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 12:20:38,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:20:38,552.552 INFO    ] Checking for system updates...
[2026-06-19 12:20:38,594.594 INFO    ] 200
[2026-06-19 12:20:38,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:20:38,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:20:38,652.652 INFO    ] No update needed
[2026-06-19 12:20:38,654.654 INFO    ] Checking for camera pi updates...
[2026-06-19 12:20:38,689.689 INFO    ] 200
[2026-06-19 12:20:38,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:20:38,733.733 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:20:38,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:20:38,773.773 INFO    ] No camera update needed
[2026-06-19 12:20:38,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:20:38,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:20:38,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:20:38,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:20:40,832.832 INFO    ] ================================================
[2026-06-19 12:20:40,849.849 INFO    ] Launching Daemon at Fri Jun 19 12:20:40 IST 2026
[2026-06-19 12:20:40,860.860 INFO    ] ================================================
[2026-06-19 12:20:41,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:20:41
[2026-06-19 12:20:42,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:20:42,552.552 INFO    ] Initializing speech engine...
[2026-06-19 12:20:42,559.559 INFO    ] 2026-06-19 12:20:42
[2026-06-19 12:20:42,861.861 INFO    ] 2026-06-19 12:20:42
[2026-06-19 12:20:42,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:20:43,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:20:43,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:20:43,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:20:43,406.406 INFO    ] time= 19/06/2026 12:20:43
[2026-06-19 12:20:43,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:20:43,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:20:43,564.564 INFO    ] No existing commands found in stream
[2026-06-19 12:20:48,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:20:48,589.589 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 12:20:52,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:20:52,626.626 INFO    ] Checking for system updates...
[2026-06-19 12:20:52,662.662 INFO    ] 200
[2026-06-19 12:20:52,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:20:52,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:20:52,723.723 INFO    ] No update needed
[2026-06-19 12:20:52,726.726 INFO    ] Checking for camera pi updates...
[2026-06-19 12:20:52,760.760 INFO    ] 200
[2026-06-19 12:20:52,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:20:52,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:20:52,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:20:52,856.856 INFO    ] No camera update needed
[2026-06-19 12:20:52,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:20:52,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:20:52,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:20:52,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:20:54,911.911 INFO    ] ================================================
[2026-06-19 12:20:54,927.927 INFO    ] Launching Daemon at Fri Jun 19 12:20:54 IST 2026
[2026-06-19 12:20:54,938.938 INFO    ] ================================================
[2026-06-19 12:20:55,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:20:55
[2026-06-19 12:20:56,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:20:56,361.361 INFO    ] Initializing speech engine...
[2026-06-19 12:20:56,369.369 INFO    ] 2026-06-19 12:20:56
[2026-06-19 12:20:56,619.619 INFO    ] 2026-06-19 12:20:56
[2026-06-19 12:20:56,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:20:56,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:20:56,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:20:57,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:20:57,107.107 INFO    ] time= 19/06/2026 12:20:57
[2026-06-19 12:20:57,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:20:57,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:20:57,346.346 INFO    ] No existing commands found in stream
[2026-06-19 12:21:02,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:21:02,361.361 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 12:21:03,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:21:03,898.898 INFO    ] Checking for system updates...
[2026-06-19 12:21:03,935.935 INFO    ] 200
[2026-06-19 12:21:03,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:03,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:21:03,993.993 INFO    ] No update needed
[2026-06-19 12:21:03,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 12:21:04,029.029 INFO    ] 200
[2026-06-19 12:21:04,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:04,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:21:04,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:21:04,138.138 INFO    ] No camera update needed
[2026-06-19 12:21:04,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:21:04,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:21:04,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:21:04,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:21:06,193.193 INFO    ] ================================================
[2026-06-19 12:21:06,209.209 INFO    ] Launching Daemon at Fri Jun 19 12:21:06 IST 2026
[2026-06-19 12:21:06,220.220 INFO    ] ================================================
[2026-06-19 12:21:06,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:21:06
[2026-06-19 12:21:07,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:21:07,681.681 INFO    ] Initializing speech engine...
[2026-06-19 12:21:07,690.690 INFO    ] 2026-06-19 12:21:07
[2026-06-19 12:21:07,950.950 INFO    ] 2026-06-19 12:21:07
[2026-06-19 12:21:07,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:21:08,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:21:08,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:21:08,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:21:08,413.413 INFO    ] time= 19/06/2026 12:21:08
[2026-06-19 12:21:08,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:21:08,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:21:08,615.615 INFO    ] No existing commands found in stream
[2026-06-19 12:21:13,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:21:13,646.646 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 12:21:14,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:21:14,484.484 INFO    ] Checking for system updates...
[2026-06-19 12:21:14,521.521 INFO    ] 200
[2026-06-19 12:21:14,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:14,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:21:14,579.579 INFO    ] No update needed
[2026-06-19 12:21:14,581.581 INFO    ] Checking for camera pi updates...
[2026-06-19 12:21:14,616.616 INFO    ] 200
[2026-06-19 12:21:14,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:14,660.660 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:21:14,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:21:14,811.811 INFO    ] No camera update needed
[2026-06-19 12:21:14,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:21:14,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:21:14,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:21:14,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:21:16,870.870 INFO    ] ================================================
[2026-06-19 12:21:16,886.886 INFO    ] Launching Daemon at Fri Jun 19 12:21:16 IST 2026
[2026-06-19 12:21:16,896.896 INFO    ] ================================================
[2026-06-19 12:21:17,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:21:17
[2026-06-19 12:21:18,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:21:18,377.377 INFO    ] Initializing speech engine...
[2026-06-19 12:21:18,386.386 INFO    ] 2026-06-19 12:21:18
[2026-06-19 12:21:18,646.646 INFO    ] 2026-06-19 12:21:18
[2026-06-19 12:21:18,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:21:18,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:21:18,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:21:19,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:21:19,137.137 INFO    ] time= 19/06/2026 12:21:19
[2026-06-19 12:21:19,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:21:19,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:21:19,344.344 INFO    ] No existing commands found in stream
[2026-06-19 12:21:24,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:21:24,360.360 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 12:21:25,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:21:25,590.590 INFO    ] Checking for system updates...
[2026-06-19 12:21:25,628.628 INFO    ] 200
[2026-06-19 12:21:25,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:25,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:21:25,686.686 INFO    ] No update needed
[2026-06-19 12:21:25,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 12:21:25,728.728 INFO    ] 200
[2026-06-19 12:21:25,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:25,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:21:25,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:21:25,823.823 INFO    ] No camera update needed
[2026-06-19 12:21:25,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:21:25,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:21:25,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:21:25,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:21:27,880.880 INFO    ] ================================================
[2026-06-19 12:21:27,896.896 INFO    ] Launching Daemon at Fri Jun 19 12:21:27 IST 2026
[2026-06-19 12:21:27,907.907 INFO    ] ================================================
[2026-06-19 12:21:28,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:21:28
[2026-06-19 12:21:29,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:21:29,367.367 INFO    ] Initializing speech engine...
[2026-06-19 12:21:29,376.376 INFO    ] 2026-06-19 12:21:29
[2026-06-19 12:21:29,640.640 INFO    ] 2026-06-19 12:21:29
[2026-06-19 12:21:29,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:21:29,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:21:29,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:21:30,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:21:30,128.128 INFO    ] time= 19/06/2026 12:21:30
[2026-06-19 12:21:30,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:21:30,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:21:30,340.340 INFO    ] No existing commands found in stream
[2026-06-19 12:21:35,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:21:35,360.360 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 12:21:36,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:21:36,686.686 INFO    ] Checking for system updates...
[2026-06-19 12:21:36,722.722 INFO    ] 200
[2026-06-19 12:21:36,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:36,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:21:36,789.789 INFO    ] No update needed
[2026-06-19 12:21:36,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 12:21:36,831.831 INFO    ] 200
[2026-06-19 12:21:36,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:36,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:21:36,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:21:36,931.931 INFO    ] No camera update needed
[2026-06-19 12:21:36,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:21:36,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:21:36,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:21:36,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:21:38,990.990 INFO    ] ================================================
[2026-06-19 12:21:39,005.005 INFO    ] Launching Daemon at Fri Jun 19 12:21:39 IST 2026
[2026-06-19 12:21:39,016.016 INFO    ] ================================================
[2026-06-19 12:21:39,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:21:39
[2026-06-19 12:21:40,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:21:40,738.738 INFO    ] Initializing speech engine...
[2026-06-19 12:21:40,743.743 INFO    ] 2026-06-19 12:21:40
[2026-06-19 12:21:41,057.057 INFO    ] 2026-06-19 12:21:41
[2026-06-19 12:21:41,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:21:41,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:21:41,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:21:41,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:21:41,584.584 INFO    ] time= 19/06/2026 12:21:41
[2026-06-19 12:21:41,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:21:41,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:21:41,731.731 INFO    ] No existing commands found in stream
[2026-06-19 12:21:46,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:21:46,756.756 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 12:21:50,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:21:50,817.817 INFO    ] Checking for system updates...
[2026-06-19 12:21:50,855.855 INFO    ] 200
[2026-06-19 12:21:50,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:50,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:21:50,914.914 INFO    ] No update needed
[2026-06-19 12:21:50,916.916 INFO    ] Checking for camera pi updates...
[2026-06-19 12:21:50,955.955 INFO    ] 200
[2026-06-19 12:21:50,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:21:51,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:21:51,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:21:51,046.046 INFO    ] No camera update needed
[2026-06-19 12:21:51,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:21:51,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:21:51,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:21:51,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:21:53,102.102 INFO    ] ================================================
[2026-06-19 12:21:53,117.117 INFO    ] Launching Daemon at Fri Jun 19 12:21:53 IST 2026
[2026-06-19 12:21:53,129.129 INFO    ] ================================================
[2026-06-19 12:21:53,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:21:53
[2026-06-19 12:21:54,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:21:54,685.685 INFO    ] Initializing speech engine...
[2026-06-19 12:21:54,691.691 INFO    ] 2026-06-19 12:21:54
[2026-06-19 12:21:54,941.941 INFO    ] 2026-06-19 12:21:54
[2026-06-19 12:21:54,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:21:55,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:21:55,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:21:55,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:21:55,502.502 INFO    ] time= 19/06/2026 12:21:55
[2026-06-19 12:21:55,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:21:55,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:21:55,659.659 INFO    ] No existing commands found in stream
[2026-06-19 12:22:00,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:22:00,681.681 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-19 12:22:01,941.941 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:22:01,946.946 INFO    ] Checking for system updates...
[2026-06-19 12:22:02,012.012 INFO    ] 200
[2026-06-19 12:22:02,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:02,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:22:02,141.141 INFO    ] No update needed
[2026-06-19 12:22:02,144.144 INFO    ] Checking for camera pi updates...
[2026-06-19 12:22:02,216.216 INFO    ] 200
[2026-06-19 12:22:02,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:02,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:22:02,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:22:02,335.335 INFO    ] No camera update needed
[2026-06-19 12:22:02,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:22:02,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:22:02,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:22:02,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:22:04,412.412 INFO    ] ================================================
[2026-06-19 12:22:04,429.429 INFO    ] Launching Daemon at Fri Jun 19 12:22:04 IST 2026
[2026-06-19 12:22:04,440.440 INFO    ] ================================================
[2026-06-19 12:22:05,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:22:05
[2026-06-19 12:22:05,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:22:05,873.873 INFO    ] Initializing speech engine...
[2026-06-19 12:22:05,882.882 INFO    ] 2026-06-19 12:22:05
[2026-06-19 12:22:06,127.127 INFO    ] 2026-06-19 12:22:06
[2026-06-19 12:22:06,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:22:06,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:22:06,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:22:06,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:22:06,618.618 INFO    ] time= 19/06/2026 12:22:06
[2026-06-19 12:22:06,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:22:06,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:22:06,855.855 INFO    ] No existing commands found in stream
[2026-06-19 12:22:11,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:22:11,880.880 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 12:22:12,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:22:12,471.471 INFO    ] Checking for system updates...
[2026-06-19 12:22:12,511.511 INFO    ] 200
[2026-06-19 12:22:12,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:12,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:22:12,570.570 INFO    ] No update needed
[2026-06-19 12:22:12,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 12:22:12,607.607 INFO    ] 200
[2026-06-19 12:22:12,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:12,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:22:12,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:22:12,701.701 INFO    ] No camera update needed
[2026-06-19 12:22:12,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:22:12,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:22:12,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:22:12,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:22:14,756.756 INFO    ] ================================================
[2026-06-19 12:22:14,772.772 INFO    ] Launching Daemon at Fri Jun 19 12:22:14 IST 2026
[2026-06-19 12:22:14,783.783 INFO    ] ================================================
[2026-06-19 12:22:15,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:22:15
[2026-06-19 12:22:15,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:22:16,191.191 INFO    ] Initializing speech engine...
[2026-06-19 12:22:16,198.198 INFO    ] 2026-06-19 12:22:16
[2026-06-19 12:22:16,499.499 INFO    ] 2026-06-19 12:22:16
[2026-06-19 12:22:16,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:22:16,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:22:16,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:22:16,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:22:16,921.921 INFO    ] time= 19/06/2026 12:22:16
[2026-06-19 12:22:16,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:22:16,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:22:17,007.007 INFO    ] No existing commands found in stream
[2026-06-19 12:22:22,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:22:22,023.023 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 12:22:23,040.040 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:22:23,043.043 INFO    ] Checking for system updates...
[2026-06-19 12:22:23,083.083 INFO    ] 200
[2026-06-19 12:22:23,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:23,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:22:23,147.147 INFO    ] No update needed
[2026-06-19 12:22:23,149.149 INFO    ] Checking for camera pi updates...
[2026-06-19 12:22:23,183.183 INFO    ] 200
[2026-06-19 12:22:23,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:23,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:22:23,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:22:23,265.265 INFO    ] No camera update needed
[2026-06-19 12:22:23,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:22:23,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:22:23,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:22:23,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:22:25,324.324 INFO    ] ================================================
[2026-06-19 12:22:25,340.340 INFO    ] Launching Daemon at Fri Jun 19 12:22:25 IST 2026
[2026-06-19 12:22:25,351.351 INFO    ] ================================================
[2026-06-19 12:22:25,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:22:25
[2026-06-19 12:22:26,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:22:26,772.772 INFO    ] Initializing speech engine...
[2026-06-19 12:22:26,781.781 INFO    ] 2026-06-19 12:22:26
[2026-06-19 12:22:27,078.078 INFO    ] 2026-06-19 12:22:27
[2026-06-19 12:22:27,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:22:27,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:22:27,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:22:27,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:22:27,477.477 INFO    ] time= 19/06/2026 12:22:27
[2026-06-19 12:22:27,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:22:27,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:22:27,584.584 INFO    ] No existing commands found in stream
[2026-06-19 12:22:32,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:22:32,600.600 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 12:22:36,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:22:36,911.911 INFO    ] Checking for system updates...
[2026-06-19 12:22:36,948.948 INFO    ] 200
[2026-06-19 12:22:36,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:37,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:22:37,016.016 INFO    ] No update needed
[2026-06-19 12:22:37,020.020 INFO    ] Checking for camera pi updates...
[2026-06-19 12:22:37,055.055 INFO    ] 200
[2026-06-19 12:22:37,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:37,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:22:37,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:22:37,145.145 INFO    ] No camera update needed
[2026-06-19 12:22:37,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:22:37,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:22:37,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:22:37,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:22:39,203.203 INFO    ] ================================================
[2026-06-19 12:22:39,219.219 INFO    ] Launching Daemon at Fri Jun 19 12:22:39 IST 2026
[2026-06-19 12:22:39,229.229 INFO    ] ================================================
[2026-06-19 12:22:39,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:22:39
[2026-06-19 12:22:40,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:22:40,660.660 INFO    ] Initializing speech engine...
[2026-06-19 12:22:40,667.667 INFO    ] 2026-06-19 12:22:40
[2026-06-19 12:22:40,926.926 INFO    ] 2026-06-19 12:22:40
[2026-06-19 12:22:40,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:22:41,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:22:41,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:22:41,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:22:41,367.367 INFO    ] time= 19/06/2026 12:22:41
[2026-06-19 12:22:41,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:22:41,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:22:41,624.624 INFO    ] No existing commands found in stream
[2026-06-19 12:22:46,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:22:46,641.641 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 12:22:50,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:22:50,302.302 INFO    ] Checking for system updates...
[2026-06-19 12:22:50,338.338 INFO    ] 200
[2026-06-19 12:22:50,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:50,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:22:50,402.402 INFO    ] No update needed
[2026-06-19 12:22:50,404.404 INFO    ] Checking for camera pi updates...
[2026-06-19 12:22:50,438.438 INFO    ] 200
[2026-06-19 12:22:50,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:22:50,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:22:50,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:22:50,524.524 INFO    ] No camera update needed
[2026-06-19 12:22:50,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:22:50,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:22:50,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:22:50,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:22:52,581.581 INFO    ] ================================================
[2026-06-19 12:22:52,597.597 INFO    ] Launching Daemon at Fri Jun 19 12:22:52 IST 2026
[2026-06-19 12:22:52,609.609 INFO    ] ================================================
[2026-06-19 12:22:53,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:22:53
[2026-06-19 12:22:53,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:22:54,061.061 INFO    ] Initializing speech engine...
[2026-06-19 12:22:54,070.070 INFO    ] 2026-06-19 12:22:54
[2026-06-19 12:22:54,372.372 INFO    ] 2026-06-19 12:22:54
[2026-06-19 12:22:54,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:22:54,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:22:54,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:22:54,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:22:54,792.792 INFO    ] time= 19/06/2026 12:22:54
[2026-06-19 12:22:54,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:22:54,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:22:54,880.880 INFO    ] No existing commands found in stream
[2026-06-19 12:22:59,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:22:59,896.896 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 12:23:01,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:23:01,664.664 INFO    ] Checking for system updates...
[2026-06-19 12:23:01,700.700 INFO    ] 200
[2026-06-19 12:23:01,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:01,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:23:01,764.764 INFO    ] No update needed
[2026-06-19 12:23:01,767.767 INFO    ] Checking for camera pi updates...
[2026-06-19 12:23:01,805.805 INFO    ] 200
[2026-06-19 12:23:01,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:01,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:23:01,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:23:01,880.880 INFO    ] No camera update needed
[2026-06-19 12:23:01,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:23:01,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:23:01,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:23:01,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:23:03,936.936 INFO    ] ================================================
[2026-06-19 12:23:03,952.952 INFO    ] Launching Daemon at Fri Jun 19 12:23:03 IST 2026
[2026-06-19 12:23:03,963.963 INFO    ] ================================================
[2026-06-19 12:23:04,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:23:04
[2026-06-19 12:23:05,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:23:05,439.439 INFO    ] Initializing speech engine...
[2026-06-19 12:23:05,447.447 INFO    ] 2026-06-19 12:23:05
[2026-06-19 12:23:05,707.707 INFO    ] 2026-06-19 12:23:05
[2026-06-19 12:23:05,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:23:05,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:23:05,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:23:06,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:23:06,234.234 INFO    ] time= 19/06/2026 12:23:06
[2026-06-19 12:23:06,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:23:06,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:23:06,404.404 INFO    ] No existing commands found in stream
[2026-06-19 12:23:11,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:23:11,421.421 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 12:23:12,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:23:12,841.841 INFO    ] Checking for system updates...
[2026-06-19 12:23:12,878.878 INFO    ] 200
[2026-06-19 12:23:12,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:12,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:23:12,943.943 INFO    ] No update needed
[2026-06-19 12:23:12,946.946 INFO    ] Checking for camera pi updates...
[2026-06-19 12:23:12,979.979 INFO    ] 200
[2026-06-19 12:23:12,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:13,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:23:13,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:23:13,079.079 INFO    ] No camera update needed
[2026-06-19 12:23:13,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:23:13,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:23:13,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:23:13,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:23:15,136.136 INFO    ] ================================================
[2026-06-19 12:23:15,155.155 INFO    ] Launching Daemon at Fri Jun 19 12:23:15 IST 2026
[2026-06-19 12:23:15,166.166 INFO    ] ================================================
[2026-06-19 12:23:15,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:23:15
[2026-06-19 12:23:16,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:23:16,810.810 INFO    ] Initializing speech engine...
[2026-06-19 12:23:16,820.820 INFO    ] 2026-06-19 12:23:16
[2026-06-19 12:23:17,098.098 INFO    ] 2026-06-19 12:23:17
[2026-06-19 12:23:17,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:23:17,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:23:17,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:23:17,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:23:17,586.586 INFO    ] time= 19/06/2026 12:23:17
[2026-06-19 12:23:17,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:23:17,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:23:17,818.818 INFO    ] No existing commands found in stream
[2026-06-19 12:23:22,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:23:22,853.853 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 12:23:26,148.148 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:23:26,151.151 INFO    ] Checking for system updates...
[2026-06-19 12:23:26,188.188 INFO    ] 200
[2026-06-19 12:23:26,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:26,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:23:26,257.257 INFO    ] No update needed
[2026-06-19 12:23:26,260.260 INFO    ] Checking for camera pi updates...
[2026-06-19 12:23:26,293.293 INFO    ] 200
[2026-06-19 12:23:26,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:26,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:23:26,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:23:26,486.486 INFO    ] No camera update needed
[2026-06-19 12:23:26,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:23:26,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:23:26,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:23:26,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:23:28,543.543 INFO    ] ================================================
[2026-06-19 12:23:28,559.559 INFO    ] Launching Daemon at Fri Jun 19 12:23:28 IST 2026
[2026-06-19 12:23:28,571.571 INFO    ] ================================================
[2026-06-19 12:23:29,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:23:29
[2026-06-19 12:23:29,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:23:29,994.994 INFO    ] Initializing speech engine...
[2026-06-19 12:23:30,003.003 INFO    ] 2026-06-19 12:23:29
[2026-06-19 12:23:30,298.298 INFO    ] 2026-06-19 12:23:30
[2026-06-19 12:23:30,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:23:30,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:23:30,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:23:30,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:23:30,723.723 INFO    ] time= 19/06/2026 12:23:30
[2026-06-19 12:23:30,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:23:30,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:23:30,900.900 INFO    ] No existing commands found in stream
[2026-06-19 12:23:35,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:23:35,928.928 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 12:23:38,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:23:38,283.283 INFO    ] Checking for system updates...
[2026-06-19 12:23:38,318.318 INFO    ] 200
[2026-06-19 12:23:38,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:38,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:23:38,383.383 INFO    ] No update needed
[2026-06-19 12:23:38,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 12:23:38,425.425 INFO    ] 200
[2026-06-19 12:23:38,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:38,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:23:38,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:23:38,515.515 INFO    ] No camera update needed
[2026-06-19 12:23:38,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:23:38,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:23:38,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:23:38,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:23:40,574.574 INFO    ] ================================================
[2026-06-19 12:23:40,590.590 INFO    ] Launching Daemon at Fri Jun 19 12:23:40 IST 2026
[2026-06-19 12:23:40,601.601 INFO    ] ================================================
[2026-06-19 12:23:41,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:23:41
[2026-06-19 12:23:41,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:23:42,203.203 INFO    ] Initializing speech engine...
[2026-06-19 12:23:42,212.212 INFO    ] 2026-06-19 12:23:42
[2026-06-19 12:23:42,508.508 INFO    ] 2026-06-19 12:23:42
[2026-06-19 12:23:42,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:23:42,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:23:42,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:23:43,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:23:43,042.042 INFO    ] time= 19/06/2026 12:23:43
[2026-06-19 12:23:43,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:23:43,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:23:43,232.232 INFO    ] No existing commands found in stream
[2026-06-19 12:23:48,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:23:48,266.266 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 12:23:51,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:23:51,374.374 INFO    ] Checking for system updates...
[2026-06-19 12:23:51,412.412 INFO    ] 200
[2026-06-19 12:23:51,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:51,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:23:51,472.472 INFO    ] No update needed
[2026-06-19 12:23:51,474.474 INFO    ] Checking for camera pi updates...
[2026-06-19 12:23:51,509.509 INFO    ] 200
[2026-06-19 12:23:51,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:23:51,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:23:51,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:23:51,602.602 INFO    ] No camera update needed
[2026-06-19 12:23:51,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:23:51,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:23:51,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:23:51,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:23:53,662.662 INFO    ] ================================================
[2026-06-19 12:23:53,679.679 INFO    ] Launching Daemon at Fri Jun 19 12:23:53 IST 2026
[2026-06-19 12:23:53,691.691 INFO    ] ================================================
[2026-06-19 12:23:54,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:23:54
[2026-06-19 12:23:54,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:23:55,157.157 INFO    ] Initializing speech engine...
[2026-06-19 12:23:55,166.166 INFO    ] 2026-06-19 12:23:55
[2026-06-19 12:23:55,442.442 INFO    ] 2026-06-19 12:23:55
[2026-06-19 12:23:55,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:23:55,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:23:55,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:23:55,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:23:55,988.988 INFO    ] time= 19/06/2026 12:23:55
[2026-06-19 12:23:56,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:23:56,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:23:56,168.168 INFO    ] No existing commands found in stream
[2026-06-19 12:24:01,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:24:01,208.208 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 12:24:04,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:24:04,312.312 INFO    ] Checking for system updates...
[2026-06-19 12:24:04,354.354 INFO    ] 200
[2026-06-19 12:24:04,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:04,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:24:04,414.414 INFO    ] No update needed
[2026-06-19 12:24:04,417.417 INFO    ] Checking for camera pi updates...
[2026-06-19 12:24:04,456.456 INFO    ] 200
[2026-06-19 12:24:04,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:04,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:24:04,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:24:04,562.562 INFO    ] No camera update needed
[2026-06-19 12:24:04,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:24:04,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:24:04,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:24:04,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:24:06,622.622 INFO    ] ================================================
[2026-06-19 12:24:06,638.638 INFO    ] Launching Daemon at Fri Jun 19 12:24:06 IST 2026
[2026-06-19 12:24:06,649.649 INFO    ] ================================================
[2026-06-19 12:24:07,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:24:07
[2026-06-19 12:24:07,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:24:08,136.136 INFO    ] Initializing speech engine...
[2026-06-19 12:24:08,142.142 INFO    ] 2026-06-19 12:24:08
[2026-06-19 12:24:08,405.405 INFO    ] 2026-06-19 12:24:08
[2026-06-19 12:24:08,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:24:08,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:24:08,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:24:08,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:24:08,871.871 INFO    ] time= 19/06/2026 12:24:08
[2026-06-19 12:24:08,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:24:08,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:24:09,087.087 INFO    ] No existing commands found in stream
[2026-06-19 12:24:14,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:24:14,118.118 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 12:24:16,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:24:16,383.383 INFO    ] Checking for system updates...
[2026-06-19 12:24:16,423.423 INFO    ] 200
[2026-06-19 12:24:16,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:16,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:24:16,481.481 INFO    ] No update needed
[2026-06-19 12:24:16,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 12:24:16,524.524 INFO    ] 200
[2026-06-19 12:24:16,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:16,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:24:16,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:24:16,613.613 INFO    ] No camera update needed
[2026-06-19 12:24:16,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:24:16,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:24:16,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:24:16,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:24:18,672.672 INFO    ] ================================================
[2026-06-19 12:24:18,688.688 INFO    ] Launching Daemon at Fri Jun 19 12:24:18 IST 2026
[2026-06-19 12:24:18,699.699 INFO    ] ================================================
[2026-06-19 12:24:19,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:24:19
[2026-06-19 12:24:19,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:24:20,153.153 INFO    ] Initializing speech engine...
[2026-06-19 12:24:20,159.159 INFO    ] 2026-06-19 12:24:20
[2026-06-19 12:24:20,458.458 INFO    ] 2026-06-19 12:24:20
[2026-06-19 12:24:20,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:24:20,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:24:20,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:24:21,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:24:22,029.029 INFO    ] time= 19/06/2026 12:24:22
[2026-06-19 12:24:22,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:24:22,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:24:22,112.112 INFO    ] No existing commands found in stream
[2026-06-19 12:24:27,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:24:27,127.127 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 12:24:29,006.006 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:24:29,008.008 INFO    ] Checking for system updates...
[2026-06-19 12:24:29,046.046 INFO    ] 200
[2026-06-19 12:24:29,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:29,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:24:29,108.108 INFO    ] No update needed
[2026-06-19 12:24:29,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 12:24:29,145.145 INFO    ] 200
[2026-06-19 12:24:29,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:29,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:24:29,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:24:29,242.242 INFO    ] No camera update needed
[2026-06-19 12:24:29,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:24:29,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:24:29,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:24:29,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:24:31,299.299 INFO    ] ================================================
[2026-06-19 12:24:31,314.314 INFO    ] Launching Daemon at Fri Jun 19 12:24:31 IST 2026
[2026-06-19 12:24:31,325.325 INFO    ] ================================================
[2026-06-19 12:24:31,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:24:31
[2026-06-19 12:24:32,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:24:32,837.837 INFO    ] Initializing speech engine...
[2026-06-19 12:24:32,847.847 INFO    ] 2026-06-19 12:24:32
[2026-06-19 12:24:33,120.120 INFO    ] 2026-06-19 12:24:33
[2026-06-19 12:24:33,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:24:33,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:24:33,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:24:33,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:24:33,676.676 INFO    ] time= 19/06/2026 12:24:33
[2026-06-19 12:24:33,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:24:33,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:24:33,833.833 INFO    ] No existing commands found in stream
[2026-06-19 12:24:38,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:24:38,855.855 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 12:24:39,672.672 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:24:39,675.675 INFO    ] Checking for system updates...
[2026-06-19 12:24:39,711.711 INFO    ] 200
[2026-06-19 12:24:39,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:39,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:24:39,777.777 INFO    ] No update needed
[2026-06-19 12:24:39,779.779 INFO    ] Checking for camera pi updates...
[2026-06-19 12:24:39,812.812 INFO    ] 200
[2026-06-19 12:24:39,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:39,861.861 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:24:39,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:24:39,909.909 INFO    ] No camera update needed
[2026-06-19 12:24:39,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:24:39,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:24:39,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:24:39,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:24:41,965.965 INFO    ] ================================================
[2026-06-19 12:24:41,980.980 INFO    ] Launching Daemon at Fri Jun 19 12:24:41 IST 2026
[2026-06-19 12:24:41,991.991 INFO    ] ================================================
[2026-06-19 12:24:42,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:24:42
[2026-06-19 12:24:43,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:24:43,431.431 INFO    ] Initializing speech engine...
[2026-06-19 12:24:43,441.441 INFO    ] 2026-06-19 12:24:43
[2026-06-19 12:24:43,711.711 INFO    ] 2026-06-19 12:24:43
[2026-06-19 12:24:43,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:24:43,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:24:43,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:24:44,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:24:44,136.136 INFO    ] time= 19/06/2026 12:24:44
[2026-06-19 12:24:44,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:24:44,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:24:44,222.222 INFO    ] No existing commands found in stream
[2026-06-19 12:24:49,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:24:49,238.238 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 12:24:51,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:24:51,929.929 INFO    ] Checking for system updates...
[2026-06-19 12:24:51,965.965 INFO    ] 200
[2026-06-19 12:24:51,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:52,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:24:52,030.030 INFO    ] No update needed
[2026-06-19 12:24:52,032.032 INFO    ] Checking for camera pi updates...
[2026-06-19 12:24:52,066.066 INFO    ] 200
[2026-06-19 12:24:52,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:24:52,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:24:52,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:24:52,154.154 INFO    ] No camera update needed
[2026-06-19 12:24:52,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:24:52,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:24:52,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:24:52,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:24:54,210.210 INFO    ] ================================================
[2026-06-19 12:24:54,226.226 INFO    ] Launching Daemon at Fri Jun 19 12:24:54 IST 2026
[2026-06-19 12:24:54,237.237 INFO    ] ================================================
[2026-06-19 12:24:54,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:24:54
[2026-06-19 12:24:55,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:24:55,768.768 INFO    ] Initializing speech engine...
[2026-06-19 12:24:55,780.780 INFO    ] 2026-06-19 12:24:55
[2026-06-19 12:24:56,089.089 INFO    ] 2026-06-19 12:24:56
[2026-06-19 12:24:56,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:24:56,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:24:56,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:24:56,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:24:56,611.611 INFO    ] time= 19/06/2026 12:24:56
[2026-06-19 12:24:56,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:24:56,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:24:56,773.773 INFO    ] No existing commands found in stream
[2026-06-19 12:25:01,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:25:01,812.812 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 12:25:03,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:25:03,899.899 INFO    ] Checking for system updates...
[2026-06-19 12:25:03,941.941 INFO    ] 200
[2026-06-19 12:25:03,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:03,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:25:04,000.000 INFO    ] No update needed
[2026-06-19 12:25:04,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 12:25:04,038.038 INFO    ] 200
[2026-06-19 12:25:04,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:04,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:25:04,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:25:04,139.139 INFO    ] No camera update needed
[2026-06-19 12:25:04,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:25:04,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:25:04,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:25:04,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:25:06,197.197 INFO    ] ================================================
[2026-06-19 12:25:06,214.214 INFO    ] Launching Daemon at Fri Jun 19 12:25:06 IST 2026
[2026-06-19 12:25:06,226.226 INFO    ] ================================================
[2026-06-19 12:25:06,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:25:06
[2026-06-19 12:25:07,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:25:07,677.677 INFO    ] Initializing speech engine...
[2026-06-19 12:25:07,687.687 INFO    ] 2026-06-19 12:25:07
[2026-06-19 12:25:07,938.938 INFO    ] 2026-06-19 12:25:07
[2026-06-19 12:25:07,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:25:08,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:25:08,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:25:08,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:25:08,386.386 INFO    ] time= 19/06/2026 12:25:08
[2026-06-19 12:25:08,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:25:08,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:25:08,569.569 INFO    ] No existing commands found in stream
[2026-06-19 12:25:13,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:25:13,584.584 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 12:25:14,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:25:14,881.881 INFO    ] Checking for system updates...
[2026-06-19 12:25:14,920.920 INFO    ] 200
[2026-06-19 12:25:14,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:14,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:25:14,985.985 INFO    ] No update needed
[2026-06-19 12:25:14,987.987 INFO    ] Checking for camera pi updates...
[2026-06-19 12:25:15,021.021 INFO    ] 200
[2026-06-19 12:25:15,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:15,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:25:15,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:25:15,110.110 INFO    ] No camera update needed
[2026-06-19 12:25:15,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:25:15,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:25:15,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:25:15,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:25:17,168.168 INFO    ] ================================================
[2026-06-19 12:25:17,183.183 INFO    ] Launching Daemon at Fri Jun 19 12:25:17 IST 2026
[2026-06-19 12:25:17,194.194 INFO    ] ================================================
[2026-06-19 12:25:17,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:25:17
[2026-06-19 12:25:18,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:25:18,620.620 INFO    ] Initializing speech engine...
[2026-06-19 12:25:18,636.636 INFO    ] 2026-06-19 12:25:18
[2026-06-19 12:25:18,922.922 INFO    ] 2026-06-19 12:25:18
[2026-06-19 12:25:18,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:25:19,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:25:19,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:25:19,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:25:19,347.347 INFO    ] time= 19/06/2026 12:25:19
[2026-06-19 12:25:19,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:25:19,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:25:19,524.524 INFO    ] No existing commands found in stream
[2026-06-19 12:25:24,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:25:24,557.557 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 12:25:27,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:25:27,445.445 INFO    ] Checking for system updates...
[2026-06-19 12:25:27,486.486 INFO    ] 200
[2026-06-19 12:25:27,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:27,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:25:27,546.546 INFO    ] No update needed
[2026-06-19 12:25:27,549.549 INFO    ] Checking for camera pi updates...
[2026-06-19 12:25:27,584.584 INFO    ] 200
[2026-06-19 12:25:27,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:27,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:25:27,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:25:27,681.681 INFO    ] No camera update needed
[2026-06-19 12:25:27,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:25:27,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:25:27,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:25:27,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:25:29,740.740 INFO    ] ================================================
[2026-06-19 12:25:29,756.756 INFO    ] Launching Daemon at Fri Jun 19 12:25:29 IST 2026
[2026-06-19 12:25:29,768.768 INFO    ] ================================================
[2026-06-19 12:25:30,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:25:30
[2026-06-19 12:25:30,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:25:31,215.215 INFO    ] Initializing speech engine...
[2026-06-19 12:25:31,225.225 INFO    ] 2026-06-19 12:25:31
[2026-06-19 12:25:31,487.487 INFO    ] 2026-06-19 12:25:31
[2026-06-19 12:25:31,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:25:31,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:25:31,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:25:31,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:25:31,953.953 INFO    ] time= 19/06/2026 12:25:31
[2026-06-19 12:25:32,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:25:32,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:25:32,203.203 INFO    ] No existing commands found in stream
[2026-06-19 12:25:37,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:25:37,230.230 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 12:25:37,980.980 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:25:37,983.983 INFO    ] Checking for system updates...
[2026-06-19 12:25:38,019.019 INFO    ] 200
[2026-06-19 12:25:38,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:38,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:25:38,078.078 INFO    ] No update needed
[2026-06-19 12:25:38,080.080 INFO    ] Checking for camera pi updates...
[2026-06-19 12:25:38,114.114 INFO    ] 200
[2026-06-19 12:25:38,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:38,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:25:38,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:25:38,203.203 INFO    ] No camera update needed
[2026-06-19 12:25:38,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:25:38,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:25:38,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:25:38,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:25:40,259.259 INFO    ] ================================================
[2026-06-19 12:25:40,274.274 INFO    ] Launching Daemon at Fri Jun 19 12:25:40 IST 2026
[2026-06-19 12:25:40,286.286 INFO    ] ================================================
[2026-06-19 12:25:40,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:25:40
[2026-06-19 12:25:41,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:25:41,933.933 INFO    ] Initializing speech engine...
[2026-06-19 12:25:41,945.945 INFO    ] 2026-06-19 12:25:41
[2026-06-19 12:25:42,231.231 INFO    ] 2026-06-19 12:25:42
[2026-06-19 12:25:42,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:25:42,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:25:42,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:25:42,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:25:42,761.761 INFO    ] time= 19/06/2026 12:25:42
[2026-06-19 12:25:42,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:25:42,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:25:42,915.915 INFO    ] No existing commands found in stream
[2026-06-19 12:25:47,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:25:47,940.940 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 12:25:52,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:25:52,407.407 INFO    ] Checking for system updates...
[2026-06-19 12:25:52,445.445 INFO    ] 200
[2026-06-19 12:25:52,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:52,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:25:52,513.513 INFO    ] No update needed
[2026-06-19 12:25:52,516.516 INFO    ] Checking for camera pi updates...
[2026-06-19 12:25:52,555.555 INFO    ] 200
[2026-06-19 12:25:52,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:25:52,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:25:52,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:25:52,645.645 INFO    ] No camera update needed
[2026-06-19 12:25:52,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:25:52,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:25:52,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:25:52,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:25:54,704.704 INFO    ] ================================================
[2026-06-19 12:25:54,720.720 INFO    ] Launching Daemon at Fri Jun 19 12:25:54 IST 2026
[2026-06-19 12:25:54,731.731 INFO    ] ================================================
[2026-06-19 12:25:55,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:25:55
[2026-06-19 12:25:55,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:25:56,167.167 INFO    ] Initializing speech engine...
[2026-06-19 12:25:56,186.186 INFO    ] 2026-06-19 12:25:56
[2026-06-19 12:25:56,444.444 INFO    ] 2026-06-19 12:25:56
[2026-06-19 12:25:56,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:25:56,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:25:56,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:25:56,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:25:56,907.907 INFO    ] time= 19/06/2026 12:25:56
[2026-06-19 12:25:56,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:25:57,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:25:57,151.151 INFO    ] No existing commands found in stream
[2026-06-19 12:26:02,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:26:02,171.171 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-19 12:26:04,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:26:04,224.224 INFO    ] Checking for system updates...
[2026-06-19 12:26:04,259.259 INFO    ] 200
[2026-06-19 12:26:04,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:04,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:26:04,317.317 INFO    ] No update needed
[2026-06-19 12:26:04,320.320 INFO    ] Checking for camera pi updates...
[2026-06-19 12:26:04,354.354 INFO    ] 200
[2026-06-19 12:26:04,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:04,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:26:04,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:26:04,444.444 INFO    ] No camera update needed
[2026-06-19 12:26:04,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:26:04,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:26:04,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:26:04,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:26:06,501.501 INFO    ] ================================================
[2026-06-19 12:26:06,517.517 INFO    ] Launching Daemon at Fri Jun 19 12:26:06 IST 2026
[2026-06-19 12:26:06,527.527 INFO    ] ================================================
[2026-06-19 12:26:07,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:26:07
[2026-06-19 12:26:07,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:26:08,010.010 INFO    ] Initializing speech engine...
[2026-06-19 12:26:08,019.019 INFO    ] 2026-06-19 12:26:08
[2026-06-19 12:26:08,316.316 INFO    ] 2026-06-19 12:26:08
[2026-06-19 12:26:08,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:26:08,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:26:08,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:26:08,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:26:08,816.816 INFO    ] time= 19/06/2026 12:26:08
[2026-06-19 12:26:08,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:26:08,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:26:08,990.990 INFO    ] No existing commands found in stream
[2026-06-19 12:26:14,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:26:14,006.006 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 12:26:16,960.960 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:26:16,963.963 INFO    ] Checking for system updates...
[2026-06-19 12:26:17,000.000 INFO    ] 200
[2026-06-19 12:26:17,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:17,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:26:17,057.057 INFO    ] No update needed
[2026-06-19 12:26:17,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 12:26:17,093.093 INFO    ] 200
[2026-06-19 12:26:17,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:17,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:26:17,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:26:17,179.179 INFO    ] No camera update needed
[2026-06-19 12:26:17,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:26:17,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:26:17,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:26:17,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:26:19,242.242 INFO    ] ================================================
[2026-06-19 12:26:19,258.258 INFO    ] Launching Daemon at Fri Jun 19 12:26:19 IST 2026
[2026-06-19 12:26:19,269.269 INFO    ] ================================================
[2026-06-19 12:26:19,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:26:19
[2026-06-19 12:26:20,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:26:20,677.677 INFO    ] Initializing speech engine...
[2026-06-19 12:26:20,686.686 INFO    ] 2026-06-19 12:26:20
[2026-06-19 12:26:20,983.983 INFO    ] 2026-06-19 12:26:20
[2026-06-19 12:26:21,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:26:21,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:26:21,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:26:21,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:26:21,366.366 INFO    ] time= 19/06/2026 12:26:21
[2026-06-19 12:26:21,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:26:21,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:26:21,493.493 INFO    ] No existing commands found in stream
[2026-06-19 12:26:26,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:26:26,512.512 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 12:26:30,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:26:30,341.341 INFO    ] Checking for system updates...
[2026-06-19 12:26:30,377.377 INFO    ] 200
[2026-06-19 12:26:30,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:30,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:26:30,434.434 INFO    ] No update needed
[2026-06-19 12:26:30,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 12:26:30,471.471 INFO    ] 200
[2026-06-19 12:26:30,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:30,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:26:30,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:26:30,557.557 INFO    ] No camera update needed
[2026-06-19 12:26:30,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:26:30,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:26:30,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:26:30,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:26:32,614.614 INFO    ] ================================================
[2026-06-19 12:26:32,630.630 INFO    ] Launching Daemon at Fri Jun 19 12:26:32 IST 2026
[2026-06-19 12:26:32,641.641 INFO    ] ================================================
[2026-06-19 12:26:33,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:26:33
[2026-06-19 12:26:33,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:26:34,098.098 INFO    ] Initializing speech engine...
[2026-06-19 12:26:34,107.107 INFO    ] 2026-06-19 12:26:34
[2026-06-19 12:26:34,400.400 INFO    ] 2026-06-19 12:26:34
[2026-06-19 12:26:34,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:26:34,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:26:34,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:26:34,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:26:34,818.818 INFO    ] time= 19/06/2026 12:26:34
[2026-06-19 12:26:34,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:26:34,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:26:34,911.911 INFO    ] No existing commands found in stream
[2026-06-19 12:26:39,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:26:39,940.940 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 12:26:41,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:26:41,230.230 INFO    ] Checking for system updates...
[2026-06-19 12:26:41,267.267 INFO    ] 200
[2026-06-19 12:26:41,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:41,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:26:41,325.325 INFO    ] No update needed
[2026-06-19 12:26:41,328.328 INFO    ] Checking for camera pi updates...
[2026-06-19 12:26:41,363.363 INFO    ] 200
[2026-06-19 12:26:41,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:41,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:26:41,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:26:41,448.448 INFO    ] No camera update needed
[2026-06-19 12:26:41,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:26:41,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:26:41,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:26:41,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:26:43,502.502 INFO    ] ================================================
[2026-06-19 12:26:43,517.517 INFO    ] Launching Daemon at Fri Jun 19 12:26:43 IST 2026
[2026-06-19 12:26:43,528.528 INFO    ] ================================================
[2026-06-19 12:26:44,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:26:44
[2026-06-19 12:26:44,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:26:44,939.939 INFO    ] Initializing speech engine...
[2026-06-19 12:26:44,945.945 INFO    ] 2026-06-19 12:26:44
[2026-06-19 12:26:45,246.246 INFO    ] 2026-06-19 12:26:45
[2026-06-19 12:26:45,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:26:45,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:26:45,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:26:45,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:26:45,668.668 INFO    ] time= 19/06/2026 12:26:45
[2026-06-19 12:26:45,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:26:45,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:26:45,757.757 INFO    ] No existing commands found in stream
[2026-06-19 12:26:50,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:26:50,790.790 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 12:26:54,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:26:54,804.804 INFO    ] Checking for system updates...
[2026-06-19 12:26:54,840.840 INFO    ] 200
[2026-06-19 12:26:54,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:54,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:26:54,900.900 INFO    ] No update needed
[2026-06-19 12:26:54,903.903 INFO    ] Checking for camera pi updates...
[2026-06-19 12:26:54,936.936 INFO    ] 200
[2026-06-19 12:26:54,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:26:54,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:26:55,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:26:55,032.032 INFO    ] No camera update needed
[2026-06-19 12:26:55,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:26:55,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:26:55,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:26:55,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:26:57,088.088 INFO    ] ================================================
[2026-06-19 12:26:57,103.103 INFO    ] Launching Daemon at Fri Jun 19 12:26:57 IST 2026
[2026-06-19 12:26:57,114.114 INFO    ] ================================================
[2026-06-19 12:26:57,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:26:57
[2026-06-19 12:26:58,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:26:58,662.662 INFO    ] Initializing speech engine...
[2026-06-19 12:26:58,674.674 INFO    ] 2026-06-19 12:26:58
[2026-06-19 12:26:58,983.983 INFO    ] 2026-06-19 12:26:58
[2026-06-19 12:26:59,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:26:59,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:26:59,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:26:59,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:26:59,496.496 INFO    ] time= 19/06/2026 12:26:59
[2026-06-19 12:26:59,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:26:59,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:26:59,670.670 INFO    ] No existing commands found in stream
[2026-06-19 12:27:04,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:27:04,700.700 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 12:27:05,706.706 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:27:05,709.709 INFO    ] Checking for system updates...
[2026-06-19 12:27:05,747.747 INFO    ] 200
[2026-06-19 12:27:05,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:05,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:27:05,807.807 INFO    ] No update needed
[2026-06-19 12:27:05,810.810 INFO    ] Checking for camera pi updates...
[2026-06-19 12:27:05,849.849 INFO    ] 200
[2026-06-19 12:27:05,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:05,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:27:05,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:27:05,974.974 INFO    ] No camera update needed
[2026-06-19 12:27:05,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:27:05,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:27:05,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:27:05,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:27:08,033.033 INFO    ] ================================================
[2026-06-19 12:27:08,049.049 INFO    ] Launching Daemon at Fri Jun 19 12:27:08 IST 2026
[2026-06-19 12:27:08,059.059 INFO    ] ================================================
[2026-06-19 12:27:08,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:27:08
[2026-06-19 12:27:09,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:27:09,468.468 INFO    ] Initializing speech engine...
[2026-06-19 12:27:09,491.491 INFO    ] 2026-06-19 12:27:09
[2026-06-19 12:27:09,746.746 INFO    ] 2026-06-19 12:27:09
[2026-06-19 12:27:09,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:27:09,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:27:10,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:27:10,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:27:10,249.249 INFO    ] time= 19/06/2026 12:27:10
[2026-06-19 12:27:10,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:27:10,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:27:10,437.437 INFO    ] No existing commands found in stream
[2026-06-19 12:27:15,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:27:15,472.472 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 12:27:17,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:27:17,502.502 INFO    ] Checking for system updates...
[2026-06-19 12:27:17,538.538 INFO    ] 200
[2026-06-19 12:27:17,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:17,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:27:17,596.596 INFO    ] No update needed
[2026-06-19 12:27:17,598.598 INFO    ] Checking for camera pi updates...
[2026-06-19 12:27:17,636.636 INFO    ] 200
[2026-06-19 12:27:17,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:17,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:27:17,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:27:17,718.718 INFO    ] No camera update needed
[2026-06-19 12:27:17,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:27:17,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:27:17,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:27:17,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:27:19,776.776 INFO    ] ================================================
[2026-06-19 12:27:19,791.791 INFO    ] Launching Daemon at Fri Jun 19 12:27:19 IST 2026
[2026-06-19 12:27:19,802.802 INFO    ] ================================================
[2026-06-19 12:27:20,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:27:20
[2026-06-19 12:27:21,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:27:21,470.470 INFO    ] Initializing speech engine...
[2026-06-19 12:27:21,477.477 INFO    ] 2026-06-19 12:27:21
[2026-06-19 12:27:21,784.784 INFO    ] 2026-06-19 12:27:21
[2026-06-19 12:27:21,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:27:22,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:27:22,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:27:22,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:27:22,297.297 INFO    ] time= 19/06/2026 12:27:22
[2026-06-19 12:27:22,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:27:22,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:27:22,453.453 INFO    ] No existing commands found in stream
[2026-06-19 12:27:27,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:27:27,481.481 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 12:27:28,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:27:28,536.536 INFO    ] Checking for system updates...
[2026-06-19 12:27:28,573.573 INFO    ] 200
[2026-06-19 12:27:28,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:28,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:27:28,633.633 INFO    ] No update needed
[2026-06-19 12:27:28,636.636 INFO    ] Checking for camera pi updates...
[2026-06-19 12:27:28,672.672 INFO    ] 200
[2026-06-19 12:27:28,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:28,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:27:28,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:27:28,765.765 INFO    ] No camera update needed
[2026-06-19 12:27:28,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:27:28,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:27:28,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:27:28,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:27:30,823.823 INFO    ] ================================================
[2026-06-19 12:27:30,839.839 INFO    ] Launching Daemon at Fri Jun 19 12:27:30 IST 2026
[2026-06-19 12:27:30,849.849 INFO    ] ================================================
[2026-06-19 12:27:31,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:27:31
[2026-06-19 12:27:32,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:27:32,358.358 INFO    ] Initializing speech engine...
[2026-06-19 12:27:32,367.367 INFO    ] 2026-06-19 12:27:32
[2026-06-19 12:27:32,666.666 INFO    ] 2026-06-19 12:27:32
[2026-06-19 12:27:32,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:27:32,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:27:32,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:27:33,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:27:33,047.047 INFO    ] time= 19/06/2026 12:27:33
[2026-06-19 12:27:33,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:27:33,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:27:33,135.135 INFO    ] No existing commands found in stream
[2026-06-19 12:27:38,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:27:38,150.150 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 12:27:39,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:27:39,682.682 INFO    ] Checking for system updates...
[2026-06-19 12:27:39,719.719 INFO    ] 200
[2026-06-19 12:27:39,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:39,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:27:39,778.778 INFO    ] No update needed
[2026-06-19 12:27:39,780.780 INFO    ] Checking for camera pi updates...
[2026-06-19 12:27:39,815.815 INFO    ] 200
[2026-06-19 12:27:39,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:39,859.859 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:27:40,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:27:40,004.004 INFO    ] No camera update needed
[2026-06-19 12:27:40,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:27:40,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:27:40,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:27:40,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:27:42,058.058 INFO    ] ================================================
[2026-06-19 12:27:42,074.074 INFO    ] Launching Daemon at Fri Jun 19 12:27:42 IST 2026
[2026-06-19 12:27:42,085.085 INFO    ] ================================================
[2026-06-19 12:27:42,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:27:42
[2026-06-19 12:27:43,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:27:43,533.533 INFO    ] Initializing speech engine...
[2026-06-19 12:27:43,542.542 INFO    ] 2026-06-19 12:27:43
[2026-06-19 12:27:43,792.792 INFO    ] 2026-06-19 12:27:43
[2026-06-19 12:27:43,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:27:44,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:27:44,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:27:44,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:27:44,348.348 INFO    ] time= 19/06/2026 12:27:44
[2026-06-19 12:27:44,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:27:44,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:27:44,536.536 INFO    ] No existing commands found in stream
[2026-06-19 12:27:49,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:27:49,570.570 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 12:27:53,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:27:53,517.517 INFO    ] Checking for system updates...
[2026-06-19 12:27:53,558.558 INFO    ] 200
[2026-06-19 12:27:53,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:53,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:27:53,618.618 INFO    ] No update needed
[2026-06-19 12:27:53,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 12:27:53,658.658 INFO    ] 200
[2026-06-19 12:27:53,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:27:53,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:27:53,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:27:53,743.743 INFO    ] No camera update needed
[2026-06-19 12:27:53,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:27:53,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:27:53,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:27:53,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:27:55,799.799 INFO    ] ================================================
[2026-06-19 12:27:55,814.814 INFO    ] Launching Daemon at Fri Jun 19 12:27:55 IST 2026
[2026-06-19 12:27:55,827.827 INFO    ] ================================================
[2026-06-19 12:27:56,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:27:56
[2026-06-19 12:27:57,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:27:57,271.271 INFO    ] Initializing speech engine...
[2026-06-19 12:27:57,294.294 INFO    ] 2026-06-19 12:27:57
[2026-06-19 12:27:57,547.547 INFO    ] 2026-06-19 12:27:57
[2026-06-19 12:27:57,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:27:57,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:27:57,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:27:57,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:27:58,045.045 INFO    ] time= 19/06/2026 12:27:57
[2026-06-19 12:27:58,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:27:58,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:27:58,271.271 INFO    ] No existing commands found in stream
[2026-06-19 12:28:03,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:28:03,301.301 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 12:28:06,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:28:06,363.363 INFO    ] Checking for system updates...
[2026-06-19 12:28:06,400.400 INFO    ] 200
[2026-06-19 12:28:06,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:06,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:28:06,459.459 INFO    ] No update needed
[2026-06-19 12:28:06,462.462 INFO    ] Checking for camera pi updates...
[2026-06-19 12:28:06,497.497 INFO    ] 200
[2026-06-19 12:28:06,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:06,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:28:06,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:28:06,608.608 INFO    ] No camera update needed
[2026-06-19 12:28:06,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:28:06,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:28:06,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:28:06,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:28:08,667.667 INFO    ] ================================================
[2026-06-19 12:28:08,682.682 INFO    ] Launching Daemon at Fri Jun 19 12:28:08 IST 2026
[2026-06-19 12:28:08,693.693 INFO    ] ================================================
[2026-06-19 12:28:09,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:28:09
[2026-06-19 12:28:09,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:28:10,102.102 INFO    ] Initializing speech engine...
[2026-06-19 12:28:10,108.108 INFO    ] 2026-06-19 12:28:10
[2026-06-19 12:28:10,391.391 INFO    ] 2026-06-19 12:28:10
[2026-06-19 12:28:10,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:28:10,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:28:10,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:28:10,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:28:10,904.904 INFO    ] time= 19/06/2026 12:28:10
[2026-06-19 12:28:10,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:28:10,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:28:11,091.091 INFO    ] No existing commands found in stream
[2026-06-19 12:28:16,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:28:16,122.122 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 12:28:16,951.951 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:28:16,954.954 INFO    ] Checking for system updates...
[2026-06-19 12:28:16,993.993 INFO    ] 200
[2026-06-19 12:28:16,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:17,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:28:17,052.052 INFO    ] No update needed
[2026-06-19 12:28:17,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 12:28:17,091.091 INFO    ] 200
[2026-06-19 12:28:17,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:17,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:28:17,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:28:17,174.174 INFO    ] No camera update needed
[2026-06-19 12:28:17,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:28:17,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:28:17,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:28:17,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:28:19,229.229 INFO    ] ================================================
[2026-06-19 12:28:19,244.244 INFO    ] Launching Daemon at Fri Jun 19 12:28:19 IST 2026
[2026-06-19 12:28:19,255.255 INFO    ] ================================================
[2026-06-19 12:28:19,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:28:19
[2026-06-19 12:28:20,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:28:20,799.799 INFO    ] Initializing speech engine...
[2026-06-19 12:28:20,806.806 INFO    ] 2026-06-19 12:28:20
[2026-06-19 12:28:21,053.053 INFO    ] 2026-06-19 12:28:21
[2026-06-19 12:28:21,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:28:21,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:28:21,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:28:21,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:28:21,611.611 INFO    ] time= 19/06/2026 12:28:21
[2026-06-19 12:28:21,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:28:21,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:28:21,767.767 INFO    ] No existing commands found in stream
[2026-06-19 12:28:26,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:28:26,785.785 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 12:28:30,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:28:30,419.419 INFO    ] Checking for system updates...
[2026-06-19 12:28:30,456.456 INFO    ] 200
[2026-06-19 12:28:30,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:30,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:28:30,514.514 INFO    ] No update needed
[2026-06-19 12:28:30,516.516 INFO    ] Checking for camera pi updates...
[2026-06-19 12:28:30,551.551 INFO    ] 200
[2026-06-19 12:28:30,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:30,594.594 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:28:30,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:28:30,638.638 INFO    ] No camera update needed
[2026-06-19 12:28:30,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:28:30,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:28:30,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:28:30,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:28:32,699.699 INFO    ] ================================================
[2026-06-19 12:28:32,716.716 INFO    ] Launching Daemon at Fri Jun 19 12:28:32 IST 2026
[2026-06-19 12:28:32,727.727 INFO    ] ================================================
[2026-06-19 12:28:33,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:28:33
[2026-06-19 12:28:33,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:28:34,182.182 INFO    ] Initializing speech engine...
[2026-06-19 12:28:34,191.191 INFO    ] 2026-06-19 12:28:34
[2026-06-19 12:28:34,447.447 INFO    ] 2026-06-19 12:28:34
[2026-06-19 12:28:34,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:28:34,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:28:34,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:28:34,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:28:34,949.949 INFO    ] time= 19/06/2026 12:28:34
[2026-06-19 12:28:35,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:28:35,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:28:35,155.155 INFO    ] No existing commands found in stream
[2026-06-19 12:28:40,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:28:40,180.180 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 12:28:43,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:28:43,270.270 INFO    ] Checking for system updates...
[2026-06-19 12:28:43,306.306 INFO    ] 200
[2026-06-19 12:28:43,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:43,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:28:43,363.363 INFO    ] No update needed
[2026-06-19 12:28:43,366.366 INFO    ] Checking for camera pi updates...
[2026-06-19 12:28:43,399.399 INFO    ] 200
[2026-06-19 12:28:43,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:43,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:28:43,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:28:43,494.494 INFO    ] No camera update needed
[2026-06-19 12:28:43,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:28:43,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:28:43,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:28:43,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:28:45,551.551 INFO    ] ================================================
[2026-06-19 12:28:45,566.566 INFO    ] Launching Daemon at Fri Jun 19 12:28:45 IST 2026
[2026-06-19 12:28:45,577.577 INFO    ] ================================================
[2026-06-19 12:28:46,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:28:46
[2026-06-19 12:28:46,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:28:46,997.997 INFO    ] Initializing speech engine...
[2026-06-19 12:28:47,012.012 INFO    ] 2026-06-19 12:28:47
[2026-06-19 12:28:47,281.281 INFO    ] 2026-06-19 12:28:47
[2026-06-19 12:28:47,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:28:47,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:28:47,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:28:47,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:28:47,765.765 INFO    ] time= 19/06/2026 12:28:47
[2026-06-19 12:28:47,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:28:47,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:28:47,931.931 INFO    ] No existing commands found in stream
[2026-06-19 12:28:52,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:28:52,965.965 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 12:28:56,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:28:56,940.940 INFO    ] Checking for system updates...
[2026-06-19 12:28:56,977.977 INFO    ] 200
[2026-06-19 12:28:56,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:57,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:28:57,036.036 INFO    ] No update needed
[2026-06-19 12:28:57,039.039 INFO    ] Checking for camera pi updates...
[2026-06-19 12:28:57,077.077 INFO    ] 200
[2026-06-19 12:28:57,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:28:57,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:28:57,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:28:57,176.176 INFO    ] No camera update needed
[2026-06-19 12:28:57,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:28:57,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:28:57,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:28:57,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:28:59,232.232 INFO    ] ================================================
[2026-06-19 12:28:59,247.247 INFO    ] Launching Daemon at Fri Jun 19 12:28:59 IST 2026
[2026-06-19 12:28:59,258.258 INFO    ] ================================================
[2026-06-19 12:28:59,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:28:59
[2026-06-19 12:29:00,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:29:00,719.719 INFO    ] Initializing speech engine...
[2026-06-19 12:29:00,729.729 INFO    ] 2026-06-19 12:29:00
[2026-06-19 12:29:00,986.986 INFO    ] 2026-06-19 12:29:00
[2026-06-19 12:29:01,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:29:01,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:29:01,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:29:01,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:29:01,425.425 INFO    ] time= 19/06/2026 12:29:01
[2026-06-19 12:29:01,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:29:01,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:29:01,633.633 INFO    ] No existing commands found in stream
[2026-06-19 12:29:06,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:29:06,650.650 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 12:29:08,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:29:08,731.731 INFO    ] Checking for system updates...
[2026-06-19 12:29:08,767.767 INFO    ] 200
[2026-06-19 12:29:08,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:08,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:29:08,834.834 INFO    ] No update needed
[2026-06-19 12:29:08,836.836 INFO    ] Checking for camera pi updates...
[2026-06-19 12:29:08,870.870 INFO    ] 200
[2026-06-19 12:29:08,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:08,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:29:08,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:29:08,956.956 INFO    ] No camera update needed
[2026-06-19 12:29:08,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:29:08,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:29:08,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:29:08,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:29:11,016.016 INFO    ] ================================================
[2026-06-19 12:29:11,031.031 INFO    ] Launching Daemon at Fri Jun 19 12:29:11 IST 2026
[2026-06-19 12:29:11,041.041 INFO    ] ================================================
[2026-06-19 12:29:11,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:29:11
[2026-06-19 12:29:12,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:29:12,472.472 INFO    ] Initializing speech engine...
[2026-06-19 12:29:12,481.481 INFO    ] 2026-06-19 12:29:12
[2026-06-19 12:29:12,777.777 INFO    ] 2026-06-19 12:29:12
[2026-06-19 12:29:12,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:29:13,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:29:13,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:29:13,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:29:13,288.288 INFO    ] time= 19/06/2026 12:29:13
[2026-06-19 12:29:13,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:29:13,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:29:13,492.492 INFO    ] No existing commands found in stream
[2026-06-19 12:29:18,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:29:18,507.507 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 12:29:22,204.204 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:29:22,207.207 INFO    ] Checking for system updates...
[2026-06-19 12:29:22,243.243 INFO    ] 200
[2026-06-19 12:29:22,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:22,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:29:22,301.301 INFO    ] No update needed
[2026-06-19 12:29:22,304.304 INFO    ] Checking for camera pi updates...
[2026-06-19 12:29:22,338.338 INFO    ] 200
[2026-06-19 12:29:22,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:22,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:29:22,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:29:22,428.428 INFO    ] No camera update needed
[2026-06-19 12:29:22,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:29:22,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:29:22,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:29:22,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:29:24,487.487 INFO    ] ================================================
[2026-06-19 12:29:24,503.503 INFO    ] Launching Daemon at Fri Jun 19 12:29:24 IST 2026
[2026-06-19 12:29:24,514.514 INFO    ] ================================================
[2026-06-19 12:29:25,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:29:25
[2026-06-19 12:29:25,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:29:25,939.939 INFO    ] Initializing speech engine...
[2026-06-19 12:29:25,952.952 INFO    ] 2026-06-19 12:29:25
[2026-06-19 12:29:26,232.232 INFO    ] 2026-06-19 12:29:26
[2026-06-19 12:29:26,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:29:26,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:29:26,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:29:26,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:29:26,707.707 INFO    ] time= 19/06/2026 12:29:26
[2026-06-19 12:29:26,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:29:26,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:29:26,943.943 INFO    ] No existing commands found in stream
[2026-06-19 12:29:31,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:29:31,966.966 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 12:29:33,250.250 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:29:33,253.253 INFO    ] Checking for system updates...
[2026-06-19 12:29:33,290.290 INFO    ] 200
[2026-06-19 12:29:33,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:33,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:29:33,355.355 INFO    ] No update needed
[2026-06-19 12:29:33,358.358 INFO    ] Checking for camera pi updates...
[2026-06-19 12:29:33,396.396 INFO    ] 200
[2026-06-19 12:29:33,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:33,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:29:33,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:29:33,490.490 INFO    ] No camera update needed
[2026-06-19 12:29:33,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:29:33,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:29:33,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:29:33,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:29:35,547.547 INFO    ] ================================================
[2026-06-19 12:29:35,562.562 INFO    ] Launching Daemon at Fri Jun 19 12:29:35 IST 2026
[2026-06-19 12:29:35,574.574 INFO    ] ================================================
[2026-06-19 12:29:36,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:29:36
[2026-06-19 12:29:36,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:29:36,994.994 INFO    ] Initializing speech engine...
[2026-06-19 12:29:37,000.000 INFO    ] 2026-06-19 12:29:36
[2026-06-19 12:29:37,298.298 INFO    ] 2026-06-19 12:29:37
[2026-06-19 12:29:37,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:29:37,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:29:37,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:29:37,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:29:37,682.682 INFO    ] time= 19/06/2026 12:29:37
[2026-06-19 12:29:37,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:29:37,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:29:37,808.808 INFO    ] No existing commands found in stream
[2026-06-19 12:29:42,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:29:42,821.821 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 12:29:43,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:29:43,300.300 INFO    ] Checking for system updates...
[2026-06-19 12:29:43,335.335 INFO    ] 200
[2026-06-19 12:29:43,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:43,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:29:43,393.393 INFO    ] No update needed
[2026-06-19 12:29:43,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 12:29:43,433.433 INFO    ] 200
[2026-06-19 12:29:43,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:43,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:29:43,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:29:43,624.624 INFO    ] No camera update needed
[2026-06-19 12:29:43,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:29:43,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:29:43,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:29:43,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:29:45,680.680 INFO    ] ================================================
[2026-06-19 12:29:45,696.696 INFO    ] Launching Daemon at Fri Jun 19 12:29:45 IST 2026
[2026-06-19 12:29:45,707.707 INFO    ] ================================================
[2026-06-19 12:29:46,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:29:46
[2026-06-19 12:29:46,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:29:47,113.113 INFO    ] Initializing speech engine...
[2026-06-19 12:29:47,122.122 INFO    ] 2026-06-19 12:29:47
[2026-06-19 12:29:47,395.395 INFO    ] 2026-06-19 12:29:47
[2026-06-19 12:29:47,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:29:47,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:29:47,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:29:47,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:29:47,774.774 INFO    ] time= 19/06/2026 12:29:47
[2026-06-19 12:29:47,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:29:47,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:29:47,957.957 INFO    ] No existing commands found in stream
[2026-06-19 12:29:52,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:29:52,988.988 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 12:29:56,249.249 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:29:56,252.252 INFO    ] Checking for system updates...
[2026-06-19 12:29:56,287.287 INFO    ] 200
[2026-06-19 12:29:56,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:56,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:29:56,346.346 INFO    ] No update needed
[2026-06-19 12:29:56,348.348 INFO    ] Checking for camera pi updates...
[2026-06-19 12:29:56,387.387 INFO    ] 200
[2026-06-19 12:29:56,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:29:56,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:29:56,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:29:56,478.478 INFO    ] No camera update needed
[2026-06-19 12:29:56,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:29:56,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:29:56,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:29:56,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:29:58,534.534 INFO    ] ================================================
[2026-06-19 12:29:58,549.549 INFO    ] Launching Daemon at Fri Jun 19 12:29:58 IST 2026
[2026-06-19 12:29:58,560.560 INFO    ] ================================================
[2026-06-19 12:29:59,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:29:59
[2026-06-19 12:29:59,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:30:00,028.028 INFO    ] Initializing speech engine...
[2026-06-19 12:30:00,036.036 INFO    ] 2026-06-19 12:30:00
[2026-06-19 12:30:00,294.294 INFO    ] 2026-06-19 12:30:00
[2026-06-19 12:30:00,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:30:00,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:30:00,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:30:00,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:30:00,773.773 INFO    ] time= 19/06/2026 12:30:00
[2026-06-19 12:30:00,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:30:00,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:30:00,990.990 INFO    ] No existing commands found in stream
[2026-06-19 12:30:06,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:30:06,009.009 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 12:30:07,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:30:07,328.328 INFO    ] Checking for system updates...
[2026-06-19 12:30:07,368.368 INFO    ] 200
[2026-06-19 12:30:07,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:07,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:30:07,426.426 INFO    ] No update needed
[2026-06-19 12:30:07,429.429 INFO    ] Checking for camera pi updates...
[2026-06-19 12:30:07,462.462 INFO    ] 200
[2026-06-19 12:30:07,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:07,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:30:07,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:30:07,555.555 INFO    ] No camera update needed
[2026-06-19 12:30:07,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:30:07,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:30:07,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:30:07,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:30:09,610.610 INFO    ] ================================================
[2026-06-19 12:30:09,627.627 INFO    ] Launching Daemon at Fri Jun 19 12:30:09 IST 2026
[2026-06-19 12:30:09,638.638 INFO    ] ================================================
[2026-06-19 12:30:10,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:30:10
[2026-06-19 12:30:10,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:30:11,104.104 INFO    ] Initializing speech engine...
[2026-06-19 12:30:11,113.113 INFO    ] 2026-06-19 12:30:11
[2026-06-19 12:30:11,373.373 INFO    ] 2026-06-19 12:30:11
[2026-06-19 12:30:11,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:30:11,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:30:11,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:30:11,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:30:11,858.858 INFO    ] time= 19/06/2026 12:30:11
[2026-06-19 12:30:11,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:30:11,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:30:12,093.093 INFO    ] No existing commands found in stream
[2026-06-19 12:30:17,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:30:17,114.114 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 12:30:20,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:30:20,761.761 INFO    ] Checking for system updates...
[2026-06-19 12:30:20,797.797 INFO    ] 200
[2026-06-19 12:30:20,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:20,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:30:20,856.856 INFO    ] No update needed
[2026-06-19 12:30:20,858.858 INFO    ] Checking for camera pi updates...
[2026-06-19 12:30:20,896.896 INFO    ] 200
[2026-06-19 12:30:20,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:20,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:30:20,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:30:20,987.987 INFO    ] No camera update needed
[2026-06-19 12:30:20,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:30:20,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:30:20,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:30:21,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:30:23,043.043 INFO    ] ================================================
[2026-06-19 12:30:23,060.060 INFO    ] Launching Daemon at Fri Jun 19 12:30:23 IST 2026
[2026-06-19 12:30:23,071.071 INFO    ] ================================================
[2026-06-19 12:30:23,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:30:23
[2026-06-19 12:30:24,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:30:24,491.491 INFO    ] Initializing speech engine...
[2026-06-19 12:30:24,501.501 INFO    ] 2026-06-19 12:30:24
[2026-06-19 12:30:24,746.746 INFO    ] 2026-06-19 12:30:24
[2026-06-19 12:30:24,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:30:25,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:30:25,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:30:25,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:30:25,216.216 INFO    ] time= 19/06/2026 12:30:25
[2026-06-19 12:30:25,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:30:25,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:30:25,455.455 INFO    ] No existing commands found in stream
[2026-06-19 12:30:30,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:30:30,477.477 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 12:30:32,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:30:32,828.828 INFO    ] Checking for system updates...
[2026-06-19 12:30:32,870.870 INFO    ] 200
[2026-06-19 12:30:32,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:32,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:30:32,934.934 INFO    ] No update needed
[2026-06-19 12:30:32,937.937 INFO    ] Checking for camera pi updates...
[2026-06-19 12:30:32,974.974 INFO    ] 200
[2026-06-19 12:30:32,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:33,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:30:33,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:30:33,062.062 INFO    ] No camera update needed
[2026-06-19 12:30:33,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:30:33,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:30:33,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:30:33,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:30:35,120.120 INFO    ] ================================================
[2026-06-19 12:30:35,136.136 INFO    ] Launching Daemon at Fri Jun 19 12:30:35 IST 2026
[2026-06-19 12:30:35,147.147 INFO    ] ================================================
[2026-06-19 12:30:35,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:30:35
[2026-06-19 12:30:36,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:30:36,708.708 INFO    ] Initializing speech engine...
[2026-06-19 12:30:36,723.723 INFO    ] 2026-06-19 12:30:36
[2026-06-19 12:30:37,020.020 INFO    ] 2026-06-19 12:30:36
[2026-06-19 12:30:37,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:30:37,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:30:37,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:30:37,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:30:37,410.410 INFO    ] time= 19/06/2026 12:30:37
[2026-06-19 12:30:37,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:30:37,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:30:37,595.595 INFO    ] No existing commands found in stream
[2026-06-19 12:30:42,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:30:42,623.623 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 12:30:44,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:30:44,629.629 INFO    ] Checking for system updates...
[2026-06-19 12:30:44,665.665 INFO    ] 200
[2026-06-19 12:30:44,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:44,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:30:44,723.723 INFO    ] No update needed
[2026-06-19 12:30:44,726.726 INFO    ] Checking for camera pi updates...
[2026-06-19 12:30:44,759.759 INFO    ] 200
[2026-06-19 12:30:44,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:44,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:30:44,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:30:44,848.848 INFO    ] No camera update needed
[2026-06-19 12:30:44,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:30:44,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:30:44,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:30:44,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:30:46,906.906 INFO    ] ================================================
[2026-06-19 12:30:46,922.922 INFO    ] Launching Daemon at Fri Jun 19 12:30:46 IST 2026
[2026-06-19 12:30:46,933.933 INFO    ] ================================================
[2026-06-19 12:30:47,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:30:47
[2026-06-19 12:30:48,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:30:48,338.338 INFO    ] Initializing speech engine...
[2026-06-19 12:30:48,360.360 INFO    ] 2026-06-19 12:30:48
[2026-06-19 12:30:48,612.612 INFO    ] 2026-06-19 12:30:48
[2026-06-19 12:30:48,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:30:48,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:30:48,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:30:49,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:30:49,078.078 INFO    ] time= 19/06/2026 12:30:49
[2026-06-19 12:30:49,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:30:49,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:30:49,336.336 INFO    ] No existing commands found in stream
[2026-06-19 12:30:54,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:30:54,369.369 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 12:30:55,723.723 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:30:55,726.726 INFO    ] Checking for system updates...
[2026-06-19 12:30:55,763.763 INFO    ] 200
[2026-06-19 12:30:55,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:55,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:30:55,830.830 INFO    ] No update needed
[2026-06-19 12:30:55,833.833 INFO    ] Checking for camera pi updates...
[2026-06-19 12:30:55,877.877 INFO    ] 200
[2026-06-19 12:30:55,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:30:55,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:30:55,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:30:55,967.967 INFO    ] No camera update needed
[2026-06-19 12:30:55,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:30:55,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:30:55,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:30:55,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:30:58,023.023 INFO    ] ================================================
[2026-06-19 12:30:58,039.039 INFO    ] Launching Daemon at Fri Jun 19 12:30:58 IST 2026
[2026-06-19 12:30:58,051.051 INFO    ] ================================================
[2026-06-19 12:30:58,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:30:58
[2026-06-19 12:30:59,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:30:59,540.540 INFO    ] Initializing speech engine...
[2026-06-19 12:30:59,548.548 INFO    ] 2026-06-19 12:30:59
[2026-06-19 12:30:59,810.810 INFO    ] 2026-06-19 12:30:59
[2026-06-19 12:30:59,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:31:00,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:31:00,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:31:00,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:31:00,297.297 INFO    ] time= 19/06/2026 12:31:00
[2026-06-19 12:31:00,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:31:00,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:31:00,508.508 INFO    ] No existing commands found in stream
[2026-06-19 12:31:05,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:31:05,527.527 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 12:31:09,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:31:09,727.727 INFO    ] Checking for system updates...
[2026-06-19 12:31:09,764.764 INFO    ] 200
[2026-06-19 12:31:09,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:09,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:31:09,822.822 INFO    ] No update needed
[2026-06-19 12:31:09,825.825 INFO    ] Checking for camera pi updates...
[2026-06-19 12:31:09,863.863 INFO    ] 200
[2026-06-19 12:31:09,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:09,912.912 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:31:09,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:31:09,954.954 INFO    ] No camera update needed
[2026-06-19 12:31:09,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:31:09,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:31:09,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:31:09,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:31:12,010.010 INFO    ] ================================================
[2026-06-19 12:31:12,028.028 INFO    ] Launching Daemon at Fri Jun 19 12:31:12 IST 2026
[2026-06-19 12:31:12,039.039 INFO    ] ================================================
[2026-06-19 12:31:12,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:31:12
[2026-06-19 12:31:13,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:31:13,509.509 INFO    ] Initializing speech engine...
[2026-06-19 12:31:13,517.517 INFO    ] 2026-06-19 12:31:13
[2026-06-19 12:31:13,780.780 INFO    ] 2026-06-19 12:31:13
[2026-06-19 12:31:13,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:31:14,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:31:14,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:31:14,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:31:14,298.298 INFO    ] time= 19/06/2026 12:31:14
[2026-06-19 12:31:14,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:31:14,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:31:14,482.482 INFO    ] No existing commands found in stream
[2026-06-19 12:31:19,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:31:19,504.504 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 12:31:21,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:31:21,090.090 INFO    ] Checking for system updates...
[2026-06-19 12:31:21,127.127 INFO    ] 200
[2026-06-19 12:31:21,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:21,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:31:21,192.192 INFO    ] No update needed
[2026-06-19 12:31:21,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 12:31:21,233.233 INFO    ] 200
[2026-06-19 12:31:21,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:21,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:31:21,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:31:21,317.317 INFO    ] No camera update needed
[2026-06-19 12:31:21,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:31:21,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:31:21,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:31:21,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:31:23,372.372 INFO    ] ================================================
[2026-06-19 12:31:23,387.387 INFO    ] Launching Daemon at Fri Jun 19 12:31:23 IST 2026
[2026-06-19 12:31:23,398.398 INFO    ] ================================================
[2026-06-19 12:31:23,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:31:23
[2026-06-19 12:31:24,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:31:24,815.815 INFO    ] Initializing speech engine...
[2026-06-19 12:31:24,834.834 INFO    ] 2026-06-19 12:31:24
[2026-06-19 12:31:25,085.085 INFO    ] 2026-06-19 12:31:25
[2026-06-19 12:31:25,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:31:25,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:31:25,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:31:25,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:31:25,461.461 INFO    ] time= 19/06/2026 12:31:25
[2026-06-19 12:31:25,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:31:25,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:31:25,611.611 INFO    ] No existing commands found in stream
[2026-06-19 12:31:30,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:31:30,639.639 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 12:31:34,263.263 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:31:34,266.266 INFO    ] Checking for system updates...
[2026-06-19 12:31:34,306.306 INFO    ] 200
[2026-06-19 12:31:34,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:34,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:31:34,372.372 INFO    ] No update needed
[2026-06-19 12:31:34,375.375 INFO    ] Checking for camera pi updates...
[2026-06-19 12:31:34,413.413 INFO    ] 200
[2026-06-19 12:31:34,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:34,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:31:34,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:31:34,500.500 INFO    ] No camera update needed
[2026-06-19 12:31:34,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:31:34,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:31:34,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:31:34,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:31:36,556.556 INFO    ] ================================================
[2026-06-19 12:31:36,571.571 INFO    ] Launching Daemon at Fri Jun 19 12:31:36 IST 2026
[2026-06-19 12:31:36,582.582 INFO    ] ================================================
[2026-06-19 12:31:37,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:31:37
[2026-06-19 12:31:37,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:31:38,050.050 INFO    ] Initializing speech engine...
[2026-06-19 12:31:38,058.058 INFO    ] 2026-06-19 12:31:38
[2026-06-19 12:31:38,305.305 INFO    ] 2026-06-19 12:31:38
[2026-06-19 12:31:38,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:31:38,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:31:38,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:31:38,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:31:38,864.864 INFO    ] time= 19/06/2026 12:31:38
[2026-06-19 12:31:38,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:31:38,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:31:39,018.018 INFO    ] No existing commands found in stream
[2026-06-19 12:31:44,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:31:44,036.036 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 12:31:44,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:31:44,774.774 INFO    ] Checking for system updates...
[2026-06-19 12:31:44,811.811 INFO    ] 200
[2026-06-19 12:31:44,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:44,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:31:44,876.876 INFO    ] No update needed
[2026-06-19 12:31:44,879.879 INFO    ] Checking for camera pi updates...
[2026-06-19 12:31:44,912.912 INFO    ] 200
[2026-06-19 12:31:44,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:44,961.961 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:31:45,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:31:45,003.003 INFO    ] No camera update needed
[2026-06-19 12:31:45,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:31:45,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:31:45,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:31:45,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:31:47,058.058 INFO    ] ================================================
[2026-06-19 12:31:47,073.073 INFO    ] Launching Daemon at Fri Jun 19 12:31:47 IST 2026
[2026-06-19 12:31:47,084.084 INFO    ] ================================================
[2026-06-19 12:31:47,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:31:47
[2026-06-19 12:31:48,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:31:48,529.529 INFO    ] Initializing speech engine...
[2026-06-19 12:31:48,538.538 INFO    ] 2026-06-19 12:31:48
[2026-06-19 12:31:48,832.832 INFO    ] 2026-06-19 12:31:48
[2026-06-19 12:31:48,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:31:49,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:31:49,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:31:49,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:31:49,248.248 INFO    ] time= 19/06/2026 12:31:49
[2026-06-19 12:31:49,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:31:49,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:31:49,331.331 INFO    ] No existing commands found in stream
[2026-06-19 12:31:54,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:31:54,347.347 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 12:31:56,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:31:56,187.187 INFO    ] Checking for system updates...
[2026-06-19 12:31:56,223.223 INFO    ] 200
[2026-06-19 12:31:56,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:56,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:31:56,281.281 INFO    ] No update needed
[2026-06-19 12:31:56,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 12:31:56,321.321 INFO    ] 200
[2026-06-19 12:31:56,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:31:56,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:31:56,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:31:56,517.517 INFO    ] No camera update needed
[2026-06-19 12:31:56,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:31:56,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:31:56,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:31:56,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:31:58,573.573 INFO    ] ================================================
[2026-06-19 12:31:58,588.588 INFO    ] Launching Daemon at Fri Jun 19 12:31:58 IST 2026
[2026-06-19 12:31:58,599.599 INFO    ] ================================================
[2026-06-19 12:31:59,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:31:59
[2026-06-19 12:31:59,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:32:00,007.007 INFO    ] Initializing speech engine...
[2026-06-19 12:32:00,014.014 INFO    ] 2026-06-19 12:32:00
[2026-06-19 12:32:00,305.305 INFO    ] 2026-06-19 12:32:00
[2026-06-19 12:32:00,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:32:00,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:32:00,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:32:00,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:32:00,718.718 INFO    ] time= 19/06/2026 12:32:00
[2026-06-19 12:32:00,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:32:00,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:32:00,860.860 INFO    ] No existing commands found in stream
[2026-06-19 12:32:05,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:32:05,883.883 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 12:32:07,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:32:07,400.400 INFO    ] Checking for system updates...
[2026-06-19 12:32:07,440.440 INFO    ] 200
[2026-06-19 12:32:07,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:07,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:32:07,502.502 INFO    ] No update needed
[2026-06-19 12:32:07,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 12:32:07,538.538 INFO    ] 200
[2026-06-19 12:32:07,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:07,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:32:07,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:32:07,624.624 INFO    ] No camera update needed
[2026-06-19 12:32:07,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:32:07,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:32:07,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:32:07,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:32:09,679.679 INFO    ] ================================================
[2026-06-19 12:32:09,694.694 INFO    ] Launching Daemon at Fri Jun 19 12:32:09 IST 2026
[2026-06-19 12:32:09,704.704 INFO    ] ================================================
[2026-06-19 12:32:10,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:32:10
[2026-06-19 12:32:10,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:32:11,160.160 INFO    ] Initializing speech engine...
[2026-06-19 12:32:11,169.169 INFO    ] 2026-06-19 12:32:11
[2026-06-19 12:32:11,428.428 INFO    ] 2026-06-19 12:32:11
[2026-06-19 12:32:11,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:32:11,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:32:11,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:32:11,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:32:11,910.910 INFO    ] time= 19/06/2026 12:32:11
[2026-06-19 12:32:11,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:32:11,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:32:12,126.126 INFO    ] No existing commands found in stream
[2026-06-19 12:32:17,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:32:17,147.147 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 12:32:18,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:32:18,892.892 INFO    ] Checking for system updates...
[2026-06-19 12:32:18,929.929 INFO    ] 200
[2026-06-19 12:32:18,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:18,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:32:18,986.986 INFO    ] No update needed
[2026-06-19 12:32:18,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 12:32:19,025.025 INFO    ] 200
[2026-06-19 12:32:19,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:19,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:32:19,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:32:19,130.130 INFO    ] No camera update needed
[2026-06-19 12:32:19,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:32:19,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:32:19,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:32:19,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:32:21,187.187 INFO    ] ================================================
[2026-06-19 12:32:21,203.203 INFO    ] Launching Daemon at Fri Jun 19 12:32:21 IST 2026
[2026-06-19 12:32:21,214.214 INFO    ] ================================================
[2026-06-19 12:32:21,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:32:21
[2026-06-19 12:32:22,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:32:22,630.630 INFO    ] Initializing speech engine...
[2026-06-19 12:32:22,649.649 INFO    ] 2026-06-19 12:32:22
[2026-06-19 12:32:22,903.903 INFO    ] 2026-06-19 12:32:22
[2026-06-19 12:32:22,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:32:23,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:32:23,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:32:23,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:32:23,440.440 INFO    ] time= 19/06/2026 12:32:23
[2026-06-19 12:32:23,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:32:23,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:32:23,618.618 INFO    ] No existing commands found in stream
[2026-06-19 12:32:28,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:32:28,638.638 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 12:32:32,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:32:32,091.091 INFO    ] Checking for system updates...
[2026-06-19 12:32:32,131.131 INFO    ] 200
[2026-06-19 12:32:32,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:32,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:32:32,199.199 INFO    ] No update needed
[2026-06-19 12:32:32,202.202 INFO    ] Checking for camera pi updates...
[2026-06-19 12:32:32,238.238 INFO    ] 200
[2026-06-19 12:32:32,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:32,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:32:32,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:32:32,322.322 INFO    ] No camera update needed
[2026-06-19 12:32:32,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:32:32,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:32:32,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:32:32,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:32:34,383.383 INFO    ] ================================================
[2026-06-19 12:32:34,399.399 INFO    ] Launching Daemon at Fri Jun 19 12:32:34 IST 2026
[2026-06-19 12:32:34,410.410 INFO    ] ================================================
[2026-06-19 12:32:35,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:32:34
[2026-06-19 12:32:35,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:32:35,833.833 INFO    ] Initializing speech engine...
[2026-06-19 12:32:35,841.841 INFO    ] 2026-06-19 12:32:35
[2026-06-19 12:32:36,117.117 INFO    ] 2026-06-19 12:32:36
[2026-06-19 12:32:36,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:32:36,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:32:36,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:32:36,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:32:36,600.600 INFO    ] time= 19/06/2026 12:32:36
[2026-06-19 12:32:36,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:32:36,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:32:36,826.826 INFO    ] No existing commands found in stream
[2026-06-19 12:32:41,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:32:41,857.857 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 12:32:44,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:32:44,280.280 INFO    ] Checking for system updates...
[2026-06-19 12:32:44,319.319 INFO    ] 200
[2026-06-19 12:32:44,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:44,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:32:44,383.383 INFO    ] No update needed
[2026-06-19 12:32:44,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 12:32:44,419.419 INFO    ] 200
[2026-06-19 12:32:44,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:44,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:32:44,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:32:44,507.507 INFO    ] No camera update needed
[2026-06-19 12:32:44,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:32:44,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:32:44,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:32:44,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:32:46,565.565 INFO    ] ================================================
[2026-06-19 12:32:46,581.581 INFO    ] Launching Daemon at Fri Jun 19 12:32:46 IST 2026
[2026-06-19 12:32:46,592.592 INFO    ] ================================================
[2026-06-19 12:32:47,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:32:47
[2026-06-19 12:32:47,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:32:48,136.136 INFO    ] Initializing speech engine...
[2026-06-19 12:32:48,156.156 INFO    ] 2026-06-19 12:32:48
[2026-06-19 12:32:48,418.418 INFO    ] 2026-06-19 12:32:48
[2026-06-19 12:32:48,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:32:48,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:32:48,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:32:48,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:32:48,907.907 INFO    ] time= 19/06/2026 12:32:48
[2026-06-19 12:32:48,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:32:49,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:32:49,147.147 INFO    ] No existing commands found in stream
[2026-06-19 12:32:54,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:32:54,173.173 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 12:32:56,847.847 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:32:56,850.850 INFO    ] Checking for system updates...
[2026-06-19 12:32:56,891.891 INFO    ] 200
[2026-06-19 12:32:56,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:56,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:32:56,951.951 INFO    ] No update needed
[2026-06-19 12:32:56,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 12:32:56,989.989 INFO    ] 200
[2026-06-19 12:32:56,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:32:57,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:32:57,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:32:57,088.088 INFO    ] No camera update needed
[2026-06-19 12:32:57,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:32:57,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:32:57,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:32:57,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:32:59,147.147 INFO    ] ================================================
[2026-06-19 12:32:59,163.163 INFO    ] Launching Daemon at Fri Jun 19 12:32:59 IST 2026
[2026-06-19 12:32:59,175.175 INFO    ] ================================================
[2026-06-19 12:32:59,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:32:59
[2026-06-19 12:33:00,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:33:00,813.813 INFO    ] Initializing speech engine...
[2026-06-19 12:33:00,820.820 INFO    ] 2026-06-19 12:33:00
[2026-06-19 12:33:01,111.111 INFO    ] 2026-06-19 12:33:01
[2026-06-19 12:33:01,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:33:01,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:33:01,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:33:01,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:33:01,578.578 INFO    ] time= 19/06/2026 12:33:01
[2026-06-19 12:33:01,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:33:01,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:33:01,661.661 INFO    ] No existing commands found in stream
[2026-06-19 12:33:06,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:33:06,673.673 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 12:33:07,159.159 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:33:07,162.162 INFO    ] Checking for system updates...
[2026-06-19 12:33:07,198.198 INFO    ] 200
[2026-06-19 12:33:07,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:07,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:33:07,257.257 INFO    ] No update needed
[2026-06-19 12:33:07,260.260 INFO    ] Checking for camera pi updates...
[2026-06-19 12:33:07,293.293 INFO    ] 200
[2026-06-19 12:33:07,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:07,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:33:07,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:33:07,384.384 INFO    ] No camera update needed
[2026-06-19 12:33:07,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:33:07,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:33:07,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:33:07,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:33:09,440.440 INFO    ] ================================================
[2026-06-19 12:33:09,456.456 INFO    ] Launching Daemon at Fri Jun 19 12:33:09 IST 2026
[2026-06-19 12:33:09,467.467 INFO    ] ================================================
[2026-06-19 12:33:10,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:33:10
[2026-06-19 12:33:10,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:33:11,052.052 INFO    ] Initializing speech engine...
[2026-06-19 12:33:11,059.059 INFO    ] 2026-06-19 12:33:11
[2026-06-19 12:33:11,344.344 INFO    ] 2026-06-19 12:33:11
[2026-06-19 12:33:11,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:33:11,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:33:11,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:33:11,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:33:11,882.882 INFO    ] time= 19/06/2026 12:33:11
[2026-06-19 12:33:11,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:33:11,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:33:12,037.037 INFO    ] No existing commands found in stream
[2026-06-19 12:33:17,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:33:17,074.074 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 12:33:17,818.818 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:33:17,822.822 INFO    ] Checking for system updates...
[2026-06-19 12:33:17,862.862 INFO    ] 200
[2026-06-19 12:33:17,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:17,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:33:17,919.919 INFO    ] No update needed
[2026-06-19 12:33:17,922.922 INFO    ] Checking for camera pi updates...
[2026-06-19 12:33:17,956.956 INFO    ] 200
[2026-06-19 12:33:17,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:18,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:33:18,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:33:18,046.046 INFO    ] No camera update needed
[2026-06-19 12:33:18,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:33:18,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:33:18,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:33:18,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:33:20,102.102 INFO    ] ================================================
[2026-06-19 12:33:20,118.118 INFO    ] Launching Daemon at Fri Jun 19 12:33:20 IST 2026
[2026-06-19 12:33:20,129.129 INFO    ] ================================================
[2026-06-19 12:33:20,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:33:20
[2026-06-19 12:33:21,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:33:21,720.720 INFO    ] Initializing speech engine...
[2026-06-19 12:33:21,727.727 INFO    ] 2026-06-19 12:33:21
[2026-06-19 12:33:22,017.017 INFO    ] 2026-06-19 12:33:22
[2026-06-19 12:33:22,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:33:22,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:33:22,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:33:22,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:33:22,559.559 INFO    ] time= 19/06/2026 12:33:22
[2026-06-19 12:33:22,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:33:22,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:33:22,704.704 INFO    ] No existing commands found in stream
[2026-06-19 12:33:27,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:33:27,723.723 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 12:33:30,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:33:30,934.934 INFO    ] Checking for system updates...
[2026-06-19 12:33:30,971.971 INFO    ] 200
[2026-06-19 12:33:30,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:31,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:33:31,036.036 INFO    ] No update needed
[2026-06-19 12:33:31,039.039 INFO    ] Checking for camera pi updates...
[2026-06-19 12:33:31,072.072 INFO    ] 200
[2026-06-19 12:33:31,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:31,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:33:31,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:33:31,163.163 INFO    ] No camera update needed
[2026-06-19 12:33:31,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:33:31,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:33:31,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:33:31,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:33:33,226.226 INFO    ] ================================================
[2026-06-19 12:33:33,242.242 INFO    ] Launching Daemon at Fri Jun 19 12:33:33 IST 2026
[2026-06-19 12:33:33,253.253 INFO    ] ================================================
[2026-06-19 12:33:33,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:33:33
[2026-06-19 12:33:34,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:33:34,711.711 INFO    ] Initializing speech engine...
[2026-06-19 12:33:34,720.720 INFO    ] 2026-06-19 12:33:34
[2026-06-19 12:33:34,979.979 INFO    ] 2026-06-19 12:33:34
[2026-06-19 12:33:35,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:33:35,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:33:35,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:33:35,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:33:35,459.459 INFO    ] time= 19/06/2026 12:33:35
[2026-06-19 12:33:35,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:33:35,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:33:35,658.658 INFO    ] No existing commands found in stream
[2026-06-19 12:33:40,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:33:40,686.686 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 12:33:45,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:33:45,040.040 INFO    ] Checking for system updates...
[2026-06-19 12:33:45,077.077 INFO    ] 200
[2026-06-19 12:33:45,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:45,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:33:45,135.135 INFO    ] No update needed
[2026-06-19 12:33:45,138.138 INFO    ] Checking for camera pi updates...
[2026-06-19 12:33:45,172.172 INFO    ] 200
[2026-06-19 12:33:45,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:45,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:33:45,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:33:45,264.264 INFO    ] No camera update needed
[2026-06-19 12:33:45,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:33:45,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:33:45,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:33:45,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:33:47,322.322 INFO    ] ================================================
[2026-06-19 12:33:47,339.339 INFO    ] Launching Daemon at Fri Jun 19 12:33:47 IST 2026
[2026-06-19 12:33:47,350.350 INFO    ] ================================================
[2026-06-19 12:33:47,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:33:47
[2026-06-19 12:33:48,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:33:48,797.797 INFO    ] Initializing speech engine...
[2026-06-19 12:33:48,806.806 INFO    ] 2026-06-19 12:33:48
[2026-06-19 12:33:49,065.065 INFO    ] 2026-06-19 12:33:49
[2026-06-19 12:33:49,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:33:49,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:33:49,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:33:49,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:33:49,607.607 INFO    ] time= 19/06/2026 12:33:49
[2026-06-19 12:33:49,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:33:49,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:33:49,763.763 INFO    ] No existing commands found in stream
[2026-06-19 12:33:54,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:33:54,789.789 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 12:33:55,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:33:55,401.401 INFO    ] Checking for system updates...
[2026-06-19 12:33:55,437.437 INFO    ] 200
[2026-06-19 12:33:55,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:55,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:33:55,502.502 INFO    ] No update needed
[2026-06-19 12:33:55,505.505 INFO    ] Checking for camera pi updates...
[2026-06-19 12:33:55,541.541 INFO    ] 200
[2026-06-19 12:33:55,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:33:55,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:33:55,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:33:55,628.628 INFO    ] No camera update needed
[2026-06-19 12:33:55,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:33:55,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:33:55,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:33:55,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:33:57,682.682 INFO    ] ================================================
[2026-06-19 12:33:57,698.698 INFO    ] Launching Daemon at Fri Jun 19 12:33:57 IST 2026
[2026-06-19 12:33:57,709.709 INFO    ] ================================================
[2026-06-19 12:33:58,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:33:58
[2026-06-19 12:33:58,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:33:59,170.170 INFO    ] Initializing speech engine...
[2026-06-19 12:33:59,179.179 INFO    ] 2026-06-19 12:33:59
[2026-06-19 12:33:59,438.438 INFO    ] 2026-06-19 12:33:59
[2026-06-19 12:33:59,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:33:59,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:33:59,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:33:59,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:33:59,952.952 INFO    ] time= 19/06/2026 12:33:59
[2026-06-19 12:33:59,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:33:59,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:34:00,126.126 INFO    ] No existing commands found in stream
[2026-06-19 12:34:05,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:34:05,149.149 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 12:34:09,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:34:09,289.289 INFO    ] Checking for system updates...
[2026-06-19 12:34:09,325.325 INFO    ] 200
[2026-06-19 12:34:09,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:09,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:34:09,384.384 INFO    ] No update needed
[2026-06-19 12:34:09,387.387 INFO    ] Checking for camera pi updates...
[2026-06-19 12:34:09,425.425 INFO    ] 200
[2026-06-19 12:34:09,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:09,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:34:09,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:34:09,515.515 INFO    ] No camera update needed
[2026-06-19 12:34:09,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:34:09,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:34:09,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:34:09,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:34:11,575.575 INFO    ] ================================================
[2026-06-19 12:34:11,591.591 INFO    ] Launching Daemon at Fri Jun 19 12:34:11 IST 2026
[2026-06-19 12:34:11,603.603 INFO    ] ================================================
[2026-06-19 12:34:12,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:34:12
[2026-06-19 12:34:12,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:34:13,205.205 INFO    ] Initializing speech engine...
[2026-06-19 12:34:13,211.211 INFO    ] 2026-06-19 12:34:13
[2026-06-19 12:34:13,477.477 INFO    ] 2026-06-19 12:34:13
[2026-06-19 12:34:13,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:34:13,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:34:13,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:34:13,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:34:13,983.983 INFO    ] time= 19/06/2026 12:34:13
[2026-06-19 12:34:14,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:34:14,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:34:14,161.161 INFO    ] No existing commands found in stream
[2026-06-19 12:34:19,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:34:19,187.187 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 12:34:20,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:34:20,264.264 INFO    ] Checking for system updates...
[2026-06-19 12:34:20,301.301 INFO    ] 200
[2026-06-19 12:34:20,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:20,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:34:20,367.367 INFO    ] No update needed
[2026-06-19 12:34:20,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 12:34:20,407.407 INFO    ] 200
[2026-06-19 12:34:20,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:20,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:34:20,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:34:20,497.497 INFO    ] No camera update needed
[2026-06-19 12:34:20,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:34:20,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:34:20,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:34:20,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:34:22,552.552 INFO    ] ================================================
[2026-06-19 12:34:22,568.568 INFO    ] Launching Daemon at Fri Jun 19 12:34:22 IST 2026
[2026-06-19 12:34:22,579.579 INFO    ] ================================================
[2026-06-19 12:34:23,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:34:23
[2026-06-19 12:34:23,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:34:23,991.991 INFO    ] Initializing speech engine...
[2026-06-19 12:34:24,014.014 INFO    ] 2026-06-19 12:34:24
[2026-06-19 12:34:24,270.270 INFO    ] 2026-06-19 12:34:24
[2026-06-19 12:34:24,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:34:24,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:34:24,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:34:24,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:34:24,748.748 INFO    ] time= 19/06/2026 12:34:24
[2026-06-19 12:34:24,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:34:24,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:34:24,983.983 INFO    ] No existing commands found in stream
[2026-06-19 12:34:30,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:34:30,006.006 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 12:34:34,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:34:34,422.422 INFO    ] Checking for system updates...
[2026-06-19 12:34:34,458.458 INFO    ] 200
[2026-06-19 12:34:34,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:34,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:34:34,522.522 INFO    ] No update needed
[2026-06-19 12:34:34,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 12:34:34,558.558 INFO    ] 200
[2026-06-19 12:34:34,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:34,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:34:34,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:34:34,629.629 INFO    ] No camera update needed
[2026-06-19 12:34:34,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:34:34,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:34:34,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:34:34,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:34:36,687.687 INFO    ] ================================================
[2026-06-19 12:34:36,703.703 INFO    ] Launching Daemon at Fri Jun 19 12:34:36 IST 2026
[2026-06-19 12:34:36,714.714 INFO    ] ================================================
[2026-06-19 12:34:37,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:34:37
[2026-06-19 12:34:38,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:34:38,330.330 INFO    ] Initializing speech engine...
[2026-06-19 12:34:38,341.341 INFO    ] 2026-06-19 12:34:38
[2026-06-19 12:34:38,609.609 INFO    ] 2026-06-19 12:34:38
[2026-06-19 12:34:38,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:34:38,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:34:38,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:34:39,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:34:39,159.159 INFO    ] time= 19/06/2026 12:34:39
[2026-06-19 12:34:39,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:34:39,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:34:39,313.313 INFO    ] No existing commands found in stream
[2026-06-19 12:34:44,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:34:44,330.330 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 12:34:45,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:34:45,771.771 INFO    ] Checking for system updates...
[2026-06-19 12:34:45,808.808 INFO    ] 200
[2026-06-19 12:34:45,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:45,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:34:45,869.869 INFO    ] No update needed
[2026-06-19 12:34:45,872.872 INFO    ] Checking for camera pi updates...
[2026-06-19 12:34:45,906.906 INFO    ] 200
[2026-06-19 12:34:45,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:45,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:34:45,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:34:45,997.997 INFO    ] No camera update needed
[2026-06-19 12:34:46,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:34:46,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:34:46,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:34:46,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:34:48,056.056 INFO    ] ================================================
[2026-06-19 12:34:48,072.072 INFO    ] Launching Daemon at Fri Jun 19 12:34:48 IST 2026
[2026-06-19 12:34:48,083.083 INFO    ] ================================================
[2026-06-19 12:34:48,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:34:48
[2026-06-19 12:34:49,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:34:49,679.679 INFO    ] Initializing speech engine...
[2026-06-19 12:34:49,693.693 INFO    ] 2026-06-19 12:34:49
[2026-06-19 12:34:49,979.979 INFO    ] 2026-06-19 12:34:49
[2026-06-19 12:34:50,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:34:50,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:34:50,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:34:50,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:34:50,505.505 INFO    ] time= 19/06/2026 12:34:50
[2026-06-19 12:34:50,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:34:50,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:34:50,662.662 INFO    ] No existing commands found in stream
[2026-06-19 12:34:55,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:34:55,684.684 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 12:34:58,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:34:58,168.168 INFO    ] Checking for system updates...
[2026-06-19 12:34:58,217.217 INFO    ] 200
[2026-06-19 12:34:58,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:58,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:34:58,284.284 INFO    ] No update needed
[2026-06-19 12:34:58,287.287 INFO    ] Checking for camera pi updates...
[2026-06-19 12:34:58,325.325 INFO    ] 200
[2026-06-19 12:34:58,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:34:58,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:34:58,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:34:58,418.418 INFO    ] No camera update needed
[2026-06-19 12:34:58,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:34:58,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:34:58,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:34:58,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:35:00,476.476 INFO    ] ================================================
[2026-06-19 12:35:00,492.492 INFO    ] Launching Daemon at Fri Jun 19 12:35:00 IST 2026
[2026-06-19 12:35:00,504.504 INFO    ] ================================================
[2026-06-19 12:35:01,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:35:01
[2026-06-19 12:35:01,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:35:02,294.294 INFO    ] Initializing speech engine...
[2026-06-19 12:35:02,311.311 INFO    ] 2026-06-19 12:35:02
[2026-06-19 12:35:02,622.622 INFO    ] 2026-06-19 12:35:02
[2026-06-19 12:35:02,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:35:02,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:35:02,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:35:03,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:35:03,135.135 INFO    ] time= 19/06/2026 12:35:03
[2026-06-19 12:35:03,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:35:03,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:35:03,417.417 INFO    ] No existing commands found in stream
[2026-06-19 12:35:08,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:35:08,450.450 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 12:35:11,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:35:11,582.582 INFO    ] Checking for system updates...
[2026-06-19 12:35:11,623.623 INFO    ] 200
[2026-06-19 12:35:11,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:35:11,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:35:11,682.682 INFO    ] No update needed
[2026-06-19 12:35:11,685.685 INFO    ] Checking for camera pi updates...
[2026-06-19 12:35:11,723.723 INFO    ] 200
[2026-06-19 12:35:11,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:35:11,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:35:11,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:35:11,811.811 INFO    ] No camera update needed
[2026-06-19 12:35:11,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:35:11,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:35:11,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:35:11,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:35:13,869.869 INFO    ] ================================================
[2026-06-19 12:35:13,885.885 INFO    ] Launching Daemon at Fri Jun 19 12:35:13 IST 2026
[2026-06-19 12:35:13,896.896 INFO    ] ================================================
[2026-06-19 12:35:14,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:35:14
[2026-06-19 12:35:15,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:35:15,326.326 INFO    ] Initializing speech engine...
[2026-06-19 12:35:15,345.345 INFO    ] 2026-06-19 12:35:15
[2026-06-19 12:35:15,597.597 INFO    ] 2026-06-19 12:35:15
[2026-06-19 12:35:15,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:35:16,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:35:16,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:35:16,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:35:16,324.324 INFO    ] time= 19/06/2026 12:35:16
[2026-06-19 12:35:16,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:35:16,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:35:16,573.573 INFO    ] No existing commands found in stream
[2026-06-19 12:35:21,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:35:21,589.589 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 12:35:24,105.105 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:35:24,108.108 INFO    ] Checking for system updates...
[2026-06-19 12:35:24,144.144 INFO    ] 200
[2026-06-19 12:35:24,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:35:24,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:35:24,202.202 INFO    ] No update needed
[2026-06-19 12:35:24,204.204 INFO    ] Checking for camera pi updates...
[2026-06-19 12:35:24,238.238 INFO    ] 200
[2026-06-19 12:35:24,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:35:24,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:35:24,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:35:24,331.331 INFO    ] No camera update needed
[2026-06-19 12:35:24,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:35:24,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:35:24,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:35:24,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:35:26,388.388 INFO    ] ================================================
[2026-06-19 12:35:26,404.404 INFO    ] Launching Daemon at Fri Jun 19 12:35:26 IST 2026
[2026-06-19 12:35:26,415.415 INFO    ] ================================================
[2026-06-19 12:35:26,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:35:26
[2026-06-19 12:35:27,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:35:27,830.830 INFO    ] Initializing speech engine...
[2026-06-19 12:35:27,846.846 INFO    ] 2026-06-19 12:35:27
[2026-06-19 12:35:28,109.109 INFO    ] 2026-06-19 12:35:28
[2026-06-19 12:35:28,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:35:28,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:35:28,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:35:28,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:35:28,597.597 INFO    ] time= 19/06/2026 12:35:28
[2026-06-19 12:35:28,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:35:28,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:35:28,801.801 INFO    ] No existing commands found in stream
[2026-06-19 12:35:33,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:35:33,834.834 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 12:35:36,227.227 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:35:36,229.229 INFO    ] Checking for system updates...
[2026-06-19 12:35:36,266.266 INFO    ] 200
[2026-06-19 12:35:36,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:35:36,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:35:36,329.329 INFO    ] No update needed
[2026-06-19 12:35:36,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 12:35:36,365.365 INFO    ] 200
[2026-06-19 12:35:36,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:35:36,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:35:36,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:35:36,452.452 INFO    ] No camera update needed
[2026-06-19 12:35:36,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:35:36,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:35:36,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:35:36,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:35:38,507.507 INFO    ] ================================================
[2026-06-19 12:35:38,524.524 INFO    ] Launching Daemon at Fri Jun 19 12:35:38 IST 2026
[2026-06-19 12:35:38,536.536 INFO    ] ================================================
[2026-06-19 12:35:39,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:35:39
[2026-06-19 12:35:39,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:35:39,942.942 INFO    ] Initializing speech engine...
[2026-06-19 12:35:39,965.965 INFO    ] 2026-06-19 12:35:39
[2026-06-19 12:35:40,224.224 INFO    ] 2026-06-19 12:35:40
[2026-06-19 12:35:40,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:35:40,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:35:40,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:35:40,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:35:40,716.716 INFO    ] time= 19/06/2026 12:35:40
[2026-06-19 12:35:40,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:35:40,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:35:40,944.944 INFO    ] No existing commands found in stream
[2026-06-19 12:35:45,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:35:45,961.961 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 12:35:48,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:35:48,630.630 INFO    ] Checking for system updates...
[2026-06-19 12:35:48,665.665 INFO    ] 200
[2026-06-19 12:35:48,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:35:48,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:35:48,723.723 INFO    ] No update needed
[2026-06-19 12:35:48,725.725 INFO    ] Checking for camera pi updates...
[2026-06-19 12:35:48,763.763 INFO    ] 200
[2026-06-19 12:35:48,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:35:48,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:35:48,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:35:48,838.838 INFO    ] No camera update needed
[2026-06-19 12:35:48,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:35:48,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:35:48,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:35:48,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:35:50,895.895 INFO    ] ================================================
[2026-06-19 12:35:50,910.910 INFO    ] Launching Daemon at Fri Jun 19 12:35:50 IST 2026
[2026-06-19 12:35:50,921.921 INFO    ] ================================================
[2026-06-19 12:35:51,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:35:51
[2026-06-19 12:35:52,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:35:52,558.558 INFO    ] Initializing speech engine...
[2026-06-19 12:35:52,566.566 INFO    ] 2026-06-19 12:35:52
[2026-06-19 12:35:52,843.843 INFO    ] 2026-06-19 12:35:52
[2026-06-19 12:35:52,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:35:53,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:35:53,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:35:53,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:35:53,360.360 INFO    ] time= 19/06/2026 12:35:53
[2026-06-19 12:35:53,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:35:53,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:35:53,567.567 INFO    ] No existing commands found in stream
[2026-06-19 12:35:58,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:35:58,597.597 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 12:36:02,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:36:02,307.307 INFO    ] Checking for system updates...
[2026-06-19 12:36:02,351.351 INFO    ] 200
[2026-06-19 12:36:02,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:02,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:36:02,423.423 INFO    ] No update needed
[2026-06-19 12:36:02,426.426 INFO    ] Checking for camera pi updates...
[2026-06-19 12:36:02,469.469 INFO    ] 200
[2026-06-19 12:36:02,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:02,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:36:02,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:36:02,551.551 INFO    ] No camera update needed
[2026-06-19 12:36:02,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:36:02,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:36:02,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:36:02,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:36:04,612.612 INFO    ] ================================================
[2026-06-19 12:36:04,628.628 INFO    ] Launching Daemon at Fri Jun 19 12:36:04 IST 2026
[2026-06-19 12:36:04,639.639 INFO    ] ================================================
[2026-06-19 12:36:05,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:36:05
[2026-06-19 12:36:05,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:36:06,292.292 INFO    ] Initializing speech engine...
[2026-06-19 12:36:06,307.307 INFO    ] 2026-06-19 12:36:06
[2026-06-19 12:36:06,619.619 INFO    ] 2026-06-19 12:36:06
[2026-06-19 12:36:06,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:36:06,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:36:06,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:36:07,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:36:07,170.170 INFO    ] time= 19/06/2026 12:36:07
[2026-06-19 12:36:07,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:36:07,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:36:07,330.330 INFO    ] No existing commands found in stream
[2026-06-19 12:36:12,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:36:12,364.364 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 12:36:15,573.573 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:36:15,577.577 INFO    ] Checking for system updates...
[2026-06-19 12:36:15,619.619 INFO    ] 200
[2026-06-19 12:36:15,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:15,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:36:15,682.682 INFO    ] No update needed
[2026-06-19 12:36:15,684.684 INFO    ] Checking for camera pi updates...
[2026-06-19 12:36:15,720.720 INFO    ] 200
[2026-06-19 12:36:15,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:15,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:36:15,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:36:15,916.916 INFO    ] No camera update needed
[2026-06-19 12:36:15,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:36:15,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:36:15,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:36:15,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:36:17,975.975 INFO    ] ================================================
[2026-06-19 12:36:17,991.991 INFO    ] Launching Daemon at Fri Jun 19 12:36:17 IST 2026
[2026-06-19 12:36:18,003.003 INFO    ] ================================================
[2026-06-19 12:36:18,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:36:18
[2026-06-19 12:36:19,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:36:19,437.437 INFO    ] Initializing speech engine...
[2026-06-19 12:36:19,446.446 INFO    ] 2026-06-19 12:36:19
[2026-06-19 12:36:19,695.695 INFO    ] 2026-06-19 12:36:19
[2026-06-19 12:36:19,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:36:19,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:36:19,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:36:20,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:36:20,186.186 INFO    ] time= 19/06/2026 12:36:20
[2026-06-19 12:36:20,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:36:20,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:36:20,391.391 INFO    ] No existing commands found in stream
[2026-06-19 12:36:25,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:36:25,421.421 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 12:36:27,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:36:27,694.694 INFO    ] Checking for system updates...
[2026-06-19 12:36:27,731.731 INFO    ] 200
[2026-06-19 12:36:27,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:27,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:36:27,796.796 INFO    ] No update needed
[2026-06-19 12:36:27,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 12:36:27,833.833 INFO    ] 200
[2026-06-19 12:36:27,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:27,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:36:27,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:36:27,924.924 INFO    ] No camera update needed
[2026-06-19 12:36:27,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:36:27,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:36:27,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:36:27,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:36:29,986.986 INFO    ] ================================================
[2026-06-19 12:36:30,002.002 INFO    ] Launching Daemon at Fri Jun 19 12:36:29 IST 2026
[2026-06-19 12:36:30,013.013 INFO    ] ================================================
[2026-06-19 12:36:30,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:36:30
[2026-06-19 12:36:31,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:36:31,469.469 INFO    ] Initializing speech engine...
[2026-06-19 12:36:31,479.479 INFO    ] 2026-06-19 12:36:31
[2026-06-19 12:36:31,749.749 INFO    ] 2026-06-19 12:36:31
[2026-06-19 12:36:31,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:36:32,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:36:32,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:36:32,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:36:32,269.269 INFO    ] time= 19/06/2026 12:36:32
[2026-06-19 12:36:32,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:36:32,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:36:32,505.505 INFO    ] No existing commands found in stream
[2026-06-19 12:36:37,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:36:37,549.549 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 12:36:38,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:36:38,697.697 INFO    ] Checking for system updates...
[2026-06-19 12:36:38,733.733 INFO    ] 200
[2026-06-19 12:36:38,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:38,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:36:38,791.791 INFO    ] No update needed
[2026-06-19 12:36:38,793.793 INFO    ] Checking for camera pi updates...
[2026-06-19 12:36:38,827.827 INFO    ] 200
[2026-06-19 12:36:38,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:38,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:36:38,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:36:38,917.917 INFO    ] No camera update needed
[2026-06-19 12:36:38,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:36:38,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:36:38,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:36:38,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:36:40,973.973 INFO    ] ================================================
[2026-06-19 12:36:40,989.989 INFO    ] Launching Daemon at Fri Jun 19 12:36:40 IST 2026
[2026-06-19 12:36:41,000.000 INFO    ] ================================================
[2026-06-19 12:36:41,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:36:41
[2026-06-19 12:36:42,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:36:42,418.418 INFO    ] Initializing speech engine...
[2026-06-19 12:36:42,441.441 INFO    ] 2026-06-19 12:36:42
[2026-06-19 12:36:42,700.700 INFO    ] 2026-06-19 12:36:42
[2026-06-19 12:36:42,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:36:42,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:36:43,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:36:43,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:36:43,253.253 INFO    ] time= 19/06/2026 12:36:43
[2026-06-19 12:36:43,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:36:43,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:36:43,413.413 INFO    ] No existing commands found in stream
[2026-06-19 12:36:48,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:36:48,444.444 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 12:36:52,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:36:52,677.677 INFO    ] Checking for system updates...
[2026-06-19 12:36:52,713.713 INFO    ] 200
[2026-06-19 12:36:52,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:52,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:36:52,771.771 INFO    ] No update needed
[2026-06-19 12:36:52,774.774 INFO    ] Checking for camera pi updates...
[2026-06-19 12:36:52,807.807 INFO    ] 200
[2026-06-19 12:36:52,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:36:52,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:36:52,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:36:52,895.895 INFO    ] No camera update needed
[2026-06-19 12:36:52,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:36:52,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:36:52,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:36:52,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:36:54,952.952 INFO    ] ================================================
[2026-06-19 12:36:54,968.968 INFO    ] Launching Daemon at Fri Jun 19 12:36:54 IST 2026
[2026-06-19 12:36:54,978.978 INFO    ] ================================================
[2026-06-19 12:36:55,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:36:55
[2026-06-19 12:36:56,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:36:56,618.618 INFO    ] Initializing speech engine...
[2026-06-19 12:36:56,626.626 INFO    ] 2026-06-19 12:36:56
[2026-06-19 12:36:56,898.898 INFO    ] 2026-06-19 12:36:56
[2026-06-19 12:36:56,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:36:57,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:36:57,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:36:57,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:36:57,468.468 INFO    ] time= 19/06/2026 12:36:57
[2026-06-19 12:36:57,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:36:57,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:36:57,667.667 INFO    ] No existing commands found in stream
[2026-06-19 12:37:02,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:37:02,702.702 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 12:37:05,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:37:05,554.554 INFO    ] Checking for system updates...
[2026-06-19 12:37:05,595.595 INFO    ] 200
[2026-06-19 12:37:05,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:37:05,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:37:05,653.653 INFO    ] No update needed
[2026-06-19 12:37:05,656.656 INFO    ] Checking for camera pi updates...
[2026-06-19 12:37:05,690.690 INFO    ] 200
[2026-06-19 12:37:05,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:37:05,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:37:05,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:37:05,864.864 INFO    ] No camera update needed
[2026-06-19 12:37:05,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:37:05,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:37:05,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:37:05,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:37:07,918.918 INFO    ] ================================================
[2026-06-19 12:37:07,937.937 INFO    ] Launching Daemon at Fri Jun 19 12:37:07 IST 2026
[2026-06-19 12:37:07,949.949 INFO    ] ================================================
[2026-06-19 12:37:08,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:37:08
[2026-06-19 12:37:09,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:37:09,375.375 INFO    ] Initializing speech engine...
[2026-06-19 12:37:09,382.382 INFO    ] 2026-06-19 12:37:09
[2026-06-19 12:37:09,634.634 INFO    ] 2026-06-19 12:37:09
[2026-06-19 12:37:09,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:37:09,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:37:09,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:37:10,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:37:10,200.200 INFO    ] time= 19/06/2026 12:37:10
[2026-06-19 12:37:10,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:37:10,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:37:10,337.337 INFO    ] No existing commands found in stream
[2026-06-19 12:37:15,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:37:15,364.364 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 12:37:19,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:37:19,148.148 INFO    ] Checking for system updates...
[2026-06-19 12:37:19,184.184 INFO    ] 200
[2026-06-19 12:37:19,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:37:19,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:37:19,243.243 INFO    ] No update needed
[2026-06-19 12:37:19,245.245 INFO    ] Checking for camera pi updates...
[2026-06-19 12:37:19,283.283 INFO    ] 200
[2026-06-19 12:37:19,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:37:19,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:37:19,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:37:19,369.369 INFO    ] No camera update needed
[2026-06-19 12:37:19,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:37:19,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:37:19,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:37:19,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:37:21,426.426 INFO    ] ================================================
[2026-06-19 12:37:21,441.441 INFO    ] Launching Daemon at Fri Jun 19 12:37:21 IST 2026
[2026-06-19 12:37:21,452.452 INFO    ] ================================================
[2026-06-19 12:37:22,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:37:22
[2026-06-19 12:37:22,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:37:22,906.906 INFO    ] Initializing speech engine...
[2026-06-19 12:37:22,912.912 INFO    ] 2026-06-19 12:37:22
[2026-06-19 12:37:23,210.210 INFO    ] 2026-06-19 12:37:23
[2026-06-19 12:37:23,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:37:23,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:37:23,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:37:23,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:37:23,634.634 INFO    ] time= 19/06/2026 12:37:23
[2026-06-19 12:37:23,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:37:23,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:37:23,799.799 INFO    ] No existing commands found in stream
[2026-06-19 12:37:28,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:37:28,832.832 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 12:37:32,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:37:32,767.767 INFO    ] Checking for system updates...
[2026-06-19 12:37:32,804.804 INFO    ] 200
[2026-06-19 12:37:32,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:37:32,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:37:32,863.863 INFO    ] No update needed
[2026-06-19 12:37:32,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 12:37:32,902.902 INFO    ] 200
[2026-06-19 12:37:32,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:37:32,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:37:32,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:37:32,992.992 INFO    ] No camera update needed
[2026-06-19 12:37:32,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:37:32,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:37:33,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:37:33,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:37:35,047.047 INFO    ] ================================================
[2026-06-19 12:37:35,062.062 INFO    ] Launching Daemon at Fri Jun 19 12:37:35 IST 2026
[2026-06-19 12:37:35,073.073 INFO    ] ================================================
[2026-06-19 12:37:35,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:37:35
[2026-06-19 12:37:36,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:37:36,490.490 INFO    ] Initializing speech engine...
[2026-06-19 12:37:36,496.496 INFO    ] 2026-06-19 12:37:36
[2026-06-19 12:37:36,792.792 INFO    ] 2026-06-19 12:37:36
[2026-06-19 12:37:36,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:37:37,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:37:37,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:37:37,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:37:37,175.175 INFO    ] time= 19/06/2026 12:37:37
[2026-06-19 12:37:37,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:37:37,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:37:37,299.299 INFO    ] No existing commands found in stream
[2026-06-19 12:37:42,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:37:42,312.312 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 12:37:46,436.436 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:37:46,439.439 INFO    ] Checking for system updates...
[2026-06-19 12:37:46,476.476 INFO    ] 200
[2026-06-19 12:37:46,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:37:46,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:37:46,540.540 INFO    ] No update needed
[2026-06-19 12:37:46,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 12:37:46,577.577 INFO    ] 200
[2026-06-19 12:37:46,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:37:46,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:37:46,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:37:46,666.666 INFO    ] No camera update needed
[2026-06-19 12:37:46,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:37:46,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:37:46,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:37:46,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:37:48,723.723 INFO    ] ================================================
[2026-06-19 12:37:48,739.739 INFO    ] Launching Daemon at Fri Jun 19 12:37:48 IST 2026
[2026-06-19 12:37:48,750.750 INFO    ] ================================================
[2026-06-19 12:37:49,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:37:49
[2026-06-19 12:37:49,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:37:50,195.195 INFO    ] Initializing speech engine...
[2026-06-19 12:37:50,204.204 INFO    ] 2026-06-19 12:37:50
[2026-06-19 12:37:50,500.500 INFO    ] 2026-06-19 12:37:50
[2026-06-19 12:37:50,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:37:50,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:37:50,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:37:50,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:37:50,883.883 INFO    ] time= 19/06/2026 12:37:50
[2026-06-19 12:37:50,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:37:50,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:37:51,008.008 INFO    ] No existing commands found in stream
[2026-06-19 12:37:56,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:37:56,029.029 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 12:38:00,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:38:00,130.130 INFO    ] Checking for system updates...
[2026-06-19 12:38:00,167.167 INFO    ] 200
[2026-06-19 12:38:00,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:00,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:38:00,224.224 INFO    ] No update needed
[2026-06-19 12:38:00,227.227 INFO    ] Checking for camera pi updates...
[2026-06-19 12:38:00,261.261 INFO    ] 200
[2026-06-19 12:38:00,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:00,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:38:00,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:38:00,352.352 INFO    ] No camera update needed
[2026-06-19 12:38:00,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:38:00,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:38:00,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:38:00,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:38:02,431.431 INFO    ] ================================================
[2026-06-19 12:38:02,449.449 INFO    ] Launching Daemon at Fri Jun 19 12:38:02 IST 2026
[2026-06-19 12:38:02,462.462 INFO    ] ================================================
[2026-06-19 12:38:03,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:38:03
[2026-06-19 12:38:03,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:38:03,974.974 INFO    ] Initializing speech engine...
[2026-06-19 12:38:03,989.989 INFO    ] 2026-06-19 12:38:03
[2026-06-19 12:38:04,274.274 INFO    ] 2026-06-19 12:38:04
[2026-06-19 12:38:04,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:38:04,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:38:04,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:38:04,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:38:04,690.690 INFO    ] time= 19/06/2026 12:38:04
[2026-06-19 12:38:04,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:38:04,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:38:04,850.850 INFO    ] No existing commands found in stream
[2026-06-19 12:38:09,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:38:09,872.872 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 12:38:12,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:38:12,787.787 INFO    ] Checking for system updates...
[2026-06-19 12:38:12,823.823 INFO    ] 200
[2026-06-19 12:38:12,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:12,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:38:12,888.888 INFO    ] No update needed
[2026-06-19 12:38:12,890.890 INFO    ] Checking for camera pi updates...
[2026-06-19 12:38:12,924.924 INFO    ] 200
[2026-06-19 12:38:12,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:12,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:38:13,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:38:13,013.013 INFO    ] No camera update needed
[2026-06-19 12:38:13,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:38:13,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:38:13,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:38:13,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:38:15,070.070 INFO    ] ================================================
[2026-06-19 12:38:15,085.085 INFO    ] Launching Daemon at Fri Jun 19 12:38:15 IST 2026
[2026-06-19 12:38:15,096.096 INFO    ] ================================================
[2026-06-19 12:38:15,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:38:15
[2026-06-19 12:38:16,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:38:16,557.557 INFO    ] Initializing speech engine...
[2026-06-19 12:38:16,562.562 INFO    ] 2026-06-19 12:38:16
[2026-06-19 12:38:16,822.822 INFO    ] 2026-06-19 12:38:16
[2026-06-19 12:38:16,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:38:17,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:38:17,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:38:17,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:38:17,322.322 INFO    ] time= 19/06/2026 12:38:17
[2026-06-19 12:38:17,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:38:17,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:38:17,519.519 INFO    ] No existing commands found in stream
[2026-06-19 12:38:22,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:38:22,538.538 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 12:38:25,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:38:25,460.460 INFO    ] Checking for system updates...
[2026-06-19 12:38:25,500.500 INFO    ] 200
[2026-06-19 12:38:25,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:25,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:38:25,558.558 INFO    ] No update needed
[2026-06-19 12:38:25,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 12:38:25,598.598 INFO    ] 200
[2026-06-19 12:38:25,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:25,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:38:25,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:38:25,800.800 INFO    ] No camera update needed
[2026-06-19 12:38:25,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:38:25,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:38:25,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:38:25,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:38:27,857.857 INFO    ] ================================================
[2026-06-19 12:38:27,873.873 INFO    ] Launching Daemon at Fri Jun 19 12:38:27 IST 2026
[2026-06-19 12:38:27,884.884 INFO    ] ================================================
[2026-06-19 12:38:28,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:38:28
[2026-06-19 12:38:29,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:38:29,488.488 INFO    ] Initializing speech engine...
[2026-06-19 12:38:29,496.496 INFO    ] 2026-06-19 12:38:29
[2026-06-19 12:38:29,768.768 INFO    ] 2026-06-19 12:38:29
[2026-06-19 12:38:29,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:38:30,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:38:30,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:38:30,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:38:30,319.319 INFO    ] time= 19/06/2026 12:38:30
[2026-06-19 12:38:30,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:38:30,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:38:30,479.479 INFO    ] No existing commands found in stream
[2026-06-19 12:38:35,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:38:35,518.518 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 12:38:39,687.687 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:38:39,690.690 INFO    ] Checking for system updates...
[2026-06-19 12:38:39,726.726 INFO    ] 200
[2026-06-19 12:38:39,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:39,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:38:39,785.785 INFO    ] No update needed
[2026-06-19 12:38:39,788.788 INFO    ] Checking for camera pi updates...
[2026-06-19 12:38:39,826.826 INFO    ] 200
[2026-06-19 12:38:39,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:39,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:38:39,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:38:39,913.913 INFO    ] No camera update needed
[2026-06-19 12:38:39,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:38:39,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:38:39,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:38:39,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:38:41,973.973 INFO    ] ================================================
[2026-06-19 12:38:41,989.989 INFO    ] Launching Daemon at Fri Jun 19 12:38:41 IST 2026
[2026-06-19 12:38:42,000.000 INFO    ] ================================================
[2026-06-19 12:38:42,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:38:42
[2026-06-19 12:38:43,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:38:43,484.484 INFO    ] Initializing speech engine...
[2026-06-19 12:38:43,495.495 INFO    ] 2026-06-19 12:38:43
[2026-06-19 12:38:43,774.774 INFO    ] 2026-06-19 12:38:43
[2026-06-19 12:38:43,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:38:44,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:38:44,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:38:44,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:38:44,313.313 INFO    ] time= 19/06/2026 12:38:44
[2026-06-19 12:38:44,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:38:44,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:38:44,459.459 INFO    ] No existing commands found in stream
[2026-06-19 12:38:49,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:38:49,484.484 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 12:38:52,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:38:52,920.920 INFO    ] Checking for system updates...
[2026-06-19 12:38:52,960.960 INFO    ] 200
[2026-06-19 12:38:52,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:53,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:38:53,019.019 INFO    ] No update needed
[2026-06-19 12:38:53,022.022 INFO    ] Checking for camera pi updates...
[2026-06-19 12:38:53,057.057 INFO    ] 200
[2026-06-19 12:38:53,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:38:53,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:38:53,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:38:53,146.146 INFO    ] No camera update needed
[2026-06-19 12:38:53,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:38:53,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:38:53,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:38:53,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:38:55,203.203 INFO    ] ================================================
[2026-06-19 12:38:55,218.218 INFO    ] Launching Daemon at Fri Jun 19 12:38:55 IST 2026
[2026-06-19 12:38:55,229.229 INFO    ] ================================================
[2026-06-19 12:38:55,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:38:55
[2026-06-19 12:38:56,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:38:56,694.694 INFO    ] Initializing speech engine...
[2026-06-19 12:38:56,706.706 INFO    ] 2026-06-19 12:38:56
[2026-06-19 12:38:56,973.973 INFO    ] 2026-06-19 12:38:56
[2026-06-19 12:38:57,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:38:57,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:38:57,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:38:57,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:38:57,454.454 INFO    ] time= 19/06/2026 12:38:57
[2026-06-19 12:38:57,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:38:57,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:38:57,690.690 INFO    ] No existing commands found in stream
[2026-06-19 12:39:02,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:39:02,717.717 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 12:39:06,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:39:06,758.758 INFO    ] Checking for system updates...
[2026-06-19 12:39:06,793.793 INFO    ] 200
[2026-06-19 12:39:06,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:39:06,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:39:06,859.859 INFO    ] No update needed
[2026-06-19 12:39:06,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 12:39:06,895.895 INFO    ] 200
[2026-06-19 12:39:06,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:39:06,938.938 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:39:06,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:39:06,980.980 INFO    ] No camera update needed
[2026-06-19 12:39:06,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:39:06,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:39:06,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:39:06,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:39:09,042.042 INFO    ] ================================================
[2026-06-19 12:39:09,058.058 INFO    ] Launching Daemon at Fri Jun 19 12:39:09 IST 2026
[2026-06-19 12:39:09,069.069 INFO    ] ================================================
[2026-06-19 12:39:09,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:39:09
[2026-06-19 12:39:10,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:39:10,566.566 INFO    ] Initializing speech engine...
[2026-06-19 12:39:10,573.573 INFO    ] 2026-06-19 12:39:10
[2026-06-19 12:39:10,840.840 INFO    ] 2026-06-19 12:39:10
[2026-06-19 12:39:10,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:39:11,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:39:11,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:39:11,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:39:11,368.368 INFO    ] time= 19/06/2026 12:39:11
[2026-06-19 12:39:11,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:39:11,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:39:11,570.570 INFO    ] No existing commands found in stream
[2026-06-19 12:39:16,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:39:16,588.588 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-19 12:39:22,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:39:22,291.291 INFO    ] Checking for system updates...
[2026-06-19 12:39:22,328.328 INFO    ] 200
[2026-06-19 12:39:22,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:39:22,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:39:22,387.387 INFO    ] No update needed
[2026-06-19 12:39:22,389.389 INFO    ] Checking for camera pi updates...
[2026-06-19 12:39:22,422.422 INFO    ] 200
[2026-06-19 12:39:22,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:39:22,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:39:22,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:39:22,508.508 INFO    ] No camera update needed
[2026-06-19 12:39:22,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:39:22,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:39:22,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:39:22,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:39:24,564.564 INFO    ] ================================================
[2026-06-19 12:39:24,579.579 INFO    ] Launching Daemon at Fri Jun 19 12:39:24 IST 2026
[2026-06-19 12:39:24,590.590 INFO    ] ================================================
[2026-06-19 12:39:25,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:39:25
[2026-06-19 12:39:25,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:39:26,007.007 INFO    ] Initializing speech engine...
[2026-06-19 12:39:26,032.032 INFO    ] 2026-06-19 12:39:26
[2026-06-19 12:39:26,303.303 INFO    ] 2026-06-19 12:39:26
[2026-06-19 12:39:26,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:39:26,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:39:26,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:39:26,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:39:26,716.716 INFO    ] time= 19/06/2026 12:39:26
[2026-06-19 12:39:26,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:39:26,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:39:26,871.871 INFO    ] No existing commands found in stream
[2026-06-19 12:39:31,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:39:31,900.900 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 12:39:38,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:39:38,613.613 INFO    ] Checking for system updates...
[2026-06-19 12:39:38,650.650 INFO    ] 200
[2026-06-19 12:39:38,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:39:38,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:39:38,713.713 INFO    ] No update needed
[2026-06-19 12:39:38,715.715 INFO    ] Checking for camera pi updates...
[2026-06-19 12:39:38,749.749 INFO    ] 200
[2026-06-19 12:39:38,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:39:38,796.796 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:39:38,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:39:38,847.847 INFO    ] No camera update needed
[2026-06-19 12:39:38,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:39:38,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:39:38,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:39:38,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:39:40,902.902 INFO    ] ================================================
[2026-06-19 12:39:40,918.918 INFO    ] Launching Daemon at Fri Jun 19 12:39:40 IST 2026
[2026-06-19 12:39:40,930.930 INFO    ] ================================================
[2026-06-19 12:39:41,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:39:41
[2026-06-19 12:39:42,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:39:42,387.387 INFO    ] Initializing speech engine...
[2026-06-19 12:39:42,396.396 INFO    ] 2026-06-19 12:39:42
[2026-06-19 12:39:42,652.652 INFO    ] 2026-06-19 12:39:42
[2026-06-19 12:39:42,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:39:42,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:39:42,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:39:43,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:39:43,192.192 INFO    ] time= 19/06/2026 12:39:43
[2026-06-19 12:39:43,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:39:43,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:39:43,347.347 INFO    ] No existing commands found in stream
[2026-06-19 12:39:48,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:39:48,372.372 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 12:39:51,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:39:51,128.128 INFO    ] Checking for system updates...
[2026-06-19 12:39:51,168.168 INFO    ] 200
[2026-06-19 12:39:51,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:39:51,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:39:51,226.226 INFO    ] No update needed
[2026-06-19 12:39:51,228.228 INFO    ] Checking for camera pi updates...
[2026-06-19 12:39:51,261.261 INFO    ] 200
[2026-06-19 12:39:51,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:39:51,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:39:51,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:39:51,343.343 INFO    ] No camera update needed
[2026-06-19 12:39:51,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:39:51,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:39:51,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:39:51,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:39:53,401.401 INFO    ] ================================================
[2026-06-19 12:39:53,417.417 INFO    ] Launching Daemon at Fri Jun 19 12:39:53 IST 2026
[2026-06-19 12:39:53,429.429 INFO    ] ================================================
[2026-06-19 12:39:53,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:39:53
[2026-06-19 12:39:54,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:39:54,903.903 INFO    ] Initializing speech engine...
[2026-06-19 12:39:54,911.911 INFO    ] 2026-06-19 12:39:54
[2026-06-19 12:39:55,234.234 INFO    ] 2026-06-19 12:39:55
[2026-06-19 12:39:55,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:39:55,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:39:55,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:39:55,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:39:55,686.686 INFO    ] time= 19/06/2026 12:39:55
[2026-06-19 12:39:55,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:39:55,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:39:55,954.954 INFO    ] No existing commands found in stream
[2026-06-19 12:40:00,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:40:00,983.983 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 12:40:07,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:40:07,424.424 INFO    ] Checking for system updates...
[2026-06-19 12:40:07,461.461 INFO    ] 200
[2026-06-19 12:40:07,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:07,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:40:07,528.528 INFO    ] No update needed
[2026-06-19 12:40:07,531.531 INFO    ] Checking for camera pi updates...
[2026-06-19 12:40:07,569.569 INFO    ] 200
[2026-06-19 12:40:07,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:07,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:40:07,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:40:07,662.662 INFO    ] No camera update needed
[2026-06-19 12:40:07,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:40:07,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:40:07,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:40:07,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:40:09,718.718 INFO    ] ================================================
[2026-06-19 12:40:09,734.734 INFO    ] Launching Daemon at Fri Jun 19 12:40:09 IST 2026
[2026-06-19 12:40:09,746.746 INFO    ] ================================================
[2026-06-19 12:40:10,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:40:10
[2026-06-19 12:40:11,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:40:11,380.380 INFO    ] Initializing speech engine...
[2026-06-19 12:40:11,389.389 INFO    ] 2026-06-19 12:40:11
[2026-06-19 12:40:11,672.672 INFO    ] 2026-06-19 12:40:11
[2026-06-19 12:40:11,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:40:11,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:40:11,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:40:12,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:40:12,226.226 INFO    ] time= 19/06/2026 12:40:12
[2026-06-19 12:40:12,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:40:12,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:40:12,411.411 INFO    ] No existing commands found in stream
[2026-06-19 12:40:17,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:40:17,451.451 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 12:40:18,545.545 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:40:18,548.548 INFO    ] Checking for system updates...
[2026-06-19 12:40:18,586.586 INFO    ] 200
[2026-06-19 12:40:18,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:18,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:40:18,652.652 INFO    ] No update needed
[2026-06-19 12:40:18,655.655 INFO    ] Checking for camera pi updates...
[2026-06-19 12:40:18,691.691 INFO    ] 200
[2026-06-19 12:40:18,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:18,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:40:18,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:40:18,790.790 INFO    ] No camera update needed
[2026-06-19 12:40:18,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:40:18,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:40:18,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:40:18,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:40:20,851.851 INFO    ] ================================================
[2026-06-19 12:40:20,867.867 INFO    ] Launching Daemon at Fri Jun 19 12:40:20 IST 2026
[2026-06-19 12:40:20,878.878 INFO    ] ================================================
[2026-06-19 12:40:21,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:40:21
[2026-06-19 12:40:22,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:40:22,304.304 INFO    ] Initializing speech engine...
[2026-06-19 12:40:22,311.311 INFO    ] 2026-06-19 12:40:22
[2026-06-19 12:40:22,562.562 INFO    ] 2026-06-19 12:40:22
[2026-06-19 12:40:22,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:40:22,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:40:22,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:40:23,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:40:23,036.036 INFO    ] time= 19/06/2026 12:40:23
[2026-06-19 12:40:23,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:40:23,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:40:23,239.239 INFO    ] No existing commands found in stream
[2026-06-19 12:40:28,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:40:28,253.253 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 12:40:30,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:40:30,074.074 INFO    ] Checking for system updates...
[2026-06-19 12:40:30,110.110 INFO    ] 200
[2026-06-19 12:40:30,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:30,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:40:30,167.167 INFO    ] No update needed
[2026-06-19 12:40:30,170.170 INFO    ] Checking for camera pi updates...
[2026-06-19 12:40:30,203.203 INFO    ] 200
[2026-06-19 12:40:30,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:30,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:40:30,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:40:30,389.389 INFO    ] No camera update needed
[2026-06-19 12:40:30,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:40:30,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:40:30,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:40:30,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:40:32,451.451 INFO    ] ================================================
[2026-06-19 12:40:32,469.469 INFO    ] Launching Daemon at Fri Jun 19 12:40:32 IST 2026
[2026-06-19 12:40:32,481.481 INFO    ] ================================================
[2026-06-19 12:40:33,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:40:33
[2026-06-19 12:40:33,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:40:33,943.943 INFO    ] Initializing speech engine...
[2026-06-19 12:40:33,950.950 INFO    ] 2026-06-19 12:40:33
[2026-06-19 12:40:34,209.209 INFO    ] 2026-06-19 12:40:34
[2026-06-19 12:40:34,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:40:34,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:40:34,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:40:34,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:40:34,757.757 INFO    ] time= 19/06/2026 12:40:34
[2026-06-19 12:40:34,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:40:34,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:40:34,926.926 INFO    ] No existing commands found in stream
[2026-06-19 12:40:39,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:40:39,943.943 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 12:40:42,669.669 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:40:42,671.671 INFO    ] Checking for system updates...
[2026-06-19 12:40:42,711.711 INFO    ] 200
[2026-06-19 12:40:42,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:42,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:40:42,768.768 INFO    ] No update needed
[2026-06-19 12:40:42,771.771 INFO    ] Checking for camera pi updates...
[2026-06-19 12:40:42,804.804 INFO    ] 200
[2026-06-19 12:40:42,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:42,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:40:42,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:40:42,898.898 INFO    ] No camera update needed
[2026-06-19 12:40:42,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:40:42,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:40:42,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:40:42,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:40:44,955.955 INFO    ] ================================================
[2026-06-19 12:40:44,972.972 INFO    ] Launching Daemon at Fri Jun 19 12:40:44 IST 2026
[2026-06-19 12:40:44,983.983 INFO    ] ================================================
[2026-06-19 12:40:45,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:40:45
[2026-06-19 12:40:46,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:40:46,605.605 INFO    ] Initializing speech engine...
[2026-06-19 12:40:46,612.612 INFO    ] 2026-06-19 12:40:46
[2026-06-19 12:40:46,921.921 INFO    ] 2026-06-19 12:40:46
[2026-06-19 12:40:47,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:40:47,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:40:47,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:40:47,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:40:47,385.385 INFO    ] time= 19/06/2026 12:40:47
[2026-06-19 12:40:47,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:40:47,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:40:47,572.572 INFO    ] No existing commands found in stream
[2026-06-19 12:40:52,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:40:52,602.602 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 12:40:54,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:40:54,870.870 INFO    ] Checking for system updates...
[2026-06-19 12:40:54,910.910 INFO    ] 200
[2026-06-19 12:40:54,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:54,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:40:54,969.969 INFO    ] No update needed
[2026-06-19 12:40:54,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 12:40:55,005.005 INFO    ] 200
[2026-06-19 12:40:55,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:40:55,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:40:55,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:40:55,089.089 INFO    ] No camera update needed
[2026-06-19 12:40:55,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:40:55,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:40:55,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:40:55,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:40:57,146.146 INFO    ] ================================================
[2026-06-19 12:40:57,162.162 INFO    ] Launching Daemon at Fri Jun 19 12:40:57 IST 2026
[2026-06-19 12:40:57,173.173 INFO    ] ================================================
[2026-06-19 12:40:57,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:40:57
[2026-06-19 12:40:58,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:40:58,597.597 INFO    ] Initializing speech engine...
[2026-06-19 12:40:58,615.615 INFO    ] 2026-06-19 12:40:58
[2026-06-19 12:40:58,868.868 INFO    ] 2026-06-19 12:40:58
[2026-06-19 12:40:58,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:40:59,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:40:59,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:40:59,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:40:59,369.369 INFO    ] time= 19/06/2026 12:40:59
[2026-06-19 12:40:59,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:40:59,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:40:59,581.581 INFO    ] No existing commands found in stream
[2026-06-19 12:41:04,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:41:04,604.604 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 12:41:07,934.934 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:41:07,937.937 INFO    ] Checking for system updates...
[2026-06-19 12:41:07,972.972 INFO    ] 200
[2026-06-19 12:41:07,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:08,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:41:08,030.030 INFO    ] No update needed
[2026-06-19 12:41:08,032.032 INFO    ] Checking for camera pi updates...
[2026-06-19 12:41:08,066.066 INFO    ] 200
[2026-06-19 12:41:08,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:08,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:41:08,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:41:08,156.156 INFO    ] No camera update needed
[2026-06-19 12:41:08,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:41:08,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:41:08,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:41:08,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:41:10,215.215 INFO    ] ================================================
[2026-06-19 12:41:10,231.231 INFO    ] Launching Daemon at Fri Jun 19 12:41:10 IST 2026
[2026-06-19 12:41:10,243.243 INFO    ] ================================================
[2026-06-19 12:41:10,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:41:10
[2026-06-19 12:41:11,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:41:11,788.788 INFO    ] Initializing speech engine...
[2026-06-19 12:41:11,796.796 INFO    ] 2026-06-19 12:41:11
[2026-06-19 12:41:12,054.054 INFO    ] 2026-06-19 12:41:12
[2026-06-19 12:41:12,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:41:12,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:41:12,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:41:12,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:41:12,539.539 INFO    ] time= 19/06/2026 12:41:12
[2026-06-19 12:41:12,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:41:12,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:41:12,738.738 INFO    ] No existing commands found in stream
[2026-06-19 12:41:17,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:41:17,763.763 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 12:41:21,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:41:21,451.451 INFO    ] Checking for system updates...
[2026-06-19 12:41:21,487.487 INFO    ] 200
[2026-06-19 12:41:21,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:21,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:41:21,544.544 INFO    ] No update needed
[2026-06-19 12:41:21,546.546 INFO    ] Checking for camera pi updates...
[2026-06-19 12:41:21,584.584 INFO    ] 200
[2026-06-19 12:41:21,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:21,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:41:21,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:41:21,684.684 INFO    ] No camera update needed
[2026-06-19 12:41:21,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:41:21,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:41:21,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:41:21,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:41:23,738.738 INFO    ] ================================================
[2026-06-19 12:41:23,755.755 INFO    ] Launching Daemon at Fri Jun 19 12:41:23 IST 2026
[2026-06-19 12:41:23,767.767 INFO    ] ================================================
[2026-06-19 12:41:24,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:41:24
[2026-06-19 12:41:24,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:41:25,227.227 INFO    ] Initializing speech engine...
[2026-06-19 12:41:25,241.241 INFO    ] 2026-06-19 12:41:25
[2026-06-19 12:41:25,524.524 INFO    ] 2026-06-19 12:41:25
[2026-06-19 12:41:25,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:41:25,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:41:25,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:41:26,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:41:26,053.053 INFO    ] time= 19/06/2026 12:41:26
[2026-06-19 12:41:26,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:41:26,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:41:26,214.214 INFO    ] No existing commands found in stream
[2026-06-19 12:41:31,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:41:31,241.241 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 12:41:35,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:41:35,531.531 INFO    ] Checking for system updates...
[2026-06-19 12:41:35,568.568 INFO    ] 200
[2026-06-19 12:41:35,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:35,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:41:35,626.626 INFO    ] No update needed
[2026-06-19 12:41:35,629.629 INFO    ] Checking for camera pi updates...
[2026-06-19 12:41:35,664.664 INFO    ] 200
[2026-06-19 12:41:35,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:35,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:41:35,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:41:35,751.751 INFO    ] No camera update needed
[2026-06-19 12:41:35,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:41:35,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:41:35,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:41:35,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:41:37,809.809 INFO    ] ================================================
[2026-06-19 12:41:37,824.824 INFO    ] Launching Daemon at Fri Jun 19 12:41:37 IST 2026
[2026-06-19 12:41:37,835.835 INFO    ] ================================================
[2026-06-19 12:41:38,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:41:38
[2026-06-19 12:41:38,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:41:39,270.270 INFO    ] Initializing speech engine...
[2026-06-19 12:41:39,277.277 INFO    ] 2026-06-19 12:41:39
[2026-06-19 12:41:39,539.539 INFO    ] 2026-06-19 12:41:39
[2026-06-19 12:41:39,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:41:39,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:41:39,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:41:39,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:41:40,028.028 INFO    ] time= 19/06/2026 12:41:39
[2026-06-19 12:41:40,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:41:40,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:41:40,243.243 INFO    ] No existing commands found in stream
[2026-06-19 12:41:45,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:41:45,271.271 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 12:41:46,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:41:46,505.505 INFO    ] Checking for system updates...
[2026-06-19 12:41:46,543.543 INFO    ] 200
[2026-06-19 12:41:46,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:46,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:41:46,603.603 INFO    ] No update needed
[2026-06-19 12:41:46,606.606 INFO    ] Checking for camera pi updates...
[2026-06-19 12:41:46,641.641 INFO    ] 200
[2026-06-19 12:41:46,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:46,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:41:46,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:41:46,721.721 INFO    ] No camera update needed
[2026-06-19 12:41:46,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:41:46,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:41:46,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:41:46,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:41:48,780.780 INFO    ] ================================================
[2026-06-19 12:41:48,796.796 INFO    ] Launching Daemon at Fri Jun 19 12:41:48 IST 2026
[2026-06-19 12:41:48,807.807 INFO    ] ================================================
[2026-06-19 12:41:49,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:41:49
[2026-06-19 12:41:50,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:41:50,388.388 INFO    ] Initializing speech engine...
[2026-06-19 12:41:50,397.397 INFO    ] 2026-06-19 12:41:50
[2026-06-19 12:41:50,672.672 INFO    ] 2026-06-19 12:41:50
[2026-06-19 12:41:50,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:41:50,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:41:50,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:41:51,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:41:51,155.155 INFO    ] time= 19/06/2026 12:41:51
[2026-06-19 12:41:51,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:41:51,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:41:51,419.419 INFO    ] No existing commands found in stream
[2026-06-19 12:41:56,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:41:56,452.452 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 12:41:57,385.385 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:41:57,388.388 INFO    ] Checking for system updates...
[2026-06-19 12:41:57,427.427 INFO    ] 200
[2026-06-19 12:41:57,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:57,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:41:57,484.484 INFO    ] No update needed
[2026-06-19 12:41:57,487.487 INFO    ] Checking for camera pi updates...
[2026-06-19 12:41:57,521.521 INFO    ] 200
[2026-06-19 12:41:57,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:41:57,567.567 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:41:57,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:41:57,613.613 INFO    ] No camera update needed
[2026-06-19 12:41:57,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:41:57,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:41:57,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:41:57,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:41:59,668.668 INFO    ] ================================================
[2026-06-19 12:41:59,684.684 INFO    ] Launching Daemon at Fri Jun 19 12:41:59 IST 2026
[2026-06-19 12:41:59,695.695 INFO    ] ================================================
[2026-06-19 12:42:00,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:42:00
[2026-06-19 12:42:00,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:42:01,152.152 INFO    ] Initializing speech engine...
[2026-06-19 12:42:01,161.161 INFO    ] 2026-06-19 12:42:01
[2026-06-19 12:42:01,437.437 INFO    ] 2026-06-19 12:42:01
[2026-06-19 12:42:01,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:42:01,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:42:01,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:42:01,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:42:01,942.942 INFO    ] time= 19/06/2026 12:42:01
[2026-06-19 12:42:01,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:42:01,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:42:02,042.042 INFO    ] No existing commands found in stream
[2026-06-19 12:42:07,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:42:07,056.056 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 12:42:09,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:42:09,684.684 INFO    ] Checking for system updates...
[2026-06-19 12:42:09,722.722 INFO    ] 200
[2026-06-19 12:42:09,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:42:09,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:42:09,782.782 INFO    ] No update needed
[2026-06-19 12:42:09,785.785 INFO    ] Checking for camera pi updates...
[2026-06-19 12:42:09,820.820 INFO    ] 200
[2026-06-19 12:42:09,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:42:09,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:42:09,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:42:09,912.912 INFO    ] No camera update needed
[2026-06-19 12:42:09,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:42:09,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:42:09,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:42:09,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:42:11,969.969 INFO    ] ================================================
[2026-06-19 12:42:11,985.985 INFO    ] Launching Daemon at Fri Jun 19 12:42:11 IST 2026
[2026-06-19 12:42:12,996.996 INFO    ] ================================================
[2026-06-19 12:42:12,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:42:12
[2026-06-19 12:42:13,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:42:13,589.589 INFO    ] Initializing speech engine...
[2026-06-19 12:42:13,601.601 INFO    ] 2026-06-19 12:42:13
[2026-06-19 12:42:13,878.878 INFO    ] 2026-06-19 12:42:13
[2026-06-19 12:42:13,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:42:14,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:42:14,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:42:14,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:42:14,417.417 INFO    ] time= 19/06/2026 12:42:14
[2026-06-19 12:42:14,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:42:14,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:42:14,583.583 INFO    ] No existing commands found in stream
[2026-06-19 12:42:19,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:42:19,616.616 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 12:42:23,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:42:23,532.532 INFO    ] Checking for system updates...
[2026-06-19 12:42:23,569.569 INFO    ] 200
[2026-06-19 12:42:23,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:42:23,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:42:23,627.627 INFO    ] No update needed
[2026-06-19 12:42:23,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 12:42:23,663.663 INFO    ] 200
[2026-06-19 12:42:23,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:42:23,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:42:23,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:42:23,753.753 INFO    ] No camera update needed
[2026-06-19 12:42:23,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:42:23,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:42:23,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:42:23,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:42:25,812.812 INFO    ] ================================================
[2026-06-19 12:42:25,828.828 INFO    ] Launching Daemon at Fri Jun 19 12:42:25 IST 2026
[2026-06-19 12:42:25,839.839 INFO    ] ================================================
[2026-06-19 12:42:26,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:42:26
[2026-06-19 12:42:27,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:42:27,311.311 INFO    ] Initializing speech engine...
[2026-06-19 12:42:27,332.332 INFO    ] 2026-06-19 12:42:27
[2026-06-19 12:42:27,599.599 INFO    ] 2026-06-19 12:42:27
[2026-06-19 12:42:27,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:42:27,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:42:27,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:42:28,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:42:28,020.020 INFO    ] time= 19/06/2026 12:42:28
[2026-06-19 12:42:28,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:42:28,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:42:28,226.226 INFO    ] No existing commands found in stream
[2026-06-19 12:42:33,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:42:33,254.254 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 12:42:37,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:42:37,149.149 INFO    ] Checking for system updates...
[2026-06-19 12:42:37,190.190 INFO    ] 200
[2026-06-19 12:42:37,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:42:37,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:42:37,269.269 INFO    ] No update needed
[2026-06-19 12:42:37,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 12:42:37,305.305 INFO    ] 200
[2026-06-19 12:42:37,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:42:37,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:42:37,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:42:37,376.376 INFO    ] No camera update needed
[2026-06-19 12:42:37,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:42:37,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:42:37,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:42:37,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:42:39,432.432 INFO    ] ================================================
[2026-06-19 12:42:39,448.448 INFO    ] Launching Daemon at Fri Jun 19 12:42:39 IST 2026
[2026-06-19 12:42:39,459.459 INFO    ] ================================================
[2026-06-19 12:42:40,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:42:40
[2026-06-19 12:42:40,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:42:41,042.042 INFO    ] Initializing speech engine...
[2026-06-19 12:42:41,047.047 INFO    ] 2026-06-19 12:42:41
[2026-06-19 12:42:41,336.336 INFO    ] 2026-06-19 12:42:41
[2026-06-19 12:42:41,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:42:41,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:42:41,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:42:41,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:42:41,790.790 INFO    ] time= 19/06/2026 12:42:41
[2026-06-19 12:42:41,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:42:41,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:42:42,045.045 INFO    ] No existing commands found in stream
[2026-06-19 12:42:47,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:42:47,064.064 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 12:42:50,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:42:50,642.642 INFO    ] Checking for system updates...
[2026-06-19 12:42:50,679.679 INFO    ] 200
[2026-06-19 12:42:50,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:42:50,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:42:50,739.739 INFO    ] No update needed
[2026-06-19 12:42:50,741.741 INFO    ] Checking for camera pi updates...
[2026-06-19 12:42:50,777.777 INFO    ] 200
[2026-06-19 12:42:50,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:42:50,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:42:50,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:42:50,878.878 INFO    ] No camera update needed
[2026-06-19 12:42:50,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:42:50,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:42:50,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:42:50,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:42:52,935.935 INFO    ] ================================================
[2026-06-19 12:42:52,951.951 INFO    ] Launching Daemon at Fri Jun 19 12:42:52 IST 2026
[2026-06-19 12:42:52,962.962 INFO    ] ================================================
[2026-06-19 12:42:53,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:42:53
[2026-06-19 12:42:54,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:42:54,554.554 INFO    ] Initializing speech engine...
[2026-06-19 12:42:54,562.562 INFO    ] 2026-06-19 12:42:54
[2026-06-19 12:42:54,829.829 INFO    ] 2026-06-19 12:42:54
[2026-06-19 12:42:54,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:42:55,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:42:55,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:42:55,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:42:55,328.328 INFO    ] time= 19/06/2026 12:42:55
[2026-06-19 12:42:55,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:42:55,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:42:55,535.535 INFO    ] No existing commands found in stream
[2026-06-19 12:43:00,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:43:00,567.567 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 12:43:03,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:43:03,128.128 INFO    ] Checking for system updates...
[2026-06-19 12:43:03,174.174 INFO    ] 200
[2026-06-19 12:43:03,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:03,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:43:03,233.233 INFO    ] No update needed
[2026-06-19 12:43:03,236.236 INFO    ] Checking for camera pi updates...
[2026-06-19 12:43:03,281.281 INFO    ] 200
[2026-06-19 12:43:03,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:03,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:43:03,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:43:03,382.382 INFO    ] No camera update needed
[2026-06-19 12:43:03,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:43:03,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:43:03,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:43:03,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:43:05,440.440 INFO    ] ================================================
[2026-06-19 12:43:05,456.456 INFO    ] Launching Daemon at Fri Jun 19 12:43:05 IST 2026
[2026-06-19 12:43:05,467.467 INFO    ] ================================================
[2026-06-19 12:43:06,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:43:06
[2026-06-19 12:43:06,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:43:06,898.898 INFO    ] Initializing speech engine...
[2026-06-19 12:43:06,923.923 INFO    ] 2026-06-19 12:43:06
[2026-06-19 12:43:07,179.179 INFO    ] 2026-06-19 12:43:07
[2026-06-19 12:43:07,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:43:07,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:43:07,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:43:07,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:43:07,731.731 INFO    ] time= 19/06/2026 12:43:07
[2026-06-19 12:43:07,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:43:07,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:43:07,875.875 INFO    ] No existing commands found in stream
[2026-06-19 12:43:12,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:43:12,913.913 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 12:43:16,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:43:16,535.535 INFO    ] Checking for system updates...
[2026-06-19 12:43:16,571.571 INFO    ] 200
[2026-06-19 12:43:16,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:16,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:43:16,632.632 INFO    ] No update needed
[2026-06-19 12:43:16,634.634 INFO    ] Checking for camera pi updates...
[2026-06-19 12:43:16,668.668 INFO    ] 200
[2026-06-19 12:43:16,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:16,710.710 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:43:16,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:43:16,756.756 INFO    ] No camera update needed
[2026-06-19 12:43:16,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:43:16,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:43:16,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:43:16,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:43:18,812.812 INFO    ] ================================================
[2026-06-19 12:43:18,828.828 INFO    ] Launching Daemon at Fri Jun 19 12:43:18 IST 2026
[2026-06-19 12:43:18,839.839 INFO    ] ================================================
[2026-06-19 12:43:19,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:43:19
[2026-06-19 12:43:20,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:43:20,293.293 INFO    ] Initializing speech engine...
[2026-06-19 12:43:20,303.303 INFO    ] 2026-06-19 12:43:20
[2026-06-19 12:43:20,552.552 INFO    ] 2026-06-19 12:43:20
[2026-06-19 12:43:20,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:43:20,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:43:20,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:43:20,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:43:21,024.024 INFO    ] time= 19/06/2026 12:43:20
[2026-06-19 12:43:21,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:43:21,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:43:21,260.260 INFO    ] No existing commands found in stream
[2026-06-19 12:43:26,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:43:26,278.278 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 12:43:29,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:43:29,904.904 INFO    ] Checking for system updates...
[2026-06-19 12:43:29,941.941 INFO    ] 200
[2026-06-19 12:43:29,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:29,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:43:30,001.001 INFO    ] No update needed
[2026-06-19 12:43:30,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 12:43:30,038.038 INFO    ] 200
[2026-06-19 12:43:30,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:30,085.085 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:43:30,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:43:30,117.117 INFO    ] No camera update needed
[2026-06-19 12:43:30,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:43:30,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:43:30,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:43:30,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:43:32,176.176 INFO    ] ================================================
[2026-06-19 12:43:32,193.193 INFO    ] Launching Daemon at Fri Jun 19 12:43:32 IST 2026
[2026-06-19 12:43:32,206.206 INFO    ] ================================================
[2026-06-19 12:43:32,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:43:32
[2026-06-19 12:43:33,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:43:33,713.713 INFO    ] Initializing speech engine...
[2026-06-19 12:43:33,719.719 INFO    ] 2026-06-19 12:43:33
[2026-06-19 12:43:33,967.967 INFO    ] 2026-06-19 12:43:33
[2026-06-19 12:43:34,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:43:34,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:43:34,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:43:34,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:43:34,440.440 INFO    ] time= 19/06/2026 12:43:34
[2026-06-19 12:43:34,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:43:34,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:43:34,662.662 INFO    ] No existing commands found in stream
[2026-06-19 12:43:39,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:43:39,693.693 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 12:43:43,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:43:43,831.831 INFO    ] Checking for system updates...
[2026-06-19 12:43:43,867.867 INFO    ] 200
[2026-06-19 12:43:43,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:43,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:43:43,925.925 INFO    ] No update needed
[2026-06-19 12:43:43,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 12:43:43,961.961 INFO    ] 200
[2026-06-19 12:43:43,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:44,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:43:44,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:43:44,049.049 INFO    ] No camera update needed
[2026-06-19 12:43:44,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:43:44,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:43:44,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:43:44,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:43:46,106.106 INFO    ] ================================================
[2026-06-19 12:43:46,122.122 INFO    ] Launching Daemon at Fri Jun 19 12:43:46 IST 2026
[2026-06-19 12:43:46,133.133 INFO    ] ================================================
[2026-06-19 12:43:46,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:43:46
[2026-06-19 12:43:47,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:43:47,589.589 INFO    ] Initializing speech engine...
[2026-06-19 12:43:47,599.599 INFO    ] 2026-06-19 12:43:47
[2026-06-19 12:43:47,847.847 INFO    ] 2026-06-19 12:43:47
[2026-06-19 12:43:47,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:43:48,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:43:48,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:43:48,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:43:48,323.323 INFO    ] time= 19/06/2026 12:43:48
[2026-06-19 12:43:48,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:43:48,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:43:48,538.538 INFO    ] No existing commands found in stream
[2026-06-19 12:43:53,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:43:53,568.568 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 12:43:57,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:43:57,823.823 INFO    ] Checking for system updates...
[2026-06-19 12:43:57,862.862 INFO    ] 200
[2026-06-19 12:43:57,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:57,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:43:57,919.919 INFO    ] No update needed
[2026-06-19 12:43:57,922.922 INFO    ] Checking for camera pi updates...
[2026-06-19 12:43:57,956.956 INFO    ] 200
[2026-06-19 12:43:57,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:43:58,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:43:58,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:43:58,046.046 INFO    ] No camera update needed
[2026-06-19 12:43:58,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:43:58,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:43:58,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:43:58,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:44:00,104.104 INFO    ] ================================================
[2026-06-19 12:44:00,121.121 INFO    ] Launching Daemon at Fri Jun 19 12:44:00 IST 2026
[2026-06-19 12:44:00,132.132 INFO    ] ================================================
[2026-06-19 12:44:00,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:44:00
[2026-06-19 12:44:01,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:44:01,792.792 INFO    ] Initializing speech engine...
[2026-06-19 12:44:01,796.796 INFO    ] 2026-06-19 12:44:01
[2026-06-19 12:44:02,169.169 INFO    ] 2026-06-19 12:44:02
[2026-06-19 12:44:02,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:44:02,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:44:02,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:44:02,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:44:02,668.668 INFO    ] time= 19/06/2026 12:44:02
[2026-06-19 12:44:02,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:44:02,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:44:02,839.839 INFO    ] No existing commands found in stream
[2026-06-19 12:44:07,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:44:07,862.862 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 12:44:08,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:44:08,633.633 INFO    ] Checking for system updates...
[2026-06-19 12:44:08,669.669 INFO    ] 200
[2026-06-19 12:44:08,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:08,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:44:08,727.727 INFO    ] No update needed
[2026-06-19 12:44:08,730.730 INFO    ] Checking for camera pi updates...
[2026-06-19 12:44:08,765.765 INFO    ] 200
[2026-06-19 12:44:08,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:08,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:44:08,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:44:08,852.852 INFO    ] No camera update needed
[2026-06-19 12:44:08,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:44:08,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:44:08,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:44:08,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:44:10,911.911 INFO    ] ================================================
[2026-06-19 12:44:10,927.927 INFO    ] Launching Daemon at Fri Jun 19 12:44:10 IST 2026
[2026-06-19 12:44:10,944.944 INFO    ] ================================================
[2026-06-19 12:44:11,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:44:11
[2026-06-19 12:44:12,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:44:12,470.470 INFO    ] Initializing speech engine...
[2026-06-19 12:44:12,478.478 INFO    ] 2026-06-19 12:44:12
[2026-06-19 12:44:12,757.757 INFO    ] 2026-06-19 12:44:12
[2026-06-19 12:44:12,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:44:13,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:44:13,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:44:13,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:44:13,291.291 INFO    ] time= 19/06/2026 12:44:13
[2026-06-19 12:44:13,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:44:13,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:44:13,450.450 INFO    ] No existing commands found in stream
[2026-06-19 12:44:18,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:44:18,476.476 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 12:44:21,293.293 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:44:21,296.296 INFO    ] Checking for system updates...
[2026-06-19 12:44:21,333.333 INFO    ] 200
[2026-06-19 12:44:21,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:21,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:44:21,392.392 INFO    ] No update needed
[2026-06-19 12:44:21,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 12:44:21,431.431 INFO    ] 200
[2026-06-19 12:44:21,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:21,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:44:21,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:44:21,522.522 INFO    ] No camera update needed
[2026-06-19 12:44:21,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:44:21,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:44:21,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:44:21,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:44:23,579.579 INFO    ] ================================================
[2026-06-19 12:44:23,594.594 INFO    ] Launching Daemon at Fri Jun 19 12:44:23 IST 2026
[2026-06-19 12:44:23,605.605 INFO    ] ================================================
[2026-06-19 12:44:24,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:44:24
[2026-06-19 12:44:24,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:44:25,153.153 INFO    ] Initializing speech engine...
[2026-06-19 12:44:25,162.162 INFO    ] 2026-06-19 12:44:25
[2026-06-19 12:44:25,433.433 INFO    ] 2026-06-19 12:44:25
[2026-06-19 12:44:25,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:44:25,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:44:25,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:44:25,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:44:25,904.904 INFO    ] time= 19/06/2026 12:44:25
[2026-06-19 12:44:25,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:44:25,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:44:26,143.143 INFO    ] No existing commands found in stream
[2026-06-19 12:44:31,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:44:31,160.160 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 12:44:33,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:44:33,748.748 INFO    ] Checking for system updates...
[2026-06-19 12:44:33,785.785 INFO    ] 200
[2026-06-19 12:44:33,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:33,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:44:33,845.845 INFO    ] No update needed
[2026-06-19 12:44:33,847.847 INFO    ] Checking for camera pi updates...
[2026-06-19 12:44:33,882.882 INFO    ] 200
[2026-06-19 12:44:33,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:33,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:44:33,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:44:33,979.979 INFO    ] No camera update needed
[2026-06-19 12:44:33,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:44:33,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:44:33,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:44:33,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:44:36,035.035 INFO    ] ================================================
[2026-06-19 12:44:36,050.050 INFO    ] Launching Daemon at Fri Jun 19 12:44:36 IST 2026
[2026-06-19 12:44:36,062.062 INFO    ] ================================================
[2026-06-19 12:44:36,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:44:36
[2026-06-19 12:44:37,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:44:37,468.468 INFO    ] Initializing speech engine...
[2026-06-19 12:44:37,476.476 INFO    ] 2026-06-19 12:44:37
[2026-06-19 12:44:37,764.764 INFO    ] 2026-06-19 12:44:37
[2026-06-19 12:44:37,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:44:38,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:44:38,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:44:38,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:44:38,271.271 INFO    ] time= 19/06/2026 12:44:38
[2026-06-19 12:44:38,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:44:38,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:44:38,456.456 INFO    ] No existing commands found in stream
[2026-06-19 12:44:43,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:44:43,489.489 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 12:44:44,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:44:44,750.750 INFO    ] Checking for system updates...
[2026-06-19 12:44:44,789.789 INFO    ] 200
[2026-06-19 12:44:44,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:44,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:44:44,846.846 INFO    ] No update needed
[2026-06-19 12:44:44,848.848 INFO    ] Checking for camera pi updates...
[2026-06-19 12:44:44,882.882 INFO    ] 200
[2026-06-19 12:44:44,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:44,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:44:45,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:44:45,071.071 INFO    ] No camera update needed
[2026-06-19 12:44:45,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:44:45,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:44:45,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:44:45,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:44:47,125.125 INFO    ] ================================================
[2026-06-19 12:44:47,141.141 INFO    ] Launching Daemon at Fri Jun 19 12:44:47 IST 2026
[2026-06-19 12:44:47,152.152 INFO    ] ================================================
[2026-06-19 12:44:47,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:44:47
[2026-06-19 12:44:48,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:44:48,711.711 INFO    ] Initializing speech engine...
[2026-06-19 12:44:48,722.722 INFO    ] 2026-06-19 12:44:48
[2026-06-19 12:44:48,991.991 INFO    ] 2026-06-19 12:44:48
[2026-06-19 12:44:49,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:44:49,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:44:49,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:44:49,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:44:49,470.470 INFO    ] time= 19/06/2026 12:44:49
[2026-06-19 12:44:49,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:44:49,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:44:49,695.695 INFO    ] No existing commands found in stream
[2026-06-19 12:44:54,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:44:54,712.712 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 12:44:57,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:44:58,002.002 INFO    ] Checking for system updates...
[2026-06-19 12:44:58,039.039 INFO    ] 200
[2026-06-19 12:44:58,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:58,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:44:58,098.098 INFO    ] No update needed
[2026-06-19 12:44:58,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 12:44:58,134.134 INFO    ] 200
[2026-06-19 12:44:58,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:44:58,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:44:58,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:44:58,233.233 INFO    ] No camera update needed
[2026-06-19 12:44:58,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:44:58,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:44:58,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:44:58,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:45:00,293.293 INFO    ] ================================================
[2026-06-19 12:45:00,309.309 INFO    ] Launching Daemon at Fri Jun 19 12:45:00 IST 2026
[2026-06-19 12:45:00,320.320 INFO    ] ================================================
[2026-06-19 12:45:00,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:45:00
[2026-06-19 12:45:02,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:45:02,619.619 INFO    ] Initializing speech engine...
[2026-06-19 12:45:02,634.634 INFO    ] 2026-06-19 12:45:02
[2026-06-19 12:45:02,974.974 INFO    ] 2026-06-19 12:45:02
[2026-06-19 12:45:03,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:45:03,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:45:03,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:45:03,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:45:03,487.487 INFO    ] time= 19/06/2026 12:45:03
[2026-06-19 12:45:03,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:45:03,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:45:03,642.642 INFO    ] No existing commands found in stream
[2026-06-19 12:45:08,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:45:08,669.669 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 12:45:12,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:45:12,582.582 INFO    ] Checking for system updates...
[2026-06-19 12:45:12,619.619 INFO    ] 200
[2026-06-19 12:45:12,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:45:12,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:45:12,676.676 INFO    ] No update needed
[2026-06-19 12:45:12,678.678 INFO    ] Checking for camera pi updates...
[2026-06-19 12:45:12,717.717 INFO    ] 200
[2026-06-19 12:45:12,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:45:12,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:45:12,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:45:12,804.804 INFO    ] No camera update needed
[2026-06-19 12:45:12,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:45:12,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:45:12,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:45:12,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:45:14,863.863 INFO    ] ================================================
[2026-06-19 12:45:14,878.878 INFO    ] Launching Daemon at Fri Jun 19 12:45:14 IST 2026
[2026-06-19 12:45:14,888.888 INFO    ] ================================================
[2026-06-19 12:45:15,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:45:15
[2026-06-19 12:45:16,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:45:16,375.375 INFO    ] Initializing speech engine...
[2026-06-19 12:45:16,383.383 INFO    ] 2026-06-19 12:45:16
[2026-06-19 12:45:16,671.671 INFO    ] 2026-06-19 12:45:16
[2026-06-19 12:45:16,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:45:16,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:45:16,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:45:17,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:45:17,137.137 INFO    ] time= 19/06/2026 12:45:17
[2026-06-19 12:45:17,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:45:17,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:45:17,370.370 INFO    ] No existing commands found in stream
[2026-06-19 12:45:22,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:45:22,397.397 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 12:45:24,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:45:24,957.957 INFO    ] Checking for system updates...
[2026-06-19 12:45:24,994.994 INFO    ] 200
[2026-06-19 12:45:24,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:45:25,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:45:25,054.054 INFO    ] No update needed
[2026-06-19 12:45:25,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 12:45:25,091.091 INFO    ] 200
[2026-06-19 12:45:25,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:45:25,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:45:25,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:45:25,186.186 INFO    ] No camera update needed
[2026-06-19 12:45:25,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:45:25,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:45:25,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:45:25,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:45:27,244.244 INFO    ] ================================================
[2026-06-19 12:45:27,259.259 INFO    ] Launching Daemon at Fri Jun 19 12:45:27 IST 2026
[2026-06-19 12:45:27,269.269 INFO    ] ================================================
[2026-06-19 12:45:27,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:45:27
[2026-06-19 12:45:28,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:45:28,687.687 INFO    ] Initializing speech engine...
[2026-06-19 12:45:28,696.696 INFO    ] 2026-06-19 12:45:28
[2026-06-19 12:45:28,969.969 INFO    ] 2026-06-19 12:45:28
[2026-06-19 12:45:29,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:45:29,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:45:29,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:45:29,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:45:29,458.458 INFO    ] time= 19/06/2026 12:45:29
[2026-06-19 12:45:29,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:45:29,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:45:29,669.669 INFO    ] No existing commands found in stream
[2026-06-19 12:45:34,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:45:34,699.699 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 12:45:38,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:45:38,495.495 INFO    ] Checking for system updates...
[2026-06-19 12:45:38,531.531 INFO    ] 200
[2026-06-19 12:45:38,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:45:38,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:45:38,590.590 INFO    ] No update needed
[2026-06-19 12:45:38,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 12:45:38,629.629 INFO    ] 200
[2026-06-19 12:45:38,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:45:38,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:45:38,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:45:38,714.714 INFO    ] No camera update needed
[2026-06-19 12:45:38,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:45:38,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:45:38,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:45:38,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:45:40,774.774 INFO    ] ================================================
[2026-06-19 12:45:40,789.789 INFO    ] Launching Daemon at Fri Jun 19 12:45:40 IST 2026
[2026-06-19 12:45:40,801.801 INFO    ] ================================================
[2026-06-19 12:45:41,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:45:41
[2026-06-19 12:45:42,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:45:42,427.427 INFO    ] Initializing speech engine...
[2026-06-19 12:45:42,439.439 INFO    ] 2026-06-19 12:45:42
[2026-06-19 12:45:42,748.748 INFO    ] 2026-06-19 12:45:42
[2026-06-19 12:45:42,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:45:43,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:45:43,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:45:43,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:45:43,269.269 INFO    ] time= 19/06/2026 12:45:43
[2026-06-19 12:45:43,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:45:43,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:45:43,443.443 INFO    ] No existing commands found in stream
[2026-06-19 12:45:48,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:45:48,483.483 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 12:45:54,618.618 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:45:54,621.621 INFO    ] Checking for system updates...
[2026-06-19 12:45:54,659.659 INFO    ] 200
[2026-06-19 12:45:54,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:45:54,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:45:54,723.723 INFO    ] No update needed
[2026-06-19 12:45:54,726.726 INFO    ] Checking for camera pi updates...
[2026-06-19 12:45:54,761.761 INFO    ] 200
[2026-06-19 12:45:54,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:45:54,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:45:54,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:45:54,857.857 INFO    ] No camera update needed
[2026-06-19 12:45:54,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:45:54,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:45:54,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:45:54,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:45:56,916.916 INFO    ] ================================================
[2026-06-19 12:45:56,932.932 INFO    ] Launching Daemon at Fri Jun 19 12:45:56 IST 2026
[2026-06-19 12:45:56,943.943 INFO    ] ================================================
[2026-06-19 12:45:57,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:45:57
[2026-06-19 12:45:58,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:45:58,544.544 INFO    ] Initializing speech engine...
[2026-06-19 12:45:58,555.555 INFO    ] 2026-06-19 12:45:58
[2026-06-19 12:45:58,838.838 INFO    ] 2026-06-19 12:45:58
[2026-06-19 12:45:58,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:45:59,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:45:59,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:45:59,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:45:59,368.368 INFO    ] time= 19/06/2026 12:45:59
[2026-06-19 12:45:59,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:45:59,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:45:59,534.534 INFO    ] No existing commands found in stream
[2026-06-19 12:46:04,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:46:04,564.564 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 12:46:06,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:46:06,663.663 INFO    ] Checking for system updates...
[2026-06-19 12:46:06,701.701 INFO    ] 200
[2026-06-19 12:46:06,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:06,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:46:06,764.764 INFO    ] No update needed
[2026-06-19 12:46:06,776.776 INFO    ] Checking for camera pi updates...
[2026-06-19 12:46:06,820.820 INFO    ] 200
[2026-06-19 12:46:06,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:06,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:46:06,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:46:06,926.926 INFO    ] No camera update needed
[2026-06-19 12:46:06,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:46:06,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:46:06,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:46:06,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:46:08,981.981 INFO    ] ================================================
[2026-06-19 12:46:09,997.997 INFO    ] Launching Daemon at Fri Jun 19 12:46:08 IST 2026
[2026-06-19 12:46:09,008.008 INFO    ] ================================================
[2026-06-19 12:46:09,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:46:09
[2026-06-19 12:46:10,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:46:10,505.505 INFO    ] Initializing speech engine...
[2026-06-19 12:46:10,518.518 INFO    ] 2026-06-19 12:46:10
[2026-06-19 12:46:10,784.784 INFO    ] 2026-06-19 12:46:10
[2026-06-19 12:46:10,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:46:11,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:46:11,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:46:11,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:46:11,191.191 INFO    ] time= 19/06/2026 12:46:11
[2026-06-19 12:46:11,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:46:11,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:46:11,374.374 INFO    ] No existing commands found in stream
[2026-06-19 12:46:16,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:46:16,402.402 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 12:46:18,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:46:18,190.190 INFO    ] Checking for system updates...
[2026-06-19 12:46:18,227.227 INFO    ] 200
[2026-06-19 12:46:18,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:18,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:46:18,285.285 INFO    ] No update needed
[2026-06-19 12:46:18,288.288 INFO    ] Checking for camera pi updates...
[2026-06-19 12:46:18,321.321 INFO    ] 200
[2026-06-19 12:46:18,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:18,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:46:18,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:46:18,416.416 INFO    ] No camera update needed
[2026-06-19 12:46:18,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:46:18,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:46:18,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:46:18,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:46:20,475.475 INFO    ] ================================================
[2026-06-19 12:46:20,491.491 INFO    ] Launching Daemon at Fri Jun 19 12:46:20 IST 2026
[2026-06-19 12:46:20,502.502 INFO    ] ================================================
[2026-06-19 12:46:21,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:46:21
[2026-06-19 12:46:21,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:46:22,027.027 INFO    ] Initializing speech engine...
[2026-06-19 12:46:22,041.041 INFO    ] 2026-06-19 12:46:22
[2026-06-19 12:46:22,326.326 INFO    ] 2026-06-19 12:46:22
[2026-06-19 12:46:22,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:46:22,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:46:22,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:46:22,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:46:22,877.877 INFO    ] time= 19/06/2026 12:46:22
[2026-06-19 12:46:22,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:46:22,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:46:23,007.007 INFO    ] No existing commands found in stream
[2026-06-19 12:46:28,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:46:28,041.041 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 12:46:31,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:46:31,148.148 INFO    ] Checking for system updates...
[2026-06-19 12:46:31,184.184 INFO    ] 200
[2026-06-19 12:46:31,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:31,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:46:31,260.260 INFO    ] No update needed
[2026-06-19 12:46:31,263.263 INFO    ] Checking for camera pi updates...
[2026-06-19 12:46:31,297.297 INFO    ] 200
[2026-06-19 12:46:31,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:31,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:46:31,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:46:31,387.387 INFO    ] No camera update needed
[2026-06-19 12:46:31,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:46:31,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:46:31,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:46:31,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:46:33,442.442 INFO    ] ================================================
[2026-06-19 12:46:33,458.458 INFO    ] Launching Daemon at Fri Jun 19 12:46:33 IST 2026
[2026-06-19 12:46:33,469.469 INFO    ] ================================================
[2026-06-19 12:46:34,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:46:34
[2026-06-19 12:46:34,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:46:34,956.956 INFO    ] Initializing speech engine...
[2026-06-19 12:46:34,970.970 INFO    ] 2026-06-19 12:46:34
[2026-06-19 12:46:35,280.280 INFO    ] 2026-06-19 12:46:35
[2026-06-19 12:46:35,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:46:35,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:46:35,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:46:35,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:46:35,789.789 INFO    ] time= 19/06/2026 12:46:35
[2026-06-19 12:46:35,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:46:35,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:46:35,958.958 INFO    ] No existing commands found in stream
[2026-06-19 12:46:40,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:46:40,991.991 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 12:46:42,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:46:42,375.375 INFO    ] Checking for system updates...
[2026-06-19 12:46:42,412.412 INFO    ] 200
[2026-06-19 12:46:42,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:42,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:46:42,474.474 INFO    ] No update needed
[2026-06-19 12:46:42,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 12:46:42,516.516 INFO    ] 200
[2026-06-19 12:46:42,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:42,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:46:42,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:46:42,612.612 INFO    ] No camera update needed
[2026-06-19 12:46:42,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:46:42,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:46:42,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:46:42,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:46:44,671.671 INFO    ] ================================================
[2026-06-19 12:46:44,688.688 INFO    ] Launching Daemon at Fri Jun 19 12:46:44 IST 2026
[2026-06-19 12:46:44,699.699 INFO    ] ================================================
[2026-06-19 12:46:45,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:46:45
[2026-06-19 12:46:45,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:46:46,219.219 INFO    ] Initializing speech engine...
[2026-06-19 12:46:46,229.229 INFO    ] 2026-06-19 12:46:46
[2026-06-19 12:46:46,539.539 INFO    ] 2026-06-19 12:46:46
[2026-06-19 12:46:46,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:46:46,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:46:46,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:46:46,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:46:46,959.959 INFO    ] time= 19/06/2026 12:46:46
[2026-06-19 12:46:46,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:46:47,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:46:47,137.137 INFO    ] No existing commands found in stream
[2026-06-19 12:46:52,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:46:52,176.176 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 12:46:52,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:46:52,779.779 INFO    ] Checking for system updates...
[2026-06-19 12:46:52,816.816 INFO    ] 200
[2026-06-19 12:46:52,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:52,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:46:52,876.876 INFO    ] No update needed
[2026-06-19 12:46:52,878.878 INFO    ] Checking for camera pi updates...
[2026-06-19 12:46:52,913.913 INFO    ] 200
[2026-06-19 12:46:52,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:46:52,961.961 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:46:53,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:46:53,111.111 INFO    ] No camera update needed
[2026-06-19 12:46:53,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:46:53,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:46:53,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:46:53,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:46:55,169.169 INFO    ] ================================================
[2026-06-19 12:46:55,184.184 INFO    ] Launching Daemon at Fri Jun 19 12:46:55 IST 2026
[2026-06-19 12:46:55,195.195 INFO    ] ================================================
[2026-06-19 12:46:55,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:46:55
[2026-06-19 12:46:56,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:46:56,652.652 INFO    ] Initializing speech engine...
[2026-06-19 12:46:56,660.660 INFO    ] 2026-06-19 12:46:56
[2026-06-19 12:46:56,922.922 INFO    ] 2026-06-19 12:46:56
[2026-06-19 12:46:56,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:46:57,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:46:57,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:46:57,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:46:57,466.466 INFO    ] time= 19/06/2026 12:46:57
[2026-06-19 12:46:57,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:46:57,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:46:57,600.600 INFO    ] No existing commands found in stream
[2026-06-19 12:47:02,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:47:02,632.632 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 12:47:05,704.704 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:47:05,706.706 INFO    ] Checking for system updates...
[2026-06-19 12:47:05,743.743 INFO    ] 200
[2026-06-19 12:47:05,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:05,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:47:05,803.803 INFO    ] No update needed
[2026-06-19 12:47:05,806.806 INFO    ] Checking for camera pi updates...
[2026-06-19 12:47:05,840.840 INFO    ] 200
[2026-06-19 12:47:05,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:05,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:47:05,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:47:05,922.922 INFO    ] No camera update needed
[2026-06-19 12:47:05,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:47:05,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:47:05,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:47:05,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:47:07,979.979 INFO    ] ================================================
[2026-06-19 12:47:08,056.056 INFO    ] Launching Daemon at Fri Jun 19 12:47:08 IST 2026
[2026-06-19 12:47:08,066.066 INFO    ] ================================================
[2026-06-19 12:47:08,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:47:08
[2026-06-19 12:47:09,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:47:09,495.495 INFO    ] Initializing speech engine...
[2026-06-19 12:47:09,511.511 INFO    ] 2026-06-19 12:47:09
[2026-06-19 12:47:09,767.767 INFO    ] 2026-06-19 12:47:09
[2026-06-19 12:47:09,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:47:10,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:47:10,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:47:10,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:47:10,327.327 INFO    ] time= 19/06/2026 12:47:10
[2026-06-19 12:47:10,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:47:10,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:47:10,494.494 INFO    ] No existing commands found in stream
[2026-06-19 12:47:15,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:47:15,511.511 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 12:47:18,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:47:18,516.516 INFO    ] Checking for system updates...
[2026-06-19 12:47:18,551.551 INFO    ] 200
[2026-06-19 12:47:18,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:18,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:47:18,613.613 INFO    ] No update needed
[2026-06-19 12:47:18,616.616 INFO    ] Checking for camera pi updates...
[2026-06-19 12:47:18,649.649 INFO    ] 200
[2026-06-19 12:47:18,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:18,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:47:18,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:47:18,737.737 INFO    ] No camera update needed
[2026-06-19 12:47:18,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:47:18,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:47:18,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:47:18,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:47:20,792.792 INFO    ] ================================================
[2026-06-19 12:47:20,812.812 INFO    ] Launching Daemon at Fri Jun 19 12:47:20 IST 2026
[2026-06-19 12:47:20,823.823 INFO    ] ================================================
[2026-06-19 12:47:21,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:47:21
[2026-06-19 12:47:22,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:47:22,379.379 INFO    ] Initializing speech engine...
[2026-06-19 12:47:22,389.389 INFO    ] 2026-06-19 12:47:22
[2026-06-19 12:47:22,650.650 INFO    ] 2026-06-19 12:47:22
[2026-06-19 12:47:22,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:47:22,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:47:22,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:47:23,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:47:23,167.167 INFO    ] time= 19/06/2026 12:47:23
[2026-06-19 12:47:23,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:47:23,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:47:23,362.362 INFO    ] No existing commands found in stream
[2026-06-19 12:47:28,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:47:28,391.391 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 12:47:29,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:47:29,952.952 INFO    ] Checking for system updates...
[2026-06-19 12:47:29,990.990 INFO    ] 200
[2026-06-19 12:47:29,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:30,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:47:30,049.049 INFO    ] No update needed
[2026-06-19 12:47:30,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 12:47:30,089.089 INFO    ] 200
[2026-06-19 12:47:30,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:30,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:47:30,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:47:30,180.180 INFO    ] No camera update needed
[2026-06-19 12:47:30,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:47:30,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:47:30,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:47:30,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:47:32,241.241 INFO    ] ================================================
[2026-06-19 12:47:32,258.258 INFO    ] Launching Daemon at Fri Jun 19 12:47:32 IST 2026
[2026-06-19 12:47:32,270.270 INFO    ] ================================================
[2026-06-19 12:47:32,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:47:32
[2026-06-19 12:47:33,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:47:33,737.737 INFO    ] Initializing speech engine...
[2026-06-19 12:47:33,750.750 INFO    ] 2026-06-19 12:47:33
[2026-06-19 12:47:34,017.017 INFO    ] 2026-06-19 12:47:34
[2026-06-19 12:47:34,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:47:34,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:47:34,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:47:34,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:47:34,492.492 INFO    ] time= 19/06/2026 12:47:34
[2026-06-19 12:47:34,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:47:34,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:47:34,743.743 INFO    ] No existing commands found in stream
[2026-06-19 12:47:39,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:47:39,760.760 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 12:47:41,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:47:41,962.962 INFO    ] Checking for system updates...
[2026-06-19 12:47:41,998.998 INFO    ] 200
[2026-06-19 12:47:42,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:42,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:47:42,054.054 INFO    ] No update needed
[2026-06-19 12:47:42,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 12:47:42,090.090 INFO    ] 200
[2026-06-19 12:47:42,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:42,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:47:42,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:47:42,184.184 INFO    ] No camera update needed
[2026-06-19 12:47:42,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:47:42,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:47:42,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:47:42,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:47:44,239.239 INFO    ] ================================================
[2026-06-19 12:47:44,255.255 INFO    ] Launching Daemon at Fri Jun 19 12:47:44 IST 2026
[2026-06-19 12:47:44,266.266 INFO    ] ================================================
[2026-06-19 12:47:44,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:47:44
[2026-06-19 12:47:45,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:47:45,816.816 INFO    ] Initializing speech engine...
[2026-06-19 12:47:45,834.834 INFO    ] 2026-06-19 12:47:45
[2026-06-19 12:47:46,107.107 INFO    ] 2026-06-19 12:47:46
[2026-06-19 12:47:46,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:47:46,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:47:46,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:47:46,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:47:46,495.495 INFO    ] time= 19/06/2026 12:47:46
[2026-06-19 12:47:46,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:47:46,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:47:46,692.692 INFO    ] No existing commands found in stream
[2026-06-19 12:47:51,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:47:51,712.712 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 12:47:53,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:47:53,406.406 INFO    ] Checking for system updates...
[2026-06-19 12:47:53,443.443 INFO    ] 200
[2026-06-19 12:47:53,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:53,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:47:53,509.509 INFO    ] No update needed
[2026-06-19 12:47:53,512.512 INFO    ] Checking for camera pi updates...
[2026-06-19 12:47:53,547.547 INFO    ] 200
[2026-06-19 12:47:53,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:47:53,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:47:53,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:47:53,637.637 INFO    ] No camera update needed
[2026-06-19 12:47:53,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:47:53,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:47:53,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:47:53,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:47:55,696.696 INFO    ] ================================================
[2026-06-19 12:47:55,711.711 INFO    ] Launching Daemon at Fri Jun 19 12:47:55 IST 2026
[2026-06-19 12:47:55,722.722 INFO    ] ================================================
[2026-06-19 12:47:56,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:47:56
[2026-06-19 12:47:56,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:47:57,220.220 INFO    ] Initializing speech engine...
[2026-06-19 12:47:57,230.230 INFO    ] 2026-06-19 12:47:57
[2026-06-19 12:47:57,495.495 INFO    ] 2026-06-19 12:47:57
[2026-06-19 12:47:57,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:47:57,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:47:57,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:47:57,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:47:57,962.962 INFO    ] time= 19/06/2026 12:47:57
[2026-06-19 12:47:58,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:47:58,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:47:58,210.210 INFO    ] No existing commands found in stream
[2026-06-19 12:48:03,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:48:03,231.231 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 12:48:05,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:48:05,046.046 INFO    ] Checking for system updates...
[2026-06-19 12:48:05,084.084 INFO    ] 200
[2026-06-19 12:48:05,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:05,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:48:05,144.144 INFO    ] No update needed
[2026-06-19 12:48:05,147.147 INFO    ] Checking for camera pi updates...
[2026-06-19 12:48:05,181.181 INFO    ] 200
[2026-06-19 12:48:05,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:05,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:48:05,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:48:05,272.272 INFO    ] No camera update needed
[2026-06-19 12:48:05,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:48:05,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:48:05,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:48:05,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:48:07,328.328 INFO    ] ================================================
[2026-06-19 12:48:07,344.344 INFO    ] Launching Daemon at Fri Jun 19 12:48:07 IST 2026
[2026-06-19 12:48:07,355.355 INFO    ] ================================================
[2026-06-19 12:48:07,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:48:07
[2026-06-19 12:48:08,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:48:08,810.810 INFO    ] Initializing speech engine...
[2026-06-19 12:48:08,817.817 INFO    ] 2026-06-19 12:48:08
[2026-06-19 12:48:09,076.076 INFO    ] 2026-06-19 12:48:09
[2026-06-19 12:48:09,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:48:09,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:48:09,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:48:09,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:48:09,608.608 INFO    ] time= 19/06/2026 12:48:09
[2026-06-19 12:48:09,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:48:09,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:48:09,764.764 INFO    ] No existing commands found in stream
[2026-06-19 12:48:14,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:48:14,782.782 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 12:48:18,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:48:18,963.963 INFO    ] Checking for system updates...
[2026-06-19 12:48:18,999.999 INFO    ] 200
[2026-06-19 12:48:19,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:19,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:48:19,057.057 INFO    ] No update needed
[2026-06-19 12:48:19,059.059 INFO    ] Checking for camera pi updates...
[2026-06-19 12:48:19,093.093 INFO    ] 200
[2026-06-19 12:48:19,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:19,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:48:19,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:48:19,182.182 INFO    ] No camera update needed
[2026-06-19 12:48:19,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:48:19,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:48:19,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:48:19,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:48:21,239.239 INFO    ] ================================================
[2026-06-19 12:48:21,254.254 INFO    ] Launching Daemon at Fri Jun 19 12:48:21 IST 2026
[2026-06-19 12:48:21,264.264 INFO    ] ================================================
[2026-06-19 12:48:21,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:48:21
[2026-06-19 12:48:22,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:48:22,711.711 INFO    ] Initializing speech engine...
[2026-06-19 12:48:22,729.729 INFO    ] 2026-06-19 12:48:22
[2026-06-19 12:48:22,980.980 INFO    ] 2026-06-19 12:48:22
[2026-06-19 12:48:23,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:48:23,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:48:23,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:48:23,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:48:23,465.465 INFO    ] time= 19/06/2026 12:48:23
[2026-06-19 12:48:23,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:48:23,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:48:23,698.698 INFO    ] No existing commands found in stream
[2026-06-19 12:48:28,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:48:28,722.722 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 12:48:30,208.208 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:48:30,211.211 INFO    ] Checking for system updates...
[2026-06-19 12:48:30,248.248 INFO    ] 200
[2026-06-19 12:48:30,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:30,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:48:30,308.308 INFO    ] No update needed
[2026-06-19 12:48:30,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 12:48:30,349.349 INFO    ] 200
[2026-06-19 12:48:30,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:30,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:48:30,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:48:30,437.437 INFO    ] No camera update needed
[2026-06-19 12:48:30,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:48:30,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:48:30,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:48:30,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:48:32,496.496 INFO    ] ================================================
[2026-06-19 12:48:32,513.513 INFO    ] Launching Daemon at Fri Jun 19 12:48:32 IST 2026
[2026-06-19 12:48:32,525.525 INFO    ] ================================================
[2026-06-19 12:48:33,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:48:33
[2026-06-19 12:48:33,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:48:34,024.024 INFO    ] Initializing speech engine...
[2026-06-19 12:48:34,031.031 INFO    ] 2026-06-19 12:48:34
[2026-06-19 12:48:34,279.279 INFO    ] 2026-06-19 12:48:34
[2026-06-19 12:48:34,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:48:34,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:48:34,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:48:34,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:48:34,771.771 INFO    ] time= 19/06/2026 12:48:34
[2026-06-19 12:48:34,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:48:34,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:48:34,980.980 INFO    ] No existing commands found in stream
[2026-06-19 12:48:40,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:48:40,003.003 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 12:48:42,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:48:42,239.239 INFO    ] Checking for system updates...
[2026-06-19 12:48:42,276.276 INFO    ] 200
[2026-06-19 12:48:42,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:42,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:48:42,336.336 INFO    ] No update needed
[2026-06-19 12:48:42,339.339 INFO    ] Checking for camera pi updates...
[2026-06-19 12:48:42,373.373 INFO    ] 200
[2026-06-19 12:48:42,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:42,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:48:42,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:48:42,462.462 INFO    ] No camera update needed
[2026-06-19 12:48:42,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:48:42,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:48:42,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:48:42,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:48:44,518.518 INFO    ] ================================================
[2026-06-19 12:48:44,533.533 INFO    ] Launching Daemon at Fri Jun 19 12:48:44 IST 2026
[2026-06-19 12:48:44,545.545 INFO    ] ================================================
[2026-06-19 12:48:45,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:48:45
[2026-06-19 12:48:45,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:48:46,161.161 INFO    ] Initializing speech engine...
[2026-06-19 12:48:46,173.173 INFO    ] 2026-06-19 12:48:46
[2026-06-19 12:48:46,453.453 INFO    ] 2026-06-19 12:48:46
[2026-06-19 12:48:46,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:48:46,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:48:46,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:48:46,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:48:46,916.916 INFO    ] time= 19/06/2026 12:48:46
[2026-06-19 12:48:46,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:48:46,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:48:47,146.146 INFO    ] No existing commands found in stream
[2026-06-19 12:48:52,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:48:52,163.163 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 12:48:54,520.520 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:48:54,523.523 INFO    ] Checking for system updates...
[2026-06-19 12:48:54,560.560 INFO    ] 200
[2026-06-19 12:48:54,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:54,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:48:54,618.618 INFO    ] No update needed
[2026-06-19 12:48:54,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 12:48:54,654.654 INFO    ] 200
[2026-06-19 12:48:54,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:48:54,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:48:54,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:48:54,847.847 INFO    ] No camera update needed
[2026-06-19 12:48:54,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:48:54,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:48:54,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:48:54,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:48:56,902.902 INFO    ] ================================================
[2026-06-19 12:48:56,918.918 INFO    ] Launching Daemon at Fri Jun 19 12:48:56 IST 2026
[2026-06-19 12:48:56,929.929 INFO    ] ================================================
[2026-06-19 12:48:57,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:48:57
[2026-06-19 12:48:58,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:48:58,366.366 INFO    ] Initializing speech engine...
[2026-06-19 12:48:58,375.375 INFO    ] 2026-06-19 12:48:58
[2026-06-19 12:48:58,629.629 INFO    ] 2026-06-19 12:48:58
[2026-06-19 12:48:58,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:48:58,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:48:58,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:48:59,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:48:59,011.011 INFO    ] time= 19/06/2026 12:48:59
[2026-06-19 12:48:59,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:48:59,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:48:59,202.202 INFO    ] No existing commands found in stream
[2026-06-19 12:49:04,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:49:04,222.222 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 12:49:04,646.646 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:49:04,649.649 INFO    ] Checking for system updates...
[2026-06-19 12:49:04,685.685 INFO    ] 200
[2026-06-19 12:49:04,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:04,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:49:04,743.743 INFO    ] No update needed
[2026-06-19 12:49:04,745.745 INFO    ] Checking for camera pi updates...
[2026-06-19 12:49:04,779.779 INFO    ] 200
[2026-06-19 12:49:04,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:04,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:49:04,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:49:04,870.870 INFO    ] No camera update needed
[2026-06-19 12:49:04,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:49:04,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:49:04,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:49:04,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:49:06,928.928 INFO    ] ================================================
[2026-06-19 12:49:06,947.947 INFO    ] Launching Daemon at Fri Jun 19 12:49:06 IST 2026
[2026-06-19 12:49:06,958.958 INFO    ] ================================================
[2026-06-19 12:49:07,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:49:07
[2026-06-19 12:49:08,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:49:08,358.358 INFO    ] Initializing speech engine...
[2026-06-19 12:49:08,366.366 INFO    ] 2026-06-19 12:49:08
[2026-06-19 12:49:08,659.659 INFO    ] 2026-06-19 12:49:08
[2026-06-19 12:49:08,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:49:08,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:49:08,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:49:09,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:49:09,072.072 INFO    ] time= 19/06/2026 12:49:09
[2026-06-19 12:49:09,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:49:09,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:49:09,156.156 INFO    ] No existing commands found in stream
[2026-06-19 12:49:14,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:49:14,171.171 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 12:49:17,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:49:17,145.145 INFO    ] Checking for system updates...
[2026-06-19 12:49:17,182.182 INFO    ] 200
[2026-06-19 12:49:17,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:17,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:49:17,241.241 INFO    ] No update needed
[2026-06-19 12:49:17,243.243 INFO    ] Checking for camera pi updates...
[2026-06-19 12:49:17,277.277 INFO    ] 200
[2026-06-19 12:49:17,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:17,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:49:17,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:49:17,365.365 INFO    ] No camera update needed
[2026-06-19 12:49:17,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:49:17,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:49:17,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:49:17,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:49:19,420.420 INFO    ] ================================================
[2026-06-19 12:49:19,435.435 INFO    ] Launching Daemon at Fri Jun 19 12:49:19 IST 2026
[2026-06-19 12:49:19,446.446 INFO    ] ================================================
[2026-06-19 12:49:20,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:49:20
[2026-06-19 12:49:20,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:49:21,055.055 INFO    ] Initializing speech engine...
[2026-06-19 12:49:21,068.068 INFO    ] 2026-06-19 12:49:21
[2026-06-19 12:49:21,338.338 INFO    ] 2026-06-19 12:49:21
[2026-06-19 12:49:21,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:49:21,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:49:21,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:49:21,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:49:21,897.897 INFO    ] time= 19/06/2026 12:49:21
[2026-06-19 12:49:21,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:49:21,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:49:22,022.022 INFO    ] No existing commands found in stream
[2026-06-19 12:49:27,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:49:27,036.036 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 12:49:31,004.004 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:49:31,007.007 INFO    ] Checking for system updates...
[2026-06-19 12:49:31,044.044 INFO    ] 200
[2026-06-19 12:49:31,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:31,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:49:31,103.103 INFO    ] No update needed
[2026-06-19 12:49:31,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 12:49:31,143.143 INFO    ] 200
[2026-06-19 12:49:31,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:31,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:49:31,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:49:31,227.227 INFO    ] No camera update needed
[2026-06-19 12:49:31,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:49:31,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:49:31,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:49:31,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:49:33,282.282 INFO    ] ================================================
[2026-06-19 12:49:33,304.304 INFO    ] Launching Daemon at Fri Jun 19 12:49:33 IST 2026
[2026-06-19 12:49:33,315.315 INFO    ] ================================================
[2026-06-19 12:49:33,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:49:33
[2026-06-19 12:49:34,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:49:34,730.730 INFO    ] Initializing speech engine...
[2026-06-19 12:49:34,756.756 INFO    ] 2026-06-19 12:49:34
[2026-06-19 12:49:35,028.028 INFO    ] 2026-06-19 12:49:35
[2026-06-19 12:49:35,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:49:35,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:49:35,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:49:35,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:49:35,518.518 INFO    ] time= 19/06/2026 12:49:35
[2026-06-19 12:49:35,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:49:35,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:49:35,726.726 INFO    ] No existing commands found in stream
[2026-06-19 12:49:40,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:49:40,751.751 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 12:49:44,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:49:44,410.410 INFO    ] Checking for system updates...
[2026-06-19 12:49:44,445.445 INFO    ] 200
[2026-06-19 12:49:44,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:44,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:49:44,502.502 INFO    ] No update needed
[2026-06-19 12:49:44,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 12:49:44,542.542 INFO    ] 200
[2026-06-19 12:49:44,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:44,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:49:44,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:49:44,634.634 INFO    ] No camera update needed
[2026-06-19 12:49:44,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:49:44,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:49:44,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:49:44,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:49:46,692.692 INFO    ] ================================================
[2026-06-19 12:49:46,708.708 INFO    ] Launching Daemon at Fri Jun 19 12:49:46 IST 2026
[2026-06-19 12:49:46,718.718 INFO    ] ================================================
[2026-06-19 12:49:47,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:49:47
[2026-06-19 12:49:48,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:49:48,322.322 INFO    ] Initializing speech engine...
[2026-06-19 12:49:48,337.337 INFO    ] 2026-06-19 12:49:48
[2026-06-19 12:49:48,616.616 INFO    ] 2026-06-19 12:49:48
[2026-06-19 12:49:48,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:49:48,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:49:48,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:49:49,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:49:49,150.150 INFO    ] time= 19/06/2026 12:49:49
[2026-06-19 12:49:49,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:49:49,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:49:49,330.330 INFO    ] No existing commands found in stream
[2026-06-19 12:49:54,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:49:54,370.370 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 12:49:57,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:49:57,559.559 INFO    ] Checking for system updates...
[2026-06-19 12:49:57,596.596 INFO    ] 200
[2026-06-19 12:49:57,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:57,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:49:57,656.656 INFO    ] No update needed
[2026-06-19 12:49:57,658.658 INFO    ] Checking for camera pi updates...
[2026-06-19 12:49:57,693.693 INFO    ] 200
[2026-06-19 12:49:57,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:49:57,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:49:57,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:49:57,786.786 INFO    ] No camera update needed
[2026-06-19 12:49:57,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:49:57,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:49:57,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:49:57,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:49:59,845.845 INFO    ] ================================================
[2026-06-19 12:49:59,860.860 INFO    ] Launching Daemon at Fri Jun 19 12:49:59 IST 2026
[2026-06-19 12:49:59,870.870 INFO    ] ================================================
[2026-06-19 12:50:00,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:50:00
[2026-06-19 12:50:01,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:50:01,329.329 INFO    ] Initializing speech engine...
[2026-06-19 12:50:01,334.334 INFO    ] 2026-06-19 12:50:01
[2026-06-19 12:50:01,617.617 INFO    ] 2026-06-19 12:50:01
[2026-06-19 12:50:01,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:50:02,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:50:02,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:50:02,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:50:02,331.331 INFO    ] time= 19/06/2026 12:50:02
[2026-06-19 12:50:02,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:50:02,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:50:02,425.425 INFO    ] No existing commands found in stream
[2026-06-19 12:50:07,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:50:07,438.438 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 12:50:10,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:50:10,862.862 INFO    ] Checking for system updates...
[2026-06-19 12:50:10,899.899 INFO    ] 200
[2026-06-19 12:50:10,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:10,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:50:10,959.959 INFO    ] No update needed
[2026-06-19 12:50:10,961.961 INFO    ] Checking for camera pi updates...
[2026-06-19 12:50:11,001.001 INFO    ] 200
[2026-06-19 12:50:11,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:11,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:50:11,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:50:11,092.092 INFO    ] No camera update needed
[2026-06-19 12:50:11,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:50:11,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:50:11,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:50:11,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:50:13,152.152 INFO    ] ================================================
[2026-06-19 12:50:13,168.168 INFO    ] Launching Daemon at Fri Jun 19 12:50:13 IST 2026
[2026-06-19 12:50:13,179.179 INFO    ] ================================================
[2026-06-19 12:50:13,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:50:13
[2026-06-19 12:50:14,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:50:14,637.637 INFO    ] Initializing speech engine...
[2026-06-19 12:50:14,647.647 INFO    ] 2026-06-19 12:50:14
[2026-06-19 12:50:14,896.896 INFO    ] 2026-06-19 12:50:14
[2026-06-19 12:50:14,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:50:15,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:50:15,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:50:15,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:50:15,410.410 INFO    ] time= 19/06/2026 12:50:15
[2026-06-19 12:50:15,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:50:15,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:50:15,610.610 INFO    ] No existing commands found in stream
[2026-06-19 12:50:20,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:50:20,632.632 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 12:50:21,157.157 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:50:21,159.159 INFO    ] Checking for system updates...
[2026-06-19 12:50:21,197.197 INFO    ] 200
[2026-06-19 12:50:21,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:21,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:50:21,256.256 INFO    ] No update needed
[2026-06-19 12:50:21,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 12:50:21,295.295 INFO    ] 200
[2026-06-19 12:50:21,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:21,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:50:21,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:50:21,390.390 INFO    ] No camera update needed
[2026-06-19 12:50:21,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:50:21,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:50:21,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:50:21,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:50:23,449.449 INFO    ] ================================================
[2026-06-19 12:50:23,464.464 INFO    ] Launching Daemon at Fri Jun 19 12:50:23 IST 2026
[2026-06-19 12:50:23,475.475 INFO    ] ================================================
[2026-06-19 12:50:24,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:50:24
[2026-06-19 12:50:24,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:50:24,914.914 INFO    ] Initializing speech engine...
[2026-06-19 12:50:24,923.923 INFO    ] 2026-06-19 12:50:24
[2026-06-19 12:50:25,175.175 INFO    ] 2026-06-19 12:50:25
[2026-06-19 12:50:25,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:50:25,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:50:25,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:50:25,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:50:25,657.657 INFO    ] time= 19/06/2026 12:50:25
[2026-06-19 12:50:25,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:50:25,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:50:25,902.902 INFO    ] No existing commands found in stream
[2026-06-19 12:50:30,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:50:30,919.919 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 12:50:34,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:50:34,482.482 INFO    ] Checking for system updates...
[2026-06-19 12:50:34,518.518 INFO    ] 200
[2026-06-19 12:50:34,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:34,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:50:34,578.578 INFO    ] No update needed
[2026-06-19 12:50:34,580.580 INFO    ] Checking for camera pi updates...
[2026-06-19 12:50:34,614.614 INFO    ] 200
[2026-06-19 12:50:34,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:34,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:50:34,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:50:34,712.712 INFO    ] No camera update needed
[2026-06-19 12:50:34,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:50:34,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:50:34,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:50:34,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:50:36,769.769 INFO    ] ================================================
[2026-06-19 12:50:36,785.785 INFO    ] Launching Daemon at Fri Jun 19 12:50:36 IST 2026
[2026-06-19 12:50:36,796.796 INFO    ] ================================================
[2026-06-19 12:50:37,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:50:37
[2026-06-19 12:50:38,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:50:38,442.442 INFO    ] Initializing speech engine...
[2026-06-19 12:50:38,456.456 INFO    ] 2026-06-19 12:50:38
[2026-06-19 12:50:38,768.768 INFO    ] 2026-06-19 12:50:38
[2026-06-19 12:50:38,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:50:39,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:50:39,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:50:39,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:50:39,280.280 INFO    ] time= 19/06/2026 12:50:39
[2026-06-19 12:50:39,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:50:39,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:50:39,439.439 INFO    ] No existing commands found in stream
[2026-06-19 12:50:44,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:50:44,462.462 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 12:50:46,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:50:46,505.505 INFO    ] Checking for system updates...
[2026-06-19 12:50:46,543.543 INFO    ] 200
[2026-06-19 12:50:46,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:46,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:50:46,600.600 INFO    ] No update needed
[2026-06-19 12:50:46,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 12:50:46,637.637 INFO    ] 200
[2026-06-19 12:50:46,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:46,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:50:46,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:50:46,728.728 INFO    ] No camera update needed
[2026-06-19 12:50:46,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:50:46,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:50:46,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:50:46,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:50:48,784.784 INFO    ] ================================================
[2026-06-19 12:50:48,799.799 INFO    ] Launching Daemon at Fri Jun 19 12:50:48 IST 2026
[2026-06-19 12:50:48,810.810 INFO    ] ================================================
[2026-06-19 12:50:49,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:50:49
[2026-06-19 12:50:49,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:50:50,272.272 INFO    ] Initializing speech engine...
[2026-06-19 12:50:50,279.279 INFO    ] 2026-06-19 12:50:50
[2026-06-19 12:50:50,541.541 INFO    ] 2026-06-19 12:50:50
[2026-06-19 12:50:50,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:50:50,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:50:50,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:50:50,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:50:50,997.997 INFO    ] time= 19/06/2026 12:50:50
[2026-06-19 12:50:51,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:50:51,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:50:51,216.216 INFO    ] No existing commands found in stream
[2026-06-19 12:50:56,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:50:56,249.249 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 12:50:58,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:50:58,282.282 INFO    ] Checking for system updates...
[2026-06-19 12:50:58,318.318 INFO    ] 200
[2026-06-19 12:50:58,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:58,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:50:58,376.376 INFO    ] No update needed
[2026-06-19 12:50:58,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 12:50:58,412.412 INFO    ] 200
[2026-06-19 12:50:58,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:50:58,456.456 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:50:58,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:50:58,601.601 INFO    ] No camera update needed
[2026-06-19 12:50:58,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:50:58,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:50:58,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:50:58,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:51:00,660.660 INFO    ] ================================================
[2026-06-19 12:51:00,676.676 INFO    ] Launching Daemon at Fri Jun 19 12:51:00 IST 2026
[2026-06-19 12:51:00,687.687 INFO    ] ================================================
[2026-06-19 12:51:01,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:51:01
[2026-06-19 12:51:02,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:51:02,572.572 INFO    ] Initializing speech engine...
[2026-06-19 12:51:02,582.582 INFO    ] 2026-06-19 12:51:02
[2026-06-19 12:51:02,913.913 INFO    ] 2026-06-19 12:51:02
[2026-06-19 12:51:03,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:51:03,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:51:03,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:51:03,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:51:03,456.456 INFO    ] time= 19/06/2026 12:51:03
[2026-06-19 12:51:03,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:51:03,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:51:03,572.572 INFO    ] No existing commands found in stream
[2026-06-19 12:51:08,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:51:08,613.613 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 12:51:12,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:51:12,842.842 INFO    ] Checking for system updates...
[2026-06-19 12:51:12,881.881 INFO    ] 200
[2026-06-19 12:51:12,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:51:12,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:51:12,940.940 INFO    ] No update needed
[2026-06-19 12:51:12,943.943 INFO    ] Checking for camera pi updates...
[2026-06-19 12:51:12,984.984 INFO    ] 200
[2026-06-19 12:51:12,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:51:13,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:51:13,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:51:13,075.075 INFO    ] No camera update needed
[2026-06-19 12:51:13,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:51:13,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:51:13,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:51:13,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:51:15,131.131 INFO    ] ================================================
[2026-06-19 12:51:15,146.146 INFO    ] Launching Daemon at Fri Jun 19 12:51:15 IST 2026
[2026-06-19 12:51:15,157.157 INFO    ] ================================================
[2026-06-19 12:51:15,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:51:15
[2026-06-19 12:51:16,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:51:16,612.612 INFO    ] Initializing speech engine...
[2026-06-19 12:51:16,619.619 INFO    ] 2026-06-19 12:51:16
[2026-06-19 12:51:16,866.866 INFO    ] 2026-06-19 12:51:16
[2026-06-19 12:51:16,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:51:17,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:51:17,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:51:17,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:51:17,423.423 INFO    ] time= 19/06/2026 12:51:17
[2026-06-19 12:51:17,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:51:17,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:51:17,577.577 INFO    ] No existing commands found in stream
[2026-06-19 12:51:22,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:51:22,590.590 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 12:51:24,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:51:24,494.494 INFO    ] Checking for system updates...
[2026-06-19 12:51:24,534.534 INFO    ] 200
[2026-06-19 12:51:24,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:51:24,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:51:24,591.591 INFO    ] No update needed
[2026-06-19 12:51:24,594.594 INFO    ] Checking for camera pi updates...
[2026-06-19 12:51:24,631.631 INFO    ] 200
[2026-06-19 12:51:24,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:51:24,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:51:24,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:51:24,723.723 INFO    ] No camera update needed
[2026-06-19 12:51:24,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:51:24,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:51:24,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:51:24,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:51:26,780.780 INFO    ] ================================================
[2026-06-19 12:51:26,795.795 INFO    ] Launching Daemon at Fri Jun 19 12:51:26 IST 2026
[2026-06-19 12:51:26,806.806 INFO    ] ================================================
[2026-06-19 12:51:27,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:51:27
[2026-06-19 12:51:27,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:51:28,232.232 INFO    ] Initializing speech engine...
[2026-06-19 12:51:28,246.246 INFO    ] 2026-06-19 12:51:28
[2026-06-19 12:51:28,529.529 INFO    ] 2026-06-19 12:51:28
[2026-06-19 12:51:28,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:51:28,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:51:28,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:51:28,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:51:28,944.944 INFO    ] time= 19/06/2026 12:51:28
[2026-06-19 12:51:28,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:51:28,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:51:29,035.035 INFO    ] No existing commands found in stream
[2026-06-19 12:51:34,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:51:34,074.074 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 12:51:38,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:51:38,294.294 INFO    ] Checking for system updates...
[2026-06-19 12:51:38,331.331 INFO    ] 200
[2026-06-19 12:51:38,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:51:38,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:51:38,389.389 INFO    ] No update needed
[2026-06-19 12:51:38,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 12:51:38,425.425 INFO    ] 200
[2026-06-19 12:51:38,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:51:38,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:51:38,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:51:38,526.526 INFO    ] No camera update needed
[2026-06-19 12:51:38,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:51:38,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:51:38,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:51:38,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:51:40,581.581 INFO    ] ================================================
[2026-06-19 12:51:40,596.596 INFO    ] Launching Daemon at Fri Jun 19 12:51:40 IST 2026
[2026-06-19 12:51:40,607.607 INFO    ] ================================================
[2026-06-19 12:51:41,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:51:41
[2026-06-19 12:51:41,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:51:42,013.013 INFO    ] Initializing speech engine...
[2026-06-19 12:51:42,035.035 INFO    ] 2026-06-19 12:51:42
[2026-06-19 12:51:42,291.291 INFO    ] 2026-06-19 12:51:42
[2026-06-19 12:51:42,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:51:42,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:51:42,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:51:42,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:51:42,686.686 INFO    ] time= 19/06/2026 12:51:42
[2026-06-19 12:51:42,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:51:42,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:51:42,821.821 INFO    ] No existing commands found in stream
[2026-06-19 12:51:47,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:51:47,849.849 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 12:51:51,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:51:51,284.284 INFO    ] Checking for system updates...
[2026-06-19 12:51:51,324.324 INFO    ] 200
[2026-06-19 12:51:51,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:51:51,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:51:51,388.388 INFO    ] No update needed
[2026-06-19 12:51:51,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 12:51:51,428.428 INFO    ] 200
[2026-06-19 12:51:51,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:51:51,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:51:51,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:51:51,522.522 INFO    ] No camera update needed
[2026-06-19 12:51:51,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:51:51,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:51:51,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:51:51,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:51:53,578.578 INFO    ] ================================================
[2026-06-19 12:51:53,593.593 INFO    ] Launching Daemon at Fri Jun 19 12:51:53 IST 2026
[2026-06-19 12:51:53,604.604 INFO    ] ================================================
[2026-06-19 12:51:54,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:51:54
[2026-06-19 12:51:54,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:51:55,029.029 INFO    ] Initializing speech engine...
[2026-06-19 12:51:55,038.038 INFO    ] 2026-06-19 12:51:55
[2026-06-19 12:51:55,289.289 INFO    ] 2026-06-19 12:51:55
[2026-06-19 12:51:55,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:51:55,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:51:55,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:51:55,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:51:55,759.759 INFO    ] time= 19/06/2026 12:51:55
[2026-06-19 12:51:55,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:51:55,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:51:55,985.985 INFO    ] No existing commands found in stream
[2026-06-19 12:52:01,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:52:01,018.018 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 12:52:04,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:52:04,201.201 INFO    ] Checking for system updates...
[2026-06-19 12:52:04,236.236 INFO    ] 200
[2026-06-19 12:52:04,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:04,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:52:04,294.294 INFO    ] No update needed
[2026-06-19 12:52:04,296.296 INFO    ] Checking for camera pi updates...
[2026-06-19 12:52:04,330.330 INFO    ] 200
[2026-06-19 12:52:04,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:04,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:52:04,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:52:04,418.418 INFO    ] No camera update needed
[2026-06-19 12:52:04,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:52:04,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:52:04,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:52:04,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:52:06,472.472 INFO    ] ================================================
[2026-06-19 12:52:06,488.488 INFO    ] Launching Daemon at Fri Jun 19 12:52:06 IST 2026
[2026-06-19 12:52:06,498.498 INFO    ] ================================================
[2026-06-19 12:52:07,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:52:07
[2026-06-19 12:52:07,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:52:07,957.957 INFO    ] Initializing speech engine...
[2026-06-19 12:52:07,971.971 INFO    ] 2026-06-19 12:52:07
[2026-06-19 12:52:08,241.241 INFO    ] 2026-06-19 12:52:08
[2026-06-19 12:52:08,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:52:08,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:52:08,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:52:08,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:52:08,748.748 INFO    ] time= 19/06/2026 12:52:08
[2026-06-19 12:52:08,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:52:08,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:52:08,927.927 INFO    ] No existing commands found in stream
[2026-06-19 12:52:13,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:52:13,959.959 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 12:52:14,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:52:14,843.843 INFO    ] Checking for system updates...
[2026-06-19 12:52:14,888.888 INFO    ] 200
[2026-06-19 12:52:14,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:14,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:52:14,954.954 INFO    ] No update needed
[2026-06-19 12:52:14,957.957 INFO    ] Checking for camera pi updates...
[2026-06-19 12:52:14,996.996 INFO    ] 200
[2026-06-19 12:52:14,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:15,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:52:15,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:52:15,096.096 INFO    ] No camera update needed
[2026-06-19 12:52:15,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:52:15,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:52:15,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:52:15,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:52:17,155.155 INFO    ] ================================================
[2026-06-19 12:52:17,170.170 INFO    ] Launching Daemon at Fri Jun 19 12:52:17 IST 2026
[2026-06-19 12:52:17,181.181 INFO    ] ================================================
[2026-06-19 12:52:17,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:52:17
[2026-06-19 12:52:18,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:52:18,728.728 INFO    ] Initializing speech engine...
[2026-06-19 12:52:18,735.735 INFO    ] 2026-06-19 12:52:18
[2026-06-19 12:52:19,020.020 INFO    ] 2026-06-19 12:52:19
[2026-06-19 12:52:19,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:52:19,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:52:19,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:52:19,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:52:19,560.560 INFO    ] time= 19/06/2026 12:52:19
[2026-06-19 12:52:19,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:52:19,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:52:19,715.715 INFO    ] No existing commands found in stream
[2026-06-19 12:52:24,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:52:24,743.743 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-19 12:52:26,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:52:26,852.852 INFO    ] Checking for system updates...
[2026-06-19 12:52:26,892.892 INFO    ] 200
[2026-06-19 12:52:26,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:26,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:52:26,955.955 INFO    ] No update needed
[2026-06-19 12:52:26,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 12:52:26,992.992 INFO    ] 200
[2026-06-19 12:52:26,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:27,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:52:27,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:52:27,080.080 INFO    ] No camera update needed
[2026-06-19 12:52:27,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:52:27,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:52:27,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:52:27,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:52:29,141.141 INFO    ] ================================================
[2026-06-19 12:52:29,156.156 INFO    ] Launching Daemon at Fri Jun 19 12:52:29 IST 2026
[2026-06-19 12:52:29,167.167 INFO    ] ================================================
[2026-06-19 12:52:29,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:52:29
[2026-06-19 12:52:30,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:52:30,592.592 INFO    ] Initializing speech engine...
[2026-06-19 12:52:30,600.600 INFO    ] 2026-06-19 12:52:30
[2026-06-19 12:52:30,850.850 INFO    ] 2026-06-19 12:52:30
[2026-06-19 12:52:30,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:52:31,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:52:31,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:52:31,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:52:31,226.226 INFO    ] time= 19/06/2026 12:52:31
[2026-06-19 12:52:31,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:52:31,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:52:31,407.407 INFO    ] No existing commands found in stream
[2026-06-19 12:52:36,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:52:36,434.434 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 12:52:39,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:52:39,131.131 INFO    ] Checking for system updates...
[2026-06-19 12:52:39,171.171 INFO    ] 200
[2026-06-19 12:52:39,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:39,233.233 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:52:39,236.236 INFO    ] No update needed
[2026-06-19 12:52:39,238.238 INFO    ] Checking for camera pi updates...
[2026-06-19 12:52:39,272.272 INFO    ] 200
[2026-06-19 12:52:39,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:39,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:52:39,359.359 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:52:39,362.362 INFO    ] No camera update needed
[2026-06-19 12:52:39,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:52:39,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:52:39,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:52:39,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:52:41,418.418 INFO    ] ================================================
[2026-06-19 12:52:41,433.433 INFO    ] Launching Daemon at Fri Jun 19 12:52:41 IST 2026
[2026-06-19 12:52:41,444.444 INFO    ] ================================================
[2026-06-19 12:52:42,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:52:42
[2026-06-19 12:52:42,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:52:43,080.080 INFO    ] Initializing speech engine...
[2026-06-19 12:52:43,091.091 INFO    ] 2026-06-19 12:52:43
[2026-06-19 12:52:43,368.368 INFO    ] 2026-06-19 12:52:43
[2026-06-19 12:52:43,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:52:43,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:52:43,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:52:43,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:52:43,783.783 INFO    ] time= 19/06/2026 12:52:43
[2026-06-19 12:52:43,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:52:43,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:52:43,940.940 INFO    ] No existing commands found in stream
[2026-06-19 12:52:48,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:52:48,955.955 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 12:52:50,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:52:50,606.606 INFO    ] Checking for system updates...
[2026-06-19 12:52:50,644.644 INFO    ] 200
[2026-06-19 12:52:50,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:50,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:52:50,704.704 INFO    ] No update needed
[2026-06-19 12:52:50,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 12:52:50,741.741 INFO    ] 200
[2026-06-19 12:52:50,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:52:50,786.786 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:52:50,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:52:50,835.835 INFO    ] No camera update needed
[2026-06-19 12:52:50,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:52:50,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:52:50,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:52:50,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:52:52,896.896 INFO    ] ================================================
[2026-06-19 12:52:52,912.912 INFO    ] Launching Daemon at Fri Jun 19 12:52:52 IST 2026
[2026-06-19 12:52:52,922.922 INFO    ] ================================================
[2026-06-19 12:52:53,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:52:53
[2026-06-19 12:52:54,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:52:54,570.570 INFO    ] Initializing speech engine...
[2026-06-19 12:52:54,583.583 INFO    ] 2026-06-19 12:52:54
[2026-06-19 12:52:54,871.871 INFO    ] 2026-06-19 12:52:54
[2026-06-19 12:52:54,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:52:55,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:52:55,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:52:55,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:52:55,422.422 INFO    ] time= 19/06/2026 12:52:55
[2026-06-19 12:52:55,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:52:55,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:52:55,588.588 INFO    ] No existing commands found in stream
[2026-06-19 12:53:00,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:53:00,610.610 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 12:53:01,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:53:01,115.115 INFO    ] Checking for system updates...
[2026-06-19 12:53:01,156.156 INFO    ] 200
[2026-06-19 12:53:01,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:01,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:53:01,223.223 INFO    ] No update needed
[2026-06-19 12:53:01,226.226 INFO    ] Checking for camera pi updates...
[2026-06-19 12:53:01,266.266 INFO    ] 200
[2026-06-19 12:53:01,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:01,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:53:01,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:53:01,471.471 INFO    ] No camera update needed
[2026-06-19 12:53:01,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:53:01,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:53:01,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:53:01,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:53:03,532.532 INFO    ] ================================================
[2026-06-19 12:53:03,549.549 INFO    ] Launching Daemon at Fri Jun 19 12:53:03 IST 2026
[2026-06-19 12:53:03,562.562 INFO    ] ================================================
[2026-06-19 12:53:04,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:53:04
[2026-06-19 12:53:04,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:53:05,263.263 INFO    ] Initializing speech engine...
[2026-06-19 12:53:05,271.271 INFO    ] 2026-06-19 12:53:05
[2026-06-19 12:53:05,559.559 INFO    ] 2026-06-19 12:53:05
[2026-06-19 12:53:05,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:53:05,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:53:05,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:53:06,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:53:06,094.094 INFO    ] time= 19/06/2026 12:53:06
[2026-06-19 12:53:06,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:53:06,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:53:06,274.274 INFO    ] No existing commands found in stream
[2026-06-19 12:53:11,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:53:11,304.304 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 12:53:15,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:53:15,458.458 INFO    ] Checking for system updates...
[2026-06-19 12:53:15,501.501 INFO    ] 200
[2026-06-19 12:53:15,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:15,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:53:15,562.562 INFO    ] No update needed
[2026-06-19 12:53:15,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 12:53:15,601.601 INFO    ] 200
[2026-06-19 12:53:15,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:15,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:53:15,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:53:15,694.694 INFO    ] No camera update needed
[2026-06-19 12:53:15,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:53:15,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:53:15,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:53:15,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:53:17,758.758 INFO    ] ================================================
[2026-06-19 12:53:17,773.773 INFO    ] Launching Daemon at Fri Jun 19 12:53:17 IST 2026
[2026-06-19 12:53:17,785.785 INFO    ] ================================================
[2026-06-19 12:53:18,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:53:18
[2026-06-19 12:53:19,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:53:19,485.485 INFO    ] Initializing speech engine...
[2026-06-19 12:53:19,494.494 INFO    ] 2026-06-19 12:53:19
[2026-06-19 12:53:19,769.769 INFO    ] 2026-06-19 12:53:19
[2026-06-19 12:53:19,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:53:20,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:53:20,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:53:20,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:53:20,257.257 INFO    ] time= 19/06/2026 12:53:20
[2026-06-19 12:53:20,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:53:20,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:53:20,457.457 INFO    ] No existing commands found in stream
[2026-06-19 12:53:25,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:53:25,486.486 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 12:53:27,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:53:27,113.113 INFO    ] Checking for system updates...
[2026-06-19 12:53:27,151.151 INFO    ] 200
[2026-06-19 12:53:27,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:27,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:53:27,210.210 INFO    ] No update needed
[2026-06-19 12:53:27,213.213 INFO    ] Checking for camera pi updates...
[2026-06-19 12:53:27,248.248 INFO    ] 200
[2026-06-19 12:53:27,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:27,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:53:27,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:53:27,339.339 INFO    ] No camera update needed
[2026-06-19 12:53:27,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:53:27,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:53:27,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:53:27,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:53:29,399.399 INFO    ] ================================================
[2026-06-19 12:53:29,414.414 INFO    ] Launching Daemon at Fri Jun 19 12:53:29 IST 2026
[2026-06-19 12:53:29,425.425 INFO    ] ================================================
[2026-06-19 12:53:30,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:53:30
[2026-06-19 12:53:30,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:53:31,132.132 INFO    ] Initializing speech engine...
[2026-06-19 12:53:31,147.147 INFO    ] 2026-06-19 12:53:31
[2026-06-19 12:53:31,441.441 INFO    ] 2026-06-19 12:53:31
[2026-06-19 12:53:31,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:53:31,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:53:31,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:53:32,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:53:32,034.034 INFO    ] time= 19/06/2026 12:53:32
[2026-06-19 12:53:32,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:53:32,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:53:32,198.198 INFO    ] No existing commands found in stream
[2026-06-19 12:53:37,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:53:37,233.233 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 12:53:40,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:53:40,107.107 INFO    ] Checking for system updates...
[2026-06-19 12:53:40,146.146 INFO    ] 200
[2026-06-19 12:53:40,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:40,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:53:40,206.206 INFO    ] No update needed
[2026-06-19 12:53:40,209.209 INFO    ] Checking for camera pi updates...
[2026-06-19 12:53:40,244.244 INFO    ] 200
[2026-06-19 12:53:40,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:40,296.296 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:53:40,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:53:40,341.341 INFO    ] No camera update needed
[2026-06-19 12:53:40,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:53:40,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:53:40,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:53:40,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:53:42,402.402 INFO    ] ================================================
[2026-06-19 12:53:42,417.417 INFO    ] Launching Daemon at Fri Jun 19 12:53:42 IST 2026
[2026-06-19 12:53:42,429.429 INFO    ] ================================================
[2026-06-19 12:53:43,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:53:43
[2026-06-19 12:53:43,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:53:43,874.874 INFO    ] Initializing speech engine...
[2026-06-19 12:53:43,883.883 INFO    ] 2026-06-19 12:53:43
[2026-06-19 12:53:44,185.185 INFO    ] 2026-06-19 12:53:44
[2026-06-19 12:53:44,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:53:44,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:53:44,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:53:44,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:53:44,618.618 INFO    ] time= 19/06/2026 12:53:44
[2026-06-19 12:53:44,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:53:44,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:53:44,706.706 INFO    ] No existing commands found in stream
[2026-06-19 12:53:49,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:53:49,720.720 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 12:53:53,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:53:53,020.020 INFO    ] Checking for system updates...
[2026-06-19 12:53:53,061.061 INFO    ] 200
[2026-06-19 12:53:53,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:53,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:53:53,119.119 INFO    ] No update needed
[2026-06-19 12:53:53,121.121 INFO    ] Checking for camera pi updates...
[2026-06-19 12:53:53,157.157 INFO    ] 200
[2026-06-19 12:53:53,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:53:53,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:53:53,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:53:53,248.248 INFO    ] No camera update needed
[2026-06-19 12:53:53,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:53:53,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:53:53,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:53:53,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:53:55,305.305 INFO    ] ================================================
[2026-06-19 12:53:55,320.320 INFO    ] Launching Daemon at Fri Jun 19 12:53:55 IST 2026
[2026-06-19 12:53:55,332.332 INFO    ] ================================================
[2026-06-19 12:53:56,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:53:55
[2026-06-19 12:53:56,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:53:57,005.005 INFO    ] Initializing speech engine...
[2026-06-19 12:53:57,018.018 INFO    ] 2026-06-19 12:53:57
[2026-06-19 12:53:57,284.284 INFO    ] 2026-06-19 12:53:57
[2026-06-19 12:53:57,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:53:57,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:53:57,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:53:57,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:53:57,811.811 INFO    ] time= 19/06/2026 12:53:57
[2026-06-19 12:53:57,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:53:57,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:53:57,985.985 INFO    ] No existing commands found in stream
[2026-06-19 12:54:03,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:54:03,021.021 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 12:54:06,382.382 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:54:06,385.385 INFO    ] Checking for system updates...
[2026-06-19 12:54:06,420.420 INFO    ] 200
[2026-06-19 12:54:06,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:06,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:54:06,478.478 INFO    ] No update needed
[2026-06-19 12:54:06,480.480 INFO    ] Checking for camera pi updates...
[2026-06-19 12:54:06,514.514 INFO    ] 200
[2026-06-19 12:54:06,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:06,563.563 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:54:06,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:54:06,608.608 INFO    ] No camera update needed
[2026-06-19 12:54:06,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:54:06,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:54:06,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:54:06,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:54:08,666.666 INFO    ] ================================================
[2026-06-19 12:54:08,682.682 INFO    ] Launching Daemon at Fri Jun 19 12:54:08 IST 2026
[2026-06-19 12:54:08,694.694 INFO    ] ================================================
[2026-06-19 12:54:09,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:54:09
[2026-06-19 12:54:10,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:54:10,375.375 INFO    ] Initializing speech engine...
[2026-06-19 12:54:10,382.382 INFO    ] 2026-06-19 12:54:10
[2026-06-19 12:54:10,693.693 INFO    ] 2026-06-19 12:54:10
[2026-06-19 12:54:10,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:54:10,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:54:11,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:54:11,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:54:11,204.204 INFO    ] time= 19/06/2026 12:54:11
[2026-06-19 12:54:11,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:54:11,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:54:11,405.405 INFO    ] No existing commands found in stream
[2026-06-19 12:54:16,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:54:16,448.448 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 12:54:19,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:54:19,822.822 INFO    ] Checking for system updates...
[2026-06-19 12:54:19,860.860 INFO    ] 200
[2026-06-19 12:54:19,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:19,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:54:19,919.919 INFO    ] No update needed
[2026-06-19 12:54:19,922.922 INFO    ] Checking for camera pi updates...
[2026-06-19 12:54:19,957.957 INFO    ] 200
[2026-06-19 12:54:19,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:20,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:54:20,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:54:20,060.060 INFO    ] No camera update needed
[2026-06-19 12:54:20,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:54:20,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:54:20,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:54:20,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:54:22,121.121 INFO    ] ================================================
[2026-06-19 12:54:22,137.137 INFO    ] Launching Daemon at Fri Jun 19 12:54:22 IST 2026
[2026-06-19 12:54:22,148.148 INFO    ] ================================================
[2026-06-19 12:54:22,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:54:22
[2026-06-19 12:54:23,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:54:23,600.600 INFO    ] Initializing speech engine...
[2026-06-19 12:54:23,616.616 INFO    ] 2026-06-19 12:54:23
[2026-06-19 12:54:23,907.907 INFO    ] 2026-06-19 12:54:23
[2026-06-19 12:54:23,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:54:24,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:54:24,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:54:24,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:54:24,334.334 INFO    ] time= 19/06/2026 12:54:24
[2026-06-19 12:54:24,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:54:24,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:54:24,422.422 INFO    ] No existing commands found in stream
[2026-06-19 12:54:29,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:54:29,440.440 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 12:54:31,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:54:31,631.631 INFO    ] Checking for system updates...
[2026-06-19 12:54:31,668.668 INFO    ] 200
[2026-06-19 12:54:31,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:31,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:54:31,726.726 INFO    ] No update needed
[2026-06-19 12:54:31,728.728 INFO    ] Checking for camera pi updates...
[2026-06-19 12:54:31,762.762 INFO    ] 200
[2026-06-19 12:54:31,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:31,805.805 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:54:31,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:54:31,844.844 INFO    ] No camera update needed
[2026-06-19 12:54:31,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:54:31,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:54:31,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:54:31,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:54:33,906.906 INFO    ] ================================================
[2026-06-19 12:54:33,921.921 INFO    ] Launching Daemon at Fri Jun 19 12:54:33 IST 2026
[2026-06-19 12:54:33,932.932 INFO    ] ================================================
[2026-06-19 12:54:34,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:54:34
[2026-06-19 12:54:35,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:54:35,373.373 INFO    ] Initializing speech engine...
[2026-06-19 12:54:35,396.396 INFO    ] 2026-06-19 12:54:35
[2026-06-19 12:54:35,649.649 INFO    ] 2026-06-19 12:54:35
[2026-06-19 12:54:35,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:54:35,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:54:35,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:54:36,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:54:36,125.125 INFO    ] time= 19/06/2026 12:54:36
[2026-06-19 12:54:36,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:54:36,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:54:36,355.355 INFO    ] No existing commands found in stream
[2026-06-19 12:54:41,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:54:41,374.374 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 12:54:42,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:54:42,777.777 INFO    ] Checking for system updates...
[2026-06-19 12:54:42,818.818 INFO    ] 200
[2026-06-19 12:54:42,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:42,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:54:42,880.880 INFO    ] No update needed
[2026-06-19 12:54:42,882.882 INFO    ] Checking for camera pi updates...
[2026-06-19 12:54:42,916.916 INFO    ] 200
[2026-06-19 12:54:42,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:42,959.959 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:54:43,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:54:43,007.007 INFO    ] No camera update needed
[2026-06-19 12:54:43,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:54:43,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:54:43,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:54:43,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:54:45,069.069 INFO    ] ================================================
[2026-06-19 12:54:45,086.086 INFO    ] Launching Daemon at Fri Jun 19 12:54:45 IST 2026
[2026-06-19 12:54:45,097.097 INFO    ] ================================================
[2026-06-19 12:54:45,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:54:45
[2026-06-19 12:54:46,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:54:46,770.770 INFO    ] Initializing speech engine...
[2026-06-19 12:54:46,778.778 INFO    ] 2026-06-19 12:54:46
[2026-06-19 12:54:47,084.084 INFO    ] 2026-06-19 12:54:47
[2026-06-19 12:54:47,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:54:47,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:54:47,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:54:47,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:54:47,579.579 INFO    ] time= 19/06/2026 12:54:47
[2026-06-19 12:54:47,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:54:47,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:54:47,795.795 INFO    ] No existing commands found in stream
[2026-06-19 12:54:52,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:54:52,829.829 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 12:54:55,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:54:55,695.695 INFO    ] Checking for system updates...
[2026-06-19 12:54:55,733.733 INFO    ] 200
[2026-06-19 12:54:55,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:55,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:54:55,792.792 INFO    ] No update needed
[2026-06-19 12:54:55,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 12:54:55,829.829 INFO    ] 200
[2026-06-19 12:54:55,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:54:55,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:54:55,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:54:55,915.915 INFO    ] No camera update needed
[2026-06-19 12:54:55,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:54:55,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:54:55,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:54:55,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:54:57,970.970 INFO    ] ================================================
[2026-06-19 12:54:57,985.985 INFO    ] Launching Daemon at Fri Jun 19 12:54:57 IST 2026
[2026-06-19 12:54:58,996.996 INFO    ] ================================================
[2026-06-19 12:54:58,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:54:58
[2026-06-19 12:54:59,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:54:59,425.425 INFO    ] Initializing speech engine...
[2026-06-19 12:54:59,443.443 INFO    ] 2026-06-19 12:54:59
[2026-06-19 12:54:59,697.697 INFO    ] 2026-06-19 12:54:59
[2026-06-19 12:54:59,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:54:59,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:54:59,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:55:00,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:55:00,171.171 INFO    ] time= 19/06/2026 12:55:00
[2026-06-19 12:55:00,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:55:00,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:55:00,412.412 INFO    ] No existing commands found in stream
[2026-06-19 12:55:05,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:55:05,437.437 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 12:55:07,195.195 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:55:07,198.198 INFO    ] Checking for system updates...
[2026-06-19 12:55:07,241.241 INFO    ] 200
[2026-06-19 12:55:07,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:07,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:55:07,298.298 INFO    ] No update needed
[2026-06-19 12:55:07,300.300 INFO    ] Checking for camera pi updates...
[2026-06-19 12:55:07,334.334 INFO    ] 200
[2026-06-19 12:55:07,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:07,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:55:07,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:55:07,522.522 INFO    ] No camera update needed
[2026-06-19 12:55:07,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:55:07,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:55:07,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:55:07,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:55:09,579.579 INFO    ] ================================================
[2026-06-19 12:55:09,594.594 INFO    ] Launching Daemon at Fri Jun 19 12:55:09 IST 2026
[2026-06-19 12:55:09,605.605 INFO    ] ================================================
[2026-06-19 12:55:10,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:55:10
[2026-06-19 12:55:10,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:55:11,077.077 INFO    ] Initializing speech engine...
[2026-06-19 12:55:11,085.085 INFO    ] 2026-06-19 12:55:11
[2026-06-19 12:55:11,357.357 INFO    ] 2026-06-19 12:55:11
[2026-06-19 12:55:11,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:55:11,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:55:11,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:55:11,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:55:11,736.736 INFO    ] time= 19/06/2026 12:55:11
[2026-06-19 12:55:11,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:55:11,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:55:11,927.927 INFO    ] No existing commands found in stream
[2026-06-19 12:55:16,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:55:16,950.950 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 12:55:18,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:55:18,673.673 INFO    ] Checking for system updates...
[2026-06-19 12:55:18,709.709 INFO    ] 200
[2026-06-19 12:55:18,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:18,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:55:18,775.775 INFO    ] No update needed
[2026-06-19 12:55:18,777.777 INFO    ] Checking for camera pi updates...
[2026-06-19 12:55:18,816.816 INFO    ] 200
[2026-06-19 12:55:18,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:18,859.859 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:55:18,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:55:18,913.913 INFO    ] No camera update needed
[2026-06-19 12:55:18,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:55:18,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:55:18,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:55:18,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:55:20,969.969 INFO    ] ================================================
[2026-06-19 12:55:20,984.984 INFO    ] Launching Daemon at Fri Jun 19 12:55:20 IST 2026
[2026-06-19 12:55:21,995.995 INFO    ] ================================================
[2026-06-19 12:55:21,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:55:21
[2026-06-19 12:55:22,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:55:22,395.395 INFO    ] Initializing speech engine...
[2026-06-19 12:55:22,410.410 INFO    ] 2026-06-19 12:55:22
[2026-06-19 12:55:22,671.671 INFO    ] 2026-06-19 12:55:22
[2026-06-19 12:55:22,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:55:22,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:55:22,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:55:23,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:55:23,143.143 INFO    ] time= 19/06/2026 12:55:23
[2026-06-19 12:55:23,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:55:23,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:55:23,382.382 INFO    ] No existing commands found in stream
[2026-06-19 12:55:28,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:55:28,414.414 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 12:55:28,896.896 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:55:28,899.899 INFO    ] Checking for system updates...
[2026-06-19 12:55:28,936.936 INFO    ] 200
[2026-06-19 12:55:28,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:28,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:55:28,994.994 INFO    ] No update needed
[2026-06-19 12:55:28,997.997 INFO    ] Checking for camera pi updates...
[2026-06-19 12:55:29,031.031 INFO    ] 200
[2026-06-19 12:55:29,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:29,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:55:29,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:55:29,120.120 INFO    ] No camera update needed
[2026-06-19 12:55:29,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:55:29,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:55:29,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:55:29,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:55:31,175.175 INFO    ] ================================================
[2026-06-19 12:55:31,190.190 INFO    ] Launching Daemon at Fri Jun 19 12:55:31 IST 2026
[2026-06-19 12:55:31,201.201 INFO    ] ================================================
[2026-06-19 12:55:31,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:55:31
[2026-06-19 12:55:32,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:55:32,746.746 INFO    ] Initializing speech engine...
[2026-06-19 12:55:32,757.757 INFO    ] 2026-06-19 12:55:32
[2026-06-19 12:55:33,032.032 INFO    ] 2026-06-19 12:55:33
[2026-06-19 12:55:33,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:55:33,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:55:33,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:55:33,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:55:33,624.624 INFO    ] time= 19/06/2026 12:55:33
[2026-06-19 12:55:33,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:55:33,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:55:33,791.791 INFO    ] No existing commands found in stream
[2026-06-19 12:55:38,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:55:38,826.826 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 12:55:40,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:55:40,138.138 INFO    ] Checking for system updates...
[2026-06-19 12:55:40,183.183 INFO    ] 200
[2026-06-19 12:55:40,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:40,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:55:40,251.251 INFO    ] No update needed
[2026-06-19 12:55:40,254.254 INFO    ] Checking for camera pi updates...
[2026-06-19 12:55:40,290.290 INFO    ] 200
[2026-06-19 12:55:40,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:40,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:55:40,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:55:40,403.403 INFO    ] No camera update needed
[2026-06-19 12:55:40,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:55:40,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:55:40,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:55:40,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:55:42,463.463 INFO    ] ================================================
[2026-06-19 12:55:42,479.479 INFO    ] Launching Daemon at Fri Jun 19 12:55:42 IST 2026
[2026-06-19 12:55:42,490.490 INFO    ] ================================================
[2026-06-19 12:55:43,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:55:43
[2026-06-19 12:55:43,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:55:44,046.046 INFO    ] Initializing speech engine...
[2026-06-19 12:55:44,058.058 INFO    ] 2026-06-19 12:55:44
[2026-06-19 12:55:44,353.353 INFO    ] 2026-06-19 12:55:44
[2026-06-19 12:55:44,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:55:44,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:55:44,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:55:44,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:55:44,902.902 INFO    ] time= 19/06/2026 12:55:44
[2026-06-19 12:55:44,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:55:44,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:55:45,093.093 INFO    ] No existing commands found in stream
[2026-06-19 12:55:50,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:55:50,128.128 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 12:55:50,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:55:50,970.970 INFO    ] Checking for system updates...
[2026-06-19 12:55:51,009.009 INFO    ] 200
[2026-06-19 12:55:51,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:51,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:55:51,067.067 INFO    ] No update needed
[2026-06-19 12:55:51,069.069 INFO    ] Checking for camera pi updates...
[2026-06-19 12:55:51,108.108 INFO    ] 200
[2026-06-19 12:55:51,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:55:51,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:55:51,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:55:51,207.207 INFO    ] No camera update needed
[2026-06-19 12:55:51,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:55:51,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:55:51,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:55:51,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:55:53,261.261 INFO    ] ================================================
[2026-06-19 12:55:53,276.276 INFO    ] Launching Daemon at Fri Jun 19 12:55:53 IST 2026
[2026-06-19 12:55:53,287.287 INFO    ] ================================================
[2026-06-19 12:55:53,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:55:53
[2026-06-19 12:55:54,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:55:54,919.919 INFO    ] Initializing speech engine...
[2026-06-19 12:55:54,933.933 INFO    ] 2026-06-19 12:55:54
[2026-06-19 12:55:55,227.227 INFO    ] 2026-06-19 12:55:55
[2026-06-19 12:55:55,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:55:55,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:55:55,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:55:55,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:55:55,773.773 INFO    ] time= 19/06/2026 12:55:55
[2026-06-19 12:55:55,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:55:55,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:55:55,938.938 INFO    ] No existing commands found in stream
[2026-06-19 12:56:00,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:56:00,961.961 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 12:56:02,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:56:02,012.012 INFO    ] Checking for system updates...
[2026-06-19 12:56:02,059.059 INFO    ] 200
[2026-06-19 12:56:02,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:02,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:56:02,127.127 INFO    ] No update needed
[2026-06-19 12:56:02,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 12:56:02,169.169 INFO    ] 200
[2026-06-19 12:56:02,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:02,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:56:02,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:56:02,260.260 INFO    ] No camera update needed
[2026-06-19 12:56:02,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:56:02,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:56:02,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:56:02,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:56:04,321.321 INFO    ] ================================================
[2026-06-19 12:56:04,336.336 INFO    ] Launching Daemon at Fri Jun 19 12:56:04 IST 2026
[2026-06-19 12:56:04,347.347 INFO    ] ================================================
[2026-06-19 12:56:04,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:56:04
[2026-06-19 12:56:05,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:56:05,793.793 INFO    ] Initializing speech engine...
[2026-06-19 12:56:05,799.799 INFO    ] 2026-06-19 12:56:05
[2026-06-19 12:56:06,065.065 INFO    ] 2026-06-19 12:56:06
[2026-06-19 12:56:06,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:56:06,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:56:06,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:56:06,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:56:06,691.691 INFO    ] time= 19/06/2026 12:56:06
[2026-06-19 12:56:06,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:56:06,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:56:06,875.875 INFO    ] No existing commands found in stream
[2026-06-19 12:56:11,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:56:11,910.910 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 12:56:13,363.363 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:56:13,366.366 INFO    ] Checking for system updates...
[2026-06-19 12:56:13,403.403 INFO    ] 200
[2026-06-19 12:56:13,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:13,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:56:13,463.463 INFO    ] No update needed
[2026-06-19 12:56:13,466.466 INFO    ] Checking for camera pi updates...
[2026-06-19 12:56:13,506.506 INFO    ] 200
[2026-06-19 12:56:13,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:13,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:56:13,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:56:13,605.605 INFO    ] No camera update needed
[2026-06-19 12:56:13,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:56:13,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:56:13,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:56:13,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:56:15,665.665 INFO    ] ================================================
[2026-06-19 12:56:15,680.680 INFO    ] Launching Daemon at Fri Jun 19 12:56:15 IST 2026
[2026-06-19 12:56:15,691.691 INFO    ] ================================================
[2026-06-19 12:56:16,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:56:16
[2026-06-19 12:56:16,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:56:17,203.203 INFO    ] Initializing speech engine...
[2026-06-19 12:56:17,211.211 INFO    ] 2026-06-19 12:56:17
[2026-06-19 12:56:17,503.503 INFO    ] 2026-06-19 12:56:17
[2026-06-19 12:56:17,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:56:17,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:56:17,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:56:18,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:56:18,054.054 INFO    ] time= 19/06/2026 12:56:18
[2026-06-19 12:56:18,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:56:18,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:56:18,216.216 INFO    ] No existing commands found in stream
[2026-06-19 12:56:23,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:56:23,243.243 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 12:56:25,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:56:25,955.955 INFO    ] Checking for system updates...
[2026-06-19 12:56:25,998.998 INFO    ] 200
[2026-06-19 12:56:26,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:26,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:56:26,058.058 INFO    ] No update needed
[2026-06-19 12:56:26,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 12:56:26,101.101 INFO    ] 200
[2026-06-19 12:56:26,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:26,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:56:26,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:56:26,190.190 INFO    ] No camera update needed
[2026-06-19 12:56:26,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:56:26,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:56:26,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:56:26,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:56:28,250.250 INFO    ] ================================================
[2026-06-19 12:56:28,266.266 INFO    ] Launching Daemon at Fri Jun 19 12:56:28 IST 2026
[2026-06-19 12:56:28,277.277 INFO    ] ================================================
[2026-06-19 12:56:28,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:56:28
[2026-06-19 12:56:29,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:56:29,736.736 INFO    ] Initializing speech engine...
[2026-06-19 12:56:29,743.743 INFO    ] 2026-06-19 12:56:29
[2026-06-19 12:56:30,048.048 INFO    ] 2026-06-19 12:56:30
[2026-06-19 12:56:30,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:56:30,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:56:30,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:56:30,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:56:30,438.438 INFO    ] time= 19/06/2026 12:56:30
[2026-06-19 12:56:30,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:56:30,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:56:30,570.570 INFO    ] No existing commands found in stream
[2026-06-19 12:56:35,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:56:35,583.583 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 12:56:37,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:56:37,773.773 INFO    ] Checking for system updates...
[2026-06-19 12:56:37,810.810 INFO    ] 200
[2026-06-19 12:56:37,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:37,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:56:37,868.868 INFO    ] No update needed
[2026-06-19 12:56:37,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 12:56:37,917.917 INFO    ] 200
[2026-06-19 12:56:37,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:37,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:56:38,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:56:38,014.014 INFO    ] No camera update needed
[2026-06-19 12:56:38,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:56:38,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:56:38,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:56:38,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:56:40,070.070 INFO    ] ================================================
[2026-06-19 12:56:40,085.085 INFO    ] Launching Daemon at Fri Jun 19 12:56:40 IST 2026
[2026-06-19 12:56:40,096.096 INFO    ] ================================================
[2026-06-19 12:56:40,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:56:40
[2026-06-19 12:56:41,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:56:41,562.562 INFO    ] Initializing speech engine...
[2026-06-19 12:56:41,569.569 INFO    ] 2026-06-19 12:56:41
[2026-06-19 12:56:41,831.831 INFO    ] 2026-06-19 12:56:41
[2026-06-19 12:56:41,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:56:42,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:56:42,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:56:42,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:56:42,317.317 INFO    ] time= 19/06/2026 12:56:42
[2026-06-19 12:56:42,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:56:42,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:56:42,529.529 INFO    ] No existing commands found in stream
[2026-06-19 12:56:47,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:56:47,548.548 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 12:56:49,341.341 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:56:49,343.343 INFO    ] Checking for system updates...
[2026-06-19 12:56:49,379.379 INFO    ] 200
[2026-06-19 12:56:49,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:49,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:56:49,461.461 INFO    ] No update needed
[2026-06-19 12:56:49,464.464 INFO    ] Checking for camera pi updates...
[2026-06-19 12:56:49,497.497 INFO    ] 200
[2026-06-19 12:56:49,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:56:49,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:56:49,572.572 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:56:49,575.575 INFO    ] No camera update needed
[2026-06-19 12:56:49,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:56:49,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:56:49,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:56:49,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:56:51,632.632 INFO    ] ================================================
[2026-06-19 12:56:51,648.648 INFO    ] Launching Daemon at Fri Jun 19 12:56:51 IST 2026
[2026-06-19 12:56:51,659.659 INFO    ] ================================================
[2026-06-19 12:56:52,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:56:52
[2026-06-19 12:56:52,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:56:53,115.115 INFO    ] Initializing speech engine...
[2026-06-19 12:56:53,125.125 INFO    ] 2026-06-19 12:56:53
[2026-06-19 12:56:53,382.382 INFO    ] 2026-06-19 12:56:53
[2026-06-19 12:56:53,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:56:53,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:56:53,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:56:53,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:56:53,823.823 INFO    ] time= 19/06/2026 12:56:53
[2026-06-19 12:56:53,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:56:53,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:56:53,913.913 INFO    ] No existing commands found in stream
[2026-06-19 12:56:58,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:56:58,936.936 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 12:57:02,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:57:02,721.721 INFO    ] Checking for system updates...
[2026-06-19 12:57:02,759.759 INFO    ] 200
[2026-06-19 12:57:02,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:02,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:57:02,826.826 INFO    ] No update needed
[2026-06-19 12:57:02,829.829 INFO    ] Checking for camera pi updates...
[2026-06-19 12:57:02,863.863 INFO    ] 200
[2026-06-19 12:57:02,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:02,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:57:02,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:57:02,944.944 INFO    ] No camera update needed
[2026-06-19 12:57:02,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:57:02,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:57:02,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:57:02,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:57:05,000.000 INFO    ] ================================================
[2026-06-19 12:57:05,015.015 INFO    ] Launching Daemon at Fri Jun 19 12:57:05 IST 2026
[2026-06-19 12:57:05,026.026 INFO    ] ================================================
[2026-06-19 12:57:05,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:57:05
[2026-06-19 12:57:06,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:57:06,538.538 INFO    ] Initializing speech engine...
[2026-06-19 12:57:06,552.552 INFO    ] 2026-06-19 12:57:06
[2026-06-19 12:57:06,833.833 INFO    ] 2026-06-19 12:57:06
[2026-06-19 12:57:06,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:57:07,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:57:07,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:57:07,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:57:07,385.385 INFO    ] time= 19/06/2026 12:57:07
[2026-06-19 12:57:07,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:57:07,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:57:07,544.544 INFO    ] No existing commands found in stream
[2026-06-19 12:57:12,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:57:12,574.574 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 12:57:16,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:57:16,737.737 INFO    ] Checking for system updates...
[2026-06-19 12:57:16,774.774 INFO    ] 200
[2026-06-19 12:57:16,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:16,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:57:16,841.841 INFO    ] No update needed
[2026-06-19 12:57:16,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 12:57:16,879.879 INFO    ] 200
[2026-06-19 12:57:16,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:16,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:57:17,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:57:17,080.080 INFO    ] No camera update needed
[2026-06-19 12:57:17,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:57:17,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:57:17,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:57:17,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:57:19,138.138 INFO    ] ================================================
[2026-06-19 12:57:19,154.154 INFO    ] Launching Daemon at Fri Jun 19 12:57:19 IST 2026
[2026-06-19 12:57:19,165.165 INFO    ] ================================================
[2026-06-19 12:57:19,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:57:19
[2026-06-19 12:57:20,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:57:20,669.669 INFO    ] Initializing speech engine...
[2026-06-19 12:57:20,676.676 INFO    ] 2026-06-19 12:57:20
[2026-06-19 12:57:20,985.985 INFO    ] 2026-06-19 12:57:20
[2026-06-19 12:57:21,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:57:21,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:57:21,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:57:21,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:57:21,496.496 INFO    ] time= 19/06/2026 12:57:21
[2026-06-19 12:57:21,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:57:21,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:57:21,652.652 INFO    ] No existing commands found in stream
[2026-06-19 12:57:26,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:57:26,676.676 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 12:57:29,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:57:29,015.015 INFO    ] Checking for system updates...
[2026-06-19 12:57:29,057.057 INFO    ] 200
[2026-06-19 12:57:29,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:29,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:57:29,117.117 INFO    ] No update needed
[2026-06-19 12:57:29,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 12:57:29,158.158 INFO    ] 200
[2026-06-19 12:57:29,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:29,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:57:29,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:57:29,257.257 INFO    ] No camera update needed
[2026-06-19 12:57:29,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:57:29,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:57:29,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:57:29,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:57:31,317.317 INFO    ] ================================================
[2026-06-19 12:57:31,332.332 INFO    ] Launching Daemon at Fri Jun 19 12:57:31 IST 2026
[2026-06-19 12:57:31,343.343 INFO    ] ================================================
[2026-06-19 12:57:31,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:57:31
[2026-06-19 12:57:32,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:57:32,850.850 INFO    ] Initializing speech engine...
[2026-06-19 12:57:32,857.857 INFO    ] 2026-06-19 12:57:32
[2026-06-19 12:57:33,152.152 INFO    ] 2026-06-19 12:57:33
[2026-06-19 12:57:33,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:57:33,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:57:33,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:57:33,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:57:33,581.581 INFO    ] time= 19/06/2026 12:57:33
[2026-06-19 12:57:33,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:57:33,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:57:33,790.790 INFO    ] No existing commands found in stream
[2026-06-19 12:57:38,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:57:38,817.817 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 12:57:42,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:57:42,216.216 INFO    ] Checking for system updates...
[2026-06-19 12:57:42,253.253 INFO    ] 200
[2026-06-19 12:57:42,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:42,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:57:42,320.320 INFO    ] No update needed
[2026-06-19 12:57:42,323.323 INFO    ] Checking for camera pi updates...
[2026-06-19 12:57:42,358.358 INFO    ] 200
[2026-06-19 12:57:42,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:42,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:57:42,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:57:42,449.449 INFO    ] No camera update needed
[2026-06-19 12:57:42,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:57:42,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:57:42,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:57:42,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:57:44,508.508 INFO    ] ================================================
[2026-06-19 12:57:44,523.523 INFO    ] Launching Daemon at Fri Jun 19 12:57:44 IST 2026
[2026-06-19 12:57:44,534.534 INFO    ] ================================================
[2026-06-19 12:57:45,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:57:45
[2026-06-19 12:57:45,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:57:46,178.178 INFO    ] Initializing speech engine...
[2026-06-19 12:57:46,185.185 INFO    ] 2026-06-19 12:57:46
[2026-06-19 12:57:46,481.481 INFO    ] 2026-06-19 12:57:46
[2026-06-19 12:57:46,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:57:46,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:57:46,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:57:46,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:57:46,948.948 INFO    ] time= 19/06/2026 12:57:46
[2026-06-19 12:57:47,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:57:47,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:57:47,170.170 INFO    ] No existing commands found in stream
[2026-06-19 12:57:52,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:57:52,205.205 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 12:57:53,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:57:53,657.657 INFO    ] Checking for system updates...
[2026-06-19 12:57:53,700.700 INFO    ] 200
[2026-06-19 12:57:53,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:53,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:57:53,760.760 INFO    ] No update needed
[2026-06-19 12:57:53,762.762 INFO    ] Checking for camera pi updates...
[2026-06-19 12:57:53,801.801 INFO    ] 200
[2026-06-19 12:57:53,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:57:53,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:57:53,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:57:53,894.894 INFO    ] No camera update needed
[2026-06-19 12:57:53,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:57:53,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:57:53,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:57:53,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:57:55,952.952 INFO    ] ================================================
[2026-06-19 12:57:55,967.967 INFO    ] Launching Daemon at Fri Jun 19 12:57:55 IST 2026
[2026-06-19 12:57:55,977.977 INFO    ] ================================================
[2026-06-19 12:57:56,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:57:56
[2026-06-19 12:57:57,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:57:57,612.612 INFO    ] Initializing speech engine...
[2026-06-19 12:57:57,621.621 INFO    ] 2026-06-19 12:57:57
[2026-06-19 12:57:57,913.913 INFO    ] 2026-06-19 12:57:57
[2026-06-19 12:57:57,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:57:58,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:57:58,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:57:58,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:57:58,463.463 INFO    ] time= 19/06/2026 12:57:58
[2026-06-19 12:57:58,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:57:58,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:57:58,617.617 INFO    ] No existing commands found in stream
[2026-06-19 12:58:03,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:58:03,638.638 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 12:58:06,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:58:06,216.216 INFO    ] Checking for system updates...
[2026-06-19 12:58:06,252.252 INFO    ] 200
[2026-06-19 12:58:06,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:06,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:58:06,311.311 INFO    ] No update needed
[2026-06-19 12:58:06,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 12:58:06,350.350 INFO    ] 200
[2026-06-19 12:58:06,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:06,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:58:06,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:58:06,434.434 INFO    ] No camera update needed
[2026-06-19 12:58:06,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:58:06,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:58:06,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:58:06,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:58:08,489.489 INFO    ] ================================================
[2026-06-19 12:58:08,504.504 INFO    ] Launching Daemon at Fri Jun 19 12:58:08 IST 2026
[2026-06-19 12:58:08,515.515 INFO    ] ================================================
[2026-06-19 12:58:09,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:58:09
[2026-06-19 12:58:09,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:58:09,926.926 INFO    ] Initializing speech engine...
[2026-06-19 12:58:09,949.949 INFO    ] 2026-06-19 12:58:09
[2026-06-19 12:58:10,204.204 INFO    ] 2026-06-19 12:58:10
[2026-06-19 12:58:10,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:58:10,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:58:10,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:58:10,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:58:10,582.582 INFO    ] time= 19/06/2026 12:58:10
[2026-06-19 12:58:10,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:58:10,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:58:10,751.751 INFO    ] No existing commands found in stream
[2026-06-19 12:58:15,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:58:15,790.790 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 12:58:17,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 12:58:17,384.384 INFO    ] Checking for system updates...
[2026-06-19 12:58:17,420.420 INFO    ] 200
[2026-06-19 12:58:17,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:17,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:58:17,477.477 INFO    ] No update needed
[2026-06-19 12:58:17,479.479 INFO    ] Checking for camera pi updates...
[2026-06-19 12:58:17,513.513 INFO    ] 200
[2026-06-19 12:58:17,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:17,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:58:17,604.604 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:58:17,607.607 INFO    ] No camera update needed
[2026-06-19 12:58:17,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:58:17,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:58:17,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:58:17,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:58:19,662.662 INFO    ] ================================================
[2026-06-19 12:58:19,677.677 INFO    ] Launching Daemon at Fri Jun 19 12:58:19 IST 2026
[2026-06-19 12:58:19,688.688 INFO    ] ================================================
[2026-06-19 12:58:20,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:58:20
[2026-06-19 12:58:20,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:58:21,241.241 INFO    ] Initializing speech engine...
[2026-06-19 12:58:21,253.253 INFO    ] 2026-06-19 12:58:21
[2026-06-19 12:58:21,526.526 INFO    ] 2026-06-19 12:58:21
[2026-06-19 12:58:21,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:58:21,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:58:21,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:58:21,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:58:22,017.017 INFO    ] time= 19/06/2026 12:58:21
[2026-06-19 12:58:22,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:58:22,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:58:22,203.203 INFO    ] No existing commands found in stream
[2026-06-19 12:58:27,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:58:27,234.234 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 12:58:29,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 12:58:29,457.457 INFO    ] Checking for system updates...
[2026-06-19 12:58:29,494.494 INFO    ] 200
[2026-06-19 12:58:29,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:29,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:58:29,553.553 INFO    ] No update needed
[2026-06-19 12:58:29,555.555 INFO    ] Checking for camera pi updates...
[2026-06-19 12:58:29,590.590 INFO    ] 200
[2026-06-19 12:58:29,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:29,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:58:29,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:58:29,684.684 INFO    ] No camera update needed
[2026-06-19 12:58:29,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:58:29,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:58:29,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:58:29,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:58:31,741.741 INFO    ] ================================================
[2026-06-19 12:58:31,759.759 INFO    ] Launching Daemon at Fri Jun 19 12:58:31 IST 2026
[2026-06-19 12:58:31,773.773 INFO    ] ================================================
[2026-06-19 12:58:32,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:58:32
[2026-06-19 12:58:32,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:58:33,257.257 INFO    ] Initializing speech engine...
[2026-06-19 12:58:33,282.282 INFO    ] 2026-06-19 12:58:33
[2026-06-19 12:58:33,557.557 INFO    ] 2026-06-19 12:58:33
[2026-06-19 12:58:33,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:58:33,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:58:33,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:58:33,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:58:33,963.963 INFO    ] time= 19/06/2026 12:58:33
[2026-06-19 12:58:33,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:58:33,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:58:34,049.049 INFO    ] No existing commands found in stream
[2026-06-19 12:58:39,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:58:39,082.082 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 12:58:41,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:58:41,542.542 INFO    ] Checking for system updates...
[2026-06-19 12:58:41,579.579 INFO    ] 200
[2026-06-19 12:58:41,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:41,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:58:41,643.643 INFO    ] No update needed
[2026-06-19 12:58:41,646.646 INFO    ] Checking for camera pi updates...
[2026-06-19 12:58:41,684.684 INFO    ] 200
[2026-06-19 12:58:41,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:41,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:58:41,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:58:41,780.780 INFO    ] No camera update needed
[2026-06-19 12:58:41,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:58:41,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:58:41,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:58:41,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:58:43,837.837 INFO    ] ================================================
[2026-06-19 12:58:43,852.852 INFO    ] Launching Daemon at Fri Jun 19 12:58:43 IST 2026
[2026-06-19 12:58:43,863.863 INFO    ] ================================================
[2026-06-19 12:58:44,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:58:44
[2026-06-19 12:58:45,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:58:45,305.305 INFO    ] Initializing speech engine...
[2026-06-19 12:58:45,321.321 INFO    ] 2026-06-19 12:58:45
[2026-06-19 12:58:45,603.603 INFO    ] 2026-06-19 12:58:45
[2026-06-19 12:58:45,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:58:45,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:58:45,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:58:45,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:58:45,975.975 INFO    ] time= 19/06/2026 12:58:45
[2026-06-19 12:58:45,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:58:46,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:58:46,097.097 INFO    ] No existing commands found in stream
[2026-06-19 12:58:51,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:58:51,111.111 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 12:58:54,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:58:54,082.082 INFO    ] Checking for system updates...
[2026-06-19 12:58:54,118.118 INFO    ] 200
[2026-06-19 12:58:54,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:54,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:58:54,176.176 INFO    ] No update needed
[2026-06-19 12:58:54,178.178 INFO    ] Checking for camera pi updates...
[2026-06-19 12:58:54,212.212 INFO    ] 200
[2026-06-19 12:58:54,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:58:54,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:58:54,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:58:54,302.302 INFO    ] No camera update needed
[2026-06-19 12:58:54,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:58:54,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:58:54,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:58:54,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:58:56,356.356 INFO    ] ================================================
[2026-06-19 12:58:56,372.372 INFO    ] Launching Daemon at Fri Jun 19 12:58:56 IST 2026
[2026-06-19 12:58:56,382.382 INFO    ] ================================================
[2026-06-19 12:58:57,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:58:57
[2026-06-19 12:58:57,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:58:57,967.967 INFO    ] Initializing speech engine...
[2026-06-19 12:58:57,975.975 INFO    ] 2026-06-19 12:58:57
[2026-06-19 12:58:58,244.244 INFO    ] 2026-06-19 12:58:58
[2026-06-19 12:58:58,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:58:58,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:58:58,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:58:58,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:58:58,655.655 INFO    ] time= 19/06/2026 12:58:58
[2026-06-19 12:58:58,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:58:58,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:58:58,827.827 INFO    ] No existing commands found in stream
[2026-06-19 12:59:03,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:59:03,847.847 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 12:59:07,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 12:59:07,687.687 INFO    ] Checking for system updates...
[2026-06-19 12:59:07,724.724 INFO    ] 200
[2026-06-19 12:59:07,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:07,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:59:07,784.784 INFO    ] No update needed
[2026-06-19 12:59:07,787.787 INFO    ] Checking for camera pi updates...
[2026-06-19 12:59:07,821.821 INFO    ] 200
[2026-06-19 12:59:07,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:07,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:59:07,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:59:07,908.908 INFO    ] No camera update needed
[2026-06-19 12:59:07,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:59:07,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:59:07,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:59:07,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:59:09,967.967 INFO    ] ================================================
[2026-06-19 12:59:09,982.982 INFO    ] Launching Daemon at Fri Jun 19 12:59:09 IST 2026
[2026-06-19 12:59:09,993.993 INFO    ] ================================================
[2026-06-19 12:59:10,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:59:10
[2026-06-19 12:59:11,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:59:11,450.450 INFO    ] Initializing speech engine...
[2026-06-19 12:59:11,476.476 INFO    ] 2026-06-19 12:59:11
[2026-06-19 12:59:11,748.748 INFO    ] 2026-06-19 12:59:11
[2026-06-19 12:59:11,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:59:11,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:59:11,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:59:12,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:59:12,166.166 INFO    ] time= 19/06/2026 12:59:12
[2026-06-19 12:59:12,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:59:12,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:59:12,290.290 INFO    ] No existing commands found in stream
[2026-06-19 12:59:17,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:59:17,329.329 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 12:59:18,795.795 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 12:59:18,798.798 INFO    ] Checking for system updates...
[2026-06-19 12:59:18,835.835 INFO    ] 200
[2026-06-19 12:59:18,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:18,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:59:18,894.894 INFO    ] No update needed
[2026-06-19 12:59:18,897.897 INFO    ] Checking for camera pi updates...
[2026-06-19 12:59:18,931.931 INFO    ] 200
[2026-06-19 12:59:18,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:18,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:59:19,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:59:19,022.022 INFO    ] No camera update needed
[2026-06-19 12:59:19,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:59:19,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:59:19,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:59:19,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:59:21,081.081 INFO    ] ================================================
[2026-06-19 12:59:21,096.096 INFO    ] Launching Daemon at Fri Jun 19 12:59:21 IST 2026
[2026-06-19 12:59:21,107.107 INFO    ] ================================================
[2026-06-19 12:59:21,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:59:21
[2026-06-19 12:59:22,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:59:22,560.560 INFO    ] Initializing speech engine...
[2026-06-19 12:59:22,568.568 INFO    ] 2026-06-19 12:59:22
[2026-06-19 12:59:22,831.831 INFO    ] 2026-06-19 12:59:22
[2026-06-19 12:59:22,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:59:23,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:59:23,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:59:23,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:59:23,291.291 INFO    ] time= 19/06/2026 12:59:23
[2026-06-19 12:59:23,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:59:23,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:59:23,507.507 INFO    ] No existing commands found in stream
[2026-06-19 12:59:28,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:59:28,528.528 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 12:59:30,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:59:30,404.404 INFO    ] Checking for system updates...
[2026-06-19 12:59:30,440.440 INFO    ] 200
[2026-06-19 12:59:30,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:30,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:59:30,498.498 INFO    ] No update needed
[2026-06-19 12:59:30,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 12:59:30,534.534 INFO    ] 200
[2026-06-19 12:59:30,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:30,586.586 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:59:30,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:59:30,730.730 INFO    ] No camera update needed
[2026-06-19 12:59:30,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:59:30,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:59:30,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:59:30,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:59:32,790.790 INFO    ] ================================================
[2026-06-19 12:59:32,807.807 INFO    ] Launching Daemon at Fri Jun 19 12:59:32 IST 2026
[2026-06-19 12:59:32,819.819 INFO    ] ================================================
[2026-06-19 12:59:33,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:59:33
[2026-06-19 12:59:34,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:59:34,286.286 INFO    ] Initializing speech engine...
[2026-06-19 12:59:34,292.292 INFO    ] 2026-06-19 12:59:34
[2026-06-19 12:59:34,590.590 INFO    ] 2026-06-19 12:59:34
[2026-06-19 12:59:34,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:59:34,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:59:34,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:59:34,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:59:34,976.976 INFO    ] time= 19/06/2026 12:59:34
[2026-06-19 12:59:34,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:59:35,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:59:35,105.105 INFO    ] No existing commands found in stream
[2026-06-19 12:59:40,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:59:40,143.143 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 12:59:43,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 12:59:43,762.762 INFO    ] Checking for system updates...
[2026-06-19 12:59:43,798.798 INFO    ] 200
[2026-06-19 12:59:43,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:43,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:59:43,856.856 INFO    ] No update needed
[2026-06-19 12:59:43,858.858 INFO    ] Checking for camera pi updates...
[2026-06-19 12:59:43,892.892 INFO    ] 200
[2026-06-19 12:59:43,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:43,934.934 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:59:43,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 12:59:43,982.982 INFO    ] No camera update needed
[2026-06-19 12:59:43,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:59:43,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:59:43,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:59:43,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:59:46,038.038 INFO    ] ================================================
[2026-06-19 12:59:46,053.053 INFO    ] Launching Daemon at Fri Jun 19 12:59:46 IST 2026
[2026-06-19 12:59:46,065.065 INFO    ] ================================================
[2026-06-19 12:59:46,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:59:46
[2026-06-19 12:59:47,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 12:59:47,501.501 INFO    ] Initializing speech engine...
[2026-06-19 12:59:47,507.507 INFO    ] 2026-06-19 12:59:47
[2026-06-19 12:59:47,806.806 INFO    ] 2026-06-19 12:59:47
[2026-06-19 12:59:47,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 12:59:48,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 12:59:48,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 12:59:48,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 12:59:48,186.186 INFO    ] time= 19/06/2026 12:59:48
[2026-06-19 12:59:48,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 12:59:48,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 12:59:48,310.310 INFO    ] No existing commands found in stream
[2026-06-19 12:59:53,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 12:59:53,326.326 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 12:59:56,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 12:59:56,637.637 INFO    ] Checking for system updates...
[2026-06-19 12:59:56,673.673 INFO    ] 200
[2026-06-19 12:59:56,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:56,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:59:56,731.731 INFO    ] No update needed
[2026-06-19 12:59:56,733.733 INFO    ] Checking for camera pi updates...
[2026-06-19 12:59:56,767.767 INFO    ] 200
[2026-06-19 12:59:56,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 12:59:56,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 12:59:56,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 12:59:56,856.856 INFO    ] No camera update needed
[2026-06-19 12:59:56,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-19 12:59:56,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 12:59:56,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 12:59:56,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 12:59:58,912.912 INFO    ] ================================================
[2026-06-19 12:59:58,927.927 INFO    ] Launching Daemon at Fri Jun 19 12:59:58 IST 2026
[2026-06-19 12:59:58,938.938 INFO    ] ================================================
[2026-06-19 12:59:59,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 12:59:59
[2026-06-19 13:00:00,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:00:00,577.577 INFO    ] Initializing speech engine...
[2026-06-19 13:00:00,590.590 INFO    ] 2026-06-19 13:00:00
[2026-06-19 13:00:00,906.906 INFO    ] 2026-06-19 13:00:00
[2026-06-19 13:00:00,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:00:01,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:00:01,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:00:01,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:00:01,425.425 INFO    ] time= 19/06/2026 13:00:01
[2026-06-19 13:00:01,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:00:01,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:00:01,562.562 INFO    ] No existing commands found in stream
[2026-06-19 13:00:06,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:00:06,671.671 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-19 13:00:09,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:00:09,979.979 INFO    ] Checking for system updates...
[2026-06-19 13:00:10,031.031 INFO    ] 200
[2026-06-19 13:00:10,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:00:10,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:00:10,114.114 INFO    ] No update needed
[2026-06-19 13:00:10,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 13:00:10,153.153 INFO    ] 200
[2026-06-19 13:00:10,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:00:10,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:00:10,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:00:10,247.247 INFO    ] No camera update needed
[2026-06-19 13:00:10,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:00:10,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:00:10,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:00:10,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:00:12,307.307 INFO    ] ================================================
[2026-06-19 13:00:12,322.322 INFO    ] Launching Daemon at Fri Jun 19 13:00:12 IST 2026
[2026-06-19 13:00:12,333.333 INFO    ] ================================================
[2026-06-19 13:00:12,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:00:12
[2026-06-19 13:00:13,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:00:13,882.882 INFO    ] Initializing speech engine...
[2026-06-19 13:00:13,896.896 INFO    ] 2026-06-19 13:00:13
[2026-06-19 13:00:14,181.181 INFO    ] 2026-06-19 13:00:14
[2026-06-19 13:00:14,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:00:14,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:00:14,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:00:14,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:00:14,735.735 INFO    ] time= 19/06/2026 13:00:14
[2026-06-19 13:00:14,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:00:14,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:00:14,934.934 INFO    ] No existing commands found in stream
[2026-06-19 13:00:19,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:00:19,963.963 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 13:00:22,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:00:22,437.437 INFO    ] Checking for system updates...
[2026-06-19 13:00:22,474.474 INFO    ] 200
[2026-06-19 13:00:22,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:00:22,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:00:22,533.533 INFO    ] No update needed
[2026-06-19 13:00:22,536.536 INFO    ] Checking for camera pi updates...
[2026-06-19 13:00:22,571.571 INFO    ] 200
[2026-06-19 13:00:22,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:00:22,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:00:22,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:00:22,668.668 INFO    ] No camera update needed
[2026-06-19 13:00:22,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:00:22,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:00:22,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:00:22,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:00:24,727.727 INFO    ] ================================================
[2026-06-19 13:00:24,742.742 INFO    ] Launching Daemon at Fri Jun 19 13:00:24 IST 2026
[2026-06-19 13:00:24,753.753 INFO    ] ================================================
[2026-06-19 13:00:25,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:00:25
[2026-06-19 13:00:25,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:00:26,230.230 INFO    ] Initializing speech engine...
[2026-06-19 13:00:26,238.238 INFO    ] 2026-06-19 13:00:26
[2026-06-19 13:00:26,499.499 INFO    ] 2026-06-19 13:00:26
[2026-06-19 13:00:26,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:00:26,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:00:26,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:00:26,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:00:26,942.942 INFO    ] time= 19/06/2026 13:00:26
[2026-06-19 13:00:27,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:00:27,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:00:27,184.184 INFO    ] No existing commands found in stream
[2026-06-19 13:00:32,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:00:32,215.215 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 13:00:35,440.440 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:00:35,443.443 INFO    ] Checking for system updates...
[2026-06-19 13:00:35,488.488 INFO    ] 200
[2026-06-19 13:00:35,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:00:35,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:00:35,552.552 INFO    ] No update needed
[2026-06-19 13:00:35,555.555 INFO    ] Checking for camera pi updates...
[2026-06-19 13:00:35,593.593 INFO    ] 200
[2026-06-19 13:00:35,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:00:35,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:00:35,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:00:35,687.687 INFO    ] No camera update needed
[2026-06-19 13:00:35,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:00:35,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:00:35,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:00:35,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:00:37,744.744 INFO    ] ================================================
[2026-06-19 13:00:37,760.760 INFO    ] Launching Daemon at Fri Jun 19 13:00:37 IST 2026
[2026-06-19 13:00:37,770.770 INFO    ] ================================================
[2026-06-19 13:00:38,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:00:38
[2026-06-19 13:00:38,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:00:39,266.266 INFO    ] Initializing speech engine...
[2026-06-19 13:00:39,276.276 INFO    ] 2026-06-19 13:00:39
[2026-06-19 13:00:39,524.524 INFO    ] 2026-06-19 13:00:39
[2026-06-19 13:00:39,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:00:39,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:00:39,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:00:39,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:00:40,032.032 INFO    ] time= 19/06/2026 13:00:39
[2026-06-19 13:00:40,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:00:40,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:00:40,254.254 INFO    ] No existing commands found in stream
[2026-06-19 13:00:45,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:00:45,270.270 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 13:00:47,515.515 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:00:47,518.518 INFO    ] Checking for system updates...
[2026-06-19 13:00:47,555.555 INFO    ] 200
[2026-06-19 13:00:47,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:00:47,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:00:47,612.612 INFO    ] No update needed
[2026-06-19 13:00:47,615.615 INFO    ] Checking for camera pi updates...
[2026-06-19 13:00:47,648.648 INFO    ] 200
[2026-06-19 13:00:47,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:00:47,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:00:47,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:00:47,732.732 INFO    ] No camera update needed
[2026-06-19 13:00:47,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:00:47,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:00:47,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:00:47,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:00:49,787.787 INFO    ] ================================================
[2026-06-19 13:00:49,803.803 INFO    ] Launching Daemon at Fri Jun 19 13:00:49 IST 2026
[2026-06-19 13:00:49,814.814 INFO    ] ================================================
[2026-06-19 13:00:50,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:00:50
[2026-06-19 13:00:51,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:00:51,404.404 INFO    ] Initializing speech engine...
[2026-06-19 13:00:51,413.413 INFO    ] 2026-06-19 13:00:51
[2026-06-19 13:00:51,662.662 INFO    ] 2026-06-19 13:00:51
[2026-06-19 13:00:51,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:00:51,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:00:51,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:00:52,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:00:52,040.040 INFO    ] time= 19/06/2026 13:00:52
[2026-06-19 13:00:52,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:00:52,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:00:52,218.218 INFO    ] No existing commands found in stream
[2026-06-19 13:00:57,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:00:57,251.251 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 13:01:00,251.251 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:01:00,254.254 INFO    ] Checking for system updates...
[2026-06-19 13:01:00,290.290 INFO    ] 200
[2026-06-19 13:01:00,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:00,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:00,348.348 INFO    ] No update needed
[2026-06-19 13:01:00,350.350 INFO    ] Checking for camera pi updates...
[2026-06-19 13:01:00,388.388 INFO    ] 200
[2026-06-19 13:01:00,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:00,431.431 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:01:00,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:00,474.474 INFO    ] No camera update needed
[2026-06-19 13:01:00,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:01:00,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:01:00,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:01:00,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:01:02,533.533 INFO    ] ================================================
[2026-06-19 13:01:02,557.557 INFO    ] Launching Daemon at Fri Jun 19 13:01:02 IST 2026
[2026-06-19 13:01:02,577.577 INFO    ] ================================================
[2026-06-19 13:01:03,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:01:03
[2026-06-19 13:01:03,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:01:04,126.126 INFO    ] Initializing speech engine...
[2026-06-19 13:01:04,135.135 INFO    ] 2026-06-19 13:01:04
[2026-06-19 13:01:04,403.403 INFO    ] 2026-06-19 13:01:04
[2026-06-19 13:01:04,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:01:04,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:01:04,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:01:04,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:01:04,853.853 INFO    ] time= 19/06/2026 13:01:04
[2026-06-19 13:01:04,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:01:04,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:01:04,962.962 INFO    ] No existing commands found in stream
[2026-06-19 13:01:09,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:01:09,996.996 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 13:01:11,042.042 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:01:11,045.045 INFO    ] Checking for system updates...
[2026-06-19 13:01:11,084.084 INFO    ] 200
[2026-06-19 13:01:11,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:11,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:11,158.158 INFO    ] No update needed
[2026-06-19 13:01:11,161.161 INFO    ] Checking for camera pi updates...
[2026-06-19 13:01:11,198.198 INFO    ] 200
[2026-06-19 13:01:11,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:11,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:01:11,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:11,295.295 INFO    ] No camera update needed
[2026-06-19 13:01:11,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:01:11,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:01:11,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:01:11,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:01:13,350.350 INFO    ] ================================================
[2026-06-19 13:01:13,366.366 INFO    ] Launching Daemon at Fri Jun 19 13:01:13 IST 2026
[2026-06-19 13:01:13,379.379 INFO    ] ================================================
[2026-06-19 13:01:14,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:01:14
[2026-06-19 13:01:14,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:01:14,964.964 INFO    ] Initializing speech engine...
[2026-06-19 13:01:14,992.992 INFO    ] 2026-06-19 13:01:14
[2026-06-19 13:01:15,238.238 INFO    ] 2026-06-19 13:01:15
[2026-06-19 13:01:15,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:01:15,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:01:15,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:01:15,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:01:15,754.754 INFO    ] time= 19/06/2026 13:01:15
[2026-06-19 13:01:15,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:01:15,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:01:15,947.947 INFO    ] No existing commands found in stream
[2026-06-19 13:01:20,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:01:20,967.967 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 13:01:22,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:01:22,668.668 INFO    ] Checking for system updates...
[2026-06-19 13:01:22,704.704 INFO    ] 200
[2026-06-19 13:01:22,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:22,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:22,762.762 INFO    ] No update needed
[2026-06-19 13:01:22,765.765 INFO    ] Checking for camera pi updates...
[2026-06-19 13:01:22,803.803 INFO    ] 200
[2026-06-19 13:01:22,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:22,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:01:22,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:22,897.897 INFO    ] No camera update needed
[2026-06-19 13:01:22,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:01:22,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:01:22,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:01:22,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:01:24,954.954 INFO    ] ================================================
[2026-06-19 13:01:24,970.970 INFO    ] Launching Daemon at Fri Jun 19 13:01:24 IST 2026
[2026-06-19 13:01:24,981.981 INFO    ] ================================================
[2026-06-19 13:01:25,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:01:25
[2026-06-19 13:01:26,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:01:26,599.599 INFO    ] Initializing speech engine...
[2026-06-19 13:01:26,614.614 INFO    ] 2026-06-19 13:01:26
[2026-06-19 13:01:26,881.881 INFO    ] 2026-06-19 13:01:26
[2026-06-19 13:01:26,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:01:27,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:01:27,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:01:27,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:01:27,358.358 INFO    ] time= 19/06/2026 13:01:27
[2026-06-19 13:01:27,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:01:27,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:01:27,572.572 INFO    ] No existing commands found in stream
[2026-06-19 13:01:32,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:01:32,591.591 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 13:01:33,652.652 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:01:33,655.655 INFO    ] Checking for system updates...
[2026-06-19 13:01:33,695.695 INFO    ] 200
[2026-06-19 13:01:33,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:33,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:33,760.760 INFO    ] No update needed
[2026-06-19 13:01:33,762.762 INFO    ] Checking for camera pi updates...
[2026-06-19 13:01:33,796.796 INFO    ] 200
[2026-06-19 13:01:33,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:33,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:01:33,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:33,990.990 INFO    ] No camera update needed
[2026-06-19 13:01:33,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:01:33,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:01:34,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:01:34,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:01:36,049.049 INFO    ] ================================================
[2026-06-19 13:01:36,065.065 INFO    ] Launching Daemon at Fri Jun 19 13:01:36 IST 2026
[2026-06-19 13:01:36,077.077 INFO    ] ================================================
[2026-06-19 13:01:36,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:01:36
[2026-06-19 13:01:37,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:01:37,525.525 INFO    ] Initializing speech engine...
[2026-06-19 13:01:37,534.534 INFO    ] 2026-06-19 13:01:37
[2026-06-19 13:01:37,784.784 INFO    ] 2026-06-19 13:01:37
[2026-06-19 13:01:37,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:01:38,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:01:38,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:01:38,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:01:38,245.245 INFO    ] time= 19/06/2026 13:01:38
[2026-06-19 13:01:38,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:01:38,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:01:38,509.509 INFO    ] No existing commands found in stream
[2026-06-19 13:01:43,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:01:43,527.527 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 13:01:47,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:01:47,851.851 INFO    ] Checking for system updates...
[2026-06-19 13:01:47,889.889 INFO    ] 200
[2026-06-19 13:01:47,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:47,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:47,948.948 INFO    ] No update needed
[2026-06-19 13:01:47,951.951 INFO    ] Checking for camera pi updates...
[2026-06-19 13:01:47,990.990 INFO    ] 200
[2026-06-19 13:01:47,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:01:48,037.037 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:01:48,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:01:48,074.074 INFO    ] No camera update needed
[2026-06-19 13:01:48,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:01:48,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:01:48,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:01:48,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:01:50,135.135 INFO    ] ================================================
[2026-06-19 13:01:50,150.150 INFO    ] Launching Daemon at Fri Jun 19 13:01:50 IST 2026
[2026-06-19 13:01:50,161.161 INFO    ] ================================================
[2026-06-19 13:01:50,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:01:50
[2026-06-19 13:01:51,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:01:51,682.682 INFO    ] Initializing speech engine...
[2026-06-19 13:01:51,691.691 INFO    ] 2026-06-19 13:01:51
[2026-06-19 13:01:51,942.942 INFO    ] 2026-06-19 13:01:51
[2026-06-19 13:01:51,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:01:52,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:01:52,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:01:52,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:01:52,451.451 INFO    ] time= 19/06/2026 13:01:52
[2026-06-19 13:01:52,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:01:52,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:01:52,672.672 INFO    ] No existing commands found in stream
[2026-06-19 13:01:57,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:01:57,694.694 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 13:02:00,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:02:00,858.858 INFO    ] Checking for system updates...
[2026-06-19 13:02:00,903.903 INFO    ] 200
[2026-06-19 13:02:00,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:00,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:02:00,969.969 INFO    ] No update needed
[2026-06-19 13:02:00,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 13:02:01,009.009 INFO    ] 200
[2026-06-19 13:02:01,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:01,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:02:01,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:02:01,094.094 INFO    ] No camera update needed
[2026-06-19 13:02:01,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:02:01,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:02:01,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:02:01,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:02:03,159.159 INFO    ] ================================================
[2026-06-19 13:02:03,175.175 INFO    ] Launching Daemon at Fri Jun 19 13:02:03 IST 2026
[2026-06-19 13:02:03,190.190 INFO    ] ================================================
[2026-06-19 13:02:03,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:02:03
[2026-06-19 13:02:04,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:02:04,712.712 INFO    ] Initializing speech engine...
[2026-06-19 13:02:04,721.721 INFO    ] 2026-06-19 13:02:04
[2026-06-19 13:02:05,019.019 INFO    ] 2026-06-19 13:02:04
[2026-06-19 13:02:05,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:02:05,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:02:05,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:02:05,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:02:05,446.446 INFO    ] time= 19/06/2026 13:02:05
[2026-06-19 13:02:05,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:02:05,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:02:05,613.613 INFO    ] No existing commands found in stream
[2026-06-19 13:02:10,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:02:10,641.641 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 13:02:13,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:02:13,111.111 INFO    ] Checking for system updates...
[2026-06-19 13:02:13,148.148 INFO    ] 200
[2026-06-19 13:02:13,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:13,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:02:13,206.206 INFO    ] No update needed
[2026-06-19 13:02:13,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 13:02:13,242.242 INFO    ] 200
[2026-06-19 13:02:13,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:13,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:02:13,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:02:13,334.334 INFO    ] No camera update needed
[2026-06-19 13:02:13,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:02:13,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:02:13,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:02:13,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:02:15,389.389 INFO    ] ================================================
[2026-06-19 13:02:15,404.404 INFO    ] Launching Daemon at Fri Jun 19 13:02:15 IST 2026
[2026-06-19 13:02:15,415.415 INFO    ] ================================================
[2026-06-19 13:02:15,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:02:15
[2026-06-19 13:02:16,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:02:16,850.850 INFO    ] Initializing speech engine...
[2026-06-19 13:02:16,865.865 INFO    ] 2026-06-19 13:02:16
[2026-06-19 13:02:17,152.152 INFO    ] 2026-06-19 13:02:17
[2026-06-19 13:02:17,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:02:17,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:02:17,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:02:17,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:02:17,552.552 INFO    ] time= 19/06/2026 13:02:17
[2026-06-19 13:02:17,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:02:17,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:02:17,661.661 INFO    ] No existing commands found in stream
[2026-06-19 13:02:22,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:02:22,677.677 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 13:02:24,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:02:24,575.575 INFO    ] Checking for system updates...
[2026-06-19 13:02:24,611.611 INFO    ] 200
[2026-06-19 13:02:24,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:24,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:02:24,668.668 INFO    ] No update needed
[2026-06-19 13:02:24,671.671 INFO    ] Checking for camera pi updates...
[2026-06-19 13:02:24,705.705 INFO    ] 200
[2026-06-19 13:02:24,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:24,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:02:24,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:02:24,807.807 INFO    ] No camera update needed
[2026-06-19 13:02:24,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:02:24,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:02:24,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:02:24,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:02:26,864.864 INFO    ] ================================================
[2026-06-19 13:02:26,880.880 INFO    ] Launching Daemon at Fri Jun 19 13:02:26 IST 2026
[2026-06-19 13:02:26,890.890 INFO    ] ================================================
[2026-06-19 13:02:27,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:02:27
[2026-06-19 13:02:28,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:02:28,529.529 INFO    ] Initializing speech engine...
[2026-06-19 13:02:28,538.538 INFO    ] 2026-06-19 13:02:28
[2026-06-19 13:02:28,829.829 INFO    ] 2026-06-19 13:02:28
[2026-06-19 13:02:28,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:02:29,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:02:29,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:02:29,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:02:29,299.299 INFO    ] time= 19/06/2026 13:02:29
[2026-06-19 13:02:29,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:02:29,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:02:29,535.535 INFO    ] No existing commands found in stream
[2026-06-19 13:02:34,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:02:34,562.562 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 13:02:37,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:02:37,583.583 INFO    ] Checking for system updates...
[2026-06-19 13:02:37,621.621 INFO    ] 200
[2026-06-19 13:02:37,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:37,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:02:37,689.689 INFO    ] No update needed
[2026-06-19 13:02:37,692.692 INFO    ] Checking for camera pi updates...
[2026-06-19 13:02:37,727.727 INFO    ] 200
[2026-06-19 13:02:37,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:37,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:02:37,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:02:37,817.817 INFO    ] No camera update needed
[2026-06-19 13:02:37,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:02:37,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:02:37,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:02:37,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:02:39,878.878 INFO    ] ================================================
[2026-06-19 13:02:39,893.893 INFO    ] Launching Daemon at Fri Jun 19 13:02:39 IST 2026
[2026-06-19 13:02:39,903.903 INFO    ] ================================================
[2026-06-19 13:02:40,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:02:40
[2026-06-19 13:02:41,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:02:41,317.317 INFO    ] Initializing speech engine...
[2026-06-19 13:02:41,330.330 INFO    ] 2026-06-19 13:02:41
[2026-06-19 13:02:41,599.599 INFO    ] 2026-06-19 13:02:41
[2026-06-19 13:02:41,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:02:41,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:02:41,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:02:42,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:02:42,067.067 INFO    ] time= 19/06/2026 13:02:42
[2026-06-19 13:02:42,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:02:42,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:02:42,237.237 INFO    ] No existing commands found in stream
[2026-06-19 13:02:47,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:02:47,251.251 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 13:02:48,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:02:48,144.144 INFO    ] Checking for system updates...
[2026-06-19 13:02:48,181.181 INFO    ] 200
[2026-06-19 13:02:48,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:48,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:02:48,240.240 INFO    ] No update needed
[2026-06-19 13:02:48,243.243 INFO    ] Checking for camera pi updates...
[2026-06-19 13:02:48,278.278 INFO    ] 200
[2026-06-19 13:02:48,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:02:48,322.322 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:02:48,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:02:48,364.364 INFO    ] No camera update needed
[2026-06-19 13:02:48,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:02:48,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:02:48,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:02:48,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:02:50,424.424 INFO    ] ================================================
[2026-06-19 13:02:50,439.439 INFO    ] Launching Daemon at Fri Jun 19 13:02:50 IST 2026
[2026-06-19 13:02:50,449.449 INFO    ] ================================================
[2026-06-19 13:02:51,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:02:51
[2026-06-19 13:02:51,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:02:51,861.861 INFO    ] Initializing speech engine...
[2026-06-19 13:02:51,869.869 INFO    ] 2026-06-19 13:02:51
[2026-06-19 13:02:52,165.165 INFO    ] 2026-06-19 13:02:52
[2026-06-19 13:02:52,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:02:52,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:02:52,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:02:52,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:02:52,587.587 INFO    ] time= 19/06/2026 13:02:52
[2026-06-19 13:02:52,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:02:52,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:02:52,680.680 INFO    ] No existing commands found in stream
[2026-06-19 13:02:57,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:02:57,703.703 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 13:03:00,082.082 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:03:00,085.085 INFO    ] Checking for system updates...
[2026-06-19 13:03:00,122.122 INFO    ] 200
[2026-06-19 13:03:00,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:00,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:03:00,183.183 INFO    ] No update needed
[2026-06-19 13:03:00,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 13:03:00,221.221 INFO    ] 200
[2026-06-19 13:03:00,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:00,264.264 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:03:00,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:03:00,308.308 INFO    ] No camera update needed
[2026-06-19 13:03:00,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:03:00,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:03:00,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:03:00,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:03:02,381.381 INFO    ] ================================================
[2026-06-19 13:03:02,412.412 INFO    ] Launching Daemon at Fri Jun 19 13:03:02 IST 2026
[2026-06-19 13:03:02,434.434 INFO    ] ================================================
[2026-06-19 13:03:03,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:03:03
[2026-06-19 13:03:03,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:03:04,039.039 INFO    ] Initializing speech engine...
[2026-06-19 13:03:04,047.047 INFO    ] 2026-06-19 13:03:04
[2026-06-19 13:03:04,347.347 INFO    ] 2026-06-19 13:03:04
[2026-06-19 13:03:04,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:03:04,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:03:04,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:03:04,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:03:04,769.769 INFO    ] time= 19/06/2026 13:03:04
[2026-06-19 13:03:04,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:03:04,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:03:04,948.948 INFO    ] No existing commands found in stream
[2026-06-19 13:03:09,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:03:09,977.977 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 13:03:10,641.641 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:03:10,644.644 INFO    ] Checking for system updates...
[2026-06-19 13:03:10,680.680 INFO    ] 200
[2026-06-19 13:03:10,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:10,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:03:10,744.744 INFO    ] No update needed
[2026-06-19 13:03:10,746.746 INFO    ] Checking for camera pi updates...
[2026-06-19 13:03:10,780.780 INFO    ] 200
[2026-06-19 13:03:10,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:10,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:03:10,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:03:10,867.867 INFO    ] No camera update needed
[2026-06-19 13:03:10,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:03:10,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:03:10,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:03:10,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:03:12,925.925 INFO    ] ================================================
[2026-06-19 13:03:12,940.940 INFO    ] Launching Daemon at Fri Jun 19 13:03:12 IST 2026
[2026-06-19 13:03:12,951.951 INFO    ] ================================================
[2026-06-19 13:03:13,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:03:13
[2026-06-19 13:03:14,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:03:14,357.357 INFO    ] Initializing speech engine...
[2026-06-19 13:03:14,371.371 INFO    ] 2026-06-19 13:03:14
[2026-06-19 13:03:14,638.638 INFO    ] 2026-06-19 13:03:14
[2026-06-19 13:03:14,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:03:14,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:03:14,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:03:15,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:03:15,013.013 INFO    ] time= 19/06/2026 13:03:15
[2026-06-19 13:03:15,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:03:15,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:03:15,092.092 INFO    ] No existing commands found in stream
[2026-06-19 13:03:20,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:03:20,110.110 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 13:03:23,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:03:23,634.634 INFO    ] Checking for system updates...
[2026-06-19 13:03:23,670.670 INFO    ] 200
[2026-06-19 13:03:23,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:23,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:03:23,731.731 INFO    ] No update needed
[2026-06-19 13:03:23,733.733 INFO    ] Checking for camera pi updates...
[2026-06-19 13:03:23,768.768 INFO    ] 200
[2026-06-19 13:03:23,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:23,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:03:23,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:03:23,860.860 INFO    ] No camera update needed
[2026-06-19 13:03:23,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:03:23,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:03:23,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:03:23,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:03:25,920.920 INFO    ] ================================================
[2026-06-19 13:03:25,936.936 INFO    ] Launching Daemon at Fri Jun 19 13:03:25 IST 2026
[2026-06-19 13:03:25,947.947 INFO    ] ================================================
[2026-06-19 13:03:26,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:03:26
[2026-06-19 13:03:27,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:03:27,432.432 INFO    ] Initializing speech engine...
[2026-06-19 13:03:27,441.441 INFO    ] 2026-06-19 13:03:27
[2026-06-19 13:03:27,706.706 INFO    ] 2026-06-19 13:03:27
[2026-06-19 13:03:27,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:03:27,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:03:28,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:03:28,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:03:28,202.202 INFO    ] time= 19/06/2026 13:03:28
[2026-06-19 13:03:28,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:03:28,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:03:28,424.424 INFO    ] No existing commands found in stream
[2026-06-19 13:03:33,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:03:33,440.440 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 13:03:34,023.023 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:03:34,025.025 INFO    ] Checking for system updates...
[2026-06-19 13:03:34,065.065 INFO    ] 200
[2026-06-19 13:03:34,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:34,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:03:34,130.130 INFO    ] No update needed
[2026-06-19 13:03:34,132.132 INFO    ] Checking for camera pi updates...
[2026-06-19 13:03:34,166.166 INFO    ] 200
[2026-06-19 13:03:34,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:34,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:03:34,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:03:34,253.253 INFO    ] No camera update needed
[2026-06-19 13:03:34,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:03:34,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:03:34,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:03:34,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:03:36,310.310 INFO    ] ================================================
[2026-06-19 13:03:36,333.333 INFO    ] Launching Daemon at Fri Jun 19 13:03:36 IST 2026
[2026-06-19 13:03:36,348.348 INFO    ] ================================================
[2026-06-19 13:03:36,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:03:36
[2026-06-19 13:03:37,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:03:37,772.772 INFO    ] Initializing speech engine...
[2026-06-19 13:03:37,781.781 INFO    ] 2026-06-19 13:03:37
[2026-06-19 13:03:38,032.032 INFO    ] 2026-06-19 13:03:38
[2026-06-19 13:03:38,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:03:38,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:03:38,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:03:38,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:03:38,543.543 INFO    ] time= 19/06/2026 13:03:38
[2026-06-19 13:03:38,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:03:38,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:03:38,743.743 INFO    ] No existing commands found in stream
[2026-06-19 13:03:43,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:03:43,771.771 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 13:03:47,649.649 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:03:47,652.652 INFO    ] Checking for system updates...
[2026-06-19 13:03:47,691.691 INFO    ] 200
[2026-06-19 13:03:47,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:47,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:03:47,751.751 INFO    ] No update needed
[2026-06-19 13:03:47,753.753 INFO    ] Checking for camera pi updates...
[2026-06-19 13:03:47,787.787 INFO    ] 200
[2026-06-19 13:03:47,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:03:47,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:03:47,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:03:47,963.963 INFO    ] No camera update needed
[2026-06-19 13:03:47,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:03:47,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:03:47,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:03:47,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:03:50,021.021 INFO    ] ================================================
[2026-06-19 13:03:50,036.036 INFO    ] Launching Daemon at Fri Jun 19 13:03:50 IST 2026
[2026-06-19 13:03:50,047.047 INFO    ] ================================================
[2026-06-19 13:03:50,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:03:50
[2026-06-19 13:03:51,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:03:51,511.511 INFO    ] Initializing speech engine...
[2026-06-19 13:03:51,520.520 INFO    ] 2026-06-19 13:03:51
[2026-06-19 13:03:51,782.782 INFO    ] 2026-06-19 13:03:51
[2026-06-19 13:03:51,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:03:52,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:03:52,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:03:52,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:03:52,330.330 INFO    ] time= 19/06/2026 13:03:52
[2026-06-19 13:03:52,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:03:52,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:03:52,484.484 INFO    ] No existing commands found in stream
[2026-06-19 13:03:57,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:03:57,508.508 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 13:04:01,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:04:01,833.833 INFO    ] Checking for system updates...
[2026-06-19 13:04:01,872.872 INFO    ] 200
[2026-06-19 13:04:01,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:01,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:04:01,939.939 INFO    ] No update needed
[2026-06-19 13:04:01,942.942 INFO    ] Checking for camera pi updates...
[2026-06-19 13:04:01,993.993 INFO    ] 200
[2026-06-19 13:04:02,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:02,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:04:02,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:04:02,150.150 INFO    ] No camera update needed
[2026-06-19 13:04:02,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:04:02,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:04:02,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:04:02,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:04:04,237.237 INFO    ] ================================================
[2026-06-19 13:04:04,252.252 INFO    ] Launching Daemon at Fri Jun 19 13:04:04 IST 2026
[2026-06-19 13:04:04,263.263 INFO    ] ================================================
[2026-06-19 13:04:04,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:04:04
[2026-06-19 13:04:05,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:04:05,686.686 INFO    ] Initializing speech engine...
[2026-06-19 13:04:05,692.692 INFO    ] 2026-06-19 13:04:05
[2026-06-19 13:04:05,950.950 INFO    ] 2026-06-19 13:04:05
[2026-06-19 13:04:05,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:04:06,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:04:06,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:04:06,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:04:06,651.651 INFO    ] time= 19/06/2026 13:04:06
[2026-06-19 13:04:06,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:04:06,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:04:06,865.865 INFO    ] No existing commands found in stream
[2026-06-19 13:04:11,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:04:11,898.898 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 13:04:15,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:04:15,388.388 INFO    ] Checking for system updates...
[2026-06-19 13:04:15,434.434 INFO    ] 200
[2026-06-19 13:04:15,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:15,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:04:15,492.492 INFO    ] No update needed
[2026-06-19 13:04:15,494.494 INFO    ] Checking for camera pi updates...
[2026-06-19 13:04:15,527.527 INFO    ] 200
[2026-06-19 13:04:15,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:15,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:04:15,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:04:15,612.612 INFO    ] No camera update needed
[2026-06-19 13:04:15,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:04:15,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:04:15,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:04:15,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:04:17,667.667 INFO    ] ================================================
[2026-06-19 13:04:17,682.682 INFO    ] Launching Daemon at Fri Jun 19 13:04:17 IST 2026
[2026-06-19 13:04:17,694.694 INFO    ] ================================================
[2026-06-19 13:04:18,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:04:18
[2026-06-19 13:04:18,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:04:19,138.138 INFO    ] Initializing speech engine...
[2026-06-19 13:04:19,158.158 INFO    ] 2026-06-19 13:04:19
[2026-06-19 13:04:19,418.418 INFO    ] 2026-06-19 13:04:19
[2026-06-19 13:04:19,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:04:19,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:04:19,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:04:19,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:04:19,902.902 INFO    ] time= 19/06/2026 13:04:19
[2026-06-19 13:04:19,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:04:19,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:04:20,138.138 INFO    ] No existing commands found in stream
[2026-06-19 13:04:25,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:04:25,161.161 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 13:04:25,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:04:25,917.917 INFO    ] Checking for system updates...
[2026-06-19 13:04:25,953.953 INFO    ] 200
[2026-06-19 13:04:25,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:26,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:04:26,012.012 INFO    ] No update needed
[2026-06-19 13:04:26,014.014 INFO    ] Checking for camera pi updates...
[2026-06-19 13:04:26,049.049 INFO    ] 200
[2026-06-19 13:04:26,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:26,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:04:26,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:04:26,141.141 INFO    ] No camera update needed
[2026-06-19 13:04:26,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:04:26,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:04:26,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:04:26,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:04:28,198.198 INFO    ] ================================================
[2026-06-19 13:04:28,214.214 INFO    ] Launching Daemon at Fri Jun 19 13:04:28 IST 2026
[2026-06-19 13:04:28,225.225 INFO    ] ================================================
[2026-06-19 13:04:28,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:04:28
[2026-06-19 13:04:29,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:04:29,679.679 INFO    ] Initializing speech engine...
[2026-06-19 13:04:29,690.690 INFO    ] 2026-06-19 13:04:29
[2026-06-19 13:04:29,938.938 INFO    ] 2026-06-19 13:04:29
[2026-06-19 13:04:29,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:04:30,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:04:30,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:04:30,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:04:30,409.409 INFO    ] time= 19/06/2026 13:04:30
[2026-06-19 13:04:30,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:04:30,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:04:30,625.625 INFO    ] No existing commands found in stream
[2026-06-19 13:04:35,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:04:35,658.658 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 13:04:40,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:04:40,395.395 INFO    ] Checking for system updates...
[2026-06-19 13:04:40,431.431 INFO    ] 200
[2026-06-19 13:04:40,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:40,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:04:40,494.494 INFO    ] No update needed
[2026-06-19 13:04:40,497.497 INFO    ] Checking for camera pi updates...
[2026-06-19 13:04:40,534.534 INFO    ] 200
[2026-06-19 13:04:40,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:40,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:04:40,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:04:40,626.626 INFO    ] No camera update needed
[2026-06-19 13:04:40,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:04:40,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:04:40,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:04:40,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:04:42,683.683 INFO    ] ================================================
[2026-06-19 13:04:42,699.699 INFO    ] Launching Daemon at Fri Jun 19 13:04:42 IST 2026
[2026-06-19 13:04:42,710.710 INFO    ] ================================================
[2026-06-19 13:04:43,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:04:43
[2026-06-19 13:04:43,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:04:44,298.298 INFO    ] Initializing speech engine...
[2026-06-19 13:04:44,306.306 INFO    ] 2026-06-19 13:04:44
[2026-06-19 13:04:44,575.575 INFO    ] 2026-06-19 13:04:44
[2026-06-19 13:04:44,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:04:44,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:04:44,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:04:45,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:04:45,139.139 INFO    ] time= 19/06/2026 13:04:45
[2026-06-19 13:04:45,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:04:45,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:04:45,295.295 INFO    ] No existing commands found in stream
[2026-06-19 13:04:50,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:04:50,313.313 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-19 13:04:54,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:04:54,159.159 INFO    ] Checking for system updates...
[2026-06-19 13:04:54,196.196 INFO    ] 200
[2026-06-19 13:04:54,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:54,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:04:54,254.254 INFO    ] No update needed
[2026-06-19 13:04:54,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 13:04:54,290.290 INFO    ] 200
[2026-06-19 13:04:54,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:04:54,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:04:54,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:04:54,380.380 INFO    ] No camera update needed
[2026-06-19 13:04:54,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:04:54,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:04:54,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:04:54,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:04:56,438.438 INFO    ] ================================================
[2026-06-19 13:04:56,454.454 INFO    ] Launching Daemon at Fri Jun 19 13:04:56 IST 2026
[2026-06-19 13:04:56,465.465 INFO    ] ================================================
[2026-06-19 13:04:57,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:04:57
[2026-06-19 13:04:57,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:04:57,920.920 INFO    ] Initializing speech engine...
[2026-06-19 13:04:57,928.928 INFO    ] 2026-06-19 13:04:57
[2026-06-19 13:04:58,180.180 INFO    ] 2026-06-19 13:04:58
[2026-06-19 13:04:58,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:04:58,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:04:58,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:04:58,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:04:58,672.672 INFO    ] time= 19/06/2026 13:04:58
[2026-06-19 13:04:58,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:04:58,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:04:58,880.880 INFO    ] No existing commands found in stream
[2026-06-19 13:05:03,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:05:03,913.913 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 13:05:06,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:05:06,813.813 INFO    ] Checking for system updates...
[2026-06-19 13:05:06,849.849 INFO    ] 200
[2026-06-19 13:05:06,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:06,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:05:06,906.906 INFO    ] No update needed
[2026-06-19 13:05:06,909.909 INFO    ] Checking for camera pi updates...
[2026-06-19 13:05:06,942.942 INFO    ] 200
[2026-06-19 13:05:06,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:06,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:05:07,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:05:07,038.038 INFO    ] No camera update needed
[2026-06-19 13:05:07,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:05:07,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:05:07,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:05:07,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:05:09,094.094 INFO    ] ================================================
[2026-06-19 13:05:09,110.110 INFO    ] Launching Daemon at Fri Jun 19 13:05:09 IST 2026
[2026-06-19 13:05:09,121.121 INFO    ] ================================================
[2026-06-19 13:05:09,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:05:09
[2026-06-19 13:05:10,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:05:10,589.589 INFO    ] Initializing speech engine...
[2026-06-19 13:05:10,596.596 INFO    ] 2026-06-19 13:05:10
[2026-06-19 13:05:10,861.861 INFO    ] 2026-06-19 13:05:10
[2026-06-19 13:05:10,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:05:11,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:05:11,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:05:11,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:05:11,269.269 INFO    ] time= 19/06/2026 13:05:11
[2026-06-19 13:05:11,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:05:11,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:05:11,468.468 INFO    ] No existing commands found in stream
[2026-06-19 13:05:16,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:05:16,497.497 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 13:05:20,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:05:20,466.466 INFO    ] Checking for system updates...
[2026-06-19 13:05:20,506.506 INFO    ] 200
[2026-06-19 13:05:20,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:20,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:05:20,568.568 INFO    ] No update needed
[2026-06-19 13:05:20,571.571 INFO    ] Checking for camera pi updates...
[2026-06-19 13:05:20,609.609 INFO    ] 200
[2026-06-19 13:05:20,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:20,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:05:20,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:05:20,709.709 INFO    ] No camera update needed
[2026-06-19 13:05:20,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:05:20,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:05:20,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:05:20,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:05:22,766.766 INFO    ] ================================================
[2026-06-19 13:05:22,783.783 INFO    ] Launching Daemon at Fri Jun 19 13:05:22 IST 2026
[2026-06-19 13:05:22,794.794 INFO    ] ================================================
[2026-06-19 13:05:23,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:05:23
[2026-06-19 13:05:23,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:05:24,230.230 INFO    ] Initializing speech engine...
[2026-06-19 13:05:24,243.243 INFO    ] 2026-06-19 13:05:24
[2026-06-19 13:05:24,507.507 INFO    ] 2026-06-19 13:05:24
[2026-06-19 13:05:24,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:05:24,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:05:24,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:05:24,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:05:24,946.946 INFO    ] time= 19/06/2026 13:05:24
[2026-06-19 13:05:25,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:05:25,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:05:25,204.204 INFO    ] No existing commands found in stream
[2026-06-19 13:05:30,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:05:30,232.232 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 13:05:32,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:05:32,694.694 INFO    ] Checking for system updates...
[2026-06-19 13:05:32,733.733 INFO    ] 200
[2026-06-19 13:05:32,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:32,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:05:32,790.790 INFO    ] No update needed
[2026-06-19 13:05:32,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 13:05:32,826.826 INFO    ] 200
[2026-06-19 13:05:32,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:32,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:05:32,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:05:32,899.899 INFO    ] No camera update needed
[2026-06-19 13:05:32,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:05:32,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:05:32,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:05:32,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:05:34,954.954 INFO    ] ================================================
[2026-06-19 13:05:34,970.970 INFO    ] Launching Daemon at Fri Jun 19 13:05:34 IST 2026
[2026-06-19 13:05:34,981.981 INFO    ] ================================================
[2026-06-19 13:05:35,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:05:35
[2026-06-19 13:05:36,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:05:36,536.536 INFO    ] Initializing speech engine...
[2026-06-19 13:05:36,543.543 INFO    ] 2026-06-19 13:05:36
[2026-06-19 13:05:36,812.812 INFO    ] 2026-06-19 13:05:36
[2026-06-19 13:05:36,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:05:37,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:05:37,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:05:37,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:05:37,291.291 INFO    ] time= 19/06/2026 13:05:37
[2026-06-19 13:05:37,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:05:37,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:05:37,443.443 INFO    ] No existing commands found in stream
[2026-06-19 13:05:42,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:05:42,458.458 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 13:05:45,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:05:45,161.161 INFO    ] Checking for system updates...
[2026-06-19 13:05:45,197.197 INFO    ] 200
[2026-06-19 13:05:45,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:45,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:05:45,259.259 INFO    ] No update needed
[2026-06-19 13:05:45,261.261 INFO    ] Checking for camera pi updates...
[2026-06-19 13:05:45,296.296 INFO    ] 200
[2026-06-19 13:05:45,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:45,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:05:45,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:05:45,382.382 INFO    ] No camera update needed
[2026-06-19 13:05:45,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:05:45,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:05:45,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:05:45,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:05:47,436.436 INFO    ] ================================================
[2026-06-19 13:05:47,452.452 INFO    ] Launching Daemon at Fri Jun 19 13:05:47 IST 2026
[2026-06-19 13:05:47,463.463 INFO    ] ================================================
[2026-06-19 13:05:48,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:05:48
[2026-06-19 13:05:48,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:05:49,041.041 INFO    ] Initializing speech engine...
[2026-06-19 13:05:49,054.054 INFO    ] 2026-06-19 13:05:49
[2026-06-19 13:05:49,332.332 INFO    ] 2026-06-19 13:05:49
[2026-06-19 13:05:49,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:05:49,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:05:49,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:05:49,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:05:49,813.813 INFO    ] time= 19/06/2026 13:05:49
[2026-06-19 13:05:49,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:05:49,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:05:50,013.013 INFO    ] No existing commands found in stream
[2026-06-19 13:05:55,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:05:55,038.038 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 13:05:57,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:05:57,277.277 INFO    ] Checking for system updates...
[2026-06-19 13:05:57,318.318 INFO    ] 200
[2026-06-19 13:05:57,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:57,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:05:57,377.377 INFO    ] No update needed
[2026-06-19 13:05:57,379.379 INFO    ] Checking for camera pi updates...
[2026-06-19 13:05:57,413.413 INFO    ] 200
[2026-06-19 13:05:57,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:05:57,456.456 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:05:57,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:05:57,603.603 INFO    ] No camera update needed
[2026-06-19 13:05:57,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:05:57,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:05:57,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:05:57,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:05:59,662.662 INFO    ] ================================================
[2026-06-19 13:05:59,677.677 INFO    ] Launching Daemon at Fri Jun 19 13:05:59 IST 2026
[2026-06-19 13:05:59,688.688 INFO    ] ================================================
[2026-06-19 13:06:00,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:06:00
[2026-06-19 13:06:00,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:06:01,089.089 INFO    ] Initializing speech engine...
[2026-06-19 13:06:01,095.095 INFO    ] 2026-06-19 13:06:01
[2026-06-19 13:06:01,487.487 INFO    ] 2026-06-19 13:06:01
[2026-06-19 13:06:01,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:06:01,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:06:01,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:06:01,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:06:01,959.959 INFO    ] time= 19/06/2026 13:06:01
[2026-06-19 13:06:01,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:06:02,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:06:02,195.195 INFO    ] No existing commands found in stream
[2026-06-19 13:06:07,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:06:07,215.215 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 13:06:08,374.374 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:06:08,377.377 INFO    ] Checking for system updates...
[2026-06-19 13:06:08,416.416 INFO    ] 200
[2026-06-19 13:06:08,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:08,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:06:08,473.473 INFO    ] No update needed
[2026-06-19 13:06:08,476.476 INFO    ] Checking for camera pi updates...
[2026-06-19 13:06:08,513.513 INFO    ] 200
[2026-06-19 13:06:08,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:08,557.557 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:06:08,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:06:08,602.602 INFO    ] No camera update needed
[2026-06-19 13:06:08,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:06:08,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:06:08,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:06:08,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:06:10,661.661 INFO    ] ================================================
[2026-06-19 13:06:10,677.677 INFO    ] Launching Daemon at Fri Jun 19 13:06:10 IST 2026
[2026-06-19 13:06:10,687.687 INFO    ] ================================================
[2026-06-19 13:06:11,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:06:11
[2026-06-19 13:06:11,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:06:12,140.140 INFO    ] Initializing speech engine...
[2026-06-19 13:06:12,148.148 INFO    ] 2026-06-19 13:06:12
[2026-06-19 13:06:12,418.418 INFO    ] 2026-06-19 13:06:12
[2026-06-19 13:06:12,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:06:12,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:06:12,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:06:12,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:06:12,831.831 INFO    ] time= 19/06/2026 13:06:12
[2026-06-19 13:06:12,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:06:12,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:06:13,025.025 INFO    ] No existing commands found in stream
[2026-06-19 13:06:18,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:06:18,053.053 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 13:06:20,989.989 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:06:20,992.992 INFO    ] Checking for system updates...
[2026-06-19 13:06:21,031.031 INFO    ] 200
[2026-06-19 13:06:21,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:21,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:06:21,094.094 INFO    ] No update needed
[2026-06-19 13:06:21,097.097 INFO    ] Checking for camera pi updates...
[2026-06-19 13:06:21,132.132 INFO    ] 200
[2026-06-19 13:06:21,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:21,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:06:21,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:06:21,216.216 INFO    ] No camera update needed
[2026-06-19 13:06:21,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:06:21,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:06:21,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:06:21,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:06:23,272.272 INFO    ] ================================================
[2026-06-19 13:06:23,288.288 INFO    ] Launching Daemon at Fri Jun 19 13:06:23 IST 2026
[2026-06-19 13:06:23,299.299 INFO    ] ================================================
[2026-06-19 13:06:23,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:06:23
[2026-06-19 13:06:24,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:06:24,715.715 INFO    ] Initializing speech engine...
[2026-06-19 13:06:24,738.738 INFO    ] 2026-06-19 13:06:24
[2026-06-19 13:06:24,995.995 INFO    ] 2026-06-19 13:06:24
[2026-06-19 13:06:25,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:06:25,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:06:25,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:06:25,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:06:25,464.464 INFO    ] time= 19/06/2026 13:06:25
[2026-06-19 13:06:25,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:06:25,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:06:25,716.716 INFO    ] No existing commands found in stream
[2026-06-19 13:06:30,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:06:30,742.742 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 13:06:31,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:06:31,425.425 INFO    ] Checking for system updates...
[2026-06-19 13:06:31,466.466 INFO    ] 200
[2026-06-19 13:06:31,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:31,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:06:31,539.539 INFO    ] No update needed
[2026-06-19 13:06:31,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 13:06:31,580.580 INFO    ] 200
[2026-06-19 13:06:31,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:31,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:06:31,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:06:31,662.662 INFO    ] No camera update needed
[2026-06-19 13:06:31,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:06:31,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:06:31,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:06:31,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:06:33,728.728 INFO    ] ================================================
[2026-06-19 13:06:33,750.750 INFO    ] Launching Daemon at Fri Jun 19 13:06:33 IST 2026
[2026-06-19 13:06:33,761.761 INFO    ] ================================================
[2026-06-19 13:06:34,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:06:34
[2026-06-19 13:06:34,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:06:35,180.180 INFO    ] Initializing speech engine...
[2026-06-19 13:06:35,187.187 INFO    ] 2026-06-19 13:06:35
[2026-06-19 13:06:35,483.483 INFO    ] 2026-06-19 13:06:35
[2026-06-19 13:06:35,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:06:35,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:06:35,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:06:35,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:06:35,862.862 INFO    ] time= 19/06/2026 13:06:35
[2026-06-19 13:06:35,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:06:35,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:06:35,987.987 INFO    ] No existing commands found in stream
[2026-06-19 13:06:41,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:06:41,003.003 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 13:06:45,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:06:45,215.215 INFO    ] Checking for system updates...
[2026-06-19 13:06:45,255.255 INFO    ] 200
[2026-06-19 13:06:45,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:45,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:06:45,320.320 INFO    ] No update needed
[2026-06-19 13:06:45,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 13:06:45,360.360 INFO    ] 200
[2026-06-19 13:06:45,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:45,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:06:45,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:06:45,463.463 INFO    ] No camera update needed
[2026-06-19 13:06:45,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:06:45,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:06:45,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:06:45,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:06:47,518.518 INFO    ] ================================================
[2026-06-19 13:06:47,534.534 INFO    ] Launching Daemon at Fri Jun 19 13:06:47 IST 2026
[2026-06-19 13:06:47,546.546 INFO    ] ================================================
[2026-06-19 13:06:48,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:06:48
[2026-06-19 13:06:48,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:06:49,005.005 INFO    ] Initializing speech engine...
[2026-06-19 13:06:49,024.024 INFO    ] 2026-06-19 13:06:49
[2026-06-19 13:06:49,278.278 INFO    ] 2026-06-19 13:06:49
[2026-06-19 13:06:49,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:06:49,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:06:49,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:06:49,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:06:49,766.766 INFO    ] time= 19/06/2026 13:06:49
[2026-06-19 13:06:49,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:06:49,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:06:49,988.988 INFO    ] No existing commands found in stream
[2026-06-19 13:06:55,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:06:55,016.016 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 13:06:55,754.754 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:06:55,756.756 INFO    ] Checking for system updates...
[2026-06-19 13:06:55,792.792 INFO    ] 200
[2026-06-19 13:06:55,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:55,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:06:55,850.850 INFO    ] No update needed
[2026-06-19 13:06:55,852.852 INFO    ] Checking for camera pi updates...
[2026-06-19 13:06:55,886.886 INFO    ] 200
[2026-06-19 13:06:55,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:06:55,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:06:55,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:06:55,971.971 INFO    ] No camera update needed
[2026-06-19 13:06:55,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:06:55,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:06:55,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:06:55,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:06:58,027.027 INFO    ] ================================================
[2026-06-19 13:06:58,043.043 INFO    ] Launching Daemon at Fri Jun 19 13:06:58 IST 2026
[2026-06-19 13:06:58,055.055 INFO    ] ================================================
[2026-06-19 13:06:58,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:06:58
[2026-06-19 13:06:59,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:06:59,729.729 INFO    ] Initializing speech engine...
[2026-06-19 13:06:59,744.744 INFO    ] 2026-06-19 13:06:59
[2026-06-19 13:07:00,032.032 INFO    ] 2026-06-19 13:07:00
[2026-06-19 13:07:00,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:07:00,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:07:00,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:07:00,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:07:00,584.584 INFO    ] time= 19/06/2026 13:07:00
[2026-06-19 13:07:00,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:07:00,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:07:00,786.786 INFO    ] No existing commands found in stream
[2026-06-19 13:07:05,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:07:05,822.822 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 13:07:06,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:07:07,001.001 INFO    ] Checking for system updates...
[2026-06-19 13:07:07,041.041 INFO    ] 200
[2026-06-19 13:07:07,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:07,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:07:07,102.102 INFO    ] No update needed
[2026-06-19 13:07:07,105.105 INFO    ] Checking for camera pi updates...
[2026-06-19 13:07:07,140.140 INFO    ] 200
[2026-06-19 13:07:07,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:07,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:07:07,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:07:07,228.228 INFO    ] No camera update needed
[2026-06-19 13:07:07,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:07:07,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:07:07,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:07:07,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:07:09,285.285 INFO    ] ================================================
[2026-06-19 13:07:09,301.301 INFO    ] Launching Daemon at Fri Jun 19 13:07:09 IST 2026
[2026-06-19 13:07:09,312.312 INFO    ] ================================================
[2026-06-19 13:07:09,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:07:09
[2026-06-19 13:07:10,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:07:10,770.770 INFO    ] Initializing speech engine...
[2026-06-19 13:07:10,780.780 INFO    ] 2026-06-19 13:07:10
[2026-06-19 13:07:11,027.027 INFO    ] 2026-06-19 13:07:11
[2026-06-19 13:07:11,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:07:11,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:07:11,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:07:11,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:07:11,393.393 INFO    ] time= 19/06/2026 13:07:11
[2026-06-19 13:07:11,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:07:11,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:07:11,519.519 INFO    ] No existing commands found in stream
[2026-06-19 13:07:16,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:07:16,552.552 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 13:07:19,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:07:19,404.404 INFO    ] Checking for system updates...
[2026-06-19 13:07:19,445.445 INFO    ] 200
[2026-06-19 13:07:19,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:19,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:07:19,506.506 INFO    ] No update needed
[2026-06-19 13:07:19,508.508 INFO    ] Checking for camera pi updates...
[2026-06-19 13:07:19,547.547 INFO    ] 200
[2026-06-19 13:07:19,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:19,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:07:19,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:07:19,641.641 INFO    ] No camera update needed
[2026-06-19 13:07:19,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:07:19,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:07:19,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:07:19,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:07:21,697.697 INFO    ] ================================================
[2026-06-19 13:07:21,713.713 INFO    ] Launching Daemon at Fri Jun 19 13:07:21 IST 2026
[2026-06-19 13:07:21,723.723 INFO    ] ================================================
[2026-06-19 13:07:22,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:07:22
[2026-06-19 13:07:22,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:07:23,186.186 INFO    ] Initializing speech engine...
[2026-06-19 13:07:23,193.193 INFO    ] 2026-06-19 13:07:23
[2026-06-19 13:07:23,453.453 INFO    ] 2026-06-19 13:07:23
[2026-06-19 13:07:23,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:07:23,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:07:23,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:07:23,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:07:23,915.915 INFO    ] time= 19/06/2026 13:07:23
[2026-06-19 13:07:23,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:07:24,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:07:24,147.147 INFO    ] No existing commands found in stream
[2026-06-19 13:07:29,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:07:29,165.165 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 13:07:30,172.172 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:07:30,175.175 INFO    ] Checking for system updates...
[2026-06-19 13:07:30,216.216 INFO    ] 200
[2026-06-19 13:07:30,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:30,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:07:30,275.275 INFO    ] No update needed
[2026-06-19 13:07:30,278.278 INFO    ] Checking for camera pi updates...
[2026-06-19 13:07:30,316.316 INFO    ] 200
[2026-06-19 13:07:30,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:30,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:07:30,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:07:30,406.406 INFO    ] No camera update needed
[2026-06-19 13:07:30,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:07:30,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:07:30,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:07:30,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:07:32,466.466 INFO    ] ================================================
[2026-06-19 13:07:32,482.482 INFO    ] Launching Daemon at Fri Jun 19 13:07:32 IST 2026
[2026-06-19 13:07:32,496.496 INFO    ] ================================================
[2026-06-19 13:07:33,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:07:33
[2026-06-19 13:07:33,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:07:33,921.921 INFO    ] Initializing speech engine...
[2026-06-19 13:07:33,928.928 INFO    ] 2026-06-19 13:07:33
[2026-06-19 13:07:34,227.227 INFO    ] 2026-06-19 13:07:34
[2026-06-19 13:07:34,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:07:34,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:07:34,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:07:34,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:07:34,656.656 INFO    ] time= 19/06/2026 13:07:34
[2026-06-19 13:07:34,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:07:34,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:07:34,740.740 INFO    ] No existing commands found in stream
[2026-06-19 13:07:39,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:07:39,756.756 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 13:07:43,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:07:43,532.532 INFO    ] Checking for system updates...
[2026-06-19 13:07:43,569.569 INFO    ] 200
[2026-06-19 13:07:43,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:43,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:07:43,629.629 INFO    ] No update needed
[2026-06-19 13:07:43,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 13:07:43,666.666 INFO    ] 200
[2026-06-19 13:07:43,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:43,716.716 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:07:43,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:07:43,770.770 INFO    ] No camera update needed
[2026-06-19 13:07:43,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:07:43,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:07:43,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:07:43,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:07:45,827.827 INFO    ] ================================================
[2026-06-19 13:07:45,842.842 INFO    ] Launching Daemon at Fri Jun 19 13:07:45 IST 2026
[2026-06-19 13:07:45,853.853 INFO    ] ================================================
[2026-06-19 13:07:46,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:07:46
[2026-06-19 13:07:47,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:07:47,311.311 INFO    ] Initializing speech engine...
[2026-06-19 13:07:47,321.321 INFO    ] 2026-06-19 13:07:47
[2026-06-19 13:07:47,624.624 INFO    ] 2026-06-19 13:07:47
[2026-06-19 13:07:47,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:07:47,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:07:47,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:07:48,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:07:48,053.053 INFO    ] time= 19/06/2026 13:07:48
[2026-06-19 13:07:48,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:07:48,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:07:48,142.142 INFO    ] No existing commands found in stream
[2026-06-19 13:07:53,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:07:53,160.160 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 13:07:55,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:07:55,042.042 INFO    ] Checking for system updates...
[2026-06-19 13:07:55,078.078 INFO    ] 200
[2026-06-19 13:07:55,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:55,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:07:55,144.144 INFO    ] No update needed
[2026-06-19 13:07:55,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 13:07:55,185.185 INFO    ] 200
[2026-06-19 13:07:55,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:07:55,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:07:55,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:07:55,274.274 INFO    ] No camera update needed
[2026-06-19 13:07:55,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:07:55,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:07:55,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:07:55,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:07:57,329.329 INFO    ] ================================================
[2026-06-19 13:07:57,344.344 INFO    ] Launching Daemon at Fri Jun 19 13:07:57 IST 2026
[2026-06-19 13:07:57,355.355 INFO    ] ================================================
[2026-06-19 13:07:57,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:07:57
[2026-06-19 13:07:58,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:07:58,773.773 INFO    ] Initializing speech engine...
[2026-06-19 13:07:58,782.782 INFO    ] 2026-06-19 13:07:58
[2026-06-19 13:07:59,081.081 INFO    ] 2026-06-19 13:07:59
[2026-06-19 13:07:59,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:07:59,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:07:59,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:07:59,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:07:59,469.469 INFO    ] time= 19/06/2026 13:07:59
[2026-06-19 13:07:59,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:07:59,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:07:59,597.597 INFO    ] No existing commands found in stream
[2026-06-19 13:08:04,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:08:04,612.612 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 13:08:08,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:08:08,816.816 INFO    ] Checking for system updates...
[2026-06-19 13:08:08,856.856 INFO    ] 200
[2026-06-19 13:08:08,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:08,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:08:08,914.914 INFO    ] No update needed
[2026-06-19 13:08:08,920.920 INFO    ] Checking for camera pi updates...
[2026-06-19 13:08:08,955.955 INFO    ] 200
[2026-06-19 13:08:08,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:08,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:08:09,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:08:09,040.040 INFO    ] No camera update needed
[2026-06-19 13:08:09,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:08:09,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:08:09,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:08:09,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:08:11,103.103 INFO    ] ================================================
[2026-06-19 13:08:11,118.118 INFO    ] Launching Daemon at Fri Jun 19 13:08:11 IST 2026
[2026-06-19 13:08:11,129.129 INFO    ] ================================================
[2026-06-19 13:08:11,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:08:11
[2026-06-19 13:08:12,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:08:12,598.598 INFO    ] Initializing speech engine...
[2026-06-19 13:08:12,610.610 INFO    ] 2026-06-19 13:08:12
[2026-06-19 13:08:12,874.874 INFO    ] 2026-06-19 13:08:12
[2026-06-19 13:08:12,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:08:13,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:08:13,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:08:13,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:08:13,420.420 INFO    ] time= 19/06/2026 13:08:13
[2026-06-19 13:08:13,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:08:13,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:08:13,565.565 INFO    ] No existing commands found in stream
[2026-06-19 13:08:18,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:08:18,589.589 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 13:08:19,294.294 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:08:19,297.297 INFO    ] Checking for system updates...
[2026-06-19 13:08:19,337.337 INFO    ] 200
[2026-06-19 13:08:19,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:19,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:08:19,402.402 INFO    ] No update needed
[2026-06-19 13:08:19,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 13:08:19,439.439 INFO    ] 200
[2026-06-19 13:08:19,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:19,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:08:19,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:08:19,532.532 INFO    ] No camera update needed
[2026-06-19 13:08:19,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:08:19,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:08:19,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:08:19,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:08:21,588.588 INFO    ] ================================================
[2026-06-19 13:08:21,608.608 INFO    ] Launching Daemon at Fri Jun 19 13:08:21 IST 2026
[2026-06-19 13:08:21,619.619 INFO    ] ================================================
[2026-06-19 13:08:22,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:08:22
[2026-06-19 13:08:22,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:08:23,182.182 INFO    ] Initializing speech engine...
[2026-06-19 13:08:23,203.203 INFO    ] 2026-06-19 13:08:23
[2026-06-19 13:08:23,464.464 INFO    ] 2026-06-19 13:08:23
[2026-06-19 13:08:23,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:08:23,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:08:23,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:08:23,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:08:23,843.843 INFO    ] time= 19/06/2026 13:08:23
[2026-06-19 13:08:23,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:08:23,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:08:24,036.036 INFO    ] No existing commands found in stream
[2026-06-19 13:08:29,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:08:29,059.059 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 13:08:29,815.815 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:08:29,818.818 INFO    ] Checking for system updates...
[2026-06-19 13:08:29,856.856 INFO    ] 200
[2026-06-19 13:08:29,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:29,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:08:29,916.916 INFO    ] No update needed
[2026-06-19 13:08:29,919.919 INFO    ] Checking for camera pi updates...
[2026-06-19 13:08:29,953.953 INFO    ] 200
[2026-06-19 13:08:29,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:30,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:08:30,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:08:30,052.052 INFO    ] No camera update needed
[2026-06-19 13:08:30,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:08:30,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:08:30,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:08:30,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:08:32,112.112 INFO    ] ================================================
[2026-06-19 13:08:32,128.128 INFO    ] Launching Daemon at Fri Jun 19 13:08:32 IST 2026
[2026-06-19 13:08:32,139.139 INFO    ] ================================================
[2026-06-19 13:08:32,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:08:32
[2026-06-19 13:08:33,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:08:33,586.586 INFO    ] Initializing speech engine...
[2026-06-19 13:08:33,609.609 INFO    ] 2026-06-19 13:08:33
[2026-06-19 13:08:33,861.861 INFO    ] 2026-06-19 13:08:33
[2026-06-19 13:08:33,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:08:34,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:08:34,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:08:34,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:08:34,341.341 INFO    ] time= 19/06/2026 13:08:34
[2026-06-19 13:08:34,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:08:34,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:08:34,570.570 INFO    ] No existing commands found in stream
[2026-06-19 13:08:39,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:08:39,598.598 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 13:08:41,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:08:41,934.934 INFO    ] Checking for system updates...
[2026-06-19 13:08:41,975.975 INFO    ] 200
[2026-06-19 13:08:41,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:42,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:08:42,040.040 INFO    ] No update needed
[2026-06-19 13:08:42,042.042 INFO    ] Checking for camera pi updates...
[2026-06-19 13:08:42,076.076 INFO    ] 200
[2026-06-19 13:08:42,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:42,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:08:42,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:08:42,165.165 INFO    ] No camera update needed
[2026-06-19 13:08:42,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:08:42,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:08:42,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:08:42,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:08:44,222.222 INFO    ] ================================================
[2026-06-19 13:08:44,238.238 INFO    ] Launching Daemon at Fri Jun 19 13:08:44 IST 2026
[2026-06-19 13:08:44,249.249 INFO    ] ================================================
[2026-06-19 13:08:44,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:08:44
[2026-06-19 13:08:45,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:08:45,705.705 INFO    ] Initializing speech engine...
[2026-06-19 13:08:45,718.718 INFO    ] 2026-06-19 13:08:45
[2026-06-19 13:08:45,968.968 INFO    ] 2026-06-19 13:08:45
[2026-06-19 13:08:46,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:08:46,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:08:46,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:08:46,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:08:46,468.468 INFO    ] time= 19/06/2026 13:08:46
[2026-06-19 13:08:46,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:08:46,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:08:46,669.669 INFO    ] No existing commands found in stream
[2026-06-19 13:08:51,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:08:51,696.696 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 13:08:52,651.651 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:08:52,654.654 INFO    ] Checking for system updates...
[2026-06-19 13:08:52,691.691 INFO    ] 200
[2026-06-19 13:08:52,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:52,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:08:52,759.759 INFO    ] No update needed
[2026-06-19 13:08:52,762.762 INFO    ] Checking for camera pi updates...
[2026-06-19 13:08:52,802.802 INFO    ] 200
[2026-06-19 13:08:52,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:08:52,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:08:52,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:08:52,902.902 INFO    ] No camera update needed
[2026-06-19 13:08:52,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:08:52,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:08:52,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:08:52,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:08:54,962.962 INFO    ] ================================================
[2026-06-19 13:08:54,978.978 INFO    ] Launching Daemon at Fri Jun 19 13:08:54 IST 2026
[2026-06-19 13:08:54,990.990 INFO    ] ================================================
[2026-06-19 13:08:55,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:08:55
[2026-06-19 13:08:56,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:08:56,390.390 INFO    ] Initializing speech engine...
[2026-06-19 13:08:56,404.404 INFO    ] 2026-06-19 13:08:56
[2026-06-19 13:08:56,667.667 INFO    ] 2026-06-19 13:08:56
[2026-06-19 13:08:56,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:08:56,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:08:56,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:08:57,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:08:57,150.150 INFO    ] time= 19/06/2026 13:08:57
[2026-06-19 13:08:57,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:08:57,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:08:57,376.376 INFO    ] No existing commands found in stream
[2026-06-19 13:09:02,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:09:02,400.400 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 13:09:05,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:09:05,746.746 INFO    ] Checking for system updates...
[2026-06-19 13:09:05,782.782 INFO    ] 200
[2026-06-19 13:09:05,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:05,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:09:05,864.864 INFO    ] No update needed
[2026-06-19 13:09:05,866.866 INFO    ] Checking for camera pi updates...
[2026-06-19 13:09:05,904.904 INFO    ] 200
[2026-06-19 13:09:05,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:05,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:09:05,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:09:05,999.999 INFO    ] No camera update needed
[2026-06-19 13:09:06,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:09:06,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:09:06,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:09:06,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:09:08,056.056 INFO    ] ================================================
[2026-06-19 13:09:08,072.072 INFO    ] Launching Daemon at Fri Jun 19 13:09:08 IST 2026
[2026-06-19 13:09:08,084.084 INFO    ] ================================================
[2026-06-19 13:09:08,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:09:08
[2026-06-19 13:09:09,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:09:09,712.712 INFO    ] Initializing speech engine...
[2026-06-19 13:09:09,716.716 INFO    ] 2026-06-19 13:09:09
[2026-06-19 13:09:10,007.007 INFO    ] 2026-06-19 13:09:09
[2026-06-19 13:09:10,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:09:10,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:09:10,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:09:10,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:09:10,556.556 INFO    ] time= 19/06/2026 13:09:10
[2026-06-19 13:09:10,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:09:10,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:09:10,717.717 INFO    ] No existing commands found in stream
[2026-06-19 13:09:15,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:09:15,750.750 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 13:09:18,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:09:18,598.598 INFO    ] Checking for system updates...
[2026-06-19 13:09:18,642.642 INFO    ] 200
[2026-06-19 13:09:18,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:18,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:09:18,700.700 INFO    ] No update needed
[2026-06-19 13:09:18,703.703 INFO    ] Checking for camera pi updates...
[2026-06-19 13:09:18,737.737 INFO    ] 200
[2026-06-19 13:09:18,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:18,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:09:18,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:09:18,819.819 INFO    ] No camera update needed
[2026-06-19 13:09:18,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:09:18,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:09:18,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:09:18,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:09:20,875.875 INFO    ] ================================================
[2026-06-19 13:09:20,891.891 INFO    ] Launching Daemon at Fri Jun 19 13:09:20 IST 2026
[2026-06-19 13:09:20,902.902 INFO    ] ================================================
[2026-06-19 13:09:21,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:09:21
[2026-06-19 13:09:22,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:09:22,307.307 INFO    ] Initializing speech engine...
[2026-06-19 13:09:22,314.314 INFO    ] 2026-06-19 13:09:22
[2026-06-19 13:09:22,586.586 INFO    ] 2026-06-19 13:09:22
[2026-06-19 13:09:22,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:09:22,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:09:22,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:09:23,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:09:23,049.049 INFO    ] time= 19/06/2026 13:09:23
[2026-06-19 13:09:23,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:09:23,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:09:23,302.302 INFO    ] No existing commands found in stream
[2026-06-19 13:09:28,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:09:28,330.330 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 13:09:28,836.836 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:09:28,839.839 INFO    ] Checking for system updates...
[2026-06-19 13:09:28,880.880 INFO    ] 200
[2026-06-19 13:09:28,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:28,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:09:28,946.946 INFO    ] No update needed
[2026-06-19 13:09:28,949.949 INFO    ] Checking for camera pi updates...
[2026-06-19 13:09:28,983.983 INFO    ] 200
[2026-06-19 13:09:28,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:29,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:09:29,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:09:29,073.073 INFO    ] No camera update needed
[2026-06-19 13:09:29,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:09:29,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:09:29,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:09:29,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:09:31,129.129 INFO    ] ================================================
[2026-06-19 13:09:31,145.145 INFO    ] Launching Daemon at Fri Jun 19 13:09:31 IST 2026
[2026-06-19 13:09:31,157.157 INFO    ] ================================================
[2026-06-19 13:09:31,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:09:31
[2026-06-19 13:09:32,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:09:32,641.641 INFO    ] Initializing speech engine...
[2026-06-19 13:09:32,652.652 INFO    ] 2026-06-19 13:09:32
[2026-06-19 13:09:32,949.949 INFO    ] 2026-06-19 13:09:32
[2026-06-19 13:09:32,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:09:33,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:09:33,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:09:33,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:09:33,438.438 INFO    ] time= 19/06/2026 13:09:33
[2026-06-19 13:09:33,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:09:33,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:09:33,659.659 INFO    ] No existing commands found in stream
[2026-06-19 13:09:38,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:09:38,690.690 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 13:09:40,021.021 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:09:40,023.023 INFO    ] Checking for system updates...
[2026-06-19 13:09:40,059.059 INFO    ] 200
[2026-06-19 13:09:40,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:40,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:09:40,118.118 INFO    ] No update needed
[2026-06-19 13:09:40,120.120 INFO    ] Checking for camera pi updates...
[2026-06-19 13:09:40,153.153 INFO    ] 200
[2026-06-19 13:09:40,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:40,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:09:40,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:09:40,248.248 INFO    ] No camera update needed
[2026-06-19 13:09:40,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:09:40,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:09:40,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:09:40,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:09:42,305.305 INFO    ] ================================================
[2026-06-19 13:09:42,322.322 INFO    ] Launching Daemon at Fri Jun 19 13:09:42 IST 2026
[2026-06-19 13:09:42,334.334 INFO    ] ================================================
[2026-06-19 13:09:42,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:09:42
[2026-06-19 13:09:43,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:09:43,826.826 INFO    ] Initializing speech engine...
[2026-06-19 13:09:43,833.833 INFO    ] 2026-06-19 13:09:43
[2026-06-19 13:09:44,086.086 INFO    ] 2026-06-19 13:09:44
[2026-06-19 13:09:44,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:09:44,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:09:44,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:09:44,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:09:44,571.571 INFO    ] time= 19/06/2026 13:09:44
[2026-06-19 13:09:44,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:09:44,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:09:44,774.774 INFO    ] No existing commands found in stream
[2026-06-19 13:09:49,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:09:49,794.794 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 13:09:52,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:09:52,025.025 INFO    ] Checking for system updates...
[2026-06-19 13:09:52,065.065 INFO    ] 200
[2026-06-19 13:09:52,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:52,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:09:52,122.122 INFO    ] No update needed
[2026-06-19 13:09:52,124.124 INFO    ] Checking for camera pi updates...
[2026-06-19 13:09:52,158.158 INFO    ] 200
[2026-06-19 13:09:52,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:09:52,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:09:52,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:09:52,234.234 INFO    ] No camera update needed
[2026-06-19 13:09:52,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:09:52,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:09:52,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:09:52,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:09:54,291.291 INFO    ] ================================================
[2026-06-19 13:09:54,307.307 INFO    ] Launching Daemon at Fri Jun 19 13:09:54 IST 2026
[2026-06-19 13:09:54,318.318 INFO    ] ================================================
[2026-06-19 13:09:54,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:09:54
[2026-06-19 13:09:55,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:09:55,726.726 INFO    ] Initializing speech engine...
[2026-06-19 13:09:55,733.733 INFO    ] 2026-06-19 13:09:55
[2026-06-19 13:09:56,033.033 INFO    ] 2026-06-19 13:09:55
[2026-06-19 13:09:56,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:09:56,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:09:56,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:09:56,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:09:56,459.459 INFO    ] time= 19/06/2026 13:09:56
[2026-06-19 13:09:56,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:09:56,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:09:56,549.549 INFO    ] No existing commands found in stream
[2026-06-19 13:10:01,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:10:01,588.588 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 13:10:08,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:10:08,327.327 INFO    ] Checking for system updates...
[2026-06-19 13:10:08,362.362 INFO    ] 200
[2026-06-19 13:10:08,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:08,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:10:08,424.424 INFO    ] No update needed
[2026-06-19 13:10:08,427.427 INFO    ] Checking for camera pi updates...
[2026-06-19 13:10:08,460.460 INFO    ] 200
[2026-06-19 13:10:08,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:08,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:10:08,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:10:08,650.650 INFO    ] No camera update needed
[2026-06-19 13:10:08,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:10:08,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:10:08,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:10:08,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:10:10,709.709 INFO    ] ================================================
[2026-06-19 13:10:10,724.724 INFO    ] Launching Daemon at Fri Jun 19 13:10:10 IST 2026
[2026-06-19 13:10:10,735.735 INFO    ] ================================================
[2026-06-19 13:10:11,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:10:11
[2026-06-19 13:10:11,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:10:12,230.230 INFO    ] Initializing speech engine...
[2026-06-19 13:10:12,239.239 INFO    ] 2026-06-19 13:10:12
[2026-06-19 13:10:12,519.519 INFO    ] 2026-06-19 13:10:12
[2026-06-19 13:10:12,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:10:12,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:10:12,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:10:12,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:10:12,995.995 INFO    ] time= 19/06/2026 13:10:12
[2026-06-19 13:10:13,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:10:13,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:10:13,201.201 INFO    ] No existing commands found in stream
[2026-06-19 13:10:18,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:10:18,224.224 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 13:10:22,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:10:22,228.228 INFO    ] Checking for system updates...
[2026-06-19 13:10:22,265.265 INFO    ] 200
[2026-06-19 13:10:22,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:22,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:10:22,327.327 INFO    ] No update needed
[2026-06-19 13:10:22,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 13:10:22,367.367 INFO    ] 200
[2026-06-19 13:10:22,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:22,415.415 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:10:22,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:10:22,458.458 INFO    ] No camera update needed
[2026-06-19 13:10:22,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:10:22,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:10:22,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:10:22,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:10:24,517.517 INFO    ] ================================================
[2026-06-19 13:10:24,532.532 INFO    ] Launching Daemon at Fri Jun 19 13:10:24 IST 2026
[2026-06-19 13:10:24,542.542 INFO    ] ================================================
[2026-06-19 13:10:25,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:10:25
[2026-06-19 13:10:25,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:10:25,997.997 INFO    ] Initializing speech engine...
[2026-06-19 13:10:26,008.008 INFO    ] 2026-06-19 13:10:26
[2026-06-19 13:10:26,268.268 INFO    ] 2026-06-19 13:10:26
[2026-06-19 13:10:26,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:10:26,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:10:26,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:10:26,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:10:26,732.732 INFO    ] time= 19/06/2026 13:10:26
[2026-06-19 13:10:26,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:10:26,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:10:26,941.941 INFO    ] No existing commands found in stream
[2026-06-19 13:10:31,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:10:31,970.970 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 13:10:32,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:10:32,914.914 INFO    ] Checking for system updates...
[2026-06-19 13:10:32,953.953 INFO    ] 200
[2026-06-19 13:10:32,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:33,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:10:33,010.010 INFO    ] No update needed
[2026-06-19 13:10:33,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 13:10:33,046.046 INFO    ] 200
[2026-06-19 13:10:33,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:33,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:10:33,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:10:33,118.118 INFO    ] No camera update needed
[2026-06-19 13:10:33,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:10:33,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:10:33,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:10:33,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:10:35,175.175 INFO    ] ================================================
[2026-06-19 13:10:35,190.190 INFO    ] Launching Daemon at Fri Jun 19 13:10:35 IST 2026
[2026-06-19 13:10:35,201.201 INFO    ] ================================================
[2026-06-19 13:10:35,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:10:35
[2026-06-19 13:10:36,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:10:36,760.760 INFO    ] Initializing speech engine...
[2026-06-19 13:10:36,767.767 INFO    ] 2026-06-19 13:10:36
[2026-06-19 13:10:37,038.038 INFO    ] 2026-06-19 13:10:37
[2026-06-19 13:10:37,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:10:37,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:10:37,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:10:37,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:10:37,600.600 INFO    ] time= 19/06/2026 13:10:37
[2026-06-19 13:10:37,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:10:37,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:10:37,754.754 INFO    ] No existing commands found in stream
[2026-06-19 13:10:42,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:10:42,775.775 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 13:10:45,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:10:45,329.329 INFO    ] Checking for system updates...
[2026-06-19 13:10:45,367.367 INFO    ] 200
[2026-06-19 13:10:45,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:45,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:10:45,425.425 INFO    ] No update needed
[2026-06-19 13:10:45,427.427 INFO    ] Checking for camera pi updates...
[2026-06-19 13:10:45,464.464 INFO    ] 200
[2026-06-19 13:10:45,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:45,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:10:45,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:10:45,550.550 INFO    ] No camera update needed
[2026-06-19 13:10:45,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:10:45,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:10:45,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:10:45,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:10:47,604.604 INFO    ] ================================================
[2026-06-19 13:10:47,619.619 INFO    ] Launching Daemon at Fri Jun 19 13:10:47 IST 2026
[2026-06-19 13:10:47,630.630 INFO    ] ================================================
[2026-06-19 13:10:48,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:10:48
[2026-06-19 13:10:48,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:10:49,186.186 INFO    ] Initializing speech engine...
[2026-06-19 13:10:49,200.200 INFO    ] 2026-06-19 13:10:49
[2026-06-19 13:10:49,473.473 INFO    ] 2026-06-19 13:10:49
[2026-06-19 13:10:49,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:10:49,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:10:49,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:10:49,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:10:50,005.005 INFO    ] time= 19/06/2026 13:10:49
[2026-06-19 13:10:50,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:10:50,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:10:50,164.164 INFO    ] No existing commands found in stream
[2026-06-19 13:10:55,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:10:55,190.190 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 13:10:57,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:10:57,548.548 INFO    ] Checking for system updates...
[2026-06-19 13:10:57,585.585 INFO    ] 200
[2026-06-19 13:10:57,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:57,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:10:57,647.647 INFO    ] No update needed
[2026-06-19 13:10:57,649.649 INFO    ] Checking for camera pi updates...
[2026-06-19 13:10:57,684.684 INFO    ] 200
[2026-06-19 13:10:57,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:10:57,735.735 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:10:57,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:10:57,779.779 INFO    ] No camera update needed
[2026-06-19 13:10:57,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:10:57,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:10:57,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:10:57,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:10:59,834.834 INFO    ] ================================================
[2026-06-19 13:10:59,849.849 INFO    ] Launching Daemon at Fri Jun 19 13:10:59 IST 2026
[2026-06-19 13:10:59,860.860 INFO    ] ================================================
[2026-06-19 13:11:00,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:11:00
[2026-06-19 13:11:01,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:11:01,422.422 INFO    ] Initializing speech engine...
[2026-06-19 13:11:01,430.430 INFO    ] 2026-06-19 13:11:01
[2026-06-19 13:11:01,942.942 INFO    ] 2026-06-19 13:11:01
[2026-06-19 13:11:02,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:11:02,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:11:02,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:11:02,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:11:02,469.469 INFO    ] time= 19/06/2026 13:11:02
[2026-06-19 13:11:02,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:11:02,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:11:02,674.674 INFO    ] No existing commands found in stream
[2026-06-19 13:11:07,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:11:07,698.698 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 13:11:09,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:11:09,292.292 INFO    ] Checking for system updates...
[2026-06-19 13:11:09,328.328 INFO    ] 200
[2026-06-19 13:11:09,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:09,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:11:09,387.387 INFO    ] No update needed
[2026-06-19 13:11:09,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 13:11:09,425.425 INFO    ] 200
[2026-06-19 13:11:09,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:09,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:11:09,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:11:09,515.515 INFO    ] No camera update needed
[2026-06-19 13:11:09,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:11:09,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:11:09,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:11:09,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:11:11,571.571 INFO    ] ================================================
[2026-06-19 13:11:11,586.586 INFO    ] Launching Daemon at Fri Jun 19 13:11:11 IST 2026
[2026-06-19 13:11:11,596.596 INFO    ] ================================================
[2026-06-19 13:11:12,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:11:12
[2026-06-19 13:11:12,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:11:13,008.008 INFO    ] Initializing speech engine...
[2026-06-19 13:11:13,031.031 INFO    ] 2026-06-19 13:11:13
[2026-06-19 13:11:13,287.287 INFO    ] 2026-06-19 13:11:13
[2026-06-19 13:11:13,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:11:13,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:11:13,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:11:13,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:11:13,781.781 INFO    ] time= 19/06/2026 13:11:13
[2026-06-19 13:11:13,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:11:13,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:11:14,013.013 INFO    ] No existing commands found in stream
[2026-06-19 13:11:19,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:11:19,036.036 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 13:11:21,390.390 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:11:21,392.392 INFO    ] Checking for system updates...
[2026-06-19 13:11:21,433.433 INFO    ] 200
[2026-06-19 13:11:21,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:21,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:11:21,497.497 INFO    ] No update needed
[2026-06-19 13:11:21,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 13:11:21,534.534 INFO    ] 200
[2026-06-19 13:11:21,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:21,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:11:21,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:11:21,623.623 INFO    ] No camera update needed
[2026-06-19 13:11:21,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:11:21,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:11:21,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:11:21,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:11:23,679.679 INFO    ] ================================================
[2026-06-19 13:11:23,694.694 INFO    ] Launching Daemon at Fri Jun 19 13:11:23 IST 2026
[2026-06-19 13:11:23,705.705 INFO    ] ================================================
[2026-06-19 13:11:24,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:11:24
[2026-06-19 13:11:24,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:11:25,180.180 INFO    ] Initializing speech engine...
[2026-06-19 13:11:25,188.188 INFO    ] 2026-06-19 13:11:25
[2026-06-19 13:11:25,460.460 INFO    ] 2026-06-19 13:11:25
[2026-06-19 13:11:25,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:11:25,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:11:25,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:11:25,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:11:25,997.997 INFO    ] time= 19/06/2026 13:11:25
[2026-06-19 13:11:26,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:11:26,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:11:26,150.150 INFO    ] No existing commands found in stream
[2026-06-19 13:11:31,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:11:31,168.168 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 13:11:34,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:11:34,620.620 INFO    ] Checking for system updates...
[2026-06-19 13:11:34,656.656 INFO    ] 200
[2026-06-19 13:11:34,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:34,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:11:34,716.716 INFO    ] No update needed
[2026-06-19 13:11:34,719.719 INFO    ] Checking for camera pi updates...
[2026-06-19 13:11:34,761.761 INFO    ] 200
[2026-06-19 13:11:34,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:34,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:11:34,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:11:34,851.851 INFO    ] No camera update needed
[2026-06-19 13:11:34,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:11:34,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:11:34,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:11:34,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:11:36,911.911 INFO    ] ================================================
[2026-06-19 13:11:36,926.926 INFO    ] Launching Daemon at Fri Jun 19 13:11:36 IST 2026
[2026-06-19 13:11:36,937.937 INFO    ] ================================================
[2026-06-19 13:11:37,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:11:37
[2026-06-19 13:11:38,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:11:38,395.395 INFO    ] Initializing speech engine...
[2026-06-19 13:11:38,405.405 INFO    ] 2026-06-19 13:11:38
[2026-06-19 13:11:38,663.663 INFO    ] 2026-06-19 13:11:38
[2026-06-19 13:11:38,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:11:38,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:11:38,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:11:39,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:11:39,124.124 INFO    ] time= 19/06/2026 13:11:39
[2026-06-19 13:11:39,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:11:39,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:11:39,343.343 INFO    ] No existing commands found in stream
[2026-06-19 13:11:44,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:11:44,379.379 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 13:11:48,607.607 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:11:48,609.609 INFO    ] Checking for system updates...
[2026-06-19 13:11:48,649.649 INFO    ] 200
[2026-06-19 13:11:48,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:48,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:11:48,706.706 INFO    ] No update needed
[2026-06-19 13:11:48,708.708 INFO    ] Checking for camera pi updates...
[2026-06-19 13:11:48,742.742 INFO    ] 200
[2026-06-19 13:11:48,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:48,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:11:48,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:11:48,816.816 INFO    ] No camera update needed
[2026-06-19 13:11:48,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:11:48,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:11:48,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:11:48,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:11:50,873.873 INFO    ] ================================================
[2026-06-19 13:11:50,890.890 INFO    ] Launching Daemon at Fri Jun 19 13:11:50 IST 2026
[2026-06-19 13:11:50,902.902 INFO    ] ================================================
[2026-06-19 13:11:51,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:11:51
[2026-06-19 13:11:52,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:11:52,519.519 INFO    ] Initializing speech engine...
[2026-06-19 13:11:52,531.531 INFO    ] 2026-06-19 13:11:52
[2026-06-19 13:11:52,810.810 INFO    ] 2026-06-19 13:11:52
[2026-06-19 13:11:52,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:11:53,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:11:53,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:11:53,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:11:53,346.346 INFO    ] time= 19/06/2026 13:11:53
[2026-06-19 13:11:53,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:11:53,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:11:53,491.491 INFO    ] No existing commands found in stream
[2026-06-19 13:11:58,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:11:58,516.516 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 13:11:59,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:11:59,629.629 INFO    ] Checking for system updates...
[2026-06-19 13:11:59,667.667 INFO    ] 200
[2026-06-19 13:11:59,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:59,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:11:59,733.733 INFO    ] No update needed
[2026-06-19 13:11:59,736.736 INFO    ] Checking for camera pi updates...
[2026-06-19 13:11:59,775.775 INFO    ] 200
[2026-06-19 13:11:59,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:11:59,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:11:59,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:11:59,866.866 INFO    ] No camera update needed
[2026-06-19 13:11:59,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:11:59,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:11:59,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:11:59,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:12:01,922.922 INFO    ] ================================================
[2026-06-19 13:12:01,946.946 INFO    ] Launching Daemon at Fri Jun 19 13:12:01 IST 2026
[2026-06-19 13:12:01,958.958 INFO    ] ================================================
[2026-06-19 13:12:02,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:12:02
[2026-06-19 13:12:03,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:12:03,732.732 INFO    ] Initializing speech engine...
[2026-06-19 13:12:03,747.747 INFO    ] 2026-06-19 13:12:03
[2026-06-19 13:12:04,032.032 INFO    ] 2026-06-19 13:12:04
[2026-06-19 13:12:04,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:12:04,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:12:04,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:12:04,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:12:04,503.503 INFO    ] time= 19/06/2026 13:12:04
[2026-06-19 13:12:04,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:12:04,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:12:04,696.696 INFO    ] No existing commands found in stream
[2026-06-19 13:12:09,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:12:09,725.725 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 13:12:11,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:12:11,619.619 INFO    ] Checking for system updates...
[2026-06-19 13:12:11,657.657 INFO    ] 200
[2026-06-19 13:12:11,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:12:11,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:12:11,720.720 INFO    ] No update needed
[2026-06-19 13:12:11,722.722 INFO    ] Checking for camera pi updates...
[2026-06-19 13:12:11,759.759 INFO    ] 200
[2026-06-19 13:12:11,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:12:11,801.801 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:12:11,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:12:11,945.945 INFO    ] No camera update needed
[2026-06-19 13:12:11,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:12:11,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:12:11,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:12:11,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:12:14,000.000 INFO    ] ================================================
[2026-06-19 13:12:14,015.015 INFO    ] Launching Daemon at Fri Jun 19 13:12:14 IST 2026
[2026-06-19 13:12:14,025.025 INFO    ] ================================================
[2026-06-19 13:12:14,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:12:14
[2026-06-19 13:12:15,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:12:15,484.484 INFO    ] Initializing speech engine...
[2026-06-19 13:12:15,495.495 INFO    ] 2026-06-19 13:12:15
[2026-06-19 13:12:15,757.757 INFO    ] 2026-06-19 13:12:15
[2026-06-19 13:12:15,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:12:16,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:12:16,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:12:16,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:12:16,228.228 INFO    ] time= 19/06/2026 13:12:16
[2026-06-19 13:12:16,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:12:16,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:12:16,452.452 INFO    ] No existing commands found in stream
[2026-06-19 13:12:21,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:12:21,470.470 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 13:12:24,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:12:24,441.441 INFO    ] Checking for system updates...
[2026-06-19 13:12:24,477.477 INFO    ] 200
[2026-06-19 13:12:24,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:12:24,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:12:24,535.535 INFO    ] No update needed
[2026-06-19 13:12:24,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 13:12:24,571.571 INFO    ] 200
[2026-06-19 13:12:24,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:12:24,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:12:24,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:12:24,646.646 INFO    ] No camera update needed
[2026-06-19 13:12:24,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:12:24,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:12:24,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:12:24,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:12:26,702.702 INFO    ] ================================================
[2026-06-19 13:12:26,718.718 INFO    ] Launching Daemon at Fri Jun 19 13:12:26 IST 2026
[2026-06-19 13:12:26,729.729 INFO    ] ================================================
[2026-06-19 13:12:27,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:12:27
[2026-06-19 13:12:27,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:12:28,150.150 INFO    ] Initializing speech engine...
[2026-06-19 13:12:28,155.155 INFO    ] 2026-06-19 13:12:28
[2026-06-19 13:12:28,432.432 INFO    ] 2026-06-19 13:12:28
[2026-06-19 13:12:28,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:12:28,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:12:28,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:12:28,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:12:28,915.915 INFO    ] time= 19/06/2026 13:12:28
[2026-06-19 13:12:28,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:12:29,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:12:29,151.151 INFO    ] No existing commands found in stream
[2026-06-19 13:12:34,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:12:34,176.176 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 13:12:37,470.470 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:12:37,473.473 INFO    ] Checking for system updates...
[2026-06-19 13:12:37,508.508 INFO    ] 200
[2026-06-19 13:12:37,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:12:37,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:12:37,567.567 INFO    ] No update needed
[2026-06-19 13:12:37,569.569 INFO    ] Checking for camera pi updates...
[2026-06-19 13:12:37,606.606 INFO    ] 200
[2026-06-19 13:12:37,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:12:37,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:12:37,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:12:37,699.699 INFO    ] No camera update needed
[2026-06-19 13:12:37,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:12:37,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:12:37,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:12:37,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:12:39,756.756 INFO    ] ================================================
[2026-06-19 13:12:39,772.772 INFO    ] Launching Daemon at Fri Jun 19 13:12:39 IST 2026
[2026-06-19 13:12:39,783.783 INFO    ] ================================================
[2026-06-19 13:12:40,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:12:40
[2026-06-19 13:12:41,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:12:41,391.391 INFO    ] Initializing speech engine...
[2026-06-19 13:12:41,402.402 INFO    ] 2026-06-19 13:12:41
[2026-06-19 13:12:41,678.678 INFO    ] 2026-06-19 13:12:41
[2026-06-19 13:12:41,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:12:42,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:12:42,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:12:42,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:12:42,218.218 INFO    ] time= 19/06/2026 13:12:42
[2026-06-19 13:12:42,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:12:42,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:12:42,373.373 INFO    ] No existing commands found in stream
[2026-06-19 13:12:47,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:12:47,397.397 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 13:12:50,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:12:50,292.292 INFO    ] Checking for system updates...
[2026-06-19 13:12:50,330.330 INFO    ] 200
[2026-06-19 13:12:50,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:12:50,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:12:50,390.390 INFO    ] No update needed
[2026-06-19 13:12:50,392.392 INFO    ] Checking for camera pi updates...
[2026-06-19 13:12:50,430.430 INFO    ] 200
[2026-06-19 13:12:50,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:12:50,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:12:50,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:12:50,517.517 INFO    ] No camera update needed
[2026-06-19 13:12:50,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:12:50,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:12:50,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:12:50,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:12:52,576.576 INFO    ] ================================================
[2026-06-19 13:12:52,591.591 INFO    ] Launching Daemon at Fri Jun 19 13:12:52 IST 2026
[2026-06-19 13:12:52,602.602 INFO    ] ================================================
[2026-06-19 13:12:53,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:12:53
[2026-06-19 13:12:53,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:12:54,039.039 INFO    ] Initializing speech engine...
[2026-06-19 13:12:54,055.055 INFO    ] 2026-06-19 13:12:54
[2026-06-19 13:12:54,308.308 INFO    ] 2026-06-19 13:12:54
[2026-06-19 13:12:54,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:12:54,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:12:54,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:12:54,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:12:54,779.779 INFO    ] time= 19/06/2026 13:12:54
[2026-06-19 13:12:54,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:12:54,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:12:55,014.014 INFO    ] No existing commands found in stream
[2026-06-19 13:13:00,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:13:00,032.032 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 13:13:01,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:13:01,412.412 INFO    ] Checking for system updates...
[2026-06-19 13:13:01,503.503 INFO    ] 200
[2026-06-19 13:13:01,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:01,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:13:01,616.616 INFO    ] No update needed
[2026-06-19 13:13:01,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 13:13:01,666.666 INFO    ] 200
[2026-06-19 13:13:01,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:01,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:13:01,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:13:01,796.796 INFO    ] No camera update needed
[2026-06-19 13:13:01,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:13:01,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:13:01,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:13:01,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:13:03,873.873 INFO    ] ================================================
[2026-06-19 13:13:03,888.888 INFO    ] Launching Daemon at Fri Jun 19 13:13:03 IST 2026
[2026-06-19 13:13:03,899.899 INFO    ] ================================================
[2026-06-19 13:13:04,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:13:04
[2026-06-19 13:13:05,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:13:05,305.305 INFO    ] Initializing speech engine...
[2026-06-19 13:13:05,328.328 INFO    ] 2026-06-19 13:13:05
[2026-06-19 13:13:05,582.582 INFO    ] 2026-06-19 13:13:05
[2026-06-19 13:13:05,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:13:05,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:13:05,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:13:06,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:13:06,077.077 INFO    ] time= 19/06/2026 13:13:06
[2026-06-19 13:13:06,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:13:06,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:13:06,306.306 INFO    ] No existing commands found in stream
[2026-06-19 13:13:11,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:13:11,330.330 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 13:13:13,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:13:13,159.159 INFO    ] Checking for system updates...
[2026-06-19 13:13:13,196.196 INFO    ] 200
[2026-06-19 13:13:13,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:13,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:13:13,263.263 INFO    ] No update needed
[2026-06-19 13:13:13,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 13:13:13,304.304 INFO    ] 200
[2026-06-19 13:13:13,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:13,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:13:13,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:13:13,394.394 INFO    ] No camera update needed
[2026-06-19 13:13:13,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:13:13,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:13:13,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:13:13,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:13:15,451.451 INFO    ] ================================================
[2026-06-19 13:13:15,467.467 INFO    ] Launching Daemon at Fri Jun 19 13:13:15 IST 2026
[2026-06-19 13:13:15,478.478 INFO    ] ================================================
[2026-06-19 13:13:16,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:13:16
[2026-06-19 13:13:16,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:13:17,112.112 INFO    ] Initializing speech engine...
[2026-06-19 13:13:17,123.123 INFO    ] 2026-06-19 13:13:17
[2026-06-19 13:13:17,409.409 INFO    ] 2026-06-19 13:13:17
[2026-06-19 13:13:17,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:13:17,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:13:17,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:13:17,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:13:17,938.938 INFO    ] time= 19/06/2026 13:13:17
[2026-06-19 13:13:17,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:13:17,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:13:18,091.091 INFO    ] No existing commands found in stream
[2026-06-19 13:13:23,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:13:23,109.109 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 13:13:24,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:13:24,507.507 INFO    ] Checking for system updates...
[2026-06-19 13:13:24,545.545 INFO    ] 200
[2026-06-19 13:13:24,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:24,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:13:24,604.604 INFO    ] No update needed
[2026-06-19 13:13:24,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 13:13:24,641.641 INFO    ] 200
[2026-06-19 13:13:24,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:24,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:13:24,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:13:24,726.726 INFO    ] No camera update needed
[2026-06-19 13:13:24,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:13:24,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:13:24,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:13:24,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:13:26,782.782 INFO    ] ================================================
[2026-06-19 13:13:26,798.798 INFO    ] Launching Daemon at Fri Jun 19 13:13:26 IST 2026
[2026-06-19 13:13:26,809.809 INFO    ] ================================================
[2026-06-19 13:13:27,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:13:27
[2026-06-19 13:13:27,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:13:28,217.217 INFO    ] Initializing speech engine...
[2026-06-19 13:13:28,226.226 INFO    ] 2026-06-19 13:13:28
[2026-06-19 13:13:28,520.520 INFO    ] 2026-06-19 13:13:28
[2026-06-19 13:13:28,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:13:28,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:13:28,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:13:28,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:13:28,934.934 INFO    ] time= 19/06/2026 13:13:28
[2026-06-19 13:13:28,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:13:28,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:13:29,021.021 INFO    ] No existing commands found in stream
[2026-06-19 13:13:34,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:13:34,054.054 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 13:13:35,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:13:35,619.619 INFO    ] Checking for system updates...
[2026-06-19 13:13:35,655.655 INFO    ] 200
[2026-06-19 13:13:35,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:35,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:13:35,712.712 INFO    ] No update needed
[2026-06-19 13:13:35,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 13:13:35,749.749 INFO    ] 200
[2026-06-19 13:13:35,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:35,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:13:35,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:13:35,840.840 INFO    ] No camera update needed
[2026-06-19 13:13:35,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:13:35,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:13:35,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:13:35,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:13:37,897.897 INFO    ] ================================================
[2026-06-19 13:13:37,913.913 INFO    ] Launching Daemon at Fri Jun 19 13:13:37 IST 2026
[2026-06-19 13:13:37,924.924 INFO    ] ================================================
[2026-06-19 13:13:38,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:13:38
[2026-06-19 13:13:39,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:13:39,528.528 INFO    ] Initializing speech engine...
[2026-06-19 13:13:39,536.536 INFO    ] 2026-06-19 13:13:39
[2026-06-19 13:13:39,812.812 INFO    ] 2026-06-19 13:13:39
[2026-06-19 13:13:39,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:13:40,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:13:40,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:13:40,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:13:40,375.375 INFO    ] time= 19/06/2026 13:13:40
[2026-06-19 13:13:40,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:13:40,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:13:40,535.535 INFO    ] No existing commands found in stream
[2026-06-19 13:13:45,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:13:45,558.558 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 13:13:49,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:13:49,563.563 INFO    ] Checking for system updates...
[2026-06-19 13:13:49,600.600 INFO    ] 200
[2026-06-19 13:13:49,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:49,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:13:49,659.659 INFO    ] No update needed
[2026-06-19 13:13:49,662.662 INFO    ] Checking for camera pi updates...
[2026-06-19 13:13:49,700.700 INFO    ] 200
[2026-06-19 13:13:49,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:13:49,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:13:49,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:13:49,782.782 INFO    ] No camera update needed
[2026-06-19 13:13:49,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:13:49,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:13:49,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:13:49,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:13:51,840.840 INFO    ] ================================================
[2026-06-19 13:13:51,856.856 INFO    ] Launching Daemon at Fri Jun 19 13:13:51 IST 2026
[2026-06-19 13:13:51,866.866 INFO    ] ================================================
[2026-06-19 13:13:52,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:13:52
[2026-06-19 13:13:53,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:13:53,316.316 INFO    ] Initializing speech engine...
[2026-06-19 13:13:53,325.325 INFO    ] 2026-06-19 13:13:53
[2026-06-19 13:13:53,585.585 INFO    ] 2026-06-19 13:13:53
[2026-06-19 13:13:53,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:13:53,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:13:53,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:13:54,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:13:54,071.071 INFO    ] time= 19/06/2026 13:13:54
[2026-06-19 13:13:54,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:13:54,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:13:54,291.291 INFO    ] No existing commands found in stream
[2026-06-19 13:13:59,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:13:59,306.306 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 13:14:00,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:14:00,417.417 INFO    ] Checking for system updates...
[2026-06-19 13:14:00,454.454 INFO    ] 200
[2026-06-19 13:14:00,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:00,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:14:00,515.515 INFO    ] No update needed
[2026-06-19 13:14:00,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 13:14:00,552.552 INFO    ] 200
[2026-06-19 13:14:00,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:00,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:14:00,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:14:00,644.644 INFO    ] No camera update needed
[2026-06-19 13:14:00,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:14:00,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:14:00,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:14:00,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:14:02,717.717 INFO    ] ================================================
[2026-06-19 13:14:02,735.735 INFO    ] Launching Daemon at Fri Jun 19 13:14:02 IST 2026
[2026-06-19 13:14:02,747.747 INFO    ] ================================================
[2026-06-19 13:14:03,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:14:03
[2026-06-19 13:14:03,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:14:04,230.230 INFO    ] Initializing speech engine...
[2026-06-19 13:14:04,245.245 INFO    ] 2026-06-19 13:14:04
[2026-06-19 13:14:04,502.502 INFO    ] 2026-06-19 13:14:04
[2026-06-19 13:14:04,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:14:04,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:14:04,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:14:04,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:14:04,873.873 INFO    ] time= 19/06/2026 13:14:04
[2026-06-19 13:14:04,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:14:04,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:14:05,069.069 INFO    ] No existing commands found in stream
[2026-06-19 13:14:10,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:14:10,087.087 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 13:14:11,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:14:11,872.872 INFO    ] Checking for system updates...
[2026-06-19 13:14:11,910.910 INFO    ] 200
[2026-06-19 13:14:11,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:11,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:14:11,971.971 INFO    ] No update needed
[2026-06-19 13:14:11,974.974 INFO    ] Checking for camera pi updates...
[2026-06-19 13:14:12,009.009 INFO    ] 200
[2026-06-19 13:14:12,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:12,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:14:12,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:14:12,100.100 INFO    ] No camera update needed
[2026-06-19 13:14:12,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:14:12,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:14:12,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:14:12,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:14:14,163.163 INFO    ] ================================================
[2026-06-19 13:14:14,179.179 INFO    ] Launching Daemon at Fri Jun 19 13:14:14 IST 2026
[2026-06-19 13:14:14,190.190 INFO    ] ================================================
[2026-06-19 13:14:14,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:14:14
[2026-06-19 13:14:15,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:14:15,642.642 INFO    ] Initializing speech engine...
[2026-06-19 13:14:15,652.652 INFO    ] 2026-06-19 13:14:15
[2026-06-19 13:14:15,959.959 INFO    ] 2026-06-19 13:14:15
[2026-06-19 13:14:15,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:14:16,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:14:16,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:14:16,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:14:16,356.356 INFO    ] time= 19/06/2026 13:14:16
[2026-06-19 13:14:16,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:14:16,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:14:16,488.488 INFO    ] No existing commands found in stream
[2026-06-19 13:14:21,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:14:21,503.503 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 13:14:24,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:14:24,715.715 INFO    ] Checking for system updates...
[2026-06-19 13:14:24,751.751 INFO    ] 200
[2026-06-19 13:14:24,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:24,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:14:24,809.809 INFO    ] No update needed
[2026-06-19 13:14:24,812.812 INFO    ] Checking for camera pi updates...
[2026-06-19 13:14:24,846.846 INFO    ] 200
[2026-06-19 13:14:24,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:24,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:14:25,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:14:25,041.041 INFO    ] No camera update needed
[2026-06-19 13:14:25,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:14:25,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:14:25,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:14:25,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:14:27,097.097 INFO    ] ================================================
[2026-06-19 13:14:27,113.113 INFO    ] Launching Daemon at Fri Jun 19 13:14:27 IST 2026
[2026-06-19 13:14:27,124.124 INFO    ] ================================================
[2026-06-19 13:14:27,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:14:27
[2026-06-19 13:14:28,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:14:28,765.765 INFO    ] Initializing speech engine...
[2026-06-19 13:14:28,778.778 INFO    ] 2026-06-19 13:14:28
[2026-06-19 13:14:29,097.097 INFO    ] 2026-06-19 13:14:29
[2026-06-19 13:14:29,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:14:29,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:14:29,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:14:29,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:14:29,619.619 INFO    ] time= 19/06/2026 13:14:29
[2026-06-19 13:14:29,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:14:29,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:14:29,783.783 INFO    ] No existing commands found in stream
[2026-06-19 13:14:34,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:14:34,822.822 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 13:14:37,641.641 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:14:37,644.644 INFO    ] Checking for system updates...
[2026-06-19 13:14:37,682.682 INFO    ] 200
[2026-06-19 13:14:37,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:37,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:14:37,740.740 INFO    ] No update needed
[2026-06-19 13:14:37,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 13:14:37,777.777 INFO    ] 200
[2026-06-19 13:14:37,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:37,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:14:37,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:14:37,865.865 INFO    ] No camera update needed
[2026-06-19 13:14:37,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:14:37,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:14:37,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:14:37,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:14:39,921.921 INFO    ] ================================================
[2026-06-19 13:14:39,937.937 INFO    ] Launching Daemon at Fri Jun 19 13:14:39 IST 2026
[2026-06-19 13:14:39,949.949 INFO    ] ================================================
[2026-06-19 13:14:40,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:14:40
[2026-06-19 13:14:41,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:14:41,412.412 INFO    ] Initializing speech engine...
[2026-06-19 13:14:41,420.420 INFO    ] 2026-06-19 13:14:41
[2026-06-19 13:14:41,699.699 INFO    ] 2026-06-19 13:14:41
[2026-06-19 13:14:41,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:14:42,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:14:42,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:14:42,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:14:42,242.242 INFO    ] time= 19/06/2026 13:14:42
[2026-06-19 13:14:42,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:14:42,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:14:42,405.405 INFO    ] No existing commands found in stream
[2026-06-19 13:14:47,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:14:47,435.435 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 13:14:50,724.724 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:14:50,727.727 INFO    ] Checking for system updates...
[2026-06-19 13:14:50,764.764 INFO    ] 200
[2026-06-19 13:14:50,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:50,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:14:50,822.822 INFO    ] No update needed
[2026-06-19 13:14:50,825.825 INFO    ] Checking for camera pi updates...
[2026-06-19 13:14:50,859.859 INFO    ] 200
[2026-06-19 13:14:50,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:14:50,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:14:50,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:14:50,943.943 INFO    ] No camera update needed
[2026-06-19 13:14:50,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:14:50,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:14:50,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:14:50,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:14:53,997.997 INFO    ] ================================================
[2026-06-19 13:14:53,013.013 INFO    ] Launching Daemon at Fri Jun 19 13:14:53 IST 2026
[2026-06-19 13:14:53,024.024 INFO    ] ================================================
[2026-06-19 13:14:53,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:14:53
[2026-06-19 13:14:54,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:14:54,436.436 INFO    ] Initializing speech engine...
[2026-06-19 13:14:54,450.450 INFO    ] 2026-06-19 13:14:54
[2026-06-19 13:14:54,713.713 INFO    ] 2026-06-19 13:14:54
[2026-06-19 13:14:54,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:14:55,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:14:55,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:14:55,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:14:55,266.266 INFO    ] time= 19/06/2026 13:14:55
[2026-06-19 13:14:55,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:14:55,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:14:55,420.420 INFO    ] No existing commands found in stream
[2026-06-19 13:15:00,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:15:00,437.437 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 13:15:01,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:15:01,280.280 INFO    ] Checking for system updates...
[2026-06-19 13:15:01,430.430 INFO    ] 200
[2026-06-19 13:15:01,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:15:01,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:15:01,766.766 INFO    ] No update needed
[2026-06-19 13:15:01,797.797 INFO    ] Checking for camera pi updates...
[2026-06-19 13:15:01,952.952 INFO    ] 200
[2026-06-19 13:15:01,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:15:02,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:15:02,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:15:02,119.119 INFO    ] No camera update needed
[2026-06-19 13:15:02,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:15:02,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:15:02,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:15:02,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:15:04,239.239 INFO    ] ================================================
[2026-06-19 13:15:04,255.255 INFO    ] Launching Daemon at Fri Jun 19 13:15:04 IST 2026
[2026-06-19 13:15:04,266.266 INFO    ] ================================================
[2026-06-19 13:15:04,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:15:04
[2026-06-19 13:15:05,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:15:05,690.690 INFO    ] Initializing speech engine...
[2026-06-19 13:15:05,704.704 INFO    ] 2026-06-19 13:15:05
[2026-06-19 13:15:05,995.995 INFO    ] 2026-06-19 13:15:05
[2026-06-19 13:15:06,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:15:06,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:15:06,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:15:06,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:15:06,398.398 INFO    ] time= 19/06/2026 13:15:06
[2026-06-19 13:15:06,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:15:06,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:15:06,527.527 INFO    ] No existing commands found in stream
[2026-06-19 13:15:11,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:15:11,558.558 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 13:15:14,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:15:14,538.538 INFO    ] Checking for system updates...
[2026-06-19 13:15:14,580.580 INFO    ] 200
[2026-06-19 13:15:14,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:15:14,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:15:14,651.651 INFO    ] No update needed
[2026-06-19 13:15:14,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 13:15:14,691.691 INFO    ] 200
[2026-06-19 13:15:14,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:15:14,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:15:14,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:15:14,785.785 INFO    ] No camera update needed
[2026-06-19 13:15:14,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:15:14,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:15:14,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:15:14,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:15:16,840.840 INFO    ] ================================================
[2026-06-19 13:15:16,857.857 INFO    ] Launching Daemon at Fri Jun 19 13:15:16 IST 2026
[2026-06-19 13:15:16,868.868 INFO    ] ================================================
[2026-06-19 13:15:17,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:15:17
[2026-06-19 13:15:18,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:15:18,326.326 INFO    ] Initializing speech engine...
[2026-06-19 13:15:18,332.332 INFO    ] 2026-06-19 13:15:18
[2026-06-19 13:15:18,593.593 INFO    ] 2026-06-19 13:15:18
[2026-06-19 13:15:18,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:15:18,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:15:18,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:15:19,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:15:19,136.136 INFO    ] time= 19/06/2026 13:15:19
[2026-06-19 13:15:19,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:15:19,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:15:19,292.292 INFO    ] No existing commands found in stream
[2026-06-19 13:15:24,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:15:24,318.318 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 13:15:30,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:15:30,320.320 INFO    ] Checking for system updates...
[2026-06-19 13:15:30,366.366 INFO    ] 200
[2026-06-19 13:15:30,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 13:15:30,372.372 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 13:15:30,375.375 INFO    ] Checking for camera pi updates...
[2026-06-19 13:15:30,421.421 INFO    ] 200
[2026-06-19 13:15:30,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 13:15:30,426.426 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 13:15:30,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:15:30,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:15:30,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:15:30,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:15:32,487.487 INFO    ] ================================================
[2026-06-19 13:15:32,504.504 INFO    ] Launching Daemon at Fri Jun 19 13:15:32 IST 2026
[2026-06-19 13:15:32,516.516 INFO    ] ================================================
[2026-06-19 13:15:33,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:15:33
[2026-06-19 13:15:33,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:15:34,056.056 INFO    ] Initializing speech engine...
[2026-06-19 13:15:34,070.070 INFO    ] 2026-06-19 13:15:34
[2026-06-19 13:15:34,331.331 INFO    ] 2026-06-19 13:15:34
[2026-06-19 13:15:34,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:15:34,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:15:34,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:15:34,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:15:34,836.836 INFO    ] time= 19/06/2026 13:15:34
[2026-06-19 13:15:34,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:15:34,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:15:35,071.071 INFO    ] No existing commands found in stream
[2026-06-19 13:15:40,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:15:40,098.098 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 13:15:44,164.164 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:15:44,167.167 INFO    ] Checking for system updates...
[2026-06-19 13:15:44,204.204 INFO    ] 200
[2026-06-19 13:15:44,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:15:44,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:15:44,271.271 INFO    ] No update needed
[2026-06-19 13:15:44,273.273 INFO    ] Checking for camera pi updates...
[2026-06-19 13:15:44,307.307 INFO    ] 200
[2026-06-19 13:15:44,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:15:44,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:15:44,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:15:44,396.396 INFO    ] No camera update needed
[2026-06-19 13:15:44,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:15:44,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:15:44,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:15:44,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:15:46,451.451 INFO    ] ================================================
[2026-06-19 13:15:46,467.467 INFO    ] Launching Daemon at Fri Jun 19 13:15:46 IST 2026
[2026-06-19 13:15:46,478.478 INFO    ] ================================================
[2026-06-19 13:15:47,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:15:47
[2026-06-19 13:15:47,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:15:47,902.902 INFO    ] Initializing speech engine...
[2026-06-19 13:15:47,910.910 INFO    ] 2026-06-19 13:15:47
[2026-06-19 13:15:48,208.208 INFO    ] 2026-06-19 13:15:48
[2026-06-19 13:15:48,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:15:48,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:15:48,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:15:48,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:15:48,608.608 INFO    ] time= 19/06/2026 13:15:48
[2026-06-19 13:15:48,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:15:48,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:15:48,717.717 INFO    ] No existing commands found in stream
[2026-06-19 13:15:53,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:15:53,732.732 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 13:15:56,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:15:56,597.597 INFO    ] Checking for system updates...
[2026-06-19 13:15:56,634.634 INFO    ] 200
[2026-06-19 13:15:56,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:15:56,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:15:56,700.700 INFO    ] No update needed
[2026-06-19 13:15:56,702.702 INFO    ] Checking for camera pi updates...
[2026-06-19 13:15:56,740.740 INFO    ] 200
[2026-06-19 13:15:56,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:15:56,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:15:56,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:15:56,831.831 INFO    ] No camera update needed
[2026-06-19 13:15:56,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:15:56,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:15:56,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:15:56,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:15:58,885.885 INFO    ] ================================================
[2026-06-19 13:15:58,902.902 INFO    ] Launching Daemon at Fri Jun 19 13:15:58 IST 2026
[2026-06-19 13:15:58,913.913 INFO    ] ================================================
[2026-06-19 13:15:59,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:15:59
[2026-06-19 13:16:00,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:16:00,538.538 INFO    ] Initializing speech engine...
[2026-06-19 13:16:00,549.549 INFO    ] 2026-06-19 13:16:00
[2026-06-19 13:16:00,838.838 INFO    ] 2026-06-19 13:16:00
[2026-06-19 13:16:00,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:16:01,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:16:01,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:16:01,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:16:01,390.390 INFO    ] time= 19/06/2026 13:16:01
[2026-06-19 13:16:01,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:16:01,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:16:01,530.530 INFO    ] No existing commands found in stream
[2026-06-19 13:16:06,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:16:06,563.563 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 13:16:10,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:16:10,008.008 INFO    ] Checking for system updates...
[2026-06-19 13:16:10,046.046 INFO    ] 200
[2026-06-19 13:16:10,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:16:10,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:16:10,104.104 INFO    ] No update needed
[2026-06-19 13:16:10,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 13:16:10,140.140 INFO    ] 200
[2026-06-19 13:16:10,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:16:10,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:16:10,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:16:10,231.231 INFO    ] No camera update needed
[2026-06-19 13:16:10,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:16:10,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:16:10,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:16:10,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:16:12,286.286 INFO    ] ================================================
[2026-06-19 13:16:12,302.302 INFO    ] Launching Daemon at Fri Jun 19 13:16:12 IST 2026
[2026-06-19 13:16:12,331.331 INFO    ] ================================================
[2026-06-19 13:16:12,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:16:12
[2026-06-19 13:16:13,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:16:13,779.779 INFO    ] Initializing speech engine...
[2026-06-19 13:16:13,788.788 INFO    ] 2026-06-19 13:16:13
[2026-06-19 13:16:14,088.088 INFO    ] 2026-06-19 13:16:14
[2026-06-19 13:16:14,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:16:14,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:16:14,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:16:14,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:16:14,608.608 INFO    ] time= 19/06/2026 13:16:14
[2026-06-19 13:16:14,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:16:14,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:16:14,863.863 INFO    ] No existing commands found in stream
[2026-06-19 13:16:19,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:16:19,889.889 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 13:16:23,526.526 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:16:23,529.529 INFO    ] Checking for system updates...
[2026-06-19 13:16:23,570.570 INFO    ] 200
[2026-06-19 13:16:23,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:16:23,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:16:23,628.628 INFO    ] No update needed
[2026-06-19 13:16:23,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 13:16:23,664.664 INFO    ] 200
[2026-06-19 13:16:23,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:16:23,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:16:23,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:16:23,761.761 INFO    ] No camera update needed
[2026-06-19 13:16:23,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:16:23,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:16:23,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:16:23,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:16:25,817.817 INFO    ] ================================================
[2026-06-19 13:16:25,832.832 INFO    ] Launching Daemon at Fri Jun 19 13:16:25 IST 2026
[2026-06-19 13:16:25,843.843 INFO    ] ================================================
[2026-06-19 13:16:26,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:16:26
[2026-06-19 13:16:27,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:16:27,262.262 INFO    ] Initializing speech engine...
[2026-06-19 13:16:27,270.270 INFO    ] 2026-06-19 13:16:27
[2026-06-19 13:16:27,577.577 INFO    ] 2026-06-19 13:16:27
[2026-06-19 13:16:27,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:16:27,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:16:27,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:16:27,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:16:27,998.998 INFO    ] time= 19/06/2026 13:16:27
[2026-06-19 13:16:28,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:16:28,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:16:28,207.207 INFO    ] No existing commands found in stream
[2026-06-19 13:16:33,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:16:33,235.235 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-19 13:16:37,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:16:37,279.279 INFO    ] Checking for system updates...
[2026-06-19 13:16:37,319.319 INFO    ] 200
[2026-06-19 13:16:37,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:16:37,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:16:37,377.377 INFO    ] No update needed
[2026-06-19 13:16:37,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 13:16:37,414.414 INFO    ] 200
[2026-06-19 13:16:37,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:16:37,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:16:37,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:16:37,516.516 INFO    ] No camera update needed
[2026-06-19 13:16:37,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:16:37,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:16:37,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:16:37,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:16:39,574.574 INFO    ] ================================================
[2026-06-19 13:16:39,594.594 INFO    ] Launching Daemon at Fri Jun 19 13:16:39 IST 2026
[2026-06-19 13:16:39,607.607 INFO    ] ================================================
[2026-06-19 13:16:40,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:16:40
[2026-06-19 13:16:40,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:16:41,096.096 INFO    ] Initializing speech engine...
[2026-06-19 13:16:41,106.106 INFO    ] 2026-06-19 13:16:41
[2026-06-19 13:16:41,400.400 INFO    ] 2026-06-19 13:16:41
[2026-06-19 13:16:41,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:16:41,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:16:41,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:16:41,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:16:41,818.818 INFO    ] time= 19/06/2026 13:16:41
[2026-06-19 13:16:41,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:16:41,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:16:42,000.000 INFO    ] No existing commands found in stream
[2026-06-19 13:16:47,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:16:47,033.033 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 13:16:49,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:16:49,491.491 INFO    ] Checking for system updates...
[2026-06-19 13:16:49,530.530 INFO    ] 200
[2026-06-19 13:16:49,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:16:49,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:16:49,588.588 INFO    ] No update needed
[2026-06-19 13:16:49,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 13:16:49,629.629 INFO    ] 200
[2026-06-19 13:16:49,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:16:49,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:16:49,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:16:49,705.705 INFO    ] No camera update needed
[2026-06-19 13:16:49,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:16:49,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:16:49,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:16:49,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:16:51,762.762 INFO    ] ================================================
[2026-06-19 13:16:51,778.778 INFO    ] Launching Daemon at Fri Jun 19 13:16:51 IST 2026
[2026-06-19 13:16:51,788.788 INFO    ] ================================================
[2026-06-19 13:16:52,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:16:52
[2026-06-19 13:16:52,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:16:53,243.243 INFO    ] Initializing speech engine...
[2026-06-19 13:16:53,250.250 INFO    ] 2026-06-19 13:16:53
[2026-06-19 13:16:53,545.545 INFO    ] 2026-06-19 13:16:53
[2026-06-19 13:16:53,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:16:53,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:16:53,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:16:53,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:16:53,964.964 INFO    ] time= 19/06/2026 13:16:53
[2026-06-19 13:16:53,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:16:54,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:16:54,161.161 INFO    ] No existing commands found in stream
[2026-06-19 13:16:59,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:16:59,184.184 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 13:17:02,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:17:02,997.997 INFO    ] Checking for system updates...
[2026-06-19 13:17:03,041.041 INFO    ] 200
[2026-06-19 13:17:03,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:03,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:17:03,108.108 INFO    ] No update needed
[2026-06-19 13:17:03,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 13:17:03,151.151 INFO    ] 200
[2026-06-19 13:17:03,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:03,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:17:03,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:17:03,265.265 INFO    ] No camera update needed
[2026-06-19 13:17:03,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:17:03,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:17:03,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:17:03,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:17:05,337.337 INFO    ] ================================================
[2026-06-19 13:17:05,353.353 INFO    ] Launching Daemon at Fri Jun 19 13:17:05 IST 2026
[2026-06-19 13:17:05,364.364 INFO    ] ================================================
[2026-06-19 13:17:05,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:17:05
[2026-06-19 13:17:06,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:17:06,814.814 INFO    ] Initializing speech engine...
[2026-06-19 13:17:06,829.829 INFO    ] 2026-06-19 13:17:06
[2026-06-19 13:17:07,118.118 INFO    ] 2026-06-19 13:17:07
[2026-06-19 13:17:07,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:17:07,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:17:07,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:17:07,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:17:07,535.535 INFO    ] time= 19/06/2026 13:17:07
[2026-06-19 13:17:07,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:17:07,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:17:07,628.628 INFO    ] No existing commands found in stream
[2026-06-19 13:17:12,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:17:12,647.647 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 13:17:13,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:17:13,424.424 INFO    ] Checking for system updates...
[2026-06-19 13:17:13,461.461 INFO    ] 200
[2026-06-19 13:17:13,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:13,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:17:13,521.521 INFO    ] No update needed
[2026-06-19 13:17:13,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 13:17:13,563.563 INFO    ] 200
[2026-06-19 13:17:13,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:13,613.613 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:17:13,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:17:13,656.656 INFO    ] No camera update needed
[2026-06-19 13:17:13,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:17:13,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:17:13,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:17:13,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:17:15,717.717 INFO    ] ================================================
[2026-06-19 13:17:15,733.733 INFO    ] Launching Daemon at Fri Jun 19 13:17:15 IST 2026
[2026-06-19 13:17:15,744.744 INFO    ] ================================================
[2026-06-19 13:17:16,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:17:16
[2026-06-19 13:17:17,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:17:17,383.383 INFO    ] Initializing speech engine...
[2026-06-19 13:17:17,396.396 INFO    ] 2026-06-19 13:17:17
[2026-06-19 13:17:17,690.690 INFO    ] 2026-06-19 13:17:17
[2026-06-19 13:17:17,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:17:17,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:17:18,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:17:18,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:17:18,233.233 INFO    ] time= 19/06/2026 13:17:18
[2026-06-19 13:17:18,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:17:18,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:17:18,391.391 INFO    ] No existing commands found in stream
[2026-06-19 13:17:23,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:17:23,412.412 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 13:17:24,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:17:24,534.534 INFO    ] Checking for system updates...
[2026-06-19 13:17:24,571.571 INFO    ] 200
[2026-06-19 13:17:24,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:24,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:17:24,639.639 INFO    ] No update needed
[2026-06-19 13:17:24,641.641 INFO    ] Checking for camera pi updates...
[2026-06-19 13:17:24,676.676 INFO    ] 200
[2026-06-19 13:17:24,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:24,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:17:24,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:17:24,773.773 INFO    ] No camera update needed
[2026-06-19 13:17:24,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:17:24,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:17:24,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:17:24,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:17:26,833.833 INFO    ] ================================================
[2026-06-19 13:17:26,848.848 INFO    ] Launching Daemon at Fri Jun 19 13:17:26 IST 2026
[2026-06-19 13:17:26,866.866 INFO    ] ================================================
[2026-06-19 13:17:27,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:17:27
[2026-06-19 13:17:28,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:17:28,292.292 INFO    ] Initializing speech engine...
[2026-06-19 13:17:28,301.301 INFO    ] 2026-06-19 13:17:28
[2026-06-19 13:17:28,595.595 INFO    ] 2026-06-19 13:17:28
[2026-06-19 13:17:28,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:17:28,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:17:28,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:17:28,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:17:28,974.974 INFO    ] time= 19/06/2026 13:17:28
[2026-06-19 13:17:28,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:17:29,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:17:29,099.099 INFO    ] No existing commands found in stream
[2026-06-19 13:17:34,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:17:34,114.114 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 13:17:37,235.235 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:17:37,237.237 INFO    ] Checking for system updates...
[2026-06-19 13:17:37,278.278 INFO    ] 200
[2026-06-19 13:17:37,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:37,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:17:37,344.344 INFO    ] No update needed
[2026-06-19 13:17:37,347.347 INFO    ] Checking for camera pi updates...
[2026-06-19 13:17:37,386.386 INFO    ] 200
[2026-06-19 13:17:37,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:37,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:17:37,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:17:37,478.478 INFO    ] No camera update needed
[2026-06-19 13:17:37,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:17:37,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:17:37,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:17:37,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:17:39,536.536 INFO    ] ================================================
[2026-06-19 13:17:39,552.552 INFO    ] Launching Daemon at Fri Jun 19 13:17:39 IST 2026
[2026-06-19 13:17:39,564.564 INFO    ] ================================================
[2026-06-19 13:17:40,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:17:40
[2026-06-19 13:17:40,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:17:41,171.171 INFO    ] Initializing speech engine...
[2026-06-19 13:17:41,182.182 INFO    ] 2026-06-19 13:17:41
[2026-06-19 13:17:41,461.461 INFO    ] 2026-06-19 13:17:41
[2026-06-19 13:17:41,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:17:41,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:17:41,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:17:41,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:17:41,998.998 INFO    ] time= 19/06/2026 13:17:41
[2026-06-19 13:17:42,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:17:42,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:17:42,134.134 INFO    ] No existing commands found in stream
[2026-06-19 13:17:47,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:17:47,167.167 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 13:17:49,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:17:49,996.996 INFO    ] Checking for system updates...
[2026-06-19 13:17:50,033.033 INFO    ] 200
[2026-06-19 13:17:50,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:50,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:17:50,100.100 INFO    ] No update needed
[2026-06-19 13:17:50,103.103 INFO    ] Checking for camera pi updates...
[2026-06-19 13:17:50,137.137 INFO    ] 200
[2026-06-19 13:17:50,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:17:50,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:17:50,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:17:50,229.229 INFO    ] No camera update needed
[2026-06-19 13:17:50,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:17:50,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:17:50,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:17:50,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:17:52,284.284 INFO    ] ================================================
[2026-06-19 13:17:52,300.300 INFO    ] Launching Daemon at Fri Jun 19 13:17:52 IST 2026
[2026-06-19 13:17:52,311.311 INFO    ] ================================================
[2026-06-19 13:17:52,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:17:52
[2026-06-19 13:17:53,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:17:53,884.884 INFO    ] Initializing speech engine...
[2026-06-19 13:17:53,893.893 INFO    ] 2026-06-19 13:17:53
[2026-06-19 13:17:54,191.191 INFO    ] 2026-06-19 13:17:54
[2026-06-19 13:17:54,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:17:54,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:17:54,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:17:54,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:17:54,677.677 INFO    ] time= 19/06/2026 13:17:54
[2026-06-19 13:17:54,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:17:54,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:17:54,896.896 INFO    ] No existing commands found in stream
[2026-06-19 13:17:59,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:17:59,915.915 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 13:18:03,590.590 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:18:03,593.593 INFO    ] Checking for system updates...
[2026-06-19 13:18:03,642.642 INFO    ] 200
[2026-06-19 13:18:03,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:03,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:18:03,713.713 INFO    ] No update needed
[2026-06-19 13:18:03,716.716 INFO    ] Checking for camera pi updates...
[2026-06-19 13:18:03,751.751 INFO    ] 200
[2026-06-19 13:18:03,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:03,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:18:03,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:18:03,849.849 INFO    ] No camera update needed
[2026-06-19 13:18:03,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:18:03,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:18:03,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:18:03,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:18:05,904.904 INFO    ] ================================================
[2026-06-19 13:18:05,919.919 INFO    ] Launching Daemon at Fri Jun 19 13:18:05 IST 2026
[2026-06-19 13:18:05,930.930 INFO    ] ================================================
[2026-06-19 13:18:06,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:18:06
[2026-06-19 13:18:07,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:18:07,524.524 INFO    ] Initializing speech engine...
[2026-06-19 13:18:07,535.535 INFO    ] 2026-06-19 13:18:07
[2026-06-19 13:18:07,834.834 INFO    ] 2026-06-19 13:18:07
[2026-06-19 13:18:07,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:18:08,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:18:08,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:18:08,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:18:08,402.402 INFO    ] time= 19/06/2026 13:18:08
[2026-06-19 13:18:08,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:18:08,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:18:08,556.556 INFO    ] No existing commands found in stream
[2026-06-19 13:18:13,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:18:13,573.573 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 13:18:15,613.613 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:18:15,616.616 INFO    ] Checking for system updates...
[2026-06-19 13:18:15,652.652 INFO    ] 200
[2026-06-19 13:18:15,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:15,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:18:15,710.710 INFO    ] No update needed
[2026-06-19 13:18:15,713.713 INFO    ] Checking for camera pi updates...
[2026-06-19 13:18:15,747.747 INFO    ] 200
[2026-06-19 13:18:15,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:15,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:18:15,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:18:15,841.841 INFO    ] No camera update needed
[2026-06-19 13:18:15,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:18:15,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:18:15,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:18:15,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:18:17,899.899 INFO    ] ================================================
[2026-06-19 13:18:17,915.915 INFO    ] Launching Daemon at Fri Jun 19 13:18:17 IST 2026
[2026-06-19 13:18:17,926.926 INFO    ] ================================================
[2026-06-19 13:18:18,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:18:18
[2026-06-19 13:18:19,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:18:19,363.363 INFO    ] Initializing speech engine...
[2026-06-19 13:18:19,389.389 INFO    ] 2026-06-19 13:18:19
[2026-06-19 13:18:19,664.664 INFO    ] 2026-06-19 13:18:19
[2026-06-19 13:18:19,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:18:19,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:18:19,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:18:20,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:18:20,164.164 INFO    ] time= 19/06/2026 13:18:20
[2026-06-19 13:18:20,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:18:20,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:18:20,375.375 INFO    ] No existing commands found in stream
[2026-06-19 13:18:25,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:18:25,394.394 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 13:18:28,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:18:28,114.114 INFO    ] Checking for system updates...
[2026-06-19 13:18:28,153.153 INFO    ] 200
[2026-06-19 13:18:28,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:28,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:18:28,212.212 INFO    ] No update needed
[2026-06-19 13:18:28,214.214 INFO    ] Checking for camera pi updates...
[2026-06-19 13:18:28,248.248 INFO    ] 200
[2026-06-19 13:18:28,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:28,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:18:28,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:18:28,333.333 INFO    ] No camera update needed
[2026-06-19 13:18:28,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:18:28,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:18:28,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:18:28,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:18:30,390.390 INFO    ] ================================================
[2026-06-19 13:18:30,406.406 INFO    ] Launching Daemon at Fri Jun 19 13:18:30 IST 2026
[2026-06-19 13:18:30,418.418 INFO    ] ================================================
[2026-06-19 13:18:30,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:18:30
[2026-06-19 13:18:31,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:18:31,871.871 INFO    ] Initializing speech engine...
[2026-06-19 13:18:31,886.886 INFO    ] 2026-06-19 13:18:31
[2026-06-19 13:18:32,193.193 INFO    ] 2026-06-19 13:18:32
[2026-06-19 13:18:32,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:18:32,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:18:32,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:18:32,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:18:32,682.682 INFO    ] time= 19/06/2026 13:18:32
[2026-06-19 13:18:32,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:18:32,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:18:32,939.939 INFO    ] No existing commands found in stream
[2026-06-19 13:18:37,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:18:37,973.973 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 13:18:41,103.103 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:18:41,107.107 INFO    ] Checking for system updates...
[2026-06-19 13:18:41,144.144 INFO    ] 200
[2026-06-19 13:18:41,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:41,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:18:41,203.203 INFO    ] No update needed
[2026-06-19 13:18:41,206.206 INFO    ] Checking for camera pi updates...
[2026-06-19 13:18:41,245.245 INFO    ] 200
[2026-06-19 13:18:41,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:41,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:18:41,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:18:41,440.440 INFO    ] No camera update needed
[2026-06-19 13:18:41,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:18:41,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:18:41,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:18:41,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:18:43,500.500 INFO    ] ================================================
[2026-06-19 13:18:43,516.516 INFO    ] Launching Daemon at Fri Jun 19 13:18:43 IST 2026
[2026-06-19 13:18:43,526.526 INFO    ] ================================================
[2026-06-19 13:18:44,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:18:44
[2026-06-19 13:18:44,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:18:45,138.138 INFO    ] Initializing speech engine...
[2026-06-19 13:18:45,147.147 INFO    ] 2026-06-19 13:18:45
[2026-06-19 13:18:45,417.417 INFO    ] 2026-06-19 13:18:45
[2026-06-19 13:18:45,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:18:45,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:18:45,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:18:45,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:18:45,982.982 INFO    ] time= 19/06/2026 13:18:45
[2026-06-19 13:18:45,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:18:46,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:18:46,144.144 INFO    ] No existing commands found in stream
[2026-06-19 13:18:51,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:18:51,163.163 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 13:18:53,782.782 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:18:53,785.785 INFO    ] Checking for system updates...
[2026-06-19 13:18:53,822.822 INFO    ] 200
[2026-06-19 13:18:53,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:53,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:18:53,880.880 INFO    ] No update needed
[2026-06-19 13:18:53,882.882 INFO    ] Checking for camera pi updates...
[2026-06-19 13:18:53,923.923 INFO    ] 200
[2026-06-19 13:18:53,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:18:53,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:18:54,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:18:54,007.007 INFO    ] No camera update needed
[2026-06-19 13:18:54,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:18:54,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:18:54,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:18:54,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:18:56,064.064 INFO    ] ================================================
[2026-06-19 13:18:56,083.083 INFO    ] Launching Daemon at Fri Jun 19 13:18:56 IST 2026
[2026-06-19 13:18:56,095.095 INFO    ] ================================================
[2026-06-19 13:18:56,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:18:56
[2026-06-19 13:18:57,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:18:57,548.548 INFO    ] Initializing speech engine...
[2026-06-19 13:18:57,573.573 INFO    ] 2026-06-19 13:18:57
[2026-06-19 13:18:57,857.857 INFO    ] 2026-06-19 13:18:57
[2026-06-19 13:18:57,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:18:58,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:18:58,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:18:58,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:18:58,302.302 INFO    ] time= 19/06/2026 13:18:58
[2026-06-19 13:18:58,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:18:58,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:18:58,507.507 INFO    ] No existing commands found in stream
[2026-06-19 13:19:03,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:19:03,540.540 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 13:19:06,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:19:06,461.461 INFO    ] Checking for system updates...
[2026-06-19 13:19:06,497.497 INFO    ] 200
[2026-06-19 13:19:06,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:06,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:19:06,555.555 INFO    ] No update needed
[2026-06-19 13:19:06,558.558 INFO    ] Checking for camera pi updates...
[2026-06-19 13:19:06,595.595 INFO    ] 200
[2026-06-19 13:19:06,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:06,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:19:06,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:19:06,681.681 INFO    ] No camera update needed
[2026-06-19 13:19:06,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:19:06,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:19:06,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:19:06,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:19:08,745.745 INFO    ] ================================================
[2026-06-19 13:19:08,761.761 INFO    ] Launching Daemon at Fri Jun 19 13:19:08 IST 2026
[2026-06-19 13:19:08,772.772 INFO    ] ================================================
[2026-06-19 13:19:09,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:19:09
[2026-06-19 13:19:09,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:19:10,244.244 INFO    ] Initializing speech engine...
[2026-06-19 13:19:10,253.253 INFO    ] 2026-06-19 13:19:10
[2026-06-19 13:19:10,521.521 INFO    ] 2026-06-19 13:19:10
[2026-06-19 13:19:10,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:19:10,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:19:10,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:19:10,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:19:10,894.894 INFO    ] time= 19/06/2026 13:19:10
[2026-06-19 13:19:10,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:19:10,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:19:11,018.018 INFO    ] No existing commands found in stream
[2026-06-19 13:19:16,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:19:16,034.034 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 13:19:18,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:19:18,129.129 INFO    ] Checking for system updates...
[2026-06-19 13:19:18,178.178 INFO    ] 200
[2026-06-19 13:19:18,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:18,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:19:18,237.237 INFO    ] No update needed
[2026-06-19 13:19:18,240.240 INFO    ] Checking for camera pi updates...
[2026-06-19 13:19:18,274.274 INFO    ] 200
[2026-06-19 13:19:18,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:18,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:19:18,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:19:18,359.359 INFO    ] No camera update needed
[2026-06-19 13:19:18,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:19:18,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:19:18,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:19:18,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:19:20,416.416 INFO    ] ================================================
[2026-06-19 13:19:20,433.433 INFO    ] Launching Daemon at Fri Jun 19 13:19:20 IST 2026
[2026-06-19 13:19:20,444.444 INFO    ] ================================================
[2026-06-19 13:19:21,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:19:21
[2026-06-19 13:19:21,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:19:21,854.854 INFO    ] Initializing speech engine...
[2026-06-19 13:19:21,869.869 INFO    ] 2026-06-19 13:19:21
[2026-06-19 13:19:22,153.153 INFO    ] 2026-06-19 13:19:22
[2026-06-19 13:19:22,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:19:22,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:19:22,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:19:22,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:19:22,562.562 INFO    ] time= 19/06/2026 13:19:22
[2026-06-19 13:19:22,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:19:22,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:19:22,653.653 INFO    ] No existing commands found in stream
[2026-06-19 13:19:27,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:19:27,691.691 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 13:19:30,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:19:30,656.656 INFO    ] Checking for system updates...
[2026-06-19 13:19:30,697.697 INFO    ] 200
[2026-06-19 13:19:30,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:30,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:19:30,761.761 INFO    ] No update needed
[2026-06-19 13:19:30,763.763 INFO    ] Checking for camera pi updates...
[2026-06-19 13:19:30,803.803 INFO    ] 200
[2026-06-19 13:19:30,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:30,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:19:30,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:19:30,897.897 INFO    ] No camera update needed
[2026-06-19 13:19:30,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:19:30,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:19:30,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:19:30,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:19:32,963.963 INFO    ] ================================================
[2026-06-19 13:19:32,980.980 INFO    ] Launching Daemon at Fri Jun 19 13:19:32 IST 2026
[2026-06-19 13:19:32,993.993 INFO    ] ================================================
[2026-06-19 13:19:33,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:19:33
[2026-06-19 13:19:34,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:19:34,458.458 INFO    ] Initializing speech engine...
[2026-06-19 13:19:34,474.474 INFO    ] 2026-06-19 13:19:34
[2026-06-19 13:19:34,745.745 INFO    ] 2026-06-19 13:19:34
[2026-06-19 13:19:34,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:19:34,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:19:34,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:19:35,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:19:35,132.132 INFO    ] time= 19/06/2026 13:19:35
[2026-06-19 13:19:35,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:19:35,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:19:35,313.313 INFO    ] No existing commands found in stream
[2026-06-19 13:19:40,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:19:40,341.341 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 13:19:44,117.117 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:19:44,120.120 INFO    ] Checking for system updates...
[2026-06-19 13:19:44,156.156 INFO    ] 200
[2026-06-19 13:19:44,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:44,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:19:44,214.214 INFO    ] No update needed
[2026-06-19 13:19:44,216.216 INFO    ] Checking for camera pi updates...
[2026-06-19 13:19:44,250.250 INFO    ] 200
[2026-06-19 13:19:44,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:44,297.297 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:19:44,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:19:44,340.340 INFO    ] No camera update needed
[2026-06-19 13:19:44,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:19:44,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:19:44,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:19:44,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:19:46,396.396 INFO    ] ================================================
[2026-06-19 13:19:46,412.412 INFO    ] Launching Daemon at Fri Jun 19 13:19:46 IST 2026
[2026-06-19 13:19:46,424.424 INFO    ] ================================================
[2026-06-19 13:19:47,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:19:47
[2026-06-19 13:19:47,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:19:47,864.864 INFO    ] Initializing speech engine...
[2026-06-19 13:19:47,870.870 INFO    ] 2026-06-19 13:19:47
[2026-06-19 13:19:48,159.159 INFO    ] 2026-06-19 13:19:48
[2026-06-19 13:19:48,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:19:48,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:19:48,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:19:48,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:19:48,526.526 INFO    ] time= 19/06/2026 13:19:48
[2026-06-19 13:19:48,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:19:48,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:19:48,646.646 INFO    ] No existing commands found in stream
[2026-06-19 13:19:53,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:19:53,662.662 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 13:19:58,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:19:58,062.062 INFO    ] Checking for system updates...
[2026-06-19 13:19:58,098.098 INFO    ] 200
[2026-06-19 13:19:58,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:58,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:19:58,155.155 INFO    ] No update needed
[2026-06-19 13:19:58,158.158 INFO    ] Checking for camera pi updates...
[2026-06-19 13:19:58,191.191 INFO    ] 200
[2026-06-19 13:19:58,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:19:58,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:19:58,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:19:58,281.281 INFO    ] No camera update needed
[2026-06-19 13:19:58,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:19:58,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:19:58,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:19:58,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:20:00,338.338 INFO    ] ================================================
[2026-06-19 13:20:00,353.353 INFO    ] Launching Daemon at Fri Jun 19 13:20:00 IST 2026
[2026-06-19 13:20:00,364.364 INFO    ] ================================================
[2026-06-19 13:20:00,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:20:00
[2026-06-19 13:20:01,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:20:02,109.109 INFO    ] Initializing speech engine...
[2026-06-19 13:20:02,139.139 INFO    ] 2026-06-19 13:20:02
[2026-06-19 13:20:02,741.741 INFO    ] 2026-06-19 13:20:02
[2026-06-19 13:20:02,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:20:03,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:20:03,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:20:03,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:20:03,209.209 INFO    ] time= 19/06/2026 13:20:03
[2026-06-19 13:20:03,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:20:03,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:20:03,275.275 INFO    ] No existing commands found in stream
[2026-06-19 13:20:08,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:20:08,289.289 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 13:20:12,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:20:12,044.044 INFO    ] Checking for system updates...
[2026-06-19 13:20:12,081.081 INFO    ] 200
[2026-06-19 13:20:12,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:20:12,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:20:12,140.140 INFO    ] No update needed
[2026-06-19 13:20:12,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 13:20:12,178.178 INFO    ] 200
[2026-06-19 13:20:12,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:20:12,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:20:12,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:20:12,270.270 INFO    ] No camera update needed
[2026-06-19 13:20:12,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:20:12,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:20:12,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:20:12,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:20:14,326.326 INFO    ] ================================================
[2026-06-19 13:20:14,342.342 INFO    ] Launching Daemon at Fri Jun 19 13:20:14 IST 2026
[2026-06-19 13:20:14,353.353 INFO    ] ================================================
[2026-06-19 13:20:14,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:20:14
[2026-06-19 13:20:15,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:20:15,850.850 INFO    ] Initializing speech engine...
[2026-06-19 13:20:15,864.864 INFO    ] 2026-06-19 13:20:15
[2026-06-19 13:20:16,117.117 INFO    ] 2026-06-19 13:20:16
[2026-06-19 13:20:16,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:20:16,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:20:16,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:20:16,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:20:16,488.488 INFO    ] time= 19/06/2026 13:20:16
[2026-06-19 13:20:16,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:20:16,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:20:16,672.672 INFO    ] No existing commands found in stream
[2026-06-19 13:20:21,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:20:21,699.699 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 13:20:22,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:20:22,144.144 INFO    ] Checking for system updates...
[2026-06-19 13:20:22,181.181 INFO    ] 200
[2026-06-19 13:20:22,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:20:22,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:20:22,238.238 INFO    ] No update needed
[2026-06-19 13:20:22,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 13:20:22,274.274 INFO    ] 200
[2026-06-19 13:20:22,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:20:22,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:20:22,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:20:22,359.359 INFO    ] No camera update needed
[2026-06-19 13:20:22,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:20:22,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:20:22,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:20:22,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:20:24,416.416 INFO    ] ================================================
[2026-06-19 13:20:24,431.431 INFO    ] Launching Daemon at Fri Jun 19 13:20:24 IST 2026
[2026-06-19 13:20:24,442.442 INFO    ] ================================================
[2026-06-19 13:20:25,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:20:25
[2026-06-19 13:20:25,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:20:25,846.846 INFO    ] Initializing speech engine...
[2026-06-19 13:20:25,861.861 INFO    ] 2026-06-19 13:20:25
[2026-06-19 13:20:26,126.126 INFO    ] 2026-06-19 13:20:26
[2026-06-19 13:20:26,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:20:26,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:20:26,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:20:26,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:20:26,514.514 INFO    ] time= 19/06/2026 13:20:26
[2026-06-19 13:20:26,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:20:26,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:20:26,708.708 INFO    ] No existing commands found in stream
[2026-06-19 13:20:31,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:20:31,721.721 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 13:20:33,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:20:33,859.859 INFO    ] Checking for system updates...
[2026-06-19 13:20:33,898.898 INFO    ] 200
[2026-06-19 13:20:33,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:20:33,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:20:33,961.961 INFO    ] No update needed
[2026-06-19 13:20:33,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 13:20:33,999.999 INFO    ] 200
[2026-06-19 13:20:34,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:20:34,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:20:34,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:20:34,092.092 INFO    ] No camera update needed
[2026-06-19 13:20:34,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:20:34,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:20:34,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:20:34,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:20:36,146.146 INFO    ] ================================================
[2026-06-19 13:20:36,162.162 INFO    ] Launching Daemon at Fri Jun 19 13:20:36 IST 2026
[2026-06-19 13:20:36,173.173 INFO    ] ================================================
[2026-06-19 13:20:36,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:20:36
[2026-06-19 13:20:37,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:20:37,610.610 INFO    ] Initializing speech engine...
[2026-06-19 13:20:37,627.627 INFO    ] 2026-06-19 13:20:37
[2026-06-19 13:20:37,880.880 INFO    ] 2026-06-19 13:20:37
[2026-06-19 13:20:37,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:20:38,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:20:38,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:20:38,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:20:38,434.434 INFO    ] time= 19/06/2026 13:20:38
[2026-06-19 13:20:38,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:20:38,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:20:38,603.603 INFO    ] No existing commands found in stream
[2026-06-19 13:20:43,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:20:43,621.621 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 13:20:47,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:20:47,947.947 INFO    ] Checking for system updates...
[2026-06-19 13:20:47,986.986 INFO    ] 200
[2026-06-19 13:20:47,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:20:48,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:20:48,043.043 INFO    ] No update needed
[2026-06-19 13:20:48,046.046 INFO    ] Checking for camera pi updates...
[2026-06-19 13:20:48,084.084 INFO    ] 200
[2026-06-19 13:20:48,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:20:48,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:20:48,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:20:48,262.262 INFO    ] No camera update needed
[2026-06-19 13:20:48,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:20:48,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:20:48,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:20:48,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:20:50,317.317 INFO    ] ================================================
[2026-06-19 13:20:50,332.332 INFO    ] Launching Daemon at Fri Jun 19 13:20:50 IST 2026
[2026-06-19 13:20:50,343.343 INFO    ] ================================================
[2026-06-19 13:20:50,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:20:50
[2026-06-19 13:20:51,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:20:51,750.750 INFO    ] Initializing speech engine...
[2026-06-19 13:20:51,763.763 INFO    ] 2026-06-19 13:20:51
[2026-06-19 13:20:52,029.029 INFO    ] 2026-06-19 13:20:52
[2026-06-19 13:20:52,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:20:52,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:20:52,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:20:52,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:20:52,413.413 INFO    ] time= 19/06/2026 13:20:52
[2026-06-19 13:20:52,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:20:52,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:20:52,602.602 INFO    ] No existing commands found in stream
[2026-06-19 13:20:57,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:20:57,625.625 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 13:21:00,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:21:00,776.776 INFO    ] Checking for system updates...
[2026-06-19 13:21:00,812.812 INFO    ] 200
[2026-06-19 13:21:00,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:00,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:21:00,872.872 INFO    ] No update needed
[2026-06-19 13:21:00,875.875 INFO    ] Checking for camera pi updates...
[2026-06-19 13:21:00,910.910 INFO    ] 200
[2026-06-19 13:21:00,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:00,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:21:00,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:21:01,000.000 INFO    ] No camera update needed
[2026-06-19 13:21:01,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:21:01,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:21:01,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:21:01,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:21:03,072.072 INFO    ] ================================================
[2026-06-19 13:21:03,088.088 INFO    ] Launching Daemon at Fri Jun 19 13:21:03 IST 2026
[2026-06-19 13:21:03,099.099 INFO    ] ================================================
[2026-06-19 13:21:03,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:21:03
[2026-06-19 13:21:04,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:21:04,527.527 INFO    ] Initializing speech engine...
[2026-06-19 13:21:04,534.534 INFO    ] 2026-06-19 13:21:04
[2026-06-19 13:21:04,781.781 INFO    ] 2026-06-19 13:21:04
[2026-06-19 13:21:04,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:21:04,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:21:05,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:21:05,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:21:05,158.158 INFO    ] time= 19/06/2026 13:21:05
[2026-06-19 13:21:05,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:21:05,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:21:05,354.354 INFO    ] No existing commands found in stream
[2026-06-19 13:21:10,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:21:10,373.373 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 13:21:11,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:21:11,247.247 INFO    ] Checking for system updates...
[2026-06-19 13:21:11,285.285 INFO    ] 200
[2026-06-19 13:21:11,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:11,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:21:11,347.347 INFO    ] No update needed
[2026-06-19 13:21:11,349.349 INFO    ] Checking for camera pi updates...
[2026-06-19 13:21:11,383.383 INFO    ] 200
[2026-06-19 13:21:11,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:11,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:21:11,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:21:11,477.477 INFO    ] No camera update needed
[2026-06-19 13:21:11,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:21:11,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:21:11,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:21:11,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:21:13,532.532 INFO    ] ================================================
[2026-06-19 13:21:13,547.547 INFO    ] Launching Daemon at Fri Jun 19 13:21:13 IST 2026
[2026-06-19 13:21:13,558.558 INFO    ] ================================================
[2026-06-19 13:21:14,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:21:14
[2026-06-19 13:21:14,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:21:15,019.019 INFO    ] Initializing speech engine...
[2026-06-19 13:21:15,032.032 INFO    ] 2026-06-19 13:21:15
[2026-06-19 13:21:15,297.297 INFO    ] 2026-06-19 13:21:15
[2026-06-19 13:21:15,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:21:15,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:21:15,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:21:15,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:21:15,697.697 INFO    ] time= 19/06/2026 13:21:15
[2026-06-19 13:21:15,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:21:15,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:21:15,882.882 INFO    ] No existing commands found in stream
[2026-06-19 13:21:20,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:21:20,910.910 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 13:21:22,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:21:22,087.087 INFO    ] Checking for system updates...
[2026-06-19 13:21:22,123.123 INFO    ] 200
[2026-06-19 13:21:22,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:22,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:21:22,181.181 INFO    ] No update needed
[2026-06-19 13:21:22,183.183 INFO    ] Checking for camera pi updates...
[2026-06-19 13:21:22,217.217 INFO    ] 200
[2026-06-19 13:21:22,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:22,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:21:22,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:21:22,310.310 INFO    ] No camera update needed
[2026-06-19 13:21:22,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:21:22,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:21:22,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:21:22,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:21:24,367.367 INFO    ] ================================================
[2026-06-19 13:21:24,382.382 INFO    ] Launching Daemon at Fri Jun 19 13:21:24 IST 2026
[2026-06-19 13:21:24,393.393 INFO    ] ================================================
[2026-06-19 13:21:25,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:21:25
[2026-06-19 13:21:25,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:21:25,955.955 INFO    ] Initializing speech engine...
[2026-06-19 13:21:25,962.962 INFO    ] 2026-06-19 13:21:25
[2026-06-19 13:21:26,235.235 INFO    ] 2026-06-19 13:21:26
[2026-06-19 13:21:26,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:21:26,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:21:26,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:21:26,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:21:26,752.752 INFO    ] time= 19/06/2026 13:21:26
[2026-06-19 13:21:26,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:21:26,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:21:26,982.982 INFO    ] No existing commands found in stream
[2026-06-19 13:21:32,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:21:32,015.015 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 13:21:34,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:21:34,701.701 INFO    ] Checking for system updates...
[2026-06-19 13:21:34,738.738 INFO    ] 200
[2026-06-19 13:21:34,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:34,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:21:34,795.795 INFO    ] No update needed
[2026-06-19 13:21:34,797.797 INFO    ] Checking for camera pi updates...
[2026-06-19 13:21:34,835.835 INFO    ] 200
[2026-06-19 13:21:34,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:34,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:21:34,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:21:34,919.919 INFO    ] No camera update needed
[2026-06-19 13:21:34,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:21:34,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:21:34,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:21:34,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:21:36,975.975 INFO    ] ================================================
[2026-06-19 13:21:36,991.991 INFO    ] Launching Daemon at Fri Jun 19 13:21:36 IST 2026
[2026-06-19 13:21:37,002.002 INFO    ] ================================================
[2026-06-19 13:21:37,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:21:37
[2026-06-19 13:21:38,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:21:38,416.416 INFO    ] Initializing speech engine...
[2026-06-19 13:21:38,428.428 INFO    ] 2026-06-19 13:21:38
[2026-06-19 13:21:38,690.690 INFO    ] 2026-06-19 13:21:38
[2026-06-19 13:21:38,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:21:38,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:21:38,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:21:39,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:21:39,245.245 INFO    ] time= 19/06/2026 13:21:39
[2026-06-19 13:21:39,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:21:39,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:21:39,397.397 INFO    ] No existing commands found in stream
[2026-06-19 13:21:44,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:21:44,419.419 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 13:21:45,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:21:45,356.356 INFO    ] Checking for system updates...
[2026-06-19 13:21:45,395.395 INFO    ] 200
[2026-06-19 13:21:45,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:45,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:21:45,453.453 INFO    ] No update needed
[2026-06-19 13:21:45,455.455 INFO    ] Checking for camera pi updates...
[2026-06-19 13:21:45,492.492 INFO    ] 200
[2026-06-19 13:21:45,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:45,540.540 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:21:45,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:21:45,581.581 INFO    ] No camera update needed
[2026-06-19 13:21:45,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:21:45,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:21:45,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:21:45,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:21:47,637.637 INFO    ] ================================================
[2026-06-19 13:21:47,652.652 INFO    ] Launching Daemon at Fri Jun 19 13:21:47 IST 2026
[2026-06-19 13:21:47,663.663 INFO    ] ================================================
[2026-06-19 13:21:48,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:21:48
[2026-06-19 13:21:48,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:21:49,110.110 INFO    ] Initializing speech engine...
[2026-06-19 13:21:49,121.121 INFO    ] 2026-06-19 13:21:49
[2026-06-19 13:21:49,381.381 INFO    ] 2026-06-19 13:21:49
[2026-06-19 13:21:49,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:21:49,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:21:49,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:21:49,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:21:49,880.880 INFO    ] time= 19/06/2026 13:21:49
[2026-06-19 13:21:49,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:21:49,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:21:50,064.064 INFO    ] No existing commands found in stream
[2026-06-19 13:21:55,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:21:55,092.092 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 13:21:58,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:21:58,042.042 INFO    ] Checking for system updates...
[2026-06-19 13:21:58,079.079 INFO    ] 200
[2026-06-19 13:21:58,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:58,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:21:58,140.140 INFO    ] No update needed
[2026-06-19 13:21:58,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 13:21:58,177.177 INFO    ] 200
[2026-06-19 13:21:58,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:21:58,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:21:58,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:21:58,268.268 INFO    ] No camera update needed
[2026-06-19 13:21:58,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:21:58,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:21:58,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:21:58,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:22:00,326.326 INFO    ] ================================================
[2026-06-19 13:22:00,341.341 INFO    ] Launching Daemon at Fri Jun 19 13:22:00 IST 2026
[2026-06-19 13:22:00,351.351 INFO    ] ================================================
[2026-06-19 13:22:00,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:22:00
[2026-06-19 13:22:01,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:22:02,125.125 INFO    ] Initializing speech engine...
[2026-06-19 13:22:02,136.136 INFO    ] 2026-06-19 13:22:02
[2026-06-19 13:22:02,442.442 INFO    ] 2026-06-19 13:22:02
[2026-06-19 13:22:02,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:22:02,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:22:02,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:22:02,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:22:02,915.915 INFO    ] time= 19/06/2026 13:22:02
[2026-06-19 13:22:02,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:22:03,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:22:03,108.108 INFO    ] No existing commands found in stream
[2026-06-19 13:22:08,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:22:08,123.123 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 13:22:10,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:22:10,807.807 INFO    ] Checking for system updates...
[2026-06-19 13:22:10,847.847 INFO    ] 200
[2026-06-19 13:22:10,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:10,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:22:10,905.905 INFO    ] No update needed
[2026-06-19 13:22:10,908.908 INFO    ] Checking for camera pi updates...
[2026-06-19 13:22:10,945.945 INFO    ] 200
[2026-06-19 13:22:10,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:10,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:22:11,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:22:11,038.038 INFO    ] No camera update needed
[2026-06-19 13:22:11,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:22:11,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:22:11,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:22:11,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:22:13,094.094 INFO    ] ================================================
[2026-06-19 13:22:13,109.109 INFO    ] Launching Daemon at Fri Jun 19 13:22:13 IST 2026
[2026-06-19 13:22:13,120.120 INFO    ] ================================================
[2026-06-19 13:22:13,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:22:13
[2026-06-19 13:22:14,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:22:14,524.524 INFO    ] Initializing speech engine...
[2026-06-19 13:22:14,532.532 INFO    ] 2026-06-19 13:22:14
[2026-06-19 13:22:14,806.806 INFO    ] 2026-06-19 13:22:14
[2026-06-19 13:22:14,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:22:15,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:22:15,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:22:15,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:22:15,268.268 INFO    ] time= 19/06/2026 13:22:15
[2026-06-19 13:22:15,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:22:15,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:22:15,501.501 INFO    ] No existing commands found in stream
[2026-06-19 13:22:20,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:22:20,531.531 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 13:22:23,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:22:23,385.385 INFO    ] Checking for system updates...
[2026-06-19 13:22:23,421.421 INFO    ] 200
[2026-06-19 13:22:23,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:23,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:22:23,479.479 INFO    ] No update needed
[2026-06-19 13:22:23,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 13:22:23,520.520 INFO    ] 200
[2026-06-19 13:22:23,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:23,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:22:23,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:22:23,609.609 INFO    ] No camera update needed
[2026-06-19 13:22:23,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:22:23,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:22:23,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:22:23,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:22:25,666.666 INFO    ] ================================================
[2026-06-19 13:22:25,682.682 INFO    ] Launching Daemon at Fri Jun 19 13:22:25 IST 2026
[2026-06-19 13:22:25,692.692 INFO    ] ================================================
[2026-06-19 13:22:26,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:22:26
[2026-06-19 13:22:26,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:22:27,140.140 INFO    ] Initializing speech engine...
[2026-06-19 13:22:27,147.147 INFO    ] 2026-06-19 13:22:27
[2026-06-19 13:22:27,447.447 INFO    ] 2026-06-19 13:22:27
[2026-06-19 13:22:27,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:22:27,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:22:27,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:22:27,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:22:27,876.876 INFO    ] time= 19/06/2026 13:22:27
[2026-06-19 13:22:27,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:22:27,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:22:27,961.961 INFO    ] No existing commands found in stream
[2026-06-19 13:22:32,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:22:32,977.977 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 13:22:33,902.902 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:22:33,905.905 INFO    ] Checking for system updates...
[2026-06-19 13:22:33,941.941 INFO    ] 200
[2026-06-19 13:22:33,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:33,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:22:33,999.999 INFO    ] No update needed
[2026-06-19 13:22:34,001.001 INFO    ] Checking for camera pi updates...
[2026-06-19 13:22:34,045.045 INFO    ] 200
[2026-06-19 13:22:34,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:34,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:22:34,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:22:34,135.135 INFO    ] No camera update needed
[2026-06-19 13:22:34,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:22:34,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:22:34,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:22:34,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:22:36,192.192 INFO    ] ================================================
[2026-06-19 13:22:36,208.208 INFO    ] Launching Daemon at Fri Jun 19 13:22:36 IST 2026
[2026-06-19 13:22:36,219.219 INFO    ] ================================================
[2026-06-19 13:22:36,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:22:36
[2026-06-19 13:22:37,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:22:37,642.642 INFO    ] Initializing speech engine...
[2026-06-19 13:22:37,651.651 INFO    ] 2026-06-19 13:22:37
[2026-06-19 13:22:37,901.901 INFO    ] 2026-06-19 13:22:37
[2026-06-19 13:22:37,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:22:38,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:22:38,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:22:38,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:22:38,465.465 INFO    ] time= 19/06/2026 13:22:38
[2026-06-19 13:22:38,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:22:38,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:22:38,627.627 INFO    ] No existing commands found in stream
[2026-06-19 13:22:43,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:22:43,641.641 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 13:22:45,286.286 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:22:45,288.288 INFO    ] Checking for system updates...
[2026-06-19 13:22:45,324.324 INFO    ] 200
[2026-06-19 13:22:45,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:45,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:22:45,390.390 INFO    ] No update needed
[2026-06-19 13:22:45,392.392 INFO    ] Checking for camera pi updates...
[2026-06-19 13:22:45,430.430 INFO    ] 200
[2026-06-19 13:22:45,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:45,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:22:45,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:22:45,513.513 INFO    ] No camera update needed
[2026-06-19 13:22:45,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:22:45,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:22:45,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:22:45,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:22:47,571.571 INFO    ] ================================================
[2026-06-19 13:22:47,586.586 INFO    ] Launching Daemon at Fri Jun 19 13:22:47 IST 2026
[2026-06-19 13:22:47,596.596 INFO    ] ================================================
[2026-06-19 13:22:48,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:22:48
[2026-06-19 13:22:48,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:22:49,043.043 INFO    ] Initializing speech engine...
[2026-06-19 13:22:49,057.057 INFO    ] 2026-06-19 13:22:49
[2026-06-19 13:22:49,321.321 INFO    ] 2026-06-19 13:22:49
[2026-06-19 13:22:49,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:22:49,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:22:49,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:22:49,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:22:49,805.805 INFO    ] time= 19/06/2026 13:22:49
[2026-06-19 13:22:49,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:22:49,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:22:50,038.038 INFO    ] No existing commands found in stream
[2026-06-19 13:22:55,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:22:55,056.056 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 13:22:56,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:22:56,877.877 INFO    ] Checking for system updates...
[2026-06-19 13:22:56,913.913 INFO    ] 200
[2026-06-19 13:22:56,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:56,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:22:56,979.979 INFO    ] No update needed
[2026-06-19 13:22:56,981.981 INFO    ] Checking for camera pi updates...
[2026-06-19 13:22:57,015.015 INFO    ] 200
[2026-06-19 13:22:57,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:22:57,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:22:57,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:22:57,205.205 INFO    ] No camera update needed
[2026-06-19 13:22:57,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:22:57,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:22:57,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:22:57,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:22:59,262.262 INFO    ] ================================================
[2026-06-19 13:22:59,278.278 INFO    ] Launching Daemon at Fri Jun 19 13:22:59 IST 2026
[2026-06-19 13:22:59,288.288 INFO    ] ================================================
[2026-06-19 13:22:59,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:22:59
[2026-06-19 13:23:00,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:23:00,881.881 INFO    ] Initializing speech engine...
[2026-06-19 13:23:00,892.892 INFO    ] 2026-06-19 13:23:00
[2026-06-19 13:23:01,175.175 INFO    ] 2026-06-19 13:23:01
[2026-06-19 13:23:01,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:23:01,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:23:01,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:23:01,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:23:01,624.624 INFO    ] time= 19/06/2026 13:23:01
[2026-06-19 13:23:01,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:23:01,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:23:01,785.785 INFO    ] No existing commands found in stream
[2026-06-19 13:23:06,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:23:06,804.804 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 13:23:09,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:23:09,545.545 INFO    ] Checking for system updates...
[2026-06-19 13:23:09,582.582 INFO    ] 200
[2026-06-19 13:23:09,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:09,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:23:09,643.643 INFO    ] No update needed
[2026-06-19 13:23:09,646.646 INFO    ] Checking for camera pi updates...
[2026-06-19 13:23:09,680.680 INFO    ] 200
[2026-06-19 13:23:09,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:09,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:23:09,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:23:09,781.781 INFO    ] No camera update needed
[2026-06-19 13:23:09,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:23:09,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:23:09,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:23:09,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:23:11,843.843 INFO    ] ================================================
[2026-06-19 13:23:11,859.859 INFO    ] Launching Daemon at Fri Jun 19 13:23:11 IST 2026
[2026-06-19 13:23:11,870.870 INFO    ] ================================================
[2026-06-19 13:23:12,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:23:12
[2026-06-19 13:23:13,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:23:13,281.281 INFO    ] Initializing speech engine...
[2026-06-19 13:23:13,288.288 INFO    ] 2026-06-19 13:23:13
[2026-06-19 13:23:13,580.580 INFO    ] 2026-06-19 13:23:13
[2026-06-19 13:23:13,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:23:13,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:23:13,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:23:14,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:23:14,081.081 INFO    ] time= 19/06/2026 13:23:14
[2026-06-19 13:23:14,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:23:14,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:23:14,351.351 INFO    ] No existing commands found in stream
[2026-06-19 13:23:19,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:23:19,376.376 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 13:23:23,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:23:23,455.455 INFO    ] Checking for system updates...
[2026-06-19 13:23:23,492.492 INFO    ] 200
[2026-06-19 13:23:23,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:23,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:23:23,552.552 INFO    ] No update needed
[2026-06-19 13:23:23,554.554 INFO    ] Checking for camera pi updates...
[2026-06-19 13:23:23,588.588 INFO    ] 200
[2026-06-19 13:23:23,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:23,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:23:23,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:23:23,681.681 INFO    ] No camera update needed
[2026-06-19 13:23:23,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:23:23,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:23:23,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:23:23,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:23:25,737.737 INFO    ] ================================================
[2026-06-19 13:23:25,752.752 INFO    ] Launching Daemon at Fri Jun 19 13:23:25 IST 2026
[2026-06-19 13:23:25,762.762 INFO    ] ================================================
[2026-06-19 13:23:26,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:23:26
[2026-06-19 13:23:26,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:23:27,220.220 INFO    ] Initializing speech engine...
[2026-06-19 13:23:27,227.227 INFO    ] 2026-06-19 13:23:27
[2026-06-19 13:23:27,491.491 INFO    ] 2026-06-19 13:23:27
[2026-06-19 13:23:27,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:23:27,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:23:27,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:23:27,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:23:27,960.960 INFO    ] time= 19/06/2026 13:23:27
[2026-06-19 13:23:28,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:23:28,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:23:28,193.193 INFO    ] No existing commands found in stream
[2026-06-19 13:23:33,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:23:33,212.212 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 13:23:34,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:23:34,582.582 INFO    ] Checking for system updates...
[2026-06-19 13:23:34,623.623 INFO    ] 200
[2026-06-19 13:23:34,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:34,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:23:34,682.682 INFO    ] No update needed
[2026-06-19 13:23:34,684.684 INFO    ] Checking for camera pi updates...
[2026-06-19 13:23:34,718.718 INFO    ] 200
[2026-06-19 13:23:34,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:34,765.765 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:23:34,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:23:34,813.813 INFO    ] No camera update needed
[2026-06-19 13:23:34,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:23:34,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:23:34,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:23:34,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:23:36,869.869 INFO    ] ================================================
[2026-06-19 13:23:36,884.884 INFO    ] Launching Daemon at Fri Jun 19 13:23:36 IST 2026
[2026-06-19 13:23:36,894.894 INFO    ] ================================================
[2026-06-19 13:23:37,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:23:37
[2026-06-19 13:23:38,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:23:38,323.323 INFO    ] Initializing speech engine...
[2026-06-19 13:23:38,338.338 INFO    ] 2026-06-19 13:23:38
[2026-06-19 13:23:38,620.620 INFO    ] 2026-06-19 13:23:38
[2026-06-19 13:23:38,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:23:38,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:23:38,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:23:39,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:23:39,037.037 INFO    ] time= 19/06/2026 13:23:39
[2026-06-19 13:23:39,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:23:39,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:23:39,124.124 INFO    ] No existing commands found in stream
[2026-06-19 13:23:44,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:23:44,162.162 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 13:23:44,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:23:44,709.709 INFO    ] Checking for system updates...
[2026-06-19 13:23:44,750.750 INFO    ] 200
[2026-06-19 13:23:44,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:44,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:23:44,809.809 INFO    ] No update needed
[2026-06-19 13:23:44,812.812 INFO    ] Checking for camera pi updates...
[2026-06-19 13:23:44,847.847 INFO    ] 200
[2026-06-19 13:23:44,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:44,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:23:44,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:23:44,933.933 INFO    ] No camera update needed
[2026-06-19 13:23:44,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:23:44,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:23:44,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:23:44,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:23:46,990.990 INFO    ] ================================================
[2026-06-19 13:23:47,005.005 INFO    ] Launching Daemon at Fri Jun 19 13:23:47 IST 2026
[2026-06-19 13:23:47,016.016 INFO    ] ================================================
[2026-06-19 13:23:47,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:23:47
[2026-06-19 13:23:48,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:23:48,423.423 INFO    ] Initializing speech engine...
[2026-06-19 13:23:48,447.447 INFO    ] 2026-06-19 13:23:48
[2026-06-19 13:23:48,700.700 INFO    ] 2026-06-19 13:23:48
[2026-06-19 13:23:48,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:23:48,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:23:48,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:23:49,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:23:49,200.200 INFO    ] time= 19/06/2026 13:23:49
[2026-06-19 13:23:49,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:23:49,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:23:49,423.423 INFO    ] No existing commands found in stream
[2026-06-19 13:23:54,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:23:54,441.441 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 13:23:56,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:23:56,938.938 INFO    ] Checking for system updates...
[2026-06-19 13:23:56,978.978 INFO    ] 200
[2026-06-19 13:23:56,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:57,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:23:57,035.035 INFO    ] No update needed
[2026-06-19 13:23:57,037.037 INFO    ] Checking for camera pi updates...
[2026-06-19 13:23:57,075.075 INFO    ] 200
[2026-06-19 13:23:57,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:23:57,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:23:57,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:23:57,160.160 INFO    ] No camera update needed
[2026-06-19 13:23:57,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:23:57,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:23:57,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:23:57,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:23:59,217.217 INFO    ] ================================================
[2026-06-19 13:23:59,232.232 INFO    ] Launching Daemon at Fri Jun 19 13:23:59 IST 2026
[2026-06-19 13:23:59,242.242 INFO    ] ================================================
[2026-06-19 13:23:59,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:23:59
[2026-06-19 13:24:00,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:24:00,687.687 INFO    ] Initializing speech engine...
[2026-06-19 13:24:00,703.703 INFO    ] 2026-06-19 13:24:00
[2026-06-19 13:24:00,958.958 INFO    ] 2026-06-19 13:24:00
[2026-06-19 13:24:00,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:24:01,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:24:01,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:24:01,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:24:01,501.501 INFO    ] time= 19/06/2026 13:24:01
[2026-06-19 13:24:01,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:24:01,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:24:01,569.569 INFO    ] No existing commands found in stream
[2026-06-19 13:24:06,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:24:06,582.582 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 13:24:08,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:24:08,022.022 INFO    ] Checking for system updates...
[2026-06-19 13:24:08,063.063 INFO    ] 200
[2026-06-19 13:24:08,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:08,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:24:08,120.120 INFO    ] No update needed
[2026-06-19 13:24:08,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 13:24:08,157.157 INFO    ] 200
[2026-06-19 13:24:08,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:08,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:24:08,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:24:08,245.245 INFO    ] No camera update needed
[2026-06-19 13:24:08,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:24:08,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:24:08,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:24:08,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:24:10,303.303 INFO    ] ================================================
[2026-06-19 13:24:10,318.318 INFO    ] Launching Daemon at Fri Jun 19 13:24:10 IST 2026
[2026-06-19 13:24:10,329.329 INFO    ] ================================================
[2026-06-19 13:24:10,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:24:10
[2026-06-19 13:24:11,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:24:11,758.758 INFO    ] Initializing speech engine...
[2026-06-19 13:24:11,767.767 INFO    ] 2026-06-19 13:24:11
[2026-06-19 13:24:12,019.019 INFO    ] 2026-06-19 13:24:12
[2026-06-19 13:24:12,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:24:12,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:24:12,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:24:12,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:24:12,397.397 INFO    ] time= 19/06/2026 13:24:12
[2026-06-19 13:24:12,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:24:12,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:24:12,575.575 INFO    ] No existing commands found in stream
[2026-06-19 13:24:17,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:24:17,608.608 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 13:24:20,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:24:20,687.687 INFO    ] Checking for system updates...
[2026-06-19 13:24:20,726.726 INFO    ] 200
[2026-06-19 13:24:20,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:20,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:24:20,791.791 INFO    ] No update needed
[2026-06-19 13:24:20,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 13:24:20,832.832 INFO    ] 200
[2026-06-19 13:24:20,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:20,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:24:20,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:24:20,922.922 INFO    ] No camera update needed
[2026-06-19 13:24:20,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:24:20,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:24:20,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:24:20,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:24:22,982.982 INFO    ] ================================================
[2026-06-19 13:24:23,997.997 INFO    ] Launching Daemon at Fri Jun 19 13:24:22 IST 2026
[2026-06-19 13:24:23,008.008 INFO    ] ================================================
[2026-06-19 13:24:23,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:24:23
[2026-06-19 13:24:24,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:24:24,458.458 INFO    ] Initializing speech engine...
[2026-06-19 13:24:24,467.467 INFO    ] 2026-06-19 13:24:24
[2026-06-19 13:24:24,738.738 INFO    ] 2026-06-19 13:24:24
[2026-06-19 13:24:24,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:24:25,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:24:25,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:24:25,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:24:25,176.176 INFO    ] time= 19/06/2026 13:24:25
[2026-06-19 13:24:25,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:24:25,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:24:25,410.410 INFO    ] No existing commands found in stream
[2026-06-19 13:24:30,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:24:30,437.437 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 13:24:32,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:24:32,146.146 INFO    ] Checking for system updates...
[2026-06-19 13:24:32,189.189 INFO    ] 200
[2026-06-19 13:24:32,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:32,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:24:32,260.260 INFO    ] No update needed
[2026-06-19 13:24:32,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 13:24:32,300.300 INFO    ] 200
[2026-06-19 13:24:32,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:32,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:24:32,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:24:32,387.387 INFO    ] No camera update needed
[2026-06-19 13:24:32,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:24:32,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:24:32,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:24:32,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:24:34,450.450 INFO    ] ================================================
[2026-06-19 13:24:34,465.465 INFO    ] Launching Daemon at Fri Jun 19 13:24:34 IST 2026
[2026-06-19 13:24:34,476.476 INFO    ] ================================================
[2026-06-19 13:24:35,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:24:35
[2026-06-19 13:24:35,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:24:35,922.922 INFO    ] Initializing speech engine...
[2026-06-19 13:24:35,931.931 INFO    ] 2026-06-19 13:24:35
[2026-06-19 13:24:36,232.232 INFO    ] 2026-06-19 13:24:36
[2026-06-19 13:24:36,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:24:36,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:24:36,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:24:36,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:24:36,638.638 INFO    ] time= 19/06/2026 13:24:36
[2026-06-19 13:24:36,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:24:36,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:24:36,758.758 INFO    ] No existing commands found in stream
[2026-06-19 13:24:41,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:24:41,771.771 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 13:24:43,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:24:43,786.786 INFO    ] Checking for system updates...
[2026-06-19 13:24:43,822.822 INFO    ] 200
[2026-06-19 13:24:43,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:43,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:24:43,888.888 INFO    ] No update needed
[2026-06-19 13:24:43,891.891 INFO    ] Checking for camera pi updates...
[2026-06-19 13:24:43,925.925 INFO    ] 200
[2026-06-19 13:24:43,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:43,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:24:44,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:24:44,014.014 INFO    ] No camera update needed
[2026-06-19 13:24:44,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:24:44,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:24:44,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:24:44,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:24:46,070.070 INFO    ] ================================================
[2026-06-19 13:24:46,085.085 INFO    ] Launching Daemon at Fri Jun 19 13:24:46 IST 2026
[2026-06-19 13:24:46,096.096 INFO    ] ================================================
[2026-06-19 13:24:46,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:24:46
[2026-06-19 13:24:47,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:24:47,540.540 INFO    ] Initializing speech engine...
[2026-06-19 13:24:47,549.549 INFO    ] 2026-06-19 13:24:47
[2026-06-19 13:24:47,798.798 INFO    ] 2026-06-19 13:24:47
[2026-06-19 13:24:47,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:24:48,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:24:48,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:24:48,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:24:48,241.241 INFO    ] time= 19/06/2026 13:24:48
[2026-06-19 13:24:48,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:24:48,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:24:48,497.497 INFO    ] No existing commands found in stream
[2026-06-19 13:24:53,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:24:53,522.522 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 13:24:54,260.260 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:24:54,263.263 INFO    ] Checking for system updates...
[2026-06-19 13:24:54,298.298 INFO    ] 200
[2026-06-19 13:24:54,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:54,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:24:54,364.364 INFO    ] No update needed
[2026-06-19 13:24:54,366.366 INFO    ] Checking for camera pi updates...
[2026-06-19 13:24:54,406.406 INFO    ] 200
[2026-06-19 13:24:54,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:24:54,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:24:54,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:24:54,504.504 INFO    ] No camera update needed
[2026-06-19 13:24:54,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:24:54,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:24:54,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:24:54,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:24:56,561.561 INFO    ] ================================================
[2026-06-19 13:24:56,576.576 INFO    ] Launching Daemon at Fri Jun 19 13:24:56 IST 2026
[2026-06-19 13:24:56,587.587 INFO    ] ================================================
[2026-06-19 13:24:57,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:24:57
[2026-06-19 13:24:57,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:24:58,062.062 INFO    ] Initializing speech engine...
[2026-06-19 13:24:58,071.071 INFO    ] 2026-06-19 13:24:58
[2026-06-19 13:24:58,323.323 INFO    ] 2026-06-19 13:24:58
[2026-06-19 13:24:58,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:24:58,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:24:58,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:24:58,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:24:58,767.767 INFO    ] time= 19/06/2026 13:24:58
[2026-06-19 13:24:58,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:24:58,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:24:59,018.018 INFO    ] No existing commands found in stream
[2026-06-19 13:25:04,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:25:04,040.040 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 13:25:08,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:25:08,413.413 INFO    ] Checking for system updates...
[2026-06-19 13:25:08,450.450 INFO    ] 200
[2026-06-19 13:25:08,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:08,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:25:08,514.514 INFO    ] No update needed
[2026-06-19 13:25:08,517.517 INFO    ] Checking for camera pi updates...
[2026-06-19 13:25:08,551.551 INFO    ] 200
[2026-06-19 13:25:08,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:08,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:25:08,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:25:08,643.643 INFO    ] No camera update needed
[2026-06-19 13:25:08,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:25:08,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:25:08,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:25:08,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:25:10,700.700 INFO    ] ================================================
[2026-06-19 13:25:10,716.716 INFO    ] Launching Daemon at Fri Jun 19 13:25:10 IST 2026
[2026-06-19 13:25:10,726.726 INFO    ] ================================================
[2026-06-19 13:25:11,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:25:11
[2026-06-19 13:25:12,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:25:12,386.386 INFO    ] Initializing speech engine...
[2026-06-19 13:25:12,394.394 INFO    ] 2026-06-19 13:25:12
[2026-06-19 13:25:12,683.683 INFO    ] 2026-06-19 13:25:12
[2026-06-19 13:25:12,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:25:12,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:25:12,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:25:13,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:25:13,165.165 INFO    ] time= 19/06/2026 13:25:13
[2026-06-19 13:25:13,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:25:13,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:25:13,375.375 INFO    ] No existing commands found in stream
[2026-06-19 13:25:18,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:25:18,392.392 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 13:25:22,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:25:22,342.342 INFO    ] Checking for system updates...
[2026-06-19 13:25:22,380.380 INFO    ] 200
[2026-06-19 13:25:22,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:22,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:25:22,448.448 INFO    ] No update needed
[2026-06-19 13:25:22,451.451 INFO    ] Checking for camera pi updates...
[2026-06-19 13:25:22,490.490 INFO    ] 200
[2026-06-19 13:25:22,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:22,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:25:22,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:25:22,586.586 INFO    ] No camera update needed
[2026-06-19 13:25:22,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:25:22,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:25:22,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:25:22,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:25:24,643.643 INFO    ] ================================================
[2026-06-19 13:25:24,659.659 INFO    ] Launching Daemon at Fri Jun 19 13:25:24 IST 2026
[2026-06-19 13:25:24,671.671 INFO    ] ================================================
[2026-06-19 13:25:25,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:25:25
[2026-06-19 13:25:25,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:25:26,235.235 INFO    ] Initializing speech engine...
[2026-06-19 13:25:26,249.249 INFO    ] 2026-06-19 13:25:26
[2026-06-19 13:25:26,564.564 INFO    ] 2026-06-19 13:25:26
[2026-06-19 13:25:26,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:25:26,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:25:26,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:25:27,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:25:27,085.085 INFO    ] time= 19/06/2026 13:25:27
[2026-06-19 13:25:27,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:25:27,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:25:27,240.240 INFO    ] No existing commands found in stream
[2026-06-19 13:25:32,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:25:32,271.271 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 13:25:33,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:25:33,608.608 INFO    ] Checking for system updates...
[2026-06-19 13:25:33,652.652 INFO    ] 200
[2026-06-19 13:25:33,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:33,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:25:33,716.716 INFO    ] No update needed
[2026-06-19 13:25:33,719.719 INFO    ] Checking for camera pi updates...
[2026-06-19 13:25:33,757.757 INFO    ] 200
[2026-06-19 13:25:33,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:33,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:25:33,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:25:33,847.847 INFO    ] No camera update needed
[2026-06-19 13:25:33,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:25:33,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:25:33,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:25:33,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:25:35,903.903 INFO    ] ================================================
[2026-06-19 13:25:35,919.919 INFO    ] Launching Daemon at Fri Jun 19 13:25:35 IST 2026
[2026-06-19 13:25:35,930.930 INFO    ] ================================================
[2026-06-19 13:25:36,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:25:36
[2026-06-19 13:25:37,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:25:37,398.398 INFO    ] Initializing speech engine...
[2026-06-19 13:25:37,407.407 INFO    ] 2026-06-19 13:25:37
[2026-06-19 13:25:37,670.670 INFO    ] 2026-06-19 13:25:37
[2026-06-19 13:25:37,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:25:37,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:25:37,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:25:38,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:25:38,161.161 INFO    ] time= 19/06/2026 13:25:38
[2026-06-19 13:25:38,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:25:38,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:25:38,374.374 INFO    ] No existing commands found in stream
[2026-06-19 13:25:43,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:25:43,400.400 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 13:25:46,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:25:46,214.214 INFO    ] Checking for system updates...
[2026-06-19 13:25:46,250.250 INFO    ] 200
[2026-06-19 13:25:46,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:46,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:25:46,309.309 INFO    ] No update needed
[2026-06-19 13:25:46,311.311 INFO    ] Checking for camera pi updates...
[2026-06-19 13:25:46,350.350 INFO    ] 200
[2026-06-19 13:25:46,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:46,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:25:46,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:25:46,435.435 INFO    ] No camera update needed
[2026-06-19 13:25:46,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:25:46,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:25:46,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:25:46,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:25:48,493.493 INFO    ] ================================================
[2026-06-19 13:25:48,508.508 INFO    ] Launching Daemon at Fri Jun 19 13:25:48 IST 2026
[2026-06-19 13:25:48,526.526 INFO    ] ================================================
[2026-06-19 13:25:49,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:25:49
[2026-06-19 13:25:49,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:25:50,080.080 INFO    ] Initializing speech engine...
[2026-06-19 13:25:50,092.092 INFO    ] 2026-06-19 13:25:50
[2026-06-19 13:25:50,359.359 INFO    ] 2026-06-19 13:25:50
[2026-06-19 13:25:50,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:25:50,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:25:50,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:25:50,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:25:50,859.859 INFO    ] time= 19/06/2026 13:25:50
[2026-06-19 13:25:50,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:25:50,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:25:51,066.066 INFO    ] No existing commands found in stream
[2026-06-19 13:25:56,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:25:56,098.098 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 13:25:57,247.247 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:25:57,250.250 INFO    ] Checking for system updates...
[2026-06-19 13:25:57,287.287 INFO    ] 200
[2026-06-19 13:25:57,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:57,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:25:57,345.345 INFO    ] No update needed
[2026-06-19 13:25:57,347.347 INFO    ] Checking for camera pi updates...
[2026-06-19 13:25:57,381.381 INFO    ] 200
[2026-06-19 13:25:57,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:25:57,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:25:57,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:25:57,470.470 INFO    ] No camera update needed
[2026-06-19 13:25:57,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:25:57,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:25:57,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:25:57,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:25:59,526.526 INFO    ] ================================================
[2026-06-19 13:25:59,543.543 INFO    ] Launching Daemon at Fri Jun 19 13:25:59 IST 2026
[2026-06-19 13:25:59,554.554 INFO    ] ================================================
[2026-06-19 13:26:00,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:26:00
[2026-06-19 13:26:00,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:26:01,038.038 INFO    ] Initializing speech engine...
[2026-06-19 13:26:01,048.048 INFO    ] 2026-06-19 13:26:01
[2026-06-19 13:26:01,317.317 INFO    ] 2026-06-19 13:26:01
[2026-06-19 13:26:01,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:26:01,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:26:01,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:26:01,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:26:01,828.828 INFO    ] time= 19/06/2026 13:26:01
[2026-06-19 13:26:01,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:26:01,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:26:01,960.960 INFO    ] No existing commands found in stream
[2026-06-19 13:26:06,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:26:06,990.990 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 13:26:10,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:26:10,238.238 INFO    ] Checking for system updates...
[2026-06-19 13:26:10,278.278 INFO    ] 200
[2026-06-19 13:26:10,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:10,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:26:10,343.343 INFO    ] No update needed
[2026-06-19 13:26:10,345.345 INFO    ] Checking for camera pi updates...
[2026-06-19 13:26:10,379.379 INFO    ] 200
[2026-06-19 13:26:10,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:10,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:26:10,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:26:10,464.464 INFO    ] No camera update needed
[2026-06-19 13:26:10,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:26:10,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:26:10,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:26:10,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:26:12,521.521 INFO    ] ================================================
[2026-06-19 13:26:12,537.537 INFO    ] Launching Daemon at Fri Jun 19 13:26:12 IST 2026
[2026-06-19 13:26:12,547.547 INFO    ] ================================================
[2026-06-19 13:26:13,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:26:13
[2026-06-19 13:26:13,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:26:14,024.024 INFO    ] Initializing speech engine...
[2026-06-19 13:26:14,034.034 INFO    ] 2026-06-19 13:26:14
[2026-06-19 13:26:14,293.293 INFO    ] 2026-06-19 13:26:14
[2026-06-19 13:26:14,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:26:14,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:26:14,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:26:14,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:26:14,840.840 INFO    ] time= 19/06/2026 13:26:14
[2026-06-19 13:26:14,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:26:14,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:26:14,982.982 INFO    ] No existing commands found in stream
[2026-06-19 13:26:20,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:26:20,007.007 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 13:26:23,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:26:23,031.031 INFO    ] Checking for system updates...
[2026-06-19 13:26:23,067.067 INFO    ] 200
[2026-06-19 13:26:23,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:23,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:26:23,132.132 INFO    ] No update needed
[2026-06-19 13:26:23,135.135 INFO    ] Checking for camera pi updates...
[2026-06-19 13:26:23,169.169 INFO    ] 200
[2026-06-19 13:26:23,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:23,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:26:23,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:26:23,263.263 INFO    ] No camera update needed
[2026-06-19 13:26:23,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:26:23,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:26:23,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:26:23,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:26:25,321.321 INFO    ] ================================================
[2026-06-19 13:26:25,336.336 INFO    ] Launching Daemon at Fri Jun 19 13:26:25 IST 2026
[2026-06-19 13:26:25,347.347 INFO    ] ================================================
[2026-06-19 13:26:25,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:26:25
[2026-06-19 13:26:26,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:26:26,931.931 INFO    ] Initializing speech engine...
[2026-06-19 13:26:26,939.939 INFO    ] 2026-06-19 13:26:26
[2026-06-19 13:26:27,236.236 INFO    ] 2026-06-19 13:26:27
[2026-06-19 13:26:27,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:26:27,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:26:27,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:26:27,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:26:27,694.694 INFO    ] time= 19/06/2026 13:26:27
[2026-06-19 13:26:27,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:26:27,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:26:27,906.906 INFO    ] No existing commands found in stream
[2026-06-19 13:26:32,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:26:32,940.940 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 13:26:35,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:26:35,370.370 INFO    ] Checking for system updates...
[2026-06-19 13:26:35,411.411 INFO    ] 200
[2026-06-19 13:26:35,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:35,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:26:35,470.470 INFO    ] No update needed
[2026-06-19 13:26:35,472.472 INFO    ] Checking for camera pi updates...
[2026-06-19 13:26:35,511.511 INFO    ] 200
[2026-06-19 13:26:35,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:35,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:26:35,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:26:35,602.602 INFO    ] No camera update needed
[2026-06-19 13:26:35,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:26:35,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:26:35,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:26:35,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:26:37,657.657 INFO    ] ================================================
[2026-06-19 13:26:37,672.672 INFO    ] Launching Daemon at Fri Jun 19 13:26:37 IST 2026
[2026-06-19 13:26:37,683.683 INFO    ] ================================================
[2026-06-19 13:26:38,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:26:38
[2026-06-19 13:26:38,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:26:39,101.101 INFO    ] Initializing speech engine...
[2026-06-19 13:26:39,116.116 INFO    ] 2026-06-19 13:26:39
[2026-06-19 13:26:39,372.372 INFO    ] 2026-06-19 13:26:39
[2026-06-19 13:26:39,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:26:39,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:26:39,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:26:39,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:26:39,749.749 INFO    ] time= 19/06/2026 13:26:39
[2026-06-19 13:26:39,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:26:39,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:26:39,930.930 INFO    ] No existing commands found in stream
[2026-06-19 13:26:44,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:26:44,958.958 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 13:26:49,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:26:49,095.095 INFO    ] Checking for system updates...
[2026-06-19 13:26:49,137.137 INFO    ] 200
[2026-06-19 13:26:49,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:49,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:26:49,203.203 INFO    ] No update needed
[2026-06-19 13:26:49,205.205 INFO    ] Checking for camera pi updates...
[2026-06-19 13:26:49,243.243 INFO    ] 200
[2026-06-19 13:26:49,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:49,288.288 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:26:49,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:26:49,326.326 INFO    ] No camera update needed
[2026-06-19 13:26:49,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:26:49,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:26:49,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:26:49,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:26:51,383.383 INFO    ] ================================================
[2026-06-19 13:26:51,399.399 INFO    ] Launching Daemon at Fri Jun 19 13:26:51 IST 2026
[2026-06-19 13:26:51,410.410 INFO    ] ================================================
[2026-06-19 13:26:51,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:26:51
[2026-06-19 13:26:52,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:26:52,818.818 INFO    ] Initializing speech engine...
[2026-06-19 13:26:52,826.826 INFO    ] 2026-06-19 13:26:52
[2026-06-19 13:26:53,100.100 INFO    ] 2026-06-19 13:26:53
[2026-06-19 13:26:53,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:26:53,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:26:53,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:26:53,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:26:53,609.609 INFO    ] time= 19/06/2026 13:26:53
[2026-06-19 13:26:53,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:26:53,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:26:53,828.828 INFO    ] No existing commands found in stream
[2026-06-19 13:26:58,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:26:58,845.845 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 13:26:59,595.595 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:26:59,598.598 INFO    ] Checking for system updates...
[2026-06-19 13:26:59,634.634 INFO    ] 200
[2026-06-19 13:26:59,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:59,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:26:59,692.692 INFO    ] No update needed
[2026-06-19 13:26:59,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 13:26:59,732.732 INFO    ] 200
[2026-06-19 13:26:59,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:26:59,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:26:59,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:26:59,821.821 INFO    ] No camera update needed
[2026-06-19 13:26:59,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:26:59,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:26:59,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:26:59,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:27:01,879.879 INFO    ] ================================================
[2026-06-19 13:27:01,899.899 INFO    ] Launching Daemon at Fri Jun 19 13:27:01 IST 2026
[2026-06-19 13:27:01,912.912 INFO    ] ================================================
[2026-06-19 13:27:02,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:27:02
[2026-06-19 13:27:03,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:27:03,475.475 INFO    ] Initializing speech engine...
[2026-06-19 13:27:03,497.497 INFO    ] 2026-06-19 13:27:03
[2026-06-19 13:27:03,754.754 INFO    ] 2026-06-19 13:27:03
[2026-06-19 13:27:03,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:27:03,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:27:03,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:27:04,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:27:04,130.130 INFO    ] time= 19/06/2026 13:27:04
[2026-06-19 13:27:04,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:27:04,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:27:04,316.316 INFO    ] No existing commands found in stream
[2026-06-19 13:27:09,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:27:09,343.343 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 13:27:12,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:27:12,888.888 INFO    ] Checking for system updates...
[2026-06-19 13:27:12,925.925 INFO    ] 200
[2026-06-19 13:27:12,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:27:12,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:27:12,993.993 INFO    ] No update needed
[2026-06-19 13:27:12,996.996 INFO    ] Checking for camera pi updates...
[2026-06-19 13:27:13,035.035 INFO    ] 200
[2026-06-19 13:27:13,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:27:13,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:27:13,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:27:13,232.232 INFO    ] No camera update needed
[2026-06-19 13:27:13,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:27:13,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:27:13,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:27:13,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:27:15,292.292 INFO    ] ================================================
[2026-06-19 13:27:15,307.307 INFO    ] Launching Daemon at Fri Jun 19 13:27:15 IST 2026
[2026-06-19 13:27:15,318.318 INFO    ] ================================================
[2026-06-19 13:27:15,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:27:15
[2026-06-19 13:27:16,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:27:16,783.783 INFO    ] Initializing speech engine...
[2026-06-19 13:27:16,793.793 INFO    ] 2026-06-19 13:27:16
[2026-06-19 13:27:17,041.041 INFO    ] 2026-06-19 13:27:17
[2026-06-19 13:27:17,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:27:17,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:27:17,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:27:17,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:27:17,537.537 INFO    ] time= 19/06/2026 13:27:17
[2026-06-19 13:27:17,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:27:17,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:27:17,735.735 INFO    ] No existing commands found in stream
[2026-06-19 13:27:22,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:27:22,762.762 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 13:27:25,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:27:25,028.028 INFO    ] Checking for system updates...
[2026-06-19 13:27:25,069.069 INFO    ] 200
[2026-06-19 13:27:25,071.071 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:27:25,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:27:25,134.134 INFO    ] No update needed
[2026-06-19 13:27:25,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 13:27:25,175.175 INFO    ] 200
[2026-06-19 13:27:25,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:27:25,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:27:25,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:27:25,272.272 INFO    ] No camera update needed
[2026-06-19 13:27:25,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:27:25,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:27:25,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:27:25,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:27:27,328.328 INFO    ] ================================================
[2026-06-19 13:27:27,344.344 INFO    ] Launching Daemon at Fri Jun 19 13:27:27 IST 2026
[2026-06-19 13:27:27,355.355 INFO    ] ================================================
[2026-06-19 13:27:27,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:27:27
[2026-06-19 13:27:28,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:27:28,815.815 INFO    ] Initializing speech engine...
[2026-06-19 13:27:28,821.821 INFO    ] 2026-06-19 13:27:28
[2026-06-19 13:27:29,081.081 INFO    ] 2026-06-19 13:27:29
[2026-06-19 13:27:29,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:27:29,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:27:29,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:27:29,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:27:29,569.569 INFO    ] time= 19/06/2026 13:27:29
[2026-06-19 13:27:29,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:27:29,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:27:29,778.778 INFO    ] No existing commands found in stream
[2026-06-19 13:27:34,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:27:34,797.797 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 13:27:38,630.630 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:27:38,633.633 INFO    ] Checking for system updates...
[2026-06-19 13:27:38,673.673 INFO    ] 200
[2026-06-19 13:27:38,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:27:38,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:27:38,738.738 INFO    ] No update needed
[2026-06-19 13:27:38,741.741 INFO    ] Checking for camera pi updates...
[2026-06-19 13:27:38,774.774 INFO    ] 200
[2026-06-19 13:27:38,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:27:38,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:27:38,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:27:38,871.871 INFO    ] No camera update needed
[2026-06-19 13:27:38,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:27:38,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:27:38,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:27:38,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:27:40,928.928 INFO    ] ================================================
[2026-06-19 13:27:40,944.944 INFO    ] Launching Daemon at Fri Jun 19 13:27:40 IST 2026
[2026-06-19 13:27:40,955.955 INFO    ] ================================================
[2026-06-19 13:27:41,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:27:41
[2026-06-19 13:27:42,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:27:42,389.389 INFO    ] Initializing speech engine...
[2026-06-19 13:27:42,392.392 INFO    ] 2026-06-19 13:27:42
[2026-06-19 13:27:42,645.645 INFO    ] 2026-06-19 13:27:42
[2026-06-19 13:27:42,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:27:42,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:27:42,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:27:43,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:27:43,023.023 INFO    ] time= 19/06/2026 13:27:43
[2026-06-19 13:27:43,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:27:43,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:27:43,217.217 INFO    ] No existing commands found in stream
[2026-06-19 13:27:48,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:27:48,230.230 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 13:27:48,986.986 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:27:48,989.989 INFO    ] Checking for system updates...
[2026-06-19 13:27:49,025.025 INFO    ] 200
[2026-06-19 13:27:49,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:27:49,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:27:49,083.083 INFO    ] No update needed
[2026-06-19 13:27:49,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 13:27:49,120.120 INFO    ] 200
[2026-06-19 13:27:49,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:27:49,166.166 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:27:49,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:27:49,199.199 INFO    ] No camera update needed
[2026-06-19 13:27:49,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:27:49,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:27:49,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:27:49,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:27:51,258.258 INFO    ] ================================================
[2026-06-19 13:27:51,274.274 INFO    ] Launching Daemon at Fri Jun 19 13:27:51 IST 2026
[2026-06-19 13:27:51,286.286 INFO    ] ================================================
[2026-06-19 13:27:51,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:27:51
[2026-06-19 13:27:52,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:27:52,939.939 INFO    ] Initializing speech engine...
[2026-06-19 13:27:52,953.953 INFO    ] 2026-06-19 13:27:52
[2026-06-19 13:27:53,233.233 INFO    ] 2026-06-19 13:27:53
[2026-06-19 13:27:53,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:27:53,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:27:53,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:27:53,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:27:53,719.719 INFO    ] time= 19/06/2026 13:27:53
[2026-06-19 13:27:53,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:27:53,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:27:53,921.921 INFO    ] No existing commands found in stream
[2026-06-19 13:27:58,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:27:58,947.947 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 13:28:00,553.553 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:28:00,557.557 INFO    ] Checking for system updates...
[2026-06-19 13:28:00,611.611 INFO    ] 200
[2026-06-19 13:28:00,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:00,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:28:00,678.678 INFO    ] No update needed
[2026-06-19 13:28:00,681.681 INFO    ] Checking for camera pi updates...
[2026-06-19 13:28:00,720.720 INFO    ] 200
[2026-06-19 13:28:00,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:00,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:28:00,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:28:00,818.818 INFO    ] No camera update needed
[2026-06-19 13:28:00,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:28:00,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:28:00,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:28:00,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:28:02,883.883 INFO    ] ================================================
[2026-06-19 13:28:02,905.905 INFO    ] Launching Daemon at Fri Jun 19 13:28:02 IST 2026
[2026-06-19 13:28:02,917.917 INFO    ] ================================================
[2026-06-19 13:28:03,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:28:03
[2026-06-19 13:28:04,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:28:04,372.372 INFO    ] Initializing speech engine...
[2026-06-19 13:28:04,395.395 INFO    ] 2026-06-19 13:28:04
[2026-06-19 13:28:04,651.651 INFO    ] 2026-06-19 13:28:04
[2026-06-19 13:28:04,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:28:04,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:28:04,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:28:05,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:28:05,117.117 INFO    ] time= 19/06/2026 13:28:05
[2026-06-19 13:28:05,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:28:05,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:28:05,347.347 INFO    ] No existing commands found in stream
[2026-06-19 13:28:10,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:28:10,377.377 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 13:28:11,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:28:11,729.729 INFO    ] Checking for system updates...
[2026-06-19 13:28:11,770.770 INFO    ] 200
[2026-06-19 13:28:11,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:11,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:28:11,829.829 INFO    ] No update needed
[2026-06-19 13:28:11,831.831 INFO    ] Checking for camera pi updates...
[2026-06-19 13:28:11,865.865 INFO    ] 200
[2026-06-19 13:28:11,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:11,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:28:11,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:28:11,957.957 INFO    ] No camera update needed
[2026-06-19 13:28:11,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:28:11,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:28:11,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:28:11,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:28:14,014.014 INFO    ] ================================================
[2026-06-19 13:28:14,030.030 INFO    ] Launching Daemon at Fri Jun 19 13:28:14 IST 2026
[2026-06-19 13:28:14,041.041 INFO    ] ================================================
[2026-06-19 13:28:14,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:28:14
[2026-06-19 13:28:15,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:28:15,684.684 INFO    ] Initializing speech engine...
[2026-06-19 13:28:15,693.693 INFO    ] 2026-06-19 13:28:15
[2026-06-19 13:28:15,957.957 INFO    ] 2026-06-19 13:28:15
[2026-06-19 13:28:15,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:28:16,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:28:16,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:28:16,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:28:16,443.443 INFO    ] time= 19/06/2026 13:28:16
[2026-06-19 13:28:16,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:28:16,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:28:16,653.653 INFO    ] No existing commands found in stream
[2026-06-19 13:28:21,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:28:21,672.672 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 13:28:23,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:28:23,580.580 INFO    ] Checking for system updates...
[2026-06-19 13:28:23,616.616 INFO    ] 200
[2026-06-19 13:28:23,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:23,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:28:23,678.678 INFO    ] No update needed
[2026-06-19 13:28:23,680.680 INFO    ] Checking for camera pi updates...
[2026-06-19 13:28:23,724.724 INFO    ] 200
[2026-06-19 13:28:23,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:23,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:28:23,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:28:23,818.818 INFO    ] No camera update needed
[2026-06-19 13:28:23,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:28:23,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:28:23,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:28:23,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:28:25,876.876 INFO    ] ================================================
[2026-06-19 13:28:25,892.892 INFO    ] Launching Daemon at Fri Jun 19 13:28:25 IST 2026
[2026-06-19 13:28:25,902.902 INFO    ] ================================================
[2026-06-19 13:28:26,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:28:26
[2026-06-19 13:28:27,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:28:27,475.475 INFO    ] Initializing speech engine...
[2026-06-19 13:28:27,494.494 INFO    ] 2026-06-19 13:28:27
[2026-06-19 13:28:27,740.740 INFO    ] 2026-06-19 13:28:27
[2026-06-19 13:28:27,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:28:28,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:28:28,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:28:28,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:28:28,215.215 INFO    ] time= 19/06/2026 13:28:28
[2026-06-19 13:28:28,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:28:28,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:28:28,445.445 INFO    ] No existing commands found in stream
[2026-06-19 13:28:33,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:28:33,462.462 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 13:28:37,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:28:37,198.198 INFO    ] Checking for system updates...
[2026-06-19 13:28:37,234.234 INFO    ] 200
[2026-06-19 13:28:37,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:37,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:28:37,292.292 INFO    ] No update needed
[2026-06-19 13:28:37,295.295 INFO    ] Checking for camera pi updates...
[2026-06-19 13:28:37,329.329 INFO    ] 200
[2026-06-19 13:28:37,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:37,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:28:37,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:28:37,424.424 INFO    ] No camera update needed
[2026-06-19 13:28:37,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:28:37,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:28:37,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:28:37,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:28:39,481.481 INFO    ] ================================================
[2026-06-19 13:28:39,496.496 INFO    ] Launching Daemon at Fri Jun 19 13:28:39 IST 2026
[2026-06-19 13:28:39,507.507 INFO    ] ================================================
[2026-06-19 13:28:40,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:28:40
[2026-06-19 13:28:40,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:28:40,969.969 INFO    ] Initializing speech engine...
[2026-06-19 13:28:40,976.976 INFO    ] 2026-06-19 13:28:40
[2026-06-19 13:28:41,222.222 INFO    ] 2026-06-19 13:28:41
[2026-06-19 13:28:41,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:28:41,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:28:41,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:28:41,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:28:41,779.779 INFO    ] time= 19/06/2026 13:28:41
[2026-06-19 13:28:41,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:28:41,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:28:41,938.938 INFO    ] No existing commands found in stream
[2026-06-19 13:28:46,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:28:46,963.963 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 13:28:50,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:28:50,218.218 INFO    ] Checking for system updates...
[2026-06-19 13:28:50,260.260 INFO    ] 200
[2026-06-19 13:28:50,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:50,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:28:50,327.327 INFO    ] No update needed
[2026-06-19 13:28:50,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 13:28:50,365.365 INFO    ] 200
[2026-06-19 13:28:50,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:28:50,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:28:50,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:28:50,463.463 INFO    ] No camera update needed
[2026-06-19 13:28:50,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:28:50,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:28:50,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:28:50,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:28:52,522.522 INFO    ] ================================================
[2026-06-19 13:28:52,537.537 INFO    ] Launching Daemon at Fri Jun 19 13:28:52 IST 2026
[2026-06-19 13:28:52,548.548 INFO    ] ================================================
[2026-06-19 13:28:53,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:28:53
[2026-06-19 13:28:53,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:28:53,981.981 INFO    ] Initializing speech engine...
[2026-06-19 13:28:53,991.991 INFO    ] 2026-06-19 13:28:53
[2026-06-19 13:28:54,251.251 INFO    ] 2026-06-19 13:28:54
[2026-06-19 13:28:54,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:28:54,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:28:54,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:28:54,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:28:54,729.729 INFO    ] time= 19/06/2026 13:28:54
[2026-06-19 13:28:54,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:28:54,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:28:54,947.947 INFO    ] No existing commands found in stream
[2026-06-19 13:28:59,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:28:59,963.963 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 13:29:02,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:29:02,249.249 INFO    ] Checking for system updates...
[2026-06-19 13:29:02,300.300 INFO    ] 200
[2026-06-19 13:29:02,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:02,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:29:02,380.380 INFO    ] No update needed
[2026-06-19 13:29:02,383.383 INFO    ] Checking for camera pi updates...
[2026-06-19 13:29:02,428.428 INFO    ] 200
[2026-06-19 13:29:02,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:02,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:29:02,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:29:02,519.519 INFO    ] No camera update needed
[2026-06-19 13:29:02,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:29:02,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:29:02,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:29:02,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:29:04,588.588 INFO    ] ================================================
[2026-06-19 13:29:04,605.605 INFO    ] Launching Daemon at Fri Jun 19 13:29:04 IST 2026
[2026-06-19 13:29:04,616.616 INFO    ] ================================================
[2026-06-19 13:29:05,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:29:05
[2026-06-19 13:29:05,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:29:06,045.045 INFO    ] Initializing speech engine...
[2026-06-19 13:29:06,051.051 INFO    ] 2026-06-19 13:29:06
[2026-06-19 13:29:06,345.345 INFO    ] 2026-06-19 13:29:06
[2026-06-19 13:29:06,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:29:06,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:29:06,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:29:06,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:29:06,841.841 INFO    ] time= 19/06/2026 13:29:06
[2026-06-19 13:29:06,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:29:06,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:29:07,102.102 INFO    ] No existing commands found in stream
[2026-06-19 13:29:12,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:29:12,132.132 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 13:29:16,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:29:16,050.050 INFO    ] Checking for system updates...
[2026-06-19 13:29:16,085.085 INFO    ] 200
[2026-06-19 13:29:16,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:16,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:29:16,142.142 INFO    ] No update needed
[2026-06-19 13:29:16,145.145 INFO    ] Checking for camera pi updates...
[2026-06-19 13:29:16,182.182 INFO    ] 200
[2026-06-19 13:29:16,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:16,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:29:16,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:29:16,374.374 INFO    ] No camera update needed
[2026-06-19 13:29:16,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:29:16,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:29:16,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:29:16,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:29:18,430.430 INFO    ] ================================================
[2026-06-19 13:29:18,446.446 INFO    ] Launching Daemon at Fri Jun 19 13:29:18 IST 2026
[2026-06-19 13:29:18,457.457 INFO    ] ================================================
[2026-06-19 13:29:19,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:29:19
[2026-06-19 13:29:19,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:29:20,070.070 INFO    ] Initializing speech engine...
[2026-06-19 13:29:20,076.076 INFO    ] 2026-06-19 13:29:20
[2026-06-19 13:29:20,365.365 INFO    ] 2026-06-19 13:29:20
[2026-06-19 13:29:20,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:29:20,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:29:20,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:29:20,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:29:20,830.830 INFO    ] time= 19/06/2026 13:29:20
[2026-06-19 13:29:20,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:29:20,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:29:21,031.031 INFO    ] No existing commands found in stream
[2026-06-19 13:29:26,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:29:26,062.062 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 13:29:28,463.463 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:29:28,466.466 INFO    ] Checking for system updates...
[2026-06-19 13:29:28,505.505 INFO    ] 200
[2026-06-19 13:29:28,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:28,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:29:28,569.569 INFO    ] No update needed
[2026-06-19 13:29:28,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 13:29:28,609.609 INFO    ] 200
[2026-06-19 13:29:28,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:28,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:29:28,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:29:28,711.711 INFO    ] No camera update needed
[2026-06-19 13:29:28,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:29:28,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:29:28,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:29:28,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:29:30,771.771 INFO    ] ================================================
[2026-06-19 13:29:30,786.786 INFO    ] Launching Daemon at Fri Jun 19 13:29:30 IST 2026
[2026-06-19 13:29:30,797.797 INFO    ] ================================================
[2026-06-19 13:29:31,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:29:31
[2026-06-19 13:29:32,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:29:32,328.328 INFO    ] Initializing speech engine...
[2026-06-19 13:29:32,337.337 INFO    ] 2026-06-19 13:29:32
[2026-06-19 13:29:32,615.615 INFO    ] 2026-06-19 13:29:32
[2026-06-19 13:29:32,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:29:32,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:29:32,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:29:32,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:29:32,999.999 INFO    ] time= 19/06/2026 13:29:32
[2026-06-19 13:29:33,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:29:33,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:29:33,125.125 INFO    ] No existing commands found in stream
[2026-06-19 13:29:38,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:29:38,140.140 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 13:29:42,564.564 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:29:42,567.567 INFO    ] Checking for system updates...
[2026-06-19 13:29:42,604.604 INFO    ] 200
[2026-06-19 13:29:42,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:42,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:29:42,664.664 INFO    ] No update needed
[2026-06-19 13:29:42,666.666 INFO    ] Checking for camera pi updates...
[2026-06-19 13:29:42,703.703 INFO    ] 200
[2026-06-19 13:29:42,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:42,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:29:42,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:29:42,792.792 INFO    ] No camera update needed
[2026-06-19 13:29:42,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:29:42,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:29:42,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:29:42,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:29:44,849.849 INFO    ] ================================================
[2026-06-19 13:29:44,865.865 INFO    ] Launching Daemon at Fri Jun 19 13:29:44 IST 2026
[2026-06-19 13:29:44,875.875 INFO    ] ================================================
[2026-06-19 13:29:45,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:29:45
[2026-06-19 13:29:46,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:29:46,390.390 INFO    ] Initializing speech engine...
[2026-06-19 13:29:46,400.400 INFO    ] 2026-06-19 13:29:46
[2026-06-19 13:29:46,644.644 INFO    ] 2026-06-19 13:29:46
[2026-06-19 13:29:46,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:29:46,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:29:46,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:29:47,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:29:47,110.110 INFO    ] time= 19/06/2026 13:29:47
[2026-06-19 13:29:47,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:29:47,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:29:47,334.334 INFO    ] No existing commands found in stream
[2026-06-19 13:29:52,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:29:52,364.364 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 13:29:55,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:29:55,165.165 INFO    ] Checking for system updates...
[2026-06-19 13:29:55,201.201 INFO    ] 200
[2026-06-19 13:29:55,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:55,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:29:55,259.259 INFO    ] No update needed
[2026-06-19 13:29:55,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 13:29:55,295.295 INFO    ] 200
[2026-06-19 13:29:55,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:29:55,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:29:55,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:29:55,384.384 INFO    ] No camera update needed
[2026-06-19 13:29:55,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:29:55,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:29:55,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:29:55,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:29:57,440.440 INFO    ] ================================================
[2026-06-19 13:29:57,456.456 INFO    ] Launching Daemon at Fri Jun 19 13:29:57 IST 2026
[2026-06-19 13:29:57,467.467 INFO    ] ================================================
[2026-06-19 13:29:58,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:29:58
[2026-06-19 13:29:58,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:29:58,923.923 INFO    ] Initializing speech engine...
[2026-06-19 13:29:58,933.933 INFO    ] 2026-06-19 13:29:58
[2026-06-19 13:29:59,183.183 INFO    ] 2026-06-19 13:29:59
[2026-06-19 13:29:59,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:29:59,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:29:59,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:29:59,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:29:59,680.680 INFO    ] time= 19/06/2026 13:29:59
[2026-06-19 13:29:59,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:29:59,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:29:59,875.875 INFO    ] No existing commands found in stream
[2026-06-19 13:30:04,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:30:04,906.906 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 13:30:08,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:30:08,713.713 INFO    ] Checking for system updates...
[2026-06-19 13:30:08,750.750 INFO    ] 200
[2026-06-19 13:30:08,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:08,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:30:08,821.821 INFO    ] No update needed
[2026-06-19 13:30:08,823.823 INFO    ] Checking for camera pi updates...
[2026-06-19 13:30:08,857.857 INFO    ] 200
[2026-06-19 13:30:08,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:08,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:30:08,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:30:08,950.950 INFO    ] No camera update needed
[2026-06-19 13:30:08,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:30:08,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:30:08,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:30:08,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:30:11,008.008 INFO    ] ================================================
[2026-06-19 13:30:11,024.024 INFO    ] Launching Daemon at Fri Jun 19 13:30:11 IST 2026
[2026-06-19 13:30:11,035.035 INFO    ] ================================================
[2026-06-19 13:30:11,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:30:11
[2026-06-19 13:30:12,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:30:12,504.504 INFO    ] Initializing speech engine...
[2026-06-19 13:30:12,521.521 INFO    ] 2026-06-19 13:30:12
[2026-06-19 13:30:12,813.813 INFO    ] 2026-06-19 13:30:12
[2026-06-19 13:30:12,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:30:13,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:30:13,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:30:13,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:30:13,221.221 INFO    ] time= 19/06/2026 13:30:13
[2026-06-19 13:30:13,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:30:13,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:30:13,353.353 INFO    ] No existing commands found in stream
[2026-06-19 13:30:18,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:30:18,374.374 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 13:30:21,992.992 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:30:21,995.995 INFO    ] Checking for system updates...
[2026-06-19 13:30:22,032.032 INFO    ] 200
[2026-06-19 13:30:22,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:22,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:30:22,092.092 INFO    ] No update needed
[2026-06-19 13:30:22,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 13:30:22,128.128 INFO    ] 200
[2026-06-19 13:30:22,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:22,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:30:22,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:30:22,220.220 INFO    ] No camera update needed
[2026-06-19 13:30:22,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:30:22,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:30:22,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:30:22,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:30:24,276.276 INFO    ] ================================================
[2026-06-19 13:30:24,291.291 INFO    ] Launching Daemon at Fri Jun 19 13:30:24 IST 2026
[2026-06-19 13:30:24,302.302 INFO    ] ================================================
[2026-06-19 13:30:24,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:30:24
[2026-06-19 13:30:25,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:30:25,982.982 INFO    ] Initializing speech engine...
[2026-06-19 13:30:25,992.992 INFO    ] 2026-06-19 13:30:25
[2026-06-19 13:30:26,259.259 INFO    ] 2026-06-19 13:30:26
[2026-06-19 13:30:26,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:30:26,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:30:26,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:30:26,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:30:26,772.772 INFO    ] time= 19/06/2026 13:30:26
[2026-06-19 13:30:26,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:30:26,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:30:26,980.980 INFO    ] No existing commands found in stream
[2026-06-19 13:30:31,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:30:32,001.001 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 13:30:35,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:30:35,163.163 INFO    ] Checking for system updates...
[2026-06-19 13:30:35,201.201 INFO    ] 200
[2026-06-19 13:30:35,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:35,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:30:35,259.259 INFO    ] No update needed
[2026-06-19 13:30:35,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 13:30:35,296.296 INFO    ] 200
[2026-06-19 13:30:35,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:35,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:30:35,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:30:35,382.382 INFO    ] No camera update needed
[2026-06-19 13:30:35,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:30:35,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:30:35,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:30:35,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:30:37,437.437 INFO    ] ================================================
[2026-06-19 13:30:37,453.453 INFO    ] Launching Daemon at Fri Jun 19 13:30:37 IST 2026
[2026-06-19 13:30:37,463.463 INFO    ] ================================================
[2026-06-19 13:30:38,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:30:38
[2026-06-19 13:30:38,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:30:38,952.952 INFO    ] Initializing speech engine...
[2026-06-19 13:30:38,967.967 INFO    ] 2026-06-19 13:30:38
[2026-06-19 13:30:39,241.241 INFO    ] 2026-06-19 13:30:39
[2026-06-19 13:30:39,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:30:39,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:30:39,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:30:39,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:30:39,642.642 INFO    ] time= 19/06/2026 13:30:39
[2026-06-19 13:30:39,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:30:39,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:30:39,813.813 INFO    ] No existing commands found in stream
[2026-06-19 13:30:44,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:30:44,838.838 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 13:30:46,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:30:46,311.311 INFO    ] Checking for system updates...
[2026-06-19 13:30:46,349.349 INFO    ] 200
[2026-06-19 13:30:46,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:46,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:30:46,428.428 INFO    ] No update needed
[2026-06-19 13:30:46,430.430 INFO    ] Checking for camera pi updates...
[2026-06-19 13:30:46,465.465 INFO    ] 200
[2026-06-19 13:30:46,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:46,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:30:46,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:30:46,560.560 INFO    ] No camera update needed
[2026-06-19 13:30:46,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:30:46,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:30:46,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:30:46,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:30:48,615.615 INFO    ] ================================================
[2026-06-19 13:30:48,630.630 INFO    ] Launching Daemon at Fri Jun 19 13:30:48 IST 2026
[2026-06-19 13:30:48,641.641 INFO    ] ================================================
[2026-06-19 13:30:49,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:30:49
[2026-06-19 13:30:49,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:30:50,055.055 INFO    ] Initializing speech engine...
[2026-06-19 13:30:50,060.060 INFO    ] 2026-06-19 13:30:50
[2026-06-19 13:30:50,366.366 INFO    ] 2026-06-19 13:30:50
[2026-06-19 13:30:50,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:30:50,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:30:50,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:30:50,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:30:50,750.750 INFO    ] time= 19/06/2026 13:30:50
[2026-06-19 13:30:50,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:30:50,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:30:50,932.932 INFO    ] No existing commands found in stream
[2026-06-19 13:30:55,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:30:55,957.957 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 13:30:56,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:30:56,748.748 INFO    ] Checking for system updates...
[2026-06-19 13:30:56,784.784 INFO    ] 200
[2026-06-19 13:30:56,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:56,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:30:56,849.849 INFO    ] No update needed
[2026-06-19 13:30:56,852.852 INFO    ] Checking for camera pi updates...
[2026-06-19 13:30:56,886.886 INFO    ] 200
[2026-06-19 13:30:56,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:30:56,934.934 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:30:56,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:30:56,979.979 INFO    ] No camera update needed
[2026-06-19 13:30:56,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:30:56,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:30:56,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:30:56,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:30:59,036.036 INFO    ] ================================================
[2026-06-19 13:30:59,051.051 INFO    ] Launching Daemon at Fri Jun 19 13:30:59 IST 2026
[2026-06-19 13:30:59,062.062 INFO    ] ================================================
[2026-06-19 13:30:59,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:30:59
[2026-06-19 13:31:00,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:31:00,462.462 INFO    ] Initializing speech engine...
[2026-06-19 13:31:00,470.470 INFO    ] 2026-06-19 13:31:00
[2026-06-19 13:31:00,743.743 INFO    ] 2026-06-19 13:31:00
[2026-06-19 13:31:00,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:31:00,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:31:00,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:31:01,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:31:01,117.117 INFO    ] time= 19/06/2026 13:31:01
[2026-06-19 13:31:01,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:31:01,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:31:01,307.307 INFO    ] No existing commands found in stream
[2026-06-19 13:31:06,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:31:06,330.330 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 13:31:09,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:31:09,706.706 INFO    ] Checking for system updates...
[2026-06-19 13:31:09,742.742 INFO    ] 200
[2026-06-19 13:31:09,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:31:09,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:31:09,801.801 INFO    ] No update needed
[2026-06-19 13:31:09,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 13:31:09,840.840 INFO    ] 200
[2026-06-19 13:31:09,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:31:09,885.885 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:31:09,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:31:09,932.932 INFO    ] No camera update needed
[2026-06-19 13:31:09,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:31:09,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:31:09,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:31:09,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:31:12,994.994 INFO    ] ================================================
[2026-06-19 13:31:12,010.010 INFO    ] Launching Daemon at Fri Jun 19 13:31:12 IST 2026
[2026-06-19 13:31:12,021.021 INFO    ] ================================================
[2026-06-19 13:31:12,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:31:12
[2026-06-19 13:31:13,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:31:13,460.460 INFO    ] Initializing speech engine...
[2026-06-19 13:31:13,469.469 INFO    ] 2026-06-19 13:31:13
[2026-06-19 13:31:13,715.715 INFO    ] 2026-06-19 13:31:13
[2026-06-19 13:31:13,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:31:14,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:31:14,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:31:14,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:31:14,190.190 INFO    ] time= 19/06/2026 13:31:14
[2026-06-19 13:31:14,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:31:14,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:31:14,406.406 INFO    ] No existing commands found in stream
[2026-06-19 13:31:19,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:31:19,439.439 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 13:31:20,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:31:20,953.953 INFO    ] Checking for system updates...
[2026-06-19 13:31:20,989.989 INFO    ] 200
[2026-06-19 13:31:20,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:31:21,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:31:21,047.047 INFO    ] No update needed
[2026-06-19 13:31:21,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 13:31:21,087.087 INFO    ] 200
[2026-06-19 13:31:21,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:31:21,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:31:21,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:31:21,273.273 INFO    ] No camera update needed
[2026-06-19 13:31:21,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:31:21,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:31:21,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:31:21,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:31:23,329.329 INFO    ] ================================================
[2026-06-19 13:31:23,344.344 INFO    ] Launching Daemon at Fri Jun 19 13:31:23 IST 2026
[2026-06-19 13:31:23,355.355 INFO    ] ================================================
[2026-06-19 13:31:24,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:31:24
[2026-06-19 13:31:24,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:31:24,997.997 INFO    ] Initializing speech engine...
[2026-06-19 13:31:25,002.002 INFO    ] 2026-06-19 13:31:24
[2026-06-19 13:31:25,269.269 INFO    ] 2026-06-19 13:31:25
[2026-06-19 13:31:25,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:31:25,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:31:25,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:31:25,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:31:25,654.654 INFO    ] time= 19/06/2026 13:31:25
[2026-06-19 13:31:25,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:31:25,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:31:25,780.780 INFO    ] No existing commands found in stream
[2026-06-19 13:31:30,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:31:30,795.795 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 13:31:32,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:31:32,234.234 INFO    ] Checking for system updates...
[2026-06-19 13:31:32,291.291 INFO    ] 200
[2026-06-19 13:31:32,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:31:32,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:31:32,361.361 INFO    ] No update needed
[2026-06-19 13:31:32,364.364 INFO    ] Checking for camera pi updates...
[2026-06-19 13:31:32,400.400 INFO    ] 200
[2026-06-19 13:31:32,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:31:32,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:31:32,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:31:32,484.484 INFO    ] No camera update needed
[2026-06-19 13:31:32,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:31:32,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:31:32,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:31:32,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:31:34,543.543 INFO    ] ================================================
[2026-06-19 13:31:34,560.560 INFO    ] Launching Daemon at Fri Jun 19 13:31:34 IST 2026
[2026-06-19 13:31:34,572.572 INFO    ] ================================================
[2026-06-19 13:31:35,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:31:35
[2026-06-19 13:31:35,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:31:36,010.010 INFO    ] Initializing speech engine...
[2026-06-19 13:31:36,017.017 INFO    ] 2026-06-19 13:31:36
[2026-06-19 13:31:36,276.276 INFO    ] 2026-06-19 13:31:36
[2026-06-19 13:31:36,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:31:36,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:31:36,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:31:36,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:31:36,742.742 INFO    ] time= 19/06/2026 13:31:36
[2026-06-19 13:31:36,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:31:36,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:31:36,894.894 INFO    ] No existing commands found in stream
[2026-06-19 13:31:41,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:31:41,930.930 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 13:31:46,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:31:46,128.128 INFO    ] Checking for system updates...
[2026-06-19 13:31:46,164.164 INFO    ] 200
[2026-06-19 13:31:46,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:31:46,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:31:46,223.223 INFO    ] No update needed
[2026-06-19 13:31:46,226.226 INFO    ] Checking for camera pi updates...
[2026-06-19 13:31:46,260.260 INFO    ] 200
[2026-06-19 13:31:46,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:31:46,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:31:46,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:31:46,357.357 INFO    ] No camera update needed
[2026-06-19 13:31:46,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:31:46,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:31:46,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:31:46,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:31:48,411.411 INFO    ] ================================================
[2026-06-19 13:31:48,427.427 INFO    ] Launching Daemon at Fri Jun 19 13:31:48 IST 2026
[2026-06-19 13:31:48,437.437 INFO    ] ================================================
[2026-06-19 13:31:49,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:31:49
[2026-06-19 13:31:49,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:31:49,963.963 INFO    ] Initializing speech engine...
[2026-06-19 13:31:49,975.975 INFO    ] 2026-06-19 13:31:49
[2026-06-19 13:31:50,281.281 INFO    ] 2026-06-19 13:31:50
[2026-06-19 13:31:50,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:31:50,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:31:50,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:31:50,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:31:50,788.788 INFO    ] time= 19/06/2026 13:31:50
[2026-06-19 13:31:50,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:31:50,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:31:50,944.944 INFO    ] No existing commands found in stream
[2026-06-19 13:31:55,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:31:55,982.982 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 13:31:59,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:31:59,861.861 INFO    ] Checking for system updates...
[2026-06-19 13:31:59,897.897 INFO    ] 200
[2026-06-19 13:31:59,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:31:59,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:31:59,961.961 INFO    ] No update needed
[2026-06-19 13:31:59,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 13:31:59,997.997 INFO    ] 200
[2026-06-19 13:32:00,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:32:00,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:32:00,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:32:00,085.085 INFO    ] No camera update needed
[2026-06-19 13:32:00,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:32:00,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:32:00,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:32:00,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:32:02,147.147 INFO    ] ================================================
[2026-06-19 13:32:02,167.167 INFO    ] Launching Daemon at Fri Jun 19 13:32:02 IST 2026
[2026-06-19 13:32:02,181.181 INFO    ] ================================================
[2026-06-19 13:32:02,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:32:02
[2026-06-19 13:32:03,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:32:03,784.784 INFO    ] Initializing speech engine...
[2026-06-19 13:32:03,792.792 INFO    ] 2026-06-19 13:32:03
[2026-06-19 13:32:04,064.064 INFO    ] 2026-06-19 13:32:04
[2026-06-19 13:32:04,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:32:04,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:32:04,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:32:04,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:32:04,431.431 INFO    ] time= 19/06/2026 13:32:04
[2026-06-19 13:32:04,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:32:04,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:32:04,616.616 INFO    ] No existing commands found in stream
[2026-06-19 13:32:09,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:32:09,639.639 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 13:32:13,158.158 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:32:13,161.161 INFO    ] Checking for system updates...
[2026-06-19 13:32:13,200.200 INFO    ] 200
[2026-06-19 13:32:13,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:32:13,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:32:13,257.257 INFO    ] No update needed
[2026-06-19 13:32:13,259.259 INFO    ] Checking for camera pi updates...
[2026-06-19 13:32:13,294.294 INFO    ] 200
[2026-06-19 13:32:13,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:32:13,341.341 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:32:13,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:32:13,385.385 INFO    ] No camera update needed
[2026-06-19 13:32:13,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:32:13,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:32:13,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:32:13,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:32:15,441.441 INFO    ] ================================================
[2026-06-19 13:32:15,457.457 INFO    ] Launching Daemon at Fri Jun 19 13:32:15 IST 2026
[2026-06-19 13:32:15,470.470 INFO    ] ================================================
[2026-06-19 13:32:16,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:32:16
[2026-06-19 13:32:16,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:32:17,047.047 INFO    ] Initializing speech engine...
[2026-06-19 13:32:17,058.058 INFO    ] 2026-06-19 13:32:17
[2026-06-19 13:32:17,331.331 INFO    ] 2026-06-19 13:32:17
[2026-06-19 13:32:17,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:32:17,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:32:17,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:32:17,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:32:17,830.830 INFO    ] time= 19/06/2026 13:32:17
[2026-06-19 13:32:17,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:32:17,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:32:18,033.033 INFO    ] No existing commands found in stream
[2026-06-19 13:32:23,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:32:23,052.052 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 13:32:26,916.916 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:32:26,959.959 INFO    ] Checking for system updates...
[2026-06-19 13:32:26,998.998 INFO    ] 200
[2026-06-19 13:32:27,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:32:27,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:32:27,058.058 INFO    ] No update needed
[2026-06-19 13:32:27,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 13:32:27,095.095 INFO    ] 200
[2026-06-19 13:32:27,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:32:27,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:32:27,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:32:27,190.190 INFO    ] No camera update needed
[2026-06-19 13:32:27,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:32:27,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:32:27,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:32:27,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:32:29,248.248 INFO    ] ================================================
[2026-06-19 13:32:29,263.263 INFO    ] Launching Daemon at Fri Jun 19 13:32:29 IST 2026
[2026-06-19 13:32:29,274.274 INFO    ] ================================================
[2026-06-19 13:32:29,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:32:29
[2026-06-19 13:32:30,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:32:30,716.716 INFO    ] Initializing speech engine...
[2026-06-19 13:32:30,728.728 INFO    ] 2026-06-19 13:32:30
[2026-06-19 13:32:30,976.976 INFO    ] 2026-06-19 13:32:30
[2026-06-19 13:32:31,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:32:31,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:32:31,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:32:31,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:32:31,452.452 INFO    ] time= 19/06/2026 13:32:31
[2026-06-19 13:32:31,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:32:31,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:32:31,684.684 INFO    ] No existing commands found in stream
[2026-06-19 13:32:36,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:32:36,702.702 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 13:32:39,469.469 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:32:39,471.471 INFO    ] Checking for system updates...
[2026-06-19 13:32:39,511.511 INFO    ] 200
[2026-06-19 13:32:39,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:32:39,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:32:39,570.570 INFO    ] No update needed
[2026-06-19 13:32:39,573.573 INFO    ] Checking for camera pi updates...
[2026-06-19 13:32:39,607.607 INFO    ] 200
[2026-06-19 13:32:39,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:32:39,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:32:39,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:32:39,705.705 INFO    ] No camera update needed
[2026-06-19 13:32:39,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:32:39,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:32:39,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:32:39,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:32:41,763.763 INFO    ] ================================================
[2026-06-19 13:32:41,778.778 INFO    ] Launching Daemon at Fri Jun 19 13:32:41 IST 2026
[2026-06-19 13:32:41,789.789 INFO    ] ================================================
[2026-06-19 13:32:42,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:32:42
[2026-06-19 13:32:43,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:32:43,415.415 INFO    ] Initializing speech engine...
[2026-06-19 13:32:43,423.423 INFO    ] 2026-06-19 13:32:43
[2026-06-19 13:32:43,716.716 INFO    ] 2026-06-19 13:32:43
[2026-06-19 13:32:43,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:32:44,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:32:44,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:32:44,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:32:44,247.247 INFO    ] time= 19/06/2026 13:32:44
[2026-06-19 13:32:44,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:32:44,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:32:44,458.458 INFO    ] No existing commands found in stream
[2026-06-19 13:32:49,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:32:49,487.487 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 13:32:50,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:32:50,624.624 INFO    ] Checking for system updates...
[2026-06-19 13:32:50,662.662 INFO    ] 200
[2026-06-19 13:32:50,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:32:50,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:32:50,729.729 INFO    ] No update needed
[2026-06-19 13:32:50,732.732 INFO    ] Checking for camera pi updates...
[2026-06-19 13:32:50,768.768 INFO    ] 200
[2026-06-19 13:32:50,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:32:50,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:32:50,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:32:50,861.861 INFO    ] No camera update needed
[2026-06-19 13:32:50,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:32:50,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:32:50,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:32:50,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:32:52,916.916 INFO    ] ================================================
[2026-06-19 13:32:52,932.932 INFO    ] Launching Daemon at Fri Jun 19 13:32:52 IST 2026
[2026-06-19 13:32:52,943.943 INFO    ] ================================================
[2026-06-19 13:32:53,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:32:53
[2026-06-19 13:32:54,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:32:54,443.443 INFO    ] Initializing speech engine...
[2026-06-19 13:32:54,457.457 INFO    ] 2026-06-19 13:32:54
[2026-06-19 13:32:54,737.737 INFO    ] 2026-06-19 13:32:54
[2026-06-19 13:32:54,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:32:55,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:32:55,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:32:55,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:32:55,280.280 INFO    ] time= 19/06/2026 13:32:55
[2026-06-19 13:32:55,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:32:55,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:32:55,462.462 INFO    ] No existing commands found in stream
[2026-06-19 13:33:00,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:33:00,501.501 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 13:33:04,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:33:04,413.413 INFO    ] Checking for system updates...
[2026-06-19 13:33:04,451.451 INFO    ] 200
[2026-06-19 13:33:04,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:04,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:33:04,510.510 INFO    ] No update needed
[2026-06-19 13:33:04,513.513 INFO    ] Checking for camera pi updates...
[2026-06-19 13:33:04,549.549 INFO    ] 200
[2026-06-19 13:33:04,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:04,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:33:04,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:33:04,638.638 INFO    ] No camera update needed
[2026-06-19 13:33:04,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:33:04,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:33:04,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:33:04,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:33:06,696.696 INFO    ] ================================================
[2026-06-19 13:33:06,711.711 INFO    ] Launching Daemon at Fri Jun 19 13:33:06 IST 2026
[2026-06-19 13:33:06,722.722 INFO    ] ================================================
[2026-06-19 13:33:07,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:33:07
[2026-06-19 13:33:07,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:33:08,143.143 INFO    ] Initializing speech engine...
[2026-06-19 13:33:08,150.150 INFO    ] 2026-06-19 13:33:08
[2026-06-19 13:33:08,429.429 INFO    ] 2026-06-19 13:33:08
[2026-06-19 13:33:08,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:33:08,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:33:08,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:33:08,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:33:08,900.900 INFO    ] time= 19/06/2026 13:33:08
[2026-06-19 13:33:08,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:33:08,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:33:09,131.131 INFO    ] No existing commands found in stream
[2026-06-19 13:33:14,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:33:14,154.154 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 13:33:15,691.691 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:33:15,694.694 INFO    ] Checking for system updates...
[2026-06-19 13:33:15,731.731 INFO    ] 200
[2026-06-19 13:33:15,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:15,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:33:15,793.793 INFO    ] No update needed
[2026-06-19 13:33:15,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 13:33:15,831.831 INFO    ] 200
[2026-06-19 13:33:15,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:15,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:33:15,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:33:15,929.929 INFO    ] No camera update needed
[2026-06-19 13:33:15,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:33:15,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:33:15,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:33:15,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:33:17,989.989 INFO    ] ================================================
[2026-06-19 13:33:18,004.004 INFO    ] Launching Daemon at Fri Jun 19 13:33:17 IST 2026
[2026-06-19 13:33:18,021.021 INFO    ] ================================================
[2026-06-19 13:33:18,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:33:18
[2026-06-19 13:33:19,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:33:19,449.449 INFO    ] Initializing speech engine...
[2026-06-19 13:33:19,459.459 INFO    ] 2026-06-19 13:33:19
[2026-06-19 13:33:19,704.704 INFO    ] 2026-06-19 13:33:19
[2026-06-19 13:33:19,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:33:19,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:33:20,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:33:20,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:33:20,180.180 INFO    ] time= 19/06/2026 13:33:20
[2026-06-19 13:33:20,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:33:20,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:33:20,393.393 INFO    ] No existing commands found in stream
[2026-06-19 13:33:25,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:33:25,421.421 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 13:33:25,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:33:25,911.911 INFO    ] Checking for system updates...
[2026-06-19 13:33:25,947.947 INFO    ] 200
[2026-06-19 13:33:25,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:26,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:33:26,005.005 INFO    ] No update needed
[2026-06-19 13:33:26,007.007 INFO    ] Checking for camera pi updates...
[2026-06-19 13:33:26,046.046 INFO    ] 200
[2026-06-19 13:33:26,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:26,089.089 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:33:26,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:33:26,244.244 INFO    ] No camera update needed
[2026-06-19 13:33:26,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:33:26,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:33:26,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:33:26,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:33:28,303.303 INFO    ] ================================================
[2026-06-19 13:33:28,318.318 INFO    ] Launching Daemon at Fri Jun 19 13:33:28 IST 2026
[2026-06-19 13:33:28,329.329 INFO    ] ================================================
[2026-06-19 13:33:28,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:33:28
[2026-06-19 13:33:29,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:33:29,982.982 INFO    ] Initializing speech engine...
[2026-06-19 13:33:29,993.993 INFO    ] 2026-06-19 13:33:29
[2026-06-19 13:33:30,282.282 INFO    ] 2026-06-19 13:33:30
[2026-06-19 13:33:30,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:33:30,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:33:30,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:33:30,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:33:30,814.814 INFO    ] time= 19/06/2026 13:33:30
[2026-06-19 13:33:30,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:33:30,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:33:30,969.969 INFO    ] No existing commands found in stream
[2026-06-19 13:33:35,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:33:35,993.993 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 13:33:36,680.680 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:33:36,683.683 INFO    ] Checking for system updates...
[2026-06-19 13:33:36,722.722 INFO    ] 200
[2026-06-19 13:33:36,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:36,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:33:36,790.790 INFO    ] No update needed
[2026-06-19 13:33:36,793.793 INFO    ] Checking for camera pi updates...
[2026-06-19 13:33:36,828.828 INFO    ] 200
[2026-06-19 13:33:36,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:36,874.874 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:33:36,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:33:36,924.924 INFO    ] No camera update needed
[2026-06-19 13:33:36,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:33:36,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:33:36,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:33:36,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:33:38,984.984 INFO    ] ================================================
[2026-06-19 13:33:39,000.000 INFO    ] Launching Daemon at Fri Jun 19 13:33:38 IST 2026
[2026-06-19 13:33:39,010.010 INFO    ] ================================================
[2026-06-19 13:33:39,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:33:39
[2026-06-19 13:33:40,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:33:40,471.471 INFO    ] Initializing speech engine...
[2026-06-19 13:33:40,479.479 INFO    ] 2026-06-19 13:33:40
[2026-06-19 13:33:40,727.727 INFO    ] 2026-06-19 13:33:40
[2026-06-19 13:33:40,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:33:41,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:33:41,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:33:41,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:33:41,229.229 INFO    ] time= 19/06/2026 13:33:41
[2026-06-19 13:33:41,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:33:41,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:33:41,423.423 INFO    ] No existing commands found in stream
[2026-06-19 13:33:46,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:33:46,452.452 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 13:33:48,189.189 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:33:48,191.191 INFO    ] Checking for system updates...
[2026-06-19 13:33:48,227.227 INFO    ] 200
[2026-06-19 13:33:48,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:48,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:33:48,284.284 INFO    ] No update needed
[2026-06-19 13:33:48,287.287 INFO    ] Checking for camera pi updates...
[2026-06-19 13:33:48,322.322 INFO    ] 200
[2026-06-19 13:33:48,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:33:48,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:33:48,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:33:48,399.399 INFO    ] No camera update needed
[2026-06-19 13:33:48,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:33:48,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:33:48,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:33:48,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:33:50,457.457 INFO    ] ================================================
[2026-06-19 13:33:50,472.472 INFO    ] Launching Daemon at Fri Jun 19 13:33:50 IST 2026
[2026-06-19 13:33:50,483.483 INFO    ] ================================================
[2026-06-19 13:33:51,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:33:51
[2026-06-19 13:33:51,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:33:52,114.114 INFO    ] Initializing speech engine...
[2026-06-19 13:33:52,121.121 INFO    ] 2026-06-19 13:33:52
[2026-06-19 13:33:52,411.411 INFO    ] 2026-06-19 13:33:52
[2026-06-19 13:33:52,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:33:52,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:33:52,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:33:52,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:33:52,945.945 INFO    ] time= 19/06/2026 13:33:52
[2026-06-19 13:33:52,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:33:52,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:33:53,109.109 INFO    ] No existing commands found in stream
[2026-06-19 13:33:58,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:33:58,142.142 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 13:33:59,976.976 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:33:59,979.979 INFO    ] Checking for system updates...
[2026-06-19 13:34:00,017.017 INFO    ] 200
[2026-06-19 13:34:00,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:00,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:34:00,076.076 INFO    ] No update needed
[2026-06-19 13:34:00,079.079 INFO    ] Checking for camera pi updates...
[2026-06-19 13:34:00,116.116 INFO    ] 200
[2026-06-19 13:34:00,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:00,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:34:00,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:34:00,216.216 INFO    ] No camera update needed
[2026-06-19 13:34:00,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:34:00,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:34:00,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:34:00,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:34:02,276.276 INFO    ] ================================================
[2026-06-19 13:34:02,297.297 INFO    ] Launching Daemon at Fri Jun 19 13:34:02 IST 2026
[2026-06-19 13:34:02,313.313 INFO    ] ================================================
[2026-06-19 13:34:02,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:34:02
[2026-06-19 13:34:03,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:34:03,869.869 INFO    ] Initializing speech engine...
[2026-06-19 13:34:03,876.876 INFO    ] 2026-06-19 13:34:03
[2026-06-19 13:34:04,177.177 INFO    ] 2026-06-19 13:34:04
[2026-06-19 13:34:04,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:34:04,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:34:04,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:34:04,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:34:04,598.598 INFO    ] time= 19/06/2026 13:34:04
[2026-06-19 13:34:04,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:34:04,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:34:04,765.765 INFO    ] No existing commands found in stream
[2026-06-19 13:34:09,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:34:09,793.793 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 13:34:11,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:34:11,301.301 INFO    ] Checking for system updates...
[2026-06-19 13:34:11,337.337 INFO    ] 200
[2026-06-19 13:34:11,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:11,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:34:11,396.396 INFO    ] No update needed
[2026-06-19 13:34:11,398.398 INFO    ] Checking for camera pi updates...
[2026-06-19 13:34:11,432.432 INFO    ] 200
[2026-06-19 13:34:11,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:11,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:34:11,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:34:11,528.528 INFO    ] No camera update needed
[2026-06-19 13:34:11,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:34:11,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:34:11,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:34:11,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:34:13,583.583 INFO    ] ================================================
[2026-06-19 13:34:13,598.598 INFO    ] Launching Daemon at Fri Jun 19 13:34:13 IST 2026
[2026-06-19 13:34:13,609.609 INFO    ] ================================================
[2026-06-19 13:34:14,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:34:14
[2026-06-19 13:34:14,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:34:15,242.242 INFO    ] Initializing speech engine...
[2026-06-19 13:34:15,254.254 INFO    ] 2026-06-19 13:34:15
[2026-06-19 13:34:15,565.565 INFO    ] 2026-06-19 13:34:15
[2026-06-19 13:34:15,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:34:15,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:34:15,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:34:16,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:34:16,081.081 INFO    ] time= 19/06/2026 13:34:16
[2026-06-19 13:34:16,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:34:16,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:34:16,243.243 INFO    ] No existing commands found in stream
[2026-06-19 13:34:21,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:34:21,270.270 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 13:34:24,219.219 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:34:24,222.222 INFO    ] Checking for system updates...
[2026-06-19 13:34:24,259.259 INFO    ] 200
[2026-06-19 13:34:24,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:24,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:34:24,318.318 INFO    ] No update needed
[2026-06-19 13:34:24,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 13:34:24,355.355 INFO    ] 200
[2026-06-19 13:34:24,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:24,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:34:24,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:34:24,456.456 INFO    ] No camera update needed
[2026-06-19 13:34:24,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:34:24,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:34:24,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:34:24,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:34:26,512.512 INFO    ] ================================================
[2026-06-19 13:34:26,528.528 INFO    ] Launching Daemon at Fri Jun 19 13:34:26 IST 2026
[2026-06-19 13:34:26,539.539 INFO    ] ================================================
[2026-06-19 13:34:27,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:34:27
[2026-06-19 13:34:27,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:34:28,109.109 INFO    ] Initializing speech engine...
[2026-06-19 13:34:28,118.118 INFO    ] 2026-06-19 13:34:28
[2026-06-19 13:34:28,365.365 INFO    ] 2026-06-19 13:34:28
[2026-06-19 13:34:28,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:34:28,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:34:28,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:34:28,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:34:28,879.879 INFO    ] time= 19/06/2026 13:34:28
[2026-06-19 13:34:28,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:34:28,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:34:29,081.081 INFO    ] No existing commands found in stream
[2026-06-19 13:34:34,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:34:34,103.103 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 13:34:36,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:34:36,865.865 INFO    ] Checking for system updates...
[2026-06-19 13:34:36,903.903 INFO    ] 200
[2026-06-19 13:34:36,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:36,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:34:36,961.961 INFO    ] No update needed
[2026-06-19 13:34:36,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 13:34:37,000.000 INFO    ] 200
[2026-06-19 13:34:37,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:37,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:34:37,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:34:37,089.089 INFO    ] No camera update needed
[2026-06-19 13:34:37,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:34:37,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:34:37,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:34:37,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:34:39,143.143 INFO    ] ================================================
[2026-06-19 13:34:39,159.159 INFO    ] Launching Daemon at Fri Jun 19 13:34:39 IST 2026
[2026-06-19 13:34:39,169.169 INFO    ] ================================================
[2026-06-19 13:34:39,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:34:39
[2026-06-19 13:34:40,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:34:40,634.634 INFO    ] Initializing speech engine...
[2026-06-19 13:34:40,647.647 INFO    ] 2026-06-19 13:34:40
[2026-06-19 13:34:40,914.914 INFO    ] 2026-06-19 13:34:40
[2026-06-19 13:34:40,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:34:41,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:34:41,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:34:41,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:34:41,447.447 INFO    ] time= 19/06/2026 13:34:41
[2026-06-19 13:34:41,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:34:41,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:34:41,603.603 INFO    ] No existing commands found in stream
[2026-06-19 13:34:46,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:34:46,618.618 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 13:34:47,471.471 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:34:47,474.474 INFO    ] Checking for system updates...
[2026-06-19 13:34:47,510.510 INFO    ] 200
[2026-06-19 13:34:47,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:47,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:34:47,569.569 INFO    ] No update needed
[2026-06-19 13:34:47,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 13:34:47,606.606 INFO    ] 200
[2026-06-19 13:34:47,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:34:47,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:34:47,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:34:47,698.698 INFO    ] No camera update needed
[2026-06-19 13:34:47,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:34:47,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:34:47,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:34:47,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:34:49,754.754 INFO    ] ================================================
[2026-06-19 13:34:49,770.770 INFO    ] Launching Daemon at Fri Jun 19 13:34:49 IST 2026
[2026-06-19 13:34:49,780.780 INFO    ] ================================================
[2026-06-19 13:34:50,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:34:50
[2026-06-19 13:34:50,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:34:51,203.203 INFO    ] Initializing speech engine...
[2026-06-19 13:34:51,210.210 INFO    ] 2026-06-19 13:34:51
[2026-06-19 13:34:51,468.468 INFO    ] 2026-06-19 13:34:51
[2026-06-19 13:34:51,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:34:51,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:34:51,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:34:51,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:34:52,008.008 INFO    ] time= 19/06/2026 13:34:51
[2026-06-19 13:34:52,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:34:52,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:34:52,147.147 INFO    ] No existing commands found in stream
[2026-06-19 13:34:57,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:34:57,174.174 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 13:35:00,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:35:00,672.672 INFO    ] Checking for system updates...
[2026-06-19 13:35:00,708.708 INFO    ] 200
[2026-06-19 13:35:00,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:00,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:35:00,766.766 INFO    ] No update needed
[2026-06-19 13:35:00,768.768 INFO    ] Checking for camera pi updates...
[2026-06-19 13:35:00,806.806 INFO    ] 200
[2026-06-19 13:35:00,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:00,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:35:00,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:35:00,903.903 INFO    ] No camera update needed
[2026-06-19 13:35:00,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:35:00,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:35:00,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:35:00,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:35:02,981.981 INFO    ] ================================================
[2026-06-19 13:35:03,002.002 INFO    ] Launching Daemon at Fri Jun 19 13:35:02 IST 2026
[2026-06-19 13:35:03,018.018 INFO    ] ================================================
[2026-06-19 13:35:03,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:35:03
[2026-06-19 13:35:04,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:35:04,519.519 INFO    ] Initializing speech engine...
[2026-06-19 13:35:04,528.528 INFO    ] 2026-06-19 13:35:04
[2026-06-19 13:35:04,829.829 INFO    ] 2026-06-19 13:35:04
[2026-06-19 13:35:04,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:35:05,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:35:05,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:35:05,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:35:05,242.242 INFO    ] time= 19/06/2026 13:35:05
[2026-06-19 13:35:05,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:35:05,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:35:05,407.407 INFO    ] No existing commands found in stream
[2026-06-19 13:35:10,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:35:10,440.440 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 13:35:13,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:35:13,761.761 INFO    ] Checking for system updates...
[2026-06-19 13:35:13,802.802 INFO    ] 200
[2026-06-19 13:35:13,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:13,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:35:13,859.859 INFO    ] No update needed
[2026-06-19 13:35:13,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 13:35:13,896.896 INFO    ] 200
[2026-06-19 13:35:13,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:13,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:35:13,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:35:13,990.990 INFO    ] No camera update needed
[2026-06-19 13:35:13,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:35:13,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:35:14,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:35:14,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:35:16,047.047 INFO    ] ================================================
[2026-06-19 13:35:16,063.063 INFO    ] Launching Daemon at Fri Jun 19 13:35:16 IST 2026
[2026-06-19 13:35:16,074.074 INFO    ] ================================================
[2026-06-19 13:35:16,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:35:16
[2026-06-19 13:35:17,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:35:17,760.760 INFO    ] Initializing speech engine...
[2026-06-19 13:35:17,775.775 INFO    ] 2026-06-19 13:35:17
[2026-06-19 13:35:18,086.086 INFO    ] 2026-06-19 13:35:18
[2026-06-19 13:35:18,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:35:18,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:35:18,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:35:19,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:35:19,099.099 INFO    ] time= 19/06/2026 13:35:19
[2026-06-19 13:35:19,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:35:19,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:35:19,250.250 INFO    ] No existing commands found in stream
[2026-06-19 13:35:24,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:35:24,270.270 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 13:35:26,803.803 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:35:26,807.807 INFO    ] Checking for system updates...
[2026-06-19 13:35:26,849.849 INFO    ] 200
[2026-06-19 13:35:26,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:26,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:35:26,916.916 INFO    ] No update needed
[2026-06-19 13:35:26,919.919 INFO    ] Checking for camera pi updates...
[2026-06-19 13:35:26,959.959 INFO    ] 200
[2026-06-19 13:35:26,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:27,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:35:27,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:35:27,053.053 INFO    ] No camera update needed
[2026-06-19 13:35:27,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:35:27,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:35:27,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:35:27,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:35:29,115.115 INFO    ] ================================================
[2026-06-19 13:35:29,130.130 INFO    ] Launching Daemon at Fri Jun 19 13:35:29 IST 2026
[2026-06-19 13:35:29,142.142 INFO    ] ================================================
[2026-06-19 13:35:29,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:35:29
[2026-06-19 13:35:30,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:35:30,621.621 INFO    ] Initializing speech engine...
[2026-06-19 13:35:30,628.628 INFO    ] 2026-06-19 13:35:30
[2026-06-19 13:35:30,908.908 INFO    ] 2026-06-19 13:35:30
[2026-06-19 13:35:30,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:35:31,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:35:31,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:35:31,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:35:31,333.333 INFO    ] time= 19/06/2026 13:35:31
[2026-06-19 13:35:31,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:35:31,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:35:31,468.468 INFO    ] No existing commands found in stream
[2026-06-19 13:35:36,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:35:36,483.483 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 13:35:38,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:35:38,545.545 INFO    ] Checking for system updates...
[2026-06-19 13:35:38,588.588 INFO    ] 200
[2026-06-19 13:35:38,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:38,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:35:38,647.647 INFO    ] No update needed
[2026-06-19 13:35:38,650.650 INFO    ] Checking for camera pi updates...
[2026-06-19 13:35:38,690.690 INFO    ] 200
[2026-06-19 13:35:38,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:38,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:35:38,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:35:38,794.794 INFO    ] No camera update needed
[2026-06-19 13:35:38,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:35:38,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:35:38,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:35:38,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:35:40,853.853 INFO    ] ================================================
[2026-06-19 13:35:40,869.869 INFO    ] Launching Daemon at Fri Jun 19 13:35:40 IST 2026
[2026-06-19 13:35:40,880.880 INFO    ] ================================================
[2026-06-19 13:35:41,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:35:41
[2026-06-19 13:35:42,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:35:42,333.333 INFO    ] Initializing speech engine...
[2026-06-19 13:35:42,341.341 INFO    ] 2026-06-19 13:35:42
[2026-06-19 13:35:42,615.615 INFO    ] 2026-06-19 13:35:42
[2026-06-19 13:35:42,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:35:42,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:35:42,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:35:43,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:35:43,107.107 INFO    ] time= 19/06/2026 13:35:43
[2026-06-19 13:35:43,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:35:43,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:35:43,305.305 INFO    ] No existing commands found in stream
[2026-06-19 13:35:48,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:35:48,327.327 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 13:35:49,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:35:49,948.948 INFO    ] Checking for system updates...
[2026-06-19 13:35:49,989.989 INFO    ] 200
[2026-06-19 13:35:49,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:50,044.044 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:35:50,047.047 INFO    ] No update needed
[2026-06-19 13:35:50,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 13:35:50,084.084 INFO    ] 200
[2026-06-19 13:35:50,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:35:50,127.127 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:35:50,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:35:50,174.174 INFO    ] No camera update needed
[2026-06-19 13:35:50,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:35:50,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:35:50,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:35:50,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:35:52,230.230 INFO    ] ================================================
[2026-06-19 13:35:52,245.245 INFO    ] Launching Daemon at Fri Jun 19 13:35:52 IST 2026
[2026-06-19 13:35:52,256.256 INFO    ] ================================================
[2026-06-19 13:35:52,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:35:52
[2026-06-19 13:35:53,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:35:53,713.713 INFO    ] Initializing speech engine...
[2026-06-19 13:35:53,723.723 INFO    ] 2026-06-19 13:35:53
[2026-06-19 13:35:53,971.971 INFO    ] 2026-06-19 13:35:53
[2026-06-19 13:35:54,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:35:54,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:35:54,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:35:54,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:35:54,453.453 INFO    ] time= 19/06/2026 13:35:54
[2026-06-19 13:35:54,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:35:54,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:35:54,677.677 INFO    ] No existing commands found in stream
[2026-06-19 13:35:59,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:35:59,696.696 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 13:36:00,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:36:00,853.853 INFO    ] Checking for system updates...
[2026-06-19 13:36:00,890.890 INFO    ] 200
[2026-06-19 13:36:00,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:00,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:00,950.950 INFO    ] No update needed
[2026-06-19 13:36:00,952.952 INFO    ] Checking for camera pi updates...
[2026-06-19 13:36:00,987.987 INFO    ] 200
[2026-06-19 13:36:00,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:01,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:36:01,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:01,073.073 INFO    ] No camera update needed
[2026-06-19 13:36:01,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:36:01,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:36:01,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:36:01,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:36:03,141.141 INFO    ] ================================================
[2026-06-19 13:36:03,162.162 INFO    ] Launching Daemon at Fri Jun 19 13:36:03 IST 2026
[2026-06-19 13:36:03,177.177 INFO    ] ================================================
[2026-06-19 13:36:03,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:36:03
[2026-06-19 13:36:04,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:36:04,673.673 INFO    ] Initializing speech engine...
[2026-06-19 13:36:04,683.683 INFO    ] 2026-06-19 13:36:04
[2026-06-19 13:36:04,929.929 INFO    ] 2026-06-19 13:36:04
[2026-06-19 13:36:04,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:36:05,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:36:05,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:36:05,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:36:05,300.300 INFO    ] time= 19/06/2026 13:36:05
[2026-06-19 13:36:05,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:36:05,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:36:05,496.496 INFO    ] No existing commands found in stream
[2026-06-19 13:36:10,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:36:10,509.509 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 13:36:11,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:36:11,701.701 INFO    ] Checking for system updates...
[2026-06-19 13:36:11,737.737 INFO    ] 200
[2026-06-19 13:36:11,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:11,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:36:11,801.801 INFO    ] No update needed
[2026-06-19 13:36:11,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 13:36:11,837.837 INFO    ] 200
[2026-06-19 13:36:11,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:11,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:36:11,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:36:11,930.930 INFO    ] No camera update needed
[2026-06-19 13:36:11,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:36:11,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:36:11,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:36:11,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:36:13,987.987 INFO    ] ================================================
[2026-06-19 13:36:14,002.002 INFO    ] Launching Daemon at Fri Jun 19 13:36:13 IST 2026
[2026-06-19 13:36:14,013.013 INFO    ] ================================================
[2026-06-19 13:36:14,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:36:14
[2026-06-19 13:36:15,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:36:15,671.671 INFO    ] Initializing speech engine...
[2026-06-19 13:36:15,685.685 INFO    ] 2026-06-19 13:36:15
[2026-06-19 13:36:15,996.996 INFO    ] 2026-06-19 13:36:15
[2026-06-19 13:36:16,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:36:16,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:36:16,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:36:16,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:36:16,507.507 INFO    ] time= 19/06/2026 13:36:16
[2026-06-19 13:36:16,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:36:16,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:36:16,656.656 INFO    ] No existing commands found in stream
[2026-06-19 13:36:21,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:36:21,679.679 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 13:36:23,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:36:23,097.097 INFO    ] Checking for system updates...
[2026-06-19 13:36:23,133.133 INFO    ] 200
[2026-06-19 13:36:23,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:23,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:23,191.191 INFO    ] No update needed
[2026-06-19 13:36:23,193.193 INFO    ] Checking for camera pi updates...
[2026-06-19 13:36:23,227.227 INFO    ] 200
[2026-06-19 13:36:23,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:23,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:36:23,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:23,327.327 INFO    ] No camera update needed
[2026-06-19 13:36:23,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:36:23,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:36:23,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:36:23,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:36:25,384.384 INFO    ] ================================================
[2026-06-19 13:36:25,400.400 INFO    ] Launching Daemon at Fri Jun 19 13:36:25 IST 2026
[2026-06-19 13:36:25,411.411 INFO    ] ================================================
[2026-06-19 13:36:26,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:36:25
[2026-06-19 13:36:26,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:36:26,996.996 INFO    ] Initializing speech engine...
[2026-06-19 13:36:27,010.010 INFO    ] 2026-06-19 13:36:26
[2026-06-19 13:36:27,322.322 INFO    ] 2026-06-19 13:36:27
[2026-06-19 13:36:27,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:36:27,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:36:27,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:36:27,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:36:27,831.831 INFO    ] time= 19/06/2026 13:36:27
[2026-06-19 13:36:27,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:36:27,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:36:27,987.987 INFO    ] No existing commands found in stream
[2026-06-19 13:36:33,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:36:33,020.020 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 13:36:34,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:36:34,099.099 INFO    ] Checking for system updates...
[2026-06-19 13:36:34,137.137 INFO    ] 200
[2026-06-19 13:36:34,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:34,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:34,195.195 INFO    ] No update needed
[2026-06-19 13:36:34,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 13:36:34,231.231 INFO    ] 200
[2026-06-19 13:36:34,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:34,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:36:34,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:34,325.325 INFO    ] No camera update needed
[2026-06-19 13:36:34,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:36:34,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:36:34,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:36:34,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:36:36,379.379 INFO    ] ================================================
[2026-06-19 13:36:36,394.394 INFO    ] Launching Daemon at Fri Jun 19 13:36:36 IST 2026
[2026-06-19 13:36:36,405.405 INFO    ] ================================================
[2026-06-19 13:36:37,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:36:37
[2026-06-19 13:36:37,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:36:38,070.070 INFO    ] Initializing speech engine...
[2026-06-19 13:36:38,077.077 INFO    ] 2026-06-19 13:36:38
[2026-06-19 13:36:38,356.356 INFO    ] 2026-06-19 13:36:38
[2026-06-19 13:36:38,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:36:38,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:36:38,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:36:38,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:36:38,923.923 INFO    ] time= 19/06/2026 13:36:38
[2026-06-19 13:36:38,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:36:38,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:36:39,091.091 INFO    ] No existing commands found in stream
[2026-06-19 13:36:44,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:36:44,126.126 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 13:36:44,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:36:44,875.875 INFO    ] Checking for system updates...
[2026-06-19 13:36:44,919.919 INFO    ] 200
[2026-06-19 13:36:44,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:44,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:44,983.983 INFO    ] No update needed
[2026-06-19 13:36:44,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 13:36:45,025.025 INFO    ] 200
[2026-06-19 13:36:45,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:45,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:36:45,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:45,123.123 INFO    ] No camera update needed
[2026-06-19 13:36:45,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:36:45,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:36:45,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:36:45,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:36:47,183.183 INFO    ] ================================================
[2026-06-19 13:36:47,198.198 INFO    ] Launching Daemon at Fri Jun 19 13:36:47 IST 2026
[2026-06-19 13:36:47,208.208 INFO    ] ================================================
[2026-06-19 13:36:47,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:36:47
[2026-06-19 13:36:48,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:36:48,710.710 INFO    ] Initializing speech engine...
[2026-06-19 13:36:48,718.718 INFO    ] 2026-06-19 13:36:48
[2026-06-19 13:36:48,991.991 INFO    ] 2026-06-19 13:36:48
[2026-06-19 13:36:49,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:36:49,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:36:49,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:36:49,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:36:49,386.386 INFO    ] time= 19/06/2026 13:36:49
[2026-06-19 13:36:49,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:36:49,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:36:49,511.511 INFO    ] No existing commands found in stream
[2026-06-19 13:36:54,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:36:54,539.539 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 13:36:57,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:36:57,184.184 INFO    ] Checking for system updates...
[2026-06-19 13:36:57,226.226 INFO    ] 200
[2026-06-19 13:36:57,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:57,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:57,286.286 INFO    ] No update needed
[2026-06-19 13:36:57,289.289 INFO    ] Checking for camera pi updates...
[2026-06-19 13:36:57,324.324 INFO    ] 200
[2026-06-19 13:36:57,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:36:57,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:36:57,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:36:57,413.413 INFO    ] No camera update needed
[2026-06-19 13:36:57,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:36:57,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:36:57,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:36:57,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:36:59,473.473 INFO    ] ================================================
[2026-06-19 13:36:59,487.487 INFO    ] Launching Daemon at Fri Jun 19 13:36:59 IST 2026
[2026-06-19 13:36:59,498.498 INFO    ] ================================================
[2026-06-19 13:37:00,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:37:00
[2026-06-19 13:37:00,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:37:01,040.040 INFO    ] Initializing speech engine...
[2026-06-19 13:37:01,049.049 INFO    ] 2026-06-19 13:37:01
[2026-06-19 13:37:01,322.322 INFO    ] 2026-06-19 13:37:01
[2026-06-19 13:37:01,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:37:01,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:37:01,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:37:01,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:37:01,812.812 INFO    ] time= 19/06/2026 13:37:01
[2026-06-19 13:37:01,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:37:01,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:37:01,887.887 INFO    ] No existing commands found in stream
[2026-06-19 13:37:06,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:37:06,900.900 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 13:37:08,816.816 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:37:08,819.819 INFO    ] Checking for system updates...
[2026-06-19 13:37:08,855.855 INFO    ] 200
[2026-06-19 13:37:08,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:08,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:37:08,914.914 INFO    ] No update needed
[2026-06-19 13:37:08,916.916 INFO    ] Checking for camera pi updates...
[2026-06-19 13:37:08,951.951 INFO    ] 200
[2026-06-19 13:37:08,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:08,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:37:09,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:37:09,038.038 INFO    ] No camera update needed
[2026-06-19 13:37:09,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:37:09,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:37:09,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:37:09,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:37:11,093.093 INFO    ] ================================================
[2026-06-19 13:37:11,108.108 INFO    ] Launching Daemon at Fri Jun 19 13:37:11 IST 2026
[2026-06-19 13:37:11,119.119 INFO    ] ================================================
[2026-06-19 13:37:11,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:37:11
[2026-06-19 13:37:12,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:37:12,590.590 INFO    ] Initializing speech engine...
[2026-06-19 13:37:12,600.600 INFO    ] 2026-06-19 13:37:12
[2026-06-19 13:37:12,860.860 INFO    ] 2026-06-19 13:37:12
[2026-06-19 13:37:12,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:37:13,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:37:13,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:37:13,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:37:13,403.403 INFO    ] time= 19/06/2026 13:37:13
[2026-06-19 13:37:13,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:37:13,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:37:13,555.555 INFO    ] No existing commands found in stream
[2026-06-19 13:37:18,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:37:18,573.573 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 13:37:20,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:37:20,395.395 INFO    ] Checking for system updates...
[2026-06-19 13:37:20,431.431 INFO    ] 200
[2026-06-19 13:37:20,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:20,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:37:20,497.497 INFO    ] No update needed
[2026-06-19 13:37:20,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 13:37:20,533.533 INFO    ] 200
[2026-06-19 13:37:20,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:20,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:37:20,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:37:20,622.622 INFO    ] No camera update needed
[2026-06-19 13:37:20,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:37:20,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:37:20,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:37:20,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:37:22,679.679 INFO    ] ================================================
[2026-06-19 13:37:22,695.695 INFO    ] Launching Daemon at Fri Jun 19 13:37:22 IST 2026
[2026-06-19 13:37:22,705.705 INFO    ] ================================================
[2026-06-19 13:37:23,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:37:23
[2026-06-19 13:37:23,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:37:24,260.260 INFO    ] Initializing speech engine...
[2026-06-19 13:37:24,274.274 INFO    ] 2026-06-19 13:37:24
[2026-06-19 13:37:24,562.562 INFO    ] 2026-06-19 13:37:24
[2026-06-19 13:37:24,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:37:24,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:37:24,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:37:25,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:37:25,095.095 INFO    ] time= 19/06/2026 13:37:25
[2026-06-19 13:37:25,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:37:25,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:37:25,257.257 INFO    ] No existing commands found in stream
[2026-06-19 13:37:30,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:37:30,290.290 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 13:37:33,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:37:33,232.232 INFO    ] Checking for system updates...
[2026-06-19 13:37:33,269.269 INFO    ] 200
[2026-06-19 13:37:33,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:33,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:37:33,327.327 INFO    ] No update needed
[2026-06-19 13:37:33,329.329 INFO    ] Checking for camera pi updates...
[2026-06-19 13:37:33,363.363 INFO    ] 200
[2026-06-19 13:37:33,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:33,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:37:33,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:37:33,477.477 INFO    ] No camera update needed
[2026-06-19 13:37:33,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:37:33,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:37:33,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:37:33,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:37:35,533.533 INFO    ] ================================================
[2026-06-19 13:37:35,548.548 INFO    ] Launching Daemon at Fri Jun 19 13:37:35 IST 2026
[2026-06-19 13:37:35,559.559 INFO    ] ================================================
[2026-06-19 13:37:36,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:37:36
[2026-06-19 13:37:36,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:37:37,204.204 INFO    ] Initializing speech engine...
[2026-06-19 13:37:37,218.218 INFO    ] 2026-06-19 13:37:37
[2026-06-19 13:37:37,526.526 INFO    ] 2026-06-19 13:37:37
[2026-06-19 13:37:37,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:37:37,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:37:37,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:37:37,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:37:38,032.032 INFO    ] time= 19/06/2026 13:37:37
[2026-06-19 13:37:38,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:37:38,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:37:38,226.226 INFO    ] No existing commands found in stream
[2026-06-19 13:37:43,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:37:43,261.261 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 13:37:45,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:37:45,833.833 INFO    ] Checking for system updates...
[2026-06-19 13:37:45,871.871 INFO    ] 200
[2026-06-19 13:37:45,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:45,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:37:45,934.934 INFO    ] No update needed
[2026-06-19 13:37:45,937.937 INFO    ] Checking for camera pi updates...
[2026-06-19 13:37:45,971.971 INFO    ] 200
[2026-06-19 13:37:45,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:46,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:37:46,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:37:46,172.172 INFO    ] No camera update needed
[2026-06-19 13:37:46,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:37:46,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:37:46,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:37:46,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:37:48,228.228 INFO    ] ================================================
[2026-06-19 13:37:48,243.243 INFO    ] Launching Daemon at Fri Jun 19 13:37:48 IST 2026
[2026-06-19 13:37:48,253.253 INFO    ] ================================================
[2026-06-19 13:37:48,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:37:48
[2026-06-19 13:37:49,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:37:49,719.719 INFO    ] Initializing speech engine...
[2026-06-19 13:37:49,729.729 INFO    ] 2026-06-19 13:37:49
[2026-06-19 13:37:49,975.975 INFO    ] 2026-06-19 13:37:49
[2026-06-19 13:37:50,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:37:50,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:37:50,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:37:50,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:37:50,439.439 INFO    ] time= 19/06/2026 13:37:50
[2026-06-19 13:37:50,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:37:50,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:37:50,651.651 INFO    ] No existing commands found in stream
[2026-06-19 13:37:55,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:37:55,681.681 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 13:37:59,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:37:59,752.752 INFO    ] Checking for system updates...
[2026-06-19 13:37:59,794.794 INFO    ] 200
[2026-06-19 13:37:59,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:59,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:37:59,859.859 INFO    ] No update needed
[2026-06-19 13:37:59,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 13:37:59,896.896 INFO    ] 200
[2026-06-19 13:37:59,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:37:59,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:37:59,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:37:59,997.997 INFO    ] No camera update needed
[2026-06-19 13:37:59,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:38:00,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:38:00,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:38:00,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:38:02,057.057 INFO    ] ================================================
[2026-06-19 13:38:02,079.079 INFO    ] Launching Daemon at Fri Jun 19 13:38:02 IST 2026
[2026-06-19 13:38:02,091.091 INFO    ] ================================================
[2026-06-19 13:38:02,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:38:02
[2026-06-19 13:38:03,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:38:03,701.701 INFO    ] Initializing speech engine...
[2026-06-19 13:38:03,708.708 INFO    ] 2026-06-19 13:38:03
[2026-06-19 13:38:03,968.968 INFO    ] 2026-06-19 13:38:03
[2026-06-19 13:38:04,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:38:04,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:38:04,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:38:04,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:38:04,411.411 INFO    ] time= 19/06/2026 13:38:04
[2026-06-19 13:38:04,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:38:04,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:38:04,639.639 INFO    ] No existing commands found in stream
[2026-06-19 13:38:09,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:38:09,666.666 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 13:38:11,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:38:11,945.945 INFO    ] Checking for system updates...
[2026-06-19 13:38:11,986.986 INFO    ] 200
[2026-06-19 13:38:11,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:38:12,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:38:12,044.044 INFO    ] No update needed
[2026-06-19 13:38:12,047.047 INFO    ] Checking for camera pi updates...
[2026-06-19 13:38:12,081.081 INFO    ] 200
[2026-06-19 13:38:12,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:38:12,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:38:12,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:38:12,169.169 INFO    ] No camera update needed
[2026-06-19 13:38:12,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:38:12,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:38:12,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:38:12,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:38:14,227.227 INFO    ] ================================================
[2026-06-19 13:38:14,242.242 INFO    ] Launching Daemon at Fri Jun 19 13:38:14 IST 2026
[2026-06-19 13:38:14,252.252 INFO    ] ================================================
[2026-06-19 13:38:14,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:38:14
[2026-06-19 13:38:15,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:38:15,685.685 INFO    ] Initializing speech engine...
[2026-06-19 13:38:15,694.694 INFO    ] 2026-06-19 13:38:15
[2026-06-19 13:38:15,940.940 INFO    ] 2026-06-19 13:38:15
[2026-06-19 13:38:15,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:38:16,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:38:16,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:38:16,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:38:16,414.414 INFO    ] time= 19/06/2026 13:38:16
[2026-06-19 13:38:16,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:38:16,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:38:16,614.614 INFO    ] No existing commands found in stream
[2026-06-19 13:38:21,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:38:21,644.644 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 13:38:23,321.321 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:38:23,324.324 INFO    ] Checking for system updates...
[2026-06-19 13:38:23,366.366 INFO    ] 200
[2026-06-19 13:38:23,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:38:23,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:38:23,424.424 INFO    ] No update needed
[2026-06-19 13:38:23,427.427 INFO    ] Checking for camera pi updates...
[2026-06-19 13:38:23,460.460 INFO    ] 200
[2026-06-19 13:38:23,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:38:23,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:38:23,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:38:23,547.547 INFO    ] No camera update needed
[2026-06-19 13:38:23,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:38:23,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:38:23,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:38:23,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:38:25,603.603 INFO    ] ================================================
[2026-06-19 13:38:25,619.619 INFO    ] Launching Daemon at Fri Jun 19 13:38:25 IST 2026
[2026-06-19 13:38:25,630.630 INFO    ] ================================================
[2026-06-19 13:38:26,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:38:26
[2026-06-19 13:38:26,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:38:27,041.041 INFO    ] Initializing speech engine...
[2026-06-19 13:38:27,054.054 INFO    ] 2026-06-19 13:38:27
[2026-06-19 13:38:27,321.321 INFO    ] 2026-06-19 13:38:27
[2026-06-19 13:38:27,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:38:27,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:38:27,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:38:27,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:38:27,717.717 INFO    ] time= 19/06/2026 13:38:27
[2026-06-19 13:38:27,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:38:27,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:38:27,803.803 INFO    ] No existing commands found in stream
[2026-06-19 13:38:32,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:38:32,819.819 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 13:38:35,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:38:35,751.751 INFO    ] Checking for system updates...
[2026-06-19 13:38:35,791.791 INFO    ] 200
[2026-06-19 13:38:35,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:38:35,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:38:35,857.857 INFO    ] No update needed
[2026-06-19 13:38:35,859.859 INFO    ] Checking for camera pi updates...
[2026-06-19 13:38:35,897.897 INFO    ] 200
[2026-06-19 13:38:35,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:38:35,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:38:35,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:38:35,992.992 INFO    ] No camera update needed
[2026-06-19 13:38:35,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:38:35,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:38:36,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:38:36,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:38:38,047.047 INFO    ] ================================================
[2026-06-19 13:38:38,062.062 INFO    ] Launching Daemon at Fri Jun 19 13:38:38 IST 2026
[2026-06-19 13:38:38,073.073 INFO    ] ================================================
[2026-06-19 13:38:38,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:38:38
[2026-06-19 13:38:39,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:38:39,506.506 INFO    ] Initializing speech engine...
[2026-06-19 13:38:39,520.520 INFO    ] 2026-06-19 13:38:39
[2026-06-19 13:38:39,811.811 INFO    ] 2026-06-19 13:38:39
[2026-06-19 13:38:39,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:38:40,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:38:40,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:38:40,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:38:40,239.239 INFO    ] time= 19/06/2026 13:38:40
[2026-06-19 13:38:40,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:38:40,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:38:40,325.325 INFO    ] No existing commands found in stream
[2026-06-19 13:38:45,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:38:45,340.340 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 13:38:49,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:38:49,416.416 INFO    ] Checking for system updates...
[2026-06-19 13:38:49,452.452 INFO    ] 200
[2026-06-19 13:38:49,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:38:49,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:38:49,518.518 INFO    ] No update needed
[2026-06-19 13:38:49,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 13:38:49,559.559 INFO    ] 200
[2026-06-19 13:38:49,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:38:49,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:38:49,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:38:49,638.638 INFO    ] No camera update needed
[2026-06-19 13:38:49,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:38:49,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:38:49,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:38:49,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:38:51,694.694 INFO    ] ================================================
[2026-06-19 13:38:51,710.710 INFO    ] Launching Daemon at Fri Jun 19 13:38:51 IST 2026
[2026-06-19 13:38:51,720.720 INFO    ] ================================================
[2026-06-19 13:38:52,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:38:52
[2026-06-19 13:38:52,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:38:53,149.149 INFO    ] Initializing speech engine...
[2026-06-19 13:38:53,155.155 INFO    ] 2026-06-19 13:38:53
[2026-06-19 13:38:53,415.415 INFO    ] 2026-06-19 13:38:53
[2026-06-19 13:38:53,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:38:53,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:38:53,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:38:53,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:38:53,871.871 INFO    ] time= 19/06/2026 13:38:53
[2026-06-19 13:38:53,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:38:53,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:38:54,125.125 INFO    ] No existing commands found in stream
[2026-06-19 13:38:59,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:38:59,141.141 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 13:39:01,570.570 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:39:01,573.573 INFO    ] Checking for system updates...
[2026-06-19 13:39:01,609.609 INFO    ] 200
[2026-06-19 13:39:01,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:01,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:39:01,700.700 INFO    ] No update needed
[2026-06-19 13:39:01,704.704 INFO    ] Checking for camera pi updates...
[2026-06-19 13:39:01,781.781 INFO    ] 200
[2026-06-19 13:39:01,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:01,878.878 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:39:01,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:39:01,943.943 INFO    ] No camera update needed
[2026-06-19 13:39:01,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:39:01,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:39:01,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:39:01,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:39:04,008.008 INFO    ] ================================================
[2026-06-19 13:39:04,024.024 INFO    ] Launching Daemon at Fri Jun 19 13:39:04 IST 2026
[2026-06-19 13:39:04,035.035 INFO    ] ================================================
[2026-06-19 13:39:04,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:39:04
[2026-06-19 13:39:05,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:39:05,694.694 INFO    ] Initializing speech engine...
[2026-06-19 13:39:05,706.706 INFO    ] 2026-06-19 13:39:05
[2026-06-19 13:39:05,966.966 INFO    ] 2026-06-19 13:39:05
[2026-06-19 13:39:06,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:39:06,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:39:06,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:39:06,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:39:06,405.405 INFO    ] time= 19/06/2026 13:39:06
[2026-06-19 13:39:06,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:39:06,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:39:06,608.608 INFO    ] No existing commands found in stream
[2026-06-19 13:39:11,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:39:11,645.645 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 13:39:13,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:39:13,982.982 INFO    ] Checking for system updates...
[2026-06-19 13:39:14,023.023 INFO    ] 200
[2026-06-19 13:39:14,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:14,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:39:14,090.090 INFO    ] No update needed
[2026-06-19 13:39:14,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 13:39:14,127.127 INFO    ] 200
[2026-06-19 13:39:14,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:14,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:39:14,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:39:14,227.227 INFO    ] No camera update needed
[2026-06-19 13:39:14,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:39:14,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:39:14,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:39:14,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:39:16,284.284 INFO    ] ================================================
[2026-06-19 13:39:16,300.300 INFO    ] Launching Daemon at Fri Jun 19 13:39:16 IST 2026
[2026-06-19 13:39:16,311.311 INFO    ] ================================================
[2026-06-19 13:39:16,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:39:16
[2026-06-19 13:39:17,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:39:17,980.980 INFO    ] Initializing speech engine...
[2026-06-19 13:39:17,992.992 INFO    ] 2026-06-19 13:39:17
[2026-06-19 13:39:18,303.303 INFO    ] 2026-06-19 13:39:18
[2026-06-19 13:39:18,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:39:18,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:39:18,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:39:18,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:39:18,815.815 INFO    ] time= 19/06/2026 13:39:18
[2026-06-19 13:39:18,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:39:18,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:39:18,992.992 INFO    ] No existing commands found in stream
[2026-06-19 13:39:24,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:39:24,027.027 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 13:39:28,358.358 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:39:28,361.361 INFO    ] Checking for system updates...
[2026-06-19 13:39:28,403.403 INFO    ] 200
[2026-06-19 13:39:28,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:28,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:39:28,469.469 INFO    ] No update needed
[2026-06-19 13:39:28,471.471 INFO    ] Checking for camera pi updates...
[2026-06-19 13:39:28,505.505 INFO    ] 200
[2026-06-19 13:39:28,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:28,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:39:28,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:39:28,592.592 INFO    ] No camera update needed
[2026-06-19 13:39:28,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:39:28,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:39:28,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:39:28,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:39:30,646.646 INFO    ] ================================================
[2026-06-19 13:39:30,661.661 INFO    ] Launching Daemon at Fri Jun 19 13:39:30 IST 2026
[2026-06-19 13:39:30,672.672 INFO    ] ================================================
[2026-06-19 13:39:31,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:39:31
[2026-06-19 13:39:31,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:39:32,114.114 INFO    ] Initializing speech engine...
[2026-06-19 13:39:32,134.134 INFO    ] 2026-06-19 13:39:32
[2026-06-19 13:39:32,393.393 INFO    ] 2026-06-19 13:39:32
[2026-06-19 13:39:32,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:39:32,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:39:32,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:39:32,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:39:32,893.893 INFO    ] time= 19/06/2026 13:39:32
[2026-06-19 13:39:32,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:39:32,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:39:33,098.098 INFO    ] No existing commands found in stream
[2026-06-19 13:39:38,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:39:38,142.142 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 13:39:41,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:39:41,641.641 INFO    ] Checking for system updates...
[2026-06-19 13:39:41,678.678 INFO    ] 200
[2026-06-19 13:39:41,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:41,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:39:41,737.737 INFO    ] No update needed
[2026-06-19 13:39:41,739.739 INFO    ] Checking for camera pi updates...
[2026-06-19 13:39:41,779.779 INFO    ] 200
[2026-06-19 13:39:41,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:41,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:39:41,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:39:41,868.868 INFO    ] No camera update needed
[2026-06-19 13:39:41,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:39:41,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:39:41,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:39:41,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:39:43,928.928 INFO    ] ================================================
[2026-06-19 13:39:43,943.943 INFO    ] Launching Daemon at Fri Jun 19 13:39:43 IST 2026
[2026-06-19 13:39:43,954.954 INFO    ] ================================================
[2026-06-19 13:39:44,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:39:44
[2026-06-19 13:39:45,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:39:45,426.426 INFO    ] Initializing speech engine...
[2026-06-19 13:39:45,431.431 INFO    ] 2026-06-19 13:39:45
[2026-06-19 13:39:45,693.693 INFO    ] 2026-06-19 13:39:45
[2026-06-19 13:39:45,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:39:45,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:39:45,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:39:46,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:39:46,238.238 INFO    ] time= 19/06/2026 13:39:46
[2026-06-19 13:39:46,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:39:46,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:39:46,391.391 INFO    ] No existing commands found in stream
[2026-06-19 13:39:51,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:39:51,407.407 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 13:39:52,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:39:52,558.558 INFO    ] Checking for system updates...
[2026-06-19 13:39:52,600.600 INFO    ] 200
[2026-06-19 13:39:52,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:52,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:39:52,666.666 INFO    ] No update needed
[2026-06-19 13:39:52,668.668 INFO    ] Checking for camera pi updates...
[2026-06-19 13:39:52,707.707 INFO    ] 200
[2026-06-19 13:39:52,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:39:52,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:39:52,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:39:52,898.898 INFO    ] No camera update needed
[2026-06-19 13:39:52,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:39:52,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:39:52,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:39:52,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:39:54,954.954 INFO    ] ================================================
[2026-06-19 13:39:54,969.969 INFO    ] Launching Daemon at Fri Jun 19 13:39:54 IST 2026
[2026-06-19 13:39:54,981.981 INFO    ] ================================================
[2026-06-19 13:39:55,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:39:55
[2026-06-19 13:39:56,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:39:56,669.669 INFO    ] Initializing speech engine...
[2026-06-19 13:39:56,678.678 INFO    ] 2026-06-19 13:39:56
[2026-06-19 13:39:56,997.997 INFO    ] 2026-06-19 13:39:56
[2026-06-19 13:39:57,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:39:57,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:39:57,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:39:57,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:39:57,511.511 INFO    ] time= 19/06/2026 13:39:57
[2026-06-19 13:39:57,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:39:57,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:39:57,677.677 INFO    ] No existing commands found in stream
[2026-06-19 13:40:02,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:40:02,709.709 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 13:40:08,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:40:08,402.402 INFO    ] Checking for system updates...
[2026-06-19 13:40:08,439.439 INFO    ] 200
[2026-06-19 13:40:08,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:08,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:08,496.496 INFO    ] No update needed
[2026-06-19 13:40:08,499.499 INFO    ] Checking for camera pi updates...
[2026-06-19 13:40:08,533.533 INFO    ] 200
[2026-06-19 13:40:08,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:08,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:40:08,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:08,624.624 INFO    ] No camera update needed
[2026-06-19 13:40:08,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:40:08,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:40:08,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:40:08,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:40:10,682.682 INFO    ] ================================================
[2026-06-19 13:40:10,697.697 INFO    ] Launching Daemon at Fri Jun 19 13:40:10 IST 2026
[2026-06-19 13:40:10,709.709 INFO    ] ================================================
[2026-06-19 13:40:11,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:40:11
[2026-06-19 13:40:12,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:40:12,379.379 INFO    ] Initializing speech engine...
[2026-06-19 13:40:12,393.393 INFO    ] 2026-06-19 13:40:12
[2026-06-19 13:40:12,708.708 INFO    ] 2026-06-19 13:40:12
[2026-06-19 13:40:12,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:40:12,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:40:12,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:40:13,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:40:13,234.234 INFO    ] time= 19/06/2026 13:40:13
[2026-06-19 13:40:13,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:40:13,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:40:13,386.386 INFO    ] No existing commands found in stream
[2026-06-19 13:40:18,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:40:18,408.408 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 13:40:20,265.265 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:40:20,268.268 INFO    ] Checking for system updates...
[2026-06-19 13:40:20,306.306 INFO    ] 200
[2026-06-19 13:40:20,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:20,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:20,374.374 INFO    ] No update needed
[2026-06-19 13:40:20,377.377 INFO    ] Checking for camera pi updates...
[2026-06-19 13:40:20,417.417 INFO    ] 200
[2026-06-19 13:40:20,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:20,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:40:20,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:20,520.520 INFO    ] No camera update needed
[2026-06-19 13:40:20,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:40:20,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:40:20,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:40:20,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:40:22,581.581 INFO    ] ================================================
[2026-06-19 13:40:22,596.596 INFO    ] Launching Daemon at Fri Jun 19 13:40:22 IST 2026
[2026-06-19 13:40:22,607.607 INFO    ] ================================================
[2026-06-19 13:40:23,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:40:23
[2026-06-19 13:40:23,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:40:24,048.048 INFO    ] Initializing speech engine...
[2026-06-19 13:40:24,057.057 INFO    ] 2026-06-19 13:40:24
[2026-06-19 13:40:24,310.310 INFO    ] 2026-06-19 13:40:24
[2026-06-19 13:40:24,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:40:24,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:40:24,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:40:24,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:40:24,690.690 INFO    ] time= 19/06/2026 13:40:24
[2026-06-19 13:40:24,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:40:24,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:40:24,864.864 INFO    ] No existing commands found in stream
[2026-06-19 13:40:29,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:40:29,892.892 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 13:40:30,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:40:30,983.983 INFO    ] Checking for system updates...
[2026-06-19 13:40:31,024.024 INFO    ] 200
[2026-06-19 13:40:31,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:31,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:31,091.091 INFO    ] No update needed
[2026-06-19 13:40:31,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 13:40:31,127.127 INFO    ] 200
[2026-06-19 13:40:31,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:31,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:40:31,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:31,230.230 INFO    ] No camera update needed
[2026-06-19 13:40:31,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:40:31,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:40:31,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:40:31,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:40:33,290.290 INFO    ] ================================================
[2026-06-19 13:40:33,306.306 INFO    ] Launching Daemon at Fri Jun 19 13:40:33 IST 2026
[2026-06-19 13:40:33,316.316 INFO    ] ================================================
[2026-06-19 13:40:33,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:40:33
[2026-06-19 13:40:34,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:40:34,859.859 INFO    ] Initializing speech engine...
[2026-06-19 13:40:34,871.871 INFO    ] 2026-06-19 13:40:34
[2026-06-19 13:40:35,183.183 INFO    ] 2026-06-19 13:40:35
[2026-06-19 13:40:35,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:40:35,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:40:35,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:40:35,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:40:35,620.620 INFO    ] time= 19/06/2026 13:40:35
[2026-06-19 13:40:35,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:40:35,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:40:35,788.788 INFO    ] No existing commands found in stream
[2026-06-19 13:40:40,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:40:40,804.804 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 13:40:41,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:40:41,921.921 INFO    ] Checking for system updates...
[2026-06-19 13:40:41,962.962 INFO    ] 200
[2026-06-19 13:40:41,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:42,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:42,020.020 INFO    ] No update needed
[2026-06-19 13:40:42,022.022 INFO    ] Checking for camera pi updates...
[2026-06-19 13:40:42,056.056 INFO    ] 200
[2026-06-19 13:40:42,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:42,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:40:42,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:42,148.148 INFO    ] No camera update needed
[2026-06-19 13:40:42,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:40:42,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:40:42,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:40:42,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:40:44,204.204 INFO    ] ================================================
[2026-06-19 13:40:44,220.220 INFO    ] Launching Daemon at Fri Jun 19 13:40:44 IST 2026
[2026-06-19 13:40:44,231.231 INFO    ] ================================================
[2026-06-19 13:40:44,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:40:44
[2026-06-19 13:40:45,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:40:45,909.909 INFO    ] Initializing speech engine...
[2026-06-19 13:40:45,917.917 INFO    ] 2026-06-19 13:40:45
[2026-06-19 13:40:46,241.241 INFO    ] 2026-06-19 13:40:46
[2026-06-19 13:40:46,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:40:46,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:40:46,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:40:46,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:40:46,754.754 INFO    ] time= 19/06/2026 13:40:46
[2026-06-19 13:40:46,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:40:46,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:40:46,920.920 INFO    ] No existing commands found in stream
[2026-06-19 13:40:51,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:40:51,960.960 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 13:40:53,701.701 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:40:53,703.703 INFO    ] Checking for system updates...
[2026-06-19 13:40:53,744.744 INFO    ] 200
[2026-06-19 13:40:53,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:53,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:53,802.802 INFO    ] No update needed
[2026-06-19 13:40:53,805.805 INFO    ] Checking for camera pi updates...
[2026-06-19 13:40:53,839.839 INFO    ] 200
[2026-06-19 13:40:53,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:40:53,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:40:53,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:40:53,927.927 INFO    ] No camera update needed
[2026-06-19 13:40:53,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:40:53,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:40:53,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:40:53,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:40:55,982.982 INFO    ] ================================================
[2026-06-19 13:40:56,998.998 INFO    ] Launching Daemon at Fri Jun 19 13:40:55 IST 2026
[2026-06-19 13:40:56,008.008 INFO    ] ================================================
[2026-06-19 13:40:56,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:40:56
[2026-06-19 13:40:57,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:40:57,567.567 INFO    ] Initializing speech engine...
[2026-06-19 13:40:57,579.579 INFO    ] 2026-06-19 13:40:57
[2026-06-19 13:40:57,897.897 INFO    ] 2026-06-19 13:40:57
[2026-06-19 13:40:57,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:40:58,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:40:58,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:40:58,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:40:58,425.425 INFO    ] time= 19/06/2026 13:40:58
[2026-06-19 13:40:58,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:40:58,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:40:58,576.576 INFO    ] No existing commands found in stream
[2026-06-19 13:41:03,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:41:03,601.601 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-19 13:41:05,702.702 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:41:05,705.705 INFO    ] Checking for system updates...
[2026-06-19 13:41:05,747.747 INFO    ] 200
[2026-06-19 13:41:05,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:05,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:41:05,807.807 INFO    ] No update needed
[2026-06-19 13:41:05,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 13:41:05,848.848 INFO    ] 200
[2026-06-19 13:41:05,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:05,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:41:05,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:41:05,934.934 INFO    ] No camera update needed
[2026-06-19 13:41:05,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:41:05,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:41:05,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:41:05,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:41:07,990.990 INFO    ] ================================================
[2026-06-19 13:41:08,005.005 INFO    ] Launching Daemon at Fri Jun 19 13:41:08 IST 2026
[2026-06-19 13:41:08,016.016 INFO    ] ================================================
[2026-06-19 13:41:08,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:41:08
[2026-06-19 13:41:09,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:41:09,712.712 INFO    ] Initializing speech engine...
[2026-06-19 13:41:09,720.720 INFO    ] 2026-06-19 13:41:09
[2026-06-19 13:41:10,050.050 INFO    ] 2026-06-19 13:41:10
[2026-06-19 13:41:10,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:41:10,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:41:10,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:41:10,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:41:10,576.576 INFO    ] time= 19/06/2026 13:41:10
[2026-06-19 13:41:10,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:41:10,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:41:10,755.755 INFO    ] No existing commands found in stream
[2026-06-19 13:41:15,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:41:15,785.785 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 13:41:18,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:41:18,584.584 INFO    ] Checking for system updates...
[2026-06-19 13:41:18,623.623 INFO    ] 200
[2026-06-19 13:41:18,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:18,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:41:18,681.681 INFO    ] No update needed
[2026-06-19 13:41:18,684.684 INFO    ] Checking for camera pi updates...
[2026-06-19 13:41:18,717.717 INFO    ] 200
[2026-06-19 13:41:18,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:18,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:41:18,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:41:18,808.808 INFO    ] No camera update needed
[2026-06-19 13:41:18,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:41:18,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:41:18,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:41:18,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:41:20,863.863 INFO    ] ================================================
[2026-06-19 13:41:20,878.878 INFO    ] Launching Daemon at Fri Jun 19 13:41:20 IST 2026
[2026-06-19 13:41:20,889.889 INFO    ] ================================================
[2026-06-19 13:41:21,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:41:21
[2026-06-19 13:41:22,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:41:22,309.309 INFO    ] Initializing speech engine...
[2026-06-19 13:41:22,317.317 INFO    ] 2026-06-19 13:41:22
[2026-06-19 13:41:22,616.616 INFO    ] 2026-06-19 13:41:22
[2026-06-19 13:41:22,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:41:22,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:41:22,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:41:23,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:41:23,047.047 INFO    ] time= 19/06/2026 13:41:23
[2026-06-19 13:41:23,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:41:23,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:41:23,137.137 INFO    ] No existing commands found in stream
[2026-06-19 13:41:28,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:41:28,155.155 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 13:41:29,224.224 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:41:29,227.227 INFO    ] Checking for system updates...
[2026-06-19 13:41:29,268.268 INFO    ] 200
[2026-06-19 13:41:29,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:29,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:41:29,327.327 INFO    ] No update needed
[2026-06-19 13:41:29,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 13:41:29,368.368 INFO    ] 200
[2026-06-19 13:41:29,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:29,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:41:29,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:41:29,452.452 INFO    ] No camera update needed
[2026-06-19 13:41:29,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:41:29,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:41:29,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:41:29,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:41:31,509.509 INFO    ] ================================================
[2026-06-19 13:41:31,525.525 INFO    ] Launching Daemon at Fri Jun 19 13:41:31 IST 2026
[2026-06-19 13:41:31,536.536 INFO    ] ================================================
[2026-06-19 13:41:32,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:41:32
[2026-06-19 13:41:32,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:41:33,077.077 INFO    ] Initializing speech engine...
[2026-06-19 13:41:33,097.097 INFO    ] 2026-06-19 13:41:33
[2026-06-19 13:41:33,367.367 INFO    ] 2026-06-19 13:41:33
[2026-06-19 13:41:33,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:41:33,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:41:33,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:41:33,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:41:33,957.957 INFO    ] time= 19/06/2026 13:41:33
[2026-06-19 13:41:33,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:41:33,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:41:34,122.122 INFO    ] No existing commands found in stream
[2026-06-19 13:41:39,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:41:39,158.158 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 13:41:41,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:41:41,968.968 INFO    ] Checking for system updates...
[2026-06-19 13:41:42,006.006 INFO    ] 200
[2026-06-19 13:41:42,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:42,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:41:42,076.076 INFO    ] No update needed
[2026-06-19 13:41:42,079.079 INFO    ] Checking for camera pi updates...
[2026-06-19 13:41:42,115.115 INFO    ] 200
[2026-06-19 13:41:42,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:42,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:41:42,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:41:42,215.215 INFO    ] No camera update needed
[2026-06-19 13:41:42,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:41:42,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:41:42,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:41:42,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:41:44,278.278 INFO    ] ================================================
[2026-06-19 13:41:44,293.293 INFO    ] Launching Daemon at Fri Jun 19 13:41:44 IST 2026
[2026-06-19 13:41:44,304.304 INFO    ] ================================================
[2026-06-19 13:41:44,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:41:44
[2026-06-19 13:41:45,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:41:45,728.728 INFO    ] Initializing speech engine...
[2026-06-19 13:41:45,738.738 INFO    ] 2026-06-19 13:41:45
[2026-06-19 13:41:45,983.983 INFO    ] 2026-06-19 13:41:45
[2026-06-19 13:41:46,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:41:46,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:41:46,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:41:46,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:41:46,509.509 INFO    ] time= 19/06/2026 13:41:46
[2026-06-19 13:41:46,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:41:46,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:41:46,761.761 INFO    ] No existing commands found in stream
[2026-06-19 13:41:51,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:41:51,789.789 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 13:41:55,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:41:55,634.634 INFO    ] Checking for system updates...
[2026-06-19 13:41:55,672.672 INFO    ] 200
[2026-06-19 13:41:55,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:55,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:41:55,734.734 INFO    ] No update needed
[2026-06-19 13:41:55,737.737 INFO    ] Checking for camera pi updates...
[2026-06-19 13:41:55,777.777 INFO    ] 200
[2026-06-19 13:41:55,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:41:55,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:41:55,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:41:55,974.974 INFO    ] No camera update needed
[2026-06-19 13:41:55,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:41:55,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:41:55,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:41:55,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:41:58,032.032 INFO    ] ================================================
[2026-06-19 13:41:58,047.047 INFO    ] Launching Daemon at Fri Jun 19 13:41:58 IST 2026
[2026-06-19 13:41:58,059.059 INFO    ] ================================================
[2026-06-19 13:41:58,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:41:58
[2026-06-19 13:41:59,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:41:59,498.498 INFO    ] Initializing speech engine...
[2026-06-19 13:41:59,511.511 INFO    ] 2026-06-19 13:41:59
[2026-06-19 13:41:59,765.765 INFO    ] 2026-06-19 13:41:59
[2026-06-19 13:41:59,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:42:00,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:42:00,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:42:00,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:42:00,268.268 INFO    ] time= 19/06/2026 13:42:00
[2026-06-19 13:42:00,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:42:00,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:42:00,482.482 INFO    ] No existing commands found in stream
[2026-06-19 13:42:05,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:42:05,514.514 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 13:42:08,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:42:09,002.002 INFO    ] Checking for system updates...
[2026-06-19 13:42:09,042.042 INFO    ] 200
[2026-06-19 13:42:09,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:09,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:42:09,107.107 INFO    ] No update needed
[2026-06-19 13:42:09,110.110 INFO    ] Checking for camera pi updates...
[2026-06-19 13:42:09,145.145 INFO    ] 200
[2026-06-19 13:42:09,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:09,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:42:09,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:42:09,234.234 INFO    ] No camera update needed
[2026-06-19 13:42:09,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:42:09,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:42:09,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:42:09,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:42:11,288.288 INFO    ] ================================================
[2026-06-19 13:42:11,304.304 INFO    ] Launching Daemon at Fri Jun 19 13:42:11 IST 2026
[2026-06-19 13:42:11,317.317 INFO    ] ================================================
[2026-06-19 13:42:11,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:42:11
[2026-06-19 13:42:12,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:42:12,729.729 INFO    ] Initializing speech engine...
[2026-06-19 13:42:12,743.743 INFO    ] 2026-06-19 13:42:12
[2026-06-19 13:42:13,008.008 INFO    ] 2026-06-19 13:42:12
[2026-06-19 13:42:13,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:42:13,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:42:13,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:42:13,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:42:13,494.494 INFO    ] time= 19/06/2026 13:42:13
[2026-06-19 13:42:13,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:42:13,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:42:13,713.713 INFO    ] No existing commands found in stream
[2026-06-19 13:42:18,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:42:18,746.746 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 13:42:22,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:42:22,266.266 INFO    ] Checking for system updates...
[2026-06-19 13:42:22,302.302 INFO    ] 200
[2026-06-19 13:42:22,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:22,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:42:22,362.362 INFO    ] No update needed
[2026-06-19 13:42:22,364.364 INFO    ] Checking for camera pi updates...
[2026-06-19 13:42:22,398.398 INFO    ] 200
[2026-06-19 13:42:22,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:22,446.446 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:42:22,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:42:22,489.489 INFO    ] No camera update needed
[2026-06-19 13:42:22,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:42:22,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:42:22,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:42:22,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:42:24,552.552 INFO    ] ================================================
[2026-06-19 13:42:24,569.569 INFO    ] Launching Daemon at Fri Jun 19 13:42:24 IST 2026
[2026-06-19 13:42:24,580.580 INFO    ] ================================================
[2026-06-19 13:42:25,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:42:25
[2026-06-19 13:42:25,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:42:26,045.045 INFO    ] Initializing speech engine...
[2026-06-19 13:42:26,054.054 INFO    ] 2026-06-19 13:42:26
[2026-06-19 13:42:26,318.318 INFO    ] 2026-06-19 13:42:26
[2026-06-19 13:42:26,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:42:26,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:42:26,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:42:26,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:42:26,778.778 INFO    ] time= 19/06/2026 13:42:26
[2026-06-19 13:42:26,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:42:26,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:42:26,994.994 INFO    ] No existing commands found in stream
[2026-06-19 13:42:32,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:42:32,028.028 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 13:42:34,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:42:34,567.567 INFO    ] Checking for system updates...
[2026-06-19 13:42:34,608.608 INFO    ] 200
[2026-06-19 13:42:34,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:34,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:42:34,672.672 INFO    ] No update needed
[2026-06-19 13:42:34,675.675 INFO    ] Checking for camera pi updates...
[2026-06-19 13:42:34,709.709 INFO    ] 200
[2026-06-19 13:42:34,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:34,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:42:34,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:42:34,808.808 INFO    ] No camera update needed
[2026-06-19 13:42:34,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:42:34,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:42:34,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:42:34,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:42:36,867.867 INFO    ] ================================================
[2026-06-19 13:42:36,883.883 INFO    ] Launching Daemon at Fri Jun 19 13:42:36 IST 2026
[2026-06-19 13:42:36,894.894 INFO    ] ================================================
[2026-06-19 13:42:37,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:42:37
[2026-06-19 13:42:38,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:42:38,353.353 INFO    ] Initializing speech engine...
[2026-06-19 13:42:38,361.361 INFO    ] 2026-06-19 13:42:38
[2026-06-19 13:42:38,614.614 INFO    ] 2026-06-19 13:42:38
[2026-06-19 13:42:38,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:42:38,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:42:38,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:42:39,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:42:39,089.089 INFO    ] time= 19/06/2026 13:42:39
[2026-06-19 13:42:39,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:42:39,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:42:39,324.324 INFO    ] No existing commands found in stream
[2026-06-19 13:42:44,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:42:44,353.353 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-19 13:42:46,067.067 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:42:46,069.069 INFO    ] Checking for system updates...
[2026-06-19 13:42:46,109.109 INFO    ] 200
[2026-06-19 13:42:46,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:46,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:42:46,173.173 INFO    ] No update needed
[2026-06-19 13:42:46,176.176 INFO    ] Checking for camera pi updates...
[2026-06-19 13:42:46,216.216 INFO    ] 200
[2026-06-19 13:42:46,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:46,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:42:46,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:42:46,312.312 INFO    ] No camera update needed
[2026-06-19 13:42:46,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:42:46,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:42:46,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:42:46,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:42:48,368.368 INFO    ] ================================================
[2026-06-19 13:42:48,383.383 INFO    ] Launching Daemon at Fri Jun 19 13:42:48 IST 2026
[2026-06-19 13:42:48,394.394 INFO    ] ================================================
[2026-06-19 13:42:48,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:42:48
[2026-06-19 13:42:49,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:42:49,809.809 INFO    ] Initializing speech engine...
[2026-06-19 13:42:49,816.816 INFO    ] 2026-06-19 13:42:49
[2026-06-19 13:42:50,090.090 INFO    ] 2026-06-19 13:42:50
[2026-06-19 13:42:50,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:42:50,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:42:50,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:42:50,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:42:50,587.587 INFO    ] time= 19/06/2026 13:42:50
[2026-06-19 13:42:50,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:42:50,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:42:50,803.803 INFO    ] No existing commands found in stream
[2026-06-19 13:42:55,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:42:55,829.829 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 13:42:56,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:42:56,732.732 INFO    ] Checking for system updates...
[2026-06-19 13:42:56,771.771 INFO    ] 200
[2026-06-19 13:42:56,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:56,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:42:56,832.832 INFO    ] No update needed
[2026-06-19 13:42:56,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 13:42:56,871.871 INFO    ] 200
[2026-06-19 13:42:56,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:42:56,916.916 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:42:56,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:42:56,960.960 INFO    ] No camera update needed
[2026-06-19 13:42:56,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:42:56,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:42:56,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:42:56,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:42:59,019.019 INFO    ] ================================================
[2026-06-19 13:42:59,035.035 INFO    ] Launching Daemon at Fri Jun 19 13:42:59 IST 2026
[2026-06-19 13:42:59,046.046 INFO    ] ================================================
[2026-06-19 13:42:59,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:42:59
[2026-06-19 13:43:00,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:43:00,524.524 INFO    ] Initializing speech engine...
[2026-06-19 13:43:00,531.531 INFO    ] 2026-06-19 13:43:00
[2026-06-19 13:43:00,793.793 INFO    ] 2026-06-19 13:43:00
[2026-06-19 13:43:00,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:43:01,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:43:01,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:43:01,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:43:01,279.279 INFO    ] time= 19/06/2026 13:43:01
[2026-06-19 13:43:01,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:43:01,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:43:01,519.519 INFO    ] No existing commands found in stream
[2026-06-19 13:43:06,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:43:06,552.552 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 13:43:07,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:43:07,866.866 INFO    ] Checking for system updates...
[2026-06-19 13:43:07,906.906 INFO    ] 200
[2026-06-19 13:43:07,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:07,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:43:07,966.966 INFO    ] No update needed
[2026-06-19 13:43:07,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 13:43:08,007.007 INFO    ] 200
[2026-06-19 13:43:08,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:08,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:43:08,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:43:08,093.093 INFO    ] No camera update needed
[2026-06-19 13:43:08,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:43:08,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:43:08,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:43:08,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:43:10,148.148 INFO    ] ================================================
[2026-06-19 13:43:10,163.163 INFO    ] Launching Daemon at Fri Jun 19 13:43:10 IST 2026
[2026-06-19 13:43:10,174.174 INFO    ] ================================================
[2026-06-19 13:43:10,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:43:10
[2026-06-19 13:43:11,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:43:11,613.613 INFO    ] Initializing speech engine...
[2026-06-19 13:43:11,619.619 INFO    ] 2026-06-19 13:43:11
[2026-06-19 13:43:11,913.913 INFO    ] 2026-06-19 13:43:11
[2026-06-19 13:43:11,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:43:12,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:43:12,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:43:12,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:43:12,334.334 INFO    ] time= 19/06/2026 13:43:12
[2026-06-19 13:43:12,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:43:12,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:43:12,419.419 INFO    ] No existing commands found in stream
[2026-06-19 13:43:17,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:43:17,434.434 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 13:43:21,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:43:21,224.224 INFO    ] Checking for system updates...
[2026-06-19 13:43:21,263.263 INFO    ] 200
[2026-06-19 13:43:21,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:21,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:43:21,328.328 INFO    ] No update needed
[2026-06-19 13:43:21,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 13:43:21,365.365 INFO    ] 200
[2026-06-19 13:43:21,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:21,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:43:21,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:43:21,456.456 INFO    ] No camera update needed
[2026-06-19 13:43:21,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:43:21,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:43:21,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:43:21,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:43:23,512.512 INFO    ] ================================================
[2026-06-19 13:43:23,527.527 INFO    ] Launching Daemon at Fri Jun 19 13:43:23 IST 2026
[2026-06-19 13:43:23,537.537 INFO    ] ================================================
[2026-06-19 13:43:24,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:43:24
[2026-06-19 13:43:24,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:43:24,958.958 INFO    ] Initializing speech engine...
[2026-06-19 13:43:24,983.983 INFO    ] 2026-06-19 13:43:24
[2026-06-19 13:43:25,243.243 INFO    ] 2026-06-19 13:43:25
[2026-06-19 13:43:25,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:43:25,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:43:25,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:43:25,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:43:26,006.006 INFO    ] time= 19/06/2026 13:43:25
[2026-06-19 13:43:26,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:43:26,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:43:26,204.204 INFO    ] No existing commands found in stream
[2026-06-19 13:43:31,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:43:31,234.234 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 13:43:34,328.328 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:43:34,330.330 INFO    ] Checking for system updates...
[2026-06-19 13:43:34,368.368 INFO    ] 200
[2026-06-19 13:43:34,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:34,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:43:34,428.428 INFO    ] No update needed
[2026-06-19 13:43:34,431.431 INFO    ] Checking for camera pi updates...
[2026-06-19 13:43:34,466.466 INFO    ] 200
[2026-06-19 13:43:34,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:34,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:43:34,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:43:34,555.555 INFO    ] No camera update needed
[2026-06-19 13:43:34,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:43:34,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:43:34,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:43:34,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:43:36,612.612 INFO    ] ================================================
[2026-06-19 13:43:36,627.627 INFO    ] Launching Daemon at Fri Jun 19 13:43:36 IST 2026
[2026-06-19 13:43:36,638.638 INFO    ] ================================================
[2026-06-19 13:43:37,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:43:37
[2026-06-19 13:43:37,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:43:38,257.257 INFO    ] Initializing speech engine...
[2026-06-19 13:43:38,267.267 INFO    ] 2026-06-19 13:43:38
[2026-06-19 13:43:38,551.551 INFO    ] 2026-06-19 13:43:38
[2026-06-19 13:43:38,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:43:38,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:43:38,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:43:38,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:43:39,003.003 INFO    ] time= 19/06/2026 13:43:38
[2026-06-19 13:43:39,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:43:39,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:43:39,244.244 INFO    ] No existing commands found in stream
[2026-06-19 13:43:44,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:43:44,267.267 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 13:43:44,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:43:44,793.793 INFO    ] Checking for system updates...
[2026-06-19 13:43:44,835.835 INFO    ] 200
[2026-06-19 13:43:44,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:44,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:43:44,902.902 INFO    ] No update needed
[2026-06-19 13:43:44,905.905 INFO    ] Checking for camera pi updates...
[2026-06-19 13:43:44,939.939 INFO    ] 200
[2026-06-19 13:43:44,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:44,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:43:45,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:43:45,033.033 INFO    ] No camera update needed
[2026-06-19 13:43:45,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:43:45,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:43:45,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:43:45,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:43:47,087.087 INFO    ] ================================================
[2026-06-19 13:43:47,102.102 INFO    ] Launching Daemon at Fri Jun 19 13:43:47 IST 2026
[2026-06-19 13:43:47,113.113 INFO    ] ================================================
[2026-06-19 13:43:47,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:43:47
[2026-06-19 13:43:48,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:43:48,688.688 INFO    ] Initializing speech engine...
[2026-06-19 13:43:48,700.700 INFO    ] 2026-06-19 13:43:48
[2026-06-19 13:43:49,003.003 INFO    ] 2026-06-19 13:43:48
[2026-06-19 13:43:49,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:43:49,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:43:49,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:43:49,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:43:49,443.443 INFO    ] time= 19/06/2026 13:43:49
[2026-06-19 13:43:49,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:43:49,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:43:49,607.607 INFO    ] No existing commands found in stream
[2026-06-19 13:43:54,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:43:54,620.620 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 13:43:56,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:43:56,893.893 INFO    ] Checking for system updates...
[2026-06-19 13:43:56,929.929 INFO    ] 200
[2026-06-19 13:43:56,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:56,985.985 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:43:56,988.988 INFO    ] No update needed
[2026-06-19 13:43:56,991.991 INFO    ] Checking for camera pi updates...
[2026-06-19 13:43:57,025.025 INFO    ] 200
[2026-06-19 13:43:57,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:43:57,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:43:57,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:43:57,111.111 INFO    ] No camera update needed
[2026-06-19 13:43:57,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:43:57,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:43:57,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:43:57,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:43:59,170.170 INFO    ] ================================================
[2026-06-19 13:43:59,186.186 INFO    ] Launching Daemon at Fri Jun 19 13:43:59 IST 2026
[2026-06-19 13:43:59,197.197 INFO    ] ================================================
[2026-06-19 13:43:59,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:43:59
[2026-06-19 13:44:00,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:44:00,630.630 INFO    ] Initializing speech engine...
[2026-06-19 13:44:00,639.639 INFO    ] 2026-06-19 13:44:00
[2026-06-19 13:44:00,890.890 INFO    ] 2026-06-19 13:44:00
[2026-06-19 13:44:00,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:44:01,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:44:01,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:44:01,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:44:01,374.374 INFO    ] time= 19/06/2026 13:44:01
[2026-06-19 13:44:01,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:44:01,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:44:01,592.592 INFO    ] No existing commands found in stream
[2026-06-19 13:44:06,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:44:06,620.620 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 13:44:10,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:44:10,191.191 INFO    ] Checking for system updates...
[2026-06-19 13:44:10,235.235 INFO    ] 200
[2026-06-19 13:44:10,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:10,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:44:10,300.300 INFO    ] No update needed
[2026-06-19 13:44:10,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 13:44:10,337.337 INFO    ] 200
[2026-06-19 13:44:10,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:10,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:44:10,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:44:10,430.430 INFO    ] No camera update needed
[2026-06-19 13:44:10,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:44:10,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:44:10,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:44:10,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:44:12,488.488 INFO    ] ================================================
[2026-06-19 13:44:12,503.503 INFO    ] Launching Daemon at Fri Jun 19 13:44:12 IST 2026
[2026-06-19 13:44:12,514.514 INFO    ] ================================================
[2026-06-19 13:44:13,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:44:13
[2026-06-19 13:44:13,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:44:13,929.929 INFO    ] Initializing speech engine...
[2026-06-19 13:44:13,944.944 INFO    ] 2026-06-19 13:44:13
[2026-06-19 13:44:14,229.229 INFO    ] 2026-06-19 13:44:14
[2026-06-19 13:44:14,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:44:14,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:44:14,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:44:14,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:44:14,610.610 INFO    ] time= 19/06/2026 13:44:14
[2026-06-19 13:44:14,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:44:14,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:44:14,734.734 INFO    ] No existing commands found in stream
[2026-06-19 13:44:19,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:44:19,750.750 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 13:44:21,670.670 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:44:21,672.672 INFO    ] Checking for system updates...
[2026-06-19 13:44:21,712.712 INFO    ] 200
[2026-06-19 13:44:21,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:21,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:44:21,777.777 INFO    ] No update needed
[2026-06-19 13:44:21,779.779 INFO    ] Checking for camera pi updates...
[2026-06-19 13:44:21,817.817 INFO    ] 200
[2026-06-19 13:44:21,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:21,861.861 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:44:21,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:44:21,903.903 INFO    ] No camera update needed
[2026-06-19 13:44:21,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:44:21,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:44:21,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:44:21,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:44:23,960.960 INFO    ] ================================================
[2026-06-19 13:44:23,975.975 INFO    ] Launching Daemon at Fri Jun 19 13:44:23 IST 2026
[2026-06-19 13:44:23,986.986 INFO    ] ================================================
[2026-06-19 13:44:24,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:44:24
[2026-06-19 13:44:25,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:44:25,408.408 INFO    ] Initializing speech engine...
[2026-06-19 13:44:25,423.423 INFO    ] 2026-06-19 13:44:25
[2026-06-19 13:44:25,718.718 INFO    ] 2026-06-19 13:44:25
[2026-06-19 13:44:25,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:44:26,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:44:26,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:44:26,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:44:26,241.241 INFO    ] time= 19/06/2026 13:44:26
[2026-06-19 13:44:26,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:44:26,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:44:26,453.453 INFO    ] No existing commands found in stream
[2026-06-19 13:44:31,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:44:31,481.481 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 13:44:33,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:44:33,656.656 INFO    ] Checking for system updates...
[2026-06-19 13:44:33,693.693 INFO    ] 200
[2026-06-19 13:44:33,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:33,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:44:33,752.752 INFO    ] No update needed
[2026-06-19 13:44:33,754.754 INFO    ] Checking for camera pi updates...
[2026-06-19 13:44:33,788.788 INFO    ] 200
[2026-06-19 13:44:33,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:33,834.834 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:44:33,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:44:33,876.876 INFO    ] No camera update needed
[2026-06-19 13:44:33,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:44:33,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:44:33,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:44:33,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:44:35,930.930 INFO    ] ================================================
[2026-06-19 13:44:35,946.946 INFO    ] Launching Daemon at Fri Jun 19 13:44:35 IST 2026
[2026-06-19 13:44:35,956.956 INFO    ] ================================================
[2026-06-19 13:44:36,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:44:36
[2026-06-19 13:44:37,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:44:37,390.390 INFO    ] Initializing speech engine...
[2026-06-19 13:44:37,400.400 INFO    ] 2026-06-19 13:44:37
[2026-06-19 13:44:37,660.660 INFO    ] 2026-06-19 13:44:37
[2026-06-19 13:44:37,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:44:37,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:44:37,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:44:38,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:44:38,098.098 INFO    ] time= 19/06/2026 13:44:38
[2026-06-19 13:44:38,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:44:38,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:44:38,344.344 INFO    ] No existing commands found in stream
[2026-06-19 13:44:43,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:44:43,369.369 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 13:44:46,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:44:46,601.601 INFO    ] Checking for system updates...
[2026-06-19 13:44:46,642.642 INFO    ] 200
[2026-06-19 13:44:46,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:46,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:44:46,701.701 INFO    ] No update needed
[2026-06-19 13:44:46,703.703 INFO    ] Checking for camera pi updates...
[2026-06-19 13:44:46,738.738 INFO    ] 200
[2026-06-19 13:44:46,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:46,781.781 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:44:46,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:44:46,820.820 INFO    ] No camera update needed
[2026-06-19 13:44:46,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:44:46,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:44:46,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:44:46,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:44:48,875.875 INFO    ] ================================================
[2026-06-19 13:44:48,890.890 INFO    ] Launching Daemon at Fri Jun 19 13:44:48 IST 2026
[2026-06-19 13:44:48,901.901 INFO    ] ================================================
[2026-06-19 13:44:49,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:44:49
[2026-06-19 13:44:50,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:44:50,530.530 INFO    ] Initializing speech engine...
[2026-06-19 13:44:50,539.539 INFO    ] 2026-06-19 13:44:50
[2026-06-19 13:44:50,811.811 INFO    ] 2026-06-19 13:44:50
[2026-06-19 13:44:50,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:44:51,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:44:51,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:44:51,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:44:51,297.297 INFO    ] time= 19/06/2026 13:44:51
[2026-06-19 13:44:51,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:44:51,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:44:51,494.494 INFO    ] No existing commands found in stream
[2026-06-19 13:44:56,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:44:56,525.525 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 13:44:57,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:44:57,274.274 INFO    ] Checking for system updates...
[2026-06-19 13:44:57,310.310 INFO    ] 200
[2026-06-19 13:44:57,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:57,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:44:57,376.376 INFO    ] No update needed
[2026-06-19 13:44:57,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 13:44:57,416.416 INFO    ] 200
[2026-06-19 13:44:57,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:44:57,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:44:57,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:44:57,507.507 INFO    ] No camera update needed
[2026-06-19 13:44:57,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:44:57,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:44:57,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:44:57,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:44:59,564.564 INFO    ] ================================================
[2026-06-19 13:44:59,579.579 INFO    ] Launching Daemon at Fri Jun 19 13:44:59 IST 2026
[2026-06-19 13:44:59,590.590 INFO    ] ================================================
[2026-06-19 13:45:00,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:45:00
[2026-06-19 13:45:00,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:45:01,049.049 INFO    ] Initializing speech engine...
[2026-06-19 13:45:01,060.060 INFO    ] 2026-06-19 13:45:01
[2026-06-19 13:45:01,307.307 INFO    ] 2026-06-19 13:45:01
[2026-06-19 13:45:01,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:45:01,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:45:01,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:45:01,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:45:01,778.778 INFO    ] time= 19/06/2026 13:45:01
[2026-06-19 13:45:01,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:45:01,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:45:01,957.957 INFO    ] No existing commands found in stream
[2026-06-19 13:45:06,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:45:06,970.970 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 13:45:10,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:45:10,530.530 INFO    ] Checking for system updates...
[2026-06-19 13:45:10,571.571 INFO    ] 200
[2026-06-19 13:45:10,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:10,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:45:10,630.630 INFO    ] No update needed
[2026-06-19 13:45:10,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 13:45:10,671.671 INFO    ] 200
[2026-06-19 13:45:10,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:10,715.715 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:45:10,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:45:10,769.769 INFO    ] No camera update needed
[2026-06-19 13:45:10,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:45:10,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:45:10,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:45:10,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:45:12,830.830 INFO    ] ================================================
[2026-06-19 13:45:12,845.845 INFO    ] Launching Daemon at Fri Jun 19 13:45:12 IST 2026
[2026-06-19 13:45:12,855.855 INFO    ] ================================================
[2026-06-19 13:45:13,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:45:13
[2026-06-19 13:45:14,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:45:14,271.271 INFO    ] Initializing speech engine...
[2026-06-19 13:45:14,285.285 INFO    ] 2026-06-19 13:45:14
[2026-06-19 13:45:14,538.538 INFO    ] 2026-06-19 13:45:14
[2026-06-19 13:45:14,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:45:14,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:45:14,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:45:14,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:45:15,028.028 INFO    ] time= 19/06/2026 13:45:14
[2026-06-19 13:45:15,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:45:15,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:45:15,194.194 INFO    ] No existing commands found in stream
[2026-06-19 13:45:20,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:45:20,210.210 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 13:45:20,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:45:20,738.738 INFO    ] Checking for system updates...
[2026-06-19 13:45:20,775.775 INFO    ] 200
[2026-06-19 13:45:20,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:20,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:45:20,841.841 INFO    ] No update needed
[2026-06-19 13:45:20,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 13:45:20,881.881 INFO    ] 200
[2026-06-19 13:45:20,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:20,930.930 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:45:20,968.968 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:45:20,970.970 INFO    ] No camera update needed
[2026-06-19 13:45:20,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:45:20,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:45:20,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:45:20,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:45:23,025.025 INFO    ] ================================================
[2026-06-19 13:45:23,041.041 INFO    ] Launching Daemon at Fri Jun 19 13:45:23 IST 2026
[2026-06-19 13:45:23,052.052 INFO    ] ================================================
[2026-06-19 13:45:23,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:45:23
[2026-06-19 13:45:24,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:45:24,514.514 INFO    ] Initializing speech engine...
[2026-06-19 13:45:24,522.522 INFO    ] 2026-06-19 13:45:24
[2026-06-19 13:45:24,773.773 INFO    ] 2026-06-19 13:45:24
[2026-06-19 13:45:24,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:45:25,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:45:25,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:45:25,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:45:25,271.271 INFO    ] time= 19/06/2026 13:45:25
[2026-06-19 13:45:25,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:45:25,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:45:25,464.464 INFO    ] No existing commands found in stream
[2026-06-19 13:45:30,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:45:30,495.495 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 13:45:30,972.972 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:45:30,975.975 INFO    ] Checking for system updates...
[2026-06-19 13:45:31,018.018 INFO    ] 200
[2026-06-19 13:45:31,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:31,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:45:31,078.078 INFO    ] No update needed
[2026-06-19 13:45:31,081.081 INFO    ] Checking for camera pi updates...
[2026-06-19 13:45:31,115.115 INFO    ] 200
[2026-06-19 13:45:31,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:31,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:45:31,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:45:31,202.202 INFO    ] No camera update needed
[2026-06-19 13:45:31,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:45:31,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:45:31,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:45:31,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:45:33,265.265 INFO    ] ================================================
[2026-06-19 13:45:33,280.280 INFO    ] Launching Daemon at Fri Jun 19 13:45:33 IST 2026
[2026-06-19 13:45:33,292.292 INFO    ] ================================================
[2026-06-19 13:45:33,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:45:33
[2026-06-19 13:45:34,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:45:34,746.746 INFO    ] Initializing speech engine...
[2026-06-19 13:45:34,752.752 INFO    ] 2026-06-19 13:45:34
[2026-06-19 13:45:35,011.011 INFO    ] 2026-06-19 13:45:35
[2026-06-19 13:45:35,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:45:35,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:45:35,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:45:35,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:45:35,474.474 INFO    ] time= 19/06/2026 13:45:35
[2026-06-19 13:45:35,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:45:35,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:45:35,717.717 INFO    ] No existing commands found in stream
[2026-06-19 13:45:40,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:45:40,745.745 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 13:45:45,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:45:45,090.090 INFO    ] Checking for system updates...
[2026-06-19 13:45:45,130.130 INFO    ] 200
[2026-06-19 13:45:45,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:45,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:45:45,195.195 INFO    ] No update needed
[2026-06-19 13:45:45,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 13:45:45,231.231 INFO    ] 200
[2026-06-19 13:45:45,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:45,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:45:45,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:45:45,323.323 INFO    ] No camera update needed
[2026-06-19 13:45:45,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:45:45,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:45:45,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:45:45,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:45:47,380.380 INFO    ] ================================================
[2026-06-19 13:45:47,395.395 INFO    ] Launching Daemon at Fri Jun 19 13:45:47 IST 2026
[2026-06-19 13:45:47,406.406 INFO    ] ================================================
[2026-06-19 13:45:47,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:45:47
[2026-06-19 13:45:48,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:45:48,828.828 INFO    ] Initializing speech engine...
[2026-06-19 13:45:48,837.837 INFO    ] 2026-06-19 13:45:48
[2026-06-19 13:45:49,084.084 INFO    ] 2026-06-19 13:45:49
[2026-06-19 13:45:49,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:45:49,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:45:49,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:45:49,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:45:49,548.548 INFO    ] time= 19/06/2026 13:45:49
[2026-06-19 13:45:49,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:45:49,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:45:49,730.730 INFO    ] No existing commands found in stream
[2026-06-19 13:45:54,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:45:54,769.769 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 13:45:58,592.592 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:45:58,595.595 INFO    ] Checking for system updates...
[2026-06-19 13:45:58,631.631 INFO    ] 200
[2026-06-19 13:45:58,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:58,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:45:58,690.690 INFO    ] No update needed
[2026-06-19 13:45:58,692.692 INFO    ] Checking for camera pi updates...
[2026-06-19 13:45:58,730.730 INFO    ] 200
[2026-06-19 13:45:58,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:45:58,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:45:58,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:45:58,825.825 INFO    ] No camera update needed
[2026-06-19 13:45:58,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:45:58,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:45:58,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:45:58,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:46:00,880.880 INFO    ] ================================================
[2026-06-19 13:46:00,896.896 INFO    ] Launching Daemon at Fri Jun 19 13:46:00 IST 2026
[2026-06-19 13:46:00,907.907 INFO    ] ================================================
[2026-06-19 13:46:01,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:46:01
[2026-06-19 13:46:02,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:46:02,766.766 INFO    ] Initializing speech engine...
[2026-06-19 13:46:02,787.787 INFO    ] 2026-06-19 13:46:02
[2026-06-19 13:46:03,077.077 INFO    ] 2026-06-19 13:46:03
[2026-06-19 13:46:03,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:46:03,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:46:03,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:46:03,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:46:03,560.560 INFO    ] time= 19/06/2026 13:46:03
[2026-06-19 13:46:03,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:46:03,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:46:03,782.782 INFO    ] No existing commands found in stream
[2026-06-19 13:46:08,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:46:08,810.810 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 13:46:10,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:46:10,947.947 INFO    ] Checking for system updates...
[2026-06-19 13:46:10,986.986 INFO    ] 200
[2026-06-19 13:46:10,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:11,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:46:11,043.043 INFO    ] No update needed
[2026-06-19 13:46:11,046.046 INFO    ] Checking for camera pi updates...
[2026-06-19 13:46:11,080.080 INFO    ] 200
[2026-06-19 13:46:11,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:11,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:46:11,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:46:11,270.270 INFO    ] No camera update needed
[2026-06-19 13:46:11,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:46:11,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:46:11,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:46:11,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:46:13,328.328 INFO    ] ================================================
[2026-06-19 13:46:13,343.343 INFO    ] Launching Daemon at Fri Jun 19 13:46:13 IST 2026
[2026-06-19 13:46:13,353.353 INFO    ] ================================================
[2026-06-19 13:46:13,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:46:13
[2026-06-19 13:46:14,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:46:14,968.968 INFO    ] Initializing speech engine...
[2026-06-19 13:46:14,979.979 INFO    ] 2026-06-19 13:46:14
[2026-06-19 13:46:15,265.265 INFO    ] 2026-06-19 13:46:15
[2026-06-19 13:46:15,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:46:15,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:46:15,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:46:15,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:46:15,797.797 INFO    ] time= 19/06/2026 13:46:15
[2026-06-19 13:46:15,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:46:15,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:46:16,040.040 INFO    ] No existing commands found in stream
[2026-06-19 13:46:21,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:46:21,064.064 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 13:46:21,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:46:21,868.868 INFO    ] Checking for system updates...
[2026-06-19 13:46:21,908.908 INFO    ] 200
[2026-06-19 13:46:21,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:21,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:46:21,968.968 INFO    ] No update needed
[2026-06-19 13:46:21,970.970 INFO    ] Checking for camera pi updates...
[2026-06-19 13:46:22,008.008 INFO    ] 200
[2026-06-19 13:46:22,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:22,054.054 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:46:22,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:46:22,097.097 INFO    ] No camera update needed
[2026-06-19 13:46:22,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:46:22,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:46:22,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:46:22,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:46:24,158.158 INFO    ] ================================================
[2026-06-19 13:46:24,173.173 INFO    ] Launching Daemon at Fri Jun 19 13:46:24 IST 2026
[2026-06-19 13:46:24,184.184 INFO    ] ================================================
[2026-06-19 13:46:24,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:46:24
[2026-06-19 13:46:25,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:46:25,584.584 INFO    ] Initializing speech engine...
[2026-06-19 13:46:25,599.599 INFO    ] 2026-06-19 13:46:25
[2026-06-19 13:46:25,865.865 INFO    ] 2026-06-19 13:46:25
[2026-06-19 13:46:25,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:46:26,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:46:26,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:46:26,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:46:26,428.428 INFO    ] time= 19/06/2026 13:46:26
[2026-06-19 13:46:26,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:46:26,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:46:26,596.596 INFO    ] No existing commands found in stream
[2026-06-19 13:46:31,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:46:31,617.617 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 13:46:34,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:46:34,008.008 INFO    ] Checking for system updates...
[2026-06-19 13:46:34,044.044 INFO    ] 200
[2026-06-19 13:46:34,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:34,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:46:34,108.108 INFO    ] No update needed
[2026-06-19 13:46:34,110.110 INFO    ] Checking for camera pi updates...
[2026-06-19 13:46:34,148.148 INFO    ] 200
[2026-06-19 13:46:34,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:34,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:46:34,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:46:34,243.243 INFO    ] No camera update needed
[2026-06-19 13:46:34,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:46:34,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:46:34,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:46:34,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:46:36,300.300 INFO    ] ================================================
[2026-06-19 13:46:36,315.315 INFO    ] Launching Daemon at Fri Jun 19 13:46:36 IST 2026
[2026-06-19 13:46:36,326.326 INFO    ] ================================================
[2026-06-19 13:46:36,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:46:36
[2026-06-19 13:46:37,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:46:37,767.767 INFO    ] Initializing speech engine...
[2026-06-19 13:46:37,783.783 INFO    ] 2026-06-19 13:46:37
[2026-06-19 13:46:38,067.067 INFO    ] 2026-06-19 13:46:38
[2026-06-19 13:46:38,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:46:38,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:46:38,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:46:38,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:46:38,488.488 INFO    ] time= 19/06/2026 13:46:38
[2026-06-19 13:46:38,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:46:38,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:46:38,694.694 INFO    ] No existing commands found in stream
[2026-06-19 13:46:43,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:46:43,719.719 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 13:46:47,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:46:47,116.116 INFO    ] Checking for system updates...
[2026-06-19 13:46:47,156.156 INFO    ] 200
[2026-06-19 13:46:47,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:47,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:46:47,220.220 INFO    ] No update needed
[2026-06-19 13:46:47,222.222 INFO    ] Checking for camera pi updates...
[2026-06-19 13:46:47,256.256 INFO    ] 200
[2026-06-19 13:46:47,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:47,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:46:47,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:46:47,330.330 INFO    ] No camera update needed
[2026-06-19 13:46:47,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:46:47,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:46:47,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:46:47,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:46:49,385.385 INFO    ] ================================================
[2026-06-19 13:46:49,401.401 INFO    ] Launching Daemon at Fri Jun 19 13:46:49 IST 2026
[2026-06-19 13:46:49,411.411 INFO    ] ================================================
[2026-06-19 13:46:50,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:46:50
[2026-06-19 13:46:50,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:46:51,007.007 INFO    ] Initializing speech engine...
[2026-06-19 13:46:51,012.012 INFO    ] 2026-06-19 13:46:51
[2026-06-19 13:46:51,266.266 INFO    ] 2026-06-19 13:46:51
[2026-06-19 13:46:51,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:46:51,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:46:51,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:46:51,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:46:51,750.750 INFO    ] time= 19/06/2026 13:46:51
[2026-06-19 13:46:51,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:46:51,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:46:51,906.906 INFO    ] No existing commands found in stream
[2026-06-19 13:46:56,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:46:56,929.929 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 13:46:58,415.415 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:46:58,418.418 INFO    ] Checking for system updates...
[2026-06-19 13:46:58,458.458 INFO    ] 200
[2026-06-19 13:46:58,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:58,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:46:58,515.515 INFO    ] No update needed
[2026-06-19 13:46:58,517.517 INFO    ] Checking for camera pi updates...
[2026-06-19 13:46:58,551.551 INFO    ] 200
[2026-06-19 13:46:58,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:46:58,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:46:58,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:46:58,638.638 INFO    ] No camera update needed
[2026-06-19 13:46:58,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:46:58,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:46:58,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:46:58,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:47:00,693.693 INFO    ] ================================================
[2026-06-19 13:47:00,709.709 INFO    ] Launching Daemon at Fri Jun 19 13:47:00 IST 2026
[2026-06-19 13:47:00,719.719 INFO    ] ================================================
[2026-06-19 13:47:01,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:47:01
[2026-06-19 13:47:02,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:47:02,402.402 INFO    ] Initializing speech engine...
[2026-06-19 13:47:02,420.420 INFO    ] 2026-06-19 13:47:02
[2026-06-19 13:47:02,757.757 INFO    ] 2026-06-19 13:47:02
[2026-06-19 13:47:02,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:47:03,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:47:03,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:47:03,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:47:03,180.180 INFO    ] time= 19/06/2026 13:47:03
[2026-06-19 13:47:03,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:47:03,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:47:03,273.273 INFO    ] No existing commands found in stream
[2026-06-19 13:47:08,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:47:08,290.290 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 13:47:10,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:47:10,863.863 INFO    ] Checking for system updates...
[2026-06-19 13:47:10,902.902 INFO    ] 200
[2026-06-19 13:47:10,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:10,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:47:10,963.963 INFO    ] No update needed
[2026-06-19 13:47:10,966.966 INFO    ] Checking for camera pi updates...
[2026-06-19 13:47:11,002.002 INFO    ] 200
[2026-06-19 13:47:11,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:11,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:47:11,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:47:11,109.109 INFO    ] No camera update needed
[2026-06-19 13:47:11,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:47:11,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:47:11,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:47:11,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:47:13,166.166 INFO    ] ================================================
[2026-06-19 13:47:13,181.181 INFO    ] Launching Daemon at Fri Jun 19 13:47:13 IST 2026
[2026-06-19 13:47:13,191.191 INFO    ] ================================================
[2026-06-19 13:47:13,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:47:13
[2026-06-19 13:47:14,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:47:14,752.752 INFO    ] Initializing speech engine...
[2026-06-19 13:47:14,759.759 INFO    ] 2026-06-19 13:47:14
[2026-06-19 13:47:15,030.030 INFO    ] 2026-06-19 13:47:15
[2026-06-19 13:47:15,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:47:15,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:47:15,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:47:15,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:47:15,591.591 INFO    ] time= 19/06/2026 13:47:15
[2026-06-19 13:47:15,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:47:15,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:47:15,751.751 INFO    ] No existing commands found in stream
[2026-06-19 13:47:20,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:47:20,774.774 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 13:47:21,583.583 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:47:21,586.586 INFO    ] Checking for system updates...
[2026-06-19 13:47:21,627.627 INFO    ] 200
[2026-06-19 13:47:21,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:21,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:47:21,691.691 INFO    ] No update needed
[2026-06-19 13:47:21,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 13:47:21,729.729 INFO    ] 200
[2026-06-19 13:47:21,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:21,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:47:21,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:47:21,824.824 INFO    ] No camera update needed
[2026-06-19 13:47:21,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:47:21,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:47:21,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:47:21,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:47:23,887.887 INFO    ] ================================================
[2026-06-19 13:47:23,903.903 INFO    ] Launching Daemon at Fri Jun 19 13:47:23 IST 2026
[2026-06-19 13:47:23,913.913 INFO    ] ================================================
[2026-06-19 13:47:24,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:47:24
[2026-06-19 13:47:25,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:47:25,326.326 INFO    ] Initializing speech engine...
[2026-06-19 13:47:25,340.340 INFO    ] 2026-06-19 13:47:25
[2026-06-19 13:47:25,620.620 INFO    ] 2026-06-19 13:47:25
[2026-06-19 13:47:25,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:47:25,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:47:25,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:47:26,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:47:26,039.039 INFO    ] time= 19/06/2026 13:47:26
[2026-06-19 13:47:26,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:47:26,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:47:26,214.214 INFO    ] No existing commands found in stream
[2026-06-19 13:47:31,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:47:31,242.242 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 13:47:35,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:47:35,295.295 INFO    ] Checking for system updates...
[2026-06-19 13:47:35,331.331 INFO    ] 200
[2026-06-19 13:47:35,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:35,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:47:35,389.389 INFO    ] No update needed
[2026-06-19 13:47:35,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 13:47:35,426.426 INFO    ] 200
[2026-06-19 13:47:35,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:35,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:47:35,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:47:35,512.512 INFO    ] No camera update needed
[2026-06-19 13:47:35,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:47:35,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:47:35,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:47:35,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:47:37,566.566 INFO    ] ================================================
[2026-06-19 13:47:37,581.581 INFO    ] Launching Daemon at Fri Jun 19 13:47:37 IST 2026
[2026-06-19 13:47:37,592.592 INFO    ] ================================================
[2026-06-19 13:47:38,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:47:38
[2026-06-19 13:47:38,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:47:39,031.031 INFO    ] Initializing speech engine...
[2026-06-19 13:47:39,044.044 INFO    ] 2026-06-19 13:47:39
[2026-06-19 13:47:39,296.296 INFO    ] 2026-06-19 13:47:39
[2026-06-19 13:47:39,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:47:39,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:47:39,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:47:39,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:47:39,776.776 INFO    ] time= 19/06/2026 13:47:39
[2026-06-19 13:47:39,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:47:39,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:47:40,005.005 INFO    ] No existing commands found in stream
[2026-06-19 13:47:45,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:47:45,021.021 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 13:47:46,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:47:46,362.362 INFO    ] Checking for system updates...
[2026-06-19 13:47:46,403.403 INFO    ] 200
[2026-06-19 13:47:46,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:46,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:47:46,466.466 INFO    ] No update needed
[2026-06-19 13:47:46,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 13:47:46,506.506 INFO    ] 200
[2026-06-19 13:47:46,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:46,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:47:46,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:47:46,596.596 INFO    ] No camera update needed
[2026-06-19 13:47:46,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:47:46,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:47:46,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:47:46,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:47:48,651.651 INFO    ] ================================================
[2026-06-19 13:47:48,667.667 INFO    ] Launching Daemon at Fri Jun 19 13:47:48 IST 2026
[2026-06-19 13:47:48,678.678 INFO    ] ================================================
[2026-06-19 13:47:49,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:47:49
[2026-06-19 13:47:49,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:47:50,080.080 INFO    ] Initializing speech engine...
[2026-06-19 13:47:50,093.093 INFO    ] 2026-06-19 13:47:50
[2026-06-19 13:47:50,356.356 INFO    ] 2026-06-19 13:47:50
[2026-06-19 13:47:50,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:47:50,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:47:50,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:47:50,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:47:50,848.848 INFO    ] time= 19/06/2026 13:47:50
[2026-06-19 13:47:50,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:47:50,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:47:51,044.044 INFO    ] No existing commands found in stream
[2026-06-19 13:47:56,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:47:56,080.080 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 13:47:58,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:47:58,516.516 INFO    ] Checking for system updates...
[2026-06-19 13:47:58,553.553 INFO    ] 200
[2026-06-19 13:47:58,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:58,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:47:58,618.618 INFO    ] No update needed
[2026-06-19 13:47:58,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 13:47:58,654.654 INFO    ] 200
[2026-06-19 13:47:58,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:47:58,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:47:58,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:47:58,751.751 INFO    ] No camera update needed
[2026-06-19 13:47:58,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:47:58,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:47:58,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:47:58,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:48:00,811.811 INFO    ] ================================================
[2026-06-19 13:48:00,827.827 INFO    ] Launching Daemon at Fri Jun 19 13:48:00 IST 2026
[2026-06-19 13:48:00,838.838 INFO    ] ================================================
[2026-06-19 13:48:01,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:48:01
[2026-06-19 13:48:02,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:48:02,546.546 INFO    ] Initializing speech engine...
[2026-06-19 13:48:02,552.552 INFO    ] 2026-06-19 13:48:02
[2026-06-19 13:48:02,865.865 INFO    ] 2026-06-19 13:48:02
[2026-06-19 13:48:02,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:48:03,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:48:03,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:48:03,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:48:03,306.306 INFO    ] time= 19/06/2026 13:48:03
[2026-06-19 13:48:03,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:48:03,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:48:03,467.467 INFO    ] No existing commands found in stream
[2026-06-19 13:48:08,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:48:08,490.490 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 13:48:09,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:48:09,245.245 INFO    ] Checking for system updates...
[2026-06-19 13:48:09,280.280 INFO    ] 200
[2026-06-19 13:48:09,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:09,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:48:09,338.338 INFO    ] No update needed
[2026-06-19 13:48:09,340.340 INFO    ] Checking for camera pi updates...
[2026-06-19 13:48:09,377.377 INFO    ] 200
[2026-06-19 13:48:09,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:09,424.424 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:48:09,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:48:09,472.472 INFO    ] No camera update needed
[2026-06-19 13:48:09,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:48:09,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:48:09,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:48:09,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:48:11,529.529 INFO    ] ================================================
[2026-06-19 13:48:11,544.544 INFO    ] Launching Daemon at Fri Jun 19 13:48:11 IST 2026
[2026-06-19 13:48:11,555.555 INFO    ] ================================================
[2026-06-19 13:48:12,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:48:12
[2026-06-19 13:48:12,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:48:12,989.989 INFO    ] Initializing speech engine...
[2026-06-19 13:48:12,998.998 INFO    ] 2026-06-19 13:48:12
[2026-06-19 13:48:13,258.258 INFO    ] 2026-06-19 13:48:13
[2026-06-19 13:48:13,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:48:13,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:48:13,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:48:13,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:48:13,660.660 INFO    ] time= 19/06/2026 13:48:13
[2026-06-19 13:48:13,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:48:13,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:48:13,745.745 INFO    ] No existing commands found in stream
[2026-06-19 13:48:18,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:48:18,773.773 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 13:48:20,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:48:20,965.965 INFO    ] Checking for system updates...
[2026-06-19 13:48:21,004.004 INFO    ] 200
[2026-06-19 13:48:21,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:21,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:48:21,067.067 INFO    ] No update needed
[2026-06-19 13:48:21,069.069 INFO    ] Checking for camera pi updates...
[2026-06-19 13:48:21,103.103 INFO    ] 200
[2026-06-19 13:48:21,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:21,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:48:21,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:48:21,299.299 INFO    ] No camera update needed
[2026-06-19 13:48:21,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:48:21,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:48:21,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:48:21,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:48:23,354.354 INFO    ] ================================================
[2026-06-19 13:48:23,369.369 INFO    ] Launching Daemon at Fri Jun 19 13:48:23 IST 2026
[2026-06-19 13:48:23,381.381 INFO    ] ================================================
[2026-06-19 13:48:23,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:48:23
[2026-06-19 13:48:24,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:48:24,790.790 INFO    ] Initializing speech engine...
[2026-06-19 13:48:24,814.814 INFO    ] 2026-06-19 13:48:24
[2026-06-19 13:48:25,086.086 INFO    ] 2026-06-19 13:48:25
[2026-06-19 13:48:25,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:48:25,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:48:25,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:48:25,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:48:25,613.613 INFO    ] time= 19/06/2026 13:48:25
[2026-06-19 13:48:25,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:48:25,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:48:25,807.807 INFO    ] No existing commands found in stream
[2026-06-19 13:48:30,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:48:30,838.838 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 13:48:34,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:48:34,335.335 INFO    ] Checking for system updates...
[2026-06-19 13:48:34,373.373 INFO    ] 200
[2026-06-19 13:48:34,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:34,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:48:34,431.431 INFO    ] No update needed
[2026-06-19 13:48:34,433.433 INFO    ] Checking for camera pi updates...
[2026-06-19 13:48:34,471.471 INFO    ] 200
[2026-06-19 13:48:34,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:34,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:48:34,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:48:34,567.567 INFO    ] No camera update needed
[2026-06-19 13:48:34,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:48:34,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:48:34,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:48:34,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:48:36,622.622 INFO    ] ================================================
[2026-06-19 13:48:36,637.637 INFO    ] Launching Daemon at Fri Jun 19 13:48:36 IST 2026
[2026-06-19 13:48:36,648.648 INFO    ] ================================================
[2026-06-19 13:48:37,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:48:37
[2026-06-19 13:48:37,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:48:38,069.069 INFO    ] Initializing speech engine...
[2026-06-19 13:48:38,078.078 INFO    ] 2026-06-19 13:48:38
[2026-06-19 13:48:38,329.329 INFO    ] 2026-06-19 13:48:38
[2026-06-19 13:48:38,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:48:38,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:48:38,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:48:38,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:48:38,894.894 INFO    ] time= 19/06/2026 13:48:38
[2026-06-19 13:48:38,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:48:38,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:48:39,041.041 INFO    ] No existing commands found in stream
[2026-06-19 13:48:44,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:48:44,067.067 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 13:48:47,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:48:47,362.362 INFO    ] Checking for system updates...
[2026-06-19 13:48:47,399.399 INFO    ] 200
[2026-06-19 13:48:47,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:47,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:48:47,456.456 INFO    ] No update needed
[2026-06-19 13:48:47,458.458 INFO    ] Checking for camera pi updates...
[2026-06-19 13:48:47,492.492 INFO    ] 200
[2026-06-19 13:48:47,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:47,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:48:47,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:48:47,569.569 INFO    ] No camera update needed
[2026-06-19 13:48:47,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:48:47,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:48:47,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:48:47,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:48:49,627.627 INFO    ] ================================================
[2026-06-19 13:48:49,641.641 INFO    ] Launching Daemon at Fri Jun 19 13:48:49 IST 2026
[2026-06-19 13:48:49,652.652 INFO    ] ================================================
[2026-06-19 13:48:50,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:48:50
[2026-06-19 13:48:50,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:48:51,110.110 INFO    ] Initializing speech engine...
[2026-06-19 13:48:51,116.116 INFO    ] 2026-06-19 13:48:51
[2026-06-19 13:48:51,380.380 INFO    ] 2026-06-19 13:48:51
[2026-06-19 13:48:51,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:48:51,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:48:51,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:48:51,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:48:51,870.870 INFO    ] time= 19/06/2026 13:48:51
[2026-06-19 13:48:51,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:48:51,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:48:52,087.087 INFO    ] No existing commands found in stream
[2026-06-19 13:48:57,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:48:57,115.115 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 13:48:59,018.018 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:48:59,021.021 INFO    ] Checking for system updates...
[2026-06-19 13:48:59,057.057 INFO    ] 200
[2026-06-19 13:48:59,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:59,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:48:59,116.116 INFO    ] No update needed
[2026-06-19 13:48:59,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 13:48:59,154.154 INFO    ] 200
[2026-06-19 13:48:59,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:48:59,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:48:59,243.243 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:48:59,246.246 INFO    ] No camera update needed
[2026-06-19 13:48:59,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:48:59,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:48:59,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:48:59,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:49:01,300.300 INFO    ] ================================================
[2026-06-19 13:49:01,316.316 INFO    ] Launching Daemon at Fri Jun 19 13:49:01 IST 2026
[2026-06-19 13:49:01,332.332 INFO    ] ================================================
[2026-06-19 13:49:02,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:49:02
[2026-06-19 13:49:02,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:49:03,034.034 INFO    ] Initializing speech engine...
[2026-06-19 13:49:03,039.039 INFO    ] 2026-06-19 13:49:03
[2026-06-19 13:49:03,337.337 INFO    ] 2026-06-19 13:49:03
[2026-06-19 13:49:03,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:49:03,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:49:03,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:49:03,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:49:03,799.799 INFO    ] time= 19/06/2026 13:49:03
[2026-06-19 13:49:03,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:49:03,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:49:04,046.046 INFO    ] No existing commands found in stream
[2026-06-19 13:49:09,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:49:09,063.063 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-19 13:49:10,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:49:10,320.320 INFO    ] Checking for system updates...
[2026-06-19 13:49:10,357.357 INFO    ] 200
[2026-06-19 13:49:10,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:49:10,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:49:10,415.415 INFO    ] No update needed
[2026-06-19 13:49:10,417.417 INFO    ] Checking for camera pi updates...
[2026-06-19 13:49:10,455.455 INFO    ] 200
[2026-06-19 13:49:10,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:49:10,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:49:10,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:49:10,548.548 INFO    ] No camera update needed
[2026-06-19 13:49:10,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:49:10,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:49:10,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:49:10,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:49:12,603.603 INFO    ] ================================================
[2026-06-19 13:49:12,618.618 INFO    ] Launching Daemon at Fri Jun 19 13:49:12 IST 2026
[2026-06-19 13:49:12,629.629 INFO    ] ================================================
[2026-06-19 13:49:13,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:49:13
[2026-06-19 13:49:13,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:49:14,277.277 INFO    ] Initializing speech engine...
[2026-06-19 13:49:14,289.289 INFO    ] 2026-06-19 13:49:14
[2026-06-19 13:49:14,575.575 INFO    ] 2026-06-19 13:49:14
[2026-06-19 13:49:14,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:49:14,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:49:14,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:49:15,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:49:15,071.071 INFO    ] time= 19/06/2026 13:49:15
[2026-06-19 13:49:15,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:49:15,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:49:15,285.285 INFO    ] No existing commands found in stream
[2026-06-19 13:49:20,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:49:20,306.306 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 13:49:22,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:49:22,334.334 INFO    ] Checking for system updates...
[2026-06-19 13:49:22,374.374 INFO    ] 200
[2026-06-19 13:49:22,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:49:22,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:49:22,439.439 INFO    ] No update needed
[2026-06-19 13:49:22,441.441 INFO    ] Checking for camera pi updates...
[2026-06-19 13:49:22,479.479 INFO    ] 200
[2026-06-19 13:49:22,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:49:22,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:49:22,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:49:22,567.567 INFO    ] No camera update needed
[2026-06-19 13:49:22,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:49:22,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:49:22,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:49:22,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:49:24,621.621 INFO    ] ================================================
[2026-06-19 13:49:24,636.636 INFO    ] Launching Daemon at Fri Jun 19 13:49:24 IST 2026
[2026-06-19 13:49:24,647.647 INFO    ] ================================================
[2026-06-19 13:49:25,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:49:25
[2026-06-19 13:49:25,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:49:26,194.194 INFO    ] Initializing speech engine...
[2026-06-19 13:49:26,203.203 INFO    ] 2026-06-19 13:49:26
[2026-06-19 13:49:26,450.450 INFO    ] 2026-06-19 13:49:26
[2026-06-19 13:49:26,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:49:26,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:49:26,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:49:26,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:49:27,003.003 INFO    ] time= 19/06/2026 13:49:26
[2026-06-19 13:49:27,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:49:27,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:49:27,155.155 INFO    ] No existing commands found in stream
[2026-06-19 13:49:32,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:49:32,173.173 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 13:49:35,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:49:35,552.552 INFO    ] Checking for system updates...
[2026-06-19 13:49:35,592.592 INFO    ] 200
[2026-06-19 13:49:35,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:49:35,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:49:35,656.656 INFO    ] No update needed
[2026-06-19 13:49:35,658.658 INFO    ] Checking for camera pi updates...
[2026-06-19 13:49:35,692.692 INFO    ] 200
[2026-06-19 13:49:35,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:49:35,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:49:35,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:49:35,794.794 INFO    ] No camera update needed
[2026-06-19 13:49:35,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:49:35,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:49:35,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:49:35,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:49:37,850.850 INFO    ] ================================================
[2026-06-19 13:49:37,865.865 INFO    ] Launching Daemon at Fri Jun 19 13:49:37 IST 2026
[2026-06-19 13:49:37,876.876 INFO    ] ================================================
[2026-06-19 13:49:38,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:49:38
[2026-06-19 13:49:39,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:49:39,312.312 INFO    ] Initializing speech engine...
[2026-06-19 13:49:39,334.334 INFO    ] 2026-06-19 13:49:39
[2026-06-19 13:49:39,597.597 INFO    ] 2026-06-19 13:49:39
[2026-06-19 13:49:39,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:49:39,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:49:39,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:49:40,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:49:40,078.078 INFO    ] time= 19/06/2026 13:49:40
[2026-06-19 13:49:40,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:49:40,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:49:40,278.278 INFO    ] No existing commands found in stream
[2026-06-19 13:49:45,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:49:45,312.312 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 13:49:49,432.432 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:49:49,435.435 INFO    ] Checking for system updates...
[2026-06-19 13:49:49,478.478 INFO    ] 200
[2026-06-19 13:49:49,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:49:49,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:49:49,543.543 INFO    ] No update needed
[2026-06-19 13:49:49,546.546 INFO    ] Checking for camera pi updates...
[2026-06-19 13:49:49,581.581 INFO    ] 200
[2026-06-19 13:49:49,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:49:49,631.631 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:49:49,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:49:49,665.665 INFO    ] No camera update needed
[2026-06-19 13:49:49,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:49:49,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:49:49,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:49:49,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:49:51,727.727 INFO    ] ================================================
[2026-06-19 13:49:51,742.742 INFO    ] Launching Daemon at Fri Jun 19 13:49:51 IST 2026
[2026-06-19 13:49:51,753.753 INFO    ] ================================================
[2026-06-19 13:49:52,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:49:52
[2026-06-19 13:49:52,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:49:53,171.171 INFO    ] Initializing speech engine...
[2026-06-19 13:49:53,190.190 INFO    ] 2026-06-19 13:49:53
[2026-06-19 13:49:53,439.439 INFO    ] 2026-06-19 13:49:53
[2026-06-19 13:49:53,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:49:53,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:49:53,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:49:53,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:49:53,994.994 INFO    ] time= 19/06/2026 13:49:53
[2026-06-19 13:49:54,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:49:54,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:49:54,150.150 INFO    ] No existing commands found in stream
[2026-06-19 13:49:59,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:49:59,168.168 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 13:50:01,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:50:01,275.275 INFO    ] Checking for system updates...
[2026-06-19 13:50:01,315.315 INFO    ] 200
[2026-06-19 13:50:01,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:01,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:50:01,552.552 INFO    ] No update needed
[2026-06-19 13:50:01,556.556 INFO    ] Checking for camera pi updates...
[2026-06-19 13:50:01,755.755 INFO    ] 200
[2026-06-19 13:50:01,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:01,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:50:02,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:50:02,051.051 INFO    ] No camera update needed
[2026-06-19 13:50:02,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:50:02,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:50:02,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:50:02,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:50:04,157.157 INFO    ] ================================================
[2026-06-19 13:50:04,174.174 INFO    ] Launching Daemon at Fri Jun 19 13:50:04 IST 2026
[2026-06-19 13:50:04,186.186 INFO    ] ================================================
[2026-06-19 13:50:04,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:50:04
[2026-06-19 13:50:05,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:50:05,691.691 INFO    ] Initializing speech engine...
[2026-06-19 13:50:05,702.702 INFO    ] 2026-06-19 13:50:05
[2026-06-19 13:50:05,963.963 INFO    ] 2026-06-19 13:50:05
[2026-06-19 13:50:05,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:50:06,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:50:06,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:50:06,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:50:06,437.437 INFO    ] time= 19/06/2026 13:50:06
[2026-06-19 13:50:06,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:50:06,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:50:06,628.628 INFO    ] No existing commands found in stream
[2026-06-19 13:50:11,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:50:11,640.640 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 13:50:15,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:50:15,853.853 INFO    ] Checking for system updates...
[2026-06-19 13:50:15,893.893 INFO    ] 200
[2026-06-19 13:50:15,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:15,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:50:15,951.951 INFO    ] No update needed
[2026-06-19 13:50:15,953.953 INFO    ] Checking for camera pi updates...
[2026-06-19 13:50:15,990.990 INFO    ] 200
[2026-06-19 13:50:15,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:16,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:50:16,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:50:16,084.084 INFO    ] No camera update needed
[2026-06-19 13:50:16,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:50:16,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:50:16,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:50:16,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:50:18,140.140 INFO    ] ================================================
[2026-06-19 13:50:18,155.155 INFO    ] Launching Daemon at Fri Jun 19 13:50:18 IST 2026
[2026-06-19 13:50:18,166.166 INFO    ] ================================================
[2026-06-19 13:50:18,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:50:18
[2026-06-19 13:50:19,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:50:19,593.593 INFO    ] Initializing speech engine...
[2026-06-19 13:50:19,602.602 INFO    ] 2026-06-19 13:50:19
[2026-06-19 13:50:19,891.891 INFO    ] 2026-06-19 13:50:19
[2026-06-19 13:50:19,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:50:20,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:50:20,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:50:20,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:50:20,387.387 INFO    ] time= 19/06/2026 13:50:20
[2026-06-19 13:50:20,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:50:20,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:50:20,639.639 INFO    ] No existing commands found in stream
[2026-06-19 13:50:25,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:50:25,663.663 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 13:50:29,133.133 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:50:29,136.136 INFO    ] Checking for system updates...
[2026-06-19 13:50:29,176.176 INFO    ] 200
[2026-06-19 13:50:29,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:29,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:50:29,239.239 INFO    ] No update needed
[2026-06-19 13:50:29,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 13:50:29,277.277 INFO    ] 200
[2026-06-19 13:50:29,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:29,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:50:29,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:50:29,469.469 INFO    ] No camera update needed
[2026-06-19 13:50:29,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:50:29,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:50:29,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:50:29,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:50:31,524.524 INFO    ] ================================================
[2026-06-19 13:50:31,543.543 INFO    ] Launching Daemon at Fri Jun 19 13:50:31 IST 2026
[2026-06-19 13:50:31,556.556 INFO    ] ================================================
[2026-06-19 13:50:32,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:50:32
[2026-06-19 13:50:32,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:50:33,231.231 INFO    ] Initializing speech engine...
[2026-06-19 13:50:33,246.246 INFO    ] 2026-06-19 13:50:33
[2026-06-19 13:50:33,512.512 INFO    ] 2026-06-19 13:50:33
[2026-06-19 13:50:33,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:50:33,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:50:33,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:50:33,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:50:34,017.017 INFO    ] time= 19/06/2026 13:50:33
[2026-06-19 13:50:34,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:50:34,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:50:34,231.231 INFO    ] No existing commands found in stream
[2026-06-19 13:50:39,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:50:39,253.253 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 13:50:41,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:50:41,401.401 INFO    ] Checking for system updates...
[2026-06-19 13:50:41,440.440 INFO    ] 200
[2026-06-19 13:50:41,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:41,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:50:41,497.497 INFO    ] No update needed
[2026-06-19 13:50:41,499.499 INFO    ] Checking for camera pi updates...
[2026-06-19 13:50:41,533.533 INFO    ] 200
[2026-06-19 13:50:41,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:41,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:50:41,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:50:41,623.623 INFO    ] No camera update needed
[2026-06-19 13:50:41,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:50:41,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:50:41,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:50:41,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:50:43,679.679 INFO    ] ================================================
[2026-06-19 13:50:43,695.695 INFO    ] Launching Daemon at Fri Jun 19 13:50:43 IST 2026
[2026-06-19 13:50:43,705.705 INFO    ] ================================================
[2026-06-19 13:50:44,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:50:44
[2026-06-19 13:50:44,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:50:45,125.125 INFO    ] Initializing speech engine...
[2026-06-19 13:50:45,150.150 INFO    ] 2026-06-19 13:50:45
[2026-06-19 13:50:45,419.419 INFO    ] 2026-06-19 13:50:45
[2026-06-19 13:50:45,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:50:45,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:50:45,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:50:45,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:50:45,835.835 INFO    ] time= 19/06/2026 13:50:45
[2026-06-19 13:50:45,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:50:45,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:50:45,918.918 INFO    ] No existing commands found in stream
[2026-06-19 13:50:50,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:50:50,933.933 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 13:50:54,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:50:54,148.148 INFO    ] Checking for system updates...
[2026-06-19 13:50:54,187.187 INFO    ] 200
[2026-06-19 13:50:54,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:54,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:50:54,252.252 INFO    ] No update needed
[2026-06-19 13:50:54,254.254 INFO    ] Checking for camera pi updates...
[2026-06-19 13:50:54,287.287 INFO    ] 200
[2026-06-19 13:50:54,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:50:54,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:50:54,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:50:54,381.381 INFO    ] No camera update needed
[2026-06-19 13:50:54,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:50:54,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:50:54,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:50:54,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:50:56,436.436 INFO    ] ================================================
[2026-06-19 13:50:56,451.451 INFO    ] Launching Daemon at Fri Jun 19 13:50:56 IST 2026
[2026-06-19 13:50:56,462.462 INFO    ] ================================================
[2026-06-19 13:50:57,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:50:57
[2026-06-19 13:50:57,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:50:57,995.995 INFO    ] Initializing speech engine...
[2026-06-19 13:50:58,007.007 INFO    ] 2026-06-19 13:50:57
[2026-06-19 13:50:58,290.290 INFO    ] 2026-06-19 13:50:58
[2026-06-19 13:50:58,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:50:58,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:50:58,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:50:58,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:50:58,843.843 INFO    ] time= 19/06/2026 13:50:58
[2026-06-19 13:50:58,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:50:58,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:50:59,027.027 INFO    ] No existing commands found in stream
[2026-06-19 13:51:04,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:51:04,056.056 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 13:51:06,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:51:06,368.368 INFO    ] Checking for system updates...
[2026-06-19 13:51:06,410.410 INFO    ] 200
[2026-06-19 13:51:06,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:06,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:51:06,478.478 INFO    ] No update needed
[2026-06-19 13:51:06,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 13:51:06,517.517 INFO    ] 200
[2026-06-19 13:51:06,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:06,574.574 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:51:06,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:51:06,633.633 INFO    ] No camera update needed
[2026-06-19 13:51:06,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:51:06,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:51:06,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:51:06,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:51:08,696.696 INFO    ] ================================================
[2026-06-19 13:51:08,712.712 INFO    ] Launching Daemon at Fri Jun 19 13:51:08 IST 2026
[2026-06-19 13:51:08,723.723 INFO    ] ================================================
[2026-06-19 13:51:09,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:51:09
[2026-06-19 13:51:09,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:51:10,209.209 INFO    ] Initializing speech engine...
[2026-06-19 13:51:10,217.217 INFO    ] 2026-06-19 13:51:10
[2026-06-19 13:51:10,494.494 INFO    ] 2026-06-19 13:51:10
[2026-06-19 13:51:10,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:51:10,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:51:10,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:51:10,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:51:11,047.047 INFO    ] time= 19/06/2026 13:51:11
[2026-06-19 13:51:11,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:51:11,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:51:11,199.199 INFO    ] No existing commands found in stream
[2026-06-19 13:51:16,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:51:16,220.220 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 13:51:18,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:51:18,346.346 INFO    ] Checking for system updates...
[2026-06-19 13:51:18,387.387 INFO    ] 200
[2026-06-19 13:51:18,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:18,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:51:18,455.455 INFO    ] No update needed
[2026-06-19 13:51:18,458.458 INFO    ] Checking for camera pi updates...
[2026-06-19 13:51:18,497.497 INFO    ] 200
[2026-06-19 13:51:18,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:18,548.548 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:51:18,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:51:18,592.592 INFO    ] No camera update needed
[2026-06-19 13:51:18,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:51:18,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:51:18,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:51:18,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:51:20,653.653 INFO    ] ================================================
[2026-06-19 13:51:20,672.672 INFO    ] Launching Daemon at Fri Jun 19 13:51:20 IST 2026
[2026-06-19 13:51:20,683.683 INFO    ] ================================================
[2026-06-19 13:51:21,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:51:21
[2026-06-19 13:51:21,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:51:22,090.090 INFO    ] Initializing speech engine...
[2026-06-19 13:51:22,105.105 INFO    ] 2026-06-19 13:51:22
[2026-06-19 13:51:22,376.376 INFO    ] 2026-06-19 13:51:22
[2026-06-19 13:51:22,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:51:22,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:51:22,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:51:22,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:51:22,875.875 INFO    ] time= 19/06/2026 13:51:22
[2026-06-19 13:51:22,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:51:22,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:51:23,067.067 INFO    ] No existing commands found in stream
[2026-06-19 13:51:28,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:51:28,082.082 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 13:51:31,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:51:31,076.076 INFO    ] Checking for system updates...
[2026-06-19 13:51:31,114.114 INFO    ] 200
[2026-06-19 13:51:31,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:31,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:51:31,181.181 INFO    ] No update needed
[2026-06-19 13:51:31,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 13:51:31,220.220 INFO    ] 200
[2026-06-19 13:51:31,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:31,264.264 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:51:31,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:51:31,312.312 INFO    ] No camera update needed
[2026-06-19 13:51:31,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:51:31,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:51:31,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:51:31,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:51:33,374.374 INFO    ] ================================================
[2026-06-19 13:51:33,390.390 INFO    ] Launching Daemon at Fri Jun 19 13:51:33 IST 2026
[2026-06-19 13:51:33,401.401 INFO    ] ================================================
[2026-06-19 13:51:33,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:51:33
[2026-06-19 13:51:34,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:51:34,843.843 INFO    ] Initializing speech engine...
[2026-06-19 13:51:34,852.852 INFO    ] 2026-06-19 13:51:34
[2026-06-19 13:51:35,104.104 INFO    ] 2026-06-19 13:51:35
[2026-06-19 13:51:35,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:51:35,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:51:35,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:51:35,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:51:35,645.645 INFO    ] time= 19/06/2026 13:51:35
[2026-06-19 13:51:35,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:51:35,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:51:35,824.824 INFO    ] No existing commands found in stream
[2026-06-19 13:51:40,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:51:40,852.852 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 13:51:42,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:51:42,866.866 INFO    ] Checking for system updates...
[2026-06-19 13:51:42,902.902 INFO    ] 200
[2026-06-19 13:51:42,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:42,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:51:42,960.960 INFO    ] No update needed
[2026-06-19 13:51:42,962.962 INFO    ] Checking for camera pi updates...
[2026-06-19 13:51:42,997.997 INFO    ] 200
[2026-06-19 13:51:43,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:43,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:51:43,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:51:43,092.092 INFO    ] No camera update needed
[2026-06-19 13:51:43,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:51:43,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:51:43,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:51:43,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:51:45,151.151 INFO    ] ================================================
[2026-06-19 13:51:45,167.167 INFO    ] Launching Daemon at Fri Jun 19 13:51:45 IST 2026
[2026-06-19 13:51:45,178.178 INFO    ] ================================================
[2026-06-19 13:51:45,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:51:45
[2026-06-19 13:51:46,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:51:46,685.685 INFO    ] Initializing speech engine...
[2026-06-19 13:51:46,696.696 INFO    ] 2026-06-19 13:51:46
[2026-06-19 13:51:47,025.025 INFO    ] 2026-06-19 13:51:46
[2026-06-19 13:51:47,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:51:47,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:51:47,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:51:47,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:51:47,586.586 INFO    ] time= 19/06/2026 13:51:47
[2026-06-19 13:51:47,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:51:47,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:51:47,752.752 INFO    ] No existing commands found in stream
[2026-06-19 13:51:52,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:51:52,784.784 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 13:51:54,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:51:54,191.191 INFO    ] Checking for system updates...
[2026-06-19 13:51:54,227.227 INFO    ] 200
[2026-06-19 13:51:54,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:54,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:51:54,284.284 INFO    ] No update needed
[2026-06-19 13:51:54,286.286 INFO    ] Checking for camera pi updates...
[2026-06-19 13:51:54,320.320 INFO    ] 200
[2026-06-19 13:51:54,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:51:54,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:51:54,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:51:54,409.409 INFO    ] No camera update needed
[2026-06-19 13:51:54,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:51:54,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:51:54,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:51:54,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:51:56,466.466 INFO    ] ================================================
[2026-06-19 13:51:56,482.482 INFO    ] Launching Daemon at Fri Jun 19 13:51:56 IST 2026
[2026-06-19 13:51:56,493.493 INFO    ] ================================================
[2026-06-19 13:51:57,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:51:57
[2026-06-19 13:51:57,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:51:57,958.958 INFO    ] Initializing speech engine...
[2026-06-19 13:51:57,965.965 INFO    ] 2026-06-19 13:51:57
[2026-06-19 13:51:58,227.227 INFO    ] 2026-06-19 13:51:58
[2026-06-19 13:51:58,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:51:58,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:51:58,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:51:58,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:51:58,773.773 INFO    ] time= 19/06/2026 13:51:58
[2026-06-19 13:51:58,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:51:58,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:51:58,929.929 INFO    ] No existing commands found in stream
[2026-06-19 13:52:03,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:52:03,947.947 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 13:52:07,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:52:07,747.747 INFO    ] Checking for system updates...
[2026-06-19 13:52:07,784.784 INFO    ] 200
[2026-06-19 13:52:07,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:07,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:52:07,842.842 INFO    ] No update needed
[2026-06-19 13:52:07,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 13:52:07,883.883 INFO    ] 200
[2026-06-19 13:52:07,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:07,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:52:07,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:52:07,980.980 INFO    ] No camera update needed
[2026-06-19 13:52:07,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:52:07,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:52:07,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:52:07,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:52:10,039.039 INFO    ] ================================================
[2026-06-19 13:52:10,055.055 INFO    ] Launching Daemon at Fri Jun 19 13:52:10 IST 2026
[2026-06-19 13:52:10,066.066 INFO    ] ================================================
[2026-06-19 13:52:10,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:52:10
[2026-06-19 13:52:11,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:52:11,862.862 INFO    ] Initializing speech engine...
[2026-06-19 13:52:11,871.871 INFO    ] 2026-06-19 13:52:11
[2026-06-19 13:52:12,181.181 INFO    ] 2026-06-19 13:52:12
[2026-06-19 13:52:12,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:52:12,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:52:12,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:52:12,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:52:12,643.643 INFO    ] time= 19/06/2026 13:52:12
[2026-06-19 13:52:12,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:52:14,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:52:15,049.049 INFO    ] No existing commands found in stream
[2026-06-19 13:52:20,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:52:20,068.068 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 13:52:20,630.630 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:52:20,632.632 INFO    ] Checking for system updates...
[2026-06-19 13:52:20,669.669 INFO    ] 200
[2026-06-19 13:52:20,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:20,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:52:20,728.728 INFO    ] No update needed
[2026-06-19 13:52:20,731.731 INFO    ] Checking for camera pi updates...
[2026-06-19 13:52:20,765.765 INFO    ] 200
[2026-06-19 13:52:20,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:20,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:52:20,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:52:20,857.857 INFO    ] No camera update needed
[2026-06-19 13:52:20,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:52:20,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:52:20,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:52:20,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:52:22,916.916 INFO    ] ================================================
[2026-06-19 13:52:22,933.933 INFO    ] Launching Daemon at Fri Jun 19 13:52:22 IST 2026
[2026-06-19 13:52:22,943.943 INFO    ] ================================================
[2026-06-19 13:52:23,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:52:23
[2026-06-19 13:52:24,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:52:24,567.567 INFO    ] Initializing speech engine...
[2026-06-19 13:52:24,574.574 INFO    ] 2026-06-19 13:52:24
[2026-06-19 13:52:24,880.880 INFO    ] 2026-06-19 13:52:24
[2026-06-19 13:52:24,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:52:25,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:52:25,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:52:25,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:52:25,390.390 INFO    ] time= 19/06/2026 13:52:25
[2026-06-19 13:52:25,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:52:25,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:52:25,570.570 INFO    ] No existing commands found in stream
[2026-06-19 13:52:30,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:52:30,604.604 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 13:52:31,152.152 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:52:31,155.155 INFO    ] Checking for system updates...
[2026-06-19 13:52:31,192.192 INFO    ] 200
[2026-06-19 13:52:31,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:31,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:52:31,251.251 INFO    ] No update needed
[2026-06-19 13:52:31,253.253 INFO    ] Checking for camera pi updates...
[2026-06-19 13:52:31,290.290 INFO    ] 200
[2026-06-19 13:52:31,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:31,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:52:31,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:52:31,480.480 INFO    ] No camera update needed
[2026-06-19 13:52:31,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:52:31,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:52:31,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:52:31,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:52:33,537.537 INFO    ] ================================================
[2026-06-19 13:52:33,553.553 INFO    ] Launching Daemon at Fri Jun 19 13:52:33 IST 2026
[2026-06-19 13:52:33,564.564 INFO    ] ================================================
[2026-06-19 13:52:34,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:52:34
[2026-06-19 13:52:34,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:52:35,213.213 INFO    ] Initializing speech engine...
[2026-06-19 13:52:35,220.220 INFO    ] 2026-06-19 13:52:35
[2026-06-19 13:52:35,500.500 INFO    ] 2026-06-19 13:52:35
[2026-06-19 13:52:35,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:52:35,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:52:35,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:52:35,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:52:35,995.995 INFO    ] time= 19/06/2026 13:52:35
[2026-06-19 13:52:36,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:52:36,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:52:36,190.190 INFO    ] No existing commands found in stream
[2026-06-19 13:52:41,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:52:41,219.219 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 13:52:45,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:52:45,676.676 INFO    ] Checking for system updates...
[2026-06-19 13:52:45,717.717 INFO    ] 200
[2026-06-19 13:52:45,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:45,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:52:45,776.776 INFO    ] No update needed
[2026-06-19 13:52:45,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 13:52:45,817.817 INFO    ] 200
[2026-06-19 13:52:45,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:45,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:52:45,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:52:45,908.908 INFO    ] No camera update needed
[2026-06-19 13:52:45,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:52:45,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:52:45,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:52:45,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:52:47,965.965 INFO    ] ================================================
[2026-06-19 13:52:47,980.980 INFO    ] Launching Daemon at Fri Jun 19 13:52:47 IST 2026
[2026-06-19 13:52:47,990.990 INFO    ] ================================================
[2026-06-19 13:52:48,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:52:48
[2026-06-19 13:52:49,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:52:49,406.406 INFO    ] Initializing speech engine...
[2026-06-19 13:52:49,428.428 INFO    ] 2026-06-19 13:52:49
[2026-06-19 13:52:49,687.687 INFO    ] 2026-06-19 13:52:49
[2026-06-19 13:52:49,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:52:49,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:52:49,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:52:50,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:52:50,178.178 INFO    ] time= 19/06/2026 13:52:50
[2026-06-19 13:52:50,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:52:50,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:52:50,393.393 INFO    ] No existing commands found in stream
[2026-06-19 13:52:55,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:52:55,408.408 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 13:52:56,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:52:56,522.522 INFO    ] Checking for system updates...
[2026-06-19 13:52:56,563.563 INFO    ] 200
[2026-06-19 13:52:56,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:56,618.618 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:52:56,621.621 INFO    ] No update needed
[2026-06-19 13:52:56,623.623 INFO    ] Checking for camera pi updates...
[2026-06-19 13:52:56,657.657 INFO    ] 200
[2026-06-19 13:52:56,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:52:56,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:52:56,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:52:56,744.744 INFO    ] No camera update needed
[2026-06-19 13:52:56,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:52:56,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:52:56,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:52:56,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:52:58,800.800 INFO    ] ================================================
[2026-06-19 13:52:58,816.816 INFO    ] Launching Daemon at Fri Jun 19 13:52:58 IST 2026
[2026-06-19 13:52:58,827.827 INFO    ] ================================================
[2026-06-19 13:52:59,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:52:59
[2026-06-19 13:53:00,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:53:00,500.500 INFO    ] Initializing speech engine...
[2026-06-19 13:53:00,506.506 INFO    ] 2026-06-19 13:53:00
[2026-06-19 13:53:00,801.801 INFO    ] 2026-06-19 13:53:00
[2026-06-19 13:53:00,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:53:01,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:53:01,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:53:01,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:53:01,334.334 INFO    ] time= 19/06/2026 13:53:01
[2026-06-19 13:53:01,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:53:01,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:53:01,520.520 INFO    ] No existing commands found in stream
[2026-06-19 13:53:06,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:53:06,555.555 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 13:53:08,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:53:08,109.109 INFO    ] Checking for system updates...
[2026-06-19 13:53:08,152.152 INFO    ] 200
[2026-06-19 13:53:08,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:53:08,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:53:08,221.221 INFO    ] No update needed
[2026-06-19 13:53:08,224.224 INFO    ] Checking for camera pi updates...
[2026-06-19 13:53:08,259.259 INFO    ] 200
[2026-06-19 13:53:08,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:53:08,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:53:08,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:53:08,356.356 INFO    ] No camera update needed
[2026-06-19 13:53:08,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:53:08,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:53:08,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:53:08,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:53:10,418.418 INFO    ] ================================================
[2026-06-19 13:53:10,434.434 INFO    ] Launching Daemon at Fri Jun 19 13:53:10 IST 2026
[2026-06-19 13:53:10,446.446 INFO    ] ================================================
[2026-06-19 13:53:11,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:53:11
[2026-06-19 13:53:11,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:53:12,119.119 INFO    ] Initializing speech engine...
[2026-06-19 13:53:12,132.132 INFO    ] 2026-06-19 13:53:12
[2026-06-19 13:53:12,417.417 INFO    ] 2026-06-19 13:53:12
[2026-06-19 13:53:12,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:53:12,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:53:12,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:53:12,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:53:12,963.963 INFO    ] time= 19/06/2026 13:53:12
[2026-06-19 13:53:12,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:53:13,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:53:13,142.142 INFO    ] Found 1 existing command(s) in stream
[2026-06-19 13:53:13,202.202 INFO    ] Checking historical command: ID=1781857390831-0
[2026-06-19 13:53:13,234.234 INFO    ] process_and_cleanup_command: msg_id=1781857390831-0
[2026-06-19 13:53:13,299.299 INFO    ] is_command_expired: timestamp=2026-06-19T08:23:09.752Z, expiry=30s
[2026-06-19 13:53:13,562.562 INFO    ] Command removed from stream: 1781857390831-0. returning for processing...
[2026-06-19 13:53:13,589.589 INFO    ] ***** get_valid_command
[2026-06-19 13:53:13,596.596 INFO    ] {'timestamp': '2026-06-19T08:23:09.752Z', 'data': '{"request_id":"start-order-1781857389752-a0nsix5xs","orderId":"TM07202501260619135221666","is_vending":false}', 'timeout': '10', 'source': 'webapp', 'command': 'start-order'}
[2026-06-19 13:53:13,640.640 INFO    ] ***** Parsed command data: {'orderId': 'TM07202501260619135221666', 'request_id': 'start-order-1781857389752-a0nsix5xs', 'is_vending': False}
[2026-06-19 13:53:13,651.651 INFO    ] Handling start order...
[2026-06-19 13:53:13,659.659 INFO    ] handle_start_order_command
[2026-06-19 13:53:13,714.714 INFO    ] _send_start_order_success: request_id=start-order-1781857389752-a0nsix5xs, order_id=TM07202501260619135221666
[2026-06-19 13:53:13,720.720 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-19 13:53:13,855.855 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781857393750-0
[2026-06-19 13:53:13,865.865 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-19 13:53:13,872.872 INFO    ] Checking for system updates...
[2026-06-19 13:53:13,929.929 INFO    ] 200
[2026-06-19 13:53:13,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:53:13,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:53:14,000.000 INFO    ] No update needed
[2026-06-19 13:53:14,005.005 INFO    ] Checking for camera pi updates...
[2026-06-19 13:53:14,047.047 INFO    ] 200
[2026-06-19 13:53:14,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:53:14,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:53:14,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:53:14,162.162 INFO    ] No camera update needed
[2026-06-19 13:53:14,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:53:14,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:53:14,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:53:14,202.202 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 13:53:14,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:53:16,276.276 INFO    ] ================================================
[2026-06-19 13:53:16,291.291 INFO    ] Launching Daemon at Fri Jun 19 13:53:16 IST 2026
[2026-06-19 13:53:16,303.303 INFO    ] ================================================
[2026-06-19 13:53:16,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:53:16
[2026-06-19 13:53:17,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:53:17,739.739 INFO    ] Initializing speech engine...
[2026-06-19 13:53:17,749.749 INFO    ] 2026-06-19 13:53:17
[2026-06-19 13:53:18,046.046 INFO    ] 2026-06-19 13:53:18
[2026-06-19 13:53:18,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:53:18,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:53:18,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:53:18,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:53:18,435.435 INFO    ] time= 19/06/2026 13:53:18
[2026-06-19 13:53:18,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:53:18,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:53:18,566.566 INFO    ] Found 2 existing command(s) in stream
[2026-06-19 13:53:18,593.593 INFO    ] Checking historical command: ID=1781857393750-0
[2026-06-19 13:53:18,647.647 INFO    ] process_and_cleanup_command: msg_id=1781857393750-0
[2026-06-19 13:53:18,696.696 INFO    ] is_command_expired: timestamp=2026-06-19T08:23:13.716766Z, expiry=30s
[2026-06-19 13:53:18,876.876 INFO    ] Command removed from stream: 1781857393750-0. returning for processing...
[2026-06-19 13:53:18,922.922 INFO    ] ***** get_valid_command
[2026-06-19 13:53:18,948.948 INFO    ] {'timestamp': '2026-06-19T08:23:13.716766Z', 'metadata_request_id': 'start-order-1781857389752-a0nsix5xs', 'status': 'success', 'message': 'start-order success', 'metadata_order_id': 'TM07202501260619135221666', 'imei': 'TM07202501', 'message_type': 'command_response'}
[2026-06-19 13:53:19,003.003 INFO    ] Checking historical command: ID=1781857394987-0
[2026-06-19 13:53:19,056.056 INFO    ] process_and_cleanup_command: msg_id=1781857394987-0
[2026-06-19 13:53:19,065.065 INFO    ] is_command_expired: timestamp=2026-06-19T08:23:13.988Z, expiry=30s
[2026-06-19 13:53:19,232.232 INFO    ] Command removed from stream: 1781857394987-0. returning for processing...
[2026-06-19 13:53:19,262.262 INFO    ] ***** get_valid_command
[2026-06-19 13:53:19,289.289 INFO    ] {'timeout': '60', 'data': '{"request_id":"process-order-1781857393988-qplxcz42r","orderId":"TM07202501260619135221666","is_vending":false,"accessCode":"85746159"}', 'source': 'webapp', 'command': 'process-order', 'timestamp': '2026-06-19T08:23:13.988Z'}
[2026-06-19 13:53:19,302.302 INFO    ] ***** Parsed command data: {'orderId': 'TM07202501260619135221666', 'request_id': 'process-order-1781857393988-qplxcz42r', 'accessCode': '85746159', 'is_vending': False}
[2026-06-19 13:53:19,305.305 INFO    ] Handling process order...
[2026-06-19 13:53:19,308.308 INFO    ] Processing process-order command...
[2026-06-19 13:53:19,311.311 INFO    ] 🔍 Lock file Order ID: TM07202501260619135221666, TS: 2026-06-19 13:53:13
[2026-06-19 13:53:19,325.325 INFO    ] ✅ Order lock valid for TM07202501260619135221666
[2026-06-19 13:53:19,328.328 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-19 13:53:19,377.377 INFO    ] processing access code 85746159 for order TM07202501260619135221666
[2026-06-19 13:53:19,464.464 INFO    ] 🔍 Lock file Order ID: TM07202501260619135221666, TS: 2026-06-19 13:53:13
[2026-06-19 13:53:19,483.483 INFO    ] ✅ Order lock valid for TM07202501260619135221666
[2026-06-19 13:53:19,490.490 INFO    ] 2026-06-19 13:53:19
[2026-06-19 13:53:19,563.563 INFO    ] 200
[2026-06-19 13:53:19,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:53:19,584.584 INFO    ] 85746159
[2026-06-19 13:53:19,629.629 INFO    ] 2026-06-19 13:53:19
[2026-06-19 13:53:19,635.635 INFO    ] session id :234765578
[2026-06-19 13:53:19,640.640 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=85746159&imei=TM07202501&session_id=234765578
[2026-06-19 13:53:24,676.676 INFO    ] 200
[2026-06-19 13:53:24,679.679 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"sku_total": 20, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "skuid": "4500541", "unit_price": 20, "offer_id": "", "name": "Cad bury Dairy Milk Chocolate 18gm", "offer_desc": "", "door_id": "2", "mrp": "20", "qty": 1, "tray_id": "42"}], "bill_amount": "20", "mobile": "9662586719", "access_code": "85746159", "invoice_bill": "20", "order_id": "TM07202501260619135221666"}}
[2026-06-19 13:53:24,682.682 INFO    ] 20
[2026-06-19 13:53:24,684.684 INFO    ] TM07202501260619135221666
[2026-06-19 13:53:24,686.686 INFO    ] 9662586719
[2026-06-19 13:53:24,689.689 INFO    ] 2026-06-19 13:53:24
[2026-06-19 13:53:24,691.691 INFO    ] Door Opening for user mobile ending with  six seven one nine 
[2026-06-19 13:53:24,693.693 INFO    ] Door Opening for user mobile ending with  six seven one nine 
[2026-06-19 13:53:24,696.696 INFO    ] 78636e7ad772654a9fb11e49c4ed2d90
[2026-06-19 13:53:24,698.698 INFO    ] 2026-06-19 13:53:24
[2026-06-19 13:53:24,700.700 INFO    ] playing audio file
[2026-06-19 13:53:24,718.718 INFO    ] 2026-06-19 13:53:24
[2026-06-19 13:53:24,721.721 INFO    ] 2026-06-19 13:53:24
[2026-06-19 13:53:24,724.724 INFO    ] publish_status: order_id=TM07202501260619135221666
[2026-06-19 13:53:24,727.727 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619135221666
[2026-06-19 13:53:24,824.824 INFO    ] [publish_status] Message added to stream with ID: 1781857404760-0
[2026-06-19 13:53:24,827.827 INFO    ] Published to order:TM07202501260619135221666: {'timestamp': '2026-06-19T08:23:24.722680Z', 'server_response': '{"data": {"order_id": "TM07202501260619135221666", "invoice_bill": "20", "bill_amount": "20", "proposed_sku_json": [{"offer_id": "", "offer_desc": "", "name": "Cad bury Dairy Milk Chocolate 18gm", "tray_id": "42", "mrp": "20", "sku_total": 20, "skuid": "4500541", "door_id": "2", "unit_price": 20, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "qty": 1}], "access_code": "85746159", "mobile": "9662586719"}, "msg": "Order Data", "status": true, "rstatus": true}', 'order_id': 'TM07202501260619135221666', 'server_status': 'order-started'} (ID: 1781857404760-0)
[2026-06-19 13:53:25,303.303 INFO    ] {'server_response': {'data': {'order_id': 'TM07202501260619135221666', 'invoice_bill': '20', 'bill_amount': '20', 'proposed_sku_json': [{'offer_id': '', 'offer_desc': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'tray_id': '42', 'mrp': '20', 'sku_total': 20, 'skuid': '4500541', 'door_id': '2', 'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'qty': 1}], 'access_code': '85746159', 'mobile': '9662586719'}, 'msg': 'Order Data', 'status': True, 'rstatus': True}, 'order_id': 'TM07202501260619135221666', 'server_status': 'order-started'}
[2026-06-19 13:53:25,306.306 INFO    ] 200
[2026-06-19 13:53:25,308.308 INFO    ] {"data":{"server_response":{"data":{"order_id":"TM07202501260619135221666","invoice_bill":"20","bill_amount":"20","proposed_sku_json":[{"offer_id":"","offer_desc":"","name":"Cad bury Dairy Milk Chocolate 18gm","tray_id":"42","mrp":"20","sku_total":20,"skuid":"4500541","door_id":"2","unit_price":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","qty":1}],"access_code":"85746159","mobile":"9662586719"},"msg":"Order Data","status":true,"rstatus":true},"order_id":"TM07202501260619135221666","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 13:53:25,311.311 INFO    ] {'data': {'server_response': {'data': {'order_id': 'TM07202501260619135221666', 'invoice_bill': '20', 'bill_amount': '20', 'mobile': '9662586719', 'access_code': '85746159', 'proposed_sku_json': [{'offer_id': '', 'offer_desc': '', 'name': 'Cad bury Dairy Milk Chocolate 18gm', 'tray_id': '42', 'mrp': '20', 'sku_total': 20, 'skuid': '4500541', 'door_id': '2', 'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'qty': 1}]}, 'msg': 'Order Data', 'status': True, 'rstatus': True}, 'order_id': 'TM07202501260619135221666', 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-19 13:53:25,314.314 INFO    ] 2026-06-19 13:53:25
[2026-06-19 13:53:25,357.357 INFO    ] 200
[2026-06-19 13:53:25,360.360 INFO    ] True
[2026-06-19 13:53:25,547.547 INFO    ] 200
[2026-06-19 13:53:25,550.550 INFO    ] {"rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "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": ""}}
[2026-06-19 13:53:25,553.553 INFO    ] {'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-19 13:53:25,555.555 INFO    ] *** process_order ***
[2026-06-19 13:53:26,700.700 INFO    ] 200
[2026-06-19 13:53:26,703.703 INFO    ] {"rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "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": ""}}
[2026-06-19 13:53:26,706.706 INFO    ] {'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-19 13:53:26,709.709 INFO    ] *** process_order ***
[2026-06-19 13:53:27,825.825 INFO    ] 200
[2026-06-19 13:53:27,828.828 INFO    ] {"rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "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": ""}}
[2026-06-19 13:53:27,831.831 INFO    ] {'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}}
[2026-06-19 13:53:27,833.833 INFO    ] *** process_order ***
[2026-06-19 13:53:29,017.017 INFO    ] 200
[2026-06-19 13:53:29,020.020 INFO    ] {"rstatus": true, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True", "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": ""}}
[2026-06-19 13:53:29,022.022 INFO    ] {'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}
[2026-06-19 13:53:29,025.025 INFO    ] *** process_order ***
[2026-06-19 13:53:29,028.028 INFO    ] publish_status: order_id=TM07202501260619135221666
[2026-06-19 13:53:29,030.030 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619135221666
[2026-06-19 13:53:29,102.102 INFO    ] [publish_status] Message added to stream with ID: 1781857409039-0
[2026-06-19 13:53:29,104.104 INFO    ] Published to order:TM07202501260619135221666: {'server_response': '{"voiceNote": "Door is open...", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "rstatus": true, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  ", "UI_Header": ""}, "SectionMain": {"Header": "Processing Order"}, "delay": 0}', 'order_id': 'TM07202501260619135221666', 'server_status': 'doorOpened'} (ID: 1781857409039-0)
[2026-06-19 13:53:30,169.169 INFO    ] 2026-06-19 13:53:30
[2026-06-19 13:53:30,172.172 INFO    ] publish_status: order_id=TM07202501260619135221666
[2026-06-19 13:53:30,175.175 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619135221666
[2026-06-19 13:53:30,267.267 INFO    ] [publish_status] Message added to stream with ID: 1781857410204-0
[2026-06-19 13:53:30,270.270 INFO    ] Published to order:TM07202501260619135221666: {'timestamp': '2026-06-19T08:23:30.170761Z', 'server_response': '{"SectionStatus": {"Note": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  ", "UI_Header": ""}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "rstatus": true, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "delay": 0}', 'order_id': 'TM07202501260619135221666', 'server_status': 'processOrder'} (ID: 1781857410204-0)
[2026-06-19 13:53:30,800.800 INFO    ] {'server_response': {'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}, 'order_id': 'TM07202501260619135221666', 'server_status': 'processOrder'}
[2026-06-19 13:53:30,803.803 INFO    ] 200
[2026-06-19 13:53:30,805.805 INFO    ] {"data":{"server_response":{"SectionStatus":{"Note":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  ","UI_Header":""},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true","rstatus":true,"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"delay":0},"order_id":"TM07202501260619135221666","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 13:53:30,808.808 INFO    ] {'data': {'server_response': {'voiceNote': 'Please Wait', 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true', 'rstatus': True, 'SectionStatus': {'Note': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}, 'order_id': 'TM07202501260619135221666', 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-19 13:53:30,811.811 INFO    ] 2026-06-19 13:53:30
[2026-06-19 13:53:30,813.813 INFO    ] None
[2026-06-19 13:53:30,816.816 INFO    ] Opening Door now
[2026-06-19 13:53:30,819.819 INFO    ] Opening Door now
[2026-06-19 13:53:30,821.821 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-19 13:53:30,824.824 INFO    ] 2026-06-19 13:53:30
[2026-06-19 13:53:30,827.827 INFO    ] playing audio file
[2026-06-19 13:53:30,846.846 INFO    ] 2026-06-19 13:53:30
[2026-06-19 13:53:30,850.850 INFO    ] 2026-06-19 13:53:30
[2026-06-19 13:53:33,960.960 INFO    ] 200
[2026-06-19 13:53:33,962.962 INFO    ] {"rstatus": false, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "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"}}
[2026-06-19 13:53:33,966.966 INFO    ] {'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': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Door 2 is open now', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-19 13:53:37,028.028 INFO    ] 200
[2026-06-19 13:53:37,030.030 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "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"}}
[2026-06-19 13:53:37,033.033 INFO    ] {'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': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-19 13:53:40,091.091 INFO    ] 200
[2026-06-19 13:53:40,094.094 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}]}, "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"}}
[2026-06-19 13:53:40,097.097 INFO    ] Please close door 2
[2026-06-19 13:53:40,100.100 INFO    ] Please close door 2
[2026-06-19 13:53:40,103.103 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-19 13:53:40,107.107 INFO    ] 2026-06-19 13:53:40
[2026-06-19 13:53:40,109.109 INFO    ] playing audio file
[2026-06-19 13:53:40,129.129 INFO    ] 2026-06-19 13:53:40
[2026-06-19 13:53:40,134.134 INFO    ] publish_status: order_id=TM07202501260619135221666
[2026-06-19 13:53:40,138.138 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619135221666
[2026-06-19 13:53:40,221.221 INFO    ] [publish_status] Message added to stream with ID: 1781857420156-0
[2026-06-19 13:53:40,225.225 INFO    ] Published to order:TM07202501260619135221666: {'timestamp': '2026-06-19T08:23:40.131661Z', 'server_response': '{"SectionStatus": {"Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door", "Header": "Please Close Door 2", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW"}, "error": {"data": {}, "code": 20001, "tmessage": "In Progress", "umessage": "In Progress"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Cad bury Dairy Milk Chocolate 18gm"}], "Header": "Pick the below items from the door"}, "status": "False", "rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}}', 'order_id': 'TM07202501260619135221666', 'server_status': 'OrderStatus'} (ID: 1781857420156-0)
[2026-06-19 13:53:40,770.770 INFO    ] {'server_response': {'SectionStatus': {'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW'}, 'error': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}, 'order_id': 'TM07202501260619135221666', 'server_status': 'OrderStatus'}
[2026-06-19 13:53:40,774.774 INFO    ] 200
[2026-06-19 13:53:40,777.777 INFO    ] {"data":{"server_response":{"SectionStatus":{"Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door","Header":"Please Close Door 2","UI_Header":"DOOR 2\nIS \nOPEN \nNOW"},"error":{"data":[],"code":20001,"tmessage":"In Progress","umessage":"In Progress"},"SectionSKU":{"skus":[{"qty":1,"name":"Cad bury Dairy Milk Chocolate 18gm"}],"Header":"Pick the below items from the door"},"status":"false","rstatus":false,"voiceNote":"Please close door 2","SectionMain":{"Header":"Door Open"}},"order_id":"TM07202501260619135221666","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 13:53:40,780.780 INFO    ] {'data': {'server_response': {'error': {'data': [], 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'status': 'false', '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'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 2'}, 'order_id': 'TM07202501260619135221666', 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-19 13:53:40,784.784 INFO    ] {'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': {'data': {}, 'code': 20001, 'tmessage': 'In Progress', 'umessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Cad bury Dairy Milk Chocolate 18gm'}], 'Header': 'Pick the below items from the door'}, 'status': 'False', 'rstatus': False, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}}
[2026-06-19 13:53:43,865.865 INFO    ] 200
[2026-06-19 13:53:43,868.868 INFO    ] {"rstatus": true, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "status": "True", "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"}}
[2026-06-19 13:53:43,872.872 INFO    ] {'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-06-19 13:53:43,878.878 INFO    ] 2026-06-19 13:53:43
[2026-06-19 13:53:43,882.882 INFO    ] Order Completed 
[2026-06-19 13:53:43,885.885 INFO    ] Order Completed 
[2026-06-19 13:53:43,887.887 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-19 13:53:43,890.890 INFO    ] 2026-06-19 13:53:43
[2026-06-19 13:53:43,893.893 INFO    ] playing audio file
[2026-06-19 13:53:43,910.910 INFO    ] 2026-06-19 13:53:43
[2026-06-19 13:53:43,913.913 INFO    ] {'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete ', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'delay': 100}
[2026-06-19 13:53:43,917.917 INFO    ] 2026-06-19 13:53:43
[2026-06-19 13:53:48,261.261 INFO    ] 200
[2026-06-19 13:53:48,264.264 INFO    ] {"rstatus": true, "anomaly": 0, "orderId": "TM07202501260619135221666", "total_amount": 20.0, "logic": "WBL", "res": "True", "skus": [{"sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "door_id": "", "qty": 1, "mrp": "20", "name": "Cad bury Dairy Milk Chocolate 18gm per peice", "skuid": "4500541", "tray_id": "42", "unit_price": "20"}]}
[2026-06-19 13:53:48,267.267 INFO    ] {'total_amount': 20.0, 'res': 'True', 'rstatus': True, 'orderId': 'TM07202501260619135221666', 'skus': [{'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'tray_id': '42', 'mrp': '20', 'sku_total': 20.0, 'qty': 1, 'door_id': '', 'skuid': '4500541', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20'}], 'logic': 'WBL', 'anomaly': 0}
[2026-06-19 13:53:48,270.270 INFO    ] {'total_amount': 20.0, 'res': 'True', 'rstatus': True, 'orderId': 'TM07202501260619135221666', 'skus': [{'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'tray_id': '42', 'mrp': '20', 'sku_total': 20.0, 'qty': 1, 'door_id': '', 'skuid': '4500541', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20'}], 'logic': 'WBL', 'anomaly': 0}
[2026-06-19 13:53:48,273.273 INFO    ] 2026-06-19 13:53:48
[2026-06-19 13:53:48,276.276 INFO    ] 2026-06-19 13:53:48
[2026-06-19 13:53:48,278.278 INFO    ] 20
[2026-06-19 13:53:48,281.281 INFO    ] 2026-06-19 13:53:48
[2026-06-19 13:53:48,284.284 INFO    ] 2026-06-19 13:53:48
[2026-06-19 13:53:48,287.287 INFO    ]  Your Bill Amount is 20
[2026-06-19 13:53:48,290.290 INFO    ]  Your Bill Amount is 20
[2026-06-19 13:53:48,293.293 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-19 13:53:48,296.296 INFO    ] 2026-06-19 13:53:48
[2026-06-19 13:53:48,298.298 INFO    ] playing audio file
[2026-06-19 13:53:48,316.316 INFO    ] 2026-06-19 13:53:48
[2026-06-19 13:53:48,320.320 INFO    ] 2026-06-19 13:53:48
[2026-06-19 13:53:48,323.323 INFO    ] publish_status: order_id=TM07202501260619135221666
[2026-06-19 13:53:48,327.327 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619135221666
[2026-06-19 13:53:48,440.440 INFO    ] [publish_status] Message added to stream with ID: 1781857428376-0
[2026-06-19 13:53:48,443.443 INFO    ] Published to order:TM07202501260619135221666: {'timestamp': '2026-06-19T08:23:48.321834Z', 'server_response': '{"total_amount": 20.0, "res": "True", "rstatus": true, "orderId": "TM07202501260619135221666", "skus": [{"name": "Cad bury Dairy Milk Chocolate 18gm per peice", "tray_id": "42", "mrp": "20", "sku_total": 20.0, "qty": 1, "door_id": "", "skuid": "4500541", "image_url": "https://images.tinymart.in/product/4500541-6798.jpg", "unit_price": "20"}], "logic": "WBL", "anomaly": 0}', 'order_id': 'TM07202501260619135221666', 'server_status': 'invoiceOrder'} (ID: 1781857428376-0)
[2026-06-19 13:53:48,954.954 INFO    ] {'server_response': {'total_amount': 20.0, 'res': 'True', 'rstatus': True, 'orderId': 'TM07202501260619135221666', 'skus': [{'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'tray_id': '42', 'mrp': '20', 'sku_total': 20.0, 'qty': 1, 'door_id': '', 'skuid': '4500541', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20'}], 'logic': 'WBL', 'anomaly': 0}, 'order_id': 'TM07202501260619135221666', 'server_status': 'invoiceOrder'}
[2026-06-19 13:53:48,957.957 INFO    ] 200
[2026-06-19 13:53:48,959.959 INFO    ] {"data":{"server_response":{"total_amount":20,"res":"true","rstatus":true,"orderId":"TM07202501260619135221666","skus":[{"name":"Cad bury Dairy Milk Chocolate 18gm per peice","tray_id":"42","mrp":"20","sku_total":20,"qty":1,"door_id":"","skuid":"4500541","image_url":"https:\/\/images.tinymart.in\/product\/4500541-6798.jpg","unit_price":"20"}],"logic":"WBL","anomaly":0},"order_id":"TM07202501260619135221666","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 13:53:48,963.963 INFO    ] {'data': {'server_response': {'total_amount': 20, 'res': 'true', 'rstatus': True, 'orderId': 'TM07202501260619135221666', 'skus': [{'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'tray_id': '42', 'mrp': '20', 'sku_total': 20, 'qty': 1, 'door_id': '', 'skuid': '4500541', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20'}], 'logic': 'WBL', 'anomaly': 0}, 'order_id': 'TM07202501260619135221666', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-19 13:53:48,966.966 INFO    ] {'data': {'server_response': {'total_amount': 20, 'res': 'true', 'rstatus': True, 'orderId': 'TM07202501260619135221666', 'skus': [{'name': 'Cad bury Dairy Milk Chocolate 18gm per peice', 'tray_id': '42', 'mrp': '20', 'sku_total': 20, 'qty': 1, 'door_id': '', 'skuid': '4500541', 'image_url': 'https://images.tinymart.in/product/4500541-6798.jpg', 'unit_price': '20'}], 'logic': 'WBL', 'anomaly': 0}, 'order_id': 'TM07202501260619135221666', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True}}
[2026-06-19 13:53:48,968.968 INFO    ] 2026-06-19 13:53:48
[2026-06-19 13:53:51,007.007 INFO    ] 200
[2026-06-19 13:53:51,009.009 INFO    ] {"tray_sync": [], "tray_synced": ["TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666", "TM07202501260619135221666"], "orders_data": [], "orders_synced": [], "order_items_synced": [], "orders": [], "status": true, "orders_data_synced": [], "order_items": []}
[2026-06-19 13:53:51,012.012 INFO    ] 2026-06-19 13:53:51
[2026-06-19 13:53:51,123.123 INFO    ] 200
[2026-06-19 13:53:51,126.126 INFO    ] True
[2026-06-19 13:53:51,129.129 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260619135221666
[2026-06-19 13:53:51,134.134 INFO    ] start order file deleted
[2026-06-19 13:53:51,138.138 INFO    ] Checking for system updates...
[2026-06-19 13:53:51,182.182 INFO    ] 200
[2026-06-19 13:53:51,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:53:51,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:53:51,252.252 INFO    ] No update needed
[2026-06-19 13:53:51,254.254 INFO    ] Checking for camera pi updates...
[2026-06-19 13:53:51,293.293 INFO    ] 200
[2026-06-19 13:53:51,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:53:51,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:53:51,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:53:51,397.397 INFO    ] No camera update needed
[2026-06-19 13:53:51,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:53:51,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:53:51,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:53:51,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:53:53,456.456 INFO    ] ================================================
[2026-06-19 13:53:53,471.471 INFO    ] Launching Daemon at Fri Jun 19 13:53:53 IST 2026
[2026-06-19 13:53:53,481.481 INFO    ] ================================================
[2026-06-19 13:53:54,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:53:54
[2026-06-19 13:53:54,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:53:55,113.113 INFO    ] Initializing speech engine...
[2026-06-19 13:53:55,119.119 INFO    ] 2026-06-19 13:53:55
[2026-06-19 13:53:55,438.438 INFO    ] 2026-06-19 13:53:55
[2026-06-19 13:53:55,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:53:55,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:53:55,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:53:55,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:53:55,942.942 INFO    ] time= 19/06/2026 13:53:55
[2026-06-19 13:53:55,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:53:55,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:53:56,110.110 INFO    ] No existing commands found in stream
[2026-06-19 13:54:01,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:54:01,150.150 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 13:54:04,769.769 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:54:04,772.772 INFO    ] Checking for system updates...
[2026-06-19 13:54:04,814.814 INFO    ] 200
[2026-06-19 13:54:04,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:04,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:54:04,882.882 INFO    ] No update needed
[2026-06-19 13:54:04,884.884 INFO    ] Checking for camera pi updates...
[2026-06-19 13:54:04,919.919 INFO    ] 200
[2026-06-19 13:54:04,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:04,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:54:05,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:54:05,008.008 INFO    ] No camera update needed
[2026-06-19 13:54:05,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:54:05,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:54:05,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:54:05,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:54:07,068.068 INFO    ] ================================================
[2026-06-19 13:54:07,084.084 INFO    ] Launching Daemon at Fri Jun 19 13:54:07 IST 2026
[2026-06-19 13:54:07,095.095 INFO    ] ================================================
[2026-06-19 13:54:07,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:54:07
[2026-06-19 13:54:08,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:54:08,737.737 INFO    ] Initializing speech engine...
[2026-06-19 13:54:08,752.752 INFO    ] 2026-06-19 13:54:08
[2026-06-19 13:54:09,039.039 INFO    ] 2026-06-19 13:54:09
[2026-06-19 13:54:09,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:54:09,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:54:09,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:54:09,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:54:09,526.526 INFO    ] time= 19/06/2026 13:54:09
[2026-06-19 13:54:09,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:54:09,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:54:09,728.728 INFO    ] No existing commands found in stream
[2026-06-19 13:54:14,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:54:14,761.761 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 13:54:19,218.218 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:54:19,221.221 INFO    ] Checking for system updates...
[2026-06-19 13:54:19,265.265 INFO    ] 200
[2026-06-19 13:54:19,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:19,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:54:19,330.330 INFO    ] No update needed
[2026-06-19 13:54:19,333.333 INFO    ] Checking for camera pi updates...
[2026-06-19 13:54:19,373.373 INFO    ] 200
[2026-06-19 13:54:19,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:19,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:54:19,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:54:19,470.470 INFO    ] No camera update needed
[2026-06-19 13:54:19,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:54:19,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:54:19,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:54:19,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:54:21,530.530 INFO    ] ================================================
[2026-06-19 13:54:21,546.546 INFO    ] Launching Daemon at Fri Jun 19 13:54:21 IST 2026
[2026-06-19 13:54:21,557.557 INFO    ] ================================================
[2026-06-19 13:54:22,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:54:22
[2026-06-19 13:54:22,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:54:23,213.213 INFO    ] Initializing speech engine...
[2026-06-19 13:54:23,227.227 INFO    ] 2026-06-19 13:54:23
[2026-06-19 13:54:23,541.541 INFO    ] 2026-06-19 13:54:23
[2026-06-19 13:54:23,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:54:23,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:54:23,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:54:24,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:54:24,100.100 INFO    ] time= 19/06/2026 13:54:24
[2026-06-19 13:54:24,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:54:24,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:54:24,380.380 INFO    ] No existing commands found in stream
[2026-06-19 13:54:29,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:54:29,415.415 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 13:54:31,758.758 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:54:31,761.761 INFO    ] Checking for system updates...
[2026-06-19 13:54:31,799.799 INFO    ] 200
[2026-06-19 13:54:31,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:31,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:54:31,869.869 INFO    ] No update needed
[2026-06-19 13:54:31,873.873 INFO    ] Checking for camera pi updates...
[2026-06-19 13:54:31,914.914 INFO    ] 200
[2026-06-19 13:54:31,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:31,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:54:31,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:54:32,002.002 INFO    ] No camera update needed
[2026-06-19 13:54:32,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:54:32,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:54:32,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:54:32,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:54:34,062.062 INFO    ] ================================================
[2026-06-19 13:54:34,078.078 INFO    ] Launching Daemon at Fri Jun 19 13:54:34 IST 2026
[2026-06-19 13:54:34,088.088 INFO    ] ================================================
[2026-06-19 13:54:34,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:54:34
[2026-06-19 13:54:35,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:54:35,538.538 INFO    ] Initializing speech engine...
[2026-06-19 13:54:35,555.555 INFO    ] 2026-06-19 13:54:35
[2026-06-19 13:54:35,832.832 INFO    ] 2026-06-19 13:54:35
[2026-06-19 13:54:35,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:54:36,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:54:36,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:54:36,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:54:36,325.325 INFO    ] time= 19/06/2026 13:54:36
[2026-06-19 13:54:36,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:54:36,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:54:36,545.545 INFO    ] No existing commands found in stream
[2026-06-19 13:54:41,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:54:41,563.563 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 13:54:46,140.140 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:54:46,143.143 INFO    ] Checking for system updates...
[2026-06-19 13:54:46,180.180 INFO    ] 200
[2026-06-19 13:54:46,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:46,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:54:46,248.248 INFO    ] No update needed
[2026-06-19 13:54:46,251.251 INFO    ] Checking for camera pi updates...
[2026-06-19 13:54:46,287.287 INFO    ] 200
[2026-06-19 13:54:46,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:46,331.331 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:54:46,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:54:46,485.485 INFO    ] No camera update needed
[2026-06-19 13:54:46,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:54:46,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:54:46,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:54:46,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:54:48,547.547 INFO    ] ================================================
[2026-06-19 13:54:48,564.564 INFO    ] Launching Daemon at Fri Jun 19 13:54:48 IST 2026
[2026-06-19 13:54:48,576.576 INFO    ] ================================================
[2026-06-19 13:54:49,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:54:49
[2026-06-19 13:54:49,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:54:50,110.110 INFO    ] Initializing speech engine...
[2026-06-19 13:54:50,131.131 INFO    ] 2026-06-19 13:54:50
[2026-06-19 13:54:50,419.419 INFO    ] 2026-06-19 13:54:50
[2026-06-19 13:54:50,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:54:50,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:54:50,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:54:50,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:54:50,852.852 INFO    ] time= 19/06/2026 13:54:50
[2026-06-19 13:54:50,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:54:50,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:54:50,937.937 INFO    ] No existing commands found in stream
[2026-06-19 13:54:55,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:54:55,953.953 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 13:54:57,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:54:57,305.305 INFO    ] Checking for system updates...
[2026-06-19 13:54:57,341.341 INFO    ] 200
[2026-06-19 13:54:57,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:57,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:54:57,409.409 INFO    ] No update needed
[2026-06-19 13:54:57,411.411 INFO    ] Checking for camera pi updates...
[2026-06-19 13:54:57,444.444 INFO    ] 200
[2026-06-19 13:54:57,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:54:57,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:54:57,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:54:57,546.546 INFO    ] No camera update needed
[2026-06-19 13:54:57,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:54:57,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:54:57,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:54:57,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:54:59,601.601 INFO    ] ================================================
[2026-06-19 13:54:59,617.617 INFO    ] Launching Daemon at Fri Jun 19 13:54:59 IST 2026
[2026-06-19 13:54:59,629.629 INFO    ] ================================================
[2026-06-19 13:55:00,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:55:00
[2026-06-19 13:55:00,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:55:01,036.036 INFO    ] Initializing speech engine...
[2026-06-19 13:55:01,051.051 INFO    ] 2026-06-19 13:55:01
[2026-06-19 13:55:01,321.321 INFO    ] 2026-06-19 13:55:01
[2026-06-19 13:55:01,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:55:01,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:55:01,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:55:01,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:55:01,811.811 INFO    ] time= 19/06/2026 13:55:01
[2026-06-19 13:55:01,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:55:01,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:55:01,930.930 INFO    ] No existing commands found in stream
[2026-06-19 13:55:06,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:55:06,940.940 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 13:55:08,519.519 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:55:08,522.522 INFO    ] Checking for system updates...
[2026-06-19 13:55:08,558.558 INFO    ] 200
[2026-06-19 13:55:08,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:08,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:55:08,616.616 INFO    ] No update needed
[2026-06-19 13:55:08,618.618 INFO    ] Checking for camera pi updates...
[2026-06-19 13:55:08,653.653 INFO    ] 200
[2026-06-19 13:55:08,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:08,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:55:08,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:55:08,752.752 INFO    ] No camera update needed
[2026-06-19 13:55:08,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:55:08,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:55:08,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:55:08,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:55:10,811.811 INFO    ] ================================================
[2026-06-19 13:55:10,828.828 INFO    ] Launching Daemon at Fri Jun 19 13:55:10 IST 2026
[2026-06-19 13:55:10,839.839 INFO    ] ================================================
[2026-06-19 13:55:11,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:55:11
[2026-06-19 13:55:12,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:55:12,284.284 INFO    ] Initializing speech engine...
[2026-06-19 13:55:12,292.292 INFO    ] 2026-06-19 13:55:12
[2026-06-19 13:55:12,542.542 INFO    ] 2026-06-19 13:55:12
[2026-06-19 13:55:12,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:55:12,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:55:12,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:55:12,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:55:13,024.024 INFO    ] time= 19/06/2026 13:55:12
[2026-06-19 13:55:13,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:55:13,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:55:13,272.272 INFO    ] No existing commands found in stream
[2026-06-19 13:55:18,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:55:18,289.289 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 13:55:20,598.598 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:55:20,601.601 INFO    ] Checking for system updates...
[2026-06-19 13:55:20,637.637 INFO    ] 200
[2026-06-19 13:55:20,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:20,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:55:20,702.702 INFO    ] No update needed
[2026-06-19 13:55:20,705.705 INFO    ] Checking for camera pi updates...
[2026-06-19 13:55:20,739.739 INFO    ] 200
[2026-06-19 13:55:20,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:20,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:55:20,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:55:20,844.844 INFO    ] No camera update needed
[2026-06-19 13:55:20,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:55:20,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:55:20,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:55:20,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:55:22,905.905 INFO    ] ================================================
[2026-06-19 13:55:22,922.922 INFO    ] Launching Daemon at Fri Jun 19 13:55:22 IST 2026
[2026-06-19 13:55:22,933.933 INFO    ] ================================================
[2026-06-19 13:55:23,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:55:23
[2026-06-19 13:55:24,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:55:24,426.426 INFO    ] Initializing speech engine...
[2026-06-19 13:55:24,433.433 INFO    ] 2026-06-19 13:55:24
[2026-06-19 13:55:24,692.692 INFO    ] 2026-06-19 13:55:24
[2026-06-19 13:55:24,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:55:24,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:55:24,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:55:25,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:55:25,159.159 INFO    ] time= 19/06/2026 13:55:25
[2026-06-19 13:55:25,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:55:25,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:55:25,394.394 INFO    ] No existing commands found in stream
[2026-06-19 13:55:30,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:55:30,422.422 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 13:55:32,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:55:32,176.176 INFO    ] Checking for system updates...
[2026-06-19 13:55:32,219.219 INFO    ] 200
[2026-06-19 13:55:32,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:32,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:55:32,281.281 INFO    ] No update needed
[2026-06-19 13:55:32,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 13:55:32,322.322 INFO    ] 200
[2026-06-19 13:55:32,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:32,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:55:32,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:55:32,401.401 INFO    ] No camera update needed
[2026-06-19 13:55:32,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:55:32,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:55:32,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:55:32,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:55:34,461.461 INFO    ] ================================================
[2026-06-19 13:55:34,481.481 INFO    ] Launching Daemon at Fri Jun 19 13:55:34 IST 2026
[2026-06-19 13:55:34,492.492 INFO    ] ================================================
[2026-06-19 13:55:35,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:55:35
[2026-06-19 13:55:35,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:55:35,934.934 INFO    ] Initializing speech engine...
[2026-06-19 13:55:35,943.943 INFO    ] 2026-06-19 13:55:35
[2026-06-19 13:55:36,202.202 INFO    ] 2026-06-19 13:55:36
[2026-06-19 13:55:36,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:55:36,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:55:36,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:55:36,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:55:36,669.669 INFO    ] time= 19/06/2026 13:55:36
[2026-06-19 13:55:36,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:55:36,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:55:36,882.882 INFO    ] No existing commands found in stream
[2026-06-19 13:55:41,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:55:41,894.894 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 13:55:44,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:55:44,233.233 INFO    ] Checking for system updates...
[2026-06-19 13:55:44,269.269 INFO    ] 200
[2026-06-19 13:55:44,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:44,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:55:44,327.327 INFO    ] No update needed
[2026-06-19 13:55:44,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 13:55:44,367.367 INFO    ] 200
[2026-06-19 13:55:44,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:44,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:55:44,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:55:44,458.458 INFO    ] No camera update needed
[2026-06-19 13:55:44,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:55:44,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:55:44,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:55:44,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:55:46,515.515 INFO    ] ================================================
[2026-06-19 13:55:46,530.530 INFO    ] Launching Daemon at Fri Jun 19 13:55:46 IST 2026
[2026-06-19 13:55:46,542.542 INFO    ] ================================================
[2026-06-19 13:55:47,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:55:47
[2026-06-19 13:55:47,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:55:47,960.960 INFO    ] Initializing speech engine...
[2026-06-19 13:55:47,986.986 INFO    ] 2026-06-19 13:55:47
[2026-06-19 13:55:48,250.250 INFO    ] 2026-06-19 13:55:48
[2026-06-19 13:55:48,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:55:48,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:55:48,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:55:48,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:55:48,779.779 INFO    ] time= 19/06/2026 13:55:48
[2026-06-19 13:55:48,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:55:48,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:55:48,953.953 INFO    ] No existing commands found in stream
[2026-06-19 13:55:53,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:55:53,969.969 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 13:55:56,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:55:56,760.760 INFO    ] Checking for system updates...
[2026-06-19 13:55:56,796.796 INFO    ] 200
[2026-06-19 13:55:56,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:56,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:55:56,853.853 INFO    ] No update needed
[2026-06-19 13:55:56,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 13:55:56,893.893 INFO    ] 200
[2026-06-19 13:55:56,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:55:56,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:55:56,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:55:56,981.981 INFO    ] No camera update needed
[2026-06-19 13:55:56,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:55:56,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:55:56,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:55:56,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:55:59,038.038 INFO    ] ================================================
[2026-06-19 13:55:59,054.054 INFO    ] Launching Daemon at Fri Jun 19 13:55:59 IST 2026
[2026-06-19 13:55:59,066.066 INFO    ] ================================================
[2026-06-19 13:55:59,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:55:59
[2026-06-19 13:56:00,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:56:00,469.469 INFO    ] Initializing speech engine...
[2026-06-19 13:56:00,483.483 INFO    ] 2026-06-19 13:56:00
[2026-06-19 13:56:00,753.753 INFO    ] 2026-06-19 13:56:00
[2026-06-19 13:56:00,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:56:01,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:56:01,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:56:01,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:56:01,534.534 INFO    ] time= 19/06/2026 13:56:01
[2026-06-19 13:56:01,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:56:01,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:56:01,784.784 INFO    ] No existing commands found in stream
[2026-06-19 13:56:06,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:56:06,797.797 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 13:56:08,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:56:08,394.394 INFO    ] Checking for system updates...
[2026-06-19 13:56:08,430.430 INFO    ] 200
[2026-06-19 13:56:08,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:08,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:56:08,487.487 INFO    ] No update needed
[2026-06-19 13:56:08,490.490 INFO    ] Checking for camera pi updates...
[2026-06-19 13:56:08,523.523 INFO    ] 200
[2026-06-19 13:56:08,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:08,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:56:08,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:56:08,609.609 INFO    ] No camera update needed
[2026-06-19 13:56:08,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:56:08,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:56:08,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:56:08,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:56:10,665.665 INFO    ] ================================================
[2026-06-19 13:56:10,681.681 INFO    ] Launching Daemon at Fri Jun 19 13:56:10 IST 2026
[2026-06-19 13:56:10,692.692 INFO    ] ================================================
[2026-06-19 13:56:11,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:56:11
[2026-06-19 13:56:12,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:56:12,344.344 INFO    ] Initializing speech engine...
[2026-06-19 13:56:12,358.358 INFO    ] 2026-06-19 13:56:12
[2026-06-19 13:56:12,671.671 INFO    ] 2026-06-19 13:56:12
[2026-06-19 13:56:12,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:56:13,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:56:13,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:56:13,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:56:13,415.415 INFO    ] time= 19/06/2026 13:56:13
[2026-06-19 13:56:13,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:56:13,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:56:13,625.625 INFO    ] No existing commands found in stream
[2026-06-19 13:56:18,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:56:18,641.641 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 13:56:19,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:56:19,089.089 INFO    ] Checking for system updates...
[2026-06-19 13:56:19,126.126 INFO    ] 200
[2026-06-19 13:56:19,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:19,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:56:19,183.183 INFO    ] No update needed
[2026-06-19 13:56:19,185.185 INFO    ] Checking for camera pi updates...
[2026-06-19 13:56:19,219.219 INFO    ] 200
[2026-06-19 13:56:19,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:19,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:56:19,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:56:19,312.312 INFO    ] No camera update needed
[2026-06-19 13:56:19,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:56:19,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:56:19,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:56:19,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:56:21,368.368 INFO    ] ================================================
[2026-06-19 13:56:21,383.383 INFO    ] Launching Daemon at Fri Jun 19 13:56:21 IST 2026
[2026-06-19 13:56:21,400.400 INFO    ] ================================================
[2026-06-19 13:56:21,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:56:21
[2026-06-19 13:56:22,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:56:22,823.823 INFO    ] Initializing speech engine...
[2026-06-19 13:56:22,832.832 INFO    ] 2026-06-19 13:56:22
[2026-06-19 13:56:23,080.080 INFO    ] 2026-06-19 13:56:23
[2026-06-19 13:56:23,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:56:23,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:56:23,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:56:23,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:56:23,551.551 INFO    ] time= 19/06/2026 13:56:23
[2026-06-19 13:56:23,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:56:23,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:56:23,759.759 INFO    ] No existing commands found in stream
[2026-06-19 13:56:28,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:56:28,784.784 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 13:56:31,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:56:31,482.482 INFO    ] Checking for system updates...
[2026-06-19 13:56:31,518.518 INFO    ] 200
[2026-06-19 13:56:31,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:31,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:56:31,583.583 INFO    ] No update needed
[2026-06-19 13:56:31,586.586 INFO    ] Checking for camera pi updates...
[2026-06-19 13:56:31,620.620 INFO    ] 200
[2026-06-19 13:56:31,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:31,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:56:31,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:56:31,700.700 INFO    ] No camera update needed
[2026-06-19 13:56:31,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:56:31,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:56:31,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:56:31,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:56:33,759.759 INFO    ] ================================================
[2026-06-19 13:56:33,774.774 INFO    ] Launching Daemon at Fri Jun 19 13:56:33 IST 2026
[2026-06-19 13:56:33,785.785 INFO    ] ================================================
[2026-06-19 13:56:34,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:56:34
[2026-06-19 13:56:35,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:56:35,442.442 INFO    ] Initializing speech engine...
[2026-06-19 13:56:35,453.453 INFO    ] 2026-06-19 13:56:35
[2026-06-19 13:56:35,741.741 INFO    ] 2026-06-19 13:56:35
[2026-06-19 13:56:35,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:56:36,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:56:36,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:56:36,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:56:36,293.293 INFO    ] time= 19/06/2026 13:56:36
[2026-06-19 13:56:36,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:56:36,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:56:36,459.459 INFO    ] No existing commands found in stream
[2026-06-19 13:56:41,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:56:41,488.488 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 13:56:45,914.914 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:56:45,917.917 INFO    ] Checking for system updates...
[2026-06-19 13:56:45,958.958 INFO    ] 200
[2026-06-19 13:56:45,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:46,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:56:46,016.016 INFO    ] No update needed
[2026-06-19 13:56:46,019.019 INFO    ] Checking for camera pi updates...
[2026-06-19 13:56:46,052.052 INFO    ] 200
[2026-06-19 13:56:46,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:46,095.095 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:56:46,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:56:46,164.164 INFO    ] No camera update needed
[2026-06-19 13:56:46,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:56:46,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:56:46,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:56:46,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:56:48,223.223 INFO    ] ================================================
[2026-06-19 13:56:48,238.238 INFO    ] Launching Daemon at Fri Jun 19 13:56:48 IST 2026
[2026-06-19 13:56:48,249.249 INFO    ] ================================================
[2026-06-19 13:56:48,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:56:48
[2026-06-19 13:56:49,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:56:49,831.831 INFO    ] Initializing speech engine...
[2026-06-19 13:56:49,838.838 INFO    ] 2026-06-19 13:56:49
[2026-06-19 13:56:50,144.144 INFO    ] 2026-06-19 13:56:50
[2026-06-19 13:56:50,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:56:50,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:56:50,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:56:50,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:56:50,537.537 INFO    ] time= 19/06/2026 13:56:50
[2026-06-19 13:56:50,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:56:50,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:56:50,677.677 INFO    ] No existing commands found in stream
[2026-06-19 13:56:55,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:56:55,690.690 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 13:56:57,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:56:57,869.869 INFO    ] Checking for system updates...
[2026-06-19 13:56:57,909.909 INFO    ] 200
[2026-06-19 13:56:57,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:57,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:56:57,977.977 INFO    ] No update needed
[2026-06-19 13:56:57,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 13:56:58,016.016 INFO    ] 200
[2026-06-19 13:56:58,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:56:58,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:56:58,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:56:58,209.209 INFO    ] No camera update needed
[2026-06-19 13:56:58,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:56:58,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:56:58,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:56:58,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:57:00,264.264 INFO    ] ================================================
[2026-06-19 13:57:00,279.279 INFO    ] Launching Daemon at Fri Jun 19 13:57:00 IST 2026
[2026-06-19 13:57:00,291.291 INFO    ] ================================================
[2026-06-19 13:57:00,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:57:00
[2026-06-19 13:57:01,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:57:01,701.701 INFO    ] Initializing speech engine...
[2026-06-19 13:57:01,716.716 INFO    ] 2026-06-19 13:57:01
[2026-06-19 13:57:01,977.977 INFO    ] 2026-06-19 13:57:01
[2026-06-19 13:57:02,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:57:02,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:57:02,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:57:02,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:57:02,566.566 INFO    ] time= 19/06/2026 13:57:02
[2026-06-19 13:57:02,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:57:02,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:57:02,757.757 INFO    ] No existing commands found in stream
[2026-06-19 13:57:07,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:57:07,786.786 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 13:57:10,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:57:10,046.046 INFO    ] Checking for system updates...
[2026-06-19 13:57:10,082.082 INFO    ] 200
[2026-06-19 13:57:10,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:57:10,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:57:10,140.140 INFO    ] No update needed
[2026-06-19 13:57:10,142.142 INFO    ] Checking for camera pi updates...
[2026-06-19 13:57:10,179.179 INFO    ] 200
[2026-06-19 13:57:10,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:57:10,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:57:10,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:57:10,269.269 INFO    ] No camera update needed
[2026-06-19 13:57:10,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:57:10,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:57:10,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:57:10,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:57:12,328.328 INFO    ] ================================================
[2026-06-19 13:57:12,343.343 INFO    ] Launching Daemon at Fri Jun 19 13:57:12 IST 2026
[2026-06-19 13:57:12,354.354 INFO    ] ================================================
[2026-06-19 13:57:13,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:57:13
[2026-06-19 13:57:13,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:57:13,875.875 INFO    ] Initializing speech engine...
[2026-06-19 13:57:13,884.884 INFO    ] 2026-06-19 13:57:13
[2026-06-19 13:57:14,130.130 INFO    ] 2026-06-19 13:57:14
[2026-06-19 13:57:14,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:57:14,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:57:14,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:57:14,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:57:14,595.595 INFO    ] time= 19/06/2026 13:57:14
[2026-06-19 13:57:14,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:57:14,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:57:14,821.821 INFO    ] No existing commands found in stream
[2026-06-19 13:57:19,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:57:19,851.851 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 13:57:23,086.086 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:57:23,089.089 INFO    ] Checking for system updates...
[2026-06-19 13:57:23,125.125 INFO    ] 200
[2026-06-19 13:57:23,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:57:23,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:57:23,185.185 INFO    ] No update needed
[2026-06-19 13:57:23,187.187 INFO    ] Checking for camera pi updates...
[2026-06-19 13:57:23,222.222 INFO    ] 200
[2026-06-19 13:57:23,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:57:23,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:57:23,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:57:23,313.313 INFO    ] No camera update needed
[2026-06-19 13:57:23,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:57:23,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:57:23,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:57:23,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:57:25,369.369 INFO    ] ================================================
[2026-06-19 13:57:25,384.384 INFO    ] Launching Daemon at Fri Jun 19 13:57:25 IST 2026
[2026-06-19 13:57:25,396.396 INFO    ] ================================================
[2026-06-19 13:57:25,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:57:25
[2026-06-19 13:57:26,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:57:26,816.816 INFO    ] Initializing speech engine...
[2026-06-19 13:57:26,822.822 INFO    ] 2026-06-19 13:57:26
[2026-06-19 13:57:27,092.092 INFO    ] 2026-06-19 13:57:27
[2026-06-19 13:57:27,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:57:27,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:57:27,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:57:27,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:57:27,590.590 INFO    ] time= 19/06/2026 13:57:27
[2026-06-19 13:57:27,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:57:27,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:57:27,803.803 INFO    ] No existing commands found in stream
[2026-06-19 13:57:32,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:57:32,821.821 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 13:57:34,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:57:34,829.829 INFO    ] Checking for system updates...
[2026-06-19 13:57:34,865.865 INFO    ] 200
[2026-06-19 13:57:34,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:57:34,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:57:34,923.923 INFO    ] No update needed
[2026-06-19 13:57:34,925.925 INFO    ] Checking for camera pi updates...
[2026-06-19 13:57:34,960.960 INFO    ] 200
[2026-06-19 13:57:34,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:57:35,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:57:35,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:57:35,050.050 INFO    ] No camera update needed
[2026-06-19 13:57:35,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:57:35,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:57:35,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:57:35,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:57:37,108.108 INFO    ] ================================================
[2026-06-19 13:57:37,123.123 INFO    ] Launching Daemon at Fri Jun 19 13:57:37 IST 2026
[2026-06-19 13:57:37,134.134 INFO    ] ================================================
[2026-06-19 13:57:37,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:57:37
[2026-06-19 13:57:38,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:57:38,547.547 INFO    ] Initializing speech engine...
[2026-06-19 13:57:38,555.555 INFO    ] 2026-06-19 13:57:38
[2026-06-19 13:57:38,846.846 INFO    ] 2026-06-19 13:57:38
[2026-06-19 13:57:38,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:57:39,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:57:39,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:57:39,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:57:39,319.319 INFO    ] time= 19/06/2026 13:57:39
[2026-06-19 13:57:39,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:57:39,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:57:39,523.523 INFO    ] No existing commands found in stream
[2026-06-19 13:57:44,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:57:44,538.538 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 13:57:48,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:57:48,345.345 INFO    ] Checking for system updates...
[2026-06-19 13:57:48,382.382 INFO    ] 200
[2026-06-19 13:57:48,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:57:48,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:57:48,443.443 INFO    ] No update needed
[2026-06-19 13:57:48,446.446 INFO    ] Checking for camera pi updates...
[2026-06-19 13:57:48,482.482 INFO    ] 200
[2026-06-19 13:57:48,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:57:48,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:57:48,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:57:48,563.563 INFO    ] No camera update needed
[2026-06-19 13:57:48,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:57:48,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:57:48,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:57:48,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:57:50,620.620 INFO    ] ================================================
[2026-06-19 13:57:50,635.635 INFO    ] Launching Daemon at Fri Jun 19 13:57:50 IST 2026
[2026-06-19 13:57:50,647.647 INFO    ] ================================================
[2026-06-19 13:57:51,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:57:51
[2026-06-19 13:57:51,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:57:52,057.057 INFO    ] Initializing speech engine...
[2026-06-19 13:57:52,066.066 INFO    ] 2026-06-19 13:57:52
[2026-06-19 13:57:52,355.355 INFO    ] 2026-06-19 13:57:52
[2026-06-19 13:57:52,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:57:52,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:57:52,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:57:52,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:57:52,764.764 INFO    ] time= 19/06/2026 13:57:52
[2026-06-19 13:57:52,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:57:52,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:57:52,935.935 INFO    ] No existing commands found in stream
[2026-06-19 13:57:57,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:57:57,963.963 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 13:58:00,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:58:00,505.505 INFO    ] Checking for system updates...
[2026-06-19 13:58:00,540.540 INFO    ] 200
[2026-06-19 13:58:00,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:00,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:58:00,603.603 INFO    ] No update needed
[2026-06-19 13:58:00,605.605 INFO    ] Checking for camera pi updates...
[2026-06-19 13:58:00,640.640 INFO    ] 200
[2026-06-19 13:58:00,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:00,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:58:00,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:58:00,734.734 INFO    ] No camera update needed
[2026-06-19 13:58:00,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:58:00,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:58:00,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:58:00,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:58:02,795.795 INFO    ] ================================================
[2026-06-19 13:58:02,812.812 INFO    ] Launching Daemon at Fri Jun 19 13:58:02 IST 2026
[2026-06-19 13:58:02,824.824 INFO    ] ================================================
[2026-06-19 13:58:03,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:58:03
[2026-06-19 13:58:04,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:58:04,292.292 INFO    ] Initializing speech engine...
[2026-06-19 13:58:04,298.298 INFO    ] 2026-06-19 13:58:04
[2026-06-19 13:58:04,560.560 INFO    ] 2026-06-19 13:58:04
[2026-06-19 13:58:04,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:58:04,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:58:04,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:58:05,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:58:05,054.054 INFO    ] time= 19/06/2026 13:58:05
[2026-06-19 13:58:05,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:58:05,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:58:05,255.255 INFO    ] No existing commands found in stream
[2026-06-19 13:58:10,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:58:10,272.272 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 13:58:13,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 13:58:13,837.837 INFO    ] Checking for system updates...
[2026-06-19 13:58:13,873.873 INFO    ] 200
[2026-06-19 13:58:13,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:13,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:58:13,932.932 INFO    ] No update needed
[2026-06-19 13:58:13,935.935 INFO    ] Checking for camera pi updates...
[2026-06-19 13:58:13,970.970 INFO    ] 200
[2026-06-19 13:58:13,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:14,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:58:14,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:58:14,060.060 INFO    ] No camera update needed
[2026-06-19 13:58:14,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:58:14,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:58:14,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:58:14,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:58:16,118.118 INFO    ] ================================================
[2026-06-19 13:58:16,133.133 INFO    ] Launching Daemon at Fri Jun 19 13:58:16 IST 2026
[2026-06-19 13:58:16,144.144 INFO    ] ================================================
[2026-06-19 13:58:16,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:58:16
[2026-06-19 13:58:17,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:58:17,550.550 INFO    ] Initializing speech engine...
[2026-06-19 13:58:17,558.558 INFO    ] 2026-06-19 13:58:17
[2026-06-19 13:58:17,846.846 INFO    ] 2026-06-19 13:58:17
[2026-06-19 13:58:17,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:58:18,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:58:18,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:58:18,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:58:18,217.217 INFO    ] time= 19/06/2026 13:58:18
[2026-06-19 13:58:18,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:58:18,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:58:18,340.340 INFO    ] No existing commands found in stream
[2026-06-19 13:58:23,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:58:23,353.353 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 13:58:26,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:58:26,634.634 INFO    ] Checking for system updates...
[2026-06-19 13:58:26,683.683 INFO    ] 200
[2026-06-19 13:58:26,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:26,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:58:26,746.746 INFO    ] No update needed
[2026-06-19 13:58:26,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 13:58:26,786.786 INFO    ] 200
[2026-06-19 13:58:26,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:26,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:58:26,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:58:26,877.877 INFO    ] No camera update needed
[2026-06-19 13:58:26,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:58:26,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:58:26,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:58:26,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:58:28,941.941 INFO    ] ================================================
[2026-06-19 13:58:28,957.957 INFO    ] Launching Daemon at Fri Jun 19 13:58:28 IST 2026
[2026-06-19 13:58:28,968.968 INFO    ] ================================================
[2026-06-19 13:58:29,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:58:29
[2026-06-19 13:58:30,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:58:30,391.391 INFO    ] Initializing speech engine...
[2026-06-19 13:58:30,404.404 INFO    ] 2026-06-19 13:58:30
[2026-06-19 13:58:30,684.684 INFO    ] 2026-06-19 13:58:30
[2026-06-19 13:58:30,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:58:30,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:58:30,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:58:31,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:58:31,201.201 INFO    ] time= 19/06/2026 13:58:31
[2026-06-19 13:58:31,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:58:31,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:58:31,403.403 INFO    ] No existing commands found in stream
[2026-06-19 13:58:36,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:58:36,427.427 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 13:58:38,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:58:38,914.914 INFO    ] Checking for system updates...
[2026-06-19 13:58:38,955.955 INFO    ] 200
[2026-06-19 13:58:38,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:39,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:58:39,014.014 INFO    ] No update needed
[2026-06-19 13:58:39,016.016 INFO    ] Checking for camera pi updates...
[2026-06-19 13:58:39,051.051 INFO    ] 200
[2026-06-19 13:58:39,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:39,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:58:39,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:58:39,151.151 INFO    ] No camera update needed
[2026-06-19 13:58:39,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:58:39,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:58:39,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:58:39,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:58:41,207.207 INFO    ] ================================================
[2026-06-19 13:58:41,223.223 INFO    ] Launching Daemon at Fri Jun 19 13:58:41 IST 2026
[2026-06-19 13:58:41,234.234 INFO    ] ================================================
[2026-06-19 13:58:41,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:58:41
[2026-06-19 13:58:42,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:58:42,662.662 INFO    ] Initializing speech engine...
[2026-06-19 13:58:42,674.674 INFO    ] 2026-06-19 13:58:42
[2026-06-19 13:58:42,938.938 INFO    ] 2026-06-19 13:58:42
[2026-06-19 13:58:42,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:58:43,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:58:43,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:58:43,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:58:43,341.341 INFO    ] time= 19/06/2026 13:58:43
[2026-06-19 13:58:43,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:58:43,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:58:43,513.513 INFO    ] No existing commands found in stream
[2026-06-19 13:58:48,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:58:48,541.541 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 13:58:51,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 13:58:51,923.923 INFO    ] Checking for system updates...
[2026-06-19 13:58:51,959.959 INFO    ] 200
[2026-06-19 13:58:51,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:52,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:58:52,016.016 INFO    ] No update needed
[2026-06-19 13:58:52,018.018 INFO    ] Checking for camera pi updates...
[2026-06-19 13:58:52,051.051 INFO    ] 200
[2026-06-19 13:58:52,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:58:52,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:58:52,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:58:52,145.145 INFO    ] No camera update needed
[2026-06-19 13:58:52,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:58:52,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:58:52,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:58:52,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:58:54,203.203 INFO    ] ================================================
[2026-06-19 13:58:54,218.218 INFO    ] Launching Daemon at Fri Jun 19 13:58:54 IST 2026
[2026-06-19 13:58:54,230.230 INFO    ] ================================================
[2026-06-19 13:58:54,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:58:54
[2026-06-19 13:58:55,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:58:55,660.660 INFO    ] Initializing speech engine...
[2026-06-19 13:58:55,670.670 INFO    ] 2026-06-19 13:58:55
[2026-06-19 13:58:55,930.930 INFO    ] 2026-06-19 13:58:55
[2026-06-19 13:58:55,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:58:56,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:58:56,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:58:56,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:58:56,402.402 INFO    ] time= 19/06/2026 13:58:56
[2026-06-19 13:58:56,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:58:56,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:58:56,669.669 INFO    ] No existing commands found in stream
[2026-06-19 13:59:01,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:59:01,690.690 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 13:59:04,112.112 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 13:59:04,115.115 INFO    ] Checking for system updates...
[2026-06-19 13:59:04,154.154 INFO    ] 200
[2026-06-19 13:59:04,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:04,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:59:04,222.222 INFO    ] No update needed
[2026-06-19 13:59:04,224.224 INFO    ] Checking for camera pi updates...
[2026-06-19 13:59:04,258.258 INFO    ] 200
[2026-06-19 13:59:04,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:04,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:59:04,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:59:04,355.355 INFO    ] No camera update needed
[2026-06-19 13:59:04,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:59:04,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:59:04,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:59:04,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:59:06,412.412 INFO    ] ================================================
[2026-06-19 13:59:06,428.428 INFO    ] Launching Daemon at Fri Jun 19 13:59:06 IST 2026
[2026-06-19 13:59:06,439.439 INFO    ] ================================================
[2026-06-19 13:59:07,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:59:07
[2026-06-19 13:59:07,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:59:07,888.888 INFO    ] Initializing speech engine...
[2026-06-19 13:59:07,903.903 INFO    ] 2026-06-19 13:59:07
[2026-06-19 13:59:08,172.172 INFO    ] 2026-06-19 13:59:08
[2026-06-19 13:59:08,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:59:08,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:59:08,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:59:08,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:59:08,721.721 INFO    ] time= 19/06/2026 13:59:08
[2026-06-19 13:59:08,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:59:08,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:59:08,920.920 INFO    ] No existing commands found in stream
[2026-06-19 13:59:13,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:59:13,940.940 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 13:59:15,778.778 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:59:15,781.781 INFO    ] Checking for system updates...
[2026-06-19 13:59:15,817.817 INFO    ] 200
[2026-06-19 13:59:15,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:15,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:59:15,875.875 INFO    ] No update needed
[2026-06-19 13:59:15,878.878 INFO    ] Checking for camera pi updates...
[2026-06-19 13:59:15,914.914 INFO    ] 200
[2026-06-19 13:59:15,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:15,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:59:16,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:59:16,007.007 INFO    ] No camera update needed
[2026-06-19 13:59:16,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:59:16,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:59:16,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:59:16,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:59:18,064.064 INFO    ] ================================================
[2026-06-19 13:59:18,080.080 INFO    ] Launching Daemon at Fri Jun 19 13:59:18 IST 2026
[2026-06-19 13:59:18,091.091 INFO    ] ================================================
[2026-06-19 13:59:18,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:59:18
[2026-06-19 13:59:19,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:59:19,696.696 INFO    ] Initializing speech engine...
[2026-06-19 13:59:19,704.704 INFO    ] 2026-06-19 13:59:19
[2026-06-19 13:59:19,995.995 INFO    ] 2026-06-19 13:59:19
[2026-06-19 13:59:20,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:59:20,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:59:20,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:59:20,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:59:20,525.525 INFO    ] time= 19/06/2026 13:59:20
[2026-06-19 13:59:20,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:59:20,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:59:20,690.690 INFO    ] No existing commands found in stream
[2026-06-19 13:59:25,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:59:25,723.723 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 13:59:29,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 13:59:29,890.890 INFO    ] Checking for system updates...
[2026-06-19 13:59:29,926.926 INFO    ] 200
[2026-06-19 13:59:29,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:29,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:59:29,983.983 INFO    ] No update needed
[2026-06-19 13:59:29,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 13:59:30,019.019 INFO    ] 200
[2026-06-19 13:59:30,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:30,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:59:30,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:59:30,108.108 INFO    ] No camera update needed
[2026-06-19 13:59:30,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:59:30,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:59:30,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:59:30,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:59:32,165.165 INFO    ] ================================================
[2026-06-19 13:59:32,182.182 INFO    ] Launching Daemon at Fri Jun 19 13:59:32 IST 2026
[2026-06-19 13:59:32,194.194 INFO    ] ================================================
[2026-06-19 13:59:32,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:59:32
[2026-06-19 13:59:33,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:59:33,872.872 INFO    ] Initializing speech engine...
[2026-06-19 13:59:33,880.880 INFO    ] 2026-06-19 13:59:33
[2026-06-19 13:59:34,153.153 INFO    ] 2026-06-19 13:59:34
[2026-06-19 13:59:34,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:59:34,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:59:34,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:59:34,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:59:34,670.670 INFO    ] time= 19/06/2026 13:59:34
[2026-06-19 13:59:34,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:59:34,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:59:34,866.866 INFO    ] No existing commands found in stream
[2026-06-19 13:59:39,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:59:39,896.896 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 13:59:40,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 13:59:40,739.739 INFO    ] Checking for system updates...
[2026-06-19 13:59:40,775.775 INFO    ] 200
[2026-06-19 13:59:40,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:40,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:59:40,841.841 INFO    ] No update needed
[2026-06-19 13:59:40,847.847 INFO    ] Checking for camera pi updates...
[2026-06-19 13:59:40,884.884 INFO    ] 200
[2026-06-19 13:59:40,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:40,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:59:40,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 13:59:40,970.970 INFO    ] No camera update needed
[2026-06-19 13:59:40,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:59:40,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:59:40,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:59:40,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:59:43,029.029 INFO    ] ================================================
[2026-06-19 13:59:43,045.045 INFO    ] Launching Daemon at Fri Jun 19 13:59:43 IST 2026
[2026-06-19 13:59:43,055.055 INFO    ] ================================================
[2026-06-19 13:59:43,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:59:43
[2026-06-19 13:59:44,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:59:44,667.667 INFO    ] Initializing speech engine...
[2026-06-19 13:59:44,674.674 INFO    ] 2026-06-19 13:59:44
[2026-06-19 13:59:44,961.961 INFO    ] 2026-06-19 13:59:44
[2026-06-19 13:59:45,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:59:45,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:59:45,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:59:45,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:59:45,501.501 INFO    ] time= 19/06/2026 13:59:45
[2026-06-19 13:59:45,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:59:45,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:59:45,659.659 INFO    ] No existing commands found in stream
[2026-06-19 13:59:50,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 13:59:50,682.682 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 13:59:54,864.864 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 13:59:54,867.867 INFO    ] Checking for system updates...
[2026-06-19 13:59:54,909.909 INFO    ] 200
[2026-06-19 13:59:54,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:54,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:59:54,979.979 INFO    ] No update needed
[2026-06-19 13:59:54,982.982 INFO    ] Checking for camera pi updates...
[2026-06-19 13:59:55,017.017 INFO    ] 200
[2026-06-19 13:59:55,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 13:59:55,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 13:59:55,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 13:59:55,119.119 INFO    ] No camera update needed
[2026-06-19 13:59:55,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 13:59:55,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 13:59:55,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 13:59:55,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 13:59:57,178.178 INFO    ] ================================================
[2026-06-19 13:59:57,194.194 INFO    ] Launching Daemon at Fri Jun 19 13:59:57 IST 2026
[2026-06-19 13:59:57,205.205 INFO    ] ================================================
[2026-06-19 13:59:57,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 13:59:57
[2026-06-19 13:59:58,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 13:59:58,809.809 INFO    ] Initializing speech engine...
[2026-06-19 13:59:58,818.818 INFO    ] 2026-06-19 13:59:58
[2026-06-19 13:59:59,102.102 INFO    ] 2026-06-19 13:59:59
[2026-06-19 13:59:59,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 13:59:59,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 13:59:59,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 13:59:59,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 13:59:59,551.551 INFO    ] time= 19/06/2026 13:59:59
[2026-06-19 13:59:59,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 13:59:59,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 13:59:59,813.813 INFO    ] No existing commands found in stream
[2026-06-19 14:00:04,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:00:04,859.859 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 14:00:09,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:00:09,019.019 INFO    ] Checking for system updates...
[2026-06-19 14:00:09,058.058 INFO    ] 200
[2026-06-19 14:00:09,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:00:09,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:00:09,116.116 INFO    ] No update needed
[2026-06-19 14:00:09,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 14:00:09,153.153 INFO    ] 200
[2026-06-19 14:00:09,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:00:09,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:00:09,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:00:09,252.252 INFO    ] No camera update needed
[2026-06-19 14:00:09,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:00:09,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:00:09,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:00:09,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:00:11,307.307 INFO    ] ================================================
[2026-06-19 14:00:11,323.323 INFO    ] Launching Daemon at Fri Jun 19 14:00:11 IST 2026
[2026-06-19 14:00:11,334.334 INFO    ] ================================================
[2026-06-19 14:00:11,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:00:11
[2026-06-19 14:00:12,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:00:12,772.772 INFO    ] Initializing speech engine...
[2026-06-19 14:00:12,778.778 INFO    ] 2026-06-19 14:00:12
[2026-06-19 14:00:13,024.024 INFO    ] 2026-06-19 14:00:13
[2026-06-19 14:00:13,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:00:13,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:00:13,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:00:13,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:00:13,499.499 INFO    ] time= 19/06/2026 14:00:13
[2026-06-19 14:00:13,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:00:13,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:00:13,715.715 INFO    ] No existing commands found in stream
[2026-06-19 14:00:18,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:00:18,744.744 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 14:00:20,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:00:20,376.376 INFO    ] Checking for system updates...
[2026-06-19 14:00:20,418.418 INFO    ] 200
[2026-06-19 14:00:20,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:00:20,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:00:20,480.480 INFO    ] No update needed
[2026-06-19 14:00:20,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 14:00:20,522.522 INFO    ] 200
[2026-06-19 14:00:20,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:00:20,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:00:20,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:00:20,618.618 INFO    ] No camera update needed
[2026-06-19 14:00:20,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:00:20,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:00:20,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:00:20,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:00:22,681.681 INFO    ] ================================================
[2026-06-19 14:00:22,698.698 INFO    ] Launching Daemon at Fri Jun 19 14:00:22 IST 2026
[2026-06-19 14:00:22,709.709 INFO    ] ================================================
[2026-06-19 14:00:23,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:00:23
[2026-06-19 14:00:23,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:00:24,255.255 INFO    ] Initializing speech engine...
[2026-06-19 14:00:24,269.269 INFO    ] 2026-06-19 14:00:24
[2026-06-19 14:00:24,553.553 INFO    ] 2026-06-19 14:00:24
[2026-06-19 14:00:24,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:00:24,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:00:24,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:00:25,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:00:25,108.108 INFO    ] time= 19/06/2026 14:00:25
[2026-06-19 14:00:25,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:00:25,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:00:25,264.264 INFO    ] No existing commands found in stream
[2026-06-19 14:00:30,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:00:30,300.300 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 14:00:32,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:00:32,357.357 INFO    ] Checking for system updates...
[2026-06-19 14:00:32,396.396 INFO    ] 200
[2026-06-19 14:00:32,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:00:32,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:00:32,458.458 INFO    ] No update needed
[2026-06-19 14:00:32,461.461 INFO    ] Checking for camera pi updates...
[2026-06-19 14:00:32,500.500 INFO    ] 200
[2026-06-19 14:00:32,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:00:32,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:00:32,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:00:32,586.586 INFO    ] No camera update needed
[2026-06-19 14:00:32,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:00:32,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:00:32,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:00:32,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:00:34,650.650 INFO    ] ================================================
[2026-06-19 14:00:34,666.666 INFO    ] Launching Daemon at Fri Jun 19 14:00:34 IST 2026
[2026-06-19 14:00:34,677.677 INFO    ] ================================================
[2026-06-19 14:00:35,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:00:35
[2026-06-19 14:00:35,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:00:36,098.098 INFO    ] Initializing speech engine...
[2026-06-19 14:00:36,103.103 INFO    ] 2026-06-19 14:00:36
[2026-06-19 14:00:36,410.410 INFO    ] 2026-06-19 14:00:36
[2026-06-19 14:00:36,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:00:36,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:00:36,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:00:36,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:00:36,844.844 INFO    ] time= 19/06/2026 14:00:36
[2026-06-19 14:00:36,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:00:36,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:00:37,025.025 INFO    ] No existing commands found in stream
[2026-06-19 14:00:42,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:00:42,058.058 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 14:00:46,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:00:46,267.267 INFO    ] Checking for system updates...
[2026-06-19 14:00:46,305.305 INFO    ] 200
[2026-06-19 14:00:46,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:00:46,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:00:46,373.373 INFO    ] No update needed
[2026-06-19 14:00:46,376.376 INFO    ] Checking for camera pi updates...
[2026-06-19 14:00:46,415.415 INFO    ] 200
[2026-06-19 14:00:46,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:00:46,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:00:46,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:00:46,521.521 INFO    ] No camera update needed
[2026-06-19 14:00:46,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:00:46,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:00:46,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:00:46,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:00:48,582.582 INFO    ] ================================================
[2026-06-19 14:00:48,598.598 INFO    ] Launching Daemon at Fri Jun 19 14:00:48 IST 2026
[2026-06-19 14:00:48,609.609 INFO    ] ================================================
[2026-06-19 14:00:49,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:00:49
[2026-06-19 14:00:49,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:00:50,042.042 INFO    ] Initializing speech engine...
[2026-06-19 14:00:50,052.052 INFO    ] 2026-06-19 14:00:50
[2026-06-19 14:00:50,300.300 INFO    ] 2026-06-19 14:00:50
[2026-06-19 14:00:50,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:00:50,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:00:50,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:00:50,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:00:50,774.774 INFO    ] time= 19/06/2026 14:00:50
[2026-06-19 14:00:50,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:00:50,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:00:51,012.012 INFO    ] No existing commands found in stream
[2026-06-19 14:00:56,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:00:56,030.030 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 14:01:00,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:01:00,174.174 INFO    ] Checking for system updates...
[2026-06-19 14:01:00,211.211 INFO    ] 200
[2026-06-19 14:01:00,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:00,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:01:00,268.268 INFO    ] No update needed
[2026-06-19 14:01:00,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 14:01:00,304.304 INFO    ] 200
[2026-06-19 14:01:00,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:00,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:01:00,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:01:00,394.394 INFO    ] No camera update needed
[2026-06-19 14:01:00,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:01:00,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:01:00,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:01:00,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:01:02,456.456 INFO    ] ================================================
[2026-06-19 14:01:02,477.477 INFO    ] Launching Daemon at Fri Jun 19 14:01:02 IST 2026
[2026-06-19 14:01:02,492.492 INFO    ] ================================================
[2026-06-19 14:01:03,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:01:03
[2026-06-19 14:01:03,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:01:04,004.004 INFO    ] Initializing speech engine...
[2026-06-19 14:01:04,017.017 INFO    ] 2026-06-19 14:01:04
[2026-06-19 14:01:04,282.282 INFO    ] 2026-06-19 14:01:04
[2026-06-19 14:01:04,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:01:04,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:01:04,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:01:04,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:01:04,791.791 INFO    ] time= 19/06/2026 14:01:04
[2026-06-19 14:01:04,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:01:04,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:01:04,987.987 INFO    ] No existing commands found in stream
[2026-06-19 14:01:10,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:01:10,020.020 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 14:01:11,791.791 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:01:11,794.794 INFO    ] Checking for system updates...
[2026-06-19 14:01:11,830.830 INFO    ] 200
[2026-06-19 14:01:11,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:11,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:01:11,892.892 INFO    ] No update needed
[2026-06-19 14:01:11,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 14:01:11,930.930 INFO    ] 200
[2026-06-19 14:01:11,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:11,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:01:12,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:01:12,140.140 INFO    ] No camera update needed
[2026-06-19 14:01:12,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:01:12,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:01:12,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:01:12,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:01:14,200.200 INFO    ] ================================================
[2026-06-19 14:01:14,216.216 INFO    ] Launching Daemon at Fri Jun 19 14:01:14 IST 2026
[2026-06-19 14:01:14,228.228 INFO    ] ================================================
[2026-06-19 14:01:14,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:01:14
[2026-06-19 14:01:15,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:01:15,653.653 INFO    ] Initializing speech engine...
[2026-06-19 14:01:15,663.663 INFO    ] 2026-06-19 14:01:15
[2026-06-19 14:01:15,909.909 INFO    ] 2026-06-19 14:01:15
[2026-06-19 14:01:15,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:01:16,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:01:16,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:01:16,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:01:16,384.384 INFO    ] time= 19/06/2026 14:01:16
[2026-06-19 14:01:16,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:01:16,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:01:16,619.619 INFO    ] No existing commands found in stream
[2026-06-19 14:01:21,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:01:21,636.636 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 14:01:22,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:01:22,955.955 INFO    ] Checking for system updates...
[2026-06-19 14:01:22,992.992 INFO    ] 200
[2026-06-19 14:01:22,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:23,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:01:23,051.051 INFO    ] No update needed
[2026-06-19 14:01:23,053.053 INFO    ] Checking for camera pi updates...
[2026-06-19 14:01:23,087.087 INFO    ] 200
[2026-06-19 14:01:23,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:23,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:01:23,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:01:23,170.170 INFO    ] No camera update needed
[2026-06-19 14:01:23,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:01:23,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:01:23,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:01:23,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:01:25,226.226 INFO    ] ================================================
[2026-06-19 14:01:25,241.241 INFO    ] Launching Daemon at Fri Jun 19 14:01:25 IST 2026
[2026-06-19 14:01:25,253.253 INFO    ] ================================================
[2026-06-19 14:01:25,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:01:25
[2026-06-19 14:01:26,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:01:26,734.734 INFO    ] Initializing speech engine...
[2026-06-19 14:01:26,743.743 INFO    ] 2026-06-19 14:01:26
[2026-06-19 14:01:27,006.006 INFO    ] 2026-06-19 14:01:26
[2026-06-19 14:01:27,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:01:27,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:01:27,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:01:27,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:01:27,529.529 INFO    ] time= 19/06/2026 14:01:27
[2026-06-19 14:01:27,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:01:27,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:01:27,723.723 INFO    ] No existing commands found in stream
[2026-06-19 14:01:32,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:01:32,744.744 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 14:01:33,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:01:33,382.382 INFO    ] Checking for system updates...
[2026-06-19 14:01:33,419.419 INFO    ] 200
[2026-06-19 14:01:33,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:33,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:01:33,477.477 INFO    ] No update needed
[2026-06-19 14:01:33,479.479 INFO    ] Checking for camera pi updates...
[2026-06-19 14:01:33,514.514 INFO    ] 200
[2026-06-19 14:01:33,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:33,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:01:33,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:01:33,605.605 INFO    ] No camera update needed
[2026-06-19 14:01:33,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:01:33,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:01:33,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:01:33,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:01:35,661.661 INFO    ] ================================================
[2026-06-19 14:01:35,676.676 INFO    ] Launching Daemon at Fri Jun 19 14:01:35 IST 2026
[2026-06-19 14:01:35,688.688 INFO    ] ================================================
[2026-06-19 14:01:36,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:01:36
[2026-06-19 14:01:36,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:01:37,257.257 INFO    ] Initializing speech engine...
[2026-06-19 14:01:37,266.266 INFO    ] 2026-06-19 14:01:37
[2026-06-19 14:01:37,523.523 INFO    ] 2026-06-19 14:01:37
[2026-06-19 14:01:37,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:01:37,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:01:37,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:01:38,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:01:38,223.223 INFO    ] time= 19/06/2026 14:01:38
[2026-06-19 14:01:38,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:01:38,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:01:38,481.481 INFO    ] No existing commands found in stream
[2026-06-19 14:01:43,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:01:43,520.520 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 14:01:46,116.116 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:01:46,118.118 INFO    ] Checking for system updates...
[2026-06-19 14:01:46,155.155 INFO    ] 200
[2026-06-19 14:01:46,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:46,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:01:46,214.214 INFO    ] No update needed
[2026-06-19 14:01:46,216.216 INFO    ] Checking for camera pi updates...
[2026-06-19 14:01:46,251.251 INFO    ] 200
[2026-06-19 14:01:46,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:46,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:01:46,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:01:46,341.341 INFO    ] No camera update needed
[2026-06-19 14:01:46,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:01:46,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:01:46,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:01:46,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:01:48,396.396 INFO    ] ================================================
[2026-06-19 14:01:48,410.410 INFO    ] Launching Daemon at Fri Jun 19 14:01:48 IST 2026
[2026-06-19 14:01:48,421.421 INFO    ] ================================================
[2026-06-19 14:01:48,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:01:48
[2026-06-19 14:01:49,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:01:49,830.830 INFO    ] Initializing speech engine...
[2026-06-19 14:01:49,853.853 INFO    ] 2026-06-19 14:01:49
[2026-06-19 14:01:50,107.107 INFO    ] 2026-06-19 14:01:50
[2026-06-19 14:01:50,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:01:50,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:01:50,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:01:50,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:01:50,587.587 INFO    ] time= 19/06/2026 14:01:50
[2026-06-19 14:01:50,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:01:50,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:01:50,804.804 INFO    ] No existing commands found in stream
[2026-06-19 14:01:55,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:01:55,832.832 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 14:01:58,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:01:58,945.945 INFO    ] Checking for system updates...
[2026-06-19 14:01:58,982.982 INFO    ] 200
[2026-06-19 14:01:58,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:59,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:01:59,041.041 INFO    ] No update needed
[2026-06-19 14:01:59,043.043 INFO    ] Checking for camera pi updates...
[2026-06-19 14:01:59,077.077 INFO    ] 200
[2026-06-19 14:01:59,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:01:59,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:01:59,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:01:59,163.163 INFO    ] No camera update needed
[2026-06-19 14:01:59,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:01:59,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:01:59,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:01:59,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:02:01,218.218 INFO    ] ================================================
[2026-06-19 14:02:01,234.234 INFO    ] Launching Daemon at Fri Jun 19 14:02:01 IST 2026
[2026-06-19 14:02:01,246.246 INFO    ] ================================================
[2026-06-19 14:02:01,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:02:01
[2026-06-19 14:02:02,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:02:03,131.131 INFO    ] Initializing speech engine...
[2026-06-19 14:02:03,139.139 INFO    ] 2026-06-19 14:02:03
[2026-06-19 14:02:03,410.410 INFO    ] 2026-06-19 14:02:03
[2026-06-19 14:02:03,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:02:03,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:02:03,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:02:03,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:02:03,786.786 INFO    ] time= 19/06/2026 14:02:03
[2026-06-19 14:02:03,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:02:03,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:02:03,971.971 INFO    ] No existing commands found in stream
[2026-06-19 14:02:08,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:02:08,993.993 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-19 14:02:12,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:02:12,335.335 INFO    ] Checking for system updates...
[2026-06-19 14:02:12,375.375 INFO    ] 200
[2026-06-19 14:02:12,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:02:12,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:02:12,435.435 INFO    ] No update needed
[2026-06-19 14:02:12,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 14:02:12,472.472 INFO    ] 200
[2026-06-19 14:02:12,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:02:12,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:02:12,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:02:12,561.561 INFO    ] No camera update needed
[2026-06-19 14:02:12,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:02:12,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:02:12,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:02:12,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:02:14,620.620 INFO    ] ================================================
[2026-06-19 14:02:14,636.636 INFO    ] Launching Daemon at Fri Jun 19 14:02:14 IST 2026
[2026-06-19 14:02:14,647.647 INFO    ] ================================================
[2026-06-19 14:02:15,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:02:15
[2026-06-19 14:02:15,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:02:16,068.068 INFO    ] Initializing speech engine...
[2026-06-19 14:02:16,076.076 INFO    ] 2026-06-19 14:02:16
[2026-06-19 14:02:16,368.368 INFO    ] 2026-06-19 14:02:16
[2026-06-19 14:02:16,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:02:16,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:02:16,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:02:17,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:02:17,139.139 INFO    ] time= 19/06/2026 14:02:17
[2026-06-19 14:02:17,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:02:17,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:02:17,352.352 INFO    ] No existing commands found in stream
[2026-06-19 14:02:22,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:02:22,392.392 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 14:02:26,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:02:26,288.288 INFO    ] Checking for system updates...
[2026-06-19 14:02:26,325.325 INFO    ] 200
[2026-06-19 14:02:26,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:02:26,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:02:26,383.383 INFO    ] No update needed
[2026-06-19 14:02:26,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 14:02:26,419.419 INFO    ] 200
[2026-06-19 14:02:26,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:02:26,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:02:26,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:02:26,505.505 INFO    ] No camera update needed
[2026-06-19 14:02:26,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:02:26,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:02:26,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:02:26,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:02:28,561.561 INFO    ] ================================================
[2026-06-19 14:02:28,577.577 INFO    ] Launching Daemon at Fri Jun 19 14:02:28 IST 2026
[2026-06-19 14:02:28,588.588 INFO    ] ================================================
[2026-06-19 14:02:29,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:02:29
[2026-06-19 14:02:29,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:02:30,216.216 INFO    ] Initializing speech engine...
[2026-06-19 14:02:30,228.228 INFO    ] 2026-06-19 14:02:30
[2026-06-19 14:02:30,543.543 INFO    ] 2026-06-19 14:02:30
[2026-06-19 14:02:30,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:02:30,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:02:30,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:02:31,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:02:31,056.056 INFO    ] time= 19/06/2026 14:02:31
[2026-06-19 14:02:31,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:02:31,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:02:31,197.197 INFO    ] No existing commands found in stream
[2026-06-19 14:02:36,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:02:36,228.228 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 14:02:36,936.936 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:02:36,939.939 INFO    ] Checking for system updates...
[2026-06-19 14:02:36,978.978 INFO    ] 200
[2026-06-19 14:02:36,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:02:37,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:02:37,047.047 INFO    ] No update needed
[2026-06-19 14:02:37,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 14:02:37,090.090 INFO    ] 200
[2026-06-19 14:02:37,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:02:37,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:02:37,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:02:37,197.197 INFO    ] No camera update needed
[2026-06-19 14:02:37,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:02:37,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:02:37,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:02:37,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:02:39,257.257 INFO    ] ================================================
[2026-06-19 14:02:39,273.273 INFO    ] Launching Daemon at Fri Jun 19 14:02:39 IST 2026
[2026-06-19 14:02:39,284.284 INFO    ] ================================================
[2026-06-19 14:02:39,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:02:39
[2026-06-19 14:02:40,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:02:40,921.921 INFO    ] Initializing speech engine...
[2026-06-19 14:02:40,930.930 INFO    ] 2026-06-19 14:02:40
[2026-06-19 14:02:41,201.201 INFO    ] 2026-06-19 14:02:41
[2026-06-19 14:02:41,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:02:41,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:02:41,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:02:41,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:02:41,702.702 INFO    ] time= 19/06/2026 14:02:41
[2026-06-19 14:02:41,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:02:41,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:02:41,945.945 INFO    ] No existing commands found in stream
[2026-06-19 14:02:46,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:02:46,975.975 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 14:02:50,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:02:50,934.934 INFO    ] Checking for system updates...
[2026-06-19 14:02:50,972.972 INFO    ] 200
[2026-06-19 14:02:50,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:02:51,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:02:51,033.033 INFO    ] No update needed
[2026-06-19 14:02:51,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 14:02:51,075.075 INFO    ] 200
[2026-06-19 14:02:51,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:02:51,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:02:51,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:02:51,171.171 INFO    ] No camera update needed
[2026-06-19 14:02:51,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:02:51,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:02:51,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:02:51,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:02:53,230.230 INFO    ] ================================================
[2026-06-19 14:02:53,246.246 INFO    ] Launching Daemon at Fri Jun 19 14:02:53 IST 2026
[2026-06-19 14:02:53,256.256 INFO    ] ================================================
[2026-06-19 14:02:53,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:02:53
[2026-06-19 14:02:54,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:02:54,854.854 INFO    ] Initializing speech engine...
[2026-06-19 14:02:54,863.863 INFO    ] 2026-06-19 14:02:54
[2026-06-19 14:02:55,145.145 INFO    ] 2026-06-19 14:02:55
[2026-06-19 14:02:55,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:02:55,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:02:55,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:02:55,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:02:55,693.693 INFO    ] time= 19/06/2026 14:02:55
[2026-06-19 14:02:55,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:02:55,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:02:55,837.837 INFO    ] No existing commands found in stream
[2026-06-19 14:03:00,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:03:00,866.866 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 14:03:03,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:03:03,202.202 INFO    ] Checking for system updates...
[2026-06-19 14:03:03,259.259 INFO    ] 200
[2026-06-19 14:03:03,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:03,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:03:03,338.338 INFO    ] No update needed
[2026-06-19 14:03:03,341.341 INFO    ] Checking for camera pi updates...
[2026-06-19 14:03:03,399.399 INFO    ] 200
[2026-06-19 14:03:03,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:03,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:03:03,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:03:03,509.509 INFO    ] No camera update needed
[2026-06-19 14:03:03,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:03:03,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:03:03,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:03:03,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:03:05,574.574 INFO    ] ================================================
[2026-06-19 14:03:05,591.591 INFO    ] Launching Daemon at Fri Jun 19 14:03:05 IST 2026
[2026-06-19 14:03:05,602.602 INFO    ] ================================================
[2026-06-19 14:03:06,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:03:06
[2026-06-19 14:03:06,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:03:07,057.057 INFO    ] Initializing speech engine...
[2026-06-19 14:03:07,079.079 INFO    ] 2026-06-19 14:03:07
[2026-06-19 14:03:07,335.335 INFO    ] 2026-06-19 14:03:07
[2026-06-19 14:03:07,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:03:07,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:03:07,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:03:07,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:03:07,835.835 INFO    ] time= 19/06/2026 14:03:07
[2026-06-19 14:03:07,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:03:07,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:03:08,034.034 INFO    ] No existing commands found in stream
[2026-06-19 14:03:13,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:03:13,062.062 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 14:03:15,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:03:15,763.763 INFO    ] Checking for system updates...
[2026-06-19 14:03:15,798.798 INFO    ] 200
[2026-06-19 14:03:15,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:15,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:03:15,857.857 INFO    ] No update needed
[2026-06-19 14:03:15,859.859 INFO    ] Checking for camera pi updates...
[2026-06-19 14:03:15,898.898 INFO    ] 200
[2026-06-19 14:03:15,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:15,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:03:16,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:03:16,085.085 INFO    ] No camera update needed
[2026-06-19 14:03:16,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:03:16,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:03:16,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:03:16,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:03:18,142.142 INFO    ] ================================================
[2026-06-19 14:03:18,157.157 INFO    ] Launching Daemon at Fri Jun 19 14:03:18 IST 2026
[2026-06-19 14:03:18,169.169 INFO    ] ================================================
[2026-06-19 14:03:18,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:03:18
[2026-06-19 14:03:19,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:03:19,572.572 INFO    ] Initializing speech engine...
[2026-06-19 14:03:19,587.587 INFO    ] 2026-06-19 14:03:19
[2026-06-19 14:03:19,854.854 INFO    ] 2026-06-19 14:03:19
[2026-06-19 14:03:19,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:03:20,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:03:20,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:03:20,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:03:20,339.339 INFO    ] time= 19/06/2026 14:03:20
[2026-06-19 14:03:20,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:03:20,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:03:20,556.556 INFO    ] No existing commands found in stream
[2026-06-19 14:03:25,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:03:25,589.589 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 14:03:26,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:03:26,414.414 INFO    ] Checking for system updates...
[2026-06-19 14:03:26,451.451 INFO    ] 200
[2026-06-19 14:03:26,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:26,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:03:26,509.509 INFO    ] No update needed
[2026-06-19 14:03:26,511.511 INFO    ] Checking for camera pi updates...
[2026-06-19 14:03:26,545.545 INFO    ] 200
[2026-06-19 14:03:26,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:26,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:03:26,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:03:26,632.632 INFO    ] No camera update needed
[2026-06-19 14:03:26,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:03:26,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:03:26,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:03:26,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:03:28,688.688 INFO    ] ================================================
[2026-06-19 14:03:28,704.704 INFO    ] Launching Daemon at Fri Jun 19 14:03:28 IST 2026
[2026-06-19 14:03:28,716.716 INFO    ] ================================================
[2026-06-19 14:03:29,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:03:29
[2026-06-19 14:03:30,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:03:30,353.353 INFO    ] Initializing speech engine...
[2026-06-19 14:03:30,365.365 INFO    ] 2026-06-19 14:03:30
[2026-06-19 14:03:30,653.653 INFO    ] 2026-06-19 14:03:30
[2026-06-19 14:03:30,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:03:30,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:03:30,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:03:31,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:03:31,188.188 INFO    ] time= 19/06/2026 14:03:31
[2026-06-19 14:03:31,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:03:31,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:03:31,364.364 INFO    ] No existing commands found in stream
[2026-06-19 14:03:36,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:03:36,399.399 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 14:03:40,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:03:40,058.058 INFO    ] Checking for system updates...
[2026-06-19 14:03:40,096.096 INFO    ] 200
[2026-06-19 14:03:40,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:40,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:03:40,162.162 INFO    ] No update needed
[2026-06-19 14:03:40,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 14:03:40,198.198 INFO    ] 200
[2026-06-19 14:03:40,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:40,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:03:40,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:03:40,282.282 INFO    ] No camera update needed
[2026-06-19 14:03:40,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:03:40,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:03:40,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:03:40,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:03:42,339.339 INFO    ] ================================================
[2026-06-19 14:03:42,355.355 INFO    ] Launching Daemon at Fri Jun 19 14:03:42 IST 2026
[2026-06-19 14:03:42,366.366 INFO    ] ================================================
[2026-06-19 14:03:42,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:03:42
[2026-06-19 14:03:43,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:03:43,797.797 INFO    ] Initializing speech engine...
[2026-06-19 14:03:43,816.816 INFO    ] 2026-06-19 14:03:43
[2026-06-19 14:03:44,075.075 INFO    ] 2026-06-19 14:03:44
[2026-06-19 14:03:44,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:03:44,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:03:44,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:03:44,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:03:44,640.640 INFO    ] time= 19/06/2026 14:03:44
[2026-06-19 14:03:44,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:03:44,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:03:44,794.794 INFO    ] No existing commands found in stream
[2026-06-19 14:03:49,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:03:49,814.814 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 14:03:52,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:03:52,140.140 INFO    ] Checking for system updates...
[2026-06-19 14:03:52,177.177 INFO    ] 200
[2026-06-19 14:03:52,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:52,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:03:52,235.235 INFO    ] No update needed
[2026-06-19 14:03:52,237.237 INFO    ] Checking for camera pi updates...
[2026-06-19 14:03:52,271.271 INFO    ] 200
[2026-06-19 14:03:52,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:03:52,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:03:52,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:03:52,363.363 INFO    ] No camera update needed
[2026-06-19 14:03:52,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:03:52,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:03:52,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:03:52,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:03:54,418.418 INFO    ] ================================================
[2026-06-19 14:03:54,434.434 INFO    ] Launching Daemon at Fri Jun 19 14:03:54 IST 2026
[2026-06-19 14:03:54,445.445 INFO    ] ================================================
[2026-06-19 14:03:55,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:03:55
[2026-06-19 14:03:55,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:03:55,848.848 INFO    ] Initializing speech engine...
[2026-06-19 14:03:55,860.860 INFO    ] 2026-06-19 14:03:55
[2026-06-19 14:03:56,133.133 INFO    ] 2026-06-19 14:03:56
[2026-06-19 14:03:56,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:03:56,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:03:56,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:03:56,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:03:56,664.664 INFO    ] time= 19/06/2026 14:03:56
[2026-06-19 14:03:56,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:03:56,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:03:56,837.837 INFO    ] No existing commands found in stream
[2026-06-19 14:04:01,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:04:01,851.851 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 14:04:05,304.304 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:04:05,307.307 INFO    ] Checking for system updates...
[2026-06-19 14:04:05,346.346 INFO    ] 200
[2026-06-19 14:04:05,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:05,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:04:05,409.409 INFO    ] No update needed
[2026-06-19 14:04:05,411.411 INFO    ] Checking for camera pi updates...
[2026-06-19 14:04:05,448.448 INFO    ] 200
[2026-06-19 14:04:05,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:05,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:04:05,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:04:05,536.536 INFO    ] No camera update needed
[2026-06-19 14:04:05,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:04:05,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:04:05,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:04:05,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:04:07,592.592 INFO    ] ================================================
[2026-06-19 14:04:07,608.608 INFO    ] Launching Daemon at Fri Jun 19 14:04:07 IST 2026
[2026-06-19 14:04:07,619.619 INFO    ] ================================================
[2026-06-19 14:04:08,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:04:08
[2026-06-19 14:04:08,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:04:09,207.207 INFO    ] Initializing speech engine...
[2026-06-19 14:04:09,215.215 INFO    ] 2026-06-19 14:04:09
[2026-06-19 14:04:09,500.500 INFO    ] 2026-06-19 14:04:09
[2026-06-19 14:04:09,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:04:09,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:04:09,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:04:10,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:04:10,052.052 INFO    ] time= 19/06/2026 14:04:10
[2026-06-19 14:04:10,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:04:10,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:04:10,213.213 INFO    ] No existing commands found in stream
[2026-06-19 14:04:15,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:04:15,232.232 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 14:04:19,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:04:19,194.194 INFO    ] Checking for system updates...
[2026-06-19 14:04:19,233.233 INFO    ] 200
[2026-06-19 14:04:19,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:19,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:04:19,291.291 INFO    ] No update needed
[2026-06-19 14:04:19,293.293 INFO    ] Checking for camera pi updates...
[2026-06-19 14:04:19,327.327 INFO    ] 200
[2026-06-19 14:04:19,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:19,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:04:19,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:04:19,404.404 INFO    ] No camera update needed
[2026-06-19 14:04:19,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:04:19,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:04:19,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:04:19,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:04:21,461.461 INFO    ] ================================================
[2026-06-19 14:04:21,481.481 INFO    ] Launching Daemon at Fri Jun 19 14:04:21 IST 2026
[2026-06-19 14:04:21,492.492 INFO    ] ================================================
[2026-06-19 14:04:22,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:04:22
[2026-06-19 14:04:22,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:04:22,903.903 INFO    ] Initializing speech engine...
[2026-06-19 14:04:22,911.911 INFO    ] 2026-06-19 14:04:22
[2026-06-19 14:04:23,203.203 INFO    ] 2026-06-19 14:04:23
[2026-06-19 14:04:23,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:04:23,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:04:23,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:04:23,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:04:23,718.718 INFO    ] time= 19/06/2026 14:04:23
[2026-06-19 14:04:23,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:04:23,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:04:23,916.916 INFO    ] No existing commands found in stream
[2026-06-19 14:04:28,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:04:28,954.954 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 14:04:31,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:04:31,603.603 INFO    ] Checking for system updates...
[2026-06-19 14:04:31,639.639 INFO    ] 200
[2026-06-19 14:04:31,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:31,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:04:31,697.697 INFO    ] No update needed
[2026-06-19 14:04:31,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 14:04:31,744.744 INFO    ] 200
[2026-06-19 14:04:31,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:31,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:04:31,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:04:31,835.835 INFO    ] No camera update needed
[2026-06-19 14:04:31,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:04:31,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:04:31,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:04:31,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:04:33,897.897 INFO    ] ================================================
[2026-06-19 14:04:33,912.912 INFO    ] Launching Daemon at Fri Jun 19 14:04:33 IST 2026
[2026-06-19 14:04:33,923.923 INFO    ] ================================================
[2026-06-19 14:04:34,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:04:34
[2026-06-19 14:04:35,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:04:35,324.324 INFO    ] Initializing speech engine...
[2026-06-19 14:04:35,332.332 INFO    ] 2026-06-19 14:04:35
[2026-06-19 14:04:35,620.620 INFO    ] 2026-06-19 14:04:35
[2026-06-19 14:04:35,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:04:35,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:04:35,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:04:36,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:04:36,031.031 INFO    ] time= 19/06/2026 14:04:36
[2026-06-19 14:04:36,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:04:36,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:04:36,193.193 INFO    ] No existing commands found in stream
[2026-06-19 14:04:41,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:04:41,216.216 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 14:04:42,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:04:42,084.084 INFO    ] Checking for system updates...
[2026-06-19 14:04:42,120.120 INFO    ] 200
[2026-06-19 14:04:42,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:42,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:04:42,182.182 INFO    ] No update needed
[2026-06-19 14:04:42,185.185 INFO    ] Checking for camera pi updates...
[2026-06-19 14:04:42,222.222 INFO    ] 200
[2026-06-19 14:04:42,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:42,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:04:42,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:04:42,314.314 INFO    ] No camera update needed
[2026-06-19 14:04:42,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:04:42,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:04:42,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:04:42,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:04:44,368.368 INFO    ] ================================================
[2026-06-19 14:04:44,383.383 INFO    ] Launching Daemon at Fri Jun 19 14:04:44 IST 2026
[2026-06-19 14:04:44,394.394 INFO    ] ================================================
[2026-06-19 14:04:44,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:04:44
[2026-06-19 14:04:45,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:04:45,852.852 INFO    ] Initializing speech engine...
[2026-06-19 14:04:45,861.861 INFO    ] 2026-06-19 14:04:45
[2026-06-19 14:04:46,109.109 INFO    ] 2026-06-19 14:04:46
[2026-06-19 14:04:46,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:04:46,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:04:46,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:04:46,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:04:46,582.582 INFO    ] time= 19/06/2026 14:04:46
[2026-06-19 14:04:46,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:04:46,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:04:46,792.792 INFO    ] No existing commands found in stream
[2026-06-19 14:04:51,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:04:51,822.822 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 14:04:55,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:04:55,518.518 INFO    ] Checking for system updates...
[2026-06-19 14:04:55,558.558 INFO    ] 200
[2026-06-19 14:04:55,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:55,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:04:55,621.621 INFO    ] No update needed
[2026-06-19 14:04:55,623.623 INFO    ] Checking for camera pi updates...
[2026-06-19 14:04:55,657.657 INFO    ] 200
[2026-06-19 14:04:55,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:04:55,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:04:55,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:04:55,745.745 INFO    ] No camera update needed
[2026-06-19 14:04:55,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:04:55,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:04:55,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:04:55,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:04:57,800.800 INFO    ] ================================================
[2026-06-19 14:04:57,816.816 INFO    ] Launching Daemon at Fri Jun 19 14:04:57 IST 2026
[2026-06-19 14:04:57,827.827 INFO    ] ================================================
[2026-06-19 14:04:58,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:04:58
[2026-06-19 14:04:59,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:04:59,416.416 INFO    ] Initializing speech engine...
[2026-06-19 14:04:59,424.424 INFO    ] 2026-06-19 14:04:59
[2026-06-19 14:04:59,691.691 INFO    ] 2026-06-19 14:04:59
[2026-06-19 14:04:59,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:04:59,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:04:59,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:05:00,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:05:00,189.189 INFO    ] time= 19/06/2026 14:05:00
[2026-06-19 14:05:00,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:05:00,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:05:00,396.396 INFO    ] No existing commands found in stream
[2026-06-19 14:05:05,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:05:05,429.429 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 14:05:09,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:05:09,394.394 INFO    ] Checking for system updates...
[2026-06-19 14:05:09,435.435 INFO    ] 200
[2026-06-19 14:05:09,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:09,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:05:09,501.501 INFO    ] No update needed
[2026-06-19 14:05:09,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 14:05:09,542.542 INFO    ] 200
[2026-06-19 14:05:09,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:09,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:05:09,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:05:09,637.637 INFO    ] No camera update needed
[2026-06-19 14:05:09,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:05:09,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:05:09,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:05:09,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:05:11,698.698 INFO    ] ================================================
[2026-06-19 14:05:11,713.713 INFO    ] Launching Daemon at Fri Jun 19 14:05:11 IST 2026
[2026-06-19 14:05:11,724.724 INFO    ] ================================================
[2026-06-19 14:05:12,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:05:12
[2026-06-19 14:05:13,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:05:13,330.330 INFO    ] Initializing speech engine...
[2026-06-19 14:05:13,337.337 INFO    ] 2026-06-19 14:05:13
[2026-06-19 14:05:13,624.624 INFO    ] 2026-06-19 14:05:13
[2026-06-19 14:05:13,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:05:13,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:05:13,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:05:14,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:05:14,112.112 INFO    ] time= 19/06/2026 14:05:14
[2026-06-19 14:05:14,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:05:14,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:05:14,305.305 INFO    ] No existing commands found in stream
[2026-06-19 14:05:19,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:05:19,335.335 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 14:05:20,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:05:20,519.519 INFO    ] Checking for system updates...
[2026-06-19 14:05:20,560.560 INFO    ] 200
[2026-06-19 14:05:20,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:20,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:05:20,626.626 INFO    ] No update needed
[2026-06-19 14:05:20,629.629 INFO    ] Checking for camera pi updates...
[2026-06-19 14:05:20,664.664 INFO    ] 200
[2026-06-19 14:05:20,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:20,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:05:20,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:05:20,858.858 INFO    ] No camera update needed
[2026-06-19 14:05:20,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:05:20,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:05:20,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:05:20,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:05:22,917.917 INFO    ] ================================================
[2026-06-19 14:05:22,933.933 INFO    ] Launching Daemon at Fri Jun 19 14:05:22 IST 2026
[2026-06-19 14:05:22,944.944 INFO    ] ================================================
[2026-06-19 14:05:23,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:05:23
[2026-06-19 14:05:24,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:05:24,364.364 INFO    ] Initializing speech engine...
[2026-06-19 14:05:24,381.381 INFO    ] 2026-06-19 14:05:24
[2026-06-19 14:05:24,663.663 INFO    ] 2026-06-19 14:05:24
[2026-06-19 14:05:24,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:05:24,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:05:24,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:05:25,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:05:25,040.040 INFO    ] time= 19/06/2026 14:05:25
[2026-06-19 14:05:25,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:05:25,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:05:25,164.164 INFO    ] No existing commands found in stream
[2026-06-19 14:05:30,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:05:30,180.180 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 14:05:31,961.961 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:05:31,964.964 INFO    ] Checking for system updates...
[2026-06-19 14:05:32,007.007 INFO    ] 200
[2026-06-19 14:05:32,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:32,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:05:32,070.070 INFO    ] No update needed
[2026-06-19 14:05:32,073.073 INFO    ] Checking for camera pi updates...
[2026-06-19 14:05:32,111.111 INFO    ] 200
[2026-06-19 14:05:32,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:32,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:05:32,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:05:32,194.194 INFO    ] No camera update needed
[2026-06-19 14:05:32,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:05:32,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:05:32,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:05:32,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:05:34,252.252 INFO    ] ================================================
[2026-06-19 14:05:34,268.268 INFO    ] Launching Daemon at Fri Jun 19 14:05:34 IST 2026
[2026-06-19 14:05:34,280.280 INFO    ] ================================================
[2026-06-19 14:05:34,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:05:34
[2026-06-19 14:05:35,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:05:35,910.910 INFO    ] Initializing speech engine...
[2026-06-19 14:05:35,922.922 INFO    ] 2026-06-19 14:05:35
[2026-06-19 14:05:36,211.211 INFO    ] 2026-06-19 14:05:36
[2026-06-19 14:05:36,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:05:36,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:05:36,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:05:36,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:05:36,741.741 INFO    ] time= 19/06/2026 14:05:36
[2026-06-19 14:05:36,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:05:36,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:05:36,893.893 INFO    ] No existing commands found in stream
[2026-06-19 14:05:41,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:05:41,911.911 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 14:05:45,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:05:45,374.374 INFO    ] Checking for system updates...
[2026-06-19 14:05:45,416.416 INFO    ] 200
[2026-06-19 14:05:45,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:45,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:05:45,475.475 INFO    ] No update needed
[2026-06-19 14:05:45,478.478 INFO    ] Checking for camera pi updates...
[2026-06-19 14:05:45,511.511 INFO    ] 200
[2026-06-19 14:05:45,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:45,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:05:45,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:05:45,602.602 INFO    ] No camera update needed
[2026-06-19 14:05:45,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:05:45,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:05:45,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:05:45,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:05:47,659.659 INFO    ] ================================================
[2026-06-19 14:05:47,675.675 INFO    ] Launching Daemon at Fri Jun 19 14:05:47 IST 2026
[2026-06-19 14:05:47,686.686 INFO    ] ================================================
[2026-06-19 14:05:48,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:05:48
[2026-06-19 14:05:48,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:05:49,134.134 INFO    ] Initializing speech engine...
[2026-06-19 14:05:49,140.140 INFO    ] 2026-06-19 14:05:49
[2026-06-19 14:05:49,390.390 INFO    ] 2026-06-19 14:05:49
[2026-06-19 14:05:49,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:05:49,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:05:49,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:05:49,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:05:49,879.879 INFO    ] time= 19/06/2026 14:05:49
[2026-06-19 14:05:49,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:05:49,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:05:50,076.076 INFO    ] No existing commands found in stream
[2026-06-19 14:05:55,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:05:55,109.109 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 14:05:58,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:05:58,127.127 INFO    ] Checking for system updates...
[2026-06-19 14:05:58,165.165 INFO    ] 200
[2026-06-19 14:05:58,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:58,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:05:58,225.225 INFO    ] No update needed
[2026-06-19 14:05:58,227.227 INFO    ] Checking for camera pi updates...
[2026-06-19 14:05:58,261.261 INFO    ] 200
[2026-06-19 14:05:58,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:05:58,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:05:58,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:05:58,351.351 INFO    ] No camera update needed
[2026-06-19 14:05:58,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:05:58,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:05:58,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:05:58,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:06:00,409.409 INFO    ] ================================================
[2026-06-19 14:06:00,425.425 INFO    ] Launching Daemon at Fri Jun 19 14:06:00 IST 2026
[2026-06-19 14:06:00,436.436 INFO    ] ================================================
[2026-06-19 14:06:01,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:06:00
[2026-06-19 14:06:01,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:06:01,974.974 INFO    ] Initializing speech engine...
[2026-06-19 14:06:01,978.978 INFO    ] 2026-06-19 14:06:01
[2026-06-19 14:06:02,463.463 INFO    ] 2026-06-19 14:06:02
[2026-06-19 14:06:02,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:06:02,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:06:02,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:06:02,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:06:02,895.895 INFO    ] time= 19/06/2026 14:06:02
[2026-06-19 14:06:02,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:06:03,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:06:03,216.216 INFO    ] No existing commands found in stream
[2026-06-19 14:06:08,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:06:08,241.241 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 14:06:09,899.899 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:06:09,902.902 INFO    ] Checking for system updates...
[2026-06-19 14:06:09,938.938 INFO    ] 200
[2026-06-19 14:06:09,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:09,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:06:10,000.000 INFO    ] No update needed
[2026-06-19 14:06:10,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 14:06:10,041.041 INFO    ] 200
[2026-06-19 14:06:10,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:10,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:06:10,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:06:10,130.130 INFO    ] No camera update needed
[2026-06-19 14:06:10,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:06:10,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:06:10,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:06:10,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:06:12,189.189 INFO    ] ================================================
[2026-06-19 14:06:12,205.205 INFO    ] Launching Daemon at Fri Jun 19 14:06:12 IST 2026
[2026-06-19 14:06:12,217.217 INFO    ] ================================================
[2026-06-19 14:06:12,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:06:12
[2026-06-19 14:06:13,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:06:13,645.645 INFO    ] Initializing speech engine...
[2026-06-19 14:06:13,651.651 INFO    ] 2026-06-19 14:06:13
[2026-06-19 14:06:13,910.910 INFO    ] 2026-06-19 14:06:13
[2026-06-19 14:06:13,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:06:14,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:06:14,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:06:14,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:06:14,376.376 INFO    ] time= 19/06/2026 14:06:14
[2026-06-19 14:06:14,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:06:14,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:06:14,502.502 INFO    ] No existing commands found in stream
[2026-06-19 14:06:19,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:06:19,516.516 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 14:06:21,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:06:21,598.598 INFO    ] Checking for system updates...
[2026-06-19 14:06:21,635.635 INFO    ] 200
[2026-06-19 14:06:21,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:21,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:06:21,700.700 INFO    ] No update needed
[2026-06-19 14:06:21,702.702 INFO    ] Checking for camera pi updates...
[2026-06-19 14:06:21,737.737 INFO    ] 200
[2026-06-19 14:06:21,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:21,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:06:21,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:06:21,825.825 INFO    ] No camera update needed
[2026-06-19 14:06:21,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:06:21,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:06:21,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:06:21,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:06:23,888.888 INFO    ] ================================================
[2026-06-19 14:06:23,903.903 INFO    ] Launching Daemon at Fri Jun 19 14:06:23 IST 2026
[2026-06-19 14:06:23,914.914 INFO    ] ================================================
[2026-06-19 14:06:24,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:06:24
[2026-06-19 14:06:25,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:06:25,473.473 INFO    ] Initializing speech engine...
[2026-06-19 14:06:25,481.481 INFO    ] 2026-06-19 14:06:25
[2026-06-19 14:06:25,749.749 INFO    ] 2026-06-19 14:06:25
[2026-06-19 14:06:25,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:06:26,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:06:26,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:06:26,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:06:26,298.298 INFO    ] time= 19/06/2026 14:06:26
[2026-06-19 14:06:26,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:06:26,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:06:26,459.459 INFO    ] No existing commands found in stream
[2026-06-19 14:06:31,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:06:31,489.489 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 14:06:34,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:06:34,759.759 INFO    ] Checking for system updates...
[2026-06-19 14:06:34,797.797 INFO    ] 200
[2026-06-19 14:06:34,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:34,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:06:34,861.861 INFO    ] No update needed
[2026-06-19 14:06:34,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 14:06:34,900.900 INFO    ] 200
[2026-06-19 14:06:34,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:34,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:06:34,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:06:34,994.994 INFO    ] No camera update needed
[2026-06-19 14:06:34,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:06:34,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:06:35,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:06:35,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:06:37,051.051 INFO    ] ================================================
[2026-06-19 14:06:37,067.067 INFO    ] Launching Daemon at Fri Jun 19 14:06:37 IST 2026
[2026-06-19 14:06:37,078.078 INFO    ] ================================================
[2026-06-19 14:06:37,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:06:37
[2026-06-19 14:06:38,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:06:38,656.656 INFO    ] Initializing speech engine...
[2026-06-19 14:06:38,662.662 INFO    ] 2026-06-19 14:06:38
[2026-06-19 14:06:38,932.932 INFO    ] 2026-06-19 14:06:38
[2026-06-19 14:06:38,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:06:39,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:06:39,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:06:39,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:06:39,481.481 INFO    ] time= 19/06/2026 14:06:39
[2026-06-19 14:06:39,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:06:39,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:06:39,644.644 INFO    ] No existing commands found in stream
[2026-06-19 14:06:44,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:06:44,676.676 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 14:06:45,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:06:45,552.552 INFO    ] Checking for system updates...
[2026-06-19 14:06:45,589.589 INFO    ] 200
[2026-06-19 14:06:45,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:45,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:06:45,647.647 INFO    ] No update needed
[2026-06-19 14:06:45,649.649 INFO    ] Checking for camera pi updates...
[2026-06-19 14:06:45,683.683 INFO    ] 200
[2026-06-19 14:06:45,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:45,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:06:45,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:06:45,780.780 INFO    ] No camera update needed
[2026-06-19 14:06:45,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:06:45,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:06:45,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:06:45,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:06:47,836.836 INFO    ] ================================================
[2026-06-19 14:06:47,851.851 INFO    ] Launching Daemon at Fri Jun 19 14:06:47 IST 2026
[2026-06-19 14:06:47,862.862 INFO    ] ================================================
[2026-06-19 14:06:48,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:06:48
[2026-06-19 14:06:49,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:06:49,388.388 INFO    ] Initializing speech engine...
[2026-06-19 14:06:49,395.395 INFO    ] 2026-06-19 14:06:49
[2026-06-19 14:06:49,664.664 INFO    ] 2026-06-19 14:06:49
[2026-06-19 14:06:49,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:06:49,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:06:49,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:06:50,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:06:50,217.217 INFO    ] time= 19/06/2026 14:06:50
[2026-06-19 14:06:50,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:06:50,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:06:50,371.371 INFO    ] No existing commands found in stream
[2026-06-19 14:06:55,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:06:55,398.398 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 14:06:58,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:06:58,464.464 INFO    ] Checking for system updates...
[2026-06-19 14:06:58,504.504 INFO    ] 200
[2026-06-19 14:06:58,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:58,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:06:58,567.567 INFO    ] No update needed
[2026-06-19 14:06:58,570.570 INFO    ] Checking for camera pi updates...
[2026-06-19 14:06:58,605.605 INFO    ] 200
[2026-06-19 14:06:58,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:06:58,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:06:58,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:06:58,691.691 INFO    ] No camera update needed
[2026-06-19 14:06:58,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:06:58,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:06:58,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:06:58,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:07:00,748.748 INFO    ] ================================================
[2026-06-19 14:07:00,764.764 INFO    ] Launching Daemon at Fri Jun 19 14:07:00 IST 2026
[2026-06-19 14:07:00,774.774 INFO    ] ================================================
[2026-06-19 14:07:01,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:07:01
[2026-06-19 14:07:02,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:07:02,416.416 INFO    ] Initializing speech engine...
[2026-06-19 14:07:02,428.428 INFO    ] 2026-06-19 14:07:02
[2026-06-19 14:07:02,754.754 INFO    ] 2026-06-19 14:07:02
[2026-06-19 14:07:02,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:07:03,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:07:03,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:07:03,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:07:03,409.409 INFO    ] time= 19/06/2026 14:07:03
[2026-06-19 14:07:03,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:07:03,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:07:03,554.554 INFO    ] No existing commands found in stream
[2026-06-19 14:07:08,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:07:08,574.574 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 14:07:09,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:07:09,757.757 INFO    ] Checking for system updates...
[2026-06-19 14:07:09,799.799 INFO    ] 200
[2026-06-19 14:07:09,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:07:09,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:07:09,863.863 INFO    ] No update needed
[2026-06-19 14:07:09,866.866 INFO    ] Checking for camera pi updates...
[2026-06-19 14:07:09,905.905 INFO    ] 200
[2026-06-19 14:07:09,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:07:09,953.953 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:07:10,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:07:10,006.006 INFO    ] No camera update needed
[2026-06-19 14:07:10,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:07:10,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:07:10,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:07:10,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:07:12,067.067 INFO    ] ================================================
[2026-06-19 14:07:12,083.083 INFO    ] Launching Daemon at Fri Jun 19 14:07:12 IST 2026
[2026-06-19 14:07:12,094.094 INFO    ] ================================================
[2026-06-19 14:07:12,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:07:12
[2026-06-19 14:07:13,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:07:13,715.715 INFO    ] Initializing speech engine...
[2026-06-19 14:07:13,723.723 INFO    ] 2026-06-19 14:07:13
[2026-06-19 14:07:14,010.010 INFO    ] 2026-06-19 14:07:13
[2026-06-19 14:07:14,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:07:14,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:07:14,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:07:14,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:07:14,539.539 INFO    ] time= 19/06/2026 14:07:14
[2026-06-19 14:07:14,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:07:14,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:07:14,705.705 INFO    ] No existing commands found in stream
[2026-06-19 14:07:19,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:07:19,733.733 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 14:07:20,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:07:20,267.267 INFO    ] Checking for system updates...
[2026-06-19 14:07:20,303.303 INFO    ] 200
[2026-06-19 14:07:20,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:07:20,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:07:20,368.368 INFO    ] No update needed
[2026-06-19 14:07:20,370.370 INFO    ] Checking for camera pi updates...
[2026-06-19 14:07:20,408.408 INFO    ] 200
[2026-06-19 14:07:20,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:07:20,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:07:20,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:07:20,492.492 INFO    ] No camera update needed
[2026-06-19 14:07:20,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:07:20,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:07:20,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:07:20,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:07:22,548.548 INFO    ] ================================================
[2026-06-19 14:07:22,563.563 INFO    ] Launching Daemon at Fri Jun 19 14:07:22 IST 2026
[2026-06-19 14:07:22,574.574 INFO    ] ================================================
[2026-06-19 14:07:23,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:07:23
[2026-06-19 14:07:23,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:07:24,192.192 INFO    ] Initializing speech engine...
[2026-06-19 14:07:24,197.197 INFO    ] 2026-06-19 14:07:24
[2026-06-19 14:07:24,472.472 INFO    ] 2026-06-19 14:07:24
[2026-06-19 14:07:24,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:07:24,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:07:24,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:07:24,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:07:24,960.960 INFO    ] time= 19/06/2026 14:07:24
[2026-06-19 14:07:25,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:07:25,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:07:25,176.176 INFO    ] No existing commands found in stream
[2026-06-19 14:07:30,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:07:30,194.194 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 14:07:33,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:07:33,366.366 INFO    ] Checking for system updates...
[2026-06-19 14:07:33,418.418 INFO    ] 200
[2026-06-19 14:07:33,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 14:07:33,424.424 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 14:07:33,431.431 INFO    ] Checking for camera pi updates...
[2026-06-19 14:07:33,470.470 INFO    ] 200
[2026-06-19 14:07:33,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 14:07:33,475.475 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 14:07:33,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:07:33,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:07:33,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:07:33,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:07:35,535.535 INFO    ] ================================================
[2026-06-19 14:07:35,553.553 INFO    ] Launching Daemon at Fri Jun 19 14:07:35 IST 2026
[2026-06-19 14:07:35,565.565 INFO    ] ================================================
[2026-06-19 14:07:36,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:07:36
[2026-06-19 14:07:36,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:07:37,077.077 INFO    ] Initializing speech engine...
[2026-06-19 14:07:37,086.086 INFO    ] 2026-06-19 14:07:37
[2026-06-19 14:07:37,361.361 INFO    ] 2026-06-19 14:07:37
[2026-06-19 14:07:37,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:07:37,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:07:37,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:07:37,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:07:37,848.848 INFO    ] time= 19/06/2026 14:07:37
[2026-06-19 14:07:37,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:07:37,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:07:38,070.070 INFO    ] No existing commands found in stream
[2026-06-19 14:07:43,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:07:43,103.103 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 14:07:44,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:07:44,982.982 INFO    ] Checking for system updates...
[2026-06-19 14:07:45,018.018 INFO    ] 200
[2026-06-19 14:07:45,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:07:45,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:07:45,082.082 INFO    ] No update needed
[2026-06-19 14:07:45,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 14:07:45,119.119 INFO    ] 200
[2026-06-19 14:07:45,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:07:45,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:07:45,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:07:45,208.208 INFO    ] No camera update needed
[2026-06-19 14:07:45,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:07:45,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:07:45,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:07:45,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:07:47,262.262 INFO    ] ================================================
[2026-06-19 14:07:47,278.278 INFO    ] Launching Daemon at Fri Jun 19 14:07:47 IST 2026
[2026-06-19 14:07:47,289.289 INFO    ] ================================================
[2026-06-19 14:07:47,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:07:47
[2026-06-19 14:07:48,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:07:48,749.749 INFO    ] Initializing speech engine...
[2026-06-19 14:07:48,760.760 INFO    ] 2026-06-19 14:07:48
[2026-06-19 14:07:49,018.018 INFO    ] 2026-06-19 14:07:49
[2026-06-19 14:07:49,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:07:49,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:07:49,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:07:49,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:07:49,484.484 INFO    ] time= 19/06/2026 14:07:49
[2026-06-19 14:07:49,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:07:49,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:07:49,752.752 INFO    ] No existing commands found in stream
[2026-06-19 14:07:54,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:07:54,780.780 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 14:07:55,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:07:55,774.774 INFO    ] Checking for system updates...
[2026-06-19 14:07:55,820.820 INFO    ] 200
[2026-06-19 14:07:55,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:07:55,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:07:55,882.882 INFO    ] No update needed
[2026-06-19 14:07:55,885.885 INFO    ] Checking for camera pi updates...
[2026-06-19 14:07:55,926.926 INFO    ] 200
[2026-06-19 14:07:55,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:07:55,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:07:56,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:07:56,019.019 INFO    ] No camera update needed
[2026-06-19 14:07:56,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:07:56,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:07:56,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:07:56,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:07:58,079.079 INFO    ] ================================================
[2026-06-19 14:07:58,095.095 INFO    ] Launching Daemon at Fri Jun 19 14:07:58 IST 2026
[2026-06-19 14:07:58,106.106 INFO    ] ================================================
[2026-06-19 14:07:58,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:07:58
[2026-06-19 14:07:59,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:07:59,746.746 INFO    ] Initializing speech engine...
[2026-06-19 14:07:59,754.754 INFO    ] 2026-06-19 14:07:59
[2026-06-19 14:08:00,026.026 INFO    ] 2026-06-19 14:08:00
[2026-06-19 14:08:00,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:08:00,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:08:00,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:08:00,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:08:00,537.537 INFO    ] time= 19/06/2026 14:08:00
[2026-06-19 14:08:00,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:08:00,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:08:00,694.694 INFO    ] No existing commands found in stream
[2026-06-19 14:08:05,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:08:05,721.721 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 14:08:10,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:08:10,147.147 INFO    ] Checking for system updates...
[2026-06-19 14:08:10,184.184 INFO    ] 200
[2026-06-19 14:08:10,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:08:10,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:08:10,242.242 INFO    ] No update needed
[2026-06-19 14:08:10,245.245 INFO    ] Checking for camera pi updates...
[2026-06-19 14:08:10,279.279 INFO    ] 200
[2026-06-19 14:08:10,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:08:10,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:08:10,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:08:10,380.380 INFO    ] No camera update needed
[2026-06-19 14:08:10,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:08:10,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:08:10,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:08:10,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:08:12,437.437 INFO    ] ================================================
[2026-06-19 14:08:12,452.452 INFO    ] Launching Daemon at Fri Jun 19 14:08:12 IST 2026
[2026-06-19 14:08:12,463.463 INFO    ] ================================================
[2026-06-19 14:08:13,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:08:13
[2026-06-19 14:08:13,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:08:13,875.875 INFO    ] Initializing speech engine...
[2026-06-19 14:08:13,882.882 INFO    ] 2026-06-19 14:08:13
[2026-06-19 14:08:14,165.165 INFO    ] 2026-06-19 14:08:14
[2026-06-19 14:08:14,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:08:14,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:08:14,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:08:14,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:08:14,732.732 INFO    ] time= 19/06/2026 14:08:14
[2026-06-19 14:08:14,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:08:14,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:08:14,892.892 INFO    ] No existing commands found in stream
[2026-06-19 14:08:19,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:08:19,909.909 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 14:08:21,269.269 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:08:21,271.271 INFO    ] Checking for system updates...
[2026-06-19 14:08:21,310.310 INFO    ] 200
[2026-06-19 14:08:21,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:08:21,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:08:21,367.367 INFO    ] No update needed
[2026-06-19 14:08:21,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 14:08:21,403.403 INFO    ] 200
[2026-06-19 14:08:21,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:08:21,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:08:21,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:08:21,489.489 INFO    ] No camera update needed
[2026-06-19 14:08:21,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:08:21,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:08:21,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:08:21,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:08:23,544.544 INFO    ] ================================================
[2026-06-19 14:08:23,560.560 INFO    ] Launching Daemon at Fri Jun 19 14:08:23 IST 2026
[2026-06-19 14:08:23,572.572 INFO    ] ================================================
[2026-06-19 14:08:24,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:08:24
[2026-06-19 14:08:24,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:08:25,012.012 INFO    ] Initializing speech engine...
[2026-06-19 14:08:25,035.035 INFO    ] 2026-06-19 14:08:25
[2026-06-19 14:08:25,289.289 INFO    ] 2026-06-19 14:08:25
[2026-06-19 14:08:25,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:08:25,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:08:25,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:08:25,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:08:25,798.798 INFO    ] time= 19/06/2026 14:08:25
[2026-06-19 14:08:25,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:08:25,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:08:26,004.004 INFO    ] No existing commands found in stream
[2026-06-19 14:08:31,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:08:31,021.021 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 14:08:32,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:08:32,326.326 INFO    ] Checking for system updates...
[2026-06-19 14:08:32,364.364 INFO    ] 200
[2026-06-19 14:08:32,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:08:32,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:08:32,444.444 INFO    ] No update needed
[2026-06-19 14:08:32,448.448 INFO    ] Checking for camera pi updates...
[2026-06-19 14:08:32,489.489 INFO    ] 200
[2026-06-19 14:08:32,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:08:32,541.541 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:08:32,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:08:32,573.573 INFO    ] No camera update needed
[2026-06-19 14:08:32,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:08:32,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:08:32,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:08:32,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:08:34,634.634 INFO    ] ================================================
[2026-06-19 14:08:34,649.649 INFO    ] Launching Daemon at Fri Jun 19 14:08:34 IST 2026
[2026-06-19 14:08:34,660.660 INFO    ] ================================================
[2026-06-19 14:08:35,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:08:35
[2026-06-19 14:08:35,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:08:36,098.098 INFO    ] Initializing speech engine...
[2026-06-19 14:08:36,114.114 INFO    ] 2026-06-19 14:08:36
[2026-06-19 14:08:36,395.395 INFO    ] 2026-06-19 14:08:36
[2026-06-19 14:08:36,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:08:36,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:08:36,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:08:36,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:08:36,919.919 INFO    ] time= 19/06/2026 14:08:36
[2026-06-19 14:08:36,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:08:37,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:08:37,180.180 INFO    ] No existing commands found in stream
[2026-06-19 14:08:42,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:08:42,198.198 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 14:08:46,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:08:46,346.346 INFO    ] Checking for system updates...
[2026-06-19 14:08:46,382.382 INFO    ] 200
[2026-06-19 14:08:46,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:08:46,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:08:46,443.443 INFO    ] No update needed
[2026-06-19 14:08:46,445.445 INFO    ] Checking for camera pi updates...
[2026-06-19 14:08:46,479.479 INFO    ] 200
[2026-06-19 14:08:46,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:08:46,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:08:46,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:08:46,569.569 INFO    ] No camera update needed
[2026-06-19 14:08:46,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:08:46,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:08:46,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:08:46,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:08:48,623.623 INFO    ] ================================================
[2026-06-19 14:08:48,638.638 INFO    ] Launching Daemon at Fri Jun 19 14:08:48 IST 2026
[2026-06-19 14:08:48,649.649 INFO    ] ================================================
[2026-06-19 14:08:49,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:08:49
[2026-06-19 14:08:49,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:08:50,103.103 INFO    ] Initializing speech engine...
[2026-06-19 14:08:50,114.114 INFO    ] 2026-06-19 14:08:50
[2026-06-19 14:08:50,376.376 INFO    ] 2026-06-19 14:08:50
[2026-06-19 14:08:50,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:08:50,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:08:50,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:08:50,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:08:50,921.921 INFO    ] time= 19/06/2026 14:08:50
[2026-06-19 14:08:50,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:08:50,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:08:51,077.077 INFO    ] No existing commands found in stream
[2026-06-19 14:08:56,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:08:56,103.103 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 14:09:00,176.176 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:09:00,179.179 INFO    ] Checking for system updates...
[2026-06-19 14:09:00,215.215 INFO    ] 200
[2026-06-19 14:09:00,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:00,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:09:00,278.278 INFO    ] No update needed
[2026-06-19 14:09:00,281.281 INFO    ] Checking for camera pi updates...
[2026-06-19 14:09:00,315.315 INFO    ] 200
[2026-06-19 14:09:00,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:00,358.358 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:09:00,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:09:00,400.400 INFO    ] No camera update needed
[2026-06-19 14:09:00,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:09:00,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:09:00,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:09:00,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:09:02,461.461 INFO    ] ================================================
[2026-06-19 14:09:02,484.484 INFO    ] Launching Daemon at Fri Jun 19 14:09:02 IST 2026
[2026-06-19 14:09:02,501.501 INFO    ] ================================================
[2026-06-19 14:09:03,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:09:03
[2026-06-19 14:09:03,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:09:04,111.111 INFO    ] Initializing speech engine...
[2026-06-19 14:09:04,122.122 INFO    ] 2026-06-19 14:09:04
[2026-06-19 14:09:04,399.399 INFO    ] 2026-06-19 14:09:04
[2026-06-19 14:09:04,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:09:04,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:09:04,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:09:04,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:09:04,888.888 INFO    ] time= 19/06/2026 14:09:04
[2026-06-19 14:09:04,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:09:04,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:09:05,116.116 INFO    ] No existing commands found in stream
[2026-06-19 14:09:10,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:09:10,134.134 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 14:09:11,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:09:11,778.778 INFO    ] Checking for system updates...
[2026-06-19 14:09:11,814.814 INFO    ] 200
[2026-06-19 14:09:11,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:11,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:09:11,878.878 INFO    ] No update needed
[2026-06-19 14:09:11,880.880 INFO    ] Checking for camera pi updates...
[2026-06-19 14:09:11,914.914 INFO    ] 200
[2026-06-19 14:09:11,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:11,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:09:12,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:09:12,007.007 INFO    ] No camera update needed
[2026-06-19 14:09:12,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:09:12,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:09:12,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:09:12,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:09:14,063.063 INFO    ] ================================================
[2026-06-19 14:09:14,084.084 INFO    ] Launching Daemon at Fri Jun 19 14:09:14 IST 2026
[2026-06-19 14:09:14,095.095 INFO    ] ================================================
[2026-06-19 14:09:14,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:09:14
[2026-06-19 14:09:15,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:09:15,680.680 INFO    ] Initializing speech engine...
[2026-06-19 14:09:15,693.693 INFO    ] 2026-06-19 14:09:15
[2026-06-19 14:09:15,969.969 INFO    ] 2026-06-19 14:09:15
[2026-06-19 14:09:16,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:09:16,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:09:16,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:09:16,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:09:16,517.517 INFO    ] time= 19/06/2026 14:09:16
[2026-06-19 14:09:16,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:09:16,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:09:16,664.664 INFO    ] No existing commands found in stream
[2026-06-19 14:09:21,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:09:21,698.698 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 14:09:22,587.587 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:09:22,590.590 INFO    ] Checking for system updates...
[2026-06-19 14:09:22,627.627 INFO    ] 200
[2026-06-19 14:09:22,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:22,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:09:22,686.686 INFO    ] No update needed
[2026-06-19 14:09:22,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 14:09:22,723.723 INFO    ] 200
[2026-06-19 14:09:22,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:22,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:09:22,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:09:22,815.815 INFO    ] No camera update needed
[2026-06-19 14:09:22,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:09:22,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:09:22,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:09:22,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:09:24,870.870 INFO    ] ================================================
[2026-06-19 14:09:24,886.886 INFO    ] Launching Daemon at Fri Jun 19 14:09:24 IST 2026
[2026-06-19 14:09:24,896.896 INFO    ] ================================================
[2026-06-19 14:09:25,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:09:25
[2026-06-19 14:09:26,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:09:26,320.320 INFO    ] Initializing speech engine...
[2026-06-19 14:09:26,329.329 INFO    ] 2026-06-19 14:09:26
[2026-06-19 14:09:26,581.581 INFO    ] 2026-06-19 14:09:26
[2026-06-19 14:09:26,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:09:26,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:09:26,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:09:27,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:09:27,054.054 INFO    ] time= 19/06/2026 14:09:27
[2026-06-19 14:09:27,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:09:27,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:09:27,269.269 INFO    ] No existing commands found in stream
[2026-06-19 14:09:32,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:09:32,295.295 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 14:09:34,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:09:34,689.689 INFO    ] Checking for system updates...
[2026-06-19 14:09:34,731.731 INFO    ] 200
[2026-06-19 14:09:34,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:34,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:09:34,793.793 INFO    ] No update needed
[2026-06-19 14:09:34,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 14:09:34,829.829 INFO    ] 200
[2026-06-19 14:09:34,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:34,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:09:35,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:09:35,018.018 INFO    ] No camera update needed
[2026-06-19 14:09:35,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:09:35,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:09:35,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:09:35,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:09:37,073.073 INFO    ] ================================================
[2026-06-19 14:09:37,088.088 INFO    ] Launching Daemon at Fri Jun 19 14:09:37 IST 2026
[2026-06-19 14:09:37,099.099 INFO    ] ================================================
[2026-06-19 14:09:37,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:09:37
[2026-06-19 14:09:38,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:09:38,561.561 INFO    ] Initializing speech engine...
[2026-06-19 14:09:38,569.569 INFO    ] 2026-06-19 14:09:38
[2026-06-19 14:09:38,827.827 INFO    ] 2026-06-19 14:09:38
[2026-06-19 14:09:38,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:09:39,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:09:39,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:09:39,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:09:39,374.374 INFO    ] time= 19/06/2026 14:09:39
[2026-06-19 14:09:39,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:09:39,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:09:39,539.539 INFO    ] No existing commands found in stream
[2026-06-19 14:09:44,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:09:44,571.571 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 14:09:47,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:09:47,149.149 INFO    ] Checking for system updates...
[2026-06-19 14:09:47,185.185 INFO    ] 200
[2026-06-19 14:09:47,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:47,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:09:47,242.242 INFO    ] No update needed
[2026-06-19 14:09:47,245.245 INFO    ] Checking for camera pi updates...
[2026-06-19 14:09:47,279.279 INFO    ] 200
[2026-06-19 14:09:47,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:09:47,321.321 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:09:47,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:09:47,351.351 INFO    ] No camera update needed
[2026-06-19 14:09:47,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:09:47,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:09:47,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:09:47,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:09:49,408.408 INFO    ] ================================================
[2026-06-19 14:09:49,423.423 INFO    ] Launching Daemon at Fri Jun 19 14:09:49 IST 2026
[2026-06-19 14:09:49,434.434 INFO    ] ================================================
[2026-06-19 14:09:50,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:09:50
[2026-06-19 14:09:50,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:09:50,876.876 INFO    ] Initializing speech engine...
[2026-06-19 14:09:50,886.886 INFO    ] 2026-06-19 14:09:50
[2026-06-19 14:09:51,141.141 INFO    ] 2026-06-19 14:09:51
[2026-06-19 14:09:51,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:09:51,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:09:51,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:09:51,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:09:51,624.624 INFO    ] time= 19/06/2026 14:09:51
[2026-06-19 14:09:51,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:09:51,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:09:51,830.830 INFO    ] No existing commands found in stream
[2026-06-19 14:09:56,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:09:56,857.857 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 14:10:01,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:10:01,184.184 INFO    ] Checking for system updates...
[2026-06-19 14:10:01,223.223 INFO    ] 200
[2026-06-19 14:10:01,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:01,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:10:01,281.281 INFO    ] No update needed
[2026-06-19 14:10:01,283.283 INFO    ] Checking for camera pi updates...
[2026-06-19 14:10:01,320.320 INFO    ] 200
[2026-06-19 14:10:01,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:01,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:10:01,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:10:01,405.405 INFO    ] No camera update needed
[2026-06-19 14:10:01,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:10:01,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:10:01,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:10:01,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:10:03,482.482 INFO    ] ================================================
[2026-06-19 14:10:03,507.507 INFO    ] Launching Daemon at Fri Jun 19 14:10:03 IST 2026
[2026-06-19 14:10:03,524.524 INFO    ] ================================================
[2026-06-19 14:10:04,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:10:04
[2026-06-19 14:10:04,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:10:05,045.045 INFO    ] Initializing speech engine...
[2026-06-19 14:10:05,054.054 INFO    ] 2026-06-19 14:10:05
[2026-06-19 14:10:05,303.303 INFO    ] 2026-06-19 14:10:05
[2026-06-19 14:10:05,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:10:05,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:10:05,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:10:05,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:10:05,857.857 INFO    ] time= 19/06/2026 14:10:05
[2026-06-19 14:10:05,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:10:05,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:10:06,012.012 INFO    ] No existing commands found in stream
[2026-06-19 14:10:11,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:10:11,027.027 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 14:10:12,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:10:12,639.639 INFO    ] Checking for system updates...
[2026-06-19 14:10:12,681.681 INFO    ] 200
[2026-06-19 14:10:12,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:12,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:10:12,742.742 INFO    ] No update needed
[2026-06-19 14:10:12,745.745 INFO    ] Checking for camera pi updates...
[2026-06-19 14:10:12,779.779 INFO    ] 200
[2026-06-19 14:10:12,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:12,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:10:12,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:10:12,864.864 INFO    ] No camera update needed
[2026-06-19 14:10:12,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:10:12,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:10:12,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:10:12,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:10:14,923.923 INFO    ] ================================================
[2026-06-19 14:10:14,939.939 INFO    ] Launching Daemon at Fri Jun 19 14:10:14 IST 2026
[2026-06-19 14:10:14,950.950 INFO    ] ================================================
[2026-06-19 14:10:15,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:10:15
[2026-06-19 14:10:16,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:10:16,358.358 INFO    ] Initializing speech engine...
[2026-06-19 14:10:16,371.371 INFO    ] 2026-06-19 14:10:16
[2026-06-19 14:10:16,637.637 INFO    ] 2026-06-19 14:10:16
[2026-06-19 14:10:16,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:10:16,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:10:16,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:10:17,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:10:17,014.014 INFO    ] time= 19/06/2026 14:10:17
[2026-06-19 14:10:17,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:10:17,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:10:17,199.199 INFO    ] No existing commands found in stream
[2026-06-19 14:10:22,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:10:22,230.230 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 14:10:22,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:10:22,666.666 INFO    ] Checking for system updates...
[2026-06-19 14:10:22,706.706 INFO    ] 200
[2026-06-19 14:10:22,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:22,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:10:22,763.763 INFO    ] No update needed
[2026-06-19 14:10:22,766.766 INFO    ] Checking for camera pi updates...
[2026-06-19 14:10:22,803.803 INFO    ] 200
[2026-06-19 14:10:22,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:22,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:10:22,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:10:22,897.897 INFO    ] No camera update needed
[2026-06-19 14:10:22,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:10:22,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:10:22,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:10:22,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:10:24,952.952 INFO    ] ================================================
[2026-06-19 14:10:24,970.970 INFO    ] Launching Daemon at Fri Jun 19 14:10:24 IST 2026
[2026-06-19 14:10:24,981.981 INFO    ] ================================================
[2026-06-19 14:10:25,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:10:25
[2026-06-19 14:10:26,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:10:26,388.388 INFO    ] Initializing speech engine...
[2026-06-19 14:10:26,409.409 INFO    ] 2026-06-19 14:10:26
[2026-06-19 14:10:26,668.668 INFO    ] 2026-06-19 14:10:26
[2026-06-19 14:10:26,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:10:26,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:10:26,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:10:27,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:10:27,150.150 INFO    ] time= 19/06/2026 14:10:27
[2026-06-19 14:10:27,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:10:27,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:10:27,305.305 INFO    ] No existing commands found in stream
[2026-06-19 14:10:32,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:10:32,319.319 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 14:10:36,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:10:36,703.703 INFO    ] Checking for system updates...
[2026-06-19 14:10:36,739.739 INFO    ] 200
[2026-06-19 14:10:36,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:36,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:10:36,796.796 INFO    ] No update needed
[2026-06-19 14:10:36,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 14:10:36,832.832 INFO    ] 200
[2026-06-19 14:10:36,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:36,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:10:36,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:10:36,933.933 INFO    ] No camera update needed
[2026-06-19 14:10:36,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:10:36,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:10:36,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:10:36,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:10:38,988.988 INFO    ] ================================================
[2026-06-19 14:10:39,003.003 INFO    ] Launching Daemon at Fri Jun 19 14:10:38 IST 2026
[2026-06-19 14:10:39,014.014 INFO    ] ================================================
[2026-06-19 14:10:39,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:10:39
[2026-06-19 14:10:40,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:10:40,491.491 INFO    ] Initializing speech engine...
[2026-06-19 14:10:40,504.504 INFO    ] 2026-06-19 14:10:40
[2026-06-19 14:10:40,782.782 INFO    ] 2026-06-19 14:10:40
[2026-06-19 14:10:40,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:10:41,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:10:41,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:10:41,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:10:41,323.323 INFO    ] time= 19/06/2026 14:10:41
[2026-06-19 14:10:41,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:10:41,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:10:41,478.478 INFO    ] No existing commands found in stream
[2026-06-19 14:10:46,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:10:46,502.502 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 14:10:50,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:10:50,402.402 INFO    ] Checking for system updates...
[2026-06-19 14:10:50,439.439 INFO    ] 200
[2026-06-19 14:10:50,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:50,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:10:50,497.497 INFO    ] No update needed
[2026-06-19 14:10:50,499.499 INFO    ] Checking for camera pi updates...
[2026-06-19 14:10:50,533.533 INFO    ] 200
[2026-06-19 14:10:50,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:10:50,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:10:50,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:10:50,628.628 INFO    ] No camera update needed
[2026-06-19 14:10:50,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:10:50,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:10:50,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:10:50,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:10:52,686.686 INFO    ] ================================================
[2026-06-19 14:10:52,701.701 INFO    ] Launching Daemon at Fri Jun 19 14:10:52 IST 2026
[2026-06-19 14:10:52,712.712 INFO    ] ================================================
[2026-06-19 14:10:53,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:10:53
[2026-06-19 14:10:53,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:10:54,169.169 INFO    ] Initializing speech engine...
[2026-06-19 14:10:54,182.182 INFO    ] 2026-06-19 14:10:54
[2026-06-19 14:10:54,431.431 INFO    ] 2026-06-19 14:10:54
[2026-06-19 14:10:54,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:10:54,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:10:54,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:10:54,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:10:54,921.921 INFO    ] time= 19/06/2026 14:10:54
[2026-06-19 14:10:54,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:10:54,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:10:55,116.116 INFO    ] No existing commands found in stream
[2026-06-19 14:11:00,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:11:00,149.149 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 14:11:01,935.935 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:11:01,938.938 INFO    ] Checking for system updates...
[2026-06-19 14:11:01,986.986 INFO    ] 200
[2026-06-19 14:11:01,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:02,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:11:02,064.064 INFO    ] No update needed
[2026-06-19 14:11:02,068.068 INFO    ] Checking for camera pi updates...
[2026-06-19 14:11:02,114.114 INFO    ] 200
[2026-06-19 14:11:02,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:02,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:11:02,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:11:02,201.201 INFO    ] No camera update needed
[2026-06-19 14:11:02,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:11:02,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:11:02,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:11:02,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:11:04,269.269 INFO    ] ================================================
[2026-06-19 14:11:04,286.286 INFO    ] Launching Daemon at Fri Jun 19 14:11:04 IST 2026
[2026-06-19 14:11:04,297.297 INFO    ] ================================================
[2026-06-19 14:11:04,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:11:04
[2026-06-19 14:11:05,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:11:05,802.802 INFO    ] Initializing speech engine...
[2026-06-19 14:11:05,811.811 INFO    ] 2026-06-19 14:11:05
[2026-06-19 14:11:06,114.114 INFO    ] 2026-06-19 14:11:06
[2026-06-19 14:11:06,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:11:06,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:11:06,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:11:06,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:11:06,606.606 INFO    ] time= 19/06/2026 14:11:06
[2026-06-19 14:11:06,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:11:06,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:11:06,828.828 INFO    ] No existing commands found in stream
[2026-06-19 14:11:11,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:11:11,846.846 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 14:11:14,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:11:14,005.005 INFO    ] Checking for system updates...
[2026-06-19 14:11:14,042.042 INFO    ] 200
[2026-06-19 14:11:14,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:14,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:11:14,102.102 INFO    ] No update needed
[2026-06-19 14:11:14,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 14:11:14,139.139 INFO    ] 200
[2026-06-19 14:11:14,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:14,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:11:14,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:11:14,225.225 INFO    ] No camera update needed
[2026-06-19 14:11:14,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:11:14,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:11:14,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:11:14,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:11:16,283.283 INFO    ] ================================================
[2026-06-19 14:11:16,298.298 INFO    ] Launching Daemon at Fri Jun 19 14:11:16 IST 2026
[2026-06-19 14:11:16,309.309 INFO    ] ================================================
[2026-06-19 14:11:16,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:11:16
[2026-06-19 14:11:17,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:11:17,764.764 INFO    ] Initializing speech engine...
[2026-06-19 14:11:17,774.774 INFO    ] 2026-06-19 14:11:17
[2026-06-19 14:11:18,022.022 INFO    ] 2026-06-19 14:11:18
[2026-06-19 14:11:18,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:11:18,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:11:18,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:11:18,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:11:18,508.508 INFO    ] time= 19/06/2026 14:11:18
[2026-06-19 14:11:18,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:11:18,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:11:18,717.717 INFO    ] No existing commands found in stream
[2026-06-19 14:11:23,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:11:23,744.744 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 14:11:25,726.726 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:11:25,729.729 INFO    ] Checking for system updates...
[2026-06-19 14:11:25,767.767 INFO    ] 200
[2026-06-19 14:11:25,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:25,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:11:25,831.831 INFO    ] No update needed
[2026-06-19 14:11:25,833.833 INFO    ] Checking for camera pi updates...
[2026-06-19 14:11:25,867.867 INFO    ] 200
[2026-06-19 14:11:25,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:25,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:11:25,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:11:25,962.962 INFO    ] No camera update needed
[2026-06-19 14:11:25,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:11:25,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:11:25,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:11:25,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:11:28,018.018 INFO    ] ================================================
[2026-06-19 14:11:28,033.033 INFO    ] Launching Daemon at Fri Jun 19 14:11:28 IST 2026
[2026-06-19 14:11:28,044.044 INFO    ] ================================================
[2026-06-19 14:11:28,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:11:28
[2026-06-19 14:11:29,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:11:29,573.573 INFO    ] Initializing speech engine...
[2026-06-19 14:11:29,582.582 INFO    ] 2026-06-19 14:11:29
[2026-06-19 14:11:29,831.831 INFO    ] 2026-06-19 14:11:29
[2026-06-19 14:11:29,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:11:30,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:11:30,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:11:30,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:11:30,317.317 INFO    ] time= 19/06/2026 14:11:30
[2026-06-19 14:11:30,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:11:30,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:11:30,539.539 INFO    ] No existing commands found in stream
[2026-06-19 14:11:35,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:11:35,556.556 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 14:11:36,337.337 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:11:36,340.340 INFO    ] Checking for system updates...
[2026-06-19 14:11:36,381.381 INFO    ] 200
[2026-06-19 14:11:36,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:36,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:11:36,439.439 INFO    ] No update needed
[2026-06-19 14:11:36,442.442 INFO    ] Checking for camera pi updates...
[2026-06-19 14:11:36,477.477 INFO    ] 200
[2026-06-19 14:11:36,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:36,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:11:36,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:11:36,674.674 INFO    ] No camera update needed
[2026-06-19 14:11:36,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:11:36,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:11:36,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:11:36,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:11:38,733.733 INFO    ] ================================================
[2026-06-19 14:11:38,748.748 INFO    ] Launching Daemon at Fri Jun 19 14:11:38 IST 2026
[2026-06-19 14:11:38,758.758 INFO    ] ================================================
[2026-06-19 14:11:39,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:11:39
[2026-06-19 14:11:39,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:11:40,227.227 INFO    ] Initializing speech engine...
[2026-06-19 14:11:40,236.236 INFO    ] 2026-06-19 14:11:40
[2026-06-19 14:11:40,508.508 INFO    ] 2026-06-19 14:11:40
[2026-06-19 14:11:40,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:11:40,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:11:40,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:11:41,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:11:41,039.039 INFO    ] time= 19/06/2026 14:11:41
[2026-06-19 14:11:41,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:11:41,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:11:41,194.194 INFO    ] No existing commands found in stream
[2026-06-19 14:11:46,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:11:46,220.220 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 14:11:47,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:11:47,958.958 INFO    ] Checking for system updates...
[2026-06-19 14:11:47,994.994 INFO    ] 200
[2026-06-19 14:11:47,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:48,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:11:48,063.063 INFO    ] No update needed
[2026-06-19 14:11:48,066.066 INFO    ] Checking for camera pi updates...
[2026-06-19 14:11:48,104.104 INFO    ] 200
[2026-06-19 14:11:48,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:11:48,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:11:48,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:11:48,188.188 INFO    ] No camera update needed
[2026-06-19 14:11:48,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:11:48,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:11:48,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:11:48,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:11:50,246.246 INFO    ] ================================================
[2026-06-19 14:11:50,262.262 INFO    ] Launching Daemon at Fri Jun 19 14:11:50 IST 2026
[2026-06-19 14:11:50,273.273 INFO    ] ================================================
[2026-06-19 14:11:50,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:11:50
[2026-06-19 14:11:51,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:11:51,686.686 INFO    ] Initializing speech engine...
[2026-06-19 14:11:51,711.711 INFO    ] 2026-06-19 14:11:51
[2026-06-19 14:11:51,979.979 INFO    ] 2026-06-19 14:11:51
[2026-06-19 14:11:52,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:11:52,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:11:52,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:11:52,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:11:52,383.383 INFO    ] time= 19/06/2026 14:11:52
[2026-06-19 14:11:52,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:11:52,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:11:52,560.560 INFO    ] No existing commands found in stream
[2026-06-19 14:11:57,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:11:57,593.593 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 14:12:01,970.970 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:12:01,973.973 INFO    ] Checking for system updates...
[2026-06-19 14:12:02,021.021 INFO    ] 200
[2026-06-19 14:12:02,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:02,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:12:02,096.096 INFO    ] No update needed
[2026-06-19 14:12:02,099.099 INFO    ] Checking for camera pi updates...
[2026-06-19 14:12:02,147.147 INFO    ] 200
[2026-06-19 14:12:02,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:02,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:12:02,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:12:02,248.248 INFO    ] No camera update needed
[2026-06-19 14:12:02,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:12:02,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:12:02,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:12:02,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:12:04,323.323 INFO    ] ================================================
[2026-06-19 14:12:04,338.338 INFO    ] Launching Daemon at Fri Jun 19 14:12:04 IST 2026
[2026-06-19 14:12:04,349.349 INFO    ] ================================================
[2026-06-19 14:12:04,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:12:04
[2026-06-19 14:12:05,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:12:05,921.921 INFO    ] Initializing speech engine...
[2026-06-19 14:12:05,937.937 INFO    ] 2026-06-19 14:12:05
[2026-06-19 14:12:06,251.251 INFO    ] 2026-06-19 14:12:06
[2026-06-19 14:12:06,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:12:06,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:12:06,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:12:06,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:12:06,805.805 INFO    ] time= 19/06/2026 14:12:06
[2026-06-19 14:12:06,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:12:06,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:12:06,990.990 INFO    ] No existing commands found in stream
[2026-06-19 14:12:12,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:12:12,030.030 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 14:12:16,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:12:16,311.311 INFO    ] Checking for system updates...
[2026-06-19 14:12:16,350.350 INFO    ] 200
[2026-06-19 14:12:16,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:16,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:12:16,409.409 INFO    ] No update needed
[2026-06-19 14:12:16,411.411 INFO    ] Checking for camera pi updates...
[2026-06-19 14:12:16,446.446 INFO    ] 200
[2026-06-19 14:12:16,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:16,489.489 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:12:16,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:12:16,535.535 INFO    ] No camera update needed
[2026-06-19 14:12:16,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:12:16,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:12:16,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:12:16,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:12:18,591.591 INFO    ] ================================================
[2026-06-19 14:12:18,607.607 INFO    ] Launching Daemon at Fri Jun 19 14:12:18 IST 2026
[2026-06-19 14:12:18,618.618 INFO    ] ================================================
[2026-06-19 14:12:19,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:12:19
[2026-06-19 14:12:19,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:12:20,227.227 INFO    ] Initializing speech engine...
[2026-06-19 14:12:20,238.238 INFO    ] 2026-06-19 14:12:20
[2026-06-19 14:12:20,528.528 INFO    ] 2026-06-19 14:12:20
[2026-06-19 14:12:20,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:12:20,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:12:20,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:12:20,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:12:20,982.982 INFO    ] time= 19/06/2026 14:12:20
[2026-06-19 14:12:21,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:12:21,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:12:21,191.191 INFO    ] No existing commands found in stream
[2026-06-19 14:12:26,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:12:26,216.216 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 14:12:28,223.223 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:12:28,226.226 INFO    ] Checking for system updates...
[2026-06-19 14:12:28,267.267 INFO    ] 200
[2026-06-19 14:12:28,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:28,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:12:28,323.323 INFO    ] No update needed
[2026-06-19 14:12:28,326.326 INFO    ] Checking for camera pi updates...
[2026-06-19 14:12:28,360.360 INFO    ] 200
[2026-06-19 14:12:28,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:28,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:12:28,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:12:28,443.443 INFO    ] No camera update needed
[2026-06-19 14:12:28,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:12:28,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:12:28,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:12:28,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:12:30,498.498 INFO    ] ================================================
[2026-06-19 14:12:30,514.514 INFO    ] Launching Daemon at Fri Jun 19 14:12:30 IST 2026
[2026-06-19 14:12:30,525.525 INFO    ] ================================================
[2026-06-19 14:12:31,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:12:31
[2026-06-19 14:12:31,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:12:32,038.038 INFO    ] Initializing speech engine...
[2026-06-19 14:12:32,051.051 INFO    ] 2026-06-19 14:12:32
[2026-06-19 14:12:32,328.328 INFO    ] 2026-06-19 14:12:32
[2026-06-19 14:12:32,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:12:32,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:12:32,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:12:32,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:12:32,874.874 INFO    ] time= 19/06/2026 14:12:32
[2026-06-19 14:12:32,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:12:32,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:12:33,070.070 INFO    ] No existing commands found in stream
[2026-06-19 14:12:38,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:12:38,094.094 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 14:12:39,943.943 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:12:39,946.946 INFO    ] Checking for system updates...
[2026-06-19 14:12:39,982.982 INFO    ] 200
[2026-06-19 14:12:39,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:40,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:12:40,046.046 INFO    ] No update needed
[2026-06-19 14:12:40,049.049 INFO    ] Checking for camera pi updates...
[2026-06-19 14:12:40,082.082 INFO    ] 200
[2026-06-19 14:12:40,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:40,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:12:40,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:12:40,171.171 INFO    ] No camera update needed
[2026-06-19 14:12:40,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:12:40,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:12:40,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:12:40,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:12:42,227.227 INFO    ] ================================================
[2026-06-19 14:12:42,242.242 INFO    ] Launching Daemon at Fri Jun 19 14:12:42 IST 2026
[2026-06-19 14:12:42,253.253 INFO    ] ================================================
[2026-06-19 14:12:42,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:12:42
[2026-06-19 14:12:43,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:12:43,706.706 INFO    ] Initializing speech engine...
[2026-06-19 14:12:43,711.711 INFO    ] 2026-06-19 14:12:43
[2026-06-19 14:12:43,958.958 INFO    ] 2026-06-19 14:12:43
[2026-06-19 14:12:43,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:12:44,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:12:44,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:12:44,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:12:44,415.415 INFO    ] time= 19/06/2026 14:12:44
[2026-06-19 14:12:44,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:12:44,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:12:44,646.646 INFO    ] No existing commands found in stream
[2026-06-19 14:12:49,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:12:49,679.679 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 14:12:50,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:12:50,496.496 INFO    ] Checking for system updates...
[2026-06-19 14:12:50,538.538 INFO    ] 200
[2026-06-19 14:12:50,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:50,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:12:50,598.598 INFO    ] No update needed
[2026-06-19 14:12:50,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 14:12:50,647.647 INFO    ] 200
[2026-06-19 14:12:50,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:12:50,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:12:50,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:12:50,725.725 INFO    ] No camera update needed
[2026-06-19 14:12:50,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:12:50,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:12:50,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:12:50,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:12:52,786.786 INFO    ] ================================================
[2026-06-19 14:12:52,801.801 INFO    ] Launching Daemon at Fri Jun 19 14:12:52 IST 2026
[2026-06-19 14:12:52,812.812 INFO    ] ================================================
[2026-06-19 14:12:53,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:12:53
[2026-06-19 14:12:54,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:12:54,277.277 INFO    ] Initializing speech engine...
[2026-06-19 14:12:54,287.287 INFO    ] 2026-06-19 14:12:54
[2026-06-19 14:12:54,532.532 INFO    ] 2026-06-19 14:12:54
[2026-06-19 14:12:54,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:12:54,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:12:54,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:12:54,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:12:55,014.014 INFO    ] time= 19/06/2026 14:12:54
[2026-06-19 14:12:55,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:12:55,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:12:55,246.246 INFO    ] No existing commands found in stream
[2026-06-19 14:13:00,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:13:00,271.271 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 14:13:02,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:13:02,458.458 INFO    ] Checking for system updates...
[2026-06-19 14:13:02,500.500 INFO    ] 200
[2026-06-19 14:13:02,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:02,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:13:02,567.567 INFO    ] No update needed
[2026-06-19 14:13:02,570.570 INFO    ] Checking for camera pi updates...
[2026-06-19 14:13:02,606.606 INFO    ] 200
[2026-06-19 14:13:02,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:02,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:13:02,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:13:02,688.688 INFO    ] No camera update needed
[2026-06-19 14:13:02,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:13:02,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:13:02,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:13:02,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:13:04,750.750 INFO    ] ================================================
[2026-06-19 14:13:04,766.766 INFO    ] Launching Daemon at Fri Jun 19 14:13:04 IST 2026
[2026-06-19 14:13:04,776.776 INFO    ] ================================================
[2026-06-19 14:13:05,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:13:05
[2026-06-19 14:13:06,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:13:06,369.369 INFO    ] Initializing speech engine...
[2026-06-19 14:13:06,384.384 INFO    ] 2026-06-19 14:13:06
[2026-06-19 14:13:06,691.691 INFO    ] 2026-06-19 14:13:06
[2026-06-19 14:13:06,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:13:07,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:13:07,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:13:07,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:13:07,213.213 INFO    ] time= 19/06/2026 14:13:07
[2026-06-19 14:13:07,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:13:07,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:13:07,368.368 INFO    ] No existing commands found in stream
[2026-06-19 14:13:12,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:13:12,396.396 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 14:13:15,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:13:15,816.816 INFO    ] Checking for system updates...
[2026-06-19 14:13:15,857.857 INFO    ] 200
[2026-06-19 14:13:15,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:15,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:13:15,920.920 INFO    ] No update needed
[2026-06-19 14:13:15,922.922 INFO    ] Checking for camera pi updates...
[2026-06-19 14:13:15,960.960 INFO    ] 200
[2026-06-19 14:13:15,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:16,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:13:16,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:13:16,051.051 INFO    ] No camera update needed
[2026-06-19 14:13:16,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:13:16,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:13:16,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:13:16,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:13:18,110.110 INFO    ] ================================================
[2026-06-19 14:13:18,126.126 INFO    ] Launching Daemon at Fri Jun 19 14:13:18 IST 2026
[2026-06-19 14:13:18,136.136 INFO    ] ================================================
[2026-06-19 14:13:18,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:13:18
[2026-06-19 14:13:19,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:13:19,756.756 INFO    ] Initializing speech engine...
[2026-06-19 14:13:19,763.763 INFO    ] 2026-06-19 14:13:19
[2026-06-19 14:13:20,076.076 INFO    ] 2026-06-19 14:13:20
[2026-06-19 14:13:20,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:13:20,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:13:20,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:13:20,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:13:20,601.601 INFO    ] time= 19/06/2026 14:13:20
[2026-06-19 14:13:20,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:13:20,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:13:20,741.741 INFO    ] No existing commands found in stream
[2026-06-19 14:13:25,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:13:25,770.770 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 14:13:29,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:13:29,957.957 INFO    ] Checking for system updates...
[2026-06-19 14:13:29,994.994 INFO    ] 200
[2026-06-19 14:13:29,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:30,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:13:30,053.053 INFO    ] No update needed
[2026-06-19 14:13:30,056.056 INFO    ] Checking for camera pi updates...
[2026-06-19 14:13:30,091.091 INFO    ] 200
[2026-06-19 14:13:30,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:30,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:13:30,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:13:30,184.184 INFO    ] No camera update needed
[2026-06-19 14:13:30,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:13:30,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:13:30,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:13:30,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:13:32,244.244 INFO    ] ================================================
[2026-06-19 14:13:32,260.260 INFO    ] Launching Daemon at Fri Jun 19 14:13:32 IST 2026
[2026-06-19 14:13:32,273.273 INFO    ] ================================================
[2026-06-19 14:13:32,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:13:32
[2026-06-19 14:13:33,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:13:33,752.752 INFO    ] Initializing speech engine...
[2026-06-19 14:13:33,767.767 INFO    ] 2026-06-19 14:13:33
[2026-06-19 14:13:34,031.031 INFO    ] 2026-06-19 14:13:34
[2026-06-19 14:13:34,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:13:34,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:13:34,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:13:34,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:13:34,501.501 INFO    ] time= 19/06/2026 14:13:34
[2026-06-19 14:13:34,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:13:34,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:13:34,724.724 INFO    ] No existing commands found in stream
[2026-06-19 14:13:39,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:13:39,759.759 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 14:13:41,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:13:41,766.766 INFO    ] Checking for system updates...
[2026-06-19 14:13:41,809.809 INFO    ] 200
[2026-06-19 14:13:41,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:41,863.863 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:13:41,866.866 INFO    ] No update needed
[2026-06-19 14:13:41,868.868 INFO    ] Checking for camera pi updates...
[2026-06-19 14:13:41,902.902 INFO    ] 200
[2026-06-19 14:13:41,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:41,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:13:42,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:13:42,096.096 INFO    ] No camera update needed
[2026-06-19 14:13:42,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:13:42,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:13:42,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:13:42,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:13:44,154.154 INFO    ] ================================================
[2026-06-19 14:13:44,170.170 INFO    ] Launching Daemon at Fri Jun 19 14:13:44 IST 2026
[2026-06-19 14:13:44,181.181 INFO    ] ================================================
[2026-06-19 14:13:44,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:13:44
[2026-06-19 14:13:45,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:13:45,608.608 INFO    ] Initializing speech engine...
[2026-06-19 14:13:45,617.617 INFO    ] 2026-06-19 14:13:45
[2026-06-19 14:13:45,868.868 INFO    ] 2026-06-19 14:13:45
[2026-06-19 14:13:45,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:13:46,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:13:46,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:13:46,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:13:46,252.252 INFO    ] time= 19/06/2026 14:13:46
[2026-06-19 14:13:46,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:13:46,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:13:46,453.453 INFO    ] Found 1 existing command(s) in stream
[2026-06-19 14:13:46,460.460 INFO    ] Checking historical command: ID=1781858625089-0
[2026-06-19 14:13:46,479.479 INFO    ] process_and_cleanup_command: msg_id=1781858625089-0
[2026-06-19 14:13:46,485.485 INFO    ] is_command_expired: timestamp=2026-06-19T08:43:44.797Z, expiry=30s
[2026-06-19 14:13:46,645.645 INFO    ] Command removed from stream: 1781858625089-0. returning for processing...
[2026-06-19 14:13:46,692.692 INFO    ] ***** get_valid_command
[2026-06-19 14:13:46,753.753 INFO    ] {'timeout': '10', 'source': 'webapp', 'command': 'start-order', 'timestamp': '2026-06-19T08:43:44.797Z', 'data': '{"request_id":"start-order-1781858624797-vt2mcegea","orderId":"TM07202501260619141226267","is_vending":false}'}
[2026-06-19 14:13:46,787.787 INFO    ] ***** Parsed command data: {'orderId': 'TM07202501260619141226267', 'request_id': 'start-order-1781858624797-vt2mcegea', 'is_vending': False}
[2026-06-19 14:13:46,847.847 INFO    ] Handling start order...
[2026-06-19 14:13:46,906.906 INFO    ] handle_start_order_command
[2026-06-19 14:13:46,962.962 INFO    ] _send_start_order_success: request_id=start-order-1781858624797-vt2mcegea, order_id=TM07202501260619141226267
[2026-06-19 14:13:46,971.971 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-19 14:13:47,097.097 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781858626997-0
[2026-06-19 14:13:47,108.108 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-19 14:13:47,114.114 INFO    ] Checking for system updates...
[2026-06-19 14:13:47,179.179 INFO    ] 200
[2026-06-19 14:13:47,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:47,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:13:47,247.247 INFO    ] No update needed
[2026-06-19 14:13:47,252.252 INFO    ] Checking for camera pi updates...
[2026-06-19 14:13:47,289.289 INFO    ] 200
[2026-06-19 14:13:47,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:47,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:13:47,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:13:47,440.440 INFO    ] No camera update needed
[2026-06-19 14:13:47,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:13:47,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:13:47,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:13:47,478.478 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 14:13:47,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:13:49,533.533 INFO    ] ================================================
[2026-06-19 14:13:49,555.555 INFO    ] Launching Daemon at Fri Jun 19 14:13:49 IST 2026
[2026-06-19 14:13:49,566.566 INFO    ] ================================================
[2026-06-19 14:13:50,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:13:50
[2026-06-19 14:13:50,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:13:50,999.999 INFO    ] Initializing speech engine...
[2026-06-19 14:13:51,024.024 INFO    ] 2026-06-19 14:13:51
[2026-06-19 14:13:51,307.307 INFO    ] 2026-06-19 14:13:51
[2026-06-19 14:13:51,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:13:51,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:13:51,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:13:51,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:13:51,815.815 INFO    ] time= 19/06/2026 14:13:51
[2026-06-19 14:13:51,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:13:51,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:13:52,033.033 INFO    ] Found 2 existing command(s) in stream
[2026-06-19 14:13:52,074.074 INFO    ] Checking historical command: ID=1781858626997-0
[2026-06-19 14:13:52,128.128 INFO    ] process_and_cleanup_command: msg_id=1781858626997-0
[2026-06-19 14:13:52,157.157 INFO    ] is_command_expired: timestamp=2026-06-19T08:43:46.963967Z, expiry=30s
[2026-06-19 14:13:52,369.369 INFO    ] Command removed from stream: 1781858626997-0. returning for processing...
[2026-06-19 14:13:52,373.373 INFO    ] ***** get_valid_command
[2026-06-19 14:13:52,384.384 INFO    ] {'metadata_request_id': 'start-order-1781858624797-vt2mcegea', 'status': 'success', 'message': 'start-order success', 'metadata_order_id': 'TM07202501260619141226267', 'timestamp': '2026-06-19T08:43:46.963967Z', 'message_type': 'command_response', 'imei': 'TM07202501'}
[2026-06-19 14:13:52,387.387 INFO    ] Checking historical command: ID=1781858628425-0
[2026-06-19 14:13:52,390.390 INFO    ] process_and_cleanup_command: msg_id=1781858628425-0
[2026-06-19 14:13:52,393.393 INFO    ] is_command_expired: timestamp=2026-06-19T08:43:48.018Z, expiry=30s
[2026-06-19 14:13:52,520.520 INFO    ] Command removed from stream: 1781858628425-0. returning for processing...
[2026-06-19 14:13:52,526.526 INFO    ] ***** get_valid_command
[2026-06-19 14:13:52,532.532 INFO    ] {'timeout': '60', 'source': 'webapp', 'timestamp': '2026-06-19T08:43:48.018Z', 'command': 'process-order', 'data': '{"request_id":"process-order-1781858628018-iyttq3yat","orderId":"TM07202501260619141226267","is_vending":false,"accessCode":"76470170"}'}
[2026-06-19 14:13:52,550.550 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781858628018-iyttq3yat', 'accessCode': '76470170', 'orderId': 'TM07202501260619141226267', 'is_vending': False}
[2026-06-19 14:13:52,586.586 INFO    ] Handling process order...
[2026-06-19 14:13:52,589.589 INFO    ] Processing process-order command...
[2026-06-19 14:13:52,598.598 INFO    ] 🔍 Lock file Order ID: TM07202501260619141226267, TS: 2026-06-19 14:13:46
[2026-06-19 14:13:52,655.655 INFO    ] ✅ Order lock valid for TM07202501260619141226267
[2026-06-19 14:13:52,661.661 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-19 14:13:52,666.666 INFO    ] processing access code 76470170 for order TM07202501260619141226267
[2026-06-19 14:13:52,671.671 INFO    ] 🔍 Lock file Order ID: TM07202501260619141226267, TS: 2026-06-19 14:13:46
[2026-06-19 14:13:52,676.676 INFO    ] ✅ Order lock valid for TM07202501260619141226267
[2026-06-19 14:13:52,681.681 INFO    ] 2026-06-19 14:13:52
[2026-06-19 14:13:52,797.797 INFO    ] 200
[2026-06-19 14:13:52,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:13:52,844.844 INFO    ] 76470170
[2026-06-19 14:13:52,849.849 INFO    ] 2026-06-19 14:13:52
[2026-06-19 14:13:52,857.857 INFO    ] session id :807091826
[2026-06-19 14:13:52,864.864 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=76470170&imei=TM07202501&session_id=807091826
[2026-06-19 14:13:53,421.421 INFO    ] 200
[2026-06-19 14:13:53,465.465 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"sku_total": 80, "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "skuid": "4500667", "unit_price": 40, "offer_id": "", "name": "Farmely Classic date Bites 20gm", "offer_desc": "", "door_id": "1", "mrp": "40", "qty": 2, "tray_id": "17"}], "bill_amount": "80.0", "mobile": "8639014170", "access_code": "76470170", "invoice_bill": "80.0", "order_id": "TM07202501260619141226267"}}
[2026-06-19 14:13:53,469.469 INFO    ] 80
[2026-06-19 14:13:53,476.476 INFO    ] TM07202501260619141226267
[2026-06-19 14:13:53,482.482 INFO    ] 8639014170
[2026-06-19 14:13:53,489.489 INFO    ] 2026-06-19 14:13:53
[2026-06-19 14:13:53,495.495 INFO    ] Door Opening for user mobile ending with  four one seven zero 
[2026-06-19 14:13:53,500.500 INFO    ] Door Opening for user mobile ending with  four one seven zero 
[2026-06-19 14:13:53,507.507 INFO    ] 6a3b6bd3a40a0e34e5fc360024ba36e7
[2026-06-19 14:13:53,513.513 INFO    ] 2026-06-19 14:13:53
[2026-06-19 14:13:53,517.517 INFO    ] playing audio file
[2026-06-19 14:13:53,537.537 INFO    ] 2026-06-19 14:13:53
[2026-06-19 14:13:53,543.543 INFO    ] 2026-06-19 14:13:53
[2026-06-19 14:13:53,551.551 INFO    ] publish_status: order_id=TM07202501260619141226267
[2026-06-19 14:13:53,558.558 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619141226267
[2026-06-19 14:13:53,631.631 INFO    ] [publish_status] Message added to stream with ID: 1781858633572-0
[2026-06-19 14:13:53,638.638 INFO    ] Published to order:TM07202501260619141226267: {'server_status': 'order-started', 'order_id': 'TM07202501260619141226267', 'timestamp': '2026-06-19T08:43:53.545606Z', 'server_response': '{"rstatus": true, "data": {"access_code": "76470170", "bill_amount": "80.0", "proposed_sku_json": [{"skuid": "4500667", "unit_price": 40, "qty": 2, "name": "Farmely Classic date Bites 20gm", "sku_total": 80, "offer_id": "", "offer_desc": "", "mrp": "40", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "tray_id": "17", "door_id": "1"}], "order_id": "TM07202501260619141226267", "mobile": "8639014170", "invoice_bill": "80.0"}, "msg": "Order Data", "status": true}'} (ID: 1781858633572-0)
[2026-06-19 14:13:54,205.205 INFO    ] {'server_status': 'order-started', 'order_id': 'TM07202501260619141226267', 'server_response': {'rstatus': True, 'data': {'access_code': '76470170', 'bill_amount': '80.0', 'proposed_sku_json': [{'skuid': '4500667', 'unit_price': 40, 'qty': 2, 'name': 'Farmely Classic date Bites 20gm', 'sku_total': 80, 'offer_id': '', 'offer_desc': '', 'mrp': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'tray_id': '17', 'door_id': '1'}], 'order_id': 'TM07202501260619141226267', 'mobile': '8639014170', 'invoice_bill': '80.0'}, 'msg': 'Order Data', 'status': True}}
[2026-06-19 14:13:54,211.211 INFO    ] 200
[2026-06-19 14:13:54,218.218 INFO    ] {"data":{"server_status":"order-started","order_id":"TM07202501260619141226267","server_response":{"rstatus":true,"data":{"access_code":"76470170","bill_amount":"80.0","proposed_sku_json":[{"skuid":"4500667","unit_price":40,"qty":2,"name":"Farmely Classic date Bites 20gm","sku_total":80,"offer_id":"","offer_desc":"","mrp":"40","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","tray_id":"17","door_id":"1"}],"order_id":"TM07202501260619141226267","mobile":"8639014170","invoice_bill":"80.0"},"msg":"Order Data","status":true}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 14:13:54,229.229 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'order-started', 'order_id': 'TM07202501260619141226267', 'server_response': {'rstatus': True, 'status': True, 'msg': 'Order Data', 'data': {'access_code': '76470170', 'bill_amount': '80.0', 'proposed_sku_json': [{'skuid': '4500667', 'unit_price': 40, 'qty': 2, 'name': 'Farmely Classic date Bites 20gm', 'sku_total': 80, 'offer_id': '', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'mrp': '40', 'tray_id': '17', 'door_id': '1'}], 'order_id': 'TM07202501260619141226267', 'mobile': '8639014170', 'invoice_bill': '80.0'}}}}
[2026-06-19 14:13:54,241.241 INFO    ] 2026-06-19 14:13:54
[2026-06-19 14:13:54,298.298 INFO    ] 200
[2026-06-19 14:13:54,324.324 INFO    ] True
[2026-06-19 14:13:54,530.530 INFO    ] 200
[2026-06-19 14:13:54,562.562 INFO    ] {"rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "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": ""}}
[2026-06-19 14:13:54,580.580 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-19 14:13:54,590.590 INFO    ] *** process_order ***
[2026-06-19 14:13:55,769.769 INFO    ] 200
[2026-06-19 14:13:55,771.771 INFO    ] {"rstatus": true, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True", "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": ""}}
[2026-06-19 14:13:55,774.774 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0, 'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}
[2026-06-19 14:13:55,776.776 INFO    ] *** process_order ***
[2026-06-19 14:13:55,779.779 INFO    ] publish_status: order_id=TM07202501260619141226267
[2026-06-19 14:13:55,781.781 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619141226267
[2026-06-19 14:13:55,842.842 INFO    ] [publish_status] Message added to stream with ID: 1781858635786-0
[2026-06-19 14:13:55,844.844 INFO    ] Published to order:TM07202501260619141226267: {'server_status': 'doorOpened', 'order_id': 'TM07202501260619141226267', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "delay": 0, "status": "True", "rstatus": true, "voiceNote": "Door is open...", "SectionStatus": {"SubHeader": "You can pull the door now.", "UI_Header": "", "Note": "", "Header": " Your order is under process  "}}'} (ID: 1781858635786-0)
[2026-06-19 14:13:56,902.902 INFO    ] 2026-06-19 14:13:56
[2026-06-19 14:13:56,905.905 INFO    ] publish_status: order_id=TM07202501260619141226267
[2026-06-19 14:13:56,907.907 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619141226267
[2026-06-19 14:13:56,996.996 INFO    ] [publish_status] Message added to stream with ID: 1781858636940-0
[2026-06-19 14:13:56,999.999 INFO    ] Published to order:TM07202501260619141226267: {'server_status': 'processOrder', 'order_id': 'TM07202501260619141226267', 'timestamp': '2026-06-19T08:43:56.903611Z', 'server_response': '{"SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Please Wait", "delay": 0, "status": "True", "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Header": " Your order is under process  ", "UI_Header": "", "Note": "", "SubHeader": "Please wait while we process your order"}}'} (ID: 1781858636940-0)
[2026-06-19 14:13:57,126.126 INFO    ] {'server_status': 'processOrder', 'order_id': 'TM07202501260619141226267', 'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0, 'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Header': ' Your order is under process  ', 'UI_Header': '', 'Note': '', 'SubHeader': 'Please wait while we process your order'}}}
[2026-06-19 14:13:57,129.129 INFO    ] 200
[2026-06-19 14:13:57,132.132 INFO    ] {"data":{"server_status":"processOrder","order_id":"TM07202501260619141226267","server_response":{"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"voiceNote":"Please Wait","delay":0,"status":"true","rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"Header":" Your order is under process  ","UI_Header":"","Note":"","SubHeader":"Please wait while we process your order"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 14:13:57,135.135 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'processOrder', 'order_id': 'TM07202501260619141226267', 'server_response': {'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'delay': 0, 'status': 'true', 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}}}}
[2026-06-19 14:13:57,139.139 INFO    ] 2026-06-19 14:13:57
[2026-06-19 14:13:57,142.142 INFO    ] None
[2026-06-19 14:13:57,145.145 INFO    ] Opening Door now
[2026-06-19 14:13:57,148.148 INFO    ] Opening Door now
[2026-06-19 14:13:57,150.150 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-19 14:13:57,154.154 INFO    ] 2026-06-19 14:13:57
[2026-06-19 14:13:57,156.156 INFO    ] playing audio file
[2026-06-19 14:13:57,175.175 INFO    ] 2026-06-19 14:13:57
[2026-06-19 14:13:57,178.178 INFO    ] 2026-06-19 14:13:57
[2026-06-19 14:14:00,287.287 INFO    ] 200
[2026-06-19 14:14:00,290.290 INFO    ] {"rstatus": false, "voiceNote": "Door 1 is open now", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Farmely Classic date Bites 20gm"}]}, "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"}}
[2026-06-19 14:14:00,294.294 INFO    ] {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Farmely Classic date Bites 20gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 1 is open now', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-19 14:14:03,432.432 INFO    ] 200
[2026-06-19 14:14:03,436.436 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Farmely Classic date Bites 20gm"}]}, "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"}}
[2026-06-19 14:14:03,441.441 INFO    ] {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Farmely Classic date Bites 20gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-19 14:14:06,512.512 INFO    ] 200
[2026-06-19 14:14:06,515.515 INFO    ] {"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Farmely Classic date Bites 20gm"}]}, "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"}}
[2026-06-19 14:14:06,518.518 INFO    ] Please close door 1
[2026-06-19 14:14:06,520.520 INFO    ] Please close door 1
[2026-06-19 14:14:06,523.523 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-19 14:14:06,526.526 INFO    ] 2026-06-19 14:14:06
[2026-06-19 14:14:06,528.528 INFO    ] playing audio file
[2026-06-19 14:14:06,547.547 INFO    ] 2026-06-19 14:14:06
[2026-06-19 14:14:06,551.551 INFO    ] publish_status: order_id=TM07202501260619141226267
[2026-06-19 14:14:06,554.554 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619141226267
[2026-06-19 14:14:06,637.637 INFO    ] [publish_status] Message added to stream with ID: 1781858646580-0
[2026-06-19 14:14:06,640.640 INFO    ] Published to order:TM07202501260619141226267: {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619141226267', 'timestamp': '2026-06-19T08:44:06.549748Z', 'server_response': '{"SectionSKU": {"skus": [{"qty": 2, "name": "Farmely Classic date Bites 20gm"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 1", "status": "False", "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Header": "Please Close Door 1", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Note": "Please Close the door after picking up products", "SubHeader": "Please Pick the Products and close the door"}}'} (ID: 1781858646580-0)
[2026-06-19 14:14:07,171.171 INFO    ] {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619141226267', 'server_response': {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Farmely Classic date Bites 20gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}}
[2026-06-19 14:14:07,174.174 INFO    ] 200
[2026-06-19 14:14:07,177.177 INFO    ] {"data":{"server_status":"OrderStatus","order_id":"TM07202501260619141226267","server_response":{"SectionSKU":{"skus":[{"qty":2,"name":"Farmely Classic date Bites 20gm"}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 1","status":"false","error":{"umessage":"In Progress","tmessage":"In Progress","code":20001,"data":[]},"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionStatus":{"Header":"Please Close Door 1","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Note":"Please Close the door after picking up products","SubHeader":"Please Pick the Products and close the door"}}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 14:14:07,180.180 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'OrderStatus', 'order_id': 'TM07202501260619141226267', 'server_response': {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Farmely Classic date Bites 20gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'false', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': []}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'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', 'Header': 'Please Close Door 1'}}}}
[2026-06-19 14:14:07,184.184 INFO    ] {'SectionSKU': {'skus': [{'qty': 2, 'name': 'Farmely Classic date Bites 20gm'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 1', 'status': 'False', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Header': 'Please Close Door 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'SubHeader': 'Please Pick the Products and close the door'}}
[2026-06-19 14:14:10,247.247 INFO    ] 200
[2026-06-19 14:14:10,250.250 INFO    ] {"rstatus": true, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "status": "True", "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"}}
[2026-06-19 14:14:10,254.254 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-19 14:14:10,257.257 INFO    ] 2026-06-19 14:14:10
[2026-06-19 14:14:10,260.260 INFO    ] Order Completed 
[2026-06-19 14:14:10,262.262 INFO    ] Order Completed 
[2026-06-19 14:14:10,265.265 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-19 14:14:10,268.268 INFO    ] 2026-06-19 14:14:10
[2026-06-19 14:14:10,271.271 INFO    ] playing audio file
[2026-06-19 14:14:10,289.289 INFO    ] 2026-06-19 14:14:10
[2026-06-19 14:14:10,293.293 INFO    ] {'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'voiceNote': 'Transaction Completed', 'delay': 100, 'status': 'True', 'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Header': ' Order is complete ', 'UI_Header': '', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'SubHeader': 'Please wait for invoice to generate'}}
[2026-06-19 14:14:10,296.296 INFO    ] 2026-06-19 14:14:10
[2026-06-19 14:14:12,366.366 INFO    ] 200
[2026-06-19 14:14:12,369.369 INFO    ] {"rstatus": true, "anomaly": 0, "orderId": "TM07202501260619141226267", "total_amount": 80.0, "logic": "WBL", "res": "True", "skus": [{"sku_total": 80.0, "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "door_id": "", "qty": 2, "mrp": "40", "name": "Farmely Classic date Bites 20gm per peice", "skuid": "4500667", "tray_id": "17", "unit_price": "40"}]}
[2026-06-19 14:14:12,371.371 INFO    ] {'skus': [{'skuid': '4500667', 'name': 'Farmely Classic date Bites 20gm per peice', 'tray_id': '17', 'qty': 2, 'mrp': '40', 'sku_total': 80.0, 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': ''}], 'anomaly': 0, 'res': 'True', 'orderId': 'TM07202501260619141226267', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80.0}
[2026-06-19 14:14:12,374.374 INFO    ] {'skus': [{'skuid': '4500667', 'name': 'Farmely Classic date Bites 20gm per peice', 'tray_id': '17', 'qty': 2, 'mrp': '40', 'sku_total': 80.0, 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': ''}], 'anomaly': 0, 'res': 'True', 'orderId': 'TM07202501260619141226267', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80.0}
[2026-06-19 14:14:12,377.377 INFO    ] 2026-06-19 14:14:12
[2026-06-19 14:14:12,379.379 INFO    ] 2026-06-19 14:14:12
[2026-06-19 14:14:12,381.381 INFO    ] 80
[2026-06-19 14:14:12,384.384 INFO    ] 2026-06-19 14:14:12
[2026-06-19 14:14:12,386.386 INFO    ] 2026-06-19 14:14:12
[2026-06-19 14:14:12,389.389 INFO    ]  Your Bill Amount is 80
[2026-06-19 14:14:12,392.392 INFO    ]  Your Bill Amount is 80
[2026-06-19 14:14:12,394.394 INFO    ] dd6ba73d4b5ba6a8b0f618c43455af21
[2026-06-19 14:14:12,397.397 INFO    ] 2026-06-19 14:14:12
[2026-06-19 14:14:12,400.400 INFO    ] playing audio file
[2026-06-19 14:14:12,418.418 INFO    ] 2026-06-19 14:14:12
[2026-06-19 14:14:12,421.421 INFO    ] 2026-06-19 14:14:12
[2026-06-19 14:14:12,424.424 INFO    ] publish_status: order_id=TM07202501260619141226267
[2026-06-19 14:14:12,427.427 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619141226267
[2026-06-19 14:14:12,482.482 INFO    ] [publish_status] Message added to stream with ID: 1781858652426-0
[2026-06-19 14:14:12,485.485 INFO    ] Published to order:TM07202501260619141226267: {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260619141226267', 'timestamp': '2026-06-19T08:44:12.422971Z', 'server_response': '{"skus": [{"skuid": "4500667", "name": "Farmely Classic date Bites 20gm per peice", "tray_id": "17", "qty": 2, "mrp": "40", "sku_total": 80.0, "unit_price": "40", "image_url": "https://images.tinymart.in/product/4500667-4339.webp", "door_id": ""}], "anomaly": 0, "res": "True", "orderId": "TM07202501260619141226267", "rstatus": true, "logic": "WBL", "total_amount": 80.0}'} (ID: 1781858652426-0)
[2026-06-19 14:14:12,944.944 INFO    ] {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260619141226267', 'server_response': {'skus': [{'skuid': '4500667', 'name': 'Farmely Classic date Bites 20gm per peice', 'tray_id': '17', 'qty': 2, 'mrp': '40', 'sku_total': 80.0, 'unit_price': '40', 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'door_id': ''}], 'anomaly': 0, 'res': 'True', 'orderId': 'TM07202501260619141226267', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80.0}}
[2026-06-19 14:14:12,947.947 INFO    ] 200
[2026-06-19 14:14:12,950.950 INFO    ] {"data":{"server_status":"invoiceOrder","order_id":"TM07202501260619141226267","server_response":{"skus":[{"skuid":"4500667","name":"Farmely Classic date Bites 20gm per peice","tray_id":"17","qty":2,"mrp":"40","sku_total":80,"unit_price":"40","image_url":"https:\/\/images.tinymart.in\/product\/4500667-4339.webp","door_id":""}],"anomaly":0,"res":"true","orderId":"TM07202501260619141226267","rstatus":true,"logic":"WBL","total_amount":80}},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 14:14:12,953.953 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260619141226267', 'server_response': {'skus': [{'skuid': '4500667', 'tray_id': '17', 'qty': 2, 'mrp': '40', 'sku_total': 80, 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'name': 'Farmely Classic date Bites 20gm per peice', 'unit_price': '40', 'door_id': ''}], 'anomaly': 0, 'res': 'true', 'orderId': 'TM07202501260619141226267', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80}}}
[2026-06-19 14:14:12,957.957 INFO    ] {'response': {'msg': 'order updated successfully', 'data': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS'}, 'data': {'server_status': 'invoiceOrder', 'order_id': 'TM07202501260619141226267', 'server_response': {'skus': [{'skuid': '4500667', 'tray_id': '17', 'qty': 2, 'mrp': '40', 'sku_total': 80, 'image_url': 'https://images.tinymart.in/product/4500667-4339.webp', 'name': 'Farmely Classic date Bites 20gm per peice', 'unit_price': '40', 'door_id': ''}], 'anomaly': 0, 'res': 'true', 'orderId': 'TM07202501260619141226267', 'rstatus': True, 'logic': 'WBL', 'total_amount': 80}}}
[2026-06-19 14:14:12,960.960 INFO    ] 2026-06-19 14:14:12
[2026-06-19 14:14:14,869.869 INFO    ] 200
[2026-06-19 14:14:14,871.871 INFO    ] {"tray_sync": [], "tray_synced": ["TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267", "TM07202501260619141226267"], "orders_data": [], "orders_synced": [], "order_items_synced": [], "orders": [], "status": true, "orders_data_synced": [], "order_items": []}
[2026-06-19 14:14:14,875.875 INFO    ] 2026-06-19 14:14:14
[2026-06-19 14:14:14,977.977 INFO    ] 200
[2026-06-19 14:14:14,979.979 INFO    ] True
[2026-06-19 14:14:14,982.982 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260619141226267
[2026-06-19 14:14:14,986.986 INFO    ] start order file deleted
[2026-06-19 14:14:14,989.989 INFO    ] Checking for system updates...
[2026-06-19 14:14:15,031.031 INFO    ] 200
[2026-06-19 14:14:15,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:14:15,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:14:15,093.093 INFO    ] No update needed
[2026-06-19 14:14:15,096.096 INFO    ] Checking for camera pi updates...
[2026-06-19 14:14:15,133.133 INFO    ] 200
[2026-06-19 14:14:15,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:14:15,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:14:15,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:14:15,239.239 INFO    ] No camera update needed
[2026-06-19 14:14:15,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:14:15,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:14:15,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:14:15,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:14:17,299.299 INFO    ] ================================================
[2026-06-19 14:14:17,314.314 INFO    ] Launching Daemon at Fri Jun 19 14:14:17 IST 2026
[2026-06-19 14:14:17,325.325 INFO    ] ================================================
[2026-06-19 14:14:17,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:14:17
[2026-06-19 14:14:18,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:14:18,742.742 INFO    ] Initializing speech engine...
[2026-06-19 14:14:18,751.751 INFO    ] 2026-06-19 14:14:18
[2026-06-19 14:14:19,046.046 INFO    ] 2026-06-19 14:14:19
[2026-06-19 14:14:19,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:14:19,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:14:19,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:14:19,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:14:19,471.471 INFO    ] time= 19/06/2026 14:14:19
[2026-06-19 14:14:19,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:14:19,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:14:19,631.631 INFO    ] No existing commands found in stream
[2026-06-19 14:14:24,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:14:24,654.654 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 14:14:27,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:14:27,168.168 INFO    ] Checking for system updates...
[2026-06-19 14:14:27,205.205 INFO    ] 200
[2026-06-19 14:14:27,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:14:27,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:14:27,264.264 INFO    ] No update needed
[2026-06-19 14:14:27,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 14:14:27,300.300 INFO    ] 200
[2026-06-19 14:14:27,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:14:27,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:14:27,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:14:27,388.388 INFO    ] No camera update needed
[2026-06-19 14:14:27,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:14:27,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:14:27,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:14:27,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:14:29,445.445 INFO    ] ================================================
[2026-06-19 14:14:29,460.460 INFO    ] Launching Daemon at Fri Jun 19 14:14:29 IST 2026
[2026-06-19 14:14:29,471.471 INFO    ] ================================================
[2026-06-19 14:14:30,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:14:30
[2026-06-19 14:14:30,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:14:31,117.117 INFO    ] Initializing speech engine...
[2026-06-19 14:14:31,131.131 INFO    ] 2026-06-19 14:14:31
[2026-06-19 14:14:31,415.415 INFO    ] 2026-06-19 14:14:31
[2026-06-19 14:14:31,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:14:31,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:14:31,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:14:31,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:14:31,920.920 INFO    ] time= 19/06/2026 14:14:31
[2026-06-19 14:14:31,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:14:31,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:14:32,102.102 INFO    ] No existing commands found in stream
[2026-06-19 14:14:37,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:14:37,129.129 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 14:14:38,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:14:38,171.171 INFO    ] Checking for system updates...
[2026-06-19 14:14:38,208.208 INFO    ] 200
[2026-06-19 14:14:38,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:14:38,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:14:38,265.265 INFO    ] No update needed
[2026-06-19 14:14:38,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 14:14:38,301.301 INFO    ] 200
[2026-06-19 14:14:38,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:14:38,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:14:38,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:14:38,395.395 INFO    ] No camera update needed
[2026-06-19 14:14:38,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:14:38,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:14:38,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:14:38,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:14:40,450.450 INFO    ] ================================================
[2026-06-19 14:14:40,466.466 INFO    ] Launching Daemon at Fri Jun 19 14:14:40 IST 2026
[2026-06-19 14:14:40,477.477 INFO    ] ================================================
[2026-06-19 14:14:41,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:14:41
[2026-06-19 14:14:41,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:14:41,893.893 INFO    ] Initializing speech engine...
[2026-06-19 14:14:41,899.899 INFO    ] 2026-06-19 14:14:41
[2026-06-19 14:14:42,197.197 INFO    ] 2026-06-19 14:14:42
[2026-06-19 14:14:42,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:14:42,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:14:42,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:14:42,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:14:42,605.605 INFO    ] time= 19/06/2026 14:14:42
[2026-06-19 14:14:42,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:14:42,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:14:42,785.785 INFO    ] No existing commands found in stream
[2026-06-19 14:14:47,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:14:47,816.816 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 14:14:49,643.643 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:14:49,646.646 INFO    ] Checking for system updates...
[2026-06-19 14:14:49,681.681 INFO    ] 200
[2026-06-19 14:14:49,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:14:49,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:14:49,747.747 INFO    ] No update needed
[2026-06-19 14:14:49,750.750 INFO    ] Checking for camera pi updates...
[2026-06-19 14:14:49,783.783 INFO    ] 200
[2026-06-19 14:14:49,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:14:49,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:14:49,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:14:49,885.885 INFO    ] No camera update needed
[2026-06-19 14:14:49,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:14:49,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:14:49,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:14:49,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:14:51,940.940 INFO    ] ================================================
[2026-06-19 14:14:51,955.955 INFO    ] Launching Daemon at Fri Jun 19 14:14:51 IST 2026
[2026-06-19 14:14:51,966.966 INFO    ] ================================================
[2026-06-19 14:14:52,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:14:52
[2026-06-19 14:14:53,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:14:53,365.365 INFO    ] Initializing speech engine...
[2026-06-19 14:14:53,388.388 INFO    ] 2026-06-19 14:14:53
[2026-06-19 14:14:53,638.638 INFO    ] 2026-06-19 14:14:53
[2026-06-19 14:14:53,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:14:53,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:14:53,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:14:54,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:14:54,113.113 INFO    ] time= 19/06/2026 14:14:54
[2026-06-19 14:14:54,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:14:54,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:14:54,327.327 INFO    ] No existing commands found in stream
[2026-06-19 14:14:59,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:14:59,359.359 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 14:15:00,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:15:00,572.572 INFO    ] Checking for system updates...
[2026-06-19 14:15:00,609.609 INFO    ] 200
[2026-06-19 14:15:00,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:00,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:15:00,667.667 INFO    ] No update needed
[2026-06-19 14:15:00,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 14:15:00,704.704 INFO    ] 200
[2026-06-19 14:15:00,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:00,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:15:00,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:15:00,790.790 INFO    ] No camera update needed
[2026-06-19 14:15:00,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:15:00,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:15:00,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:15:00,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:15:02,883.883 INFO    ] ================================================
[2026-06-19 14:15:02,909.909 INFO    ] Launching Daemon at Fri Jun 19 14:15:02 IST 2026
[2026-06-19 14:15:02,929.929 INFO    ] ================================================
[2026-06-19 14:15:03,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:15:03
[2026-06-19 14:15:04,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:15:04,498.498 INFO    ] Initializing speech engine...
[2026-06-19 14:15:04,509.509 INFO    ] 2026-06-19 14:15:04
[2026-06-19 14:15:04,792.792 INFO    ] 2026-06-19 14:15:04
[2026-06-19 14:15:04,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:15:05,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:15:05,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:15:05,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:15:05,231.231 INFO    ] time= 19/06/2026 14:15:05
[2026-06-19 14:15:05,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:15:05,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:15:05,446.446 INFO    ] No existing commands found in stream
[2026-06-19 14:15:10,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:15:10,477.477 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 14:15:13,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:15:13,923.923 INFO    ] Checking for system updates...
[2026-06-19 14:15:13,966.966 INFO    ] 200
[2026-06-19 14:15:13,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:14,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:15:14,025.025 INFO    ] No update needed
[2026-06-19 14:15:14,028.028 INFO    ] Checking for camera pi updates...
[2026-06-19 14:15:14,063.063 INFO    ] 200
[2026-06-19 14:15:14,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:14,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:15:14,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:15:14,165.165 INFO    ] No camera update needed
[2026-06-19 14:15:14,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:15:14,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:15:14,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:15:14,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:15:16,220.220 INFO    ] ================================================
[2026-06-19 14:15:16,236.236 INFO    ] Launching Daemon at Fri Jun 19 14:15:16 IST 2026
[2026-06-19 14:15:16,247.247 INFO    ] ================================================
[2026-06-19 14:15:16,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:15:16
[2026-06-19 14:15:17,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:15:17,677.677 INFO    ] Initializing speech engine...
[2026-06-19 14:15:17,686.686 INFO    ] 2026-06-19 14:15:17
[2026-06-19 14:15:17,947.947 INFO    ] 2026-06-19 14:15:17
[2026-06-19 14:15:17,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:15:18,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:15:18,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:15:18,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:15:18,438.438 INFO    ] time= 19/06/2026 14:15:18
[2026-06-19 14:15:18,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:15:18,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:15:18,645.645 INFO    ] No existing commands found in stream
[2026-06-19 14:15:23,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:15:23,662.662 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 14:15:25,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:15:25,877.877 INFO    ] Checking for system updates...
[2026-06-19 14:15:25,913.913 INFO    ] 200
[2026-06-19 14:15:25,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:25,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:15:25,971.971 INFO    ] No update needed
[2026-06-19 14:15:25,974.974 INFO    ] Checking for camera pi updates...
[2026-06-19 14:15:26,010.010 INFO    ] 200
[2026-06-19 14:15:26,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:26,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:15:26,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:15:26,102.102 INFO    ] No camera update needed
[2026-06-19 14:15:26,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:15:26,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:15:26,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:15:26,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:15:28,159.159 INFO    ] ================================================
[2026-06-19 14:15:28,173.173 INFO    ] Launching Daemon at Fri Jun 19 14:15:28 IST 2026
[2026-06-19 14:15:28,186.186 INFO    ] ================================================
[2026-06-19 14:15:28,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:15:28
[2026-06-19 14:15:29,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:15:29,597.597 INFO    ] Initializing speech engine...
[2026-06-19 14:15:29,603.603 INFO    ] 2026-06-19 14:15:29
[2026-06-19 14:15:29,896.896 INFO    ] 2026-06-19 14:15:29
[2026-06-19 14:15:29,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:15:30,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:15:30,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:15:30,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:15:30,291.291 INFO    ] time= 19/06/2026 14:15:30
[2026-06-19 14:15:30,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:15:30,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:15:30,399.399 INFO    ] No existing commands found in stream
[2026-06-19 14:15:35,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:15:35,413.413 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 14:15:37,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:15:37,127.127 INFO    ] Checking for system updates...
[2026-06-19 14:15:37,167.167 INFO    ] 200
[2026-06-19 14:15:37,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:37,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:15:37,230.230 INFO    ] No update needed
[2026-06-19 14:15:37,233.233 INFO    ] Checking for camera pi updates...
[2026-06-19 14:15:37,267.267 INFO    ] 200
[2026-06-19 14:15:37,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:37,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:15:37,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:15:37,355.355 INFO    ] No camera update needed
[2026-06-19 14:15:37,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:15:37,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:15:37,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:15:37,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:15:39,411.411 INFO    ] ================================================
[2026-06-19 14:15:39,426.426 INFO    ] Launching Daemon at Fri Jun 19 14:15:39 IST 2026
[2026-06-19 14:15:39,437.437 INFO    ] ================================================
[2026-06-19 14:15:40,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:15:40
[2026-06-19 14:15:40,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:15:40,866.866 INFO    ] Initializing speech engine...
[2026-06-19 14:15:40,872.872 INFO    ] 2026-06-19 14:15:40
[2026-06-19 14:15:41,125.125 INFO    ] 2026-06-19 14:15:41
[2026-06-19 14:15:41,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:15:41,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:15:41,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:15:41,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:15:41,602.602 INFO    ] time= 19/06/2026 14:15:41
[2026-06-19 14:15:41,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:15:41,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:15:41,807.807 INFO    ] No existing commands found in stream
[2026-06-19 14:15:46,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:15:46,836.836 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 14:15:48,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:15:48,768.768 INFO    ] Checking for system updates...
[2026-06-19 14:15:48,808.808 INFO    ] 200
[2026-06-19 14:15:48,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:48,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:15:48,866.866 INFO    ] No update needed
[2026-06-19 14:15:48,869.869 INFO    ] Checking for camera pi updates...
[2026-06-19 14:15:48,905.905 INFO    ] 200
[2026-06-19 14:15:48,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:15:48,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:15:49,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:15:49,090.090 INFO    ] No camera update needed
[2026-06-19 14:15:49,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:15:49,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:15:49,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:15:49,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:15:51,150.150 INFO    ] ================================================
[2026-06-19 14:15:51,166.166 INFO    ] Launching Daemon at Fri Jun 19 14:15:51 IST 2026
[2026-06-19 14:15:51,177.177 INFO    ] ================================================
[2026-06-19 14:15:51,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:15:51
[2026-06-19 14:15:52,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:15:52,806.806 INFO    ] Initializing speech engine...
[2026-06-19 14:15:52,816.816 INFO    ] 2026-06-19 14:15:52
[2026-06-19 14:15:53,079.079 INFO    ] 2026-06-19 14:15:53
[2026-06-19 14:15:53,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:15:53,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:15:53,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:15:53,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:15:53,524.524 INFO    ] time= 19/06/2026 14:15:53
[2026-06-19 14:15:53,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:15:53,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:15:53,734.734 INFO    ] No existing commands found in stream
[2026-06-19 14:15:58,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:15:58,764.764 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 14:16:01,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:16:01,267.267 INFO    ] Checking for system updates...
[2026-06-19 14:16:01,305.305 INFO    ] 200
[2026-06-19 14:16:01,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:01,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:16:01,367.367 INFO    ] No update needed
[2026-06-19 14:16:01,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 14:16:01,409.409 INFO    ] 200
[2026-06-19 14:16:01,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:01,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:16:01,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:16:01,542.542 INFO    ] No camera update needed
[2026-06-19 14:16:01,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:16:01,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:16:01,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:16:01,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:16:03,631.631 INFO    ] ================================================
[2026-06-19 14:16:03,647.647 INFO    ] Launching Daemon at Fri Jun 19 14:16:03 IST 2026
[2026-06-19 14:16:03,658.658 INFO    ] ================================================
[2026-06-19 14:16:04,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:16:04
[2026-06-19 14:16:04,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:16:05,093.093 INFO    ] Initializing speech engine...
[2026-06-19 14:16:05,099.099 INFO    ] 2026-06-19 14:16:05
[2026-06-19 14:16:05,349.349 INFO    ] 2026-06-19 14:16:05
[2026-06-19 14:16:05,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:16:05,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:16:05,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:16:05,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:16:05,825.825 INFO    ] time= 19/06/2026 14:16:05
[2026-06-19 14:16:05,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:16:05,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:16:06,052.052 INFO    ] No existing commands found in stream
[2026-06-19 14:16:11,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:16:11,085.085 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 14:16:14,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:16:14,278.278 INFO    ] Checking for system updates...
[2026-06-19 14:16:14,314.314 INFO    ] 200
[2026-06-19 14:16:14,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:14,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:16:14,373.373 INFO    ] No update needed
[2026-06-19 14:16:14,375.375 INFO    ] Checking for camera pi updates...
[2026-06-19 14:16:14,413.413 INFO    ] 200
[2026-06-19 14:16:14,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:14,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:16:14,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:16:14,503.503 INFO    ] No camera update needed
[2026-06-19 14:16:14,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:16:14,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:16:14,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:16:14,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:16:16,560.560 INFO    ] ================================================
[2026-06-19 14:16:16,575.575 INFO    ] Launching Daemon at Fri Jun 19 14:16:16 IST 2026
[2026-06-19 14:16:16,585.585 INFO    ] ================================================
[2026-06-19 14:16:17,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:16:17
[2026-06-19 14:16:17,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:16:18,008.008 INFO    ] Initializing speech engine...
[2026-06-19 14:16:18,014.014 INFO    ] 2026-06-19 14:16:18
[2026-06-19 14:16:18,313.313 INFO    ] 2026-06-19 14:16:18
[2026-06-19 14:16:18,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:16:18,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:16:18,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:16:18,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:16:18,714.714 INFO    ] time= 19/06/2026 14:16:18
[2026-06-19 14:16:18,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:16:18,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:16:18,832.832 INFO    ] No existing commands found in stream
[2026-06-19 14:16:23,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:16:23,853.853 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 14:16:24,674.674 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:16:24,676.676 INFO    ] Checking for system updates...
[2026-06-19 14:16:24,713.713 INFO    ] 200
[2026-06-19 14:16:24,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:24,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:16:24,772.772 INFO    ] No update needed
[2026-06-19 14:16:24,774.774 INFO    ] Checking for camera pi updates...
[2026-06-19 14:16:24,809.809 INFO    ] 200
[2026-06-19 14:16:24,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:24,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:16:24,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:16:24,896.896 INFO    ] No camera update needed
[2026-06-19 14:16:24,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:16:24,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:16:24,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:16:24,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:16:26,952.952 INFO    ] ================================================
[2026-06-19 14:16:26,968.968 INFO    ] Launching Daemon at Fri Jun 19 14:16:26 IST 2026
[2026-06-19 14:16:26,979.979 INFO    ] ================================================
[2026-06-19 14:16:27,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:16:27
[2026-06-19 14:16:28,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:16:28,483.483 INFO    ] Initializing speech engine...
[2026-06-19 14:16:28,492.492 INFO    ] 2026-06-19 14:16:28
[2026-06-19 14:16:28,741.741 INFO    ] 2026-06-19 14:16:28
[2026-06-19 14:16:28,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:16:28,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:16:29,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:16:29,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:16:29,239.239 INFO    ] time= 19/06/2026 14:16:29
[2026-06-19 14:16:29,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:16:29,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:16:29,373.373 INFO    ] No existing commands found in stream
[2026-06-19 14:16:34,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:16:34,389.389 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 14:16:36,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:16:36,657.657 INFO    ] Checking for system updates...
[2026-06-19 14:16:36,698.698 INFO    ] 200
[2026-06-19 14:16:36,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:36,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:16:36,757.757 INFO    ] No update needed
[2026-06-19 14:16:36,759.759 INFO    ] Checking for camera pi updates...
[2026-06-19 14:16:36,794.794 INFO    ] 200
[2026-06-19 14:16:36,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:36,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:16:36,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:16:36,889.889 INFO    ] No camera update needed
[2026-06-19 14:16:36,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:16:36,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:16:36,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:16:36,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:16:38,946.946 INFO    ] ================================================
[2026-06-19 14:16:38,961.961 INFO    ] Launching Daemon at Fri Jun 19 14:16:38 IST 2026
[2026-06-19 14:16:38,972.972 INFO    ] ================================================
[2026-06-19 14:16:39,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:16:39
[2026-06-19 14:16:40,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:16:40,620.620 INFO    ] Initializing speech engine...
[2026-06-19 14:16:40,628.628 INFO    ] 2026-06-19 14:16:40
[2026-06-19 14:16:40,917.917 INFO    ] 2026-06-19 14:16:40
[2026-06-19 14:16:40,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:16:41,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:16:41,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:16:41,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:16:41,382.382 INFO    ] time= 19/06/2026 14:16:41
[2026-06-19 14:16:41,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:16:41,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:16:41,573.573 INFO    ] No existing commands found in stream
[2026-06-19 14:16:46,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:16:46,603.603 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 14:16:47,709.709 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:16:47,712.712 INFO    ] Checking for system updates...
[2026-06-19 14:16:47,750.750 INFO    ] 200
[2026-06-19 14:16:47,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:47,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:16:47,810.810 INFO    ] No update needed
[2026-06-19 14:16:47,813.813 INFO    ] Checking for camera pi updates...
[2026-06-19 14:16:47,849.849 INFO    ] 200
[2026-06-19 14:16:47,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:16:47,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:16:47,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:16:47,927.927 INFO    ] No camera update needed
[2026-06-19 14:16:47,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:16:47,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:16:47,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:16:47,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:16:49,984.984 INFO    ] ================================================
[2026-06-19 14:16:50,002.002 INFO    ] Launching Daemon at Fri Jun 19 14:16:49 IST 2026
[2026-06-19 14:16:50,013.013 INFO    ] ================================================
[2026-06-19 14:16:50,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:16:50
[2026-06-19 14:16:51,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:16:51,675.675 INFO    ] Initializing speech engine...
[2026-06-19 14:16:51,687.687 INFO    ] 2026-06-19 14:16:51
[2026-06-19 14:16:51,974.974 INFO    ] 2026-06-19 14:16:51
[2026-06-19 14:16:52,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:16:52,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:16:52,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:16:52,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:16:52,507.507 INFO    ] time= 19/06/2026 14:16:52
[2026-06-19 14:16:52,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:16:52,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:16:52,661.661 INFO    ] No existing commands found in stream
[2026-06-19 14:16:57,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:16:57,692.692 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 14:17:00,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:17:00,800.800 INFO    ] Checking for system updates...
[2026-06-19 14:17:00,840.840 INFO    ] 200
[2026-06-19 14:17:00,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:00,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:17:00,903.903 INFO    ] No update needed
[2026-06-19 14:17:00,906.906 INFO    ] Checking for camera pi updates...
[2026-06-19 14:17:00,943.943 INFO    ] 200
[2026-06-19 14:17:00,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:00,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:17:01,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:17:01,033.033 INFO    ] No camera update needed
[2026-06-19 14:17:01,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:17:01,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:17:01,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:17:01,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:17:03,097.097 INFO    ] ================================================
[2026-06-19 14:17:03,119.119 INFO    ] Launching Daemon at Fri Jun 19 14:17:03 IST 2026
[2026-06-19 14:17:03,134.134 INFO    ] ================================================
[2026-06-19 14:17:03,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:17:03
[2026-06-19 14:17:04,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:17:04,644.644 INFO    ] Initializing speech engine...
[2026-06-19 14:17:04,659.659 INFO    ] 2026-06-19 14:17:04
[2026-06-19 14:17:04,954.954 INFO    ] 2026-06-19 14:17:04
[2026-06-19 14:17:04,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:17:05,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:17:05,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:17:05,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:17:05,346.346 INFO    ] time= 19/06/2026 14:17:05
[2026-06-19 14:17:05,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:17:05,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:17:05,473.473 INFO    ] No existing commands found in stream
[2026-06-19 14:17:10,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:17:10,487.487 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 14:17:12,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:17:12,850.850 INFO    ] Checking for system updates...
[2026-06-19 14:17:12,887.887 INFO    ] 200
[2026-06-19 14:17:12,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:12,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:17:12,945.945 INFO    ] No update needed
[2026-06-19 14:17:12,948.948 INFO    ] Checking for camera pi updates...
[2026-06-19 14:17:12,986.986 INFO    ] 200
[2026-06-19 14:17:12,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:13,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:17:13,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:17:13,086.086 INFO    ] No camera update needed
[2026-06-19 14:17:13,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:17:13,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:17:13,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:17:13,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:17:15,141.141 INFO    ] ================================================
[2026-06-19 14:17:15,156.156 INFO    ] Launching Daemon at Fri Jun 19 14:17:15 IST 2026
[2026-06-19 14:17:15,167.167 INFO    ] ================================================
[2026-06-19 14:17:15,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:17:15
[2026-06-19 14:17:16,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:17:16,688.688 INFO    ] Initializing speech engine...
[2026-06-19 14:17:16,699.699 INFO    ] 2026-06-19 14:17:16
[2026-06-19 14:17:17,006.006 INFO    ] 2026-06-19 14:17:16
[2026-06-19 14:17:17,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:17:17,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:17:17,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:17:17,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:17:17,534.534 INFO    ] time= 19/06/2026 14:17:17
[2026-06-19 14:17:17,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:17:17,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:17:17,698.698 INFO    ] No existing commands found in stream
[2026-06-19 14:17:22,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:17:22,738.738 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 14:17:25,493.493 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:17:25,497.497 INFO    ] Checking for system updates...
[2026-06-19 14:17:25,535.535 INFO    ] 200
[2026-06-19 14:17:25,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:25,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:17:25,593.593 INFO    ] No update needed
[2026-06-19 14:17:25,595.595 INFO    ] Checking for camera pi updates...
[2026-06-19 14:17:25,630.630 INFO    ] 200
[2026-06-19 14:17:25,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:25,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:17:25,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:17:25,729.729 INFO    ] No camera update needed
[2026-06-19 14:17:25,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:17:25,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:17:25,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:17:25,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:17:27,784.784 INFO    ] ================================================
[2026-06-19 14:17:27,800.800 INFO    ] Launching Daemon at Fri Jun 19 14:17:27 IST 2026
[2026-06-19 14:17:27,811.811 INFO    ] ================================================
[2026-06-19 14:17:28,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:17:28
[2026-06-19 14:17:28,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:17:29,229.229 INFO    ] Initializing speech engine...
[2026-06-19 14:17:29,238.238 INFO    ] 2026-06-19 14:17:29
[2026-06-19 14:17:29,489.489 INFO    ] 2026-06-19 14:17:29
[2026-06-19 14:17:29,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:17:29,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:17:29,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:17:29,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:17:29,865.865 INFO    ] time= 19/06/2026 14:17:29
[2026-06-19 14:17:29,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:17:29,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:17:30,066.066 INFO    ] No existing commands found in stream
[2026-06-19 14:17:35,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:17:35,080.080 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 14:17:39,214.214 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:17:39,217.217 INFO    ] Checking for system updates...
[2026-06-19 14:17:39,254.254 INFO    ] 200
[2026-06-19 14:17:39,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:39,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:17:39,313.313 INFO    ] No update needed
[2026-06-19 14:17:39,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 14:17:39,349.349 INFO    ] 200
[2026-06-19 14:17:39,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:39,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:17:39,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:17:39,449.449 INFO    ] No camera update needed
[2026-06-19 14:17:39,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:17:39,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:17:39,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:17:39,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:17:41,506.506 INFO    ] ================================================
[2026-06-19 14:17:41,522.522 INFO    ] Launching Daemon at Fri Jun 19 14:17:41 IST 2026
[2026-06-19 14:17:41,533.533 INFO    ] ================================================
[2026-06-19 14:17:42,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:17:42
[2026-06-19 14:17:42,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:17:43,001.001 INFO    ] Initializing speech engine...
[2026-06-19 14:17:43,010.010 INFO    ] 2026-06-19 14:17:43
[2026-06-19 14:17:43,260.260 INFO    ] 2026-06-19 14:17:43
[2026-06-19 14:17:43,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:17:43,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:17:43,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:17:43,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:17:43,759.759 INFO    ] time= 19/06/2026 14:17:43
[2026-06-19 14:17:43,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:17:43,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:17:43,993.993 INFO    ] No existing commands found in stream
[2026-06-19 14:17:49,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:17:49,029.029 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 14:17:51,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:17:51,087.087 INFO    ] Checking for system updates...
[2026-06-19 14:17:51,125.125 INFO    ] 200
[2026-06-19 14:17:51,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:51,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:17:51,188.188 INFO    ] No update needed
[2026-06-19 14:17:51,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 14:17:51,226.226 INFO    ] 200
[2026-06-19 14:17:51,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:17:51,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:17:51,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:17:51,415.415 INFO    ] No camera update needed
[2026-06-19 14:17:51,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:17:51,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:17:51,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:17:51,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:17:53,475.475 INFO    ] ================================================
[2026-06-19 14:17:53,491.491 INFO    ] Launching Daemon at Fri Jun 19 14:17:53 IST 2026
[2026-06-19 14:17:53,502.502 INFO    ] ================================================
[2026-06-19 14:17:54,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:17:54
[2026-06-19 14:17:54,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:17:54,972.972 INFO    ] Initializing speech engine...
[2026-06-19 14:17:54,979.979 INFO    ] 2026-06-19 14:17:54
[2026-06-19 14:17:55,226.226 INFO    ] 2026-06-19 14:17:55
[2026-06-19 14:17:55,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:17:55,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:17:55,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:17:55,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:17:55,719.719 INFO    ] time= 19/06/2026 14:17:55
[2026-06-19 14:17:55,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:17:55,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:17:55,920.920 INFO    ] No existing commands found in stream
[2026-06-19 14:18:00,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:18:00,950.950 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 14:18:04,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:18:04,863.863 INFO    ] Checking for system updates...
[2026-06-19 14:18:04,899.899 INFO    ] 200
[2026-06-19 14:18:04,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:04,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:18:04,959.959 INFO    ] No update needed
[2026-06-19 14:18:04,961.961 INFO    ] Checking for camera pi updates...
[2026-06-19 14:18:04,999.999 INFO    ] 200
[2026-06-19 14:18:05,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:05,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:18:05,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:18:05,085.085 INFO    ] No camera update needed
[2026-06-19 14:18:05,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:18:05,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:18:05,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:18:05,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:18:07,141.141 INFO    ] ================================================
[2026-06-19 14:18:07,157.157 INFO    ] Launching Daemon at Fri Jun 19 14:18:07 IST 2026
[2026-06-19 14:18:07,168.168 INFO    ] ================================================
[2026-06-19 14:18:07,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:18:07
[2026-06-19 14:18:08,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:18:08,601.601 INFO    ] Initializing speech engine...
[2026-06-19 14:18:08,610.610 INFO    ] 2026-06-19 14:18:08
[2026-06-19 14:18:08,853.853 INFO    ] 2026-06-19 14:18:08
[2026-06-19 14:18:08,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:18:09,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:18:09,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:18:09,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:18:09,223.223 INFO    ] time= 19/06/2026 14:18:09
[2026-06-19 14:18:09,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:18:09,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:18:09,411.411 INFO    ] No existing commands found in stream
[2026-06-19 14:18:14,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:18:14,436.436 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 14:18:17,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:18:17,947.947 INFO    ] Checking for system updates...
[2026-06-19 14:18:17,983.983 INFO    ] 200
[2026-06-19 14:18:17,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:18,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:18:18,042.042 INFO    ] No update needed
[2026-06-19 14:18:18,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 14:18:18,082.082 INFO    ] 200
[2026-06-19 14:18:18,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:18,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:18:18,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:18:18,175.175 INFO    ] No camera update needed
[2026-06-19 14:18:18,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:18:18,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:18:18,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:18:18,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:18:20,231.231 INFO    ] ================================================
[2026-06-19 14:18:20,247.247 INFO    ] Launching Daemon at Fri Jun 19 14:18:20 IST 2026
[2026-06-19 14:18:20,258.258 INFO    ] ================================================
[2026-06-19 14:18:20,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:18:20
[2026-06-19 14:18:21,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:18:21,690.690 INFO    ] Initializing speech engine...
[2026-06-19 14:18:21,697.697 INFO    ] 2026-06-19 14:18:21
[2026-06-19 14:18:21,940.940 INFO    ] 2026-06-19 14:18:21
[2026-06-19 14:18:21,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:18:22,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:18:22,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:18:22,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:18:22,427.427 INFO    ] time= 19/06/2026 14:18:22
[2026-06-19 14:18:22,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:18:22,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:18:22,617.617 INFO    ] No existing commands found in stream
[2026-06-19 14:18:27,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:18:27,653.653 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 14:18:31,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:18:31,788.788 INFO    ] Checking for system updates...
[2026-06-19 14:18:31,833.833 INFO    ] 200
[2026-06-19 14:18:31,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:31,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:18:31,902.902 INFO    ] No update needed
[2026-06-19 14:18:31,905.905 INFO    ] Checking for camera pi updates...
[2026-06-19 14:18:31,941.941 INFO    ] 200
[2026-06-19 14:18:31,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:31,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:18:32,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:18:32,042.042 INFO    ] No camera update needed
[2026-06-19 14:18:32,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:18:32,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:18:32,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:18:32,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:18:34,106.106 INFO    ] ================================================
[2026-06-19 14:18:34,122.122 INFO    ] Launching Daemon at Fri Jun 19 14:18:34 IST 2026
[2026-06-19 14:18:34,134.134 INFO    ] ================================================
[2026-06-19 14:18:34,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:18:34
[2026-06-19 14:18:35,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:18:35,746.746 INFO    ] Initializing speech engine...
[2026-06-19 14:18:35,760.760 INFO    ] 2026-06-19 14:18:35
[2026-06-19 14:18:36,031.031 INFO    ] 2026-06-19 14:18:36
[2026-06-19 14:18:36,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:18:36,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:18:36,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:18:36,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:18:36,498.498 INFO    ] time= 19/06/2026 14:18:36
[2026-06-19 14:18:36,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:18:36,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:18:36,709.709 INFO    ] No existing commands found in stream
[2026-06-19 14:18:41,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:18:41,741.741 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 14:18:42,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:18:42,816.816 INFO    ] Checking for system updates...
[2026-06-19 14:18:42,854.854 INFO    ] 200
[2026-06-19 14:18:42,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:42,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:18:42,914.914 INFO    ] No update needed
[2026-06-19 14:18:42,917.917 INFO    ] Checking for camera pi updates...
[2026-06-19 14:18:42,952.952 INFO    ] 200
[2026-06-19 14:18:42,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:42,997.997 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:18:43,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:18:43,056.056 INFO    ] No camera update needed
[2026-06-19 14:18:43,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:18:43,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:18:43,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:18:43,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:18:45,117.117 INFO    ] ================================================
[2026-06-19 14:18:45,133.133 INFO    ] Launching Daemon at Fri Jun 19 14:18:45 IST 2026
[2026-06-19 14:18:45,144.144 INFO    ] ================================================
[2026-06-19 14:18:45,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:18:45
[2026-06-19 14:18:46,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:18:46,569.569 INFO    ] Initializing speech engine...
[2026-06-19 14:18:46,580.580 INFO    ] 2026-06-19 14:18:46
[2026-06-19 14:18:46,833.833 INFO    ] 2026-06-19 14:18:46
[2026-06-19 14:18:46,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:18:47,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:18:47,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:18:47,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:18:47,304.304 INFO    ] time= 19/06/2026 14:18:47
[2026-06-19 14:18:47,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:18:47,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:18:47,514.514 INFO    ] No existing commands found in stream
[2026-06-19 14:18:52,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:18:52,547.547 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 14:18:54,493.493 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:18:54,496.496 INFO    ] Checking for system updates...
[2026-06-19 14:18:54,532.532 INFO    ] 200
[2026-06-19 14:18:54,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:54,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:18:54,592.592 INFO    ] No update needed
[2026-06-19 14:18:54,594.594 INFO    ] Checking for camera pi updates...
[2026-06-19 14:18:54,628.628 INFO    ] 200
[2026-06-19 14:18:54,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:18:54,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:18:54,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:18:54,727.727 INFO    ] No camera update needed
[2026-06-19 14:18:54,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:18:54,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:18:54,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:18:54,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:18:56,784.784 INFO    ] ================================================
[2026-06-19 14:18:56,800.800 INFO    ] Launching Daemon at Fri Jun 19 14:18:56 IST 2026
[2026-06-19 14:18:56,811.811 INFO    ] ================================================
[2026-06-19 14:18:57,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:18:57
[2026-06-19 14:18:57,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:18:58,236.236 INFO    ] Initializing speech engine...
[2026-06-19 14:18:58,245.245 INFO    ] 2026-06-19 14:18:58
[2026-06-19 14:18:58,501.501 INFO    ] 2026-06-19 14:18:58
[2026-06-19 14:18:58,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:18:58,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:18:58,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:18:58,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:18:59,044.044 INFO    ] time= 19/06/2026 14:18:58
[2026-06-19 14:18:59,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:18:59,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:18:59,189.189 INFO    ] No existing commands found in stream
[2026-06-19 14:19:04,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:19:04,212.212 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 14:19:06,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:19:06,401.401 INFO    ] Checking for system updates...
[2026-06-19 14:19:06,437.437 INFO    ] 200
[2026-06-19 14:19:06,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:06,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:19:06,510.510 INFO    ] No update needed
[2026-06-19 14:19:06,513.513 INFO    ] Checking for camera pi updates...
[2026-06-19 14:19:06,566.566 INFO    ] 200
[2026-06-19 14:19:06,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:06,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:19:06,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:19:06,644.644 INFO    ] No camera update needed
[2026-06-19 14:19:06,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:19:06,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:19:06,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:19:06,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:19:08,701.701 INFO    ] ================================================
[2026-06-19 14:19:08,717.717 INFO    ] Launching Daemon at Fri Jun 19 14:19:08 IST 2026
[2026-06-19 14:19:08,727.727 INFO    ] ================================================
[2026-06-19 14:19:09,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:19:09
[2026-06-19 14:19:10,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:19:10,321.321 INFO    ] Initializing speech engine...
[2026-06-19 14:19:10,330.330 INFO    ] 2026-06-19 14:19:10
[2026-06-19 14:19:10,613.613 INFO    ] 2026-06-19 14:19:10
[2026-06-19 14:19:10,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:19:10,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:19:10,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:19:11,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:19:11,152.152 INFO    ] time= 19/06/2026 14:19:11
[2026-06-19 14:19:11,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:19:11,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:19:11,316.316 INFO    ] No existing commands found in stream
[2026-06-19 14:19:16,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:19:16,340.340 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 14:19:17,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:19:17,346.346 INFO    ] Checking for system updates...
[2026-06-19 14:19:17,383.383 INFO    ] 200
[2026-06-19 14:19:17,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:17,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:19:17,444.444 INFO    ] No update needed
[2026-06-19 14:19:17,447.447 INFO    ] Checking for camera pi updates...
[2026-06-19 14:19:17,482.482 INFO    ] 200
[2026-06-19 14:19:17,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:17,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:19:17,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:19:17,576.576 INFO    ] No camera update needed
[2026-06-19 14:19:17,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:19:17,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:19:17,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:19:17,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:19:19,635.635 INFO    ] ================================================
[2026-06-19 14:19:19,651.651 INFO    ] Launching Daemon at Fri Jun 19 14:19:19 IST 2026
[2026-06-19 14:19:19,662.662 INFO    ] ================================================
[2026-06-19 14:19:20,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:19:20
[2026-06-19 14:19:20,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:19:21,073.073 INFO    ] Initializing speech engine...
[2026-06-19 14:19:21,079.079 INFO    ] 2026-06-19 14:19:21
[2026-06-19 14:19:21,375.375 INFO    ] 2026-06-19 14:19:21
[2026-06-19 14:19:21,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:19:21,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:19:21,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:19:21,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:19:21,792.792 INFO    ] time= 19/06/2026 14:19:21
[2026-06-19 14:19:21,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:19:21,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:19:21,972.972 INFO    ] No existing commands found in stream
[2026-06-19 14:19:26,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:19:26,996.996 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 14:19:29,269.269 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:19:29,272.272 INFO    ] Checking for system updates...
[2026-06-19 14:19:29,313.313 INFO    ] 200
[2026-06-19 14:19:29,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:29,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:19:29,372.372 INFO    ] No update needed
[2026-06-19 14:19:29,375.375 INFO    ] Checking for camera pi updates...
[2026-06-19 14:19:29,414.414 INFO    ] 200
[2026-06-19 14:19:29,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:29,463.463 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:19:29,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:19:29,509.509 INFO    ] No camera update needed
[2026-06-19 14:19:29,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:19:29,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:19:29,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:19:29,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:19:31,569.569 INFO    ] ================================================
[2026-06-19 14:19:31,584.584 INFO    ] Launching Daemon at Fri Jun 19 14:19:31 IST 2026
[2026-06-19 14:19:31,596.596 INFO    ] ================================================
[2026-06-19 14:19:32,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:19:32
[2026-06-19 14:19:32,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:19:33,127.127 INFO    ] Initializing speech engine...
[2026-06-19 14:19:33,141.141 INFO    ] 2026-06-19 14:19:33
[2026-06-19 14:19:33,429.429 INFO    ] 2026-06-19 14:19:33
[2026-06-19 14:19:33,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:19:33,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:19:33,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:19:33,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:19:33,846.846 INFO    ] time= 19/06/2026 14:19:33
[2026-06-19 14:19:33,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:19:33,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:19:33,999.999 INFO    ] No existing commands found in stream
[2026-06-19 14:19:39,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:19:39,021.021 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 14:19:42,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:19:42,223.223 INFO    ] Checking for system updates...
[2026-06-19 14:19:42,278.278 INFO    ] 200
[2026-06-19 14:19:42,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:42,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:19:42,342.342 INFO    ] No update needed
[2026-06-19 14:19:42,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 14:19:42,381.381 INFO    ] 200
[2026-06-19 14:19:42,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:42,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:19:42,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:19:42,480.480 INFO    ] No camera update needed
[2026-06-19 14:19:42,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:19:42,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:19:42,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:19:42,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:19:44,540.540 INFO    ] ================================================
[2026-06-19 14:19:44,555.555 INFO    ] Launching Daemon at Fri Jun 19 14:19:44 IST 2026
[2026-06-19 14:19:44,566.566 INFO    ] ================================================
[2026-06-19 14:19:45,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:19:45
[2026-06-19 14:19:45,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:19:46,205.205 INFO    ] Initializing speech engine...
[2026-06-19 14:19:46,219.219 INFO    ] 2026-06-19 14:19:46
[2026-06-19 14:19:46,497.497 INFO    ] 2026-06-19 14:19:46
[2026-06-19 14:19:46,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:19:46,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:19:46,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:19:47,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:19:47,035.035 INFO    ] time= 19/06/2026 14:19:47
[2026-06-19 14:19:47,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:19:47,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:19:47,218.218 INFO    ] No existing commands found in stream
[2026-06-19 14:19:52,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:19:52,248.248 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 14:19:55,802.802 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:19:55,805.805 INFO    ] Checking for system updates...
[2026-06-19 14:19:55,842.842 INFO    ] 200
[2026-06-19 14:19:55,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:55,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:19:55,904.904 INFO    ] No update needed
[2026-06-19 14:19:55,906.906 INFO    ] Checking for camera pi updates...
[2026-06-19 14:19:55,942.942 INFO    ] 200
[2026-06-19 14:19:55,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:19:55,991.991 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:19:56,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:19:56,149.149 INFO    ] No camera update needed
[2026-06-19 14:19:56,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:19:56,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:19:56,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:19:56,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:19:58,210.210 INFO    ] ================================================
[2026-06-19 14:19:58,226.226 INFO    ] Launching Daemon at Fri Jun 19 14:19:58 IST 2026
[2026-06-19 14:19:58,238.238 INFO    ] ================================================
[2026-06-19 14:19:58,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:19:58
[2026-06-19 14:19:59,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:19:59,668.668 INFO    ] Initializing speech engine...
[2026-06-19 14:19:59,676.676 INFO    ] 2026-06-19 14:19:59
[2026-06-19 14:19:59,932.932 INFO    ] 2026-06-19 14:19:59
[2026-06-19 14:19:59,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:20:00,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:20:00,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:20:00,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:20:00,396.396 INFO    ] time= 19/06/2026 14:20:00
[2026-06-19 14:20:00,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:20:00,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:20:00,558.558 INFO    ] No existing commands found in stream
[2026-06-19 14:20:05,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:20:05,597.597 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 14:20:09,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:20:09,056.056 INFO    ] Checking for system updates...
[2026-06-19 14:20:09,092.092 INFO    ] 200
[2026-06-19 14:20:09,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:09,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:20:09,150.150 INFO    ] No update needed
[2026-06-19 14:20:09,152.152 INFO    ] Checking for camera pi updates...
[2026-06-19 14:20:09,186.186 INFO    ] 200
[2026-06-19 14:20:09,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:09,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:20:09,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:20:09,286.286 INFO    ] No camera update needed
[2026-06-19 14:20:09,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:20:09,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:20:09,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:20:09,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:20:11,341.341 INFO    ] ================================================
[2026-06-19 14:20:11,356.356 INFO    ] Launching Daemon at Fri Jun 19 14:20:11 IST 2026
[2026-06-19 14:20:11,367.367 INFO    ] ================================================
[2026-06-19 14:20:11,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:20:11
[2026-06-19 14:20:12,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:20:12,904.904 INFO    ] Initializing speech engine...
[2026-06-19 14:20:12,916.916 INFO    ] 2026-06-19 14:20:12
[2026-06-19 14:20:13,199.199 INFO    ] 2026-06-19 14:20:13
[2026-06-19 14:20:13,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:20:13,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:20:13,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:20:13,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:20:13,669.669 INFO    ] time= 19/06/2026 14:20:13
[2026-06-19 14:20:13,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:20:13,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:20:13,890.890 INFO    ] No existing commands found in stream
[2026-06-19 14:20:18,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:20:18,913.913 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 14:20:20,708.708 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:20:20,711.711 INFO    ] Checking for system updates...
[2026-06-19 14:20:20,749.749 INFO    ] 200
[2026-06-19 14:20:20,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:20,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:20:20,813.813 INFO    ] No update needed
[2026-06-19 14:20:20,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 14:20:20,850.850 INFO    ] 200
[2026-06-19 14:20:20,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:20,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:20:20,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:20:20,941.941 INFO    ] No camera update needed
[2026-06-19 14:20:20,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:20:20,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:20:20,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:20:20,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:20:23,996.996 INFO    ] ================================================
[2026-06-19 14:20:23,012.012 INFO    ] Launching Daemon at Fri Jun 19 14:20:23 IST 2026
[2026-06-19 14:20:23,023.023 INFO    ] ================================================
[2026-06-19 14:20:23,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:20:23
[2026-06-19 14:20:24,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:20:24,677.677 INFO    ] Initializing speech engine...
[2026-06-19 14:20:24,685.685 INFO    ] 2026-06-19 14:20:24
[2026-06-19 14:20:24,964.964 INFO    ] 2026-06-19 14:20:24
[2026-06-19 14:20:25,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:20:25,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:20:25,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:20:25,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:20:25,531.531 INFO    ] time= 19/06/2026 14:20:25
[2026-06-19 14:20:25,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:20:25,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:20:25,694.694 INFO    ] No existing commands found in stream
[2026-06-19 14:20:30,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:20:30,723.723 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 14:20:35,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:20:35,075.075 INFO    ] Checking for system updates...
[2026-06-19 14:20:35,112.112 INFO    ] 200
[2026-06-19 14:20:35,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:35,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:20:35,170.170 INFO    ] No update needed
[2026-06-19 14:20:35,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 14:20:35,207.207 INFO    ] 200
[2026-06-19 14:20:35,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:35,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:20:35,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:20:35,296.296 INFO    ] No camera update needed
[2026-06-19 14:20:35,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:20:35,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:20:35,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:20:35,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:20:37,353.353 INFO    ] ================================================
[2026-06-19 14:20:37,369.369 INFO    ] Launching Daemon at Fri Jun 19 14:20:37 IST 2026
[2026-06-19 14:20:37,382.382 INFO    ] ================================================
[2026-06-19 14:20:37,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:20:37
[2026-06-19 14:20:38,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:20:38,859.859 INFO    ] Initializing speech engine...
[2026-06-19 14:20:38,869.869 INFO    ] 2026-06-19 14:20:38
[2026-06-19 14:20:39,115.115 INFO    ] 2026-06-19 14:20:39
[2026-06-19 14:20:39,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:20:39,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:20:39,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:20:39,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:20:39,603.603 INFO    ] time= 19/06/2026 14:20:39
[2026-06-19 14:20:39,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:20:39,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:20:39,812.812 INFO    ] No existing commands found in stream
[2026-06-19 14:20:44,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:20:44,839.839 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 14:20:47,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:20:47,070.070 INFO    ] Checking for system updates...
[2026-06-19 14:20:47,107.107 INFO    ] 200
[2026-06-19 14:20:47,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:47,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:20:47,165.165 INFO    ] No update needed
[2026-06-19 14:20:47,168.168 INFO    ] Checking for camera pi updates...
[2026-06-19 14:20:47,201.201 INFO    ] 200
[2026-06-19 14:20:47,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:47,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:20:47,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:20:47,273.273 INFO    ] No camera update needed
[2026-06-19 14:20:47,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:20:47,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:20:47,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:20:47,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:20:49,332.332 INFO    ] ================================================
[2026-06-19 14:20:49,348.348 INFO    ] Launching Daemon at Fri Jun 19 14:20:49 IST 2026
[2026-06-19 14:20:49,360.360 INFO    ] ================================================
[2026-06-19 14:20:50,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:20:50
[2026-06-19 14:20:50,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:20:51,058.058 INFO    ] Initializing speech engine...
[2026-06-19 14:20:51,063.063 INFO    ] 2026-06-19 14:20:51
[2026-06-19 14:20:51,381.381 INFO    ] 2026-06-19 14:20:51
[2026-06-19 14:20:51,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:20:51,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:20:51,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:20:51,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:20:51,890.890 INFO    ] time= 19/06/2026 14:20:51
[2026-06-19 14:20:51,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:20:51,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:20:52,047.047 INFO    ] No existing commands found in stream
[2026-06-19 14:20:57,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:20:57,080.080 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 14:20:58,253.253 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:20:58,255.255 INFO    ] Checking for system updates...
[2026-06-19 14:20:58,296.296 INFO    ] 200
[2026-06-19 14:20:58,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:58,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:20:58,353.353 INFO    ] No update needed
[2026-06-19 14:20:58,356.356 INFO    ] Checking for camera pi updates...
[2026-06-19 14:20:58,390.390 INFO    ] 200
[2026-06-19 14:20:58,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:20:58,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:20:58,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:20:58,475.475 INFO    ] No camera update needed
[2026-06-19 14:20:58,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:20:58,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:20:58,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:20:58,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:21:00,533.533 INFO    ] ================================================
[2026-06-19 14:21:00,549.549 INFO    ] Launching Daemon at Fri Jun 19 14:21:00 IST 2026
[2026-06-19 14:21:00,560.560 INFO    ] ================================================
[2026-06-19 14:21:01,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:21:01
[2026-06-19 14:21:01,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:21:02,070.070 INFO    ] Initializing speech engine...
[2026-06-19 14:21:02,074.074 INFO    ] 2026-06-19 14:21:02
[2026-06-19 14:21:02,451.451 INFO    ] 2026-06-19 14:21:02
[2026-06-19 14:21:02,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:21:02,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:21:02,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:21:02,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:21:02,949.949 INFO    ] time= 19/06/2026 14:21:02
[2026-06-19 14:21:02,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:21:02,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:21:03,093.093 INFO    ] No existing commands found in stream
[2026-06-19 14:21:08,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:21:08,109.109 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 14:21:09,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:21:09,960.960 INFO    ] Checking for system updates...
[2026-06-19 14:21:09,996.996 INFO    ] 200
[2026-06-19 14:21:09,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:10,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:21:10,053.053 INFO    ] No update needed
[2026-06-19 14:21:10,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 14:21:10,091.091 INFO    ] 200
[2026-06-19 14:21:10,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:10,135.135 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:21:10,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:21:10,180.180 INFO    ] No camera update needed
[2026-06-19 14:21:10,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:21:10,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:21:10,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:21:10,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:21:12,238.238 INFO    ] ================================================
[2026-06-19 14:21:12,254.254 INFO    ] Launching Daemon at Fri Jun 19 14:21:12 IST 2026
[2026-06-19 14:21:12,266.266 INFO    ] ================================================
[2026-06-19 14:21:12,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:21:12
[2026-06-19 14:21:13,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:21:13,681.681 INFO    ] Initializing speech engine...
[2026-06-19 14:21:13,689.689 INFO    ] 2026-06-19 14:21:13
[2026-06-19 14:21:13,985.985 INFO    ] 2026-06-19 14:21:13
[2026-06-19 14:21:14,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:21:14,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:21:14,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:21:14,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:21:14,369.369 INFO    ] time= 19/06/2026 14:21:14
[2026-06-19 14:21:14,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:21:14,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:21:14,497.497 INFO    ] No existing commands found in stream
[2026-06-19 14:21:19,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:21:19,516.516 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 14:21:20,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:21:20,042.042 INFO    ] Checking for system updates...
[2026-06-19 14:21:20,082.082 INFO    ] 200
[2026-06-19 14:21:20,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:20,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:21:20,141.141 INFO    ] No update needed
[2026-06-19 14:21:20,144.144 INFO    ] Checking for camera pi updates...
[2026-06-19 14:21:20,183.183 INFO    ] 200
[2026-06-19 14:21:20,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:20,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:21:20,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:21:20,284.284 INFO    ] No camera update needed
[2026-06-19 14:21:20,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:21:20,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:21:20,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:21:20,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:21:22,343.343 INFO    ] ================================================
[2026-06-19 14:21:22,359.359 INFO    ] Launching Daemon at Fri Jun 19 14:21:22 IST 2026
[2026-06-19 14:21:22,370.370 INFO    ] ================================================
[2026-06-19 14:21:22,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:21:22
[2026-06-19 14:21:23,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:21:23,806.806 INFO    ] Initializing speech engine...
[2026-06-19 14:21:23,820.820 INFO    ] 2026-06-19 14:21:23
[2026-06-19 14:21:24,089.089 INFO    ] 2026-06-19 14:21:24
[2026-06-19 14:21:24,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:21:24,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:21:24,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:21:24,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:21:24,543.543 INFO    ] time= 19/06/2026 14:21:24
[2026-06-19 14:21:24,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:21:24,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:21:24,648.648 INFO    ] No existing commands found in stream
[2026-06-19 14:21:29,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:21:29,660.660 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 14:21:33,235.235 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:21:33,238.238 INFO    ] Checking for system updates...
[2026-06-19 14:21:33,281.281 INFO    ] 200
[2026-06-19 14:21:33,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:33,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:21:33,339.339 INFO    ] No update needed
[2026-06-19 14:21:33,341.341 INFO    ] Checking for camera pi updates...
[2026-06-19 14:21:33,379.379 INFO    ] 200
[2026-06-19 14:21:33,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:33,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:21:33,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:21:33,474.474 INFO    ] No camera update needed
[2026-06-19 14:21:33,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:21:33,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:21:33,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:21:33,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:21:35,532.532 INFO    ] ================================================
[2026-06-19 14:21:35,548.548 INFO    ] Launching Daemon at Fri Jun 19 14:21:35 IST 2026
[2026-06-19 14:21:35,559.559 INFO    ] ================================================
[2026-06-19 14:21:36,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:21:36
[2026-06-19 14:21:36,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:21:36,985.985 INFO    ] Initializing speech engine...
[2026-06-19 14:21:37,003.003 INFO    ] 2026-06-19 14:21:36
[2026-06-19 14:21:37,255.255 INFO    ] 2026-06-19 14:21:37
[2026-06-19 14:21:37,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:21:37,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:21:37,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:21:37,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:21:37,634.634 INFO    ] time= 19/06/2026 14:21:37
[2026-06-19 14:21:37,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:21:37,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:21:37,802.802 INFO    ] No existing commands found in stream
[2026-06-19 14:21:42,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:21:42,830.830 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 14:21:43,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:21:43,289.289 INFO    ] Checking for system updates...
[2026-06-19 14:21:43,325.325 INFO    ] 200
[2026-06-19 14:21:43,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:43,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:21:43,383.383 INFO    ] No update needed
[2026-06-19 14:21:43,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 14:21:43,424.424 INFO    ] 200
[2026-06-19 14:21:43,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:43,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:21:43,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:21:43,528.528 INFO    ] No camera update needed
[2026-06-19 14:21:43,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:21:43,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:21:43,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:21:43,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:21:45,583.583 INFO    ] ================================================
[2026-06-19 14:21:45,598.598 INFO    ] Launching Daemon at Fri Jun 19 14:21:45 IST 2026
[2026-06-19 14:21:45,610.610 INFO    ] ================================================
[2026-06-19 14:21:46,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:21:46
[2026-06-19 14:21:46,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:21:47,076.076 INFO    ] Initializing speech engine...
[2026-06-19 14:21:47,081.081 INFO    ] 2026-06-19 14:21:47
[2026-06-19 14:21:47,345.345 INFO    ] 2026-06-19 14:21:47
[2026-06-19 14:21:47,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:21:47,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:21:47,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:21:47,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:21:47,845.845 INFO    ] time= 19/06/2026 14:21:47
[2026-06-19 14:21:47,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:21:47,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:21:48,049.049 INFO    ] No existing commands found in stream
[2026-06-19 14:21:53,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:21:53,078.078 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 14:21:55,132.132 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:21:55,135.135 INFO    ] Checking for system updates...
[2026-06-19 14:21:55,173.173 INFO    ] 200
[2026-06-19 14:21:55,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:55,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:21:55,231.231 INFO    ] No update needed
[2026-06-19 14:21:55,234.234 INFO    ] Checking for camera pi updates...
[2026-06-19 14:21:55,267.267 INFO    ] 200
[2026-06-19 14:21:55,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:21:55,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:21:55,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:21:55,349.349 INFO    ] No camera update needed
[2026-06-19 14:21:55,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:21:55,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:21:55,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:21:55,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:21:57,404.404 INFO    ] ================================================
[2026-06-19 14:21:57,419.419 INFO    ] Launching Daemon at Fri Jun 19 14:21:57 IST 2026
[2026-06-19 14:21:57,430.430 INFO    ] ================================================
[2026-06-19 14:21:58,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:21:57
[2026-06-19 14:21:58,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:21:58,864.864 INFO    ] Initializing speech engine...
[2026-06-19 14:21:58,872.872 INFO    ] 2026-06-19 14:21:58
[2026-06-19 14:21:59,125.125 INFO    ] 2026-06-19 14:21:59
[2026-06-19 14:21:59,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:21:59,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:21:59,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:21:59,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:21:59,572.572 INFO    ] time= 19/06/2026 14:21:59
[2026-06-19 14:21:59,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:21:59,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:21:59,829.829 INFO    ] No existing commands found in stream
[2026-06-19 14:22:04,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:22:04,862.862 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 14:22:06,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:22:06,982.982 INFO    ] Checking for system updates...
[2026-06-19 14:22:07,023.023 INFO    ] 200
[2026-06-19 14:22:07,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:07,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:22:07,080.080 INFO    ] No update needed
[2026-06-19 14:22:07,083.083 INFO    ] Checking for camera pi updates...
[2026-06-19 14:22:07,117.117 INFO    ] 200
[2026-06-19 14:22:07,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:07,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:22:07,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:22:07,205.205 INFO    ] No camera update needed
[2026-06-19 14:22:07,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:22:07,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:22:07,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:22:07,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:22:09,260.260 INFO    ] ================================================
[2026-06-19 14:22:09,277.277 INFO    ] Launching Daemon at Fri Jun 19 14:22:09 IST 2026
[2026-06-19 14:22:09,288.288 INFO    ] ================================================
[2026-06-19 14:22:09,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:22:09
[2026-06-19 14:22:10,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:22:10,750.750 INFO    ] Initializing speech engine...
[2026-06-19 14:22:10,759.759 INFO    ] 2026-06-19 14:22:10
[2026-06-19 14:22:11,009.009 INFO    ] 2026-06-19 14:22:11
[2026-06-19 14:22:11,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:22:11,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:22:11,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:22:11,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:22:11,486.486 INFO    ] time= 19/06/2026 14:22:11
[2026-06-19 14:22:11,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:22:11,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:22:11,705.705 INFO    ] No existing commands found in stream
[2026-06-19 14:22:16,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:22:16,732.732 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 14:22:19,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:22:19,549.549 INFO    ] Checking for system updates...
[2026-06-19 14:22:19,586.586 INFO    ] 200
[2026-06-19 14:22:19,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:19,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:22:19,650.650 INFO    ] No update needed
[2026-06-19 14:22:19,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 14:22:19,687.687 INFO    ] 200
[2026-06-19 14:22:19,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:19,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:22:19,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:22:19,780.780 INFO    ] No camera update needed
[2026-06-19 14:22:19,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:22:19,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:22:19,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:22:19,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:22:21,838.838 INFO    ] ================================================
[2026-06-19 14:22:21,853.853 INFO    ] Launching Daemon at Fri Jun 19 14:22:21 IST 2026
[2026-06-19 14:22:21,864.864 INFO    ] ================================================
[2026-06-19 14:22:22,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:22:22
[2026-06-19 14:22:23,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:22:23,322.322 INFO    ] Initializing speech engine...
[2026-06-19 14:22:23,337.337 INFO    ] 2026-06-19 14:22:23
[2026-06-19 14:22:23,593.593 INFO    ] 2026-06-19 14:22:23
[2026-06-19 14:22:23,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:22:23,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:22:23,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:22:24,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:22:24,094.094 INFO    ] time= 19/06/2026 14:22:24
[2026-06-19 14:22:24,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:22:24,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:22:24,306.306 INFO    ] No existing commands found in stream
[2026-06-19 14:22:29,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:22:29,337.337 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 14:22:33,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:22:33,273.273 INFO    ] Checking for system updates...
[2026-06-19 14:22:33,313.313 INFO    ] 200
[2026-06-19 14:22:33,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:33,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:22:33,380.380 INFO    ] No update needed
[2026-06-19 14:22:33,382.382 INFO    ] Checking for camera pi updates...
[2026-06-19 14:22:33,417.417 INFO    ] 200
[2026-06-19 14:22:33,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:33,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:22:33,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:22:33,491.491 INFO    ] No camera update needed
[2026-06-19 14:22:33,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:22:33,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:22:33,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:22:33,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:22:35,551.551 INFO    ] ================================================
[2026-06-19 14:22:35,567.567 INFO    ] Launching Daemon at Fri Jun 19 14:22:35 IST 2026
[2026-06-19 14:22:35,578.578 INFO    ] ================================================
[2026-06-19 14:22:36,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:22:36
[2026-06-19 14:22:36,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:22:37,064.064 INFO    ] Initializing speech engine...
[2026-06-19 14:22:37,071.071 INFO    ] 2026-06-19 14:22:37
[2026-06-19 14:22:37,341.341 INFO    ] 2026-06-19 14:22:37
[2026-06-19 14:22:37,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:22:37,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:22:37,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:22:37,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:22:37,724.724 INFO    ] time= 19/06/2026 14:22:37
[2026-06-19 14:22:37,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:22:37,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:22:37,881.881 INFO    ] No existing commands found in stream
[2026-06-19 14:22:42,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:22:42,904.904 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 14:22:43,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:22:43,684.684 INFO    ] Checking for system updates...
[2026-06-19 14:22:43,734.734 INFO    ] 200
[2026-06-19 14:22:43,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:43,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:22:43,796.796 INFO    ] No update needed
[2026-06-19 14:22:43,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 14:22:43,832.832 INFO    ] 200
[2026-06-19 14:22:43,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:43,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:22:43,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:22:43,915.915 INFO    ] No camera update needed
[2026-06-19 14:22:43,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:22:43,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:22:43,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:22:43,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:22:45,972.972 INFO    ] ================================================
[2026-06-19 14:22:45,987.987 INFO    ] Launching Daemon at Fri Jun 19 14:22:45 IST 2026
[2026-06-19 14:22:46,998.998 INFO    ] ================================================
[2026-06-19 14:22:46,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:22:46
[2026-06-19 14:22:47,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:22:47,404.404 INFO    ] Initializing speech engine...
[2026-06-19 14:22:47,423.423 INFO    ] 2026-06-19 14:22:47
[2026-06-19 14:22:47,678.678 INFO    ] 2026-06-19 14:22:47
[2026-06-19 14:22:47,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:22:47,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:22:47,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:22:48,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:22:48,238.238 INFO    ] time= 19/06/2026 14:22:48
[2026-06-19 14:22:48,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:22:48,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:22:48,391.391 INFO    ] No existing commands found in stream
[2026-06-19 14:22:53,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:22:53,407.407 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 14:22:55,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:22:55,609.609 INFO    ] Checking for system updates...
[2026-06-19 14:22:55,649.649 INFO    ] 200
[2026-06-19 14:22:55,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:55,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:22:55,707.707 INFO    ] No update needed
[2026-06-19 14:22:55,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 14:22:55,743.743 INFO    ] 200
[2026-06-19 14:22:55,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:22:55,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:22:55,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:22:55,837.837 INFO    ] No camera update needed
[2026-06-19 14:22:55,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:22:55,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:22:55,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:22:55,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:22:57,894.894 INFO    ] ================================================
[2026-06-19 14:22:57,909.909 INFO    ] Launching Daemon at Fri Jun 19 14:22:57 IST 2026
[2026-06-19 14:22:57,920.920 INFO    ] ================================================
[2026-06-19 14:22:58,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:22:58
[2026-06-19 14:22:59,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:22:59,343.343 INFO    ] Initializing speech engine...
[2026-06-19 14:22:59,358.358 INFO    ] 2026-06-19 14:22:59
[2026-06-19 14:22:59,613.613 INFO    ] 2026-06-19 14:22:59
[2026-06-19 14:22:59,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:22:59,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:22:59,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:23:00,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:23:00,126.126 INFO    ] time= 19/06/2026 14:23:00
[2026-06-19 14:23:00,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:23:00,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:23:00,315.315 INFO    ] No existing commands found in stream
[2026-06-19 14:23:05,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:23:05,343.343 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 14:23:07,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:23:07,875.875 INFO    ] Checking for system updates...
[2026-06-19 14:23:07,916.916 INFO    ] 200
[2026-06-19 14:23:07,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:23:07,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:23:07,975.975 INFO    ] No update needed
[2026-06-19 14:23:07,978.978 INFO    ] Checking for camera pi updates...
[2026-06-19 14:23:08,012.012 INFO    ] 200
[2026-06-19 14:23:08,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:23:08,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:23:08,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:23:08,100.100 INFO    ] No camera update needed
[2026-06-19 14:23:08,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:23:08,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:23:08,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:23:08,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:23:10,157.157 INFO    ] ================================================
[2026-06-19 14:23:10,173.173 INFO    ] Launching Daemon at Fri Jun 19 14:23:10 IST 2026
[2026-06-19 14:23:10,184.184 INFO    ] ================================================
[2026-06-19 14:23:10,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:23:10
[2026-06-19 14:23:11,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:23:11,619.619 INFO    ] Initializing speech engine...
[2026-06-19 14:23:11,631.631 INFO    ] 2026-06-19 14:23:11
[2026-06-19 14:23:11,896.896 INFO    ] 2026-06-19 14:23:11
[2026-06-19 14:23:11,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:23:12,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:23:12,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:23:12,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:23:12,393.393 INFO    ] time= 19/06/2026 14:23:12
[2026-06-19 14:23:12,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:23:12,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:23:12,597.597 INFO    ] No existing commands found in stream
[2026-06-19 14:23:17,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:23:17,621.621 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 14:23:21,101.101 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:23:21,104.104 INFO    ] Checking for system updates...
[2026-06-19 14:23:21,141.141 INFO    ] 200
[2026-06-19 14:23:21,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:23:21,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:23:21,200.200 INFO    ] No update needed
[2026-06-19 14:23:21,203.203 INFO    ] Checking for camera pi updates...
[2026-06-19 14:23:21,240.240 INFO    ] 200
[2026-06-19 14:23:21,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:23:21,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:23:21,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:23:21,330.330 INFO    ] No camera update needed
[2026-06-19 14:23:21,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:23:21,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:23:21,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:23:21,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:23:23,386.386 INFO    ] ================================================
[2026-06-19 14:23:23,401.401 INFO    ] Launching Daemon at Fri Jun 19 14:23:23 IST 2026
[2026-06-19 14:23:23,412.412 INFO    ] ================================================
[2026-06-19 14:23:24,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:23:24
[2026-06-19 14:23:24,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:23:25,052.052 INFO    ] Initializing speech engine...
[2026-06-19 14:23:25,066.066 INFO    ] 2026-06-19 14:23:25
[2026-06-19 14:23:25,348.348 INFO    ] 2026-06-19 14:23:25
[2026-06-19 14:23:25,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:23:25,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:23:25,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:23:25,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:23:25,815.815 INFO    ] time= 19/06/2026 14:23:25
[2026-06-19 14:23:25,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:23:25,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:23:26,053.053 INFO    ] No existing commands found in stream
[2026-06-19 14:23:31,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:23:31,073.073 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 14:23:35,064.064 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:23:35,067.067 INFO    ] Checking for system updates...
[2026-06-19 14:23:35,103.103 INFO    ] 200
[2026-06-19 14:23:35,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:23:35,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:23:35,161.161 INFO    ] No update needed
[2026-06-19 14:23:35,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 14:23:35,197.197 INFO    ] 200
[2026-06-19 14:23:35,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:23:35,240.240 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:23:35,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:23:35,282.282 INFO    ] No camera update needed
[2026-06-19 14:23:35,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:23:35,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:23:35,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:23:35,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:23:37,337.337 INFO    ] ================================================
[2026-06-19 14:23:37,352.352 INFO    ] Launching Daemon at Fri Jun 19 14:23:37 IST 2026
[2026-06-19 14:23:37,363.363 INFO    ] ================================================
[2026-06-19 14:23:37,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:23:37
[2026-06-19 14:23:38,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:23:38,767.767 INFO    ] Initializing speech engine...
[2026-06-19 14:23:38,775.775 INFO    ] 2026-06-19 14:23:38
[2026-06-19 14:23:39,052.052 INFO    ] 2026-06-19 14:23:39
[2026-06-19 14:23:39,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:23:39,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:23:39,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:23:39,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:23:39,488.488 INFO    ] time= 19/06/2026 14:23:39
[2026-06-19 14:23:39,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:23:39,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:23:39,675.675 INFO    ] No existing commands found in stream
[2026-06-19 14:23:44,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:23:44,690.690 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-19 14:23:46,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:23:46,350.350 INFO    ] Checking for system updates...
[2026-06-19 14:23:46,401.401 INFO    ] 200
[2026-06-19 14:23:46,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 14:23:46,407.407 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 14:23:46,409.409 INFO    ] Checking for camera pi updates...
[2026-06-19 14:23:46,447.447 INFO    ] 200
[2026-06-19 14:23:46,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 14:23:46,452.452 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 14:23:46,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:23:46,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:23:46,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:23:46,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:23:48,513.513 INFO    ] ================================================
[2026-06-19 14:23:48,529.529 INFO    ] Launching Daemon at Fri Jun 19 14:23:48 IST 2026
[2026-06-19 14:23:48,539.539 INFO    ] ================================================
[2026-06-19 14:23:49,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:23:49
[2026-06-19 14:23:49,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:23:50,062.062 INFO    ] Initializing speech engine...
[2026-06-19 14:23:50,068.068 INFO    ] 2026-06-19 14:23:50
[2026-06-19 14:23:50,318.318 INFO    ] 2026-06-19 14:23:50
[2026-06-19 14:23:50,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:23:50,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:23:50,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:23:50,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:23:50,815.815 INFO    ] time= 19/06/2026 14:23:50
[2026-06-19 14:23:50,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:23:50,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:23:51,022.022 INFO    ] No existing commands found in stream
[2026-06-19 14:23:55,727.727 INFO    ] Received new command: ID=1781859235673-0
[2026-06-19 14:23:55,730.730 INFO    ] process_and_cleanup_command: msg_id=1781859235673-0
[2026-06-19 14:23:55,732.732 INFO    ] is_command_expired: timestamp=2026-06-19T08:53:55.158Z, expiry=30s
[2026-06-19 14:23:55,820.820 INFO    ] Command removed from stream: 1781859235673-0. returning for processing...
[2026-06-19 14:23:55,822.822 INFO    ] ***** get_valid_command
[2026-06-19 14:23:55,824.824 INFO    ] {'timeout': '10', 'source': 'webapp', 'data': '{"request_id":"start-order-1781859235158-4ryju3hyi","orderId":"TM07202501260619142314594","is_vending":false}', 'command': 'start-order', 'timestamp': '2026-06-19T08:53:55.158Z'}
[2026-06-19 14:23:55,827.827 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781859235158-4ryju3hyi', 'is_vending': False, 'orderId': 'TM07202501260619142314594'}
[2026-06-19 14:23:55,830.830 INFO    ] Handling start order...
[2026-06-19 14:23:55,832.832 INFO    ] handle_start_order_command
[2026-06-19 14:23:55,838.838 INFO    ] _send_start_order_success: request_id=start-order-1781859235158-4ryju3hyi, order_id=TM07202501260619142314594
[2026-06-19 14:23:55,841.841 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-19 14:23:55,898.898 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781859235847-0
[2026-06-19 14:23:55,900.900 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-19 14:23:55,903.903 INFO    ] Checking for system updates...
[2026-06-19 14:23:55,946.946 INFO    ] 200
[2026-06-19 14:23:55,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:23:56,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:23:56,011.011 INFO    ] No update needed
[2026-06-19 14:23:56,014.014 INFO    ] Checking for camera pi updates...
[2026-06-19 14:23:56,052.052 INFO    ] 200
[2026-06-19 14:23:56,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:23:56,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:23:56,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:23:56,153.153 INFO    ] No camera update needed
[2026-06-19 14:23:56,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:23:56,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:23:56,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:23:56,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:23:58,208.208 INFO    ] ================================================
[2026-06-19 14:23:58,227.227 INFO    ] Launching Daemon at Fri Jun 19 14:23:58 IST 2026
[2026-06-19 14:23:58,238.238 INFO    ] ================================================
[2026-06-19 14:23:58,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:23:58
[2026-06-19 14:23:59,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:23:59,720.720 INFO    ] Initializing speech engine...
[2026-06-19 14:23:59,731.731 INFO    ] 2026-06-19 14:23:59
[2026-06-19 14:24:00,019.019 INFO    ] 2026-06-19 14:23:59
[2026-06-19 14:24:00,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:24:00,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:24:00,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:24:00,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:24:00,567.567 INFO    ] time= 19/06/2026 14:24:00
[2026-06-19 14:24:00,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:24:00,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:24:00,742.742 INFO    ] Found 2 existing command(s) in stream
[2026-06-19 14:24:00,808.808 INFO    ] Checking historical command: ID=1781859235847-0
[2026-06-19 14:24:00,835.835 INFO    ] process_and_cleanup_command: msg_id=1781859235847-0
[2026-06-19 14:24:00,901.901 INFO    ] is_command_expired: timestamp=2026-06-19T08:53:55.839539Z, expiry=30s
[2026-06-19 14:24:01,160.160 INFO    ] Command removed from stream: 1781859235847-0. returning for processing...
[2026-06-19 14:24:01,187.187 INFO    ] ***** get_valid_command
[2026-06-19 14:24:01,194.194 INFO    ] {'metadata_request_id': 'start-order-1781859235158-4ryju3hyi', 'status': 'success', 'timestamp': '2026-06-19T08:53:55.839539Z', 'metadata_order_id': 'TM07202501260619142314594', 'message_type': 'command_response', 'message': 'start-order success', 'imei': 'TM07202501'}
[2026-06-19 14:24:01,245.245 INFO    ] Checking historical command: ID=1781859237344-0
[2026-06-19 14:24:01,250.250 INFO    ] process_and_cleanup_command: msg_id=1781859237344-0
[2026-06-19 14:24:01,253.253 INFO    ] is_command_expired: timestamp=2026-06-19T08:53:56.846Z, expiry=30s
[2026-06-19 14:24:01,444.444 INFO    ] Command removed from stream: 1781859237344-0. returning for processing...
[2026-06-19 14:24:01,449.449 INFO    ] ***** get_valid_command
[2026-06-19 14:24:01,456.456 INFO    ] {'source': 'webapp', 'timeout': '60', 'data': '{"request_id":"process-order-1781859236846-0nwre42qi","orderId":"TM07202501260619142314594","is_vending":false,"accessCode":"40510919"}', 'command': 'process-order', 'timestamp': '2026-06-19T08:53:56.846Z'}
[2026-06-19 14:24:01,464.464 INFO    ] ***** Parsed command data: {'request_id': 'process-order-1781859236846-0nwre42qi', 'is_vending': False, 'orderId': 'TM07202501260619142314594', 'accessCode': '40510919'}
[2026-06-19 14:24:01,472.472 INFO    ] Handling process order...
[2026-06-19 14:24:01,480.480 INFO    ] Processing process-order command...
[2026-06-19 14:24:01,488.488 INFO    ] 🔍 Lock file Order ID: TM07202501260619142314594, TS: 2026-06-19 14:23:55
[2026-06-19 14:24:01,508.508 INFO    ] ✅ Order lock valid for TM07202501260619142314594
[2026-06-19 14:24:01,515.515 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-19 14:24:01,520.520 INFO    ] processing access code 40510919 for order TM07202501260619142314594
[2026-06-19 14:24:01,529.529 INFO    ] 🔍 Lock file Order ID: TM07202501260619142314594, TS: 2026-06-19 14:23:55
[2026-06-19 14:24:01,538.538 INFO    ] ✅ Order lock valid for TM07202501260619142314594
[2026-06-19 14:24:01,545.545 INFO    ] 2026-06-19 14:24:01
[2026-06-19 14:24:01,606.606 INFO    ] 200
[2026-06-19 14:24:01,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:24:01,618.618 INFO    ] 40510919
[2026-06-19 14:24:01,624.624 INFO    ] 2026-06-19 14:24:01
[2026-06-19 14:24:01,629.629 INFO    ] session id :655846625
[2026-06-19 14:24:01,634.634 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=40510919&imei=TM07202501&session_id=655846625
[2026-06-19 14:24:02,973.973 INFO    ] 200
[2026-06-19 14:24:02,979.979 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"sku_total": 20, "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "skuid": "112220", "unit_price": 20, "offer_id": "", "name": "Snickers Chocolate Bar 22g", "offer_desc": "", "door_id": "2", "mrp": "20", "qty": 1, "tray_id": "43"}], "bill_amount": "20", "mobile": "9035351758", "access_code": "40510919", "invoice_bill": "20", "order_id": "TM07202501260619142314594"}}
[2026-06-19 14:24:02,996.996 INFO    ] 20
[2026-06-19 14:24:03,009.009 INFO    ] TM07202501260619142314594
[2026-06-19 14:24:03,050.050 INFO    ] 9035351758
[2026-06-19 14:24:03,073.073 INFO    ] 2026-06-19 14:24:03
[2026-06-19 14:24:03,081.081 INFO    ] Door Opening for user mobile ending with  one seven five eight 
[2026-06-19 14:24:03,090.090 INFO    ] Door Opening for user mobile ending with  one seven five eight 
[2026-06-19 14:24:03,123.123 INFO    ] 13e0e3dbdd3c48b15f5bdcfcb8e2df1b
[2026-06-19 14:24:03,146.146 INFO    ] 2026-06-19 14:24:03
[2026-06-19 14:24:03,160.160 INFO    ] playing audio file
[2026-06-19 14:24:03,208.208 INFO    ] 2026-06-19 14:24:03
[2026-06-19 14:24:03,252.252 INFO    ] 2026-06-19 14:24:03
[2026-06-19 14:24:03,267.267 INFO    ] publish_status: order_id=TM07202501260619142314594
[2026-06-19 14:24:03,270.270 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619142314594
[2026-06-19 14:24:03,416.416 INFO    ] [publish_status] Message added to stream with ID: 1781859243331-0
[2026-06-19 14:24:03,429.429 INFO    ] Published to order:TM07202501260619142314594: {'server_status': 'order-started', 'timestamp': '2026-06-19T08:54:03.264810Z', 'server_response': '{"msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"skuid": "112220", "door_id": "2", "qty": 1, "offer_id": "", "tray_id": "43", "mrp": "20", "unit_price": 20, "offer_desc": "", "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "sku_total": 20, "name": "Snickers Chocolate Bar 22g"}], "mobile": "9035351758", "access_code": "40510919", "bill_amount": "20", "invoice_bill": "20", "order_id": "TM07202501260619142314594"}, "rstatus": true}', 'order_id': 'TM07202501260619142314594'} (ID: 1781859243331-0)
[2026-06-19 14:24:03,945.945 INFO    ] {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'status': True, 'data': {'proposed_sku_json': [{'skuid': '112220', 'door_id': '2', 'qty': 1, 'offer_id': '', 'tray_id': '43', 'mrp': '20', 'unit_price': 20, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'sku_total': 20, 'name': 'Snickers Chocolate Bar 22g'}], 'mobile': '9035351758', 'access_code': '40510919', 'bill_amount': '20', 'invoice_bill': '20', 'order_id': 'TM07202501260619142314594'}, 'rstatus': True}, 'order_id': 'TM07202501260619142314594'}
[2026-06-19 14:24:03,948.948 INFO    ] 200
[2026-06-19 14:24:03,950.950 INFO    ] {"data":{"server_status":"order-started","server_response":{"msg":"Order Data","status":true,"data":{"proposed_sku_json":[{"skuid":"112220","door_id":"2","qty":1,"offer_id":"","tray_id":"43","mrp":"20","unit_price":20,"offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/112220-2513.jpg","sku_total":20,"name":"Snickers Chocolate Bar 22g"}],"mobile":"9035351758","access_code":"40510919","bill_amount":"20","invoice_bill":"20","order_id":"TM07202501260619142314594"},"rstatus":true},"order_id":"TM07202501260619142314594"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 14:24:03,953.953 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'order-started', 'server_response': {'msg': 'Order Data', 'status': True, 'rstatus': True, 'data': {'proposed_sku_json': [{'skuid': '112220', 'unit_price': 20, 'door_id': '2', 'sku_total': 20, 'offer_id': '', 'tray_id': '43', 'qty': 1, 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'offer_desc': '', 'name': 'Snickers Chocolate Bar 22g'}], 'mobile': '9035351758', 'access_code': '40510919', 'bill_amount': '20', 'invoice_bill': '20', 'order_id': 'TM07202501260619142314594'}}, 'order_id': 'TM07202501260619142314594'}}
[2026-06-19 14:24:03,955.955 INFO    ] 2026-06-19 14:24:03
[2026-06-19 14:24:04,005.005 INFO    ] 200
[2026-06-19 14:24:04,008.008 INFO    ] True
[2026-06-19 14:24:04,166.166 INFO    ] 200
[2026-06-19 14:24:04,169.169 INFO    ] {"rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "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": ""}}
[2026-06-19 14:24:04,172.172 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'status': 'False', 'voiceNote': 'Please Wait'}
[2026-06-19 14:24:04,174.174 INFO    ] *** process_order ***
[2026-06-19 14:24:05,383.383 INFO    ] 200
[2026-06-19 14:24:05,386.386 INFO    ] {"rstatus": true, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True", "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": ""}}
[2026-06-19 14:24:05,388.388 INFO    ] {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'status': 'True', 'delay': 0, 'voiceNote': 'Please Wait'}
[2026-06-19 14:24:05,390.390 INFO    ] *** process_order ***
[2026-06-19 14:24:05,393.393 INFO    ] publish_status: order_id=TM07202501260619142314594
[2026-06-19 14:24:05,396.396 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619142314594
[2026-06-19 14:24:05,460.460 INFO    ] [publish_status] Message added to stream with ID: 1781859245408-0
[2026-06-19 14:24:05,463.463 INFO    ] Published to order:TM07202501260619142314594: {'server_status': 'doorOpened', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "SubHeader": "You can pull the door now.", "UI_Header": "", "Header": " Your order is under process  "}, "status": "True", "delay": 0, "voiceNote": "Door is open..."}', 'order_id': 'TM07202501260619142314594'} (ID: 1781859245408-0)
[2026-06-19 14:24:06,521.521 INFO    ] 2026-06-19 14:24:06
[2026-06-19 14:24:06,524.524 INFO    ] publish_status: order_id=TM07202501260619142314594
[2026-06-19 14:24:06,527.527 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619142314594
[2026-06-19 14:24:06,611.611 INFO    ] [publish_status] Message added to stream with ID: 1781859246558-0
[2026-06-19 14:24:06,613.613 INFO    ] Published to order:TM07202501260619142314594: {'server_status': 'processOrder', 'timestamp': '2026-06-19T08:54:06.523087Z', 'server_response': '{"SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "rstatus": true, "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "UI_Header": "", "Header": " Your order is under process  "}, "status": "True", "delay": 0, "voiceNote": "Please Wait"}', 'order_id': 'TM07202501260619142314594'} (ID: 1781859246558-0)
[2026-06-19 14:24:06,760.760 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'status': 'True', 'delay': 0, 'voiceNote': 'Please Wait'}, 'order_id': 'TM07202501260619142314594'}
[2026-06-19 14:24:06,763.763 INFO    ] 200
[2026-06-19 14:24:06,765.765 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"rstatus":true,"SectionMain":{"Header":"Processing Order"},"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","UI_Header":"","Header":" Your order is under process  "},"status":"true","delay":0,"voiceNote":"Please Wait"},"order_id":"TM07202501260619142314594"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 14:24:06,768.768 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'processOrder', 'server_response': {'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Header': ' Your order is under process  ', 'Note': ''}, 'status': 'true', 'delay': 0, 'voiceNote': 'Please Wait'}, 'order_id': 'TM07202501260619142314594'}}
[2026-06-19 14:24:06,771.771 INFO    ] 2026-06-19 14:24:06
[2026-06-19 14:24:06,773.773 INFO    ] None
[2026-06-19 14:24:06,776.776 INFO    ] Opening Door now
[2026-06-19 14:24:06,778.778 INFO    ] Opening Door now
[2026-06-19 14:24:06,781.781 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-19 14:24:06,784.784 INFO    ] 2026-06-19 14:24:06
[2026-06-19 14:24:06,786.786 INFO    ] playing audio file
[2026-06-19 14:24:06,806.806 INFO    ] 2026-06-19 14:24:06
[2026-06-19 14:24:06,809.809 INFO    ] 2026-06-19 14:24:06
[2026-06-19 14:24:09,885.885 INFO    ] 200
[2026-06-19 14:24:09,888.888 INFO    ] {"rstatus": false, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}]}, "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"}}
[2026-06-19 14:24:09,891.891 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Snickers Chocolate Bar 22g', 'qty': 1}]}, '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', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'status': 'False', 'voiceNote': 'Door 2 is open now'}
[2026-06-19 14:24:12,953.953 INFO    ] 200
[2026-06-19 14:24:12,956.956 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}]}, "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"}}
[2026-06-19 14:24:12,959.959 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Snickers Chocolate Bar 22g', 'qty': 1}]}, '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', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-06-19 14:24:16,024.024 INFO    ] 200
[2026-06-19 14:24:16,026.026 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}]}, "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"}}
[2026-06-19 14:24:16,029.029 INFO    ] Please close door 2
[2026-06-19 14:24:16,032.032 INFO    ] Please close door 2
[2026-06-19 14:24:16,034.034 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-19 14:24:16,037.037 INFO    ] 2026-06-19 14:24:16
[2026-06-19 14:24:16,039.039 INFO    ] playing audio file
[2026-06-19 14:24:16,057.057 INFO    ] 2026-06-19 14:24:16
[2026-06-19 14:24:16,061.061 INFO    ] publish_status: order_id=TM07202501260619142314594
[2026-06-19 14:24:16,063.063 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619142314594
[2026-06-19 14:24:16,131.131 INFO    ] [publish_status] Message added to stream with ID: 1781859256079-0
[2026-06-19 14:24:16,134.134 INFO    ] Published to order:TM07202501260619142314594: {'server_status': 'OrderStatus', 'timestamp': '2026-06-19T08:54:16.059247Z', 'server_response': '{"error": {"umessage": "In Progress", "code": 20001, "tmessage": "In Progress", "data": {}}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"name": "Snickers Chocolate Bar 22g", "qty": 1}]}, "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", "UI_Header": "DOOR 2\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 2"}, "status": "False", "voiceNote": "Please close door 2"}', 'order_id': 'TM07202501260619142314594'} (ID: 1781859256079-0)
[2026-06-19 14:24:16,623.623 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Snickers Chocolate Bar 22g', 'qty': 1}]}, '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', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'status': 'False', 'voiceNote': 'Please close door 2'}, 'order_id': 'TM07202501260619142314594'}
[2026-06-19 14:24:16,626.626 INFO    ] 200
[2026-06-19 14:24:16,629.629 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"name":"Snickers Chocolate Bar 22g","qty":1}]},"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","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Please Close Door 2"},"status":"false","voiceNote":"Please close door 2"},"order_id":"TM07202501260619142314594"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 14:24:16,632.632 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'OrderStatus', 'server_response': {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': []}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}]}, 'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2', 'Note': 'Please Close the door after picking up products'}, 'status': 'false', 'voiceNote': 'Please close door 2'}, 'order_id': 'TM07202501260619142314594'}}
[2026-06-19 14:24:16,636.636 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Snickers Chocolate Bar 22g', 'qty': 1}]}, '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', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-06-19 14:24:19,687.687 INFO    ] 200
[2026-06-19 14:24:19,690.690 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}]}, "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"}}
[2026-06-19 14:24:19,693.693 INFO    ] {'error': {'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress', 'data': {}}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'name': 'Snickers Chocolate Bar 22g', 'qty': 1}]}, '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', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 2'}, 'status': 'False', 'voiceNote': 'Please close door 2'}
[2026-06-19 14:24:22,756.756 INFO    ] 200
[2026-06-19 14:24:22,758.758 INFO    ] {"rstatus": true, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "status": "True", "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"}}
[2026-06-19 14:24:22,762.762 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, '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', 'UI_Header': '', 'Header': ' Order is complete '}, 'status': 'True', 'delay': 100, 'voiceNote': 'Transaction Completed'}
[2026-06-19 14:24:22,764.764 INFO    ] 2026-06-19 14:24:22
[2026-06-19 14:24:22,767.767 INFO    ] Order Completed 
[2026-06-19 14:24:22,770.770 INFO    ] Order Completed 
[2026-06-19 14:24:22,773.773 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-19 14:24:22,776.776 INFO    ] 2026-06-19 14:24:22
[2026-06-19 14:24:22,778.778 INFO    ] playing audio file
[2026-06-19 14:24:22,798.798 INFO    ] 2026-06-19 14:24:22
[2026-06-19 14:24:22,801.801 INFO    ] {'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, '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', 'UI_Header': '', 'Header': ' Order is complete '}, 'status': 'True', 'delay': 100, 'voiceNote': 'Transaction Completed'}
[2026-06-19 14:24:22,804.804 INFO    ] 2026-06-19 14:24:22
[2026-06-19 14:24:23,338.338 INFO    ] 200
[2026-06-19 14:24:23,341.341 INFO    ] {"rstatus": true, "anomaly": 0, "orderId": "TM07202501260619142314594", "total_amount": 20.0, "logic": "WBL", "res": "True", "skus": [{"sku_total": 20.0, "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "door_id": "", "qty": 1, "mrp": "20", "name": "Snickers Chocolate Bar 22g per peice", "skuid": "112220", "tray_id": "43", "unit_price": "20"}]}
[2026-06-19 14:24:23,344.344 INFO    ] {'res': 'True', 'anomaly': 0, 'rstatus': True, 'logic': 'WBL', 'skus': [{'skuid': '112220', 'door_id': '', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'sku_total': 20.0, 'name': 'Snickers Chocolate Bar 22g per peice'}], 'orderId': 'TM07202501260619142314594', 'total_amount': 20.0}
[2026-06-19 14:24:23,346.346 INFO    ] {'res': 'True', 'anomaly': 0, 'rstatus': True, 'logic': 'WBL', 'skus': [{'skuid': '112220', 'door_id': '', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'sku_total': 20.0, 'name': 'Snickers Chocolate Bar 22g per peice'}], 'orderId': 'TM07202501260619142314594', 'total_amount': 20.0}
[2026-06-19 14:24:23,349.349 INFO    ] 2026-06-19 14:24:23
[2026-06-19 14:24:23,351.351 INFO    ] 2026-06-19 14:24:23
[2026-06-19 14:24:23,354.354 INFO    ] 20
[2026-06-19 14:24:23,356.356 INFO    ] 2026-06-19 14:24:23
[2026-06-19 14:24:23,359.359 INFO    ] 2026-06-19 14:24:23
[2026-06-19 14:24:23,361.361 INFO    ]  Your Bill Amount is 20
[2026-06-19 14:24:23,364.364 INFO    ]  Your Bill Amount is 20
[2026-06-19 14:24:23,366.366 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-19 14:24:23,369.369 INFO    ] 2026-06-19 14:24:23
[2026-06-19 14:24:23,371.371 INFO    ] playing audio file
[2026-06-19 14:24:23,392.392 INFO    ] 2026-06-19 14:24:23
[2026-06-19 14:24:23,395.395 INFO    ] 2026-06-19 14:24:23
[2026-06-19 14:24:23,398.398 INFO    ] publish_status: order_id=TM07202501260619142314594
[2026-06-19 14:24:23,401.401 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619142314594
[2026-06-19 14:24:23,479.479 INFO    ] [publish_status] Message added to stream with ID: 1781859263412-0
[2026-06-19 14:24:23,482.482 INFO    ] Published to order:TM07202501260619142314594: {'server_status': 'invoiceOrder', 'timestamp': '2026-06-19T08:54:23.396763Z', 'server_response': '{"res": "True", "anomaly": 0, "rstatus": true, "logic": "WBL", "skus": [{"skuid": "112220", "door_id": "", "qty": 1, "tray_id": "43", "unit_price": "20", "mrp": "20", "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "sku_total": 20.0, "name": "Snickers Chocolate Bar 22g per peice"}], "orderId": "TM07202501260619142314594", "total_amount": 20.0}', 'order_id': 'TM07202501260619142314594'} (ID: 1781859263412-0)
[2026-06-19 14:24:24,027.027 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'res': 'True', 'anomaly': 0, 'rstatus': True, 'logic': 'WBL', 'skus': [{'skuid': '112220', 'door_id': '', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'sku_total': 20.0, 'name': 'Snickers Chocolate Bar 22g per peice'}], 'orderId': 'TM07202501260619142314594', 'total_amount': 20.0}, 'order_id': 'TM07202501260619142314594'}
[2026-06-19 14:24:24,031.031 INFO    ] 200
[2026-06-19 14:24:24,034.034 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"res":"true","anomaly":0,"rstatus":true,"logic":"WBL","skus":[{"skuid":"112220","door_id":"","qty":1,"tray_id":"43","unit_price":"20","mrp":"20","image_url":"https:\/\/images.tinymart.in\/product\/112220-2513.jpg","sku_total":20,"name":"Snickers Chocolate Bar 22g per peice"}],"orderId":"TM07202501260619142314594","total_amount":20},"order_id":"TM07202501260619142314594"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 14:24:24,038.038 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'skus': [{'skuid': '112220', 'door_id': '', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'sku_total': 20, 'name': 'Snickers Chocolate Bar 22g per peice'}], 'rstatus': True, 'logic': 'WBL', 'total_amount': 20, 'orderId': 'TM07202501260619142314594', 'anomaly': 0}, 'order_id': 'TM07202501260619142314594'}}
[2026-06-19 14:24:24,042.042 INFO    ] {'response': {'msg': 'order updated successfully', 'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully'}, 'data': {'server_status': 'invoiceOrder', 'server_response': {'res': 'true', 'skus': [{'skuid': '112220', 'door_id': '', 'qty': 1, 'tray_id': '43', 'unit_price': '20', 'mrp': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'sku_total': 20, 'name': 'Snickers Chocolate Bar 22g per peice'}], 'rstatus': True, 'logic': 'WBL', 'total_amount': 20, 'orderId': 'TM07202501260619142314594', 'anomaly': 0}, 'order_id': 'TM07202501260619142314594'}}
[2026-06-19 14:24:24,046.046 INFO    ] 2026-06-19 14:24:24
[2026-06-19 14:24:26,800.800 INFO    ] 200
[2026-06-19 14:24:26,803.803 INFO    ] {"tray_sync": [], "tray_synced": ["TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594", "TM07202501260619142314594"], "orders_data": [], "orders_synced": [], "order_items_synced": ["TM07202501260619142314594_0"], "orders": [], "status": true, "orders_data_synced": [], "order_items": []}
[2026-06-19 14:24:26,807.807 INFO    ] 2026-06-19 14:24:26
[2026-06-19 14:24:26,924.924 INFO    ] 200
[2026-06-19 14:24:26,928.928 INFO    ] True
[2026-06-19 14:24:26,931.931 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260619142314594
[2026-06-19 14:24:26,936.936 INFO    ] start order file deleted
[2026-06-19 14:24:26,939.939 INFO    ] Checking for system updates...
[2026-06-19 14:24:26,979.979 INFO    ] 200
[2026-06-19 14:24:26,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:24:27,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:24:27,067.067 INFO    ] No update needed
[2026-06-19 14:24:27,070.070 INFO    ] Checking for camera pi updates...
[2026-06-19 14:24:27,108.108 INFO    ] 200
[2026-06-19 14:24:27,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:24:27,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:24:27,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:24:27,200.200 INFO    ] No camera update needed
[2026-06-19 14:24:27,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:24:27,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:24:27,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:24:27,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:24:29,265.265 INFO    ] ================================================
[2026-06-19 14:24:29,281.281 INFO    ] Launching Daemon at Fri Jun 19 14:24:29 IST 2026
[2026-06-19 14:24:29,292.292 INFO    ] ================================================
[2026-06-19 14:24:29,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:24:29
[2026-06-19 14:24:30,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:24:30,826.826 INFO    ] Initializing speech engine...
[2026-06-19 14:24:30,839.839 INFO    ] 2026-06-19 14:24:30
[2026-06-19 14:24:31,134.134 INFO    ] 2026-06-19 14:24:31
[2026-06-19 14:24:31,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:24:31,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:24:31,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:24:31,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:24:31,692.692 INFO    ] time= 19/06/2026 14:24:31
[2026-06-19 14:24:31,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:24:31,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:24:31,853.853 INFO    ] No existing commands found in stream
[2026-06-19 14:24:36,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:24:36,892.892 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 14:24:39,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:24:39,760.760 INFO    ] Checking for system updates...
[2026-06-19 14:24:39,801.801 INFO    ] 200
[2026-06-19 14:24:39,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:24:39,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:24:39,867.867 INFO    ] No update needed
[2026-06-19 14:24:39,869.869 INFO    ] Checking for camera pi updates...
[2026-06-19 14:24:39,903.903 INFO    ] 200
[2026-06-19 14:24:39,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:24:39,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:24:40,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:24:40,005.005 INFO    ] No camera update needed
[2026-06-19 14:24:40,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:24:40,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:24:40,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:24:40,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:24:42,060.060 INFO    ] ================================================
[2026-06-19 14:24:42,076.076 INFO    ] Launching Daemon at Fri Jun 19 14:24:42 IST 2026
[2026-06-19 14:24:42,087.087 INFO    ] ================================================
[2026-06-19 14:24:42,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:24:42
[2026-06-19 14:24:43,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:24:43,740.740 INFO    ] Initializing speech engine...
[2026-06-19 14:24:43,753.753 INFO    ] 2026-06-19 14:24:43
[2026-06-19 14:24:44,036.036 INFO    ] 2026-06-19 14:24:44
[2026-06-19 14:24:44,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:24:44,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:24:44,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:24:44,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:24:44,574.574 INFO    ] time= 19/06/2026 14:24:44
[2026-06-19 14:24:44,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:24:44,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:24:44,727.727 INFO    ] No existing commands found in stream
[2026-06-19 14:24:49,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:24:49,746.746 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 14:24:53,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:24:53,813.813 INFO    ] Checking for system updates...
[2026-06-19 14:24:53,850.850 INFO    ] 200
[2026-06-19 14:24:53,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:24:53,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:24:53,918.918 INFO    ] No update needed
[2026-06-19 14:24:53,920.920 INFO    ] Checking for camera pi updates...
[2026-06-19 14:24:53,955.955 INFO    ] 200
[2026-06-19 14:24:53,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:24:54,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:24:54,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:24:54,056.056 INFO    ] No camera update needed
[2026-06-19 14:24:54,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:24:54,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:24:54,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:24:54,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:24:56,115.115 INFO    ] ================================================
[2026-06-19 14:24:56,130.130 INFO    ] Launching Daemon at Fri Jun 19 14:24:56 IST 2026
[2026-06-19 14:24:56,140.140 INFO    ] ================================================
[2026-06-19 14:24:56,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:24:56
[2026-06-19 14:24:57,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:24:57,563.563 INFO    ] Initializing speech engine...
[2026-06-19 14:24:57,572.572 INFO    ] 2026-06-19 14:24:57
[2026-06-19 14:24:57,819.819 INFO    ] 2026-06-19 14:24:57
[2026-06-19 14:24:57,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:24:58,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:24:58,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:24:58,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:24:58,291.291 INFO    ] time= 19/06/2026 14:24:58
[2026-06-19 14:24:58,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:24:58,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:24:58,534.534 INFO    ] No existing commands found in stream
[2026-06-19 14:25:03,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:25:03,550.550 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 14:25:06,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:25:06,271.271 INFO    ] Checking for system updates...
[2026-06-19 14:25:06,310.310 INFO    ] 200
[2026-06-19 14:25:06,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:06,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:25:06,375.375 INFO    ] No update needed
[2026-06-19 14:25:06,377.377 INFO    ] Checking for camera pi updates...
[2026-06-19 14:25:06,418.418 INFO    ] 200
[2026-06-19 14:25:06,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:06,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:25:06,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:25:06,509.509 INFO    ] No camera update needed
[2026-06-19 14:25:06,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:25:06,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:25:06,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:25:06,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:25:08,565.565 INFO    ] ================================================
[2026-06-19 14:25:08,580.580 INFO    ] Launching Daemon at Fri Jun 19 14:25:08 IST 2026
[2026-06-19 14:25:08,591.591 INFO    ] ================================================
[2026-06-19 14:25:09,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:25:09
[2026-06-19 14:25:09,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:25:10,027.027 INFO    ] Initializing speech engine...
[2026-06-19 14:25:10,032.032 INFO    ] 2026-06-19 14:25:10
[2026-06-19 14:25:10,277.277 INFO    ] 2026-06-19 14:25:10
[2026-06-19 14:25:10,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:25:10,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:25:10,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:25:10,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:25:10,775.775 INFO    ] time= 19/06/2026 14:25:10
[2026-06-19 14:25:10,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:25:10,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:25:10,974.974 INFO    ] No existing commands found in stream
[2026-06-19 14:25:16,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:25:16,003.003 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 14:25:17,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:25:17,799.799 INFO    ] Checking for system updates...
[2026-06-19 14:25:17,836.836 INFO    ] 200
[2026-06-19 14:25:17,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:17,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:25:17,901.901 INFO    ] No update needed
[2026-06-19 14:25:17,903.903 INFO    ] Checking for camera pi updates...
[2026-06-19 14:25:17,938.938 INFO    ] 200
[2026-06-19 14:25:17,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:17,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:25:18,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:25:18,030.030 INFO    ] No camera update needed
[2026-06-19 14:25:18,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:25:18,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:25:18,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:25:18,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:25:20,086.086 INFO    ] ================================================
[2026-06-19 14:25:20,101.101 INFO    ] Launching Daemon at Fri Jun 19 14:25:20 IST 2026
[2026-06-19 14:25:20,112.112 INFO    ] ================================================
[2026-06-19 14:25:20,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:25:20
[2026-06-19 14:25:21,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:25:21,749.749 INFO    ] Initializing speech engine...
[2026-06-19 14:25:21,763.763 INFO    ] 2026-06-19 14:25:21
[2026-06-19 14:25:22,075.075 INFO    ] 2026-06-19 14:25:22
[2026-06-19 14:25:22,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:25:22,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:25:22,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:25:22,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:25:22,584.584 INFO    ] time= 19/06/2026 14:25:22
[2026-06-19 14:25:22,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:25:22,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:25:22,770.770 INFO    ] No existing commands found in stream
[2026-06-19 14:25:27,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:25:27,810.810 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 14:25:31,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:25:31,907.907 INFO    ] Checking for system updates...
[2026-06-19 14:25:31,943.943 INFO    ] 200
[2026-06-19 14:25:31,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:31,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:25:32,000.000 INFO    ] No update needed
[2026-06-19 14:25:32,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 14:25:32,041.041 INFO    ] 200
[2026-06-19 14:25:32,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:32,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:25:32,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:25:32,127.127 INFO    ] No camera update needed
[2026-06-19 14:25:32,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:25:32,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:25:32,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:25:32,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:25:34,190.190 INFO    ] ================================================
[2026-06-19 14:25:34,205.205 INFO    ] Launching Daemon at Fri Jun 19 14:25:34 IST 2026
[2026-06-19 14:25:34,216.216 INFO    ] ================================================
[2026-06-19 14:25:34,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:25:34
[2026-06-19 14:25:35,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:25:35,658.658 INFO    ] Initializing speech engine...
[2026-06-19 14:25:35,665.665 INFO    ] 2026-06-19 14:25:35
[2026-06-19 14:25:35,915.915 INFO    ] 2026-06-19 14:25:35
[2026-06-19 14:25:35,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:25:36,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:25:36,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:25:36,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:25:36,431.431 INFO    ] time= 19/06/2026 14:25:36
[2026-06-19 14:25:36,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:25:36,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:25:36,631.631 INFO    ] No existing commands found in stream
[2026-06-19 14:25:41,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:25:41,656.656 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 14:25:45,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:25:45,890.890 INFO    ] Checking for system updates...
[2026-06-19 14:25:45,926.926 INFO    ] 200
[2026-06-19 14:25:45,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:45,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:25:45,990.990 INFO    ] No update needed
[2026-06-19 14:25:45,992.992 INFO    ] Checking for camera pi updates...
[2026-06-19 14:25:46,030.030 INFO    ] 200
[2026-06-19 14:25:46,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:46,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:25:46,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:25:46,138.138 INFO    ] No camera update needed
[2026-06-19 14:25:46,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:25:46,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:25:46,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:25:46,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:25:48,196.196 INFO    ] ================================================
[2026-06-19 14:25:48,211.211 INFO    ] Launching Daemon at Fri Jun 19 14:25:48 IST 2026
[2026-06-19 14:25:48,222.222 INFO    ] ================================================
[2026-06-19 14:25:48,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:25:48
[2026-06-19 14:25:49,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:25:49,866.866 INFO    ] Initializing speech engine...
[2026-06-19 14:25:49,874.874 INFO    ] 2026-06-19 14:25:49
[2026-06-19 14:25:50,160.160 INFO    ] 2026-06-19 14:25:50
[2026-06-19 14:25:50,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:25:50,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:25:50,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:25:50,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:25:50,697.697 INFO    ] time= 19/06/2026 14:25:50
[2026-06-19 14:25:50,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:25:50,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:25:50,851.851 INFO    ] No existing commands found in stream
[2026-06-19 14:25:55,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:25:55,871.871 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 14:25:58,828.828 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:25:58,831.831 INFO    ] Checking for system updates...
[2026-06-19 14:25:58,869.869 INFO    ] 200
[2026-06-19 14:25:58,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:58,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:25:58,930.930 INFO    ] No update needed
[2026-06-19 14:25:58,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 14:25:58,971.971 INFO    ] 200
[2026-06-19 14:25:58,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:25:59,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:25:59,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:25:59,065.065 INFO    ] No camera update needed
[2026-06-19 14:25:59,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:25:59,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:25:59,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:25:59,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:26:01,120.120 INFO    ] ================================================
[2026-06-19 14:26:01,134.134 INFO    ] Launching Daemon at Fri Jun 19 14:26:01 IST 2026
[2026-06-19 14:26:01,145.145 INFO    ] ================================================
[2026-06-19 14:26:01,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:26:01
[2026-06-19 14:26:02,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:26:02,827.827 INFO    ] Initializing speech engine...
[2026-06-19 14:26:02,838.838 INFO    ] 2026-06-19 14:26:02
[2026-06-19 14:26:03,184.184 INFO    ] 2026-06-19 14:26:03
[2026-06-19 14:26:03,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:26:03,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:26:03,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:26:03,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:26:03,716.716 INFO    ] time= 19/06/2026 14:26:03
[2026-06-19 14:26:03,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:26:03,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:26:03,902.902 INFO    ] No existing commands found in stream
[2026-06-19 14:26:08,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:26:08,917.917 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 14:26:09,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:26:09,825.825 INFO    ] Checking for system updates...
[2026-06-19 14:26:09,862.862 INFO    ] 200
[2026-06-19 14:26:09,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:09,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:26:09,926.926 INFO    ] No update needed
[2026-06-19 14:26:09,929.929 INFO    ] Checking for camera pi updates...
[2026-06-19 14:26:09,962.962 INFO    ] 200
[2026-06-19 14:26:09,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:10,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:26:10,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:26:10,165.165 INFO    ] No camera update needed
[2026-06-19 14:26:10,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:26:10,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:26:10,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:26:10,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:26:12,220.220 INFO    ] ================================================
[2026-06-19 14:26:12,235.235 INFO    ] Launching Daemon at Fri Jun 19 14:26:12 IST 2026
[2026-06-19 14:26:12,246.246 INFO    ] ================================================
[2026-06-19 14:26:12,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:26:12
[2026-06-19 14:26:13,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:26:13,677.677 INFO    ] Initializing speech engine...
[2026-06-19 14:26:13,683.683 INFO    ] 2026-06-19 14:26:13
[2026-06-19 14:26:13,976.976 INFO    ] 2026-06-19 14:26:13
[2026-06-19 14:26:14,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:26:14,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:26:14,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:26:14,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:26:14,394.394 INFO    ] time= 19/06/2026 14:26:14
[2026-06-19 14:26:14,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:26:14,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:26:14,588.588 INFO    ] No existing commands found in stream
[2026-06-19 14:26:19,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:26:19,620.620 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 14:26:23,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:26:23,200.200 INFO    ] Checking for system updates...
[2026-06-19 14:26:23,240.240 INFO    ] 200
[2026-06-19 14:26:23,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:23,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:26:23,303.303 INFO    ] No update needed
[2026-06-19 14:26:23,306.306 INFO    ] Checking for camera pi updates...
[2026-06-19 14:26:23,343.343 INFO    ] 200
[2026-06-19 14:26:23,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:23,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:26:23,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:26:23,435.435 INFO    ] No camera update needed
[2026-06-19 14:26:23,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:26:23,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:26:23,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:26:23,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:26:25,490.490 INFO    ] ================================================
[2026-06-19 14:26:25,505.505 INFO    ] Launching Daemon at Fri Jun 19 14:26:25 IST 2026
[2026-06-19 14:26:25,516.516 INFO    ] ================================================
[2026-06-19 14:26:26,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:26:26
[2026-06-19 14:26:26,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:26:26,972.972 INFO    ] Initializing speech engine...
[2026-06-19 14:26:26,990.990 INFO    ] 2026-06-19 14:26:26
[2026-06-19 14:26:27,262.262 INFO    ] 2026-06-19 14:26:27
[2026-06-19 14:26:27,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:26:27,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:26:27,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:26:27,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:26:27,656.656 INFO    ] time= 19/06/2026 14:26:27
[2026-06-19 14:26:27,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:26:27,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:26:27,763.763 INFO    ] No existing commands found in stream
[2026-06-19 14:26:32,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:26:32,778.778 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 14:26:34,733.733 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:26:34,735.735 INFO    ] Checking for system updates...
[2026-06-19 14:26:34,772.772 INFO    ] 200
[2026-06-19 14:26:34,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:34,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:26:34,842.842 INFO    ] No update needed
[2026-06-19 14:26:34,845.845 INFO    ] Checking for camera pi updates...
[2026-06-19 14:26:34,882.882 INFO    ] 200
[2026-06-19 14:26:34,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:34,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:26:34,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:26:34,969.969 INFO    ] No camera update needed
[2026-06-19 14:26:34,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:26:34,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:26:34,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:26:34,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:26:37,027.027 INFO    ] ================================================
[2026-06-19 14:26:37,043.043 INFO    ] Launching Daemon at Fri Jun 19 14:26:37 IST 2026
[2026-06-19 14:26:37,054.054 INFO    ] ================================================
[2026-06-19 14:26:37,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:26:37
[2026-06-19 14:26:38,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:26:38,516.516 INFO    ] Initializing speech engine...
[2026-06-19 14:26:38,530.530 INFO    ] 2026-06-19 14:26:38
[2026-06-19 14:26:38,815.815 INFO    ] 2026-06-19 14:26:38
[2026-06-19 14:26:38,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:26:39,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:26:39,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:26:39,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:26:39,234.234 INFO    ] time= 19/06/2026 14:26:39
[2026-06-19 14:26:39,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:26:39,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:26:39,400.400 INFO    ] No existing commands found in stream
[2026-06-19 14:26:44,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:26:44,428.428 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 14:26:46,697.697 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:26:46,700.700 INFO    ] Checking for system updates...
[2026-06-19 14:26:46,736.736 INFO    ] 200
[2026-06-19 14:26:46,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:46,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:26:46,795.795 INFO    ] No update needed
[2026-06-19 14:26:46,797.797 INFO    ] Checking for camera pi updates...
[2026-06-19 14:26:46,834.834 INFO    ] 200
[2026-06-19 14:26:46,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:46,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:26:46,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:26:46,921.921 INFO    ] No camera update needed
[2026-06-19 14:26:46,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:26:46,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:26:46,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:26:46,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:26:48,979.979 INFO    ] ================================================
[2026-06-19 14:26:48,994.994 INFO    ] Launching Daemon at Fri Jun 19 14:26:48 IST 2026
[2026-06-19 14:26:49,004.004 INFO    ] ================================================
[2026-06-19 14:26:49,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:26:49
[2026-06-19 14:26:50,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:26:50,519.519 INFO    ] Initializing speech engine...
[2026-06-19 14:26:50,524.524 INFO    ] 2026-06-19 14:26:50
[2026-06-19 14:26:50,768.768 INFO    ] 2026-06-19 14:26:50
[2026-06-19 14:26:50,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:26:51,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:26:51,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:26:51,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:26:51,239.239 INFO    ] time= 19/06/2026 14:26:51
[2026-06-19 14:26:51,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:26:51,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:26:51,477.477 INFO    ] No existing commands found in stream
[2026-06-19 14:26:56,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:26:56,494.494 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 14:26:58,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:26:58,089.089 INFO    ] Checking for system updates...
[2026-06-19 14:26:58,125.125 INFO    ] 200
[2026-06-19 14:26:58,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:58,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:26:58,189.189 INFO    ] No update needed
[2026-06-19 14:26:58,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 14:26:58,228.228 INFO    ] 200
[2026-06-19 14:26:58,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:26:58,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:26:58,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:26:58,320.320 INFO    ] No camera update needed
[2026-06-19 14:26:58,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:26:58,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:26:58,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:26:58,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:27:00,376.376 INFO    ] ================================================
[2026-06-19 14:27:00,391.391 INFO    ] Launching Daemon at Fri Jun 19 14:27:00 IST 2026
[2026-06-19 14:27:00,402.402 INFO    ] ================================================
[2026-06-19 14:27:00,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:27:00
[2026-06-19 14:27:01,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:27:01,815.815 INFO    ] Initializing speech engine...
[2026-06-19 14:27:01,824.824 INFO    ] 2026-06-19 14:27:01
[2026-06-19 14:27:02,129.129 INFO    ] 2026-06-19 14:27:02
[2026-06-19 14:27:02,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:27:02,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:27:02,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:27:02,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:27:02,558.558 INFO    ] time= 19/06/2026 14:27:02
[2026-06-19 14:27:02,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:27:02,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:27:02,636.636 INFO    ] No existing commands found in stream
[2026-06-19 14:27:07,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:27:07,648.648 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 14:27:09,817.817 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:27:09,819.819 INFO    ] Checking for system updates...
[2026-06-19 14:27:09,856.856 INFO    ] 200
[2026-06-19 14:27:09,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:09,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:27:09,919.919 INFO    ] No update needed
[2026-06-19 14:27:09,921.921 INFO    ] Checking for camera pi updates...
[2026-06-19 14:27:09,957.957 INFO    ] 200
[2026-06-19 14:27:09,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:10,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:27:10,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:27:10,055.055 INFO    ] No camera update needed
[2026-06-19 14:27:10,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:27:10,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:27:10,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:27:10,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:27:12,111.111 INFO    ] ================================================
[2026-06-19 14:27:12,127.127 INFO    ] Launching Daemon at Fri Jun 19 14:27:12 IST 2026
[2026-06-19 14:27:12,137.137 INFO    ] ================================================
[2026-06-19 14:27:12,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:27:12
[2026-06-19 14:27:13,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:27:13,591.591 INFO    ] Initializing speech engine...
[2026-06-19 14:27:13,599.599 INFO    ] 2026-06-19 14:27:13
[2026-06-19 14:27:13,860.860 INFO    ] 2026-06-19 14:27:13
[2026-06-19 14:27:13,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:27:14,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:27:14,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:27:14,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:27:14,340.340 INFO    ] time= 19/06/2026 14:27:14
[2026-06-19 14:27:14,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:27:14,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:27:14,555.555 INFO    ] No existing commands found in stream
[2026-06-19 14:27:19,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:27:19,574.574 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 14:27:23,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:27:23,748.748 INFO    ] Checking for system updates...
[2026-06-19 14:27:23,785.785 INFO    ] 200
[2026-06-19 14:27:23,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:23,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:27:23,852.852 INFO    ] No update needed
[2026-06-19 14:27:23,855.855 INFO    ] Checking for camera pi updates...
[2026-06-19 14:27:23,890.890 INFO    ] 200
[2026-06-19 14:27:23,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:23,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:27:23,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:27:23,989.989 INFO    ] No camera update needed
[2026-06-19 14:27:23,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:27:23,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:27:24,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:27:24,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:27:26,049.049 INFO    ] ================================================
[2026-06-19 14:27:26,065.065 INFO    ] Launching Daemon at Fri Jun 19 14:27:26 IST 2026
[2026-06-19 14:27:26,077.077 INFO    ] ================================================
[2026-06-19 14:27:26,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:27:26
[2026-06-19 14:27:27,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:27:27,528.528 INFO    ] Initializing speech engine...
[2026-06-19 14:27:27,538.538 INFO    ] 2026-06-19 14:27:27
[2026-06-19 14:27:27,794.794 INFO    ] 2026-06-19 14:27:27
[2026-06-19 14:27:27,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:27:28,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:27:28,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:27:28,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:27:28,278.278 INFO    ] time= 19/06/2026 14:27:28
[2026-06-19 14:27:28,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:27:28,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:27:28,470.470 INFO    ] No existing commands found in stream
[2026-06-19 14:27:33,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:27:33,503.503 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 14:27:34,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:27:34,635.635 INFO    ] Checking for system updates...
[2026-06-19 14:27:34,676.676 INFO    ] 200
[2026-06-19 14:27:34,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:34,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:27:34,741.741 INFO    ] No update needed
[2026-06-19 14:27:34,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 14:27:34,778.778 INFO    ] 200
[2026-06-19 14:27:34,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:34,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:27:34,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:27:34,882.882 INFO    ] No camera update needed
[2026-06-19 14:27:34,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:27:34,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:27:34,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:27:34,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:27:36,938.938 INFO    ] ================================================
[2026-06-19 14:27:36,954.954 INFO    ] Launching Daemon at Fri Jun 19 14:27:36 IST 2026
[2026-06-19 14:27:36,964.964 INFO    ] ================================================
[2026-06-19 14:27:37,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:27:37
[2026-06-19 14:27:38,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:27:38,452.452 INFO    ] Initializing speech engine...
[2026-06-19 14:27:38,458.458 INFO    ] 2026-06-19 14:27:38
[2026-06-19 14:27:38,745.745 INFO    ] 2026-06-19 14:27:38
[2026-06-19 14:27:38,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:27:39,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:27:39,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:27:39,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:27:39,301.301 INFO    ] time= 19/06/2026 14:27:39
[2026-06-19 14:27:39,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:27:39,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:27:39,500.500 INFO    ] No existing commands found in stream
[2026-06-19 14:27:44,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:27:44,529.529 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 14:27:45,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:27:45,572.572 INFO    ] Checking for system updates...
[2026-06-19 14:27:45,617.617 INFO    ] 200
[2026-06-19 14:27:45,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:45,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:27:45,677.677 INFO    ] No update needed
[2026-06-19 14:27:45,680.680 INFO    ] Checking for camera pi updates...
[2026-06-19 14:27:45,720.720 INFO    ] 200
[2026-06-19 14:27:45,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:45,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:27:45,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:27:45,815.815 INFO    ] No camera update needed
[2026-06-19 14:27:45,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:27:45,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:27:45,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:27:45,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:27:47,875.875 INFO    ] ================================================
[2026-06-19 14:27:47,890.890 INFO    ] Launching Daemon at Fri Jun 19 14:27:47 IST 2026
[2026-06-19 14:27:47,901.901 INFO    ] ================================================
[2026-06-19 14:27:48,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:27:48
[2026-06-19 14:27:49,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:27:49,309.309 INFO    ] Initializing speech engine...
[2026-06-19 14:27:49,324.324 INFO    ] 2026-06-19 14:27:49
[2026-06-19 14:27:49,586.586 INFO    ] 2026-06-19 14:27:49
[2026-06-19 14:27:49,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:27:49,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:27:49,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:27:50,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:27:50,056.056 INFO    ] time= 19/06/2026 14:27:50
[2026-06-19 14:27:50,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:27:50,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:27:50,295.295 INFO    ] No existing commands found in stream
[2026-06-19 14:27:55,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:27:55,311.311 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 14:27:57,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:27:57,652.652 INFO    ] Checking for system updates...
[2026-06-19 14:27:57,689.689 INFO    ] 200
[2026-06-19 14:27:57,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:57,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:27:57,746.746 INFO    ] No update needed
[2026-06-19 14:27:57,748.748 INFO    ] Checking for camera pi updates...
[2026-06-19 14:27:57,782.782 INFO    ] 200
[2026-06-19 14:27:57,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:27:57,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:27:57,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:27:57,871.871 INFO    ] No camera update needed
[2026-06-19 14:27:57,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:27:57,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:27:57,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:27:57,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:27:59,927.927 INFO    ] ================================================
[2026-06-19 14:27:59,942.942 INFO    ] Launching Daemon at Fri Jun 19 14:27:59 IST 2026
[2026-06-19 14:27:59,953.953 INFO    ] ================================================
[2026-06-19 14:28:00,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:28:00
[2026-06-19 14:28:01,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:28:01,456.456 INFO    ] Initializing speech engine...
[2026-06-19 14:28:01,465.465 INFO    ] 2026-06-19 14:28:01
[2026-06-19 14:28:01,713.713 INFO    ] 2026-06-19 14:28:01
[2026-06-19 14:28:01,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:28:02,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:28:02,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:28:02,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:28:02,214.214 INFO    ] time= 19/06/2026 14:28:02
[2026-06-19 14:28:02,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:28:02,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:28:02,316.316 INFO    ] No existing commands found in stream
[2026-06-19 14:28:07,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:28:07,329.329 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 14:28:10,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:28:10,699.699 INFO    ] Checking for system updates...
[2026-06-19 14:28:10,739.739 INFO    ] 200
[2026-06-19 14:28:10,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:10,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:28:10,796.796 INFO    ] No update needed
[2026-06-19 14:28:10,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 14:28:10,839.839 INFO    ] 200
[2026-06-19 14:28:10,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:10,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:28:10,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:28:10,928.928 INFO    ] No camera update needed
[2026-06-19 14:28:10,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:28:10,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:28:10,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:28:10,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:28:12,989.989 INFO    ] ================================================
[2026-06-19 14:28:13,005.005 INFO    ] Launching Daemon at Fri Jun 19 14:28:12 IST 2026
[2026-06-19 14:28:13,016.016 INFO    ] ================================================
[2026-06-19 14:28:13,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:28:13
[2026-06-19 14:28:14,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:28:14,480.480 INFO    ] Initializing speech engine...
[2026-06-19 14:28:14,492.492 INFO    ] 2026-06-19 14:28:14
[2026-06-19 14:28:14,742.742 INFO    ] 2026-06-19 14:28:14
[2026-06-19 14:28:14,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:28:15,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:28:15,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:28:15,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:28:15,220.220 INFO    ] time= 19/06/2026 14:28:15
[2026-06-19 14:28:15,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:28:15,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:28:15,367.367 INFO    ] No existing commands found in stream
[2026-06-19 14:28:20,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:28:20,382.382 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 14:28:22,384.384 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:28:22,387.387 INFO    ] Checking for system updates...
[2026-06-19 14:28:22,424.424 INFO    ] 200
[2026-06-19 14:28:22,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:22,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:28:22,493.493 INFO    ] No update needed
[2026-06-19 14:28:22,496.496 INFO    ] Checking for camera pi updates...
[2026-06-19 14:28:22,530.530 INFO    ] 200
[2026-06-19 14:28:22,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:22,575.575 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:28:22,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:28:22,724.724 INFO    ] No camera update needed
[2026-06-19 14:28:22,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:28:22,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:28:22,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:28:22,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:28:24,785.785 INFO    ] ================================================
[2026-06-19 14:28:24,800.800 INFO    ] Launching Daemon at Fri Jun 19 14:28:24 IST 2026
[2026-06-19 14:28:24,811.811 INFO    ] ================================================
[2026-06-19 14:28:25,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:28:25
[2026-06-19 14:28:25,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:28:26,222.222 INFO    ] Initializing speech engine...
[2026-06-19 14:28:26,230.230 INFO    ] 2026-06-19 14:28:26
[2026-06-19 14:28:26,532.532 INFO    ] 2026-06-19 14:28:26
[2026-06-19 14:28:26,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:28:26,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:28:26,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:28:26,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:28:26,892.892 INFO    ] time= 19/06/2026 14:28:26
[2026-06-19 14:28:26,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:28:26,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:28:27,048.048 INFO    ] No existing commands found in stream
[2026-06-19 14:28:32,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:28:32,063.063 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 14:28:35,038.038 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:28:35,040.040 INFO    ] Checking for system updates...
[2026-06-19 14:28:35,076.076 INFO    ] 200
[2026-06-19 14:28:35,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:35,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:28:35,141.141 INFO    ] No update needed
[2026-06-19 14:28:35,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 14:28:35,181.181 INFO    ] 200
[2026-06-19 14:28:35,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:35,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:28:35,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:28:35,270.270 INFO    ] No camera update needed
[2026-06-19 14:28:35,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:28:35,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:28:35,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:28:35,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:28:37,326.326 INFO    ] ================================================
[2026-06-19 14:28:37,341.341 INFO    ] Launching Daemon at Fri Jun 19 14:28:37 IST 2026
[2026-06-19 14:28:37,352.352 INFO    ] ================================================
[2026-06-19 14:28:37,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:28:37
[2026-06-19 14:28:38,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:28:38,816.816 INFO    ] Initializing speech engine...
[2026-06-19 14:28:38,822.822 INFO    ] 2026-06-19 14:28:38
[2026-06-19 14:28:39,084.084 INFO    ] 2026-06-19 14:28:39
[2026-06-19 14:28:39,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:28:39,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:28:39,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:28:39,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:28:39,572.572 INFO    ] time= 19/06/2026 14:28:39
[2026-06-19 14:28:39,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:28:39,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:28:39,783.783 INFO    ] No existing commands found in stream
[2026-06-19 14:28:44,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:28:44,804.804 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 14:28:47,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:28:47,970.970 INFO    ] Checking for system updates...
[2026-06-19 14:28:48,008.008 INFO    ] 200
[2026-06-19 14:28:48,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:48,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:28:48,076.076 INFO    ] No update needed
[2026-06-19 14:28:48,079.079 INFO    ] Checking for camera pi updates...
[2026-06-19 14:28:48,114.114 INFO    ] 200
[2026-06-19 14:28:48,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:48,166.166 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:28:48,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:28:48,202.202 INFO    ] No camera update needed
[2026-06-19 14:28:48,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:28:48,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:28:48,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:28:48,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:28:50,262.262 INFO    ] ================================================
[2026-06-19 14:28:50,279.279 INFO    ] Launching Daemon at Fri Jun 19 14:28:50 IST 2026
[2026-06-19 14:28:50,290.290 INFO    ] ================================================
[2026-06-19 14:28:50,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:28:50
[2026-06-19 14:28:51,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:28:51,708.708 INFO    ] Initializing speech engine...
[2026-06-19 14:28:51,732.732 INFO    ] 2026-06-19 14:28:51
[2026-06-19 14:28:51,989.989 INFO    ] 2026-06-19 14:28:51
[2026-06-19 14:28:52,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:28:52,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:28:52,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:28:52,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:28:52,495.495 INFO    ] time= 19/06/2026 14:28:52
[2026-06-19 14:28:52,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:28:52,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:28:52,626.626 INFO    ] No existing commands found in stream
[2026-06-19 14:28:57,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:28:57,640.640 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 14:28:59,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:28:59,318.318 INFO    ] Checking for system updates...
[2026-06-19 14:28:59,354.354 INFO    ] 200
[2026-06-19 14:28:59,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:59,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:28:59,411.411 INFO    ] No update needed
[2026-06-19 14:28:59,413.413 INFO    ] Checking for camera pi updates...
[2026-06-19 14:28:59,447.447 INFO    ] 200
[2026-06-19 14:28:59,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:28:59,490.490 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:28:59,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:28:59,546.546 INFO    ] No camera update needed
[2026-06-19 14:28:59,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:28:59,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:28:59,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:28:59,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:29:01,604.604 INFO    ] ================================================
[2026-06-19 14:29:01,625.625 INFO    ] Launching Daemon at Fri Jun 19 14:29:01 IST 2026
[2026-06-19 14:29:01,640.640 INFO    ] ================================================
[2026-06-19 14:29:02,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:29:02
[2026-06-19 14:29:02,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:29:03,226.226 INFO    ] Initializing speech engine...
[2026-06-19 14:29:03,232.232 INFO    ] 2026-06-19 14:29:03
[2026-06-19 14:29:03,508.508 INFO    ] 2026-06-19 14:29:03
[2026-06-19 14:29:03,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:29:03,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:29:03,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:29:03,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:29:03,955.955 INFO    ] time= 19/06/2026 14:29:03
[2026-06-19 14:29:04,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:29:04,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:29:04,153.153 INFO    ] No existing commands found in stream
[2026-06-19 14:29:09,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:29:09,169.169 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 14:29:11,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:29:11,637.637 INFO    ] Checking for system updates...
[2026-06-19 14:29:11,677.677 INFO    ] 200
[2026-06-19 14:29:11,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:11,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:29:11,742.742 INFO    ] No update needed
[2026-06-19 14:29:11,745.745 INFO    ] Checking for camera pi updates...
[2026-06-19 14:29:11,779.779 INFO    ] 200
[2026-06-19 14:29:11,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:11,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:29:11,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:29:11,875.875 INFO    ] No camera update needed
[2026-06-19 14:29:11,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:29:11,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:29:11,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:29:11,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:29:13,934.934 INFO    ] ================================================
[2026-06-19 14:29:13,951.951 INFO    ] Launching Daemon at Fri Jun 19 14:29:13 IST 2026
[2026-06-19 14:29:13,961.961 INFO    ] ================================================
[2026-06-19 14:29:14,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:29:14
[2026-06-19 14:29:15,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:29:15,409.409 INFO    ] Initializing speech engine...
[2026-06-19 14:29:15,432.432 INFO    ] 2026-06-19 14:29:15
[2026-06-19 14:29:15,708.708 INFO    ] 2026-06-19 14:29:15
[2026-06-19 14:29:15,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:29:15,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:29:15,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:29:16,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:29:16,141.141 INFO    ] time= 19/06/2026 14:29:16
[2026-06-19 14:29:16,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:29:16,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:29:16,297.297 INFO    ] No existing commands found in stream
[2026-06-19 14:29:21,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:29:21,325.325 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 14:29:22,203.203 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:29:22,206.206 INFO    ] Checking for system updates...
[2026-06-19 14:29:22,242.242 INFO    ] 200
[2026-06-19 14:29:22,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:22,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:29:22,299.299 INFO    ] No update needed
[2026-06-19 14:29:22,301.301 INFO    ] Checking for camera pi updates...
[2026-06-19 14:29:22,335.335 INFO    ] 200
[2026-06-19 14:29:22,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:22,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:29:22,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:29:22,419.419 INFO    ] No camera update needed
[2026-06-19 14:29:22,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:29:22,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:29:22,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:29:22,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:29:24,475.475 INFO    ] ================================================
[2026-06-19 14:29:24,491.491 INFO    ] Launching Daemon at Fri Jun 19 14:29:24 IST 2026
[2026-06-19 14:29:24,502.502 INFO    ] ================================================
[2026-06-19 14:29:25,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:29:25
[2026-06-19 14:29:25,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:29:26,020.020 INFO    ] Initializing speech engine...
[2026-06-19 14:29:26,027.027 INFO    ] 2026-06-19 14:29:26
[2026-06-19 14:29:26,316.316 INFO    ] 2026-06-19 14:29:26
[2026-06-19 14:29:26,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:29:26,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:29:26,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:29:26,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:29:26,857.857 INFO    ] time= 19/06/2026 14:29:26
[2026-06-19 14:29:26,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:29:26,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:29:27,013.013 INFO    ] No existing commands found in stream
[2026-06-19 14:29:32,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:29:32,037.037 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 14:29:36,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:29:36,429.429 INFO    ] Checking for system updates...
[2026-06-19 14:29:36,466.466 INFO    ] 200
[2026-06-19 14:29:36,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:36,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:29:36,526.526 INFO    ] No update needed
[2026-06-19 14:29:36,529.529 INFO    ] Checking for camera pi updates...
[2026-06-19 14:29:36,563.563 INFO    ] 200
[2026-06-19 14:29:36,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:36,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:29:36,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:29:36,656.656 INFO    ] No camera update needed
[2026-06-19 14:29:36,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:29:36,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:29:36,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:29:36,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:29:38,716.716 INFO    ] ================================================
[2026-06-19 14:29:38,731.731 INFO    ] Launching Daemon at Fri Jun 19 14:29:38 IST 2026
[2026-06-19 14:29:38,743.743 INFO    ] ================================================
[2026-06-19 14:29:39,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:29:39
[2026-06-19 14:29:40,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:29:40,263.263 INFO    ] Initializing speech engine...
[2026-06-19 14:29:40,279.279 INFO    ] 2026-06-19 14:29:40
[2026-06-19 14:29:40,567.567 INFO    ] 2026-06-19 14:29:40
[2026-06-19 14:29:40,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:29:40,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:29:40,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:29:40,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:29:40,999.999 INFO    ] time= 19/06/2026 14:29:40
[2026-06-19 14:29:41,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:29:41,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:29:41,155.155 INFO    ] No existing commands found in stream
[2026-06-19 14:29:46,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:29:46,188.188 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 14:29:47,360.360 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:29:47,362.362 INFO    ] Checking for system updates...
[2026-06-19 14:29:47,402.402 INFO    ] 200
[2026-06-19 14:29:47,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:47,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:29:47,459.459 INFO    ] No update needed
[2026-06-19 14:29:47,462.462 INFO    ] Checking for camera pi updates...
[2026-06-19 14:29:47,495.495 INFO    ] 200
[2026-06-19 14:29:47,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:47,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:29:47,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:29:47,571.571 INFO    ] No camera update needed
[2026-06-19 14:29:47,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:29:47,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:29:47,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:29:47,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:29:49,627.627 INFO    ] ================================================
[2026-06-19 14:29:49,642.642 INFO    ] Launching Daemon at Fri Jun 19 14:29:49 IST 2026
[2026-06-19 14:29:49,654.654 INFO    ] ================================================
[2026-06-19 14:29:50,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:29:50
[2026-06-19 14:29:50,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:29:51,118.118 INFO    ] Initializing speech engine...
[2026-06-19 14:29:51,129.129 INFO    ] 2026-06-19 14:29:51
[2026-06-19 14:29:51,388.388 INFO    ] 2026-06-19 14:29:51
[2026-06-19 14:29:51,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:29:51,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:29:51,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:29:51,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:29:51,863.863 INFO    ] time= 19/06/2026 14:29:51
[2026-06-19 14:29:51,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:29:51,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:29:52,113.113 INFO    ] No existing commands found in stream
[2026-06-19 14:29:57,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:29:57,141.141 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 14:29:58,166.166 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:29:58,169.169 INFO    ] Checking for system updates...
[2026-06-19 14:29:58,206.206 INFO    ] 200
[2026-06-19 14:29:58,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:58,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:29:58,263.263 INFO    ] No update needed
[2026-06-19 14:29:58,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 14:29:58,299.299 INFO    ] 200
[2026-06-19 14:29:58,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:29:58,342.342 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:29:58,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:29:58,382.382 INFO    ] No camera update needed
[2026-06-19 14:29:58,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:29:58,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:29:58,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:29:58,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:30:00,439.439 INFO    ] ================================================
[2026-06-19 14:30:00,453.453 INFO    ] Launching Daemon at Fri Jun 19 14:30:00 IST 2026
[2026-06-19 14:30:00,465.465 INFO    ] ================================================
[2026-06-19 14:30:01,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:30:01
[2026-06-19 14:30:02,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:30:02,873.873 INFO    ] Initializing speech engine...
[2026-06-19 14:30:02,893.893 INFO    ] 2026-06-19 14:30:02
[2026-06-19 14:30:03,260.260 INFO    ] 2026-06-19 14:30:03
[2026-06-19 14:30:03,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:30:03,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:30:03,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:30:03,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:30:03,735.735 INFO    ] time= 19/06/2026 14:30:03
[2026-06-19 14:30:03,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:30:03,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:30:03,931.931 INFO    ] No existing commands found in stream
[2026-06-19 14:30:08,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:30:08,954.954 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 14:30:10,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:30:10,892.892 INFO    ] Checking for system updates...
[2026-06-19 14:30:10,928.928 INFO    ] 200
[2026-06-19 14:30:10,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:10,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:30:10,993.993 INFO    ] No update needed
[2026-06-19 14:30:10,996.996 INFO    ] Checking for camera pi updates...
[2026-06-19 14:30:11,034.034 INFO    ] 200
[2026-06-19 14:30:11,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:11,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:30:11,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:30:11,128.128 INFO    ] No camera update needed
[2026-06-19 14:30:11,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:30:11,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:30:11,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:30:11,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:30:13,185.185 INFO    ] ================================================
[2026-06-19 14:30:13,201.201 INFO    ] Launching Daemon at Fri Jun 19 14:30:13 IST 2026
[2026-06-19 14:30:13,211.211 INFO    ] ================================================
[2026-06-19 14:30:13,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:30:13
[2026-06-19 14:30:14,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:30:14,850.850 INFO    ] Initializing speech engine...
[2026-06-19 14:30:14,860.860 INFO    ] 2026-06-19 14:30:14
[2026-06-19 14:30:15,136.136 INFO    ] 2026-06-19 14:30:15
[2026-06-19 14:30:15,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:30:15,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:30:15,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:30:15,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:30:15,687.687 INFO    ] time= 19/06/2026 14:30:15
[2026-06-19 14:30:15,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:30:15,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:30:15,848.848 INFO    ] No existing commands found in stream
[2026-06-19 14:30:20,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:30:20,870.870 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 14:30:21,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:30:21,639.639 INFO    ] Checking for system updates...
[2026-06-19 14:30:21,676.676 INFO    ] 200
[2026-06-19 14:30:21,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:21,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:30:21,739.739 INFO    ] No update needed
[2026-06-19 14:30:21,742.742 INFO    ] Checking for camera pi updates...
[2026-06-19 14:30:21,776.776 INFO    ] 200
[2026-06-19 14:30:21,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:21,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:30:21,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:30:21,864.864 INFO    ] No camera update needed
[2026-06-19 14:30:21,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:30:21,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:30:21,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:30:21,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:30:23,918.918 INFO    ] ================================================
[2026-06-19 14:30:23,934.934 INFO    ] Launching Daemon at Fri Jun 19 14:30:23 IST 2026
[2026-06-19 14:30:23,945.945 INFO    ] ================================================
[2026-06-19 14:30:24,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:30:24
[2026-06-19 14:30:25,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:30:25,378.378 INFO    ] Initializing speech engine...
[2026-06-19 14:30:25,397.397 INFO    ] 2026-06-19 14:30:25
[2026-06-19 14:30:25,651.651 INFO    ] 2026-06-19 14:30:25
[2026-06-19 14:30:25,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:30:25,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:30:25,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:30:26,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:30:26,130.130 INFO    ] time= 19/06/2026 14:30:26
[2026-06-19 14:30:26,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:30:26,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:30:26,353.353 INFO    ] No existing commands found in stream
[2026-06-19 14:30:31,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:30:31,386.386 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 14:30:33,051.051 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:30:33,054.054 INFO    ] Checking for system updates...
[2026-06-19 14:30:33,090.090 INFO    ] 200
[2026-06-19 14:30:33,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:33,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:30:33,151.151 INFO    ] No update needed
[2026-06-19 14:30:33,153.153 INFO    ] Checking for camera pi updates...
[2026-06-19 14:30:33,188.188 INFO    ] 200
[2026-06-19 14:30:33,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:33,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:30:33,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:30:33,260.260 INFO    ] No camera update needed
[2026-06-19 14:30:33,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:30:33,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:30:33,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:30:33,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:30:35,318.318 INFO    ] ================================================
[2026-06-19 14:30:35,333.333 INFO    ] Launching Daemon at Fri Jun 19 14:30:35 IST 2026
[2026-06-19 14:30:35,344.344 INFO    ] ================================================
[2026-06-19 14:30:35,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:30:35
[2026-06-19 14:30:36,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:30:36,794.794 INFO    ] Initializing speech engine...
[2026-06-19 14:30:36,801.801 INFO    ] 2026-06-19 14:30:36
[2026-06-19 14:30:37,050.050 INFO    ] 2026-06-19 14:30:37
[2026-06-19 14:30:37,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:30:37,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:30:37,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:30:37,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:30:37,568.568 INFO    ] time= 19/06/2026 14:30:37
[2026-06-19 14:30:37,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:30:37,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:30:37,797.797 INFO    ] No existing commands found in stream
[2026-06-19 14:30:42,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:30:42,816.816 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 14:30:45,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:30:45,650.650 INFO    ] Checking for system updates...
[2026-06-19 14:30:45,690.690 INFO    ] 200
[2026-06-19 14:30:45,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:45,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:30:45,755.755 INFO    ] No update needed
[2026-06-19 14:30:45,758.758 INFO    ] Checking for camera pi updates...
[2026-06-19 14:30:45,792.792 INFO    ] 200
[2026-06-19 14:30:45,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:45,834.834 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:30:45,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:30:45,874.874 INFO    ] No camera update needed
[2026-06-19 14:30:45,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:30:45,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:30:45,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:30:45,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:30:47,931.931 INFO    ] ================================================
[2026-06-19 14:30:47,947.947 INFO    ] Launching Daemon at Fri Jun 19 14:30:47 IST 2026
[2026-06-19 14:30:47,959.959 INFO    ] ================================================
[2026-06-19 14:30:48,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:30:48
[2026-06-19 14:30:49,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:30:49,380.380 INFO    ] Initializing speech engine...
[2026-06-19 14:30:49,394.394 INFO    ] 2026-06-19 14:30:49
[2026-06-19 14:30:49,661.661 INFO    ] 2026-06-19 14:30:49
[2026-06-19 14:30:49,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:30:49,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:30:49,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:30:50,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:30:50,147.147 INFO    ] time= 19/06/2026 14:30:50
[2026-06-19 14:30:50,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:30:50,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:30:50,321.321 INFO    ] No existing commands found in stream
[2026-06-19 14:30:55,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:30:55,355.355 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 14:30:56,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:30:56,284.284 INFO    ] Checking for system updates...
[2026-06-19 14:30:56,320.320 INFO    ] 200
[2026-06-19 14:30:56,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:56,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:30:56,377.377 INFO    ] No update needed
[2026-06-19 14:30:56,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 14:30:56,418.418 INFO    ] 200
[2026-06-19 14:30:56,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:30:56,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:30:56,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:30:56,517.517 INFO    ] No camera update needed
[2026-06-19 14:30:56,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:30:56,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:30:56,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:30:56,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:30:58,574.574 INFO    ] ================================================
[2026-06-19 14:30:58,590.590 INFO    ] Launching Daemon at Fri Jun 19 14:30:58 IST 2026
[2026-06-19 14:30:58,601.601 INFO    ] ================================================
[2026-06-19 14:30:59,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:30:59
[2026-06-19 14:30:59,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:31:00,030.030 INFO    ] Initializing speech engine...
[2026-06-19 14:31:00,039.039 INFO    ] 2026-06-19 14:31:00
[2026-06-19 14:31:00,288.288 INFO    ] 2026-06-19 14:31:00
[2026-06-19 14:31:00,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:31:00,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:31:00,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:31:00,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:31:00,761.761 INFO    ] time= 19/06/2026 14:31:00
[2026-06-19 14:31:00,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:31:00,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:31:01,000.000 INFO    ] No existing commands found in stream
[2026-06-19 14:31:06,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:31:06,018.018 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 14:31:10,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:31:10,078.078 INFO    ] Checking for system updates...
[2026-06-19 14:31:10,113.113 INFO    ] 200
[2026-06-19 14:31:10,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:10,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:31:10,170.170 INFO    ] No update needed
[2026-06-19 14:31:10,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 14:31:10,211.211 INFO    ] 200
[2026-06-19 14:31:10,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:10,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:31:10,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:31:10,316.316 INFO    ] No camera update needed
[2026-06-19 14:31:10,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:31:10,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:31:10,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:31:10,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:31:12,371.371 INFO    ] ================================================
[2026-06-19 14:31:12,388.388 INFO    ] Launching Daemon at Fri Jun 19 14:31:12 IST 2026
[2026-06-19 14:31:12,399.399 INFO    ] ================================================
[2026-06-19 14:31:12,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:31:12
[2026-06-19 14:31:13,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:31:13,811.811 INFO    ] Initializing speech engine...
[2026-06-19 14:31:13,829.829 INFO    ] 2026-06-19 14:31:13
[2026-06-19 14:31:14,076.076 INFO    ] 2026-06-19 14:31:14
[2026-06-19 14:31:14,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:31:14,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:31:14,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:31:14,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:31:14,545.545 INFO    ] time= 19/06/2026 14:31:14
[2026-06-19 14:31:14,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:31:14,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:31:14,781.781 INFO    ] No existing commands found in stream
[2026-06-19 14:31:19,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:31:19,797.797 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 14:31:23,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:31:23,593.593 INFO    ] Checking for system updates...
[2026-06-19 14:31:23,629.629 INFO    ] 200
[2026-06-19 14:31:23,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:23,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:31:23,687.687 INFO    ] No update needed
[2026-06-19 14:31:23,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 14:31:23,727.727 INFO    ] 200
[2026-06-19 14:31:23,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:23,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:31:23,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:31:23,812.812 INFO    ] No camera update needed
[2026-06-19 14:31:23,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:31:23,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:31:23,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:31:23,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:31:25,872.872 INFO    ] ================================================
[2026-06-19 14:31:25,890.890 INFO    ] Launching Daemon at Fri Jun 19 14:31:25 IST 2026
[2026-06-19 14:31:25,902.902 INFO    ] ================================================
[2026-06-19 14:31:26,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:31:26
[2026-06-19 14:31:27,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:31:27,597.597 INFO    ] Initializing speech engine...
[2026-06-19 14:31:27,610.610 INFO    ] 2026-06-19 14:31:27
[2026-06-19 14:31:27,891.891 INFO    ] 2026-06-19 14:31:27
[2026-06-19 14:31:27,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:31:28,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:31:28,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:31:28,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:31:28,480.480 INFO    ] time= 19/06/2026 14:31:28
[2026-06-19 14:31:28,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:31:28,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:31:28,651.651 INFO    ] No existing commands found in stream
[2026-06-19 14:31:33,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:31:33,681.681 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 14:31:34,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:31:34,530.530 INFO    ] Checking for system updates...
[2026-06-19 14:31:34,572.572 INFO    ] 200
[2026-06-19 14:31:34,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:34,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:31:34,639.639 INFO    ] No update needed
[2026-06-19 14:31:34,642.642 INFO    ] Checking for camera pi updates...
[2026-06-19 14:31:34,681.681 INFO    ] 200
[2026-06-19 14:31:34,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:34,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:31:34,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:31:34,784.784 INFO    ] No camera update needed
[2026-06-19 14:31:34,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:31:34,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:31:34,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:31:34,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:31:36,846.846 INFO    ] ================================================
[2026-06-19 14:31:36,864.864 INFO    ] Launching Daemon at Fri Jun 19 14:31:36 IST 2026
[2026-06-19 14:31:36,877.877 INFO    ] ================================================
[2026-06-19 14:31:37,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:31:37
[2026-06-19 14:31:38,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:31:38,435.435 INFO    ] Initializing speech engine...
[2026-06-19 14:31:38,443.443 INFO    ] 2026-06-19 14:31:38
[2026-06-19 14:31:38,736.736 INFO    ] 2026-06-19 14:31:38
[2026-06-19 14:31:38,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:31:39,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:31:39,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:31:39,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:31:39,239.239 INFO    ] time= 19/06/2026 14:31:39
[2026-06-19 14:31:39,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:31:39,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:31:39,445.445 INFO    ] No existing commands found in stream
[2026-06-19 14:31:44,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:31:44,483.483 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 14:31:47,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:31:47,301.301 INFO    ] Checking for system updates...
[2026-06-19 14:31:47,340.340 INFO    ] 200
[2026-06-19 14:31:47,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:47,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:31:47,403.403 INFO    ] No update needed
[2026-06-19 14:31:47,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 14:31:47,443.443 INFO    ] 200
[2026-06-19 14:31:47,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:47,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:31:47,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:31:47,522.522 INFO    ] No camera update needed
[2026-06-19 14:31:47,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:31:47,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:31:47,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:31:47,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:31:49,581.581 INFO    ] ================================================
[2026-06-19 14:31:49,597.597 INFO    ] Launching Daemon at Fri Jun 19 14:31:49 IST 2026
[2026-06-19 14:31:49,608.608 INFO    ] ================================================
[2026-06-19 14:31:50,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:31:50
[2026-06-19 14:31:50,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:31:51,072.072 INFO    ] Initializing speech engine...
[2026-06-19 14:31:51,082.082 INFO    ] 2026-06-19 14:31:51
[2026-06-19 14:31:51,345.345 INFO    ] 2026-06-19 14:31:51
[2026-06-19 14:31:51,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:31:51,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:31:51,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:31:51,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:31:51,815.815 INFO    ] time= 19/06/2026 14:31:51
[2026-06-19 14:31:51,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:31:51,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:31:52,035.035 INFO    ] No existing commands found in stream
[2026-06-19 14:31:57,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:31:57,058.058 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 14:31:59,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:31:59,711.711 INFO    ] Checking for system updates...
[2026-06-19 14:31:59,748.748 INFO    ] 200
[2026-06-19 14:31:59,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:59,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:31:59,813.813 INFO    ] No update needed
[2026-06-19 14:31:59,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 14:31:59,850.850 INFO    ] 200
[2026-06-19 14:31:59,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:31:59,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:31:59,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:31:59,942.942 INFO    ] No camera update needed
[2026-06-19 14:31:59,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:31:59,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:31:59,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:31:59,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:32:02,010.010 INFO    ] ================================================
[2026-06-19 14:32:02,040.040 INFO    ] Launching Daemon at Fri Jun 19 14:32:02 IST 2026
[2026-06-19 14:32:02,075.075 INFO    ] ================================================
[2026-06-19 14:32:02,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:32:02
[2026-06-19 14:32:03,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:32:03,749.749 INFO    ] Initializing speech engine...
[2026-06-19 14:32:03,768.768 INFO    ] 2026-06-19 14:32:03
[2026-06-19 14:32:04,029.029 INFO    ] 2026-06-19 14:32:04
[2026-06-19 14:32:04,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:32:04,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:32:04,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:32:04,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:32:04,594.594 INFO    ] time= 19/06/2026 14:32:04
[2026-06-19 14:32:04,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:32:04,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:32:04,745.745 INFO    ] No existing commands found in stream
[2026-06-19 14:32:09,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:32:09,764.764 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 14:32:11,130.130 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:32:11,132.132 INFO    ] Checking for system updates...
[2026-06-19 14:32:11,169.169 INFO    ] 200
[2026-06-19 14:32:11,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:32:11,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:32:11,232.232 INFO    ] No update needed
[2026-06-19 14:32:11,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 14:32:11,269.269 INFO    ] 200
[2026-06-19 14:32:11,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:32:11,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:32:11,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:32:11,361.361 INFO    ] No camera update needed
[2026-06-19 14:32:11,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:32:11,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:32:11,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:32:11,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:32:13,418.418 INFO    ] ================================================
[2026-06-19 14:32:13,434.434 INFO    ] Launching Daemon at Fri Jun 19 14:32:13 IST 2026
[2026-06-19 14:32:13,445.445 INFO    ] ================================================
[2026-06-19 14:32:14,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:32:14
[2026-06-19 14:32:14,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:32:14,881.881 INFO    ] Initializing speech engine...
[2026-06-19 14:32:14,888.888 INFO    ] 2026-06-19 14:32:14
[2026-06-19 14:32:15,167.167 INFO    ] 2026-06-19 14:32:15
[2026-06-19 14:32:15,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:32:15,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:32:15,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:32:15,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:32:15,700.700 INFO    ] time= 19/06/2026 14:32:15
[2026-06-19 14:32:15,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:32:15,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:32:15,854.854 INFO    ] No existing commands found in stream
[2026-06-19 14:32:20,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:32:20,872.872 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 14:32:23,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:32:23,345.345 INFO    ] Checking for system updates...
[2026-06-19 14:32:23,383.383 INFO    ] 200
[2026-06-19 14:32:23,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:32:23,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:32:23,449.449 INFO    ] No update needed
[2026-06-19 14:32:23,452.452 INFO    ] Checking for camera pi updates...
[2026-06-19 14:32:23,487.487 INFO    ] 200
[2026-06-19 14:32:23,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:32:23,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:32:23,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:32:23,576.576 INFO    ] No camera update needed
[2026-06-19 14:32:23,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:32:23,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:32:23,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:32:23,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:32:25,635.635 INFO    ] ================================================
[2026-06-19 14:32:25,651.651 INFO    ] Launching Daemon at Fri Jun 19 14:32:25 IST 2026
[2026-06-19 14:32:25,661.661 INFO    ] ================================================
[2026-06-19 14:32:26,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:32:26
[2026-06-19 14:32:26,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:32:27,124.124 INFO    ] Initializing speech engine...
[2026-06-19 14:32:27,139.139 INFO    ] 2026-06-19 14:32:27
[2026-06-19 14:32:27,413.413 INFO    ] 2026-06-19 14:32:27
[2026-06-19 14:32:27,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:32:27,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:32:27,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:32:27,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:32:27,909.909 INFO    ] time= 19/06/2026 14:32:27
[2026-06-19 14:32:27,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:32:27,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:32:28,148.148 INFO    ] No existing commands found in stream
[2026-06-19 14:32:33,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:32:33,161.161 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 14:32:34,114.114 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:32:34,117.117 INFO    ] Checking for system updates...
[2026-06-19 14:32:34,153.153 INFO    ] 200
[2026-06-19 14:32:34,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:32:34,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:32:34,212.212 INFO    ] No update needed
[2026-06-19 14:32:34,214.214 INFO    ] Checking for camera pi updates...
[2026-06-19 14:32:34,248.248 INFO    ] 200
[2026-06-19 14:32:34,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:32:34,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:32:34,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:32:34,447.447 INFO    ] No camera update needed
[2026-06-19 14:32:34,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:32:34,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:32:34,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:32:34,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:32:36,505.505 INFO    ] ================================================
[2026-06-19 14:32:36,520.520 INFO    ] Launching Daemon at Fri Jun 19 14:32:36 IST 2026
[2026-06-19 14:32:36,530.530 INFO    ] ================================================
[2026-06-19 14:32:37,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:32:37
[2026-06-19 14:32:37,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:32:38,003.003 INFO    ] Initializing speech engine...
[2026-06-19 14:32:38,012.012 INFO    ] 2026-06-19 14:32:38
[2026-06-19 14:32:38,259.259 INFO    ] 2026-06-19 14:32:38
[2026-06-19 14:32:38,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:32:38,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:32:38,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:32:38,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:32:38,807.807 INFO    ] time= 19/06/2026 14:32:38
[2026-06-19 14:32:38,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:32:38,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:32:38,946.946 INFO    ] No existing commands found in stream
[2026-06-19 14:32:43,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:32:43,973.973 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 14:32:47,474.474 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:32:47,477.477 INFO    ] Checking for system updates...
[2026-06-19 14:32:47,519.519 INFO    ] 200
[2026-06-19 14:32:47,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:32:47,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:32:47,576.576 INFO    ] No update needed
[2026-06-19 14:32:47,579.579 INFO    ] Checking for camera pi updates...
[2026-06-19 14:32:47,612.612 INFO    ] 200
[2026-06-19 14:32:47,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:32:47,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:32:47,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:32:47,694.694 INFO    ] No camera update needed
[2026-06-19 14:32:47,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:32:47,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:32:47,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:32:47,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:32:49,755.755 INFO    ] ================================================
[2026-06-19 14:32:49,770.770 INFO    ] Launching Daemon at Fri Jun 19 14:32:49 IST 2026
[2026-06-19 14:32:49,781.781 INFO    ] ================================================
[2026-06-19 14:32:50,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:32:50
[2026-06-19 14:32:51,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:32:51,444.444 INFO    ] Initializing speech engine...
[2026-06-19 14:32:51,452.452 INFO    ] 2026-06-19 14:32:51
[2026-06-19 14:32:51,727.727 INFO    ] 2026-06-19 14:32:51
[2026-06-19 14:32:51,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:32:52,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:32:52,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:32:52,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:32:52,207.207 INFO    ] time= 19/06/2026 14:32:52
[2026-06-19 14:32:52,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:32:52,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:32:52,407.407 INFO    ] No existing commands found in stream
[2026-06-19 14:32:57,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:32:57,432.432 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 14:33:00,112.112 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:33:00,114.114 INFO    ] Checking for system updates...
[2026-06-19 14:33:00,150.150 INFO    ] 200
[2026-06-19 14:33:00,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:00,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:33:00,209.209 INFO    ] No update needed
[2026-06-19 14:33:00,211.211 INFO    ] Checking for camera pi updates...
[2026-06-19 14:33:00,246.246 INFO    ] 200
[2026-06-19 14:33:00,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:00,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:33:00,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:33:00,341.341 INFO    ] No camera update needed
[2026-06-19 14:33:00,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:33:00,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:33:00,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:33:00,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:33:02,397.397 INFO    ] ================================================
[2026-06-19 14:33:02,418.418 INFO    ] Launching Daemon at Fri Jun 19 14:33:02 IST 2026
[2026-06-19 14:33:02,433.433 INFO    ] ================================================
[2026-06-19 14:33:03,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:33:03
[2026-06-19 14:33:03,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:33:03,981.981 INFO    ] Initializing speech engine...
[2026-06-19 14:33:03,988.988 INFO    ] 2026-06-19 14:33:03
[2026-06-19 14:33:04,262.262 INFO    ] 2026-06-19 14:33:04
[2026-06-19 14:33:04,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:33:04,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:33:04,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:33:04,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:33:04,747.747 INFO    ] time= 19/06/2026 14:33:04
[2026-06-19 14:33:04,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:33:04,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:33:04,920.920 INFO    ] No existing commands found in stream
[2026-06-19 14:33:09,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:33:09,960.960 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 14:33:11,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:33:11,467.467 INFO    ] Checking for system updates...
[2026-06-19 14:33:11,503.503 INFO    ] 200
[2026-06-19 14:33:11,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:11,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:33:11,562.562 INFO    ] No update needed
[2026-06-19 14:33:11,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 14:33:11,599.599 INFO    ] 200
[2026-06-19 14:33:11,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:11,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:33:11,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:33:11,689.689 INFO    ] No camera update needed
[2026-06-19 14:33:11,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:33:11,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:33:11,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:33:11,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:33:13,747.747 INFO    ] ================================================
[2026-06-19 14:33:13,763.763 INFO    ] Launching Daemon at Fri Jun 19 14:33:13 IST 2026
[2026-06-19 14:33:13,774.774 INFO    ] ================================================
[2026-06-19 14:33:14,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:33:14
[2026-06-19 14:33:14,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:33:15,182.182 INFO    ] Initializing speech engine...
[2026-06-19 14:33:15,205.205 INFO    ] 2026-06-19 14:33:15
[2026-06-19 14:33:15,462.462 INFO    ] 2026-06-19 14:33:15
[2026-06-19 14:33:15,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:33:15,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:33:15,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:33:15,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:33:15,937.937 INFO    ] time= 19/06/2026 14:33:15
[2026-06-19 14:33:15,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:33:16,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:33:16,173.173 INFO    ] No existing commands found in stream
[2026-06-19 14:33:21,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:33:21,199.199 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 14:33:24,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:33:24,352.352 INFO    ] Checking for system updates...
[2026-06-19 14:33:24,394.394 INFO    ] 200
[2026-06-19 14:33:24,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:24,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:33:24,453.453 INFO    ] No update needed
[2026-06-19 14:33:24,456.456 INFO    ] Checking for camera pi updates...
[2026-06-19 14:33:24,490.490 INFO    ] 200
[2026-06-19 14:33:24,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:24,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:33:24,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:33:24,586.586 INFO    ] No camera update needed
[2026-06-19 14:33:24,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:33:24,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:33:24,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:33:24,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:33:26,645.645 INFO    ] ================================================
[2026-06-19 14:33:26,662.662 INFO    ] Launching Daemon at Fri Jun 19 14:33:26 IST 2026
[2026-06-19 14:33:26,673.673 INFO    ] ================================================
[2026-06-19 14:33:27,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:33:27
[2026-06-19 14:33:27,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:33:28,127.127 INFO    ] Initializing speech engine...
[2026-06-19 14:33:28,134.134 INFO    ] 2026-06-19 14:33:28
[2026-06-19 14:33:28,436.436 INFO    ] 2026-06-19 14:33:28
[2026-06-19 14:33:28,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:33:28,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:33:28,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:33:28,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:33:28,826.826 INFO    ] time= 19/06/2026 14:33:28
[2026-06-19 14:33:28,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:33:28,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:33:28,954.954 INFO    ] No existing commands found in stream
[2026-06-19 14:33:33,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:33:33,969.969 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 14:33:35,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:33:35,374.374 INFO    ] Checking for system updates...
[2026-06-19 14:33:35,411.411 INFO    ] 200
[2026-06-19 14:33:35,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:35,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:33:35,470.470 INFO    ] No update needed
[2026-06-19 14:33:35,472.472 INFO    ] Checking for camera pi updates...
[2026-06-19 14:33:35,510.510 INFO    ] 200
[2026-06-19 14:33:35,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:35,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:33:35,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:33:35,607.607 INFO    ] No camera update needed
[2026-06-19 14:33:35,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:33:35,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:33:35,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:33:35,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:33:37,666.666 INFO    ] ================================================
[2026-06-19 14:33:37,681.681 INFO    ] Launching Daemon at Fri Jun 19 14:33:37 IST 2026
[2026-06-19 14:33:37,692.692 INFO    ] ================================================
[2026-06-19 14:33:38,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:33:38
[2026-06-19 14:33:38,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:33:39,179.179 INFO    ] Initializing speech engine...
[2026-06-19 14:33:39,192.192 INFO    ] 2026-06-19 14:33:39
[2026-06-19 14:33:39,460.460 INFO    ] 2026-06-19 14:33:39
[2026-06-19 14:33:39,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:33:39,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:33:39,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:33:39,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:33:40,027.027 INFO    ] time= 19/06/2026 14:33:39
[2026-06-19 14:33:40,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:33:40,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:33:40,161.161 INFO    ] No existing commands found in stream
[2026-06-19 14:33:45,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:33:45,189.189 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 14:33:48,563.563 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:33:48,566.566 INFO    ] Checking for system updates...
[2026-06-19 14:33:48,602.602 INFO    ] 200
[2026-06-19 14:33:48,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:48,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:33:48,660.660 INFO    ] No update needed
[2026-06-19 14:33:48,663.663 INFO    ] Checking for camera pi updates...
[2026-06-19 14:33:48,696.696 INFO    ] 200
[2026-06-19 14:33:48,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:33:48,745.745 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:33:48,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:33:48,784.784 INFO    ] No camera update needed
[2026-06-19 14:33:48,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:33:48,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:33:48,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:33:48,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:33:50,841.841 INFO    ] ================================================
[2026-06-19 14:33:50,856.856 INFO    ] Launching Daemon at Fri Jun 19 14:33:50 IST 2026
[2026-06-19 14:33:50,871.871 INFO    ] ================================================
[2026-06-19 14:33:51,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:33:51
[2026-06-19 14:33:52,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:33:53,705.705 INFO    ] Initializing speech engine...
[2026-06-19 14:33:53,739.739 INFO    ] 2026-06-19 14:33:53
[2026-06-19 14:33:54,073.073 INFO    ] 2026-06-19 14:33:54
[2026-06-19 14:33:54,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:33:54,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:33:54,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:33:54,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:33:54,447.447 INFO    ] time= 19/06/2026 14:33:54
[2026-06-19 14:33:54,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:33:54,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:33:54,566.566 INFO    ] No existing commands found in stream
[2026-06-19 14:33:59,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:33:59,580.580 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 14:34:01,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:34:01,899.899 INFO    ] Checking for system updates...
[2026-06-19 14:34:01,950.950 INFO    ] 200
[2026-06-19 14:34:01,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:02,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:34:02,111.111 INFO    ] No update needed
[2026-06-19 14:34:02,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 14:34:02,222.222 INFO    ] 200
[2026-06-19 14:34:02,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:02,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:34:02,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:34:02,365.365 INFO    ] No camera update needed
[2026-06-19 14:34:02,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:34:02,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:34:02,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:34:02,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:34:04,445.445 INFO    ] ================================================
[2026-06-19 14:34:04,460.460 INFO    ] Launching Daemon at Fri Jun 19 14:34:04 IST 2026
[2026-06-19 14:34:04,472.472 INFO    ] ================================================
[2026-06-19 14:34:05,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:34:05
[2026-06-19 14:34:05,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:34:05,894.894 INFO    ] Initializing speech engine...
[2026-06-19 14:34:05,904.904 INFO    ] 2026-06-19 14:34:05
[2026-06-19 14:34:06,149.149 INFO    ] 2026-06-19 14:34:06
[2026-06-19 14:34:06,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:34:06,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:34:06,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:34:06,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:34:06,648.648 INFO    ] time= 19/06/2026 14:34:06
[2026-06-19 14:34:06,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:34:06,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:34:06,869.869 INFO    ] No existing commands found in stream
[2026-06-19 14:34:11,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:34:11,902.902 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 14:34:13,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:34:13,916.916 INFO    ] Checking for system updates...
[2026-06-19 14:34:13,952.952 INFO    ] 200
[2026-06-19 14:34:13,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:14,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:34:14,019.019 INFO    ] No update needed
[2026-06-19 14:34:14,021.021 INFO    ] Checking for camera pi updates...
[2026-06-19 14:34:14,055.055 INFO    ] 200
[2026-06-19 14:34:14,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:14,100.100 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:34:14,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:34:14,142.142 INFO    ] No camera update needed
[2026-06-19 14:34:14,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:34:14,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:34:14,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:34:14,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:34:16,199.199 INFO    ] ================================================
[2026-06-19 14:34:16,214.214 INFO    ] Launching Daemon at Fri Jun 19 14:34:16 IST 2026
[2026-06-19 14:34:16,225.225 INFO    ] ================================================
[2026-06-19 14:34:16,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:34:16
[2026-06-19 14:34:17,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:34:17,655.655 INFO    ] Initializing speech engine...
[2026-06-19 14:34:17,664.664 INFO    ] 2026-06-19 14:34:17
[2026-06-19 14:34:17,915.915 INFO    ] 2026-06-19 14:34:17
[2026-06-19 14:34:17,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:34:18,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:34:18,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:34:18,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:34:18,389.389 INFO    ] time= 19/06/2026 14:34:18
[2026-06-19 14:34:18,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:34:18,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:34:18,643.643 INFO    ] No existing commands found in stream
[2026-06-19 14:34:23,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:34:23,666.666 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 14:34:26,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:34:26,296.296 INFO    ] Checking for system updates...
[2026-06-19 14:34:26,332.332 INFO    ] 200
[2026-06-19 14:34:26,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:26,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:34:26,390.390 INFO    ] No update needed
[2026-06-19 14:34:26,393.393 INFO    ] Checking for camera pi updates...
[2026-06-19 14:34:26,431.431 INFO    ] 200
[2026-06-19 14:34:26,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:26,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:34:26,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:34:26,515.515 INFO    ] No camera update needed
[2026-06-19 14:34:26,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:34:26,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:34:26,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:34:26,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:34:28,575.575 INFO    ] ================================================
[2026-06-19 14:34:28,590.590 INFO    ] Launching Daemon at Fri Jun 19 14:34:28 IST 2026
[2026-06-19 14:34:28,601.601 INFO    ] ================================================
[2026-06-19 14:34:29,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:34:29
[2026-06-19 14:34:29,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:34:30,065.065 INFO    ] Initializing speech engine...
[2026-06-19 14:34:30,070.070 INFO    ] 2026-06-19 14:34:30
[2026-06-19 14:34:30,333.333 INFO    ] 2026-06-19 14:34:30
[2026-06-19 14:34:30,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:34:30,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:34:30,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:34:30,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:34:30,881.881 INFO    ] time= 19/06/2026 14:34:30
[2026-06-19 14:34:30,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:34:30,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:34:31,015.015 INFO    ] No existing commands found in stream
[2026-06-19 14:34:36,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:34:36,046.046 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 14:34:37,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:34:37,538.538 INFO    ] Checking for system updates...
[2026-06-19 14:34:37,574.574 INFO    ] 200
[2026-06-19 14:34:37,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:37,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:34:37,640.640 INFO    ] No update needed
[2026-06-19 14:34:37,642.642 INFO    ] Checking for camera pi updates...
[2026-06-19 14:34:37,676.676 INFO    ] 200
[2026-06-19 14:34:37,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:37,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:34:37,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:34:37,870.870 INFO    ] No camera update needed
[2026-06-19 14:34:37,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:34:37,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:34:37,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:34:37,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:34:39,927.927 INFO    ] ================================================
[2026-06-19 14:34:39,949.949 INFO    ] Launching Daemon at Fri Jun 19 14:34:39 IST 2026
[2026-06-19 14:34:39,961.961 INFO    ] ================================================
[2026-06-19 14:34:40,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:34:40
[2026-06-19 14:34:41,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:34:41,439.439 INFO    ] Initializing speech engine...
[2026-06-19 14:34:41,448.448 INFO    ] 2026-06-19 14:34:41
[2026-06-19 14:34:41,698.698 INFO    ] 2026-06-19 14:34:41
[2026-06-19 14:34:41,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:34:41,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:34:41,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:34:42,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:34:42,251.251 INFO    ] time= 19/06/2026 14:34:42
[2026-06-19 14:34:42,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:34:42,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:34:42,403.403 INFO    ] No existing commands found in stream
[2026-06-19 14:34:47,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:34:47,421.421 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 14:34:48,061.061 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:34:48,064.064 INFO    ] Checking for system updates...
[2026-06-19 14:34:48,101.101 INFO    ] 200
[2026-06-19 14:34:48,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:48,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:34:48,165.165 INFO    ] No update needed
[2026-06-19 14:34:48,167.167 INFO    ] Checking for camera pi updates...
[2026-06-19 14:34:48,204.204 INFO    ] 200
[2026-06-19 14:34:48,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:48,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:34:48,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:34:48,284.284 INFO    ] No camera update needed
[2026-06-19 14:34:48,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:34:48,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:34:48,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:34:48,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:34:50,340.340 INFO    ] ================================================
[2026-06-19 14:34:50,355.355 INFO    ] Launching Daemon at Fri Jun 19 14:34:50 IST 2026
[2026-06-19 14:34:50,366.366 INFO    ] ================================================
[2026-06-19 14:34:51,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:34:51
[2026-06-19 14:34:51,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:34:51,974.974 INFO    ] Initializing speech engine...
[2026-06-19 14:34:51,988.988 INFO    ] 2026-06-19 14:34:51
[2026-06-19 14:34:52,272.272 INFO    ] 2026-06-19 14:34:52
[2026-06-19 14:34:52,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:34:52,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:34:52,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:34:52,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:34:52,718.718 INFO    ] time= 19/06/2026 14:34:52
[2026-06-19 14:34:52,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:34:52,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:34:52,944.944 INFO    ] No existing commands found in stream
[2026-06-19 14:34:57,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:34:57,974.974 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 14:34:58,901.901 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:34:58,904.904 INFO    ] Checking for system updates...
[2026-06-19 14:34:58,939.939 INFO    ] 200
[2026-06-19 14:34:58,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:59,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:34:59,003.003 INFO    ] No update needed
[2026-06-19 14:34:59,005.005 INFO    ] Checking for camera pi updates...
[2026-06-19 14:34:59,038.038 INFO    ] 200
[2026-06-19 14:34:59,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:34:59,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:34:59,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:34:59,131.131 INFO    ] No camera update needed
[2026-06-19 14:34:59,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:34:59,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:34:59,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:34:59,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:35:01,185.185 INFO    ] ================================================
[2026-06-19 14:35:01,201.201 INFO    ] Launching Daemon at Fri Jun 19 14:35:01 IST 2026
[2026-06-19 14:35:01,212.212 INFO    ] ================================================
[2026-06-19 14:35:01,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:35:01
[2026-06-19 14:35:02,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:35:03,049.049 INFO    ] Initializing speech engine...
[2026-06-19 14:35:03,059.059 INFO    ] 2026-06-19 14:35:03
[2026-06-19 14:35:03,378.378 INFO    ] 2026-06-19 14:35:03
[2026-06-19 14:35:03,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:35:03,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:35:03,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:35:03,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:35:03,992.992 INFO    ] time= 19/06/2026 14:35:03
[2026-06-19 14:35:04,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:35:04,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:35:04,156.156 INFO    ] No existing commands found in stream
[2026-06-19 14:35:09,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:35:09,175.175 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 14:35:12,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:35:12,493.493 INFO    ] Checking for system updates...
[2026-06-19 14:35:12,531.531 INFO    ] 200
[2026-06-19 14:35:12,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:35:12,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:35:12,591.591 INFO    ] No update needed
[2026-06-19 14:35:12,594.594 INFO    ] Checking for camera pi updates...
[2026-06-19 14:35:12,631.631 INFO    ] 200
[2026-06-19 14:35:12,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:35:12,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:35:12,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:35:12,736.736 INFO    ] No camera update needed
[2026-06-19 14:35:12,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:35:12,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:35:12,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:35:12,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:35:14,796.796 INFO    ] ================================================
[2026-06-19 14:35:14,811.811 INFO    ] Launching Daemon at Fri Jun 19 14:35:14 IST 2026
[2026-06-19 14:35:14,822.822 INFO    ] ================================================
[2026-06-19 14:35:15,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:35:15
[2026-06-19 14:35:15,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:35:16,231.231 INFO    ] Initializing speech engine...
[2026-06-19 14:35:16,240.240 INFO    ] 2026-06-19 14:35:16
[2026-06-19 14:35:16,517.517 INFO    ] 2026-06-19 14:35:16
[2026-06-19 14:35:16,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:35:16,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:35:16,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:35:16,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:35:16,900.900 INFO    ] time= 19/06/2026 14:35:16
[2026-06-19 14:35:16,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:35:16,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:35:17,091.091 INFO    ] No existing commands found in stream
[2026-06-19 14:35:22,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:35:22,116.116 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 14:35:25,889.889 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:35:25,891.891 INFO    ] Checking for system updates...
[2026-06-19 14:35:25,927.927 INFO    ] 200
[2026-06-19 14:35:25,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:35:25,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:35:25,993.993 INFO    ] No update needed
[2026-06-19 14:35:25,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 14:35:26,031.031 INFO    ] 200
[2026-06-19 14:35:26,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:35:26,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:35:26,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:35:26,121.121 INFO    ] No camera update needed
[2026-06-19 14:35:26,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:35:26,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:35:26,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:35:26,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:35:28,178.178 INFO    ] ================================================
[2026-06-19 14:35:28,193.193 INFO    ] Launching Daemon at Fri Jun 19 14:35:28 IST 2026
[2026-06-19 14:35:28,204.204 INFO    ] ================================================
[2026-06-19 14:35:28,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:35:28
[2026-06-19 14:35:29,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:35:29,670.670 INFO    ] Initializing speech engine...
[2026-06-19 14:35:29,676.676 INFO    ] 2026-06-19 14:35:29
[2026-06-19 14:35:29,933.933 INFO    ] 2026-06-19 14:35:29
[2026-06-19 14:35:29,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:35:30,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:35:30,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:35:30,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:35:30,559.559 INFO    ] time= 19/06/2026 14:35:30
[2026-06-19 14:35:30,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:35:30,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:35:30,695.695 INFO    ] No existing commands found in stream
[2026-06-19 14:35:35,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:35:35,729.729 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 14:35:37,411.411 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:35:37,414.414 INFO    ] Checking for system updates...
[2026-06-19 14:35:37,450.450 INFO    ] 200
[2026-06-19 14:35:37,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:35:37,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:35:37,512.512 INFO    ] No update needed
[2026-06-19 14:35:37,514.514 INFO    ] Checking for camera pi updates...
[2026-06-19 14:35:37,548.548 INFO    ] 200
[2026-06-19 14:35:37,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:35:37,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:35:37,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:35:37,638.638 INFO    ] No camera update needed
[2026-06-19 14:35:37,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:35:37,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:35:37,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:35:37,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:35:39,695.695 INFO    ] ================================================
[2026-06-19 14:35:39,710.710 INFO    ] Launching Daemon at Fri Jun 19 14:35:39 IST 2026
[2026-06-19 14:35:39,721.721 INFO    ] ================================================
[2026-06-19 14:35:40,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:35:40
[2026-06-19 14:35:40,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:35:41,140.140 INFO    ] Initializing speech engine...
[2026-06-19 14:35:41,150.150 INFO    ] 2026-06-19 14:35:41
[2026-06-19 14:35:41,397.397 INFO    ] 2026-06-19 14:35:41
[2026-06-19 14:35:41,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:35:41,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:35:41,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:35:41,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:35:41,770.770 INFO    ] time= 19/06/2026 14:35:41
[2026-06-19 14:35:41,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:35:41,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:35:41,964.964 INFO    ] No existing commands found in stream
[2026-06-19 14:35:46,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:35:46,978.978 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 14:35:50,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:35:50,840.840 INFO    ] Checking for system updates...
[2026-06-19 14:35:50,879.879 INFO    ] 200
[2026-06-19 14:35:50,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:35:50,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:35:50,936.936 INFO    ] No update needed
[2026-06-19 14:35:50,939.939 INFO    ] Checking for camera pi updates...
[2026-06-19 14:35:50,972.972 INFO    ] 200
[2026-06-19 14:35:50,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:35:51,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:35:51,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:35:51,068.068 INFO    ] No camera update needed
[2026-06-19 14:35:51,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:35:51,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:35:51,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:35:51,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:35:53,124.124 INFO    ] ================================================
[2026-06-19 14:35:53,139.139 INFO    ] Launching Daemon at Fri Jun 19 14:35:53 IST 2026
[2026-06-19 14:35:53,150.150 INFO    ] ================================================
[2026-06-19 14:35:53,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:35:53
[2026-06-19 14:35:54,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:35:54,552.552 INFO    ] Initializing speech engine...
[2026-06-19 14:35:54,559.559 INFO    ] 2026-06-19 14:35:54
[2026-06-19 14:35:54,841.841 INFO    ] 2026-06-19 14:35:54
[2026-06-19 14:35:54,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:35:55,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:35:55,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:35:55,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:35:55,226.226 INFO    ] time= 19/06/2026 14:35:55
[2026-06-19 14:35:55,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:35:55,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:35:55,421.421 INFO    ] No existing commands found in stream
[2026-06-19 14:36:00,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:36:00,437.437 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 14:36:03,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:36:03,823.823 INFO    ] Checking for system updates...
[2026-06-19 14:36:03,859.859 INFO    ] 200
[2026-06-19 14:36:03,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:03,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:36:03,919.919 INFO    ] No update needed
[2026-06-19 14:36:03,921.921 INFO    ] Checking for camera pi updates...
[2026-06-19 14:36:03,961.961 INFO    ] 200
[2026-06-19 14:36:03,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:04,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:36:04,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:36:04,064.064 INFO    ] No camera update needed
[2026-06-19 14:36:04,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:36:04,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:36:04,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:36:04,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:36:06,123.123 INFO    ] ================================================
[2026-06-19 14:36:06,138.138 INFO    ] Launching Daemon at Fri Jun 19 14:36:06 IST 2026
[2026-06-19 14:36:06,149.149 INFO    ] ================================================
[2026-06-19 14:36:06,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:36:06
[2026-06-19 14:36:07,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:36:07,704.704 INFO    ] Initializing speech engine...
[2026-06-19 14:36:07,710.710 INFO    ] 2026-06-19 14:36:07
[2026-06-19 14:36:07,980.980 INFO    ] 2026-06-19 14:36:07
[2026-06-19 14:36:08,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:36:08,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:36:08,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:36:08,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:36:08,452.452 INFO    ] time= 19/06/2026 14:36:08
[2026-06-19 14:36:08,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:36:08,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:36:08,688.688 INFO    ] No existing commands found in stream
[2026-06-19 14:36:13,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:36:13,722.722 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 14:36:14,219.219 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:36:14,222.222 INFO    ] Checking for system updates...
[2026-06-19 14:36:14,259.259 INFO    ] 200
[2026-06-19 14:36:14,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:14,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:36:14,319.319 INFO    ] No update needed
[2026-06-19 14:36:14,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 14:36:14,359.359 INFO    ] 200
[2026-06-19 14:36:14,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:14,409.409 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:36:14,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:36:14,452.452 INFO    ] No camera update needed
[2026-06-19 14:36:14,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:36:14,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:36:14,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:36:14,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:36:16,507.507 INFO    ] ================================================
[2026-06-19 14:36:16,521.521 INFO    ] Launching Daemon at Fri Jun 19 14:36:16 IST 2026
[2026-06-19 14:36:16,532.532 INFO    ] ================================================
[2026-06-19 14:36:17,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:36:17
[2026-06-19 14:36:17,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:36:18,111.111 INFO    ] Initializing speech engine...
[2026-06-19 14:36:18,119.119 INFO    ] 2026-06-19 14:36:18
[2026-06-19 14:36:18,407.407 INFO    ] 2026-06-19 14:36:18
[2026-06-19 14:36:18,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:36:18,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:36:18,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:36:18,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:36:18,930.930 INFO    ] time= 19/06/2026 14:36:18
[2026-06-19 14:36:18,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:36:18,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:36:19,063.063 INFO    ] No existing commands found in stream
[2026-06-19 14:36:24,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:36:24,075.075 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 14:36:26,393.393 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:36:26,395.395 INFO    ] Checking for system updates...
[2026-06-19 14:36:26,431.431 INFO    ] 200
[2026-06-19 14:36:26,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:26,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:36:26,494.494 INFO    ] No update needed
[2026-06-19 14:36:26,497.497 INFO    ] Checking for camera pi updates...
[2026-06-19 14:36:26,534.534 INFO    ] 200
[2026-06-19 14:36:26,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:26,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:36:26,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:36:26,631.631 INFO    ] No camera update needed
[2026-06-19 14:36:26,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:36:26,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:36:26,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:36:26,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:36:28,688.688 INFO    ] ================================================
[2026-06-19 14:36:28,703.703 INFO    ] Launching Daemon at Fri Jun 19 14:36:28 IST 2026
[2026-06-19 14:36:28,714.714 INFO    ] ================================================
[2026-06-19 14:36:29,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:36:29
[2026-06-19 14:36:29,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:36:30,128.128 INFO    ] Initializing speech engine...
[2026-06-19 14:36:30,141.141 INFO    ] 2026-06-19 14:36:30
[2026-06-19 14:36:30,406.406 INFO    ] 2026-06-19 14:36:30
[2026-06-19 14:36:30,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:36:30,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:36:30,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:36:30,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:36:30,961.961 INFO    ] time= 19/06/2026 14:36:30
[2026-06-19 14:36:30,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:36:30,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:36:31,111.111 INFO    ] No existing commands found in stream
[2026-06-19 14:36:36,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:36:36,131.131 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 14:36:38,257.257 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:36:38,260.260 INFO    ] Checking for system updates...
[2026-06-19 14:36:38,296.296 INFO    ] 200
[2026-06-19 14:36:38,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:38,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:36:38,353.353 INFO    ] No update needed
[2026-06-19 14:36:38,355.355 INFO    ] Checking for camera pi updates...
[2026-06-19 14:36:38,391.391 INFO    ] 200
[2026-06-19 14:36:38,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:38,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:36:38,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:36:38,477.477 INFO    ] No camera update needed
[2026-06-19 14:36:38,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:36:38,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:36:38,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:36:38,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:36:40,533.533 INFO    ] ================================================
[2026-06-19 14:36:40,548.548 INFO    ] Launching Daemon at Fri Jun 19 14:36:40 IST 2026
[2026-06-19 14:36:40,559.559 INFO    ] ================================================
[2026-06-19 14:36:41,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:36:41
[2026-06-19 14:36:41,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:36:42,026.026 INFO    ] Initializing speech engine...
[2026-06-19 14:36:42,035.035 INFO    ] 2026-06-19 14:36:42
[2026-06-19 14:36:42,282.282 INFO    ] 2026-06-19 14:36:42
[2026-06-19 14:36:42,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:36:42,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:36:42,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:36:42,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:36:42,747.747 INFO    ] time= 19/06/2026 14:36:42
[2026-06-19 14:36:42,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:36:42,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:36:42,994.994 INFO    ] No existing commands found in stream
[2026-06-19 14:36:48,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:36:48,019.019 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 14:36:49,755.755 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:36:49,757.757 INFO    ] Checking for system updates...
[2026-06-19 14:36:49,794.794 INFO    ] 200
[2026-06-19 14:36:49,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:49,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:36:49,852.852 INFO    ] No update needed
[2026-06-19 14:36:49,854.854 INFO    ] Checking for camera pi updates...
[2026-06-19 14:36:49,891.891 INFO    ] 200
[2026-06-19 14:36:49,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:36:49,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:36:50,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:36:50,089.089 INFO    ] No camera update needed
[2026-06-19 14:36:50,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:36:50,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:36:50,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:36:50,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:36:52,145.145 INFO    ] ================================================
[2026-06-19 14:36:52,161.161 INFO    ] Launching Daemon at Fri Jun 19 14:36:52 IST 2026
[2026-06-19 14:36:52,172.172 INFO    ] ================================================
[2026-06-19 14:36:52,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:36:52
[2026-06-19 14:36:53,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:36:53,628.628 INFO    ] Initializing speech engine...
[2026-06-19 14:36:53,637.637 INFO    ] 2026-06-19 14:36:53
[2026-06-19 14:36:53,902.902 INFO    ] 2026-06-19 14:36:53
[2026-06-19 14:36:53,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:36:54,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:36:54,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:36:54,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:36:54,363.363 INFO    ] time= 19/06/2026 14:36:54
[2026-06-19 14:36:54,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:36:54,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:36:54,612.612 INFO    ] No existing commands found in stream
[2026-06-19 14:36:59,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:36:59,640.640 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 14:37:00,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:37:00,738.738 INFO    ] Checking for system updates...
[2026-06-19 14:37:00,775.775 INFO    ] 200
[2026-06-19 14:37:00,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:00,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:37:00,833.833 INFO    ] No update needed
[2026-06-19 14:37:00,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 14:37:00,872.872 INFO    ] 200
[2026-06-19 14:37:00,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:00,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:37:00,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:37:00,972.972 INFO    ] No camera update needed
[2026-06-19 14:37:00,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:37:00,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:37:00,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:37:00,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:37:03,030.030 INFO    ] ================================================
[2026-06-19 14:37:03,046.046 INFO    ] Launching Daemon at Fri Jun 19 14:37:03 IST 2026
[2026-06-19 14:37:03,057.057 INFO    ] ================================================
[2026-06-19 14:37:03,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:37:03
[2026-06-19 14:37:04,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:37:04,682.682 INFO    ] Initializing speech engine...
[2026-06-19 14:37:04,694.694 INFO    ] 2026-06-19 14:37:04
[2026-06-19 14:37:04,963.963 INFO    ] 2026-06-19 14:37:04
[2026-06-19 14:37:05,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:37:05,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:37:05,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:37:05,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:37:05,524.524 INFO    ] time= 19/06/2026 14:37:05
[2026-06-19 14:37:05,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:37:05,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:37:05,662.662 INFO    ] No existing commands found in stream
[2026-06-19 14:37:10,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:37:10,698.698 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 14:37:12,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:37:12,471.471 INFO    ] Checking for system updates...
[2026-06-19 14:37:12,512.512 INFO    ] 200
[2026-06-19 14:37:12,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:12,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:37:12,572.572 INFO    ] No update needed
[2026-06-19 14:37:12,575.575 INFO    ] Checking for camera pi updates...
[2026-06-19 14:37:12,612.612 INFO    ] 200
[2026-06-19 14:37:12,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:12,657.657 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:37:12,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:37:12,704.704 INFO    ] No camera update needed
[2026-06-19 14:37:12,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:37:12,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:37:12,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:37:12,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:37:14,762.762 INFO    ] ================================================
[2026-06-19 14:37:14,777.777 INFO    ] Launching Daemon at Fri Jun 19 14:37:14 IST 2026
[2026-06-19 14:37:14,788.788 INFO    ] ================================================
[2026-06-19 14:37:15,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:37:15
[2026-06-19 14:37:16,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:37:16,374.374 INFO    ] Initializing speech engine...
[2026-06-19 14:37:16,388.388 INFO    ] 2026-06-19 14:37:16
[2026-06-19 14:37:16,667.667 INFO    ] 2026-06-19 14:37:16
[2026-06-19 14:37:16,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:37:16,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:37:16,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:37:17,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:37:17,205.205 INFO    ] time= 19/06/2026 14:37:17
[2026-06-19 14:37:17,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:37:17,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:37:17,364.364 INFO    ] No existing commands found in stream
[2026-06-19 14:37:22,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:37:22,397.397 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 14:37:25,113.113 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:37:25,117.117 INFO    ] Checking for system updates...
[2026-06-19 14:37:25,153.153 INFO    ] 200
[2026-06-19 14:37:25,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:25,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:37:25,215.215 INFO    ] No update needed
[2026-06-19 14:37:25,217.217 INFO    ] Checking for camera pi updates...
[2026-06-19 14:37:25,254.254 INFO    ] 200
[2026-06-19 14:37:25,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:25,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:37:25,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:37:25,346.346 INFO    ] No camera update needed
[2026-06-19 14:37:25,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:37:25,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:37:25,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:37:25,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:37:27,401.401 INFO    ] ================================================
[2026-06-19 14:37:27,416.416 INFO    ] Launching Daemon at Fri Jun 19 14:37:27 IST 2026
[2026-06-19 14:37:27,427.427 INFO    ] ================================================
[2026-06-19 14:37:27,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:37:27
[2026-06-19 14:37:28,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:37:28,883.883 INFO    ] Initializing speech engine...
[2026-06-19 14:37:28,897.897 INFO    ] 2026-06-19 14:37:28
[2026-06-19 14:37:29,176.176 INFO    ] 2026-06-19 14:37:29
[2026-06-19 14:37:29,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:37:29,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:37:29,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:37:29,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:37:29,665.665 INFO    ] time= 19/06/2026 14:37:29
[2026-06-19 14:37:29,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:37:29,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:37:29,886.886 INFO    ] No existing commands found in stream
[2026-06-19 14:37:34,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:37:34,905.905 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 14:37:38,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:37:38,700.700 INFO    ] Checking for system updates...
[2026-06-19 14:37:38,739.739 INFO    ] 200
[2026-06-19 14:37:38,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:38,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:37:38,802.802 INFO    ] No update needed
[2026-06-19 14:37:38,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 14:37:38,840.840 INFO    ] 200
[2026-06-19 14:37:38,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:38,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:37:38,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:37:38,925.925 INFO    ] No camera update needed
[2026-06-19 14:37:38,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:37:38,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:37:38,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:37:38,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:37:40,979.979 INFO    ] ================================================
[2026-06-19 14:37:41,994.994 INFO    ] Launching Daemon at Fri Jun 19 14:37:40 IST 2026
[2026-06-19 14:37:41,006.006 INFO    ] ================================================
[2026-06-19 14:37:41,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:37:41
[2026-06-19 14:37:42,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:37:42,508.508 INFO    ] Initializing speech engine...
[2026-06-19 14:37:42,519.519 INFO    ] 2026-06-19 14:37:42
[2026-06-19 14:37:42,827.827 INFO    ] 2026-06-19 14:37:42
[2026-06-19 14:37:42,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:37:43,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:37:43,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:37:43,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:37:43,346.346 INFO    ] time= 19/06/2026 14:37:43
[2026-06-19 14:37:43,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:37:43,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:37:43,486.486 INFO    ] No existing commands found in stream
[2026-06-19 14:37:48,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:37:48,524.524 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 14:37:50,411.411 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:37:50,414.414 INFO    ] Checking for system updates...
[2026-06-19 14:37:50,451.451 INFO    ] 200
[2026-06-19 14:37:50,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:50,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:37:50,510.510 INFO    ] No update needed
[2026-06-19 14:37:50,512.512 INFO    ] Checking for camera pi updates...
[2026-06-19 14:37:50,547.547 INFO    ] 200
[2026-06-19 14:37:50,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:37:50,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:37:50,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:37:50,641.641 INFO    ] No camera update needed
[2026-06-19 14:37:50,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:37:50,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:37:50,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:37:50,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:37:52,701.701 INFO    ] ================================================
[2026-06-19 14:37:52,716.716 INFO    ] Launching Daemon at Fri Jun 19 14:37:52 IST 2026
[2026-06-19 14:37:52,727.727 INFO    ] ================================================
[2026-06-19 14:37:53,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:37:53
[2026-06-19 14:37:53,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:37:54,180.180 INFO    ] Initializing speech engine...
[2026-06-19 14:37:54,188.188 INFO    ] 2026-06-19 14:37:54
[2026-06-19 14:37:54,437.437 INFO    ] 2026-06-19 14:37:54
[2026-06-19 14:37:54,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:37:54,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:37:54,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:37:54,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:37:54,919.919 INFO    ] time= 19/06/2026 14:37:54
[2026-06-19 14:37:54,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:37:55,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:37:55,144.144 INFO    ] No existing commands found in stream
[2026-06-19 14:38:00,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:38:00,336.336 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 14:38:04,426.426 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:38:04,429.429 INFO    ] Checking for system updates...
[2026-06-19 14:38:04,486.486 INFO    ] 200
[2026-06-19 14:38:04,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:04,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:38:04,546.546 INFO    ] No update needed
[2026-06-19 14:38:04,548.548 INFO    ] Checking for camera pi updates...
[2026-06-19 14:38:04,586.586 INFO    ] 200
[2026-06-19 14:38:04,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:04,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:38:04,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:38:04,683.683 INFO    ] No camera update needed
[2026-06-19 14:38:04,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:38:04,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:38:04,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:38:04,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:38:06,740.740 INFO    ] ================================================
[2026-06-19 14:38:06,756.756 INFO    ] Launching Daemon at Fri Jun 19 14:38:06 IST 2026
[2026-06-19 14:38:06,767.767 INFO    ] ================================================
[2026-06-19 14:38:07,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:38:07
[2026-06-19 14:38:07,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:38:08,232.232 INFO    ] Initializing speech engine...
[2026-06-19 14:38:08,241.241 INFO    ] 2026-06-19 14:38:08
[2026-06-19 14:38:08,514.514 INFO    ] 2026-06-19 14:38:08
[2026-06-19 14:38:08,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:38:08,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:38:08,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:38:09,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:38:09,046.046 INFO    ] time= 19/06/2026 14:38:09
[2026-06-19 14:38:09,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:38:09,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:38:09,199.199 INFO    ] No existing commands found in stream
[2026-06-19 14:38:14,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:38:14,215.215 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 14:38:16,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:38:16,280.280 INFO    ] Checking for system updates...
[2026-06-19 14:38:16,320.320 INFO    ] 200
[2026-06-19 14:38:16,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:16,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:38:16,385.385 INFO    ] No update needed
[2026-06-19 14:38:16,387.387 INFO    ] Checking for camera pi updates...
[2026-06-19 14:38:16,422.422 INFO    ] 200
[2026-06-19 14:38:16,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:16,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:38:16,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:38:16,515.515 INFO    ] No camera update needed
[2026-06-19 14:38:16,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:38:16,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:38:16,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:38:16,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:38:18,574.574 INFO    ] ================================================
[2026-06-19 14:38:18,591.591 INFO    ] Launching Daemon at Fri Jun 19 14:38:18 IST 2026
[2026-06-19 14:38:18,602.602 INFO    ] ================================================
[2026-06-19 14:38:19,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:38:19
[2026-06-19 14:38:19,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:38:20,060.060 INFO    ] Initializing speech engine...
[2026-06-19 14:38:20,070.070 INFO    ] 2026-06-19 14:38:20
[2026-06-19 14:38:20,324.324 INFO    ] 2026-06-19 14:38:20
[2026-06-19 14:38:20,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:38:20,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:38:20,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:38:20,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:38:20,803.803 INFO    ] time= 19/06/2026 14:38:20
[2026-06-19 14:38:20,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:38:20,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:38:21,031.031 INFO    ] No existing commands found in stream
[2026-06-19 14:38:26,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:38:26,056.056 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 14:38:29,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:38:29,586.586 INFO    ] Checking for system updates...
[2026-06-19 14:38:29,627.627 INFO    ] 200
[2026-06-19 14:38:29,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:29,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:38:29,687.687 INFO    ] No update needed
[2026-06-19 14:38:29,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 14:38:29,728.728 INFO    ] 200
[2026-06-19 14:38:29,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:29,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:38:29,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:38:29,824.824 INFO    ] No camera update needed
[2026-06-19 14:38:29,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:38:29,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:38:29,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:38:29,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:38:31,882.882 INFO    ] ================================================
[2026-06-19 14:38:31,898.898 INFO    ] Launching Daemon at Fri Jun 19 14:38:31 IST 2026
[2026-06-19 14:38:31,909.909 INFO    ] ================================================
[2026-06-19 14:38:32,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:38:32
[2026-06-19 14:38:33,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:38:33,616.616 INFO    ] Initializing speech engine...
[2026-06-19 14:38:33,640.640 INFO    ] 2026-06-19 14:38:33
[2026-06-19 14:38:33,916.916 INFO    ] 2026-06-19 14:38:33
[2026-06-19 14:38:33,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:38:34,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:38:34,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:38:34,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:38:34,342.342 INFO    ] time= 19/06/2026 14:38:34
[2026-06-19 14:38:34,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:38:34,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:38:34,428.428 INFO    ] No existing commands found in stream
[2026-06-19 14:38:39,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:38:39,443.443 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 14:38:44,208.208 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:38:44,211.211 INFO    ] Checking for system updates...
[2026-06-19 14:38:44,251.251 INFO    ] 200
[2026-06-19 14:38:44,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:44,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:38:44,315.315 INFO    ] No update needed
[2026-06-19 14:38:44,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 14:38:44,352.352 INFO    ] 200
[2026-06-19 14:38:44,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:44,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:38:44,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:38:44,444.444 INFO    ] No camera update needed
[2026-06-19 14:38:44,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:38:44,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:38:44,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:38:44,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:38:46,498.498 INFO    ] ================================================
[2026-06-19 14:38:46,515.515 INFO    ] Launching Daemon at Fri Jun 19 14:38:46 IST 2026
[2026-06-19 14:38:46,527.527 INFO    ] ================================================
[2026-06-19 14:38:47,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:38:47
[2026-06-19 14:38:47,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:38:47,946.946 INFO    ] Initializing speech engine...
[2026-06-19 14:38:47,974.974 INFO    ] 2026-06-19 14:38:47
[2026-06-19 14:38:48,230.230 INFO    ] 2026-06-19 14:38:48
[2026-06-19 14:38:48,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:38:48,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:38:48,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:38:48,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:38:48,795.795 INFO    ] time= 19/06/2026 14:38:48
[2026-06-19 14:38:48,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:38:48,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:38:48,956.956 INFO    ] No existing commands found in stream
[2026-06-19 14:38:53,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:38:53,987.987 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 14:38:55,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:38:55,724.724 INFO    ] Checking for system updates...
[2026-06-19 14:38:55,766.766 INFO    ] 200
[2026-06-19 14:38:55,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:55,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:38:55,833.833 INFO    ] No update needed
[2026-06-19 14:38:55,836.836 INFO    ] Checking for camera pi updates...
[2026-06-19 14:38:55,875.875 INFO    ] 200
[2026-06-19 14:38:55,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:38:55,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:38:56,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:38:56,072.072 INFO    ] No camera update needed
[2026-06-19 14:38:56,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:38:56,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:38:56,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:38:56,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:38:58,128.128 INFO    ] ================================================
[2026-06-19 14:38:58,142.142 INFO    ] Launching Daemon at Fri Jun 19 14:38:58 IST 2026
[2026-06-19 14:38:58,153.153 INFO    ] ================================================
[2026-06-19 14:38:58,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:38:58
[2026-06-19 14:38:59,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:38:59,805.805 INFO    ] Initializing speech engine...
[2026-06-19 14:38:59,820.820 INFO    ] 2026-06-19 14:38:59
[2026-06-19 14:39:00,136.136 INFO    ] 2026-06-19 14:39:00
[2026-06-19 14:39:00,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:39:00,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:39:00,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:39:00,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:39:00,656.656 INFO    ] time= 19/06/2026 14:39:00
[2026-06-19 14:39:00,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:39:00,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:39:00,844.844 INFO    ] No existing commands found in stream
[2026-06-19 14:39:05,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:39:05,879.879 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 14:39:07,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:39:07,870.870 INFO    ] Checking for system updates...
[2026-06-19 14:39:07,908.908 INFO    ] 200
[2026-06-19 14:39:07,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:07,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:39:07,967.967 INFO    ] No update needed
[2026-06-19 14:39:07,970.970 INFO    ] Checking for camera pi updates...
[2026-06-19 14:39:08,004.004 INFO    ] 200
[2026-06-19 14:39:08,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:08,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:39:08,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:39:08,101.101 INFO    ] No camera update needed
[2026-06-19 14:39:08,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:39:08,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:39:08,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:39:08,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:39:10,160.160 INFO    ] ================================================
[2026-06-19 14:39:10,175.175 INFO    ] Launching Daemon at Fri Jun 19 14:39:10 IST 2026
[2026-06-19 14:39:10,186.186 INFO    ] ================================================
[2026-06-19 14:39:10,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:39:10
[2026-06-19 14:39:11,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:39:11,699.699 INFO    ] Initializing speech engine...
[2026-06-19 14:39:11,705.705 INFO    ] 2026-06-19 14:39:11
[2026-06-19 14:39:11,949.949 INFO    ] 2026-06-19 14:39:11
[2026-06-19 14:39:11,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:39:12,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:39:12,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:39:12,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:39:12,418.418 INFO    ] time= 19/06/2026 14:39:12
[2026-06-19 14:39:12,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:39:12,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:39:12,679.679 INFO    ] No existing commands found in stream
[2026-06-19 14:39:17,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:39:17,707.707 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 14:39:21,654.654 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:39:21,656.656 INFO    ] Checking for system updates...
[2026-06-19 14:39:21,703.703 INFO    ] 200
[2026-06-19 14:39:21,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:21,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:39:21,761.761 INFO    ] No update needed
[2026-06-19 14:39:21,764.764 INFO    ] Checking for camera pi updates...
[2026-06-19 14:39:21,800.800 INFO    ] 200
[2026-06-19 14:39:21,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:21,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:39:21,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:39:21,892.892 INFO    ] No camera update needed
[2026-06-19 14:39:21,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:39:21,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:39:21,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:39:21,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:39:23,947.947 INFO    ] ================================================
[2026-06-19 14:39:23,962.962 INFO    ] Launching Daemon at Fri Jun 19 14:39:23 IST 2026
[2026-06-19 14:39:23,973.973 INFO    ] ================================================
[2026-06-19 14:39:24,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:39:24
[2026-06-19 14:39:25,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:39:25,425.425 INFO    ] Initializing speech engine...
[2026-06-19 14:39:25,434.434 INFO    ] 2026-06-19 14:39:25
[2026-06-19 14:39:25,693.693 INFO    ] 2026-06-19 14:39:25
[2026-06-19 14:39:25,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:39:25,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:39:25,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:39:26,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:39:26,240.240 INFO    ] time= 19/06/2026 14:39:26
[2026-06-19 14:39:26,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:39:26,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:39:26,390.390 INFO    ] No existing commands found in stream
[2026-06-19 14:39:31,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:39:31,409.409 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 14:39:33,173.173 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:39:33,177.177 INFO    ] Checking for system updates...
[2026-06-19 14:39:33,223.223 INFO    ] 200
[2026-06-19 14:39:33,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:33,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:39:33,291.291 INFO    ] No update needed
[2026-06-19 14:39:33,294.294 INFO    ] Checking for camera pi updates...
[2026-06-19 14:39:33,329.329 INFO    ] 200
[2026-06-19 14:39:33,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:33,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:39:33,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:39:33,407.407 INFO    ] No camera update needed
[2026-06-19 14:39:33,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:39:33,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:39:33,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:39:33,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:39:35,464.464 INFO    ] ================================================
[2026-06-19 14:39:35,479.479 INFO    ] Launching Daemon at Fri Jun 19 14:39:35 IST 2026
[2026-06-19 14:39:35,490.490 INFO    ] ================================================
[2026-06-19 14:39:36,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:39:36
[2026-06-19 14:39:36,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:39:36,946.946 INFO    ] Initializing speech engine...
[2026-06-19 14:39:36,956.956 INFO    ] 2026-06-19 14:39:36
[2026-06-19 14:39:37,217.217 INFO    ] 2026-06-19 14:39:37
[2026-06-19 14:39:37,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:39:37,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:39:37,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:39:37,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:39:37,705.705 INFO    ] time= 19/06/2026 14:39:37
[2026-06-19 14:39:37,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:39:37,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:39:38,301.301 INFO    ] No existing commands found in stream
[2026-06-19 14:39:43,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:39:43,333.333 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 14:39:45,292.292 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:39:45,294.294 INFO    ] Checking for system updates...
[2026-06-19 14:39:45,332.332 INFO    ] 200
[2026-06-19 14:39:45,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:45,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:39:45,390.390 INFO    ] No update needed
[2026-06-19 14:39:45,393.393 INFO    ] Checking for camera pi updates...
[2026-06-19 14:39:45,427.427 INFO    ] 200
[2026-06-19 14:39:45,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:45,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:39:45,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:39:45,524.524 INFO    ] No camera update needed
[2026-06-19 14:39:45,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:39:45,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:39:45,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:39:45,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:39:47,578.578 INFO    ] ================================================
[2026-06-19 14:39:47,594.594 INFO    ] Launching Daemon at Fri Jun 19 14:39:47 IST 2026
[2026-06-19 14:39:47,605.605 INFO    ] ================================================
[2026-06-19 14:39:48,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:39:48
[2026-06-19 14:39:48,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:39:49,133.133 INFO    ] Initializing speech engine...
[2026-06-19 14:39:49,138.138 INFO    ] 2026-06-19 14:39:49
[2026-06-19 14:39:49,409.409 INFO    ] 2026-06-19 14:39:49
[2026-06-19 14:39:49,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:39:49,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:39:49,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:39:49,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:39:49,902.902 INFO    ] time= 19/06/2026 14:39:49
[2026-06-19 14:39:49,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:39:49,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:39:50,108.108 INFO    ] No existing commands found in stream
[2026-06-19 14:39:55,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:39:55,127.127 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 14:39:59,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:39:59,378.378 INFO    ] Checking for system updates...
[2026-06-19 14:39:59,415.415 INFO    ] 200
[2026-06-19 14:39:59,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:59,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:39:59,479.479 INFO    ] No update needed
[2026-06-19 14:39:59,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 14:39:59,515.515 INFO    ] 200
[2026-06-19 14:39:59,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:39:59,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:39:59,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:39:59,607.607 INFO    ] No camera update needed
[2026-06-19 14:39:59,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:39:59,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:39:59,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:39:59,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:40:01,664.664 INFO    ] ================================================
[2026-06-19 14:40:01,680.680 INFO    ] Launching Daemon at Fri Jun 19 14:40:01 IST 2026
[2026-06-19 14:40:01,691.691 INFO    ] ================================================
[2026-06-19 14:40:02,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:40:02
[2026-06-19 14:40:03,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:40:03,831.831 INFO    ] Initializing speech engine...
[2026-06-19 14:40:03,840.840 INFO    ] 2026-06-19 14:40:03
[2026-06-19 14:40:04,197.197 INFO    ] 2026-06-19 14:40:04
[2026-06-19 14:40:04,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:40:04,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:40:04,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:40:04,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:40:04,621.621 INFO    ] time= 19/06/2026 14:40:04
[2026-06-19 14:40:04,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:40:04,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:40:04,819.819 INFO    ] No existing commands found in stream
[2026-06-19 14:40:09,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:40:09,841.841 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 14:40:10,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:40:10,644.644 INFO    ] Checking for system updates...
[2026-06-19 14:40:10,680.680 INFO    ] 200
[2026-06-19 14:40:10,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:40:10,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:40:10,743.743 INFO    ] No update needed
[2026-06-19 14:40:10,745.745 INFO    ] Checking for camera pi updates...
[2026-06-19 14:40:10,780.780 INFO    ] 200
[2026-06-19 14:40:10,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:40:10,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:40:10,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:40:10,875.875 INFO    ] No camera update needed
[2026-06-19 14:40:10,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:40:10,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:40:10,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:40:10,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:40:12,930.930 INFO    ] ================================================
[2026-06-19 14:40:12,946.946 INFO    ] Launching Daemon at Fri Jun 19 14:40:12 IST 2026
[2026-06-19 14:40:12,957.957 INFO    ] ================================================
[2026-06-19 14:40:13,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:40:13
[2026-06-19 14:40:14,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:40:14,574.574 INFO    ] Initializing speech engine...
[2026-06-19 14:40:14,581.581 INFO    ] 2026-06-19 14:40:14
[2026-06-19 14:40:14,869.869 INFO    ] 2026-06-19 14:40:14
[2026-06-19 14:40:14,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:40:15,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:40:15,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:40:15,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:40:15,351.351 INFO    ] time= 19/06/2026 14:40:15
[2026-06-19 14:40:15,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:40:15,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:40:15,557.557 INFO    ] No existing commands found in stream
[2026-06-19 14:40:20,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:40:20,578.578 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 14:40:22,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:40:22,751.751 INFO    ] Checking for system updates...
[2026-06-19 14:40:22,789.789 INFO    ] 200
[2026-06-19 14:40:22,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:40:22,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:40:22,853.853 INFO    ] No update needed
[2026-06-19 14:40:22,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 14:40:22,890.890 INFO    ] 200
[2026-06-19 14:40:22,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:40:22,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:40:22,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:40:22,979.979 INFO    ] No camera update needed
[2026-06-19 14:40:22,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:40:22,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:40:22,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:40:22,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:40:25,036.036 INFO    ] ================================================
[2026-06-19 14:40:25,052.052 INFO    ] Launching Daemon at Fri Jun 19 14:40:25 IST 2026
[2026-06-19 14:40:25,063.063 INFO    ] ================================================
[2026-06-19 14:40:25,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:40:25
[2026-06-19 14:40:26,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:40:26,483.483 INFO    ] Initializing speech engine...
[2026-06-19 14:40:26,491.491 INFO    ] 2026-06-19 14:40:26
[2026-06-19 14:40:26,742.742 INFO    ] 2026-06-19 14:40:26
[2026-06-19 14:40:26,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:40:26,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:40:26,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:40:27,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:40:27,113.113 INFO    ] time= 19/06/2026 14:40:27
[2026-06-19 14:40:27,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:40:27,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:40:27,282.282 INFO    ] No existing commands found in stream
[2026-06-19 14:40:32,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:40:32,306.306 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 14:40:36,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:40:36,008.008 INFO    ] Checking for system updates...
[2026-06-19 14:40:36,054.054 INFO    ] 200
[2026-06-19 14:40:36,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:40:36,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:40:36,122.122 INFO    ] No update needed
[2026-06-19 14:40:36,125.125 INFO    ] Checking for camera pi updates...
[2026-06-19 14:40:36,163.163 INFO    ] 200
[2026-06-19 14:40:36,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:40:36,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:40:36,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:40:36,251.251 INFO    ] No camera update needed
[2026-06-19 14:40:36,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:40:36,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:40:36,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:40:36,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:40:38,312.312 INFO    ] ================================================
[2026-06-19 14:40:38,327.327 INFO    ] Launching Daemon at Fri Jun 19 14:40:38 IST 2026
[2026-06-19 14:40:38,339.339 INFO    ] ================================================
[2026-06-19 14:40:38,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:40:38
[2026-06-19 14:40:39,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:40:39,803.803 INFO    ] Initializing speech engine...
[2026-06-19 14:40:39,812.812 INFO    ] 2026-06-19 14:40:39
[2026-06-19 14:40:40,077.077 INFO    ] 2026-06-19 14:40:40
[2026-06-19 14:40:40,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:40:40,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:40:40,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:40:40,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:40:40,622.622 INFO    ] time= 19/06/2026 14:40:40
[2026-06-19 14:40:40,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:40:40,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:40:40,773.773 INFO    ] No existing commands found in stream
[2026-06-19 14:40:45,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:40:45,792.792 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 14:40:50,170.170 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:40:50,173.173 INFO    ] Checking for system updates...
[2026-06-19 14:40:50,209.209 INFO    ] 200
[2026-06-19 14:40:50,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:40:50,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:40:50,267.267 INFO    ] No update needed
[2026-06-19 14:40:50,270.270 INFO    ] Checking for camera pi updates...
[2026-06-19 14:40:50,308.308 INFO    ] 200
[2026-06-19 14:40:50,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:40:50,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:40:50,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:40:50,399.399 INFO    ] No camera update needed
[2026-06-19 14:40:50,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:40:50,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:40:50,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:40:50,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:40:52,455.455 INFO    ] ================================================
[2026-06-19 14:40:52,471.471 INFO    ] Launching Daemon at Fri Jun 19 14:40:52 IST 2026
[2026-06-19 14:40:52,483.483 INFO    ] ================================================
[2026-06-19 14:40:53,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:40:53
[2026-06-19 14:40:53,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:40:53,883.883 INFO    ] Initializing speech engine...
[2026-06-19 14:40:53,890.890 INFO    ] 2026-06-19 14:40:53
[2026-06-19 14:40:54,163.163 INFO    ] 2026-06-19 14:40:54
[2026-06-19 14:40:54,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:40:54,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:40:54,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:40:54,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:40:54,648.648 INFO    ] time= 19/06/2026 14:40:54
[2026-06-19 14:40:54,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:40:54,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:40:54,874.874 INFO    ] No existing commands found in stream
[2026-06-19 14:40:59,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:40:59,904.904 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 14:41:00,987.987 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:41:00,990.990 INFO    ] Checking for system updates...
[2026-06-19 14:41:01,032.032 INFO    ] 200
[2026-06-19 14:41:01,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:01,091.091 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:41:01,094.094 INFO    ] No update needed
[2026-06-19 14:41:01,097.097 INFO    ] Checking for camera pi updates...
[2026-06-19 14:41:01,136.136 INFO    ] 200
[2026-06-19 14:41:01,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:01,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:41:01,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:41:01,329.329 INFO    ] No camera update needed
[2026-06-19 14:41:01,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:41:01,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:41:01,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:41:01,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:41:03,409.409 INFO    ] ================================================
[2026-06-19 14:41:03,425.425 INFO    ] Launching Daemon at Fri Jun 19 14:41:03 IST 2026
[2026-06-19 14:41:03,436.436 INFO    ] ================================================
[2026-06-19 14:41:04,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:41:04
[2026-06-19 14:41:04,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:41:05,014.014 INFO    ] Initializing speech engine...
[2026-06-19 14:41:05,025.025 INFO    ] 2026-06-19 14:41:05
[2026-06-19 14:41:05,298.298 INFO    ] 2026-06-19 14:41:05
[2026-06-19 14:41:05,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:41:05,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:41:05,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:41:05,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:41:05,800.800 INFO    ] time= 19/06/2026 14:41:05
[2026-06-19 14:41:05,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:41:05,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:41:06,016.016 INFO    ] No existing commands found in stream
[2026-06-19 14:41:11,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:41:11,043.043 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 14:41:14,431.431 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:41:14,434.434 INFO    ] Checking for system updates...
[2026-06-19 14:41:14,472.472 INFO    ] 200
[2026-06-19 14:41:14,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:14,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:41:14,539.539 INFO    ] No update needed
[2026-06-19 14:41:14,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 14:41:14,579.579 INFO    ] 200
[2026-06-19 14:41:14,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:14,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:41:14,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:41:14,669.669 INFO    ] No camera update needed
[2026-06-19 14:41:14,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:41:14,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:41:14,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:41:14,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:41:16,727.727 INFO    ] ================================================
[2026-06-19 14:41:16,743.743 INFO    ] Launching Daemon at Fri Jun 19 14:41:16 IST 2026
[2026-06-19 14:41:16,754.754 INFO    ] ================================================
[2026-06-19 14:41:17,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:41:17
[2026-06-19 14:41:17,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:41:18,164.164 INFO    ] Initializing speech engine...
[2026-06-19 14:41:18,179.179 INFO    ] 2026-06-19 14:41:18
[2026-06-19 14:41:18,448.448 INFO    ] 2026-06-19 14:41:18
[2026-06-19 14:41:18,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:41:18,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:41:18,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:41:18,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:41:18,932.932 INFO    ] time= 19/06/2026 14:41:18
[2026-06-19 14:41:18,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:41:19,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:41:19,160.160 INFO    ] No existing commands found in stream
[2026-06-19 14:41:24,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:41:24,193.193 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 14:41:27,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:41:27,682.682 INFO    ] Checking for system updates...
[2026-06-19 14:41:27,721.721 INFO    ] 200
[2026-06-19 14:41:27,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:27,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:41:27,783.783 INFO    ] No update needed
[2026-06-19 14:41:27,786.786 INFO    ] Checking for camera pi updates...
[2026-06-19 14:41:27,819.819 INFO    ] 200
[2026-06-19 14:41:27,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:27,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:41:27,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:41:27,894.894 INFO    ] No camera update needed
[2026-06-19 14:41:27,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:41:27,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:41:27,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:41:27,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:41:29,950.950 INFO    ] ================================================
[2026-06-19 14:41:29,966.966 INFO    ] Launching Daemon at Fri Jun 19 14:41:29 IST 2026
[2026-06-19 14:41:29,978.978 INFO    ] ================================================
[2026-06-19 14:41:30,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:41:30
[2026-06-19 14:41:31,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:41:31,606.606 INFO    ] Initializing speech engine...
[2026-06-19 14:41:31,618.618 INFO    ] 2026-06-19 14:41:31
[2026-06-19 14:41:31,898.898 INFO    ] 2026-06-19 14:41:31
[2026-06-19 14:41:31,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:41:32,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:41:32,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:41:32,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:41:32,416.416 INFO    ] time= 19/06/2026 14:41:32
[2026-06-19 14:41:32,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:41:32,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:41:32,635.635 INFO    ] No existing commands found in stream
[2026-06-19 14:41:37,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:41:37,652.652 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 14:41:41,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:41:41,373.373 INFO    ] Checking for system updates...
[2026-06-19 14:41:41,409.409 INFO    ] 200
[2026-06-19 14:41:41,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:41,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:41:41,470.470 INFO    ] No update needed
[2026-06-19 14:41:41,472.472 INFO    ] Checking for camera pi updates...
[2026-06-19 14:41:41,506.506 INFO    ] 200
[2026-06-19 14:41:41,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:41,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:41:41,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:41:41,602.602 INFO    ] No camera update needed
[2026-06-19 14:41:41,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:41:41,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:41:41,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:41:41,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:41:43,663.663 INFO    ] ================================================
[2026-06-19 14:41:43,679.679 INFO    ] Launching Daemon at Fri Jun 19 14:41:43 IST 2026
[2026-06-19 14:41:43,690.690 INFO    ] ================================================
[2026-06-19 14:41:44,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:41:44
[2026-06-19 14:41:44,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:41:45,156.156 INFO    ] Initializing speech engine...
[2026-06-19 14:41:45,165.165 INFO    ] 2026-06-19 14:41:45
[2026-06-19 14:41:45,416.416 INFO    ] 2026-06-19 14:41:45
[2026-06-19 14:41:45,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:41:45,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:41:45,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:41:45,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:41:45,924.924 INFO    ] time= 19/06/2026 14:41:45
[2026-06-19 14:41:45,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:41:45,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:41:46,130.130 INFO    ] No existing commands found in stream
[2026-06-19 14:41:51,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:41:51,152.152 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 14:41:54,912.912 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:41:54,915.915 INFO    ] Checking for system updates...
[2026-06-19 14:41:54,954.954 INFO    ] 200
[2026-06-19 14:41:54,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:55,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:41:55,012.012 INFO    ] No update needed
[2026-06-19 14:41:55,014.014 INFO    ] Checking for camera pi updates...
[2026-06-19 14:41:55,048.048 INFO    ] 200
[2026-06-19 14:41:55,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:41:55,091.091 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:41:55,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:41:55,132.132 INFO    ] No camera update needed
[2026-06-19 14:41:55,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:41:55,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:41:55,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:41:55,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:41:57,188.188 INFO    ] ================================================
[2026-06-19 14:41:57,203.203 INFO    ] Launching Daemon at Fri Jun 19 14:41:57 IST 2026
[2026-06-19 14:41:57,214.214 INFO    ] ================================================
[2026-06-19 14:41:57,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:41:57
[2026-06-19 14:41:58,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:41:58,828.828 INFO    ] Initializing speech engine...
[2026-06-19 14:41:58,842.842 INFO    ] 2026-06-19 14:41:58
[2026-06-19 14:41:59,150.150 INFO    ] 2026-06-19 14:41:59
[2026-06-19 14:41:59,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:41:59,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:41:59,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:41:59,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:41:59,657.657 INFO    ] time= 19/06/2026 14:41:59
[2026-06-19 14:41:59,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:41:59,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:41:59,814.814 INFO    ] No existing commands found in stream
[2026-06-19 14:42:04,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:42:04,832.832 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 14:42:08,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:42:08,996.996 INFO    ] Checking for system updates...
[2026-06-19 14:42:09,036.036 INFO    ] 200
[2026-06-19 14:42:09,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:09,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:42:09,099.099 INFO    ] No update needed
[2026-06-19 14:42:09,102.102 INFO    ] Checking for camera pi updates...
[2026-06-19 14:42:09,137.137 INFO    ] 200
[2026-06-19 14:42:09,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:09,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:42:09,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:42:09,226.226 INFO    ] No camera update needed
[2026-06-19 14:42:09,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:42:09,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:42:09,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:42:09,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:42:11,281.281 INFO    ] ================================================
[2026-06-19 14:42:11,302.302 INFO    ] Launching Daemon at Fri Jun 19 14:42:11 IST 2026
[2026-06-19 14:42:11,313.313 INFO    ] ================================================
[2026-06-19 14:42:11,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:42:11
[2026-06-19 14:42:12,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:42:12,761.761 INFO    ] Initializing speech engine...
[2026-06-19 14:42:12,785.785 INFO    ] 2026-06-19 14:42:12
[2026-06-19 14:42:13,059.059 INFO    ] 2026-06-19 14:42:13
[2026-06-19 14:42:13,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:42:13,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:42:13,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:42:13,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:42:13,706.706 INFO    ] time= 19/06/2026 14:42:13
[2026-06-19 14:42:13,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:42:13,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:42:13,853.853 INFO    ] No existing commands found in stream
[2026-06-19 14:42:18,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:42:18,872.872 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 14:42:22,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:42:22,440.440 INFO    ] Checking for system updates...
[2026-06-19 14:42:22,477.477 INFO    ] 200
[2026-06-19 14:42:22,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:22,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:42:22,535.535 INFO    ] No update needed
[2026-06-19 14:42:22,538.538 INFO    ] Checking for camera pi updates...
[2026-06-19 14:42:22,574.574 INFO    ] 200
[2026-06-19 14:42:22,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:22,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:42:22,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:42:22,658.658 INFO    ] No camera update needed
[2026-06-19 14:42:22,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:42:22,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:42:22,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:42:22,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:42:24,714.714 INFO    ] ================================================
[2026-06-19 14:42:24,729.729 INFO    ] Launching Daemon at Fri Jun 19 14:42:24 IST 2026
[2026-06-19 14:42:24,740.740 INFO    ] ================================================
[2026-06-19 14:42:25,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:42:25
[2026-06-19 14:42:25,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:42:26,209.209 INFO    ] Initializing speech engine...
[2026-06-19 14:42:26,218.218 INFO    ] 2026-06-19 14:42:26
[2026-06-19 14:42:26,477.477 INFO    ] 2026-06-19 14:42:26
[2026-06-19 14:42:26,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:42:26,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:42:26,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:42:26,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:42:26,966.966 INFO    ] time= 19/06/2026 14:42:26
[2026-06-19 14:42:27,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:42:27,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:42:27,183.183 INFO    ] No existing commands found in stream
[2026-06-19 14:42:32,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:42:32,200.200 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 14:42:34,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:42:34,622.622 INFO    ] Checking for system updates...
[2026-06-19 14:42:34,659.659 INFO    ] 200
[2026-06-19 14:42:34,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:34,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:42:34,716.716 INFO    ] No update needed
[2026-06-19 14:42:34,719.719 INFO    ] Checking for camera pi updates...
[2026-06-19 14:42:34,753.753 INFO    ] 200
[2026-06-19 14:42:34,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:34,796.796 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:42:34,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:42:34,850.850 INFO    ] No camera update needed
[2026-06-19 14:42:34,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:42:34,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:42:34,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:42:34,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:42:36,905.905 INFO    ] ================================================
[2026-06-19 14:42:36,920.920 INFO    ] Launching Daemon at Fri Jun 19 14:42:36 IST 2026
[2026-06-19 14:42:36,932.932 INFO    ] ================================================
[2026-06-19 14:42:37,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:42:37
[2026-06-19 14:42:38,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:42:38,391.391 INFO    ] Initializing speech engine...
[2026-06-19 14:42:38,397.397 INFO    ] 2026-06-19 14:42:38
[2026-06-19 14:42:38,645.645 INFO    ] 2026-06-19 14:42:38
[2026-06-19 14:42:38,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:42:38,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:42:38,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:42:39,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:42:39,204.204 INFO    ] time= 19/06/2026 14:42:39
[2026-06-19 14:42:39,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:42:39,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:42:39,356.356 INFO    ] No existing commands found in stream
[2026-06-19 14:42:44,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:42:44,374.374 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 14:42:45,354.354 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:42:45,357.357 INFO    ] Checking for system updates...
[2026-06-19 14:42:45,395.395 INFO    ] 200
[2026-06-19 14:42:45,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:45,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:42:45,462.462 INFO    ] No update needed
[2026-06-19 14:42:45,464.464 INFO    ] Checking for camera pi updates...
[2026-06-19 14:42:45,498.498 INFO    ] 200
[2026-06-19 14:42:45,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:45,542.542 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:42:45,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:42:45,583.583 INFO    ] No camera update needed
[2026-06-19 14:42:45,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:42:45,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:42:45,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:42:45,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:42:47,642.642 INFO    ] ================================================
[2026-06-19 14:42:47,658.658 INFO    ] Launching Daemon at Fri Jun 19 14:42:47 IST 2026
[2026-06-19 14:42:47,668.668 INFO    ] ================================================
[2026-06-19 14:42:48,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:42:48
[2026-06-19 14:42:48,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:42:49,070.070 INFO    ] Initializing speech engine...
[2026-06-19 14:42:49,078.078 INFO    ] 2026-06-19 14:42:49
[2026-06-19 14:42:49,352.352 INFO    ] 2026-06-19 14:42:49
[2026-06-19 14:42:49,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:42:49,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:42:49,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:42:49,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:42:49,864.864 INFO    ] time= 19/06/2026 14:42:49
[2026-06-19 14:42:49,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:42:49,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:42:50,073.073 INFO    ] No existing commands found in stream
[2026-06-19 14:42:55,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:42:55,093.093 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 14:42:55,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:42:55,853.853 INFO    ] Checking for system updates...
[2026-06-19 14:42:55,889.889 INFO    ] 200
[2026-06-19 14:42:55,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:55,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:42:55,952.952 INFO    ] No update needed
[2026-06-19 14:42:55,955.955 INFO    ] Checking for camera pi updates...
[2026-06-19 14:42:55,992.992 INFO    ] 200
[2026-06-19 14:42:55,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:42:56,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:42:56,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:42:56,085.085 INFO    ] No camera update needed
[2026-06-19 14:42:56,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:42:56,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:42:56,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:42:56,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:42:58,141.141 INFO    ] ================================================
[2026-06-19 14:42:58,157.157 INFO    ] Launching Daemon at Fri Jun 19 14:42:58 IST 2026
[2026-06-19 14:42:58,168.168 INFO    ] ================================================
[2026-06-19 14:42:58,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:42:58
[2026-06-19 14:42:59,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:42:59,641.641 INFO    ] Initializing speech engine...
[2026-06-19 14:42:59,659.659 INFO    ] 2026-06-19 14:42:59
[2026-06-19 14:42:59,911.911 INFO    ] 2026-06-19 14:42:59
[2026-06-19 14:42:59,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:43:00,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:43:00,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:43:00,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:43:00,396.396 INFO    ] time= 19/06/2026 14:43:00
[2026-06-19 14:43:00,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:43:00,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:43:00,600.600 INFO    ] No existing commands found in stream
[2026-06-19 14:43:05,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:43:05,626.626 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 14:43:07,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:43:07,559.559 INFO    ] Checking for system updates...
[2026-06-19 14:43:07,596.596 INFO    ] 200
[2026-06-19 14:43:07,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:07,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:43:07,656.656 INFO    ] No update needed
[2026-06-19 14:43:07,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 14:43:07,694.694 INFO    ] 200
[2026-06-19 14:43:07,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:07,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:43:07,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:43:07,884.884 INFO    ] No camera update needed
[2026-06-19 14:43:07,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:43:07,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:43:07,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:43:07,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:43:09,945.945 INFO    ] ================================================
[2026-06-19 14:43:09,961.961 INFO    ] Launching Daemon at Fri Jun 19 14:43:09 IST 2026
[2026-06-19 14:43:09,972.972 INFO    ] ================================================
[2026-06-19 14:43:10,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:43:10
[2026-06-19 14:43:11,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:43:11,629.629 INFO    ] Initializing speech engine...
[2026-06-19 14:43:11,640.640 INFO    ] 2026-06-19 14:43:11
[2026-06-19 14:43:11,930.930 INFO    ] 2026-06-19 14:43:11
[2026-06-19 14:43:12,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:43:12,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:43:12,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:43:12,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:43:12,459.459 INFO    ] time= 19/06/2026 14:43:12
[2026-06-19 14:43:12,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:43:12,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:43:12,613.613 INFO    ] No existing commands found in stream
[2026-06-19 14:43:17,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:43:17,638.638 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-19 14:43:21,753.753 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:43:21,756.756 INFO    ] Checking for system updates...
[2026-06-19 14:43:21,798.798 INFO    ] 200
[2026-06-19 14:43:21,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:21,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:43:21,874.874 INFO    ] No update needed
[2026-06-19 14:43:21,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 14:43:21,916.916 INFO    ] 200
[2026-06-19 14:43:21,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:21,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:43:22,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:43:22,023.023 INFO    ] No camera update needed
[2026-06-19 14:43:22,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:43:22,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:43:22,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:43:22,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:43:24,083.083 INFO    ] ================================================
[2026-06-19 14:43:24,099.099 INFO    ] Launching Daemon at Fri Jun 19 14:43:24 IST 2026
[2026-06-19 14:43:24,110.110 INFO    ] ================================================
[2026-06-19 14:43:24,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:43:24
[2026-06-19 14:43:25,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:43:25,539.539 INFO    ] Initializing speech engine...
[2026-06-19 14:43:25,546.546 INFO    ] 2026-06-19 14:43:25
[2026-06-19 14:43:25,793.793 INFO    ] 2026-06-19 14:43:25
[2026-06-19 14:43:25,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:43:26,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:43:26,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:43:26,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:43:26,302.302 INFO    ] time= 19/06/2026 14:43:26
[2026-06-19 14:43:26,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:43:26,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:43:26,501.501 INFO    ] No existing commands found in stream
[2026-06-19 14:43:31,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:43:31,528.528 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 14:43:33,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:43:33,290.290 INFO    ] Checking for system updates...
[2026-06-19 14:43:33,331.331 INFO    ] 200
[2026-06-19 14:43:33,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:33,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:43:33,399.399 INFO    ] No update needed
[2026-06-19 14:43:33,402.402 INFO    ] Checking for camera pi updates...
[2026-06-19 14:43:33,441.441 INFO    ] 200
[2026-06-19 14:43:33,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:33,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:43:33,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:43:33,537.537 INFO    ] No camera update needed
[2026-06-19 14:43:33,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:43:33,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:43:33,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:43:33,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:43:35,594.594 INFO    ] ================================================
[2026-06-19 14:43:35,609.609 INFO    ] Launching Daemon at Fri Jun 19 14:43:35 IST 2026
[2026-06-19 14:43:35,620.620 INFO    ] ================================================
[2026-06-19 14:43:36,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:43:36
[2026-06-19 14:43:36,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:43:37,079.079 INFO    ] Initializing speech engine...
[2026-06-19 14:43:37,088.088 INFO    ] 2026-06-19 14:43:37
[2026-06-19 14:43:37,348.348 INFO    ] 2026-06-19 14:43:37
[2026-06-19 14:43:37,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:43:37,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:43:37,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:43:37,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:43:37,807.807 INFO    ] time= 19/06/2026 14:43:37
[2026-06-19 14:43:37,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:43:37,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:43:38,043.043 INFO    ] No existing commands found in stream
[2026-06-19 14:43:43,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:43:43,061.061 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 14:43:43,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:43:43,822.822 INFO    ] Checking for system updates...
[2026-06-19 14:43:43,858.858 INFO    ] 200
[2026-06-19 14:43:43,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:43,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:43:43,918.918 INFO    ] No update needed
[2026-06-19 14:43:43,920.920 INFO    ] Checking for camera pi updates...
[2026-06-19 14:43:43,956.956 INFO    ] 200
[2026-06-19 14:43:43,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:44,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:43:44,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:43:44,047.047 INFO    ] No camera update needed
[2026-06-19 14:43:44,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:43:44,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:43:44,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:43:44,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:43:46,107.107 INFO    ] ================================================
[2026-06-19 14:43:46,122.122 INFO    ] Launching Daemon at Fri Jun 19 14:43:46 IST 2026
[2026-06-19 14:43:46,133.133 INFO    ] ================================================
[2026-06-19 14:43:46,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:43:46
[2026-06-19 14:43:47,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:43:47,662.662 INFO    ] Initializing speech engine...
[2026-06-19 14:43:47,678.678 INFO    ] 2026-06-19 14:43:47
[2026-06-19 14:43:47,964.964 INFO    ] 2026-06-19 14:43:47
[2026-06-19 14:43:48,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:43:48,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:43:48,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:43:48,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:43:48,349.349 INFO    ] time= 19/06/2026 14:43:48
[2026-06-19 14:43:48,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:43:48,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:43:48,474.474 INFO    ] No existing commands found in stream
[2026-06-19 14:43:53,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:43:53,490.490 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 14:43:56,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:43:56,401.401 INFO    ] Checking for system updates...
[2026-06-19 14:43:56,438.438 INFO    ] 200
[2026-06-19 14:43:56,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:56,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:43:56,497.497 INFO    ] No update needed
[2026-06-19 14:43:56,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 14:43:56,534.534 INFO    ] 200
[2026-06-19 14:43:56,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:43:56,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:43:56,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:43:56,637.637 INFO    ] No camera update needed
[2026-06-19 14:43:56,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:43:56,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:43:56,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:43:56,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:43:58,695.695 INFO    ] ================================================
[2026-06-19 14:43:58,710.710 INFO    ] Launching Daemon at Fri Jun 19 14:43:58 IST 2026
[2026-06-19 14:43:58,720.720 INFO    ] ================================================
[2026-06-19 14:43:59,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:43:59
[2026-06-19 14:43:59,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:44:00,252.252 INFO    ] Initializing speech engine...
[2026-06-19 14:44:00,271.271 INFO    ] 2026-06-19 14:44:00
[2026-06-19 14:44:00,523.523 INFO    ] 2026-06-19 14:44:00
[2026-06-19 14:44:00,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:44:00,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:44:00,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:44:01,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:44:01,093.093 INFO    ] time= 19/06/2026 14:44:01
[2026-06-19 14:44:01,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:44:01,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:44:01,237.237 INFO    ] No existing commands found in stream
[2026-06-19 14:44:06,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:44:06,262.262 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 14:44:10,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:44:10,249.249 INFO    ] Checking for system updates...
[2026-06-19 14:44:10,284.284 INFO    ] 200
[2026-06-19 14:44:10,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:10,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:44:10,342.342 INFO    ] No update needed
[2026-06-19 14:44:10,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 14:44:10,378.378 INFO    ] 200
[2026-06-19 14:44:10,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:10,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:44:10,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:44:10,471.471 INFO    ] No camera update needed
[2026-06-19 14:44:10,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:44:10,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:44:10,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:44:10,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:44:12,527.527 INFO    ] ================================================
[2026-06-19 14:44:12,543.543 INFO    ] Launching Daemon at Fri Jun 19 14:44:12 IST 2026
[2026-06-19 14:44:12,554.554 INFO    ] ================================================
[2026-06-19 14:44:13,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:44:13
[2026-06-19 14:44:13,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:44:13,960.960 INFO    ] Initializing speech engine...
[2026-06-19 14:44:13,985.985 INFO    ] 2026-06-19 14:44:13
[2026-06-19 14:44:14,253.253 INFO    ] 2026-06-19 14:44:14
[2026-06-19 14:44:14,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:44:14,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:44:14,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:44:14,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:44:14,757.757 INFO    ] time= 19/06/2026 14:44:14
[2026-06-19 14:44:14,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:44:14,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:44:15,008.008 INFO    ] No existing commands found in stream
[2026-06-19 14:44:20,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:44:20,033.033 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 14:44:22,881.881 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:44:22,884.884 INFO    ] Checking for system updates...
[2026-06-19 14:44:22,920.920 INFO    ] 200
[2026-06-19 14:44:22,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:22,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:44:22,982.982 INFO    ] No update needed
[2026-06-19 14:44:22,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 14:44:23,018.018 INFO    ] 200
[2026-06-19 14:44:23,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:23,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:44:23,104.104 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:44:23,107.107 INFO    ] No camera update needed
[2026-06-19 14:44:23,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:44:23,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:44:23,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:44:23,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:44:25,162.162 INFO    ] ================================================
[2026-06-19 14:44:25,178.178 INFO    ] Launching Daemon at Fri Jun 19 14:44:25 IST 2026
[2026-06-19 14:44:25,190.190 INFO    ] ================================================
[2026-06-19 14:44:25,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:44:25
[2026-06-19 14:44:26,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:44:26,620.620 INFO    ] Initializing speech engine...
[2026-06-19 14:44:26,629.629 INFO    ] 2026-06-19 14:44:26
[2026-06-19 14:44:26,890.890 INFO    ] 2026-06-19 14:44:26
[2026-06-19 14:44:26,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:44:27,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:44:27,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:44:27,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:44:27,386.386 INFO    ] time= 19/06/2026 14:44:27
[2026-06-19 14:44:27,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:44:27,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:44:27,594.594 INFO    ] No existing commands found in stream
[2026-06-19 14:44:32,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:44:32,621.621 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 14:44:34,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:44:34,532.532 INFO    ] Checking for system updates...
[2026-06-19 14:44:34,567.567 INFO    ] 200
[2026-06-19 14:44:34,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:34,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:44:34,628.628 INFO    ] No update needed
[2026-06-19 14:44:34,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 14:44:34,668.668 INFO    ] 200
[2026-06-19 14:44:34,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:34,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:44:34,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:44:34,755.755 INFO    ] No camera update needed
[2026-06-19 14:44:34,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:44:34,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:44:34,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:44:34,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:44:36,811.811 INFO    ] ================================================
[2026-06-19 14:44:36,826.826 INFO    ] Launching Daemon at Fri Jun 19 14:44:36 IST 2026
[2026-06-19 14:44:36,838.838 INFO    ] ================================================
[2026-06-19 14:44:37,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:44:37
[2026-06-19 14:44:37,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:44:38,244.244 INFO    ] Initializing speech engine...
[2026-06-19 14:44:38,252.252 INFO    ] 2026-06-19 14:44:38
[2026-06-19 14:44:38,543.543 INFO    ] 2026-06-19 14:44:38
[2026-06-19 14:44:38,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:44:38,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:44:38,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:44:38,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:44:38,954.954 INFO    ] time= 19/06/2026 14:44:38
[2026-06-19 14:44:38,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:44:38,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:44:39,125.125 INFO    ] No existing commands found in stream
[2026-06-19 14:44:44,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:44:44,152.152 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 14:44:48,202.202 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:44:48,205.205 INFO    ] Checking for system updates...
[2026-06-19 14:44:48,240.240 INFO    ] 200
[2026-06-19 14:44:48,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:48,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:44:48,297.297 INFO    ] No update needed
[2026-06-19 14:44:48,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 14:44:48,333.333 INFO    ] 200
[2026-06-19 14:44:48,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:48,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:44:48,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:44:48,406.406 INFO    ] No camera update needed
[2026-06-19 14:44:48,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:44:48,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:44:48,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:44:48,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:44:50,461.461 INFO    ] ================================================
[2026-06-19 14:44:50,477.477 INFO    ] Launching Daemon at Fri Jun 19 14:44:50 IST 2026
[2026-06-19 14:44:50,492.492 INFO    ] ================================================
[2026-06-19 14:44:51,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:44:51
[2026-06-19 14:44:51,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:44:51,953.953 INFO    ] Initializing speech engine...
[2026-06-19 14:44:51,974.974 INFO    ] 2026-06-19 14:44:51
[2026-06-19 14:44:52,240.240 INFO    ] 2026-06-19 14:44:52
[2026-06-19 14:44:52,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:44:52,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:44:52,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:44:52,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:44:52,655.655 INFO    ] time= 19/06/2026 14:44:52
[2026-06-19 14:44:52,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:44:52,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:44:52,787.787 INFO    ] No existing commands found in stream
[2026-06-19 14:44:57,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:44:57,825.825 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 14:44:58,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:44:58,948.948 INFO    ] Checking for system updates...
[2026-06-19 14:44:58,984.984 INFO    ] 200
[2026-06-19 14:44:58,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:59,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:44:59,043.043 INFO    ] No update needed
[2026-06-19 14:44:59,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 14:44:59,082.082 INFO    ] 200
[2026-06-19 14:44:59,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:44:59,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:44:59,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:44:59,169.169 INFO    ] No camera update needed
[2026-06-19 14:44:59,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:44:59,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:44:59,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:44:59,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:45:01,225.225 INFO    ] ================================================
[2026-06-19 14:45:01,241.241 INFO    ] Launching Daemon at Fri Jun 19 14:45:01 IST 2026
[2026-06-19 14:45:01,252.252 INFO    ] ================================================
[2026-06-19 14:45:02,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:45:02
[2026-06-19 14:45:03,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:45:03,658.658 INFO    ] Initializing speech engine...
[2026-06-19 14:45:03,676.676 INFO    ] 2026-06-19 14:45:03
[2026-06-19 14:45:03,947.947 INFO    ] 2026-06-19 14:45:03
[2026-06-19 14:45:03,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:45:04,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:45:04,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:45:04,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:45:04,453.453 INFO    ] time= 19/06/2026 14:45:04
[2026-06-19 14:45:04,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:45:04,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:45:04,668.668 INFO    ] No existing commands found in stream
[2026-06-19 14:45:09,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:45:09,685.685 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 14:45:13,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:45:13,403.403 INFO    ] Checking for system updates...
[2026-06-19 14:45:13,441.441 INFO    ] 200
[2026-06-19 14:45:13,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:45:13,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:45:13,499.499 INFO    ] No update needed
[2026-06-19 14:45:13,502.502 INFO    ] Checking for camera pi updates...
[2026-06-19 14:45:13,537.537 INFO    ] 200
[2026-06-19 14:45:13,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:45:13,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:45:13,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:45:13,732.732 INFO    ] No camera update needed
[2026-06-19 14:45:13,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:45:13,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:45:13,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:45:13,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:45:15,790.790 INFO    ] ================================================
[2026-06-19 14:45:15,806.806 INFO    ] Launching Daemon at Fri Jun 19 14:45:15 IST 2026
[2026-06-19 14:45:15,817.817 INFO    ] ================================================
[2026-06-19 14:45:16,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:45:16
[2026-06-19 14:45:17,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:45:17,402.402 INFO    ] Initializing speech engine...
[2026-06-19 14:45:17,410.410 INFO    ] 2026-06-19 14:45:17
[2026-06-19 14:45:17,695.695 INFO    ] 2026-06-19 14:45:17
[2026-06-19 14:45:17,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:45:17,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:45:17,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:45:18,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:45:18,177.177 INFO    ] time= 19/06/2026 14:45:18
[2026-06-19 14:45:18,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:45:18,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:45:18,386.386 INFO    ] No existing commands found in stream
[2026-06-19 14:45:23,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:45:23,404.404 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 14:45:27,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:45:27,488.488 INFO    ] Checking for system updates...
[2026-06-19 14:45:27,530.530 INFO    ] 200
[2026-06-19 14:45:27,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:45:27,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:45:27,597.597 INFO    ] No update needed
[2026-06-19 14:45:27,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 14:45:27,636.636 INFO    ] 200
[2026-06-19 14:45:27,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:45:27,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:45:27,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:45:27,726.726 INFO    ] No camera update needed
[2026-06-19 14:45:27,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:45:27,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:45:27,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:45:27,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:45:29,792.792 INFO    ] ================================================
[2026-06-19 14:45:29,808.808 INFO    ] Launching Daemon at Fri Jun 19 14:45:29 IST 2026
[2026-06-19 14:45:29,820.820 INFO    ] ================================================
[2026-06-19 14:45:30,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:45:30
[2026-06-19 14:45:31,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:45:31,288.288 INFO    ] Initializing speech engine...
[2026-06-19 14:45:31,298.298 INFO    ] 2026-06-19 14:45:31
[2026-06-19 14:45:31,562.562 INFO    ] 2026-06-19 14:45:31
[2026-06-19 14:45:31,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:45:31,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:45:31,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:45:32,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:45:32,031.031 INFO    ] time= 19/06/2026 14:45:32
[2026-06-19 14:45:32,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:45:32,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:45:32,301.301 INFO    ] No existing commands found in stream
[2026-06-19 14:45:37,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:45:37,340.340 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 14:45:41,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:45:41,284.284 INFO    ] Checking for system updates...
[2026-06-19 14:45:41,326.326 INFO    ] 200
[2026-06-19 14:45:41,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:45:41,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:45:41,392.392 INFO    ] No update needed
[2026-06-19 14:45:41,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 14:45:41,429.429 INFO    ] 200
[2026-06-19 14:45:41,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:45:41,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:45:41,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:45:41,513.513 INFO    ] No camera update needed
[2026-06-19 14:45:41,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:45:41,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:45:41,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:45:41,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:45:43,570.570 INFO    ] ================================================
[2026-06-19 14:45:43,587.587 INFO    ] Launching Daemon at Fri Jun 19 14:45:43 IST 2026
[2026-06-19 14:45:43,597.597 INFO    ] ================================================
[2026-06-19 14:45:44,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:45:44
[2026-06-19 14:45:44,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:45:45,070.070 INFO    ] Initializing speech engine...
[2026-06-19 14:45:45,079.079 INFO    ] 2026-06-19 14:45:45
[2026-06-19 14:45:45,340.340 INFO    ] 2026-06-19 14:45:45
[2026-06-19 14:45:45,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:45:45,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:45:45,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:45:45,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:45:45,828.828 INFO    ] time= 19/06/2026 14:45:45
[2026-06-19 14:45:45,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:45:45,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:45:46,028.028 INFO    ] No existing commands found in stream
[2026-06-19 14:45:51,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:45:51,055.055 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 14:45:52,683.683 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:45:52,686.686 INFO    ] Checking for system updates...
[2026-06-19 14:45:52,724.724 INFO    ] 200
[2026-06-19 14:45:52,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:45:52,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:45:52,784.784 INFO    ] No update needed
[2026-06-19 14:45:52,787.787 INFO    ] Checking for camera pi updates...
[2026-06-19 14:45:52,821.821 INFO    ] 200
[2026-06-19 14:45:52,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:45:52,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:45:52,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:45:52,911.911 INFO    ] No camera update needed
[2026-06-19 14:45:52,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:45:52,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:45:52,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:45:52,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:45:54,967.967 INFO    ] ================================================
[2026-06-19 14:45:54,982.982 INFO    ] Launching Daemon at Fri Jun 19 14:45:54 IST 2026
[2026-06-19 14:45:54,993.993 INFO    ] ================================================
[2026-06-19 14:45:55,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:45:55
[2026-06-19 14:45:56,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:45:56,469.469 INFO    ] Initializing speech engine...
[2026-06-19 14:45:56,478.478 INFO    ] 2026-06-19 14:45:56
[2026-06-19 14:45:56,739.739 INFO    ] 2026-06-19 14:45:56
[2026-06-19 14:45:56,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:45:57,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:45:57,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:45:57,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:45:57,216.216 INFO    ] time= 19/06/2026 14:45:57
[2026-06-19 14:45:57,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:45:57,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:45:57,420.420 INFO    ] No existing commands found in stream
[2026-06-19 14:46:02,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:46:02,450.450 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 14:46:05,398.398 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:46:05,401.401 INFO    ] Checking for system updates...
[2026-06-19 14:46:05,438.438 INFO    ] 200
[2026-06-19 14:46:05,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:05,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:46:05,498.498 INFO    ] No update needed
[2026-06-19 14:46:05,501.501 INFO    ] Checking for camera pi updates...
[2026-06-19 14:46:05,536.536 INFO    ] 200
[2026-06-19 14:46:05,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:05,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:46:05,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:46:05,622.622 INFO    ] No camera update needed
[2026-06-19 14:46:05,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:46:05,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:46:05,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:46:05,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:46:07,677.677 INFO    ] ================================================
[2026-06-19 14:46:07,692.692 INFO    ] Launching Daemon at Fri Jun 19 14:46:07 IST 2026
[2026-06-19 14:46:07,703.703 INFO    ] ================================================
[2026-06-19 14:46:08,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:46:08
[2026-06-19 14:46:08,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:46:09,117.117 INFO    ] Initializing speech engine...
[2026-06-19 14:46:09,123.123 INFO    ] 2026-06-19 14:46:09
[2026-06-19 14:46:09,402.402 INFO    ] 2026-06-19 14:46:09
[2026-06-19 14:46:09,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:46:09,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:46:09,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:46:09,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:46:09,883.883 INFO    ] time= 19/06/2026 14:46:09
[2026-06-19 14:46:09,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:46:09,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:46:10,123.123 INFO    ] No existing commands found in stream
[2026-06-19 14:46:15,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:46:15,151.151 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 14:46:18,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:46:18,236.236 INFO    ] Checking for system updates...
[2026-06-19 14:46:18,276.276 INFO    ] 200
[2026-06-19 14:46:18,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:18,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:46:18,334.334 INFO    ] No update needed
[2026-06-19 14:46:18,337.337 INFO    ] Checking for camera pi updates...
[2026-06-19 14:46:18,376.376 INFO    ] 200
[2026-06-19 14:46:18,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:18,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:46:18,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:46:18,464.464 INFO    ] No camera update needed
[2026-06-19 14:46:18,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:46:18,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:46:18,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:46:18,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:46:20,525.525 INFO    ] ================================================
[2026-06-19 14:46:20,539.539 INFO    ] Launching Daemon at Fri Jun 19 14:46:20 IST 2026
[2026-06-19 14:46:20,550.550 INFO    ] ================================================
[2026-06-19 14:46:21,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:46:21
[2026-06-19 14:46:21,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:46:22,015.015 INFO    ] Initializing speech engine...
[2026-06-19 14:46:22,022.022 INFO    ] 2026-06-19 14:46:22
[2026-06-19 14:46:22,299.299 INFO    ] 2026-06-19 14:46:22
[2026-06-19 14:46:22,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:46:22,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:46:22,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:46:22,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:46:22,832.832 INFO    ] time= 19/06/2026 14:46:22
[2026-06-19 14:46:22,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:46:22,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:46:22,989.989 INFO    ] No existing commands found in stream
[2026-06-19 14:46:28,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:46:28,006.006 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 14:46:31,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:46:31,208.208 INFO    ] Checking for system updates...
[2026-06-19 14:46:31,248.248 INFO    ] 200
[2026-06-19 14:46:31,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:31,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:46:31,306.306 INFO    ] No update needed
[2026-06-19 14:46:31,309.309 INFO    ] Checking for camera pi updates...
[2026-06-19 14:46:31,347.347 INFO    ] 200
[2026-06-19 14:46:31,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:31,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:46:31,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:46:31,436.436 INFO    ] No camera update needed
[2026-06-19 14:46:31,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:46:31,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:46:31,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:46:31,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:46:33,492.492 INFO    ] ================================================
[2026-06-19 14:46:33,507.507 INFO    ] Launching Daemon at Fri Jun 19 14:46:33 IST 2026
[2026-06-19 14:46:33,518.518 INFO    ] ================================================
[2026-06-19 14:46:34,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:46:34
[2026-06-19 14:46:34,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:46:35,004.004 INFO    ] Initializing speech engine...
[2026-06-19 14:46:35,015.015 INFO    ] 2026-06-19 14:46:35
[2026-06-19 14:46:35,310.310 INFO    ] 2026-06-19 14:46:35
[2026-06-19 14:46:35,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:46:35,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:46:35,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:46:35,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:46:35,869.869 INFO    ] time= 19/06/2026 14:46:35
[2026-06-19 14:46:35,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:46:35,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:46:36,018.018 INFO    ] No existing commands found in stream
[2026-06-19 14:46:41,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:46:41,052.052 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 14:46:41,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:46:41,709.709 INFO    ] Checking for system updates...
[2026-06-19 14:46:41,747.747 INFO    ] 200
[2026-06-19 14:46:41,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:41,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:46:41,814.814 INFO    ] No update needed
[2026-06-19 14:46:41,817.817 INFO    ] Checking for camera pi updates...
[2026-06-19 14:46:41,852.852 INFO    ] 200
[2026-06-19 14:46:41,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:41,897.897 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:46:41,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:46:41,944.944 INFO    ] No camera update needed
[2026-06-19 14:46:41,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:46:41,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:46:41,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:46:41,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:46:44,007.007 INFO    ] ================================================
[2026-06-19 14:46:44,026.026 INFO    ] Launching Daemon at Fri Jun 19 14:46:44 IST 2026
[2026-06-19 14:46:44,037.037 INFO    ] ================================================
[2026-06-19 14:46:44,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:46:44
[2026-06-19 14:46:45,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:46:45,456.456 INFO    ] Initializing speech engine...
[2026-06-19 14:46:45,469.469 INFO    ] 2026-06-19 14:46:45
[2026-06-19 14:46:45,733.733 INFO    ] 2026-06-19 14:46:45
[2026-06-19 14:46:45,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:46:46,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:46:46,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:46:46,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:46:46,290.290 INFO    ] time= 19/06/2026 14:46:46
[2026-06-19 14:46:46,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:46:46,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:46:46,447.447 INFO    ] No existing commands found in stream
[2026-06-19 14:46:51,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:46:51,464.464 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 14:46:54,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:46:54,502.502 INFO    ] Checking for system updates...
[2026-06-19 14:46:54,538.538 INFO    ] 200
[2026-06-19 14:46:54,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:54,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:46:54,606.606 INFO    ] No update needed
[2026-06-19 14:46:54,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 14:46:54,645.645 INFO    ] 200
[2026-06-19 14:46:54,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:46:54,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:46:54,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:46:54,735.735 INFO    ] No camera update needed
[2026-06-19 14:46:54,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:46:54,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:46:54,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:46:54,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:46:56,798.798 INFO    ] ================================================
[2026-06-19 14:46:56,813.813 INFO    ] Launching Daemon at Fri Jun 19 14:46:56 IST 2026
[2026-06-19 14:46:56,823.823 INFO    ] ================================================
[2026-06-19 14:46:57,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:46:57
[2026-06-19 14:46:57,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:46:58,232.232 INFO    ] Initializing speech engine...
[2026-06-19 14:46:58,241.241 INFO    ] 2026-06-19 14:46:58
[2026-06-19 14:46:58,517.517 INFO    ] 2026-06-19 14:46:58
[2026-06-19 14:46:58,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:46:58,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:46:58,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:46:58,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:46:58,885.885 INFO    ] time= 19/06/2026 14:46:58
[2026-06-19 14:46:58,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:46:58,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:46:59,039.039 INFO    ] No existing commands found in stream
[2026-06-19 14:47:04,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:47:04,067.067 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 14:47:06,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:47:06,471.471 INFO    ] Checking for system updates...
[2026-06-19 14:47:06,512.512 INFO    ] 200
[2026-06-19 14:47:06,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:06,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:47:06,577.577 INFO    ] No update needed
[2026-06-19 14:47:06,579.579 INFO    ] Checking for camera pi updates...
[2026-06-19 14:47:06,614.614 INFO    ] 200
[2026-06-19 14:47:06,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:06,658.658 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:47:06,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:47:06,701.701 INFO    ] No camera update needed
[2026-06-19 14:47:06,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:47:06,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:47:06,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:47:06,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:47:08,764.764 INFO    ] ================================================
[2026-06-19 14:47:08,780.780 INFO    ] Launching Daemon at Fri Jun 19 14:47:08 IST 2026
[2026-06-19 14:47:08,791.791 INFO    ] ================================================
[2026-06-19 14:47:09,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:47:09
[2026-06-19 14:47:10,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:47:10,440.440 INFO    ] Initializing speech engine...
[2026-06-19 14:47:10,452.452 INFO    ] 2026-06-19 14:47:10
[2026-06-19 14:47:10,738.738 INFO    ] 2026-06-19 14:47:10
[2026-06-19 14:47:10,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:47:11,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:47:11,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:47:11,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:47:11,273.273 INFO    ] time= 19/06/2026 14:47:11
[2026-06-19 14:47:11,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:47:11,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:47:11,452.452 INFO    ] No existing commands found in stream
[2026-06-19 14:47:16,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:47:16,482.482 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 14:47:19,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:47:19,756.756 INFO    ] Checking for system updates...
[2026-06-19 14:47:19,798.798 INFO    ] 200
[2026-06-19 14:47:19,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:19,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:47:19,867.867 INFO    ] No update needed
[2026-06-19 14:47:19,869.869 INFO    ] Checking for camera pi updates...
[2026-06-19 14:47:19,904.904 INFO    ] 200
[2026-06-19 14:47:19,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:19,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:47:20,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:47:20,098.098 INFO    ] No camera update needed
[2026-06-19 14:47:20,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:47:20,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:47:20,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:47:20,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:47:22,159.159 INFO    ] ================================================
[2026-06-19 14:47:22,174.174 INFO    ] Launching Daemon at Fri Jun 19 14:47:22 IST 2026
[2026-06-19 14:47:22,184.184 INFO    ] ================================================
[2026-06-19 14:47:22,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:47:22
[2026-06-19 14:47:23,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:47:23,623.623 INFO    ] Initializing speech engine...
[2026-06-19 14:47:23,633.633 INFO    ] 2026-06-19 14:47:23
[2026-06-19 14:47:23,880.880 INFO    ] 2026-06-19 14:47:23
[2026-06-19 14:47:23,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:47:24,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:47:24,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:47:24,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:47:24,370.370 INFO    ] time= 19/06/2026 14:47:24
[2026-06-19 14:47:24,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:47:24,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:47:24,586.586 INFO    ] No existing commands found in stream
[2026-06-19 14:47:29,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:47:29,608.608 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 14:47:33,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:47:33,173.173 INFO    ] Checking for system updates...
[2026-06-19 14:47:33,209.209 INFO    ] 200
[2026-06-19 14:47:33,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:33,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:47:33,274.274 INFO    ] No update needed
[2026-06-19 14:47:33,277.277 INFO    ] Checking for camera pi updates...
[2026-06-19 14:47:33,311.311 INFO    ] 200
[2026-06-19 14:47:33,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:33,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:47:33,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:47:33,408.408 INFO    ] No camera update needed
[2026-06-19 14:47:33,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:47:33,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:47:33,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:47:33,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:47:35,465.465 INFO    ] ================================================
[2026-06-19 14:47:35,480.480 INFO    ] Launching Daemon at Fri Jun 19 14:47:35 IST 2026
[2026-06-19 14:47:35,491.491 INFO    ] ================================================
[2026-06-19 14:47:36,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:47:36
[2026-06-19 14:47:36,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:47:36,904.904 INFO    ] Initializing speech engine...
[2026-06-19 14:47:36,920.920 INFO    ] 2026-06-19 14:47:36
[2026-06-19 14:47:37,205.205 INFO    ] 2026-06-19 14:47:37
[2026-06-19 14:47:37,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:47:37,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:47:37,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:47:37,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:47:37,560.560 INFO    ] time= 19/06/2026 14:47:37
[2026-06-19 14:47:37,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:47:37,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:47:37,715.715 INFO    ] No existing commands found in stream
[2026-06-19 14:47:42,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:47:42,729.729 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 14:47:44,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:47:44,692.692 INFO    ] Checking for system updates...
[2026-06-19 14:47:44,742.742 INFO    ] 200
[2026-06-19 14:47:44,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:44,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:47:44,810.810 INFO    ] No update needed
[2026-06-19 14:47:44,813.813 INFO    ] Checking for camera pi updates...
[2026-06-19 14:47:44,849.849 INFO    ] 200
[2026-06-19 14:47:44,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:44,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:47:44,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:47:44,944.944 INFO    ] No camera update needed
[2026-06-19 14:47:44,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:47:44,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:47:44,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:47:44,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:47:47,005.005 INFO    ] ================================================
[2026-06-19 14:47:47,022.022 INFO    ] Launching Daemon at Fri Jun 19 14:47:47 IST 2026
[2026-06-19 14:47:47,033.033 INFO    ] ================================================
[2026-06-19 14:47:47,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:47:47
[2026-06-19 14:47:48,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:47:48,717.717 INFO    ] Initializing speech engine...
[2026-06-19 14:47:48,731.731 INFO    ] 2026-06-19 14:47:48
[2026-06-19 14:47:48,998.998 INFO    ] 2026-06-19 14:47:48
[2026-06-19 14:47:49,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:47:49,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:47:49,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:47:49,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:47:49,497.497 INFO    ] time= 19/06/2026 14:47:49
[2026-06-19 14:47:49,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:47:49,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:47:49,646.646 INFO    ] No existing commands found in stream
[2026-06-19 14:47:54,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:47:54,661.661 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 14:47:55,683.683 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:47:55,686.686 INFO    ] Checking for system updates...
[2026-06-19 14:47:55,723.723 INFO    ] 200
[2026-06-19 14:47:55,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:55,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:47:55,781.781 INFO    ] No update needed
[2026-06-19 14:47:55,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 14:47:55,817.817 INFO    ] 200
[2026-06-19 14:47:55,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:47:55,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:47:55,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:47:55,891.891 INFO    ] No camera update needed
[2026-06-19 14:47:55,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:47:55,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:47:55,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:47:55,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:47:57,948.948 INFO    ] ================================================
[2026-06-19 14:47:57,964.964 INFO    ] Launching Daemon at Fri Jun 19 14:47:57 IST 2026
[2026-06-19 14:47:57,975.975 INFO    ] ================================================
[2026-06-19 14:47:58,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:47:58
[2026-06-19 14:47:59,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:47:59,394.394 INFO    ] Initializing speech engine...
[2026-06-19 14:47:59,408.408 INFO    ] 2026-06-19 14:47:59
[2026-06-19 14:47:59,695.695 INFO    ] 2026-06-19 14:47:59
[2026-06-19 14:47:59,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:47:59,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:47:59,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:48:00,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:48:00,081.081 INFO    ] time= 19/06/2026 14:48:00
[2026-06-19 14:48:00,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:48:00,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:48:00,210.210 INFO    ] No existing commands found in stream
[2026-06-19 14:48:05,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:48:05,225.225 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 14:48:07,826.826 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:48:07,829.829 INFO    ] Checking for system updates...
[2026-06-19 14:48:07,870.870 INFO    ] 200
[2026-06-19 14:48:07,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:07,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:48:07,928.928 INFO    ] No update needed
[2026-06-19 14:48:07,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 14:48:07,969.969 INFO    ] 200
[2026-06-19 14:48:07,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:08,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:48:08,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:48:08,063.063 INFO    ] No camera update needed
[2026-06-19 14:48:08,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:48:08,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:48:08,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:48:08,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:48:10,120.120 INFO    ] ================================================
[2026-06-19 14:48:10,136.136 INFO    ] Launching Daemon at Fri Jun 19 14:48:10 IST 2026
[2026-06-19 14:48:10,147.147 INFO    ] ================================================
[2026-06-19 14:48:10,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:48:10
[2026-06-19 14:48:11,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:48:11,614.614 INFO    ] Initializing speech engine...
[2026-06-19 14:48:11,620.620 INFO    ] 2026-06-19 14:48:11
[2026-06-19 14:48:11,871.871 INFO    ] 2026-06-19 14:48:11
[2026-06-19 14:48:11,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:48:12,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:48:12,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:48:12,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:48:12,360.360 INFO    ] time= 19/06/2026 14:48:12
[2026-06-19 14:48:12,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:48:12,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:48:12,572.572 INFO    ] No existing commands found in stream
[2026-06-19 14:48:17,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:48:17,589.589 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 14:48:20,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:48:20,681.681 INFO    ] Checking for system updates...
[2026-06-19 14:48:20,718.718 INFO    ] 200
[2026-06-19 14:48:20,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:20,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:48:20,788.788 INFO    ] No update needed
[2026-06-19 14:48:20,790.790 INFO    ] Checking for camera pi updates...
[2026-06-19 14:48:20,825.825 INFO    ] 200
[2026-06-19 14:48:20,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:20,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:48:20,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:48:20,911.911 INFO    ] No camera update needed
[2026-06-19 14:48:20,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:48:20,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:48:20,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:48:20,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:48:22,968.968 INFO    ] ================================================
[2026-06-19 14:48:22,983.983 INFO    ] Launching Daemon at Fri Jun 19 14:48:22 IST 2026
[2026-06-19 14:48:22,994.994 INFO    ] ================================================
[2026-06-19 14:48:23,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:48:23
[2026-06-19 14:48:24,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:48:24,423.423 INFO    ] Initializing speech engine...
[2026-06-19 14:48:24,429.429 INFO    ] 2026-06-19 14:48:24
[2026-06-19 14:48:24,735.735 INFO    ] 2026-06-19 14:48:24
[2026-06-19 14:48:24,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:48:24,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:48:24,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:48:25,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:48:25,132.132 INFO    ] time= 19/06/2026 14:48:25
[2026-06-19 14:48:25,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:48:25,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:48:25,261.261 INFO    ] No existing commands found in stream
[2026-06-19 14:48:30,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:48:30,277.277 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 14:48:33,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:48:33,244.244 INFO    ] Checking for system updates...
[2026-06-19 14:48:33,294.294 INFO    ] 200
[2026-06-19 14:48:33,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:33,351.351 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:48:33,354.354 INFO    ] No update needed
[2026-06-19 14:48:33,357.357 INFO    ] Checking for camera pi updates...
[2026-06-19 14:48:33,409.409 INFO    ] 200
[2026-06-19 14:48:33,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:33,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:48:33,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:48:33,484.484 INFO    ] No camera update needed
[2026-06-19 14:48:33,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:48:33,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:48:33,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:48:33,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:48:35,540.540 INFO    ] ================================================
[2026-06-19 14:48:35,556.556 INFO    ] Launching Daemon at Fri Jun 19 14:48:35 IST 2026
[2026-06-19 14:48:35,567.567 INFO    ] ================================================
[2026-06-19 14:48:36,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:48:36
[2026-06-19 14:48:36,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:48:37,016.016 INFO    ] Initializing speech engine...
[2026-06-19 14:48:37,023.023 INFO    ] 2026-06-19 14:48:37
[2026-06-19 14:48:37,268.268 INFO    ] 2026-06-19 14:48:37
[2026-06-19 14:48:37,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:48:37,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:48:37,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:48:37,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:48:37,739.739 INFO    ] time= 19/06/2026 14:48:37
[2026-06-19 14:48:37,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:48:37,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:48:37,996.996 INFO    ] No existing commands found in stream
[2026-06-19 14:48:43,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:48:43,030.030 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 14:48:46,654.654 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:48:46,657.657 INFO    ] Checking for system updates...
[2026-06-19 14:48:46,693.693 INFO    ] 200
[2026-06-19 14:48:46,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:46,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:48:46,761.761 INFO    ] No update needed
[2026-06-19 14:48:46,763.763 INFO    ] Checking for camera pi updates...
[2026-06-19 14:48:46,802.802 INFO    ] 200
[2026-06-19 14:48:46,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:46,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:48:46,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:48:46,877.877 INFO    ] No camera update needed
[2026-06-19 14:48:46,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:48:46,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:48:46,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:48:46,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:48:48,932.932 INFO    ] ================================================
[2026-06-19 14:48:48,948.948 INFO    ] Launching Daemon at Fri Jun 19 14:48:48 IST 2026
[2026-06-19 14:48:48,959.959 INFO    ] ================================================
[2026-06-19 14:48:49,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:48:49
[2026-06-19 14:48:50,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:48:50,386.386 INFO    ] Initializing speech engine...
[2026-06-19 14:48:50,392.392 INFO    ] 2026-06-19 14:48:50
[2026-06-19 14:48:50,642.642 INFO    ] 2026-06-19 14:48:50
[2026-06-19 14:48:50,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:48:50,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:48:50,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:48:51,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:48:51,113.113 INFO    ] time= 19/06/2026 14:48:51
[2026-06-19 14:48:51,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:48:51,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:48:51,344.344 INFO    ] No existing commands found in stream
[2026-06-19 14:48:56,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:48:56,362.362 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 14:48:58,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:48:58,450.450 INFO    ] Checking for system updates...
[2026-06-19 14:48:58,486.486 INFO    ] 200
[2026-06-19 14:48:58,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:58,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:48:58,562.562 INFO    ] No update needed
[2026-06-19 14:48:58,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 14:48:58,603.603 INFO    ] 200
[2026-06-19 14:48:58,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:48:58,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:48:58,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:48:58,694.694 INFO    ] No camera update needed
[2026-06-19 14:48:58,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:48:58,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:48:58,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:48:58,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:49:00,751.751 INFO    ] ================================================
[2026-06-19 14:49:00,766.766 INFO    ] Launching Daemon at Fri Jun 19 14:49:00 IST 2026
[2026-06-19 14:49:00,777.777 INFO    ] ================================================
[2026-06-19 14:49:01,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:49:01
[2026-06-19 14:49:02,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:49:02,486.486 INFO    ] Initializing speech engine...
[2026-06-19 14:49:02,495.495 INFO    ] 2026-06-19 14:49:02
[2026-06-19 14:49:02,791.791 INFO    ] 2026-06-19 14:49:02
[2026-06-19 14:49:02,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:49:03,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:49:03,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:49:03,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:49:03,232.232 INFO    ] time= 19/06/2026 14:49:03
[2026-06-19 14:49:03,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:49:03,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:49:03,367.367 INFO    ] No existing commands found in stream
[2026-06-19 14:49:08,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:49:08,384.384 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 14:49:10,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:49:10,108.108 INFO    ] Checking for system updates...
[2026-06-19 14:49:10,145.145 INFO    ] 200
[2026-06-19 14:49:10,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:49:10,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:49:10,203.203 INFO    ] No update needed
[2026-06-19 14:49:10,206.206 INFO    ] Checking for camera pi updates...
[2026-06-19 14:49:10,239.239 INFO    ] 200
[2026-06-19 14:49:10,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:49:10,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:49:10,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:49:10,341.341 INFO    ] No camera update needed
[2026-06-19 14:49:10,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:49:10,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:49:10,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:49:10,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:49:12,398.398 INFO    ] ================================================
[2026-06-19 14:49:12,414.414 INFO    ] Launching Daemon at Fri Jun 19 14:49:12 IST 2026
[2026-06-19 14:49:12,424.424 INFO    ] ================================================
[2026-06-19 14:49:13,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:49:13
[2026-06-19 14:49:13,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:49:13,869.869 INFO    ] Initializing speech engine...
[2026-06-19 14:49:13,875.875 INFO    ] 2026-06-19 14:49:13
[2026-06-19 14:49:14,120.120 INFO    ] 2026-06-19 14:49:14
[2026-06-19 14:49:14,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:49:14,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:49:14,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:49:14,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:49:14,675.675 INFO    ] time= 19/06/2026 14:49:14
[2026-06-19 14:49:14,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:49:14,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:49:14,828.828 INFO    ] No existing commands found in stream
[2026-06-19 14:49:19,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:49:19,845.845 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 14:49:21,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:49:21,939.939 INFO    ] Checking for system updates...
[2026-06-19 14:49:21,981.981 INFO    ] 200
[2026-06-19 14:49:21,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:49:22,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:49:22,041.041 INFO    ] No update needed
[2026-06-19 14:49:22,043.043 INFO    ] Checking for camera pi updates...
[2026-06-19 14:49:22,077.077 INFO    ] 200
[2026-06-19 14:49:22,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:49:22,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:49:22,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:49:22,265.265 INFO    ] No camera update needed
[2026-06-19 14:49:22,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:49:22,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:49:22,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:49:22,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:49:24,323.323 INFO    ] ================================================
[2026-06-19 14:49:24,338.338 INFO    ] Launching Daemon at Fri Jun 19 14:49:24 IST 2026
[2026-06-19 14:49:24,350.350 INFO    ] ================================================
[2026-06-19 14:49:24,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:49:24
[2026-06-19 14:49:25,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:49:25,759.759 INFO    ] Initializing speech engine...
[2026-06-19 14:49:25,782.782 INFO    ] 2026-06-19 14:49:25
[2026-06-19 14:49:26,035.035 INFO    ] 2026-06-19 14:49:26
[2026-06-19 14:49:26,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:49:26,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:49:26,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:49:26,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:49:26,524.524 INFO    ] time= 19/06/2026 14:49:26
[2026-06-19 14:49:26,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:49:26,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:49:26,729.729 INFO    ] No existing commands found in stream
[2026-06-19 14:49:31,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:49:31,759.759 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 14:49:34,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:49:34,552.552 INFO    ] Checking for system updates...
[2026-06-19 14:49:34,588.588 INFO    ] 200
[2026-06-19 14:49:34,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:49:34,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:49:34,644.644 INFO    ] No update needed
[2026-06-19 14:49:34,647.647 INFO    ] Checking for camera pi updates...
[2026-06-19 14:49:34,680.680 INFO    ] 200
[2026-06-19 14:49:34,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:49:34,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:49:34,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:49:34,768.768 INFO    ] No camera update needed
[2026-06-19 14:49:34,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:49:34,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:49:34,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:49:34,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:49:36,826.826 INFO    ] ================================================
[2026-06-19 14:49:36,842.842 INFO    ] Launching Daemon at Fri Jun 19 14:49:36 IST 2026
[2026-06-19 14:49:36,853.853 INFO    ] ================================================
[2026-06-19 14:49:37,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:49:37
[2026-06-19 14:49:38,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:49:38,324.324 INFO    ] Initializing speech engine...
[2026-06-19 14:49:38,334.334 INFO    ] 2026-06-19 14:49:38
[2026-06-19 14:49:38,599.599 INFO    ] 2026-06-19 14:49:38
[2026-06-19 14:49:38,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:49:38,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:49:38,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:49:39,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:49:39,148.148 INFO    ] time= 19/06/2026 14:49:39
[2026-06-19 14:49:39,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:49:39,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:49:39,299.299 INFO    ] No existing commands found in stream
[2026-06-19 14:49:44,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:49:44,319.319 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 14:49:46,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:49:46,821.821 INFO    ] Checking for system updates...
[2026-06-19 14:49:46,861.861 INFO    ] 200
[2026-06-19 14:49:46,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:49:46,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:49:46,929.929 INFO    ] No update needed
[2026-06-19 14:49:46,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 14:49:46,965.965 INFO    ] 200
[2026-06-19 14:49:46,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:49:47,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:49:47,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:49:47,045.045 INFO    ] No camera update needed
[2026-06-19 14:49:47,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:49:47,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:49:47,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:49:47,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:49:49,101.101 INFO    ] ================================================
[2026-06-19 14:49:49,116.116 INFO    ] Launching Daemon at Fri Jun 19 14:49:49 IST 2026
[2026-06-19 14:49:49,127.127 INFO    ] ================================================
[2026-06-19 14:49:49,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:49:49
[2026-06-19 14:49:50,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:49:50,811.811 INFO    ] Initializing speech engine...
[2026-06-19 14:49:50,819.819 INFO    ] 2026-06-19 14:49:50
[2026-06-19 14:49:51,108.108 INFO    ] 2026-06-19 14:49:51
[2026-06-19 14:49:51,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:49:51,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:49:51,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:49:51,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:49:51,642.642 INFO    ] time= 19/06/2026 14:49:51
[2026-06-19 14:49:51,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:49:51,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:49:51,807.807 INFO    ] No existing commands found in stream
[2026-06-19 14:49:56,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:49:56,836.836 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 14:50:00,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:50:00,703.703 INFO    ] Checking for system updates...
[2026-06-19 14:50:00,739.739 INFO    ] 200
[2026-06-19 14:50:00,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:00,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:50:00,806.806 INFO    ] No update needed
[2026-06-19 14:50:00,808.808 INFO    ] Checking for camera pi updates...
[2026-06-19 14:50:00,844.844 INFO    ] 200
[2026-06-19 14:50:00,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:00,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:50:00,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:50:00,935.935 INFO    ] No camera update needed
[2026-06-19 14:50:00,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:50:00,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:50:00,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:50:00,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:50:03,021.021 INFO    ] ================================================
[2026-06-19 14:50:03,043.043 INFO    ] Launching Daemon at Fri Jun 19 14:50:03 IST 2026
[2026-06-19 14:50:03,061.061 INFO    ] ================================================
[2026-06-19 14:50:03,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:50:03
[2026-06-19 14:50:04,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:50:04,729.729 INFO    ] Initializing speech engine...
[2026-06-19 14:50:04,738.738 INFO    ] 2026-06-19 14:50:04
[2026-06-19 14:50:04,988.988 INFO    ] 2026-06-19 14:50:04
[2026-06-19 14:50:05,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:50:05,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:50:05,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:50:05,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:50:05,491.491 INFO    ] time= 19/06/2026 14:50:05
[2026-06-19 14:50:05,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:50:05,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:50:05,696.696 INFO    ] No existing commands found in stream
[2026-06-19 14:50:10,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:50:10,716.716 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 14:50:14,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:50:14,496.496 INFO    ] Checking for system updates...
[2026-06-19 14:50:14,532.532 INFO    ] 200
[2026-06-19 14:50:14,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:14,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:50:14,590.590 INFO    ] No update needed
[2026-06-19 14:50:14,593.593 INFO    ] Checking for camera pi updates...
[2026-06-19 14:50:14,631.631 INFO    ] 200
[2026-06-19 14:50:14,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:14,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:50:14,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:50:14,719.719 INFO    ] No camera update needed
[2026-06-19 14:50:14,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:50:14,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:50:14,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:50:14,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:50:16,777.777 INFO    ] ================================================
[2026-06-19 14:50:16,792.792 INFO    ] Launching Daemon at Fri Jun 19 14:50:16 IST 2026
[2026-06-19 14:50:16,803.803 INFO    ] ================================================
[2026-06-19 14:50:17,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:50:17
[2026-06-19 14:50:18,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:50:18,467.467 INFO    ] Initializing speech engine...
[2026-06-19 14:50:18,480.480 INFO    ] 2026-06-19 14:50:18
[2026-06-19 14:50:18,765.765 INFO    ] 2026-06-19 14:50:18
[2026-06-19 14:50:18,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:50:19,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:50:19,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:50:19,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:50:19,301.301 INFO    ] time= 19/06/2026 14:50:19
[2026-06-19 14:50:19,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:50:19,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:50:19,474.474 INFO    ] No existing commands found in stream
[2026-06-19 14:50:24,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:50:24,503.503 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 14:50:28,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:50:28,023.023 INFO    ] Checking for system updates...
[2026-06-19 14:50:28,061.061 INFO    ] 200
[2026-06-19 14:50:28,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:28,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:50:28,130.130 INFO    ] No update needed
[2026-06-19 14:50:28,133.133 INFO    ] Checking for camera pi updates...
[2026-06-19 14:50:28,172.172 INFO    ] 200
[2026-06-19 14:50:28,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:28,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:50:28,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:50:28,280.280 INFO    ] No camera update needed
[2026-06-19 14:50:28,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:50:28,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:50:28,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:50:28,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:50:30,341.341 INFO    ] ================================================
[2026-06-19 14:50:30,357.357 INFO    ] Launching Daemon at Fri Jun 19 14:50:30 IST 2026
[2026-06-19 14:50:30,369.369 INFO    ] ================================================
[2026-06-19 14:50:31,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:50:31
[2026-06-19 14:50:31,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:50:32,014.014 INFO    ] Initializing speech engine...
[2026-06-19 14:50:32,023.023 INFO    ] 2026-06-19 14:50:32
[2026-06-19 14:50:32,341.341 INFO    ] 2026-06-19 14:50:32
[2026-06-19 14:50:32,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:50:32,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:50:32,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:50:32,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:50:32,842.842 INFO    ] time= 19/06/2026 14:50:32
[2026-06-19 14:50:32,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:50:32,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:50:33,023.023 INFO    ] No existing commands found in stream
[2026-06-19 14:50:38,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:50:38,051.051 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 14:50:40,213.213 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:50:40,216.216 INFO    ] Checking for system updates...
[2026-06-19 14:50:40,255.255 INFO    ] 200
[2026-06-19 14:50:40,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:40,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:50:40,315.315 INFO    ] No update needed
[2026-06-19 14:50:40,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 14:50:40,352.352 INFO    ] 200
[2026-06-19 14:50:40,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:40,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:50:40,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:50:40,439.439 INFO    ] No camera update needed
[2026-06-19 14:50:40,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:50:40,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:50:40,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:50:40,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:50:42,497.497 INFO    ] ================================================
[2026-06-19 14:50:42,512.512 INFO    ] Launching Daemon at Fri Jun 19 14:50:42 IST 2026
[2026-06-19 14:50:42,523.523 INFO    ] ================================================
[2026-06-19 14:50:43,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:50:43
[2026-06-19 14:50:43,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:50:43,997.997 INFO    ] Initializing speech engine...
[2026-06-19 14:50:44,014.014 INFO    ] 2026-06-19 14:50:44
[2026-06-19 14:50:44,285.285 INFO    ] 2026-06-19 14:50:44
[2026-06-19 14:50:44,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:50:44,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:50:44,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:50:44,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:50:44,844.844 INFO    ] time= 19/06/2026 14:50:44
[2026-06-19 14:50:44,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:50:44,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:50:45,030.030 INFO    ] No existing commands found in stream
[2026-06-19 14:50:50,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:50:50,064.064 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 14:50:53,160.160 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:50:53,163.163 INFO    ] Checking for system updates...
[2026-06-19 14:50:53,206.206 INFO    ] 200
[2026-06-19 14:50:53,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:53,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:50:53,266.266 INFO    ] No update needed
[2026-06-19 14:50:53,269.269 INFO    ] Checking for camera pi updates...
[2026-06-19 14:50:53,305.305 INFO    ] 200
[2026-06-19 14:50:53,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:50:53,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:50:53,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:50:53,399.399 INFO    ] No camera update needed
[2026-06-19 14:50:53,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:50:53,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:50:53,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:50:53,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:50:55,458.458 INFO    ] ================================================
[2026-06-19 14:50:55,474.474 INFO    ] Launching Daemon at Fri Jun 19 14:50:55 IST 2026
[2026-06-19 14:50:55,485.485 INFO    ] ================================================
[2026-06-19 14:50:56,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:50:56
[2026-06-19 14:50:56,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:50:57,115.115 INFO    ] Initializing speech engine...
[2026-06-19 14:50:57,130.130 INFO    ] 2026-06-19 14:50:57
[2026-06-19 14:50:57,413.413 INFO    ] 2026-06-19 14:50:57
[2026-06-19 14:50:57,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:50:57,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:50:57,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:50:57,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:50:57,954.954 INFO    ] time= 19/06/2026 14:50:57
[2026-06-19 14:50:57,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:50:58,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:50:58,119.119 INFO    ] No existing commands found in stream
[2026-06-19 14:51:03,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:51:03,148.148 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 14:51:06,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:51:06,666.666 INFO    ] Checking for system updates...
[2026-06-19 14:51:06,703.703 INFO    ] 200
[2026-06-19 14:51:06,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:06,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:51:06,762.762 INFO    ] No update needed
[2026-06-19 14:51:06,765.765 INFO    ] Checking for camera pi updates...
[2026-06-19 14:51:06,801.801 INFO    ] 200
[2026-06-19 14:51:06,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:06,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:51:06,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:51:06,896.896 INFO    ] No camera update needed
[2026-06-19 14:51:06,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:51:06,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:51:06,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:51:06,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:51:08,956.956 INFO    ] ================================================
[2026-06-19 14:51:08,971.971 INFO    ] Launching Daemon at Fri Jun 19 14:51:08 IST 2026
[2026-06-19 14:51:08,981.981 INFO    ] ================================================
[2026-06-19 14:51:09,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:51:09
[2026-06-19 14:51:10,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:51:10,402.402 INFO    ] Initializing speech engine...
[2026-06-19 14:51:10,411.411 INFO    ] 2026-06-19 14:51:10
[2026-06-19 14:51:10,706.706 INFO    ] 2026-06-19 14:51:10
[2026-06-19 14:51:10,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:51:10,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:51:10,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:51:11,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:51:11,199.199 INFO    ] time= 19/06/2026 14:51:11
[2026-06-19 14:51:11,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:51:11,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:51:11,434.434 INFO    ] No existing commands found in stream
[2026-06-19 14:51:16,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:51:16,450.450 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 14:51:19,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:51:19,889.889 INFO    ] Checking for system updates...
[2026-06-19 14:51:19,925.925 INFO    ] 200
[2026-06-19 14:51:19,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:19,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:51:19,990.990 INFO    ] No update needed
[2026-06-19 14:51:19,992.992 INFO    ] Checking for camera pi updates...
[2026-06-19 14:51:20,026.026 INFO    ] 200
[2026-06-19 14:51:20,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:20,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:51:20,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:51:20,115.115 INFO    ] No camera update needed
[2026-06-19 14:51:20,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:51:20,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:51:20,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:51:20,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:51:22,171.171 INFO    ] ================================================
[2026-06-19 14:51:22,187.187 INFO    ] Launching Daemon at Fri Jun 19 14:51:22 IST 2026
[2026-06-19 14:51:22,197.197 INFO    ] ================================================
[2026-06-19 14:51:22,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:51:22
[2026-06-19 14:51:23,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:51:23,606.606 INFO    ] Initializing speech engine...
[2026-06-19 14:51:23,614.614 INFO    ] 2026-06-19 14:51:23
[2026-06-19 14:51:23,912.912 INFO    ] 2026-06-19 14:51:23
[2026-06-19 14:51:23,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:51:24,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:51:24,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:51:24,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:51:24,300.300 INFO    ] time= 19/06/2026 14:51:24
[2026-06-19 14:51:24,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:51:24,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:51:24,429.429 INFO    ] No existing commands found in stream
[2026-06-19 14:51:29,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:51:29,468.468 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 14:51:30,788.788 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:51:30,791.791 INFO    ] Checking for system updates...
[2026-06-19 14:51:30,829.829 INFO    ] 200
[2026-06-19 14:51:30,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:30,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:51:30,890.890 INFO    ] No update needed
[2026-06-19 14:51:30,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 14:51:30,928.928 INFO    ] 200
[2026-06-19 14:51:30,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:30,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:51:31,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:51:31,119.119 INFO    ] No camera update needed
[2026-06-19 14:51:31,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:51:31,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:51:31,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:51:31,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:51:33,180.180 INFO    ] ================================================
[2026-06-19 14:51:33,196.196 INFO    ] Launching Daemon at Fri Jun 19 14:51:33 IST 2026
[2026-06-19 14:51:33,206.206 INFO    ] ================================================
[2026-06-19 14:51:33,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:51:33
[2026-06-19 14:51:34,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:51:34,630.630 INFO    ] Initializing speech engine...
[2026-06-19 14:51:34,639.639 INFO    ] 2026-06-19 14:51:34
[2026-06-19 14:51:34,935.935 INFO    ] 2026-06-19 14:51:34
[2026-06-19 14:51:34,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:51:35,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:51:35,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:51:35,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:51:35,438.438 INFO    ] time= 19/06/2026 14:51:35
[2026-06-19 14:51:35,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:51:35,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:51:35,712.712 INFO    ] No existing commands found in stream
[2026-06-19 14:51:40,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:51:40,739.739 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 14:51:41,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:51:41,591.591 INFO    ] Checking for system updates...
[2026-06-19 14:51:41,627.627 INFO    ] 200
[2026-06-19 14:51:41,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:41,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:51:41,685.685 INFO    ] No update needed
[2026-06-19 14:51:41,687.687 INFO    ] Checking for camera pi updates...
[2026-06-19 14:51:41,721.721 INFO    ] 200
[2026-06-19 14:51:41,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:41,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:51:41,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:51:41,795.795 INFO    ] No camera update needed
[2026-06-19 14:51:41,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:51:41,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:51:41,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:51:41,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:51:43,851.851 INFO    ] ================================================
[2026-06-19 14:51:43,866.866 INFO    ] Launching Daemon at Fri Jun 19 14:51:43 IST 2026
[2026-06-19 14:51:43,878.878 INFO    ] ================================================
[2026-06-19 14:51:44,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:51:44
[2026-06-19 14:51:45,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:51:45,327.327 INFO    ] Initializing speech engine...
[2026-06-19 14:51:45,336.336 INFO    ] 2026-06-19 14:51:45
[2026-06-19 14:51:45,638.638 INFO    ] 2026-06-19 14:51:45
[2026-06-19 14:51:45,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:51:45,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:51:45,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:51:46,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:51:46,062.062 INFO    ] time= 19/06/2026 14:51:46
[2026-06-19 14:51:46,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:51:46,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:51:46,151.151 INFO    ] No existing commands found in stream
[2026-06-19 14:51:51,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:51:51,184.184 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 14:51:52,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:51:52,816.816 INFO    ] Checking for system updates...
[2026-06-19 14:51:52,852.852 INFO    ] 200
[2026-06-19 14:51:52,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:52,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:51:52,917.917 INFO    ] No update needed
[2026-06-19 14:51:52,920.920 INFO    ] Checking for camera pi updates...
[2026-06-19 14:51:52,957.957 INFO    ] 200
[2026-06-19 14:51:52,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:51:53,001.001 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:51:53,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:51:53,054.054 INFO    ] No camera update needed
[2026-06-19 14:51:53,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:51:53,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:51:53,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:51:53,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:51:55,112.112 INFO    ] ================================================
[2026-06-19 14:51:55,128.128 INFO    ] Launching Daemon at Fri Jun 19 14:51:55 IST 2026
[2026-06-19 14:51:55,139.139 INFO    ] ================================================
[2026-06-19 14:51:55,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:51:55
[2026-06-19 14:51:56,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:51:56,793.793 INFO    ] Initializing speech engine...
[2026-06-19 14:51:56,799.799 INFO    ] 2026-06-19 14:51:56
[2026-06-19 14:51:57,070.070 INFO    ] 2026-06-19 14:51:57
[2026-06-19 14:51:57,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:51:57,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:51:57,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:51:57,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:51:57,638.638 INFO    ] time= 19/06/2026 14:51:57
[2026-06-19 14:51:57,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:51:57,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:51:57,828.828 INFO    ] No existing commands found in stream
[2026-06-19 14:52:02,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:52:02,862.862 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 14:52:04,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:52:04,922.922 INFO    ] Checking for system updates...
[2026-06-19 14:52:04,960.960 INFO    ] 200
[2026-06-19 14:52:04,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:05,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:52:05,022.022 INFO    ] No update needed
[2026-06-19 14:52:05,025.025 INFO    ] Checking for camera pi updates...
[2026-06-19 14:52:05,060.060 INFO    ] 200
[2026-06-19 14:52:05,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:05,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:52:05,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:52:05,148.148 INFO    ] No camera update needed
[2026-06-19 14:52:05,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:52:05,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:52:05,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:52:05,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:52:07,208.208 INFO    ] ================================================
[2026-06-19 14:52:07,223.223 INFO    ] Launching Daemon at Fri Jun 19 14:52:07 IST 2026
[2026-06-19 14:52:07,234.234 INFO    ] ================================================
[2026-06-19 14:52:07,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:52:07
[2026-06-19 14:52:08,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:52:08,693.693 INFO    ] Initializing speech engine...
[2026-06-19 14:52:08,700.700 INFO    ] 2026-06-19 14:52:08
[2026-06-19 14:52:08,961.961 INFO    ] 2026-06-19 14:52:08
[2026-06-19 14:52:08,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:52:09,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:52:09,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:52:09,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:52:09,424.424 INFO    ] time= 19/06/2026 14:52:09
[2026-06-19 14:52:09,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:52:09,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:52:09,656.656 INFO    ] No existing commands found in stream
[2026-06-19 14:52:14,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:52:14,680.680 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 14:52:16,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:52:16,875.875 INFO    ] Checking for system updates...
[2026-06-19 14:52:16,911.911 INFO    ] 200
[2026-06-19 14:52:16,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:16,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:52:16,970.970 INFO    ] No update needed
[2026-06-19 14:52:16,972.972 INFO    ] Checking for camera pi updates...
[2026-06-19 14:52:17,010.010 INFO    ] 200
[2026-06-19 14:52:17,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:17,053.053 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:52:17,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:52:17,096.096 INFO    ] No camera update needed
[2026-06-19 14:52:17,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:52:17,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:52:17,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:52:17,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:52:19,153.153 INFO    ] ================================================
[2026-06-19 14:52:19,169.169 INFO    ] Launching Daemon at Fri Jun 19 14:52:19 IST 2026
[2026-06-19 14:52:19,184.184 INFO    ] ================================================
[2026-06-19 14:52:19,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:52:19
[2026-06-19 14:52:20,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:52:20,661.661 INFO    ] Initializing speech engine...
[2026-06-19 14:52:20,672.672 INFO    ] 2026-06-19 14:52:20
[2026-06-19 14:52:20,943.943 INFO    ] 2026-06-19 14:52:20
[2026-06-19 14:52:20,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:52:21,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:52:21,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:52:21,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:52:21,492.492 INFO    ] time= 19/06/2026 14:52:21
[2026-06-19 14:52:21,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:52:21,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:52:21,643.643 INFO    ] No existing commands found in stream
[2026-06-19 14:52:26,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:52:26,662.662 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 14:52:27,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:52:27,832.832 INFO    ] Checking for system updates...
[2026-06-19 14:52:27,875.875 INFO    ] 200
[2026-06-19 14:52:27,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:27,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:52:27,943.943 INFO    ] No update needed
[2026-06-19 14:52:27,946.946 INFO    ] Checking for camera pi updates...
[2026-06-19 14:52:27,983.983 INFO    ] 200
[2026-06-19 14:52:27,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:28,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:52:28,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:52:28,083.083 INFO    ] No camera update needed
[2026-06-19 14:52:28,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:52:28,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:52:28,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:52:28,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:52:30,143.143 INFO    ] ================================================
[2026-06-19 14:52:30,159.159 INFO    ] Launching Daemon at Fri Jun 19 14:52:30 IST 2026
[2026-06-19 14:52:30,170.170 INFO    ] ================================================
[2026-06-19 14:52:30,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:52:30
[2026-06-19 14:52:31,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:52:31,618.618 INFO    ] Initializing speech engine...
[2026-06-19 14:52:31,631.631 INFO    ] 2026-06-19 14:52:31
[2026-06-19 14:52:31,918.918 INFO    ] 2026-06-19 14:52:31
[2026-06-19 14:52:31,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:52:32,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:52:32,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:52:32,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:52:32,317.317 INFO    ] time= 19/06/2026 14:52:32
[2026-06-19 14:52:32,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:52:32,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:52:32,481.481 INFO    ] No existing commands found in stream
[2026-06-19 14:52:37,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:52:37,514.514 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 14:52:40,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:52:40,265.265 INFO    ] Checking for system updates...
[2026-06-19 14:52:40,301.301 INFO    ] 200
[2026-06-19 14:52:40,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:40,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:52:40,359.359 INFO    ] No update needed
[2026-06-19 14:52:40,361.361 INFO    ] Checking for camera pi updates...
[2026-06-19 14:52:40,395.395 INFO    ] 200
[2026-06-19 14:52:40,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:40,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:52:40,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:52:40,476.476 INFO    ] No camera update needed
[2026-06-19 14:52:40,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:52:40,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:52:40,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:52:40,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:52:42,530.530 INFO    ] ================================================
[2026-06-19 14:52:42,545.545 INFO    ] Launching Daemon at Fri Jun 19 14:52:42 IST 2026
[2026-06-19 14:52:42,557.557 INFO    ] ================================================
[2026-06-19 14:52:43,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:52:43
[2026-06-19 14:52:43,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:52:44,021.021 INFO    ] Initializing speech engine...
[2026-06-19 14:52:44,029.029 INFO    ] 2026-06-19 14:52:44
[2026-06-19 14:52:44,308.308 INFO    ] 2026-06-19 14:52:44
[2026-06-19 14:52:44,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:52:44,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:52:44,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:52:44,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:52:44,768.768 INFO    ] time= 19/06/2026 14:52:44
[2026-06-19 14:52:44,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:52:44,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:52:44,978.978 INFO    ] No existing commands found in stream
[2026-06-19 14:52:50,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:52:50,005.005 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 14:52:52,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:52:52,290.290 INFO    ] Checking for system updates...
[2026-06-19 14:52:52,330.330 INFO    ] 200
[2026-06-19 14:52:52,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:52,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:52:52,388.388 INFO    ] No update needed
[2026-06-19 14:52:52,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 14:52:52,425.425 INFO    ] 200
[2026-06-19 14:52:52,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:52:52,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:52:52,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:52:52,518.518 INFO    ] No camera update needed
[2026-06-19 14:52:52,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:52:52,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:52:52,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:52:52,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:52:54,576.576 INFO    ] ================================================
[2026-06-19 14:52:54,591.591 INFO    ] Launching Daemon at Fri Jun 19 14:52:54 IST 2026
[2026-06-19 14:52:54,602.602 INFO    ] ================================================
[2026-06-19 14:52:55,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:52:55
[2026-06-19 14:52:55,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:52:56,013.013 INFO    ] Initializing speech engine...
[2026-06-19 14:52:56,020.020 INFO    ] 2026-06-19 14:52:56
[2026-06-19 14:52:56,319.319 INFO    ] 2026-06-19 14:52:56
[2026-06-19 14:52:56,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:52:56,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:52:56,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:52:56,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:52:56,692.692 INFO    ] time= 19/06/2026 14:52:56
[2026-06-19 14:52:56,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:52:56,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:52:56,795.795 INFO    ] No existing commands found in stream
[2026-06-19 14:53:01,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:53:01,833.833 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 14:53:03,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:53:03,834.834 INFO    ] Checking for system updates...
[2026-06-19 14:53:03,870.870 INFO    ] 200
[2026-06-19 14:53:03,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:03,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:53:03,928.928 INFO    ] No update needed
[2026-06-19 14:53:03,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 14:53:03,970.970 INFO    ] 200
[2026-06-19 14:53:03,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:04,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:53:04,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:53:04,068.068 INFO    ] No camera update needed
[2026-06-19 14:53:04,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:53:04,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:53:04,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:53:04,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:53:06,123.123 INFO    ] ================================================
[2026-06-19 14:53:06,138.138 INFO    ] Launching Daemon at Fri Jun 19 14:53:06 IST 2026
[2026-06-19 14:53:06,149.149 INFO    ] ================================================
[2026-06-19 14:53:06,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:53:06
[2026-06-19 14:53:07,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:53:07,617.617 INFO    ] Initializing speech engine...
[2026-06-19 14:53:07,626.626 INFO    ] 2026-06-19 14:53:07
[2026-06-19 14:53:07,885.885 INFO    ] 2026-06-19 14:53:07
[2026-06-19 14:53:07,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:53:08,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:53:08,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:53:08,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:53:08,360.360 INFO    ] time= 19/06/2026 14:53:08
[2026-06-19 14:53:08,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:53:08,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:53:08,569.569 INFO    ] No existing commands found in stream
[2026-06-19 14:53:13,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:53:13,597.597 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 14:53:17,979.979 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:53:17,981.981 INFO    ] Checking for system updates...
[2026-06-19 14:53:18,017.017 INFO    ] 200
[2026-06-19 14:53:18,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:18,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:53:18,074.074 INFO    ] No update needed
[2026-06-19 14:53:18,077.077 INFO    ] Checking for camera pi updates...
[2026-06-19 14:53:18,117.117 INFO    ] 200
[2026-06-19 14:53:18,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:18,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:53:18,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:53:18,202.202 INFO    ] No camera update needed
[2026-06-19 14:53:18,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:53:18,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:53:18,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:53:18,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:53:20,258.258 INFO    ] ================================================
[2026-06-19 14:53:20,274.274 INFO    ] Launching Daemon at Fri Jun 19 14:53:20 IST 2026
[2026-06-19 14:53:20,285.285 INFO    ] ================================================
[2026-06-19 14:53:20,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:53:20
[2026-06-19 14:53:21,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:53:21,699.699 INFO    ] Initializing speech engine...
[2026-06-19 14:53:21,714.714 INFO    ] 2026-06-19 14:53:21
[2026-06-19 14:53:21,981.981 INFO    ] 2026-06-19 14:53:21
[2026-06-19 14:53:22,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:53:22,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:53:22,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:53:22,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:53:22,463.463 INFO    ] time= 19/06/2026 14:53:22
[2026-06-19 14:53:22,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:53:22,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:53:22,704.704 INFO    ] No existing commands found in stream
[2026-06-19 14:53:27,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:53:27,725.725 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 14:53:30,841.841 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:53:30,844.844 INFO    ] Checking for system updates...
[2026-06-19 14:53:30,880.880 INFO    ] 200
[2026-06-19 14:53:30,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:30,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:53:30,937.937 INFO    ] No update needed
[2026-06-19 14:53:30,940.940 INFO    ] Checking for camera pi updates...
[2026-06-19 14:53:30,977.977 INFO    ] 200
[2026-06-19 14:53:30,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:31,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:53:31,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:53:31,064.064 INFO    ] No camera update needed
[2026-06-19 14:53:31,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:53:31,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:53:31,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:53:31,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:53:33,124.124 INFO    ] ================================================
[2026-06-19 14:53:33,142.142 INFO    ] Launching Daemon at Fri Jun 19 14:53:33 IST 2026
[2026-06-19 14:53:33,154.154 INFO    ] ================================================
[2026-06-19 14:53:33,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:53:33
[2026-06-19 14:53:34,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:53:34,592.592 INFO    ] Initializing speech engine...
[2026-06-19 14:53:34,606.606 INFO    ] 2026-06-19 14:53:34
[2026-06-19 14:53:34,877.877 INFO    ] 2026-06-19 14:53:34
[2026-06-19 14:53:34,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:53:35,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:53:35,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:53:35,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:53:35,500.500 INFO    ] time= 19/06/2026 14:53:35
[2026-06-19 14:53:35,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:53:35,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:53:35,681.681 INFO    ] No existing commands found in stream
[2026-06-19 14:53:40,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:53:40,714.714 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 14:53:41,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:53:41,913.913 INFO    ] Checking for system updates...
[2026-06-19 14:53:41,950.950 INFO    ] 200
[2026-06-19 14:53:41,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:42,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:53:42,014.014 INFO    ] No update needed
[2026-06-19 14:53:42,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 14:53:42,051.051 INFO    ] 200
[2026-06-19 14:53:42,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:42,095.095 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:53:42,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:53:42,243.243 INFO    ] No camera update needed
[2026-06-19 14:53:42,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:53:42,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:53:42,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:53:42,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:53:44,298.298 INFO    ] ================================================
[2026-06-19 14:53:44,314.314 INFO    ] Launching Daemon at Fri Jun 19 14:53:44 IST 2026
[2026-06-19 14:53:44,325.325 INFO    ] ================================================
[2026-06-19 14:53:44,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:53:44
[2026-06-19 14:53:45,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:53:45,792.792 INFO    ] Initializing speech engine...
[2026-06-19 14:53:45,801.801 INFO    ] 2026-06-19 14:53:45
[2026-06-19 14:53:46,061.061 INFO    ] 2026-06-19 14:53:46
[2026-06-19 14:53:46,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:53:46,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:53:46,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:53:46,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:53:46,823.823 INFO    ] time= 19/06/2026 14:53:46
[2026-06-19 14:53:46,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:53:46,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:53:47,044.044 INFO    ] No existing commands found in stream
[2026-06-19 14:53:52,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:53:52,063.063 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 14:53:52,553.553 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:53:52,555.555 INFO    ] Checking for system updates...
[2026-06-19 14:53:52,592.592 INFO    ] 200
[2026-06-19 14:53:52,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:52,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:53:52,650.650 INFO    ] No update needed
[2026-06-19 14:53:52,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 14:53:52,686.686 INFO    ] 200
[2026-06-19 14:53:52,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:53:52,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:53:52,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:53:52,779.779 INFO    ] No camera update needed
[2026-06-19 14:53:52,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:53:52,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:53:52,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:53:52,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:53:54,836.836 INFO    ] ================================================
[2026-06-19 14:53:54,852.852 INFO    ] Launching Daemon at Fri Jun 19 14:53:54 IST 2026
[2026-06-19 14:53:54,868.868 INFO    ] ================================================
[2026-06-19 14:53:55,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:53:55
[2026-06-19 14:53:56,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:53:56,291.291 INFO    ] Initializing speech engine...
[2026-06-19 14:53:56,314.314 INFO    ] 2026-06-19 14:53:56
[2026-06-19 14:53:56,591.591 INFO    ] 2026-06-19 14:53:56
[2026-06-19 14:53:56,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:53:56,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:53:56,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:53:56,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:53:56,974.974 INFO    ] time= 19/06/2026 14:53:56
[2026-06-19 14:53:56,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:53:57,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:53:57,099.099 INFO    ] No existing commands found in stream
[2026-06-19 14:54:02,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:54:02,112.112 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-19 14:54:05,517.517 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:54:05,520.520 INFO    ] Checking for system updates...
[2026-06-19 14:54:05,556.556 INFO    ] 200
[2026-06-19 14:54:05,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:05,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:54:05,615.615 INFO    ] No update needed
[2026-06-19 14:54:05,618.618 INFO    ] Checking for camera pi updates...
[2026-06-19 14:54:05,653.653 INFO    ] 200
[2026-06-19 14:54:05,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:05,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:54:05,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:54:05,746.746 INFO    ] No camera update needed
[2026-06-19 14:54:05,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:54:05,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:54:05,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:54:05,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:54:07,805.805 INFO    ] ================================================
[2026-06-19 14:54:07,821.821 INFO    ] Launching Daemon at Fri Jun 19 14:54:07 IST 2026
[2026-06-19 14:54:07,832.832 INFO    ] ================================================
[2026-06-19 14:54:08,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:54:08
[2026-06-19 14:54:09,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:54:09,264.264 INFO    ] Initializing speech engine...
[2026-06-19 14:54:09,271.271 INFO    ] 2026-06-19 14:54:09
[2026-06-19 14:54:09,569.569 INFO    ] 2026-06-19 14:54:09
[2026-06-19 14:54:09,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:54:09,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:54:09,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:54:09,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:54:09,997.997 INFO    ] time= 19/06/2026 14:54:09
[2026-06-19 14:54:10,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:54:10,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:54:10,174.174 INFO    ] No existing commands found in stream
[2026-06-19 14:54:15,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:54:15,196.196 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 14:54:15,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:54:15,959.959 INFO    ] Checking for system updates...
[2026-06-19 14:54:15,997.997 INFO    ] 200
[2026-06-19 14:54:15,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:16,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:54:16,058.058 INFO    ] No update needed
[2026-06-19 14:54:16,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 14:54:16,095.095 INFO    ] 200
[2026-06-19 14:54:16,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:16,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:54:16,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:54:16,180.180 INFO    ] No camera update needed
[2026-06-19 14:54:16,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:54:16,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:54:16,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:54:16,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:54:18,235.235 INFO    ] ================================================
[2026-06-19 14:54:18,250.250 INFO    ] Launching Daemon at Fri Jun 19 14:54:18 IST 2026
[2026-06-19 14:54:18,261.261 INFO    ] ================================================
[2026-06-19 14:54:18,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:54:18
[2026-06-19 14:54:19,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:54:19,882.882 INFO    ] Initializing speech engine...
[2026-06-19 14:54:19,890.890 INFO    ] 2026-06-19 14:54:19
[2026-06-19 14:54:20,180.180 INFO    ] 2026-06-19 14:54:20
[2026-06-19 14:54:20,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:54:20,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:54:20,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:54:20,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:54:20,715.715 INFO    ] time= 19/06/2026 14:54:20
[2026-06-19 14:54:20,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:54:20,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:54:20,918.918 INFO    ] No existing commands found in stream
[2026-06-19 14:54:25,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:54:25,947.947 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 14:54:29,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:54:29,571.571 INFO    ] Checking for system updates...
[2026-06-19 14:54:29,607.607 INFO    ] 200
[2026-06-19 14:54:29,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:29,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:54:29,665.665 INFO    ] No update needed
[2026-06-19 14:54:29,668.668 INFO    ] Checking for camera pi updates...
[2026-06-19 14:54:29,706.706 INFO    ] 200
[2026-06-19 14:54:29,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:29,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:54:29,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:54:29,800.800 INFO    ] No camera update needed
[2026-06-19 14:54:29,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:54:29,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:54:29,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:54:29,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:54:31,855.855 INFO    ] ================================================
[2026-06-19 14:54:31,870.870 INFO    ] Launching Daemon at Fri Jun 19 14:54:31 IST 2026
[2026-06-19 14:54:31,881.881 INFO    ] ================================================
[2026-06-19 14:54:32,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:54:32
[2026-06-19 14:54:33,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:54:33,414.414 INFO    ] Initializing speech engine...
[2026-06-19 14:54:33,422.422 INFO    ] 2026-06-19 14:54:33
[2026-06-19 14:54:33,703.703 INFO    ] 2026-06-19 14:54:33
[2026-06-19 14:54:33,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:54:33,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:54:33,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:54:34,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:54:34,105.105 INFO    ] time= 19/06/2026 14:54:34
[2026-06-19 14:54:34,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:54:34,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:54:34,194.194 INFO    ] No existing commands found in stream
[2026-06-19 14:54:39,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:54:39,211.211 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 14:54:41,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:54:41,616.616 INFO    ] Checking for system updates...
[2026-06-19 14:54:41,652.652 INFO    ] 200
[2026-06-19 14:54:41,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:41,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:54:41,709.709 INFO    ] No update needed
[2026-06-19 14:54:41,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 14:54:41,745.745 INFO    ] 200
[2026-06-19 14:54:41,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:41,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:54:41,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:54:41,836.836 INFO    ] No camera update needed
[2026-06-19 14:54:41,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:54:41,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:54:41,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:54:41,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:54:43,891.891 INFO    ] ================================================
[2026-06-19 14:54:43,906.906 INFO    ] Launching Daemon at Fri Jun 19 14:54:43 IST 2026
[2026-06-19 14:54:43,917.917 INFO    ] ================================================
[2026-06-19 14:54:44,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:54:44
[2026-06-19 14:54:45,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:54:45,382.382 INFO    ] Initializing speech engine...
[2026-06-19 14:54:45,389.389 INFO    ] 2026-06-19 14:54:45
[2026-06-19 14:54:45,649.649 INFO    ] 2026-06-19 14:54:45
[2026-06-19 14:54:45,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:54:45,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:54:45,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:54:46,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:54:46,195.195 INFO    ] time= 19/06/2026 14:54:46
[2026-06-19 14:54:46,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:54:46,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:54:46,351.351 INFO    ] No existing commands found in stream
[2026-06-19 14:54:51,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:54:51,377.377 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 14:54:51,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:54:51,841.841 INFO    ] Checking for system updates...
[2026-06-19 14:54:51,878.878 INFO    ] 200
[2026-06-19 14:54:51,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:51,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:54:51,937.937 INFO    ] No update needed
[2026-06-19 14:54:51,940.940 INFO    ] Checking for camera pi updates...
[2026-06-19 14:54:51,974.974 INFO    ] 200
[2026-06-19 14:54:51,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:54:52,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:54:52,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:54:52,063.063 INFO    ] No camera update needed
[2026-06-19 14:54:52,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:54:52,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:54:52,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:54:52,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:54:54,121.121 INFO    ] ================================================
[2026-06-19 14:54:54,136.136 INFO    ] Launching Daemon at Fri Jun 19 14:54:54 IST 2026
[2026-06-19 14:54:54,146.146 INFO    ] ================================================
[2026-06-19 14:54:54,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:54:54
[2026-06-19 14:54:55,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:54:55,792.792 INFO    ] Initializing speech engine...
[2026-06-19 14:54:55,801.801 INFO    ] 2026-06-19 14:54:55
[2026-06-19 14:54:56,097.097 INFO    ] 2026-06-19 14:54:56
[2026-06-19 14:54:56,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:54:56,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:54:56,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:54:56,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:54:56,655.655 INFO    ] time= 19/06/2026 14:54:56
[2026-06-19 14:54:56,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:54:56,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:54:56,822.822 INFO    ] No existing commands found in stream
[2026-06-19 14:55:01,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:55:01,862.862 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 14:55:02,766.766 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:55:02,770.770 INFO    ] Checking for system updates...
[2026-06-19 14:55:02,816.816 INFO    ] 200
[2026-06-19 14:55:02,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:02,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:55:02,883.883 INFO    ] No update needed
[2026-06-19 14:55:02,886.886 INFO    ] Checking for camera pi updates...
[2026-06-19 14:55:02,925.925 INFO    ] 200
[2026-06-19 14:55:02,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:02,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:55:03,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:55:03,019.019 INFO    ] No camera update needed
[2026-06-19 14:55:03,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:55:03,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:55:03,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:55:03,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:55:05,078.078 INFO    ] ================================================
[2026-06-19 14:55:05,094.094 INFO    ] Launching Daemon at Fri Jun 19 14:55:05 IST 2026
[2026-06-19 14:55:05,104.104 INFO    ] ================================================
[2026-06-19 14:55:05,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:55:05
[2026-06-19 14:55:06,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:55:06,553.553 INFO    ] Initializing speech engine...
[2026-06-19 14:55:06,560.560 INFO    ] 2026-06-19 14:55:06
[2026-06-19 14:55:06,836.836 INFO    ] 2026-06-19 14:55:06
[2026-06-19 14:55:06,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:55:07,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:55:07,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:55:07,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:55:07,246.246 INFO    ] time= 19/06/2026 14:55:07
[2026-06-19 14:55:07,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:55:07,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:55:07,336.336 INFO    ] No existing commands found in stream
[2026-06-19 14:55:12,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:55:12,352.352 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 14:55:14,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:55:14,750.750 INFO    ] Checking for system updates...
[2026-06-19 14:55:14,786.786 INFO    ] 200
[2026-06-19 14:55:14,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:14,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:55:14,846.846 INFO    ] No update needed
[2026-06-19 14:55:14,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 14:55:14,883.883 INFO    ] 200
[2026-06-19 14:55:14,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:14,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:55:14,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:55:14,971.971 INFO    ] No camera update needed
[2026-06-19 14:55:14,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:55:14,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:55:14,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:55:14,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:55:17,031.031 INFO    ] ================================================
[2026-06-19 14:55:17,046.046 INFO    ] Launching Daemon at Fri Jun 19 14:55:17 IST 2026
[2026-06-19 14:55:17,057.057 INFO    ] ================================================
[2026-06-19 14:55:17,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:55:17
[2026-06-19 14:55:18,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:55:18,524.524 INFO    ] Initializing speech engine...
[2026-06-19 14:55:18,533.533 INFO    ] 2026-06-19 14:55:18
[2026-06-19 14:55:18,784.784 INFO    ] 2026-06-19 14:55:18
[2026-06-19 14:55:18,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:55:19,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:55:19,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:55:19,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:55:19,281.281 INFO    ] time= 19/06/2026 14:55:19
[2026-06-19 14:55:19,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:55:19,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:55:19,492.492 INFO    ] No existing commands found in stream
[2026-06-19 14:55:24,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:55:24,511.511 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 14:55:27,922.922 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:55:27,925.925 INFO    ] Checking for system updates...
[2026-06-19 14:55:27,964.964 INFO    ] 200
[2026-06-19 14:55:27,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:28,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:55:28,026.026 INFO    ] No update needed
[2026-06-19 14:55:28,029.029 INFO    ] Checking for camera pi updates...
[2026-06-19 14:55:28,065.065 INFO    ] 200
[2026-06-19 14:55:28,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:28,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:55:28,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:55:28,160.160 INFO    ] No camera update needed
[2026-06-19 14:55:28,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:55:28,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:55:28,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:55:28,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:55:30,220.220 INFO    ] ================================================
[2026-06-19 14:55:30,242.242 INFO    ] Launching Daemon at Fri Jun 19 14:55:30 IST 2026
[2026-06-19 14:55:30,254.254 INFO    ] ================================================
[2026-06-19 14:55:30,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:55:30
[2026-06-19 14:55:31,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:55:31,663.663 INFO    ] Initializing speech engine...
[2026-06-19 14:55:31,669.669 INFO    ] 2026-06-19 14:55:31
[2026-06-19 14:55:31,973.973 INFO    ] 2026-06-19 14:55:31
[2026-06-19 14:55:32,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:55:32,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:55:32,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:55:32,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:55:32,449.449 INFO    ] time= 19/06/2026 14:55:32
[2026-06-19 14:55:32,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:55:32,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:55:32,676.676 INFO    ] No existing commands found in stream
[2026-06-19 14:55:37,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:55:37,704.704 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 14:55:41,216.216 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:55:41,219.219 INFO    ] Checking for system updates...
[2026-06-19 14:55:41,260.260 INFO    ] 200
[2026-06-19 14:55:41,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:41,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:55:41,319.319 INFO    ] No update needed
[2026-06-19 14:55:41,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 14:55:41,355.355 INFO    ] 200
[2026-06-19 14:55:41,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:41,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:55:41,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:55:41,445.445 INFO    ] No camera update needed
[2026-06-19 14:55:41,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:55:41,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:55:41,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:55:41,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:55:43,500.500 INFO    ] ================================================
[2026-06-19 14:55:43,515.515 INFO    ] Launching Daemon at Fri Jun 19 14:55:43 IST 2026
[2026-06-19 14:55:43,526.526 INFO    ] ================================================
[2026-06-19 14:55:44,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:55:44
[2026-06-19 14:55:44,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:55:44,958.958 INFO    ] Initializing speech engine...
[2026-06-19 14:55:44,967.967 INFO    ] 2026-06-19 14:55:44
[2026-06-19 14:55:45,219.219 INFO    ] 2026-06-19 14:55:45
[2026-06-19 14:55:45,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:55:45,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:55:45,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:55:45,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:55:45,683.683 INFO    ] time= 19/06/2026 14:55:45
[2026-06-19 14:55:45,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:55:45,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:55:45,932.932 INFO    ] No existing commands found in stream
[2026-06-19 14:55:50,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:55:50,962.962 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 14:55:53,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:55:53,720.720 INFO    ] Checking for system updates...
[2026-06-19 14:55:53,756.756 INFO    ] 200
[2026-06-19 14:55:53,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:53,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:55:53,814.814 INFO    ] No update needed
[2026-06-19 14:55:53,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 14:55:53,850.850 INFO    ] 200
[2026-06-19 14:55:53,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:55:53,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:55:54,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:55:54,039.039 INFO    ] No camera update needed
[2026-06-19 14:55:54,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:55:54,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:55:54,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:55:54,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:55:56,096.096 INFO    ] ================================================
[2026-06-19 14:55:56,112.112 INFO    ] Launching Daemon at Fri Jun 19 14:55:56 IST 2026
[2026-06-19 14:55:56,123.123 INFO    ] ================================================
[2026-06-19 14:55:56,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:55:56
[2026-06-19 14:55:57,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:55:57,717.717 INFO    ] Initializing speech engine...
[2026-06-19 14:55:57,725.725 INFO    ] 2026-06-19 14:55:57
[2026-06-19 14:55:58,047.047 INFO    ] 2026-06-19 14:55:58
[2026-06-19 14:55:58,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:55:58,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:55:58,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:55:58,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:55:58,573.573 INFO    ] time= 19/06/2026 14:55:58
[2026-06-19 14:55:58,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:55:58,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:55:58,792.792 INFO    ] No existing commands found in stream
[2026-06-19 14:56:03,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:56:03,826.826 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 14:56:07,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:56:07,594.594 INFO    ] Checking for system updates...
[2026-06-19 14:56:07,632.632 INFO    ] 200
[2026-06-19 14:56:07,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:56:07,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:56:07,693.693 INFO    ] No update needed
[2026-06-19 14:56:07,696.696 INFO    ] Checking for camera pi updates...
[2026-06-19 14:56:07,733.733 INFO    ] 200
[2026-06-19 14:56:07,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:56:07,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:56:07,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:56:07,823.823 INFO    ] No camera update needed
[2026-06-19 14:56:07,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:56:07,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:56:07,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:56:07,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:56:09,883.883 INFO    ] ================================================
[2026-06-19 14:56:09,898.898 INFO    ] Launching Daemon at Fri Jun 19 14:56:09 IST 2026
[2026-06-19 14:56:09,909.909 INFO    ] ================================================
[2026-06-19 14:56:10,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:56:10
[2026-06-19 14:56:11,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:56:11,548.548 INFO    ] Initializing speech engine...
[2026-06-19 14:56:11,556.556 INFO    ] 2026-06-19 14:56:11
[2026-06-19 14:56:11,843.843 INFO    ] 2026-06-19 14:56:11
[2026-06-19 14:56:11,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:56:12,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:56:12,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:56:12,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:56:12,452.452 INFO    ] time= 19/06/2026 14:56:12
[2026-06-19 14:56:12,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:56:12,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:56:12,688.688 INFO    ] No existing commands found in stream
[2026-06-19 14:56:17,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:56:17,722.722 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 14:56:21,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:56:21,118.118 INFO    ] Checking for system updates...
[2026-06-19 14:56:21,159.159 INFO    ] 200
[2026-06-19 14:56:21,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:56:21,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:56:21,218.218 INFO    ] No update needed
[2026-06-19 14:56:21,220.220 INFO    ] Checking for camera pi updates...
[2026-06-19 14:56:21,254.254 INFO    ] 200
[2026-06-19 14:56:21,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:56:21,302.302 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:56:21,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:56:21,349.349 INFO    ] No camera update needed
[2026-06-19 14:56:21,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:56:21,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:56:21,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:56:21,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:56:23,405.405 INFO    ] ================================================
[2026-06-19 14:56:23,420.420 INFO    ] Launching Daemon at Fri Jun 19 14:56:23 IST 2026
[2026-06-19 14:56:23,431.431 INFO    ] ================================================
[2026-06-19 14:56:23,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:56:23
[2026-06-19 14:56:24,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:56:24,853.853 INFO    ] Initializing speech engine...
[2026-06-19 14:56:24,861.861 INFO    ] 2026-06-19 14:56:24
[2026-06-19 14:56:25,163.163 INFO    ] 2026-06-19 14:56:25
[2026-06-19 14:56:25,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:56:25,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:56:25,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:56:25,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:56:25,553.553 INFO    ] time= 19/06/2026 14:56:25
[2026-06-19 14:56:25,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:56:25,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:56:25,681.681 INFO    ] No existing commands found in stream
[2026-06-19 14:56:30,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:56:30,698.698 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-19 14:56:35,099.099 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:56:35,102.102 INFO    ] Checking for system updates...
[2026-06-19 14:56:35,138.138 INFO    ] 200
[2026-06-19 14:56:35,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:56:35,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:56:35,197.197 INFO    ] No update needed
[2026-06-19 14:56:35,200.200 INFO    ] Checking for camera pi updates...
[2026-06-19 14:56:35,234.234 INFO    ] 200
[2026-06-19 14:56:35,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:56:35,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:56:35,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:56:35,319.319 INFO    ] No camera update needed
[2026-06-19 14:56:35,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:56:35,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:56:35,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:56:35,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:56:37,376.376 INFO    ] ================================================
[2026-06-19 14:56:37,392.392 INFO    ] Launching Daemon at Fri Jun 19 14:56:37 IST 2026
[2026-06-19 14:56:37,403.403 INFO    ] ================================================
[2026-06-19 14:56:37,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:56:37
[2026-06-19 14:56:38,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:56:38,848.848 INFO    ] Initializing speech engine...
[2026-06-19 14:56:38,857.857 INFO    ] 2026-06-19 14:56:38
[2026-06-19 14:56:39,155.155 INFO    ] 2026-06-19 14:56:39
[2026-06-19 14:56:39,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:56:39,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:56:39,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:56:39,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:56:39,581.581 INFO    ] time= 19/06/2026 14:56:39
[2026-06-19 14:56:39,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:56:39,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:56:39,674.674 INFO    ] No existing commands found in stream
[2026-06-19 14:56:44,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:56:44,708.708 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 14:56:48,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:56:48,924.924 INFO    ] Checking for system updates...
[2026-06-19 14:56:48,960.960 INFO    ] 200
[2026-06-19 14:56:48,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:56:49,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:56:49,025.025 INFO    ] No update needed
[2026-06-19 14:56:49,028.028 INFO    ] Checking for camera pi updates...
[2026-06-19 14:56:49,061.061 INFO    ] 200
[2026-06-19 14:56:49,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:56:49,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:56:49,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:56:49,140.140 INFO    ] No camera update needed
[2026-06-19 14:56:49,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:56:49,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:56:49,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:56:49,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:56:51,196.196 INFO    ] ================================================
[2026-06-19 14:56:51,211.211 INFO    ] Launching Daemon at Fri Jun 19 14:56:51 IST 2026
[2026-06-19 14:56:51,222.222 INFO    ] ================================================
[2026-06-19 14:56:51,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:56:51
[2026-06-19 14:56:52,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:56:52,661.661 INFO    ] Initializing speech engine...
[2026-06-19 14:56:52,667.667 INFO    ] 2026-06-19 14:56:52
[2026-06-19 14:56:52,967.967 INFO    ] 2026-06-19 14:56:52
[2026-06-19 14:56:53,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:56:53,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:56:53,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:56:53,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:56:53,392.392 INFO    ] time= 19/06/2026 14:56:53
[2026-06-19 14:56:53,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:56:53,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:56:53,479.479 INFO    ] No existing commands found in stream
[2026-06-19 14:56:58,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:56:58,494.494 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 14:57:00,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:57:00,367.367 INFO    ] Checking for system updates...
[2026-06-19 14:57:00,405.405 INFO    ] 200
[2026-06-19 14:57:00,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:00,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:57:00,466.466 INFO    ] No update needed
[2026-06-19 14:57:00,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 14:57:00,508.508 INFO    ] 200
[2026-06-19 14:57:00,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:00,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:57:00,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:57:00,601.601 INFO    ] No camera update needed
[2026-06-19 14:57:00,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:57:00,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:57:00,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:57:00,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:57:02,670.670 INFO    ] ================================================
[2026-06-19 14:57:02,687.687 INFO    ] Launching Daemon at Fri Jun 19 14:57:02 IST 2026
[2026-06-19 14:57:02,703.703 INFO    ] ================================================
[2026-06-19 14:57:03,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:57:03
[2026-06-19 14:57:03,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:57:04,240.240 INFO    ] Initializing speech engine...
[2026-06-19 14:57:04,249.249 INFO    ] 2026-06-19 14:57:04
[2026-06-19 14:57:04,548.548 INFO    ] 2026-06-19 14:57:04
[2026-06-19 14:57:04,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:57:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:57:04,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:57:05,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:57:05,048.048 INFO    ] time= 19/06/2026 14:57:05
[2026-06-19 14:57:05,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:57:05,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:57:05,226.226 INFO    ] No existing commands found in stream
[2026-06-19 14:57:10,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:57:10,240.240 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 14:57:14,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:57:14,621.621 INFO    ] Checking for system updates...
[2026-06-19 14:57:14,657.657 INFO    ] 200
[2026-06-19 14:57:14,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:14,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:57:14,718.718 INFO    ] No update needed
[2026-06-19 14:57:14,721.721 INFO    ] Checking for camera pi updates...
[2026-06-19 14:57:14,755.755 INFO    ] 200
[2026-06-19 14:57:14,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:14,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:57:14,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:57:14,852.852 INFO    ] No camera update needed
[2026-06-19 14:57:14,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:57:14,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:57:14,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:57:14,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:57:16,910.910 INFO    ] ================================================
[2026-06-19 14:57:16,925.925 INFO    ] Launching Daemon at Fri Jun 19 14:57:16 IST 2026
[2026-06-19 14:57:16,936.936 INFO    ] ================================================
[2026-06-19 14:57:17,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:57:17
[2026-06-19 14:57:18,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:57:18,386.386 INFO    ] Initializing speech engine...
[2026-06-19 14:57:18,393.393 INFO    ] 2026-06-19 14:57:18
[2026-06-19 14:57:18,691.691 INFO    ] 2026-06-19 14:57:18
[2026-06-19 14:57:18,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:57:18,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:57:18,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:57:19,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:57:19,112.112 INFO    ] time= 19/06/2026 14:57:19
[2026-06-19 14:57:19,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:57:19,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:57:19,202.202 INFO    ] No existing commands found in stream
[2026-06-19 14:57:24,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:57:24,240.240 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 14:57:28,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:57:28,191.191 INFO    ] Checking for system updates...
[2026-06-19 14:57:28,230.230 INFO    ] 200
[2026-06-19 14:57:28,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:28,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:57:28,288.288 INFO    ] No update needed
[2026-06-19 14:57:28,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 14:57:28,329.329 INFO    ] 200
[2026-06-19 14:57:28,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:28,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:57:28,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:57:28,422.422 INFO    ] No camera update needed
[2026-06-19 14:57:28,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:57:28,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:57:28,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:57:28,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:57:30,479.479 INFO    ] ================================================
[2026-06-19 14:57:30,494.494 INFO    ] Launching Daemon at Fri Jun 19 14:57:30 IST 2026
[2026-06-19 14:57:30,505.505 INFO    ] ================================================
[2026-06-19 14:57:31,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:57:31
[2026-06-19 14:57:31,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:57:31,992.992 INFO    ] Initializing speech engine...
[2026-06-19 14:57:32,009.009 INFO    ] 2026-06-19 14:57:31
[2026-06-19 14:57:32,303.303 INFO    ] 2026-06-19 14:57:32
[2026-06-19 14:57:32,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:57:32,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:57:32,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:57:32,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:57:32,697.697 INFO    ] time= 19/06/2026 14:57:32
[2026-06-19 14:57:32,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:57:32,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:57:32,817.817 INFO    ] No existing commands found in stream
[2026-06-19 14:57:37,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:57:37,856.856 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 14:57:41,801.801 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 14:57:41,804.804 INFO    ] Checking for system updates...
[2026-06-19 14:57:41,841.841 INFO    ] 200
[2026-06-19 14:57:41,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:41,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:57:41,901.901 INFO    ] No update needed
[2026-06-19 14:57:41,904.904 INFO    ] Checking for camera pi updates...
[2026-06-19 14:57:41,939.939 INFO    ] 200
[2026-06-19 14:57:41,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:41,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:57:42,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:57:42,032.032 INFO    ] No camera update needed
[2026-06-19 14:57:42,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:57:42,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:57:42,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:57:42,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:57:44,088.088 INFO    ] ================================================
[2026-06-19 14:57:44,103.103 INFO    ] Launching Daemon at Fri Jun 19 14:57:44 IST 2026
[2026-06-19 14:57:44,114.114 INFO    ] ================================================
[2026-06-19 14:57:44,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:57:44
[2026-06-19 14:57:45,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:57:45,671.671 INFO    ] Initializing speech engine...
[2026-06-19 14:57:45,682.682 INFO    ] 2026-06-19 14:57:45
[2026-06-19 14:57:45,967.967 INFO    ] 2026-06-19 14:57:45
[2026-06-19 14:57:46,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:57:46,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:57:46,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:57:46,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:57:46,456.456 INFO    ] time= 19/06/2026 14:57:46
[2026-06-19 14:57:46,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:57:46,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:57:46,701.701 INFO    ] No existing commands found in stream
[2026-06-19 14:57:51,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:57:51,739.739 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 14:57:55,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:57:55,024.024 INFO    ] Checking for system updates...
[2026-06-19 14:57:55,064.064 INFO    ] 200
[2026-06-19 14:57:55,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:55,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:57:55,150.150 INFO    ] No update needed
[2026-06-19 14:57:55,152.152 INFO    ] Checking for camera pi updates...
[2026-06-19 14:57:55,188.188 INFO    ] 200
[2026-06-19 14:57:55,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:57:55,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:57:55,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:57:55,281.281 INFO    ] No camera update needed
[2026-06-19 14:57:55,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:57:55,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:57:55,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:57:55,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:57:57,336.336 INFO    ] ================================================
[2026-06-19 14:57:57,352.352 INFO    ] Launching Daemon at Fri Jun 19 14:57:57 IST 2026
[2026-06-19 14:57:57,362.362 INFO    ] ================================================
[2026-06-19 14:57:57,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:57:57
[2026-06-19 14:57:58,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:57:58,804.804 INFO    ] Initializing speech engine...
[2026-06-19 14:57:58,818.818 INFO    ] 2026-06-19 14:57:58
[2026-06-19 14:57:59,107.107 INFO    ] 2026-06-19 14:57:59
[2026-06-19 14:57:59,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:57:59,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:57:59,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:57:59,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:57:59,493.493 INFO    ] time= 19/06/2026 14:57:59
[2026-06-19 14:57:59,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:57:59,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:57:59,621.621 INFO    ] No existing commands found in stream
[2026-06-19 14:58:04,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:58:04,636.636 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 14:58:08,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 14:58:08,112.112 INFO    ] Checking for system updates...
[2026-06-19 14:58:08,152.152 INFO    ] 200
[2026-06-19 14:58:08,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:08,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:58:08,212.212 INFO    ] No update needed
[2026-06-19 14:58:08,214.214 INFO    ] Checking for camera pi updates...
[2026-06-19 14:58:08,248.248 INFO    ] 200
[2026-06-19 14:58:08,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:08,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:58:08,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:58:08,339.339 INFO    ] No camera update needed
[2026-06-19 14:58:08,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:58:08,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:58:08,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:58:08,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:58:10,394.394 INFO    ] ================================================
[2026-06-19 14:58:10,410.410 INFO    ] Launching Daemon at Fri Jun 19 14:58:10 IST 2026
[2026-06-19 14:58:10,425.425 INFO    ] ================================================
[2026-06-19 14:58:11,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:58:11
[2026-06-19 14:58:11,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:58:12,092.092 INFO    ] Initializing speech engine...
[2026-06-19 14:58:12,098.098 INFO    ] 2026-06-19 14:58:12
[2026-06-19 14:58:12,384.384 INFO    ] 2026-06-19 14:58:12
[2026-06-19 14:58:12,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:58:12,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:58:12,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:58:12,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:58:12,929.929 INFO    ] time= 19/06/2026 14:58:12
[2026-06-19 14:58:12,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:58:12,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:58:13,087.087 INFO    ] No existing commands found in stream
[2026-06-19 14:58:18,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:58:18,128.128 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 14:58:19,289.289 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:58:19,292.292 INFO    ] Checking for system updates...
[2026-06-19 14:58:19,328.328 INFO    ] 200
[2026-06-19 14:58:19,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:19,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:58:19,386.386 INFO    ] No update needed
[2026-06-19 14:58:19,388.388 INFO    ] Checking for camera pi updates...
[2026-06-19 14:58:19,422.422 INFO    ] 200
[2026-06-19 14:58:19,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:19,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:58:19,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:58:19,510.510 INFO    ] No camera update needed
[2026-06-19 14:58:19,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:58:19,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:58:19,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:58:19,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:58:21,565.565 INFO    ] ================================================
[2026-06-19 14:58:21,580.580 INFO    ] Launching Daemon at Fri Jun 19 14:58:21 IST 2026
[2026-06-19 14:58:21,591.591 INFO    ] ================================================
[2026-06-19 14:58:22,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:58:22
[2026-06-19 14:58:22,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:58:23,051.051 INFO    ] Initializing speech engine...
[2026-06-19 14:58:23,058.058 INFO    ] 2026-06-19 14:58:23
[2026-06-19 14:58:23,319.319 INFO    ] 2026-06-19 14:58:23
[2026-06-19 14:58:23,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:58:23,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:58:23,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:58:23,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:58:23,783.783 INFO    ] time= 19/06/2026 14:58:23
[2026-06-19 14:58:23,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:58:23,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:58:23,984.984 INFO    ] No existing commands found in stream
[2026-06-19 14:58:29,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:58:29,009.009 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 14:58:31,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:58:31,416.416 INFO    ] Checking for system updates...
[2026-06-19 14:58:31,457.457 INFO    ] 200
[2026-06-19 14:58:31,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:31,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:58:31,516.516 INFO    ] No update needed
[2026-06-19 14:58:31,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 14:58:31,552.552 INFO    ] 200
[2026-06-19 14:58:31,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:31,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:58:31,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:58:31,643.643 INFO    ] No camera update needed
[2026-06-19 14:58:31,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:58:31,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:58:31,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:58:31,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:58:33,700.700 INFO    ] ================================================
[2026-06-19 14:58:33,715.715 INFO    ] Launching Daemon at Fri Jun 19 14:58:33 IST 2026
[2026-06-19 14:58:33,725.725 INFO    ] ================================================
[2026-06-19 14:58:34,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:58:34
[2026-06-19 14:58:34,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:58:35,141.141 INFO    ] Initializing speech engine...
[2026-06-19 14:58:35,158.158 INFO    ] 2026-06-19 14:58:35
[2026-06-19 14:58:35,449.449 INFO    ] 2026-06-19 14:58:35
[2026-06-19 14:58:35,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:58:35,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:58:35,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:58:35,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:58:35,874.874 INFO    ] time= 19/06/2026 14:58:35
[2026-06-19 14:58:35,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:58:35,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:58:36,047.047 INFO    ] No existing commands found in stream
[2026-06-19 14:58:41,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:58:41,075.075 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 14:58:42,481.481 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:58:42,490.490 INFO    ] Checking for system updates...
[2026-06-19 14:58:42,530.530 INFO    ] 200
[2026-06-19 14:58:42,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:42,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:58:42,597.597 INFO    ] No update needed
[2026-06-19 14:58:42,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 14:58:42,639.639 INFO    ] 200
[2026-06-19 14:58:42,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:42,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:58:42,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:58:42,736.736 INFO    ] No camera update needed
[2026-06-19 14:58:42,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:58:42,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:58:42,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:58:42,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:58:44,794.794 INFO    ] ================================================
[2026-06-19 14:58:44,809.809 INFO    ] Launching Daemon at Fri Jun 19 14:58:44 IST 2026
[2026-06-19 14:58:44,820.820 INFO    ] ================================================
[2026-06-19 14:58:45,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:58:45
[2026-06-19 14:58:46,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:58:46,464.464 INFO    ] Initializing speech engine...
[2026-06-19 14:58:46,476.476 INFO    ] 2026-06-19 14:58:46
[2026-06-19 14:58:46,785.785 INFO    ] 2026-06-19 14:58:46
[2026-06-19 14:58:46,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:58:47,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:58:47,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:58:47,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:58:47,293.293 INFO    ] time= 19/06/2026 14:58:47
[2026-06-19 14:58:47,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:58:47,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:58:47,488.488 INFO    ] No existing commands found in stream
[2026-06-19 14:58:52,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:58:52,518.518 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 14:58:55,118.118 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:58:55,121.121 INFO    ] Checking for system updates...
[2026-06-19 14:58:55,160.160 INFO    ] 200
[2026-06-19 14:58:55,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:55,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:58:55,219.219 INFO    ] No update needed
[2026-06-19 14:58:55,222.222 INFO    ] Checking for camera pi updates...
[2026-06-19 14:58:55,260.260 INFO    ] 200
[2026-06-19 14:58:55,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:58:55,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:58:55,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:58:55,354.354 INFO    ] No camera update needed
[2026-06-19 14:58:55,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:58:55,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:58:55,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:58:55,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:58:57,412.412 INFO    ] ================================================
[2026-06-19 14:58:57,427.427 INFO    ] Launching Daemon at Fri Jun 19 14:58:57 IST 2026
[2026-06-19 14:58:57,439.439 INFO    ] ================================================
[2026-06-19 14:58:58,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:58:58
[2026-06-19 14:58:58,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:58:59,059.059 INFO    ] Initializing speech engine...
[2026-06-19 14:58:59,073.073 INFO    ] 2026-06-19 14:58:59
[2026-06-19 14:58:59,359.359 INFO    ] 2026-06-19 14:58:59
[2026-06-19 14:58:59,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:58:59,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:58:59,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:58:59,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:58:59,890.890 INFO    ] time= 19/06/2026 14:58:59
[2026-06-19 14:58:59,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:58:59,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:59:00,050.050 INFO    ] No existing commands found in stream
[2026-06-19 14:59:05,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:59:05,074.074 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 14:59:07,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 14:59:07,693.693 INFO    ] Checking for system updates...
[2026-06-19 14:59:07,731.731 INFO    ] 200
[2026-06-19 14:59:07,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:07,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:59:07,799.799 INFO    ] No update needed
[2026-06-19 14:59:07,802.802 INFO    ] Checking for camera pi updates...
[2026-06-19 14:59:07,841.841 INFO    ] 200
[2026-06-19 14:59:07,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:07,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:59:07,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:59:07,939.939 INFO    ] No camera update needed
[2026-06-19 14:59:07,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:59:07,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:59:07,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:59:07,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:59:10,998.998 INFO    ] ================================================
[2026-06-19 14:59:10,013.013 INFO    ] Launching Daemon at Fri Jun 19 14:59:10 IST 2026
[2026-06-19 14:59:10,024.024 INFO    ] ================================================
[2026-06-19 14:59:10,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:59:10
[2026-06-19 14:59:11,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:59:11,426.426 INFO    ] Initializing speech engine...
[2026-06-19 14:59:11,434.434 INFO    ] 2026-06-19 14:59:11
[2026-06-19 14:59:11,709.709 INFO    ] 2026-06-19 14:59:11
[2026-06-19 14:59:11,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:59:11,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:59:11,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:59:12,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:59:12,131.131 INFO    ] time= 19/06/2026 14:59:12
[2026-06-19 14:59:12,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:59:12,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:59:12,219.219 INFO    ] No existing commands found in stream
[2026-06-19 14:59:17,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:59:17,238.238 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 14:59:18,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:59:18,511.511 INFO    ] Checking for system updates...
[2026-06-19 14:59:18,547.547 INFO    ] 200
[2026-06-19 14:59:18,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:18,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:59:18,613.613 INFO    ] No update needed
[2026-06-19 14:59:18,615.615 INFO    ] Checking for camera pi updates...
[2026-06-19 14:59:18,650.650 INFO    ] 200
[2026-06-19 14:59:18,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:18,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:59:18,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:59:18,744.744 INFO    ] No camera update needed
[2026-06-19 14:59:18,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:59:18,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:59:18,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:59:18,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:59:20,801.801 INFO    ] ================================================
[2026-06-19 14:59:20,815.815 INFO    ] Launching Daemon at Fri Jun 19 14:59:20 IST 2026
[2026-06-19 14:59:20,826.826 INFO    ] ================================================
[2026-06-19 14:59:21,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:59:21
[2026-06-19 14:59:21,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:59:22,273.273 INFO    ] Initializing speech engine...
[2026-06-19 14:59:22,281.281 INFO    ] 2026-06-19 14:59:22
[2026-06-19 14:59:22,542.542 INFO    ] 2026-06-19 14:59:22
[2026-06-19 14:59:22,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:59:22,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:59:22,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:59:22,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:59:23,035.035 INFO    ] time= 19/06/2026 14:59:22
[2026-06-19 14:59:23,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:59:23,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:59:23,242.242 INFO    ] No existing commands found in stream
[2026-06-19 14:59:28,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:59:28,261.261 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 14:59:32,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 14:59:32,654.654 INFO    ] Checking for system updates...
[2026-06-19 14:59:32,693.693 INFO    ] 200
[2026-06-19 14:59:32,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:32,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:59:32,757.757 INFO    ] No update needed
[2026-06-19 14:59:32,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 14:59:32,797.797 INFO    ] 200
[2026-06-19 14:59:32,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:32,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:59:32,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:59:32,902.902 INFO    ] No camera update needed
[2026-06-19 14:59:32,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:59:32,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:59:32,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:59:32,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:59:34,962.962 INFO    ] ================================================
[2026-06-19 14:59:34,977.977 INFO    ] Launching Daemon at Fri Jun 19 14:59:34 IST 2026
[2026-06-19 14:59:34,988.988 INFO    ] ================================================
[2026-06-19 14:59:35,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:59:35
[2026-06-19 14:59:36,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:59:36,437.437 INFO    ] Initializing speech engine...
[2026-06-19 14:59:36,460.460 INFO    ] 2026-06-19 14:59:36
[2026-06-19 14:59:36,715.715 INFO    ] 2026-06-19 14:59:36
[2026-06-19 14:59:36,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:59:37,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:59:37,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:59:37,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:59:37,224.224 INFO    ] time= 19/06/2026 14:59:37
[2026-06-19 14:59:37,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:59:37,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:59:37,408.408 INFO    ] No existing commands found in stream
[2026-06-19 14:59:42,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:59:42,438.438 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 14:59:44,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 14:59:44,907.907 INFO    ] Checking for system updates...
[2026-06-19 14:59:44,943.943 INFO    ] 200
[2026-06-19 14:59:44,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:44,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:59:45,002.002 INFO    ] No update needed
[2026-06-19 14:59:45,005.005 INFO    ] Checking for camera pi updates...
[2026-06-19 14:59:45,042.042 INFO    ] 200
[2026-06-19 14:59:45,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:45,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:59:45,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 14:59:45,137.137 INFO    ] No camera update needed
[2026-06-19 14:59:45,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:59:45,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:59:45,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:59:45,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:59:47,195.195 INFO    ] ================================================
[2026-06-19 14:59:47,211.211 INFO    ] Launching Daemon at Fri Jun 19 14:59:47 IST 2026
[2026-06-19 14:59:47,223.223 INFO    ] ================================================
[2026-06-19 14:59:47,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:59:47
[2026-06-19 14:59:48,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 14:59:48,627.627 INFO    ] Initializing speech engine...
[2026-06-19 14:59:48,634.634 INFO    ] 2026-06-19 14:59:48
[2026-06-19 14:59:48,929.929 INFO    ] 2026-06-19 14:59:48
[2026-06-19 14:59:48,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 14:59:49,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 14:59:49,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 14:59:49,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 14:59:49,347.347 INFO    ] time= 19/06/2026 14:59:49
[2026-06-19 14:59:49,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 14:59:49,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 14:59:49,435.435 INFO    ] No existing commands found in stream
[2026-06-19 14:59:54,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 14:59:54,468.468 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 14:59:56,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 14:59:56,327.327 INFO    ] Checking for system updates...
[2026-06-19 14:59:56,367.367 INFO    ] 200
[2026-06-19 14:59:56,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:56,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:59:56,437.437 INFO    ] No update needed
[2026-06-19 14:59:56,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 14:59:56,474.474 INFO    ] 200
[2026-06-19 14:59:56,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 14:59:56,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 14:59:56,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 14:59:56,558.558 INFO    ] No camera update needed
[2026-06-19 14:59:56,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-19 14:59:56,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 14:59:56,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 14:59:56,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 14:59:58,616.616 INFO    ] ================================================
[2026-06-19 14:59:58,632.632 INFO    ] Launching Daemon at Fri Jun 19 14:59:58 IST 2026
[2026-06-19 14:59:58,643.643 INFO    ] ================================================
[2026-06-19 14:59:59,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 14:59:59
[2026-06-19 14:59:59,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:00:00,051.051 INFO    ] Initializing speech engine...
[2026-06-19 15:00:00,074.074 INFO    ] 2026-06-19 15:00:00
[2026-06-19 15:00:00,329.329 INFO    ] 2026-06-19 15:00:00
[2026-06-19 15:00:00,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:00:00,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:00:00,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:00:00,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:00:00,787.787 INFO    ] time= 19/06/2026 15:00:00
[2026-06-19 15:00:00,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:00:00,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:00:01,024.024 INFO    ] No existing commands found in stream
[2026-06-19 15:00:06,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:00:06,070.070 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 15:00:09,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:00:09,048.048 INFO    ] Checking for system updates...
[2026-06-19 15:00:09,084.084 INFO    ] 200
[2026-06-19 15:00:09,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:09,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:00:09,143.143 INFO    ] No update needed
[2026-06-19 15:00:09,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 15:00:09,179.179 INFO    ] 200
[2026-06-19 15:00:09,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:09,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:00:09,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:00:09,382.382 INFO    ] No camera update needed
[2026-06-19 15:00:09,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:00:09,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:00:09,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:00:09,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:00:11,444.444 INFO    ] ================================================
[2026-06-19 15:00:11,461.461 INFO    ] Launching Daemon at Fri Jun 19 15:00:11 IST 2026
[2026-06-19 15:00:11,472.472 INFO    ] ================================================
[2026-06-19 15:00:12,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:00:12
[2026-06-19 15:00:12,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:00:12,888.888 INFO    ] Initializing speech engine...
[2026-06-19 15:00:12,895.895 INFO    ] 2026-06-19 15:00:12
[2026-06-19 15:00:13,191.191 INFO    ] 2026-06-19 15:00:13
[2026-06-19 15:00:13,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:00:13,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:00:13,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:00:13,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:00:13,576.576 INFO    ] time= 19/06/2026 15:00:13
[2026-06-19 15:00:13,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:00:13,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:00:13,704.704 INFO    ] No existing commands found in stream
[2026-06-19 15:00:18,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:00:18,719.719 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 15:00:20,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:00:20,230.230 INFO    ] Checking for system updates...
[2026-06-19 15:00:20,270.270 INFO    ] 200
[2026-06-19 15:00:20,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:20,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:00:20,330.330 INFO    ] No update needed
[2026-06-19 15:00:20,332.332 INFO    ] Checking for camera pi updates...
[2026-06-19 15:00:20,370.370 INFO    ] 200
[2026-06-19 15:00:20,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:20,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:00:20,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:00:20,461.461 INFO    ] No camera update needed
[2026-06-19 15:00:20,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:00:20,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:00:20,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:00:20,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:00:22,516.516 INFO    ] ================================================
[2026-06-19 15:00:22,532.532 INFO    ] Launching Daemon at Fri Jun 19 15:00:22 IST 2026
[2026-06-19 15:00:22,543.543 INFO    ] ================================================
[2026-06-19 15:00:23,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:00:23
[2026-06-19 15:00:23,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:00:23,988.988 INFO    ] Initializing speech engine...
[2026-06-19 15:00:23,996.996 INFO    ] 2026-06-19 15:00:23
[2026-06-19 15:00:24,253.253 INFO    ] 2026-06-19 15:00:24
[2026-06-19 15:00:24,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:00:24,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:00:24,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:00:24,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:00:24,802.802 INFO    ] time= 19/06/2026 15:00:24
[2026-06-19 15:00:24,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:00:24,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:00:24,960.960 INFO    ] No existing commands found in stream
[2026-06-19 15:00:29,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:00:29,985.985 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 15:00:32,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:00:32,917.917 INFO    ] Checking for system updates...
[2026-06-19 15:00:32,958.958 INFO    ] 200
[2026-06-19 15:00:32,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:33,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:00:33,031.031 INFO    ] No update needed
[2026-06-19 15:00:33,034.034 INFO    ] Checking for camera pi updates...
[2026-06-19 15:00:33,072.072 INFO    ] 200
[2026-06-19 15:00:33,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:33,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:00:33,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:00:33,151.151 INFO    ] No camera update needed
[2026-06-19 15:00:33,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:00:33,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:00:33,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:00:33,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:00:35,219.219 INFO    ] ================================================
[2026-06-19 15:00:35,235.235 INFO    ] Launching Daemon at Fri Jun 19 15:00:35 IST 2026
[2026-06-19 15:00:35,246.246 INFO    ] ================================================
[2026-06-19 15:00:35,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:00:35
[2026-06-19 15:00:36,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:00:36,898.898 INFO    ] Initializing speech engine...
[2026-06-19 15:00:36,913.913 INFO    ] 2026-06-19 15:00:36
[2026-06-19 15:00:37,188.188 INFO    ] 2026-06-19 15:00:37
[2026-06-19 15:00:37,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:00:37,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:00:37,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:00:37,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:00:37,682.682 INFO    ] time= 19/06/2026 15:00:37
[2026-06-19 15:00:37,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:00:37,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:00:37,893.893 INFO    ] No existing commands found in stream
[2026-06-19 15:00:42,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:00:42,914.914 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 15:00:46,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:00:46,778.778 INFO    ] Checking for system updates...
[2026-06-19 15:00:46,817.817 INFO    ] 200
[2026-06-19 15:00:46,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:46,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:00:46,877.877 INFO    ] No update needed
[2026-06-19 15:00:46,880.880 INFO    ] Checking for camera pi updates...
[2026-06-19 15:00:46,916.916 INFO    ] 200
[2026-06-19 15:00:46,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:46,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:00:46,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:00:46,996.996 INFO    ] No camera update needed
[2026-06-19 15:00:46,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:00:47,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:00:47,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:00:47,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:00:49,056.056 INFO    ] ================================================
[2026-06-19 15:00:49,071.071 INFO    ] Launching Daemon at Fri Jun 19 15:00:49 IST 2026
[2026-06-19 15:00:49,082.082 INFO    ] ================================================
[2026-06-19 15:00:49,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:00:49
[2026-06-19 15:00:50,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:00:50,547.547 INFO    ] Initializing speech engine...
[2026-06-19 15:00:50,556.556 INFO    ] 2026-06-19 15:00:50
[2026-06-19 15:00:50,854.854 INFO    ] 2026-06-19 15:00:50
[2026-06-19 15:00:50,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:00:51,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:00:51,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:00:51,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:00:51,259.259 INFO    ] time= 19/06/2026 15:00:51
[2026-06-19 15:00:51,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:00:51,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:00:51,367.367 INFO    ] No existing commands found in stream
[2026-06-19 15:00:56,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:00:56,383.383 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 15:00:57,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:00:57,299.299 INFO    ] Checking for system updates...
[2026-06-19 15:00:57,337.337 INFO    ] 200
[2026-06-19 15:00:57,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:57,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:00:57,405.405 INFO    ] No update needed
[2026-06-19 15:00:57,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 15:00:57,444.444 INFO    ] 200
[2026-06-19 15:00:57,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:00:57,495.495 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:00:57,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:00:57,545.545 INFO    ] No camera update needed
[2026-06-19 15:00:57,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:00:57,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:00:57,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:00:57,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:00:59,604.604 INFO    ] ================================================
[2026-06-19 15:00:59,623.623 INFO    ] Launching Daemon at Fri Jun 19 15:00:59 IST 2026
[2026-06-19 15:00:59,634.634 INFO    ] ================================================
[2026-06-19 15:01:00,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:01:00
[2026-06-19 15:01:01,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:01:01,322.322 INFO    ] Initializing speech engine...
[2026-06-19 15:01:01,333.333 INFO    ] 2026-06-19 15:01:01
[2026-06-19 15:01:01,630.630 INFO    ] 2026-06-19 15:01:01
[2026-06-19 15:01:01,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:01:01,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:01:01,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:01:02,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:01:02,180.180 INFO    ] time= 19/06/2026 15:01:02
[2026-06-19 15:01:02,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:01:02,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:01:02,315.315 INFO    ] No existing commands found in stream
[2026-06-19 15:01:07,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:01:07,349.349 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 15:01:09,032.032 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:01:09,035.035 INFO    ] Checking for system updates...
[2026-06-19 15:01:09,071.071 INFO    ] 200
[2026-06-19 15:01:09,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:09,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:01:09,128.128 INFO    ] No update needed
[2026-06-19 15:01:09,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 15:01:09,165.165 INFO    ] 200
[2026-06-19 15:01:09,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:09,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:01:09,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:01:09,251.251 INFO    ] No camera update needed
[2026-06-19 15:01:09,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:01:09,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:01:09,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:01:09,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:01:11,307.307 INFO    ] ================================================
[2026-06-19 15:01:11,322.322 INFO    ] Launching Daemon at Fri Jun 19 15:01:11 IST 2026
[2026-06-19 15:01:11,333.333 INFO    ] ================================================
[2026-06-19 15:01:11,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:01:11
[2026-06-19 15:01:12,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:01:12,748.748 INFO    ] Initializing speech engine...
[2026-06-19 15:01:12,761.761 INFO    ] 2026-06-19 15:01:12
[2026-06-19 15:01:13,029.029 INFO    ] 2026-06-19 15:01:13
[2026-06-19 15:01:13,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:01:13,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:01:13,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:01:13,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:01:13,408.408 INFO    ] time= 19/06/2026 15:01:13
[2026-06-19 15:01:13,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:01:13,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:01:13,597.597 INFO    ] No existing commands found in stream
[2026-06-19 15:01:18,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:01:18,625.625 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 15:01:19,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:01:19,053.053 INFO    ] Checking for system updates...
[2026-06-19 15:01:19,089.089 INFO    ] 200
[2026-06-19 15:01:19,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:19,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:01:19,151.151 INFO    ] No update needed
[2026-06-19 15:01:19,154.154 INFO    ] Checking for camera pi updates...
[2026-06-19 15:01:19,187.187 INFO    ] 200
[2026-06-19 15:01:19,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:19,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:01:19,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:01:19,281.281 INFO    ] No camera update needed
[2026-06-19 15:01:19,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:01:19,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:01:19,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:01:19,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:01:21,337.337 INFO    ] ================================================
[2026-06-19 15:01:21,353.353 INFO    ] Launching Daemon at Fri Jun 19 15:01:21 IST 2026
[2026-06-19 15:01:21,364.364 INFO    ] ================================================
[2026-06-19 15:01:21,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:01:21
[2026-06-19 15:01:22,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:01:22,845.845 INFO    ] Initializing speech engine...
[2026-06-19 15:01:22,858.858 INFO    ] 2026-06-19 15:01:22
[2026-06-19 15:01:23,127.127 INFO    ] 2026-06-19 15:01:23
[2026-06-19 15:01:23,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:01:23,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:01:23,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:01:23,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:01:23,545.545 INFO    ] time= 19/06/2026 15:01:23
[2026-06-19 15:01:23,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:01:23,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:01:23,709.709 INFO    ] No existing commands found in stream
[2026-06-19 15:01:28,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:01:28,738.738 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 15:01:31,914.914 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:01:31,917.917 INFO    ] Checking for system updates...
[2026-06-19 15:01:31,956.956 INFO    ] 200
[2026-06-19 15:01:31,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:32,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:01:32,024.024 INFO    ] No update needed
[2026-06-19 15:01:32,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 15:01:32,064.064 INFO    ] 200
[2026-06-19 15:01:32,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:32,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:01:32,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:01:32,146.146 INFO    ] No camera update needed
[2026-06-19 15:01:32,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:01:32,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:01:32,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:01:32,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:01:34,206.206 INFO    ] ================================================
[2026-06-19 15:01:34,222.222 INFO    ] Launching Daemon at Fri Jun 19 15:01:34 IST 2026
[2026-06-19 15:01:34,233.233 INFO    ] ================================================
[2026-06-19 15:01:34,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:01:34
[2026-06-19 15:01:35,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:01:35,652.652 INFO    ] Initializing speech engine...
[2026-06-19 15:01:35,661.661 INFO    ] 2026-06-19 15:01:35
[2026-06-19 15:01:35,918.918 INFO    ] 2026-06-19 15:01:35
[2026-06-19 15:01:35,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:01:36,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:01:36,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:01:36,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:01:36,428.428 INFO    ] time= 19/06/2026 15:01:36
[2026-06-19 15:01:36,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:01:36,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:01:36,639.639 INFO    ] No existing commands found in stream
[2026-06-19 15:01:41,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:01:41,658.658 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 15:01:43,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:01:43,820.820 INFO    ] Checking for system updates...
[2026-06-19 15:01:43,856.856 INFO    ] 200
[2026-06-19 15:01:43,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:43,911.911 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:01:43,913.913 INFO    ] No update needed
[2026-06-19 15:01:43,916.916 INFO    ] Checking for camera pi updates...
[2026-06-19 15:01:43,949.949 INFO    ] 200
[2026-06-19 15:01:43,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:43,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:01:44,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:01:44,038.038 INFO    ] No camera update needed
[2026-06-19 15:01:44,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:01:44,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:01:44,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:01:44,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:01:46,095.095 INFO    ] ================================================
[2026-06-19 15:01:46,111.111 INFO    ] Launching Daemon at Fri Jun 19 15:01:46 IST 2026
[2026-06-19 15:01:46,122.122 INFO    ] ================================================
[2026-06-19 15:01:46,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:01:46
[2026-06-19 15:01:47,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:01:47,586.586 INFO    ] Initializing speech engine...
[2026-06-19 15:01:47,597.597 INFO    ] 2026-06-19 15:01:47
[2026-06-19 15:01:47,847.847 INFO    ] 2026-06-19 15:01:47
[2026-06-19 15:01:47,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:01:48,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:01:48,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:01:48,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:01:48,404.404 INFO    ] time= 19/06/2026 15:01:48
[2026-06-19 15:01:48,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:01:48,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:01:48,556.556 INFO    ] No existing commands found in stream
[2026-06-19 15:01:53,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:01:53,574.574 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 15:01:57,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:01:57,645.645 INFO    ] Checking for system updates...
[2026-06-19 15:01:57,682.682 INFO    ] 200
[2026-06-19 15:01:57,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:57,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:01:57,741.741 INFO    ] No update needed
[2026-06-19 15:01:57,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 15:01:57,779.779 INFO    ] 200
[2026-06-19 15:01:57,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:01:57,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:01:57,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:01:57,872.872 INFO    ] No camera update needed
[2026-06-19 15:01:57,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:01:57,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:01:57,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:01:57,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:01:59,928.928 INFO    ] ================================================
[2026-06-19 15:01:59,943.943 INFO    ] Launching Daemon at Fri Jun 19 15:01:59 IST 2026
[2026-06-19 15:01:59,954.954 INFO    ] ================================================
[2026-06-19 15:02:00,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:02:00
[2026-06-19 15:02:01,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:02:01,531.531 INFO    ] Initializing speech engine...
[2026-06-19 15:02:01,541.541 INFO    ] 2026-06-19 15:02:01
[2026-06-19 15:02:02,076.076 INFO    ] 2026-06-19 15:02:02
[2026-06-19 15:02:02,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:02:02,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:02:02,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:02:02,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:02:02,655.655 INFO    ] time= 19/06/2026 15:02:02
[2026-06-19 15:02:02,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:02:02,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:02:02,806.806 INFO    ] No existing commands found in stream
[2026-06-19 15:02:07,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:02:07,841.841 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 15:02:10,410.410 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:02:10,413.413 INFO    ] Checking for system updates...
[2026-06-19 15:02:10,450.450 INFO    ] 200
[2026-06-19 15:02:10,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:02:10,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:02:10,508.508 INFO    ] No update needed
[2026-06-19 15:02:10,511.511 INFO    ] Checking for camera pi updates...
[2026-06-19 15:02:10,545.545 INFO    ] 200
[2026-06-19 15:02:10,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:02:10,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:02:10,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:02:10,746.746 INFO    ] No camera update needed
[2026-06-19 15:02:10,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:02:10,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:02:10,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:02:10,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:02:12,801.801 INFO    ] ================================================
[2026-06-19 15:02:12,817.817 INFO    ] Launching Daemon at Fri Jun 19 15:02:12 IST 2026
[2026-06-19 15:02:12,828.828 INFO    ] ================================================
[2026-06-19 15:02:13,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:02:13
[2026-06-19 15:02:13,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:02:14,253.253 INFO    ] Initializing speech engine...
[2026-06-19 15:02:14,263.263 INFO    ] 2026-06-19 15:02:14
[2026-06-19 15:02:14,507.507 INFO    ] 2026-06-19 15:02:14
[2026-06-19 15:02:14,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:02:14,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:02:14,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:02:14,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:02:14,939.939 INFO    ] time= 19/06/2026 15:02:14
[2026-06-19 15:02:14,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:02:15,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:02:15,120.120 INFO    ] No existing commands found in stream
[2026-06-19 15:02:20,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:02:20,145.145 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 15:02:23,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:02:23,621.621 INFO    ] Checking for system updates...
[2026-06-19 15:02:23,657.657 INFO    ] 200
[2026-06-19 15:02:23,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:02:23,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:02:23,714.714 INFO    ] No update needed
[2026-06-19 15:02:23,717.717 INFO    ] Checking for camera pi updates...
[2026-06-19 15:02:23,751.751 INFO    ] 200
[2026-06-19 15:02:23,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:02:23,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:02:23,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:02:23,839.839 INFO    ] No camera update needed
[2026-06-19 15:02:23,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:02:23,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:02:23,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:02:23,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:02:25,898.898 INFO    ] ================================================
[2026-06-19 15:02:25,914.914 INFO    ] Launching Daemon at Fri Jun 19 15:02:25 IST 2026
[2026-06-19 15:02:25,925.925 INFO    ] ================================================
[2026-06-19 15:02:26,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:02:26
[2026-06-19 15:02:27,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:02:27,503.503 INFO    ] Initializing speech engine...
[2026-06-19 15:02:27,518.518 INFO    ] 2026-06-19 15:02:27
[2026-06-19 15:02:27,771.771 INFO    ] 2026-06-19 15:02:27
[2026-06-19 15:02:27,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:02:28,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:02:28,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:02:28,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:02:28,250.250 INFO    ] time= 19/06/2026 15:02:28
[2026-06-19 15:02:28,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:02:28,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:02:28,472.472 INFO    ] No existing commands found in stream
[2026-06-19 15:02:33,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:02:33,502.502 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 15:02:36,537.537 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:02:36,540.540 INFO    ] Checking for system updates...
[2026-06-19 15:02:36,576.576 INFO    ] 200
[2026-06-19 15:02:36,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:02:36,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:02:36,633.633 INFO    ] No update needed
[2026-06-19 15:02:36,636.636 INFO    ] Checking for camera pi updates...
[2026-06-19 15:02:36,673.673 INFO    ] 200
[2026-06-19 15:02:36,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:02:36,716.716 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:02:36,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:02:36,763.763 INFO    ] No camera update needed
[2026-06-19 15:02:36,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:02:36,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:02:36,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:02:36,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:02:38,820.820 INFO    ] ================================================
[2026-06-19 15:02:38,837.837 INFO    ] Launching Daemon at Fri Jun 19 15:02:38 IST 2026
[2026-06-19 15:02:38,848.848 INFO    ] ================================================
[2026-06-19 15:02:39,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:02:39
[2026-06-19 15:02:40,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:02:40,312.312 INFO    ] Initializing speech engine...
[2026-06-19 15:02:40,318.318 INFO    ] 2026-06-19 15:02:40
[2026-06-19 15:02:40,581.581 INFO    ] 2026-06-19 15:02:40
[2026-06-19 15:02:40,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:02:40,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:02:40,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:02:41,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:02:41,050.050 INFO    ] time= 19/06/2026 15:02:41
[2026-06-19 15:02:41,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:02:41,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:02:41,253.253 INFO    ] No existing commands found in stream
[2026-06-19 15:02:46,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:02:46,278.278 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 15:02:49,081.081 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:02:49,085.085 INFO    ] Checking for system updates...
[2026-06-19 15:02:49,122.122 INFO    ] 200
[2026-06-19 15:02:49,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:02:49,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:02:49,188.188 INFO    ] No update needed
[2026-06-19 15:02:49,190.190 INFO    ] Checking for camera pi updates...
[2026-06-19 15:02:49,229.229 INFO    ] 200
[2026-06-19 15:02:49,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:02:49,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:02:49,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:02:49,310.310 INFO    ] No camera update needed
[2026-06-19 15:02:49,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:02:49,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:02:49,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:02:49,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:02:51,367.367 INFO    ] ================================================
[2026-06-19 15:02:51,382.382 INFO    ] Launching Daemon at Fri Jun 19 15:02:51 IST 2026
[2026-06-19 15:02:51,393.393 INFO    ] ================================================
[2026-06-19 15:02:51,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:02:51
[2026-06-19 15:02:52,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:02:52,899.899 INFO    ] Initializing speech engine...
[2026-06-19 15:02:52,906.906 INFO    ] 2026-06-19 15:02:52
[2026-06-19 15:02:53,196.196 INFO    ] 2026-06-19 15:02:53
[2026-06-19 15:02:53,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:02:53,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:02:53,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:02:53,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:02:53,738.738 INFO    ] time= 19/06/2026 15:02:53
[2026-06-19 15:02:53,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:02:53,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:02:53,899.899 INFO    ] No existing commands found in stream
[2026-06-19 15:02:58,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:02:58,932.932 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 15:03:01,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:03:01,691.691 INFO    ] Checking for system updates...
[2026-06-19 15:03:01,755.755 INFO    ] 200
[2026-06-19 15:03:01,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:01,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:03:01,856.856 INFO    ] No update needed
[2026-06-19 15:03:01,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 15:03:01,959.959 INFO    ] 200
[2026-06-19 15:03:01,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:02,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:03:02,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:03:02,074.074 INFO    ] No camera update needed
[2026-06-19 15:03:02,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:03:02,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:03:02,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:03:02,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:03:04,138.138 INFO    ] ================================================
[2026-06-19 15:03:04,153.153 INFO    ] Launching Daemon at Fri Jun 19 15:03:04 IST 2026
[2026-06-19 15:03:04,165.165 INFO    ] ================================================
[2026-06-19 15:03:04,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:03:04
[2026-06-19 15:03:05,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:03:05,626.626 INFO    ] Initializing speech engine...
[2026-06-19 15:03:05,635.635 INFO    ] 2026-06-19 15:03:05
[2026-06-19 15:03:05,941.941 INFO    ] 2026-06-19 15:03:05
[2026-06-19 15:03:05,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:03:06,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:03:06,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:03:06,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:03:06,336.336 INFO    ] time= 19/06/2026 15:03:06
[2026-06-19 15:03:06,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:03:06,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:03:06,469.469 INFO    ] No existing commands found in stream
[2026-06-19 15:03:11,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:03:11,486.486 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 15:03:14,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:03:14,379.379 INFO    ] Checking for system updates...
[2026-06-19 15:03:14,415.415 INFO    ] 200
[2026-06-19 15:03:14,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:14,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:03:14,474.474 INFO    ] No update needed
[2026-06-19 15:03:14,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 15:03:14,511.511 INFO    ] 200
[2026-06-19 15:03:14,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:14,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:03:14,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:03:14,609.609 INFO    ] No camera update needed
[2026-06-19 15:03:14,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:03:14,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:03:14,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:03:14,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:03:16,666.666 INFO    ] ================================================
[2026-06-19 15:03:16,683.683 INFO    ] Launching Daemon at Fri Jun 19 15:03:16 IST 2026
[2026-06-19 15:03:16,694.694 INFO    ] ================================================
[2026-06-19 15:03:17,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:03:17
[2026-06-19 15:03:17,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:03:18,321.321 INFO    ] Initializing speech engine...
[2026-06-19 15:03:18,328.328 INFO    ] 2026-06-19 15:03:18
[2026-06-19 15:03:18,610.610 INFO    ] 2026-06-19 15:03:18
[2026-06-19 15:03:18,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:03:18,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:03:18,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:03:19,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:03:19,149.149 INFO    ] time= 19/06/2026 15:03:19
[2026-06-19 15:03:19,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:03:19,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:03:19,327.327 INFO    ] No existing commands found in stream
[2026-06-19 15:03:24,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:03:24,360.360 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 15:03:25,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:03:25,005.005 INFO    ] Checking for system updates...
[2026-06-19 15:03:25,041.041 INFO    ] 200
[2026-06-19 15:03:25,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:25,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:03:25,106.106 INFO    ] No update needed
[2026-06-19 15:03:25,109.109 INFO    ] Checking for camera pi updates...
[2026-06-19 15:03:25,143.143 INFO    ] 200
[2026-06-19 15:03:25,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:25,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:03:25,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:03:25,241.241 INFO    ] No camera update needed
[2026-06-19 15:03:25,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:03:25,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:03:25,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:03:25,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:03:27,299.299 INFO    ] ================================================
[2026-06-19 15:03:27,315.315 INFO    ] Launching Daemon at Fri Jun 19 15:03:27 IST 2026
[2026-06-19 15:03:27,326.326 INFO    ] ================================================
[2026-06-19 15:03:27,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:03:27
[2026-06-19 15:03:28,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:03:28,786.786 INFO    ] Initializing speech engine...
[2026-06-19 15:03:28,800.800 INFO    ] 2026-06-19 15:03:28
[2026-06-19 15:03:29,086.086 INFO    ] 2026-06-19 15:03:29
[2026-06-19 15:03:29,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:03:29,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:03:29,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:03:29,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:03:29,503.503 INFO    ] time= 19/06/2026 15:03:29
[2026-06-19 15:03:29,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:03:29,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:03:29,586.586 INFO    ] No existing commands found in stream
[2026-06-19 15:03:34,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:03:34,602.602 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 15:03:38,307.307 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:03:38,310.310 INFO    ] Checking for system updates...
[2026-06-19 15:03:38,350.350 INFO    ] 200
[2026-06-19 15:03:38,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:38,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:03:38,417.417 INFO    ] No update needed
[2026-06-19 15:03:38,420.420 INFO    ] Checking for camera pi updates...
[2026-06-19 15:03:38,455.455 INFO    ] 200
[2026-06-19 15:03:38,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:38,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:03:38,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:03:38,555.555 INFO    ] No camera update needed
[2026-06-19 15:03:38,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:03:38,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:03:38,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:03:38,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:03:40,613.613 INFO    ] ================================================
[2026-06-19 15:03:40,629.629 INFO    ] Launching Daemon at Fri Jun 19 15:03:40 IST 2026
[2026-06-19 15:03:40,640.640 INFO    ] ================================================
[2026-06-19 15:03:41,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:03:41
[2026-06-19 15:03:41,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:03:42,252.252 INFO    ] Initializing speech engine...
[2026-06-19 15:03:42,278.278 INFO    ] 2026-06-19 15:03:42
[2026-06-19 15:03:42,560.560 INFO    ] 2026-06-19 15:03:42
[2026-06-19 15:03:42,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:03:42,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:03:42,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:03:43,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:03:43,120.120 INFO    ] time= 19/06/2026 15:03:43
[2026-06-19 15:03:43,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:03:43,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:03:43,288.288 INFO    ] No existing commands found in stream
[2026-06-19 15:03:48,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:03:48,322.322 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 15:03:50,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:03:50,823.823 INFO    ] Checking for system updates...
[2026-06-19 15:03:50,860.860 INFO    ] 200
[2026-06-19 15:03:50,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:50,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:03:50,919.919 INFO    ] No update needed
[2026-06-19 15:03:50,922.922 INFO    ] Checking for camera pi updates...
[2026-06-19 15:03:50,957.957 INFO    ] 200
[2026-06-19 15:03:50,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:03:51,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:03:51,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:03:51,061.061 INFO    ] No camera update needed
[2026-06-19 15:03:51,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:03:51,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:03:51,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:03:51,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:03:53,115.115 INFO    ] ================================================
[2026-06-19 15:03:53,130.130 INFO    ] Launching Daemon at Fri Jun 19 15:03:53 IST 2026
[2026-06-19 15:03:53,141.141 INFO    ] ================================================
[2026-06-19 15:03:53,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:03:53
[2026-06-19 15:03:54,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:03:54,589.589 INFO    ] Initializing speech engine...
[2026-06-19 15:03:54,595.595 INFO    ] 2026-06-19 15:03:54
[2026-06-19 15:03:54,887.887 INFO    ] 2026-06-19 15:03:54
[2026-06-19 15:03:54,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:03:55,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:03:55,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:03:55,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:03:55,303.303 INFO    ] time= 19/06/2026 15:03:55
[2026-06-19 15:03:55,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:03:55,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:03:55,483.483 INFO    ] No existing commands found in stream
[2026-06-19 15:04:00,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:04:00,511.511 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 15:04:04,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:04:04,488.488 INFO    ] Checking for system updates...
[2026-06-19 15:04:04,524.524 INFO    ] 200
[2026-06-19 15:04:04,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:04,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:04,588.588 INFO    ] No update needed
[2026-06-19 15:04:04,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 15:04:04,624.624 INFO    ] 200
[2026-06-19 15:04:04,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:04,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:04:04,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:04,721.721 INFO    ] No camera update needed
[2026-06-19 15:04:04,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:04:04,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:04:04,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:04:04,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:04:06,776.776 INFO    ] ================================================
[2026-06-19 15:04:06,791.791 INFO    ] Launching Daemon at Fri Jun 19 15:04:06 IST 2026
[2026-06-19 15:04:06,802.802 INFO    ] ================================================
[2026-06-19 15:04:07,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:04:07
[2026-06-19 15:04:07,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:04:08,257.257 INFO    ] Initializing speech engine...
[2026-06-19 15:04:08,267.267 INFO    ] 2026-06-19 15:04:08
[2026-06-19 15:04:08,531.531 INFO    ] 2026-06-19 15:04:08
[2026-06-19 15:04:08,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:04:08,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:04:08,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:04:08,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:04:09,000.000 INFO    ] time= 19/06/2026 15:04:08
[2026-06-19 15:04:09,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:04:09,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:04:09,237.237 INFO    ] No existing commands found in stream
[2026-06-19 15:04:14,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:04:14,265.265 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 15:04:16,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:04:16,405.405 INFO    ] Checking for system updates...
[2026-06-19 15:04:16,441.441 INFO    ] 200
[2026-06-19 15:04:16,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:16,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:16,498.498 INFO    ] No update needed
[2026-06-19 15:04:16,501.501 INFO    ] Checking for camera pi updates...
[2026-06-19 15:04:16,534.534 INFO    ] 200
[2026-06-19 15:04:16,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:16,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:04:16,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:16,725.725 INFO    ] No camera update needed
[2026-06-19 15:04:16,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:04:16,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:04:16,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:04:16,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:04:18,783.783 INFO    ] ================================================
[2026-06-19 15:04:18,799.799 INFO    ] Launching Daemon at Fri Jun 19 15:04:18 IST 2026
[2026-06-19 15:04:18,809.809 INFO    ] ================================================
[2026-06-19 15:04:19,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:04:19
[2026-06-19 15:04:20,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:04:20,456.456 INFO    ] Initializing speech engine...
[2026-06-19 15:04:20,465.465 INFO    ] 2026-06-19 15:04:20
[2026-06-19 15:04:20,754.754 INFO    ] 2026-06-19 15:04:20
[2026-06-19 15:04:20,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:04:21,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:04:21,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:04:21,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:04:21,306.306 INFO    ] time= 19/06/2026 15:04:21
[2026-06-19 15:04:21,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:04:21,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:04:21,467.467 INFO    ] No existing commands found in stream
[2026-06-19 15:04:26,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:04:26,491.491 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 15:04:30,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:04:30,790.790 INFO    ] Checking for system updates...
[2026-06-19 15:04:30,832.832 INFO    ] 200
[2026-06-19 15:04:30,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:30,895.895 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:30,898.898 INFO    ] No update needed
[2026-06-19 15:04:30,901.901 INFO    ] Checking for camera pi updates...
[2026-06-19 15:04:30,937.937 INFO    ] 200
[2026-06-19 15:04:30,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:30,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:04:31,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:31,028.028 INFO    ] No camera update needed
[2026-06-19 15:04:31,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:04:31,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:04:31,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:04:31,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:04:33,089.089 INFO    ] ================================================
[2026-06-19 15:04:33,104.104 INFO    ] Launching Daemon at Fri Jun 19 15:04:33 IST 2026
[2026-06-19 15:04:33,115.115 INFO    ] ================================================
[2026-06-19 15:04:33,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:04:33
[2026-06-19 15:04:34,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:04:34,533.533 INFO    ] Initializing speech engine...
[2026-06-19 15:04:34,542.542 INFO    ] 2026-06-19 15:04:34
[2026-06-19 15:04:34,833.833 INFO    ] 2026-06-19 15:04:34
[2026-06-19 15:04:34,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:04:35,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:04:35,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:04:35,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:04:35,248.248 INFO    ] time= 19/06/2026 15:04:35
[2026-06-19 15:04:35,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:04:35,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:04:35,431.431 INFO    ] No existing commands found in stream
[2026-06-19 15:04:40,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:04:40,459.459 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 15:04:41,610.610 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:04:41,613.613 INFO    ] Checking for system updates...
[2026-06-19 15:04:41,653.653 INFO    ] 200
[2026-06-19 15:04:41,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:41,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:41,710.710 INFO    ] No update needed
[2026-06-19 15:04:41,712.712 INFO    ] Checking for camera pi updates...
[2026-06-19 15:04:41,749.749 INFO    ] 200
[2026-06-19 15:04:41,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:41,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:04:41,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:41,848.848 INFO    ] No camera update needed
[2026-06-19 15:04:41,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:04:41,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:04:41,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:04:41,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:04:43,903.903 INFO    ] ================================================
[2026-06-19 15:04:43,918.918 INFO    ] Launching Daemon at Fri Jun 19 15:04:43 IST 2026
[2026-06-19 15:04:43,929.929 INFO    ] ================================================
[2026-06-19 15:04:44,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:04:44
[2026-06-19 15:04:45,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:04:45,374.374 INFO    ] Initializing speech engine...
[2026-06-19 15:04:45,390.390 INFO    ] 2026-06-19 15:04:45
[2026-06-19 15:04:45,673.673 INFO    ] 2026-06-19 15:04:45
[2026-06-19 15:04:45,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:04:45,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:04:45,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:04:46,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:04:46,165.165 INFO    ] time= 19/06/2026 15:04:46
[2026-06-19 15:04:46,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:04:46,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:04:46,364.364 INFO    ] No existing commands found in stream
[2026-06-19 15:04:51,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:04:51,379.379 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 15:04:53,129.129 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:04:53,131.131 INFO    ] Checking for system updates...
[2026-06-19 15:04:53,167.167 INFO    ] 200
[2026-06-19 15:04:53,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:53,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:53,225.225 INFO    ] No update needed
[2026-06-19 15:04:53,228.228 INFO    ] Checking for camera pi updates...
[2026-06-19 15:04:53,262.262 INFO    ] 200
[2026-06-19 15:04:53,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:04:53,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:04:53,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:04:53,377.377 INFO    ] No camera update needed
[2026-06-19 15:04:53,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:04:53,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:04:53,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:04:53,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:04:55,437.437 INFO    ] ================================================
[2026-06-19 15:04:55,452.452 INFO    ] Launching Daemon at Fri Jun 19 15:04:55 IST 2026
[2026-06-19 15:04:55,463.463 INFO    ] ================================================
[2026-06-19 15:04:56,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:04:56
[2026-06-19 15:04:56,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:04:56,913.913 INFO    ] Initializing speech engine...
[2026-06-19 15:04:56,923.923 INFO    ] 2026-06-19 15:04:56
[2026-06-19 15:04:57,187.187 INFO    ] 2026-06-19 15:04:57
[2026-06-19 15:04:57,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:04:57,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:04:57,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:04:57,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:04:57,734.734 INFO    ] time= 19/06/2026 15:04:57
[2026-06-19 15:04:57,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:04:57,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:04:57,923.923 INFO    ] No existing commands found in stream
[2026-06-19 15:05:02,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:05:02,961.961 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 15:05:05,624.624 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:05:05,626.626 INFO    ] Checking for system updates...
[2026-06-19 15:05:05,663.663 INFO    ] 200
[2026-06-19 15:05:05,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:05,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:05:05,720.720 INFO    ] No update needed
[2026-06-19 15:05:05,723.723 INFO    ] Checking for camera pi updates...
[2026-06-19 15:05:05,760.760 INFO    ] 200
[2026-06-19 15:05:05,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:05,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:05:05,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:05:05,849.849 INFO    ] No camera update needed
[2026-06-19 15:05:05,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:05:05,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:05:05,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:05:05,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:05:07,906.906 INFO    ] ================================================
[2026-06-19 15:05:07,923.923 INFO    ] Launching Daemon at Fri Jun 19 15:05:07 IST 2026
[2026-06-19 15:05:07,935.935 INFO    ] ================================================
[2026-06-19 15:05:08,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:05:08
[2026-06-19 15:05:09,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:05:09,366.366 INFO    ] Initializing speech engine...
[2026-06-19 15:05:09,375.375 INFO    ] 2026-06-19 15:05:09
[2026-06-19 15:05:09,622.622 INFO    ] 2026-06-19 15:05:09
[2026-06-19 15:05:09,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:05:09,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:05:09,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:05:10,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:05:10,100.100 INFO    ] time= 19/06/2026 15:05:10
[2026-06-19 15:05:10,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:05:10,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:05:10,306.306 INFO    ] No existing commands found in stream
[2026-06-19 15:05:15,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:05:15,344.344 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 15:05:17,302.302 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:05:17,305.305 INFO    ] Checking for system updates...
[2026-06-19 15:05:17,341.341 INFO    ] 200
[2026-06-19 15:05:17,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:17,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:05:17,398.398 INFO    ] No update needed
[2026-06-19 15:05:17,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 15:05:17,434.434 INFO    ] 200
[2026-06-19 15:05:17,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:17,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:05:17,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:05:17,530.530 INFO    ] No camera update needed
[2026-06-19 15:05:17,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:05:17,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:05:17,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:05:17,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:05:19,585.585 INFO    ] ================================================
[2026-06-19 15:05:19,600.600 INFO    ] Launching Daemon at Fri Jun 19 15:05:19 IST 2026
[2026-06-19 15:05:19,611.611 INFO    ] ================================================
[2026-06-19 15:05:20,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:05:20
[2026-06-19 15:05:20,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:05:21,105.105 INFO    ] Initializing speech engine...
[2026-06-19 15:05:21,111.111 INFO    ] 2026-06-19 15:05:21
[2026-06-19 15:05:21,372.372 INFO    ] 2026-06-19 15:05:21
[2026-06-19 15:05:21,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:05:21,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:05:21,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:05:21,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:05:21,837.837 INFO    ] time= 19/06/2026 15:05:21
[2026-06-19 15:05:21,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:05:21,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:05:22,074.074 INFO    ] No existing commands found in stream
[2026-06-19 15:05:27,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:05:27,092.092 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 15:05:31,445.445 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:05:31,448.448 INFO    ] Checking for system updates...
[2026-06-19 15:05:31,485.485 INFO    ] 200
[2026-06-19 15:05:31,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:31,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:05:31,549.549 INFO    ] No update needed
[2026-06-19 15:05:31,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 15:05:31,597.597 INFO    ] 200
[2026-06-19 15:05:31,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:31,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:05:31,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:05:31,705.705 INFO    ] No camera update needed
[2026-06-19 15:05:31,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:05:31,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:05:31,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:05:31,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:05:33,767.767 INFO    ] ================================================
[2026-06-19 15:05:33,783.783 INFO    ] Launching Daemon at Fri Jun 19 15:05:33 IST 2026
[2026-06-19 15:05:33,794.794 INFO    ] ================================================
[2026-06-19 15:05:34,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:05:34
[2026-06-19 15:05:35,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:05:35,358.358 INFO    ] Initializing speech engine...
[2026-06-19 15:05:35,377.377 INFO    ] 2026-06-19 15:05:35
[2026-06-19 15:05:35,644.644 INFO    ] 2026-06-19 15:05:35
[2026-06-19 15:05:35,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:05:35,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:05:35,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:05:36,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:05:36,053.053 INFO    ] time= 19/06/2026 15:05:36
[2026-06-19 15:05:36,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:05:36,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:05:36,138.138 INFO    ] No existing commands found in stream
[2026-06-19 15:05:41,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:05:41,171.171 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 15:05:43,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:05:43,824.824 INFO    ] Checking for system updates...
[2026-06-19 15:05:43,861.861 INFO    ] 200
[2026-06-19 15:05:43,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:43,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:05:43,920.920 INFO    ] No update needed
[2026-06-19 15:05:43,923.923 INFO    ] Checking for camera pi updates...
[2026-06-19 15:05:43,958.958 INFO    ] 200
[2026-06-19 15:05:43,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:44,005.005 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:05:44,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:05:44,064.064 INFO    ] No camera update needed
[2026-06-19 15:05:44,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:05:44,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:05:44,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:05:44,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:05:46,119.119 INFO    ] ================================================
[2026-06-19 15:05:46,134.134 INFO    ] Launching Daemon at Fri Jun 19 15:05:46 IST 2026
[2026-06-19 15:05:46,145.145 INFO    ] ================================================
[2026-06-19 15:05:46,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:05:46
[2026-06-19 15:05:47,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:05:47,583.583 INFO    ] Initializing speech engine...
[2026-06-19 15:05:47,590.590 INFO    ] 2026-06-19 15:05:47
[2026-06-19 15:05:47,846.846 INFO    ] 2026-06-19 15:05:47
[2026-06-19 15:05:47,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:05:48,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:05:48,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:05:48,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:05:48,344.344 INFO    ] time= 19/06/2026 15:05:48
[2026-06-19 15:05:48,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:05:48,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:05:48,527.527 INFO    ] No existing commands found in stream
[2026-06-19 15:05:53,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:05:53,555.555 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 15:05:55,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:05:55,582.582 INFO    ] Checking for system updates...
[2026-06-19 15:05:55,619.619 INFO    ] 200
[2026-06-19 15:05:55,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:55,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:05:55,677.677 INFO    ] No update needed
[2026-06-19 15:05:55,680.680 INFO    ] Checking for camera pi updates...
[2026-06-19 15:05:55,715.715 INFO    ] 200
[2026-06-19 15:05:55,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:05:55,759.759 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:05:55,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:05:55,809.809 INFO    ] No camera update needed
[2026-06-19 15:05:55,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:05:55,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:05:55,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:05:55,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:05:57,867.867 INFO    ] ================================================
[2026-06-19 15:05:57,882.882 INFO    ] Launching Daemon at Fri Jun 19 15:05:57 IST 2026
[2026-06-19 15:05:57,892.892 INFO    ] ================================================
[2026-06-19 15:05:58,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:05:58
[2026-06-19 15:05:59,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:05:59,329.329 INFO    ] Initializing speech engine...
[2026-06-19 15:05:59,344.344 INFO    ] 2026-06-19 15:05:59
[2026-06-19 15:05:59,610.610 INFO    ] 2026-06-19 15:05:59
[2026-06-19 15:05:59,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:05:59,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:05:59,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:06:00,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:06:00,025.025 INFO    ] time= 19/06/2026 15:06:00
[2026-06-19 15:06:00,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:06:00,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:06:00,185.185 INFO    ] No existing commands found in stream
[2026-06-19 15:06:05,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:06:05,208.208 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 15:06:08,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:06:08,522.522 INFO    ] Checking for system updates...
[2026-06-19 15:06:08,558.558 INFO    ] 200
[2026-06-19 15:06:08,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:08,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:06:08,619.619 INFO    ] No update needed
[2026-06-19 15:06:08,622.622 INFO    ] Checking for camera pi updates...
[2026-06-19 15:06:08,656.656 INFO    ] 200
[2026-06-19 15:06:08,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:08,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:06:08,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:06:08,756.756 INFO    ] No camera update needed
[2026-06-19 15:06:08,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:06:08,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:06:08,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:06:08,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:06:10,812.812 INFO    ] ================================================
[2026-06-19 15:06:10,828.828 INFO    ] Launching Daemon at Fri Jun 19 15:06:10 IST 2026
[2026-06-19 15:06:10,839.839 INFO    ] ================================================
[2026-06-19 15:06:11,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:06:11
[2026-06-19 15:06:11,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:06:12,249.249 INFO    ] Initializing speech engine...
[2026-06-19 15:06:12,261.261 INFO    ] 2026-06-19 15:06:12
[2026-06-19 15:06:12,527.527 INFO    ] 2026-06-19 15:06:12
[2026-06-19 15:06:12,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:06:12,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:06:12,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:06:12,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:06:12,984.984 INFO    ] time= 19/06/2026 15:06:12
[2026-06-19 15:06:13,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:06:13,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:06:13,229.229 INFO    ] No existing commands found in stream
[2026-06-19 15:06:18,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:06:18,265.265 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 15:06:19,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:06:19,317.317 INFO    ] Checking for system updates...
[2026-06-19 15:06:19,352.352 INFO    ] 200
[2026-06-19 15:06:19,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:19,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:06:19,411.411 INFO    ] No update needed
[2026-06-19 15:06:19,413.413 INFO    ] Checking for camera pi updates...
[2026-06-19 15:06:19,450.450 INFO    ] 200
[2026-06-19 15:06:19,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:19,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:06:19,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:06:19,644.644 INFO    ] No camera update needed
[2026-06-19 15:06:19,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:06:19,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:06:19,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:06:19,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:06:21,702.702 INFO    ] ================================================
[2026-06-19 15:06:21,718.718 INFO    ] Launching Daemon at Fri Jun 19 15:06:21 IST 2026
[2026-06-19 15:06:21,729.729 INFO    ] ================================================
[2026-06-19 15:06:22,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:06:22
[2026-06-19 15:06:22,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:06:23,192.192 INFO    ] Initializing speech engine...
[2026-06-19 15:06:23,199.199 INFO    ] 2026-06-19 15:06:23
[2026-06-19 15:06:23,472.472 INFO    ] 2026-06-19 15:06:23
[2026-06-19 15:06:23,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:06:23,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:06:23,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:06:24,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:06:24,032.032 INFO    ] time= 19/06/2026 15:06:24
[2026-06-19 15:06:24,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:06:24,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:06:24,169.169 INFO    ] No existing commands found in stream
[2026-06-19 15:06:29,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:06:29,201.201 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 15:06:30,273.273 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:06:30,276.276 INFO    ] Checking for system updates...
[2026-06-19 15:06:30,313.313 INFO    ] 200
[2026-06-19 15:06:30,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:30,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:06:30,372.372 INFO    ] No update needed
[2026-06-19 15:06:30,375.375 INFO    ] Checking for camera pi updates...
[2026-06-19 15:06:30,409.409 INFO    ] 200
[2026-06-19 15:06:30,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:30,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:06:30,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:06:30,503.503 INFO    ] No camera update needed
[2026-06-19 15:06:30,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:06:30,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:06:30,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:06:30,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:06:32,561.561 INFO    ] ================================================
[2026-06-19 15:06:32,578.578 INFO    ] Launching Daemon at Fri Jun 19 15:06:32 IST 2026
[2026-06-19 15:06:32,590.590 INFO    ] ================================================
[2026-06-19 15:06:33,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:06:33
[2026-06-19 15:06:33,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:06:34,153.153 INFO    ] Initializing speech engine...
[2026-06-19 15:06:34,167.167 INFO    ] 2026-06-19 15:06:34
[2026-06-19 15:06:34,427.427 INFO    ] 2026-06-19 15:06:34
[2026-06-19 15:06:34,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:06:34,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:06:34,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:06:34,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:06:34,951.951 INFO    ] time= 19/06/2026 15:06:34
[2026-06-19 15:06:35,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:06:35,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:06:35,161.161 INFO    ] No existing commands found in stream
[2026-06-19 15:06:40,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:06:40,179.179 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 15:06:41,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:06:41,720.720 INFO    ] Checking for system updates...
[2026-06-19 15:06:41,757.757 INFO    ] 200
[2026-06-19 15:06:41,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:41,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:06:41,815.815 INFO    ] No update needed
[2026-06-19 15:06:41,818.818 INFO    ] Checking for camera pi updates...
[2026-06-19 15:06:41,852.852 INFO    ] 200
[2026-06-19 15:06:41,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:41,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:06:41,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:06:41,944.944 INFO    ] No camera update needed
[2026-06-19 15:06:41,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:06:41,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:06:41,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:06:41,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:06:44,001.001 INFO    ] ================================================
[2026-06-19 15:06:44,017.017 INFO    ] Launching Daemon at Fri Jun 19 15:06:44 IST 2026
[2026-06-19 15:06:44,027.027 INFO    ] ================================================
[2026-06-19 15:06:44,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:06:44
[2026-06-19 15:06:45,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:06:45,619.619 INFO    ] Initializing speech engine...
[2026-06-19 15:06:45,632.632 INFO    ] 2026-06-19 15:06:45
[2026-06-19 15:06:45,943.943 INFO    ] 2026-06-19 15:06:45
[2026-06-19 15:06:46,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:06:46,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:06:46,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:06:46,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:06:46,447.447 INFO    ] time= 19/06/2026 15:06:46
[2026-06-19 15:06:46,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:06:46,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:06:46,613.613 INFO    ] No existing commands found in stream
[2026-06-19 15:06:51,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:06:51,647.647 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 15:06:53,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:06:53,753.753 INFO    ] Checking for system updates...
[2026-06-19 15:06:53,791.791 INFO    ] 200
[2026-06-19 15:06:53,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:53,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:06:53,850.850 INFO    ] No update needed
[2026-06-19 15:06:53,852.852 INFO    ] Checking for camera pi updates...
[2026-06-19 15:06:53,886.886 INFO    ] 200
[2026-06-19 15:06:53,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:06:53,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:06:53,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:06:53,974.974 INFO    ] No camera update needed
[2026-06-19 15:06:53,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:06:53,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:06:53,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:06:53,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:06:56,029.029 INFO    ] ================================================
[2026-06-19 15:06:56,044.044 INFO    ] Launching Daemon at Fri Jun 19 15:06:56 IST 2026
[2026-06-19 15:06:56,055.055 INFO    ] ================================================
[2026-06-19 15:06:56,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:06:56
[2026-06-19 15:06:57,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:06:57,623.623 INFO    ] Initializing speech engine...
[2026-06-19 15:06:57,642.642 INFO    ] 2026-06-19 15:06:57
[2026-06-19 15:06:57,907.907 INFO    ] 2026-06-19 15:06:57
[2026-06-19 15:06:57,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:06:58,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:06:58,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:06:58,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:06:58,408.408 INFO    ] time= 19/06/2026 15:06:58
[2026-06-19 15:06:58,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:06:58,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:06:58,624.624 INFO    ] No existing commands found in stream
[2026-06-19 15:07:03,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:07:03,656.656 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 15:07:04,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:07:04,888.888 INFO    ] Checking for system updates...
[2026-06-19 15:07:04,926.926 INFO    ] 200
[2026-06-19 15:07:04,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:04,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:07:04,984.984 INFO    ] No update needed
[2026-06-19 15:07:04,987.987 INFO    ] Checking for camera pi updates...
[2026-06-19 15:07:05,024.024 INFO    ] 200
[2026-06-19 15:07:05,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:05,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:07:05,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:07:05,121.121 INFO    ] No camera update needed
[2026-06-19 15:07:05,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:07:05,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:07:05,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:07:05,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:07:07,179.179 INFO    ] ================================================
[2026-06-19 15:07:07,193.193 INFO    ] Launching Daemon at Fri Jun 19 15:07:07 IST 2026
[2026-06-19 15:07:07,204.204 INFO    ] ================================================
[2026-06-19 15:07:07,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:07:07
[2026-06-19 15:07:08,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:07:08,758.758 INFO    ] Initializing speech engine...
[2026-06-19 15:07:08,784.784 INFO    ] 2026-06-19 15:07:08
[2026-06-19 15:07:09,053.053 INFO    ] 2026-06-19 15:07:09
[2026-06-19 15:07:09,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:07:09,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:07:09,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:07:09,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:07:09,608.608 INFO    ] time= 19/06/2026 15:07:09
[2026-06-19 15:07:09,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:07:09,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:07:09,807.807 INFO    ] No existing commands found in stream
[2026-06-19 15:07:14,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:07:14,836.836 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 15:07:17,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:07:17,031.031 INFO    ] Checking for system updates...
[2026-06-19 15:07:17,068.068 INFO    ] 200
[2026-06-19 15:07:17,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:17,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:07:17,126.126 INFO    ] No update needed
[2026-06-19 15:07:17,129.129 INFO    ] Checking for camera pi updates...
[2026-06-19 15:07:17,164.164 INFO    ] 200
[2026-06-19 15:07:17,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:17,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:07:17,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:07:17,266.266 INFO    ] No camera update needed
[2026-06-19 15:07:17,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:07:17,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:07:17,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:07:17,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:07:19,322.322 INFO    ] ================================================
[2026-06-19 15:07:19,337.337 INFO    ] Launching Daemon at Fri Jun 19 15:07:19 IST 2026
[2026-06-19 15:07:19,348.348 INFO    ] ================================================
[2026-06-19 15:07:19,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:07:19
[2026-06-19 15:07:20,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:07:20,782.782 INFO    ] Initializing speech engine...
[2026-06-19 15:07:20,790.790 INFO    ] 2026-06-19 15:07:20
[2026-06-19 15:07:21,055.055 INFO    ] 2026-06-19 15:07:21
[2026-06-19 15:07:21,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:07:21,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:07:21,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:07:21,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:07:21,544.544 INFO    ] time= 19/06/2026 15:07:21
[2026-06-19 15:07:21,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:07:21,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:07:21,817.817 INFO    ] No existing commands found in stream
[2026-06-19 15:07:26,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:07:26,842.842 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 15:07:27,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:07:27,388.388 INFO    ] Checking for system updates...
[2026-06-19 15:07:27,425.425 INFO    ] 200
[2026-06-19 15:07:27,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:27,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:07:27,483.483 INFO    ] No update needed
[2026-06-19 15:07:27,485.485 INFO    ] Checking for camera pi updates...
[2026-06-19 15:07:27,520.520 INFO    ] 200
[2026-06-19 15:07:27,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:27,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:07:27,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:07:27,621.621 INFO    ] No camera update needed
[2026-06-19 15:07:27,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:07:27,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:07:27,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:07:27,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:07:29,676.676 INFO    ] ================================================
[2026-06-19 15:07:29,690.690 INFO    ] Launching Daemon at Fri Jun 19 15:07:29 IST 2026
[2026-06-19 15:07:29,701.701 INFO    ] ================================================
[2026-06-19 15:07:30,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:07:30
[2026-06-19 15:07:30,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:07:31,151.151 INFO    ] Initializing speech engine...
[2026-06-19 15:07:31,161.161 INFO    ] 2026-06-19 15:07:31
[2026-06-19 15:07:31,409.409 INFO    ] 2026-06-19 15:07:31
[2026-06-19 15:07:31,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:07:31,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:07:31,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:07:31,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:07:31,938.938 INFO    ] time= 19/06/2026 15:07:31
[2026-06-19 15:07:31,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:07:32,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:07:32,134.134 INFO    ] No existing commands found in stream
[2026-06-19 15:07:37,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:07:37,164.164 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 15:07:39,138.138 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:07:39,140.140 INFO    ] Checking for system updates...
[2026-06-19 15:07:39,176.176 INFO    ] 200
[2026-06-19 15:07:39,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:39,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:07:39,235.235 INFO    ] No update needed
[2026-06-19 15:07:39,238.238 INFO    ] Checking for camera pi updates...
[2026-06-19 15:07:39,272.272 INFO    ] 200
[2026-06-19 15:07:39,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:39,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:07:39,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:07:39,360.360 INFO    ] No camera update needed
[2026-06-19 15:07:39,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:07:39,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:07:39,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:07:39,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:07:41,416.416 INFO    ] ================================================
[2026-06-19 15:07:41,432.432 INFO    ] Launching Daemon at Fri Jun 19 15:07:41 IST 2026
[2026-06-19 15:07:41,442.442 INFO    ] ================================================
[2026-06-19 15:07:42,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:07:42
[2026-06-19 15:07:42,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:07:43,003.003 INFO    ] Initializing speech engine...
[2026-06-19 15:07:43,012.012 INFO    ] 2026-06-19 15:07:43
[2026-06-19 15:07:43,290.290 INFO    ] 2026-06-19 15:07:43
[2026-06-19 15:07:43,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:07:43,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:07:43,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:07:43,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:07:43,830.830 INFO    ] time= 19/06/2026 15:07:43
[2026-06-19 15:07:43,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:07:43,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:07:44,004.004 INFO    ] No existing commands found in stream
[2026-06-19 15:07:49,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:07:49,041.041 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 15:07:50,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:07:50,298.298 INFO    ] Checking for system updates...
[2026-06-19 15:07:50,335.335 INFO    ] 200
[2026-06-19 15:07:50,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:50,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:07:50,393.393 INFO    ] No update needed
[2026-06-19 15:07:50,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 15:07:50,429.429 INFO    ] 200
[2026-06-19 15:07:50,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:07:50,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:07:50,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:07:50,519.519 INFO    ] No camera update needed
[2026-06-19 15:07:50,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:07:50,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:07:50,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:07:50,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:07:52,575.575 INFO    ] ================================================
[2026-06-19 15:07:52,590.590 INFO    ] Launching Daemon at Fri Jun 19 15:07:52 IST 2026
[2026-06-19 15:07:52,601.601 INFO    ] ================================================
[2026-06-19 15:07:53,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:07:53
[2026-06-19 15:07:53,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:07:54,046.046 INFO    ] Initializing speech engine...
[2026-06-19 15:07:54,054.054 INFO    ] 2026-06-19 15:07:54
[2026-06-19 15:07:54,339.339 INFO    ] 2026-06-19 15:07:54
[2026-06-19 15:07:54,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:07:54,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:07:54,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:07:54,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:07:54,740.740 INFO    ] time= 19/06/2026 15:07:54
[2026-06-19 15:07:54,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:07:54,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:07:54,825.825 INFO    ] No existing commands found in stream
[2026-06-19 15:07:59,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:07:59,843.843 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 15:08:03,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:08:03,912.912 INFO    ] Checking for system updates...
[2026-06-19 15:08:03,948.948 INFO    ] 200
[2026-06-19 15:08:03,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:04,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:04,006.006 INFO    ] No update needed
[2026-06-19 15:08:04,008.008 INFO    ] Checking for camera pi updates...
[2026-06-19 15:08:04,042.042 INFO    ] 200
[2026-06-19 15:08:04,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:04,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:08:04,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:04,139.139 INFO    ] No camera update needed
[2026-06-19 15:08:04,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:08:04,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:08:04,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:08:04,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:08:06,194.194 INFO    ] ================================================
[2026-06-19 15:08:06,211.211 INFO    ] Launching Daemon at Fri Jun 19 15:08:06 IST 2026
[2026-06-19 15:08:06,224.224 INFO    ] ================================================
[2026-06-19 15:08:06,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:08:06
[2026-06-19 15:08:07,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:08:07,696.696 INFO    ] Initializing speech engine...
[2026-06-19 15:08:07,704.704 INFO    ] 2026-06-19 15:08:07
[2026-06-19 15:08:07,963.963 INFO    ] 2026-06-19 15:08:07
[2026-06-19 15:08:07,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:08:08,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:08:08,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:08:08,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:08:08,453.453 INFO    ] time= 19/06/2026 15:08:08
[2026-06-19 15:08:08,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:08:08,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:08:08,648.648 INFO    ] No existing commands found in stream
[2026-06-19 15:08:13,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:08:13,675.675 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 15:08:15,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:08:15,931.931 INFO    ] Checking for system updates...
[2026-06-19 15:08:15,967.967 INFO    ] 200
[2026-06-19 15:08:15,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:16,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:16,025.025 INFO    ] No update needed
[2026-06-19 15:08:16,028.028 INFO    ] Checking for camera pi updates...
[2026-06-19 15:08:16,062.062 INFO    ] 200
[2026-06-19 15:08:16,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:16,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:08:16,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:16,168.168 INFO    ] No camera update needed
[2026-06-19 15:08:16,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:08:16,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:08:16,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:08:16,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:08:18,224.224 INFO    ] ================================================
[2026-06-19 15:08:18,240.240 INFO    ] Launching Daemon at Fri Jun 19 15:08:18 IST 2026
[2026-06-19 15:08:18,250.250 INFO    ] ================================================
[2026-06-19 15:08:18,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:08:18
[2026-06-19 15:08:19,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:08:19,829.829 INFO    ] Initializing speech engine...
[2026-06-19 15:08:19,841.841 INFO    ] 2026-06-19 15:08:19
[2026-06-19 15:08:20,151.151 INFO    ] 2026-06-19 15:08:20
[2026-06-19 15:08:20,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:08:20,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:08:20,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:08:20,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:08:20,664.664 INFO    ] time= 19/06/2026 15:08:20
[2026-06-19 15:08:20,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:08:20,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:08:20,872.872 INFO    ] No existing commands found in stream
[2026-06-19 15:08:25,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:08:25,907.907 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 15:08:28,591.591 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:08:28,594.594 INFO    ] Checking for system updates...
[2026-06-19 15:08:28,631.631 INFO    ] 200
[2026-06-19 15:08:28,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:28,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:28,689.689 INFO    ] No update needed
[2026-06-19 15:08:28,691.691 INFO    ] Checking for camera pi updates...
[2026-06-19 15:08:28,727.727 INFO    ] 200
[2026-06-19 15:08:28,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:28,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:08:28,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:28,906.906 INFO    ] No camera update needed
[2026-06-19 15:08:28,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:08:28,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:08:28,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:08:28,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:08:30,961.961 INFO    ] ================================================
[2026-06-19 15:08:30,976.976 INFO    ] Launching Daemon at Fri Jun 19 15:08:30 IST 2026
[2026-06-19 15:08:30,987.987 INFO    ] ================================================
[2026-06-19 15:08:31,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:08:31
[2026-06-19 15:08:32,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:08:32,471.471 INFO    ] Initializing speech engine...
[2026-06-19 15:08:32,478.478 INFO    ] 2026-06-19 15:08:32
[2026-06-19 15:08:32,805.805 INFO    ] 2026-06-19 15:08:32
[2026-06-19 15:08:32,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:08:33,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:08:33,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:08:33,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:08:33,183.183 INFO    ] time= 19/06/2026 15:08:33
[2026-06-19 15:08:33,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:08:33,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:08:33,267.267 INFO    ] No existing commands found in stream
[2026-06-19 15:08:38,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:08:38,295.295 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 15:08:38,918.918 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:08:38,921.921 INFO    ] Checking for system updates...
[2026-06-19 15:08:38,957.957 INFO    ] 200
[2026-06-19 15:08:38,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:39,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:39,014.014 INFO    ] No update needed
[2026-06-19 15:08:39,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 15:08:39,051.051 INFO    ] 200
[2026-06-19 15:08:39,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:39,093.093 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:08:39,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:39,142.142 INFO    ] No camera update needed
[2026-06-19 15:08:39,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:08:39,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:08:39,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:08:39,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:08:41,196.196 INFO    ] ================================================
[2026-06-19 15:08:41,212.212 INFO    ] Launching Daemon at Fri Jun 19 15:08:41 IST 2026
[2026-06-19 15:08:41,223.223 INFO    ] ================================================
[2026-06-19 15:08:41,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:08:41
[2026-06-19 15:08:42,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:08:42,645.645 INFO    ] Initializing speech engine...
[2026-06-19 15:08:42,664.664 INFO    ] 2026-06-19 15:08:42
[2026-06-19 15:08:42,928.928 INFO    ] 2026-06-19 15:08:42
[2026-06-19 15:08:42,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:08:43,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:08:43,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:08:43,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:08:43,412.412 INFO    ] time= 19/06/2026 15:08:43
[2026-06-19 15:08:43,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:08:43,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:08:43,660.660 INFO    ] No existing commands found in stream
[2026-06-19 15:08:48,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:08:48,682.682 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 15:08:51,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:08:51,316.316 INFO    ] Checking for system updates...
[2026-06-19 15:08:51,355.355 INFO    ] 200
[2026-06-19 15:08:51,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:51,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:51,414.414 INFO    ] No update needed
[2026-06-19 15:08:51,416.416 INFO    ] Checking for camera pi updates...
[2026-06-19 15:08:51,455.455 INFO    ] 200
[2026-06-19 15:08:51,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:08:51,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:08:51,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:08:51,550.550 INFO    ] No camera update needed
[2026-06-19 15:08:51,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:08:51,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:08:51,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:08:51,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:08:53,607.607 INFO    ] ================================================
[2026-06-19 15:08:53,623.623 INFO    ] Launching Daemon at Fri Jun 19 15:08:53 IST 2026
[2026-06-19 15:08:53,633.633 INFO    ] ================================================
[2026-06-19 15:08:54,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:08:54
[2026-06-19 15:08:54,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:08:55,076.076 INFO    ] Initializing speech engine...
[2026-06-19 15:08:55,083.083 INFO    ] 2026-06-19 15:08:55
[2026-06-19 15:08:55,385.385 INFO    ] 2026-06-19 15:08:55
[2026-06-19 15:08:55,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:08:55,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:08:55,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:08:55,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:08:55,819.819 INFO    ] time= 19/06/2026 15:08:55
[2026-06-19 15:08:55,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:08:55,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:08:55,977.977 INFO    ] No existing commands found in stream
[2026-06-19 15:09:01,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:09:01,005.005 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 15:09:03,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:09:03,762.762 INFO    ] Checking for system updates...
[2026-06-19 15:09:03,799.799 INFO    ] 200
[2026-06-19 15:09:03,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:03,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:09:03,864.864 INFO    ] No update needed
[2026-06-19 15:09:03,867.867 INFO    ] Checking for camera pi updates...
[2026-06-19 15:09:03,901.901 INFO    ] 200
[2026-06-19 15:09:03,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:03,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:09:03,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:09:03,990.990 INFO    ] No camera update needed
[2026-06-19 15:09:03,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:09:03,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:09:04,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:09:04,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:09:06,051.051 INFO    ] ================================================
[2026-06-19 15:09:06,067.067 INFO    ] Launching Daemon at Fri Jun 19 15:09:06 IST 2026
[2026-06-19 15:09:06,081.081 INFO    ] ================================================
[2026-06-19 15:09:06,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:09:06
[2026-06-19 15:09:07,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:09:07,539.539 INFO    ] Initializing speech engine...
[2026-06-19 15:09:07,562.562 INFO    ] 2026-06-19 15:09:07
[2026-06-19 15:09:07,819.819 INFO    ] 2026-06-19 15:09:07
[2026-06-19 15:09:07,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:09:08,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:09:08,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:09:08,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:09:08,310.310 INFO    ] time= 19/06/2026 15:09:08
[2026-06-19 15:09:08,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:09:08,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:09:08,553.553 INFO    ] No existing commands found in stream
[2026-06-19 15:09:13,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:09:13,572.572 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 15:09:17,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:09:17,503.503 INFO    ] Checking for system updates...
[2026-06-19 15:09:17,540.540 INFO    ] 200
[2026-06-19 15:09:17,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:17,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:09:17,605.605 INFO    ] No update needed
[2026-06-19 15:09:17,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 15:09:17,646.646 INFO    ] 200
[2026-06-19 15:09:17,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:17,690.690 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:09:17,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:09:17,739.739 INFO    ] No camera update needed
[2026-06-19 15:09:17,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:09:17,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:09:17,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:09:17,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:09:19,795.795 INFO    ] ================================================
[2026-06-19 15:09:19,810.810 INFO    ] Launching Daemon at Fri Jun 19 15:09:19 IST 2026
[2026-06-19 15:09:19,821.821 INFO    ] ================================================
[2026-06-19 15:09:20,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:09:20
[2026-06-19 15:09:21,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:09:21,469.469 INFO    ] Initializing speech engine...
[2026-06-19 15:09:21,480.480 INFO    ] 2026-06-19 15:09:21
[2026-06-19 15:09:21,768.768 INFO    ] 2026-06-19 15:09:21
[2026-06-19 15:09:21,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:09:22,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:09:22,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:09:22,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:09:22,300.300 INFO    ] time= 19/06/2026 15:09:22
[2026-06-19 15:09:22,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:09:22,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:09:22,466.466 INFO    ] No existing commands found in stream
[2026-06-19 15:09:27,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:09:27,501.501 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 15:09:28,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:09:28,426.426 INFO    ] Checking for system updates...
[2026-06-19 15:09:28,464.464 INFO    ] 200
[2026-06-19 15:09:28,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:28,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:09:28,523.523 INFO    ] No update needed
[2026-06-19 15:09:28,525.525 INFO    ] Checking for camera pi updates...
[2026-06-19 15:09:28,563.563 INFO    ] 200
[2026-06-19 15:09:28,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:28,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:09:28,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:09:28,661.661 INFO    ] No camera update needed
[2026-06-19 15:09:28,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:09:28,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:09:28,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:09:28,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:09:30,716.716 INFO    ] ================================================
[2026-06-19 15:09:30,731.731 INFO    ] Launching Daemon at Fri Jun 19 15:09:30 IST 2026
[2026-06-19 15:09:30,742.742 INFO    ] ================================================
[2026-06-19 15:09:31,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:09:31
[2026-06-19 15:09:32,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:09:32,402.402 INFO    ] Initializing speech engine...
[2026-06-19 15:09:32,410.410 INFO    ] 2026-06-19 15:09:32
[2026-06-19 15:09:32,685.685 INFO    ] 2026-06-19 15:09:32
[2026-06-19 15:09:32,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:09:32,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:09:32,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:09:33,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:09:33,169.169 INFO    ] time= 19/06/2026 15:09:33
[2026-06-19 15:09:33,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:09:33,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:09:33,419.419 INFO    ] No existing commands found in stream
[2026-06-19 15:09:38,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:09:38,444.444 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 15:09:42,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:09:42,272.272 INFO    ] Checking for system updates...
[2026-06-19 15:09:42,311.311 INFO    ] 200
[2026-06-19 15:09:42,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:42,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:09:42,369.369 INFO    ] No update needed
[2026-06-19 15:09:42,371.371 INFO    ] Checking for camera pi updates...
[2026-06-19 15:09:42,404.404 INFO    ] 200
[2026-06-19 15:09:42,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:42,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:09:42,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:09:42,495.495 INFO    ] No camera update needed
[2026-06-19 15:09:42,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:09:42,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:09:42,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:09:42,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:09:44,550.550 INFO    ] ================================================
[2026-06-19 15:09:44,565.565 INFO    ] Launching Daemon at Fri Jun 19 15:09:44 IST 2026
[2026-06-19 15:09:44,576.576 INFO    ] ================================================
[2026-06-19 15:09:45,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:09:45
[2026-06-19 15:09:45,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:09:45,981.981 INFO    ] Initializing speech engine...
[2026-06-19 15:09:45,987.987 INFO    ] 2026-06-19 15:09:45
[2026-06-19 15:09:46,276.276 INFO    ] 2026-06-19 15:09:46
[2026-06-19 15:09:46,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:09:46,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:09:46,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:09:46,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:09:46,651.651 INFO    ] time= 19/06/2026 15:09:46
[2026-06-19 15:09:46,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:09:46,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:09:46,773.773 INFO    ] No existing commands found in stream
[2026-06-19 15:09:51,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:09:51,788.788 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 15:09:54,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:09:54,201.201 INFO    ] Checking for system updates...
[2026-06-19 15:09:54,240.240 INFO    ] 200
[2026-06-19 15:09:54,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:54,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:09:54,316.316 INFO    ] No update needed
[2026-06-19 15:09:54,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 15:09:54,352.352 INFO    ] 200
[2026-06-19 15:09:54,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:09:54,395.395 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:09:54,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:09:54,449.449 INFO    ] No camera update needed
[2026-06-19 15:09:54,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:09:54,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:09:54,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:09:54,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:09:56,505.505 INFO    ] ================================================
[2026-06-19 15:09:56,521.521 INFO    ] Launching Daemon at Fri Jun 19 15:09:56 IST 2026
[2026-06-19 15:09:56,532.532 INFO    ] ================================================
[2026-06-19 15:09:57,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:09:57
[2026-06-19 15:09:57,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:09:58,140.140 INFO    ] Initializing speech engine...
[2026-06-19 15:09:58,147.147 INFO    ] 2026-06-19 15:09:58
[2026-06-19 15:09:58,432.432 INFO    ] 2026-06-19 15:09:58
[2026-06-19 15:09:58,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:09:58,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:09:58,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:09:58,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:09:58,986.986 INFO    ] time= 19/06/2026 15:09:58
[2026-06-19 15:09:59,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:09:59,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:09:59,159.159 INFO    ] No existing commands found in stream
[2026-06-19 15:10:04,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:10:04,198.198 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 15:10:08,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:10:08,310.310 INFO    ] Checking for system updates...
[2026-06-19 15:10:08,353.353 INFO    ] 200
[2026-06-19 15:10:08,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:10:08,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:10:08,413.413 INFO    ] No update needed
[2026-06-19 15:10:08,416.416 INFO    ] Checking for camera pi updates...
[2026-06-19 15:10:08,450.450 INFO    ] 200
[2026-06-19 15:10:08,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:10:08,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:10:08,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:10:08,554.554 INFO    ] No camera update needed
[2026-06-19 15:10:08,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:10:08,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:10:08,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:10:08,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:10:10,613.613 INFO    ] ================================================
[2026-06-19 15:10:10,629.629 INFO    ] Launching Daemon at Fri Jun 19 15:10:10 IST 2026
[2026-06-19 15:10:10,641.641 INFO    ] ================================================
[2026-06-19 15:10:11,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:10:11
[2026-06-19 15:10:11,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:10:12,248.248 INFO    ] Initializing speech engine...
[2026-06-19 15:10:12,255.255 INFO    ] 2026-06-19 15:10:12
[2026-06-19 15:10:12,532.532 INFO    ] 2026-06-19 15:10:12
[2026-06-19 15:10:12,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:10:12,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:10:12,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:10:12,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:10:13,026.026 INFO    ] time= 19/06/2026 15:10:13
[2026-06-19 15:10:13,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:10:13,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:10:13,269.269 INFO    ] No existing commands found in stream
[2026-06-19 15:10:18,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:10:18,293.293 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 15:10:20,138.138 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:10:20,141.141 INFO    ] Checking for system updates...
[2026-06-19 15:10:20,184.184 INFO    ] 200
[2026-06-19 15:10:20,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:10:20,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:10:20,248.248 INFO    ] No update needed
[2026-06-19 15:10:20,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 15:10:20,287.287 INFO    ] 200
[2026-06-19 15:10:20,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:10:20,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:10:20,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:10:20,384.384 INFO    ] No camera update needed
[2026-06-19 15:10:20,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:10:20,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:10:20,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:10:20,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:10:22,438.438 INFO    ] ================================================
[2026-06-19 15:10:22,454.454 INFO    ] Launching Daemon at Fri Jun 19 15:10:22 IST 2026
[2026-06-19 15:10:22,466.466 INFO    ] ================================================
[2026-06-19 15:10:23,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:10:23
[2026-06-19 15:10:23,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:10:23,885.885 INFO    ] Initializing speech engine...
[2026-06-19 15:10:23,895.895 INFO    ] 2026-06-19 15:10:23
[2026-06-19 15:10:24,140.140 INFO    ] 2026-06-19 15:10:24
[2026-06-19 15:10:24,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:10:24,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:10:24,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:10:24,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:10:24,613.613 INFO    ] time= 19/06/2026 15:10:24
[2026-06-19 15:10:24,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:10:24,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:10:24,852.852 INFO    ] No existing commands found in stream
[2026-06-19 15:10:29,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:10:29,869.869 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 15:10:33,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:10:33,232.232 INFO    ] Checking for system updates...
[2026-06-19 15:10:33,268.268 INFO    ] 200
[2026-06-19 15:10:33,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:10:33,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:10:33,333.333 INFO    ] No update needed
[2026-06-19 15:10:33,336.336 INFO    ] Checking for camera pi updates...
[2026-06-19 15:10:33,374.374 INFO    ] 200
[2026-06-19 15:10:33,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:10:33,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:10:33,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:10:33,473.473 INFO    ] No camera update needed
[2026-06-19 15:10:33,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:10:33,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:10:33,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:10:33,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:10:35,529.529 INFO    ] ================================================
[2026-06-19 15:10:35,544.544 INFO    ] Launching Daemon at Fri Jun 19 15:10:35 IST 2026
[2026-06-19 15:10:35,556.556 INFO    ] ================================================
[2026-06-19 15:10:36,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:10:36
[2026-06-19 15:10:36,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:10:37,179.179 INFO    ] Initializing speech engine...
[2026-06-19 15:10:37,189.189 INFO    ] 2026-06-19 15:10:37
[2026-06-19 15:10:37,466.466 INFO    ] 2026-06-19 15:10:37
[2026-06-19 15:10:37,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:10:37,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:10:37,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:10:37,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:10:38,025.025 INFO    ] time= 19/06/2026 15:10:37
[2026-06-19 15:10:38,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:10:38,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:10:38,210.210 INFO    ] No existing commands found in stream
[2026-06-19 15:10:43,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:10:43,250.250 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 15:10:46,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:10:46,662.662 INFO    ] Checking for system updates...
[2026-06-19 15:10:46,700.700 INFO    ] 200
[2026-06-19 15:10:46,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:10:46,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:10:46,758.758 INFO    ] No update needed
[2026-06-19 15:10:46,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 15:10:46,793.793 INFO    ] 200
[2026-06-19 15:10:46,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:10:46,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:10:46,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:10:46,903.903 INFO    ] No camera update needed
[2026-06-19 15:10:46,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:10:46,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:10:46,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:10:46,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:10:48,959.959 INFO    ] ================================================
[2026-06-19 15:10:48,975.975 INFO    ] Launching Daemon at Fri Jun 19 15:10:48 IST 2026
[2026-06-19 15:10:48,986.986 INFO    ] ================================================
[2026-06-19 15:10:49,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:10:49
[2026-06-19 15:10:50,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:10:50,496.496 INFO    ] Initializing speech engine...
[2026-06-19 15:10:50,507.507 INFO    ] 2026-06-19 15:10:50
[2026-06-19 15:10:50,814.814 INFO    ] 2026-06-19 15:10:50
[2026-06-19 15:10:50,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:10:51,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:10:51,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:10:51,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:10:51,326.326 INFO    ] time= 19/06/2026 15:10:51
[2026-06-19 15:10:51,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:10:51,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:10:51,491.491 INFO    ] No existing commands found in stream
[2026-06-19 15:10:56,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:10:56,524.524 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 15:11:00,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:11:00,470.470 INFO    ] Checking for system updates...
[2026-06-19 15:11:00,510.510 INFO    ] 200
[2026-06-19 15:11:00,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:00,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:11:00,574.574 INFO    ] No update needed
[2026-06-19 15:11:00,576.576 INFO    ] Checking for camera pi updates...
[2026-06-19 15:11:00,614.614 INFO    ] 200
[2026-06-19 15:11:00,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:00,657.657 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:11:00,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:11:00,712.712 INFO    ] No camera update needed
[2026-06-19 15:11:00,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:11:00,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:11:00,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:11:00,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:11:02,774.774 INFO    ] ================================================
[2026-06-19 15:11:02,797.797 INFO    ] Launching Daemon at Fri Jun 19 15:11:02 IST 2026
[2026-06-19 15:11:02,814.814 INFO    ] ================================================
[2026-06-19 15:11:03,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:11:03
[2026-06-19 15:11:04,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:11:04,465.465 INFO    ] Initializing speech engine...
[2026-06-19 15:11:04,480.480 INFO    ] 2026-06-19 15:11:04
[2026-06-19 15:11:04,791.791 INFO    ] 2026-06-19 15:11:04
[2026-06-19 15:11:04,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:11:05,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:11:05,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:11:05,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:11:05,312.312 INFO    ] time= 19/06/2026 15:11:05
[2026-06-19 15:11:05,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:11:05,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:11:05,461.461 INFO    ] No existing commands found in stream
[2026-06-19 15:11:10,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:11:10,489.489 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 15:11:13,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:11:13,343.343 INFO    ] Checking for system updates...
[2026-06-19 15:11:13,384.384 INFO    ] 200
[2026-06-19 15:11:13,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:13,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:11:13,457.457 INFO    ] No update needed
[2026-06-19 15:11:13,460.460 INFO    ] Checking for camera pi updates...
[2026-06-19 15:11:13,499.499 INFO    ] 200
[2026-06-19 15:11:13,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:13,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:11:13,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:11:13,609.609 INFO    ] No camera update needed
[2026-06-19 15:11:13,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:11:13,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:11:13,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:11:13,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:11:15,679.679 INFO    ] ================================================
[2026-06-19 15:11:15,695.695 INFO    ] Launching Daemon at Fri Jun 19 15:11:15 IST 2026
[2026-06-19 15:11:15,706.706 INFO    ] ================================================
[2026-06-19 15:11:16,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:11:16
[2026-06-19 15:11:17,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:11:17,352.352 INFO    ] Initializing speech engine...
[2026-06-19 15:11:17,365.365 INFO    ] 2026-06-19 15:11:17
[2026-06-19 15:11:17,679.679 INFO    ] 2026-06-19 15:11:17
[2026-06-19 15:11:17,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:11:17,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:11:17,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:11:18,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:11:18,201.201 INFO    ] time= 19/06/2026 15:11:18
[2026-06-19 15:11:18,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:11:18,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:11:18,330.330 INFO    ] No existing commands found in stream
[2026-06-19 15:11:23,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:11:23,360.360 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 15:11:25,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:11:25,040.040 INFO    ] Checking for system updates...
[2026-06-19 15:11:25,078.078 INFO    ] 200
[2026-06-19 15:11:25,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:25,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:11:25,141.141 INFO    ] No update needed
[2026-06-19 15:11:25,144.144 INFO    ] Checking for camera pi updates...
[2026-06-19 15:11:25,178.178 INFO    ] 200
[2026-06-19 15:11:25,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:25,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:11:25,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:11:25,279.279 INFO    ] No camera update needed
[2026-06-19 15:11:25,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:11:25,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:11:25,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:11:25,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:11:27,335.335 INFO    ] ================================================
[2026-06-19 15:11:27,350.350 INFO    ] Launching Daemon at Fri Jun 19 15:11:27 IST 2026
[2026-06-19 15:11:27,362.362 INFO    ] ================================================
[2026-06-19 15:11:27,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:11:27
[2026-06-19 15:11:28,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:11:28,766.766 INFO    ] Initializing speech engine...
[2026-06-19 15:11:28,778.778 INFO    ] 2026-06-19 15:11:28
[2026-06-19 15:11:29,041.041 INFO    ] 2026-06-19 15:11:29
[2026-06-19 15:11:29,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:11:29,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:11:29,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:11:29,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:11:29,497.497 INFO    ] time= 19/06/2026 15:11:29
[2026-06-19 15:11:29,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:11:29,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:11:29,756.756 INFO    ] No existing commands found in stream
[2026-06-19 15:11:34,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:11:34,781.781 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 15:11:37,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:11:37,188.188 INFO    ] Checking for system updates...
[2026-06-19 15:11:37,228.228 INFO    ] 200
[2026-06-19 15:11:37,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:37,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:11:37,294.294 INFO    ] No update needed
[2026-06-19 15:11:37,296.296 INFO    ] Checking for camera pi updates...
[2026-06-19 15:11:37,330.330 INFO    ] 200
[2026-06-19 15:11:37,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:37,374.374 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:11:37,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:11:37,420.420 INFO    ] No camera update needed
[2026-06-19 15:11:37,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:11:37,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:11:37,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:11:37,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:11:39,478.478 INFO    ] ================================================
[2026-06-19 15:11:39,495.495 INFO    ] Launching Daemon at Fri Jun 19 15:11:39 IST 2026
[2026-06-19 15:11:39,506.506 INFO    ] ================================================
[2026-06-19 15:11:40,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:11:40
[2026-06-19 15:11:40,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:11:40,950.950 INFO    ] Initializing speech engine...
[2026-06-19 15:11:40,956.956 INFO    ] 2026-06-19 15:11:40
[2026-06-19 15:11:41,258.258 INFO    ] 2026-06-19 15:11:41
[2026-06-19 15:11:41,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:11:41,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:11:41,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:11:41,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:11:41,616.616 INFO    ] time= 19/06/2026 15:11:41
[2026-06-19 15:11:41,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:11:41,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:11:41,768.768 INFO    ] No existing commands found in stream
[2026-06-19 15:11:46,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:11:46,787.787 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 15:11:48,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:11:48,734.734 INFO    ] Checking for system updates...
[2026-06-19 15:11:48,771.771 INFO    ] 200
[2026-06-19 15:11:48,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:48,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:11:48,833.833 INFO    ] No update needed
[2026-06-19 15:11:48,836.836 INFO    ] Checking for camera pi updates...
[2026-06-19 15:11:48,871.871 INFO    ] 200
[2026-06-19 15:11:48,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:11:48,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:11:48,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:11:48,948.948 INFO    ] No camera update needed
[2026-06-19 15:11:48,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:11:48,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:11:48,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:11:48,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:11:51,003.003 INFO    ] ================================================
[2026-06-19 15:11:51,018.018 INFO    ] Launching Daemon at Fri Jun 19 15:11:51 IST 2026
[2026-06-19 15:11:51,029.029 INFO    ] ================================================
[2026-06-19 15:11:51,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:11:51
[2026-06-19 15:11:52,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:11:52,467.467 INFO    ] Initializing speech engine...
[2026-06-19 15:11:52,486.486 INFO    ] 2026-06-19 15:11:52
[2026-06-19 15:11:52,744.744 INFO    ] 2026-06-19 15:11:52
[2026-06-19 15:11:52,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:11:53,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:11:53,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:11:53,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:11:53,222.222 INFO    ] time= 19/06/2026 15:11:53
[2026-06-19 15:11:53,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:11:53,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:11:53,437.437 INFO    ] No existing commands found in stream
[2026-06-19 15:11:58,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:11:58,466.466 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 15:12:00,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:12:00,020.020 INFO    ] Checking for system updates...
[2026-06-19 15:12:00,061.061 INFO    ] 200
[2026-06-19 15:12:00,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:00,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:12:00,119.119 INFO    ] No update needed
[2026-06-19 15:12:00,121.121 INFO    ] Checking for camera pi updates...
[2026-06-19 15:12:00,155.155 INFO    ] 200
[2026-06-19 15:12:00,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:00,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:12:00,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:12:00,252.252 INFO    ] No camera update needed
[2026-06-19 15:12:00,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:12:00,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:12:00,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:12:00,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:12:02,313.313 INFO    ] ================================================
[2026-06-19 15:12:02,337.337 INFO    ] Launching Daemon at Fri Jun 19 15:12:02 IST 2026
[2026-06-19 15:12:02,353.353 INFO    ] ================================================
[2026-06-19 15:12:03,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:12:03
[2026-06-19 15:12:03,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:12:04,146.146 INFO    ] Initializing speech engine...
[2026-06-19 15:12:04,157.157 INFO    ] 2026-06-19 15:12:04
[2026-06-19 15:12:04,452.452 INFO    ] 2026-06-19 15:12:04
[2026-06-19 15:12:04,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:12:04,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:12:04,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:12:04,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:12:05,002.002 INFO    ] time= 19/06/2026 15:12:04
[2026-06-19 15:12:05,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:12:05,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:12:05,166.166 INFO    ] No existing commands found in stream
[2026-06-19 15:12:10,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:12:10,204.204 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 15:12:12,232.232 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:12:12,235.235 INFO    ] Checking for system updates...
[2026-06-19 15:12:12,272.272 INFO    ] 200
[2026-06-19 15:12:12,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:12,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:12:12,330.330 INFO    ] No update needed
[2026-06-19 15:12:12,332.332 INFO    ] Checking for camera pi updates...
[2026-06-19 15:12:12,371.371 INFO    ] 200
[2026-06-19 15:12:12,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:12,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:12:12,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:12:12,474.474 INFO    ] No camera update needed
[2026-06-19 15:12:12,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:12:12,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:12:12,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:12:12,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:12:14,529.529 INFO    ] ================================================
[2026-06-19 15:12:14,544.544 INFO    ] Launching Daemon at Fri Jun 19 15:12:14 IST 2026
[2026-06-19 15:12:14,556.556 INFO    ] ================================================
[2026-06-19 15:12:15,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:12:15
[2026-06-19 15:12:15,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:12:15,980.980 INFO    ] Initializing speech engine...
[2026-06-19 15:12:15,987.987 INFO    ] 2026-06-19 15:12:15
[2026-06-19 15:12:16,296.296 INFO    ] 2026-06-19 15:12:16
[2026-06-19 15:12:16,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:12:16,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:12:16,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:12:16,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:12:16,687.687 INFO    ] time= 19/06/2026 15:12:16
[2026-06-19 15:12:16,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:12:16,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:12:16,855.855 INFO    ] No existing commands found in stream
[2026-06-19 15:12:21,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:12:21,891.891 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 15:12:22,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:12:22,954.954 INFO    ] Checking for system updates...
[2026-06-19 15:12:22,991.991 INFO    ] 200
[2026-06-19 15:12:22,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:23,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:12:23,050.050 INFO    ] No update needed
[2026-06-19 15:12:23,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 15:12:23,087.087 INFO    ] 200
[2026-06-19 15:12:23,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:23,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:12:23,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:12:23,183.183 INFO    ] No camera update needed
[2026-06-19 15:12:23,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:12:23,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:12:23,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:12:23,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:12:25,239.239 INFO    ] ================================================
[2026-06-19 15:12:25,254.254 INFO    ] Launching Daemon at Fri Jun 19 15:12:25 IST 2026
[2026-06-19 15:12:25,265.265 INFO    ] ================================================
[2026-06-19 15:12:25,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:12:25
[2026-06-19 15:12:26,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:12:26,724.724 INFO    ] Initializing speech engine...
[2026-06-19 15:12:26,732.732 INFO    ] 2026-06-19 15:12:26
[2026-06-19 15:12:26,982.982 INFO    ] 2026-06-19 15:12:26
[2026-06-19 15:12:27,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:12:27,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:12:27,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:12:27,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:12:27,479.479 INFO    ] time= 19/06/2026 15:12:27
[2026-06-19 15:12:27,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:12:27,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:12:27,687.687 INFO    ] No existing commands found in stream
[2026-06-19 15:12:32,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:12:32,711.711 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 15:12:33,579.579 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:12:33,582.582 INFO    ] Checking for system updates...
[2026-06-19 15:12:33,618.618 INFO    ] 200
[2026-06-19 15:12:33,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:33,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:12:33,675.675 INFO    ] No update needed
[2026-06-19 15:12:33,677.677 INFO    ] Checking for camera pi updates...
[2026-06-19 15:12:33,717.717 INFO    ] 200
[2026-06-19 15:12:33,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:33,767.767 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:12:33,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:12:33,921.921 INFO    ] No camera update needed
[2026-06-19 15:12:33,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:12:33,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:12:33,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:12:33,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:12:35,977.977 INFO    ] ================================================
[2026-06-19 15:12:35,992.992 INFO    ] Launching Daemon at Fri Jun 19 15:12:35 IST 2026
[2026-06-19 15:12:36,003.003 INFO    ] ================================================
[2026-06-19 15:12:36,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:12:36
[2026-06-19 15:12:37,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:12:37,434.434 INFO    ] Initializing speech engine...
[2026-06-19 15:12:37,439.439 INFO    ] 2026-06-19 15:12:37
[2026-06-19 15:12:37,683.683 INFO    ] 2026-06-19 15:12:37
[2026-06-19 15:12:37,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:12:37,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:12:37,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:12:38,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:12:38,176.176 INFO    ] time= 19/06/2026 15:12:38
[2026-06-19 15:12:38,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:12:38,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:12:38,395.395 INFO    ] No existing commands found in stream
[2026-06-19 15:12:43,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:12:43,420.420 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 15:12:45,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:12:45,232.232 INFO    ] Checking for system updates...
[2026-06-19 15:12:45,268.268 INFO    ] 200
[2026-06-19 15:12:45,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:45,323.323 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:12:45,325.325 INFO    ] No update needed
[2026-06-19 15:12:45,328.328 INFO    ] Checking for camera pi updates...
[2026-06-19 15:12:45,362.362 INFO    ] 200
[2026-06-19 15:12:45,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:45,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:12:45,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:12:45,458.458 INFO    ] No camera update needed
[2026-06-19 15:12:45,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:12:45,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:12:45,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:12:45,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:12:47,515.515 INFO    ] ================================================
[2026-06-19 15:12:47,530.530 INFO    ] Launching Daemon at Fri Jun 19 15:12:47 IST 2026
[2026-06-19 15:12:47,541.541 INFO    ] ================================================
[2026-06-19 15:12:48,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:12:48
[2026-06-19 15:12:48,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:12:49,008.008 INFO    ] Initializing speech engine...
[2026-06-19 15:12:49,014.014 INFO    ] 2026-06-19 15:12:49
[2026-06-19 15:12:49,278.278 INFO    ] 2026-06-19 15:12:49
[2026-06-19 15:12:49,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:12:49,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:12:49,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:12:49,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:12:49,744.744 INFO    ] time= 19/06/2026 15:12:49
[2026-06-19 15:12:49,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:12:49,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:12:49,975.975 INFO    ] No existing commands found in stream
[2026-06-19 15:12:54,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:12:54,999.999 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 15:12:56,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:12:56,152.152 INFO    ] Checking for system updates...
[2026-06-19 15:12:56,188.188 INFO    ] 200
[2026-06-19 15:12:56,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:56,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:12:56,244.244 INFO    ] No update needed
[2026-06-19 15:12:56,247.247 INFO    ] Checking for camera pi updates...
[2026-06-19 15:12:56,281.281 INFO    ] 200
[2026-06-19 15:12:56,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:12:56,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:12:56,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:12:56,390.390 INFO    ] No camera update needed
[2026-06-19 15:12:56,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:12:56,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:12:56,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:12:56,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:12:58,450.450 INFO    ] ================================================
[2026-06-19 15:12:58,466.466 INFO    ] Launching Daemon at Fri Jun 19 15:12:58 IST 2026
[2026-06-19 15:12:58,477.477 INFO    ] ================================================
[2026-06-19 15:12:59,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:12:59
[2026-06-19 15:12:59,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:12:59,926.926 INFO    ] Initializing speech engine...
[2026-06-19 15:12:59,935.935 INFO    ] 2026-06-19 15:12:59
[2026-06-19 15:13:00,187.187 INFO    ] 2026-06-19 15:13:00
[2026-06-19 15:13:00,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:13:00,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:13:00,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:13:00,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:13:00,550.550 INFO    ] time= 19/06/2026 15:13:00
[2026-06-19 15:13:00,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:13:00,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:13:00,640.640 INFO    ] No existing commands found in stream
[2026-06-19 15:13:05,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:13:05,678.678 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 15:13:07,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:13:07,243.243 INFO    ] Checking for system updates...
[2026-06-19 15:13:07,279.279 INFO    ] 200
[2026-06-19 15:13:07,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:07,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:13:07,345.345 INFO    ] No update needed
[2026-06-19 15:13:07,347.347 INFO    ] Checking for camera pi updates...
[2026-06-19 15:13:07,386.386 INFO    ] 200
[2026-06-19 15:13:07,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:07,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:13:07,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:13:07,484.484 INFO    ] No camera update needed
[2026-06-19 15:13:07,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:13:07,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:13:07,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:13:07,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:13:09,538.538 INFO    ] ================================================
[2026-06-19 15:13:09,554.554 INFO    ] Launching Daemon at Fri Jun 19 15:13:09 IST 2026
[2026-06-19 15:13:09,565.565 INFO    ] ================================================
[2026-06-19 15:13:10,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:13:10
[2026-06-19 15:13:10,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:13:10,972.972 INFO    ] Initializing speech engine...
[2026-06-19 15:13:10,979.979 INFO    ] 2026-06-19 15:13:10
[2026-06-19 15:13:11,285.285 INFO    ] 2026-06-19 15:13:11
[2026-06-19 15:13:11,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:13:11,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:13:11,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:13:11,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:13:11,711.711 INFO    ] time= 19/06/2026 15:13:11
[2026-06-19 15:13:11,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:13:11,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:13:11,799.799 INFO    ] No existing commands found in stream
[2026-06-19 15:13:16,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:13:16,832.832 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 15:13:19,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:13:19,713.713 INFO    ] Checking for system updates...
[2026-06-19 15:13:19,749.749 INFO    ] 200
[2026-06-19 15:13:19,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:19,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:13:19,813.813 INFO    ] No update needed
[2026-06-19 15:13:19,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 15:13:19,854.854 INFO    ] 200
[2026-06-19 15:13:19,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:19,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:13:19,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:13:19,948.948 INFO    ] No camera update needed
[2026-06-19 15:13:19,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:13:19,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:13:19,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:13:19,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:13:22,004.004 INFO    ] ================================================
[2026-06-19 15:13:22,019.019 INFO    ] Launching Daemon at Fri Jun 19 15:13:22 IST 2026
[2026-06-19 15:13:22,030.030 INFO    ] ================================================
[2026-06-19 15:13:22,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:13:22
[2026-06-19 15:13:23,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:13:23,450.450 INFO    ] Initializing speech engine...
[2026-06-19 15:13:23,456.456 INFO    ] 2026-06-19 15:13:23
[2026-06-19 15:13:23,754.754 INFO    ] 2026-06-19 15:13:23
[2026-06-19 15:13:23,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:13:23,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:13:24,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:13:24,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:13:24,178.178 INFO    ] time= 19/06/2026 15:13:24
[2026-06-19 15:13:24,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:13:24,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:13:24,266.266 INFO    ] No existing commands found in stream
[2026-06-19 15:13:29,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:13:29,294.294 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 15:13:31,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:13:31,513.513 INFO    ] Checking for system updates...
[2026-06-19 15:13:31,556.556 INFO    ] 200
[2026-06-19 15:13:31,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:31,616.616 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:13:31,618.618 INFO    ] No update needed
[2026-06-19 15:13:31,621.621 INFO    ] Checking for camera pi updates...
[2026-06-19 15:13:31,661.661 INFO    ] 200
[2026-06-19 15:13:31,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:31,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:13:31,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:13:31,751.751 INFO    ] No camera update needed
[2026-06-19 15:13:31,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:13:31,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:13:31,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:13:31,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:13:33,810.810 INFO    ] ================================================
[2026-06-19 15:13:33,826.826 INFO    ] Launching Daemon at Fri Jun 19 15:13:33 IST 2026
[2026-06-19 15:13:33,837.837 INFO    ] ================================================
[2026-06-19 15:13:34,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:13:34
[2026-06-19 15:13:35,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:13:35,311.311 INFO    ] Initializing speech engine...
[2026-06-19 15:13:35,318.318 INFO    ] 2026-06-19 15:13:35
[2026-06-19 15:13:35,580.580 INFO    ] 2026-06-19 15:13:35
[2026-06-19 15:13:35,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:13:35,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:13:35,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:13:36,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:13:36,124.124 INFO    ] time= 19/06/2026 15:13:36
[2026-06-19 15:13:36,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:13:36,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:13:36,281.281 INFO    ] No existing commands found in stream
[2026-06-19 15:13:41,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:13:41,299.299 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 15:13:44,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:13:44,724.724 INFO    ] Checking for system updates...
[2026-06-19 15:13:44,761.761 INFO    ] 200
[2026-06-19 15:13:44,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:44,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:13:44,829.829 INFO    ] No update needed
[2026-06-19 15:13:44,831.831 INFO    ] Checking for camera pi updates...
[2026-06-19 15:13:44,869.869 INFO    ] 200
[2026-06-19 15:13:44,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:44,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:13:44,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:13:44,962.962 INFO    ] No camera update needed
[2026-06-19 15:13:44,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:13:44,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:13:44,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:13:44,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:13:47,019.019 INFO    ] ================================================
[2026-06-19 15:13:47,035.035 INFO    ] Launching Daemon at Fri Jun 19 15:13:47 IST 2026
[2026-06-19 15:13:47,046.046 INFO    ] ================================================
[2026-06-19 15:13:47,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:13:47
[2026-06-19 15:13:48,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:13:48,669.669 INFO    ] Initializing speech engine...
[2026-06-19 15:13:48,681.681 INFO    ] 2026-06-19 15:13:48
[2026-06-19 15:13:48,990.990 INFO    ] 2026-06-19 15:13:48
[2026-06-19 15:13:49,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:13:49,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:13:49,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:13:49,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:13:49,496.496 INFO    ] time= 19/06/2026 15:13:49
[2026-06-19 15:13:49,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:13:49,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:13:49,675.675 INFO    ] No existing commands found in stream
[2026-06-19 15:13:54,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:13:54,704.704 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 15:13:59,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:13:59,122.122 INFO    ] Checking for system updates...
[2026-06-19 15:13:59,157.157 INFO    ] 200
[2026-06-19 15:13:59,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:59,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:13:59,215.215 INFO    ] No update needed
[2026-06-19 15:13:59,218.218 INFO    ] Checking for camera pi updates...
[2026-06-19 15:13:59,251.251 INFO    ] 200
[2026-06-19 15:13:59,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:13:59,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:13:59,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:13:59,349.349 INFO    ] No camera update needed
[2026-06-19 15:13:59,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:13:59,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:13:59,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:13:59,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:14:01,426.426 INFO    ] ================================================
[2026-06-19 15:14:01,476.476 INFO    ] Launching Daemon at Fri Jun 19 15:14:01 IST 2026
[2026-06-19 15:14:01,507.507 INFO    ] ================================================
[2026-06-19 15:14:02,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:14:02
[2026-06-19 15:14:03,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:14:03,421.421 INFO    ] Initializing speech engine...
[2026-06-19 15:14:03,435.435 INFO    ] 2026-06-19 15:14:03
[2026-06-19 15:14:03,744.744 INFO    ] 2026-06-19 15:14:03
[2026-06-19 15:14:03,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:14:04,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:14:04,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:14:04,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:14:04,263.263 INFO    ] time= 19/06/2026 15:14:04
[2026-06-19 15:14:04,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:14:04,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:14:04,407.407 INFO    ] No existing commands found in stream
[2026-06-19 15:14:09,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:14:09,444.444 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 15:14:10,429.429 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:14:10,432.432 INFO    ] Checking for system updates...
[2026-06-19 15:14:10,476.476 INFO    ] 200
[2026-06-19 15:14:10,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:10,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:14:10,535.535 INFO    ] No update needed
[2026-06-19 15:14:10,538.538 INFO    ] Checking for camera pi updates...
[2026-06-19 15:14:10,577.577 INFO    ] 200
[2026-06-19 15:14:10,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:10,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:14:10,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:14:10,684.684 INFO    ] No camera update needed
[2026-06-19 15:14:10,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:14:10,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:14:10,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:14:10,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:14:12,745.745 INFO    ] ================================================
[2026-06-19 15:14:12,760.760 INFO    ] Launching Daemon at Fri Jun 19 15:14:12 IST 2026
[2026-06-19 15:14:12,771.771 INFO    ] ================================================
[2026-06-19 15:14:13,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:14:13
[2026-06-19 15:14:14,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:14:14,407.407 INFO    ] Initializing speech engine...
[2026-06-19 15:14:14,421.421 INFO    ] 2026-06-19 15:14:14
[2026-06-19 15:14:14,699.699 INFO    ] 2026-06-19 15:14:14
[2026-06-19 15:14:14,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:14:14,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:14:14,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:14:15,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:14:15,235.235 INFO    ] time= 19/06/2026 15:14:15
[2026-06-19 15:14:15,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:14:15,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:14:15,397.397 INFO    ] No existing commands found in stream
[2026-06-19 15:14:20,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:14:20,430.430 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 15:14:22,116.116 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:14:22,119.119 INFO    ] Checking for system updates...
[2026-06-19 15:14:22,161.161 INFO    ] 200
[2026-06-19 15:14:22,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:22,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:14:22,227.227 INFO    ] No update needed
[2026-06-19 15:14:22,230.230 INFO    ] Checking for camera pi updates...
[2026-06-19 15:14:22,269.269 INFO    ] 200
[2026-06-19 15:14:22,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:22,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:14:22,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:14:22,367.367 INFO    ] No camera update needed
[2026-06-19 15:14:22,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:14:22,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:14:22,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:14:22,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:14:24,426.426 INFO    ] ================================================
[2026-06-19 15:14:24,440.440 INFO    ] Launching Daemon at Fri Jun 19 15:14:24 IST 2026
[2026-06-19 15:14:24,451.451 INFO    ] ================================================
[2026-06-19 15:14:25,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:14:25
[2026-06-19 15:14:25,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:14:25,856.856 INFO    ] Initializing speech engine...
[2026-06-19 15:14:25,861.861 INFO    ] 2026-06-19 15:14:25
[2026-06-19 15:14:26,159.159 INFO    ] 2026-06-19 15:14:26
[2026-06-19 15:14:26,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:14:26,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:14:26,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:14:26,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:14:26,580.580 INFO    ] time= 19/06/2026 15:14:26
[2026-06-19 15:14:26,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:14:26,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:14:26,763.763 INFO    ] No existing commands found in stream
[2026-06-19 15:14:31,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:14:31,801.801 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 15:14:34,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:14:34,643.643 INFO    ] Checking for system updates...
[2026-06-19 15:14:34,682.682 INFO    ] 200
[2026-06-19 15:14:34,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:34,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:14:34,747.747 INFO    ] No update needed
[2026-06-19 15:14:34,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 15:14:34,786.786 INFO    ] 200
[2026-06-19 15:14:34,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:34,834.834 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:14:34,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:14:34,882.882 INFO    ] No camera update needed
[2026-06-19 15:14:34,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:14:34,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:14:34,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:14:34,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:14:36,937.937 INFO    ] ================================================
[2026-06-19 15:14:36,952.952 INFO    ] Launching Daemon at Fri Jun 19 15:14:36 IST 2026
[2026-06-19 15:14:36,963.963 INFO    ] ================================================
[2026-06-19 15:14:37,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:14:37
[2026-06-19 15:14:38,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:14:38,400.400 INFO    ] Initializing speech engine...
[2026-06-19 15:14:38,425.425 INFO    ] 2026-06-19 15:14:38
[2026-06-19 15:14:38,697.697 INFO    ] 2026-06-19 15:14:38
[2026-06-19 15:14:38,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:14:38,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:14:38,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:14:39,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:14:39,117.117 INFO    ] time= 19/06/2026 15:14:39
[2026-06-19 15:14:39,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:14:39,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:14:39,296.296 INFO    ] No existing commands found in stream
[2026-06-19 15:14:44,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:14:44,334.334 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 15:14:45,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:14:45,790.790 INFO    ] Checking for system updates...
[2026-06-19 15:14:45,826.826 INFO    ] 200
[2026-06-19 15:14:45,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:45,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:14:45,885.885 INFO    ] No update needed
[2026-06-19 15:14:45,888.888 INFO    ] Checking for camera pi updates...
[2026-06-19 15:14:45,921.921 INFO    ] 200
[2026-06-19 15:14:45,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:45,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:14:46,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:14:46,118.118 INFO    ] No camera update needed
[2026-06-19 15:14:46,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:14:46,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:14:46,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:14:46,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:14:48,174.174 INFO    ] ================================================
[2026-06-19 15:14:48,189.189 INFO    ] Launching Daemon at Fri Jun 19 15:14:48 IST 2026
[2026-06-19 15:14:48,200.200 INFO    ] ================================================
[2026-06-19 15:14:48,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:14:48
[2026-06-19 15:14:49,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:14:49,618.618 INFO    ] Initializing speech engine...
[2026-06-19 15:14:49,625.625 INFO    ] 2026-06-19 15:14:49
[2026-06-19 15:14:49,922.922 INFO    ] 2026-06-19 15:14:49
[2026-06-19 15:14:49,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:14:50,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:14:50,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:14:50,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:14:50,343.343 INFO    ] time= 19/06/2026 15:14:50
[2026-06-19 15:14:50,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:14:50,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:14:50,510.510 INFO    ] No existing commands found in stream
[2026-06-19 15:14:55,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:14:55,538.538 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 15:14:57,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:14:57,308.308 INFO    ] Checking for system updates...
[2026-06-19 15:14:57,346.346 INFO    ] 200
[2026-06-19 15:14:57,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:57,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:14:57,404.404 INFO    ] No update needed
[2026-06-19 15:14:57,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 15:14:57,442.442 INFO    ] 200
[2026-06-19 15:14:57,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:14:57,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:14:57,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:14:57,543.543 INFO    ] No camera update needed
[2026-06-19 15:14:57,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:14:57,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:14:57,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:14:57,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:14:59,599.599 INFO    ] ================================================
[2026-06-19 15:14:59,613.613 INFO    ] Launching Daemon at Fri Jun 19 15:14:59 IST 2026
[2026-06-19 15:14:59,624.624 INFO    ] ================================================
[2026-06-19 15:15:00,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:15:00
[2026-06-19 15:15:00,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:15:01,042.042 INFO    ] Initializing speech engine...
[2026-06-19 15:15:01,051.051 INFO    ] 2026-06-19 15:15:01
[2026-06-19 15:15:01,311.311 INFO    ] 2026-06-19 15:15:01
[2026-06-19 15:15:01,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:15:01,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:15:01,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:15:01,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:15:02,066.066 INFO    ] time= 19/06/2026 15:15:01
[2026-06-19 15:15:02,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:15:02,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:15:02,197.197 INFO    ] No existing commands found in stream
[2026-06-19 15:15:07,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:15:07,210.210 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 15:15:10,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:15:10,532.532 INFO    ] Checking for system updates...
[2026-06-19 15:15:10,581.581 INFO    ] 200
[2026-06-19 15:15:10,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:10,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:15:10,647.647 INFO    ] No update needed
[2026-06-19 15:15:10,650.650 INFO    ] Checking for camera pi updates...
[2026-06-19 15:15:10,689.689 INFO    ] 200
[2026-06-19 15:15:10,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:10,756.756 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:15:10,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:15:10,808.808 INFO    ] No camera update needed
[2026-06-19 15:15:10,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:15:10,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:15:10,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:15:10,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:15:12,870.870 INFO    ] ================================================
[2026-06-19 15:15:12,887.887 INFO    ] Launching Daemon at Fri Jun 19 15:15:12 IST 2026
[2026-06-19 15:15:12,897.897 INFO    ] ================================================
[2026-06-19 15:15:13,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:15:13
[2026-06-19 15:15:14,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:15:14,344.344 INFO    ] Initializing speech engine...
[2026-06-19 15:15:14,353.353 INFO    ] 2026-06-19 15:15:14
[2026-06-19 15:15:14,646.646 INFO    ] 2026-06-19 15:15:14
[2026-06-19 15:15:14,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:15:14,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:15:14,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:15:14,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:15:14,961.961 INFO    ] time= 19/06/2026 15:15:14
[2026-06-19 15:15:14,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:15:14,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:15:15,083.083 INFO    ] No existing commands found in stream
[2026-06-19 15:15:20,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:15:20,112.112 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 15:15:22,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:15:22,083.083 INFO    ] Checking for system updates...
[2026-06-19 15:15:22,121.121 INFO    ] 200
[2026-06-19 15:15:22,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:22,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:15:22,179.179 INFO    ] No update needed
[2026-06-19 15:15:22,182.182 INFO    ] Checking for camera pi updates...
[2026-06-19 15:15:22,219.219 INFO    ] 200
[2026-06-19 15:15:22,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:22,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:15:22,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:15:22,312.312 INFO    ] No camera update needed
[2026-06-19 15:15:22,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:15:22,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:15:22,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:15:22,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:15:24,367.367 INFO    ] ================================================
[2026-06-19 15:15:24,382.382 INFO    ] Launching Daemon at Fri Jun 19 15:15:24 IST 2026
[2026-06-19 15:15:24,393.393 INFO    ] ================================================
[2026-06-19 15:15:24,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:15:24
[2026-06-19 15:15:25,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:15:25,835.835 INFO    ] Initializing speech engine...
[2026-06-19 15:15:25,853.853 INFO    ] 2026-06-19 15:15:25
[2026-06-19 15:15:26,105.105 INFO    ] 2026-06-19 15:15:26
[2026-06-19 15:15:26,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:15:26,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:15:26,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:15:26,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:15:26,483.483 INFO    ] time= 19/06/2026 15:15:26
[2026-06-19 15:15:26,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:15:26,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:15:26,664.664 INFO    ] No existing commands found in stream
[2026-06-19 15:15:31,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:15:31,690.690 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 15:15:34,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:15:34,431.431 INFO    ] Checking for system updates...
[2026-06-19 15:15:34,468.468 INFO    ] 200
[2026-06-19 15:15:34,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:34,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:15:34,543.543 INFO    ] No update needed
[2026-06-19 15:15:34,547.547 INFO    ] Checking for camera pi updates...
[2026-06-19 15:15:34,582.582 INFO    ] 200
[2026-06-19 15:15:34,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:34,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:15:34,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:15:34,685.685 INFO    ] No camera update needed
[2026-06-19 15:15:34,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:15:34,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:15:34,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:15:34,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:15:36,746.746 INFO    ] ================================================
[2026-06-19 15:15:36,762.762 INFO    ] Launching Daemon at Fri Jun 19 15:15:36 IST 2026
[2026-06-19 15:15:36,772.772 INFO    ] ================================================
[2026-06-19 15:15:37,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:15:37
[2026-06-19 15:15:37,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:15:38,216.216 INFO    ] Initializing speech engine...
[2026-06-19 15:15:38,225.225 INFO    ] 2026-06-19 15:15:38
[2026-06-19 15:15:38,498.498 INFO    ] 2026-06-19 15:15:38
[2026-06-19 15:15:38,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:15:38,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:15:38,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:15:39,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:15:39,055.055 INFO    ] time= 19/06/2026 15:15:39
[2026-06-19 15:15:39,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:15:39,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:15:39,214.214 INFO    ] No existing commands found in stream
[2026-06-19 15:15:44,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:15:44,258.258 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 15:15:46,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:15:46,098.098 INFO    ] Checking for system updates...
[2026-06-19 15:15:46,135.135 INFO    ] 200
[2026-06-19 15:15:46,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:46,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:15:46,195.195 INFO    ] No update needed
[2026-06-19 15:15:46,198.198 INFO    ] Checking for camera pi updates...
[2026-06-19 15:15:46,232.232 INFO    ] 200
[2026-06-19 15:15:46,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:46,275.275 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:15:46,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:15:46,375.375 INFO    ] No camera update needed
[2026-06-19 15:15:46,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:15:46,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:15:46,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:15:46,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:15:48,430.430 INFO    ] ================================================
[2026-06-19 15:15:48,444.444 INFO    ] Launching Daemon at Fri Jun 19 15:15:48 IST 2026
[2026-06-19 15:15:48,455.455 INFO    ] ================================================
[2026-06-19 15:15:49,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:15:49
[2026-06-19 15:15:49,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:15:49,889.889 INFO    ] Initializing speech engine...
[2026-06-19 15:15:49,906.906 INFO    ] 2026-06-19 15:15:49
[2026-06-19 15:15:50,165.165 INFO    ] 2026-06-19 15:15:50
[2026-06-19 15:15:50,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:15:50,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:15:50,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:15:50,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:15:50,564.564 INFO    ] time= 19/06/2026 15:15:50
[2026-06-19 15:15:50,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:15:50,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:15:50,733.733 INFO    ] No existing commands found in stream
[2026-06-19 15:15:55,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:15:55,756.756 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 15:15:56,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:15:56,584.584 INFO    ] Checking for system updates...
[2026-06-19 15:15:56,620.620 INFO    ] 200
[2026-06-19 15:15:56,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:56,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:15:56,683.683 INFO    ] No update needed
[2026-06-19 15:15:56,686.686 INFO    ] Checking for camera pi updates...
[2026-06-19 15:15:56,719.719 INFO    ] 200
[2026-06-19 15:15:56,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:15:56,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:15:56,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:15:56,813.813 INFO    ] No camera update needed
[2026-06-19 15:15:56,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:15:56,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:15:56,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:15:56,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:15:58,869.869 INFO    ] ================================================
[2026-06-19 15:15:58,884.884 INFO    ] Launching Daemon at Fri Jun 19 15:15:58 IST 2026
[2026-06-19 15:15:58,895.895 INFO    ] ================================================
[2026-06-19 15:15:59,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:15:59
[2026-06-19 15:16:00,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:16:00,326.326 INFO    ] Initializing speech engine...
[2026-06-19 15:16:00,336.336 INFO    ] 2026-06-19 15:16:00
[2026-06-19 15:16:00,587.587 INFO    ] 2026-06-19 15:16:00
[2026-06-19 15:16:00,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:16:00,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:16:00,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:16:00,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:16:00,969.969 INFO    ] time= 19/06/2026 15:16:00
[2026-06-19 15:16:00,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:16:00,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:16:01,141.141 INFO    ] No existing commands found in stream
[2026-06-19 15:16:06,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:16:06,169.169 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 15:16:10,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:16:10,555.555 INFO    ] Checking for system updates...
[2026-06-19 15:16:10,591.591 INFO    ] 200
[2026-06-19 15:16:10,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:10,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:16:10,657.657 INFO    ] No update needed
[2026-06-19 15:16:10,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 15:16:10,693.693 INFO    ] 200
[2026-06-19 15:16:10,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:10,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:16:10,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:16:10,790.790 INFO    ] No camera update needed
[2026-06-19 15:16:10,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:16:10,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:16:10,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:16:10,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:16:12,851.851 INFO    ] ================================================
[2026-06-19 15:16:12,867.867 INFO    ] Launching Daemon at Fri Jun 19 15:16:12 IST 2026
[2026-06-19 15:16:12,878.878 INFO    ] ================================================
[2026-06-19 15:16:13,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:16:13
[2026-06-19 15:16:14,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:16:14,488.488 INFO    ] Initializing speech engine...
[2026-06-19 15:16:14,496.496 INFO    ] 2026-06-19 15:16:14
[2026-06-19 15:16:14,769.769 INFO    ] 2026-06-19 15:16:14
[2026-06-19 15:16:14,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:16:15,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:16:15,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:16:15,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:16:15,275.275 INFO    ] time= 19/06/2026 15:16:15
[2026-06-19 15:16:15,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:16:15,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:16:15,484.484 INFO    ] No existing commands found in stream
[2026-06-19 15:16:20,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:16:20,513.513 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 15:16:23,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:16:23,441.441 INFO    ] Checking for system updates...
[2026-06-19 15:16:23,479.479 INFO    ] 200
[2026-06-19 15:16:23,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:23,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:16:23,539.539 INFO    ] No update needed
[2026-06-19 15:16:23,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 15:16:23,576.576 INFO    ] 200
[2026-06-19 15:16:23,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:23,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:16:23,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:16:23,680.680 INFO    ] No camera update needed
[2026-06-19 15:16:23,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:16:23,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:16:23,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:16:23,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:16:25,736.736 INFO    ] ================================================
[2026-06-19 15:16:25,751.751 INFO    ] Launching Daemon at Fri Jun 19 15:16:25 IST 2026
[2026-06-19 15:16:25,762.762 INFO    ] ================================================
[2026-06-19 15:16:26,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:16:26
[2026-06-19 15:16:26,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:16:27,214.214 INFO    ] Initializing speech engine...
[2026-06-19 15:16:27,223.223 INFO    ] 2026-06-19 15:16:27
[2026-06-19 15:16:27,473.473 INFO    ] 2026-06-19 15:16:27
[2026-06-19 15:16:27,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:16:27,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:16:27,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:16:27,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:16:27,976.976 INFO    ] time= 19/06/2026 15:16:27
[2026-06-19 15:16:28,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:16:28,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:16:28,180.180 INFO    ] No existing commands found in stream
[2026-06-19 15:16:33,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:16:33,199.199 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 15:16:35,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:16:35,079.079 INFO    ] Checking for system updates...
[2026-06-19 15:16:35,120.120 INFO    ] 200
[2026-06-19 15:16:35,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:35,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:16:35,178.178 INFO    ] No update needed
[2026-06-19 15:16:35,180.180 INFO    ] Checking for camera pi updates...
[2026-06-19 15:16:35,215.215 INFO    ] 200
[2026-06-19 15:16:35,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:35,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:16:35,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:16:35,310.310 INFO    ] No camera update needed
[2026-06-19 15:16:35,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:16:35,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:16:35,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:16:35,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:16:37,366.366 INFO    ] ================================================
[2026-06-19 15:16:37,381.381 INFO    ] Launching Daemon at Fri Jun 19 15:16:37 IST 2026
[2026-06-19 15:16:37,391.391 INFO    ] ================================================
[2026-06-19 15:16:37,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:16:37
[2026-06-19 15:16:38,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:16:38,788.788 INFO    ] Initializing speech engine...
[2026-06-19 15:16:38,803.803 INFO    ] 2026-06-19 15:16:38
[2026-06-19 15:16:39,067.067 INFO    ] 2026-06-19 15:16:39
[2026-06-19 15:16:39,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:16:39,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:16:39,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:16:39,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:16:39,443.443 INFO    ] time= 19/06/2026 15:16:39
[2026-06-19 15:16:39,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:16:39,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:16:39,628.628 INFO    ] No existing commands found in stream
[2026-06-19 15:16:44,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:16:44,657.657 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 15:16:45,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:16:45,218.218 INFO    ] Checking for system updates...
[2026-06-19 15:16:45,259.259 INFO    ] 200
[2026-06-19 15:16:45,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:45,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:16:45,325.325 INFO    ] No update needed
[2026-06-19 15:16:45,328.328 INFO    ] Checking for camera pi updates...
[2026-06-19 15:16:45,367.367 INFO    ] 200
[2026-06-19 15:16:45,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:45,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:16:45,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:16:45,464.464 INFO    ] No camera update needed
[2026-06-19 15:16:45,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:16:45,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:16:45,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:16:45,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:16:47,528.528 INFO    ] ================================================
[2026-06-19 15:16:47,543.543 INFO    ] Launching Daemon at Fri Jun 19 15:16:47 IST 2026
[2026-06-19 15:16:47,554.554 INFO    ] ================================================
[2026-06-19 15:16:48,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:16:48
[2026-06-19 15:16:48,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:16:49,139.139 INFO    ] Initializing speech engine...
[2026-06-19 15:16:49,149.149 INFO    ] 2026-06-19 15:16:49
[2026-06-19 15:16:49,408.408 INFO    ] 2026-06-19 15:16:49
[2026-06-19 15:16:49,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:16:49,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:16:49,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:16:49,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:16:49,956.956 INFO    ] time= 19/06/2026 15:16:49
[2026-06-19 15:16:49,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:16:49,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:16:50,137.137 INFO    ] No existing commands found in stream
[2026-06-19 15:16:55,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:16:55,170.170 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 15:16:56,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:16:56,831.831 INFO    ] Checking for system updates...
[2026-06-19 15:16:56,867.867 INFO    ] 200
[2026-06-19 15:16:56,870.870 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:56,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:16:56,924.924 INFO    ] No update needed
[2026-06-19 15:16:56,926.926 INFO    ] Checking for camera pi updates...
[2026-06-19 15:16:56,964.964 INFO    ] 200
[2026-06-19 15:16:56,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:16:57,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:16:57,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:16:57,152.152 INFO    ] No camera update needed
[2026-06-19 15:16:57,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:16:57,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:16:57,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:16:57,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:16:59,206.206 INFO    ] ================================================
[2026-06-19 15:16:59,222.222 INFO    ] Launching Daemon at Fri Jun 19 15:16:59 IST 2026
[2026-06-19 15:16:59,233.233 INFO    ] ================================================
[2026-06-19 15:16:59,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:16:59
[2026-06-19 15:17:00,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:17:00,685.685 INFO    ] Initializing speech engine...
[2026-06-19 15:17:00,694.694 INFO    ] 2026-06-19 15:17:00
[2026-06-19 15:17:00,957.957 INFO    ] 2026-06-19 15:17:00
[2026-06-19 15:17:01,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:17:01,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:17:01,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:17:01,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:17:01,458.458 INFO    ] time= 19/06/2026 15:17:01
[2026-06-19 15:17:01,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:17:01,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:17:01,671.671 INFO    ] No existing commands found in stream
[2026-06-19 15:17:06,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:17:06,695.695 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 15:17:08,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:17:08,192.192 INFO    ] Checking for system updates...
[2026-06-19 15:17:08,229.229 INFO    ] 200
[2026-06-19 15:17:08,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:17:08,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:17:08,290.290 INFO    ] No update needed
[2026-06-19 15:17:08,292.292 INFO    ] Checking for camera pi updates...
[2026-06-19 15:17:08,326.326 INFO    ] 200
[2026-06-19 15:17:08,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:17:08,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:17:08,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:17:08,425.425 INFO    ] No camera update needed
[2026-06-19 15:17:08,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:17:08,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:17:08,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:17:08,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:17:10,480.480 INFO    ] ================================================
[2026-06-19 15:17:10,495.495 INFO    ] Launching Daemon at Fri Jun 19 15:17:10 IST 2026
[2026-06-19 15:17:10,506.506 INFO    ] ================================================
[2026-06-19 15:17:11,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:17:11
[2026-06-19 15:17:11,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:17:12,044.044 INFO    ] Initializing speech engine...
[2026-06-19 15:17:12,051.051 INFO    ] 2026-06-19 15:17:12
[2026-06-19 15:17:12,340.340 INFO    ] 2026-06-19 15:17:12
[2026-06-19 15:17:12,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:17:12,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:17:12,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:17:12,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:17:12,884.884 INFO    ] time= 19/06/2026 15:17:12
[2026-06-19 15:17:12,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:17:12,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:17:13,064.064 INFO    ] No existing commands found in stream
[2026-06-19 15:17:18,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:17:18,093.093 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 15:17:22,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:17:22,033.033 INFO    ] Checking for system updates...
[2026-06-19 15:17:22,070.070 INFO    ] 200
[2026-06-19 15:17:22,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:17:22,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:17:22,127.127 INFO    ] No update needed
[2026-06-19 15:17:22,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 15:17:22,164.164 INFO    ] 200
[2026-06-19 15:17:22,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:17:22,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:17:22,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:17:22,253.253 INFO    ] No camera update needed
[2026-06-19 15:17:22,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:17:22,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:17:22,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:17:22,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:17:24,310.310 INFO    ] ================================================
[2026-06-19 15:17:24,327.327 INFO    ] Launching Daemon at Fri Jun 19 15:17:24 IST 2026
[2026-06-19 15:17:24,339.339 INFO    ] ================================================
[2026-06-19 15:17:25,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:17:25
[2026-06-19 15:17:25,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:17:25,889.889 INFO    ] Initializing speech engine...
[2026-06-19 15:17:25,894.894 INFO    ] 2026-06-19 15:17:25
[2026-06-19 15:17:26,193.193 INFO    ] 2026-06-19 15:17:26
[2026-06-19 15:17:26,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:17:26,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:17:26,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:17:26,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:17:26,591.591 INFO    ] time= 19/06/2026 15:17:26
[2026-06-19 15:17:26,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:17:26,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:17:26,803.803 INFO    ] No existing commands found in stream
[2026-06-19 15:17:31,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:17:31,817.817 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 15:17:34,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:17:34,211.211 INFO    ] Checking for system updates...
[2026-06-19 15:17:34,247.247 INFO    ] 200
[2026-06-19 15:17:34,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:17:34,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:17:34,313.313 INFO    ] No update needed
[2026-06-19 15:17:34,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 15:17:34,351.351 INFO    ] 200
[2026-06-19 15:17:34,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:17:34,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:17:34,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:17:34,450.450 INFO    ] No camera update needed
[2026-06-19 15:17:34,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:17:34,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:17:34,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:17:34,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:17:36,512.512 INFO    ] ================================================
[2026-06-19 15:17:36,529.529 INFO    ] Launching Daemon at Fri Jun 19 15:17:36 IST 2026
[2026-06-19 15:17:36,540.540 INFO    ] ================================================
[2026-06-19 15:17:37,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:17:37
[2026-06-19 15:17:37,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:17:37,969.969 INFO    ] Initializing speech engine...
[2026-06-19 15:17:37,978.978 INFO    ] 2026-06-19 15:17:37
[2026-06-19 15:17:38,227.227 INFO    ] 2026-06-19 15:17:38
[2026-06-19 15:17:38,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:17:38,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:17:38,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:17:38,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:17:38,746.746 INFO    ] time= 19/06/2026 15:17:38
[2026-06-19 15:17:38,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:17:38,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:17:38,957.957 INFO    ] No existing commands found in stream
[2026-06-19 15:17:43,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:17:43,976.976 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 15:17:47,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:17:47,326.326 INFO    ] Checking for system updates...
[2026-06-19 15:17:47,370.370 INFO    ] 200
[2026-06-19 15:17:47,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:17:47,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:17:47,435.435 INFO    ] No update needed
[2026-06-19 15:17:47,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 15:17:47,480.480 INFO    ] 200
[2026-06-19 15:17:47,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:17:47,533.533 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:17:47,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:17:47,572.572 INFO    ] No camera update needed
[2026-06-19 15:17:47,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:17:47,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:17:47,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:17:47,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:17:49,638.638 INFO    ] ================================================
[2026-06-19 15:17:49,653.653 INFO    ] Launching Daemon at Fri Jun 19 15:17:49 IST 2026
[2026-06-19 15:17:49,664.664 INFO    ] ================================================
[2026-06-19 15:17:50,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:17:50
[2026-06-19 15:17:50,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:17:51,132.132 INFO    ] Initializing speech engine...
[2026-06-19 15:17:51,148.148 INFO    ] 2026-06-19 15:17:51
[2026-06-19 15:17:51,415.415 INFO    ] 2026-06-19 15:17:51
[2026-06-19 15:17:51,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:17:51,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:17:51,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:17:51,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:17:51,925.925 INFO    ] time= 19/06/2026 15:17:51
[2026-06-19 15:17:51,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:17:51,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:17:52,130.130 INFO    ] No existing commands found in stream
[2026-06-19 15:17:57,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:17:57,149.149 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 15:17:59,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:17:59,887.887 INFO    ] Checking for system updates...
[2026-06-19 15:17:59,925.925 INFO    ] 200
[2026-06-19 15:17:59,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:17:59,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:17:59,985.985 INFO    ] No update needed
[2026-06-19 15:17:59,988.988 INFO    ] Checking for camera pi updates...
[2026-06-19 15:18:00,023.023 INFO    ] 200
[2026-06-19 15:18:00,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:18:00,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:18:00,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:18:00,122.122 INFO    ] No camera update needed
[2026-06-19 15:18:00,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:18:00,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:18:00,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:18:00,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:18:02,181.181 INFO    ] ================================================
[2026-06-19 15:18:02,239.239 INFO    ] Launching Daemon at Fri Jun 19 15:18:02 IST 2026
[2026-06-19 15:18:02,265.265 INFO    ] ================================================
[2026-06-19 15:18:02,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:18:02
[2026-06-19 15:18:03,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:18:03,863.863 INFO    ] Initializing speech engine...
[2026-06-19 15:18:03,870.870 INFO    ] 2026-06-19 15:18:03
[2026-06-19 15:18:04,171.171 INFO    ] 2026-06-19 15:18:04
[2026-06-19 15:18:04,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:18:04,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:18:04,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:18:04,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:18:04,544.544 INFO    ] time= 19/06/2026 15:18:04
[2026-06-19 15:18:04,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:18:04,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:18:04,628.628 INFO    ] No existing commands found in stream
[2026-06-19 15:18:09,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:18:09,642.642 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 15:18:13,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:18:13,338.338 INFO    ] Checking for system updates...
[2026-06-19 15:18:13,379.379 INFO    ] 200
[2026-06-19 15:18:13,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:18:13,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:18:13,436.436 INFO    ] No update needed
[2026-06-19 15:18:13,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 15:18:13,472.472 INFO    ] 200
[2026-06-19 15:18:13,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:18:13,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:18:13,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:18:13,563.563 INFO    ] No camera update needed
[2026-06-19 15:18:13,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:18:13,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:18:13,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:18:13,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:18:15,619.619 INFO    ] ================================================
[2026-06-19 15:18:15,634.634 INFO    ] Launching Daemon at Fri Jun 19 15:18:15 IST 2026
[2026-06-19 15:18:15,645.645 INFO    ] ================================================
[2026-06-19 15:18:16,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:18:16
[2026-06-19 15:18:16,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:18:17,085.085 INFO    ] Initializing speech engine...
[2026-06-19 15:18:17,093.093 INFO    ] 2026-06-19 15:18:17
[2026-06-19 15:18:17,398.398 INFO    ] 2026-06-19 15:18:17
[2026-06-19 15:18:17,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:18:17,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:18:17,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:18:17,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:18:17,794.794 INFO    ] time= 19/06/2026 15:18:17
[2026-06-19 15:18:17,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:18:17,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:18:17,923.923 INFO    ] No existing commands found in stream
[2026-06-19 15:18:22,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:18:22,939.939 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 15:18:25,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:18:25,944.944 INFO    ] Checking for system updates...
[2026-06-19 15:18:25,981.981 INFO    ] 200
[2026-06-19 15:18:25,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:18:26,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:18:26,047.047 INFO    ] No update needed
[2026-06-19 15:18:26,050.050 INFO    ] Checking for camera pi updates...
[2026-06-19 15:18:26,084.084 INFO    ] 200
[2026-06-19 15:18:26,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:18:26,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:18:26,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:18:26,192.192 INFO    ] No camera update needed
[2026-06-19 15:18:26,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:18:26,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:18:26,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:18:26,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:18:28,250.250 INFO    ] ================================================
[2026-06-19 15:18:28,266.266 INFO    ] Launching Daemon at Fri Jun 19 15:18:28 IST 2026
[2026-06-19 15:18:28,277.277 INFO    ] ================================================
[2026-06-19 15:18:28,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:18:28
[2026-06-19 15:18:29,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:18:29,708.708 INFO    ] Initializing speech engine...
[2026-06-19 15:18:29,714.714 INFO    ] 2026-06-19 15:18:29
[2026-06-19 15:18:30,020.020 INFO    ] 2026-06-19 15:18:29
[2026-06-19 15:18:30,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:18:30,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:18:30,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:18:30,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:18:30,459.459 INFO    ] time= 19/06/2026 15:18:30
[2026-06-19 15:18:30,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:18:30,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:18:30,614.614 INFO    ] No existing commands found in stream
[2026-06-19 15:18:35,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:18:35,642.642 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 15:18:37,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:18:37,144.144 INFO    ] Checking for system updates...
[2026-06-19 15:18:37,181.181 INFO    ] 200
[2026-06-19 15:18:37,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:18:37,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:18:37,239.239 INFO    ] No update needed
[2026-06-19 15:18:37,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 15:18:37,275.275 INFO    ] 200
[2026-06-19 15:18:37,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:18:37,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:18:37,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:18:37,364.364 INFO    ] No camera update needed
[2026-06-19 15:18:37,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:18:37,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:18:37,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:18:37,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:18:39,423.423 INFO    ] ================================================
[2026-06-19 15:18:39,439.439 INFO    ] Launching Daemon at Fri Jun 19 15:18:39 IST 2026
[2026-06-19 15:18:39,449.449 INFO    ] ================================================
[2026-06-19 15:18:40,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:18:40
[2026-06-19 15:18:40,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:18:41,142.142 INFO    ] Initializing speech engine...
[2026-06-19 15:18:41,150.150 INFO    ] 2026-06-19 15:18:41
[2026-06-19 15:18:41,442.442 INFO    ] 2026-06-19 15:18:41
[2026-06-19 15:18:41,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:18:41,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:18:41,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:18:41,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:18:41,999.999 INFO    ] time= 19/06/2026 15:18:41
[2026-06-19 15:18:42,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:18:42,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:18:42,179.179 INFO    ] No existing commands found in stream
[2026-06-19 15:18:47,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:18:47,214.214 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 15:18:48,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:18:48,707.707 INFO    ] Checking for system updates...
[2026-06-19 15:18:48,744.744 INFO    ] 200
[2026-06-19 15:18:48,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:18:48,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:18:48,804.804 INFO    ] No update needed
[2026-06-19 15:18:48,807.807 INFO    ] Checking for camera pi updates...
[2026-06-19 15:18:48,843.843 INFO    ] 200
[2026-06-19 15:18:48,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:18:48,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:18:48,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:18:48,924.924 INFO    ] No camera update needed
[2026-06-19 15:18:48,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:18:48,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:18:48,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:18:48,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:18:50,986.986 INFO    ] ================================================
[2026-06-19 15:18:51,001.001 INFO    ] Launching Daemon at Fri Jun 19 15:18:50 IST 2026
[2026-06-19 15:18:51,012.012 INFO    ] ================================================
[2026-06-19 15:18:51,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:18:51
[2026-06-19 15:18:52,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:18:52,703.703 INFO    ] Initializing speech engine...
[2026-06-19 15:18:52,713.713 INFO    ] 2026-06-19 15:18:52
[2026-06-19 15:18:53,012.012 INFO    ] 2026-06-19 15:18:52
[2026-06-19 15:18:53,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:18:53,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:18:53,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:18:53,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:18:53,562.562 INFO    ] time= 19/06/2026 15:18:53
[2026-06-19 15:18:53,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:18:53,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:18:53,725.725 INFO    ] No existing commands found in stream
[2026-06-19 15:18:58,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:18:58,753.753 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 15:19:01,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:19:01,753.753 INFO    ] Checking for system updates...
[2026-06-19 15:19:01,789.789 INFO    ] 200
[2026-06-19 15:19:01,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:01,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:19:01,847.847 INFO    ] No update needed
[2026-06-19 15:19:01,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 15:19:01,907.907 INFO    ] 200
[2026-06-19 15:19:01,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:02,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:19:02,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:19:02,159.159 INFO    ] No camera update needed
[2026-06-19 15:19:02,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:19:02,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:19:02,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:19:02,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:19:04,230.230 INFO    ] ================================================
[2026-06-19 15:19:04,245.245 INFO    ] Launching Daemon at Fri Jun 19 15:19:04 IST 2026
[2026-06-19 15:19:04,256.256 INFO    ] ================================================
[2026-06-19 15:19:04,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:19:04
[2026-06-19 15:19:05,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:19:05,699.699 INFO    ] Initializing speech engine...
[2026-06-19 15:19:05,705.705 INFO    ] 2026-06-19 15:19:05
[2026-06-19 15:19:05,998.998 INFO    ] 2026-06-19 15:19:05
[2026-06-19 15:19:06,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:19:06,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:19:06,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:19:06,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:19:06,413.413 INFO    ] time= 19/06/2026 15:19:06
[2026-06-19 15:19:06,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:19:06,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:19:06,496.496 INFO    ] No existing commands found in stream
[2026-06-19 15:19:11,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:19:11,511.511 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 15:19:14,556.556 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:19:14,559.559 INFO    ] Checking for system updates...
[2026-06-19 15:19:14,595.595 INFO    ] 200
[2026-06-19 15:19:14,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:14,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:19:14,653.653 INFO    ] No update needed
[2026-06-19 15:19:14,655.655 INFO    ] Checking for camera pi updates...
[2026-06-19 15:19:14,690.690 INFO    ] 200
[2026-06-19 15:19:14,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:14,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:19:14,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:19:14,788.788 INFO    ] No camera update needed
[2026-06-19 15:19:14,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:19:14,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:19:14,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:19:14,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:19:16,844.844 INFO    ] ================================================
[2026-06-19 15:19:16,859.859 INFO    ] Launching Daemon at Fri Jun 19 15:19:16 IST 2026
[2026-06-19 15:19:16,870.870 INFO    ] ================================================
[2026-06-19 15:19:17,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:19:17
[2026-06-19 15:19:18,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:19:18,480.480 INFO    ] Initializing speech engine...
[2026-06-19 15:19:18,493.493 INFO    ] 2026-06-19 15:19:18
[2026-06-19 15:19:18,773.773 INFO    ] 2026-06-19 15:19:18
[2026-06-19 15:19:18,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:19:19,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:19:19,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:19:19,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:19:19,241.241 INFO    ] time= 19/06/2026 15:19:19
[2026-06-19 15:19:19,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:19:19,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:19:19,468.468 INFO    ] No existing commands found in stream
[2026-06-19 15:19:24,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:19:24,500.500 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 15:19:25,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:19:25,519.519 INFO    ] Checking for system updates...
[2026-06-19 15:19:25,556.556 INFO    ] 200
[2026-06-19 15:19:25,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:25,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:19:25,613.613 INFO    ] No update needed
[2026-06-19 15:19:25,616.616 INFO    ] Checking for camera pi updates...
[2026-06-19 15:19:25,650.650 INFO    ] 200
[2026-06-19 15:19:25,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:25,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:19:25,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:19:25,743.743 INFO    ] No camera update needed
[2026-06-19 15:19:25,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:19:25,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:19:25,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:19:25,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:19:27,798.798 INFO    ] ================================================
[2026-06-19 15:19:27,813.813 INFO    ] Launching Daemon at Fri Jun 19 15:19:27 IST 2026
[2026-06-19 15:19:27,824.824 INFO    ] ================================================
[2026-06-19 15:19:28,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:19:28
[2026-06-19 15:19:29,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:19:29,405.405 INFO    ] Initializing speech engine...
[2026-06-19 15:19:29,414.414 INFO    ] 2026-06-19 15:19:29
[2026-06-19 15:19:29,694.694 INFO    ] 2026-06-19 15:19:29
[2026-06-19 15:19:29,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:19:29,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:19:29,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:19:30,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:19:30,171.171 INFO    ] time= 19/06/2026 15:19:30
[2026-06-19 15:19:30,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:19:30,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:19:30,379.379 INFO    ] No existing commands found in stream
[2026-06-19 15:19:35,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:19:35,412.412 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 15:19:38,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:19:38,799.799 INFO    ] Checking for system updates...
[2026-06-19 15:19:38,836.836 INFO    ] 200
[2026-06-19 15:19:38,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:38,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:19:38,895.895 INFO    ] No update needed
[2026-06-19 15:19:38,897.897 INFO    ] Checking for camera pi updates...
[2026-06-19 15:19:38,931.931 INFO    ] 200
[2026-06-19 15:19:38,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:38,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:19:39,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:19:39,027.027 INFO    ] No camera update needed
[2026-06-19 15:19:39,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:19:39,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:19:39,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:19:39,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:19:41,083.083 INFO    ] ================================================
[2026-06-19 15:19:41,099.099 INFO    ] Launching Daemon at Fri Jun 19 15:19:41 IST 2026
[2026-06-19 15:19:41,110.110 INFO    ] ================================================
[2026-06-19 15:19:41,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:19:41
[2026-06-19 15:19:42,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:19:42,664.664 INFO    ] Initializing speech engine...
[2026-06-19 15:19:42,670.670 INFO    ] 2026-06-19 15:19:42
[2026-06-19 15:19:42,942.942 INFO    ] 2026-06-19 15:19:42
[2026-06-19 15:19:42,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:19:43,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:19:43,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:19:43,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:19:43,434.434 INFO    ] time= 19/06/2026 15:19:43
[2026-06-19 15:19:43,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:19:43,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:19:43,641.641 INFO    ] No existing commands found in stream
[2026-06-19 15:19:48,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:19:48,673.673 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 15:19:49,090.090 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:19:49,093.093 INFO    ] Checking for system updates...
[2026-06-19 15:19:49,130.130 INFO    ] 200
[2026-06-19 15:19:49,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:49,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:19:49,192.192 INFO    ] No update needed
[2026-06-19 15:19:49,194.194 INFO    ] Checking for camera pi updates...
[2026-06-19 15:19:49,230.230 INFO    ] 200
[2026-06-19 15:19:49,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:19:49,273.273 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:19:49,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:19:49,312.312 INFO    ] No camera update needed
[2026-06-19 15:19:49,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:19:49,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:19:49,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:19:49,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:19:51,367.367 INFO    ] ================================================
[2026-06-19 15:19:51,383.383 INFO    ] Launching Daemon at Fri Jun 19 15:19:51 IST 2026
[2026-06-19 15:19:51,394.394 INFO    ] ================================================
[2026-06-19 15:19:51,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:19:51
[2026-06-19 15:19:52,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:19:52,914.914 INFO    ] Initializing speech engine...
[2026-06-19 15:19:52,920.920 INFO    ] 2026-06-19 15:19:52
[2026-06-19 15:19:53,189.189 INFO    ] 2026-06-19 15:19:53
[2026-06-19 15:19:53,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:19:53,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:19:53,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:19:53,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:19:53,686.686 INFO    ] time= 19/06/2026 15:19:53
[2026-06-19 15:19:53,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:19:53,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:19:53,912.912 INFO    ] No existing commands found in stream
[2026-06-19 15:19:58,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:19:58,932.932 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 15:20:06,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:20:06,574.574 INFO    ] Checking for system updates...
[2026-06-19 15:20:06,611.611 INFO    ] 200
[2026-06-19 15:20:06,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:06,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:20:06,672.672 INFO    ] No update needed
[2026-06-19 15:20:06,674.674 INFO    ] Checking for camera pi updates...
[2026-06-19 15:20:06,709.709 INFO    ] 200
[2026-06-19 15:20:06,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:06,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:20:06,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:20:06,784.784 INFO    ] No camera update needed
[2026-06-19 15:20:06,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:20:06,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:20:06,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:20:06,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:20:08,840.840 INFO    ] ================================================
[2026-06-19 15:20:08,856.856 INFO    ] Launching Daemon at Fri Jun 19 15:20:08 IST 2026
[2026-06-19 15:20:08,867.867 INFO    ] ================================================
[2026-06-19 15:20:09,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:20:09
[2026-06-19 15:20:10,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:20:10,470.470 INFO    ] Initializing speech engine...
[2026-06-19 15:20:10,484.484 INFO    ] 2026-06-19 15:20:10
[2026-06-19 15:20:10,762.762 INFO    ] 2026-06-19 15:20:10
[2026-06-19 15:20:10,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:20:11,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:20:11,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:20:11,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:20:11,298.298 INFO    ] time= 19/06/2026 15:20:11
[2026-06-19 15:20:11,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:20:11,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:20:11,448.448 INFO    ] No existing commands found in stream
[2026-06-19 15:20:16,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:20:16,468.468 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 15:20:19,470.470 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:20:19,473.473 INFO    ] Checking for system updates...
[2026-06-19 15:20:19,511.511 INFO    ] 200
[2026-06-19 15:20:19,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:19,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:20:19,569.569 INFO    ] No update needed
[2026-06-19 15:20:19,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 15:20:19,605.605 INFO    ] 200
[2026-06-19 15:20:19,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:19,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:20:19,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:20:19,705.705 INFO    ] No camera update needed
[2026-06-19 15:20:19,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:20:19,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:20:19,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:20:19,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:20:21,759.759 INFO    ] ================================================
[2026-06-19 15:20:21,774.774 INFO    ] Launching Daemon at Fri Jun 19 15:20:21 IST 2026
[2026-06-19 15:20:21,785.785 INFO    ] ================================================
[2026-06-19 15:20:22,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:20:22
[2026-06-19 15:20:23,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:20:23,394.394 INFO    ] Initializing speech engine...
[2026-06-19 15:20:23,400.400 INFO    ] 2026-06-19 15:20:23
[2026-06-19 15:20:23,672.672 INFO    ] 2026-06-19 15:20:23
[2026-06-19 15:20:23,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:20:23,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:20:23,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:20:24,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:20:24,229.229 INFO    ] time= 19/06/2026 15:20:24
[2026-06-19 15:20:24,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:20:24,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:20:24,385.385 INFO    ] No existing commands found in stream
[2026-06-19 15:20:29,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:20:29,415.415 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 15:20:30,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:20:30,472.472 INFO    ] Checking for system updates...
[2026-06-19 15:20:30,508.508 INFO    ] 200
[2026-06-19 15:20:30,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:30,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:20:30,569.569 INFO    ] No update needed
[2026-06-19 15:20:30,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 15:20:30,605.605 INFO    ] 200
[2026-06-19 15:20:30,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:30,648.648 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:20:30,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:20:30,699.699 INFO    ] No camera update needed
[2026-06-19 15:20:30,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:20:30,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:20:30,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:20:30,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:20:32,755.755 INFO    ] ================================================
[2026-06-19 15:20:32,773.773 INFO    ] Launching Daemon at Fri Jun 19 15:20:32 IST 2026
[2026-06-19 15:20:32,785.785 INFO    ] ================================================
[2026-06-19 15:20:33,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:20:33
[2026-06-19 15:20:34,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:20:34,325.325 INFO    ] Initializing speech engine...
[2026-06-19 15:20:34,338.338 INFO    ] 2026-06-19 15:20:34
[2026-06-19 15:20:34,620.620 INFO    ] 2026-06-19 15:20:34
[2026-06-19 15:20:34,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:20:34,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:20:34,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:20:35,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:20:35,041.041 INFO    ] time= 19/06/2026 15:20:35
[2026-06-19 15:20:35,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:20:35,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:20:35,245.245 INFO    ] No existing commands found in stream
[2026-06-19 15:20:40,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:20:40,273.273 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 15:20:41,185.185 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:20:41,187.187 INFO    ] Checking for system updates...
[2026-06-19 15:20:41,223.223 INFO    ] 200
[2026-06-19 15:20:41,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:41,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:20:41,284.284 INFO    ] No update needed
[2026-06-19 15:20:41,287.287 INFO    ] Checking for camera pi updates...
[2026-06-19 15:20:41,321.321 INFO    ] 200
[2026-06-19 15:20:41,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:41,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:20:41,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:20:41,412.412 INFO    ] No camera update needed
[2026-06-19 15:20:41,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:20:41,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:20:41,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:20:41,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:20:43,469.469 INFO    ] ================================================
[2026-06-19 15:20:43,485.485 INFO    ] Launching Daemon at Fri Jun 19 15:20:43 IST 2026
[2026-06-19 15:20:43,496.496 INFO    ] ================================================
[2026-06-19 15:20:44,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:20:44
[2026-06-19 15:20:44,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:20:45,090.090 INFO    ] Initializing speech engine...
[2026-06-19 15:20:45,099.099 INFO    ] 2026-06-19 15:20:45
[2026-06-19 15:20:45,373.373 INFO    ] 2026-06-19 15:20:45
[2026-06-19 15:20:45,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:20:45,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:20:45,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:20:45,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:20:45,924.924 INFO    ] time= 19/06/2026 15:20:45
[2026-06-19 15:20:45,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:20:45,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:20:46,082.082 INFO    ] No existing commands found in stream
[2026-06-19 15:20:51,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:20:51,109.109 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 15:20:54,187.187 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:20:54,190.190 INFO    ] Checking for system updates...
[2026-06-19 15:20:54,227.227 INFO    ] 200
[2026-06-19 15:20:54,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:54,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:20:54,286.286 INFO    ] No update needed
[2026-06-19 15:20:54,289.289 INFO    ] Checking for camera pi updates...
[2026-06-19 15:20:54,323.323 INFO    ] 200
[2026-06-19 15:20:54,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:20:54,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:20:54,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:20:54,413.413 INFO    ] No camera update needed
[2026-06-19 15:20:54,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:20:54,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:20:54,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:20:54,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:20:56,469.469 INFO    ] ================================================
[2026-06-19 15:20:56,485.485 INFO    ] Launching Daemon at Fri Jun 19 15:20:56 IST 2026
[2026-06-19 15:20:56,496.496 INFO    ] ================================================
[2026-06-19 15:20:57,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:20:57
[2026-06-19 15:20:57,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:20:57,999.999 INFO    ] Initializing speech engine...
[2026-06-19 15:20:58,008.008 INFO    ] 2026-06-19 15:20:58
[2026-06-19 15:20:58,303.303 INFO    ] 2026-06-19 15:20:58
[2026-06-19 15:20:58,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:20:58,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:20:58,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:20:58,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:20:58,714.714 INFO    ] time= 19/06/2026 15:20:58
[2026-06-19 15:20:58,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:20:58,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:20:58,799.799 INFO    ] No existing commands found in stream
[2026-06-19 15:21:03,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:21:03,827.827 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 15:21:07,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:21:07,919.919 INFO    ] Checking for system updates...
[2026-06-19 15:21:07,955.955 INFO    ] 200
[2026-06-19 15:21:07,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:08,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:21:08,014.014 INFO    ] No update needed
[2026-06-19 15:21:08,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 15:21:08,050.050 INFO    ] 200
[2026-06-19 15:21:08,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:08,093.093 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:21:08,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:21:08,250.250 INFO    ] No camera update needed
[2026-06-19 15:21:08,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:21:08,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:21:08,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:21:08,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:21:10,307.307 INFO    ] ================================================
[2026-06-19 15:21:10,322.322 INFO    ] Launching Daemon at Fri Jun 19 15:21:10 IST 2026
[2026-06-19 15:21:10,334.334 INFO    ] ================================================
[2026-06-19 15:21:10,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:21:10
[2026-06-19 15:21:11,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:21:11,998.998 INFO    ] Initializing speech engine...
[2026-06-19 15:21:12,010.010 INFO    ] 2026-06-19 15:21:12
[2026-06-19 15:21:12,323.323 INFO    ] 2026-06-19 15:21:12
[2026-06-19 15:21:12,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:21:12,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:21:12,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:21:12,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:21:12,829.829 INFO    ] time= 19/06/2026 15:21:12
[2026-06-19 15:21:12,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:21:12,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:21:12,997.997 INFO    ] No existing commands found in stream
[2026-06-19 15:21:18,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:21:18,030.030 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 15:21:22,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:21:22,067.067 INFO    ] Checking for system updates...
[2026-06-19 15:21:22,105.105 INFO    ] 200
[2026-06-19 15:21:22,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:22,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:21:22,163.163 INFO    ] No update needed
[2026-06-19 15:21:22,166.166 INFO    ] Checking for camera pi updates...
[2026-06-19 15:21:22,203.203 INFO    ] 200
[2026-06-19 15:21:22,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:22,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:21:22,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:21:22,295.295 INFO    ] No camera update needed
[2026-06-19 15:21:22,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:21:22,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:21:22,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:21:22,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:21:24,351.351 INFO    ] ================================================
[2026-06-19 15:21:24,367.367 INFO    ] Launching Daemon at Fri Jun 19 15:21:24 IST 2026
[2026-06-19 15:21:24,379.379 INFO    ] ================================================
[2026-06-19 15:21:24,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:21:24
[2026-06-19 15:21:25,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:21:25,800.800 INFO    ] Initializing speech engine...
[2026-06-19 15:21:25,809.809 INFO    ] 2026-06-19 15:21:25
[2026-06-19 15:21:26,106.106 INFO    ] 2026-06-19 15:21:26
[2026-06-19 15:21:26,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:21:26,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:21:26,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:21:26,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:21:26,494.494 INFO    ] time= 19/06/2026 15:21:26
[2026-06-19 15:21:26,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:21:26,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:21:26,622.622 INFO    ] No existing commands found in stream
[2026-06-19 15:21:31,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:21:31,638.638 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 15:21:33,875.875 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:21:33,878.878 INFO    ] Checking for system updates...
[2026-06-19 15:21:33,914.914 INFO    ] 200
[2026-06-19 15:21:33,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:33,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:21:33,972.972 INFO    ] No update needed
[2026-06-19 15:21:33,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 15:21:34,009.009 INFO    ] 200
[2026-06-19 15:21:34,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:34,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:21:34,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:21:34,097.097 INFO    ] No camera update needed
[2026-06-19 15:21:34,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:21:34,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:21:34,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:21:34,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:21:36,153.153 INFO    ] ================================================
[2026-06-19 15:21:36,168.168 INFO    ] Launching Daemon at Fri Jun 19 15:21:36 IST 2026
[2026-06-19 15:21:36,180.180 INFO    ] ================================================
[2026-06-19 15:21:36,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:21:36
[2026-06-19 15:21:37,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:21:37,608.608 INFO    ] Initializing speech engine...
[2026-06-19 15:21:37,634.634 INFO    ] 2026-06-19 15:21:37
[2026-06-19 15:21:37,891.891 INFO    ] 2026-06-19 15:21:37
[2026-06-19 15:21:37,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:21:38,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:21:38,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:21:38,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:21:38,400.400 INFO    ] time= 19/06/2026 15:21:38
[2026-06-19 15:21:38,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:21:38,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:21:38,596.596 INFO    ] No existing commands found in stream
[2026-06-19 15:21:43,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:21:43,624.624 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 15:21:45,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:21:45,924.924 INFO    ] Checking for system updates...
[2026-06-19 15:21:45,960.960 INFO    ] 200
[2026-06-19 15:21:45,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:46,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:21:46,018.018 INFO    ] No update needed
[2026-06-19 15:21:46,021.021 INFO    ] Checking for camera pi updates...
[2026-06-19 15:21:46,054.054 INFO    ] 200
[2026-06-19 15:21:46,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:46,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:21:46,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:21:46,149.149 INFO    ] No camera update needed
[2026-06-19 15:21:46,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:21:46,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:21:46,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:21:46,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:21:48,204.204 INFO    ] ================================================
[2026-06-19 15:21:48,220.220 INFO    ] Launching Daemon at Fri Jun 19 15:21:48 IST 2026
[2026-06-19 15:21:48,233.233 INFO    ] ================================================
[2026-06-19 15:21:48,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:21:48
[2026-06-19 15:21:49,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:21:49,634.634 INFO    ] Initializing speech engine...
[2026-06-19 15:21:49,656.656 INFO    ] 2026-06-19 15:21:49
[2026-06-19 15:21:49,911.911 INFO    ] 2026-06-19 15:21:49
[2026-06-19 15:21:49,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:21:50,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:21:50,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:21:50,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:21:50,384.384 INFO    ] time= 19/06/2026 15:21:50
[2026-06-19 15:21:50,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:21:50,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:21:50,629.629 INFO    ] No existing commands found in stream
[2026-06-19 15:21:55,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:21:55,649.649 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 15:21:59,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:21:59,508.508 INFO    ] Checking for system updates...
[2026-06-19 15:21:59,545.545 INFO    ] 200
[2026-06-19 15:21:59,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:59,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:21:59,604.604 INFO    ] No update needed
[2026-06-19 15:21:59,606.606 INFO    ] Checking for camera pi updates...
[2026-06-19 15:21:59,644.644 INFO    ] 200
[2026-06-19 15:21:59,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:21:59,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:21:59,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:21:59,734.734 INFO    ] No camera update needed
[2026-06-19 15:21:59,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:21:59,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:21:59,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:21:59,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:22:01,793.793 INFO    ] ================================================
[2026-06-19 15:22:01,816.816 INFO    ] Launching Daemon at Fri Jun 19 15:22:01 IST 2026
[2026-06-19 15:22:01,830.830 INFO    ] ================================================
[2026-06-19 15:22:02,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:22:02
[2026-06-19 15:22:03,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:22:03,532.532 INFO    ] Initializing speech engine...
[2026-06-19 15:22:03,543.543 INFO    ] 2026-06-19 15:22:03
[2026-06-19 15:22:03,812.812 INFO    ] 2026-06-19 15:22:03
[2026-06-19 15:22:03,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:22:04,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:22:04,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:22:04,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:22:04,348.348 INFO    ] time= 19/06/2026 15:22:04
[2026-06-19 15:22:04,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:22:04,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:22:04,509.509 INFO    ] No existing commands found in stream
[2026-06-19 15:22:09,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:22:09,539.539 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 15:22:13,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:22:13,040.040 INFO    ] Checking for system updates...
[2026-06-19 15:22:13,078.078 INFO    ] 200
[2026-06-19 15:22:13,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:22:13,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:22:13,138.138 INFO    ] No update needed
[2026-06-19 15:22:13,140.140 INFO    ] Checking for camera pi updates...
[2026-06-19 15:22:13,175.175 INFO    ] 200
[2026-06-19 15:22:13,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:22:13,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:22:13,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:22:13,256.256 INFO    ] No camera update needed
[2026-06-19 15:22:13,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:22:13,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:22:13,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:22:13,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:22:15,314.314 INFO    ] ================================================
[2026-06-19 15:22:15,330.330 INFO    ] Launching Daemon at Fri Jun 19 15:22:15 IST 2026
[2026-06-19 15:22:15,341.341 INFO    ] ================================================
[2026-06-19 15:22:15,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:22:15
[2026-06-19 15:22:16,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:22:16,750.750 INFO    ] Initializing speech engine...
[2026-06-19 15:22:16,759.759 INFO    ] 2026-06-19 15:22:16
[2026-06-19 15:22:17,054.054 INFO    ] 2026-06-19 15:22:17
[2026-06-19 15:22:17,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:22:17,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:22:17,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:22:17,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:22:17,552.552 INFO    ] time= 19/06/2026 15:22:17
[2026-06-19 15:22:17,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:22:17,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:22:17,759.759 INFO    ] No existing commands found in stream
[2026-06-19 15:22:22,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:22:22,772.772 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 15:22:23,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:22:23,893.893 INFO    ] Checking for system updates...
[2026-06-19 15:22:23,930.930 INFO    ] 200
[2026-06-19 15:22:23,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:22:23,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:22:23,987.987 INFO    ] No update needed
[2026-06-19 15:22:23,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 15:22:24,024.024 INFO    ] 200
[2026-06-19 15:22:24,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:22:24,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:22:24,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:22:24,122.122 INFO    ] No camera update needed
[2026-06-19 15:22:24,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:22:24,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:22:24,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:22:24,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:22:26,179.179 INFO    ] ================================================
[2026-06-19 15:22:26,194.194 INFO    ] Launching Daemon at Fri Jun 19 15:22:26 IST 2026
[2026-06-19 15:22:26,205.205 INFO    ] ================================================
[2026-06-19 15:22:26,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:22:26
[2026-06-19 15:22:27,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:22:27,847.847 INFO    ] Initializing speech engine...
[2026-06-19 15:22:27,860.860 INFO    ] 2026-06-19 15:22:27
[2026-06-19 15:22:28,146.146 INFO    ] 2026-06-19 15:22:28
[2026-06-19 15:22:28,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:22:28,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:22:28,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:22:28,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:22:28,690.690 INFO    ] time= 19/06/2026 15:22:28
[2026-06-19 15:22:28,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:22:28,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:22:28,871.871 INFO    ] No existing commands found in stream
[2026-06-19 15:22:33,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:22:33,905.905 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 15:22:38,288.288 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:22:38,291.291 INFO    ] Checking for system updates...
[2026-06-19 15:22:38,332.332 INFO    ] 200
[2026-06-19 15:22:38,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:22:38,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:22:38,392.392 INFO    ] No update needed
[2026-06-19 15:22:38,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 15:22:38,431.431 INFO    ] 200
[2026-06-19 15:22:38,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:22:38,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:22:38,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:22:38,522.522 INFO    ] No camera update needed
[2026-06-19 15:22:38,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:22:38,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:22:38,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:22:38,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:22:40,581.581 INFO    ] ================================================
[2026-06-19 15:22:40,598.598 INFO    ] Launching Daemon at Fri Jun 19 15:22:40 IST 2026
[2026-06-19 15:22:40,609.609 INFO    ] ================================================
[2026-06-19 15:22:41,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:22:41
[2026-06-19 15:22:41,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:22:42,051.051 INFO    ] Initializing speech engine...
[2026-06-19 15:22:42,062.062 INFO    ] 2026-06-19 15:22:42
[2026-06-19 15:22:42,322.322 INFO    ] 2026-06-19 15:22:42
[2026-06-19 15:22:42,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:22:42,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:22:42,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:22:42,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:22:42,816.816 INFO    ] time= 19/06/2026 15:22:42
[2026-06-19 15:22:42,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:22:42,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:22:43,031.031 INFO    ] No existing commands found in stream
[2026-06-19 15:22:48,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:22:48,057.057 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 15:22:49,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:22:49,278.278 INFO    ] Checking for system updates...
[2026-06-19 15:22:49,314.314 INFO    ] 200
[2026-06-19 15:22:49,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:22:49,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:22:49,372.372 INFO    ] No update needed
[2026-06-19 15:22:49,374.374 INFO    ] Checking for camera pi updates...
[2026-06-19 15:22:49,408.408 INFO    ] 200
[2026-06-19 15:22:49,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:22:49,451.451 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:22:49,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:22:49,488.488 INFO    ] No camera update needed
[2026-06-19 15:22:49,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:22:49,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:22:49,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:22:49,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:22:51,544.544 INFO    ] ================================================
[2026-06-19 15:22:51,560.560 INFO    ] Launching Daemon at Fri Jun 19 15:22:51 IST 2026
[2026-06-19 15:22:51,572.572 INFO    ] ================================================
[2026-06-19 15:22:52,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:22:52
[2026-06-19 15:22:52,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:22:52,990.990 INFO    ] Initializing speech engine...
[2026-06-19 15:22:53,004.004 INFO    ] 2026-06-19 15:22:52
[2026-06-19 15:22:53,272.272 INFO    ] 2026-06-19 15:22:53
[2026-06-19 15:22:53,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:22:53,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:22:53,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:22:53,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:22:53,753.753 INFO    ] time= 19/06/2026 15:22:53
[2026-06-19 15:22:53,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:22:53,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:22:53,991.991 INFO    ] No existing commands found in stream
[2026-06-19 15:22:59,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:22:59,012.012 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 15:23:03,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:23:03,281.281 INFO    ] Checking for system updates...
[2026-06-19 15:23:03,317.317 INFO    ] 200
[2026-06-19 15:23:03,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:03,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:23:03,381.381 INFO    ] No update needed
[2026-06-19 15:23:03,383.383 INFO    ] Checking for camera pi updates...
[2026-06-19 15:23:03,417.417 INFO    ] 200
[2026-06-19 15:23:03,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:03,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:23:03,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:23:03,506.506 INFO    ] No camera update needed
[2026-06-19 15:23:03,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:23:03,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:23:03,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:23:03,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:23:05,562.562 INFO    ] ================================================
[2026-06-19 15:23:05,578.578 INFO    ] Launching Daemon at Fri Jun 19 15:23:05 IST 2026
[2026-06-19 15:23:05,588.588 INFO    ] ================================================
[2026-06-19 15:23:06,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:23:06
[2026-06-19 15:23:06,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:23:07,171.171 INFO    ] Initializing speech engine...
[2026-06-19 15:23:07,180.180 INFO    ] 2026-06-19 15:23:07
[2026-06-19 15:23:07,469.469 INFO    ] 2026-06-19 15:23:07
[2026-06-19 15:23:07,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:23:07,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:23:07,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:23:08,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:23:08,072.072 INFO    ] time= 19/06/2026 15:23:08
[2026-06-19 15:23:08,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:23:08,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:23:08,291.291 INFO    ] No existing commands found in stream
[2026-06-19 15:23:13,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:23:13,323.323 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 15:23:15,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:23:15,881.881 INFO    ] Checking for system updates...
[2026-06-19 15:23:15,918.918 INFO    ] 200
[2026-06-19 15:23:15,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:15,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:23:15,978.978 INFO    ] No update needed
[2026-06-19 15:23:15,981.981 INFO    ] Checking for camera pi updates...
[2026-06-19 15:23:16,016.016 INFO    ] 200
[2026-06-19 15:23:16,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:16,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:23:16,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:23:16,214.214 INFO    ] No camera update needed
[2026-06-19 15:23:16,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:23:16,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:23:16,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:23:16,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:23:18,273.273 INFO    ] ================================================
[2026-06-19 15:23:18,288.288 INFO    ] Launching Daemon at Fri Jun 19 15:23:18 IST 2026
[2026-06-19 15:23:18,299.299 INFO    ] ================================================
[2026-06-19 15:23:18,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:23:18
[2026-06-19 15:23:19,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:23:19,911.911 INFO    ] Initializing speech engine...
[2026-06-19 15:23:19,918.918 INFO    ] 2026-06-19 15:23:19
[2026-06-19 15:23:20,231.231 INFO    ] 2026-06-19 15:23:20
[2026-06-19 15:23:20,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:23:20,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:23:20,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:23:20,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:23:20,752.752 INFO    ] time= 19/06/2026 15:23:20
[2026-06-19 15:23:20,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:23:20,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:23:20,860.860 INFO    ] No existing commands found in stream
[2026-06-19 15:23:25,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:23:25,873.873 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 15:23:27,944.944 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:23:27,947.947 INFO    ] Checking for system updates...
[2026-06-19 15:23:27,982.982 INFO    ] 200
[2026-06-19 15:23:27,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:28,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:23:28,039.039 INFO    ] No update needed
[2026-06-19 15:23:28,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 15:23:28,076.076 INFO    ] 200
[2026-06-19 15:23:28,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:28,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:23:28,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:23:28,167.167 INFO    ] No camera update needed
[2026-06-19 15:23:28,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:23:28,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:23:28,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:23:28,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:23:30,222.222 INFO    ] ================================================
[2026-06-19 15:23:30,237.237 INFO    ] Launching Daemon at Fri Jun 19 15:23:30 IST 2026
[2026-06-19 15:23:30,247.247 INFO    ] ================================================
[2026-06-19 15:23:30,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:23:30
[2026-06-19 15:23:31,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:23:31,748.748 INFO    ] Initializing speech engine...
[2026-06-19 15:23:31,762.762 INFO    ] 2026-06-19 15:23:31
[2026-06-19 15:23:32,046.046 INFO    ] 2026-06-19 15:23:32
[2026-06-19 15:23:32,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:23:32,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:23:32,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:23:32,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:23:32,522.522 INFO    ] time= 19/06/2026 15:23:32
[2026-06-19 15:23:32,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:23:32,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:23:32,724.724 INFO    ] No existing commands found in stream
[2026-06-19 15:23:37,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:23:37,752.752 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 15:23:40,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:23:40,909.909 INFO    ] Checking for system updates...
[2026-06-19 15:23:40,946.946 INFO    ] 200
[2026-06-19 15:23:40,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:41,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:23:41,011.011 INFO    ] No update needed
[2026-06-19 15:23:41,014.014 INFO    ] Checking for camera pi updates...
[2026-06-19 15:23:41,053.053 INFO    ] 200
[2026-06-19 15:23:41,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:41,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:23:41,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:23:41,152.152 INFO    ] No camera update needed
[2026-06-19 15:23:41,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:23:41,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:23:41,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:23:41,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:23:43,208.208 INFO    ] ================================================
[2026-06-19 15:23:43,223.223 INFO    ] Launching Daemon at Fri Jun 19 15:23:43 IST 2026
[2026-06-19 15:23:43,234.234 INFO    ] ================================================
[2026-06-19 15:23:43,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:23:43
[2026-06-19 15:23:44,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:23:44,634.634 INFO    ] Initializing speech engine...
[2026-06-19 15:23:44,640.640 INFO    ] 2026-06-19 15:23:44
[2026-06-19 15:23:44,911.911 INFO    ] 2026-06-19 15:23:44
[2026-06-19 15:23:44,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:23:45,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:23:45,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:23:45,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:23:45,406.406 INFO    ] time= 19/06/2026 15:23:45
[2026-06-19 15:23:45,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:23:45,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:23:45,599.599 INFO    ] No existing commands found in stream
[2026-06-19 15:23:50,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:23:50,631.631 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 15:23:51,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:23:51,914.914 INFO    ] Checking for system updates...
[2026-06-19 15:23:51,951.951 INFO    ] 200
[2026-06-19 15:23:51,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:52,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:23:52,010.010 INFO    ] No update needed
[2026-06-19 15:23:52,013.013 INFO    ] Checking for camera pi updates...
[2026-06-19 15:23:52,048.048 INFO    ] 200
[2026-06-19 15:23:52,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:23:52,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:23:52,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:23:52,149.149 INFO    ] No camera update needed
[2026-06-19 15:23:52,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:23:52,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:23:52,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:23:52,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:23:54,206.206 INFO    ] ================================================
[2026-06-19 15:23:54,221.221 INFO    ] Launching Daemon at Fri Jun 19 15:23:54 IST 2026
[2026-06-19 15:23:54,231.231 INFO    ] ================================================
[2026-06-19 15:23:54,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:23:54
[2026-06-19 15:23:55,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:23:55,625.625 INFO    ] Initializing speech engine...
[2026-06-19 15:23:55,639.639 INFO    ] 2026-06-19 15:23:55
[2026-06-19 15:23:55,905.905 INFO    ] 2026-06-19 15:23:55
[2026-06-19 15:23:55,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:23:56,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:23:56,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:23:56,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:23:56,416.416 INFO    ] time= 19/06/2026 15:23:56
[2026-06-19 15:23:56,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:23:56,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:23:56,628.628 INFO    ] No existing commands found in stream
[2026-06-19 15:24:01,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:24:01,647.647 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-19 15:24:05,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:24:05,431.431 INFO    ] Checking for system updates...
[2026-06-19 15:24:05,466.466 INFO    ] 200
[2026-06-19 15:24:05,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:05,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:24:05,526.526 INFO    ] No update needed
[2026-06-19 15:24:05,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 15:24:05,561.561 INFO    ] 200
[2026-06-19 15:24:05,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:05,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:24:05,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:24:05,651.651 INFO    ] No camera update needed
[2026-06-19 15:24:05,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:24:05,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:24:05,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:24:05,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:24:07,708.708 INFO    ] ================================================
[2026-06-19 15:24:07,723.723 INFO    ] Launching Daemon at Fri Jun 19 15:24:07 IST 2026
[2026-06-19 15:24:07,733.733 INFO    ] ================================================
[2026-06-19 15:24:08,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:24:08
[2026-06-19 15:24:08,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:24:09,200.200 INFO    ] Initializing speech engine...
[2026-06-19 15:24:09,209.209 INFO    ] 2026-06-19 15:24:09
[2026-06-19 15:24:09,456.456 INFO    ] 2026-06-19 15:24:09
[2026-06-19 15:24:09,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:24:09,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:24:09,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:24:09,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:24:09,824.824 INFO    ] time= 19/06/2026 15:24:09
[2026-06-19 15:24:09,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:24:09,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:24:09,961.961 INFO    ] No existing commands found in stream
[2026-06-19 15:24:14,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:24:14,999.999 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 15:24:15,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:24:15,915.915 INFO    ] Checking for system updates...
[2026-06-19 15:24:15,952.952 INFO    ] 200
[2026-06-19 15:24:15,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:16,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:24:16,018.018 INFO    ] No update needed
[2026-06-19 15:24:16,021.021 INFO    ] Checking for camera pi updates...
[2026-06-19 15:24:16,056.056 INFO    ] 200
[2026-06-19 15:24:16,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:16,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:24:16,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:24:16,147.147 INFO    ] No camera update needed
[2026-06-19 15:24:16,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:24:16,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:24:16,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:24:16,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:24:18,206.206 INFO    ] ================================================
[2026-06-19 15:24:18,222.222 INFO    ] Launching Daemon at Fri Jun 19 15:24:18 IST 2026
[2026-06-19 15:24:18,233.233 INFO    ] ================================================
[2026-06-19 15:24:18,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:24:18
[2026-06-19 15:24:19,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:24:19,658.658 INFO    ] Initializing speech engine...
[2026-06-19 15:24:19,667.667 INFO    ] 2026-06-19 15:24:19
[2026-06-19 15:24:19,918.918 INFO    ] 2026-06-19 15:24:19
[2026-06-19 15:24:19,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:24:20,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:24:20,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:24:20,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:24:20,444.444 INFO    ] time= 19/06/2026 15:24:20
[2026-06-19 15:24:20,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:24:20,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:24:20,642.642 INFO    ] No existing commands found in stream
[2026-06-19 15:24:25,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:24:25,659.659 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 15:24:30,035.035 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:24:30,038.038 INFO    ] Checking for system updates...
[2026-06-19 15:24:30,074.074 INFO    ] 200
[2026-06-19 15:24:30,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:30,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:24:30,135.135 INFO    ] No update needed
[2026-06-19 15:24:30,138.138 INFO    ] Checking for camera pi updates...
[2026-06-19 15:24:30,176.176 INFO    ] 200
[2026-06-19 15:24:30,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:30,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:24:30,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:24:30,263.263 INFO    ] No camera update needed
[2026-06-19 15:24:30,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:24:30,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:24:30,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:24:30,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:24:32,322.322 INFO    ] ================================================
[2026-06-19 15:24:32,339.339 INFO    ] Launching Daemon at Fri Jun 19 15:24:32 IST 2026
[2026-06-19 15:24:32,351.351 INFO    ] ================================================
[2026-06-19 15:24:32,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:24:32
[2026-06-19 15:24:33,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:24:33,761.761 INFO    ] Initializing speech engine...
[2026-06-19 15:24:33,776.776 INFO    ] 2026-06-19 15:24:33
[2026-06-19 15:24:34,041.041 INFO    ] 2026-06-19 15:24:34
[2026-06-19 15:24:34,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:24:34,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:24:34,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:24:34,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:24:34,538.538 INFO    ] time= 19/06/2026 15:24:34
[2026-06-19 15:24:34,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:24:34,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:24:34,741.741 INFO    ] No existing commands found in stream
[2026-06-19 15:24:39,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:24:39,769.769 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 15:24:43,258.258 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:24:43,262.262 INFO    ] Checking for system updates...
[2026-06-19 15:24:43,299.299 INFO    ] 200
[2026-06-19 15:24:43,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:43,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:24:43,358.358 INFO    ] No update needed
[2026-06-19 15:24:43,360.360 INFO    ] Checking for camera pi updates...
[2026-06-19 15:24:43,395.395 INFO    ] 200
[2026-06-19 15:24:43,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:43,439.439 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:24:43,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:24:43,490.490 INFO    ] No camera update needed
[2026-06-19 15:24:43,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:24:43,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:24:43,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:24:43,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:24:45,548.548 INFO    ] ================================================
[2026-06-19 15:24:45,563.563 INFO    ] Launching Daemon at Fri Jun 19 15:24:45 IST 2026
[2026-06-19 15:24:45,574.574 INFO    ] ================================================
[2026-06-19 15:24:46,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:24:46
[2026-06-19 15:24:46,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:24:47,178.178 INFO    ] Initializing speech engine...
[2026-06-19 15:24:47,190.190 INFO    ] 2026-06-19 15:24:47
[2026-06-19 15:24:47,469.469 INFO    ] 2026-06-19 15:24:47
[2026-06-19 15:24:47,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:24:47,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:24:47,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:24:47,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:24:48,004.004 INFO    ] time= 19/06/2026 15:24:47
[2026-06-19 15:24:48,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:24:48,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:24:48,160.160 INFO    ] No existing commands found in stream
[2026-06-19 15:24:53,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:24:53,176.176 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 15:24:54,068.068 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:24:54,071.071 INFO    ] Checking for system updates...
[2026-06-19 15:24:54,108.108 INFO    ] 200
[2026-06-19 15:24:54,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:54,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:24:54,174.174 INFO    ] No update needed
[2026-06-19 15:24:54,177.177 INFO    ] Checking for camera pi updates...
[2026-06-19 15:24:54,215.215 INFO    ] 200
[2026-06-19 15:24:54,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:24:54,259.259 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:24:54,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:24:54,310.310 INFO    ] No camera update needed
[2026-06-19 15:24:54,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:24:54,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:24:54,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:24:54,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:24:56,368.368 INFO    ] ================================================
[2026-06-19 15:24:56,384.384 INFO    ] Launching Daemon at Fri Jun 19 15:24:56 IST 2026
[2026-06-19 15:24:56,396.396 INFO    ] ================================================
[2026-06-19 15:24:57,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:24:57
[2026-06-19 15:24:57,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:24:58,018.018 INFO    ] Initializing speech engine...
[2026-06-19 15:24:58,029.029 INFO    ] 2026-06-19 15:24:58
[2026-06-19 15:24:58,369.369 INFO    ] 2026-06-19 15:24:58
[2026-06-19 15:24:58,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:24:58,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:24:58,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:24:58,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:24:58,903.903 INFO    ] time= 19/06/2026 15:24:58
[2026-06-19 15:24:58,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:24:58,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:24:59,079.079 INFO    ] No existing commands found in stream
[2026-06-19 15:25:04,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:25:04,109.109 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 15:25:07,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:25:07,068.068 INFO    ] Checking for system updates...
[2026-06-19 15:25:07,106.106 INFO    ] 200
[2026-06-19 15:25:07,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:07,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:25:07,166.166 INFO    ] No update needed
[2026-06-19 15:25:07,168.168 INFO    ] Checking for camera pi updates...
[2026-06-19 15:25:07,202.202 INFO    ] 200
[2026-06-19 15:25:07,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:07,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:25:07,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:25:07,302.302 INFO    ] No camera update needed
[2026-06-19 15:25:07,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:25:07,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:25:07,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:25:07,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:25:09,359.359 INFO    ] ================================================
[2026-06-19 15:25:09,375.375 INFO    ] Launching Daemon at Fri Jun 19 15:25:09 IST 2026
[2026-06-19 15:25:09,385.385 INFO    ] ================================================
[2026-06-19 15:25:09,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:25:09
[2026-06-19 15:25:10,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:25:10,851.851 INFO    ] Initializing speech engine...
[2026-06-19 15:25:10,861.861 INFO    ] 2026-06-19 15:25:10
[2026-06-19 15:25:11,109.109 INFO    ] 2026-06-19 15:25:11
[2026-06-19 15:25:11,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:25:11,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:25:11,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:25:11,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:25:11,629.629 INFO    ] time= 19/06/2026 15:25:11
[2026-06-19 15:25:11,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:25:11,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:25:11,822.822 INFO    ] No existing commands found in stream
[2026-06-19 15:25:16,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:25:16,838.838 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 15:25:17,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:25:17,273.273 INFO    ] Checking for system updates...
[2026-06-19 15:25:17,309.309 INFO    ] 200
[2026-06-19 15:25:17,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:17,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:25:17,366.366 INFO    ] No update needed
[2026-06-19 15:25:17,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 15:25:17,403.403 INFO    ] 200
[2026-06-19 15:25:17,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:17,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:25:17,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:25:17,596.596 INFO    ] No camera update needed
[2026-06-19 15:25:17,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:25:17,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:25:17,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:25:17,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:25:19,652.652 INFO    ] ================================================
[2026-06-19 15:25:19,668.668 INFO    ] Launching Daemon at Fri Jun 19 15:25:19 IST 2026
[2026-06-19 15:25:19,679.679 INFO    ] ================================================
[2026-06-19 15:25:20,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:25:20
[2026-06-19 15:25:20,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:25:21,097.097 INFO    ] Initializing speech engine...
[2026-06-19 15:25:21,105.105 INFO    ] 2026-06-19 15:25:21
[2026-06-19 15:25:21,400.400 INFO    ] 2026-06-19 15:25:21
[2026-06-19 15:25:21,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:25:21,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:25:21,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:25:21,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:25:21,809.809 INFO    ] time= 19/06/2026 15:25:21
[2026-06-19 15:25:21,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:25:21,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:25:21,915.915 INFO    ] No existing commands found in stream
[2026-06-19 15:25:26,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:25:26,953.953 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 15:25:30,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:25:30,632.632 INFO    ] Checking for system updates...
[2026-06-19 15:25:30,670.670 INFO    ] 200
[2026-06-19 15:25:30,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:30,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:25:30,730.730 INFO    ] No update needed
[2026-06-19 15:25:30,733.733 INFO    ] Checking for camera pi updates...
[2026-06-19 15:25:30,772.772 INFO    ] 200
[2026-06-19 15:25:30,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:30,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:25:30,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:25:30,864.864 INFO    ] No camera update needed
[2026-06-19 15:25:30,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:25:30,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:25:30,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:25:30,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:25:32,924.924 INFO    ] ================================================
[2026-06-19 15:25:32,940.940 INFO    ] Launching Daemon at Fri Jun 19 15:25:32 IST 2026
[2026-06-19 15:25:32,951.951 INFO    ] ================================================
[2026-06-19 15:25:33,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:25:33
[2026-06-19 15:25:34,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:25:34,565.565 INFO    ] Initializing speech engine...
[2026-06-19 15:25:34,573.573 INFO    ] 2026-06-19 15:25:34
[2026-06-19 15:25:34,861.861 INFO    ] 2026-06-19 15:25:34
[2026-06-19 15:25:34,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:25:35,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:25:35,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:25:35,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:25:35,410.410 INFO    ] time= 19/06/2026 15:25:35
[2026-06-19 15:25:35,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:25:35,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:25:35,571.571 INFO    ] No existing commands found in stream
[2026-06-19 15:25:40,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:25:40,600.600 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 15:25:43,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:25:43,729.729 INFO    ] Checking for system updates...
[2026-06-19 15:25:43,766.766 INFO    ] 200
[2026-06-19 15:25:43,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:43,824.824 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:25:43,827.827 INFO    ] No update needed
[2026-06-19 15:25:43,829.829 INFO    ] Checking for camera pi updates...
[2026-06-19 15:25:43,864.864 INFO    ] 200
[2026-06-19 15:25:43,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:43,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:25:43,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:25:43,960.960 INFO    ] No camera update needed
[2026-06-19 15:25:43,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:25:43,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:25:43,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:25:43,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:25:46,018.018 INFO    ] ================================================
[2026-06-19 15:25:46,034.034 INFO    ] Launching Daemon at Fri Jun 19 15:25:46 IST 2026
[2026-06-19 15:25:46,045.045 INFO    ] ================================================
[2026-06-19 15:25:46,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:25:46
[2026-06-19 15:25:47,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:25:47,675.675 INFO    ] Initializing speech engine...
[2026-06-19 15:25:47,682.682 INFO    ] 2026-06-19 15:25:47
[2026-06-19 15:25:47,968.968 INFO    ] 2026-06-19 15:25:47
[2026-06-19 15:25:48,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:25:48,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:25:48,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:25:48,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:25:48,522.522 INFO    ] time= 19/06/2026 15:25:48
[2026-06-19 15:25:48,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:25:48,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:25:48,728.728 INFO    ] No existing commands found in stream
[2026-06-19 15:25:53,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:25:53,762.762 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 15:25:55,277.277 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:25:55,280.280 INFO    ] Checking for system updates...
[2026-06-19 15:25:55,318.318 INFO    ] 200
[2026-06-19 15:25:55,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:55,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:25:55,377.377 INFO    ] No update needed
[2026-06-19 15:25:55,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 15:25:55,415.415 INFO    ] 200
[2026-06-19 15:25:55,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:25:55,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:25:55,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:25:55,511.511 INFO    ] No camera update needed
[2026-06-19 15:25:55,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:25:55,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:25:55,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:25:55,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:25:57,570.570 INFO    ] ================================================
[2026-06-19 15:25:57,585.585 INFO    ] Launching Daemon at Fri Jun 19 15:25:57 IST 2026
[2026-06-19 15:25:57,596.596 INFO    ] ================================================
[2026-06-19 15:25:58,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:25:58
[2026-06-19 15:25:58,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:25:59,155.155 INFO    ] Initializing speech engine...
[2026-06-19 15:25:59,161.161 INFO    ] 2026-06-19 15:25:59
[2026-06-19 15:25:59,409.409 INFO    ] 2026-06-19 15:25:59
[2026-06-19 15:25:59,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:25:59,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:25:59,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:25:59,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:25:59,787.787 INFO    ] time= 19/06/2026 15:25:59
[2026-06-19 15:25:59,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:25:59,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:25:59,976.976 INFO    ] No existing commands found in stream
[2026-06-19 15:26:04,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:26:05,000.000 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 15:26:06,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:26:06,999.999 INFO    ] Checking for system updates...
[2026-06-19 15:26:07,036.036 INFO    ] 200
[2026-06-19 15:26:07,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:26:07,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:26:07,094.094 INFO    ] No update needed
[2026-06-19 15:26:07,096.096 INFO    ] Checking for camera pi updates...
[2026-06-19 15:26:07,130.130 INFO    ] 200
[2026-06-19 15:26:07,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:26:07,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:26:07,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:26:07,218.218 INFO    ] No camera update needed
[2026-06-19 15:26:07,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:26:07,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:26:07,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:26:07,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:26:09,273.273 INFO    ] ================================================
[2026-06-19 15:26:09,288.288 INFO    ] Launching Daemon at Fri Jun 19 15:26:09 IST 2026
[2026-06-19 15:26:09,300.300 INFO    ] ================================================
[2026-06-19 15:26:09,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:26:09
[2026-06-19 15:26:10,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:26:10,713.713 INFO    ] Initializing speech engine...
[2026-06-19 15:26:10,736.736 INFO    ] 2026-06-19 15:26:10
[2026-06-19 15:26:10,988.988 INFO    ] 2026-06-19 15:26:10
[2026-06-19 15:26:11,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:26:11,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:26:11,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:26:11,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:26:11,484.484 INFO    ] time= 19/06/2026 15:26:11
[2026-06-19 15:26:11,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:26:11,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:26:11,630.630 INFO    ] No existing commands found in stream
[2026-06-19 15:26:16,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:26:16,646.646 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 15:26:20,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:26:20,573.573 INFO    ] Checking for system updates...
[2026-06-19 15:26:20,609.609 INFO    ] 200
[2026-06-19 15:26:20,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:26:20,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:26:20,668.668 INFO    ] No update needed
[2026-06-19 15:26:20,671.671 INFO    ] Checking for camera pi updates...
[2026-06-19 15:26:20,704.704 INFO    ] 200
[2026-06-19 15:26:20,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:26:20,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:26:20,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:26:20,795.795 INFO    ] No camera update needed
[2026-06-19 15:26:20,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:26:20,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:26:20,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:26:20,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:26:22,851.851 INFO    ] ================================================
[2026-06-19 15:26:22,867.867 INFO    ] Launching Daemon at Fri Jun 19 15:26:22 IST 2026
[2026-06-19 15:26:22,878.878 INFO    ] ================================================
[2026-06-19 15:26:23,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:26:23
[2026-06-19 15:26:24,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:26:24,305.305 INFO    ] Initializing speech engine...
[2026-06-19 15:26:24,311.311 INFO    ] 2026-06-19 15:26:24
[2026-06-19 15:26:24,570.570 INFO    ] 2026-06-19 15:26:24
[2026-06-19 15:26:24,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:26:24,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:26:24,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:26:25,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:26:25,112.112 INFO    ] time= 19/06/2026 15:26:25
[2026-06-19 15:26:25,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:26:25,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:26:25,262.262 INFO    ] No existing commands found in stream
[2026-06-19 15:26:30,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:26:30,280.280 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 15:26:34,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:26:34,267.267 INFO    ] Checking for system updates...
[2026-06-19 15:26:34,304.304 INFO    ] 200
[2026-06-19 15:26:34,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:26:34,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:26:34,365.365 INFO    ] No update needed
[2026-06-19 15:26:34,367.367 INFO    ] Checking for camera pi updates...
[2026-06-19 15:26:34,401.401 INFO    ] 200
[2026-06-19 15:26:34,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:26:34,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:26:34,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:26:34,503.503 INFO    ] No camera update needed
[2026-06-19 15:26:34,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:26:34,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:26:34,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:26:34,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:26:36,560.560 INFO    ] ================================================
[2026-06-19 15:26:36,576.576 INFO    ] Launching Daemon at Fri Jun 19 15:26:36 IST 2026
[2026-06-19 15:26:36,587.587 INFO    ] ================================================
[2026-06-19 15:26:37,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:26:37
[2026-06-19 15:26:37,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:26:38,052.052 INFO    ] Initializing speech engine...
[2026-06-19 15:26:38,068.068 INFO    ] 2026-06-19 15:26:38
[2026-06-19 15:26:38,349.349 INFO    ] 2026-06-19 15:26:38
[2026-06-19 15:26:38,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:26:38,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:26:38,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:26:38,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:26:38,918.918 INFO    ] time= 19/06/2026 15:26:38
[2026-06-19 15:26:38,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:26:38,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:26:39,109.109 INFO    ] No existing commands found in stream
[2026-06-19 15:26:44,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:26:44,143.143 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 15:26:48,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:26:48,382.382 INFO    ] Checking for system updates...
[2026-06-19 15:26:48,420.420 INFO    ] 200
[2026-06-19 15:26:48,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:26:48,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:26:48,480.480 INFO    ] No update needed
[2026-06-19 15:26:48,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 15:26:48,518.518 INFO    ] 200
[2026-06-19 15:26:48,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:26:48,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:26:48,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:26:48,597.597 INFO    ] No camera update needed
[2026-06-19 15:26:48,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:26:48,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:26:48,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:26:48,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:26:50,654.654 INFO    ] ================================================
[2026-06-19 15:26:50,670.670 INFO    ] Launching Daemon at Fri Jun 19 15:26:50 IST 2026
[2026-06-19 15:26:50,681.681 INFO    ] ================================================
[2026-06-19 15:26:51,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:26:51
[2026-06-19 15:26:52,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:26:52,311.311 INFO    ] Initializing speech engine...
[2026-06-19 15:26:52,325.325 INFO    ] 2026-06-19 15:26:52
[2026-06-19 15:26:52,634.634 INFO    ] 2026-06-19 15:26:52
[2026-06-19 15:26:52,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:26:52,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:26:52,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:26:53,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:26:53,157.157 INFO    ] time= 19/06/2026 15:26:53
[2026-06-19 15:26:53,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:26:53,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:26:53,325.325 INFO    ] No existing commands found in stream
[2026-06-19 15:26:58,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:26:58,360.360 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 15:27:01,451.451 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:27:01,458.458 INFO    ] Checking for system updates...
[2026-06-19 15:27:01,536.536 INFO    ] 200
[2026-06-19 15:27:01,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:01,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:27:01,626.626 INFO    ] No update needed
[2026-06-19 15:27:01,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 15:27:01,672.672 INFO    ] 200
[2026-06-19 15:27:01,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:01,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:27:01,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:27:01,770.770 INFO    ] No camera update needed
[2026-06-19 15:27:01,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:27:01,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:27:01,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:27:01,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:27:03,835.835 INFO    ] ================================================
[2026-06-19 15:27:03,851.851 INFO    ] Launching Daemon at Fri Jun 19 15:27:03 IST 2026
[2026-06-19 15:27:03,867.867 INFO    ] ================================================
[2026-06-19 15:27:04,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:27:04
[2026-06-19 15:27:05,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:27:05,318.318 INFO    ] Initializing speech engine...
[2026-06-19 15:27:05,339.339 INFO    ] 2026-06-19 15:27:05
[2026-06-19 15:27:05,624.624 INFO    ] 2026-06-19 15:27:05
[2026-06-19 15:27:05,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:27:05,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:27:05,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:27:06,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:27:06,176.176 INFO    ] time= 19/06/2026 15:27:06
[2026-06-19 15:27:06,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:27:06,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:27:06,400.400 INFO    ] No existing commands found in stream
[2026-06-19 15:27:11,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:27:11,415.415 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 15:27:15,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:27:15,348.348 INFO    ] Checking for system updates...
[2026-06-19 15:27:15,389.389 INFO    ] 200
[2026-06-19 15:27:15,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:15,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:27:15,454.454 INFO    ] No update needed
[2026-06-19 15:27:15,457.457 INFO    ] Checking for camera pi updates...
[2026-06-19 15:27:15,493.493 INFO    ] 200
[2026-06-19 15:27:15,496.496 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:15,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:27:15,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:27:15,592.592 INFO    ] No camera update needed
[2026-06-19 15:27:15,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:27:15,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:27:15,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:27:15,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:27:17,651.651 INFO    ] ================================================
[2026-06-19 15:27:17,667.667 INFO    ] Launching Daemon at Fri Jun 19 15:27:17 IST 2026
[2026-06-19 15:27:17,678.678 INFO    ] ================================================
[2026-06-19 15:27:18,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:27:18
[2026-06-19 15:27:18,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:27:19,144.144 INFO    ] Initializing speech engine...
[2026-06-19 15:27:19,150.150 INFO    ] 2026-06-19 15:27:19
[2026-06-19 15:27:19,396.396 INFO    ] 2026-06-19 15:27:19
[2026-06-19 15:27:19,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:27:19,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:27:19,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:27:19,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:27:19,877.877 INFO    ] time= 19/06/2026 15:27:19
[2026-06-19 15:27:19,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:27:19,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:27:20,085.085 INFO    ] No existing commands found in stream
[2026-06-19 15:27:25,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:27:25,113.113 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 15:27:26,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:27:26,104.104 INFO    ] Checking for system updates...
[2026-06-19 15:27:26,144.144 INFO    ] 200
[2026-06-19 15:27:26,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:26,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:27:26,210.210 INFO    ] No update needed
[2026-06-19 15:27:26,212.212 INFO    ] Checking for camera pi updates...
[2026-06-19 15:27:26,246.246 INFO    ] 200
[2026-06-19 15:27:26,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:26,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:27:26,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:27:26,445.445 INFO    ] No camera update needed
[2026-06-19 15:27:26,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:27:26,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:27:26,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:27:26,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:27:28,501.501 INFO    ] ================================================
[2026-06-19 15:27:28,516.516 INFO    ] Launching Daemon at Fri Jun 19 15:27:28 IST 2026
[2026-06-19 15:27:28,527.527 INFO    ] ================================================
[2026-06-19 15:27:29,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:27:29
[2026-06-19 15:27:29,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:27:29,946.946 INFO    ] Initializing speech engine...
[2026-06-19 15:27:29,952.952 INFO    ] 2026-06-19 15:27:29
[2026-06-19 15:27:30,226.226 INFO    ] 2026-06-19 15:27:30
[2026-06-19 15:27:30,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:27:30,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:27:30,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:27:30,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:27:30,605.605 INFO    ] time= 19/06/2026 15:27:30
[2026-06-19 15:27:30,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:27:30,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:27:30,783.783 INFO    ] No existing commands found in stream
[2026-06-19 15:27:35,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:27:35,812.812 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 15:27:39,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:27:39,139.139 INFO    ] Checking for system updates...
[2026-06-19 15:27:39,179.179 INFO    ] 200
[2026-06-19 15:27:39,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:39,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:27:39,244.244 INFO    ] No update needed
[2026-06-19 15:27:39,246.246 INFO    ] Checking for camera pi updates...
[2026-06-19 15:27:39,285.285 INFO    ] 200
[2026-06-19 15:27:39,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:39,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:27:39,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:27:39,383.383 INFO    ] No camera update needed
[2026-06-19 15:27:39,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:27:39,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:27:39,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:27:39,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:27:41,438.438 INFO    ] ================================================
[2026-06-19 15:27:41,453.453 INFO    ] Launching Daemon at Fri Jun 19 15:27:41 IST 2026
[2026-06-19 15:27:41,464.464 INFO    ] ================================================
[2026-06-19 15:27:42,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:27:42
[2026-06-19 15:27:42,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:27:42,955.955 INFO    ] Initializing speech engine...
[2026-06-19 15:27:42,964.964 INFO    ] 2026-06-19 15:27:42
[2026-06-19 15:27:43,214.214 INFO    ] 2026-06-19 15:27:43
[2026-06-19 15:27:43,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:27:43,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:27:43,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:27:43,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:27:43,592.592 INFO    ] time= 19/06/2026 15:27:43
[2026-06-19 15:27:43,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:27:43,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:27:43,787.787 INFO    ] No existing commands found in stream
[2026-06-19 15:27:48,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:27:48,807.807 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 15:27:52,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:27:52,203.203 INFO    ] Checking for system updates...
[2026-06-19 15:27:52,245.245 INFO    ] 200
[2026-06-19 15:27:52,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:52,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:27:52,313.313 INFO    ] No update needed
[2026-06-19 15:27:52,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 15:27:52,354.354 INFO    ] 200
[2026-06-19 15:27:52,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:27:52,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:27:52,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:27:52,454.454 INFO    ] No camera update needed
[2026-06-19 15:27:52,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:27:52,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:27:52,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:27:52,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:27:54,513.513 INFO    ] ================================================
[2026-06-19 15:27:54,528.528 INFO    ] Launching Daemon at Fri Jun 19 15:27:54 IST 2026
[2026-06-19 15:27:54,539.539 INFO    ] ================================================
[2026-06-19 15:27:55,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:27:55
[2026-06-19 15:27:55,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:27:56,009.009 INFO    ] Initializing speech engine...
[2026-06-19 15:27:56,024.024 INFO    ] 2026-06-19 15:27:56
[2026-06-19 15:27:56,298.298 INFO    ] 2026-06-19 15:27:56
[2026-06-19 15:27:56,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:27:56,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:27:56,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:27:56,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:27:56,784.784 INFO    ] time= 19/06/2026 15:27:56
[2026-06-19 15:27:56,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:27:56,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:27:57,023.023 INFO    ] No existing commands found in stream
[2026-06-19 15:28:02,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:28:02,050.050 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 15:28:04,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:28:04,252.252 INFO    ] Checking for system updates...
[2026-06-19 15:28:04,292.292 INFO    ] 200
[2026-06-19 15:28:04,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:04,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:28:04,352.352 INFO    ] No update needed
[2026-06-19 15:28:04,355.355 INFO    ] Checking for camera pi updates...
[2026-06-19 15:28:04,393.393 INFO    ] 200
[2026-06-19 15:28:04,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:04,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:28:04,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:28:04,498.498 INFO    ] No camera update needed
[2026-06-19 15:28:04,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:28:04,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:28:04,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:28:04,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:28:06,555.555 INFO    ] ================================================
[2026-06-19 15:28:06,571.571 INFO    ] Launching Daemon at Fri Jun 19 15:28:06 IST 2026
[2026-06-19 15:28:06,582.582 INFO    ] ================================================
[2026-06-19 15:28:07,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:28:07
[2026-06-19 15:28:07,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:28:08,029.029 INFO    ] Initializing speech engine...
[2026-06-19 15:28:08,039.039 INFO    ] 2026-06-19 15:28:08
[2026-06-19 15:28:08,299.299 INFO    ] 2026-06-19 15:28:08
[2026-06-19 15:28:08,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:28:08,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:28:08,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:28:08,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:28:08,751.751 INFO    ] time= 19/06/2026 15:28:08
[2026-06-19 15:28:08,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:28:08,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:28:08,990.990 INFO    ] No existing commands found in stream
[2026-06-19 15:28:14,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:28:14,009.009 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 15:28:14,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:28:14,443.443 INFO    ] Checking for system updates...
[2026-06-19 15:28:14,484.484 INFO    ] 200
[2026-06-19 15:28:14,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:14,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:28:14,550.550 INFO    ] No update needed
[2026-06-19 15:28:14,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 15:28:14,594.594 INFO    ] 200
[2026-06-19 15:28:14,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:14,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:28:14,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:28:14,694.694 INFO    ] No camera update needed
[2026-06-19 15:28:14,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:28:14,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:28:14,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:28:14,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:28:16,754.754 INFO    ] ================================================
[2026-06-19 15:28:16,769.769 INFO    ] Launching Daemon at Fri Jun 19 15:28:16 IST 2026
[2026-06-19 15:28:16,781.781 INFO    ] ================================================
[2026-06-19 15:28:17,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:28:17
[2026-06-19 15:28:17,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:28:18,192.192 INFO    ] Initializing speech engine...
[2026-06-19 15:28:18,215.215 INFO    ] 2026-06-19 15:28:18
[2026-06-19 15:28:18,473.473 INFO    ] 2026-06-19 15:28:18
[2026-06-19 15:28:18,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:28:18,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:28:18,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:28:18,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:28:18,970.970 INFO    ] time= 19/06/2026 15:28:18
[2026-06-19 15:28:19,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:28:19,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:28:19,191.191 INFO    ] No existing commands found in stream
[2026-06-19 15:28:24,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:28:24,216.216 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 15:28:28,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:28:28,047.047 INFO    ] Checking for system updates...
[2026-06-19 15:28:28,083.083 INFO    ] 200
[2026-06-19 15:28:28,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:28,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:28:28,149.149 INFO    ] No update needed
[2026-06-19 15:28:28,152.152 INFO    ] Checking for camera pi updates...
[2026-06-19 15:28:28,188.188 INFO    ] 200
[2026-06-19 15:28:28,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:28,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:28:28,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:28:28,286.286 INFO    ] No camera update needed
[2026-06-19 15:28:28,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:28:28,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:28:28,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:28:28,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:28:30,343.343 INFO    ] ================================================
[2026-06-19 15:28:30,358.358 INFO    ] Launching Daemon at Fri Jun 19 15:28:30 IST 2026
[2026-06-19 15:28:30,368.368 INFO    ] ================================================
[2026-06-19 15:28:30,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:28:30
[2026-06-19 15:28:31,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:28:31,809.809 INFO    ] Initializing speech engine...
[2026-06-19 15:28:31,816.816 INFO    ] 2026-06-19 15:28:31
[2026-06-19 15:28:32,129.129 INFO    ] 2026-06-19 15:28:32
[2026-06-19 15:28:32,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:28:32,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:28:32,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:28:32,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:28:32,668.668 INFO    ] time= 19/06/2026 15:28:32
[2026-06-19 15:28:32,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:28:32,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:28:32,919.919 INFO    ] No existing commands found in stream
[2026-06-19 15:28:37,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:28:37,946.946 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 15:28:41,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:28:41,880.880 INFO    ] Checking for system updates...
[2026-06-19 15:28:41,921.921 INFO    ] 200
[2026-06-19 15:28:41,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:41,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:28:41,982.982 INFO    ] No update needed
[2026-06-19 15:28:41,985.985 INFO    ] Checking for camera pi updates...
[2026-06-19 15:28:42,019.019 INFO    ] 200
[2026-06-19 15:28:42,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:42,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:28:42,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:28:42,130.130 INFO    ] No camera update needed
[2026-06-19 15:28:42,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:28:42,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:28:42,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:28:42,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:28:44,187.187 INFO    ] ================================================
[2026-06-19 15:28:44,202.202 INFO    ] Launching Daemon at Fri Jun 19 15:28:44 IST 2026
[2026-06-19 15:28:44,212.212 INFO    ] ================================================
[2026-06-19 15:28:44,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:28:44
[2026-06-19 15:28:45,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:28:45,635.635 INFO    ] Initializing speech engine...
[2026-06-19 15:28:45,640.640 INFO    ] 2026-06-19 15:28:45
[2026-06-19 15:28:45,940.940 INFO    ] 2026-06-19 15:28:45
[2026-06-19 15:28:45,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:28:46,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:28:46,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:28:46,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:28:46,437.437 INFO    ] time= 19/06/2026 15:28:46
[2026-06-19 15:28:46,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:28:46,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:28:46,589.589 INFO    ] No existing commands found in stream
[2026-06-19 15:28:51,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:28:51,601.601 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-19 15:28:52,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:28:52,076.076 INFO    ] Checking for system updates...
[2026-06-19 15:28:52,112.112 INFO    ] 200
[2026-06-19 15:28:52,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:52,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:28:52,176.176 INFO    ] No update needed
[2026-06-19 15:28:52,178.178 INFO    ] Checking for camera pi updates...
[2026-06-19 15:28:52,211.211 INFO    ] 200
[2026-06-19 15:28:52,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:28:52,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:28:52,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:28:52,300.300 INFO    ] No camera update needed
[2026-06-19 15:28:52,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:28:52,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:28:52,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:28:52,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:28:54,360.360 INFO    ] ================================================
[2026-06-19 15:28:54,375.375 INFO    ] Launching Daemon at Fri Jun 19 15:28:54 IST 2026
[2026-06-19 15:28:54,386.386 INFO    ] ================================================
[2026-06-19 15:28:54,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:28:54
[2026-06-19 15:28:55,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:28:55,815.815 INFO    ] Initializing speech engine...
[2026-06-19 15:28:55,823.823 INFO    ] 2026-06-19 15:28:55
[2026-06-19 15:28:56,070.070 INFO    ] 2026-06-19 15:28:56
[2026-06-19 15:28:56,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:28:56,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:28:56,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:28:56,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:28:56,547.547 INFO    ] time= 19/06/2026 15:28:56
[2026-06-19 15:28:56,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:28:56,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:28:56,723.723 INFO    ] No existing commands found in stream
[2026-06-19 15:29:01,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:29:01,757.757 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 15:29:04,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:29:04,984.984 INFO    ] Checking for system updates...
[2026-06-19 15:29:05,023.023 INFO    ] 200
[2026-06-19 15:29:05,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:05,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:29:05,082.082 INFO    ] No update needed
[2026-06-19 15:29:05,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 15:29:05,122.122 INFO    ] 200
[2026-06-19 15:29:05,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:05,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:29:05,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:29:05,221.221 INFO    ] No camera update needed
[2026-06-19 15:29:05,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:29:05,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:29:05,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:29:05,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:29:07,277.277 INFO    ] ================================================
[2026-06-19 15:29:07,292.292 INFO    ] Launching Daemon at Fri Jun 19 15:29:07 IST 2026
[2026-06-19 15:29:07,303.303 INFO    ] ================================================
[2026-06-19 15:29:07,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:29:07
[2026-06-19 15:29:08,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:29:08,744.744 INFO    ] Initializing speech engine...
[2026-06-19 15:29:08,758.758 INFO    ] 2026-06-19 15:29:08
[2026-06-19 15:29:09,046.046 INFO    ] 2026-06-19 15:29:09
[2026-06-19 15:29:09,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:29:09,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:29:09,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:29:09,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:29:09,569.569 INFO    ] time= 19/06/2026 15:29:09
[2026-06-19 15:29:09,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:29:09,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:29:09,786.786 INFO    ] No existing commands found in stream
[2026-06-19 15:29:14,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:29:14,814.814 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 15:29:17,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:29:17,249.249 INFO    ] Checking for system updates...
[2026-06-19 15:29:17,286.286 INFO    ] 200
[2026-06-19 15:29:17,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:17,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:29:17,346.346 INFO    ] No update needed
[2026-06-19 15:29:17,349.349 INFO    ] Checking for camera pi updates...
[2026-06-19 15:29:17,387.387 INFO    ] 200
[2026-06-19 15:29:17,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:17,431.431 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:29:17,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:29:17,493.493 INFO    ] No camera update needed
[2026-06-19 15:29:17,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:29:17,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:29:17,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:29:17,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:29:19,548.548 INFO    ] ================================================
[2026-06-19 15:29:19,564.564 INFO    ] Launching Daemon at Fri Jun 19 15:29:19 IST 2026
[2026-06-19 15:29:19,574.574 INFO    ] ================================================
[2026-06-19 15:29:20,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:29:20
[2026-06-19 15:29:20,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:29:20,984.984 INFO    ] Initializing speech engine...
[2026-06-19 15:29:20,998.998 INFO    ] 2026-06-19 15:29:20
[2026-06-19 15:29:21,281.281 INFO    ] 2026-06-19 15:29:21
[2026-06-19 15:29:21,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:29:21,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:29:21,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:29:21,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:29:21,698.698 INFO    ] time= 19/06/2026 15:29:21
[2026-06-19 15:29:21,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:29:21,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:29:21,787.787 INFO    ] No existing commands found in stream
[2026-06-19 15:29:26,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:29:26,826.826 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 15:29:29,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:29:29,234.234 INFO    ] Checking for system updates...
[2026-06-19 15:29:29,274.274 INFO    ] 200
[2026-06-19 15:29:29,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:29,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:29:29,331.331 INFO    ] No update needed
[2026-06-19 15:29:29,334.334 INFO    ] Checking for camera pi updates...
[2026-06-19 15:29:29,368.368 INFO    ] 200
[2026-06-19 15:29:29,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:29,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:29:29,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:29:29,557.557 INFO    ] No camera update needed
[2026-06-19 15:29:29,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:29:29,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:29:29,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:29:29,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:29:31,612.612 INFO    ] ================================================
[2026-06-19 15:29:31,628.628 INFO    ] Launching Daemon at Fri Jun 19 15:29:31 IST 2026
[2026-06-19 15:29:31,638.638 INFO    ] ================================================
[2026-06-19 15:29:32,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:29:32
[2026-06-19 15:29:32,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:29:33,139.139 INFO    ] Initializing speech engine...
[2026-06-19 15:29:33,150.150 INFO    ] 2026-06-19 15:29:33
[2026-06-19 15:29:33,453.453 INFO    ] 2026-06-19 15:29:33
[2026-06-19 15:29:33,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:29:33,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:29:33,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:29:33,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:29:33,878.878 INFO    ] time= 19/06/2026 15:29:33
[2026-06-19 15:29:33,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:29:33,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:29:34,053.053 INFO    ] No existing commands found in stream
[2026-06-19 15:29:39,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:29:39,076.076 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 15:29:42,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:29:42,705.705 INFO    ] Checking for system updates...
[2026-06-19 15:29:42,742.742 INFO    ] 200
[2026-06-19 15:29:42,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:42,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:29:42,807.807 INFO    ] No update needed
[2026-06-19 15:29:42,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 15:29:42,843.843 INFO    ] 200
[2026-06-19 15:29:42,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:42,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:29:42,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:29:42,938.938 INFO    ] No camera update needed
[2026-06-19 15:29:42,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:29:42,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:29:42,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:29:42,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:29:44,992.992 INFO    ] ================================================
[2026-06-19 15:29:45,007.007 INFO    ] Launching Daemon at Fri Jun 19 15:29:45 IST 2026
[2026-06-19 15:29:45,018.018 INFO    ] ================================================
[2026-06-19 15:29:45,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:29:45
[2026-06-19 15:29:46,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:29:46,656.656 INFO    ] Initializing speech engine...
[2026-06-19 15:29:46,667.667 INFO    ] 2026-06-19 15:29:46
[2026-06-19 15:29:46,981.981 INFO    ] 2026-06-19 15:29:46
[2026-06-19 15:29:47,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:29:47,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:29:47,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:29:47,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:29:47,488.488 INFO    ] time= 19/06/2026 15:29:47
[2026-06-19 15:29:47,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:29:47,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:29:47,673.673 INFO    ] No existing commands found in stream
[2026-06-19 15:29:52,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:29:52,707.707 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 15:29:55,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:29:55,122.122 INFO    ] Checking for system updates...
[2026-06-19 15:29:55,159.159 INFO    ] 200
[2026-06-19 15:29:55,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:55,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:29:55,227.227 INFO    ] No update needed
[2026-06-19 15:29:55,230.230 INFO    ] Checking for camera pi updates...
[2026-06-19 15:29:55,264.264 INFO    ] 200
[2026-06-19 15:29:55,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:29:55,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:29:55,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:29:55,361.361 INFO    ] No camera update needed
[2026-06-19 15:29:55,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:29:55,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:29:55,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:29:55,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:29:57,417.417 INFO    ] ================================================
[2026-06-19 15:29:57,432.432 INFO    ] Launching Daemon at Fri Jun 19 15:29:57 IST 2026
[2026-06-19 15:29:57,442.442 INFO    ] ================================================
[2026-06-19 15:29:58,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:29:58
[2026-06-19 15:29:58,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:29:58,861.861 INFO    ] Initializing speech engine...
[2026-06-19 15:29:58,870.870 INFO    ] 2026-06-19 15:29:58
[2026-06-19 15:29:59,118.118 INFO    ] 2026-06-19 15:29:59
[2026-06-19 15:29:59,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:29:59,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:29:59,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:29:59,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:29:59,588.588 INFO    ] time= 19/06/2026 15:29:59
[2026-06-19 15:29:59,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:29:59,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:29:59,797.797 INFO    ] No existing commands found in stream
[2026-06-19 15:30:04,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:30:04,827.827 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 15:30:08,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:30:08,804.804 INFO    ] Checking for system updates...
[2026-06-19 15:30:08,842.842 INFO    ] 200
[2026-06-19 15:30:08,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:08,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:30:08,900.900 INFO    ] No update needed
[2026-06-19 15:30:08,902.902 INFO    ] Checking for camera pi updates...
[2026-06-19 15:30:08,937.937 INFO    ] 200
[2026-06-19 15:30:08,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:08,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:30:09,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:30:09,033.033 INFO    ] No camera update needed
[2026-06-19 15:30:09,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:30:09,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:30:09,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:30:09,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:30:11,088.088 INFO    ] ================================================
[2026-06-19 15:30:11,103.103 INFO    ] Launching Daemon at Fri Jun 19 15:30:11 IST 2026
[2026-06-19 15:30:11,114.114 INFO    ] ================================================
[2026-06-19 15:30:11,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:30:11
[2026-06-19 15:30:12,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:30:12,577.577 INFO    ] Initializing speech engine...
[2026-06-19 15:30:12,590.590 INFO    ] 2026-06-19 15:30:12
[2026-06-19 15:30:12,866.866 INFO    ] 2026-06-19 15:30:12
[2026-06-19 15:30:12,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:30:13,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:30:13,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:30:13,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:30:13,407.407 INFO    ] time= 19/06/2026 15:30:13
[2026-06-19 15:30:13,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:30:13,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:30:13,571.571 INFO    ] No existing commands found in stream
[2026-06-19 15:30:18,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:30:18,610.610 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 15:30:21,355.355 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:30:21,359.359 INFO    ] Checking for system updates...
[2026-06-19 15:30:21,401.401 INFO    ] 200
[2026-06-19 15:30:21,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:21,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:30:21,466.466 INFO    ] No update needed
[2026-06-19 15:30:21,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 15:30:21,505.505 INFO    ] 200
[2026-06-19 15:30:21,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:21,556.556 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:30:21,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:30:21,605.605 INFO    ] No camera update needed
[2026-06-19 15:30:21,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:30:21,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:30:21,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:30:21,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:30:23,661.661 INFO    ] ================================================
[2026-06-19 15:30:23,677.677 INFO    ] Launching Daemon at Fri Jun 19 15:30:23 IST 2026
[2026-06-19 15:30:23,687.687 INFO    ] ================================================
[2026-06-19 15:30:24,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:30:24
[2026-06-19 15:30:24,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:30:25,129.129 INFO    ] Initializing speech engine...
[2026-06-19 15:30:25,141.141 INFO    ] 2026-06-19 15:30:25
[2026-06-19 15:30:25,409.409 INFO    ] 2026-06-19 15:30:25
[2026-06-19 15:30:25,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:30:25,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:30:25,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:30:25,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:30:25,787.787 INFO    ] time= 19/06/2026 15:30:25
[2026-06-19 15:30:25,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:30:25,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:30:25,978.978 INFO    ] No existing commands found in stream
[2026-06-19 15:30:31,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:30:31,003.003 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 15:30:31,767.767 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:30:31,769.769 INFO    ] Checking for system updates...
[2026-06-19 15:30:31,805.805 INFO    ] 200
[2026-06-19 15:30:31,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:31,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:30:31,870.870 INFO    ] No update needed
[2026-06-19 15:30:31,872.872 INFO    ] Checking for camera pi updates...
[2026-06-19 15:30:31,906.906 INFO    ] 200
[2026-06-19 15:30:31,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:31,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:30:31,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:30:31,998.998 INFO    ] No camera update needed
[2026-06-19 15:30:32,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:30:32,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:30:32,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:30:32,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:30:34,054.054 INFO    ] ================================================
[2026-06-19 15:30:34,069.069 INFO    ] Launching Daemon at Fri Jun 19 15:30:34 IST 2026
[2026-06-19 15:30:34,080.080 INFO    ] ================================================
[2026-06-19 15:30:34,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:30:34
[2026-06-19 15:30:35,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:30:35,550.550 INFO    ] Initializing speech engine...
[2026-06-19 15:30:35,559.559 INFO    ] 2026-06-19 15:30:35
[2026-06-19 15:30:35,818.818 INFO    ] 2026-06-19 15:30:35
[2026-06-19 15:30:35,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:30:36,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:30:36,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:30:36,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:30:36,305.305 INFO    ] time= 19/06/2026 15:30:36
[2026-06-19 15:30:36,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:30:36,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:30:36,517.517 INFO    ] No existing commands found in stream
[2026-06-19 15:30:41,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:30:41,536.536 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 15:30:45,140.140 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:30:45,143.143 INFO    ] Checking for system updates...
[2026-06-19 15:30:45,181.181 INFO    ] 200
[2026-06-19 15:30:45,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:45,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:30:45,242.242 INFO    ] No update needed
[2026-06-19 15:30:45,245.245 INFO    ] Checking for camera pi updates...
[2026-06-19 15:30:45,284.284 INFO    ] 200
[2026-06-19 15:30:45,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:45,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:30:45,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:30:45,398.398 INFO    ] No camera update needed
[2026-06-19 15:30:45,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:30:45,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:30:45,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:30:45,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:30:47,457.457 INFO    ] ================================================
[2026-06-19 15:30:47,473.473 INFO    ] Launching Daemon at Fri Jun 19 15:30:47 IST 2026
[2026-06-19 15:30:47,483.483 INFO    ] ================================================
[2026-06-19 15:30:48,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:30:48
[2026-06-19 15:30:48,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:30:48,910.910 INFO    ] Initializing speech engine...
[2026-06-19 15:30:48,920.920 INFO    ] 2026-06-19 15:30:48
[2026-06-19 15:30:49,179.179 INFO    ] 2026-06-19 15:30:49
[2026-06-19 15:30:49,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:30:49,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:30:49,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:30:49,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:30:49,637.637 INFO    ] time= 19/06/2026 15:30:49
[2026-06-19 15:30:49,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:30:49,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:30:49,875.875 INFO    ] No existing commands found in stream
[2026-06-19 15:30:54,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:30:54,905.905 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 15:30:57,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:30:57,994.994 INFO    ] Checking for system updates...
[2026-06-19 15:30:58,035.035 INFO    ] 200
[2026-06-19 15:30:58,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:58,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:30:58,101.101 INFO    ] No update needed
[2026-06-19 15:30:58,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 15:30:58,142.142 INFO    ] 200
[2026-06-19 15:30:58,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:30:58,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:30:58,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:30:58,239.239 INFO    ] No camera update needed
[2026-06-19 15:30:58,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:30:58,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:30:58,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:30:58,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:31:00,298.298 INFO    ] ================================================
[2026-06-19 15:31:00,314.314 INFO    ] Launching Daemon at Fri Jun 19 15:31:00 IST 2026
[2026-06-19 15:31:00,325.325 INFO    ] ================================================
[2026-06-19 15:31:00,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:31:00
[2026-06-19 15:31:01,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:31:01,963.963 INFO    ] Initializing speech engine...
[2026-06-19 15:31:01,972.972 INFO    ] 2026-06-19 15:31:01
[2026-06-19 15:31:02,336.336 INFO    ] 2026-06-19 15:31:02
[2026-06-19 15:31:02,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:31:02,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:31:02,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:31:02,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:31:02,940.940 INFO    ] time= 19/06/2026 15:31:02
[2026-06-19 15:31:02,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:31:02,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:31:03,102.102 INFO    ] No existing commands found in stream
[2026-06-19 15:31:08,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:31:08,124.124 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 15:31:12,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:31:12,521.521 INFO    ] Checking for system updates...
[2026-06-19 15:31:12,562.562 INFO    ] 200
[2026-06-19 15:31:12,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:31:12,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:31:12,629.629 INFO    ] No update needed
[2026-06-19 15:31:12,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 15:31:12,673.673 INFO    ] 200
[2026-06-19 15:31:12,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:31:12,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:31:12,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:31:12,782.782 INFO    ] No camera update needed
[2026-06-19 15:31:12,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:31:12,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:31:12,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:31:12,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:31:14,845.845 INFO    ] ================================================
[2026-06-19 15:31:14,860.860 INFO    ] Launching Daemon at Fri Jun 19 15:31:14 IST 2026
[2026-06-19 15:31:14,870.870 INFO    ] ================================================
[2026-06-19 15:31:15,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:31:15
[2026-06-19 15:31:16,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:31:16,351.351 INFO    ] Initializing speech engine...
[2026-06-19 15:31:16,359.359 INFO    ] 2026-06-19 15:31:16
[2026-06-19 15:31:16,620.620 INFO    ] 2026-06-19 15:31:16
[2026-06-19 15:31:16,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:31:16,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:31:16,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:31:17,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:31:17,091.091 INFO    ] time= 19/06/2026 15:31:17
[2026-06-19 15:31:17,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:31:17,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:31:17,305.305 INFO    ] No existing commands found in stream
[2026-06-19 15:31:22,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:31:22,332.332 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 15:31:26,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:31:26,742.742 INFO    ] Checking for system updates...
[2026-06-19 15:31:26,782.782 INFO    ] 200
[2026-06-19 15:31:26,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:31:26,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:31:26,841.841 INFO    ] No update needed
[2026-06-19 15:31:26,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 15:31:26,885.885 INFO    ] 200
[2026-06-19 15:31:26,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:31:26,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:31:26,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:31:26,986.986 INFO    ] No camera update needed
[2026-06-19 15:31:26,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:31:26,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:31:26,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:31:27,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:31:29,043.043 INFO    ] ================================================
[2026-06-19 15:31:29,059.059 INFO    ] Launching Daemon at Fri Jun 19 15:31:29 IST 2026
[2026-06-19 15:31:29,069.069 INFO    ] ================================================
[2026-06-19 15:31:29,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:31:29
[2026-06-19 15:31:30,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:31:30,561.561 INFO    ] Initializing speech engine...
[2026-06-19 15:31:30,569.569 INFO    ] 2026-06-19 15:31:30
[2026-06-19 15:31:30,828.828 INFO    ] 2026-06-19 15:31:30
[2026-06-19 15:31:30,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:31:31,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:31:31,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:31:31,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:31:31,322.322 INFO    ] time= 19/06/2026 15:31:31
[2026-06-19 15:31:31,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:31:31,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:31:31,581.581 INFO    ] No existing commands found in stream
[2026-06-19 15:31:36,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:31:36,615.615 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 15:31:40,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:31:40,594.594 INFO    ] Checking for system updates...
[2026-06-19 15:31:40,631.631 INFO    ] 200
[2026-06-19 15:31:40,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:31:40,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:31:40,691.691 INFO    ] No update needed
[2026-06-19 15:31:40,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 15:31:40,728.728 INFO    ] 200
[2026-06-19 15:31:40,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:31:40,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:31:40,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:31:40,828.828 INFO    ] No camera update needed
[2026-06-19 15:31:40,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:31:40,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:31:40,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:31:40,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:31:42,884.884 INFO    ] ================================================
[2026-06-19 15:31:42,900.900 INFO    ] Launching Daemon at Fri Jun 19 15:31:42 IST 2026
[2026-06-19 15:31:42,910.910 INFO    ] ================================================
[2026-06-19 15:31:43,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:31:43
[2026-06-19 15:31:44,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:31:44,335.335 INFO    ] Initializing speech engine...
[2026-06-19 15:31:44,345.345 INFO    ] 2026-06-19 15:31:44
[2026-06-19 15:31:44,592.592 INFO    ] 2026-06-19 15:31:44
[2026-06-19 15:31:44,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:31:44,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:31:44,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:31:45,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:31:45,079.079 INFO    ] time= 19/06/2026 15:31:45
[2026-06-19 15:31:45,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:31:45,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:31:45,308.308 INFO    ] No existing commands found in stream
[2026-06-19 15:31:50,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:31:50,326.326 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 15:31:52,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:31:52,418.418 INFO    ] Checking for system updates...
[2026-06-19 15:31:52,456.456 INFO    ] 200
[2026-06-19 15:31:52,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:31:52,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:31:52,525.525 INFO    ] No update needed
[2026-06-19 15:31:52,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 15:31:52,569.569 INFO    ] 200
[2026-06-19 15:31:52,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:31:52,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:31:52,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:31:52,666.666 INFO    ] No camera update needed
[2026-06-19 15:31:52,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:31:52,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:31:52,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:31:52,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:31:54,723.723 INFO    ] ================================================
[2026-06-19 15:31:54,739.739 INFO    ] Launching Daemon at Fri Jun 19 15:31:54 IST 2026
[2026-06-19 15:31:54,751.751 INFO    ] ================================================
[2026-06-19 15:31:55,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:31:55
[2026-06-19 15:31:55,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:31:56,276.276 INFO    ] Initializing speech engine...
[2026-06-19 15:31:56,286.286 INFO    ] 2026-06-19 15:31:56
[2026-06-19 15:31:56,606.606 INFO    ] 2026-06-19 15:31:56
[2026-06-19 15:31:56,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:31:56,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:31:56,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:31:56,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:31:57,004.004 INFO    ] time= 19/06/2026 15:31:56
[2026-06-19 15:31:57,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:31:57,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:31:57,121.121 INFO    ] No existing commands found in stream
[2026-06-19 15:32:02,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:32:02,161.161 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 15:32:03,175.175 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:32:03,177.177 INFO    ] Checking for system updates...
[2026-06-19 15:32:03,213.213 INFO    ] 200
[2026-06-19 15:32:03,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:03,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:32:03,271.271 INFO    ] No update needed
[2026-06-19 15:32:03,274.274 INFO    ] Checking for camera pi updates...
[2026-06-19 15:32:03,311.311 INFO    ] 200
[2026-06-19 15:32:03,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:03,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:32:03,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:32:03,412.412 INFO    ] No camera update needed
[2026-06-19 15:32:03,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:32:03,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:32:03,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:32:03,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:32:05,467.467 INFO    ] ================================================
[2026-06-19 15:32:05,482.482 INFO    ] Launching Daemon at Fri Jun 19 15:32:05 IST 2026
[2026-06-19 15:32:05,493.493 INFO    ] ================================================
[2026-06-19 15:32:06,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:32:06
[2026-06-19 15:32:06,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:32:06,928.928 INFO    ] Initializing speech engine...
[2026-06-19 15:32:06,933.933 INFO    ] 2026-06-19 15:32:06
[2026-06-19 15:32:07,224.224 INFO    ] 2026-06-19 15:32:07
[2026-06-19 15:32:07,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:32:07,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:32:07,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:32:07,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:32:07,635.635 INFO    ] time= 19/06/2026 15:32:07
[2026-06-19 15:32:07,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:32:07,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:32:07,728.728 INFO    ] No existing commands found in stream
[2026-06-19 15:32:12,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:32:12,756.756 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 15:32:14,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:32:14,111.111 INFO    ] Checking for system updates...
[2026-06-19 15:32:14,147.147 INFO    ] 200
[2026-06-19 15:32:14,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:14,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:32:14,212.212 INFO    ] No update needed
[2026-06-19 15:32:14,215.215 INFO    ] Checking for camera pi updates...
[2026-06-19 15:32:14,250.250 INFO    ] 200
[2026-06-19 15:32:14,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:14,297.297 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:32:14,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:32:14,349.349 INFO    ] No camera update needed
[2026-06-19 15:32:14,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:32:14,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:32:14,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:32:14,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:32:16,405.405 INFO    ] ================================================
[2026-06-19 15:32:16,420.420 INFO    ] Launching Daemon at Fri Jun 19 15:32:16 IST 2026
[2026-06-19 15:32:16,431.431 INFO    ] ================================================
[2026-06-19 15:32:17,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:32:17
[2026-06-19 15:32:17,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:32:17,890.890 INFO    ] Initializing speech engine...
[2026-06-19 15:32:17,911.911 INFO    ] 2026-06-19 15:32:17
[2026-06-19 15:32:18,180.180 INFO    ] 2026-06-19 15:32:18
[2026-06-19 15:32:18,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:32:18,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:32:18,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:32:18,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:32:18,597.597 INFO    ] time= 19/06/2026 15:32:18
[2026-06-19 15:32:18,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:32:18,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:32:18,777.777 INFO    ] No existing commands found in stream
[2026-06-19 15:32:23,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:32:23,816.816 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 15:32:24,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:32:24,503.503 INFO    ] Checking for system updates...
[2026-06-19 15:32:24,546.546 INFO    ] 200
[2026-06-19 15:32:24,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:24,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:32:24,615.615 INFO    ] No update needed
[2026-06-19 15:32:24,618.618 INFO    ] Checking for camera pi updates...
[2026-06-19 15:32:24,653.653 INFO    ] 200
[2026-06-19 15:32:24,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:24,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:32:24,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:32:24,760.760 INFO    ] No camera update needed
[2026-06-19 15:32:24,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:32:24,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:32:24,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:32:24,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:32:26,820.820 INFO    ] ================================================
[2026-06-19 15:32:26,834.834 INFO    ] Launching Daemon at Fri Jun 19 15:32:26 IST 2026
[2026-06-19 15:32:26,845.845 INFO    ] ================================================
[2026-06-19 15:32:27,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:32:27
[2026-06-19 15:32:28,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:32:28,272.272 INFO    ] Initializing speech engine...
[2026-06-19 15:32:28,285.285 INFO    ] 2026-06-19 15:32:28
[2026-06-19 15:32:28,568.568 INFO    ] 2026-06-19 15:32:28
[2026-06-19 15:32:28,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:32:28,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:32:28,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:32:28,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:32:28,984.984 INFO    ] time= 19/06/2026 15:32:28
[2026-06-19 15:32:28,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:32:28,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:32:29,068.068 INFO    ] No existing commands found in stream
[2026-06-19 15:32:34,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:32:34,089.089 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 15:32:35,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:32:35,935.935 INFO    ] Checking for system updates...
[2026-06-19 15:32:35,974.974 INFO    ] 200
[2026-06-19 15:32:35,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:36,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:32:36,033.033 INFO    ] No update needed
[2026-06-19 15:32:36,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 15:32:36,070.070 INFO    ] 200
[2026-06-19 15:32:36,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:36,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:32:36,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:32:36,153.153 INFO    ] No camera update needed
[2026-06-19 15:32:36,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:32:36,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:32:36,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:32:36,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:32:38,208.208 INFO    ] ================================================
[2026-06-19 15:32:38,224.224 INFO    ] Launching Daemon at Fri Jun 19 15:32:38 IST 2026
[2026-06-19 15:32:38,236.236 INFO    ] ================================================
[2026-06-19 15:32:38,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:32:38
[2026-06-19 15:32:39,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:32:39,640.640 INFO    ] Initializing speech engine...
[2026-06-19 15:32:39,648.648 INFO    ] 2026-06-19 15:32:39
[2026-06-19 15:32:39,938.938 INFO    ] 2026-06-19 15:32:39
[2026-06-19 15:32:39,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:32:40,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:32:40,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:32:40,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:32:40,355.355 INFO    ] time= 19/06/2026 15:32:40
[2026-06-19 15:32:40,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:32:40,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:32:40,513.513 INFO    ] No existing commands found in stream
[2026-06-19 15:32:45,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:32:45,540.540 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 15:32:48,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:32:48,955.955 INFO    ] Checking for system updates...
[2026-06-19 15:32:48,992.992 INFO    ] 200
[2026-06-19 15:32:48,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:49,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:32:49,050.050 INFO    ] No update needed
[2026-06-19 15:32:49,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 15:32:49,090.090 INFO    ] 200
[2026-06-19 15:32:49,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:32:49,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:32:49,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:32:49,175.175 INFO    ] No camera update needed
[2026-06-19 15:32:49,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:32:49,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:32:49,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:32:49,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:32:51,231.231 INFO    ] ================================================
[2026-06-19 15:32:51,246.246 INFO    ] Launching Daemon at Fri Jun 19 15:32:51 IST 2026
[2026-06-19 15:32:51,257.257 INFO    ] ================================================
[2026-06-19 15:32:51,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:32:51
[2026-06-19 15:32:52,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:32:52,700.700 INFO    ] Initializing speech engine...
[2026-06-19 15:32:52,706.706 INFO    ] 2026-06-19 15:32:52
[2026-06-19 15:32:53,001.001 INFO    ] 2026-06-19 15:32:52
[2026-06-19 15:32:53,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:32:53,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:32:53,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:32:53,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:32:53,393.393 INFO    ] time= 19/06/2026 15:32:53
[2026-06-19 15:32:53,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:32:53,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:32:53,524.524 INFO    ] No existing commands found in stream
[2026-06-19 15:32:58,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:32:58,553.553 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 15:33:02,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:33:02,187.187 INFO    ] Checking for system updates...
[2026-06-19 15:33:02,232.232 INFO    ] 200
[2026-06-19 15:33:02,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:02,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:33:02,307.307 INFO    ] No update needed
[2026-06-19 15:33:02,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 15:33:02,351.351 INFO    ] 200
[2026-06-19 15:33:02,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:02,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:33:02,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:33:02,442.442 INFO    ] No camera update needed
[2026-06-19 15:33:02,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:33:02,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:33:02,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:33:02,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:33:04,507.507 INFO    ] ================================================
[2026-06-19 15:33:04,523.523 INFO    ] Launching Daemon at Fri Jun 19 15:33:04 IST 2026
[2026-06-19 15:33:04,533.533 INFO    ] ================================================
[2026-06-19 15:33:05,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:33:05
[2026-06-19 15:33:05,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:33:06,026.026 INFO    ] Initializing speech engine...
[2026-06-19 15:33:06,035.035 INFO    ] 2026-06-19 15:33:06
[2026-06-19 15:33:06,317.317 INFO    ] 2026-06-19 15:33:06
[2026-06-19 15:33:06,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:33:06,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:33:06,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:33:06,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:33:06,869.869 INFO    ] time= 19/06/2026 15:33:06
[2026-06-19 15:33:06,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:33:06,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:33:07,027.027 INFO    ] No existing commands found in stream
[2026-06-19 15:33:12,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:33:12,053.053 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 15:33:17,497.497 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:33:17,500.500 INFO    ] Checking for system updates...
[2026-06-19 15:33:17,541.541 INFO    ] 200
[2026-06-19 15:33:17,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:17,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:33:17,601.601 INFO    ] No update needed
[2026-06-19 15:33:17,604.604 INFO    ] Checking for camera pi updates...
[2026-06-19 15:33:17,638.638 INFO    ] 200
[2026-06-19 15:33:17,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:17,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:33:17,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:33:17,727.727 INFO    ] No camera update needed
[2026-06-19 15:33:17,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:33:17,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:33:17,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:33:17,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:33:19,781.781 INFO    ] ================================================
[2026-06-19 15:33:19,797.797 INFO    ] Launching Daemon at Fri Jun 19 15:33:19 IST 2026
[2026-06-19 15:33:19,808.808 INFO    ] ================================================
[2026-06-19 15:33:20,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:33:20
[2026-06-19 15:33:20,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:33:21,240.240 INFO    ] Initializing speech engine...
[2026-06-19 15:33:21,249.249 INFO    ] 2026-06-19 15:33:21
[2026-06-19 15:33:21,496.496 INFO    ] 2026-06-19 15:33:21
[2026-06-19 15:33:21,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:33:21,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:33:21,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:33:21,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:33:21,987.987 INFO    ] time= 19/06/2026 15:33:21
[2026-06-19 15:33:22,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:33:22,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:33:22,158.158 INFO    ] No existing commands found in stream
[2026-06-19 15:33:27,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:33:27,198.198 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 15:33:28,192.192 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:33:28,195.195 INFO    ] Checking for system updates...
[2026-06-19 15:33:28,230.230 INFO    ] 200
[2026-06-19 15:33:28,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:28,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:33:28,287.287 INFO    ] No update needed
[2026-06-19 15:33:28,290.290 INFO    ] Checking for camera pi updates...
[2026-06-19 15:33:28,324.324 INFO    ] 200
[2026-06-19 15:33:28,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:28,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:33:28,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:33:28,419.419 INFO    ] No camera update needed
[2026-06-19 15:33:28,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:33:28,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:33:28,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:33:28,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:33:30,474.474 INFO    ] ================================================
[2026-06-19 15:33:30,489.489 INFO    ] Launching Daemon at Fri Jun 19 15:33:30 IST 2026
[2026-06-19 15:33:30,500.500 INFO    ] ================================================
[2026-06-19 15:33:31,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:33:31
[2026-06-19 15:33:31,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:33:31,999.999 INFO    ] Initializing speech engine...
[2026-06-19 15:33:32,016.016 INFO    ] 2026-06-19 15:33:32
[2026-06-19 15:33:32,316.316 INFO    ] 2026-06-19 15:33:32
[2026-06-19 15:33:32,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:33:32,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:33:32,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:33:32,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:33:32,834.834 INFO    ] time= 19/06/2026 15:33:32
[2026-06-19 15:33:32,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:33:32,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:33:33,073.073 INFO    ] No existing commands found in stream
[2026-06-19 15:33:38,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:33:38,094.094 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 15:33:40,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:33:40,568.568 INFO    ] Checking for system updates...
[2026-06-19 15:33:40,605.605 INFO    ] 200
[2026-06-19 15:33:40,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:40,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:33:40,665.665 INFO    ] No update needed
[2026-06-19 15:33:40,667.667 INFO    ] Checking for camera pi updates...
[2026-06-19 15:33:40,717.717 INFO    ] 200
[2026-06-19 15:33:40,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:40,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:33:40,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:33:40,914.914 INFO    ] No camera update needed
[2026-06-19 15:33:40,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:33:40,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:33:40,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:33:40,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:33:42,969.969 INFO    ] ================================================
[2026-06-19 15:33:42,985.985 INFO    ] Launching Daemon at Fri Jun 19 15:33:42 IST 2026
[2026-06-19 15:33:43,996.996 INFO    ] ================================================
[2026-06-19 15:33:43,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:33:43
[2026-06-19 15:33:44,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:33:44,436.436 INFO    ] Initializing speech engine...
[2026-06-19 15:33:44,443.443 INFO    ] 2026-06-19 15:33:44
[2026-06-19 15:33:44,736.736 INFO    ] 2026-06-19 15:33:44
[2026-06-19 15:33:44,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:33:44,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:33:44,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:33:45,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:33:45,147.147 INFO    ] time= 19/06/2026 15:33:45
[2026-06-19 15:33:45,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:33:45,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:33:45,322.322 INFO    ] No existing commands found in stream
[2026-06-19 15:33:50,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:33:50,356.356 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 15:33:52,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:33:52,656.656 INFO    ] Checking for system updates...
[2026-06-19 15:33:52,692.692 INFO    ] 200
[2026-06-19 15:33:52,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:52,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:33:52,750.750 INFO    ] No update needed
[2026-06-19 15:33:52,753.753 INFO    ] Checking for camera pi updates...
[2026-06-19 15:33:52,787.787 INFO    ] 200
[2026-06-19 15:33:52,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:33:52,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:33:52,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:33:52,896.896 INFO    ] No camera update needed
[2026-06-19 15:33:52,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:33:52,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:33:52,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:33:52,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:33:54,951.951 INFO    ] ================================================
[2026-06-19 15:33:54,967.967 INFO    ] Launching Daemon at Fri Jun 19 15:33:54 IST 2026
[2026-06-19 15:33:54,978.978 INFO    ] ================================================
[2026-06-19 15:33:55,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:33:55
[2026-06-19 15:33:56,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:33:56,453.453 INFO    ] Initializing speech engine...
[2026-06-19 15:33:56,462.462 INFO    ] 2026-06-19 15:33:56
[2026-06-19 15:33:56,772.772 INFO    ] 2026-06-19 15:33:56
[2026-06-19 15:33:56,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:33:57,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:33:57,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:33:57,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:33:57,282.282 INFO    ] time= 19/06/2026 15:33:57
[2026-06-19 15:33:57,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:33:57,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:33:57,447.447 INFO    ] No existing commands found in stream
[2026-06-19 15:34:02,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:34:02,471.471 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 15:34:02,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:34:02,948.948 INFO    ] Checking for system updates...
[2026-06-19 15:34:02,988.988 INFO    ] 200
[2026-06-19 15:34:02,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:03,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:34:03,045.045 INFO    ] No update needed
[2026-06-19 15:34:03,048.048 INFO    ] Checking for camera pi updates...
[2026-06-19 15:34:03,082.082 INFO    ] 200
[2026-06-19 15:34:03,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:03,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:34:03,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:34:03,175.175 INFO    ] No camera update needed
[2026-06-19 15:34:03,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:34:03,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:34:03,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:34:03,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:34:05,232.232 INFO    ] ================================================
[2026-06-19 15:34:05,248.248 INFO    ] Launching Daemon at Fri Jun 19 15:34:05 IST 2026
[2026-06-19 15:34:05,259.259 INFO    ] ================================================
[2026-06-19 15:34:05,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:34:05
[2026-06-19 15:34:06,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:34:06,767.767 INFO    ] Initializing speech engine...
[2026-06-19 15:34:06,779.779 INFO    ] 2026-06-19 15:34:06
[2026-06-19 15:34:07,046.046 INFO    ] 2026-06-19 15:34:07
[2026-06-19 15:34:07,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:34:07,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:34:07,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:34:07,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:34:07,462.462 INFO    ] time= 19/06/2026 15:34:07
[2026-06-19 15:34:07,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:34:07,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:34:07,549.549 INFO    ] No existing commands found in stream
[2026-06-19 15:34:12,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:34:12,588.588 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 15:34:16,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:34:16,679.679 INFO    ] Checking for system updates...
[2026-06-19 15:34:16,716.716 INFO    ] 200
[2026-06-19 15:34:16,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:16,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:34:16,779.779 INFO    ] No update needed
[2026-06-19 15:34:16,782.782 INFO    ] Checking for camera pi updates...
[2026-06-19 15:34:16,816.816 INFO    ] 200
[2026-06-19 15:34:16,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:16,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:34:16,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:34:16,911.911 INFO    ] No camera update needed
[2026-06-19 15:34:16,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:34:16,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:34:16,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:34:16,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:34:18,967.967 INFO    ] ================================================
[2026-06-19 15:34:18,982.982 INFO    ] Launching Daemon at Fri Jun 19 15:34:18 IST 2026
[2026-06-19 15:34:18,994.994 INFO    ] ================================================
[2026-06-19 15:34:19,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:34:19
[2026-06-19 15:34:20,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:34:20,440.440 INFO    ] Initializing speech engine...
[2026-06-19 15:34:20,449.449 INFO    ] 2026-06-19 15:34:20
[2026-06-19 15:34:20,711.711 INFO    ] 2026-06-19 15:34:20
[2026-06-19 15:34:20,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:34:21,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:34:21,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:34:21,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:34:21,260.260 INFO    ] time= 19/06/2026 15:34:21
[2026-06-19 15:34:21,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:34:21,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:34:21,425.425 INFO    ] No existing commands found in stream
[2026-06-19 15:34:26,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:34:26,447.447 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 15:34:28,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:34:28,897.897 INFO    ] Checking for system updates...
[2026-06-19 15:34:28,934.934 INFO    ] 200
[2026-06-19 15:34:28,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:28,989.989 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:34:28,991.991 INFO    ] No update needed
[2026-06-19 15:34:28,994.994 INFO    ] Checking for camera pi updates...
[2026-06-19 15:34:29,031.031 INFO    ] 200
[2026-06-19 15:34:29,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:29,074.074 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:34:29,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:34:29,122.122 INFO    ] No camera update needed
[2026-06-19 15:34:29,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:34:29,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:34:29,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:34:29,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:34:31,180.180 INFO    ] ================================================
[2026-06-19 15:34:31,198.198 INFO    ] Launching Daemon at Fri Jun 19 15:34:31 IST 2026
[2026-06-19 15:34:31,213.213 INFO    ] ================================================
[2026-06-19 15:34:31,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:34:31
[2026-06-19 15:34:32,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:34:32,734.734 INFO    ] Initializing speech engine...
[2026-06-19 15:34:32,740.740 INFO    ] 2026-06-19 15:34:32
[2026-06-19 15:34:33,034.034 INFO    ] 2026-06-19 15:34:33
[2026-06-19 15:34:33,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:34:33,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:34:33,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:34:33,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:34:33,525.525 INFO    ] time= 19/06/2026 15:34:33
[2026-06-19 15:34:33,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:34:33,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:34:33,723.723 INFO    ] No existing commands found in stream
[2026-06-19 15:34:38,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:34:38,738.738 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 15:34:42,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:34:42,425.425 INFO    ] Checking for system updates...
[2026-06-19 15:34:42,461.461 INFO    ] 200
[2026-06-19 15:34:42,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:42,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:34:42,519.519 INFO    ] No update needed
[2026-06-19 15:34:42,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 15:34:42,558.558 INFO    ] 200
[2026-06-19 15:34:42,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:42,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:34:42,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:34:42,655.655 INFO    ] No camera update needed
[2026-06-19 15:34:42,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:34:42,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:34:42,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:34:42,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:34:44,710.710 INFO    ] ================================================
[2026-06-19 15:34:44,725.725 INFO    ] Launching Daemon at Fri Jun 19 15:34:44 IST 2026
[2026-06-19 15:34:44,736.736 INFO    ] ================================================
[2026-06-19 15:34:45,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:34:45
[2026-06-19 15:34:45,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:34:46,159.159 INFO    ] Initializing speech engine...
[2026-06-19 15:34:46,167.167 INFO    ] 2026-06-19 15:34:46
[2026-06-19 15:34:46,437.437 INFO    ] 2026-06-19 15:34:46
[2026-06-19 15:34:46,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:34:46,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:34:46,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:34:46,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:34:46,811.811 INFO    ] time= 19/06/2026 15:34:46
[2026-06-19 15:34:46,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:34:46,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:34:47,011.011 INFO    ] No existing commands found in stream
[2026-06-19 15:34:52,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:34:52,025.025 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 15:34:55,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:34:55,386.386 INFO    ] Checking for system updates...
[2026-06-19 15:34:55,426.426 INFO    ] 200
[2026-06-19 15:34:55,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:55,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:34:55,485.485 INFO    ] No update needed
[2026-06-19 15:34:55,487.487 INFO    ] Checking for camera pi updates...
[2026-06-19 15:34:55,521.521 INFO    ] 200
[2026-06-19 15:34:55,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:34:55,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:34:55,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:34:55,613.613 INFO    ] No camera update needed
[2026-06-19 15:34:55,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:34:55,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:34:55,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:34:55,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:34:57,670.670 INFO    ] ================================================
[2026-06-19 15:34:57,686.686 INFO    ] Launching Daemon at Fri Jun 19 15:34:57 IST 2026
[2026-06-19 15:34:57,698.698 INFO    ] ================================================
[2026-06-19 15:34:58,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:34:58
[2026-06-19 15:34:58,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:34:59,167.167 INFO    ] Initializing speech engine...
[2026-06-19 15:34:59,172.172 INFO    ] 2026-06-19 15:34:59
[2026-06-19 15:34:59,434.434 INFO    ] 2026-06-19 15:34:59
[2026-06-19 15:34:59,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:34:59,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:34:59,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:34:59,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:34:59,900.900 INFO    ] time= 19/06/2026 15:34:59
[2026-06-19 15:34:59,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:34:59,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:35:00,111.111 INFO    ] No existing commands found in stream
[2026-06-19 15:35:05,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:35:05,147.147 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 15:35:08,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:35:08,988.988 INFO    ] Checking for system updates...
[2026-06-19 15:35:09,024.024 INFO    ] 200
[2026-06-19 15:35:09,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:35:09,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:35:09,083.083 INFO    ] No update needed
[2026-06-19 15:35:09,086.086 INFO    ] Checking for camera pi updates...
[2026-06-19 15:35:09,121.121 INFO    ] 200
[2026-06-19 15:35:09,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:35:09,165.165 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:35:09,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:35:09,223.223 INFO    ] No camera update needed
[2026-06-19 15:35:09,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:35:09,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:35:09,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:35:09,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:35:11,281.281 INFO    ] ================================================
[2026-06-19 15:35:11,298.298 INFO    ] Launching Daemon at Fri Jun 19 15:35:11 IST 2026
[2026-06-19 15:35:11,310.310 INFO    ] ================================================
[2026-06-19 15:35:11,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:35:11
[2026-06-19 15:35:12,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:35:12,722.722 INFO    ] Initializing speech engine...
[2026-06-19 15:35:12,729.729 INFO    ] 2026-06-19 15:35:12
[2026-06-19 15:35:13,022.022 INFO    ] 2026-06-19 15:35:12
[2026-06-19 15:35:13,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:35:13,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:35:13,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:35:13,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:35:13,440.440 INFO    ] time= 19/06/2026 15:35:13
[2026-06-19 15:35:13,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:35:13,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:35:13,532.532 INFO    ] No existing commands found in stream
[2026-06-19 15:35:18,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:35:18,570.570 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 15:35:20,608.608 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:35:20,611.611 INFO    ] Checking for system updates...
[2026-06-19 15:35:20,651.651 INFO    ] 200
[2026-06-19 15:35:20,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:35:20,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:35:20,708.708 INFO    ] No update needed
[2026-06-19 15:35:20,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 15:35:20,748.748 INFO    ] 200
[2026-06-19 15:35:20,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:35:20,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:35:20,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:35:20,851.851 INFO    ] No camera update needed
[2026-06-19 15:35:20,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:35:20,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:35:20,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:35:20,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:35:22,907.907 INFO    ] ================================================
[2026-06-19 15:35:22,922.922 INFO    ] Launching Daemon at Fri Jun 19 15:35:22 IST 2026
[2026-06-19 15:35:22,933.933 INFO    ] ================================================
[2026-06-19 15:35:23,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:35:23
[2026-06-19 15:35:24,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:35:24,394.394 INFO    ] Initializing speech engine...
[2026-06-19 15:35:24,401.401 INFO    ] 2026-06-19 15:35:24
[2026-06-19 15:35:24,702.702 INFO    ] 2026-06-19 15:35:24
[2026-06-19 15:35:24,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:35:24,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:35:24,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:35:25,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:35:25,129.129 INFO    ] time= 19/06/2026 15:35:25
[2026-06-19 15:35:25,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:35:25,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:35:25,274.274 INFO    ] No existing commands found in stream
[2026-06-19 15:35:30,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:35:30,298.298 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 15:35:34,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:35:34,637.637 INFO    ] Checking for system updates...
[2026-06-19 15:35:34,677.677 INFO    ] 200
[2026-06-19 15:35:34,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:35:34,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:35:34,741.741 INFO    ] No update needed
[2026-06-19 15:35:34,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 15:35:34,778.778 INFO    ] 200
[2026-06-19 15:35:34,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:35:34,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:35:34,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:35:34,871.871 INFO    ] No camera update needed
[2026-06-19 15:35:34,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:35:34,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:35:34,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:35:34,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:35:36,927.927 INFO    ] ================================================
[2026-06-19 15:35:36,942.942 INFO    ] Launching Daemon at Fri Jun 19 15:35:36 IST 2026
[2026-06-19 15:35:36,954.954 INFO    ] ================================================
[2026-06-19 15:35:37,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:35:37
[2026-06-19 15:35:38,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:35:38,618.618 INFO    ] Initializing speech engine...
[2026-06-19 15:35:38,626.626 INFO    ] 2026-06-19 15:35:38
[2026-06-19 15:35:38,921.921 INFO    ] 2026-06-19 15:35:38
[2026-06-19 15:35:38,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:35:39,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:35:39,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:35:39,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:35:39,752.752 INFO    ] time= 19/06/2026 15:35:39
[2026-06-19 15:35:39,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:35:39,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:35:39,931.931 INFO    ] No existing commands found in stream
[2026-06-19 15:35:44,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:35:44,945.945 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 15:35:48,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:35:48,334.334 INFO    ] Checking for system updates...
[2026-06-19 15:35:48,374.374 INFO    ] 200
[2026-06-19 15:35:48,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:35:48,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:35:48,432.432 INFO    ] No update needed
[2026-06-19 15:35:48,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 15:35:48,468.468 INFO    ] 200
[2026-06-19 15:35:48,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:35:48,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:35:48,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:35:48,650.650 INFO    ] No camera update needed
[2026-06-19 15:35:48,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:35:48,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:35:48,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:35:48,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:35:50,706.706 INFO    ] ================================================
[2026-06-19 15:35:50,723.723 INFO    ] Launching Daemon at Fri Jun 19 15:35:50 IST 2026
[2026-06-19 15:35:50,734.734 INFO    ] ================================================
[2026-06-19 15:35:51,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:35:51
[2026-06-19 15:35:51,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:35:52,194.194 INFO    ] Initializing speech engine...
[2026-06-19 15:35:52,201.201 INFO    ] 2026-06-19 15:35:52
[2026-06-19 15:35:52,461.461 INFO    ] 2026-06-19 15:35:52
[2026-06-19 15:35:52,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:35:52,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:35:52,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:35:52,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:35:52,949.949 INFO    ] time= 19/06/2026 15:35:52
[2026-06-19 15:35:52,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:35:53,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:35:53,142.142 INFO    ] No existing commands found in stream
[2026-06-19 15:35:58,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:35:58,169.169 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 15:36:00,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:36:00,673.673 INFO    ] Checking for system updates...
[2026-06-19 15:36:00,710.710 INFO    ] 200
[2026-06-19 15:36:00,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:00,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:36:00,775.775 INFO    ] No update needed
[2026-06-19 15:36:00,778.778 INFO    ] Checking for camera pi updates...
[2026-06-19 15:36:00,811.811 INFO    ] 200
[2026-06-19 15:36:00,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:00,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:36:00,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:36:00,911.911 INFO    ] No camera update needed
[2026-06-19 15:36:00,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:36:00,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:36:00,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:36:00,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:36:02,969.969 INFO    ] ================================================
[2026-06-19 15:36:02,984.984 INFO    ] Launching Daemon at Fri Jun 19 15:36:02 IST 2026
[2026-06-19 15:36:03,996.996 INFO    ] ================================================
[2026-06-19 15:36:03,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:36:03
[2026-06-19 15:36:04,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:36:04,460.460 INFO    ] Initializing speech engine...
[2026-06-19 15:36:04,470.470 INFO    ] 2026-06-19 15:36:04
[2026-06-19 15:36:04,729.729 INFO    ] 2026-06-19 15:36:04
[2026-06-19 15:36:04,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:36:05,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:36:05,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:36:05,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:36:05,263.263 INFO    ] time= 19/06/2026 15:36:05
[2026-06-19 15:36:05,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:36:05,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:36:05,497.497 INFO    ] No existing commands found in stream
[2026-06-19 15:36:10,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:36:10,520.520 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 15:36:12,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:36:12,262.262 INFO    ] Checking for system updates...
[2026-06-19 15:36:12,299.299 INFO    ] 200
[2026-06-19 15:36:12,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:12,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:36:12,366.366 INFO    ] No update needed
[2026-06-19 15:36:12,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 15:36:12,407.407 INFO    ] 200
[2026-06-19 15:36:12,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:12,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:36:12,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:36:12,510.510 INFO    ] No camera update needed
[2026-06-19 15:36:12,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:36:12,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:36:12,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:36:12,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:36:14,571.571 INFO    ] ================================================
[2026-06-19 15:36:14,586.586 INFO    ] Launching Daemon at Fri Jun 19 15:36:14 IST 2026
[2026-06-19 15:36:14,598.598 INFO    ] ================================================
[2026-06-19 15:36:15,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:36:15
[2026-06-19 15:36:15,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:36:16,024.024 INFO    ] Initializing speech engine...
[2026-06-19 15:36:16,033.033 INFO    ] 2026-06-19 15:36:16
[2026-06-19 15:36:16,283.283 INFO    ] 2026-06-19 15:36:16
[2026-06-19 15:36:16,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:36:16,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:36:16,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:36:16,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:36:16,769.769 INFO    ] time= 19/06/2026 15:36:16
[2026-06-19 15:36:16,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:36:16,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:36:16,989.989 INFO    ] No existing commands found in stream
[2026-06-19 15:36:22,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:36:22,019.019 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 15:36:25,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:36:25,243.243 INFO    ] Checking for system updates...
[2026-06-19 15:36:25,284.284 INFO    ] 200
[2026-06-19 15:36:25,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:25,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:36:25,349.349 INFO    ] No update needed
[2026-06-19 15:36:25,351.351 INFO    ] Checking for camera pi updates...
[2026-06-19 15:36:25,389.389 INFO    ] 200
[2026-06-19 15:36:25,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:25,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:36:25,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:36:25,493.493 INFO    ] No camera update needed
[2026-06-19 15:36:25,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:36:25,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:36:25,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:36:25,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:36:27,553.553 INFO    ] ================================================
[2026-06-19 15:36:27,568.568 INFO    ] Launching Daemon at Fri Jun 19 15:36:27 IST 2026
[2026-06-19 15:36:27,580.580 INFO    ] ================================================
[2026-06-19 15:36:28,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:36:28
[2026-06-19 15:36:28,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:36:29,227.227 INFO    ] Initializing speech engine...
[2026-06-19 15:36:29,238.238 INFO    ] 2026-06-19 15:36:29
[2026-06-19 15:36:29,529.529 INFO    ] 2026-06-19 15:36:29
[2026-06-19 15:36:29,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:36:29,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:36:29,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:36:30,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:36:30,071.071 INFO    ] time= 19/06/2026 15:36:30
[2026-06-19 15:36:30,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:36:30,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:36:30,213.213 INFO    ] No existing commands found in stream
[2026-06-19 15:36:35,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:36:35,244.244 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 15:36:39,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:36:39,281.281 INFO    ] Checking for system updates...
[2026-06-19 15:36:39,318.318 INFO    ] 200
[2026-06-19 15:36:39,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:39,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:36:39,377.377 INFO    ] No update needed
[2026-06-19 15:36:39,379.379 INFO    ] Checking for camera pi updates...
[2026-06-19 15:36:39,413.413 INFO    ] 200
[2026-06-19 15:36:39,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:39,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:36:39,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:36:39,522.522 INFO    ] No camera update needed
[2026-06-19 15:36:39,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:36:39,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:36:39,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:36:39,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:36:41,579.579 INFO    ] ================================================
[2026-06-19 15:36:41,597.597 INFO    ] Launching Daemon at Fri Jun 19 15:36:41 IST 2026
[2026-06-19 15:36:41,609.609 INFO    ] ================================================
[2026-06-19 15:36:42,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:36:42
[2026-06-19 15:36:42,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:36:43,195.195 INFO    ] Initializing speech engine...
[2026-06-19 15:36:43,209.209 INFO    ] 2026-06-19 15:36:43
[2026-06-19 15:36:43,521.521 INFO    ] 2026-06-19 15:36:43
[2026-06-19 15:36:43,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:36:43,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:36:43,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:36:44,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:36:44,056.056 INFO    ] time= 19/06/2026 15:36:44
[2026-06-19 15:36:44,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:36:44,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:36:44,229.229 INFO    ] No existing commands found in stream
[2026-06-19 15:36:49,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:36:49,263.263 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 15:36:53,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:36:53,571.571 INFO    ] Checking for system updates...
[2026-06-19 15:36:53,616.616 INFO    ] 200
[2026-06-19 15:36:53,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:53,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:36:53,682.682 INFO    ] No update needed
[2026-06-19 15:36:53,685.685 INFO    ] Checking for camera pi updates...
[2026-06-19 15:36:53,726.726 INFO    ] 200
[2026-06-19 15:36:53,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:36:53,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:36:53,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:36:53,832.832 INFO    ] No camera update needed
[2026-06-19 15:36:53,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:36:53,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:36:53,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:36:53,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:36:55,892.892 INFO    ] ================================================
[2026-06-19 15:36:55,908.908 INFO    ] Launching Daemon at Fri Jun 19 15:36:55 IST 2026
[2026-06-19 15:36:55,919.919 INFO    ] ================================================
[2026-06-19 15:36:56,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:36:56
[2026-06-19 15:36:57,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:36:57,372.372 INFO    ] Initializing speech engine...
[2026-06-19 15:36:57,379.379 INFO    ] 2026-06-19 15:36:57
[2026-06-19 15:36:57,656.656 INFO    ] 2026-06-19 15:36:57
[2026-06-19 15:36:57,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:36:57,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:36:57,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:36:58,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:36:58,142.142 INFO    ] time= 19/06/2026 15:36:58
[2026-06-19 15:36:58,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:36:58,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:36:58,361.361 INFO    ] No existing commands found in stream
[2026-06-19 15:37:03,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:37:03,381.381 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 15:37:05,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:37:05,546.546 INFO    ] Checking for system updates...
[2026-06-19 15:37:05,587.587 INFO    ] 200
[2026-06-19 15:37:05,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:05,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:37:05,648.648 INFO    ] No update needed
[2026-06-19 15:37:05,651.651 INFO    ] Checking for camera pi updates...
[2026-06-19 15:37:05,686.686 INFO    ] 200
[2026-06-19 15:37:05,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:05,731.731 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:37:05,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:37:05,782.782 INFO    ] No camera update needed
[2026-06-19 15:37:05,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:37:05,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:37:05,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:37:05,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:37:07,843.843 INFO    ] ================================================
[2026-06-19 15:37:07,858.858 INFO    ] Launching Daemon at Fri Jun 19 15:37:07 IST 2026
[2026-06-19 15:37:07,869.869 INFO    ] ================================================
[2026-06-19 15:37:08,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:37:08
[2026-06-19 15:37:09,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:37:09,326.326 INFO    ] Initializing speech engine...
[2026-06-19 15:37:09,335.335 INFO    ] 2026-06-19 15:37:09
[2026-06-19 15:37:09,593.593 INFO    ] 2026-06-19 15:37:09
[2026-06-19 15:37:09,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:37:09,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:37:09,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:37:10,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:37:10,080.080 INFO    ] time= 19/06/2026 15:37:10
[2026-06-19 15:37:10,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:37:10,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:37:10,220.220 INFO    ] No existing commands found in stream
[2026-06-19 15:37:15,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:37:15,236.236 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 15:37:16,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:37:16,150.150 INFO    ] Checking for system updates...
[2026-06-19 15:37:16,186.186 INFO    ] 200
[2026-06-19 15:37:16,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:16,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:37:16,251.251 INFO    ] No update needed
[2026-06-19 15:37:16,254.254 INFO    ] Checking for camera pi updates...
[2026-06-19 15:37:16,292.292 INFO    ] 200
[2026-06-19 15:37:16,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:16,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:37:16,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:37:16,391.391 INFO    ] No camera update needed
[2026-06-19 15:37:16,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:37:16,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:37:16,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:37:16,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:37:18,447.447 INFO    ] ================================================
[2026-06-19 15:37:18,463.463 INFO    ] Launching Daemon at Fri Jun 19 15:37:18 IST 2026
[2026-06-19 15:37:18,474.474 INFO    ] ================================================
[2026-06-19 15:37:19,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:37:19
[2026-06-19 15:37:19,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:37:19,935.935 INFO    ] Initializing speech engine...
[2026-06-19 15:37:19,944.944 INFO    ] 2026-06-19 15:37:19
[2026-06-19 15:37:20,192.192 INFO    ] 2026-06-19 15:37:20
[2026-06-19 15:37:20,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:37:20,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:37:20,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:37:20,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:37:20,691.691 INFO    ] time= 19/06/2026 15:37:20
[2026-06-19 15:37:20,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:37:20,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:37:20,908.908 INFO    ] No existing commands found in stream
[2026-06-19 15:37:25,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:37:25,934.934 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 15:37:27,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:37:27,463.463 INFO    ] Checking for system updates...
[2026-06-19 15:37:27,502.502 INFO    ] 200
[2026-06-19 15:37:27,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:27,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:37:27,571.571 INFO    ] No update needed
[2026-06-19 15:37:27,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 15:37:27,615.615 INFO    ] 200
[2026-06-19 15:37:27,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:27,664.664 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:37:27,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:37:27,716.716 INFO    ] No camera update needed
[2026-06-19 15:37:27,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:37:27,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:37:27,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:37:27,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:37:29,776.776 INFO    ] ================================================
[2026-06-19 15:37:29,792.792 INFO    ] Launching Daemon at Fri Jun 19 15:37:29 IST 2026
[2026-06-19 15:37:29,803.803 INFO    ] ================================================
[2026-06-19 15:37:30,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:37:30
[2026-06-19 15:37:30,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:37:31,255.255 INFO    ] Initializing speech engine...
[2026-06-19 15:37:31,264.264 INFO    ] 2026-06-19 15:37:31
[2026-06-19 15:37:31,535.535 INFO    ] 2026-06-19 15:37:31
[2026-06-19 15:37:31,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:37:31,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:37:31,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:37:31,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:37:31,970.970 INFO    ] time= 19/06/2026 15:37:31
[2026-06-19 15:37:31,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:37:31,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:37:32,059.059 INFO    ] No existing commands found in stream
[2026-06-19 15:37:37,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:37:37,075.075 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 15:37:38,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:37:38,464.464 INFO    ] Checking for system updates...
[2026-06-19 15:37:38,500.500 INFO    ] 200
[2026-06-19 15:37:38,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:38,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:37:38,562.562 INFO    ] No update needed
[2026-06-19 15:37:38,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 15:37:38,599.599 INFO    ] 200
[2026-06-19 15:37:38,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:38,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:37:38,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:37:38,691.691 INFO    ] No camera update needed
[2026-06-19 15:37:38,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:37:38,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:37:38,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:37:38,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:37:40,746.746 INFO    ] ================================================
[2026-06-19 15:37:40,761.761 INFO    ] Launching Daemon at Fri Jun 19 15:37:40 IST 2026
[2026-06-19 15:37:40,772.772 INFO    ] ================================================
[2026-06-19 15:37:41,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:37:41
[2026-06-19 15:37:41,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:37:42,201.201 INFO    ] Initializing speech engine...
[2026-06-19 15:37:42,210.210 INFO    ] 2026-06-19 15:37:42
[2026-06-19 15:37:42,506.506 INFO    ] 2026-06-19 15:37:42
[2026-06-19 15:37:42,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:37:42,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:37:42,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:37:42,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:37:42,931.931 INFO    ] time= 19/06/2026 15:37:42
[2026-06-19 15:37:42,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:37:42,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:37:43,024.024 INFO    ] No existing commands found in stream
[2026-06-19 15:37:48,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:37:48,042.042 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 15:37:51,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:37:51,091.091 INFO    ] Checking for system updates...
[2026-06-19 15:37:51,131.131 INFO    ] 200
[2026-06-19 15:37:51,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:51,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:37:51,196.196 INFO    ] No update needed
[2026-06-19 15:37:51,198.198 INFO    ] Checking for camera pi updates...
[2026-06-19 15:37:51,232.232 INFO    ] 200
[2026-06-19 15:37:51,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:37:51,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:37:51,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:37:51,439.439 INFO    ] No camera update needed
[2026-06-19 15:37:51,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:37:51,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:37:51,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:37:51,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:37:53,494.494 INFO    ] ================================================
[2026-06-19 15:37:53,509.509 INFO    ] Launching Daemon at Fri Jun 19 15:37:53 IST 2026
[2026-06-19 15:37:53,521.521 INFO    ] ================================================
[2026-06-19 15:37:54,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:37:54
[2026-06-19 15:37:54,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:37:54,969.969 INFO    ] Initializing speech engine...
[2026-06-19 15:37:54,974.974 INFO    ] 2026-06-19 15:37:54
[2026-06-19 15:37:55,223.223 INFO    ] 2026-06-19 15:37:55
[2026-06-19 15:37:55,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:37:55,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:37:55,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:37:55,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:37:55,662.662 INFO    ] time= 19/06/2026 15:37:55
[2026-06-19 15:37:55,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:37:55,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:37:55,915.915 INFO    ] No existing commands found in stream
[2026-06-19 15:38:00,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:38:00,950.950 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 15:38:01,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:38:01,981.981 INFO    ] Checking for system updates...
[2026-06-19 15:38:02,038.038 INFO    ] 200
[2026-06-19 15:38:02,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:02,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:38:02,129.129 INFO    ] No update needed
[2026-06-19 15:38:02,133.133 INFO    ] Checking for camera pi updates...
[2026-06-19 15:38:02,193.193 INFO    ] 200
[2026-06-19 15:38:02,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:02,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:38:02,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:38:02,324.324 INFO    ] No camera update needed
[2026-06-19 15:38:02,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:38:02,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:38:02,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:38:02,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:38:04,389.389 INFO    ] ================================================
[2026-06-19 15:38:04,404.404 INFO    ] Launching Daemon at Fri Jun 19 15:38:04 IST 2026
[2026-06-19 15:38:04,415.415 INFO    ] ================================================
[2026-06-19 15:38:05,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:38:05
[2026-06-19 15:38:05,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:38:06,033.033 INFO    ] Initializing speech engine...
[2026-06-19 15:38:06,039.039 INFO    ] 2026-06-19 15:38:06
[2026-06-19 15:38:06,323.323 INFO    ] 2026-06-19 15:38:06
[2026-06-19 15:38:06,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:38:06,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:38:06,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:38:06,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:38:06,906.906 INFO    ] time= 19/06/2026 15:38:06
[2026-06-19 15:38:06,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:38:06,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:38:07,068.068 INFO    ] No existing commands found in stream
[2026-06-19 15:38:12,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:38:12,093.093 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 15:38:15,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:38:15,573.573 INFO    ] Checking for system updates...
[2026-06-19 15:38:15,612.612 INFO    ] 200
[2026-06-19 15:38:15,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:15,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:38:15,670.670 INFO    ] No update needed
[2026-06-19 15:38:15,673.673 INFO    ] Checking for camera pi updates...
[2026-06-19 15:38:15,706.706 INFO    ] 200
[2026-06-19 15:38:15,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:15,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:38:15,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:38:15,798.798 INFO    ] No camera update needed
[2026-06-19 15:38:15,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:38:15,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:38:15,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:38:15,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:38:17,854.854 INFO    ] ================================================
[2026-06-19 15:38:17,870.870 INFO    ] Launching Daemon at Fri Jun 19 15:38:17 IST 2026
[2026-06-19 15:38:17,881.881 INFO    ] ================================================
[2026-06-19 15:38:18,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:38:18
[2026-06-19 15:38:19,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:38:19,304.304 INFO    ] Initializing speech engine...
[2026-06-19 15:38:19,311.311 INFO    ] 2026-06-19 15:38:19
[2026-06-19 15:38:19,561.561 INFO    ] 2026-06-19 15:38:19
[2026-06-19 15:38:19,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:38:19,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:38:19,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:38:19,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:38:20,059.059 INFO    ] time= 19/06/2026 15:38:20
[2026-06-19 15:38:20,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:38:20,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:38:20,274.274 INFO    ] No existing commands found in stream
[2026-06-19 15:38:25,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:38:25,299.299 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 15:38:26,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:38:27,000.000 INFO    ] Checking for system updates...
[2026-06-19 15:38:27,058.058 INFO    ] 200
[2026-06-19 15:38:27,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:27,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:38:27,118.118 INFO    ] No update needed
[2026-06-19 15:38:27,120.120 INFO    ] Checking for camera pi updates...
[2026-06-19 15:38:27,158.158 INFO    ] 200
[2026-06-19 15:38:27,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:27,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:38:27,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:38:27,251.251 INFO    ] No camera update needed
[2026-06-19 15:38:27,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:38:27,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:38:27,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:38:27,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:38:29,309.309 INFO    ] ================================================
[2026-06-19 15:38:29,325.325 INFO    ] Launching Daemon at Fri Jun 19 15:38:29 IST 2026
[2026-06-19 15:38:29,335.335 INFO    ] ================================================
[2026-06-19 15:38:29,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:38:29
[2026-06-19 15:38:30,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:38:30,934.934 INFO    ] Initializing speech engine...
[2026-06-19 15:38:30,949.949 INFO    ] 2026-06-19 15:38:30
[2026-06-19 15:38:31,225.225 INFO    ] 2026-06-19 15:38:31
[2026-06-19 15:38:31,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:38:31,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:38:31,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:38:31,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:38:31,767.767 INFO    ] time= 19/06/2026 15:38:31
[2026-06-19 15:38:31,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:38:31,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:38:31,972.972 INFO    ] No existing commands found in stream
[2026-06-19 15:38:36,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:38:37,001.001 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 15:38:39,072.072 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:38:39,074.074 INFO    ] Checking for system updates...
[2026-06-19 15:38:39,111.111 INFO    ] 200
[2026-06-19 15:38:39,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:39,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:38:39,169.169 INFO    ] No update needed
[2026-06-19 15:38:39,171.171 INFO    ] Checking for camera pi updates...
[2026-06-19 15:38:39,209.209 INFO    ] 200
[2026-06-19 15:38:39,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:39,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:38:39,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:38:39,297.297 INFO    ] No camera update needed
[2026-06-19 15:38:39,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:38:39,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:38:39,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:38:39,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:38:41,351.351 INFO    ] ================================================
[2026-06-19 15:38:41,366.366 INFO    ] Launching Daemon at Fri Jun 19 15:38:41 IST 2026
[2026-06-19 15:38:41,377.377 INFO    ] ================================================
[2026-06-19 15:38:42,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:38:42
[2026-06-19 15:38:42,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:38:42,990.990 INFO    ] Initializing speech engine...
[2026-06-19 15:38:42,998.998 INFO    ] 2026-06-19 15:38:42
[2026-06-19 15:38:43,282.282 INFO    ] 2026-06-19 15:38:43
[2026-06-19 15:38:43,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:38:43,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:38:43,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:38:43,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:38:43,822.822 INFO    ] time= 19/06/2026 15:38:43
[2026-06-19 15:38:43,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:38:43,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:38:43,983.983 INFO    ] No existing commands found in stream
[2026-06-19 15:38:49,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:38:49,016.016 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 15:38:50,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:38:50,683.683 INFO    ] Checking for system updates...
[2026-06-19 15:38:50,725.725 INFO    ] 200
[2026-06-19 15:38:50,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:50,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:38:50,788.788 INFO    ] No update needed
[2026-06-19 15:38:50,791.791 INFO    ] Checking for camera pi updates...
[2026-06-19 15:38:50,824.824 INFO    ] 200
[2026-06-19 15:38:50,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:38:50,867.867 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:38:50,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:38:50,920.920 INFO    ] No camera update needed
[2026-06-19 15:38:50,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:38:50,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:38:50,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:38:50,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:38:52,976.976 INFO    ] ================================================
[2026-06-19 15:38:52,991.991 INFO    ] Launching Daemon at Fri Jun 19 15:38:52 IST 2026
[2026-06-19 15:38:53,002.002 INFO    ] ================================================
[2026-06-19 15:38:53,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:38:53
[2026-06-19 15:38:54,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:38:54,451.451 INFO    ] Initializing speech engine...
[2026-06-19 15:38:54,466.466 INFO    ] 2026-06-19 15:38:54
[2026-06-19 15:38:54,722.722 INFO    ] 2026-06-19 15:38:54
[2026-06-19 15:38:54,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:38:54,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:38:54,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:38:55,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:38:55,214.214 INFO    ] time= 19/06/2026 15:38:55
[2026-06-19 15:38:55,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:38:55,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:38:55,385.385 INFO    ] No existing commands found in stream
[2026-06-19 15:39:00,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:39:00,401.401 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 15:39:02,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:39:02,844.844 INFO    ] Checking for system updates...
[2026-06-19 15:39:02,883.883 INFO    ] 200
[2026-06-19 15:39:02,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:02,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:39:02,953.953 INFO    ] No update needed
[2026-06-19 15:39:02,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 15:39:02,994.994 INFO    ] 200
[2026-06-19 15:39:02,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:03,050.050 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:39:03,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:39:03,109.109 INFO    ] No camera update needed
[2026-06-19 15:39:03,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:39:03,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:39:03,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:39:03,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:39:05,177.177 INFO    ] ================================================
[2026-06-19 15:39:05,192.192 INFO    ] Launching Daemon at Fri Jun 19 15:39:05 IST 2026
[2026-06-19 15:39:05,203.203 INFO    ] ================================================
[2026-06-19 15:39:05,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:39:05
[2026-06-19 15:39:06,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:39:06,812.812 INFO    ] Initializing speech engine...
[2026-06-19 15:39:06,821.821 INFO    ] 2026-06-19 15:39:06
[2026-06-19 15:39:07,071.071 INFO    ] 2026-06-19 15:39:07
[2026-06-19 15:39:07,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:39:07,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:39:07,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:39:07,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:39:07,630.630 INFO    ] time= 19/06/2026 15:39:07
[2026-06-19 15:39:07,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:39:07,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:39:07,766.766 INFO    ] No existing commands found in stream
[2026-06-19 15:39:12,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:39:12,797.797 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 15:39:13,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:39:13,557.557 INFO    ] Checking for system updates...
[2026-06-19 15:39:13,594.594 INFO    ] 200
[2026-06-19 15:39:13,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:13,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:39:13,652.652 INFO    ] No update needed
[2026-06-19 15:39:13,654.654 INFO    ] Checking for camera pi updates...
[2026-06-19 15:39:13,688.688 INFO    ] 200
[2026-06-19 15:39:13,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:13,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:39:13,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:39:13,788.788 INFO    ] No camera update needed
[2026-06-19 15:39:13,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:39:13,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:39:13,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:39:13,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:39:15,846.846 INFO    ] ================================================
[2026-06-19 15:39:15,862.862 INFO    ] Launching Daemon at Fri Jun 19 15:39:15 IST 2026
[2026-06-19 15:39:15,872.872 INFO    ] ================================================
[2026-06-19 15:39:16,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:39:16
[2026-06-19 15:39:17,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:39:17,338.338 INFO    ] Initializing speech engine...
[2026-06-19 15:39:17,347.347 INFO    ] 2026-06-19 15:39:17
[2026-06-19 15:39:17,607.607 INFO    ] 2026-06-19 15:39:17
[2026-06-19 15:39:17,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:39:17,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:39:17,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:39:18,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:39:18,158.158 INFO    ] time= 19/06/2026 15:39:18
[2026-06-19 15:39:18,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:39:18,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:39:18,310.310 INFO    ] No existing commands found in stream
[2026-06-19 15:39:23,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:39:23,325.325 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 15:39:27,272.272 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:39:27,275.275 INFO    ] Checking for system updates...
[2026-06-19 15:39:27,316.316 INFO    ] 200
[2026-06-19 15:39:27,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:27,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:39:27,388.388 INFO    ] No update needed
[2026-06-19 15:39:27,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 15:39:27,429.429 INFO    ] 200
[2026-06-19 15:39:27,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:27,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:39:27,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:39:27,505.505 INFO    ] No camera update needed
[2026-06-19 15:39:27,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:39:27,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:39:27,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:39:27,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:39:29,560.560 INFO    ] ================================================
[2026-06-19 15:39:29,576.576 INFO    ] Launching Daemon at Fri Jun 19 15:39:29 IST 2026
[2026-06-19 15:39:29,587.587 INFO    ] ================================================
[2026-06-19 15:39:30,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:39:30
[2026-06-19 15:39:30,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:39:31,192.192 INFO    ] Initializing speech engine...
[2026-06-19 15:39:31,202.202 INFO    ] 2026-06-19 15:39:31
[2026-06-19 15:39:31,484.484 INFO    ] 2026-06-19 15:39:31
[2026-06-19 15:39:31,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:39:31,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:39:31,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:39:32,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:39:32,043.043 INFO    ] time= 19/06/2026 15:39:32
[2026-06-19 15:39:32,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:39:32,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:39:32,208.208 INFO    ] No existing commands found in stream
[2026-06-19 15:39:37,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:39:37,250.250 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 15:39:38,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:39:38,360.360 INFO    ] Checking for system updates...
[2026-06-19 15:39:38,397.397 INFO    ] 200
[2026-06-19 15:39:38,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:38,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:39:38,456.456 INFO    ] No update needed
[2026-06-19 15:39:38,459.459 INFO    ] Checking for camera pi updates...
[2026-06-19 15:39:38,494.494 INFO    ] 200
[2026-06-19 15:39:38,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:38,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:39:38,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:39:38,595.595 INFO    ] No camera update needed
[2026-06-19 15:39:38,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:39:38,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:39:38,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:39:38,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:39:40,649.649 INFO    ] ================================================
[2026-06-19 15:39:40,664.664 INFO    ] Launching Daemon at Fri Jun 19 15:39:40 IST 2026
[2026-06-19 15:39:40,675.675 INFO    ] ================================================
[2026-06-19 15:39:41,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:39:41
[2026-06-19 15:39:42,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:39:42,321.321 INFO    ] Initializing speech engine...
[2026-06-19 15:39:42,330.330 INFO    ] 2026-06-19 15:39:42
[2026-06-19 15:39:42,601.601 INFO    ] 2026-06-19 15:39:42
[2026-06-19 15:39:42,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:39:42,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:39:42,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:39:43,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:39:43,182.182 INFO    ] time= 19/06/2026 15:39:43
[2026-06-19 15:39:43,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:39:43,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:39:43,339.339 INFO    ] No existing commands found in stream
[2026-06-19 15:39:48,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:39:48,374.374 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 15:39:50,434.434 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:39:50,437.437 INFO    ] Checking for system updates...
[2026-06-19 15:39:50,474.474 INFO    ] 200
[2026-06-19 15:39:50,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:50,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:39:50,532.532 INFO    ] No update needed
[2026-06-19 15:39:50,534.534 INFO    ] Checking for camera pi updates...
[2026-06-19 15:39:50,568.568 INFO    ] 200
[2026-06-19 15:39:50,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:39:50,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:39:50,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:39:50,657.657 INFO    ] No camera update needed
[2026-06-19 15:39:50,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:39:50,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:39:50,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:39:50,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:39:52,711.711 INFO    ] ================================================
[2026-06-19 15:39:52,727.727 INFO    ] Launching Daemon at Fri Jun 19 15:39:52 IST 2026
[2026-06-19 15:39:52,738.738 INFO    ] ================================================
[2026-06-19 15:39:53,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:39:53
[2026-06-19 15:39:53,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:39:54,202.202 INFO    ] Initializing speech engine...
[2026-06-19 15:39:54,211.211 INFO    ] 2026-06-19 15:39:54
[2026-06-19 15:39:54,474.474 INFO    ] 2026-06-19 15:39:54
[2026-06-19 15:39:54,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:39:54,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:39:54,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:39:54,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:39:55,017.017 INFO    ] time= 19/06/2026 15:39:54
[2026-06-19 15:39:55,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:39:55,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:39:55,169.169 INFO    ] No existing commands found in stream
[2026-06-19 15:40:00,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:40:00,186.186 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 15:40:08,087.087 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:40:08,090.090 INFO    ] Checking for system updates...
[2026-06-19 15:40:08,134.134 INFO    ] 200
[2026-06-19 15:40:08,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:08,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:40:08,199.199 INFO    ] No update needed
[2026-06-19 15:40:08,202.202 INFO    ] Checking for camera pi updates...
[2026-06-19 15:40:08,236.236 INFO    ] 200
[2026-06-19 15:40:08,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:08,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:40:08,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:40:08,331.331 INFO    ] No camera update needed
[2026-06-19 15:40:08,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:40:08,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:40:08,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:40:08,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:40:10,386.386 INFO    ] ================================================
[2026-06-19 15:40:10,402.402 INFO    ] Launching Daemon at Fri Jun 19 15:40:10 IST 2026
[2026-06-19 15:40:10,413.413 INFO    ] ================================================
[2026-06-19 15:40:10,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:40:10
[2026-06-19 15:40:11,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:40:11,835.835 INFO    ] Initializing speech engine...
[2026-06-19 15:40:11,842.842 INFO    ] 2026-06-19 15:40:11
[2026-06-19 15:40:12,122.122 INFO    ] 2026-06-19 15:40:12
[2026-06-19 15:40:12,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:40:12,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:40:12,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:40:12,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:40:12,669.669 INFO    ] time= 19/06/2026 15:40:12
[2026-06-19 15:40:12,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:40:12,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:40:12,853.853 INFO    ] No existing commands found in stream
[2026-06-19 15:40:17,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:40:17,892.892 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 15:40:21,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:40:21,518.518 INFO    ] Checking for system updates...
[2026-06-19 15:40:21,560.560 INFO    ] 200
[2026-06-19 15:40:21,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:21,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:40:21,625.625 INFO    ] No update needed
[2026-06-19 15:40:21,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 15:40:21,665.665 INFO    ] 200
[2026-06-19 15:40:21,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:21,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:40:21,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:40:21,760.760 INFO    ] No camera update needed
[2026-06-19 15:40:21,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:40:21,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:40:21,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:40:21,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:40:23,817.817 INFO    ] ================================================
[2026-06-19 15:40:23,833.833 INFO    ] Launching Daemon at Fri Jun 19 15:40:23 IST 2026
[2026-06-19 15:40:23,844.844 INFO    ] ================================================
[2026-06-19 15:40:24,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:40:24
[2026-06-19 15:40:25,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:40:25,308.308 INFO    ] Initializing speech engine...
[2026-06-19 15:40:25,313.313 INFO    ] 2026-06-19 15:40:25
[2026-06-19 15:40:25,575.575 INFO    ] 2026-06-19 15:40:25
[2026-06-19 15:40:25,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:40:25,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:40:25,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:40:25,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:40:26,061.061 INFO    ] time= 19/06/2026 15:40:26
[2026-06-19 15:40:26,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:40:26,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:40:26,298.298 INFO    ] No existing commands found in stream
[2026-06-19 15:40:31,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:40:31,336.336 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 15:40:35,669.669 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:40:35,672.672 INFO    ] Checking for system updates...
[2026-06-19 15:40:35,709.709 INFO    ] 200
[2026-06-19 15:40:35,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:35,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:40:35,767.767 INFO    ] No update needed
[2026-06-19 15:40:35,770.770 INFO    ] Checking for camera pi updates...
[2026-06-19 15:40:35,805.805 INFO    ] 200
[2026-06-19 15:40:35,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:35,855.855 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:40:35,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:40:35,914.914 INFO    ] No camera update needed
[2026-06-19 15:40:35,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:40:35,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:40:35,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:40:35,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:40:37,973.973 INFO    ] ================================================
[2026-06-19 15:40:37,988.988 INFO    ] Launching Daemon at Fri Jun 19 15:40:37 IST 2026
[2026-06-19 15:40:38,000.000 INFO    ] ================================================
[2026-06-19 15:40:38,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:40:38
[2026-06-19 15:40:39,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:40:39,412.412 INFO    ] Initializing speech engine...
[2026-06-19 15:40:39,427.427 INFO    ] 2026-06-19 15:40:39
[2026-06-19 15:40:39,694.694 INFO    ] 2026-06-19 15:40:39
[2026-06-19 15:40:39,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:40:39,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:40:39,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:40:40,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:40:40,193.193 INFO    ] time= 19/06/2026 15:40:40
[2026-06-19 15:40:40,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:40:40,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:40:40,419.419 INFO    ] No existing commands found in stream
[2026-06-19 15:40:45,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:40:45,433.433 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 15:40:46,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:40:46,252.252 INFO    ] Checking for system updates...
[2026-06-19 15:40:46,293.293 INFO    ] 200
[2026-06-19 15:40:46,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:46,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:40:46,358.358 INFO    ] No update needed
[2026-06-19 15:40:46,360.360 INFO    ] Checking for camera pi updates...
[2026-06-19 15:40:46,397.397 INFO    ] 200
[2026-06-19 15:40:46,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:46,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:40:46,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:40:46,529.529 INFO    ] No camera update needed
[2026-06-19 15:40:46,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:40:46,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:40:46,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:40:46,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:40:48,586.586 INFO    ] ================================================
[2026-06-19 15:40:48,602.602 INFO    ] Launching Daemon at Fri Jun 19 15:40:48 IST 2026
[2026-06-19 15:40:48,614.614 INFO    ] ================================================
[2026-06-19 15:40:49,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:40:49
[2026-06-19 15:40:49,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:40:50,018.018 INFO    ] Initializing speech engine...
[2026-06-19 15:40:50,040.040 INFO    ] 2026-06-19 15:40:50
[2026-06-19 15:40:50,293.293 INFO    ] 2026-06-19 15:40:50
[2026-06-19 15:40:50,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:40:50,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:40:50,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:40:50,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:40:50,764.764 INFO    ] time= 19/06/2026 15:40:50
[2026-06-19 15:40:50,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:40:50,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:40:51,006.006 INFO    ] No existing commands found in stream
[2026-06-19 15:40:56,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:40:56,033.033 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 15:40:59,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:40:59,289.289 INFO    ] Checking for system updates...
[2026-06-19 15:40:59,324.324 INFO    ] 200
[2026-06-19 15:40:59,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:59,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:40:59,390.390 INFO    ] No update needed
[2026-06-19 15:40:59,392.392 INFO    ] Checking for camera pi updates...
[2026-06-19 15:40:59,429.429 INFO    ] 200
[2026-06-19 15:40:59,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:40:59,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:40:59,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:40:59,524.524 INFO    ] No camera update needed
[2026-06-19 15:40:59,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:40:59,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:40:59,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:40:59,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:41:01,580.580 INFO    ] ================================================
[2026-06-19 15:41:01,600.600 INFO    ] Launching Daemon at Fri Jun 19 15:41:01 IST 2026
[2026-06-19 15:41:01,616.616 INFO    ] ================================================
[2026-06-19 15:41:02,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:41:02
[2026-06-19 15:41:02,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:41:03,186.186 INFO    ] Initializing speech engine...
[2026-06-19 15:41:03,195.195 INFO    ] 2026-06-19 15:41:03
[2026-06-19 15:41:03,447.447 INFO    ] 2026-06-19 15:41:03
[2026-06-19 15:41:03,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:41:03,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:41:03,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:41:03,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:41:03,955.955 INFO    ] time= 19/06/2026 15:41:03
[2026-06-19 15:41:04,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:41:04,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:41:04,180.180 INFO    ] No existing commands found in stream
[2026-06-19 15:41:09,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:41:09,198.198 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 15:41:11,714.714 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:41:11,716.716 INFO    ] Checking for system updates...
[2026-06-19 15:41:11,752.752 INFO    ] 200
[2026-06-19 15:41:11,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:11,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:41:11,816.816 INFO    ] No update needed
[2026-06-19 15:41:11,818.818 INFO    ] Checking for camera pi updates...
[2026-06-19 15:41:11,855.855 INFO    ] 200
[2026-06-19 15:41:11,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:11,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:41:11,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:41:11,949.949 INFO    ] No camera update needed
[2026-06-19 15:41:11,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:41:11,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:41:11,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:41:11,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:41:14,005.005 INFO    ] ================================================
[2026-06-19 15:41:14,021.021 INFO    ] Launching Daemon at Fri Jun 19 15:41:14 IST 2026
[2026-06-19 15:41:14,033.033 INFO    ] ================================================
[2026-06-19 15:41:14,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:41:14
[2026-06-19 15:41:15,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:41:15,488.488 INFO    ] Initializing speech engine...
[2026-06-19 15:41:15,496.496 INFO    ] 2026-06-19 15:41:15
[2026-06-19 15:41:15,752.752 INFO    ] 2026-06-19 15:41:15
[2026-06-19 15:41:15,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:41:16,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:41:16,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:41:16,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:41:16,294.294 INFO    ] time= 19/06/2026 15:41:16
[2026-06-19 15:41:16,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:41:16,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:41:16,448.448 INFO    ] No existing commands found in stream
[2026-06-19 15:41:21,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:41:21,462.462 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 15:41:23,258.258 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:41:23,260.260 INFO    ] Checking for system updates...
[2026-06-19 15:41:23,299.299 INFO    ] 200
[2026-06-19 15:41:23,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:23,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:41:23,362.362 INFO    ] No update needed
[2026-06-19 15:41:23,364.364 INFO    ] Checking for camera pi updates...
[2026-06-19 15:41:23,401.401 INFO    ] 200
[2026-06-19 15:41:23,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:23,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:41:23,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:41:23,489.489 INFO    ] No camera update needed
[2026-06-19 15:41:23,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:41:23,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:41:23,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:41:23,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:41:25,546.546 INFO    ] ================================================
[2026-06-19 15:41:25,561.561 INFO    ] Launching Daemon at Fri Jun 19 15:41:25 IST 2026
[2026-06-19 15:41:25,572.572 INFO    ] ================================================
[2026-06-19 15:41:26,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:41:26
[2026-06-19 15:41:26,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:41:27,061.061 INFO    ] Initializing speech engine...
[2026-06-19 15:41:27,071.071 INFO    ] 2026-06-19 15:41:27
[2026-06-19 15:41:27,322.322 INFO    ] 2026-06-19 15:41:27
[2026-06-19 15:41:27,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:41:27,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:41:27,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:41:27,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:41:27,809.809 INFO    ] time= 19/06/2026 15:41:27
[2026-06-19 15:41:27,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:41:27,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:41:28,035.035 INFO    ] No existing commands found in stream
[2026-06-19 15:41:33,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:41:33,053.053 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 15:41:34,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:41:34,298.298 INFO    ] Checking for system updates...
[2026-06-19 15:41:34,346.346 INFO    ] 200
[2026-06-19 15:41:34,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:34,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:41:34,416.416 INFO    ] No update needed
[2026-06-19 15:41:34,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 15:41:34,457.457 INFO    ] 200
[2026-06-19 15:41:34,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:34,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:41:34,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:41:34,563.563 INFO    ] No camera update needed
[2026-06-19 15:41:34,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:41:34,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:41:34,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:41:34,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:41:36,621.621 INFO    ] ================================================
[2026-06-19 15:41:36,637.637 INFO    ] Launching Daemon at Fri Jun 19 15:41:36 IST 2026
[2026-06-19 15:41:36,649.649 INFO    ] ================================================
[2026-06-19 15:41:37,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:41:37
[2026-06-19 15:41:37,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:41:38,051.051 INFO    ] Initializing speech engine...
[2026-06-19 15:41:38,060.060 INFO    ] 2026-06-19 15:41:38
[2026-06-19 15:41:38,334.334 INFO    ] 2026-06-19 15:41:38
[2026-06-19 15:41:38,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:41:38,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:41:38,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:41:38,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:41:38,822.822 INFO    ] time= 19/06/2026 15:41:38
[2026-06-19 15:41:38,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:41:38,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:41:39,058.058 INFO    ] No existing commands found in stream
[2026-06-19 15:41:44,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:41:44,079.079 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 15:41:46,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:41:46,874.874 INFO    ] Checking for system updates...
[2026-06-19 15:41:46,911.911 INFO    ] 200
[2026-06-19 15:41:46,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:46,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:41:46,977.977 INFO    ] No update needed
[2026-06-19 15:41:46,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 15:41:47,020.020 INFO    ] 200
[2026-06-19 15:41:47,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:47,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:41:47,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:41:47,111.111 INFO    ] No camera update needed
[2026-06-19 15:41:47,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:41:47,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:41:47,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:41:47,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:41:49,170.170 INFO    ] ================================================
[2026-06-19 15:41:49,185.185 INFO    ] Launching Daemon at Fri Jun 19 15:41:49 IST 2026
[2026-06-19 15:41:49,196.196 INFO    ] ================================================
[2026-06-19 15:41:49,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:41:49
[2026-06-19 15:41:50,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:41:50,637.637 INFO    ] Initializing speech engine...
[2026-06-19 15:41:50,644.644 INFO    ] 2026-06-19 15:41:50
[2026-06-19 15:41:50,893.893 INFO    ] 2026-06-19 15:41:50
[2026-06-19 15:41:50,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:41:51,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:41:51,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:41:51,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:41:51,380.380 INFO    ] time= 19/06/2026 15:41:51
[2026-06-19 15:41:51,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:41:51,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:41:51,591.591 INFO    ] No existing commands found in stream
[2026-06-19 15:41:56,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:41:56,627.627 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 15:41:58,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:41:58,754.754 INFO    ] Checking for system updates...
[2026-06-19 15:41:58,797.797 INFO    ] 200
[2026-06-19 15:41:58,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:58,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:41:58,862.862 INFO    ] No update needed
[2026-06-19 15:41:58,866.866 INFO    ] Checking for camera pi updates...
[2026-06-19 15:41:58,904.904 INFO    ] 200
[2026-06-19 15:41:58,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:41:58,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:41:58,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:41:59,002.002 INFO    ] No camera update needed
[2026-06-19 15:41:59,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:41:59,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:41:59,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:41:59,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:42:01,056.056 INFO    ] ================================================
[2026-06-19 15:42:01,071.071 INFO    ] Launching Daemon at Fri Jun 19 15:42:01 IST 2026
[2026-06-19 15:42:01,082.082 INFO    ] ================================================
[2026-06-19 15:42:01,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:42:01
[2026-06-19 15:42:02,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:42:02,781.781 INFO    ] Initializing speech engine...
[2026-06-19 15:42:02,791.791 INFO    ] 2026-06-19 15:42:02
[2026-06-19 15:42:03,058.058 INFO    ] 2026-06-19 15:42:03
[2026-06-19 15:42:03,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:42:03,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:42:03,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:42:03,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:42:03,422.422 INFO    ] time= 19/06/2026 15:42:03
[2026-06-19 15:42:03,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:42:03,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:42:03,559.559 INFO    ] No existing commands found in stream
[2026-06-19 15:42:08,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:42:08,576.576 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 15:42:12,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:42:12,062.062 INFO    ] Checking for system updates...
[2026-06-19 15:42:12,099.099 INFO    ] 200
[2026-06-19 15:42:12,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:42:12,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:42:12,164.164 INFO    ] No update needed
[2026-06-19 15:42:12,167.167 INFO    ] Checking for camera pi updates...
[2026-06-19 15:42:12,201.201 INFO    ] 200
[2026-06-19 15:42:12,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:42:12,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:42:12,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:42:12,394.394 INFO    ] No camera update needed
[2026-06-19 15:42:12,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:42:12,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:42:12,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:42:12,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:42:14,451.451 INFO    ] ================================================
[2026-06-19 15:42:14,466.466 INFO    ] Launching Daemon at Fri Jun 19 15:42:14 IST 2026
[2026-06-19 15:42:14,477.477 INFO    ] ================================================
[2026-06-19 15:42:15,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:42:15
[2026-06-19 15:42:15,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:42:15,943.943 INFO    ] Initializing speech engine...
[2026-06-19 15:42:15,953.953 INFO    ] 2026-06-19 15:42:15
[2026-06-19 15:42:16,201.201 INFO    ] 2026-06-19 15:42:16
[2026-06-19 15:42:16,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:42:16,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:42:16,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:42:16,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:42:16,698.698 INFO    ] time= 19/06/2026 15:42:16
[2026-06-19 15:42:16,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:42:16,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:42:16,898.898 INFO    ] No existing commands found in stream
[2026-06-19 15:42:21,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:42:21,927.927 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 15:42:24,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:42:24,220.220 INFO    ] Checking for system updates...
[2026-06-19 15:42:24,259.259 INFO    ] 200
[2026-06-19 15:42:24,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:42:24,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:42:24,324.324 INFO    ] No update needed
[2026-06-19 15:42:24,326.326 INFO    ] Checking for camera pi updates...
[2026-06-19 15:42:24,361.361 INFO    ] 200
[2026-06-19 15:42:24,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:42:24,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:42:24,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:42:24,451.451 INFO    ] No camera update needed
[2026-06-19 15:42:24,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:42:24,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:42:24,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:42:24,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:42:26,505.505 INFO    ] ================================================
[2026-06-19 15:42:26,520.520 INFO    ] Launching Daemon at Fri Jun 19 15:42:26 IST 2026
[2026-06-19 15:42:26,531.531 INFO    ] ================================================
[2026-06-19 15:42:27,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:42:27
[2026-06-19 15:42:27,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:42:27,951.951 INFO    ] Initializing speech engine...
[2026-06-19 15:42:27,960.960 INFO    ] 2026-06-19 15:42:27
[2026-06-19 15:42:28,206.206 INFO    ] 2026-06-19 15:42:28
[2026-06-19 15:42:28,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:42:28,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:42:28,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:42:28,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:42:28,711.711 INFO    ] time= 19/06/2026 15:42:28
[2026-06-19 15:42:28,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:42:28,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:42:28,923.923 INFO    ] No existing commands found in stream
[2026-06-19 15:42:33,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:42:33,950.950 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 15:42:38,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:42:38,079.079 INFO    ] Checking for system updates...
[2026-06-19 15:42:38,119.119 INFO    ] 200
[2026-06-19 15:42:38,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:42:38,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:42:38,178.178 INFO    ] No update needed
[2026-06-19 15:42:38,180.180 INFO    ] Checking for camera pi updates...
[2026-06-19 15:42:38,221.221 INFO    ] 200
[2026-06-19 15:42:38,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:42:38,264.264 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:42:38,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:42:38,315.315 INFO    ] No camera update needed
[2026-06-19 15:42:38,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:42:38,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:42:38,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:42:38,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:42:40,373.373 INFO    ] ================================================
[2026-06-19 15:42:40,389.389 INFO    ] Launching Daemon at Fri Jun 19 15:42:40 IST 2026
[2026-06-19 15:42:40,400.400 INFO    ] ================================================
[2026-06-19 15:42:41,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:42:41
[2026-06-19 15:42:41,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:42:41,984.984 INFO    ] Initializing speech engine...
[2026-06-19 15:42:41,996.996 INFO    ] 2026-06-19 15:42:41
[2026-06-19 15:42:42,272.272 INFO    ] 2026-06-19 15:42:42
[2026-06-19 15:42:42,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:42:42,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:42:42,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:42:42,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:42:42,807.807 INFO    ] time= 19/06/2026 15:42:42
[2026-06-19 15:42:42,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:42:42,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:42:42,963.963 INFO    ] No existing commands found in stream
[2026-06-19 15:42:47,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:42:47,991.991 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 15:42:49,538.538 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:42:49,541.541 INFO    ] Checking for system updates...
[2026-06-19 15:42:49,581.581 INFO    ] 200
[2026-06-19 15:42:49,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:42:49,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:42:49,639.639 INFO    ] No update needed
[2026-06-19 15:42:49,641.641 INFO    ] Checking for camera pi updates...
[2026-06-19 15:42:49,676.676 INFO    ] 200
[2026-06-19 15:42:49,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:42:49,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:42:49,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:42:49,751.751 INFO    ] No camera update needed
[2026-06-19 15:42:49,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:42:49,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:42:49,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:42:49,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:42:51,807.807 INFO    ] ================================================
[2026-06-19 15:42:51,822.822 INFO    ] Launching Daemon at Fri Jun 19 15:42:51 IST 2026
[2026-06-19 15:42:51,834.834 INFO    ] ================================================
[2026-06-19 15:42:52,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:42:52
[2026-06-19 15:42:52,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:42:53,245.245 INFO    ] Initializing speech engine...
[2026-06-19 15:42:53,270.270 INFO    ] 2026-06-19 15:42:53
[2026-06-19 15:42:53,540.540 INFO    ] 2026-06-19 15:42:53
[2026-06-19 15:42:53,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:42:53,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:42:53,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:42:54,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:42:54,045.045 INFO    ] time= 19/06/2026 15:42:54
[2026-06-19 15:42:54,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:42:54,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:42:54,311.311 INFO    ] No existing commands found in stream
[2026-06-19 15:42:59,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:42:59,342.342 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 15:43:03,179.179 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:43:03,182.182 INFO    ] Checking for system updates...
[2026-06-19 15:43:03,219.219 INFO    ] 200
[2026-06-19 15:43:03,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:03,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:43:03,277.277 INFO    ] No update needed
[2026-06-19 15:43:03,279.279 INFO    ] Checking for camera pi updates...
[2026-06-19 15:43:03,313.313 INFO    ] 200
[2026-06-19 15:43:03,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:03,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:43:03,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:43:03,416.416 INFO    ] No camera update needed
[2026-06-19 15:43:03,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:43:03,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:43:03,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:43:03,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:43:05,473.473 INFO    ] ================================================
[2026-06-19 15:43:05,489.489 INFO    ] Launching Daemon at Fri Jun 19 15:43:05 IST 2026
[2026-06-19 15:43:05,500.500 INFO    ] ================================================
[2026-06-19 15:43:06,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:43:06
[2026-06-19 15:43:06,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:43:06,962.962 INFO    ] Initializing speech engine...
[2026-06-19 15:43:06,972.972 INFO    ] 2026-06-19 15:43:06
[2026-06-19 15:43:07,218.218 INFO    ] 2026-06-19 15:43:07
[2026-06-19 15:43:07,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:43:07,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:43:07,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:43:07,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:43:07,707.707 INFO    ] time= 19/06/2026 15:43:07
[2026-06-19 15:43:07,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:43:07,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:43:07,907.907 INFO    ] No existing commands found in stream
[2026-06-19 15:43:12,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:43:12,940.940 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 15:43:15,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:43:15,497.497 INFO    ] Checking for system updates...
[2026-06-19 15:43:15,534.534 INFO    ] 200
[2026-06-19 15:43:15,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:15,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:43:15,598.598 INFO    ] No update needed
[2026-06-19 15:43:15,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 15:43:15,634.634 INFO    ] 200
[2026-06-19 15:43:15,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:15,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:43:15,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:43:15,724.724 INFO    ] No camera update needed
[2026-06-19 15:43:15,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:43:15,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:43:15,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:43:15,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:43:17,783.783 INFO    ] ================================================
[2026-06-19 15:43:17,798.798 INFO    ] Launching Daemon at Fri Jun 19 15:43:17 IST 2026
[2026-06-19 15:43:17,810.810 INFO    ] ================================================
[2026-06-19 15:43:18,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:43:18
[2026-06-19 15:43:18,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:43:19,248.248 INFO    ] Initializing speech engine...
[2026-06-19 15:43:19,253.253 INFO    ] 2026-06-19 15:43:19
[2026-06-19 15:43:19,513.513 INFO    ] 2026-06-19 15:43:19
[2026-06-19 15:43:19,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:43:19,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:43:19,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:43:19,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:43:19,989.989 INFO    ] time= 19/06/2026 15:43:19
[2026-06-19 15:43:20,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:43:20,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:43:20,209.209 INFO    ] No existing commands found in stream
[2026-06-19 15:43:25,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:43:25,231.231 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 15:43:28,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:43:28,440.440 INFO    ] Checking for system updates...
[2026-06-19 15:43:28,476.476 INFO    ] 200
[2026-06-19 15:43:28,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:28,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:43:28,554.554 INFO    ] No update needed
[2026-06-19 15:43:28,557.557 INFO    ] Checking for camera pi updates...
[2026-06-19 15:43:28,590.590 INFO    ] 200
[2026-06-19 15:43:28,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:28,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:43:28,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:43:28,677.677 INFO    ] No camera update needed
[2026-06-19 15:43:28,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:43:28,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:43:28,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:43:28,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:43:30,734.734 INFO    ] ================================================
[2026-06-19 15:43:30,749.749 INFO    ] Launching Daemon at Fri Jun 19 15:43:30 IST 2026
[2026-06-19 15:43:30,760.760 INFO    ] ================================================
[2026-06-19 15:43:31,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:43:31
[2026-06-19 15:43:31,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:43:32,248.248 INFO    ] Initializing speech engine...
[2026-06-19 15:43:32,258.258 INFO    ] 2026-06-19 15:43:32
[2026-06-19 15:43:32,516.516 INFO    ] 2026-06-19 15:43:32
[2026-06-19 15:43:32,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:43:32,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:43:32,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:43:32,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:43:33,001.001 INFO    ] time= 19/06/2026 15:43:32
[2026-06-19 15:43:33,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:43:33,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:43:33,183.183 INFO    ] No existing commands found in stream
[2026-06-19 15:43:38,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:43:38,198.198 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 15:43:41,792.792 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:43:41,795.795 INFO    ] Checking for system updates...
[2026-06-19 15:43:41,838.838 INFO    ] 200
[2026-06-19 15:43:41,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:41,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:43:41,897.897 INFO    ] No update needed
[2026-06-19 15:43:41,899.899 INFO    ] Checking for camera pi updates...
[2026-06-19 15:43:41,933.933 INFO    ] 200
[2026-06-19 15:43:41,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:41,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:43:42,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:43:42,029.029 INFO    ] No camera update needed
[2026-06-19 15:43:42,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:43:42,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:43:42,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:43:42,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:43:44,084.084 INFO    ] ================================================
[2026-06-19 15:43:44,100.100 INFO    ] Launching Daemon at Fri Jun 19 15:43:44 IST 2026
[2026-06-19 15:43:44,110.110 INFO    ] ================================================
[2026-06-19 15:43:44,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:43:44
[2026-06-19 15:43:45,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:43:45,547.547 INFO    ] Initializing speech engine...
[2026-06-19 15:43:45,561.561 INFO    ] 2026-06-19 15:43:45
[2026-06-19 15:43:45,852.852 INFO    ] 2026-06-19 15:43:45
[2026-06-19 15:43:45,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:43:46,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:43:46,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:43:46,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:43:46,256.256 INFO    ] time= 19/06/2026 15:43:46
[2026-06-19 15:43:46,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:43:46,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:43:46,366.366 INFO    ] No existing commands found in stream
[2026-06-19 15:43:51,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:43:51,382.382 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 15:43:54,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:43:54,850.850 INFO    ] Checking for system updates...
[2026-06-19 15:43:54,890.890 INFO    ] 200
[2026-06-19 15:43:54,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:54,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:43:54,949.949 INFO    ] No update needed
[2026-06-19 15:43:54,951.951 INFO    ] Checking for camera pi updates...
[2026-06-19 15:43:54,989.989 INFO    ] 200
[2026-06-19 15:43:54,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:43:55,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:43:55,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:43:55,079.079 INFO    ] No camera update needed
[2026-06-19 15:43:55,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:43:55,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:43:55,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:43:55,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:43:57,134.134 INFO    ] ================================================
[2026-06-19 15:43:57,150.150 INFO    ] Launching Daemon at Fri Jun 19 15:43:57 IST 2026
[2026-06-19 15:43:57,161.161 INFO    ] ================================================
[2026-06-19 15:43:57,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:43:57
[2026-06-19 15:43:58,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:43:58,589.589 INFO    ] Initializing speech engine...
[2026-06-19 15:43:58,599.599 INFO    ] 2026-06-19 15:43:58
[2026-06-19 15:43:58,847.847 INFO    ] 2026-06-19 15:43:58
[2026-06-19 15:43:58,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:43:59,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:43:59,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:43:59,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:43:59,338.338 INFO    ] time= 19/06/2026 15:43:59
[2026-06-19 15:43:59,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:43:59,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:43:59,560.560 INFO    ] No existing commands found in stream
[2026-06-19 15:44:04,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:44:04,580.580 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 15:44:07,122.122 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:44:07,125.125 INFO    ] Checking for system updates...
[2026-06-19 15:44:07,165.165 INFO    ] 200
[2026-06-19 15:44:07,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:07,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:44:07,223.223 INFO    ] No update needed
[2026-06-19 15:44:07,225.225 INFO    ] Checking for camera pi updates...
[2026-06-19 15:44:07,261.261 INFO    ] 200
[2026-06-19 15:44:07,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:07,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:44:07,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:44:07,351.351 INFO    ] No camera update needed
[2026-06-19 15:44:07,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:44:07,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:44:07,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:44:07,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:44:09,408.408 INFO    ] ================================================
[2026-06-19 15:44:09,423.423 INFO    ] Launching Daemon at Fri Jun 19 15:44:09 IST 2026
[2026-06-19 15:44:09,435.435 INFO    ] ================================================
[2026-06-19 15:44:10,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:44:10
[2026-06-19 15:44:10,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:44:10,833.833 INFO    ] Initializing speech engine...
[2026-06-19 15:44:10,838.838 INFO    ] 2026-06-19 15:44:10
[2026-06-19 15:44:11,123.123 INFO    ] 2026-06-19 15:44:11
[2026-06-19 15:44:11,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:44:11,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:44:11,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:44:11,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:44:11,608.608 INFO    ] time= 19/06/2026 15:44:11
[2026-06-19 15:44:11,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:44:11,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:44:11,821.821 INFO    ] No existing commands found in stream
[2026-06-19 15:44:16,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:44:16,854.854 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-19 15:44:21,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:44:21,299.299 INFO    ] Checking for system updates...
[2026-06-19 15:44:21,335.335 INFO    ] 200
[2026-06-19 15:44:21,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:21,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:44:21,393.393 INFO    ] No update needed
[2026-06-19 15:44:21,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 15:44:21,431.431 INFO    ] 200
[2026-06-19 15:44:21,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:21,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:44:21,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:44:21,633.633 INFO    ] No camera update needed
[2026-06-19 15:44:21,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:44:21,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:44:21,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:44:21,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:44:23,688.688 INFO    ] ================================================
[2026-06-19 15:44:23,704.704 INFO    ] Launching Daemon at Fri Jun 19 15:44:23 IST 2026
[2026-06-19 15:44:23,715.715 INFO    ] ================================================
[2026-06-19 15:44:24,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:44:24
[2026-06-19 15:44:24,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:44:25,172.172 INFO    ] Initializing speech engine...
[2026-06-19 15:44:25,179.179 INFO    ] 2026-06-19 15:44:25
[2026-06-19 15:44:25,439.439 INFO    ] 2026-06-19 15:44:25
[2026-06-19 15:44:25,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:44:25,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:44:25,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:44:25,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:44:25,918.918 INFO    ] time= 19/06/2026 15:44:25
[2026-06-19 15:44:25,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:44:25,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:44:26,136.136 INFO    ] No existing commands found in stream
[2026-06-19 15:44:31,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:44:31,152.152 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 15:44:33,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:44:33,533.533 INFO    ] Checking for system updates...
[2026-06-19 15:44:33,575.575 INFO    ] 200
[2026-06-19 15:44:33,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:33,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:44:33,637.637 INFO    ] No update needed
[2026-06-19 15:44:33,639.639 INFO    ] Checking for camera pi updates...
[2026-06-19 15:44:33,676.676 INFO    ] 200
[2026-06-19 15:44:33,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:33,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:44:33,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:44:33,772.772 INFO    ] No camera update needed
[2026-06-19 15:44:33,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:44:33,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:44:33,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:44:33,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:44:35,831.831 INFO    ] ================================================
[2026-06-19 15:44:35,846.846 INFO    ] Launching Daemon at Fri Jun 19 15:44:35 IST 2026
[2026-06-19 15:44:35,858.858 INFO    ] ================================================
[2026-06-19 15:44:36,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:44:36
[2026-06-19 15:44:37,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:44:37,449.449 INFO    ] Initializing speech engine...
[2026-06-19 15:44:37,461.461 INFO    ] 2026-06-19 15:44:37
[2026-06-19 15:44:37,744.744 INFO    ] 2026-06-19 15:44:37
[2026-06-19 15:44:37,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:44:38,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:44:38,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:44:38,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:44:38,207.207 INFO    ] time= 19/06/2026 15:44:38
[2026-06-19 15:44:38,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:44:38,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:44:38,395.395 INFO    ] No existing commands found in stream
[2026-06-19 15:44:43,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:44:43,426.426 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 15:44:44,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:44:44,040.040 INFO    ] Checking for system updates...
[2026-06-19 15:44:44,080.080 INFO    ] 200
[2026-06-19 15:44:44,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:44,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:44:44,150.150 INFO    ] No update needed
[2026-06-19 15:44:44,153.153 INFO    ] Checking for camera pi updates...
[2026-06-19 15:44:44,187.187 INFO    ] 200
[2026-06-19 15:44:44,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:44,232.232 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:44:44,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:44:44,280.280 INFO    ] No camera update needed
[2026-06-19 15:44:44,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:44:44,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:44:44,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:44:44,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:44:46,339.339 INFO    ] ================================================
[2026-06-19 15:44:46,355.355 INFO    ] Launching Daemon at Fri Jun 19 15:44:46 IST 2026
[2026-06-19 15:44:46,367.367 INFO    ] ================================================
[2026-06-19 15:44:46,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:44:46
[2026-06-19 15:44:47,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:44:47,809.809 INFO    ] Initializing speech engine...
[2026-06-19 15:44:47,819.819 INFO    ] 2026-06-19 15:44:47
[2026-06-19 15:44:48,079.079 INFO    ] 2026-06-19 15:44:48
[2026-06-19 15:44:48,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:44:48,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:44:48,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:44:48,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:44:48,549.549 INFO    ] time= 19/06/2026 15:44:48
[2026-06-19 15:44:48,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:44:48,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:44:48,784.784 INFO    ] No existing commands found in stream
[2026-06-19 15:44:53,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:44:53,810.810 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 15:44:56,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:44:56,599.599 INFO    ] Checking for system updates...
[2026-06-19 15:44:56,636.636 INFO    ] 200
[2026-06-19 15:44:56,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:56,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:44:56,701.701 INFO    ] No update needed
[2026-06-19 15:44:56,703.703 INFO    ] Checking for camera pi updates...
[2026-06-19 15:44:56,737.737 INFO    ] 200
[2026-06-19 15:44:56,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:44:56,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:44:56,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:44:56,836.836 INFO    ] No camera update needed
[2026-06-19 15:44:56,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:44:56,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:44:56,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:44:56,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:44:58,893.893 INFO    ] ================================================
[2026-06-19 15:44:58,909.909 INFO    ] Launching Daemon at Fri Jun 19 15:44:58 IST 2026
[2026-06-19 15:44:58,920.920 INFO    ] ================================================
[2026-06-19 15:44:59,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:44:59
[2026-06-19 15:45:00,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:45:00,383.383 INFO    ] Initializing speech engine...
[2026-06-19 15:45:00,398.398 INFO    ] 2026-06-19 15:45:00
[2026-06-19 15:45:00,670.670 INFO    ] 2026-06-19 15:45:00
[2026-06-19 15:45:00,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:45:00,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:45:00,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:45:01,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:45:01,211.211 INFO    ] time= 19/06/2026 15:45:01
[2026-06-19 15:45:01,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:45:01,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:45:01,350.350 INFO    ] No existing commands found in stream
[2026-06-19 15:45:06,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:45:06,363.363 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 15:45:07,203.203 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:45:07,205.205 INFO    ] Checking for system updates...
[2026-06-19 15:45:07,248.248 INFO    ] 200
[2026-06-19 15:45:07,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:07,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:45:07,309.309 INFO    ] No update needed
[2026-06-19 15:45:07,311.311 INFO    ] Checking for camera pi updates...
[2026-06-19 15:45:07,347.347 INFO    ] 200
[2026-06-19 15:45:07,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:07,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:45:07,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:45:07,441.441 INFO    ] No camera update needed
[2026-06-19 15:45:07,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:45:07,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:45:07,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:45:07,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:45:09,502.502 INFO    ] ================================================
[2026-06-19 15:45:09,517.517 INFO    ] Launching Daemon at Fri Jun 19 15:45:09 IST 2026
[2026-06-19 15:45:09,529.529 INFO    ] ================================================
[2026-06-19 15:45:10,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:45:10
[2026-06-19 15:45:10,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:45:11,187.187 INFO    ] Initializing speech engine...
[2026-06-19 15:45:11,194.194 INFO    ] 2026-06-19 15:45:11
[2026-06-19 15:45:11,495.495 INFO    ] 2026-06-19 15:45:11
[2026-06-19 15:45:11,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:45:11,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:45:11,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:45:12,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:45:12,041.041 INFO    ] time= 19/06/2026 15:45:12
[2026-06-19 15:45:12,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:45:12,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:45:12,202.202 INFO    ] No existing commands found in stream
[2026-06-19 15:45:17,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:45:17,252.252 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 15:45:21,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:45:21,708.708 INFO    ] Checking for system updates...
[2026-06-19 15:45:21,747.747 INFO    ] 200
[2026-06-19 15:45:21,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:21,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:45:21,815.815 INFO    ] No update needed
[2026-06-19 15:45:21,818.818 INFO    ] Checking for camera pi updates...
[2026-06-19 15:45:21,854.854 INFO    ] 200
[2026-06-19 15:45:21,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:21,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:45:21,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:45:21,939.939 INFO    ] No camera update needed
[2026-06-19 15:45:21,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:45:21,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:45:21,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:45:21,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:45:24,995.995 INFO    ] ================================================
[2026-06-19 15:45:24,011.011 INFO    ] Launching Daemon at Fri Jun 19 15:45:24 IST 2026
[2026-06-19 15:45:24,022.022 INFO    ] ================================================
[2026-06-19 15:45:24,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:45:24
[2026-06-19 15:45:25,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:45:25,466.466 INFO    ] Initializing speech engine...
[2026-06-19 15:45:25,479.479 INFO    ] 2026-06-19 15:45:25
[2026-06-19 15:45:25,732.732 INFO    ] 2026-06-19 15:45:25
[2026-06-19 15:45:25,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:45:26,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:45:26,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:45:26,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:45:26,216.216 INFO    ] time= 19/06/2026 15:45:26
[2026-06-19 15:45:26,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:45:26,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:45:26,449.449 INFO    ] No existing commands found in stream
[2026-06-19 15:45:31,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:45:31,479.479 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 15:45:32,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:45:32,068.068 INFO    ] Checking for system updates...
[2026-06-19 15:45:32,107.107 INFO    ] 200
[2026-06-19 15:45:32,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:32,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:45:32,187.187 INFO    ] No update needed
[2026-06-19 15:45:32,190.190 INFO    ] Checking for camera pi updates...
[2026-06-19 15:45:32,226.226 INFO    ] 200
[2026-06-19 15:45:32,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:32,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:45:32,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:45:32,319.319 INFO    ] No camera update needed
[2026-06-19 15:45:32,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:45:32,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:45:32,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:45:32,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:45:34,377.377 INFO    ] ================================================
[2026-06-19 15:45:34,393.393 INFO    ] Launching Daemon at Fri Jun 19 15:45:34 IST 2026
[2026-06-19 15:45:34,404.404 INFO    ] ================================================
[2026-06-19 15:45:34,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:45:34
[2026-06-19 15:45:35,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:45:35,864.864 INFO    ] Initializing speech engine...
[2026-06-19 15:45:35,871.871 INFO    ] 2026-06-19 15:45:35
[2026-06-19 15:45:36,133.133 INFO    ] 2026-06-19 15:45:36
[2026-06-19 15:45:36,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:45:36,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:45:36,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:45:36,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:45:36,601.601 INFO    ] time= 19/06/2026 15:45:36
[2026-06-19 15:45:36,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:45:36,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:45:36,834.834 INFO    ] No existing commands found in stream
[2026-06-19 15:45:41,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:45:41,852.852 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 15:45:45,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:45:45,350.350 INFO    ] Checking for system updates...
[2026-06-19 15:45:45,387.387 INFO    ] 200
[2026-06-19 15:45:45,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:45,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:45:45,444.444 INFO    ] No update needed
[2026-06-19 15:45:45,447.447 INFO    ] Checking for camera pi updates...
[2026-06-19 15:45:45,482.482 INFO    ] 200
[2026-06-19 15:45:45,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:45,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:45:45,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:45:45,587.587 INFO    ] No camera update needed
[2026-06-19 15:45:45,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:45:45,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:45:45,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:45:45,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:45:47,641.641 INFO    ] ================================================
[2026-06-19 15:45:47,657.657 INFO    ] Launching Daemon at Fri Jun 19 15:45:47 IST 2026
[2026-06-19 15:45:47,668.668 INFO    ] ================================================
[2026-06-19 15:45:48,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:45:48
[2026-06-19 15:45:48,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:45:49,142.142 INFO    ] Initializing speech engine...
[2026-06-19 15:45:49,150.150 INFO    ] 2026-06-19 15:45:49
[2026-06-19 15:45:49,412.412 INFO    ] 2026-06-19 15:45:49
[2026-06-19 15:45:49,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:45:49,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:45:49,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:45:50,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:45:50,014.014 INFO    ] time= 19/06/2026 15:45:50
[2026-06-19 15:45:50,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:45:50,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:45:50,200.200 INFO    ] No existing commands found in stream
[2026-06-19 15:45:55,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:45:55,230.230 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 15:45:59,164.164 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:45:59,167.167 INFO    ] Checking for system updates...
[2026-06-19 15:45:59,205.205 INFO    ] 200
[2026-06-19 15:45:59,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:59,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:45:59,276.276 INFO    ] No update needed
[2026-06-19 15:45:59,279.279 INFO    ] Checking for camera pi updates...
[2026-06-19 15:45:59,317.317 INFO    ] 200
[2026-06-19 15:45:59,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:45:59,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:45:59,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:45:59,410.410 INFO    ] No camera update needed
[2026-06-19 15:45:59,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:45:59,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:45:59,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:45:59,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:46:01,466.466 INFO    ] ================================================
[2026-06-19 15:46:01,482.482 INFO    ] Launching Daemon at Fri Jun 19 15:46:01 IST 2026
[2026-06-19 15:46:01,503.503 INFO    ] ================================================
[2026-06-19 15:46:02,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:46:02
[2026-06-19 15:46:03,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:46:03,400.400 INFO    ] Initializing speech engine...
[2026-06-19 15:46:03,413.413 INFO    ] 2026-06-19 15:46:03
[2026-06-19 15:46:03,708.708 INFO    ] 2026-06-19 15:46:03
[2026-06-19 15:46:03,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:46:03,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:46:04,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:46:04,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:46:04,251.251 INFO    ] time= 19/06/2026 15:46:04
[2026-06-19 15:46:04,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:46:04,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:46:04,456.456 INFO    ] No existing commands found in stream
[2026-06-19 15:46:09,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:46:09,484.484 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 15:46:14,136.136 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:46:14,139.139 INFO    ] Checking for system updates...
[2026-06-19 15:46:14,176.176 INFO    ] 200
[2026-06-19 15:46:14,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:46:14,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:46:14,236.236 INFO    ] No update needed
[2026-06-19 15:46:14,239.239 INFO    ] Checking for camera pi updates...
[2026-06-19 15:46:14,274.274 INFO    ] 200
[2026-06-19 15:46:14,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:46:14,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:46:14,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:46:14,386.386 INFO    ] No camera update needed
[2026-06-19 15:46:14,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:46:14,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:46:14,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:46:14,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:46:16,442.442 INFO    ] ================================================
[2026-06-19 15:46:16,457.457 INFO    ] Launching Daemon at Fri Jun 19 15:46:16 IST 2026
[2026-06-19 15:46:16,468.468 INFO    ] ================================================
[2026-06-19 15:46:17,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:46:17
[2026-06-19 15:46:17,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:46:17,870.870 INFO    ] Initializing speech engine...
[2026-06-19 15:46:17,879.879 INFO    ] 2026-06-19 15:46:17
[2026-06-19 15:46:18,167.167 INFO    ] 2026-06-19 15:46:18
[2026-06-19 15:46:18,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:46:18,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:46:18,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:46:18,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:46:18,679.679 INFO    ] time= 19/06/2026 15:46:18
[2026-06-19 15:46:18,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:46:18,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:46:18,958.958 INFO    ] No existing commands found in stream
[2026-06-19 15:46:23,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:46:23,975.975 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 15:46:27,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:46:27,853.853 INFO    ] Checking for system updates...
[2026-06-19 15:46:27,892.892 INFO    ] 200
[2026-06-19 15:46:27,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:46:27,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:46:27,951.951 INFO    ] No update needed
[2026-06-19 15:46:27,953.953 INFO    ] Checking for camera pi updates...
[2026-06-19 15:46:27,987.987 INFO    ] 200
[2026-06-19 15:46:27,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:46:28,029.029 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:46:28,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:46:28,178.178 INFO    ] No camera update needed
[2026-06-19 15:46:28,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:46:28,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:46:28,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:46:28,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:46:30,234.234 INFO    ] ================================================
[2026-06-19 15:46:30,249.249 INFO    ] Launching Daemon at Fri Jun 19 15:46:30 IST 2026
[2026-06-19 15:46:30,261.261 INFO    ] ================================================
[2026-06-19 15:46:30,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:46:30
[2026-06-19 15:46:31,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:46:31,733.733 INFO    ] Initializing speech engine...
[2026-06-19 15:46:31,749.749 INFO    ] 2026-06-19 15:46:31
[2026-06-19 15:46:32,049.049 INFO    ] 2026-06-19 15:46:32
[2026-06-19 15:46:32,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:46:32,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:46:32,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:46:32,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:46:32,461.461 INFO    ] time= 19/06/2026 15:46:32
[2026-06-19 15:46:32,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:46:32,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:46:32,646.646 INFO    ] No existing commands found in stream
[2026-06-19 15:46:37,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:46:37,675.675 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 15:46:40,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:46:40,631.631 INFO    ] Checking for system updates...
[2026-06-19 15:46:40,667.667 INFO    ] 200
[2026-06-19 15:46:40,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:46:40,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:46:40,724.724 INFO    ] No update needed
[2026-06-19 15:46:40,727.727 INFO    ] Checking for camera pi updates...
[2026-06-19 15:46:40,762.762 INFO    ] 200
[2026-06-19 15:46:40,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:46:40,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:46:40,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:46:40,855.855 INFO    ] No camera update needed
[2026-06-19 15:46:40,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:46:40,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:46:40,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:46:40,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:46:42,911.911 INFO    ] ================================================
[2026-06-19 15:46:42,927.927 INFO    ] Launching Daemon at Fri Jun 19 15:46:42 IST 2026
[2026-06-19 15:46:42,938.938 INFO    ] ================================================
[2026-06-19 15:46:43,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:46:43
[2026-06-19 15:46:44,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:46:44,551.551 INFO    ] Initializing speech engine...
[2026-06-19 15:46:44,564.564 INFO    ] 2026-06-19 15:46:44
[2026-06-19 15:46:44,846.846 INFO    ] 2026-06-19 15:46:44
[2026-06-19 15:46:44,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:46:45,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:46:45,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:46:45,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:46:45,392.392 INFO    ] time= 19/06/2026 15:46:45
[2026-06-19 15:46:45,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:46:45,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:46:45,551.551 INFO    ] No existing commands found in stream
[2026-06-19 15:46:50,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:46:50,569.569 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 15:46:53,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:46:53,853.853 INFO    ] Checking for system updates...
[2026-06-19 15:46:53,891.891 INFO    ] 200
[2026-06-19 15:46:53,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:46:53,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:46:53,950.950 INFO    ] No update needed
[2026-06-19 15:46:53,952.952 INFO    ] Checking for camera pi updates...
[2026-06-19 15:46:53,987.987 INFO    ] 200
[2026-06-19 15:46:53,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:46:54,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:46:54,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:46:54,077.077 INFO    ] No camera update needed
[2026-06-19 15:46:54,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:46:54,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:46:54,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:46:54,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:46:56,137.137 INFO    ] ================================================
[2026-06-19 15:46:56,152.152 INFO    ] Launching Daemon at Fri Jun 19 15:46:56 IST 2026
[2026-06-19 15:46:56,163.163 INFO    ] ================================================
[2026-06-19 15:46:56,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:46:56
[2026-06-19 15:46:57,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:46:57,613.613 INFO    ] Initializing speech engine...
[2026-06-19 15:46:57,628.628 INFO    ] 2026-06-19 15:46:57
[2026-06-19 15:46:57,914.914 INFO    ] 2026-06-19 15:46:57
[2026-06-19 15:46:57,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:46:58,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:46:58,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:46:58,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:46:58,336.336 INFO    ] time= 19/06/2026 15:46:58
[2026-06-19 15:46:58,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:46:58,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:46:58,419.419 INFO    ] No existing commands found in stream
[2026-06-19 15:47:03,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:47:03,441.441 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 15:47:07,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:47:07,591.591 INFO    ] Checking for system updates...
[2026-06-19 15:47:07,628.628 INFO    ] 200
[2026-06-19 15:47:07,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:47:07,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:47:07,685.685 INFO    ] No update needed
[2026-06-19 15:47:07,688.688 INFO    ] Checking for camera pi updates...
[2026-06-19 15:47:07,721.721 INFO    ] 200
[2026-06-19 15:47:07,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:47:07,767.767 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:47:07,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:47:07,822.822 INFO    ] No camera update needed
[2026-06-19 15:47:07,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:47:07,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:47:07,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:47:07,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:47:09,878.878 INFO    ] ================================================
[2026-06-19 15:47:09,892.892 INFO    ] Launching Daemon at Fri Jun 19 15:47:09 IST 2026
[2026-06-19 15:47:09,903.903 INFO    ] ================================================
[2026-06-19 15:47:10,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:47:10
[2026-06-19 15:47:11,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:47:11,484.484 INFO    ] Initializing speech engine...
[2026-06-19 15:47:11,492.492 INFO    ] 2026-06-19 15:47:11
[2026-06-19 15:47:11,810.810 INFO    ] 2026-06-19 15:47:11
[2026-06-19 15:47:11,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:47:12,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:47:12,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:47:12,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:47:12,333.333 INFO    ] time= 19/06/2026 15:47:12
[2026-06-19 15:47:12,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:47:12,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:47:12,505.505 INFO    ] No existing commands found in stream
[2026-06-19 15:47:17,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:47:17,539.539 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 15:47:21,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:47:21,896.896 INFO    ] Checking for system updates...
[2026-06-19 15:47:21,932.932 INFO    ] 200
[2026-06-19 15:47:21,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:47:21,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:47:21,992.992 INFO    ] No update needed
[2026-06-19 15:47:21,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 15:47:22,030.030 INFO    ] 200
[2026-06-19 15:47:22,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:47:22,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:47:22,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:47:22,128.128 INFO    ] No camera update needed
[2026-06-19 15:47:22,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:47:22,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:47:22,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:47:22,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:47:24,190.190 INFO    ] ================================================
[2026-06-19 15:47:24,205.205 INFO    ] Launching Daemon at Fri Jun 19 15:47:24 IST 2026
[2026-06-19 15:47:24,216.216 INFO    ] ================================================
[2026-06-19 15:47:24,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:47:24
[2026-06-19 15:47:25,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:47:25,621.621 INFO    ] Initializing speech engine...
[2026-06-19 15:47:25,637.637 INFO    ] 2026-06-19 15:47:25
[2026-06-19 15:47:25,914.914 INFO    ] 2026-06-19 15:47:25
[2026-06-19 15:47:25,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:47:26,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:47:26,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:47:26,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:47:26,325.325 INFO    ] time= 19/06/2026 15:47:26
[2026-06-19 15:47:26,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:47:26,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:47:26,511.511 INFO    ] No existing commands found in stream
[2026-06-19 15:47:31,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:47:31,544.544 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 15:47:33,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:47:33,695.695 INFO    ] Checking for system updates...
[2026-06-19 15:47:33,732.732 INFO    ] 200
[2026-06-19 15:47:33,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:47:33,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:47:33,790.790 INFO    ] No update needed
[2026-06-19 15:47:33,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 15:47:33,826.826 INFO    ] 200
[2026-06-19 15:47:33,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:47:33,874.874 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:47:33,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:47:33,931.931 INFO    ] No camera update needed
[2026-06-19 15:47:33,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:47:33,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:47:33,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:47:33,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:47:35,985.985 INFO    ] ================================================
[2026-06-19 15:47:36,000.000 INFO    ] Launching Daemon at Fri Jun 19 15:47:35 IST 2026
[2026-06-19 15:47:36,011.011 INFO    ] ================================================
[2026-06-19 15:47:36,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:47:36
[2026-06-19 15:47:37,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:47:37,563.563 INFO    ] Initializing speech engine...
[2026-06-19 15:47:37,571.571 INFO    ] 2026-06-19 15:47:37
[2026-06-19 15:47:37,860.860 INFO    ] 2026-06-19 15:47:37
[2026-06-19 15:47:37,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:47:38,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:47:38,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:47:38,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:47:38,345.345 INFO    ] time= 19/06/2026 15:47:38
[2026-06-19 15:47:38,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:47:38,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:47:38,572.572 INFO    ] No existing commands found in stream
[2026-06-19 15:47:43,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:47:43,590.590 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 15:47:47,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:47:47,824.824 INFO    ] Checking for system updates...
[2026-06-19 15:47:47,863.863 INFO    ] 200
[2026-06-19 15:47:47,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:47:47,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:47:47,922.922 INFO    ] No update needed
[2026-06-19 15:47:47,925.925 INFO    ] Checking for camera pi updates...
[2026-06-19 15:47:47,960.960 INFO    ] 200
[2026-06-19 15:47:47,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:47:48,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:47:48,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:47:48,042.042 INFO    ] No camera update needed
[2026-06-19 15:47:48,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:47:48,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:47:48,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:47:48,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:47:50,099.099 INFO    ] ================================================
[2026-06-19 15:47:50,114.114 INFO    ] Launching Daemon at Fri Jun 19 15:47:50 IST 2026
[2026-06-19 15:47:50,125.125 INFO    ] ================================================
[2026-06-19 15:47:50,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:47:50
[2026-06-19 15:47:51,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:47:51,550.550 INFO    ] Initializing speech engine...
[2026-06-19 15:47:51,560.560 INFO    ] 2026-06-19 15:47:51
[2026-06-19 15:47:51,811.811 INFO    ] 2026-06-19 15:47:51
[2026-06-19 15:47:51,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:47:52,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:47:52,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:47:52,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:47:52,283.283 INFO    ] time= 19/06/2026 15:47:52
[2026-06-19 15:47:52,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:47:52,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:47:52,447.447 INFO    ] No existing commands found in stream
[2026-06-19 15:47:57,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:47:57,461.461 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 15:48:01,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:48:01,771.771 INFO    ] Checking for system updates...
[2026-06-19 15:48:01,837.837 INFO    ] 200
[2026-06-19 15:48:01,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:01,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:48:01,950.950 INFO    ] No update needed
[2026-06-19 15:48:01,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 15:48:02,010.010 INFO    ] 200
[2026-06-19 15:48:02,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:02,083.083 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:48:02,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:48:02,147.147 INFO    ] No camera update needed
[2026-06-19 15:48:02,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:48:02,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:48:02,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:48:02,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:48:04,224.224 INFO    ] ================================================
[2026-06-19 15:48:04,239.239 INFO    ] Launching Daemon at Fri Jun 19 15:48:04 IST 2026
[2026-06-19 15:48:04,250.250 INFO    ] ================================================
[2026-06-19 15:48:04,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:48:04
[2026-06-19 15:48:05,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:48:05,760.760 INFO    ] Initializing speech engine...
[2026-06-19 15:48:05,767.767 INFO    ] 2026-06-19 15:48:05
[2026-06-19 15:48:06,030.030 INFO    ] 2026-06-19 15:48:06
[2026-06-19 15:48:06,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:48:06,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:48:06,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:48:06,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:48:06,486.486 INFO    ] time= 19/06/2026 15:48:06
[2026-06-19 15:48:06,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:48:06,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:48:06,678.678 INFO    ] No existing commands found in stream
[2026-06-19 15:48:11,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:48:11,690.690 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 15:48:14,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:48:14,360.360 INFO    ] Checking for system updates...
[2026-06-19 15:48:14,396.396 INFO    ] 200
[2026-06-19 15:48:14,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:14,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:48:14,453.453 INFO    ] No update needed
[2026-06-19 15:48:14,456.456 INFO    ] Checking for camera pi updates...
[2026-06-19 15:48:14,490.490 INFO    ] 200
[2026-06-19 15:48:14,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:14,532.532 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:48:14,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:48:14,586.586 INFO    ] No camera update needed
[2026-06-19 15:48:14,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:48:14,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:48:14,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:48:14,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:48:16,642.642 INFO    ] ================================================
[2026-06-19 15:48:16,658.658 INFO    ] Launching Daemon at Fri Jun 19 15:48:16 IST 2026
[2026-06-19 15:48:16,669.669 INFO    ] ================================================
[2026-06-19 15:48:17,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:48:17
[2026-06-19 15:48:17,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:48:18,097.097 INFO    ] Initializing speech engine...
[2026-06-19 15:48:18,110.110 INFO    ] 2026-06-19 15:48:18
[2026-06-19 15:48:18,398.398 INFO    ] 2026-06-19 15:48:18
[2026-06-19 15:48:18,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:48:18,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:48:18,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:48:18,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:48:18,865.865 INFO    ] time= 19/06/2026 15:48:18
[2026-06-19 15:48:18,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:48:18,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:48:19,138.138 INFO    ] No existing commands found in stream
[2026-06-19 15:48:24,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:48:24,162.162 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 15:48:26,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:48:26,765.765 INFO    ] Checking for system updates...
[2026-06-19 15:48:26,801.801 INFO    ] 200
[2026-06-19 15:48:26,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:26,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:48:26,859.859 INFO    ] No update needed
[2026-06-19 15:48:26,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 15:48:26,896.896 INFO    ] 200
[2026-06-19 15:48:26,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:26,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:48:26,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:48:27,000.000 INFO    ] No camera update needed
[2026-06-19 15:48:27,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:48:27,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:48:27,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:48:27,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:48:29,054.054 INFO    ] ================================================
[2026-06-19 15:48:29,070.070 INFO    ] Launching Daemon at Fri Jun 19 15:48:29 IST 2026
[2026-06-19 15:48:29,082.082 INFO    ] ================================================
[2026-06-19 15:48:29,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:48:29
[2026-06-19 15:48:30,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:48:30,508.508 INFO    ] Initializing speech engine...
[2026-06-19 15:48:30,516.516 INFO    ] 2026-06-19 15:48:30
[2026-06-19 15:48:30,769.769 INFO    ] 2026-06-19 15:48:30
[2026-06-19 15:48:30,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:48:31,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:48:31,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:48:31,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:48:31,264.264 INFO    ] time= 19/06/2026 15:48:31
[2026-06-19 15:48:31,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:48:31,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:48:31,503.503 INFO    ] No existing commands found in stream
[2026-06-19 15:48:36,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:48:36,529.529 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 15:48:37,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:48:37,406.406 INFO    ] Checking for system updates...
[2026-06-19 15:48:37,442.442 INFO    ] 200
[2026-06-19 15:48:37,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:37,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:48:37,500.500 INFO    ] No update needed
[2026-06-19 15:48:37,502.502 INFO    ] Checking for camera pi updates...
[2026-06-19 15:48:37,536.536 INFO    ] 200
[2026-06-19 15:48:37,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:37,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:48:37,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:48:37,640.640 INFO    ] No camera update needed
[2026-06-19 15:48:37,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:48:37,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:48:37,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:48:37,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:48:39,694.694 INFO    ] ================================================
[2026-06-19 15:48:39,710.710 INFO    ] Launching Daemon at Fri Jun 19 15:48:39 IST 2026
[2026-06-19 15:48:39,722.722 INFO    ] ================================================
[2026-06-19 15:48:40,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:48:40
[2026-06-19 15:48:41,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:48:41,305.305 INFO    ] Initializing speech engine...
[2026-06-19 15:48:41,319.319 INFO    ] 2026-06-19 15:48:41
[2026-06-19 15:48:41,603.603 INFO    ] 2026-06-19 15:48:41
[2026-06-19 15:48:41,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:48:41,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:48:41,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:48:42,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:48:42,157.157 INFO    ] time= 19/06/2026 15:48:42
[2026-06-19 15:48:42,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:48:42,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:48:42,332.332 INFO    ] No existing commands found in stream
[2026-06-19 15:48:47,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:48:47,361.361 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 15:48:49,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:48:49,630.630 INFO    ] Checking for system updates...
[2026-06-19 15:48:49,666.666 INFO    ] 200
[2026-06-19 15:48:49,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:49,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:48:49,724.724 INFO    ] No update needed
[2026-06-19 15:48:49,727.727 INFO    ] Checking for camera pi updates...
[2026-06-19 15:48:49,760.760 INFO    ] 200
[2026-06-19 15:48:49,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:48:49,803.803 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:48:49,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:48:49,842.842 INFO    ] No camera update needed
[2026-06-19 15:48:49,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:48:49,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:48:49,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:48:49,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:48:51,897.897 INFO    ] ================================================
[2026-06-19 15:48:51,912.912 INFO    ] Launching Daemon at Fri Jun 19 15:48:51 IST 2026
[2026-06-19 15:48:51,923.923 INFO    ] ================================================
[2026-06-19 15:48:52,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:48:52
[2026-06-19 15:48:53,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:48:53,365.365 INFO    ] Initializing speech engine...
[2026-06-19 15:48:53,386.386 INFO    ] 2026-06-19 15:48:53
[2026-06-19 15:48:53,664.664 INFO    ] 2026-06-19 15:48:53
[2026-06-19 15:48:53,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:48:53,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:48:53,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:48:54,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:48:54,084.084 INFO    ] time= 19/06/2026 15:48:54
[2026-06-19 15:48:54,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:48:54,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:48:54,176.176 INFO    ] No existing commands found in stream
[2026-06-19 15:48:59,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:48:59,209.209 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 15:49:00,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:49:00,607.607 INFO    ] Checking for system updates...
[2026-06-19 15:49:00,643.643 INFO    ] 200
[2026-06-19 15:49:00,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:00,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:49:00,708.708 INFO    ] No update needed
[2026-06-19 15:49:00,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 15:49:00,748.748 INFO    ] 200
[2026-06-19 15:49:00,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:00,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:49:00,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:49:00,844.844 INFO    ] No camera update needed
[2026-06-19 15:49:00,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:49:00,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:49:00,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:49:00,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:49:02,916.916 INFO    ] ================================================
[2026-06-19 15:49:02,941.941 INFO    ] Launching Daemon at Fri Jun 19 15:49:02 IST 2026
[2026-06-19 15:49:02,959.959 INFO    ] ================================================
[2026-06-19 15:49:03,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:49:03
[2026-06-19 15:49:04,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:49:04,409.409 INFO    ] Initializing speech engine...
[2026-06-19 15:49:04,422.422 INFO    ] 2026-06-19 15:49:04
[2026-06-19 15:49:04,689.689 INFO    ] 2026-06-19 15:49:04
[2026-06-19 15:49:04,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:49:04,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:49:04,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:49:05,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:49:05,072.072 INFO    ] time= 19/06/2026 15:49:05
[2026-06-19 15:49:05,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:49:05,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:49:05,255.255 INFO    ] No existing commands found in stream
[2026-06-19 15:49:10,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:49:10,283.283 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 15:49:12,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:49:12,778.778 INFO    ] Checking for system updates...
[2026-06-19 15:49:12,815.815 INFO    ] 200
[2026-06-19 15:49:12,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:12,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:49:12,873.873 INFO    ] No update needed
[2026-06-19 15:49:12,876.876 INFO    ] Checking for camera pi updates...
[2026-06-19 15:49:12,915.915 INFO    ] 200
[2026-06-19 15:49:12,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:12,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:49:13,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:49:13,023.023 INFO    ] No camera update needed
[2026-06-19 15:49:13,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:49:13,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:49:13,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:49:13,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:49:15,078.078 INFO    ] ================================================
[2026-06-19 15:49:15,095.095 INFO    ] Launching Daemon at Fri Jun 19 15:49:15 IST 2026
[2026-06-19 15:49:15,107.107 INFO    ] ================================================
[2026-06-19 15:49:15,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:49:15
[2026-06-19 15:49:16,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:49:16,801.801 INFO    ] Initializing speech engine...
[2026-06-19 15:49:16,815.815 INFO    ] 2026-06-19 15:49:16
[2026-06-19 15:49:17,107.107 INFO    ] 2026-06-19 15:49:17
[2026-06-19 15:49:17,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:49:17,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:49:17,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:49:17,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:49:17,606.606 INFO    ] time= 19/06/2026 15:49:17
[2026-06-19 15:49:17,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:49:17,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:49:17,803.803 INFO    ] No existing commands found in stream
[2026-06-19 15:49:22,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:49:22,834.834 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 15:49:26,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:49:26,444.444 INFO    ] Checking for system updates...
[2026-06-19 15:49:26,487.487 INFO    ] 200
[2026-06-19 15:49:26,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:26,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:49:26,553.553 INFO    ] No update needed
[2026-06-19 15:49:26,556.556 INFO    ] Checking for camera pi updates...
[2026-06-19 15:49:26,591.591 INFO    ] 200
[2026-06-19 15:49:26,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:26,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:49:26,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:49:26,706.706 INFO    ] No camera update needed
[2026-06-19 15:49:26,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:49:26,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:49:26,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:49:26,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:49:28,764.764 INFO    ] ================================================
[2026-06-19 15:49:28,780.780 INFO    ] Launching Daemon at Fri Jun 19 15:49:28 IST 2026
[2026-06-19 15:49:28,791.791 INFO    ] ================================================
[2026-06-19 15:49:29,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:49:29
[2026-06-19 15:49:29,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:49:30,218.218 INFO    ] Initializing speech engine...
[2026-06-19 15:49:30,240.240 INFO    ] 2026-06-19 15:49:30
[2026-06-19 15:49:30,523.523 INFO    ] 2026-06-19 15:49:30
[2026-06-19 15:49:30,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:49:30,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:49:30,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:49:30,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:49:30,920.920 INFO    ] time= 19/06/2026 15:49:30
[2026-06-19 15:49:30,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:49:30,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:49:31,049.049 INFO    ] No existing commands found in stream
[2026-06-19 15:49:36,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:49:36,064.064 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 15:49:40,402.402 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:49:40,404.404 INFO    ] Checking for system updates...
[2026-06-19 15:49:40,441.441 INFO    ] 200
[2026-06-19 15:49:40,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:40,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:49:40,500.500 INFO    ] No update needed
[2026-06-19 15:49:40,502.502 INFO    ] Checking for camera pi updates...
[2026-06-19 15:49:40,541.541 INFO    ] 200
[2026-06-19 15:49:40,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:40,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:49:40,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:49:40,634.634 INFO    ] No camera update needed
[2026-06-19 15:49:40,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:49:40,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:49:40,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:49:40,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:49:42,690.690 INFO    ] ================================================
[2026-06-19 15:49:42,705.705 INFO    ] Launching Daemon at Fri Jun 19 15:49:42 IST 2026
[2026-06-19 15:49:42,716.716 INFO    ] ================================================
[2026-06-19 15:49:43,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:49:43
[2026-06-19 15:49:43,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:49:44,169.169 INFO    ] Initializing speech engine...
[2026-06-19 15:49:44,186.186 INFO    ] 2026-06-19 15:49:44
[2026-06-19 15:49:44,479.479 INFO    ] 2026-06-19 15:49:44
[2026-06-19 15:49:44,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:49:44,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:49:44,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:49:44,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:49:44,866.866 INFO    ] time= 19/06/2026 15:49:44
[2026-06-19 15:49:44,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:49:44,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:49:44,996.996 INFO    ] No existing commands found in stream
[2026-06-19 15:49:50,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:49:50,011.011 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 15:49:53,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:49:53,717.717 INFO    ] Checking for system updates...
[2026-06-19 15:49:53,758.758 INFO    ] 200
[2026-06-19 15:49:53,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:53,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:49:53,825.825 INFO    ] No update needed
[2026-06-19 15:49:53,827.827 INFO    ] Checking for camera pi updates...
[2026-06-19 15:49:53,866.866 INFO    ] 200
[2026-06-19 15:49:53,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:49:53,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:49:53,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:49:53,976.976 INFO    ] No camera update needed
[2026-06-19 15:49:53,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:49:53,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:49:53,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:49:53,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:49:56,030.030 INFO    ] ================================================
[2026-06-19 15:49:56,045.045 INFO    ] Launching Daemon at Fri Jun 19 15:49:56 IST 2026
[2026-06-19 15:49:56,056.056 INFO    ] ================================================
[2026-06-19 15:49:56,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:49:56
[2026-06-19 15:49:57,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:49:57,713.713 INFO    ] Initializing speech engine...
[2026-06-19 15:49:57,719.719 INFO    ] 2026-06-19 15:49:57
[2026-06-19 15:49:57,982.982 INFO    ] 2026-06-19 15:49:57
[2026-06-19 15:49:58,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:49:58,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:49:58,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:49:58,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:49:58,460.460 INFO    ] time= 19/06/2026 15:49:58
[2026-06-19 15:49:58,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:49:58,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:49:58,689.689 INFO    ] No existing commands found in stream
[2026-06-19 15:50:03,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:50:03,720.720 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 15:50:08,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:50:08,553.553 INFO    ] Checking for system updates...
[2026-06-19 15:50:08,590.590 INFO    ] 200
[2026-06-19 15:50:08,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:08,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:50:08,657.657 INFO    ] No update needed
[2026-06-19 15:50:08,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 15:50:08,694.694 INFO    ] 200
[2026-06-19 15:50:08,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:08,739.739 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:50:08,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:50:08,797.797 INFO    ] No camera update needed
[2026-06-19 15:50:08,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:50:08,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:50:08,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:50:08,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:50:10,856.856 INFO    ] ================================================
[2026-06-19 15:50:10,871.871 INFO    ] Launching Daemon at Fri Jun 19 15:50:10 IST 2026
[2026-06-19 15:50:10,883.883 INFO    ] ================================================
[2026-06-19 15:50:11,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:50:11
[2026-06-19 15:50:12,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:50:12,293.293 INFO    ] Initializing speech engine...
[2026-06-19 15:50:12,308.308 INFO    ] 2026-06-19 15:50:12
[2026-06-19 15:50:12,576.576 INFO    ] 2026-06-19 15:50:12
[2026-06-19 15:50:12,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:50:12,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:50:12,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:50:12,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:50:12,955.955 INFO    ] time= 19/06/2026 15:50:12
[2026-06-19 15:50:12,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:50:13,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:50:13,136.136 INFO    ] No existing commands found in stream
[2026-06-19 15:50:18,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:50:18,169.169 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 15:50:21,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:50:21,207.207 INFO    ] Checking for system updates...
[2026-06-19 15:50:21,244.244 INFO    ] 200
[2026-06-19 15:50:21,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:21,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:50:21,303.303 INFO    ] No update needed
[2026-06-19 15:50:21,305.305 INFO    ] Checking for camera pi updates...
[2026-06-19 15:50:21,344.344 INFO    ] 200
[2026-06-19 15:50:21,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:21,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:50:21,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:50:21,442.442 INFO    ] No camera update needed
[2026-06-19 15:50:21,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:50:21,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:50:21,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:50:21,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:50:23,501.501 INFO    ] ================================================
[2026-06-19 15:50:23,516.516 INFO    ] Launching Daemon at Fri Jun 19 15:50:23 IST 2026
[2026-06-19 15:50:23,527.527 INFO    ] ================================================
[2026-06-19 15:50:24,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:50:24
[2026-06-19 15:50:24,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:50:25,001.001 INFO    ] Initializing speech engine...
[2026-06-19 15:50:25,008.008 INFO    ] 2026-06-19 15:50:25
[2026-06-19 15:50:25,269.269 INFO    ] 2026-06-19 15:50:25
[2026-06-19 15:50:25,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:50:25,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:50:25,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:50:25,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:50:25,771.771 INFO    ] time= 19/06/2026 15:50:25
[2026-06-19 15:50:25,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:50:25,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:50:25,973.973 INFO    ] No existing commands found in stream
[2026-06-19 15:50:30,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:50:30,991.991 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 15:50:35,145.145 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:50:35,147.147 INFO    ] Checking for system updates...
[2026-06-19 15:50:35,188.188 INFO    ] 200
[2026-06-19 15:50:35,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:35,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:50:35,263.263 INFO    ] No update needed
[2026-06-19 15:50:35,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 15:50:35,324.324 INFO    ] 200
[2026-06-19 15:50:35,326.326 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:35,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:50:35,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:50:35,518.518 INFO    ] No camera update needed
[2026-06-19 15:50:35,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:50:35,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:50:35,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:50:35,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:50:37,576.576 INFO    ] ================================================
[2026-06-19 15:50:37,592.592 INFO    ] Launching Daemon at Fri Jun 19 15:50:37 IST 2026
[2026-06-19 15:50:37,602.602 INFO    ] ================================================
[2026-06-19 15:50:38,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:50:38
[2026-06-19 15:50:38,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:50:39,177.177 INFO    ] Initializing speech engine...
[2026-06-19 15:50:39,185.185 INFO    ] 2026-06-19 15:50:39
[2026-06-19 15:50:39,451.451 INFO    ] 2026-06-19 15:50:39
[2026-06-19 15:50:39,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:50:39,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:50:39,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:50:39,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:50:39,919.919 INFO    ] time= 19/06/2026 15:50:39
[2026-06-19 15:50:39,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:50:40,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:50:40,135.135 INFO    ] No existing commands found in stream
[2026-06-19 15:50:45,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:50:45,160.160 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 15:50:48,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:50:48,354.354 INFO    ] Checking for system updates...
[2026-06-19 15:50:48,394.394 INFO    ] 200
[2026-06-19 15:50:48,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:48,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:50:48,459.459 INFO    ] No update needed
[2026-06-19 15:50:48,461.461 INFO    ] Checking for camera pi updates...
[2026-06-19 15:50:48,499.499 INFO    ] 200
[2026-06-19 15:50:48,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:48,543.543 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:50:48,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:50:48,581.581 INFO    ] No camera update needed
[2026-06-19 15:50:48,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:50:48,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:50:48,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:50:48,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:50:50,638.638 INFO    ] ================================================
[2026-06-19 15:50:50,653.653 INFO    ] Launching Daemon at Fri Jun 19 15:50:50 IST 2026
[2026-06-19 15:50:50,664.664 INFO    ] ================================================
[2026-06-19 15:50:51,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:50:51
[2026-06-19 15:50:51,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:50:52,313.313 INFO    ] Initializing speech engine...
[2026-06-19 15:50:52,322.322 INFO    ] 2026-06-19 15:50:52
[2026-06-19 15:50:52,624.624 INFO    ] 2026-06-19 15:50:52
[2026-06-19 15:50:52,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:50:52,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:50:52,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:50:53,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:50:53,135.135 INFO    ] time= 19/06/2026 15:50:53
[2026-06-19 15:50:53,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:50:53,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:50:53,290.290 INFO    ] No existing commands found in stream
[2026-06-19 15:50:58,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:50:58,313.313 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 15:50:59,293.293 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:50:59,296.296 INFO    ] Checking for system updates...
[2026-06-19 15:50:59,337.337 INFO    ] 200
[2026-06-19 15:50:59,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:59,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:50:59,400.400 INFO    ] No update needed
[2026-06-19 15:50:59,403.403 INFO    ] Checking for camera pi updates...
[2026-06-19 15:50:59,440.440 INFO    ] 200
[2026-06-19 15:50:59,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:50:59,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:50:59,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:50:59,530.530 INFO    ] No camera update needed
[2026-06-19 15:50:59,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:50:59,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:50:59,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:50:59,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:51:01,584.584 INFO    ] ================================================
[2026-06-19 15:51:01,599.599 INFO    ] Launching Daemon at Fri Jun 19 15:51:01 IST 2026
[2026-06-19 15:51:01,610.610 INFO    ] ================================================
[2026-06-19 15:51:02,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:51:02
[2026-06-19 15:51:02,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:51:03,282.282 INFO    ] Initializing speech engine...
[2026-06-19 15:51:03,297.297 INFO    ] 2026-06-19 15:51:03
[2026-06-19 15:51:03,567.567 INFO    ] 2026-06-19 15:51:03
[2026-06-19 15:51:03,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:51:03,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:51:03,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:51:04,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:51:04,006.006 INFO    ] time= 19/06/2026 15:51:04
[2026-06-19 15:51:04,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:51:04,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:51:04,205.205 INFO    ] No existing commands found in stream
[2026-06-19 15:51:09,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:51:09,218.218 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 15:51:12,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:51:12,835.835 INFO    ] Checking for system updates...
[2026-06-19 15:51:12,871.871 INFO    ] 200
[2026-06-19 15:51:12,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:51:12,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:51:12,929.929 INFO    ] No update needed
[2026-06-19 15:51:12,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 15:51:12,965.965 INFO    ] 200
[2026-06-19 15:51:12,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:51:13,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:51:13,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:51:13,071.071 INFO    ] No camera update needed
[2026-06-19 15:51:13,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:51:13,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:51:13,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:51:13,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:51:15,125.125 INFO    ] ================================================
[2026-06-19 15:51:15,140.140 INFO    ] Launching Daemon at Fri Jun 19 15:51:15 IST 2026
[2026-06-19 15:51:15,151.151 INFO    ] ================================================
[2026-06-19 15:51:15,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:51:15
[2026-06-19 15:51:16,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:51:16,753.753 INFO    ] Initializing speech engine...
[2026-06-19 15:51:16,762.762 INFO    ] 2026-06-19 15:51:16
[2026-06-19 15:51:17,048.048 INFO    ] 2026-06-19 15:51:17
[2026-06-19 15:51:17,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:51:17,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:51:17,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:51:17,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:51:17,598.598 INFO    ] time= 19/06/2026 15:51:17
[2026-06-19 15:51:17,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:51:17,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:51:17,768.768 INFO    ] No existing commands found in stream
[2026-06-19 15:51:22,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:51:22,797.797 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 15:51:25,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:51:25,384.384 INFO    ] Checking for system updates...
[2026-06-19 15:51:25,422.422 INFO    ] 200
[2026-06-19 15:51:25,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:51:25,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:51:25,487.487 INFO    ] No update needed
[2026-06-19 15:51:25,490.490 INFO    ] Checking for camera pi updates...
[2026-06-19 15:51:25,528.528 INFO    ] 200
[2026-06-19 15:51:25,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:51:25,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:51:25,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:51:25,636.636 INFO    ] No camera update needed
[2026-06-19 15:51:25,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:51:25,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:51:25,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:51:25,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:51:27,695.695 INFO    ] ================================================
[2026-06-19 15:51:27,711.711 INFO    ] Launching Daemon at Fri Jun 19 15:51:27 IST 2026
[2026-06-19 15:51:27,721.721 INFO    ] ================================================
[2026-06-19 15:51:28,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:51:28
[2026-06-19 15:51:28,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:51:29,186.186 INFO    ] Initializing speech engine...
[2026-06-19 15:51:29,194.194 INFO    ] 2026-06-19 15:51:29
[2026-06-19 15:51:29,453.453 INFO    ] 2026-06-19 15:51:29
[2026-06-19 15:51:29,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:51:29,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:51:29,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:51:29,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:51:29,913.913 INFO    ] time= 19/06/2026 15:51:29
[2026-06-19 15:51:29,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:51:30,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:51:30,129.129 INFO    ] No existing commands found in stream
[2026-06-19 15:51:35,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:51:35,162.162 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 15:51:37,017.017 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:51:37,020.020 INFO    ] Checking for system updates...
[2026-06-19 15:51:37,056.056 INFO    ] 200
[2026-06-19 15:51:37,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:51:37,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:51:37,113.113 INFO    ] No update needed
[2026-06-19 15:51:37,116.116 INFO    ] Checking for camera pi updates...
[2026-06-19 15:51:37,150.150 INFO    ] 200
[2026-06-19 15:51:37,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:51:37,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:51:37,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:51:37,256.256 INFO    ] No camera update needed
[2026-06-19 15:51:37,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:51:37,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:51:37,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:51:37,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:51:39,312.312 INFO    ] ================================================
[2026-06-19 15:51:39,327.327 INFO    ] Launching Daemon at Fri Jun 19 15:51:39 IST 2026
[2026-06-19 15:51:39,338.338 INFO    ] ================================================
[2026-06-19 15:51:39,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:51:39
[2026-06-19 15:51:40,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:51:40,787.787 INFO    ] Initializing speech engine...
[2026-06-19 15:51:40,795.795 INFO    ] 2026-06-19 15:51:40
[2026-06-19 15:51:41,066.066 INFO    ] 2026-06-19 15:51:41
[2026-06-19 15:51:41,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:51:41,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:51:41,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:51:41,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:51:41,596.596 INFO    ] time= 19/06/2026 15:51:41
[2026-06-19 15:51:41,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:51:41,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:51:41,778.778 INFO    ] No existing commands found in stream
[2026-06-19 15:51:46,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:51:46,808.808 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 15:51:49,226.226 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:51:49,229.229 INFO    ] Checking for system updates...
[2026-06-19 15:51:49,266.266 INFO    ] 200
[2026-06-19 15:51:49,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:51:49,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:51:49,323.323 INFO    ] No update needed
[2026-06-19 15:51:49,326.326 INFO    ] Checking for camera pi updates...
[2026-06-19 15:51:49,363.363 INFO    ] 200
[2026-06-19 15:51:49,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:51:49,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:51:49,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:51:49,447.447 INFO    ] No camera update needed
[2026-06-19 15:51:49,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:51:49,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:51:49,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:51:49,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:51:51,501.501 INFO    ] ================================================
[2026-06-19 15:51:51,516.516 INFO    ] Launching Daemon at Fri Jun 19 15:51:51 IST 2026
[2026-06-19 15:51:51,528.528 INFO    ] ================================================
[2026-06-19 15:51:52,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:51:52
[2026-06-19 15:51:52,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:51:53,143.143 INFO    ] Initializing speech engine...
[2026-06-19 15:51:53,154.154 INFO    ] 2026-06-19 15:51:53
[2026-06-19 15:51:53,441.441 INFO    ] 2026-06-19 15:51:53
[2026-06-19 15:51:53,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:51:53,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:51:53,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:51:53,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:51:53,935.935 INFO    ] time= 19/06/2026 15:51:53
[2026-06-19 15:51:53,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:51:54,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:51:54,141.141 INFO    ] No existing commands found in stream
[2026-06-19 15:51:59,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:51:59,169.169 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 15:52:00,273.273 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:52:00,277.277 INFO    ] Checking for system updates...
[2026-06-19 15:52:00,319.319 INFO    ] 200
[2026-06-19 15:52:00,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:00,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:52:00,379.379 INFO    ] No update needed
[2026-06-19 15:52:00,381.381 INFO    ] Checking for camera pi updates...
[2026-06-19 15:52:00,415.415 INFO    ] 200
[2026-06-19 15:52:00,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:00,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:52:00,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:52:00,515.515 INFO    ] No camera update needed
[2026-06-19 15:52:00,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:52:00,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:52:00,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:52:00,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:52:02,572.572 INFO    ] ================================================
[2026-06-19 15:52:02,588.588 INFO    ] Launching Daemon at Fri Jun 19 15:52:02 IST 2026
[2026-06-19 15:52:02,599.599 INFO    ] ================================================
[2026-06-19 15:52:03,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:52:03
[2026-06-19 15:52:03,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:52:04,065.065 INFO    ] Initializing speech engine...
[2026-06-19 15:52:04,074.074 INFO    ] 2026-06-19 15:52:04
[2026-06-19 15:52:04,371.371 INFO    ] 2026-06-19 15:52:04
[2026-06-19 15:52:04,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:52:04,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:52:04,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:52:04,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:52:04,797.797 INFO    ] time= 19/06/2026 15:52:04
[2026-06-19 15:52:04,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:52:04,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:52:04,964.964 INFO    ] No existing commands found in stream
[2026-06-19 15:52:09,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:52:09,992.992 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 15:52:12,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:52:12,076.076 INFO    ] Checking for system updates...
[2026-06-19 15:52:12,113.113 INFO    ] 200
[2026-06-19 15:52:12,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:12,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:52:12,171.171 INFO    ] No update needed
[2026-06-19 15:52:12,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 15:52:12,211.211 INFO    ] 200
[2026-06-19 15:52:12,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:12,253.253 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:52:12,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:52:12,301.301 INFO    ] No camera update needed
[2026-06-19 15:52:12,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:52:12,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:52:12,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:52:12,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:52:14,356.356 INFO    ] ================================================
[2026-06-19 15:52:14,371.371 INFO    ] Launching Daemon at Fri Jun 19 15:52:14 IST 2026
[2026-06-19 15:52:14,382.382 INFO    ] ================================================
[2026-06-19 15:52:15,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:52:15
[2026-06-19 15:52:15,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:52:16,022.022 INFO    ] Initializing speech engine...
[2026-06-19 15:52:16,035.035 INFO    ] 2026-06-19 15:52:16
[2026-06-19 15:52:16,308.308 INFO    ] 2026-06-19 15:52:16
[2026-06-19 15:52:16,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:52:16,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:52:16,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:52:16,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:52:16,880.880 INFO    ] time= 19/06/2026 15:52:16
[2026-06-19 15:52:16,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:52:16,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:52:17,033.033 INFO    ] No existing commands found in stream
[2026-06-19 15:52:22,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:52:22,054.054 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 15:52:25,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:52:25,833.833 INFO    ] Checking for system updates...
[2026-06-19 15:52:25,876.876 INFO    ] 200
[2026-06-19 15:52:25,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:25,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:52:25,949.949 INFO    ] No update needed
[2026-06-19 15:52:25,952.952 INFO    ] Checking for camera pi updates...
[2026-06-19 15:52:25,991.991 INFO    ] 200
[2026-06-19 15:52:25,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:26,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:52:26,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:52:26,099.099 INFO    ] No camera update needed
[2026-06-19 15:52:26,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:52:26,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:52:26,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:52:26,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:52:28,158.158 INFO    ] ================================================
[2026-06-19 15:52:28,173.173 INFO    ] Launching Daemon at Fri Jun 19 15:52:28 IST 2026
[2026-06-19 15:52:28,183.183 INFO    ] ================================================
[2026-06-19 15:52:28,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:52:28
[2026-06-19 15:52:29,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:52:29,842.842 INFO    ] Initializing speech engine...
[2026-06-19 15:52:29,849.849 INFO    ] 2026-06-19 15:52:29
[2026-06-19 15:52:30,165.165 INFO    ] 2026-06-19 15:52:30
[2026-06-19 15:52:30,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:52:30,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:52:30,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:52:30,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:52:30,700.700 INFO    ] time= 19/06/2026 15:52:30
[2026-06-19 15:52:30,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:52:30,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:52:30,910.910 INFO    ] No existing commands found in stream
[2026-06-19 15:52:35,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:52:35,921.921 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 15:52:39,797.797 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:52:39,800.800 INFO    ] Checking for system updates...
[2026-06-19 15:52:39,842.842 INFO    ] 200
[2026-06-19 15:52:39,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:39,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:52:39,906.906 INFO    ] No update needed
[2026-06-19 15:52:39,909.909 INFO    ] Checking for camera pi updates...
[2026-06-19 15:52:39,950.950 INFO    ] 200
[2026-06-19 15:52:39,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:39,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:52:40,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:52:40,155.155 INFO    ] No camera update needed
[2026-06-19 15:52:40,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:52:40,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:52:40,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:52:40,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:52:42,213.213 INFO    ] ================================================
[2026-06-19 15:52:42,229.229 INFO    ] Launching Daemon at Fri Jun 19 15:52:42 IST 2026
[2026-06-19 15:52:42,240.240 INFO    ] ================================================
[2026-06-19 15:52:42,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:52:42
[2026-06-19 15:52:43,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:52:43,914.914 INFO    ] Initializing speech engine...
[2026-06-19 15:52:43,922.922 INFO    ] 2026-06-19 15:52:43
[2026-06-19 15:52:44,229.229 INFO    ] 2026-06-19 15:52:44
[2026-06-19 15:52:44,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:52:44,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:52:44,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:52:44,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:52:44,737.737 INFO    ] time= 19/06/2026 15:52:44
[2026-06-19 15:52:44,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:52:44,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:52:44,943.943 INFO    ] No existing commands found in stream
[2026-06-19 15:52:49,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:52:49,978.978 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 15:52:51,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:52:51,912.912 INFO    ] Checking for system updates...
[2026-06-19 15:52:51,950.950 INFO    ] 200
[2026-06-19 15:52:51,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:52,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:52:52,012.012 INFO    ] No update needed
[2026-06-19 15:52:52,015.015 INFO    ] Checking for camera pi updates...
[2026-06-19 15:52:52,051.051 INFO    ] 200
[2026-06-19 15:52:52,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:52:52,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:52:52,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:52:52,149.149 INFO    ] No camera update needed
[2026-06-19 15:52:52,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:52:52,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:52:52,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:52:52,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:52:54,206.206 INFO    ] ================================================
[2026-06-19 15:52:54,221.221 INFO    ] Launching Daemon at Fri Jun 19 15:52:54 IST 2026
[2026-06-19 15:52:54,233.233 INFO    ] ================================================
[2026-06-19 15:52:54,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:52:54
[2026-06-19 15:52:55,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:52:55,694.694 INFO    ] Initializing speech engine...
[2026-06-19 15:52:55,703.703 INFO    ] 2026-06-19 15:52:55
[2026-06-19 15:52:55,972.972 INFO    ] 2026-06-19 15:52:55
[2026-06-19 15:52:56,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:52:56,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:52:56,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:52:56,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:52:56,522.522 INFO    ] time= 19/06/2026 15:52:56
[2026-06-19 15:52:56,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:52:56,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:52:56,664.664 INFO    ] No existing commands found in stream
[2026-06-19 15:53:01,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:53:01,690.690 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 15:53:05,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:53:05,158.158 INFO    ] Checking for system updates...
[2026-06-19 15:53:05,195.195 INFO    ] 200
[2026-06-19 15:53:05,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:05,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:53:05,254.254 INFO    ] No update needed
[2026-06-19 15:53:05,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 15:53:05,290.290 INFO    ] 200
[2026-06-19 15:53:05,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:05,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:53:05,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:53:05,380.380 INFO    ] No camera update needed
[2026-06-19 15:53:05,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:53:05,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:53:05,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:53:05,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:53:07,436.436 INFO    ] ================================================
[2026-06-19 15:53:07,453.453 INFO    ] Launching Daemon at Fri Jun 19 15:53:07 IST 2026
[2026-06-19 15:53:07,464.464 INFO    ] ================================================
[2026-06-19 15:53:08,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:53:08
[2026-06-19 15:53:08,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:53:08,882.882 INFO    ] Initializing speech engine...
[2026-06-19 15:53:08,898.898 INFO    ] 2026-06-19 15:53:08
[2026-06-19 15:53:09,180.180 INFO    ] 2026-06-19 15:53:09
[2026-06-19 15:53:09,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:53:09,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:53:09,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:53:09,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:53:09,672.672 INFO    ] time= 19/06/2026 15:53:09
[2026-06-19 15:53:09,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:53:09,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:53:09,880.880 INFO    ] No existing commands found in stream
[2026-06-19 15:53:14,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:53:14,894.894 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 15:53:16,506.506 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:53:16,508.508 INFO    ] Checking for system updates...
[2026-06-19 15:53:16,544.544 INFO    ] 200
[2026-06-19 15:53:16,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:16,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:53:16,602.602 INFO    ] No update needed
[2026-06-19 15:53:16,604.604 INFO    ] Checking for camera pi updates...
[2026-06-19 15:53:16,638.638 INFO    ] 200
[2026-06-19 15:53:16,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:16,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:53:16,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:53:16,745.745 INFO    ] No camera update needed
[2026-06-19 15:53:16,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:53:16,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:53:16,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:53:16,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:53:18,801.801 INFO    ] ================================================
[2026-06-19 15:53:18,816.816 INFO    ] Launching Daemon at Fri Jun 19 15:53:18 IST 2026
[2026-06-19 15:53:18,828.828 INFO    ] ================================================
[2026-06-19 15:53:19,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:53:19
[2026-06-19 15:53:19,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:53:20,238.238 INFO    ] Initializing speech engine...
[2026-06-19 15:53:20,247.247 INFO    ] 2026-06-19 15:53:20
[2026-06-19 15:53:20,540.540 INFO    ] 2026-06-19 15:53:20
[2026-06-19 15:53:20,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:53:20,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:53:20,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:53:20,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:53:21,029.029 INFO    ] time= 19/06/2026 15:53:20
[2026-06-19 15:53:21,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:53:21,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:53:21,210.210 INFO    ] No existing commands found in stream
[2026-06-19 15:53:26,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:53:26,226.226 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 15:53:29,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:53:29,833.833 INFO    ] Checking for system updates...
[2026-06-19 15:53:29,870.870 INFO    ] 200
[2026-06-19 15:53:29,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:29,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:53:29,928.928 INFO    ] No update needed
[2026-06-19 15:53:29,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 15:53:29,967.967 INFO    ] 200
[2026-06-19 15:53:29,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:30,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:53:30,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:53:30,066.066 INFO    ] No camera update needed
[2026-06-19 15:53:30,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:53:30,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:53:30,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:53:30,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:53:32,123.123 INFO    ] ================================================
[2026-06-19 15:53:32,140.140 INFO    ] Launching Daemon at Fri Jun 19 15:53:32 IST 2026
[2026-06-19 15:53:32,151.151 INFO    ] ================================================
[2026-06-19 15:53:32,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:53:32
[2026-06-19 15:53:33,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:53:33,609.609 INFO    ] Initializing speech engine...
[2026-06-19 15:53:33,618.618 INFO    ] 2026-06-19 15:53:33
[2026-06-19 15:53:33,880.880 INFO    ] 2026-06-19 15:53:33
[2026-06-19 15:53:33,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:53:34,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:53:34,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:53:34,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:53:34,376.376 INFO    ] time= 19/06/2026 15:53:34
[2026-06-19 15:53:34,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:53:34,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:53:34,597.597 INFO    ] No existing commands found in stream
[2026-06-19 15:53:39,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:53:39,614.614 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 15:53:41,681.681 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:53:41,683.683 INFO    ] Checking for system updates...
[2026-06-19 15:53:41,721.721 INFO    ] 200
[2026-06-19 15:53:41,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:41,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:53:41,784.784 INFO    ] No update needed
[2026-06-19 15:53:41,787.787 INFO    ] Checking for camera pi updates...
[2026-06-19 15:53:41,842.842 INFO    ] 200
[2026-06-19 15:53:41,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:41,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:53:41,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:53:41,942.942 INFO    ] No camera update needed
[2026-06-19 15:53:41,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:53:41,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:53:41,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:53:41,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:53:44,999.999 INFO    ] ================================================
[2026-06-19 15:53:44,014.014 INFO    ] Launching Daemon at Fri Jun 19 15:53:44 IST 2026
[2026-06-19 15:53:44,026.026 INFO    ] ================================================
[2026-06-19 15:53:44,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:53:44
[2026-06-19 15:53:45,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:53:45,509.509 INFO    ] Initializing speech engine...
[2026-06-19 15:53:45,519.519 INFO    ] 2026-06-19 15:53:45
[2026-06-19 15:53:45,771.771 INFO    ] 2026-06-19 15:53:45
[2026-06-19 15:53:45,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:53:46,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:53:46,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:53:46,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:53:46,275.275 INFO    ] time= 19/06/2026 15:53:46
[2026-06-19 15:53:46,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:53:46,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:53:46,488.488 INFO    ] No existing commands found in stream
[2026-06-19 15:53:51,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:53:51,511.511 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 15:53:52,687.687 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:53:52,690.690 INFO    ] Checking for system updates...
[2026-06-19 15:53:52,730.730 INFO    ] 200
[2026-06-19 15:53:52,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:52,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:53:52,793.793 INFO    ] No update needed
[2026-06-19 15:53:52,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 15:53:52,831.831 INFO    ] 200
[2026-06-19 15:53:52,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:53:52,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:53:52,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:53:52,933.933 INFO    ] No camera update needed
[2026-06-19 15:53:52,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:53:52,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:53:52,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:53:52,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:53:54,990.990 INFO    ] ================================================
[2026-06-19 15:53:55,005.005 INFO    ] Launching Daemon at Fri Jun 19 15:53:55 IST 2026
[2026-06-19 15:53:55,017.017 INFO    ] ================================================
[2026-06-19 15:53:55,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:53:55
[2026-06-19 15:53:56,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:53:56,477.477 INFO    ] Initializing speech engine...
[2026-06-19 15:53:56,485.485 INFO    ] 2026-06-19 15:53:56
[2026-06-19 15:53:56,743.743 INFO    ] 2026-06-19 15:53:56
[2026-06-19 15:53:56,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:53:57,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:53:57,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:53:57,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:53:57,287.287 INFO    ] time= 19/06/2026 15:53:57
[2026-06-19 15:53:57,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:53:57,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:53:57,444.444 INFO    ] No existing commands found in stream
[2026-06-19 15:54:02,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:54:02,472.472 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 15:54:05,159.159 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:54:05,162.162 INFO    ] Checking for system updates...
[2026-06-19 15:54:05,198.198 INFO    ] 200
[2026-06-19 15:54:05,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:05,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:54:05,256.256 INFO    ] No update needed
[2026-06-19 15:54:05,258.258 INFO    ] Checking for camera pi updates...
[2026-06-19 15:54:05,292.292 INFO    ] 200
[2026-06-19 15:54:05,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:05,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:54:05,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:54:05,383.383 INFO    ] No camera update needed
[2026-06-19 15:54:05,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:54:05,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:54:05,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:54:05,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:54:07,440.440 INFO    ] ================================================
[2026-06-19 15:54:07,458.458 INFO    ] Launching Daemon at Fri Jun 19 15:54:07 IST 2026
[2026-06-19 15:54:07,469.469 INFO    ] ================================================
[2026-06-19 15:54:08,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:54:08
[2026-06-19 15:54:08,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:54:08,992.992 INFO    ] Initializing speech engine...
[2026-06-19 15:54:09,002.002 INFO    ] 2026-06-19 15:54:08
[2026-06-19 15:54:09,253.253 INFO    ] 2026-06-19 15:54:09
[2026-06-19 15:54:09,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:54:09,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:54:09,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:54:09,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:54:09,802.802 INFO    ] time= 19/06/2026 15:54:09
[2026-06-19 15:54:09,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:54:09,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:54:09,957.957 INFO    ] No existing commands found in stream
[2026-06-19 15:54:14,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:54:14,982.982 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 15:54:18,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:54:18,649.649 INFO    ] Checking for system updates...
[2026-06-19 15:54:18,686.686 INFO    ] 200
[2026-06-19 15:54:18,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:18,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:54:18,743.743 INFO    ] No update needed
[2026-06-19 15:54:18,746.746 INFO    ] Checking for camera pi updates...
[2026-06-19 15:54:18,781.781 INFO    ] 200
[2026-06-19 15:54:18,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:18,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:54:18,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:54:18,890.890 INFO    ] No camera update needed
[2026-06-19 15:54:18,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:54:18,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:54:18,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:54:18,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:54:20,945.945 INFO    ] ================================================
[2026-06-19 15:54:20,962.962 INFO    ] Launching Daemon at Fri Jun 19 15:54:20 IST 2026
[2026-06-19 15:54:20,974.974 INFO    ] ================================================
[2026-06-19 15:54:21,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:54:21
[2026-06-19 15:54:22,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:54:22,444.444 INFO    ] Initializing speech engine...
[2026-06-19 15:54:22,459.459 INFO    ] 2026-06-19 15:54:22
[2026-06-19 15:54:22,739.739 INFO    ] 2026-06-19 15:54:22
[2026-06-19 15:54:22,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:54:23,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:54:23,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:54:23,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:54:23,250.250 INFO    ] time= 19/06/2026 15:54:23
[2026-06-19 15:54:23,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:54:23,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:54:23,464.464 INFO    ] No existing commands found in stream
[2026-06-19 15:54:28,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:54:28,494.494 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 15:54:31,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:54:31,829.829 INFO    ] Checking for system updates...
[2026-06-19 15:54:31,871.871 INFO    ] 200
[2026-06-19 15:54:31,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:31,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:54:31,938.938 INFO    ] No update needed
[2026-06-19 15:54:31,942.942 INFO    ] Checking for camera pi updates...
[2026-06-19 15:54:31,980.980 INFO    ] 200
[2026-06-19 15:54:31,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:32,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:54:32,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:54:32,070.070 INFO    ] No camera update needed
[2026-06-19 15:54:32,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:54:32,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:54:32,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:54:32,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:54:34,132.132 INFO    ] ================================================
[2026-06-19 15:54:34,147.147 INFO    ] Launching Daemon at Fri Jun 19 15:54:34 IST 2026
[2026-06-19 15:54:34,159.159 INFO    ] ================================================
[2026-06-19 15:54:34,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:54:34
[2026-06-19 15:54:35,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:54:35,624.624 INFO    ] Initializing speech engine...
[2026-06-19 15:54:35,634.634 INFO    ] 2026-06-19 15:54:35
[2026-06-19 15:54:35,880.880 INFO    ] 2026-06-19 15:54:35
[2026-06-19 15:54:35,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:54:36,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:54:36,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:54:36,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:54:36,346.346 INFO    ] time= 19/06/2026 15:54:36
[2026-06-19 15:54:36,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:54:36,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:54:36,571.571 INFO    ] No existing commands found in stream
[2026-06-19 15:54:41,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:54:41,599.599 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 15:54:44,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:54:44,484.484 INFO    ] Checking for system updates...
[2026-06-19 15:54:44,522.522 INFO    ] 200
[2026-06-19 15:54:44,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:44,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:54:44,582.582 INFO    ] No update needed
[2026-06-19 15:54:44,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 15:54:44,625.625 INFO    ] 200
[2026-06-19 15:54:44,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:44,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:54:44,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:54:44,825.825 INFO    ] No camera update needed
[2026-06-19 15:54:44,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:54:44,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:54:44,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:54:44,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:54:46,885.885 INFO    ] ================================================
[2026-06-19 15:54:46,901.901 INFO    ] Launching Daemon at Fri Jun 19 15:54:46 IST 2026
[2026-06-19 15:54:46,912.912 INFO    ] ================================================
[2026-06-19 15:54:47,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:54:47
[2026-06-19 15:54:48,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:54:48,526.526 INFO    ] Initializing speech engine...
[2026-06-19 15:54:48,541.541 INFO    ] 2026-06-19 15:54:48
[2026-06-19 15:54:48,823.823 INFO    ] 2026-06-19 15:54:48
[2026-06-19 15:54:48,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:54:49,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:54:49,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:54:49,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:54:49,260.260 INFO    ] time= 19/06/2026 15:54:49
[2026-06-19 15:54:49,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:54:49,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:54:49,348.348 INFO    ] No existing commands found in stream
[2026-06-19 15:54:54,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:54:54,366.366 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 15:54:55,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:54:55,944.944 INFO    ] Checking for system updates...
[2026-06-19 15:54:55,982.982 INFO    ] 200
[2026-06-19 15:54:55,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:56,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:54:56,051.051 INFO    ] No update needed
[2026-06-19 15:54:56,056.056 INFO    ] Checking for camera pi updates...
[2026-06-19 15:54:56,090.090 INFO    ] 200
[2026-06-19 15:54:56,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:54:56,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:54:56,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:54:56,187.187 INFO    ] No camera update needed
[2026-06-19 15:54:56,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:54:56,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:54:56,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:54:56,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:54:58,241.241 INFO    ] ================================================
[2026-06-19 15:54:58,258.258 INFO    ] Launching Daemon at Fri Jun 19 15:54:58 IST 2026
[2026-06-19 15:54:58,269.269 INFO    ] ================================================
[2026-06-19 15:54:58,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:54:58
[2026-06-19 15:54:59,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:54:59,940.940 INFO    ] Initializing speech engine...
[2026-06-19 15:54:59,954.954 INFO    ] 2026-06-19 15:54:59
[2026-06-19 15:55:00,238.238 INFO    ] 2026-06-19 15:55:00
[2026-06-19 15:55:00,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:55:00,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:55:00,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:55:00,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:55:00,776.776 INFO    ] time= 19/06/2026 15:55:00
[2026-06-19 15:55:00,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:55:00,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:55:00,935.935 INFO    ] No existing commands found in stream
[2026-06-19 15:55:05,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:55:05,981.981 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 15:55:09,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:55:09,067.067 INFO    ] Checking for system updates...
[2026-06-19 15:55:09,105.105 INFO    ] 200
[2026-06-19 15:55:09,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:09,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:55:09,163.163 INFO    ] No update needed
[2026-06-19 15:55:09,165.165 INFO    ] Checking for camera pi updates...
[2026-06-19 15:55:09,199.199 INFO    ] 200
[2026-06-19 15:55:09,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:09,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:55:09,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:55:09,292.292 INFO    ] No camera update needed
[2026-06-19 15:55:09,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:55:09,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:55:09,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:55:09,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:55:11,347.347 INFO    ] ================================================
[2026-06-19 15:55:11,363.363 INFO    ] Launching Daemon at Fri Jun 19 15:55:11 IST 2026
[2026-06-19 15:55:11,373.373 INFO    ] ================================================
[2026-06-19 15:55:11,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:55:11
[2026-06-19 15:55:12,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:55:12,848.848 INFO    ] Initializing speech engine...
[2026-06-19 15:55:12,857.857 INFO    ] 2026-06-19 15:55:12
[2026-06-19 15:55:13,182.182 INFO    ] 2026-06-19 15:55:13
[2026-06-19 15:55:13,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:55:13,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:55:13,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:55:13,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:55:13,689.689 INFO    ] time= 19/06/2026 15:55:13
[2026-06-19 15:55:13,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:55:13,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:55:13,895.895 INFO    ] No existing commands found in stream
[2026-06-19 15:55:18,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:55:18,928.928 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 15:55:20,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:55:20,436.436 INFO    ] Checking for system updates...
[2026-06-19 15:55:20,473.473 INFO    ] 200
[2026-06-19 15:55:20,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:20,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:55:20,533.533 INFO    ] No update needed
[2026-06-19 15:55:20,535.535 INFO    ] Checking for camera pi updates...
[2026-06-19 15:55:20,569.569 INFO    ] 200
[2026-06-19 15:55:20,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:20,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:55:20,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:55:20,671.671 INFO    ] No camera update needed
[2026-06-19 15:55:20,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:55:20,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:55:20,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:55:20,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:55:22,726.726 INFO    ] ================================================
[2026-06-19 15:55:22,742.742 INFO    ] Launching Daemon at Fri Jun 19 15:55:22 IST 2026
[2026-06-19 15:55:22,753.753 INFO    ] ================================================
[2026-06-19 15:55:23,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:55:23
[2026-06-19 15:55:23,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:55:24,221.221 INFO    ] Initializing speech engine...
[2026-06-19 15:55:24,236.236 INFO    ] 2026-06-19 15:55:24
[2026-06-19 15:55:24,504.504 INFO    ] 2026-06-19 15:55:24
[2026-06-19 15:55:24,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:55:24,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:55:24,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:55:24,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:55:24,883.883 INFO    ] time= 19/06/2026 15:55:24
[2026-06-19 15:55:24,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:55:24,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:55:25,054.054 INFO    ] No existing commands found in stream
[2026-06-19 15:55:30,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:55:30,087.087 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 15:55:32,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:55:32,864.864 INFO    ] Checking for system updates...
[2026-06-19 15:55:32,909.909 INFO    ] 200
[2026-06-19 15:55:32,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:32,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:55:32,987.987 INFO    ] No update needed
[2026-06-19 15:55:32,991.991 INFO    ] Checking for camera pi updates...
[2026-06-19 15:55:33,030.030 INFO    ] 200
[2026-06-19 15:55:33,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:33,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:55:33,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:55:33,132.132 INFO    ] No camera update needed
[2026-06-19 15:55:33,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:55:33,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:55:33,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:55:33,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:55:35,198.198 INFO    ] ================================================
[2026-06-19 15:55:35,213.213 INFO    ] Launching Daemon at Fri Jun 19 15:55:35 IST 2026
[2026-06-19 15:55:35,224.224 INFO    ] ================================================
[2026-06-19 15:55:35,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:55:35
[2026-06-19 15:55:36,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:55:36,647.647 INFO    ] Initializing speech engine...
[2026-06-19 15:55:36,670.670 INFO    ] 2026-06-19 15:55:36
[2026-06-19 15:55:36,935.935 INFO    ] 2026-06-19 15:55:36
[2026-06-19 15:55:36,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:55:37,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:55:37,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:55:37,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:55:37,497.497 INFO    ] time= 19/06/2026 15:55:37
[2026-06-19 15:55:37,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:55:37,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:55:37,654.654 INFO    ] No existing commands found in stream
[2026-06-19 15:55:42,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:55:42,672.672 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 15:55:46,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:55:46,372.372 INFO    ] Checking for system updates...
[2026-06-19 15:55:46,411.411 INFO    ] 200
[2026-06-19 15:55:46,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:46,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:55:46,478.478 INFO    ] No update needed
[2026-06-19 15:55:46,480.480 INFO    ] Checking for camera pi updates...
[2026-06-19 15:55:46,518.518 INFO    ] 200
[2026-06-19 15:55:46,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:46,562.562 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:55:46,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:55:46,656.656 INFO    ] No camera update needed
[2026-06-19 15:55:46,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:55:46,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:55:46,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:55:46,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:55:48,711.711 INFO    ] ================================================
[2026-06-19 15:55:48,726.726 INFO    ] Launching Daemon at Fri Jun 19 15:55:48 IST 2026
[2026-06-19 15:55:48,736.736 INFO    ] ================================================
[2026-06-19 15:55:49,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:55:49
[2026-06-19 15:55:49,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:55:50,159.159 INFO    ] Initializing speech engine...
[2026-06-19 15:55:50,180.180 INFO    ] 2026-06-19 15:55:50
[2026-06-19 15:55:50,432.432 INFO    ] 2026-06-19 15:55:50
[2026-06-19 15:55:50,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:55:50,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:55:50,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:55:50,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:55:50,878.878 INFO    ] time= 19/06/2026 15:55:50
[2026-06-19 15:55:50,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:55:50,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:55:51,078.078 INFO    ] No existing commands found in stream
[2026-06-19 15:55:56,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:55:56,096.096 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 15:55:58,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:55:58,555.555 INFO    ] Checking for system updates...
[2026-06-19 15:55:58,591.591 INFO    ] 200
[2026-06-19 15:55:58,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:58,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:55:58,657.657 INFO    ] No update needed
[2026-06-19 15:55:58,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 15:55:58,694.694 INFO    ] 200
[2026-06-19 15:55:58,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:55:58,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:55:58,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:55:58,793.793 INFO    ] No camera update needed
[2026-06-19 15:55:58,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:55:58,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:55:58,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:55:58,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:56:00,848.848 INFO    ] ================================================
[2026-06-19 15:56:00,863.863 INFO    ] Launching Daemon at Fri Jun 19 15:56:00 IST 2026
[2026-06-19 15:56:00,874.874 INFO    ] ================================================
[2026-06-19 15:56:01,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:56:01
[2026-06-19 15:56:02,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:56:02,745.745 INFO    ] Initializing speech engine...
[2026-06-19 15:56:02,756.756 INFO    ] 2026-06-19 15:56:02
[2026-06-19 15:56:03,042.042 INFO    ] 2026-06-19 15:56:03
[2026-06-19 15:56:03,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:56:03,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:56:03,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:56:03,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:56:03,433.433 INFO    ] time= 19/06/2026 15:56:03
[2026-06-19 15:56:03,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:56:03,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:56:03,631.631 INFO    ] No existing commands found in stream
[2026-06-19 15:56:08,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:56:08,648.648 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 15:56:11,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:56:11,886.886 INFO    ] Checking for system updates...
[2026-06-19 15:56:11,935.935 INFO    ] 200
[2026-06-19 15:56:11,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:11,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:56:11,994.994 INFO    ] No update needed
[2026-06-19 15:56:11,997.997 INFO    ] Checking for camera pi updates...
[2026-06-19 15:56:12,033.033 INFO    ] 200
[2026-06-19 15:56:12,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:12,078.078 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:56:12,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:56:12,132.132 INFO    ] No camera update needed
[2026-06-19 15:56:12,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:56:12,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:56:12,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:56:12,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:56:14,190.190 INFO    ] ================================================
[2026-06-19 15:56:14,205.205 INFO    ] Launching Daemon at Fri Jun 19 15:56:14 IST 2026
[2026-06-19 15:56:14,215.215 INFO    ] ================================================
[2026-06-19 15:56:14,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:56:14
[2026-06-19 15:56:15,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:56:15,645.645 INFO    ] Initializing speech engine...
[2026-06-19 15:56:15,654.654 INFO    ] 2026-06-19 15:56:15
[2026-06-19 15:56:15,906.906 INFO    ] 2026-06-19 15:56:15
[2026-06-19 15:56:15,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:56:16,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:56:16,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:56:16,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:56:16,659.659 INFO    ] time= 19/06/2026 15:56:16
[2026-06-19 15:56:16,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:56:16,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:56:16,852.852 INFO    ] No existing commands found in stream
[2026-06-19 15:56:21,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:56:21,868.868 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 15:56:23,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:56:23,040.040 INFO    ] Checking for system updates...
[2026-06-19 15:56:23,079.079 INFO    ] 200
[2026-06-19 15:56:23,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:23,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:56:23,145.145 INFO    ] No update needed
[2026-06-19 15:56:23,148.148 INFO    ] Checking for camera pi updates...
[2026-06-19 15:56:23,185.185 INFO    ] 200
[2026-06-19 15:56:23,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:23,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:56:23,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:56:23,274.274 INFO    ] No camera update needed
[2026-06-19 15:56:23,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:56:23,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:56:23,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:56:23,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:56:25,332.332 INFO    ] ================================================
[2026-06-19 15:56:25,348.348 INFO    ] Launching Daemon at Fri Jun 19 15:56:25 IST 2026
[2026-06-19 15:56:25,358.358 INFO    ] ================================================
[2026-06-19 15:56:25,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:56:25
[2026-06-19 15:56:26,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:56:26,817.817 INFO    ] Initializing speech engine...
[2026-06-19 15:56:26,823.823 INFO    ] 2026-06-19 15:56:26
[2026-06-19 15:56:27,089.089 INFO    ] 2026-06-19 15:56:27
[2026-06-19 15:56:27,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:56:27,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:56:27,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:56:27,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:56:27,585.585 INFO    ] time= 19/06/2026 15:56:27
[2026-06-19 15:56:27,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:56:27,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:56:27,791.791 INFO    ] No existing commands found in stream
[2026-06-19 15:56:32,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:56:32,806.806 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 15:56:33,225.225 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:56:33,228.228 INFO    ] Checking for system updates...
[2026-06-19 15:56:33,268.268 INFO    ] 200
[2026-06-19 15:56:33,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:33,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:56:33,329.329 INFO    ] No update needed
[2026-06-19 15:56:33,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 15:56:33,369.369 INFO    ] 200
[2026-06-19 15:56:33,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:33,418.418 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:56:33,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:56:33,467.467 INFO    ] No camera update needed
[2026-06-19 15:56:33,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:56:33,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:56:33,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:56:33,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:56:35,522.522 INFO    ] ================================================
[2026-06-19 15:56:35,537.537 INFO    ] Launching Daemon at Fri Jun 19 15:56:35 IST 2026
[2026-06-19 15:56:35,548.548 INFO    ] ================================================
[2026-06-19 15:56:36,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:56:36
[2026-06-19 15:56:36,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:56:37,154.154 INFO    ] Initializing speech engine...
[2026-06-19 15:56:37,166.166 INFO    ] 2026-06-19 15:56:37
[2026-06-19 15:56:37,449.449 INFO    ] 2026-06-19 15:56:37
[2026-06-19 15:56:37,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:56:37,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:56:37,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:56:37,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:56:37,980.980 INFO    ] time= 19/06/2026 15:56:37
[2026-06-19 15:56:37,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:56:38,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:56:38,121.121 INFO    ] No existing commands found in stream
[2026-06-19 15:56:43,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:56:43,135.135 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 15:56:45,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:56:45,904.904 INFO    ] Checking for system updates...
[2026-06-19 15:56:45,942.942 INFO    ] 200
[2026-06-19 15:56:45,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:45,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:56:46,001.001 INFO    ] No update needed
[2026-06-19 15:56:46,004.004 INFO    ] Checking for camera pi updates...
[2026-06-19 15:56:46,039.039 INFO    ] 200
[2026-06-19 15:56:46,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:46,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:56:46,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:56:46,239.239 INFO    ] No camera update needed
[2026-06-19 15:56:46,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:56:46,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:56:46,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:56:46,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:56:48,298.298 INFO    ] ================================================
[2026-06-19 15:56:48,313.313 INFO    ] Launching Daemon at Fri Jun 19 15:56:48 IST 2026
[2026-06-19 15:56:48,324.324 INFO    ] ================================================
[2026-06-19 15:56:48,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:56:48
[2026-06-19 15:56:49,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:56:49,952.952 INFO    ] Initializing speech engine...
[2026-06-19 15:56:49,962.962 INFO    ] 2026-06-19 15:56:49
[2026-06-19 15:56:50,242.242 INFO    ] 2026-06-19 15:56:50
[2026-06-19 15:56:50,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:56:50,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:56:50,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:56:50,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:56:50,786.786 INFO    ] time= 19/06/2026 15:56:50
[2026-06-19 15:56:50,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:56:50,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:56:50,932.932 INFO    ] No existing commands found in stream
[2026-06-19 15:56:55,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:56:55,958.958 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 15:56:56,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:56:56,854.854 INFO    ] Checking for system updates...
[2026-06-19 15:56:56,891.891 INFO    ] 200
[2026-06-19 15:56:56,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:56,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:56:56,957.957 INFO    ] No update needed
[2026-06-19 15:56:56,961.961 INFO    ] Checking for camera pi updates...
[2026-06-19 15:56:57,001.001 INFO    ] 200
[2026-06-19 15:56:57,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:56:57,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:56:57,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:56:57,106.106 INFO    ] No camera update needed
[2026-06-19 15:56:57,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:56:57,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:56:57,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:56:57,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:56:59,169.169 INFO    ] ================================================
[2026-06-19 15:56:59,184.184 INFO    ] Launching Daemon at Fri Jun 19 15:56:59 IST 2026
[2026-06-19 15:56:59,195.195 INFO    ] ================================================
[2026-06-19 15:56:59,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:56:59
[2026-06-19 15:57:00,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:57:00,840.840 INFO    ] Initializing speech engine...
[2026-06-19 15:57:00,853.853 INFO    ] 2026-06-19 15:57:00
[2026-06-19 15:57:01,143.143 INFO    ] 2026-06-19 15:57:01
[2026-06-19 15:57:01,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:57:01,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:57:01,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:57:01,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:57:01,614.614 INFO    ] time= 19/06/2026 15:57:01
[2026-06-19 15:57:01,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:57:01,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:57:01,717.717 INFO    ] No existing commands found in stream
[2026-06-19 15:57:06,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:57:06,734.734 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 15:57:08,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:57:08,160.160 INFO    ] Checking for system updates...
[2026-06-19 15:57:08,198.198 INFO    ] 200
[2026-06-19 15:57:08,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:08,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:08,263.263 INFO    ] No update needed
[2026-06-19 15:57:08,265.265 INFO    ] Checking for camera pi updates...
[2026-06-19 15:57:08,302.302 INFO    ] 200
[2026-06-19 15:57:08,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:08,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:57:08,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:08,399.399 INFO    ] No camera update needed
[2026-06-19 15:57:08,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:57:08,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:57:08,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:57:08,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:57:10,454.454 INFO    ] ================================================
[2026-06-19 15:57:10,469.469 INFO    ] Launching Daemon at Fri Jun 19 15:57:10 IST 2026
[2026-06-19 15:57:10,480.480 INFO    ] ================================================
[2026-06-19 15:57:11,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:57:11
[2026-06-19 15:57:11,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:57:11,968.968 INFO    ] Initializing speech engine...
[2026-06-19 15:57:11,979.979 INFO    ] 2026-06-19 15:57:11
[2026-06-19 15:57:12,262.262 INFO    ] 2026-06-19 15:57:12
[2026-06-19 15:57:12,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:57:12,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:57:12,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:57:12,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:57:12,762.762 INFO    ] time= 19/06/2026 15:57:12
[2026-06-19 15:57:12,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:57:12,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:57:12,957.957 INFO    ] No existing commands found in stream
[2026-06-19 15:57:17,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:57:17,979.979 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 15:57:21,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:57:21,243.243 INFO    ] Checking for system updates...
[2026-06-19 15:57:21,280.280 INFO    ] 200
[2026-06-19 15:57:21,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:21,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:21,338.338 INFO    ] No update needed
[2026-06-19 15:57:21,341.341 INFO    ] Checking for camera pi updates...
[2026-06-19 15:57:21,377.377 INFO    ] 200
[2026-06-19 15:57:21,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:21,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:57:21,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:21,473.473 INFO    ] No camera update needed
[2026-06-19 15:57:21,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:57:21,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:57:21,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:57:21,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:57:23,530.530 INFO    ] ================================================
[2026-06-19 15:57:23,546.546 INFO    ] Launching Daemon at Fri Jun 19 15:57:23 IST 2026
[2026-06-19 15:57:23,557.557 INFO    ] ================================================
[2026-06-19 15:57:24,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:57:24
[2026-06-19 15:57:24,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:57:25,029.029 INFO    ] Initializing speech engine...
[2026-06-19 15:57:25,040.040 INFO    ] 2026-06-19 15:57:25
[2026-06-19 15:57:25,310.310 INFO    ] 2026-06-19 15:57:25
[2026-06-19 15:57:25,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:57:25,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:57:25,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:57:25,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:57:25,822.822 INFO    ] time= 19/06/2026 15:57:25
[2026-06-19 15:57:25,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:57:25,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:57:26,007.007 INFO    ] No existing commands found in stream
[2026-06-19 15:57:31,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:57:31,022.022 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 15:57:32,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:57:32,792.792 INFO    ] Checking for system updates...
[2026-06-19 15:57:32,832.832 INFO    ] 200
[2026-06-19 15:57:32,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:32,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:32,891.891 INFO    ] No update needed
[2026-06-19 15:57:32,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 15:57:32,928.928 INFO    ] 200
[2026-06-19 15:57:32,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:32,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:57:33,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:33,022.022 INFO    ] No camera update needed
[2026-06-19 15:57:33,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:57:33,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:57:33,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:57:33,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:57:35,079.079 INFO    ] ================================================
[2026-06-19 15:57:35,095.095 INFO    ] Launching Daemon at Fri Jun 19 15:57:35 IST 2026
[2026-06-19 15:57:35,106.106 INFO    ] ================================================
[2026-06-19 15:57:35,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:57:35
[2026-06-19 15:57:36,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:57:36,511.511 INFO    ] Initializing speech engine...
[2026-06-19 15:57:36,526.526 INFO    ] 2026-06-19 15:57:36
[2026-06-19 15:57:36,793.793 INFO    ] 2026-06-19 15:57:36
[2026-06-19 15:57:36,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:57:37,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:57:37,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:57:37,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:57:37,299.299 INFO    ] time= 19/06/2026 15:57:37
[2026-06-19 15:57:37,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:57:37,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:57:37,500.500 INFO    ] No existing commands found in stream
[2026-06-19 15:57:42,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:57:42,531.531 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 15:57:46,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:57:46,875.875 INFO    ] Checking for system updates...
[2026-06-19 15:57:46,916.916 INFO    ] 200
[2026-06-19 15:57:46,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:46,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:46,973.973 INFO    ] No update needed
[2026-06-19 15:57:46,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 15:57:47,013.013 INFO    ] 200
[2026-06-19 15:57:47,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:47,061.061 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:57:47,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:47,095.095 INFO    ] No camera update needed
[2026-06-19 15:57:47,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:57:47,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:57:47,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:57:47,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:57:49,151.151 INFO    ] ================================================
[2026-06-19 15:57:49,167.167 INFO    ] Launching Daemon at Fri Jun 19 15:57:49 IST 2026
[2026-06-19 15:57:49,178.178 INFO    ] ================================================
[2026-06-19 15:57:49,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:57:49
[2026-06-19 15:57:50,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:57:50,628.628 INFO    ] Initializing speech engine...
[2026-06-19 15:57:50,653.653 INFO    ] 2026-06-19 15:57:50
[2026-06-19 15:57:50,929.929 INFO    ] 2026-06-19 15:57:50
[2026-06-19 15:57:50,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:57:51,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:57:51,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:57:51,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:57:51,349.349 INFO    ] time= 19/06/2026 15:57:51
[2026-06-19 15:57:51,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:57:51,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:57:51,520.520 INFO    ] No existing commands found in stream
[2026-06-19 15:57:56,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:57:56,548.548 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 15:57:59,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:57:59,424.424 INFO    ] Checking for system updates...
[2026-06-19 15:57:59,461.461 INFO    ] 200
[2026-06-19 15:57:59,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:59,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:59,523.523 INFO    ] No update needed
[2026-06-19 15:57:59,525.525 INFO    ] Checking for camera pi updates...
[2026-06-19 15:57:59,558.558 INFO    ] 200
[2026-06-19 15:57:59,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:57:59,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:57:59,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:57:59,660.660 INFO    ] No camera update needed
[2026-06-19 15:57:59,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:57:59,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:57:59,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:57:59,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:58:01,717.717 INFO    ] ================================================
[2026-06-19 15:58:01,740.740 INFO    ] Launching Daemon at Fri Jun 19 15:58:01 IST 2026
[2026-06-19 15:58:01,758.758 INFO    ] ================================================
[2026-06-19 15:58:02,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:58:02
[2026-06-19 15:58:03,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:58:03,416.416 INFO    ] Initializing speech engine...
[2026-06-19 15:58:03,431.431 INFO    ] 2026-06-19 15:58:03
[2026-06-19 15:58:03,733.733 INFO    ] 2026-06-19 15:58:03
[2026-06-19 15:58:03,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:58:04,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:58:04,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:58:04,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:58:04,237.237 INFO    ] time= 19/06/2026 15:58:04
[2026-06-19 15:58:04,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:58:04,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:58:04,379.379 INFO    ] No existing commands found in stream
[2026-06-19 15:58:09,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:58:09,403.403 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 15:58:11,251.251 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 15:58:11,254.254 INFO    ] Checking for system updates...
[2026-06-19 15:58:11,291.291 INFO    ] 200
[2026-06-19 15:58:11,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:11,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:58:11,357.357 INFO    ] No update needed
[2026-06-19 15:58:11,359.359 INFO    ] Checking for camera pi updates...
[2026-06-19 15:58:11,393.393 INFO    ] 200
[2026-06-19 15:58:11,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:11,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:58:11,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:58:11,487.487 INFO    ] No camera update needed
[2026-06-19 15:58:11,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:58:11,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:58:11,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:58:11,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:58:13,545.545 INFO    ] ================================================
[2026-06-19 15:58:13,561.561 INFO    ] Launching Daemon at Fri Jun 19 15:58:13 IST 2026
[2026-06-19 15:58:13,572.572 INFO    ] ================================================
[2026-06-19 15:58:14,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:58:14
[2026-06-19 15:58:14,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:58:14,979.979 INFO    ] Initializing speech engine...
[2026-06-19 15:58:14,992.992 INFO    ] 2026-06-19 15:58:14
[2026-06-19 15:58:15,278.278 INFO    ] 2026-06-19 15:58:15
[2026-06-19 15:58:15,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:58:15,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:58:15,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:58:15,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:58:15,657.657 INFO    ] time= 19/06/2026 15:58:15
[2026-06-19 15:58:15,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:58:15,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:58:15,782.782 INFO    ] No existing commands found in stream
[2026-06-19 15:58:20,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:58:20,797.797 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 15:58:24,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:58:24,402.402 INFO    ] Checking for system updates...
[2026-06-19 15:58:24,438.438 INFO    ] 200
[2026-06-19 15:58:24,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:24,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:58:24,502.502 INFO    ] No update needed
[2026-06-19 15:58:24,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 15:58:24,543.543 INFO    ] 200
[2026-06-19 15:58:24,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:24,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:58:24,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:58:24,639.639 INFO    ] No camera update needed
[2026-06-19 15:58:24,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:58:24,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:58:24,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:58:24,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:58:26,694.694 INFO    ] ================================================
[2026-06-19 15:58:26,709.709 INFO    ] Launching Daemon at Fri Jun 19 15:58:26 IST 2026
[2026-06-19 15:58:26,720.720 INFO    ] ================================================
[2026-06-19 15:58:27,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:58:27
[2026-06-19 15:58:28,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:58:28,343.343 INFO    ] Initializing speech engine...
[2026-06-19 15:58:28,355.355 INFO    ] 2026-06-19 15:58:28
[2026-06-19 15:58:28,634.634 INFO    ] 2026-06-19 15:58:28
[2026-06-19 15:58:28,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:58:28,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:58:28,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:58:29,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:58:29,170.170 INFO    ] time= 19/06/2026 15:58:29
[2026-06-19 15:58:29,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:58:29,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:58:29,322.322 INFO    ] No existing commands found in stream
[2026-06-19 15:58:34,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:58:34,339.339 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 15:58:35,040.040 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 15:58:35,043.043 INFO    ] Checking for system updates...
[2026-06-19 15:58:35,081.081 INFO    ] 200
[2026-06-19 15:58:35,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:35,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:58:35,149.149 INFO    ] No update needed
[2026-06-19 15:58:35,152.152 INFO    ] Checking for camera pi updates...
[2026-06-19 15:58:35,191.191 INFO    ] 200
[2026-06-19 15:58:35,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:35,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:58:35,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:58:35,290.290 INFO    ] No camera update needed
[2026-06-19 15:58:35,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:58:35,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:58:35,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:58:35,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:58:37,349.349 INFO    ] ================================================
[2026-06-19 15:58:37,365.365 INFO    ] Launching Daemon at Fri Jun 19 15:58:37 IST 2026
[2026-06-19 15:58:37,377.377 INFO    ] ================================================
[2026-06-19 15:58:38,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:58:38
[2026-06-19 15:58:38,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:58:39,025.025 INFO    ] Initializing speech engine...
[2026-06-19 15:58:39,033.033 INFO    ] 2026-06-19 15:58:39
[2026-06-19 15:58:39,310.310 INFO    ] 2026-06-19 15:58:39
[2026-06-19 15:58:39,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:58:39,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:58:39,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:58:39,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:58:39,860.860 INFO    ] time= 19/06/2026 15:58:39
[2026-06-19 15:58:39,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:58:39,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:58:40,016.016 INFO    ] No existing commands found in stream
[2026-06-19 15:58:45,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:58:45,044.044 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 15:58:46,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:58:46,788.788 INFO    ] Checking for system updates...
[2026-06-19 15:58:46,830.830 INFO    ] 200
[2026-06-19 15:58:46,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:46,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:58:46,890.890 INFO    ] No update needed
[2026-06-19 15:58:46,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 15:58:46,932.932 INFO    ] 200
[2026-06-19 15:58:46,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:46,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:58:47,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:58:47,014.014 INFO    ] No camera update needed
[2026-06-19 15:58:47,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:58:47,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:58:47,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:58:47,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:58:49,074.074 INFO    ] ================================================
[2026-06-19 15:58:49,089.089 INFO    ] Launching Daemon at Fri Jun 19 15:58:49 IST 2026
[2026-06-19 15:58:49,101.101 INFO    ] ================================================
[2026-06-19 15:58:49,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:58:49
[2026-06-19 15:58:50,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:58:50,564.564 INFO    ] Initializing speech engine...
[2026-06-19 15:58:50,573.573 INFO    ] 2026-06-19 15:58:50
[2026-06-19 15:58:50,830.830 INFO    ] 2026-06-19 15:58:50
[2026-06-19 15:58:50,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:58:51,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:58:51,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:58:51,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:58:51,372.372 INFO    ] time= 19/06/2026 15:58:51
[2026-06-19 15:58:51,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:58:51,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:58:51,527.527 INFO    ] No existing commands found in stream
[2026-06-19 15:58:56,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:58:56,549.549 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 15:58:58,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:58:58,650.650 INFO    ] Checking for system updates...
[2026-06-19 15:58:58,687.687 INFO    ] 200
[2026-06-19 15:58:58,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:58,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:58:58,747.747 INFO    ] No update needed
[2026-06-19 15:58:58,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 15:58:58,788.788 INFO    ] 200
[2026-06-19 15:58:58,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:58:58,840.840 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:58:58,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:58:58,988.988 INFO    ] No camera update needed
[2026-06-19 15:58:58,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:58:58,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:58:59,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:58:59,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:59:01,049.049 INFO    ] ================================================
[2026-06-19 15:59:01,065.065 INFO    ] Launching Daemon at Fri Jun 19 15:59:01 IST 2026
[2026-06-19 15:59:01,077.077 INFO    ] ================================================
[2026-06-19 15:59:01,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:59:01
[2026-06-19 15:59:02,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:59:02,802.802 INFO    ] Initializing speech engine...
[2026-06-19 15:59:02,819.819 INFO    ] 2026-06-19 15:59:02
[2026-06-19 15:59:03,093.093 INFO    ] 2026-06-19 15:59:03
[2026-06-19 15:59:03,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:59:03,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:59:03,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:59:03,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:59:03,489.489 INFO    ] time= 19/06/2026 15:59:03
[2026-06-19 15:59:03,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:59:03,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:59:03,679.679 INFO    ] No existing commands found in stream
[2026-06-19 15:59:08,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:59:08,699.699 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 15:59:09,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 15:59:09,534.534 INFO    ] Checking for system updates...
[2026-06-19 15:59:09,569.569 INFO    ] 200
[2026-06-19 15:59:09,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:09,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:59:09,628.628 INFO    ] No update needed
[2026-06-19 15:59:09,630.630 INFO    ] Checking for camera pi updates...
[2026-06-19 15:59:09,665.665 INFO    ] 200
[2026-06-19 15:59:09,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:09,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:59:09,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 15:59:09,767.767 INFO    ] No camera update needed
[2026-06-19 15:59:09,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:59:09,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:59:09,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:59:09,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:59:11,823.823 INFO    ] ================================================
[2026-06-19 15:59:11,839.839 INFO    ] Launching Daemon at Fri Jun 19 15:59:11 IST 2026
[2026-06-19 15:59:11,850.850 INFO    ] ================================================
[2026-06-19 15:59:12,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:59:12
[2026-06-19 15:59:13,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:59:13,260.260 INFO    ] Initializing speech engine...
[2026-06-19 15:59:13,267.267 INFO    ] 2026-06-19 15:59:13
[2026-06-19 15:59:13,568.568 INFO    ] 2026-06-19 15:59:13
[2026-06-19 15:59:13,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:59:13,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:59:13,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:59:13,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:59:13,999.999 INFO    ] time= 19/06/2026 15:59:13
[2026-06-19 15:59:14,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:59:14,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:59:14,168.168 INFO    ] No existing commands found in stream
[2026-06-19 15:59:19,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:59:19,201.201 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 15:59:21,700.700 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:59:21,702.702 INFO    ] Checking for system updates...
[2026-06-19 15:59:21,739.739 INFO    ] 200
[2026-06-19 15:59:21,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:21,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:59:21,798.798 INFO    ] No update needed
[2026-06-19 15:59:21,801.801 INFO    ] Checking for camera pi updates...
[2026-06-19 15:59:21,836.836 INFO    ] 200
[2026-06-19 15:59:21,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:21,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:59:21,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:59:21,942.942 INFO    ] No camera update needed
[2026-06-19 15:59:21,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:59:21,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:59:21,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:59:21,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:59:24,003.003 INFO    ] ================================================
[2026-06-19 15:59:24,018.018 INFO    ] Launching Daemon at Fri Jun 19 15:59:24 IST 2026
[2026-06-19 15:59:24,029.029 INFO    ] ================================================
[2026-06-19 15:59:24,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:59:24
[2026-06-19 15:59:25,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:59:25,452.452 INFO    ] Initializing speech engine...
[2026-06-19 15:59:25,460.460 INFO    ] 2026-06-19 15:59:25
[2026-06-19 15:59:25,712.712 INFO    ] 2026-06-19 15:59:25
[2026-06-19 15:59:25,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:59:25,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:59:25,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:59:26,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:59:26,087.087 INFO    ] time= 19/06/2026 15:59:26
[2026-06-19 15:59:26,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:59:26,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:59:26,247.247 INFO    ] No existing commands found in stream
[2026-06-19 15:59:31,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:59:31,270.270 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 15:59:34,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 15:59:34,834.834 INFO    ] Checking for system updates...
[2026-06-19 15:59:34,871.871 INFO    ] 200
[2026-06-19 15:59:34,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:34,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:59:34,930.930 INFO    ] No update needed
[2026-06-19 15:59:34,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 15:59:34,976.976 INFO    ] 200
[2026-06-19 15:59:34,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:35,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:59:35,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:59:35,079.079 INFO    ] No camera update needed
[2026-06-19 15:59:35,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:59:35,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:59:35,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:59:35,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:59:37,141.141 INFO    ] ================================================
[2026-06-19 15:59:37,157.157 INFO    ] Launching Daemon at Fri Jun 19 15:59:37 IST 2026
[2026-06-19 15:59:37,169.169 INFO    ] ================================================
[2026-06-19 15:59:37,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:59:37
[2026-06-19 15:59:38,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:59:38,605.605 INFO    ] Initializing speech engine...
[2026-06-19 15:59:38,614.614 INFO    ] 2026-06-19 15:59:38
[2026-06-19 15:59:38,859.859 INFO    ] 2026-06-19 15:59:38
[2026-06-19 15:59:38,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:59:39,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:59:39,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:59:39,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:59:39,349.349 INFO    ] time= 19/06/2026 15:59:39
[2026-06-19 15:59:39,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:59:39,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:59:39,571.571 INFO    ] No existing commands found in stream
[2026-06-19 15:59:44,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:59:44,597.597 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 15:59:46,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 15:59:46,999.999 INFO    ] Checking for system updates...
[2026-06-19 15:59:47,036.036 INFO    ] 200
[2026-06-19 15:59:47,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:47,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:59:47,101.101 INFO    ] No update needed
[2026-06-19 15:59:47,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 15:59:47,142.142 INFO    ] 200
[2026-06-19 15:59:47,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:47,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:59:47,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:59:47,219.219 INFO    ] No camera update needed
[2026-06-19 15:59:47,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:59:47,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:59:47,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:59:47,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 15:59:49,274.274 INFO    ] ================================================
[2026-06-19 15:59:49,289.289 INFO    ] Launching Daemon at Fri Jun 19 15:59:49 IST 2026
[2026-06-19 15:59:49,300.300 INFO    ] ================================================
[2026-06-19 15:59:49,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 15:59:49
[2026-06-19 15:59:50,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 15:59:50,772.772 INFO    ] Initializing speech engine...
[2026-06-19 15:59:50,781.781 INFO    ] 2026-06-19 15:59:50
[2026-06-19 15:59:51,041.041 INFO    ] 2026-06-19 15:59:51
[2026-06-19 15:59:51,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 15:59:51,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 15:59:51,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 15:59:51,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 15:59:51,519.519 INFO    ] time= 19/06/2026 15:59:51
[2026-06-19 15:59:51,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 15:59:51,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-19 15:59:51,749.749 INFO    ] No existing commands found in stream
[2026-06-19 15:59:56,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 15:59:56,767.767 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 15:59:59,284.284 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 15:59:59,287.287 INFO    ] Checking for system updates...
[2026-06-19 15:59:59,325.325 INFO    ] 200
[2026-06-19 15:59:59,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:59,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:59:59,385.385 INFO    ] No update needed
[2026-06-19 15:59:59,388.388 INFO    ] Checking for camera pi updates...
[2026-06-19 15:59:59,424.424 INFO    ] 200
[2026-06-19 15:59:59,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 15:59:59,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 15:59:59,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 15:59:59,518.518 INFO    ] No camera update needed
[2026-06-19 15:59:59,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 15:59:59,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 15:59:59,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 15:59:59,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:00:01,818.818 INFO    ] ================================================
[2026-06-19 16:00:01,903.903 INFO    ] Launching Daemon at Fri Jun 19 16:00:01 IST 2026
[2026-06-19 16:00:02,978.978 INFO    ] ================================================
[2026-06-19 16:00:04,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:00:04
[2026-06-19 16:00:06,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:00:06,518.518 INFO    ] Initializing speech engine...
[2026-06-19 16:00:06,527.527 INFO    ] 2026-06-19 16:00:06
[2026-06-19 16:00:06,828.828 INFO    ] 2026-06-19 16:00:06
[2026-06-19 16:00:06,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:00:07,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:00:07,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:00:07,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:00:07,270.270 INFO    ] time= 19/06/2026 16:00:07
[2026-06-19 16:00:07,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:00:07,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:00:07,446.446 INFO    ] No existing commands found in stream
[2026-06-19 16:00:12,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:00:12,479.479 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 16:00:14,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:00:14,380.380 INFO    ] Checking for system updates...
[2026-06-19 16:00:14,418.418 INFO    ] 200
[2026-06-19 16:00:14,421.421 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:00:14,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:00:14,480.480 INFO    ] No update needed
[2026-06-19 16:00:14,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 16:00:14,519.519 INFO    ] 200
[2026-06-19 16:00:14,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:00:14,571.571 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:00:14,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:00:14,628.628 INFO    ] No camera update needed
[2026-06-19 16:00:14,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:00:14,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:00:14,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:00:14,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:00:16,692.692 INFO    ] ================================================
[2026-06-19 16:00:16,707.707 INFO    ] Launching Daemon at Fri Jun 19 16:00:16 IST 2026
[2026-06-19 16:00:16,718.718 INFO    ] ================================================
[2026-06-19 16:00:17,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:00:17
[2026-06-19 16:00:18,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:00:18,415.415 INFO    ] Initializing speech engine...
[2026-06-19 16:00:18,427.427 INFO    ] 2026-06-19 16:00:18
[2026-06-19 16:00:18,715.715 INFO    ] 2026-06-19 16:00:18
[2026-06-19 16:00:18,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:00:19,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:00:19,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:00:19,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:00:19,272.272 INFO    ] time= 19/06/2026 16:00:19
[2026-06-19 16:00:19,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:00:19,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:00:19,436.436 INFO    ] No existing commands found in stream
[2026-06-19 16:00:24,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:00:24,465.465 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 16:00:27,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:00:27,589.589 INFO    ] Checking for system updates...
[2026-06-19 16:00:27,627.627 INFO    ] 200
[2026-06-19 16:00:27,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:00:27,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:00:27,687.687 INFO    ] No update needed
[2026-06-19 16:00:27,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 16:00:27,726.726 INFO    ] 200
[2026-06-19 16:00:27,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:00:27,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:00:27,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:00:27,822.822 INFO    ] No camera update needed
[2026-06-19 16:00:27,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:00:27,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:00:27,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:00:27,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:00:29,879.879 INFO    ] ================================================
[2026-06-19 16:00:29,894.894 INFO    ] Launching Daemon at Fri Jun 19 16:00:29 IST 2026
[2026-06-19 16:00:29,906.906 INFO    ] ================================================
[2026-06-19 16:00:30,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:00:30
[2026-06-19 16:00:31,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:00:31,326.326 INFO    ] Initializing speech engine...
[2026-06-19 16:00:31,341.341 INFO    ] 2026-06-19 16:00:31
[2026-06-19 16:00:31,634.634 INFO    ] 2026-06-19 16:00:31
[2026-06-19 16:00:31,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:00:31,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:00:31,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:00:32,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:00:32,031.031 INFO    ] time= 19/06/2026 16:00:32
[2026-06-19 16:00:32,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:00:32,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:00:32,119.119 INFO    ] No existing commands found in stream
[2026-06-19 16:00:37,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:00:37,133.133 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 16:00:39,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:00:39,638.638 INFO    ] Checking for system updates...
[2026-06-19 16:00:39,675.675 INFO    ] 200
[2026-06-19 16:00:39,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:00:39,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:00:39,732.732 INFO    ] No update needed
[2026-06-19 16:00:39,735.735 INFO    ] Checking for camera pi updates...
[2026-06-19 16:00:39,769.769 INFO    ] 200
[2026-06-19 16:00:39,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:00:39,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:00:39,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:00:39,869.869 INFO    ] No camera update needed
[2026-06-19 16:00:39,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:00:39,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:00:39,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:00:39,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:00:41,929.929 INFO    ] ================================================
[2026-06-19 16:00:41,944.944 INFO    ] Launching Daemon at Fri Jun 19 16:00:41 IST 2026
[2026-06-19 16:00:41,956.956 INFO    ] ================================================
[2026-06-19 16:00:42,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:00:42
[2026-06-19 16:00:43,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:00:43,655.655 INFO    ] Initializing speech engine...
[2026-06-19 16:00:43,668.668 INFO    ] 2026-06-19 16:00:43
[2026-06-19 16:00:43,939.939 INFO    ] 2026-06-19 16:00:43
[2026-06-19 16:00:43,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:00:44,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:00:44,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:00:44,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:00:44,509.509 INFO    ] time= 19/06/2026 16:00:44
[2026-06-19 16:00:44,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:00:44,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:00:44,750.750 INFO    ] No existing commands found in stream
[2026-06-19 16:00:49,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:00:49,779.779 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 16:00:52,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:00:52,481.481 INFO    ] Checking for system updates...
[2026-06-19 16:00:52,519.519 INFO    ] 200
[2026-06-19 16:00:52,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:00:52,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:00:52,579.579 INFO    ] No update needed
[2026-06-19 16:00:52,581.581 INFO    ] Checking for camera pi updates...
[2026-06-19 16:00:52,616.616 INFO    ] 200
[2026-06-19 16:00:52,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:00:52,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:00:52,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:00:52,720.720 INFO    ] No camera update needed
[2026-06-19 16:00:52,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:00:52,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:00:52,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:00:52,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:00:54,777.777 INFO    ] ================================================
[2026-06-19 16:00:54,791.791 INFO    ] Launching Daemon at Fri Jun 19 16:00:54 IST 2026
[2026-06-19 16:00:54,802.802 INFO    ] ================================================
[2026-06-19 16:00:55,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:00:55
[2026-06-19 16:00:55,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:00:56,267.267 INFO    ] Initializing speech engine...
[2026-06-19 16:00:56,274.274 INFO    ] 2026-06-19 16:00:56
[2026-06-19 16:00:56,537.537 INFO    ] 2026-06-19 16:00:56
[2026-06-19 16:00:56,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:00:56,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:00:56,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:00:56,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:00:57,027.027 INFO    ] time= 19/06/2026 16:00:56
[2026-06-19 16:00:57,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:00:57,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:00:57,237.237 INFO    ] No existing commands found in stream
[2026-06-19 16:01:02,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:01:02,264.264 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 16:01:03,112.112 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:01:03,116.116 INFO    ] Checking for system updates...
[2026-06-19 16:01:03,161.161 INFO    ] 200
[2026-06-19 16:01:03,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:03,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:01:03,233.233 INFO    ] No update needed
[2026-06-19 16:01:03,237.237 INFO    ] Checking for camera pi updates...
[2026-06-19 16:01:03,274.274 INFO    ] 200
[2026-06-19 16:01:03,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:03,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:01:03,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:01:03,376.376 INFO    ] No camera update needed
[2026-06-19 16:01:03,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:01:03,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:01:03,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:01:03,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:01:05,437.437 INFO    ] ================================================
[2026-06-19 16:01:05,452.452 INFO    ] Launching Daemon at Fri Jun 19 16:01:05 IST 2026
[2026-06-19 16:01:05,463.463 INFO    ] ================================================
[2026-06-19 16:01:06,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:01:06
[2026-06-19 16:01:06,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:01:06,935.935 INFO    ] Initializing speech engine...
[2026-06-19 16:01:06,943.943 INFO    ] 2026-06-19 16:01:06
[2026-06-19 16:01:07,192.192 INFO    ] 2026-06-19 16:01:07
[2026-06-19 16:01:07,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:01:07,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:01:07,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:01:07,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:01:07,698.698 INFO    ] time= 19/06/2026 16:01:07
[2026-06-19 16:01:07,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:01:07,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:01:07,903.903 INFO    ] No existing commands found in stream
[2026-06-19 16:01:12,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:01:12,919.919 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 16:01:16,500.500 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:01:16,502.502 INFO    ] Checking for system updates...
[2026-06-19 16:01:16,538.538 INFO    ] 200
[2026-06-19 16:01:16,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:16,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:01:16,596.596 INFO    ] No update needed
[2026-06-19 16:01:16,598.598 INFO    ] Checking for camera pi updates...
[2026-06-19 16:01:16,632.632 INFO    ] 200
[2026-06-19 16:01:16,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:16,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:01:16,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:01:16,726.726 INFO    ] No camera update needed
[2026-06-19 16:01:16,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:01:16,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:01:16,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:01:16,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:01:18,781.781 INFO    ] ================================================
[2026-06-19 16:01:18,796.796 INFO    ] Launching Daemon at Fri Jun 19 16:01:18 IST 2026
[2026-06-19 16:01:18,807.807 INFO    ] ================================================
[2026-06-19 16:01:19,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:01:19
[2026-06-19 16:01:20,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:01:20,282.282 INFO    ] Initializing speech engine...
[2026-06-19 16:01:20,300.300 INFO    ] 2026-06-19 16:01:20
[2026-06-19 16:01:20,555.555 INFO    ] 2026-06-19 16:01:20
[2026-06-19 16:01:20,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:01:20,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:01:20,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:01:20,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:01:21,042.042 INFO    ] time= 19/06/2026 16:01:20
[2026-06-19 16:01:21,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:01:21,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:01:21,258.258 INFO    ] No existing commands found in stream
[2026-06-19 16:01:26,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:01:26,286.286 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 16:01:27,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:01:27,774.774 INFO    ] Checking for system updates...
[2026-06-19 16:01:27,817.817 INFO    ] 200
[2026-06-19 16:01:27,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:27,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:01:27,885.885 INFO    ] No update needed
[2026-06-19 16:01:27,888.888 INFO    ] Checking for camera pi updates...
[2026-06-19 16:01:27,928.928 INFO    ] 200
[2026-06-19 16:01:27,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:27,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:01:28,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:01:28,030.030 INFO    ] No camera update needed
[2026-06-19 16:01:28,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:01:28,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:01:28,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:01:28,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:01:30,092.092 INFO    ] ================================================
[2026-06-19 16:01:30,107.107 INFO    ] Launching Daemon at Fri Jun 19 16:01:30 IST 2026
[2026-06-19 16:01:30,118.118 INFO    ] ================================================
[2026-06-19 16:01:30,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:01:30
[2026-06-19 16:01:31,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:01:31,521.521 INFO    ] Initializing speech engine...
[2026-06-19 16:01:31,536.536 INFO    ] 2026-06-19 16:01:31
[2026-06-19 16:01:31,828.828 INFO    ] 2026-06-19 16:01:31
[2026-06-19 16:01:31,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:01:32,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:01:32,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:01:32,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:01:32,334.334 INFO    ] time= 19/06/2026 16:01:32
[2026-06-19 16:01:32,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:01:32,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:01:32,612.612 INFO    ] No existing commands found in stream
[2026-06-19 16:01:37,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:01:37,655.655 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 16:01:41,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:01:41,629.629 INFO    ] Checking for system updates...
[2026-06-19 16:01:41,666.666 INFO    ] 200
[2026-06-19 16:01:41,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:41,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:01:41,724.724 INFO    ] No update needed
[2026-06-19 16:01:41,727.727 INFO    ] Checking for camera pi updates...
[2026-06-19 16:01:41,760.760 INFO    ] 200
[2026-06-19 16:01:41,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:41,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:01:41,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:01:41,854.854 INFO    ] No camera update needed
[2026-06-19 16:01:41,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:01:41,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:01:41,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:01:41,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:01:43,909.909 INFO    ] ================================================
[2026-06-19 16:01:43,925.925 INFO    ] Launching Daemon at Fri Jun 19 16:01:43 IST 2026
[2026-06-19 16:01:43,937.937 INFO    ] ================================================
[2026-06-19 16:01:44,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:01:44
[2026-06-19 16:01:45,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:01:45,338.338 INFO    ] Initializing speech engine...
[2026-06-19 16:01:45,347.347 INFO    ] 2026-06-19 16:01:45
[2026-06-19 16:01:45,635.635 INFO    ] 2026-06-19 16:01:45
[2026-06-19 16:01:45,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:01:45,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:01:45,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:01:46,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:01:46,103.103 INFO    ] time= 19/06/2026 16:01:46
[2026-06-19 16:01:46,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:01:46,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:01:46,412.412 INFO    ] No existing commands found in stream
[2026-06-19 16:01:51,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:01:51,450.450 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 16:01:52,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:01:52,957.957 INFO    ] Checking for system updates...
[2026-06-19 16:01:52,997.997 INFO    ] 200
[2026-06-19 16:01:53,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:53,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:01:53,062.062 INFO    ] No update needed
[2026-06-19 16:01:53,065.065 INFO    ] Checking for camera pi updates...
[2026-06-19 16:01:53,103.103 INFO    ] 200
[2026-06-19 16:01:53,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:01:53,155.155 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:01:53,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:01:53,204.204 INFO    ] No camera update needed
[2026-06-19 16:01:53,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:01:53,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:01:53,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:01:53,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:01:55,263.263 INFO    ] ================================================
[2026-06-19 16:01:55,279.279 INFO    ] Launching Daemon at Fri Jun 19 16:01:55 IST 2026
[2026-06-19 16:01:55,291.291 INFO    ] ================================================
[2026-06-19 16:01:55,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:01:55
[2026-06-19 16:01:56,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:01:56,738.738 INFO    ] Initializing speech engine...
[2026-06-19 16:01:56,747.747 INFO    ] 2026-06-19 16:01:56
[2026-06-19 16:01:57,030.030 INFO    ] 2026-06-19 16:01:57
[2026-06-19 16:01:57,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:01:57,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:01:57,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:01:57,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:01:57,571.571 INFO    ] time= 19/06/2026 16:01:57
[2026-06-19 16:01:57,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:01:57,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:01:57,747.747 INFO    ] No existing commands found in stream
[2026-06-19 16:02:02,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:02:02,782.782 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 16:02:04,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:02:04,294.294 INFO    ] Checking for system updates...
[2026-06-19 16:02:04,335.335 INFO    ] 200
[2026-06-19 16:02:04,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:04,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:02:04,399.399 INFO    ] No update needed
[2026-06-19 16:02:04,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 16:02:04,439.439 INFO    ] 200
[2026-06-19 16:02:04,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:04,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:02:04,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:02:04,544.544 INFO    ] No camera update needed
[2026-06-19 16:02:04,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:02:04,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:02:04,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:02:04,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:02:06,602.602 INFO    ] ================================================
[2026-06-19 16:02:06,617.617 INFO    ] Launching Daemon at Fri Jun 19 16:02:06 IST 2026
[2026-06-19 16:02:06,628.628 INFO    ] ================================================
[2026-06-19 16:02:07,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:02:07
[2026-06-19 16:02:07,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:02:08,030.030 INFO    ] Initializing speech engine...
[2026-06-19 16:02:08,042.042 INFO    ] 2026-06-19 16:02:08
[2026-06-19 16:02:08,310.310 INFO    ] 2026-06-19 16:02:08
[2026-06-19 16:02:08,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:02:08,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:02:08,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:02:08,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:02:08,768.768 INFO    ] time= 19/06/2026 16:02:08
[2026-06-19 16:02:08,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:02:08,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:02:09,038.038 INFO    ] No existing commands found in stream
[2026-06-19 16:02:14,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:02:14,057.057 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 16:02:17,647.647 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:02:17,650.650 INFO    ] Checking for system updates...
[2026-06-19 16:02:17,690.690 INFO    ] 200
[2026-06-19 16:02:17,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:17,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:02:17,748.748 INFO    ] No update needed
[2026-06-19 16:02:17,750.750 INFO    ] Checking for camera pi updates...
[2026-06-19 16:02:17,783.783 INFO    ] 200
[2026-06-19 16:02:17,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:17,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:02:17,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:02:17,881.881 INFO    ] No camera update needed
[2026-06-19 16:02:17,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:02:17,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:02:17,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:02:17,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:02:19,938.938 INFO    ] ================================================
[2026-06-19 16:02:19,953.953 INFO    ] Launching Daemon at Fri Jun 19 16:02:19 IST 2026
[2026-06-19 16:02:19,964.964 INFO    ] ================================================
[2026-06-19 16:02:20,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:02:20
[2026-06-19 16:02:21,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:02:21,457.457 INFO    ] Initializing speech engine...
[2026-06-19 16:02:21,465.465 INFO    ] 2026-06-19 16:02:21
[2026-06-19 16:02:21,754.754 INFO    ] 2026-06-19 16:02:21
[2026-06-19 16:02:21,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:02:22,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:02:22,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:02:22,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:02:22,299.299 INFO    ] time= 19/06/2026 16:02:22
[2026-06-19 16:02:22,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:02:22,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:02:22,473.473 INFO    ] No existing commands found in stream
[2026-06-19 16:02:27,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:02:27,508.508 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 16:02:31,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:02:31,866.866 INFO    ] Checking for system updates...
[2026-06-19 16:02:31,907.907 INFO    ] 200
[2026-06-19 16:02:31,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:31,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:02:31,982.982 INFO    ] No update needed
[2026-06-19 16:02:31,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 16:02:32,025.025 INFO    ] 200
[2026-06-19 16:02:32,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:32,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:02:32,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:02:32,110.110 INFO    ] No camera update needed
[2026-06-19 16:02:32,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:02:32,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:02:32,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:02:32,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:02:34,169.169 INFO    ] ================================================
[2026-06-19 16:02:34,186.186 INFO    ] Launching Daemon at Fri Jun 19 16:02:34 IST 2026
[2026-06-19 16:02:34,197.197 INFO    ] ================================================
[2026-06-19 16:02:34,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:02:34
[2026-06-19 16:02:35,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:02:35,619.619 INFO    ] Initializing speech engine...
[2026-06-19 16:02:35,627.627 INFO    ] 2026-06-19 16:02:35
[2026-06-19 16:02:35,928.928 INFO    ] 2026-06-19 16:02:35
[2026-06-19 16:02:35,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:02:36,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:02:36,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:02:36,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:02:36,316.316 INFO    ] time= 19/06/2026 16:02:36
[2026-06-19 16:02:36,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:02:36,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:02:36,443.443 INFO    ] No existing commands found in stream
[2026-06-19 16:02:41,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:02:41,459.459 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 16:02:45,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:02:45,110.110 INFO    ] Checking for system updates...
[2026-06-19 16:02:45,146.146 INFO    ] 200
[2026-06-19 16:02:45,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:45,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:02:45,212.212 INFO    ] No update needed
[2026-06-19 16:02:45,214.214 INFO    ] Checking for camera pi updates...
[2026-06-19 16:02:45,248.248 INFO    ] 200
[2026-06-19 16:02:45,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:45,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:02:45,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:02:45,344.344 INFO    ] No camera update needed
[2026-06-19 16:02:45,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:02:45,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:02:45,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:02:45,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:02:47,400.400 INFO    ] ================================================
[2026-06-19 16:02:47,416.416 INFO    ] Launching Daemon at Fri Jun 19 16:02:47 IST 2026
[2026-06-19 16:02:47,432.432 INFO    ] ================================================
[2026-06-19 16:02:47,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:02:47
[2026-06-19 16:02:48,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:02:48,831.831 INFO    ] Initializing speech engine...
[2026-06-19 16:02:48,839.839 INFO    ] 2026-06-19 16:02:48
[2026-06-19 16:02:49,109.109 INFO    ] 2026-06-19 16:02:49
[2026-06-19 16:02:49,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:02:49,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:02:49,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:02:49,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:02:49,671.671 INFO    ] time= 19/06/2026 16:02:49
[2026-06-19 16:02:49,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:02:49,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:02:49,825.825 INFO    ] No existing commands found in stream
[2026-06-19 16:02:54,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:02:54,847.847 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 16:02:56,476.476 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:02:56,478.478 INFO    ] Checking for system updates...
[2026-06-19 16:02:56,519.519 INFO    ] 200
[2026-06-19 16:02:56,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:56,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:02:56,576.576 INFO    ] No update needed
[2026-06-19 16:02:56,579.579 INFO    ] Checking for camera pi updates...
[2026-06-19 16:02:56,617.617 INFO    ] 200
[2026-06-19 16:02:56,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:02:56,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:02:56,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:02:56,713.713 INFO    ] No camera update needed
[2026-06-19 16:02:56,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:02:56,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:02:56,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:02:56,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:02:58,768.768 INFO    ] ================================================
[2026-06-19 16:02:58,784.784 INFO    ] Launching Daemon at Fri Jun 19 16:02:58 IST 2026
[2026-06-19 16:02:58,794.794 INFO    ] ================================================
[2026-06-19 16:02:59,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:02:59
[2026-06-19 16:02:59,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:03:00,261.261 INFO    ] Initializing speech engine...
[2026-06-19 16:03:00,270.270 INFO    ] 2026-06-19 16:03:00
[2026-06-19 16:03:00,529.529 INFO    ] 2026-06-19 16:03:00
[2026-06-19 16:03:00,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:03:00,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:03:00,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:03:01,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:03:01,073.073 INFO    ] time= 19/06/2026 16:03:01
[2026-06-19 16:03:01,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:03:01,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:03:01,238.238 INFO    ] No existing commands found in stream
[2026-06-19 16:03:06,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:03:06,268.268 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 16:03:08,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:03:08,645.645 INFO    ] Checking for system updates...
[2026-06-19 16:03:08,682.682 INFO    ] 200
[2026-06-19 16:03:08,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:08,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:03:08,741.741 INFO    ] No update needed
[2026-06-19 16:03:08,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 16:03:08,777.777 INFO    ] 200
[2026-06-19 16:03:08,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:08,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:03:08,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:03:08,978.978 INFO    ] No camera update needed
[2026-06-19 16:03:08,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:03:08,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:03:08,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:03:08,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:03:11,035.035 INFO    ] ================================================
[2026-06-19 16:03:11,051.051 INFO    ] Launching Daemon at Fri Jun 19 16:03:11 IST 2026
[2026-06-19 16:03:11,063.063 INFO    ] ================================================
[2026-06-19 16:03:11,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:03:11
[2026-06-19 16:03:12,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:03:12,720.720 INFO    ] Initializing speech engine...
[2026-06-19 16:03:12,728.728 INFO    ] 2026-06-19 16:03:12
[2026-06-19 16:03:12,985.985 INFO    ] 2026-06-19 16:03:12
[2026-06-19 16:03:13,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:03:13,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:03:13,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:03:13,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:03:13,462.462 INFO    ] time= 19/06/2026 16:03:13
[2026-06-19 16:03:13,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:03:13,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:03:13,708.708 INFO    ] No existing commands found in stream
[2026-06-19 16:03:18,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:03:18,740.740 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 16:03:21,662.662 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:03:21,665.665 INFO    ] Checking for system updates...
[2026-06-19 16:03:21,705.705 INFO    ] 200
[2026-06-19 16:03:21,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:21,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:03:21,769.769 INFO    ] No update needed
[2026-06-19 16:03:21,772.772 INFO    ] Checking for camera pi updates...
[2026-06-19 16:03:21,809.809 INFO    ] 200
[2026-06-19 16:03:21,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:21,853.853 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:03:21,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:03:21,906.906 INFO    ] No camera update needed
[2026-06-19 16:03:21,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:03:21,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:03:21,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:03:21,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:03:23,963.963 INFO    ] ================================================
[2026-06-19 16:03:23,984.984 INFO    ] Launching Daemon at Fri Jun 19 16:03:23 IST 2026
[2026-06-19 16:03:24,995.995 INFO    ] ================================================
[2026-06-19 16:03:24,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:03:24
[2026-06-19 16:03:25,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:03:25,462.462 INFO    ] Initializing speech engine...
[2026-06-19 16:03:25,471.471 INFO    ] 2026-06-19 16:03:25
[2026-06-19 16:03:25,727.727 INFO    ] 2026-06-19 16:03:25
[2026-06-19 16:03:25,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:03:26,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:03:26,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:03:26,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:03:26,208.208 INFO    ] time= 19/06/2026 16:03:26
[2026-06-19 16:03:26,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:03:26,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:03:26,433.433 INFO    ] No existing commands found in stream
[2026-06-19 16:03:31,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:03:31,448.448 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 16:03:35,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:03:35,402.402 INFO    ] Checking for system updates...
[2026-06-19 16:03:35,442.442 INFO    ] 200
[2026-06-19 16:03:35,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:35,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:03:35,508.508 INFO    ] No update needed
[2026-06-19 16:03:35,510.510 INFO    ] Checking for camera pi updates...
[2026-06-19 16:03:35,549.549 INFO    ] 200
[2026-06-19 16:03:35,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:35,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:03:35,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:03:35,655.655 INFO    ] No camera update needed
[2026-06-19 16:03:35,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:03:35,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:03:35,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:03:35,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:03:37,712.712 INFO    ] ================================================
[2026-06-19 16:03:37,728.728 INFO    ] Launching Daemon at Fri Jun 19 16:03:37 IST 2026
[2026-06-19 16:03:37,739.739 INFO    ] ================================================
[2026-06-19 16:03:38,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:03:38
[2026-06-19 16:03:39,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:03:39,355.355 INFO    ] Initializing speech engine...
[2026-06-19 16:03:39,369.369 INFO    ] 2026-06-19 16:03:39
[2026-06-19 16:03:39,656.656 INFO    ] 2026-06-19 16:03:39
[2026-06-19 16:03:39,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:03:39,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:03:39,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:03:40,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:03:40,212.212 INFO    ] time= 19/06/2026 16:03:40
[2026-06-19 16:03:40,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:03:40,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:03:40,416.416 INFO    ] No existing commands found in stream
[2026-06-19 16:03:45,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:03:45,445.445 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 16:03:46,697.697 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:03:46,700.700 INFO    ] Checking for system updates...
[2026-06-19 16:03:46,741.741 INFO    ] 200
[2026-06-19 16:03:46,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:46,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:03:46,801.801 INFO    ] No update needed
[2026-06-19 16:03:46,803.803 INFO    ] Checking for camera pi updates...
[2026-06-19 16:03:46,838.838 INFO    ] 200
[2026-06-19 16:03:46,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:46,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:03:46,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:03:46,921.921 INFO    ] No camera update needed
[2026-06-19 16:03:46,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:03:46,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:03:46,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:03:46,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:03:48,976.976 INFO    ] ================================================
[2026-06-19 16:03:48,991.991 INFO    ] Launching Daemon at Fri Jun 19 16:03:48 IST 2026
[2026-06-19 16:03:49,002.002 INFO    ] ================================================
[2026-06-19 16:03:49,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:03:49
[2026-06-19 16:03:50,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:03:50,418.418 INFO    ] Initializing speech engine...
[2026-06-19 16:03:50,432.432 INFO    ] 2026-06-19 16:03:50
[2026-06-19 16:03:50,716.716 INFO    ] 2026-06-19 16:03:50
[2026-06-19 16:03:50,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:03:50,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:03:50,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:03:51,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:03:51,098.098 INFO    ] time= 19/06/2026 16:03:51
[2026-06-19 16:03:51,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:03:51,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:03:51,228.228 INFO    ] No existing commands found in stream
[2026-06-19 16:03:56,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:03:56,243.243 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 16:03:59,104.104 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:03:59,107.107 INFO    ] Checking for system updates...
[2026-06-19 16:03:59,161.161 INFO    ] 200
[2026-06-19 16:03:59,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:59,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:03:59,234.234 INFO    ] No update needed
[2026-06-19 16:03:59,237.237 INFO    ] Checking for camera pi updates...
[2026-06-19 16:03:59,271.271 INFO    ] 200
[2026-06-19 16:03:59,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:03:59,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:03:59,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:03:59,360.360 INFO    ] No camera update needed
[2026-06-19 16:03:59,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:03:59,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:03:59,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:03:59,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:04:01,414.414 INFO    ] ================================================
[2026-06-19 16:04:01,429.429 INFO    ] Launching Daemon at Fri Jun 19 16:04:01 IST 2026
[2026-06-19 16:04:01,440.440 INFO    ] ================================================
[2026-06-19 16:04:02,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:04:02
[2026-06-19 16:04:02,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:04:03,119.119 INFO    ] Initializing speech engine...
[2026-06-19 16:04:03,133.133 INFO    ] 2026-06-19 16:04:03
[2026-06-19 16:04:03,450.450 INFO    ] 2026-06-19 16:04:03
[2026-06-19 16:04:03,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:04:03,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:04:03,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:04:03,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:04:03,849.849 INFO    ] time= 19/06/2026 16:04:03
[2026-06-19 16:04:03,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:04:03,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:04:04,048.048 INFO    ] No existing commands found in stream
[2026-06-19 16:04:09,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:04:09,061.061 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 16:04:09,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:04:09,997.997 INFO    ] Checking for system updates...
[2026-06-19 16:04:10,039.039 INFO    ] 200
[2026-06-19 16:04:10,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:04:10,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:04:10,098.098 INFO    ] No update needed
[2026-06-19 16:04:10,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 16:04:10,139.139 INFO    ] 200
[2026-06-19 16:04:10,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:04:10,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:04:10,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:04:10,233.233 INFO    ] No camera update needed
[2026-06-19 16:04:10,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:04:10,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:04:10,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:04:10,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:04:12,291.291 INFO    ] ================================================
[2026-06-19 16:04:12,306.306 INFO    ] Launching Daemon at Fri Jun 19 16:04:12 IST 2026
[2026-06-19 16:04:12,317.317 INFO    ] ================================================
[2026-06-19 16:04:12,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:04:12
[2026-06-19 16:04:13,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:04:13,876.876 INFO    ] Initializing speech engine...
[2026-06-19 16:04:13,882.882 INFO    ] 2026-06-19 16:04:13
[2026-06-19 16:04:14,142.142 INFO    ] 2026-06-19 16:04:14
[2026-06-19 16:04:14,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:04:14,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:04:14,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:04:14,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:04:14,624.624 INFO    ] time= 19/06/2026 16:04:14
[2026-06-19 16:04:14,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:04:14,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:04:14,845.845 INFO    ] No existing commands found in stream
[2026-06-19 16:04:19,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:04:19,862.862 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 16:04:22,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:04:22,299.299 INFO    ] Checking for system updates...
[2026-06-19 16:04:22,339.339 INFO    ] 200
[2026-06-19 16:04:22,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:04:22,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:04:22,397.397 INFO    ] No update needed
[2026-06-19 16:04:22,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 16:04:22,436.436 INFO    ] 200
[2026-06-19 16:04:22,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:04:22,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:04:22,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:04:22,569.569 INFO    ] No camera update needed
[2026-06-19 16:04:22,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:04:22,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:04:22,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:04:22,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:04:24,624.624 INFO    ] ================================================
[2026-06-19 16:04:24,639.639 INFO    ] Launching Daemon at Fri Jun 19 16:04:24 IST 2026
[2026-06-19 16:04:24,650.650 INFO    ] ================================================
[2026-06-19 16:04:25,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:04:25
[2026-06-19 16:04:25,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:04:26,286.286 INFO    ] Initializing speech engine...
[2026-06-19 16:04:26,292.292 INFO    ] 2026-06-19 16:04:26
[2026-06-19 16:04:26,581.581 INFO    ] 2026-06-19 16:04:26
[2026-06-19 16:04:26,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:04:26,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:04:26,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:04:27,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:04:27,131.131 INFO    ] time= 19/06/2026 16:04:27
[2026-06-19 16:04:27,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:04:27,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:04:27,276.276 INFO    ] No existing commands found in stream
[2026-06-19 16:04:32,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:04:32,310.310 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 16:04:36,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:04:36,384.384 INFO    ] Checking for system updates...
[2026-06-19 16:04:36,425.425 INFO    ] 200
[2026-06-19 16:04:36,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:04:36,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:04:36,486.486 INFO    ] No update needed
[2026-06-19 16:04:36,489.489 INFO    ] Checking for camera pi updates...
[2026-06-19 16:04:36,524.524 INFO    ] 200
[2026-06-19 16:04:36,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:04:36,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:04:36,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:04:36,624.624 INFO    ] No camera update needed
[2026-06-19 16:04:36,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:04:36,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:04:36,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:04:36,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:04:38,680.680 INFO    ] ================================================
[2026-06-19 16:04:38,696.696 INFO    ] Launching Daemon at Fri Jun 19 16:04:38 IST 2026
[2026-06-19 16:04:38,707.707 INFO    ] ================================================
[2026-06-19 16:04:39,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:04:39
[2026-06-19 16:04:39,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:04:40,161.161 INFO    ] Initializing speech engine...
[2026-06-19 16:04:40,170.170 INFO    ] 2026-06-19 16:04:40
[2026-06-19 16:04:40,416.416 INFO    ] 2026-06-19 16:04:40
[2026-06-19 16:04:40,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:04:40,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:04:40,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:04:40,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:04:40,885.885 INFO    ] time= 19/06/2026 16:04:40
[2026-06-19 16:04:40,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:04:40,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:04:41,102.102 INFO    ] No existing commands found in stream
[2026-06-19 16:04:46,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:04:46,135.135 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 16:04:50,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:04:50,384.384 INFO    ] Checking for system updates...
[2026-06-19 16:04:50,425.425 INFO    ] 200
[2026-06-19 16:04:50,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:04:50,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:04:50,491.491 INFO    ] No update needed
[2026-06-19 16:04:50,494.494 INFO    ] Checking for camera pi updates...
[2026-06-19 16:04:50,529.529 INFO    ] 200
[2026-06-19 16:04:50,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:04:50,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:04:50,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:04:50,622.622 INFO    ] No camera update needed
[2026-06-19 16:04:50,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:04:50,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:04:50,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:04:50,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:04:52,680.680 INFO    ] ================================================
[2026-06-19 16:04:52,696.696 INFO    ] Launching Daemon at Fri Jun 19 16:04:52 IST 2026
[2026-06-19 16:04:52,707.707 INFO    ] ================================================
[2026-06-19 16:04:53,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:04:53
[2026-06-19 16:04:53,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:04:54,124.124 INFO    ] Initializing speech engine...
[2026-06-19 16:04:54,144.144 INFO    ] 2026-06-19 16:04:54
[2026-06-19 16:04:54,400.400 INFO    ] 2026-06-19 16:04:54
[2026-06-19 16:04:54,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:04:54,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:04:54,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:04:54,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:04:54,820.820 INFO    ] time= 19/06/2026 16:04:54
[2026-06-19 16:04:54,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:04:54,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:04:54,933.933 INFO    ] No existing commands found in stream
[2026-06-19 16:04:59,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:04:59,957.957 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 16:05:03,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:05:03,876.876 INFO    ] Checking for system updates...
[2026-06-19 16:05:03,911.911 INFO    ] 200
[2026-06-19 16:05:03,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:03,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:05:03,977.977 INFO    ] No update needed
[2026-06-19 16:05:03,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 16:05:04,018.018 INFO    ] 200
[2026-06-19 16:05:04,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:04,060.060 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:05:04,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:05:04,112.112 INFO    ] No camera update needed
[2026-06-19 16:05:04,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:05:04,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:05:04,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:05:04,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:05:06,169.169 INFO    ] ================================================
[2026-06-19 16:05:06,185.185 INFO    ] Launching Daemon at Fri Jun 19 16:05:06 IST 2026
[2026-06-19 16:05:06,197.197 INFO    ] ================================================
[2026-06-19 16:05:06,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:05:06
[2026-06-19 16:05:07,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:05:07,686.686 INFO    ] Initializing speech engine...
[2026-06-19 16:05:07,701.701 INFO    ] 2026-06-19 16:05:07
[2026-06-19 16:05:07,958.958 INFO    ] 2026-06-19 16:05:07
[2026-06-19 16:05:07,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:05:08,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:05:08,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:05:08,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:05:08,518.518 INFO    ] time= 19/06/2026 16:05:08
[2026-06-19 16:05:08,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:05:08,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:05:08,676.676 INFO    ] No existing commands found in stream
[2026-06-19 16:05:13,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:05:13,701.701 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 16:05:16,286.286 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:05:16,288.288 INFO    ] Checking for system updates...
[2026-06-19 16:05:16,325.325 INFO    ] 200
[2026-06-19 16:05:16,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:16,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:05:16,383.383 INFO    ] No update needed
[2026-06-19 16:05:16,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 16:05:16,420.420 INFO    ] 200
[2026-06-19 16:05:16,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:16,468.468 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:05:16,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:05:16,619.619 INFO    ] No camera update needed
[2026-06-19 16:05:16,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:05:16,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:05:16,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:05:16,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:05:18,677.677 INFO    ] ================================================
[2026-06-19 16:05:18,693.693 INFO    ] Launching Daemon at Fri Jun 19 16:05:18 IST 2026
[2026-06-19 16:05:18,704.704 INFO    ] ================================================
[2026-06-19 16:05:19,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:05:19
[2026-06-19 16:05:19,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:05:20,109.109 INFO    ] Initializing speech engine...
[2026-06-19 16:05:20,124.124 INFO    ] 2026-06-19 16:05:20
[2026-06-19 16:05:20,390.390 INFO    ] 2026-06-19 16:05:20
[2026-06-19 16:05:20,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:05:20,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:05:20,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:05:20,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:05:20,769.769 INFO    ] time= 19/06/2026 16:05:20
[2026-06-19 16:05:20,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:05:20,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:05:20,965.965 INFO    ] No existing commands found in stream
[2026-06-19 16:05:25,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:05:25,983.983 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 16:05:27,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:05:27,097.097 INFO    ] Checking for system updates...
[2026-06-19 16:05:27,134.134 INFO    ] 200
[2026-06-19 16:05:27,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:27,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:05:27,198.198 INFO    ] No update needed
[2026-06-19 16:05:27,201.201 INFO    ] Checking for camera pi updates...
[2026-06-19 16:05:27,234.234 INFO    ] 200
[2026-06-19 16:05:27,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:27,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:05:27,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:05:27,327.327 INFO    ] No camera update needed
[2026-06-19 16:05:27,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:05:27,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:05:27,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:05:27,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:05:29,383.383 INFO    ] ================================================
[2026-06-19 16:05:29,399.399 INFO    ] Launching Daemon at Fri Jun 19 16:05:29 IST 2026
[2026-06-19 16:05:29,410.410 INFO    ] ================================================
[2026-06-19 16:05:30,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:05:30
[2026-06-19 16:05:30,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:05:31,031.031 INFO    ] Initializing speech engine...
[2026-06-19 16:05:31,039.039 INFO    ] 2026-06-19 16:05:31
[2026-06-19 16:05:31,327.327 INFO    ] 2026-06-19 16:05:31
[2026-06-19 16:05:31,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:05:31,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:05:31,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:05:31,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:05:31,847.847 INFO    ] time= 19/06/2026 16:05:31
[2026-06-19 16:05:31,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:05:31,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:05:32,095.095 INFO    ] No existing commands found in stream
[2026-06-19 16:05:37,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:05:37,130.130 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 16:05:38,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:05:39,002.002 INFO    ] Checking for system updates...
[2026-06-19 16:05:39,041.041 INFO    ] 200
[2026-06-19 16:05:39,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:39,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:05:39,100.100 INFO    ] No update needed
[2026-06-19 16:05:39,103.103 INFO    ] Checking for camera pi updates...
[2026-06-19 16:05:39,141.141 INFO    ] 200
[2026-06-19 16:05:39,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:39,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:05:39,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:05:39,240.240 INFO    ] No camera update needed
[2026-06-19 16:05:39,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:05:39,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:05:39,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:05:39,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:05:41,294.294 INFO    ] ================================================
[2026-06-19 16:05:41,309.309 INFO    ] Launching Daemon at Fri Jun 19 16:05:41 IST 2026
[2026-06-19 16:05:41,320.320 INFO    ] ================================================
[2026-06-19 16:05:41,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:05:41
[2026-06-19 16:05:42,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:05:42,790.790 INFO    ] Initializing speech engine...
[2026-06-19 16:05:42,797.797 INFO    ] 2026-06-19 16:05:42
[2026-06-19 16:05:43,059.059 INFO    ] 2026-06-19 16:05:43
[2026-06-19 16:05:43,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:05:43,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:05:43,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:05:43,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:05:43,528.528 INFO    ] time= 19/06/2026 16:05:43
[2026-06-19 16:05:43,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:05:43,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:05:43,736.736 INFO    ] No existing commands found in stream
[2026-06-19 16:05:48,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:05:48,767.767 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 16:05:50,806.806 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:05:50,809.809 INFO    ] Checking for system updates...
[2026-06-19 16:05:50,845.845 INFO    ] 200
[2026-06-19 16:05:50,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:50,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:05:50,903.903 INFO    ] No update needed
[2026-06-19 16:05:50,905.905 INFO    ] Checking for camera pi updates...
[2026-06-19 16:05:50,940.940 INFO    ] 200
[2026-06-19 16:05:50,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:05:50,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:05:51,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:05:51,041.041 INFO    ] No camera update needed
[2026-06-19 16:05:51,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:05:51,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:05:51,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:05:51,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:05:53,098.098 INFO    ] ================================================
[2026-06-19 16:05:53,114.114 INFO    ] Launching Daemon at Fri Jun 19 16:05:53 IST 2026
[2026-06-19 16:05:53,125.125 INFO    ] ================================================
[2026-06-19 16:05:53,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:05:53
[2026-06-19 16:05:54,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:05:54,775.775 INFO    ] Initializing speech engine...
[2026-06-19 16:05:54,788.788 INFO    ] 2026-06-19 16:05:54
[2026-06-19 16:05:55,085.085 INFO    ] 2026-06-19 16:05:55
[2026-06-19 16:05:55,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:05:55,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:05:55,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:05:55,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:05:55,566.566 INFO    ] time= 19/06/2026 16:05:55
[2026-06-19 16:05:55,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:05:55,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:05:55,770.770 INFO    ] No existing commands found in stream
[2026-06-19 16:06:00,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:06:00,785.785 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 16:06:01,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:06:01,543.543 INFO    ] Checking for system updates...
[2026-06-19 16:06:01,584.584 INFO    ] 200
[2026-06-19 16:06:01,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:01,640.640 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:06:01,642.642 INFO    ] No update needed
[2026-06-19 16:06:01,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 16:06:01,679.679 INFO    ] 200
[2026-06-19 16:06:01,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:01,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:06:01,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:06:01,757.757 INFO    ] No camera update needed
[2026-06-19 16:06:01,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:06:01,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:06:01,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:06:01,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:06:03,813.813 INFO    ] ================================================
[2026-06-19 16:06:03,829.829 INFO    ] Launching Daemon at Fri Jun 19 16:06:03 IST 2026
[2026-06-19 16:06:03,841.841 INFO    ] ================================================
[2026-06-19 16:06:04,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:06:04
[2026-06-19 16:06:04,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:06:05,263.263 INFO    ] Initializing speech engine...
[2026-06-19 16:06:05,276.276 INFO    ] 2026-06-19 16:06:05
[2026-06-19 16:06:05,524.524 INFO    ] 2026-06-19 16:06:05
[2026-06-19 16:06:05,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:06:05,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:06:05,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:06:05,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:06:06,022.022 INFO    ] time= 19/06/2026 16:06:05
[2026-06-19 16:06:06,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:06:06,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:06:06,229.229 INFO    ] No existing commands found in stream
[2026-06-19 16:06:11,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:06:11,249.249 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 16:06:11,840.840 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:06:11,843.843 INFO    ] Checking for system updates...
[2026-06-19 16:06:11,883.883 INFO    ] 200
[2026-06-19 16:06:11,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:11,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:06:11,942.942 INFO    ] No update needed
[2026-06-19 16:06:11,944.944 INFO    ] Checking for camera pi updates...
[2026-06-19 16:06:11,978.978 INFO    ] 200
[2026-06-19 16:06:11,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:12,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:06:12,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:06:12,070.070 INFO    ] No camera update needed
[2026-06-19 16:06:12,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:06:12,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:06:12,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:06:12,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:06:14,127.127 INFO    ] ================================================
[2026-06-19 16:06:14,144.144 INFO    ] Launching Daemon at Fri Jun 19 16:06:14 IST 2026
[2026-06-19 16:06:14,155.155 INFO    ] ================================================
[2026-06-19 16:06:14,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:06:14
[2026-06-19 16:06:15,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:06:15,588.588 INFO    ] Initializing speech engine...
[2026-06-19 16:06:15,597.597 INFO    ] 2026-06-19 16:06:15
[2026-06-19 16:06:15,855.855 INFO    ] 2026-06-19 16:06:15
[2026-06-19 16:06:15,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:06:16,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:06:16,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:06:16,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:06:16,328.328 INFO    ] time= 19/06/2026 16:06:16
[2026-06-19 16:06:16,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:06:16,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:06:16,557.557 INFO    ] No existing commands found in stream
[2026-06-19 16:06:21,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:06:21,576.576 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 16:06:23,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:06:23,239.239 INFO    ] Checking for system updates...
[2026-06-19 16:06:23,280.280 INFO    ] 200
[2026-06-19 16:06:23,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:23,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:06:23,344.344 INFO    ] No update needed
[2026-06-19 16:06:23,347.347 INFO    ] Checking for camera pi updates...
[2026-06-19 16:06:23,384.384 INFO    ] 200
[2026-06-19 16:06:23,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:23,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:06:23,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:06:23,484.484 INFO    ] No camera update needed
[2026-06-19 16:06:23,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:06:23,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:06:23,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:06:23,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:06:25,542.542 INFO    ] ================================================
[2026-06-19 16:06:25,558.558 INFO    ] Launching Daemon at Fri Jun 19 16:06:25 IST 2026
[2026-06-19 16:06:25,570.570 INFO    ] ================================================
[2026-06-19 16:06:26,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:06:26
[2026-06-19 16:06:26,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:06:27,223.223 INFO    ] Initializing speech engine...
[2026-06-19 16:06:27,236.236 INFO    ] 2026-06-19 16:06:27
[2026-06-19 16:06:27,519.519 INFO    ] 2026-06-19 16:06:27
[2026-06-19 16:06:27,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:06:27,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:06:27,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:06:28,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:06:28,065.065 INFO    ] time= 19/06/2026 16:06:28
[2026-06-19 16:06:28,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:06:28,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:06:28,224.224 INFO    ] No existing commands found in stream
[2026-06-19 16:06:33,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:06:33,261.261 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 16:06:36,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:06:36,050.050 INFO    ] Checking for system updates...
[2026-06-19 16:06:36,088.088 INFO    ] 200
[2026-06-19 16:06:36,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:36,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:06:36,156.156 INFO    ] No update needed
[2026-06-19 16:06:36,159.159 INFO    ] Checking for camera pi updates...
[2026-06-19 16:06:36,198.198 INFO    ] 200
[2026-06-19 16:06:36,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:36,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:06:36,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:06:36,297.297 INFO    ] No camera update needed
[2026-06-19 16:06:36,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:06:36,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:06:36,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:06:36,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:06:38,356.356 INFO    ] ================================================
[2026-06-19 16:06:38,372.372 INFO    ] Launching Daemon at Fri Jun 19 16:06:38 IST 2026
[2026-06-19 16:06:38,383.383 INFO    ] ================================================
[2026-06-19 16:06:38,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:06:38
[2026-06-19 16:06:39,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:06:39,806.806 INFO    ] Initializing speech engine...
[2026-06-19 16:06:39,827.827 INFO    ] 2026-06-19 16:06:39
[2026-06-19 16:06:40,116.116 INFO    ] 2026-06-19 16:06:40
[2026-06-19 16:06:40,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:06:40,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:06:40,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:06:40,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:06:40,518.518 INFO    ] time= 19/06/2026 16:06:40
[2026-06-19 16:06:40,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:06:40,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:06:40,635.635 INFO    ] No existing commands found in stream
[2026-06-19 16:06:45,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:06:45,650.650 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 16:06:49,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:06:49,873.873 INFO    ] Checking for system updates...
[2026-06-19 16:06:49,925.925 INFO    ] 200
[2026-06-19 16:06:49,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:49,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:06:49,995.995 INFO    ] No update needed
[2026-06-19 16:06:49,997.997 INFO    ] Checking for camera pi updates...
[2026-06-19 16:06:50,032.032 INFO    ] 200
[2026-06-19 16:06:50,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:06:50,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:06:50,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:06:50,108.108 INFO    ] No camera update needed
[2026-06-19 16:06:50,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:06:50,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:06:50,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:06:50,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:06:52,164.164 INFO    ] ================================================
[2026-06-19 16:06:52,179.179 INFO    ] Launching Daemon at Fri Jun 19 16:06:52 IST 2026
[2026-06-19 16:06:52,191.191 INFO    ] ================================================
[2026-06-19 16:06:52,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:06:52
[2026-06-19 16:06:53,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:06:53,852.852 INFO    ] Initializing speech engine...
[2026-06-19 16:06:53,866.866 INFO    ] 2026-06-19 16:06:53
[2026-06-19 16:06:54,158.158 INFO    ] 2026-06-19 16:06:54
[2026-06-19 16:06:54,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:06:54,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:06:54,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:06:54,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:06:54,706.706 INFO    ] time= 19/06/2026 16:06:54
[2026-06-19 16:06:54,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:06:54,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:06:54,871.871 INFO    ] No existing commands found in stream
[2026-06-19 16:06:59,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:06:59,911.911 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 16:07:02,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:07:02,160.160 INFO    ] Checking for system updates...
[2026-06-19 16:07:02,244.244 INFO    ] 200
[2026-06-19 16:07:02,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:02,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:07:02,358.358 INFO    ] No update needed
[2026-06-19 16:07:02,361.361 INFO    ] Checking for camera pi updates...
[2026-06-19 16:07:02,400.400 INFO    ] 200
[2026-06-19 16:07:02,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:02,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:07:02,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:07:02,490.490 INFO    ] No camera update needed
[2026-06-19 16:07:02,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:07:02,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:07:02,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:07:02,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:07:04,553.553 INFO    ] ================================================
[2026-06-19 16:07:04,570.570 INFO    ] Launching Daemon at Fri Jun 19 16:07:04 IST 2026
[2026-06-19 16:07:04,581.581 INFO    ] ================================================
[2026-06-19 16:07:05,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:07:05
[2026-06-19 16:07:05,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:07:05,982.982 INFO    ] Initializing speech engine...
[2026-06-19 16:07:06,006.006 INFO    ] 2026-06-19 16:07:05
[2026-06-19 16:07:06,261.261 INFO    ] 2026-06-19 16:07:06
[2026-06-19 16:07:06,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:07:06,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:07:06,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:07:06,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:07:06,637.637 INFO    ] time= 19/06/2026 16:07:06
[2026-06-19 16:07:06,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:07:06,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:07:06,811.811 INFO    ] No existing commands found in stream
[2026-06-19 16:07:11,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:07:11,845.845 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 16:07:15,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:07:15,676.676 INFO    ] Checking for system updates...
[2026-06-19 16:07:15,712.712 INFO    ] 200
[2026-06-19 16:07:15,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:15,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:07:15,770.770 INFO    ] No update needed
[2026-06-19 16:07:15,772.772 INFO    ] Checking for camera pi updates...
[2026-06-19 16:07:15,806.806 INFO    ] 200
[2026-06-19 16:07:15,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:15,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:07:15,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:07:15,883.883 INFO    ] No camera update needed
[2026-06-19 16:07:15,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:07:15,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:07:15,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:07:15,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:07:17,938.938 INFO    ] ================================================
[2026-06-19 16:07:17,953.953 INFO    ] Launching Daemon at Fri Jun 19 16:07:17 IST 2026
[2026-06-19 16:07:17,963.963 INFO    ] ================================================
[2026-06-19 16:07:18,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:07:18
[2026-06-19 16:07:19,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:07:19,413.413 INFO    ] Initializing speech engine...
[2026-06-19 16:07:19,437.437 INFO    ] 2026-06-19 16:07:19
[2026-06-19 16:07:19,713.713 INFO    ] 2026-06-19 16:07:19
[2026-06-19 16:07:19,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:07:19,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:07:19,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:07:20,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:07:20,101.101 INFO    ] time= 19/06/2026 16:07:20
[2026-06-19 16:07:20,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:07:20,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:07:20,186.186 INFO    ] No existing commands found in stream
[2026-06-19 16:07:25,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:07:25,204.204 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 16:07:29,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:07:29,522.522 INFO    ] Checking for system updates...
[2026-06-19 16:07:29,564.564 INFO    ] 200
[2026-06-19 16:07:29,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:29,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:07:29,624.624 INFO    ] No update needed
[2026-06-19 16:07:29,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 16:07:29,662.662 INFO    ] 200
[2026-06-19 16:07:29,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:29,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:07:29,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:07:29,855.855 INFO    ] No camera update needed
[2026-06-19 16:07:29,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:07:29,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:07:29,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:07:29,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:07:31,911.911 INFO    ] ================================================
[2026-06-19 16:07:31,926.926 INFO    ] Launching Daemon at Fri Jun 19 16:07:31 IST 2026
[2026-06-19 16:07:31,937.937 INFO    ] ================================================
[2026-06-19 16:07:32,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:07:32
[2026-06-19 16:07:33,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:07:33,444.444 INFO    ] Initializing speech engine...
[2026-06-19 16:07:33,450.450 INFO    ] 2026-06-19 16:07:33
[2026-06-19 16:07:33,748.748 INFO    ] 2026-06-19 16:07:33
[2026-06-19 16:07:33,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:07:33,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:07:33,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:07:34,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:07:34,160.160 INFO    ] time= 19/06/2026 16:07:34
[2026-06-19 16:07:34,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:07:34,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:07:34,251.251 INFO    ] No existing commands found in stream
[2026-06-19 16:07:39,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:07:39,279.279 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 16:07:42,972.972 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:07:42,975.975 INFO    ] Checking for system updates...
[2026-06-19 16:07:43,016.016 INFO    ] 200
[2026-06-19 16:07:43,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:43,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:07:43,089.089 INFO    ] No update needed
[2026-06-19 16:07:43,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 16:07:43,133.133 INFO    ] 200
[2026-06-19 16:07:43,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:43,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:07:43,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:07:43,229.229 INFO    ] No camera update needed
[2026-06-19 16:07:43,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:07:43,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:07:43,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:07:43,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:07:45,287.287 INFO    ] ================================================
[2026-06-19 16:07:45,303.303 INFO    ] Launching Daemon at Fri Jun 19 16:07:45 IST 2026
[2026-06-19 16:07:45,314.314 INFO    ] ================================================
[2026-06-19 16:07:45,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:07:45
[2026-06-19 16:07:46,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:07:46,827.827 INFO    ] Initializing speech engine...
[2026-06-19 16:07:46,850.850 INFO    ] 2026-06-19 16:07:46
[2026-06-19 16:07:47,113.113 INFO    ] 2026-06-19 16:07:47
[2026-06-19 16:07:47,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:07:47,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:07:47,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:07:47,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:07:47,583.583 INFO    ] time= 19/06/2026 16:07:47
[2026-06-19 16:07:47,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:07:47,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:07:47,793.793 INFO    ] No existing commands found in stream
[2026-06-19 16:07:52,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:07:52,834.834 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 16:07:55,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:07:55,407.407 INFO    ] Checking for system updates...
[2026-06-19 16:07:55,444.444 INFO    ] 200
[2026-06-19 16:07:55,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:55,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:07:55,502.502 INFO    ] No update needed
[2026-06-19 16:07:55,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 16:07:55,538.538 INFO    ] 200
[2026-06-19 16:07:55,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:07:55,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:07:55,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:07:55,642.642 INFO    ] No camera update needed
[2026-06-19 16:07:55,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:07:55,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:07:55,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:07:55,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:07:57,696.696 INFO    ] ================================================
[2026-06-19 16:07:57,711.711 INFO    ] Launching Daemon at Fri Jun 19 16:07:57 IST 2026
[2026-06-19 16:07:57,722.722 INFO    ] ================================================
[2026-06-19 16:07:58,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:07:58
[2026-06-19 16:07:58,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:07:59,186.186 INFO    ] Initializing speech engine...
[2026-06-19 16:07:59,193.193 INFO    ] 2026-06-19 16:07:59
[2026-06-19 16:07:59,511.511 INFO    ] 2026-06-19 16:07:59
[2026-06-19 16:07:59,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:07:59,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:07:59,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:08:00,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:08:00,022.022 INFO    ] time= 19/06/2026 16:08:00
[2026-06-19 16:08:00,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:08:00,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:08:00,203.203 INFO    ] No existing commands found in stream
[2026-06-19 16:08:05,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:08:05,242.242 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 16:08:07,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:08:07,237.237 INFO    ] Checking for system updates...
[2026-06-19 16:08:07,273.273 INFO    ] 200
[2026-06-19 16:08:07,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:07,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:08:07,332.332 INFO    ] No update needed
[2026-06-19 16:08:07,334.334 INFO    ] Checking for camera pi updates...
[2026-06-19 16:08:07,369.369 INFO    ] 200
[2026-06-19 16:08:07,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:07,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:08:07,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:08:07,466.466 INFO    ] No camera update needed
[2026-06-19 16:08:07,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:08:07,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:08:07,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:08:07,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:08:09,522.522 INFO    ] ================================================
[2026-06-19 16:08:09,537.537 INFO    ] Launching Daemon at Fri Jun 19 16:08:09 IST 2026
[2026-06-19 16:08:09,548.548 INFO    ] ================================================
[2026-06-19 16:08:10,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:08:10
[2026-06-19 16:08:10,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:08:11,064.064 INFO    ] Initializing speech engine...
[2026-06-19 16:08:11,087.087 INFO    ] 2026-06-19 16:08:11
[2026-06-19 16:08:11,341.341 INFO    ] 2026-06-19 16:08:11
[2026-06-19 16:08:11,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:08:11,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:08:11,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:08:11,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:08:11,730.730 INFO    ] time= 19/06/2026 16:08:11
[2026-06-19 16:08:11,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:08:11,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:08:11,918.918 INFO    ] No existing commands found in stream
[2026-06-19 16:08:16,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:08:16,946.946 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 16:08:17,751.751 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:08:17,753.753 INFO    ] Checking for system updates...
[2026-06-19 16:08:17,790.790 INFO    ] 200
[2026-06-19 16:08:17,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:17,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:08:17,850.850 INFO    ] No update needed
[2026-06-19 16:08:17,853.853 INFO    ] Checking for camera pi updates...
[2026-06-19 16:08:17,888.888 INFO    ] 200
[2026-06-19 16:08:17,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:17,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:08:17,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:08:17,990.990 INFO    ] No camera update needed
[2026-06-19 16:08:17,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:08:17,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:08:18,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:08:18,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:08:20,051.051 INFO    ] ================================================
[2026-06-19 16:08:20,066.066 INFO    ] Launching Daemon at Fri Jun 19 16:08:20 IST 2026
[2026-06-19 16:08:20,077.077 INFO    ] ================================================
[2026-06-19 16:08:20,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:08:20
[2026-06-19 16:08:21,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:08:21,506.506 INFO    ] Initializing speech engine...
[2026-06-19 16:08:21,516.516 INFO    ] 2026-06-19 16:08:21
[2026-06-19 16:08:21,765.765 INFO    ] 2026-06-19 16:08:21
[2026-06-19 16:08:21,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:08:21,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:08:22,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:08:22,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:08:22,211.211 INFO    ] time= 19/06/2026 16:08:22
[2026-06-19 16:08:22,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:08:22,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:08:22,472.472 INFO    ] No existing commands found in stream
[2026-06-19 16:08:27,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:08:27,500.500 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 16:08:31,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:08:31,896.896 INFO    ] Checking for system updates...
[2026-06-19 16:08:31,938.938 INFO    ] 200
[2026-06-19 16:08:31,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:32,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:08:32,007.007 INFO    ] No update needed
[2026-06-19 16:08:32,010.010 INFO    ] Checking for camera pi updates...
[2026-06-19 16:08:32,058.058 INFO    ] 200
[2026-06-19 16:08:32,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:32,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:08:32,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:08:32,149.149 INFO    ] No camera update needed
[2026-06-19 16:08:32,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:08:32,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:08:32,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:08:32,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:08:34,216.216 INFO    ] ================================================
[2026-06-19 16:08:34,231.231 INFO    ] Launching Daemon at Fri Jun 19 16:08:34 IST 2026
[2026-06-19 16:08:34,243.243 INFO    ] ================================================
[2026-06-19 16:08:34,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:08:34
[2026-06-19 16:08:35,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:08:35,668.668 INFO    ] Initializing speech engine...
[2026-06-19 16:08:35,677.677 INFO    ] 2026-06-19 16:08:35
[2026-06-19 16:08:35,939.939 INFO    ] 2026-06-19 16:08:35
[2026-06-19 16:08:35,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:08:36,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:08:36,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:08:36,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:08:36,411.411 INFO    ] time= 19/06/2026 16:08:36
[2026-06-19 16:08:36,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:08:36,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:08:36,626.626 INFO    ] No existing commands found in stream
[2026-06-19 16:08:41,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:08:41,650.650 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 16:08:44,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:08:44,970.970 INFO    ] Checking for system updates...
[2026-06-19 16:08:45,010.010 INFO    ] 200
[2026-06-19 16:08:45,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:45,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:08:45,067.067 INFO    ] No update needed
[2026-06-19 16:08:45,069.069 INFO    ] Checking for camera pi updates...
[2026-06-19 16:08:45,108.108 INFO    ] 200
[2026-06-19 16:08:45,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:45,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:08:45,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:08:45,200.200 INFO    ] No camera update needed
[2026-06-19 16:08:45,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:08:45,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:08:45,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:08:45,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:08:47,255.255 INFO    ] ================================================
[2026-06-19 16:08:47,270.270 INFO    ] Launching Daemon at Fri Jun 19 16:08:47 IST 2026
[2026-06-19 16:08:47,281.281 INFO    ] ================================================
[2026-06-19 16:08:47,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:08:47
[2026-06-19 16:08:48,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:08:48,750.750 INFO    ] Initializing speech engine...
[2026-06-19 16:08:48,760.760 INFO    ] 2026-06-19 16:08:48
[2026-06-19 16:08:49,026.026 INFO    ] 2026-06-19 16:08:49
[2026-06-19 16:08:49,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:08:49,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:08:49,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:08:49,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:08:49,557.557 INFO    ] time= 19/06/2026 16:08:49
[2026-06-19 16:08:49,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:08:49,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:08:49,824.824 INFO    ] No existing commands found in stream
[2026-06-19 16:08:54,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:08:54,842.842 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 16:08:56,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:08:56,077.077 INFO    ] Checking for system updates...
[2026-06-19 16:08:56,112.112 INFO    ] 200
[2026-06-19 16:08:56,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:56,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:08:56,170.170 INFO    ] No update needed
[2026-06-19 16:08:56,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 16:08:56,206.206 INFO    ] 200
[2026-06-19 16:08:56,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:08:56,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:08:56,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:08:56,296.296 INFO    ] No camera update needed
[2026-06-19 16:08:56,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:08:56,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:08:56,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:08:56,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:08:58,352.352 INFO    ] ================================================
[2026-06-19 16:08:58,367.367 INFO    ] Launching Daemon at Fri Jun 19 16:08:58 IST 2026
[2026-06-19 16:08:58,378.378 INFO    ] ================================================
[2026-06-19 16:08:58,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:08:58
[2026-06-19 16:08:59,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:08:59,784.784 INFO    ] Initializing speech engine...
[2026-06-19 16:08:59,790.790 INFO    ] 2026-06-19 16:08:59
[2026-06-19 16:09:00,080.080 INFO    ] 2026-06-19 16:09:00
[2026-06-19 16:09:00,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:09:00,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:09:00,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:09:00,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:09:00,494.494 INFO    ] time= 19/06/2026 16:09:00
[2026-06-19 16:09:00,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:09:00,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:09:00,686.686 INFO    ] No existing commands found in stream
[2026-06-19 16:09:05,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:09:05,714.714 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 16:09:09,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:09:09,171.171 INFO    ] Checking for system updates...
[2026-06-19 16:09:09,207.207 INFO    ] 200
[2026-06-19 16:09:09,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:09,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:09:09,271.271 INFO    ] No update needed
[2026-06-19 16:09:09,273.273 INFO    ] Checking for camera pi updates...
[2026-06-19 16:09:09,310.310 INFO    ] 200
[2026-06-19 16:09:09,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:09,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:09:09,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:09:09,403.403 INFO    ] No camera update needed
[2026-06-19 16:09:09,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:09:09,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:09:09,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:09:09,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:09:11,461.461 INFO    ] ================================================
[2026-06-19 16:09:11,477.477 INFO    ] Launching Daemon at Fri Jun 19 16:09:11 IST 2026
[2026-06-19 16:09:11,488.488 INFO    ] ================================================
[2026-06-19 16:09:12,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:09:12
[2026-06-19 16:09:12,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:09:12,931.931 INFO    ] Initializing speech engine...
[2026-06-19 16:09:12,940.940 INFO    ] 2026-06-19 16:09:12
[2026-06-19 16:09:13,232.232 INFO    ] 2026-06-19 16:09:13
[2026-06-19 16:09:13,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:09:13,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:09:13,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:09:13,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:09:13,650.650 INFO    ] time= 19/06/2026 16:09:13
[2026-06-19 16:09:13,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:09:13,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:09:13,834.834 INFO    ] No existing commands found in stream
[2026-06-19 16:09:18,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:09:18,872.872 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 16:09:20,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:09:20,805.805 INFO    ] Checking for system updates...
[2026-06-19 16:09:20,840.840 INFO    ] 200
[2026-06-19 16:09:20,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:20,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:09:20,899.899 INFO    ] No update needed
[2026-06-19 16:09:20,902.902 INFO    ] Checking for camera pi updates...
[2026-06-19 16:09:20,939.939 INFO    ] 200
[2026-06-19 16:09:20,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:20,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:09:21,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:09:21,037.037 INFO    ] No camera update needed
[2026-06-19 16:09:21,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:09:21,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:09:21,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:09:21,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:09:23,094.094 INFO    ] ================================================
[2026-06-19 16:09:23,110.110 INFO    ] Launching Daemon at Fri Jun 19 16:09:23 IST 2026
[2026-06-19 16:09:23,121.121 INFO    ] ================================================
[2026-06-19 16:09:23,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:09:23
[2026-06-19 16:09:24,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:09:24,532.532 INFO    ] Initializing speech engine...
[2026-06-19 16:09:24,539.539 INFO    ] 2026-06-19 16:09:24
[2026-06-19 16:09:24,830.830 INFO    ] 2026-06-19 16:09:24
[2026-06-19 16:09:24,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:09:25,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:09:25,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:09:25,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:09:25,241.241 INFO    ] time= 19/06/2026 16:09:25
[2026-06-19 16:09:25,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:09:25,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:09:25,392.392 INFO    ] No existing commands found in stream
[2026-06-19 16:09:30,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:09:30,425.425 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 16:09:31,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:09:31,888.888 INFO    ] Checking for system updates...
[2026-06-19 16:09:31,927.927 INFO    ] 200
[2026-06-19 16:09:31,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:31,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:09:32,001.001 INFO    ] No update needed
[2026-06-19 16:09:32,004.004 INFO    ] Checking for camera pi updates...
[2026-06-19 16:09:32,044.044 INFO    ] 200
[2026-06-19 16:09:32,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:32,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:09:32,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:09:32,132.132 INFO    ] No camera update needed
[2026-06-19 16:09:32,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:09:32,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:09:32,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:09:32,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:09:34,190.190 INFO    ] ================================================
[2026-06-19 16:09:34,206.206 INFO    ] Launching Daemon at Fri Jun 19 16:09:34 IST 2026
[2026-06-19 16:09:34,217.217 INFO    ] ================================================
[2026-06-19 16:09:34,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:09:34
[2026-06-19 16:09:35,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:09:35,799.799 INFO    ] Initializing speech engine...
[2026-06-19 16:09:35,810.810 INFO    ] 2026-06-19 16:09:35
[2026-06-19 16:09:36,082.082 INFO    ] 2026-06-19 16:09:36
[2026-06-19 16:09:36,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:09:36,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:09:36,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:09:36,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:09:36,634.634 INFO    ] time= 19/06/2026 16:09:36
[2026-06-19 16:09:36,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:09:36,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:09:36,775.775 INFO    ] No existing commands found in stream
[2026-06-19 16:09:41,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:09:41,802.802 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 16:09:46,185.185 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:09:46,188.188 INFO    ] Checking for system updates...
[2026-06-19 16:09:46,226.226 INFO    ] 200
[2026-06-19 16:09:46,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:46,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:09:46,289.289 INFO    ] No update needed
[2026-06-19 16:09:46,292.292 INFO    ] Checking for camera pi updates...
[2026-06-19 16:09:46,325.325 INFO    ] 200
[2026-06-19 16:09:46,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:46,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:09:46,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:09:46,412.412 INFO    ] No camera update needed
[2026-06-19 16:09:46,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:09:46,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:09:46,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:09:46,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:09:48,469.469 INFO    ] ================================================
[2026-06-19 16:09:48,485.485 INFO    ] Launching Daemon at Fri Jun 19 16:09:48 IST 2026
[2026-06-19 16:09:48,496.496 INFO    ] ================================================
[2026-06-19 16:09:49,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:09:49
[2026-06-19 16:09:49,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:09:49,984.984 INFO    ] Initializing speech engine...
[2026-06-19 16:09:49,997.997 INFO    ] 2026-06-19 16:09:49
[2026-06-19 16:09:50,276.276 INFO    ] 2026-06-19 16:09:50
[2026-06-19 16:09:50,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:09:50,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:09:50,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:09:50,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:09:50,786.786 INFO    ] time= 19/06/2026 16:09:50
[2026-06-19 16:09:50,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:09:50,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:09:51,064.064 INFO    ] No existing commands found in stream
[2026-06-19 16:09:56,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:09:56,081.081 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 16:09:57,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:09:57,544.544 INFO    ] Checking for system updates...
[2026-06-19 16:09:57,580.580 INFO    ] 200
[2026-06-19 16:09:57,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:57,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:09:57,642.642 INFO    ] No update needed
[2026-06-19 16:09:57,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 16:09:57,679.679 INFO    ] 200
[2026-06-19 16:09:57,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:09:57,722.722 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:09:57,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:09:57,778.778 INFO    ] No camera update needed
[2026-06-19 16:09:57,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:09:57,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:09:57,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:09:57,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:09:59,832.832 INFO    ] ================================================
[2026-06-19 16:09:59,848.848 INFO    ] Launching Daemon at Fri Jun 19 16:09:59 IST 2026
[2026-06-19 16:09:59,859.859 INFO    ] ================================================
[2026-06-19 16:10:00,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:10:00
[2026-06-19 16:10:01,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:10:01,283.283 INFO    ] Initializing speech engine...
[2026-06-19 16:10:01,299.299 INFO    ] 2026-06-19 16:10:01
[2026-06-19 16:10:01,568.568 INFO    ] 2026-06-19 16:10:01
[2026-06-19 16:10:01,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:10:01,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:10:01,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:10:01,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:10:01,973.973 INFO    ] time= 19/06/2026 16:10:01
[2026-06-19 16:10:01,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:10:02,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:10:02,126.126 INFO    ] No existing commands found in stream
[2026-06-19 16:10:07,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:10:07,144.144 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 16:10:09,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:10:09,222.222 INFO    ] Checking for system updates...
[2026-06-19 16:10:09,258.258 INFO    ] 200
[2026-06-19 16:10:09,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:09,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:10:09,316.316 INFO    ] No update needed
[2026-06-19 16:10:09,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 16:10:09,356.356 INFO    ] 200
[2026-06-19 16:10:09,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:09,403.403 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:10:09,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:10:09,455.455 INFO    ] No camera update needed
[2026-06-19 16:10:09,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:10:09,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:10:09,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:10:09,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:10:11,510.510 INFO    ] ================================================
[2026-06-19 16:10:11,526.526 INFO    ] Launching Daemon at Fri Jun 19 16:10:11 IST 2026
[2026-06-19 16:10:11,536.536 INFO    ] ================================================
[2026-06-19 16:10:12,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:10:12
[2026-06-19 16:10:12,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:10:12,997.997 INFO    ] Initializing speech engine...
[2026-06-19 16:10:13,012.012 INFO    ] 2026-06-19 16:10:12
[2026-06-19 16:10:13,298.298 INFO    ] 2026-06-19 16:10:13
[2026-06-19 16:10:13,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:10:13,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:10:13,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:10:13,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:10:13,722.722 INFO    ] time= 19/06/2026 16:10:13
[2026-06-19 16:10:13,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:10:13,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:10:13,809.809 INFO    ] No existing commands found in stream
[2026-06-19 16:10:18,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:10:18,832.832 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 16:10:20,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:10:20,441.441 INFO    ] Checking for system updates...
[2026-06-19 16:10:20,478.478 INFO    ] 200
[2026-06-19 16:10:20,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:20,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:10:20,537.537 INFO    ] No update needed
[2026-06-19 16:10:20,539.539 INFO    ] Checking for camera pi updates...
[2026-06-19 16:10:20,573.573 INFO    ] 200
[2026-06-19 16:10:20,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:20,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:10:20,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:10:20,681.681 INFO    ] No camera update needed
[2026-06-19 16:10:20,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:10:20,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:10:20,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:10:20,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:10:22,736.736 INFO    ] ================================================
[2026-06-19 16:10:22,751.751 INFO    ] Launching Daemon at Fri Jun 19 16:10:22 IST 2026
[2026-06-19 16:10:22,762.762 INFO    ] ================================================
[2026-06-19 16:10:23,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:10:23
[2026-06-19 16:10:24,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:10:24,399.399 INFO    ] Initializing speech engine...
[2026-06-19 16:10:24,406.406 INFO    ] 2026-06-19 16:10:24
[2026-06-19 16:10:24,693.693 INFO    ] 2026-06-19 16:10:24
[2026-06-19 16:10:24,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:10:24,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:10:24,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:10:25,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:10:25,221.221 INFO    ] time= 19/06/2026 16:10:25
[2026-06-19 16:10:25,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:10:25,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:10:25,373.373 INFO    ] No existing commands found in stream
[2026-06-19 16:10:30,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:10:30,393.393 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 16:10:32,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:10:32,728.728 INFO    ] Checking for system updates...
[2026-06-19 16:10:32,770.770 INFO    ] 200
[2026-06-19 16:10:32,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:32,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:10:32,833.833 INFO    ] No update needed
[2026-06-19 16:10:32,836.836 INFO    ] Checking for camera pi updates...
[2026-06-19 16:10:32,875.875 INFO    ] 200
[2026-06-19 16:10:32,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:32,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:10:32,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:10:32,968.968 INFO    ] No camera update needed
[2026-06-19 16:10:32,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:10:32,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:10:32,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:10:32,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:10:35,026.026 INFO    ] ================================================
[2026-06-19 16:10:35,042.042 INFO    ] Launching Daemon at Fri Jun 19 16:10:35 IST 2026
[2026-06-19 16:10:35,052.052 INFO    ] ================================================
[2026-06-19 16:10:35,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:10:35
[2026-06-19 16:10:36,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:10:36,467.467 INFO    ] Initializing speech engine...
[2026-06-19 16:10:36,489.489 INFO    ] 2026-06-19 16:10:36
[2026-06-19 16:10:36,741.741 INFO    ] 2026-06-19 16:10:36
[2026-06-19 16:10:36,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:10:36,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:10:37,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:10:37,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:10:37,211.211 INFO    ] time= 19/06/2026 16:10:37
[2026-06-19 16:10:37,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:10:37,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:10:37,426.426 INFO    ] No existing commands found in stream
[2026-06-19 16:10:42,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:10:42,459.459 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 16:10:43,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:10:43,306.306 INFO    ] Checking for system updates...
[2026-06-19 16:10:43,343.343 INFO    ] 200
[2026-06-19 16:10:43,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:43,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:10:43,412.412 INFO    ] No update needed
[2026-06-19 16:10:43,414.414 INFO    ] Checking for camera pi updates...
[2026-06-19 16:10:43,448.448 INFO    ] 200
[2026-06-19 16:10:43,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:43,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:10:43,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:10:43,556.556 INFO    ] No camera update needed
[2026-06-19 16:10:43,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:10:43,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:10:43,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:10:43,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:10:45,615.615 INFO    ] ================================================
[2026-06-19 16:10:45,630.630 INFO    ] Launching Daemon at Fri Jun 19 16:10:45 IST 2026
[2026-06-19 16:10:45,641.641 INFO    ] ================================================
[2026-06-19 16:10:46,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:10:46
[2026-06-19 16:10:46,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:10:47,271.271 INFO    ] Initializing speech engine...
[2026-06-19 16:10:47,285.285 INFO    ] 2026-06-19 16:10:47
[2026-06-19 16:10:47,559.559 INFO    ] 2026-06-19 16:10:47
[2026-06-19 16:10:47,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:10:47,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:10:47,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:10:48,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:10:48,097.097 INFO    ] time= 19/06/2026 16:10:48
[2026-06-19 16:10:48,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:10:48,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:10:48,265.265 INFO    ] No existing commands found in stream
[2026-06-19 16:10:53,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:10:53,295.295 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 16:10:56,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:10:56,039.039 INFO    ] Checking for system updates...
[2026-06-19 16:10:56,092.092 INFO    ] 200
[2026-06-19 16:10:56,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:56,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:10:56,160.160 INFO    ] No update needed
[2026-06-19 16:10:56,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 16:10:56,198.198 INFO    ] 200
[2026-06-19 16:10:56,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:10:56,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:10:56,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:10:56,292.292 INFO    ] No camera update needed
[2026-06-19 16:10:56,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:10:56,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:10:56,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:10:56,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:10:58,350.350 INFO    ] ================================================
[2026-06-19 16:10:58,366.366 INFO    ] Launching Daemon at Fri Jun 19 16:10:58 IST 2026
[2026-06-19 16:10:58,377.377 INFO    ] ================================================
[2026-06-19 16:10:59,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:10:59
[2026-06-19 16:10:59,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:11:00,014.014 INFO    ] Initializing speech engine...
[2026-06-19 16:11:00,027.027 INFO    ] 2026-06-19 16:11:00
[2026-06-19 16:11:00,307.307 INFO    ] 2026-06-19 16:11:00
[2026-06-19 16:11:00,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:11:00,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:11:00,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:11:00,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:11:00,844.844 INFO    ] time= 19/06/2026 16:11:00
[2026-06-19 16:11:00,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:11:00,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:11:01,003.003 INFO    ] No existing commands found in stream
[2026-06-19 16:11:06,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:11:06,039.039 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 16:11:09,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:11:09,095.095 INFO    ] Checking for system updates...
[2026-06-19 16:11:09,133.133 INFO    ] 200
[2026-06-19 16:11:09,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:11:09,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:11:09,192.192 INFO    ] No update needed
[2026-06-19 16:11:09,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 16:11:09,230.230 INFO    ] 200
[2026-06-19 16:11:09,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:11:09,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:11:09,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:11:09,339.339 INFO    ] No camera update needed
[2026-06-19 16:11:09,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:11:09,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:11:09,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:11:09,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:11:11,398.398 INFO    ] ================================================
[2026-06-19 16:11:11,414.414 INFO    ] Launching Daemon at Fri Jun 19 16:11:11 IST 2026
[2026-06-19 16:11:11,425.425 INFO    ] ================================================
[2026-06-19 16:11:12,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:11:12
[2026-06-19 16:11:12,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:11:13,079.079 INFO    ] Initializing speech engine...
[2026-06-19 16:11:13,092.092 INFO    ] 2026-06-19 16:11:13
[2026-06-19 16:11:13,408.408 INFO    ] 2026-06-19 16:11:13
[2026-06-19 16:11:13,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:11:13,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:11:13,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:11:13,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:11:13,919.919 INFO    ] time= 19/06/2026 16:11:13
[2026-06-19 16:11:13,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:11:13,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:11:14,095.095 INFO    ] No existing commands found in stream
[2026-06-19 16:11:19,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:11:19,129.129 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 16:11:23,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:11:23,038.038 INFO    ] Checking for system updates...
[2026-06-19 16:11:23,084.084 INFO    ] 200
[2026-06-19 16:11:23,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:11:23,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:11:23,150.150 INFO    ] No update needed
[2026-06-19 16:11:23,152.152 INFO    ] Checking for camera pi updates...
[2026-06-19 16:11:23,190.190 INFO    ] 200
[2026-06-19 16:11:23,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:11:23,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:11:23,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:11:23,292.292 INFO    ] No camera update needed
[2026-06-19 16:11:23,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:11:23,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:11:23,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:11:23,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:11:25,348.348 INFO    ] ================================================
[2026-06-19 16:11:25,364.364 INFO    ] Launching Daemon at Fri Jun 19 16:11:25 IST 2026
[2026-06-19 16:11:25,375.375 INFO    ] ================================================
[2026-06-19 16:11:25,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:11:25
[2026-06-19 16:11:26,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:11:26,803.803 INFO    ] Initializing speech engine...
[2026-06-19 16:11:26,810.810 INFO    ] 2026-06-19 16:11:26
[2026-06-19 16:11:27,109.109 INFO    ] 2026-06-19 16:11:27
[2026-06-19 16:11:27,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:11:27,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:11:27,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:11:27,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:11:27,609.609 INFO    ] time= 19/06/2026 16:11:27
[2026-06-19 16:11:27,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:11:27,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:11:27,818.818 INFO    ] No existing commands found in stream
[2026-06-19 16:11:32,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:11:32,833.833 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 16:11:37,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:11:37,146.146 INFO    ] Checking for system updates...
[2026-06-19 16:11:37,183.183 INFO    ] 200
[2026-06-19 16:11:37,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:11:37,239.239 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:11:37,241.241 INFO    ] No update needed
[2026-06-19 16:11:37,244.244 INFO    ] Checking for camera pi updates...
[2026-06-19 16:11:37,277.277 INFO    ] 200
[2026-06-19 16:11:37,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:11:37,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:11:37,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:11:37,478.478 INFO    ] No camera update needed
[2026-06-19 16:11:37,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:11:37,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:11:37,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:11:37,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:11:39,533.533 INFO    ] ================================================
[2026-06-19 16:11:39,549.549 INFO    ] Launching Daemon at Fri Jun 19 16:11:39 IST 2026
[2026-06-19 16:11:39,560.560 INFO    ] ================================================
[2026-06-19 16:11:40,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:11:40
[2026-06-19 16:11:40,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:11:40,974.974 INFO    ] Initializing speech engine...
[2026-06-19 16:11:40,982.982 INFO    ] 2026-06-19 16:11:40
[2026-06-19 16:11:41,280.280 INFO    ] 2026-06-19 16:11:41
[2026-06-19 16:11:41,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:11:41,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:11:41,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:11:41,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:11:41,707.707 INFO    ] time= 19/06/2026 16:11:41
[2026-06-19 16:11:41,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:11:41,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:11:41,795.795 INFO    ] No existing commands found in stream
[2026-06-19 16:11:46,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:11:46,813.813 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 16:11:47,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:11:47,226.226 INFO    ] Checking for system updates...
[2026-06-19 16:11:47,262.262 INFO    ] 200
[2026-06-19 16:11:47,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:11:47,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:11:47,320.320 INFO    ] No update needed
[2026-06-19 16:11:47,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 16:11:47,356.356 INFO    ] 200
[2026-06-19 16:11:47,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:11:47,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:11:47,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:11:47,443.443 INFO    ] No camera update needed
[2026-06-19 16:11:47,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:11:47,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:11:47,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:11:47,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:11:49,498.498 INFO    ] ================================================
[2026-06-19 16:11:49,513.513 INFO    ] Launching Daemon at Fri Jun 19 16:11:49 IST 2026
[2026-06-19 16:11:49,525.525 INFO    ] ================================================
[2026-06-19 16:11:50,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:11:50
[2026-06-19 16:11:50,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:11:50,930.930 INFO    ] Initializing speech engine...
[2026-06-19 16:11:50,937.937 INFO    ] 2026-06-19 16:11:50
[2026-06-19 16:11:51,212.212 INFO    ] 2026-06-19 16:11:51
[2026-06-19 16:11:51,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:11:51,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:11:51,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:11:51,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:11:51,703.703 INFO    ] time= 19/06/2026 16:11:51
[2026-06-19 16:11:51,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:11:51,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:11:51,908.908 INFO    ] No existing commands found in stream
[2026-06-19 16:11:56,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:11:56,939.939 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 16:12:00,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:12:00,330.330 INFO    ] Checking for system updates...
[2026-06-19 16:12:00,367.367 INFO    ] 200
[2026-06-19 16:12:00,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:00,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:12:00,432.432 INFO    ] No update needed
[2026-06-19 16:12:00,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 16:12:00,472.472 INFO    ] 200
[2026-06-19 16:12:00,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:00,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:12:00,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:12:00,571.571 INFO    ] No camera update needed
[2026-06-19 16:12:00,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:12:00,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:12:00,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:12:00,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:12:02,632.632 INFO    ] ================================================
[2026-06-19 16:12:02,652.652 INFO    ] Launching Daemon at Fri Jun 19 16:12:02 IST 2026
[2026-06-19 16:12:02,672.672 INFO    ] ================================================
[2026-06-19 16:12:03,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:12:03
[2026-06-19 16:12:03,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:12:04,159.159 INFO    ] Initializing speech engine...
[2026-06-19 16:12:04,173.173 INFO    ] 2026-06-19 16:12:04
[2026-06-19 16:12:04,439.439 INFO    ] 2026-06-19 16:12:04
[2026-06-19 16:12:04,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:12:04,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:12:04,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:12:04,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:12:04,900.900 INFO    ] time= 19/06/2026 16:12:04
[2026-06-19 16:12:04,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:12:05,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:12:05,096.096 INFO    ] No existing commands found in stream
[2026-06-19 16:12:10,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:12:10,132.132 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 16:12:11,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:12:11,328.328 INFO    ] Checking for system updates...
[2026-06-19 16:12:11,364.364 INFO    ] 200
[2026-06-19 16:12:11,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:11,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:12:11,423.423 INFO    ] No update needed
[2026-06-19 16:12:11,426.426 INFO    ] Checking for camera pi updates...
[2026-06-19 16:12:11,473.473 INFO    ] 200
[2026-06-19 16:12:11,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:11,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:12:11,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:12:11,567.567 INFO    ] No camera update needed
[2026-06-19 16:12:11,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:12:11,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:12:11,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:12:11,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:12:13,623.623 INFO    ] ================================================
[2026-06-19 16:12:13,638.638 INFO    ] Launching Daemon at Fri Jun 19 16:12:13 IST 2026
[2026-06-19 16:12:13,649.649 INFO    ] ================================================
[2026-06-19 16:12:14,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:12:14
[2026-06-19 16:12:14,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:12:15,116.116 INFO    ] Initializing speech engine...
[2026-06-19 16:12:15,123.123 INFO    ] 2026-06-19 16:12:15
[2026-06-19 16:12:15,384.384 INFO    ] 2026-06-19 16:12:15
[2026-06-19 16:12:15,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:12:15,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:12:15,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:12:15,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:12:15,932.932 INFO    ] time= 19/06/2026 16:12:15
[2026-06-19 16:12:15,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:12:15,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:12:16,061.061 INFO    ] No existing commands found in stream
[2026-06-19 16:12:21,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:12:21,094.094 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 16:12:23,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:12:23,151.151 INFO    ] Checking for system updates...
[2026-06-19 16:12:23,192.192 INFO    ] 200
[2026-06-19 16:12:23,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:23,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:12:23,259.259 INFO    ] No update needed
[2026-06-19 16:12:23,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 16:12:23,299.299 INFO    ] 200
[2026-06-19 16:12:23,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:23,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:12:23,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:12:23,397.397 INFO    ] No camera update needed
[2026-06-19 16:12:23,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:12:23,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:12:23,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:12:23,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:12:25,455.455 INFO    ] ================================================
[2026-06-19 16:12:25,476.476 INFO    ] Launching Daemon at Fri Jun 19 16:12:25 IST 2026
[2026-06-19 16:12:25,487.487 INFO    ] ================================================
[2026-06-19 16:12:26,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:12:26
[2026-06-19 16:12:26,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:12:26,939.939 INFO    ] Initializing speech engine...
[2026-06-19 16:12:26,944.944 INFO    ] 2026-06-19 16:12:26
[2026-06-19 16:12:27,235.235 INFO    ] 2026-06-19 16:12:27
[2026-06-19 16:12:27,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:12:27,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:12:27,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:12:27,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:12:27,742.742 INFO    ] time= 19/06/2026 16:12:27
[2026-06-19 16:12:27,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:12:27,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:12:27,875.875 INFO    ] No existing commands found in stream
[2026-06-19 16:12:32,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:12:32,904.904 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 16:12:34,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:12:34,214.214 INFO    ] Checking for system updates...
[2026-06-19 16:12:34,253.253 INFO    ] 200
[2026-06-19 16:12:34,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:34,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:12:34,311.311 INFO    ] No update needed
[2026-06-19 16:12:34,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 16:12:34,351.351 INFO    ] 200
[2026-06-19 16:12:34,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:34,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:12:34,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:12:34,454.454 INFO    ] No camera update needed
[2026-06-19 16:12:34,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:12:34,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:12:34,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:12:34,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:12:36,516.516 INFO    ] ================================================
[2026-06-19 16:12:36,532.532 INFO    ] Launching Daemon at Fri Jun 19 16:12:36 IST 2026
[2026-06-19 16:12:36,542.542 INFO    ] ================================================
[2026-06-19 16:12:37,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:12:37
[2026-06-19 16:12:37,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:12:38,150.150 INFO    ] Initializing speech engine...
[2026-06-19 16:12:38,160.160 INFO    ] 2026-06-19 16:12:38
[2026-06-19 16:12:38,444.444 INFO    ] 2026-06-19 16:12:38
[2026-06-19 16:12:38,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:12:38,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:12:38,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:12:38,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:12:38,970.970 INFO    ] time= 19/06/2026 16:12:38
[2026-06-19 16:12:38,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:12:38,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:12:39,128.128 INFO    ] No existing commands found in stream
[2026-06-19 16:12:44,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:12:44,154.154 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 16:12:47,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:12:47,589.589 INFO    ] Checking for system updates...
[2026-06-19 16:12:47,627.627 INFO    ] 200
[2026-06-19 16:12:47,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:47,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:12:47,693.693 INFO    ] No update needed
[2026-06-19 16:12:47,696.696 INFO    ] Checking for camera pi updates...
[2026-06-19 16:12:47,732.732 INFO    ] 200
[2026-06-19 16:12:47,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:12:47,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:12:47,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:12:47,813.813 INFO    ] No camera update needed
[2026-06-19 16:12:47,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:12:47,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:12:47,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:12:47,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:12:49,871.871 INFO    ] ================================================
[2026-06-19 16:12:49,886.886 INFO    ] Launching Daemon at Fri Jun 19 16:12:49 IST 2026
[2026-06-19 16:12:49,896.896 INFO    ] ================================================
[2026-06-19 16:12:50,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:12:50
[2026-06-19 16:12:51,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:12:51,515.515 INFO    ] Initializing speech engine...
[2026-06-19 16:12:51,523.523 INFO    ] 2026-06-19 16:12:51
[2026-06-19 16:12:51,840.840 INFO    ] 2026-06-19 16:12:51
[2026-06-19 16:12:51,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:12:52,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:12:52,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:12:52,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:12:52,365.365 INFO    ] time= 19/06/2026 16:12:52
[2026-06-19 16:12:52,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:12:52,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:12:52,519.519 INFO    ] No existing commands found in stream
[2026-06-19 16:12:57,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:12:57,558.558 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 16:13:01,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:13:01,371.371 INFO    ] Checking for system updates...
[2026-06-19 16:13:01,432.432 INFO    ] 200
[2026-06-19 16:13:01,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:01,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:13:01,513.513 INFO    ] No update needed
[2026-06-19 16:13:01,516.516 INFO    ] Checking for camera pi updates...
[2026-06-19 16:13:01,587.587 INFO    ] 200
[2026-06-19 16:13:01,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:01,677.677 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:13:01,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:13:01,727.727 INFO    ] No camera update needed
[2026-06-19 16:13:01,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:13:01,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:13:01,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:13:01,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:13:03,789.789 INFO    ] ================================================
[2026-06-19 16:13:03,804.804 INFO    ] Launching Daemon at Fri Jun 19 16:13:03 IST 2026
[2026-06-19 16:13:03,815.815 INFO    ] ================================================
[2026-06-19 16:13:04,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:13:04
[2026-06-19 16:13:04,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:13:05,246.246 INFO    ] Initializing speech engine...
[2026-06-19 16:13:05,255.255 INFO    ] 2026-06-19 16:13:05
[2026-06-19 16:13:05,505.505 INFO    ] 2026-06-19 16:13:05
[2026-06-19 16:13:05,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:13:05,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:13:05,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:13:05,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:13:06,003.003 INFO    ] time= 19/06/2026 16:13:05
[2026-06-19 16:13:06,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:13:06,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:13:06,230.230 INFO    ] No existing commands found in stream
[2026-06-19 16:13:11,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:13:11,260.260 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 16:13:13,078.078 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:13:13,081.081 INFO    ] Checking for system updates...
[2026-06-19 16:13:13,117.117 INFO    ] 200
[2026-06-19 16:13:13,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:13,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:13:13,173.173 INFO    ] No update needed
[2026-06-19 16:13:13,176.176 INFO    ] Checking for camera pi updates...
[2026-06-19 16:13:13,210.210 INFO    ] 200
[2026-06-19 16:13:13,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:13,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:13:13,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:13:13,304.304 INFO    ] No camera update needed
[2026-06-19 16:13:13,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:13:13,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:13:13,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:13:13,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:13:15,363.363 INFO    ] ================================================
[2026-06-19 16:13:15,378.378 INFO    ] Launching Daemon at Fri Jun 19 16:13:15 IST 2026
[2026-06-19 16:13:15,389.389 INFO    ] ================================================
[2026-06-19 16:13:15,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:13:15
[2026-06-19 16:13:16,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:13:16,792.792 INFO    ] Initializing speech engine...
[2026-06-19 16:13:16,806.806 INFO    ] 2026-06-19 16:13:16
[2026-06-19 16:13:17,069.069 INFO    ] 2026-06-19 16:13:17
[2026-06-19 16:13:17,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:13:17,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:13:17,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:13:17,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:13:17,540.540 INFO    ] time= 19/06/2026 16:13:17
[2026-06-19 16:13:17,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:13:17,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:13:17,716.716 INFO    ] No existing commands found in stream
[2026-06-19 16:13:22,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:13:22,756.756 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 16:13:26,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:13:26,228.228 INFO    ] Checking for system updates...
[2026-06-19 16:13:26,264.264 INFO    ] 200
[2026-06-19 16:13:26,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:26,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:13:26,323.323 INFO    ] No update needed
[2026-06-19 16:13:26,325.325 INFO    ] Checking for camera pi updates...
[2026-06-19 16:13:26,360.360 INFO    ] 200
[2026-06-19 16:13:26,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:26,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:13:26,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:13:26,462.462 INFO    ] No camera update needed
[2026-06-19 16:13:26,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:13:26,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:13:26,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:13:26,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:13:28,517.517 INFO    ] ================================================
[2026-06-19 16:13:28,532.532 INFO    ] Launching Daemon at Fri Jun 19 16:13:28 IST 2026
[2026-06-19 16:13:28,543.543 INFO    ] ================================================
[2026-06-19 16:13:29,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:13:29
[2026-06-19 16:13:29,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:13:29,955.955 INFO    ] Initializing speech engine...
[2026-06-19 16:13:29,975.975 INFO    ] 2026-06-19 16:13:29
[2026-06-19 16:13:30,224.224 INFO    ] 2026-06-19 16:13:30
[2026-06-19 16:13:30,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:13:30,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:13:30,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:13:30,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:13:30,746.746 INFO    ] time= 19/06/2026 16:13:30
[2026-06-19 16:13:30,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:13:30,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:13:30,950.950 INFO    ] No existing commands found in stream
[2026-06-19 16:13:35,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:13:35,965.965 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 16:13:39,698.698 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:13:39,700.700 INFO    ] Checking for system updates...
[2026-06-19 16:13:39,736.736 INFO    ] 200
[2026-06-19 16:13:39,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:39,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:13:39,794.794 INFO    ] No update needed
[2026-06-19 16:13:39,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 16:13:39,831.831 INFO    ] 200
[2026-06-19 16:13:39,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:39,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:13:40,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:13:40,018.018 INFO    ] No camera update needed
[2026-06-19 16:13:40,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:13:40,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:13:40,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:13:40,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:13:42,073.073 INFO    ] ================================================
[2026-06-19 16:13:42,089.089 INFO    ] Launching Daemon at Fri Jun 19 16:13:42 IST 2026
[2026-06-19 16:13:42,100.100 INFO    ] ================================================
[2026-06-19 16:13:42,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:13:42
[2026-06-19 16:13:43,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:13:43,548.548 INFO    ] Initializing speech engine...
[2026-06-19 16:13:43,557.557 INFO    ] 2026-06-19 16:13:43
[2026-06-19 16:13:43,815.815 INFO    ] 2026-06-19 16:13:43
[2026-06-19 16:13:43,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:13:44,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:13:44,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:13:44,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:13:44,308.308 INFO    ] time= 19/06/2026 16:13:44
[2026-06-19 16:13:44,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:13:44,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:13:44,514.514 INFO    ] No existing commands found in stream
[2026-06-19 16:13:49,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:13:49,541.541 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 16:13:52,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:13:52,012.012 INFO    ] Checking for system updates...
[2026-06-19 16:13:52,048.048 INFO    ] 200
[2026-06-19 16:13:52,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:52,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:13:52,107.107 INFO    ] No update needed
[2026-06-19 16:13:52,109.109 INFO    ] Checking for camera pi updates...
[2026-06-19 16:13:52,144.144 INFO    ] 200
[2026-06-19 16:13:52,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:13:52,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:13:52,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:13:52,252.252 INFO    ] No camera update needed
[2026-06-19 16:13:52,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:13:52,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:13:52,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:13:52,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:13:54,308.308 INFO    ] ================================================
[2026-06-19 16:13:54,323.323 INFO    ] Launching Daemon at Fri Jun 19 16:13:54 IST 2026
[2026-06-19 16:13:54,334.334 INFO    ] ================================================
[2026-06-19 16:13:54,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:13:54
[2026-06-19 16:13:55,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:13:55,786.786 INFO    ] Initializing speech engine...
[2026-06-19 16:13:55,793.793 INFO    ] 2026-06-19 16:13:55
[2026-06-19 16:13:56,087.087 INFO    ] 2026-06-19 16:13:56
[2026-06-19 16:13:56,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:13:56,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:13:56,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:13:56,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:13:56,588.588 INFO    ] time= 19/06/2026 16:13:56
[2026-06-19 16:13:56,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:13:56,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:13:56,851.851 INFO    ] No existing commands found in stream
[2026-06-19 16:14:01,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:14:01,881.881 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 16:14:03,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:14:03,793.793 INFO    ] Checking for system updates...
[2026-06-19 16:14:03,829.829 INFO    ] 200
[2026-06-19 16:14:03,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:03,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:14:03,892.892 INFO    ] No update needed
[2026-06-19 16:14:03,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 16:14:03,931.931 INFO    ] 200
[2026-06-19 16:14:03,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:03,975.975 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:14:04,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:14:04,031.031 INFO    ] No camera update needed
[2026-06-19 16:14:04,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:14:04,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:14:04,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:14:04,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:14:06,086.086 INFO    ] ================================================
[2026-06-19 16:14:06,101.101 INFO    ] Launching Daemon at Fri Jun 19 16:14:06 IST 2026
[2026-06-19 16:14:06,112.112 INFO    ] ================================================
[2026-06-19 16:14:06,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:14:06
[2026-06-19 16:14:07,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:14:07,546.546 INFO    ] Initializing speech engine...
[2026-06-19 16:14:07,569.569 INFO    ] 2026-06-19 16:14:07
[2026-06-19 16:14:07,838.838 INFO    ] 2026-06-19 16:14:07
[2026-06-19 16:14:07,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:14:08,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:14:08,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:14:08,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:14:08,424.424 INFO    ] time= 19/06/2026 16:14:08
[2026-06-19 16:14:08,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:14:08,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:14:08,624.624 INFO    ] No existing commands found in stream
[2026-06-19 16:14:13,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:14:13,642.642 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-19 16:14:17,356.356 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:14:17,359.359 INFO    ] Checking for system updates...
[2026-06-19 16:14:17,398.398 INFO    ] 200
[2026-06-19 16:14:17,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:17,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:14:17,456.456 INFO    ] No update needed
[2026-06-19 16:14:17,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 16:14:17,500.500 INFO    ] 200
[2026-06-19 16:14:17,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:17,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:14:17,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:14:17,607.607 INFO    ] No camera update needed
[2026-06-19 16:14:17,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:14:17,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:14:17,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:14:17,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:14:19,662.662 INFO    ] ================================================
[2026-06-19 16:14:19,677.677 INFO    ] Launching Daemon at Fri Jun 19 16:14:19 IST 2026
[2026-06-19 16:14:19,688.688 INFO    ] ================================================
[2026-06-19 16:14:20,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:14:20
[2026-06-19 16:14:20,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:14:21,131.131 INFO    ] Initializing speech engine...
[2026-06-19 16:14:21,153.153 INFO    ] 2026-06-19 16:14:21
[2026-06-19 16:14:21,408.408 INFO    ] 2026-06-19 16:14:21
[2026-06-19 16:14:21,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:14:21,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:14:21,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:14:21,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:14:21,904.904 INFO    ] time= 19/06/2026 16:14:21
[2026-06-19 16:14:21,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:14:21,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:14:22,121.121 INFO    ] No existing commands found in stream
[2026-06-19 16:14:27,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:14:27,139.139 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 16:14:28,259.259 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:14:28,262.262 INFO    ] Checking for system updates...
[2026-06-19 16:14:28,297.297 INFO    ] 200
[2026-06-19 16:14:28,300.300 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:28,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:14:28,358.358 INFO    ] No update needed
[2026-06-19 16:14:28,360.360 INFO    ] Checking for camera pi updates...
[2026-06-19 16:14:28,394.394 INFO    ] 200
[2026-06-19 16:14:28,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:28,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:14:28,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:14:28,490.490 INFO    ] No camera update needed
[2026-06-19 16:14:28,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:14:28,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:14:28,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:14:28,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:14:30,546.546 INFO    ] ================================================
[2026-06-19 16:14:30,561.561 INFO    ] Launching Daemon at Fri Jun 19 16:14:30 IST 2026
[2026-06-19 16:14:30,572.572 INFO    ] ================================================
[2026-06-19 16:14:31,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:14:31
[2026-06-19 16:14:31,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:14:32,047.047 INFO    ] Initializing speech engine...
[2026-06-19 16:14:32,063.063 INFO    ] 2026-06-19 16:14:32
[2026-06-19 16:14:32,355.355 INFO    ] 2026-06-19 16:14:32
[2026-06-19 16:14:32,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:14:32,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:14:32,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:14:32,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:14:32,816.816 INFO    ] time= 19/06/2026 16:14:32
[2026-06-19 16:14:32,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:14:32,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:14:32,987.987 INFO    ] No existing commands found in stream
[2026-06-19 16:14:38,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:14:38,011.011 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 16:14:42,007.007 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:14:42,010.010 INFO    ] Checking for system updates...
[2026-06-19 16:14:42,046.046 INFO    ] 200
[2026-06-19 16:14:42,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:42,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:14:42,103.103 INFO    ] No update needed
[2026-06-19 16:14:42,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 16:14:42,142.142 INFO    ] 200
[2026-06-19 16:14:42,145.145 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:42,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:14:42,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:14:42,237.237 INFO    ] No camera update needed
[2026-06-19 16:14:42,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:14:42,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:14:42,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:14:42,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:14:44,291.291 INFO    ] ================================================
[2026-06-19 16:14:44,306.306 INFO    ] Launching Daemon at Fri Jun 19 16:14:44 IST 2026
[2026-06-19 16:14:44,316.316 INFO    ] ================================================
[2026-06-19 16:14:44,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:14:44
[2026-06-19 16:14:45,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:14:45,831.831 INFO    ] Initializing speech engine...
[2026-06-19 16:14:45,837.837 INFO    ] 2026-06-19 16:14:45
[2026-06-19 16:14:46,083.083 INFO    ] 2026-06-19 16:14:46
[2026-06-19 16:14:46,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:14:46,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:14:46,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:14:46,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:14:46,580.580 INFO    ] time= 19/06/2026 16:14:46
[2026-06-19 16:14:46,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:14:46,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:14:46,811.811 INFO    ] No existing commands found in stream
[2026-06-19 16:14:51,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:14:51,827.827 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 16:14:52,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:14:52,621.621 INFO    ] Checking for system updates...
[2026-06-19 16:14:52,658.658 INFO    ] 200
[2026-06-19 16:14:52,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:52,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:14:52,732.732 INFO    ] No update needed
[2026-06-19 16:14:52,734.734 INFO    ] Checking for camera pi updates...
[2026-06-19 16:14:52,769.769 INFO    ] 200
[2026-06-19 16:14:52,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:14:52,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:14:52,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:14:52,855.855 INFO    ] No camera update needed
[2026-06-19 16:14:52,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:14:52,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:14:52,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:14:52,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:14:54,913.913 INFO    ] ================================================
[2026-06-19 16:14:54,928.928 INFO    ] Launching Daemon at Fri Jun 19 16:14:54 IST 2026
[2026-06-19 16:14:54,938.938 INFO    ] ================================================
[2026-06-19 16:14:55,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:14:55
[2026-06-19 16:14:56,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:14:56,347.347 INFO    ] Initializing speech engine...
[2026-06-19 16:14:56,361.361 INFO    ] 2026-06-19 16:14:56
[2026-06-19 16:14:56,627.627 INFO    ] 2026-06-19 16:14:56
[2026-06-19 16:14:56,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:14:56,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:14:56,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:14:57,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:14:57,113.113 INFO    ] time= 19/06/2026 16:14:57
[2026-06-19 16:14:57,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:14:57,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:14:57,342.342 INFO    ] No existing commands found in stream
[2026-06-19 16:15:02,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:15:02,365.365 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 16:15:05,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:15:05,399.399 INFO    ] Checking for system updates...
[2026-06-19 16:15:05,435.435 INFO    ] 200
[2026-06-19 16:15:05,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:05,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:15:05,497.497 INFO    ] No update needed
[2026-06-19 16:15:05,499.499 INFO    ] Checking for camera pi updates...
[2026-06-19 16:15:05,533.533 INFO    ] 200
[2026-06-19 16:15:05,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:05,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:15:05,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:15:05,638.638 INFO    ] No camera update needed
[2026-06-19 16:15:05,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:15:05,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:15:05,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:15:05,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:15:07,696.696 INFO    ] ================================================
[2026-06-19 16:15:07,711.711 INFO    ] Launching Daemon at Fri Jun 19 16:15:07 IST 2026
[2026-06-19 16:15:07,722.722 INFO    ] ================================================
[2026-06-19 16:15:08,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:15:08
[2026-06-19 16:15:08,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:15:09,130.130 INFO    ] Initializing speech engine...
[2026-06-19 16:15:09,138.138 INFO    ] 2026-06-19 16:15:09
[2026-06-19 16:15:09,424.424 INFO    ] 2026-06-19 16:15:09
[2026-06-19 16:15:09,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:15:09,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:15:09,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:15:09,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:15:09,934.934 INFO    ] time= 19/06/2026 16:15:09
[2026-06-19 16:15:09,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:15:10,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:15:10,100.100 INFO    ] No existing commands found in stream
[2026-06-19 16:15:15,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:15:15,114.114 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 16:15:18,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:15:18,099.099 INFO    ] Checking for system updates...
[2026-06-19 16:15:18,138.138 INFO    ] 200
[2026-06-19 16:15:18,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:18,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:15:18,196.196 INFO    ] No update needed
[2026-06-19 16:15:18,199.199 INFO    ] Checking for camera pi updates...
[2026-06-19 16:15:18,233.233 INFO    ] 200
[2026-06-19 16:15:18,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:18,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:15:18,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:15:18,327.327 INFO    ] No camera update needed
[2026-06-19 16:15:18,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:15:18,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:15:18,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:15:18,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:15:20,381.381 INFO    ] ================================================
[2026-06-19 16:15:20,397.397 INFO    ] Launching Daemon at Fri Jun 19 16:15:20 IST 2026
[2026-06-19 16:15:20,407.407 INFO    ] ================================================
[2026-06-19 16:15:20,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:15:20
[2026-06-19 16:15:21,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:15:21,854.854 INFO    ] Initializing speech engine...
[2026-06-19 16:15:21,863.863 INFO    ] 2026-06-19 16:15:21
[2026-06-19 16:15:22,110.110 INFO    ] 2026-06-19 16:15:22
[2026-06-19 16:15:22,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:15:22,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:15:22,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:15:22,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:15:22,616.616 INFO    ] time= 19/06/2026 16:15:22
[2026-06-19 16:15:22,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:15:22,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:15:22,799.799 INFO    ] No existing commands found in stream
[2026-06-19 16:15:27,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:15:27,829.829 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 16:15:28,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:15:28,398.398 INFO    ] Checking for system updates...
[2026-06-19 16:15:28,434.434 INFO    ] 200
[2026-06-19 16:15:28,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:28,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:15:28,494.494 INFO    ] No update needed
[2026-06-19 16:15:28,497.497 INFO    ] Checking for camera pi updates...
[2026-06-19 16:15:28,531.531 INFO    ] 200
[2026-06-19 16:15:28,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:28,574.574 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:15:28,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:15:28,622.622 INFO    ] No camera update needed
[2026-06-19 16:15:28,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:15:28,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:15:28,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:15:28,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:15:30,681.681 INFO    ] ================================================
[2026-06-19 16:15:30,696.696 INFO    ] Launching Daemon at Fri Jun 19 16:15:30 IST 2026
[2026-06-19 16:15:30,707.707 INFO    ] ================================================
[2026-06-19 16:15:31,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:15:31
[2026-06-19 16:15:31,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:15:32,233.233 INFO    ] Initializing speech engine...
[2026-06-19 16:15:32,243.243 INFO    ] 2026-06-19 16:15:32
[2026-06-19 16:15:32,527.527 INFO    ] 2026-06-19 16:15:32
[2026-06-19 16:15:32,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:15:32,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:15:32,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:15:32,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:15:32,971.971 INFO    ] time= 19/06/2026 16:15:32
[2026-06-19 16:15:33,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:15:33,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:15:33,210.210 INFO    ] No existing commands found in stream
[2026-06-19 16:15:38,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:15:38,226.226 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 16:15:40,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:15:40,516.516 INFO    ] Checking for system updates...
[2026-06-19 16:15:40,554.554 INFO    ] 200
[2026-06-19 16:15:40,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:40,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:15:40,613.613 INFO    ] No update needed
[2026-06-19 16:15:40,616.616 INFO    ] Checking for camera pi updates...
[2026-06-19 16:15:40,655.655 INFO    ] 200
[2026-06-19 16:15:40,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:40,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:15:40,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:15:40,762.762 INFO    ] No camera update needed
[2026-06-19 16:15:40,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:15:40,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:15:40,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:15:40,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:15:42,821.821 INFO    ] ================================================
[2026-06-19 16:15:42,836.836 INFO    ] Launching Daemon at Fri Jun 19 16:15:42 IST 2026
[2026-06-19 16:15:42,847.847 INFO    ] ================================================
[2026-06-19 16:15:43,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:15:43
[2026-06-19 16:15:44,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:15:44,485.485 INFO    ] Initializing speech engine...
[2026-06-19 16:15:44,499.499 INFO    ] 2026-06-19 16:15:44
[2026-06-19 16:15:44,782.782 INFO    ] 2026-06-19 16:15:44
[2026-06-19 16:15:44,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:15:45,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:15:45,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:15:45,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:15:45,320.320 INFO    ] time= 19/06/2026 16:15:45
[2026-06-19 16:15:45,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:15:45,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:15:45,476.476 INFO    ] No existing commands found in stream
[2026-06-19 16:15:50,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:15:50,503.503 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 16:15:51,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:15:51,913.913 INFO    ] Checking for system updates...
[2026-06-19 16:15:51,955.955 INFO    ] 200
[2026-06-19 16:15:51,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:52,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:15:52,022.022 INFO    ] No update needed
[2026-06-19 16:15:52,024.024 INFO    ] Checking for camera pi updates...
[2026-06-19 16:15:52,064.064 INFO    ] 200
[2026-06-19 16:15:52,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:15:52,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:15:52,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:15:52,256.256 INFO    ] No camera update needed
[2026-06-19 16:15:52,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:15:52,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:15:52,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:15:52,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:15:54,314.314 INFO    ] ================================================
[2026-06-19 16:15:54,329.329 INFO    ] Launching Daemon at Fri Jun 19 16:15:54 IST 2026
[2026-06-19 16:15:54,340.340 INFO    ] ================================================
[2026-06-19 16:15:54,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:15:54
[2026-06-19 16:15:55,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:15:55,945.945 INFO    ] Initializing speech engine...
[2026-06-19 16:15:55,958.958 INFO    ] 2026-06-19 16:15:55
[2026-06-19 16:15:56,243.243 INFO    ] 2026-06-19 16:15:56
[2026-06-19 16:15:56,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:15:56,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:15:56,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:15:56,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:15:56,775.775 INFO    ] time= 19/06/2026 16:15:56
[2026-06-19 16:15:56,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:15:56,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:15:56,936.936 INFO    ] No existing commands found in stream
[2026-06-19 16:16:01,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:16:01,971.971 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 16:16:02,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:16:02,825.825 INFO    ] Checking for system updates...
[2026-06-19 16:16:02,878.878 INFO    ] 200
[2026-06-19 16:16:02,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:02,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:16:02,973.973 INFO    ] No update needed
[2026-06-19 16:16:02,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 16:16:03,023.023 INFO    ] 200
[2026-06-19 16:16:03,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:03,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:16:03,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:16:03,132.132 INFO    ] No camera update needed
[2026-06-19 16:16:03,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:16:03,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:16:03,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:16:03,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:16:05,189.189 INFO    ] ================================================
[2026-06-19 16:16:05,204.204 INFO    ] Launching Daemon at Fri Jun 19 16:16:05 IST 2026
[2026-06-19 16:16:05,214.214 INFO    ] ================================================
[2026-06-19 16:16:05,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:16:05
[2026-06-19 16:16:06,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:16:06,700.700 INFO    ] Initializing speech engine...
[2026-06-19 16:16:06,716.716 INFO    ] 2026-06-19 16:16:06
[2026-06-19 16:16:06,990.990 INFO    ] 2026-06-19 16:16:06
[2026-06-19 16:16:07,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:16:07,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:16:07,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:16:07,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:16:07,395.395 INFO    ] time= 19/06/2026 16:16:07
[2026-06-19 16:16:07,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:16:07,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:16:07,559.559 INFO    ] No existing commands found in stream
[2026-06-19 16:16:12,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:16:12,587.587 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 16:16:13,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:16:13,183.183 INFO    ] Checking for system updates...
[2026-06-19 16:16:13,219.219 INFO    ] 200
[2026-06-19 16:16:13,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:13,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:16:13,282.282 INFO    ] No update needed
[2026-06-19 16:16:13,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 16:16:13,319.319 INFO    ] 200
[2026-06-19 16:16:13,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:13,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:16:13,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:16:13,424.424 INFO    ] No camera update needed
[2026-06-19 16:16:13,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:16:13,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:16:13,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:16:13,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:16:15,484.484 INFO    ] ================================================
[2026-06-19 16:16:15,500.500 INFO    ] Launching Daemon at Fri Jun 19 16:16:15 IST 2026
[2026-06-19 16:16:15,511.511 INFO    ] ================================================
[2026-06-19 16:16:16,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:16:16
[2026-06-19 16:16:16,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:16:17,074.074 INFO    ] Initializing speech engine...
[2026-06-19 16:16:17,080.080 INFO    ] 2026-06-19 16:16:17
[2026-06-19 16:16:17,348.348 INFO    ] 2026-06-19 16:16:17
[2026-06-19 16:16:17,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:16:17,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:16:17,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:16:17,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:16:17,856.856 INFO    ] time= 19/06/2026 16:16:17
[2026-06-19 16:16:17,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:16:17,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:16:18,069.069 INFO    ] No existing commands found in stream
[2026-06-19 16:16:23,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:16:23,088.088 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 16:16:27,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:16:27,052.052 INFO    ] Checking for system updates...
[2026-06-19 16:16:27,089.089 INFO    ] 200
[2026-06-19 16:16:27,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:27,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:16:27,147.147 INFO    ] No update needed
[2026-06-19 16:16:27,150.150 INFO    ] Checking for camera pi updates...
[2026-06-19 16:16:27,184.184 INFO    ] 200
[2026-06-19 16:16:27,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:27,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:16:27,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:16:27,290.290 INFO    ] No camera update needed
[2026-06-19 16:16:27,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:16:27,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:16:27,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:16:27,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:16:29,347.347 INFO    ] ================================================
[2026-06-19 16:16:29,362.362 INFO    ] Launching Daemon at Fri Jun 19 16:16:29 IST 2026
[2026-06-19 16:16:29,373.373 INFO    ] ================================================
[2026-06-19 16:16:29,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:16:29
[2026-06-19 16:16:30,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:16:30,928.928 INFO    ] Initializing speech engine...
[2026-06-19 16:16:30,937.937 INFO    ] 2026-06-19 16:16:30
[2026-06-19 16:16:31,205.205 INFO    ] 2026-06-19 16:16:31
[2026-06-19 16:16:31,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:16:31,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:16:31,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:16:31,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:16:31,697.697 INFO    ] time= 19/06/2026 16:16:31
[2026-06-19 16:16:31,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:16:31,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:16:31,916.916 INFO    ] No existing commands found in stream
[2026-06-19 16:16:36,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:16:36,947.947 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 16:16:37,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:16:37,494.494 INFO    ] Checking for system updates...
[2026-06-19 16:16:37,531.531 INFO    ] 200
[2026-06-19 16:16:37,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:37,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:16:37,589.589 INFO    ] No update needed
[2026-06-19 16:16:37,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 16:16:37,629.629 INFO    ] 200
[2026-06-19 16:16:37,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:37,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:16:37,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:16:37,728.728 INFO    ] No camera update needed
[2026-06-19 16:16:37,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:16:37,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:16:37,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:16:37,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:16:39,785.785 INFO    ] ================================================
[2026-06-19 16:16:39,801.801 INFO    ] Launching Daemon at Fri Jun 19 16:16:39 IST 2026
[2026-06-19 16:16:39,812.812 INFO    ] ================================================
[2026-06-19 16:16:40,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:16:40
[2026-06-19 16:16:41,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:16:41,378.378 INFO    ] Initializing speech engine...
[2026-06-19 16:16:41,386.386 INFO    ] 2026-06-19 16:16:41
[2026-06-19 16:16:41,655.655 INFO    ] 2026-06-19 16:16:41
[2026-06-19 16:16:41,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:16:41,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:16:41,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:16:42,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:16:42,155.155 INFO    ] time= 19/06/2026 16:16:42
[2026-06-19 16:16:42,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:16:42,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:16:42,379.379 INFO    ] No existing commands found in stream
[2026-06-19 16:16:47,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:16:47,397.397 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 16:16:51,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:16:51,352.352 INFO    ] Checking for system updates...
[2026-06-19 16:16:51,389.389 INFO    ] 200
[2026-06-19 16:16:51,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:51,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:16:51,447.447 INFO    ] No update needed
[2026-06-19 16:16:51,450.450 INFO    ] Checking for camera pi updates...
[2026-06-19 16:16:51,488.488 INFO    ] 200
[2026-06-19 16:16:51,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:16:51,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:16:51,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:16:51,585.585 INFO    ] No camera update needed
[2026-06-19 16:16:51,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:16:51,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:16:51,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:16:51,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:16:53,641.641 INFO    ] ================================================
[2026-06-19 16:16:53,657.657 INFO    ] Launching Daemon at Fri Jun 19 16:16:53 IST 2026
[2026-06-19 16:16:53,668.668 INFO    ] ================================================
[2026-06-19 16:16:54,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:16:54
[2026-06-19 16:16:54,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:16:55,114.114 INFO    ] Initializing speech engine...
[2026-06-19 16:16:55,127.127 INFO    ] 2026-06-19 16:16:55
[2026-06-19 16:16:55,376.376 INFO    ] 2026-06-19 16:16:55
[2026-06-19 16:16:55,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:16:55,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:16:55,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:16:55,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:16:55,850.850 INFO    ] time= 19/06/2026 16:16:55
[2026-06-19 16:16:55,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:16:55,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:16:56,074.074 INFO    ] No existing commands found in stream
[2026-06-19 16:17:01,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:17:01,098.098 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 16:17:05,274.274 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:17:05,277.277 INFO    ] Checking for system updates...
[2026-06-19 16:17:05,313.313 INFO    ] 200
[2026-06-19 16:17:05,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:05,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:17:05,371.371 INFO    ] No update needed
[2026-06-19 16:17:05,373.373 INFO    ] Checking for camera pi updates...
[2026-06-19 16:17:05,407.407 INFO    ] 200
[2026-06-19 16:17:05,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:05,450.450 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:17:05,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:17:05,495.495 INFO    ] No camera update needed
[2026-06-19 16:17:05,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:17:05,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:17:05,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:17:05,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:17:07,552.552 INFO    ] ================================================
[2026-06-19 16:17:07,568.568 INFO    ] Launching Daemon at Fri Jun 19 16:17:07 IST 2026
[2026-06-19 16:17:07,578.578 INFO    ] ================================================
[2026-06-19 16:17:08,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:17:08
[2026-06-19 16:17:08,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:17:08,983.983 INFO    ] Initializing speech engine...
[2026-06-19 16:17:08,996.996 INFO    ] 2026-06-19 16:17:08
[2026-06-19 16:17:09,273.273 INFO    ] 2026-06-19 16:17:09
[2026-06-19 16:17:09,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:17:09,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:17:09,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:17:09,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:17:09,787.787 INFO    ] time= 19/06/2026 16:17:09
[2026-06-19 16:17:09,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:17:09,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:17:10,018.018 INFO    ] No existing commands found in stream
[2026-06-19 16:17:15,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:17:15,048.048 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 16:17:19,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:17:19,305.305 INFO    ] Checking for system updates...
[2026-06-19 16:17:19,341.341 INFO    ] 200
[2026-06-19 16:17:19,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:19,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:17:19,405.405 INFO    ] No update needed
[2026-06-19 16:17:19,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 16:17:19,444.444 INFO    ] 200
[2026-06-19 16:17:19,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:19,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:17:19,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:17:19,546.546 INFO    ] No camera update needed
[2026-06-19 16:17:19,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:17:19,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:17:19,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:17:19,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:17:21,602.602 INFO    ] ================================================
[2026-06-19 16:17:21,618.618 INFO    ] Launching Daemon at Fri Jun 19 16:17:21 IST 2026
[2026-06-19 16:17:21,629.629 INFO    ] ================================================
[2026-06-19 16:17:22,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:17:22
[2026-06-19 16:17:22,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:17:23,034.034 INFO    ] Initializing speech engine...
[2026-06-19 16:17:23,041.041 INFO    ] 2026-06-19 16:17:23
[2026-06-19 16:17:23,325.325 INFO    ] 2026-06-19 16:17:23
[2026-06-19 16:17:23,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:17:23,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:17:23,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:17:23,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:17:23,845.845 INFO    ] time= 19/06/2026 16:17:23
[2026-06-19 16:17:23,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:17:23,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:17:24,046.046 INFO    ] No existing commands found in stream
[2026-06-19 16:17:29,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:17:29,077.077 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 16:17:30,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:17:30,563.563 INFO    ] Checking for system updates...
[2026-06-19 16:17:30,600.600 INFO    ] 200
[2026-06-19 16:17:30,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:30,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:17:30,662.662 INFO    ] No update needed
[2026-06-19 16:17:30,664.664 INFO    ] Checking for camera pi updates...
[2026-06-19 16:17:30,698.698 INFO    ] 200
[2026-06-19 16:17:30,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:30,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:17:30,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:17:30,790.790 INFO    ] No camera update needed
[2026-06-19 16:17:30,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:17:30,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:17:30,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:17:30,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:17:32,847.847 INFO    ] ================================================
[2026-06-19 16:17:32,862.862 INFO    ] Launching Daemon at Fri Jun 19 16:17:32 IST 2026
[2026-06-19 16:17:32,873.873 INFO    ] ================================================
[2026-06-19 16:17:33,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:17:33
[2026-06-19 16:17:34,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:17:34,373.373 INFO    ] Initializing speech engine...
[2026-06-19 16:17:34,378.378 INFO    ] 2026-06-19 16:17:34
[2026-06-19 16:17:34,649.649 INFO    ] 2026-06-19 16:17:34
[2026-06-19 16:17:34,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:17:34,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:17:34,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:17:35,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:17:35,197.197 INFO    ] time= 19/06/2026 16:17:35
[2026-06-19 16:17:35,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:17:35,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:17:35,349.349 INFO    ] No existing commands found in stream
[2026-06-19 16:17:40,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:17:40,368.368 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 16:17:41,880.880 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:17:41,883.883 INFO    ] Checking for system updates...
[2026-06-19 16:17:41,919.919 INFO    ] 200
[2026-06-19 16:17:41,922.922 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:41,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:17:41,977.977 INFO    ] No update needed
[2026-06-19 16:17:41,985.985 INFO    ] Checking for camera pi updates...
[2026-06-19 16:17:42,020.020 INFO    ] 200
[2026-06-19 16:17:42,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:42,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:17:42,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:17:42,119.119 INFO    ] No camera update needed
[2026-06-19 16:17:42,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:17:42,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:17:42,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:17:42,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:17:44,175.175 INFO    ] ================================================
[2026-06-19 16:17:44,190.190 INFO    ] Launching Daemon at Fri Jun 19 16:17:44 IST 2026
[2026-06-19 16:17:44,201.201 INFO    ] ================================================
[2026-06-19 16:17:44,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:17:44
[2026-06-19 16:17:45,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:17:45,622.622 INFO    ] Initializing speech engine...
[2026-06-19 16:17:45,631.631 INFO    ] 2026-06-19 16:17:45
[2026-06-19 16:17:45,881.881 INFO    ] 2026-06-19 16:17:45
[2026-06-19 16:17:45,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:17:46,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:17:46,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:17:46,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:17:46,360.360 INFO    ] time= 19/06/2026 16:17:46
[2026-06-19 16:17:46,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:17:46,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:17:46,601.601 INFO    ] No existing commands found in stream
[2026-06-19 16:17:51,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:17:51,621.621 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 16:17:55,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:17:55,842.842 INFO    ] Checking for system updates...
[2026-06-19 16:17:55,878.878 INFO    ] 200
[2026-06-19 16:17:55,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:55,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:17:55,936.936 INFO    ] No update needed
[2026-06-19 16:17:55,938.938 INFO    ] Checking for camera pi updates...
[2026-06-19 16:17:55,974.974 INFO    ] 200
[2026-06-19 16:17:55,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:17:56,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:17:56,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:17:56,169.169 INFO    ] No camera update needed
[2026-06-19 16:17:56,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:17:56,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:17:56,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:17:56,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:17:58,225.225 INFO    ] ================================================
[2026-06-19 16:17:58,240.240 INFO    ] Launching Daemon at Fri Jun 19 16:17:58 IST 2026
[2026-06-19 16:17:58,251.251 INFO    ] ================================================
[2026-06-19 16:17:58,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:17:58
[2026-06-19 16:17:59,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:17:59,680.680 INFO    ] Initializing speech engine...
[2026-06-19 16:17:59,688.688 INFO    ] 2026-06-19 16:17:59
[2026-06-19 16:17:59,979.979 INFO    ] 2026-06-19 16:17:59
[2026-06-19 16:18:00,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:18:00,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:18:00,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:18:00,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:18:00,485.485 INFO    ] time= 19/06/2026 16:18:00
[2026-06-19 16:18:00,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:18:00,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:18:00,723.723 INFO    ] No existing commands found in stream
[2026-06-19 16:18:05,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:18:05,753.753 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 16:18:08,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:18:08,213.213 INFO    ] Checking for system updates...
[2026-06-19 16:18:08,251.251 INFO    ] 200
[2026-06-19 16:18:08,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:08,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:18:08,309.309 INFO    ] No update needed
[2026-06-19 16:18:08,311.311 INFO    ] Checking for camera pi updates...
[2026-06-19 16:18:08,345.345 INFO    ] 200
[2026-06-19 16:18:08,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:08,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:18:08,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:18:08,434.434 INFO    ] No camera update needed
[2026-06-19 16:18:08,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:18:08,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:18:08,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:18:08,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:18:10,491.491 INFO    ] ================================================
[2026-06-19 16:18:10,507.507 INFO    ] Launching Daemon at Fri Jun 19 16:18:10 IST 2026
[2026-06-19 16:18:10,517.517 INFO    ] ================================================
[2026-06-19 16:18:11,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:18:11
[2026-06-19 16:18:11,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:18:11,953.953 INFO    ] Initializing speech engine...
[2026-06-19 16:18:11,967.967 INFO    ] 2026-06-19 16:18:11
[2026-06-19 16:18:12,222.222 INFO    ] 2026-06-19 16:18:12
[2026-06-19 16:18:12,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:18:12,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:18:12,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:18:12,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:18:12,733.733 INFO    ] time= 19/06/2026 16:18:12
[2026-06-19 16:18:12,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:18:12,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:18:12,950.950 INFO    ] No existing commands found in stream
[2026-06-19 16:18:17,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:18:17,976.976 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 16:18:19,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:18:19,311.311 INFO    ] Checking for system updates...
[2026-06-19 16:18:19,347.347 INFO    ] 200
[2026-06-19 16:18:19,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:19,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:18:19,404.404 INFO    ] No update needed
[2026-06-19 16:18:19,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 16:18:19,441.441 INFO    ] 200
[2026-06-19 16:18:19,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:19,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:18:19,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:18:19,542.542 INFO    ] No camera update needed
[2026-06-19 16:18:19,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:18:19,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:18:19,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:18:19,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:18:21,598.598 INFO    ] ================================================
[2026-06-19 16:18:21,613.613 INFO    ] Launching Daemon at Fri Jun 19 16:18:21 IST 2026
[2026-06-19 16:18:21,624.624 INFO    ] ================================================
[2026-06-19 16:18:22,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:18:22
[2026-06-19 16:18:22,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:18:23,036.036 INFO    ] Initializing speech engine...
[2026-06-19 16:18:23,058.058 INFO    ] 2026-06-19 16:18:23
[2026-06-19 16:18:23,314.314 INFO    ] 2026-06-19 16:18:23
[2026-06-19 16:18:23,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:18:23,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:18:23,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:18:23,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:18:23,826.826 INFO    ] time= 19/06/2026 16:18:23
[2026-06-19 16:18:23,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:18:23,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:18:24,044.044 INFO    ] No existing commands found in stream
[2026-06-19 16:18:29,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:18:29,067.067 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 16:18:29,994.994 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:18:29,997.997 INFO    ] Checking for system updates...
[2026-06-19 16:18:30,033.033 INFO    ] 200
[2026-06-19 16:18:30,036.036 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:30,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:18:30,090.090 INFO    ] No update needed
[2026-06-19 16:18:30,096.096 INFO    ] Checking for camera pi updates...
[2026-06-19 16:18:30,133.133 INFO    ] 200
[2026-06-19 16:18:30,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:30,176.176 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:18:30,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:18:30,222.222 INFO    ] No camera update needed
[2026-06-19 16:18:30,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:18:30,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:18:30,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:18:30,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:18:32,280.280 INFO    ] ================================================
[2026-06-19 16:18:32,297.297 INFO    ] Launching Daemon at Fri Jun 19 16:18:32 IST 2026
[2026-06-19 16:18:32,309.309 INFO    ] ================================================
[2026-06-19 16:18:32,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:18:32
[2026-06-19 16:18:33,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:18:33,804.804 INFO    ] Initializing speech engine...
[2026-06-19 16:18:33,828.828 INFO    ] 2026-06-19 16:18:33
[2026-06-19 16:18:34,098.098 INFO    ] 2026-06-19 16:18:34
[2026-06-19 16:18:34,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:18:34,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:18:34,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:18:34,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:18:34,495.495 INFO    ] time= 19/06/2026 16:18:34
[2026-06-19 16:18:34,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:18:34,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:18:34,676.676 INFO    ] No existing commands found in stream
[2026-06-19 16:18:39,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:18:39,709.709 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 16:18:41,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:18:41,770.770 INFO    ] Checking for system updates...
[2026-06-19 16:18:41,807.807 INFO    ] 200
[2026-06-19 16:18:41,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:41,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:18:41,863.863 INFO    ] No update needed
[2026-06-19 16:18:41,866.866 INFO    ] Checking for camera pi updates...
[2026-06-19 16:18:41,900.900 INFO    ] 200
[2026-06-19 16:18:41,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:41,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:18:41,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:18:41,999.999 INFO    ] No camera update needed
[2026-06-19 16:18:42,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:18:42,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:18:42,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:18:42,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:18:44,053.053 INFO    ] ================================================
[2026-06-19 16:18:44,069.069 INFO    ] Launching Daemon at Fri Jun 19 16:18:44 IST 2026
[2026-06-19 16:18:44,080.080 INFO    ] ================================================
[2026-06-19 16:18:44,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:18:44
[2026-06-19 16:18:45,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:18:45,489.489 INFO    ] Initializing speech engine...
[2026-06-19 16:18:45,495.495 INFO    ] 2026-06-19 16:18:45
[2026-06-19 16:18:45,783.783 INFO    ] 2026-06-19 16:18:45
[2026-06-19 16:18:45,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:18:46,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:18:46,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:18:46,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:18:46,238.238 INFO    ] time= 19/06/2026 16:18:46
[2026-06-19 16:18:46,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:18:46,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:18:46,482.482 INFO    ] No existing commands found in stream
[2026-06-19 16:18:51,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:18:51,507.507 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 16:18:51,963.963 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:18:51,966.966 INFO    ] Checking for system updates...
[2026-06-19 16:18:52,002.002 INFO    ] 200
[2026-06-19 16:18:52,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:52,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:18:52,060.060 INFO    ] No update needed
[2026-06-19 16:18:52,062.062 INFO    ] Checking for camera pi updates...
[2026-06-19 16:18:52,096.096 INFO    ] 200
[2026-06-19 16:18:52,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:18:52,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:18:52,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:18:52,206.206 INFO    ] No camera update needed
[2026-06-19 16:18:52,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:18:52,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:18:52,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:18:52,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:18:54,263.263 INFO    ] ================================================
[2026-06-19 16:18:54,279.279 INFO    ] Launching Daemon at Fri Jun 19 16:18:54 IST 2026
[2026-06-19 16:18:54,290.290 INFO    ] ================================================
[2026-06-19 16:18:54,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:18:54
[2026-06-19 16:18:55,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:18:55,853.853 INFO    ] Initializing speech engine...
[2026-06-19 16:18:55,866.866 INFO    ] 2026-06-19 16:18:55
[2026-06-19 16:18:56,147.147 INFO    ] 2026-06-19 16:18:56
[2026-06-19 16:18:56,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:18:56,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:18:56,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:18:56,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:18:56,673.673 INFO    ] time= 19/06/2026 16:18:56
[2026-06-19 16:18:56,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:18:56,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:18:56,817.817 INFO    ] No existing commands found in stream
[2026-06-19 16:19:01,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:19:01,842.842 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 16:19:02,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:19:02,369.369 INFO    ] Checking for system updates...
[2026-06-19 16:19:02,412.412 INFO    ] 200
[2026-06-19 16:19:02,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:02,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:19:02,489.489 INFO    ] No update needed
[2026-06-19 16:19:02,492.492 INFO    ] Checking for camera pi updates...
[2026-06-19 16:19:02,532.532 INFO    ] 200
[2026-06-19 16:19:02,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:02,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:19:02,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:19:02,624.624 INFO    ] No camera update needed
[2026-06-19 16:19:02,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:19:02,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:19:02,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:19:02,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:19:04,690.690 INFO    ] ================================================
[2026-06-19 16:19:04,706.706 INFO    ] Launching Daemon at Fri Jun 19 16:19:04 IST 2026
[2026-06-19 16:19:04,717.717 INFO    ] ================================================
[2026-06-19 16:19:05,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:19:05
[2026-06-19 16:19:05,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:19:06,139.139 INFO    ] Initializing speech engine...
[2026-06-19 16:19:06,155.155 INFO    ] 2026-06-19 16:19:06
[2026-06-19 16:19:06,446.446 INFO    ] 2026-06-19 16:19:06
[2026-06-19 16:19:06,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:19:06,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:19:06,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:19:06,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:19:06,948.948 INFO    ] time= 19/06/2026 16:19:06
[2026-06-19 16:19:07,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:19:07,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:19:07,150.150 INFO    ] No existing commands found in stream
[2026-06-19 16:19:12,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:19:12,170.170 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 16:19:16,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:19:16,213.213 INFO    ] Checking for system updates...
[2026-06-19 16:19:16,249.249 INFO    ] 200
[2026-06-19 16:19:16,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:16,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:19:16,307.307 INFO    ] No update needed
[2026-06-19 16:19:16,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 16:19:16,345.345 INFO    ] 200
[2026-06-19 16:19:16,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:16,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:19:16,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:19:16,443.443 INFO    ] No camera update needed
[2026-06-19 16:19:16,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:19:16,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:19:16,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:19:16,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:19:18,503.503 INFO    ] ================================================
[2026-06-19 16:19:18,519.519 INFO    ] Launching Daemon at Fri Jun 19 16:19:18 IST 2026
[2026-06-19 16:19:18,531.531 INFO    ] ================================================
[2026-06-19 16:19:19,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:19:19
[2026-06-19 16:19:19,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:19:19,983.983 INFO    ] Initializing speech engine...
[2026-06-19 16:19:20,009.009 INFO    ] 2026-06-19 16:19:19
[2026-06-19 16:19:20,283.283 INFO    ] 2026-06-19 16:19:20
[2026-06-19 16:19:20,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:19:20,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:19:20,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:19:20,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:19:20,764.764 INFO    ] time= 19/06/2026 16:19:20
[2026-06-19 16:19:20,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:19:20,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:19:20,984.984 INFO    ] No existing commands found in stream
[2026-06-19 16:19:26,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:19:26,015.015 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 16:19:28,244.244 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:19:28,247.247 INFO    ] Checking for system updates...
[2026-06-19 16:19:28,283.283 INFO    ] 200
[2026-06-19 16:19:28,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:28,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:19:28,342.342 INFO    ] No update needed
[2026-06-19 16:19:28,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 16:19:28,381.381 INFO    ] 200
[2026-06-19 16:19:28,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:28,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:19:28,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:19:28,479.479 INFO    ] No camera update needed
[2026-06-19 16:19:28,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:19:28,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:19:28,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:19:28,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:19:30,536.536 INFO    ] ================================================
[2026-06-19 16:19:30,551.551 INFO    ] Launching Daemon at Fri Jun 19 16:19:30 IST 2026
[2026-06-19 16:19:30,562.562 INFO    ] ================================================
[2026-06-19 16:19:31,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:19:31
[2026-06-19 16:19:31,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:19:32,089.089 INFO    ] Initializing speech engine...
[2026-06-19 16:19:32,099.099 INFO    ] 2026-06-19 16:19:32
[2026-06-19 16:19:32,386.386 INFO    ] 2026-06-19 16:19:32
[2026-06-19 16:19:32,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:19:32,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:19:32,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:19:32,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:19:32,828.828 INFO    ] time= 19/06/2026 16:19:32
[2026-06-19 16:19:32,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:19:32,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:19:33,026.026 INFO    ] No existing commands found in stream
[2026-06-19 16:19:38,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:19:38,039.039 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 16:19:41,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:19:41,553.553 INFO    ] Checking for system updates...
[2026-06-19 16:19:41,588.588 INFO    ] 200
[2026-06-19 16:19:41,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:41,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:19:41,646.646 INFO    ] No update needed
[2026-06-19 16:19:41,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 16:19:41,686.686 INFO    ] 200
[2026-06-19 16:19:41,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:41,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:19:41,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:19:41,790.790 INFO    ] No camera update needed
[2026-06-19 16:19:41,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:19:41,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:19:41,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:19:41,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:19:43,847.847 INFO    ] ================================================
[2026-06-19 16:19:43,863.863 INFO    ] Launching Daemon at Fri Jun 19 16:19:43 IST 2026
[2026-06-19 16:19:43,877.877 INFO    ] ================================================
[2026-06-19 16:19:44,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:19:44
[2026-06-19 16:19:45,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:19:45,295.295 INFO    ] Initializing speech engine...
[2026-06-19 16:19:45,304.304 INFO    ] 2026-06-19 16:19:45
[2026-06-19 16:19:45,589.589 INFO    ] 2026-06-19 16:19:45
[2026-06-19 16:19:45,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:19:45,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:19:45,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:19:46,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:19:46,072.072 INFO    ] time= 19/06/2026 16:19:46
[2026-06-19 16:19:46,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:19:46,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:19:46,318.318 INFO    ] No existing commands found in stream
[2026-06-19 16:19:51,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:19:51,347.347 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 16:19:53,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:19:53,453.453 INFO    ] Checking for system updates...
[2026-06-19 16:19:53,491.491 INFO    ] 200
[2026-06-19 16:19:53,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:53,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:19:53,549.549 INFO    ] No update needed
[2026-06-19 16:19:53,552.552 INFO    ] Checking for camera pi updates...
[2026-06-19 16:19:53,585.585 INFO    ] 200
[2026-06-19 16:19:53,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:19:53,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:19:53,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:19:53,681.681 INFO    ] No camera update needed
[2026-06-19 16:19:53,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:19:53,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:19:53,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:19:53,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:19:55,738.738 INFO    ] ================================================
[2026-06-19 16:19:55,753.753 INFO    ] Launching Daemon at Fri Jun 19 16:19:55 IST 2026
[2026-06-19 16:19:55,764.764 INFO    ] ================================================
[2026-06-19 16:19:56,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:19:56
[2026-06-19 16:19:57,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:19:57,333.333 INFO    ] Initializing speech engine...
[2026-06-19 16:19:57,346.346 INFO    ] 2026-06-19 16:19:57
[2026-06-19 16:19:57,624.624 INFO    ] 2026-06-19 16:19:57
[2026-06-19 16:19:57,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:19:57,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:19:57,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:19:58,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:19:58,162.162 INFO    ] time= 19/06/2026 16:19:58
[2026-06-19 16:19:58,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:19:58,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:19:58,322.322 INFO    ] No existing commands found in stream
[2026-06-19 16:20:03,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:20:03,341.341 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-19 16:20:03,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:20:03,768.768 INFO    ] Checking for system updates...
[2026-06-19 16:20:03,805.805 INFO    ] 200
[2026-06-19 16:20:03,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:03,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:20:03,864.864 INFO    ] No update needed
[2026-06-19 16:20:03,867.867 INFO    ] Checking for camera pi updates...
[2026-06-19 16:20:03,903.903 INFO    ] 200
[2026-06-19 16:20:03,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:03,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:20:03,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:20:03,998.998 INFO    ] No camera update needed
[2026-06-19 16:20:04,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:20:04,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:20:04,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:20:04,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:20:06,057.057 INFO    ] ================================================
[2026-06-19 16:20:06,073.073 INFO    ] Launching Daemon at Fri Jun 19 16:20:06 IST 2026
[2026-06-19 16:20:06,084.084 INFO    ] ================================================
[2026-06-19 16:20:06,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:20:06
[2026-06-19 16:20:07,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:20:07,544.544 INFO    ] Initializing speech engine...
[2026-06-19 16:20:07,552.552 INFO    ] 2026-06-19 16:20:07
[2026-06-19 16:20:07,852.852 INFO    ] 2026-06-19 16:20:07
[2026-06-19 16:20:07,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:20:08,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:20:08,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:20:08,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:20:08,273.273 INFO    ] time= 19/06/2026 16:20:08
[2026-06-19 16:20:08,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:20:08,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:20:08,434.434 INFO    ] No existing commands found in stream
[2026-06-19 16:20:13,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:20:13,462.462 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 16:20:15,428.428 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:20:15,431.431 INFO    ] Checking for system updates...
[2026-06-19 16:20:15,467.467 INFO    ] 200
[2026-06-19 16:20:15,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:15,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:20:15,525.525 INFO    ] No update needed
[2026-06-19 16:20:15,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 16:20:15,566.566 INFO    ] 200
[2026-06-19 16:20:15,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:15,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:20:15,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:20:15,658.658 INFO    ] No camera update needed
[2026-06-19 16:20:15,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:20:15,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:20:15,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:20:15,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:20:17,718.718 INFO    ] ================================================
[2026-06-19 16:20:17,733.733 INFO    ] Launching Daemon at Fri Jun 19 16:20:17 IST 2026
[2026-06-19 16:20:17,744.744 INFO    ] ================================================
[2026-06-19 16:20:18,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:20:18
[2026-06-19 16:20:18,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:20:19,159.159 INFO    ] Initializing speech engine...
[2026-06-19 16:20:19,165.165 INFO    ] 2026-06-19 16:20:19
[2026-06-19 16:20:19,468.468 INFO    ] 2026-06-19 16:20:19
[2026-06-19 16:20:19,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:20:19,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:20:19,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:20:19,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:20:19,850.850 INFO    ] time= 19/06/2026 16:20:19
[2026-06-19 16:20:19,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:20:19,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:20:19,979.979 INFO    ] No existing commands found in stream
[2026-06-19 16:20:24,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:20:24,997.997 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 16:20:29,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:20:29,234.234 INFO    ] Checking for system updates...
[2026-06-19 16:20:29,290.290 INFO    ] 200
[2026-06-19 16:20:29,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:29,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:20:29,354.354 INFO    ] No update needed
[2026-06-19 16:20:29,356.356 INFO    ] Checking for camera pi updates...
[2026-06-19 16:20:29,394.394 INFO    ] 200
[2026-06-19 16:20:29,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:29,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:20:29,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:20:29,494.494 INFO    ] No camera update needed
[2026-06-19 16:20:29,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:20:29,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:20:29,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:20:29,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:20:31,559.559 INFO    ] ================================================
[2026-06-19 16:20:31,580.580 INFO    ] Launching Daemon at Fri Jun 19 16:20:31 IST 2026
[2026-06-19 16:20:31,592.592 INFO    ] ================================================
[2026-06-19 16:20:32,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:20:32
[2026-06-19 16:20:32,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:20:33,161.161 INFO    ] Initializing speech engine...
[2026-06-19 16:20:33,171.171 INFO    ] 2026-06-19 16:20:33
[2026-06-19 16:20:33,434.434 INFO    ] 2026-06-19 16:20:33
[2026-06-19 16:20:33,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:20:33,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:20:33,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:20:33,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:20:33,902.902 INFO    ] time= 19/06/2026 16:20:33
[2026-06-19 16:20:33,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:20:34,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:20:34,161.161 INFO    ] No existing commands found in stream
[2026-06-19 16:20:39,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:20:39,181.181 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 16:20:41,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:20:41,124.124 INFO    ] Checking for system updates...
[2026-06-19 16:20:41,160.160 INFO    ] 200
[2026-06-19 16:20:41,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:41,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:20:41,218.218 INFO    ] No update needed
[2026-06-19 16:20:41,221.221 INFO    ] Checking for camera pi updates...
[2026-06-19 16:20:41,255.255 INFO    ] 200
[2026-06-19 16:20:41,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:41,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:20:41,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:20:41,344.344 INFO    ] No camera update needed
[2026-06-19 16:20:41,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:20:41,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:20:41,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:20:41,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:20:43,401.401 INFO    ] ================================================
[2026-06-19 16:20:43,417.417 INFO    ] Launching Daemon at Fri Jun 19 16:20:43 IST 2026
[2026-06-19 16:20:43,428.428 INFO    ] ================================================
[2026-06-19 16:20:43,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:20:43
[2026-06-19 16:20:44,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:20:44,875.875 INFO    ] Initializing speech engine...
[2026-06-19 16:20:44,883.883 INFO    ] 2026-06-19 16:20:44
[2026-06-19 16:20:45,156.156 INFO    ] 2026-06-19 16:20:45
[2026-06-19 16:20:45,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:20:45,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:20:45,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:20:45,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:20:45,615.615 INFO    ] time= 19/06/2026 16:20:45
[2026-06-19 16:20:45,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:20:45,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:20:45,840.840 INFO    ] No existing commands found in stream
[2026-06-19 16:20:50,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:20:50,859.859 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 16:20:54,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:20:54,530.530 INFO    ] Checking for system updates...
[2026-06-19 16:20:54,568.568 INFO    ] 200
[2026-06-19 16:20:54,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:54,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:20:54,634.634 INFO    ] No update needed
[2026-06-19 16:20:54,637.637 INFO    ] Checking for camera pi updates...
[2026-06-19 16:20:54,671.671 INFO    ] 200
[2026-06-19 16:20:54,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:20:54,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:20:54,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:20:54,769.769 INFO    ] No camera update needed
[2026-06-19 16:20:54,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:20:54,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:20:54,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:20:54,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:20:56,829.829 INFO    ] ================================================
[2026-06-19 16:20:56,845.845 INFO    ] Launching Daemon at Fri Jun 19 16:20:56 IST 2026
[2026-06-19 16:20:56,857.857 INFO    ] ================================================
[2026-06-19 16:20:57,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:20:57
[2026-06-19 16:20:58,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:20:58,514.514 INFO    ] Initializing speech engine...
[2026-06-19 16:20:58,525.525 INFO    ] 2026-06-19 16:20:58
[2026-06-19 16:20:58,812.812 INFO    ] 2026-06-19 16:20:58
[2026-06-19 16:20:58,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:20:59,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:20:59,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:20:59,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:20:59,361.361 INFO    ] time= 19/06/2026 16:20:59
[2026-06-19 16:20:59,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:20:59,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:20:59,526.526 INFO    ] No existing commands found in stream
[2026-06-19 16:21:04,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:21:04,549.549 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 16:21:05,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:21:05,009.009 INFO    ] Checking for system updates...
[2026-06-19 16:21:05,050.050 INFO    ] 200
[2026-06-19 16:21:05,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:05,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:21:05,110.110 INFO    ] No update needed
[2026-06-19 16:21:05,113.113 INFO    ] Checking for camera pi updates...
[2026-06-19 16:21:05,148.148 INFO    ] 200
[2026-06-19 16:21:05,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:05,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:21:05,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:21:05,240.240 INFO    ] No camera update needed
[2026-06-19 16:21:05,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:21:05,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:21:05,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:21:05,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:21:07,298.298 INFO    ] ================================================
[2026-06-19 16:21:07,313.313 INFO    ] Launching Daemon at Fri Jun 19 16:21:07 IST 2026
[2026-06-19 16:21:07,324.324 INFO    ] ================================================
[2026-06-19 16:21:07,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:21:07
[2026-06-19 16:21:08,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:21:08,787.787 INFO    ] Initializing speech engine...
[2026-06-19 16:21:08,796.796 INFO    ] 2026-06-19 16:21:08
[2026-06-19 16:21:09,055.055 INFO    ] 2026-06-19 16:21:09
[2026-06-19 16:21:09,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:21:09,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:21:09,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:21:09,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:21:09,508.508 INFO    ] time= 19/06/2026 16:21:09
[2026-06-19 16:21:09,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:21:09,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:21:09,719.719 INFO    ] No existing commands found in stream
[2026-06-19 16:21:14,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:21:14,752.752 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 16:21:15,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:21:15,617.617 INFO    ] Checking for system updates...
[2026-06-19 16:21:15,654.654 INFO    ] 200
[2026-06-19 16:21:15,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:15,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:21:15,711.711 INFO    ] No update needed
[2026-06-19 16:21:15,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 16:21:15,748.748 INFO    ] 200
[2026-06-19 16:21:15,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:15,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:21:15,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:21:15,848.848 INFO    ] No camera update needed
[2026-06-19 16:21:15,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:21:15,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:21:15,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:21:15,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:21:17,902.902 INFO    ] ================================================
[2026-06-19 16:21:17,917.917 INFO    ] Launching Daemon at Fri Jun 19 16:21:17 IST 2026
[2026-06-19 16:21:17,929.929 INFO    ] ================================================
[2026-06-19 16:21:18,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:21:18
[2026-06-19 16:21:19,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:21:19,545.545 INFO    ] Initializing speech engine...
[2026-06-19 16:21:19,559.559 INFO    ] 2026-06-19 16:21:19
[2026-06-19 16:21:19,830.830 INFO    ] 2026-06-19 16:21:19
[2026-06-19 16:21:19,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:21:20,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:21:20,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:21:20,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:21:20,389.389 INFO    ] time= 19/06/2026 16:21:20
[2026-06-19 16:21:20,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:21:20,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:21:20,553.553 INFO    ] No existing commands found in stream
[2026-06-19 16:21:25,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:21:25,586.586 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 16:21:29,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:21:29,764.764 INFO    ] Checking for system updates...
[2026-06-19 16:21:29,800.800 INFO    ] 200
[2026-06-19 16:21:29,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:29,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:21:29,868.868 INFO    ] No update needed
[2026-06-19 16:21:29,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 16:21:29,907.907 INFO    ] 200
[2026-06-19 16:21:29,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:29,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:21:30,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:21:30,004.004 INFO    ] No camera update needed
[2026-06-19 16:21:30,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:21:30,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:21:30,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:21:30,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:21:32,061.061 INFO    ] ================================================
[2026-06-19 16:21:32,079.079 INFO    ] Launching Daemon at Fri Jun 19 16:21:32 IST 2026
[2026-06-19 16:21:32,090.090 INFO    ] ================================================
[2026-06-19 16:21:32,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:21:32
[2026-06-19 16:21:33,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:21:33,551.551 INFO    ] Initializing speech engine...
[2026-06-19 16:21:33,566.566 INFO    ] 2026-06-19 16:21:33
[2026-06-19 16:21:33,833.833 INFO    ] 2026-06-19 16:21:33
[2026-06-19 16:21:33,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:21:34,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:21:34,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:21:34,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:21:34,391.391 INFO    ] time= 19/06/2026 16:21:34
[2026-06-19 16:21:34,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:21:34,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:21:34,551.551 INFO    ] No existing commands found in stream
[2026-06-19 16:21:39,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:21:39,577.577 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 16:21:40,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:21:40,599.599 INFO    ] Checking for system updates...
[2026-06-19 16:21:40,636.636 INFO    ] 200
[2026-06-19 16:21:40,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:40,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:21:40,693.693 INFO    ] No update needed
[2026-06-19 16:21:40,696.696 INFO    ] Checking for camera pi updates...
[2026-06-19 16:21:40,729.729 INFO    ] 200
[2026-06-19 16:21:40,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:40,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:21:40,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:21:40,809.809 INFO    ] No camera update needed
[2026-06-19 16:21:40,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:21:40,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:21:40,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:21:40,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:21:42,868.868 INFO    ] ================================================
[2026-06-19 16:21:42,884.884 INFO    ] Launching Daemon at Fri Jun 19 16:21:42 IST 2026
[2026-06-19 16:21:42,894.894 INFO    ] ================================================
[2026-06-19 16:21:43,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:21:43
[2026-06-19 16:21:44,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:21:44,604.604 INFO    ] Initializing speech engine...
[2026-06-19 16:21:44,622.622 INFO    ] 2026-06-19 16:21:44
[2026-06-19 16:21:44,877.877 INFO    ] 2026-06-19 16:21:44
[2026-06-19 16:21:44,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:21:45,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:21:45,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:21:45,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:21:45,285.285 INFO    ] time= 19/06/2026 16:21:45
[2026-06-19 16:21:45,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:21:45,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:21:45,438.438 INFO    ] No existing commands found in stream
[2026-06-19 16:21:50,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:21:50,461.461 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 16:21:54,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:21:54,067.067 INFO    ] Checking for system updates...
[2026-06-19 16:21:54,103.103 INFO    ] 200
[2026-06-19 16:21:54,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:54,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:21:54,161.161 INFO    ] No update needed
[2026-06-19 16:21:54,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 16:21:54,197.197 INFO    ] 200
[2026-06-19 16:21:54,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:21:54,240.240 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:21:54,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:21:54,290.290 INFO    ] No camera update needed
[2026-06-19 16:21:54,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:21:54,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:21:54,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:21:54,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:21:56,348.348 INFO    ] ================================================
[2026-06-19 16:21:56,363.363 INFO    ] Launching Daemon at Fri Jun 19 16:21:56 IST 2026
[2026-06-19 16:21:56,374.374 INFO    ] ================================================
[2026-06-19 16:21:57,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:21:57
[2026-06-19 16:21:57,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:21:57,989.989 INFO    ] Initializing speech engine...
[2026-06-19 16:21:57,998.998 INFO    ] 2026-06-19 16:21:57
[2026-06-19 16:21:58,275.275 INFO    ] 2026-06-19 16:21:58
[2026-06-19 16:21:58,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:21:58,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:21:58,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:21:58,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:21:58,748.748 INFO    ] time= 19/06/2026 16:21:58
[2026-06-19 16:21:58,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:21:58,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:21:59,000.000 INFO    ] No existing commands found in stream
[2026-06-19 16:22:04,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:22:04,027.027 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 16:22:07,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:22:07,870.870 INFO    ] Checking for system updates...
[2026-06-19 16:22:07,912.912 INFO    ] 200
[2026-06-19 16:22:07,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:07,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:22:07,972.972 INFO    ] No update needed
[2026-06-19 16:22:07,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 16:22:08,010.010 INFO    ] 200
[2026-06-19 16:22:08,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:08,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:22:08,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:22:08,201.201 INFO    ] No camera update needed
[2026-06-19 16:22:08,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:22:08,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:22:08,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:22:08,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:22:10,258.258 INFO    ] ================================================
[2026-06-19 16:22:10,273.273 INFO    ] Launching Daemon at Fri Jun 19 16:22:10 IST 2026
[2026-06-19 16:22:10,284.284 INFO    ] ================================================
[2026-06-19 16:22:10,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:22:10
[2026-06-19 16:22:11,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:22:11,704.704 INFO    ] Initializing speech engine...
[2026-06-19 16:22:11,728.728 INFO    ] 2026-06-19 16:22:11
[2026-06-19 16:22:11,985.985 INFO    ] 2026-06-19 16:22:11
[2026-06-19 16:22:12,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:22:12,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:22:12,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:22:12,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:22:12,431.431 INFO    ] time= 19/06/2026 16:22:12
[2026-06-19 16:22:12,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:22:12,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:22:12,694.694 INFO    ] No existing commands found in stream
[2026-06-19 16:22:17,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:22:17,727.727 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 16:22:20,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:22:20,743.743 INFO    ] Checking for system updates...
[2026-06-19 16:22:20,779.779 INFO    ] 200
[2026-06-19 16:22:20,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:20,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:22:20,837.837 INFO    ] No update needed
[2026-06-19 16:22:20,839.839 INFO    ] Checking for camera pi updates...
[2026-06-19 16:22:20,873.873 INFO    ] 200
[2026-06-19 16:22:20,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:20,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:22:20,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:22:20,967.967 INFO    ] No camera update needed
[2026-06-19 16:22:20,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:22:20,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:22:20,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:22:20,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:22:23,023.023 INFO    ] ================================================
[2026-06-19 16:22:23,038.038 INFO    ] Launching Daemon at Fri Jun 19 16:22:23 IST 2026
[2026-06-19 16:22:23,049.049 INFO    ] ================================================
[2026-06-19 16:22:23,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:22:23
[2026-06-19 16:22:24,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:22:24,715.715 INFO    ] Initializing speech engine...
[2026-06-19 16:22:24,729.729 INFO    ] 2026-06-19 16:22:24
[2026-06-19 16:22:24,993.993 INFO    ] 2026-06-19 16:22:24
[2026-06-19 16:22:25,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:22:25,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:22:25,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:22:25,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:22:25,460.460 INFO    ] time= 19/06/2026 16:22:25
[2026-06-19 16:22:25,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:22:25,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:22:25,673.673 INFO    ] No existing commands found in stream
[2026-06-19 16:22:30,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:22:30,703.703 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 16:22:33,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:22:33,565.565 INFO    ] Checking for system updates...
[2026-06-19 16:22:33,606.606 INFO    ] 200
[2026-06-19 16:22:33,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:33,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:22:33,671.671 INFO    ] No update needed
[2026-06-19 16:22:33,674.674 INFO    ] Checking for camera pi updates...
[2026-06-19 16:22:33,712.712 INFO    ] 200
[2026-06-19 16:22:33,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:33,756.756 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:22:33,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:22:33,788.788 INFO    ] No camera update needed
[2026-06-19 16:22:33,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:22:33,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:22:33,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:22:33,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:22:35,843.843 INFO    ] ================================================
[2026-06-19 16:22:35,858.858 INFO    ] Launching Daemon at Fri Jun 19 16:22:35 IST 2026
[2026-06-19 16:22:35,869.869 INFO    ] ================================================
[2026-06-19 16:22:36,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:22:36
[2026-06-19 16:22:37,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:22:37,275.275 INFO    ] Initializing speech engine...
[2026-06-19 16:22:37,280.280 INFO    ] 2026-06-19 16:22:37
[2026-06-19 16:22:37,582.582 INFO    ] 2026-06-19 16:22:37
[2026-06-19 16:22:37,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:22:37,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:22:37,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:22:37,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:22:37,972.972 INFO    ] time= 19/06/2026 16:22:37
[2026-06-19 16:22:37,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:22:38,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:22:38,099.099 INFO    ] No existing commands found in stream
[2026-06-19 16:22:43,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:22:43,110.110 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 16:22:44,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:22:44,043.043 INFO    ] Checking for system updates...
[2026-06-19 16:22:44,081.081 INFO    ] 200
[2026-06-19 16:22:44,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:44,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:22:44,139.139 INFO    ] No update needed
[2026-06-19 16:22:44,141.141 INFO    ] Checking for camera pi updates...
[2026-06-19 16:22:44,176.176 INFO    ] 200
[2026-06-19 16:22:44,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:44,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:22:44,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:22:44,269.269 INFO    ] No camera update needed
[2026-06-19 16:22:44,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:22:44,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:22:44,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:22:44,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:22:46,338.338 INFO    ] ================================================
[2026-06-19 16:22:46,353.353 INFO    ] Launching Daemon at Fri Jun 19 16:22:46 IST 2026
[2026-06-19 16:22:46,364.364 INFO    ] ================================================
[2026-06-19 16:22:46,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:22:46
[2026-06-19 16:22:47,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:22:47,820.820 INFO    ] Initializing speech engine...
[2026-06-19 16:22:47,839.839 INFO    ] 2026-06-19 16:22:47
[2026-06-19 16:22:48,090.090 INFO    ] 2026-06-19 16:22:48
[2026-06-19 16:22:48,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:22:48,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:22:48,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:22:48,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:22:48,458.458 INFO    ] time= 19/06/2026 16:22:48
[2026-06-19 16:22:48,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:22:48,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:22:48,639.639 INFO    ] No existing commands found in stream
[2026-06-19 16:22:53,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:22:53,667.667 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 16:22:57,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:22:57,516.516 INFO    ] Checking for system updates...
[2026-06-19 16:22:57,558.558 INFO    ] 200
[2026-06-19 16:22:57,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:57,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:22:57,624.624 INFO    ] No update needed
[2026-06-19 16:22:57,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 16:22:57,665.665 INFO    ] 200
[2026-06-19 16:22:57,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:22:57,709.709 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:22:57,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:22:57,765.765 INFO    ] No camera update needed
[2026-06-19 16:22:57,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:22:57,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:22:57,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:22:57,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:22:59,824.824 INFO    ] ================================================
[2026-06-19 16:22:59,840.840 INFO    ] Launching Daemon at Fri Jun 19 16:22:59 IST 2026
[2026-06-19 16:22:59,850.850 INFO    ] ================================================
[2026-06-19 16:23:00,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:23:00
[2026-06-19 16:23:01,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:23:01,264.264 INFO    ] Initializing speech engine...
[2026-06-19 16:23:01,283.283 INFO    ] 2026-06-19 16:23:01
[2026-06-19 16:23:01,630.630 INFO    ] 2026-06-19 16:23:01
[2026-06-19 16:23:01,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:23:02,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:23:02,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:23:02,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:23:02,292.292 INFO    ] time= 19/06/2026 16:23:02
[2026-06-19 16:23:02,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:23:02,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:23:02,471.471 INFO    ] No existing commands found in stream
[2026-06-19 16:23:07,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:23:07,493.493 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 16:23:08,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:23:08,613.613 INFO    ] Checking for system updates...
[2026-06-19 16:23:08,650.650 INFO    ] 200
[2026-06-19 16:23:08,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:08,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:23:08,714.714 INFO    ] No update needed
[2026-06-19 16:23:08,717.717 INFO    ] Checking for camera pi updates...
[2026-06-19 16:23:08,751.751 INFO    ] 200
[2026-06-19 16:23:08,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:08,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:23:08,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:23:08,842.842 INFO    ] No camera update needed
[2026-06-19 16:23:08,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:23:08,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:23:08,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:23:08,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:23:10,900.900 INFO    ] ================================================
[2026-06-19 16:23:10,915.915 INFO    ] Launching Daemon at Fri Jun 19 16:23:10 IST 2026
[2026-06-19 16:23:10,926.926 INFO    ] ================================================
[2026-06-19 16:23:11,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:23:11
[2026-06-19 16:23:12,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:23:12,592.592 INFO    ] Initializing speech engine...
[2026-06-19 16:23:12,600.600 INFO    ] 2026-06-19 16:23:12
[2026-06-19 16:23:12,874.874 INFO    ] 2026-06-19 16:23:12
[2026-06-19 16:23:12,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:23:13,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:23:13,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:23:13,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:23:13,383.383 INFO    ] time= 19/06/2026 16:23:13
[2026-06-19 16:23:13,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:23:13,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:23:13,607.607 INFO    ] No existing commands found in stream
[2026-06-19 16:23:18,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:23:18,626.626 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 16:23:20,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:23:20,948.948 INFO    ] Checking for system updates...
[2026-06-19 16:23:20,987.987 INFO    ] 200
[2026-06-19 16:23:20,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:21,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:23:21,048.048 INFO    ] No update needed
[2026-06-19 16:23:21,051.051 INFO    ] Checking for camera pi updates...
[2026-06-19 16:23:21,086.086 INFO    ] 200
[2026-06-19 16:23:21,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:21,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:23:21,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:23:21,184.184 INFO    ] No camera update needed
[2026-06-19 16:23:21,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:23:21,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:23:21,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:23:21,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:23:23,240.240 INFO    ] ================================================
[2026-06-19 16:23:23,255.255 INFO    ] Launching Daemon at Fri Jun 19 16:23:23 IST 2026
[2026-06-19 16:23:23,266.266 INFO    ] ================================================
[2026-06-19 16:23:23,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:23:23
[2026-06-19 16:23:24,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:23:24,724.724 INFO    ] Initializing speech engine...
[2026-06-19 16:23:24,730.730 INFO    ] 2026-06-19 16:23:24
[2026-06-19 16:23:24,993.993 INFO    ] 2026-06-19 16:23:24
[2026-06-19 16:23:25,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:23:25,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:23:25,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:23:25,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:23:25,458.458 INFO    ] time= 19/06/2026 16:23:25
[2026-06-19 16:23:25,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:23:25,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:23:25,677.677 INFO    ] No existing commands found in stream
[2026-06-19 16:23:30,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:23:30,704.704 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 16:23:33,385.385 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:23:33,388.388 INFO    ] Checking for system updates...
[2026-06-19 16:23:33,429.429 INFO    ] 200
[2026-06-19 16:23:33,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:33,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:23:33,495.495 INFO    ] No update needed
[2026-06-19 16:23:33,498.498 INFO    ] Checking for camera pi updates...
[2026-06-19 16:23:33,532.532 INFO    ] 200
[2026-06-19 16:23:33,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:33,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:23:33,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:23:33,630.630 INFO    ] No camera update needed
[2026-06-19 16:23:33,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:23:33,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:23:33,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:23:33,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:23:35,688.688 INFO    ] ================================================
[2026-06-19 16:23:35,703.703 INFO    ] Launching Daemon at Fri Jun 19 16:23:35 IST 2026
[2026-06-19 16:23:35,714.714 INFO    ] ================================================
[2026-06-19 16:23:36,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:23:36
[2026-06-19 16:23:37,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:23:37,396.396 INFO    ] Initializing speech engine...
[2026-06-19 16:23:37,410.410 INFO    ] 2026-06-19 16:23:37
[2026-06-19 16:23:37,694.694 INFO    ] 2026-06-19 16:23:37
[2026-06-19 16:23:37,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:23:38,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:23:38,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:23:38,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:23:38,248.248 INFO    ] time= 19/06/2026 16:23:38
[2026-06-19 16:23:38,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:23:38,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:23:38,433.433 INFO    ] No existing commands found in stream
[2026-06-19 16:23:43,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:23:43,473.473 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 16:23:47,209.209 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:23:47,212.212 INFO    ] Checking for system updates...
[2026-06-19 16:23:47,255.255 INFO    ] 200
[2026-06-19 16:23:47,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:47,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:23:47,317.317 INFO    ] No update needed
[2026-06-19 16:23:47,320.320 INFO    ] Checking for camera pi updates...
[2026-06-19 16:23:47,360.360 INFO    ] 200
[2026-06-19 16:23:47,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:47,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:23:47,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:23:47,458.458 INFO    ] No camera update needed
[2026-06-19 16:23:47,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:23:47,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:23:47,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:23:47,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:23:49,517.517 INFO    ] ================================================
[2026-06-19 16:23:49,534.534 INFO    ] Launching Daemon at Fri Jun 19 16:23:49 IST 2026
[2026-06-19 16:23:49,545.545 INFO    ] ================================================
[2026-06-19 16:23:50,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:23:50
[2026-06-19 16:23:50,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:23:51,064.064 INFO    ] Initializing speech engine...
[2026-06-19 16:23:51,078.078 INFO    ] 2026-06-19 16:23:51
[2026-06-19 16:23:51,340.340 INFO    ] 2026-06-19 16:23:51
[2026-06-19 16:23:51,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:23:51,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:23:51,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:23:51,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:23:51,735.735 INFO    ] time= 19/06/2026 16:23:51
[2026-06-19 16:23:51,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:23:51,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:23:51,866.866 INFO    ] No existing commands found in stream
[2026-06-19 16:23:56,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:23:56,880.880 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 16:23:57,903.903 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:23:57,906.906 INFO    ] Checking for system updates...
[2026-06-19 16:23:57,943.943 INFO    ] 200
[2026-06-19 16:23:57,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:58,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:23:58,008.008 INFO    ] No update needed
[2026-06-19 16:23:58,011.011 INFO    ] Checking for camera pi updates...
[2026-06-19 16:23:58,044.044 INFO    ] 200
[2026-06-19 16:23:58,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:23:58,087.087 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:23:58,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:23:58,139.139 INFO    ] No camera update needed
[2026-06-19 16:23:58,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:23:58,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:23:58,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:23:58,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:24:00,196.196 INFO    ] ================================================
[2026-06-19 16:24:00,212.212 INFO    ] Launching Daemon at Fri Jun 19 16:24:00 IST 2026
[2026-06-19 16:24:00,224.224 INFO    ] ================================================
[2026-06-19 16:24:00,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:24:00
[2026-06-19 16:24:01,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:24:01,952.952 INFO    ] Initializing speech engine...
[2026-06-19 16:24:01,959.959 INFO    ] 2026-06-19 16:24:01
[2026-06-19 16:24:02,356.356 INFO    ] 2026-06-19 16:24:02
[2026-06-19 16:24:02,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:24:02,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:24:02,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:24:02,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:24:02,997.997 INFO    ] time= 19/06/2026 16:24:02
[2026-06-19 16:24:03,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:24:03,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:24:03,229.229 INFO    ] No existing commands found in stream
[2026-06-19 16:24:08,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:24:08,262.262 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 16:24:09,016.016 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:24:09,019.019 INFO    ] Checking for system updates...
[2026-06-19 16:24:09,058.058 INFO    ] 200
[2026-06-19 16:24:09,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:09,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:24:09,122.122 INFO    ] No update needed
[2026-06-19 16:24:09,125.125 INFO    ] Checking for camera pi updates...
[2026-06-19 16:24:09,160.160 INFO    ] 200
[2026-06-19 16:24:09,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:09,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:24:09,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:24:09,257.257 INFO    ] No camera update needed
[2026-06-19 16:24:09,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:24:09,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:24:09,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:24:09,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:24:11,312.312 INFO    ] ================================================
[2026-06-19 16:24:11,328.328 INFO    ] Launching Daemon at Fri Jun 19 16:24:11 IST 2026
[2026-06-19 16:24:11,340.340 INFO    ] ================================================
[2026-06-19 16:24:11,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:24:11
[2026-06-19 16:24:12,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:24:12,765.765 INFO    ] Initializing speech engine...
[2026-06-19 16:24:12,780.780 INFO    ] 2026-06-19 16:24:12
[2026-06-19 16:24:13,053.053 INFO    ] 2026-06-19 16:24:13
[2026-06-19 16:24:13,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:24:13,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:24:13,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:24:13,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:24:13,440.440 INFO    ] time= 19/06/2026 16:24:13
[2026-06-19 16:24:13,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:24:13,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:24:13,562.562 INFO    ] No existing commands found in stream
[2026-06-19 16:24:18,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:24:18,595.595 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 16:24:21,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:24:21,017.017 INFO    ] Checking for system updates...
[2026-06-19 16:24:21,053.053 INFO    ] 200
[2026-06-19 16:24:21,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:21,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:24:21,117.117 INFO    ] No update needed
[2026-06-19 16:24:21,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 16:24:21,154.154 INFO    ] 200
[2026-06-19 16:24:21,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:21,202.202 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:24:21,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:24:21,353.353 INFO    ] No camera update needed
[2026-06-19 16:24:21,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:24:21,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:24:21,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:24:21,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:24:23,409.409 INFO    ] ================================================
[2026-06-19 16:24:23,425.425 INFO    ] Launching Daemon at Fri Jun 19 16:24:23 IST 2026
[2026-06-19 16:24:23,436.436 INFO    ] ================================================
[2026-06-19 16:24:24,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:24:24
[2026-06-19 16:24:24,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:24:25,063.063 INFO    ] Initializing speech engine...
[2026-06-19 16:24:25,079.079 INFO    ] 2026-06-19 16:24:25
[2026-06-19 16:24:25,398.398 INFO    ] 2026-06-19 16:24:25
[2026-06-19 16:24:25,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:24:25,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:24:25,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:24:25,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:24:25,914.914 INFO    ] time= 19/06/2026 16:24:25
[2026-06-19 16:24:25,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:24:25,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:24:26,058.058 INFO    ] No existing commands found in stream
[2026-06-19 16:24:31,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:24:31,091.091 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 16:24:32,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:24:32,430.430 INFO    ] Checking for system updates...
[2026-06-19 16:24:32,470.470 INFO    ] 200
[2026-06-19 16:24:32,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:32,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:24:32,535.535 INFO    ] No update needed
[2026-06-19 16:24:32,538.538 INFO    ] Checking for camera pi updates...
[2026-06-19 16:24:32,584.584 INFO    ] 200
[2026-06-19 16:24:32,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:32,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:24:32,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:24:32,695.695 INFO    ] No camera update needed
[2026-06-19 16:24:32,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:24:32,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:24:32,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:24:32,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:24:34,752.752 INFO    ] ================================================
[2026-06-19 16:24:34,767.767 INFO    ] Launching Daemon at Fri Jun 19 16:24:34 IST 2026
[2026-06-19 16:24:34,779.779 INFO    ] ================================================
[2026-06-19 16:24:35,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:24:35
[2026-06-19 16:24:35,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:24:36,241.241 INFO    ] Initializing speech engine...
[2026-06-19 16:24:36,250.250 INFO    ] 2026-06-19 16:24:36
[2026-06-19 16:24:36,495.495 INFO    ] 2026-06-19 16:24:36
[2026-06-19 16:24:36,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:24:36,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:24:36,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:24:36,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:24:36,977.977 INFO    ] time= 19/06/2026 16:24:36
[2026-06-19 16:24:37,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:24:37,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:24:37,202.202 INFO    ] No existing commands found in stream
[2026-06-19 16:24:42,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:24:42,220.220 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 16:24:45,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:24:45,888.888 INFO    ] Checking for system updates...
[2026-06-19 16:24:45,924.924 INFO    ] 200
[2026-06-19 16:24:45,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:45,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:24:45,982.982 INFO    ] No update needed
[2026-06-19 16:24:45,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 16:24:46,018.018 INFO    ] 200
[2026-06-19 16:24:46,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:46,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:24:46,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:24:46,112.112 INFO    ] No camera update needed
[2026-06-19 16:24:46,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:24:46,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:24:46,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:24:46,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:24:48,169.169 INFO    ] ================================================
[2026-06-19 16:24:48,185.185 INFO    ] Launching Daemon at Fri Jun 19 16:24:48 IST 2026
[2026-06-19 16:24:48,196.196 INFO    ] ================================================
[2026-06-19 16:24:48,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:24:48
[2026-06-19 16:24:49,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:24:49,677.677 INFO    ] Initializing speech engine...
[2026-06-19 16:24:49,701.701 INFO    ] 2026-06-19 16:24:49
[2026-06-19 16:24:49,972.972 INFO    ] 2026-06-19 16:24:49
[2026-06-19 16:24:50,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:24:50,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:24:50,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:24:50,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:24:50,387.387 INFO    ] time= 19/06/2026 16:24:50
[2026-06-19 16:24:50,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:24:50,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:24:50,473.473 INFO    ] No existing commands found in stream
[2026-06-19 16:24:55,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:24:55,507.507 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 16:24:59,736.736 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:24:59,739.739 INFO    ] Checking for system updates...
[2026-06-19 16:24:59,779.779 INFO    ] 200
[2026-06-19 16:24:59,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:59,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:24:59,840.840 INFO    ] No update needed
[2026-06-19 16:24:59,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 16:24:59,878.878 INFO    ] 200
[2026-06-19 16:24:59,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:24:59,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:24:59,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:24:59,976.976 INFO    ] No camera update needed
[2026-06-19 16:24:59,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:24:59,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:24:59,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:24:59,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:25:02,053.053 INFO    ] ================================================
[2026-06-19 16:25:02,075.075 INFO    ] Launching Daemon at Fri Jun 19 16:25:02 IST 2026
[2026-06-19 16:25:02,094.094 INFO    ] ================================================
[2026-06-19 16:25:02,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:25:02
[2026-06-19 16:25:03,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:25:03,823.823 INFO    ] Initializing speech engine...
[2026-06-19 16:25:03,834.834 INFO    ] 2026-06-19 16:25:03
[2026-06-19 16:25:04,098.098 INFO    ] 2026-06-19 16:25:04
[2026-06-19 16:25:04,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:25:04,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:25:04,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:25:04,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:25:04,584.584 INFO    ] time= 19/06/2026 16:25:04
[2026-06-19 16:25:04,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:25:04,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:25:04,775.775 INFO    ] No existing commands found in stream
[2026-06-19 16:25:09,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:25:09,810.810 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 16:25:12,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:25:12,288.288 INFO    ] Checking for system updates...
[2026-06-19 16:25:12,324.324 INFO    ] 200
[2026-06-19 16:25:12,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:12,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:25:12,383.383 INFO    ] No update needed
[2026-06-19 16:25:12,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 16:25:12,420.420 INFO    ] 200
[2026-06-19 16:25:12,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:12,464.464 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:25:12,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:25:12,515.515 INFO    ] No camera update needed
[2026-06-19 16:25:12,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:25:12,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:25:12,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:25:12,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:25:14,571.571 INFO    ] ================================================
[2026-06-19 16:25:14,587.587 INFO    ] Launching Daemon at Fri Jun 19 16:25:14 IST 2026
[2026-06-19 16:25:14,598.598 INFO    ] ================================================
[2026-06-19 16:25:15,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:25:15
[2026-06-19 16:25:15,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:25:16,066.066 INFO    ] Initializing speech engine...
[2026-06-19 16:25:16,078.078 INFO    ] 2026-06-19 16:25:16
[2026-06-19 16:25:16,354.354 INFO    ] 2026-06-19 16:25:16
[2026-06-19 16:25:16,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:25:16,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:25:16,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:25:16,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:25:16,891.891 INFO    ] time= 19/06/2026 16:25:16
[2026-06-19 16:25:16,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:25:16,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:25:17,049.049 INFO    ] No existing commands found in stream
[2026-06-19 16:25:22,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:25:22,079.079 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 16:25:22,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:25:22,496.496 INFO    ] Checking for system updates...
[2026-06-19 16:25:22,536.536 INFO    ] 200
[2026-06-19 16:25:22,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:22,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:25:22,595.595 INFO    ] No update needed
[2026-06-19 16:25:22,597.597 INFO    ] Checking for camera pi updates...
[2026-06-19 16:25:22,631.631 INFO    ] 200
[2026-06-19 16:25:22,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:22,674.674 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:25:22,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:25:22,730.730 INFO    ] No camera update needed
[2026-06-19 16:25:22,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:25:22,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:25:22,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:25:22,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:25:24,785.785 INFO    ] ================================================
[2026-06-19 16:25:24,801.801 INFO    ] Launching Daemon at Fri Jun 19 16:25:24 IST 2026
[2026-06-19 16:25:24,812.812 INFO    ] ================================================
[2026-06-19 16:25:25,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:25:25
[2026-06-19 16:25:25,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:25:26,229.229 INFO    ] Initializing speech engine...
[2026-06-19 16:25:26,238.238 INFO    ] 2026-06-19 16:25:26
[2026-06-19 16:25:26,490.490 INFO    ] 2026-06-19 16:25:26
[2026-06-19 16:25:26,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:25:26,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:25:26,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:25:26,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:25:26,959.959 INFO    ] time= 19/06/2026 16:25:26
[2026-06-19 16:25:27,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:25:27,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:25:27,203.203 INFO    ] No existing commands found in stream
[2026-06-19 16:25:32,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:25:32,220.220 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 16:25:33,316.316 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:25:33,318.318 INFO    ] Checking for system updates...
[2026-06-19 16:25:33,355.355 INFO    ] 200
[2026-06-19 16:25:33,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:33,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:25:33,419.419 INFO    ] No update needed
[2026-06-19 16:25:33,421.421 INFO    ] Checking for camera pi updates...
[2026-06-19 16:25:33,454.454 INFO    ] 200
[2026-06-19 16:25:33,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:33,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:25:33,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:25:33,543.543 INFO    ] No camera update needed
[2026-06-19 16:25:33,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:25:33,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:25:33,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:25:33,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:25:35,599.599 INFO    ] ================================================
[2026-06-19 16:25:35,615.615 INFO    ] Launching Daemon at Fri Jun 19 16:25:35 IST 2026
[2026-06-19 16:25:35,626.626 INFO    ] ================================================
[2026-06-19 16:25:36,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:25:36
[2026-06-19 16:25:36,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:25:37,071.071 INFO    ] Initializing speech engine...
[2026-06-19 16:25:37,080.080 INFO    ] 2026-06-19 16:25:37
[2026-06-19 16:25:37,345.345 INFO    ] 2026-06-19 16:25:37
[2026-06-19 16:25:37,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:25:37,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:25:37,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:25:37,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:25:37,798.798 INFO    ] time= 19/06/2026 16:25:37
[2026-06-19 16:25:37,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:25:37,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:25:38,028.028 INFO    ] No existing commands found in stream
[2026-06-19 16:25:43,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:25:43,052.052 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 16:25:47,093.093 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:25:47,096.096 INFO    ] Checking for system updates...
[2026-06-19 16:25:47,134.134 INFO    ] 200
[2026-06-19 16:25:47,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:47,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:25:47,193.193 INFO    ] No update needed
[2026-06-19 16:25:47,196.196 INFO    ] Checking for camera pi updates...
[2026-06-19 16:25:47,233.233 INFO    ] 200
[2026-06-19 16:25:47,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:47,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:25:47,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:25:47,313.313 INFO    ] No camera update needed
[2026-06-19 16:25:47,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:25:47,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:25:47,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:25:47,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:25:49,369.369 INFO    ] ================================================
[2026-06-19 16:25:49,385.385 INFO    ] Launching Daemon at Fri Jun 19 16:25:49 IST 2026
[2026-06-19 16:25:49,396.396 INFO    ] ================================================
[2026-06-19 16:25:49,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:25:49
[2026-06-19 16:25:50,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:25:50,852.852 INFO    ] Initializing speech engine...
[2026-06-19 16:25:50,865.865 INFO    ] 2026-06-19 16:25:50
[2026-06-19 16:25:51,139.139 INFO    ] 2026-06-19 16:25:51
[2026-06-19 16:25:51,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:25:51,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:25:51,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:25:51,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:25:51,663.663 INFO    ] time= 19/06/2026 16:25:51
[2026-06-19 16:25:51,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:25:51,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:25:51,830.830 INFO    ] No existing commands found in stream
[2026-06-19 16:25:56,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:25:56,863.863 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 16:25:59,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:25:59,632.632 INFO    ] Checking for system updates...
[2026-06-19 16:25:59,669.669 INFO    ] 200
[2026-06-19 16:25:59,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:59,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:25:59,736.736 INFO    ] No update needed
[2026-06-19 16:25:59,738.738 INFO    ] Checking for camera pi updates...
[2026-06-19 16:25:59,772.772 INFO    ] 200
[2026-06-19 16:25:59,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:25:59,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:25:59,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:25:59,870.870 INFO    ] No camera update needed
[2026-06-19 16:25:59,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:25:59,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:25:59,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:25:59,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:26:01,935.935 INFO    ] ================================================
[2026-06-19 16:26:01,962.962 INFO    ] Launching Daemon at Fri Jun 19 16:26:01 IST 2026
[2026-06-19 16:26:01,978.978 INFO    ] ================================================
[2026-06-19 16:26:02,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:26:02
[2026-06-19 16:26:03,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:26:03,624.624 INFO    ] Initializing speech engine...
[2026-06-19 16:26:03,630.630 INFO    ] 2026-06-19 16:26:03
[2026-06-19 16:26:03,893.893 INFO    ] 2026-06-19 16:26:03
[2026-06-19 16:26:03,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:26:04,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:26:04,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:26:04,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:26:04,444.444 INFO    ] time= 19/06/2026 16:26:04
[2026-06-19 16:26:04,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:26:04,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:26:04,595.595 INFO    ] No existing commands found in stream
[2026-06-19 16:26:09,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:26:09,623.623 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 16:26:11,069.069 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:26:11,072.072 INFO    ] Checking for system updates...
[2026-06-19 16:26:11,111.111 INFO    ] 200
[2026-06-19 16:26:11,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:11,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:26:11,170.170 INFO    ] No update needed
[2026-06-19 16:26:11,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 16:26:11,211.211 INFO    ] 200
[2026-06-19 16:26:11,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:11,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:26:11,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:26:11,320.320 INFO    ] No camera update needed
[2026-06-19 16:26:11,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:26:11,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:26:11,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:26:11,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:26:13,377.377 INFO    ] ================================================
[2026-06-19 16:26:13,392.392 INFO    ] Launching Daemon at Fri Jun 19 16:26:13 IST 2026
[2026-06-19 16:26:13,404.404 INFO    ] ================================================
[2026-06-19 16:26:13,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:26:13
[2026-06-19 16:26:14,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:26:14,841.841 INFO    ] Initializing speech engine...
[2026-06-19 16:26:14,848.848 INFO    ] 2026-06-19 16:26:14
[2026-06-19 16:26:15,142.142 INFO    ] 2026-06-19 16:26:15
[2026-06-19 16:26:15,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:26:15,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:26:15,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:26:15,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:26:15,517.517 INFO    ] time= 19/06/2026 16:26:15
[2026-06-19 16:26:15,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:26:15,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:26:15,639.639 INFO    ] No existing commands found in stream
[2026-06-19 16:26:20,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:26:20,654.654 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 16:26:22,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:26:22,212.212 INFO    ] Checking for system updates...
[2026-06-19 16:26:22,250.250 INFO    ] 200
[2026-06-19 16:26:22,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:22,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:26:22,316.316 INFO    ] No update needed
[2026-06-19 16:26:22,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 16:26:22,353.353 INFO    ] 200
[2026-06-19 16:26:22,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:22,403.403 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:26:22,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:26:22,549.549 INFO    ] No camera update needed
[2026-06-19 16:26:22,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:26:22,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:26:22,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:26:22,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:26:24,607.607 INFO    ] ================================================
[2026-06-19 16:26:24,623.623 INFO    ] Launching Daemon at Fri Jun 19 16:26:24 IST 2026
[2026-06-19 16:26:24,634.634 INFO    ] ================================================
[2026-06-19 16:26:25,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:26:25
[2026-06-19 16:26:25,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:26:26,044.044 INFO    ] Initializing speech engine...
[2026-06-19 16:26:26,069.069 INFO    ] 2026-06-19 16:26:26
[2026-06-19 16:26:26,336.336 INFO    ] 2026-06-19 16:26:26
[2026-06-19 16:26:26,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:26:26,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:26:26,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:26:26,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:26:26,716.716 INFO    ] time= 19/06/2026 16:26:26
[2026-06-19 16:26:26,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:26:26,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:26:26,901.901 INFO    ] No existing commands found in stream
[2026-06-19 16:26:31,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:26:31,930.930 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 16:26:33,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:26:33,044.044 INFO    ] Checking for system updates...
[2026-06-19 16:26:33,084.084 INFO    ] 200
[2026-06-19 16:26:33,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:33,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:26:33,141.141 INFO    ] No update needed
[2026-06-19 16:26:33,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 16:26:33,177.177 INFO    ] 200
[2026-06-19 16:26:33,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:33,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:26:33,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:26:33,282.282 INFO    ] No camera update needed
[2026-06-19 16:26:33,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:26:33,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:26:33,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:26:33,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:26:35,338.338 INFO    ] ================================================
[2026-06-19 16:26:35,354.354 INFO    ] Launching Daemon at Fri Jun 19 16:26:35 IST 2026
[2026-06-19 16:26:35,365.365 INFO    ] ================================================
[2026-06-19 16:26:35,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:26:35
[2026-06-19 16:26:36,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:26:36,768.768 INFO    ] Initializing speech engine...
[2026-06-19 16:26:36,781.781 INFO    ] 2026-06-19 16:26:36
[2026-06-19 16:26:37,047.047 INFO    ] 2026-06-19 16:26:37
[2026-06-19 16:26:37,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:26:37,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:26:37,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:26:37,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:26:37,529.529 INFO    ] time= 19/06/2026 16:26:37
[2026-06-19 16:26:37,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:26:37,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:26:37,772.772 INFO    ] No existing commands found in stream
[2026-06-19 16:26:42,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:26:42,790.790 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 16:26:47,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:26:47,750.750 INFO    ] Checking for system updates...
[2026-06-19 16:26:47,787.787 INFO    ] 200
[2026-06-19 16:26:47,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:47,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:26:47,851.851 INFO    ] No update needed
[2026-06-19 16:26:47,853.853 INFO    ] Checking for camera pi updates...
[2026-06-19 16:26:47,887.887 INFO    ] 200
[2026-06-19 16:26:47,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:47,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:26:47,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:26:47,969.969 INFO    ] No camera update needed
[2026-06-19 16:26:47,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:26:47,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:26:47,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:26:47,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:26:50,024.024 INFO    ] ================================================
[2026-06-19 16:26:50,039.039 INFO    ] Launching Daemon at Fri Jun 19 16:26:50 IST 2026
[2026-06-19 16:26:50,050.050 INFO    ] ================================================
[2026-06-19 16:26:50,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:26:50
[2026-06-19 16:26:51,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:26:51,478.478 INFO    ] Initializing speech engine...
[2026-06-19 16:26:51,500.500 INFO    ] 2026-06-19 16:26:51
[2026-06-19 16:26:51,761.761 INFO    ] 2026-06-19 16:26:51
[2026-06-19 16:26:51,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:26:52,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:26:52,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:26:52,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:26:52,265.265 INFO    ] time= 19/06/2026 16:26:52
[2026-06-19 16:26:52,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:26:52,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:26:52,482.482 INFO    ] No existing commands found in stream
[2026-06-19 16:26:57,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:26:57,499.499 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 16:26:58,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:26:58,704.704 INFO    ] Checking for system updates...
[2026-06-19 16:26:58,743.743 INFO    ] 200
[2026-06-19 16:26:58,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:58,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:26:58,802.802 INFO    ] No update needed
[2026-06-19 16:26:58,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 16:26:58,837.837 INFO    ] 200
[2026-06-19 16:26:58,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:26:58,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:26:58,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:26:58,932.932 INFO    ] No camera update needed
[2026-06-19 16:26:58,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:26:58,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:26:58,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:26:58,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:27:00,987.987 INFO    ] ================================================
[2026-06-19 16:27:01,003.003 INFO    ] Launching Daemon at Fri Jun 19 16:27:00 IST 2026
[2026-06-19 16:27:01,014.014 INFO    ] ================================================
[2026-06-19 16:27:01,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:27:01
[2026-06-19 16:27:02,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:27:02,711.711 INFO    ] Initializing speech engine...
[2026-06-19 16:27:02,722.722 INFO    ] 2026-06-19 16:27:02
[2026-06-19 16:27:03,074.074 INFO    ] 2026-06-19 16:27:03
[2026-06-19 16:27:03,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:27:03,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:27:03,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:27:03,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:27:03,559.559 INFO    ] time= 19/06/2026 16:27:03
[2026-06-19 16:27:03,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:27:03,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:27:03,746.746 INFO    ] No existing commands found in stream
[2026-06-19 16:27:08,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:27:08,779.779 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 16:27:11,832.832 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:27:11,835.835 INFO    ] Checking for system updates...
[2026-06-19 16:27:11,872.872 INFO    ] 200
[2026-06-19 16:27:11,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:27:11,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:27:11,935.935 INFO    ] No update needed
[2026-06-19 16:27:11,938.938 INFO    ] Checking for camera pi updates...
[2026-06-19 16:27:11,974.974 INFO    ] 200
[2026-06-19 16:27:11,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:27:12,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:27:12,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:27:12,069.069 INFO    ] No camera update needed
[2026-06-19 16:27:12,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:27:12,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:27:12,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:27:12,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:27:14,127.127 INFO    ] ================================================
[2026-06-19 16:27:14,143.143 INFO    ] Launching Daemon at Fri Jun 19 16:27:14 IST 2026
[2026-06-19 16:27:14,153.153 INFO    ] ================================================
[2026-06-19 16:27:14,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:27:14
[2026-06-19 16:27:15,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:27:15,573.573 INFO    ] Initializing speech engine...
[2026-06-19 16:27:15,597.597 INFO    ] 2026-06-19 16:27:15
[2026-06-19 16:27:15,864.864 INFO    ] 2026-06-19 16:27:15
[2026-06-19 16:27:15,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:27:16,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:27:16,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:27:16,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:27:16,382.382 INFO    ] time= 19/06/2026 16:27:16
[2026-06-19 16:27:16,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:27:16,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:27:16,583.583 INFO    ] No existing commands found in stream
[2026-06-19 16:27:21,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:27:21,593.593 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 16:27:24,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:27:24,095.095 INFO    ] Checking for system updates...
[2026-06-19 16:27:24,132.132 INFO    ] 200
[2026-06-19 16:27:24,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:27:24,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:27:24,192.192 INFO    ] No update needed
[2026-06-19 16:27:24,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 16:27:24,233.233 INFO    ] 200
[2026-06-19 16:27:24,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:27:24,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:27:24,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:27:24,339.339 INFO    ] No camera update needed
[2026-06-19 16:27:24,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:27:24,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:27:24,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:27:24,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:27:26,397.397 INFO    ] ================================================
[2026-06-19 16:27:26,413.413 INFO    ] Launching Daemon at Fri Jun 19 16:27:26 IST 2026
[2026-06-19 16:27:26,423.423 INFO    ] ================================================
[2026-06-19 16:27:27,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:27:27
[2026-06-19 16:27:27,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:27:27,886.886 INFO    ] Initializing speech engine...
[2026-06-19 16:27:27,893.893 INFO    ] 2026-06-19 16:27:27
[2026-06-19 16:27:28,168.168 INFO    ] 2026-06-19 16:27:28
[2026-06-19 16:27:28,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:27:28,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:27:28,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:27:28,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:27:28,731.731 INFO    ] time= 19/06/2026 16:27:28
[2026-06-19 16:27:28,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:27:28,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:27:28,885.885 INFO    ] No existing commands found in stream
[2026-06-19 16:27:33,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:27:33,904.904 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 16:27:38,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:27:38,301.301 INFO    ] Checking for system updates...
[2026-06-19 16:27:38,338.338 INFO    ] 200
[2026-06-19 16:27:38,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:27:38,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:27:38,396.396 INFO    ] No update needed
[2026-06-19 16:27:38,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 16:27:38,433.433 INFO    ] 200
[2026-06-19 16:27:38,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:27:38,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:27:38,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:27:38,538.538 INFO    ] No camera update needed
[2026-06-19 16:27:38,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:27:38,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:27:38,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:27:38,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:27:40,595.595 INFO    ] ================================================
[2026-06-19 16:27:40,610.610 INFO    ] Launching Daemon at Fri Jun 19 16:27:40 IST 2026
[2026-06-19 16:27:40,621.621 INFO    ] ================================================
[2026-06-19 16:27:41,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:27:41
[2026-06-19 16:27:41,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:27:42,047.047 INFO    ] Initializing speech engine...
[2026-06-19 16:27:42,057.057 INFO    ] 2026-06-19 16:27:42
[2026-06-19 16:27:42,308.308 INFO    ] 2026-06-19 16:27:42
[2026-06-19 16:27:42,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:27:42,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:27:42,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:27:42,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:27:42,873.873 INFO    ] time= 19/06/2026 16:27:42
[2026-06-19 16:27:42,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:27:42,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:27:43,027.027 INFO    ] No existing commands found in stream
[2026-06-19 16:27:48,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:27:48,044.044 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 16:27:51,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:27:51,589.589 INFO    ] Checking for system updates...
[2026-06-19 16:27:51,629.629 INFO    ] 200
[2026-06-19 16:27:51,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:27:51,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:27:51,693.693 INFO    ] No update needed
[2026-06-19 16:27:51,696.696 INFO    ] Checking for camera pi updates...
[2026-06-19 16:27:51,746.746 INFO    ] 200
[2026-06-19 16:27:51,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:27:51,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:27:51,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:27:51,837.837 INFO    ] No camera update needed
[2026-06-19 16:27:51,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:27:51,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:27:51,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:27:51,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:27:53,897.897 INFO    ] ================================================
[2026-06-19 16:27:53,912.912 INFO    ] Launching Daemon at Fri Jun 19 16:27:53 IST 2026
[2026-06-19 16:27:53,923.923 INFO    ] ================================================
[2026-06-19 16:27:54,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:27:54
[2026-06-19 16:27:55,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:27:55,341.341 INFO    ] Initializing speech engine...
[2026-06-19 16:27:55,358.358 INFO    ] 2026-06-19 16:27:55
[2026-06-19 16:27:55,613.613 INFO    ] 2026-06-19 16:27:55
[2026-06-19 16:27:55,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:27:55,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:27:55,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:27:56,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:27:56,092.092 INFO    ] time= 19/06/2026 16:27:56
[2026-06-19 16:27:56,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:27:56,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:27:56,316.316 INFO    ] No existing commands found in stream
[2026-06-19 16:28:01,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:28:01,347.347 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 16:28:02,887.887 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:28:02,890.890 INFO    ] Checking for system updates...
[2026-06-19 16:28:02,942.942 INFO    ] 200
[2026-06-19 16:28:02,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:03,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:28:03,034.034 INFO    ] No update needed
[2026-06-19 16:28:03,038.038 INFO    ] Checking for camera pi updates...
[2026-06-19 16:28:03,082.082 INFO    ] 200
[2026-06-19 16:28:03,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:03,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:28:03,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:28:03,172.172 INFO    ] No camera update needed
[2026-06-19 16:28:03,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:28:03,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:28:03,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:28:03,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:28:05,234.234 INFO    ] ================================================
[2026-06-19 16:28:05,250.250 INFO    ] Launching Daemon at Fri Jun 19 16:28:05 IST 2026
[2026-06-19 16:28:05,261.261 INFO    ] ================================================
[2026-06-19 16:28:05,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:28:05
[2026-06-19 16:28:06,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:28:06,739.739 INFO    ] Initializing speech engine...
[2026-06-19 16:28:06,749.749 INFO    ] 2026-06-19 16:28:06
[2026-06-19 16:28:06,999.999 INFO    ] 2026-06-19 16:28:06
[2026-06-19 16:28:07,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:28:07,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:28:07,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:28:07,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:28:07,476.476 INFO    ] time= 19/06/2026 16:28:07
[2026-06-19 16:28:07,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:28:07,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:28:07,697.697 INFO    ] No existing commands found in stream
[2026-06-19 16:28:12,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:28:12,720.720 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 16:28:14,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:28:14,318.318 INFO    ] Checking for system updates...
[2026-06-19 16:28:14,355.355 INFO    ] 200
[2026-06-19 16:28:14,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:14,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:28:14,412.412 INFO    ] No update needed
[2026-06-19 16:28:14,415.415 INFO    ] Checking for camera pi updates...
[2026-06-19 16:28:14,449.449 INFO    ] 200
[2026-06-19 16:28:14,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:14,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:28:14,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:28:14,544.544 INFO    ] No camera update needed
[2026-06-19 16:28:14,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:28:14,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:28:14,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:28:14,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:28:16,599.599 INFO    ] ================================================
[2026-06-19 16:28:16,615.615 INFO    ] Launching Daemon at Fri Jun 19 16:28:16 IST 2026
[2026-06-19 16:28:16,626.626 INFO    ] ================================================
[2026-06-19 16:28:17,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:28:17
[2026-06-19 16:28:17,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:28:18,045.045 INFO    ] Initializing speech engine...
[2026-06-19 16:28:18,059.059 INFO    ] 2026-06-19 16:28:18
[2026-06-19 16:28:18,340.340 INFO    ] 2026-06-19 16:28:18
[2026-06-19 16:28:18,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:28:18,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:28:18,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:28:18,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:28:18,868.868 INFO    ] time= 19/06/2026 16:28:18
[2026-06-19 16:28:18,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:28:18,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:28:19,102.102 INFO    ] No existing commands found in stream
[2026-06-19 16:28:24,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:28:24,122.122 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 16:28:25,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:28:25,814.814 INFO    ] Checking for system updates...
[2026-06-19 16:28:25,850.850 INFO    ] 200
[2026-06-19 16:28:25,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:25,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:28:25,908.908 INFO    ] No update needed
[2026-06-19 16:28:25,911.911 INFO    ] Checking for camera pi updates...
[2026-06-19 16:28:25,946.946 INFO    ] 200
[2026-06-19 16:28:25,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:25,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:28:26,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:28:26,140.140 INFO    ] No camera update needed
[2026-06-19 16:28:26,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:28:26,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:28:26,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:28:26,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:28:28,196.196 INFO    ] ================================================
[2026-06-19 16:28:28,212.212 INFO    ] Launching Daemon at Fri Jun 19 16:28:28 IST 2026
[2026-06-19 16:28:28,223.223 INFO    ] ================================================
[2026-06-19 16:28:28,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:28:28
[2026-06-19 16:28:29,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:28:29,828.828 INFO    ] Initializing speech engine...
[2026-06-19 16:28:29,836.836 INFO    ] 2026-06-19 16:28:29
[2026-06-19 16:28:30,124.124 INFO    ] 2026-06-19 16:28:30
[2026-06-19 16:28:30,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:28:30,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:28:30,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:28:30,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:28:30,676.676 INFO    ] time= 19/06/2026 16:28:30
[2026-06-19 16:28:30,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:28:30,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:28:30,834.834 INFO    ] No existing commands found in stream
[2026-06-19 16:28:35,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:28:35,852.852 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-19 16:28:38,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:28:38,888.888 INFO    ] Checking for system updates...
[2026-06-19 16:28:38,925.925 INFO    ] 200
[2026-06-19 16:28:38,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:38,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:28:38,985.985 INFO    ] No update needed
[2026-06-19 16:28:38,988.988 INFO    ] Checking for camera pi updates...
[2026-06-19 16:28:39,023.023 INFO    ] 200
[2026-06-19 16:28:39,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:39,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:28:39,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:28:39,124.124 INFO    ] No camera update needed
[2026-06-19 16:28:39,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:28:39,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:28:39,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:28:39,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:28:41,185.185 INFO    ] ================================================
[2026-06-19 16:28:41,201.201 INFO    ] Launching Daemon at Fri Jun 19 16:28:41 IST 2026
[2026-06-19 16:28:41,212.212 INFO    ] ================================================
[2026-06-19 16:28:41,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:28:41
[2026-06-19 16:28:42,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:28:42,856.856 INFO    ] Initializing speech engine...
[2026-06-19 16:28:42,870.870 INFO    ] 2026-06-19 16:28:42
[2026-06-19 16:28:43,183.183 INFO    ] 2026-06-19 16:28:43
[2026-06-19 16:28:43,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:28:43,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:28:43,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:28:43,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:28:43,703.703 INFO    ] time= 19/06/2026 16:28:43
[2026-06-19 16:28:43,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:28:43,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:28:43,868.868 INFO    ] No existing commands found in stream
[2026-06-19 16:28:48,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:28:48,896.896 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 16:28:52,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:28:52,570.570 INFO    ] Checking for system updates...
[2026-06-19 16:28:52,608.608 INFO    ] 200
[2026-06-19 16:28:52,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:52,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:28:52,667.667 INFO    ] No update needed
[2026-06-19 16:28:52,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 16:28:52,705.705 INFO    ] 200
[2026-06-19 16:28:52,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:28:52,749.749 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:28:52,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:28:52,798.798 INFO    ] No camera update needed
[2026-06-19 16:28:52,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:28:52,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:28:52,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:28:52,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:28:54,859.859 INFO    ] ================================================
[2026-06-19 16:28:54,874.874 INFO    ] Launching Daemon at Fri Jun 19 16:28:54 IST 2026
[2026-06-19 16:28:54,885.885 INFO    ] ================================================
[2026-06-19 16:28:55,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:28:55
[2026-06-19 16:28:56,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:28:56,523.523 INFO    ] Initializing speech engine...
[2026-06-19 16:28:56,530.530 INFO    ] 2026-06-19 16:28:56
[2026-06-19 16:28:56,822.822 INFO    ] 2026-06-19 16:28:56
[2026-06-19 16:28:56,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:28:57,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:28:57,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:28:57,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:28:57,306.306 INFO    ] time= 19/06/2026 16:28:57
[2026-06-19 16:28:57,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:28:57,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:28:57,512.512 INFO    ] No existing commands found in stream
[2026-06-19 16:29:02,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:29:02,545.545 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 16:29:04,724.724 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:29:04,727.727 INFO    ] Checking for system updates...
[2026-06-19 16:29:04,766.766 INFO    ] 200
[2026-06-19 16:29:04,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:04,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:29:04,833.833 INFO    ] No update needed
[2026-06-19 16:29:04,836.836 INFO    ] Checking for camera pi updates...
[2026-06-19 16:29:04,876.876 INFO    ] 200
[2026-06-19 16:29:04,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:04,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:29:04,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:29:04,969.969 INFO    ] No camera update needed
[2026-06-19 16:29:04,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:29:04,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:29:04,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:29:04,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:29:07,029.029 INFO    ] ================================================
[2026-06-19 16:29:07,046.046 INFO    ] Launching Daemon at Fri Jun 19 16:29:07 IST 2026
[2026-06-19 16:29:07,058.058 INFO    ] ================================================
[2026-06-19 16:29:07,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:29:07
[2026-06-19 16:29:08,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:29:08,462.462 INFO    ] Initializing speech engine...
[2026-06-19 16:29:08,474.474 INFO    ] 2026-06-19 16:29:08
[2026-06-19 16:29:08,740.740 INFO    ] 2026-06-19 16:29:08
[2026-06-19 16:29:08,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:29:08,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:29:09,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:29:09,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:29:09,270.270 INFO    ] time= 19/06/2026 16:29:09
[2026-06-19 16:29:09,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:29:09,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:29:09,458.458 INFO    ] No existing commands found in stream
[2026-06-19 16:29:14,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:29:14,478.478 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 16:29:18,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:29:18,629.629 INFO    ] Checking for system updates...
[2026-06-19 16:29:18,665.665 INFO    ] 200
[2026-06-19 16:29:18,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:18,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:29:18,722.722 INFO    ] No update needed
[2026-06-19 16:29:18,725.725 INFO    ] Checking for camera pi updates...
[2026-06-19 16:29:18,759.759 INFO    ] 200
[2026-06-19 16:29:18,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:18,803.803 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:29:18,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:29:18,848.848 INFO    ] No camera update needed
[2026-06-19 16:29:18,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:29:18,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:29:18,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:29:18,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:29:20,905.905 INFO    ] ================================================
[2026-06-19 16:29:20,921.921 INFO    ] Launching Daemon at Fri Jun 19 16:29:20 IST 2026
[2026-06-19 16:29:20,932.932 INFO    ] ================================================
[2026-06-19 16:29:21,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:29:21
[2026-06-19 16:29:22,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:29:22,580.580 INFO    ] Initializing speech engine...
[2026-06-19 16:29:22,591.591 INFO    ] 2026-06-19 16:29:22
[2026-06-19 16:29:22,871.871 INFO    ] 2026-06-19 16:29:22
[2026-06-19 16:29:22,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:29:23,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:29:23,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:29:23,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:29:23,433.433 INFO    ] time= 19/06/2026 16:29:23
[2026-06-19 16:29:23,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:29:23,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:29:23,596.596 INFO    ] No existing commands found in stream
[2026-06-19 16:29:28,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:29:28,627.627 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 16:29:30,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:29:30,699.699 INFO    ] Checking for system updates...
[2026-06-19 16:29:30,737.737 INFO    ] 200
[2026-06-19 16:29:30,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:30,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:29:30,796.796 INFO    ] No update needed
[2026-06-19 16:29:30,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 16:29:30,834.834 INFO    ] 200
[2026-06-19 16:29:30,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:30,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:29:30,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:29:30,941.941 INFO    ] No camera update needed
[2026-06-19 16:29:30,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:29:30,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:29:30,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:29:30,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:29:33,001.001 INFO    ] ================================================
[2026-06-19 16:29:33,016.016 INFO    ] Launching Daemon at Fri Jun 19 16:29:33 IST 2026
[2026-06-19 16:29:33,032.032 INFO    ] ================================================
[2026-06-19 16:29:33,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:29:33
[2026-06-19 16:29:34,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:29:34,490.490 INFO    ] Initializing speech engine...
[2026-06-19 16:29:34,505.505 INFO    ] 2026-06-19 16:29:34
[2026-06-19 16:29:34,797.797 INFO    ] 2026-06-19 16:29:34
[2026-06-19 16:29:34,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:29:35,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:29:35,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:29:35,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:29:35,195.195 INFO    ] time= 19/06/2026 16:29:35
[2026-06-19 16:29:35,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:29:35,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:29:35,318.318 INFO    ] No existing commands found in stream
[2026-06-19 16:29:40,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:29:40,333.333 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 16:29:42,556.556 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:29:42,558.558 INFO    ] Checking for system updates...
[2026-06-19 16:29:42,595.595 INFO    ] 200
[2026-06-19 16:29:42,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:42,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:29:42,652.652 INFO    ] No update needed
[2026-06-19 16:29:42,654.654 INFO    ] Checking for camera pi updates...
[2026-06-19 16:29:42,688.688 INFO    ] 200
[2026-06-19 16:29:42,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:42,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:29:42,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:29:42,786.786 INFO    ] No camera update needed
[2026-06-19 16:29:42,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:29:42,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:29:42,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:29:42,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:29:44,843.843 INFO    ] ================================================
[2026-06-19 16:29:44,858.858 INFO    ] Launching Daemon at Fri Jun 19 16:29:44 IST 2026
[2026-06-19 16:29:44,869.869 INFO    ] ================================================
[2026-06-19 16:29:45,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:29:45
[2026-06-19 16:29:46,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:29:46,320.320 INFO    ] Initializing speech engine...
[2026-06-19 16:29:46,329.329 INFO    ] 2026-06-19 16:29:46
[2026-06-19 16:29:46,591.591 INFO    ] 2026-06-19 16:29:46
[2026-06-19 16:29:46,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:29:46,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:29:46,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:29:47,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:29:47,047.047 INFO    ] time= 19/06/2026 16:29:47
[2026-06-19 16:29:47,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:29:47,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:29:47,281.281 INFO    ] No existing commands found in stream
[2026-06-19 16:29:52,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:29:52,300.300 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 16:29:52,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:29:52,896.896 INFO    ] Checking for system updates...
[2026-06-19 16:29:52,932.932 INFO    ] 200
[2026-06-19 16:29:52,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:52,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:29:52,993.993 INFO    ] No update needed
[2026-06-19 16:29:52,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 16:29:53,030.030 INFO    ] 200
[2026-06-19 16:29:53,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:29:53,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:29:53,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:29:53,123.123 INFO    ] No camera update needed
[2026-06-19 16:29:53,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:29:53,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:29:53,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:29:53,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:29:55,180.180 INFO    ] ================================================
[2026-06-19 16:29:55,196.196 INFO    ] Launching Daemon at Fri Jun 19 16:29:55 IST 2026
[2026-06-19 16:29:55,207.207 INFO    ] ================================================
[2026-06-19 16:29:55,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:29:55
[2026-06-19 16:29:56,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:29:56,878.878 INFO    ] Initializing speech engine...
[2026-06-19 16:29:56,891.891 INFO    ] 2026-06-19 16:29:56
[2026-06-19 16:29:57,187.187 INFO    ] 2026-06-19 16:29:57
[2026-06-19 16:29:57,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:29:57,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:29:57,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:29:57,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:29:57,734.734 INFO    ] time= 19/06/2026 16:29:57
[2026-06-19 16:29:57,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:29:57,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:29:57,918.918 INFO    ] No existing commands found in stream
[2026-06-19 16:30:02,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:30:02,959.959 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 16:30:08,403.403 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:30:08,406.406 INFO    ] Checking for system updates...
[2026-06-19 16:30:08,444.444 INFO    ] 200
[2026-06-19 16:30:08,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:08,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:30:08,505.505 INFO    ] No update needed
[2026-06-19 16:30:08,507.507 INFO    ] Checking for camera pi updates...
[2026-06-19 16:30:08,542.542 INFO    ] 200
[2026-06-19 16:30:08,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:08,587.587 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:30:08,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:30:08,642.642 INFO    ] No camera update needed
[2026-06-19 16:30:08,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:30:08,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:30:08,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:30:08,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:30:10,698.698 INFO    ] ================================================
[2026-06-19 16:30:10,714.714 INFO    ] Launching Daemon at Fri Jun 19 16:30:10 IST 2026
[2026-06-19 16:30:10,725.725 INFO    ] ================================================
[2026-06-19 16:30:11,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:30:11
[2026-06-19 16:30:11,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:30:12,234.234 INFO    ] Initializing speech engine...
[2026-06-19 16:30:12,240.240 INFO    ] 2026-06-19 16:30:12
[2026-06-19 16:30:12,560.560 INFO    ] 2026-06-19 16:30:12
[2026-06-19 16:30:12,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:30:12,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:30:12,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:30:13,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:30:13,083.083 INFO    ] time= 19/06/2026 16:30:13
[2026-06-19 16:30:13,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:30:13,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:30:13,267.267 INFO    ] No existing commands found in stream
[2026-06-19 16:30:18,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:30:18,301.301 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 16:30:22,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:30:22,308.308 INFO    ] Checking for system updates...
[2026-06-19 16:30:22,345.345 INFO    ] 200
[2026-06-19 16:30:22,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:22,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:30:22,402.402 INFO    ] No update needed
[2026-06-19 16:30:22,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 16:30:22,443.443 INFO    ] 200
[2026-06-19 16:30:22,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:22,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:30:22,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:30:22,550.550 INFO    ] No camera update needed
[2026-06-19 16:30:22,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:30:22,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:30:22,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:30:22,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:30:24,607.607 INFO    ] ================================================
[2026-06-19 16:30:24,622.622 INFO    ] Launching Daemon at Fri Jun 19 16:30:24 IST 2026
[2026-06-19 16:30:24,634.634 INFO    ] ================================================
[2026-06-19 16:30:25,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:30:25
[2026-06-19 16:30:25,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:30:26,064.064 INFO    ] Initializing speech engine...
[2026-06-19 16:30:26,073.073 INFO    ] 2026-06-19 16:30:26
[2026-06-19 16:30:26,373.373 INFO    ] 2026-06-19 16:30:26
[2026-06-19 16:30:26,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:30:26,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:30:26,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:30:26,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:30:26,793.793 INFO    ] time= 19/06/2026 16:30:26
[2026-06-19 16:30:26,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:30:26,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:30:26,891.891 INFO    ] No existing commands found in stream
[2026-06-19 16:30:31,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:30:31,920.920 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 16:30:35,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:30:35,109.109 INFO    ] Checking for system updates...
[2026-06-19 16:30:35,146.146 INFO    ] 200
[2026-06-19 16:30:35,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:35,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:30:35,203.203 INFO    ] No update needed
[2026-06-19 16:30:35,205.205 INFO    ] Checking for camera pi updates...
[2026-06-19 16:30:35,240.240 INFO    ] 200
[2026-06-19 16:30:35,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:35,284.284 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:30:35,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:30:35,328.328 INFO    ] No camera update needed
[2026-06-19 16:30:35,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:30:35,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:30:35,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:30:35,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:30:37,384.384 INFO    ] ================================================
[2026-06-19 16:30:37,400.400 INFO    ] Launching Daemon at Fri Jun 19 16:30:37 IST 2026
[2026-06-19 16:30:37,411.411 INFO    ] ================================================
[2026-06-19 16:30:38,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:30:38
[2026-06-19 16:30:38,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:30:39,086.086 INFO    ] Initializing speech engine...
[2026-06-19 16:30:39,099.099 INFO    ] 2026-06-19 16:30:39
[2026-06-19 16:30:39,385.385 INFO    ] 2026-06-19 16:30:39
[2026-06-19 16:30:39,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:30:39,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:30:39,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:30:39,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:30:39,839.839 INFO    ] time= 19/06/2026 16:30:39
[2026-06-19 16:30:39,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:30:39,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:30:40,075.075 INFO    ] No existing commands found in stream
[2026-06-19 16:30:45,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:30:45,097.097 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 16:30:47,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:30:47,585.585 INFO    ] Checking for system updates...
[2026-06-19 16:30:47,621.621 INFO    ] 200
[2026-06-19 16:30:47,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:47,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:30:47,679.679 INFO    ] No update needed
[2026-06-19 16:30:47,681.681 INFO    ] Checking for camera pi updates...
[2026-06-19 16:30:47,720.720 INFO    ] 200
[2026-06-19 16:30:47,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:47,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:30:47,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:30:47,811.811 INFO    ] No camera update needed
[2026-06-19 16:30:47,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:30:47,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:30:47,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:30:47,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:30:49,866.866 INFO    ] ================================================
[2026-06-19 16:30:49,881.881 INFO    ] Launching Daemon at Fri Jun 19 16:30:49 IST 2026
[2026-06-19 16:30:49,895.895 INFO    ] ================================================
[2026-06-19 16:30:50,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:30:50
[2026-06-19 16:30:51,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:30:51,308.308 INFO    ] Initializing speech engine...
[2026-06-19 16:30:51,325.325 INFO    ] 2026-06-19 16:30:51
[2026-06-19 16:30:51,613.613 INFO    ] 2026-06-19 16:30:51
[2026-06-19 16:30:51,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:30:51,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:30:51,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:30:52,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:30:52,042.042 INFO    ] time= 19/06/2026 16:30:52
[2026-06-19 16:30:52,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:30:52,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:30:52,131.131 INFO    ] No existing commands found in stream
[2026-06-19 16:30:57,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:30:57,169.169 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 16:30:57,746.746 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:30:57,748.748 INFO    ] Checking for system updates...
[2026-06-19 16:30:57,784.784 INFO    ] 200
[2026-06-19 16:30:57,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:57,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:30:57,843.843 INFO    ] No update needed
[2026-06-19 16:30:57,845.845 INFO    ] Checking for camera pi updates...
[2026-06-19 16:30:57,879.879 INFO    ] 200
[2026-06-19 16:30:57,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:30:57,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:30:57,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:30:57,974.974 INFO    ] No camera update needed
[2026-06-19 16:30:57,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:30:57,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:30:57,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:30:57,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:31:00,029.029 INFO    ] ================================================
[2026-06-19 16:31:00,044.044 INFO    ] Launching Daemon at Fri Jun 19 16:31:00 IST 2026
[2026-06-19 16:31:00,056.056 INFO    ] ================================================
[2026-06-19 16:31:00,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:31:00
[2026-06-19 16:31:01,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:31:01,499.499 INFO    ] Initializing speech engine...
[2026-06-19 16:31:01,505.505 INFO    ] 2026-06-19 16:31:01
[2026-06-19 16:31:01,807.807 INFO    ] 2026-06-19 16:31:01
[2026-06-19 16:31:01,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:31:02,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:31:02,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:31:02,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:31:02,216.216 INFO    ] time= 19/06/2026 16:31:02
[2026-06-19 16:31:02,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:31:02,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:31:02,301.301 INFO    ] No existing commands found in stream
[2026-06-19 16:31:07,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:31:07,316.316 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 16:31:11,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:31:11,491.491 INFO    ] Checking for system updates...
[2026-06-19 16:31:11,529.529 INFO    ] 200
[2026-06-19 16:31:11,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:31:11,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:31:11,591.591 INFO    ] No update needed
[2026-06-19 16:31:11,594.594 INFO    ] Checking for camera pi updates...
[2026-06-19 16:31:11,630.630 INFO    ] 200
[2026-06-19 16:31:11,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:31:11,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:31:11,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:31:11,723.723 INFO    ] No camera update needed
[2026-06-19 16:31:11,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:31:11,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:31:11,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:31:11,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:31:13,784.784 INFO    ] ================================================
[2026-06-19 16:31:13,799.799 INFO    ] Launching Daemon at Fri Jun 19 16:31:13 IST 2026
[2026-06-19 16:31:13,810.810 INFO    ] ================================================
[2026-06-19 16:31:14,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:31:14
[2026-06-19 16:31:14,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:31:15,228.228 INFO    ] Initializing speech engine...
[2026-06-19 16:31:15,242.242 INFO    ] 2026-06-19 16:31:15
[2026-06-19 16:31:15,509.509 INFO    ] 2026-06-19 16:31:15
[2026-06-19 16:31:15,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:31:15,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:31:15,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:31:15,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:31:15,992.992 INFO    ] time= 19/06/2026 16:31:15
[2026-06-19 16:31:16,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:31:16,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:31:16,218.218 INFO    ] No existing commands found in stream
[2026-06-19 16:31:21,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:31:21,247.247 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 16:31:22,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:31:22,758.758 INFO    ] Checking for system updates...
[2026-06-19 16:31:22,797.797 INFO    ] 200
[2026-06-19 16:31:22,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:31:22,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:31:22,864.864 INFO    ] No update needed
[2026-06-19 16:31:22,867.867 INFO    ] Checking for camera pi updates...
[2026-06-19 16:31:22,906.906 INFO    ] 200
[2026-06-19 16:31:22,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:31:22,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:31:22,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:31:22,985.985 INFO    ] No camera update needed
[2026-06-19 16:31:22,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:31:22,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:31:22,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:31:23,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:31:25,045.045 INFO    ] ================================================
[2026-06-19 16:31:25,061.061 INFO    ] Launching Daemon at Fri Jun 19 16:31:25 IST 2026
[2026-06-19 16:31:25,071.071 INFO    ] ================================================
[2026-06-19 16:31:25,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:31:25
[2026-06-19 16:31:26,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:31:26,721.721 INFO    ] Initializing speech engine...
[2026-06-19 16:31:26,730.730 INFO    ] 2026-06-19 16:31:26
[2026-06-19 16:31:27,051.051 INFO    ] 2026-06-19 16:31:27
[2026-06-19 16:31:27,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:31:27,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:31:27,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:31:27,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:31:27,578.578 INFO    ] time= 19/06/2026 16:31:27
[2026-06-19 16:31:27,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:31:27,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:31:27,759.759 INFO    ] No existing commands found in stream
[2026-06-19 16:31:32,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:31:32,794.794 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 16:31:36,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:31:36,451.451 INFO    ] Checking for system updates...
[2026-06-19 16:31:36,489.489 INFO    ] 200
[2026-06-19 16:31:36,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:31:36,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:31:36,549.549 INFO    ] No update needed
[2026-06-19 16:31:36,551.551 INFO    ] Checking for camera pi updates...
[2026-06-19 16:31:36,587.587 INFO    ] 200
[2026-06-19 16:31:36,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:31:36,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:31:36,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:31:36,685.685 INFO    ] No camera update needed
[2026-06-19 16:31:36,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:31:36,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:31:36,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:31:36,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:31:38,746.746 INFO    ] ================================================
[2026-06-19 16:31:38,762.762 INFO    ] Launching Daemon at Fri Jun 19 16:31:38 IST 2026
[2026-06-19 16:31:38,772.772 INFO    ] ================================================
[2026-06-19 16:31:39,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:31:39
[2026-06-19 16:31:39,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:31:40,195.195 INFO    ] Initializing speech engine...
[2026-06-19 16:31:40,212.212 INFO    ] 2026-06-19 16:31:40
[2026-06-19 16:31:40,469.469 INFO    ] 2026-06-19 16:31:40
[2026-06-19 16:31:40,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:31:40,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:31:40,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:31:40,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:31:40,992.992 INFO    ] time= 19/06/2026 16:31:40
[2026-06-19 16:31:41,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:31:41,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:31:41,167.167 INFO    ] No existing commands found in stream
[2026-06-19 16:31:46,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:31:46,181.181 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 16:31:50,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:31:50,599.599 INFO    ] Checking for system updates...
[2026-06-19 16:31:50,638.638 INFO    ] 200
[2026-06-19 16:31:50,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:31:50,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:31:50,698.698 INFO    ] No update needed
[2026-06-19 16:31:50,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 16:31:50,736.736 INFO    ] 200
[2026-06-19 16:31:50,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:31:50,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:31:50,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:31:50,834.834 INFO    ] No camera update needed
[2026-06-19 16:31:50,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:31:50,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:31:50,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:31:50,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:31:52,896.896 INFO    ] ================================================
[2026-06-19 16:31:52,912.912 INFO    ] Launching Daemon at Fri Jun 19 16:31:52 IST 2026
[2026-06-19 16:31:52,923.923 INFO    ] ================================================
[2026-06-19 16:31:53,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:31:53
[2026-06-19 16:31:54,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:31:54,388.388 INFO    ] Initializing speech engine...
[2026-06-19 16:31:54,398.398 INFO    ] 2026-06-19 16:31:54
[2026-06-19 16:31:54,661.661 INFO    ] 2026-06-19 16:31:54
[2026-06-19 16:31:54,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:31:54,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:31:54,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:31:55,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:31:55,208.208 INFO    ] time= 19/06/2026 16:31:55
[2026-06-19 16:31:55,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:31:55,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:31:55,358.358 INFO    ] No existing commands found in stream
[2026-06-19 16:32:00,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:32:00,377.377 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 16:32:02,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:32:02,067.067 INFO    ] Checking for system updates...
[2026-06-19 16:32:02,128.128 INFO    ] 200
[2026-06-19 16:32:02,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:02,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:32:02,221.221 INFO    ] No update needed
[2026-06-19 16:32:02,224.224 INFO    ] Checking for camera pi updates...
[2026-06-19 16:32:02,291.291 INFO    ] 200
[2026-06-19 16:32:02,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:02,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:32:02,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:32:02,406.406 INFO    ] No camera update needed
[2026-06-19 16:32:02,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:32:02,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:32:02,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:32:02,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:32:04,470.470 INFO    ] ================================================
[2026-06-19 16:32:04,486.486 INFO    ] Launching Daemon at Fri Jun 19 16:32:04 IST 2026
[2026-06-19 16:32:04,498.498 INFO    ] ================================================
[2026-06-19 16:32:05,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:32:05
[2026-06-19 16:32:05,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:32:06,129.129 INFO    ] Initializing speech engine...
[2026-06-19 16:32:06,143.143 INFO    ] 2026-06-19 16:32:06
[2026-06-19 16:32:06,457.457 INFO    ] 2026-06-19 16:32:06
[2026-06-19 16:32:06,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:32:06,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:32:06,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:32:06,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:32:06,983.983 INFO    ] time= 19/06/2026 16:32:06
[2026-06-19 16:32:07,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:32:07,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:32:07,173.173 INFO    ] No existing commands found in stream
[2026-06-19 16:32:12,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:32:12,208.208 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 16:32:15,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:32:15,432.432 INFO    ] Checking for system updates...
[2026-06-19 16:32:15,475.475 INFO    ] 200
[2026-06-19 16:32:15,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:15,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:32:15,538.538 INFO    ] No update needed
[2026-06-19 16:32:15,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 16:32:15,577.577 INFO    ] 200
[2026-06-19 16:32:15,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:15,626.626 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:32:15,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:32:15,672.672 INFO    ] No camera update needed
[2026-06-19 16:32:15,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:32:15,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:32:15,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:32:15,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:32:17,732.732 INFO    ] ================================================
[2026-06-19 16:32:17,748.748 INFO    ] Launching Daemon at Fri Jun 19 16:32:17 IST 2026
[2026-06-19 16:32:17,760.760 INFO    ] ================================================
[2026-06-19 16:32:18,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:32:18
[2026-06-19 16:32:18,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:32:19,313.313 INFO    ] Initializing speech engine...
[2026-06-19 16:32:19,320.320 INFO    ] 2026-06-19 16:32:19
[2026-06-19 16:32:19,572.572 INFO    ] 2026-06-19 16:32:19
[2026-06-19 16:32:19,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:32:19,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:32:19,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:32:19,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:32:19,994.994 INFO    ] time= 19/06/2026 16:32:19
[2026-06-19 16:32:20,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:32:20,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:32:20,174.174 INFO    ] No existing commands found in stream
[2026-06-19 16:32:25,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:32:25,202.202 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 16:32:28,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:32:28,732.732 INFO    ] Checking for system updates...
[2026-06-19 16:32:28,770.770 INFO    ] 200
[2026-06-19 16:32:28,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:28,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:32:28,827.827 INFO    ] No update needed
[2026-06-19 16:32:28,830.830 INFO    ] Checking for camera pi updates...
[2026-06-19 16:32:28,864.864 INFO    ] 200
[2026-06-19 16:32:28,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:28,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:32:28,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:32:28,953.953 INFO    ] No camera update needed
[2026-06-19 16:32:28,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:32:28,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:32:28,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:32:28,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:32:31,008.008 INFO    ] ================================================
[2026-06-19 16:32:31,024.024 INFO    ] Launching Daemon at Fri Jun 19 16:32:31 IST 2026
[2026-06-19 16:32:31,035.035 INFO    ] ================================================
[2026-06-19 16:32:31,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:32:31
[2026-06-19 16:32:32,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:32:32,738.738 INFO    ] Initializing speech engine...
[2026-06-19 16:32:32,751.751 INFO    ] 2026-06-19 16:32:32
[2026-06-19 16:32:33,046.046 INFO    ] 2026-06-19 16:32:33
[2026-06-19 16:32:33,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:32:33,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:32:33,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:32:33,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:32:33,568.568 INFO    ] time= 19/06/2026 16:32:33
[2026-06-19 16:32:33,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:32:33,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:32:33,771.771 INFO    ] No existing commands found in stream
[2026-06-19 16:32:38,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:32:38,804.804 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 16:32:43,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:32:43,241.241 INFO    ] Checking for system updates...
[2026-06-19 16:32:43,278.278 INFO    ] 200
[2026-06-19 16:32:43,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:43,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:32:43,336.336 INFO    ] No update needed
[2026-06-19 16:32:43,339.339 INFO    ] Checking for camera pi updates...
[2026-06-19 16:32:43,376.376 INFO    ] 200
[2026-06-19 16:32:43,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:43,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:32:43,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:32:43,564.564 INFO    ] No camera update needed
[2026-06-19 16:32:43,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:32:43,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:32:43,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:32:43,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:32:45,620.620 INFO    ] ================================================
[2026-06-19 16:32:45,636.636 INFO    ] Launching Daemon at Fri Jun 19 16:32:45 IST 2026
[2026-06-19 16:32:45,648.648 INFO    ] ================================================
[2026-06-19 16:32:46,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:32:46
[2026-06-19 16:32:46,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:32:47,121.121 INFO    ] Initializing speech engine...
[2026-06-19 16:32:47,128.128 INFO    ] 2026-06-19 16:32:47
[2026-06-19 16:32:47,390.390 INFO    ] 2026-06-19 16:32:47
[2026-06-19 16:32:47,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:32:47,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:32:47,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:32:47,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:32:47,861.861 INFO    ] time= 19/06/2026 16:32:47
[2026-06-19 16:32:47,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:32:47,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:32:48,075.075 INFO    ] No existing commands found in stream
[2026-06-19 16:32:53,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:32:53,109.109 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 16:32:57,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:32:57,182.182 INFO    ] Checking for system updates...
[2026-06-19 16:32:57,223.223 INFO    ] 200
[2026-06-19 16:32:57,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:57,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:32:57,287.287 INFO    ] No update needed
[2026-06-19 16:32:57,289.289 INFO    ] Checking for camera pi updates...
[2026-06-19 16:32:57,324.324 INFO    ] 200
[2026-06-19 16:32:57,327.327 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:32:57,372.372 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:32:57,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:32:57,420.420 INFO    ] No camera update needed
[2026-06-19 16:32:57,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:32:57,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:32:57,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:32:57,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:32:59,477.477 INFO    ] ================================================
[2026-06-19 16:32:59,492.492 INFO    ] Launching Daemon at Fri Jun 19 16:32:59 IST 2026
[2026-06-19 16:32:59,503.503 INFO    ] ================================================
[2026-06-19 16:33:00,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:33:00
[2026-06-19 16:33:00,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:33:00,967.967 INFO    ] Initializing speech engine...
[2026-06-19 16:33:00,974.974 INFO    ] 2026-06-19 16:33:00
[2026-06-19 16:33:01,236.236 INFO    ] 2026-06-19 16:33:01
[2026-06-19 16:33:01,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:33:01,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:33:01,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:33:01,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:33:01,716.716 INFO    ] time= 19/06/2026 16:33:01
[2026-06-19 16:33:01,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:33:01,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:33:01,924.924 INFO    ] No existing commands found in stream
[2026-06-19 16:33:06,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:33:06,962.962 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 16:33:10,827.827 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:33:10,830.830 INFO    ] Checking for system updates...
[2026-06-19 16:33:10,871.871 INFO    ] 200
[2026-06-19 16:33:10,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:33:10,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:33:10,931.931 INFO    ] No update needed
[2026-06-19 16:33:10,934.934 INFO    ] Checking for camera pi updates...
[2026-06-19 16:33:10,969.969 INFO    ] 200
[2026-06-19 16:33:10,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:33:11,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:33:11,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:33:11,066.066 INFO    ] No camera update needed
[2026-06-19 16:33:11,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:33:11,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:33:11,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:33:11,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:33:13,124.124 INFO    ] ================================================
[2026-06-19 16:33:13,139.139 INFO    ] Launching Daemon at Fri Jun 19 16:33:13 IST 2026
[2026-06-19 16:33:13,151.151 INFO    ] ================================================
[2026-06-19 16:33:13,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:33:13
[2026-06-19 16:33:14,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:33:14,640.640 INFO    ] Initializing speech engine...
[2026-06-19 16:33:14,648.648 INFO    ] 2026-06-19 16:33:14
[2026-06-19 16:33:14,923.923 INFO    ] 2026-06-19 16:33:14
[2026-06-19 16:33:14,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:33:15,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:33:15,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:33:15,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:33:15,468.468 INFO    ] time= 19/06/2026 16:33:15
[2026-06-19 16:33:15,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:33:15,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:33:15,610.610 INFO    ] No existing commands found in stream
[2026-06-19 16:33:20,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:33:20,642.642 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 16:33:24,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:33:24,339.339 INFO    ] Checking for system updates...
[2026-06-19 16:33:24,376.376 INFO    ] 200
[2026-06-19 16:33:24,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:33:24,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:33:24,436.436 INFO    ] No update needed
[2026-06-19 16:33:24,442.442 INFO    ] Checking for camera pi updates...
[2026-06-19 16:33:24,478.478 INFO    ] 200
[2026-06-19 16:33:24,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:33:24,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:33:24,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:33:24,573.573 INFO    ] No camera update needed
[2026-06-19 16:33:24,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:33:24,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:33:24,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:33:24,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:33:26,629.629 INFO    ] ================================================
[2026-06-19 16:33:26,644.644 INFO    ] Launching Daemon at Fri Jun 19 16:33:26 IST 2026
[2026-06-19 16:33:26,656.656 INFO    ] ================================================
[2026-06-19 16:33:27,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:33:27
[2026-06-19 16:33:27,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:33:28,081.081 INFO    ] Initializing speech engine...
[2026-06-19 16:33:28,090.090 INFO    ] 2026-06-19 16:33:28
[2026-06-19 16:33:28,337.337 INFO    ] 2026-06-19 16:33:28
[2026-06-19 16:33:28,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:33:28,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:33:28,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:33:28,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:33:28,812.812 INFO    ] time= 19/06/2026 16:33:28
[2026-06-19 16:33:28,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:33:28,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:33:29,036.036 INFO    ] No existing commands found in stream
[2026-06-19 16:33:34,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:33:34,059.059 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 16:33:36,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:33:36,594.594 INFO    ] Checking for system updates...
[2026-06-19 16:33:36,635.635 INFO    ] 200
[2026-06-19 16:33:36,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:33:36,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:33:36,695.695 INFO    ] No update needed
[2026-06-19 16:33:36,698.698 INFO    ] Checking for camera pi updates...
[2026-06-19 16:33:36,734.734 INFO    ] 200
[2026-06-19 16:33:36,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:33:36,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:33:36,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:33:36,839.839 INFO    ] No camera update needed
[2026-06-19 16:33:36,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:33:36,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:33:36,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:33:36,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:33:38,902.902 INFO    ] ================================================
[2026-06-19 16:33:38,920.920 INFO    ] Launching Daemon at Fri Jun 19 16:33:38 IST 2026
[2026-06-19 16:33:38,932.932 INFO    ] ================================================
[2026-06-19 16:33:39,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:33:39
[2026-06-19 16:33:40,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:33:40,472.472 INFO    ] Initializing speech engine...
[2026-06-19 16:33:40,479.479 INFO    ] 2026-06-19 16:33:40
[2026-06-19 16:33:40,765.765 INFO    ] 2026-06-19 16:33:40
[2026-06-19 16:33:40,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:33:41,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:33:41,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:33:41,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:33:41,289.289 INFO    ] time= 19/06/2026 16:33:41
[2026-06-19 16:33:41,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:33:41,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:33:41,451.451 INFO    ] No existing commands found in stream
[2026-06-19 16:33:46,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:33:46,485.485 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 16:33:47,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:33:47,080.080 INFO    ] Checking for system updates...
[2026-06-19 16:33:47,120.120 INFO    ] 200
[2026-06-19 16:33:47,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:33:47,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:33:47,182.182 INFO    ] No update needed
[2026-06-19 16:33:47,185.185 INFO    ] Checking for camera pi updates...
[2026-06-19 16:33:47,220.220 INFO    ] 200
[2026-06-19 16:33:47,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:33:47,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:33:47,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:33:47,302.302 INFO    ] No camera update needed
[2026-06-19 16:33:47,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:33:47,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:33:47,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:33:47,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:33:49,361.361 INFO    ] ================================================
[2026-06-19 16:33:49,377.377 INFO    ] Launching Daemon at Fri Jun 19 16:33:49 IST 2026
[2026-06-19 16:33:49,387.387 INFO    ] ================================================
[2026-06-19 16:33:50,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:33:50
[2026-06-19 16:33:50,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:33:51,029.029 INFO    ] Initializing speech engine...
[2026-06-19 16:33:51,043.043 INFO    ] 2026-06-19 16:33:51
[2026-06-19 16:33:51,351.351 INFO    ] 2026-06-19 16:33:51
[2026-06-19 16:33:51,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:33:51,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:33:51,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:33:51,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:33:51,860.860 INFO    ] time= 19/06/2026 16:33:51
[2026-06-19 16:33:51,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:33:51,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:33:52,042.042 INFO    ] No existing commands found in stream
[2026-06-19 16:33:57,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:33:57,081.081 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 16:33:59,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:33:59,883.883 INFO    ] Checking for system updates...
[2026-06-19 16:33:59,921.921 INFO    ] 200
[2026-06-19 16:33:59,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:33:59,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:33:59,982.982 INFO    ] No update needed
[2026-06-19 16:33:59,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 16:34:00,024.024 INFO    ] 200
[2026-06-19 16:34:00,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:00,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:34:00,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:34:00,114.114 INFO    ] No camera update needed
[2026-06-19 16:34:00,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:34:00,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:34:00,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:34:00,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:34:02,177.177 INFO    ] ================================================
[2026-06-19 16:34:02,208.208 INFO    ] Launching Daemon at Fri Jun 19 16:34:02 IST 2026
[2026-06-19 16:34:02,236.236 INFO    ] ================================================
[2026-06-19 16:34:02,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:34:02
[2026-06-19 16:34:03,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:34:03,927.927 INFO    ] Initializing speech engine...
[2026-06-19 16:34:03,942.942 INFO    ] 2026-06-19 16:34:03
[2026-06-19 16:34:04,214.214 INFO    ] 2026-06-19 16:34:04
[2026-06-19 16:34:04,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:34:04,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:34:04,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:34:04,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:34:04,733.733 INFO    ] time= 19/06/2026 16:34:04
[2026-06-19 16:34:04,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:34:04,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:34:04,928.928 INFO    ] No existing commands found in stream
[2026-06-19 16:34:09,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:34:09,956.956 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 16:34:11,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:34:11,113.113 INFO    ] Checking for system updates...
[2026-06-19 16:34:11,149.149 INFO    ] 200
[2026-06-19 16:34:11,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:11,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:34:11,217.217 INFO    ] No update needed
[2026-06-19 16:34:11,219.219 INFO    ] Checking for camera pi updates...
[2026-06-19 16:34:11,256.256 INFO    ] 200
[2026-06-19 16:34:11,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:11,303.303 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:34:11,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:34:11,349.349 INFO    ] No camera update needed
[2026-06-19 16:34:11,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:34:11,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:34:11,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:34:11,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:34:13,404.404 INFO    ] ================================================
[2026-06-19 16:34:13,419.419 INFO    ] Launching Daemon at Fri Jun 19 16:34:13 IST 2026
[2026-06-19 16:34:13,430.430 INFO    ] ================================================
[2026-06-19 16:34:14,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:34:14
[2026-06-19 16:34:14,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:34:14,939.939 INFO    ] Initializing speech engine...
[2026-06-19 16:34:14,945.945 INFO    ] 2026-06-19 16:34:14
[2026-06-19 16:34:15,225.225 INFO    ] 2026-06-19 16:34:15
[2026-06-19 16:34:15,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:34:15,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:34:15,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:34:15,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:34:15,705.705 INFO    ] time= 19/06/2026 16:34:15
[2026-06-19 16:34:15,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:34:15,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:34:15,875.875 INFO    ] No existing commands found in stream
[2026-06-19 16:34:20,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:34:20,905.905 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 16:34:22,735.735 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:34:22,738.738 INFO    ] Checking for system updates...
[2026-06-19 16:34:22,774.774 INFO    ] 200
[2026-06-19 16:34:22,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:22,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:34:22,837.837 INFO    ] No update needed
[2026-06-19 16:34:22,839.839 INFO    ] Checking for camera pi updates...
[2026-06-19 16:34:22,873.873 INFO    ] 200
[2026-06-19 16:34:22,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:22,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:34:22,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:34:22,964.964 INFO    ] No camera update needed
[2026-06-19 16:34:22,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:34:22,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:34:22,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:34:22,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:34:25,026.026 INFO    ] ================================================
[2026-06-19 16:34:25,041.041 INFO    ] Launching Daemon at Fri Jun 19 16:34:25 IST 2026
[2026-06-19 16:34:25,052.052 INFO    ] ================================================
[2026-06-19 16:34:25,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:34:25
[2026-06-19 16:34:26,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:34:26,654.654 INFO    ] Initializing speech engine...
[2026-06-19 16:34:26,660.660 INFO    ] 2026-06-19 16:34:26
[2026-06-19 16:34:26,922.922 INFO    ] 2026-06-19 16:34:26
[2026-06-19 16:34:26,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:34:27,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:34:27,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:34:27,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:34:27,390.390 INFO    ] time= 19/06/2026 16:34:27
[2026-06-19 16:34:27,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:34:27,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:34:27,612.612 INFO    ] No existing commands found in stream
[2026-06-19 16:34:32,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:34:32,636.636 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 16:34:35,793.793 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:34:35,795.795 INFO    ] Checking for system updates...
[2026-06-19 16:34:35,832.832 INFO    ] 200
[2026-06-19 16:34:35,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:35,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:34:35,890.890 INFO    ] No update needed
[2026-06-19 16:34:35,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 16:34:35,930.930 INFO    ] 200
[2026-06-19 16:34:35,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:35,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:34:36,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:34:36,033.033 INFO    ] No camera update needed
[2026-06-19 16:34:36,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:34:36,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:34:36,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:34:36,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:34:38,090.090 INFO    ] ================================================
[2026-06-19 16:34:38,105.105 INFO    ] Launching Daemon at Fri Jun 19 16:34:38 IST 2026
[2026-06-19 16:34:38,116.116 INFO    ] ================================================
[2026-06-19 16:34:38,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:34:38
[2026-06-19 16:34:39,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:34:39,578.578 INFO    ] Initializing speech engine...
[2026-06-19 16:34:39,597.597 INFO    ] 2026-06-19 16:34:39
[2026-06-19 16:34:39,847.847 INFO    ] 2026-06-19 16:34:39
[2026-06-19 16:34:39,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:34:40,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:34:40,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:34:40,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:34:40,329.329 INFO    ] time= 19/06/2026 16:34:40
[2026-06-19 16:34:40,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:34:40,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:34:40,549.549 INFO    ] No existing commands found in stream
[2026-06-19 16:34:45,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:34:45,574.574 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 16:34:46,213.213 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:34:46,216.216 INFO    ] Checking for system updates...
[2026-06-19 16:34:46,257.257 INFO    ] 200
[2026-06-19 16:34:46,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:46,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:34:46,318.318 INFO    ] No update needed
[2026-06-19 16:34:46,320.320 INFO    ] Checking for camera pi updates...
[2026-06-19 16:34:46,354.354 INFO    ] 200
[2026-06-19 16:34:46,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:46,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:34:46,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:34:46,553.553 INFO    ] No camera update needed
[2026-06-19 16:34:46,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:34:46,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:34:46,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:34:46,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:34:48,610.610 INFO    ] ================================================
[2026-06-19 16:34:48,626.626 INFO    ] Launching Daemon at Fri Jun 19 16:34:48 IST 2026
[2026-06-19 16:34:48,637.637 INFO    ] ================================================
[2026-06-19 16:34:49,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:34:49
[2026-06-19 16:34:49,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:34:50,269.269 INFO    ] Initializing speech engine...
[2026-06-19 16:34:50,279.279 INFO    ] 2026-06-19 16:34:50
[2026-06-19 16:34:50,552.552 INFO    ] 2026-06-19 16:34:50
[2026-06-19 16:34:50,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:34:50,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:34:50,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:34:50,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:34:51,047.047 INFO    ] time= 19/06/2026 16:34:50
[2026-06-19 16:34:51,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:34:51,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:34:51,280.280 INFO    ] No existing commands found in stream
[2026-06-19 16:34:56,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:34:56,302.302 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 16:34:59,498.498 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:34:59,502.502 INFO    ] Checking for system updates...
[2026-06-19 16:34:59,540.540 INFO    ] 200
[2026-06-19 16:34:59,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:59,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:34:59,603.603 INFO    ] No update needed
[2026-06-19 16:34:59,605.605 INFO    ] Checking for camera pi updates...
[2026-06-19 16:34:59,640.640 INFO    ] 200
[2026-06-19 16:34:59,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:34:59,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:34:59,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:34:59,735.735 INFO    ] No camera update needed
[2026-06-19 16:34:59,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:34:59,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:34:59,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:34:59,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:35:01,796.796 INFO    ] ================================================
[2026-06-19 16:35:01,820.820 INFO    ] Launching Daemon at Fri Jun 19 16:35:01 IST 2026
[2026-06-19 16:35:01,832.832 INFO    ] ================================================
[2026-06-19 16:35:02,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:35:02
[2026-06-19 16:35:03,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:35:03,602.602 INFO    ] Initializing speech engine...
[2026-06-19 16:35:03,608.608 INFO    ] 2026-06-19 16:35:03
[2026-06-19 16:35:03,922.922 INFO    ] 2026-06-19 16:35:03
[2026-06-19 16:35:04,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:35:04,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:35:04,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:35:04,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:35:04,434.434 INFO    ] time= 19/06/2026 16:35:04
[2026-06-19 16:35:04,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:35:04,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:35:04,654.654 INFO    ] No existing commands found in stream
[2026-06-19 16:35:09,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:35:09,694.694 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 16:35:11,572.572 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:35:11,575.575 INFO    ] Checking for system updates...
[2026-06-19 16:35:11,618.618 INFO    ] 200
[2026-06-19 16:35:11,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:35:11,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:35:11,675.675 INFO    ] No update needed
[2026-06-19 16:35:11,678.678 INFO    ] Checking for camera pi updates...
[2026-06-19 16:35:11,711.711 INFO    ] 200
[2026-06-19 16:35:11,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:35:11,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:35:11,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:35:11,802.802 INFO    ] No camera update needed
[2026-06-19 16:35:11,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:35:11,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:35:11,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:35:11,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:35:13,858.858 INFO    ] ================================================
[2026-06-19 16:35:13,874.874 INFO    ] Launching Daemon at Fri Jun 19 16:35:13 IST 2026
[2026-06-19 16:35:13,885.885 INFO    ] ================================================
[2026-06-19 16:35:14,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:35:14
[2026-06-19 16:35:15,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:35:15,586.586 INFO    ] Initializing speech engine...
[2026-06-19 16:35:15,598.598 INFO    ] 2026-06-19 16:35:15
[2026-06-19 16:35:15,916.916 INFO    ] 2026-06-19 16:35:15
[2026-06-19 16:35:16,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:35:16,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:35:16,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:35:16,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:35:16,453.453 INFO    ] time= 19/06/2026 16:35:16
[2026-06-19 16:35:16,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:35:16,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:35:16,602.602 INFO    ] No existing commands found in stream
[2026-06-19 16:35:21,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:35:21,626.626 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 16:35:24,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:35:24,568.568 INFO    ] Checking for system updates...
[2026-06-19 16:35:24,609.609 INFO    ] 200
[2026-06-19 16:35:24,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:35:24,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:35:24,667.667 INFO    ] No update needed
[2026-06-19 16:35:24,669.669 INFO    ] Checking for camera pi updates...
[2026-06-19 16:35:24,702.702 INFO    ] 200
[2026-06-19 16:35:24,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:35:24,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:35:24,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:35:24,799.799 INFO    ] No camera update needed
[2026-06-19 16:35:24,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:35:24,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:35:24,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:35:24,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:35:26,855.855 INFO    ] ================================================
[2026-06-19 16:35:26,870.870 INFO    ] Launching Daemon at Fri Jun 19 16:35:26 IST 2026
[2026-06-19 16:35:26,881.881 INFO    ] ================================================
[2026-06-19 16:35:27,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:35:27
[2026-06-19 16:35:28,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:35:28,365.365 INFO    ] Initializing speech engine...
[2026-06-19 16:35:28,374.374 INFO    ] 2026-06-19 16:35:28
[2026-06-19 16:35:28,635.635 INFO    ] 2026-06-19 16:35:28
[2026-06-19 16:35:28,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:35:28,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:35:28,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:35:29,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:35:29,115.115 INFO    ] time= 19/06/2026 16:35:29
[2026-06-19 16:35:29,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:35:29,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:35:29,333.333 INFO    ] No existing commands found in stream
[2026-06-19 16:35:34,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:35:34,350.350 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 16:35:35,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:35:35,580.580 INFO    ] Checking for system updates...
[2026-06-19 16:35:35,617.617 INFO    ] 200
[2026-06-19 16:35:35,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:35:35,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:35:35,684.684 INFO    ] No update needed
[2026-06-19 16:35:35,686.686 INFO    ] Checking for camera pi updates...
[2026-06-19 16:35:35,724.724 INFO    ] 200
[2026-06-19 16:35:35,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:35:35,774.774 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:35:35,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:35:35,825.825 INFO    ] No camera update needed
[2026-06-19 16:35:35,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:35:35,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:35:35,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:35:35,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:35:37,880.880 INFO    ] ================================================
[2026-06-19 16:35:37,896.896 INFO    ] Launching Daemon at Fri Jun 19 16:35:37 IST 2026
[2026-06-19 16:35:37,907.907 INFO    ] ================================================
[2026-06-19 16:35:38,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:35:38
[2026-06-19 16:35:39,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:35:39,333.333 INFO    ] Initializing speech engine...
[2026-06-19 16:35:39,341.341 INFO    ] 2026-06-19 16:35:39
[2026-06-19 16:35:39,640.640 INFO    ] 2026-06-19 16:35:39
[2026-06-19 16:35:39,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:35:39,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:35:39,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:35:40,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:35:40,179.179 INFO    ] time= 19/06/2026 16:35:40
[2026-06-19 16:35:40,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:35:40,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:35:40,362.362 INFO    ] No existing commands found in stream
[2026-06-19 16:35:45,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:35:45,378.378 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 16:35:47,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:35:47,536.536 INFO    ] Checking for system updates...
[2026-06-19 16:35:47,578.578 INFO    ] 200
[2026-06-19 16:35:47,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:35:47,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:35:47,647.647 INFO    ] No update needed
[2026-06-19 16:35:47,650.650 INFO    ] Checking for camera pi updates...
[2026-06-19 16:35:47,686.686 INFO    ] 200
[2026-06-19 16:35:47,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:35:47,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:35:47,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:35:47,773.773 INFO    ] No camera update needed
[2026-06-19 16:35:47,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:35:47,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:35:47,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:35:47,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:35:49,834.834 INFO    ] ================================================
[2026-06-19 16:35:49,849.849 INFO    ] Launching Daemon at Fri Jun 19 16:35:49 IST 2026
[2026-06-19 16:35:49,861.861 INFO    ] ================================================
[2026-06-19 16:35:50,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:35:50
[2026-06-19 16:35:51,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:35:51,269.269 INFO    ] Initializing speech engine...
[2026-06-19 16:35:51,278.278 INFO    ] 2026-06-19 16:35:51
[2026-06-19 16:35:51,576.576 INFO    ] 2026-06-19 16:35:51
[2026-06-19 16:35:51,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:35:51,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:35:51,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:35:51,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:35:51,976.976 INFO    ] time= 19/06/2026 16:35:51
[2026-06-19 16:35:52,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:35:52,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:35:52,092.092 INFO    ] No existing commands found in stream
[2026-06-19 16:35:57,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:35:57,108.108 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 16:36:00,003.003 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:36:00,006.006 INFO    ] Checking for system updates...
[2026-06-19 16:36:00,043.043 INFO    ] 200
[2026-06-19 16:36:00,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:00,106.106 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:36:00,109.109 INFO    ] No update needed
[2026-06-19 16:36:00,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 16:36:00,144.144 INFO    ] 200
[2026-06-19 16:36:00,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:00,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:36:00,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:36:00,242.242 INFO    ] No camera update needed
[2026-06-19 16:36:00,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:36:00,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:36:00,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:36:00,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:36:02,300.300 INFO    ] ================================================
[2026-06-19 16:36:02,324.324 INFO    ] Launching Daemon at Fri Jun 19 16:36:02 IST 2026
[2026-06-19 16:36:02,340.340 INFO    ] ================================================
[2026-06-19 16:36:03,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:36:02
[2026-06-19 16:36:03,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:36:03,851.851 INFO    ] Initializing speech engine...
[2026-06-19 16:36:03,860.860 INFO    ] 2026-06-19 16:36:03
[2026-06-19 16:36:04,154.154 INFO    ] 2026-06-19 16:36:04
[2026-06-19 16:36:04,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:36:04,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:36:04,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:36:04,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:36:04,530.530 INFO    ] time= 19/06/2026 16:36:04
[2026-06-19 16:36:04,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:36:04,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:36:04,653.653 INFO    ] No existing commands found in stream
[2026-06-19 16:36:09,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:36:09,669.669 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 16:36:12,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:36:12,514.514 INFO    ] Checking for system updates...
[2026-06-19 16:36:12,553.553 INFO    ] 200
[2026-06-19 16:36:12,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:12,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:36:12,617.617 INFO    ] No update needed
[2026-06-19 16:36:12,619.619 INFO    ] Checking for camera pi updates...
[2026-06-19 16:36:12,663.663 INFO    ] 200
[2026-06-19 16:36:12,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:12,707.707 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:36:12,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:36:12,758.758 INFO    ] No camera update needed
[2026-06-19 16:36:12,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:36:12,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:36:12,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:36:12,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:36:14,814.814 INFO    ] ================================================
[2026-06-19 16:36:14,830.830 INFO    ] Launching Daemon at Fri Jun 19 16:36:14 IST 2026
[2026-06-19 16:36:14,841.841 INFO    ] ================================================
[2026-06-19 16:36:15,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:36:15
[2026-06-19 16:36:16,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:36:16,295.295 INFO    ] Initializing speech engine...
[2026-06-19 16:36:16,304.304 INFO    ] 2026-06-19 16:36:16
[2026-06-19 16:36:16,551.551 INFO    ] 2026-06-19 16:36:16
[2026-06-19 16:36:16,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:36:16,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:36:16,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:36:16,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:36:17,035.035 INFO    ] time= 19/06/2026 16:36:16
[2026-06-19 16:36:17,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:36:17,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:36:17,257.257 INFO    ] No existing commands found in stream
[2026-06-19 16:36:22,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:36:22,274.274 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 16:36:23,928.928 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:36:23,931.931 INFO    ] Checking for system updates...
[2026-06-19 16:36:23,967.967 INFO    ] 200
[2026-06-19 16:36:23,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:24,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:36:24,032.032 INFO    ] No update needed
[2026-06-19 16:36:24,034.034 INFO    ] Checking for camera pi updates...
[2026-06-19 16:36:24,068.068 INFO    ] 200
[2026-06-19 16:36:24,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:24,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:36:24,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:36:24,168.168 INFO    ] No camera update needed
[2026-06-19 16:36:24,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:36:24,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:36:24,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:36:24,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:36:26,237.237 INFO    ] ================================================
[2026-06-19 16:36:26,253.253 INFO    ] Launching Daemon at Fri Jun 19 16:36:26 IST 2026
[2026-06-19 16:36:26,264.264 INFO    ] ================================================
[2026-06-19 16:36:26,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:36:26
[2026-06-19 16:36:27,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:36:27,904.904 INFO    ] Initializing speech engine...
[2026-06-19 16:36:27,919.919 INFO    ] 2026-06-19 16:36:27
[2026-06-19 16:36:28,176.176 INFO    ] 2026-06-19 16:36:28
[2026-06-19 16:36:28,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:36:28,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:36:28,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:36:28,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:36:28,598.598 INFO    ] time= 19/06/2026 16:36:28
[2026-06-19 16:36:28,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:36:28,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:36:28,766.766 INFO    ] No existing commands found in stream
[2026-06-19 16:36:33,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:36:33,794.794 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 16:36:35,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:36:35,153.153 INFO    ] Checking for system updates...
[2026-06-19 16:36:35,190.190 INFO    ] 200
[2026-06-19 16:36:35,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:35,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:36:35,247.247 INFO    ] No update needed
[2026-06-19 16:36:35,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 16:36:35,287.287 INFO    ] 200
[2026-06-19 16:36:35,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:35,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:36:35,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:36:35,387.387 INFO    ] No camera update needed
[2026-06-19 16:36:35,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:36:35,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:36:35,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:36:35,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:36:37,442.442 INFO    ] ================================================
[2026-06-19 16:36:37,458.458 INFO    ] Launching Daemon at Fri Jun 19 16:36:37 IST 2026
[2026-06-19 16:36:37,469.469 INFO    ] ================================================
[2026-06-19 16:36:38,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:36:38
[2026-06-19 16:36:38,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:36:38,921.921 INFO    ] Initializing speech engine...
[2026-06-19 16:36:38,930.930 INFO    ] 2026-06-19 16:36:38
[2026-06-19 16:36:39,228.228 INFO    ] 2026-06-19 16:36:39
[2026-06-19 16:36:39,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:36:39,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:36:39,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:36:39,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:36:39,649.649 INFO    ] time= 19/06/2026 16:36:39
[2026-06-19 16:36:39,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:36:39,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:36:39,804.804 INFO    ] No existing commands found in stream
[2026-06-19 16:36:44,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:36:44,832.832 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 16:36:46,062.062 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:36:46,065.065 INFO    ] Checking for system updates...
[2026-06-19 16:36:46,101.101 INFO    ] 200
[2026-06-19 16:36:46,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:46,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:36:46,159.159 INFO    ] No update needed
[2026-06-19 16:36:46,162.162 INFO    ] Checking for camera pi updates...
[2026-06-19 16:36:46,196.196 INFO    ] 200
[2026-06-19 16:36:46,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:36:46,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:36:46,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:36:46,327.327 INFO    ] No camera update needed
[2026-06-19 16:36:46,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:36:46,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:36:46,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:36:46,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:36:48,385.385 INFO    ] ================================================
[2026-06-19 16:36:48,400.400 INFO    ] Launching Daemon at Fri Jun 19 16:36:48 IST 2026
[2026-06-19 16:36:48,412.412 INFO    ] ================================================
[2026-06-19 16:36:48,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:36:48
[2026-06-19 16:36:49,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:36:49,823.823 INFO    ] Initializing speech engine...
[2026-06-19 16:36:49,832.832 INFO    ] 2026-06-19 16:36:49
[2026-06-19 16:36:50,127.127 INFO    ] 2026-06-19 16:36:50
[2026-06-19 16:36:50,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:36:50,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:36:50,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:36:50,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:36:50,549.549 INFO    ] time= 19/06/2026 16:36:50
[2026-06-19 16:36:50,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:36:50,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:36:50,703.703 INFO    ] No existing commands found in stream
[2026-06-19 16:36:55,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:36:55,731.731 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 16:36:59,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:36:59,961.961 INFO    ] Checking for system updates...
[2026-06-19 16:36:59,997.997 INFO    ] 200
[2026-06-19 16:37:00,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:00,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:37:00,056.056 INFO    ] No update needed
[2026-06-19 16:37:00,058.058 INFO    ] Checking for camera pi updates...
[2026-06-19 16:37:00,096.096 INFO    ] 200
[2026-06-19 16:37:00,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:00,138.138 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:37:00,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:37:00,288.288 INFO    ] No camera update needed
[2026-06-19 16:37:00,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:37:00,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:37:00,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:37:00,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:37:02,357.357 INFO    ] ================================================
[2026-06-19 16:37:02,377.377 INFO    ] Launching Daemon at Fri Jun 19 16:37:02 IST 2026
[2026-06-19 16:37:02,393.393 INFO    ] ================================================
[2026-06-19 16:37:03,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:37:03
[2026-06-19 16:37:03,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:37:03,888.888 INFO    ] Initializing speech engine...
[2026-06-19 16:37:03,911.911 INFO    ] 2026-06-19 16:37:03
[2026-06-19 16:37:04,166.166 INFO    ] 2026-06-19 16:37:04
[2026-06-19 16:37:04,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:37:04,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:37:04,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:37:04,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:37:04,539.539 INFO    ] time= 19/06/2026 16:37:04
[2026-06-19 16:37:04,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:37:04,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:37:04,727.727 INFO    ] No existing commands found in stream
[2026-06-19 16:37:09,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:37:09,748.748 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 16:37:14,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:37:14,012.012 INFO    ] Checking for system updates...
[2026-06-19 16:37:14,048.048 INFO    ] 200
[2026-06-19 16:37:14,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:14,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:37:14,111.111 INFO    ] No update needed
[2026-06-19 16:37:14,114.114 INFO    ] Checking for camera pi updates...
[2026-06-19 16:37:14,151.151 INFO    ] 200
[2026-06-19 16:37:14,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:14,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:37:14,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:37:14,261.261 INFO    ] No camera update needed
[2026-06-19 16:37:14,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:37:14,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:37:14,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:37:14,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:37:16,319.319 INFO    ] ================================================
[2026-06-19 16:37:16,336.336 INFO    ] Launching Daemon at Fri Jun 19 16:37:16 IST 2026
[2026-06-19 16:37:16,347.347 INFO    ] ================================================
[2026-06-19 16:37:16,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:37:16
[2026-06-19 16:37:17,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:37:17,772.772 INFO    ] Initializing speech engine...
[2026-06-19 16:37:17,782.782 INFO    ] 2026-06-19 16:37:17
[2026-06-19 16:37:18,029.029 INFO    ] 2026-06-19 16:37:18
[2026-06-19 16:37:18,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:37:18,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:37:18,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:37:18,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:37:18,501.501 INFO    ] time= 19/06/2026 16:37:18
[2026-06-19 16:37:18,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:37:18,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:37:18,705.705 INFO    ] No existing commands found in stream
[2026-06-19 16:37:23,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:37:23,730.730 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 16:37:26,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:37:26,401.401 INFO    ] Checking for system updates...
[2026-06-19 16:37:26,441.441 INFO    ] 200
[2026-06-19 16:37:26,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:26,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:37:26,511.511 INFO    ] No update needed
[2026-06-19 16:37:26,514.514 INFO    ] Checking for camera pi updates...
[2026-06-19 16:37:26,555.555 INFO    ] 200
[2026-06-19 16:37:26,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:26,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:37:26,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:37:26,661.661 INFO    ] No camera update needed
[2026-06-19 16:37:26,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:37:26,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:37:26,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:37:26,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:37:28,720.720 INFO    ] ================================================
[2026-06-19 16:37:28,736.736 INFO    ] Launching Daemon at Fri Jun 19 16:37:28 IST 2026
[2026-06-19 16:37:28,747.747 INFO    ] ================================================
[2026-06-19 16:37:29,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:37:29
[2026-06-19 16:37:30,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:37:30,330.330 INFO    ] Initializing speech engine...
[2026-06-19 16:37:30,339.339 INFO    ] 2026-06-19 16:37:30
[2026-06-19 16:37:30,619.619 INFO    ] 2026-06-19 16:37:30
[2026-06-19 16:37:30,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:37:30,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:37:30,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:37:31,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:37:31,147.147 INFO    ] time= 19/06/2026 16:37:31
[2026-06-19 16:37:31,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:37:31,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:37:31,363.363 INFO    ] No existing commands found in stream
[2026-06-19 16:37:36,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:37:36,408.408 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 16:37:39,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:37:39,556.556 INFO    ] Checking for system updates...
[2026-06-19 16:37:39,593.593 INFO    ] 200
[2026-06-19 16:37:39,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:39,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:37:39,652.652 INFO    ] No update needed
[2026-06-19 16:37:39,654.654 INFO    ] Checking for camera pi updates...
[2026-06-19 16:37:39,689.689 INFO    ] 200
[2026-06-19 16:37:39,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:39,731.731 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:37:39,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:37:39,769.769 INFO    ] No camera update needed
[2026-06-19 16:37:39,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:37:39,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:37:39,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:37:39,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:37:41,825.825 INFO    ] ================================================
[2026-06-19 16:37:41,841.841 INFO    ] Launching Daemon at Fri Jun 19 16:37:41 IST 2026
[2026-06-19 16:37:41,852.852 INFO    ] ================================================
[2026-06-19 16:37:42,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:37:42
[2026-06-19 16:37:43,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:37:43,484.484 INFO    ] Initializing speech engine...
[2026-06-19 16:37:43,496.496 INFO    ] 2026-06-19 16:37:43
[2026-06-19 16:37:43,782.782 INFO    ] 2026-06-19 16:37:43
[2026-06-19 16:37:43,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:37:44,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:37:44,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:37:44,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:37:44,309.309 INFO    ] time= 19/06/2026 16:37:44
[2026-06-19 16:37:44,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:37:44,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:37:44,472.472 INFO    ] No existing commands found in stream
[2026-06-19 16:37:49,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:37:49,516.516 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 16:37:52,786.786 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:37:52,789.789 INFO    ] Checking for system updates...
[2026-06-19 16:37:52,825.825 INFO    ] 200
[2026-06-19 16:37:52,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:52,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:37:52,891.891 INFO    ] No update needed
[2026-06-19 16:37:52,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 16:37:52,926.926 INFO    ] 200
[2026-06-19 16:37:52,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:37:52,970.970 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:37:53,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:37:53,025.025 INFO    ] No camera update needed
[2026-06-19 16:37:53,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:37:53,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:37:53,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:37:53,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:37:55,079.079 INFO    ] ================================================
[2026-06-19 16:37:55,094.094 INFO    ] Launching Daemon at Fri Jun 19 16:37:55 IST 2026
[2026-06-19 16:37:55,106.106 INFO    ] ================================================
[2026-06-19 16:37:55,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:37:55
[2026-06-19 16:37:56,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:37:56,639.639 INFO    ] Initializing speech engine...
[2026-06-19 16:37:56,647.647 INFO    ] 2026-06-19 16:37:56
[2026-06-19 16:37:56,924.924 INFO    ] 2026-06-19 16:37:56
[2026-06-19 16:37:56,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:37:57,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:37:57,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:37:57,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:37:57,488.488 INFO    ] time= 19/06/2026 16:37:57
[2026-06-19 16:37:57,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:37:57,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:37:57,658.658 INFO    ] No existing commands found in stream
[2026-06-19 16:38:02,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:38:02,691.691 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 16:38:05,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:38:05,288.288 INFO    ] Checking for system updates...
[2026-06-19 16:38:05,325.325 INFO    ] 200
[2026-06-19 16:38:05,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:05,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:38:05,385.385 INFO    ] No update needed
[2026-06-19 16:38:05,388.388 INFO    ] Checking for camera pi updates...
[2026-06-19 16:38:05,422.422 INFO    ] 200
[2026-06-19 16:38:05,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:05,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:38:05,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:38:05,519.519 INFO    ] No camera update needed
[2026-06-19 16:38:05,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:38:05,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:38:05,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:38:05,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:38:07,574.574 INFO    ] ================================================
[2026-06-19 16:38:07,589.589 INFO    ] Launching Daemon at Fri Jun 19 16:38:07 IST 2026
[2026-06-19 16:38:07,600.600 INFO    ] ================================================
[2026-06-19 16:38:08,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:38:08
[2026-06-19 16:38:08,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:38:09,209.209 INFO    ] Initializing speech engine...
[2026-06-19 16:38:09,223.223 INFO    ] 2026-06-19 16:38:09
[2026-06-19 16:38:09,502.502 INFO    ] 2026-06-19 16:38:09
[2026-06-19 16:38:09,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:38:09,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:38:09,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:38:09,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:38:09,971.971 INFO    ] time= 19/06/2026 16:38:09
[2026-06-19 16:38:10,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:38:10,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:38:10,170.170 INFO    ] No existing commands found in stream
[2026-06-19 16:38:15,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:38:15,184.184 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 16:38:15,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:38:15,635.635 INFO    ] Checking for system updates...
[2026-06-19 16:38:15,674.674 INFO    ] 200
[2026-06-19 16:38:15,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:15,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:38:15,733.733 INFO    ] No update needed
[2026-06-19 16:38:15,736.736 INFO    ] Checking for camera pi updates...
[2026-06-19 16:38:15,773.773 INFO    ] 200
[2026-06-19 16:38:15,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:15,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:38:15,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:38:15,867.867 INFO    ] No camera update needed
[2026-06-19 16:38:15,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:38:15,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:38:15,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:38:15,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:38:17,922.922 INFO    ] ================================================
[2026-06-19 16:38:17,938.938 INFO    ] Launching Daemon at Fri Jun 19 16:38:17 IST 2026
[2026-06-19 16:38:17,949.949 INFO    ] ================================================
[2026-06-19 16:38:18,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:38:18
[2026-06-19 16:38:19,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:38:19,379.379 INFO    ] Initializing speech engine...
[2026-06-19 16:38:19,393.393 INFO    ] 2026-06-19 16:38:19
[2026-06-19 16:38:19,658.658 INFO    ] 2026-06-19 16:38:19
[2026-06-19 16:38:19,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:38:19,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:38:19,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:38:20,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:38:20,144.144 INFO    ] time= 19/06/2026 16:38:20
[2026-06-19 16:38:20,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:38:20,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:38:20,359.359 INFO    ] No existing commands found in stream
[2026-06-19 16:38:25,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:38:25,382.382 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 16:38:26,516.516 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:38:26,519.519 INFO    ] Checking for system updates...
[2026-06-19 16:38:26,559.559 INFO    ] 200
[2026-06-19 16:38:26,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:26,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:38:26,617.617 INFO    ] No update needed
[2026-06-19 16:38:26,619.619 INFO    ] Checking for camera pi updates...
[2026-06-19 16:38:26,654.654 INFO    ] 200
[2026-06-19 16:38:26,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:26,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:38:26,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:38:26,742.742 INFO    ] No camera update needed
[2026-06-19 16:38:26,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:38:26,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:38:26,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:38:26,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:38:28,799.799 INFO    ] ================================================
[2026-06-19 16:38:28,814.814 INFO    ] Launching Daemon at Fri Jun 19 16:38:28 IST 2026
[2026-06-19 16:38:28,825.825 INFO    ] ================================================
[2026-06-19 16:38:29,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:38:29
[2026-06-19 16:38:30,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:38:30,433.433 INFO    ] Initializing speech engine...
[2026-06-19 16:38:30,440.440 INFO    ] 2026-06-19 16:38:30
[2026-06-19 16:38:30,731.731 INFO    ] 2026-06-19 16:38:30
[2026-06-19 16:38:30,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:38:31,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:38:31,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:38:31,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:38:31,217.217 INFO    ] time= 19/06/2026 16:38:31
[2026-06-19 16:38:31,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:38:31,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:38:31,450.450 INFO    ] No existing commands found in stream
[2026-06-19 16:38:36,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:38:36,491.491 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 16:38:38,641.641 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:38:38,644.644 INFO    ] Checking for system updates...
[2026-06-19 16:38:38,681.681 INFO    ] 200
[2026-06-19 16:38:38,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:38,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:38:38,742.742 INFO    ] No update needed
[2026-06-19 16:38:38,745.745 INFO    ] Checking for camera pi updates...
[2026-06-19 16:38:38,782.782 INFO    ] 200
[2026-06-19 16:38:38,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:38,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:38:38,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:38:38,880.880 INFO    ] No camera update needed
[2026-06-19 16:38:38,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:38:38,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:38:38,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:38:38,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:38:40,934.934 INFO    ] ================================================
[2026-06-19 16:38:40,949.949 INFO    ] Launching Daemon at Fri Jun 19 16:38:40 IST 2026
[2026-06-19 16:38:40,960.960 INFO    ] ================================================
[2026-06-19 16:38:41,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:38:41
[2026-06-19 16:38:42,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:38:42,514.514 INFO    ] Initializing speech engine...
[2026-06-19 16:38:42,523.523 INFO    ] 2026-06-19 16:38:42
[2026-06-19 16:38:42,806.806 INFO    ] 2026-06-19 16:38:42
[2026-06-19 16:38:42,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:38:43,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:38:43,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:38:43,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:38:43,361.361 INFO    ] time= 19/06/2026 16:38:43
[2026-06-19 16:38:43,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:38:43,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:38:43,522.522 INFO    ] No existing commands found in stream
[2026-06-19 16:38:48,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:38:48,546.546 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 16:38:50,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:38:50,790.790 INFO    ] Checking for system updates...
[2026-06-19 16:38:50,828.828 INFO    ] 200
[2026-06-19 16:38:50,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:50,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:38:50,894.894 INFO    ] No update needed
[2026-06-19 16:38:50,898.898 INFO    ] Checking for camera pi updates...
[2026-06-19 16:38:50,933.933 INFO    ] 200
[2026-06-19 16:38:50,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:38:50,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:38:51,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:38:51,033.033 INFO    ] No camera update needed
[2026-06-19 16:38:51,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:38:51,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:38:51,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:38:51,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:38:53,093.093 INFO    ] ================================================
[2026-06-19 16:38:53,108.108 INFO    ] Launching Daemon at Fri Jun 19 16:38:53 IST 2026
[2026-06-19 16:38:53,119.119 INFO    ] ================================================
[2026-06-19 16:38:53,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:38:53
[2026-06-19 16:38:54,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:38:54,573.573 INFO    ] Initializing speech engine...
[2026-06-19 16:38:54,584.584 INFO    ] 2026-06-19 16:38:54
[2026-06-19 16:38:54,847.847 INFO    ] 2026-06-19 16:38:54
[2026-06-19 16:38:54,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:38:55,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:38:55,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:38:55,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:38:55,327.327 INFO    ] time= 19/06/2026 16:38:55
[2026-06-19 16:38:55,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:38:55,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:38:55,530.530 INFO    ] No existing commands found in stream
[2026-06-19 16:39:00,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:39:00,555.555 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 16:39:01,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:39:01,722.722 INFO    ] Checking for system updates...
[2026-06-19 16:39:01,766.766 INFO    ] 200
[2026-06-19 16:39:01,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:01,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:39:01,836.836 INFO    ] No update needed
[2026-06-19 16:39:01,839.839 INFO    ] Checking for camera pi updates...
[2026-06-19 16:39:01,891.891 INFO    ] 200
[2026-06-19 16:39:01,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:01,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:39:01,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:39:02,002.002 INFO    ] No camera update needed
[2026-06-19 16:39:02,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:39:02,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:39:02,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:39:02,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:39:04,062.062 INFO    ] ================================================
[2026-06-19 16:39:04,077.077 INFO    ] Launching Daemon at Fri Jun 19 16:39:04 IST 2026
[2026-06-19 16:39:04,089.089 INFO    ] ================================================
[2026-06-19 16:39:04,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:39:04
[2026-06-19 16:39:05,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:39:05,699.699 INFO    ] Initializing speech engine...
[2026-06-19 16:39:05,707.707 INFO    ] 2026-06-19 16:39:05
[2026-06-19 16:39:06,007.007 INFO    ] 2026-06-19 16:39:05
[2026-06-19 16:39:06,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:39:06,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:39:06,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:39:06,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:39:06,561.561 INFO    ] time= 19/06/2026 16:39:06
[2026-06-19 16:39:06,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:39:06,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:39:06,694.694 INFO    ] No existing commands found in stream
[2026-06-19 16:39:11,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:39:11,722.722 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 16:39:15,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:39:15,535.535 INFO    ] Checking for system updates...
[2026-06-19 16:39:15,572.572 INFO    ] 200
[2026-06-19 16:39:15,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:15,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:39:15,638.638 INFO    ] No update needed
[2026-06-19 16:39:15,641.641 INFO    ] Checking for camera pi updates...
[2026-06-19 16:39:15,677.677 INFO    ] 200
[2026-06-19 16:39:15,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:15,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:39:15,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:39:15,772.772 INFO    ] No camera update needed
[2026-06-19 16:39:15,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:39:15,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:39:15,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:39:15,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:39:17,832.832 INFO    ] ================================================
[2026-06-19 16:39:17,847.847 INFO    ] Launching Daemon at Fri Jun 19 16:39:17 IST 2026
[2026-06-19 16:39:17,858.858 INFO    ] ================================================
[2026-06-19 16:39:18,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:39:18
[2026-06-19 16:39:19,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:39:19,282.282 INFO    ] Initializing speech engine...
[2026-06-19 16:39:19,293.293 INFO    ] 2026-06-19 16:39:19
[2026-06-19 16:39:19,552.552 INFO    ] 2026-06-19 16:39:19
[2026-06-19 16:39:19,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:39:19,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:39:19,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:39:19,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:39:20,042.042 INFO    ] time= 19/06/2026 16:39:19
[2026-06-19 16:39:20,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:39:20,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:39:20,252.252 INFO    ] No existing commands found in stream
[2026-06-19 16:39:25,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:39:25,282.282 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 16:39:26,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:39:26,075.075 INFO    ] Checking for system updates...
[2026-06-19 16:39:26,115.115 INFO    ] 200
[2026-06-19 16:39:26,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:26,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:39:26,180.180 INFO    ] No update needed
[2026-06-19 16:39:26,182.182 INFO    ] Checking for camera pi updates...
[2026-06-19 16:39:26,217.217 INFO    ] 200
[2026-06-19 16:39:26,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:26,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:39:26,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:39:26,319.319 INFO    ] No camera update needed
[2026-06-19 16:39:26,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:39:26,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:39:26,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:39:26,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:39:28,379.379 INFO    ] ================================================
[2026-06-19 16:39:28,395.395 INFO    ] Launching Daemon at Fri Jun 19 16:39:28 IST 2026
[2026-06-19 16:39:28,405.405 INFO    ] ================================================
[2026-06-19 16:39:28,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:39:28
[2026-06-19 16:39:29,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:39:29,857.857 INFO    ] Initializing speech engine...
[2026-06-19 16:39:29,866.866 INFO    ] 2026-06-19 16:39:29
[2026-06-19 16:39:30,125.125 INFO    ] 2026-06-19 16:39:30
[2026-06-19 16:39:30,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:39:30,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:39:30,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:39:30,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:39:30,611.611 INFO    ] time= 19/06/2026 16:39:30
[2026-06-19 16:39:30,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:39:30,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:39:30,825.825 INFO    ] No existing commands found in stream
[2026-06-19 16:39:35,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:39:35,850.850 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 16:39:36,606.606 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:39:36,608.608 INFO    ] Checking for system updates...
[2026-06-19 16:39:36,644.644 INFO    ] 200
[2026-06-19 16:39:36,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:36,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:39:36,710.710 INFO    ] No update needed
[2026-06-19 16:39:36,713.713 INFO    ] Checking for camera pi updates...
[2026-06-19 16:39:36,747.747 INFO    ] 200
[2026-06-19 16:39:36,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:36,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:39:36,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:39:36,843.843 INFO    ] No camera update needed
[2026-06-19 16:39:36,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:39:36,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:39:36,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:39:36,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:39:38,902.902 INFO    ] ================================================
[2026-06-19 16:39:38,918.918 INFO    ] Launching Daemon at Fri Jun 19 16:39:38 IST 2026
[2026-06-19 16:39:38,929.929 INFO    ] ================================================
[2026-06-19 16:39:39,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:39:39
[2026-06-19 16:39:40,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:39:40,341.341 INFO    ] Initializing speech engine...
[2026-06-19 16:39:40,365.365 INFO    ] 2026-06-19 16:39:40
[2026-06-19 16:39:40,621.621 INFO    ] 2026-06-19 16:39:40
[2026-06-19 16:39:40,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:39:40,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:39:40,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:39:41,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:39:41,151.151 INFO    ] time= 19/06/2026 16:39:41
[2026-06-19 16:39:41,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:39:41,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:39:41,355.355 INFO    ] No existing commands found in stream
[2026-06-19 16:39:46,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:39:46,377.377 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 16:39:49,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:39:49,640.640 INFO    ] Checking for system updates...
[2026-06-19 16:39:49,681.681 INFO    ] 200
[2026-06-19 16:39:49,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:49,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:39:49,739.739 INFO    ] No update needed
[2026-06-19 16:39:49,741.741 INFO    ] Checking for camera pi updates...
[2026-06-19 16:39:49,775.775 INFO    ] 200
[2026-06-19 16:39:49,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:39:49,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:39:49,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:39:49,855.855 INFO    ] No camera update needed
[2026-06-19 16:39:49,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:39:49,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:39:49,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:39:49,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:39:51,912.912 INFO    ] ================================================
[2026-06-19 16:39:51,928.928 INFO    ] Launching Daemon at Fri Jun 19 16:39:51 IST 2026
[2026-06-19 16:39:51,938.938 INFO    ] ================================================
[2026-06-19 16:39:52,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:39:52
[2026-06-19 16:39:53,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:39:53,604.604 INFO    ] Initializing speech engine...
[2026-06-19 16:39:53,619.619 INFO    ] 2026-06-19 16:39:53
[2026-06-19 16:39:53,906.906 INFO    ] 2026-06-19 16:39:53
[2026-06-19 16:39:53,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:39:54,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:39:54,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:39:54,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:39:54,460.460 INFO    ] time= 19/06/2026 16:39:54
[2026-06-19 16:39:54,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:39:54,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:39:54,643.643 INFO    ] No existing commands found in stream
[2026-06-19 16:39:59,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:39:59,678.678 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 16:40:01,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:40:01,211.211 INFO    ] Checking for system updates...
[2026-06-19 16:40:01,484.484 INFO    ] 200
[2026-06-19 16:40:01,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:01,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:40:01,733.733 INFO    ] No update needed
[2026-06-19 16:40:01,736.736 INFO    ] Checking for camera pi updates...
[2026-06-19 16:40:01,862.862 INFO    ] 200
[2026-06-19 16:40:01,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:02,018.018 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:40:02,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:40:02,167.167 INFO    ] No camera update needed
[2026-06-19 16:40:02,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:40:02,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:40:02,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:40:02,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:40:04,247.247 INFO    ] ================================================
[2026-06-19 16:40:04,262.262 INFO    ] Launching Daemon at Fri Jun 19 16:40:04 IST 2026
[2026-06-19 16:40:04,273.273 INFO    ] ================================================
[2026-06-19 16:40:04,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:40:04
[2026-06-19 16:40:05,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:40:05,730.730 INFO    ] Initializing speech engine...
[2026-06-19 16:40:05,742.742 INFO    ] 2026-06-19 16:40:05
[2026-06-19 16:40:06,037.037 INFO    ] 2026-06-19 16:40:05
[2026-06-19 16:40:06,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:40:06,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:40:06,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:40:06,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:40:06,460.460 INFO    ] time= 19/06/2026 16:40:06
[2026-06-19 16:40:06,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:40:06,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:40:06,571.571 INFO    ] No existing commands found in stream
[2026-06-19 16:40:11,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:40:11,587.587 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 16:40:14,847.847 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:40:14,849.849 INFO    ] Checking for system updates...
[2026-06-19 16:40:14,886.886 INFO    ] 200
[2026-06-19 16:40:14,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:14,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:40:14,952.952 INFO    ] No update needed
[2026-06-19 16:40:14,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 16:40:14,992.992 INFO    ] 200
[2026-06-19 16:40:14,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:15,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:40:15,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:40:15,090.090 INFO    ] No camera update needed
[2026-06-19 16:40:15,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:40:15,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:40:15,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:40:15,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:40:17,144.144 INFO    ] ================================================
[2026-06-19 16:40:17,159.159 INFO    ] Launching Daemon at Fri Jun 19 16:40:17 IST 2026
[2026-06-19 16:40:17,171.171 INFO    ] ================================================
[2026-06-19 16:40:17,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:40:17
[2026-06-19 16:40:18,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:40:18,832.832 INFO    ] Initializing speech engine...
[2026-06-19 16:40:18,846.846 INFO    ] 2026-06-19 16:40:18
[2026-06-19 16:40:19,171.171 INFO    ] 2026-06-19 16:40:19
[2026-06-19 16:40:19,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:40:19,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:40:19,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:40:19,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:40:19,638.638 INFO    ] time= 19/06/2026 16:40:19
[2026-06-19 16:40:19,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:40:19,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:40:19,832.832 INFO    ] No existing commands found in stream
[2026-06-19 16:40:24,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:40:24,865.865 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 16:40:26,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:40:26,845.845 INFO    ] Checking for system updates...
[2026-06-19 16:40:26,883.883 INFO    ] 200
[2026-06-19 16:40:26,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:26,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:40:26,943.943 INFO    ] No update needed
[2026-06-19 16:40:26,946.946 INFO    ] Checking for camera pi updates...
[2026-06-19 16:40:26,981.981 INFO    ] 200
[2026-06-19 16:40:26,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:27,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:40:27,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:40:27,076.076 INFO    ] No camera update needed
[2026-06-19 16:40:27,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:40:27,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:40:27,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:40:27,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:40:29,134.134 INFO    ] ================================================
[2026-06-19 16:40:29,150.150 INFO    ] Launching Daemon at Fri Jun 19 16:40:29 IST 2026
[2026-06-19 16:40:29,161.161 INFO    ] ================================================
[2026-06-19 16:40:29,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:40:29
[2026-06-19 16:40:30,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:40:30,664.664 INFO    ] Initializing speech engine...
[2026-06-19 16:40:30,676.676 INFO    ] 2026-06-19 16:40:30
[2026-06-19 16:40:30,954.954 INFO    ] 2026-06-19 16:40:30
[2026-06-19 16:40:31,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:40:31,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:40:31,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:40:31,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:40:31,384.384 INFO    ] time= 19/06/2026 16:40:31
[2026-06-19 16:40:31,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:40:31,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:40:31,556.556 INFO    ] No existing commands found in stream
[2026-06-19 16:40:36,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:40:36,572.572 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 16:40:40,745.745 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:40:40,748.748 INFO    ] Checking for system updates...
[2026-06-19 16:40:40,786.786 INFO    ] 200
[2026-06-19 16:40:40,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:40,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:40:40,843.843 INFO    ] No update needed
[2026-06-19 16:40:40,846.846 INFO    ] Checking for camera pi updates...
[2026-06-19 16:40:40,884.884 INFO    ] 200
[2026-06-19 16:40:40,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:40,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:40:40,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:40:40,987.987 INFO    ] No camera update needed
[2026-06-19 16:40:40,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:40:40,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:40:40,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:40:41,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:40:43,042.042 INFO    ] ================================================
[2026-06-19 16:40:43,058.058 INFO    ] Launching Daemon at Fri Jun 19 16:40:43 IST 2026
[2026-06-19 16:40:43,068.068 INFO    ] ================================================
[2026-06-19 16:40:43,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:40:43
[2026-06-19 16:40:44,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:40:44,498.498 INFO    ] Initializing speech engine...
[2026-06-19 16:40:44,507.507 INFO    ] 2026-06-19 16:40:44
[2026-06-19 16:40:44,762.762 INFO    ] 2026-06-19 16:40:44
[2026-06-19 16:40:44,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:40:45,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:40:45,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:40:45,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:40:45,244.244 INFO    ] time= 19/06/2026 16:40:45
[2026-06-19 16:40:45,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:40:45,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:40:45,439.439 INFO    ] No existing commands found in stream
[2026-06-19 16:40:50,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:40:50,469.469 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 16:40:53,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:40:53,839.839 INFO    ] Checking for system updates...
[2026-06-19 16:40:53,875.875 INFO    ] 200
[2026-06-19 16:40:53,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:53,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:40:53,933.933 INFO    ] No update needed
[2026-06-19 16:40:53,935.935 INFO    ] Checking for camera pi updates...
[2026-06-19 16:40:53,974.974 INFO    ] 200
[2026-06-19 16:40:53,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:40:54,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:40:54,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:40:54,068.068 INFO    ] No camera update needed
[2026-06-19 16:40:54,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:40:54,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:40:54,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:40:54,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:40:56,123.123 INFO    ] ================================================
[2026-06-19 16:40:56,140.140 INFO    ] Launching Daemon at Fri Jun 19 16:40:56 IST 2026
[2026-06-19 16:40:56,151.151 INFO    ] ================================================
[2026-06-19 16:40:56,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:40:56
[2026-06-19 16:40:57,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:40:57,562.562 INFO    ] Initializing speech engine...
[2026-06-19 16:40:57,571.571 INFO    ] 2026-06-19 16:40:57
[2026-06-19 16:40:57,865.865 INFO    ] 2026-06-19 16:40:57
[2026-06-19 16:40:57,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:40:58,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:40:58,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:40:58,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:40:58,359.359 INFO    ] time= 19/06/2026 16:40:58
[2026-06-19 16:40:58,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:40:58,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:40:58,561.561 INFO    ] No existing commands found in stream
[2026-06-19 16:41:03,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:41:03,576.576 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-19 16:41:08,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:41:08,040.040 INFO    ] Checking for system updates...
[2026-06-19 16:41:08,075.075 INFO    ] 200
[2026-06-19 16:41:08,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:08,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:41:08,133.133 INFO    ] No update needed
[2026-06-19 16:41:08,135.135 INFO    ] Checking for camera pi updates...
[2026-06-19 16:41:08,170.170 INFO    ] 200
[2026-06-19 16:41:08,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:08,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:41:08,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:41:08,366.366 INFO    ] No camera update needed
[2026-06-19 16:41:08,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:41:08,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:41:08,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:41:08,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:41:10,421.421 INFO    ] ================================================
[2026-06-19 16:41:10,441.441 INFO    ] Launching Daemon at Fri Jun 19 16:41:10 IST 2026
[2026-06-19 16:41:10,465.465 INFO    ] ================================================
[2026-06-19 16:41:11,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:41:11
[2026-06-19 16:41:11,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:41:11,894.894 INFO    ] Initializing speech engine...
[2026-06-19 16:41:11,903.903 INFO    ] 2026-06-19 16:41:11
[2026-06-19 16:41:12,164.164 INFO    ] 2026-06-19 16:41:12
[2026-06-19 16:41:12,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:41:12,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:41:12,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:41:12,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:41:12,677.677 INFO    ] time= 19/06/2026 16:41:12
[2026-06-19 16:41:12,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:41:12,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:41:12,908.908 INFO    ] No existing commands found in stream
[2026-06-19 16:41:17,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:41:17,933.933 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 16:41:20,089.089 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:41:20,092.092 INFO    ] Checking for system updates...
[2026-06-19 16:41:20,128.128 INFO    ] 200
[2026-06-19 16:41:20,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:20,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:41:20,191.191 INFO    ] No update needed
[2026-06-19 16:41:20,194.194 INFO    ] Checking for camera pi updates...
[2026-06-19 16:41:20,234.234 INFO    ] 200
[2026-06-19 16:41:20,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:20,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:41:20,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:41:20,325.325 INFO    ] No camera update needed
[2026-06-19 16:41:20,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:41:20,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:41:20,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:41:20,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:41:22,381.381 INFO    ] ================================================
[2026-06-19 16:41:22,396.396 INFO    ] Launching Daemon at Fri Jun 19 16:41:22 IST 2026
[2026-06-19 16:41:22,407.407 INFO    ] ================================================
[2026-06-19 16:41:22,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:41:22
[2026-06-19 16:41:23,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:41:23,814.814 INFO    ] Initializing speech engine...
[2026-06-19 16:41:23,819.819 INFO    ] 2026-06-19 16:41:23
[2026-06-19 16:41:24,094.094 INFO    ] 2026-06-19 16:41:24
[2026-06-19 16:41:24,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:41:24,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:41:24,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:41:24,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:41:24,554.554 INFO    ] time= 19/06/2026 16:41:24
[2026-06-19 16:41:24,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:41:24,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:41:24,748.748 INFO    ] No existing commands found in stream
[2026-06-19 16:41:29,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:41:29,763.763 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 16:41:32,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:41:32,683.683 INFO    ] Checking for system updates...
[2026-06-19 16:41:32,720.720 INFO    ] 200
[2026-06-19 16:41:32,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:32,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:41:32,782.782 INFO    ] No update needed
[2026-06-19 16:41:32,785.785 INFO    ] Checking for camera pi updates...
[2026-06-19 16:41:32,821.821 INFO    ] 200
[2026-06-19 16:41:32,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:32,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:41:32,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:41:32,898.898 INFO    ] No camera update needed
[2026-06-19 16:41:32,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:41:32,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:41:32,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:41:32,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:41:34,954.954 INFO    ] ================================================
[2026-06-19 16:41:34,969.969 INFO    ] Launching Daemon at Fri Jun 19 16:41:34 IST 2026
[2026-06-19 16:41:34,980.980 INFO    ] ================================================
[2026-06-19 16:41:35,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:41:35
[2026-06-19 16:41:36,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:41:36,433.433 INFO    ] Initializing speech engine...
[2026-06-19 16:41:36,442.442 INFO    ] 2026-06-19 16:41:36
[2026-06-19 16:41:36,739.739 INFO    ] 2026-06-19 16:41:36
[2026-06-19 16:41:36,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:41:36,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:41:36,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:41:37,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:41:37,161.161 INFO    ] time= 19/06/2026 16:41:37
[2026-06-19 16:41:37,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:41:37,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:41:37,368.368 INFO    ] No existing commands found in stream
[2026-06-19 16:41:42,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:41:42,397.397 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 16:41:45,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:41:45,721.721 INFO    ] Checking for system updates...
[2026-06-19 16:41:45,757.757 INFO    ] 200
[2026-06-19 16:41:45,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:45,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:41:45,815.815 INFO    ] No update needed
[2026-06-19 16:41:45,817.817 INFO    ] Checking for camera pi updates...
[2026-06-19 16:41:45,855.855 INFO    ] 200
[2026-06-19 16:41:45,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:45,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:41:45,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:41:45,952.952 INFO    ] No camera update needed
[2026-06-19 16:41:45,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:41:45,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:41:45,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:41:45,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:41:48,008.008 INFO    ] ================================================
[2026-06-19 16:41:48,023.023 INFO    ] Launching Daemon at Fri Jun 19 16:41:48 IST 2026
[2026-06-19 16:41:48,034.034 INFO    ] ================================================
[2026-06-19 16:41:48,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:41:48
[2026-06-19 16:41:49,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:41:49,469.469 INFO    ] Initializing speech engine...
[2026-06-19 16:41:49,481.481 INFO    ] 2026-06-19 16:41:49
[2026-06-19 16:41:49,737.737 INFO    ] 2026-06-19 16:41:49
[2026-06-19 16:41:49,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:41:50,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:41:50,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:41:50,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:41:50,224.224 INFO    ] time= 19/06/2026 16:41:50
[2026-06-19 16:41:50,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:41:50,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:41:50,437.437 INFO    ] No existing commands found in stream
[2026-06-19 16:41:55,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:41:55,453.453 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 16:41:58,822.822 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:41:58,825.825 INFO    ] Checking for system updates...
[2026-06-19 16:41:58,866.866 INFO    ] 200
[2026-06-19 16:41:58,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:58,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:41:58,930.930 INFO    ] No update needed
[2026-06-19 16:41:58,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 16:41:58,967.967 INFO    ] 200
[2026-06-19 16:41:58,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:41:59,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:41:59,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:41:59,061.061 INFO    ] No camera update needed
[2026-06-19 16:41:59,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:41:59,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:41:59,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:41:59,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:42:01,124.124 INFO    ] ================================================
[2026-06-19 16:42:01,139.139 INFO    ] Launching Daemon at Fri Jun 19 16:42:01 IST 2026
[2026-06-19 16:42:01,150.150 INFO    ] ================================================
[2026-06-19 16:42:01,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:42:01
[2026-06-19 16:42:02,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:42:03,054.054 INFO    ] Initializing speech engine...
[2026-06-19 16:42:03,066.066 INFO    ] 2026-06-19 16:42:03
[2026-06-19 16:42:03,340.340 INFO    ] 2026-06-19 16:42:03
[2026-06-19 16:42:03,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:42:03,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:42:03,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:42:03,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:42:03,729.729 INFO    ] time= 19/06/2026 16:42:03
[2026-06-19 16:42:03,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:42:03,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:42:03,926.926 INFO    ] No existing commands found in stream
[2026-06-19 16:42:08,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:42:08,939.939 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 16:42:13,240.240 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:42:13,242.242 INFO    ] Checking for system updates...
[2026-06-19 16:42:13,283.283 INFO    ] 200
[2026-06-19 16:42:13,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:42:13,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:42:13,347.347 INFO    ] No update needed
[2026-06-19 16:42:13,350.350 INFO    ] Checking for camera pi updates...
[2026-06-19 16:42:13,385.385 INFO    ] 200
[2026-06-19 16:42:13,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:42:13,435.435 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:42:13,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:42:13,482.482 INFO    ] No camera update needed
[2026-06-19 16:42:13,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:42:13,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:42:13,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:42:13,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:42:15,537.537 INFO    ] ================================================
[2026-06-19 16:42:15,555.555 INFO    ] Launching Daemon at Fri Jun 19 16:42:15 IST 2026
[2026-06-19 16:42:15,566.566 INFO    ] ================================================
[2026-06-19 16:42:16,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:42:16
[2026-06-19 16:42:16,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:42:17,130.130 INFO    ] Initializing speech engine...
[2026-06-19 16:42:17,143.143 INFO    ] 2026-06-19 16:42:17
[2026-06-19 16:42:17,394.394 INFO    ] 2026-06-19 16:42:17
[2026-06-19 16:42:17,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:42:17,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:42:17,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:42:17,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:42:17,783.783 INFO    ] time= 19/06/2026 16:42:17
[2026-06-19 16:42:17,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:42:17,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:42:17,984.984 INFO    ] No existing commands found in stream
[2026-06-19 16:42:22,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:42:22,997.997 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 16:42:25,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:42:25,518.518 INFO    ] Checking for system updates...
[2026-06-19 16:42:25,554.554 INFO    ] 200
[2026-06-19 16:42:25,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:42:25,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:42:25,622.622 INFO    ] No update needed
[2026-06-19 16:42:25,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 16:42:25,658.658 INFO    ] 200
[2026-06-19 16:42:25,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:42:25,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:42:25,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:42:25,757.757 INFO    ] No camera update needed
[2026-06-19 16:42:25,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:42:25,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:42:25,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:42:25,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:42:27,815.815 INFO    ] ================================================
[2026-06-19 16:42:27,830.830 INFO    ] Launching Daemon at Fri Jun 19 16:42:27 IST 2026
[2026-06-19 16:42:27,840.840 INFO    ] ================================================
[2026-06-19 16:42:28,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:42:28
[2026-06-19 16:42:29,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:42:29,301.301 INFO    ] Initializing speech engine...
[2026-06-19 16:42:29,308.308 INFO    ] 2026-06-19 16:42:29
[2026-06-19 16:42:29,570.570 INFO    ] 2026-06-19 16:42:29
[2026-06-19 16:42:29,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:42:29,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:42:29,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:42:30,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:42:30,070.070 INFO    ] time= 19/06/2026 16:42:30
[2026-06-19 16:42:30,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:42:30,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:42:30,275.275 INFO    ] No existing commands found in stream
[2026-06-19 16:42:35,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:42:35,303.303 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 16:42:39,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:42:39,598.598 INFO    ] Checking for system updates...
[2026-06-19 16:42:39,635.635 INFO    ] 200
[2026-06-19 16:42:39,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:42:39,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:42:39,692.692 INFO    ] No update needed
[2026-06-19 16:42:39,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 16:42:39,729.729 INFO    ] 200
[2026-06-19 16:42:39,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:42:39,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:42:39,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:42:39,832.832 INFO    ] No camera update needed
[2026-06-19 16:42:39,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:42:39,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:42:39,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:42:39,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:42:41,887.887 INFO    ] ================================================
[2026-06-19 16:42:41,902.902 INFO    ] Launching Daemon at Fri Jun 19 16:42:41 IST 2026
[2026-06-19 16:42:41,913.913 INFO    ] ================================================
[2026-06-19 16:42:42,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:42:42
[2026-06-19 16:42:43,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:42:43,594.594 INFO    ] Initializing speech engine...
[2026-06-19 16:42:43,602.602 INFO    ] 2026-06-19 16:42:43
[2026-06-19 16:42:43,921.921 INFO    ] 2026-06-19 16:42:43
[2026-06-19 16:42:44,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:42:44,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:42:44,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:42:44,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:42:44,429.429 INFO    ] time= 19/06/2026 16:42:44
[2026-06-19 16:42:44,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:42:44,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:42:44,613.613 INFO    ] No existing commands found in stream
[2026-06-19 16:42:49,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:42:49,653.653 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 16:42:52,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:42:52,444.444 INFO    ] Checking for system updates...
[2026-06-19 16:42:52,482.482 INFO    ] 200
[2026-06-19 16:42:52,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:42:52,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:42:52,547.547 INFO    ] No update needed
[2026-06-19 16:42:52,550.550 INFO    ] Checking for camera pi updates...
[2026-06-19 16:42:52,588.588 INFO    ] 200
[2026-06-19 16:42:52,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:42:52,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:42:52,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:42:52,680.680 INFO    ] No camera update needed
[2026-06-19 16:42:52,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:42:52,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:42:52,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:42:52,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:42:54,734.734 INFO    ] ================================================
[2026-06-19 16:42:54,749.749 INFO    ] Launching Daemon at Fri Jun 19 16:42:54 IST 2026
[2026-06-19 16:42:54,760.760 INFO    ] ================================================
[2026-06-19 16:42:55,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:42:55
[2026-06-19 16:42:55,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:42:56,163.163 INFO    ] Initializing speech engine...
[2026-06-19 16:42:56,170.170 INFO    ] 2026-06-19 16:42:56
[2026-06-19 16:42:56,450.450 INFO    ] 2026-06-19 16:42:56
[2026-06-19 16:42:56,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:42:56,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:42:56,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:42:56,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:42:56,837.837 INFO    ] time= 19/06/2026 16:42:56
[2026-06-19 16:42:56,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:42:56,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:42:56,965.965 INFO    ] No existing commands found in stream
[2026-06-19 16:43:01,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:43:01,983.983 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-19 16:43:05,786.786 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:43:05,788.788 INFO    ] Checking for system updates...
[2026-06-19 16:43:05,828.828 INFO    ] 200
[2026-06-19 16:43:05,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:05,884.884 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:43:05,886.886 INFO    ] No update needed
[2026-06-19 16:43:05,889.889 INFO    ] Checking for camera pi updates...
[2026-06-19 16:43:05,922.922 INFO    ] 200
[2026-06-19 16:43:05,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:05,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:43:06,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:43:06,035.035 INFO    ] No camera update needed
[2026-06-19 16:43:06,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:43:06,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:43:06,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:43:06,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:43:08,089.089 INFO    ] ================================================
[2026-06-19 16:43:08,104.104 INFO    ] Launching Daemon at Fri Jun 19 16:43:08 IST 2026
[2026-06-19 16:43:08,114.114 INFO    ] ================================================
[2026-06-19 16:43:08,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:43:08
[2026-06-19 16:43:09,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:43:09,515.515 INFO    ] Initializing speech engine...
[2026-06-19 16:43:09,530.530 INFO    ] 2026-06-19 16:43:09
[2026-06-19 16:43:09,813.813 INFO    ] 2026-06-19 16:43:09
[2026-06-19 16:43:09,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:43:10,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:43:10,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:43:10,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:43:10,239.239 INFO    ] time= 19/06/2026 16:43:10
[2026-06-19 16:43:10,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:43:10,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:43:10,390.390 INFO    ] No existing commands found in stream
[2026-06-19 16:43:15,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:43:15,418.418 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 16:43:16,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:43:16,109.109 INFO    ] Checking for system updates...
[2026-06-19 16:43:16,146.146 INFO    ] 200
[2026-06-19 16:43:16,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:16,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:43:16,214.214 INFO    ] No update needed
[2026-06-19 16:43:16,217.217 INFO    ] Checking for camera pi updates...
[2026-06-19 16:43:16,257.257 INFO    ] 200
[2026-06-19 16:43:16,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:16,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:43:16,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:43:16,452.452 INFO    ] No camera update needed
[2026-06-19 16:43:16,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:43:16,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:43:16,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:43:16,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:43:18,514.514 INFO    ] ================================================
[2026-06-19 16:43:18,530.530 INFO    ] Launching Daemon at Fri Jun 19 16:43:18 IST 2026
[2026-06-19 16:43:18,541.541 INFO    ] ================================================
[2026-06-19 16:43:19,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:43:19
[2026-06-19 16:43:19,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:43:20,004.004 INFO    ] Initializing speech engine...
[2026-06-19 16:43:20,013.013 INFO    ] 2026-06-19 16:43:20
[2026-06-19 16:43:20,263.263 INFO    ] 2026-06-19 16:43:20
[2026-06-19 16:43:20,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:43:20,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:43:20,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:43:20,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:43:20,742.742 INFO    ] time= 19/06/2026 16:43:20
[2026-06-19 16:43:20,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:43:20,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:43:20,976.976 INFO    ] No existing commands found in stream
[2026-06-19 16:43:25,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:43:25,992.992 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 16:43:27,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:43:27,025.025 INFO    ] Checking for system updates...
[2026-06-19 16:43:27,067.067 INFO    ] 200
[2026-06-19 16:43:27,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:27,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:43:27,135.135 INFO    ] No update needed
[2026-06-19 16:43:27,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 16:43:27,176.176 INFO    ] 200
[2026-06-19 16:43:27,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:27,219.219 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:43:27,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:43:27,269.269 INFO    ] No camera update needed
[2026-06-19 16:43:27,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:43:27,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:43:27,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:43:27,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:43:29,327.327 INFO    ] ================================================
[2026-06-19 16:43:29,343.343 INFO    ] Launching Daemon at Fri Jun 19 16:43:29 IST 2026
[2026-06-19 16:43:29,353.353 INFO    ] ================================================
[2026-06-19 16:43:29,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:43:29
[2026-06-19 16:43:30,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:43:30,821.821 INFO    ] Initializing speech engine...
[2026-06-19 16:43:30,833.833 INFO    ] 2026-06-19 16:43:30
[2026-06-19 16:43:31,116.116 INFO    ] 2026-06-19 16:43:31
[2026-06-19 16:43:31,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:43:31,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:43:31,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:43:31,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:43:31,682.682 INFO    ] time= 19/06/2026 16:43:31
[2026-06-19 16:43:31,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:43:31,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:43:31,840.840 INFO    ] No existing commands found in stream
[2026-06-19 16:43:36,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:43:36,867.867 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 16:43:41,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:43:41,355.355 INFO    ] Checking for system updates...
[2026-06-19 16:43:41,393.393 INFO    ] 200
[2026-06-19 16:43:41,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:41,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:43:41,460.460 INFO    ] No update needed
[2026-06-19 16:43:41,462.462 INFO    ] Checking for camera pi updates...
[2026-06-19 16:43:41,500.500 INFO    ] 200
[2026-06-19 16:43:41,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:41,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:43:41,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:43:41,595.595 INFO    ] No camera update needed
[2026-06-19 16:43:41,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:43:41,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:43:41,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:43:41,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:43:43,650.650 INFO    ] ================================================
[2026-06-19 16:43:43,665.665 INFO    ] Launching Daemon at Fri Jun 19 16:43:43 IST 2026
[2026-06-19 16:43:43,676.676 INFO    ] ================================================
[2026-06-19 16:43:44,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:43:44
[2026-06-19 16:43:45,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:43:45,350.350 INFO    ] Initializing speech engine...
[2026-06-19 16:43:45,355.355 INFO    ] 2026-06-19 16:43:45
[2026-06-19 16:43:45,644.644 INFO    ] 2026-06-19 16:43:45
[2026-06-19 16:43:45,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:43:45,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:43:45,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:43:46,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:43:46,171.171 INFO    ] time= 19/06/2026 16:43:46
[2026-06-19 16:43:46,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:43:46,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:43:46,347.347 INFO    ] No existing commands found in stream
[2026-06-19 16:43:51,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:43:51,380.380 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 16:43:52,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:43:52,754.754 INFO    ] Checking for system updates...
[2026-06-19 16:43:52,791.791 INFO    ] 200
[2026-06-19 16:43:52,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:52,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:43:52,851.851 INFO    ] No update needed
[2026-06-19 16:43:52,853.853 INFO    ] Checking for camera pi updates...
[2026-06-19 16:43:52,887.887 INFO    ] 200
[2026-06-19 16:43:52,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:43:52,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:43:52,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:43:52,989.989 INFO    ] No camera update needed
[2026-06-19 16:43:52,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:43:52,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:43:52,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:43:53,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:43:55,043.043 INFO    ] ================================================
[2026-06-19 16:43:55,058.058 INFO    ] Launching Daemon at Fri Jun 19 16:43:55 IST 2026
[2026-06-19 16:43:55,069.069 INFO    ] ================================================
[2026-06-19 16:43:55,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:43:55
[2026-06-19 16:43:56,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:43:56,484.484 INFO    ] Initializing speech engine...
[2026-06-19 16:43:56,492.492 INFO    ] 2026-06-19 16:43:56
[2026-06-19 16:43:56,792.792 INFO    ] 2026-06-19 16:43:56
[2026-06-19 16:43:56,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:43:57,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:43:57,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:43:57,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:43:57,223.223 INFO    ] time= 19/06/2026 16:43:57
[2026-06-19 16:43:57,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:43:57,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:43:57,366.366 INFO    ] No existing commands found in stream
[2026-06-19 16:44:02,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:44:02,390.390 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 16:44:06,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:44:06,844.844 INFO    ] Checking for system updates...
[2026-06-19 16:44:06,885.885 INFO    ] 200
[2026-06-19 16:44:06,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:06,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:44:06,943.943 INFO    ] No update needed
[2026-06-19 16:44:06,945.945 INFO    ] Checking for camera pi updates...
[2026-06-19 16:44:06,979.979 INFO    ] 200
[2026-06-19 16:44:06,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:07,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:44:07,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:44:07,078.078 INFO    ] No camera update needed
[2026-06-19 16:44:07,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:44:07,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:44:07,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:44:07,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:44:09,133.133 INFO    ] ================================================
[2026-06-19 16:44:09,148.148 INFO    ] Launching Daemon at Fri Jun 19 16:44:09 IST 2026
[2026-06-19 16:44:09,159.159 INFO    ] ================================================
[2026-06-19 16:44:09,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:44:09
[2026-06-19 16:44:10,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:44:10,715.715 INFO    ] Initializing speech engine...
[2026-06-19 16:44:10,727.727 INFO    ] 2026-06-19 16:44:10
[2026-06-19 16:44:11,016.016 INFO    ] 2026-06-19 16:44:11
[2026-06-19 16:44:11,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:44:11,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:44:11,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:44:11,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:44:11,564.564 INFO    ] time= 19/06/2026 16:44:11
[2026-06-19 16:44:11,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:44:11,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:44:11,712.712 INFO    ] No existing commands found in stream
[2026-06-19 16:44:16,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:44:16,746.746 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 16:44:19,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:44:19,514.514 INFO    ] Checking for system updates...
[2026-06-19 16:44:19,557.557 INFO    ] 200
[2026-06-19 16:44:19,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:19,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:44:19,629.629 INFO    ] No update needed
[2026-06-19 16:44:19,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 16:44:19,671.671 INFO    ] 200
[2026-06-19 16:44:19,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:19,715.715 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:44:19,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:44:19,766.766 INFO    ] No camera update needed
[2026-06-19 16:44:19,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:44:19,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:44:19,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:44:19,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:44:21,826.826 INFO    ] ================================================
[2026-06-19 16:44:21,842.842 INFO    ] Launching Daemon at Fri Jun 19 16:44:21 IST 2026
[2026-06-19 16:44:21,853.853 INFO    ] ================================================
[2026-06-19 16:44:22,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:44:22
[2026-06-19 16:44:23,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:44:23,349.349 INFO    ] Initializing speech engine...
[2026-06-19 16:44:23,357.357 INFO    ] 2026-06-19 16:44:23
[2026-06-19 16:44:23,630.630 INFO    ] 2026-06-19 16:44:23
[2026-06-19 16:44:23,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:44:23,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:44:23,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:44:24,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:44:24,112.112 INFO    ] time= 19/06/2026 16:44:24
[2026-06-19 16:44:24,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:44:24,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:44:24,357.357 INFO    ] No existing commands found in stream
[2026-06-19 16:44:29,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:44:29,376.376 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 16:44:33,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:44:33,413.413 INFO    ] Checking for system updates...
[2026-06-19 16:44:33,453.453 INFO    ] 200
[2026-06-19 16:44:33,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:33,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:44:33,519.519 INFO    ] No update needed
[2026-06-19 16:44:33,522.522 INFO    ] Checking for camera pi updates...
[2026-06-19 16:44:33,560.560 INFO    ] 200
[2026-06-19 16:44:33,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:33,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:44:33,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:44:33,664.664 INFO    ] No camera update needed
[2026-06-19 16:44:33,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:44:33,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:44:33,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:44:33,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:44:35,718.718 INFO    ] ================================================
[2026-06-19 16:44:35,733.733 INFO    ] Launching Daemon at Fri Jun 19 16:44:35 IST 2026
[2026-06-19 16:44:35,744.744 INFO    ] ================================================
[2026-06-19 16:44:36,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:44:36
[2026-06-19 16:44:36,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:44:37,263.263 INFO    ] Initializing speech engine...
[2026-06-19 16:44:37,269.269 INFO    ] 2026-06-19 16:44:37
[2026-06-19 16:44:37,515.515 INFO    ] 2026-06-19 16:44:37
[2026-06-19 16:44:37,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:44:37,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:44:37,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:44:37,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:44:38,010.010 INFO    ] time= 19/06/2026 16:44:37
[2026-06-19 16:44:38,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:44:38,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:44:38,226.226 INFO    ] No existing commands found in stream
[2026-06-19 16:44:43,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:44:43,248.248 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 16:44:46,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:44:46,396.396 INFO    ] Checking for system updates...
[2026-06-19 16:44:46,432.432 INFO    ] 200
[2026-06-19 16:44:46,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:46,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:44:46,489.489 INFO    ] No update needed
[2026-06-19 16:44:46,492.492 INFO    ] Checking for camera pi updates...
[2026-06-19 16:44:46,531.531 INFO    ] 200
[2026-06-19 16:44:46,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:46,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:44:46,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:44:46,629.629 INFO    ] No camera update needed
[2026-06-19 16:44:46,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:44:46,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:44:46,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:44:46,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:44:48,685.685 INFO    ] ================================================
[2026-06-19 16:44:48,701.701 INFO    ] Launching Daemon at Fri Jun 19 16:44:48 IST 2026
[2026-06-19 16:44:48,711.711 INFO    ] ================================================
[2026-06-19 16:44:49,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:44:49
[2026-06-19 16:44:49,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:44:50,119.119 INFO    ] Initializing speech engine...
[2026-06-19 16:44:50,142.142 INFO    ] 2026-06-19 16:44:50
[2026-06-19 16:44:50,400.400 INFO    ] 2026-06-19 16:44:50
[2026-06-19 16:44:50,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:44:50,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:44:50,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:44:50,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:44:50,779.779 INFO    ] time= 19/06/2026 16:44:50
[2026-06-19 16:44:50,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:44:50,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:44:50,974.974 INFO    ] No existing commands found in stream
[2026-06-19 16:44:55,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:44:55,996.996 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 16:44:59,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:44:59,364.364 INFO    ] Checking for system updates...
[2026-06-19 16:44:59,404.404 INFO    ] 200
[2026-06-19 16:44:59,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:59,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:44:59,470.470 INFO    ] No update needed
[2026-06-19 16:44:59,472.472 INFO    ] Checking for camera pi updates...
[2026-06-19 16:44:59,506.506 INFO    ] 200
[2026-06-19 16:44:59,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:44:59,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:44:59,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:44:59,599.599 INFO    ] No camera update needed
[2026-06-19 16:44:59,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:44:59,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:44:59,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:44:59,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:45:01,738.738 INFO    ] ================================================
[2026-06-19 16:45:01,798.798 INFO    ] Launching Daemon at Fri Jun 19 16:45:01 IST 2026
[2026-06-19 16:45:01,847.847 INFO    ] ================================================
[2026-06-19 16:45:02,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:45:02
[2026-06-19 16:45:03,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:45:03,509.509 INFO    ] Initializing speech engine...
[2026-06-19 16:45:03,531.531 INFO    ] 2026-06-19 16:45:03
[2026-06-19 16:45:03,785.785 INFO    ] 2026-06-19 16:45:03
[2026-06-19 16:45:03,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:45:04,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:45:04,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:45:04,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:45:04,246.246 INFO    ] time= 19/06/2026 16:45:04
[2026-06-19 16:45:04,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:45:04,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:45:04,438.438 INFO    ] No existing commands found in stream
[2026-06-19 16:45:09,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:45:09,451.451 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 16:45:12,867.867 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:45:12,870.870 INFO    ] Checking for system updates...
[2026-06-19 16:45:12,911.911 INFO    ] 200
[2026-06-19 16:45:12,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:45:12,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:45:12,978.978 INFO    ] No update needed
[2026-06-19 16:45:12,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 16:45:13,020.020 INFO    ] 200
[2026-06-19 16:45:13,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:45:13,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:45:13,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:45:13,124.124 INFO    ] No camera update needed
[2026-06-19 16:45:13,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:45:13,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:45:13,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:45:13,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:45:15,181.181 INFO    ] ================================================
[2026-06-19 16:45:15,199.199 INFO    ] Launching Daemon at Fri Jun 19 16:45:15 IST 2026
[2026-06-19 16:45:15,210.210 INFO    ] ================================================
[2026-06-19 16:45:15,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:45:15
[2026-06-19 16:45:16,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:45:16,807.807 INFO    ] Initializing speech engine...
[2026-06-19 16:45:16,814.814 INFO    ] 2026-06-19 16:45:16
[2026-06-19 16:45:17,065.065 INFO    ] 2026-06-19 16:45:17
[2026-06-19 16:45:17,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:45:17,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:45:17,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:45:17,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:45:17,574.574 INFO    ] time= 19/06/2026 16:45:17
[2026-06-19 16:45:17,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:45:17,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:45:17,788.788 INFO    ] No existing commands found in stream
[2026-06-19 16:45:22,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:45:22,814.814 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 16:45:23,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:45:23,799.799 INFO    ] Checking for system updates...
[2026-06-19 16:45:23,841.841 INFO    ] 200
[2026-06-19 16:45:23,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:45:23,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:45:23,908.908 INFO    ] No update needed
[2026-06-19 16:45:23,910.910 INFO    ] Checking for camera pi updates...
[2026-06-19 16:45:23,949.949 INFO    ] 200
[2026-06-19 16:45:23,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:45:23,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:45:24,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:45:24,145.145 INFO    ] No camera update needed
[2026-06-19 16:45:24,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:45:24,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:45:24,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:45:24,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:45:26,201.201 INFO    ] ================================================
[2026-06-19 16:45:26,217.217 INFO    ] Launching Daemon at Fri Jun 19 16:45:26 IST 2026
[2026-06-19 16:45:26,227.227 INFO    ] ================================================
[2026-06-19 16:45:26,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:45:26
[2026-06-19 16:45:27,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:45:27,748.748 INFO    ] Initializing speech engine...
[2026-06-19 16:45:27,758.758 INFO    ] 2026-06-19 16:45:27
[2026-06-19 16:45:28,010.010 INFO    ] 2026-06-19 16:45:28
[2026-06-19 16:45:28,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:45:28,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:45:28,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:45:28,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:45:28,478.478 INFO    ] time= 19/06/2026 16:45:28
[2026-06-19 16:45:28,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:45:28,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:45:28,720.720 INFO    ] No existing commands found in stream
[2026-06-19 16:45:33,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:45:33,748.748 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 16:45:38,086.086 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:45:38,089.089 INFO    ] Checking for system updates...
[2026-06-19 16:45:38,125.125 INFO    ] 200
[2026-06-19 16:45:38,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:45:38,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:45:38,183.183 INFO    ] No update needed
[2026-06-19 16:45:38,185.185 INFO    ] Checking for camera pi updates...
[2026-06-19 16:45:38,219.219 INFO    ] 200
[2026-06-19 16:45:38,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:45:38,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:45:38,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:45:38,320.320 INFO    ] No camera update needed
[2026-06-19 16:45:38,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:45:38,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:45:38,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:45:38,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:45:40,374.374 INFO    ] ================================================
[2026-06-19 16:45:40,389.389 INFO    ] Launching Daemon at Fri Jun 19 16:45:40 IST 2026
[2026-06-19 16:45:40,400.400 INFO    ] ================================================
[2026-06-19 16:45:40,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:45:40
[2026-06-19 16:45:41,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:45:41,865.865 INFO    ] Initializing speech engine...
[2026-06-19 16:45:41,875.875 INFO    ] 2026-06-19 16:45:41
[2026-06-19 16:45:42,138.138 INFO    ] 2026-06-19 16:45:42
[2026-06-19 16:45:42,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:45:42,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:45:42,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:45:42,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:45:42,612.612 INFO    ] time= 19/06/2026 16:45:42
[2026-06-19 16:45:42,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:45:42,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:45:42,816.816 INFO    ] No existing commands found in stream
[2026-06-19 16:45:47,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:45:47,847.847 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 16:45:50,598.598 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:45:50,600.600 INFO    ] Checking for system updates...
[2026-06-19 16:45:50,642.642 INFO    ] 200
[2026-06-19 16:45:50,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:45:50,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:45:50,709.709 INFO    ] No update needed
[2026-06-19 16:45:50,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 16:45:50,751.751 INFO    ] 200
[2026-06-19 16:45:50,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:45:50,800.800 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:45:50,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:45:50,850.850 INFO    ] No camera update needed
[2026-06-19 16:45:50,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:45:50,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:45:50,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:45:50,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:45:52,906.906 INFO    ] ================================================
[2026-06-19 16:45:52,922.922 INFO    ] Launching Daemon at Fri Jun 19 16:45:52 IST 2026
[2026-06-19 16:45:52,933.933 INFO    ] ================================================
[2026-06-19 16:45:53,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:45:53
[2026-06-19 16:45:54,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:45:54,576.576 INFO    ] Initializing speech engine...
[2026-06-19 16:45:54,583.583 INFO    ] 2026-06-19 16:45:54
[2026-06-19 16:45:54,899.899 INFO    ] 2026-06-19 16:45:54
[2026-06-19 16:45:54,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:45:55,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:45:55,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:45:55,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:45:55,407.407 INFO    ] time= 19/06/2026 16:45:55
[2026-06-19 16:45:55,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:45:55,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:45:55,592.592 INFO    ] No existing commands found in stream
[2026-06-19 16:46:00,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:46:00,632.632 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 16:46:03,929.929 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:46:03,932.932 INFO    ] Checking for system updates...
[2026-06-19 16:46:03,973.973 INFO    ] 200
[2026-06-19 16:46:03,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:04,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:46:04,038.038 INFO    ] No update needed
[2026-06-19 16:46:04,040.040 INFO    ] Checking for camera pi updates...
[2026-06-19 16:46:04,078.078 INFO    ] 200
[2026-06-19 16:46:04,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:04,122.122 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:46:04,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:46:04,159.159 INFO    ] No camera update needed
[2026-06-19 16:46:04,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:46:04,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:46:04,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:46:04,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:46:06,215.215 INFO    ] ================================================
[2026-06-19 16:46:06,235.235 INFO    ] Launching Daemon at Fri Jun 19 16:46:06 IST 2026
[2026-06-19 16:46:06,247.247 INFO    ] ================================================
[2026-06-19 16:46:06,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:46:06
[2026-06-19 16:46:07,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:46:07,766.766 INFO    ] Initializing speech engine...
[2026-06-19 16:46:07,781.781 INFO    ] 2026-06-19 16:46:07
[2026-06-19 16:46:08,048.048 INFO    ] 2026-06-19 16:46:08
[2026-06-19 16:46:08,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:46:08,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:46:08,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:46:08,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:46:08,531.531 INFO    ] time= 19/06/2026 16:46:08
[2026-06-19 16:46:08,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:46:08,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:46:08,762.762 INFO    ] No existing commands found in stream
[2026-06-19 16:46:13,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:46:13,790.790 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 16:46:17,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:46:17,022.022 INFO    ] Checking for system updates...
[2026-06-19 16:46:17,058.058 INFO    ] 200
[2026-06-19 16:46:17,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:17,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:46:17,117.117 INFO    ] No update needed
[2026-06-19 16:46:17,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 16:46:17,156.156 INFO    ] 200
[2026-06-19 16:46:17,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:17,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:46:17,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:46:17,247.247 INFO    ] No camera update needed
[2026-06-19 16:46:17,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:46:17,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:46:17,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:46:17,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:46:19,305.305 INFO    ] ================================================
[2026-06-19 16:46:19,320.320 INFO    ] Launching Daemon at Fri Jun 19 16:46:19 IST 2026
[2026-06-19 16:46:19,331.331 INFO    ] ================================================
[2026-06-19 16:46:19,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:46:19
[2026-06-19 16:46:20,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:46:20,740.740 INFO    ] Initializing speech engine...
[2026-06-19 16:46:20,762.762 INFO    ] 2026-06-19 16:46:20
[2026-06-19 16:46:21,022.022 INFO    ] 2026-06-19 16:46:21
[2026-06-19 16:46:21,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:46:21,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:46:21,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:46:21,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:46:21,502.502 INFO    ] time= 19/06/2026 16:46:21
[2026-06-19 16:46:21,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:46:21,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:46:21,748.748 INFO    ] No existing commands found in stream
[2026-06-19 16:46:26,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:46:26,766.766 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 16:46:30,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:46:30,622.622 INFO    ] Checking for system updates...
[2026-06-19 16:46:30,661.661 INFO    ] 200
[2026-06-19 16:46:30,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:30,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:46:30,724.724 INFO    ] No update needed
[2026-06-19 16:46:30,727.727 INFO    ] Checking for camera pi updates...
[2026-06-19 16:46:30,764.764 INFO    ] 200
[2026-06-19 16:46:30,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:30,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:46:30,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:46:30,858.858 INFO    ] No camera update needed
[2026-06-19 16:46:30,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:46:30,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:46:30,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:46:30,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:46:32,913.913 INFO    ] ================================================
[2026-06-19 16:46:32,929.929 INFO    ] Launching Daemon at Fri Jun 19 16:46:32 IST 2026
[2026-06-19 16:46:32,940.940 INFO    ] ================================================
[2026-06-19 16:46:33,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:46:33
[2026-06-19 16:46:34,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:46:34,549.549 INFO    ] Initializing speech engine...
[2026-06-19 16:46:34,557.557 INFO    ] 2026-06-19 16:46:34
[2026-06-19 16:46:34,843.843 INFO    ] 2026-06-19 16:46:34
[2026-06-19 16:46:34,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:46:35,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:46:35,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:46:35,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:46:35,383.383 INFO    ] time= 19/06/2026 16:46:35
[2026-06-19 16:46:35,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:46:35,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:46:35,540.540 INFO    ] No existing commands found in stream
[2026-06-19 16:46:40,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:46:40,572.572 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 16:46:43,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:46:43,069.069 INFO    ] Checking for system updates...
[2026-06-19 16:46:43,109.109 INFO    ] 200
[2026-06-19 16:46:43,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:43,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:46:43,175.175 INFO    ] No update needed
[2026-06-19 16:46:43,178.178 INFO    ] Checking for camera pi updates...
[2026-06-19 16:46:43,216.216 INFO    ] 200
[2026-06-19 16:46:43,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:43,265.265 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:46:43,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:46:43,314.314 INFO    ] No camera update needed
[2026-06-19 16:46:43,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:46:43,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:46:43,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:46:43,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:46:45,372.372 INFO    ] ================================================
[2026-06-19 16:46:45,388.388 INFO    ] Launching Daemon at Fri Jun 19 16:46:45 IST 2026
[2026-06-19 16:46:45,399.399 INFO    ] ================================================
[2026-06-19 16:46:45,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:46:45
[2026-06-19 16:46:46,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:46:46,793.793 INFO    ] Initializing speech engine...
[2026-06-19 16:46:46,801.801 INFO    ] 2026-06-19 16:46:46
[2026-06-19 16:46:47,074.074 INFO    ] 2026-06-19 16:46:47
[2026-06-19 16:46:47,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:46:47,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:46:47,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:46:47,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:46:47,461.461 INFO    ] time= 19/06/2026 16:46:47
[2026-06-19 16:46:47,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:46:47,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:46:47,636.636 INFO    ] No existing commands found in stream
[2026-06-19 16:46:52,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:46:52,664.664 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 16:46:54,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:46:54,573.573 INFO    ] Checking for system updates...
[2026-06-19 16:46:54,609.609 INFO    ] 200
[2026-06-19 16:46:54,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:54,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:46:54,667.667 INFO    ] No update needed
[2026-06-19 16:46:54,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 16:46:54,703.703 INFO    ] 200
[2026-06-19 16:46:54,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:46:54,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:46:54,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:46:54,803.803 INFO    ] No camera update needed
[2026-06-19 16:46:54,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:46:54,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:46:54,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:46:54,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:46:56,860.860 INFO    ] ================================================
[2026-06-19 16:46:56,875.875 INFO    ] Launching Daemon at Fri Jun 19 16:46:56 IST 2026
[2026-06-19 16:46:56,885.885 INFO    ] ================================================
[2026-06-19 16:46:57,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:46:57
[2026-06-19 16:46:58,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:46:58,299.299 INFO    ] Initializing speech engine...
[2026-06-19 16:46:58,305.305 INFO    ] 2026-06-19 16:46:58
[2026-06-19 16:46:58,597.597 INFO    ] 2026-06-19 16:46:58
[2026-06-19 16:46:58,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:46:58,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:46:58,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:46:59,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:46:59,079.079 INFO    ] time= 19/06/2026 16:46:59
[2026-06-19 16:46:59,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:46:59,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:46:59,299.299 INFO    ] No existing commands found in stream
[2026-06-19 16:47:04,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:47:04,327.327 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 16:47:07,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:47:07,336.336 INFO    ] Checking for system updates...
[2026-06-19 16:47:07,375.375 INFO    ] 200
[2026-06-19 16:47:07,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:07,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:07,439.439 INFO    ] No update needed
[2026-06-19 16:47:07,441.441 INFO    ] Checking for camera pi updates...
[2026-06-19 16:47:07,479.479 INFO    ] 200
[2026-06-19 16:47:07,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:07,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:47:07,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:07,571.571 INFO    ] No camera update needed
[2026-06-19 16:47:07,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:47:07,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:47:07,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:47:07,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:47:09,628.628 INFO    ] ================================================
[2026-06-19 16:47:09,643.643 INFO    ] Launching Daemon at Fri Jun 19 16:47:09 IST 2026
[2026-06-19 16:47:09,654.654 INFO    ] ================================================
[2026-06-19 16:47:10,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:47:10
[2026-06-19 16:47:10,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:47:11,059.059 INFO    ] Initializing speech engine...
[2026-06-19 16:47:11,068.068 INFO    ] 2026-06-19 16:47:11
[2026-06-19 16:47:11,356.356 INFO    ] 2026-06-19 16:47:11
[2026-06-19 16:47:11,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:47:11,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:47:11,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:47:11,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:47:11,767.767 INFO    ] time= 19/06/2026 16:47:11
[2026-06-19 16:47:11,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:47:11,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:47:11,853.853 INFO    ] No existing commands found in stream
[2026-06-19 16:47:16,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:47:16,881.881 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 16:47:19,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:47:19,153.153 INFO    ] Checking for system updates...
[2026-06-19 16:47:19,188.188 INFO    ] 200
[2026-06-19 16:47:19,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:19,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:19,246.246 INFO    ] No update needed
[2026-06-19 16:47:19,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 16:47:19,282.282 INFO    ] 200
[2026-06-19 16:47:19,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:19,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:47:19,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:19,381.381 INFO    ] No camera update needed
[2026-06-19 16:47:19,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:47:19,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:47:19,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:47:19,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:47:21,436.436 INFO    ] ================================================
[2026-06-19 16:47:21,452.452 INFO    ] Launching Daemon at Fri Jun 19 16:47:21 IST 2026
[2026-06-19 16:47:21,462.462 INFO    ] ================================================
[2026-06-19 16:47:22,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:47:22
[2026-06-19 16:47:22,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:47:22,892.892 INFO    ] Initializing speech engine...
[2026-06-19 16:47:22,901.901 INFO    ] 2026-06-19 16:47:22
[2026-06-19 16:47:23,154.154 INFO    ] 2026-06-19 16:47:23
[2026-06-19 16:47:23,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:47:23,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:47:23,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:47:23,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:47:23,640.640 INFO    ] time= 19/06/2026 16:47:23
[2026-06-19 16:47:23,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:47:23,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:47:23,802.802 INFO    ] No existing commands found in stream
[2026-06-19 16:47:28,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:47:28,834.834 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 16:47:30,697.697 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:47:30,699.699 INFO    ] Checking for system updates...
[2026-06-19 16:47:30,736.736 INFO    ] 200
[2026-06-19 16:47:30,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:30,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:30,795.795 INFO    ] No update needed
[2026-06-19 16:47:30,797.797 INFO    ] Checking for camera pi updates...
[2026-06-19 16:47:30,835.835 INFO    ] 200
[2026-06-19 16:47:30,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:30,877.877 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:47:31,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:31,029.029 INFO    ] No camera update needed
[2026-06-19 16:47:31,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:47:31,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:47:31,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:47:31,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:47:33,086.086 INFO    ] ================================================
[2026-06-19 16:47:33,101.101 INFO    ] Launching Daemon at Fri Jun 19 16:47:33 IST 2026
[2026-06-19 16:47:33,111.111 INFO    ] ================================================
[2026-06-19 16:47:33,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:47:33
[2026-06-19 16:47:34,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:47:34,559.559 INFO    ] Initializing speech engine...
[2026-06-19 16:47:34,572.572 INFO    ] 2026-06-19 16:47:34
[2026-06-19 16:47:34,847.847 INFO    ] 2026-06-19 16:47:34
[2026-06-19 16:47:34,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:47:35,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:47:35,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:47:35,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:47:35,319.319 INFO    ] time= 19/06/2026 16:47:35
[2026-06-19 16:47:35,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:47:35,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:47:35,546.546 INFO    ] No existing commands found in stream
[2026-06-19 16:47:40,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:47:40,575.575 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 16:47:44,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:47:44,812.812 INFO    ] Checking for system updates...
[2026-06-19 16:47:44,849.849 INFO    ] 200
[2026-06-19 16:47:44,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:44,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:44,914.914 INFO    ] No update needed
[2026-06-19 16:47:44,917.917 INFO    ] Checking for camera pi updates...
[2026-06-19 16:47:44,955.955 INFO    ] 200
[2026-06-19 16:47:44,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:45,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:47:45,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:45,054.054 INFO    ] No camera update needed
[2026-06-19 16:47:45,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:47:45,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:47:45,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:47:45,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:47:47,112.112 INFO    ] ================================================
[2026-06-19 16:47:47,128.128 INFO    ] Launching Daemon at Fri Jun 19 16:47:47 IST 2026
[2026-06-19 16:47:47,139.139 INFO    ] ================================================
[2026-06-19 16:47:47,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:47:47
[2026-06-19 16:47:48,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:47:48,634.634 INFO    ] Initializing speech engine...
[2026-06-19 16:47:48,645.645 INFO    ] 2026-06-19 16:47:48
[2026-06-19 16:47:48,911.911 INFO    ] 2026-06-19 16:47:48
[2026-06-19 16:47:48,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:47:49,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:47:49,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:47:49,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:47:49,428.428 INFO    ] time= 19/06/2026 16:47:49
[2026-06-19 16:47:49,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:47:49,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:47:49,653.653 INFO    ] No existing commands found in stream
[2026-06-19 16:47:54,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:47:54,678.678 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 16:47:57,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:47:57,759.759 INFO    ] Checking for system updates...
[2026-06-19 16:47:57,795.795 INFO    ] 200
[2026-06-19 16:47:57,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:57,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:57,854.854 INFO    ] No update needed
[2026-06-19 16:47:57,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 16:47:57,892.892 INFO    ] 200
[2026-06-19 16:47:57,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:47:57,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:47:57,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:47:57,991.991 INFO    ] No camera update needed
[2026-06-19 16:47:57,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:47:57,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:47:58,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:47:58,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:48:00,048.048 INFO    ] ================================================
[2026-06-19 16:48:00,063.063 INFO    ] Launching Daemon at Fri Jun 19 16:48:00 IST 2026
[2026-06-19 16:48:00,074.074 INFO    ] ================================================
[2026-06-19 16:48:00,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:48:00
[2026-06-19 16:48:01,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:48:01,779.779 INFO    ] Initializing speech engine...
[2026-06-19 16:48:01,792.792 INFO    ] 2026-06-19 16:48:01
[2026-06-19 16:48:02,108.108 INFO    ] 2026-06-19 16:48:02
[2026-06-19 16:48:02,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:48:02,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:48:02,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:48:02,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:48:02,653.653 INFO    ] time= 19/06/2026 16:48:02
[2026-06-19 16:48:02,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:48:02,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:48:02,829.829 INFO    ] No existing commands found in stream
[2026-06-19 16:48:07,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:48:07,852.852 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 16:48:11,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:48:11,709.709 INFO    ] Checking for system updates...
[2026-06-19 16:48:11,749.749 INFO    ] 200
[2026-06-19 16:48:11,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:11,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:48:11,807.807 INFO    ] No update needed
[2026-06-19 16:48:11,810.810 INFO    ] Checking for camera pi updates...
[2026-06-19 16:48:11,843.843 INFO    ] 200
[2026-06-19 16:48:11,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:11,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:48:11,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:48:11,937.937 INFO    ] No camera update needed
[2026-06-19 16:48:11,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:48:11,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:48:11,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:48:11,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:48:13,993.993 INFO    ] ================================================
[2026-06-19 16:48:14,008.008 INFO    ] Launching Daemon at Fri Jun 19 16:48:14 IST 2026
[2026-06-19 16:48:14,023.023 INFO    ] ================================================
[2026-06-19 16:48:14,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:48:14
[2026-06-19 16:48:15,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:48:15,676.676 INFO    ] Initializing speech engine...
[2026-06-19 16:48:15,682.682 INFO    ] 2026-06-19 16:48:15
[2026-06-19 16:48:15,972.972 INFO    ] 2026-06-19 16:48:15
[2026-06-19 16:48:16,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:48:16,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:48:16,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:48:16,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:48:16,474.474 INFO    ] time= 19/06/2026 16:48:16
[2026-06-19 16:48:16,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:48:16,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:48:16,668.668 INFO    ] No existing commands found in stream
[2026-06-19 16:48:21,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:48:21,688.688 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 16:48:24,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:48:24,787.787 INFO    ] Checking for system updates...
[2026-06-19 16:48:24,825.825 INFO    ] 200
[2026-06-19 16:48:24,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:24,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:48:24,885.885 INFO    ] No update needed
[2026-06-19 16:48:24,888.888 INFO    ] Checking for camera pi updates...
[2026-06-19 16:48:24,923.923 INFO    ] 200
[2026-06-19 16:48:24,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:24,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:48:25,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:48:25,017.017 INFO    ] No camera update needed
[2026-06-19 16:48:25,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:48:25,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:48:25,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:48:25,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:48:27,077.077 INFO    ] ================================================
[2026-06-19 16:48:27,092.092 INFO    ] Launching Daemon at Fri Jun 19 16:48:27 IST 2026
[2026-06-19 16:48:27,103.103 INFO    ] ================================================
[2026-06-19 16:48:27,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:48:27
[2026-06-19 16:48:28,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:48:28,626.626 INFO    ] Initializing speech engine...
[2026-06-19 16:48:28,641.641 INFO    ] 2026-06-19 16:48:28
[2026-06-19 16:48:28,931.931 INFO    ] 2026-06-19 16:48:28
[2026-06-19 16:48:28,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:48:29,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:48:29,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:48:29,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:48:29,358.358 INFO    ] time= 19/06/2026 16:48:29
[2026-06-19 16:48:29,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:48:29,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:48:29,447.447 INFO    ] No existing commands found in stream
[2026-06-19 16:48:34,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:48:34,485.485 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 16:48:35,871.871 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:48:35,873.873 INFO    ] Checking for system updates...
[2026-06-19 16:48:35,910.910 INFO    ] 200
[2026-06-19 16:48:35,912.912 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:35,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:48:35,972.972 INFO    ] No update needed
[2026-06-19 16:48:35,976.976 INFO    ] Checking for camera pi updates...
[2026-06-19 16:48:36,010.010 INFO    ] 200
[2026-06-19 16:48:36,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:36,055.055 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:48:36,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:48:36,104.104 INFO    ] No camera update needed
[2026-06-19 16:48:36,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:48:36,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:48:36,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:48:36,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:48:38,159.159 INFO    ] ================================================
[2026-06-19 16:48:38,174.174 INFO    ] Launching Daemon at Fri Jun 19 16:48:38 IST 2026
[2026-06-19 16:48:38,185.185 INFO    ] ================================================
[2026-06-19 16:48:38,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:48:38
[2026-06-19 16:48:39,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:48:39,622.622 INFO    ] Initializing speech engine...
[2026-06-19 16:48:39,642.642 INFO    ] 2026-06-19 16:48:39
[2026-06-19 16:48:39,911.911 INFO    ] 2026-06-19 16:48:39
[2026-06-19 16:48:39,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:48:40,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:48:40,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:48:40,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:48:40,293.293 INFO    ] time= 19/06/2026 16:48:40
[2026-06-19 16:48:40,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:48:40,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:48:40,418.418 INFO    ] No existing commands found in stream
[2026-06-19 16:48:45,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:48:45,433.433 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 16:48:46,326.326 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:48:46,329.329 INFO    ] Checking for system updates...
[2026-06-19 16:48:46,365.365 INFO    ] 200
[2026-06-19 16:48:46,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:46,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:48:46,423.423 INFO    ] No update needed
[2026-06-19 16:48:46,425.425 INFO    ] Checking for camera pi updates...
[2026-06-19 16:48:46,459.459 INFO    ] 200
[2026-06-19 16:48:46,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:46,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:48:46,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:48:46,594.594 INFO    ] No camera update needed
[2026-06-19 16:48:46,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:48:46,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:48:46,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:48:46,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:48:48,652.652 INFO    ] ================================================
[2026-06-19 16:48:48,667.667 INFO    ] Launching Daemon at Fri Jun 19 16:48:48 IST 2026
[2026-06-19 16:48:48,678.678 INFO    ] ================================================
[2026-06-19 16:48:49,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:48:49
[2026-06-19 16:48:49,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:48:50,188.188 INFO    ] Initializing speech engine...
[2026-06-19 16:48:50,200.200 INFO    ] 2026-06-19 16:48:50
[2026-06-19 16:48:50,473.473 INFO    ] 2026-06-19 16:48:50
[2026-06-19 16:48:50,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:48:50,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:48:50,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:48:50,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:48:50,989.989 INFO    ] time= 19/06/2026 16:48:50
[2026-06-19 16:48:51,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:48:51,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:48:51,202.202 INFO    ] No existing commands found in stream
[2026-06-19 16:48:56,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:48:56,231.231 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 16:48:56,642.642 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:48:56,645.645 INFO    ] Checking for system updates...
[2026-06-19 16:48:56,682.682 INFO    ] 200
[2026-06-19 16:48:56,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:56,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:48:56,743.743 INFO    ] No update needed
[2026-06-19 16:48:56,746.746 INFO    ] Checking for camera pi updates...
[2026-06-19 16:48:56,790.790 INFO    ] 200
[2026-06-19 16:48:56,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:48:56,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:48:56,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:48:56,888.888 INFO    ] No camera update needed
[2026-06-19 16:48:56,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:48:56,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:48:56,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:48:56,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:48:58,953.953 INFO    ] ================================================
[2026-06-19 16:48:58,968.968 INFO    ] Launching Daemon at Fri Jun 19 16:48:58 IST 2026
[2026-06-19 16:48:58,979.979 INFO    ] ================================================
[2026-06-19 16:48:59,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:48:59
[2026-06-19 16:49:00,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:49:00,437.437 INFO    ] Initializing speech engine...
[2026-06-19 16:49:00,447.447 INFO    ] 2026-06-19 16:49:00
[2026-06-19 16:49:00,693.693 INFO    ] 2026-06-19 16:49:00
[2026-06-19 16:49:00,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:49:00,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:49:00,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:49:01,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:49:01,166.166 INFO    ] time= 19/06/2026 16:49:01
[2026-06-19 16:49:01,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:49:01,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:49:01,384.384 INFO    ] No existing commands found in stream
[2026-06-19 16:49:06,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:49:06,398.398 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 16:49:10,832.832 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:49:10,834.834 INFO    ] Checking for system updates...
[2026-06-19 16:49:10,871.871 INFO    ] 200
[2026-06-19 16:49:10,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:10,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:49:10,931.931 INFO    ] No update needed
[2026-06-19 16:49:10,934.934 INFO    ] Checking for camera pi updates...
[2026-06-19 16:49:10,976.976 INFO    ] 200
[2026-06-19 16:49:10,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:11,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:49:11,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:49:11,077.077 INFO    ] No camera update needed
[2026-06-19 16:49:11,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:49:11,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:49:11,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:49:11,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:49:13,136.136 INFO    ] ================================================
[2026-06-19 16:49:13,151.151 INFO    ] Launching Daemon at Fri Jun 19 16:49:13 IST 2026
[2026-06-19 16:49:13,162.162 INFO    ] ================================================
[2026-06-19 16:49:13,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:49:13
[2026-06-19 16:49:14,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:49:14,618.618 INFO    ] Initializing speech engine...
[2026-06-19 16:49:14,627.627 INFO    ] 2026-06-19 16:49:14
[2026-06-19 16:49:14,876.876 INFO    ] 2026-06-19 16:49:14
[2026-06-19 16:49:14,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:49:15,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:49:15,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:49:15,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:49:15,345.345 INFO    ] time= 19/06/2026 16:49:15
[2026-06-19 16:49:15,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:49:15,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:49:15,571.571 INFO    ] No existing commands found in stream
[2026-06-19 16:49:20,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:49:20,599.599 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 16:49:23,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:49:23,911.911 INFO    ] Checking for system updates...
[2026-06-19 16:49:23,951.951 INFO    ] 200
[2026-06-19 16:49:23,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:24,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:49:24,008.008 INFO    ] No update needed
[2026-06-19 16:49:24,011.011 INFO    ] Checking for camera pi updates...
[2026-06-19 16:49:24,045.045 INFO    ] 200
[2026-06-19 16:49:24,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:24,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:49:24,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:49:24,136.136 INFO    ] No camera update needed
[2026-06-19 16:49:24,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:49:24,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:49:24,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:49:24,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:49:26,196.196 INFO    ] ================================================
[2026-06-19 16:49:26,212.212 INFO    ] Launching Daemon at Fri Jun 19 16:49:26 IST 2026
[2026-06-19 16:49:26,223.223 INFO    ] ================================================
[2026-06-19 16:49:26,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:49:26
[2026-06-19 16:49:27,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:49:27,685.685 INFO    ] Initializing speech engine...
[2026-06-19 16:49:27,691.691 INFO    ] 2026-06-19 16:49:27
[2026-06-19 16:49:27,954.954 INFO    ] 2026-06-19 16:49:27
[2026-06-19 16:49:27,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:49:28,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:49:28,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:49:28,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:49:28,422.422 INFO    ] time= 19/06/2026 16:49:28
[2026-06-19 16:49:28,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:49:28,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:49:28,621.621 INFO    ] No existing commands found in stream
[2026-06-19 16:49:33,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:49:33,651.651 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 16:49:34,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:49:35,000.000 INFO    ] Checking for system updates...
[2026-06-19 16:49:35,039.039 INFO    ] 200
[2026-06-19 16:49:35,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:35,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:49:35,099.099 INFO    ] No update needed
[2026-06-19 16:49:35,101.101 INFO    ] Checking for camera pi updates...
[2026-06-19 16:49:35,136.136 INFO    ] 200
[2026-06-19 16:49:35,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:35,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:49:35,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:49:35,328.328 INFO    ] No camera update needed
[2026-06-19 16:49:35,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:49:35,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:49:35,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:49:35,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:49:37,389.389 INFO    ] ================================================
[2026-06-19 16:49:37,403.403 INFO    ] Launching Daemon at Fri Jun 19 16:49:37 IST 2026
[2026-06-19 16:49:37,417.417 INFO    ] ================================================
[2026-06-19 16:49:37,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:49:37
[2026-06-19 16:49:38,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:49:38,825.825 INFO    ] Initializing speech engine...
[2026-06-19 16:49:38,847.847 INFO    ] 2026-06-19 16:49:38
[2026-06-19 16:49:39,104.104 INFO    ] 2026-06-19 16:49:39
[2026-06-19 16:49:39,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:49:39,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:49:39,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:49:39,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:49:39,483.483 INFO    ] time= 19/06/2026 16:49:39
[2026-06-19 16:49:39,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:49:39,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:49:39,658.658 INFO    ] No existing commands found in stream
[2026-06-19 16:49:44,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:49:44,687.687 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 16:49:45,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:49:45,278.278 INFO    ] Checking for system updates...
[2026-06-19 16:49:45,315.315 INFO    ] 200
[2026-06-19 16:49:45,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:45,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:49:45,372.372 INFO    ] No update needed
[2026-06-19 16:49:45,374.374 INFO    ] Checking for camera pi updates...
[2026-06-19 16:49:45,408.408 INFO    ] 200
[2026-06-19 16:49:45,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:45,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:49:45,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:49:45,512.512 INFO    ] No camera update needed
[2026-06-19 16:49:45,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:49:45,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:49:45,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:49:45,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:49:47,569.569 INFO    ] ================================================
[2026-06-19 16:49:47,584.584 INFO    ] Launching Daemon at Fri Jun 19 16:49:47 IST 2026
[2026-06-19 16:49:47,595.595 INFO    ] ================================================
[2026-06-19 16:49:48,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:49:48
[2026-06-19 16:49:48,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:49:49,212.212 INFO    ] Initializing speech engine...
[2026-06-19 16:49:49,225.225 INFO    ] 2026-06-19 16:49:49
[2026-06-19 16:49:49,515.515 INFO    ] 2026-06-19 16:49:49
[2026-06-19 16:49:49,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:49:49,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:49:49,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:49:49,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:49:50,018.018 INFO    ] time= 19/06/2026 16:49:49
[2026-06-19 16:49:50,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:49:50,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:49:50,204.204 INFO    ] No existing commands found in stream
[2026-06-19 16:49:55,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:49:55,240.240 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 16:49:56,181.181 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:49:56,184.184 INFO    ] Checking for system updates...
[2026-06-19 16:49:56,226.226 INFO    ] 200
[2026-06-19 16:49:56,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:56,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:49:56,296.296 INFO    ] No update needed
[2026-06-19 16:49:56,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 16:49:56,334.334 INFO    ] 200
[2026-06-19 16:49:56,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:49:56,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:49:56,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:49:56,431.431 INFO    ] No camera update needed
[2026-06-19 16:49:56,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:49:56,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:49:56,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:49:56,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:49:58,490.490 INFO    ] ================================================
[2026-06-19 16:49:58,505.505 INFO    ] Launching Daemon at Fri Jun 19 16:49:58 IST 2026
[2026-06-19 16:49:58,517.517 INFO    ] ================================================
[2026-06-19 16:49:59,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:49:59
[2026-06-19 16:49:59,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:49:59,923.923 INFO    ] Initializing speech engine...
[2026-06-19 16:49:59,946.946 INFO    ] 2026-06-19 16:49:59
[2026-06-19 16:50:00,201.201 INFO    ] 2026-06-19 16:50:00
[2026-06-19 16:50:00,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:50:00,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:50:00,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:50:00,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:50:00,579.579 INFO    ] time= 19/06/2026 16:50:00
[2026-06-19 16:50:00,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:50:00,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:50:00,762.762 INFO    ] No existing commands found in stream
[2026-06-19 16:50:05,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:50:05,785.785 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 16:50:09,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:50:09,407.407 INFO    ] Checking for system updates...
[2026-06-19 16:50:09,443.443 INFO    ] 200
[2026-06-19 16:50:09,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:09,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:50:09,502.502 INFO    ] No update needed
[2026-06-19 16:50:09,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 16:50:09,538.538 INFO    ] 200
[2026-06-19 16:50:09,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:09,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:50:09,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:50:09,640.640 INFO    ] No camera update needed
[2026-06-19 16:50:09,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:50:09,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:50:09,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:50:09,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:50:11,697.697 INFO    ] ================================================
[2026-06-19 16:50:11,713.713 INFO    ] Launching Daemon at Fri Jun 19 16:50:11 IST 2026
[2026-06-19 16:50:11,723.723 INFO    ] ================================================
[2026-06-19 16:50:12,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:50:12
[2026-06-19 16:50:13,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:50:13,328.328 INFO    ] Initializing speech engine...
[2026-06-19 16:50:13,337.337 INFO    ] 2026-06-19 16:50:13
[2026-06-19 16:50:13,589.589 INFO    ] 2026-06-19 16:50:13
[2026-06-19 16:50:13,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:50:13,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:50:13,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:50:14,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:50:14,083.083 INFO    ] time= 19/06/2026 16:50:14
[2026-06-19 16:50:14,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:50:14,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:50:14,317.317 INFO    ] No existing commands found in stream
[2026-06-19 16:50:19,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:50:19,339.339 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 16:50:21,885.885 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:50:21,888.888 INFO    ] Checking for system updates...
[2026-06-19 16:50:21,929.929 INFO    ] 200
[2026-06-19 16:50:21,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:21,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:50:21,991.991 INFO    ] No update needed
[2026-06-19 16:50:21,994.994 INFO    ] Checking for camera pi updates...
[2026-06-19 16:50:22,027.027 INFO    ] 200
[2026-06-19 16:50:22,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:22,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:50:22,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:50:22,116.116 INFO    ] No camera update needed
[2026-06-19 16:50:22,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:50:22,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:50:22,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:50:22,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:50:24,173.173 INFO    ] ================================================
[2026-06-19 16:50:24,188.188 INFO    ] Launching Daemon at Fri Jun 19 16:50:24 IST 2026
[2026-06-19 16:50:24,200.200 INFO    ] ================================================
[2026-06-19 16:50:24,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:50:24
[2026-06-19 16:50:25,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:50:25,654.654 INFO    ] Initializing speech engine...
[2026-06-19 16:50:25,661.661 INFO    ] 2026-06-19 16:50:25
[2026-06-19 16:50:25,924.924 INFO    ] 2026-06-19 16:50:25
[2026-06-19 16:50:25,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:50:26,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:50:26,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:50:26,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:50:26,403.403 INFO    ] time= 19/06/2026 16:50:26
[2026-06-19 16:50:26,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:50:26,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:50:26,605.605 INFO    ] No existing commands found in stream
[2026-06-19 16:50:31,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:50:31,621.621 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 16:50:34,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:50:34,449.449 INFO    ] Checking for system updates...
[2026-06-19 16:50:34,485.485 INFO    ] 200
[2026-06-19 16:50:34,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:34,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:50:34,543.543 INFO    ] No update needed
[2026-06-19 16:50:34,546.546 INFO    ] Checking for camera pi updates...
[2026-06-19 16:50:34,580.580 INFO    ] 200
[2026-06-19 16:50:34,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:34,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:50:34,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:50:34,682.682 INFO    ] No camera update needed
[2026-06-19 16:50:34,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:50:34,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:50:34,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:50:34,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:50:36,736.736 INFO    ] ================================================
[2026-06-19 16:50:36,752.752 INFO    ] Launching Daemon at Fri Jun 19 16:50:36 IST 2026
[2026-06-19 16:50:36,764.764 INFO    ] ================================================
[2026-06-19 16:50:37,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:50:37
[2026-06-19 16:50:37,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:50:38,229.229 INFO    ] Initializing speech engine...
[2026-06-19 16:50:38,241.241 INFO    ] 2026-06-19 16:50:38
[2026-06-19 16:50:38,505.505 INFO    ] 2026-06-19 16:50:38
[2026-06-19 16:50:38,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:50:38,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:50:38,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:50:38,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:50:38,984.984 INFO    ] time= 19/06/2026 16:50:38
[2026-06-19 16:50:39,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:50:39,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:50:39,201.201 INFO    ] No existing commands found in stream
[2026-06-19 16:50:44,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:50:44,220.220 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 16:50:46,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:50:46,389.389 INFO    ] Checking for system updates...
[2026-06-19 16:50:46,425.425 INFO    ] 200
[2026-06-19 16:50:46,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:46,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:50:46,491.491 INFO    ] No update needed
[2026-06-19 16:50:46,494.494 INFO    ] Checking for camera pi updates...
[2026-06-19 16:50:46,528.528 INFO    ] 200
[2026-06-19 16:50:46,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:46,574.574 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:50:46,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:50:46,632.632 INFO    ] No camera update needed
[2026-06-19 16:50:46,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:50:46,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:50:46,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:50:46,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:50:48,688.688 INFO    ] ================================================
[2026-06-19 16:50:48,704.704 INFO    ] Launching Daemon at Fri Jun 19 16:50:48 IST 2026
[2026-06-19 16:50:48,715.715 INFO    ] ================================================
[2026-06-19 16:50:49,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:50:49
[2026-06-19 16:50:49,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:50:50,146.146 INFO    ] Initializing speech engine...
[2026-06-19 16:50:50,155.155 INFO    ] 2026-06-19 16:50:50
[2026-06-19 16:50:50,404.404 INFO    ] 2026-06-19 16:50:50
[2026-06-19 16:50:50,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:50:50,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:50:50,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:50:51,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:50:51,095.095 INFO    ] time= 19/06/2026 16:50:51
[2026-06-19 16:50:51,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:50:51,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:50:51,345.345 INFO    ] No existing commands found in stream
[2026-06-19 16:50:56,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:50:56,378.378 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 16:50:58,554.554 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:50:58,557.557 INFO    ] Checking for system updates...
[2026-06-19 16:50:58,594.594 INFO    ] 200
[2026-06-19 16:50:58,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:58,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:50:58,659.659 INFO    ] No update needed
[2026-06-19 16:50:58,662.662 INFO    ] Checking for camera pi updates...
[2026-06-19 16:50:58,695.695 INFO    ] 200
[2026-06-19 16:50:58,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:50:58,739.739 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:50:58,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:50:58,796.796 INFO    ] No camera update needed
[2026-06-19 16:50:58,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:50:58,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:50:58,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:50:58,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:51:00,854.854 INFO    ] ================================================
[2026-06-19 16:51:00,871.871 INFO    ] Launching Daemon at Fri Jun 19 16:51:00 IST 2026
[2026-06-19 16:51:00,882.882 INFO    ] ================================================
[2026-06-19 16:51:01,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:51:01
[2026-06-19 16:51:02,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:51:02,594.594 INFO    ] Initializing speech engine...
[2026-06-19 16:51:02,611.611 INFO    ] 2026-06-19 16:51:02
[2026-06-19 16:51:02,917.917 INFO    ] 2026-06-19 16:51:02
[2026-06-19 16:51:02,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:51:03,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:51:03,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:51:03,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:51:03,438.438 INFO    ] time= 19/06/2026 16:51:03
[2026-06-19 16:51:03,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:51:03,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:51:03,590.590 INFO    ] No existing commands found in stream
[2026-06-19 16:51:08,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:51:08,614.614 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 16:51:11,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:51:11,305.305 INFO    ] Checking for system updates...
[2026-06-19 16:51:11,348.348 INFO    ] 200
[2026-06-19 16:51:11,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:51:11,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:51:11,414.414 INFO    ] No update needed
[2026-06-19 16:51:11,418.418 INFO    ] Checking for camera pi updates...
[2026-06-19 16:51:11,453.453 INFO    ] 200
[2026-06-19 16:51:11,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:51:11,504.504 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:51:11,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:51:11,555.555 INFO    ] No camera update needed
[2026-06-19 16:51:11,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:51:11,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:51:11,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:51:11,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:51:13,616.616 INFO    ] ================================================
[2026-06-19 16:51:13,632.632 INFO    ] Launching Daemon at Fri Jun 19 16:51:13 IST 2026
[2026-06-19 16:51:13,644.644 INFO    ] ================================================
[2026-06-19 16:51:14,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:51:14
[2026-06-19 16:51:15,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:51:15,314.314 INFO    ] Initializing speech engine...
[2026-06-19 16:51:15,320.320 INFO    ] 2026-06-19 16:51:15
[2026-06-19 16:51:15,599.599 INFO    ] 2026-06-19 16:51:15
[2026-06-19 16:51:15,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:51:15,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:51:15,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:51:16,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:51:16,117.117 INFO    ] time= 19/06/2026 16:51:16
[2026-06-19 16:51:16,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:51:16,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:51:16,292.292 INFO    ] No existing commands found in stream
[2026-06-19 16:51:21,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:51:21,307.307 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-19 16:51:25,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:51:25,618.618 INFO    ] Checking for system updates...
[2026-06-19 16:51:25,654.654 INFO    ] 200
[2026-06-19 16:51:25,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:51:25,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:51:25,714.714 INFO    ] No update needed
[2026-06-19 16:51:25,716.716 INFO    ] Checking for camera pi updates...
[2026-06-19 16:51:25,750.750 INFO    ] 200
[2026-06-19 16:51:25,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:51:25,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:51:25,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:51:25,839.839 INFO    ] No camera update needed
[2026-06-19 16:51:25,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:51:25,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:51:25,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:51:25,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:51:27,898.898 INFO    ] ================================================
[2026-06-19 16:51:27,913.913 INFO    ] Launching Daemon at Fri Jun 19 16:51:27 IST 2026
[2026-06-19 16:51:27,923.923 INFO    ] ================================================
[2026-06-19 16:51:28,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:51:28
[2026-06-19 16:51:29,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:51:29,364.364 INFO    ] Initializing speech engine...
[2026-06-19 16:51:29,373.373 INFO    ] 2026-06-19 16:51:29
[2026-06-19 16:51:29,620.620 INFO    ] 2026-06-19 16:51:29
[2026-06-19 16:51:29,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:51:29,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:51:29,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:51:30,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:51:30,146.146 INFO    ] time= 19/06/2026 16:51:30
[2026-06-19 16:51:30,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:51:30,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:51:30,314.314 INFO    ] No existing commands found in stream
[2026-06-19 16:51:35,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:51:35,342.342 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 16:51:37,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:51:37,658.658 INFO    ] Checking for system updates...
[2026-06-19 16:51:37,704.704 INFO    ] 200
[2026-06-19 16:51:37,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:51:37,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:51:37,764.764 INFO    ] No update needed
[2026-06-19 16:51:37,767.767 INFO    ] Checking for camera pi updates...
[2026-06-19 16:51:37,802.802 INFO    ] 200
[2026-06-19 16:51:37,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:51:37,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:51:38,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:51:38,079.079 INFO    ] No camera update needed
[2026-06-19 16:51:38,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:51:38,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:51:38,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:51:38,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:51:40,139.139 INFO    ] ================================================
[2026-06-19 16:51:40,154.154 INFO    ] Launching Daemon at Fri Jun 19 16:51:40 IST 2026
[2026-06-19 16:51:40,165.165 INFO    ] ================================================
[2026-06-19 16:51:40,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:51:40
[2026-06-19 16:51:41,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:51:41,590.590 INFO    ] Initializing speech engine...
[2026-06-19 16:51:41,595.595 INFO    ] 2026-06-19 16:51:41
[2026-06-19 16:51:41,842.842 INFO    ] 2026-06-19 16:51:41
[2026-06-19 16:51:41,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:51:42,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:51:42,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:51:42,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:51:42,295.295 INFO    ] time= 19/06/2026 16:51:42
[2026-06-19 16:51:42,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:51:42,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:51:42,528.528 INFO    ] No existing commands found in stream
[2026-06-19 16:51:47,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:51:47,561.561 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 16:51:49,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:51:49,607.607 INFO    ] Checking for system updates...
[2026-06-19 16:51:49,644.644 INFO    ] 200
[2026-06-19 16:51:49,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:51:49,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:51:49,709.709 INFO    ] No update needed
[2026-06-19 16:51:49,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 16:51:49,747.747 INFO    ] 200
[2026-06-19 16:51:49,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:51:49,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:51:49,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:51:49,823.823 INFO    ] No camera update needed
[2026-06-19 16:51:49,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:51:49,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:51:49,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:51:49,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:51:51,878.878 INFO    ] ================================================
[2026-06-19 16:51:51,893.893 INFO    ] Launching Daemon at Fri Jun 19 16:51:51 IST 2026
[2026-06-19 16:51:51,904.904 INFO    ] ================================================
[2026-06-19 16:51:52,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:51:52
[2026-06-19 16:51:53,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:51:53,372.372 INFO    ] Initializing speech engine...
[2026-06-19 16:51:53,379.379 INFO    ] 2026-06-19 16:51:53
[2026-06-19 16:51:53,644.644 INFO    ] 2026-06-19 16:51:53
[2026-06-19 16:51:53,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:51:53,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:51:53,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:51:54,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:51:54,190.190 INFO    ] time= 19/06/2026 16:51:54
[2026-06-19 16:51:54,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:51:54,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:51:54,344.344 INFO    ] No existing commands found in stream
[2026-06-19 16:51:59,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:51:59,366.366 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 16:52:04,876.876 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:52:04,879.879 INFO    ] Checking for system updates...
[2026-06-19 16:52:04,919.919 INFO    ] 200
[2026-06-19 16:52:04,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:04,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:52:04,977.977 INFO    ] No update needed
[2026-06-19 16:52:04,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 16:52:05,014.014 INFO    ] 200
[2026-06-19 16:52:05,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:05,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:52:05,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:52:05,109.109 INFO    ] No camera update needed
[2026-06-19 16:52:05,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:52:05,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:52:05,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:52:05,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:52:07,164.164 INFO    ] ================================================
[2026-06-19 16:52:07,178.178 INFO    ] Launching Daemon at Fri Jun 19 16:52:07 IST 2026
[2026-06-19 16:52:07,190.190 INFO    ] ================================================
[2026-06-19 16:52:07,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:52:07
[2026-06-19 16:52:08,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:52:08,592.592 INFO    ] Initializing speech engine...
[2026-06-19 16:52:08,598.598 INFO    ] 2026-06-19 16:52:08
[2026-06-19 16:52:08,900.900 INFO    ] 2026-06-19 16:52:08
[2026-06-19 16:52:08,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:52:09,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:52:09,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:52:09,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:52:09,289.289 INFO    ] time= 19/06/2026 16:52:09
[2026-06-19 16:52:09,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:52:09,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:52:09,483.483 INFO    ] No existing commands found in stream
[2026-06-19 16:52:14,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:52:14,504.504 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 16:52:15,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:52:15,143.143 INFO    ] Checking for system updates...
[2026-06-19 16:52:15,179.179 INFO    ] 200
[2026-06-19 16:52:15,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:15,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:52:15,240.240 INFO    ] No update needed
[2026-06-19 16:52:15,242.242 INFO    ] Checking for camera pi updates...
[2026-06-19 16:52:15,276.276 INFO    ] 200
[2026-06-19 16:52:15,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:15,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:52:15,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:52:15,372.372 INFO    ] No camera update needed
[2026-06-19 16:52:15,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:52:15,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:52:15,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:52:15,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:52:17,426.426 INFO    ] ================================================
[2026-06-19 16:52:17,441.441 INFO    ] Launching Daemon at Fri Jun 19 16:52:17 IST 2026
[2026-06-19 16:52:17,451.451 INFO    ] ================================================
[2026-06-19 16:52:18,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:52:18
[2026-06-19 16:52:18,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:52:19,086.086 INFO    ] Initializing speech engine...
[2026-06-19 16:52:19,099.099 INFO    ] 2026-06-19 16:52:19
[2026-06-19 16:52:19,386.386 INFO    ] 2026-06-19 16:52:19
[2026-06-19 16:52:19,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:52:19,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:52:19,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:52:19,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:52:19,922.922 INFO    ] time= 19/06/2026 16:52:19
[2026-06-19 16:52:19,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:52:19,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:52:20,082.082 INFO    ] No existing commands found in stream
[2026-06-19 16:52:25,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:52:25,109.109 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 16:52:28,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:52:28,300.300 INFO    ] Checking for system updates...
[2026-06-19 16:52:28,342.342 INFO    ] 200
[2026-06-19 16:52:28,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:28,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:52:28,408.408 INFO    ] No update needed
[2026-06-19 16:52:28,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 16:52:28,445.445 INFO    ] 200
[2026-06-19 16:52:28,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:28,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:52:28,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:52:28,544.544 INFO    ] No camera update needed
[2026-06-19 16:52:28,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:52:28,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:52:28,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:52:28,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:52:30,599.599 INFO    ] ================================================
[2026-06-19 16:52:30,614.614 INFO    ] Launching Daemon at Fri Jun 19 16:52:30 IST 2026
[2026-06-19 16:52:30,625.625 INFO    ] ================================================
[2026-06-19 16:52:31,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:52:31
[2026-06-19 16:52:31,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:52:32,098.098 INFO    ] Initializing speech engine...
[2026-06-19 16:52:32,111.111 INFO    ] 2026-06-19 16:52:32
[2026-06-19 16:52:32,408.408 INFO    ] 2026-06-19 16:52:32
[2026-06-19 16:52:32,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:52:32,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:52:32,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:52:32,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:52:33,014.014 INFO    ] time= 19/06/2026 16:52:32
[2026-06-19 16:52:33,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:52:33,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:52:33,165.165 INFO    ] No existing commands found in stream
[2026-06-19 16:52:38,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:52:38,202.202 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 16:52:41,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:52:41,378.378 INFO    ] Checking for system updates...
[2026-06-19 16:52:41,414.414 INFO    ] 200
[2026-06-19 16:52:41,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:41,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:52:41,480.480 INFO    ] No update needed
[2026-06-19 16:52:41,482.482 INFO    ] Checking for camera pi updates...
[2026-06-19 16:52:41,520.520 INFO    ] 200
[2026-06-19 16:52:41,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:41,564.564 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:52:41,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:52:41,614.614 INFO    ] No camera update needed
[2026-06-19 16:52:41,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:52:41,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:52:41,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:52:41,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:52:43,671.671 INFO    ] ================================================
[2026-06-19 16:52:43,686.686 INFO    ] Launching Daemon at Fri Jun 19 16:52:43 IST 2026
[2026-06-19 16:52:43,697.697 INFO    ] ================================================
[2026-06-19 16:52:44,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:52:44
[2026-06-19 16:52:44,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:52:45,114.114 INFO    ] Initializing speech engine...
[2026-06-19 16:52:45,120.120 INFO    ] 2026-06-19 16:52:45
[2026-06-19 16:52:45,414.414 INFO    ] 2026-06-19 16:52:45
[2026-06-19 16:52:45,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:52:45,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:52:45,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:52:45,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:52:45,826.826 INFO    ] time= 19/06/2026 16:52:45
[2026-06-19 16:52:45,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:52:45,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:52:45,917.917 INFO    ] No existing commands found in stream
[2026-06-19 16:52:50,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:52:50,935.935 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 16:52:52,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:52:52,214.214 INFO    ] Checking for system updates...
[2026-06-19 16:52:52,250.250 INFO    ] 200
[2026-06-19 16:52:52,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:52,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:52:52,310.310 INFO    ] No update needed
[2026-06-19 16:52:52,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 16:52:52,346.346 INFO    ] 200
[2026-06-19 16:52:52,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:52:52,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:52:52,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:52:52,436.436 INFO    ] No camera update needed
[2026-06-19 16:52:52,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:52:52,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:52:52,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:52:52,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:52:54,490.490 INFO    ] ================================================
[2026-06-19 16:52:54,505.505 INFO    ] Launching Daemon at Fri Jun 19 16:52:54 IST 2026
[2026-06-19 16:52:54,516.516 INFO    ] ================================================
[2026-06-19 16:52:55,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:52:55
[2026-06-19 16:52:55,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:52:55,920.920 INFO    ] Initializing speech engine...
[2026-06-19 16:52:55,928.928 INFO    ] 2026-06-19 16:52:55
[2026-06-19 16:52:56,218.218 INFO    ] 2026-06-19 16:52:56
[2026-06-19 16:52:56,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:52:56,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:52:56,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:52:56,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:52:56,629.629 INFO    ] time= 19/06/2026 16:52:56
[2026-06-19 16:52:56,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:52:56,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:52:56,753.753 INFO    ] No existing commands found in stream
[2026-06-19 16:53:01,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:53:01,781.781 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 16:53:04,972.972 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:53:04,974.974 INFO    ] Checking for system updates...
[2026-06-19 16:53:05,011.011 INFO    ] 200
[2026-06-19 16:53:05,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:05,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:53:05,068.068 INFO    ] No update needed
[2026-06-19 16:53:05,070.070 INFO    ] Checking for camera pi updates...
[2026-06-19 16:53:05,111.111 INFO    ] 200
[2026-06-19 16:53:05,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:05,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:53:05,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:53:05,206.206 INFO    ] No camera update needed
[2026-06-19 16:53:05,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:53:05,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:53:05,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:53:05,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:53:07,263.263 INFO    ] ================================================
[2026-06-19 16:53:07,278.278 INFO    ] Launching Daemon at Fri Jun 19 16:53:07 IST 2026
[2026-06-19 16:53:07,289.289 INFO    ] ================================================
[2026-06-19 16:53:07,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:53:07
[2026-06-19 16:53:08,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:53:08,807.807 INFO    ] Initializing speech engine...
[2026-06-19 16:53:08,829.829 INFO    ] 2026-06-19 16:53:08
[2026-06-19 16:53:09,106.106 INFO    ] 2026-06-19 16:53:09
[2026-06-19 16:53:09,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:53:09,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:53:09,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:53:09,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:53:09,647.647 INFO    ] time= 19/06/2026 16:53:09
[2026-06-19 16:53:09,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:53:09,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:53:09,843.843 INFO    ] No existing commands found in stream
[2026-06-19 16:53:14,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:53:14,876.876 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 16:53:17,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:53:17,568.568 INFO    ] Checking for system updates...
[2026-06-19 16:53:17,608.608 INFO    ] 200
[2026-06-19 16:53:17,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:17,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:53:17,671.671 INFO    ] No update needed
[2026-06-19 16:53:17,674.674 INFO    ] Checking for camera pi updates...
[2026-06-19 16:53:17,712.712 INFO    ] 200
[2026-06-19 16:53:17,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:17,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:53:17,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:53:17,813.813 INFO    ] No camera update needed
[2026-06-19 16:53:17,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:53:17,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:53:17,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:53:17,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:53:19,871.871 INFO    ] ================================================
[2026-06-19 16:53:19,888.888 INFO    ] Launching Daemon at Fri Jun 19 16:53:19 IST 2026
[2026-06-19 16:53:19,899.899 INFO    ] ================================================
[2026-06-19 16:53:20,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:53:20
[2026-06-19 16:53:21,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:53:21,351.351 INFO    ] Initializing speech engine...
[2026-06-19 16:53:21,359.359 INFO    ] 2026-06-19 16:53:21
[2026-06-19 16:53:21,629.629 INFO    ] 2026-06-19 16:53:21
[2026-06-19 16:53:21,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:53:21,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:53:21,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:53:22,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:53:22,068.068 INFO    ] time= 19/06/2026 16:53:22
[2026-06-19 16:53:22,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:53:22,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:53:22,264.264 INFO    ] No existing commands found in stream
[2026-06-19 16:53:27,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:53:27,303.303 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 16:53:28,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:53:28,296.296 INFO    ] Checking for system updates...
[2026-06-19 16:53:28,336.336 INFO    ] 200
[2026-06-19 16:53:28,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:28,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:53:28,400.400 INFO    ] No update needed
[2026-06-19 16:53:28,402.402 INFO    ] Checking for camera pi updates...
[2026-06-19 16:53:28,437.437 INFO    ] 200
[2026-06-19 16:53:28,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:28,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:53:28,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:53:28,530.530 INFO    ] No camera update needed
[2026-06-19 16:53:28,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:53:28,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:53:28,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:53:28,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:53:30,587.587 INFO    ] ================================================
[2026-06-19 16:53:30,602.602 INFO    ] Launching Daemon at Fri Jun 19 16:53:30 IST 2026
[2026-06-19 16:53:30,612.612 INFO    ] ================================================
[2026-06-19 16:53:31,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:53:31
[2026-06-19 16:53:31,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:53:32,084.084 INFO    ] Initializing speech engine...
[2026-06-19 16:53:32,094.094 INFO    ] 2026-06-19 16:53:32
[2026-06-19 16:53:32,376.376 INFO    ] 2026-06-19 16:53:32
[2026-06-19 16:53:32,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:53:32,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:53:32,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:53:32,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:53:32,777.777 INFO    ] time= 19/06/2026 16:53:32
[2026-06-19 16:53:32,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:53:32,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:53:32,982.982 INFO    ] No existing commands found in stream
[2026-06-19 16:53:37,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:53:38,000.000 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 16:53:42,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:53:42,328.328 INFO    ] Checking for system updates...
[2026-06-19 16:53:42,369.369 INFO    ] 200
[2026-06-19 16:53:42,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:42,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:53:42,432.432 INFO    ] No update needed
[2026-06-19 16:53:42,435.435 INFO    ] Checking for camera pi updates...
[2026-06-19 16:53:42,474.474 INFO    ] 200
[2026-06-19 16:53:42,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:42,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:53:42,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:53:42,682.682 INFO    ] No camera update needed
[2026-06-19 16:53:42,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:53:42,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:53:42,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:53:42,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:53:44,743.743 INFO    ] ================================================
[2026-06-19 16:53:44,759.759 INFO    ] Launching Daemon at Fri Jun 19 16:53:44 IST 2026
[2026-06-19 16:53:44,770.770 INFO    ] ================================================
[2026-06-19 16:53:45,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:53:45
[2026-06-19 16:53:45,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:53:46,189.189 INFO    ] Initializing speech engine...
[2026-06-19 16:53:46,198.198 INFO    ] 2026-06-19 16:53:46
[2026-06-19 16:53:46,475.475 INFO    ] 2026-06-19 16:53:46
[2026-06-19 16:53:46,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:53:46,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:53:46,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:53:46,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:53:46,860.860 INFO    ] time= 19/06/2026 16:53:46
[2026-06-19 16:53:46,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:53:46,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:53:47,059.059 INFO    ] No existing commands found in stream
[2026-06-19 16:53:52,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:53:52,072.072 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 16:53:52,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:53:52,604.604 INFO    ] Checking for system updates...
[2026-06-19 16:53:52,644.644 INFO    ] 200
[2026-06-19 16:53:52,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:52,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:53:52,709.709 INFO    ] No update needed
[2026-06-19 16:53:52,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 16:53:52,746.746 INFO    ] 200
[2026-06-19 16:53:52,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:53:52,796.796 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:53:52,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:53:52,841.841 INFO    ] No camera update needed
[2026-06-19 16:53:52,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:53:52,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:53:52,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:53:52,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:53:54,898.898 INFO    ] ================================================
[2026-06-19 16:53:54,913.913 INFO    ] Launching Daemon at Fri Jun 19 16:53:54 IST 2026
[2026-06-19 16:53:54,924.924 INFO    ] ================================================
[2026-06-19 16:53:55,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:53:55
[2026-06-19 16:53:56,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:53:56,374.374 INFO    ] Initializing speech engine...
[2026-06-19 16:53:56,387.387 INFO    ] 2026-06-19 16:53:56
[2026-06-19 16:53:56,676.676 INFO    ] 2026-06-19 16:53:56
[2026-06-19 16:53:56,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:53:56,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:53:56,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:53:57,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:53:57,079.079 INFO    ] time= 19/06/2026 16:53:57
[2026-06-19 16:53:57,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:53:57,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:53:57,211.211 INFO    ] No existing commands found in stream
[2026-06-19 16:54:02,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:54:02,241.241 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 16:54:03,260.260 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:54:03,263.263 INFO    ] Checking for system updates...
[2026-06-19 16:54:03,310.310 INFO    ] 200
[2026-06-19 16:54:03,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:03,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:54:03,382.382 INFO    ] No update needed
[2026-06-19 16:54:03,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 16:54:03,419.419 INFO    ] 200
[2026-06-19 16:54:03,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:03,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:54:03,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:54:03,527.527 INFO    ] No camera update needed
[2026-06-19 16:54:03,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:54:03,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:54:03,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:54:03,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:54:05,590.590 INFO    ] ================================================
[2026-06-19 16:54:05,605.605 INFO    ] Launching Daemon at Fri Jun 19 16:54:05 IST 2026
[2026-06-19 16:54:05,616.616 INFO    ] ================================================
[2026-06-19 16:54:06,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:54:06
[2026-06-19 16:54:06,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:54:07,119.119 INFO    ] Initializing speech engine...
[2026-06-19 16:54:07,127.127 INFO    ] 2026-06-19 16:54:07
[2026-06-19 16:54:07,396.396 INFO    ] 2026-06-19 16:54:07
[2026-06-19 16:54:07,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:54:07,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:54:07,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:54:07,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:54:07,928.928 INFO    ] time= 19/06/2026 16:54:07
[2026-06-19 16:54:07,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:54:08,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:54:08,111.111 INFO    ] No existing commands found in stream
[2026-06-19 16:54:13,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:54:13,141.141 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 16:54:17,275.275 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:54:17,278.278 INFO    ] Checking for system updates...
[2026-06-19 16:54:17,319.319 INFO    ] 200
[2026-06-19 16:54:17,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:17,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:54:17,383.383 INFO    ] No update needed
[2026-06-19 16:54:17,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 16:54:17,421.421 INFO    ] 200
[2026-06-19 16:54:17,423.423 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:17,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:54:17,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:54:17,522.522 INFO    ] No camera update needed
[2026-06-19 16:54:17,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:54:17,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:54:17,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:54:17,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:54:19,582.582 INFO    ] ================================================
[2026-06-19 16:54:19,598.598 INFO    ] Launching Daemon at Fri Jun 19 16:54:19 IST 2026
[2026-06-19 16:54:19,609.609 INFO    ] ================================================
[2026-06-19 16:54:20,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:54:20
[2026-06-19 16:54:20,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:54:21,014.014 INFO    ] Initializing speech engine...
[2026-06-19 16:54:21,029.029 INFO    ] 2026-06-19 16:54:21
[2026-06-19 16:54:21,296.296 INFO    ] 2026-06-19 16:54:21
[2026-06-19 16:54:21,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:54:21,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:54:21,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:54:21,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:54:21,808.808 INFO    ] time= 19/06/2026 16:54:21
[2026-06-19 16:54:21,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:54:21,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:54:22,023.023 INFO    ] No existing commands found in stream
[2026-06-19 16:54:27,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:54:27,038.038 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 16:54:27,849.849 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:54:27,852.852 INFO    ] Checking for system updates...
[2026-06-19 16:54:27,892.892 INFO    ] 200
[2026-06-19 16:54:27,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:27,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:54:27,951.951 INFO    ] No update needed
[2026-06-19 16:54:27,953.953 INFO    ] Checking for camera pi updates...
[2026-06-19 16:54:27,987.987 INFO    ] 200
[2026-06-19 16:54:27,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:28,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:54:28,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:54:28,082.082 INFO    ] No camera update needed
[2026-06-19 16:54:28,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:54:28,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:54:28,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:54:28,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:54:30,137.137 INFO    ] ================================================
[2026-06-19 16:54:30,153.153 INFO    ] Launching Daemon at Fri Jun 19 16:54:30 IST 2026
[2026-06-19 16:54:30,164.164 INFO    ] ================================================
[2026-06-19 16:54:30,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:54:30
[2026-06-19 16:54:31,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:54:31,727.727 INFO    ] Initializing speech engine...
[2026-06-19 16:54:31,734.734 INFO    ] 2026-06-19 16:54:31
[2026-06-19 16:54:31,996.996 INFO    ] 2026-06-19 16:54:31
[2026-06-19 16:54:32,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:54:32,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:54:32,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:54:32,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:54:32,589.589 INFO    ] time= 19/06/2026 16:54:32
[2026-06-19 16:54:32,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:54:32,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:54:32,812.812 INFO    ] No existing commands found in stream
[2026-06-19 16:54:37,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:54:37,852.852 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 16:54:40,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:54:40,957.957 INFO    ] Checking for system updates...
[2026-06-19 16:54:40,995.995 INFO    ] 200
[2026-06-19 16:54:40,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:41,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:54:41,063.063 INFO    ] No update needed
[2026-06-19 16:54:41,065.065 INFO    ] Checking for camera pi updates...
[2026-06-19 16:54:41,105.105 INFO    ] 200
[2026-06-19 16:54:41,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:41,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:54:41,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:54:41,212.212 INFO    ] No camera update needed
[2026-06-19 16:54:41,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:54:41,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:54:41,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:54:41,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:54:43,271.271 INFO    ] ================================================
[2026-06-19 16:54:43,287.287 INFO    ] Launching Daemon at Fri Jun 19 16:54:43 IST 2026
[2026-06-19 16:54:43,298.298 INFO    ] ================================================
[2026-06-19 16:54:43,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:54:43
[2026-06-19 16:54:44,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:54:44,850.850 INFO    ] Initializing speech engine...
[2026-06-19 16:54:44,865.865 INFO    ] 2026-06-19 16:54:44
[2026-06-19 16:54:45,136.136 INFO    ] 2026-06-19 16:54:45
[2026-06-19 16:54:45,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:54:45,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:54:45,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:54:45,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:54:45,622.622 INFO    ] time= 19/06/2026 16:54:45
[2026-06-19 16:54:45,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:54:45,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:54:45,830.830 INFO    ] No existing commands found in stream
[2026-06-19 16:54:50,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:54:50,855.855 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 16:54:53,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:54:53,691.691 INFO    ] Checking for system updates...
[2026-06-19 16:54:53,731.731 INFO    ] 200
[2026-06-19 16:54:53,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:53,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:54:53,795.795 INFO    ] No update needed
[2026-06-19 16:54:53,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 16:54:53,831.831 INFO    ] 200
[2026-06-19 16:54:53,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:54:53,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:54:53,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:54:53,932.932 INFO    ] No camera update needed
[2026-06-19 16:54:53,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:54:53,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:54:53,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:54:53,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:54:55,987.987 INFO    ] ================================================
[2026-06-19 16:54:56,002.002 INFO    ] Launching Daemon at Fri Jun 19 16:54:55 IST 2026
[2026-06-19 16:54:56,013.013 INFO    ] ================================================
[2026-06-19 16:54:56,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:54:56
[2026-06-19 16:54:57,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:54:57,438.438 INFO    ] Initializing speech engine...
[2026-06-19 16:54:57,450.450 INFO    ] 2026-06-19 16:54:57
[2026-06-19 16:54:57,702.702 INFO    ] 2026-06-19 16:54:57
[2026-06-19 16:54:57,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:54:57,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:54:58,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:54:58,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:54:58,183.183 INFO    ] time= 19/06/2026 16:54:58
[2026-06-19 16:54:58,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:54:58,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:54:58,401.401 INFO    ] No existing commands found in stream
[2026-06-19 16:55:03,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:55:03,430.430 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 16:55:05,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:55:05,398.398 INFO    ] Checking for system updates...
[2026-06-19 16:55:05,435.435 INFO    ] 200
[2026-06-19 16:55:05,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:05,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:55:05,499.499 INFO    ] No update needed
[2026-06-19 16:55:05,501.501 INFO    ] Checking for camera pi updates...
[2026-06-19 16:55:05,535.535 INFO    ] 200
[2026-06-19 16:55:05,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:05,578.578 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:55:05,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:55:05,645.645 INFO    ] No camera update needed
[2026-06-19 16:55:05,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:55:05,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:55:05,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:55:05,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:55:07,705.705 INFO    ] ================================================
[2026-06-19 16:55:07,720.720 INFO    ] Launching Daemon at Fri Jun 19 16:55:07 IST 2026
[2026-06-19 16:55:07,731.731 INFO    ] ================================================
[2026-06-19 16:55:08,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:55:08
[2026-06-19 16:55:09,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:55:09,331.331 INFO    ] Initializing speech engine...
[2026-06-19 16:55:09,337.337 INFO    ] 2026-06-19 16:55:09
[2026-06-19 16:55:09,632.632 INFO    ] 2026-06-19 16:55:09
[2026-06-19 16:55:09,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:55:09,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:55:09,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:55:10,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:55:10,407.407 INFO    ] time= 19/06/2026 16:55:10
[2026-06-19 16:55:10,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:55:10,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:55:10,681.681 INFO    ] No existing commands found in stream
[2026-06-19 16:55:15,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:55:15,721.721 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 16:55:18,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:55:18,080.080 INFO    ] Checking for system updates...
[2026-06-19 16:55:18,117.117 INFO    ] 200
[2026-06-19 16:55:18,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:18,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:55:18,177.177 INFO    ] No update needed
[2026-06-19 16:55:18,180.180 INFO    ] Checking for camera pi updates...
[2026-06-19 16:55:18,217.217 INFO    ] 200
[2026-06-19 16:55:18,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:18,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:55:18,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:55:18,314.314 INFO    ] No camera update needed
[2026-06-19 16:55:18,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:55:18,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:55:18,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:55:18,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:55:20,369.369 INFO    ] ================================================
[2026-06-19 16:55:20,384.384 INFO    ] Launching Daemon at Fri Jun 19 16:55:20 IST 2026
[2026-06-19 16:55:20,394.394 INFO    ] ================================================
[2026-06-19 16:55:20,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:55:20
[2026-06-19 16:55:21,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:55:21,821.821 INFO    ] Initializing speech engine...
[2026-06-19 16:55:21,830.830 INFO    ] 2026-06-19 16:55:21
[2026-06-19 16:55:22,079.079 INFO    ] 2026-06-19 16:55:22
[2026-06-19 16:55:22,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:55:22,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:55:22,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:55:22,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:55:22,558.558 INFO    ] time= 19/06/2026 16:55:22
[2026-06-19 16:55:22,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:55:22,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:55:22,783.783 INFO    ] No existing commands found in stream
[2026-06-19 16:55:27,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:55:27,813.813 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 16:55:31,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:55:31,943.943 INFO    ] Checking for system updates...
[2026-06-19 16:55:31,991.991 INFO    ] 200
[2026-06-19 16:55:31,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:32,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:55:32,062.062 INFO    ] No update needed
[2026-06-19 16:55:32,065.065 INFO    ] Checking for camera pi updates...
[2026-06-19 16:55:32,107.107 INFO    ] 200
[2026-06-19 16:55:32,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:32,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:55:32,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:55:32,197.197 INFO    ] No camera update needed
[2026-06-19 16:55:32,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:55:32,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:55:32,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:55:32,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:55:34,254.254 INFO    ] ================================================
[2026-06-19 16:55:34,269.269 INFO    ] Launching Daemon at Fri Jun 19 16:55:34 IST 2026
[2026-06-19 16:55:34,280.280 INFO    ] ================================================
[2026-06-19 16:55:34,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:55:34
[2026-06-19 16:55:35,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:55:35,685.685 INFO    ] Initializing speech engine...
[2026-06-19 16:55:35,708.708 INFO    ] 2026-06-19 16:55:35
[2026-06-19 16:55:35,960.960 INFO    ] 2026-06-19 16:55:35
[2026-06-19 16:55:35,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:55:36,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:55:36,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:55:36,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:55:36,529.529 INFO    ] time= 19/06/2026 16:55:36
[2026-06-19 16:55:36,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:55:36,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:55:36,668.668 INFO    ] No existing commands found in stream
[2026-06-19 16:55:41,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:55:41,683.683 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 16:55:42,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:55:42,823.823 INFO    ] Checking for system updates...
[2026-06-19 16:55:42,859.859 INFO    ] 200
[2026-06-19 16:55:42,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:42,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:55:42,917.917 INFO    ] No update needed
[2026-06-19 16:55:42,919.919 INFO    ] Checking for camera pi updates...
[2026-06-19 16:55:42,956.956 INFO    ] 200
[2026-06-19 16:55:42,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:43,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:55:43,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:55:43,043.043 INFO    ] No camera update needed
[2026-06-19 16:55:43,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:55:43,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:55:43,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:55:43,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:55:45,099.099 INFO    ] ================================================
[2026-06-19 16:55:45,121.121 INFO    ] Launching Daemon at Fri Jun 19 16:55:45 IST 2026
[2026-06-19 16:55:45,131.131 INFO    ] ================================================
[2026-06-19 16:55:45,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:55:45
[2026-06-19 16:55:46,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:55:46,600.600 INFO    ] Initializing speech engine...
[2026-06-19 16:55:46,608.608 INFO    ] 2026-06-19 16:55:46
[2026-06-19 16:55:46,880.880 INFO    ] 2026-06-19 16:55:46
[2026-06-19 16:55:46,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:55:47,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:55:47,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:55:47,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:55:47,409.409 INFO    ] time= 19/06/2026 16:55:47
[2026-06-19 16:55:47,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:55:47,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:55:47,559.559 INFO    ] No existing commands found in stream
[2026-06-19 16:55:52,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:55:52,578.578 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 16:55:54,963.963 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:55:54,966.966 INFO    ] Checking for system updates...
[2026-06-19 16:55:55,001.001 INFO    ] 200
[2026-06-19 16:55:55,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:55,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:55:55,058.058 INFO    ] No update needed
[2026-06-19 16:55:55,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 16:55:55,098.098 INFO    ] 200
[2026-06-19 16:55:55,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:55:55,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:55:55,294.294 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:55:55,297.297 INFO    ] No camera update needed
[2026-06-19 16:55:55,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:55:55,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:55:55,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:55:55,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:55:57,353.353 INFO    ] ================================================
[2026-06-19 16:55:57,368.368 INFO    ] Launching Daemon at Fri Jun 19 16:55:57 IST 2026
[2026-06-19 16:55:57,378.378 INFO    ] ================================================
[2026-06-19 16:55:58,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:55:58
[2026-06-19 16:55:58,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:55:58,980.980 INFO    ] Initializing speech engine...
[2026-06-19 16:55:58,988.988 INFO    ] 2026-06-19 16:55:58
[2026-06-19 16:55:59,276.276 INFO    ] 2026-06-19 16:55:59
[2026-06-19 16:55:59,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:55:59,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:55:59,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:55:59,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:55:59,775.775 INFO    ] time= 19/06/2026 16:55:59
[2026-06-19 16:55:59,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:55:59,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:55:59,991.991 INFO    ] No existing commands found in stream
[2026-06-19 16:56:05,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:56:05,029.029 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 16:56:06,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:56:06,981.981 INFO    ] Checking for system updates...
[2026-06-19 16:56:07,020.020 INFO    ] 200
[2026-06-19 16:56:07,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:07,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:56:07,083.083 INFO    ] No update needed
[2026-06-19 16:56:07,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 16:56:07,119.119 INFO    ] 200
[2026-06-19 16:56:07,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:07,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:56:07,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:56:07,218.218 INFO    ] No camera update needed
[2026-06-19 16:56:07,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:56:07,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:56:07,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:56:07,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:56:09,273.273 INFO    ] ================================================
[2026-06-19 16:56:09,288.288 INFO    ] Launching Daemon at Fri Jun 19 16:56:09 IST 2026
[2026-06-19 16:56:09,299.299 INFO    ] ================================================
[2026-06-19 16:56:09,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:56:09
[2026-06-19 16:56:10,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:56:10,748.748 INFO    ] Initializing speech engine...
[2026-06-19 16:56:10,754.754 INFO    ] 2026-06-19 16:56:10
[2026-06-19 16:56:11,021.021 INFO    ] 2026-06-19 16:56:11
[2026-06-19 16:56:11,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:56:11,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:56:11,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:56:11,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:56:11,508.508 INFO    ] time= 19/06/2026 16:56:11
[2026-06-19 16:56:11,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:56:11,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:56:11,717.717 INFO    ] No existing commands found in stream
[2026-06-19 16:56:16,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:56:16,745.745 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 16:56:19,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:56:19,634.634 INFO    ] Checking for system updates...
[2026-06-19 16:56:19,671.671 INFO    ] 200
[2026-06-19 16:56:19,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:19,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:56:19,749.749 INFO    ] No update needed
[2026-06-19 16:56:19,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 16:56:19,789.789 INFO    ] 200
[2026-06-19 16:56:19,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:19,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:56:19,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:56:19,876.876 INFO    ] No camera update needed
[2026-06-19 16:56:19,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:56:19,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:56:19,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:56:19,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:56:21,934.934 INFO    ] ================================================
[2026-06-19 16:56:21,950.950 INFO    ] Launching Daemon at Fri Jun 19 16:56:21 IST 2026
[2026-06-19 16:56:21,961.961 INFO    ] ================================================
[2026-06-19 16:56:22,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:56:22
[2026-06-19 16:56:23,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:56:23,386.386 INFO    ] Initializing speech engine...
[2026-06-19 16:56:23,394.394 INFO    ] 2026-06-19 16:56:23
[2026-06-19 16:56:23,645.645 INFO    ] 2026-06-19 16:56:23
[2026-06-19 16:56:23,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:56:24,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:56:24,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:56:24,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:56:24,216.216 INFO    ] time= 19/06/2026 16:56:24
[2026-06-19 16:56:24,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:56:24,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:56:24,374.374 INFO    ] No existing commands found in stream
[2026-06-19 16:56:29,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:56:29,397.397 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 16:56:31,124.124 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:56:31,127.127 INFO    ] Checking for system updates...
[2026-06-19 16:56:31,168.168 INFO    ] 200
[2026-06-19 16:56:31,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:31,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:56:31,232.232 INFO    ] No update needed
[2026-06-19 16:56:31,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 16:56:31,269.269 INFO    ] 200
[2026-06-19 16:56:31,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:31,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:56:31,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:56:31,358.358 INFO    ] No camera update needed
[2026-06-19 16:56:31,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:56:31,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:56:31,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:56:31,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:56:33,412.412 INFO    ] ================================================
[2026-06-19 16:56:33,428.428 INFO    ] Launching Daemon at Fri Jun 19 16:56:33 IST 2026
[2026-06-19 16:56:33,439.439 INFO    ] ================================================
[2026-06-19 16:56:34,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:56:34
[2026-06-19 16:56:34,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:56:34,897.897 INFO    ] Initializing speech engine...
[2026-06-19 16:56:34,906.906 INFO    ] 2026-06-19 16:56:34
[2026-06-19 16:56:35,153.153 INFO    ] 2026-06-19 16:56:35
[2026-06-19 16:56:35,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:56:35,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:56:35,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:56:35,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:56:35,649.649 INFO    ] time= 19/06/2026 16:56:35
[2026-06-19 16:56:35,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:56:35,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:56:35,844.844 INFO    ] No existing commands found in stream
[2026-06-19 16:56:40,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:56:40,873.873 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 16:56:44,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 16:56:44,431.431 INFO    ] Checking for system updates...
[2026-06-19 16:56:44,472.472 INFO    ] 200
[2026-06-19 16:56:44,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:44,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:56:44,530.530 INFO    ] No update needed
[2026-06-19 16:56:44,533.533 INFO    ] Checking for camera pi updates...
[2026-06-19 16:56:44,575.575 INFO    ] 200
[2026-06-19 16:56:44,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:44,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:56:44,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:56:44,669.669 INFO    ] No camera update needed
[2026-06-19 16:56:44,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:56:44,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:56:44,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:56:44,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:56:46,724.724 INFO    ] ================================================
[2026-06-19 16:56:46,739.739 INFO    ] Launching Daemon at Fri Jun 19 16:56:46 IST 2026
[2026-06-19 16:56:46,750.750 INFO    ] ================================================
[2026-06-19 16:56:47,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:56:47
[2026-06-19 16:56:48,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:56:48,349.349 INFO    ] Initializing speech engine...
[2026-06-19 16:56:48,364.364 INFO    ] 2026-06-19 16:56:48
[2026-06-19 16:56:48,643.643 INFO    ] 2026-06-19 16:56:48
[2026-06-19 16:56:48,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:56:48,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:56:48,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:56:49,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:56:49,158.158 INFO    ] time= 19/06/2026 16:56:49
[2026-06-19 16:56:49,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:56:49,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:56:49,333.333 INFO    ] No existing commands found in stream
[2026-06-19 16:56:54,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:56:54,356.356 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 16:56:55,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:56:55,019.019 INFO    ] Checking for system updates...
[2026-06-19 16:56:55,056.056 INFO    ] 200
[2026-06-19 16:56:55,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:55,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:56:55,117.117 INFO    ] No update needed
[2026-06-19 16:56:55,119.119 INFO    ] Checking for camera pi updates...
[2026-06-19 16:56:55,153.153 INFO    ] 200
[2026-06-19 16:56:55,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:56:55,200.200 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:56:55,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:56:55,250.250 INFO    ] No camera update needed
[2026-06-19 16:56:55,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:56:55,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:56:55,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:56:55,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:56:57,305.305 INFO    ] ================================================
[2026-06-19 16:56:57,319.319 INFO    ] Launching Daemon at Fri Jun 19 16:56:57 IST 2026
[2026-06-19 16:56:57,330.330 INFO    ] ================================================
[2026-06-19 16:56:57,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:56:57
[2026-06-19 16:56:58,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:56:58,902.902 INFO    ] Initializing speech engine...
[2026-06-19 16:56:58,907.907 INFO    ] 2026-06-19 16:56:58
[2026-06-19 16:56:59,159.159 INFO    ] 2026-06-19 16:56:59
[2026-06-19 16:56:59,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:56:59,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:56:59,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:56:59,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:56:59,704.704 INFO    ] time= 19/06/2026 16:56:59
[2026-06-19 16:56:59,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:56:59,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:56:59,863.863 INFO    ] No existing commands found in stream
[2026-06-19 16:57:04,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:57:04,879.879 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 16:57:08,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:57:08,611.611 INFO    ] Checking for system updates...
[2026-06-19 16:57:08,651.651 INFO    ] 200
[2026-06-19 16:57:08,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:08,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:57:08,708.708 INFO    ] No update needed
[2026-06-19 16:57:08,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 16:57:08,748.748 INFO    ] 200
[2026-06-19 16:57:08,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:08,796.796 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:57:08,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:57:08,851.851 INFO    ] No camera update needed
[2026-06-19 16:57:08,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:57:08,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:57:08,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:57:08,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:57:10,908.908 INFO    ] ================================================
[2026-06-19 16:57:10,923.923 INFO    ] Launching Daemon at Fri Jun 19 16:57:10 IST 2026
[2026-06-19 16:57:10,933.933 INFO    ] ================================================
[2026-06-19 16:57:11,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:57:11
[2026-06-19 16:57:12,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:57:12,360.360 INFO    ] Initializing speech engine...
[2026-06-19 16:57:12,383.383 INFO    ] 2026-06-19 16:57:12
[2026-06-19 16:57:12,638.638 INFO    ] 2026-06-19 16:57:12
[2026-06-19 16:57:12,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:57:12,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:57:12,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:57:13,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:57:13,139.139 INFO    ] time= 19/06/2026 16:57:13
[2026-06-19 16:57:13,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:57:13,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:57:13,350.350 INFO    ] No existing commands found in stream
[2026-06-19 16:57:18,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:57:18,372.372 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 16:57:21,545.545 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:57:21,548.548 INFO    ] Checking for system updates...
[2026-06-19 16:57:21,588.588 INFO    ] 200
[2026-06-19 16:57:21,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:21,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:57:21,646.646 INFO    ] No update needed
[2026-06-19 16:57:21,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 16:57:21,682.682 INFO    ] 200
[2026-06-19 16:57:21,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:21,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:57:21,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:57:21,783.783 INFO    ] No camera update needed
[2026-06-19 16:57:21,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:57:21,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:57:21,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:57:21,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:57:23,842.842 INFO    ] ================================================
[2026-06-19 16:57:23,857.857 INFO    ] Launching Daemon at Fri Jun 19 16:57:23 IST 2026
[2026-06-19 16:57:23,868.868 INFO    ] ================================================
[2026-06-19 16:57:24,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:57:24
[2026-06-19 16:57:25,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:57:25,320.320 INFO    ] Initializing speech engine...
[2026-06-19 16:57:25,329.329 INFO    ] 2026-06-19 16:57:25
[2026-06-19 16:57:25,586.586 INFO    ] 2026-06-19 16:57:25
[2026-06-19 16:57:25,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:57:25,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:57:25,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:57:26,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:57:26,065.065 INFO    ] time= 19/06/2026 16:57:26
[2026-06-19 16:57:26,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:57:26,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:57:26,275.275 INFO    ] No existing commands found in stream
[2026-06-19 16:57:31,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:57:31,302.302 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 16:57:35,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:57:35,387.387 INFO    ] Checking for system updates...
[2026-06-19 16:57:35,428.428 INFO    ] 200
[2026-06-19 16:57:35,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:35,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:57:35,492.492 INFO    ] No update needed
[2026-06-19 16:57:35,495.495 INFO    ] Checking for camera pi updates...
[2026-06-19 16:57:35,532.532 INFO    ] 200
[2026-06-19 16:57:35,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:35,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:57:35,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:57:35,615.615 INFO    ] No camera update needed
[2026-06-19 16:57:35,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:57:35,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:57:35,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:57:35,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:57:37,671.671 INFO    ] ================================================
[2026-06-19 16:57:37,687.687 INFO    ] Launching Daemon at Fri Jun 19 16:57:37 IST 2026
[2026-06-19 16:57:37,697.697 INFO    ] ================================================
[2026-06-19 16:57:38,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:57:38
[2026-06-19 16:57:38,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:57:39,132.132 INFO    ] Initializing speech engine...
[2026-06-19 16:57:39,156.156 INFO    ] 2026-06-19 16:57:39
[2026-06-19 16:57:39,437.437 INFO    ] 2026-06-19 16:57:39
[2026-06-19 16:57:39,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:57:39,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:57:39,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:57:40,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:57:40,070.070 INFO    ] time= 19/06/2026 16:57:40
[2026-06-19 16:57:40,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:57:40,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:57:40,174.174 INFO    ] No existing commands found in stream
[2026-06-19 16:57:45,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:57:45,198.198 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 16:57:46,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:57:46,033.033 INFO    ] Checking for system updates...
[2026-06-19 16:57:46,071.071 INFO    ] 200
[2026-06-19 16:57:46,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:46,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:57:46,137.137 INFO    ] No update needed
[2026-06-19 16:57:46,140.140 INFO    ] Checking for camera pi updates...
[2026-06-19 16:57:46,179.179 INFO    ] 200
[2026-06-19 16:57:46,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:46,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:57:46,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:57:46,316.316 INFO    ] No camera update needed
[2026-06-19 16:57:46,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:57:46,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:57:46,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:57:46,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:57:48,374.374 INFO    ] ================================================
[2026-06-19 16:57:48,390.390 INFO    ] Launching Daemon at Fri Jun 19 16:57:48 IST 2026
[2026-06-19 16:57:48,400.400 INFO    ] ================================================
[2026-06-19 16:57:49,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:57:49
[2026-06-19 16:57:49,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:57:50,030.030 INFO    ] Initializing speech engine...
[2026-06-19 16:57:50,044.044 INFO    ] 2026-06-19 16:57:50
[2026-06-19 16:57:50,328.328 INFO    ] 2026-06-19 16:57:50
[2026-06-19 16:57:50,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:57:50,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:57:50,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:57:50,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:57:50,853.853 INFO    ] time= 19/06/2026 16:57:50
[2026-06-19 16:57:50,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:57:50,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:57:51,007.007 INFO    ] No existing commands found in stream
[2026-06-19 16:57:56,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:57:56,025.025 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 16:57:59,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:57:59,801.801 INFO    ] Checking for system updates...
[2026-06-19 16:57:59,846.846 INFO    ] 200
[2026-06-19 16:57:59,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:59,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:57:59,913.913 INFO    ] No update needed
[2026-06-19 16:57:59,916.916 INFO    ] Checking for camera pi updates...
[2026-06-19 16:57:59,951.951 INFO    ] 200
[2026-06-19 16:57:59,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:57:59,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:58:00,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:58:00,156.156 INFO    ] No camera update needed
[2026-06-19 16:58:00,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:58:00,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:58:00,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:58:00,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:58:02,218.218 INFO    ] ================================================
[2026-06-19 16:58:02,249.249 INFO    ] Launching Daemon at Fri Jun 19 16:58:02 IST 2026
[2026-06-19 16:58:02,261.261 INFO    ] ================================================
[2026-06-19 16:58:02,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:58:02
[2026-06-19 16:58:03,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:58:03,800.800 INFO    ] Initializing speech engine...
[2026-06-19 16:58:03,808.808 INFO    ] 2026-06-19 16:58:03
[2026-06-19 16:58:04,084.084 INFO    ] 2026-06-19 16:58:04
[2026-06-19 16:58:04,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:58:04,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:58:04,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:58:04,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:58:04,583.583 INFO    ] time= 19/06/2026 16:58:04
[2026-06-19 16:58:04,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:58:04,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:58:04,789.789 INFO    ] No existing commands found in stream
[2026-06-19 16:58:09,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:58:09,817.817 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 16:58:12,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:58:12,733.733 INFO    ] Checking for system updates...
[2026-06-19 16:58:12,772.772 INFO    ] 200
[2026-06-19 16:58:12,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:12,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:58:12,837.837 INFO    ] No update needed
[2026-06-19 16:58:12,839.839 INFO    ] Checking for camera pi updates...
[2026-06-19 16:58:12,877.877 INFO    ] 200
[2026-06-19 16:58:12,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:12,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:58:12,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:58:12,978.978 INFO    ] No camera update needed
[2026-06-19 16:58:12,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:58:12,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:58:12,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:58:12,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:58:15,034.034 INFO    ] ================================================
[2026-06-19 16:58:15,050.050 INFO    ] Launching Daemon at Fri Jun 19 16:58:15 IST 2026
[2026-06-19 16:58:15,061.061 INFO    ] ================================================
[2026-06-19 16:58:15,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:58:15
[2026-06-19 16:58:16,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:58:16,518.518 INFO    ] Initializing speech engine...
[2026-06-19 16:58:16,528.528 INFO    ] 2026-06-19 16:58:16
[2026-06-19 16:58:16,789.789 INFO    ] 2026-06-19 16:58:16
[2026-06-19 16:58:16,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:58:17,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:58:17,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:58:17,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:58:17,284.284 INFO    ] time= 19/06/2026 16:58:17
[2026-06-19 16:58:17,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:58:17,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:58:17,489.489 INFO    ] No existing commands found in stream
[2026-06-19 16:58:22,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:58:22,515.515 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 16:58:25,639.639 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:58:25,641.641 INFO    ] Checking for system updates...
[2026-06-19 16:58:25,677.677 INFO    ] 200
[2026-06-19 16:58:25,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:25,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:58:25,736.736 INFO    ] No update needed
[2026-06-19 16:58:25,738.738 INFO    ] Checking for camera pi updates...
[2026-06-19 16:58:25,772.772 INFO    ] 200
[2026-06-19 16:58:25,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:25,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:58:25,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:58:25,863.863 INFO    ] No camera update needed
[2026-06-19 16:58:25,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:58:25,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:58:25,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:58:25,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:58:27,917.917 INFO    ] ================================================
[2026-06-19 16:58:27,932.932 INFO    ] Launching Daemon at Fri Jun 19 16:58:27 IST 2026
[2026-06-19 16:58:27,943.943 INFO    ] ================================================
[2026-06-19 16:58:28,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:58:28
[2026-06-19 16:58:29,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:58:29,372.372 INFO    ] Initializing speech engine...
[2026-06-19 16:58:29,380.380 INFO    ] 2026-06-19 16:58:29
[2026-06-19 16:58:29,629.629 INFO    ] 2026-06-19 16:58:29
[2026-06-19 16:58:29,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:58:29,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:58:29,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:58:30,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:58:30,100.100 INFO    ] time= 19/06/2026 16:58:30
[2026-06-19 16:58:30,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:58:30,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:58:30,311.311 INFO    ] No existing commands found in stream
[2026-06-19 16:58:35,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:58:35,355.355 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 16:58:36,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 16:58:36,511.511 INFO    ] Checking for system updates...
[2026-06-19 16:58:36,548.548 INFO    ] 200
[2026-06-19 16:58:36,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:36,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:58:36,605.605 INFO    ] No update needed
[2026-06-19 16:58:36,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 16:58:36,642.642 INFO    ] 200
[2026-06-19 16:58:36,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:36,690.690 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:58:36,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:58:36,750.750 INFO    ] No camera update needed
[2026-06-19 16:58:36,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:58:36,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:58:36,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:58:36,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:58:38,805.805 INFO    ] ================================================
[2026-06-19 16:58:38,820.820 INFO    ] Launching Daemon at Fri Jun 19 16:58:38 IST 2026
[2026-06-19 16:58:38,831.831 INFO    ] ================================================
[2026-06-19 16:58:39,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:58:39
[2026-06-19 16:58:40,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:58:40,460.460 INFO    ] Initializing speech engine...
[2026-06-19 16:58:40,472.472 INFO    ] 2026-06-19 16:58:40
[2026-06-19 16:58:40,764.764 INFO    ] 2026-06-19 16:58:40
[2026-06-19 16:58:40,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:58:41,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:58:41,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:58:41,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:58:41,296.296 INFO    ] time= 19/06/2026 16:58:41
[2026-06-19 16:58:41,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:58:41,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:58:41,487.487 INFO    ] No existing commands found in stream
[2026-06-19 16:58:46,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:58:46,521.521 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 16:58:48,116.116 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 16:58:48,119.119 INFO    ] Checking for system updates...
[2026-06-19 16:58:48,160.160 INFO    ] 200
[2026-06-19 16:58:48,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:48,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:58:48,224.224 INFO    ] No update needed
[2026-06-19 16:58:48,227.227 INFO    ] Checking for camera pi updates...
[2026-06-19 16:58:48,265.265 INFO    ] 200
[2026-06-19 16:58:48,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:48,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:58:48,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:58:48,351.351 INFO    ] No camera update needed
[2026-06-19 16:58:48,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:58:48,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:58:48,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:58:48,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:58:50,406.406 INFO    ] ================================================
[2026-06-19 16:58:50,423.423 INFO    ] Launching Daemon at Fri Jun 19 16:58:50 IST 2026
[2026-06-19 16:58:50,444.444 INFO    ] ================================================
[2026-06-19 16:58:51,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:58:51
[2026-06-19 16:58:51,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:58:51,871.871 INFO    ] Initializing speech engine...
[2026-06-19 16:58:51,884.884 INFO    ] 2026-06-19 16:58:51
[2026-06-19 16:58:52,135.135 INFO    ] 2026-06-19 16:58:52
[2026-06-19 16:58:52,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:58:52,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:58:52,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:58:52,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:58:52,518.518 INFO    ] time= 19/06/2026 16:58:52
[2026-06-19 16:58:52,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:58:52,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:58:52,697.697 INFO    ] No existing commands found in stream
[2026-06-19 16:58:57,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:58:57,725.725 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 16:58:58,173.173 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 16:58:58,176.176 INFO    ] Checking for system updates...
[2026-06-19 16:58:58,212.212 INFO    ] 200
[2026-06-19 16:58:58,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:58,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:58:58,269.269 INFO    ] No update needed
[2026-06-19 16:58:58,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 16:58:58,305.305 INFO    ] 200
[2026-06-19 16:58:58,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:58:58,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:58:58,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 16:58:58,406.406 INFO    ] No camera update needed
[2026-06-19 16:58:58,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:58:58,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:58:58,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:58:58,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:59:00,463.463 INFO    ] ================================================
[2026-06-19 16:59:00,481.481 INFO    ] Launching Daemon at Fri Jun 19 16:59:00 IST 2026
[2026-06-19 16:59:00,492.492 INFO    ] ================================================
[2026-06-19 16:59:01,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:59:01
[2026-06-19 16:59:01,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:59:02,211.211 INFO    ] Initializing speech engine...
[2026-06-19 16:59:02,239.239 INFO    ] 2026-06-19 16:59:02
[2026-06-19 16:59:02,650.650 INFO    ] 2026-06-19 16:59:02
[2026-06-19 16:59:02,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:59:02,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:59:02,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:59:03,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:59:03,146.146 INFO    ] time= 19/06/2026 16:59:03
[2026-06-19 16:59:03,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:59:03,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:59:03,373.373 INFO    ] No existing commands found in stream
[2026-06-19 16:59:08,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:59:08,393.393 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 16:59:12,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:59:12,018.018 INFO    ] Checking for system updates...
[2026-06-19 16:59:12,054.054 INFO    ] 200
[2026-06-19 16:59:12,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:59:12,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:59:12,112.112 INFO    ] No update needed
[2026-06-19 16:59:12,114.114 INFO    ] Checking for camera pi updates...
[2026-06-19 16:59:12,149.149 INFO    ] 200
[2026-06-19 16:59:12,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:59:12,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:59:12,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:59:12,242.242 INFO    ] No camera update needed
[2026-06-19 16:59:12,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:59:12,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:59:12,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:59:12,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:59:14,300.300 INFO    ] ================================================
[2026-06-19 16:59:14,315.315 INFO    ] Launching Daemon at Fri Jun 19 16:59:14 IST 2026
[2026-06-19 16:59:14,326.326 INFO    ] ================================================
[2026-06-19 16:59:14,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:59:14
[2026-06-19 16:59:15,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:59:15,760.760 INFO    ] Initializing speech engine...
[2026-06-19 16:59:15,770.770 INFO    ] 2026-06-19 16:59:15
[2026-06-19 16:59:16,019.019 INFO    ] 2026-06-19 16:59:16
[2026-06-19 16:59:16,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:59:16,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:59:16,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:59:16,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:59:16,526.526 INFO    ] time= 19/06/2026 16:59:16
[2026-06-19 16:59:16,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:59:16,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:59:16,718.718 INFO    ] No existing commands found in stream
[2026-06-19 16:59:21,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:59:21,751.751 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 16:59:23,874.874 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 16:59:23,877.877 INFO    ] Checking for system updates...
[2026-06-19 16:59:23,917.917 INFO    ] 200
[2026-06-19 16:59:23,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:59:23,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:59:23,981.981 INFO    ] No update needed
[2026-06-19 16:59:23,983.983 INFO    ] Checking for camera pi updates...
[2026-06-19 16:59:24,020.020 INFO    ] 200
[2026-06-19 16:59:24,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:59:24,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:59:24,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:59:24,113.113 INFO    ] No camera update needed
[2026-06-19 16:59:24,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:59:24,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:59:24,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:59:24,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:59:26,169.169 INFO    ] ================================================
[2026-06-19 16:59:26,184.184 INFO    ] Launching Daemon at Fri Jun 19 16:59:26 IST 2026
[2026-06-19 16:59:26,194.194 INFO    ] ================================================
[2026-06-19 16:59:26,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:59:26
[2026-06-19 16:59:27,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:59:27,626.626 INFO    ] Initializing speech engine...
[2026-06-19 16:59:27,641.641 INFO    ] 2026-06-19 16:59:27
[2026-06-19 16:59:27,914.914 INFO    ] 2026-06-19 16:59:27
[2026-06-19 16:59:27,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:59:28,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:59:28,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:59:28,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:59:28,328.328 INFO    ] time= 19/06/2026 16:59:28
[2026-06-19 16:59:28,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:59:28,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:59:28,535.535 INFO    ] No existing commands found in stream
[2026-06-19 16:59:33,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:59:33,563.563 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 16:59:36,614.614 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:59:36,617.617 INFO    ] Checking for system updates...
[2026-06-19 16:59:36,653.653 INFO    ] 200
[2026-06-19 16:59:36,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:59:36,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:59:36,710.710 INFO    ] No update needed
[2026-06-19 16:59:36,712.712 INFO    ] Checking for camera pi updates...
[2026-06-19 16:59:36,746.746 INFO    ] 200
[2026-06-19 16:59:36,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:59:36,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:59:36,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:59:36,849.849 INFO    ] No camera update needed
[2026-06-19 16:59:36,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:59:36,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:59:36,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:59:36,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:59:38,904.904 INFO    ] ================================================
[2026-06-19 16:59:38,919.919 INFO    ] Launching Daemon at Fri Jun 19 16:59:38 IST 2026
[2026-06-19 16:59:38,929.929 INFO    ] ================================================
[2026-06-19 16:59:39,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:59:39
[2026-06-19 16:59:40,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:59:40,384.384 INFO    ] Initializing speech engine...
[2026-06-19 16:59:40,401.401 INFO    ] 2026-06-19 16:59:40
[2026-06-19 16:59:40,677.677 INFO    ] 2026-06-19 16:59:40
[2026-06-19 16:59:40,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:59:40,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:59:40,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:59:41,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:59:41,180.180 INFO    ] time= 19/06/2026 16:59:41
[2026-06-19 16:59:41,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:59:41,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:59:41,386.386 INFO    ] No existing commands found in stream
[2026-06-19 16:59:46,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:59:46,404.404 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 16:59:49,765.765 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 16:59:49,768.768 INFO    ] Checking for system updates...
[2026-06-19 16:59:49,804.804 INFO    ] 200
[2026-06-19 16:59:49,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:59:49,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:59:49,862.862 INFO    ] No update needed
[2026-06-19 16:59:49,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 16:59:49,899.899 INFO    ] 200
[2026-06-19 16:59:49,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 16:59:49,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 16:59:49,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 16:59:49,976.976 INFO    ] No camera update needed
[2026-06-19 16:59:49,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-19 16:59:49,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 16:59:49,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 16:59:49,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 16:59:52,032.032 INFO    ] ================================================
[2026-06-19 16:59:52,047.047 INFO    ] Launching Daemon at Fri Jun 19 16:59:52 IST 2026
[2026-06-19 16:59:52,057.057 INFO    ] ================================================
[2026-06-19 16:59:52,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 16:59:52
[2026-06-19 16:59:53,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 16:59:53,666.666 INFO    ] Initializing speech engine...
[2026-06-19 16:59:53,678.678 INFO    ] 2026-06-19 16:59:53
[2026-06-19 16:59:53,956.956 INFO    ] 2026-06-19 16:59:53
[2026-06-19 16:59:54,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 16:59:54,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 16:59:54,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 16:59:54,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 16:59:54,485.485 INFO    ] time= 19/06/2026 16:59:54
[2026-06-19 16:59:54,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 16:59:54,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 16:59:54,637.637 INFO    ] No existing commands found in stream
[2026-06-19 16:59:59,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 16:59:59,656.656 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 17:00:03,238.238 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:00:03,242.242 INFO    ] Checking for system updates...
[2026-06-19 17:00:03,521.521 INFO    ] 200
[2026-06-19 17:00:03,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:03,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:00:03,932.932 INFO    ] No update needed
[2026-06-19 17:00:03,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 17:00:04,124.124 INFO    ] 200
[2026-06-19 17:00:04,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:04,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:00:04,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:00:04,420.420 INFO    ] No camera update needed
[2026-06-19 17:00:04,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:00:04,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:00:04,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:00:04,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:00:06,606.606 INFO    ] ================================================
[2026-06-19 17:00:06,621.621 INFO    ] Launching Daemon at Fri Jun 19 17:00:06 IST 2026
[2026-06-19 17:00:06,632.632 INFO    ] ================================================
[2026-06-19 17:00:07,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:00:07
[2026-06-19 17:00:07,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:00:08,246.246 INFO    ] Initializing speech engine...
[2026-06-19 17:00:08,258.258 INFO    ] 2026-06-19 17:00:08
[2026-06-19 17:00:08,547.547 INFO    ] 2026-06-19 17:00:08
[2026-06-19 17:00:08,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:00:08,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:00:08,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:00:09,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:00:09,099.099 INFO    ] time= 19/06/2026 17:00:09
[2026-06-19 17:00:09,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:00:09,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:00:09,274.274 INFO    ] No existing commands found in stream
[2026-06-19 17:00:14,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:00:14,317.317 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 17:00:14,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:00:14,752.752 INFO    ] Checking for system updates...
[2026-06-19 17:00:14,789.789 INFO    ] 200
[2026-06-19 17:00:14,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:14,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:00:14,848.848 INFO    ] No update needed
[2026-06-19 17:00:14,850.850 INFO    ] Checking for camera pi updates...
[2026-06-19 17:00:14,892.892 INFO    ] 200
[2026-06-19 17:00:14,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:14,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:00:14,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:00:14,992.992 INFO    ] No camera update needed
[2026-06-19 17:00:14,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:00:14,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:00:15,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:00:15,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:00:17,047.047 INFO    ] ================================================
[2026-06-19 17:00:17,063.063 INFO    ] Launching Daemon at Fri Jun 19 17:00:17 IST 2026
[2026-06-19 17:00:17,074.074 INFO    ] ================================================
[2026-06-19 17:00:17,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:00:17
[2026-06-19 17:00:18,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:00:18,500.500 INFO    ] Initializing speech engine...
[2026-06-19 17:00:18,510.510 INFO    ] 2026-06-19 17:00:18
[2026-06-19 17:00:18,809.809 INFO    ] 2026-06-19 17:00:18
[2026-06-19 17:00:18,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:00:19,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:00:19,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:00:19,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:00:19,240.240 INFO    ] time= 19/06/2026 17:00:19
[2026-06-19 17:00:19,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:00:19,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:00:19,426.426 INFO    ] No existing commands found in stream
[2026-06-19 17:00:24,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:00:24,460.460 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 17:00:27,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:00:27,367.367 INFO    ] Checking for system updates...
[2026-06-19 17:00:27,404.404 INFO    ] 200
[2026-06-19 17:00:27,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:27,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:00:27,462.462 INFO    ] No update needed
[2026-06-19 17:00:27,464.464 INFO    ] Checking for camera pi updates...
[2026-06-19 17:00:27,502.502 INFO    ] 200
[2026-06-19 17:00:27,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:27,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:00:27,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:00:27,597.597 INFO    ] No camera update needed
[2026-06-19 17:00:27,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:00:27,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:00:27,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:00:27,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:00:29,656.656 INFO    ] ================================================
[2026-06-19 17:00:29,671.671 INFO    ] Launching Daemon at Fri Jun 19 17:00:29 IST 2026
[2026-06-19 17:00:29,683.683 INFO    ] ================================================
[2026-06-19 17:00:30,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:00:30
[2026-06-19 17:00:30,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:00:31,135.135 INFO    ] Initializing speech engine...
[2026-06-19 17:00:31,141.141 INFO    ] 2026-06-19 17:00:31
[2026-06-19 17:00:31,444.444 INFO    ] 2026-06-19 17:00:31
[2026-06-19 17:00:31,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:00:31,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:00:31,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:00:31,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:00:31,852.852 INFO    ] time= 19/06/2026 17:00:31
[2026-06-19 17:00:31,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:00:31,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:00:31,962.962 INFO    ] No existing commands found in stream
[2026-06-19 17:00:36,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:00:36,978.978 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 17:00:40,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:00:40,755.755 INFO    ] Checking for system updates...
[2026-06-19 17:00:40,796.796 INFO    ] 200
[2026-06-19 17:00:40,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:40,852.852 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:00:40,855.855 INFO    ] No update needed
[2026-06-19 17:00:40,858.858 INFO    ] Checking for camera pi updates...
[2026-06-19 17:00:40,897.897 INFO    ] 200
[2026-06-19 17:00:40,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:40,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:00:40,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:00:40,997.997 INFO    ] No camera update needed
[2026-06-19 17:00:41,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:00:41,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:00:41,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:00:41,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:00:43,060.060 INFO    ] ================================================
[2026-06-19 17:00:43,077.077 INFO    ] Launching Daemon at Fri Jun 19 17:00:43 IST 2026
[2026-06-19 17:00:43,088.088 INFO    ] ================================================
[2026-06-19 17:00:43,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:00:43
[2026-06-19 17:00:44,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:00:44,575.575 INFO    ] Initializing speech engine...
[2026-06-19 17:00:44,584.584 INFO    ] 2026-06-19 17:00:44
[2026-06-19 17:00:44,837.837 INFO    ] 2026-06-19 17:00:44
[2026-06-19 17:00:44,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:00:45,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:00:45,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:00:45,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:00:45,313.313 INFO    ] time= 19/06/2026 17:00:45
[2026-06-19 17:00:45,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:00:45,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:00:45,540.540 INFO    ] No existing commands found in stream
[2026-06-19 17:00:50,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:00:50,569.569 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 17:00:53,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:00:53,201.201 INFO    ] Checking for system updates...
[2026-06-19 17:00:53,237.237 INFO    ] 200
[2026-06-19 17:00:53,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:53,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:00:53,302.302 INFO    ] No update needed
[2026-06-19 17:00:53,304.304 INFO    ] Checking for camera pi updates...
[2026-06-19 17:00:53,342.342 INFO    ] 200
[2026-06-19 17:00:53,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:00:53,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:00:53,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:00:53,438.438 INFO    ] No camera update needed
[2026-06-19 17:00:53,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:00:53,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:00:53,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:00:53,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:00:55,497.497 INFO    ] ================================================
[2026-06-19 17:00:55,513.513 INFO    ] Launching Daemon at Fri Jun 19 17:00:55 IST 2026
[2026-06-19 17:00:55,524.524 INFO    ] ================================================
[2026-06-19 17:00:56,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:00:56
[2026-06-19 17:00:56,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:00:57,186.186 INFO    ] Initializing speech engine...
[2026-06-19 17:00:57,192.192 INFO    ] 2026-06-19 17:00:57
[2026-06-19 17:00:57,502.502 INFO    ] 2026-06-19 17:00:57
[2026-06-19 17:00:57,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:00:57,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:00:57,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:00:58,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:00:58,028.028 INFO    ] time= 19/06/2026 17:00:58
[2026-06-19 17:00:58,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:00:58,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:00:58,180.180 INFO    ] No existing commands found in stream
[2026-06-19 17:01:03,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:01:03,214.214 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 17:01:05,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:01:05,372.372 INFO    ] Checking for system updates...
[2026-06-19 17:01:05,410.410 INFO    ] 200
[2026-06-19 17:01:05,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:05,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:01:05,482.482 INFO    ] No update needed
[2026-06-19 17:01:05,485.485 INFO    ] Checking for camera pi updates...
[2026-06-19 17:01:05,523.523 INFO    ] 200
[2026-06-19 17:01:05,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:05,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:01:05,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:01:05,624.624 INFO    ] No camera update needed
[2026-06-19 17:01:05,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:01:05,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:01:05,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:01:05,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:01:07,680.680 INFO    ] ================================================
[2026-06-19 17:01:07,695.695 INFO    ] Launching Daemon at Fri Jun 19 17:01:07 IST 2026
[2026-06-19 17:01:07,707.707 INFO    ] ================================================
[2026-06-19 17:01:08,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:01:08
[2026-06-19 17:01:09,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:01:09,373.373 INFO    ] Initializing speech engine...
[2026-06-19 17:01:09,385.385 INFO    ] 2026-06-19 17:01:09
[2026-06-19 17:01:09,674.674 INFO    ] 2026-06-19 17:01:09
[2026-06-19 17:01:09,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:01:09,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:01:09,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:01:10,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:01:10,218.218 INFO    ] time= 19/06/2026 17:01:10
[2026-06-19 17:01:10,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:01:10,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:01:10,377.377 INFO    ] No existing commands found in stream
[2026-06-19 17:01:15,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:01:15,412.412 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 17:01:17,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:01:17,060.060 INFO    ] Checking for system updates...
[2026-06-19 17:01:17,097.097 INFO    ] 200
[2026-06-19 17:01:17,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:17,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:01:17,158.158 INFO    ] No update needed
[2026-06-19 17:01:17,160.160 INFO    ] Checking for camera pi updates...
[2026-06-19 17:01:17,194.194 INFO    ] 200
[2026-06-19 17:01:17,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:17,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:01:17,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:01:17,289.289 INFO    ] No camera update needed
[2026-06-19 17:01:17,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:01:17,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:01:17,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:01:17,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:01:19,344.344 INFO    ] ================================================
[2026-06-19 17:01:19,359.359 INFO    ] Launching Daemon at Fri Jun 19 17:01:19 IST 2026
[2026-06-19 17:01:19,371.371 INFO    ] ================================================
[2026-06-19 17:01:19,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:01:19
[2026-06-19 17:01:20,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:01:20,793.793 INFO    ] Initializing speech engine...
[2026-06-19 17:01:20,802.802 INFO    ] 2026-06-19 17:01:20
[2026-06-19 17:01:21,049.049 INFO    ] 2026-06-19 17:01:21
[2026-06-19 17:01:21,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:01:21,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:01:21,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:01:21,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:01:21,515.515 INFO    ] time= 19/06/2026 17:01:21
[2026-06-19 17:01:21,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:01:21,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:01:21,712.712 INFO    ] No existing commands found in stream
[2026-06-19 17:01:26,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:01:26,727.727 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 17:01:30,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:01:30,523.523 INFO    ] Checking for system updates...
[2026-06-19 17:01:30,563.563 INFO    ] 200
[2026-06-19 17:01:30,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:30,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:01:30,628.628 INFO    ] No update needed
[2026-06-19 17:01:30,631.631 INFO    ] Checking for camera pi updates...
[2026-06-19 17:01:30,668.668 INFO    ] 200
[2026-06-19 17:01:30,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:30,711.711 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:01:30,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:01:30,749.749 INFO    ] No camera update needed
[2026-06-19 17:01:30,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:01:30,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:01:30,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:01:30,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:01:32,804.804 INFO    ] ================================================
[2026-06-19 17:01:32,820.820 INFO    ] Launching Daemon at Fri Jun 19 17:01:32 IST 2026
[2026-06-19 17:01:32,832.832 INFO    ] ================================================
[2026-06-19 17:01:33,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:01:33
[2026-06-19 17:01:34,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:01:34,494.494 INFO    ] Initializing speech engine...
[2026-06-19 17:01:34,508.508 INFO    ] 2026-06-19 17:01:34
[2026-06-19 17:01:34,823.823 INFO    ] 2026-06-19 17:01:34
[2026-06-19 17:01:34,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:01:35,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:01:35,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:01:35,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:01:35,343.343 INFO    ] time= 19/06/2026 17:01:35
[2026-06-19 17:01:35,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:01:35,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:01:35,499.499 INFO    ] No existing commands found in stream
[2026-06-19 17:01:40,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:01:40,521.521 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 17:01:42,134.134 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:01:42,138.138 INFO    ] Checking for system updates...
[2026-06-19 17:01:42,175.175 INFO    ] 200
[2026-06-19 17:01:42,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:42,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:01:42,234.234 INFO    ] No update needed
[2026-06-19 17:01:42,238.238 INFO    ] Checking for camera pi updates...
[2026-06-19 17:01:42,277.277 INFO    ] 200
[2026-06-19 17:01:42,280.280 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:42,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:01:42,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:01:42,386.386 INFO    ] No camera update needed
[2026-06-19 17:01:42,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:01:42,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:01:42,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:01:42,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:01:44,447.447 INFO    ] ================================================
[2026-06-19 17:01:44,463.463 INFO    ] Launching Daemon at Fri Jun 19 17:01:44 IST 2026
[2026-06-19 17:01:44,474.474 INFO    ] ================================================
[2026-06-19 17:01:45,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:01:45
[2026-06-19 17:01:45,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:01:46,150.150 INFO    ] Initializing speech engine...
[2026-06-19 17:01:46,164.164 INFO    ] 2026-06-19 17:01:46
[2026-06-19 17:01:46,453.453 INFO    ] 2026-06-19 17:01:46
[2026-06-19 17:01:46,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:01:46,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:01:46,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:01:46,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:01:47,011.011 INFO    ] time= 19/06/2026 17:01:47
[2026-06-19 17:01:47,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:01:47,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:01:47,199.199 INFO    ] No existing commands found in stream
[2026-06-19 17:01:52,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:01:52,239.239 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 17:01:53,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:01:53,759.759 INFO    ] Checking for system updates...
[2026-06-19 17:01:53,800.800 INFO    ] 200
[2026-06-19 17:01:53,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:53,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:01:53,861.861 INFO    ] No update needed
[2026-06-19 17:01:53,863.863 INFO    ] Checking for camera pi updates...
[2026-06-19 17:01:53,899.899 INFO    ] 200
[2026-06-19 17:01:53,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:01:53,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:01:53,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:01:53,999.999 INFO    ] No camera update needed
[2026-06-19 17:01:54,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:01:54,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:01:54,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:01:54,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:01:56,057.057 INFO    ] ================================================
[2026-06-19 17:01:56,073.073 INFO    ] Launching Daemon at Fri Jun 19 17:01:56 IST 2026
[2026-06-19 17:01:56,084.084 INFO    ] ================================================
[2026-06-19 17:01:56,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:01:56
[2026-06-19 17:01:57,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:01:57,574.574 INFO    ] Initializing speech engine...
[2026-06-19 17:01:57,583.583 INFO    ] 2026-06-19 17:01:57
[2026-06-19 17:01:57,836.836 INFO    ] 2026-06-19 17:01:57
[2026-06-19 17:01:57,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:01:58,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:01:58,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:01:58,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:01:58,216.216 INFO    ] time= 19/06/2026 17:01:58
[2026-06-19 17:01:58,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:01:58,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:01:58,411.411 INFO    ] No existing commands found in stream
[2026-06-19 17:02:03,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:02:03,433.433 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 17:02:05,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:02:05,410.410 INFO    ] Checking for system updates...
[2026-06-19 17:02:05,451.451 INFO    ] 200
[2026-06-19 17:02:05,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:05,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:02:05,515.515 INFO    ] No update needed
[2026-06-19 17:02:05,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 17:02:05,552.552 INFO    ] 200
[2026-06-19 17:02:05,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:05,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:02:05,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:02:05,744.744 INFO    ] No camera update needed
[2026-06-19 17:02:05,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:02:05,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:02:05,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:02:05,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:02:07,799.799 INFO    ] ================================================
[2026-06-19 17:02:07,814.814 INFO    ] Launching Daemon at Fri Jun 19 17:02:07 IST 2026
[2026-06-19 17:02:07,825.825 INFO    ] ================================================
[2026-06-19 17:02:08,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:02:08
[2026-06-19 17:02:08,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:02:09,235.235 INFO    ] Initializing speech engine...
[2026-06-19 17:02:09,249.249 INFO    ] 2026-06-19 17:02:09
[2026-06-19 17:02:09,515.515 INFO    ] 2026-06-19 17:02:09
[2026-06-19 17:02:09,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:02:09,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:02:09,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:02:09,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:02:09,976.976 INFO    ] time= 19/06/2026 17:02:09
[2026-06-19 17:02:10,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:02:10,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:02:10,225.225 INFO    ] No existing commands found in stream
[2026-06-19 17:02:15,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:02:15,251.251 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 17:02:18,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:02:18,819.819 INFO    ] Checking for system updates...
[2026-06-19 17:02:18,858.858 INFO    ] 200
[2026-06-19 17:02:18,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:18,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:02:18,916.916 INFO    ] No update needed
[2026-06-19 17:02:18,919.919 INFO    ] Checking for camera pi updates...
[2026-06-19 17:02:18,953.953 INFO    ] 200
[2026-06-19 17:02:18,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:19,002.002 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:02:19,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:02:19,061.061 INFO    ] No camera update needed
[2026-06-19 17:02:19,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:02:19,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:02:19,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:02:19,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:02:21,117.117 INFO    ] ================================================
[2026-06-19 17:02:21,133.133 INFO    ] Launching Daemon at Fri Jun 19 17:02:21 IST 2026
[2026-06-19 17:02:21,145.145 INFO    ] ================================================
[2026-06-19 17:02:21,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:02:21
[2026-06-19 17:02:22,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:02:22,814.814 INFO    ] Initializing speech engine...
[2026-06-19 17:02:22,823.823 INFO    ] 2026-06-19 17:02:22
[2026-06-19 17:02:23,146.146 INFO    ] 2026-06-19 17:02:23
[2026-06-19 17:02:23,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:02:23,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:02:23,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:02:23,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:02:23,684.684 INFO    ] time= 19/06/2026 17:02:23
[2026-06-19 17:02:23,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:02:23,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:02:23,832.832 INFO    ] No existing commands found in stream
[2026-06-19 17:02:28,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:02:28,852.852 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 17:02:32,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:02:32,216.216 INFO    ] Checking for system updates...
[2026-06-19 17:02:32,256.256 INFO    ] 200
[2026-06-19 17:02:32,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:32,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:02:32,321.321 INFO    ] No update needed
[2026-06-19 17:02:32,324.324 INFO    ] Checking for camera pi updates...
[2026-06-19 17:02:32,366.366 INFO    ] 200
[2026-06-19 17:02:32,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:32,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:02:32,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:02:32,449.449 INFO    ] No camera update needed
[2026-06-19 17:02:32,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:02:32,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:02:32,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:02:32,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:02:34,509.509 INFO    ] ================================================
[2026-06-19 17:02:34,526.526 INFO    ] Launching Daemon at Fri Jun 19 17:02:34 IST 2026
[2026-06-19 17:02:34,537.537 INFO    ] ================================================
[2026-06-19 17:02:35,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:02:35
[2026-06-19 17:02:35,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:02:36,007.007 INFO    ] Initializing speech engine...
[2026-06-19 17:02:36,016.016 INFO    ] 2026-06-19 17:02:36
[2026-06-19 17:02:36,276.276 INFO    ] 2026-06-19 17:02:36
[2026-06-19 17:02:36,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:02:36,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:02:36,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:02:36,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:02:36,762.762 INFO    ] time= 19/06/2026 17:02:36
[2026-06-19 17:02:36,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:02:36,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:02:36,957.957 INFO    ] No existing commands found in stream
[2026-06-19 17:02:41,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:02:41,988.988 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 17:02:44,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:02:44,307.307 INFO    ] Checking for system updates...
[2026-06-19 17:02:44,346.346 INFO    ] 200
[2026-06-19 17:02:44,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:44,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:02:44,410.410 INFO    ] No update needed
[2026-06-19 17:02:44,413.413 INFO    ] Checking for camera pi updates...
[2026-06-19 17:02:44,450.450 INFO    ] 200
[2026-06-19 17:02:44,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:44,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:02:44,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:02:44,542.542 INFO    ] No camera update needed
[2026-06-19 17:02:44,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:02:44,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:02:44,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:02:44,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:02:46,600.600 INFO    ] ================================================
[2026-06-19 17:02:46,615.615 INFO    ] Launching Daemon at Fri Jun 19 17:02:46 IST 2026
[2026-06-19 17:02:46,627.627 INFO    ] ================================================
[2026-06-19 17:02:47,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:02:47
[2026-06-19 17:02:47,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:02:48,080.080 INFO    ] Initializing speech engine...
[2026-06-19 17:02:48,087.087 INFO    ] 2026-06-19 17:02:48
[2026-06-19 17:02:48,380.380 INFO    ] 2026-06-19 17:02:48
[2026-06-19 17:02:48,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:02:48,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:02:48,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:02:48,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:02:48,797.797 INFO    ] time= 19/06/2026 17:02:48
[2026-06-19 17:02:48,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:02:48,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:02:48,966.966 INFO    ] No existing commands found in stream
[2026-06-19 17:02:53,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:02:53,994.994 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 17:02:57,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:02:57,521.521 INFO    ] Checking for system updates...
[2026-06-19 17:02:57,558.558 INFO    ] 200
[2026-06-19 17:02:57,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:57,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:02:57,615.615 INFO    ] No update needed
[2026-06-19 17:02:57,618.618 INFO    ] Checking for camera pi updates...
[2026-06-19 17:02:57,652.652 INFO    ] 200
[2026-06-19 17:02:57,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:02:57,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:02:57,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:02:57,742.742 INFO    ] No camera update needed
[2026-06-19 17:02:57,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:02:57,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:02:57,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:02:57,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:02:59,798.798 INFO    ] ================================================
[2026-06-19 17:02:59,813.813 INFO    ] Launching Daemon at Fri Jun 19 17:02:59 IST 2026
[2026-06-19 17:02:59,825.825 INFO    ] ================================================
[2026-06-19 17:03:00,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:03:00
[2026-06-19 17:03:00,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:03:01,271.271 INFO    ] Initializing speech engine...
[2026-06-19 17:03:01,290.290 INFO    ] 2026-06-19 17:03:01
[2026-06-19 17:03:01,739.739 INFO    ] 2026-06-19 17:03:01
[2026-06-19 17:03:01,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:03:02,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:03:02,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:03:02,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:03:02,348.348 INFO    ] time= 19/06/2026 17:03:02
[2026-06-19 17:03:02,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:03:02,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:03:02,559.559 INFO    ] No existing commands found in stream
[2026-06-19 17:03:07,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:03:07,588.588 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 17:03:08,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:03:08,186.186 INFO    ] Checking for system updates...
[2026-06-19 17:03:08,222.222 INFO    ] 200
[2026-06-19 17:03:08,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:08,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:03:08,738.738 INFO    ] No update needed
[2026-06-19 17:03:08,740.740 INFO    ] Checking for camera pi updates...
[2026-06-19 17:03:08,781.781 INFO    ] 200
[2026-06-19 17:03:08,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:08,826.826 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:03:08,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:03:08,867.867 INFO    ] No camera update needed
[2026-06-19 17:03:08,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:03:08,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:03:08,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:03:08,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:03:10,924.924 INFO    ] ================================================
[2026-06-19 17:03:10,940.940 INFO    ] Launching Daemon at Fri Jun 19 17:03:10 IST 2026
[2026-06-19 17:03:10,951.951 INFO    ] ================================================
[2026-06-19 17:03:11,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:03:11
[2026-06-19 17:03:12,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:03:12,425.425 INFO    ] Initializing speech engine...
[2026-06-19 17:03:12,436.436 INFO    ] 2026-06-19 17:03:12
[2026-06-19 17:03:12,701.701 INFO    ] 2026-06-19 17:03:12
[2026-06-19 17:03:12,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:03:12,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:03:12,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:03:13,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:03:13,184.184 INFO    ] time= 19/06/2026 17:03:13
[2026-06-19 17:03:13,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:03:13,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:03:13,443.443 INFO    ] No existing commands found in stream
[2026-06-19 17:03:18,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:03:18,469.469 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 17:03:20,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:03:20,797.797 INFO    ] Checking for system updates...
[2026-06-19 17:03:20,834.834 INFO    ] 200
[2026-06-19 17:03:20,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:20,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:03:20,894.894 INFO    ] No update needed
[2026-06-19 17:03:20,897.897 INFO    ] Checking for camera pi updates...
[2026-06-19 17:03:20,934.934 INFO    ] 200
[2026-06-19 17:03:20,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:20,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:03:21,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:03:21,030.030 INFO    ] No camera update needed
[2026-06-19 17:03:21,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:03:21,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:03:21,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:03:21,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:03:23,085.085 INFO    ] ================================================
[2026-06-19 17:03:23,101.101 INFO    ] Launching Daemon at Fri Jun 19 17:03:23 IST 2026
[2026-06-19 17:03:23,112.112 INFO    ] ================================================
[2026-06-19 17:03:23,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:03:23
[2026-06-19 17:03:24,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:03:24,693.693 INFO    ] Initializing speech engine...
[2026-06-19 17:03:24,699.699 INFO    ] 2026-06-19 17:03:24
[2026-06-19 17:03:24,970.970 INFO    ] 2026-06-19 17:03:24
[2026-06-19 17:03:25,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:03:25,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:03:25,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:03:25,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:03:25,533.533 INFO    ] time= 19/06/2026 17:03:25
[2026-06-19 17:03:25,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:03:25,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:03:25,696.696 INFO    ] No existing commands found in stream
[2026-06-19 17:03:30,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:03:30,722.722 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 17:03:32,008.008 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:03:32,011.011 INFO    ] Checking for system updates...
[2026-06-19 17:03:32,050.050 INFO    ] 200
[2026-06-19 17:03:32,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:32,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:03:32,112.112 INFO    ] No update needed
[2026-06-19 17:03:32,115.115 INFO    ] Checking for camera pi updates...
[2026-06-19 17:03:32,153.153 INFO    ] 200
[2026-06-19 17:03:32,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:32,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:03:32,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:03:32,238.238 INFO    ] No camera update needed
[2026-06-19 17:03:32,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:03:32,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:03:32,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:03:32,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:03:34,296.296 INFO    ] ================================================
[2026-06-19 17:03:34,312.312 INFO    ] Launching Daemon at Fri Jun 19 17:03:34 IST 2026
[2026-06-19 17:03:34,323.323 INFO    ] ================================================
[2026-06-19 17:03:34,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:03:34
[2026-06-19 17:03:35,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:03:35,733.733 INFO    ] Initializing speech engine...
[2026-06-19 17:03:35,741.741 INFO    ] 2026-06-19 17:03:35
[2026-06-19 17:03:36,038.038 INFO    ] 2026-06-19 17:03:36
[2026-06-19 17:03:36,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:03:36,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:03:36,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:03:36,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:03:36,424.424 INFO    ] time= 19/06/2026 17:03:36
[2026-06-19 17:03:36,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:03:36,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:03:36,538.538 INFO    ] No existing commands found in stream
[2026-06-19 17:03:41,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:03:41,553.553 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 17:03:45,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:03:45,693.693 INFO    ] Checking for system updates...
[2026-06-19 17:03:45,729.729 INFO    ] 200
[2026-06-19 17:03:45,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:45,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:03:45,787.787 INFO    ] No update needed
[2026-06-19 17:03:45,789.789 INFO    ] Checking for camera pi updates...
[2026-06-19 17:03:45,822.822 INFO    ] 200
[2026-06-19 17:03:45,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:45,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:03:45,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:03:45,913.913 INFO    ] No camera update needed
[2026-06-19 17:03:45,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:03:45,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:03:45,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:03:45,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:03:47,969.969 INFO    ] ================================================
[2026-06-19 17:03:47,984.984 INFO    ] Launching Daemon at Fri Jun 19 17:03:47 IST 2026
[2026-06-19 17:03:48,996.996 INFO    ] ================================================
[2026-06-19 17:03:48,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:03:48
[2026-06-19 17:03:49,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:03:49,435.435 INFO    ] Initializing speech engine...
[2026-06-19 17:03:49,451.451 INFO    ] 2026-06-19 17:03:49
[2026-06-19 17:03:49,735.735 INFO    ] 2026-06-19 17:03:49
[2026-06-19 17:03:49,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:03:49,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:03:49,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:03:50,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:03:50,158.158 INFO    ] time= 19/06/2026 17:03:50
[2026-06-19 17:03:50,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:03:50,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:03:50,356.356 INFO    ] No existing commands found in stream
[2026-06-19 17:03:55,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:03:55,390.390 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 17:03:56,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:03:56,481.481 INFO    ] Checking for system updates...
[2026-06-19 17:03:56,519.519 INFO    ] 200
[2026-06-19 17:03:56,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:56,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:03:56,578.578 INFO    ] No update needed
[2026-06-19 17:03:56,581.581 INFO    ] Checking for camera pi updates...
[2026-06-19 17:03:56,619.619 INFO    ] 200
[2026-06-19 17:03:56,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:03:56,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:03:56,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:03:56,722.722 INFO    ] No camera update needed
[2026-06-19 17:03:56,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:03:56,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:03:56,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:03:56,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:03:58,786.786 INFO    ] ================================================
[2026-06-19 17:03:58,801.801 INFO    ] Launching Daemon at Fri Jun 19 17:03:58 IST 2026
[2026-06-19 17:03:58,812.812 INFO    ] ================================================
[2026-06-19 17:03:59,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:03:59
[2026-06-19 17:03:59,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:04:00,243.243 INFO    ] Initializing speech engine...
[2026-06-19 17:04:00,252.252 INFO    ] 2026-06-19 17:04:00
[2026-06-19 17:04:00,544.544 INFO    ] 2026-06-19 17:04:00
[2026-06-19 17:04:00,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:04:00,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:04:00,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:04:00,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:04:00,960.960 INFO    ] time= 19/06/2026 17:04:00
[2026-06-19 17:04:00,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:04:01,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:04:01,158.158 INFO    ] No existing commands found in stream
[2026-06-19 17:04:06,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:04:06,191.191 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 17:04:10,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:04:10,015.015 INFO    ] Checking for system updates...
[2026-06-19 17:04:10,051.051 INFO    ] 200
[2026-06-19 17:04:10,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:10,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:04:10,109.109 INFO    ] No update needed
[2026-06-19 17:04:10,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 17:04:10,146.146 INFO    ] 200
[2026-06-19 17:04:10,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:10,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:04:10,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:04:10,338.338 INFO    ] No camera update needed
[2026-06-19 17:04:10,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:04:10,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:04:10,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:04:10,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:04:12,394.394 INFO    ] ================================================
[2026-06-19 17:04:12,409.409 INFO    ] Launching Daemon at Fri Jun 19 17:04:12 IST 2026
[2026-06-19 17:04:12,421.421 INFO    ] ================================================
[2026-06-19 17:04:13,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:04:12
[2026-06-19 17:04:13,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:04:13,853.853 INFO    ] Initializing speech engine...
[2026-06-19 17:04:13,866.866 INFO    ] 2026-06-19 17:04:13
[2026-06-19 17:04:14,151.151 INFO    ] 2026-06-19 17:04:14
[2026-06-19 17:04:14,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:04:14,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:04:14,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:04:14,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:04:14,649.649 INFO    ] time= 19/06/2026 17:04:14
[2026-06-19 17:04:14,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:04:14,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:04:14,822.822 INFO    ] No existing commands found in stream
[2026-06-19 17:04:19,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:04:19,841.841 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 17:04:23,537.537 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:04:23,539.539 INFO    ] Checking for system updates...
[2026-06-19 17:04:23,577.577 INFO    ] 200
[2026-06-19 17:04:23,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:23,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:04:23,640.640 INFO    ] No update needed
[2026-06-19 17:04:23,643.643 INFO    ] Checking for camera pi updates...
[2026-06-19 17:04:23,676.676 INFO    ] 200
[2026-06-19 17:04:23,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:23,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:04:23,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:04:23,781.781 INFO    ] No camera update needed
[2026-06-19 17:04:23,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:04:23,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:04:23,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:04:23,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:04:25,836.836 INFO    ] ================================================
[2026-06-19 17:04:25,852.852 INFO    ] Launching Daemon at Fri Jun 19 17:04:25 IST 2026
[2026-06-19 17:04:25,863.863 INFO    ] ================================================
[2026-06-19 17:04:26,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:04:26
[2026-06-19 17:04:27,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:04:27,320.320 INFO    ] Initializing speech engine...
[2026-06-19 17:04:27,330.330 INFO    ] 2026-06-19 17:04:27
[2026-06-19 17:04:27,583.583 INFO    ] 2026-06-19 17:04:27
[2026-06-19 17:04:27,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:04:27,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:04:27,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:04:28,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:04:28,083.083 INFO    ] time= 19/06/2026 17:04:28
[2026-06-19 17:04:28,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:04:28,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:04:28,292.292 INFO    ] No existing commands found in stream
[2026-06-19 17:04:33,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:04:33,306.306 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 17:04:35,466.466 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:04:35,469.469 INFO    ] Checking for system updates...
[2026-06-19 17:04:35,505.505 INFO    ] 200
[2026-06-19 17:04:35,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:35,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:04:35,563.563 INFO    ] No update needed
[2026-06-19 17:04:35,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 17:04:35,608.608 INFO    ] 200
[2026-06-19 17:04:35,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:35,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:04:35,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:04:35,703.703 INFO    ] No camera update needed
[2026-06-19 17:04:35,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:04:35,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:04:35,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:04:35,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:04:37,760.760 INFO    ] ================================================
[2026-06-19 17:04:37,777.777 INFO    ] Launching Daemon at Fri Jun 19 17:04:37 IST 2026
[2026-06-19 17:04:37,788.788 INFO    ] ================================================
[2026-06-19 17:04:38,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:04:38
[2026-06-19 17:04:38,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:04:39,209.209 INFO    ] Initializing speech engine...
[2026-06-19 17:04:39,215.215 INFO    ] 2026-06-19 17:04:39
[2026-06-19 17:04:39,506.506 INFO    ] 2026-06-19 17:04:39
[2026-06-19 17:04:39,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:04:39,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:04:39,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:04:39,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:04:39,943.943 INFO    ] time= 19/06/2026 17:04:39
[2026-06-19 17:04:39,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:04:39,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:04:40,109.109 INFO    ] No existing commands found in stream
[2026-06-19 17:04:45,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:04:45,131.131 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 17:04:48,796.796 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:04:48,800.800 INFO    ] Checking for system updates...
[2026-06-19 17:04:48,838.838 INFO    ] 200
[2026-06-19 17:04:48,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:48,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:04:48,898.898 INFO    ] No update needed
[2026-06-19 17:04:48,901.901 INFO    ] Checking for camera pi updates...
[2026-06-19 17:04:48,936.936 INFO    ] 200
[2026-06-19 17:04:48,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:48,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:04:49,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:04:49,018.018 INFO    ] No camera update needed
[2026-06-19 17:04:49,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:04:49,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:04:49,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:04:49,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:04:51,078.078 INFO    ] ================================================
[2026-06-19 17:04:51,094.094 INFO    ] Launching Daemon at Fri Jun 19 17:04:51 IST 2026
[2026-06-19 17:04:51,105.105 INFO    ] ================================================
[2026-06-19 17:04:51,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:04:51
[2026-06-19 17:04:52,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:04:52,525.525 INFO    ] Initializing speech engine...
[2026-06-19 17:04:52,534.534 INFO    ] 2026-06-19 17:04:52
[2026-06-19 17:04:52,834.834 INFO    ] 2026-06-19 17:04:52
[2026-06-19 17:04:52,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:04:53,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:04:53,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:04:53,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:04:53,261.261 INFO    ] time= 19/06/2026 17:04:53
[2026-06-19 17:04:53,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:04:53,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:04:53,443.443 INFO    ] No existing commands found in stream
[2026-06-19 17:04:58,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:04:58,477.477 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 17:04:59,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:04:59,229.229 INFO    ] Checking for system updates...
[2026-06-19 17:04:59,266.266 INFO    ] 200
[2026-06-19 17:04:59,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:59,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:04:59,324.324 INFO    ] No update needed
[2026-06-19 17:04:59,326.326 INFO    ] Checking for camera pi updates...
[2026-06-19 17:04:59,364.364 INFO    ] 200
[2026-06-19 17:04:59,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:04:59,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:04:59,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:04:59,441.441 INFO    ] No camera update needed
[2026-06-19 17:04:59,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:04:59,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:04:59,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:04:59,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:05:01,511.511 INFO    ] ================================================
[2026-06-19 17:05:01,599.599 INFO    ] Launching Daemon at Fri Jun 19 17:05:01 IST 2026
[2026-06-19 17:05:01,657.657 INFO    ] ================================================
[2026-06-19 17:05:02,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:05:02
[2026-06-19 17:05:03,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:05:03,427.427 INFO    ] Initializing speech engine...
[2026-06-19 17:05:03,439.439 INFO    ] 2026-06-19 17:05:03
[2026-06-19 17:05:03,730.730 INFO    ] 2026-06-19 17:05:03
[2026-06-19 17:05:03,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:05:03,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:05:04,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:05:04,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:05:04,205.205 INFO    ] time= 19/06/2026 17:05:04
[2026-06-19 17:05:04,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:05:04,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:05:04,426.426 INFO    ] No existing commands found in stream
[2026-06-19 17:05:09,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:05:09,449.449 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 17:05:10,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:05:10,312.312 INFO    ] Checking for system updates...
[2026-06-19 17:05:10,348.348 INFO    ] 200
[2026-06-19 17:05:10,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:05:10,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:05:10,406.406 INFO    ] No update needed
[2026-06-19 17:05:10,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 17:05:10,442.442 INFO    ] 200
[2026-06-19 17:05:10,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:05:10,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:05:10,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:05:10,545.545 INFO    ] No camera update needed
[2026-06-19 17:05:10,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:05:10,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:05:10,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:05:10,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:05:12,600.600 INFO    ] ================================================
[2026-06-19 17:05:12,616.616 INFO    ] Launching Daemon at Fri Jun 19 17:05:12 IST 2026
[2026-06-19 17:05:12,627.627 INFO    ] ================================================
[2026-06-19 17:05:13,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:05:13
[2026-06-19 17:05:13,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:05:14,244.244 INFO    ] Initializing speech engine...
[2026-06-19 17:05:14,254.254 INFO    ] 2026-06-19 17:05:14
[2026-06-19 17:05:14,531.531 INFO    ] 2026-06-19 17:05:14
[2026-06-19 17:05:14,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:05:14,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:05:14,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:05:15,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:05:15,070.070 INFO    ] time= 19/06/2026 17:05:15
[2026-06-19 17:05:15,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:05:15,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:05:15,229.229 INFO    ] No existing commands found in stream
[2026-06-19 17:05:20,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:05:20,261.261 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 17:05:24,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:05:24,347.347 INFO    ] Checking for system updates...
[2026-06-19 17:05:24,384.384 INFO    ] 200
[2026-06-19 17:05:24,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:05:24,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:05:24,442.442 INFO    ] No update needed
[2026-06-19 17:05:24,444.444 INFO    ] Checking for camera pi updates...
[2026-06-19 17:05:24,483.483 INFO    ] 200
[2026-06-19 17:05:24,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:05:24,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:05:24,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:05:24,573.573 INFO    ] No camera update needed
[2026-06-19 17:05:24,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:05:24,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:05:24,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:05:24,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:05:26,629.629 INFO    ] ================================================
[2026-06-19 17:05:26,645.645 INFO    ] Launching Daemon at Fri Jun 19 17:05:26 IST 2026
[2026-06-19 17:05:26,656.656 INFO    ] ================================================
[2026-06-19 17:05:27,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:05:27
[2026-06-19 17:05:28,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:05:28,397.397 INFO    ] Initializing speech engine...
[2026-06-19 17:05:28,407.407 INFO    ] 2026-06-19 17:05:28
[2026-06-19 17:05:28,709.709 INFO    ] 2026-06-19 17:05:28
[2026-06-19 17:05:28,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:05:28,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:05:28,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:05:29,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:05:29,097.097 INFO    ] time= 19/06/2026 17:05:29
[2026-06-19 17:05:29,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:05:29,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:05:29,357.357 INFO    ] No existing commands found in stream
[2026-06-19 17:05:34,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:05:34,386.386 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 17:05:37,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:05:37,957.957 INFO    ] Checking for system updates...
[2026-06-19 17:05:37,994.994 INFO    ] 200
[2026-06-19 17:05:37,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:05:38,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:05:38,054.054 INFO    ] No update needed
[2026-06-19 17:05:38,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 17:05:38,092.092 INFO    ] 200
[2026-06-19 17:05:38,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:05:38,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:05:38,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:05:38,200.200 INFO    ] No camera update needed
[2026-06-19 17:05:38,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:05:38,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:05:38,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:05:38,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:05:40,261.261 INFO    ] ================================================
[2026-06-19 17:05:40,277.277 INFO    ] Launching Daemon at Fri Jun 19 17:05:40 IST 2026
[2026-06-19 17:05:40,289.289 INFO    ] ================================================
[2026-06-19 17:05:40,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:05:40
[2026-06-19 17:05:41,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:05:41,721.721 INFO    ] Initializing speech engine...
[2026-06-19 17:05:41,730.730 INFO    ] 2026-06-19 17:05:41
[2026-06-19 17:05:41,990.990 INFO    ] 2026-06-19 17:05:41
[2026-06-19 17:05:42,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:05:42,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:05:42,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:05:42,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:05:42,468.468 INFO    ] time= 19/06/2026 17:05:42
[2026-06-19 17:05:42,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:05:42,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:05:42,672.672 INFO    ] No existing commands found in stream
[2026-06-19 17:05:47,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:05:47,705.705 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 17:05:50,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:05:50,609.609 INFO    ] Checking for system updates...
[2026-06-19 17:05:50,645.645 INFO    ] 200
[2026-06-19 17:05:50,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:05:50,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:05:50,703.703 INFO    ] No update needed
[2026-06-19 17:05:50,705.705 INFO    ] Checking for camera pi updates...
[2026-06-19 17:05:50,739.739 INFO    ] 200
[2026-06-19 17:05:50,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:05:50,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:05:50,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:05:50,828.828 INFO    ] No camera update needed
[2026-06-19 17:05:50,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:05:50,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:05:50,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:05:50,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:05:52,885.885 INFO    ] ================================================
[2026-06-19 17:05:52,901.901 INFO    ] Launching Daemon at Fri Jun 19 17:05:52 IST 2026
[2026-06-19 17:05:52,911.911 INFO    ] ================================================
[2026-06-19 17:05:53,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:05:53
[2026-06-19 17:05:54,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:05:54,572.572 INFO    ] Initializing speech engine...
[2026-06-19 17:05:54,581.581 INFO    ] 2026-06-19 17:05:54
[2026-06-19 17:05:54,905.905 INFO    ] 2026-06-19 17:05:54
[2026-06-19 17:05:54,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:05:55,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:05:55,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:05:55,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:05:55,485.485 INFO    ] time= 19/06/2026 17:05:55
[2026-06-19 17:05:55,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:05:55,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:05:55,726.726 INFO    ] No existing commands found in stream
[2026-06-19 17:06:00,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:06:00,760.760 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 17:06:03,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:06:03,918.918 INFO    ] Checking for system updates...
[2026-06-19 17:06:03,957.957 INFO    ] 200
[2026-06-19 17:06:03,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:04,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:06:04,023.023 INFO    ] No update needed
[2026-06-19 17:06:04,026.026 INFO    ] Checking for camera pi updates...
[2026-06-19 17:06:04,064.064 INFO    ] 200
[2026-06-19 17:06:04,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:04,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:06:04,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:06:04,164.164 INFO    ] No camera update needed
[2026-06-19 17:06:04,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:06:04,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:06:04,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:06:04,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:06:06,223.223 INFO    ] ================================================
[2026-06-19 17:06:06,239.239 INFO    ] Launching Daemon at Fri Jun 19 17:06:06 IST 2026
[2026-06-19 17:06:06,250.250 INFO    ] ================================================
[2026-06-19 17:06:06,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:06:06
[2026-06-19 17:06:07,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:06:07,821.821 INFO    ] Initializing speech engine...
[2026-06-19 17:06:07,833.833 INFO    ] 2026-06-19 17:06:07
[2026-06-19 17:06:08,143.143 INFO    ] 2026-06-19 17:06:08
[2026-06-19 17:06:08,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:06:08,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:06:08,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:06:08,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:06:08,657.657 INFO    ] time= 19/06/2026 17:06:08
[2026-06-19 17:06:08,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:06:08,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:06:08,813.813 INFO    ] No existing commands found in stream
[2026-06-19 17:06:13,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:06:13,838.838 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 17:06:17,096.096 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:06:17,099.099 INFO    ] Checking for system updates...
[2026-06-19 17:06:17,136.136 INFO    ] 200
[2026-06-19 17:06:17,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:17,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:06:17,196.196 INFO    ] No update needed
[2026-06-19 17:06:17,199.199 INFO    ] Checking for camera pi updates...
[2026-06-19 17:06:17,235.235 INFO    ] 200
[2026-06-19 17:06:17,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:17,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:06:17,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:06:17,434.434 INFO    ] No camera update needed
[2026-06-19 17:06:17,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:06:17,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:06:17,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:06:17,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:06:19,494.494 INFO    ] ================================================
[2026-06-19 17:06:19,510.510 INFO    ] Launching Daemon at Fri Jun 19 17:06:19 IST 2026
[2026-06-19 17:06:19,521.521 INFO    ] ================================================
[2026-06-19 17:06:20,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:06:20
[2026-06-19 17:06:20,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:06:20,933.933 INFO    ] Initializing speech engine...
[2026-06-19 17:06:20,949.949 INFO    ] 2026-06-19 17:06:20
[2026-06-19 17:06:21,237.237 INFO    ] 2026-06-19 17:06:21
[2026-06-19 17:06:21,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:06:21,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:06:21,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:06:21,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:06:21,651.651 INFO    ] time= 19/06/2026 17:06:21
[2026-06-19 17:06:21,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:06:21,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:06:21,742.742 INFO    ] No existing commands found in stream
[2026-06-19 17:06:26,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:06:26,761.761 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 17:06:29,167.167 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:06:29,169.169 INFO    ] Checking for system updates...
[2026-06-19 17:06:29,206.206 INFO    ] 200
[2026-06-19 17:06:29,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:29,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:06:29,263.263 INFO    ] No update needed
[2026-06-19 17:06:29,266.266 INFO    ] Checking for camera pi updates...
[2026-06-19 17:06:29,303.303 INFO    ] 200
[2026-06-19 17:06:29,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:29,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:06:29,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:06:29,394.394 INFO    ] No camera update needed
[2026-06-19 17:06:29,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:06:29,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:06:29,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:06:29,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:06:31,449.449 INFO    ] ================================================
[2026-06-19 17:06:31,465.465 INFO    ] Launching Daemon at Fri Jun 19 17:06:31 IST 2026
[2026-06-19 17:06:31,477.477 INFO    ] ================================================
[2026-06-19 17:06:32,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:06:32
[2026-06-19 17:06:32,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:06:33,036.036 INFO    ] Initializing speech engine...
[2026-06-19 17:06:33,043.043 INFO    ] 2026-06-19 17:06:33
[2026-06-19 17:06:33,368.368 INFO    ] 2026-06-19 17:06:33
[2026-06-19 17:06:33,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:06:33,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:06:33,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:06:33,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:06:33,925.925 INFO    ] time= 19/06/2026 17:06:33
[2026-06-19 17:06:33,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:06:33,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:06:34,114.114 INFO    ] No existing commands found in stream
[2026-06-19 17:06:39,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:06:39,148.148 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 17:06:40,711.711 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:06:40,714.714 INFO    ] Checking for system updates...
[2026-06-19 17:06:40,750.750 INFO    ] 200
[2026-06-19 17:06:40,752.752 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:40,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:06:40,807.807 INFO    ] No update needed
[2026-06-19 17:06:40,810.810 INFO    ] Checking for camera pi updates...
[2026-06-19 17:06:40,844.844 INFO    ] 200
[2026-06-19 17:06:40,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:40,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:06:40,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:06:40,941.941 INFO    ] No camera update needed
[2026-06-19 17:06:40,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:06:40,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:06:40,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:06:40,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:06:43,996.996 INFO    ] ================================================
[2026-06-19 17:06:43,011.011 INFO    ] Launching Daemon at Fri Jun 19 17:06:43 IST 2026
[2026-06-19 17:06:43,022.022 INFO    ] ================================================
[2026-06-19 17:06:43,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:06:43
[2026-06-19 17:06:44,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:06:44,444.444 INFO    ] Initializing speech engine...
[2026-06-19 17:06:44,460.460 INFO    ] 2026-06-19 17:06:44
[2026-06-19 17:06:44,715.715 INFO    ] 2026-06-19 17:06:44
[2026-06-19 17:06:44,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:06:44,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:06:45,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:06:45,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:06:45,177.177 INFO    ] time= 19/06/2026 17:06:45
[2026-06-19 17:06:45,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:06:45,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:06:45,407.407 INFO    ] No existing commands found in stream
[2026-06-19 17:06:50,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:06:50,427.427 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 17:06:52,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:06:52,094.094 INFO    ] Checking for system updates...
[2026-06-19 17:06:52,131.131 INFO    ] 200
[2026-06-19 17:06:52,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:52,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:06:52,189.189 INFO    ] No update needed
[2026-06-19 17:06:52,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 17:06:52,225.225 INFO    ] 200
[2026-06-19 17:06:52,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:06:52,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:06:52,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:06:52,327.327 INFO    ] No camera update needed
[2026-06-19 17:06:52,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:06:52,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:06:52,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:06:52,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:06:54,385.385 INFO    ] ================================================
[2026-06-19 17:06:54,401.401 INFO    ] Launching Daemon at Fri Jun 19 17:06:54 IST 2026
[2026-06-19 17:06:54,412.412 INFO    ] ================================================
[2026-06-19 17:06:54,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:06:54
[2026-06-19 17:06:55,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:06:55,807.807 INFO    ] Initializing speech engine...
[2026-06-19 17:06:55,815.815 INFO    ] 2026-06-19 17:06:55
[2026-06-19 17:06:56,088.088 INFO    ] 2026-06-19 17:06:56
[2026-06-19 17:06:56,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:06:56,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:06:56,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:06:56,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:06:56,465.465 INFO    ] time= 19/06/2026 17:06:56
[2026-06-19 17:06:56,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:06:56,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:06:56,649.649 INFO    ] No existing commands found in stream
[2026-06-19 17:07:01,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:07:01,680.680 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 17:07:03,613.613 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:07:03,616.616 INFO    ] Checking for system updates...
[2026-06-19 17:07:03,672.672 INFO    ] 200
[2026-06-19 17:07:03,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:03,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:07:03,740.740 INFO    ] No update needed
[2026-06-19 17:07:03,742.742 INFO    ] Checking for camera pi updates...
[2026-06-19 17:07:03,780.780 INFO    ] 200
[2026-06-19 17:07:03,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:03,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:07:03,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:07:03,870.870 INFO    ] No camera update needed
[2026-06-19 17:07:03,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:07:03,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:07:03,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:07:03,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:07:05,926.926 INFO    ] ================================================
[2026-06-19 17:07:05,942.942 INFO    ] Launching Daemon at Fri Jun 19 17:07:05 IST 2026
[2026-06-19 17:07:05,957.957 INFO    ] ================================================
[2026-06-19 17:07:06,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:07:06
[2026-06-19 17:07:07,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:07:07,491.491 INFO    ] Initializing speech engine...
[2026-06-19 17:07:07,510.510 INFO    ] 2026-06-19 17:07:07
[2026-06-19 17:07:07,825.825 INFO    ] 2026-06-19 17:07:07
[2026-06-19 17:07:07,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:07:08,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:07:08,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:07:08,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:07:08,337.337 INFO    ] time= 19/06/2026 17:07:08
[2026-06-19 17:07:08,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:07:08,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:07:08,565.565 INFO    ] No existing commands found in stream
[2026-06-19 17:07:13,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:07:13,606.606 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 17:07:15,463.463 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:07:15,466.466 INFO    ] Checking for system updates...
[2026-06-19 17:07:15,504.504 INFO    ] 200
[2026-06-19 17:07:15,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:15,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:07:15,565.565 INFO    ] No update needed
[2026-06-19 17:07:15,568.568 INFO    ] Checking for camera pi updates...
[2026-06-19 17:07:15,607.607 INFO    ] 200
[2026-06-19 17:07:15,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:15,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:07:15,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:07:15,707.707 INFO    ] No camera update needed
[2026-06-19 17:07:15,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:07:15,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:07:15,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:07:15,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:07:17,765.765 INFO    ] ================================================
[2026-06-19 17:07:17,781.781 INFO    ] Launching Daemon at Fri Jun 19 17:07:17 IST 2026
[2026-06-19 17:07:17,792.792 INFO    ] ================================================
[2026-06-19 17:07:18,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:07:18
[2026-06-19 17:07:18,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:07:19,212.212 INFO    ] Initializing speech engine...
[2026-06-19 17:07:19,221.221 INFO    ] 2026-06-19 17:07:19
[2026-06-19 17:07:19,466.466 INFO    ] 2026-06-19 17:07:19
[2026-06-19 17:07:19,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:07:19,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:07:19,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:07:19,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:07:19,840.840 INFO    ] time= 19/06/2026 17:07:19
[2026-06-19 17:07:19,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:07:19,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:07:20,035.035 INFO    ] No existing commands found in stream
[2026-06-19 17:07:25,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:07:25,055.055 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 17:07:28,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:07:28,298.298 INFO    ] Checking for system updates...
[2026-06-19 17:07:28,335.335 INFO    ] 200
[2026-06-19 17:07:28,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:28,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:07:28,392.392 INFO    ] No update needed
[2026-06-19 17:07:28,394.394 INFO    ] Checking for camera pi updates...
[2026-06-19 17:07:28,430.430 INFO    ] 200
[2026-06-19 17:07:28,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:28,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:07:28,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:07:28,525.525 INFO    ] No camera update needed
[2026-06-19 17:07:28,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:07:28,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:07:28,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:07:28,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:07:30,585.585 INFO    ] ================================================
[2026-06-19 17:07:30,601.601 INFO    ] Launching Daemon at Fri Jun 19 17:07:30 IST 2026
[2026-06-19 17:07:30,613.613 INFO    ] ================================================
[2026-06-19 17:07:31,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:07:31
[2026-06-19 17:07:31,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:07:32,234.234 INFO    ] Initializing speech engine...
[2026-06-19 17:07:32,240.240 INFO    ] 2026-06-19 17:07:32
[2026-06-19 17:07:32,559.559 INFO    ] 2026-06-19 17:07:32
[2026-06-19 17:07:32,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:07:32,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:07:32,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:07:32,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:07:32,984.984 INFO    ] time= 19/06/2026 17:07:32
[2026-06-19 17:07:33,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:07:33,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:07:33,130.130 INFO    ] No existing commands found in stream
[2026-06-19 17:07:38,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:07:38,147.147 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 17:07:39,030.030 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:07:39,033.033 INFO    ] Checking for system updates...
[2026-06-19 17:07:39,070.070 INFO    ] 200
[2026-06-19 17:07:39,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:39,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:07:39,131.131 INFO    ] No update needed
[2026-06-19 17:07:39,133.133 INFO    ] Checking for camera pi updates...
[2026-06-19 17:07:39,169.169 INFO    ] 200
[2026-06-19 17:07:39,172.172 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:39,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:07:39,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:07:39,260.260 INFO    ] No camera update needed
[2026-06-19 17:07:39,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:07:39,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:07:39,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:07:39,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:07:41,320.320 INFO    ] ================================================
[2026-06-19 17:07:41,335.335 INFO    ] Launching Daemon at Fri Jun 19 17:07:41 IST 2026
[2026-06-19 17:07:41,346.346 INFO    ] ================================================
[2026-06-19 17:07:41,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:07:41
[2026-06-19 17:07:42,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:07:42,909.909 INFO    ] Initializing speech engine...
[2026-06-19 17:07:42,915.915 INFO    ] 2026-06-19 17:07:42
[2026-06-19 17:07:43,202.202 INFO    ] 2026-06-19 17:07:43
[2026-06-19 17:07:43,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:07:43,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:07:43,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:07:43,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:07:43,753.753 INFO    ] time= 19/06/2026 17:07:43
[2026-06-19 17:07:43,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:07:43,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:07:43,898.898 INFO    ] No existing commands found in stream
[2026-06-19 17:07:48,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:07:48,926.926 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 17:07:51,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:07:51,549.549 INFO    ] Checking for system updates...
[2026-06-19 17:07:51,587.587 INFO    ] 200
[2026-06-19 17:07:51,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:51,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:07:51,650.650 INFO    ] No update needed
[2026-06-19 17:07:51,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 17:07:51,689.689 INFO    ] 200
[2026-06-19 17:07:51,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:07:51,740.740 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:07:51,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:07:51,796.796 INFO    ] No camera update needed
[2026-06-19 17:07:51,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:07:51,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:07:51,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:07:51,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:07:53,856.856 INFO    ] ================================================
[2026-06-19 17:07:53,870.870 INFO    ] Launching Daemon at Fri Jun 19 17:07:53 IST 2026
[2026-06-19 17:07:53,882.882 INFO    ] ================================================
[2026-06-19 17:07:54,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:07:54
[2026-06-19 17:07:55,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:07:55,289.289 INFO    ] Initializing speech engine...
[2026-06-19 17:07:55,311.311 INFO    ] 2026-06-19 17:07:55
[2026-06-19 17:07:55,567.567 INFO    ] 2026-06-19 17:07:55
[2026-06-19 17:07:55,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:07:55,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:07:55,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:07:56,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:07:56,079.079 INFO    ] time= 19/06/2026 17:07:56
[2026-06-19 17:07:56,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:07:56,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:07:56,280.280 INFO    ] No existing commands found in stream
[2026-06-19 17:08:01,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:08:01,309.309 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 17:08:05,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:08:05,465.465 INFO    ] Checking for system updates...
[2026-06-19 17:08:05,502.502 INFO    ] 200
[2026-06-19 17:08:05,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:05,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:08:05,568.568 INFO    ] No update needed
[2026-06-19 17:08:05,570.570 INFO    ] Checking for camera pi updates...
[2026-06-19 17:08:05,604.604 INFO    ] 200
[2026-06-19 17:08:05,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:05,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:08:05,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:08:05,705.705 INFO    ] No camera update needed
[2026-06-19 17:08:05,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:08:05,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:08:05,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:08:05,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:08:07,763.763 INFO    ] ================================================
[2026-06-19 17:08:07,778.778 INFO    ] Launching Daemon at Fri Jun 19 17:08:07 IST 2026
[2026-06-19 17:08:07,788.788 INFO    ] ================================================
[2026-06-19 17:08:08,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:08:08
[2026-06-19 17:08:08,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:08:09,209.209 INFO    ] Initializing speech engine...
[2026-06-19 17:08:09,219.219 INFO    ] 2026-06-19 17:08:09
[2026-06-19 17:08:09,518.518 INFO    ] 2026-06-19 17:08:09
[2026-06-19 17:08:09,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:08:09,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:08:09,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:08:09,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:08:09,956.956 INFO    ] time= 19/06/2026 17:08:09
[2026-06-19 17:08:09,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:08:10,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:08:10,124.124 INFO    ] No existing commands found in stream
[2026-06-19 17:08:15,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:08:15,157.157 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 17:08:17,989.989 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:08:17,991.991 INFO    ] Checking for system updates...
[2026-06-19 17:08:18,028.028 INFO    ] 200
[2026-06-19 17:08:18,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:18,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:08:18,086.086 INFO    ] No update needed
[2026-06-19 17:08:18,088.088 INFO    ] Checking for camera pi updates...
[2026-06-19 17:08:18,123.123 INFO    ] 200
[2026-06-19 17:08:18,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:18,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:08:18,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:08:18,216.216 INFO    ] No camera update needed
[2026-06-19 17:08:18,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:08:18,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:08:18,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:08:18,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:08:20,271.271 INFO    ] ================================================
[2026-06-19 17:08:20,286.286 INFO    ] Launching Daemon at Fri Jun 19 17:08:20 IST 2026
[2026-06-19 17:08:20,297.297 INFO    ] ================================================
[2026-06-19 17:08:20,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:08:20
[2026-06-19 17:08:21,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:08:21,753.753 INFO    ] Initializing speech engine...
[2026-06-19 17:08:21,759.759 INFO    ] 2026-06-19 17:08:21
[2026-06-19 17:08:22,054.054 INFO    ] 2026-06-19 17:08:22
[2026-06-19 17:08:22,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:08:22,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:08:22,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:08:22,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:08:22,604.604 INFO    ] time= 19/06/2026 17:08:22
[2026-06-19 17:08:22,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:08:22,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:08:22,783.783 INFO    ] No existing commands found in stream
[2026-06-19 17:08:27,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:08:27,820.820 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 17:08:29,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:08:29,909.909 INFO    ] Checking for system updates...
[2026-06-19 17:08:29,945.945 INFO    ] 200
[2026-06-19 17:08:29,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:30,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:08:30,003.003 INFO    ] No update needed
[2026-06-19 17:08:30,006.006 INFO    ] Checking for camera pi updates...
[2026-06-19 17:08:30,040.040 INFO    ] 200
[2026-06-19 17:08:30,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:30,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:08:30,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:08:30,230.230 INFO    ] No camera update needed
[2026-06-19 17:08:30,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:08:30,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:08:30,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:08:30,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:08:32,287.287 INFO    ] ================================================
[2026-06-19 17:08:32,305.305 INFO    ] Launching Daemon at Fri Jun 19 17:08:32 IST 2026
[2026-06-19 17:08:32,317.317 INFO    ] ================================================
[2026-06-19 17:08:33,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:08:33
[2026-06-19 17:08:33,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:08:33,942.942 INFO    ] Initializing speech engine...
[2026-06-19 17:08:33,950.950 INFO    ] 2026-06-19 17:08:33
[2026-06-19 17:08:34,211.211 INFO    ] 2026-06-19 17:08:34
[2026-06-19 17:08:34,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:08:34,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:08:34,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:08:34,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:08:34,694.694 INFO    ] time= 19/06/2026 17:08:34
[2026-06-19 17:08:34,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:08:34,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:08:34,905.905 INFO    ] No existing commands found in stream
[2026-06-19 17:08:39,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:08:39,925.925 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 17:08:41,738.738 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:08:41,740.740 INFO    ] Checking for system updates...
[2026-06-19 17:08:41,777.777 INFO    ] 200
[2026-06-19 17:08:41,780.780 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:41,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:08:41,836.836 INFO    ] No update needed
[2026-06-19 17:08:41,839.839 INFO    ] Checking for camera pi updates...
[2026-06-19 17:08:41,877.877 INFO    ] 200
[2026-06-19 17:08:41,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:41,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:08:41,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:08:41,966.966 INFO    ] No camera update needed
[2026-06-19 17:08:41,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:08:41,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:08:41,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:08:41,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:08:44,023.023 INFO    ] ================================================
[2026-06-19 17:08:44,038.038 INFO    ] Launching Daemon at Fri Jun 19 17:08:44 IST 2026
[2026-06-19 17:08:44,049.049 INFO    ] ================================================
[2026-06-19 17:08:44,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:08:44
[2026-06-19 17:08:45,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:08:45,462.462 INFO    ] Initializing speech engine...
[2026-06-19 17:08:45,478.478 INFO    ] 2026-06-19 17:08:45
[2026-06-19 17:08:45,764.764 INFO    ] 2026-06-19 17:08:45
[2026-06-19 17:08:45,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:08:46,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:08:46,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:08:46,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:08:46,181.181 INFO    ] time= 19/06/2026 17:08:46
[2026-06-19 17:08:46,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:08:46,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:08:46,314.314 INFO    ] No existing commands found in stream
[2026-06-19 17:08:51,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:08:51,347.347 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 17:08:53,613.613 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:08:53,616.616 INFO    ] Checking for system updates...
[2026-06-19 17:08:53,651.651 INFO    ] 200
[2026-06-19 17:08:53,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:53,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:08:53,710.710 INFO    ] No update needed
[2026-06-19 17:08:53,712.712 INFO    ] Checking for camera pi updates...
[2026-06-19 17:08:53,746.746 INFO    ] 200
[2026-06-19 17:08:53,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:08:53,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:08:53,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:08:53,845.845 INFO    ] No camera update needed
[2026-06-19 17:08:53,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:08:53,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:08:53,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:08:53,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:08:55,900.900 INFO    ] ================================================
[2026-06-19 17:08:55,916.916 INFO    ] Launching Daemon at Fri Jun 19 17:08:55 IST 2026
[2026-06-19 17:08:55,926.926 INFO    ] ================================================
[2026-06-19 17:08:56,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:08:56
[2026-06-19 17:08:57,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:08:57,398.398 INFO    ] Initializing speech engine...
[2026-06-19 17:08:57,407.407 INFO    ] 2026-06-19 17:08:57
[2026-06-19 17:08:57,665.665 INFO    ] 2026-06-19 17:08:57
[2026-06-19 17:08:57,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:08:57,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:08:57,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:08:58,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:08:58,132.132 INFO    ] time= 19/06/2026 17:08:58
[2026-06-19 17:08:58,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:08:58,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:08:58,353.353 INFO    ] No existing commands found in stream
[2026-06-19 17:09:03,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:09:03,379.379 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 17:09:03,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:09:03,954.954 INFO    ] Checking for system updates...
[2026-06-19 17:09:03,991.991 INFO    ] 200
[2026-06-19 17:09:03,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:04,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:09:04,050.050 INFO    ] No update needed
[2026-06-19 17:09:04,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 17:09:04,102.102 INFO    ] 200
[2026-06-19 17:09:04,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:04,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:09:04,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:09:04,203.203 INFO    ] No camera update needed
[2026-06-19 17:09:04,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:09:04,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:09:04,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:09:04,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:09:06,263.263 INFO    ] ================================================
[2026-06-19 17:09:06,278.278 INFO    ] Launching Daemon at Fri Jun 19 17:09:06 IST 2026
[2026-06-19 17:09:06,289.289 INFO    ] ================================================
[2026-06-19 17:09:06,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:09:06
[2026-06-19 17:09:07,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:09:07,721.721 INFO    ] Initializing speech engine...
[2026-06-19 17:09:07,729.729 INFO    ] 2026-06-19 17:09:07
[2026-06-19 17:09:08,027.027 INFO    ] 2026-06-19 17:09:07
[2026-06-19 17:09:08,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:09:08,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:09:08,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:09:08,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:09:08,447.447 INFO    ] time= 19/06/2026 17:09:08
[2026-06-19 17:09:08,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:09:08,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:09:08,536.536 INFO    ] No existing commands found in stream
[2026-06-19 17:09:13,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:09:13,551.551 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 17:09:16,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:09:16,028.028 INFO    ] Checking for system updates...
[2026-06-19 17:09:16,072.072 INFO    ] 200
[2026-06-19 17:09:16,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:16,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:09:16,142.142 INFO    ] No update needed
[2026-06-19 17:09:16,145.145 INFO    ] Checking for camera pi updates...
[2026-06-19 17:09:16,181.181 INFO    ] 200
[2026-06-19 17:09:16,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:16,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:09:16,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:09:16,282.282 INFO    ] No camera update needed
[2026-06-19 17:09:16,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:09:16,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:09:16,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:09:16,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:09:18,340.340 INFO    ] ================================================
[2026-06-19 17:09:18,355.355 INFO    ] Launching Daemon at Fri Jun 19 17:09:18 IST 2026
[2026-06-19 17:09:18,367.367 INFO    ] ================================================
[2026-06-19 17:09:18,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:09:18
[2026-06-19 17:09:19,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:09:19,807.807 INFO    ] Initializing speech engine...
[2026-06-19 17:09:19,815.815 INFO    ] 2026-06-19 17:09:19
[2026-06-19 17:09:20,116.116 INFO    ] 2026-06-19 17:09:20
[2026-06-19 17:09:20,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:09:20,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:09:20,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:09:20,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:09:20,538.538 INFO    ] time= 19/06/2026 17:09:20
[2026-06-19 17:09:20,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:09:20,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:09:20,628.628 INFO    ] No existing commands found in stream
[2026-06-19 17:09:25,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:09:25,642.642 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 17:09:28,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:09:28,356.356 INFO    ] Checking for system updates...
[2026-06-19 17:09:28,396.396 INFO    ] 200
[2026-06-19 17:09:28,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:28,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:09:28,454.454 INFO    ] No update needed
[2026-06-19 17:09:28,457.457 INFO    ] Checking for camera pi updates...
[2026-06-19 17:09:28,491.491 INFO    ] 200
[2026-06-19 17:09:28,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:28,538.538 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:09:28,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:09:28,593.593 INFO    ] No camera update needed
[2026-06-19 17:09:28,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:09:28,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:09:28,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:09:28,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:09:30,648.648 INFO    ] ================================================
[2026-06-19 17:09:30,663.663 INFO    ] Launching Daemon at Fri Jun 19 17:09:30 IST 2026
[2026-06-19 17:09:30,674.674 INFO    ] ================================================
[2026-06-19 17:09:31,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:09:31
[2026-06-19 17:09:31,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:09:32,175.175 INFO    ] Initializing speech engine...
[2026-06-19 17:09:32,185.185 INFO    ] 2026-06-19 17:09:32
[2026-06-19 17:09:32,444.444 INFO    ] 2026-06-19 17:09:32
[2026-06-19 17:09:32,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:09:32,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:09:32,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:09:32,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:09:32,954.954 INFO    ] time= 19/06/2026 17:09:32
[2026-06-19 17:09:33,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:09:33,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:09:33,219.219 INFO    ] No existing commands found in stream
[2026-06-19 17:09:38,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:09:38,243.243 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 17:09:42,462.462 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:09:42,464.464 INFO    ] Checking for system updates...
[2026-06-19 17:09:42,505.505 INFO    ] 200
[2026-06-19 17:09:42,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:42,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:09:42,570.570 INFO    ] No update needed
[2026-06-19 17:09:42,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 17:09:42,606.606 INFO    ] 200
[2026-06-19 17:09:42,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:42,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:09:42,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:09:42,698.698 INFO    ] No camera update needed
[2026-06-19 17:09:42,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:09:42,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:09:42,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:09:42,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:09:44,762.762 INFO    ] ================================================
[2026-06-19 17:09:44,778.778 INFO    ] Launching Daemon at Fri Jun 19 17:09:44 IST 2026
[2026-06-19 17:09:44,789.789 INFO    ] ================================================
[2026-06-19 17:09:45,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:09:45
[2026-06-19 17:09:45,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:09:46,208.208 INFO    ] Initializing speech engine...
[2026-06-19 17:09:46,223.223 INFO    ] 2026-06-19 17:09:46
[2026-06-19 17:09:46,512.512 INFO    ] 2026-06-19 17:09:46
[2026-06-19 17:09:46,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:09:46,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:09:46,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:09:46,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:09:46,940.940 INFO    ] time= 19/06/2026 17:09:46
[2026-06-19 17:09:46,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:09:46,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:09:47,095.095 INFO    ] No existing commands found in stream
[2026-06-19 17:09:52,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:09:52,122.122 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 17:09:54,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:09:54,068.068 INFO    ] Checking for system updates...
[2026-06-19 17:09:54,104.104 INFO    ] 200
[2026-06-19 17:09:54,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:54,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:09:54,163.163 INFO    ] No update needed
[2026-06-19 17:09:54,166.166 INFO    ] Checking for camera pi updates...
[2026-06-19 17:09:54,199.199 INFO    ] 200
[2026-06-19 17:09:54,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:09:54,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:09:54,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:09:54,281.281 INFO    ] No camera update needed
[2026-06-19 17:09:54,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:09:54,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:09:54,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:09:54,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:09:56,343.343 INFO    ] ================================================
[2026-06-19 17:09:56,358.358 INFO    ] Launching Daemon at Fri Jun 19 17:09:56 IST 2026
[2026-06-19 17:09:56,368.368 INFO    ] ================================================
[2026-06-19 17:09:56,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:09:56
[2026-06-19 17:09:57,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:09:57,796.796 INFO    ] Initializing speech engine...
[2026-06-19 17:09:57,803.803 INFO    ] 2026-06-19 17:09:57
[2026-06-19 17:09:58,056.056 INFO    ] 2026-06-19 17:09:58
[2026-06-19 17:09:58,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:09:58,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:09:58,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:09:58,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:09:58,543.543 INFO    ] time= 19/06/2026 17:09:58
[2026-06-19 17:09:58,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:09:58,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:09:58,742.742 INFO    ] No existing commands found in stream
[2026-06-19 17:10:03,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:10:03,772.772 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 17:10:06,770.770 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:10:06,773.773 INFO    ] Checking for system updates...
[2026-06-19 17:10:06,811.811 INFO    ] 200
[2026-06-19 17:10:06,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:06,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:10:06,870.870 INFO    ] No update needed
[2026-06-19 17:10:06,873.873 INFO    ] Checking for camera pi updates...
[2026-06-19 17:10:06,912.912 INFO    ] 200
[2026-06-19 17:10:06,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:06,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:10:07,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:10:07,014.014 INFO    ] No camera update needed
[2026-06-19 17:10:07,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:10:07,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:10:07,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:10:07,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:10:09,072.072 INFO    ] ================================================
[2026-06-19 17:10:09,087.087 INFO    ] Launching Daemon at Fri Jun 19 17:10:09 IST 2026
[2026-06-19 17:10:09,098.098 INFO    ] ================================================
[2026-06-19 17:10:09,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:10:09
[2026-06-19 17:10:10,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:10:10,549.549 INFO    ] Initializing speech engine...
[2026-06-19 17:10:10,562.562 INFO    ] 2026-06-19 17:10:10
[2026-06-19 17:10:10,830.830 INFO    ] 2026-06-19 17:10:10
[2026-06-19 17:10:10,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:10:11,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:10:11,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:10:11,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:10:11,316.316 INFO    ] time= 19/06/2026 17:10:11
[2026-06-19 17:10:11,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:10:11,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:10:11,551.551 INFO    ] No existing commands found in stream
[2026-06-19 17:10:16,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:10:16,577.577 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 17:10:19,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:10:19,747.747 INFO    ] Checking for system updates...
[2026-06-19 17:10:19,783.783 INFO    ] 200
[2026-06-19 17:10:19,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:19,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:10:19,842.842 INFO    ] No update needed
[2026-06-19 17:10:19,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 17:10:19,879.879 INFO    ] 200
[2026-06-19 17:10:19,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:19,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:10:19,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:10:19,969.969 INFO    ] No camera update needed
[2026-06-19 17:10:19,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:10:19,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:10:19,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:10:19,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:10:22,027.027 INFO    ] ================================================
[2026-06-19 17:10:22,042.042 INFO    ] Launching Daemon at Fri Jun 19 17:10:22 IST 2026
[2026-06-19 17:10:22,053.053 INFO    ] ================================================
[2026-06-19 17:10:22,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:10:22
[2026-06-19 17:10:23,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:10:23,501.501 INFO    ] Initializing speech engine...
[2026-06-19 17:10:23,507.507 INFO    ] 2026-06-19 17:10:23
[2026-06-19 17:10:23,809.809 INFO    ] 2026-06-19 17:10:23
[2026-06-19 17:10:23,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:10:24,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:10:24,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:10:24,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:10:24,211.211 INFO    ] time= 19/06/2026 17:10:24
[2026-06-19 17:10:24,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:10:24,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:10:24,320.320 INFO    ] No existing commands found in stream
[2026-06-19 17:10:29,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:10:29,336.336 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 17:10:31,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:10:31,631.631 INFO    ] Checking for system updates...
[2026-06-19 17:10:31,667.667 INFO    ] 200
[2026-06-19 17:10:31,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:31,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:10:31,733.733 INFO    ] No update needed
[2026-06-19 17:10:31,735.735 INFO    ] Checking for camera pi updates...
[2026-06-19 17:10:31,770.770 INFO    ] 200
[2026-06-19 17:10:31,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:31,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:10:31,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:10:31,987.987 INFO    ] No camera update needed
[2026-06-19 17:10:31,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:10:31,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:10:31,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:10:32,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:10:34,050.050 INFO    ] ================================================
[2026-06-19 17:10:34,065.065 INFO    ] Launching Daemon at Fri Jun 19 17:10:34 IST 2026
[2026-06-19 17:10:34,076.076 INFO    ] ================================================
[2026-06-19 17:10:34,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:10:34
[2026-06-19 17:10:35,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:10:35,542.542 INFO    ] Initializing speech engine...
[2026-06-19 17:10:35,559.559 INFO    ] 2026-06-19 17:10:35
[2026-06-19 17:10:35,849.849 INFO    ] 2026-06-19 17:10:35
[2026-06-19 17:10:35,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:10:36,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:10:36,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:10:36,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:10:36,276.276 INFO    ] time= 19/06/2026 17:10:36
[2026-06-19 17:10:36,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:10:36,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:10:36,364.364 INFO    ] No existing commands found in stream
[2026-06-19 17:10:41,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:10:41,398.398 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 17:10:44,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:10:44,320.320 INFO    ] Checking for system updates...
[2026-06-19 17:10:44,355.355 INFO    ] 200
[2026-06-19 17:10:44,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:44,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:10:44,413.413 INFO    ] No update needed
[2026-06-19 17:10:44,416.416 INFO    ] Checking for camera pi updates...
[2026-06-19 17:10:44,449.449 INFO    ] 200
[2026-06-19 17:10:44,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:44,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:10:44,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:10:44,554.554 INFO    ] No camera update needed
[2026-06-19 17:10:44,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:10:44,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:10:44,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:10:44,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:10:46,611.611 INFO    ] ================================================
[2026-06-19 17:10:46,626.626 INFO    ] Launching Daemon at Fri Jun 19 17:10:46 IST 2026
[2026-06-19 17:10:46,637.637 INFO    ] ================================================
[2026-06-19 17:10:47,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:10:47
[2026-06-19 17:10:47,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:10:48,089.089 INFO    ] Initializing speech engine...
[2026-06-19 17:10:48,099.099 INFO    ] 2026-06-19 17:10:48
[2026-06-19 17:10:48,397.397 INFO    ] 2026-06-19 17:10:48
[2026-06-19 17:10:48,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:10:48,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:10:48,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:10:48,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:10:48,823.823 INFO    ] time= 19/06/2026 17:10:48
[2026-06-19 17:10:48,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:10:48,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:10:48,910.910 INFO    ] No existing commands found in stream
[2026-06-19 17:10:53,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:10:53,926.926 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-19 17:10:54,983.983 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:10:54,986.986 INFO    ] Checking for system updates...
[2026-06-19 17:10:55,022.022 INFO    ] 200
[2026-06-19 17:10:55,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:55,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:10:55,079.079 INFO    ] No update needed
[2026-06-19 17:10:55,082.082 INFO    ] Checking for camera pi updates...
[2026-06-19 17:10:55,119.119 INFO    ] 200
[2026-06-19 17:10:55,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:10:55,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:10:55,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:10:55,217.217 INFO    ] No camera update needed
[2026-06-19 17:10:55,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:10:55,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:10:55,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:10:55,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:10:57,273.273 INFO    ] ================================================
[2026-06-19 17:10:57,288.288 INFO    ] Launching Daemon at Fri Jun 19 17:10:57 IST 2026
[2026-06-19 17:10:57,302.302 INFO    ] ================================================
[2026-06-19 17:10:57,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:10:57
[2026-06-19 17:10:58,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:10:58,951.951 INFO    ] Initializing speech engine...
[2026-06-19 17:10:58,963.963 INFO    ] 2026-06-19 17:10:58
[2026-06-19 17:10:59,275.275 INFO    ] 2026-06-19 17:10:59
[2026-06-19 17:10:59,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:10:59,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:10:59,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:10:59,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:10:59,786.786 INFO    ] time= 19/06/2026 17:10:59
[2026-06-19 17:10:59,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:10:59,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:10:59,966.966 INFO    ] No existing commands found in stream
[2026-06-19 17:11:05,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:11:05,006.006 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 17:11:08,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:11:08,049.049 INFO    ] Checking for system updates...
[2026-06-19 17:11:08,089.089 INFO    ] 200
[2026-06-19 17:11:08,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:08,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:11:08,155.155 INFO    ] No update needed
[2026-06-19 17:11:08,158.158 INFO    ] Checking for camera pi updates...
[2026-06-19 17:11:08,191.191 INFO    ] 200
[2026-06-19 17:11:08,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:08,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:11:08,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:11:08,287.287 INFO    ] No camera update needed
[2026-06-19 17:11:08,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:11:08,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:11:08,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:11:08,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:11:10,342.342 INFO    ] ================================================
[2026-06-19 17:11:10,357.357 INFO    ] Launching Daemon at Fri Jun 19 17:11:10 IST 2026
[2026-06-19 17:11:10,368.368 INFO    ] ================================================
[2026-06-19 17:11:10,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:11:10
[2026-06-19 17:11:11,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:11:11,809.809 INFO    ] Initializing speech engine...
[2026-06-19 17:11:11,826.826 INFO    ] 2026-06-19 17:11:11
[2026-06-19 17:11:12,079.079 INFO    ] 2026-06-19 17:11:12
[2026-06-19 17:11:12,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:11:12,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:11:12,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:11:12,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:11:12,571.571 INFO    ] time= 19/06/2026 17:11:12
[2026-06-19 17:11:12,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:11:12,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:11:12,790.790 INFO    ] No existing commands found in stream
[2026-06-19 17:11:17,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:11:17,806.806 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 17:11:18,652.652 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:11:18,655.655 INFO    ] Checking for system updates...
[2026-06-19 17:11:18,691.691 INFO    ] 200
[2026-06-19 17:11:18,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:18,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:11:18,749.749 INFO    ] No update needed
[2026-06-19 17:11:18,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 17:11:18,785.785 INFO    ] 200
[2026-06-19 17:11:18,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:18,828.828 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:11:18,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:11:18,877.877 INFO    ] No camera update needed
[2026-06-19 17:11:18,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:11:18,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:11:18,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:11:18,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:11:20,933.933 INFO    ] ================================================
[2026-06-19 17:11:20,949.949 INFO    ] Launching Daemon at Fri Jun 19 17:11:20 IST 2026
[2026-06-19 17:11:20,961.961 INFO    ] ================================================
[2026-06-19 17:11:21,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:11:21
[2026-06-19 17:11:22,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:11:22,360.360 INFO    ] Initializing speech engine...
[2026-06-19 17:11:22,367.367 INFO    ] 2026-06-19 17:11:22
[2026-06-19 17:11:22,656.656 INFO    ] 2026-06-19 17:11:22
[2026-06-19 17:11:22,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:11:22,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:11:22,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:11:23,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:11:23,060.060 INFO    ] time= 19/06/2026 17:11:23
[2026-06-19 17:11:23,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:11:23,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:11:23,237.237 INFO    ] No existing commands found in stream
[2026-06-19 17:11:28,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:11:28,270.270 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 17:11:31,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:11:31,349.349 INFO    ] Checking for system updates...
[2026-06-19 17:11:31,385.385 INFO    ] 200
[2026-06-19 17:11:31,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:31,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:11:31,447.447 INFO    ] No update needed
[2026-06-19 17:11:31,449.449 INFO    ] Checking for camera pi updates...
[2026-06-19 17:11:31,483.483 INFO    ] 200
[2026-06-19 17:11:31,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:31,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:11:31,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:11:31,588.588 INFO    ] No camera update needed
[2026-06-19 17:11:31,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:11:31,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:11:31,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:11:31,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:11:33,644.644 INFO    ] ================================================
[2026-06-19 17:11:33,659.659 INFO    ] Launching Daemon at Fri Jun 19 17:11:33 IST 2026
[2026-06-19 17:11:33,670.670 INFO    ] ================================================
[2026-06-19 17:11:34,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:11:34
[2026-06-19 17:11:34,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:11:35,074.074 INFO    ] Initializing speech engine...
[2026-06-19 17:11:35,089.089 INFO    ] 2026-06-19 17:11:35
[2026-06-19 17:11:35,356.356 INFO    ] 2026-06-19 17:11:35
[2026-06-19 17:11:35,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:11:35,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:11:35,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:11:35,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:11:35,739.739 INFO    ] time= 19/06/2026 17:11:35
[2026-06-19 17:11:35,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:11:35,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:11:35,939.939 INFO    ] No existing commands found in stream
[2026-06-19 17:11:40,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:11:40,953.953 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 17:11:43,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:11:43,794.794 INFO    ] Checking for system updates...
[2026-06-19 17:11:43,831.831 INFO    ] 200
[2026-06-19 17:11:43,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:43,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:11:43,893.893 INFO    ] No update needed
[2026-06-19 17:11:43,896.896 INFO    ] Checking for camera pi updates...
[2026-06-19 17:11:43,930.930 INFO    ] 200
[2026-06-19 17:11:43,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:43,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:11:44,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:11:44,023.023 INFO    ] No camera update needed
[2026-06-19 17:11:44,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:11:44,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:11:44,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:11:44,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:11:46,080.080 INFO    ] ================================================
[2026-06-19 17:11:46,096.096 INFO    ] Launching Daemon at Fri Jun 19 17:11:46 IST 2026
[2026-06-19 17:11:46,107.107 INFO    ] ================================================
[2026-06-19 17:11:46,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:11:46
[2026-06-19 17:11:47,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:11:47,537.537 INFO    ] Initializing speech engine...
[2026-06-19 17:11:47,546.546 INFO    ] 2026-06-19 17:11:47
[2026-06-19 17:11:47,807.807 INFO    ] 2026-06-19 17:11:47
[2026-06-19 17:11:47,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:11:48,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:11:48,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:11:48,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:11:48,279.279 INFO    ] time= 19/06/2026 17:11:48
[2026-06-19 17:11:48,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:11:48,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:11:48,517.517 INFO    ] No existing commands found in stream
[2026-06-19 17:11:53,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:11:53,538.538 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 17:11:57,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:11:57,897.897 INFO    ] Checking for system updates...
[2026-06-19 17:11:57,933.933 INFO    ] 200
[2026-06-19 17:11:57,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:57,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:11:57,990.990 INFO    ] No update needed
[2026-06-19 17:11:57,993.993 INFO    ] Checking for camera pi updates...
[2026-06-19 17:11:58,027.027 INFO    ] 200
[2026-06-19 17:11:58,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:11:58,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:11:58,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:11:58,121.121 INFO    ] No camera update needed
[2026-06-19 17:11:58,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:11:58,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:11:58,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:11:58,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:12:00,178.178 INFO    ] ================================================
[2026-06-19 17:12:00,193.193 INFO    ] Launching Daemon at Fri Jun 19 17:12:00 IST 2026
[2026-06-19 17:12:00,204.204 INFO    ] ================================================
[2026-06-19 17:12:00,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:12:00
[2026-06-19 17:12:01,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:12:01,998.998 INFO    ] Initializing speech engine...
[2026-06-19 17:12:02,003.003 INFO    ] 2026-06-19 17:12:02
[2026-06-19 17:12:02,400.400 INFO    ] 2026-06-19 17:12:02
[2026-06-19 17:12:02,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:12:02,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:12:02,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:12:02,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:12:02,935.935 INFO    ] time= 19/06/2026 17:12:02
[2026-06-19 17:12:02,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:12:02,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:12:03,045.045 INFO    ] No existing commands found in stream
[2026-06-19 17:12:08,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:12:08,060.060 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 17:12:10,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:12:10,234.234 INFO    ] Checking for system updates...
[2026-06-19 17:12:10,279.279 INFO    ] 200
[2026-06-19 17:12:10,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:10,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:12:10,336.336 INFO    ] No update needed
[2026-06-19 17:12:10,339.339 INFO    ] Checking for camera pi updates...
[2026-06-19 17:12:10,373.373 INFO    ] 200
[2026-06-19 17:12:10,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:10,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:12:10,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:12:10,466.466 INFO    ] No camera update needed
[2026-06-19 17:12:10,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:12:10,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:12:10,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:12:10,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:12:12,521.521 INFO    ] ================================================
[2026-06-19 17:12:12,536.536 INFO    ] Launching Daemon at Fri Jun 19 17:12:12 IST 2026
[2026-06-19 17:12:12,547.547 INFO    ] ================================================
[2026-06-19 17:12:13,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:12:13
[2026-06-19 17:12:13,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:12:14,081.081 INFO    ] Initializing speech engine...
[2026-06-19 17:12:14,089.089 INFO    ] 2026-06-19 17:12:14
[2026-06-19 17:12:14,386.386 INFO    ] 2026-06-19 17:12:14
[2026-06-19 17:12:14,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:12:14,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:12:14,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:12:14,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:12:14,873.873 INFO    ] time= 19/06/2026 17:12:14
[2026-06-19 17:12:14,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:12:14,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:12:15,083.083 INFO    ] No existing commands found in stream
[2026-06-19 17:12:20,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:12:20,097.097 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 17:12:24,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:12:24,504.504 INFO    ] Checking for system updates...
[2026-06-19 17:12:24,544.544 INFO    ] 200
[2026-06-19 17:12:24,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:24,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:12:24,603.603 INFO    ] No update needed
[2026-06-19 17:12:24,605.605 INFO    ] Checking for camera pi updates...
[2026-06-19 17:12:24,642.642 INFO    ] 200
[2026-06-19 17:12:24,645.645 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:24,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:12:24,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:12:24,736.736 INFO    ] No camera update needed
[2026-06-19 17:12:24,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:12:24,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:12:24,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:12:24,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:12:26,793.793 INFO    ] ================================================
[2026-06-19 17:12:26,808.808 INFO    ] Launching Daemon at Fri Jun 19 17:12:26 IST 2026
[2026-06-19 17:12:26,819.819 INFO    ] ================================================
[2026-06-19 17:12:27,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:12:27
[2026-06-19 17:12:27,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:12:28,222.222 INFO    ] Initializing speech engine...
[2026-06-19 17:12:28,243.243 INFO    ] 2026-06-19 17:12:28
[2026-06-19 17:12:28,503.503 INFO    ] 2026-06-19 17:12:28
[2026-06-19 17:12:28,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:12:28,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:12:28,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:12:28,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:12:29,006.006 INFO    ] time= 19/06/2026 17:12:28
[2026-06-19 17:12:29,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:12:29,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:12:29,217.217 INFO    ] No existing commands found in stream
[2026-06-19 17:12:34,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:12:34,245.245 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 17:12:35,564.564 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:12:35,567.567 INFO    ] Checking for system updates...
[2026-06-19 17:12:35,607.607 INFO    ] 200
[2026-06-19 17:12:35,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:35,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:12:35,666.666 INFO    ] No update needed
[2026-06-19 17:12:35,669.669 INFO    ] Checking for camera pi updates...
[2026-06-19 17:12:35,707.707 INFO    ] 200
[2026-06-19 17:12:35,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:35,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:12:35,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:12:35,906.906 INFO    ] No camera update needed
[2026-06-19 17:12:35,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:12:35,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:12:35,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:12:35,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:12:37,967.967 INFO    ] ================================================
[2026-06-19 17:12:37,981.981 INFO    ] Launching Daemon at Fri Jun 19 17:12:37 IST 2026
[2026-06-19 17:12:37,992.992 INFO    ] ================================================
[2026-06-19 17:12:38,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:12:38
[2026-06-19 17:12:39,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:12:39,446.446 INFO    ] Initializing speech engine...
[2026-06-19 17:12:39,455.455 INFO    ] 2026-06-19 17:12:39
[2026-06-19 17:12:39,711.711 INFO    ] 2026-06-19 17:12:39
[2026-06-19 17:12:39,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:12:39,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:12:40,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:12:40,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:12:40,219.219 INFO    ] time= 19/06/2026 17:12:40
[2026-06-19 17:12:40,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:12:40,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:12:40,408.408 INFO    ] No existing commands found in stream
[2026-06-19 17:12:45,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:12:45,431.431 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 17:12:46,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:12:46,277.277 INFO    ] Checking for system updates...
[2026-06-19 17:12:46,313.313 INFO    ] 200
[2026-06-19 17:12:46,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:46,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:12:46,380.380 INFO    ] No update needed
[2026-06-19 17:12:46,382.382 INFO    ] Checking for camera pi updates...
[2026-06-19 17:12:46,420.420 INFO    ] 200
[2026-06-19 17:12:46,422.422 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:46,462.462 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:12:46,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:12:46,599.599 INFO    ] No camera update needed
[2026-06-19 17:12:46,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:12:46,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:12:46,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:12:46,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:12:48,656.656 INFO    ] ================================================
[2026-06-19 17:12:48,672.672 INFO    ] Launching Daemon at Fri Jun 19 17:12:48 IST 2026
[2026-06-19 17:12:48,683.683 INFO    ] ================================================
[2026-06-19 17:12:49,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:12:49
[2026-06-19 17:12:49,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:12:50,099.099 INFO    ] Initializing speech engine...
[2026-06-19 17:12:50,118.118 INFO    ] 2026-06-19 17:12:50
[2026-06-19 17:12:50,374.374 INFO    ] 2026-06-19 17:12:50
[2026-06-19 17:12:50,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:12:50,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:12:50,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:12:50,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:12:50,844.844 INFO    ] time= 19/06/2026 17:12:50
[2026-06-19 17:12:50,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:12:50,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:12:51,095.095 INFO    ] No existing commands found in stream
[2026-06-19 17:12:56,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:12:56,114.114 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 17:12:57,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:12:57,144.144 INFO    ] Checking for system updates...
[2026-06-19 17:12:57,184.184 INFO    ] 200
[2026-06-19 17:12:57,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:57,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:12:57,251.251 INFO    ] No update needed
[2026-06-19 17:12:57,254.254 INFO    ] Checking for camera pi updates...
[2026-06-19 17:12:57,289.289 INFO    ] 200
[2026-06-19 17:12:57,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:12:57,332.332 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:12:57,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:12:57,370.370 INFO    ] No camera update needed
[2026-06-19 17:12:57,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:12:57,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:12:57,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:12:57,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:12:59,430.430 INFO    ] ================================================
[2026-06-19 17:12:59,446.446 INFO    ] Launching Daemon at Fri Jun 19 17:12:59 IST 2026
[2026-06-19 17:12:59,457.457 INFO    ] ================================================
[2026-06-19 17:13:00,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:13:00
[2026-06-19 17:13:00,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:13:00,916.916 INFO    ] Initializing speech engine...
[2026-06-19 17:13:00,923.923 INFO    ] 2026-06-19 17:13:00
[2026-06-19 17:13:01,185.185 INFO    ] 2026-06-19 17:13:01
[2026-06-19 17:13:01,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:13:01,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:13:01,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:13:01,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:13:01,637.637 INFO    ] time= 19/06/2026 17:13:01
[2026-06-19 17:13:01,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:13:01,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:13:01,824.824 INFO    ] No existing commands found in stream
[2026-06-19 17:13:06,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:13:06,847.847 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 17:13:09,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:13:09,216.216 INFO    ] Checking for system updates...
[2026-06-19 17:13:09,253.253 INFO    ] 200
[2026-06-19 17:13:09,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:09,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:13:09,320.320 INFO    ] No update needed
[2026-06-19 17:13:09,323.323 INFO    ] Checking for camera pi updates...
[2026-06-19 17:13:09,361.361 INFO    ] 200
[2026-06-19 17:13:09,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:09,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:13:09,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:13:09,469.469 INFO    ] No camera update needed
[2026-06-19 17:13:09,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:13:09,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:13:09,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:13:09,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:13:11,528.528 INFO    ] ================================================
[2026-06-19 17:13:11,543.543 INFO    ] Launching Daemon at Fri Jun 19 17:13:11 IST 2026
[2026-06-19 17:13:11,554.554 INFO    ] ================================================
[2026-06-19 17:13:12,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:13:12
[2026-06-19 17:13:12,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:13:12,975.975 INFO    ] Initializing speech engine...
[2026-06-19 17:13:12,989.989 INFO    ] 2026-06-19 17:13:12
[2026-06-19 17:13:13,278.278 INFO    ] 2026-06-19 17:13:13
[2026-06-19 17:13:13,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:13:13,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:13:13,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:13:13,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:13:13,665.665 INFO    ] time= 19/06/2026 17:13:13
[2026-06-19 17:13:13,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:13:13,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:13:13,794.794 INFO    ] No existing commands found in stream
[2026-06-19 17:13:18,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:13:18,827.827 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 17:13:22,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:13:22,196.196 INFO    ] Checking for system updates...
[2026-06-19 17:13:22,233.233 INFO    ] 200
[2026-06-19 17:13:22,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:22,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:13:22,300.300 INFO    ] No update needed
[2026-06-19 17:13:22,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 17:13:22,338.338 INFO    ] 200
[2026-06-19 17:13:22,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:22,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:13:22,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:13:22,436.436 INFO    ] No camera update needed
[2026-06-19 17:13:22,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:13:22,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:13:22,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:13:22,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:13:24,499.499 INFO    ] ================================================
[2026-06-19 17:13:24,514.514 INFO    ] Launching Daemon at Fri Jun 19 17:13:24 IST 2026
[2026-06-19 17:13:24,526.526 INFO    ] ================================================
[2026-06-19 17:13:25,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:13:25
[2026-06-19 17:13:25,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:13:26,074.074 INFO    ] Initializing speech engine...
[2026-06-19 17:13:26,080.080 INFO    ] 2026-06-19 17:13:26
[2026-06-19 17:13:26,342.342 INFO    ] 2026-06-19 17:13:26
[2026-06-19 17:13:26,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:13:26,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:13:26,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:13:26,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:13:26,803.803 INFO    ] time= 19/06/2026 17:13:26
[2026-06-19 17:13:26,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:13:26,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:13:27,024.024 INFO    ] No existing commands found in stream
[2026-06-19 17:13:32,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:13:32,055.055 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 17:13:35,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:13:35,397.397 INFO    ] Checking for system updates...
[2026-06-19 17:13:35,433.433 INFO    ] 200
[2026-06-19 17:13:35,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:35,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:13:35,492.492 INFO    ] No update needed
[2026-06-19 17:13:35,494.494 INFO    ] Checking for camera pi updates...
[2026-06-19 17:13:35,532.532 INFO    ] 200
[2026-06-19 17:13:35,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:35,580.580 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:13:35,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:13:35,631.631 INFO    ] No camera update needed
[2026-06-19 17:13:35,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:13:35,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:13:35,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:13:35,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:13:37,689.689 INFO    ] ================================================
[2026-06-19 17:13:37,703.703 INFO    ] Launching Daemon at Fri Jun 19 17:13:37 IST 2026
[2026-06-19 17:13:37,714.714 INFO    ] ================================================
[2026-06-19 17:13:38,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:13:38
[2026-06-19 17:13:38,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:13:39,234.234 INFO    ] Initializing speech engine...
[2026-06-19 17:13:39,241.241 INFO    ] 2026-06-19 17:13:39
[2026-06-19 17:13:39,492.492 INFO    ] 2026-06-19 17:13:39
[2026-06-19 17:13:39,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:13:39,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:13:39,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:13:39,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:13:39,977.977 INFO    ] time= 19/06/2026 17:13:39
[2026-06-19 17:13:40,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:13:40,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:13:40,170.170 INFO    ] No existing commands found in stream
[2026-06-19 17:13:45,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:13:45,205.205 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 17:13:46,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:13:46,751.751 INFO    ] Checking for system updates...
[2026-06-19 17:13:46,787.787 INFO    ] 200
[2026-06-19 17:13:46,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:46,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:13:46,847.847 INFO    ] No update needed
[2026-06-19 17:13:46,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 17:13:46,883.883 INFO    ] 200
[2026-06-19 17:13:46,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:46,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:13:46,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:13:46,962.962 INFO    ] No camera update needed
[2026-06-19 17:13:46,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:13:46,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:13:46,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:13:46,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:13:49,018.018 INFO    ] ================================================
[2026-06-19 17:13:49,033.033 INFO    ] Launching Daemon at Fri Jun 19 17:13:49 IST 2026
[2026-06-19 17:13:49,043.043 INFO    ] ================================================
[2026-06-19 17:13:49,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:13:49
[2026-06-19 17:13:50,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:13:50,451.451 INFO    ] Initializing speech engine...
[2026-06-19 17:13:50,466.466 INFO    ] 2026-06-19 17:13:50
[2026-06-19 17:13:50,733.733 INFO    ] 2026-06-19 17:13:50
[2026-06-19 17:13:50,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:13:50,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:13:50,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:13:51,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:13:51,186.186 INFO    ] time= 19/06/2026 17:13:51
[2026-06-19 17:13:51,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:13:51,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:13:51,437.437 INFO    ] No existing commands found in stream
[2026-06-19 17:13:56,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:13:56,468.468 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 17:13:59,064.064 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:13:59,066.066 INFO    ] Checking for system updates...
[2026-06-19 17:13:59,106.106 INFO    ] 200
[2026-06-19 17:13:59,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:59,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:13:59,163.163 INFO    ] No update needed
[2026-06-19 17:13:59,166.166 INFO    ] Checking for camera pi updates...
[2026-06-19 17:13:59,199.199 INFO    ] 200
[2026-06-19 17:13:59,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:13:59,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:13:59,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:13:59,292.292 INFO    ] No camera update needed
[2026-06-19 17:13:59,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:13:59,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:13:59,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:13:59,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:14:01,346.346 INFO    ] ================================================
[2026-06-19 17:14:01,364.364 INFO    ] Launching Daemon at Fri Jun 19 17:14:01 IST 2026
[2026-06-19 17:14:01,375.375 INFO    ] ================================================
[2026-06-19 17:14:02,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:14:02
[2026-06-19 17:14:02,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:14:03,010.010 INFO    ] Initializing speech engine...
[2026-06-19 17:14:03,020.020 INFO    ] 2026-06-19 17:14:03
[2026-06-19 17:14:03,334.334 INFO    ] 2026-06-19 17:14:03
[2026-06-19 17:14:03,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:14:03,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:14:03,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:14:03,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:14:03,835.835 INFO    ] time= 19/06/2026 17:14:03
[2026-06-19 17:14:03,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:14:03,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:14:04,070.070 INFO    ] No existing commands found in stream
[2026-06-19 17:14:09,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:14:09,100.100 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 17:14:09,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:14:09,587.587 INFO    ] Checking for system updates...
[2026-06-19 17:14:09,623.623 INFO    ] 200
[2026-06-19 17:14:09,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:09,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:14:09,687.687 INFO    ] No update needed
[2026-06-19 17:14:09,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 17:14:09,727.727 INFO    ] 200
[2026-06-19 17:14:09,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:09,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:14:09,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:14:09,820.820 INFO    ] No camera update needed
[2026-06-19 17:14:09,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:14:09,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:14:09,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:14:09,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:14:11,876.876 INFO    ] ================================================
[2026-06-19 17:14:11,891.891 INFO    ] Launching Daemon at Fri Jun 19 17:14:11 IST 2026
[2026-06-19 17:14:11,901.901 INFO    ] ================================================
[2026-06-19 17:14:12,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:14:12
[2026-06-19 17:14:13,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:14:13,325.325 INFO    ] Initializing speech engine...
[2026-06-19 17:14:13,333.333 INFO    ] 2026-06-19 17:14:13
[2026-06-19 17:14:13,624.624 INFO    ] 2026-06-19 17:14:13
[2026-06-19 17:14:13,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:14:13,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:14:13,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:14:13,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:14:14,019.019 INFO    ] time= 19/06/2026 17:14:13
[2026-06-19 17:14:14,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:14:14,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:14:14,128.128 INFO    ] No existing commands found in stream
[2026-06-19 17:14:19,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:14:19,146.146 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 17:14:21,088.088 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:14:21,091.091 INFO    ] Checking for system updates...
[2026-06-19 17:14:21,130.130 INFO    ] 200
[2026-06-19 17:14:21,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:21,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:14:21,188.188 INFO    ] No update needed
[2026-06-19 17:14:21,190.190 INFO    ] Checking for camera pi updates...
[2026-06-19 17:14:21,228.228 INFO    ] 200
[2026-06-19 17:14:21,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:21,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:14:21,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:14:21,318.318 INFO    ] No camera update needed
[2026-06-19 17:14:21,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:14:21,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:14:21,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:14:21,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:14:23,372.372 INFO    ] ================================================
[2026-06-19 17:14:23,387.387 INFO    ] Launching Daemon at Fri Jun 19 17:14:23 IST 2026
[2026-06-19 17:14:23,398.398 INFO    ] ================================================
[2026-06-19 17:14:23,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:14:23
[2026-06-19 17:14:24,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:14:24,801.801 INFO    ] Initializing speech engine...
[2026-06-19 17:14:24,809.809 INFO    ] 2026-06-19 17:14:24
[2026-06-19 17:14:25,073.073 INFO    ] 2026-06-19 17:14:25
[2026-06-19 17:14:25,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:14:25,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:14:25,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:14:25,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:14:25,469.469 INFO    ] time= 19/06/2026 17:14:25
[2026-06-19 17:14:25,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:14:25,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:14:25,665.665 INFO    ] No existing commands found in stream
[2026-06-19 17:14:30,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:14:30,680.680 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 17:14:31,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:14:31,935.935 INFO    ] Checking for system updates...
[2026-06-19 17:14:31,975.975 INFO    ] 200
[2026-06-19 17:14:31,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:32,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:14:32,038.038 INFO    ] No update needed
[2026-06-19 17:14:32,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 17:14:32,076.076 INFO    ] 200
[2026-06-19 17:14:32,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:32,122.122 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:14:32,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:14:32,164.164 INFO    ] No camera update needed
[2026-06-19 17:14:32,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:14:32,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:14:32,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:14:32,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:14:34,222.222 INFO    ] ================================================
[2026-06-19 17:14:34,237.237 INFO    ] Launching Daemon at Fri Jun 19 17:14:34 IST 2026
[2026-06-19 17:14:34,247.247 INFO    ] ================================================
[2026-06-19 17:14:34,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:14:34
[2026-06-19 17:14:35,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:14:35,712.712 INFO    ] Initializing speech engine...
[2026-06-19 17:14:35,721.721 INFO    ] 2026-06-19 17:14:35
[2026-06-19 17:14:35,978.978 INFO    ] 2026-06-19 17:14:35
[2026-06-19 17:14:36,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:14:36,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:14:36,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:14:36,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:14:36,444.444 INFO    ] time= 19/06/2026 17:14:36
[2026-06-19 17:14:36,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:14:36,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:14:36,669.669 INFO    ] No existing commands found in stream
[2026-06-19 17:14:41,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:14:41,697.697 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 17:14:43,483.483 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:14:43,486.486 INFO    ] Checking for system updates...
[2026-06-19 17:14:43,522.522 INFO    ] 200
[2026-06-19 17:14:43,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:43,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:14:43,582.582 INFO    ] No update needed
[2026-06-19 17:14:43,584.584 INFO    ] Checking for camera pi updates...
[2026-06-19 17:14:43,622.622 INFO    ] 200
[2026-06-19 17:14:43,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:43,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:14:43,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:14:43,813.813 INFO    ] No camera update needed
[2026-06-19 17:14:43,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:14:43,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:14:43,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:14:43,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:14:45,870.870 INFO    ] ================================================
[2026-06-19 17:14:45,885.885 INFO    ] Launching Daemon at Fri Jun 19 17:14:45 IST 2026
[2026-06-19 17:14:45,896.896 INFO    ] ================================================
[2026-06-19 17:14:46,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:14:46
[2026-06-19 17:14:47,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:14:47,358.358 INFO    ] Initializing speech engine...
[2026-06-19 17:14:47,367.367 INFO    ] 2026-06-19 17:14:47
[2026-06-19 17:14:47,643.643 INFO    ] 2026-06-19 17:14:47
[2026-06-19 17:14:47,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:14:47,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:14:47,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:14:48,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:14:48,119.119 INFO    ] time= 19/06/2026 17:14:48
[2026-06-19 17:14:48,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:14:48,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:14:48,307.307 INFO    ] No existing commands found in stream
[2026-06-19 17:14:53,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:14:53,337.337 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 17:14:56,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:14:56,749.749 INFO    ] Checking for system updates...
[2026-06-19 17:14:56,786.786 INFO    ] 200
[2026-06-19 17:14:56,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:56,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:14:56,850.850 INFO    ] No update needed
[2026-06-19 17:14:56,852.852 INFO    ] Checking for camera pi updates...
[2026-06-19 17:14:56,888.888 INFO    ] 200
[2026-06-19 17:14:56,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:14:56,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:14:56,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:14:56,980.980 INFO    ] No camera update needed
[2026-06-19 17:14:56,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:14:56,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:14:56,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:14:56,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:14:59,041.041 INFO    ] ================================================
[2026-06-19 17:14:59,056.056 INFO    ] Launching Daemon at Fri Jun 19 17:14:59 IST 2026
[2026-06-19 17:14:59,067.067 INFO    ] ================================================
[2026-06-19 17:14:59,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:14:59
[2026-06-19 17:15:00,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:15:00,526.526 INFO    ] Initializing speech engine...
[2026-06-19 17:15:00,533.533 INFO    ] 2026-06-19 17:15:00
[2026-06-19 17:15:00,791.791 INFO    ] 2026-06-19 17:15:00
[2026-06-19 17:15:00,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:15:01,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:15:01,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:15:01,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:15:01,292.292 INFO    ] time= 19/06/2026 17:15:01
[2026-06-19 17:15:01,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:15:01,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:15:01,498.498 INFO    ] No existing commands found in stream
[2026-06-19 17:15:06,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:15:06,523.523 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 17:15:10,839.839 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:15:10,941.941 INFO    ] Checking for system updates...
[2026-06-19 17:15:10,985.985 INFO    ] 200
[2026-06-19 17:15:10,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:15:11,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:15:11,052.052 INFO    ] No update needed
[2026-06-19 17:15:11,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 17:15:11,096.096 INFO    ] 200
[2026-06-19 17:15:11,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:15:11,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:15:11,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:15:11,191.191 INFO    ] No camera update needed
[2026-06-19 17:15:11,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:15:11,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:15:11,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:15:11,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:15:13,249.249 INFO    ] ================================================
[2026-06-19 17:15:13,264.264 INFO    ] Launching Daemon at Fri Jun 19 17:15:13 IST 2026
[2026-06-19 17:15:13,275.275 INFO    ] ================================================
[2026-06-19 17:15:13,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:15:13
[2026-06-19 17:15:14,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:15:14,701.701 INFO    ] Initializing speech engine...
[2026-06-19 17:15:14,711.711 INFO    ] 2026-06-19 17:15:14
[2026-06-19 17:15:14,958.958 INFO    ] 2026-06-19 17:15:14
[2026-06-19 17:15:14,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:15:15,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:15:15,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:15:15,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:15:15,430.430 INFO    ] time= 19/06/2026 17:15:15
[2026-06-19 17:15:15,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:15:15,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:15:15,658.658 INFO    ] No existing commands found in stream
[2026-06-19 17:15:20,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:15:20,684.684 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 17:15:22,831.831 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:15:22,834.834 INFO    ] Checking for system updates...
[2026-06-19 17:15:22,873.873 INFO    ] 200
[2026-06-19 17:15:22,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:15:22,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:15:22,931.931 INFO    ] No update needed
[2026-06-19 17:15:22,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 17:15:22,967.967 INFO    ] 200
[2026-06-19 17:15:22,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:15:23,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:15:23,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:15:23,060.060 INFO    ] No camera update needed
[2026-06-19 17:15:23,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:15:23,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:15:23,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:15:23,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:15:25,116.116 INFO    ] ================================================
[2026-06-19 17:15:25,131.131 INFO    ] Launching Daemon at Fri Jun 19 17:15:25 IST 2026
[2026-06-19 17:15:25,141.141 INFO    ] ================================================
[2026-06-19 17:15:25,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:15:25
[2026-06-19 17:15:26,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:15:26,548.548 INFO    ] Initializing speech engine...
[2026-06-19 17:15:26,562.562 INFO    ] 2026-06-19 17:15:26
[2026-06-19 17:15:26,825.825 INFO    ] 2026-06-19 17:15:26
[2026-06-19 17:15:26,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:15:27,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:15:27,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:15:27,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:15:27,329.329 INFO    ] time= 19/06/2026 17:15:27
[2026-06-19 17:15:27,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:15:27,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:15:27,557.557 INFO    ] No existing commands found in stream
[2026-06-19 17:15:32,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:15:32,579.579 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 17:15:35,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:15:35,352.352 INFO    ] Checking for system updates...
[2026-06-19 17:15:35,389.389 INFO    ] 200
[2026-06-19 17:15:35,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:15:35,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:15:35,447.447 INFO    ] No update needed
[2026-06-19 17:15:35,449.449 INFO    ] Checking for camera pi updates...
[2026-06-19 17:15:35,487.487 INFO    ] 200
[2026-06-19 17:15:35,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:15:35,530.530 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:15:35,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:15:35,579.579 INFO    ] No camera update needed
[2026-06-19 17:15:35,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:15:35,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:15:35,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:15:35,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:15:37,635.635 INFO    ] ================================================
[2026-06-19 17:15:37,650.650 INFO    ] Launching Daemon at Fri Jun 19 17:15:37 IST 2026
[2026-06-19 17:15:37,661.661 INFO    ] ================================================
[2026-06-19 17:15:38,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:15:38
[2026-06-19 17:15:38,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:15:39,094.094 INFO    ] Initializing speech engine...
[2026-06-19 17:15:39,106.106 INFO    ] 2026-06-19 17:15:39
[2026-06-19 17:15:39,360.360 INFO    ] 2026-06-19 17:15:39
[2026-06-19 17:15:39,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:15:39,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:15:39,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:15:39,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:15:39,868.868 INFO    ] time= 19/06/2026 17:15:39
[2026-06-19 17:15:39,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:15:39,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:15:40,007.007 INFO    ] No existing commands found in stream
[2026-06-19 17:15:45,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:15:45,035.035 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 17:15:47,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:15:47,354.354 INFO    ] Checking for system updates...
[2026-06-19 17:15:47,390.390 INFO    ] 200
[2026-06-19 17:15:47,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:15:47,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:15:47,448.448 INFO    ] No update needed
[2026-06-19 17:15:47,450.450 INFO    ] Checking for camera pi updates...
[2026-06-19 17:15:47,488.488 INFO    ] 200
[2026-06-19 17:15:47,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:15:47,535.535 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:15:47,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:15:47,573.573 INFO    ] No camera update needed
[2026-06-19 17:15:47,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:15:47,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:15:47,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:15:47,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:15:49,629.629 INFO    ] ================================================
[2026-06-19 17:15:49,644.644 INFO    ] Launching Daemon at Fri Jun 19 17:15:49 IST 2026
[2026-06-19 17:15:49,655.655 INFO    ] ================================================
[2026-06-19 17:15:50,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:15:50
[2026-06-19 17:15:50,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:15:51,062.062 INFO    ] Initializing speech engine...
[2026-06-19 17:15:51,071.071 INFO    ] 2026-06-19 17:15:51
[2026-06-19 17:15:51,364.364 INFO    ] 2026-06-19 17:15:51
[2026-06-19 17:15:51,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:15:51,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:15:51,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:15:51,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:15:51,767.767 INFO    ] time= 19/06/2026 17:15:51
[2026-06-19 17:15:51,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:15:51,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:15:51,968.968 INFO    ] No existing commands found in stream
[2026-06-19 17:15:56,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:15:56,980.980 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 17:16:00,016.016 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:16:00,018.018 INFO    ] Checking for system updates...
[2026-06-19 17:16:00,062.062 INFO    ] 200
[2026-06-19 17:16:00,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:00,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:16:00,126.126 INFO    ] No update needed
[2026-06-19 17:16:00,128.128 INFO    ] Checking for camera pi updates...
[2026-06-19 17:16:00,162.162 INFO    ] 200
[2026-06-19 17:16:00,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:00,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:16:00,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:16:00,263.263 INFO    ] No camera update needed
[2026-06-19 17:16:00,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:16:00,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:16:00,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:16:00,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:16:02,322.322 INFO    ] ================================================
[2026-06-19 17:16:02,340.340 INFO    ] Launching Daemon at Fri Jun 19 17:16:02 IST 2026
[2026-06-19 17:16:02,353.353 INFO    ] ================================================
[2026-06-19 17:16:03,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:16:03
[2026-06-19 17:16:03,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:16:03,987.987 INFO    ] Initializing speech engine...
[2026-06-19 17:16:03,993.993 INFO    ] 2026-06-19 17:16:03
[2026-06-19 17:16:04,243.243 INFO    ] 2026-06-19 17:16:04
[2026-06-19 17:16:04,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:16:04,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:16:04,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:16:04,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:16:04,719.719 INFO    ] time= 19/06/2026 17:16:04
[2026-06-19 17:16:04,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:16:04,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:16:04,943.943 INFO    ] No existing commands found in stream
[2026-06-19 17:16:09,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:16:09,969.969 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 17:16:11,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:16:11,233.233 INFO    ] Checking for system updates...
[2026-06-19 17:16:11,281.281 INFO    ] 200
[2026-06-19 17:16:11,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:11,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:16:11,346.346 INFO    ] No update needed
[2026-06-19 17:16:11,348.348 INFO    ] Checking for camera pi updates...
[2026-06-19 17:16:11,383.383 INFO    ] 200
[2026-06-19 17:16:11,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:11,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:16:11,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:16:11,479.479 INFO    ] No camera update needed
[2026-06-19 17:16:11,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:16:11,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:16:11,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:16:11,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:16:13,538.538 INFO    ] ================================================
[2026-06-19 17:16:13,555.555 INFO    ] Launching Daemon at Fri Jun 19 17:16:13 IST 2026
[2026-06-19 17:16:13,567.567 INFO    ] ================================================
[2026-06-19 17:16:14,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:16:14
[2026-06-19 17:16:14,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:16:15,104.104 INFO    ] Initializing speech engine...
[2026-06-19 17:16:15,118.118 INFO    ] 2026-06-19 17:16:15
[2026-06-19 17:16:15,416.416 INFO    ] 2026-06-19 17:16:15
[2026-06-19 17:16:15,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:16:15,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:16:15,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:16:15,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:16:15,926.926 INFO    ] time= 19/06/2026 17:16:15
[2026-06-19 17:16:15,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:16:16,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:16:16,165.165 INFO    ] No existing commands found in stream
[2026-06-19 17:16:21,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:16:21,201.201 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 17:16:23,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:16:23,313.313 INFO    ] Checking for system updates...
[2026-06-19 17:16:23,353.353 INFO    ] 200
[2026-06-19 17:16:23,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:23,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:16:23,418.418 INFO    ] No update needed
[2026-06-19 17:16:23,421.421 INFO    ] Checking for camera pi updates...
[2026-06-19 17:16:23,459.459 INFO    ] 200
[2026-06-19 17:16:23,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:23,507.507 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:16:23,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:16:23,557.557 INFO    ] No camera update needed
[2026-06-19 17:16:23,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:16:23,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:16:23,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:16:23,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:16:25,612.612 INFO    ] ================================================
[2026-06-19 17:16:25,628.628 INFO    ] Launching Daemon at Fri Jun 19 17:16:25 IST 2026
[2026-06-19 17:16:25,639.639 INFO    ] ================================================
[2026-06-19 17:16:26,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:16:26
[2026-06-19 17:16:26,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:16:27,063.063 INFO    ] Initializing speech engine...
[2026-06-19 17:16:27,072.072 INFO    ] 2026-06-19 17:16:27
[2026-06-19 17:16:27,323.323 INFO    ] 2026-06-19 17:16:27
[2026-06-19 17:16:27,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:16:27,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:16:27,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:16:27,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:16:27,802.802 INFO    ] time= 19/06/2026 17:16:27
[2026-06-19 17:16:27,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:16:27,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:16:28,018.018 INFO    ] No existing commands found in stream
[2026-06-19 17:16:33,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:16:33,051.051 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 17:16:36,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:16:36,597.597 INFO    ] Checking for system updates...
[2026-06-19 17:16:36,636.636 INFO    ] 200
[2026-06-19 17:16:36,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:36,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:16:36,699.699 INFO    ] No update needed
[2026-06-19 17:16:36,701.701 INFO    ] Checking for camera pi updates...
[2026-06-19 17:16:36,736.736 INFO    ] 200
[2026-06-19 17:16:36,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:36,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:16:36,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:16:36,826.826 INFO    ] No camera update needed
[2026-06-19 17:16:36,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:16:36,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:16:36,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:16:36,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:16:38,881.881 INFO    ] ================================================
[2026-06-19 17:16:38,897.897 INFO    ] Launching Daemon at Fri Jun 19 17:16:38 IST 2026
[2026-06-19 17:16:38,908.908 INFO    ] ================================================
[2026-06-19 17:16:39,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:16:39
[2026-06-19 17:16:40,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:16:40,309.309 INFO    ] Initializing speech engine...
[2026-06-19 17:16:40,318.318 INFO    ] 2026-06-19 17:16:40
[2026-06-19 17:16:40,591.591 INFO    ] 2026-06-19 17:16:40
[2026-06-19 17:16:40,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:16:40,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:16:40,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:16:41,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:16:41,081.081 INFO    ] time= 19/06/2026 17:16:41
[2026-06-19 17:16:41,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:16:41,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:16:41,305.305 INFO    ] No existing commands found in stream
[2026-06-19 17:16:46,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:16:46,336.336 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 17:16:47,997.997 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:16:48,000.000 INFO    ] Checking for system updates...
[2026-06-19 17:16:48,037.037 INFO    ] 200
[2026-06-19 17:16:48,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:48,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:16:48,097.097 INFO    ] No update needed
[2026-06-19 17:16:48,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 17:16:48,137.137 INFO    ] 200
[2026-06-19 17:16:48,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:48,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:16:48,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:16:48,323.323 INFO    ] No camera update needed
[2026-06-19 17:16:48,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:16:48,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:16:48,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:16:48,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:16:50,385.385 INFO    ] ================================================
[2026-06-19 17:16:50,401.401 INFO    ] Launching Daemon at Fri Jun 19 17:16:50 IST 2026
[2026-06-19 17:16:50,412.412 INFO    ] ================================================
[2026-06-19 17:16:51,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:16:51
[2026-06-19 17:16:51,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:16:51,973.973 INFO    ] Initializing speech engine...
[2026-06-19 17:16:51,979.979 INFO    ] 2026-06-19 17:16:51
[2026-06-19 17:16:52,242.242 INFO    ] 2026-06-19 17:16:52
[2026-06-19 17:16:52,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:16:52,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:16:52,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:16:52,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:16:52,646.646 INFO    ] time= 19/06/2026 17:16:52
[2026-06-19 17:16:52,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:16:52,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:16:52,857.857 INFO    ] No existing commands found in stream
[2026-06-19 17:16:57,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:16:57,874.874 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 17:16:59,253.253 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:16:59,256.256 INFO    ] Checking for system updates...
[2026-06-19 17:16:59,292.292 INFO    ] 200
[2026-06-19 17:16:59,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:59,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:16:59,350.350 INFO    ] No update needed
[2026-06-19 17:16:59,353.353 INFO    ] Checking for camera pi updates...
[2026-06-19 17:16:59,390.390 INFO    ] 200
[2026-06-19 17:16:59,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:16:59,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:16:59,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:16:59,485.485 INFO    ] No camera update needed
[2026-06-19 17:16:59,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:16:59,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:16:59,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:16:59,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:17:01,558.558 INFO    ] ================================================
[2026-06-19 17:17:01,584.584 INFO    ] Launching Daemon at Fri Jun 19 17:17:01 IST 2026
[2026-06-19 17:17:01,610.610 INFO    ] ================================================
[2026-06-19 17:17:02,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:17:02
[2026-06-19 17:17:03,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:17:03,421.421 INFO    ] Initializing speech engine...
[2026-06-19 17:17:03,431.431 INFO    ] 2026-06-19 17:17:03
[2026-06-19 17:17:03,680.680 INFO    ] 2026-06-19 17:17:03
[2026-06-19 17:17:03,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:17:03,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:17:03,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:17:04,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:17:04,157.157 INFO    ] time= 19/06/2026 17:17:04
[2026-06-19 17:17:04,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:17:04,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:17:04,370.370 INFO    ] No existing commands found in stream
[2026-06-19 17:17:09,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:17:09,399.399 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 17:17:11,128.128 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:17:11,131.131 INFO    ] Checking for system updates...
[2026-06-19 17:17:11,168.168 INFO    ] 200
[2026-06-19 17:17:11,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:11,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:17:11,230.230 INFO    ] No update needed
[2026-06-19 17:17:11,232.232 INFO    ] Checking for camera pi updates...
[2026-06-19 17:17:11,266.266 INFO    ] 200
[2026-06-19 17:17:11,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:11,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:17:11,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:17:11,365.365 INFO    ] No camera update needed
[2026-06-19 17:17:11,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:17:11,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:17:11,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:17:11,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:17:13,421.421 INFO    ] ================================================
[2026-06-19 17:17:13,437.437 INFO    ] Launching Daemon at Fri Jun 19 17:17:13 IST 2026
[2026-06-19 17:17:13,447.447 INFO    ] ================================================
[2026-06-19 17:17:14,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:17:14
[2026-06-19 17:17:14,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:17:14,859.859 INFO    ] Initializing speech engine...
[2026-06-19 17:17:14,882.882 INFO    ] 2026-06-19 17:17:14
[2026-06-19 17:17:15,135.135 INFO    ] 2026-06-19 17:17:15
[2026-06-19 17:17:15,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:17:15,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:17:15,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:17:15,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:17:15,622.622 INFO    ] time= 19/06/2026 17:17:15
[2026-06-19 17:17:15,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:17:15,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:17:15,771.771 INFO    ] No existing commands found in stream
[2026-06-19 17:17:20,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:17:20,793.793 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 17:17:23,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:17:23,177.177 INFO    ] Checking for system updates...
[2026-06-19 17:17:23,217.217 INFO    ] 200
[2026-06-19 17:17:23,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:23,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:17:23,280.280 INFO    ] No update needed
[2026-06-19 17:17:23,283.283 INFO    ] Checking for camera pi updates...
[2026-06-19 17:17:23,317.317 INFO    ] 200
[2026-06-19 17:17:23,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:23,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:17:23,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:17:23,409.409 INFO    ] No camera update needed
[2026-06-19 17:17:23,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:17:23,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:17:23,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:17:23,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:17:25,471.471 INFO    ] ================================================
[2026-06-19 17:17:25,486.486 INFO    ] Launching Daemon at Fri Jun 19 17:17:25 IST 2026
[2026-06-19 17:17:25,497.497 INFO    ] ================================================
[2026-06-19 17:17:26,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:17:26
[2026-06-19 17:17:26,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:17:26,952.952 INFO    ] Initializing speech engine...
[2026-06-19 17:17:26,961.961 INFO    ] 2026-06-19 17:17:26
[2026-06-19 17:17:27,223.223 INFO    ] 2026-06-19 17:17:27
[2026-06-19 17:17:27,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:17:27,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:17:27,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:17:27,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:17:27,700.700 INFO    ] time= 19/06/2026 17:17:27
[2026-06-19 17:17:27,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:17:27,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:17:27,971.971 INFO    ] No existing commands found in stream
[2026-06-19 17:17:32,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:17:32,996.996 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 17:17:34,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:17:34,315.315 INFO    ] Checking for system updates...
[2026-06-19 17:17:34,351.351 INFO    ] 200
[2026-06-19 17:17:34,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:34,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:17:34,416.416 INFO    ] No update needed
[2026-06-19 17:17:34,418.418 INFO    ] Checking for camera pi updates...
[2026-06-19 17:17:34,453.453 INFO    ] 200
[2026-06-19 17:17:34,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:34,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:17:34,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:17:34,549.549 INFO    ] No camera update needed
[2026-06-19 17:17:34,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:17:34,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:17:34,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:17:34,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:17:36,606.606 INFO    ] ================================================
[2026-06-19 17:17:36,622.622 INFO    ] Launching Daemon at Fri Jun 19 17:17:36 IST 2026
[2026-06-19 17:17:36,633.633 INFO    ] ================================================
[2026-06-19 17:17:37,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:17:37
[2026-06-19 17:17:37,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:17:38,034.034 INFO    ] Initializing speech engine...
[2026-06-19 17:17:38,054.054 INFO    ] 2026-06-19 17:17:38
[2026-06-19 17:17:38,310.310 INFO    ] 2026-06-19 17:17:38
[2026-06-19 17:17:38,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:17:38,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:17:38,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:17:38,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:17:38,777.777 INFO    ] time= 19/06/2026 17:17:38
[2026-06-19 17:17:38,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:17:38,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:17:39,006.006 INFO    ] No existing commands found in stream
[2026-06-19 17:17:44,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:17:44,033.033 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 17:17:47,482.482 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:17:47,485.485 INFO    ] Checking for system updates...
[2026-06-19 17:17:47,526.526 INFO    ] 200
[2026-06-19 17:17:47,529.529 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:47,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:17:47,598.598 INFO    ] No update needed
[2026-06-19 17:17:47,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 17:17:47,637.637 INFO    ] 200
[2026-06-19 17:17:47,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:47,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:17:47,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:17:47,732.732 INFO    ] No camera update needed
[2026-06-19 17:17:47,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:17:47,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:17:47,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:17:47,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:17:49,792.792 INFO    ] ================================================
[2026-06-19 17:17:49,808.808 INFO    ] Launching Daemon at Fri Jun 19 17:17:49 IST 2026
[2026-06-19 17:17:49,819.819 INFO    ] ================================================
[2026-06-19 17:17:50,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:17:50
[2026-06-19 17:17:51,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:17:51,327.327 INFO    ] Initializing speech engine...
[2026-06-19 17:17:51,334.334 INFO    ] 2026-06-19 17:17:51
[2026-06-19 17:17:51,595.595 INFO    ] 2026-06-19 17:17:51
[2026-06-19 17:17:51,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:17:51,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:17:51,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:17:52,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:17:52,061.061 INFO    ] time= 19/06/2026 17:17:52
[2026-06-19 17:17:52,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:17:52,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:17:52,286.286 INFO    ] No existing commands found in stream
[2026-06-19 17:17:57,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:17:57,313.313 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 17:17:58,519.519 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:17:58,522.522 INFO    ] Checking for system updates...
[2026-06-19 17:17:58,558.558 INFO    ] 200
[2026-06-19 17:17:58,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:58,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:17:58,622.622 INFO    ] No update needed
[2026-06-19 17:17:58,624.624 INFO    ] Checking for camera pi updates...
[2026-06-19 17:17:58,658.658 INFO    ] 200
[2026-06-19 17:17:58,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:17:58,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:17:58,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:17:58,756.756 INFO    ] No camera update needed
[2026-06-19 17:17:58,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:17:58,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:17:58,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:17:58,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:18:00,812.812 INFO    ] ================================================
[2026-06-19 17:18:00,827.827 INFO    ] Launching Daemon at Fri Jun 19 17:18:00 IST 2026
[2026-06-19 17:18:00,838.838 INFO    ] ================================================
[2026-06-19 17:18:01,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:18:01
[2026-06-19 17:18:02,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:18:02,725.725 INFO    ] Initializing speech engine...
[2026-06-19 17:18:02,735.735 INFO    ] 2026-06-19 17:18:02
[2026-06-19 17:18:03,019.019 INFO    ] 2026-06-19 17:18:03
[2026-06-19 17:18:03,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:18:03,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:18:03,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:18:03,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:18:03,429.429 INFO    ] time= 19/06/2026 17:18:03
[2026-06-19 17:18:03,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:18:03,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:18:03,626.626 INFO    ] No existing commands found in stream
[2026-06-19 17:18:08,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:18:08,640.640 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 17:18:11,020.020 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:18:11,023.023 INFO    ] Checking for system updates...
[2026-06-19 17:18:11,062.062 INFO    ] 200
[2026-06-19 17:18:11,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:18:11,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:18:11,121.121 INFO    ] No update needed
[2026-06-19 17:18:11,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 17:18:11,157.157 INFO    ] 200
[2026-06-19 17:18:11,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:18:11,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:18:11,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:18:11,254.254 INFO    ] No camera update needed
[2026-06-19 17:18:11,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:18:11,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:18:11,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:18:11,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:18:13,311.311 INFO    ] ================================================
[2026-06-19 17:18:13,326.326 INFO    ] Launching Daemon at Fri Jun 19 17:18:13 IST 2026
[2026-06-19 17:18:13,337.337 INFO    ] ================================================
[2026-06-19 17:18:13,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:18:13
[2026-06-19 17:18:14,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:18:14,757.757 INFO    ] Initializing speech engine...
[2026-06-19 17:18:14,763.763 INFO    ] 2026-06-19 17:18:14
[2026-06-19 17:18:15,057.057 INFO    ] 2026-06-19 17:18:15
[2026-06-19 17:18:15,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:18:15,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:18:15,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:18:15,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:18:15,476.476 INFO    ] time= 19/06/2026 17:18:15
[2026-06-19 17:18:15,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:18:15,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:18:15,643.643 INFO    ] No existing commands found in stream
[2026-06-19 17:18:20,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:18:20,676.676 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 17:18:24,891.891 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:18:24,894.894 INFO    ] Checking for system updates...
[2026-06-19 17:18:24,931.931 INFO    ] 200
[2026-06-19 17:18:24,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:18:24,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:18:24,992.992 INFO    ] No update needed
[2026-06-19 17:18:24,994.994 INFO    ] Checking for camera pi updates...
[2026-06-19 17:18:25,028.028 INFO    ] 200
[2026-06-19 17:18:25,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:18:25,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:18:25,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:18:25,121.121 INFO    ] No camera update needed
[2026-06-19 17:18:25,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:18:25,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:18:25,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:18:25,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:18:27,178.178 INFO    ] ================================================
[2026-06-19 17:18:27,194.194 INFO    ] Launching Daemon at Fri Jun 19 17:18:27 IST 2026
[2026-06-19 17:18:27,206.206 INFO    ] ================================================
[2026-06-19 17:18:27,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:18:27
[2026-06-19 17:18:28,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:18:28,616.616 INFO    ] Initializing speech engine...
[2026-06-19 17:18:28,631.631 INFO    ] 2026-06-19 17:18:28
[2026-06-19 17:18:28,915.915 INFO    ] 2026-06-19 17:18:28
[2026-06-19 17:18:28,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:18:29,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:18:29,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:18:29,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:18:29,326.326 INFO    ] time= 19/06/2026 17:18:29
[2026-06-19 17:18:29,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:18:29,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:18:29,410.410 INFO    ] No existing commands found in stream
[2026-06-19 17:18:34,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:18:34,426.426 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 17:18:36,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:18:36,537.537 INFO    ] Checking for system updates...
[2026-06-19 17:18:36,573.573 INFO    ] 200
[2026-06-19 17:18:36,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:18:36,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:18:36,637.637 INFO    ] No update needed
[2026-06-19 17:18:36,639.639 INFO    ] Checking for camera pi updates...
[2026-06-19 17:18:36,676.676 INFO    ] 200
[2026-06-19 17:18:36,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:18:36,719.719 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:18:36,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:18:36,779.779 INFO    ] No camera update needed
[2026-06-19 17:18:36,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:18:36,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:18:36,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:18:36,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:18:38,841.841 INFO    ] ================================================
[2026-06-19 17:18:38,856.856 INFO    ] Launching Daemon at Fri Jun 19 17:18:38 IST 2026
[2026-06-19 17:18:38,867.867 INFO    ] ================================================
[2026-06-19 17:18:39,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:18:39
[2026-06-19 17:18:40,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:18:40,284.284 INFO    ] Initializing speech engine...
[2026-06-19 17:18:40,290.290 INFO    ] 2026-06-19 17:18:40
[2026-06-19 17:18:40,581.581 INFO    ] 2026-06-19 17:18:40
[2026-06-19 17:18:40,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:18:40,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:18:40,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:18:40,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:18:40,997.997 INFO    ] time= 19/06/2026 17:18:40
[2026-06-19 17:18:41,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:18:41,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:18:41,150.150 INFO    ] No existing commands found in stream
[2026-06-19 17:18:46,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:18:46,178.178 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 17:18:47,460.460 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:18:47,462.462 INFO    ] Checking for system updates...
[2026-06-19 17:18:47,502.502 INFO    ] 200
[2026-06-19 17:18:47,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:18:47,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:18:47,561.561 INFO    ] No update needed
[2026-06-19 17:18:47,563.563 INFO    ] Checking for camera pi updates...
[2026-06-19 17:18:47,597.597 INFO    ] 200
[2026-06-19 17:18:47,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:18:47,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:18:47,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:18:47,683.683 INFO    ] No camera update needed
[2026-06-19 17:18:47,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:18:47,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:18:47,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:18:47,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:18:49,738.738 INFO    ] ================================================
[2026-06-19 17:18:49,753.753 INFO    ] Launching Daemon at Fri Jun 19 17:18:49 IST 2026
[2026-06-19 17:18:49,764.764 INFO    ] ================================================
[2026-06-19 17:18:50,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:18:50
[2026-06-19 17:18:51,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:18:51,369.369 INFO    ] Initializing speech engine...
[2026-06-19 17:18:51,377.377 INFO    ] 2026-06-19 17:18:51
[2026-06-19 17:18:51,670.670 INFO    ] 2026-06-19 17:18:51
[2026-06-19 17:18:51,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:18:51,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:18:51,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:18:52,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:18:52,228.228 INFO    ] time= 19/06/2026 17:18:52
[2026-06-19 17:18:52,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:18:52,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:18:52,377.377 INFO    ] No existing commands found in stream
[2026-06-19 17:18:57,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:18:57,401.401 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 17:19:02,473.473 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:19:02,477.477 INFO    ] Checking for system updates...
[2026-06-19 17:19:02,520.520 INFO    ] 200
[2026-06-19 17:19:02,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:02,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:19:02,586.586 INFO    ] No update needed
[2026-06-19 17:19:02,589.589 INFO    ] Checking for camera pi updates...
[2026-06-19 17:19:02,627.627 INFO    ] 200
[2026-06-19 17:19:02,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:02,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:19:02,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:19:02,778.778 INFO    ] No camera update needed
[2026-06-19 17:19:02,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:19:02,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:19:02,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:19:02,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:19:04,846.846 INFO    ] ================================================
[2026-06-19 17:19:04,861.861 INFO    ] Launching Daemon at Fri Jun 19 17:19:04 IST 2026
[2026-06-19 17:19:04,872.872 INFO    ] ================================================
[2026-06-19 17:19:05,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:19:05
[2026-06-19 17:19:06,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:19:06,481.481 INFO    ] Initializing speech engine...
[2026-06-19 17:19:06,488.488 INFO    ] 2026-06-19 17:19:06
[2026-06-19 17:19:06,766.766 INFO    ] 2026-06-19 17:19:06
[2026-06-19 17:19:06,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:19:07,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:19:07,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:19:07,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:19:07,260.260 INFO    ] time= 19/06/2026 17:19:07
[2026-06-19 17:19:07,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:19:07,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:19:07,484.484 INFO    ] No existing commands found in stream
[2026-06-19 17:19:12,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:19:12,506.506 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 17:19:14,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:19:14,805.805 INFO    ] Checking for system updates...
[2026-06-19 17:19:14,842.842 INFO    ] 200
[2026-06-19 17:19:14,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:14,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:19:14,902.902 INFO    ] No update needed
[2026-06-19 17:19:14,905.905 INFO    ] Checking for camera pi updates...
[2026-06-19 17:19:14,943.943 INFO    ] 200
[2026-06-19 17:19:14,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:14,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:19:15,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:19:15,030.030 INFO    ] No camera update needed
[2026-06-19 17:19:15,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:19:15,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:19:15,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:19:15,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:19:17,085.085 INFO    ] ================================================
[2026-06-19 17:19:17,100.100 INFO    ] Launching Daemon at Fri Jun 19 17:19:17 IST 2026
[2026-06-19 17:19:17,111.111 INFO    ] ================================================
[2026-06-19 17:19:17,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:19:17
[2026-06-19 17:19:18,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:19:18,801.801 INFO    ] Initializing speech engine...
[2026-06-19 17:19:18,808.808 INFO    ] 2026-06-19 17:19:18
[2026-06-19 17:19:19,127.127 INFO    ] 2026-06-19 17:19:19
[2026-06-19 17:19:19,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:19:19,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:19:19,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:19:19,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:19:19,704.704 INFO    ] time= 19/06/2026 17:19:19
[2026-06-19 17:19:19,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:19:19,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:19:19,971.971 INFO    ] No existing commands found in stream
[2026-06-19 17:19:25,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:19:25,011.011 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 17:19:27,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:19:27,288.288 INFO    ] Checking for system updates...
[2026-06-19 17:19:27,329.329 INFO    ] 200
[2026-06-19 17:19:27,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:27,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:19:27,388.388 INFO    ] No update needed
[2026-06-19 17:19:27,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 17:19:27,424.424 INFO    ] 200
[2026-06-19 17:19:27,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:27,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:19:27,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:19:27,521.521 INFO    ] No camera update needed
[2026-06-19 17:19:27,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:19:27,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:19:27,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:19:27,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:19:29,577.577 INFO    ] ================================================
[2026-06-19 17:19:29,592.592 INFO    ] Launching Daemon at Fri Jun 19 17:19:29 IST 2026
[2026-06-19 17:19:29,603.603 INFO    ] ================================================
[2026-06-19 17:19:30,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:19:30
[2026-06-19 17:19:30,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:19:31,005.005 INFO    ] Initializing speech engine...
[2026-06-19 17:19:31,011.011 INFO    ] 2026-06-19 17:19:31
[2026-06-19 17:19:31,297.297 INFO    ] 2026-06-19 17:19:31
[2026-06-19 17:19:31,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:19:31,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:19:31,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:19:31,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:19:31,684.684 INFO    ] time= 19/06/2026 17:19:31
[2026-06-19 17:19:31,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:19:31,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:19:31,817.817 INFO    ] No existing commands found in stream
[2026-06-19 17:19:36,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:19:36,832.832 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 17:19:39,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:19:39,213.213 INFO    ] Checking for system updates...
[2026-06-19 17:19:39,250.250 INFO    ] 200
[2026-06-19 17:19:39,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:39,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:19:39,313.313 INFO    ] No update needed
[2026-06-19 17:19:39,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 17:19:39,349.349 INFO    ] 200
[2026-06-19 17:19:39,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:39,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:19:39,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:19:39,451.451 INFO    ] No camera update needed
[2026-06-19 17:19:39,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:19:39,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:19:39,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:19:39,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:19:41,507.507 INFO    ] ================================================
[2026-06-19 17:19:41,522.522 INFO    ] Launching Daemon at Fri Jun 19 17:19:41 IST 2026
[2026-06-19 17:19:41,532.532 INFO    ] ================================================
[2026-06-19 17:19:42,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:19:42
[2026-06-19 17:19:42,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:19:43,011.011 INFO    ] Initializing speech engine...
[2026-06-19 17:19:43,019.019 INFO    ] 2026-06-19 17:19:43
[2026-06-19 17:19:43,278.278 INFO    ] 2026-06-19 17:19:43
[2026-06-19 17:19:43,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:19:43,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:19:43,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:19:43,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:19:43,760.760 INFO    ] time= 19/06/2026 17:19:43
[2026-06-19 17:19:43,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:19:43,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:19:43,980.980 INFO    ] No existing commands found in stream
[2026-06-19 17:19:49,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:19:49,005.005 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 17:19:52,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:19:52,302.302 INFO    ] Checking for system updates...
[2026-06-19 17:19:52,344.344 INFO    ] 200
[2026-06-19 17:19:52,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:52,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:19:52,409.409 INFO    ] No update needed
[2026-06-19 17:19:52,411.411 INFO    ] Checking for camera pi updates...
[2026-06-19 17:19:52,446.446 INFO    ] 200
[2026-06-19 17:19:52,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:19:52,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:19:52,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:19:52,558.558 INFO    ] No camera update needed
[2026-06-19 17:19:52,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:19:52,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:19:52,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:19:52,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:19:54,615.615 INFO    ] ================================================
[2026-06-19 17:19:54,631.631 INFO    ] Launching Daemon at Fri Jun 19 17:19:54 IST 2026
[2026-06-19 17:19:54,641.641 INFO    ] ================================================
[2026-06-19 17:19:55,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:19:55
[2026-06-19 17:19:55,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:19:56,130.130 INFO    ] Initializing speech engine...
[2026-06-19 17:19:56,143.143 INFO    ] 2026-06-19 17:19:56
[2026-06-19 17:19:56,411.411 INFO    ] 2026-06-19 17:19:56
[2026-06-19 17:19:56,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:19:56,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:19:56,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:19:56,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:19:56,871.871 INFO    ] time= 19/06/2026 17:19:56
[2026-06-19 17:19:56,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:19:56,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:19:57,042.042 INFO    ] No existing commands found in stream
[2026-06-19 17:20:02,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:20:02,060.060 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 17:20:08,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:20:08,387.387 INFO    ] Checking for system updates...
[2026-06-19 17:20:08,424.424 INFO    ] 200
[2026-06-19 17:20:08,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:20:08,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:20:08,492.492 INFO    ] No update needed
[2026-06-19 17:20:08,495.495 INFO    ] Checking for camera pi updates...
[2026-06-19 17:20:08,540.540 INFO    ] 200
[2026-06-19 17:20:08,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:20:08,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:20:08,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:20:08,645.645 INFO    ] No camera update needed
[2026-06-19 17:20:08,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:20:08,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:20:08,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:20:08,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:20:10,707.707 INFO    ] ================================================
[2026-06-19 17:20:10,722.722 INFO    ] Launching Daemon at Fri Jun 19 17:20:10 IST 2026
[2026-06-19 17:20:10,733.733 INFO    ] ================================================
[2026-06-19 17:20:11,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:20:11
[2026-06-19 17:20:11,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:20:12,183.183 INFO    ] Initializing speech engine...
[2026-06-19 17:20:12,190.190 INFO    ] 2026-06-19 17:20:12
[2026-06-19 17:20:12,449.449 INFO    ] 2026-06-19 17:20:12
[2026-06-19 17:20:12,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:20:12,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:20:12,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:20:12,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:20:12,938.938 INFO    ] time= 19/06/2026 17:20:12
[2026-06-19 17:20:12,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:20:13,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:20:13,148.148 INFO    ] No existing commands found in stream
[2026-06-19 17:20:18,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:20:18,174.174 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 17:20:21,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:20:21,741.741 INFO    ] Checking for system updates...
[2026-06-19 17:20:21,777.777 INFO    ] 200
[2026-06-19 17:20:21,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:20:21,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:20:21,842.842 INFO    ] No update needed
[2026-06-19 17:20:21,845.845 INFO    ] Checking for camera pi updates...
[2026-06-19 17:20:21,879.879 INFO    ] 200
[2026-06-19 17:20:21,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:20:21,925.925 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:20:21,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:20:21,976.976 INFO    ] No camera update needed
[2026-06-19 17:20:21,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:20:21,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:20:21,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:20:21,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:20:24,034.034 INFO    ] ================================================
[2026-06-19 17:20:24,049.049 INFO    ] Launching Daemon at Fri Jun 19 17:20:24 IST 2026
[2026-06-19 17:20:24,060.060 INFO    ] ================================================
[2026-06-19 17:20:24,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:20:24
[2026-06-19 17:20:25,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:20:25,522.522 INFO    ] Initializing speech engine...
[2026-06-19 17:20:25,532.532 INFO    ] 2026-06-19 17:20:25
[2026-06-19 17:20:25,792.792 INFO    ] 2026-06-19 17:20:25
[2026-06-19 17:20:25,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:20:26,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:20:26,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:20:26,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:20:26,266.266 INFO    ] time= 19/06/2026 17:20:26
[2026-06-19 17:20:26,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:20:26,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:20:26,496.496 INFO    ] No existing commands found in stream
[2026-06-19 17:20:31,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:20:31,529.529 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 17:20:34,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:20:34,890.890 INFO    ] Checking for system updates...
[2026-06-19 17:20:34,927.927 INFO    ] 200
[2026-06-19 17:20:34,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:20:34,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:20:34,989.989 INFO    ] No update needed
[2026-06-19 17:20:34,991.991 INFO    ] Checking for camera pi updates...
[2026-06-19 17:20:35,026.026 INFO    ] 200
[2026-06-19 17:20:35,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:20:35,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:20:35,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:20:35,115.115 INFO    ] No camera update needed
[2026-06-19 17:20:35,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:20:35,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:20:35,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:20:35,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:20:37,171.171 INFO    ] ================================================
[2026-06-19 17:20:37,186.186 INFO    ] Launching Daemon at Fri Jun 19 17:20:37 IST 2026
[2026-06-19 17:20:37,197.197 INFO    ] ================================================
[2026-06-19 17:20:37,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:20:37
[2026-06-19 17:20:38,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:20:38,754.754 INFO    ] Initializing speech engine...
[2026-06-19 17:20:38,766.766 INFO    ] 2026-06-19 17:20:38
[2026-06-19 17:20:39,053.053 INFO    ] 2026-06-19 17:20:39
[2026-06-19 17:20:39,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:20:39,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:20:39,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:20:39,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:20:39,609.609 INFO    ] time= 19/06/2026 17:20:39
[2026-06-19 17:20:39,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:20:39,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:20:39,769.769 INFO    ] No existing commands found in stream
[2026-06-19 17:20:44,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:20:44,786.786 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 17:20:47,723.723 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:20:47,726.726 INFO    ] Checking for system updates...
[2026-06-19 17:20:47,762.762 INFO    ] 200
[2026-06-19 17:20:47,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:20:47,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:20:47,822.822 INFO    ] No update needed
[2026-06-19 17:20:47,825.825 INFO    ] Checking for camera pi updates...
[2026-06-19 17:20:47,858.858 INFO    ] 200
[2026-06-19 17:20:47,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:20:47,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:20:47,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:20:47,938.938 INFO    ] No camera update needed
[2026-06-19 17:20:47,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:20:47,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:20:47,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:20:47,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:20:49,993.993 INFO    ] ================================================
[2026-06-19 17:20:50,009.009 INFO    ] Launching Daemon at Fri Jun 19 17:20:50 IST 2026
[2026-06-19 17:20:50,020.020 INFO    ] ================================================
[2026-06-19 17:20:50,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:20:50
[2026-06-19 17:20:51,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:20:51,446.446 INFO    ] Initializing speech engine...
[2026-06-19 17:20:51,456.456 INFO    ] 2026-06-19 17:20:51
[2026-06-19 17:20:51,705.705 INFO    ] 2026-06-19 17:20:51
[2026-06-19 17:20:51,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:20:51,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:20:52,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:20:52,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:20:52,189.189 INFO    ] time= 19/06/2026 17:20:52
[2026-06-19 17:20:52,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:20:52,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:20:52,412.412 INFO    ] No existing commands found in stream
[2026-06-19 17:20:57,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:20:57,440.440 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 17:21:00,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:21:00,026.026 INFO    ] Checking for system updates...
[2026-06-19 17:21:00,067.067 INFO    ] 200
[2026-06-19 17:21:00,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:00,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:21:00,125.125 INFO    ] No update needed
[2026-06-19 17:21:00,128.128 INFO    ] Checking for camera pi updates...
[2026-06-19 17:21:00,163.163 INFO    ] 200
[2026-06-19 17:21:00,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:00,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:21:00,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:21:00,263.263 INFO    ] No camera update needed
[2026-06-19 17:21:00,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:21:00,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:21:00,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:21:00,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:21:02,328.328 INFO    ] ================================================
[2026-06-19 17:21:02,347.347 INFO    ] Launching Daemon at Fri Jun 19 17:21:02 IST 2026
[2026-06-19 17:21:02,360.360 INFO    ] ================================================
[2026-06-19 17:21:02,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:21:02
[2026-06-19 17:21:03,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:21:03,919.919 INFO    ] Initializing speech engine...
[2026-06-19 17:21:03,929.929 INFO    ] 2026-06-19 17:21:03
[2026-06-19 17:21:04,182.182 INFO    ] 2026-06-19 17:21:04
[2026-06-19 17:21:04,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:21:04,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:21:04,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:21:04,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:21:04,646.646 INFO    ] time= 19/06/2026 17:21:04
[2026-06-19 17:21:04,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:21:04,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:21:04,875.875 INFO    ] No existing commands found in stream
[2026-06-19 17:21:09,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:21:09,899.899 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 17:21:12,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:21:12,741.741 INFO    ] Checking for system updates...
[2026-06-19 17:21:12,777.777 INFO    ] 200
[2026-06-19 17:21:12,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:12,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:21:12,837.837 INFO    ] No update needed
[2026-06-19 17:21:12,840.840 INFO    ] Checking for camera pi updates...
[2026-06-19 17:21:12,873.873 INFO    ] 200
[2026-06-19 17:21:12,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:12,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:21:13,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:21:13,070.070 INFO    ] No camera update needed
[2026-06-19 17:21:13,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:21:13,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:21:13,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:21:13,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:21:15,127.127 INFO    ] ================================================
[2026-06-19 17:21:15,142.142 INFO    ] Launching Daemon at Fri Jun 19 17:21:15 IST 2026
[2026-06-19 17:21:15,153.153 INFO    ] ================================================
[2026-06-19 17:21:15,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:21:15
[2026-06-19 17:21:16,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:21:16,557.557 INFO    ] Initializing speech engine...
[2026-06-19 17:21:16,575.575 INFO    ] 2026-06-19 17:21:16
[2026-06-19 17:21:16,835.835 INFO    ] 2026-06-19 17:21:16
[2026-06-19 17:21:16,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:21:17,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:21:17,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:21:17,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:21:17,322.322 INFO    ] time= 19/06/2026 17:21:17
[2026-06-19 17:21:17,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:21:17,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:21:17,558.558 INFO    ] No existing commands found in stream
[2026-06-19 17:21:22,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:21:22,578.578 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 17:21:25,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:21:25,634.634 INFO    ] Checking for system updates...
[2026-06-19 17:21:25,673.673 INFO    ] 200
[2026-06-19 17:21:25,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:25,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:21:25,748.748 INFO    ] No update needed
[2026-06-19 17:21:25,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 17:21:25,785.785 INFO    ] 200
[2026-06-19 17:21:25,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:25,835.835 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:21:25,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:21:25,879.879 INFO    ] No camera update needed
[2026-06-19 17:21:25,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:21:25,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:21:25,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:21:25,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:21:27,935.935 INFO    ] ================================================
[2026-06-19 17:21:27,951.951 INFO    ] Launching Daemon at Fri Jun 19 17:21:27 IST 2026
[2026-06-19 17:21:27,962.962 INFO    ] ================================================
[2026-06-19 17:21:28,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:21:28
[2026-06-19 17:21:29,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:21:29,366.366 INFO    ] Initializing speech engine...
[2026-06-19 17:21:29,379.379 INFO    ] 2026-06-19 17:21:29
[2026-06-19 17:21:29,642.642 INFO    ] 2026-06-19 17:21:29
[2026-06-19 17:21:29,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:21:29,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:21:29,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:21:30,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:21:30,117.117 INFO    ] time= 19/06/2026 17:21:30
[2026-06-19 17:21:30,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:21:30,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:21:30,345.345 INFO    ] No existing commands found in stream
[2026-06-19 17:21:35,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:21:35,364.364 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 17:21:38,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:21:38,003.003 INFO    ] Checking for system updates...
[2026-06-19 17:21:38,038.038 INFO    ] 200
[2026-06-19 17:21:38,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:38,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:21:38,098.098 INFO    ] No update needed
[2026-06-19 17:21:38,101.101 INFO    ] Checking for camera pi updates...
[2026-06-19 17:21:38,134.134 INFO    ] 200
[2026-06-19 17:21:38,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:38,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:21:38,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:21:38,225.225 INFO    ] No camera update needed
[2026-06-19 17:21:38,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:21:38,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:21:38,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:21:38,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:21:40,282.282 INFO    ] ================================================
[2026-06-19 17:21:40,297.297 INFO    ] Launching Daemon at Fri Jun 19 17:21:40 IST 2026
[2026-06-19 17:21:40,307.307 INFO    ] ================================================
[2026-06-19 17:21:40,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:21:40
[2026-06-19 17:21:41,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:21:41,706.706 INFO    ] Initializing speech engine...
[2026-06-19 17:21:41,712.712 INFO    ] 2026-06-19 17:21:41
[2026-06-19 17:21:41,987.987 INFO    ] 2026-06-19 17:21:41
[2026-06-19 17:21:42,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:21:42,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:21:42,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:21:42,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:21:42,473.473 INFO    ] time= 19/06/2026 17:21:42
[2026-06-19 17:21:42,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:21:42,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:21:42,660.660 INFO    ] No existing commands found in stream
[2026-06-19 17:21:47,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:21:47,695.695 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 17:21:48,361.361 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:21:48,364.364 INFO    ] Checking for system updates...
[2026-06-19 17:21:48,401.401 INFO    ] 200
[2026-06-19 17:21:48,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:48,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:21:48,460.460 INFO    ] No update needed
[2026-06-19 17:21:48,462.462 INFO    ] Checking for camera pi updates...
[2026-06-19 17:21:48,501.501 INFO    ] 200
[2026-06-19 17:21:48,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:21:48,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:21:48,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:21:48,589.589 INFO    ] No camera update needed
[2026-06-19 17:21:48,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:21:48,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:21:48,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:21:48,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:21:50,647.647 INFO    ] ================================================
[2026-06-19 17:21:50,662.662 INFO    ] Launching Daemon at Fri Jun 19 17:21:50 IST 2026
[2026-06-19 17:21:50,673.673 INFO    ] ================================================
[2026-06-19 17:21:51,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:21:51
[2026-06-19 17:21:51,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:21:52,281.281 INFO    ] Initializing speech engine...
[2026-06-19 17:21:52,291.291 INFO    ] 2026-06-19 17:21:52
[2026-06-19 17:21:52,567.567 INFO    ] 2026-06-19 17:21:52
[2026-06-19 17:21:52,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:21:52,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:21:52,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:21:53,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:21:53,038.038 INFO    ] time= 19/06/2026 17:21:53
[2026-06-19 17:21:53,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:21:53,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:21:53,260.260 INFO    ] No existing commands found in stream
[2026-06-19 17:21:58,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:21:58,284.284 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 17:22:02,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:22:02,186.186 INFO    ] Checking for system updates...
[2026-06-19 17:22:02,226.226 INFO    ] 200
[2026-06-19 17:22:02,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:02,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:22:02,300.300 INFO    ] No update needed
[2026-06-19 17:22:02,304.304 INFO    ] Checking for camera pi updates...
[2026-06-19 17:22:02,344.344 INFO    ] 200
[2026-06-19 17:22:02,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:02,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:22:02,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:22:02,445.445 INFO    ] No camera update needed
[2026-06-19 17:22:02,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:22:02,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:22:02,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:22:02,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:22:04,510.510 INFO    ] ================================================
[2026-06-19 17:22:04,525.525 INFO    ] Launching Daemon at Fri Jun 19 17:22:04 IST 2026
[2026-06-19 17:22:04,536.536 INFO    ] ================================================
[2026-06-19 17:22:05,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:22:05
[2026-06-19 17:22:05,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:22:05,960.960 INFO    ] Initializing speech engine...
[2026-06-19 17:22:05,970.970 INFO    ] 2026-06-19 17:22:05
[2026-06-19 17:22:06,215.215 INFO    ] 2026-06-19 17:22:06
[2026-06-19 17:22:06,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:22:06,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:22:06,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:22:06,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:22:06,689.689 INFO    ] time= 19/06/2026 17:22:06
[2026-06-19 17:22:06,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:22:06,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:22:06,889.889 INFO    ] No existing commands found in stream
[2026-06-19 17:22:11,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:22:11,904.904 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 17:22:14,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:22:14,522.522 INFO    ] Checking for system updates...
[2026-06-19 17:22:14,559.559 INFO    ] 200
[2026-06-19 17:22:14,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:14,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:22:14,616.616 INFO    ] No update needed
[2026-06-19 17:22:14,619.619 INFO    ] Checking for camera pi updates...
[2026-06-19 17:22:14,652.652 INFO    ] 200
[2026-06-19 17:22:14,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:14,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:22:14,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:22:14,748.748 INFO    ] No camera update needed
[2026-06-19 17:22:14,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:22:14,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:22:14,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:22:14,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:22:16,802.802 INFO    ] ================================================
[2026-06-19 17:22:16,817.817 INFO    ] Launching Daemon at Fri Jun 19 17:22:16 IST 2026
[2026-06-19 17:22:16,827.827 INFO    ] ================================================
[2026-06-19 17:22:17,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:22:17
[2026-06-19 17:22:18,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:22:18,285.285 INFO    ] Initializing speech engine...
[2026-06-19 17:22:18,291.291 INFO    ] 2026-06-19 17:22:18
[2026-06-19 17:22:18,590.590 INFO    ] 2026-06-19 17:22:18
[2026-06-19 17:22:18,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:22:18,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:22:18,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:22:18,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:22:18,990.990 INFO    ] time= 19/06/2026 17:22:18
[2026-06-19 17:22:19,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:22:19,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:22:19,097.097 INFO    ] No existing commands found in stream
[2026-06-19 17:22:24,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:22:24,113.113 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 17:22:28,083.083 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:22:28,087.087 INFO    ] Checking for system updates...
[2026-06-19 17:22:28,123.123 INFO    ] 200
[2026-06-19 17:22:28,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:28,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:22:28,183.183 INFO    ] No update needed
[2026-06-19 17:22:28,185.185 INFO    ] Checking for camera pi updates...
[2026-06-19 17:22:28,220.220 INFO    ] 200
[2026-06-19 17:22:28,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:28,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:22:28,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:22:28,317.317 INFO    ] No camera update needed
[2026-06-19 17:22:28,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:22:28,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:22:28,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:22:28,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:22:30,377.377 INFO    ] ================================================
[2026-06-19 17:22:30,393.393 INFO    ] Launching Daemon at Fri Jun 19 17:22:30 IST 2026
[2026-06-19 17:22:30,404.404 INFO    ] ================================================
[2026-06-19 17:22:31,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:22:31
[2026-06-19 17:22:31,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:22:32,030.030 INFO    ] Initializing speech engine...
[2026-06-19 17:22:32,045.045 INFO    ] 2026-06-19 17:22:32
[2026-06-19 17:22:32,315.315 INFO    ] 2026-06-19 17:22:32
[2026-06-19 17:22:32,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:22:32,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:22:32,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:22:32,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:22:32,812.812 INFO    ] time= 19/06/2026 17:22:32
[2026-06-19 17:22:32,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:22:32,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:22:32,976.976 INFO    ] No existing commands found in stream
[2026-06-19 17:22:38,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:22:38,004.004 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 17:22:41,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:22:41,538.538 INFO    ] Checking for system updates...
[2026-06-19 17:22:41,575.575 INFO    ] 200
[2026-06-19 17:22:41,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:41,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:22:41,634.634 INFO    ] No update needed
[2026-06-19 17:22:41,637.637 INFO    ] Checking for camera pi updates...
[2026-06-19 17:22:41,672.672 INFO    ] 200
[2026-06-19 17:22:41,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:41,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:22:41,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:22:41,773.773 INFO    ] No camera update needed
[2026-06-19 17:22:41,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:22:41,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:22:41,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:22:41,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:22:43,833.833 INFO    ] ================================================
[2026-06-19 17:22:43,848.848 INFO    ] Launching Daemon at Fri Jun 19 17:22:43 IST 2026
[2026-06-19 17:22:43,858.858 INFO    ] ================================================
[2026-06-19 17:22:44,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:22:44
[2026-06-19 17:22:45,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:22:45,414.414 INFO    ] Initializing speech engine...
[2026-06-19 17:22:45,421.421 INFO    ] 2026-06-19 17:22:45
[2026-06-19 17:22:45,712.712 INFO    ] 2026-06-19 17:22:45
[2026-06-19 17:22:45,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:22:45,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:22:46,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:22:46,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:22:46,238.238 INFO    ] time= 19/06/2026 17:22:46
[2026-06-19 17:22:46,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:22:46,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:22:46,451.451 INFO    ] No existing commands found in stream
[2026-06-19 17:22:51,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:22:51,490.490 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 17:22:55,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:22:55,194.194 INFO    ] Checking for system updates...
[2026-06-19 17:22:55,232.232 INFO    ] 200
[2026-06-19 17:22:55,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:55,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:22:55,291.291 INFO    ] No update needed
[2026-06-19 17:22:55,294.294 INFO    ] Checking for camera pi updates...
[2026-06-19 17:22:55,328.328 INFO    ] 200
[2026-06-19 17:22:55,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:22:55,371.371 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:22:55,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:22:55,420.420 INFO    ] No camera update needed
[2026-06-19 17:22:55,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:22:55,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:22:55,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:22:55,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:22:57,477.477 INFO    ] ================================================
[2026-06-19 17:22:57,493.493 INFO    ] Launching Daemon at Fri Jun 19 17:22:57 IST 2026
[2026-06-19 17:22:57,503.503 INFO    ] ================================================
[2026-06-19 17:22:58,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:22:58
[2026-06-19 17:22:58,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:22:58,968.968 INFO    ] Initializing speech engine...
[2026-06-19 17:22:58,977.977 INFO    ] 2026-06-19 17:22:58
[2026-06-19 17:22:59,239.239 INFO    ] 2026-06-19 17:22:59
[2026-06-19 17:22:59,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:22:59,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:22:59,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:22:59,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:22:59,645.645 INFO    ] time= 19/06/2026 17:22:59
[2026-06-19 17:22:59,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:22:59,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:22:59,733.733 INFO    ] No existing commands found in stream
[2026-06-19 17:23:04,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:23:04,762.762 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 17:23:08,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:23:08,744.744 INFO    ] Checking for system updates...
[2026-06-19 17:23:08,781.781 INFO    ] 200
[2026-06-19 17:23:08,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:08,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:23:08,841.841 INFO    ] No update needed
[2026-06-19 17:23:08,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 17:23:08,878.878 INFO    ] 200
[2026-06-19 17:23:08,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:08,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:23:08,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:23:08,967.967 INFO    ] No camera update needed
[2026-06-19 17:23:08,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:23:08,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:23:08,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:23:08,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:23:11,024.024 INFO    ] ================================================
[2026-06-19 17:23:11,039.039 INFO    ] Launching Daemon at Fri Jun 19 17:23:11 IST 2026
[2026-06-19 17:23:11,050.050 INFO    ] ================================================
[2026-06-19 17:23:11,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:23:11
[2026-06-19 17:23:12,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:23:12,642.642 INFO    ] Initializing speech engine...
[2026-06-19 17:23:12,651.651 INFO    ] 2026-06-19 17:23:12
[2026-06-19 17:23:12,901.901 INFO    ] 2026-06-19 17:23:12
[2026-06-19 17:23:12,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:23:13,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:23:13,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:23:13,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:23:13,385.385 INFO    ] time= 19/06/2026 17:23:13
[2026-06-19 17:23:13,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:23:13,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:23:13,613.613 INFO    ] No existing commands found in stream
[2026-06-19 17:23:18,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:23:18,640.640 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 17:23:21,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:23:21,791.791 INFO    ] Checking for system updates...
[2026-06-19 17:23:21,827.827 INFO    ] 200
[2026-06-19 17:23:21,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:21,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:23:21,884.884 INFO    ] No update needed
[2026-06-19 17:23:21,886.886 INFO    ] Checking for camera pi updates...
[2026-06-19 17:23:21,921.921 INFO    ] 200
[2026-06-19 17:23:21,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:21,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:23:22,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:23:22,109.109 INFO    ] No camera update needed
[2026-06-19 17:23:22,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:23:22,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:23:22,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:23:22,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:23:24,163.163 INFO    ] ================================================
[2026-06-19 17:23:24,178.178 INFO    ] Launching Daemon at Fri Jun 19 17:23:24 IST 2026
[2026-06-19 17:23:24,189.189 INFO    ] ================================================
[2026-06-19 17:23:24,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:23:24
[2026-06-19 17:23:25,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:23:25,608.608 INFO    ] Initializing speech engine...
[2026-06-19 17:23:25,614.614 INFO    ] 2026-06-19 17:23:25
[2026-06-19 17:23:25,911.911 INFO    ] 2026-06-19 17:23:25
[2026-06-19 17:23:25,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:23:26,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:23:26,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:23:26,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:23:26,336.336 INFO    ] time= 19/06/2026 17:23:26
[2026-06-19 17:23:26,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:23:26,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:23:26,483.483 INFO    ] No existing commands found in stream
[2026-06-19 17:23:31,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:23:31,511.511 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 17:23:32,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:23:32,355.355 INFO    ] Checking for system updates...
[2026-06-19 17:23:32,402.402 INFO    ] 200
[2026-06-19 17:23:32,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:32,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:23:32,465.465 INFO    ] No update needed
[2026-06-19 17:23:32,468.468 INFO    ] Checking for camera pi updates...
[2026-06-19 17:23:32,505.505 INFO    ] 200
[2026-06-19 17:23:32,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:32,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:23:32,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:23:32,588.588 INFO    ] No camera update needed
[2026-06-19 17:23:32,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:23:32,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:23:32,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:23:32,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:23:34,648.648 INFO    ] ================================================
[2026-06-19 17:23:34,663.663 INFO    ] Launching Daemon at Fri Jun 19 17:23:34 IST 2026
[2026-06-19 17:23:34,674.674 INFO    ] ================================================
[2026-06-19 17:23:35,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:23:35
[2026-06-19 17:23:35,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:23:36,095.095 INFO    ] Initializing speech engine...
[2026-06-19 17:23:36,103.103 INFO    ] 2026-06-19 17:23:36
[2026-06-19 17:23:36,380.380 INFO    ] 2026-06-19 17:23:36
[2026-06-19 17:23:36,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:23:36,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:23:36,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:23:36,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:23:36,840.840 INFO    ] time= 19/06/2026 17:23:36
[2026-06-19 17:23:36,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:23:36,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:23:37,081.081 INFO    ] No existing commands found in stream
[2026-06-19 17:23:42,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:23:42,106.106 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 17:23:44,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:23:44,854.854 INFO    ] Checking for system updates...
[2026-06-19 17:23:44,894.894 INFO    ] 200
[2026-06-19 17:23:44,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:44,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:23:44,952.952 INFO    ] No update needed
[2026-06-19 17:23:44,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 17:23:44,987.987 INFO    ] 200
[2026-06-19 17:23:44,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:45,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:23:45,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:23:45,065.065 INFO    ] No camera update needed
[2026-06-19 17:23:45,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:23:45,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:23:45,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:23:45,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:23:47,121.121 INFO    ] ================================================
[2026-06-19 17:23:47,137.137 INFO    ] Launching Daemon at Fri Jun 19 17:23:47 IST 2026
[2026-06-19 17:23:47,148.148 INFO    ] ================================================
[2026-06-19 17:23:47,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:23:47
[2026-06-19 17:23:48,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:23:48,586.586 INFO    ] Initializing speech engine...
[2026-06-19 17:23:48,602.602 INFO    ] 2026-06-19 17:23:48
[2026-06-19 17:23:48,852.852 INFO    ] 2026-06-19 17:23:48
[2026-06-19 17:23:48,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:23:49,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:23:49,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:23:49,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:23:49,338.338 INFO    ] time= 19/06/2026 17:23:49
[2026-06-19 17:23:49,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:23:49,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:23:49,548.548 INFO    ] No existing commands found in stream
[2026-06-19 17:23:54,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:23:54,577.577 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 17:23:58,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:23:58,232.232 INFO    ] Checking for system updates...
[2026-06-19 17:23:58,269.269 INFO    ] 200
[2026-06-19 17:23:58,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:58,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:23:58,329.329 INFO    ] No update needed
[2026-06-19 17:23:58,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 17:23:58,366.366 INFO    ] 200
[2026-06-19 17:23:58,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:23:58,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:23:58,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:23:58,469.469 INFO    ] No camera update needed
[2026-06-19 17:23:58,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:23:58,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:23:58,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:23:58,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:24:00,531.531 INFO    ] ================================================
[2026-06-19 17:24:00,546.546 INFO    ] Launching Daemon at Fri Jun 19 17:24:00 IST 2026
[2026-06-19 17:24:00,557.557 INFO    ] ================================================
[2026-06-19 17:24:01,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:24:01
[2026-06-19 17:24:01,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:24:02,251.251 INFO    ] Initializing speech engine...
[2026-06-19 17:24:02,262.262 INFO    ] 2026-06-19 17:24:02
[2026-06-19 17:24:02,582.582 INFO    ] 2026-06-19 17:24:02
[2026-06-19 17:24:02,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:24:02,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:24:02,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:24:03,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:24:03,083.083 INFO    ] time= 19/06/2026 17:24:03
[2026-06-19 17:24:03,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:24:03,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:24:03,301.301 INFO    ] No existing commands found in stream
[2026-06-19 17:24:08,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:24:08,337.337 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 17:24:08,961.961 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:24:08,963.963 INFO    ] Checking for system updates...
[2026-06-19 17:24:08,999.999 INFO    ] 200
[2026-06-19 17:24:09,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:09,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:24:09,056.056 INFO    ] No update needed
[2026-06-19 17:24:09,059.059 INFO    ] Checking for camera pi updates...
[2026-06-19 17:24:09,092.092 INFO    ] 200
[2026-06-19 17:24:09,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:09,136.136 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:24:09,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:24:09,189.189 INFO    ] No camera update needed
[2026-06-19 17:24:09,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:24:09,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:24:09,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:24:09,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:24:11,252.252 INFO    ] ================================================
[2026-06-19 17:24:11,267.267 INFO    ] Launching Daemon at Fri Jun 19 17:24:11 IST 2026
[2026-06-19 17:24:11,279.279 INFO    ] ================================================
[2026-06-19 17:24:11,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:24:11
[2026-06-19 17:24:12,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:24:12,690.690 INFO    ] Initializing speech engine...
[2026-06-19 17:24:12,699.699 INFO    ] 2026-06-19 17:24:12
[2026-06-19 17:24:12,986.986 INFO    ] 2026-06-19 17:24:12
[2026-06-19 17:24:13,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:24:13,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:24:13,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:24:13,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:24:13,391.391 INFO    ] time= 19/06/2026 17:24:13
[2026-06-19 17:24:13,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:24:13,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:24:13,476.476 INFO    ] No existing commands found in stream
[2026-06-19 17:24:18,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:24:18,514.514 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 17:24:20,573.573 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:24:20,576.576 INFO    ] Checking for system updates...
[2026-06-19 17:24:20,612.612 INFO    ] 200
[2026-06-19 17:24:20,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:20,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:24:20,671.671 INFO    ] No update needed
[2026-06-19 17:24:20,673.673 INFO    ] Checking for camera pi updates...
[2026-06-19 17:24:20,707.707 INFO    ] 200
[2026-06-19 17:24:20,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:20,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:24:20,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:24:20,800.800 INFO    ] No camera update needed
[2026-06-19 17:24:20,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:24:20,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:24:20,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:24:20,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:24:22,856.856 INFO    ] ================================================
[2026-06-19 17:24:22,875.875 INFO    ] Launching Daemon at Fri Jun 19 17:24:22 IST 2026
[2026-06-19 17:24:22,886.886 INFO    ] ================================================
[2026-06-19 17:24:23,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:24:23
[2026-06-19 17:24:24,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:24:24,451.451 INFO    ] Initializing speech engine...
[2026-06-19 17:24:24,459.459 INFO    ] 2026-06-19 17:24:24
[2026-06-19 17:24:24,741.741 INFO    ] 2026-06-19 17:24:24
[2026-06-19 17:24:24,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:24:25,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:24:25,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:24:25,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:24:25,276.276 INFO    ] time= 19/06/2026 17:24:25
[2026-06-19 17:24:25,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:24:25,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:24:25,454.454 INFO    ] No existing commands found in stream
[2026-06-19 17:24:30,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:24:30,488.488 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 17:24:32,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:24:32,936.936 INFO    ] Checking for system updates...
[2026-06-19 17:24:32,976.976 INFO    ] 200
[2026-06-19 17:24:32,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:33,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:24:33,034.034 INFO    ] No update needed
[2026-06-19 17:24:33,037.037 INFO    ] Checking for camera pi updates...
[2026-06-19 17:24:33,072.072 INFO    ] 200
[2026-06-19 17:24:33,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:33,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:24:33,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:24:33,153.153 INFO    ] No camera update needed
[2026-06-19 17:24:33,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:24:33,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:24:33,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:24:33,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:24:35,212.212 INFO    ] ================================================
[2026-06-19 17:24:35,228.228 INFO    ] Launching Daemon at Fri Jun 19 17:24:35 IST 2026
[2026-06-19 17:24:35,239.239 INFO    ] ================================================
[2026-06-19 17:24:35,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:24:35
[2026-06-19 17:24:36,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:24:36,679.679 INFO    ] Initializing speech engine...
[2026-06-19 17:24:36,689.689 INFO    ] 2026-06-19 17:24:36
[2026-06-19 17:24:36,954.954 INFO    ] 2026-06-19 17:24:36
[2026-06-19 17:24:36,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:24:37,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:24:37,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:24:37,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:24:37,375.375 INFO    ] time= 19/06/2026 17:24:37
[2026-06-19 17:24:37,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:24:37,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:24:37,543.543 INFO    ] No existing commands found in stream
[2026-06-19 17:24:42,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:24:42,571.571 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 17:24:45,142.142 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:24:45,144.144 INFO    ] Checking for system updates...
[2026-06-19 17:24:45,180.180 INFO    ] 200
[2026-06-19 17:24:45,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:45,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:24:45,238.238 INFO    ] No update needed
[2026-06-19 17:24:45,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 17:24:45,275.275 INFO    ] 200
[2026-06-19 17:24:45,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:45,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:24:45,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:24:45,366.366 INFO    ] No camera update needed
[2026-06-19 17:24:45,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:24:45,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:24:45,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:24:45,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:24:47,427.427 INFO    ] ================================================
[2026-06-19 17:24:47,443.443 INFO    ] Launching Daemon at Fri Jun 19 17:24:47 IST 2026
[2026-06-19 17:24:47,454.454 INFO    ] ================================================
[2026-06-19 17:24:48,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:24:48
[2026-06-19 17:24:48,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:24:48,864.864 INFO    ] Initializing speech engine...
[2026-06-19 17:24:48,872.872 INFO    ] 2026-06-19 17:24:48
[2026-06-19 17:24:49,165.165 INFO    ] 2026-06-19 17:24:49
[2026-06-19 17:24:49,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:24:49,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:24:49,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:24:49,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:24:49,580.580 INFO    ] time= 19/06/2026 17:24:49
[2026-06-19 17:24:49,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:24:49,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:24:49,671.671 INFO    ] No existing commands found in stream
[2026-06-19 17:24:54,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:24:54,684.684 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 17:24:57,027.027 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:24:57,030.030 INFO    ] Checking for system updates...
[2026-06-19 17:24:57,069.069 INFO    ] 200
[2026-06-19 17:24:57,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:57,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:24:57,128.128 INFO    ] No update needed
[2026-06-19 17:24:57,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 17:24:57,164.164 INFO    ] 200
[2026-06-19 17:24:57,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:24:57,207.207 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:24:57,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:24:57,254.254 INFO    ] No camera update needed
[2026-06-19 17:24:57,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:24:57,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:24:57,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:24:57,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:24:59,311.311 INFO    ] ================================================
[2026-06-19 17:24:59,327.327 INFO    ] Launching Daemon at Fri Jun 19 17:24:59 IST 2026
[2026-06-19 17:24:59,338.338 INFO    ] ================================================
[2026-06-19 17:24:59,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:24:59
[2026-06-19 17:25:00,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:25:00,746.746 INFO    ] Initializing speech engine...
[2026-06-19 17:25:00,751.751 INFO    ] 2026-06-19 17:25:00
[2026-06-19 17:25:01,026.026 INFO    ] 2026-06-19 17:25:01
[2026-06-19 17:25:01,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:25:01,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:25:01,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:25:01,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:25:01,410.410 INFO    ] time= 19/06/2026 17:25:01
[2026-06-19 17:25:01,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:25:01,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:25:01,612.612 INFO    ] No existing commands found in stream
[2026-06-19 17:25:06,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:25:06,630.630 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 17:25:08,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:25:08,467.467 INFO    ] Checking for system updates...
[2026-06-19 17:25:08,504.504 INFO    ] 200
[2026-06-19 17:25:08,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:25:08,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:25:08,562.562 INFO    ] No update needed
[2026-06-19 17:25:08,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 17:25:08,599.599 INFO    ] 200
[2026-06-19 17:25:08,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:25:08,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:25:08,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:25:08,690.690 INFO    ] No camera update needed
[2026-06-19 17:25:08,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:25:08,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:25:08,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:25:08,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:25:10,747.747 INFO    ] ================================================
[2026-06-19 17:25:10,762.762 INFO    ] Launching Daemon at Fri Jun 19 17:25:10 IST 2026
[2026-06-19 17:25:10,773.773 INFO    ] ================================================
[2026-06-19 17:25:11,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:25:11
[2026-06-19 17:25:11,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:25:12,234.234 INFO    ] Initializing speech engine...
[2026-06-19 17:25:12,240.240 INFO    ] 2026-06-19 17:25:12
[2026-06-19 17:25:12,502.502 INFO    ] 2026-06-19 17:25:12
[2026-06-19 17:25:12,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:25:12,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:25:12,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:25:12,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:25:12,970.970 INFO    ] time= 19/06/2026 17:25:12
[2026-06-19 17:25:13,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:25:13,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:25:13,176.176 INFO    ] No existing commands found in stream
[2026-06-19 17:25:18,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:25:18,200.200 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 17:25:22,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:25:22,613.613 INFO    ] Checking for system updates...
[2026-06-19 17:25:22,649.649 INFO    ] 200
[2026-06-19 17:25:22,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:25:22,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:25:22,707.707 INFO    ] No update needed
[2026-06-19 17:25:22,709.709 INFO    ] Checking for camera pi updates...
[2026-06-19 17:25:22,747.747 INFO    ] 200
[2026-06-19 17:25:22,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:25:22,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:25:22,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:25:22,838.838 INFO    ] No camera update needed
[2026-06-19 17:25:22,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:25:22,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:25:22,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:25:22,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:25:24,895.895 INFO    ] ================================================
[2026-06-19 17:25:24,910.910 INFO    ] Launching Daemon at Fri Jun 19 17:25:24 IST 2026
[2026-06-19 17:25:24,920.920 INFO    ] ================================================
[2026-06-19 17:25:25,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:25:25
[2026-06-19 17:25:26,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:25:26,530.530 INFO    ] Initializing speech engine...
[2026-06-19 17:25:26,539.539 INFO    ] 2026-06-19 17:25:26
[2026-06-19 17:25:26,834.834 INFO    ] 2026-06-19 17:25:26
[2026-06-19 17:25:26,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:25:27,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:25:27,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:25:27,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:25:27,368.368 INFO    ] time= 19/06/2026 17:25:27
[2026-06-19 17:25:27,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:25:27,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:25:27,516.516 INFO    ] No existing commands found in stream
[2026-06-19 17:25:32,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:25:32,538.538 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 17:25:36,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:25:36,695.695 INFO    ] Checking for system updates...
[2026-06-19 17:25:36,732.732 INFO    ] 200
[2026-06-19 17:25:36,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:25:36,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:25:36,792.792 INFO    ] No update needed
[2026-06-19 17:25:36,795.795 INFO    ] Checking for camera pi updates...
[2026-06-19 17:25:36,830.830 INFO    ] 200
[2026-06-19 17:25:36,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:25:36,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:25:36,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:25:36,936.936 INFO    ] No camera update needed
[2026-06-19 17:25:36,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:25:36,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:25:36,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:25:36,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:25:38,994.994 INFO    ] ================================================
[2026-06-19 17:25:39,009.009 INFO    ] Launching Daemon at Fri Jun 19 17:25:39 IST 2026
[2026-06-19 17:25:39,020.020 INFO    ] ================================================
[2026-06-19 17:25:39,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:25:39
[2026-06-19 17:25:40,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:25:40,657.657 INFO    ] Initializing speech engine...
[2026-06-19 17:25:40,663.663 INFO    ] 2026-06-19 17:25:40
[2026-06-19 17:25:40,941.941 INFO    ] 2026-06-19 17:25:40
[2026-06-19 17:25:40,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:25:41,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:25:41,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:25:41,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:25:41,473.473 INFO    ] time= 19/06/2026 17:25:41
[2026-06-19 17:25:41,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:25:41,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:25:41,627.627 INFO    ] No existing commands found in stream
[2026-06-19 17:25:46,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:25:46,645.645 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 17:25:47,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:25:47,853.853 INFO    ] Checking for system updates...
[2026-06-19 17:25:47,888.888 INFO    ] 200
[2026-06-19 17:25:47,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:25:47,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:25:47,953.953 INFO    ] No update needed
[2026-06-19 17:25:47,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 17:25:47,989.989 INFO    ] 200
[2026-06-19 17:25:47,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:25:48,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:25:48,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:25:48,065.065 INFO    ] No camera update needed
[2026-06-19 17:25:48,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:25:48,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:25:48,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:25:48,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:25:50,123.123 INFO    ] ================================================
[2026-06-19 17:25:50,138.138 INFO    ] Launching Daemon at Fri Jun 19 17:25:50 IST 2026
[2026-06-19 17:25:50,149.149 INFO    ] ================================================
[2026-06-19 17:25:50,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:25:50
[2026-06-19 17:25:51,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:25:51,566.566 INFO    ] Initializing speech engine...
[2026-06-19 17:25:51,575.575 INFO    ] 2026-06-19 17:25:51
[2026-06-19 17:25:51,835.835 INFO    ] 2026-06-19 17:25:51
[2026-06-19 17:25:51,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:25:52,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:25:52,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:25:52,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:25:52,313.313 INFO    ] time= 19/06/2026 17:25:52
[2026-06-19 17:25:52,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:25:52,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:25:52,538.538 INFO    ] No existing commands found in stream
[2026-06-19 17:25:57,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:25:57,566.566 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 17:26:00,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:26:00,801.801 INFO    ] Checking for system updates...
[2026-06-19 17:26:00,837.837 INFO    ] 200
[2026-06-19 17:26:00,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:00,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:26:00,901.901 INFO    ] No update needed
[2026-06-19 17:26:00,903.903 INFO    ] Checking for camera pi updates...
[2026-06-19 17:26:00,937.937 INFO    ] 200
[2026-06-19 17:26:00,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:00,981.981 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:26:01,033.033 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:26:01,036.036 INFO    ] No camera update needed
[2026-06-19 17:26:01,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:26:01,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:26:01,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:26:01,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:26:03,101.101 INFO    ] ================================================
[2026-06-19 17:26:03,130.130 INFO    ] Launching Daemon at Fri Jun 19 17:26:03 IST 2026
[2026-06-19 17:26:03,144.144 INFO    ] ================================================
[2026-06-19 17:26:03,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:26:03
[2026-06-19 17:26:04,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:26:04,653.653 INFO    ] Initializing speech engine...
[2026-06-19 17:26:04,663.663 INFO    ] 2026-06-19 17:26:04
[2026-06-19 17:26:04,923.923 INFO    ] 2026-06-19 17:26:04
[2026-06-19 17:26:04,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:26:05,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:26:05,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:26:05,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:26:05,401.401 INFO    ] time= 19/06/2026 17:26:05
[2026-06-19 17:26:05,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:26:05,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:26:05,608.608 INFO    ] No existing commands found in stream
[2026-06-19 17:26:10,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:26:10,632.632 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 17:26:13,869.869 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:26:13,872.872 INFO    ] Checking for system updates...
[2026-06-19 17:26:13,908.908 INFO    ] 200
[2026-06-19 17:26:13,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:13,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:26:13,968.968 INFO    ] No update needed
[2026-06-19 17:26:13,970.970 INFO    ] Checking for camera pi updates...
[2026-06-19 17:26:14,004.004 INFO    ] 200
[2026-06-19 17:26:14,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:14,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:26:14,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:26:14,099.099 INFO    ] No camera update needed
[2026-06-19 17:26:14,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:26:14,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:26:14,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:26:14,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:26:16,153.153 INFO    ] ================================================
[2026-06-19 17:26:16,168.168 INFO    ] Launching Daemon at Fri Jun 19 17:26:16 IST 2026
[2026-06-19 17:26:16,179.179 INFO    ] ================================================
[2026-06-19 17:26:16,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:26:16
[2026-06-19 17:26:17,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:26:17,647.647 INFO    ] Initializing speech engine...
[2026-06-19 17:26:17,660.660 INFO    ] 2026-06-19 17:26:17
[2026-06-19 17:26:17,951.951 INFO    ] 2026-06-19 17:26:17
[2026-06-19 17:26:18,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:26:18,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:26:18,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:26:18,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:26:18,497.497 INFO    ] time= 19/06/2026 17:26:18
[2026-06-19 17:26:18,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:26:18,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:26:18,686.686 INFO    ] No existing commands found in stream
[2026-06-19 17:26:23,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:26:23,720.720 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 17:26:25,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:26:25,888.888 INFO    ] Checking for system updates...
[2026-06-19 17:26:25,925.925 INFO    ] 200
[2026-06-19 17:26:25,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:25,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:26:25,986.986 INFO    ] No update needed
[2026-06-19 17:26:25,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 17:26:26,024.024 INFO    ] 200
[2026-06-19 17:26:26,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:26,072.072 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:26:26,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:26:26,129.129 INFO    ] No camera update needed
[2026-06-19 17:26:26,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:26:26,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:26:26,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:26:26,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:26:28,186.186 INFO    ] ================================================
[2026-06-19 17:26:28,201.201 INFO    ] Launching Daemon at Fri Jun 19 17:26:28 IST 2026
[2026-06-19 17:26:28,212.212 INFO    ] ================================================
[2026-06-19 17:26:28,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:26:28
[2026-06-19 17:26:29,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:26:29,636.636 INFO    ] Initializing speech engine...
[2026-06-19 17:26:29,645.645 INFO    ] 2026-06-19 17:26:29
[2026-06-19 17:26:29,895.895 INFO    ] 2026-06-19 17:26:29
[2026-06-19 17:26:29,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:26:30,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:26:30,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:26:30,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:26:30,381.381 INFO    ] time= 19/06/2026 17:26:30
[2026-06-19 17:26:30,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:26:30,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:26:30,587.587 INFO    ] No existing commands found in stream
[2026-06-19 17:26:35,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:26:35,615.615 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 17:26:39,133.133 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:26:39,136.136 INFO    ] Checking for system updates...
[2026-06-19 17:26:39,175.175 INFO    ] 200
[2026-06-19 17:26:39,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:39,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:26:39,233.233 INFO    ] No update needed
[2026-06-19 17:26:39,236.236 INFO    ] Checking for camera pi updates...
[2026-06-19 17:26:39,271.271 INFO    ] 200
[2026-06-19 17:26:39,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:39,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:26:39,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:26:39,370.370 INFO    ] No camera update needed
[2026-06-19 17:26:39,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:26:39,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:26:39,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:26:39,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:26:41,426.426 INFO    ] ================================================
[2026-06-19 17:26:41,441.441 INFO    ] Launching Daemon at Fri Jun 19 17:26:41 IST 2026
[2026-06-19 17:26:41,452.452 INFO    ] ================================================
[2026-06-19 17:26:42,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:26:42
[2026-06-19 17:26:42,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:26:42,859.859 INFO    ] Initializing speech engine...
[2026-06-19 17:26:42,882.882 INFO    ] 2026-06-19 17:26:42
[2026-06-19 17:26:43,137.137 INFO    ] 2026-06-19 17:26:43
[2026-06-19 17:26:43,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:26:43,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:26:43,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:26:43,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:26:43,607.607 INFO    ] time= 19/06/2026 17:26:43
[2026-06-19 17:26:43,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:26:43,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:26:43,757.757 INFO    ] No existing commands found in stream
[2026-06-19 17:26:48,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:26:48,772.772 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 17:26:49,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:26:49,331.331 INFO    ] Checking for system updates...
[2026-06-19 17:26:49,369.369 INFO    ] 200
[2026-06-19 17:26:49,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:49,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:26:49,434.434 INFO    ] No update needed
[2026-06-19 17:26:49,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 17:26:49,473.473 INFO    ] 200
[2026-06-19 17:26:49,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:26:49,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:26:49,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:26:49,552.552 INFO    ] No camera update needed
[2026-06-19 17:26:49,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:26:49,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:26:49,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:26:49,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:26:51,611.611 INFO    ] ================================================
[2026-06-19 17:26:51,626.626 INFO    ] Launching Daemon at Fri Jun 19 17:26:51 IST 2026
[2026-06-19 17:26:51,637.637 INFO    ] ================================================
[2026-06-19 17:26:52,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:26:52
[2026-06-19 17:26:52,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:26:53,250.250 INFO    ] Initializing speech engine...
[2026-06-19 17:26:53,263.263 INFO    ] 2026-06-19 17:26:53
[2026-06-19 17:26:53,574.574 INFO    ] 2026-06-19 17:26:53
[2026-06-19 17:26:53,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:26:53,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:26:53,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:26:54,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:26:54,084.084 INFO    ] time= 19/06/2026 17:26:54
[2026-06-19 17:26:54,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:26:54,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:26:54,273.273 INFO    ] No existing commands found in stream
[2026-06-19 17:26:59,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:26:59,304.304 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 17:27:00,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:27:00,269.269 INFO    ] Checking for system updates...
[2026-06-19 17:27:00,307.307 INFO    ] 200
[2026-06-19 17:27:00,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:00,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:27:00,366.366 INFO    ] No update needed
[2026-06-19 17:27:00,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 17:27:00,410.410 INFO    ] 200
[2026-06-19 17:27:00,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:00,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:27:00,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:27:00,509.509 INFO    ] No camera update needed
[2026-06-19 17:27:00,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:27:00,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:27:00,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:27:00,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:27:02,573.573 INFO    ] ================================================
[2026-06-19 17:27:02,593.593 INFO    ] Launching Daemon at Fri Jun 19 17:27:02 IST 2026
[2026-06-19 17:27:02,612.612 INFO    ] ================================================
[2026-06-19 17:27:03,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:27:03
[2026-06-19 17:27:04,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:27:04,366.366 INFO    ] Initializing speech engine...
[2026-06-19 17:27:04,378.378 INFO    ] 2026-06-19 17:27:04
[2026-06-19 17:27:04,652.652 INFO    ] 2026-06-19 17:27:04
[2026-06-19 17:27:04,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:27:04,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:27:04,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:27:05,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:27:05,152.152 INFO    ] time= 19/06/2026 17:27:05
[2026-06-19 17:27:05,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:27:05,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:27:05,350.350 INFO    ] No existing commands found in stream
[2026-06-19 17:27:10,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:27:10,384.384 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 17:27:12,072.072 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:27:12,075.075 INFO    ] Checking for system updates...
[2026-06-19 17:27:12,117.117 INFO    ] 200
[2026-06-19 17:27:12,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:12,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:27:12,177.177 INFO    ] No update needed
[2026-06-19 17:27:12,180.180 INFO    ] Checking for camera pi updates...
[2026-06-19 17:27:12,218.218 INFO    ] 200
[2026-06-19 17:27:12,221.221 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:12,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:27:12,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:27:12,320.320 INFO    ] No camera update needed
[2026-06-19 17:27:12,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:27:12,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:27:12,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:27:12,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:27:14,377.377 INFO    ] ================================================
[2026-06-19 17:27:14,393.393 INFO    ] Launching Daemon at Fri Jun 19 17:27:14 IST 2026
[2026-06-19 17:27:14,406.406 INFO    ] ================================================
[2026-06-19 17:27:14,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:27:14
[2026-06-19 17:27:15,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:27:15,931.931 INFO    ] Initializing speech engine...
[2026-06-19 17:27:15,936.936 INFO    ] 2026-06-19 17:27:15
[2026-06-19 17:27:16,243.243 INFO    ] 2026-06-19 17:27:16
[2026-06-19 17:27:16,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:27:16,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:27:16,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:27:16,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:27:16,749.749 INFO    ] time= 19/06/2026 17:27:16
[2026-06-19 17:27:16,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:27:16,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:27:16,949.949 INFO    ] No existing commands found in stream
[2026-06-19 17:27:21,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:27:21,983.983 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 17:27:23,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:27:23,872.872 INFO    ] Checking for system updates...
[2026-06-19 17:27:23,910.910 INFO    ] 200
[2026-06-19 17:27:23,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:23,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:27:23,973.973 INFO    ] No update needed
[2026-06-19 17:27:23,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 17:27:24,011.011 INFO    ] 200
[2026-06-19 17:27:24,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:24,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:27:24,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:27:24,103.103 INFO    ] No camera update needed
[2026-06-19 17:27:24,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:27:24,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:27:24,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:27:24,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:27:26,159.159 INFO    ] ================================================
[2026-06-19 17:27:26,175.175 INFO    ] Launching Daemon at Fri Jun 19 17:27:26 IST 2026
[2026-06-19 17:27:26,186.186 INFO    ] ================================================
[2026-06-19 17:27:26,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:27:26
[2026-06-19 17:27:27,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:27:27,826.826 INFO    ] Initializing speech engine...
[2026-06-19 17:27:27,840.840 INFO    ] 2026-06-19 17:27:27
[2026-06-19 17:27:28,121.121 INFO    ] 2026-06-19 17:27:28
[2026-06-19 17:27:28,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:27:28,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:27:28,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:27:28,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:27:28,670.670 INFO    ] time= 19/06/2026 17:27:28
[2026-06-19 17:27:28,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:27:28,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:27:28,837.837 INFO    ] No existing commands found in stream
[2026-06-19 17:27:33,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:27:33,872.872 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 17:27:37,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:27:37,922.922 INFO    ] Checking for system updates...
[2026-06-19 17:27:37,959.959 INFO    ] 200
[2026-06-19 17:27:37,961.961 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:38,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:27:38,018.018 INFO    ] No update needed
[2026-06-19 17:27:38,021.021 INFO    ] Checking for camera pi updates...
[2026-06-19 17:27:38,054.054 INFO    ] 200
[2026-06-19 17:27:38,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:38,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:27:38,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:27:38,242.242 INFO    ] No camera update needed
[2026-06-19 17:27:38,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:27:38,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:27:38,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:27:38,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:27:40,299.299 INFO    ] ================================================
[2026-06-19 17:27:40,315.315 INFO    ] Launching Daemon at Fri Jun 19 17:27:40 IST 2026
[2026-06-19 17:27:40,326.326 INFO    ] ================================================
[2026-06-19 17:27:40,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:27:40
[2026-06-19 17:27:41,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:27:41,826.826 INFO    ] Initializing speech engine...
[2026-06-19 17:27:41,836.836 INFO    ] 2026-06-19 17:27:41
[2026-06-19 17:27:42,112.112 INFO    ] 2026-06-19 17:27:42
[2026-06-19 17:27:42,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:27:42,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:27:42,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:27:42,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:27:42,602.602 INFO    ] time= 19/06/2026 17:27:42
[2026-06-19 17:27:42,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:27:42,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:27:42,830.830 INFO    ] No existing commands found in stream
[2026-06-19 17:27:47,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:27:47,857.857 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 17:27:49,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:27:49,416.416 INFO    ] Checking for system updates...
[2026-06-19 17:27:49,458.458 INFO    ] 200
[2026-06-19 17:27:49,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:49,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:27:49,524.524 INFO    ] No update needed
[2026-06-19 17:27:49,532.532 INFO    ] Checking for camera pi updates...
[2026-06-19 17:27:49,567.567 INFO    ] 200
[2026-06-19 17:27:49,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:27:49,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:27:49,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:27:49,655.655 INFO    ] No camera update needed
[2026-06-19 17:27:49,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:27:49,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:27:49,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:27:49,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:27:51,715.715 INFO    ] ================================================
[2026-06-19 17:27:51,731.731 INFO    ] Launching Daemon at Fri Jun 19 17:27:51 IST 2026
[2026-06-19 17:27:51,742.742 INFO    ] ================================================
[2026-06-19 17:27:52,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:27:52
[2026-06-19 17:27:52,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:27:53,277.277 INFO    ] Initializing speech engine...
[2026-06-19 17:27:53,291.291 INFO    ] 2026-06-19 17:27:53
[2026-06-19 17:27:53,577.577 INFO    ] 2026-06-19 17:27:53
[2026-06-19 17:27:53,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:27:53,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:27:53,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:27:54,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:27:54,108.108 INFO    ] time= 19/06/2026 17:27:54
[2026-06-19 17:27:54,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:27:54,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:27:54,287.287 INFO    ] No existing commands found in stream
[2026-06-19 17:27:59,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:27:59,321.321 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 17:27:59,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:27:59,961.961 INFO    ] Checking for system updates...
[2026-06-19 17:27:59,999.999 INFO    ] 200
[2026-06-19 17:28:00,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:00,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:28:00,058.058 INFO    ] No update needed
[2026-06-19 17:28:00,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 17:28:00,095.095 INFO    ] 200
[2026-06-19 17:28:00,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:00,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:28:00,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:28:00,192.192 INFO    ] No camera update needed
[2026-06-19 17:28:00,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:28:00,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:28:00,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:28:00,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:28:02,255.255 INFO    ] ================================================
[2026-06-19 17:28:02,279.279 INFO    ] Launching Daemon at Fri Jun 19 17:28:02 IST 2026
[2026-06-19 17:28:02,291.291 INFO    ] ================================================
[2026-06-19 17:28:02,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:28:02
[2026-06-19 17:28:03,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:28:03,873.873 INFO    ] Initializing speech engine...
[2026-06-19 17:28:03,880.880 INFO    ] 2026-06-19 17:28:03
[2026-06-19 17:28:04,186.186 INFO    ] 2026-06-19 17:28:04
[2026-06-19 17:28:04,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:28:04,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:28:04,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:28:04,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:28:04,553.553 INFO    ] time= 19/06/2026 17:28:04
[2026-06-19 17:28:04,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:28:04,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:28:04,666.666 INFO    ] No existing commands found in stream
[2026-06-19 17:28:09,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:28:09,704.704 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 17:28:12,179.179 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:28:12,181.181 INFO    ] Checking for system updates...
[2026-06-19 17:28:12,218.218 INFO    ] 200
[2026-06-19 17:28:12,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:12,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:28:12,275.275 INFO    ] No update needed
[2026-06-19 17:28:12,278.278 INFO    ] Checking for camera pi updates...
[2026-06-19 17:28:12,311.311 INFO    ] 200
[2026-06-19 17:28:12,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:12,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:28:12,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:28:12,401.401 INFO    ] No camera update needed
[2026-06-19 17:28:12,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:28:12,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:28:12,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:28:12,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:28:14,459.459 INFO    ] ================================================
[2026-06-19 17:28:14,475.475 INFO    ] Launching Daemon at Fri Jun 19 17:28:14 IST 2026
[2026-06-19 17:28:14,486.486 INFO    ] ================================================
[2026-06-19 17:28:15,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:28:15
[2026-06-19 17:28:15,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:28:16,046.046 INFO    ] Initializing speech engine...
[2026-06-19 17:28:16,061.061 INFO    ] 2026-06-19 17:28:16
[2026-06-19 17:28:16,329.329 INFO    ] 2026-06-19 17:28:16
[2026-06-19 17:28:16,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:28:16,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:28:16,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:28:16,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:28:16,714.714 INFO    ] time= 19/06/2026 17:28:16
[2026-06-19 17:28:16,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:28:16,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:28:16,915.915 INFO    ] No existing commands found in stream
[2026-06-19 17:28:21,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:28:21,928.928 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 17:28:23,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:28:23,814.814 INFO    ] Checking for system updates...
[2026-06-19 17:28:23,859.859 INFO    ] 200
[2026-06-19 17:28:23,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:23,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:28:23,917.917 INFO    ] No update needed
[2026-06-19 17:28:23,919.919 INFO    ] Checking for camera pi updates...
[2026-06-19 17:28:23,953.953 INFO    ] 200
[2026-06-19 17:28:23,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:23,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:28:24,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:28:24,046.046 INFO    ] No camera update needed
[2026-06-19 17:28:24,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:28:24,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:28:24,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:28:24,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:28:26,101.101 INFO    ] ================================================
[2026-06-19 17:28:26,117.117 INFO    ] Launching Daemon at Fri Jun 19 17:28:26 IST 2026
[2026-06-19 17:28:26,129.129 INFO    ] ================================================
[2026-06-19 17:28:26,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:28:26
[2026-06-19 17:28:27,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:28:27,746.746 INFO    ] Initializing speech engine...
[2026-06-19 17:28:27,764.764 INFO    ] 2026-06-19 17:28:27
[2026-06-19 17:28:28,016.016 INFO    ] 2026-06-19 17:28:28
[2026-06-19 17:28:28,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:28:28,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:28:28,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:28:28,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:28:28,477.477 INFO    ] time= 19/06/2026 17:28:28
[2026-06-19 17:28:28,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:28:28,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:28:28,657.657 INFO    ] No existing commands found in stream
[2026-06-19 17:28:33,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:28:33,687.687 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 17:28:34,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:28:34,754.754 INFO    ] Checking for system updates...
[2026-06-19 17:28:34,790.790 INFO    ] 200
[2026-06-19 17:28:34,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:34,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:28:34,849.849 INFO    ] No update needed
[2026-06-19 17:28:34,852.852 INFO    ] Checking for camera pi updates...
[2026-06-19 17:28:34,886.886 INFO    ] 200
[2026-06-19 17:28:34,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:34,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:28:34,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:28:34,980.980 INFO    ] No camera update needed
[2026-06-19 17:28:34,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:28:34,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:28:34,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:28:34,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:28:37,037.037 INFO    ] ================================================
[2026-06-19 17:28:37,052.052 INFO    ] Launching Daemon at Fri Jun 19 17:28:37 IST 2026
[2026-06-19 17:28:37,064.064 INFO    ] ================================================
[2026-06-19 17:28:37,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:28:37
[2026-06-19 17:28:38,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:28:38,683.683 INFO    ] Initializing speech engine...
[2026-06-19 17:28:38,694.694 INFO    ] 2026-06-19 17:28:38
[2026-06-19 17:28:38,978.978 INFO    ] 2026-06-19 17:28:38
[2026-06-19 17:28:39,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:28:39,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:28:39,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:28:39,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:28:39,520.520 INFO    ] time= 19/06/2026 17:28:39
[2026-06-19 17:28:39,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:28:39,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:28:39,699.699 INFO    ] No existing commands found in stream
[2026-06-19 17:28:44,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:28:44,739.739 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 17:28:45,298.298 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:28:45,301.301 INFO    ] Checking for system updates...
[2026-06-19 17:28:45,339.339 INFO    ] 200
[2026-06-19 17:28:45,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:45,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:28:45,400.400 INFO    ] No update needed
[2026-06-19 17:28:45,403.403 INFO    ] Checking for camera pi updates...
[2026-06-19 17:28:45,437.437 INFO    ] 200
[2026-06-19 17:28:45,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:45,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:28:45,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:28:45,531.531 INFO    ] No camera update needed
[2026-06-19 17:28:45,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:28:45,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:28:45,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:28:45,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:28:47,586.586 INFO    ] ================================================
[2026-06-19 17:28:47,602.602 INFO    ] Launching Daemon at Fri Jun 19 17:28:47 IST 2026
[2026-06-19 17:28:47,614.614 INFO    ] ================================================
[2026-06-19 17:28:48,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:28:48
[2026-06-19 17:28:48,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:28:49,068.068 INFO    ] Initializing speech engine...
[2026-06-19 17:28:49,080.080 INFO    ] 2026-06-19 17:28:49
[2026-06-19 17:28:49,348.348 INFO    ] 2026-06-19 17:28:49
[2026-06-19 17:28:49,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:28:49,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:28:49,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:28:49,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:28:49,848.848 INFO    ] time= 19/06/2026 17:28:49
[2026-06-19 17:28:49,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:28:49,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:28:50,060.060 INFO    ] No existing commands found in stream
[2026-06-19 17:28:55,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:28:55,088.088 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 17:28:58,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:28:58,186.186 INFO    ] Checking for system updates...
[2026-06-19 17:28:58,222.222 INFO    ] 200
[2026-06-19 17:28:58,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:58,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:28:58,289.289 INFO    ] No update needed
[2026-06-19 17:28:58,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 17:28:58,330.330 INFO    ] 200
[2026-06-19 17:28:58,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:28:58,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:28:58,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:28:58,423.423 INFO    ] No camera update needed
[2026-06-19 17:28:58,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:28:58,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:28:58,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:28:58,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:29:00,485.485 INFO    ] ================================================
[2026-06-19 17:29:00,501.501 INFO    ] Launching Daemon at Fri Jun 19 17:29:00 IST 2026
[2026-06-19 17:29:00,512.512 INFO    ] ================================================
[2026-06-19 17:29:01,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:29:01
[2026-06-19 17:29:01,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:29:02,349.349 INFO    ] Initializing speech engine...
[2026-06-19 17:29:02,358.358 INFO    ] 2026-06-19 17:29:02
[2026-06-19 17:29:02,684.684 INFO    ] 2026-06-19 17:29:02
[2026-06-19 17:29:02,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:29:02,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:29:02,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:29:03,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:29:03,266.266 INFO    ] time= 19/06/2026 17:29:03
[2026-06-19 17:29:03,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:29:03,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:29:03,432.432 INFO    ] No existing commands found in stream
[2026-06-19 17:29:08,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:29:08,455.455 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 17:29:11,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:29:11,034.034 INFO    ] Checking for system updates...
[2026-06-19 17:29:11,070.070 INFO    ] 200
[2026-06-19 17:29:11,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:11,126.126 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:29:11,129.129 INFO    ] No update needed
[2026-06-19 17:29:11,131.131 INFO    ] Checking for camera pi updates...
[2026-06-19 17:29:11,165.165 INFO    ] 200
[2026-06-19 17:29:11,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:11,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:29:11,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:29:11,255.255 INFO    ] No camera update needed
[2026-06-19 17:29:11,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:29:11,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:29:11,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:29:11,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:29:13,311.311 INFO    ] ================================================
[2026-06-19 17:29:13,326.326 INFO    ] Launching Daemon at Fri Jun 19 17:29:13 IST 2026
[2026-06-19 17:29:13,337.337 INFO    ] ================================================
[2026-06-19 17:29:14,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:29:14
[2026-06-19 17:29:14,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:29:15,024.024 INFO    ] Initializing speech engine...
[2026-06-19 17:29:15,039.039 INFO    ] 2026-06-19 17:29:15
[2026-06-19 17:29:15,330.330 INFO    ] 2026-06-19 17:29:15
[2026-06-19 17:29:15,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:29:15,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:29:15,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:29:15,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:29:15,862.862 INFO    ] time= 19/06/2026 17:29:15
[2026-06-19 17:29:15,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:29:15,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:29:16,001.001 INFO    ] No existing commands found in stream
[2026-06-19 17:29:21,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:29:21,039.039 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 17:29:21,710.710 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:29:21,713.713 INFO    ] Checking for system updates...
[2026-06-19 17:29:21,752.752 INFO    ] 200
[2026-06-19 17:29:21,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:21,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:29:21,813.813 INFO    ] No update needed
[2026-06-19 17:29:21,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 17:29:21,856.856 INFO    ] 200
[2026-06-19 17:29:21,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:21,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:29:21,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:29:21,954.954 INFO    ] No camera update needed
[2026-06-19 17:29:21,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:29:21,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:29:21,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:29:21,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:29:24,014.014 INFO    ] ================================================
[2026-06-19 17:29:24,030.030 INFO    ] Launching Daemon at Fri Jun 19 17:29:24 IST 2026
[2026-06-19 17:29:24,041.041 INFO    ] ================================================
[2026-06-19 17:29:24,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:29:24
[2026-06-19 17:29:25,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:29:25,470.470 INFO    ] Initializing speech engine...
[2026-06-19 17:29:25,479.479 INFO    ] 2026-06-19 17:29:25
[2026-06-19 17:29:25,725.725 INFO    ] 2026-06-19 17:29:25
[2026-06-19 17:29:25,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:29:26,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:29:26,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:29:26,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:29:26,196.196 INFO    ] time= 19/06/2026 17:29:26
[2026-06-19 17:29:26,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:29:26,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:29:26,438.438 INFO    ] No existing commands found in stream
[2026-06-19 17:29:31,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:29:31,467.467 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 17:29:32,570.570 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:29:32,573.573 INFO    ] Checking for system updates...
[2026-06-19 17:29:32,618.618 INFO    ] 200
[2026-06-19 17:29:32,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:32,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:29:32,691.691 INFO    ] No update needed
[2026-06-19 17:29:32,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 17:29:32,730.730 INFO    ] 200
[2026-06-19 17:29:32,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:32,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:29:32,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:29:32,834.834 INFO    ] No camera update needed
[2026-06-19 17:29:32,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:29:32,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:29:32,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:29:32,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:29:34,894.894 INFO    ] ================================================
[2026-06-19 17:29:34,910.910 INFO    ] Launching Daemon at Fri Jun 19 17:29:34 IST 2026
[2026-06-19 17:29:34,922.922 INFO    ] ================================================
[2026-06-19 17:29:35,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:29:35
[2026-06-19 17:29:36,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:29:36,399.399 INFO    ] Initializing speech engine...
[2026-06-19 17:29:36,412.412 INFO    ] 2026-06-19 17:29:36
[2026-06-19 17:29:36,698.698 INFO    ] 2026-06-19 17:29:36
[2026-06-19 17:29:36,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:29:36,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:29:37,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:29:37,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:29:37,245.245 INFO    ] time= 19/06/2026 17:29:37
[2026-06-19 17:29:37,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:29:37,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:29:37,406.406 INFO    ] No existing commands found in stream
[2026-06-19 17:29:42,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:29:42,429.429 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 17:29:45,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:29:45,643.643 INFO    ] Checking for system updates...
[2026-06-19 17:29:45,687.687 INFO    ] 200
[2026-06-19 17:29:45,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:45,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:29:45,758.758 INFO    ] No update needed
[2026-06-19 17:29:45,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 17:29:45,796.796 INFO    ] 200
[2026-06-19 17:29:45,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:45,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:29:45,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:29:45,997.997 INFO    ] No camera update needed
[2026-06-19 17:29:46,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:29:46,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:29:46,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:29:46,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:29:48,055.055 INFO    ] ================================================
[2026-06-19 17:29:48,072.072 INFO    ] Launching Daemon at Fri Jun 19 17:29:48 IST 2026
[2026-06-19 17:29:48,084.084 INFO    ] ================================================
[2026-06-19 17:29:48,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:29:48
[2026-06-19 17:29:49,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:29:49,485.485 INFO    ] Initializing speech engine...
[2026-06-19 17:29:49,500.500 INFO    ] 2026-06-19 17:29:49
[2026-06-19 17:29:49,766.766 INFO    ] 2026-06-19 17:29:49
[2026-06-19 17:29:49,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:29:50,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:29:50,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:29:50,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:29:50,276.276 INFO    ] time= 19/06/2026 17:29:50
[2026-06-19 17:29:50,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:29:50,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:29:50,485.485 INFO    ] No existing commands found in stream
[2026-06-19 17:29:55,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:29:55,505.505 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 17:29:59,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:29:59,463.463 INFO    ] Checking for system updates...
[2026-06-19 17:29:59,499.499 INFO    ] 200
[2026-06-19 17:29:59,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:59,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:29:59,558.558 INFO    ] No update needed
[2026-06-19 17:29:59,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 17:29:59,595.595 INFO    ] 200
[2026-06-19 17:29:59,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:29:59,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:29:59,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:29:59,685.685 INFO    ] No camera update needed
[2026-06-19 17:29:59,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:29:59,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:29:59,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:29:59,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:30:01,742.742 INFO    ] ================================================
[2026-06-19 17:30:01,757.757 INFO    ] Launching Daemon at Fri Jun 19 17:30:01 IST 2026
[2026-06-19 17:30:01,768.768 INFO    ] ================================================
[2026-06-19 17:30:03,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:30:03
[2026-06-19 17:30:03,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:30:04,149.149 INFO    ] Initializing speech engine...
[2026-06-19 17:30:04,163.163 INFO    ] 2026-06-19 17:30:04
[2026-06-19 17:30:04,491.491 INFO    ] 2026-06-19 17:30:04
[2026-06-19 17:30:04,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:30:04,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:30:04,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:30:04,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:30:04,935.935 INFO    ] time= 19/06/2026 17:30:04
[2026-06-19 17:30:04,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:30:04,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:30:05,023.023 INFO    ] No existing commands found in stream
[2026-06-19 17:30:10,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:30:10,041.041 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 17:30:11,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:30:11,560.560 INFO    ] Checking for system updates...
[2026-06-19 17:30:11,600.600 INFO    ] 200
[2026-06-19 17:30:11,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:11,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:30:11,666.666 INFO    ] No update needed
[2026-06-19 17:30:11,668.668 INFO    ] Checking for camera pi updates...
[2026-06-19 17:30:11,702.702 INFO    ] 200
[2026-06-19 17:30:11,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:11,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:30:11,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:30:11,793.793 INFO    ] No camera update needed
[2026-06-19 17:30:11,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:30:11,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:30:11,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:30:11,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:30:13,849.849 INFO    ] ================================================
[2026-06-19 17:30:13,865.865 INFO    ] Launching Daemon at Fri Jun 19 17:30:13 IST 2026
[2026-06-19 17:30:13,876.876 INFO    ] ================================================
[2026-06-19 17:30:14,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:30:14
[2026-06-19 17:30:15,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:30:15,388.388 INFO    ] Initializing speech engine...
[2026-06-19 17:30:15,406.406 INFO    ] 2026-06-19 17:30:15
[2026-06-19 17:30:15,716.716 INFO    ] 2026-06-19 17:30:15
[2026-06-19 17:30:15,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:30:15,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:30:15,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:30:16,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:30:16,167.167 INFO    ] time= 19/06/2026 17:30:16
[2026-06-19 17:30:16,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:30:16,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:30:16,330.330 INFO    ] No existing commands found in stream
[2026-06-19 17:30:21,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:30:21,359.359 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 17:30:22,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:30:23,237.237 INFO    ] Checking for system updates...
[2026-06-19 17:30:23,291.291 INFO    ] 200
[2026-06-19 17:30:23,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:23,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:30:23,363.363 INFO    ] No update needed
[2026-06-19 17:30:23,365.365 INFO    ] Checking for camera pi updates...
[2026-06-19 17:30:23,401.401 INFO    ] 200
[2026-06-19 17:30:23,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:23,445.445 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:30:23,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:30:23,503.503 INFO    ] No camera update needed
[2026-06-19 17:30:23,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:30:23,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:30:23,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:30:23,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:30:25,561.561 INFO    ] ================================================
[2026-06-19 17:30:25,577.577 INFO    ] Launching Daemon at Fri Jun 19 17:30:25 IST 2026
[2026-06-19 17:30:25,588.588 INFO    ] ================================================
[2026-06-19 17:30:26,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:30:26
[2026-06-19 17:30:26,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:30:27,006.006 INFO    ] Initializing speech engine...
[2026-06-19 17:30:27,015.015 INFO    ] 2026-06-19 17:30:27
[2026-06-19 17:30:27,263.263 INFO    ] 2026-06-19 17:30:27
[2026-06-19 17:30:27,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:30:27,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:30:27,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:30:27,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:30:27,679.679 INFO    ] time= 19/06/2026 17:30:27
[2026-06-19 17:30:27,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:30:27,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:30:27,795.795 INFO    ] No existing commands found in stream
[2026-06-19 17:30:32,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:30:32,814.814 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 17:30:34,552.552 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:30:34,554.554 INFO    ] Checking for system updates...
[2026-06-19 17:30:34,600.600 INFO    ] 200
[2026-06-19 17:30:34,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:34,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:30:34,664.664 INFO    ] No update needed
[2026-06-19 17:30:34,666.666 INFO    ] Checking for camera pi updates...
[2026-06-19 17:30:34,700.700 INFO    ] 200
[2026-06-19 17:30:34,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:34,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:30:34,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:30:34,795.795 INFO    ] No camera update needed
[2026-06-19 17:30:34,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:30:34,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:30:34,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:30:34,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:30:36,851.851 INFO    ] ================================================
[2026-06-19 17:30:36,866.866 INFO    ] Launching Daemon at Fri Jun 19 17:30:36 IST 2026
[2026-06-19 17:30:36,877.877 INFO    ] ================================================
[2026-06-19 17:30:37,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:30:37
[2026-06-19 17:30:38,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:30:38,300.300 INFO    ] Initializing speech engine...
[2026-06-19 17:30:38,308.308 INFO    ] 2026-06-19 17:30:38
[2026-06-19 17:30:38,607.607 INFO    ] 2026-06-19 17:30:38
[2026-06-19 17:30:38,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:30:38,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:30:38,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:30:39,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:30:39,079.079 INFO    ] time= 19/06/2026 17:30:39
[2026-06-19 17:30:39,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:30:39,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:30:39,256.256 INFO    ] No existing commands found in stream
[2026-06-19 17:30:44,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:30:44,271.271 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 17:30:45,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:30:45,544.544 INFO    ] Checking for system updates...
[2026-06-19 17:30:45,580.580 INFO    ] 200
[2026-06-19 17:30:45,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:45,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:30:45,640.640 INFO    ] No update needed
[2026-06-19 17:30:45,642.642 INFO    ] Checking for camera pi updates...
[2026-06-19 17:30:45,680.680 INFO    ] 200
[2026-06-19 17:30:45,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:45,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:30:45,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:30:45,771.771 INFO    ] No camera update needed
[2026-06-19 17:30:45,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:30:45,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:30:45,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:30:45,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:30:47,826.826 INFO    ] ================================================
[2026-06-19 17:30:47,841.841 INFO    ] Launching Daemon at Fri Jun 19 17:30:47 IST 2026
[2026-06-19 17:30:47,852.852 INFO    ] ================================================
[2026-06-19 17:30:48,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:30:48
[2026-06-19 17:30:49,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:30:49,483.483 INFO    ] Initializing speech engine...
[2026-06-19 17:30:49,493.493 INFO    ] 2026-06-19 17:30:49
[2026-06-19 17:30:49,812.812 INFO    ] 2026-06-19 17:30:49
[2026-06-19 17:30:49,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:30:50,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:30:50,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:30:50,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:30:50,327.327 INFO    ] time= 19/06/2026 17:30:50
[2026-06-19 17:30:50,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:30:50,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:30:50,494.494 INFO    ] No existing commands found in stream
[2026-06-19 17:30:55,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:30:55,538.538 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 17:30:58,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:30:58,674.674 INFO    ] Checking for system updates...
[2026-06-19 17:30:58,711.711 INFO    ] 200
[2026-06-19 17:30:58,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:58,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:30:58,776.776 INFO    ] No update needed
[2026-06-19 17:30:58,778.778 INFO    ] Checking for camera pi updates...
[2026-06-19 17:30:58,813.813 INFO    ] 200
[2026-06-19 17:30:58,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:30:58,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:30:58,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:30:58,889.889 INFO    ] No camera update needed
[2026-06-19 17:30:58,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:30:58,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:30:58,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:30:58,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:31:00,943.943 INFO    ] ================================================
[2026-06-19 17:31:00,959.959 INFO    ] Launching Daemon at Fri Jun 19 17:31:00 IST 2026
[2026-06-19 17:31:00,969.969 INFO    ] ================================================
[2026-06-19 17:31:01,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:31:01
[2026-06-19 17:31:02,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:31:02,569.569 INFO    ] Initializing speech engine...
[2026-06-19 17:31:02,579.579 INFO    ] 2026-06-19 17:31:02
[2026-06-19 17:31:02,893.893 INFO    ] 2026-06-19 17:31:02
[2026-06-19 17:31:02,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:31:03,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:31:03,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:31:03,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:31:03,339.339 INFO    ] time= 19/06/2026 17:31:03
[2026-06-19 17:31:03,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:31:03,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:31:03,515.515 INFO    ] No existing commands found in stream
[2026-06-19 17:31:08,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:31:08,549.549 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 17:31:09,007.007 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:31:09,010.010 INFO    ] Checking for system updates...
[2026-06-19 17:31:09,046.046 INFO    ] 200
[2026-06-19 17:31:09,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:31:09,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:31:09,104.104 INFO    ] No update needed
[2026-06-19 17:31:09,107.107 INFO    ] Checking for camera pi updates...
[2026-06-19 17:31:09,144.144 INFO    ] 200
[2026-06-19 17:31:09,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:31:09,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:31:09,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:31:09,236.236 INFO    ] No camera update needed
[2026-06-19 17:31:09,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:31:09,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:31:09,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:31:09,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:31:11,296.296 INFO    ] ================================================
[2026-06-19 17:31:11,310.310 INFO    ] Launching Daemon at Fri Jun 19 17:31:11 IST 2026
[2026-06-19 17:31:11,321.321 INFO    ] ================================================
[2026-06-19 17:31:11,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:31:11
[2026-06-19 17:31:12,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:31:12,776.776 INFO    ] Initializing speech engine...
[2026-06-19 17:31:12,789.789 INFO    ] 2026-06-19 17:31:12
[2026-06-19 17:31:13,055.055 INFO    ] 2026-06-19 17:31:13
[2026-06-19 17:31:13,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:31:13,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:31:13,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:31:13,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:31:13,547.547 INFO    ] time= 19/06/2026 17:31:13
[2026-06-19 17:31:13,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:31:13,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:31:13,787.787 INFO    ] No existing commands found in stream
[2026-06-19 17:31:18,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:31:18,820.820 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 17:31:21,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:31:21,586.586 INFO    ] Checking for system updates...
[2026-06-19 17:31:21,622.622 INFO    ] 200
[2026-06-19 17:31:21,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:31:21,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:31:21,679.679 INFO    ] No update needed
[2026-06-19 17:31:21,682.682 INFO    ] Checking for camera pi updates...
[2026-06-19 17:31:21,716.716 INFO    ] 200
[2026-06-19 17:31:21,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:31:21,763.763 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:31:21,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:31:21,807.807 INFO    ] No camera update needed
[2026-06-19 17:31:21,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:31:21,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:31:21,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:31:21,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:31:23,863.863 INFO    ] ================================================
[2026-06-19 17:31:23,878.878 INFO    ] Launching Daemon at Fri Jun 19 17:31:23 IST 2026
[2026-06-19 17:31:23,889.889 INFO    ] ================================================
[2026-06-19 17:31:24,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:31:24
[2026-06-19 17:31:25,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:31:25,511.511 INFO    ] Initializing speech engine...
[2026-06-19 17:31:25,518.518 INFO    ] 2026-06-19 17:31:25
[2026-06-19 17:31:25,825.825 INFO    ] 2026-06-19 17:31:25
[2026-06-19 17:31:25,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:31:26,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:31:26,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:31:26,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:31:26,334.334 INFO    ] time= 19/06/2026 17:31:26
[2026-06-19 17:31:26,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:31:26,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:31:26,499.499 INFO    ] No existing commands found in stream
[2026-06-19 17:31:31,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:31:31,528.528 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 17:31:35,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:31:35,366.366 INFO    ] Checking for system updates...
[2026-06-19 17:31:35,405.405 INFO    ] 200
[2026-06-19 17:31:35,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:31:35,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:31:35,465.465 INFO    ] No update needed
[2026-06-19 17:31:35,468.468 INFO    ] Checking for camera pi updates...
[2026-06-19 17:31:35,506.506 INFO    ] 200
[2026-06-19 17:31:35,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:31:35,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:31:35,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:31:35,599.599 INFO    ] No camera update needed
[2026-06-19 17:31:35,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:31:35,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:31:35,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:31:35,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:31:37,655.655 INFO    ] ================================================
[2026-06-19 17:31:37,671.671 INFO    ] Launching Daemon at Fri Jun 19 17:31:37 IST 2026
[2026-06-19 17:31:37,681.681 INFO    ] ================================================
[2026-06-19 17:31:38,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:31:38
[2026-06-19 17:31:38,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:31:39,084.084 INFO    ] Initializing speech engine...
[2026-06-19 17:31:39,097.097 INFO    ] 2026-06-19 17:31:39
[2026-06-19 17:31:39,361.361 INFO    ] 2026-06-19 17:31:39
[2026-06-19 17:31:39,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:31:39,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:31:39,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:31:39,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:31:39,861.861 INFO    ] time= 19/06/2026 17:31:39
[2026-06-19 17:31:39,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:31:39,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:31:40,071.071 INFO    ] No existing commands found in stream
[2026-06-19 17:31:45,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:31:45,087.087 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 17:31:47,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:31:47,614.614 INFO    ] Checking for system updates...
[2026-06-19 17:31:47,651.651 INFO    ] 200
[2026-06-19 17:31:47,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:31:47,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:31:47,714.714 INFO    ] No update needed
[2026-06-19 17:31:47,717.717 INFO    ] Checking for camera pi updates...
[2026-06-19 17:31:47,750.750 INFO    ] 200
[2026-06-19 17:31:47,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:31:47,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:31:47,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:31:47,929.929 INFO    ] No camera update needed
[2026-06-19 17:31:47,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:31:47,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:31:47,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:31:47,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:31:49,986.986 INFO    ] ================================================
[2026-06-19 17:31:50,001.001 INFO    ] Launching Daemon at Fri Jun 19 17:31:49 IST 2026
[2026-06-19 17:31:50,012.012 INFO    ] ================================================
[2026-06-19 17:31:50,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:31:50
[2026-06-19 17:31:51,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:31:51,498.498 INFO    ] Initializing speech engine...
[2026-06-19 17:31:51,506.506 INFO    ] 2026-06-19 17:31:51
[2026-06-19 17:31:51,767.767 INFO    ] 2026-06-19 17:31:51
[2026-06-19 17:31:51,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:31:52,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:31:52,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:31:52,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:31:52,316.316 INFO    ] time= 19/06/2026 17:31:52
[2026-06-19 17:31:52,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:31:52,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:31:52,489.489 INFO    ] No existing commands found in stream
[2026-06-19 17:31:57,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:31:57,522.522 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 17:32:00,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:32:00,815.815 INFO    ] Checking for system updates...
[2026-06-19 17:32:00,852.852 INFO    ] 200
[2026-06-19 17:32:00,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:00,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:32:00,914.914 INFO    ] No update needed
[2026-06-19 17:32:00,917.917 INFO    ] Checking for camera pi updates...
[2026-06-19 17:32:00,952.952 INFO    ] 200
[2026-06-19 17:32:00,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:01,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:32:01,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:32:01,051.051 INFO    ] No camera update needed
[2026-06-19 17:32:01,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:32:01,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:32:01,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:32:01,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:32:03,114.114 INFO    ] ================================================
[2026-06-19 17:32:03,136.136 INFO    ] Launching Daemon at Fri Jun 19 17:32:03 IST 2026
[2026-06-19 17:32:03,157.157 INFO    ] ================================================
[2026-06-19 17:32:03,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:32:03
[2026-06-19 17:32:04,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:32:04,636.636 INFO    ] Initializing speech engine...
[2026-06-19 17:32:04,645.645 INFO    ] 2026-06-19 17:32:04
[2026-06-19 17:32:04,892.892 INFO    ] 2026-06-19 17:32:04
[2026-06-19 17:32:04,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:32:05,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:32:05,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:32:05,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:32:05,263.263 INFO    ] time= 19/06/2026 17:32:05
[2026-06-19 17:32:05,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:32:05,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:32:05,355.355 INFO    ] No existing commands found in stream
[2026-06-19 17:32:10,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:32:10,393.393 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 17:32:14,230.230 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:32:14,232.232 INFO    ] Checking for system updates...
[2026-06-19 17:32:14,268.268 INFO    ] 200
[2026-06-19 17:32:14,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:14,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:32:14,326.326 INFO    ] No update needed
[2026-06-19 17:32:14,328.328 INFO    ] Checking for camera pi updates...
[2026-06-19 17:32:14,363.363 INFO    ] 200
[2026-06-19 17:32:14,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:14,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:32:14,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:32:14,456.456 INFO    ] No camera update needed
[2026-06-19 17:32:14,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:32:14,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:32:14,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:32:14,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:32:16,512.512 INFO    ] ================================================
[2026-06-19 17:32:16,528.528 INFO    ] Launching Daemon at Fri Jun 19 17:32:16 IST 2026
[2026-06-19 17:32:16,539.539 INFO    ] ================================================
[2026-06-19 17:32:17,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:32:17
[2026-06-19 17:32:17,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:32:18,059.059 INFO    ] Initializing speech engine...
[2026-06-19 17:32:18,074.074 INFO    ] 2026-06-19 17:32:18
[2026-06-19 17:32:18,359.359 INFO    ] 2026-06-19 17:32:18
[2026-06-19 17:32:18,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:32:18,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:32:18,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:32:18,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:32:18,770.770 INFO    ] time= 19/06/2026 17:32:18
[2026-06-19 17:32:18,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:32:18,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:32:18,848.848 INFO    ] No existing commands found in stream
[2026-06-19 17:32:23,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:32:23,860.860 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 17:32:24,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:32:24,562.562 INFO    ] Checking for system updates...
[2026-06-19 17:32:24,599.599 INFO    ] 200
[2026-06-19 17:32:24,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:24,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:32:24,659.659 INFO    ] No update needed
[2026-06-19 17:32:24,661.661 INFO    ] Checking for camera pi updates...
[2026-06-19 17:32:24,697.697 INFO    ] 200
[2026-06-19 17:32:24,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:24,741.741 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:32:24,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:32:24,787.787 INFO    ] No camera update needed
[2026-06-19 17:32:24,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:32:24,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:32:24,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:32:24,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:32:26,846.846 INFO    ] ================================================
[2026-06-19 17:32:26,862.862 INFO    ] Launching Daemon at Fri Jun 19 17:32:26 IST 2026
[2026-06-19 17:32:26,874.874 INFO    ] ================================================
[2026-06-19 17:32:27,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:32:27
[2026-06-19 17:32:28,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:32:28,406.406 INFO    ] Initializing speech engine...
[2026-06-19 17:32:28,418.418 INFO    ] 2026-06-19 17:32:28
[2026-06-19 17:32:28,700.700 INFO    ] 2026-06-19 17:32:28
[2026-06-19 17:32:28,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:32:29,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:32:29,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:32:29,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:32:29,259.259 INFO    ] time= 19/06/2026 17:32:29
[2026-06-19 17:32:29,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:32:29,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:32:29,416.416 INFO    ] No existing commands found in stream
[2026-06-19 17:32:34,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:32:34,437.437 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 17:32:36,397.397 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:32:36,400.400 INFO    ] Checking for system updates...
[2026-06-19 17:32:36,446.446 INFO    ] 200
[2026-06-19 17:32:36,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:36,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:32:36,521.521 INFO    ] No update needed
[2026-06-19 17:32:36,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 17:32:36,559.559 INFO    ] 200
[2026-06-19 17:32:36,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:36,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:32:36,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:32:36,649.649 INFO    ] No camera update needed
[2026-06-19 17:32:36,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:32:36,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:32:36,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:32:36,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:32:38,704.704 INFO    ] ================================================
[2026-06-19 17:32:38,720.720 INFO    ] Launching Daemon at Fri Jun 19 17:32:38 IST 2026
[2026-06-19 17:32:38,732.732 INFO    ] ================================================
[2026-06-19 17:32:39,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:32:39
[2026-06-19 17:32:39,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:32:40,160.160 INFO    ] Initializing speech engine...
[2026-06-19 17:32:40,169.169 INFO    ] 2026-06-19 17:32:40
[2026-06-19 17:32:40,417.417 INFO    ] 2026-06-19 17:32:40
[2026-06-19 17:32:40,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:32:40,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:32:40,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:32:40,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:32:40,875.875 INFO    ] time= 19/06/2026 17:32:40
[2026-06-19 17:32:40,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:32:40,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:32:41,102.102 INFO    ] No existing commands found in stream
[2026-06-19 17:32:46,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:32:46,122.122 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 17:32:47,221.221 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:32:47,224.224 INFO    ] Checking for system updates...
[2026-06-19 17:32:47,264.264 INFO    ] 200
[2026-06-19 17:32:47,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:47,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:32:47,329.329 INFO    ] No update needed
[2026-06-19 17:32:47,332.332 INFO    ] Checking for camera pi updates...
[2026-06-19 17:32:47,368.368 INFO    ] 200
[2026-06-19 17:32:47,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:47,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:32:47,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:32:47,450.450 INFO    ] No camera update needed
[2026-06-19 17:32:47,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:32:47,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:32:47,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:32:47,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:32:49,514.514 INFO    ] ================================================
[2026-06-19 17:32:49,531.531 INFO    ] Launching Daemon at Fri Jun 19 17:32:49 IST 2026
[2026-06-19 17:32:49,542.542 INFO    ] ================================================
[2026-06-19 17:32:50,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:32:50
[2026-06-19 17:32:50,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:32:50,999.999 INFO    ] Initializing speech engine...
[2026-06-19 17:32:51,009.009 INFO    ] 2026-06-19 17:32:51
[2026-06-19 17:32:51,271.271 INFO    ] 2026-06-19 17:32:51
[2026-06-19 17:32:51,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:32:51,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:32:51,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:32:51,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:32:51,756.756 INFO    ] time= 19/06/2026 17:32:51
[2026-06-19 17:32:51,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:32:51,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:32:51,950.950 INFO    ] No existing commands found in stream
[2026-06-19 17:32:56,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:32:56,980.980 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 17:32:57,938.938 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:32:57,941.941 INFO    ] Checking for system updates...
[2026-06-19 17:32:57,977.977 INFO    ] 200
[2026-06-19 17:32:57,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:58,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:32:58,034.034 INFO    ] No update needed
[2026-06-19 17:32:58,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 17:32:58,070.070 INFO    ] 200
[2026-06-19 17:32:58,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:32:58,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:32:58,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:32:58,152.152 INFO    ] No camera update needed
[2026-06-19 17:32:58,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:32:58,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:32:58,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:32:58,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:33:00,207.207 INFO    ] ================================================
[2026-06-19 17:33:00,223.223 INFO    ] Launching Daemon at Fri Jun 19 17:33:00 IST 2026
[2026-06-19 17:33:00,233.233 INFO    ] ================================================
[2026-06-19 17:33:00,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:33:00
[2026-06-19 17:33:01,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:33:01,660.660 INFO    ] Initializing speech engine...
[2026-06-19 17:33:01,669.669 INFO    ] 2026-06-19 17:33:01
[2026-06-19 17:33:02,056.056 INFO    ] 2026-06-19 17:33:02
[2026-06-19 17:33:02,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:33:02,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:33:02,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:33:02,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:33:02,529.529 INFO    ] time= 19/06/2026 17:33:02
[2026-06-19 17:33:02,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:33:02,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:33:02,618.618 INFO    ] No existing commands found in stream
[2026-06-19 17:33:07,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:33:07,648.648 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-19 17:33:11,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:33:11,940.940 INFO    ] Checking for system updates...
[2026-06-19 17:33:11,980.980 INFO    ] 200
[2026-06-19 17:33:11,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:33:12,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:33:12,039.039 INFO    ] No update needed
[2026-06-19 17:33:12,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 17:33:12,075.075 INFO    ] 200
[2026-06-19 17:33:12,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:33:12,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:33:12,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:33:12,169.169 INFO    ] No camera update needed
[2026-06-19 17:33:12,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:33:12,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:33:12,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:33:12,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:33:14,225.225 INFO    ] ================================================
[2026-06-19 17:33:14,241.241 INFO    ] Launching Daemon at Fri Jun 19 17:33:14 IST 2026
[2026-06-19 17:33:14,253.253 INFO    ] ================================================
[2026-06-19 17:33:14,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:33:14
[2026-06-19 17:33:15,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:33:15,899.899 INFO    ] Initializing speech engine...
[2026-06-19 17:33:15,912.912 INFO    ] 2026-06-19 17:33:15
[2026-06-19 17:33:16,166.166 INFO    ] 2026-06-19 17:33:16
[2026-06-19 17:33:16,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:33:16,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:33:16,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:33:16,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:33:16,644.644 INFO    ] time= 19/06/2026 17:33:16
[2026-06-19 17:33:16,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:33:16,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:33:16,862.862 INFO    ] No existing commands found in stream
[2026-06-19 17:33:21,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:33:21,880.880 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 17:33:22,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:33:22,308.308 INFO    ] Checking for system updates...
[2026-06-19 17:33:22,347.347 INFO    ] 200
[2026-06-19 17:33:22,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:33:22,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:33:22,407.407 INFO    ] No update needed
[2026-06-19 17:33:22,409.409 INFO    ] Checking for camera pi updates...
[2026-06-19 17:33:22,443.443 INFO    ] 200
[2026-06-19 17:33:22,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:33:22,491.491 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:33:22,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:33:22,541.541 INFO    ] No camera update needed
[2026-06-19 17:33:22,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:33:22,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:33:22,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:33:22,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:33:24,597.597 INFO    ] ================================================
[2026-06-19 17:33:24,613.613 INFO    ] Launching Daemon at Fri Jun 19 17:33:24 IST 2026
[2026-06-19 17:33:24,624.624 INFO    ] ================================================
[2026-06-19 17:33:25,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:33:25
[2026-06-19 17:33:25,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:33:26,177.177 INFO    ] Initializing speech engine...
[2026-06-19 17:33:26,192.192 INFO    ] 2026-06-19 17:33:26
[2026-06-19 17:33:26,449.449 INFO    ] 2026-06-19 17:33:26
[2026-06-19 17:33:26,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:33:26,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:33:26,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:33:26,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:33:26,941.941 INFO    ] time= 19/06/2026 17:33:26
[2026-06-19 17:33:26,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:33:27,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:33:27,146.146 INFO    ] No existing commands found in stream
[2026-06-19 17:33:32,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:33:32,179.179 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 17:33:36,490.490 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:33:36,493.493 INFO    ] Checking for system updates...
[2026-06-19 17:33:36,530.530 INFO    ] 200
[2026-06-19 17:33:36,533.533 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:33:36,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:33:36,598.598 INFO    ] No update needed
[2026-06-19 17:33:36,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 17:33:36,642.642 INFO    ] 200
[2026-06-19 17:33:36,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:33:36,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:33:36,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:33:36,738.738 INFO    ] No camera update needed
[2026-06-19 17:33:36,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:33:36,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:33:36,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:33:36,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:33:38,796.796 INFO    ] ================================================
[2026-06-19 17:33:38,812.812 INFO    ] Launching Daemon at Fri Jun 19 17:33:38 IST 2026
[2026-06-19 17:33:38,824.824 INFO    ] ================================================
[2026-06-19 17:33:39,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:33:39
[2026-06-19 17:33:40,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:33:40,463.463 INFO    ] Initializing speech engine...
[2026-06-19 17:33:40,470.470 INFO    ] 2026-06-19 17:33:40
[2026-06-19 17:33:40,729.729 INFO    ] 2026-06-19 17:33:40
[2026-06-19 17:33:40,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:33:40,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:33:41,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:33:41,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:33:41,191.191 INFO    ] time= 19/06/2026 17:33:41
[2026-06-19 17:33:41,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:33:41,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:33:41,406.406 INFO    ] No existing commands found in stream
[2026-06-19 17:33:46,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:33:46,434.434 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 17:33:48,511.511 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:33:48,514.514 INFO    ] Checking for system updates...
[2026-06-19 17:33:48,551.551 INFO    ] 200
[2026-06-19 17:33:48,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:33:48,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:33:48,610.610 INFO    ] No update needed
[2026-06-19 17:33:48,613.613 INFO    ] Checking for camera pi updates...
[2026-06-19 17:33:48,656.656 INFO    ] 200
[2026-06-19 17:33:48,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:33:48,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:33:48,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:33:48,837.837 INFO    ] No camera update needed
[2026-06-19 17:33:48,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:33:48,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:33:48,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:33:48,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:33:50,893.893 INFO    ] ================================================
[2026-06-19 17:33:50,909.909 INFO    ] Launching Daemon at Fri Jun 19 17:33:50 IST 2026
[2026-06-19 17:33:50,920.920 INFO    ] ================================================
[2026-06-19 17:33:51,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:33:51
[2026-06-19 17:33:52,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:33:52,343.343 INFO    ] Initializing speech engine...
[2026-06-19 17:33:52,352.352 INFO    ] 2026-06-19 17:33:52
[2026-06-19 17:33:52,606.606 INFO    ] 2026-06-19 17:33:52
[2026-06-19 17:33:52,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:33:52,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:33:52,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:33:53,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:33:53,157.157 INFO    ] time= 19/06/2026 17:33:53
[2026-06-19 17:33:53,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:33:53,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:33:53,343.343 INFO    ] No existing commands found in stream
[2026-06-19 17:33:58,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:33:58,382.382 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 17:34:01,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:34:01,283.283 INFO    ] Checking for system updates...
[2026-06-19 17:34:01,322.322 INFO    ] 200
[2026-06-19 17:34:01,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:01,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:34:01,383.383 INFO    ] No update needed
[2026-06-19 17:34:01,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 17:34:01,424.424 INFO    ] 200
[2026-06-19 17:34:01,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:01,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:34:01,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:34:01,546.546 INFO    ] No camera update needed
[2026-06-19 17:34:01,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:34:01,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:34:01,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:34:01,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:34:03,604.604 INFO    ] ================================================
[2026-06-19 17:34:03,621.621 INFO    ] Launching Daemon at Fri Jun 19 17:34:03 IST 2026
[2026-06-19 17:34:03,632.632 INFO    ] ================================================
[2026-06-19 17:34:04,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:34:04
[2026-06-19 17:34:04,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:34:05,169.169 INFO    ] Initializing speech engine...
[2026-06-19 17:34:05,182.182 INFO    ] 2026-06-19 17:34:05
[2026-06-19 17:34:05,447.447 INFO    ] 2026-06-19 17:34:05
[2026-06-19 17:34:05,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:34:05,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:34:05,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:34:05,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:34:05,904.904 INFO    ] time= 19/06/2026 17:34:05
[2026-06-19 17:34:05,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:34:06,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:34:06,142.142 INFO    ] No existing commands found in stream
[2026-06-19 17:34:11,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:34:11,167.167 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 17:34:15,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:34:15,204.204 INFO    ] Checking for system updates...
[2026-06-19 17:34:15,240.240 INFO    ] 200
[2026-06-19 17:34:15,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:15,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:34:15,298.298 INFO    ] No update needed
[2026-06-19 17:34:15,300.300 INFO    ] Checking for camera pi updates...
[2026-06-19 17:34:15,335.335 INFO    ] 200
[2026-06-19 17:34:15,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:15,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:34:15,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:34:15,432.432 INFO    ] No camera update needed
[2026-06-19 17:34:15,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:34:15,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:34:15,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:34:15,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:34:17,488.488 INFO    ] ================================================
[2026-06-19 17:34:17,504.504 INFO    ] Launching Daemon at Fri Jun 19 17:34:17 IST 2026
[2026-06-19 17:34:17,515.515 INFO    ] ================================================
[2026-06-19 17:34:18,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:34:18
[2026-06-19 17:34:18,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:34:18,986.986 INFO    ] Initializing speech engine...
[2026-06-19 17:34:18,996.996 INFO    ] 2026-06-19 17:34:18
[2026-06-19 17:34:19,256.256 INFO    ] 2026-06-19 17:34:19
[2026-06-19 17:34:19,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:34:19,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:34:19,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:34:19,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:34:19,702.702 INFO    ] time= 19/06/2026 17:34:19
[2026-06-19 17:34:19,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:34:19,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:34:19,901.901 INFO    ] No existing commands found in stream
[2026-06-19 17:34:24,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:34:24,916.916 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 17:34:25,695.695 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:34:25,698.698 INFO    ] Checking for system updates...
[2026-06-19 17:34:25,737.737 INFO    ] 200
[2026-06-19 17:34:25,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:25,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:34:25,795.795 INFO    ] No update needed
[2026-06-19 17:34:25,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 17:34:25,835.835 INFO    ] 200
[2026-06-19 17:34:25,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:25,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:34:25,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:34:25,932.932 INFO    ] No camera update needed
[2026-06-19 17:34:25,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:34:25,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:34:25,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:34:25,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:34:27,989.989 INFO    ] ================================================
[2026-06-19 17:34:28,005.005 INFO    ] Launching Daemon at Fri Jun 19 17:34:27 IST 2026
[2026-06-19 17:34:28,016.016 INFO    ] ================================================
[2026-06-19 17:34:28,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:34:28
[2026-06-19 17:34:29,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:34:29,434.434 INFO    ] Initializing speech engine...
[2026-06-19 17:34:29,461.461 INFO    ] 2026-06-19 17:34:29
[2026-06-19 17:34:29,729.729 INFO    ] 2026-06-19 17:34:29
[2026-06-19 17:34:29,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:34:29,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:34:29,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:34:30,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:34:30,141.141 INFO    ] time= 19/06/2026 17:34:30
[2026-06-19 17:34:30,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:34:30,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:34:30,228.228 INFO    ] No existing commands found in stream
[2026-06-19 17:34:35,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:34:35,256.256 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 17:34:38,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:34:38,630.630 INFO    ] Checking for system updates...
[2026-06-19 17:34:38,666.666 INFO    ] 200
[2026-06-19 17:34:38,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:38,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:34:38,729.729 INFO    ] No update needed
[2026-06-19 17:34:38,732.732 INFO    ] Checking for camera pi updates...
[2026-06-19 17:34:38,766.766 INFO    ] 200
[2026-06-19 17:34:38,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:38,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:34:38,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:34:38,869.869 INFO    ] No camera update needed
[2026-06-19 17:34:38,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:34:38,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:34:38,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:34:38,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:34:40,925.925 INFO    ] ================================================
[2026-06-19 17:34:40,941.941 INFO    ] Launching Daemon at Fri Jun 19 17:34:40 IST 2026
[2026-06-19 17:34:40,953.953 INFO    ] ================================================
[2026-06-19 17:34:41,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:34:41
[2026-06-19 17:34:42,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:34:42,535.535 INFO    ] Initializing speech engine...
[2026-06-19 17:34:42,544.544 INFO    ] 2026-06-19 17:34:42
[2026-06-19 17:34:42,842.842 INFO    ] 2026-06-19 17:34:42
[2026-06-19 17:34:42,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:34:43,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:34:43,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:34:43,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:34:43,384.384 INFO    ] time= 19/06/2026 17:34:43
[2026-06-19 17:34:43,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:34:43,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:34:43,528.528 INFO    ] No existing commands found in stream
[2026-06-19 17:34:48,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:34:48,558.558 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 17:34:50,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:34:50,642.642 INFO    ] Checking for system updates...
[2026-06-19 17:34:50,682.682 INFO    ] 200
[2026-06-19 17:34:50,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:50,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:34:50,748.748 INFO    ] No update needed
[2026-06-19 17:34:50,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 17:34:50,789.789 INFO    ] 200
[2026-06-19 17:34:50,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:34:50,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:34:50,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:34:50,885.885 INFO    ] No camera update needed
[2026-06-19 17:34:50,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:34:50,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:34:50,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:34:50,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:34:52,944.944 INFO    ] ================================================
[2026-06-19 17:34:52,960.960 INFO    ] Launching Daemon at Fri Jun 19 17:34:52 IST 2026
[2026-06-19 17:34:52,971.971 INFO    ] ================================================
[2026-06-19 17:34:53,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:34:53
[2026-06-19 17:34:54,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:34:54,389.389 INFO    ] Initializing speech engine...
[2026-06-19 17:34:54,411.411 INFO    ] 2026-06-19 17:34:54
[2026-06-19 17:34:54,663.663 INFO    ] 2026-06-19 17:34:54
[2026-06-19 17:34:54,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:34:54,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:34:54,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:34:55,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:34:55,127.127 INFO    ] time= 19/06/2026 17:34:55
[2026-06-19 17:34:55,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:34:55,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:34:55,346.346 INFO    ] No existing commands found in stream
[2026-06-19 17:35:00,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:35:00,374.374 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 17:35:02,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:35:02,219.219 INFO    ] Checking for system updates...
[2026-06-19 17:35:02,281.281 INFO    ] 200
[2026-06-19 17:35:02,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:02,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:35:02,351.351 INFO    ] No update needed
[2026-06-19 17:35:02,354.354 INFO    ] Checking for camera pi updates...
[2026-06-19 17:35:02,392.392 INFO    ] 200
[2026-06-19 17:35:02,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:02,446.446 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:35:02,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:35:02,480.480 INFO    ] No camera update needed
[2026-06-19 17:35:02,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:35:02,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:35:02,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:35:02,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:35:04,550.550 INFO    ] ================================================
[2026-06-19 17:35:04,566.566 INFO    ] Launching Daemon at Fri Jun 19 17:35:04 IST 2026
[2026-06-19 17:35:04,578.578 INFO    ] ================================================
[2026-06-19 17:35:05,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:35:05
[2026-06-19 17:35:05,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:35:05,997.997 INFO    ] Initializing speech engine...
[2026-06-19 17:35:06,023.023 INFO    ] 2026-06-19 17:35:05
[2026-06-19 17:35:06,300.300 INFO    ] 2026-06-19 17:35:06
[2026-06-19 17:35:06,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:35:06,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:35:06,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:35:06,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:35:06,691.691 INFO    ] time= 19/06/2026 17:35:06
[2026-06-19 17:35:06,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:35:06,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:35:06,803.803 INFO    ] No existing commands found in stream
[2026-06-19 17:35:11,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:35:11,820.820 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 17:35:14,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:35:14,338.338 INFO    ] Checking for system updates...
[2026-06-19 17:35:14,374.374 INFO    ] 200
[2026-06-19 17:35:14,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:14,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:35:14,432.432 INFO    ] No update needed
[2026-06-19 17:35:14,435.435 INFO    ] Checking for camera pi updates...
[2026-06-19 17:35:14,475.475 INFO    ] 200
[2026-06-19 17:35:14,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:14,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:35:14,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:35:14,577.577 INFO    ] No camera update needed
[2026-06-19 17:35:14,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:35:14,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:35:14,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:35:14,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:35:16,634.634 INFO    ] ================================================
[2026-06-19 17:35:16,650.650 INFO    ] Launching Daemon at Fri Jun 19 17:35:16 IST 2026
[2026-06-19 17:35:16,661.661 INFO    ] ================================================
[2026-06-19 17:35:17,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:35:17
[2026-06-19 17:35:17,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:35:18,196.196 INFO    ] Initializing speech engine...
[2026-06-19 17:35:18,205.205 INFO    ] 2026-06-19 17:35:18
[2026-06-19 17:35:18,480.480 INFO    ] 2026-06-19 17:35:18
[2026-06-19 17:35:18,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:35:18,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:35:18,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:35:18,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:35:18,938.938 INFO    ] time= 19/06/2026 17:35:18
[2026-06-19 17:35:18,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:35:19,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:35:19,155.155 INFO    ] No existing commands found in stream
[2026-06-19 17:35:24,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:35:24,186.186 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 17:35:27,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:35:27,436.436 INFO    ] Checking for system updates...
[2026-06-19 17:35:27,473.473 INFO    ] 200
[2026-06-19 17:35:27,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:27,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:35:27,543.543 INFO    ] No update needed
[2026-06-19 17:35:27,546.546 INFO    ] Checking for camera pi updates...
[2026-06-19 17:35:27,586.586 INFO    ] 200
[2026-06-19 17:35:27,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:27,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:35:27,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:35:27,686.686 INFO    ] No camera update needed
[2026-06-19 17:35:27,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:35:27,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:35:27,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:35:27,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:35:29,746.746 INFO    ] ================================================
[2026-06-19 17:35:29,762.762 INFO    ] Launching Daemon at Fri Jun 19 17:35:29 IST 2026
[2026-06-19 17:35:29,773.773 INFO    ] ================================================
[2026-06-19 17:35:30,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:35:30
[2026-06-19 17:35:30,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:35:31,281.281 INFO    ] Initializing speech engine...
[2026-06-19 17:35:31,287.287 INFO    ] 2026-06-19 17:35:31
[2026-06-19 17:35:31,551.551 INFO    ] 2026-06-19 17:35:31
[2026-06-19 17:35:31,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:35:31,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:35:31,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:35:32,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:35:32,126.126 INFO    ] time= 19/06/2026 17:35:32
[2026-06-19 17:35:32,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:35:32,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:35:32,286.286 INFO    ] No existing commands found in stream
[2026-06-19 17:35:37,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:35:37,304.304 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 17:35:37,937.937 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:35:37,940.940 INFO    ] Checking for system updates...
[2026-06-19 17:35:37,976.976 INFO    ] 200
[2026-06-19 17:35:37,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:38,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:35:38,034.034 INFO    ] No update needed
[2026-06-19 17:35:38,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 17:35:38,074.074 INFO    ] 200
[2026-06-19 17:35:38,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:38,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:35:38,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:35:38,170.170 INFO    ] No camera update needed
[2026-06-19 17:35:38,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:35:38,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:35:38,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:35:38,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:35:40,226.226 INFO    ] ================================================
[2026-06-19 17:35:40,242.242 INFO    ] Launching Daemon at Fri Jun 19 17:35:40 IST 2026
[2026-06-19 17:35:40,253.253 INFO    ] ================================================
[2026-06-19 17:35:40,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:35:40
[2026-06-19 17:35:41,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:35:41,667.667 INFO    ] Initializing speech engine...
[2026-06-19 17:35:41,673.673 INFO    ] 2026-06-19 17:35:41
[2026-06-19 17:35:41,949.949 INFO    ] 2026-06-19 17:35:41
[2026-06-19 17:35:41,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:35:42,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:35:42,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:35:42,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:35:42,449.449 INFO    ] time= 19/06/2026 17:35:42
[2026-06-19 17:35:42,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:35:42,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:35:42,659.659 INFO    ] No existing commands found in stream
[2026-06-19 17:35:47,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:35:47,684.684 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 17:35:52,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:35:52,010.010 INFO    ] Checking for system updates...
[2026-06-19 17:35:52,048.048 INFO    ] 200
[2026-06-19 17:35:52,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:52,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:35:52,108.108 INFO    ] No update needed
[2026-06-19 17:35:52,110.110 INFO    ] Checking for camera pi updates...
[2026-06-19 17:35:52,156.156 INFO    ] 200
[2026-06-19 17:35:52,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:35:52,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:35:52,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:35:52,349.349 INFO    ] No camera update needed
[2026-06-19 17:35:52,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:35:52,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:35:52,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:35:52,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:35:54,403.403 INFO    ] ================================================
[2026-06-19 17:35:54,418.418 INFO    ] Launching Daemon at Fri Jun 19 17:35:54 IST 2026
[2026-06-19 17:35:54,429.429 INFO    ] ================================================
[2026-06-19 17:35:55,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:35:54
[2026-06-19 17:35:55,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:35:55,841.841 INFO    ] Initializing speech engine...
[2026-06-19 17:35:55,847.847 INFO    ] 2026-06-19 17:35:55
[2026-06-19 17:35:56,143.143 INFO    ] 2026-06-19 17:35:56
[2026-06-19 17:35:56,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:35:56,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:35:56,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:35:56,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:35:56,600.600 INFO    ] time= 19/06/2026 17:35:56
[2026-06-19 17:35:56,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:35:56,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:35:56,782.782 INFO    ] No existing commands found in stream
[2026-06-19 17:36:01,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:36:01,799.799 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 17:36:02,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:36:02,280.280 INFO    ] Checking for system updates...
[2026-06-19 17:36:02,320.320 INFO    ] 200
[2026-06-19 17:36:02,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:02,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:36:02,399.399 INFO    ] No update needed
[2026-06-19 17:36:02,402.402 INFO    ] Checking for camera pi updates...
[2026-06-19 17:36:02,442.442 INFO    ] 200
[2026-06-19 17:36:02,446.446 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:02,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:36:02,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:36:02,538.538 INFO    ] No camera update needed
[2026-06-19 17:36:02,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:36:02,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:36:02,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:36:02,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:36:04,599.599 INFO    ] ================================================
[2026-06-19 17:36:04,615.615 INFO    ] Launching Daemon at Fri Jun 19 17:36:04 IST 2026
[2026-06-19 17:36:04,626.626 INFO    ] ================================================
[2026-06-19 17:36:05,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:36:05
[2026-06-19 17:36:05,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:36:06,130.130 INFO    ] Initializing speech engine...
[2026-06-19 17:36:06,144.144 INFO    ] 2026-06-19 17:36:06
[2026-06-19 17:36:06,428.428 INFO    ] 2026-06-19 17:36:06
[2026-06-19 17:36:06,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:36:06,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:36:06,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:36:06,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:36:06,912.912 INFO    ] time= 19/06/2026 17:36:06
[2026-06-19 17:36:06,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:36:07,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:36:07,140.140 INFO    ] No existing commands found in stream
[2026-06-19 17:36:12,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:36:12,166.166 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 17:36:14,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:36:14,884.884 INFO    ] Checking for system updates...
[2026-06-19 17:36:14,923.923 INFO    ] 200
[2026-06-19 17:36:14,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:14,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:36:14,984.984 INFO    ] No update needed
[2026-06-19 17:36:14,987.987 INFO    ] Checking for camera pi updates...
[2026-06-19 17:36:15,024.024 INFO    ] 200
[2026-06-19 17:36:15,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:15,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:36:15,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:36:15,127.127 INFO    ] No camera update needed
[2026-06-19 17:36:15,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:36:15,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:36:15,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:36:15,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:36:17,187.187 INFO    ] ================================================
[2026-06-19 17:36:17,203.203 INFO    ] Launching Daemon at Fri Jun 19 17:36:17 IST 2026
[2026-06-19 17:36:17,215.215 INFO    ] ================================================
[2026-06-19 17:36:17,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:36:17
[2026-06-19 17:36:18,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:36:18,641.641 INFO    ] Initializing speech engine...
[2026-06-19 17:36:18,649.649 INFO    ] 2026-06-19 17:36:18
[2026-06-19 17:36:18,902.902 INFO    ] 2026-06-19 17:36:18
[2026-06-19 17:36:18,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:36:19,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:36:19,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:36:19,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:36:19,369.369 INFO    ] time= 19/06/2026 17:36:19
[2026-06-19 17:36:19,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:36:19,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:36:19,589.589 INFO    ] No existing commands found in stream
[2026-06-19 17:36:24,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:36:24,618.618 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 17:36:25,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:36:25,861.861 INFO    ] Checking for system updates...
[2026-06-19 17:36:25,901.901 INFO    ] 200
[2026-06-19 17:36:25,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:25,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:36:25,966.966 INFO    ] No update needed
[2026-06-19 17:36:25,968.968 INFO    ] Checking for camera pi updates...
[2026-06-19 17:36:26,003.003 INFO    ] 200
[2026-06-19 17:36:26,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:26,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:36:26,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:36:26,097.097 INFO    ] No camera update needed
[2026-06-19 17:36:26,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:36:26,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:36:26,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:36:26,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:36:28,154.154 INFO    ] ================================================
[2026-06-19 17:36:28,169.169 INFO    ] Launching Daemon at Fri Jun 19 17:36:28 IST 2026
[2026-06-19 17:36:28,181.181 INFO    ] ================================================
[2026-06-19 17:36:28,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:36:28
[2026-06-19 17:36:29,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:36:29,598.598 INFO    ] Initializing speech engine...
[2026-06-19 17:36:29,607.607 INFO    ] 2026-06-19 17:36:29
[2026-06-19 17:36:29,883.883 INFO    ] 2026-06-19 17:36:29
[2026-06-19 17:36:29,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:36:30,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:36:30,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:36:30,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:36:30,375.375 INFO    ] time= 19/06/2026 17:36:30
[2026-06-19 17:36:30,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:36:30,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:36:30,579.579 INFO    ] No existing commands found in stream
[2026-06-19 17:36:35,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:36:35,599.599 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 17:36:37,317.317 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:36:37,319.319 INFO    ] Checking for system updates...
[2026-06-19 17:36:37,356.356 INFO    ] 200
[2026-06-19 17:36:37,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:37,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:36:37,412.412 INFO    ] No update needed
[2026-06-19 17:36:37,415.415 INFO    ] Checking for camera pi updates...
[2026-06-19 17:36:37,454.454 INFO    ] 200
[2026-06-19 17:36:37,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:37,497.497 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:36:37,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:36:37,529.529 INFO    ] No camera update needed
[2026-06-19 17:36:37,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:36:37,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:36:37,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:36:37,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:36:39,585.585 INFO    ] ================================================
[2026-06-19 17:36:39,601.601 INFO    ] Launching Daemon at Fri Jun 19 17:36:39 IST 2026
[2026-06-19 17:36:39,612.612 INFO    ] ================================================
[2026-06-19 17:36:40,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:36:40
[2026-06-19 17:36:40,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:36:41,073.073 INFO    ] Initializing speech engine...
[2026-06-19 17:36:41,092.092 INFO    ] 2026-06-19 17:36:41
[2026-06-19 17:36:41,339.339 INFO    ] 2026-06-19 17:36:41
[2026-06-19 17:36:41,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:36:41,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:36:41,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:36:41,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:36:41,812.812 INFO    ] time= 19/06/2026 17:36:41
[2026-06-19 17:36:41,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:36:41,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:36:42,049.049 INFO    ] No existing commands found in stream
[2026-06-19 17:36:47,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:36:47,075.075 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 17:36:48,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:36:48,823.823 INFO    ] Checking for system updates...
[2026-06-19 17:36:48,859.859 INFO    ] 200
[2026-06-19 17:36:48,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:48,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:36:48,918.918 INFO    ] No update needed
[2026-06-19 17:36:48,921.921 INFO    ] Checking for camera pi updates...
[2026-06-19 17:36:48,955.955 INFO    ] 200
[2026-06-19 17:36:48,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:36:48,999.999 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:36:49,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:36:49,040.040 INFO    ] No camera update needed
[2026-06-19 17:36:49,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:36:49,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:36:49,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:36:49,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:36:51,096.096 INFO    ] ================================================
[2026-06-19 17:36:51,112.112 INFO    ] Launching Daemon at Fri Jun 19 17:36:51 IST 2026
[2026-06-19 17:36:51,123.123 INFO    ] ================================================
[2026-06-19 17:36:51,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:36:51
[2026-06-19 17:36:52,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:36:52,576.576 INFO    ] Initializing speech engine...
[2026-06-19 17:36:52,583.583 INFO    ] 2026-06-19 17:36:52
[2026-06-19 17:36:52,858.858 INFO    ] 2026-06-19 17:36:52
[2026-06-19 17:36:52,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:36:53,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:36:53,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:36:53,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:36:53,366.366 INFO    ] time= 19/06/2026 17:36:53
[2026-06-19 17:36:53,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:36:53,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:36:53,578.578 INFO    ] No existing commands found in stream
[2026-06-19 17:36:58,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:36:58,596.596 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 17:37:00,127.127 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:37:00,130.130 INFO    ] Checking for system updates...
[2026-06-19 17:37:00,170.170 INFO    ] 200
[2026-06-19 17:37:00,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:00,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:37:00,235.235 INFO    ] No update needed
[2026-06-19 17:37:00,238.238 INFO    ] Checking for camera pi updates...
[2026-06-19 17:37:00,276.276 INFO    ] 200
[2026-06-19 17:37:00,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:00,320.320 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:37:00,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:37:00,371.371 INFO    ] No camera update needed
[2026-06-19 17:37:00,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:37:00,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:37:00,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:37:00,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:37:02,431.431 INFO    ] ================================================
[2026-06-19 17:37:02,450.450 INFO    ] Launching Daemon at Fri Jun 19 17:37:02 IST 2026
[2026-06-19 17:37:02,463.463 INFO    ] ================================================
[2026-06-19 17:37:03,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:37:03
[2026-06-19 17:37:03,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:37:04,030.030 INFO    ] Initializing speech engine...
[2026-06-19 17:37:04,037.037 INFO    ] 2026-06-19 17:37:04
[2026-06-19 17:37:04,299.299 INFO    ] 2026-06-19 17:37:04
[2026-06-19 17:37:04,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:37:04,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:37:04,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:37:04,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:37:04,764.764 INFO    ] time= 19/06/2026 17:37:04
[2026-06-19 17:37:04,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:37:04,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:37:04,980.980 INFO    ] No existing commands found in stream
[2026-06-19 17:37:10,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:37:10,005.005 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 17:37:10,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:37:10,664.664 INFO    ] Checking for system updates...
[2026-06-19 17:37:10,700.700 INFO    ] 200
[2026-06-19 17:37:10,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:10,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:37:10,767.767 INFO    ] No update needed
[2026-06-19 17:37:10,770.770 INFO    ] Checking for camera pi updates...
[2026-06-19 17:37:10,804.804 INFO    ] 200
[2026-06-19 17:37:10,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:10,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:37:10,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:37:10,901.901 INFO    ] No camera update needed
[2026-06-19 17:37:10,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:37:10,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:37:10,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:37:10,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:37:12,960.960 INFO    ] ================================================
[2026-06-19 17:37:12,975.975 INFO    ] Launching Daemon at Fri Jun 19 17:37:12 IST 2026
[2026-06-19 17:37:12,986.986 INFO    ] ================================================
[2026-06-19 17:37:13,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:37:13
[2026-06-19 17:37:14,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:37:14,634.634 INFO    ] Initializing speech engine...
[2026-06-19 17:37:14,643.643 INFO    ] 2026-06-19 17:37:14
[2026-06-19 17:37:14,934.934 INFO    ] 2026-06-19 17:37:14
[2026-06-19 17:37:14,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:37:15,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:37:15,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:37:15,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:37:15,486.486 INFO    ] time= 19/06/2026 17:37:15
[2026-06-19 17:37:15,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:37:15,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:37:15,661.661 INFO    ] No existing commands found in stream
[2026-06-19 17:37:20,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:37:20,690.690 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 17:37:22,992.992 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:37:22,995.995 INFO    ] Checking for system updates...
[2026-06-19 17:37:23,032.032 INFO    ] 200
[2026-06-19 17:37:23,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:23,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:37:23,091.091 INFO    ] No update needed
[2026-06-19 17:37:23,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 17:37:23,129.129 INFO    ] 200
[2026-06-19 17:37:23,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:23,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:37:23,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:37:23,226.226 INFO    ] No camera update needed
[2026-06-19 17:37:23,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:37:23,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:37:23,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:37:23,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:37:25,280.280 INFO    ] ================================================
[2026-06-19 17:37:25,297.297 INFO    ] Launching Daemon at Fri Jun 19 17:37:25 IST 2026
[2026-06-19 17:37:25,307.307 INFO    ] ================================================
[2026-06-19 17:37:25,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:37:25
[2026-06-19 17:37:26,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:37:26,962.962 INFO    ] Initializing speech engine...
[2026-06-19 17:37:26,967.967 INFO    ] 2026-06-19 17:37:26
[2026-06-19 17:37:27,243.243 INFO    ] 2026-06-19 17:37:27
[2026-06-19 17:37:27,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:37:27,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:37:27,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:37:27,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:37:27,728.728 INFO    ] time= 19/06/2026 17:37:27
[2026-06-19 17:37:27,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:37:27,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:37:27,969.969 INFO    ] No existing commands found in stream
[2026-06-19 17:37:32,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:37:32,989.989 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 17:37:35,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:37:35,631.631 INFO    ] Checking for system updates...
[2026-06-19 17:37:35,673.673 INFO    ] 200
[2026-06-19 17:37:35,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:35,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:37:35,741.741 INFO    ] No update needed
[2026-06-19 17:37:35,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 17:37:35,780.780 INFO    ] 200
[2026-06-19 17:37:35,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:35,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:37:35,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:37:35,873.873 INFO    ] No camera update needed
[2026-06-19 17:37:35,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:37:35,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:37:35,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:37:35,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:37:37,929.929 INFO    ] ================================================
[2026-06-19 17:37:37,945.945 INFO    ] Launching Daemon at Fri Jun 19 17:37:37 IST 2026
[2026-06-19 17:37:37,956.956 INFO    ] ================================================
[2026-06-19 17:37:38,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:37:38
[2026-06-19 17:37:39,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:37:39,405.405 INFO    ] Initializing speech engine...
[2026-06-19 17:37:39,411.411 INFO    ] 2026-06-19 17:37:39
[2026-06-19 17:37:39,667.667 INFO    ] 2026-06-19 17:37:39
[2026-06-19 17:37:39,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:37:39,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:37:39,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:37:40,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:37:40,133.133 INFO    ] time= 19/06/2026 17:37:40
[2026-06-19 17:37:40,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:37:40,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:37:40,287.287 INFO    ] No existing commands found in stream
[2026-06-19 17:37:45,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:37:45,300.300 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 17:37:45,757.757 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:37:45,759.759 INFO    ] Checking for system updates...
[2026-06-19 17:37:45,796.796 INFO    ] 200
[2026-06-19 17:37:45,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:45,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:37:45,853.853 INFO    ] No update needed
[2026-06-19 17:37:45,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 17:37:45,898.898 INFO    ] 200
[2026-06-19 17:37:45,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:45,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:37:45,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:37:45,992.992 INFO    ] No camera update needed
[2026-06-19 17:37:45,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:37:45,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:37:46,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:37:46,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:37:48,048.048 INFO    ] ================================================
[2026-06-19 17:37:48,063.063 INFO    ] Launching Daemon at Fri Jun 19 17:37:48 IST 2026
[2026-06-19 17:37:48,074.074 INFO    ] ================================================
[2026-06-19 17:37:48,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:37:48
[2026-06-19 17:37:49,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:37:49,534.534 INFO    ] Initializing speech engine...
[2026-06-19 17:37:49,541.541 INFO    ] 2026-06-19 17:37:49
[2026-06-19 17:37:49,802.802 INFO    ] 2026-06-19 17:37:49
[2026-06-19 17:37:49,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:37:50,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:37:50,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:37:50,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:37:50,305.305 INFO    ] time= 19/06/2026 17:37:50
[2026-06-19 17:37:50,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:37:50,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:37:50,501.501 INFO    ] No existing commands found in stream
[2026-06-19 17:37:55,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:37:55,518.518 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 17:37:57,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:37:57,343.343 INFO    ] Checking for system updates...
[2026-06-19 17:37:57,379.379 INFO    ] 200
[2026-06-19 17:37:57,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:57,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:37:57,437.437 INFO    ] No update needed
[2026-06-19 17:37:57,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 17:37:57,473.473 INFO    ] 200
[2026-06-19 17:37:57,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:37:57,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:37:57,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:37:57,668.668 INFO    ] No camera update needed
[2026-06-19 17:37:57,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:37:57,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:37:57,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:37:57,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:37:59,726.726 INFO    ] ================================================
[2026-06-19 17:37:59,741.741 INFO    ] Launching Daemon at Fri Jun 19 17:37:59 IST 2026
[2026-06-19 17:37:59,752.752 INFO    ] ================================================
[2026-06-19 17:38:00,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:38:00
[2026-06-19 17:38:00,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:38:01,196.196 INFO    ] Initializing speech engine...
[2026-06-19 17:38:01,204.204 INFO    ] 2026-06-19 17:38:01
[2026-06-19 17:38:01,468.468 INFO    ] 2026-06-19 17:38:01
[2026-06-19 17:38:01,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:38:01,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:38:01,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:38:01,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:38:01,939.939 INFO    ] time= 19/06/2026 17:38:01
[2026-06-19 17:38:01,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:38:01,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:38:02,018.018 INFO    ] No existing commands found in stream
[2026-06-19 17:38:07,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:38:07,032.032 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 17:38:07,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:38:07,439.439 INFO    ] Checking for system updates...
[2026-06-19 17:38:07,476.476 INFO    ] 200
[2026-06-19 17:38:07,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:07,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:38:07,535.535 INFO    ] No update needed
[2026-06-19 17:38:07,538.538 INFO    ] Checking for camera pi updates...
[2026-06-19 17:38:07,576.576 INFO    ] 200
[2026-06-19 17:38:07,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:07,625.625 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:38:07,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:38:07,676.676 INFO    ] No camera update needed
[2026-06-19 17:38:07,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:38:07,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:38:07,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:38:07,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:38:09,734.734 INFO    ] ================================================
[2026-06-19 17:38:09,749.749 INFO    ] Launching Daemon at Fri Jun 19 17:38:09 IST 2026
[2026-06-19 17:38:09,760.760 INFO    ] ================================================
[2026-06-19 17:38:10,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:38:10
[2026-06-19 17:38:10,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:38:11,186.186 INFO    ] Initializing speech engine...
[2026-06-19 17:38:11,194.194 INFO    ] 2026-06-19 17:38:11
[2026-06-19 17:38:11,441.441 INFO    ] 2026-06-19 17:38:11
[2026-06-19 17:38:11,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:38:11,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:38:11,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:38:11,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:38:11,906.906 INFO    ] time= 19/06/2026 17:38:11
[2026-06-19 17:38:11,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:38:12,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:38:12,141.141 INFO    ] No existing commands found in stream
[2026-06-19 17:38:17,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:38:17,165.165 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 17:38:20,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:38:20,832.832 INFO    ] Checking for system updates...
[2026-06-19 17:38:20,868.868 INFO    ] 200
[2026-06-19 17:38:20,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:20,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:38:20,933.933 INFO    ] No update needed
[2026-06-19 17:38:20,936.936 INFO    ] Checking for camera pi updates...
[2026-06-19 17:38:20,971.971 INFO    ] 200
[2026-06-19 17:38:20,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:21,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:38:21,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:38:21,063.063 INFO    ] No camera update needed
[2026-06-19 17:38:21,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:38:21,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:38:21,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:38:21,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:38:23,122.122 INFO    ] ================================================
[2026-06-19 17:38:23,137.137 INFO    ] Launching Daemon at Fri Jun 19 17:38:23 IST 2026
[2026-06-19 17:38:23,147.147 INFO    ] ================================================
[2026-06-19 17:38:23,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:38:23
[2026-06-19 17:38:24,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:38:24,673.673 INFO    ] Initializing speech engine...
[2026-06-19 17:38:24,685.685 INFO    ] 2026-06-19 17:38:24
[2026-06-19 17:38:25,002.002 INFO    ] 2026-06-19 17:38:24
[2026-06-19 17:38:25,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:38:25,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:38:25,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:38:25,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:38:25,511.511 INFO    ] time= 19/06/2026 17:38:25
[2026-06-19 17:38:25,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:38:25,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:38:25,680.680 INFO    ] No existing commands found in stream
[2026-06-19 17:38:30,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:38:30,720.720 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 17:38:32,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:38:32,399.399 INFO    ] Checking for system updates...
[2026-06-19 17:38:32,440.440 INFO    ] 200
[2026-06-19 17:38:32,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:32,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:38:32,505.505 INFO    ] No update needed
[2026-06-19 17:38:32,508.508 INFO    ] Checking for camera pi updates...
[2026-06-19 17:38:32,551.551 INFO    ] 200
[2026-06-19 17:38:32,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:32,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:38:32,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:38:32,668.668 INFO    ] No camera update needed
[2026-06-19 17:38:32,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:38:32,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:38:32,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:38:32,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:38:34,731.731 INFO    ] ================================================
[2026-06-19 17:38:34,746.746 INFO    ] Launching Daemon at Fri Jun 19 17:38:34 IST 2026
[2026-06-19 17:38:34,757.757 INFO    ] ================================================
[2026-06-19 17:38:35,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:38:35
[2026-06-19 17:38:35,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:38:36,230.230 INFO    ] Initializing speech engine...
[2026-06-19 17:38:36,238.238 INFO    ] 2026-06-19 17:38:36
[2026-06-19 17:38:36,498.498 INFO    ] 2026-06-19 17:38:36
[2026-06-19 17:38:36,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:38:36,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:38:36,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:38:36,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:38:37,042.042 INFO    ] time= 19/06/2026 17:38:37
[2026-06-19 17:38:37,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:38:37,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:38:37,188.188 INFO    ] No existing commands found in stream
[2026-06-19 17:38:42,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:38:42,210.210 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 17:38:46,001.001 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:38:46,004.004 INFO    ] Checking for system updates...
[2026-06-19 17:38:46,040.040 INFO    ] 200
[2026-06-19 17:38:46,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:46,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:38:46,098.098 INFO    ] No update needed
[2026-06-19 17:38:46,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 17:38:46,135.135 INFO    ] 200
[2026-06-19 17:38:46,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:46,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:38:46,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:38:46,233.233 INFO    ] No camera update needed
[2026-06-19 17:38:46,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:38:46,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:38:46,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:38:46,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:38:48,293.293 INFO    ] ================================================
[2026-06-19 17:38:48,308.308 INFO    ] Launching Daemon at Fri Jun 19 17:38:48 IST 2026
[2026-06-19 17:38:48,319.319 INFO    ] ================================================
[2026-06-19 17:38:48,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:38:48
[2026-06-19 17:38:49,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:38:49,741.741 INFO    ] Initializing speech engine...
[2026-06-19 17:38:49,747.747 INFO    ] 2026-06-19 17:38:49
[2026-06-19 17:38:50,044.044 INFO    ] 2026-06-19 17:38:50
[2026-06-19 17:38:50,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:38:50,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:38:50,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:38:50,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:38:50,468.468 INFO    ] time= 19/06/2026 17:38:50
[2026-06-19 17:38:50,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:38:50,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:38:50,644.644 INFO    ] No existing commands found in stream
[2026-06-19 17:38:55,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:38:55,677.677 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 17:38:56,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:38:56,222.222 INFO    ] Checking for system updates...
[2026-06-19 17:38:56,262.262 INFO    ] 200
[2026-06-19 17:38:56,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:56,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:38:56,320.320 INFO    ] No update needed
[2026-06-19 17:38:56,323.323 INFO    ] Checking for camera pi updates...
[2026-06-19 17:38:56,356.356 INFO    ] 200
[2026-06-19 17:38:56,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:38:56,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:38:56,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:38:56,452.452 INFO    ] No camera update needed
[2026-06-19 17:38:56,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:38:56,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:38:56,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:38:56,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:38:58,508.508 INFO    ] ================================================
[2026-06-19 17:38:58,524.524 INFO    ] Launching Daemon at Fri Jun 19 17:38:58 IST 2026
[2026-06-19 17:38:58,535.535 INFO    ] ================================================
[2026-06-19 17:38:59,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:38:59
[2026-06-19 17:38:59,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:38:59,944.944 INFO    ] Initializing speech engine...
[2026-06-19 17:38:59,953.953 INFO    ] 2026-06-19 17:38:59
[2026-06-19 17:39:00,249.249 INFO    ] 2026-06-19 17:39:00
[2026-06-19 17:39:00,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:39:00,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:39:00,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:39:00,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:39:00,678.678 INFO    ] time= 19/06/2026 17:39:00
[2026-06-19 17:39:00,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:39:00,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:39:00,822.822 INFO    ] No existing commands found in stream
[2026-06-19 17:39:05,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:39:05,850.850 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 17:39:06,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:39:06,816.816 INFO    ] Checking for system updates...
[2026-06-19 17:39:06,851.851 INFO    ] 200
[2026-06-19 17:39:06,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:06,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:39:06,915.915 INFO    ] No update needed
[2026-06-19 17:39:06,918.918 INFO    ] Checking for camera pi updates...
[2026-06-19 17:39:06,951.951 INFO    ] 200
[2026-06-19 17:39:06,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:06,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:39:07,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:39:07,043.043 INFO    ] No camera update needed
[2026-06-19 17:39:07,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:39:07,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:39:07,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:39:07,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:39:09,099.099 INFO    ] ================================================
[2026-06-19 17:39:09,114.114 INFO    ] Launching Daemon at Fri Jun 19 17:39:09 IST 2026
[2026-06-19 17:39:09,125.125 INFO    ] ================================================
[2026-06-19 17:39:09,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:39:09
[2026-06-19 17:39:10,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:39:10,582.582 INFO    ] Initializing speech engine...
[2026-06-19 17:39:10,588.588 INFO    ] 2026-06-19 17:39:10
[2026-06-19 17:39:10,857.857 INFO    ] 2026-06-19 17:39:10
[2026-06-19 17:39:10,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:39:11,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:39:11,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:39:11,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:39:11,271.271 INFO    ] time= 19/06/2026 17:39:11
[2026-06-19 17:39:11,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:39:11,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:39:11,442.442 INFO    ] No existing commands found in stream
[2026-06-19 17:39:16,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:39:16,470.470 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 17:39:18,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:39:18,183.183 INFO    ] Checking for system updates...
[2026-06-19 17:39:18,219.219 INFO    ] 200
[2026-06-19 17:39:18,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:18,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:39:18,284.284 INFO    ] No update needed
[2026-06-19 17:39:18,286.286 INFO    ] Checking for camera pi updates...
[2026-06-19 17:39:18,321.321 INFO    ] 200
[2026-06-19 17:39:18,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:18,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:39:18,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:39:18,412.412 INFO    ] No camera update needed
[2026-06-19 17:39:18,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:39:18,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:39:18,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:39:18,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:39:20,471.471 INFO    ] ================================================
[2026-06-19 17:39:20,487.487 INFO    ] Launching Daemon at Fri Jun 19 17:39:20 IST 2026
[2026-06-19 17:39:20,499.499 INFO    ] ================================================
[2026-06-19 17:39:21,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:39:21
[2026-06-19 17:39:21,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:39:21,949.949 INFO    ] Initializing speech engine...
[2026-06-19 17:39:21,964.964 INFO    ] 2026-06-19 17:39:21
[2026-06-19 17:39:22,245.245 INFO    ] 2026-06-19 17:39:22
[2026-06-19 17:39:22,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:39:22,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:39:22,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:39:22,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:39:22,662.662 INFO    ] time= 19/06/2026 17:39:22
[2026-06-19 17:39:22,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:39:22,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:39:22,832.832 INFO    ] No existing commands found in stream
[2026-06-19 17:39:27,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:39:27,864.864 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 17:39:30,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:39:30,059.059 INFO    ] Checking for system updates...
[2026-06-19 17:39:30,096.096 INFO    ] 200
[2026-06-19 17:39:30,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:30,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:39:30,154.154 INFO    ] No update needed
[2026-06-19 17:39:30,157.157 INFO    ] Checking for camera pi updates...
[2026-06-19 17:39:30,196.196 INFO    ] 200
[2026-06-19 17:39:30,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:30,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:39:30,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:39:30,299.299 INFO    ] No camera update needed
[2026-06-19 17:39:30,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:39:30,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:39:30,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:39:30,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:39:32,360.360 INFO    ] ================================================
[2026-06-19 17:39:32,377.377 INFO    ] Launching Daemon at Fri Jun 19 17:39:32 IST 2026
[2026-06-19 17:39:32,390.390 INFO    ] ================================================
[2026-06-19 17:39:33,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:39:33
[2026-06-19 17:39:33,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:39:34,051.051 INFO    ] Initializing speech engine...
[2026-06-19 17:39:34,059.059 INFO    ] 2026-06-19 17:39:34
[2026-06-19 17:39:34,346.346 INFO    ] 2026-06-19 17:39:34
[2026-06-19 17:39:34,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:39:34,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:39:34,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:39:34,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:39:34,822.822 INFO    ] time= 19/06/2026 17:39:34
[2026-06-19 17:39:34,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:39:34,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:39:35,058.058 INFO    ] No existing commands found in stream
[2026-06-19 17:39:40,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:39:40,093.093 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 17:39:43,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:39:43,942.942 INFO    ] Checking for system updates...
[2026-06-19 17:39:43,983.983 INFO    ] 200
[2026-06-19 17:39:43,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:44,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:39:44,042.042 INFO    ] No update needed
[2026-06-19 17:39:44,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 17:39:44,083.083 INFO    ] 200
[2026-06-19 17:39:44,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:44,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:39:44,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:39:44,190.190 INFO    ] No camera update needed
[2026-06-19 17:39:44,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:39:44,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:39:44,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:39:44,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:39:46,248.248 INFO    ] ================================================
[2026-06-19 17:39:46,264.264 INFO    ] Launching Daemon at Fri Jun 19 17:39:46 IST 2026
[2026-06-19 17:39:46,274.274 INFO    ] ================================================
[2026-06-19 17:39:46,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:39:46
[2026-06-19 17:39:47,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:39:47,824.824 INFO    ] Initializing speech engine...
[2026-06-19 17:39:47,838.838 INFO    ] 2026-06-19 17:39:47
[2026-06-19 17:39:48,119.119 INFO    ] 2026-06-19 17:39:48
[2026-06-19 17:39:48,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:39:48,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:39:48,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:39:48,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:39:48,611.611 INFO    ] time= 19/06/2026 17:39:48
[2026-06-19 17:39:48,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:39:48,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:39:48,829.829 INFO    ] No existing commands found in stream
[2026-06-19 17:39:53,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:39:53,856.856 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-19 17:39:56,387.387 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:39:56,390.390 INFO    ] Checking for system updates...
[2026-06-19 17:39:56,428.428 INFO    ] 200
[2026-06-19 17:39:56,431.431 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:56,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:39:56,487.487 INFO    ] No update needed
[2026-06-19 17:39:56,490.490 INFO    ] Checking for camera pi updates...
[2026-06-19 17:39:56,528.528 INFO    ] 200
[2026-06-19 17:39:56,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:39:56,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:39:56,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:39:56,624.624 INFO    ] No camera update needed
[2026-06-19 17:39:56,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:39:56,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:39:56,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:39:56,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:39:58,683.683 INFO    ] ================================================
[2026-06-19 17:39:58,698.698 INFO    ] Launching Daemon at Fri Jun 19 17:39:58 IST 2026
[2026-06-19 17:39:58,709.709 INFO    ] ================================================
[2026-06-19 17:39:59,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:39:59
[2026-06-19 17:40:00,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:40:00,318.318 INFO    ] Initializing speech engine...
[2026-06-19 17:40:00,326.326 INFO    ] 2026-06-19 17:40:00
[2026-06-19 17:40:00,614.614 INFO    ] 2026-06-19 17:40:00
[2026-06-19 17:40:00,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:40:00,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:40:00,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:40:01,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:40:01,080.080 INFO    ] time= 19/06/2026 17:40:01
[2026-06-19 17:40:01,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:40:01,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:40:01,295.295 INFO    ] No existing commands found in stream
[2026-06-19 17:40:06,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:40:06,330.330 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-19 17:40:07,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:40:07,979.979 INFO    ] Checking for system updates...
[2026-06-19 17:40:08,016.016 INFO    ] 200
[2026-06-19 17:40:08,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:08,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:40:08,076.076 INFO    ] No update needed
[2026-06-19 17:40:08,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 17:40:08,113.113 INFO    ] 200
[2026-06-19 17:40:08,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:08,158.158 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:40:08,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:40:08,209.209 INFO    ] No camera update needed
[2026-06-19 17:40:08,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:40:08,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:40:08,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:40:08,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:40:10,267.267 INFO    ] ================================================
[2026-06-19 17:40:10,283.283 INFO    ] Launching Daemon at Fri Jun 19 17:40:10 IST 2026
[2026-06-19 17:40:10,293.293 INFO    ] ================================================
[2026-06-19 17:40:10,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:40:10
[2026-06-19 17:40:11,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:40:11,763.763 INFO    ] Initializing speech engine...
[2026-06-19 17:40:11,770.770 INFO    ] 2026-06-19 17:40:11
[2026-06-19 17:40:12,034.034 INFO    ] 2026-06-19 17:40:12
[2026-06-19 17:40:12,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:40:12,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:40:12,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:40:12,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:40:12,539.539 INFO    ] time= 19/06/2026 17:40:12
[2026-06-19 17:40:12,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:40:12,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:40:12,741.741 INFO    ] No existing commands found in stream
[2026-06-19 17:40:17,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:40:17,764.764 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 17:40:19,520.520 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:40:19,522.522 INFO    ] Checking for system updates...
[2026-06-19 17:40:19,559.559 INFO    ] 200
[2026-06-19 17:40:19,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:19,615.615 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:40:19,618.618 INFO    ] No update needed
[2026-06-19 17:40:19,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 17:40:19,655.655 INFO    ] 200
[2026-06-19 17:40:19,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:19,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:40:19,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:40:19,757.757 INFO    ] No camera update needed
[2026-06-19 17:40:19,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:40:19,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:40:19,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:40:19,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:40:21,818.818 INFO    ] ================================================
[2026-06-19 17:40:21,833.833 INFO    ] Launching Daemon at Fri Jun 19 17:40:21 IST 2026
[2026-06-19 17:40:21,844.844 INFO    ] ================================================
[2026-06-19 17:40:22,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:40:22
[2026-06-19 17:40:23,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:40:23,476.476 INFO    ] Initializing speech engine...
[2026-06-19 17:40:23,488.488 INFO    ] 2026-06-19 17:40:23
[2026-06-19 17:40:23,782.782 INFO    ] 2026-06-19 17:40:23
[2026-06-19 17:40:23,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:40:24,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:40:24,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:40:24,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:40:24,264.264 INFO    ] time= 19/06/2026 17:40:24
[2026-06-19 17:40:24,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:40:24,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:40:24,472.472 INFO    ] No existing commands found in stream
[2026-06-19 17:40:29,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:40:29,504.504 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 17:40:30,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:40:30,801.801 INFO    ] Checking for system updates...
[2026-06-19 17:40:30,837.837 INFO    ] 200
[2026-06-19 17:40:30,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:30,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:40:30,901.901 INFO    ] No update needed
[2026-06-19 17:40:30,903.903 INFO    ] Checking for camera pi updates...
[2026-06-19 17:40:30,937.937 INFO    ] 200
[2026-06-19 17:40:30,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:30,998.998 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:40:31,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:40:31,044.044 INFO    ] No camera update needed
[2026-06-19 17:40:31,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:40:31,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:40:31,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:40:31,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:40:33,101.101 INFO    ] ================================================
[2026-06-19 17:40:33,118.118 INFO    ] Launching Daemon at Fri Jun 19 17:40:33 IST 2026
[2026-06-19 17:40:33,130.130 INFO    ] ================================================
[2026-06-19 17:40:33,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:40:33
[2026-06-19 17:40:34,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:40:34,801.801 INFO    ] Initializing speech engine...
[2026-06-19 17:40:34,814.814 INFO    ] 2026-06-19 17:40:34
[2026-06-19 17:40:35,098.098 INFO    ] 2026-06-19 17:40:35
[2026-06-19 17:40:35,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:40:35,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:40:35,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:40:35,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:40:35,646.646 INFO    ] time= 19/06/2026 17:40:35
[2026-06-19 17:40:35,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:40:35,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:40:35,818.818 INFO    ] No existing commands found in stream
[2026-06-19 17:40:40,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:40:40,843.843 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 17:40:43,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:40:43,752.752 INFO    ] Checking for system updates...
[2026-06-19 17:40:43,793.793 INFO    ] 200
[2026-06-19 17:40:43,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:43,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:40:43,851.851 INFO    ] No update needed
[2026-06-19 17:40:43,853.853 INFO    ] Checking for camera pi updates...
[2026-06-19 17:40:43,887.887 INFO    ] 200
[2026-06-19 17:40:43,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:43,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:40:43,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:40:43,979.979 INFO    ] No camera update needed
[2026-06-19 17:40:43,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:40:43,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:40:43,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:40:43,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:40:46,034.034 INFO    ] ================================================
[2026-06-19 17:40:46,056.056 INFO    ] Launching Daemon at Fri Jun 19 17:40:46 IST 2026
[2026-06-19 17:40:46,070.070 INFO    ] ================================================
[2026-06-19 17:40:46,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:40:46
[2026-06-19 17:40:47,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:40:47,530.530 INFO    ] Initializing speech engine...
[2026-06-19 17:40:47,537.537 INFO    ] 2026-06-19 17:40:47
[2026-06-19 17:40:47,798.798 INFO    ] 2026-06-19 17:40:47
[2026-06-19 17:40:47,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:40:48,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:40:48,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:40:48,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:40:48,258.258 INFO    ] time= 19/06/2026 17:40:48
[2026-06-19 17:40:48,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:40:48,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:40:48,468.468 INFO    ] No existing commands found in stream
[2026-06-19 17:40:53,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:40:53,507.507 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 17:40:56,095.095 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:40:56,098.098 INFO    ] Checking for system updates...
[2026-06-19 17:40:56,135.135 INFO    ] 200
[2026-06-19 17:40:56,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:56,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:40:56,193.193 INFO    ] No update needed
[2026-06-19 17:40:56,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 17:40:56,229.229 INFO    ] 200
[2026-06-19 17:40:56,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:40:56,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:40:56,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:40:56,333.333 INFO    ] No camera update needed
[2026-06-19 17:40:56,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:40:56,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:40:56,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:40:56,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:40:58,390.390 INFO    ] ================================================
[2026-06-19 17:40:58,406.406 INFO    ] Launching Daemon at Fri Jun 19 17:40:58 IST 2026
[2026-06-19 17:40:58,418.418 INFO    ] ================================================
[2026-06-19 17:40:59,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:40:59
[2026-06-19 17:40:59,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:41:00,051.051 INFO    ] Initializing speech engine...
[2026-06-19 17:41:00,064.064 INFO    ] 2026-06-19 17:41:00
[2026-06-19 17:41:00,352.352 INFO    ] 2026-06-19 17:41:00
[2026-06-19 17:41:00,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:41:00,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:41:00,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:41:00,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:41:00,885.885 INFO    ] time= 19/06/2026 17:41:00
[2026-06-19 17:41:00,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:41:00,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:41:01,046.046 INFO    ] No existing commands found in stream
[2026-06-19 17:41:06,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:41:06,084.084 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 17:41:08,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:41:08,738.738 INFO    ] Checking for system updates...
[2026-06-19 17:41:08,779.779 INFO    ] 200
[2026-06-19 17:41:08,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:08,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:41:08,844.844 INFO    ] No update needed
[2026-06-19 17:41:08,847.847 INFO    ] Checking for camera pi updates...
[2026-06-19 17:41:08,881.881 INFO    ] 200
[2026-06-19 17:41:08,884.884 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:08,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:41:08,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:41:08,978.978 INFO    ] No camera update needed
[2026-06-19 17:41:08,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:41:08,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:41:08,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:41:08,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:41:11,038.038 INFO    ] ================================================
[2026-06-19 17:41:11,053.053 INFO    ] Launching Daemon at Fri Jun 19 17:41:11 IST 2026
[2026-06-19 17:41:11,065.065 INFO    ] ================================================
[2026-06-19 17:41:11,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:41:11
[2026-06-19 17:41:12,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:41:12,513.513 INFO    ] Initializing speech engine...
[2026-06-19 17:41:12,523.523 INFO    ] 2026-06-19 17:41:12
[2026-06-19 17:41:12,784.784 INFO    ] 2026-06-19 17:41:12
[2026-06-19 17:41:12,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:41:13,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:41:13,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:41:13,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:41:13,334.334 INFO    ] time= 19/06/2026 17:41:13
[2026-06-19 17:41:13,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:41:13,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:41:13,489.489 INFO    ] No existing commands found in stream
[2026-06-19 17:41:18,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:41:18,519.519 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 17:41:19,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:41:19,253.253 INFO    ] Checking for system updates...
[2026-06-19 17:41:19,290.290 INFO    ] 200
[2026-06-19 17:41:19,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:19,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:41:19,353.353 INFO    ] No update needed
[2026-06-19 17:41:19,356.356 INFO    ] Checking for camera pi updates...
[2026-06-19 17:41:19,391.391 INFO    ] 200
[2026-06-19 17:41:19,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:19,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:41:19,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:41:19,487.487 INFO    ] No camera update needed
[2026-06-19 17:41:19,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:41:19,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:41:19,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:41:19,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:41:21,547.547 INFO    ] ================================================
[2026-06-19 17:41:21,562.562 INFO    ] Launching Daemon at Fri Jun 19 17:41:21 IST 2026
[2026-06-19 17:41:21,574.574 INFO    ] ================================================
[2026-06-19 17:41:22,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:41:22
[2026-06-19 17:41:22,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:41:23,010.010 INFO    ] Initializing speech engine...
[2026-06-19 17:41:23,019.019 INFO    ] 2026-06-19 17:41:23
[2026-06-19 17:41:23,272.272 INFO    ] 2026-06-19 17:41:23
[2026-06-19 17:41:23,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:41:23,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:41:23,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:41:23,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:41:23,740.740 INFO    ] time= 19/06/2026 17:41:23
[2026-06-19 17:41:23,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:41:23,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:41:23,973.973 INFO    ] No existing commands found in stream
[2026-06-19 17:41:28,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:41:28,989.989 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 17:41:29,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:41:29,952.952 INFO    ] Checking for system updates...
[2026-06-19 17:41:29,988.988 INFO    ] 200
[2026-06-19 17:41:29,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:30,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:41:30,045.045 INFO    ] No update needed
[2026-06-19 17:41:30,048.048 INFO    ] Checking for camera pi updates...
[2026-06-19 17:41:30,086.086 INFO    ] 200
[2026-06-19 17:41:30,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:30,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:41:30,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:41:30,175.175 INFO    ] No camera update needed
[2026-06-19 17:41:30,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:41:30,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:41:30,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:41:30,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:41:32,231.231 INFO    ] ================================================
[2026-06-19 17:41:32,248.248 INFO    ] Launching Daemon at Fri Jun 19 17:41:32 IST 2026
[2026-06-19 17:41:32,261.261 INFO    ] ================================================
[2026-06-19 17:41:32,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:41:32
[2026-06-19 17:41:33,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:41:33,751.751 INFO    ] Initializing speech engine...
[2026-06-19 17:41:33,757.757 INFO    ] 2026-06-19 17:41:33
[2026-06-19 17:41:34,056.056 INFO    ] 2026-06-19 17:41:34
[2026-06-19 17:41:34,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:41:34,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:41:34,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:41:34,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:41:34,471.471 INFO    ] time= 19/06/2026 17:41:34
[2026-06-19 17:41:34,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:41:34,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:41:34,560.560 INFO    ] No existing commands found in stream
[2026-06-19 17:41:39,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:41:39,577.577 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 17:41:43,169.169 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:41:43,172.172 INFO    ] Checking for system updates...
[2026-06-19 17:41:43,209.209 INFO    ] 200
[2026-06-19 17:41:43,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:43,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:41:43,269.269 INFO    ] No update needed
[2026-06-19 17:41:43,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 17:41:43,307.307 INFO    ] 200
[2026-06-19 17:41:43,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:43,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:41:43,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:41:43,407.407 INFO    ] No camera update needed
[2026-06-19 17:41:43,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:41:43,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:41:43,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:41:43,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:41:45,466.466 INFO    ] ================================================
[2026-06-19 17:41:45,482.482 INFO    ] Launching Daemon at Fri Jun 19 17:41:45 IST 2026
[2026-06-19 17:41:45,493.493 INFO    ] ================================================
[2026-06-19 17:41:46,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:41:46
[2026-06-19 17:41:46,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:41:46,959.959 INFO    ] Initializing speech engine...
[2026-06-19 17:41:46,964.964 INFO    ] 2026-06-19 17:41:46
[2026-06-19 17:41:47,227.227 INFO    ] 2026-06-19 17:41:47
[2026-06-19 17:41:47,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:41:47,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:41:47,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:41:47,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:41:47,724.724 INFO    ] time= 19/06/2026 17:41:47
[2026-06-19 17:41:47,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:41:47,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:41:47,930.930 INFO    ] No existing commands found in stream
[2026-06-19 17:41:52,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:41:52,948.948 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 17:41:53,604.604 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:41:53,607.607 INFO    ] Checking for system updates...
[2026-06-19 17:41:53,647.647 INFO    ] 200
[2026-06-19 17:41:53,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:53,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:41:53,704.704 INFO    ] No update needed
[2026-06-19 17:41:53,707.707 INFO    ] Checking for camera pi updates...
[2026-06-19 17:41:53,744.744 INFO    ] 200
[2026-06-19 17:41:53,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:41:53,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:41:53,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:41:53,832.832 INFO    ] No camera update needed
[2026-06-19 17:41:53,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:41:53,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:41:53,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:41:53,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:41:55,890.890 INFO    ] ================================================
[2026-06-19 17:41:55,906.906 INFO    ] Launching Daemon at Fri Jun 19 17:41:55 IST 2026
[2026-06-19 17:41:55,917.917 INFO    ] ================================================
[2026-06-19 17:41:56,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:41:56
[2026-06-19 17:41:57,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:41:57,517.517 INFO    ] Initializing speech engine...
[2026-06-19 17:41:57,527.527 INFO    ] 2026-06-19 17:41:57
[2026-06-19 17:41:57,809.809 INFO    ] 2026-06-19 17:41:57
[2026-06-19 17:41:57,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:41:58,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:41:58,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:41:58,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:41:58,344.344 INFO    ] time= 19/06/2026 17:41:58
[2026-06-19 17:41:58,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:41:58,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:41:58,558.558 INFO    ] No existing commands found in stream
[2026-06-19 17:42:03,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:42:03,588.588 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 17:42:05,894.894 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:42:05,897.897 INFO    ] Checking for system updates...
[2026-06-19 17:42:05,936.936 INFO    ] 200
[2026-06-19 17:42:05,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:05,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:42:06,002.002 INFO    ] No update needed
[2026-06-19 17:42:06,005.005 INFO    ] Checking for camera pi updates...
[2026-06-19 17:42:06,041.041 INFO    ] 200
[2026-06-19 17:42:06,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:06,085.085 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:42:06,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:42:06,233.233 INFO    ] No camera update needed
[2026-06-19 17:42:06,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:42:06,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:42:06,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:42:06,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:42:08,298.298 INFO    ] ================================================
[2026-06-19 17:42:08,313.313 INFO    ] Launching Daemon at Fri Jun 19 17:42:08 IST 2026
[2026-06-19 17:42:08,324.324 INFO    ] ================================================
[2026-06-19 17:42:08,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:42:08
[2026-06-19 17:42:09,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:42:09,797.797 INFO    ] Initializing speech engine...
[2026-06-19 17:42:09,811.811 INFO    ] 2026-06-19 17:42:09
[2026-06-19 17:42:10,082.082 INFO    ] 2026-06-19 17:42:10
[2026-06-19 17:42:10,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:42:10,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:42:10,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:42:10,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:42:10,480.480 INFO    ] time= 19/06/2026 17:42:10
[2026-06-19 17:42:10,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:42:10,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:42:10,601.601 INFO    ] No existing commands found in stream
[2026-06-19 17:42:15,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:42:15,629.629 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 17:42:17,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:42:17,308.308 INFO    ] Checking for system updates...
[2026-06-19 17:42:17,346.346 INFO    ] 200
[2026-06-19 17:42:17,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:17,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:42:17,405.405 INFO    ] No update needed
[2026-06-19 17:42:17,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 17:42:17,447.447 INFO    ] 200
[2026-06-19 17:42:17,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:17,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:42:17,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:42:17,535.535 INFO    ] No camera update needed
[2026-06-19 17:42:17,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:42:17,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:42:17,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:42:17,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:42:19,594.594 INFO    ] ================================================
[2026-06-19 17:42:19,610.610 INFO    ] Launching Daemon at Fri Jun 19 17:42:19 IST 2026
[2026-06-19 17:42:19,621.621 INFO    ] ================================================
[2026-06-19 17:42:20,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:42:20
[2026-06-19 17:42:20,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:42:21,206.206 INFO    ] Initializing speech engine...
[2026-06-19 17:42:21,214.214 INFO    ] 2026-06-19 17:42:21
[2026-06-19 17:42:21,487.487 INFO    ] 2026-06-19 17:42:21
[2026-06-19 17:42:21,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:42:21,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:42:21,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:42:21,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:42:21,989.989 INFO    ] time= 19/06/2026 17:42:21
[2026-06-19 17:42:22,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:42:22,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:42:22,219.219 INFO    ] No existing commands found in stream
[2026-06-19 17:42:27,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:42:27,244.244 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 17:42:30,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:42:30,494.494 INFO    ] Checking for system updates...
[2026-06-19 17:42:30,537.537 INFO    ] 200
[2026-06-19 17:42:30,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:30,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:42:30,609.609 INFO    ] No update needed
[2026-06-19 17:42:30,612.612 INFO    ] Checking for camera pi updates...
[2026-06-19 17:42:30,647.647 INFO    ] 200
[2026-06-19 17:42:30,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:30,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:42:30,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:42:30,729.729 INFO    ] No camera update needed
[2026-06-19 17:42:30,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:42:30,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:42:30,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:42:30,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:42:32,789.789 INFO    ] ================================================
[2026-06-19 17:42:32,804.804 INFO    ] Launching Daemon at Fri Jun 19 17:42:32 IST 2026
[2026-06-19 17:42:32,815.815 INFO    ] ================================================
[2026-06-19 17:42:33,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:42:33
[2026-06-19 17:42:34,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:42:34,415.415 INFO    ] Initializing speech engine...
[2026-06-19 17:42:34,421.421 INFO    ] 2026-06-19 17:42:34
[2026-06-19 17:42:34,694.694 INFO    ] 2026-06-19 17:42:34
[2026-06-19 17:42:34,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:42:34,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:42:34,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:42:35,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:42:35,205.205 INFO    ] time= 19/06/2026 17:42:35
[2026-06-19 17:42:35,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:42:35,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:42:35,426.426 INFO    ] No existing commands found in stream
[2026-06-19 17:42:40,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:42:40,454.454 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 17:42:41,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:42:41,627.627 INFO    ] Checking for system updates...
[2026-06-19 17:42:41,666.666 INFO    ] 200
[2026-06-19 17:42:41,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:41,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:42:41,726.726 INFO    ] No update needed
[2026-06-19 17:42:41,728.728 INFO    ] Checking for camera pi updates...
[2026-06-19 17:42:41,763.763 INFO    ] 200
[2026-06-19 17:42:41,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:41,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:42:41,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:42:41,855.855 INFO    ] No camera update needed
[2026-06-19 17:42:41,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:42:41,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:42:41,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:42:41,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:42:43,915.915 INFO    ] ================================================
[2026-06-19 17:42:43,932.932 INFO    ] Launching Daemon at Fri Jun 19 17:42:43 IST 2026
[2026-06-19 17:42:43,943.943 INFO    ] ================================================
[2026-06-19 17:42:44,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:42:44
[2026-06-19 17:42:45,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:42:45,545.545 INFO    ] Initializing speech engine...
[2026-06-19 17:42:45,553.553 INFO    ] 2026-06-19 17:42:45
[2026-06-19 17:42:45,834.834 INFO    ] 2026-06-19 17:42:45
[2026-06-19 17:42:45,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:42:46,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:42:46,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:42:46,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:42:46,378.378 INFO    ] time= 19/06/2026 17:42:46
[2026-06-19 17:42:46,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:42:46,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:42:46,522.522 INFO    ] No existing commands found in stream
[2026-06-19 17:42:51,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:42:51,540.540 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 17:42:53,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:42:53,133.133 INFO    ] Checking for system updates...
[2026-06-19 17:42:53,171.171 INFO    ] 200
[2026-06-19 17:42:53,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:53,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:42:53,230.230 INFO    ] No update needed
[2026-06-19 17:42:53,233.233 INFO    ] Checking for camera pi updates...
[2026-06-19 17:42:53,268.268 INFO    ] 200
[2026-06-19 17:42:53,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:42:53,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:42:53,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:42:53,357.357 INFO    ] No camera update needed
[2026-06-19 17:42:53,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:42:53,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:42:53,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:42:53,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:42:55,416.416 INFO    ] ================================================
[2026-06-19 17:42:55,431.431 INFO    ] Launching Daemon at Fri Jun 19 17:42:55 IST 2026
[2026-06-19 17:42:55,443.443 INFO    ] ================================================
[2026-06-19 17:42:56,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:42:56
[2026-06-19 17:42:56,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:42:57,031.031 INFO    ] Initializing speech engine...
[2026-06-19 17:42:57,055.055 INFO    ] 2026-06-19 17:42:57
[2026-06-19 17:42:57,327.327 INFO    ] 2026-06-19 17:42:57
[2026-06-19 17:42:57,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:42:57,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:42:57,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:42:57,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:42:57,843.843 INFO    ] time= 19/06/2026 17:42:57
[2026-06-19 17:42:57,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:42:57,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:42:58,058.058 INFO    ] No existing commands found in stream
[2026-06-19 17:43:03,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:43:03,089.089 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 17:43:03,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:43:03,855.855 INFO    ] Checking for system updates...
[2026-06-19 17:43:03,893.893 INFO    ] 200
[2026-06-19 17:43:03,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:03,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:43:03,953.953 INFO    ] No update needed
[2026-06-19 17:43:03,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 17:43:03,992.992 INFO    ] 200
[2026-06-19 17:43:03,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:04,037.037 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:43:04,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:43:04,081.081 INFO    ] No camera update needed
[2026-06-19 17:43:04,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:43:04,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:43:04,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:43:04,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:43:06,137.137 INFO    ] ================================================
[2026-06-19 17:43:06,152.152 INFO    ] Launching Daemon at Fri Jun 19 17:43:06 IST 2026
[2026-06-19 17:43:06,163.163 INFO    ] ================================================
[2026-06-19 17:43:06,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:43:06
[2026-06-19 17:43:07,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:43:07,708.708 INFO    ] Initializing speech engine...
[2026-06-19 17:43:07,714.714 INFO    ] 2026-06-19 17:43:07
[2026-06-19 17:43:08,012.012 INFO    ] 2026-06-19 17:43:07
[2026-06-19 17:43:08,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:43:08,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:43:08,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:43:08,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:43:08,394.394 INFO    ] time= 19/06/2026 17:43:08
[2026-06-19 17:43:08,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:43:08,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:43:08,578.578 INFO    ] No existing commands found in stream
[2026-06-19 17:43:13,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:43:13,604.604 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 17:43:15,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:43:15,841.841 INFO    ] Checking for system updates...
[2026-06-19 17:43:15,877.877 INFO    ] 200
[2026-06-19 17:43:15,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:15,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:43:15,934.934 INFO    ] No update needed
[2026-06-19 17:43:15,937.937 INFO    ] Checking for camera pi updates...
[2026-06-19 17:43:15,970.970 INFO    ] 200
[2026-06-19 17:43:15,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:16,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:43:16,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:43:16,066.066 INFO    ] No camera update needed
[2026-06-19 17:43:16,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:43:16,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:43:16,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:43:16,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:43:18,121.121 INFO    ] ================================================
[2026-06-19 17:43:18,137.137 INFO    ] Launching Daemon at Fri Jun 19 17:43:18 IST 2026
[2026-06-19 17:43:18,147.147 INFO    ] ================================================
[2026-06-19 17:43:18,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:43:18
[2026-06-19 17:43:19,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:43:19,610.610 INFO    ] Initializing speech engine...
[2026-06-19 17:43:19,614.614 INFO    ] 2026-06-19 17:43:19
[2026-06-19 17:43:19,864.864 INFO    ] 2026-06-19 17:43:19
[2026-06-19 17:43:19,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:43:20,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:43:20,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:43:20,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:43:20,242.242 INFO    ] time= 19/06/2026 17:43:20
[2026-06-19 17:43:20,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:43:20,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:43:20,438.438 INFO    ] No existing commands found in stream
[2026-06-19 17:43:25,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:43:25,455.455 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 17:43:27,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:43:27,514.514 INFO    ] Checking for system updates...
[2026-06-19 17:43:27,550.550 INFO    ] 200
[2026-06-19 17:43:27,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:27,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:43:27,608.608 INFO    ] No update needed
[2026-06-19 17:43:27,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 17:43:27,644.644 INFO    ] 200
[2026-06-19 17:43:27,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:27,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:43:27,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:43:27,735.735 INFO    ] No camera update needed
[2026-06-19 17:43:27,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:43:27,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:43:27,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:43:27,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:43:29,791.791 INFO    ] ================================================
[2026-06-19 17:43:29,807.807 INFO    ] Launching Daemon at Fri Jun 19 17:43:29 IST 2026
[2026-06-19 17:43:29,817.817 INFO    ] ================================================
[2026-06-19 17:43:30,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:43:30
[2026-06-19 17:43:31,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:43:31,431.431 INFO    ] Initializing speech engine...
[2026-06-19 17:43:31,435.435 INFO    ] 2026-06-19 17:43:31
[2026-06-19 17:43:31,711.711 INFO    ] 2026-06-19 17:43:31
[2026-06-19 17:43:31,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:43:32,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:43:32,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:43:32,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:43:32,250.250 INFO    ] time= 19/06/2026 17:43:32
[2026-06-19 17:43:32,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:43:32,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:43:32,448.448 INFO    ] No existing commands found in stream
[2026-06-19 17:43:37,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:43:37,482.482 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 17:43:38,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:43:38,413.413 INFO    ] Checking for system updates...
[2026-06-19 17:43:38,449.449 INFO    ] 200
[2026-06-19 17:43:38,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:38,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:43:38,513.513 INFO    ] No update needed
[2026-06-19 17:43:38,516.516 INFO    ] Checking for camera pi updates...
[2026-06-19 17:43:38,550.550 INFO    ] 200
[2026-06-19 17:43:38,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:38,594.594 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:43:38,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:43:38,652.652 INFO    ] No camera update needed
[2026-06-19 17:43:38,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:43:38,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:43:38,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:43:38,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:43:40,708.708 INFO    ] ================================================
[2026-06-19 17:43:40,724.724 INFO    ] Launching Daemon at Fri Jun 19 17:43:40 IST 2026
[2026-06-19 17:43:40,735.735 INFO    ] ================================================
[2026-06-19 17:43:41,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:43:41
[2026-06-19 17:43:41,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:43:42,195.195 INFO    ] Initializing speech engine...
[2026-06-19 17:43:42,205.205 INFO    ] 2026-06-19 17:43:42
[2026-06-19 17:43:42,462.462 INFO    ] 2026-06-19 17:43:42
[2026-06-19 17:43:42,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:43:42,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:43:42,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:43:42,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:43:42,986.986 INFO    ] time= 19/06/2026 17:43:42
[2026-06-19 17:43:43,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:43:43,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:43:43,159.159 INFO    ] No existing commands found in stream
[2026-06-19 17:43:48,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:43:48,181.181 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 17:43:51,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:43:51,092.092 INFO    ] Checking for system updates...
[2026-06-19 17:43:51,128.128 INFO    ] 200
[2026-06-19 17:43:51,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:51,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:43:51,190.190 INFO    ] No update needed
[2026-06-19 17:43:51,193.193 INFO    ] Checking for camera pi updates...
[2026-06-19 17:43:51,227.227 INFO    ] 200
[2026-06-19 17:43:51,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:43:51,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:43:51,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:43:51,321.321 INFO    ] No camera update needed
[2026-06-19 17:43:51,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:43:51,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:43:51,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:43:51,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:43:53,377.377 INFO    ] ================================================
[2026-06-19 17:43:53,393.393 INFO    ] Launching Daemon at Fri Jun 19 17:43:53 IST 2026
[2026-06-19 17:43:53,404.404 INFO    ] ================================================
[2026-06-19 17:43:54,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:43:54
[2026-06-19 17:43:54,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:43:55,021.021 INFO    ] Initializing speech engine...
[2026-06-19 17:43:55,029.029 INFO    ] 2026-06-19 17:43:55
[2026-06-19 17:43:55,319.319 INFO    ] 2026-06-19 17:43:55
[2026-06-19 17:43:55,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:43:55,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:43:55,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:43:55,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:43:55,870.870 INFO    ] time= 19/06/2026 17:43:55
[2026-06-19 17:43:55,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:43:55,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:43:56,033.033 INFO    ] No existing commands found in stream
[2026-06-19 17:44:01,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:44:01,063.063 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 17:44:01,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:44:01,782.782 INFO    ] Checking for system updates...
[2026-06-19 17:44:01,826.826 INFO    ] 200
[2026-06-19 17:44:01,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:01,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:44:01,927.927 INFO    ] No update needed
[2026-06-19 17:44:01,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 17:44:01,975.975 INFO    ] 200
[2026-06-19 17:44:01,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:02,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:44:02,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:44:02,062.062 INFO    ] No camera update needed
[2026-06-19 17:44:02,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:44:02,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:44:02,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:44:02,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:44:04,123.123 INFO    ] ================================================
[2026-06-19 17:44:04,139.139 INFO    ] Launching Daemon at Fri Jun 19 17:44:04 IST 2026
[2026-06-19 17:44:04,150.150 INFO    ] ================================================
[2026-06-19 17:44:04,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:44:04
[2026-06-19 17:44:05,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:44:05,564.564 INFO    ] Initializing speech engine...
[2026-06-19 17:44:05,573.573 INFO    ] 2026-06-19 17:44:05
[2026-06-19 17:44:05,862.862 INFO    ] 2026-06-19 17:44:05
[2026-06-19 17:44:05,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:44:06,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:44:06,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:44:06,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:44:06,263.263 INFO    ] time= 19/06/2026 17:44:06
[2026-06-19 17:44:06,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:44:06,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:44:06,457.457 INFO    ] No existing commands found in stream
[2026-06-19 17:44:11,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:44:11,476.476 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 17:44:15,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:44:15,683.683 INFO    ] Checking for system updates...
[2026-06-19 17:44:15,720.720 INFO    ] 200
[2026-06-19 17:44:15,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:15,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:44:15,784.784 INFO    ] No update needed
[2026-06-19 17:44:15,787.787 INFO    ] Checking for camera pi updates...
[2026-06-19 17:44:15,821.821 INFO    ] 200
[2026-06-19 17:44:15,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:15,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:44:16,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:44:16,016.016 INFO    ] No camera update needed
[2026-06-19 17:44:16,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:44:16,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:44:16,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:44:16,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:44:18,072.072 INFO    ] ================================================
[2026-06-19 17:44:18,087.087 INFO    ] Launching Daemon at Fri Jun 19 17:44:18 IST 2026
[2026-06-19 17:44:18,099.099 INFO    ] ================================================
[2026-06-19 17:44:18,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:44:18
[2026-06-19 17:44:19,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:44:19,647.647 INFO    ] Initializing speech engine...
[2026-06-19 17:44:19,657.657 INFO    ] 2026-06-19 17:44:19
[2026-06-19 17:44:19,907.907 INFO    ] 2026-06-19 17:44:19
[2026-06-19 17:44:19,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:44:20,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:44:20,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:44:20,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:44:20,403.403 INFO    ] time= 19/06/2026 17:44:20
[2026-06-19 17:44:20,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:44:20,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:44:20,621.621 INFO    ] No existing commands found in stream
[2026-06-19 17:44:25,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:44:25,638.638 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 17:44:27,209.209 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:44:27,212.212 INFO    ] Checking for system updates...
[2026-06-19 17:44:27,248.248 INFO    ] 200
[2026-06-19 17:44:27,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:27,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:44:27,306.306 INFO    ] No update needed
[2026-06-19 17:44:27,308.308 INFO    ] Checking for camera pi updates...
[2026-06-19 17:44:27,343.343 INFO    ] 200
[2026-06-19 17:44:27,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:27,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:44:27,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:44:27,437.437 INFO    ] No camera update needed
[2026-06-19 17:44:27,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:44:27,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:44:27,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:44:27,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:44:29,492.492 INFO    ] ================================================
[2026-06-19 17:44:29,508.508 INFO    ] Launching Daemon at Fri Jun 19 17:44:29 IST 2026
[2026-06-19 17:44:29,519.519 INFO    ] ================================================
[2026-06-19 17:44:30,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:44:30
[2026-06-19 17:44:30,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:44:30,954.954 INFO    ] Initializing speech engine...
[2026-06-19 17:44:30,963.963 INFO    ] 2026-06-19 17:44:30
[2026-06-19 17:44:31,210.210 INFO    ] 2026-06-19 17:44:31
[2026-06-19 17:44:31,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:44:31,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:44:31,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:44:31,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:44:31,605.605 INFO    ] time= 19/06/2026 17:44:31
[2026-06-19 17:44:31,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:44:31,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:44:31,788.788 INFO    ] No existing commands found in stream
[2026-06-19 17:44:36,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:44:36,817.817 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 17:44:38,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:44:38,296.296 INFO    ] Checking for system updates...
[2026-06-19 17:44:38,333.333 INFO    ] 200
[2026-06-19 17:44:38,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:38,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:44:38,395.395 INFO    ] No update needed
[2026-06-19 17:44:38,397.397 INFO    ] Checking for camera pi updates...
[2026-06-19 17:44:38,431.431 INFO    ] 200
[2026-06-19 17:44:38,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:38,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:44:38,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:44:38,523.523 INFO    ] No camera update needed
[2026-06-19 17:44:38,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:44:38,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:44:38,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:44:38,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:44:40,578.578 INFO    ] ================================================
[2026-06-19 17:44:40,593.593 INFO    ] Launching Daemon at Fri Jun 19 17:44:40 IST 2026
[2026-06-19 17:44:40,604.604 INFO    ] ================================================
[2026-06-19 17:44:41,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:44:41
[2026-06-19 17:44:41,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:44:42,065.065 INFO    ] Initializing speech engine...
[2026-06-19 17:44:42,072.072 INFO    ] 2026-06-19 17:44:42
[2026-06-19 17:44:42,369.369 INFO    ] 2026-06-19 17:44:42
[2026-06-19 17:44:42,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:44:42,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:44:42,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:44:42,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:44:42,792.792 INFO    ] time= 19/06/2026 17:44:42
[2026-06-19 17:44:42,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:44:42,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:44:42,953.953 INFO    ] No existing commands found in stream
[2026-06-19 17:44:47,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:44:47,981.981 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 17:44:49,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:44:49,430.430 INFO    ] Checking for system updates...
[2026-06-19 17:44:49,466.466 INFO    ] 200
[2026-06-19 17:44:49,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:49,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:44:49,525.525 INFO    ] No update needed
[2026-06-19 17:44:49,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 17:44:49,569.569 INFO    ] 200
[2026-06-19 17:44:49,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:49,614.614 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:44:49,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:44:49,647.647 INFO    ] No camera update needed
[2026-06-19 17:44:49,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:44:49,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:44:49,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:44:49,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:44:51,704.704 INFO    ] ================================================
[2026-06-19 17:44:51,719.719 INFO    ] Launching Daemon at Fri Jun 19 17:44:51 IST 2026
[2026-06-19 17:44:51,730.730 INFO    ] ================================================
[2026-06-19 17:44:52,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:44:52
[2026-06-19 17:44:52,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:44:53,153.153 INFO    ] Initializing speech engine...
[2026-06-19 17:44:53,164.164 INFO    ] 2026-06-19 17:44:53
[2026-06-19 17:44:53,408.408 INFO    ] 2026-06-19 17:44:53
[2026-06-19 17:44:53,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:44:53,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:44:53,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:44:53,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:44:53,880.880 INFO    ] time= 19/06/2026 17:44:53
[2026-06-19 17:44:53,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:44:53,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:44:54,094.094 INFO    ] No existing commands found in stream
[2026-06-19 17:44:59,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:44:59,128.128 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 17:44:59,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:44:59,802.802 INFO    ] Checking for system updates...
[2026-06-19 17:44:59,838.838 INFO    ] 200
[2026-06-19 17:44:59,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:59,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:44:59,900.900 INFO    ] No update needed
[2026-06-19 17:44:59,902.902 INFO    ] Checking for camera pi updates...
[2026-06-19 17:44:59,936.936 INFO    ] 200
[2026-06-19 17:44:59,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:44:59,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:45:00,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:45:00,031.031 INFO    ] No camera update needed
[2026-06-19 17:45:00,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:45:00,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:45:00,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:45:00,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:45:02,151.151 INFO    ] ================================================
[2026-06-19 17:45:02,187.187 INFO    ] Launching Daemon at Fri Jun 19 17:45:02 IST 2026
[2026-06-19 17:45:02,261.261 INFO    ] ================================================
[2026-06-19 17:45:03,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:45:03
[2026-06-19 17:45:04,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:45:04,563.563 INFO    ] Initializing speech engine...
[2026-06-19 17:45:04,575.575 INFO    ] 2026-06-19 17:45:04
[2026-06-19 17:45:04,885.885 INFO    ] 2026-06-19 17:45:04
[2026-06-19 17:45:04,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:45:05,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:45:05,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:45:05,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:45:05,396.396 INFO    ] time= 19/06/2026 17:45:05
[2026-06-19 17:45:05,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:45:05,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:45:05,554.554 INFO    ] No existing commands found in stream
[2026-06-19 17:45:10,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:45:10,578.578 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 17:45:11,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:45:11,972.972 INFO    ] Checking for system updates...
[2026-06-19 17:45:12,010.010 INFO    ] 200
[2026-06-19 17:45:12,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:45:12,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:45:12,071.071 INFO    ] No update needed
[2026-06-19 17:45:12,073.073 INFO    ] Checking for camera pi updates...
[2026-06-19 17:45:12,112.112 INFO    ] 200
[2026-06-19 17:45:12,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:45:12,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:45:12,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:45:12,206.206 INFO    ] No camera update needed
[2026-06-19 17:45:12,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:45:12,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:45:12,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:45:12,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:45:14,267.267 INFO    ] ================================================
[2026-06-19 17:45:14,283.283 INFO    ] Launching Daemon at Fri Jun 19 17:45:14 IST 2026
[2026-06-19 17:45:14,295.295 INFO    ] ================================================
[2026-06-19 17:45:14,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:45:14
[2026-06-19 17:45:15,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:45:15,733.733 INFO    ] Initializing speech engine...
[2026-06-19 17:45:15,742.742 INFO    ] 2026-06-19 17:45:15
[2026-06-19 17:45:15,988.988 INFO    ] 2026-06-19 17:45:15
[2026-06-19 17:45:16,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:45:16,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:45:16,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:45:16,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:45:16,357.357 INFO    ] time= 19/06/2026 17:45:16
[2026-06-19 17:45:16,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:45:16,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:45:16,533.533 INFO    ] No existing commands found in stream
[2026-06-19 17:45:21,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:45:21,567.567 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 17:45:24,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:45:24,641.641 INFO    ] Checking for system updates...
[2026-06-19 17:45:24,677.677 INFO    ] 200
[2026-06-19 17:45:24,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:45:24,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:45:24,741.741 INFO    ] No update needed
[2026-06-19 17:45:24,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 17:45:24,777.777 INFO    ] 200
[2026-06-19 17:45:24,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:45:24,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:45:24,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:45:24,878.878 INFO    ] No camera update needed
[2026-06-19 17:45:24,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:45:24,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:45:24,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:45:24,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:45:26,935.935 INFO    ] ================================================
[2026-06-19 17:45:26,951.951 INFO    ] Launching Daemon at Fri Jun 19 17:45:26 IST 2026
[2026-06-19 17:45:26,962.962 INFO    ] ================================================
[2026-06-19 17:45:27,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:45:27
[2026-06-19 17:45:28,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:45:28,594.594 INFO    ] Initializing speech engine...
[2026-06-19 17:45:28,608.608 INFO    ] 2026-06-19 17:45:28
[2026-06-19 17:45:28,915.915 INFO    ] 2026-06-19 17:45:28
[2026-06-19 17:45:29,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:45:29,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:45:29,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:45:29,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:45:29,423.423 INFO    ] time= 19/06/2026 17:45:29
[2026-06-19 17:45:29,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:45:29,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:45:29,581.581 INFO    ] No existing commands found in stream
[2026-06-19 17:45:34,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:45:34,609.609 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 17:45:36,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:45:36,550.550 INFO    ] Checking for system updates...
[2026-06-19 17:45:36,588.588 INFO    ] 200
[2026-06-19 17:45:36,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:45:36,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:45:36,647.647 INFO    ] No update needed
[2026-06-19 17:45:36,650.650 INFO    ] Checking for camera pi updates...
[2026-06-19 17:45:36,685.685 INFO    ] 200
[2026-06-19 17:45:36,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:45:36,730.730 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:45:36,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:45:36,778.778 INFO    ] No camera update needed
[2026-06-19 17:45:36,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:45:36,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:45:36,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:45:36,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:45:38,836.836 INFO    ] ================================================
[2026-06-19 17:45:38,852.852 INFO    ] Launching Daemon at Fri Jun 19 17:45:38 IST 2026
[2026-06-19 17:45:38,863.863 INFO    ] ================================================
[2026-06-19 17:45:39,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:45:39
[2026-06-19 17:45:40,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:45:40,284.284 INFO    ] Initializing speech engine...
[2026-06-19 17:45:40,294.294 INFO    ] 2026-06-19 17:45:40
[2026-06-19 17:45:40,543.543 INFO    ] 2026-06-19 17:45:40
[2026-06-19 17:45:40,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:45:40,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:45:40,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:45:40,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:45:41,037.037 INFO    ] time= 19/06/2026 17:45:40
[2026-06-19 17:45:41,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:45:41,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:45:41,254.254 INFO    ] No existing commands found in stream
[2026-06-19 17:45:46,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:45:46,280.280 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 17:45:49,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:45:49,129.129 INFO    ] Checking for system updates...
[2026-06-19 17:45:49,166.166 INFO    ] 200
[2026-06-19 17:45:49,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:45:49,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:45:49,227.227 INFO    ] No update needed
[2026-06-19 17:45:49,229.229 INFO    ] Checking for camera pi updates...
[2026-06-19 17:45:49,264.264 INFO    ] 200
[2026-06-19 17:45:49,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:45:49,309.309 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:45:49,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:45:49,344.344 INFO    ] No camera update needed
[2026-06-19 17:45:49,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:45:49,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:45:49,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:45:49,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:45:51,403.403 INFO    ] ================================================
[2026-06-19 17:45:51,419.419 INFO    ] Launching Daemon at Fri Jun 19 17:45:51 IST 2026
[2026-06-19 17:45:51,430.430 INFO    ] ================================================
[2026-06-19 17:45:51,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:45:51
[2026-06-19 17:45:52,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:45:52,912.912 INFO    ] Initializing speech engine...
[2026-06-19 17:45:52,923.923 INFO    ] 2026-06-19 17:45:52
[2026-06-19 17:45:53,202.202 INFO    ] 2026-06-19 17:45:53
[2026-06-19 17:45:53,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:45:53,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:45:53,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:45:53,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:45:53,751.751 INFO    ] time= 19/06/2026 17:45:53
[2026-06-19 17:45:53,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:45:53,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:45:53,908.908 INFO    ] No existing commands found in stream
[2026-06-19 17:45:58,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:45:58,928.928 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 17:46:01,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:46:01,705.705 INFO    ] Checking for system updates...
[2026-06-19 17:46:01,756.756 INFO    ] 200
[2026-06-19 17:46:01,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:01,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:46:01,846.846 INFO    ] No update needed
[2026-06-19 17:46:01,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 17:46:01,924.924 INFO    ] 200
[2026-06-19 17:46:01,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:01,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:46:02,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:46:02,028.028 INFO    ] No camera update needed
[2026-06-19 17:46:02,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:46:02,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:46:02,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:46:02,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:46:04,088.088 INFO    ] ================================================
[2026-06-19 17:46:04,103.103 INFO    ] Launching Daemon at Fri Jun 19 17:46:04 IST 2026
[2026-06-19 17:46:04,114.114 INFO    ] ================================================
[2026-06-19 17:46:04,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:46:04
[2026-06-19 17:46:05,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:46:05,549.549 INFO    ] Initializing speech engine...
[2026-06-19 17:46:05,558.558 INFO    ] 2026-06-19 17:46:05
[2026-06-19 17:46:05,802.802 INFO    ] 2026-06-19 17:46:05
[2026-06-19 17:46:05,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:46:06,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:46:06,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:46:06,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:46:06,250.250 INFO    ] time= 19/06/2026 17:46:06
[2026-06-19 17:46:06,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:46:06,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:46:06,421.421 INFO    ] No existing commands found in stream
[2026-06-19 17:46:11,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:46:11,433.433 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 17:46:15,742.742 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:46:15,745.745 INFO    ] Checking for system updates...
[2026-06-19 17:46:15,781.781 INFO    ] 200
[2026-06-19 17:46:15,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:15,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:46:15,840.840 INFO    ] No update needed
[2026-06-19 17:46:15,842.842 INFO    ] Checking for camera pi updates...
[2026-06-19 17:46:15,876.876 INFO    ] 200
[2026-06-19 17:46:15,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:15,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:46:15,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:46:15,964.964 INFO    ] No camera update needed
[2026-06-19 17:46:15,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:46:15,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:46:15,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:46:15,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:46:18,020.020 INFO    ] ================================================
[2026-06-19 17:46:18,036.036 INFO    ] Launching Daemon at Fri Jun 19 17:46:18 IST 2026
[2026-06-19 17:46:18,047.047 INFO    ] ================================================
[2026-06-19 17:46:18,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:46:18
[2026-06-19 17:46:19,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:46:19,506.506 INFO    ] Initializing speech engine...
[2026-06-19 17:46:19,516.516 INFO    ] 2026-06-19 17:46:19
[2026-06-19 17:46:19,780.780 INFO    ] 2026-06-19 17:46:19
[2026-06-19 17:46:19,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:46:20,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:46:20,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:46:20,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:46:20,244.244 INFO    ] time= 19/06/2026 17:46:20
[2026-06-19 17:46:20,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:46:20,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:46:20,444.444 INFO    ] No existing commands found in stream
[2026-06-19 17:46:25,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:46:25,470.470 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 17:46:27,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:46:27,959.959 INFO    ] Checking for system updates...
[2026-06-19 17:46:27,997.997 INFO    ] 200
[2026-06-19 17:46:28,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:28,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:46:28,057.057 INFO    ] No update needed
[2026-06-19 17:46:28,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 17:46:28,096.096 INFO    ] 200
[2026-06-19 17:46:28,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:28,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:46:28,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:46:28,299.299 INFO    ] No camera update needed
[2026-06-19 17:46:28,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:46:28,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:46:28,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:46:28,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:46:30,359.359 INFO    ] ================================================
[2026-06-19 17:46:30,374.374 INFO    ] Launching Daemon at Fri Jun 19 17:46:30 IST 2026
[2026-06-19 17:46:30,385.385 INFO    ] ================================================
[2026-06-19 17:46:31,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:46:31
[2026-06-19 17:46:31,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:46:32,043.043 INFO    ] Initializing speech engine...
[2026-06-19 17:46:32,057.057 INFO    ] 2026-06-19 17:46:32
[2026-06-19 17:46:32,362.362 INFO    ] 2026-06-19 17:46:32
[2026-06-19 17:46:32,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:46:32,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:46:32,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:46:32,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:46:32,897.897 INFO    ] time= 19/06/2026 17:46:32
[2026-06-19 17:46:32,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:46:32,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:46:33,097.097 INFO    ] No existing commands found in stream
[2026-06-19 17:46:38,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:46:38,123.123 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 17:46:39,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:46:39,394.394 INFO    ] Checking for system updates...
[2026-06-19 17:46:39,431.431 INFO    ] 200
[2026-06-19 17:46:39,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:39,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:46:39,492.492 INFO    ] No update needed
[2026-06-19 17:46:39,494.494 INFO    ] Checking for camera pi updates...
[2026-06-19 17:46:39,528.528 INFO    ] 200
[2026-06-19 17:46:39,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:39,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:46:39,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:46:39,613.613 INFO    ] No camera update needed
[2026-06-19 17:46:39,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:46:39,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:46:39,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:46:39,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:46:41,669.669 INFO    ] ================================================
[2026-06-19 17:46:41,684.684 INFO    ] Launching Daemon at Fri Jun 19 17:46:41 IST 2026
[2026-06-19 17:46:41,695.695 INFO    ] ================================================
[2026-06-19 17:46:42,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:46:42
[2026-06-19 17:46:42,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:46:43,205.205 INFO    ] Initializing speech engine...
[2026-06-19 17:46:43,213.213 INFO    ] 2026-06-19 17:46:43
[2026-06-19 17:46:43,499.499 INFO    ] 2026-06-19 17:46:43
[2026-06-19 17:46:43,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:46:43,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:46:43,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:46:44,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:46:44,037.037 INFO    ] time= 19/06/2026 17:46:44
[2026-06-19 17:46:44,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:46:44,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:46:44,174.174 INFO    ] No existing commands found in stream
[2026-06-19 17:46:49,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:46:49,207.207 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 17:46:51,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:46:51,941.941 INFO    ] Checking for system updates...
[2026-06-19 17:46:51,979.979 INFO    ] 200
[2026-06-19 17:46:51,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:52,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:46:52,037.037 INFO    ] No update needed
[2026-06-19 17:46:52,039.039 INFO    ] Checking for camera pi updates...
[2026-06-19 17:46:52,074.074 INFO    ] 200
[2026-06-19 17:46:52,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:46:52,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:46:52,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:46:52,175.175 INFO    ] No camera update needed
[2026-06-19 17:46:52,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:46:52,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:46:52,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:46:52,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:46:54,231.231 INFO    ] ================================================
[2026-06-19 17:46:54,246.246 INFO    ] Launching Daemon at Fri Jun 19 17:46:54 IST 2026
[2026-06-19 17:46:54,257.257 INFO    ] ================================================
[2026-06-19 17:46:54,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:46:54
[2026-06-19 17:46:55,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:46:55,874.874 INFO    ] Initializing speech engine...
[2026-06-19 17:46:55,886.886 INFO    ] 2026-06-19 17:46:55
[2026-06-19 17:46:56,171.171 INFO    ] 2026-06-19 17:46:56
[2026-06-19 17:46:56,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:46:56,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:46:56,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:46:56,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:46:56,702.702 INFO    ] time= 19/06/2026 17:46:56
[2026-06-19 17:46:56,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:46:56,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:46:56,858.858 INFO    ] No existing commands found in stream
[2026-06-19 17:47:01,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:47:01,900.900 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 17:47:03,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:47:03,513.513 INFO    ] Checking for system updates...
[2026-06-19 17:47:03,549.549 INFO    ] 200
[2026-06-19 17:47:03,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:03,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:47:03,607.607 INFO    ] No update needed
[2026-06-19 17:47:03,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 17:47:03,647.647 INFO    ] 200
[2026-06-19 17:47:03,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:03,690.690 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:47:03,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:47:03,740.740 INFO    ] No camera update needed
[2026-06-19 17:47:03,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:47:03,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:47:03,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:47:03,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:47:05,797.797 INFO    ] ================================================
[2026-06-19 17:47:05,812.812 INFO    ] Launching Daemon at Fri Jun 19 17:47:05 IST 2026
[2026-06-19 17:47:05,822.822 INFO    ] ================================================
[2026-06-19 17:47:06,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:47:06
[2026-06-19 17:47:06,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:47:07,263.263 INFO    ] Initializing speech engine...
[2026-06-19 17:47:07,268.268 INFO    ] 2026-06-19 17:47:07
[2026-06-19 17:47:07,514.514 INFO    ] 2026-06-19 17:47:07
[2026-06-19 17:47:07,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:47:07,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:47:07,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:47:07,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:47:08,050.050 INFO    ] time= 19/06/2026 17:47:08
[2026-06-19 17:47:08,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:47:08,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:47:08,234.234 INFO    ] No existing commands found in stream
[2026-06-19 17:47:13,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:47:13,258.258 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 17:47:14,455.455 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:47:14,458.458 INFO    ] Checking for system updates...
[2026-06-19 17:47:14,496.496 INFO    ] 200
[2026-06-19 17:47:14,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:14,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:47:14,554.554 INFO    ] No update needed
[2026-06-19 17:47:14,556.556 INFO    ] Checking for camera pi updates...
[2026-06-19 17:47:14,595.595 INFO    ] 200
[2026-06-19 17:47:14,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:14,639.639 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:47:14,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:47:14,683.683 INFO    ] No camera update needed
[2026-06-19 17:47:14,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:47:14,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:47:14,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:47:14,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:47:16,740.740 INFO    ] ================================================
[2026-06-19 17:47:16,755.755 INFO    ] Launching Daemon at Fri Jun 19 17:47:16 IST 2026
[2026-06-19 17:47:16,765.765 INFO    ] ================================================
[2026-06-19 17:47:17,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:47:17
[2026-06-19 17:47:18,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:47:18,359.359 INFO    ] Initializing speech engine...
[2026-06-19 17:47:18,371.371 INFO    ] 2026-06-19 17:47:18
[2026-06-19 17:47:18,642.642 INFO    ] 2026-06-19 17:47:18
[2026-06-19 17:47:18,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:47:18,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:47:18,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:47:19,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:47:19,207.207 INFO    ] time= 19/06/2026 17:47:19
[2026-06-19 17:47:19,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:47:19,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:47:19,353.353 INFO    ] No existing commands found in stream
[2026-06-19 17:47:24,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:47:24,384.384 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 17:47:28,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:47:28,222.222 INFO    ] Checking for system updates...
[2026-06-19 17:47:28,260.260 INFO    ] 200
[2026-06-19 17:47:28,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:28,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:47:28,324.324 INFO    ] No update needed
[2026-06-19 17:47:28,327.327 INFO    ] Checking for camera pi updates...
[2026-06-19 17:47:28,362.362 INFO    ] 200
[2026-06-19 17:47:28,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:28,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:47:28,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:47:28,455.455 INFO    ] No camera update needed
[2026-06-19 17:47:28,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:47:28,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:47:28,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:47:28,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:47:30,514.514 INFO    ] ================================================
[2026-06-19 17:47:30,529.529 INFO    ] Launching Daemon at Fri Jun 19 17:47:30 IST 2026
[2026-06-19 17:47:30,540.540 INFO    ] ================================================
[2026-06-19 17:47:31,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:47:31
[2026-06-19 17:47:31,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:47:32,201.201 INFO    ] Initializing speech engine...
[2026-06-19 17:47:32,212.212 INFO    ] 2026-06-19 17:47:32
[2026-06-19 17:47:32,523.523 INFO    ] 2026-06-19 17:47:32
[2026-06-19 17:47:32,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:47:32,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:47:32,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:47:32,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:47:33,003.003 INFO    ] time= 19/06/2026 17:47:32
[2026-06-19 17:47:33,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:47:33,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:47:33,246.246 INFO    ] No existing commands found in stream
[2026-06-19 17:47:38,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:47:38,280.280 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 17:47:41,338.338 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:47:41,341.341 INFO    ] Checking for system updates...
[2026-06-19 17:47:41,382.382 INFO    ] 200
[2026-06-19 17:47:41,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:41,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:47:41,441.441 INFO    ] No update needed
[2026-06-19 17:47:41,444.444 INFO    ] Checking for camera pi updates...
[2026-06-19 17:47:41,483.483 INFO    ] 200
[2026-06-19 17:47:41,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:41,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:47:41,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:47:41,582.582 INFO    ] No camera update needed
[2026-06-19 17:47:41,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:47:41,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:47:41,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:47:41,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:47:43,638.638 INFO    ] ================================================
[2026-06-19 17:47:43,653.653 INFO    ] Launching Daemon at Fri Jun 19 17:47:43 IST 2026
[2026-06-19 17:47:43,664.664 INFO    ] ================================================
[2026-06-19 17:47:44,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:47:44
[2026-06-19 17:47:44,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:47:45,303.303 INFO    ] Initializing speech engine...
[2026-06-19 17:47:45,311.311 INFO    ] 2026-06-19 17:47:45
[2026-06-19 17:47:45,587.587 INFO    ] 2026-06-19 17:47:45
[2026-06-19 17:47:45,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:47:45,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:47:45,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:47:46,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:47:46,143.143 INFO    ] time= 19/06/2026 17:47:46
[2026-06-19 17:47:46,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:47:46,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:47:46,309.309 INFO    ] No existing commands found in stream
[2026-06-19 17:47:51,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:47:51,338.338 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 17:47:52,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:47:52,608.608 INFO    ] Checking for system updates...
[2026-06-19 17:47:52,649.649 INFO    ] 200
[2026-06-19 17:47:52,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:52,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:47:52,721.721 INFO    ] No update needed
[2026-06-19 17:47:52,724.724 INFO    ] Checking for camera pi updates...
[2026-06-19 17:47:52,759.759 INFO    ] 200
[2026-06-19 17:47:52,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:47:52,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:47:52,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:47:52,865.865 INFO    ] No camera update needed
[2026-06-19 17:47:52,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:47:52,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:47:52,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:47:52,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:47:54,921.921 INFO    ] ================================================
[2026-06-19 17:47:54,936.936 INFO    ] Launching Daemon at Fri Jun 19 17:47:54 IST 2026
[2026-06-19 17:47:54,947.947 INFO    ] ================================================
[2026-06-19 17:47:55,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:47:55
[2026-06-19 17:47:56,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:47:56,404.404 INFO    ] Initializing speech engine...
[2026-06-19 17:47:56,411.411 INFO    ] 2026-06-19 17:47:56
[2026-06-19 17:47:56,671.671 INFO    ] 2026-06-19 17:47:56
[2026-06-19 17:47:56,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:47:56,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:47:56,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:47:57,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:47:57,215.215 INFO    ] time= 19/06/2026 17:47:57
[2026-06-19 17:47:57,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:47:57,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:47:57,372.372 INFO    ] No existing commands found in stream
[2026-06-19 17:48:02,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:48:02,395.395 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 17:48:06,091.091 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:48:06,094.094 INFO    ] Checking for system updates...
[2026-06-19 17:48:06,137.137 INFO    ] 200
[2026-06-19 17:48:06,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:06,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:48:06,200.200 INFO    ] No update needed
[2026-06-19 17:48:06,203.203 INFO    ] Checking for camera pi updates...
[2026-06-19 17:48:06,253.253 INFO    ] 200
[2026-06-19 17:48:06,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:06,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:48:06,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:48:06,368.368 INFO    ] No camera update needed
[2026-06-19 17:48:06,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:48:06,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:48:06,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:48:06,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:48:08,429.429 INFO    ] ================================================
[2026-06-19 17:48:08,446.446 INFO    ] Launching Daemon at Fri Jun 19 17:48:08 IST 2026
[2026-06-19 17:48:08,457.457 INFO    ] ================================================
[2026-06-19 17:48:09,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:48:09
[2026-06-19 17:48:09,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:48:09,893.893 INFO    ] Initializing speech engine...
[2026-06-19 17:48:09,898.898 INFO    ] 2026-06-19 17:48:09
[2026-06-19 17:48:10,202.202 INFO    ] 2026-06-19 17:48:10
[2026-06-19 17:48:10,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:48:10,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:48:10,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:48:10,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:48:10,699.699 INFO    ] time= 19/06/2026 17:48:10
[2026-06-19 17:48:10,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:48:10,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:48:10,832.832 INFO    ] No existing commands found in stream
[2026-06-19 17:48:15,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:48:15,847.847 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 17:48:17,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:48:17,972.972 INFO    ] Checking for system updates...
[2026-06-19 17:48:18,012.012 INFO    ] 200
[2026-06-19 17:48:18,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:18,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:48:18,084.084 INFO    ] No update needed
[2026-06-19 17:48:18,087.087 INFO    ] Checking for camera pi updates...
[2026-06-19 17:48:18,125.125 INFO    ] 200
[2026-06-19 17:48:18,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:18,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:48:18,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:48:18,217.217 INFO    ] No camera update needed
[2026-06-19 17:48:18,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:48:18,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:48:18,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:48:18,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:48:20,272.272 INFO    ] ================================================
[2026-06-19 17:48:20,287.287 INFO    ] Launching Daemon at Fri Jun 19 17:48:20 IST 2026
[2026-06-19 17:48:20,298.298 INFO    ] ================================================
[2026-06-19 17:48:20,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:48:20
[2026-06-19 17:48:21,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:48:21,942.942 INFO    ] Initializing speech engine...
[2026-06-19 17:48:21,955.955 INFO    ] 2026-06-19 17:48:21
[2026-06-19 17:48:22,263.263 INFO    ] 2026-06-19 17:48:22
[2026-06-19 17:48:22,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:48:22,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:48:22,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:48:22,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:48:22,788.788 INFO    ] time= 19/06/2026 17:48:22
[2026-06-19 17:48:22,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:48:22,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:48:22,931.931 INFO    ] No existing commands found in stream
[2026-06-19 17:48:27,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:48:27,951.951 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 17:48:29,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:48:29,533.533 INFO    ] Checking for system updates...
[2026-06-19 17:48:29,576.576 INFO    ] 200
[2026-06-19 17:48:29,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:29,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:48:29,635.635 INFO    ] No update needed
[2026-06-19 17:48:29,638.638 INFO    ] Checking for camera pi updates...
[2026-06-19 17:48:29,672.672 INFO    ] 200
[2026-06-19 17:48:29,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:29,716.716 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:48:29,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:48:29,861.861 INFO    ] No camera update needed
[2026-06-19 17:48:29,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:48:29,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:48:29,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:48:29,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:48:31,918.918 INFO    ] ================================================
[2026-06-19 17:48:31,934.934 INFO    ] Launching Daemon at Fri Jun 19 17:48:31 IST 2026
[2026-06-19 17:48:31,946.946 INFO    ] ================================================
[2026-06-19 17:48:32,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:48:32
[2026-06-19 17:48:33,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:48:33,444.444 INFO    ] Initializing speech engine...
[2026-06-19 17:48:33,467.467 INFO    ] 2026-06-19 17:48:33
[2026-06-19 17:48:33,724.724 INFO    ] 2026-06-19 17:48:33
[2026-06-19 17:48:33,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:48:34,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:48:34,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:48:34,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:48:34,208.208 INFO    ] time= 19/06/2026 17:48:34
[2026-06-19 17:48:34,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:48:34,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:48:34,417.417 INFO    ] No existing commands found in stream
[2026-06-19 17:48:39,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:48:39,448.448 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 17:48:40,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:48:40,016.016 INFO    ] Checking for system updates...
[2026-06-19 17:48:40,052.052 INFO    ] 200
[2026-06-19 17:48:40,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:40,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:48:40,110.110 INFO    ] No update needed
[2026-06-19 17:48:40,112.112 INFO    ] Checking for camera pi updates...
[2026-06-19 17:48:40,150.150 INFO    ] 200
[2026-06-19 17:48:40,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:40,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:48:40,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:48:40,240.240 INFO    ] No camera update needed
[2026-06-19 17:48:40,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:48:40,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:48:40,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:48:40,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:48:42,295.295 INFO    ] ================================================
[2026-06-19 17:48:42,311.311 INFO    ] Launching Daemon at Fri Jun 19 17:48:42 IST 2026
[2026-06-19 17:48:42,321.321 INFO    ] ================================================
[2026-06-19 17:48:42,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:48:42
[2026-06-19 17:48:43,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:48:43,760.760 INFO    ] Initializing speech engine...
[2026-06-19 17:48:43,768.768 INFO    ] 2026-06-19 17:48:43
[2026-06-19 17:48:44,043.043 INFO    ] 2026-06-19 17:48:44
[2026-06-19 17:48:44,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:48:44,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:48:44,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:48:44,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:48:44,537.537 INFO    ] time= 19/06/2026 17:48:44
[2026-06-19 17:48:44,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:48:44,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:48:44,752.752 INFO    ] No existing commands found in stream
[2026-06-19 17:48:49,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:48:49,779.779 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 17:48:52,898.898 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:48:52,901.901 INFO    ] Checking for system updates...
[2026-06-19 17:48:52,939.939 INFO    ] 200
[2026-06-19 17:48:52,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:53,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:48:53,006.006 INFO    ] No update needed
[2026-06-19 17:48:53,009.009 INFO    ] Checking for camera pi updates...
[2026-06-19 17:48:53,048.048 INFO    ] 200
[2026-06-19 17:48:53,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:48:53,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:48:53,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:48:53,145.145 INFO    ] No camera update needed
[2026-06-19 17:48:53,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:48:53,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:48:53,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:48:53,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:48:55,205.205 INFO    ] ================================================
[2026-06-19 17:48:55,220.220 INFO    ] Launching Daemon at Fri Jun 19 17:48:55 IST 2026
[2026-06-19 17:48:55,231.231 INFO    ] ================================================
[2026-06-19 17:48:55,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:48:55
[2026-06-19 17:48:56,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:48:56,651.651 INFO    ] Initializing speech engine...
[2026-06-19 17:48:56,674.674 INFO    ] 2026-06-19 17:48:56
[2026-06-19 17:48:56,932.932 INFO    ] 2026-06-19 17:48:56
[2026-06-19 17:48:56,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:48:57,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:48:57,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:48:57,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:48:57,419.419 INFO    ] time= 19/06/2026 17:48:57
[2026-06-19 17:48:57,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:48:57,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:48:57,625.625 INFO    ] No existing commands found in stream
[2026-06-19 17:49:02,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:49:02,657.657 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 17:49:05,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:49:05,650.650 INFO    ] Checking for system updates...
[2026-06-19 17:49:05,687.687 INFO    ] 200
[2026-06-19 17:49:05,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:05,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:49:05,752.752 INFO    ] No update needed
[2026-06-19 17:49:05,755.755 INFO    ] Checking for camera pi updates...
[2026-06-19 17:49:05,788.788 INFO    ] 200
[2026-06-19 17:49:05,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:05,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:49:05,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:49:05,889.889 INFO    ] No camera update needed
[2026-06-19 17:49:05,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:49:05,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:49:05,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:49:05,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:49:07,946.946 INFO    ] ================================================
[2026-06-19 17:49:07,966.966 INFO    ] Launching Daemon at Fri Jun 19 17:49:07 IST 2026
[2026-06-19 17:49:07,978.978 INFO    ] ================================================
[2026-06-19 17:49:08,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:49:08
[2026-06-19 17:49:09,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:49:09,498.498 INFO    ] Initializing speech engine...
[2026-06-19 17:49:09,510.510 INFO    ] 2026-06-19 17:49:09
[2026-06-19 17:49:09,796.796 INFO    ] 2026-06-19 17:49:09
[2026-06-19 17:49:09,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:49:10,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:49:10,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:49:10,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:49:10,274.274 INFO    ] time= 19/06/2026 17:49:10
[2026-06-19 17:49:10,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:49:10,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:49:10,496.496 INFO    ] No existing commands found in stream
[2026-06-19 17:49:15,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:49:15,524.524 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 17:49:19,709.709 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:49:19,711.711 INFO    ] Checking for system updates...
[2026-06-19 17:49:19,747.747 INFO    ] 200
[2026-06-19 17:49:19,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:19,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:49:19,804.804 INFO    ] No update needed
[2026-06-19 17:49:19,807.807 INFO    ] Checking for camera pi updates...
[2026-06-19 17:49:19,840.840 INFO    ] 200
[2026-06-19 17:49:19,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:19,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:49:19,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:49:19,931.931 INFO    ] No camera update needed
[2026-06-19 17:49:19,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:49:19,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:49:19,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:49:19,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:49:21,987.987 INFO    ] ================================================
[2026-06-19 17:49:22,002.002 INFO    ] Launching Daemon at Fri Jun 19 17:49:21 IST 2026
[2026-06-19 17:49:22,013.013 INFO    ] ================================================
[2026-06-19 17:49:22,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:49:22
[2026-06-19 17:49:23,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:49:23,468.468 INFO    ] Initializing speech engine...
[2026-06-19 17:49:23,479.479 INFO    ] 2026-06-19 17:49:23
[2026-06-19 17:49:23,738.738 INFO    ] 2026-06-19 17:49:23
[2026-06-19 17:49:23,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:49:24,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:49:24,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:49:24,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:49:24,207.207 INFO    ] time= 19/06/2026 17:49:24
[2026-06-19 17:49:24,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:49:24,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:49:24,430.430 INFO    ] No existing commands found in stream
[2026-06-19 17:49:29,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:49:29,449.449 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 17:49:29,970.970 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:49:29,973.973 INFO    ] Checking for system updates...
[2026-06-19 17:49:30,010.010 INFO    ] 200
[2026-06-19 17:49:30,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:30,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:49:30,073.073 INFO    ] No update needed
[2026-06-19 17:49:30,076.076 INFO    ] Checking for camera pi updates...
[2026-06-19 17:49:30,111.111 INFO    ] 200
[2026-06-19 17:49:30,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:30,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:49:30,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:49:30,218.218 INFO    ] No camera update needed
[2026-06-19 17:49:30,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:49:30,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:49:30,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:49:30,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:49:32,277.277 INFO    ] ================================================
[2026-06-19 17:49:32,293.293 INFO    ] Launching Daemon at Fri Jun 19 17:49:32 IST 2026
[2026-06-19 17:49:32,304.304 INFO    ] ================================================
[2026-06-19 17:49:32,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:49:32
[2026-06-19 17:49:33,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:49:33,906.906 INFO    ] Initializing speech engine...
[2026-06-19 17:49:33,915.915 INFO    ] 2026-06-19 17:49:33
[2026-06-19 17:49:34,209.209 INFO    ] 2026-06-19 17:49:34
[2026-06-19 17:49:34,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:49:34,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:49:34,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:49:34,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:49:34,753.753 INFO    ] time= 19/06/2026 17:49:34
[2026-06-19 17:49:34,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:49:34,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:49:34,913.913 INFO    ] No existing commands found in stream
[2026-06-19 17:49:39,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:49:39,947.947 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 17:49:42,531.531 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:49:42,534.534 INFO    ] Checking for system updates...
[2026-06-19 17:49:42,572.572 INFO    ] 200
[2026-06-19 17:49:42,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:42,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:49:42,630.630 INFO    ] No update needed
[2026-06-19 17:49:42,633.633 INFO    ] Checking for camera pi updates...
[2026-06-19 17:49:42,667.667 INFO    ] 200
[2026-06-19 17:49:42,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:42,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:49:42,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:49:42,760.760 INFO    ] No camera update needed
[2026-06-19 17:49:42,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:49:42,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:49:42,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:49:42,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:49:44,817.817 INFO    ] ================================================
[2026-06-19 17:49:44,832.832 INFO    ] Launching Daemon at Fri Jun 19 17:49:44 IST 2026
[2026-06-19 17:49:44,843.843 INFO    ] ================================================
[2026-06-19 17:49:45,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:49:45
[2026-06-19 17:49:46,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:49:46,394.394 INFO    ] Initializing speech engine...
[2026-06-19 17:49:46,402.402 INFO    ] 2026-06-19 17:49:46
[2026-06-19 17:49:46,682.682 INFO    ] 2026-06-19 17:49:46
[2026-06-19 17:49:46,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:49:46,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:49:46,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:49:47,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:49:47,174.174 INFO    ] time= 19/06/2026 17:49:47
[2026-06-19 17:49:47,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:49:47,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:49:47,372.372 INFO    ] No existing commands found in stream
[2026-06-19 17:49:52,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:49:52,391.391 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 17:49:53,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:49:53,950.950 INFO    ] Checking for system updates...
[2026-06-19 17:49:53,987.987 INFO    ] 200
[2026-06-19 17:49:53,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:54,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:49:54,045.045 INFO    ] No update needed
[2026-06-19 17:49:54,048.048 INFO    ] Checking for camera pi updates...
[2026-06-19 17:49:54,084.084 INFO    ] 200
[2026-06-19 17:49:54,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:49:54,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:49:54,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:49:54,180.180 INFO    ] No camera update needed
[2026-06-19 17:49:54,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:49:54,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:49:54,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:49:54,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:49:56,237.237 INFO    ] ================================================
[2026-06-19 17:49:56,252.252 INFO    ] Launching Daemon at Fri Jun 19 17:49:56 IST 2026
[2026-06-19 17:49:56,263.263 INFO    ] ================================================
[2026-06-19 17:49:56,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:49:56
[2026-06-19 17:49:57,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:49:57,670.670 INFO    ] Initializing speech engine...
[2026-06-19 17:49:57,683.683 INFO    ] 2026-06-19 17:49:57
[2026-06-19 17:49:57,947.947 INFO    ] 2026-06-19 17:49:57
[2026-06-19 17:49:57,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:49:58,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:49:58,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:49:58,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:49:58,329.329 INFO    ] time= 19/06/2026 17:49:58
[2026-06-19 17:49:58,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:49:58,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:49:58,506.506 INFO    ] No existing commands found in stream
[2026-06-19 17:50:03,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:50:03,550.550 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 17:50:08,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:50:08,384.384 INFO    ] Checking for system updates...
[2026-06-19 17:50:08,424.424 INFO    ] 200
[2026-06-19 17:50:08,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:08,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:50:08,481.481 INFO    ] No update needed
[2026-06-19 17:50:08,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 17:50:08,517.517 INFO    ] 200
[2026-06-19 17:50:08,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:08,572.572 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:50:08,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:50:08,621.621 INFO    ] No camera update needed
[2026-06-19 17:50:08,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:50:08,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:50:08,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:50:08,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:50:10,677.677 INFO    ] ================================================
[2026-06-19 17:50:10,692.692 INFO    ] Launching Daemon at Fri Jun 19 17:50:10 IST 2026
[2026-06-19 17:50:10,703.703 INFO    ] ================================================
[2026-06-19 17:50:11,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:50:11
[2026-06-19 17:50:11,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:50:12,123.123 INFO    ] Initializing speech engine...
[2026-06-19 17:50:12,137.137 INFO    ] 2026-06-19 17:50:12
[2026-06-19 17:50:12,415.415 INFO    ] 2026-06-19 17:50:12
[2026-06-19 17:50:12,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:50:12,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:50:12,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:50:12,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:50:12,826.826 INFO    ] time= 19/06/2026 17:50:12
[2026-06-19 17:50:12,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:50:12,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:50:12,911.911 INFO    ] No existing commands found in stream
[2026-06-19 17:50:17,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:50:17,944.944 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 17:50:21,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:50:21,234.234 INFO    ] Checking for system updates...
[2026-06-19 17:50:21,271.271 INFO    ] 200
[2026-06-19 17:50:21,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:21,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:50:21,329.329 INFO    ] No update needed
[2026-06-19 17:50:21,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 17:50:21,365.365 INFO    ] 200
[2026-06-19 17:50:21,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:21,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:50:21,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:50:21,460.460 INFO    ] No camera update needed
[2026-06-19 17:50:21,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:50:21,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:50:21,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:50:21,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:50:23,515.515 INFO    ] ================================================
[2026-06-19 17:50:23,530.530 INFO    ] Launching Daemon at Fri Jun 19 17:50:23 IST 2026
[2026-06-19 17:50:23,541.541 INFO    ] ================================================
[2026-06-19 17:50:24,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:50:24
[2026-06-19 17:50:24,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:50:25,004.004 INFO    ] Initializing speech engine...
[2026-06-19 17:50:25,024.024 INFO    ] 2026-06-19 17:50:25
[2026-06-19 17:50:25,300.300 INFO    ] 2026-06-19 17:50:25
[2026-06-19 17:50:25,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:50:25,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:50:25,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:50:25,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:50:25,785.785 INFO    ] time= 19/06/2026 17:50:25
[2026-06-19 17:50:25,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:50:25,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:50:25,966.966 INFO    ] No existing commands found in stream
[2026-06-19 17:50:30,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:50:30,998.998 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 17:50:34,275.275 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:50:34,278.278 INFO    ] Checking for system updates...
[2026-06-19 17:50:34,318.318 INFO    ] 200
[2026-06-19 17:50:34,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:34,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:50:34,376.376 INFO    ] No update needed
[2026-06-19 17:50:34,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 17:50:34,412.412 INFO    ] 200
[2026-06-19 17:50:34,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:34,456.456 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:50:34,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:50:34,512.512 INFO    ] No camera update needed
[2026-06-19 17:50:34,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:50:34,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:50:34,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:50:34,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:50:36,567.567 INFO    ] ================================================
[2026-06-19 17:50:36,582.582 INFO    ] Launching Daemon at Fri Jun 19 17:50:36 IST 2026
[2026-06-19 17:50:36,593.593 INFO    ] ================================================
[2026-06-19 17:50:37,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:50:37
[2026-06-19 17:50:37,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:50:38,042.042 INFO    ] Initializing speech engine...
[2026-06-19 17:50:38,056.056 INFO    ] 2026-06-19 17:50:38
[2026-06-19 17:50:38,341.341 INFO    ] 2026-06-19 17:50:38
[2026-06-19 17:50:38,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:50:38,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:50:38,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:50:38,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:50:38,759.759 INFO    ] time= 19/06/2026 17:50:38
[2026-06-19 17:50:38,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:50:38,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:50:38,957.957 INFO    ] No existing commands found in stream
[2026-06-19 17:50:43,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:50:43,970.970 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 17:50:44,376.376 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:50:44,378.378 INFO    ] Checking for system updates...
[2026-06-19 17:50:44,415.415 INFO    ] 200
[2026-06-19 17:50:44,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:44,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:50:44,472.472 INFO    ] No update needed
[2026-06-19 17:50:44,474.474 INFO    ] Checking for camera pi updates...
[2026-06-19 17:50:44,508.508 INFO    ] 200
[2026-06-19 17:50:44,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:44,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:50:44,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:50:44,598.598 INFO    ] No camera update needed
[2026-06-19 17:50:44,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:50:44,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:50:44,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:50:44,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:50:46,653.653 INFO    ] ================================================
[2026-06-19 17:50:46,669.669 INFO    ] Launching Daemon at Fri Jun 19 17:50:46 IST 2026
[2026-06-19 17:50:46,680.680 INFO    ] ================================================
[2026-06-19 17:50:47,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:50:47
[2026-06-19 17:50:47,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:50:48,263.263 INFO    ] Initializing speech engine...
[2026-06-19 17:50:48,276.276 INFO    ] 2026-06-19 17:50:48
[2026-06-19 17:50:48,571.571 INFO    ] 2026-06-19 17:50:48
[2026-06-19 17:50:48,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:50:48,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:50:48,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:50:49,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:50:49,123.123 INFO    ] time= 19/06/2026 17:50:49
[2026-06-19 17:50:49,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:50:49,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:50:49,286.286 INFO    ] No existing commands found in stream
[2026-06-19 17:50:54,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:50:54,314.314 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 17:50:58,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:50:58,082.082 INFO    ] Checking for system updates...
[2026-06-19 17:50:58,118.118 INFO    ] 200
[2026-06-19 17:50:58,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:58,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:50:58,176.176 INFO    ] No update needed
[2026-06-19 17:50:58,178.178 INFO    ] Checking for camera pi updates...
[2026-06-19 17:50:58,213.213 INFO    ] 200
[2026-06-19 17:50:58,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:50:58,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:50:58,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:50:58,305.305 INFO    ] No camera update needed
[2026-06-19 17:50:58,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:50:58,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:50:58,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:50:58,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:51:00,360.360 INFO    ] ================================================
[2026-06-19 17:51:00,376.376 INFO    ] Launching Daemon at Fri Jun 19 17:51:00 IST 2026
[2026-06-19 17:51:00,387.387 INFO    ] ================================================
[2026-06-19 17:51:00,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:51:00
[2026-06-19 17:51:01,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:51:02,108.108 INFO    ] Initializing speech engine...
[2026-06-19 17:51:02,127.127 INFO    ] 2026-06-19 17:51:02
[2026-06-19 17:51:02,433.433 INFO    ] 2026-06-19 17:51:02
[2026-06-19 17:51:02,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:51:02,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:51:02,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:51:02,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:51:02,901.901 INFO    ] time= 19/06/2026 17:51:02
[2026-06-19 17:51:02,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:51:02,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:51:03,144.144 INFO    ] No existing commands found in stream
[2026-06-19 17:51:08,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:51:08,180.180 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 17:51:09,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:51:09,506.506 INFO    ] Checking for system updates...
[2026-06-19 17:51:09,542.542 INFO    ] 200
[2026-06-19 17:51:09,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:09,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:51:09,601.601 INFO    ] No update needed
[2026-06-19 17:51:09,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 17:51:09,640.640 INFO    ] 200
[2026-06-19 17:51:09,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:09,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:51:09,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:51:09,734.734 INFO    ] No camera update needed
[2026-06-19 17:51:09,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:51:09,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:51:09,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:51:09,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:51:11,789.789 INFO    ] ================================================
[2026-06-19 17:51:11,804.804 INFO    ] Launching Daemon at Fri Jun 19 17:51:11 IST 2026
[2026-06-19 17:51:11,814.814 INFO    ] ================================================
[2026-06-19 17:51:12,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:51:12
[2026-06-19 17:51:12,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:51:13,253.253 INFO    ] Initializing speech engine...
[2026-06-19 17:51:13,264.264 INFO    ] 2026-06-19 17:51:13
[2026-06-19 17:51:13,524.524 INFO    ] 2026-06-19 17:51:13
[2026-06-19 17:51:13,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:51:13,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:51:13,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:51:13,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:51:13,959.959 INFO    ] time= 19/06/2026 17:51:13
[2026-06-19 17:51:13,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:51:13,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:51:14,083.083 INFO    ] No existing commands found in stream
[2026-06-19 17:51:19,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:51:19,096.096 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 17:51:23,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:51:23,229.229 INFO    ] Checking for system updates...
[2026-06-19 17:51:23,266.266 INFO    ] 200
[2026-06-19 17:51:23,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:23,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:51:23,325.325 INFO    ] No update needed
[2026-06-19 17:51:23,328.328 INFO    ] Checking for camera pi updates...
[2026-06-19 17:51:23,362.362 INFO    ] 200
[2026-06-19 17:51:23,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:23,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:51:23,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:51:23,453.453 INFO    ] No camera update needed
[2026-06-19 17:51:23,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:51:23,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:51:23,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:51:23,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:51:25,508.508 INFO    ] ================================================
[2026-06-19 17:51:25,523.523 INFO    ] Launching Daemon at Fri Jun 19 17:51:25 IST 2026
[2026-06-19 17:51:25,533.533 INFO    ] ================================================
[2026-06-19 17:51:26,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:51:26
[2026-06-19 17:51:26,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:51:26,965.965 INFO    ] Initializing speech engine...
[2026-06-19 17:51:26,974.974 INFO    ] 2026-06-19 17:51:26
[2026-06-19 17:51:27,227.227 INFO    ] 2026-06-19 17:51:27
[2026-06-19 17:51:27,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:51:27,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:51:27,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:51:27,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:51:27,694.694 INFO    ] time= 19/06/2026 17:51:27
[2026-06-19 17:51:27,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:51:27,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:51:27,943.943 INFO    ] No existing commands found in stream
[2026-06-19 17:51:32,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:51:32,971.971 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 17:51:34,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:51:34,402.402 INFO    ] Checking for system updates...
[2026-06-19 17:51:34,442.442 INFO    ] 200
[2026-06-19 17:51:34,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:34,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:51:34,507.507 INFO    ] No update needed
[2026-06-19 17:51:34,509.509 INFO    ] Checking for camera pi updates...
[2026-06-19 17:51:34,546.546 INFO    ] 200
[2026-06-19 17:51:34,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:34,593.593 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:51:34,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:51:34,641.641 INFO    ] No camera update needed
[2026-06-19 17:51:34,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:51:34,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:51:34,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:51:34,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:51:36,699.699 INFO    ] ================================================
[2026-06-19 17:51:36,714.714 INFO    ] Launching Daemon at Fri Jun 19 17:51:36 IST 2026
[2026-06-19 17:51:36,725.725 INFO    ] ================================================
[2026-06-19 17:51:37,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:51:37
[2026-06-19 17:51:37,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:51:38,242.242 INFO    ] Initializing speech engine...
[2026-06-19 17:51:38,251.251 INFO    ] 2026-06-19 17:51:38
[2026-06-19 17:51:38,501.501 INFO    ] 2026-06-19 17:51:38
[2026-06-19 17:51:38,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:51:38,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:51:38,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:51:38,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:51:39,072.072 INFO    ] time= 19/06/2026 17:51:39
[2026-06-19 17:51:39,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:51:39,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:51:39,257.257 INFO    ] No existing commands found in stream
[2026-06-19 17:51:44,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:51:44,280.280 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 17:51:48,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:51:48,694.694 INFO    ] Checking for system updates...
[2026-06-19 17:51:48,733.733 INFO    ] 200
[2026-06-19 17:51:48,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:48,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:51:48,791.791 INFO    ] No update needed
[2026-06-19 17:51:48,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 17:51:48,830.830 INFO    ] 200
[2026-06-19 17:51:48,833.833 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:48,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:51:48,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:51:48,919.919 INFO    ] No camera update needed
[2026-06-19 17:51:48,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:51:48,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:51:48,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:51:48,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:51:50,976.976 INFO    ] ================================================
[2026-06-19 17:51:50,991.991 INFO    ] Launching Daemon at Fri Jun 19 17:51:50 IST 2026
[2026-06-19 17:51:51,002.002 INFO    ] ================================================
[2026-06-19 17:51:51,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:51:51
[2026-06-19 17:51:52,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:51:52,570.570 INFO    ] Initializing speech engine...
[2026-06-19 17:51:52,590.590 INFO    ] 2026-06-19 17:51:52
[2026-06-19 17:51:52,864.864 INFO    ] 2026-06-19 17:51:52
[2026-06-19 17:51:52,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:51:53,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:51:53,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:51:53,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:51:53,360.360 INFO    ] time= 19/06/2026 17:51:53
[2026-06-19 17:51:53,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:51:53,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:51:53,565.565 INFO    ] No existing commands found in stream
[2026-06-19 17:51:58,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:51:58,597.597 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 17:51:59,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:51:59,536.536 INFO    ] Checking for system updates...
[2026-06-19 17:51:59,573.573 INFO    ] 200
[2026-06-19 17:51:59,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:59,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:51:59,638.638 INFO    ] No update needed
[2026-06-19 17:51:59,641.641 INFO    ] Checking for camera pi updates...
[2026-06-19 17:51:59,676.676 INFO    ] 200
[2026-06-19 17:51:59,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:51:59,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:51:59,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:51:59,770.770 INFO    ] No camera update needed
[2026-06-19 17:51:59,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:51:59,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:51:59,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:51:59,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:52:01,837.837 INFO    ] ================================================
[2026-06-19 17:52:01,881.881 INFO    ] Launching Daemon at Fri Jun 19 17:52:01 IST 2026
[2026-06-19 17:52:01,896.896 INFO    ] ================================================
[2026-06-19 17:52:02,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:52:02
[2026-06-19 17:52:03,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:52:03,497.497 INFO    ] Initializing speech engine...
[2026-06-19 17:52:03,520.520 INFO    ] 2026-06-19 17:52:03
[2026-06-19 17:52:03,772.772 INFO    ] 2026-06-19 17:52:03
[2026-06-19 17:52:03,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:52:04,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:52:04,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:52:04,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:52:04,296.296 INFO    ] time= 19/06/2026 17:52:04
[2026-06-19 17:52:04,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:52:04,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:52:04,465.465 INFO    ] No existing commands found in stream
[2026-06-19 17:52:09,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:52:09,490.490 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 17:52:10,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:52:10,909.909 INFO    ] Checking for system updates...
[2026-06-19 17:52:10,950.950 INFO    ] 200
[2026-06-19 17:52:10,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:52:11,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:52:11,015.015 INFO    ] No update needed
[2026-06-19 17:52:11,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 17:52:11,055.055 INFO    ] 200
[2026-06-19 17:52:11,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:52:11,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:52:11,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:52:11,143.143 INFO    ] No camera update needed
[2026-06-19 17:52:11,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:52:11,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:52:11,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:52:11,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:52:13,200.200 INFO    ] ================================================
[2026-06-19 17:52:13,215.215 INFO    ] Launching Daemon at Fri Jun 19 17:52:13 IST 2026
[2026-06-19 17:52:13,226.226 INFO    ] ================================================
[2026-06-19 17:52:13,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:52:13
[2026-06-19 17:52:14,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:52:14,696.696 INFO    ] Initializing speech engine...
[2026-06-19 17:52:14,706.706 INFO    ] 2026-06-19 17:52:14
[2026-06-19 17:52:14,969.969 INFO    ] 2026-06-19 17:52:14
[2026-06-19 17:52:15,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:52:15,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:52:15,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:52:15,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:52:15,457.457 INFO    ] time= 19/06/2026 17:52:15
[2026-06-19 17:52:15,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:52:15,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:52:15,655.655 INFO    ] No existing commands found in stream
[2026-06-19 17:52:20,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:52:20,678.678 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 17:52:24,666.666 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:52:24,669.669 INFO    ] Checking for system updates...
[2026-06-19 17:52:24,706.706 INFO    ] 200
[2026-06-19 17:52:24,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:52:24,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:52:24,768.768 INFO    ] No update needed
[2026-06-19 17:52:24,771.771 INFO    ] Checking for camera pi updates...
[2026-06-19 17:52:24,805.805 INFO    ] 200
[2026-06-19 17:52:24,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:52:24,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:52:24,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:52:24,897.897 INFO    ] No camera update needed
[2026-06-19 17:52:24,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:52:24,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:52:24,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:52:24,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:52:26,958.958 INFO    ] ================================================
[2026-06-19 17:52:26,973.973 INFO    ] Launching Daemon at Fri Jun 19 17:52:26 IST 2026
[2026-06-19 17:52:26,984.984 INFO    ] ================================================
[2026-06-19 17:52:27,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:52:27
[2026-06-19 17:52:28,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:52:28,420.420 INFO    ] Initializing speech engine...
[2026-06-19 17:52:28,429.429 INFO    ] 2026-06-19 17:52:28
[2026-06-19 17:52:28,687.687 INFO    ] 2026-06-19 17:52:28
[2026-06-19 17:52:28,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:52:28,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:52:28,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:52:29,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:52:29,163.163 INFO    ] time= 19/06/2026 17:52:29
[2026-06-19 17:52:29,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:52:29,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:52:29,344.344 INFO    ] No existing commands found in stream
[2026-06-19 17:52:34,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:52:34,378.378 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 17:52:36,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:52:36,939.939 INFO    ] Checking for system updates...
[2026-06-19 17:52:36,982.982 INFO    ] 200
[2026-06-19 17:52:36,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:52:37,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:52:37,041.041 INFO    ] No update needed
[2026-06-19 17:52:37,043.043 INFO    ] Checking for camera pi updates...
[2026-06-19 17:52:37,082.082 INFO    ] 200
[2026-06-19 17:52:37,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:52:37,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:52:37,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:52:37,277.277 INFO    ] No camera update needed
[2026-06-19 17:52:37,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:52:37,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:52:37,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:52:37,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:52:39,334.334 INFO    ] ================================================
[2026-06-19 17:52:39,350.350 INFO    ] Launching Daemon at Fri Jun 19 17:52:39 IST 2026
[2026-06-19 17:52:39,371.371 INFO    ] ================================================
[2026-06-19 17:52:39,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:52:39
[2026-06-19 17:52:40,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:52:40,793.793 INFO    ] Initializing speech engine...
[2026-06-19 17:52:40,815.815 INFO    ] 2026-06-19 17:52:40
[2026-06-19 17:52:41,098.098 INFO    ] 2026-06-19 17:52:41
[2026-06-19 17:52:41,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:52:41,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:52:41,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:52:41,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:52:41,531.531 INFO    ] time= 19/06/2026 17:52:41
[2026-06-19 17:52:41,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:52:41,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:52:41,626.626 INFO    ] No existing commands found in stream
[2026-06-19 17:52:46,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:52:46,659.659 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 17:52:49,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:52:49,491.491 INFO    ] Checking for system updates...
[2026-06-19 17:52:49,528.528 INFO    ] 200
[2026-06-19 17:52:49,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:52:49,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:52:49,598.598 INFO    ] No update needed
[2026-06-19 17:52:49,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 17:52:49,637.637 INFO    ] 200
[2026-06-19 17:52:49,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:52:49,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:52:49,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:52:49,727.727 INFO    ] No camera update needed
[2026-06-19 17:52:49,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:52:49,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:52:49,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:52:49,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:52:51,786.786 INFO    ] ================================================
[2026-06-19 17:52:51,802.802 INFO    ] Launching Daemon at Fri Jun 19 17:52:51 IST 2026
[2026-06-19 17:52:51,813.813 INFO    ] ================================================
[2026-06-19 17:52:52,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:52:52
[2026-06-19 17:52:52,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:52:53,222.222 INFO    ] Initializing speech engine...
[2026-06-19 17:52:53,244.244 INFO    ] 2026-06-19 17:52:53
[2026-06-19 17:52:53,519.519 INFO    ] 2026-06-19 17:52:53
[2026-06-19 17:52:53,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:52:53,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:52:53,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:52:53,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:52:53,953.953 INFO    ] time= 19/06/2026 17:52:53
[2026-06-19 17:52:53,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:52:53,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:52:54,041.041 INFO    ] No existing commands found in stream
[2026-06-19 17:52:59,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:52:59,057.057 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 17:53:00,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:53:00,496.496 INFO    ] Checking for system updates...
[2026-06-19 17:53:00,533.533 INFO    ] 200
[2026-06-19 17:53:00,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:00,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:53:00,590.590 INFO    ] No update needed
[2026-06-19 17:53:00,593.593 INFO    ] Checking for camera pi updates...
[2026-06-19 17:53:00,634.634 INFO    ] 200
[2026-06-19 17:53:00,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:00,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:53:00,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:53:00,732.732 INFO    ] No camera update needed
[2026-06-19 17:53:00,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:53:00,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:53:00,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:53:00,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:53:02,803.803 INFO    ] ================================================
[2026-06-19 17:53:02,826.826 INFO    ] Launching Daemon at Fri Jun 19 17:53:02 IST 2026
[2026-06-19 17:53:02,842.842 INFO    ] ================================================
[2026-06-19 17:53:03,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:53:03
[2026-06-19 17:53:04,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:53:04,320.320 INFO    ] Initializing speech engine...
[2026-06-19 17:53:04,342.342 INFO    ] 2026-06-19 17:53:04
[2026-06-19 17:53:04,598.598 INFO    ] 2026-06-19 17:53:04
[2026-06-19 17:53:04,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:53:04,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:53:04,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:53:05,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:53:05,115.115 INFO    ] time= 19/06/2026 17:53:05
[2026-06-19 17:53:05,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:53:05,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:53:05,339.339 INFO    ] No existing commands found in stream
[2026-06-19 17:53:10,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:53:10,358.358 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 17:53:14,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:53:14,691.691 INFO    ] Checking for system updates...
[2026-06-19 17:53:14,730.730 INFO    ] 200
[2026-06-19 17:53:14,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:14,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:53:14,798.798 INFO    ] No update needed
[2026-06-19 17:53:14,801.801 INFO    ] Checking for camera pi updates...
[2026-06-19 17:53:14,839.839 INFO    ] 200
[2026-06-19 17:53:14,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:14,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:53:14,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:53:14,934.934 INFO    ] No camera update needed
[2026-06-19 17:53:14,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:53:14,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:53:14,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:53:14,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:53:16,989.989 INFO    ] ================================================
[2026-06-19 17:53:17,004.004 INFO    ] Launching Daemon at Fri Jun 19 17:53:16 IST 2026
[2026-06-19 17:53:17,015.015 INFO    ] ================================================
[2026-06-19 17:53:17,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:53:17
[2026-06-19 17:53:18,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:53:18,440.440 INFO    ] Initializing speech engine...
[2026-06-19 17:53:18,450.450 INFO    ] 2026-06-19 17:53:18
[2026-06-19 17:53:18,708.708 INFO    ] 2026-06-19 17:53:18
[2026-06-19 17:53:18,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:53:19,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:53:19,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:53:19,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:53:19,233.233 INFO    ] time= 19/06/2026 17:53:19
[2026-06-19 17:53:19,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:53:19,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:53:19,491.491 INFO    ] No existing commands found in stream
[2026-06-19 17:53:24,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:53:24,513.513 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 17:53:25,513.513 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:53:25,516.516 INFO    ] Checking for system updates...
[2026-06-19 17:53:25,554.554 INFO    ] 200
[2026-06-19 17:53:25,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:25,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:53:25,612.612 INFO    ] No update needed
[2026-06-19 17:53:25,615.615 INFO    ] Checking for camera pi updates...
[2026-06-19 17:53:25,649.649 INFO    ] 200
[2026-06-19 17:53:25,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:25,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:53:25,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:53:25,740.740 INFO    ] No camera update needed
[2026-06-19 17:53:25,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:53:25,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:53:25,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:53:25,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:53:27,796.796 INFO    ] ================================================
[2026-06-19 17:53:27,811.811 INFO    ] Launching Daemon at Fri Jun 19 17:53:27 IST 2026
[2026-06-19 17:53:27,822.822 INFO    ] ================================================
[2026-06-19 17:53:28,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:53:28
[2026-06-19 17:53:29,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:53:29,282.282 INFO    ] Initializing speech engine...
[2026-06-19 17:53:29,289.289 INFO    ] 2026-06-19 17:53:29
[2026-06-19 17:53:29,548.548 INFO    ] 2026-06-19 17:53:29
[2026-06-19 17:53:29,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:53:29,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:53:29,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:53:30,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:53:30,061.061 INFO    ] time= 19/06/2026 17:53:30
[2026-06-19 17:53:30,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:53:30,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:53:30,300.300 INFO    ] No existing commands found in stream
[2026-06-19 17:53:35,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:53:35,318.318 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 17:53:38,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:53:38,798.798 INFO    ] Checking for system updates...
[2026-06-19 17:53:38,834.834 INFO    ] 200
[2026-06-19 17:53:38,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:38,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:53:38,899.899 INFO    ] No update needed
[2026-06-19 17:53:38,901.901 INFO    ] Checking for camera pi updates...
[2026-06-19 17:53:38,936.936 INFO    ] 200
[2026-06-19 17:53:38,939.939 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:38,980.980 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:53:39,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:53:39,041.041 INFO    ] No camera update needed
[2026-06-19 17:53:39,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:53:39,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:53:39,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:53:39,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:53:41,099.099 INFO    ] ================================================
[2026-06-19 17:53:41,114.114 INFO    ] Launching Daemon at Fri Jun 19 17:53:41 IST 2026
[2026-06-19 17:53:41,124.124 INFO    ] ================================================
[2026-06-19 17:53:41,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:53:41
[2026-06-19 17:53:42,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:53:42,584.584 INFO    ] Initializing speech engine...
[2026-06-19 17:53:42,593.593 INFO    ] 2026-06-19 17:53:42
[2026-06-19 17:53:42,843.843 INFO    ] 2026-06-19 17:53:42
[2026-06-19 17:53:42,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:53:43,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:53:43,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:53:43,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:53:43,319.319 INFO    ] time= 19/06/2026 17:53:43
[2026-06-19 17:53:43,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:53:43,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:53:43,537.537 INFO    ] No existing commands found in stream
[2026-06-19 17:53:48,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:53:48,565.565 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 17:53:51,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:53:51,586.586 INFO    ] Checking for system updates...
[2026-06-19 17:53:51,622.622 INFO    ] 200
[2026-06-19 17:53:51,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:51,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:53:51,687.687 INFO    ] No update needed
[2026-06-19 17:53:51,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 17:53:51,727.727 INFO    ] 200
[2026-06-19 17:53:51,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:53:51,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:53:51,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:53:51,818.818 INFO    ] No camera update needed
[2026-06-19 17:53:51,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:53:51,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:53:51,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:53:51,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:53:53,875.875 INFO    ] ================================================
[2026-06-19 17:53:53,891.891 INFO    ] Launching Daemon at Fri Jun 19 17:53:53 IST 2026
[2026-06-19 17:53:53,902.902 INFO    ] ================================================
[2026-06-19 17:53:54,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:53:54
[2026-06-19 17:53:55,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:53:55,503.503 INFO    ] Initializing speech engine...
[2026-06-19 17:53:55,513.513 INFO    ] 2026-06-19 17:53:55
[2026-06-19 17:53:55,783.783 INFO    ] 2026-06-19 17:53:55
[2026-06-19 17:53:55,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:53:56,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:53:56,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:53:56,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:53:56,323.323 INFO    ] time= 19/06/2026 17:53:56
[2026-06-19 17:53:56,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:53:56,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:53:56,494.494 INFO    ] No existing commands found in stream
[2026-06-19 17:54:01,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:54:01,523.523 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 17:54:02,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:54:02,174.174 INFO    ] Checking for system updates...
[2026-06-19 17:54:02,232.232 INFO    ] 200
[2026-06-19 17:54:02,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:02,307.307 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:54:02,310.310 INFO    ] No update needed
[2026-06-19 17:54:02,314.314 INFO    ] Checking for camera pi updates...
[2026-06-19 17:54:02,354.354 INFO    ] 200
[2026-06-19 17:54:02,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:02,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:54:02,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:54:02,481.481 INFO    ] No camera update needed
[2026-06-19 17:54:02,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:54:02,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:54:02,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:54:02,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:54:04,550.550 INFO    ] ================================================
[2026-06-19 17:54:04,566.566 INFO    ] Launching Daemon at Fri Jun 19 17:54:04 IST 2026
[2026-06-19 17:54:04,578.578 INFO    ] ================================================
[2026-06-19 17:54:05,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:54:05
[2026-06-19 17:54:05,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:54:06,014.014 INFO    ] Initializing speech engine...
[2026-06-19 17:54:06,039.039 INFO    ] 2026-06-19 17:54:06
[2026-06-19 17:54:06,311.311 INFO    ] 2026-06-19 17:54:06
[2026-06-19 17:54:06,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:54:06,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:54:06,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:54:06,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:54:06,710.710 INFO    ] time= 19/06/2026 17:54:06
[2026-06-19 17:54:06,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:54:06,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:54:06,839.839 INFO    ] No existing commands found in stream
[2026-06-19 17:54:11,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:54:11,852.852 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 17:54:16,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:54:16,091.091 INFO    ] Checking for system updates...
[2026-06-19 17:54:16,131.131 INFO    ] 200
[2026-06-19 17:54:16,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:16,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:54:16,190.190 INFO    ] No update needed
[2026-06-19 17:54:16,193.193 INFO    ] Checking for camera pi updates...
[2026-06-19 17:54:16,230.230 INFO    ] 200
[2026-06-19 17:54:16,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:16,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:54:16,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:54:16,323.323 INFO    ] No camera update needed
[2026-06-19 17:54:16,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:54:16,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:54:16,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:54:16,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:54:18,379.379 INFO    ] ================================================
[2026-06-19 17:54:18,394.394 INFO    ] Launching Daemon at Fri Jun 19 17:54:18 IST 2026
[2026-06-19 17:54:18,405.405 INFO    ] ================================================
[2026-06-19 17:54:18,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:54:18
[2026-06-19 17:54:19,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:54:19,876.876 INFO    ] Initializing speech engine...
[2026-06-19 17:54:19,886.886 INFO    ] 2026-06-19 17:54:19
[2026-06-19 17:54:20,156.156 INFO    ] 2026-06-19 17:54:20
[2026-06-19 17:54:20,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:54:20,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:54:20,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:54:20,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:54:20,644.644 INFO    ] time= 19/06/2026 17:54:20
[2026-06-19 17:54:20,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:54:20,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:54:20,815.815 INFO    ] No existing commands found in stream
[2026-06-19 17:54:25,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:54:25,829.829 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 17:54:29,065.065 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:54:29,068.068 INFO    ] Checking for system updates...
[2026-06-19 17:54:29,103.103 INFO    ] 200
[2026-06-19 17:54:29,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:29,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:54:29,162.162 INFO    ] No update needed
[2026-06-19 17:54:29,165.165 INFO    ] Checking for camera pi updates...
[2026-06-19 17:54:29,199.199 INFO    ] 200
[2026-06-19 17:54:29,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:29,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:54:29,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:54:29,305.305 INFO    ] No camera update needed
[2026-06-19 17:54:29,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:54:29,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:54:29,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:54:29,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:54:31,361.361 INFO    ] ================================================
[2026-06-19 17:54:31,376.376 INFO    ] Launching Daemon at Fri Jun 19 17:54:31 IST 2026
[2026-06-19 17:54:31,387.387 INFO    ] ================================================
[2026-06-19 17:54:32,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:54:32
[2026-06-19 17:54:32,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:54:33,091.091 INFO    ] Initializing speech engine...
[2026-06-19 17:54:33,104.104 INFO    ] 2026-06-19 17:54:33
[2026-06-19 17:54:33,374.374 INFO    ] 2026-06-19 17:54:33
[2026-06-19 17:54:33,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:54:33,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:54:33,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:54:33,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:54:33,932.932 INFO    ] time= 19/06/2026 17:54:33
[2026-06-19 17:54:33,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:54:33,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:54:34,086.086 INFO    ] No existing commands found in stream
[2026-06-19 17:54:39,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:54:39,103.103 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 17:54:41,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:54:41,320.320 INFO    ] Checking for system updates...
[2026-06-19 17:54:41,357.357 INFO    ] 200
[2026-06-19 17:54:41,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:41,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:54:41,422.422 INFO    ] No update needed
[2026-06-19 17:54:41,425.425 INFO    ] Checking for camera pi updates...
[2026-06-19 17:54:41,463.463 INFO    ] 200
[2026-06-19 17:54:41,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:41,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:54:41,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:54:41,660.660 INFO    ] No camera update needed
[2026-06-19 17:54:41,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:54:41,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:54:41,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:54:41,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:54:43,718.718 INFO    ] ================================================
[2026-06-19 17:54:43,733.733 INFO    ] Launching Daemon at Fri Jun 19 17:54:43 IST 2026
[2026-06-19 17:54:43,744.744 INFO    ] ================================================
[2026-06-19 17:54:44,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:54:44
[2026-06-19 17:54:44,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:54:45,222.222 INFO    ] Initializing speech engine...
[2026-06-19 17:54:45,237.237 INFO    ] 2026-06-19 17:54:45
[2026-06-19 17:54:45,521.521 INFO    ] 2026-06-19 17:54:45
[2026-06-19 17:54:45,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:54:45,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:54:45,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:54:45,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:54:45,936.936 INFO    ] time= 19/06/2026 17:54:45
[2026-06-19 17:54:45,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:54:45,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:54:46,022.022 INFO    ] No existing commands found in stream
[2026-06-19 17:54:51,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:54:51,055.055 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 17:54:52,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:54:52,232.232 INFO    ] Checking for system updates...
[2026-06-19 17:54:52,268.268 INFO    ] 200
[2026-06-19 17:54:52,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:52,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:54:52,327.327 INFO    ] No update needed
[2026-06-19 17:54:52,329.329 INFO    ] Checking for camera pi updates...
[2026-06-19 17:54:52,366.366 INFO    ] 200
[2026-06-19 17:54:52,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:54:52,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:54:52,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:54:52,464.464 INFO    ] No camera update needed
[2026-06-19 17:54:52,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:54:52,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:54:52,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:54:52,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:54:54,520.520 INFO    ] ================================================
[2026-06-19 17:54:54,536.536 INFO    ] Launching Daemon at Fri Jun 19 17:54:54 IST 2026
[2026-06-19 17:54:54,547.547 INFO    ] ================================================
[2026-06-19 17:54:55,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:54:55
[2026-06-19 17:54:55,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:54:55,995.995 INFO    ] Initializing speech engine...
[2026-06-19 17:54:56,005.005 INFO    ] 2026-06-19 17:54:56
[2026-06-19 17:54:56,254.254 INFO    ] 2026-06-19 17:54:56
[2026-06-19 17:54:56,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:54:56,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:54:56,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:54:56,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:54:56,760.760 INFO    ] time= 19/06/2026 17:54:56
[2026-06-19 17:54:56,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:54:56,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:54:57,011.011 INFO    ] No existing commands found in stream
[2026-06-19 17:55:02,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:55:02,043.043 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 17:55:02,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:55:02,993.993 INFO    ] Checking for system updates...
[2026-06-19 17:55:03,043.043 INFO    ] 200
[2026-06-19 17:55:03,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:03,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:55:03,128.128 INFO    ] No update needed
[2026-06-19 17:55:03,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 17:55:03,173.173 INFO    ] 200
[2026-06-19 17:55:03,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:03,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:55:03,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:55:03,260.260 INFO    ] No camera update needed
[2026-06-19 17:55:03,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:55:03,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:55:03,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:55:03,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:55:05,320.320 INFO    ] ================================================
[2026-06-19 17:55:05,336.336 INFO    ] Launching Daemon at Fri Jun 19 17:55:05 IST 2026
[2026-06-19 17:55:05,347.347 INFO    ] ================================================
[2026-06-19 17:55:06,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:55:06
[2026-06-19 17:55:06,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:55:07,015.015 INFO    ] Initializing speech engine...
[2026-06-19 17:55:07,029.029 INFO    ] 2026-06-19 17:55:07
[2026-06-19 17:55:07,318.318 INFO    ] 2026-06-19 17:55:07
[2026-06-19 17:55:07,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:55:07,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:55:07,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:55:07,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:55:07,852.852 INFO    ] time= 19/06/2026 17:55:07
[2026-06-19 17:55:07,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:55:07,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:55:08,024.024 INFO    ] No existing commands found in stream
[2026-06-19 17:55:13,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:55:13,061.061 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 17:55:15,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:55:15,307.307 INFO    ] Checking for system updates...
[2026-06-19 17:55:15,350.350 INFO    ] 200
[2026-06-19 17:55:15,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:15,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:55:15,415.415 INFO    ] No update needed
[2026-06-19 17:55:15,418.418 INFO    ] Checking for camera pi updates...
[2026-06-19 17:55:15,451.451 INFO    ] 200
[2026-06-19 17:55:15,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:15,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:55:15,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:55:15,555.555 INFO    ] No camera update needed
[2026-06-19 17:55:15,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:55:15,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:55:15,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:55:15,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:55:17,611.611 INFO    ] ================================================
[2026-06-19 17:55:17,627.627 INFO    ] Launching Daemon at Fri Jun 19 17:55:17 IST 2026
[2026-06-19 17:55:17,638.638 INFO    ] ================================================
[2026-06-19 17:55:18,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:55:18
[2026-06-19 17:55:18,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:55:19,102.102 INFO    ] Initializing speech engine...
[2026-06-19 17:55:19,111.111 INFO    ] 2026-06-19 17:55:19
[2026-06-19 17:55:19,367.367 INFO    ] 2026-06-19 17:55:19
[2026-06-19 17:55:19,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:55:19,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:55:19,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:55:19,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:55:19,798.798 INFO    ] time= 19/06/2026 17:55:19
[2026-06-19 17:55:19,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:55:19,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:55:20,047.047 INFO    ] No existing commands found in stream
[2026-06-19 17:55:25,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:55:25,082.082 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 17:55:26,217.217 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:55:26,219.219 INFO    ] Checking for system updates...
[2026-06-19 17:55:26,259.259 INFO    ] 200
[2026-06-19 17:55:26,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:26,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:55:26,318.318 INFO    ] No update needed
[2026-06-19 17:55:26,320.320 INFO    ] Checking for camera pi updates...
[2026-06-19 17:55:26,354.354 INFO    ] 200
[2026-06-19 17:55:26,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:26,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:55:26,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:55:26,451.451 INFO    ] No camera update needed
[2026-06-19 17:55:26,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:55:26,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:55:26,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:55:26,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:55:28,507.507 INFO    ] ================================================
[2026-06-19 17:55:28,522.522 INFO    ] Launching Daemon at Fri Jun 19 17:55:28 IST 2026
[2026-06-19 17:55:28,533.533 INFO    ] ================================================
[2026-06-19 17:55:29,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:55:29
[2026-06-19 17:55:29,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:55:30,003.003 INFO    ] Initializing speech engine...
[2026-06-19 17:55:30,012.012 INFO    ] 2026-06-19 17:55:30
[2026-06-19 17:55:30,287.287 INFO    ] 2026-06-19 17:55:30
[2026-06-19 17:55:30,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:55:30,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:55:30,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:55:30,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:55:30,659.659 INFO    ] time= 19/06/2026 17:55:30
[2026-06-19 17:55:30,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:55:30,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:55:30,855.855 INFO    ] No existing commands found in stream
[2026-06-19 17:55:35,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:55:35,868.868 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 17:55:38,493.493 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:55:38,496.496 INFO    ] Checking for system updates...
[2026-06-19 17:55:38,532.532 INFO    ] 200
[2026-06-19 17:55:38,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:38,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:55:38,590.590 INFO    ] No update needed
[2026-06-19 17:55:38,593.593 INFO    ] Checking for camera pi updates...
[2026-06-19 17:55:38,628.628 INFO    ] 200
[2026-06-19 17:55:38,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:38,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:55:38,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:55:38,729.729 INFO    ] No camera update needed
[2026-06-19 17:55:38,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:55:38,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:55:38,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:55:38,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:55:40,785.785 INFO    ] ================================================
[2026-06-19 17:55:40,801.801 INFO    ] Launching Daemon at Fri Jun 19 17:55:40 IST 2026
[2026-06-19 17:55:40,812.812 INFO    ] ================================================
[2026-06-19 17:55:41,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:55:41
[2026-06-19 17:55:41,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:55:42,218.218 INFO    ] Initializing speech engine...
[2026-06-19 17:55:42,224.224 INFO    ] 2026-06-19 17:55:42
[2026-06-19 17:55:42,522.522 INFO    ] 2026-06-19 17:55:42
[2026-06-19 17:55:42,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:55:42,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:55:42,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:55:42,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:55:42,923.923 INFO    ] time= 19/06/2026 17:55:42
[2026-06-19 17:55:42,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:55:42,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:55:43,033.033 INFO    ] No existing commands found in stream
[2026-06-19 17:55:48,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:55:48,046.046 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 17:55:50,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:55:50,615.615 INFO    ] Checking for system updates...
[2026-06-19 17:55:50,662.662 INFO    ] 200
[2026-06-19 17:55:50,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:50,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:55:50,719.719 INFO    ] No update needed
[2026-06-19 17:55:50,721.721 INFO    ] Checking for camera pi updates...
[2026-06-19 17:55:50,755.755 INFO    ] 200
[2026-06-19 17:55:50,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:55:50,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:55:50,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:55:50,859.859 INFO    ] No camera update needed
[2026-06-19 17:55:50,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:55:50,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:55:50,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:55:50,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:55:52,915.915 INFO    ] ================================================
[2026-06-19 17:55:52,931.931 INFO    ] Launching Daemon at Fri Jun 19 17:55:52 IST 2026
[2026-06-19 17:55:52,942.942 INFO    ] ================================================
[2026-06-19 17:55:53,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:55:53
[2026-06-19 17:55:54,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:55:54,352.352 INFO    ] Initializing speech engine...
[2026-06-19 17:55:54,365.365 INFO    ] 2026-06-19 17:55:54
[2026-06-19 17:55:54,651.651 INFO    ] 2026-06-19 17:55:54
[2026-06-19 17:55:54,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:55:54,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:55:54,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:55:55,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:55:55,070.070 INFO    ] time= 19/06/2026 17:55:55
[2026-06-19 17:55:55,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:55:55,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:55:55,159.159 INFO    ] No existing commands found in stream
[2026-06-19 17:56:00,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:56:00,175.175 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 17:56:01,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:56:01,376.376 INFO    ] Checking for system updates...
[2026-06-19 17:56:01,412.412 INFO    ] 200
[2026-06-19 17:56:01,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:01,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:56:01,473.473 INFO    ] No update needed
[2026-06-19 17:56:01,476.476 INFO    ] Checking for camera pi updates...
[2026-06-19 17:56:01,523.523 INFO    ] 200
[2026-06-19 17:56:01,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:01,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:56:01,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:56:01,717.717 INFO    ] No camera update needed
[2026-06-19 17:56:01,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:56:01,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:56:01,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:56:01,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:56:03,798.798 INFO    ] ================================================
[2026-06-19 17:56:03,813.813 INFO    ] Launching Daemon at Fri Jun 19 17:56:03 IST 2026
[2026-06-19 17:56:03,824.824 INFO    ] ================================================
[2026-06-19 17:56:04,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:56:04
[2026-06-19 17:56:05,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:56:05,288.288 INFO    ] Initializing speech engine...
[2026-06-19 17:56:05,298.298 INFO    ] 2026-06-19 17:56:05
[2026-06-19 17:56:05,549.549 INFO    ] 2026-06-19 17:56:05
[2026-06-19 17:56:05,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:56:05,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:56:05,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:56:06,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:56:06,114.114 INFO    ] time= 19/06/2026 17:56:06
[2026-06-19 17:56:06,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:56:06,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:56:06,268.268 INFO    ] No existing commands found in stream
[2026-06-19 17:56:11,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:56:11,306.306 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 17:56:12,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:56:12,658.658 INFO    ] Checking for system updates...
[2026-06-19 17:56:12,696.696 INFO    ] 200
[2026-06-19 17:56:12,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:12,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:56:12,756.756 INFO    ] No update needed
[2026-06-19 17:56:12,759.759 INFO    ] Checking for camera pi updates...
[2026-06-19 17:56:12,794.794 INFO    ] 200
[2026-06-19 17:56:12,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:12,838.838 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:56:12,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:56:12,887.887 INFO    ] No camera update needed
[2026-06-19 17:56:12,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:56:12,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:56:12,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:56:12,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:56:14,946.946 INFO    ] ================================================
[2026-06-19 17:56:14,961.961 INFO    ] Launching Daemon at Fri Jun 19 17:56:14 IST 2026
[2026-06-19 17:56:14,972.972 INFO    ] ================================================
[2026-06-19 17:56:15,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:56:15
[2026-06-19 17:56:16,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:56:16,384.384 INFO    ] Initializing speech engine...
[2026-06-19 17:56:16,393.393 INFO    ] 2026-06-19 17:56:16
[2026-06-19 17:56:16,668.668 INFO    ] 2026-06-19 17:56:16
[2026-06-19 17:56:16,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:56:16,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:56:16,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:56:17,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:56:17,147.147 INFO    ] time= 19/06/2026 17:56:17
[2026-06-19 17:56:17,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:56:17,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:56:17,378.378 INFO    ] No existing commands found in stream
[2026-06-19 17:56:22,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:56:22,409.409 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 17:56:23,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:56:23,163.163 INFO    ] Checking for system updates...
[2026-06-19 17:56:23,199.199 INFO    ] 200
[2026-06-19 17:56:23,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:23,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:56:23,258.258 INFO    ] No update needed
[2026-06-19 17:56:23,260.260 INFO    ] Checking for camera pi updates...
[2026-06-19 17:56:23,298.298 INFO    ] 200
[2026-06-19 17:56:23,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:23,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:56:23,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:56:23,390.390 INFO    ] No camera update needed
[2026-06-19 17:56:23,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:56:23,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:56:23,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:56:23,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:56:25,446.446 INFO    ] ================================================
[2026-06-19 17:56:25,461.461 INFO    ] Launching Daemon at Fri Jun 19 17:56:25 IST 2026
[2026-06-19 17:56:25,472.472 INFO    ] ================================================
[2026-06-19 17:56:26,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:56:26
[2026-06-19 17:56:26,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:56:26,884.884 INFO    ] Initializing speech engine...
[2026-06-19 17:56:26,899.899 INFO    ] 2026-06-19 17:56:26
[2026-06-19 17:56:27,164.164 INFO    ] 2026-06-19 17:56:27
[2026-06-19 17:56:27,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:56:27,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:56:27,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:56:27,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:56:27,735.735 INFO    ] time= 19/06/2026 17:56:27
[2026-06-19 17:56:27,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:56:27,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:56:27,865.865 INFO    ] No existing commands found in stream
[2026-06-19 17:56:32,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:56:32,898.898 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 17:56:33,454.454 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:56:33,458.458 INFO    ] Checking for system updates...
[2026-06-19 17:56:33,495.495 INFO    ] 200
[2026-06-19 17:56:33,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:33,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:56:33,562.562 INFO    ] No update needed
[2026-06-19 17:56:33,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 17:56:33,604.604 INFO    ] 200
[2026-06-19 17:56:33,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:33,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:56:33,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:56:33,710.710 INFO    ] No camera update needed
[2026-06-19 17:56:33,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:56:33,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:56:33,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:56:33,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:56:35,770.770 INFO    ] ================================================
[2026-06-19 17:56:35,784.784 INFO    ] Launching Daemon at Fri Jun 19 17:56:35 IST 2026
[2026-06-19 17:56:35,795.795 INFO    ] ================================================
[2026-06-19 17:56:36,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:56:36
[2026-06-19 17:56:36,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:56:37,222.222 INFO    ] Initializing speech engine...
[2026-06-19 17:56:37,241.241 INFO    ] 2026-06-19 17:56:37
[2026-06-19 17:56:37,489.489 INFO    ] 2026-06-19 17:56:37
[2026-06-19 17:56:37,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:56:37,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:56:37,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:56:37,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:56:37,980.980 INFO    ] time= 19/06/2026 17:56:37
[2026-06-19 17:56:38,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:56:38,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:56:38,197.197 INFO    ] No existing commands found in stream
[2026-06-19 17:56:43,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:56:43,214.214 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 17:56:45,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:56:45,652.652 INFO    ] Checking for system updates...
[2026-06-19 17:56:45,688.688 INFO    ] 200
[2026-06-19 17:56:45,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:45,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:56:45,744.744 INFO    ] No update needed
[2026-06-19 17:56:45,747.747 INFO    ] Checking for camera pi updates...
[2026-06-19 17:56:45,781.781 INFO    ] 200
[2026-06-19 17:56:45,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:45,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:56:45,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:56:45,970.970 INFO    ] No camera update needed
[2026-06-19 17:56:45,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:56:45,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:56:45,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:56:45,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:56:48,026.026 INFO    ] ================================================
[2026-06-19 17:56:48,041.041 INFO    ] Launching Daemon at Fri Jun 19 17:56:48 IST 2026
[2026-06-19 17:56:48,052.052 INFO    ] ================================================
[2026-06-19 17:56:48,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:56:48
[2026-06-19 17:56:49,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:56:49,686.686 INFO    ] Initializing speech engine...
[2026-06-19 17:56:49,700.700 INFO    ] 2026-06-19 17:56:49
[2026-06-19 17:56:50,018.018 INFO    ] 2026-06-19 17:56:49
[2026-06-19 17:56:50,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:56:50,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:56:50,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:56:50,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:56:50,538.538 INFO    ] time= 19/06/2026 17:56:50
[2026-06-19 17:56:50,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:56:50,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:56:50,699.699 INFO    ] No existing commands found in stream
[2026-06-19 17:56:55,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:56:55,727.727 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 17:56:57,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:56:57,743.743 INFO    ] Checking for system updates...
[2026-06-19 17:56:57,785.785 INFO    ] 200
[2026-06-19 17:56:57,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:57,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:56:57,846.846 INFO    ] No update needed
[2026-06-19 17:56:57,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 17:56:57,884.884 INFO    ] 200
[2026-06-19 17:56:57,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:56:57,934.934 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:56:57,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:56:57,996.996 INFO    ] No camera update needed
[2026-06-19 17:56:57,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:56:58,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:56:58,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:56:58,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:57:00,053.053 INFO    ] ================================================
[2026-06-19 17:57:00,069.069 INFO    ] Launching Daemon at Fri Jun 19 17:57:00 IST 2026
[2026-06-19 17:57:00,079.079 INFO    ] ================================================
[2026-06-19 17:57:00,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:57:00
[2026-06-19 17:57:01,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:57:01,954.954 INFO    ] Initializing speech engine...
[2026-06-19 17:57:01,973.973 INFO    ] 2026-06-19 17:57:01
[2026-06-19 17:57:02,268.268 INFO    ] 2026-06-19 17:57:02
[2026-06-19 17:57:02,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:57:02,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:57:02,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:57:02,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:57:02,715.715 INFO    ] time= 19/06/2026 17:57:02
[2026-06-19 17:57:02,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:57:02,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:57:02,801.801 INFO    ] No existing commands found in stream
[2026-06-19 17:57:07,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:57:07,829.829 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 17:57:09,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:57:09,635.635 INFO    ] Checking for system updates...
[2026-06-19 17:57:09,673.673 INFO    ] 200
[2026-06-19 17:57:09,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:09,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:57:09,733.733 INFO    ] No update needed
[2026-06-19 17:57:09,736.736 INFO    ] Checking for camera pi updates...
[2026-06-19 17:57:09,771.771 INFO    ] 200
[2026-06-19 17:57:09,773.773 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:09,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:57:09,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:57:09,864.864 INFO    ] No camera update needed
[2026-06-19 17:57:09,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:57:09,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:57:09,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:57:09,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:57:11,924.924 INFO    ] ================================================
[2026-06-19 17:57:11,940.940 INFO    ] Launching Daemon at Fri Jun 19 17:57:11 IST 2026
[2026-06-19 17:57:11,950.950 INFO    ] ================================================
[2026-06-19 17:57:12,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:57:12
[2026-06-19 17:57:13,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:57:13,602.602 INFO    ] Initializing speech engine...
[2026-06-19 17:57:13,613.613 INFO    ] 2026-06-19 17:57:13
[2026-06-19 17:57:13,928.928 INFO    ] 2026-06-19 17:57:13
[2026-06-19 17:57:14,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:57:14,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:57:14,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:57:14,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:57:14,442.442 INFO    ] time= 19/06/2026 17:57:14
[2026-06-19 17:57:14,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:57:14,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:57:14,602.602 INFO    ] No existing commands found in stream
[2026-06-19 17:57:19,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:57:19,627.627 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 17:57:21,462.462 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:57:21,465.465 INFO    ] Checking for system updates...
[2026-06-19 17:57:21,502.502 INFO    ] 200
[2026-06-19 17:57:21,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:21,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:57:21,563.563 INFO    ] No update needed
[2026-06-19 17:57:21,566.566 INFO    ] Checking for camera pi updates...
[2026-06-19 17:57:21,601.601 INFO    ] 200
[2026-06-19 17:57:21,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:21,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:57:21,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:57:21,703.703 INFO    ] No camera update needed
[2026-06-19 17:57:21,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:57:21,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:57:21,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:57:21,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:57:23,763.763 INFO    ] ================================================
[2026-06-19 17:57:23,778.778 INFO    ] Launching Daemon at Fri Jun 19 17:57:23 IST 2026
[2026-06-19 17:57:23,789.789 INFO    ] ================================================
[2026-06-19 17:57:24,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:57:24
[2026-06-19 17:57:24,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:57:25,238.238 INFO    ] Initializing speech engine...
[2026-06-19 17:57:25,247.247 INFO    ] 2026-06-19 17:57:25
[2026-06-19 17:57:25,493.493 INFO    ] 2026-06-19 17:57:25
[2026-06-19 17:57:25,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:57:25,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:57:25,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:57:25,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:57:26,008.008 INFO    ] time= 19/06/2026 17:57:25
[2026-06-19 17:57:26,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:57:26,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:57:26,209.209 INFO    ] No existing commands found in stream
[2026-06-19 17:57:31,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:57:31,231.231 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 17:57:35,604.604 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 17:57:35,607.607 INFO    ] Checking for system updates...
[2026-06-19 17:57:35,644.644 INFO    ] 200
[2026-06-19 17:57:35,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:35,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:57:35,702.702 INFO    ] No update needed
[2026-06-19 17:57:35,704.704 INFO    ] Checking for camera pi updates...
[2026-06-19 17:57:35,738.738 INFO    ] 200
[2026-06-19 17:57:35,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:35,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:57:35,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:57:35,851.851 INFO    ] No camera update needed
[2026-06-19 17:57:35,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:57:35,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:57:35,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:57:35,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:57:37,908.908 INFO    ] ================================================
[2026-06-19 17:57:37,924.924 INFO    ] Launching Daemon at Fri Jun 19 17:57:37 IST 2026
[2026-06-19 17:57:37,935.935 INFO    ] ================================================
[2026-06-19 17:57:38,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:57:38
[2026-06-19 17:57:39,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:57:39,396.396 INFO    ] Initializing speech engine...
[2026-06-19 17:57:39,405.405 INFO    ] 2026-06-19 17:57:39
[2026-06-19 17:57:39,663.663 INFO    ] 2026-06-19 17:57:39
[2026-06-19 17:57:39,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:57:39,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:57:39,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:57:40,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:57:40,162.162 INFO    ] time= 19/06/2026 17:57:40
[2026-06-19 17:57:40,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:57:40,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:57:40,366.366 INFO    ] No existing commands found in stream
[2026-06-19 17:57:45,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:57:45,392.392 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 17:57:48,669.669 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:57:48,672.672 INFO    ] Checking for system updates...
[2026-06-19 17:57:48,708.708 INFO    ] 200
[2026-06-19 17:57:48,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:48,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:57:48,765.765 INFO    ] No update needed
[2026-06-19 17:57:48,768.768 INFO    ] Checking for camera pi updates...
[2026-06-19 17:57:48,801.801 INFO    ] 200
[2026-06-19 17:57:48,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:48,844.844 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:57:48,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:57:48,884.884 INFO    ] No camera update needed
[2026-06-19 17:57:48,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:57:48,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:57:48,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:57:48,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:57:50,940.940 INFO    ] ================================================
[2026-06-19 17:57:50,955.955 INFO    ] Launching Daemon at Fri Jun 19 17:57:50 IST 2026
[2026-06-19 17:57:50,966.966 INFO    ] ================================================
[2026-06-19 17:57:51,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:57:51
[2026-06-19 17:57:52,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:57:52,508.508 INFO    ] Initializing speech engine...
[2026-06-19 17:57:52,517.517 INFO    ] 2026-06-19 17:57:52
[2026-06-19 17:57:52,766.766 INFO    ] 2026-06-19 17:57:52
[2026-06-19 17:57:52,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:57:52,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:57:53,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:57:53,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:57:53,146.146 INFO    ] time= 19/06/2026 17:57:53
[2026-06-19 17:57:53,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:57:53,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:57:53,335.335 INFO    ] No existing commands found in stream
[2026-06-19 17:57:58,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:57:58,360.360 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 17:57:59,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:57:59,034.034 INFO    ] Checking for system updates...
[2026-06-19 17:57:59,071.071 INFO    ] 200
[2026-06-19 17:57:59,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:59,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:57:59,128.128 INFO    ] No update needed
[2026-06-19 17:57:59,131.131 INFO    ] Checking for camera pi updates...
[2026-06-19 17:57:59,166.166 INFO    ] 200
[2026-06-19 17:57:59,168.168 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:57:59,208.208 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:57:59,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:57:59,256.256 INFO    ] No camera update needed
[2026-06-19 17:57:59,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:57:59,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:57:59,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:57:59,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:58:01,312.312 INFO    ] ================================================
[2026-06-19 17:58:01,328.328 INFO    ] Launching Daemon at Fri Jun 19 17:58:01 IST 2026
[2026-06-19 17:58:01,340.340 INFO    ] ================================================
[2026-06-19 17:58:02,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:58:02
[2026-06-19 17:58:03,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:58:03,289.289 INFO    ] Initializing speech engine...
[2026-06-19 17:58:03,312.312 INFO    ] 2026-06-19 17:58:03
[2026-06-19 17:58:03,569.569 INFO    ] 2026-06-19 17:58:03
[2026-06-19 17:58:03,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:58:03,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:58:03,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:58:04,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:58:04,071.071 INFO    ] time= 19/06/2026 17:58:04
[2026-06-19 17:58:04,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:58:04,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:58:04,298.298 INFO    ] No existing commands found in stream
[2026-06-19 17:58:09,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:58:09,314.314 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 17:58:13,488.488 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 17:58:13,490.490 INFO    ] Checking for system updates...
[2026-06-19 17:58:13,528.528 INFO    ] 200
[2026-06-19 17:58:13,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:58:13,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:58:13,597.597 INFO    ] No update needed
[2026-06-19 17:58:13,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 17:58:13,640.640 INFO    ] 200
[2026-06-19 17:58:13,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:58:13,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:58:13,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:58:13,737.737 INFO    ] No camera update needed
[2026-06-19 17:58:13,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:58:13,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:58:13,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:58:13,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:58:15,797.797 INFO    ] ================================================
[2026-06-19 17:58:15,814.814 INFO    ] Launching Daemon at Fri Jun 19 17:58:15 IST 2026
[2026-06-19 17:58:15,824.824 INFO    ] ================================================
[2026-06-19 17:58:16,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:58:16
[2026-06-19 17:58:17,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:58:17,507.507 INFO    ] Initializing speech engine...
[2026-06-19 17:58:17,518.518 INFO    ] 2026-06-19 17:58:17
[2026-06-19 17:58:17,807.807 INFO    ] 2026-06-19 17:58:17
[2026-06-19 17:58:17,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:58:18,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:58:18,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:58:18,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:58:18,345.345 INFO    ] time= 19/06/2026 17:58:18
[2026-06-19 17:58:18,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:58:18,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:58:18,513.513 INFO    ] No existing commands found in stream
[2026-06-19 17:58:23,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:58:23,541.541 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 17:58:27,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:58:27,680.680 INFO    ] Checking for system updates...
[2026-06-19 17:58:27,718.718 INFO    ] 200
[2026-06-19 17:58:27,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:58:27,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:58:27,778.778 INFO    ] No update needed
[2026-06-19 17:58:27,780.780 INFO    ] Checking for camera pi updates...
[2026-06-19 17:58:27,817.817 INFO    ] 200
[2026-06-19 17:58:27,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:58:27,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:58:27,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:58:27,913.913 INFO    ] No camera update needed
[2026-06-19 17:58:27,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:58:27,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:58:27,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:58:27,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:58:29,975.975 INFO    ] ================================================
[2026-06-19 17:58:29,991.991 INFO    ] Launching Daemon at Fri Jun 19 17:58:29 IST 2026
[2026-06-19 17:58:30,003.003 INFO    ] ================================================
[2026-06-19 17:58:30,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:58:30
[2026-06-19 17:58:31,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:58:31,462.462 INFO    ] Initializing speech engine...
[2026-06-19 17:58:31,476.476 INFO    ] 2026-06-19 17:58:31
[2026-06-19 17:58:31,764.764 INFO    ] 2026-06-19 17:58:31
[2026-06-19 17:58:31,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:58:32,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:58:32,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:58:32,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:58:32,302.302 INFO    ] time= 19/06/2026 17:58:32
[2026-06-19 17:58:32,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:58:32,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:58:32,537.537 INFO    ] No existing commands found in stream
[2026-06-19 17:58:37,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:58:37,568.568 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 17:58:41,716.716 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:58:41,719.719 INFO    ] Checking for system updates...
[2026-06-19 17:58:41,755.755 INFO    ] 200
[2026-06-19 17:58:41,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:58:41,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:58:41,814.814 INFO    ] No update needed
[2026-06-19 17:58:41,817.817 INFO    ] Checking for camera pi updates...
[2026-06-19 17:58:41,852.852 INFO    ] 200
[2026-06-19 17:58:41,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:58:41,896.896 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:58:41,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:58:41,941.941 INFO    ] No camera update needed
[2026-06-19 17:58:41,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:58:41,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:58:41,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:58:41,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:58:44,996.996 INFO    ] ================================================
[2026-06-19 17:58:44,012.012 INFO    ] Launching Daemon at Fri Jun 19 17:58:44 IST 2026
[2026-06-19 17:58:44,023.023 INFO    ] ================================================
[2026-06-19 17:58:44,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:58:44
[2026-06-19 17:58:45,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:58:45,491.491 INFO    ] Initializing speech engine...
[2026-06-19 17:58:45,497.497 INFO    ] 2026-06-19 17:58:45
[2026-06-19 17:58:45,758.758 INFO    ] 2026-06-19 17:58:45
[2026-06-19 17:58:45,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:58:46,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:58:46,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:58:46,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:58:46,232.232 INFO    ] time= 19/06/2026 17:58:46
[2026-06-19 17:58:46,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:58:46,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:58:46,456.456 INFO    ] No existing commands found in stream
[2026-06-19 17:58:51,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:58:51,470.470 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 17:58:52,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:58:52,211.211 INFO    ] Checking for system updates...
[2026-06-19 17:58:52,247.247 INFO    ] 200
[2026-06-19 17:58:52,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:58:52,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:58:52,312.312 INFO    ] No update needed
[2026-06-19 17:58:52,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 17:58:52,350.350 INFO    ] 200
[2026-06-19 17:58:52,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:58:52,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:58:52,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:58:52,551.551 INFO    ] No camera update needed
[2026-06-19 17:58:52,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:58:52,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:58:52,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:58:52,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:58:54,608.608 INFO    ] ================================================
[2026-06-19 17:58:54,623.623 INFO    ] Launching Daemon at Fri Jun 19 17:58:54 IST 2026
[2026-06-19 17:58:54,633.633 INFO    ] ================================================
[2026-06-19 17:58:55,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:58:55
[2026-06-19 17:58:55,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:58:56,069.069 INFO    ] Initializing speech engine...
[2026-06-19 17:58:56,076.076 INFO    ] 2026-06-19 17:58:56
[2026-06-19 17:58:56,321.321 INFO    ] 2026-06-19 17:58:56
[2026-06-19 17:58:56,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:58:56,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:58:56,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:58:56,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:58:56,799.799 INFO    ] time= 19/06/2026 17:58:56
[2026-06-19 17:58:56,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:58:56,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:58:57,020.020 INFO    ] No existing commands found in stream
[2026-06-19 17:59:02,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:59:02,050.050 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 17:59:06,297.297 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:59:06,299.299 INFO    ] Checking for system updates...
[2026-06-19 17:59:06,338.338 INFO    ] 200
[2026-06-19 17:59:06,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:06,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:59:06,397.397 INFO    ] No update needed
[2026-06-19 17:59:06,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 17:59:06,436.436 INFO    ] 200
[2026-06-19 17:59:06,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:06,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:59:06,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:59:06,529.529 INFO    ] No camera update needed
[2026-06-19 17:59:06,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:59:06,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:59:06,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:59:06,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:59:08,584.584 INFO    ] ================================================
[2026-06-19 17:59:08,599.599 INFO    ] Launching Daemon at Fri Jun 19 17:59:08 IST 2026
[2026-06-19 17:59:08,610.610 INFO    ] ================================================
[2026-06-19 17:59:09,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:59:09
[2026-06-19 17:59:09,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:59:10,190.190 INFO    ] Initializing speech engine...
[2026-06-19 17:59:10,199.199 INFO    ] 2026-06-19 17:59:10
[2026-06-19 17:59:10,480.480 INFO    ] 2026-06-19 17:59:10
[2026-06-19 17:59:10,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:59:10,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:59:10,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:59:10,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:59:11,019.019 INFO    ] time= 19/06/2026 17:59:10
[2026-06-19 17:59:11,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:59:11,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:59:11,179.179 INFO    ] No existing commands found in stream
[2026-06-19 17:59:16,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:59:16,197.197 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 17:59:20,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 17:59:20,157.157 INFO    ] Checking for system updates...
[2026-06-19 17:59:20,194.194 INFO    ] 200
[2026-06-19 17:59:20,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:20,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:59:20,254.254 INFO    ] No update needed
[2026-06-19 17:59:20,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 17:59:20,291.291 INFO    ] 200
[2026-06-19 17:59:20,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:20,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:59:20,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 17:59:20,383.383 INFO    ] No camera update needed
[2026-06-19 17:59:20,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:59:20,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:59:20,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:59:20,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:59:22,442.442 INFO    ] ================================================
[2026-06-19 17:59:22,457.457 INFO    ] Launching Daemon at Fri Jun 19 17:59:22 IST 2026
[2026-06-19 17:59:22,468.468 INFO    ] ================================================
[2026-06-19 17:59:23,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:59:23
[2026-06-19 17:59:23,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:59:23,898.898 INFO    ] Initializing speech engine...
[2026-06-19 17:59:23,907.907 INFO    ] 2026-06-19 17:59:23
[2026-06-19 17:59:24,163.163 INFO    ] 2026-06-19 17:59:24
[2026-06-19 17:59:24,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:59:24,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:59:24,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:59:24,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:59:24,626.626 INFO    ] time= 19/06/2026 17:59:24
[2026-06-19 17:59:24,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:59:24,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:59:24,861.861 INFO    ] No existing commands found in stream
[2026-06-19 17:59:29,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:59:29,884.884 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 17:59:33,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 17:59:33,417.417 INFO    ] Checking for system updates...
[2026-06-19 17:59:33,457.457 INFO    ] 200
[2026-06-19 17:59:33,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:33,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:59:33,514.514 INFO    ] No update needed
[2026-06-19 17:59:33,517.517 INFO    ] Checking for camera pi updates...
[2026-06-19 17:59:33,551.551 INFO    ] 200
[2026-06-19 17:59:33,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:33,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:59:33,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:59:33,640.640 INFO    ] No camera update needed
[2026-06-19 17:59:33,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:59:33,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:59:33,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:59:33,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:59:35,698.698 INFO    ] ================================================
[2026-06-19 17:59:35,713.713 INFO    ] Launching Daemon at Fri Jun 19 17:59:35 IST 2026
[2026-06-19 17:59:35,724.724 INFO    ] ================================================
[2026-06-19 17:59:36,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:59:36
[2026-06-19 17:59:36,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:59:37,183.183 INFO    ] Initializing speech engine...
[2026-06-19 17:59:37,192.192 INFO    ] 2026-06-19 17:59:37
[2026-06-19 17:59:37,455.455 INFO    ] 2026-06-19 17:59:37
[2026-06-19 17:59:37,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:59:37,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:59:37,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:59:37,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:59:37,929.929 INFO    ] time= 19/06/2026 17:59:37
[2026-06-19 17:59:37,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:59:38,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:59:38,139.139 INFO    ] No existing commands found in stream
[2026-06-19 17:59:43,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:59:43,164.164 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 17:59:43,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 17:59:43,573.573 INFO    ] Checking for system updates...
[2026-06-19 17:59:43,614.614 INFO    ] 200
[2026-06-19 17:59:43,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:43,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:59:43,678.678 INFO    ] No update needed
[2026-06-19 17:59:43,680.680 INFO    ] Checking for camera pi updates...
[2026-06-19 17:59:43,715.715 INFO    ] 200
[2026-06-19 17:59:43,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:43,766.766 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:59:43,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:59:43,816.816 INFO    ] No camera update needed
[2026-06-19 17:59:43,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:59:43,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:59:43,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:59:43,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:59:45,871.871 INFO    ] ================================================
[2026-06-19 17:59:45,887.887 INFO    ] Launching Daemon at Fri Jun 19 17:59:45 IST 2026
[2026-06-19 17:59:45,899.899 INFO    ] ================================================
[2026-06-19 17:59:46,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:59:46
[2026-06-19 17:59:47,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:59:47,310.310 INFO    ] Initializing speech engine...
[2026-06-19 17:59:47,323.323 INFO    ] 2026-06-19 17:59:47
[2026-06-19 17:59:47,602.602 INFO    ] 2026-06-19 17:59:47
[2026-06-19 17:59:47,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:59:47,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:59:47,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:59:47,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:59:47,990.990 INFO    ] time= 19/06/2026 17:59:47
[2026-06-19 17:59:48,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:59:48,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:59:48,099.099 INFO    ] No existing commands found in stream
[2026-06-19 17:59:53,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 17:59:53,131.131 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 17:59:54,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 17:59:54,274.274 INFO    ] Checking for system updates...
[2026-06-19 17:59:54,313.313 INFO    ] 200
[2026-06-19 17:59:54,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:54,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:59:54,372.372 INFO    ] No update needed
[2026-06-19 17:59:54,374.374 INFO    ] Checking for camera pi updates...
[2026-06-19 17:59:54,411.411 INFO    ] 200
[2026-06-19 17:59:54,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 17:59:54,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 17:59:54,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 17:59:54,500.500 INFO    ] No camera update needed
[2026-06-19 17:59:54,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-19 17:59:54,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 17:59:54,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 17:59:54,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 17:59:56,557.557 INFO    ] ================================================
[2026-06-19 17:59:56,572.572 INFO    ] Launching Daemon at Fri Jun 19 17:59:56 IST 2026
[2026-06-19 17:59:56,583.583 INFO    ] ================================================
[2026-06-19 17:59:57,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 17:59:57
[2026-06-19 17:59:57,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 17:59:58,034.034 INFO    ] Initializing speech engine...
[2026-06-19 17:59:58,045.045 INFO    ] 2026-06-19 17:59:58
[2026-06-19 17:59:58,290.290 INFO    ] 2026-06-19 17:59:58
[2026-06-19 17:59:58,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 17:59:58,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 17:59:58,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 17:59:58,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 17:59:58,775.775 INFO    ] time= 19/06/2026 17:59:58
[2026-06-19 17:59:58,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 17:59:58,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-19 17:59:58,968.968 INFO    ] No existing commands found in stream
[2026-06-19 18:00:03,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:00:04,001.001 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 18:00:09,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:00:09,058.058 INFO    ] Checking for system updates...
[2026-06-19 18:00:09,095.095 INFO    ] 200
[2026-06-19 18:00:09,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 18:00:09,101.101 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 18:00:09,103.103 INFO    ] Checking for camera pi updates...
[2026-06-19 18:00:09,141.141 INFO    ] 200
[2026-06-19 18:00:09,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 18:00:09,147.147 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 18:00:09,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:00:09,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:00:09,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:00:09,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:00:11,205.205 INFO    ] ================================================
[2026-06-19 18:00:11,221.221 INFO    ] Launching Daemon at Fri Jun 19 18:00:11 IST 2026
[2026-06-19 18:00:11,233.233 INFO    ] ================================================
[2026-06-19 18:00:11,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:00:11
[2026-06-19 18:00:12,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:00:12,700.700 INFO    ] Initializing speech engine...
[2026-06-19 18:00:12,705.705 INFO    ] 2026-06-19 18:00:12
[2026-06-19 18:00:12,954.954 INFO    ] 2026-06-19 18:00:12
[2026-06-19 18:00:12,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:00:13,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:00:13,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:00:13,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:00:13,432.432 INFO    ] time= 19/06/2026 18:00:13
[2026-06-19 18:00:13,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:00:13,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:00:13,637.637 INFO    ] No existing commands found in stream
[2026-06-19 18:00:18,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:00:18,667.667 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 18:00:22,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:00:22,374.374 INFO    ] Checking for system updates...
[2026-06-19 18:00:22,414.414 INFO    ] 200
[2026-06-19 18:00:22,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:00:22,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:00:22,478.478 INFO    ] No update needed
[2026-06-19 18:00:22,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 18:00:22,515.515 INFO    ] 200
[2026-06-19 18:00:22,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:00:22,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:00:22,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:00:22,619.619 INFO    ] No camera update needed
[2026-06-19 18:00:22,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:00:22,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:00:22,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:00:22,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:00:24,675.675 INFO    ] ================================================
[2026-06-19 18:00:24,691.691 INFO    ] Launching Daemon at Fri Jun 19 18:00:24 IST 2026
[2026-06-19 18:00:24,702.702 INFO    ] ================================================
[2026-06-19 18:00:25,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:00:25
[2026-06-19 18:00:25,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:00:26,159.159 INFO    ] Initializing speech engine...
[2026-06-19 18:00:26,167.167 INFO    ] 2026-06-19 18:00:26
[2026-06-19 18:00:26,423.423 INFO    ] 2026-06-19 18:00:26
[2026-06-19 18:00:26,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:00:26,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:00:26,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:00:26,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:00:26,991.991 INFO    ] time= 19/06/2026 18:00:26
[2026-06-19 18:00:27,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:00:27,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:00:27,128.128 INFO    ] No existing commands found in stream
[2026-06-19 18:00:32,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:00:32,157.157 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 18:00:35,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:00:35,458.458 INFO    ] Checking for system updates...
[2026-06-19 18:00:35,494.494 INFO    ] 200
[2026-06-19 18:00:35,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:00:35,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:00:35,552.552 INFO    ] No update needed
[2026-06-19 18:00:35,554.554 INFO    ] Checking for camera pi updates...
[2026-06-19 18:00:35,589.589 INFO    ] 200
[2026-06-19 18:00:35,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:00:35,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:00:35,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:00:35,686.686 INFO    ] No camera update needed
[2026-06-19 18:00:35,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:00:35,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:00:35,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:00:35,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:00:37,744.744 INFO    ] ================================================
[2026-06-19 18:00:37,760.760 INFO    ] Launching Daemon at Fri Jun 19 18:00:37 IST 2026
[2026-06-19 18:00:37,770.770 INFO    ] ================================================
[2026-06-19 18:00:38,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:00:38
[2026-06-19 18:00:39,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:00:39,377.377 INFO    ] Initializing speech engine...
[2026-06-19 18:00:39,384.384 INFO    ] 2026-06-19 18:00:39
[2026-06-19 18:00:39,666.666 INFO    ] 2026-06-19 18:00:39
[2026-06-19 18:00:39,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:00:39,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:00:39,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:00:40,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:00:40,195.195 INFO    ] time= 19/06/2026 18:00:40
[2026-06-19 18:00:40,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:00:40,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:00:40,371.371 INFO    ] No existing commands found in stream
[2026-06-19 18:00:45,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:00:45,405.405 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 18:00:46,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:00:46,490.490 INFO    ] Checking for system updates...
[2026-06-19 18:00:46,528.528 INFO    ] 200
[2026-06-19 18:00:46,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:00:46,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:00:46,600.600 INFO    ] No update needed
[2026-06-19 18:00:46,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 18:00:46,666.666 INFO    ] 200
[2026-06-19 18:00:46,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:00:46,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:00:46,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:00:46,776.776 INFO    ] No camera update needed
[2026-06-19 18:00:46,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:00:46,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:00:46,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:00:46,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:00:48,834.834 INFO    ] ================================================
[2026-06-19 18:00:48,849.849 INFO    ] Launching Daemon at Fri Jun 19 18:00:48 IST 2026
[2026-06-19 18:00:48,860.860 INFO    ] ================================================
[2026-06-19 18:00:49,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:00:49
[2026-06-19 18:00:50,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:00:50,329.329 INFO    ] Initializing speech engine...
[2026-06-19 18:00:50,338.338 INFO    ] 2026-06-19 18:00:50
[2026-06-19 18:00:50,589.589 INFO    ] 2026-06-19 18:00:50
[2026-06-19 18:00:50,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:00:50,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:00:50,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:00:51,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:00:51,079.079 INFO    ] time= 19/06/2026 18:00:51
[2026-06-19 18:00:51,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:00:51,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:00:51,313.313 INFO    ] No existing commands found in stream
[2026-06-19 18:00:56,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:00:56,330.330 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 18:00:56,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:00:56,790.790 INFO    ] Checking for system updates...
[2026-06-19 18:00:56,826.826 INFO    ] 200
[2026-06-19 18:00:56,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:00:56,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:00:56,893.893 INFO    ] No update needed
[2026-06-19 18:00:56,896.896 INFO    ] Checking for camera pi updates...
[2026-06-19 18:00:56,929.929 INFO    ] 200
[2026-06-19 18:00:56,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:00:56,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:00:57,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:00:57,122.122 INFO    ] No camera update needed
[2026-06-19 18:00:57,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:00:57,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:00:57,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:00:57,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:00:59,180.180 INFO    ] ================================================
[2026-06-19 18:00:59,195.195 INFO    ] Launching Daemon at Fri Jun 19 18:00:59 IST 2026
[2026-06-19 18:00:59,206.206 INFO    ] ================================================
[2026-06-19 18:00:59,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:00:59
[2026-06-19 18:01:00,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:01:00,633.633 INFO    ] Initializing speech engine...
[2026-06-19 18:01:00,653.653 INFO    ] 2026-06-19 18:01:00
[2026-06-19 18:01:00,900.900 INFO    ] 2026-06-19 18:01:00
[2026-06-19 18:01:00,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:01:01,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:01:01,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:01:01,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:01:01,321.321 INFO    ] time= 19/06/2026 18:01:01
[2026-06-19 18:01:01,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:01:01,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:01:01,470.470 INFO    ] No existing commands found in stream
[2026-06-19 18:01:06,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:01:06,484.484 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 18:01:08,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:01:08,369.369 INFO    ] Checking for system updates...
[2026-06-19 18:01:08,406.406 INFO    ] 200
[2026-06-19 18:01:08,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:08,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:01:08,474.474 INFO    ] No update needed
[2026-06-19 18:01:08,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 18:01:08,513.513 INFO    ] 200
[2026-06-19 18:01:08,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:08,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:01:08,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:01:08,607.607 INFO    ] No camera update needed
[2026-06-19 18:01:08,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:01:08,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:01:08,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:01:08,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:01:10,667.667 INFO    ] ================================================
[2026-06-19 18:01:10,683.683 INFO    ] Launching Daemon at Fri Jun 19 18:01:10 IST 2026
[2026-06-19 18:01:10,694.694 INFO    ] ================================================
[2026-06-19 18:01:11,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:01:11
[2026-06-19 18:01:11,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:01:12,116.116 INFO    ] Initializing speech engine...
[2026-06-19 18:01:12,125.125 INFO    ] 2026-06-19 18:01:12
[2026-06-19 18:01:12,375.375 INFO    ] 2026-06-19 18:01:12
[2026-06-19 18:01:12,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:01:12,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:01:12,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:01:12,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:01:12,869.869 INFO    ] time= 19/06/2026 18:01:12
[2026-06-19 18:01:12,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:01:12,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:01:13,089.089 INFO    ] No existing commands found in stream
[2026-06-19 18:01:18,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:01:18,114.114 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 18:01:21,196.196 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:01:21,199.199 INFO    ] Checking for system updates...
[2026-06-19 18:01:21,234.234 INFO    ] 200
[2026-06-19 18:01:21,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:21,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:01:21,292.292 INFO    ] No update needed
[2026-06-19 18:01:21,294.294 INFO    ] Checking for camera pi updates...
[2026-06-19 18:01:21,327.327 INFO    ] 200
[2026-06-19 18:01:21,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:21,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:01:21,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:01:21,429.429 INFO    ] No camera update needed
[2026-06-19 18:01:21,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:01:21,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:01:21,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:01:21,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:01:23,484.484 INFO    ] ================================================
[2026-06-19 18:01:23,499.499 INFO    ] Launching Daemon at Fri Jun 19 18:01:23 IST 2026
[2026-06-19 18:01:23,510.510 INFO    ] ================================================
[2026-06-19 18:01:24,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:01:24
[2026-06-19 18:01:24,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:01:24,958.958 INFO    ] Initializing speech engine...
[2026-06-19 18:01:24,972.972 INFO    ] 2026-06-19 18:01:24
[2026-06-19 18:01:25,260.260 INFO    ] 2026-06-19 18:01:25
[2026-06-19 18:01:25,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:01:25,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:01:25,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:01:25,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:01:25,682.682 INFO    ] time= 19/06/2026 18:01:25
[2026-06-19 18:01:25,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:01:25,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:01:25,770.770 INFO    ] No existing commands found in stream
[2026-06-19 18:01:30,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:01:30,798.798 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 18:01:34,462.462 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:01:34,465.465 INFO    ] Checking for system updates...
[2026-06-19 18:01:34,501.501 INFO    ] 200
[2026-06-19 18:01:34,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:34,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:01:34,566.566 INFO    ] No update needed
[2026-06-19 18:01:34,568.568 INFO    ] Checking for camera pi updates...
[2026-06-19 18:01:34,602.602 INFO    ] 200
[2026-06-19 18:01:34,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:34,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:01:34,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:01:34,708.708 INFO    ] No camera update needed
[2026-06-19 18:01:34,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:01:34,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:01:34,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:01:34,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:01:36,766.766 INFO    ] ================================================
[2026-06-19 18:01:36,781.781 INFO    ] Launching Daemon at Fri Jun 19 18:01:36 IST 2026
[2026-06-19 18:01:36,792.792 INFO    ] ================================================
[2026-06-19 18:01:37,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:01:37
[2026-06-19 18:01:38,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:01:38,330.330 INFO    ] Initializing speech engine...
[2026-06-19 18:01:38,341.341 INFO    ] 2026-06-19 18:01:38
[2026-06-19 18:01:38,616.616 INFO    ] 2026-06-19 18:01:38
[2026-06-19 18:01:38,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:01:38,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:01:38,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:01:39,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:01:39,106.106 INFO    ] time= 19/06/2026 18:01:39
[2026-06-19 18:01:39,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:01:39,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:01:39,337.337 INFO    ] No existing commands found in stream
[2026-06-19 18:01:44,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:01:44,359.359 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 18:01:46,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:01:46,149.149 INFO    ] Checking for system updates...
[2026-06-19 18:01:46,187.187 INFO    ] 200
[2026-06-19 18:01:46,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:46,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:01:46,246.246 INFO    ] No update needed
[2026-06-19 18:01:46,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 18:01:46,291.291 INFO    ] 200
[2026-06-19 18:01:46,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:46,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:01:46,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:01:46,381.381 INFO    ] No camera update needed
[2026-06-19 18:01:46,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:01:46,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:01:46,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:01:46,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:01:48,436.436 INFO    ] ================================================
[2026-06-19 18:01:48,452.452 INFO    ] Launching Daemon at Fri Jun 19 18:01:48 IST 2026
[2026-06-19 18:01:48,462.462 INFO    ] ================================================
[2026-06-19 18:01:49,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:01:49
[2026-06-19 18:01:49,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:01:49,924.924 INFO    ] Initializing speech engine...
[2026-06-19 18:01:49,933.933 INFO    ] 2026-06-19 18:01:49
[2026-06-19 18:01:50,186.186 INFO    ] 2026-06-19 18:01:50
[2026-06-19 18:01:50,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:01:50,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:01:50,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:01:50,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:01:50,653.653 INFO    ] time= 19/06/2026 18:01:50
[2026-06-19 18:01:50,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:01:50,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:01:50,909.909 INFO    ] No existing commands found in stream
[2026-06-19 18:01:55,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:01:55,927.927 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 18:01:57,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:01:57,876.876 INFO    ] Checking for system updates...
[2026-06-19 18:01:57,911.911 INFO    ] 200
[2026-06-19 18:01:57,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:57,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:01:57,976.976 INFO    ] No update needed
[2026-06-19 18:01:57,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 18:01:58,017.017 INFO    ] 200
[2026-06-19 18:01:58,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:01:58,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:01:58,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:01:58,099.099 INFO    ] No camera update needed
[2026-06-19 18:01:58,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:01:58,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:01:58,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:01:58,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:02:00,157.157 INFO    ] ================================================
[2026-06-19 18:02:00,172.172 INFO    ] Launching Daemon at Fri Jun 19 18:02:00 IST 2026
[2026-06-19 18:02:00,182.182 INFO    ] ================================================
[2026-06-19 18:02:00,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:02:00
[2026-06-19 18:02:01,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:02:01,930.930 INFO    ] Initializing speech engine...
[2026-06-19 18:02:01,939.939 INFO    ] 2026-06-19 18:02:01
[2026-06-19 18:02:02,264.264 INFO    ] 2026-06-19 18:02:02
[2026-06-19 18:02:02,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:02:02,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:02:02,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:02:02,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:02:02,805.805 INFO    ] time= 19/06/2026 18:02:02
[2026-06-19 18:02:02,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:02:02,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:02:02,899.899 INFO    ] No existing commands found in stream
[2026-06-19 18:02:07,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:02:07,911.911 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 18:02:10,405.405 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:02:10,408.408 INFO    ] Checking for system updates...
[2026-06-19 18:02:10,447.447 INFO    ] 200
[2026-06-19 18:02:10,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:10,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:02:10,504.504 INFO    ] No update needed
[2026-06-19 18:02:10,507.507 INFO    ] Checking for camera pi updates...
[2026-06-19 18:02:10,541.541 INFO    ] 200
[2026-06-19 18:02:10,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:10,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:02:10,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:02:10,630.630 INFO    ] No camera update needed
[2026-06-19 18:02:10,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:02:10,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:02:10,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:02:10,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:02:12,684.684 INFO    ] ================================================
[2026-06-19 18:02:12,700.700 INFO    ] Launching Daemon at Fri Jun 19 18:02:12 IST 2026
[2026-06-19 18:02:12,711.711 INFO    ] ================================================
[2026-06-19 18:02:13,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:02:13
[2026-06-19 18:02:13,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:02:14,185.185 INFO    ] Initializing speech engine...
[2026-06-19 18:02:14,195.195 INFO    ] 2026-06-19 18:02:14
[2026-06-19 18:02:14,467.467 INFO    ] 2026-06-19 18:02:14
[2026-06-19 18:02:14,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:02:14,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:02:14,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:02:14,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:02:14,923.923 INFO    ] time= 19/06/2026 18:02:14
[2026-06-19 18:02:14,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:02:14,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:02:15,115.115 INFO    ] No existing commands found in stream
[2026-06-19 18:02:20,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:02:20,129.129 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 18:02:22,114.114 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:02:22,117.117 INFO    ] Checking for system updates...
[2026-06-19 18:02:22,158.158 INFO    ] 200
[2026-06-19 18:02:22,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:22,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:02:22,222.222 INFO    ] No update needed
[2026-06-19 18:02:22,224.224 INFO    ] Checking for camera pi updates...
[2026-06-19 18:02:22,258.258 INFO    ] 200
[2026-06-19 18:02:22,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:22,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:02:22,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:02:22,335.335 INFO    ] No camera update needed
[2026-06-19 18:02:22,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:02:22,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:02:22,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:02:22,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:02:24,393.393 INFO    ] ================================================
[2026-06-19 18:02:24,409.409 INFO    ] Launching Daemon at Fri Jun 19 18:02:24 IST 2026
[2026-06-19 18:02:24,421.421 INFO    ] ================================================
[2026-06-19 18:02:25,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:02:25
[2026-06-19 18:02:25,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:02:25,882.882 INFO    ] Initializing speech engine...
[2026-06-19 18:02:25,889.889 INFO    ] 2026-06-19 18:02:25
[2026-06-19 18:02:26,140.140 INFO    ] 2026-06-19 18:02:26
[2026-06-19 18:02:26,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:02:26,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:02:26,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:02:26,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:02:26,579.579 INFO    ] time= 19/06/2026 18:02:26
[2026-06-19 18:02:26,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:02:26,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:02:26,853.853 INFO    ] No existing commands found in stream
[2026-06-19 18:02:31,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:02:31,871.871 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 18:02:32,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:02:32,397.397 INFO    ] Checking for system updates...
[2026-06-19 18:02:32,440.440 INFO    ] 200
[2026-06-19 18:02:32,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:32,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:02:32,527.527 INFO    ] No update needed
[2026-06-19 18:02:32,530.530 INFO    ] Checking for camera pi updates...
[2026-06-19 18:02:32,570.570 INFO    ] 200
[2026-06-19 18:02:32,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:32,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:02:32,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:02:32,675.675 INFO    ] No camera update needed
[2026-06-19 18:02:32,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:02:32,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:02:32,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:02:32,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:02:34,737.737 INFO    ] ================================================
[2026-06-19 18:02:34,754.754 INFO    ] Launching Daemon at Fri Jun 19 18:02:34 IST 2026
[2026-06-19 18:02:34,765.765 INFO    ] ================================================
[2026-06-19 18:02:35,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:02:35
[2026-06-19 18:02:35,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:02:36,174.174 INFO    ] Initializing speech engine...
[2026-06-19 18:02:36,197.197 INFO    ] 2026-06-19 18:02:36
[2026-06-19 18:02:36,448.448 INFO    ] 2026-06-19 18:02:36
[2026-06-19 18:02:36,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:02:36,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:02:36,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:02:36,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:02:36,950.950 INFO    ] time= 19/06/2026 18:02:36
[2026-06-19 18:02:37,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:02:37,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:02:37,162.162 INFO    ] No existing commands found in stream
[2026-06-19 18:02:42,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:02:42,192.192 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 18:02:44,354.354 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:02:44,356.356 INFO    ] Checking for system updates...
[2026-06-19 18:02:44,393.393 INFO    ] 200
[2026-06-19 18:02:44,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:44,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:02:44,462.462 INFO    ] No update needed
[2026-06-19 18:02:44,465.465 INFO    ] Checking for camera pi updates...
[2026-06-19 18:02:44,505.505 INFO    ] 200
[2026-06-19 18:02:44,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:44,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:02:44,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:02:44,611.611 INFO    ] No camera update needed
[2026-06-19 18:02:44,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:02:44,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:02:44,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:02:44,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:02:46,670.670 INFO    ] ================================================
[2026-06-19 18:02:46,686.686 INFO    ] Launching Daemon at Fri Jun 19 18:02:46 IST 2026
[2026-06-19 18:02:46,697.697 INFO    ] ================================================
[2026-06-19 18:02:47,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:02:47
[2026-06-19 18:02:48,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:02:48,356.356 INFO    ] Initializing speech engine...
[2026-06-19 18:02:48,369.369 INFO    ] 2026-06-19 18:02:48
[2026-06-19 18:02:48,683.683 INFO    ] 2026-06-19 18:02:48
[2026-06-19 18:02:48,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:02:48,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:02:48,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:02:49,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:02:49,192.192 INFO    ] time= 19/06/2026 18:02:49
[2026-06-19 18:02:49,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:02:49,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:02:49,364.364 INFO    ] No existing commands found in stream
[2026-06-19 18:02:54,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:02:54,400.400 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 18:02:55,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:02:55,536.536 INFO    ] Checking for system updates...
[2026-06-19 18:02:55,578.578 INFO    ] 200
[2026-06-19 18:02:55,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:55,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:02:55,646.646 INFO    ] No update needed
[2026-06-19 18:02:55,649.649 INFO    ] Checking for camera pi updates...
[2026-06-19 18:02:55,689.689 INFO    ] 200
[2026-06-19 18:02:55,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:02:55,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:02:55,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:02:55,788.788 INFO    ] No camera update needed
[2026-06-19 18:02:55,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:02:55,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:02:55,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:02:55,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:02:57,849.849 INFO    ] ================================================
[2026-06-19 18:02:57,865.865 INFO    ] Launching Daemon at Fri Jun 19 18:02:57 IST 2026
[2026-06-19 18:02:57,876.876 INFO    ] ================================================
[2026-06-19 18:02:58,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:02:58
[2026-06-19 18:02:59,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:02:59,558.558 INFO    ] Initializing speech engine...
[2026-06-19 18:02:59,566.566 INFO    ] 2026-06-19 18:02:59
[2026-06-19 18:02:59,843.843 INFO    ] 2026-06-19 18:02:59
[2026-06-19 18:02:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:03:00,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:03:00,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:03:00,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:03:00,358.358 INFO    ] time= 19/06/2026 18:03:00
[2026-06-19 18:03:00,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:03:00,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:03:00,580.580 INFO    ] No existing commands found in stream
[2026-06-19 18:03:05,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:03:05,608.608 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 18:03:09,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:03:09,800.800 INFO    ] Checking for system updates...
[2026-06-19 18:03:09,844.844 INFO    ] 200
[2026-06-19 18:03:09,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:09,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:03:09,905.905 INFO    ] No update needed
[2026-06-19 18:03:09,908.908 INFO    ] Checking for camera pi updates...
[2026-06-19 18:03:09,949.949 INFO    ] 200
[2026-06-19 18:03:09,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:09,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:03:10,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:03:10,064.064 INFO    ] No camera update needed
[2026-06-19 18:03:10,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:03:10,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:03:10,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:03:10,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:03:12,125.125 INFO    ] ================================================
[2026-06-19 18:03:12,142.142 INFO    ] Launching Daemon at Fri Jun 19 18:03:12 IST 2026
[2026-06-19 18:03:12,153.153 INFO    ] ================================================
[2026-06-19 18:03:12,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:03:12
[2026-06-19 18:03:13,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:03:13,743.743 INFO    ] Initializing speech engine...
[2026-06-19 18:03:13,754.754 INFO    ] 2026-06-19 18:03:13
[2026-06-19 18:03:14,071.071 INFO    ] 2026-06-19 18:03:14
[2026-06-19 18:03:14,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:03:14,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:03:14,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:03:14,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:03:14,578.578 INFO    ] time= 19/06/2026 18:03:14
[2026-06-19 18:03:14,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:03:14,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:03:14,752.752 INFO    ] No existing commands found in stream
[2026-06-19 18:03:19,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:03:19,787.787 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 18:03:23,597.597 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:03:23,601.601 INFO    ] Checking for system updates...
[2026-06-19 18:03:23,638.638 INFO    ] 200
[2026-06-19 18:03:23,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:23,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:03:23,708.708 INFO    ] No update needed
[2026-06-19 18:03:23,712.712 INFO    ] Checking for camera pi updates...
[2026-06-19 18:03:23,747.747 INFO    ] 200
[2026-06-19 18:03:23,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:23,799.799 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:03:23,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:03:23,851.851 INFO    ] No camera update needed
[2026-06-19 18:03:23,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:03:23,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:03:23,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:03:23,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:03:25,911.911 INFO    ] ================================================
[2026-06-19 18:03:25,927.927 INFO    ] Launching Daemon at Fri Jun 19 18:03:25 IST 2026
[2026-06-19 18:03:25,938.938 INFO    ] ================================================
[2026-06-19 18:03:26,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:03:26
[2026-06-19 18:03:27,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:03:27,591.591 INFO    ] Initializing speech engine...
[2026-06-19 18:03:27,604.604 INFO    ] 2026-06-19 18:03:27
[2026-06-19 18:03:27,890.890 INFO    ] 2026-06-19 18:03:27
[2026-06-19 18:03:27,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:03:28,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:03:28,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:03:28,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:03:28,437.437 INFO    ] time= 19/06/2026 18:03:28
[2026-06-19 18:03:28,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:03:28,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:03:28,602.602 INFO    ] No existing commands found in stream
[2026-06-19 18:03:33,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:03:33,625.625 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 18:03:36,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:03:36,369.369 INFO    ] Checking for system updates...
[2026-06-19 18:03:36,407.407 INFO    ] 200
[2026-06-19 18:03:36,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:36,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:03:36,467.467 INFO    ] No update needed
[2026-06-19 18:03:36,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 18:03:36,505.505 INFO    ] 200
[2026-06-19 18:03:36,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:36,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:03:36,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:03:36,606.606 INFO    ] No camera update needed
[2026-06-19 18:03:36,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:03:36,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:03:36,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:03:36,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:03:38,667.667 INFO    ] ================================================
[2026-06-19 18:03:38,683.683 INFO    ] Launching Daemon at Fri Jun 19 18:03:38 IST 2026
[2026-06-19 18:03:38,694.694 INFO    ] ================================================
[2026-06-19 18:03:39,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:03:39
[2026-06-19 18:03:39,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:03:40,242.242 INFO    ] Initializing speech engine...
[2026-06-19 18:03:40,251.251 INFO    ] 2026-06-19 18:03:40
[2026-06-19 18:03:40,513.513 INFO    ] 2026-06-19 18:03:40
[2026-06-19 18:03:40,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:03:40,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:03:40,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:03:40,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:03:41,007.007 INFO    ] time= 19/06/2026 18:03:40
[2026-06-19 18:03:41,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:03:41,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:03:41,213.213 INFO    ] No existing commands found in stream
[2026-06-19 18:03:46,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:03:46,236.236 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 18:03:47,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:03:47,347.347 INFO    ] Checking for system updates...
[2026-06-19 18:03:47,383.383 INFO    ] 200
[2026-06-19 18:03:47,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:47,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:03:47,442.442 INFO    ] No update needed
[2026-06-19 18:03:47,444.444 INFO    ] Checking for camera pi updates...
[2026-06-19 18:03:47,478.478 INFO    ] 200
[2026-06-19 18:03:47,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:47,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:03:47,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:03:47,557.557 INFO    ] No camera update needed
[2026-06-19 18:03:47,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:03:47,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:03:47,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:03:47,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:03:49,616.616 INFO    ] ================================================
[2026-06-19 18:03:49,633.633 INFO    ] Launching Daemon at Fri Jun 19 18:03:49 IST 2026
[2026-06-19 18:03:49,644.644 INFO    ] ================================================
[2026-06-19 18:03:50,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:03:50
[2026-06-19 18:03:50,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:03:51,141.141 INFO    ] Initializing speech engine...
[2026-06-19 18:03:51,159.159 INFO    ] 2026-06-19 18:03:51
[2026-06-19 18:03:51,411.411 INFO    ] 2026-06-19 18:03:51
[2026-06-19 18:03:51,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:03:51,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:03:51,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:03:51,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:03:51,899.899 INFO    ] time= 19/06/2026 18:03:51
[2026-06-19 18:03:51,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:03:51,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:03:52,120.120 INFO    ] No existing commands found in stream
[2026-06-19 18:03:57,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:03:57,151.151 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 18:03:58,484.484 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:03:58,488.488 INFO    ] Checking for system updates...
[2026-06-19 18:03:58,525.525 INFO    ] 200
[2026-06-19 18:03:58,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:58,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:03:58,589.589 INFO    ] No update needed
[2026-06-19 18:03:58,593.593 INFO    ] Checking for camera pi updates...
[2026-06-19 18:03:58,628.628 INFO    ] 200
[2026-06-19 18:03:58,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:03:58,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:03:58,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:03:58,741.741 INFO    ] No camera update needed
[2026-06-19 18:03:58,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:03:58,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:03:58,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:03:58,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:04:00,803.803 INFO    ] ================================================
[2026-06-19 18:04:00,819.819 INFO    ] Launching Daemon at Fri Jun 19 18:04:00 IST 2026
[2026-06-19 18:04:00,830.830 INFO    ] ================================================
[2026-06-19 18:04:01,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:04:01
[2026-06-19 18:04:02,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:04:02,439.439 INFO    ] Initializing speech engine...
[2026-06-19 18:04:02,442.442 INFO    ] 2026-06-19 18:04:02
[2026-06-19 18:04:02,758.758 INFO    ] 2026-06-19 18:04:02
[2026-06-19 18:04:02,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:04:03,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:04:03,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:04:03,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:04:03,316.316 INFO    ] time= 19/06/2026 18:04:03
[2026-06-19 18:04:03,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:04:03,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:04:03,491.491 INFO    ] No existing commands found in stream
[2026-06-19 18:04:08,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:04:08,526.526 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 18:04:09,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:04:09,639.639 INFO    ] Checking for system updates...
[2026-06-19 18:04:09,674.674 INFO    ] 200
[2026-06-19 18:04:09,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:09,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:04:09,733.733 INFO    ] No update needed
[2026-06-19 18:04:09,735.735 INFO    ] Checking for camera pi updates...
[2026-06-19 18:04:09,773.773 INFO    ] 200
[2026-06-19 18:04:09,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:09,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:04:09,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:04:09,870.870 INFO    ] No camera update needed
[2026-06-19 18:04:09,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:04:09,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:04:09,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:04:09,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:04:11,929.929 INFO    ] ================================================
[2026-06-19 18:04:11,946.946 INFO    ] Launching Daemon at Fri Jun 19 18:04:11 IST 2026
[2026-06-19 18:04:11,958.958 INFO    ] ================================================
[2026-06-19 18:04:12,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:04:12
[2026-06-19 18:04:13,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:04:13,447.447 INFO    ] Initializing speech engine...
[2026-06-19 18:04:13,460.460 INFO    ] 2026-06-19 18:04:13
[2026-06-19 18:04:13,752.752 INFO    ] 2026-06-19 18:04:13
[2026-06-19 18:04:13,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:04:14,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:04:14,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:04:14,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:04:14,296.296 INFO    ] time= 19/06/2026 18:04:14
[2026-06-19 18:04:14,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:04:14,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:04:14,448.448 INFO    ] No existing commands found in stream
[2026-06-19 18:04:19,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:04:19,470.470 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 18:04:20,773.773 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:04:20,776.776 INFO    ] Checking for system updates...
[2026-06-19 18:04:20,818.818 INFO    ] 200
[2026-06-19 18:04:20,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:20,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:04:20,880.880 INFO    ] No update needed
[2026-06-19 18:04:20,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 18:04:20,918.918 INFO    ] 200
[2026-06-19 18:04:20,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:20,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:04:21,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:04:21,015.015 INFO    ] No camera update needed
[2026-06-19 18:04:21,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:04:21,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:04:21,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:04:21,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:04:23,076.076 INFO    ] ================================================
[2026-06-19 18:04:23,092.092 INFO    ] Launching Daemon at Fri Jun 19 18:04:23 IST 2026
[2026-06-19 18:04:23,103.103 INFO    ] ================================================
[2026-06-19 18:04:23,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:04:23
[2026-06-19 18:04:24,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:04:24,552.552 INFO    ] Initializing speech engine...
[2026-06-19 18:04:24,558.558 INFO    ] 2026-06-19 18:04:24
[2026-06-19 18:04:24,820.820 INFO    ] 2026-06-19 18:04:24
[2026-06-19 18:04:24,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:04:25,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:04:25,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:04:25,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:04:25,280.280 INFO    ] time= 19/06/2026 18:04:25
[2026-06-19 18:04:25,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:04:25,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:04:25,505.505 INFO    ] No existing commands found in stream
[2026-06-19 18:04:30,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:04:30,532.532 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 18:04:32,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:04:32,990.990 INFO    ] Checking for system updates...
[2026-06-19 18:04:33,030.030 INFO    ] 200
[2026-06-19 18:04:33,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:33,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:04:33,145.145 INFO    ] No update needed
[2026-06-19 18:04:33,147.147 INFO    ] Checking for camera pi updates...
[2026-06-19 18:04:33,183.183 INFO    ] 200
[2026-06-19 18:04:33,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:33,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:04:33,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:04:33,260.260 INFO    ] No camera update needed
[2026-06-19 18:04:33,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:04:33,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:04:33,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:04:33,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:04:35,316.316 INFO    ] ================================================
[2026-06-19 18:04:35,332.332 INFO    ] Launching Daemon at Fri Jun 19 18:04:35 IST 2026
[2026-06-19 18:04:35,343.343 INFO    ] ================================================
[2026-06-19 18:04:35,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:04:35
[2026-06-19 18:04:36,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:04:36,968.968 INFO    ] Initializing speech engine...
[2026-06-19 18:04:36,982.982 INFO    ] 2026-06-19 18:04:36
[2026-06-19 18:04:37,269.269 INFO    ] 2026-06-19 18:04:37
[2026-06-19 18:04:37,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:04:37,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:04:37,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:04:37,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:04:37,815.815 INFO    ] time= 19/06/2026 18:04:37
[2026-06-19 18:04:37,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:04:37,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:04:37,975.975 INFO    ] No existing commands found in stream
[2026-06-19 18:04:42,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:04:42,994.994 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 18:04:47,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:04:47,034.034 INFO    ] Checking for system updates...
[2026-06-19 18:04:47,071.071 INFO    ] 200
[2026-06-19 18:04:47,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:47,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:04:47,143.143 INFO    ] No update needed
[2026-06-19 18:04:47,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 18:04:47,185.185 INFO    ] 200
[2026-06-19 18:04:47,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:47,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:04:47,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:04:47,270.270 INFO    ] No camera update needed
[2026-06-19 18:04:47,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:04:47,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:04:47,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:04:47,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:04:49,330.330 INFO    ] ================================================
[2026-06-19 18:04:49,345.345 INFO    ] Launching Daemon at Fri Jun 19 18:04:49 IST 2026
[2026-06-19 18:04:49,356.356 INFO    ] ================================================
[2026-06-19 18:04:49,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:04:49
[2026-06-19 18:04:50,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:04:50,832.832 INFO    ] Initializing speech engine...
[2026-06-19 18:04:50,842.842 INFO    ] 2026-06-19 18:04:50
[2026-06-19 18:04:51,100.100 INFO    ] 2026-06-19 18:04:51
[2026-06-19 18:04:51,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:04:51,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:04:51,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:04:51,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:04:51,562.562 INFO    ] time= 19/06/2026 18:04:51
[2026-06-19 18:04:51,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:04:51,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:04:51,790.790 INFO    ] No existing commands found in stream
[2026-06-19 18:04:56,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:04:56,809.809 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 18:04:58,907.907 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:04:58,910.910 INFO    ] Checking for system updates...
[2026-06-19 18:04:58,946.946 INFO    ] 200
[2026-06-19 18:04:58,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:59,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:04:59,004.004 INFO    ] No update needed
[2026-06-19 18:04:59,006.006 INFO    ] Checking for camera pi updates...
[2026-06-19 18:04:59,040.040 INFO    ] 200
[2026-06-19 18:04:59,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:04:59,082.082 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:04:59,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:04:59,114.114 INFO    ] No camera update needed
[2026-06-19 18:04:59,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:04:59,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:04:59,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:04:59,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:05:01,170.170 INFO    ] ================================================
[2026-06-19 18:05:01,187.187 INFO    ] Launching Daemon at Fri Jun 19 18:05:01 IST 2026
[2026-06-19 18:05:01,198.198 INFO    ] ================================================
[2026-06-19 18:05:02,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:05:02
[2026-06-19 18:05:02,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:05:03,063.063 INFO    ] Initializing speech engine...
[2026-06-19 18:05:03,073.073 INFO    ] 2026-06-19 18:05:03
[2026-06-19 18:05:03,431.431 INFO    ] 2026-06-19 18:05:03
[2026-06-19 18:05:03,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:05:03,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:05:03,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:05:03,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:05:03,968.968 INFO    ] time= 19/06/2026 18:05:03
[2026-06-19 18:05:04,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:05:04,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:05:04,147.147 INFO    ] No existing commands found in stream
[2026-06-19 18:05:09,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:05:09,182.182 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 18:05:12,230.230 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:05:12,233.233 INFO    ] Checking for system updates...
[2026-06-19 18:05:12,271.271 INFO    ] 200
[2026-06-19 18:05:12,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:05:12,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:05:12,338.338 INFO    ] No update needed
[2026-06-19 18:05:12,342.342 INFO    ] Checking for camera pi updates...
[2026-06-19 18:05:12,378.378 INFO    ] 200
[2026-06-19 18:05:12,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:05:12,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:05:12,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:05:12,577.577 INFO    ] No camera update needed
[2026-06-19 18:05:12,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:05:12,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:05:12,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:05:12,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:05:14,637.637 INFO    ] ================================================
[2026-06-19 18:05:14,653.653 INFO    ] Launching Daemon at Fri Jun 19 18:05:14 IST 2026
[2026-06-19 18:05:14,664.664 INFO    ] ================================================
[2026-06-19 18:05:15,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:05:15
[2026-06-19 18:05:15,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:05:16,306.306 INFO    ] Initializing speech engine...
[2026-06-19 18:05:16,313.313 INFO    ] 2026-06-19 18:05:16
[2026-06-19 18:05:16,599.599 INFO    ] 2026-06-19 18:05:16
[2026-06-19 18:05:16,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:05:16,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:05:16,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:05:17,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:05:17,077.077 INFO    ] time= 19/06/2026 18:05:17
[2026-06-19 18:05:17,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:05:17,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:05:17,291.291 INFO    ] No existing commands found in stream
[2026-06-19 18:05:22,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:05:22,311.311 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 18:05:26,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:05:26,038.038 INFO    ] Checking for system updates...
[2026-06-19 18:05:26,076.076 INFO    ] 200
[2026-06-19 18:05:26,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:05:26,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:05:26,135.135 INFO    ] No update needed
[2026-06-19 18:05:26,138.138 INFO    ] Checking for camera pi updates...
[2026-06-19 18:05:26,172.172 INFO    ] 200
[2026-06-19 18:05:26,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:05:26,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:05:26,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:05:26,275.275 INFO    ] No camera update needed
[2026-06-19 18:05:26,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:05:26,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:05:26,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:05:26,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:05:28,336.336 INFO    ] ================================================
[2026-06-19 18:05:28,353.353 INFO    ] Launching Daemon at Fri Jun 19 18:05:28 IST 2026
[2026-06-19 18:05:28,364.364 INFO    ] ================================================
[2026-06-19 18:05:29,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:05:29
[2026-06-19 18:05:29,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:05:29,975.975 INFO    ] Initializing speech engine...
[2026-06-19 18:05:29,983.983 INFO    ] 2026-06-19 18:05:29
[2026-06-19 18:05:30,256.256 INFO    ] 2026-06-19 18:05:30
[2026-06-19 18:05:30,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:05:30,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:05:30,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:05:30,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:05:30,808.808 INFO    ] time= 19/06/2026 18:05:30
[2026-06-19 18:05:30,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:05:30,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:05:30,968.968 INFO    ] No existing commands found in stream
[2026-06-19 18:05:35,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:05:35,999.999 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 18:05:38,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:05:38,359.359 INFO    ] Checking for system updates...
[2026-06-19 18:05:38,406.406 INFO    ] 200
[2026-06-19 18:05:38,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:05:38,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:05:38,476.476 INFO    ] No update needed
[2026-06-19 18:05:38,478.478 INFO    ] Checking for camera pi updates...
[2026-06-19 18:05:38,512.512 INFO    ] 200
[2026-06-19 18:05:38,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:05:38,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:05:38,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:05:38,607.607 INFO    ] No camera update needed
[2026-06-19 18:05:38,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:05:38,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:05:38,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:05:38,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:05:40,662.662 INFO    ] ================================================
[2026-06-19 18:05:40,678.678 INFO    ] Launching Daemon at Fri Jun 19 18:05:40 IST 2026
[2026-06-19 18:05:40,688.688 INFO    ] ================================================
[2026-06-19 18:05:41,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:05:41
[2026-06-19 18:05:41,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:05:42,147.147 INFO    ] Initializing speech engine...
[2026-06-19 18:05:42,157.157 INFO    ] 2026-06-19 18:05:42
[2026-06-19 18:05:42,414.414 INFO    ] 2026-06-19 18:05:42
[2026-06-19 18:05:42,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:05:42,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:05:42,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:05:42,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:05:42,957.957 INFO    ] time= 19/06/2026 18:05:42
[2026-06-19 18:05:42,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:05:42,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:05:43,097.097 INFO    ] No existing commands found in stream
[2026-06-19 18:05:48,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:05:48,124.124 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 18:05:49,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:05:49,799.799 INFO    ] Checking for system updates...
[2026-06-19 18:05:49,837.837 INFO    ] 200
[2026-06-19 18:05:49,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:05:49,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:05:49,895.895 INFO    ] No update needed
[2026-06-19 18:05:49,897.897 INFO    ] Checking for camera pi updates...
[2026-06-19 18:05:49,932.932 INFO    ] 200
[2026-06-19 18:05:49,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:05:49,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:05:50,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:05:50,013.013 INFO    ] No camera update needed
[2026-06-19 18:05:50,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:05:50,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:05:50,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:05:50,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:05:52,076.076 INFO    ] ================================================
[2026-06-19 18:05:52,092.092 INFO    ] Launching Daemon at Fri Jun 19 18:05:52 IST 2026
[2026-06-19 18:05:52,102.102 INFO    ] ================================================
[2026-06-19 18:05:52,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:05:52
[2026-06-19 18:05:53,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:05:53,530.530 INFO    ] Initializing speech engine...
[2026-06-19 18:05:53,540.540 INFO    ] 2026-06-19 18:05:53
[2026-06-19 18:05:53,784.784 INFO    ] 2026-06-19 18:05:53
[2026-06-19 18:05:53,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:05:54,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:05:54,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:05:54,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:05:54,261.261 INFO    ] time= 19/06/2026 18:05:54
[2026-06-19 18:05:54,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:05:54,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:05:54,494.494 INFO    ] No existing commands found in stream
[2026-06-19 18:05:59,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:05:59,512.512 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 18:06:01,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:06:01,643.643 INFO    ] Checking for system updates...
[2026-06-19 18:06:01,692.692 INFO    ] 200
[2026-06-19 18:06:01,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:01,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:06:01,756.756 INFO    ] No update needed
[2026-06-19 18:06:01,759.759 INFO    ] Checking for camera pi updates...
[2026-06-19 18:06:01,793.793 INFO    ] 200
[2026-06-19 18:06:01,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:01,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:06:01,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:06:01,915.915 INFO    ] No camera update needed
[2026-06-19 18:06:01,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:06:01,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:06:01,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:06:01,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:06:03,992.992 INFO    ] ================================================
[2026-06-19 18:06:04,008.008 INFO    ] Launching Daemon at Fri Jun 19 18:06:04 IST 2026
[2026-06-19 18:06:04,019.019 INFO    ] ================================================
[2026-06-19 18:06:04,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:06:04
[2026-06-19 18:06:05,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:06:05,498.498 INFO    ] Initializing speech engine...
[2026-06-19 18:06:05,507.507 INFO    ] 2026-06-19 18:06:05
[2026-06-19 18:06:05,771.771 INFO    ] 2026-06-19 18:06:05
[2026-06-19 18:06:05,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:06:06,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:06:06,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:06:06,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:06:06,267.267 INFO    ] time= 19/06/2026 18:06:06
[2026-06-19 18:06:06,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:06:06,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:06:06,476.476 INFO    ] No existing commands found in stream
[2026-06-19 18:06:11,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:06:11,507.507 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 18:06:14,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:06:14,526.526 INFO    ] Checking for system updates...
[2026-06-19 18:06:14,569.569 INFO    ] 200
[2026-06-19 18:06:14,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:14,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:06:14,633.633 INFO    ] No update needed
[2026-06-19 18:06:14,640.640 INFO    ] Checking for camera pi updates...
[2026-06-19 18:06:14,680.680 INFO    ] 200
[2026-06-19 18:06:14,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:14,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:06:14,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:06:14,782.782 INFO    ] No camera update needed
[2026-06-19 18:06:14,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:06:14,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:06:14,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:06:14,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:06:16,839.839 INFO    ] ================================================
[2026-06-19 18:06:16,855.855 INFO    ] Launching Daemon at Fri Jun 19 18:06:16 IST 2026
[2026-06-19 18:06:16,866.866 INFO    ] ================================================
[2026-06-19 18:06:17,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:06:17
[2026-06-19 18:06:18,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:06:18,385.385 INFO    ] Initializing speech engine...
[2026-06-19 18:06:18,402.402 INFO    ] 2026-06-19 18:06:18
[2026-06-19 18:06:18,671.671 INFO    ] 2026-06-19 18:06:18
[2026-06-19 18:06:18,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:06:18,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:06:18,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:06:19,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:06:19,068.068 INFO    ] time= 19/06/2026 18:06:19
[2026-06-19 18:06:19,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:06:19,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:06:19,270.270 INFO    ] No existing commands found in stream
[2026-06-19 18:06:24,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:06:24,284.284 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 18:06:26,063.063 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:06:26,065.065 INFO    ] Checking for system updates...
[2026-06-19 18:06:26,102.102 INFO    ] 200
[2026-06-19 18:06:26,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:26,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:06:26,161.161 INFO    ] No update needed
[2026-06-19 18:06:26,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 18:06:26,198.198 INFO    ] 200
[2026-06-19 18:06:26,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:26,241.241 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:06:26,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:06:26,298.298 INFO    ] No camera update needed
[2026-06-19 18:06:26,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:06:26,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:06:26,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:06:26,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:06:28,354.354 INFO    ] ================================================
[2026-06-19 18:06:28,369.369 INFO    ] Launching Daemon at Fri Jun 19 18:06:28 IST 2026
[2026-06-19 18:06:28,380.380 INFO    ] ================================================
[2026-06-19 18:06:28,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:06:28
[2026-06-19 18:06:29,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:06:29,824.824 INFO    ] Initializing speech engine...
[2026-06-19 18:06:29,839.839 INFO    ] 2026-06-19 18:06:29
[2026-06-19 18:06:30,125.125 INFO    ] 2026-06-19 18:06:30
[2026-06-19 18:06:30,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:06:30,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:06:30,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:06:30,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:06:30,546.546 INFO    ] time= 19/06/2026 18:06:30
[2026-06-19 18:06:30,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:06:30,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:06:30,714.714 INFO    ] No existing commands found in stream
[2026-06-19 18:06:35,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:06:35,742.742 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 18:06:38,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:06:38,618.618 INFO    ] Checking for system updates...
[2026-06-19 18:06:38,654.654 INFO    ] 200
[2026-06-19 18:06:38,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:38,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:06:38,728.728 INFO    ] No update needed
[2026-06-19 18:06:38,730.730 INFO    ] Checking for camera pi updates...
[2026-06-19 18:06:38,768.768 INFO    ] 200
[2026-06-19 18:06:38,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:38,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:06:38,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:06:38,864.864 INFO    ] No camera update needed
[2026-06-19 18:06:38,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:06:38,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:06:38,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:06:38,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:06:40,918.918 INFO    ] ================================================
[2026-06-19 18:06:40,933.933 INFO    ] Launching Daemon at Fri Jun 19 18:06:40 IST 2026
[2026-06-19 18:06:40,944.944 INFO    ] ================================================
[2026-06-19 18:06:41,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:06:41
[2026-06-19 18:06:42,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:06:42,377.377 INFO    ] Initializing speech engine...
[2026-06-19 18:06:42,383.383 INFO    ] 2026-06-19 18:06:42
[2026-06-19 18:06:42,632.632 INFO    ] 2026-06-19 18:06:42
[2026-06-19 18:06:42,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:06:42,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:06:42,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:06:43,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:06:43,116.116 INFO    ] time= 19/06/2026 18:06:43
[2026-06-19 18:06:43,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:06:43,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:06:43,339.339 INFO    ] No existing commands found in stream
[2026-06-19 18:06:48,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:06:48,365.365 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 18:06:52,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:06:52,293.293 INFO    ] Checking for system updates...
[2026-06-19 18:06:52,331.331 INFO    ] 200
[2026-06-19 18:06:52,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:52,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:06:52,389.389 INFO    ] No update needed
[2026-06-19 18:06:52,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 18:06:52,425.425 INFO    ] 200
[2026-06-19 18:06:52,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:06:52,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:06:52,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:06:52,515.515 INFO    ] No camera update needed
[2026-06-19 18:06:52,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:06:52,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:06:52,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:06:52,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:06:54,571.571 INFO    ] ================================================
[2026-06-19 18:06:54,587.587 INFO    ] Launching Daemon at Fri Jun 19 18:06:54 IST 2026
[2026-06-19 18:06:54,598.598 INFO    ] ================================================
[2026-06-19 18:06:55,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:06:55
[2026-06-19 18:06:55,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:06:56,213.213 INFO    ] Initializing speech engine...
[2026-06-19 18:06:56,224.224 INFO    ] 2026-06-19 18:06:56
[2026-06-19 18:06:56,506.506 INFO    ] 2026-06-19 18:06:56
[2026-06-19 18:06:56,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:06:56,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:06:56,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:06:57,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:06:57,054.054 INFO    ] time= 19/06/2026 18:06:57
[2026-06-19 18:06:57,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:06:57,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:06:57,186.186 INFO    ] No existing commands found in stream
[2026-06-19 18:07:02,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:07:02,222.222 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 18:07:03,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:07:03,418.418 INFO    ] Checking for system updates...
[2026-06-19 18:07:03,458.458 INFO    ] 200
[2026-06-19 18:07:03,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:03,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:07:03,517.517 INFO    ] No update needed
[2026-06-19 18:07:03,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 18:07:03,564.564 INFO    ] 200
[2026-06-19 18:07:03,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:03,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:07:03,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:07:03,654.654 INFO    ] No camera update needed
[2026-06-19 18:07:03,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:07:03,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:07:03,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:07:03,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:07:05,710.710 INFO    ] ================================================
[2026-06-19 18:07:05,725.725 INFO    ] Launching Daemon at Fri Jun 19 18:07:05 IST 2026
[2026-06-19 18:07:05,736.736 INFO    ] ================================================
[2026-06-19 18:07:06,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:07:06
[2026-06-19 18:07:06,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:07:07,192.192 INFO    ] Initializing speech engine...
[2026-06-19 18:07:07,199.199 INFO    ] 2026-06-19 18:07:07
[2026-06-19 18:07:07,459.459 INFO    ] 2026-06-19 18:07:07
[2026-06-19 18:07:07,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:07:07,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:07:07,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:07:07,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:07:07,930.930 INFO    ] time= 19/06/2026 18:07:07
[2026-06-19 18:07:07,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:07:08,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:07:08,131.131 INFO    ] No existing commands found in stream
[2026-06-19 18:07:13,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:07:13,164.164 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 18:07:14,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:07:14,225.225 INFO    ] Checking for system updates...
[2026-06-19 18:07:14,261.261 INFO    ] 200
[2026-06-19 18:07:14,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:14,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:07:14,327.327 INFO    ] No update needed
[2026-06-19 18:07:14,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 18:07:14,365.365 INFO    ] 200
[2026-06-19 18:07:14,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:14,413.413 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:07:14,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:07:14,569.569 INFO    ] No camera update needed
[2026-06-19 18:07:14,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:07:14,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:07:14,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:07:14,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:07:16,627.627 INFO    ] ================================================
[2026-06-19 18:07:16,642.642 INFO    ] Launching Daemon at Fri Jun 19 18:07:16 IST 2026
[2026-06-19 18:07:16,653.653 INFO    ] ================================================
[2026-06-19 18:07:17,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:07:17
[2026-06-19 18:07:17,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:07:18,114.114 INFO    ] Initializing speech engine...
[2026-06-19 18:07:18,120.120 INFO    ] 2026-06-19 18:07:18
[2026-06-19 18:07:18,382.382 INFO    ] 2026-06-19 18:07:18
[2026-06-19 18:07:18,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:07:18,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:07:18,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:07:18,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:07:18,833.833 INFO    ] time= 19/06/2026 18:07:18
[2026-06-19 18:07:18,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:07:18,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:07:19,060.060 INFO    ] No existing commands found in stream
[2026-06-19 18:07:24,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:07:24,093.093 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 18:07:25,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:07:25,348.348 INFO    ] Checking for system updates...
[2026-06-19 18:07:25,393.393 INFO    ] 200
[2026-06-19 18:07:25,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:25,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:07:25,499.499 INFO    ] No update needed
[2026-06-19 18:07:25,503.503 INFO    ] Checking for camera pi updates...
[2026-06-19 18:07:25,545.545 INFO    ] 200
[2026-06-19 18:07:25,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:25,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:07:25,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:07:25,646.646 INFO    ] No camera update needed
[2026-06-19 18:07:25,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:07:25,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:07:25,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:07:25,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:07:27,712.712 INFO    ] ================================================
[2026-06-19 18:07:27,727.727 INFO    ] Launching Daemon at Fri Jun 19 18:07:27 IST 2026
[2026-06-19 18:07:27,738.738 INFO    ] ================================================
[2026-06-19 18:07:28,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:07:28
[2026-06-19 18:07:28,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:07:29,160.160 INFO    ] Initializing speech engine...
[2026-06-19 18:07:29,169.169 INFO    ] 2026-06-19 18:07:29
[2026-06-19 18:07:29,421.421 INFO    ] 2026-06-19 18:07:29
[2026-06-19 18:07:29,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:07:29,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:07:29,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:07:29,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:07:29,914.914 INFO    ] time= 19/06/2026 18:07:29
[2026-06-19 18:07:29,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:07:29,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:07:30,137.137 INFO    ] No existing commands found in stream
[2026-06-19 18:07:35,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:07:35,154.154 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-19 18:07:36,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:07:36,467.467 INFO    ] Checking for system updates...
[2026-06-19 18:07:36,506.506 INFO    ] 200
[2026-06-19 18:07:36,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:36,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:07:36,563.563 INFO    ] No update needed
[2026-06-19 18:07:36,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 18:07:36,599.599 INFO    ] 200
[2026-06-19 18:07:36,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:36,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:07:36,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:07:36,688.688 INFO    ] No camera update needed
[2026-06-19 18:07:36,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:07:36,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:07:36,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:07:36,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:07:38,744.744 INFO    ] ================================================
[2026-06-19 18:07:38,760.760 INFO    ] Launching Daemon at Fri Jun 19 18:07:38 IST 2026
[2026-06-19 18:07:38,770.770 INFO    ] ================================================
[2026-06-19 18:07:39,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:07:39
[2026-06-19 18:07:39,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:07:40,174.174 INFO    ] Initializing speech engine...
[2026-06-19 18:07:40,197.197 INFO    ] 2026-06-19 18:07:40
[2026-06-19 18:07:40,453.453 INFO    ] 2026-06-19 18:07:40
[2026-06-19 18:07:40,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:07:40,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:07:40,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:07:40,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:07:40,932.932 INFO    ] time= 19/06/2026 18:07:40
[2026-06-19 18:07:41,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:07:41,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:07:41,153.153 INFO    ] No existing commands found in stream
[2026-06-19 18:07:46,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:07:46,180.180 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 18:07:46,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:07:46,811.811 INFO    ] Checking for system updates...
[2026-06-19 18:07:46,849.849 INFO    ] 200
[2026-06-19 18:07:46,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:46,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:07:46,907.907 INFO    ] No update needed
[2026-06-19 18:07:46,909.909 INFO    ] Checking for camera pi updates...
[2026-06-19 18:07:46,942.942 INFO    ] 200
[2026-06-19 18:07:46,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:07:46,987.987 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:07:47,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:07:47,024.024 INFO    ] No camera update needed
[2026-06-19 18:07:47,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:07:47,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:07:47,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:07:47,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:07:49,082.082 INFO    ] ================================================
[2026-06-19 18:07:49,097.097 INFO    ] Launching Daemon at Fri Jun 19 18:07:49 IST 2026
[2026-06-19 18:07:49,108.108 INFO    ] ================================================
[2026-06-19 18:07:49,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:07:49
[2026-06-19 18:07:50,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:07:50,559.559 INFO    ] Initializing speech engine...
[2026-06-19 18:07:50,566.566 INFO    ] 2026-06-19 18:07:50
[2026-06-19 18:07:50,826.826 INFO    ] 2026-06-19 18:07:50
[2026-06-19 18:07:50,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:07:51,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:07:51,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:07:51,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:07:51,336.336 INFO    ] time= 19/06/2026 18:07:51
[2026-06-19 18:07:51,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:07:51,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:07:51,525.525 INFO    ] No existing commands found in stream
[2026-06-19 18:07:56,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:07:56,542.542 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 18:08:00,795.795 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:08:00,797.797 INFO    ] Checking for system updates...
[2026-06-19 18:08:00,836.836 INFO    ] 200
[2026-06-19 18:08:00,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:00,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:08:00,897.897 INFO    ] No update needed
[2026-06-19 18:08:00,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 18:08:00,933.933 INFO    ] 200
[2026-06-19 18:08:00,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:00,977.977 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:08:01,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:08:01,028.028 INFO    ] No camera update needed
[2026-06-19 18:08:01,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:08:01,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:08:01,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:08:01,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:08:03,095.095 INFO    ] ================================================
[2026-06-19 18:08:03,112.112 INFO    ] Launching Daemon at Fri Jun 19 18:08:03 IST 2026
[2026-06-19 18:08:03,124.124 INFO    ] ================================================
[2026-06-19 18:08:03,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:08:03
[2026-06-19 18:08:04,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:08:04,612.612 INFO    ] Initializing speech engine...
[2026-06-19 18:08:04,622.622 INFO    ] 2026-06-19 18:08:04
[2026-06-19 18:08:04,869.869 INFO    ] 2026-06-19 18:08:04
[2026-06-19 18:08:04,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:08:05,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:08:05,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:08:05,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:08:05,351.351 INFO    ] time= 19/06/2026 18:08:05
[2026-06-19 18:08:05,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:08:05,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:08:05,575.575 INFO    ] No existing commands found in stream
[2026-06-19 18:08:10,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:08:10,593.593 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 18:08:11,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:08:11,363.363 INFO    ] Checking for system updates...
[2026-06-19 18:08:11,400.400 INFO    ] 200
[2026-06-19 18:08:11,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:11,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:08:11,459.459 INFO    ] No update needed
[2026-06-19 18:08:11,462.462 INFO    ] Checking for camera pi updates...
[2026-06-19 18:08:11,496.496 INFO    ] 200
[2026-06-19 18:08:11,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:11,539.539 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:08:11,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:08:11,586.586 INFO    ] No camera update needed
[2026-06-19 18:08:11,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:08:11,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:08:11,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:08:11,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:08:13,644.644 INFO    ] ================================================
[2026-06-19 18:08:13,660.660 INFO    ] Launching Daemon at Fri Jun 19 18:08:13 IST 2026
[2026-06-19 18:08:13,670.670 INFO    ] ================================================
[2026-06-19 18:08:14,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:08:14
[2026-06-19 18:08:14,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:08:15,096.096 INFO    ] Initializing speech engine...
[2026-06-19 18:08:15,106.106 INFO    ] 2026-06-19 18:08:15
[2026-06-19 18:08:15,357.357 INFO    ] 2026-06-19 18:08:15
[2026-06-19 18:08:15,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:08:15,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:08:15,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:08:15,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:08:15,826.826 INFO    ] time= 19/06/2026 18:08:15
[2026-06-19 18:08:15,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:08:15,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:08:16,052.052 INFO    ] No existing commands found in stream
[2026-06-19 18:08:21,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:08:21,082.082 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 18:08:24,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:08:24,701.701 INFO    ] Checking for system updates...
[2026-06-19 18:08:24,737.737 INFO    ] 200
[2026-06-19 18:08:24,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:24,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:08:24,800.800 INFO    ] No update needed
[2026-06-19 18:08:24,802.802 INFO    ] Checking for camera pi updates...
[2026-06-19 18:08:24,840.840 INFO    ] 200
[2026-06-19 18:08:24,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:24,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:08:24,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:08:24,931.931 INFO    ] No camera update needed
[2026-06-19 18:08:24,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:08:24,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:08:24,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:08:24,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:08:26,987.987 INFO    ] ================================================
[2026-06-19 18:08:27,002.002 INFO    ] Launching Daemon at Fri Jun 19 18:08:26 IST 2026
[2026-06-19 18:08:27,013.013 INFO    ] ================================================
[2026-06-19 18:08:27,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:08:27
[2026-06-19 18:08:28,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:08:28,599.599 INFO    ] Initializing speech engine...
[2026-06-19 18:08:28,608.608 INFO    ] 2026-06-19 18:08:28
[2026-06-19 18:08:28,893.893 INFO    ] 2026-06-19 18:08:28
[2026-06-19 18:08:28,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:08:29,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:08:29,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:08:29,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:08:29,364.364 INFO    ] time= 19/06/2026 18:08:29
[2026-06-19 18:08:29,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:08:29,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:08:29,586.586 INFO    ] No existing commands found in stream
[2026-06-19 18:08:34,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:08:34,617.617 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 18:08:35,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:08:35,730.730 INFO    ] Checking for system updates...
[2026-06-19 18:08:35,767.767 INFO    ] 200
[2026-06-19 18:08:35,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:35,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:08:35,832.832 INFO    ] No update needed
[2026-06-19 18:08:35,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 18:08:35,870.870 INFO    ] 200
[2026-06-19 18:08:35,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:35,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:08:35,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:08:35,961.961 INFO    ] No camera update needed
[2026-06-19 18:08:35,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:08:35,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:08:35,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:08:35,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:08:38,017.017 INFO    ] ================================================
[2026-06-19 18:08:38,032.032 INFO    ] Launching Daemon at Fri Jun 19 18:08:38 IST 2026
[2026-06-19 18:08:38,044.044 INFO    ] ================================================
[2026-06-19 18:08:38,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:08:38
[2026-06-19 18:08:39,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:08:39,640.640 INFO    ] Initializing speech engine...
[2026-06-19 18:08:39,648.648 INFO    ] 2026-06-19 18:08:39
[2026-06-19 18:08:39,937.937 INFO    ] 2026-06-19 18:08:39
[2026-06-19 18:08:39,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:08:40,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:08:40,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:08:40,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:08:40,469.469 INFO    ] time= 19/06/2026 18:08:40
[2026-06-19 18:08:40,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:08:40,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:08:40,632.632 INFO    ] No existing commands found in stream
[2026-06-19 18:08:45,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:08:45,661.661 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 18:08:49,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:08:49,636.636 INFO    ] Checking for system updates...
[2026-06-19 18:08:49,675.675 INFO    ] 200
[2026-06-19 18:08:49,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:49,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:08:49,740.740 INFO    ] No update needed
[2026-06-19 18:08:49,742.742 INFO    ] Checking for camera pi updates...
[2026-06-19 18:08:49,775.775 INFO    ] 200
[2026-06-19 18:08:49,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:08:49,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:08:49,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:08:49,855.855 INFO    ] No camera update needed
[2026-06-19 18:08:49,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:08:49,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:08:49,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:08:49,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:08:51,911.911 INFO    ] ================================================
[2026-06-19 18:08:51,927.927 INFO    ] Launching Daemon at Fri Jun 19 18:08:51 IST 2026
[2026-06-19 18:08:51,937.937 INFO    ] ================================================
[2026-06-19 18:08:52,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:08:52
[2026-06-19 18:08:53,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:08:53,529.529 INFO    ] Initializing speech engine...
[2026-06-19 18:08:53,537.537 INFO    ] 2026-06-19 18:08:53
[2026-06-19 18:08:53,809.809 INFO    ] 2026-06-19 18:08:53
[2026-06-19 18:08:53,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:08:54,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:08:54,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:08:54,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:08:54,295.295 INFO    ] time= 19/06/2026 18:08:54
[2026-06-19 18:08:54,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:08:54,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:08:54,520.520 INFO    ] No existing commands found in stream
[2026-06-19 18:08:59,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:08:59,558.558 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 18:09:03,094.094 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:09:03,098.098 INFO    ] Checking for system updates...
[2026-06-19 18:09:03,148.148 INFO    ] 200
[2026-06-19 18:09:03,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:03,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:09:03,230.230 INFO    ] No update needed
[2026-06-19 18:09:03,233.233 INFO    ] Checking for camera pi updates...
[2026-06-19 18:09:03,268.268 INFO    ] 200
[2026-06-19 18:09:03,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:03,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:09:03,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:09:03,365.365 INFO    ] No camera update needed
[2026-06-19 18:09:03,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:09:03,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:09:03,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:09:03,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:09:05,428.428 INFO    ] ================================================
[2026-06-19 18:09:05,444.444 INFO    ] Launching Daemon at Fri Jun 19 18:09:05 IST 2026
[2026-06-19 18:09:05,455.455 INFO    ] ================================================
[2026-06-19 18:09:06,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:09:06
[2026-06-19 18:09:06,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:09:06,948.948 INFO    ] Initializing speech engine...
[2026-06-19 18:09:06,957.957 INFO    ] 2026-06-19 18:09:06
[2026-06-19 18:09:07,241.241 INFO    ] 2026-06-19 18:09:07
[2026-06-19 18:09:07,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:09:07,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:09:07,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:09:07,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:09:07,721.721 INFO    ] time= 19/06/2026 18:09:07
[2026-06-19 18:09:07,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:09:07,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:09:08,000.000 INFO    ] No existing commands found in stream
[2026-06-19 18:09:13,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:09:13,033.033 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 18:09:15,104.104 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:09:15,107.107 INFO    ] Checking for system updates...
[2026-06-19 18:09:15,145.145 INFO    ] 200
[2026-06-19 18:09:15,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:15,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:09:15,203.203 INFO    ] No update needed
[2026-06-19 18:09:15,205.205 INFO    ] Checking for camera pi updates...
[2026-06-19 18:09:15,241.241 INFO    ] 200
[2026-06-19 18:09:15,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:15,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:09:15,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:09:15,333.333 INFO    ] No camera update needed
[2026-06-19 18:09:15,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:09:15,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:09:15,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:09:15,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:09:17,390.390 INFO    ] ================================================
[2026-06-19 18:09:17,406.406 INFO    ] Launching Daemon at Fri Jun 19 18:09:17 IST 2026
[2026-06-19 18:09:17,417.417 INFO    ] ================================================
[2026-06-19 18:09:18,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:09:17
[2026-06-19 18:09:18,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:09:18,874.874 INFO    ] Initializing speech engine...
[2026-06-19 18:09:18,886.886 INFO    ] 2026-06-19 18:09:18
[2026-06-19 18:09:19,136.136 INFO    ] 2026-06-19 18:09:19
[2026-06-19 18:09:19,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:09:19,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:09:19,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:09:19,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:09:19,629.629 INFO    ] time= 19/06/2026 18:09:19
[2026-06-19 18:09:19,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:09:19,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:09:19,830.830 INFO    ] No existing commands found in stream
[2026-06-19 18:09:24,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:09:24,861.861 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 18:09:25,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:09:25,447.447 INFO    ] Checking for system updates...
[2026-06-19 18:09:25,485.485 INFO    ] 200
[2026-06-19 18:09:25,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:25,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:09:25,542.542 INFO    ] No update needed
[2026-06-19 18:09:25,545.545 INFO    ] Checking for camera pi updates...
[2026-06-19 18:09:25,579.579 INFO    ] 200
[2026-06-19 18:09:25,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:25,625.625 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:09:25,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:09:25,775.775 INFO    ] No camera update needed
[2026-06-19 18:09:25,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:09:25,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:09:25,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:09:25,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:09:27,832.832 INFO    ] ================================================
[2026-06-19 18:09:27,847.847 INFO    ] Launching Daemon at Fri Jun 19 18:09:27 IST 2026
[2026-06-19 18:09:27,859.859 INFO    ] ================================================
[2026-06-19 18:09:28,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:09:28
[2026-06-19 18:09:29,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:09:29,276.276 INFO    ] Initializing speech engine...
[2026-06-19 18:09:29,294.294 INFO    ] 2026-06-19 18:09:29
[2026-06-19 18:09:29,548.548 INFO    ] 2026-06-19 18:09:29
[2026-06-19 18:09:29,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:09:29,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:09:29,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:09:29,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:09:29,998.998 INFO    ] time= 19/06/2026 18:09:29
[2026-06-19 18:09:30,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:09:30,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:09:30,254.254 INFO    ] No existing commands found in stream
[2026-06-19 18:09:35,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:09:35,280.280 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 18:09:38,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:09:38,702.702 INFO    ] Checking for system updates...
[2026-06-19 18:09:38,738.738 INFO    ] 200
[2026-06-19 18:09:38,740.740 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:38,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:09:38,796.796 INFO    ] No update needed
[2026-06-19 18:09:38,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 18:09:38,832.832 INFO    ] 200
[2026-06-19 18:09:38,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:38,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:09:38,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:09:38,927.927 INFO    ] No camera update needed
[2026-06-19 18:09:38,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:09:38,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:09:38,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:09:38,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:09:40,982.982 INFO    ] ================================================
[2026-06-19 18:09:41,998.998 INFO    ] Launching Daemon at Fri Jun 19 18:09:40 IST 2026
[2026-06-19 18:09:41,009.009 INFO    ] ================================================
[2026-06-19 18:09:41,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:09:41
[2026-06-19 18:09:42,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:09:42,567.567 INFO    ] Initializing speech engine...
[2026-06-19 18:09:42,577.577 INFO    ] 2026-06-19 18:09:42
[2026-06-19 18:09:42,843.843 INFO    ] 2026-06-19 18:09:42
[2026-06-19 18:09:42,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:09:43,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:09:43,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:09:43,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:09:43,389.389 INFO    ] time= 19/06/2026 18:09:43
[2026-06-19 18:09:43,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:09:43,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:09:43,558.558 INFO    ] No existing commands found in stream
[2026-06-19 18:09:48,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:09:48,593.593 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 18:09:51,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:09:51,247.247 INFO    ] Checking for system updates...
[2026-06-19 18:09:51,283.283 INFO    ] 200
[2026-06-19 18:09:51,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:51,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:09:51,347.347 INFO    ] No update needed
[2026-06-19 18:09:51,350.350 INFO    ] Checking for camera pi updates...
[2026-06-19 18:09:51,387.387 INFO    ] 200
[2026-06-19 18:09:51,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:09:51,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:09:51,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:09:51,477.477 INFO    ] No camera update needed
[2026-06-19 18:09:51,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:09:51,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:09:51,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:09:51,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:09:53,535.535 INFO    ] ================================================
[2026-06-19 18:09:53,551.551 INFO    ] Launching Daemon at Fri Jun 19 18:09:53 IST 2026
[2026-06-19 18:09:53,562.562 INFO    ] ================================================
[2026-06-19 18:09:54,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:09:54
[2026-06-19 18:09:54,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:09:55,024.024 INFO    ] Initializing speech engine...
[2026-06-19 18:09:55,030.030 INFO    ] 2026-06-19 18:09:55
[2026-06-19 18:09:55,304.304 INFO    ] 2026-06-19 18:09:55
[2026-06-19 18:09:55,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:09:55,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:09:55,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:09:55,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:09:55,768.768 INFO    ] time= 19/06/2026 18:09:55
[2026-06-19 18:09:55,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:09:55,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:09:56,011.011 INFO    ] No existing commands found in stream
[2026-06-19 18:10:01,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:10:01,042.042 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 18:10:08,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:10:08,375.375 INFO    ] Checking for system updates...
[2026-06-19 18:10:08,416.416 INFO    ] 200
[2026-06-19 18:10:08,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:10:08,472.472 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:10:08,475.475 INFO    ] No update needed
[2026-06-19 18:10:08,478.478 INFO    ] Checking for camera pi updates...
[2026-06-19 18:10:08,515.515 INFO    ] 200
[2026-06-19 18:10:08,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:10:08,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:10:08,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:10:08,620.620 INFO    ] No camera update needed
[2026-06-19 18:10:08,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:10:08,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:10:08,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:10:08,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:10:10,681.681 INFO    ] ================================================
[2026-06-19 18:10:10,697.697 INFO    ] Launching Daemon at Fri Jun 19 18:10:10 IST 2026
[2026-06-19 18:10:10,708.708 INFO    ] ================================================
[2026-06-19 18:10:11,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:10:11
[2026-06-19 18:10:12,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:10:12,303.303 INFO    ] Initializing speech engine...
[2026-06-19 18:10:12,312.312 INFO    ] 2026-06-19 18:10:12
[2026-06-19 18:10:12,586.586 INFO    ] 2026-06-19 18:10:12
[2026-06-19 18:10:12,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:10:12,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:10:12,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:10:13,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:10:13,092.092 INFO    ] time= 19/06/2026 18:10:13
[2026-06-19 18:10:13,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:10:13,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:10:13,314.314 INFO    ] No existing commands found in stream
[2026-06-19 18:10:18,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:10:18,347.347 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 18:10:21,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:10:21,839.839 INFO    ] Checking for system updates...
[2026-06-19 18:10:21,876.876 INFO    ] 200
[2026-06-19 18:10:21,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:10:21,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:10:21,941.941 INFO    ] No update needed
[2026-06-19 18:10:21,943.943 INFO    ] Checking for camera pi updates...
[2026-06-19 18:10:21,978.978 INFO    ] 200
[2026-06-19 18:10:21,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:10:22,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:10:22,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:10:22,070.070 INFO    ] No camera update needed
[2026-06-19 18:10:22,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:10:22,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:10:22,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:10:22,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:10:24,129.129 INFO    ] ================================================
[2026-06-19 18:10:24,145.145 INFO    ] Launching Daemon at Fri Jun 19 18:10:24 IST 2026
[2026-06-19 18:10:24,155.155 INFO    ] ================================================
[2026-06-19 18:10:24,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:10:24
[2026-06-19 18:10:25,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:10:25,748.748 INFO    ] Initializing speech engine...
[2026-06-19 18:10:25,753.753 INFO    ] 2026-06-19 18:10:25
[2026-06-19 18:10:26,028.028 INFO    ] 2026-06-19 18:10:26
[2026-06-19 18:10:26,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:10:26,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:10:26,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:10:26,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:10:26,586.586 INFO    ] time= 19/06/2026 18:10:26
[2026-06-19 18:10:26,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:10:26,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:10:26,747.747 INFO    ] No existing commands found in stream
[2026-06-19 18:10:31,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:10:31,769.769 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 18:10:36,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:10:36,220.220 INFO    ] Checking for system updates...
[2026-06-19 18:10:36,257.257 INFO    ] 200
[2026-06-19 18:10:36,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:10:36,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:10:36,316.316 INFO    ] No update needed
[2026-06-19 18:10:36,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 18:10:36,353.353 INFO    ] 200
[2026-06-19 18:10:36,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:10:36,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:10:36,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:10:36,448.448 INFO    ] No camera update needed
[2026-06-19 18:10:36,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:10:36,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:10:36,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:10:36,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:10:38,505.505 INFO    ] ================================================
[2026-06-19 18:10:38,521.521 INFO    ] Launching Daemon at Fri Jun 19 18:10:38 IST 2026
[2026-06-19 18:10:38,532.532 INFO    ] ================================================
[2026-06-19 18:10:39,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:10:39
[2026-06-19 18:10:39,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:10:40,139.139 INFO    ] Initializing speech engine...
[2026-06-19 18:10:40,146.146 INFO    ] 2026-06-19 18:10:40
[2026-06-19 18:10:40,432.432 INFO    ] 2026-06-19 18:10:40
[2026-06-19 18:10:40,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:10:40,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:10:40,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:10:40,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:10:40,969.969 INFO    ] time= 19/06/2026 18:10:40
[2026-06-19 18:10:40,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:10:40,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:10:41,125.125 INFO    ] No existing commands found in stream
[2026-06-19 18:10:46,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:10:46,151.151 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 18:10:49,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:10:49,089.089 INFO    ] Checking for system updates...
[2026-06-19 18:10:49,126.126 INFO    ] 200
[2026-06-19 18:10:49,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:10:49,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:10:49,188.188 INFO    ] No update needed
[2026-06-19 18:10:49,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 18:10:49,224.224 INFO    ] 200
[2026-06-19 18:10:49,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:10:49,272.272 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:10:49,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:10:49,308.308 INFO    ] No camera update needed
[2026-06-19 18:10:49,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:10:49,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:10:49,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:10:49,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:10:51,365.365 INFO    ] ================================================
[2026-06-19 18:10:51,381.381 INFO    ] Launching Daemon at Fri Jun 19 18:10:51 IST 2026
[2026-06-19 18:10:51,391.391 INFO    ] ================================================
[2026-06-19 18:10:51,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:10:51
[2026-06-19 18:10:52,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:10:52,844.844 INFO    ] Initializing speech engine...
[2026-06-19 18:10:52,868.868 INFO    ] 2026-06-19 18:10:52
[2026-06-19 18:10:53,143.143 INFO    ] 2026-06-19 18:10:53
[2026-06-19 18:10:53,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:10:53,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:10:53,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:10:53,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:10:53,656.656 INFO    ] time= 19/06/2026 18:10:53
[2026-06-19 18:10:53,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:10:53,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:10:53,920.920 INFO    ] No existing commands found in stream
[2026-06-19 18:10:58,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:10:58,953.953 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 18:11:02,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:11:02,898.898 INFO    ] Checking for system updates...
[2026-06-19 18:11:02,942.942 INFO    ] 200
[2026-06-19 18:11:02,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:03,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:11:03,009.009 INFO    ] No update needed
[2026-06-19 18:11:03,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 18:11:03,051.051 INFO    ] 200
[2026-06-19 18:11:03,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:03,102.102 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:11:03,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:11:03,155.155 INFO    ] No camera update needed
[2026-06-19 18:11:03,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:11:03,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:11:03,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:11:03,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:11:05,222.222 INFO    ] ================================================
[2026-06-19 18:11:05,238.238 INFO    ] Launching Daemon at Fri Jun 19 18:11:05 IST 2026
[2026-06-19 18:11:05,250.250 INFO    ] ================================================
[2026-06-19 18:11:05,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:11:05
[2026-06-19 18:11:06,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:11:06,713.713 INFO    ] Initializing speech engine...
[2026-06-19 18:11:06,721.721 INFO    ] 2026-06-19 18:11:06
[2026-06-19 18:11:07,002.002 INFO    ] 2026-06-19 18:11:06
[2026-06-19 18:11:07,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:11:07,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:11:07,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:11:07,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:11:07,502.502 INFO    ] time= 19/06/2026 18:11:07
[2026-06-19 18:11:07,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:11:07,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:11:07,719.719 INFO    ] No existing commands found in stream
[2026-06-19 18:11:12,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:11:12,745.745 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 18:11:13,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:11:13,305.305 INFO    ] Checking for system updates...
[2026-06-19 18:11:13,342.342 INFO    ] 200
[2026-06-19 18:11:13,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:13,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:11:13,406.406 INFO    ] No update needed
[2026-06-19 18:11:13,409.409 INFO    ] Checking for camera pi updates...
[2026-06-19 18:11:13,447.447 INFO    ] 200
[2026-06-19 18:11:13,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:13,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:11:13,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:11:13,546.546 INFO    ] No camera update needed
[2026-06-19 18:11:13,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:11:13,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:11:13,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:11:13,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:11:15,603.603 INFO    ] ================================================
[2026-06-19 18:11:15,618.618 INFO    ] Launching Daemon at Fri Jun 19 18:11:15 IST 2026
[2026-06-19 18:11:15,629.629 INFO    ] ================================================
[2026-06-19 18:11:16,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:11:16
[2026-06-19 18:11:16,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:11:17,082.082 INFO    ] Initializing speech engine...
[2026-06-19 18:11:17,091.091 INFO    ] 2026-06-19 18:11:17
[2026-06-19 18:11:17,381.381 INFO    ] 2026-06-19 18:11:17
[2026-06-19 18:11:17,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:11:17,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:11:17,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:11:17,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:11:17,784.784 INFO    ] time= 19/06/2026 18:11:17
[2026-06-19 18:11:17,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:11:17,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:11:17,977.977 INFO    ] No existing commands found in stream
[2026-06-19 18:11:23,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:11:23,006.006 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 18:11:27,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:11:27,180.180 INFO    ] Checking for system updates...
[2026-06-19 18:11:27,217.217 INFO    ] 200
[2026-06-19 18:11:27,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:27,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:11:27,280.280 INFO    ] No update needed
[2026-06-19 18:11:27,283.283 INFO    ] Checking for camera pi updates...
[2026-06-19 18:11:27,318.318 INFO    ] 200
[2026-06-19 18:11:27,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:27,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:11:27,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:11:27,522.522 INFO    ] No camera update needed
[2026-06-19 18:11:27,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:11:27,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:11:27,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:11:27,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:11:29,583.583 INFO    ] ================================================
[2026-06-19 18:11:29,598.598 INFO    ] Launching Daemon at Fri Jun 19 18:11:29 IST 2026
[2026-06-19 18:11:29,609.609 INFO    ] ================================================
[2026-06-19 18:11:30,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:11:30
[2026-06-19 18:11:30,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:11:31,014.014 INFO    ] Initializing speech engine...
[2026-06-19 18:11:31,020.020 INFO    ] 2026-06-19 18:11:31
[2026-06-19 18:11:31,298.298 INFO    ] 2026-06-19 18:11:31
[2026-06-19 18:11:31,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:11:31,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:11:31,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:11:31,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:11:31,778.778 INFO    ] time= 19/06/2026 18:11:31
[2026-06-19 18:11:31,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:11:31,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:11:32,032.032 INFO    ] No existing commands found in stream
[2026-06-19 18:11:37,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:11:37,054.054 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 18:11:38,674.674 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:11:38,677.677 INFO    ] Checking for system updates...
[2026-06-19 18:11:38,713.713 INFO    ] 200
[2026-06-19 18:11:38,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:38,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:11:38,774.774 INFO    ] No update needed
[2026-06-19 18:11:38,776.776 INFO    ] Checking for camera pi updates...
[2026-06-19 18:11:38,810.810 INFO    ] 200
[2026-06-19 18:11:38,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:38,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:11:38,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:11:38,896.896 INFO    ] No camera update needed
[2026-06-19 18:11:38,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:11:38,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:11:38,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:11:38,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:11:40,952.952 INFO    ] ================================================
[2026-06-19 18:11:40,968.968 INFO    ] Launching Daemon at Fri Jun 19 18:11:40 IST 2026
[2026-06-19 18:11:40,979.979 INFO    ] ================================================
[2026-06-19 18:11:41,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:11:41
[2026-06-19 18:11:42,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:11:42,394.394 INFO    ] Initializing speech engine...
[2026-06-19 18:11:42,400.400 INFO    ] 2026-06-19 18:11:42
[2026-06-19 18:11:42,687.687 INFO    ] 2026-06-19 18:11:42
[2026-06-19 18:11:42,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:11:42,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:11:42,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:11:43,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:11:43,095.095 INFO    ] time= 19/06/2026 18:11:43
[2026-06-19 18:11:43,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:11:43,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:11:43,189.189 INFO    ] No existing commands found in stream
[2026-06-19 18:11:48,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:11:48,222.222 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 18:11:51,133.133 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:11:51,136.136 INFO    ] Checking for system updates...
[2026-06-19 18:11:51,171.171 INFO    ] 200
[2026-06-19 18:11:51,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:51,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:11:51,228.228 INFO    ] No update needed
[2026-06-19 18:11:51,231.231 INFO    ] Checking for camera pi updates...
[2026-06-19 18:11:51,264.264 INFO    ] 200
[2026-06-19 18:11:51,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:11:51,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:11:51,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:11:51,371.371 INFO    ] No camera update needed
[2026-06-19 18:11:51,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:11:51,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:11:51,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:11:51,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:11:53,426.426 INFO    ] ================================================
[2026-06-19 18:11:53,442.442 INFO    ] Launching Daemon at Fri Jun 19 18:11:53 IST 2026
[2026-06-19 18:11:53,453.453 INFO    ] ================================================
[2026-06-19 18:11:54,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:11:54
[2026-06-19 18:11:54,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:11:54,881.881 INFO    ] Initializing speech engine...
[2026-06-19 18:11:54,887.887 INFO    ] 2026-06-19 18:11:54
[2026-06-19 18:11:55,142.142 INFO    ] 2026-06-19 18:11:55
[2026-06-19 18:11:55,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:11:55,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:11:55,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:11:55,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:11:55,609.609 INFO    ] time= 19/06/2026 18:11:55
[2026-06-19 18:11:55,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:11:55,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:11:55,845.845 INFO    ] No existing commands found in stream
[2026-06-19 18:12:00,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:12:00,872.872 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 18:12:02,718.718 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:12:02,722.722 INFO    ] Checking for system updates...
[2026-06-19 18:12:02,769.769 INFO    ] 200
[2026-06-19 18:12:02,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:02,834.834 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:12:02,838.838 INFO    ] No update needed
[2026-06-19 18:12:02,841.841 INFO    ] Checking for camera pi updates...
[2026-06-19 18:12:02,879.879 INFO    ] 200
[2026-06-19 18:12:02,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:02,931.931 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:12:02,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:12:02,982.982 INFO    ] No camera update needed
[2026-06-19 18:12:02,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:12:02,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:12:02,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:12:02,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:12:05,042.042 INFO    ] ================================================
[2026-06-19 18:12:05,058.058 INFO    ] Launching Daemon at Fri Jun 19 18:12:05 IST 2026
[2026-06-19 18:12:05,069.069 INFO    ] ================================================
[2026-06-19 18:12:05,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:12:05
[2026-06-19 18:12:06,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:12:06,508.508 INFO    ] Initializing speech engine...
[2026-06-19 18:12:06,524.524 INFO    ] 2026-06-19 18:12:06
[2026-06-19 18:12:06,829.829 INFO    ] 2026-06-19 18:12:06
[2026-06-19 18:12:06,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:12:07,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:12:07,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:12:07,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:12:07,212.212 INFO    ] time= 19/06/2026 18:12:07
[2026-06-19 18:12:07,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:12:07,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:12:07,326.326 INFO    ] No existing commands found in stream
[2026-06-19 18:12:12,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:12:12,354.354 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 18:12:13,074.074 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:12:13,077.077 INFO    ] Checking for system updates...
[2026-06-19 18:12:13,113.113 INFO    ] 200
[2026-06-19 18:12:13,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:13,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:12:13,172.172 INFO    ] No update needed
[2026-06-19 18:12:13,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 18:12:13,208.208 INFO    ] 200
[2026-06-19 18:12:13,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:13,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:12:13,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:12:13,304.304 INFO    ] No camera update needed
[2026-06-19 18:12:13,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:12:13,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:12:13,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:12:13,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:12:15,360.360 INFO    ] ================================================
[2026-06-19 18:12:15,375.375 INFO    ] Launching Daemon at Fri Jun 19 18:12:15 IST 2026
[2026-06-19 18:12:15,390.390 INFO    ] ================================================
[2026-06-19 18:12:16,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:12:16
[2026-06-19 18:12:16,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:12:16,945.945 INFO    ] Initializing speech engine...
[2026-06-19 18:12:16,953.953 INFO    ] 2026-06-19 18:12:16
[2026-06-19 18:12:17,223.223 INFO    ] 2026-06-19 18:12:17
[2026-06-19 18:12:17,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:12:17,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:12:17,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:12:17,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:12:17,716.716 INFO    ] time= 19/06/2026 18:12:17
[2026-06-19 18:12:17,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:12:17,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:12:17,942.942 INFO    ] No existing commands found in stream
[2026-06-19 18:12:22,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:12:22,960.960 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-19 18:12:24,641.641 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:12:24,644.644 INFO    ] Checking for system updates...
[2026-06-19 18:12:24,681.681 INFO    ] 200
[2026-06-19 18:12:24,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:24,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:12:24,739.739 INFO    ] No update needed
[2026-06-19 18:12:24,742.742 INFO    ] Checking for camera pi updates...
[2026-06-19 18:12:24,776.776 INFO    ] 200
[2026-06-19 18:12:24,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:24,824.824 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:12:24,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:12:24,872.872 INFO    ] No camera update needed
[2026-06-19 18:12:24,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:12:24,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:12:24,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:12:24,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:12:26,931.931 INFO    ] ================================================
[2026-06-19 18:12:26,947.947 INFO    ] Launching Daemon at Fri Jun 19 18:12:26 IST 2026
[2026-06-19 18:12:26,958.958 INFO    ] ================================================
[2026-06-19 18:12:27,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:12:27
[2026-06-19 18:12:28,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:12:28,413.413 INFO    ] Initializing speech engine...
[2026-06-19 18:12:28,421.421 INFO    ] 2026-06-19 18:12:28
[2026-06-19 18:12:28,674.674 INFO    ] 2026-06-19 18:12:28
[2026-06-19 18:12:28,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:12:28,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:12:28,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:12:29,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:12:29,053.053 INFO    ] time= 19/06/2026 18:12:29
[2026-06-19 18:12:29,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:12:29,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:12:29,247.247 INFO    ] No existing commands found in stream
[2026-06-19 18:12:34,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:12:34,270.270 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 18:12:37,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:12:37,304.304 INFO    ] Checking for system updates...
[2026-06-19 18:12:37,340.340 INFO    ] 200
[2026-06-19 18:12:37,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:37,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:12:37,397.397 INFO    ] No update needed
[2026-06-19 18:12:37,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 18:12:37,436.436 INFO    ] 200
[2026-06-19 18:12:37,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:37,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:12:37,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:12:37,523.523 INFO    ] No camera update needed
[2026-06-19 18:12:37,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:12:37,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:12:37,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:12:37,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:12:39,579.579 INFO    ] ================================================
[2026-06-19 18:12:39,595.595 INFO    ] Launching Daemon at Fri Jun 19 18:12:39 IST 2026
[2026-06-19 18:12:39,606.606 INFO    ] ================================================
[2026-06-19 18:12:40,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:12:40
[2026-06-19 18:12:40,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:12:41,077.077 INFO    ] Initializing speech engine...
[2026-06-19 18:12:41,084.084 INFO    ] 2026-06-19 18:12:41
[2026-06-19 18:12:41,331.331 INFO    ] 2026-06-19 18:12:41
[2026-06-19 18:12:41,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:12:41,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:12:41,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:12:41,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:12:41,796.796 INFO    ] time= 19/06/2026 18:12:41
[2026-06-19 18:12:41,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:12:41,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:12:42,018.018 INFO    ] No existing commands found in stream
[2026-06-19 18:12:47,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:12:47,047.047 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 18:12:49,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:12:49,149.149 INFO    ] Checking for system updates...
[2026-06-19 18:12:49,185.185 INFO    ] 200
[2026-06-19 18:12:49,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:49,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:12:49,244.244 INFO    ] No update needed
[2026-06-19 18:12:49,246.246 INFO    ] Checking for camera pi updates...
[2026-06-19 18:12:49,281.281 INFO    ] 200
[2026-06-19 18:12:49,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:12:49,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:12:49,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:12:49,361.361 INFO    ] No camera update needed
[2026-06-19 18:12:49,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:12:49,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:12:49,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:12:49,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:12:51,417.417 INFO    ] ================================================
[2026-06-19 18:12:51,432.432 INFO    ] Launching Daemon at Fri Jun 19 18:12:51 IST 2026
[2026-06-19 18:12:51,443.443 INFO    ] ================================================
[2026-06-19 18:12:52,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:12:52
[2026-06-19 18:12:52,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:12:52,896.896 INFO    ] Initializing speech engine...
[2026-06-19 18:12:52,902.902 INFO    ] 2026-06-19 18:12:52
[2026-06-19 18:12:53,195.195 INFO    ] 2026-06-19 18:12:53
[2026-06-19 18:12:53,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:12:53,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:12:53,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:12:53,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:12:53,610.610 INFO    ] time= 19/06/2026 18:12:53
[2026-06-19 18:12:53,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:12:53,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:12:53,783.783 INFO    ] No existing commands found in stream
[2026-06-19 18:12:58,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:12:58,811.811 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 18:13:02,900.900 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:13:02,903.903 INFO    ] Checking for system updates...
[2026-06-19 18:13:02,947.947 INFO    ] 200
[2026-06-19 18:13:02,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:03,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:13:03,013.013 INFO    ] No update needed
[2026-06-19 18:13:03,016.016 INFO    ] Checking for camera pi updates...
[2026-06-19 18:13:03,056.056 INFO    ] 200
[2026-06-19 18:13:03,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:03,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:13:03,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:13:03,163.163 INFO    ] No camera update needed
[2026-06-19 18:13:03,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:13:03,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:13:03,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:13:03,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:13:05,229.229 INFO    ] ================================================
[2026-06-19 18:13:05,245.245 INFO    ] Launching Daemon at Fri Jun 19 18:13:05 IST 2026
[2026-06-19 18:13:05,256.256 INFO    ] ================================================
[2026-06-19 18:13:05,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:13:05
[2026-06-19 18:13:06,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:13:06,716.716 INFO    ] Initializing speech engine...
[2026-06-19 18:13:06,730.730 INFO    ] 2026-06-19 18:13:06
[2026-06-19 18:13:06,996.996 INFO    ] 2026-06-19 18:13:06
[2026-06-19 18:13:07,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:13:07,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:13:07,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:13:07,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:13:07,373.373 INFO    ] time= 19/06/2026 18:13:07
[2026-06-19 18:13:07,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:13:07,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:13:07,574.574 INFO    ] No existing commands found in stream
[2026-06-19 18:13:12,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:13:12,588.588 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 18:13:15,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:13:15,155.155 INFO    ] Checking for system updates...
[2026-06-19 18:13:15,190.190 INFO    ] 200
[2026-06-19 18:13:15,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:15,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:13:15,249.249 INFO    ] No update needed
[2026-06-19 18:13:15,251.251 INFO    ] Checking for camera pi updates...
[2026-06-19 18:13:15,290.290 INFO    ] 200
[2026-06-19 18:13:15,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:15,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:13:15,378.378 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:13:15,380.380 INFO    ] No camera update needed
[2026-06-19 18:13:15,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:13:15,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:13:15,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:13:15,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:13:17,436.436 INFO    ] ================================================
[2026-06-19 18:13:17,451.451 INFO    ] Launching Daemon at Fri Jun 19 18:13:17 IST 2026
[2026-06-19 18:13:17,462.462 INFO    ] ================================================
[2026-06-19 18:13:18,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:13:18
[2026-06-19 18:13:18,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:13:18,902.902 INFO    ] Initializing speech engine...
[2026-06-19 18:13:18,920.920 INFO    ] 2026-06-19 18:13:18
[2026-06-19 18:13:19,191.191 INFO    ] 2026-06-19 18:13:19
[2026-06-19 18:13:19,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:13:19,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:13:19,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:13:19,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:13:19,600.600 INFO    ] time= 19/06/2026 18:13:19
[2026-06-19 18:13:19,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:13:19,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:13:19,691.691 INFO    ] No existing commands found in stream
[2026-06-19 18:13:24,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:13:24,729.729 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 18:13:25,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:13:25,189.189 INFO    ] Checking for system updates...
[2026-06-19 18:13:25,226.226 INFO    ] 200
[2026-06-19 18:13:25,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:25,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:13:25,289.289 INFO    ] No update needed
[2026-06-19 18:13:25,292.292 INFO    ] Checking for camera pi updates...
[2026-06-19 18:13:25,326.326 INFO    ] 200
[2026-06-19 18:13:25,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:25,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:13:25,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:13:25,428.428 INFO    ] No camera update needed
[2026-06-19 18:13:25,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:13:25,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:13:25,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:13:25,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:13:27,484.484 INFO    ] ================================================
[2026-06-19 18:13:27,499.499 INFO    ] Launching Daemon at Fri Jun 19 18:13:27 IST 2026
[2026-06-19 18:13:27,509.509 INFO    ] ================================================
[2026-06-19 18:13:28,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:13:28
[2026-06-19 18:13:28,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:13:29,101.101 INFO    ] Initializing speech engine...
[2026-06-19 18:13:29,116.116 INFO    ] 2026-06-19 18:13:29
[2026-06-19 18:13:29,386.386 INFO    ] 2026-06-19 18:13:29
[2026-06-19 18:13:29,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:13:29,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:13:29,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:13:29,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:13:29,950.950 INFO    ] time= 19/06/2026 18:13:29
[2026-06-19 18:13:29,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:13:29,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:13:30,112.112 INFO    ] No existing commands found in stream
[2026-06-19 18:13:35,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:13:35,136.136 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 18:13:37,061.061 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:13:37,064.064 INFO    ] Checking for system updates...
[2026-06-19 18:13:37,101.101 INFO    ] 200
[2026-06-19 18:13:37,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:37,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:13:37,160.160 INFO    ] No update needed
[2026-06-19 18:13:37,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 18:13:37,201.201 INFO    ] 200
[2026-06-19 18:13:37,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:37,246.246 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:13:37,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:13:37,304.304 INFO    ] No camera update needed
[2026-06-19 18:13:37,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:13:37,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:13:37,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:13:37,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:13:39,358.358 INFO    ] ================================================
[2026-06-19 18:13:39,373.373 INFO    ] Launching Daemon at Fri Jun 19 18:13:39 IST 2026
[2026-06-19 18:13:39,384.384 INFO    ] ================================================
[2026-06-19 18:13:39,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:13:39
[2026-06-19 18:13:40,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:13:40,801.801 INFO    ] Initializing speech engine...
[2026-06-19 18:13:40,827.827 INFO    ] 2026-06-19 18:13:40
[2026-06-19 18:13:41,097.097 INFO    ] 2026-06-19 18:13:41
[2026-06-19 18:13:41,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:13:41,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:13:41,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:13:41,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:13:41,599.599 INFO    ] time= 19/06/2026 18:13:41
[2026-06-19 18:13:41,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:13:41,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:13:41,854.854 INFO    ] No existing commands found in stream
[2026-06-19 18:13:46,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:13:46,880.880 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 18:13:47,523.523 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:13:47,526.526 INFO    ] Checking for system updates...
[2026-06-19 18:13:47,563.563 INFO    ] 200
[2026-06-19 18:13:47,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:47,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:13:47,625.625 INFO    ] No update needed
[2026-06-19 18:13:47,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 18:13:47,662.662 INFO    ] 200
[2026-06-19 18:13:47,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:47,710.710 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:13:47,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:13:47,746.746 INFO    ] No camera update needed
[2026-06-19 18:13:47,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:13:47,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:13:47,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:13:47,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:13:49,802.802 INFO    ] ================================================
[2026-06-19 18:13:49,817.817 INFO    ] Launching Daemon at Fri Jun 19 18:13:49 IST 2026
[2026-06-19 18:13:49,828.828 INFO    ] ================================================
[2026-06-19 18:13:50,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:13:50
[2026-06-19 18:13:50,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:13:51,276.276 INFO    ] Initializing speech engine...
[2026-06-19 18:13:51,285.285 INFO    ] 2026-06-19 18:13:51
[2026-06-19 18:13:51,549.549 INFO    ] 2026-06-19 18:13:51
[2026-06-19 18:13:51,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:13:51,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:13:51,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:13:51,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:13:51,959.959 INFO    ] time= 19/06/2026 18:13:51
[2026-06-19 18:13:51,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:13:51,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:13:52,120.120 INFO    ] No existing commands found in stream
[2026-06-19 18:13:57,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:13:57,153.153 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 18:13:57,571.571 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:13:57,574.574 INFO    ] Checking for system updates...
[2026-06-19 18:13:57,611.611 INFO    ] 200
[2026-06-19 18:13:57,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:57,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:13:57,672.672 INFO    ] No update needed
[2026-06-19 18:13:57,674.674 INFO    ] Checking for camera pi updates...
[2026-06-19 18:13:57,708.708 INFO    ] 200
[2026-06-19 18:13:57,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:13:57,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:13:57,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:13:57,802.802 INFO    ] No camera update needed
[2026-06-19 18:13:57,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:13:57,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:13:57,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:13:57,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:13:59,857.857 INFO    ] ================================================
[2026-06-19 18:13:59,872.872 INFO    ] Launching Daemon at Fri Jun 19 18:13:59 IST 2026
[2026-06-19 18:13:59,883.883 INFO    ] ================================================
[2026-06-19 18:14:00,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:14:00
[2026-06-19 18:14:01,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:14:01,341.341 INFO    ] Initializing speech engine...
[2026-06-19 18:14:01,350.350 INFO    ] 2026-06-19 18:14:01
[2026-06-19 18:14:01,613.613 INFO    ] 2026-06-19 18:14:01
[2026-06-19 18:14:01,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:14:01,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:14:01,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:14:02,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:14:02,077.077 INFO    ] time= 19/06/2026 18:14:02
[2026-06-19 18:14:02,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:14:02,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:14:02,198.198 INFO    ] No existing commands found in stream
[2026-06-19 18:14:07,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:14:07,211.211 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 18:14:11,516.516 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:14:11,518.518 INFO    ] Checking for system updates...
[2026-06-19 18:14:11,554.554 INFO    ] 200
[2026-06-19 18:14:11,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:11,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:14:11,612.612 INFO    ] No update needed
[2026-06-19 18:14:11,615.615 INFO    ] Checking for camera pi updates...
[2026-06-19 18:14:11,650.650 INFO    ] 200
[2026-06-19 18:14:11,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:11,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:14:11,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:14:11,746.746 INFO    ] No camera update needed
[2026-06-19 18:14:11,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:14:11,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:14:11,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:14:11,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:14:13,802.802 INFO    ] ================================================
[2026-06-19 18:14:13,818.818 INFO    ] Launching Daemon at Fri Jun 19 18:14:13 IST 2026
[2026-06-19 18:14:13,830.830 INFO    ] ================================================
[2026-06-19 18:14:14,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:14:14
[2026-06-19 18:14:14,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:14:15,245.245 INFO    ] Initializing speech engine...
[2026-06-19 18:14:15,252.252 INFO    ] 2026-06-19 18:14:15
[2026-06-19 18:14:15,543.543 INFO    ] 2026-06-19 18:14:15
[2026-06-19 18:14:15,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:14:15,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:14:15,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:14:15,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:14:15,962.962 INFO    ] time= 19/06/2026 18:14:15
[2026-06-19 18:14:15,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:14:15,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:14:16,108.108 INFO    ] No existing commands found in stream
[2026-06-19 18:14:21,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:14:21,130.130 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 18:14:24,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:14:24,187.187 INFO    ] Checking for system updates...
[2026-06-19 18:14:24,223.223 INFO    ] 200
[2026-06-19 18:14:24,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:24,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:14:24,281.281 INFO    ] No update needed
[2026-06-19 18:14:24,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 18:14:24,318.318 INFO    ] 200
[2026-06-19 18:14:24,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:24,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:14:24,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:14:24,418.418 INFO    ] No camera update needed
[2026-06-19 18:14:24,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:14:24,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:14:24,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:14:24,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:14:26,473.473 INFO    ] ================================================
[2026-06-19 18:14:26,495.495 INFO    ] Launching Daemon at Fri Jun 19 18:14:26 IST 2026
[2026-06-19 18:14:26,506.506 INFO    ] ================================================
[2026-06-19 18:14:27,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:14:27
[2026-06-19 18:14:27,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:14:27,961.961 INFO    ] Initializing speech engine...
[2026-06-19 18:14:27,972.972 INFO    ] 2026-06-19 18:14:27
[2026-06-19 18:14:28,235.235 INFO    ] 2026-06-19 18:14:28
[2026-06-19 18:14:28,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:14:28,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:14:28,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:14:28,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:14:28,780.780 INFO    ] time= 19/06/2026 18:14:28
[2026-06-19 18:14:28,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:14:28,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:14:28,918.918 INFO    ] No existing commands found in stream
[2026-06-19 18:14:33,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:14:33,943.943 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 18:14:34,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:14:34,447.447 INFO    ] Checking for system updates...
[2026-06-19 18:14:34,484.484 INFO    ] 200
[2026-06-19 18:14:34,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:34,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:14:34,543.543 INFO    ] No update needed
[2026-06-19 18:14:34,545.545 INFO    ] Checking for camera pi updates...
[2026-06-19 18:14:34,580.580 INFO    ] 200
[2026-06-19 18:14:34,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:34,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:14:34,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:14:34,673.673 INFO    ] No camera update needed
[2026-06-19 18:14:34,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:14:34,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:14:34,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:14:34,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:14:36,730.730 INFO    ] ================================================
[2026-06-19 18:14:36,745.745 INFO    ] Launching Daemon at Fri Jun 19 18:14:36 IST 2026
[2026-06-19 18:14:36,756.756 INFO    ] ================================================
[2026-06-19 18:14:37,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:14:37
[2026-06-19 18:14:37,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:14:38,175.175 INFO    ] Initializing speech engine...
[2026-06-19 18:14:38,184.184 INFO    ] 2026-06-19 18:14:38
[2026-06-19 18:14:38,476.476 INFO    ] 2026-06-19 18:14:38
[2026-06-19 18:14:38,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:14:38,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:14:38,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:14:38,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:14:38,929.929 INFO    ] time= 19/06/2026 18:14:38
[2026-06-19 18:14:38,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:14:39,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:14:39,117.117 INFO    ] No existing commands found in stream
[2026-06-19 18:14:44,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:14:44,132.132 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 18:14:45,664.664 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:14:45,667.667 INFO    ] Checking for system updates...
[2026-06-19 18:14:45,703.703 INFO    ] 200
[2026-06-19 18:14:45,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:45,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:14:45,762.762 INFO    ] No update needed
[2026-06-19 18:14:45,764.764 INFO    ] Checking for camera pi updates...
[2026-06-19 18:14:45,800.800 INFO    ] 200
[2026-06-19 18:14:45,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:45,858.858 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:14:45,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:14:45,914.914 INFO    ] No camera update needed
[2026-06-19 18:14:45,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:14:45,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:14:45,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:14:45,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:14:47,969.969 INFO    ] ================================================
[2026-06-19 18:14:47,984.984 INFO    ] Launching Daemon at Fri Jun 19 18:14:47 IST 2026
[2026-06-19 18:14:48,995.995 INFO    ] ================================================
[2026-06-19 18:14:48,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:14:48
[2026-06-19 18:14:49,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:14:49,407.407 INFO    ] Initializing speech engine...
[2026-06-19 18:14:49,415.415 INFO    ] 2026-06-19 18:14:49
[2026-06-19 18:14:49,708.708 INFO    ] 2026-06-19 18:14:49
[2026-06-19 18:14:49,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:14:49,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:14:49,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:14:50,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:14:50,125.125 INFO    ] time= 19/06/2026 18:14:50
[2026-06-19 18:14:50,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:14:50,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:14:50,213.213 INFO    ] No existing commands found in stream
[2026-06-19 18:14:55,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:14:55,246.246 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 18:14:55,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:14:55,692.692 INFO    ] Checking for system updates...
[2026-06-19 18:14:55,728.728 INFO    ] 200
[2026-06-19 18:14:55,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:55,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:14:55,788.788 INFO    ] No update needed
[2026-06-19 18:14:55,790.790 INFO    ] Checking for camera pi updates...
[2026-06-19 18:14:55,824.824 INFO    ] 200
[2026-06-19 18:14:55,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:14:55,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:14:55,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:14:55,932.932 INFO    ] No camera update needed
[2026-06-19 18:14:55,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:14:55,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:14:55,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:14:55,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:14:57,988.988 INFO    ] ================================================
[2026-06-19 18:14:58,003.003 INFO    ] Launching Daemon at Fri Jun 19 18:14:57 IST 2026
[2026-06-19 18:14:58,013.013 INFO    ] ================================================
[2026-06-19 18:14:58,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:14:58
[2026-06-19 18:14:59,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:14:59,620.620 INFO    ] Initializing speech engine...
[2026-06-19 18:14:59,628.628 INFO    ] 2026-06-19 18:14:59
[2026-06-19 18:14:59,916.916 INFO    ] 2026-06-19 18:14:59
[2026-06-19 18:14:59,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:15:00,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:15:00,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:15:00,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:15:00,469.469 INFO    ] time= 19/06/2026 18:15:00
[2026-06-19 18:15:00,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:15:00,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:15:00,629.629 INFO    ] No existing commands found in stream
[2026-06-19 18:15:05,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:15:05,658.658 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 18:15:08,913.913 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:15:08,916.916 INFO    ] Checking for system updates...
[2026-06-19 18:15:08,953.953 INFO    ] 200
[2026-06-19 18:15:08,956.956 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:09,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:15:09,014.014 INFO    ] No update needed
[2026-06-19 18:15:09,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 18:15:09,052.052 INFO    ] 200
[2026-06-19 18:15:09,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:09,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:15:09,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:15:09,146.146 INFO    ] No camera update needed
[2026-06-19 18:15:09,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:15:09,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:15:09,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:15:09,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:15:11,203.203 INFO    ] ================================================
[2026-06-19 18:15:11,219.219 INFO    ] Launching Daemon at Fri Jun 19 18:15:11 IST 2026
[2026-06-19 18:15:11,230.230 INFO    ] ================================================
[2026-06-19 18:15:11,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:15:11
[2026-06-19 18:15:12,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:15:12,861.861 INFO    ] Initializing speech engine...
[2026-06-19 18:15:12,869.869 INFO    ] 2026-06-19 18:15:12
[2026-06-19 18:15:13,161.161 INFO    ] 2026-06-19 18:15:13
[2026-06-19 18:15:13,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:15:13,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:15:13,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:15:13,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:15:13,638.638 INFO    ] time= 19/06/2026 18:15:13
[2026-06-19 18:15:13,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:15:13,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:15:13,880.880 INFO    ] No existing commands found in stream
[2026-06-19 18:15:18,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:15:18,904.904 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 18:15:22,645.645 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:15:22,648.648 INFO    ] Checking for system updates...
[2026-06-19 18:15:22,685.685 INFO    ] 200
[2026-06-19 18:15:22,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:22,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:15:22,745.745 INFO    ] No update needed
[2026-06-19 18:15:22,748.748 INFO    ] Checking for camera pi updates...
[2026-06-19 18:15:22,783.783 INFO    ] 200
[2026-06-19 18:15:22,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:22,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:15:22,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:15:22,884.884 INFO    ] No camera update needed
[2026-06-19 18:15:22,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:15:22,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:15:22,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:15:22,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:15:24,939.939 INFO    ] ================================================
[2026-06-19 18:15:24,955.955 INFO    ] Launching Daemon at Fri Jun 19 18:15:24 IST 2026
[2026-06-19 18:15:24,965.965 INFO    ] ================================================
[2026-06-19 18:15:25,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:15:25
[2026-06-19 18:15:26,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:15:26,442.442 INFO    ] Initializing speech engine...
[2026-06-19 18:15:26,452.452 INFO    ] 2026-06-19 18:15:26
[2026-06-19 18:15:26,707.707 INFO    ] 2026-06-19 18:15:26
[2026-06-19 18:15:26,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:15:26,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:15:26,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:15:27,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:15:27,218.218 INFO    ] time= 19/06/2026 18:15:27
[2026-06-19 18:15:27,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:15:27,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:15:27,392.392 INFO    ] No existing commands found in stream
[2026-06-19 18:15:32,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:15:32,421.421 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 18:15:32,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:15:32,856.856 INFO    ] Checking for system updates...
[2026-06-19 18:15:32,896.896 INFO    ] 200
[2026-06-19 18:15:32,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:32,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:15:32,957.957 INFO    ] No update needed
[2026-06-19 18:15:32,959.959 INFO    ] Checking for camera pi updates...
[2026-06-19 18:15:32,996.996 INFO    ] 200
[2026-06-19 18:15:32,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:33,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:15:33,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:15:33,085.085 INFO    ] No camera update needed
[2026-06-19 18:15:33,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:15:33,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:15:33,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:15:33,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:15:35,146.146 INFO    ] ================================================
[2026-06-19 18:15:35,161.161 INFO    ] Launching Daemon at Fri Jun 19 18:15:35 IST 2026
[2026-06-19 18:15:35,172.172 INFO    ] ================================================
[2026-06-19 18:15:35,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:15:35
[2026-06-19 18:15:36,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:15:36,647.647 INFO    ] Initializing speech engine...
[2026-06-19 18:15:36,655.655 INFO    ] 2026-06-19 18:15:36
[2026-06-19 18:15:36,906.906 INFO    ] 2026-06-19 18:15:36
[2026-06-19 18:15:36,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:15:37,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:15:37,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:15:37,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:15:37,382.382 INFO    ] time= 19/06/2026 18:15:37
[2026-06-19 18:15:37,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:15:37,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:15:37,598.598 INFO    ] No existing commands found in stream
[2026-06-19 18:15:42,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:15:42,628.628 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 18:15:43,703.703 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:15:43,705.705 INFO    ] Checking for system updates...
[2026-06-19 18:15:43,742.742 INFO    ] 200
[2026-06-19 18:15:43,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:43,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:15:43,801.801 INFO    ] No update needed
[2026-06-19 18:15:43,803.803 INFO    ] Checking for camera pi updates...
[2026-06-19 18:15:43,837.837 INFO    ] 200
[2026-06-19 18:15:43,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:43,882.882 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:15:44,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:15:44,037.037 INFO    ] No camera update needed
[2026-06-19 18:15:44,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:15:44,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:15:44,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:15:44,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:15:46,101.101 INFO    ] ================================================
[2026-06-19 18:15:46,117.117 INFO    ] Launching Daemon at Fri Jun 19 18:15:46 IST 2026
[2026-06-19 18:15:46,128.128 INFO    ] ================================================
[2026-06-19 18:15:46,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:15:46
[2026-06-19 18:15:47,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:15:47,747.747 INFO    ] Initializing speech engine...
[2026-06-19 18:15:47,757.757 INFO    ] 2026-06-19 18:15:47
[2026-06-19 18:15:48,035.035 INFO    ] 2026-06-19 18:15:48
[2026-06-19 18:15:48,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:15:48,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:15:48,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:15:48,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:15:48,531.531 INFO    ] time= 19/06/2026 18:15:48
[2026-06-19 18:15:48,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:15:48,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:15:48,760.760 INFO    ] No existing commands found in stream
[2026-06-19 18:15:53,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:15:53,792.792 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 18:15:55,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:15:55,489.489 INFO    ] Checking for system updates...
[2026-06-19 18:15:55,527.527 INFO    ] 200
[2026-06-19 18:15:55,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:55,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:15:55,595.595 INFO    ] No update needed
[2026-06-19 18:15:55,598.598 INFO    ] Checking for camera pi updates...
[2026-06-19 18:15:55,631.631 INFO    ] 200
[2026-06-19 18:15:55,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:15:55,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:15:55,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:15:55,727.727 INFO    ] No camera update needed
[2026-06-19 18:15:55,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:15:55,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:15:55,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:15:55,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:15:57,782.782 INFO    ] ================================================
[2026-06-19 18:15:57,797.797 INFO    ] Launching Daemon at Fri Jun 19 18:15:57 IST 2026
[2026-06-19 18:15:57,808.808 INFO    ] ================================================
[2026-06-19 18:15:58,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:15:58
[2026-06-19 18:15:58,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:15:59,248.248 INFO    ] Initializing speech engine...
[2026-06-19 18:15:59,254.254 INFO    ] 2026-06-19 18:15:59
[2026-06-19 18:15:59,502.502 INFO    ] 2026-06-19 18:15:59
[2026-06-19 18:15:59,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:15:59,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:15:59,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:15:59,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:15:59,876.876 INFO    ] time= 19/06/2026 18:15:59
[2026-06-19 18:15:59,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:15:59,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:16:00,063.063 INFO    ] No existing commands found in stream
[2026-06-19 18:16:05,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:16:05,086.086 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 18:16:08,772.772 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:16:08,775.775 INFO    ] Checking for system updates...
[2026-06-19 18:16:08,811.811 INFO    ] 200
[2026-06-19 18:16:08,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:16:08,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:16:08,872.872 INFO    ] No update needed
[2026-06-19 18:16:08,874.874 INFO    ] Checking for camera pi updates...
[2026-06-19 18:16:08,908.908 INFO    ] 200
[2026-06-19 18:16:08,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:16:08,955.955 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:16:09,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:16:09,010.010 INFO    ] No camera update needed
[2026-06-19 18:16:09,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:16:09,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:16:09,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:16:09,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:16:11,067.067 INFO    ] ================================================
[2026-06-19 18:16:11,082.082 INFO    ] Launching Daemon at Fri Jun 19 18:16:11 IST 2026
[2026-06-19 18:16:11,093.093 INFO    ] ================================================
[2026-06-19 18:16:11,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:16:11
[2026-06-19 18:16:12,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:16:12,512.512 INFO    ] Initializing speech engine...
[2026-06-19 18:16:12,526.526 INFO    ] 2026-06-19 18:16:12
[2026-06-19 18:16:12,789.789 INFO    ] 2026-06-19 18:16:12
[2026-06-19 18:16:12,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:16:13,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:16:13,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:16:13,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:16:13,257.257 INFO    ] time= 19/06/2026 18:16:13
[2026-06-19 18:16:13,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:16:13,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:16:13,485.485 INFO    ] No existing commands found in stream
[2026-06-19 18:16:18,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:16:18,509.509 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 18:16:22,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:16:22,698.698 INFO    ] Checking for system updates...
[2026-06-19 18:16:22,734.734 INFO    ] 200
[2026-06-19 18:16:22,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:16:22,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:16:22,791.791 INFO    ] No update needed
[2026-06-19 18:16:22,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 18:16:22,827.827 INFO    ] 200
[2026-06-19 18:16:22,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:16:22,873.873 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:16:22,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:16:22,966.966 INFO    ] No camera update needed
[2026-06-19 18:16:22,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:16:22,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:16:22,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:16:22,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:16:25,022.022 INFO    ] ================================================
[2026-06-19 18:16:25,038.038 INFO    ] Launching Daemon at Fri Jun 19 18:16:25 IST 2026
[2026-06-19 18:16:25,048.048 INFO    ] ================================================
[2026-06-19 18:16:25,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:16:25
[2026-06-19 18:16:26,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:16:26,517.517 INFO    ] Initializing speech engine...
[2026-06-19 18:16:26,523.523 INFO    ] 2026-06-19 18:16:26
[2026-06-19 18:16:26,786.786 INFO    ] 2026-06-19 18:16:26
[2026-06-19 18:16:26,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:16:27,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:16:27,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:16:27,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:16:27,331.331 INFO    ] time= 19/06/2026 18:16:27
[2026-06-19 18:16:27,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:16:27,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:16:27,482.482 INFO    ] No existing commands found in stream
[2026-06-19 18:16:32,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:16:32,500.500 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 18:16:35,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:16:35,594.594 INFO    ] Checking for system updates...
[2026-06-19 18:16:35,635.635 INFO    ] 200
[2026-06-19 18:16:35,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:16:35,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:16:35,693.693 INFO    ] No update needed
[2026-06-19 18:16:35,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 18:16:35,729.729 INFO    ] 200
[2026-06-19 18:16:35,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:16:35,772.772 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:16:35,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:16:35,820.820 INFO    ] No camera update needed
[2026-06-19 18:16:35,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:16:35,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:16:35,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:16:35,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:16:37,876.876 INFO    ] ================================================
[2026-06-19 18:16:37,891.891 INFO    ] Launching Daemon at Fri Jun 19 18:16:37 IST 2026
[2026-06-19 18:16:37,902.902 INFO    ] ================================================
[2026-06-19 18:16:38,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:16:38
[2026-06-19 18:16:39,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:16:39,508.508 INFO    ] Initializing speech engine...
[2026-06-19 18:16:39,513.513 INFO    ] 2026-06-19 18:16:39
[2026-06-19 18:16:39,791.791 INFO    ] 2026-06-19 18:16:39
[2026-06-19 18:16:39,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:16:40,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:16:40,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:16:40,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:16:40,353.353 INFO    ] time= 19/06/2026 18:16:40
[2026-06-19 18:16:40,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:16:40,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:16:40,512.512 INFO    ] No existing commands found in stream
[2026-06-19 18:16:45,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:16:45,530.530 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 18:16:49,658.658 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:16:49,661.661 INFO    ] Checking for system updates...
[2026-06-19 18:16:49,698.698 INFO    ] 200
[2026-06-19 18:16:49,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:16:49,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:16:49,763.763 INFO    ] No update needed
[2026-06-19 18:16:49,766.766 INFO    ] Checking for camera pi updates...
[2026-06-19 18:16:49,803.803 INFO    ] 200
[2026-06-19 18:16:49,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:16:49,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:16:49,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:16:49,887.887 INFO    ] No camera update needed
[2026-06-19 18:16:49,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:16:49,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:16:49,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:16:49,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:16:51,946.946 INFO    ] ================================================
[2026-06-19 18:16:51,961.961 INFO    ] Launching Daemon at Fri Jun 19 18:16:51 IST 2026
[2026-06-19 18:16:51,972.972 INFO    ] ================================================
[2026-06-19 18:16:52,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:16:52
[2026-06-19 18:16:53,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:16:53,413.413 INFO    ] Initializing speech engine...
[2026-06-19 18:16:53,439.439 INFO    ] 2026-06-19 18:16:53
[2026-06-19 18:16:53,706.706 INFO    ] 2026-06-19 18:16:53
[2026-06-19 18:16:53,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:16:53,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:16:53,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:16:54,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:16:54,189.189 INFO    ] time= 19/06/2026 18:16:54
[2026-06-19 18:16:54,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:16:54,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:16:54,386.386 INFO    ] No existing commands found in stream
[2026-06-19 18:16:59,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:16:59,400.400 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 18:17:03,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:17:03,192.192 INFO    ] Checking for system updates...
[2026-06-19 18:17:03,231.231 INFO    ] 200
[2026-06-19 18:17:03,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:03,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:17:03,294.294 INFO    ] No update needed
[2026-06-19 18:17:03,296.296 INFO    ] Checking for camera pi updates...
[2026-06-19 18:17:03,332.332 INFO    ] 200
[2026-06-19 18:17:03,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:03,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:17:03,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:17:03,434.434 INFO    ] No camera update needed
[2026-06-19 18:17:03,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:17:03,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:17:03,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:17:03,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:17:05,490.490 INFO    ] ================================================
[2026-06-19 18:17:05,505.505 INFO    ] Launching Daemon at Fri Jun 19 18:17:05 IST 2026
[2026-06-19 18:17:05,516.516 INFO    ] ================================================
[2026-06-19 18:17:06,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:17:06
[2026-06-19 18:17:06,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:17:06,933.933 INFO    ] Initializing speech engine...
[2026-06-19 18:17:06,946.946 INFO    ] 2026-06-19 18:17:06
[2026-06-19 18:17:07,212.212 INFO    ] 2026-06-19 18:17:07
[2026-06-19 18:17:07,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:17:07,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:17:07,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:17:07,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:17:07,721.721 INFO    ] time= 19/06/2026 18:17:07
[2026-06-19 18:17:07,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:17:07,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:17:07,916.916 INFO    ] No existing commands found in stream
[2026-06-19 18:17:12,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:17:12,946.946 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 18:17:16,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:17:16,583.583 INFO    ] Checking for system updates...
[2026-06-19 18:17:16,620.620 INFO    ] 200
[2026-06-19 18:17:16,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:16,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:17:16,685.685 INFO    ] No update needed
[2026-06-19 18:17:16,688.688 INFO    ] Checking for camera pi updates...
[2026-06-19 18:17:16,722.722 INFO    ] 200
[2026-06-19 18:17:16,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:16,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:17:16,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:17:16,810.810 INFO    ] No camera update needed
[2026-06-19 18:17:16,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:17:16,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:17:16,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:17:16,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:17:18,865.865 INFO    ] ================================================
[2026-06-19 18:17:18,880.880 INFO    ] Launching Daemon at Fri Jun 19 18:17:18 IST 2026
[2026-06-19 18:17:18,891.891 INFO    ] ================================================
[2026-06-19 18:17:19,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:17:19
[2026-06-19 18:17:20,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:17:20,363.363 INFO    ] Initializing speech engine...
[2026-06-19 18:17:20,373.373 INFO    ] 2026-06-19 18:17:20
[2026-06-19 18:17:20,642.642 INFO    ] 2026-06-19 18:17:20
[2026-06-19 18:17:20,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:17:20,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:17:20,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:17:21,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:17:21,023.023 INFO    ] time= 19/06/2026 18:17:21
[2026-06-19 18:17:21,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:17:21,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:17:21,218.218 INFO    ] No existing commands found in stream
[2026-06-19 18:17:26,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:17:26,232.232 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 18:17:29,495.495 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:17:29,498.498 INFO    ] Checking for system updates...
[2026-06-19 18:17:29,536.536 INFO    ] 200
[2026-06-19 18:17:29,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:29,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:17:29,598.598 INFO    ] No update needed
[2026-06-19 18:17:29,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 18:17:29,637.637 INFO    ] 200
[2026-06-19 18:17:29,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:29,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:17:29,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:17:29,732.732 INFO    ] No camera update needed
[2026-06-19 18:17:29,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:17:29,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:17:29,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:17:29,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:17:31,789.789 INFO    ] ================================================
[2026-06-19 18:17:31,806.806 INFO    ] Launching Daemon at Fri Jun 19 18:17:31 IST 2026
[2026-06-19 18:17:31,817.817 INFO    ] ================================================
[2026-06-19 18:17:32,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:17:32
[2026-06-19 18:17:33,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:17:33,431.431 INFO    ] Initializing speech engine...
[2026-06-19 18:17:33,441.441 INFO    ] 2026-06-19 18:17:33
[2026-06-19 18:17:33,708.708 INFO    ] 2026-06-19 18:17:33
[2026-06-19 18:17:33,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:17:33,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:17:34,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:17:34,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:17:34,202.202 INFO    ] time= 19/06/2026 18:17:34
[2026-06-19 18:17:34,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:17:34,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:17:34,430.430 INFO    ] No existing commands found in stream
[2026-06-19 18:17:39,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:17:39,451.451 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 18:17:41,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:17:41,509.509 INFO    ] Checking for system updates...
[2026-06-19 18:17:41,545.545 INFO    ] 200
[2026-06-19 18:17:41,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:41,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:17:41,607.607 INFO    ] No update needed
[2026-06-19 18:17:41,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 18:17:41,644.644 INFO    ] 200
[2026-06-19 18:17:41,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:41,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:17:41,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:17:41,757.757 INFO    ] No camera update needed
[2026-06-19 18:17:41,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:17:41,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:17:41,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:17:41,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:17:43,812.812 INFO    ] ================================================
[2026-06-19 18:17:43,827.827 INFO    ] Launching Daemon at Fri Jun 19 18:17:43 IST 2026
[2026-06-19 18:17:43,837.837 INFO    ] ================================================
[2026-06-19 18:17:44,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:17:44
[2026-06-19 18:17:44,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:17:45,257.257 INFO    ] Initializing speech engine...
[2026-06-19 18:17:45,266.266 INFO    ] 2026-06-19 18:17:45
[2026-06-19 18:17:45,516.516 INFO    ] 2026-06-19 18:17:45
[2026-06-19 18:17:45,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:17:45,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:17:45,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:17:45,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:17:45,996.996 INFO    ] time= 19/06/2026 18:17:45
[2026-06-19 18:17:46,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:17:46,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:17:46,213.213 INFO    ] No existing commands found in stream
[2026-06-19 18:17:51,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:17:51,241.241 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 18:17:53,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:17:53,084.084 INFO    ] Checking for system updates...
[2026-06-19 18:17:53,123.123 INFO    ] 200
[2026-06-19 18:17:53,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:53,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:17:53,186.186 INFO    ] No update needed
[2026-06-19 18:17:53,189.189 INFO    ] Checking for camera pi updates...
[2026-06-19 18:17:53,222.222 INFO    ] 200
[2026-06-19 18:17:53,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:17:53,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:17:53,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:17:53,426.426 INFO    ] No camera update needed
[2026-06-19 18:17:53,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:17:53,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:17:53,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:17:53,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:17:55,482.482 INFO    ] ================================================
[2026-06-19 18:17:55,497.497 INFO    ] Launching Daemon at Fri Jun 19 18:17:55 IST 2026
[2026-06-19 18:17:55,507.507 INFO    ] ================================================
[2026-06-19 18:17:56,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:17:56
[2026-06-19 18:17:56,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:17:56,943.943 INFO    ] Initializing speech engine...
[2026-06-19 18:17:56,950.950 INFO    ] 2026-06-19 18:17:56
[2026-06-19 18:17:57,199.199 INFO    ] 2026-06-19 18:17:57
[2026-06-19 18:17:57,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:17:57,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:17:57,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:17:57,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:17:57,681.681 INFO    ] time= 19/06/2026 18:17:57
[2026-06-19 18:17:57,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:17:57,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:17:57,836.836 INFO    ] No existing commands found in stream
[2026-06-19 18:18:02,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:18:02,850.850 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 18:18:04,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:18:04,829.829 INFO    ] Checking for system updates...
[2026-06-19 18:18:04,869.869 INFO    ] 200
[2026-06-19 18:18:04,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:18:04,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:18:04,933.933 INFO    ] No update needed
[2026-06-19 18:18:04,935.935 INFO    ] Checking for camera pi updates...
[2026-06-19 18:18:04,968.968 INFO    ] 200
[2026-06-19 18:18:04,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:18:05,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:18:05,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:18:05,063.063 INFO    ] No camera update needed
[2026-06-19 18:18:05,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:18:05,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:18:05,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:18:05,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:18:07,120.120 INFO    ] ================================================
[2026-06-19 18:18:07,135.135 INFO    ] Launching Daemon at Fri Jun 19 18:18:07 IST 2026
[2026-06-19 18:18:07,146.146 INFO    ] ================================================
[2026-06-19 18:18:07,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:18:07
[2026-06-19 18:18:08,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:18:08,790.790 INFO    ] Initializing speech engine...
[2026-06-19 18:18:08,803.803 INFO    ] 2026-06-19 18:18:08
[2026-06-19 18:18:09,083.083 INFO    ] 2026-06-19 18:18:09
[2026-06-19 18:18:09,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:18:09,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:18:09,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:18:09,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:18:09,625.625 INFO    ] time= 19/06/2026 18:18:09
[2026-06-19 18:18:09,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:18:09,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:18:09,830.830 INFO    ] No existing commands found in stream
[2026-06-19 18:18:14,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:18:14,864.864 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 18:18:19,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:18:19,204.204 INFO    ] Checking for system updates...
[2026-06-19 18:18:19,246.246 INFO    ] 200
[2026-06-19 18:18:19,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:18:19,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:18:19,307.307 INFO    ] No update needed
[2026-06-19 18:18:19,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 18:18:19,344.344 INFO    ] 200
[2026-06-19 18:18:19,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:18:19,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:18:19,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:18:19,451.451 INFO    ] No camera update needed
[2026-06-19 18:18:19,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:18:19,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:18:19,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:18:19,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:18:21,505.505 INFO    ] ================================================
[2026-06-19 18:18:21,520.520 INFO    ] Launching Daemon at Fri Jun 19 18:18:21 IST 2026
[2026-06-19 18:18:21,531.531 INFO    ] ================================================
[2026-06-19 18:18:22,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:18:22
[2026-06-19 18:18:22,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:18:22,997.997 INFO    ] Initializing speech engine...
[2026-06-19 18:18:23,004.004 INFO    ] 2026-06-19 18:18:22
[2026-06-19 18:18:23,266.266 INFO    ] 2026-06-19 18:18:23
[2026-06-19 18:18:23,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:18:23,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:18:23,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:18:23,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:18:23,732.732 INFO    ] time= 19/06/2026 18:18:23
[2026-06-19 18:18:23,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:18:23,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:18:23,970.970 INFO    ] No existing commands found in stream
[2026-06-19 18:18:28,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:18:28,988.988 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 18:18:33,286.286 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:18:33,289.289 INFO    ] Checking for system updates...
[2026-06-19 18:18:33,329.329 INFO    ] 200
[2026-06-19 18:18:33,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:18:33,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:18:33,386.386 INFO    ] No update needed
[2026-06-19 18:18:33,388.388 INFO    ] Checking for camera pi updates...
[2026-06-19 18:18:33,423.423 INFO    ] 200
[2026-06-19 18:18:33,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:18:33,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:18:33,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:18:33,522.522 INFO    ] No camera update needed
[2026-06-19 18:18:33,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:18:33,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:18:33,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:18:33,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:18:35,577.577 INFO    ] ================================================
[2026-06-19 18:18:35,592.592 INFO    ] Launching Daemon at Fri Jun 19 18:18:35 IST 2026
[2026-06-19 18:18:35,603.603 INFO    ] ================================================
[2026-06-19 18:18:36,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:18:36
[2026-06-19 18:18:36,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:18:37,038.038 INFO    ] Initializing speech engine...
[2026-06-19 18:18:37,047.047 INFO    ] 2026-06-19 18:18:37
[2026-06-19 18:18:37,298.298 INFO    ] 2026-06-19 18:18:37
[2026-06-19 18:18:37,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:18:37,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:18:37,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:18:37,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:18:37,782.782 INFO    ] time= 19/06/2026 18:18:37
[2026-06-19 18:18:37,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:18:37,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:18:37,999.999 INFO    ] No existing commands found in stream
[2026-06-19 18:18:43,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:18:43,022.022 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 18:18:48,708.708 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:18:48,711.711 INFO    ] Checking for system updates...
[2026-06-19 18:18:48,751.751 INFO    ] 200
[2026-06-19 18:18:48,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:18:48,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:18:48,808.808 INFO    ] No update needed
[2026-06-19 18:18:48,811.811 INFO    ] Checking for camera pi updates...
[2026-06-19 18:18:48,848.848 INFO    ] 200
[2026-06-19 18:18:48,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:18:48,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:18:48,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:18:48,936.936 INFO    ] No camera update needed
[2026-06-19 18:18:48,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:18:48,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:18:48,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:18:48,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:18:50,991.991 INFO    ] ================================================
[2026-06-19 18:18:51,006.006 INFO    ] Launching Daemon at Fri Jun 19 18:18:51 IST 2026
[2026-06-19 18:18:51,016.016 INFO    ] ================================================
[2026-06-19 18:18:51,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:18:51
[2026-06-19 18:18:52,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:18:52,458.458 INFO    ] Initializing speech engine...
[2026-06-19 18:18:52,467.467 INFO    ] 2026-06-19 18:18:52
[2026-06-19 18:18:52,762.762 INFO    ] 2026-06-19 18:18:52
[2026-06-19 18:18:52,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:18:53,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:18:53,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:18:53,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:18:53,212.212 INFO    ] time= 19/06/2026 18:18:53
[2026-06-19 18:18:53,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:18:53,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:18:53,386.386 INFO    ] No existing commands found in stream
[2026-06-19 18:18:58,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:18:58,409.409 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 18:19:01,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:19:01,164.164 INFO    ] Checking for system updates...
[2026-06-19 18:19:01,201.201 INFO    ] 200
[2026-06-19 18:19:01,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:01,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:19:01,264.264 INFO    ] No update needed
[2026-06-19 18:19:01,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 18:19:01,300.300 INFO    ] 200
[2026-06-19 18:19:01,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:01,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:19:01,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:19:01,384.384 INFO    ] No camera update needed
[2026-06-19 18:19:01,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:19:01,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:19:01,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:19:01,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:19:03,442.442 INFO    ] ================================================
[2026-06-19 18:19:03,460.460 INFO    ] Launching Daemon at Fri Jun 19 18:19:03 IST 2026
[2026-06-19 18:19:03,473.473 INFO    ] ================================================
[2026-06-19 18:19:04,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:19:04
[2026-06-19 18:19:04,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:19:04,960.960 INFO    ] Initializing speech engine...
[2026-06-19 18:19:04,969.969 INFO    ] 2026-06-19 18:19:04
[2026-06-19 18:19:05,231.231 INFO    ] 2026-06-19 18:19:05
[2026-06-19 18:19:05,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:19:05,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:19:05,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:19:05,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:19:05,689.689 INFO    ] time= 19/06/2026 18:19:05
[2026-06-19 18:19:05,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:19:05,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:19:05,957.957 INFO    ] No existing commands found in stream
[2026-06-19 18:19:10,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:19:10,977.977 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 18:19:14,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:19:14,894.894 INFO    ] Checking for system updates...
[2026-06-19 18:19:14,933.933 INFO    ] 200
[2026-06-19 18:19:14,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:14,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:19:14,997.997 INFO    ] No update needed
[2026-06-19 18:19:14,999.999 INFO    ] Checking for camera pi updates...
[2026-06-19 18:19:15,036.036 INFO    ] 200
[2026-06-19 18:19:15,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:15,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:19:15,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:19:15,125.125 INFO    ] No camera update needed
[2026-06-19 18:19:15,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:19:15,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:19:15,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:19:15,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:19:17,181.181 INFO    ] ================================================
[2026-06-19 18:19:17,197.197 INFO    ] Launching Daemon at Fri Jun 19 18:19:17 IST 2026
[2026-06-19 18:19:17,207.207 INFO    ] ================================================
[2026-06-19 18:19:17,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:19:17
[2026-06-19 18:19:18,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:19:18,784.784 INFO    ] Initializing speech engine...
[2026-06-19 18:19:18,794.794 INFO    ] 2026-06-19 18:19:18
[2026-06-19 18:19:19,080.080 INFO    ] 2026-06-19 18:19:19
[2026-06-19 18:19:19,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:19:19,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:19:19,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:19:19,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:19:19,558.558 INFO    ] time= 19/06/2026 18:19:19
[2026-06-19 18:19:19,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:19:19,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:19:19,780.780 INFO    ] No existing commands found in stream
[2026-06-19 18:19:24,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:19:24,808.808 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 18:19:28,187.187 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:19:28,190.190 INFO    ] Checking for system updates...
[2026-06-19 18:19:28,227.227 INFO    ] 200
[2026-06-19 18:19:28,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:28,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:19:28,292.292 INFO    ] No update needed
[2026-06-19 18:19:28,295.295 INFO    ] Checking for camera pi updates...
[2026-06-19 18:19:28,333.333 INFO    ] 200
[2026-06-19 18:19:28,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:28,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:19:28,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:19:28,426.426 INFO    ] No camera update needed
[2026-06-19 18:19:28,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:19:28,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:19:28,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:19:28,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:19:30,484.484 INFO    ] ================================================
[2026-06-19 18:19:30,499.499 INFO    ] Launching Daemon at Fri Jun 19 18:19:30 IST 2026
[2026-06-19 18:19:30,511.511 INFO    ] ================================================
[2026-06-19 18:19:31,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:19:31
[2026-06-19 18:19:31,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:19:31,958.958 INFO    ] Initializing speech engine...
[2026-06-19 18:19:31,974.974 INFO    ] 2026-06-19 18:19:31
[2026-06-19 18:19:32,303.303 INFO    ] 2026-06-19 18:19:32
[2026-06-19 18:19:32,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:19:32,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:19:32,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:19:32,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:19:32,750.750 INFO    ] time= 19/06/2026 18:19:32
[2026-06-19 18:19:32,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:19:32,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:19:32,936.936 INFO    ] No existing commands found in stream
[2026-06-19 18:19:37,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:19:37,959.959 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 18:19:41,056.056 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:19:41,058.058 INFO    ] Checking for system updates...
[2026-06-19 18:19:41,094.094 INFO    ] 200
[2026-06-19 18:19:41,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:41,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:19:41,152.152 INFO    ] No update needed
[2026-06-19 18:19:41,154.154 INFO    ] Checking for camera pi updates...
[2026-06-19 18:19:41,192.192 INFO    ] 200
[2026-06-19 18:19:41,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:41,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:19:41,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:19:41,289.289 INFO    ] No camera update needed
[2026-06-19 18:19:41,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:19:41,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:19:41,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:19:41,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:19:43,344.344 INFO    ] ================================================
[2026-06-19 18:19:43,360.360 INFO    ] Launching Daemon at Fri Jun 19 18:19:43 IST 2026
[2026-06-19 18:19:43,370.370 INFO    ] ================================================
[2026-06-19 18:19:43,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:19:43
[2026-06-19 18:19:44,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:19:44,778.778 INFO    ] Initializing speech engine...
[2026-06-19 18:19:44,787.787 INFO    ] 2026-06-19 18:19:44
[2026-06-19 18:19:45,074.074 INFO    ] 2026-06-19 18:19:45
[2026-06-19 18:19:45,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:19:45,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:19:45,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:19:45,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:19:45,447.447 INFO    ] time= 19/06/2026 18:19:45
[2026-06-19 18:19:45,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:19:45,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:19:45,568.568 INFO    ] No existing commands found in stream
[2026-06-19 18:19:50,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:19:50,583.583 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 18:19:54,794.794 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:19:54,797.797 INFO    ] Checking for system updates...
[2026-06-19 18:19:54,832.832 INFO    ] 200
[2026-06-19 18:19:54,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:54,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:19:54,897.897 INFO    ] No update needed
[2026-06-19 18:19:54,899.899 INFO    ] Checking for camera pi updates...
[2026-06-19 18:19:54,933.933 INFO    ] 200
[2026-06-19 18:19:54,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:19:54,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:19:55,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:19:55,028.028 INFO    ] No camera update needed
[2026-06-19 18:19:55,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:19:55,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:19:55,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:19:55,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:19:57,083.083 INFO    ] ================================================
[2026-06-19 18:19:57,098.098 INFO    ] Launching Daemon at Fri Jun 19 18:19:57 IST 2026
[2026-06-19 18:19:57,109.109 INFO    ] ================================================
[2026-06-19 18:19:57,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:19:57
[2026-06-19 18:19:58,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:19:58,564.564 INFO    ] Initializing speech engine...
[2026-06-19 18:19:58,575.575 INFO    ] 2026-06-19 18:19:58
[2026-06-19 18:19:58,821.821 INFO    ] 2026-06-19 18:19:58
[2026-06-19 18:19:58,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:19:59,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:19:59,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:19:59,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:19:59,292.292 INFO    ] time= 19/06/2026 18:19:59
[2026-06-19 18:19:59,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:19:59,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:19:59,528.528 INFO    ] No existing commands found in stream
[2026-06-19 18:20:04,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:20:04,548.548 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 18:20:08,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:20:08,095.095 INFO    ] Checking for system updates...
[2026-06-19 18:20:08,138.138 INFO    ] 200
[2026-06-19 18:20:08,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:08,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:08,197.197 INFO    ] No update needed
[2026-06-19 18:20:08,200.200 INFO    ] Checking for camera pi updates...
[2026-06-19 18:20:08,234.234 INFO    ] 200
[2026-06-19 18:20:08,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:08,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:20:08,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:08,330.330 INFO    ] No camera update needed
[2026-06-19 18:20:08,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:20:08,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:20:08,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:20:08,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:20:10,389.389 INFO    ] ================================================
[2026-06-19 18:20:10,405.405 INFO    ] Launching Daemon at Fri Jun 19 18:20:10 IST 2026
[2026-06-19 18:20:10,416.416 INFO    ] ================================================
[2026-06-19 18:20:11,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:20:11
[2026-06-19 18:20:11,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:20:12,060.060 INFO    ] Initializing speech engine...
[2026-06-19 18:20:12,072.072 INFO    ] 2026-06-19 18:20:12
[2026-06-19 18:20:12,360.360 INFO    ] 2026-06-19 18:20:12
[2026-06-19 18:20:12,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:20:12,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:20:12,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:20:12,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:20:12,845.845 INFO    ] time= 19/06/2026 18:20:12
[2026-06-19 18:20:12,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:20:12,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:20:13,050.050 INFO    ] No existing commands found in stream
[2026-06-19 18:20:18,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:20:18,083.083 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 18:20:20,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:20:20,828.828 INFO    ] Checking for system updates...
[2026-06-19 18:20:20,869.869 INFO    ] 200
[2026-06-19 18:20:20,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:20,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:20,927.927 INFO    ] No update needed
[2026-06-19 18:20:20,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 18:20:20,964.964 INFO    ] 200
[2026-06-19 18:20:20,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:21,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:20:21,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:21,063.063 INFO    ] No camera update needed
[2026-06-19 18:20:21,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:20:21,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:20:21,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:20:21,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:20:23,119.119 INFO    ] ================================================
[2026-06-19 18:20:23,134.134 INFO    ] Launching Daemon at Fri Jun 19 18:20:23 IST 2026
[2026-06-19 18:20:23,145.145 INFO    ] ================================================
[2026-06-19 18:20:23,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:20:23
[2026-06-19 18:20:24,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:20:24,584.584 INFO    ] Initializing speech engine...
[2026-06-19 18:20:24,593.593 INFO    ] 2026-06-19 18:20:24
[2026-06-19 18:20:24,856.856 INFO    ] 2026-06-19 18:20:24
[2026-06-19 18:20:24,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:20:25,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:20:25,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:20:25,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:20:25,342.342 INFO    ] time= 19/06/2026 18:20:25
[2026-06-19 18:20:25,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:20:25,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:20:25,546.546 INFO    ] No existing commands found in stream
[2026-06-19 18:20:30,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:20:30,571.571 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 18:20:31,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:20:31,949.949 INFO    ] Checking for system updates...
[2026-06-19 18:20:31,985.985 INFO    ] 200
[2026-06-19 18:20:31,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:32,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:32,052.052 INFO    ] No update needed
[2026-06-19 18:20:32,055.055 INFO    ] Checking for camera pi updates...
[2026-06-19 18:20:32,099.099 INFO    ] 200
[2026-06-19 18:20:32,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:32,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:20:32,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:32,187.187 INFO    ] No camera update needed
[2026-06-19 18:20:32,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:20:32,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:20:32,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:20:32,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:20:34,254.254 INFO    ] ================================================
[2026-06-19 18:20:34,269.269 INFO    ] Launching Daemon at Fri Jun 19 18:20:34 IST 2026
[2026-06-19 18:20:34,280.280 INFO    ] ================================================
[2026-06-19 18:20:34,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:20:34
[2026-06-19 18:20:35,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:20:35,895.895 INFO    ] Initializing speech engine...
[2026-06-19 18:20:35,902.902 INFO    ] 2026-06-19 18:20:35
[2026-06-19 18:20:36,220.220 INFO    ] 2026-06-19 18:20:36
[2026-06-19 18:20:36,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:20:36,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:20:36,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:20:36,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:20:36,727.727 INFO    ] time= 19/06/2026 18:20:36
[2026-06-19 18:20:36,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:20:36,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:20:36,883.883 INFO    ] No existing commands found in stream
[2026-06-19 18:20:41,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:20:41,899.899 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 18:20:44,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:20:44,090.090 INFO    ] Checking for system updates...
[2026-06-19 18:20:44,127.127 INFO    ] 200
[2026-06-19 18:20:44,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:44,188.188 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:44,190.190 INFO    ] No update needed
[2026-06-19 18:20:44,193.193 INFO    ] Checking for camera pi updates...
[2026-06-19 18:20:44,231.231 INFO    ] 200
[2026-06-19 18:20:44,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:44,275.275 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:20:44,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:44,326.326 INFO    ] No camera update needed
[2026-06-19 18:20:44,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:20:44,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:20:44,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:20:44,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:20:46,383.383 INFO    ] ================================================
[2026-06-19 18:20:46,398.398 INFO    ] Launching Daemon at Fri Jun 19 18:20:46 IST 2026
[2026-06-19 18:20:46,409.409 INFO    ] ================================================
[2026-06-19 18:20:47,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:20:47
[2026-06-19 18:20:47,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:20:48,019.019 INFO    ] Initializing speech engine...
[2026-06-19 18:20:48,031.031 INFO    ] 2026-06-19 18:20:48
[2026-06-19 18:20:48,318.318 INFO    ] 2026-06-19 18:20:48
[2026-06-19 18:20:48,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:20:48,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:20:48,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:20:48,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:20:48,848.848 INFO    ] time= 19/06/2026 18:20:48
[2026-06-19 18:20:48,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:20:48,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:20:49,014.014 INFO    ] No existing commands found in stream
[2026-06-19 18:20:54,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:20:54,047.047 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 18:20:55,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:20:55,082.082 INFO    ] Checking for system updates...
[2026-06-19 18:20:55,123.123 INFO    ] 200
[2026-06-19 18:20:55,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:55,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:55,187.187 INFO    ] No update needed
[2026-06-19 18:20:55,189.189 INFO    ] Checking for camera pi updates...
[2026-06-19 18:20:55,224.224 INFO    ] 200
[2026-06-19 18:20:55,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:20:55,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:20:55,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:20:55,337.337 INFO    ] No camera update needed
[2026-06-19 18:20:55,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:20:55,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:20:55,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:20:55,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:20:57,392.392 INFO    ] ================================================
[2026-06-19 18:20:57,407.407 INFO    ] Launching Daemon at Fri Jun 19 18:20:57 IST 2026
[2026-06-19 18:20:57,418.418 INFO    ] ================================================
[2026-06-19 18:20:58,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:20:58
[2026-06-19 18:20:58,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:20:58,945.945 INFO    ] Initializing speech engine...
[2026-06-19 18:20:58,952.952 INFO    ] 2026-06-19 18:20:58
[2026-06-19 18:20:59,247.247 INFO    ] 2026-06-19 18:20:59
[2026-06-19 18:20:59,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:20:59,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:20:59,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:20:59,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:20:59,664.664 INFO    ] time= 19/06/2026 18:20:59
[2026-06-19 18:20:59,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:20:59,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:20:59,749.749 INFO    ] No existing commands found in stream
[2026-06-19 18:21:04,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:21:04,782.782 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 18:21:08,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:21:08,198.198 INFO    ] Checking for system updates...
[2026-06-19 18:21:08,238.238 INFO    ] 200
[2026-06-19 18:21:08,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:08,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:21:08,297.297 INFO    ] No update needed
[2026-06-19 18:21:08,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 18:21:08,333.333 INFO    ] 200
[2026-06-19 18:21:08,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:08,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:21:08,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:21:08,437.437 INFO    ] No camera update needed
[2026-06-19 18:21:08,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:21:08,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:21:08,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:21:08,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:21:10,492.492 INFO    ] ================================================
[2026-06-19 18:21:10,507.507 INFO    ] Launching Daemon at Fri Jun 19 18:21:10 IST 2026
[2026-06-19 18:21:10,519.519 INFO    ] ================================================
[2026-06-19 18:21:11,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:21:11
[2026-06-19 18:21:11,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:21:11,980.980 INFO    ] Initializing speech engine...
[2026-06-19 18:21:11,988.988 INFO    ] 2026-06-19 18:21:11
[2026-06-19 18:21:12,280.280 INFO    ] 2026-06-19 18:21:12
[2026-06-19 18:21:12,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:21:12,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:21:12,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:21:12,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:21:12,816.816 INFO    ] time= 19/06/2026 18:21:12
[2026-06-19 18:21:12,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:21:12,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:21:13,005.005 INFO    ] No existing commands found in stream
[2026-06-19 18:21:18,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:21:18,044.044 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 18:21:20,208.208 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:21:20,211.211 INFO    ] Checking for system updates...
[2026-06-19 18:21:20,253.253 INFO    ] 200
[2026-06-19 18:21:20,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:20,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:21:20,323.323 INFO    ] No update needed
[2026-06-19 18:21:20,325.325 INFO    ] Checking for camera pi updates...
[2026-06-19 18:21:20,359.359 INFO    ] 200
[2026-06-19 18:21:20,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:20,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:21:20,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:21:20,457.457 INFO    ] No camera update needed
[2026-06-19 18:21:20,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:21:20,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:21:20,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:21:20,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:21:22,512.512 INFO    ] ================================================
[2026-06-19 18:21:22,528.528 INFO    ] Launching Daemon at Fri Jun 19 18:21:22 IST 2026
[2026-06-19 18:21:22,539.539 INFO    ] ================================================
[2026-06-19 18:21:23,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:21:23
[2026-06-19 18:21:23,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:21:23,961.961 INFO    ] Initializing speech engine...
[2026-06-19 18:21:23,971.971 INFO    ] 2026-06-19 18:21:23
[2026-06-19 18:21:24,222.222 INFO    ] 2026-06-19 18:21:24
[2026-06-19 18:21:24,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:21:24,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:21:24,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:21:24,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:21:24,706.706 INFO    ] time= 19/06/2026 18:21:24
[2026-06-19 18:21:24,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:21:24,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:21:24,909.909 INFO    ] No existing commands found in stream
[2026-06-19 18:21:29,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:21:29,937.937 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 18:21:31,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:21:31,233.233 INFO    ] Checking for system updates...
[2026-06-19 18:21:31,282.282 INFO    ] 200
[2026-06-19 18:21:31,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:31,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:21:31,358.358 INFO    ] No update needed
[2026-06-19 18:21:31,360.360 INFO    ] Checking for camera pi updates...
[2026-06-19 18:21:31,397.397 INFO    ] 200
[2026-06-19 18:21:31,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:31,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:21:31,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:21:31,491.491 INFO    ] No camera update needed
[2026-06-19 18:21:31,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:21:31,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:21:31,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:21:31,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:21:33,554.554 INFO    ] ================================================
[2026-06-19 18:21:33,569.569 INFO    ] Launching Daemon at Fri Jun 19 18:21:33 IST 2026
[2026-06-19 18:21:33,580.580 INFO    ] ================================================
[2026-06-19 18:21:34,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:21:34
[2026-06-19 18:21:34,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:21:35,006.006 INFO    ] Initializing speech engine...
[2026-06-19 18:21:35,012.012 INFO    ] 2026-06-19 18:21:35
[2026-06-19 18:21:35,312.312 INFO    ] 2026-06-19 18:21:35
[2026-06-19 18:21:35,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:21:35,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:21:35,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:21:35,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:21:35,696.696 INFO    ] time= 19/06/2026 18:21:35
[2026-06-19 18:21:35,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:21:35,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:21:35,822.822 INFO    ] No existing commands found in stream
[2026-06-19 18:21:40,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:21:40,843.843 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 18:21:42,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:21:42,321.321 INFO    ] Checking for system updates...
[2026-06-19 18:21:42,364.364 INFO    ] 200
[2026-06-19 18:21:42,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:42,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:21:42,421.421 INFO    ] No update needed
[2026-06-19 18:21:42,424.424 INFO    ] Checking for camera pi updates...
[2026-06-19 18:21:42,457.457 INFO    ] 200
[2026-06-19 18:21:42,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:42,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:21:42,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:21:42,551.551 INFO    ] No camera update needed
[2026-06-19 18:21:42,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:21:42,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:21:42,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:21:42,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:21:44,607.607 INFO    ] ================================================
[2026-06-19 18:21:44,622.622 INFO    ] Launching Daemon at Fri Jun 19 18:21:44 IST 2026
[2026-06-19 18:21:44,634.634 INFO    ] ================================================
[2026-06-19 18:21:45,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:21:45
[2026-06-19 18:21:45,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:21:46,105.105 INFO    ] Initializing speech engine...
[2026-06-19 18:21:46,115.115 INFO    ] 2026-06-19 18:21:46
[2026-06-19 18:21:46,364.364 INFO    ] 2026-06-19 18:21:46
[2026-06-19 18:21:46,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:21:46,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:21:46,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:21:46,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:21:46,847.847 INFO    ] time= 19/06/2026 18:21:46
[2026-06-19 18:21:46,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:21:46,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:21:47,083.083 INFO    ] No existing commands found in stream
[2026-06-19 18:21:52,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:21:52,106.106 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 18:21:56,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:21:56,460.460 INFO    ] Checking for system updates...
[2026-06-19 18:21:56,499.499 INFO    ] 200
[2026-06-19 18:21:56,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:56,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:21:56,563.563 INFO    ] No update needed
[2026-06-19 18:21:56,566.566 INFO    ] Checking for camera pi updates...
[2026-06-19 18:21:56,601.601 INFO    ] 200
[2026-06-19 18:21:56,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:21:56,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:21:56,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:21:56,702.702 INFO    ] No camera update needed
[2026-06-19 18:21:56,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:21:56,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:21:56,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:21:56,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:21:58,759.759 INFO    ] ================================================
[2026-06-19 18:21:58,775.775 INFO    ] Launching Daemon at Fri Jun 19 18:21:58 IST 2026
[2026-06-19 18:21:58,786.786 INFO    ] ================================================
[2026-06-19 18:21:59,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:21:59
[2026-06-19 18:22:00,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:22:00,421.421 INFO    ] Initializing speech engine...
[2026-06-19 18:22:00,433.433 INFO    ] 2026-06-19 18:22:00
[2026-06-19 18:22:00,743.743 INFO    ] 2026-06-19 18:22:00
[2026-06-19 18:22:00,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:22:01,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:22:01,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:22:01,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:22:01,361.361 INFO    ] time= 19/06/2026 18:22:01
[2026-06-19 18:22:01,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:22:01,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:22:01,524.524 INFO    ] No existing commands found in stream
[2026-06-19 18:22:06,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:22:06,556.556 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 18:22:10,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:22:10,370.370 INFO    ] Checking for system updates...
[2026-06-19 18:22:10,410.410 INFO    ] 200
[2026-06-19 18:22:10,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:10,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:22:10,469.469 INFO    ] No update needed
[2026-06-19 18:22:10,471.471 INFO    ] Checking for camera pi updates...
[2026-06-19 18:22:10,504.504 INFO    ] 200
[2026-06-19 18:22:10,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:10,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:22:10,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:22:10,702.702 INFO    ] No camera update needed
[2026-06-19 18:22:10,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:22:10,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:22:10,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:22:10,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:22:12,757.757 INFO    ] ================================================
[2026-06-19 18:22:12,774.774 INFO    ] Launching Daemon at Fri Jun 19 18:22:12 IST 2026
[2026-06-19 18:22:12,785.785 INFO    ] ================================================
[2026-06-19 18:22:13,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:22:13
[2026-06-19 18:22:13,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:22:14,237.237 INFO    ] Initializing speech engine...
[2026-06-19 18:22:14,260.260 INFO    ] 2026-06-19 18:22:14
[2026-06-19 18:22:14,541.541 INFO    ] 2026-06-19 18:22:14
[2026-06-19 18:22:14,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:22:14,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:22:14,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:22:14,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:22:14,959.959 INFO    ] time= 19/06/2026 18:22:14
[2026-06-19 18:22:14,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:22:14,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:22:15,051.051 INFO    ] No existing commands found in stream
[2026-06-19 18:22:20,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:22:20,080.080 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 18:22:20,727.727 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:22:20,730.730 INFO    ] Checking for system updates...
[2026-06-19 18:22:20,770.770 INFO    ] 200
[2026-06-19 18:22:20,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:20,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:22:20,834.834 INFO    ] No update needed
[2026-06-19 18:22:20,838.838 INFO    ] Checking for camera pi updates...
[2026-06-19 18:22:20,875.875 INFO    ] 200
[2026-06-19 18:22:20,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:20,927.927 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:22:20,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:22:20,979.979 INFO    ] No camera update needed
[2026-06-19 18:22:20,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:22:20,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:22:20,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:22:20,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:22:23,046.046 INFO    ] ================================================
[2026-06-19 18:22:23,062.062 INFO    ] Launching Daemon at Fri Jun 19 18:22:23 IST 2026
[2026-06-19 18:22:23,073.073 INFO    ] ================================================
[2026-06-19 18:22:23,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:22:23
[2026-06-19 18:22:24,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:22:24,594.594 INFO    ] Initializing speech engine...
[2026-06-19 18:22:24,603.603 INFO    ] 2026-06-19 18:22:24
[2026-06-19 18:22:24,898.898 INFO    ] 2026-06-19 18:22:24
[2026-06-19 18:22:24,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:22:25,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:22:25,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:22:25,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:22:25,292.292 INFO    ] time= 19/06/2026 18:22:25
[2026-06-19 18:22:25,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:22:25,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:22:25,420.420 INFO    ] No existing commands found in stream
[2026-06-19 18:22:30,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:22:30,448.448 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 18:22:33,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:22:33,234.234 INFO    ] Checking for system updates...
[2026-06-19 18:22:33,274.274 INFO    ] 200
[2026-06-19 18:22:33,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:33,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:22:33,332.332 INFO    ] No update needed
[2026-06-19 18:22:33,334.334 INFO    ] Checking for camera pi updates...
[2026-06-19 18:22:33,371.371 INFO    ] 200
[2026-06-19 18:22:33,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:33,418.418 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:22:33,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:22:33,473.473 INFO    ] No camera update needed
[2026-06-19 18:22:33,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:22:33,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:22:33,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:22:33,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:22:35,529.529 INFO    ] ================================================
[2026-06-19 18:22:35,549.549 INFO    ] Launching Daemon at Fri Jun 19 18:22:35 IST 2026
[2026-06-19 18:22:35,560.560 INFO    ] ================================================
[2026-06-19 18:22:36,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:22:36
[2026-06-19 18:22:36,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:22:37,041.041 INFO    ] Initializing speech engine...
[2026-06-19 18:22:37,061.061 INFO    ] 2026-06-19 18:22:37
[2026-06-19 18:22:37,327.327 INFO    ] 2026-06-19 18:22:37
[2026-06-19 18:22:37,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:22:37,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:22:37,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:22:37,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:22:37,747.747 INFO    ] time= 19/06/2026 18:22:37
[2026-06-19 18:22:37,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:22:37,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:22:37,856.856 INFO    ] No existing commands found in stream
[2026-06-19 18:22:42,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:22:42,869.869 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 18:22:43,639.639 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:22:43,642.642 INFO    ] Checking for system updates...
[2026-06-19 18:22:43,680.680 INFO    ] 200
[2026-06-19 18:22:43,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:43,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:22:43,738.738 INFO    ] No update needed
[2026-06-19 18:22:43,740.740 INFO    ] Checking for camera pi updates...
[2026-06-19 18:22:43,774.774 INFO    ] 200
[2026-06-19 18:22:43,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:43,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:22:43,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:22:43,871.871 INFO    ] No camera update needed
[2026-06-19 18:22:43,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:22:43,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:22:43,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:22:43,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:22:45,927.927 INFO    ] ================================================
[2026-06-19 18:22:45,942.942 INFO    ] Launching Daemon at Fri Jun 19 18:22:45 IST 2026
[2026-06-19 18:22:45,953.953 INFO    ] ================================================
[2026-06-19 18:22:46,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:22:46
[2026-06-19 18:22:47,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:22:47,374.374 INFO    ] Initializing speech engine...
[2026-06-19 18:22:47,384.384 INFO    ] 2026-06-19 18:22:47
[2026-06-19 18:22:47,629.629 INFO    ] 2026-06-19 18:22:47
[2026-06-19 18:22:47,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:22:47,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:22:47,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:22:48,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:22:48,103.103 INFO    ] time= 19/06/2026 18:22:48
[2026-06-19 18:22:48,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:22:48,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:22:48,211.211 INFO    ] No existing commands found in stream
[2026-06-19 18:22:53,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:22:53,225.225 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 18:22:54,860.860 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:22:54,863.863 INFO    ] Checking for system updates...
[2026-06-19 18:22:54,899.899 INFO    ] 200
[2026-06-19 18:22:54,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:54,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:22:54,956.956 INFO    ] No update needed
[2026-06-19 18:22:54,959.959 INFO    ] Checking for camera pi updates...
[2026-06-19 18:22:54,996.996 INFO    ] 200
[2026-06-19 18:22:54,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:22:55,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:22:55,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:22:55,090.090 INFO    ] No camera update needed
[2026-06-19 18:22:55,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:22:55,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:22:55,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:22:55,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:22:57,144.144 INFO    ] ================================================
[2026-06-19 18:22:57,159.159 INFO    ] Launching Daemon at Fri Jun 19 18:22:57 IST 2026
[2026-06-19 18:22:57,169.169 INFO    ] ================================================
[2026-06-19 18:22:57,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:22:57
[2026-06-19 18:22:58,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:22:58,672.672 INFO    ] Initializing speech engine...
[2026-06-19 18:22:58,677.677 INFO    ] 2026-06-19 18:22:58
[2026-06-19 18:22:58,969.969 INFO    ] 2026-06-19 18:22:58
[2026-06-19 18:22:59,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:22:59,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:22:59,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:22:59,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:22:59,463.463 INFO    ] time= 19/06/2026 18:22:59
[2026-06-19 18:22:59,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:22:59,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:22:59,674.674 INFO    ] No existing commands found in stream
[2026-06-19 18:23:04,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:23:04,698.698 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 18:23:08,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:23:08,974.974 INFO    ] Checking for system updates...
[2026-06-19 18:23:09,014.014 INFO    ] 200
[2026-06-19 18:23:09,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:09,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:23:09,078.078 INFO    ] No update needed
[2026-06-19 18:23:09,080.080 INFO    ] Checking for camera pi updates...
[2026-06-19 18:23:09,118.118 INFO    ] 200
[2026-06-19 18:23:09,120.120 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:09,162.162 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:23:09,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:23:09,218.218 INFO    ] No camera update needed
[2026-06-19 18:23:09,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:23:09,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:23:09,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:23:09,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:23:11,275.275 INFO    ] ================================================
[2026-06-19 18:23:11,290.290 INFO    ] Launching Daemon at Fri Jun 19 18:23:11 IST 2026
[2026-06-19 18:23:11,301.301 INFO    ] ================================================
[2026-06-19 18:23:11,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:23:11
[2026-06-19 18:23:12,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:23:12,721.721 INFO    ] Initializing speech engine...
[2026-06-19 18:23:12,730.730 INFO    ] 2026-06-19 18:23:12
[2026-06-19 18:23:12,989.989 INFO    ] 2026-06-19 18:23:12
[2026-06-19 18:23:13,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:23:13,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:23:13,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:23:13,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:23:13,474.474 INFO    ] time= 19/06/2026 18:23:13
[2026-06-19 18:23:13,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:23:13,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:23:13,724.724 INFO    ] No existing commands found in stream
[2026-06-19 18:23:18,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:23:18,757.757 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 18:23:20,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:23:20,447.447 INFO    ] Checking for system updates...
[2026-06-19 18:23:20,484.484 INFO    ] 200
[2026-06-19 18:23:20,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:20,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:23:20,552.552 INFO    ] No update needed
[2026-06-19 18:23:20,555.555 INFO    ] Checking for camera pi updates...
[2026-06-19 18:23:20,595.595 INFO    ] 200
[2026-06-19 18:23:20,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:20,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:23:20,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:23:20,709.709 INFO    ] No camera update needed
[2026-06-19 18:23:20,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:23:20,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:23:20,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:23:20,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:23:22,770.770 INFO    ] ================================================
[2026-06-19 18:23:22,786.786 INFO    ] Launching Daemon at Fri Jun 19 18:23:22 IST 2026
[2026-06-19 18:23:22,797.797 INFO    ] ================================================
[2026-06-19 18:23:23,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:23:23
[2026-06-19 18:23:24,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:23:24,393.393 INFO    ] Initializing speech engine...
[2026-06-19 18:23:24,404.404 INFO    ] 2026-06-19 18:23:24
[2026-06-19 18:23:24,675.675 INFO    ] 2026-06-19 18:23:24
[2026-06-19 18:23:24,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:23:24,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:23:24,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:23:25,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:23:25,194.194 INFO    ] time= 19/06/2026 18:23:25
[2026-06-19 18:23:25,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:23:25,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:23:25,419.419 INFO    ] No existing commands found in stream
[2026-06-19 18:23:30,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:23:30,455.455 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 18:23:33,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:23:33,128.128 INFO    ] Checking for system updates...
[2026-06-19 18:23:33,166.166 INFO    ] 200
[2026-06-19 18:23:33,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:33,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:23:33,226.226 INFO    ] No update needed
[2026-06-19 18:23:33,229.229 INFO    ] Checking for camera pi updates...
[2026-06-19 18:23:33,264.264 INFO    ] 200
[2026-06-19 18:23:33,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:33,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:23:33,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:23:33,369.369 INFO    ] No camera update needed
[2026-06-19 18:23:33,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:23:33,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:23:33,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:23:33,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:23:35,425.425 INFO    ] ================================================
[2026-06-19 18:23:35,441.441 INFO    ] Launching Daemon at Fri Jun 19 18:23:35 IST 2026
[2026-06-19 18:23:35,452.452 INFO    ] ================================================
[2026-06-19 18:23:36,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:23:36
[2026-06-19 18:23:36,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:23:36,860.860 INFO    ] Initializing speech engine...
[2026-06-19 18:23:36,868.868 INFO    ] 2026-06-19 18:23:36
[2026-06-19 18:23:37,170.170 INFO    ] 2026-06-19 18:23:37
[2026-06-19 18:23:37,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:23:37,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:23:37,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:23:37,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:23:37,599.599 INFO    ] time= 19/06/2026 18:23:37
[2026-06-19 18:23:37,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:23:37,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:23:37,693.693 INFO    ] No existing commands found in stream
[2026-06-19 18:23:42,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:23:42,711.711 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 18:23:43,745.745 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:23:43,748.748 INFO    ] Checking for system updates...
[2026-06-19 18:23:43,790.790 INFO    ] 200
[2026-06-19 18:23:43,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:43,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:23:43,858.858 INFO    ] No update needed
[2026-06-19 18:23:43,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 18:23:43,900.900 INFO    ] 200
[2026-06-19 18:23:43,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:43,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:23:43,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:23:44,001.001 INFO    ] No camera update needed
[2026-06-19 18:23:44,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:23:44,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:23:44,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:23:44,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:23:46,062.062 INFO    ] ================================================
[2026-06-19 18:23:46,079.079 INFO    ] Launching Daemon at Fri Jun 19 18:23:46 IST 2026
[2026-06-19 18:23:46,090.090 INFO    ] ================================================
[2026-06-19 18:23:46,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:23:46
[2026-06-19 18:23:47,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:23:47,507.507 INFO    ] Initializing speech engine...
[2026-06-19 18:23:47,530.530 INFO    ] 2026-06-19 18:23:47
[2026-06-19 18:23:47,782.782 INFO    ] 2026-06-19 18:23:47
[2026-06-19 18:23:47,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:23:48,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:23:48,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:23:48,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:23:48,340.340 INFO    ] time= 19/06/2026 18:23:48
[2026-06-19 18:23:48,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:23:48,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:23:48,488.488 INFO    ] No existing commands found in stream
[2026-06-19 18:23:53,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:23:53,511.511 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 18:23:55,253.253 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:23:55,256.256 INFO    ] Checking for system updates...
[2026-06-19 18:23:55,293.293 INFO    ] 200
[2026-06-19 18:23:55,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:55,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:23:55,353.353 INFO    ] No update needed
[2026-06-19 18:23:55,356.356 INFO    ] Checking for camera pi updates...
[2026-06-19 18:23:55,391.391 INFO    ] 200
[2026-06-19 18:23:55,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:23:55,436.436 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:23:55,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:23:55,492.492 INFO    ] No camera update needed
[2026-06-19 18:23:55,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:23:55,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:23:55,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:23:55,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:23:57,552.552 INFO    ] ================================================
[2026-06-19 18:23:57,569.569 INFO    ] Launching Daemon at Fri Jun 19 18:23:57 IST 2026
[2026-06-19 18:23:57,581.581 INFO    ] ================================================
[2026-06-19 18:23:58,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:23:58
[2026-06-19 18:23:58,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:23:59,058.058 INFO    ] Initializing speech engine...
[2026-06-19 18:23:59,066.066 INFO    ] 2026-06-19 18:23:59
[2026-06-19 18:23:59,340.340 INFO    ] 2026-06-19 18:23:59
[2026-06-19 18:23:59,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:23:59,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:23:59,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:23:59,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:23:59,813.813 INFO    ] time= 19/06/2026 18:23:59
[2026-06-19 18:23:59,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:23:59,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:24:00,023.023 INFO    ] No existing commands found in stream
[2026-06-19 18:24:05,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:24:05,048.048 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 18:24:08,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:24:08,197.197 INFO    ] Checking for system updates...
[2026-06-19 18:24:08,234.234 INFO    ] 200
[2026-06-19 18:24:08,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:08,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:24:08,294.294 INFO    ] No update needed
[2026-06-19 18:24:08,296.296 INFO    ] Checking for camera pi updates...
[2026-06-19 18:24:08,332.332 INFO    ] 200
[2026-06-19 18:24:08,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:08,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:24:08,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:24:08,448.448 INFO    ] No camera update needed
[2026-06-19 18:24:08,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:24:08,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:24:08,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:24:08,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:24:10,507.507 INFO    ] ================================================
[2026-06-19 18:24:10,523.523 INFO    ] Launching Daemon at Fri Jun 19 18:24:10 IST 2026
[2026-06-19 18:24:10,534.534 INFO    ] ================================================
[2026-06-19 18:24:11,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:24:11
[2026-06-19 18:24:11,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:24:11,931.931 INFO    ] Initializing speech engine...
[2026-06-19 18:24:11,946.946 INFO    ] 2026-06-19 18:24:11
[2026-06-19 18:24:12,208.208 INFO    ] 2026-06-19 18:24:12
[2026-06-19 18:24:12,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:24:12,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:24:12,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:24:12,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:24:12,697.697 INFO    ] time= 19/06/2026 18:24:12
[2026-06-19 18:24:12,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:24:12,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:24:12,905.905 INFO    ] No existing commands found in stream
[2026-06-19 18:24:17,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:24:17,928.928 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 18:24:18,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:24:18,750.750 INFO    ] Checking for system updates...
[2026-06-19 18:24:18,786.786 INFO    ] 200
[2026-06-19 18:24:18,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:18,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:24:18,844.844 INFO    ] No update needed
[2026-06-19 18:24:18,847.847 INFO    ] Checking for camera pi updates...
[2026-06-19 18:24:18,881.881 INFO    ] 200
[2026-06-19 18:24:18,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:18,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:24:19,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:24:19,067.067 INFO    ] No camera update needed
[2026-06-19 18:24:19,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:24:19,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:24:19,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:24:19,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:24:21,125.125 INFO    ] ================================================
[2026-06-19 18:24:21,141.141 INFO    ] Launching Daemon at Fri Jun 19 18:24:21 IST 2026
[2026-06-19 18:24:21,153.153 INFO    ] ================================================
[2026-06-19 18:24:21,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:24:21
[2026-06-19 18:24:22,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:24:22,699.699 INFO    ] Initializing speech engine...
[2026-06-19 18:24:22,709.709 INFO    ] 2026-06-19 18:24:22
[2026-06-19 18:24:22,953.953 INFO    ] 2026-06-19 18:24:22
[2026-06-19 18:24:22,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:24:23,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:24:23,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:24:23,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:24:23,494.494 INFO    ] time= 19/06/2026 18:24:23
[2026-06-19 18:24:23,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:24:23,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:24:23,664.664 INFO    ] No existing commands found in stream
[2026-06-19 18:24:28,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:24:28,686.686 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 18:24:31,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:24:31,592.592 INFO    ] Checking for system updates...
[2026-06-19 18:24:31,634.634 INFO    ] 200
[2026-06-19 18:24:31,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:31,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:24:31,706.706 INFO    ] No update needed
[2026-06-19 18:24:31,709.709 INFO    ] Checking for camera pi updates...
[2026-06-19 18:24:31,746.746 INFO    ] 200
[2026-06-19 18:24:31,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:31,795.795 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:24:31,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:24:31,839.839 INFO    ] No camera update needed
[2026-06-19 18:24:31,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:24:31,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:24:31,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:24:31,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:24:33,905.905 INFO    ] ================================================
[2026-06-19 18:24:33,921.921 INFO    ] Launching Daemon at Fri Jun 19 18:24:33 IST 2026
[2026-06-19 18:24:33,932.932 INFO    ] ================================================
[2026-06-19 18:24:34,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:24:34
[2026-06-19 18:24:35,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:24:35,339.339 INFO    ] Initializing speech engine...
[2026-06-19 18:24:35,353.353 INFO    ] 2026-06-19 18:24:35
[2026-06-19 18:24:35,631.631 INFO    ] 2026-06-19 18:24:35
[2026-06-19 18:24:35,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:24:35,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:24:35,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:24:36,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:24:36,013.013 INFO    ] time= 19/06/2026 18:24:36
[2026-06-19 18:24:36,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:24:36,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:24:36,211.211 INFO    ] No existing commands found in stream
[2026-06-19 18:24:41,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:24:41,229.229 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 18:24:42,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:24:42,749.749 INFO    ] Checking for system updates...
[2026-06-19 18:24:42,785.785 INFO    ] 200
[2026-06-19 18:24:42,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:42,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:24:42,844.844 INFO    ] No update needed
[2026-06-19 18:24:42,846.846 INFO    ] Checking for camera pi updates...
[2026-06-19 18:24:42,883.883 INFO    ] 200
[2026-06-19 18:24:42,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:42,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:24:42,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:24:42,984.984 INFO    ] No camera update needed
[2026-06-19 18:24:42,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:24:42,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:24:42,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:24:42,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:24:45,041.041 INFO    ] ================================================
[2026-06-19 18:24:45,057.057 INFO    ] Launching Daemon at Fri Jun 19 18:24:45 IST 2026
[2026-06-19 18:24:45,068.068 INFO    ] ================================================
[2026-06-19 18:24:45,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:24:45
[2026-06-19 18:24:46,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:24:46,516.516 INFO    ] Initializing speech engine...
[2026-06-19 18:24:46,542.542 INFO    ] 2026-06-19 18:24:46
[2026-06-19 18:24:46,812.812 INFO    ] 2026-06-19 18:24:46
[2026-06-19 18:24:46,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:24:47,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:24:47,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:24:47,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:24:47,230.230 INFO    ] time= 19/06/2026 18:24:47
[2026-06-19 18:24:47,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:24:47,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:24:47,346.346 INFO    ] No existing commands found in stream
[2026-06-19 18:24:52,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:24:52,374.374 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 18:24:55,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:24:55,338.338 INFO    ] Checking for system updates...
[2026-06-19 18:24:55,375.375 INFO    ] 200
[2026-06-19 18:24:55,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:55,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:24:55,432.432 INFO    ] No update needed
[2026-06-19 18:24:55,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 18:24:55,468.468 INFO    ] 200
[2026-06-19 18:24:55,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:24:55,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:24:55,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:24:55,558.558 INFO    ] No camera update needed
[2026-06-19 18:24:55,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:24:55,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:24:55,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:24:55,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:24:57,616.616 INFO    ] ================================================
[2026-06-19 18:24:57,632.632 INFO    ] Launching Daemon at Fri Jun 19 18:24:57 IST 2026
[2026-06-19 18:24:57,644.644 INFO    ] ================================================
[2026-06-19 18:24:58,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:24:58
[2026-06-19 18:24:58,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:24:59,122.122 INFO    ] Initializing speech engine...
[2026-06-19 18:24:59,137.137 INFO    ] 2026-06-19 18:24:59
[2026-06-19 18:24:59,420.420 INFO    ] 2026-06-19 18:24:59
[2026-06-19 18:24:59,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:24:59,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:24:59,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:24:59,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:24:59,879.879 INFO    ] time= 19/06/2026 18:24:59
[2026-06-19 18:24:59,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:24:59,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:25:00,097.097 INFO    ] No existing commands found in stream
[2026-06-19 18:25:05,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:25:05,114.114 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 18:25:08,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:25:08,855.855 INFO    ] Checking for system updates...
[2026-06-19 18:25:08,891.891 INFO    ] 200
[2026-06-19 18:25:08,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:08,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:25:08,948.948 INFO    ] No update needed
[2026-06-19 18:25:08,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 18:25:08,987.987 INFO    ] 200
[2026-06-19 18:25:08,989.989 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:09,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:25:09,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:25:09,076.076 INFO    ] No camera update needed
[2026-06-19 18:25:09,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:25:09,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:25:09,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:25:09,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:25:11,132.132 INFO    ] ================================================
[2026-06-19 18:25:11,147.147 INFO    ] Launching Daemon at Fri Jun 19 18:25:11 IST 2026
[2026-06-19 18:25:11,158.158 INFO    ] ================================================
[2026-06-19 18:25:11,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:25:11
[2026-06-19 18:25:12,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:25:12,603.603 INFO    ] Initializing speech engine...
[2026-06-19 18:25:12,609.609 INFO    ] 2026-06-19 18:25:12
[2026-06-19 18:25:12,870.870 INFO    ] 2026-06-19 18:25:12
[2026-06-19 18:25:12,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:25:13,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:25:13,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:25:13,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:25:13,416.416 INFO    ] time= 19/06/2026 18:25:13
[2026-06-19 18:25:13,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:25:13,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:25:13,569.569 INFO    ] No existing commands found in stream
[2026-06-19 18:25:18,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:25:18,592.592 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 18:25:19,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:25:19,959.959 INFO    ] Checking for system updates...
[2026-06-19 18:25:19,995.995 INFO    ] 200
[2026-06-19 18:25:19,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:20,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:25:20,055.055 INFO    ] No update needed
[2026-06-19 18:25:20,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 18:25:20,092.092 INFO    ] 200
[2026-06-19 18:25:20,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:20,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:25:20,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:25:20,186.186 INFO    ] No camera update needed
[2026-06-19 18:25:20,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:25:20,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:25:20,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:25:20,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:25:22,241.241 INFO    ] ================================================
[2026-06-19 18:25:22,256.256 INFO    ] Launching Daemon at Fri Jun 19 18:25:22 IST 2026
[2026-06-19 18:25:22,267.267 INFO    ] ================================================
[2026-06-19 18:25:22,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:25:22
[2026-06-19 18:25:23,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:25:23,830.830 INFO    ] Initializing speech engine...
[2026-06-19 18:25:23,842.842 INFO    ] 2026-06-19 18:25:23
[2026-06-19 18:25:24,111.111 INFO    ] 2026-06-19 18:25:24
[2026-06-19 18:25:24,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:25:24,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:25:24,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:25:24,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:25:24,613.613 INFO    ] time= 19/06/2026 18:25:24
[2026-06-19 18:25:24,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:25:24,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:25:24,814.814 INFO    ] No existing commands found in stream
[2026-06-19 18:25:29,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:25:29,842.842 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 18:25:31,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:25:31,783.783 INFO    ] Checking for system updates...
[2026-06-19 18:25:31,820.820 INFO    ] 200
[2026-06-19 18:25:31,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:31,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:25:31,884.884 INFO    ] No update needed
[2026-06-19 18:25:31,887.887 INFO    ] Checking for camera pi updates...
[2026-06-19 18:25:31,924.924 INFO    ] 200
[2026-06-19 18:25:31,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:31,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:25:32,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:25:32,030.030 INFO    ] No camera update needed
[2026-06-19 18:25:32,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:25:32,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:25:32,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:25:32,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:25:34,088.088 INFO    ] ================================================
[2026-06-19 18:25:34,104.104 INFO    ] Launching Daemon at Fri Jun 19 18:25:34 IST 2026
[2026-06-19 18:25:34,116.116 INFO    ] ================================================
[2026-06-19 18:25:34,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:25:34
[2026-06-19 18:25:35,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:25:35,559.559 INFO    ] Initializing speech engine...
[2026-06-19 18:25:35,566.566 INFO    ] 2026-06-19 18:25:35
[2026-06-19 18:25:35,813.813 INFO    ] 2026-06-19 18:25:35
[2026-06-19 18:25:35,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:25:36,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:25:36,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:25:36,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:25:36,289.289 INFO    ] time= 19/06/2026 18:25:36
[2026-06-19 18:25:36,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:25:36,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:25:36,525.525 INFO    ] No existing commands found in stream
[2026-06-19 18:25:41,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:25:41,541.541 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 18:25:43,274.274 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:25:43,276.276 INFO    ] Checking for system updates...
[2026-06-19 18:25:43,314.314 INFO    ] 200
[2026-06-19 18:25:43,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:43,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:25:43,377.377 INFO    ] No update needed
[2026-06-19 18:25:43,380.380 INFO    ] Checking for camera pi updates...
[2026-06-19 18:25:43,414.414 INFO    ] 200
[2026-06-19 18:25:43,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:43,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:25:43,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:25:43,509.509 INFO    ] No camera update needed
[2026-06-19 18:25:43,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:25:43,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:25:43,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:25:43,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:25:45,566.566 INFO    ] ================================================
[2026-06-19 18:25:45,582.582 INFO    ] Launching Daemon at Fri Jun 19 18:25:45 IST 2026
[2026-06-19 18:25:45,592.592 INFO    ] ================================================
[2026-06-19 18:25:46,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:25:46
[2026-06-19 18:25:46,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:25:47,012.012 INFO    ] Initializing speech engine...
[2026-06-19 18:25:47,025.025 INFO    ] 2026-06-19 18:25:47
[2026-06-19 18:25:47,273.273 INFO    ] 2026-06-19 18:25:47
[2026-06-19 18:25:47,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:25:47,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:25:47,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:25:47,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:25:47,753.753 INFO    ] time= 19/06/2026 18:25:47
[2026-06-19 18:25:47,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:25:47,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:25:47,997.997 INFO    ] No existing commands found in stream
[2026-06-19 18:25:53,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:25:53,014.014 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 18:25:53,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:25:53,881.881 INFO    ] Checking for system updates...
[2026-06-19 18:25:53,916.916 INFO    ] 200
[2026-06-19 18:25:53,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:53,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:25:53,987.987 INFO    ] No update needed
[2026-06-19 18:25:53,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 18:25:54,023.023 INFO    ] 200
[2026-06-19 18:25:54,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:25:54,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:25:54,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:25:54,123.123 INFO    ] No camera update needed
[2026-06-19 18:25:54,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:25:54,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:25:54,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:25:54,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:25:56,179.179 INFO    ] ================================================
[2026-06-19 18:25:56,195.195 INFO    ] Launching Daemon at Fri Jun 19 18:25:56 IST 2026
[2026-06-19 18:25:56,206.206 INFO    ] ================================================
[2026-06-19 18:25:56,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:25:56
[2026-06-19 18:25:57,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:25:57,760.760 INFO    ] Initializing speech engine...
[2026-06-19 18:25:57,769.769 INFO    ] 2026-06-19 18:25:57
[2026-06-19 18:25:58,053.053 INFO    ] 2026-06-19 18:25:58
[2026-06-19 18:25:58,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:25:58,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:25:58,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:25:58,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:25:58,528.528 INFO    ] time= 19/06/2026 18:25:58
[2026-06-19 18:25:58,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:25:58,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:25:58,739.739 INFO    ] No existing commands found in stream
[2026-06-19 18:26:03,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:26:03,768.768 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 18:26:06,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:26:06,346.346 INFO    ] Checking for system updates...
[2026-06-19 18:26:06,382.382 INFO    ] 200
[2026-06-19 18:26:06,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:26:06,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:26:06,442.442 INFO    ] No update needed
[2026-06-19 18:26:06,444.444 INFO    ] Checking for camera pi updates...
[2026-06-19 18:26:06,479.479 INFO    ] 200
[2026-06-19 18:26:06,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:26:06,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:26:06,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:26:06,577.577 INFO    ] No camera update needed
[2026-06-19 18:26:06,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:26:06,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:26:06,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:26:06,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:26:08,635.635 INFO    ] ================================================
[2026-06-19 18:26:08,650.650 INFO    ] Launching Daemon at Fri Jun 19 18:26:08 IST 2026
[2026-06-19 18:26:08,661.661 INFO    ] ================================================
[2026-06-19 18:26:09,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:26:09
[2026-06-19 18:26:09,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:26:10,068.068 INFO    ] Initializing speech engine...
[2026-06-19 18:26:10,075.075 INFO    ] 2026-06-19 18:26:10
[2026-06-19 18:26:10,366.366 INFO    ] 2026-06-19 18:26:10
[2026-06-19 18:26:10,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:26:10,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:26:10,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:26:10,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:26:10,839.839 INFO    ] time= 19/06/2026 18:26:10
[2026-06-19 18:26:10,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:26:10,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:26:11,000.000 INFO    ] No existing commands found in stream
[2026-06-19 18:26:16,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:26:16,014.014 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 18:26:18,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:26:18,826.826 INFO    ] Checking for system updates...
[2026-06-19 18:26:18,866.866 INFO    ] 200
[2026-06-19 18:26:18,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:26:18,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:26:18,929.929 INFO    ] No update needed
[2026-06-19 18:26:18,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 18:26:18,966.966 INFO    ] 200
[2026-06-19 18:26:18,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:26:19,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:26:19,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:26:19,063.063 INFO    ] No camera update needed
[2026-06-19 18:26:19,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:26:19,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:26:19,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:26:19,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:26:21,123.123 INFO    ] ================================================
[2026-06-19 18:26:21,139.139 INFO    ] Launching Daemon at Fri Jun 19 18:26:21 IST 2026
[2026-06-19 18:26:21,150.150 INFO    ] ================================================
[2026-06-19 18:26:21,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:26:21
[2026-06-19 18:26:22,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:26:22,611.611 INFO    ] Initializing speech engine...
[2026-06-19 18:26:22,620.620 INFO    ] 2026-06-19 18:26:22
[2026-06-19 18:26:22,869.869 INFO    ] 2026-06-19 18:26:22
[2026-06-19 18:26:22,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:26:23,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:26:23,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:26:23,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:26:23,356.356 INFO    ] time= 19/06/2026 18:26:23
[2026-06-19 18:26:23,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:26:23,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:26:23,554.554 INFO    ] No existing commands found in stream
[2026-06-19 18:26:24,232.232 INFO    ] Received new command: ID=1781873783902-0
[2026-06-19 18:26:24,238.238 INFO    ] process_and_cleanup_command: msg_id=1781873783902-0
[2026-06-19 18:26:24,246.246 INFO    ] is_command_expired: timestamp=2026-06-19T12:56:22.234Z, expiry=30s
[2026-06-19 18:26:24,360.360 INFO    ] Command removed from stream: 1781873783902-0. returning for processing...
[2026-06-19 18:26:24,366.366 INFO    ] ***** get_valid_command
[2026-06-19 18:26:24,371.371 INFO    ] {'timeout': '10', 'timestamp': '2026-06-19T12:56:22.234Z', 'data': '{"request_id":"start-order-1781873782234-41bxpy508","orderId":"TM07202501260619182522772","is_vending":false}', 'command': 'start-order', 'source': 'webapp'}
[2026-06-19 18:26:24,377.377 INFO    ] ***** Parsed command data: {'orderId': 'TM07202501260619182522772', 'is_vending': False, 'request_id': 'start-order-1781873782234-41bxpy508'}
[2026-06-19 18:26:24,382.382 INFO    ] Handling start order...
[2026-06-19 18:26:24,387.387 INFO    ] handle_start_order_command
[2026-06-19 18:26:24,397.397 INFO    ] _send_start_order_success: request_id=start-order-1781873782234-41bxpy508, order_id=TM07202501260619182522772
[2026-06-19 18:26:24,404.404 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-19 18:26:24,497.497 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781873784421-0
[2026-06-19 18:26:24,505.505 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-19 18:26:24,511.511 INFO    ] Checking for system updates...
[2026-06-19 18:26:24,621.621 INFO    ] 200
[2026-06-19 18:26:24,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:26:24,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:26:24,722.722 INFO    ] No update needed
[2026-06-19 18:26:24,725.725 INFO    ] Checking for camera pi updates...
[2026-06-19 18:26:24,788.788 INFO    ] 200
[2026-06-19 18:26:24,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:26:24,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:26:25,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:26:25,049.049 INFO    ] No camera update needed
[2026-06-19 18:26:25,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:26:25,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:26:25,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:26:25,082.082 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 18:26:25,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:26:27,138.138 INFO    ] ================================================
[2026-06-19 18:26:27,154.154 INFO    ] Launching Daemon at Fri Jun 19 18:26:27 IST 2026
[2026-06-19 18:26:27,165.165 INFO    ] ================================================
[2026-06-19 18:26:27,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:26:27
[2026-06-19 18:26:28,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:26:28,624.624 INFO    ] Initializing speech engine...
[2026-06-19 18:26:28,633.633 INFO    ] 2026-06-19 18:26:28
[2026-06-19 18:26:28,882.882 INFO    ] 2026-06-19 18:26:28
[2026-06-19 18:26:28,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:26:29,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:26:29,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:26:29,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:26:29,367.367 INFO    ] time= 19/06/2026 18:26:29
[2026-06-19 18:26:29,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:26:29,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:26:29,581.581 INFO    ] Found 2 existing command(s) in stream
[2026-06-19 18:26:29,615.615 INFO    ] Checking historical command: ID=1781873784421-0
[2026-06-19 18:26:29,666.666 INFO    ] process_and_cleanup_command: msg_id=1781873784421-0
[2026-06-19 18:26:29,713.713 INFO    ] is_command_expired: timestamp=2026-06-19T12:56:24.398876Z, expiry=30s
[2026-06-19 18:26:29,901.901 INFO    ] Command removed from stream: 1781873784421-0. returning for processing...
[2026-06-19 18:26:29,932.932 INFO    ] ***** get_valid_command
[2026-06-19 18:26:29,943.943 INFO    ] {'message': 'start-order success', 'message_type': 'command_response', 'metadata_request_id': 'start-order-1781873782234-41bxpy508', 'timestamp': '2026-06-19T12:56:24.398876Z', 'imei': 'TM07202501', 'metadata_order_id': 'TM07202501260619182522772', 'status': 'success'}
[2026-06-19 18:26:29,946.946 INFO    ] Checking historical command: ID=1781873787784-0
[2026-06-19 18:26:29,949.949 INFO    ] process_and_cleanup_command: msg_id=1781873787784-0
[2026-06-19 18:26:29,967.967 INFO    ] is_command_expired: timestamp=2026-06-19T12:56:26.076Z, expiry=30s
[2026-06-19 18:26:30,079.079 INFO    ] Command removed from stream: 1781873787784-0. returning for processing...
[2026-06-19 18:26:30,086.086 INFO    ] ***** get_valid_command
[2026-06-19 18:26:30,124.124 INFO    ] {'source': 'webapp', 'data': '{"request_id":"process-order-1781873786075-tlkyhajvd","orderId":"TM07202501260619182522772","is_vending":false,"accessCode":"91626203"}', 'command': 'process-order', 'timestamp': '2026-06-19T12:56:26.076Z', 'timeout': '60'}
[2026-06-19 18:26:30,139.139 INFO    ] ***** Parsed command data: {'orderId': 'TM07202501260619182522772', 'is_vending': False, 'request_id': 'process-order-1781873786075-tlkyhajvd', 'accessCode': '91626203'}
[2026-06-19 18:26:30,142.142 INFO    ] Handling process order...
[2026-06-19 18:26:30,186.186 INFO    ] Processing process-order command...
[2026-06-19 18:26:30,200.200 INFO    ] 🔍 Lock file Order ID: TM07202501260619182522772, TS: 2026-06-19 18:26:24
[2026-06-19 18:26:30,216.216 INFO    ] ✅ Order lock valid for TM07202501260619182522772
[2026-06-19 18:26:30,221.221 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-19 18:26:30,225.225 INFO    ] processing access code 91626203 for order TM07202501260619182522772
[2026-06-19 18:26:30,231.231 INFO    ] 🔍 Lock file Order ID: TM07202501260619182522772, TS: 2026-06-19 18:26:24
[2026-06-19 18:26:30,236.236 INFO    ] ✅ Order lock valid for TM07202501260619182522772
[2026-06-19 18:26:30,240.240 INFO    ] 2026-06-19 18:26:30
[2026-06-19 18:26:30,351.351 INFO    ] 200
[2026-06-19 18:26:30,390.390 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:26:30,394.394 INFO    ] 91626203
[2026-06-19 18:26:30,401.401 INFO    ] 2026-06-19 18:26:30
[2026-06-19 18:26:30,409.409 INFO    ] session id :909863451
[2026-06-19 18:26:30,416.416 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=91626203&imei=TM07202501&session_id=909863451
[2026-06-19 18:26:31,419.419 INFO    ] 200
[2026-06-19 18:26:31,430.430 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"sku_total": 20, "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "skuid": "112220", "unit_price": 20, "offer_id": "", "name": "Snickers Chocolate Bar 22g", "offer_desc": "", "door_id": "2", "mrp": "20", "qty": 1, "tray_id": "43"}], "bill_amount": "20", "mobile": "7286009178", "access_code": "91626203", "invoice_bill": "20", "order_id": "TM07202501260619182522772"}}
[2026-06-19 18:26:31,437.437 INFO    ] 20
[2026-06-19 18:26:31,444.444 INFO    ] TM07202501260619182522772
[2026-06-19 18:26:31,477.477 INFO    ] 7286009178
[2026-06-19 18:26:31,488.488 INFO    ] 2026-06-19 18:26:31
[2026-06-19 18:26:31,506.506 INFO    ] Door Opening for user mobile ending with  nine one seven eight 
[2026-06-19 18:26:31,515.515 INFO    ] Door Opening for user mobile ending with  nine one seven eight 
[2026-06-19 18:26:31,522.522 INFO    ] 8a5ff16a7927685370423be0423515fb
[2026-06-19 18:26:31,541.541 INFO    ] 2026-06-19 18:26:31
[2026-06-19 18:26:31,569.569 INFO    ] playing audio file
[2026-06-19 18:26:31,626.626 INFO    ] 2026-06-19 18:26:31
[2026-06-19 18:26:31,652.652 INFO    ] 2026-06-19 18:26:31
[2026-06-19 18:26:31,687.687 INFO    ] publish_status: order_id=TM07202501260619182522772
[2026-06-19 18:26:31,742.742 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619182522772
[2026-06-19 18:26:31,815.815 INFO    ] [publish_status] Message added to stream with ID: 1781873791761-0
[2026-06-19 18:26:31,840.840 INFO    ] Published to order:TM07202501260619182522772: {'order_id': 'TM07202501260619182522772', 'server_response': '{"rstatus": true, "data": {"access_code": "91626203", "invoice_bill": "20", "proposed_sku_json": [{"tray_id": "43", "qty": 1, "sku_total": 20, "unit_price": 20, "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "mrp": "20", "offer_desc": "", "name": "Snickers Chocolate Bar 22g", "offer_id": "", "door_id": "2", "skuid": "112220"}], "mobile": "7286009178", "order_id": "TM07202501260619182522772", "bill_amount": "20"}, "status": true, "msg": "Order Data"}', 'timestamp': '2026-06-19T12:56:31.654055Z', 'server_status': 'order-started'} (ID: 1781873791761-0)
[2026-06-19 18:26:32,342.342 INFO    ] {'order_id': 'TM07202501260619182522772', 'server_response': {'rstatus': True, 'data': {'access_code': '91626203', 'invoice_bill': '20', 'proposed_sku_json': [{'tray_id': '43', 'qty': 1, 'sku_total': 20, 'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'mrp': '20', 'offer_desc': '', 'name': 'Snickers Chocolate Bar 22g', 'offer_id': '', 'door_id': '2', 'skuid': '112220'}], 'mobile': '7286009178', 'order_id': 'TM07202501260619182522772', 'bill_amount': '20'}, 'status': True, 'msg': 'Order Data'}, 'server_status': 'order-started'}
[2026-06-19 18:26:32,345.345 INFO    ] 200
[2026-06-19 18:26:32,348.348 INFO    ] {"data":{"order_id":"TM07202501260619182522772","server_response":{"rstatus":true,"data":{"access_code":"91626203","invoice_bill":"20","proposed_sku_json":[{"tray_id":"43","qty":1,"sku_total":20,"unit_price":20,"image_url":"https:\/\/images.tinymart.in\/product\/112220-2513.jpg","mrp":"20","offer_desc":"","name":"Snickers Chocolate Bar 22g","offer_id":"","door_id":"2","skuid":"112220"}],"mobile":"7286009178","order_id":"TM07202501260619182522772","bill_amount":"20"},"status":true,"msg":"Order Data"},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 18:26:32,351.351 INFO    ] {'data': {'order_id': 'TM07202501260619182522772', 'server_response': {'rstatus': True, 'data': {'proposed_sku_json': [{'tray_id': '43', 'sku_total': 20, 'unit_price': 20, 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'name': 'Snickers Chocolate Bar 22g', 'mrp': '20', 'offer_desc': '', 'qty': 1, 'offer_id': '', 'door_id': '2', 'skuid': '112220'}], 'invoice_bill': '20', 'access_code': '91626203', 'mobile': '7286009178', 'order_id': 'TM07202501260619182522772', 'bill_amount': '20'}, 'status': True, 'msg': 'Order Data'}, 'server_status': 'order-started'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 18:26:32,354.354 INFO    ] 2026-06-19 18:26:32
[2026-06-19 18:26:32,402.402 INFO    ] 200
[2026-06-19 18:26:32,405.405 INFO    ] True
[2026-06-19 18:26:32,597.597 INFO    ] 200
[2026-06-19 18:26:32,600.600 INFO    ] {"rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "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": ""}}
[2026-06-19 18:26:32,604.604 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, 'status': 'False', 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait'}
[2026-06-19 18:26:32,607.607 INFO    ] *** process_order ***
[2026-06-19 18:26:33,789.789 INFO    ] 200
[2026-06-19 18:26:33,791.791 INFO    ] {"rstatus": true, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True", "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": ""}}
[2026-06-19 18:26:33,794.794 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True'}
[2026-06-19 18:26:33,797.797 INFO    ] *** process_order ***
[2026-06-19 18:26:33,800.800 INFO    ] publish_status: order_id=TM07202501260619182522772
[2026-06-19 18:26:33,802.802 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619182522772
[2026-06-19 18:26:33,886.886 INFO    ] [publish_status] Message added to stream with ID: 1781873793839-0
[2026-06-19 18:26:33,889.889 INFO    ] Published to order:TM07202501260619182522772: {'order_id': 'TM07202501260619182522772', 'server_response': '{"rstatus": true, "SectionMain": {"Header": "Processing Order"}, "status": "True", "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "voiceNote": "Door is open..."}', 'server_status': 'doorOpened'} (ID: 1781873793839-0)
[2026-06-19 18:26:34,955.955 INFO    ] 2026-06-19 18:26:34
[2026-06-19 18:26:34,958.958 INFO    ] publish_status: order_id=TM07202501260619182522772
[2026-06-19 18:26:34,961.961 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619182522772
[2026-06-19 18:26:35,036.036 INFO    ] [publish_status] Message added to stream with ID: 1781873794988-0
[2026-06-19 18:26:35,039.039 INFO    ] Published to order:TM07202501260619182522772: {'order_id': 'TM07202501260619182522772', 'server_response': '{"rstatus": true, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait", "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "Please wait while we process your order", "Header": " Your order is under process  "}, "delay": 0, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True"}', 'timestamp': '2026-06-19T12:56:34.956711Z', 'server_status': 'processOrder'} (ID: 1781873794988-0)
[2026-06-19 18:26:35,179.179 INFO    ] {'order_id': 'TM07202501260619182522772', 'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True'}, 'server_status': 'processOrder'}
[2026-06-19 18:26:35,181.181 INFO    ] 200
[2026-06-19 18:26:35,184.184 INFO    ] {"data":{"order_id":"TM07202501260619182522772","server_response":{"rstatus":true,"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait","SectionStatus":{"Note":"","UI_Header":"","SubHeader":"Please wait while we process your order","Header":" Your order is under process  "},"delay":0,"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true"},"server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 18:26:35,187.187 INFO    ] {'data': {'order_id': 'TM07202501260619182522772', 'server_response': {'rstatus': True, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'delay': 0, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true'}, 'server_status': 'processOrder'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 18:26:35,190.190 INFO    ] 2026-06-19 18:26:35
[2026-06-19 18:26:35,193.193 INFO    ] None
[2026-06-19 18:26:35,195.195 INFO    ] Opening Door now
[2026-06-19 18:26:35,198.198 INFO    ] Opening Door now
[2026-06-19 18:26:35,201.201 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-19 18:26:35,204.204 INFO    ] 2026-06-19 18:26:35
[2026-06-19 18:26:35,206.206 INFO    ] playing audio file
[2026-06-19 18:26:35,225.225 INFO    ] 2026-06-19 18:26:35
[2026-06-19 18:26:35,228.228 INFO    ] 2026-06-19 18:26:35
[2026-06-19 18:26:38,326.326 INFO    ] 200
[2026-06-19 18:26:38,329.329 INFO    ] {"rstatus": false, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}]}, "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"}}
[2026-06-19 18:26:38,332.332 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 2 is open now'}
[2026-06-19 18:26:41,414.414 INFO    ] 200
[2026-06-19 18:26:41,417.417 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}]}, "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"}}
[2026-06-19 18:26:41,420.420 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2'}
[2026-06-19 18:26:44,519.519 INFO    ] 200
[2026-06-19 18:26:44,522.522 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}]}, "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"}}
[2026-06-19 18:26:44,525.525 INFO    ] Please close door 2
[2026-06-19 18:26:44,528.528 INFO    ] Please close door 2
[2026-06-19 18:26:44,531.531 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-19 18:26:44,534.534 INFO    ] 2026-06-19 18:26:44
[2026-06-19 18:26:44,536.536 INFO    ] playing audio file
[2026-06-19 18:26:44,554.554 INFO    ] 2026-06-19 18:26:44
[2026-06-19 18:26:44,558.558 INFO    ] publish_status: order_id=TM07202501260619182522772
[2026-06-19 18:26:44,561.561 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619182522772
[2026-06-19 18:26:44,660.660 INFO    ] [publish_status] Message added to stream with ID: 1781873804612-0
[2026-06-19 18:26:44,663.663 INFO    ] Published to order:TM07202501260619182522772: {'order_id': 'TM07202501260619182522772', 'server_response': '{"rstatus": false, "SectionMain": {"Header": "Door Open"}, "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"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "SectionSKU": {"skus": [{"qty": 1, "name": "Snickers Chocolate Bar 22g"}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2"}', 'timestamp': '2026-06-19T12:56:44.556737Z', 'server_status': 'OrderStatus'} (ID: 1781873804612-0)
[2026-06-19 18:26:45,168.168 INFO    ] {'order_id': 'TM07202501260619182522772', 'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus'}
[2026-06-19 18:26:45,171.171 INFO    ] 200
[2026-06-19 18:26:45,173.173 INFO    ] {"data":{"order_id":"TM07202501260619182522772","server_response":{"rstatus":false,"SectionMain":{"Header":"Door Open"},"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"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"SectionSKU":{"skus":[{"qty":1,"name":"Snickers Chocolate Bar 22g"}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2"},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 18:26:45,176.176 INFO    ] {'data': {'order_id': 'TM07202501260619182522772', 'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2'}, 'server_status': 'OrderStatus'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 18:26:45,179.179 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, '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'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'SectionSKU': {'skus': [{'qty': 1, 'name': 'Snickers Chocolate Bar 22g'}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2'}
[2026-06-19 18:26:48,249.249 INFO    ] 200
[2026-06-19 18:26:48,251.251 INFO    ] {"rstatus": true, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "status": "True", "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"}}
[2026-06-19 18:26:48,255.255 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True'}
[2026-06-19 18:26:48,257.257 INFO    ] 2026-06-19 18:26:48
[2026-06-19 18:26:48,260.260 INFO    ] Order Completed 
[2026-06-19 18:26:48,263.263 INFO    ] Order Completed 
[2026-06-19 18:26:48,266.266 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-19 18:26:48,269.269 INFO    ] 2026-06-19 18:26:48
[2026-06-19 18:26:48,271.271 INFO    ] playing audio file
[2026-06-19 18:26:48,289.289 INFO    ] 2026-06-19 18:26:48
[2026-06-19 18:26:48,293.293 INFO    ] {'rstatus': True, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed', 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Header': ' Order is complete '}, 'delay': 100, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True'}
[2026-06-19 18:26:48,296.296 INFO    ] 2026-06-19 18:26:48
[2026-06-19 18:26:50,107.107 INFO    ] 200
[2026-06-19 18:26:50,109.109 INFO    ] {"rstatus": true, "anomaly": 0, "orderId": "TM07202501260619182522772", "total_amount": 20.0, "logic": "WBL", "res": "True", "skus": [{"sku_total": 20.0, "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "door_id": "", "qty": 1, "mrp": "20", "name": "Snickers Chocolate Bar 22g per peice", "skuid": "112220", "tray_id": "43", "unit_price": "20"}]}
[2026-06-19 18:26:50,112.112 INFO    ] {'rstatus': True, 'orderId': 'TM07202501260619182522772', 'skus': [{'tray_id': '43', 'qty': 1, 'sku_total': 20.0, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'mrp': '20', 'name': 'Snickers Chocolate Bar 22g per peice', 'door_id': '', 'skuid': '112220'}], 'logic': 'WBL', 'res': 'True', 'anomaly': 0, 'total_amount': 20.0}
[2026-06-19 18:26:50,115.115 INFO    ] {'rstatus': True, 'orderId': 'TM07202501260619182522772', 'skus': [{'tray_id': '43', 'qty': 1, 'sku_total': 20.0, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'mrp': '20', 'name': 'Snickers Chocolate Bar 22g per peice', 'door_id': '', 'skuid': '112220'}], 'logic': 'WBL', 'res': 'True', 'anomaly': 0, 'total_amount': 20.0}
[2026-06-19 18:26:50,118.118 INFO    ] 2026-06-19 18:26:50
[2026-06-19 18:26:50,120.120 INFO    ] 2026-06-19 18:26:50
[2026-06-19 18:26:50,122.122 INFO    ] 20
[2026-06-19 18:26:50,125.125 INFO    ] 2026-06-19 18:26:50
[2026-06-19 18:26:50,127.127 INFO    ] 2026-06-19 18:26:50
[2026-06-19 18:26:50,129.129 INFO    ]  Your Bill Amount is 20
[2026-06-19 18:26:50,132.132 INFO    ]  Your Bill Amount is 20
[2026-06-19 18:26:50,134.134 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-19 18:26:50,137.137 INFO    ] 2026-06-19 18:26:50
[2026-06-19 18:26:50,140.140 INFO    ] playing audio file
[2026-06-19 18:26:50,157.157 INFO    ] 2026-06-19 18:26:50
[2026-06-19 18:26:50,160.160 INFO    ] 2026-06-19 18:26:50
[2026-06-19 18:26:50,163.163 INFO    ] publish_status: order_id=TM07202501260619182522772
[2026-06-19 18:26:50,166.166 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619182522772
[2026-06-19 18:26:50,227.227 INFO    ] [publish_status] Message added to stream with ID: 1781873810179-0
[2026-06-19 18:26:50,229.229 INFO    ] Published to order:TM07202501260619182522772: {'order_id': 'TM07202501260619182522772', 'server_response': '{"rstatus": true, "orderId": "TM07202501260619182522772", "skus": [{"tray_id": "43", "qty": 1, "sku_total": 20.0, "unit_price": "20", "image_url": "https://images.tinymart.in/product/112220-2513.jpg", "mrp": "20", "name": "Snickers Chocolate Bar 22g per peice", "door_id": "", "skuid": "112220"}], "logic": "WBL", "res": "True", "anomaly": 0, "total_amount": 20.0}', 'timestamp': '2026-06-19T12:56:50.161778Z', 'server_status': 'invoiceOrder'} (ID: 1781873810179-0)
[2026-06-19 18:26:50,696.696 INFO    ] {'order_id': 'TM07202501260619182522772', 'server_response': {'rstatus': True, 'orderId': 'TM07202501260619182522772', 'skus': [{'tray_id': '43', 'qty': 1, 'sku_total': 20.0, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'mrp': '20', 'name': 'Snickers Chocolate Bar 22g per peice', 'door_id': '', 'skuid': '112220'}], 'logic': 'WBL', 'res': 'True', 'anomaly': 0, 'total_amount': 20.0}, 'server_status': 'invoiceOrder'}
[2026-06-19 18:26:50,700.700 INFO    ] 200
[2026-06-19 18:26:50,702.702 INFO    ] {"data":{"order_id":"TM07202501260619182522772","server_response":{"rstatus":true,"orderId":"TM07202501260619182522772","skus":[{"tray_id":"43","qty":1,"sku_total":20,"unit_price":"20","image_url":"https:\/\/images.tinymart.in\/product\/112220-2513.jpg","mrp":"20","name":"Snickers Chocolate Bar 22g per peice","door_id":"","skuid":"112220"}],"logic":"WBL","res":"true","anomaly":0,"total_amount":20},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 18:26:50,705.705 INFO    ] {'data': {'order_id': 'TM07202501260619182522772', 'server_response': {'rstatus': True, 'orderId': 'TM07202501260619182522772', 'skus': [{'tray_id': '43', 'sku_total': 20, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'name': 'Snickers Chocolate Bar 22g per peice', 'mrp': '20', 'qty': 1, 'door_id': '', 'skuid': '112220'}], 'logic': 'WBL', 'res': 'true', 'anomaly': 0, 'total_amount': 20}, 'server_status': 'invoiceOrder'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 18:26:50,709.709 INFO    ] {'data': {'order_id': 'TM07202501260619182522772', 'server_response': {'rstatus': True, 'orderId': 'TM07202501260619182522772', 'skus': [{'tray_id': '43', 'sku_total': 20, 'unit_price': '20', 'image_url': 'https://images.tinymart.in/product/112220-2513.jpg', 'name': 'Snickers Chocolate Bar 22g per peice', 'mrp': '20', 'qty': 1, 'door_id': '', 'skuid': '112220'}], 'logic': 'WBL', 'res': 'true', 'anomaly': 0, 'total_amount': 20}, 'server_status': 'invoiceOrder'}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-19 18:26:50,712.712 INFO    ] 2026-06-19 18:26:50
[2026-06-19 18:26:54,173.173 INFO    ] 200
[2026-06-19 18:26:54,176.176 INFO    ] {"tray_sync": [], "tray_synced": ["TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772", "TM07202501260619182522772"], "orders_data": [], "orders_synced": [], "order_items_synced": ["TM07202501260619182522772_0"], "orders": [], "status": true, "orders_data_synced": [], "order_items": []}
[2026-06-19 18:26:54,180.180 INFO    ] 2026-06-19 18:26:54
[2026-06-19 18:26:54,291.291 INFO    ] 200
[2026-06-19 18:26:54,294.294 INFO    ] True
[2026-06-19 18:26:54,297.297 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260619182522772
[2026-06-19 18:26:54,300.300 INFO    ] start order file deleted
[2026-06-19 18:26:54,303.303 INFO    ] Checking for system updates...
[2026-06-19 18:26:54,340.340 INFO    ] 200
[2026-06-19 18:26:54,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:26:54,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:26:54,398.398 INFO    ] No update needed
[2026-06-19 18:26:54,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 18:26:54,435.435 INFO    ] 200
[2026-06-19 18:26:54,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:26:54,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:26:54,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:26:54,516.516 INFO    ] No camera update needed
[2026-06-19 18:26:54,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:26:54,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:26:54,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:26:54,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:26:56,576.576 INFO    ] ================================================
[2026-06-19 18:26:56,592.592 INFO    ] Launching Daemon at Fri Jun 19 18:26:56 IST 2026
[2026-06-19 18:26:56,603.603 INFO    ] ================================================
[2026-06-19 18:26:57,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:26:57
[2026-06-19 18:26:57,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:26:58,062.062 INFO    ] Initializing speech engine...
[2026-06-19 18:26:58,071.071 INFO    ] 2026-06-19 18:26:58
[2026-06-19 18:26:58,331.331 INFO    ] 2026-06-19 18:26:58
[2026-06-19 18:26:58,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:26:58,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:26:58,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:26:58,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:26:58,839.839 INFO    ] time= 19/06/2026 18:26:58
[2026-06-19 18:26:58,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:26:58,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:26:59,041.041 INFO    ] No existing commands found in stream
[2026-06-19 18:27:04,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:27:04,063.063 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 18:27:06,555.555 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:27:06,558.558 INFO    ] Checking for system updates...
[2026-06-19 18:27:06,595.595 INFO    ] 200
[2026-06-19 18:27:06,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:06,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:27:06,654.654 INFO    ] No update needed
[2026-06-19 18:27:06,656.656 INFO    ] Checking for camera pi updates...
[2026-06-19 18:27:06,690.690 INFO    ] 200
[2026-06-19 18:27:06,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:06,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:27:06,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:27:06,797.797 INFO    ] No camera update needed
[2026-06-19 18:27:06,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:27:06,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:27:06,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:27:06,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:27:08,854.854 INFO    ] ================================================
[2026-06-19 18:27:08,869.869 INFO    ] Launching Daemon at Fri Jun 19 18:27:08 IST 2026
[2026-06-19 18:27:08,880.880 INFO    ] ================================================
[2026-06-19 18:27:09,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:27:09
[2026-06-19 18:27:10,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:27:10,351.351 INFO    ] Initializing speech engine...
[2026-06-19 18:27:10,361.361 INFO    ] 2026-06-19 18:27:10
[2026-06-19 18:27:10,659.659 INFO    ] 2026-06-19 18:27:10
[2026-06-19 18:27:10,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:27:10,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:27:10,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:27:11,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:27:11,082.082 INFO    ] time= 19/06/2026 18:27:11
[2026-06-19 18:27:11,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:27:11,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:27:11,169.169 INFO    ] No existing commands found in stream
[2026-06-19 18:27:16,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:27:16,197.197 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 18:27:18,892.892 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:27:18,895.895 INFO    ] Checking for system updates...
[2026-06-19 18:27:18,935.935 INFO    ] 200
[2026-06-19 18:27:18,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:18,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:27:19,000.000 INFO    ] No update needed
[2026-06-19 18:27:19,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 18:27:19,041.041 INFO    ] 200
[2026-06-19 18:27:19,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:19,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:27:19,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:27:19,136.136 INFO    ] No camera update needed
[2026-06-19 18:27:19,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:27:19,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:27:19,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:27:19,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:27:21,194.194 INFO    ] ================================================
[2026-06-19 18:27:21,211.211 INFO    ] Launching Daemon at Fri Jun 19 18:27:21 IST 2026
[2026-06-19 18:27:21,222.222 INFO    ] ================================================
[2026-06-19 18:27:21,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:27:21
[2026-06-19 18:27:22,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:27:22,666.666 INFO    ] Initializing speech engine...
[2026-06-19 18:27:22,673.673 INFO    ] 2026-06-19 18:27:22
[2026-06-19 18:27:22,972.972 INFO    ] 2026-06-19 18:27:22
[2026-06-19 18:27:23,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:27:23,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:27:23,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:27:23,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:27:23,364.364 INFO    ] time= 19/06/2026 18:27:23
[2026-06-19 18:27:23,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:27:23,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:27:23,486.486 INFO    ] No existing commands found in stream
[2026-06-19 18:27:28,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:27:28,505.505 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 18:27:31,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:27:31,248.248 INFO    ] Checking for system updates...
[2026-06-19 18:27:31,285.285 INFO    ] 200
[2026-06-19 18:27:31,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:31,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:27:31,352.352 INFO    ] No update needed
[2026-06-19 18:27:31,355.355 INFO    ] Checking for camera pi updates...
[2026-06-19 18:27:31,399.399 INFO    ] 200
[2026-06-19 18:27:31,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:31,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:27:31,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:27:31,512.512 INFO    ] No camera update needed
[2026-06-19 18:27:31,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:27:31,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:27:31,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:27:31,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:27:33,573.573 INFO    ] ================================================
[2026-06-19 18:27:33,588.588 INFO    ] Launching Daemon at Fri Jun 19 18:27:33 IST 2026
[2026-06-19 18:27:33,600.600 INFO    ] ================================================
[2026-06-19 18:27:34,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:27:34
[2026-06-19 18:27:34,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:27:35,056.056 INFO    ] Initializing speech engine...
[2026-06-19 18:27:35,068.068 INFO    ] 2026-06-19 18:27:35
[2026-06-19 18:27:35,319.319 INFO    ] 2026-06-19 18:27:35
[2026-06-19 18:27:35,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:27:35,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:27:35,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:27:35,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:27:35,802.802 INFO    ] time= 19/06/2026 18:27:35
[2026-06-19 18:27:35,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:27:35,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:27:36,033.033 INFO    ] No existing commands found in stream
[2026-06-19 18:27:41,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:27:41,060.060 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 18:27:43,505.505 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:27:43,508.508 INFO    ] Checking for system updates...
[2026-06-19 18:27:43,546.546 INFO    ] 200
[2026-06-19 18:27:43,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:43,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:27:43,606.606 INFO    ] No update needed
[2026-06-19 18:27:43,609.609 INFO    ] Checking for camera pi updates...
[2026-06-19 18:27:43,644.644 INFO    ] 200
[2026-06-19 18:27:43,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:43,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:27:43,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:27:43,744.744 INFO    ] No camera update needed
[2026-06-19 18:27:43,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:27:43,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:27:43,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:27:43,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:27:45,806.806 INFO    ] ================================================
[2026-06-19 18:27:45,821.821 INFO    ] Launching Daemon at Fri Jun 19 18:27:45 IST 2026
[2026-06-19 18:27:45,832.832 INFO    ] ================================================
[2026-06-19 18:27:46,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:27:46
[2026-06-19 18:27:47,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:27:47,482.482 INFO    ] Initializing speech engine...
[2026-06-19 18:27:47,490.490 INFO    ] 2026-06-19 18:27:47
[2026-06-19 18:27:47,768.768 INFO    ] 2026-06-19 18:27:47
[2026-06-19 18:27:47,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:27:48,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:27:48,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:27:48,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:27:48,194.194 INFO    ] time= 19/06/2026 18:27:48
[2026-06-19 18:27:48,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:27:48,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:27:48,360.360 INFO    ] No existing commands found in stream
[2026-06-19 18:27:53,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:27:53,393.393 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 18:27:56,537.537 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:27:56,540.540 INFO    ] Checking for system updates...
[2026-06-19 18:27:56,576.576 INFO    ] 200
[2026-06-19 18:27:56,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:56,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:27:56,645.645 INFO    ] No update needed
[2026-06-19 18:27:56,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 18:27:56,686.686 INFO    ] 200
[2026-06-19 18:27:56,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:27:56,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:27:56,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:27:56,787.787 INFO    ] No camera update needed
[2026-06-19 18:27:56,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:27:56,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:27:56,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:27:56,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:27:58,842.842 INFO    ] ================================================
[2026-06-19 18:27:58,857.857 INFO    ] Launching Daemon at Fri Jun 19 18:27:58 IST 2026
[2026-06-19 18:27:58,869.869 INFO    ] ================================================
[2026-06-19 18:27:59,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:27:59
[2026-06-19 18:28:00,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:28:00,524.524 INFO    ] Initializing speech engine...
[2026-06-19 18:28:00,536.536 INFO    ] 2026-06-19 18:28:00
[2026-06-19 18:28:00,851.851 INFO    ] 2026-06-19 18:28:00
[2026-06-19 18:28:00,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:28:01,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:28:01,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:28:01,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:28:01,294.294 INFO    ] time= 19/06/2026 18:28:01
[2026-06-19 18:28:01,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:28:01,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:28:01,386.386 INFO    ] No existing commands found in stream
[2026-06-19 18:28:06,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:28:06,403.403 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 18:28:07,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:28:07,944.944 INFO    ] Checking for system updates...
[2026-06-19 18:28:07,980.980 INFO    ] 200
[2026-06-19 18:28:07,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:08,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:28:08,042.042 INFO    ] No update needed
[2026-06-19 18:28:08,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 18:28:08,077.077 INFO    ] 200
[2026-06-19 18:28:08,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:08,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:28:08,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:28:08,176.176 INFO    ] No camera update needed
[2026-06-19 18:28:08,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:28:08,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:28:08,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:28:08,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:28:10,231.231 INFO    ] ================================================
[2026-06-19 18:28:10,246.246 INFO    ] Launching Daemon at Fri Jun 19 18:28:10 IST 2026
[2026-06-19 18:28:10,258.258 INFO    ] ================================================
[2026-06-19 18:28:10,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:28:10
[2026-06-19 18:28:11,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:28:11,701.701 INFO    ] Initializing speech engine...
[2026-06-19 18:28:11,710.710 INFO    ] 2026-06-19 18:28:11
[2026-06-19 18:28:12,001.001 INFO    ] 2026-06-19 18:28:11
[2026-06-19 18:28:12,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:28:12,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:28:12,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:28:12,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:28:12,414.414 INFO    ] time= 19/06/2026 18:28:12
[2026-06-19 18:28:12,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:28:12,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:28:12,589.589 INFO    ] No existing commands found in stream
[2026-06-19 18:28:17,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:28:17,627.627 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 18:28:20,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:28:20,212.212 INFO    ] Checking for system updates...
[2026-06-19 18:28:20,247.247 INFO    ] 200
[2026-06-19 18:28:20,250.250 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:20,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:28:20,304.304 INFO    ] No update needed
[2026-06-19 18:28:20,307.307 INFO    ] Checking for camera pi updates...
[2026-06-19 18:28:20,340.340 INFO    ] 200
[2026-06-19 18:28:20,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:20,384.384 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:28:20,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:28:20,434.434 INFO    ] No camera update needed
[2026-06-19 18:28:20,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:28:20,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:28:20,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:28:20,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:28:22,490.490 INFO    ] ================================================
[2026-06-19 18:28:22,504.504 INFO    ] Launching Daemon at Fri Jun 19 18:28:22 IST 2026
[2026-06-19 18:28:22,516.516 INFO    ] ================================================
[2026-06-19 18:28:23,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:28:23
[2026-06-19 18:28:23,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:28:23,921.921 INFO    ] Initializing speech engine...
[2026-06-19 18:28:23,928.928 INFO    ] 2026-06-19 18:28:23
[2026-06-19 18:28:24,224.224 INFO    ] 2026-06-19 18:28:24
[2026-06-19 18:28:24,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:28:24,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:28:24,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:28:24,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:28:24,633.633 INFO    ] time= 19/06/2026 18:28:24
[2026-06-19 18:28:24,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:28:24,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:28:24,786.786 INFO    ] No existing commands found in stream
[2026-06-19 18:28:29,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:28:29,813.813 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 18:28:30,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:28:30,765.765 INFO    ] Checking for system updates...
[2026-06-19 18:28:30,805.805 INFO    ] 200
[2026-06-19 18:28:30,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:30,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:28:30,870.870 INFO    ] No update needed
[2026-06-19 18:28:30,873.873 INFO    ] Checking for camera pi updates...
[2026-06-19 18:28:30,910.910 INFO    ] 200
[2026-06-19 18:28:30,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:30,958.958 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:28:31,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:28:31,109.109 INFO    ] No camera update needed
[2026-06-19 18:28:31,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:28:31,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:28:31,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:28:31,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:28:33,172.172 INFO    ] ================================================
[2026-06-19 18:28:33,187.187 INFO    ] Launching Daemon at Fri Jun 19 18:28:33 IST 2026
[2026-06-19 18:28:33,198.198 INFO    ] ================================================
[2026-06-19 18:28:33,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:28:33
[2026-06-19 18:28:34,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:28:34,601.601 INFO    ] Initializing speech engine...
[2026-06-19 18:28:34,607.607 INFO    ] 2026-06-19 18:28:34
[2026-06-19 18:28:34,899.899 INFO    ] 2026-06-19 18:28:34
[2026-06-19 18:28:34,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:28:35,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:28:35,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:28:35,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:28:35,306.306 INFO    ] time= 19/06/2026 18:28:35
[2026-06-19 18:28:35,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:28:35,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:28:35,475.475 INFO    ] No existing commands found in stream
[2026-06-19 18:28:40,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:28:40,502.502 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 18:28:41,040.040 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:28:41,042.042 INFO    ] Checking for system updates...
[2026-06-19 18:28:41,078.078 INFO    ] 200
[2026-06-19 18:28:41,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:41,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:28:41,135.135 INFO    ] No update needed
[2026-06-19 18:28:41,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 18:28:41,174.174 INFO    ] 200
[2026-06-19 18:28:41,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:41,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:28:41,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:28:41,274.274 INFO    ] No camera update needed
[2026-06-19 18:28:41,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:28:41,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:28:41,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:28:41,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:28:43,330.330 INFO    ] ================================================
[2026-06-19 18:28:43,345.345 INFO    ] Launching Daemon at Fri Jun 19 18:28:43 IST 2026
[2026-06-19 18:28:43,356.356 INFO    ] ================================================
[2026-06-19 18:28:43,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:28:43
[2026-06-19 18:28:44,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:28:44,823.823 INFO    ] Initializing speech engine...
[2026-06-19 18:28:44,830.830 INFO    ] 2026-06-19 18:28:44
[2026-06-19 18:28:45,090.090 INFO    ] 2026-06-19 18:28:45
[2026-06-19 18:28:45,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:28:45,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:28:45,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:28:45,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:28:45,580.580 INFO    ] time= 19/06/2026 18:28:45
[2026-06-19 18:28:45,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:28:45,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:28:45,788.788 INFO    ] No existing commands found in stream
[2026-06-19 18:28:50,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:28:50,802.802 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 18:28:53,733.733 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:28:53,736.736 INFO    ] Checking for system updates...
[2026-06-19 18:28:53,772.772 INFO    ] 200
[2026-06-19 18:28:53,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:53,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:28:53,832.832 INFO    ] No update needed
[2026-06-19 18:28:53,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 18:28:53,873.873 INFO    ] 200
[2026-06-19 18:28:53,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:28:53,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:28:53,970.970 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:28:53,973.973 INFO    ] No camera update needed
[2026-06-19 18:28:53,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:28:53,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:28:53,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:28:53,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:28:56,031.031 INFO    ] ================================================
[2026-06-19 18:28:56,046.046 INFO    ] Launching Daemon at Fri Jun 19 18:28:56 IST 2026
[2026-06-19 18:28:56,057.057 INFO    ] ================================================
[2026-06-19 18:28:56,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:28:56
[2026-06-19 18:28:57,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:28:57,515.515 INFO    ] Initializing speech engine...
[2026-06-19 18:28:57,532.532 INFO    ] 2026-06-19 18:28:57
[2026-06-19 18:28:57,807.807 INFO    ] 2026-06-19 18:28:57
[2026-06-19 18:28:57,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:28:58,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:28:58,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:28:58,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:28:58,217.217 INFO    ] time= 19/06/2026 18:28:58
[2026-06-19 18:28:58,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:28:58,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:28:58,416.416 INFO    ] No existing commands found in stream
[2026-06-19 18:29:03,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:29:03,449.449 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 18:29:07,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:29:07,477.477 INFO    ] Checking for system updates...
[2026-06-19 18:29:07,515.515 INFO    ] 200
[2026-06-19 18:29:07,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:29:07,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:29:07,573.573 INFO    ] No update needed
[2026-06-19 18:29:07,576.576 INFO    ] Checking for camera pi updates...
[2026-06-19 18:29:07,609.609 INFO    ] 200
[2026-06-19 18:29:07,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:29:07,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:29:07,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:29:07,703.703 INFO    ] No camera update needed
[2026-06-19 18:29:07,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:29:07,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:29:07,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:29:07,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:29:09,758.758 INFO    ] ================================================
[2026-06-19 18:29:09,773.773 INFO    ] Launching Daemon at Fri Jun 19 18:29:09 IST 2026
[2026-06-19 18:29:09,784.784 INFO    ] ================================================
[2026-06-19 18:29:10,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:29:10
[2026-06-19 18:29:10,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:29:11,245.245 INFO    ] Initializing speech engine...
[2026-06-19 18:29:11,254.254 INFO    ] 2026-06-19 18:29:11
[2026-06-19 18:29:11,518.518 INFO    ] 2026-06-19 18:29:11
[2026-06-19 18:29:11,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:29:11,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:29:11,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:29:11,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:29:12,022.022 INFO    ] time= 19/06/2026 18:29:11
[2026-06-19 18:29:12,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:29:12,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:29:12,218.218 INFO    ] No existing commands found in stream
[2026-06-19 18:29:17,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:29:17,244.244 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 18:29:18,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:29:18,757.757 INFO    ] Checking for system updates...
[2026-06-19 18:29:18,793.793 INFO    ] 200
[2026-06-19 18:29:18,796.796 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:29:18,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:29:18,859.859 INFO    ] No update needed
[2026-06-19 18:29:18,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 18:29:18,897.897 INFO    ] 200
[2026-06-19 18:29:18,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:29:18,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:29:18,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:29:18,974.974 INFO    ] No camera update needed
[2026-06-19 18:29:18,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:29:18,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:29:18,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:29:18,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:29:21,034.034 INFO    ] ================================================
[2026-06-19 18:29:21,049.049 INFO    ] Launching Daemon at Fri Jun 19 18:29:21 IST 2026
[2026-06-19 18:29:21,060.060 INFO    ] ================================================
[2026-06-19 18:29:21,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:29:21
[2026-06-19 18:29:22,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:29:22,482.482 INFO    ] Initializing speech engine...
[2026-06-19 18:29:22,491.491 INFO    ] 2026-06-19 18:29:22
[2026-06-19 18:29:22,745.745 INFO    ] 2026-06-19 18:29:22
[2026-06-19 18:29:22,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:29:22,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:29:23,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:29:23,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:29:23,161.161 INFO    ] time= 19/06/2026 18:29:23
[2026-06-19 18:29:23,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:29:23,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:29:23,318.318 INFO    ] No existing commands found in stream
[2026-06-19 18:29:28,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:29:28,333.333 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 18:29:31,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:29:31,527.527 INFO    ] Checking for system updates...
[2026-06-19 18:29:31,565.565 INFO    ] 200
[2026-06-19 18:29:31,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:29:31,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:29:31,631.631 INFO    ] No update needed
[2026-06-19 18:29:31,634.634 INFO    ] Checking for camera pi updates...
[2026-06-19 18:29:31,670.670 INFO    ] 200
[2026-06-19 18:29:31,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:29:31,721.721 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:29:31,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:29:31,788.788 INFO    ] No camera update needed
[2026-06-19 18:29:31,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:29:31,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:29:31,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:29:31,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:29:33,849.849 INFO    ] ================================================
[2026-06-19 18:29:33,865.865 INFO    ] Launching Daemon at Fri Jun 19 18:29:33 IST 2026
[2026-06-19 18:29:33,876.876 INFO    ] ================================================
[2026-06-19 18:29:34,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:29:34
[2026-06-19 18:29:35,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:29:35,488.488 INFO    ] Initializing speech engine...
[2026-06-19 18:29:35,497.497 INFO    ] 2026-06-19 18:29:35
[2026-06-19 18:29:35,785.785 INFO    ] 2026-06-19 18:29:35
[2026-06-19 18:29:35,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:29:36,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:29:36,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:29:36,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:29:36,340.340 INFO    ] time= 19/06/2026 18:29:36
[2026-06-19 18:29:36,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:29:36,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:29:36,498.498 INFO    ] No existing commands found in stream
[2026-06-19 18:29:41,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:29:41,519.519 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 18:29:46,993.993 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:29:46,996.996 INFO    ] Checking for system updates...
[2026-06-19 18:29:47,035.035 INFO    ] 200
[2026-06-19 18:29:47,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:29:47,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:29:47,094.094 INFO    ] No update needed
[2026-06-19 18:29:47,097.097 INFO    ] Checking for camera pi updates...
[2026-06-19 18:29:47,133.133 INFO    ] 200
[2026-06-19 18:29:47,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:29:47,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:29:47,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:29:47,226.226 INFO    ] No camera update needed
[2026-06-19 18:29:47,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:29:47,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:29:47,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:29:47,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:29:49,283.283 INFO    ] ================================================
[2026-06-19 18:29:49,298.298 INFO    ] Launching Daemon at Fri Jun 19 18:29:49 IST 2026
[2026-06-19 18:29:49,309.309 INFO    ] ================================================
[2026-06-19 18:29:49,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:29:49
[2026-06-19 18:29:50,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:29:50,768.768 INFO    ] Initializing speech engine...
[2026-06-19 18:29:50,794.794 INFO    ] 2026-06-19 18:29:50
[2026-06-19 18:29:51,072.072 INFO    ] 2026-06-19 18:29:51
[2026-06-19 18:29:51,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:29:51,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:29:51,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:29:51,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:29:51,494.494 INFO    ] time= 19/06/2026 18:29:51
[2026-06-19 18:29:51,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:29:51,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:29:51,657.657 INFO    ] No existing commands found in stream
[2026-06-19 18:29:56,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:29:56,685.685 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 18:29:59,875.875 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:29:59,878.878 INFO    ] Checking for system updates...
[2026-06-19 18:29:59,915.915 INFO    ] 200
[2026-06-19 18:29:59,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:29:59,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:29:59,974.974 INFO    ] No update needed
[2026-06-19 18:29:59,977.977 INFO    ] Checking for camera pi updates...
[2026-06-19 18:30:00,010.010 INFO    ] 200
[2026-06-19 18:30:00,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:30:00,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:30:00,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:30:00,103.103 INFO    ] No camera update needed
[2026-06-19 18:30:00,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:30:00,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:30:00,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:30:00,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:30:02,158.158 INFO    ] ================================================
[2026-06-19 18:30:02,173.173 INFO    ] Launching Daemon at Fri Jun 19 18:30:02 IST 2026
[2026-06-19 18:30:02,185.185 INFO    ] ================================================
[2026-06-19 18:30:02,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:30:02
[2026-06-19 18:30:04,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:30:04,599.599 INFO    ] Initializing speech engine...
[2026-06-19 18:30:04,603.603 INFO    ] 2026-06-19 18:30:04
[2026-06-19 18:30:04,984.984 INFO    ] 2026-06-19 18:30:04
[2026-06-19 18:30:05,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:30:05,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:30:05,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:30:05,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:30:05,567.567 INFO    ] time= 19/06/2026 18:30:05
[2026-06-19 18:30:05,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:30:05,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:30:05,728.728 INFO    ] No existing commands found in stream
[2026-06-19 18:30:10,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:30:10,756.756 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 18:30:13,632.632 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:30:13,634.634 INFO    ] Checking for system updates...
[2026-06-19 18:30:13,671.671 INFO    ] 200
[2026-06-19 18:30:13,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:30:13,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:30:13,730.730 INFO    ] No update needed
[2026-06-19 18:30:13,733.733 INFO    ] Checking for camera pi updates...
[2026-06-19 18:30:13,767.767 INFO    ] 200
[2026-06-19 18:30:13,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:30:13,810.810 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:30:13,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:30:13,860.860 INFO    ] No camera update needed
[2026-06-19 18:30:13,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:30:13,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:30:13,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:30:13,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:30:15,917.917 INFO    ] ================================================
[2026-06-19 18:30:15,933.933 INFO    ] Launching Daemon at Fri Jun 19 18:30:15 IST 2026
[2026-06-19 18:30:15,944.944 INFO    ] ================================================
[2026-06-19 18:30:16,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:30:16
[2026-06-19 18:30:17,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:30:17,389.389 INFO    ] Initializing speech engine...
[2026-06-19 18:30:17,396.396 INFO    ] 2026-06-19 18:30:17
[2026-06-19 18:30:17,659.659 INFO    ] 2026-06-19 18:30:17
[2026-06-19 18:30:17,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:30:17,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:30:17,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:30:18,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:30:18,136.136 INFO    ] time= 19/06/2026 18:30:18
[2026-06-19 18:30:18,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:30:18,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:30:18,360.360 INFO    ] No existing commands found in stream
[2026-06-19 18:30:23,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:30:23,378.378 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 18:30:24,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:30:24,843.843 INFO    ] Checking for system updates...
[2026-06-19 18:30:24,884.884 INFO    ] 200
[2026-06-19 18:30:24,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:30:24,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:30:24,941.941 INFO    ] No update needed
[2026-06-19 18:30:24,943.943 INFO    ] Checking for camera pi updates...
[2026-06-19 18:30:24,977.977 INFO    ] 200
[2026-06-19 18:30:24,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:30:25,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:30:25,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:30:25,077.077 INFO    ] No camera update needed
[2026-06-19 18:30:25,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:30:25,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:30:25,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:30:25,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:30:27,132.132 INFO    ] ================================================
[2026-06-19 18:30:27,148.148 INFO    ] Launching Daemon at Fri Jun 19 18:30:27 IST 2026
[2026-06-19 18:30:27,158.158 INFO    ] ================================================
[2026-06-19 18:30:27,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:30:27
[2026-06-19 18:30:28,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:30:28,560.560 INFO    ] Initializing speech engine...
[2026-06-19 18:30:28,583.583 INFO    ] 2026-06-19 18:30:28
[2026-06-19 18:30:28,839.839 INFO    ] 2026-06-19 18:30:28
[2026-06-19 18:30:28,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:30:29,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:30:29,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:30:29,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:30:29,325.325 INFO    ] time= 19/06/2026 18:30:29
[2026-06-19 18:30:29,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:30:29,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:30:29,545.545 INFO    ] No existing commands found in stream
[2026-06-19 18:30:34,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:30:34,570.570 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 18:30:36,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:30:36,123.123 INFO    ] Checking for system updates...
[2026-06-19 18:30:36,160.160 INFO    ] 200
[2026-06-19 18:30:36,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:30:36,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:30:36,218.218 INFO    ] No update needed
[2026-06-19 18:30:36,221.221 INFO    ] Checking for camera pi updates...
[2026-06-19 18:30:36,254.254 INFO    ] 200
[2026-06-19 18:30:36,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:30:36,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:30:36,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:30:36,444.444 INFO    ] No camera update needed
[2026-06-19 18:30:36,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:30:36,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:30:36,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:30:36,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:30:38,500.500 INFO    ] ================================================
[2026-06-19 18:30:38,515.515 INFO    ] Launching Daemon at Fri Jun 19 18:30:38 IST 2026
[2026-06-19 18:30:38,527.527 INFO    ] ================================================
[2026-06-19 18:30:39,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:30:39
[2026-06-19 18:30:39,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:30:40,021.021 INFO    ] Initializing speech engine...
[2026-06-19 18:30:40,029.029 INFO    ] 2026-06-19 18:30:40
[2026-06-19 18:30:40,301.301 INFO    ] 2026-06-19 18:30:40
[2026-06-19 18:30:40,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:30:40,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:30:40,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:30:40,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:30:40,719.719 INFO    ] time= 19/06/2026 18:30:40
[2026-06-19 18:30:40,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:30:40,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:30:40,806.806 INFO    ] No existing commands found in stream
[2026-06-19 18:30:45,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:30:45,839.839 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 18:30:50,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:30:50,228.228 INFO    ] Checking for system updates...
[2026-06-19 18:30:50,270.270 INFO    ] 200
[2026-06-19 18:30:50,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:30:50,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:30:50,335.335 INFO    ] No update needed
[2026-06-19 18:30:50,338.338 INFO    ] Checking for camera pi updates...
[2026-06-19 18:30:50,375.375 INFO    ] 200
[2026-06-19 18:30:50,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:30:50,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:30:50,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:30:50,458.458 INFO    ] No camera update needed
[2026-06-19 18:30:50,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:30:50,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:30:50,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:30:50,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:30:52,523.523 INFO    ] ================================================
[2026-06-19 18:30:52,539.539 INFO    ] Launching Daemon at Fri Jun 19 18:30:52 IST 2026
[2026-06-19 18:30:52,550.550 INFO    ] ================================================
[2026-06-19 18:30:53,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:30:53
[2026-06-19 18:30:53,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:30:54,078.078 INFO    ] Initializing speech engine...
[2026-06-19 18:30:54,088.088 INFO    ] 2026-06-19 18:30:54
[2026-06-19 18:30:54,354.354 INFO    ] 2026-06-19 18:30:54
[2026-06-19 18:30:54,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:30:54,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:30:54,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:30:54,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:30:54,821.821 INFO    ] time= 19/06/2026 18:30:54
[2026-06-19 18:30:54,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:30:54,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:30:55,025.025 INFO    ] No existing commands found in stream
[2026-06-19 18:31:00,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:31:00,055.055 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 18:31:01,060.060 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:31:01,063.063 INFO    ] Checking for system updates...
[2026-06-19 18:31:01,118.118 INFO    ] 200
[2026-06-19 18:31:01,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:01,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:31:01,177.177 INFO    ] No update needed
[2026-06-19 18:31:01,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 18:31:01,213.213 INFO    ] 200
[2026-06-19 18:31:01,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:01,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:31:01,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:31:01,312.312 INFO    ] No camera update needed
[2026-06-19 18:31:01,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:31:01,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:31:01,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:31:01,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:31:03,370.370 INFO    ] ================================================
[2026-06-19 18:31:03,385.385 INFO    ] Launching Daemon at Fri Jun 19 18:31:03 IST 2026
[2026-06-19 18:31:03,397.397 INFO    ] ================================================
[2026-06-19 18:31:04,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:31:04
[2026-06-19 18:31:04,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:31:04,982.982 INFO    ] Initializing speech engine...
[2026-06-19 18:31:05,001.001 INFO    ] 2026-06-19 18:31:04
[2026-06-19 18:31:05,282.282 INFO    ] 2026-06-19 18:31:05
[2026-06-19 18:31:05,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:31:05,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:31:05,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:31:05,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:31:05,779.779 INFO    ] time= 19/06/2026 18:31:05
[2026-06-19 18:31:05,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:31:05,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:31:05,995.995 INFO    ] No existing commands found in stream
[2026-06-19 18:31:11,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:31:11,021.021 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 18:31:12,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:31:12,016.016 INFO    ] Checking for system updates...
[2026-06-19 18:31:12,053.053 INFO    ] 200
[2026-06-19 18:31:12,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:12,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:31:12,112.112 INFO    ] No update needed
[2026-06-19 18:31:12,114.114 INFO    ] Checking for camera pi updates...
[2026-06-19 18:31:12,152.152 INFO    ] 200
[2026-06-19 18:31:12,155.155 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:12,198.198 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:31:12,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:31:12,245.245 INFO    ] No camera update needed
[2026-06-19 18:31:12,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:31:12,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:31:12,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:31:12,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:31:14,303.303 INFO    ] ================================================
[2026-06-19 18:31:14,319.319 INFO    ] Launching Daemon at Fri Jun 19 18:31:14 IST 2026
[2026-06-19 18:31:14,330.330 INFO    ] ================================================
[2026-06-19 18:31:14,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:31:14
[2026-06-19 18:31:15,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:31:15,778.778 INFO    ] Initializing speech engine...
[2026-06-19 18:31:15,784.784 INFO    ] 2026-06-19 18:31:15
[2026-06-19 18:31:16,082.082 INFO    ] 2026-06-19 18:31:16
[2026-06-19 18:31:16,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:31:16,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:31:16,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:31:16,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:31:16,503.503 INFO    ] time= 19/06/2026 18:31:16
[2026-06-19 18:31:16,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:31:16,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:31:16,678.678 INFO    ] No existing commands found in stream
[2026-06-19 18:31:21,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:31:21,711.711 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 18:31:23,685.685 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:31:23,688.688 INFO    ] Checking for system updates...
[2026-06-19 18:31:23,728.728 INFO    ] 200
[2026-06-19 18:31:23,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:23,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:31:23,799.799 INFO    ] No update needed
[2026-06-19 18:31:23,802.802 INFO    ] Checking for camera pi updates...
[2026-06-19 18:31:23,839.839 INFO    ] 200
[2026-06-19 18:31:23,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:23,893.893 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:31:23,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:31:23,927.927 INFO    ] No camera update needed
[2026-06-19 18:31:23,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:31:23,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:31:23,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:31:23,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:31:25,986.986 INFO    ] ================================================
[2026-06-19 18:31:26,004.004 INFO    ] Launching Daemon at Fri Jun 19 18:31:25 IST 2026
[2026-06-19 18:31:26,015.015 INFO    ] ================================================
[2026-06-19 18:31:26,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:31:26
[2026-06-19 18:31:27,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:31:27,630.630 INFO    ] Initializing speech engine...
[2026-06-19 18:31:27,639.639 INFO    ] 2026-06-19 18:31:27
[2026-06-19 18:31:27,911.911 INFO    ] 2026-06-19 18:31:27
[2026-06-19 18:31:27,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:31:28,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:31:28,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:31:28,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:31:28,403.403 INFO    ] time= 19/06/2026 18:31:28
[2026-06-19 18:31:28,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:31:28,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:31:28,619.619 INFO    ] No existing commands found in stream
[2026-06-19 18:31:33,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:31:33,648.648 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 18:31:37,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:31:37,601.601 INFO    ] Checking for system updates...
[2026-06-19 18:31:37,638.638 INFO    ] 200
[2026-06-19 18:31:37,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:37,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:31:37,697.697 INFO    ] No update needed
[2026-06-19 18:31:37,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 18:31:37,734.734 INFO    ] 200
[2026-06-19 18:31:37,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:37,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:31:37,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:31:37,836.836 INFO    ] No camera update needed
[2026-06-19 18:31:37,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:31:37,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:31:37,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:31:37,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:31:39,894.894 INFO    ] ================================================
[2026-06-19 18:31:39,910.910 INFO    ] Launching Daemon at Fri Jun 19 18:31:39 IST 2026
[2026-06-19 18:31:39,922.922 INFO    ] ================================================
[2026-06-19 18:31:40,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:31:40
[2026-06-19 18:31:41,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:31:41,404.404 INFO    ] Initializing speech engine...
[2026-06-19 18:31:41,416.416 INFO    ] 2026-06-19 18:31:41
[2026-06-19 18:31:41,682.682 INFO    ] 2026-06-19 18:31:41
[2026-06-19 18:31:41,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:31:41,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:31:41,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:31:42,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:31:42,154.154 INFO    ] time= 19/06/2026 18:31:42
[2026-06-19 18:31:42,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:31:42,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:31:42,360.360 INFO    ] No existing commands found in stream
[2026-06-19 18:31:47,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:31:47,384.384 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 18:31:50,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:31:50,039.039 INFO    ] Checking for system updates...
[2026-06-19 18:31:50,076.076 INFO    ] 200
[2026-06-19 18:31:50,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:50,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:31:50,135.135 INFO    ] No update needed
[2026-06-19 18:31:50,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 18:31:50,175.175 INFO    ] 200
[2026-06-19 18:31:50,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:31:50,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:31:50,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:31:50,260.260 INFO    ] No camera update needed
[2026-06-19 18:31:50,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:31:50,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:31:50,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:31:50,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:31:52,317.317 INFO    ] ================================================
[2026-06-19 18:31:52,333.333 INFO    ] Launching Daemon at Fri Jun 19 18:31:52 IST 2026
[2026-06-19 18:31:52,344.344 INFO    ] ================================================
[2026-06-19 18:31:52,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:31:52
[2026-06-19 18:31:53,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:31:53,855.855 INFO    ] Initializing speech engine...
[2026-06-19 18:31:53,865.865 INFO    ] 2026-06-19 18:31:53
[2026-06-19 18:31:54,110.110 INFO    ] 2026-06-19 18:31:54
[2026-06-19 18:31:54,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:31:54,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:31:54,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:31:54,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:31:54,578.578 INFO    ] time= 19/06/2026 18:31:54
[2026-06-19 18:31:54,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:31:54,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:31:54,812.812 INFO    ] No existing commands found in stream
[2026-06-19 18:31:59,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:31:59,837.837 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 18:32:01,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:32:01,870.870 INFO    ] Checking for system updates...
[2026-06-19 18:32:01,940.940 INFO    ] 200
[2026-06-19 18:32:01,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:02,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:32:02,063.063 INFO    ] No update needed
[2026-06-19 18:32:02,066.066 INFO    ] Checking for camera pi updates...
[2026-06-19 18:32:02,111.111 INFO    ] 200
[2026-06-19 18:32:02,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:02,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:32:02,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:32:02,207.207 INFO    ] No camera update needed
[2026-06-19 18:32:02,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:32:02,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:32:02,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:32:02,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:32:04,269.269 INFO    ] ================================================
[2026-06-19 18:32:04,284.284 INFO    ] Launching Daemon at Fri Jun 19 18:32:04 IST 2026
[2026-06-19 18:32:04,295.295 INFO    ] ================================================
[2026-06-19 18:32:04,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:32:04
[2026-06-19 18:32:05,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:32:05,826.826 INFO    ] Initializing speech engine...
[2026-06-19 18:32:05,845.845 INFO    ] 2026-06-19 18:32:05
[2026-06-19 18:32:06,102.102 INFO    ] 2026-06-19 18:32:06
[2026-06-19 18:32:06,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:32:06,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:32:06,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:32:06,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:32:06,512.512 INFO    ] time= 19/06/2026 18:32:06
[2026-06-19 18:32:06,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:32:06,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:32:06,618.618 INFO    ] No existing commands found in stream
[2026-06-19 18:32:11,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:32:11,658.658 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 18:32:13,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:32:13,706.706 INFO    ] Checking for system updates...
[2026-06-19 18:32:13,745.745 INFO    ] 200
[2026-06-19 18:32:13,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:13,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:32:13,805.805 INFO    ] No update needed
[2026-06-19 18:32:13,808.808 INFO    ] Checking for camera pi updates...
[2026-06-19 18:32:13,842.842 INFO    ] 200
[2026-06-19 18:32:13,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:13,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:32:13,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:32:13,948.948 INFO    ] No camera update needed
[2026-06-19 18:32:13,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:32:13,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:32:13,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:32:13,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:32:16,004.004 INFO    ] ================================================
[2026-06-19 18:32:16,020.020 INFO    ] Launching Daemon at Fri Jun 19 18:32:16 IST 2026
[2026-06-19 18:32:16,031.031 INFO    ] ================================================
[2026-06-19 18:32:16,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:32:16
[2026-06-19 18:32:17,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:32:17,661.661 INFO    ] Initializing speech engine...
[2026-06-19 18:32:17,673.673 INFO    ] 2026-06-19 18:32:17
[2026-06-19 18:32:17,988.988 INFO    ] 2026-06-19 18:32:17
[2026-06-19 18:32:18,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:32:18,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:32:18,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:32:18,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:32:18,497.497 INFO    ] time= 19/06/2026 18:32:18
[2026-06-19 18:32:18,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:32:18,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:32:18,678.678 INFO    ] No existing commands found in stream
[2026-06-19 18:32:23,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:32:23,702.702 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 18:32:27,625.625 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:32:27,628.628 INFO    ] Checking for system updates...
[2026-06-19 18:32:27,669.669 INFO    ] 200
[2026-06-19 18:32:27,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:27,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:32:27,727.727 INFO    ] No update needed
[2026-06-19 18:32:27,729.729 INFO    ] Checking for camera pi updates...
[2026-06-19 18:32:27,763.763 INFO    ] 200
[2026-06-19 18:32:27,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:27,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:32:27,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:32:27,861.861 INFO    ] No camera update needed
[2026-06-19 18:32:27,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:32:27,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:32:27,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:32:27,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:32:29,915.915 INFO    ] ================================================
[2026-06-19 18:32:29,931.931 INFO    ] Launching Daemon at Fri Jun 19 18:32:29 IST 2026
[2026-06-19 18:32:29,942.942 INFO    ] ================================================
[2026-06-19 18:32:30,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:32:30
[2026-06-19 18:32:31,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:32:31,351.351 INFO    ] Initializing speech engine...
[2026-06-19 18:32:31,368.368 INFO    ] 2026-06-19 18:32:31
[2026-06-19 18:32:31,641.641 INFO    ] 2026-06-19 18:32:31
[2026-06-19 18:32:31,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:32:31,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:32:31,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:32:32,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:32:32,060.060 INFO    ] time= 19/06/2026 18:32:32
[2026-06-19 18:32:32,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:32:32,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:32:32,257.257 INFO    ] No existing commands found in stream
[2026-06-19 18:32:37,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:32:37,280.280 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 18:32:40,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:32:40,273.273 INFO    ] Checking for system updates...
[2026-06-19 18:32:40,309.309 INFO    ] 200
[2026-06-19 18:32:40,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:40,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:32:40,368.368 INFO    ] No update needed
[2026-06-19 18:32:40,371.371 INFO    ] Checking for camera pi updates...
[2026-06-19 18:32:40,405.405 INFO    ] 200
[2026-06-19 18:32:40,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:40,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:32:40,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:32:40,596.596 INFO    ] No camera update needed
[2026-06-19 18:32:40,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:32:40,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:32:40,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:32:40,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:32:42,652.652 INFO    ] ================================================
[2026-06-19 18:32:42,666.666 INFO    ] Launching Daemon at Fri Jun 19 18:32:42 IST 2026
[2026-06-19 18:32:42,677.677 INFO    ] ================================================
[2026-06-19 18:32:43,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:32:43
[2026-06-19 18:32:43,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:32:44,097.097 INFO    ] Initializing speech engine...
[2026-06-19 18:32:44,107.107 INFO    ] 2026-06-19 18:32:44
[2026-06-19 18:32:44,353.353 INFO    ] 2026-06-19 18:32:44
[2026-06-19 18:32:44,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:32:44,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:32:44,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:32:44,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:32:44,722.722 INFO    ] time= 19/06/2026 18:32:44
[2026-06-19 18:32:44,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:32:44,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:32:44,909.909 INFO    ] No existing commands found in stream
[2026-06-19 18:32:49,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:32:49,932.932 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 18:32:53,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:32:53,760.760 INFO    ] Checking for system updates...
[2026-06-19 18:32:53,796.796 INFO    ] 200
[2026-06-19 18:32:53,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:53,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:32:53,855.855 INFO    ] No update needed
[2026-06-19 18:32:53,858.858 INFO    ] Checking for camera pi updates...
[2026-06-19 18:32:53,891.891 INFO    ] 200
[2026-06-19 18:32:53,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:32:53,941.941 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:32:53,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:32:53,989.989 INFO    ] No camera update needed
[2026-06-19 18:32:53,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:32:53,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:32:53,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:32:54,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:32:56,044.044 INFO    ] ================================================
[2026-06-19 18:32:56,058.058 INFO    ] Launching Daemon at Fri Jun 19 18:32:56 IST 2026
[2026-06-19 18:32:56,069.069 INFO    ] ================================================
[2026-06-19 18:32:56,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:32:56
[2026-06-19 18:32:57,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:32:57,526.526 INFO    ] Initializing speech engine...
[2026-06-19 18:32:57,535.535 INFO    ] 2026-06-19 18:32:57
[2026-06-19 18:32:57,783.783 INFO    ] 2026-06-19 18:32:57
[2026-06-19 18:32:57,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:32:58,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:32:58,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:32:58,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:32:58,263.263 INFO    ] time= 19/06/2026 18:32:58
[2026-06-19 18:32:58,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:32:58,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:32:58,473.473 INFO    ] No existing commands found in stream
[2026-06-19 18:33:03,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:33:03,509.509 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 18:33:07,455.455 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:33:07,458.458 INFO    ] Checking for system updates...
[2026-06-19 18:33:07,498.498 INFO    ] 200
[2026-06-19 18:33:07,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:33:07,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:33:07,556.556 INFO    ] No update needed
[2026-06-19 18:33:07,559.559 INFO    ] Checking for camera pi updates...
[2026-06-19 18:33:07,593.593 INFO    ] 200
[2026-06-19 18:33:07,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:33:07,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:33:07,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:33:07,701.701 INFO    ] No camera update needed
[2026-06-19 18:33:07,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:33:07,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:33:07,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:33:07,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:33:09,759.759 INFO    ] ================================================
[2026-06-19 18:33:09,773.773 INFO    ] Launching Daemon at Fri Jun 19 18:33:09 IST 2026
[2026-06-19 18:33:09,784.784 INFO    ] ================================================
[2026-06-19 18:33:10,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:33:10
[2026-06-19 18:33:10,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:33:11,280.280 INFO    ] Initializing speech engine...
[2026-06-19 18:33:11,290.290 INFO    ] 2026-06-19 18:33:11
[2026-06-19 18:33:11,556.556 INFO    ] 2026-06-19 18:33:11
[2026-06-19 18:33:11,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:33:11,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:33:11,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:33:11,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:33:12,026.026 INFO    ] time= 19/06/2026 18:33:11
[2026-06-19 18:33:12,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:33:12,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:33:12,180.180 INFO    ] No existing commands found in stream
[2026-06-19 18:33:17,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:33:17,195.195 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 18:33:19,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:33:19,448.448 INFO    ] Checking for system updates...
[2026-06-19 18:33:19,485.485 INFO    ] 200
[2026-06-19 18:33:19,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:33:19,551.551 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:33:19,553.553 INFO    ] No update needed
[2026-06-19 18:33:19,555.555 INFO    ] Checking for camera pi updates...
[2026-06-19 18:33:19,593.593 INFO    ] 200
[2026-06-19 18:33:19,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:33:19,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:33:19,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:33:19,695.695 INFO    ] No camera update needed
[2026-06-19 18:33:19,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:33:19,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:33:19,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:33:19,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:33:21,750.750 INFO    ] ================================================
[2026-06-19 18:33:21,765.765 INFO    ] Launching Daemon at Fri Jun 19 18:33:21 IST 2026
[2026-06-19 18:33:21,776.776 INFO    ] ================================================
[2026-06-19 18:33:22,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:33:22
[2026-06-19 18:33:22,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:33:23,204.204 INFO    ] Initializing speech engine...
[2026-06-19 18:33:23,213.213 INFO    ] 2026-06-19 18:33:23
[2026-06-19 18:33:23,465.465 INFO    ] 2026-06-19 18:33:23
[2026-06-19 18:33:23,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:33:23,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:33:23,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:33:23,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:33:23,843.843 INFO    ] time= 19/06/2026 18:33:23
[2026-06-19 18:33:23,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:33:23,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:33:24,015.015 INFO    ] No existing commands found in stream
[2026-06-19 18:33:29,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:33:29,048.048 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 18:33:30,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:33:30,444.444 INFO    ] Checking for system updates...
[2026-06-19 18:33:30,482.482 INFO    ] 200
[2026-06-19 18:33:30,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:33:30,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:33:30,539.539 INFO    ] No update needed
[2026-06-19 18:33:30,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 18:33:30,580.580 INFO    ] 200
[2026-06-19 18:33:30,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:33:30,628.628 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:33:30,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:33:30,678.678 INFO    ] No camera update needed
[2026-06-19 18:33:30,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:33:30,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:33:30,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:33:30,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:33:32,736.736 INFO    ] ================================================
[2026-06-19 18:33:32,759.759 INFO    ] Launching Daemon at Fri Jun 19 18:33:32 IST 2026
[2026-06-19 18:33:32,773.773 INFO    ] ================================================
[2026-06-19 18:33:33,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:33:33
[2026-06-19 18:33:33,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:33:34,251.251 INFO    ] Initializing speech engine...
[2026-06-19 18:33:34,259.259 INFO    ] 2026-06-19 18:33:34
[2026-06-19 18:33:34,521.521 INFO    ] 2026-06-19 18:33:34
[2026-06-19 18:33:34,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:33:34,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:33:34,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:33:35,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:33:35,066.066 INFO    ] time= 19/06/2026 18:33:35
[2026-06-19 18:33:35,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:33:35,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:33:35,226.226 INFO    ] No existing commands found in stream
[2026-06-19 18:33:40,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:33:40,254.254 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 18:33:41,547.547 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:33:41,550.550 INFO    ] Checking for system updates...
[2026-06-19 18:33:41,594.594 INFO    ] 200
[2026-06-19 18:33:41,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:33:41,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:33:41,663.663 INFO    ] No update needed
[2026-06-19 18:33:41,666.666 INFO    ] Checking for camera pi updates...
[2026-06-19 18:33:41,703.703 INFO    ] 200
[2026-06-19 18:33:41,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:33:41,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:33:41,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:33:41,792.792 INFO    ] No camera update needed
[2026-06-19 18:33:41,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:33:41,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:33:41,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:33:41,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:33:43,854.854 INFO    ] ================================================
[2026-06-19 18:33:43,870.870 INFO    ] Launching Daemon at Fri Jun 19 18:33:43 IST 2026
[2026-06-19 18:33:43,881.881 INFO    ] ================================================
[2026-06-19 18:33:44,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:33:44
[2026-06-19 18:33:45,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:33:45,334.334 INFO    ] Initializing speech engine...
[2026-06-19 18:33:45,353.353 INFO    ] 2026-06-19 18:33:45
[2026-06-19 18:33:45,603.603 INFO    ] 2026-06-19 18:33:45
[2026-06-19 18:33:45,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:33:45,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:33:45,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:33:46,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:33:46,084.084 INFO    ] time= 19/06/2026 18:33:46
[2026-06-19 18:33:46,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:33:46,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:33:46,324.324 INFO    ] No existing commands found in stream
[2026-06-19 18:33:51,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:33:51,342.342 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 18:33:53,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:33:53,354.354 INFO    ] Checking for system updates...
[2026-06-19 18:33:53,406.406 INFO    ] 200
[2026-06-19 18:33:53,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 18:33:53,412.412 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 18:33:53,414.414 INFO    ] Checking for camera pi updates...
[2026-06-19 18:33:53,460.460 INFO    ] 200
[2026-06-19 18:33:53,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 18:33:53,466.466 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 18:33:53,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:33:53,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:33:53,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:33:53,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:33:55,526.526 INFO    ] ================================================
[2026-06-19 18:33:55,542.542 INFO    ] Launching Daemon at Fri Jun 19 18:33:55 IST 2026
[2026-06-19 18:33:55,553.553 INFO    ] ================================================
[2026-06-19 18:33:56,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:33:56
[2026-06-19 18:33:56,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:33:57,206.206 INFO    ] Initializing speech engine...
[2026-06-19 18:33:57,215.215 INFO    ] 2026-06-19 18:33:57
[2026-06-19 18:33:57,468.468 INFO    ] 2026-06-19 18:33:57
[2026-06-19 18:33:57,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:33:57,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:33:57,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:33:57,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:33:57,954.954 INFO    ] time= 19/06/2026 18:33:57
[2026-06-19 18:33:58,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:33:58,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:33:58,200.200 INFO    ] No existing commands found in stream
[2026-06-19 18:34:03,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:34:03,218.218 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 18:34:07,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:34:07,397.397 INFO    ] Checking for system updates...
[2026-06-19 18:34:07,433.433 INFO    ] 200
[2026-06-19 18:34:07,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:07,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:34:07,499.499 INFO    ] No update needed
[2026-06-19 18:34:07,502.502 INFO    ] Checking for camera pi updates...
[2026-06-19 18:34:07,536.536 INFO    ] 200
[2026-06-19 18:34:07,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:07,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:34:07,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:34:07,632.632 INFO    ] No camera update needed
[2026-06-19 18:34:07,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:34:07,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:34:07,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:34:07,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:34:09,687.687 INFO    ] ================================================
[2026-06-19 18:34:09,702.702 INFO    ] Launching Daemon at Fri Jun 19 18:34:09 IST 2026
[2026-06-19 18:34:09,712.712 INFO    ] ================================================
[2026-06-19 18:34:10,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:34:10
[2026-06-19 18:34:10,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:34:11,129.129 INFO    ] Initializing speech engine...
[2026-06-19 18:34:11,143.143 INFO    ] 2026-06-19 18:34:11
[2026-06-19 18:34:11,412.412 INFO    ] 2026-06-19 18:34:11
[2026-06-19 18:34:11,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:34:11,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:34:11,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:34:11,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:34:11,916.916 INFO    ] time= 19/06/2026 18:34:11
[2026-06-19 18:34:11,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:34:11,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:34:12,128.128 INFO    ] No existing commands found in stream
[2026-06-19 18:34:17,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:34:17,146.146 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 18:34:19,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:34:19,105.105 INFO    ] Checking for system updates...
[2026-06-19 18:34:19,141.141 INFO    ] 200
[2026-06-19 18:34:19,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:19,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:34:19,199.199 INFO    ] No update needed
[2026-06-19 18:34:19,201.201 INFO    ] Checking for camera pi updates...
[2026-06-19 18:34:19,235.235 INFO    ] 200
[2026-06-19 18:34:19,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:19,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:34:19,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:34:19,331.331 INFO    ] No camera update needed
[2026-06-19 18:34:19,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:34:19,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:34:19,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:34:19,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:34:21,392.392 INFO    ] ================================================
[2026-06-19 18:34:21,410.410 INFO    ] Launching Daemon at Fri Jun 19 18:34:21 IST 2026
[2026-06-19 18:34:21,421.421 INFO    ] ================================================
[2026-06-19 18:34:22,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:34:22
[2026-06-19 18:34:22,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:34:22,895.895 INFO    ] Initializing speech engine...
[2026-06-19 18:34:22,907.907 INFO    ] 2026-06-19 18:34:22
[2026-06-19 18:34:23,173.173 INFO    ] 2026-06-19 18:34:23
[2026-06-19 18:34:23,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:34:23,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:34:23,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:34:23,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:34:23,704.704 INFO    ] time= 19/06/2026 18:34:23
[2026-06-19 18:34:23,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:34:23,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:34:23,914.914 INFO    ] No existing commands found in stream
[2026-06-19 18:34:28,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:34:28,943.943 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 18:34:30,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:34:30,697.697 INFO    ] Checking for system updates...
[2026-06-19 18:34:30,733.733 INFO    ] 200
[2026-06-19 18:34:30,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:30,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:34:30,791.791 INFO    ] No update needed
[2026-06-19 18:34:30,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 18:34:30,832.832 INFO    ] 200
[2026-06-19 18:34:30,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:30,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:34:30,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:34:30,930.930 INFO    ] No camera update needed
[2026-06-19 18:34:30,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:34:30,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:34:30,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:34:30,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:34:32,988.988 INFO    ] ================================================
[2026-06-19 18:34:33,004.004 INFO    ] Launching Daemon at Fri Jun 19 18:34:32 IST 2026
[2026-06-19 18:34:33,019.019 INFO    ] ================================================
[2026-06-19 18:34:33,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:34:33
[2026-06-19 18:34:34,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:34:34,462.462 INFO    ] Initializing speech engine...
[2026-06-19 18:34:34,470.470 INFO    ] 2026-06-19 18:34:34
[2026-06-19 18:34:34,777.777 INFO    ] 2026-06-19 18:34:34
[2026-06-19 18:34:34,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:34:35,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:34:35,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:34:35,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:34:35,183.183 INFO    ] time= 19/06/2026 18:34:35
[2026-06-19 18:34:35,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:34:35,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:34:35,607.607 INFO    ] No existing commands found in stream
[2026-06-19 18:34:40,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:34:40,635.635 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 18:34:42,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:34:42,021.021 INFO    ] Checking for system updates...
[2026-06-19 18:34:42,062.062 INFO    ] 200
[2026-06-19 18:34:42,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:42,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:34:42,137.137 INFO    ] No update needed
[2026-06-19 18:34:42,139.139 INFO    ] Checking for camera pi updates...
[2026-06-19 18:34:42,178.178 INFO    ] 200
[2026-06-19 18:34:42,180.180 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:42,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:34:42,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:34:42,369.369 INFO    ] No camera update needed
[2026-06-19 18:34:42,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:34:42,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:34:42,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:34:42,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:34:44,424.424 INFO    ] ================================================
[2026-06-19 18:34:44,441.441 INFO    ] Launching Daemon at Fri Jun 19 18:34:44 IST 2026
[2026-06-19 18:34:44,453.453 INFO    ] ================================================
[2026-06-19 18:34:45,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:34:45
[2026-06-19 18:34:45,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:34:46,034.034 INFO    ] Initializing speech engine...
[2026-06-19 18:34:46,046.046 INFO    ] 2026-06-19 18:34:46
[2026-06-19 18:34:46,321.321 INFO    ] 2026-06-19 18:34:46
[2026-06-19 18:34:46,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:34:46,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:34:46,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:34:46,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:34:46,887.887 INFO    ] time= 19/06/2026 18:34:46
[2026-06-19 18:34:46,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:34:46,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:34:47,063.063 INFO    ] No existing commands found in stream
[2026-06-19 18:34:52,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:34:52,094.094 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 18:34:55,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:34:55,365.365 INFO    ] Checking for system updates...
[2026-06-19 18:34:55,401.401 INFO    ] 200
[2026-06-19 18:34:55,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:55,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:34:55,461.461 INFO    ] No update needed
[2026-06-19 18:34:55,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 18:34:55,501.501 INFO    ] 200
[2026-06-19 18:34:55,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:34:55,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:34:55,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:34:55,592.592 INFO    ] No camera update needed
[2026-06-19 18:34:55,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:34:55,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:34:55,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:34:55,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:34:57,647.647 INFO    ] ================================================
[2026-06-19 18:34:57,663.663 INFO    ] Launching Daemon at Fri Jun 19 18:34:57 IST 2026
[2026-06-19 18:34:57,674.674 INFO    ] ================================================
[2026-06-19 18:34:58,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:34:58
[2026-06-19 18:34:58,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:34:59,290.290 INFO    ] Initializing speech engine...
[2026-06-19 18:34:59,302.302 INFO    ] 2026-06-19 18:34:59
[2026-06-19 18:34:59,608.608 INFO    ] 2026-06-19 18:34:59
[2026-06-19 18:34:59,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:34:59,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:34:59,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:35:00,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:35:00,114.114 INFO    ] time= 19/06/2026 18:35:00
[2026-06-19 18:35:00,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:35:00,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:35:00,311.311 INFO    ] No existing commands found in stream
[2026-06-19 18:35:05,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:35:05,351.351 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 18:35:07,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:35:07,241.241 INFO    ] Checking for system updates...
[2026-06-19 18:35:07,279.279 INFO    ] 200
[2026-06-19 18:35:07,281.281 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:07,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:35:07,346.346 INFO    ] No update needed
[2026-06-19 18:35:07,348.348 INFO    ] Checking for camera pi updates...
[2026-06-19 18:35:07,385.385 INFO    ] 200
[2026-06-19 18:35:07,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:07,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:35:07,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:35:07,479.479 INFO    ] No camera update needed
[2026-06-19 18:35:07,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:35:07,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:35:07,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:35:07,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:35:09,535.535 INFO    ] ================================================
[2026-06-19 18:35:09,551.551 INFO    ] Launching Daemon at Fri Jun 19 18:35:09 IST 2026
[2026-06-19 18:35:09,562.562 INFO    ] ================================================
[2026-06-19 18:35:10,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:35:10
[2026-06-19 18:35:10,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:35:10,969.969 INFO    ] Initializing speech engine...
[2026-06-19 18:35:10,988.988 INFO    ] 2026-06-19 18:35:10
[2026-06-19 18:35:11,241.241 INFO    ] 2026-06-19 18:35:11
[2026-06-19 18:35:11,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:35:11,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:35:11,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:35:11,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:35:11,762.762 INFO    ] time= 19/06/2026 18:35:11
[2026-06-19 18:35:11,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:35:11,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:35:11,927.927 INFO    ] No existing commands found in stream
[2026-06-19 18:35:16,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:35:16,956.956 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 18:35:21,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:35:21,136.136 INFO    ] Checking for system updates...
[2026-06-19 18:35:21,171.171 INFO    ] 200
[2026-06-19 18:35:21,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:21,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:35:21,228.228 INFO    ] No update needed
[2026-06-19 18:35:21,231.231 INFO    ] Checking for camera pi updates...
[2026-06-19 18:35:21,268.268 INFO    ] 200
[2026-06-19 18:35:21,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:21,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:35:21,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:35:21,361.361 INFO    ] No camera update needed
[2026-06-19 18:35:21,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:35:21,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:35:21,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:35:21,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:35:23,415.415 INFO    ] ================================================
[2026-06-19 18:35:23,431.431 INFO    ] Launching Daemon at Fri Jun 19 18:35:23 IST 2026
[2026-06-19 18:35:23,443.443 INFO    ] ================================================
[2026-06-19 18:35:24,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:35:24
[2026-06-19 18:35:24,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:35:24,940.940 INFO    ] Initializing speech engine...
[2026-06-19 18:35:24,950.950 INFO    ] 2026-06-19 18:35:24
[2026-06-19 18:35:25,212.212 INFO    ] 2026-06-19 18:35:25
[2026-06-19 18:35:25,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:35:25,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:35:25,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:35:25,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:35:25,619.619 INFO    ] time= 19/06/2026 18:35:25
[2026-06-19 18:35:25,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:35:25,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:35:25,806.806 INFO    ] No existing commands found in stream
[2026-06-19 18:35:30,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:35:30,839.839 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 18:35:34,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:35:34,048.048 INFO    ] Checking for system updates...
[2026-06-19 18:35:34,084.084 INFO    ] 200
[2026-06-19 18:35:34,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:34,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:35:34,147.147 INFO    ] No update needed
[2026-06-19 18:35:34,149.149 INFO    ] Checking for camera pi updates...
[2026-06-19 18:35:34,186.186 INFO    ] 200
[2026-06-19 18:35:34,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:34,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:35:34,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:35:34,275.275 INFO    ] No camera update needed
[2026-06-19 18:35:34,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:35:34,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:35:34,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:35:34,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:35:36,330.330 INFO    ] ================================================
[2026-06-19 18:35:36,345.345 INFO    ] Launching Daemon at Fri Jun 19 18:35:36 IST 2026
[2026-06-19 18:35:36,357.357 INFO    ] ================================================
[2026-06-19 18:35:36,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:35:36
[2026-06-19 18:35:37,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:35:37,912.912 INFO    ] Initializing speech engine...
[2026-06-19 18:35:37,923.923 INFO    ] 2026-06-19 18:35:37
[2026-06-19 18:35:38,188.188 INFO    ] 2026-06-19 18:35:38
[2026-06-19 18:35:38,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:35:38,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:35:38,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:35:38,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:35:38,692.692 INFO    ] time= 19/06/2026 18:35:38
[2026-06-19 18:35:38,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:35:38,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:35:38,904.904 INFO    ] No existing commands found in stream
[2026-06-19 18:35:43,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:35:43,929.929 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 18:35:46,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:35:46,919.919 INFO    ] Checking for system updates...
[2026-06-19 18:35:46,955.955 INFO    ] 200
[2026-06-19 18:35:46,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:47,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:35:47,014.014 INFO    ] No update needed
[2026-06-19 18:35:47,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 18:35:47,054.054 INFO    ] 200
[2026-06-19 18:35:47,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:47,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:35:47,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:35:47,139.139 INFO    ] No camera update needed
[2026-06-19 18:35:47,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:35:47,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:35:47,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:35:47,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:35:49,196.196 INFO    ] ================================================
[2026-06-19 18:35:49,212.212 INFO    ] Launching Daemon at Fri Jun 19 18:35:49 IST 2026
[2026-06-19 18:35:49,223.223 INFO    ] ================================================
[2026-06-19 18:35:49,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:35:49
[2026-06-19 18:35:50,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:35:50,648.648 INFO    ] Initializing speech engine...
[2026-06-19 18:35:50,657.657 INFO    ] 2026-06-19 18:35:50
[2026-06-19 18:35:50,902.902 INFO    ] 2026-06-19 18:35:50
[2026-06-19 18:35:50,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:35:51,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:35:51,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:35:51,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:35:51,477.477 INFO    ] time= 19/06/2026 18:35:51
[2026-06-19 18:35:51,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:35:51,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:35:51,624.624 INFO    ] No existing commands found in stream
[2026-06-19 18:35:56,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:35:56,651.651 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 18:35:57,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:35:57,751.751 INFO    ] Checking for system updates...
[2026-06-19 18:35:57,791.791 INFO    ] 200
[2026-06-19 18:35:57,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:57,853.853 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:35:57,856.856 INFO    ] No update needed
[2026-06-19 18:35:57,859.859 INFO    ] Checking for camera pi updates...
[2026-06-19 18:35:57,894.894 INFO    ] 200
[2026-06-19 18:35:57,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:35:57,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:35:57,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:35:57,995.995 INFO    ] No camera update needed
[2026-06-19 18:35:57,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:35:58,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:35:58,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:35:58,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:36:00,053.053 INFO    ] ================================================
[2026-06-19 18:36:00,069.069 INFO    ] Launching Daemon at Fri Jun 19 18:36:00 IST 2026
[2026-06-19 18:36:00,081.081 INFO    ] ================================================
[2026-06-19 18:36:00,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:36:00
[2026-06-19 18:36:01,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:36:01,743.743 INFO    ] Initializing speech engine...
[2026-06-19 18:36:01,747.747 INFO    ] 2026-06-19 18:36:01
[2026-06-19 18:36:02,084.084 INFO    ] 2026-06-19 18:36:02
[2026-06-19 18:36:02,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:36:02,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:36:02,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:36:02,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:36:02,611.611 INFO    ] time= 19/06/2026 18:36:02
[2026-06-19 18:36:02,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:36:02,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:36:02,800.800 INFO    ] No existing commands found in stream
[2026-06-19 18:36:07,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:36:07,835.835 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 18:36:11,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:36:11,806.806 INFO    ] Checking for system updates...
[2026-06-19 18:36:11,846.846 INFO    ] 200
[2026-06-19 18:36:11,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:11,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:11,909.909 INFO    ] No update needed
[2026-06-19 18:36:11,912.912 INFO    ] Checking for camera pi updates...
[2026-06-19 18:36:11,946.946 INFO    ] 200
[2026-06-19 18:36:11,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:11,993.993 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:36:12,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:12,039.039 INFO    ] No camera update needed
[2026-06-19 18:36:12,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:36:12,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:36:12,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:36:12,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:36:14,096.096 INFO    ] ================================================
[2026-06-19 18:36:14,111.111 INFO    ] Launching Daemon at Fri Jun 19 18:36:14 IST 2026
[2026-06-19 18:36:14,122.122 INFO    ] ================================================
[2026-06-19 18:36:14,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:36:14
[2026-06-19 18:36:15,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:36:15,540.540 INFO    ] Initializing speech engine...
[2026-06-19 18:36:15,550.550 INFO    ] 2026-06-19 18:36:15
[2026-06-19 18:36:15,796.796 INFO    ] 2026-06-19 18:36:15
[2026-06-19 18:36:15,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:36:16,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:36:16,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:36:16,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:36:16,351.351 INFO    ] time= 19/06/2026 18:36:16
[2026-06-19 18:36:16,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:36:16,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:36:16,513.513 INFO    ] No existing commands found in stream
[2026-06-19 18:36:21,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:36:21,530.530 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 18:36:23,984.984 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:36:23,987.987 INFO    ] Checking for system updates...
[2026-06-19 18:36:24,022.022 INFO    ] 200
[2026-06-19 18:36:24,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:24,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:24,090.090 INFO    ] No update needed
[2026-06-19 18:36:24,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 18:36:24,129.129 INFO    ] 200
[2026-06-19 18:36:24,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:24,172.172 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:36:24,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:24,218.218 INFO    ] No camera update needed
[2026-06-19 18:36:24,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:36:24,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:36:24,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:36:24,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:36:26,274.274 INFO    ] ================================================
[2026-06-19 18:36:26,290.290 INFO    ] Launching Daemon at Fri Jun 19 18:36:26 IST 2026
[2026-06-19 18:36:26,301.301 INFO    ] ================================================
[2026-06-19 18:36:26,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:36:26
[2026-06-19 18:36:27,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:36:27,734.734 INFO    ] Initializing speech engine...
[2026-06-19 18:36:27,748.748 INFO    ] 2026-06-19 18:36:27
[2026-06-19 18:36:28,029.029 INFO    ] 2026-06-19 18:36:28
[2026-06-19 18:36:28,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:36:28,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:36:28,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:36:28,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:36:28,556.556 INFO    ] time= 19/06/2026 18:36:28
[2026-06-19 18:36:28,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:36:28,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:36:28,768.768 INFO    ] No existing commands found in stream
[2026-06-19 18:36:33,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:36:33,795.795 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 18:36:35,850.850 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:36:35,853.853 INFO    ] Checking for system updates...
[2026-06-19 18:36:35,894.894 INFO    ] 200
[2026-06-19 18:36:35,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:35,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:35,967.967 INFO    ] No update needed
[2026-06-19 18:36:35,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 18:36:36,007.007 INFO    ] 200
[2026-06-19 18:36:36,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:36,070.070 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:36:36,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:36,119.119 INFO    ] No camera update needed
[2026-06-19 18:36:36,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:36:36,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:36:36,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:36:36,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:36:38,174.174 INFO    ] ================================================
[2026-06-19 18:36:38,189.189 INFO    ] Launching Daemon at Fri Jun 19 18:36:38 IST 2026
[2026-06-19 18:36:38,200.200 INFO    ] ================================================
[2026-06-19 18:36:38,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:36:38
[2026-06-19 18:36:39,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:36:39,616.616 INFO    ] Initializing speech engine...
[2026-06-19 18:36:39,625.625 INFO    ] 2026-06-19 18:36:39
[2026-06-19 18:36:39,870.870 INFO    ] 2026-06-19 18:36:39
[2026-06-19 18:36:39,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:36:40,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:36:40,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:36:40,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:36:40,342.342 INFO    ] time= 19/06/2026 18:36:40
[2026-06-19 18:36:40,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:36:40,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:36:40,556.556 INFO    ] No existing commands found in stream
[2026-06-19 18:36:45,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:36:45,586.586 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 18:36:48,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:36:48,028.028 INFO    ] Checking for system updates...
[2026-06-19 18:36:48,068.068 INFO    ] 200
[2026-06-19 18:36:48,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:48,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:48,126.126 INFO    ] No update needed
[2026-06-19 18:36:48,128.128 INFO    ] Checking for camera pi updates...
[2026-06-19 18:36:48,167.167 INFO    ] 200
[2026-06-19 18:36:48,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:48,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:36:48,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:48,346.346 INFO    ] No camera update needed
[2026-06-19 18:36:48,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:36:48,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:36:48,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:36:48,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:36:50,401.401 INFO    ] ================================================
[2026-06-19 18:36:50,417.417 INFO    ] Launching Daemon at Fri Jun 19 18:36:50 IST 2026
[2026-06-19 18:36:50,428.428 INFO    ] ================================================
[2026-06-19 18:36:51,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:36:51
[2026-06-19 18:36:51,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:36:51,871.871 INFO    ] Initializing speech engine...
[2026-06-19 18:36:51,881.881 INFO    ] 2026-06-19 18:36:51
[2026-06-19 18:36:52,126.126 INFO    ] 2026-06-19 18:36:52
[2026-06-19 18:36:52,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:36:52,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:36:52,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:36:52,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:36:52,606.606 INFO    ] time= 19/06/2026 18:36:52
[2026-06-19 18:36:52,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:36:52,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:36:52,824.824 INFO    ] No existing commands found in stream
[2026-06-19 18:36:57,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:36:57,853.853 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 18:36:58,442.442 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:36:58,446.446 INFO    ] Checking for system updates...
[2026-06-19 18:36:58,486.486 INFO    ] 200
[2026-06-19 18:36:58,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:58,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:58,550.550 INFO    ] No update needed
[2026-06-19 18:36:58,552.552 INFO    ] Checking for camera pi updates...
[2026-06-19 18:36:58,587.587 INFO    ] 200
[2026-06-19 18:36:58,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:36:58,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:36:58,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:36:58,670.670 INFO    ] No camera update needed
[2026-06-19 18:36:58,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:36:58,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:36:58,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:36:58,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:37:00,747.747 INFO    ] ================================================
[2026-06-19 18:37:00,764.764 INFO    ] Launching Daemon at Fri Jun 19 18:37:00 IST 2026
[2026-06-19 18:37:00,777.777 INFO    ] ================================================
[2026-06-19 18:37:01,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:37:01
[2026-06-19 18:37:02,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:37:02,464.464 INFO    ] Initializing speech engine...
[2026-06-19 18:37:02,481.481 INFO    ] 2026-06-19 18:37:02
[2026-06-19 18:37:02,798.798 INFO    ] 2026-06-19 18:37:02
[2026-06-19 18:37:02,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:37:03,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:37:03,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:37:03,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:37:03,298.298 INFO    ] time= 19/06/2026 18:37:03
[2026-06-19 18:37:03,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:37:03,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:37:03,580.580 INFO    ] No existing commands found in stream
[2026-06-19 18:37:08,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:37:08,600.600 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 18:37:11,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:37:11,269.269 INFO    ] Checking for system updates...
[2026-06-19 18:37:11,306.306 INFO    ] 200
[2026-06-19 18:37:11,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:37:11,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:37:11,371.371 INFO    ] No update needed
[2026-06-19 18:37:11,374.374 INFO    ] Checking for camera pi updates...
[2026-06-19 18:37:11,410.410 INFO    ] 200
[2026-06-19 18:37:11,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:37:11,454.454 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:37:11,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:37:11,500.500 INFO    ] No camera update needed
[2026-06-19 18:37:11,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:37:11,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:37:11,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:37:11,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:37:13,556.556 INFO    ] ================================================
[2026-06-19 18:37:13,571.571 INFO    ] Launching Daemon at Fri Jun 19 18:37:13 IST 2026
[2026-06-19 18:37:13,582.582 INFO    ] ================================================
[2026-06-19 18:37:14,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:37:14
[2026-06-19 18:37:14,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:37:15,162.162 INFO    ] Initializing speech engine...
[2026-06-19 18:37:15,168.168 INFO    ] 2026-06-19 18:37:15
[2026-06-19 18:37:15,441.441 INFO    ] 2026-06-19 18:37:15
[2026-06-19 18:37:15,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:37:15,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:37:15,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:37:15,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:37:15,987.987 INFO    ] time= 19/06/2026 18:37:15
[2026-06-19 18:37:16,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:37:16,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:37:16,140.140 INFO    ] No existing commands found in stream
[2026-06-19 18:37:21,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:37:21,156.156 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 18:37:25,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:37:25,420.420 INFO    ] Checking for system updates...
[2026-06-19 18:37:25,459.459 INFO    ] 200
[2026-06-19 18:37:25,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:37:25,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:37:25,517.517 INFO    ] No update needed
[2026-06-19 18:37:25,519.519 INFO    ] Checking for camera pi updates...
[2026-06-19 18:37:25,556.556 INFO    ] 200
[2026-06-19 18:37:25,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:37:25,603.603 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:37:25,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:37:25,650.650 INFO    ] No camera update needed
[2026-06-19 18:37:25,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:37:25,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:37:25,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:37:25,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:37:27,706.706 INFO    ] ================================================
[2026-06-19 18:37:27,722.722 INFO    ] Launching Daemon at Fri Jun 19 18:37:27 IST 2026
[2026-06-19 18:37:27,732.732 INFO    ] ================================================
[2026-06-19 18:37:28,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:37:28
[2026-06-19 18:37:28,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:37:29,189.189 INFO    ] Initializing speech engine...
[2026-06-19 18:37:29,195.195 INFO    ] 2026-06-19 18:37:29
[2026-06-19 18:37:29,456.456 INFO    ] 2026-06-19 18:37:29
[2026-06-19 18:37:29,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:37:29,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:37:29,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:37:29,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:37:29,913.913 INFO    ] time= 19/06/2026 18:37:29
[2026-06-19 18:37:29,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:37:30,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:37:30,061.061 INFO    ] No existing commands found in stream
[2026-06-19 18:37:35,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:37:35,076.076 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-19 18:37:39,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:37:39,621.621 INFO    ] Checking for system updates...
[2026-06-19 18:37:39,660.660 INFO    ] 200
[2026-06-19 18:37:39,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:37:39,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:37:39,719.719 INFO    ] No update needed
[2026-06-19 18:37:39,722.722 INFO    ] Checking for camera pi updates...
[2026-06-19 18:37:39,760.760 INFO    ] 200
[2026-06-19 18:37:39,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:37:39,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:37:39,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:37:39,853.853 INFO    ] No camera update needed
[2026-06-19 18:37:39,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:37:39,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:37:39,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:37:39,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:37:41,909.909 INFO    ] ================================================
[2026-06-19 18:37:41,924.924 INFO    ] Launching Daemon at Fri Jun 19 18:37:41 IST 2026
[2026-06-19 18:37:41,934.934 INFO    ] ================================================
[2026-06-19 18:37:42,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:37:42
[2026-06-19 18:37:43,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:37:43,382.382 INFO    ] Initializing speech engine...
[2026-06-19 18:37:43,391.391 INFO    ] 2026-06-19 18:37:43
[2026-06-19 18:37:43,637.637 INFO    ] 2026-06-19 18:37:43
[2026-06-19 18:37:43,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:37:43,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:37:43,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:37:44,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:37:44,194.194 INFO    ] time= 19/06/2026 18:37:44
[2026-06-19 18:37:44,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:37:44,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:37:44,347.347 INFO    ] No existing commands found in stream
[2026-06-19 18:37:49,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:37:49,364.364 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-19 18:37:49,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:37:49,893.893 INFO    ] Checking for system updates...
[2026-06-19 18:37:49,930.930 INFO    ] 200
[2026-06-19 18:37:49,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:37:49,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:37:49,992.992 INFO    ] No update needed
[2026-06-19 18:37:49,995.995 INFO    ] Checking for camera pi updates...
[2026-06-19 18:37:50,028.028 INFO    ] 200
[2026-06-19 18:37:50,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:37:50,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:37:50,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:37:50,111.111 INFO    ] No camera update needed
[2026-06-19 18:37:50,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:37:50,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:37:50,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:37:50,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:37:52,166.166 INFO    ] ================================================
[2026-06-19 18:37:52,181.181 INFO    ] Launching Daemon at Fri Jun 19 18:37:52 IST 2026
[2026-06-19 18:37:52,191.191 INFO    ] ================================================
[2026-06-19 18:37:52,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:37:52
[2026-06-19 18:37:53,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:37:53,618.618 INFO    ] Initializing speech engine...
[2026-06-19 18:37:53,639.639 INFO    ] 2026-06-19 18:37:53
[2026-06-19 18:37:53,904.904 INFO    ] 2026-06-19 18:37:53
[2026-06-19 18:37:53,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:37:54,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:37:54,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:37:54,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:37:54,320.320 INFO    ] time= 19/06/2026 18:37:54
[2026-06-19 18:37:54,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:37:54,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:37:54,408.408 INFO    ] No existing commands found in stream
[2026-06-19 18:37:59,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:37:59,446.446 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 18:38:00,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:38:00,251.251 INFO    ] Checking for system updates...
[2026-06-19 18:38:00,288.288 INFO    ] 200
[2026-06-19 18:38:00,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:00,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:38:00,346.346 INFO    ] No update needed
[2026-06-19 18:38:00,348.348 INFO    ] Checking for camera pi updates...
[2026-06-19 18:38:00,381.381 INFO    ] 200
[2026-06-19 18:38:00,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:00,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:38:00,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:38:00,472.472 INFO    ] No camera update needed
[2026-06-19 18:38:00,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:38:00,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:38:00,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:38:00,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:38:02,555.555 INFO    ] ================================================
[2026-06-19 18:38:02,577.577 INFO    ] Launching Daemon at Fri Jun 19 18:38:02 IST 2026
[2026-06-19 18:38:02,595.595 INFO    ] ================================================
[2026-06-19 18:38:03,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:38:03
[2026-06-19 18:38:04,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:38:04,338.338 INFO    ] Initializing speech engine...
[2026-06-19 18:38:04,346.346 INFO    ] 2026-06-19 18:38:04
[2026-06-19 18:38:04,629.629 INFO    ] 2026-06-19 18:38:04
[2026-06-19 18:38:04,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:38:04,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:38:04,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:38:05,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:38:05,164.164 INFO    ] time= 19/06/2026 18:38:05
[2026-06-19 18:38:05,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:38:05,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:38:05,333.333 INFO    ] No existing commands found in stream
[2026-06-19 18:38:10,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:38:10,367.367 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 18:38:12,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:38:12,757.757 INFO    ] Checking for system updates...
[2026-06-19 18:38:12,798.798 INFO    ] 200
[2026-06-19 18:38:12,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:12,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:38:12,858.858 INFO    ] No update needed
[2026-06-19 18:38:12,860.860 INFO    ] Checking for camera pi updates...
[2026-06-19 18:38:12,899.899 INFO    ] 200
[2026-06-19 18:38:12,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:12,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:38:13,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:38:13,004.004 INFO    ] No camera update needed
[2026-06-19 18:38:13,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:38:13,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:38:13,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:38:13,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:38:15,065.065 INFO    ] ================================================
[2026-06-19 18:38:15,080.080 INFO    ] Launching Daemon at Fri Jun 19 18:38:15 IST 2026
[2026-06-19 18:38:15,091.091 INFO    ] ================================================
[2026-06-19 18:38:15,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:38:15
[2026-06-19 18:38:16,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:38:16,502.502 INFO    ] Initializing speech engine...
[2026-06-19 18:38:16,524.524 INFO    ] 2026-06-19 18:38:16
[2026-06-19 18:38:16,780.780 INFO    ] 2026-06-19 18:38:16
[2026-06-19 18:38:16,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:38:17,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:38:17,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:38:17,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:38:17,257.257 INFO    ] time= 19/06/2026 18:38:17
[2026-06-19 18:38:17,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:38:17,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:38:17,504.504 INFO    ] No existing commands found in stream
[2026-06-19 18:38:22,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:38:22,523.523 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 18:38:25,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:38:25,958.958 INFO    ] Checking for system updates...
[2026-06-19 18:38:25,995.995 INFO    ] 200
[2026-06-19 18:38:25,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:26,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:38:26,056.056 INFO    ] No update needed
[2026-06-19 18:38:26,058.058 INFO    ] Checking for camera pi updates...
[2026-06-19 18:38:26,097.097 INFO    ] 200
[2026-06-19 18:38:26,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:26,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:38:26,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:38:26,196.196 INFO    ] No camera update needed
[2026-06-19 18:38:26,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:38:26,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:38:26,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:38:26,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:38:28,252.252 INFO    ] ================================================
[2026-06-19 18:38:28,268.268 INFO    ] Launching Daemon at Fri Jun 19 18:38:28 IST 2026
[2026-06-19 18:38:28,279.279 INFO    ] ================================================
[2026-06-19 18:38:28,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:38:28
[2026-06-19 18:38:29,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:38:29,748.748 INFO    ] Initializing speech engine...
[2026-06-19 18:38:29,754.754 INFO    ] 2026-06-19 18:38:29
[2026-06-19 18:38:30,028.028 INFO    ] 2026-06-19 18:38:30
[2026-06-19 18:38:30,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:38:30,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:38:30,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:38:30,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:38:30,505.505 INFO    ] time= 19/06/2026 18:38:30
[2026-06-19 18:38:30,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:38:30,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:38:30,726.726 INFO    ] No existing commands found in stream
[2026-06-19 18:38:35,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:38:35,754.754 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 18:38:37,094.094 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:38:37,097.097 INFO    ] Checking for system updates...
[2026-06-19 18:38:37,132.132 INFO    ] 200
[2026-06-19 18:38:37,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:37,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:38:37,194.194 INFO    ] No update needed
[2026-06-19 18:38:37,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 18:38:37,235.235 INFO    ] 200
[2026-06-19 18:38:37,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:37,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:38:37,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:38:37,336.336 INFO    ] No camera update needed
[2026-06-19 18:38:37,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:38:37,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:38:37,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:38:37,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:38:39,393.393 INFO    ] ================================================
[2026-06-19 18:38:39,408.408 INFO    ] Launching Daemon at Fri Jun 19 18:38:39 IST 2026
[2026-06-19 18:38:39,419.419 INFO    ] ================================================
[2026-06-19 18:38:40,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:38:40
[2026-06-19 18:38:40,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:38:40,874.874 INFO    ] Initializing speech engine...
[2026-06-19 18:38:40,884.884 INFO    ] 2026-06-19 18:38:40
[2026-06-19 18:38:41,131.131 INFO    ] 2026-06-19 18:38:41
[2026-06-19 18:38:41,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:38:41,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:38:41,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:38:41,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:38:41,747.747 INFO    ] time= 19/06/2026 18:38:41
[2026-06-19 18:38:41,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:38:41,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:38:41,940.940 INFO    ] No existing commands found in stream
[2026-06-19 18:38:46,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:38:46,969.969 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 18:38:48,258.258 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:38:48,260.260 INFO    ] Checking for system updates...
[2026-06-19 18:38:48,297.297 INFO    ] 200
[2026-06-19 18:38:48,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:48,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:38:48,355.355 INFO    ] No update needed
[2026-06-19 18:38:48,358.358 INFO    ] Checking for camera pi updates...
[2026-06-19 18:38:48,392.392 INFO    ] 200
[2026-06-19 18:38:48,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:38:48,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:38:48,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:38:48,478.478 INFO    ] No camera update needed
[2026-06-19 18:38:48,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:38:48,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:38:48,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:38:48,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:38:50,536.536 INFO    ] ================================================
[2026-06-19 18:38:50,552.552 INFO    ] Launching Daemon at Fri Jun 19 18:38:50 IST 2026
[2026-06-19 18:38:50,563.563 INFO    ] ================================================
[2026-06-19 18:38:51,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:38:51
[2026-06-19 18:38:51,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:38:51,998.998 INFO    ] Initializing speech engine...
[2026-06-19 18:38:52,020.020 INFO    ] 2026-06-19 18:38:52
[2026-06-19 18:38:52,275.275 INFO    ] 2026-06-19 18:38:52
[2026-06-19 18:38:52,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:38:52,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:38:52,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:38:52,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:38:52,770.770 INFO    ] time= 19/06/2026 18:38:52
[2026-06-19 18:38:52,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:38:52,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:38:52,966.966 INFO    ] No existing commands found in stream
[2026-06-19 18:38:57,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:38:57,994.994 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 18:39:01,237.237 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:39:01,240.240 INFO    ] Checking for system updates...
[2026-06-19 18:39:01,276.276 INFO    ] 200
[2026-06-19 18:39:01,279.279 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:01,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:39:01,341.341 INFO    ] No update needed
[2026-06-19 18:39:01,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 18:39:01,381.381 INFO    ] 200
[2026-06-19 18:39:01,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:01,425.425 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:39:01,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:39:01,594.594 INFO    ] No camera update needed
[2026-06-19 18:39:01,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:39:01,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:39:01,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:39:01,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:39:03,669.669 INFO    ] ================================================
[2026-06-19 18:39:03,683.683 INFO    ] Launching Daemon at Fri Jun 19 18:39:03 IST 2026
[2026-06-19 18:39:03,697.697 INFO    ] ================================================
[2026-06-19 18:39:04,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:39:04
[2026-06-19 18:39:04,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:39:05,143.143 INFO    ] Initializing speech engine...
[2026-06-19 18:39:05,166.166 INFO    ] 2026-06-19 18:39:05
[2026-06-19 18:39:05,423.423 INFO    ] 2026-06-19 18:39:05
[2026-06-19 18:39:05,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:39:05,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:39:05,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:39:05,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:39:05,974.974 INFO    ] time= 19/06/2026 18:39:05
[2026-06-19 18:39:05,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:39:06,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:39:06,142.142 INFO    ] No existing commands found in stream
[2026-06-19 18:39:11,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:39:11,168.168 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 18:39:12,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:39:12,515.515 INFO    ] Checking for system updates...
[2026-06-19 18:39:12,554.554 INFO    ] 200
[2026-06-19 18:39:12,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:12,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:39:12,613.613 INFO    ] No update needed
[2026-06-19 18:39:12,615.615 INFO    ] Checking for camera pi updates...
[2026-06-19 18:39:12,649.649 INFO    ] 200
[2026-06-19 18:39:12,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:12,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:39:12,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:39:12,754.754 INFO    ] No camera update needed
[2026-06-19 18:39:12,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:39:12,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:39:12,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:39:12,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:39:14,809.809 INFO    ] ================================================
[2026-06-19 18:39:14,824.824 INFO    ] Launching Daemon at Fri Jun 19 18:39:14 IST 2026
[2026-06-19 18:39:14,835.835 INFO    ] ================================================
[2026-06-19 18:39:15,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:39:15
[2026-06-19 18:39:16,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:39:16,303.303 INFO    ] Initializing speech engine...
[2026-06-19 18:39:16,309.309 INFO    ] 2026-06-19 18:39:16
[2026-06-19 18:39:16,557.557 INFO    ] 2026-06-19 18:39:16
[2026-06-19 18:39:16,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:39:16,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:39:16,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:39:17,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:39:17,116.116 INFO    ] time= 19/06/2026 18:39:17
[2026-06-19 18:39:17,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:39:17,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:39:17,272.272 INFO    ] No existing commands found in stream
[2026-06-19 18:39:22,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:39:22,290.290 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 18:39:23,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:39:23,237.237 INFO    ] Checking for system updates...
[2026-06-19 18:39:23,272.272 INFO    ] 200
[2026-06-19 18:39:23,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:23,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:39:23,332.332 INFO    ] No update needed
[2026-06-19 18:39:23,335.335 INFO    ] Checking for camera pi updates...
[2026-06-19 18:39:23,373.373 INFO    ] 200
[2026-06-19 18:39:23,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:23,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:39:23,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:39:23,473.473 INFO    ] No camera update needed
[2026-06-19 18:39:23,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:39:23,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:39:23,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:39:23,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:39:25,528.528 INFO    ] ================================================
[2026-06-19 18:39:25,544.544 INFO    ] Launching Daemon at Fri Jun 19 18:39:25 IST 2026
[2026-06-19 18:39:25,555.555 INFO    ] ================================================
[2026-06-19 18:39:26,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:39:26
[2026-06-19 18:39:26,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:39:26,968.968 INFO    ] Initializing speech engine...
[2026-06-19 18:39:26,984.984 INFO    ] 2026-06-19 18:39:26
[2026-06-19 18:39:27,267.267 INFO    ] 2026-06-19 18:39:27
[2026-06-19 18:39:27,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:39:27,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:39:27,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:39:27,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:39:27,685.685 INFO    ] time= 19/06/2026 18:39:27
[2026-06-19 18:39:27,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:39:27,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:39:27,772.772 INFO    ] No existing commands found in stream
[2026-06-19 18:39:32,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:39:32,805.805 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 18:39:35,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:39:35,200.200 INFO    ] Checking for system updates...
[2026-06-19 18:39:35,241.241 INFO    ] 200
[2026-06-19 18:39:35,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:35,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:39:35,300.300 INFO    ] No update needed
[2026-06-19 18:39:35,302.302 INFO    ] Checking for camera pi updates...
[2026-06-19 18:39:35,340.340 INFO    ] 200
[2026-06-19 18:39:35,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:35,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:39:35,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:39:35,437.437 INFO    ] No camera update needed
[2026-06-19 18:39:35,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:39:35,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:39:35,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:39:35,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:39:37,492.492 INFO    ] ================================================
[2026-06-19 18:39:37,508.508 INFO    ] Launching Daemon at Fri Jun 19 18:39:37 IST 2026
[2026-06-19 18:39:37,519.519 INFO    ] ================================================
[2026-06-19 18:39:38,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:39:38
[2026-06-19 18:39:38,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:39:39,138.138 INFO    ] Initializing speech engine...
[2026-06-19 18:39:39,152.152 INFO    ] 2026-06-19 18:39:39
[2026-06-19 18:39:39,407.407 INFO    ] 2026-06-19 18:39:39
[2026-06-19 18:39:39,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:39:39,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:39:39,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:39:39,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:39:39,960.960 INFO    ] time= 19/06/2026 18:39:39
[2026-06-19 18:39:39,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:39:39,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:39:40,103.103 INFO    ] No existing commands found in stream
[2026-06-19 18:39:45,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:39:45,134.134 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 18:39:47,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:39:47,824.824 INFO    ] Checking for system updates...
[2026-06-19 18:39:47,861.861 INFO    ] 200
[2026-06-19 18:39:47,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:47,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:39:47,923.923 INFO    ] No update needed
[2026-06-19 18:39:47,925.925 INFO    ] Checking for camera pi updates...
[2026-06-19 18:39:47,963.963 INFO    ] 200
[2026-06-19 18:39:47,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:48,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:39:48,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:39:48,043.043 INFO    ] No camera update needed
[2026-06-19 18:39:48,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:39:48,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:39:48,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:39:48,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:39:50,099.099 INFO    ] ================================================
[2026-06-19 18:39:50,116.116 INFO    ] Launching Daemon at Fri Jun 19 18:39:50 IST 2026
[2026-06-19 18:39:50,126.126 INFO    ] ================================================
[2026-06-19 18:39:50,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:39:50
[2026-06-19 18:39:51,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:39:51,615.615 INFO    ] Initializing speech engine...
[2026-06-19 18:39:51,621.621 INFO    ] 2026-06-19 18:39:51
[2026-06-19 18:39:51,884.884 INFO    ] 2026-06-19 18:39:51
[2026-06-19 18:39:51,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:39:52,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:39:52,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:39:52,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:39:52,369.369 INFO    ] time= 19/06/2026 18:39:52
[2026-06-19 18:39:52,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:39:52,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:39:52,686.686 INFO    ] No existing commands found in stream
[2026-06-19 18:39:57,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:39:57,716.716 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 18:39:59,789.789 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:39:59,792.792 INFO    ] Checking for system updates...
[2026-06-19 18:39:59,832.832 INFO    ] 200
[2026-06-19 18:39:59,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:59,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:39:59,891.891 INFO    ] No update needed
[2026-06-19 18:39:59,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 18:39:59,931.931 INFO    ] 200
[2026-06-19 18:39:59,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:39:59,979.979 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:40:00,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:40:00,027.027 INFO    ] No camera update needed
[2026-06-19 18:40:00,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:40:00,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:40:00,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:40:00,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:40:02,119.119 INFO    ] ================================================
[2026-06-19 18:40:02,167.167 INFO    ] Launching Daemon at Fri Jun 19 18:40:02 IST 2026
[2026-06-19 18:40:02,183.183 INFO    ] ================================================
[2026-06-19 18:40:03,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:40:03
[2026-06-19 18:40:03,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:40:03,996.996 INFO    ] Initializing speech engine...
[2026-06-19 18:40:04,021.021 INFO    ] 2026-06-19 18:40:04
[2026-06-19 18:40:04,297.297 INFO    ] 2026-06-19 18:40:04
[2026-06-19 18:40:04,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:40:04,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:40:04,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:40:04,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:40:04,718.718 INFO    ] time= 19/06/2026 18:40:04
[2026-06-19 18:40:04,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:40:04,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:40:04,805.805 INFO    ] No existing commands found in stream
[2026-06-19 18:40:09,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:40:09,824.824 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 18:40:11,151.151 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:40:11,154.154 INFO    ] Checking for system updates...
[2026-06-19 18:40:11,194.194 INFO    ] 200
[2026-06-19 18:40:11,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:40:11,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:40:11,253.253 INFO    ] No update needed
[2026-06-19 18:40:11,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 18:40:11,290.290 INFO    ] 200
[2026-06-19 18:40:11,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:40:11,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:40:11,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:40:11,391.391 INFO    ] No camera update needed
[2026-06-19 18:40:11,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:40:11,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:40:11,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:40:11,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:40:13,447.447 INFO    ] ================================================
[2026-06-19 18:40:13,469.469 INFO    ] Launching Daemon at Fri Jun 19 18:40:13 IST 2026
[2026-06-19 18:40:13,480.480 INFO    ] ================================================
[2026-06-19 18:40:14,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:40:14
[2026-06-19 18:40:14,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:40:15,104.104 INFO    ] Initializing speech engine...
[2026-06-19 18:40:15,118.118 INFO    ] 2026-06-19 18:40:15
[2026-06-19 18:40:15,429.429 INFO    ] 2026-06-19 18:40:15
[2026-06-19 18:40:15,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:40:15,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:40:15,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:40:15,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:40:15,933.933 INFO    ] time= 19/06/2026 18:40:15
[2026-06-19 18:40:15,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:40:15,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:40:16,093.093 INFO    ] No existing commands found in stream
[2026-06-19 18:40:21,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:40:21,121.121 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 18:40:24,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:40:24,152.152 INFO    ] Checking for system updates...
[2026-06-19 18:40:24,193.193 INFO    ] 200
[2026-06-19 18:40:24,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:40:24,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:40:24,260.260 INFO    ] No update needed
[2026-06-19 18:40:24,263.263 INFO    ] Checking for camera pi updates...
[2026-06-19 18:40:24,302.302 INFO    ] 200
[2026-06-19 18:40:24,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:40:24,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:40:24,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:40:24,394.394 INFO    ] No camera update needed
[2026-06-19 18:40:24,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:40:24,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:40:24,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:40:24,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:40:26,453.453 INFO    ] ================================================
[2026-06-19 18:40:26,469.469 INFO    ] Launching Daemon at Fri Jun 19 18:40:26 IST 2026
[2026-06-19 18:40:26,480.480 INFO    ] ================================================
[2026-06-19 18:40:27,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:40:27
[2026-06-19 18:40:27,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:40:27,898.898 INFO    ] Initializing speech engine...
[2026-06-19 18:40:27,911.911 INFO    ] 2026-06-19 18:40:27
[2026-06-19 18:40:28,199.199 INFO    ] 2026-06-19 18:40:28
[2026-06-19 18:40:28,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:40:28,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:40:28,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:40:28,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:40:28,700.700 INFO    ] time= 19/06/2026 18:40:28
[2026-06-19 18:40:28,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:40:28,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:40:28,901.901 INFO    ] No existing commands found in stream
[2026-06-19 18:40:33,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:40:33,916.916 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 18:40:36,975.975 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:40:36,978.978 INFO    ] Checking for system updates...
[2026-06-19 18:40:37,018.018 INFO    ] 200
[2026-06-19 18:40:37,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:40:37,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:40:37,082.082 INFO    ] No update needed
[2026-06-19 18:40:37,085.085 INFO    ] Checking for camera pi updates...
[2026-06-19 18:40:37,119.119 INFO    ] 200
[2026-06-19 18:40:37,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:40:37,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:40:37,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:40:37,213.213 INFO    ] No camera update needed
[2026-06-19 18:40:37,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:40:37,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:40:37,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:40:37,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:40:39,270.270 INFO    ] ================================================
[2026-06-19 18:40:39,286.286 INFO    ] Launching Daemon at Fri Jun 19 18:40:39 IST 2026
[2026-06-19 18:40:39,298.298 INFO    ] ================================================
[2026-06-19 18:40:39,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:40:39
[2026-06-19 18:40:40,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:40:40,705.705 INFO    ] Initializing speech engine...
[2026-06-19 18:40:40,719.719 INFO    ] 2026-06-19 18:40:40
[2026-06-19 18:40:40,988.988 INFO    ] 2026-06-19 18:40:40
[2026-06-19 18:40:41,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:40:41,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:40:41,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:40:41,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:40:41,482.482 INFO    ] time= 19/06/2026 18:40:41
[2026-06-19 18:40:41,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:40:41,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:40:41,699.699 INFO    ] No existing commands found in stream
[2026-06-19 18:40:46,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:40:46,726.726 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 18:40:51,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:40:51,069.069 INFO    ] Checking for system updates...
[2026-06-19 18:40:51,106.106 INFO    ] 200
[2026-06-19 18:40:51,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:40:51,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:40:51,164.164 INFO    ] No update needed
[2026-06-19 18:40:51,166.166 INFO    ] Checking for camera pi updates...
[2026-06-19 18:40:51,200.200 INFO    ] 200
[2026-06-19 18:40:51,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:40:51,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:40:51,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:40:51,309.309 INFO    ] No camera update needed
[2026-06-19 18:40:51,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:40:51,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:40:51,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:40:51,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:40:53,366.366 INFO    ] ================================================
[2026-06-19 18:40:53,381.381 INFO    ] Launching Daemon at Fri Jun 19 18:40:53 IST 2026
[2026-06-19 18:40:53,392.392 INFO    ] ================================================
[2026-06-19 18:40:54,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:40:54
[2026-06-19 18:40:54,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:40:55,008.008 INFO    ] Initializing speech engine...
[2026-06-19 18:40:55,017.017 INFO    ] 2026-06-19 18:40:55
[2026-06-19 18:40:55,291.291 INFO    ] 2026-06-19 18:40:55
[2026-06-19 18:40:55,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:40:55,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:40:55,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:40:55,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:40:55,783.783 INFO    ] time= 19/06/2026 18:40:55
[2026-06-19 18:40:55,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:40:55,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:40:55,994.994 INFO    ] No existing commands found in stream
[2026-06-19 18:41:01,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:41:01,014.014 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 18:41:03,288.288 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:41:03,292.292 INFO    ] Checking for system updates...
[2026-06-19 18:41:03,335.335 INFO    ] 200
[2026-06-19 18:41:03,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:03,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:41:03,405.405 INFO    ] No update needed
[2026-06-19 18:41:03,409.409 INFO    ] Checking for camera pi updates...
[2026-06-19 18:41:03,453.453 INFO    ] 200
[2026-06-19 18:41:03,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:03,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:41:03,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:41:03,549.549 INFO    ] No camera update needed
[2026-06-19 18:41:03,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:41:03,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:41:03,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:41:03,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:41:05,604.604 INFO    ] ================================================
[2026-06-19 18:41:05,619.619 INFO    ] Launching Daemon at Fri Jun 19 18:41:05 IST 2026
[2026-06-19 18:41:05,631.631 INFO    ] ================================================
[2026-06-19 18:41:06,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:41:06
[2026-06-19 18:41:06,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:41:07,063.063 INFO    ] Initializing speech engine...
[2026-06-19 18:41:07,079.079 INFO    ] 2026-06-19 18:41:07
[2026-06-19 18:41:07,354.354 INFO    ] 2026-06-19 18:41:07
[2026-06-19 18:41:07,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:41:07,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:41:07,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:41:07,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:41:07,759.759 INFO    ] time= 19/06/2026 18:41:07
[2026-06-19 18:41:07,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:41:07,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:41:07,944.944 INFO    ] No existing commands found in stream
[2026-06-19 18:41:12,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:41:12,972.972 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 18:41:15,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:41:15,122.122 INFO    ] Checking for system updates...
[2026-06-19 18:41:15,159.159 INFO    ] 200
[2026-06-19 18:41:15,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:15,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:41:15,223.223 INFO    ] No update needed
[2026-06-19 18:41:15,226.226 INFO    ] Checking for camera pi updates...
[2026-06-19 18:41:15,260.260 INFO    ] 200
[2026-06-19 18:41:15,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:15,308.308 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:41:15,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:41:15,358.358 INFO    ] No camera update needed
[2026-06-19 18:41:15,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:41:15,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:41:15,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:41:15,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:41:17,415.415 INFO    ] ================================================
[2026-06-19 18:41:17,430.430 INFO    ] Launching Daemon at Fri Jun 19 18:41:17 IST 2026
[2026-06-19 18:41:17,441.441 INFO    ] ================================================
[2026-06-19 18:41:18,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:41:18
[2026-06-19 18:41:18,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:41:18,867.867 INFO    ] Initializing speech engine...
[2026-06-19 18:41:18,902.902 INFO    ] 2026-06-19 18:41:18
[2026-06-19 18:41:19,165.165 INFO    ] 2026-06-19 18:41:19
[2026-06-19 18:41:19,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:41:19,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:41:19,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:41:19,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:41:19,572.572 INFO    ] time= 19/06/2026 18:41:19
[2026-06-19 18:41:19,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:41:19,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:41:19,769.769 INFO    ] No existing commands found in stream
[2026-06-19 18:41:24,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:41:24,797.797 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 18:41:26,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:41:26,088.088 INFO    ] Checking for system updates...
[2026-06-19 18:41:26,123.123 INFO    ] 200
[2026-06-19 18:41:26,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:26,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:41:26,181.181 INFO    ] No update needed
[2026-06-19 18:41:26,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 18:41:26,220.220 INFO    ] 200
[2026-06-19 18:41:26,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:26,263.263 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:41:26,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:41:26,313.313 INFO    ] No camera update needed
[2026-06-19 18:41:26,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:41:26,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:41:26,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:41:26,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:41:28,367.367 INFO    ] ================================================
[2026-06-19 18:41:28,383.383 INFO    ] Launching Daemon at Fri Jun 19 18:41:28 IST 2026
[2026-06-19 18:41:28,394.394 INFO    ] ================================================
[2026-06-19 18:41:29,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:41:29
[2026-06-19 18:41:29,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:41:29,979.979 INFO    ] Initializing speech engine...
[2026-06-19 18:41:29,992.992 INFO    ] 2026-06-19 18:41:29
[2026-06-19 18:41:30,268.268 INFO    ] 2026-06-19 18:41:30
[2026-06-19 18:41:30,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:41:30,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:41:30,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:41:30,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:41:30,803.803 INFO    ] time= 19/06/2026 18:41:30
[2026-06-19 18:41:30,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:41:30,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:41:30,958.958 INFO    ] No existing commands found in stream
[2026-06-19 18:41:35,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:41:35,991.991 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 18:41:36,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:41:36,429.429 INFO    ] Checking for system updates...
[2026-06-19 18:41:36,466.466 INFO    ] 200
[2026-06-19 18:41:36,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:36,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:41:36,523.523 INFO    ] No update needed
[2026-06-19 18:41:36,526.526 INFO    ] Checking for camera pi updates...
[2026-06-19 18:41:36,560.560 INFO    ] 200
[2026-06-19 18:41:36,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:36,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:41:36,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:41:36,658.658 INFO    ] No camera update needed
[2026-06-19 18:41:36,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:41:36,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:41:36,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:41:36,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:41:38,712.712 INFO    ] ================================================
[2026-06-19 18:41:38,727.727 INFO    ] Launching Daemon at Fri Jun 19 18:41:38 IST 2026
[2026-06-19 18:41:38,738.738 INFO    ] ================================================
[2026-06-19 18:41:39,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:41:39
[2026-06-19 18:41:39,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:41:40,159.159 INFO    ] Initializing speech engine...
[2026-06-19 18:41:40,168.168 INFO    ] 2026-06-19 18:41:40
[2026-06-19 18:41:40,456.456 INFO    ] 2026-06-19 18:41:40
[2026-06-19 18:41:40,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:41:40,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:41:40,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:41:40,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:41:40,871.871 INFO    ] time= 19/06/2026 18:41:40
[2026-06-19 18:41:40,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:41:40,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:41:40,961.961 INFO    ] No existing commands found in stream
[2026-06-19 18:41:45,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:41:45,999.999 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 18:41:46,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:41:46,662.662 INFO    ] Checking for system updates...
[2026-06-19 18:41:46,698.698 INFO    ] 200
[2026-06-19 18:41:46,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:46,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:41:46,755.755 INFO    ] No update needed
[2026-06-19 18:41:46,757.757 INFO    ] Checking for camera pi updates...
[2026-06-19 18:41:46,791.791 INFO    ] 200
[2026-06-19 18:41:46,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:41:46,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:41:46,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:41:46,974.974 INFO    ] No camera update needed
[2026-06-19 18:41:46,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:41:46,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:41:46,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:41:46,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:41:49,031.031 INFO    ] ================================================
[2026-06-19 18:41:49,047.047 INFO    ] Launching Daemon at Fri Jun 19 18:41:49 IST 2026
[2026-06-19 18:41:49,058.058 INFO    ] ================================================
[2026-06-19 18:41:49,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:41:49
[2026-06-19 18:41:50,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:41:50,536.536 INFO    ] Initializing speech engine...
[2026-06-19 18:41:50,549.549 INFO    ] 2026-06-19 18:41:50
[2026-06-19 18:41:50,812.812 INFO    ] 2026-06-19 18:41:50
[2026-06-19 18:41:50,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:41:51,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:41:51,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:41:51,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:41:51,304.304 INFO    ] time= 19/06/2026 18:41:51
[2026-06-19 18:41:51,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:41:51,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:41:51,525.525 INFO    ] No existing commands found in stream
[2026-06-19 18:41:56,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:41:56,540.540 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 18:42:00,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:42:00,506.506 INFO    ] Checking for system updates...
[2026-06-19 18:42:00,543.543 INFO    ] 200
[2026-06-19 18:42:00,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:00,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:42:00,601.601 INFO    ] No update needed
[2026-06-19 18:42:00,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 18:42:00,641.641 INFO    ] 200
[2026-06-19 18:42:00,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:00,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:42:00,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:42:00,739.739 INFO    ] No camera update needed
[2026-06-19 18:42:00,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:42:00,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:42:00,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:42:00,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:42:02,811.811 INFO    ] ================================================
[2026-06-19 18:42:02,833.833 INFO    ] Launching Daemon at Fri Jun 19 18:42:02 IST 2026
[2026-06-19 18:42:02,851.851 INFO    ] ================================================
[2026-06-19 18:42:03,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:42:03
[2026-06-19 18:42:04,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:42:04,367.367 INFO    ] Initializing speech engine...
[2026-06-19 18:42:04,376.376 INFO    ] 2026-06-19 18:42:04
[2026-06-19 18:42:04,635.635 INFO    ] 2026-06-19 18:42:04
[2026-06-19 18:42:04,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:42:04,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:42:04,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:42:05,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:42:05,181.181 INFO    ] time= 19/06/2026 18:42:05
[2026-06-19 18:42:05,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:42:05,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:42:05,340.340 INFO    ] No existing commands found in stream
[2026-06-19 18:42:10,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:42:10,370.370 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 18:42:12,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:42:12,303.303 INFO    ] Checking for system updates...
[2026-06-19 18:42:12,340.340 INFO    ] 200
[2026-06-19 18:42:12,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:12,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:42:12,397.397 INFO    ] No update needed
[2026-06-19 18:42:12,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 18:42:12,433.433 INFO    ] 200
[2026-06-19 18:42:12,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:12,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:42:12,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:42:12,543.543 INFO    ] No camera update needed
[2026-06-19 18:42:12,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:42:12,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:42:12,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:42:12,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:42:14,605.605 INFO    ] ================================================
[2026-06-19 18:42:14,620.620 INFO    ] Launching Daemon at Fri Jun 19 18:42:14 IST 2026
[2026-06-19 18:42:14,631.631 INFO    ] ================================================
[2026-06-19 18:42:15,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:42:15
[2026-06-19 18:42:15,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:42:16,052.052 INFO    ] Initializing speech engine...
[2026-06-19 18:42:16,061.061 INFO    ] 2026-06-19 18:42:16
[2026-06-19 18:42:16,319.319 INFO    ] 2026-06-19 18:42:16
[2026-06-19 18:42:16,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:42:16,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:42:16,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:42:16,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:42:16,868.868 INFO    ] time= 19/06/2026 18:42:16
[2026-06-19 18:42:16,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:42:16,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:42:17,022.022 INFO    ] No existing commands found in stream
[2026-06-19 18:42:22,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:42:22,037.037 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 18:42:25,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:42:25,962.962 INFO    ] Checking for system updates...
[2026-06-19 18:42:25,998.998 INFO    ] 200
[2026-06-19 18:42:26,000.000 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:26,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:42:26,056.056 INFO    ] No update needed
[2026-06-19 18:42:26,058.058 INFO    ] Checking for camera pi updates...
[2026-06-19 18:42:26,092.092 INFO    ] 200
[2026-06-19 18:42:26,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:26,139.139 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:42:26,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:42:26,187.187 INFO    ] No camera update needed
[2026-06-19 18:42:26,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:42:26,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:42:26,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:42:26,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:42:28,243.243 INFO    ] ================================================
[2026-06-19 18:42:28,258.258 INFO    ] Launching Daemon at Fri Jun 19 18:42:28 IST 2026
[2026-06-19 18:42:28,270.270 INFO    ] ================================================
[2026-06-19 18:42:28,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:42:28
[2026-06-19 18:42:29,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:42:29,694.694 INFO    ] Initializing speech engine...
[2026-06-19 18:42:29,710.710 INFO    ] 2026-06-19 18:42:29
[2026-06-19 18:42:29,998.998 INFO    ] 2026-06-19 18:42:29
[2026-06-19 18:42:30,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:42:30,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:42:30,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:42:30,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:42:30,376.376 INFO    ] time= 19/06/2026 18:42:30
[2026-06-19 18:42:30,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:42:30,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:42:30,503.503 INFO    ] No existing commands found in stream
[2026-06-19 18:42:35,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:42:35,521.521 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 18:42:39,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:42:39,564.564 INFO    ] Checking for system updates...
[2026-06-19 18:42:39,604.604 INFO    ] 200
[2026-06-19 18:42:39,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:39,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:42:39,664.664 INFO    ] No update needed
[2026-06-19 18:42:39,666.666 INFO    ] Checking for camera pi updates...
[2026-06-19 18:42:39,704.704 INFO    ] 200
[2026-06-19 18:42:39,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:39,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:42:39,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:42:39,797.797 INFO    ] No camera update needed
[2026-06-19 18:42:39,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:42:39,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:42:39,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:42:39,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:42:41,852.852 INFO    ] ================================================
[2026-06-19 18:42:41,867.867 INFO    ] Launching Daemon at Fri Jun 19 18:42:41 IST 2026
[2026-06-19 18:42:41,878.878 INFO    ] ================================================
[2026-06-19 18:42:42,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:42:42
[2026-06-19 18:42:43,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:42:43,481.481 INFO    ] Initializing speech engine...
[2026-06-19 18:42:43,495.495 INFO    ] 2026-06-19 18:42:43
[2026-06-19 18:42:43,771.771 INFO    ] 2026-06-19 18:42:43
[2026-06-19 18:42:43,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:42:44,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:42:44,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:42:44,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:42:44,308.308 INFO    ] time= 19/06/2026 18:42:44
[2026-06-19 18:42:44,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:42:44,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:42:44,463.463 INFO    ] No existing commands found in stream
[2026-06-19 18:42:49,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:42:49,496.496 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 18:42:53,207.207 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:42:53,210.210 INFO    ] Checking for system updates...
[2026-06-19 18:42:53,251.251 INFO    ] 200
[2026-06-19 18:42:53,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:53,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:42:53,311.311 INFO    ] No update needed
[2026-06-19 18:42:53,314.314 INFO    ] Checking for camera pi updates...
[2026-06-19 18:42:53,352.352 INFO    ] 200
[2026-06-19 18:42:53,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:42:53,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:42:53,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:42:53,449.449 INFO    ] No camera update needed
[2026-06-19 18:42:53,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:42:53,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:42:53,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:42:53,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:42:55,507.507 INFO    ] ================================================
[2026-06-19 18:42:55,523.523 INFO    ] Launching Daemon at Fri Jun 19 18:42:55 IST 2026
[2026-06-19 18:42:55,533.533 INFO    ] ================================================
[2026-06-19 18:42:56,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:42:56
[2026-06-19 18:42:56,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:42:57,136.136 INFO    ] Initializing speech engine...
[2026-06-19 18:42:57,149.149 INFO    ] 2026-06-19 18:42:57
[2026-06-19 18:42:57,427.427 INFO    ] 2026-06-19 18:42:57
[2026-06-19 18:42:57,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:42:57,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:42:57,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:42:57,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:42:57,962.962 INFO    ] time= 19/06/2026 18:42:57
[2026-06-19 18:42:57,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:42:57,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:42:58,123.123 INFO    ] No existing commands found in stream
[2026-06-19 18:43:03,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:43:03,152.152 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 18:43:06,083.083 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:43:06,086.086 INFO    ] Checking for system updates...
[2026-06-19 18:43:06,127.127 INFO    ] 200
[2026-06-19 18:43:06,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:06,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:43:06,193.193 INFO    ] No update needed
[2026-06-19 18:43:06,196.196 INFO    ] Checking for camera pi updates...
[2026-06-19 18:43:06,234.234 INFO    ] 200
[2026-06-19 18:43:06,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:06,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:43:06,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:43:06,431.431 INFO    ] No camera update needed
[2026-06-19 18:43:06,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:43:06,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:43:06,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:43:06,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:43:08,495.495 INFO    ] ================================================
[2026-06-19 18:43:08,510.510 INFO    ] Launching Daemon at Fri Jun 19 18:43:08 IST 2026
[2026-06-19 18:43:08,521.521 INFO    ] ================================================
[2026-06-19 18:43:09,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:43:09
[2026-06-19 18:43:09,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:43:09,943.943 INFO    ] Initializing speech engine...
[2026-06-19 18:43:09,966.966 INFO    ] 2026-06-19 18:43:09
[2026-06-19 18:43:10,220.220 INFO    ] 2026-06-19 18:43:10
[2026-06-19 18:43:10,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:43:10,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:43:10,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:43:10,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:43:10,780.780 INFO    ] time= 19/06/2026 18:43:10
[2026-06-19 18:43:10,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:43:10,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:43:10,937.937 INFO    ] No existing commands found in stream
[2026-06-19 18:43:15,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:43:15,962.962 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 18:43:18,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:43:18,204.204 INFO    ] Checking for system updates...
[2026-06-19 18:43:18,244.244 INFO    ] 200
[2026-06-19 18:43:18,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:18,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:43:18,307.307 INFO    ] No update needed
[2026-06-19 18:43:18,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 18:43:18,343.343 INFO    ] 200
[2026-06-19 18:43:18,346.346 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:18,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:43:18,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:43:18,436.436 INFO    ] No camera update needed
[2026-06-19 18:43:18,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:43:18,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:43:18,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:43:18,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:43:20,492.492 INFO    ] ================================================
[2026-06-19 18:43:20,507.507 INFO    ] Launching Daemon at Fri Jun 19 18:43:20 IST 2026
[2026-06-19 18:43:20,518.518 INFO    ] ================================================
[2026-06-19 18:43:21,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:43:21
[2026-06-19 18:43:21,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:43:22,124.124 INFO    ] Initializing speech engine...
[2026-06-19 18:43:22,132.132 INFO    ] 2026-06-19 18:43:22
[2026-06-19 18:43:22,421.421 INFO    ] 2026-06-19 18:43:22
[2026-06-19 18:43:22,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:43:22,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:43:22,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:43:22,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:43:22,896.896 INFO    ] time= 19/06/2026 18:43:22
[2026-06-19 18:43:22,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:43:22,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:43:23,096.096 INFO    ] No existing commands found in stream
[2026-06-19 18:43:28,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:43:28,126.126 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 18:43:31,542.542 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:43:31,545.545 INFO    ] Checking for system updates...
[2026-06-19 18:43:31,582.582 INFO    ] 200
[2026-06-19 18:43:31,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:31,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:43:31,643.643 INFO    ] No update needed
[2026-06-19 18:43:31,645.645 INFO    ] Checking for camera pi updates...
[2026-06-19 18:43:31,679.679 INFO    ] 200
[2026-06-19 18:43:31,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:31,724.724 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:43:31,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:43:31,764.764 INFO    ] No camera update needed
[2026-06-19 18:43:31,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:43:31,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:43:31,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:43:31,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:43:33,826.826 INFO    ] ================================================
[2026-06-19 18:43:33,841.841 INFO    ] Launching Daemon at Fri Jun 19 18:43:33 IST 2026
[2026-06-19 18:43:33,852.852 INFO    ] ================================================
[2026-06-19 18:43:34,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:43:34
[2026-06-19 18:43:35,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:43:35,319.319 INFO    ] Initializing speech engine...
[2026-06-19 18:43:35,326.326 INFO    ] 2026-06-19 18:43:35
[2026-06-19 18:43:35,585.585 INFO    ] 2026-06-19 18:43:35
[2026-06-19 18:43:35,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:43:35,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:43:35,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:43:36,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:43:36,058.058 INFO    ] time= 19/06/2026 18:43:36
[2026-06-19 18:43:36,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:43:36,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:43:36,278.278 INFO    ] No existing commands found in stream
[2026-06-19 18:43:41,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:43:41,308.308 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 18:43:41,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:43:41,787.787 INFO    ] Checking for system updates...
[2026-06-19 18:43:41,839.839 INFO    ] 200
[2026-06-19 18:43:41,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:41,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:43:41,906.906 INFO    ] No update needed
[2026-06-19 18:43:41,909.909 INFO    ] Checking for camera pi updates...
[2026-06-19 18:43:41,970.970 INFO    ] 200
[2026-06-19 18:43:41,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:42,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:43:42,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:43:42,082.082 INFO    ] No camera update needed
[2026-06-19 18:43:42,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:43:42,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:43:42,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:43:42,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:43:44,141.141 INFO    ] ================================================
[2026-06-19 18:43:44,157.157 INFO    ] Launching Daemon at Fri Jun 19 18:43:44 IST 2026
[2026-06-19 18:43:44,168.168 INFO    ] ================================================
[2026-06-19 18:43:44,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:43:44
[2026-06-19 18:43:45,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:43:45,619.619 INFO    ] Initializing speech engine...
[2026-06-19 18:43:45,629.629 INFO    ] 2026-06-19 18:43:45
[2026-06-19 18:43:45,888.888 INFO    ] 2026-06-19 18:43:45
[2026-06-19 18:43:45,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:43:46,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:43:46,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:43:46,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:43:46,363.363 INFO    ] time= 19/06/2026 18:43:46
[2026-06-19 18:43:46,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:43:46,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:43:46,561.561 INFO    ] No existing commands found in stream
[2026-06-19 18:43:51,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:43:51,594.594 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 18:43:54,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:43:54,166.166 INFO    ] Checking for system updates...
[2026-06-19 18:43:54,203.203 INFO    ] 200
[2026-06-19 18:43:54,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:54,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:43:54,264.264 INFO    ] No update needed
[2026-06-19 18:43:54,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 18:43:54,305.305 INFO    ] 200
[2026-06-19 18:43:54,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:43:54,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:43:54,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:43:54,403.403 INFO    ] No camera update needed
[2026-06-19 18:43:54,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:43:54,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:43:54,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:43:54,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:43:56,462.462 INFO    ] ================================================
[2026-06-19 18:43:56,477.477 INFO    ] Launching Daemon at Fri Jun 19 18:43:56 IST 2026
[2026-06-19 18:43:56,488.488 INFO    ] ================================================
[2026-06-19 18:43:57,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:43:57
[2026-06-19 18:43:57,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:43:58,005.005 INFO    ] Initializing speech engine...
[2026-06-19 18:43:58,012.012 INFO    ] 2026-06-19 18:43:58
[2026-06-19 18:43:58,308.308 INFO    ] 2026-06-19 18:43:58
[2026-06-19 18:43:58,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:43:58,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:43:58,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:43:58,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:43:58,850.850 INFO    ] time= 19/06/2026 18:43:58
[2026-06-19 18:43:58,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:43:58,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:43:59,014.014 INFO    ] No existing commands found in stream
[2026-06-19 18:44:04,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:44:04,049.049 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 18:44:06,034.034 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:44:06,037.037 INFO    ] Checking for system updates...
[2026-06-19 18:44:06,078.078 INFO    ] 200
[2026-06-19 18:44:06,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:06,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:44:06,138.138 INFO    ] No update needed
[2026-06-19 18:44:06,141.141 INFO    ] Checking for camera pi updates...
[2026-06-19 18:44:06,176.176 INFO    ] 200
[2026-06-19 18:44:06,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:06,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:44:06,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:44:06,269.269 INFO    ] No camera update needed
[2026-06-19 18:44:06,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:44:06,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:44:06,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:44:06,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:44:08,326.326 INFO    ] ================================================
[2026-06-19 18:44:08,342.342 INFO    ] Launching Daemon at Fri Jun 19 18:44:08 IST 2026
[2026-06-19 18:44:08,353.353 INFO    ] ================================================
[2026-06-19 18:44:08,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:44:08
[2026-06-19 18:44:09,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:44:09,832.832 INFO    ] Initializing speech engine...
[2026-06-19 18:44:09,840.840 INFO    ] 2026-06-19 18:44:09
[2026-06-19 18:44:10,101.101 INFO    ] 2026-06-19 18:44:10
[2026-06-19 18:44:10,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:44:10,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:44:10,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:44:10,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:44:10,634.634 INFO    ] time= 19/06/2026 18:44:10
[2026-06-19 18:44:10,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:44:10,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:44:10,787.787 INFO    ] No existing commands found in stream
[2026-06-19 18:44:15,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:44:15,812.812 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 18:44:16,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:44:16,583.583 INFO    ] Checking for system updates...
[2026-06-19 18:44:16,619.619 INFO    ] 200
[2026-06-19 18:44:16,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:16,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:44:16,684.684 INFO    ] No update needed
[2026-06-19 18:44:16,686.686 INFO    ] Checking for camera pi updates...
[2026-06-19 18:44:16,724.724 INFO    ] 200
[2026-06-19 18:44:16,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:16,767.767 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:44:16,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:44:16,818.818 INFO    ] No camera update needed
[2026-06-19 18:44:16,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:44:16,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:44:16,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:44:16,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:44:18,873.873 INFO    ] ================================================
[2026-06-19 18:44:18,888.888 INFO    ] Launching Daemon at Fri Jun 19 18:44:18 IST 2026
[2026-06-19 18:44:18,900.900 INFO    ] ================================================
[2026-06-19 18:44:19,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:44:19
[2026-06-19 18:44:20,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:44:20,543.543 INFO    ] Initializing speech engine...
[2026-06-19 18:44:20,557.557 INFO    ] 2026-06-19 18:44:20
[2026-06-19 18:44:20,838.838 INFO    ] 2026-06-19 18:44:20
[2026-06-19 18:44:20,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:44:21,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:44:21,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:44:21,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:44:21,391.391 INFO    ] time= 19/06/2026 18:44:21
[2026-06-19 18:44:21,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:44:21,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:44:21,530.530 INFO    ] No existing commands found in stream
[2026-06-19 18:44:26,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:44:26,564.564 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 18:44:30,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:44:30,595.595 INFO    ] Checking for system updates...
[2026-06-19 18:44:30,633.633 INFO    ] 200
[2026-06-19 18:44:30,636.636 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:30,690.690 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:44:30,692.692 INFO    ] No update needed
[2026-06-19 18:44:30,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 18:44:30,731.731 INFO    ] 200
[2026-06-19 18:44:30,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:30,780.780 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:44:30,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:44:30,838.838 INFO    ] No camera update needed
[2026-06-19 18:44:30,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:44:30,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:44:30,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:44:30,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:44:32,899.899 INFO    ] ================================================
[2026-06-19 18:44:32,914.914 INFO    ] Launching Daemon at Fri Jun 19 18:44:32 IST 2026
[2026-06-19 18:44:32,925.925 INFO    ] ================================================
[2026-06-19 18:44:33,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:44:33
[2026-06-19 18:44:34,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:44:34,391.391 INFO    ] Initializing speech engine...
[2026-06-19 18:44:34,417.417 INFO    ] 2026-06-19 18:44:34
[2026-06-19 18:44:34,695.695 INFO    ] 2026-06-19 18:44:34
[2026-06-19 18:44:34,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:44:34,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:44:34,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:44:35,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:44:35,122.122 INFO    ] time= 19/06/2026 18:44:35
[2026-06-19 18:44:35,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:44:35,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:44:35,216.216 INFO    ] No existing commands found in stream
[2026-06-19 18:44:40,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:44:40,249.249 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 18:44:42,341.341 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:44:42,343.343 INFO    ] Checking for system updates...
[2026-06-19 18:44:42,380.380 INFO    ] 200
[2026-06-19 18:44:42,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:42,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:44:42,437.437 INFO    ] No update needed
[2026-06-19 18:44:42,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 18:44:42,473.473 INFO    ] 200
[2026-06-19 18:44:42,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:42,516.516 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:44:42,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:44:42,564.564 INFO    ] No camera update needed
[2026-06-19 18:44:42,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:44:42,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:44:42,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:44:42,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:44:44,619.619 INFO    ] ================================================
[2026-06-19 18:44:44,634.634 INFO    ] Launching Daemon at Fri Jun 19 18:44:44 IST 2026
[2026-06-19 18:44:44,645.645 INFO    ] ================================================
[2026-06-19 18:44:45,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:44:45
[2026-06-19 18:44:45,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:44:46,113.113 INFO    ] Initializing speech engine...
[2026-06-19 18:44:46,120.120 INFO    ] 2026-06-19 18:44:46
[2026-06-19 18:44:46,383.383 INFO    ] 2026-06-19 18:44:46
[2026-06-19 18:44:46,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:44:46,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:44:46,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:44:46,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:44:46,848.848 INFO    ] time= 19/06/2026 18:44:46
[2026-06-19 18:44:46,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:44:46,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:44:47,084.084 INFO    ] No existing commands found in stream
[2026-06-19 18:44:52,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:44:52,100.100 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 18:44:54,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:44:54,919.919 INFO    ] Checking for system updates...
[2026-06-19 18:44:54,959.959 INFO    ] 200
[2026-06-19 18:44:54,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:55,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:44:55,019.019 INFO    ] No update needed
[2026-06-19 18:44:55,021.021 INFO    ] Checking for camera pi updates...
[2026-06-19 18:44:55,059.059 INFO    ] 200
[2026-06-19 18:44:55,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:44:55,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:44:55,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:44:55,167.167 INFO    ] No camera update needed
[2026-06-19 18:44:55,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:44:55,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:44:55,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:44:55,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:44:57,223.223 INFO    ] ================================================
[2026-06-19 18:44:57,239.239 INFO    ] Launching Daemon at Fri Jun 19 18:44:57 IST 2026
[2026-06-19 18:44:57,251.251 INFO    ] ================================================
[2026-06-19 18:44:57,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:44:57
[2026-06-19 18:44:58,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:44:58,688.688 INFO    ] Initializing speech engine...
[2026-06-19 18:44:58,707.707 INFO    ] 2026-06-19 18:44:58
[2026-06-19 18:44:58,979.979 INFO    ] 2026-06-19 18:44:58
[2026-06-19 18:44:59,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:44:59,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:44:59,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:44:59,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:44:59,407.407 INFO    ] time= 19/06/2026 18:44:59
[2026-06-19 18:44:59,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:44:59,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:44:59,565.565 INFO    ] No existing commands found in stream
[2026-06-19 18:45:04,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:45:04,593.593 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-19 18:45:08,061.061 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:45:08,064.064 INFO    ] Checking for system updates...
[2026-06-19 18:45:08,100.100 INFO    ] 200
[2026-06-19 18:45:08,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:45:08,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:45:08,159.159 INFO    ] No update needed
[2026-06-19 18:45:08,161.161 INFO    ] Checking for camera pi updates...
[2026-06-19 18:45:08,196.196 INFO    ] 200
[2026-06-19 18:45:08,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:45:08,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:45:08,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:45:08,287.287 INFO    ] No camera update needed
[2026-06-19 18:45:08,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:45:08,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:45:08,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:45:08,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:45:10,345.345 INFO    ] ================================================
[2026-06-19 18:45:10,361.361 INFO    ] Launching Daemon at Fri Jun 19 18:45:10 IST 2026
[2026-06-19 18:45:10,373.373 INFO    ] ================================================
[2026-06-19 18:45:10,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:45:10
[2026-06-19 18:45:11,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:45:11,803.803 INFO    ] Initializing speech engine...
[2026-06-19 18:45:11,812.812 INFO    ] 2026-06-19 18:45:11
[2026-06-19 18:45:12,065.065 INFO    ] 2026-06-19 18:45:12
[2026-06-19 18:45:12,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:45:12,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:45:12,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:45:12,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:45:12,566.566 INFO    ] time= 19/06/2026 18:45:12
[2026-06-19 18:45:12,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:45:12,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:45:12,772.772 INFO    ] No existing commands found in stream
[2026-06-19 18:45:17,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:45:17,800.800 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 18:45:22,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:45:22,194.194 INFO    ] Checking for system updates...
[2026-06-19 18:45:22,230.230 INFO    ] 200
[2026-06-19 18:45:22,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:45:22,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:45:22,288.288 INFO    ] No update needed
[2026-06-19 18:45:22,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 18:45:22,328.328 INFO    ] 200
[2026-06-19 18:45:22,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:45:22,373.373 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:45:22,513.513 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:45:22,516.516 INFO    ] No camera update needed
[2026-06-19 18:45:22,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:45:22,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:45:22,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:45:22,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:45:24,575.575 INFO    ] ================================================
[2026-06-19 18:45:24,590.590 INFO    ] Launching Daemon at Fri Jun 19 18:45:24 IST 2026
[2026-06-19 18:45:24,601.601 INFO    ] ================================================
[2026-06-19 18:45:25,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:45:25
[2026-06-19 18:45:25,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:45:26,068.068 INFO    ] Initializing speech engine...
[2026-06-19 18:45:26,075.075 INFO    ] 2026-06-19 18:45:26
[2026-06-19 18:45:26,337.337 INFO    ] 2026-06-19 18:45:26
[2026-06-19 18:45:26,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:45:26,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:45:26,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:45:26,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:45:26,814.814 INFO    ] time= 19/06/2026 18:45:26
[2026-06-19 18:45:26,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:45:26,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:45:27,061.061 INFO    ] No existing commands found in stream
[2026-06-19 18:45:32,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:45:32,095.095 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 18:45:35,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:45:35,785.785 INFO    ] Checking for system updates...
[2026-06-19 18:45:35,829.829 INFO    ] 200
[2026-06-19 18:45:35,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:45:35,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:45:35,893.893 INFO    ] No update needed
[2026-06-19 18:45:35,895.895 INFO    ] Checking for camera pi updates...
[2026-06-19 18:45:35,938.938 INFO    ] 200
[2026-06-19 18:45:35,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:45:35,990.990 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:45:36,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:45:36,037.037 INFO    ] No camera update needed
[2026-06-19 18:45:36,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:45:36,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:45:36,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:45:36,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:45:38,097.097 INFO    ] ================================================
[2026-06-19 18:45:38,114.114 INFO    ] Launching Daemon at Fri Jun 19 18:45:38 IST 2026
[2026-06-19 18:45:38,127.127 INFO    ] ================================================
[2026-06-19 18:45:38,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:45:38
[2026-06-19 18:45:39,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:45:39,646.646 INFO    ] Initializing speech engine...
[2026-06-19 18:45:39,675.675 INFO    ] 2026-06-19 18:45:39
[2026-06-19 18:45:39,957.957 INFO    ] 2026-06-19 18:45:39
[2026-06-19 18:45:39,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:45:40,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:45:40,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:45:40,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:45:40,440.440 INFO    ] time= 19/06/2026 18:45:40
[2026-06-19 18:45:40,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:45:40,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:45:40,662.662 INFO    ] No existing commands found in stream
[2026-06-19 18:45:45,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:45:45,690.690 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 18:45:48,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:45:48,980.980 INFO    ] Checking for system updates...
[2026-06-19 18:45:49,016.016 INFO    ] 200
[2026-06-19 18:45:49,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:45:49,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:45:49,076.076 INFO    ] No update needed
[2026-06-19 18:45:49,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 18:45:49,112.112 INFO    ] 200
[2026-06-19 18:45:49,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:45:49,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:45:49,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:45:49,198.198 INFO    ] No camera update needed
[2026-06-19 18:45:49,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:45:49,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:45:49,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:45:49,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:45:51,256.256 INFO    ] ================================================
[2026-06-19 18:45:51,272.272 INFO    ] Launching Daemon at Fri Jun 19 18:45:51 IST 2026
[2026-06-19 18:45:51,282.282 INFO    ] ================================================
[2026-06-19 18:45:51,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:45:51
[2026-06-19 18:45:52,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:45:52,934.934 INFO    ] Initializing speech engine...
[2026-06-19 18:45:52,948.948 INFO    ] 2026-06-19 18:45:52
[2026-06-19 18:45:53,233.233 INFO    ] 2026-06-19 18:45:53
[2026-06-19 18:45:53,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:45:53,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:45:53,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:45:53,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:45:53,786.786 INFO    ] time= 19/06/2026 18:45:53
[2026-06-19 18:45:53,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:45:53,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:45:53,931.931 INFO    ] No existing commands found in stream
[2026-06-19 18:45:58,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:45:58,963.963 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 18:46:02,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:46:02,122.122 INFO    ] Checking for system updates...
[2026-06-19 18:46:02,187.187 INFO    ] 200
[2026-06-19 18:46:02,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:02,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:46:02,298.298 INFO    ] No update needed
[2026-06-19 18:46:02,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 18:46:02,360.360 INFO    ] 200
[2026-06-19 18:46:02,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:02,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:46:02,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:46:02,466.466 INFO    ] No camera update needed
[2026-06-19 18:46:02,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:46:02,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:46:02,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:46:02,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:46:04,536.536 INFO    ] ================================================
[2026-06-19 18:46:04,552.552 INFO    ] Launching Daemon at Fri Jun 19 18:46:04 IST 2026
[2026-06-19 18:46:04,563.563 INFO    ] ================================================
[2026-06-19 18:46:05,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:46:05
[2026-06-19 18:46:05,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:46:05,972.972 INFO    ] Initializing speech engine...
[2026-06-19 18:46:05,997.997 INFO    ] 2026-06-19 18:46:05
[2026-06-19 18:46:06,254.254 INFO    ] 2026-06-19 18:46:06
[2026-06-19 18:46:06,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:46:06,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:46:06,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:46:06,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:46:06,768.768 INFO    ] time= 19/06/2026 18:46:06
[2026-06-19 18:46:06,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:46:06,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:46:06,988.988 INFO    ] No existing commands found in stream
[2026-06-19 18:46:12,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:46:12,012.012 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 18:46:16,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:46:16,257.257 INFO    ] Checking for system updates...
[2026-06-19 18:46:16,294.294 INFO    ] 200
[2026-06-19 18:46:16,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:16,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:46:16,353.353 INFO    ] No update needed
[2026-06-19 18:46:16,355.355 INFO    ] Checking for camera pi updates...
[2026-06-19 18:46:16,390.390 INFO    ] 200
[2026-06-19 18:46:16,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:16,432.432 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:46:16,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:46:16,491.491 INFO    ] No camera update needed
[2026-06-19 18:46:16,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:46:16,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:46:16,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:46:16,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:46:18,549.549 INFO    ] ================================================
[2026-06-19 18:46:18,564.564 INFO    ] Launching Daemon at Fri Jun 19 18:46:18 IST 2026
[2026-06-19 18:46:18,576.576 INFO    ] ================================================
[2026-06-19 18:46:19,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:46:19
[2026-06-19 18:46:19,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:46:20,006.006 INFO    ] Initializing speech engine...
[2026-06-19 18:46:20,014.014 INFO    ] 2026-06-19 18:46:20
[2026-06-19 18:46:20,268.268 INFO    ] 2026-06-19 18:46:20
[2026-06-19 18:46:20,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:46:20,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:46:20,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:46:20,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:46:20,756.756 INFO    ] time= 19/06/2026 18:46:20
[2026-06-19 18:46:20,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:46:20,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:46:20,924.924 INFO    ] No existing commands found in stream
[2026-06-19 18:46:25,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:46:25,964.964 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 18:46:28,071.071 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:46:28,073.073 INFO    ] Checking for system updates...
[2026-06-19 18:46:28,110.110 INFO    ] 200
[2026-06-19 18:46:28,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:28,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:46:28,170.170 INFO    ] No update needed
[2026-06-19 18:46:28,172.172 INFO    ] Checking for camera pi updates...
[2026-06-19 18:46:28,206.206 INFO    ] 200
[2026-06-19 18:46:28,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:28,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:46:28,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:46:28,301.301 INFO    ] No camera update needed
[2026-06-19 18:46:28,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:46:28,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:46:28,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:46:28,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:46:30,356.356 INFO    ] ================================================
[2026-06-19 18:46:30,372.372 INFO    ] Launching Daemon at Fri Jun 19 18:46:30 IST 2026
[2026-06-19 18:46:30,383.383 INFO    ] ================================================
[2026-06-19 18:46:31,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:46:31
[2026-06-19 18:46:31,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:46:32,039.039 INFO    ] Initializing speech engine...
[2026-06-19 18:46:32,051.051 INFO    ] 2026-06-19 18:46:32
[2026-06-19 18:46:32,391.391 INFO    ] 2026-06-19 18:46:32
[2026-06-19 18:46:32,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:46:32,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:46:32,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:46:32,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:46:32,934.934 INFO    ] time= 19/06/2026 18:46:32
[2026-06-19 18:46:32,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:46:32,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:46:33,095.095 INFO    ] No existing commands found in stream
[2026-06-19 18:46:38,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:46:38,126.126 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 18:46:39,615.615 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:46:39,618.618 INFO    ] Checking for system updates...
[2026-06-19 18:46:39,657.657 INFO    ] 200
[2026-06-19 18:46:39,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:39,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:46:39,714.714 INFO    ] No update needed
[2026-06-19 18:46:39,717.717 INFO    ] Checking for camera pi updates...
[2026-06-19 18:46:39,750.750 INFO    ] 200
[2026-06-19 18:46:39,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:39,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:46:39,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:46:39,844.844 INFO    ] No camera update needed
[2026-06-19 18:46:39,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:46:39,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:46:39,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:46:39,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:46:41,900.900 INFO    ] ================================================
[2026-06-19 18:46:41,916.916 INFO    ] Launching Daemon at Fri Jun 19 18:46:41 IST 2026
[2026-06-19 18:46:41,927.927 INFO    ] ================================================
[2026-06-19 18:46:42,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:46:42
[2026-06-19 18:46:43,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:46:43,356.356 INFO    ] Initializing speech engine...
[2026-06-19 18:46:43,381.381 INFO    ] 2026-06-19 18:46:43
[2026-06-19 18:46:43,653.653 INFO    ] 2026-06-19 18:46:43
[2026-06-19 18:46:43,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:46:43,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:46:43,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:46:44,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:46:44,075.075 INFO    ] time= 19/06/2026 18:46:44
[2026-06-19 18:46:44,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:46:44,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:46:44,162.162 INFO    ] No existing commands found in stream
[2026-06-19 18:46:49,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:46:49,200.200 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 18:46:52,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:46:52,155.155 INFO    ] Checking for system updates...
[2026-06-19 18:46:52,192.192 INFO    ] 200
[2026-06-19 18:46:52,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:52,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:46:52,249.249 INFO    ] No update needed
[2026-06-19 18:46:52,252.252 INFO    ] Checking for camera pi updates...
[2026-06-19 18:46:52,286.286 INFO    ] 200
[2026-06-19 18:46:52,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:46:52,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:46:52,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:46:52,381.381 INFO    ] No camera update needed
[2026-06-19 18:46:52,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:46:52,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:46:52,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:46:52,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:46:54,438.438 INFO    ] ================================================
[2026-06-19 18:46:54,453.453 INFO    ] Launching Daemon at Fri Jun 19 18:46:54 IST 2026
[2026-06-19 18:46:54,464.464 INFO    ] ================================================
[2026-06-19 18:46:55,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:46:55
[2026-06-19 18:46:55,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:46:55,874.874 INFO    ] Initializing speech engine...
[2026-06-19 18:46:55,882.882 INFO    ] 2026-06-19 18:46:55
[2026-06-19 18:46:56,157.157 INFO    ] 2026-06-19 18:46:56
[2026-06-19 18:46:56,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:46:56,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:46:56,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:46:56,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:46:56,664.664 INFO    ] time= 19/06/2026 18:46:56
[2026-06-19 18:46:56,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:46:56,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:46:56,870.870 INFO    ] No existing commands found in stream
[2026-06-19 18:47:01,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:47:01,901.901 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 18:47:02,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:47:02,534.534 INFO    ] Checking for system updates...
[2026-06-19 18:47:02,587.587 INFO    ] 200
[2026-06-19 18:47:02,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:02,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:47:02,657.657 INFO    ] No update needed
[2026-06-19 18:47:02,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 18:47:02,704.704 INFO    ] 200
[2026-06-19 18:47:02,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:02,757.757 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:47:02,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:47:02,793.793 INFO    ] No camera update needed
[2026-06-19 18:47:02,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:47:02,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:47:02,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:47:02,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:47:04,856.856 INFO    ] ================================================
[2026-06-19 18:47:04,871.871 INFO    ] Launching Daemon at Fri Jun 19 18:47:04 IST 2026
[2026-06-19 18:47:04,882.882 INFO    ] ================================================
[2026-06-19 18:47:05,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:47:05
[2026-06-19 18:47:06,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:47:06,333.333 INFO    ] Initializing speech engine...
[2026-06-19 18:47:06,348.348 INFO    ] 2026-06-19 18:47:06
[2026-06-19 18:47:06,637.637 INFO    ] 2026-06-19 18:47:06
[2026-06-19 18:47:06,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:47:06,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:47:06,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:47:07,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:47:07,022.022 INFO    ] time= 19/06/2026 18:47:07
[2026-06-19 18:47:07,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:47:07,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:47:07,187.187 INFO    ] No existing commands found in stream
[2026-06-19 18:47:12,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:47:12,215.215 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 18:47:15,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:47:15,885.885 INFO    ] Checking for system updates...
[2026-06-19 18:47:15,921.921 INFO    ] 200
[2026-06-19 18:47:15,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:15,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:47:15,979.979 INFO    ] No update needed
[2026-06-19 18:47:15,982.982 INFO    ] Checking for camera pi updates...
[2026-06-19 18:47:16,016.016 INFO    ] 200
[2026-06-19 18:47:16,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:16,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:47:16,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:47:16,106.106 INFO    ] No camera update needed
[2026-06-19 18:47:16,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:47:16,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:47:16,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:47:16,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:47:18,163.163 INFO    ] ================================================
[2026-06-19 18:47:18,179.179 INFO    ] Launching Daemon at Fri Jun 19 18:47:18 IST 2026
[2026-06-19 18:47:18,190.190 INFO    ] ================================================
[2026-06-19 18:47:18,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:47:18
[2026-06-19 18:47:19,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:47:19,819.819 INFO    ] Initializing speech engine...
[2026-06-19 18:47:19,829.829 INFO    ] 2026-06-19 18:47:19
[2026-06-19 18:47:20,147.147 INFO    ] 2026-06-19 18:47:20
[2026-06-19 18:47:20,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:47:20,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:47:20,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:47:20,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:47:20,667.667 INFO    ] time= 19/06/2026 18:47:20
[2026-06-19 18:47:20,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:47:20,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:47:20,845.845 INFO    ] No existing commands found in stream
[2026-06-19 18:47:25,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:47:25,879.879 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 18:47:26,534.534 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:47:26,537.537 INFO    ] Checking for system updates...
[2026-06-19 18:47:26,576.576 INFO    ] 200
[2026-06-19 18:47:26,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:26,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:47:26,636.636 INFO    ] No update needed
[2026-06-19 18:47:26,639.639 INFO    ] Checking for camera pi updates...
[2026-06-19 18:47:26,675.675 INFO    ] 200
[2026-06-19 18:47:26,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:26,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:47:26,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:47:26,869.869 INFO    ] No camera update needed
[2026-06-19 18:47:26,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:47:26,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:47:26,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:47:26,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:47:28,929.929 INFO    ] ================================================
[2026-06-19 18:47:28,944.944 INFO    ] Launching Daemon at Fri Jun 19 18:47:28 IST 2026
[2026-06-19 18:47:28,955.955 INFO    ] ================================================
[2026-06-19 18:47:29,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:47:29
[2026-06-19 18:47:30,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:47:30,536.536 INFO    ] Initializing speech engine...
[2026-06-19 18:47:30,552.552 INFO    ] 2026-06-19 18:47:30
[2026-06-19 18:47:30,810.810 INFO    ] 2026-06-19 18:47:30
[2026-06-19 18:47:30,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:47:31,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:47:31,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:47:31,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:47:31,228.228 INFO    ] time= 19/06/2026 18:47:31
[2026-06-19 18:47:31,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:47:31,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:47:31,385.385 INFO    ] No existing commands found in stream
[2026-06-19 18:47:36,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:47:36,419.419 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 18:47:38,963.963 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:47:38,966.966 INFO    ] Checking for system updates...
[2026-06-19 18:47:39,004.004 INFO    ] 200
[2026-06-19 18:47:39,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:39,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:47:39,070.070 INFO    ] No update needed
[2026-06-19 18:47:39,073.073 INFO    ] Checking for camera pi updates...
[2026-06-19 18:47:39,108.108 INFO    ] 200
[2026-06-19 18:47:39,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:39,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:47:39,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:47:39,209.209 INFO    ] No camera update needed
[2026-06-19 18:47:39,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:47:39,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:47:39,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:47:39,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:47:41,267.267 INFO    ] ================================================
[2026-06-19 18:47:41,283.283 INFO    ] Launching Daemon at Fri Jun 19 18:47:41 IST 2026
[2026-06-19 18:47:41,293.293 INFO    ] ================================================
[2026-06-19 18:47:41,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:47:41
[2026-06-19 18:47:42,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:47:42,765.765 INFO    ] Initializing speech engine...
[2026-06-19 18:47:42,780.780 INFO    ] 2026-06-19 18:47:42
[2026-06-19 18:47:43,062.062 INFO    ] 2026-06-19 18:47:43
[2026-06-19 18:47:43,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:47:43,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:47:43,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:47:43,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:47:43,644.644 INFO    ] time= 19/06/2026 18:47:43
[2026-06-19 18:47:43,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:47:43,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:47:43,763.763 INFO    ] No existing commands found in stream
[2026-06-19 18:47:48,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:47:48,791.791 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 18:47:51,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:47:51,347.347 INFO    ] Checking for system updates...
[2026-06-19 18:47:51,383.383 INFO    ] 200
[2026-06-19 18:47:51,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:51,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:47:51,442.442 INFO    ] No update needed
[2026-06-19 18:47:51,444.444 INFO    ] Checking for camera pi updates...
[2026-06-19 18:47:51,478.478 INFO    ] 200
[2026-06-19 18:47:51,481.481 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:47:51,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:47:51,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:47:51,556.556 INFO    ] No camera update needed
[2026-06-19 18:47:51,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:47:51,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:47:51,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:47:51,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:47:53,612.612 INFO    ] ================================================
[2026-06-19 18:47:53,628.628 INFO    ] Launching Daemon at Fri Jun 19 18:47:53 IST 2026
[2026-06-19 18:47:53,638.638 INFO    ] ================================================
[2026-06-19 18:47:54,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:47:54
[2026-06-19 18:47:54,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:47:55,053.053 INFO    ] Initializing speech engine...
[2026-06-19 18:47:55,066.066 INFO    ] 2026-06-19 18:47:55
[2026-06-19 18:47:55,333.333 INFO    ] 2026-06-19 18:47:55
[2026-06-19 18:47:55,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:47:55,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:47:55,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:47:55,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:47:55,800.800 INFO    ] time= 19/06/2026 18:47:55
[2026-06-19 18:47:55,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:47:55,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:47:56,042.042 INFO    ] No existing commands found in stream
[2026-06-19 18:48:01,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:48:01,075.075 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 18:48:04,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:48:04,284.284 INFO    ] Checking for system updates...
[2026-06-19 18:48:04,321.321 INFO    ] 200
[2026-06-19 18:48:04,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:04,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:48:04,380.380 INFO    ] No update needed
[2026-06-19 18:48:04,382.382 INFO    ] Checking for camera pi updates...
[2026-06-19 18:48:04,416.416 INFO    ] 200
[2026-06-19 18:48:04,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:04,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:48:04,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:48:04,509.509 INFO    ] No camera update needed
[2026-06-19 18:48:04,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:48:04,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:48:04,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:48:04,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:48:06,565.565 INFO    ] ================================================
[2026-06-19 18:48:06,581.581 INFO    ] Launching Daemon at Fri Jun 19 18:48:06 IST 2026
[2026-06-19 18:48:06,592.592 INFO    ] ================================================
[2026-06-19 18:48:07,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:48:07
[2026-06-19 18:48:07,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:48:08,053.053 INFO    ] Initializing speech engine...
[2026-06-19 18:48:08,072.072 INFO    ] 2026-06-19 18:48:08
[2026-06-19 18:48:08,338.338 INFO    ] 2026-06-19 18:48:08
[2026-06-19 18:48:08,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:48:08,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:48:08,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:48:08,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:48:08,741.741 INFO    ] time= 19/06/2026 18:48:08
[2026-06-19 18:48:08,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:48:08,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:48:08,907.907 INFO    ] No existing commands found in stream
[2026-06-19 18:48:13,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:48:13,940.940 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 18:48:18,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:48:18,174.174 INFO    ] Checking for system updates...
[2026-06-19 18:48:18,211.211 INFO    ] 200
[2026-06-19 18:48:18,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:18,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:48:18,275.275 INFO    ] No update needed
[2026-06-19 18:48:18,277.277 INFO    ] Checking for camera pi updates...
[2026-06-19 18:48:18,312.312 INFO    ] 200
[2026-06-19 18:48:18,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:18,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:48:18,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:48:18,406.406 INFO    ] No camera update needed
[2026-06-19 18:48:18,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:48:18,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:48:18,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:48:18,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:48:20,461.461 INFO    ] ================================================
[2026-06-19 18:48:20,477.477 INFO    ] Launching Daemon at Fri Jun 19 18:48:20 IST 2026
[2026-06-19 18:48:20,489.489 INFO    ] ================================================
[2026-06-19 18:48:21,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:48:21
[2026-06-19 18:48:21,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:48:21,948.948 INFO    ] Initializing speech engine...
[2026-06-19 18:48:21,956.956 INFO    ] 2026-06-19 18:48:21
[2026-06-19 18:48:22,229.229 INFO    ] 2026-06-19 18:48:22
[2026-06-19 18:48:22,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:48:22,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:48:22,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:48:22,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:48:22,721.721 INFO    ] time= 19/06/2026 18:48:22
[2026-06-19 18:48:22,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:48:22,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:48:22,915.915 INFO    ] No existing commands found in stream
[2026-06-19 18:48:27,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:48:27,931.931 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 18:48:30,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:48:30,913.913 INFO    ] Checking for system updates...
[2026-06-19 18:48:30,949.949 INFO    ] 200
[2026-06-19 18:48:30,951.951 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:31,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:48:31,014.014 INFO    ] No update needed
[2026-06-19 18:48:31,017.017 INFO    ] Checking for camera pi updates...
[2026-06-19 18:48:31,051.051 INFO    ] 200
[2026-06-19 18:48:31,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:31,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:48:31,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:48:31,146.146 INFO    ] No camera update needed
[2026-06-19 18:48:31,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:48:31,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:48:31,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:48:31,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:48:33,202.202 INFO    ] ================================================
[2026-06-19 18:48:33,218.218 INFO    ] Launching Daemon at Fri Jun 19 18:48:33 IST 2026
[2026-06-19 18:48:33,229.229 INFO    ] ================================================
[2026-06-19 18:48:33,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:48:33
[2026-06-19 18:48:34,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:48:34,822.822 INFO    ] Initializing speech engine...
[2026-06-19 18:48:34,830.830 INFO    ] 2026-06-19 18:48:34
[2026-06-19 18:48:35,100.100 INFO    ] 2026-06-19 18:48:35
[2026-06-19 18:48:35,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:48:35,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:48:35,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:48:35,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:48:35,600.600 INFO    ] time= 19/06/2026 18:48:35
[2026-06-19 18:48:35,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:48:35,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:48:35,814.814 INFO    ] No existing commands found in stream
[2026-06-19 18:48:40,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:48:40,843.843 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 18:48:44,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:48:44,109.109 INFO    ] Checking for system updates...
[2026-06-19 18:48:44,146.146 INFO    ] 200
[2026-06-19 18:48:44,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:44,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:48:44,205.205 INFO    ] No update needed
[2026-06-19 18:48:44,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 18:48:44,243.243 INFO    ] 200
[2026-06-19 18:48:44,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:44,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:48:44,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:48:44,337.337 INFO    ] No camera update needed
[2026-06-19 18:48:44,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:48:44,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:48:44,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:48:44,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:48:46,395.395 INFO    ] ================================================
[2026-06-19 18:48:46,410.410 INFO    ] Launching Daemon at Fri Jun 19 18:48:46 IST 2026
[2026-06-19 18:48:46,421.421 INFO    ] ================================================
[2026-06-19 18:48:46,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:48:46
[2026-06-19 18:48:47,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:48:47,955.955 INFO    ] Initializing speech engine...
[2026-06-19 18:48:47,963.963 INFO    ] 2026-06-19 18:48:47
[2026-06-19 18:48:48,241.241 INFO    ] 2026-06-19 18:48:48
[2026-06-19 18:48:48,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:48:48,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:48:48,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:48:48,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:48:48,753.753 INFO    ] time= 19/06/2026 18:48:48
[2026-06-19 18:48:48,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:48:48,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:48:48,964.964 INFO    ] No existing commands found in stream
[2026-06-19 18:48:53,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:48:53,983.983 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 18:48:55,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:48:55,208.208 INFO    ] Checking for system updates...
[2026-06-19 18:48:55,249.249 INFO    ] 200
[2026-06-19 18:48:55,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:55,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:48:55,308.308 INFO    ] No update needed
[2026-06-19 18:48:55,311.311 INFO    ] Checking for camera pi updates...
[2026-06-19 18:48:55,346.346 INFO    ] 200
[2026-06-19 18:48:55,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:48:55,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:48:55,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:48:55,444.444 INFO    ] No camera update needed
[2026-06-19 18:48:55,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:48:55,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:48:55,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:48:55,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:48:57,502.502 INFO    ] ================================================
[2026-06-19 18:48:57,517.517 INFO    ] Launching Daemon at Fri Jun 19 18:48:57 IST 2026
[2026-06-19 18:48:57,528.528 INFO    ] ================================================
[2026-06-19 18:48:58,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:48:58
[2026-06-19 18:48:58,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:48:59,136.136 INFO    ] Initializing speech engine...
[2026-06-19 18:48:59,142.142 INFO    ] 2026-06-19 18:48:59
[2026-06-19 18:48:59,414.414 INFO    ] 2026-06-19 18:48:59
[2026-06-19 18:48:59,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:48:59,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:48:59,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:48:59,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:48:59,965.965 INFO    ] time= 19/06/2026 18:48:59
[2026-06-19 18:48:59,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:48:59,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:49:00,121.121 INFO    ] No existing commands found in stream
[2026-06-19 18:49:05,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:49:05,145.145 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 18:49:06,988.988 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:49:06,991.991 INFO    ] Checking for system updates...
[2026-06-19 18:49:07,032.032 INFO    ] 200
[2026-06-19 18:49:07,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:07,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:07,093.093 INFO    ] No update needed
[2026-06-19 18:49:07,095.095 INFO    ] Checking for camera pi updates...
[2026-06-19 18:49:07,133.133 INFO    ] 200
[2026-06-19 18:49:07,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:07,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:49:07,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:07,231.231 INFO    ] No camera update needed
[2026-06-19 18:49:07,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:49:07,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:49:07,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:49:07,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:49:09,290.290 INFO    ] ================================================
[2026-06-19 18:49:09,306.306 INFO    ] Launching Daemon at Fri Jun 19 18:49:09 IST 2026
[2026-06-19 18:49:09,317.317 INFO    ] ================================================
[2026-06-19 18:49:09,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:49:09
[2026-06-19 18:49:10,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:49:10,971.971 INFO    ] Initializing speech engine...
[2026-06-19 18:49:10,980.980 INFO    ] 2026-06-19 18:49:10
[2026-06-19 18:49:11,252.252 INFO    ] 2026-06-19 18:49:11
[2026-06-19 18:49:11,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:49:11,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:49:11,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:49:11,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:49:11,752.752 INFO    ] time= 19/06/2026 18:49:11
[2026-06-19 18:49:11,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:49:11,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:49:11,971.971 INFO    ] No existing commands found in stream
[2026-06-19 18:49:16,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:49:16,991.991 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 18:49:19,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:49:19,018.018 INFO    ] Checking for system updates...
[2026-06-19 18:49:19,058.058 INFO    ] 200
[2026-06-19 18:49:19,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:19,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:19,120.120 INFO    ] No update needed
[2026-06-19 18:49:19,122.122 INFO    ] Checking for camera pi updates...
[2026-06-19 18:49:19,157.157 INFO    ] 200
[2026-06-19 18:49:19,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:19,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:49:19,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:19,247.247 INFO    ] No camera update needed
[2026-06-19 18:49:19,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:49:19,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:49:19,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:49:19,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:49:21,301.301 INFO    ] ================================================
[2026-06-19 18:49:21,317.317 INFO    ] Launching Daemon at Fri Jun 19 18:49:21 IST 2026
[2026-06-19 18:49:21,328.328 INFO    ] ================================================
[2026-06-19 18:49:21,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:49:21
[2026-06-19 18:49:22,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:49:22,758.758 INFO    ] Initializing speech engine...
[2026-06-19 18:49:22,764.764 INFO    ] 2026-06-19 18:49:22
[2026-06-19 18:49:23,063.063 INFO    ] 2026-06-19 18:49:23
[2026-06-19 18:49:23,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:49:23,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:49:23,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:49:23,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:49:23,480.480 INFO    ] time= 19/06/2026 18:49:23
[2026-06-19 18:49:23,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:49:23,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:49:23,671.671 INFO    ] No existing commands found in stream
[2026-06-19 18:49:28,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:49:28,699.699 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 18:49:32,102.102 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:49:32,105.105 INFO    ] Checking for system updates...
[2026-06-19 18:49:32,144.144 INFO    ] 200
[2026-06-19 18:49:32,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:32,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:32,214.214 INFO    ] No update needed
[2026-06-19 18:49:32,218.218 INFO    ] Checking for camera pi updates...
[2026-06-19 18:49:32,262.262 INFO    ] 200
[2026-06-19 18:49:32,265.265 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:32,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:49:32,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:32,452.452 INFO    ] No camera update needed
[2026-06-19 18:49:32,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:49:32,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:49:32,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:49:32,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:49:34,510.510 INFO    ] ================================================
[2026-06-19 18:49:34,525.525 INFO    ] Launching Daemon at Fri Jun 19 18:49:34 IST 2026
[2026-06-19 18:49:34,536.536 INFO    ] ================================================
[2026-06-19 18:49:35,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:49:35
[2026-06-19 18:49:35,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:49:35,945.945 INFO    ] Initializing speech engine...
[2026-06-19 18:49:35,968.968 INFO    ] 2026-06-19 18:49:35
[2026-06-19 18:49:36,229.229 INFO    ] 2026-06-19 18:49:36
[2026-06-19 18:49:36,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:49:36,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:49:36,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:49:36,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:49:36,689.689 INFO    ] time= 19/06/2026 18:49:36
[2026-06-19 18:49:36,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:49:36,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:49:36,937.937 INFO    ] No existing commands found in stream
[2026-06-19 18:49:41,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:49:41,970.970 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 18:49:42,578.578 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:49:42,581.581 INFO    ] Checking for system updates...
[2026-06-19 18:49:42,617.617 INFO    ] 200
[2026-06-19 18:49:42,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:42,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:42,676.676 INFO    ] No update needed
[2026-06-19 18:49:42,678.678 INFO    ] Checking for camera pi updates...
[2026-06-19 18:49:42,716.716 INFO    ] 200
[2026-06-19 18:49:42,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:42,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:49:42,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:42,818.818 INFO    ] No camera update needed
[2026-06-19 18:49:42,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:49:42,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:49:42,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:49:42,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:49:44,875.875 INFO    ] ================================================
[2026-06-19 18:49:44,890.890 INFO    ] Launching Daemon at Fri Jun 19 18:49:44 IST 2026
[2026-06-19 18:49:44,901.901 INFO    ] ================================================
[2026-06-19 18:49:45,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:49:45
[2026-06-19 18:49:46,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:49:46,501.501 INFO    ] Initializing speech engine...
[2026-06-19 18:49:46,508.508 INFO    ] 2026-06-19 18:49:46
[2026-06-19 18:49:46,783.783 INFO    ] 2026-06-19 18:49:46
[2026-06-19 18:49:46,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:49:47,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:49:47,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:49:47,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:49:47,344.344 INFO    ] time= 19/06/2026 18:49:47
[2026-06-19 18:49:47,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:49:47,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:49:47,501.501 INFO    ] No existing commands found in stream
[2026-06-19 18:49:52,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:49:52,520.520 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 18:49:55,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:49:55,887.887 INFO    ] Checking for system updates...
[2026-06-19 18:49:55,926.926 INFO    ] 200
[2026-06-19 18:49:55,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:55,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:55,983.983 INFO    ] No update needed
[2026-06-19 18:49:55,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 18:49:56,019.019 INFO    ] 200
[2026-06-19 18:49:56,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:49:56,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:49:56,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:49:56,123.123 INFO    ] No camera update needed
[2026-06-19 18:49:56,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:49:56,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:49:56,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:49:56,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:49:58,179.179 INFO    ] ================================================
[2026-06-19 18:49:58,194.194 INFO    ] Launching Daemon at Fri Jun 19 18:49:58 IST 2026
[2026-06-19 18:49:58,205.205 INFO    ] ================================================
[2026-06-19 18:49:58,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:49:58
[2026-06-19 18:49:59,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:49:59,649.649 INFO    ] Initializing speech engine...
[2026-06-19 18:49:59,664.664 INFO    ] 2026-06-19 18:49:59
[2026-06-19 18:49:59,948.948 INFO    ] 2026-06-19 18:49:59
[2026-06-19 18:49:59,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:50:00,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:50:00,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:50:00,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:50:00,367.367 INFO    ] time= 19/06/2026 18:50:00
[2026-06-19 18:50:00,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:50:00,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:50:00,529.529 INFO    ] No existing commands found in stream
[2026-06-19 18:50:05,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:50:05,557.557 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 18:50:09,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:50:09,384.384 INFO    ] Checking for system updates...
[2026-06-19 18:50:09,424.424 INFO    ] 200
[2026-06-19 18:50:09,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:50:09,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:50:09,482.482 INFO    ] No update needed
[2026-06-19 18:50:09,484.484 INFO    ] Checking for camera pi updates...
[2026-06-19 18:50:09,519.519 INFO    ] 200
[2026-06-19 18:50:09,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:50:09,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:50:09,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:50:09,606.606 INFO    ] No camera update needed
[2026-06-19 18:50:09,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:50:09,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:50:09,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:50:09,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:50:11,660.660 INFO    ] ================================================
[2026-06-19 18:50:11,674.674 INFO    ] Launching Daemon at Fri Jun 19 18:50:11 IST 2026
[2026-06-19 18:50:11,687.687 INFO    ] ================================================
[2026-06-19 18:50:12,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:50:12
[2026-06-19 18:50:12,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:50:13,088.088 INFO    ] Initializing speech engine...
[2026-06-19 18:50:13,111.111 INFO    ] 2026-06-19 18:50:13
[2026-06-19 18:50:13,365.365 INFO    ] 2026-06-19 18:50:13
[2026-06-19 18:50:13,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:50:13,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:50:13,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:50:13,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:50:13,746.746 INFO    ] time= 19/06/2026 18:50:13
[2026-06-19 18:50:13,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:50:13,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:50:13,947.947 INFO    ] No existing commands found in stream
[2026-06-19 18:50:18,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:50:18,964.964 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 18:50:21,986.986 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:50:21,989.989 INFO    ] Checking for system updates...
[2026-06-19 18:50:22,027.027 INFO    ] 200
[2026-06-19 18:50:22,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:50:22,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:50:22,086.086 INFO    ] No update needed
[2026-06-19 18:50:22,089.089 INFO    ] Checking for camera pi updates...
[2026-06-19 18:50:22,125.125 INFO    ] 200
[2026-06-19 18:50:22,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:50:22,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:50:22,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:50:22,223.223 INFO    ] No camera update needed
[2026-06-19 18:50:22,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:50:22,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:50:22,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:50:22,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:50:24,281.281 INFO    ] ================================================
[2026-06-19 18:50:24,296.296 INFO    ] Launching Daemon at Fri Jun 19 18:50:24 IST 2026
[2026-06-19 18:50:24,307.307 INFO    ] ================================================
[2026-06-19 18:50:24,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:50:24
[2026-06-19 18:50:25,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:50:25,950.950 INFO    ] Initializing speech engine...
[2026-06-19 18:50:25,959.959 INFO    ] 2026-06-19 18:50:25
[2026-06-19 18:50:26,258.258 INFO    ] 2026-06-19 18:50:26
[2026-06-19 18:50:26,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:50:26,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:50:26,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:50:26,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:50:26,799.799 INFO    ] time= 19/06/2026 18:50:26
[2026-06-19 18:50:26,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:50:26,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:50:26,958.958 INFO    ] No existing commands found in stream
[2026-06-19 18:50:31,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:50:31,979.979 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 18:50:35,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:50:35,716.716 INFO    ] Checking for system updates...
[2026-06-19 18:50:35,752.752 INFO    ] 200
[2026-06-19 18:50:35,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:50:35,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:50:35,809.809 INFO    ] No update needed
[2026-06-19 18:50:35,812.812 INFO    ] Checking for camera pi updates...
[2026-06-19 18:50:35,846.846 INFO    ] 200
[2026-06-19 18:50:35,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:50:35,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:50:35,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:50:35,940.940 INFO    ] No camera update needed
[2026-06-19 18:50:35,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:50:35,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:50:35,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:50:35,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:50:38,995.995 INFO    ] ================================================
[2026-06-19 18:50:38,010.010 INFO    ] Launching Daemon at Fri Jun 19 18:50:38 IST 2026
[2026-06-19 18:50:38,021.021 INFO    ] ================================================
[2026-06-19 18:50:38,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:50:38
[2026-06-19 18:50:39,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:50:39,459.459 INFO    ] Initializing speech engine...
[2026-06-19 18:50:39,478.478 INFO    ] 2026-06-19 18:50:39
[2026-06-19 18:50:39,730.730 INFO    ] 2026-06-19 18:50:39
[2026-06-19 18:50:39,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:50:40,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:50:40,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:50:40,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:50:40,212.212 INFO    ] time= 19/06/2026 18:50:40
[2026-06-19 18:50:40,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:50:40,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:50:40,438.438 INFO    ] No existing commands found in stream
[2026-06-19 18:50:45,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:50:45,469.469 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 18:50:49,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:50:49,664.664 INFO    ] Checking for system updates...
[2026-06-19 18:50:49,703.703 INFO    ] 200
[2026-06-19 18:50:49,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:50:49,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:50:49,768.768 INFO    ] No update needed
[2026-06-19 18:50:49,770.770 INFO    ] Checking for camera pi updates...
[2026-06-19 18:50:49,809.809 INFO    ] 200
[2026-06-19 18:50:49,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:50:49,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:50:49,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:50:49,889.889 INFO    ] No camera update needed
[2026-06-19 18:50:49,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:50:49,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:50:49,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:50:49,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:50:51,948.948 INFO    ] ================================================
[2026-06-19 18:50:51,963.963 INFO    ] Launching Daemon at Fri Jun 19 18:50:51 IST 2026
[2026-06-19 18:50:51,974.974 INFO    ] ================================================
[2026-06-19 18:50:52,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:50:52
[2026-06-19 18:50:53,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:50:53,381.381 INFO    ] Initializing speech engine...
[2026-06-19 18:50:53,396.396 INFO    ] 2026-06-19 18:50:53
[2026-06-19 18:50:53,647.647 INFO    ] 2026-06-19 18:50:53
[2026-06-19 18:50:53,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:50:53,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:50:53,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:50:54,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:50:54,141.141 INFO    ] time= 19/06/2026 18:50:54
[2026-06-19 18:50:54,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:50:54,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:50:54,329.329 INFO    ] No existing commands found in stream
[2026-06-19 18:50:59,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:50:59,357.357 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 18:51:03,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:51:03,274.274 INFO    ] Checking for system updates...
[2026-06-19 18:51:03,319.319 INFO    ] 200
[2026-06-19 18:51:03,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:03,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:51:03,388.388 INFO    ] No update needed
[2026-06-19 18:51:03,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 18:51:03,430.430 INFO    ] 200
[2026-06-19 18:51:03,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:03,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:51:03,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:51:03,543.543 INFO    ] No camera update needed
[2026-06-19 18:51:03,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:51:03,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:51:03,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:51:03,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:51:05,601.601 INFO    ] ================================================
[2026-06-19 18:51:05,617.617 INFO    ] Launching Daemon at Fri Jun 19 18:51:05 IST 2026
[2026-06-19 18:51:05,627.627 INFO    ] ================================================
[2026-06-19 18:51:06,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:51:06
[2026-06-19 18:51:06,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:51:07,266.266 INFO    ] Initializing speech engine...
[2026-06-19 18:51:07,277.277 INFO    ] 2026-06-19 18:51:07
[2026-06-19 18:51:07,552.552 INFO    ] 2026-06-19 18:51:07
[2026-06-19 18:51:07,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:51:07,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:51:07,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:51:07,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:51:08,063.063 INFO    ] time= 19/06/2026 18:51:07
[2026-06-19 18:51:08,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:51:08,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:51:08,282.282 INFO    ] No existing commands found in stream
[2026-06-19 18:51:13,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:51:13,301.301 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 18:51:14,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:51:14,851.851 INFO    ] Checking for system updates...
[2026-06-19 18:51:14,892.892 INFO    ] 200
[2026-06-19 18:51:14,895.895 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:14,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:51:14,961.961 INFO    ] No update needed
[2026-06-19 18:51:14,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 18:51:14,998.998 INFO    ] 200
[2026-06-19 18:51:15,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:15,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:51:15,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:51:15,100.100 INFO    ] No camera update needed
[2026-06-19 18:51:15,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:51:15,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:51:15,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:51:15,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:51:17,161.161 INFO    ] ================================================
[2026-06-19 18:51:17,176.176 INFO    ] Launching Daemon at Fri Jun 19 18:51:17 IST 2026
[2026-06-19 18:51:17,186.186 INFO    ] ================================================
[2026-06-19 18:51:17,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:51:17
[2026-06-19 18:51:18,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:51:18,838.838 INFO    ] Initializing speech engine...
[2026-06-19 18:51:18,844.844 INFO    ] 2026-06-19 18:51:18
[2026-06-19 18:51:19,131.131 INFO    ] 2026-06-19 18:51:19
[2026-06-19 18:51:19,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:51:19,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:51:19,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:51:19,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:51:19,672.672 INFO    ] time= 19/06/2026 18:51:19
[2026-06-19 18:51:19,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:51:19,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:51:19,830.830 INFO    ] No existing commands found in stream
[2026-06-19 18:51:24,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:51:24,856.856 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 18:51:29,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:51:29,374.374 INFO    ] Checking for system updates...
[2026-06-19 18:51:29,411.411 INFO    ] 200
[2026-06-19 18:51:29,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:29,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:51:29,471.471 INFO    ] No update needed
[2026-06-19 18:51:29,474.474 INFO    ] Checking for camera pi updates...
[2026-06-19 18:51:29,509.509 INFO    ] 200
[2026-06-19 18:51:29,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:29,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:51:29,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:51:29,601.601 INFO    ] No camera update needed
[2026-06-19 18:51:29,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:51:29,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:51:29,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:51:29,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:51:31,660.660 INFO    ] ================================================
[2026-06-19 18:51:31,675.675 INFO    ] Launching Daemon at Fri Jun 19 18:51:31 IST 2026
[2026-06-19 18:51:31,685.685 INFO    ] ================================================
[2026-06-19 18:51:32,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:51:32
[2026-06-19 18:51:33,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:51:33,381.381 INFO    ] Initializing speech engine...
[2026-06-19 18:51:33,392.392 INFO    ] 2026-06-19 18:51:33
[2026-06-19 18:51:33,642.642 INFO    ] 2026-06-19 18:51:33
[2026-06-19 18:51:33,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:51:33,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:51:33,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:51:34,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:51:34,116.116 INFO    ] time= 19/06/2026 18:51:34
[2026-06-19 18:51:34,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:51:34,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:51:34,352.352 INFO    ] No existing commands found in stream
[2026-06-19 18:51:39,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:51:39,380.380 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 18:51:43,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:51:43,638.638 INFO    ] Checking for system updates...
[2026-06-19 18:51:43,675.675 INFO    ] 200
[2026-06-19 18:51:43,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:43,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:51:43,739.739 INFO    ] No update needed
[2026-06-19 18:51:43,741.741 INFO    ] Checking for camera pi updates...
[2026-06-19 18:51:43,774.774 INFO    ] 200
[2026-06-19 18:51:43,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:43,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:51:43,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:51:43,970.970 INFO    ] No camera update needed
[2026-06-19 18:51:43,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:51:43,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:51:43,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:51:43,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:51:46,027.027 INFO    ] ================================================
[2026-06-19 18:51:46,043.043 INFO    ] Launching Daemon at Fri Jun 19 18:51:46 IST 2026
[2026-06-19 18:51:46,054.054 INFO    ] ================================================
[2026-06-19 18:51:46,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:51:46
[2026-06-19 18:51:47,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:51:47,558.558 INFO    ] Initializing speech engine...
[2026-06-19 18:51:47,565.565 INFO    ] 2026-06-19 18:51:47
[2026-06-19 18:51:47,827.827 INFO    ] 2026-06-19 18:51:47
[2026-06-19 18:51:47,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:51:48,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:51:48,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:51:48,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:51:48,307.307 INFO    ] time= 19/06/2026 18:51:48
[2026-06-19 18:51:48,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:51:48,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:51:48,524.524 INFO    ] No existing commands found in stream
[2026-06-19 18:51:53,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:51:53,544.544 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 18:51:54,895.895 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:51:54,898.898 INFO    ] Checking for system updates...
[2026-06-19 18:51:54,934.934 INFO    ] 200
[2026-06-19 18:51:54,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:54,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:51:54,994.994 INFO    ] No update needed
[2026-06-19 18:51:54,997.997 INFO    ] Checking for camera pi updates...
[2026-06-19 18:51:55,032.032 INFO    ] 200
[2026-06-19 18:51:55,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:51:55,076.076 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:51:55,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:51:55,130.130 INFO    ] No camera update needed
[2026-06-19 18:51:55,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:51:55,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:51:55,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:51:55,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:51:57,188.188 INFO    ] ================================================
[2026-06-19 18:51:57,204.204 INFO    ] Launching Daemon at Fri Jun 19 18:51:57 IST 2026
[2026-06-19 18:51:57,215.215 INFO    ] ================================================
[2026-06-19 18:51:57,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:51:57
[2026-06-19 18:51:58,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:51:58,616.616 INFO    ] Initializing speech engine...
[2026-06-19 18:51:58,640.640 INFO    ] 2026-06-19 18:51:58
[2026-06-19 18:51:58,897.897 INFO    ] 2026-06-19 18:51:58
[2026-06-19 18:51:58,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:51:59,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:51:59,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:51:59,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:51:59,403.403 INFO    ] time= 19/06/2026 18:51:59
[2026-06-19 18:51:59,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:51:59,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:51:59,626.626 INFO    ] No existing commands found in stream
[2026-06-19 18:52:04,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:52:04,640.640 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 18:52:07,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:52:07,170.170 INFO    ] Checking for system updates...
[2026-06-19 18:52:07,207.207 INFO    ] 200
[2026-06-19 18:52:07,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:07,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:52:07,265.265 INFO    ] No update needed
[2026-06-19 18:52:07,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 18:52:07,301.301 INFO    ] 200
[2026-06-19 18:52:07,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:07,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:52:07,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:52:07,395.395 INFO    ] No camera update needed
[2026-06-19 18:52:07,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:52:07,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:52:07,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:52:07,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:52:09,453.453 INFO    ] ================================================
[2026-06-19 18:52:09,468.468 INFO    ] Launching Daemon at Fri Jun 19 18:52:09 IST 2026
[2026-06-19 18:52:09,479.479 INFO    ] ================================================
[2026-06-19 18:52:10,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:52:10
[2026-06-19 18:52:10,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:52:10,895.895 INFO    ] Initializing speech engine...
[2026-06-19 18:52:10,907.907 INFO    ] 2026-06-19 18:52:10
[2026-06-19 18:52:11,154.154 INFO    ] 2026-06-19 18:52:11
[2026-06-19 18:52:11,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:52:11,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:52:11,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:52:11,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:52:11,633.633 INFO    ] time= 19/06/2026 18:52:11
[2026-06-19 18:52:11,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:52:11,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:52:11,842.842 INFO    ] No existing commands found in stream
[2026-06-19 18:52:16,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:52:16,860.860 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 18:52:20,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:52:20,592.592 INFO    ] Checking for system updates...
[2026-06-19 18:52:20,633.633 INFO    ] 200
[2026-06-19 18:52:20,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:20,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:52:20,694.694 INFO    ] No update needed
[2026-06-19 18:52:20,697.697 INFO    ] Checking for camera pi updates...
[2026-06-19 18:52:20,732.732 INFO    ] 200
[2026-06-19 18:52:20,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:20,782.782 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:52:20,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:52:20,834.834 INFO    ] No camera update needed
[2026-06-19 18:52:20,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:52:20,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:52:20,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:52:20,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:52:22,895.895 INFO    ] ================================================
[2026-06-19 18:52:22,910.910 INFO    ] Launching Daemon at Fri Jun 19 18:52:22 IST 2026
[2026-06-19 18:52:22,921.921 INFO    ] ================================================
[2026-06-19 18:52:23,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:52:23
[2026-06-19 18:52:24,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:52:24,363.363 INFO    ] Initializing speech engine...
[2026-06-19 18:52:24,377.377 INFO    ] 2026-06-19 18:52:24
[2026-06-19 18:52:24,645.645 INFO    ] 2026-06-19 18:52:24
[2026-06-19 18:52:24,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:52:24,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:52:24,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:52:25,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:52:25,023.023 INFO    ] time= 19/06/2026 18:52:25
[2026-06-19 18:52:25,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:52:25,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:52:25,217.217 INFO    ] No existing commands found in stream
[2026-06-19 18:52:30,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:52:30,231.231 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 18:52:34,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:52:34,190.190 INFO    ] Checking for system updates...
[2026-06-19 18:52:34,232.232 INFO    ] 200
[2026-06-19 18:52:34,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:34,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:52:34,301.301 INFO    ] No update needed
[2026-06-19 18:52:34,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 18:52:34,339.339 INFO    ] 200
[2026-06-19 18:52:34,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:34,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:52:34,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:52:34,446.446 INFO    ] No camera update needed
[2026-06-19 18:52:34,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:52:34,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:52:34,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:52:34,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:52:36,500.500 INFO    ] ================================================
[2026-06-19 18:52:36,516.516 INFO    ] Launching Daemon at Fri Jun 19 18:52:36 IST 2026
[2026-06-19 18:52:36,527.527 INFO    ] ================================================
[2026-06-19 18:52:37,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:52:37
[2026-06-19 18:52:37,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:52:37,959.959 INFO    ] Initializing speech engine...
[2026-06-19 18:52:37,981.981 INFO    ] 2026-06-19 18:52:37
[2026-06-19 18:52:38,233.233 INFO    ] 2026-06-19 18:52:38
[2026-06-19 18:52:38,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:52:38,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:52:38,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:52:38,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:52:38,715.715 INFO    ] time= 19/06/2026 18:52:38
[2026-06-19 18:52:38,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:52:38,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:52:38,914.914 INFO    ] No existing commands found in stream
[2026-06-19 18:52:43,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:52:43,948.948 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-19 18:52:46,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:52:46,278.278 INFO    ] Checking for system updates...
[2026-06-19 18:52:46,315.315 INFO    ] 200
[2026-06-19 18:52:46,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:46,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:52:46,383.383 INFO    ] No update needed
[2026-06-19 18:52:46,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 18:52:46,426.426 INFO    ] 200
[2026-06-19 18:52:46,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:46,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:52:46,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:52:46,580.580 INFO    ] No camera update needed
[2026-06-19 18:52:46,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:52:46,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:52:46,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:52:46,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:52:48,640.640 INFO    ] ================================================
[2026-06-19 18:52:48,655.655 INFO    ] Launching Daemon at Fri Jun 19 18:52:48 IST 2026
[2026-06-19 18:52:48,666.666 INFO    ] ================================================
[2026-06-19 18:52:49,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:52:49
[2026-06-19 18:52:49,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:52:50,069.069 INFO    ] Initializing speech engine...
[2026-06-19 18:52:50,084.084 INFO    ] 2026-06-19 18:52:50
[2026-06-19 18:52:50,353.353 INFO    ] 2026-06-19 18:52:50
[2026-06-19 18:52:50,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:52:50,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:52:50,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:52:50,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:52:50,736.736 INFO    ] time= 19/06/2026 18:52:50
[2026-06-19 18:52:50,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:52:50,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:52:50,923.923 INFO    ] No existing commands found in stream
[2026-06-19 18:52:55,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:52:55,947.947 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 18:52:58,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:52:58,508.508 INFO    ] Checking for system updates...
[2026-06-19 18:52:58,547.547 INFO    ] 200
[2026-06-19 18:52:58,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:58,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:52:58,607.607 INFO    ] No update needed
[2026-06-19 18:52:58,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 18:52:58,645.645 INFO    ] 200
[2026-06-19 18:52:58,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:52:58,691.691 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:52:58,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:52:58,749.749 INFO    ] No camera update needed
[2026-06-19 18:52:58,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:52:58,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:52:58,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:52:58,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:53:00,808.808 INFO    ] ================================================
[2026-06-19 18:53:00,824.824 INFO    ] Launching Daemon at Fri Jun 19 18:53:00 IST 2026
[2026-06-19 18:53:00,834.834 INFO    ] ================================================
[2026-06-19 18:53:01,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:53:01
[2026-06-19 18:53:02,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:53:02,498.498 INFO    ] Initializing speech engine...
[2026-06-19 18:53:02,527.527 INFO    ] 2026-06-19 18:53:02
[2026-06-19 18:53:02,856.856 INFO    ] 2026-06-19 18:53:02
[2026-06-19 18:53:02,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:53:03,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:53:03,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:53:03,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:53:03,510.510 INFO    ] time= 19/06/2026 18:53:03
[2026-06-19 18:53:03,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:53:03,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:53:03,679.679 INFO    ] No existing commands found in stream
[2026-06-19 18:53:08,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:53:08,722.722 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 18:53:09,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:53:09,963.963 INFO    ] Checking for system updates...
[2026-06-19 18:53:10,001.001 INFO    ] 200
[2026-06-19 18:53:10,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:10,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:53:10,060.060 INFO    ] No update needed
[2026-06-19 18:53:10,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 18:53:10,102.102 INFO    ] 200
[2026-06-19 18:53:10,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:10,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:53:10,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:53:10,195.195 INFO    ] No camera update needed
[2026-06-19 18:53:10,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:53:10,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:53:10,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:53:10,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:53:12,253.253 INFO    ] ================================================
[2026-06-19 18:53:12,268.268 INFO    ] Launching Daemon at Fri Jun 19 18:53:12 IST 2026
[2026-06-19 18:53:12,279.279 INFO    ] ================================================
[2026-06-19 18:53:12,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:53:12
[2026-06-19 18:53:13,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:53:13,701.701 INFO    ] Initializing speech engine...
[2026-06-19 18:53:13,710.710 INFO    ] 2026-06-19 18:53:13
[2026-06-19 18:53:14,010.010 INFO    ] 2026-06-19 18:53:13
[2026-06-19 18:53:14,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:53:14,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:53:14,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:53:14,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:53:14,432.432 INFO    ] time= 19/06/2026 18:53:14
[2026-06-19 18:53:14,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:53:14,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:53:14,518.518 INFO    ] No existing commands found in stream
[2026-06-19 18:53:19,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:53:19,532.532 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 18:53:20,706.706 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:53:20,708.708 INFO    ] Checking for system updates...
[2026-06-19 18:53:20,745.745 INFO    ] 200
[2026-06-19 18:53:20,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:20,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:53:20,803.803 INFO    ] No update needed
[2026-06-19 18:53:20,806.806 INFO    ] Checking for camera pi updates...
[2026-06-19 18:53:20,840.840 INFO    ] 200
[2026-06-19 18:53:20,842.842 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:20,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:53:20,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:53:20,944.944 INFO    ] No camera update needed
[2026-06-19 18:53:20,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:53:20,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:53:20,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:53:20,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:53:23,000.000 INFO    ] ================================================
[2026-06-19 18:53:23,016.016 INFO    ] Launching Daemon at Fri Jun 19 18:53:23 IST 2026
[2026-06-19 18:53:23,026.026 INFO    ] ================================================
[2026-06-19 18:53:23,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:53:23
[2026-06-19 18:53:24,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:53:24,467.467 INFO    ] Initializing speech engine...
[2026-06-19 18:53:24,473.473 INFO    ] 2026-06-19 18:53:24
[2026-06-19 18:53:24,719.719 INFO    ] 2026-06-19 18:53:24
[2026-06-19 18:53:24,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:53:25,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:53:25,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:53:25,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:53:25,215.215 INFO    ] time= 19/06/2026 18:53:25
[2026-06-19 18:53:25,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:53:25,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:53:25,404.404 INFO    ] No existing commands found in stream
[2026-06-19 18:53:30,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:53:30,438.438 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 18:53:32,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:53:32,398.398 INFO    ] Checking for system updates...
[2026-06-19 18:53:32,440.440 INFO    ] 200
[2026-06-19 18:53:32,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:32,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:53:32,515.515 INFO    ] No update needed
[2026-06-19 18:53:32,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 18:53:32,559.559 INFO    ] 200
[2026-06-19 18:53:32,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:32,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:53:32,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:53:32,644.644 INFO    ] No camera update needed
[2026-06-19 18:53:32,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:53:32,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:53:32,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:53:32,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:53:34,704.704 INFO    ] ================================================
[2026-06-19 18:53:34,720.720 INFO    ] Launching Daemon at Fri Jun 19 18:53:34 IST 2026
[2026-06-19 18:53:34,731.731 INFO    ] ================================================
[2026-06-19 18:53:35,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:53:35
[2026-06-19 18:53:35,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:53:36,139.139 INFO    ] Initializing speech engine...
[2026-06-19 18:53:36,153.153 INFO    ] 2026-06-19 18:53:36
[2026-06-19 18:53:36,419.419 INFO    ] 2026-06-19 18:53:36
[2026-06-19 18:53:36,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:53:36,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:53:36,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:53:36,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:53:36,861.861 INFO    ] time= 19/06/2026 18:53:36
[2026-06-19 18:53:36,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:53:36,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:53:37,015.015 INFO    ] No existing commands found in stream
[2026-06-19 18:53:42,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:53:42,028.028 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 18:53:44,063.063 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:53:44,066.066 INFO    ] Checking for system updates...
[2026-06-19 18:53:44,102.102 INFO    ] 200
[2026-06-19 18:53:44,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:44,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:53:44,159.159 INFO    ] No update needed
[2026-06-19 18:53:44,162.162 INFO    ] Checking for camera pi updates...
[2026-06-19 18:53:44,196.196 INFO    ] 200
[2026-06-19 18:53:44,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:44,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:53:44,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:53:44,391.391 INFO    ] No camera update needed
[2026-06-19 18:53:44,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:53:44,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:53:44,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:53:44,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:53:46,449.449 INFO    ] ================================================
[2026-06-19 18:53:46,464.464 INFO    ] Launching Daemon at Fri Jun 19 18:53:46 IST 2026
[2026-06-19 18:53:46,475.475 INFO    ] ================================================
[2026-06-19 18:53:47,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:53:47
[2026-06-19 18:53:47,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:53:48,015.015 INFO    ] Initializing speech engine...
[2026-06-19 18:53:48,023.023 INFO    ] 2026-06-19 18:53:48
[2026-06-19 18:53:48,276.276 INFO    ] 2026-06-19 18:53:48
[2026-06-19 18:53:48,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:53:48,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:53:48,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:53:48,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:53:48,653.653 INFO    ] time= 19/06/2026 18:53:48
[2026-06-19 18:53:48,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:53:48,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:53:48,833.833 INFO    ] No existing commands found in stream
[2026-06-19 18:53:53,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:53:53,866.866 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 18:53:58,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:53:58,271.271 INFO    ] Checking for system updates...
[2026-06-19 18:53:58,312.312 INFO    ] 200
[2026-06-19 18:53:58,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:58,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:53:58,371.371 INFO    ] No update needed
[2026-06-19 18:53:58,373.373 INFO    ] Checking for camera pi updates...
[2026-06-19 18:53:58,407.407 INFO    ] 200
[2026-06-19 18:53:58,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:53:58,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:53:58,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:53:58,493.493 INFO    ] No camera update needed
[2026-06-19 18:53:58,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:53:58,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:53:58,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:53:58,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:54:00,551.551 INFO    ] ================================================
[2026-06-19 18:54:00,566.566 INFO    ] Launching Daemon at Fri Jun 19 18:54:00 IST 2026
[2026-06-19 18:54:00,578.578 INFO    ] ================================================
[2026-06-19 18:54:01,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:54:01
[2026-06-19 18:54:01,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:54:02,307.307 INFO    ] Initializing speech engine...
[2026-06-19 18:54:02,325.325 INFO    ] 2026-06-19 18:54:02
[2026-06-19 18:54:02,647.647 INFO    ] 2026-06-19 18:54:02
[2026-06-19 18:54:02,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:54:02,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:54:02,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:54:03,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:54:03,199.199 INFO    ] time= 19/06/2026 18:54:03
[2026-06-19 18:54:03,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:54:03,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:54:03,373.373 INFO    ] No existing commands found in stream
[2026-06-19 18:54:08,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:54:08,407.407 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 18:54:10,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:54:10,894.894 INFO    ] Checking for system updates...
[2026-06-19 18:54:10,930.930 INFO    ] 200
[2026-06-19 18:54:10,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:54:10,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:54:10,987.987 INFO    ] No update needed
[2026-06-19 18:54:10,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 18:54:11,022.022 INFO    ] 200
[2026-06-19 18:54:11,025.025 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:54:11,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:54:11,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:54:11,112.112 INFO    ] No camera update needed
[2026-06-19 18:54:11,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:54:11,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:54:11,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:54:11,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:54:13,168.168 INFO    ] ================================================
[2026-06-19 18:54:13,183.183 INFO    ] Launching Daemon at Fri Jun 19 18:54:13 IST 2026
[2026-06-19 18:54:13,195.195 INFO    ] ================================================
[2026-06-19 18:54:13,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:54:13
[2026-06-19 18:54:14,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:54:14,793.793 INFO    ] Initializing speech engine...
[2026-06-19 18:54:14,799.799 INFO    ] 2026-06-19 18:54:14
[2026-06-19 18:54:15,070.070 INFO    ] 2026-06-19 18:54:15
[2026-06-19 18:54:15,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:54:15,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:54:15,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:54:15,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:54:15,621.621 INFO    ] time= 19/06/2026 18:54:15
[2026-06-19 18:54:15,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:54:15,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:54:15,779.779 INFO    ] No existing commands found in stream
[2026-06-19 18:54:20,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:54:20,813.813 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 18:54:24,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:54:24,597.597 INFO    ] Checking for system updates...
[2026-06-19 18:54:24,634.634 INFO    ] 200
[2026-06-19 18:54:24,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:54:24,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:54:24,694.694 INFO    ] No update needed
[2026-06-19 18:54:24,697.697 INFO    ] Checking for camera pi updates...
[2026-06-19 18:54:24,731.731 INFO    ] 200
[2026-06-19 18:54:24,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:54:24,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:54:24,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:54:24,827.827 INFO    ] No camera update needed
[2026-06-19 18:54:24,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:54:24,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:54:24,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:54:24,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:54:26,882.882 INFO    ] ================================================
[2026-06-19 18:54:26,897.897 INFO    ] Launching Daemon at Fri Jun 19 18:54:26 IST 2026
[2026-06-19 18:54:26,908.908 INFO    ] ================================================
[2026-06-19 18:54:27,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:54:27
[2026-06-19 18:54:28,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:54:28,515.515 INFO    ] Initializing speech engine...
[2026-06-19 18:54:28,524.524 INFO    ] 2026-06-19 18:54:28
[2026-06-19 18:54:28,806.806 INFO    ] 2026-06-19 18:54:28
[2026-06-19 18:54:28,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:54:29,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:54:29,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:54:29,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:54:29,343.343 INFO    ] time= 19/06/2026 18:54:29
[2026-06-19 18:54:29,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:54:29,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:54:29,499.499 INFO    ] No existing commands found in stream
[2026-06-19 18:54:34,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:54:34,527.527 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 18:54:35,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:54:35,525.525 INFO    ] Checking for system updates...
[2026-06-19 18:54:35,561.561 INFO    ] 200
[2026-06-19 18:54:35,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:54:35,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:54:35,619.619 INFO    ] No update needed
[2026-06-19 18:54:35,621.621 INFO    ] Checking for camera pi updates...
[2026-06-19 18:54:35,655.655 INFO    ] 200
[2026-06-19 18:54:35,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:54:35,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:54:35,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:54:35,753.753 INFO    ] No camera update needed
[2026-06-19 18:54:35,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:54:35,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:54:35,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:54:35,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:54:37,807.807 INFO    ] ================================================
[2026-06-19 18:54:37,823.823 INFO    ] Launching Daemon at Fri Jun 19 18:54:37 IST 2026
[2026-06-19 18:54:37,834.834 INFO    ] ================================================
[2026-06-19 18:54:38,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:54:38
[2026-06-19 18:54:39,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:54:39,456.456 INFO    ] Initializing speech engine...
[2026-06-19 18:54:39,464.464 INFO    ] 2026-06-19 18:54:39
[2026-06-19 18:54:39,740.740 INFO    ] 2026-06-19 18:54:39
[2026-06-19 18:54:39,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:54:40,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:54:40,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:54:40,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:54:40,239.239 INFO    ] time= 19/06/2026 18:54:40
[2026-06-19 18:54:40,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:54:40,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:54:40,430.430 INFO    ] No existing commands found in stream
[2026-06-19 18:54:45,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:54:45,459.459 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 18:54:49,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:54:49,164.164 INFO    ] Checking for system updates...
[2026-06-19 18:54:49,208.208 INFO    ] 200
[2026-06-19 18:54:49,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:54:49,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:54:49,266.266 INFO    ] No update needed
[2026-06-19 18:54:49,268.268 INFO    ] Checking for camera pi updates...
[2026-06-19 18:54:49,302.302 INFO    ] 200
[2026-06-19 18:54:49,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:54:49,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:54:49,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:54:49,385.385 INFO    ] No camera update needed
[2026-06-19 18:54:49,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:54:49,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:54:49,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:54:49,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:54:51,441.441 INFO    ] ================================================
[2026-06-19 18:54:51,456.456 INFO    ] Launching Daemon at Fri Jun 19 18:54:51 IST 2026
[2026-06-19 18:54:51,468.468 INFO    ] ================================================
[2026-06-19 18:54:52,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:54:52
[2026-06-19 18:54:52,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:54:53,054.054 INFO    ] Initializing speech engine...
[2026-06-19 18:54:53,067.067 INFO    ] 2026-06-19 18:54:53
[2026-06-19 18:54:53,318.318 INFO    ] 2026-06-19 18:54:53
[2026-06-19 18:54:53,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:54:53,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:54:53,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:54:53,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:54:53,815.815 INFO    ] time= 19/06/2026 18:54:53
[2026-06-19 18:54:53,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:54:53,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:54:54,040.040 INFO    ] No existing commands found in stream
[2026-06-19 18:54:59,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:54:59,064.064 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 18:55:03,524.524 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:55:03,527.527 INFO    ] Checking for system updates...
[2026-06-19 18:55:03,569.569 INFO    ] 200
[2026-06-19 18:55:03,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:03,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:55:03,646.646 INFO    ] No update needed
[2026-06-19 18:55:03,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 18:55:03,692.692 INFO    ] 200
[2026-06-19 18:55:03,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:03,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:55:03,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:55:03,783.783 INFO    ] No camera update needed
[2026-06-19 18:55:03,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:55:03,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:55:03,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:55:03,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:55:05,846.846 INFO    ] ================================================
[2026-06-19 18:55:05,862.862 INFO    ] Launching Daemon at Fri Jun 19 18:55:05 IST 2026
[2026-06-19 18:55:05,872.872 INFO    ] ================================================
[2026-06-19 18:55:06,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:55:06
[2026-06-19 18:55:07,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:55:07,297.297 INFO    ] Initializing speech engine...
[2026-06-19 18:55:07,305.305 INFO    ] 2026-06-19 18:55:07
[2026-06-19 18:55:07,594.594 INFO    ] 2026-06-19 18:55:07
[2026-06-19 18:55:07,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:55:07,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:55:07,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:55:07,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:55:07,973.973 INFO    ] time= 19/06/2026 18:55:07
[2026-06-19 18:55:07,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:55:08,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:55:08,152.152 INFO    ] No existing commands found in stream
[2026-06-19 18:55:13,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:55:13,185.185 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 18:55:14,553.553 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:55:14,555.555 INFO    ] Checking for system updates...
[2026-06-19 18:55:14,591.591 INFO    ] 200
[2026-06-19 18:55:14,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:14,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:55:14,653.653 INFO    ] No update needed
[2026-06-19 18:55:14,655.655 INFO    ] Checking for camera pi updates...
[2026-06-19 18:55:14,691.691 INFO    ] 200
[2026-06-19 18:55:14,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:14,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:55:14,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:55:14,783.783 INFO    ] No camera update needed
[2026-06-19 18:55:14,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:55:14,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:55:14,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:55:14,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:55:16,838.838 INFO    ] ================================================
[2026-06-19 18:55:16,853.853 INFO    ] Launching Daemon at Fri Jun 19 18:55:16 IST 2026
[2026-06-19 18:55:16,864.864 INFO    ] ================================================
[2026-06-19 18:55:17,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:55:17
[2026-06-19 18:55:18,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:55:18,282.282 INFO    ] Initializing speech engine...
[2026-06-19 18:55:18,298.298 INFO    ] 2026-06-19 18:55:18
[2026-06-19 18:55:18,575.575 INFO    ] 2026-06-19 18:55:18
[2026-06-19 18:55:18,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:55:18,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:55:18,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:55:18,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:55:18,980.980 INFO    ] time= 19/06/2026 18:55:18
[2026-06-19 18:55:18,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:55:19,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:55:19,147.147 INFO    ] No existing commands found in stream
[2026-06-19 18:55:24,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:55:24,180.180 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 18:55:27,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:55:27,264.264 INFO    ] Checking for system updates...
[2026-06-19 18:55:27,300.300 INFO    ] 200
[2026-06-19 18:55:27,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:27,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:55:27,359.359 INFO    ] No update needed
[2026-06-19 18:55:27,362.362 INFO    ] Checking for camera pi updates...
[2026-06-19 18:55:27,395.395 INFO    ] 200
[2026-06-19 18:55:27,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:27,438.438 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:55:27,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:55:27,497.497 INFO    ] No camera update needed
[2026-06-19 18:55:27,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:55:27,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:55:27,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:55:27,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:55:29,553.553 INFO    ] ================================================
[2026-06-19 18:55:29,569.569 INFO    ] Launching Daemon at Fri Jun 19 18:55:29 IST 2026
[2026-06-19 18:55:29,579.579 INFO    ] ================================================
[2026-06-19 18:55:30,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:55:30
[2026-06-19 18:55:30,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:55:31,165.165 INFO    ] Initializing speech engine...
[2026-06-19 18:55:31,171.171 INFO    ] 2026-06-19 18:55:31
[2026-06-19 18:55:31,441.441 INFO    ] 2026-06-19 18:55:31
[2026-06-19 18:55:31,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:55:31,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:55:31,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:55:31,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:55:31,905.905 INFO    ] time= 19/06/2026 18:55:31
[2026-06-19 18:55:31,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:55:32,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:55:32,153.153 INFO    ] No existing commands found in stream
[2026-06-19 18:55:37,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:55:37,183.183 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 18:55:38,507.507 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:55:38,509.509 INFO    ] Checking for system updates...
[2026-06-19 18:55:38,549.549 INFO    ] 200
[2026-06-19 18:55:38,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:38,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:55:38,606.606 INFO    ] No update needed
[2026-06-19 18:55:38,608.608 INFO    ] Checking for camera pi updates...
[2026-06-19 18:55:38,645.645 INFO    ] 200
[2026-06-19 18:55:38,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:38,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:55:38,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:55:38,734.734 INFO    ] No camera update needed
[2026-06-19 18:55:38,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:55:38,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:55:38,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:55:38,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:55:40,789.789 INFO    ] ================================================
[2026-06-19 18:55:40,804.804 INFO    ] Launching Daemon at Fri Jun 19 18:55:40 IST 2026
[2026-06-19 18:55:40,815.815 INFO    ] ================================================
[2026-06-19 18:55:41,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:55:41
[2026-06-19 18:55:41,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:55:42,269.269 INFO    ] Initializing speech engine...
[2026-06-19 18:55:42,279.279 INFO    ] 2026-06-19 18:55:42
[2026-06-19 18:55:42,536.536 INFO    ] 2026-06-19 18:55:42
[2026-06-19 18:55:42,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:55:42,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:55:42,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:55:42,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:55:43,002.002 INFO    ] time= 19/06/2026 18:55:42
[2026-06-19 18:55:43,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:55:43,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:55:43,218.218 INFO    ] No existing commands found in stream
[2026-06-19 18:55:48,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:55:48,248.248 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 18:55:49,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:55:49,634.634 INFO    ] Checking for system updates...
[2026-06-19 18:55:49,670.670 INFO    ] 200
[2026-06-19 18:55:49,672.672 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:49,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:55:49,732.732 INFO    ] No update needed
[2026-06-19 18:55:49,734.734 INFO    ] Checking for camera pi updates...
[2026-06-19 18:55:49,772.772 INFO    ] 200
[2026-06-19 18:55:49,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:55:49,818.818 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:55:49,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:55:49,963.963 INFO    ] No camera update needed
[2026-06-19 18:55:49,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:55:49,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:55:49,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:55:49,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:55:52,019.019 INFO    ] ================================================
[2026-06-19 18:55:52,034.034 INFO    ] Launching Daemon at Fri Jun 19 18:55:52 IST 2026
[2026-06-19 18:55:52,044.044 INFO    ] ================================================
[2026-06-19 18:55:52,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:55:52
[2026-06-19 18:55:53,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:55:53,505.505 INFO    ] Initializing speech engine...
[2026-06-19 18:55:53,529.529 INFO    ] 2026-06-19 18:55:53
[2026-06-19 18:55:53,800.800 INFO    ] 2026-06-19 18:55:53
[2026-06-19 18:55:53,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:55:54,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:55:54,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:55:54,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:55:54,213.213 INFO    ] time= 19/06/2026 18:55:54
[2026-06-19 18:55:54,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:55:54,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:55:54,395.395 INFO    ] No existing commands found in stream
[2026-06-19 18:55:59,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:55:59,428.428 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 18:56:03,541.541 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:56:03,544.544 INFO    ] Checking for system updates...
[2026-06-19 18:56:03,588.588 INFO    ] 200
[2026-06-19 18:56:03,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:03,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:56:03,645.645 INFO    ] No update needed
[2026-06-19 18:56:03,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 18:56:03,681.681 INFO    ] 200
[2026-06-19 18:56:03,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:03,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:56:03,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:56:03,772.772 INFO    ] No camera update needed
[2026-06-19 18:56:03,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:56:03,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:56:03,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:56:03,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:56:05,828.828 INFO    ] ================================================
[2026-06-19 18:56:05,843.843 INFO    ] Launching Daemon at Fri Jun 19 18:56:05 IST 2026
[2026-06-19 18:56:05,853.853 INFO    ] ================================================
[2026-06-19 18:56:06,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:56:06
[2026-06-19 18:56:07,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:56:07,321.321 INFO    ] Initializing speech engine...
[2026-06-19 18:56:07,328.328 INFO    ] 2026-06-19 18:56:07
[2026-06-19 18:56:07,578.578 INFO    ] 2026-06-19 18:56:07
[2026-06-19 18:56:07,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:56:07,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:56:07,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:56:08,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:56:08,083.083 INFO    ] time= 19/06/2026 18:56:08
[2026-06-19 18:56:08,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:56:08,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:56:08,269.269 INFO    ] No existing commands found in stream
[2026-06-19 18:56:13,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:56:13,287.287 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 18:56:15,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:56:15,489.489 INFO    ] Checking for system updates...
[2026-06-19 18:56:15,526.526 INFO    ] 200
[2026-06-19 18:56:15,528.528 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:15,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:56:15,589.589 INFO    ] No update needed
[2026-06-19 18:56:15,591.591 INFO    ] Checking for camera pi updates...
[2026-06-19 18:56:15,625.625 INFO    ] 200
[2026-06-19 18:56:15,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:15,672.672 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:56:15,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:56:15,724.724 INFO    ] No camera update needed
[2026-06-19 18:56:15,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:56:15,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:56:15,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:56:15,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:56:17,780.780 INFO    ] ================================================
[2026-06-19 18:56:17,795.795 INFO    ] Launching Daemon at Fri Jun 19 18:56:17 IST 2026
[2026-06-19 18:56:17,806.806 INFO    ] ================================================
[2026-06-19 18:56:18,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:56:18
[2026-06-19 18:56:18,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:56:19,266.266 INFO    ] Initializing speech engine...
[2026-06-19 18:56:19,272.272 INFO    ] 2026-06-19 18:56:19
[2026-06-19 18:56:19,533.533 INFO    ] 2026-06-19 18:56:19
[2026-06-19 18:56:19,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:56:19,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:56:19,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:56:19,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:56:19,989.989 INFO    ] time= 19/06/2026 18:56:19
[2026-06-19 18:56:20,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:56:20,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:56:20,237.237 INFO    ] No existing commands found in stream
[2026-06-19 18:56:25,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:56:25,267.267 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 18:56:27,293.293 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:56:27,296.296 INFO    ] Checking for system updates...
[2026-06-19 18:56:27,332.332 INFO    ] 200
[2026-06-19 18:56:27,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:27,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:56:27,395.395 INFO    ] No update needed
[2026-06-19 18:56:27,398.398 INFO    ] Checking for camera pi updates...
[2026-06-19 18:56:27,435.435 INFO    ] 200
[2026-06-19 18:56:27,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:27,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:56:27,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:56:27,525.525 INFO    ] No camera update needed
[2026-06-19 18:56:27,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:56:27,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:56:27,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:56:27,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:56:29,582.582 INFO    ] ================================================
[2026-06-19 18:56:29,599.599 INFO    ] Launching Daemon at Fri Jun 19 18:56:29 IST 2026
[2026-06-19 18:56:29,609.609 INFO    ] ================================================
[2026-06-19 18:56:30,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:56:30
[2026-06-19 18:56:30,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:56:31,050.050 INFO    ] Initializing speech engine...
[2026-06-19 18:56:31,062.062 INFO    ] 2026-06-19 18:56:31
[2026-06-19 18:56:31,329.329 INFO    ] 2026-06-19 18:56:31
[2026-06-19 18:56:31,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:56:31,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:56:31,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:56:31,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:56:31,959.959 INFO    ] time= 19/06/2026 18:56:31
[2026-06-19 18:56:31,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:56:32,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:56:32,109.109 INFO    ] No existing commands found in stream
[2026-06-19 18:56:37,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:56:37,129.129 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 18:56:37,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:56:37,844.844 INFO    ] Checking for system updates...
[2026-06-19 18:56:37,880.880 INFO    ] 200
[2026-06-19 18:56:37,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:37,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:56:37,947.947 INFO    ] No update needed
[2026-06-19 18:56:37,949.949 INFO    ] Checking for camera pi updates...
[2026-06-19 18:56:37,983.983 INFO    ] 200
[2026-06-19 18:56:37,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:38,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:56:38,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:56:38,095.095 INFO    ] No camera update needed
[2026-06-19 18:56:38,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:56:38,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:56:38,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:56:38,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:56:40,152.152 INFO    ] ================================================
[2026-06-19 18:56:40,168.168 INFO    ] Launching Daemon at Fri Jun 19 18:56:40 IST 2026
[2026-06-19 18:56:40,179.179 INFO    ] ================================================
[2026-06-19 18:56:40,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:56:40
[2026-06-19 18:56:41,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:56:41,611.611 INFO    ] Initializing speech engine...
[2026-06-19 18:56:41,620.620 INFO    ] 2026-06-19 18:56:41
[2026-06-19 18:56:41,871.871 INFO    ] 2026-06-19 18:56:41
[2026-06-19 18:56:41,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:56:42,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:56:42,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:56:42,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:56:42,247.247 INFO    ] time= 19/06/2026 18:56:42
[2026-06-19 18:56:42,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:56:42,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:56:42,431.431 INFO    ] No existing commands found in stream
[2026-06-19 18:56:47,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:56:47,459.459 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 18:56:47,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 18:56:47,904.904 INFO    ] Checking for system updates...
[2026-06-19 18:56:47,944.944 INFO    ] 200
[2026-06-19 18:56:47,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:47,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:56:48,001.001 INFO    ] No update needed
[2026-06-19 18:56:48,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 18:56:48,040.040 INFO    ] 200
[2026-06-19 18:56:48,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:56:48,099.099 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:56:48,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:56:48,139.139 INFO    ] No camera update needed
[2026-06-19 18:56:48,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:56:48,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:56:48,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:56:48,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:56:50,194.194 INFO    ] ================================================
[2026-06-19 18:56:50,210.210 INFO    ] Launching Daemon at Fri Jun 19 18:56:50 IST 2026
[2026-06-19 18:56:50,222.222 INFO    ] ================================================
[2026-06-19 18:56:50,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:56:50
[2026-06-19 18:56:51,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:56:51,655.655 INFO    ] Initializing speech engine...
[2026-06-19 18:56:51,668.668 INFO    ] 2026-06-19 18:56:51
[2026-06-19 18:56:51,920.920 INFO    ] 2026-06-19 18:56:51
[2026-06-19 18:56:51,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:56:52,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:56:52,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:56:52,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:56:52,409.409 INFO    ] time= 19/06/2026 18:56:52
[2026-06-19 18:56:52,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:56:52,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:56:52,647.647 INFO    ] No existing commands found in stream
[2026-06-19 18:56:57,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:56:57,667.667 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 18:57:00,967.967 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:57:00,970.970 INFO    ] Checking for system updates...
[2026-06-19 18:57:01,007.007 INFO    ] 200
[2026-06-19 18:57:01,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:01,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:57:01,065.065 INFO    ] No update needed
[2026-06-19 18:57:01,068.068 INFO    ] Checking for camera pi updates...
[2026-06-19 18:57:01,106.106 INFO    ] 200
[2026-06-19 18:57:01,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:01,155.155 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:57:01,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:57:01,201.201 INFO    ] No camera update needed
[2026-06-19 18:57:01,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:57:01,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:57:01,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:57:01,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:57:03,262.262 INFO    ] ================================================
[2026-06-19 18:57:03,279.279 INFO    ] Launching Daemon at Fri Jun 19 18:57:03 IST 2026
[2026-06-19 18:57:03,291.291 INFO    ] ================================================
[2026-06-19 18:57:03,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:57:03
[2026-06-19 18:57:04,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:57:04,762.762 INFO    ] Initializing speech engine...
[2026-06-19 18:57:04,777.777 INFO    ] 2026-06-19 18:57:04
[2026-06-19 18:57:05,032.032 INFO    ] 2026-06-19 18:57:05
[2026-06-19 18:57:05,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:57:05,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:57:05,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:57:05,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:57:05,507.507 INFO    ] time= 19/06/2026 18:57:05
[2026-06-19 18:57:05,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:57:05,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:57:05,728.728 INFO    ] No existing commands found in stream
[2026-06-19 18:57:10,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:57:10,759.759 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 18:57:14,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:57:14,457.457 INFO    ] Checking for system updates...
[2026-06-19 18:57:14,496.496 INFO    ] 200
[2026-06-19 18:57:14,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:14,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:57:14,554.554 INFO    ] No update needed
[2026-06-19 18:57:14,557.557 INFO    ] Checking for camera pi updates...
[2026-06-19 18:57:14,591.591 INFO    ] 200
[2026-06-19 18:57:14,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:14,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:57:14,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:57:14,697.697 INFO    ] No camera update needed
[2026-06-19 18:57:14,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:57:14,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:57:14,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:57:14,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:57:16,754.754 INFO    ] ================================================
[2026-06-19 18:57:16,769.769 INFO    ] Launching Daemon at Fri Jun 19 18:57:16 IST 2026
[2026-06-19 18:57:16,781.781 INFO    ] ================================================
[2026-06-19 18:57:17,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:57:17
[2026-06-19 18:57:17,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:57:18,237.237 INFO    ] Initializing speech engine...
[2026-06-19 18:57:18,254.254 INFO    ] 2026-06-19 18:57:18
[2026-06-19 18:57:18,541.541 INFO    ] 2026-06-19 18:57:18
[2026-06-19 18:57:18,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:57:18,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:57:18,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:57:18,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:57:18,966.966 INFO    ] time= 19/06/2026 18:57:18
[2026-06-19 18:57:18,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:57:19,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:57:19,150.150 INFO    ] No existing commands found in stream
[2026-06-19 18:57:24,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:57:24,178.178 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 18:57:27,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:57:27,662.662 INFO    ] Checking for system updates...
[2026-06-19 18:57:27,699.699 INFO    ] 200
[2026-06-19 18:57:27,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:27,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:57:27,763.763 INFO    ] No update needed
[2026-06-19 18:57:27,766.766 INFO    ] Checking for camera pi updates...
[2026-06-19 18:57:27,799.799 INFO    ] 200
[2026-06-19 18:57:27,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:27,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:57:27,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:57:27,890.890 INFO    ] No camera update needed
[2026-06-19 18:57:27,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:57:27,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:57:27,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:57:27,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:57:29,946.946 INFO    ] ================================================
[2026-06-19 18:57:29,962.962 INFO    ] Launching Daemon at Fri Jun 19 18:57:29 IST 2026
[2026-06-19 18:57:29,973.973 INFO    ] ================================================
[2026-06-19 18:57:30,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:57:30
[2026-06-19 18:57:31,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:57:31,395.395 INFO    ] Initializing speech engine...
[2026-06-19 18:57:31,404.404 INFO    ] 2026-06-19 18:57:31
[2026-06-19 18:57:31,652.652 INFO    ] 2026-06-19 18:57:31
[2026-06-19 18:57:31,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:57:31,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:57:31,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:57:32,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:57:32,077.077 INFO    ] time= 19/06/2026 18:57:32
[2026-06-19 18:57:32,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:57:32,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:57:32,169.169 INFO    ] No existing commands found in stream
[2026-06-19 18:57:37,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:57:37,187.187 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 18:57:39,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:57:39,657.657 INFO    ] Checking for system updates...
[2026-06-19 18:57:39,693.693 INFO    ] 200
[2026-06-19 18:57:39,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:39,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:57:39,750.750 INFO    ] No update needed
[2026-06-19 18:57:39,753.753 INFO    ] Checking for camera pi updates...
[2026-06-19 18:57:39,786.786 INFO    ] 200
[2026-06-19 18:57:39,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:39,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:57:39,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:57:39,882.882 INFO    ] No camera update needed
[2026-06-19 18:57:39,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:57:39,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:57:39,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:57:39,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:57:41,938.938 INFO    ] ================================================
[2026-06-19 18:57:41,954.954 INFO    ] Launching Daemon at Fri Jun 19 18:57:41 IST 2026
[2026-06-19 18:57:41,965.965 INFO    ] ================================================
[2026-06-19 18:57:42,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:57:42
[2026-06-19 18:57:43,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:57:43,400.400 INFO    ] Initializing speech engine...
[2026-06-19 18:57:43,406.406 INFO    ] 2026-06-19 18:57:43
[2026-06-19 18:57:43,669.669 INFO    ] 2026-06-19 18:57:43
[2026-06-19 18:57:43,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:57:43,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:57:43,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:57:44,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:57:44,140.140 INFO    ] time= 19/06/2026 18:57:44
[2026-06-19 18:57:44,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:57:44,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:57:44,373.373 INFO    ] No existing commands found in stream
[2026-06-19 18:57:49,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:57:49,394.394 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 18:57:53,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:57:53,073.073 INFO    ] Checking for system updates...
[2026-06-19 18:57:53,113.113 INFO    ] 200
[2026-06-19 18:57:53,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:53,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:57:53,178.178 INFO    ] No update needed
[2026-06-19 18:57:53,180.180 INFO    ] Checking for camera pi updates...
[2026-06-19 18:57:53,214.214 INFO    ] 200
[2026-06-19 18:57:53,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:57:53,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:57:53,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:57:53,403.403 INFO    ] No camera update needed
[2026-06-19 18:57:53,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:57:53,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:57:53,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:57:53,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:57:55,460.460 INFO    ] ================================================
[2026-06-19 18:57:55,477.477 INFO    ] Launching Daemon at Fri Jun 19 18:57:55 IST 2026
[2026-06-19 18:57:55,488.488 INFO    ] ================================================
[2026-06-19 18:57:56,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:57:56
[2026-06-19 18:57:56,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:57:56,920.920 INFO    ] Initializing speech engine...
[2026-06-19 18:57:56,927.927 INFO    ] 2026-06-19 18:57:56
[2026-06-19 18:57:57,172.172 INFO    ] 2026-06-19 18:57:57
[2026-06-19 18:57:57,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:57:57,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:57:57,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:57:57,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:57:57,648.648 INFO    ] time= 19/06/2026 18:57:57
[2026-06-19 18:57:57,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:57:57,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:57:57,890.890 INFO    ] No existing commands found in stream
[2026-06-19 18:58:02,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:58:02,909.909 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 18:58:04,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:58:04,216.216 INFO    ] Checking for system updates...
[2026-06-19 18:58:04,256.256 INFO    ] 200
[2026-06-19 18:58:04,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:04,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:58:04,314.314 INFO    ] No update needed
[2026-06-19 18:58:04,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 18:58:04,350.350 INFO    ] 200
[2026-06-19 18:58:04,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:04,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:58:04,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:58:04,450.450 INFO    ] No camera update needed
[2026-06-19 18:58:04,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:58:04,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:58:04,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:58:04,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:58:06,509.509 INFO    ] ================================================
[2026-06-19 18:58:06,526.526 INFO    ] Launching Daemon at Fri Jun 19 18:58:06 IST 2026
[2026-06-19 18:58:06,537.537 INFO    ] ================================================
[2026-06-19 18:58:07,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:58:07
[2026-06-19 18:58:07,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:58:07,953.953 INFO    ] Initializing speech engine...
[2026-06-19 18:58:07,966.966 INFO    ] 2026-06-19 18:58:07
[2026-06-19 18:58:08,229.229 INFO    ] 2026-06-19 18:58:08
[2026-06-19 18:58:08,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:58:08,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:58:08,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:58:08,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:58:08,706.706 INFO    ] time= 19/06/2026 18:58:08
[2026-06-19 18:58:08,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:58:08,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:58:08,942.942 INFO    ] No existing commands found in stream
[2026-06-19 18:58:13,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:58:13,964.964 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 18:58:17,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:58:17,896.896 INFO    ] Checking for system updates...
[2026-06-19 18:58:17,931.931 INFO    ] 200
[2026-06-19 18:58:17,934.934 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:17,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:58:17,996.996 INFO    ] No update needed
[2026-06-19 18:58:17,998.998 INFO    ] Checking for camera pi updates...
[2026-06-19 18:58:18,032.032 INFO    ] 200
[2026-06-19 18:58:18,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:18,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:58:18,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:58:18,170.170 INFO    ] No camera update needed
[2026-06-19 18:58:18,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:58:18,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:58:18,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:58:18,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:58:20,236.236 INFO    ] ================================================
[2026-06-19 18:58:20,251.251 INFO    ] Launching Daemon at Fri Jun 19 18:58:20 IST 2026
[2026-06-19 18:58:20,262.262 INFO    ] ================================================
[2026-06-19 18:58:20,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:58:20
[2026-06-19 18:58:21,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:58:21,920.920 INFO    ] Initializing speech engine...
[2026-06-19 18:58:21,932.932 INFO    ] 2026-06-19 18:58:21
[2026-06-19 18:58:22,219.219 INFO    ] 2026-06-19 18:58:22
[2026-06-19 18:58:22,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:58:22,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:58:22,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:58:22,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:58:22,751.751 INFO    ] time= 19/06/2026 18:58:22
[2026-06-19 18:58:22,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:58:22,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:58:22,926.926 INFO    ] No existing commands found in stream
[2026-06-19 18:58:27,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:58:27,960.960 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 18:58:30,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:58:30,335.335 INFO    ] Checking for system updates...
[2026-06-19 18:58:30,373.373 INFO    ] 200
[2026-06-19 18:58:30,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:30,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:58:30,439.439 INFO    ] No update needed
[2026-06-19 18:58:30,442.442 INFO    ] Checking for camera pi updates...
[2026-06-19 18:58:30,476.476 INFO    ] 200
[2026-06-19 18:58:30,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:30,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:58:30,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:58:30,567.567 INFO    ] No camera update needed
[2026-06-19 18:58:30,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:58:30,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:58:30,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:58:30,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:58:32,623.623 INFO    ] ================================================
[2026-06-19 18:58:32,641.641 INFO    ] Launching Daemon at Fri Jun 19 18:58:32 IST 2026
[2026-06-19 18:58:32,653.653 INFO    ] ================================================
[2026-06-19 18:58:33,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:58:33
[2026-06-19 18:58:33,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:58:34,116.116 INFO    ] Initializing speech engine...
[2026-06-19 18:58:34,126.126 INFO    ] 2026-06-19 18:58:34
[2026-06-19 18:58:34,422.422 INFO    ] 2026-06-19 18:58:34
[2026-06-19 18:58:34,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:58:34,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:58:34,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:58:34,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:58:34,826.826 INFO    ] time= 19/06/2026 18:58:34
[2026-06-19 18:58:34,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:58:34,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:58:34,939.939 INFO    ] No existing commands found in stream
[2026-06-19 18:58:39,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:58:39,957.957 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 18:58:40,791.791 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:58:40,794.794 INFO    ] Checking for system updates...
[2026-06-19 18:58:40,830.830 INFO    ] 200
[2026-06-19 18:58:40,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:40,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:58:40,887.887 INFO    ] No update needed
[2026-06-19 18:58:40,889.889 INFO    ] Checking for camera pi updates...
[2026-06-19 18:58:40,923.923 INFO    ] 200
[2026-06-19 18:58:40,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:40,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:58:41,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:58:41,029.029 INFO    ] No camera update needed
[2026-06-19 18:58:41,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:58:41,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:58:41,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:58:41,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:58:43,088.088 INFO    ] ================================================
[2026-06-19 18:58:43,103.103 INFO    ] Launching Daemon at Fri Jun 19 18:58:43 IST 2026
[2026-06-19 18:58:43,114.114 INFO    ] ================================================
[2026-06-19 18:58:43,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:58:43
[2026-06-19 18:58:44,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:58:44,523.523 INFO    ] Initializing speech engine...
[2026-06-19 18:58:44,538.538 INFO    ] 2026-06-19 18:58:44
[2026-06-19 18:58:44,800.800 INFO    ] 2026-06-19 18:58:44
[2026-06-19 18:58:44,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:58:45,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:58:45,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:58:45,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:58:45,358.358 INFO    ] time= 19/06/2026 18:58:45
[2026-06-19 18:58:45,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:58:45,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:58:45,511.511 INFO    ] No existing commands found in stream
[2026-06-19 18:58:50,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:58:50,533.533 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 18:58:52,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 18:58:52,940.940 INFO    ] Checking for system updates...
[2026-06-19 18:58:52,980.980 INFO    ] 200
[2026-06-19 18:58:52,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:53,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:58:53,038.038 INFO    ] No update needed
[2026-06-19 18:58:53,040.040 INFO    ] Checking for camera pi updates...
[2026-06-19 18:58:53,078.078 INFO    ] 200
[2026-06-19 18:58:53,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:58:53,121.121 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:58:53,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:58:53,177.177 INFO    ] No camera update needed
[2026-06-19 18:58:53,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:58:53,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:58:53,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:58:53,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:58:55,234.234 INFO    ] ================================================
[2026-06-19 18:58:55,249.249 INFO    ] Launching Daemon at Fri Jun 19 18:58:55 IST 2026
[2026-06-19 18:58:55,261.261 INFO    ] ================================================
[2026-06-19 18:58:55,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:58:55
[2026-06-19 18:58:56,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:58:56,718.718 INFO    ] Initializing speech engine...
[2026-06-19 18:58:56,727.727 INFO    ] 2026-06-19 18:58:56
[2026-06-19 18:58:56,976.976 INFO    ] 2026-06-19 18:58:56
[2026-06-19 18:58:57,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:58:57,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:58:57,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:58:57,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:58:57,452.452 INFO    ] time= 19/06/2026 18:58:57
[2026-06-19 18:58:57,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:58:57,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:58:57,629.629 INFO    ] No existing commands found in stream
[2026-06-19 18:59:02,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:59:02,661.661 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 18:59:04,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:59:04,661.661 INFO    ] Checking for system updates...
[2026-06-19 18:59:04,702.702 INFO    ] 200
[2026-06-19 18:59:04,704.704 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:04,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:59:04,761.761 INFO    ] No update needed
[2026-06-19 18:59:04,767.767 INFO    ] Checking for camera pi updates...
[2026-06-19 18:59:04,801.801 INFO    ] 200
[2026-06-19 18:59:04,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:04,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:59:04,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:59:04,897.897 INFO    ] No camera update needed
[2026-06-19 18:59:04,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:59:04,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:59:04,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:59:04,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:59:06,957.957 INFO    ] ================================================
[2026-06-19 18:59:06,973.973 INFO    ] Launching Daemon at Fri Jun 19 18:59:06 IST 2026
[2026-06-19 18:59:06,984.984 INFO    ] ================================================
[2026-06-19 18:59:07,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:59:07
[2026-06-19 18:59:08,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:59:08,453.453 INFO    ] Initializing speech engine...
[2026-06-19 18:59:08,462.462 INFO    ] 2026-06-19 18:59:08
[2026-06-19 18:59:08,718.718 INFO    ] 2026-06-19 18:59:08
[2026-06-19 18:59:08,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:59:09,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:59:09,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:59:09,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:59:09,321.321 INFO    ] time= 19/06/2026 18:59:09
[2026-06-19 18:59:09,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:59:09,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:59:09,511.511 INFO    ] No existing commands found in stream
[2026-06-19 18:59:14,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:59:14,538.538 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 18:59:18,036.036 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 18:59:18,039.039 INFO    ] Checking for system updates...
[2026-06-19 18:59:18,075.075 INFO    ] 200
[2026-06-19 18:59:18,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:18,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:59:18,132.132 INFO    ] No update needed
[2026-06-19 18:59:18,135.135 INFO    ] Checking for camera pi updates...
[2026-06-19 18:59:18,174.174 INFO    ] 200
[2026-06-19 18:59:18,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:18,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:59:18,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:59:18,274.274 INFO    ] No camera update needed
[2026-06-19 18:59:18,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:59:18,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:59:18,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:59:18,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:59:20,335.335 INFO    ] ================================================
[2026-06-19 18:59:20,351.351 INFO    ] Launching Daemon at Fri Jun 19 18:59:20 IST 2026
[2026-06-19 18:59:20,363.363 INFO    ] ================================================
[2026-06-19 18:59:20,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:59:20
[2026-06-19 18:59:21,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:59:21,775.775 INFO    ] Initializing speech engine...
[2026-06-19 18:59:21,787.787 INFO    ] 2026-06-19 18:59:21
[2026-06-19 18:59:22,057.057 INFO    ] 2026-06-19 18:59:22
[2026-06-19 18:59:22,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:59:22,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:59:22,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:59:22,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:59:22,560.560 INFO    ] time= 19/06/2026 18:59:22
[2026-06-19 18:59:22,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:59:22,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:59:22,761.761 INFO    ] No existing commands found in stream
[2026-06-19 18:59:27,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:59:27,787.787 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 18:59:29,742.742 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 18:59:29,745.745 INFO    ] Checking for system updates...
[2026-06-19 18:59:29,780.780 INFO    ] 200
[2026-06-19 18:59:29,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:29,835.835 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:59:29,838.838 INFO    ] No update needed
[2026-06-19 18:59:29,840.840 INFO    ] Checking for camera pi updates...
[2026-06-19 18:59:29,876.876 INFO    ] 200
[2026-06-19 18:59:29,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:29,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:59:29,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 18:59:29,966.966 INFO    ] No camera update needed
[2026-06-19 18:59:29,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:59:29,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:59:29,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:59:29,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:59:32,023.023 INFO    ] ================================================
[2026-06-19 18:59:32,041.041 INFO    ] Launching Daemon at Fri Jun 19 18:59:32 IST 2026
[2026-06-19 18:59:32,053.053 INFO    ] ================================================
[2026-06-19 18:59:32,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:59:32
[2026-06-19 18:59:33,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:59:33,827.827 INFO    ] Initializing speech engine...
[2026-06-19 18:59:33,839.839 INFO    ] 2026-06-19 18:59:33
[2026-06-19 18:59:34,133.133 INFO    ] 2026-06-19 18:59:34
[2026-06-19 18:59:34,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:59:34,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:59:34,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:59:34,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:59:34,648.648 INFO    ] time= 19/06/2026 18:59:34
[2026-06-19 18:59:34,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:59:34,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:59:34,791.791 INFO    ] No existing commands found in stream
[2026-06-19 18:59:39,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:59:39,819.819 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 18:59:40,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 18:59:40,650.650 INFO    ] Checking for system updates...
[2026-06-19 18:59:40,689.689 INFO    ] 200
[2026-06-19 18:59:40,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:40,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:59:40,747.747 INFO    ] No update needed
[2026-06-19 18:59:40,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 18:59:40,788.788 INFO    ] 200
[2026-06-19 18:59:40,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:40,830.830 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:59:40,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:59:40,879.879 INFO    ] No camera update needed
[2026-06-19 18:59:40,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:59:40,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:59:40,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:59:40,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:59:42,933.933 INFO    ] ================================================
[2026-06-19 18:59:42,949.949 INFO    ] Launching Daemon at Fri Jun 19 18:59:42 IST 2026
[2026-06-19 18:59:42,960.960 INFO    ] ================================================
[2026-06-19 18:59:43,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:59:43
[2026-06-19 18:59:44,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:59:44,367.367 INFO    ] Initializing speech engine...
[2026-06-19 18:59:44,382.382 INFO    ] 2026-06-19 18:59:44
[2026-06-19 18:59:44,649.649 INFO    ] 2026-06-19 18:59:44
[2026-06-19 18:59:44,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:59:44,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:59:44,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:59:45,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:59:45,107.107 INFO    ] time= 19/06/2026 18:59:45
[2026-06-19 18:59:45,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:59:45,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:59:45,351.351 INFO    ] No existing commands found in stream
[2026-06-19 18:59:50,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 18:59:50,383.383 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 18:59:51,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 18:59:51,941.941 INFO    ] Checking for system updates...
[2026-06-19 18:59:51,977.977 INFO    ] 200
[2026-06-19 18:59:51,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:52,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:59:52,034.034 INFO    ] No update needed
[2026-06-19 18:59:52,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 18:59:52,070.070 INFO    ] 200
[2026-06-19 18:59:52,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 18:59:52,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 18:59:52,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 18:59:52,172.172 INFO    ] No camera update needed
[2026-06-19 18:59:52,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-19 18:59:52,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 18:59:52,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 18:59:52,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 18:59:54,231.231 INFO    ] ================================================
[2026-06-19 18:59:54,246.246 INFO    ] Launching Daemon at Fri Jun 19 18:59:54 IST 2026
[2026-06-19 18:59:54,257.257 INFO    ] ================================================
[2026-06-19 18:59:54,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 18:59:54
[2026-06-19 18:59:55,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 18:59:55,938.938 INFO    ] Initializing speech engine...
[2026-06-19 18:59:55,950.950 INFO    ] 2026-06-19 18:59:55
[2026-06-19 18:59:56,268.268 INFO    ] 2026-06-19 18:59:56
[2026-06-19 18:59:56,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 18:59:56,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 18:59:56,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 18:59:56,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 18:59:56,779.779 INFO    ] time= 19/06/2026 18:59:56
[2026-06-19 18:59:56,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 18:59:56,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-19 18:59:56,944.944 INFO    ] No existing commands found in stream
[2026-06-19 19:00:01,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:00:01,973.973 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 19:00:08,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:00:08,712.712 INFO    ] Checking for system updates...
[2026-06-19 19:00:08,752.752 INFO    ] 200
[2026-06-19 19:00:08,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:00:08,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:00:08,818.818 INFO    ] No update needed
[2026-06-19 19:00:08,820.820 INFO    ] Checking for camera pi updates...
[2026-06-19 19:00:08,858.858 INFO    ] 200
[2026-06-19 19:00:08,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:00:08,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:00:08,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:00:08,960.960 INFO    ] No camera update needed
[2026-06-19 19:00:08,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:00:08,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:00:08,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:00:08,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:00:11,016.016 INFO    ] ================================================
[2026-06-19 19:00:11,032.032 INFO    ] Launching Daemon at Fri Jun 19 19:00:11 IST 2026
[2026-06-19 19:00:11,044.044 INFO    ] ================================================
[2026-06-19 19:00:11,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:00:11
[2026-06-19 19:00:12,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:00:12,542.542 INFO    ] Initializing speech engine...
[2026-06-19 19:00:12,550.550 INFO    ] 2026-06-19 19:00:12
[2026-06-19 19:00:12,807.807 INFO    ] 2026-06-19 19:00:12
[2026-06-19 19:00:12,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:00:13,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:00:13,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:00:13,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:00:13,310.310 INFO    ] time= 19/06/2026 19:00:13
[2026-06-19 19:00:13,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:00:13,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:00:13,516.516 INFO    ] No existing commands found in stream
[2026-06-19 19:00:18,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:00:18,532.532 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 19:00:22,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:00:22,278.278 INFO    ] Checking for system updates...
[2026-06-19 19:00:22,314.314 INFO    ] 200
[2026-06-19 19:00:22,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:00:22,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:00:22,372.372 INFO    ] No update needed
[2026-06-19 19:00:22,375.375 INFO    ] Checking for camera pi updates...
[2026-06-19 19:00:22,412.412 INFO    ] 200
[2026-06-19 19:00:22,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:00:22,461.461 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:00:22,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:00:22,521.521 INFO    ] No camera update needed
[2026-06-19 19:00:22,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:00:22,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:00:22,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:00:22,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:00:24,577.577 INFO    ] ================================================
[2026-06-19 19:00:24,593.593 INFO    ] Launching Daemon at Fri Jun 19 19:00:24 IST 2026
[2026-06-19 19:00:24,604.604 INFO    ] ================================================
[2026-06-19 19:00:25,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:00:25
[2026-06-19 19:00:25,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:00:26,062.062 INFO    ] Initializing speech engine...
[2026-06-19 19:00:26,072.072 INFO    ] 2026-06-19 19:00:26
[2026-06-19 19:00:26,330.330 INFO    ] 2026-06-19 19:00:26
[2026-06-19 19:00:26,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:00:26,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:00:26,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:00:26,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:00:26,825.825 INFO    ] time= 19/06/2026 19:00:26
[2026-06-19 19:00:26,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:00:26,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:00:27,021.021 INFO    ] No existing commands found in stream
[2026-06-19 19:00:32,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:00:32,054.054 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 19:00:35,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:00:35,788.788 INFO    ] Checking for system updates...
[2026-06-19 19:00:35,824.824 INFO    ] 200
[2026-06-19 19:00:35,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:00:35,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:00:35,888.888 INFO    ] No update needed
[2026-06-19 19:00:35,891.891 INFO    ] Checking for camera pi updates...
[2026-06-19 19:00:35,924.924 INFO    ] 200
[2026-06-19 19:00:35,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:00:35,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:00:36,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:00:36,017.017 INFO    ] No camera update needed
[2026-06-19 19:00:36,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:00:36,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:00:36,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:00:36,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:00:38,074.074 INFO    ] ================================================
[2026-06-19 19:00:38,089.089 INFO    ] Launching Daemon at Fri Jun 19 19:00:38 IST 2026
[2026-06-19 19:00:38,100.100 INFO    ] ================================================
[2026-06-19 19:00:38,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:00:38
[2026-06-19 19:00:39,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:00:39,550.550 INFO    ] Initializing speech engine...
[2026-06-19 19:00:39,566.566 INFO    ] 2026-06-19 19:00:39
[2026-06-19 19:00:39,859.859 INFO    ] 2026-06-19 19:00:39
[2026-06-19 19:00:39,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:00:40,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:00:40,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:00:40,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:00:40,240.240 INFO    ] time= 19/06/2026 19:00:40
[2026-06-19 19:00:40,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:00:40,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:00:40,369.369 INFO    ] No existing commands found in stream
[2026-06-19 19:00:45,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:00:45,402.402 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 19:00:46,969.969 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:00:46,972.972 INFO    ] Checking for system updates...
[2026-06-19 19:00:47,012.012 INFO    ] 200
[2026-06-19 19:00:47,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:00:47,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:00:47,078.078 INFO    ] No update needed
[2026-06-19 19:00:47,080.080 INFO    ] Checking for camera pi updates...
[2026-06-19 19:00:47,115.115 INFO    ] 200
[2026-06-19 19:00:47,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:00:47,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:00:47,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:00:47,200.200 INFO    ] No camera update needed
[2026-06-19 19:00:47,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:00:47,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:00:47,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:00:47,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:00:49,264.264 INFO    ] ================================================
[2026-06-19 19:00:49,280.280 INFO    ] Launching Daemon at Fri Jun 19 19:00:49 IST 2026
[2026-06-19 19:00:49,291.291 INFO    ] ================================================
[2026-06-19 19:00:49,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:00:49
[2026-06-19 19:00:50,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:00:50,939.939 INFO    ] Initializing speech engine...
[2026-06-19 19:00:50,953.953 INFO    ] 2026-06-19 19:00:50
[2026-06-19 19:00:51,240.240 INFO    ] 2026-06-19 19:00:51
[2026-06-19 19:00:51,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:00:51,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:00:51,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:00:51,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:00:51,794.794 INFO    ] time= 19/06/2026 19:00:51
[2026-06-19 19:00:51,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:00:51,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:00:51,980.980 INFO    ] No existing commands found in stream
[2026-06-19 19:00:57,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:00:57,011.011 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 19:01:01,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:01:01,335.335 INFO    ] Checking for system updates...
[2026-06-19 19:01:01,373.373 INFO    ] 200
[2026-06-19 19:01:01,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:01,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:01:01,434.434 INFO    ] No update needed
[2026-06-19 19:01:01,436.436 INFO    ] Checking for camera pi updates...
[2026-06-19 19:01:01,487.487 INFO    ] 200
[2026-06-19 19:01:01,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:01,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:01:01,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:01:01,667.667 INFO    ] No camera update needed
[2026-06-19 19:01:01,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:01:01,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:01:01,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:01:01,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:01:03,732.732 INFO    ] ================================================
[2026-06-19 19:01:03,747.747 INFO    ] Launching Daemon at Fri Jun 19 19:01:03 IST 2026
[2026-06-19 19:01:03,758.758 INFO    ] ================================================
[2026-06-19 19:01:04,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:01:04
[2026-06-19 19:01:04,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:01:05,192.192 INFO    ] Initializing speech engine...
[2026-06-19 19:01:05,208.208 INFO    ] 2026-06-19 19:01:05
[2026-06-19 19:01:05,493.493 INFO    ] 2026-06-19 19:01:05
[2026-06-19 19:01:05,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:01:05,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:01:05,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:01:05,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:01:05,916.916 INFO    ] time= 19/06/2026 19:01:05
[2026-06-19 19:01:05,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:01:05,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:01:06,125.125 INFO    ] No existing commands found in stream
[2026-06-19 19:01:11,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:01:11,158.158 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 19:01:13,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:01:13,179.179 INFO    ] Checking for system updates...
[2026-06-19 19:01:13,215.215 INFO    ] 200
[2026-06-19 19:01:13,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:13,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:01:13,280.280 INFO    ] No update needed
[2026-06-19 19:01:13,282.282 INFO    ] Checking for camera pi updates...
[2026-06-19 19:01:13,320.320 INFO    ] 200
[2026-06-19 19:01:13,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:13,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:01:13,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:01:13,425.425 INFO    ] No camera update needed
[2026-06-19 19:01:13,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:01:13,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:01:13,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:01:13,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:01:15,481.481 INFO    ] ================================================
[2026-06-19 19:01:15,496.496 INFO    ] Launching Daemon at Fri Jun 19 19:01:15 IST 2026
[2026-06-19 19:01:15,507.507 INFO    ] ================================================
[2026-06-19 19:01:16,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:01:16
[2026-06-19 19:01:16,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:01:16,959.959 INFO    ] Initializing speech engine...
[2026-06-19 19:01:16,972.972 INFO    ] 2026-06-19 19:01:16
[2026-06-19 19:01:17,261.261 INFO    ] 2026-06-19 19:01:17
[2026-06-19 19:01:17,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:01:17,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:01:17,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:01:17,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:01:17,682.682 INFO    ] time= 19/06/2026 19:01:17
[2026-06-19 19:01:17,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:01:17,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:01:17,771.771 INFO    ] No existing commands found in stream
[2026-06-19 19:01:22,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:01:22,805.805 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 19:01:26,276.276 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:01:26,279.279 INFO    ] Checking for system updates...
[2026-06-19 19:01:26,314.314 INFO    ] 200
[2026-06-19 19:01:26,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:26,370.370 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:01:26,372.372 INFO    ] No update needed
[2026-06-19 19:01:26,375.375 INFO    ] Checking for camera pi updates...
[2026-06-19 19:01:26,409.409 INFO    ] 200
[2026-06-19 19:01:26,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:26,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:01:26,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:01:26,509.509 INFO    ] No camera update needed
[2026-06-19 19:01:26,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:01:26,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:01:26,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:01:26,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:01:28,566.566 INFO    ] ================================================
[2026-06-19 19:01:28,581.581 INFO    ] Launching Daemon at Fri Jun 19 19:01:28 IST 2026
[2026-06-19 19:01:28,591.591 INFO    ] ================================================
[2026-06-19 19:01:29,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:01:29
[2026-06-19 19:01:29,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:01:30,019.019 INFO    ] Initializing speech engine...
[2026-06-19 19:01:30,025.025 INFO    ] 2026-06-19 19:01:30
[2026-06-19 19:01:30,337.337 INFO    ] 2026-06-19 19:01:30
[2026-06-19 19:01:30,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:01:30,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:01:30,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:01:30,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:01:30,727.727 INFO    ] time= 19/06/2026 19:01:30
[2026-06-19 19:01:30,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:01:30,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:01:30,859.859 INFO    ] No existing commands found in stream
[2026-06-19 19:01:35,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:01:35,897.897 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 19:01:37,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:01:37,766.766 INFO    ] Checking for system updates...
[2026-06-19 19:01:37,809.809 INFO    ] 200
[2026-06-19 19:01:37,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:37,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:01:37,874.874 INFO    ] No update needed
[2026-06-19 19:01:37,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 19:01:37,917.917 INFO    ] 200
[2026-06-19 19:01:37,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:37,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:01:38,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:01:38,023.023 INFO    ] No camera update needed
[2026-06-19 19:01:38,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:01:38,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:01:38,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:01:38,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:01:40,082.082 INFO    ] ================================================
[2026-06-19 19:01:40,097.097 INFO    ] Launching Daemon at Fri Jun 19 19:01:40 IST 2026
[2026-06-19 19:01:40,108.108 INFO    ] ================================================
[2026-06-19 19:01:40,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:01:40
[2026-06-19 19:01:41,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:01:41,784.784 INFO    ] Initializing speech engine...
[2026-06-19 19:01:41,798.798 INFO    ] 2026-06-19 19:01:41
[2026-06-19 19:01:42,088.088 INFO    ] 2026-06-19 19:01:42
[2026-06-19 19:01:42,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:01:42,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:01:42,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:01:42,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:01:42,626.626 INFO    ] time= 19/06/2026 19:01:42
[2026-06-19 19:01:42,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:01:42,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:01:42,785.785 INFO    ] No existing commands found in stream
[2026-06-19 19:01:47,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:01:47,812.812 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 19:01:50,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:01:50,972.972 INFO    ] Checking for system updates...
[2026-06-19 19:01:51,015.015 INFO    ] 200
[2026-06-19 19:01:51,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:51,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:01:51,085.085 INFO    ] No update needed
[2026-06-19 19:01:51,088.088 INFO    ] Checking for camera pi updates...
[2026-06-19 19:01:51,126.126 INFO    ] 200
[2026-06-19 19:01:51,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:01:51,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:01:51,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:01:51,225.225 INFO    ] No camera update needed
[2026-06-19 19:01:51,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:01:51,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:01:51,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:01:51,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:01:53,285.285 INFO    ] ================================================
[2026-06-19 19:01:53,301.301 INFO    ] Launching Daemon at Fri Jun 19 19:01:53 IST 2026
[2026-06-19 19:01:53,312.312 INFO    ] ================================================
[2026-06-19 19:01:53,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:01:53
[2026-06-19 19:01:54,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:01:54,745.745 INFO    ] Initializing speech engine...
[2026-06-19 19:01:54,755.755 INFO    ] 2026-06-19 19:01:54
[2026-06-19 19:01:55,006.006 INFO    ] 2026-06-19 19:01:54
[2026-06-19 19:01:55,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:01:55,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:01:55,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:01:55,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:01:55,493.493 INFO    ] time= 19/06/2026 19:01:55
[2026-06-19 19:01:55,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:01:55,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:01:55,732.732 INFO    ] No existing commands found in stream
[2026-06-19 19:02:00,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:02:00,756.756 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 19:02:03,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:02:03,251.251 INFO    ] Checking for system updates...
[2026-06-19 19:02:03,288.288 INFO    ] 200
[2026-06-19 19:02:03,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:02:03,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:02:03,355.355 INFO    ] No update needed
[2026-06-19 19:02:03,358.358 INFO    ] Checking for camera pi updates...
[2026-06-19 19:02:03,397.397 INFO    ] 200
[2026-06-19 19:02:03,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:02:03,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:02:03,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:02:03,499.499 INFO    ] No camera update needed
[2026-06-19 19:02:03,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:02:03,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:02:03,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:02:03,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:02:05,558.558 INFO    ] ================================================
[2026-06-19 19:02:05,573.573 INFO    ] Launching Daemon at Fri Jun 19 19:02:05 IST 2026
[2026-06-19 19:02:05,584.584 INFO    ] ================================================
[2026-06-19 19:02:06,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:02:06
[2026-06-19 19:02:06,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:02:07,233.233 INFO    ] Initializing speech engine...
[2026-06-19 19:02:07,245.245 INFO    ] 2026-06-19 19:02:07
[2026-06-19 19:02:07,525.525 INFO    ] 2026-06-19 19:02:07
[2026-06-19 19:02:07,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:02:07,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:02:07,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:02:08,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:02:08,088.088 INFO    ] time= 19/06/2026 19:02:08
[2026-06-19 19:02:08,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:02:08,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:02:08,275.275 INFO    ] No existing commands found in stream
[2026-06-19 19:02:13,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:02:13,310.310 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 19:02:14,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:02:14,761.761 INFO    ] Checking for system updates...
[2026-06-19 19:02:14,798.798 INFO    ] 200
[2026-06-19 19:02:14,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:02:14,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:02:14,859.859 INFO    ] No update needed
[2026-06-19 19:02:14,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 19:02:14,901.901 INFO    ] 200
[2026-06-19 19:02:14,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:02:14,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:02:15,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:02:15,104.104 INFO    ] No camera update needed
[2026-06-19 19:02:15,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:02:15,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:02:15,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:02:15,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:02:17,165.165 INFO    ] ================================================
[2026-06-19 19:02:17,180.180 INFO    ] Launching Daemon at Fri Jun 19 19:02:17 IST 2026
[2026-06-19 19:02:17,190.190 INFO    ] ================================================
[2026-06-19 19:02:17,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:02:17
[2026-06-19 19:02:18,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:02:18,598.598 INFO    ] Initializing speech engine...
[2026-06-19 19:02:18,604.604 INFO    ] 2026-06-19 19:02:18
[2026-06-19 19:02:18,904.904 INFO    ] 2026-06-19 19:02:18
[2026-06-19 19:02:18,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:02:19,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:02:19,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:02:19,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:02:19,331.331 INFO    ] time= 19/06/2026 19:02:19
[2026-06-19 19:02:19,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:02:19,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:02:19,431.431 INFO    ] No existing commands found in stream
[2026-06-19 19:02:24,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:02:24,470.470 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 19:02:26,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:02:26,750.750 INFO    ] Checking for system updates...
[2026-06-19 19:02:26,787.787 INFO    ] 200
[2026-06-19 19:02:26,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:02:26,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:02:26,846.846 INFO    ] No update needed
[2026-06-19 19:02:26,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 19:02:26,889.889 INFO    ] 200
[2026-06-19 19:02:26,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:02:26,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:02:26,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:02:26,995.995 INFO    ] No camera update needed
[2026-06-19 19:02:26,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:02:27,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:02:27,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:02:27,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:02:29,053.053 INFO    ] ================================================
[2026-06-19 19:02:29,069.069 INFO    ] Launching Daemon at Fri Jun 19 19:02:29 IST 2026
[2026-06-19 19:02:29,080.080 INFO    ] ================================================
[2026-06-19 19:02:29,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:02:29
[2026-06-19 19:02:30,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:02:30,555.555 INFO    ] Initializing speech engine...
[2026-06-19 19:02:30,562.562 INFO    ] 2026-06-19 19:02:30
[2026-06-19 19:02:30,818.818 INFO    ] 2026-06-19 19:02:30
[2026-06-19 19:02:30,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:02:31,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:02:31,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:02:31,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:02:31,284.284 INFO    ] time= 19/06/2026 19:02:31
[2026-06-19 19:02:31,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:02:31,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:02:31,539.539 INFO    ] No existing commands found in stream
[2026-06-19 19:02:36,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:02:36,562.562 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 19:02:40,530.530 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:02:40,532.532 INFO    ] Checking for system updates...
[2026-06-19 19:02:40,568.568 INFO    ] 200
[2026-06-19 19:02:40,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:02:40,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:02:40,626.626 INFO    ] No update needed
[2026-06-19 19:02:40,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 19:02:40,662.662 INFO    ] 200
[2026-06-19 19:02:40,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:02:40,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:02:40,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:02:40,773.773 INFO    ] No camera update needed
[2026-06-19 19:02:40,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:02:40,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:02:40,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:02:40,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:02:42,829.829 INFO    ] ================================================
[2026-06-19 19:02:42,844.844 INFO    ] Launching Daemon at Fri Jun 19 19:02:42 IST 2026
[2026-06-19 19:02:42,855.855 INFO    ] ================================================
[2026-06-19 19:02:43,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:02:43
[2026-06-19 19:02:44,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:02:44,374.374 INFO    ] Initializing speech engine...
[2026-06-19 19:02:44,388.388 INFO    ] 2026-06-19 19:02:44
[2026-06-19 19:02:44,677.677 INFO    ] 2026-06-19 19:02:44
[2026-06-19 19:02:44,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:02:44,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:02:44,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:02:45,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:02:45,106.106 INFO    ] time= 19/06/2026 19:02:45
[2026-06-19 19:02:45,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:02:45,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:02:45,196.196 INFO    ] No existing commands found in stream
[2026-06-19 19:02:50,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:02:50,212.212 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 19:02:52,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:02:52,986.986 INFO    ] Checking for system updates...
[2026-06-19 19:02:53,050.050 INFO    ] 200
[2026-06-19 19:02:53,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 19:02:53,057.057 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 19:02:53,060.060 INFO    ] Checking for camera pi updates...
[2026-06-19 19:02:53,103.103 INFO    ] 200
[2026-06-19 19:02:53,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 19:02:53,109.109 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 19:02:53,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:02:53,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:02:53,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:02:53,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:02:55,172.172 INFO    ] ================================================
[2026-06-19 19:02:55,188.188 INFO    ] Launching Daemon at Fri Jun 19 19:02:55 IST 2026
[2026-06-19 19:02:55,199.199 INFO    ] ================================================
[2026-06-19 19:02:55,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:02:55
[2026-06-19 19:02:56,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:02:56,607.607 INFO    ] Initializing speech engine...
[2026-06-19 19:02:56,614.614 INFO    ] 2026-06-19 19:02:56
[2026-06-19 19:02:56,918.918 INFO    ] 2026-06-19 19:02:56
[2026-06-19 19:02:56,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:02:57,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:02:57,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:02:57,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:02:57,310.310 INFO    ] time= 19/06/2026 19:02:57
[2026-06-19 19:02:57,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:02:57,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:02:57,438.438 INFO    ] No existing commands found in stream
[2026-06-19 19:03:02,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:03:02,453.453 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 19:03:05,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:03:05,646.646 INFO    ] Checking for system updates...
[2026-06-19 19:03:05,683.683 INFO    ] 200
[2026-06-19 19:03:05,686.686 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:05,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:03:05,740.740 INFO    ] No update needed
[2026-06-19 19:03:05,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 19:03:05,776.776 INFO    ] 200
[2026-06-19 19:03:05,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:05,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:03:05,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:03:05,871.871 INFO    ] No camera update needed
[2026-06-19 19:03:05,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:03:05,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:03:05,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:03:05,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:03:07,927.927 INFO    ] ================================================
[2026-06-19 19:03:07,943.943 INFO    ] Launching Daemon at Fri Jun 19 19:03:07 IST 2026
[2026-06-19 19:03:07,955.955 INFO    ] ================================================
[2026-06-19 19:03:08,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:03:08
[2026-06-19 19:03:09,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:03:09,381.381 INFO    ] Initializing speech engine...
[2026-06-19 19:03:09,391.391 INFO    ] 2026-06-19 19:03:09
[2026-06-19 19:03:09,638.638 INFO    ] 2026-06-19 19:03:09
[2026-06-19 19:03:09,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:03:09,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:03:09,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:03:10,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:03:10,139.139 INFO    ] time= 19/06/2026 19:03:10
[2026-06-19 19:03:10,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:03:10,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:03:10,376.376 INFO    ] No existing commands found in stream
[2026-06-19 19:03:15,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:03:15,399.399 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 19:03:19,504.504 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:03:19,506.506 INFO    ] Checking for system updates...
[2026-06-19 19:03:19,545.545 INFO    ] 200
[2026-06-19 19:03:19,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:19,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:03:19,604.604 INFO    ] No update needed
[2026-06-19 19:03:19,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 19:03:19,641.641 INFO    ] 200
[2026-06-19 19:03:19,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:19,692.692 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:03:19,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:03:19,749.749 INFO    ] No camera update needed
[2026-06-19 19:03:19,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:03:19,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:03:19,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:03:19,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:03:21,805.805 INFO    ] ================================================
[2026-06-19 19:03:21,820.820 INFO    ] Launching Daemon at Fri Jun 19 19:03:21 IST 2026
[2026-06-19 19:03:21,832.832 INFO    ] ================================================
[2026-06-19 19:03:22,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:03:22
[2026-06-19 19:03:23,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:03:23,295.295 INFO    ] Initializing speech engine...
[2026-06-19 19:03:23,303.303 INFO    ] 2026-06-19 19:03:23
[2026-06-19 19:03:23,562.562 INFO    ] 2026-06-19 19:03:23
[2026-06-19 19:03:23,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:03:23,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:03:23,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:03:23,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:03:24,020.020 INFO    ] time= 19/06/2026 19:03:23
[2026-06-19 19:03:24,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:03:24,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:03:24,239.239 INFO    ] No existing commands found in stream
[2026-06-19 19:03:29,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:03:29,272.272 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 19:03:33,664.664 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:03:33,667.667 INFO    ] Checking for system updates...
[2026-06-19 19:03:33,702.702 INFO    ] 200
[2026-06-19 19:03:33,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:33,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:03:33,760.760 INFO    ] No update needed
[2026-06-19 19:03:33,762.762 INFO    ] Checking for camera pi updates...
[2026-06-19 19:03:33,796.796 INFO    ] 200
[2026-06-19 19:03:33,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:33,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:03:33,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:03:33,887.887 INFO    ] No camera update needed
[2026-06-19 19:03:33,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:03:33,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:03:33,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:03:33,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:03:35,942.942 INFO    ] ================================================
[2026-06-19 19:03:35,957.957 INFO    ] Launching Daemon at Fri Jun 19 19:03:35 IST 2026
[2026-06-19 19:03:35,968.968 INFO    ] ================================================
[2026-06-19 19:03:36,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:03:36
[2026-06-19 19:03:37,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:03:37,376.376 INFO    ] Initializing speech engine...
[2026-06-19 19:03:37,389.389 INFO    ] 2026-06-19 19:03:37
[2026-06-19 19:03:37,654.654 INFO    ] 2026-06-19 19:03:37
[2026-06-19 19:03:37,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:03:37,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:03:37,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:03:38,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:03:38,192.192 INFO    ] time= 19/06/2026 19:03:38
[2026-06-19 19:03:38,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:03:38,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:03:38,351.351 INFO    ] No existing commands found in stream
[2026-06-19 19:03:43,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:03:43,378.378 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 19:03:45,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:03:45,465.465 INFO    ] Checking for system updates...
[2026-06-19 19:03:45,501.501 INFO    ] 200
[2026-06-19 19:03:45,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:45,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:03:45,558.558 INFO    ] No update needed
[2026-06-19 19:03:45,560.560 INFO    ] Checking for camera pi updates...
[2026-06-19 19:03:45,598.598 INFO    ] 200
[2026-06-19 19:03:45,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:45,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:03:45,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:03:45,692.692 INFO    ] No camera update needed
[2026-06-19 19:03:45,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:03:45,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:03:45,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:03:45,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:03:47,747.747 INFO    ] ================================================
[2026-06-19 19:03:47,762.762 INFO    ] Launching Daemon at Fri Jun 19 19:03:47 IST 2026
[2026-06-19 19:03:47,773.773 INFO    ] ================================================
[2026-06-19 19:03:48,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:03:48
[2026-06-19 19:03:48,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:03:49,199.199 INFO    ] Initializing speech engine...
[2026-06-19 19:03:49,208.208 INFO    ] 2026-06-19 19:03:49
[2026-06-19 19:03:49,467.467 INFO    ] 2026-06-19 19:03:49
[2026-06-19 19:03:49,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:03:49,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:03:49,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:03:49,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:03:49,920.920 INFO    ] time= 19/06/2026 19:03:49
[2026-06-19 19:03:49,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:03:50,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:03:50,166.166 INFO    ] No existing commands found in stream
[2026-06-19 19:03:55,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:03:55,180.180 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 19:03:57,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:03:57,657.657 INFO    ] Checking for system updates...
[2026-06-19 19:03:57,695.695 INFO    ] 200
[2026-06-19 19:03:57,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:57,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:03:57,760.760 INFO    ] No update needed
[2026-06-19 19:03:57,762.762 INFO    ] Checking for camera pi updates...
[2026-06-19 19:03:57,797.797 INFO    ] 200
[2026-06-19 19:03:57,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:03:57,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:03:57,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:03:57,889.889 INFO    ] No camera update needed
[2026-06-19 19:03:57,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:03:57,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:03:57,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:03:57,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:03:59,946.946 INFO    ] ================================================
[2026-06-19 19:03:59,962.962 INFO    ] Launching Daemon at Fri Jun 19 19:03:59 IST 2026
[2026-06-19 19:03:59,972.972 INFO    ] ================================================
[2026-06-19 19:04:00,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:04:00
[2026-06-19 19:04:01,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:04:01,763.763 INFO    ] Initializing speech engine...
[2026-06-19 19:04:01,772.772 INFO    ] 2026-06-19 19:04:01
[2026-06-19 19:04:02,064.064 INFO    ] 2026-06-19 19:04:02
[2026-06-19 19:04:02,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:04:02,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:04:02,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:04:02,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:04:02,667.667 INFO    ] time= 19/06/2026 19:04:02
[2026-06-19 19:04:02,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:04:02,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:04:02,877.877 INFO    ] No existing commands found in stream
[2026-06-19 19:04:07,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:04:07,898.898 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 19:04:11,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:04:11,008.008 INFO    ] Checking for system updates...
[2026-06-19 19:04:11,045.045 INFO    ] 200
[2026-06-19 19:04:11,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:11,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:04:11,103.103 INFO    ] No update needed
[2026-06-19 19:04:11,105.105 INFO    ] Checking for camera pi updates...
[2026-06-19 19:04:11,139.139 INFO    ] 200
[2026-06-19 19:04:11,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:11,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:04:11,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:04:11,231.231 INFO    ] No camera update needed
[2026-06-19 19:04:11,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:04:11,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:04:11,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:04:11,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:04:13,286.286 INFO    ] ================================================
[2026-06-19 19:04:13,301.301 INFO    ] Launching Daemon at Fri Jun 19 19:04:13 IST 2026
[2026-06-19 19:04:13,311.311 INFO    ] ================================================
[2026-06-19 19:04:13,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:04:13
[2026-06-19 19:04:14,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:04:14,743.743 INFO    ] Initializing speech engine...
[2026-06-19 19:04:14,759.759 INFO    ] 2026-06-19 19:04:14
[2026-06-19 19:04:15,031.031 INFO    ] 2026-06-19 19:04:15
[2026-06-19 19:04:15,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:04:15,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:04:15,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:04:15,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:04:15,490.490 INFO    ] time= 19/06/2026 19:04:15
[2026-06-19 19:04:15,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:04:15,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:04:15,671.671 INFO    ] No existing commands found in stream
[2026-06-19 19:04:20,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:04:20,686.686 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 19:04:21,313.313 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:04:21,315.315 INFO    ] Checking for system updates...
[2026-06-19 19:04:21,352.352 INFO    ] 200
[2026-06-19 19:04:21,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:21,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:04:21,409.409 INFO    ] No update needed
[2026-06-19 19:04:21,412.412 INFO    ] Checking for camera pi updates...
[2026-06-19 19:04:21,447.447 INFO    ] 200
[2026-06-19 19:04:21,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:21,490.490 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:04:21,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:04:21,620.620 INFO    ] No camera update needed
[2026-06-19 19:04:21,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:04:21,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:04:21,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:04:21,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:04:23,674.674 INFO    ] ================================================
[2026-06-19 19:04:23,690.690 INFO    ] Launching Daemon at Fri Jun 19 19:04:23 IST 2026
[2026-06-19 19:04:23,700.700 INFO    ] ================================================
[2026-06-19 19:04:24,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:04:24
[2026-06-19 19:04:24,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:04:25,118.118 INFO    ] Initializing speech engine...
[2026-06-19 19:04:25,134.134 INFO    ] 2026-06-19 19:04:25
[2026-06-19 19:04:25,425.425 INFO    ] 2026-06-19 19:04:25
[2026-06-19 19:04:25,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:04:25,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:04:25,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:04:25,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:04:25,785.785 INFO    ] time= 19/06/2026 19:04:25
[2026-06-19 19:04:25,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:04:25,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:04:25,906.906 INFO    ] No existing commands found in stream
[2026-06-19 19:04:30,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:04:30,933.933 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 19:04:33,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:04:33,673.673 INFO    ] Checking for system updates...
[2026-06-19 19:04:33,709.709 INFO    ] 200
[2026-06-19 19:04:33,711.711 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:33,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:04:33,769.769 INFO    ] No update needed
[2026-06-19 19:04:33,771.771 INFO    ] Checking for camera pi updates...
[2026-06-19 19:04:33,806.806 INFO    ] 200
[2026-06-19 19:04:33,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:33,854.854 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:04:33,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:04:33,911.911 INFO    ] No camera update needed
[2026-06-19 19:04:33,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:04:33,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:04:33,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:04:33,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:04:35,967.967 INFO    ] ================================================
[2026-06-19 19:04:35,983.983 INFO    ] Launching Daemon at Fri Jun 19 19:04:35 IST 2026
[2026-06-19 19:04:35,993.993 INFO    ] ================================================
[2026-06-19 19:04:36,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:04:36
[2026-06-19 19:04:37,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:04:37,638.638 INFO    ] Initializing speech engine...
[2026-06-19 19:04:37,647.647 INFO    ] 2026-06-19 19:04:37
[2026-06-19 19:04:37,936.936 INFO    ] 2026-06-19 19:04:37
[2026-06-19 19:04:37,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:04:38,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:04:38,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:04:38,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:04:38,474.474 INFO    ] time= 19/06/2026 19:04:38
[2026-06-19 19:04:38,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:04:38,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:04:38,621.621 INFO    ] No existing commands found in stream
[2026-06-19 19:04:43,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:04:43,646.646 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 19:04:45,676.676 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:04:45,678.678 INFO    ] Checking for system updates...
[2026-06-19 19:04:45,715.715 INFO    ] 200
[2026-06-19 19:04:45,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:45,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:04:45,775.775 INFO    ] No update needed
[2026-06-19 19:04:45,778.778 INFO    ] Checking for camera pi updates...
[2026-06-19 19:04:45,814.814 INFO    ] 200
[2026-06-19 19:04:45,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:45,859.859 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:04:45,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:04:45,920.920 INFO    ] No camera update needed
[2026-06-19 19:04:45,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:04:45,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:04:45,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:04:45,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:04:47,980.980 INFO    ] ================================================
[2026-06-19 19:04:48,996.996 INFO    ] Launching Daemon at Fri Jun 19 19:04:47 IST 2026
[2026-06-19 19:04:48,007.007 INFO    ] ================================================
[2026-06-19 19:04:48,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:04:48
[2026-06-19 19:04:49,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:04:49,685.685 INFO    ] Initializing speech engine...
[2026-06-19 19:04:49,693.693 INFO    ] 2026-06-19 19:04:49
[2026-06-19 19:04:49,980.980 INFO    ] 2026-06-19 19:04:49
[2026-06-19 19:04:50,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:04:50,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:04:50,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:04:50,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:04:50,485.485 INFO    ] time= 19/06/2026 19:04:50
[2026-06-19 19:04:50,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:04:50,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:04:50,679.679 INFO    ] No existing commands found in stream
[2026-06-19 19:04:55,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:04:55,708.708 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 19:04:56,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:04:56,897.897 INFO    ] Checking for system updates...
[2026-06-19 19:04:56,933.933 INFO    ] 200
[2026-06-19 19:04:56,935.935 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:56,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:04:56,991.991 INFO    ] No update needed
[2026-06-19 19:04:56,994.994 INFO    ] Checking for camera pi updates...
[2026-06-19 19:04:57,029.029 INFO    ] 200
[2026-06-19 19:04:57,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:04:57,084.084 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:04:57,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:04:57,135.135 INFO    ] No camera update needed
[2026-06-19 19:04:57,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:04:57,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:04:57,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:04:57,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:04:59,190.190 INFO    ] ================================================
[2026-06-19 19:04:59,205.205 INFO    ] Launching Daemon at Fri Jun 19 19:04:59 IST 2026
[2026-06-19 19:04:59,217.217 INFO    ] ================================================
[2026-06-19 19:04:59,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:04:59
[2026-06-19 19:05:00,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:05:00,619.619 INFO    ] Initializing speech engine...
[2026-06-19 19:05:00,631.631 INFO    ] 2026-06-19 19:05:00
[2026-06-19 19:05:00,898.898 INFO    ] 2026-06-19 19:05:00
[2026-06-19 19:05:00,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:05:01,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:05:01,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:05:01,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:05:01,315.315 INFO    ] time= 19/06/2026 19:05:01
[2026-06-19 19:05:01,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:05:01,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:05:01,462.462 INFO    ] No existing commands found in stream
[2026-06-19 19:05:06,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:05:06,475.475 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 19:05:09,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:05:09,175.175 INFO    ] Checking for system updates...
[2026-06-19 19:05:09,215.215 INFO    ] 200
[2026-06-19 19:05:09,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:09,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:05:09,281.281 INFO    ] No update needed
[2026-06-19 19:05:09,283.283 INFO    ] Checking for camera pi updates...
[2026-06-19 19:05:09,318.318 INFO    ] 200
[2026-06-19 19:05:09,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:09,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:05:09,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:05:09,412.412 INFO    ] No camera update needed
[2026-06-19 19:05:09,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:05:09,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:05:09,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:05:09,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:05:11,471.471 INFO    ] ================================================
[2026-06-19 19:05:11,487.487 INFO    ] Launching Daemon at Fri Jun 19 19:05:11 IST 2026
[2026-06-19 19:05:11,498.498 INFO    ] ================================================
[2026-06-19 19:05:12,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:05:12
[2026-06-19 19:05:12,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:05:12,902.902 INFO    ] Initializing speech engine...
[2026-06-19 19:05:12,914.914 INFO    ] 2026-06-19 19:05:12
[2026-06-19 19:05:13,181.181 INFO    ] 2026-06-19 19:05:13
[2026-06-19 19:05:13,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:05:13,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:05:13,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:05:13,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:05:13,668.668 INFO    ] time= 19/06/2026 19:05:13
[2026-06-19 19:05:13,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:05:13,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:05:13,895.895 INFO    ] No existing commands found in stream
[2026-06-19 19:05:18,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:05:18,923.923 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 19:05:19,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:05:19,972.972 INFO    ] Checking for system updates...
[2026-06-19 19:05:20,008.008 INFO    ] 200
[2026-06-19 19:05:20,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:20,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:05:20,071.071 INFO    ] No update needed
[2026-06-19 19:05:20,074.074 INFO    ] Checking for camera pi updates...
[2026-06-19 19:05:20,108.108 INFO    ] 200
[2026-06-19 19:05:20,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:20,155.155 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:05:20,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:05:20,211.211 INFO    ] No camera update needed
[2026-06-19 19:05:20,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:05:20,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:05:20,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:05:20,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:05:22,267.267 INFO    ] ================================================
[2026-06-19 19:05:22,282.282 INFO    ] Launching Daemon at Fri Jun 19 19:05:22 IST 2026
[2026-06-19 19:05:22,293.293 INFO    ] ================================================
[2026-06-19 19:05:22,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:05:22
[2026-06-19 19:05:23,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:05:23,761.761 INFO    ] Initializing speech engine...
[2026-06-19 19:05:23,774.774 INFO    ] 2026-06-19 19:05:23
[2026-06-19 19:05:24,040.040 INFO    ] 2026-06-19 19:05:24
[2026-06-19 19:05:24,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:05:24,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:05:24,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:05:24,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:05:24,457.457 INFO    ] time= 19/06/2026 19:05:24
[2026-06-19 19:05:24,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:05:24,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:05:24,613.613 INFO    ] No existing commands found in stream
[2026-06-19 19:05:29,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:05:29,641.641 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 19:05:33,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:05:33,055.055 INFO    ] Checking for system updates...
[2026-06-19 19:05:33,091.091 INFO    ] 200
[2026-06-19 19:05:33,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:33,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:05:33,150.150 INFO    ] No update needed
[2026-06-19 19:05:33,152.152 INFO    ] Checking for camera pi updates...
[2026-06-19 19:05:33,189.189 INFO    ] 200
[2026-06-19 19:05:33,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:33,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:05:33,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:05:33,281.281 INFO    ] No camera update needed
[2026-06-19 19:05:33,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:05:33,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:05:33,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:05:33,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:05:35,339.339 INFO    ] ================================================
[2026-06-19 19:05:35,354.354 INFO    ] Launching Daemon at Fri Jun 19 19:05:35 IST 2026
[2026-06-19 19:05:35,365.365 INFO    ] ================================================
[2026-06-19 19:05:35,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:05:35
[2026-06-19 19:05:36,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:05:36,779.779 INFO    ] Initializing speech engine...
[2026-06-19 19:05:36,792.792 INFO    ] 2026-06-19 19:05:36
[2026-06-19 19:05:37,074.074 INFO    ] 2026-06-19 19:05:37
[2026-06-19 19:05:37,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:05:37,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:05:37,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:05:37,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:05:37,491.491 INFO    ] time= 19/06/2026 19:05:37
[2026-06-19 19:05:37,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:05:37,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:05:37,649.649 INFO    ] No existing commands found in stream
[2026-06-19 19:05:42,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:05:42,677.677 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 19:05:43,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:05:43,568.568 INFO    ] Checking for system updates...
[2026-06-19 19:05:43,604.604 INFO    ] 200
[2026-06-19 19:05:43,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:43,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:05:43,662.662 INFO    ] No update needed
[2026-06-19 19:05:43,664.664 INFO    ] Checking for camera pi updates...
[2026-06-19 19:05:43,701.701 INFO    ] 200
[2026-06-19 19:05:43,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:43,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:05:43,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:05:43,794.794 INFO    ] No camera update needed
[2026-06-19 19:05:43,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:05:43,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:05:43,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:05:43,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:05:45,850.850 INFO    ] ================================================
[2026-06-19 19:05:45,865.865 INFO    ] Launching Daemon at Fri Jun 19 19:05:45 IST 2026
[2026-06-19 19:05:45,876.876 INFO    ] ================================================
[2026-06-19 19:05:46,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:05:46
[2026-06-19 19:05:47,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:05:47,286.286 INFO    ] Initializing speech engine...
[2026-06-19 19:05:47,295.295 INFO    ] 2026-06-19 19:05:47
[2026-06-19 19:05:47,586.586 INFO    ] 2026-06-19 19:05:47
[2026-06-19 19:05:47,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:05:47,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:05:47,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:05:47,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:05:47,997.997 INFO    ] time= 19/06/2026 19:05:47
[2026-06-19 19:05:48,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:05:48,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:05:48,087.087 INFO    ] No existing commands found in stream
[2026-06-19 19:05:53,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:05:53,106.106 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 19:05:57,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:05:57,096.096 INFO    ] Checking for system updates...
[2026-06-19 19:05:57,135.135 INFO    ] 200
[2026-06-19 19:05:57,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:57,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:05:57,194.194 INFO    ] No update needed
[2026-06-19 19:05:57,197.197 INFO    ] Checking for camera pi updates...
[2026-06-19 19:05:57,234.234 INFO    ] 200
[2026-06-19 19:05:57,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:05:57,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:05:57,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:05:57,328.328 INFO    ] No camera update needed
[2026-06-19 19:05:57,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:05:57,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:05:57,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:05:57,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:05:59,382.382 INFO    ] ================================================
[2026-06-19 19:05:59,397.397 INFO    ] Launching Daemon at Fri Jun 19 19:05:59 IST 2026
[2026-06-19 19:05:59,408.408 INFO    ] ================================================
[2026-06-19 19:05:59,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:05:59
[2026-06-19 19:06:00,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:06:00,829.829 INFO    ] Initializing speech engine...
[2026-06-19 19:06:00,843.843 INFO    ] 2026-06-19 19:06:00
[2026-06-19 19:06:01,126.126 INFO    ] 2026-06-19 19:06:01
[2026-06-19 19:06:01,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:06:01,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:06:01,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:06:01,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:06:01,592.592 INFO    ] time= 19/06/2026 19:06:01
[2026-06-19 19:06:01,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:06:01,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:06:01,744.744 INFO    ] No existing commands found in stream
[2026-06-19 19:06:06,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:06:06,757.757 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 19:06:09,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:06:09,327.327 INFO    ] Checking for system updates...
[2026-06-19 19:06:09,363.363 INFO    ] 200
[2026-06-19 19:06:09,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:09,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:06:09,426.426 INFO    ] No update needed
[2026-06-19 19:06:09,428.428 INFO    ] Checking for camera pi updates...
[2026-06-19 19:06:09,463.463 INFO    ] 200
[2026-06-19 19:06:09,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:09,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:06:09,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:06:09,558.558 INFO    ] No camera update needed
[2026-06-19 19:06:09,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:06:09,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:06:09,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:06:09,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:06:11,614.614 INFO    ] ================================================
[2026-06-19 19:06:11,631.631 INFO    ] Launching Daemon at Fri Jun 19 19:06:11 IST 2026
[2026-06-19 19:06:11,641.641 INFO    ] ================================================
[2026-06-19 19:06:12,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:06:12
[2026-06-19 19:06:12,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:06:13,228.228 INFO    ] Initializing speech engine...
[2026-06-19 19:06:13,236.236 INFO    ] 2026-06-19 19:06:13
[2026-06-19 19:06:13,506.506 INFO    ] 2026-06-19 19:06:13
[2026-06-19 19:06:13,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:06:13,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:06:13,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:06:13,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:06:14,023.023 INFO    ] time= 19/06/2026 19:06:13
[2026-06-19 19:06:14,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:06:14,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:06:14,239.239 INFO    ] No existing commands found in stream
[2026-06-19 19:06:19,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:06:19,262.262 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 19:06:22,023.023 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:06:22,026.026 INFO    ] Checking for system updates...
[2026-06-19 19:06:22,070.070 INFO    ] 200
[2026-06-19 19:06:22,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:22,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:06:22,134.134 INFO    ] No update needed
[2026-06-19 19:06:22,137.137 INFO    ] Checking for camera pi updates...
[2026-06-19 19:06:22,174.174 INFO    ] 200
[2026-06-19 19:06:22,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:22,222.222 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:06:22,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:06:22,270.270 INFO    ] No camera update needed
[2026-06-19 19:06:22,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:06:22,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:06:22,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:06:22,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:06:24,327.327 INFO    ] ================================================
[2026-06-19 19:06:24,342.342 INFO    ] Launching Daemon at Fri Jun 19 19:06:24 IST 2026
[2026-06-19 19:06:24,352.352 INFO    ] ================================================
[2026-06-19 19:06:24,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:06:24
[2026-06-19 19:06:25,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:06:25,936.936 INFO    ] Initializing speech engine...
[2026-06-19 19:06:25,951.951 INFO    ] 2026-06-19 19:06:25
[2026-06-19 19:06:26,230.230 INFO    ] 2026-06-19 19:06:26
[2026-06-19 19:06:26,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:06:26,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:06:26,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:06:26,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:06:26,700.700 INFO    ] time= 19/06/2026 19:06:26
[2026-06-19 19:06:26,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:06:26,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:06:26,928.928 INFO    ] No existing commands found in stream
[2026-06-19 19:06:31,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:06:31,950.950 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 19:06:33,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:06:33,377.377 INFO    ] Checking for system updates...
[2026-06-19 19:06:33,414.414 INFO    ] 200
[2026-06-19 19:06:33,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:33,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:06:33,478.478 INFO    ] No update needed
[2026-06-19 19:06:33,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 19:06:33,517.517 INFO    ] 200
[2026-06-19 19:06:33,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:33,561.561 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:06:33,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:06:33,609.609 INFO    ] No camera update needed
[2026-06-19 19:06:33,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:06:33,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:06:33,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:06:33,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:06:35,667.667 INFO    ] ================================================
[2026-06-19 19:06:35,687.687 INFO    ] Launching Daemon at Fri Jun 19 19:06:35 IST 2026
[2026-06-19 19:06:35,698.698 INFO    ] ================================================
[2026-06-19 19:06:36,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:06:36
[2026-06-19 19:06:36,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:06:37,264.264 INFO    ] Initializing speech engine...
[2026-06-19 19:06:37,272.272 INFO    ] 2026-06-19 19:06:37
[2026-06-19 19:06:37,553.553 INFO    ] 2026-06-19 19:06:37
[2026-06-19 19:06:37,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:06:37,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:06:37,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:06:37,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:06:38,010.010 INFO    ] time= 19/06/2026 19:06:37
[2026-06-19 19:06:38,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:06:38,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:06:38,247.247 INFO    ] No existing commands found in stream
[2026-06-19 19:06:43,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:06:43,269.269 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 19:06:44,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:06:44,758.758 INFO    ] Checking for system updates...
[2026-06-19 19:06:44,794.794 INFO    ] 200
[2026-06-19 19:06:44,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:44,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:06:44,853.853 INFO    ] No update needed
[2026-06-19 19:06:44,855.855 INFO    ] Checking for camera pi updates...
[2026-06-19 19:06:44,893.893 INFO    ] 200
[2026-06-19 19:06:44,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:44,940.940 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:06:44,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:06:44,993.993 INFO    ] No camera update needed
[2026-06-19 19:06:44,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:06:44,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:06:45,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:06:45,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:06:47,050.050 INFO    ] ================================================
[2026-06-19 19:06:47,065.065 INFO    ] Launching Daemon at Fri Jun 19 19:06:47 IST 2026
[2026-06-19 19:06:47,076.076 INFO    ] ================================================
[2026-06-19 19:06:47,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:06:47
[2026-06-19 19:06:48,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:06:48,529.529 INFO    ] Initializing speech engine...
[2026-06-19 19:06:48,554.554 INFO    ] 2026-06-19 19:06:48
[2026-06-19 19:06:48,826.826 INFO    ] 2026-06-19 19:06:48
[2026-06-19 19:06:48,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:06:49,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:06:49,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:06:49,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:06:49,234.234 INFO    ] time= 19/06/2026 19:06:49
[2026-06-19 19:06:49,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:06:49,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:06:49,398.398 INFO    ] No existing commands found in stream
[2026-06-19 19:06:54,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:06:54,427.427 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 19:06:55,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:06:55,034.034 INFO    ] Checking for system updates...
[2026-06-19 19:06:55,070.070 INFO    ] 200
[2026-06-19 19:06:55,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:55,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:06:55,127.127 INFO    ] No update needed
[2026-06-19 19:06:55,129.129 INFO    ] Checking for camera pi updates...
[2026-06-19 19:06:55,163.163 INFO    ] 200
[2026-06-19 19:06:55,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:06:55,209.209 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:06:55,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:06:55,257.257 INFO    ] No camera update needed
[2026-06-19 19:06:55,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:06:55,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:06:55,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:06:55,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:06:57,311.311 INFO    ] ================================================
[2026-06-19 19:06:57,328.328 INFO    ] Launching Daemon at Fri Jun 19 19:06:57 IST 2026
[2026-06-19 19:06:57,339.339 INFO    ] ================================================
[2026-06-19 19:06:57,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:06:57
[2026-06-19 19:06:58,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:06:58,779.779 INFO    ] Initializing speech engine...
[2026-06-19 19:06:58,788.788 INFO    ] 2026-06-19 19:06:58
[2026-06-19 19:06:59,078.078 INFO    ] 2026-06-19 19:06:59
[2026-06-19 19:06:59,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:06:59,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:06:59,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:06:59,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:06:59,448.448 INFO    ] time= 19/06/2026 19:06:59
[2026-06-19 19:06:59,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:06:59,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:06:59,570.570 INFO    ] No existing commands found in stream
[2026-06-19 19:07:04,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:07:04,586.586 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 19:07:06,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:07:06,482.482 INFO    ] Checking for system updates...
[2026-06-19 19:07:06,518.518 INFO    ] 200
[2026-06-19 19:07:06,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:06,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:07:06,581.581 INFO    ] No update needed
[2026-06-19 19:07:06,584.584 INFO    ] Checking for camera pi updates...
[2026-06-19 19:07:06,618.618 INFO    ] 200
[2026-06-19 19:07:06,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:06,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:07:06,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:07:06,711.711 INFO    ] No camera update needed
[2026-06-19 19:07:06,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:07:06,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:07:06,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:07:06,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:07:08,766.766 INFO    ] ================================================
[2026-06-19 19:07:08,781.781 INFO    ] Launching Daemon at Fri Jun 19 19:07:08 IST 2026
[2026-06-19 19:07:08,792.792 INFO    ] ================================================
[2026-06-19 19:07:09,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:07:09
[2026-06-19 19:07:09,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:07:10,238.238 INFO    ] Initializing speech engine...
[2026-06-19 19:07:10,262.262 INFO    ] 2026-06-19 19:07:10
[2026-06-19 19:07:10,532.532 INFO    ] 2026-06-19 19:07:10
[2026-06-19 19:07:10,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:07:10,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:07:10,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:07:10,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:07:10,942.942 INFO    ] time= 19/06/2026 19:07:10
[2026-06-19 19:07:10,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:07:10,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:07:11,104.104 INFO    ] No existing commands found in stream
[2026-06-19 19:07:16,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:07:16,130.130 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 19:07:18,772.772 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:07:18,775.775 INFO    ] Checking for system updates...
[2026-06-19 19:07:18,811.811 INFO    ] 200
[2026-06-19 19:07:18,813.813 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:18,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:07:18,871.871 INFO    ] No update needed
[2026-06-19 19:07:18,874.874 INFO    ] Checking for camera pi updates...
[2026-06-19 19:07:18,907.907 INFO    ] 200
[2026-06-19 19:07:18,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:18,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:07:19,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:07:19,007.007 INFO    ] No camera update needed
[2026-06-19 19:07:19,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:07:19,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:07:19,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:07:19,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:07:21,064.064 INFO    ] ================================================
[2026-06-19 19:07:21,079.079 INFO    ] Launching Daemon at Fri Jun 19 19:07:21 IST 2026
[2026-06-19 19:07:21,090.090 INFO    ] ================================================
[2026-06-19 19:07:21,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:07:21
[2026-06-19 19:07:22,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:07:22,527.527 INFO    ] Initializing speech engine...
[2026-06-19 19:07:22,536.536 INFO    ] 2026-06-19 19:07:22
[2026-06-19 19:07:22,798.798 INFO    ] 2026-06-19 19:07:22
[2026-06-19 19:07:22,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:07:23,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:07:23,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:07:23,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:07:23,311.311 INFO    ] time= 19/06/2026 19:07:23
[2026-06-19 19:07:23,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:07:23,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:07:23,515.515 INFO    ] No existing commands found in stream
[2026-06-19 19:07:28,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:07:28,537.537 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 19:07:32,325.325 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:07:32,328.328 INFO    ] Checking for system updates...
[2026-06-19 19:07:32,369.369 INFO    ] 200
[2026-06-19 19:07:32,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:32,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:07:32,431.431 INFO    ] No update needed
[2026-06-19 19:07:32,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 19:07:32,479.479 INFO    ] 200
[2026-06-19 19:07:32,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:32,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:07:32,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:07:32,566.566 INFO    ] No camera update needed
[2026-06-19 19:07:32,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:07:32,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:07:32,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:07:32,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:07:34,627.627 INFO    ] ================================================
[2026-06-19 19:07:34,643.643 INFO    ] Launching Daemon at Fri Jun 19 19:07:34 IST 2026
[2026-06-19 19:07:34,655.655 INFO    ] ================================================
[2026-06-19 19:07:35,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:07:35
[2026-06-19 19:07:35,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:07:36,143.143 INFO    ] Initializing speech engine...
[2026-06-19 19:07:36,150.150 INFO    ] 2026-06-19 19:07:36
[2026-06-19 19:07:36,433.433 INFO    ] 2026-06-19 19:07:36
[2026-06-19 19:07:36,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:07:36,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:07:36,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:07:36,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:07:36,967.967 INFO    ] time= 19/06/2026 19:07:36
[2026-06-19 19:07:36,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:07:36,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:07:37,113.113 INFO    ] No existing commands found in stream
[2026-06-19 19:07:42,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:07:42,139.139 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 19:07:43,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:07:43,449.449 INFO    ] Checking for system updates...
[2026-06-19 19:07:43,488.488 INFO    ] 200
[2026-06-19 19:07:43,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:43,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:07:43,552.552 INFO    ] No update needed
[2026-06-19 19:07:43,555.555 INFO    ] Checking for camera pi updates...
[2026-06-19 19:07:43,591.591 INFO    ] 200
[2026-06-19 19:07:43,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:43,636.636 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:07:43,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:07:43,691.691 INFO    ] No camera update needed
[2026-06-19 19:07:43,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:07:43,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:07:43,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:07:43,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:07:45,748.748 INFO    ] ================================================
[2026-06-19 19:07:45,764.764 INFO    ] Launching Daemon at Fri Jun 19 19:07:45 IST 2026
[2026-06-19 19:07:45,775.775 INFO    ] ================================================
[2026-06-19 19:07:46,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:07:46
[2026-06-19 19:07:47,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:07:47,331.331 INFO    ] Initializing speech engine...
[2026-06-19 19:07:47,340.340 INFO    ] 2026-06-19 19:07:47
[2026-06-19 19:07:47,607.607 INFO    ] 2026-06-19 19:07:47
[2026-06-19 19:07:47,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:07:47,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:07:47,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:07:48,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:07:48,090.090 INFO    ] time= 19/06/2026 19:07:48
[2026-06-19 19:07:48,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:07:48,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:07:48,311.311 INFO    ] No existing commands found in stream
[2026-06-19 19:07:53,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:07:53,334.334 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 19:07:55,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:07:55,922.922 INFO    ] Checking for system updates...
[2026-06-19 19:07:55,959.959 INFO    ] 200
[2026-06-19 19:07:55,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:56,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:07:56,017.017 INFO    ] No update needed
[2026-06-19 19:07:56,020.020 INFO    ] Checking for camera pi updates...
[2026-06-19 19:07:56,054.054 INFO    ] 200
[2026-06-19 19:07:56,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:07:56,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:07:56,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:07:56,131.131 INFO    ] No camera update needed
[2026-06-19 19:07:56,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:07:56,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:07:56,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:07:56,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:07:58,189.189 INFO    ] ================================================
[2026-06-19 19:07:58,205.205 INFO    ] Launching Daemon at Fri Jun 19 19:07:58 IST 2026
[2026-06-19 19:07:58,216.216 INFO    ] ================================================
[2026-06-19 19:07:58,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:07:58
[2026-06-19 19:07:59,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:07:59,627.627 INFO    ] Initializing speech engine...
[2026-06-19 19:07:59,641.641 INFO    ] 2026-06-19 19:07:59
[2026-06-19 19:07:59,920.920 INFO    ] 2026-06-19 19:07:59
[2026-06-19 19:07:59,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:08:00,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:08:00,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:08:00,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:08:00,322.322 INFO    ] time= 19/06/2026 19:08:00
[2026-06-19 19:08:00,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:08:00,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:08:00,485.485 INFO    ] No existing commands found in stream
[2026-06-19 19:08:05,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:08:05,512.512 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 19:08:08,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:08:08,494.494 INFO    ] Checking for system updates...
[2026-06-19 19:08:08,530.530 INFO    ] 200
[2026-06-19 19:08:08,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:08,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:08:08,587.587 INFO    ] No update needed
[2026-06-19 19:08:08,589.589 INFO    ] Checking for camera pi updates...
[2026-06-19 19:08:08,623.623 INFO    ] 200
[2026-06-19 19:08:08,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:08,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:08:08,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:08:08,724.724 INFO    ] No camera update needed
[2026-06-19 19:08:08,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:08:08,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:08:08,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:08:08,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:08:10,778.778 INFO    ] ================================================
[2026-06-19 19:08:10,794.794 INFO    ] Launching Daemon at Fri Jun 19 19:08:10 IST 2026
[2026-06-19 19:08:10,806.806 INFO    ] ================================================
[2026-06-19 19:08:11,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:08:11
[2026-06-19 19:08:11,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:08:12,217.217 INFO    ] Initializing speech engine...
[2026-06-19 19:08:12,230.230 INFO    ] 2026-06-19 19:08:12
[2026-06-19 19:08:12,495.495 INFO    ] 2026-06-19 19:08:12
[2026-06-19 19:08:12,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:08:12,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:08:12,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:08:12,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:08:12,988.988 INFO    ] time= 19/06/2026 19:08:12
[2026-06-19 19:08:13,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:08:13,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:08:13,138.138 INFO    ] No existing commands found in stream
[2026-06-19 19:08:18,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:08:18,167.167 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 19:08:22,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:08:22,050.050 INFO    ] Checking for system updates...
[2026-06-19 19:08:22,087.087 INFO    ] 200
[2026-06-19 19:08:22,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:22,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:08:22,144.144 INFO    ] No update needed
[2026-06-19 19:08:22,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 19:08:22,179.179 INFO    ] 200
[2026-06-19 19:08:22,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:22,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:08:22,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:08:22,269.269 INFO    ] No camera update needed
[2026-06-19 19:08:22,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:08:22,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:08:22,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:08:22,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:08:24,326.326 INFO    ] ================================================
[2026-06-19 19:08:24,342.342 INFO    ] Launching Daemon at Fri Jun 19 19:08:24 IST 2026
[2026-06-19 19:08:24,353.353 INFO    ] ================================================
[2026-06-19 19:08:24,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:08:24
[2026-06-19 19:08:25,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:08:25,787.787 INFO    ] Initializing speech engine...
[2026-06-19 19:08:25,797.797 INFO    ] 2026-06-19 19:08:25
[2026-06-19 19:08:26,049.049 INFO    ] 2026-06-19 19:08:26
[2026-06-19 19:08:26,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:08:26,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:08:26,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:08:26,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:08:26,525.525 INFO    ] time= 19/06/2026 19:08:26
[2026-06-19 19:08:26,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:08:26,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:08:26,765.765 INFO    ] No existing commands found in stream
[2026-06-19 19:08:31,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:08:31,780.780 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 19:08:33,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:08:33,047.047 INFO    ] Checking for system updates...
[2026-06-19 19:08:33,083.083 INFO    ] 200
[2026-06-19 19:08:33,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:33,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:08:33,144.144 INFO    ] No update needed
[2026-06-19 19:08:33,147.147 INFO    ] Checking for camera pi updates...
[2026-06-19 19:08:33,182.182 INFO    ] 200
[2026-06-19 19:08:33,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:33,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:08:33,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:08:33,287.287 INFO    ] No camera update needed
[2026-06-19 19:08:33,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:08:33,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:08:33,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:08:33,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:08:35,345.345 INFO    ] ================================================
[2026-06-19 19:08:35,360.360 INFO    ] Launching Daemon at Fri Jun 19 19:08:35 IST 2026
[2026-06-19 19:08:35,371.371 INFO    ] ================================================
[2026-06-19 19:08:35,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:08:35
[2026-06-19 19:08:36,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:08:36,851.851 INFO    ] Initializing speech engine...
[2026-06-19 19:08:36,860.860 INFO    ] 2026-06-19 19:08:36
[2026-06-19 19:08:37,127.127 INFO    ] 2026-06-19 19:08:37
[2026-06-19 19:08:37,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:08:37,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:08:37,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:08:37,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:08:37,616.616 INFO    ] time= 19/06/2026 19:08:37
[2026-06-19 19:08:37,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:08:37,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:08:37,839.839 INFO    ] No existing commands found in stream
[2026-06-19 19:08:42,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:08:42,865.865 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 19:08:45,278.278 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:08:45,281.281 INFO    ] Checking for system updates...
[2026-06-19 19:08:45,317.317 INFO    ] 200
[2026-06-19 19:08:45,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:45,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:08:45,374.374 INFO    ] No update needed
[2026-06-19 19:08:45,376.376 INFO    ] Checking for camera pi updates...
[2026-06-19 19:08:45,411.411 INFO    ] 200
[2026-06-19 19:08:45,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:45,453.453 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:08:45,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:08:45,610.610 INFO    ] No camera update needed
[2026-06-19 19:08:45,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:08:45,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:08:45,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:08:45,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:08:47,665.665 INFO    ] ================================================
[2026-06-19 19:08:47,682.682 INFO    ] Launching Daemon at Fri Jun 19 19:08:47 IST 2026
[2026-06-19 19:08:47,693.693 INFO    ] ================================================
[2026-06-19 19:08:48,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:08:48
[2026-06-19 19:08:48,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:08:49,117.117 INFO    ] Initializing speech engine...
[2026-06-19 19:08:49,131.131 INFO    ] 2026-06-19 19:08:49
[2026-06-19 19:08:49,399.399 INFO    ] 2026-06-19 19:08:49
[2026-06-19 19:08:49,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:08:49,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:08:49,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:08:49,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:08:49,799.799 INFO    ] time= 19/06/2026 19:08:49
[2026-06-19 19:08:49,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:08:49,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:08:49,884.884 INFO    ] No existing commands found in stream
[2026-06-19 19:08:54,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:08:54,901.901 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 19:08:56,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:08:56,591.591 INFO    ] Checking for system updates...
[2026-06-19 19:08:56,627.627 INFO    ] 200
[2026-06-19 19:08:56,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:56,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:08:56,687.687 INFO    ] No update needed
[2026-06-19 19:08:56,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 19:08:56,723.723 INFO    ] 200
[2026-06-19 19:08:56,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:08:56,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:08:56,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:08:56,819.819 INFO    ] No camera update needed
[2026-06-19 19:08:56,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:08:56,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:08:56,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:08:56,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:08:58,877.877 INFO    ] ================================================
[2026-06-19 19:08:58,893.893 INFO    ] Launching Daemon at Fri Jun 19 19:08:58 IST 2026
[2026-06-19 19:08:58,904.904 INFO    ] ================================================
[2026-06-19 19:08:59,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:08:59
[2026-06-19 19:09:00,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:09:00,337.337 INFO    ] Initializing speech engine...
[2026-06-19 19:09:00,347.347 INFO    ] 2026-06-19 19:09:00
[2026-06-19 19:09:00,605.605 INFO    ] 2026-06-19 19:09:00
[2026-06-19 19:09:00,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:09:00,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:09:00,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:09:01,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:09:01,127.127 INFO    ] time= 19/06/2026 19:09:01
[2026-06-19 19:09:01,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:09:01,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:09:01,308.308 INFO    ] No existing commands found in stream
[2026-06-19 19:09:06,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:09:06,330.330 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 19:09:07,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:09:07,870.870 INFO    ] Checking for system updates...
[2026-06-19 19:09:07,906.906 INFO    ] 200
[2026-06-19 19:09:07,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:07,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:09:07,964.964 INFO    ] No update needed
[2026-06-19 19:09:07,966.966 INFO    ] Checking for camera pi updates...
[2026-06-19 19:09:08,000.000 INFO    ] 200
[2026-06-19 19:09:08,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:08,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:09:08,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:09:08,089.089 INFO    ] No camera update needed
[2026-06-19 19:09:08,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:09:08,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:09:08,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:09:08,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:09:10,145.145 INFO    ] ================================================
[2026-06-19 19:09:10,161.161 INFO    ] Launching Daemon at Fri Jun 19 19:09:10 IST 2026
[2026-06-19 19:09:10,172.172 INFO    ] ================================================
[2026-06-19 19:09:10,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:09:10
[2026-06-19 19:09:11,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:09:11,619.619 INFO    ] Initializing speech engine...
[2026-06-19 19:09:11,622.622 INFO    ] 2026-06-19 19:09:11
[2026-06-19 19:09:11,889.889 INFO    ] 2026-06-19 19:09:11
[2026-06-19 19:09:11,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:09:12,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:09:12,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:09:12,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:09:12,396.396 INFO    ] time= 19/06/2026 19:09:12
[2026-06-19 19:09:12,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:09:12,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:09:12,586.586 INFO    ] No existing commands found in stream
[2026-06-19 19:09:17,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:09:17,613.613 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 19:09:19,972.972 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:09:19,975.975 INFO    ] Checking for system updates...
[2026-06-19 19:09:20,011.011 INFO    ] 200
[2026-06-19 19:09:20,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:20,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:09:20,069.069 INFO    ] No update needed
[2026-06-19 19:09:20,071.071 INFO    ] Checking for camera pi updates...
[2026-06-19 19:09:20,106.106 INFO    ] 200
[2026-06-19 19:09:20,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:20,154.154 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:09:20,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:09:20,205.205 INFO    ] No camera update needed
[2026-06-19 19:09:20,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:09:20,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:09:20,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:09:20,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:09:22,263.263 INFO    ] ================================================
[2026-06-19 19:09:22,279.279 INFO    ] Launching Daemon at Fri Jun 19 19:09:22 IST 2026
[2026-06-19 19:09:22,290.290 INFO    ] ================================================
[2026-06-19 19:09:22,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:09:22
[2026-06-19 19:09:23,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:09:23,757.757 INFO    ] Initializing speech engine...
[2026-06-19 19:09:23,766.766 INFO    ] 2026-06-19 19:09:23
[2026-06-19 19:09:24,025.025 INFO    ] 2026-06-19 19:09:24
[2026-06-19 19:09:24,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:09:24,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:09:24,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:09:24,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:09:24,510.510 INFO    ] time= 19/06/2026 19:09:24
[2026-06-19 19:09:24,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:09:24,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:09:24,726.726 INFO    ] No existing commands found in stream
[2026-06-19 19:09:29,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:09:29,746.746 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 19:09:30,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:09:30,637.637 INFO    ] Checking for system updates...
[2026-06-19 19:09:30,673.673 INFO    ] 200
[2026-06-19 19:09:30,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:30,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:09:30,731.731 INFO    ] No update needed
[2026-06-19 19:09:30,733.733 INFO    ] Checking for camera pi updates...
[2026-06-19 19:09:30,767.767 INFO    ] 200
[2026-06-19 19:09:30,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:30,809.809 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:09:30,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:09:30,867.867 INFO    ] No camera update needed
[2026-06-19 19:09:30,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:09:30,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:09:30,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:09:30,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:09:32,924.924 INFO    ] ================================================
[2026-06-19 19:09:32,940.940 INFO    ] Launching Daemon at Fri Jun 19 19:09:32 IST 2026
[2026-06-19 19:09:32,952.952 INFO    ] ================================================
[2026-06-19 19:09:33,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:09:33
[2026-06-19 19:09:34,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:09:34,634.634 INFO    ] Initializing speech engine...
[2026-06-19 19:09:34,648.648 INFO    ] 2026-06-19 19:09:34
[2026-06-19 19:09:34,962.962 INFO    ] 2026-06-19 19:09:34
[2026-06-19 19:09:35,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:09:35,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:09:35,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:09:35,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:09:35,473.473 INFO    ] time= 19/06/2026 19:09:35
[2026-06-19 19:09:35,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:09:35,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:09:35,634.634 INFO    ] No existing commands found in stream
[2026-06-19 19:09:40,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:09:40,673.673 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 19:09:41,347.347 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:09:41,350.350 INFO    ] Checking for system updates...
[2026-06-19 19:09:41,391.391 INFO    ] 200
[2026-06-19 19:09:41,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:41,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:09:41,455.455 INFO    ] No update needed
[2026-06-19 19:09:41,458.458 INFO    ] Checking for camera pi updates...
[2026-06-19 19:09:41,496.496 INFO    ] 200
[2026-06-19 19:09:41,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:41,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:09:41,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:09:41,592.592 INFO    ] No camera update needed
[2026-06-19 19:09:41,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:09:41,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:09:41,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:09:41,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:09:43,651.651 INFO    ] ================================================
[2026-06-19 19:09:43,667.667 INFO    ] Launching Daemon at Fri Jun 19 19:09:43 IST 2026
[2026-06-19 19:09:43,678.678 INFO    ] ================================================
[2026-06-19 19:09:44,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:09:44
[2026-06-19 19:09:45,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:09:45,359.359 INFO    ] Initializing speech engine...
[2026-06-19 19:09:45,368.368 INFO    ] 2026-06-19 19:09:45
[2026-06-19 19:09:45,644.644 INFO    ] 2026-06-19 19:09:45
[2026-06-19 19:09:45,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:09:45,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:09:45,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:09:46,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:09:46,180.180 INFO    ] time= 19/06/2026 19:09:46
[2026-06-19 19:09:46,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:09:46,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:09:46,359.359 INFO    ] No existing commands found in stream
[2026-06-19 19:09:51,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:09:51,401.401 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 19:09:54,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:09:54,026.026 INFO    ] Checking for system updates...
[2026-06-19 19:09:54,063.063 INFO    ] 200
[2026-06-19 19:09:54,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:54,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:09:54,122.122 INFO    ] No update needed
[2026-06-19 19:09:54,125.125 INFO    ] Checking for camera pi updates...
[2026-06-19 19:09:54,161.161 INFO    ] 200
[2026-06-19 19:09:54,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:09:54,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:09:54,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:09:54,265.265 INFO    ] No camera update needed
[2026-06-19 19:09:54,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:09:54,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:09:54,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:09:54,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:09:56,326.326 INFO    ] ================================================
[2026-06-19 19:09:56,342.342 INFO    ] Launching Daemon at Fri Jun 19 19:09:56 IST 2026
[2026-06-19 19:09:56,353.353 INFO    ] ================================================
[2026-06-19 19:09:56,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:09:56
[2026-06-19 19:09:57,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:09:57,918.918 INFO    ] Initializing speech engine...
[2026-06-19 19:09:57,929.929 INFO    ] 2026-06-19 19:09:57
[2026-06-19 19:09:58,208.208 INFO    ] 2026-06-19 19:09:58
[2026-06-19 19:09:58,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:09:58,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:09:58,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:09:58,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:09:58,762.762 INFO    ] time= 19/06/2026 19:09:58
[2026-06-19 19:09:58,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:09:58,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:09:58,906.906 INFO    ] No existing commands found in stream
[2026-06-19 19:10:03,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:10:03,930.930 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 19:10:08,729.729 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:10:08,732.732 INFO    ] Checking for system updates...
[2026-06-19 19:10:08,769.769 INFO    ] 200
[2026-06-19 19:10:08,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:10:08,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:10:08,831.831 INFO    ] No update needed
[2026-06-19 19:10:08,834.834 INFO    ] Checking for camera pi updates...
[2026-06-19 19:10:08,868.868 INFO    ] 200
[2026-06-19 19:10:08,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:10:08,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:10:08,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:10:08,959.959 INFO    ] No camera update needed
[2026-06-19 19:10:08,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:10:08,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:10:08,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:10:08,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:10:11,018.018 INFO    ] ================================================
[2026-06-19 19:10:11,034.034 INFO    ] Launching Daemon at Fri Jun 19 19:10:11 IST 2026
[2026-06-19 19:10:11,045.045 INFO    ] ================================================
[2026-06-19 19:10:11,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:10:11
[2026-06-19 19:10:12,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:10:12,596.596 INFO    ] Initializing speech engine...
[2026-06-19 19:10:12,605.605 INFO    ] 2026-06-19 19:10:12
[2026-06-19 19:10:12,854.854 INFO    ] 2026-06-19 19:10:12
[2026-06-19 19:10:12,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:10:13,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:10:13,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:10:13,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:10:13,296.296 INFO    ] time= 19/06/2026 19:10:13
[2026-06-19 19:10:13,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:10:13,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:10:13,572.572 INFO    ] No existing commands found in stream
[2026-06-19 19:10:18,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:10:18,591.591 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 19:10:22,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:10:22,244.244 INFO    ] Checking for system updates...
[2026-06-19 19:10:22,281.281 INFO    ] 200
[2026-06-19 19:10:22,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:10:22,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:10:22,341.341 INFO    ] No update needed
[2026-06-19 19:10:22,343.343 INFO    ] Checking for camera pi updates...
[2026-06-19 19:10:22,378.378 INFO    ] 200
[2026-06-19 19:10:22,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:10:22,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:10:22,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:10:22,511.511 INFO    ] No camera update needed
[2026-06-19 19:10:22,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:10:22,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:10:22,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:10:22,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:10:24,568.568 INFO    ] ================================================
[2026-06-19 19:10:24,584.584 INFO    ] Launching Daemon at Fri Jun 19 19:10:24 IST 2026
[2026-06-19 19:10:24,594.594 INFO    ] ================================================
[2026-06-19 19:10:25,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:10:25
[2026-06-19 19:10:25,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:10:26,070.070 INFO    ] Initializing speech engine...
[2026-06-19 19:10:26,079.079 INFO    ] 2026-06-19 19:10:26
[2026-06-19 19:10:26,351.351 INFO    ] 2026-06-19 19:10:26
[2026-06-19 19:10:26,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:10:26,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:10:26,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:10:26,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:10:26,769.769 INFO    ] time= 19/06/2026 19:10:26
[2026-06-19 19:10:26,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:10:26,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:10:26,952.952 INFO    ] No existing commands found in stream
[2026-06-19 19:10:31,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:10:31,980.980 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-19 19:10:35,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:10:35,620.620 INFO    ] Checking for system updates...
[2026-06-19 19:10:35,656.656 INFO    ] 200
[2026-06-19 19:10:35,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:10:35,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:10:35,714.714 INFO    ] No update needed
[2026-06-19 19:10:35,717.717 INFO    ] Checking for camera pi updates...
[2026-06-19 19:10:35,751.751 INFO    ] 200
[2026-06-19 19:10:35,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:10:35,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:10:35,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:10:35,839.839 INFO    ] No camera update needed
[2026-06-19 19:10:35,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:10:35,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:10:35,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:10:35,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:10:37,897.897 INFO    ] ================================================
[2026-06-19 19:10:37,912.912 INFO    ] Launching Daemon at Fri Jun 19 19:10:37 IST 2026
[2026-06-19 19:10:37,923.923 INFO    ] ================================================
[2026-06-19 19:10:38,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:10:38
[2026-06-19 19:10:39,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:10:39,342.342 INFO    ] Initializing speech engine...
[2026-06-19 19:10:39,351.351 INFO    ] 2026-06-19 19:10:39
[2026-06-19 19:10:39,599.599 INFO    ] 2026-06-19 19:10:39
[2026-06-19 19:10:39,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:10:39,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:10:39,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:10:40,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:10:40,109.109 INFO    ] time= 19/06/2026 19:10:40
[2026-06-19 19:10:40,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:10:40,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:10:40,327.327 INFO    ] No existing commands found in stream
[2026-06-19 19:10:45,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:10:45,342.342 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 19:10:49,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:10:49,008.008 INFO    ] Checking for system updates...
[2026-06-19 19:10:49,044.044 INFO    ] 200
[2026-06-19 19:10:49,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:10:49,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:10:49,104.104 INFO    ] No update needed
[2026-06-19 19:10:49,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 19:10:49,140.140 INFO    ] 200
[2026-06-19 19:10:49,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:10:49,183.183 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:10:49,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:10:49,314.314 INFO    ] No camera update needed
[2026-06-19 19:10:49,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:10:49,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:10:49,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:10:49,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:10:51,370.370 INFO    ] ================================================
[2026-06-19 19:10:51,386.386 INFO    ] Launching Daemon at Fri Jun 19 19:10:51 IST 2026
[2026-06-19 19:10:51,397.397 INFO    ] ================================================
[2026-06-19 19:10:52,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:10:52
[2026-06-19 19:10:52,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:10:52,906.906 INFO    ] Initializing speech engine...
[2026-06-19 19:10:52,917.917 INFO    ] 2026-06-19 19:10:52
[2026-06-19 19:10:53,181.181 INFO    ] 2026-06-19 19:10:53
[2026-06-19 19:10:53,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:10:53,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:10:53,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:10:53,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:10:53,726.726 INFO    ] time= 19/06/2026 19:10:53
[2026-06-19 19:10:53,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:10:53,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:10:53,867.867 INFO    ] No existing commands found in stream
[2026-06-19 19:10:58,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:10:58,896.896 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 19:11:00,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:11:00,513.513 INFO    ] Checking for system updates...
[2026-06-19 19:11:00,554.554 INFO    ] 200
[2026-06-19 19:11:00,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:00,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:11:00,614.614 INFO    ] No update needed
[2026-06-19 19:11:00,617.617 INFO    ] Checking for camera pi updates...
[2026-06-19 19:11:00,652.652 INFO    ] 200
[2026-06-19 19:11:00,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:00,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:11:00,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:11:00,751.751 INFO    ] No camera update needed
[2026-06-19 19:11:00,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:11:00,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:11:00,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:11:00,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:11:02,824.824 INFO    ] ================================================
[2026-06-19 19:11:02,846.846 INFO    ] Launching Daemon at Fri Jun 19 19:11:02 IST 2026
[2026-06-19 19:11:02,861.861 INFO    ] ================================================
[2026-06-19 19:11:03,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:11:03
[2026-06-19 19:11:04,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:11:04,369.369 INFO    ] Initializing speech engine...
[2026-06-19 19:11:04,375.375 INFO    ] 2026-06-19 19:11:04
[2026-06-19 19:11:04,621.621 INFO    ] 2026-06-19 19:11:04
[2026-06-19 19:11:04,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:11:04,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:11:04,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:11:05,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:11:05,090.090 INFO    ] time= 19/06/2026 19:11:05
[2026-06-19 19:11:05,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:11:05,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:11:05,310.310 INFO    ] No existing commands found in stream
[2026-06-19 19:11:10,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:11:10,340.340 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 19:11:11,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:11:11,157.157 INFO    ] Checking for system updates...
[2026-06-19 19:11:11,192.192 INFO    ] 200
[2026-06-19 19:11:11,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:11,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:11:11,253.253 INFO    ] No update needed
[2026-06-19 19:11:11,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 19:11:11,289.289 INFO    ] 200
[2026-06-19 19:11:11,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:11,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:11:11,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:11:11,390.390 INFO    ] No camera update needed
[2026-06-19 19:11:11,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:11:11,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:11:11,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:11:11,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:11:13,445.445 INFO    ] ================================================
[2026-06-19 19:11:13,460.460 INFO    ] Launching Daemon at Fri Jun 19 19:11:13 IST 2026
[2026-06-19 19:11:13,472.472 INFO    ] ================================================
[2026-06-19 19:11:14,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:11:14
[2026-06-19 19:11:14,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:11:14,910.910 INFO    ] Initializing speech engine...
[2026-06-19 19:11:14,933.933 INFO    ] 2026-06-19 19:11:14
[2026-06-19 19:11:15,188.188 INFO    ] 2026-06-19 19:11:15
[2026-06-19 19:11:15,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:11:15,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:11:15,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:11:15,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:11:15,663.663 INFO    ] time= 19/06/2026 19:11:15
[2026-06-19 19:11:15,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:11:15,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:11:15,804.804 INFO    ] No existing commands found in stream
[2026-06-19 19:11:20,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:11:20,819.819 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 19:11:24,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:11:24,749.749 INFO    ] Checking for system updates...
[2026-06-19 19:11:24,786.786 INFO    ] 200
[2026-06-19 19:11:24,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:24,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:11:24,846.846 INFO    ] No update needed
[2026-06-19 19:11:24,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 19:11:24,884.884 INFO    ] 200
[2026-06-19 19:11:24,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:24,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:11:24,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:11:24,975.975 INFO    ] No camera update needed
[2026-06-19 19:11:24,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:11:24,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:11:24,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:11:24,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:11:27,035.035 INFO    ] ================================================
[2026-06-19 19:11:27,051.051 INFO    ] Launching Daemon at Fri Jun 19 19:11:27 IST 2026
[2026-06-19 19:11:27,062.062 INFO    ] ================================================
[2026-06-19 19:11:27,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:11:27
[2026-06-19 19:11:28,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:11:28,511.511 INFO    ] Initializing speech engine...
[2026-06-19 19:11:28,518.518 INFO    ] 2026-06-19 19:11:28
[2026-06-19 19:11:28,776.776 INFO    ] 2026-06-19 19:11:28
[2026-06-19 19:11:28,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:11:29,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:11:29,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:11:29,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:11:29,238.238 INFO    ] time= 19/06/2026 19:11:29
[2026-06-19 19:11:29,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:11:29,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:11:29,439.439 INFO    ] No existing commands found in stream
[2026-06-19 19:11:34,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:11:34,469.469 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 19:11:37,329.329 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:11:37,331.331 INFO    ] Checking for system updates...
[2026-06-19 19:11:37,367.367 INFO    ] 200
[2026-06-19 19:11:37,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:37,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:11:37,425.425 INFO    ] No update needed
[2026-06-19 19:11:37,427.427 INFO    ] Checking for camera pi updates...
[2026-06-19 19:11:37,462.462 INFO    ] 200
[2026-06-19 19:11:37,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:37,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:11:37,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:11:37,555.555 INFO    ] No camera update needed
[2026-06-19 19:11:37,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:11:37,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:11:37,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:11:37,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:11:39,611.611 INFO    ] ================================================
[2026-06-19 19:11:39,627.627 INFO    ] Launching Daemon at Fri Jun 19 19:11:39 IST 2026
[2026-06-19 19:11:39,638.638 INFO    ] ================================================
[2026-06-19 19:11:40,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:11:40
[2026-06-19 19:11:40,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:11:41,253.253 INFO    ] Initializing speech engine...
[2026-06-19 19:11:41,263.263 INFO    ] 2026-06-19 19:11:41
[2026-06-19 19:11:41,536.536 INFO    ] 2026-06-19 19:11:41
[2026-06-19 19:11:41,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:11:41,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:11:41,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:11:42,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:11:42,056.056 INFO    ] time= 19/06/2026 19:11:42
[2026-06-19 19:11:42,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:11:42,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:11:42,229.229 INFO    ] No existing commands found in stream
[2026-06-19 19:11:47,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:11:47,257.257 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 19:11:50,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:11:50,069.069 INFO    ] Checking for system updates...
[2026-06-19 19:11:50,109.109 INFO    ] 200
[2026-06-19 19:11:50,112.112 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:50,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:11:50,167.167 INFO    ] No update needed
[2026-06-19 19:11:50,169.169 INFO    ] Checking for camera pi updates...
[2026-06-19 19:11:50,203.203 INFO    ] 200
[2026-06-19 19:11:50,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:11:50,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:11:50,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:11:50,280.280 INFO    ] No camera update needed
[2026-06-19 19:11:50,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:11:50,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:11:50,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:11:50,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:11:52,338.338 INFO    ] ================================================
[2026-06-19 19:11:52,353.353 INFO    ] Launching Daemon at Fri Jun 19 19:11:52 IST 2026
[2026-06-19 19:11:52,365.365 INFO    ] ================================================
[2026-06-19 19:11:52,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:11:52
[2026-06-19 19:11:53,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:11:53,795.795 INFO    ] Initializing speech engine...
[2026-06-19 19:11:53,803.803 INFO    ] 2026-06-19 19:11:53
[2026-06-19 19:11:54,054.054 INFO    ] 2026-06-19 19:11:54
[2026-06-19 19:11:54,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:11:54,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:11:54,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:11:54,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:11:54,431.431 INFO    ] time= 19/06/2026 19:11:54
[2026-06-19 19:11:54,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:11:54,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:11:54,594.594 INFO    ] No existing commands found in stream
[2026-06-19 19:11:59,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:11:59,622.622 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 19:12:00,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:12:00,905.905 INFO    ] Checking for system updates...
[2026-06-19 19:12:00,942.942 INFO    ] 200
[2026-06-19 19:12:00,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:01,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:12:01,007.007 INFO    ] No update needed
[2026-06-19 19:12:01,010.010 INFO    ] Checking for camera pi updates...
[2026-06-19 19:12:01,048.048 INFO    ] 200
[2026-06-19 19:12:01,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:01,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:12:01,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:12:01,142.142 INFO    ] No camera update needed
[2026-06-19 19:12:01,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:12:01,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:12:01,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:12:01,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:12:03,199.199 INFO    ] ================================================
[2026-06-19 19:12:03,220.220 INFO    ] Launching Daemon at Fri Jun 19 19:12:03 IST 2026
[2026-06-19 19:12:03,232.232 INFO    ] ================================================
[2026-06-19 19:12:03,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:12:03
[2026-06-19 19:12:04,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:12:04,684.684 INFO    ] Initializing speech engine...
[2026-06-19 19:12:04,700.700 INFO    ] 2026-06-19 19:12:04
[2026-06-19 19:12:04,983.983 INFO    ] 2026-06-19 19:12:04
[2026-06-19 19:12:05,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:12:05,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:12:05,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:12:05,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:12:05,361.361 INFO    ] time= 19/06/2026 19:12:05
[2026-06-19 19:12:05,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:12:05,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:12:05,483.483 INFO    ] No existing commands found in stream
[2026-06-19 19:12:10,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:12:10,499.499 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 19:12:13,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:12:13,357.357 INFO    ] Checking for system updates...
[2026-06-19 19:12:13,393.393 INFO    ] 200
[2026-06-19 19:12:13,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:13,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:12:13,458.458 INFO    ] No update needed
[2026-06-19 19:12:13,460.460 INFO    ] Checking for camera pi updates...
[2026-06-19 19:12:13,494.494 INFO    ] 200
[2026-06-19 19:12:13,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:13,540.540 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:12:13,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:12:13,591.591 INFO    ] No camera update needed
[2026-06-19 19:12:13,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:12:13,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:12:13,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:12:13,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:12:15,647.647 INFO    ] ================================================
[2026-06-19 19:12:15,662.662 INFO    ] Launching Daemon at Fri Jun 19 19:12:15 IST 2026
[2026-06-19 19:12:15,673.673 INFO    ] ================================================
[2026-06-19 19:12:16,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:12:16
[2026-06-19 19:12:16,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:12:17,092.092 INFO    ] Initializing speech engine...
[2026-06-19 19:12:17,102.102 INFO    ] 2026-06-19 19:12:17
[2026-06-19 19:12:17,398.398 INFO    ] 2026-06-19 19:12:17
[2026-06-19 19:12:17,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:12:17,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:12:17,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:12:17,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:12:17,791.791 INFO    ] time= 19/06/2026 19:12:17
[2026-06-19 19:12:17,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:12:17,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:12:17,986.986 INFO    ] No existing commands found in stream
[2026-06-19 19:12:23,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:12:23,005.005 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 19:12:25,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:12:25,449.449 INFO    ] Checking for system updates...
[2026-06-19 19:12:25,490.490 INFO    ] 200
[2026-06-19 19:12:25,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:25,549.549 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:12:25,552.552 INFO    ] No update needed
[2026-06-19 19:12:25,554.554 INFO    ] Checking for camera pi updates...
[2026-06-19 19:12:25,590.590 INFO    ] 200
[2026-06-19 19:12:25,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:25,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:12:25,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:12:25,685.685 INFO    ] No camera update needed
[2026-06-19 19:12:25,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:12:25,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:12:25,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:12:25,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:12:27,744.744 INFO    ] ================================================
[2026-06-19 19:12:27,759.759 INFO    ] Launching Daemon at Fri Jun 19 19:12:27 IST 2026
[2026-06-19 19:12:27,770.770 INFO    ] ================================================
[2026-06-19 19:12:28,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:12:28
[2026-06-19 19:12:28,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:12:29,180.180 INFO    ] Initializing speech engine...
[2026-06-19 19:12:29,186.186 INFO    ] 2026-06-19 19:12:29
[2026-06-19 19:12:29,460.460 INFO    ] 2026-06-19 19:12:29
[2026-06-19 19:12:29,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:12:29,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:12:29,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:12:29,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:12:29,920.920 INFO    ] time= 19/06/2026 19:12:29
[2026-06-19 19:12:29,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:12:30,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:12:30,117.117 INFO    ] No existing commands found in stream
[2026-06-19 19:12:35,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:12:35,152.152 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 19:12:36,845.845 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:12:36,848.848 INFO    ] Checking for system updates...
[2026-06-19 19:12:36,887.887 INFO    ] 200
[2026-06-19 19:12:36,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:36,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:12:36,951.951 INFO    ] No update needed
[2026-06-19 19:12:36,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 19:12:36,991.991 INFO    ] 200
[2026-06-19 19:12:36,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:37,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:12:37,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:12:37,088.088 INFO    ] No camera update needed
[2026-06-19 19:12:37,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:12:37,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:12:37,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:12:37,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:12:39,144.144 INFO    ] ================================================
[2026-06-19 19:12:39,160.160 INFO    ] Launching Daemon at Fri Jun 19 19:12:39 IST 2026
[2026-06-19 19:12:39,170.170 INFO    ] ================================================
[2026-06-19 19:12:39,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:12:39
[2026-06-19 19:12:40,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:12:40,788.788 INFO    ] Initializing speech engine...
[2026-06-19 19:12:40,796.796 INFO    ] 2026-06-19 19:12:40
[2026-06-19 19:12:41,094.094 INFO    ] 2026-06-19 19:12:41
[2026-06-19 19:12:41,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:12:41,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:12:41,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:12:41,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:12:41,641.641 INFO    ] time= 19/06/2026 19:12:41
[2026-06-19 19:12:41,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:12:41,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:12:41,793.793 INFO    ] No existing commands found in stream
[2026-06-19 19:12:46,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:12:46,814.814 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 19:12:49,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:12:49,559.559 INFO    ] Checking for system updates...
[2026-06-19 19:12:49,597.597 INFO    ] 200
[2026-06-19 19:12:49,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:49,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:12:49,656.656 INFO    ] No update needed
[2026-06-19 19:12:49,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 19:12:49,698.698 INFO    ] 200
[2026-06-19 19:12:49,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:12:49,743.743 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:12:49,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:12:49,781.781 INFO    ] No camera update needed
[2026-06-19 19:12:49,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:12:49,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:12:49,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:12:49,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:12:51,840.840 INFO    ] ================================================
[2026-06-19 19:12:51,854.854 INFO    ] Launching Daemon at Fri Jun 19 19:12:51 IST 2026
[2026-06-19 19:12:51,865.865 INFO    ] ================================================
[2026-06-19 19:12:52,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:12:52
[2026-06-19 19:12:53,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:12:53,308.308 INFO    ] Initializing speech engine...
[2026-06-19 19:12:53,317.317 INFO    ] 2026-06-19 19:12:53
[2026-06-19 19:12:53,612.612 INFO    ] 2026-06-19 19:12:53
[2026-06-19 19:12:53,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:12:53,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:12:53,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:12:53,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:12:53,991.991 INFO    ] time= 19/06/2026 19:12:53
[2026-06-19 19:12:54,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:12:54,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:12:54,118.118 INFO    ] No existing commands found in stream
[2026-06-19 19:12:59,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:12:59,136.136 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 19:13:00,612.612 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:13:00,615.615 INFO    ] Checking for system updates...
[2026-06-19 19:13:00,651.651 INFO    ] 200
[2026-06-19 19:13:00,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:00,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:13:00,710.710 INFO    ] No update needed
[2026-06-19 19:13:00,713.713 INFO    ] Checking for camera pi updates...
[2026-06-19 19:13:00,746.746 INFO    ] 200
[2026-06-19 19:13:00,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:00,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:13:00,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:13:00,933.933 INFO    ] No camera update needed
[2026-06-19 19:13:00,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:13:00,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:13:00,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:13:00,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:13:02,988.988 INFO    ] ================================================
[2026-06-19 19:13:03,011.011 INFO    ] Launching Daemon at Fri Jun 19 19:13:02 IST 2026
[2026-06-19 19:13:03,022.022 INFO    ] ================================================
[2026-06-19 19:13:03,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:13:03
[2026-06-19 19:13:04,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:13:04,626.626 INFO    ] Initializing speech engine...
[2026-06-19 19:13:04,639.639 INFO    ] 2026-06-19 19:13:04
[2026-06-19 19:13:04,913.913 INFO    ] 2026-06-19 19:13:04
[2026-06-19 19:13:04,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:13:05,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:13:05,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:13:05,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:13:05,366.366 INFO    ] time= 19/06/2026 19:13:05
[2026-06-19 19:13:05,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:13:05,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:13:05,566.566 INFO    ] No existing commands found in stream
[2026-06-19 19:13:10,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:13:10,591.591 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 19:13:12,867.867 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:13:12,870.870 INFO    ] Checking for system updates...
[2026-06-19 19:13:12,909.909 INFO    ] 200
[2026-06-19 19:13:12,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:12,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:13:12,971.971 INFO    ] No update needed
[2026-06-19 19:13:12,973.973 INFO    ] Checking for camera pi updates...
[2026-06-19 19:13:13,008.008 INFO    ] 200
[2026-06-19 19:13:13,011.011 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:13,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:13:13,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:13:13,098.098 INFO    ] No camera update needed
[2026-06-19 19:13:13,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:13:13,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:13:13,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:13:13,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:13:15,153.153 INFO    ] ================================================
[2026-06-19 19:13:15,168.168 INFO    ] Launching Daemon at Fri Jun 19 19:13:15 IST 2026
[2026-06-19 19:13:15,179.179 INFO    ] ================================================
[2026-06-19 19:13:15,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:13:15
[2026-06-19 19:13:16,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:13:16,756.756 INFO    ] Initializing speech engine...
[2026-06-19 19:13:16,765.765 INFO    ] 2026-06-19 19:13:16
[2026-06-19 19:13:17,053.053 INFO    ] 2026-06-19 19:13:17
[2026-06-19 19:13:17,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:13:17,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:13:17,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:13:17,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:13:17,599.599 INFO    ] time= 19/06/2026 19:13:17
[2026-06-19 19:13:17,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:13:17,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:13:17,761.761 INFO    ] No existing commands found in stream
[2026-06-19 19:13:22,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:13:22,777.777 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 19:13:26,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:13:26,728.728 INFO    ] Checking for system updates...
[2026-06-19 19:13:26,765.765 INFO    ] 200
[2026-06-19 19:13:26,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:26,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:13:26,824.824 INFO    ] No update needed
[2026-06-19 19:13:26,827.827 INFO    ] Checking for camera pi updates...
[2026-06-19 19:13:26,864.864 INFO    ] 200
[2026-06-19 19:13:26,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:26,909.909 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:13:26,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:13:26,960.960 INFO    ] No camera update needed
[2026-06-19 19:13:26,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:13:26,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:13:26,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:13:26,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:13:29,018.018 INFO    ] ================================================
[2026-06-19 19:13:29,033.033 INFO    ] Launching Daemon at Fri Jun 19 19:13:29 IST 2026
[2026-06-19 19:13:29,043.043 INFO    ] ================================================
[2026-06-19 19:13:29,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:13:29
[2026-06-19 19:13:30,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:13:30,498.498 INFO    ] Initializing speech engine...
[2026-06-19 19:13:30,508.508 INFO    ] 2026-06-19 19:13:30
[2026-06-19 19:13:30,759.759 INFO    ] 2026-06-19 19:13:30
[2026-06-19 19:13:30,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:13:31,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:13:31,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:13:31,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:13:31,234.234 INFO    ] time= 19/06/2026 19:13:31
[2026-06-19 19:13:31,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:13:31,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:13:31,380.380 INFO    ] No existing commands found in stream
[2026-06-19 19:13:36,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:13:36,395.395 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 19:13:39,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:13:39,341.341 INFO    ] Checking for system updates...
[2026-06-19 19:13:39,378.378 INFO    ] 200
[2026-06-19 19:13:39,380.380 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:39,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:13:39,436.436 INFO    ] No update needed
[2026-06-19 19:13:39,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 19:13:39,473.473 INFO    ] 200
[2026-06-19 19:13:39,476.476 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:39,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:13:39,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:13:39,571.571 INFO    ] No camera update needed
[2026-06-19 19:13:39,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:13:39,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:13:39,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:13:39,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:13:41,629.629 INFO    ] ================================================
[2026-06-19 19:13:41,644.644 INFO    ] Launching Daemon at Fri Jun 19 19:13:41 IST 2026
[2026-06-19 19:13:41,654.654 INFO    ] ================================================
[2026-06-19 19:13:42,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:13:42
[2026-06-19 19:13:42,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:13:43,103.103 INFO    ] Initializing speech engine...
[2026-06-19 19:13:43,116.116 INFO    ] 2026-06-19 19:13:43
[2026-06-19 19:13:43,392.392 INFO    ] 2026-06-19 19:13:43
[2026-06-19 19:13:43,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:13:43,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:13:43,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:13:43,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:13:43,861.861 INFO    ] time= 19/06/2026 19:13:43
[2026-06-19 19:13:43,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:13:43,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:13:44,088.088 INFO    ] No existing commands found in stream
[2026-06-19 19:13:49,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:13:49,117.117 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-19 19:13:52,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:13:52,736.736 INFO    ] Checking for system updates...
[2026-06-19 19:13:52,776.776 INFO    ] 200
[2026-06-19 19:13:52,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:52,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:13:52,841.841 INFO    ] No update needed
[2026-06-19 19:13:52,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 19:13:52,882.882 INFO    ] 200
[2026-06-19 19:13:52,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:13:52,933.933 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:13:52,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:13:52,980.980 INFO    ] No camera update needed
[2026-06-19 19:13:52,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:13:52,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:13:52,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:13:52,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:13:55,036.036 INFO    ] ================================================
[2026-06-19 19:13:55,052.052 INFO    ] Launching Daemon at Fri Jun 19 19:13:55 IST 2026
[2026-06-19 19:13:55,063.063 INFO    ] ================================================
[2026-06-19 19:13:55,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:13:55
[2026-06-19 19:13:56,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:13:56,513.513 INFO    ] Initializing speech engine...
[2026-06-19 19:13:56,522.522 INFO    ] 2026-06-19 19:13:56
[2026-06-19 19:13:56,788.788 INFO    ] 2026-06-19 19:13:56
[2026-06-19 19:13:56,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:13:57,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:13:57,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:13:57,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:13:57,270.270 INFO    ] time= 19/06/2026 19:13:57
[2026-06-19 19:13:57,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:13:57,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:13:57,467.467 INFO    ] No existing commands found in stream
[2026-06-19 19:14:02,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:14:02,482.482 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 19:14:05,414.414 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:14:05,416.416 INFO    ] Checking for system updates...
[2026-06-19 19:14:05,452.452 INFO    ] 200
[2026-06-19 19:14:05,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:05,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:14:05,509.509 INFO    ] No update needed
[2026-06-19 19:14:05,511.511 INFO    ] Checking for camera pi updates...
[2026-06-19 19:14:05,545.545 INFO    ] 200
[2026-06-19 19:14:05,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:05,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:14:05,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:14:05,653.653 INFO    ] No camera update needed
[2026-06-19 19:14:05,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:14:05,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:14:05,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:14:05,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:14:07,709.709 INFO    ] ================================================
[2026-06-19 19:14:07,724.724 INFO    ] Launching Daemon at Fri Jun 19 19:14:07 IST 2026
[2026-06-19 19:14:07,735.735 INFO    ] ================================================
[2026-06-19 19:14:08,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:14:08
[2026-06-19 19:14:09,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:14:09,349.349 INFO    ] Initializing speech engine...
[2026-06-19 19:14:09,356.356 INFO    ] 2026-06-19 19:14:09
[2026-06-19 19:14:09,644.644 INFO    ] 2026-06-19 19:14:09
[2026-06-19 19:14:09,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:14:09,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:14:09,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:14:10,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:14:10,179.179 INFO    ] time= 19/06/2026 19:14:10
[2026-06-19 19:14:10,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:14:10,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:14:10,320.320 INFO    ] No existing commands found in stream
[2026-06-19 19:14:15,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:14:15,347.347 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 19:14:16,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:14:16,458.458 INFO    ] Checking for system updates...
[2026-06-19 19:14:16,495.495 INFO    ] 200
[2026-06-19 19:14:16,498.498 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:16,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:14:16,554.554 INFO    ] No update needed
[2026-06-19 19:14:16,557.557 INFO    ] Checking for camera pi updates...
[2026-06-19 19:14:16,592.592 INFO    ] 200
[2026-06-19 19:14:16,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:16,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:14:16,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:14:16,683.683 INFO    ] No camera update needed
[2026-06-19 19:14:16,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:14:16,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:14:16,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:14:16,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:14:18,742.742 INFO    ] ================================================
[2026-06-19 19:14:18,758.758 INFO    ] Launching Daemon at Fri Jun 19 19:14:18 IST 2026
[2026-06-19 19:14:18,770.770 INFO    ] ================================================
[2026-06-19 19:14:19,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:14:19
[2026-06-19 19:14:19,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:14:20,183.183 INFO    ] Initializing speech engine...
[2026-06-19 19:14:20,203.203 INFO    ] 2026-06-19 19:14:20
[2026-06-19 19:14:20,452.452 INFO    ] 2026-06-19 19:14:20
[2026-06-19 19:14:20,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:14:20,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:14:20,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:14:20,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:14:20,829.829 INFO    ] time= 19/06/2026 19:14:20
[2026-06-19 19:14:20,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:14:20,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:14:20,993.993 INFO    ] No existing commands found in stream
[2026-06-19 19:14:26,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:14:26,021.021 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 19:14:29,446.446 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:14:29,449.449 INFO    ] Checking for system updates...
[2026-06-19 19:14:29,485.485 INFO    ] 200
[2026-06-19 19:14:29,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:29,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:14:29,542.542 INFO    ] No update needed
[2026-06-19 19:14:29,544.544 INFO    ] Checking for camera pi updates...
[2026-06-19 19:14:29,578.578 INFO    ] 200
[2026-06-19 19:14:29,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:29,624.624 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:14:29,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:14:29,670.670 INFO    ] No camera update needed
[2026-06-19 19:14:29,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:14:29,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:14:29,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:14:29,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:14:31,729.729 INFO    ] ================================================
[2026-06-19 19:14:31,746.746 INFO    ] Launching Daemon at Fri Jun 19 19:14:31 IST 2026
[2026-06-19 19:14:31,759.759 INFO    ] ================================================
[2026-06-19 19:14:32,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:14:32
[2026-06-19 19:14:32,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:14:33,251.251 INFO    ] Initializing speech engine...
[2026-06-19 19:14:33,271.271 INFO    ] 2026-06-19 19:14:33
[2026-06-19 19:14:33,538.538 INFO    ] 2026-06-19 19:14:33
[2026-06-19 19:14:33,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:14:33,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:14:33,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:14:34,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:14:34,110.110 INFO    ] time= 19/06/2026 19:14:34
[2026-06-19 19:14:34,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:14:34,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:14:34,262.262 INFO    ] No existing commands found in stream
[2026-06-19 19:14:39,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:14:39,291.291 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 19:14:40,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:14:40,769.769 INFO    ] Checking for system updates...
[2026-06-19 19:14:40,806.806 INFO    ] 200
[2026-06-19 19:14:40,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:40,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:14:40,864.864 INFO    ] No update needed
[2026-06-19 19:14:40,867.867 INFO    ] Checking for camera pi updates...
[2026-06-19 19:14:40,901.901 INFO    ] 200
[2026-06-19 19:14:40,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:40,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:14:40,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:14:40,994.994 INFO    ] No camera update needed
[2026-06-19 19:14:40,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:14:40,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:14:41,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:14:41,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:14:43,049.049 INFO    ] ================================================
[2026-06-19 19:14:43,065.065 INFO    ] Launching Daemon at Fri Jun 19 19:14:43 IST 2026
[2026-06-19 19:14:43,077.077 INFO    ] ================================================
[2026-06-19 19:14:43,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:14:43
[2026-06-19 19:14:44,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:14:44,622.622 INFO    ] Initializing speech engine...
[2026-06-19 19:14:44,631.631 INFO    ] 2026-06-19 19:14:44
[2026-06-19 19:14:44,920.920 INFO    ] 2026-06-19 19:14:44
[2026-06-19 19:14:44,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:14:45,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:14:45,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:14:45,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:14:45,409.409 INFO    ] time= 19/06/2026 19:14:45
[2026-06-19 19:14:45,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:14:45,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:14:45,617.617 INFO    ] No existing commands found in stream
[2026-06-19 19:14:50,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:14:50,644.644 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 19:14:51,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:14:51,196.196 INFO    ] Checking for system updates...
[2026-06-19 19:14:51,233.233 INFO    ] 200
[2026-06-19 19:14:51,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:51,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:14:51,299.299 INFO    ] No update needed
[2026-06-19 19:14:51,302.302 INFO    ] Checking for camera pi updates...
[2026-06-19 19:14:51,337.337 INFO    ] 200
[2026-06-19 19:14:51,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:14:51,381.381 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:14:51,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:14:51,429.429 INFO    ] No camera update needed
[2026-06-19 19:14:51,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:14:51,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:14:51,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:14:51,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:14:53,489.489 INFO    ] ================================================
[2026-06-19 19:14:53,503.503 INFO    ] Launching Daemon at Fri Jun 19 19:14:53 IST 2026
[2026-06-19 19:14:53,514.514 INFO    ] ================================================
[2026-06-19 19:14:54,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:14:54
[2026-06-19 19:14:54,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:14:55,112.112 INFO    ] Initializing speech engine...
[2026-06-19 19:14:55,119.119 INFO    ] 2026-06-19 19:14:55
[2026-06-19 19:14:55,389.389 INFO    ] 2026-06-19 19:14:55
[2026-06-19 19:14:55,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:14:55,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:14:55,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:14:55,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:14:55,871.871 INFO    ] time= 19/06/2026 19:14:55
[2026-06-19 19:14:55,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:14:55,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:14:56,021.021 INFO    ] No existing commands found in stream
[2026-06-19 19:15:01,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:15:01,040.040 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 19:15:03,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:15:03,122.122 INFO    ] Checking for system updates...
[2026-06-19 19:15:03,165.165 INFO    ] 200
[2026-06-19 19:15:03,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:03,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:15:03,270.270 INFO    ] No update needed
[2026-06-19 19:15:03,273.273 INFO    ] Checking for camera pi updates...
[2026-06-19 19:15:03,318.318 INFO    ] 200
[2026-06-19 19:15:03,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:03,369.369 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:15:03,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:15:03,403.403 INFO    ] No camera update needed
[2026-06-19 19:15:03,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:15:03,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:15:03,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:15:03,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:15:05,459.459 INFO    ] ================================================
[2026-06-19 19:15:05,474.474 INFO    ] Launching Daemon at Fri Jun 19 19:15:05 IST 2026
[2026-06-19 19:15:05,485.485 INFO    ] ================================================
[2026-06-19 19:15:06,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:15:06
[2026-06-19 19:15:06,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:15:07,015.015 INFO    ] Initializing speech engine...
[2026-06-19 19:15:07,024.024 INFO    ] 2026-06-19 19:15:07
[2026-06-19 19:15:07,298.298 INFO    ] 2026-06-19 19:15:07
[2026-06-19 19:15:07,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:15:07,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:15:07,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:15:07,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:15:07,759.759 INFO    ] time= 19/06/2026 19:15:07
[2026-06-19 19:15:07,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:15:07,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:15:07,931.931 INFO    ] No existing commands found in stream
[2026-06-19 19:15:12,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:15:12,946.946 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 19:15:14,774.774 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:15:14,777.777 INFO    ] Checking for system updates...
[2026-06-19 19:15:14,812.812 INFO    ] 200
[2026-06-19 19:15:14,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:14,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:15:14,877.877 INFO    ] No update needed
[2026-06-19 19:15:14,880.880 INFO    ] Checking for camera pi updates...
[2026-06-19 19:15:14,915.915 INFO    ] 200
[2026-06-19 19:15:14,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:14,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:15:15,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:15:15,005.005 INFO    ] No camera update needed
[2026-06-19 19:15:15,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:15:15,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:15:15,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:15:15,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:15:17,066.066 INFO    ] ================================================
[2026-06-19 19:15:17,081.081 INFO    ] Launching Daemon at Fri Jun 19 19:15:17 IST 2026
[2026-06-19 19:15:17,092.092 INFO    ] ================================================
[2026-06-19 19:15:17,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:15:17
[2026-06-19 19:15:18,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:15:18,535.535 INFO    ] Initializing speech engine...
[2026-06-19 19:15:18,548.548 INFO    ] 2026-06-19 19:15:18
[2026-06-19 19:15:18,813.813 INFO    ] 2026-06-19 19:15:18
[2026-06-19 19:15:18,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:15:19,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:15:19,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:15:19,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:15:19,198.198 INFO    ] time= 19/06/2026 19:15:19
[2026-06-19 19:15:19,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:15:19,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:15:19,375.375 INFO    ] No existing commands found in stream
[2026-06-19 19:15:24,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:15:24,410.410 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 19:15:26,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:15:26,835.835 INFO    ] Checking for system updates...
[2026-06-19 19:15:26,872.872 INFO    ] 200
[2026-06-19 19:15:26,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:26,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:15:26,933.933 INFO    ] No update needed
[2026-06-19 19:15:26,936.936 INFO    ] Checking for camera pi updates...
[2026-06-19 19:15:26,972.972 INFO    ] 200
[2026-06-19 19:15:26,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:27,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:15:27,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:15:27,083.083 INFO    ] No camera update needed
[2026-06-19 19:15:27,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:15:27,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:15:27,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:15:27,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:15:29,143.143 INFO    ] ================================================
[2026-06-19 19:15:29,158.158 INFO    ] Launching Daemon at Fri Jun 19 19:15:29 IST 2026
[2026-06-19 19:15:29,169.169 INFO    ] ================================================
[2026-06-19 19:15:29,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:15:29
[2026-06-19 19:15:30,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:15:30,785.785 INFO    ] Initializing speech engine...
[2026-06-19 19:15:30,799.799 INFO    ] 2026-06-19 19:15:30
[2026-06-19 19:15:31,082.082 INFO    ] 2026-06-19 19:15:31
[2026-06-19 19:15:31,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:15:31,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:15:31,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:15:31,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:15:31,533.533 INFO    ] time= 19/06/2026 19:15:31
[2026-06-19 19:15:31,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:15:31,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:15:31,734.734 INFO    ] No existing commands found in stream
[2026-06-19 19:15:36,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:15:36,750.750 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 19:15:37,649.649 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:15:37,652.652 INFO    ] Checking for system updates...
[2026-06-19 19:15:37,697.697 INFO    ] 200
[2026-06-19 19:15:37,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:37,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:15:37,777.777 INFO    ] No update needed
[2026-06-19 19:15:37,780.780 INFO    ] Checking for camera pi updates...
[2026-06-19 19:15:37,815.815 INFO    ] 200
[2026-06-19 19:15:37,818.818 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:37,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:15:37,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:15:37,913.913 INFO    ] No camera update needed
[2026-06-19 19:15:37,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:15:37,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:15:37,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:15:37,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:15:39,969.969 INFO    ] ================================================
[2026-06-19 19:15:39,984.984 INFO    ] Launching Daemon at Fri Jun 19 19:15:39 IST 2026
[2026-06-19 19:15:39,994.994 INFO    ] ================================================
[2026-06-19 19:15:40,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:15:40
[2026-06-19 19:15:41,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:15:41,598.598 INFO    ] Initializing speech engine...
[2026-06-19 19:15:41,609.609 INFO    ] 2026-06-19 19:15:41
[2026-06-19 19:15:41,885.885 INFO    ] 2026-06-19 19:15:41
[2026-06-19 19:15:41,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:15:42,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:15:42,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:15:42,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:15:42,389.389 INFO    ] time= 19/06/2026 19:15:42
[2026-06-19 19:15:42,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:15:42,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:15:42,589.589 INFO    ] No existing commands found in stream
[2026-06-19 19:15:47,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:15:47,601.601 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 19:15:49,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:15:49,667.667 INFO    ] Checking for system updates...
[2026-06-19 19:15:49,704.704 INFO    ] 200
[2026-06-19 19:15:49,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:49,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:15:49,763.763 INFO    ] No update needed
[2026-06-19 19:15:49,766.766 INFO    ] Checking for camera pi updates...
[2026-06-19 19:15:49,802.802 INFO    ] 200
[2026-06-19 19:15:49,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:15:49,848.848 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:15:49,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:15:49,883.883 INFO    ] No camera update needed
[2026-06-19 19:15:49,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:15:49,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:15:49,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:15:49,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:15:51,941.941 INFO    ] ================================================
[2026-06-19 19:15:51,956.956 INFO    ] Launching Daemon at Fri Jun 19 19:15:51 IST 2026
[2026-06-19 19:15:51,966.966 INFO    ] ================================================
[2026-06-19 19:15:52,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:15:52
[2026-06-19 19:15:53,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:15:53,582.582 INFO    ] Initializing speech engine...
[2026-06-19 19:15:53,594.594 INFO    ] 2026-06-19 19:15:53
[2026-06-19 19:15:53,861.861 INFO    ] 2026-06-19 19:15:53
[2026-06-19 19:15:53,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:15:54,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:15:54,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:15:54,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:15:54,316.316 INFO    ] time= 19/06/2026 19:15:54
[2026-06-19 19:15:54,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:15:54,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:15:54,563.563 INFO    ] No existing commands found in stream
[2026-06-19 19:15:59,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:15:59,589.589 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 19:16:00,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:16:00,475.475 INFO    ] Checking for system updates...
[2026-06-19 19:16:00,514.514 INFO    ] 200
[2026-06-19 19:16:00,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:00,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:16:00,571.571 INFO    ] No update needed
[2026-06-19 19:16:00,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 19:16:00,608.608 INFO    ] 200
[2026-06-19 19:16:00,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:00,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:16:00,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:16:00,705.705 INFO    ] No camera update needed
[2026-06-19 19:16:00,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:16:00,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:16:00,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:16:00,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:16:02,787.787 INFO    ] ================================================
[2026-06-19 19:16:02,811.811 INFO    ] Launching Daemon at Fri Jun 19 19:16:02 IST 2026
[2026-06-19 19:16:02,835.835 INFO    ] ================================================
[2026-06-19 19:16:03,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:16:03
[2026-06-19 19:16:04,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:16:04,373.373 INFO    ] Initializing speech engine...
[2026-06-19 19:16:04,388.388 INFO    ] 2026-06-19 19:16:04
[2026-06-19 19:16:04,658.658 INFO    ] 2026-06-19 19:16:04
[2026-06-19 19:16:04,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:16:04,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:16:04,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:16:05,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:16:05,032.032 INFO    ] time= 19/06/2026 19:16:05
[2026-06-19 19:16:05,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:16:05,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:16:05,227.227 INFO    ] No existing commands found in stream
[2026-06-19 19:16:10,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:16:10,248.248 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 19:16:10,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:16:10,825.825 INFO    ] Checking for system updates...
[2026-06-19 19:16:10,865.865 INFO    ] 200
[2026-06-19 19:16:10,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:10,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:16:10,924.924 INFO    ] No update needed
[2026-06-19 19:16:10,927.927 INFO    ] Checking for camera pi updates...
[2026-06-19 19:16:10,966.966 INFO    ] 200
[2026-06-19 19:16:10,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:11,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:16:11,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:16:11,065.065 INFO    ] No camera update needed
[2026-06-19 19:16:11,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:16:11,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:16:11,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:16:11,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:16:13,127.127 INFO    ] ================================================
[2026-06-19 19:16:13,144.144 INFO    ] Launching Daemon at Fri Jun 19 19:16:13 IST 2026
[2026-06-19 19:16:13,155.155 INFO    ] ================================================
[2026-06-19 19:16:13,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:16:13
[2026-06-19 19:16:14,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:16:14,644.644 INFO    ] Initializing speech engine...
[2026-06-19 19:16:14,655.655 INFO    ] 2026-06-19 19:16:14
[2026-06-19 19:16:14,924.924 INFO    ] 2026-06-19 19:16:14
[2026-06-19 19:16:14,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:16:15,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:16:15,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:16:15,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:16:15,444.444 INFO    ] time= 19/06/2026 19:16:15
[2026-06-19 19:16:15,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:16:15,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:16:15,569.569 INFO    ] No existing commands found in stream
[2026-06-19 19:16:20,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:16:20,583.583 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 19:16:24,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:16:24,558.558 INFO    ] Checking for system updates...
[2026-06-19 19:16:24,596.596 INFO    ] 200
[2026-06-19 19:16:24,599.599 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:24,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:16:24,657.657 INFO    ] No update needed
[2026-06-19 19:16:24,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 19:16:24,704.704 INFO    ] 200
[2026-06-19 19:16:24,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:24,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:16:24,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:16:24,800.800 INFO    ] No camera update needed
[2026-06-19 19:16:24,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:16:24,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:16:24,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:16:24,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:16:26,859.859 INFO    ] ================================================
[2026-06-19 19:16:26,874.874 INFO    ] Launching Daemon at Fri Jun 19 19:16:26 IST 2026
[2026-06-19 19:16:26,885.885 INFO    ] ================================================
[2026-06-19 19:16:27,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:16:27
[2026-06-19 19:16:28,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:16:28,322.322 INFO    ] Initializing speech engine...
[2026-06-19 19:16:28,345.345 INFO    ] 2026-06-19 19:16:28
[2026-06-19 19:16:28,602.602 INFO    ] 2026-06-19 19:16:28
[2026-06-19 19:16:28,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:16:28,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:16:28,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:16:29,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:16:29,098.098 INFO    ] time= 19/06/2026 19:16:29
[2026-06-19 19:16:29,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:16:29,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:16:29,313.313 INFO    ] No existing commands found in stream
[2026-06-19 19:16:34,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:16:34,339.339 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 19:16:38,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:16:38,566.566 INFO    ] Checking for system updates...
[2026-06-19 19:16:38,602.602 INFO    ] 200
[2026-06-19 19:16:38,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:38,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:16:38,684.684 INFO    ] No update needed
[2026-06-19 19:16:38,686.686 INFO    ] Checking for camera pi updates...
[2026-06-19 19:16:38,721.721 INFO    ] 200
[2026-06-19 19:16:38,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:38,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:16:38,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:16:38,812.812 INFO    ] No camera update needed
[2026-06-19 19:16:38,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:16:38,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:16:38,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:16:38,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:16:40,868.868 INFO    ] ================================================
[2026-06-19 19:16:40,883.883 INFO    ] Launching Daemon at Fri Jun 19 19:16:40 IST 2026
[2026-06-19 19:16:40,894.894 INFO    ] ================================================
[2026-06-19 19:16:41,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:16:41
[2026-06-19 19:16:42,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:16:42,295.295 INFO    ] Initializing speech engine...
[2026-06-19 19:16:42,310.310 INFO    ] 2026-06-19 19:16:42
[2026-06-19 19:16:42,572.572 INFO    ] 2026-06-19 19:16:42
[2026-06-19 19:16:42,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:16:42,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:16:42,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:16:43,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:16:43,031.031 INFO    ] time= 19/06/2026 19:16:43
[2026-06-19 19:16:43,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:16:43,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:16:43,272.272 INFO    ] No existing commands found in stream
[2026-06-19 19:16:48,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:16:48,300.300 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 19:16:52,698.698 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:16:52,701.701 INFO    ] Checking for system updates...
[2026-06-19 19:16:52,739.739 INFO    ] 200
[2026-06-19 19:16:52,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:52,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:16:52,806.806 INFO    ] No update needed
[2026-06-19 19:16:52,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 19:16:52,843.843 INFO    ] 200
[2026-06-19 19:16:52,845.845 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:16:52,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:16:52,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:16:52,932.932 INFO    ] No camera update needed
[2026-06-19 19:16:52,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:16:52,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:16:52,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:16:52,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:16:55,995.995 INFO    ] ================================================
[2026-06-19 19:16:55,010.010 INFO    ] Launching Daemon at Fri Jun 19 19:16:55 IST 2026
[2026-06-19 19:16:55,021.021 INFO    ] ================================================
[2026-06-19 19:16:55,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:16:55
[2026-06-19 19:16:56,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:16:56,456.456 INFO    ] Initializing speech engine...
[2026-06-19 19:16:56,461.461 INFO    ] 2026-06-19 19:16:56
[2026-06-19 19:16:56,768.768 INFO    ] 2026-06-19 19:16:56
[2026-06-19 19:16:56,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:16:56,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:16:56,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:16:57,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:16:57,159.159 INFO    ] time= 19/06/2026 19:16:57
[2026-06-19 19:16:57,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:16:57,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:16:57,292.292 INFO    ] No existing commands found in stream
[2026-06-19 19:17:02,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:17:02,310.310 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 19:17:05,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:17:05,641.641 INFO    ] Checking for system updates...
[2026-06-19 19:17:05,678.678 INFO    ] 200
[2026-06-19 19:17:05,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:05,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:17:05,736.736 INFO    ] No update needed
[2026-06-19 19:17:05,738.738 INFO    ] Checking for camera pi updates...
[2026-06-19 19:17:05,776.776 INFO    ] 200
[2026-06-19 19:17:05,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:05,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:17:05,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:17:05,965.965 INFO    ] No camera update needed
[2026-06-19 19:17:05,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:17:05,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:17:05,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:17:05,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:17:08,022.022 INFO    ] ================================================
[2026-06-19 19:17:08,037.037 INFO    ] Launching Daemon at Fri Jun 19 19:17:08 IST 2026
[2026-06-19 19:17:08,048.048 INFO    ] ================================================
[2026-06-19 19:17:08,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:17:08
[2026-06-19 19:17:09,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:17:09,505.505 INFO    ] Initializing speech engine...
[2026-06-19 19:17:09,514.514 INFO    ] 2026-06-19 19:17:09
[2026-06-19 19:17:09,816.816 INFO    ] 2026-06-19 19:17:09
[2026-06-19 19:17:09,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:17:10,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:17:10,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:17:10,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:17:10,206.206 INFO    ] time= 19/06/2026 19:17:10
[2026-06-19 19:17:10,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:17:10,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:17:10,334.334 INFO    ] No existing commands found in stream
[2026-06-19 19:17:15,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:17:15,350.350 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 19:17:17,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:17:17,289.289 INFO    ] Checking for system updates...
[2026-06-19 19:17:17,329.329 INFO    ] 200
[2026-06-19 19:17:17,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:17,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:17:17,389.389 INFO    ] No update needed
[2026-06-19 19:17:17,392.392 INFO    ] Checking for camera pi updates...
[2026-06-19 19:17:17,426.426 INFO    ] 200
[2026-06-19 19:17:17,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:17,474.474 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:17:17,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:17:17,527.527 INFO    ] No camera update needed
[2026-06-19 19:17:17,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:17:17,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:17:17,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:17:17,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:17:19,583.583 INFO    ] ================================================
[2026-06-19 19:17:19,599.599 INFO    ] Launching Daemon at Fri Jun 19 19:17:19 IST 2026
[2026-06-19 19:17:19,610.610 INFO    ] ================================================
[2026-06-19 19:17:20,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:17:20
[2026-06-19 19:17:20,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:17:21,272.272 INFO    ] Initializing speech engine...
[2026-06-19 19:17:21,279.279 INFO    ] 2026-06-19 19:17:21
[2026-06-19 19:17:21,572.572 INFO    ] 2026-06-19 19:17:21
[2026-06-19 19:17:21,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:17:21,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:17:21,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:17:21,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:17:22,050.050 INFO    ] time= 19/06/2026 19:17:21
[2026-06-19 19:17:22,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:17:22,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:17:22,247.247 INFO    ] No existing commands found in stream
[2026-06-19 19:17:27,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:17:27,278.278 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 19:17:30,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:17:30,323.323 INFO    ] Checking for system updates...
[2026-06-19 19:17:30,361.361 INFO    ] 200
[2026-06-19 19:17:30,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:30,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:17:30,429.429 INFO    ] No update needed
[2026-06-19 19:17:30,432.432 INFO    ] Checking for camera pi updates...
[2026-06-19 19:17:30,471.471 INFO    ] 200
[2026-06-19 19:17:30,474.474 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:30,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:17:30,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:17:30,568.568 INFO    ] No camera update needed
[2026-06-19 19:17:30,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:17:30,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:17:30,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:17:30,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:17:32,632.632 INFO    ] ================================================
[2026-06-19 19:17:32,649.649 INFO    ] Launching Daemon at Fri Jun 19 19:17:32 IST 2026
[2026-06-19 19:17:32,662.662 INFO    ] ================================================
[2026-06-19 19:17:33,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:17:33
[2026-06-19 19:17:33,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:17:34,191.191 INFO    ] Initializing speech engine...
[2026-06-19 19:17:34,200.200 INFO    ] 2026-06-19 19:17:34
[2026-06-19 19:17:34,477.477 INFO    ] 2026-06-19 19:17:34
[2026-06-19 19:17:34,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:17:34,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:17:34,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:17:35,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:17:35,039.039 INFO    ] time= 19/06/2026 19:17:35
[2026-06-19 19:17:35,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:17:35,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:17:35,196.196 INFO    ] No existing commands found in stream
[2026-06-19 19:17:40,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:17:40,214.214 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 19:17:42,761.761 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:17:42,764.764 INFO    ] Checking for system updates...
[2026-06-19 19:17:42,802.802 INFO    ] 200
[2026-06-19 19:17:42,804.804 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:42,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:17:42,861.861 INFO    ] No update needed
[2026-06-19 19:17:42,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 19:17:42,901.901 INFO    ] 200
[2026-06-19 19:17:42,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:42,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:17:42,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:17:43,000.000 INFO    ] No camera update needed
[2026-06-19 19:17:43,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:17:43,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:17:43,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:17:43,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:17:45,059.059 INFO    ] ================================================
[2026-06-19 19:17:45,075.075 INFO    ] Launching Daemon at Fri Jun 19 19:17:45 IST 2026
[2026-06-19 19:17:45,086.086 INFO    ] ================================================
[2026-06-19 19:17:45,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:17:45
[2026-06-19 19:17:46,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:17:46,518.518 INFO    ] Initializing speech engine...
[2026-06-19 19:17:46,528.528 INFO    ] 2026-06-19 19:17:46
[2026-06-19 19:17:46,773.773 INFO    ] 2026-06-19 19:17:46
[2026-06-19 19:17:46,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:17:47,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:17:47,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:17:47,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:17:47,249.249 INFO    ] time= 19/06/2026 19:17:47
[2026-06-19 19:17:47,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:17:47,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:17:47,477.477 INFO    ] No existing commands found in stream
[2026-06-19 19:17:52,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:17:52,501.501 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 19:17:54,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:17:54,987.987 INFO    ] Checking for system updates...
[2026-06-19 19:17:55,026.026 INFO    ] 200
[2026-06-19 19:17:55,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:55,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:17:55,085.085 INFO    ] No update needed
[2026-06-19 19:17:55,088.088 INFO    ] Checking for camera pi updates...
[2026-06-19 19:17:55,123.123 INFO    ] 200
[2026-06-19 19:17:55,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:17:55,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:17:55,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:17:55,213.213 INFO    ] No camera update needed
[2026-06-19 19:17:55,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:17:55,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:17:55,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:17:55,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:17:57,273.273 INFO    ] ================================================
[2026-06-19 19:17:57,288.288 INFO    ] Launching Daemon at Fri Jun 19 19:17:57 IST 2026
[2026-06-19 19:17:57,299.299 INFO    ] ================================================
[2026-06-19 19:17:57,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:17:57
[2026-06-19 19:17:58,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:17:58,753.753 INFO    ] Initializing speech engine...
[2026-06-19 19:17:58,769.769 INFO    ] 2026-06-19 19:17:58
[2026-06-19 19:17:59,061.061 INFO    ] 2026-06-19 19:17:59
[2026-06-19 19:17:59,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:17:59,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:17:59,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:17:59,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:17:59,490.490 INFO    ] time= 19/06/2026 19:17:59
[2026-06-19 19:17:59,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:17:59,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:17:59,580.580 INFO    ] No existing commands found in stream
[2026-06-19 19:18:04,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:18:04,603.603 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 19:18:06,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:18:06,609.609 INFO    ] Checking for system updates...
[2026-06-19 19:18:06,645.645 INFO    ] 200
[2026-06-19 19:18:06,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:06,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:18:06,704.704 INFO    ] No update needed
[2026-06-19 19:18:06,707.707 INFO    ] Checking for camera pi updates...
[2026-06-19 19:18:06,743.743 INFO    ] 200
[2026-06-19 19:18:06,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:06,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:18:06,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:18:06,832.832 INFO    ] No camera update needed
[2026-06-19 19:18:06,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:18:06,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:18:06,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:18:06,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:18:08,888.888 INFO    ] ================================================
[2026-06-19 19:18:08,903.903 INFO    ] Launching Daemon at Fri Jun 19 19:18:08 IST 2026
[2026-06-19 19:18:08,914.914 INFO    ] ================================================
[2026-06-19 19:18:09,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:18:09
[2026-06-19 19:18:10,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:18:10,323.323 INFO    ] Initializing speech engine...
[2026-06-19 19:18:10,331.331 INFO    ] 2026-06-19 19:18:10
[2026-06-19 19:18:10,603.603 INFO    ] 2026-06-19 19:18:10
[2026-06-19 19:18:10,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:18:10,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:18:10,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:18:11,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:18:11,049.049 INFO    ] time= 19/06/2026 19:18:11
[2026-06-19 19:18:11,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:18:11,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:18:11,311.311 INFO    ] No existing commands found in stream
[2026-06-19 19:18:16,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:18:16,341.341 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 19:18:17,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:18:17,670.670 INFO    ] Checking for system updates...
[2026-06-19 19:18:17,706.706 INFO    ] 200
[2026-06-19 19:18:17,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:17,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:18:17,770.770 INFO    ] No update needed
[2026-06-19 19:18:17,772.772 INFO    ] Checking for camera pi updates...
[2026-06-19 19:18:17,806.806 INFO    ] 200
[2026-06-19 19:18:17,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:17,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:18:17,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:18:17,903.903 INFO    ] No camera update needed
[2026-06-19 19:18:17,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:18:17,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:18:17,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:18:17,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:18:19,961.961 INFO    ] ================================================
[2026-06-19 19:18:19,976.976 INFO    ] Launching Daemon at Fri Jun 19 19:18:19 IST 2026
[2026-06-19 19:18:19,987.987 INFO    ] ================================================
[2026-06-19 19:18:20,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:18:20
[2026-06-19 19:18:21,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:18:21,597.597 INFO    ] Initializing speech engine...
[2026-06-19 19:18:21,608.608 INFO    ] 2026-06-19 19:18:21
[2026-06-19 19:18:21,881.881 INFO    ] 2026-06-19 19:18:21
[2026-06-19 19:18:21,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:18:22,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:18:22,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:18:22,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:18:22,757.757 INFO    ] time= 19/06/2026 19:18:22
[2026-06-19 19:18:22,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:18:22,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:18:22,998.998 INFO    ] No existing commands found in stream
[2026-06-19 19:18:28,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:18:28,015.015 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 19:18:32,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:18:32,318.318 INFO    ] Checking for system updates...
[2026-06-19 19:18:32,360.360 INFO    ] 200
[2026-06-19 19:18:32,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:32,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:18:32,423.423 INFO    ] No update needed
[2026-06-19 19:18:32,426.426 INFO    ] Checking for camera pi updates...
[2026-06-19 19:18:32,462.462 INFO    ] 200
[2026-06-19 19:18:32,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:32,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:18:32,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:18:32,546.546 INFO    ] No camera update needed
[2026-06-19 19:18:32,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:18:32,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:18:32,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:18:32,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:18:34,605.605 INFO    ] ================================================
[2026-06-19 19:18:34,621.621 INFO    ] Launching Daemon at Fri Jun 19 19:18:34 IST 2026
[2026-06-19 19:18:34,632.632 INFO    ] ================================================
[2026-06-19 19:18:35,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:18:35
[2026-06-19 19:18:35,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:18:36,097.097 INFO    ] Initializing speech engine...
[2026-06-19 19:18:36,103.103 INFO    ] 2026-06-19 19:18:36
[2026-06-19 19:18:36,366.366 INFO    ] 2026-06-19 19:18:36
[2026-06-19 19:18:36,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:18:36,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:18:36,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:18:36,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:18:36,831.831 INFO    ] time= 19/06/2026 19:18:36
[2026-06-19 19:18:36,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:18:36,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:18:37,042.042 INFO    ] No existing commands found in stream
[2026-06-19 19:18:42,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:18:42,076.076 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-19 19:18:44,795.795 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:18:44,798.798 INFO    ] Checking for system updates...
[2026-06-19 19:18:44,833.833 INFO    ] 200
[2026-06-19 19:18:44,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:44,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:18:44,891.891 INFO    ] No update needed
[2026-06-19 19:18:44,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 19:18:44,930.930 INFO    ] 200
[2026-06-19 19:18:44,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:44,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:18:45,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:18:45,022.022 INFO    ] No camera update needed
[2026-06-19 19:18:45,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:18:45,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:18:45,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:18:45,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:18:47,079.079 INFO    ] ================================================
[2026-06-19 19:18:47,095.095 INFO    ] Launching Daemon at Fri Jun 19 19:18:47 IST 2026
[2026-06-19 19:18:47,106.106 INFO    ] ================================================
[2026-06-19 19:18:47,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:18:47
[2026-06-19 19:18:48,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:18:48,741.741 INFO    ] Initializing speech engine...
[2026-06-19 19:18:48,754.754 INFO    ] 2026-06-19 19:18:48
[2026-06-19 19:18:49,041.041 INFO    ] 2026-06-19 19:18:49
[2026-06-19 19:18:49,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:18:49,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:18:49,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:18:49,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:18:49,586.586 INFO    ] time= 19/06/2026 19:18:49
[2026-06-19 19:18:49,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:18:49,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:18:49,753.753 INFO    ] No existing commands found in stream
[2026-06-19 19:18:54,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:18:54,787.787 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 19:18:55,713.713 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:18:55,716.716 INFO    ] Checking for system updates...
[2026-06-19 19:18:55,754.754 INFO    ] 200
[2026-06-19 19:18:55,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:55,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:18:55,814.814 INFO    ] No update needed
[2026-06-19 19:18:55,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 19:18:55,855.855 INFO    ] 200
[2026-06-19 19:18:55,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:18:55,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:18:55,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:18:55,950.950 INFO    ] No camera update needed
[2026-06-19 19:18:55,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:18:55,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:18:55,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:18:55,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:18:58,010.010 INFO    ] ================================================
[2026-06-19 19:18:58,026.026 INFO    ] Launching Daemon at Fri Jun 19 19:18:58 IST 2026
[2026-06-19 19:18:58,038.038 INFO    ] ================================================
[2026-06-19 19:18:58,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:18:58
[2026-06-19 19:18:59,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:18:59,504.504 INFO    ] Initializing speech engine...
[2026-06-19 19:18:59,513.513 INFO    ] 2026-06-19 19:18:59
[2026-06-19 19:18:59,812.812 INFO    ] 2026-06-19 19:18:59
[2026-06-19 19:18:59,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:19:00,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:19:00,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:19:00,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:19:00,236.236 INFO    ] time= 19/06/2026 19:19:00
[2026-06-19 19:19:00,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:19:00,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:19:00,414.414 INFO    ] No existing commands found in stream
[2026-06-19 19:19:05,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:19:05,447.447 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 19:19:07,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:19:07,371.371 INFO    ] Checking for system updates...
[2026-06-19 19:19:07,406.406 INFO    ] 200
[2026-06-19 19:19:07,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:07,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:19:07,468.468 INFO    ] No update needed
[2026-06-19 19:19:07,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 19:19:07,508.508 INFO    ] 200
[2026-06-19 19:19:07,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:07,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:19:07,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:19:07,702.702 INFO    ] No camera update needed
[2026-06-19 19:19:07,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:19:07,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:19:07,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:19:07,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:19:09,757.757 INFO    ] ================================================
[2026-06-19 19:19:09,773.773 INFO    ] Launching Daemon at Fri Jun 19 19:19:09 IST 2026
[2026-06-19 19:19:09,784.784 INFO    ] ================================================
[2026-06-19 19:19:10,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:19:10
[2026-06-19 19:19:11,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:19:11,389.389 INFO    ] Initializing speech engine...
[2026-06-19 19:19:11,402.402 INFO    ] 2026-06-19 19:19:11
[2026-06-19 19:19:11,688.688 INFO    ] 2026-06-19 19:19:11
[2026-06-19 19:19:11,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:19:12,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:19:12,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:19:12,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:19:12,219.219 INFO    ] time= 19/06/2026 19:19:12
[2026-06-19 19:19:12,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:19:12,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:19:12,380.380 INFO    ] No existing commands found in stream
[2026-06-19 19:19:17,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:19:17,408.408 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 19:19:18,425.425 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:19:18,428.428 INFO    ] Checking for system updates...
[2026-06-19 19:19:18,464.464 INFO    ] 200
[2026-06-19 19:19:18,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:18,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:19:18,530.530 INFO    ] No update needed
[2026-06-19 19:19:18,532.532 INFO    ] Checking for camera pi updates...
[2026-06-19 19:19:18,566.566 INFO    ] 200
[2026-06-19 19:19:18,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:18,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:19:18,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:19:18,657.657 INFO    ] No camera update needed
[2026-06-19 19:19:18,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:19:18,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:19:18,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:19:18,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:19:20,721.721 INFO    ] ================================================
[2026-06-19 19:19:20,738.738 INFO    ] Launching Daemon at Fri Jun 19 19:19:20 IST 2026
[2026-06-19 19:19:20,749.749 INFO    ] ================================================
[2026-06-19 19:19:21,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:19:21
[2026-06-19 19:19:22,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:19:22,342.342 INFO    ] Initializing speech engine...
[2026-06-19 19:19:22,356.356 INFO    ] 2026-06-19 19:19:22
[2026-06-19 19:19:22,664.664 INFO    ] 2026-06-19 19:19:22
[2026-06-19 19:19:22,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:19:22,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:19:22,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:19:23,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:19:23,172.172 INFO    ] time= 19/06/2026 19:19:23
[2026-06-19 19:19:23,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:19:23,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:19:23,351.351 INFO    ] No existing commands found in stream
[2026-06-19 19:19:28,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:19:28,390.390 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 19:19:31,629.629 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:19:31,633.633 INFO    ] Checking for system updates...
[2026-06-19 19:19:31,687.687 INFO    ] 200
[2026-06-19 19:19:31,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:31,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:19:31,751.751 INFO    ] No update needed
[2026-06-19 19:19:31,754.754 INFO    ] Checking for camera pi updates...
[2026-06-19 19:19:31,796.796 INFO    ] 200
[2026-06-19 19:19:31,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:31,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:19:31,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:19:31,899.899 INFO    ] No camera update needed
[2026-06-19 19:19:31,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:19:31,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:19:31,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:19:31,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:19:33,958.958 INFO    ] ================================================
[2026-06-19 19:19:33,973.973 INFO    ] Launching Daemon at Fri Jun 19 19:19:33 IST 2026
[2026-06-19 19:19:33,984.984 INFO    ] ================================================
[2026-06-19 19:19:34,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:19:34
[2026-06-19 19:19:35,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:19:35,453.453 INFO    ] Initializing speech engine...
[2026-06-19 19:19:35,460.460 INFO    ] 2026-06-19 19:19:35
[2026-06-19 19:19:35,759.759 INFO    ] 2026-06-19 19:19:35
[2026-06-19 19:19:35,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:19:36,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:19:36,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:19:36,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:19:36,164.164 INFO    ] time= 19/06/2026 19:19:36
[2026-06-19 19:19:36,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:19:36,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:19:36,276.276 INFO    ] No existing commands found in stream
[2026-06-19 19:19:41,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:19:41,309.309 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 19:19:42,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:19:42,768.768 INFO    ] Checking for system updates...
[2026-06-19 19:19:42,808.808 INFO    ] 200
[2026-06-19 19:19:42,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:42,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:19:42,873.873 INFO    ] No update needed
[2026-06-19 19:19:42,876.876 INFO    ] Checking for camera pi updates...
[2026-06-19 19:19:42,911.911 INFO    ] 200
[2026-06-19 19:19:42,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:42,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:19:43,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:19:43,012.012 INFO    ] No camera update needed
[2026-06-19 19:19:43,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:19:43,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:19:43,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:19:43,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:19:45,067.067 INFO    ] ================================================
[2026-06-19 19:19:45,083.083 INFO    ] Launching Daemon at Fri Jun 19 19:19:45 IST 2026
[2026-06-19 19:19:45,094.094 INFO    ] ================================================
[2026-06-19 19:19:45,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:19:45
[2026-06-19 19:19:46,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:19:46,522.522 INFO    ] Initializing speech engine...
[2026-06-19 19:19:46,531.531 INFO    ] 2026-06-19 19:19:46
[2026-06-19 19:19:46,787.787 INFO    ] 2026-06-19 19:19:46
[2026-06-19 19:19:46,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:19:47,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:19:47,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:19:47,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:19:47,272.272 INFO    ] time= 19/06/2026 19:19:47
[2026-06-19 19:19:47,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:19:47,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:19:47,483.483 INFO    ] No existing commands found in stream
[2026-06-19 19:19:52,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:19:52,501.501 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 19:19:52,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:19:52,997.997 INFO    ] Checking for system updates...
[2026-06-19 19:19:53,038.038 INFO    ] 200
[2026-06-19 19:19:53,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:53,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:19:53,098.098 INFO    ] No update needed
[2026-06-19 19:19:53,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 19:19:53,134.134 INFO    ] 200
[2026-06-19 19:19:53,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:19:53,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:19:53,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:19:53,212.212 INFO    ] No camera update needed
[2026-06-19 19:19:53,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:19:53,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:19:53,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:19:53,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:19:55,268.268 INFO    ] ================================================
[2026-06-19 19:19:55,284.284 INFO    ] Launching Daemon at Fri Jun 19 19:19:55 IST 2026
[2026-06-19 19:19:55,295.295 INFO    ] ================================================
[2026-06-19 19:19:55,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:19:55
[2026-06-19 19:19:56,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:19:56,926.926 INFO    ] Initializing speech engine...
[2026-06-19 19:19:56,939.939 INFO    ] 2026-06-19 19:19:56
[2026-06-19 19:19:57,218.218 INFO    ] 2026-06-19 19:19:57
[2026-06-19 19:19:57,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:19:57,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:19:57,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:19:57,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:19:57,772.772 INFO    ] time= 19/06/2026 19:19:57
[2026-06-19 19:19:57,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:19:57,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:19:57,947.947 INFO    ] No existing commands found in stream
[2026-06-19 19:20:02,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:20:02,982.982 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 19:20:08,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:20:08,423.423 INFO    ] Checking for system updates...
[2026-06-19 19:20:08,460.460 INFO    ] 200
[2026-06-19 19:20:08,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:08,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:20:08,519.519 INFO    ] No update needed
[2026-06-19 19:20:08,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 19:20:08,560.560 INFO    ] 200
[2026-06-19 19:20:08,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:08,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:20:08,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:20:08,641.641 INFO    ] No camera update needed
[2026-06-19 19:20:08,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:20:08,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:20:08,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:20:08,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:20:10,697.697 INFO    ] ================================================
[2026-06-19 19:20:10,713.713 INFO    ] Launching Daemon at Fri Jun 19 19:20:10 IST 2026
[2026-06-19 19:20:10,724.724 INFO    ] ================================================
[2026-06-19 19:20:11,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:20:11
[2026-06-19 19:20:11,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:20:12,134.134 INFO    ] Initializing speech engine...
[2026-06-19 19:20:12,157.157 INFO    ] 2026-06-19 19:20:12
[2026-06-19 19:20:12,416.416 INFO    ] 2026-06-19 19:20:12
[2026-06-19 19:20:12,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:20:12,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:20:12,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:20:12,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:20:12,974.974 INFO    ] time= 19/06/2026 19:20:12
[2026-06-19 19:20:12,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:20:12,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:20:13,129.129 INFO    ] No existing commands found in stream
[2026-06-19 19:20:18,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:20:18,147.147 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 19:20:19,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:20:19,714.714 INFO    ] Checking for system updates...
[2026-06-19 19:20:19,750.750 INFO    ] 200
[2026-06-19 19:20:19,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:19,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:20:19,810.810 INFO    ] No update needed
[2026-06-19 19:20:19,812.812 INFO    ] Checking for camera pi updates...
[2026-06-19 19:20:19,850.850 INFO    ] 200
[2026-06-19 19:20:19,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:19,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:20:19,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:20:19,950.950 INFO    ] No camera update needed
[2026-06-19 19:20:19,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:20:19,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:20:19,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:20:19,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:20:22,007.007 INFO    ] ================================================
[2026-06-19 19:20:22,022.022 INFO    ] Launching Daemon at Fri Jun 19 19:20:22 IST 2026
[2026-06-19 19:20:22,033.033 INFO    ] ================================================
[2026-06-19 19:20:22,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:20:22
[2026-06-19 19:20:23,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:20:23,469.469 INFO    ] Initializing speech engine...
[2026-06-19 19:20:23,476.476 INFO    ] 2026-06-19 19:20:23
[2026-06-19 19:20:23,724.724 INFO    ] 2026-06-19 19:20:23
[2026-06-19 19:20:23,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:20:24,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:20:24,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:20:24,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:20:24,217.217 INFO    ] time= 19/06/2026 19:20:24
[2026-06-19 19:20:24,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:20:24,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:20:24,429.429 INFO    ] No existing commands found in stream
[2026-06-19 19:20:29,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:20:29,457.457 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 19:20:33,355.355 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:20:33,358.358 INFO    ] Checking for system updates...
[2026-06-19 19:20:33,394.394 INFO    ] 200
[2026-06-19 19:20:33,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:33,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:20:33,451.451 INFO    ] No update needed
[2026-06-19 19:20:33,453.453 INFO    ] Checking for camera pi updates...
[2026-06-19 19:20:33,487.487 INFO    ] 200
[2026-06-19 19:20:33,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:33,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:20:33,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:20:33,577.577 INFO    ] No camera update needed
[2026-06-19 19:20:33,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:20:33,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:20:33,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:20:33,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:20:35,634.634 INFO    ] ================================================
[2026-06-19 19:20:35,650.650 INFO    ] Launching Daemon at Fri Jun 19 19:20:35 IST 2026
[2026-06-19 19:20:35,661.661 INFO    ] ================================================
[2026-06-19 19:20:36,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:20:36
[2026-06-19 19:20:36,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:20:37,097.097 INFO    ] Initializing speech engine...
[2026-06-19 19:20:37,106.106 INFO    ] 2026-06-19 19:20:37
[2026-06-19 19:20:37,364.364 INFO    ] 2026-06-19 19:20:37
[2026-06-19 19:20:37,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:20:37,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:20:37,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:20:37,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:20:37,822.822 INFO    ] time= 19/06/2026 19:20:37
[2026-06-19 19:20:37,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:20:37,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:20:38,052.052 INFO    ] No existing commands found in stream
[2026-06-19 19:20:43,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:20:43,076.076 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 19:20:45,217.217 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:20:45,219.219 INFO    ] Checking for system updates...
[2026-06-19 19:20:45,256.256 INFO    ] 200
[2026-06-19 19:20:45,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:45,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:20:45,322.322 INFO    ] No update needed
[2026-06-19 19:20:45,324.324 INFO    ] Checking for camera pi updates...
[2026-06-19 19:20:45,358.358 INFO    ] 200
[2026-06-19 19:20:45,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:45,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:20:45,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:20:45,453.453 INFO    ] No camera update needed
[2026-06-19 19:20:45,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:20:45,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:20:45,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:20:45,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:20:47,510.510 INFO    ] ================================================
[2026-06-19 19:20:47,525.525 INFO    ] Launching Daemon at Fri Jun 19 19:20:47 IST 2026
[2026-06-19 19:20:47,536.536 INFO    ] ================================================
[2026-06-19 19:20:48,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:20:48
[2026-06-19 19:20:48,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:20:48,998.998 INFO    ] Initializing speech engine...
[2026-06-19 19:20:49,009.009 INFO    ] 2026-06-19 19:20:49
[2026-06-19 19:20:49,256.256 INFO    ] 2026-06-19 19:20:49
[2026-06-19 19:20:49,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:20:49,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:20:49,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:20:49,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:20:49,729.729 INFO    ] time= 19/06/2026 19:20:49
[2026-06-19 19:20:49,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:20:49,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:20:49,956.956 INFO    ] No existing commands found in stream
[2026-06-19 19:20:54,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:20:54,984.984 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 19:20:58,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:20:58,837.837 INFO    ] Checking for system updates...
[2026-06-19 19:20:58,874.874 INFO    ] 200
[2026-06-19 19:20:58,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:58,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:20:58,939.939 INFO    ] No update needed
[2026-06-19 19:20:58,942.942 INFO    ] Checking for camera pi updates...
[2026-06-19 19:20:58,980.980 INFO    ] 200
[2026-06-19 19:20:58,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:20:59,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:20:59,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:20:59,080.080 INFO    ] No camera update needed
[2026-06-19 19:20:59,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:20:59,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:20:59,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:20:59,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:21:01,134.134 INFO    ] ================================================
[2026-06-19 19:21:01,150.150 INFO    ] Launching Daemon at Fri Jun 19 19:21:01 IST 2026
[2026-06-19 19:21:01,161.161 INFO    ] ================================================
[2026-06-19 19:21:01,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:21:01
[2026-06-19 19:21:02,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:21:03,034.034 INFO    ] Initializing speech engine...
[2026-06-19 19:21:03,048.048 INFO    ] 2026-06-19 19:21:03
[2026-06-19 19:21:03,353.353 INFO    ] 2026-06-19 19:21:03
[2026-06-19 19:21:03,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:21:03,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:21:03,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:21:03,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:21:03,757.757 INFO    ] time= 19/06/2026 19:21:03
[2026-06-19 19:21:03,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:21:03,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:21:03,953.953 INFO    ] No existing commands found in stream
[2026-06-19 19:21:08,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:21:08,967.967 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 19:21:12,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:21:12,235.235 INFO    ] Checking for system updates...
[2026-06-19 19:21:12,271.271 INFO    ] 200
[2026-06-19 19:21:12,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:12,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:21:12,329.329 INFO    ] No update needed
[2026-06-19 19:21:12,331.331 INFO    ] Checking for camera pi updates...
[2026-06-19 19:21:12,369.369 INFO    ] 200
[2026-06-19 19:21:12,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:12,411.411 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:21:12,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:21:12,557.557 INFO    ] No camera update needed
[2026-06-19 19:21:12,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:21:12,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:21:12,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:21:12,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:21:14,615.615 INFO    ] ================================================
[2026-06-19 19:21:14,630.630 INFO    ] Launching Daemon at Fri Jun 19 19:21:14 IST 2026
[2026-06-19 19:21:14,641.641 INFO    ] ================================================
[2026-06-19 19:21:15,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:21:15
[2026-06-19 19:21:15,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:21:16,149.149 INFO    ] Initializing speech engine...
[2026-06-19 19:21:16,160.160 INFO    ] 2026-06-19 19:21:16
[2026-06-19 19:21:16,409.409 INFO    ] 2026-06-19 19:21:16
[2026-06-19 19:21:16,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:21:16,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:21:16,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:21:16,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:21:16,890.890 INFO    ] time= 19/06/2026 19:21:16
[2026-06-19 19:21:16,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:21:16,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:21:17,126.126 INFO    ] No existing commands found in stream
[2026-06-19 19:21:22,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:21:22,159.159 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 19:21:24,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:21:24,338.338 INFO    ] Checking for system updates...
[2026-06-19 19:21:24,378.378 INFO    ] 200
[2026-06-19 19:21:24,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:24,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:21:24,437.437 INFO    ] No update needed
[2026-06-19 19:21:24,440.440 INFO    ] Checking for camera pi updates...
[2026-06-19 19:21:24,474.474 INFO    ] 200
[2026-06-19 19:21:24,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:24,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:21:24,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:21:24,563.563 INFO    ] No camera update needed
[2026-06-19 19:21:24,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:21:24,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:21:24,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:21:24,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:21:26,628.628 INFO    ] ================================================
[2026-06-19 19:21:26,644.644 INFO    ] Launching Daemon at Fri Jun 19 19:21:26 IST 2026
[2026-06-19 19:21:26,655.655 INFO    ] ================================================
[2026-06-19 19:21:27,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:21:27
[2026-06-19 19:21:27,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:21:28,238.238 INFO    ] Initializing speech engine...
[2026-06-19 19:21:28,249.249 INFO    ] 2026-06-19 19:21:28
[2026-06-19 19:21:28,525.525 INFO    ] 2026-06-19 19:21:28
[2026-06-19 19:21:28,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:21:28,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:21:28,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:21:29,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:21:29,060.060 INFO    ] time= 19/06/2026 19:21:29
[2026-06-19 19:21:29,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:21:29,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:21:29,227.227 INFO    ] No existing commands found in stream
[2026-06-19 19:21:34,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:21:34,261.261 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 19:21:35,914.914 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:21:35,917.917 INFO    ] Checking for system updates...
[2026-06-19 19:21:35,960.960 INFO    ] 200
[2026-06-19 19:21:35,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:36,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:21:36,035.035 INFO    ] No update needed
[2026-06-19 19:21:36,038.038 INFO    ] Checking for camera pi updates...
[2026-06-19 19:21:36,076.076 INFO    ] 200
[2026-06-19 19:21:36,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:36,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:21:36,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:21:36,176.176 INFO    ] No camera update needed
[2026-06-19 19:21:36,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:21:36,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:21:36,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:21:36,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:21:38,238.238 INFO    ] ================================================
[2026-06-19 19:21:38,253.253 INFO    ] Launching Daemon at Fri Jun 19 19:21:38 IST 2026
[2026-06-19 19:21:38,264.264 INFO    ] ================================================
[2026-06-19 19:21:38,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:21:38
[2026-06-19 19:21:39,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:21:39,800.800 INFO    ] Initializing speech engine...
[2026-06-19 19:21:39,806.806 INFO    ] 2026-06-19 19:21:39
[2026-06-19 19:21:40,097.097 INFO    ] 2026-06-19 19:21:40
[2026-06-19 19:21:40,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:21:40,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:21:40,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:21:40,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:21:40,636.636 INFO    ] time= 19/06/2026 19:21:40
[2026-06-19 19:21:40,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:21:40,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:21:40,839.839 INFO    ] No existing commands found in stream
[2026-06-19 19:21:45,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:21:45,869.869 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 19:21:46,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:21:46,750.750 INFO    ] Checking for system updates...
[2026-06-19 19:21:46,786.786 INFO    ] 200
[2026-06-19 19:21:46,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:46,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:21:46,845.845 INFO    ] No update needed
[2026-06-19 19:21:46,848.848 INFO    ] Checking for camera pi updates...
[2026-06-19 19:21:46,886.886 INFO    ] 200
[2026-06-19 19:21:46,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:46,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:21:47,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:21:47,003.003 INFO    ] No camera update needed
[2026-06-19 19:21:47,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:21:47,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:21:47,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:21:47,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:21:49,059.059 INFO    ] ================================================
[2026-06-19 19:21:49,075.075 INFO    ] Launching Daemon at Fri Jun 19 19:21:49 IST 2026
[2026-06-19 19:21:49,086.086 INFO    ] ================================================
[2026-06-19 19:21:49,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:21:49
[2026-06-19 19:21:50,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:21:50,673.673 INFO    ] Initializing speech engine...
[2026-06-19 19:21:50,683.683 INFO    ] 2026-06-19 19:21:50
[2026-06-19 19:21:50,951.951 INFO    ] 2026-06-19 19:21:50
[2026-06-19 19:21:51,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:21:51,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:21:51,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:21:51,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:21:51,500.500 INFO    ] time= 19/06/2026 19:21:51
[2026-06-19 19:21:51,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:21:51,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:21:51,653.653 INFO    ] No existing commands found in stream
[2026-06-19 19:21:56,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:21:56,672.672 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 19:21:58,178.178 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:21:58,181.181 INFO    ] Checking for system updates...
[2026-06-19 19:21:58,217.217 INFO    ] 200
[2026-06-19 19:21:58,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:58,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:21:58,275.275 INFO    ] No update needed
[2026-06-19 19:21:58,277.277 INFO    ] Checking for camera pi updates...
[2026-06-19 19:21:58,316.316 INFO    ] 200
[2026-06-19 19:21:58,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:21:58,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:21:58,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:21:58,406.406 INFO    ] No camera update needed
[2026-06-19 19:21:58,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:21:58,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:21:58,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:21:58,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:22:00,461.461 INFO    ] ================================================
[2026-06-19 19:22:00,477.477 INFO    ] Launching Daemon at Fri Jun 19 19:22:00 IST 2026
[2026-06-19 19:22:00,487.487 INFO    ] ================================================
[2026-06-19 19:22:01,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:22:01
[2026-06-19 19:22:01,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:22:02,279.279 INFO    ] Initializing speech engine...
[2026-06-19 19:22:02,283.283 INFO    ] 2026-06-19 19:22:02
[2026-06-19 19:22:02,639.639 INFO    ] 2026-06-19 19:22:02
[2026-06-19 19:22:02,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:22:02,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:22:02,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:22:03,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:22:03,147.147 INFO    ] time= 19/06/2026 19:22:03
[2026-06-19 19:22:03,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:22:03,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:22:03,330.330 INFO    ] No existing commands found in stream
[2026-06-19 19:22:08,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:22:08,353.353 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-19 19:22:10,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:22:10,836.836 INFO    ] Checking for system updates...
[2026-06-19 19:22:10,872.872 INFO    ] 200
[2026-06-19 19:22:10,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:10,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:22:10,930.930 INFO    ] No update needed
[2026-06-19 19:22:10,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 19:22:10,966.966 INFO    ] 200
[2026-06-19 19:22:10,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:11,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:22:11,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:22:11,058.058 INFO    ] No camera update needed
[2026-06-19 19:22:11,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:22:11,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:22:11,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:22:11,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:22:13,114.114 INFO    ] ================================================
[2026-06-19 19:22:13,129.129 INFO    ] Launching Daemon at Fri Jun 19 19:22:13 IST 2026
[2026-06-19 19:22:13,140.140 INFO    ] ================================================
[2026-06-19 19:22:13,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:22:13
[2026-06-19 19:22:14,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:22:14,606.606 INFO    ] Initializing speech engine...
[2026-06-19 19:22:14,612.612 INFO    ] 2026-06-19 19:22:14
[2026-06-19 19:22:14,878.878 INFO    ] 2026-06-19 19:22:14
[2026-06-19 19:22:14,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:22:15,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:22:15,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:22:15,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:22:15,288.288 INFO    ] time= 19/06/2026 19:22:15
[2026-06-19 19:22:15,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:22:15,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:22:15,464.464 INFO    ] No existing commands found in stream
[2026-06-19 19:22:20,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:22:20,495.495 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 19:22:23,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:22:23,598.598 INFO    ] Checking for system updates...
[2026-06-19 19:22:23,635.635 INFO    ] 200
[2026-06-19 19:22:23,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:23,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:22:23,692.692 INFO    ] No update needed
[2026-06-19 19:22:23,695.695 INFO    ] Checking for camera pi updates...
[2026-06-19 19:22:23,729.729 INFO    ] 200
[2026-06-19 19:22:23,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:23,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:22:23,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:22:23,825.825 INFO    ] No camera update needed
[2026-06-19 19:22:23,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:22:23,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:22:23,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:22:23,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:22:25,881.881 INFO    ] ================================================
[2026-06-19 19:22:25,897.897 INFO    ] Launching Daemon at Fri Jun 19 19:22:25 IST 2026
[2026-06-19 19:22:25,907.907 INFO    ] ================================================
[2026-06-19 19:22:26,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:22:26
[2026-06-19 19:22:27,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:22:27,376.376 INFO    ] Initializing speech engine...
[2026-06-19 19:22:27,395.395 INFO    ] 2026-06-19 19:22:27
[2026-06-19 19:22:27,644.644 INFO    ] 2026-06-19 19:22:27
[2026-06-19 19:22:27,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:22:27,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:22:27,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:22:28,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:22:28,130.130 INFO    ] time= 19/06/2026 19:22:28
[2026-06-19 19:22:28,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:22:28,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:22:28,364.364 INFO    ] No existing commands found in stream
[2026-06-19 19:22:33,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:22:33,384.384 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 19:22:36,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:22:36,248.248 INFO    ] Checking for system updates...
[2026-06-19 19:22:36,284.284 INFO    ] 200
[2026-06-19 19:22:36,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:36,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:22:36,341.341 INFO    ] No update needed
[2026-06-19 19:22:36,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 19:22:36,378.378 INFO    ] 200
[2026-06-19 19:22:36,381.381 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:36,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:22:36,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:22:36,480.480 INFO    ] No camera update needed
[2026-06-19 19:22:36,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:22:36,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:22:36,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:22:36,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:22:38,535.535 INFO    ] ================================================
[2026-06-19 19:22:38,551.551 INFO    ] Launching Daemon at Fri Jun 19 19:22:38 IST 2026
[2026-06-19 19:22:38,562.562 INFO    ] ================================================
[2026-06-19 19:22:39,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:22:39
[2026-06-19 19:22:39,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:22:39,991.991 INFO    ] Initializing speech engine...
[2026-06-19 19:22:39,998.998 INFO    ] 2026-06-19 19:22:39
[2026-06-19 19:22:40,256.256 INFO    ] 2026-06-19 19:22:40
[2026-06-19 19:22:40,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:22:40,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:22:40,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:22:40,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:22:40,760.760 INFO    ] time= 19/06/2026 19:22:40
[2026-06-19 19:22:40,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:22:40,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:22:40,970.970 INFO    ] No existing commands found in stream
[2026-06-19 19:22:45,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:22:45,990.990 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 19:22:48,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:22:48,004.004 INFO    ] Checking for system updates...
[2026-06-19 19:22:48,041.041 INFO    ] 200
[2026-06-19 19:22:48,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:48,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:22:48,100.100 INFO    ] No update needed
[2026-06-19 19:22:48,102.102 INFO    ] Checking for camera pi updates...
[2026-06-19 19:22:48,136.136 INFO    ] 200
[2026-06-19 19:22:48,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:48,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:22:48,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:22:48,212.212 INFO    ] No camera update needed
[2026-06-19 19:22:48,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:22:48,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:22:48,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:22:48,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:22:50,269.269 INFO    ] ================================================
[2026-06-19 19:22:50,285.285 INFO    ] Launching Daemon at Fri Jun 19 19:22:50 IST 2026
[2026-06-19 19:22:50,296.296 INFO    ] ================================================
[2026-06-19 19:22:50,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:22:50
[2026-06-19 19:22:51,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:22:51,887.887 INFO    ] Initializing speech engine...
[2026-06-19 19:22:51,899.899 INFO    ] 2026-06-19 19:22:51
[2026-06-19 19:22:52,203.203 INFO    ] 2026-06-19 19:22:52
[2026-06-19 19:22:52,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:22:52,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:22:52,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:22:52,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:22:52,724.724 INFO    ] time= 19/06/2026 19:22:52
[2026-06-19 19:22:52,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:22:52,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:22:52,884.884 INFO    ] No existing commands found in stream
[2026-06-19 19:22:57,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:22:57,900.900 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 19:22:58,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:22:58,326.326 INFO    ] Checking for system updates...
[2026-06-19 19:22:58,363.363 INFO    ] 200
[2026-06-19 19:22:58,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:58,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:22:58,422.422 INFO    ] No update needed
[2026-06-19 19:22:58,425.425 INFO    ] Checking for camera pi updates...
[2026-06-19 19:22:58,460.460 INFO    ] 200
[2026-06-19 19:22:58,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:22:58,505.505 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:22:58,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:22:58,556.556 INFO    ] No camera update needed
[2026-06-19 19:22:58,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:22:58,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:22:58,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:22:58,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:23:00,613.613 INFO    ] ================================================
[2026-06-19 19:23:00,629.629 INFO    ] Launching Daemon at Fri Jun 19 19:23:00 IST 2026
[2026-06-19 19:23:00,640.640 INFO    ] ================================================
[2026-06-19 19:23:01,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:23:01
[2026-06-19 19:23:01,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:23:02,412.412 INFO    ] Initializing speech engine...
[2026-06-19 19:23:02,448.448 INFO    ] 2026-06-19 19:23:02
[2026-06-19 19:23:02,791.791 INFO    ] 2026-06-19 19:23:02
[2026-06-19 19:23:02,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:23:02,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:23:03,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:23:03,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:23:03,265.265 INFO    ] time= 19/06/2026 19:23:03
[2026-06-19 19:23:03,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:23:03,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:23:03,421.421 INFO    ] No existing commands found in stream
[2026-06-19 19:23:08,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:23:08,454.454 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-19 19:23:09,712.712 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:23:09,714.714 INFO    ] Checking for system updates...
[2026-06-19 19:23:09,754.754 INFO    ] 200
[2026-06-19 19:23:09,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:09,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:23:09,812.812 INFO    ] No update needed
[2026-06-19 19:23:09,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 19:23:09,851.851 INFO    ] 200
[2026-06-19 19:23:09,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:09,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:23:09,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:23:09,944.944 INFO    ] No camera update needed
[2026-06-19 19:23:09,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:23:09,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:23:09,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:23:09,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:23:12,000.000 INFO    ] ================================================
[2026-06-19 19:23:12,016.016 INFO    ] Launching Daemon at Fri Jun 19 19:23:12 IST 2026
[2026-06-19 19:23:12,026.026 INFO    ] ================================================
[2026-06-19 19:23:12,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:23:12
[2026-06-19 19:23:13,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:23:13,620.620 INFO    ] Initializing speech engine...
[2026-06-19 19:23:13,632.632 INFO    ] 2026-06-19 19:23:13
[2026-06-19 19:23:13,907.907 INFO    ] 2026-06-19 19:23:13
[2026-06-19 19:23:14,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:23:14,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:23:14,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:23:14,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:23:14,353.353 INFO    ] time= 19/06/2026 19:23:14
[2026-06-19 19:23:14,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:23:14,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:23:14,511.511 INFO    ] No existing commands found in stream
[2026-06-19 19:23:19,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:23:19,550.550 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 19:23:20,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:23:20,059.059 INFO    ] Checking for system updates...
[2026-06-19 19:23:20,100.100 INFO    ] 200
[2026-06-19 19:23:20,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:20,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:23:20,159.159 INFO    ] No update needed
[2026-06-19 19:23:20,161.161 INFO    ] Checking for camera pi updates...
[2026-06-19 19:23:20,199.199 INFO    ] 200
[2026-06-19 19:23:20,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:20,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:23:20,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:23:20,391.391 INFO    ] No camera update needed
[2026-06-19 19:23:20,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:23:20,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:23:20,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:23:20,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:23:22,449.449 INFO    ] ================================================
[2026-06-19 19:23:22,464.464 INFO    ] Launching Daemon at Fri Jun 19 19:23:22 IST 2026
[2026-06-19 19:23:22,475.475 INFO    ] ================================================
[2026-06-19 19:23:23,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:23:23
[2026-06-19 19:23:23,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:23:24,070.070 INFO    ] Initializing speech engine...
[2026-06-19 19:23:24,081.081 INFO    ] 2026-06-19 19:23:24
[2026-06-19 19:23:24,364.364 INFO    ] 2026-06-19 19:23:24
[2026-06-19 19:23:24,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:23:24,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:23:24,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:23:24,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:23:24,898.898 INFO    ] time= 19/06/2026 19:23:24
[2026-06-19 19:23:24,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:23:24,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:23:25,054.054 INFO    ] No existing commands found in stream
[2026-06-19 19:23:30,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:23:30,077.077 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 19:23:32,675.675 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:23:32,679.679 INFO    ] Checking for system updates...
[2026-06-19 19:23:32,719.719 INFO    ] 200
[2026-06-19 19:23:32,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:32,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:23:32,783.783 INFO    ] No update needed
[2026-06-19 19:23:32,786.786 INFO    ] Checking for camera pi updates...
[2026-06-19 19:23:32,824.824 INFO    ] 200
[2026-06-19 19:23:32,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:32,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:23:32,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:23:32,907.907 INFO    ] No camera update needed
[2026-06-19 19:23:32,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:23:32,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:23:32,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:23:32,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:23:34,967.967 INFO    ] ================================================
[2026-06-19 19:23:34,983.983 INFO    ] Launching Daemon at Fri Jun 19 19:23:34 IST 2026
[2026-06-19 19:23:34,994.994 INFO    ] ================================================
[2026-06-19 19:23:35,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:23:35
[2026-06-19 19:23:36,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:23:36,411.411 INFO    ] Initializing speech engine...
[2026-06-19 19:23:36,426.426 INFO    ] 2026-06-19 19:23:36
[2026-06-19 19:23:36,708.708 INFO    ] 2026-06-19 19:23:36
[2026-06-19 19:23:36,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:23:36,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:23:36,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:23:37,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:23:37,095.095 INFO    ] time= 19/06/2026 19:23:37
[2026-06-19 19:23:37,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:23:37,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:23:37,200.200 INFO    ] No existing commands found in stream
[2026-06-19 19:23:42,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:23:42,215.215 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 19:23:45,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:23:45,441.441 INFO    ] Checking for system updates...
[2026-06-19 19:23:45,476.476 INFO    ] 200
[2026-06-19 19:23:45,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:45,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:23:45,539.539 INFO    ] No update needed
[2026-06-19 19:23:45,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 19:23:45,576.576 INFO    ] 200
[2026-06-19 19:23:45,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:45,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:23:45,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:23:45,674.674 INFO    ] No camera update needed
[2026-06-19 19:23:45,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:23:45,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:23:45,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:23:45,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:23:47,728.728 INFO    ] ================================================
[2026-06-19 19:23:47,743.743 INFO    ] Launching Daemon at Fri Jun 19 19:23:47 IST 2026
[2026-06-19 19:23:47,755.755 INFO    ] ================================================
[2026-06-19 19:23:48,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:23:48
[2026-06-19 19:23:48,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:23:49,195.195 INFO    ] Initializing speech engine...
[2026-06-19 19:23:49,203.203 INFO    ] 2026-06-19 19:23:49
[2026-06-19 19:23:49,495.495 INFO    ] 2026-06-19 19:23:49
[2026-06-19 19:23:49,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:23:49,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:23:49,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:23:49,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:23:49,983.983 INFO    ] time= 19/06/2026 19:23:49
[2026-06-19 19:23:50,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:23:50,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:23:50,192.192 INFO    ] No existing commands found in stream
[2026-06-19 19:23:55,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:23:55,225.225 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 19:23:57,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:23:57,529.529 INFO    ] Checking for system updates...
[2026-06-19 19:23:57,566.566 INFO    ] 200
[2026-06-19 19:23:57,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:57,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:23:57,630.630 INFO    ] No update needed
[2026-06-19 19:23:57,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 19:23:57,670.670 INFO    ] 200
[2026-06-19 19:23:57,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:23:57,715.715 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:23:57,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:23:57,761.761 INFO    ] No camera update needed
[2026-06-19 19:23:57,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:23:57,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:23:57,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:23:57,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:23:59,817.817 INFO    ] ================================================
[2026-06-19 19:23:59,833.833 INFO    ] Launching Daemon at Fri Jun 19 19:23:59 IST 2026
[2026-06-19 19:23:59,844.844 INFO    ] ================================================
[2026-06-19 19:24:00,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:24:00
[2026-06-19 19:24:01,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:24:01,431.431 INFO    ] Initializing speech engine...
[2026-06-19 19:24:01,439.439 INFO    ] 2026-06-19 19:24:01
[2026-06-19 19:24:01,722.722 INFO    ] 2026-06-19 19:24:01
[2026-06-19 19:24:01,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:24:02,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:24:02,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:24:02,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:24:02,303.303 INFO    ] time= 19/06/2026 19:24:02
[2026-06-19 19:24:02,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:24:02,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:24:02,542.542 INFO    ] No existing commands found in stream
[2026-06-19 19:24:07,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:24:07,556.556 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 19:24:10,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:24:10,042.042 INFO    ] Checking for system updates...
[2026-06-19 19:24:10,080.080 INFO    ] 200
[2026-06-19 19:24:10,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:24:10,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:24:10,147.147 INFO    ] No update needed
[2026-06-19 19:24:10,150.150 INFO    ] Checking for camera pi updates...
[2026-06-19 19:24:10,187.187 INFO    ] 200
[2026-06-19 19:24:10,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:24:10,236.236 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:24:10,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:24:10,291.291 INFO    ] No camera update needed
[2026-06-19 19:24:10,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:24:10,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:24:10,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:24:10,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:24:12,347.347 INFO    ] ================================================
[2026-06-19 19:24:12,362.362 INFO    ] Launching Daemon at Fri Jun 19 19:24:12 IST 2026
[2026-06-19 19:24:12,373.373 INFO    ] ================================================
[2026-06-19 19:24:12,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:24:12
[2026-06-19 19:24:13,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:24:13,961.961 INFO    ] Initializing speech engine...
[2026-06-19 19:24:13,973.973 INFO    ] 2026-06-19 19:24:13
[2026-06-19 19:24:14,260.260 INFO    ] 2026-06-19 19:24:14
[2026-06-19 19:24:14,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:24:14,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:24:14,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:24:14,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:24:14,812.812 INFO    ] time= 19/06/2026 19:24:14
[2026-06-19 19:24:14,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:24:14,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:24:14,946.946 INFO    ] No existing commands found in stream
[2026-06-19 19:24:19,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:24:19,975.975 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 19:24:23,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:24:23,871.871 INFO    ] Checking for system updates...
[2026-06-19 19:24:23,909.909 INFO    ] 200
[2026-06-19 19:24:23,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:24:23,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:24:23,974.974 INFO    ] No update needed
[2026-06-19 19:24:23,977.977 INFO    ] Checking for camera pi updates...
[2026-06-19 19:24:24,012.012 INFO    ] 200
[2026-06-19 19:24:24,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:24:24,056.056 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:24:24,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:24:24,104.104 INFO    ] No camera update needed
[2026-06-19 19:24:24,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:24:24,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:24:24,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:24:24,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:24:26,163.163 INFO    ] ================================================
[2026-06-19 19:24:26,179.179 INFO    ] Launching Daemon at Fri Jun 19 19:24:26 IST 2026
[2026-06-19 19:24:26,190.190 INFO    ] ================================================
[2026-06-19 19:24:26,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:24:26
[2026-06-19 19:24:27,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:24:27,590.590 INFO    ] Initializing speech engine...
[2026-06-19 19:24:27,602.602 INFO    ] 2026-06-19 19:24:27
[2026-06-19 19:24:27,868.868 INFO    ] 2026-06-19 19:24:27
[2026-06-19 19:24:27,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:24:28,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:24:28,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:24:28,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:24:28,427.427 INFO    ] time= 19/06/2026 19:24:28
[2026-06-19 19:24:28,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:24:28,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:24:28,601.601 INFO    ] No existing commands found in stream
[2026-06-19 19:24:33,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:24:33,630.630 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 19:24:37,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:24:37,435.435 INFO    ] Checking for system updates...
[2026-06-19 19:24:37,471.471 INFO    ] 200
[2026-06-19 19:24:37,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:24:37,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:24:37,531.531 INFO    ] No update needed
[2026-06-19 19:24:37,533.533 INFO    ] Checking for camera pi updates...
[2026-06-19 19:24:37,569.569 INFO    ] 200
[2026-06-19 19:24:37,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:24:37,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:24:37,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:24:37,663.663 INFO    ] No camera update needed
[2026-06-19 19:24:37,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:24:37,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:24:37,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:24:37,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:24:39,719.719 INFO    ] ================================================
[2026-06-19 19:24:39,736.736 INFO    ] Launching Daemon at Fri Jun 19 19:24:39 IST 2026
[2026-06-19 19:24:39,747.747 INFO    ] ================================================
[2026-06-19 19:24:40,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:24:40
[2026-06-19 19:24:41,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:24:41,306.306 INFO    ] Initializing speech engine...
[2026-06-19 19:24:41,321.321 INFO    ] 2026-06-19 19:24:41
[2026-06-19 19:24:41,635.635 INFO    ] 2026-06-19 19:24:41
[2026-06-19 19:24:41,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:24:41,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:24:41,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:24:42,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:24:42,157.157 INFO    ] time= 19/06/2026 19:24:42
[2026-06-19 19:24:42,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:24:42,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:24:42,321.321 INFO    ] No existing commands found in stream
[2026-06-19 19:24:47,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:24:47,351.351 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-19 19:24:47,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:24:47,978.978 INFO    ] Checking for system updates...
[2026-06-19 19:24:48,016.016 INFO    ] 200
[2026-06-19 19:24:48,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:24:48,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:24:48,084.084 INFO    ] No update needed
[2026-06-19 19:24:48,087.087 INFO    ] Checking for camera pi updates...
[2026-06-19 19:24:48,126.126 INFO    ] 200
[2026-06-19 19:24:48,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:24:48,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:24:48,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:24:48,214.214 INFO    ] No camera update needed
[2026-06-19 19:24:48,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:24:48,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:24:48,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:24:48,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:24:50,272.272 INFO    ] ================================================
[2026-06-19 19:24:50,287.287 INFO    ] Launching Daemon at Fri Jun 19 19:24:50 IST 2026
[2026-06-19 19:24:50,298.298 INFO    ] ================================================
[2026-06-19 19:24:50,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:24:50
[2026-06-19 19:24:51,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:24:51,701.701 INFO    ] Initializing speech engine...
[2026-06-19 19:24:51,724.724 INFO    ] 2026-06-19 19:24:51
[2026-06-19 19:24:51,980.980 INFO    ] 2026-06-19 19:24:51
[2026-06-19 19:24:52,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:24:52,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:24:52,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:24:52,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:24:52,475.475 INFO    ] time= 19/06/2026 19:24:52
[2026-06-19 19:24:52,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:24:52,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:24:52,708.708 INFO    ] No existing commands found in stream
[2026-06-19 19:24:57,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:24:57,731.731 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 19:25:01,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:25:01,842.842 INFO    ] Checking for system updates...
[2026-06-19 19:25:01,880.880 INFO    ] 200
[2026-06-19 19:25:01,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:01,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:25:01,949.949 INFO    ] No update needed
[2026-06-19 19:25:01,952.952 INFO    ] Checking for camera pi updates...
[2026-06-19 19:25:02,000.000 INFO    ] 200
[2026-06-19 19:25:02,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:02,106.106 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:25:02,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:25:02,234.234 INFO    ] No camera update needed
[2026-06-19 19:25:02,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:25:02,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:25:02,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:25:02,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:25:04,333.333 INFO    ] ================================================
[2026-06-19 19:25:04,348.348 INFO    ] Launching Daemon at Fri Jun 19 19:25:04 IST 2026
[2026-06-19 19:25:04,359.359 INFO    ] ================================================
[2026-06-19 19:25:04,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:25:04
[2026-06-19 19:25:05,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:25:05,778.778 INFO    ] Initializing speech engine...
[2026-06-19 19:25:05,797.797 INFO    ] 2026-06-19 19:25:05
[2026-06-19 19:25:06,046.046 INFO    ] 2026-06-19 19:25:06
[2026-06-19 19:25:06,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:25:06,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:25:06,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:25:06,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:25:06,522.522 INFO    ] time= 19/06/2026 19:25:06
[2026-06-19 19:25:06,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:25:06,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:25:06,728.728 INFO    ] No existing commands found in stream
[2026-06-19 19:25:11,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:25:11,762.762 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 19:25:15,794.794 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:25:15,797.797 INFO    ] Checking for system updates...
[2026-06-19 19:25:15,834.834 INFO    ] 200
[2026-06-19 19:25:15,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:15,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:25:15,891.891 INFO    ] No update needed
[2026-06-19 19:25:15,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 19:25:15,927.927 INFO    ] 200
[2026-06-19 19:25:15,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:15,971.971 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:25:16,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:25:16,022.022 INFO    ] No camera update needed
[2026-06-19 19:25:16,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:25:16,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:25:16,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:25:16,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:25:18,079.079 INFO    ] ================================================
[2026-06-19 19:25:18,095.095 INFO    ] Launching Daemon at Fri Jun 19 19:25:18 IST 2026
[2026-06-19 19:25:18,106.106 INFO    ] ================================================
[2026-06-19 19:25:18,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:25:18
[2026-06-19 19:25:19,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:25:19,533.533 INFO    ] Initializing speech engine...
[2026-06-19 19:25:19,542.542 INFO    ] 2026-06-19 19:25:19
[2026-06-19 19:25:19,793.793 INFO    ] 2026-06-19 19:25:19
[2026-06-19 19:25:19,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:25:20,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:25:20,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:25:20,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:25:20,252.252 INFO    ] time= 19/06/2026 19:25:20
[2026-06-19 19:25:20,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:25:20,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:25:20,502.502 INFO    ] No existing commands found in stream
[2026-06-19 19:25:25,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:25:25,530.530 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 19:25:26,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:25:26,912.912 INFO    ] Checking for system updates...
[2026-06-19 19:25:26,950.950 INFO    ] 200
[2026-06-19 19:25:26,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:27,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:25:27,016.016 INFO    ] No update needed
[2026-06-19 19:25:27,019.019 INFO    ] Checking for camera pi updates...
[2026-06-19 19:25:27,055.055 INFO    ] 200
[2026-06-19 19:25:27,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:27,100.100 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:25:27,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:25:27,247.247 INFO    ] No camera update needed
[2026-06-19 19:25:27,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:25:27,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:25:27,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:25:27,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:25:29,309.309 INFO    ] ================================================
[2026-06-19 19:25:29,324.324 INFO    ] Launching Daemon at Fri Jun 19 19:25:29 IST 2026
[2026-06-19 19:25:29,335.335 INFO    ] ================================================
[2026-06-19 19:25:29,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:25:29
[2026-06-19 19:25:30,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:25:30,755.755 INFO    ] Initializing speech engine...
[2026-06-19 19:25:30,763.763 INFO    ] 2026-06-19 19:25:30
[2026-06-19 19:25:31,014.014 INFO    ] 2026-06-19 19:25:31
[2026-06-19 19:25:31,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:25:31,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:25:31,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:25:31,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:25:31,391.391 INFO    ] time= 19/06/2026 19:25:31
[2026-06-19 19:25:31,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:25:31,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:25:31,578.578 INFO    ] No existing commands found in stream
[2026-06-19 19:25:36,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:25:36,607.607 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 19:25:38,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:25:38,897.897 INFO    ] Checking for system updates...
[2026-06-19 19:25:38,934.934 INFO    ] 200
[2026-06-19 19:25:38,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:38,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:25:38,994.994 INFO    ] No update needed
[2026-06-19 19:25:38,997.997 INFO    ] Checking for camera pi updates...
[2026-06-19 19:25:39,031.031 INFO    ] 200
[2026-06-19 19:25:39,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:39,077.077 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:25:39,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:25:39,131.131 INFO    ] No camera update needed
[2026-06-19 19:25:39,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:25:39,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:25:39,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:25:39,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:25:41,191.191 INFO    ] ================================================
[2026-06-19 19:25:41,206.206 INFO    ] Launching Daemon at Fri Jun 19 19:25:41 IST 2026
[2026-06-19 19:25:41,216.216 INFO    ] ================================================
[2026-06-19 19:25:41,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:25:41
[2026-06-19 19:25:42,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:25:42,618.618 INFO    ] Initializing speech engine...
[2026-06-19 19:25:42,626.626 INFO    ] 2026-06-19 19:25:42
[2026-06-19 19:25:42,901.901 INFO    ] 2026-06-19 19:25:42
[2026-06-19 19:25:42,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:25:43,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:25:43,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:25:43,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:25:43,386.386 INFO    ] time= 19/06/2026 19:25:43
[2026-06-19 19:25:43,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:25:43,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:25:43,601.601 INFO    ] No existing commands found in stream
[2026-06-19 19:25:48,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:25:48,634.634 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 19:25:50,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:25:50,834.834 INFO    ] Checking for system updates...
[2026-06-19 19:25:50,870.870 INFO    ] 200
[2026-06-19 19:25:50,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:50,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:25:50,931.931 INFO    ] No update needed
[2026-06-19 19:25:50,934.934 INFO    ] Checking for camera pi updates...
[2026-06-19 19:25:50,972.972 INFO    ] 200
[2026-06-19 19:25:50,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:25:51,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:25:51,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:25:51,072.072 INFO    ] No camera update needed
[2026-06-19 19:25:51,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:25:51,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:25:51,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:25:51,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:25:53,132.132 INFO    ] ================================================
[2026-06-19 19:25:53,147.147 INFO    ] Launching Daemon at Fri Jun 19 19:25:53 IST 2026
[2026-06-19 19:25:53,158.158 INFO    ] ================================================
[2026-06-19 19:25:53,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:25:53
[2026-06-19 19:25:54,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:25:54,801.801 INFO    ] Initializing speech engine...
[2026-06-19 19:25:54,815.815 INFO    ] 2026-06-19 19:25:54
[2026-06-19 19:25:55,133.133 INFO    ] 2026-06-19 19:25:55
[2026-06-19 19:25:55,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:25:55,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:25:55,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:25:55,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:25:55,653.653 INFO    ] time= 19/06/2026 19:25:55
[2026-06-19 19:25:55,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:25:55,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:25:55,816.816 INFO    ] No existing commands found in stream
[2026-06-19 19:26:00,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:26:00,840.840 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 19:26:02,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:26:02,346.346 INFO    ] Checking for system updates...
[2026-06-19 19:26:02,390.390 INFO    ] 200
[2026-06-19 19:26:02,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:02,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:26:02,458.458 INFO    ] No update needed
[2026-06-19 19:26:02,461.461 INFO    ] Checking for camera pi updates...
[2026-06-19 19:26:02,505.505 INFO    ] 200
[2026-06-19 19:26:02,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:02,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:26:02,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:26:02,599.599 INFO    ] No camera update needed
[2026-06-19 19:26:02,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:26:02,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:26:02,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:26:02,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:26:04,661.661 INFO    ] ================================================
[2026-06-19 19:26:04,677.677 INFO    ] Launching Daemon at Fri Jun 19 19:26:04 IST 2026
[2026-06-19 19:26:04,688.688 INFO    ] ================================================
[2026-06-19 19:26:05,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:26:05
[2026-06-19 19:26:06,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:26:06,333.333 INFO    ] Initializing speech engine...
[2026-06-19 19:26:06,351.351 INFO    ] 2026-06-19 19:26:06
[2026-06-19 19:26:06,627.627 INFO    ] 2026-06-19 19:26:06
[2026-06-19 19:26:06,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:26:06,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:26:06,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:26:07,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:26:07,135.135 INFO    ] time= 19/06/2026 19:26:07
[2026-06-19 19:26:07,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:26:07,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:26:07,344.344 INFO    ] No existing commands found in stream
[2026-06-19 19:26:12,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:26:12,368.368 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 19:26:15,307.307 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:26:15,310.310 INFO    ] Checking for system updates...
[2026-06-19 19:26:15,347.347 INFO    ] 200
[2026-06-19 19:26:15,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:15,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:26:15,408.408 INFO    ] No update needed
[2026-06-19 19:26:15,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 19:26:15,446.446 INFO    ] 200
[2026-06-19 19:26:15,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:15,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:26:15,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:26:15,544.544 INFO    ] No camera update needed
[2026-06-19 19:26:15,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:26:15,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:26:15,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:26:15,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:26:17,602.602 INFO    ] ================================================
[2026-06-19 19:26:17,618.618 INFO    ] Launching Daemon at Fri Jun 19 19:26:17 IST 2026
[2026-06-19 19:26:17,629.629 INFO    ] ================================================
[2026-06-19 19:26:18,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:26:18
[2026-06-19 19:26:18,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:26:19,090.090 INFO    ] Initializing speech engine...
[2026-06-19 19:26:19,097.097 INFO    ] 2026-06-19 19:26:19
[2026-06-19 19:26:19,359.359 INFO    ] 2026-06-19 19:26:19
[2026-06-19 19:26:19,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:26:19,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:26:19,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:26:19,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:26:19,903.903 INFO    ] time= 19/06/2026 19:26:19
[2026-06-19 19:26:19,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:26:19,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:26:20,074.074 INFO    ] No existing commands found in stream
[2026-06-19 19:26:25,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:26:25,107.107 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 19:26:25,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:26:25,939.939 INFO    ] Checking for system updates...
[2026-06-19 19:26:25,976.976 INFO    ] 200
[2026-06-19 19:26:25,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:26,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:26:26,045.045 INFO    ] No update needed
[2026-06-19 19:26:26,047.047 INFO    ] Checking for camera pi updates...
[2026-06-19 19:26:26,082.082 INFO    ] 200
[2026-06-19 19:26:26,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:26,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:26:26,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:26:26,184.184 INFO    ] No camera update needed
[2026-06-19 19:26:26,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:26:26,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:26:26,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:26:26,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:26:28,242.242 INFO    ] ================================================
[2026-06-19 19:26:28,257.257 INFO    ] Launching Daemon at Fri Jun 19 19:26:28 IST 2026
[2026-06-19 19:26:28,268.268 INFO    ] ================================================
[2026-06-19 19:26:28,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:26:28
[2026-06-19 19:26:29,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:26:29,920.920 INFO    ] Initializing speech engine...
[2026-06-19 19:26:29,926.926 INFO    ] 2026-06-19 19:26:29
[2026-06-19 19:26:30,200.200 INFO    ] 2026-06-19 19:26:30
[2026-06-19 19:26:30,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:26:30,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:26:30,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:26:30,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:26:30,746.746 INFO    ] time= 19/06/2026 19:26:30
[2026-06-19 19:26:30,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:26:30,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:26:30,927.927 INFO    ] No existing commands found in stream
[2026-06-19 19:26:35,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:26:35,957.957 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 19:26:39,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:26:39,809.809 INFO    ] Checking for system updates...
[2026-06-19 19:26:39,847.847 INFO    ] 200
[2026-06-19 19:26:39,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:39,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:26:39,906.906 INFO    ] No update needed
[2026-06-19 19:26:39,909.909 INFO    ] Checking for camera pi updates...
[2026-06-19 19:26:39,944.944 INFO    ] 200
[2026-06-19 19:26:39,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:39,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:26:40,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:26:40,040.040 INFO    ] No camera update needed
[2026-06-19 19:26:40,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:26:40,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:26:40,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:26:40,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:26:42,099.099 INFO    ] ================================================
[2026-06-19 19:26:42,114.114 INFO    ] Launching Daemon at Fri Jun 19 19:26:42 IST 2026
[2026-06-19 19:26:42,126.126 INFO    ] ================================================
[2026-06-19 19:26:42,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:26:42
[2026-06-19 19:26:43,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:26:43,543.543 INFO    ] Initializing speech engine...
[2026-06-19 19:26:43,565.565 INFO    ] 2026-06-19 19:26:43
[2026-06-19 19:26:43,819.819 INFO    ] 2026-06-19 19:26:43
[2026-06-19 19:26:43,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:26:44,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:26:44,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:26:44,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:26:44,312.312 INFO    ] time= 19/06/2026 19:26:44
[2026-06-19 19:26:44,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:26:44,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:26:44,505.505 INFO    ] No existing commands found in stream
[2026-06-19 19:26:49,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:26:49,535.535 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 19:26:50,784.784 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:26:50,786.786 INFO    ] Checking for system updates...
[2026-06-19 19:26:50,823.823 INFO    ] 200
[2026-06-19 19:26:50,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:50,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:26:50,880.880 INFO    ] No update needed
[2026-06-19 19:26:50,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 19:26:50,917.917 INFO    ] 200
[2026-06-19 19:26:50,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:26:50,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:26:51,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:26:51,006.006 INFO    ] No camera update needed
[2026-06-19 19:26:51,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:26:51,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:26:51,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:26:51,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:26:53,063.063 INFO    ] ================================================
[2026-06-19 19:26:53,079.079 INFO    ] Launching Daemon at Fri Jun 19 19:26:53 IST 2026
[2026-06-19 19:26:53,090.090 INFO    ] ================================================
[2026-06-19 19:26:53,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:26:53
[2026-06-19 19:26:54,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:26:54,507.507 INFO    ] Initializing speech engine...
[2026-06-19 19:26:54,514.514 INFO    ] 2026-06-19 19:26:54
[2026-06-19 19:26:54,813.813 INFO    ] 2026-06-19 19:26:54
[2026-06-19 19:26:54,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:26:55,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:26:55,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:26:55,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:26:55,325.325 INFO    ] time= 19/06/2026 19:26:55
[2026-06-19 19:26:55,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:26:55,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:26:55,517.517 INFO    ] No existing commands found in stream
[2026-06-19 19:27:00,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:27:00,532.532 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 19:27:01,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:27:01,099.099 INFO    ] Checking for system updates...
[2026-06-19 19:27:01,135.135 INFO    ] 200
[2026-06-19 19:27:01,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:01,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:27:01,193.193 INFO    ] No update needed
[2026-06-19 19:27:01,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 19:27:01,233.233 INFO    ] 200
[2026-06-19 19:27:01,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:01,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:27:01,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:27:01,373.373 INFO    ] No camera update needed
[2026-06-19 19:27:01,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:27:01,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:27:01,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:27:01,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:27:03,447.447 INFO    ] ================================================
[2026-06-19 19:27:03,462.462 INFO    ] Launching Daemon at Fri Jun 19 19:27:03 IST 2026
[2026-06-19 19:27:03,472.472 INFO    ] ================================================
[2026-06-19 19:27:04,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:27:04
[2026-06-19 19:27:04,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:27:04,893.893 INFO    ] Initializing speech engine...
[2026-06-19 19:27:04,911.911 INFO    ] 2026-06-19 19:27:04
[2026-06-19 19:27:05,163.163 INFO    ] 2026-06-19 19:27:05
[2026-06-19 19:27:05,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:27:05,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:27:05,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:27:05,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:27:05,721.721 INFO    ] time= 19/06/2026 19:27:05
[2026-06-19 19:27:05,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:27:05,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:27:05,889.889 INFO    ] No existing commands found in stream
[2026-06-19 19:27:10,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:27:10,902.902 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 19:27:11,692.692 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:27:11,695.695 INFO    ] Checking for system updates...
[2026-06-19 19:27:11,733.733 INFO    ] 200
[2026-06-19 19:27:11,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:11,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:27:11,812.812 INFO    ] No update needed
[2026-06-19 19:27:11,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 19:27:11,854.854 INFO    ] 200
[2026-06-19 19:27:11,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:11,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:27:11,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:27:11,960.960 INFO    ] No camera update needed
[2026-06-19 19:27:11,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:27:11,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:27:11,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:27:11,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:27:14,019.019 INFO    ] ================================================
[2026-06-19 19:27:14,034.034 INFO    ] Launching Daemon at Fri Jun 19 19:27:14 IST 2026
[2026-06-19 19:27:14,045.045 INFO    ] ================================================
[2026-06-19 19:27:14,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:27:14
[2026-06-19 19:27:15,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:27:15,515.515 INFO    ] Initializing speech engine...
[2026-06-19 19:27:15,520.520 INFO    ] 2026-06-19 19:27:15
[2026-06-19 19:27:15,784.784 INFO    ] 2026-06-19 19:27:15
[2026-06-19 19:27:15,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:27:16,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:27:16,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:27:16,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:27:16,328.328 INFO    ] time= 19/06/2026 19:27:16
[2026-06-19 19:27:16,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:27:16,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:27:16,480.480 INFO    ] No existing commands found in stream
[2026-06-19 19:27:21,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:27:21,497.497 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 19:27:24,398.398 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:27:24,401.401 INFO    ] Checking for system updates...
[2026-06-19 19:27:24,438.438 INFO    ] 200
[2026-06-19 19:27:24,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:24,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:27:24,497.497 INFO    ] No update needed
[2026-06-19 19:27:24,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 19:27:24,536.536 INFO    ] 200
[2026-06-19 19:27:24,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:24,581.581 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:27:24,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:27:24,626.626 INFO    ] No camera update needed
[2026-06-19 19:27:24,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:27:24,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:27:24,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:27:24,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:27:26,688.688 INFO    ] ================================================
[2026-06-19 19:27:26,703.703 INFO    ] Launching Daemon at Fri Jun 19 19:27:26 IST 2026
[2026-06-19 19:27:26,714.714 INFO    ] ================================================
[2026-06-19 19:27:27,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:27:27
[2026-06-19 19:27:27,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:27:28,150.150 INFO    ] Initializing speech engine...
[2026-06-19 19:27:28,159.159 INFO    ] 2026-06-19 19:27:28
[2026-06-19 19:27:28,415.415 INFO    ] 2026-06-19 19:27:28
[2026-06-19 19:27:28,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:27:28,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:27:28,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:27:28,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:27:28,891.891 INFO    ] time= 19/06/2026 19:27:28
[2026-06-19 19:27:28,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:27:28,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:27:29,078.078 INFO    ] No existing commands found in stream
[2026-06-19 19:27:34,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:27:34,091.091 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 19:27:37,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:27:37,935.935 INFO    ] Checking for system updates...
[2026-06-19 19:27:37,971.971 INFO    ] 200
[2026-06-19 19:27:37,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:38,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:27:38,039.039 INFO    ] No update needed
[2026-06-19 19:27:38,042.042 INFO    ] Checking for camera pi updates...
[2026-06-19 19:27:38,081.081 INFO    ] 200
[2026-06-19 19:27:38,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:38,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:27:38,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:27:38,181.181 INFO    ] No camera update needed
[2026-06-19 19:27:38,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:27:38,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:27:38,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:27:38,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:27:40,240.240 INFO    ] ================================================
[2026-06-19 19:27:40,256.256 INFO    ] Launching Daemon at Fri Jun 19 19:27:40 IST 2026
[2026-06-19 19:27:40,266.266 INFO    ] ================================================
[2026-06-19 19:27:40,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:27:40
[2026-06-19 19:27:41,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:27:41,810.810 INFO    ] Initializing speech engine...
[2026-06-19 19:27:41,817.817 INFO    ] 2026-06-19 19:27:41
[2026-06-19 19:27:42,118.118 INFO    ] 2026-06-19 19:27:42
[2026-06-19 19:27:42,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:27:42,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:27:42,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:27:42,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:27:42,538.538 INFO    ] time= 19/06/2026 19:27:42
[2026-06-19 19:27:42,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:27:42,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:27:42,627.627 INFO    ] No existing commands found in stream
[2026-06-19 19:27:47,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:27:47,643.643 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 19:27:49,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:27:49,897.897 INFO    ] Checking for system updates...
[2026-06-19 19:27:49,933.933 INFO    ] 200
[2026-06-19 19:27:49,936.936 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:49,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:27:49,999.999 INFO    ] No update needed
[2026-06-19 19:27:50,001.001 INFO    ] Checking for camera pi updates...
[2026-06-19 19:27:50,036.036 INFO    ] 200
[2026-06-19 19:27:50,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:27:50,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:27:50,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:27:50,114.114 INFO    ] No camera update needed
[2026-06-19 19:27:50,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:27:50,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:27:50,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:27:50,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:27:52,170.170 INFO    ] ================================================
[2026-06-19 19:27:52,185.185 INFO    ] Launching Daemon at Fri Jun 19 19:27:52 IST 2026
[2026-06-19 19:27:52,196.196 INFO    ] ================================================
[2026-06-19 19:27:52,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:27:52
[2026-06-19 19:27:53,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:27:53,623.623 INFO    ] Initializing speech engine...
[2026-06-19 19:27:53,643.643 INFO    ] 2026-06-19 19:27:53
[2026-06-19 19:27:53,914.914 INFO    ] 2026-06-19 19:27:53
[2026-06-19 19:27:53,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:27:54,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:27:54,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:27:54,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:27:54,409.409 INFO    ] time= 19/06/2026 19:27:54
[2026-06-19 19:27:54,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:27:54,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:27:54,611.611 INFO    ] No existing commands found in stream
[2026-06-19 19:27:59,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:27:59,626.626 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 19:28:02,227.227 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:28:02,230.230 INFO    ] Checking for system updates...
[2026-06-19 19:28:02,271.271 INFO    ] 200
[2026-06-19 19:28:02,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:02,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:28:02,340.340 INFO    ] No update needed
[2026-06-19 19:28:02,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 19:28:02,390.390 INFO    ] 200
[2026-06-19 19:28:02,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:02,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:28:02,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:28:02,487.487 INFO    ] No camera update needed
[2026-06-19 19:28:02,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:28:02,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:28:02,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:28:02,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:28:04,563.563 INFO    ] ================================================
[2026-06-19 19:28:04,579.579 INFO    ] Launching Daemon at Fri Jun 19 19:28:04 IST 2026
[2026-06-19 19:28:04,590.590 INFO    ] ================================================
[2026-06-19 19:28:05,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:28:05
[2026-06-19 19:28:05,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:28:06,254.254 INFO    ] Initializing speech engine...
[2026-06-19 19:28:06,263.263 INFO    ] 2026-06-19 19:28:06
[2026-06-19 19:28:06,543.543 INFO    ] 2026-06-19 19:28:06
[2026-06-19 19:28:06,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:28:06,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:28:06,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:28:07,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:28:07,092.092 INFO    ] time= 19/06/2026 19:28:07
[2026-06-19 19:28:07,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:28:07,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:28:07,233.233 INFO    ] No existing commands found in stream
[2026-06-19 19:28:12,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:28:12,260.260 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 19:28:14,614.614 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:28:14,617.617 INFO    ] Checking for system updates...
[2026-06-19 19:28:14,653.653 INFO    ] 200
[2026-06-19 19:28:14,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:14,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:28:14,718.718 INFO    ] No update needed
[2026-06-19 19:28:14,720.720 INFO    ] Checking for camera pi updates...
[2026-06-19 19:28:14,754.754 INFO    ] 200
[2026-06-19 19:28:14,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:14,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:28:14,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:28:14,852.852 INFO    ] No camera update needed
[2026-06-19 19:28:14,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:28:14,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:28:14,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:28:14,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:28:16,909.909 INFO    ] ================================================
[2026-06-19 19:28:16,924.924 INFO    ] Launching Daemon at Fri Jun 19 19:28:16 IST 2026
[2026-06-19 19:28:16,935.935 INFO    ] ================================================
[2026-06-19 19:28:17,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:28:17
[2026-06-19 19:28:18,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:28:18,410.410 INFO    ] Initializing speech engine...
[2026-06-19 19:28:18,418.418 INFO    ] 2026-06-19 19:28:18
[2026-06-19 19:28:18,678.678 INFO    ] 2026-06-19 19:28:18
[2026-06-19 19:28:18,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:28:18,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:28:18,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:28:19,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:28:19,223.223 INFO    ] time= 19/06/2026 19:28:19
[2026-06-19 19:28:19,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:28:19,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:28:19,377.377 INFO    ] No existing commands found in stream
[2026-06-19 19:28:24,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:28:24,394.394 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 19:28:26,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:28:26,300.300 INFO    ] Checking for system updates...
[2026-06-19 19:28:26,336.336 INFO    ] 200
[2026-06-19 19:28:26,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:26,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:28:26,393.393 INFO    ] No update needed
[2026-06-19 19:28:26,396.396 INFO    ] Checking for camera pi updates...
[2026-06-19 19:28:26,434.434 INFO    ] 200
[2026-06-19 19:28:26,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:26,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:28:26,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:28:26,523.523 INFO    ] No camera update needed
[2026-06-19 19:28:26,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:28:26,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:28:26,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:28:26,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:28:28,581.581 INFO    ] ================================================
[2026-06-19 19:28:28,597.597 INFO    ] Launching Daemon at Fri Jun 19 19:28:28 IST 2026
[2026-06-19 19:28:28,608.608 INFO    ] ================================================
[2026-06-19 19:28:29,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:28:29
[2026-06-19 19:28:29,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:28:30,076.076 INFO    ] Initializing speech engine...
[2026-06-19 19:28:30,085.085 INFO    ] 2026-06-19 19:28:30
[2026-06-19 19:28:30,344.344 INFO    ] 2026-06-19 19:28:30
[2026-06-19 19:28:30,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:28:30,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:28:30,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:28:30,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:28:30,820.820 INFO    ] time= 19/06/2026 19:28:30
[2026-06-19 19:28:30,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:28:30,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:28:31,043.043 INFO    ] No existing commands found in stream
[2026-06-19 19:28:36,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:28:36,062.062 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 19:28:39,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:28:39,440.440 INFO    ] Checking for system updates...
[2026-06-19 19:28:39,477.477 INFO    ] 200
[2026-06-19 19:28:39,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:39,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:28:39,539.539 INFO    ] No update needed
[2026-06-19 19:28:39,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 19:28:39,575.575 INFO    ] 200
[2026-06-19 19:28:39,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:39,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:28:39,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:28:39,683.683 INFO    ] No camera update needed
[2026-06-19 19:28:39,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:28:39,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:28:39,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:28:39,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:28:41,740.740 INFO    ] ================================================
[2026-06-19 19:28:41,756.756 INFO    ] Launching Daemon at Fri Jun 19 19:28:41 IST 2026
[2026-06-19 19:28:41,768.768 INFO    ] ================================================
[2026-06-19 19:28:42,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:28:42
[2026-06-19 19:28:42,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:28:43,210.210 INFO    ] Initializing speech engine...
[2026-06-19 19:28:43,219.219 INFO    ] 2026-06-19 19:28:43
[2026-06-19 19:28:43,492.492 INFO    ] 2026-06-19 19:28:43
[2026-06-19 19:28:43,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:28:43,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:28:43,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:28:44,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:28:44,047.047 INFO    ] time= 19/06/2026 19:28:44
[2026-06-19 19:28:44,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:28:44,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:28:44,200.200 INFO    ] No existing commands found in stream
[2026-06-19 19:28:49,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:28:49,218.218 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-19 19:28:52,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:28:52,109.109 INFO    ] Checking for system updates...
[2026-06-19 19:28:52,149.149 INFO    ] 200
[2026-06-19 19:28:52,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:52,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:28:52,206.206 INFO    ] No update needed
[2026-06-19 19:28:52,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 19:28:52,242.242 INFO    ] 200
[2026-06-19 19:28:52,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:28:52,292.292 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:28:52,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:28:52,337.337 INFO    ] No camera update needed
[2026-06-19 19:28:52,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:28:52,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:28:52,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:28:52,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:28:54,392.392 INFO    ] ================================================
[2026-06-19 19:28:54,409.409 INFO    ] Launching Daemon at Fri Jun 19 19:28:54 IST 2026
[2026-06-19 19:28:54,420.420 INFO    ] ================================================
[2026-06-19 19:28:54,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:28:54
[2026-06-19 19:28:55,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:28:55,877.877 INFO    ] Initializing speech engine...
[2026-06-19 19:28:55,889.889 INFO    ] 2026-06-19 19:28:55
[2026-06-19 19:28:56,162.162 INFO    ] 2026-06-19 19:28:56
[2026-06-19 19:28:56,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:28:56,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:28:56,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:28:56,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:28:56,715.715 INFO    ] time= 19/06/2026 19:28:56
[2026-06-19 19:28:56,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:28:56,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:28:56,874.874 INFO    ] No existing commands found in stream
[2026-06-19 19:29:01,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:29:01,912.912 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-19 19:29:03,295.295 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:29:03,298.298 INFO    ] Checking for system updates...
[2026-06-19 19:29:03,335.335 INFO    ] 200
[2026-06-19 19:29:03,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:03,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:29:03,398.398 INFO    ] No update needed
[2026-06-19 19:29:03,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 19:29:03,436.436 INFO    ] 200
[2026-06-19 19:29:03,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:03,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:29:03,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:29:03,527.527 INFO    ] No camera update needed
[2026-06-19 19:29:03,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:29:03,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:29:03,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:29:03,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:29:05,587.587 INFO    ] ================================================
[2026-06-19 19:29:05,603.603 INFO    ] Launching Daemon at Fri Jun 19 19:29:05 IST 2026
[2026-06-19 19:29:05,614.614 INFO    ] ================================================
[2026-06-19 19:29:06,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:29:06
[2026-06-19 19:29:06,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:29:07,222.222 INFO    ] Initializing speech engine...
[2026-06-19 19:29:07,228.228 INFO    ] 2026-06-19 19:29:07
[2026-06-19 19:29:07,515.515 INFO    ] 2026-06-19 19:29:07
[2026-06-19 19:29:07,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:29:07,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:29:07,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:29:08,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:29:08,044.044 INFO    ] time= 19/06/2026 19:29:08
[2026-06-19 19:29:08,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:29:08,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:29:08,193.193 INFO    ] No existing commands found in stream
[2026-06-19 19:29:13,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:29:13,211.211 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 19:29:15,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:29:15,455.455 INFO    ] Checking for system updates...
[2026-06-19 19:29:15,491.491 INFO    ] 200
[2026-06-19 19:29:15,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:15,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:29:15,552.552 INFO    ] No update needed
[2026-06-19 19:29:15,555.555 INFO    ] Checking for camera pi updates...
[2026-06-19 19:29:15,588.588 INFO    ] 200
[2026-06-19 19:29:15,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:15,634.634 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:29:15,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:29:15,683.683 INFO    ] No camera update needed
[2026-06-19 19:29:15,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:29:15,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:29:15,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:29:15,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:29:17,738.738 INFO    ] ================================================
[2026-06-19 19:29:17,753.753 INFO    ] Launching Daemon at Fri Jun 19 19:29:17 IST 2026
[2026-06-19 19:29:17,764.764 INFO    ] ================================================
[2026-06-19 19:29:18,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:29:18
[2026-06-19 19:29:19,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:29:19,351.351 INFO    ] Initializing speech engine...
[2026-06-19 19:29:19,360.360 INFO    ] 2026-06-19 19:29:19
[2026-06-19 19:29:19,646.646 INFO    ] 2026-06-19 19:29:19
[2026-06-19 19:29:19,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:29:19,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:29:19,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:29:20,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:29:20,195.195 INFO    ] time= 19/06/2026 19:29:20
[2026-06-19 19:29:20,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:29:20,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:29:20,348.348 INFO    ] No existing commands found in stream
[2026-06-19 19:29:25,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:29:25,369.369 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 19:29:29,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:29:29,904.904 INFO    ] Checking for system updates...
[2026-06-19 19:29:29,941.941 INFO    ] 200
[2026-06-19 19:29:29,943.943 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:30,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:29:30,006.006 INFO    ] No update needed
[2026-06-19 19:29:30,009.009 INFO    ] Checking for camera pi updates...
[2026-06-19 19:29:30,044.044 INFO    ] 200
[2026-06-19 19:29:30,047.047 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:30,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:29:30,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:29:30,139.139 INFO    ] No camera update needed
[2026-06-19 19:29:30,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:29:30,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:29:30,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:29:30,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:29:32,199.199 INFO    ] ================================================
[2026-06-19 19:29:32,221.221 INFO    ] Launching Daemon at Fri Jun 19 19:29:32 IST 2026
[2026-06-19 19:29:32,239.239 INFO    ] ================================================
[2026-06-19 19:29:32,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:29:32
[2026-06-19 19:29:33,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:29:33,762.762 INFO    ] Initializing speech engine...
[2026-06-19 19:29:33,785.785 INFO    ] 2026-06-19 19:29:33
[2026-06-19 19:29:34,038.038 INFO    ] 2026-06-19 19:29:34
[2026-06-19 19:29:34,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:29:34,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:29:34,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:29:34,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:29:34,594.594 INFO    ] time= 19/06/2026 19:29:34
[2026-06-19 19:29:34,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:29:34,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:29:34,745.745 INFO    ] No existing commands found in stream
[2026-06-19 19:29:39,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:29:39,760.760 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-19 19:29:42,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:29:42,963.963 INFO    ] Checking for system updates...
[2026-06-19 19:29:43,000.000 INFO    ] 200
[2026-06-19 19:29:43,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:43,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:29:43,060.060 INFO    ] No update needed
[2026-06-19 19:29:43,062.062 INFO    ] Checking for camera pi updates...
[2026-06-19 19:29:43,097.097 INFO    ] 200
[2026-06-19 19:29:43,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:43,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:29:43,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:29:43,287.287 INFO    ] No camera update needed
[2026-06-19 19:29:43,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:29:43,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:29:43,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:29:43,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:29:45,344.344 INFO    ] ================================================
[2026-06-19 19:29:45,359.359 INFO    ] Launching Daemon at Fri Jun 19 19:29:45 IST 2026
[2026-06-19 19:29:45,370.370 INFO    ] ================================================
[2026-06-19 19:29:45,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:29:45
[2026-06-19 19:29:46,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:29:46,776.776 INFO    ] Initializing speech engine...
[2026-06-19 19:29:46,798.798 INFO    ] 2026-06-19 19:29:46
[2026-06-19 19:29:47,050.050 INFO    ] 2026-06-19 19:29:47
[2026-06-19 19:29:47,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:29:47,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:29:47,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:29:47,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:29:47,549.549 INFO    ] time= 19/06/2026 19:29:47
[2026-06-19 19:29:47,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:29:47,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:29:47,757.757 INFO    ] No existing commands found in stream
[2026-06-19 19:29:52,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:29:52,774.774 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 19:29:55,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:29:55,944.944 INFO    ] Checking for system updates...
[2026-06-19 19:29:55,979.979 INFO    ] 200
[2026-06-19 19:29:55,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:56,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:29:56,044.044 INFO    ] No update needed
[2026-06-19 19:29:56,046.046 INFO    ] Checking for camera pi updates...
[2026-06-19 19:29:56,080.080 INFO    ] 200
[2026-06-19 19:29:56,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:29:56,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:29:56,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:29:56,174.174 INFO    ] No camera update needed
[2026-06-19 19:29:56,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:29:56,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:29:56,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:29:56,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:29:58,235.235 INFO    ] ================================================
[2026-06-19 19:29:58,257.257 INFO    ] Launching Daemon at Fri Jun 19 19:29:58 IST 2026
[2026-06-19 19:29:58,268.268 INFO    ] ================================================
[2026-06-19 19:29:58,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:29:58
[2026-06-19 19:29:59,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:29:59,814.814 INFO    ] Initializing speech engine...
[2026-06-19 19:29:59,823.823 INFO    ] 2026-06-19 19:29:59
[2026-06-19 19:30:00,084.084 INFO    ] 2026-06-19 19:30:00
[2026-06-19 19:30:00,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:30:00,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:30:00,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:30:00,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:30:00,629.629 INFO    ] time= 19/06/2026 19:30:00
[2026-06-19 19:30:00,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:30:00,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:30:00,782.782 INFO    ] No existing commands found in stream
[2026-06-19 19:30:05,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:30:05,801.801 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 19:30:09,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:30:09,034.034 INFO    ] Checking for system updates...
[2026-06-19 19:30:09,071.071 INFO    ] 200
[2026-06-19 19:30:09,074.074 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:09,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:30:09,130.130 INFO    ] No update needed
[2026-06-19 19:30:09,132.132 INFO    ] Checking for camera pi updates...
[2026-06-19 19:30:09,166.166 INFO    ] 200
[2026-06-19 19:30:09,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:09,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:30:09,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:30:09,255.255 INFO    ] No camera update needed
[2026-06-19 19:30:09,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:30:09,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:30:09,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:30:09,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:30:11,311.311 INFO    ] ================================================
[2026-06-19 19:30:11,326.326 INFO    ] Launching Daemon at Fri Jun 19 19:30:11 IST 2026
[2026-06-19 19:30:11,337.337 INFO    ] ================================================
[2026-06-19 19:30:11,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:30:11
[2026-06-19 19:30:12,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:30:12,786.786 INFO    ] Initializing speech engine...
[2026-06-19 19:30:12,808.808 INFO    ] 2026-06-19 19:30:12
[2026-06-19 19:30:13,063.063 INFO    ] 2026-06-19 19:30:13
[2026-06-19 19:30:13,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:30:13,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:30:13,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:30:13,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:30:13,618.618 INFO    ] time= 19/06/2026 19:30:13
[2026-06-19 19:30:13,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:30:13,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:30:13,752.752 INFO    ] No existing commands found in stream
[2026-06-19 19:30:18,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:30:18,781.781 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 19:30:19,275.275 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:30:19,278.278 INFO    ] Checking for system updates...
[2026-06-19 19:30:19,314.314 INFO    ] 200
[2026-06-19 19:30:19,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:19,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:30:19,383.383 INFO    ] No update needed
[2026-06-19 19:30:19,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 19:30:19,422.422 INFO    ] 200
[2026-06-19 19:30:19,425.425 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:19,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:30:19,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:30:19,515.515 INFO    ] No camera update needed
[2026-06-19 19:30:19,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:30:19,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:30:19,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:30:19,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:30:21,573.573 INFO    ] ================================================
[2026-06-19 19:30:21,587.587 INFO    ] Launching Daemon at Fri Jun 19 19:30:21 IST 2026
[2026-06-19 19:30:21,599.599 INFO    ] ================================================
[2026-06-19 19:30:22,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:30:22
[2026-06-19 19:30:22,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:30:23,183.183 INFO    ] Initializing speech engine...
[2026-06-19 19:30:23,191.191 INFO    ] 2026-06-19 19:30:23
[2026-06-19 19:30:23,479.479 INFO    ] 2026-06-19 19:30:23
[2026-06-19 19:30:23,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:30:23,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:30:23,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:30:24,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:30:24,011.011 INFO    ] time= 19/06/2026 19:30:24
[2026-06-19 19:30:24,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:30:24,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:30:24,168.168 INFO    ] No existing commands found in stream
[2026-06-19 19:30:29,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:30:29,206.206 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 19:30:31,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:30:31,022.022 INFO    ] Checking for system updates...
[2026-06-19 19:30:31,060.060 INFO    ] 200
[2026-06-19 19:30:31,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:31,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:30:31,121.121 INFO    ] No update needed
[2026-06-19 19:30:31,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 19:30:31,158.158 INFO    ] 200
[2026-06-19 19:30:31,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:31,203.203 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:30:31,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:30:31,253.253 INFO    ] No camera update needed
[2026-06-19 19:30:31,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:30:31,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:30:31,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:30:31,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:30:33,316.316 INFO    ] ================================================
[2026-06-19 19:30:33,332.332 INFO    ] Launching Daemon at Fri Jun 19 19:30:33 IST 2026
[2026-06-19 19:30:33,343.343 INFO    ] ================================================
[2026-06-19 19:30:33,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:30:33
[2026-06-19 19:30:34,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:30:34,905.905 INFO    ] Initializing speech engine...
[2026-06-19 19:30:34,912.912 INFO    ] 2026-06-19 19:30:34
[2026-06-19 19:30:35,183.183 INFO    ] 2026-06-19 19:30:35
[2026-06-19 19:30:35,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:30:35,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:30:35,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:30:35,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:30:35,738.738 INFO    ] time= 19/06/2026 19:30:35
[2026-06-19 19:30:35,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:30:35,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:30:35,922.922 INFO    ] No existing commands found in stream
[2026-06-19 19:30:40,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:30:40,956.956 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 19:30:42,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:30:42,881.881 INFO    ] Checking for system updates...
[2026-06-19 19:30:42,923.923 INFO    ] 200
[2026-06-19 19:30:42,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:42,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:30:42,986.986 INFO    ] No update needed
[2026-06-19 19:30:42,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 19:30:43,023.023 INFO    ] 200
[2026-06-19 19:30:43,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:43,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:30:43,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:30:43,119.119 INFO    ] No camera update needed
[2026-06-19 19:30:43,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:30:43,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:30:43,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:30:43,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:30:45,176.176 INFO    ] ================================================
[2026-06-19 19:30:45,191.191 INFO    ] Launching Daemon at Fri Jun 19 19:30:45 IST 2026
[2026-06-19 19:30:45,201.201 INFO    ] ================================================
[2026-06-19 19:30:45,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:30:45
[2026-06-19 19:30:46,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:30:46,626.626 INFO    ] Initializing speech engine...
[2026-06-19 19:30:46,635.635 INFO    ] 2026-06-19 19:30:46
[2026-06-19 19:30:46,882.882 INFO    ] 2026-06-19 19:30:46
[2026-06-19 19:30:46,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:30:47,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:30:47,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:30:47,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:30:47,351.351 INFO    ] time= 19/06/2026 19:30:47
[2026-06-19 19:30:47,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:30:47,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:30:47,582.582 INFO    ] No existing commands found in stream
[2026-06-19 19:30:52,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:30:52,606.606 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 19:30:54,209.209 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:30:54,212.212 INFO    ] Checking for system updates...
[2026-06-19 19:30:54,248.248 INFO    ] 200
[2026-06-19 19:30:54,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:54,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:30:54,308.308 INFO    ] No update needed
[2026-06-19 19:30:54,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 19:30:54,348.348 INFO    ] 200
[2026-06-19 19:30:54,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:30:54,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:30:54,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:30:54,452.452 INFO    ] No camera update needed
[2026-06-19 19:30:54,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:30:54,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:30:54,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:30:54,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:30:56,508.508 INFO    ] ================================================
[2026-06-19 19:30:56,524.524 INFO    ] Launching Daemon at Fri Jun 19 19:30:56 IST 2026
[2026-06-19 19:30:56,536.536 INFO    ] ================================================
[2026-06-19 19:30:57,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:30:57
[2026-06-19 19:30:57,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:30:57,944.944 INFO    ] Initializing speech engine...
[2026-06-19 19:30:57,957.957 INFO    ] 2026-06-19 19:30:57
[2026-06-19 19:30:58,227.227 INFO    ] 2026-06-19 19:30:58
[2026-06-19 19:30:58,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:30:58,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:30:58,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:30:58,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:30:58,687.687 INFO    ] time= 19/06/2026 19:30:58
[2026-06-19 19:30:58,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:30:58,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:30:58,943.943 INFO    ] No existing commands found in stream
[2026-06-19 19:31:03,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:31:03,960.960 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 19:31:08,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:31:08,027.027 INFO    ] Checking for system updates...
[2026-06-19 19:31:08,064.064 INFO    ] 200
[2026-06-19 19:31:08,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:08,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:31:08,122.122 INFO    ] No update needed
[2026-06-19 19:31:08,125.125 INFO    ] Checking for camera pi updates...
[2026-06-19 19:31:08,160.160 INFO    ] 200
[2026-06-19 19:31:08,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:08,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:31:08,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:31:08,257.257 INFO    ] No camera update needed
[2026-06-19 19:31:08,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:31:08,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:31:08,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:31:08,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:31:10,317.317 INFO    ] ================================================
[2026-06-19 19:31:10,333.333 INFO    ] Launching Daemon at Fri Jun 19 19:31:10 IST 2026
[2026-06-19 19:31:10,343.343 INFO    ] ================================================
[2026-06-19 19:31:10,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:31:10
[2026-06-19 19:31:11,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:31:11,753.753 INFO    ] Initializing speech engine...
[2026-06-19 19:31:11,762.762 INFO    ] 2026-06-19 19:31:11
[2026-06-19 19:31:12,055.055 INFO    ] 2026-06-19 19:31:12
[2026-06-19 19:31:12,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:31:12,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:31:12,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:31:12,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:31:12,479.479 INFO    ] time= 19/06/2026 19:31:12
[2026-06-19 19:31:12,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:31:12,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:31:12,638.638 INFO    ] No existing commands found in stream
[2026-06-19 19:31:17,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:31:17,661.661 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 19:31:21,320.320 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:31:21,322.322 INFO    ] Checking for system updates...
[2026-06-19 19:31:21,358.358 INFO    ] 200
[2026-06-19 19:31:21,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:21,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:31:21,415.415 INFO    ] No update needed
[2026-06-19 19:31:21,417.417 INFO    ] Checking for camera pi updates...
[2026-06-19 19:31:21,451.451 INFO    ] 200
[2026-06-19 19:31:21,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:21,494.494 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:31:21,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:31:21,538.538 INFO    ] No camera update needed
[2026-06-19 19:31:21,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:31:21,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:31:21,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:31:21,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:31:23,593.593 INFO    ] ================================================
[2026-06-19 19:31:23,609.609 INFO    ] Launching Daemon at Fri Jun 19 19:31:23 IST 2026
[2026-06-19 19:31:23,620.620 INFO    ] ================================================
[2026-06-19 19:31:24,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:31:24
[2026-06-19 19:31:24,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:31:25,031.031 INFO    ] Initializing speech engine...
[2026-06-19 19:31:25,040.040 INFO    ] 2026-06-19 19:31:25
[2026-06-19 19:31:25,331.331 INFO    ] 2026-06-19 19:31:25
[2026-06-19 19:31:25,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:31:25,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:31:25,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:31:25,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:31:25,835.835 INFO    ] time= 19/06/2026 19:31:25
[2026-06-19 19:31:25,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:31:25,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:31:26,028.028 INFO    ] No existing commands found in stream
[2026-06-19 19:31:31,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:31:31,050.050 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 19:31:31,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:31:31,611.611 INFO    ] Checking for system updates...
[2026-06-19 19:31:31,649.649 INFO    ] 200
[2026-06-19 19:31:31,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:31,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:31:31,714.714 INFO    ] No update needed
[2026-06-19 19:31:31,718.718 INFO    ] Checking for camera pi updates...
[2026-06-19 19:31:31,763.763 INFO    ] 200
[2026-06-19 19:31:31,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:31,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:31:31,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:31:31,860.860 INFO    ] No camera update needed
[2026-06-19 19:31:31,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:31:31,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:31:31,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:31:31,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:31:33,923.923 INFO    ] ================================================
[2026-06-19 19:31:33,939.939 INFO    ] Launching Daemon at Fri Jun 19 19:31:33 IST 2026
[2026-06-19 19:31:33,951.951 INFO    ] ================================================
[2026-06-19 19:31:34,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:31:34
[2026-06-19 19:31:35,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:31:35,377.377 INFO    ] Initializing speech engine...
[2026-06-19 19:31:35,402.402 INFO    ] 2026-06-19 19:31:35
[2026-06-19 19:31:35,659.659 INFO    ] 2026-06-19 19:31:35
[2026-06-19 19:31:35,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:31:35,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:31:35,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:31:36,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:31:36,193.193 INFO    ] time= 19/06/2026 19:31:36
[2026-06-19 19:31:36,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:31:36,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:31:36,390.390 INFO    ] No existing commands found in stream
[2026-06-19 19:31:41,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:31:41,406.406 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 19:31:44,718.718 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:31:44,721.721 INFO    ] Checking for system updates...
[2026-06-19 19:31:44,757.757 INFO    ] 200
[2026-06-19 19:31:44,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:44,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:31:44,816.816 INFO    ] No update needed
[2026-06-19 19:31:44,819.819 INFO    ] Checking for camera pi updates...
[2026-06-19 19:31:44,852.852 INFO    ] 200
[2026-06-19 19:31:44,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:44,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:31:44,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:31:44,944.944 INFO    ] No camera update needed
[2026-06-19 19:31:44,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:31:44,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:31:44,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:31:44,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:31:47,001.001 INFO    ] ================================================
[2026-06-19 19:31:47,018.018 INFO    ] Launching Daemon at Fri Jun 19 19:31:47 IST 2026
[2026-06-19 19:31:47,028.028 INFO    ] ================================================
[2026-06-19 19:31:47,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:31:47
[2026-06-19 19:31:48,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:31:48,519.519 INFO    ] Initializing speech engine...
[2026-06-19 19:31:48,538.538 INFO    ] 2026-06-19 19:31:48
[2026-06-19 19:31:48,812.812 INFO    ] 2026-06-19 19:31:48
[2026-06-19 19:31:48,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:31:49,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:31:49,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:31:49,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:31:49,203.203 INFO    ] time= 19/06/2026 19:31:49
[2026-06-19 19:31:49,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:31:49,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:31:49,335.335 INFO    ] No existing commands found in stream
[2026-06-19 19:31:54,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:31:54,352.352 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 19:31:57,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:31:57,269.269 INFO    ] Checking for system updates...
[2026-06-19 19:31:57,306.306 INFO    ] 200
[2026-06-19 19:31:57,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:57,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:31:57,366.366 INFO    ] No update needed
[2026-06-19 19:31:57,369.369 INFO    ] Checking for camera pi updates...
[2026-06-19 19:31:57,403.403 INFO    ] 200
[2026-06-19 19:31:57,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:31:57,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:31:57,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:31:57,591.591 INFO    ] No camera update needed
[2026-06-19 19:31:57,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:31:57,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:31:57,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:31:57,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:31:59,649.649 INFO    ] ================================================
[2026-06-19 19:31:59,664.664 INFO    ] Launching Daemon at Fri Jun 19 19:31:59 IST 2026
[2026-06-19 19:31:59,675.675 INFO    ] ================================================
[2026-06-19 19:32:00,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:32:00
[2026-06-19 19:32:00,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:32:01,144.144 INFO    ] Initializing speech engine...
[2026-06-19 19:32:01,149.149 INFO    ] 2026-06-19 19:32:01
[2026-06-19 19:32:01,411.411 INFO    ] 2026-06-19 19:32:01
[2026-06-19 19:32:01,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:32:01,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:32:01,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:32:01,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:32:01,836.836 INFO    ] time= 19/06/2026 19:32:01
[2026-06-19 19:32:01,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:32:01,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:32:01,912.912 INFO    ] No existing commands found in stream
[2026-06-19 19:32:06,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:32:06,925.925 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 19:32:08,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:32:08,711.711 INFO    ] Checking for system updates...
[2026-06-19 19:32:08,747.747 INFO    ] 200
[2026-06-19 19:32:08,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:08,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:32:08,804.804 INFO    ] No update needed
[2026-06-19 19:32:08,806.806 INFO    ] Checking for camera pi updates...
[2026-06-19 19:32:08,840.840 INFO    ] 200
[2026-06-19 19:32:08,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:08,884.884 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:32:08,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:32:08,919.919 INFO    ] No camera update needed
[2026-06-19 19:32:08,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:32:08,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:32:08,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:32:08,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:32:10,975.975 INFO    ] ================================================
[2026-06-19 19:32:10,990.990 INFO    ] Launching Daemon at Fri Jun 19 19:32:10 IST 2026
[2026-06-19 19:32:11,002.002 INFO    ] ================================================
[2026-06-19 19:32:11,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:32:11
[2026-06-19 19:32:12,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:32:12,464.464 INFO    ] Initializing speech engine...
[2026-06-19 19:32:12,470.470 INFO    ] 2026-06-19 19:32:12
[2026-06-19 19:32:12,733.733 INFO    ] 2026-06-19 19:32:12
[2026-06-19 19:32:12,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:32:13,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:32:13,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:32:13,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:32:13,277.277 INFO    ] time= 19/06/2026 19:32:13
[2026-06-19 19:32:13,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:32:13,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:32:13,439.439 INFO    ] No existing commands found in stream
[2026-06-19 19:32:18,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:32:18,466.466 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 19:32:22,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:32:22,680.680 INFO    ] Checking for system updates...
[2026-06-19 19:32:22,717.717 INFO    ] 200
[2026-06-19 19:32:22,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:22,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:32:22,776.776 INFO    ] No update needed
[2026-06-19 19:32:22,778.778 INFO    ] Checking for camera pi updates...
[2026-06-19 19:32:22,812.812 INFO    ] 200
[2026-06-19 19:32:22,815.815 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:22,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:32:22,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:32:22,915.915 INFO    ] No camera update needed
[2026-06-19 19:32:22,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:32:22,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:32:22,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:32:22,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:32:24,972.972 INFO    ] ================================================
[2026-06-19 19:32:24,987.987 INFO    ] Launching Daemon at Fri Jun 19 19:32:24 IST 2026
[2026-06-19 19:32:25,998.998 INFO    ] ================================================
[2026-06-19 19:32:25,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:32:25
[2026-06-19 19:32:26,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:32:26,590.590 INFO    ] Initializing speech engine...
[2026-06-19 19:32:26,599.599 INFO    ] 2026-06-19 19:32:26
[2026-06-19 19:32:26,870.870 INFO    ] 2026-06-19 19:32:26
[2026-06-19 19:32:26,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:32:27,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:32:27,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:32:27,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:32:27,421.421 INFO    ] time= 19/06/2026 19:32:27
[2026-06-19 19:32:27,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:32:27,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:32:27,580.580 INFO    ] No existing commands found in stream
[2026-06-19 19:32:32,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:32:32,608.608 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 19:32:33,932.932 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:32:33,936.936 INFO    ] Checking for system updates...
[2026-06-19 19:32:33,973.973 INFO    ] 200
[2026-06-19 19:32:33,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:34,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:32:34,033.033 INFO    ] No update needed
[2026-06-19 19:32:34,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 19:32:34,070.070 INFO    ] 200
[2026-06-19 19:32:34,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:34,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:32:34,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:32:34,163.163 INFO    ] No camera update needed
[2026-06-19 19:32:34,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:32:34,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:32:34,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:32:34,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:32:36,218.218 INFO    ] ================================================
[2026-06-19 19:32:36,233.233 INFO    ] Launching Daemon at Fri Jun 19 19:32:36 IST 2026
[2026-06-19 19:32:36,244.244 INFO    ] ================================================
[2026-06-19 19:32:36,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:32:36
[2026-06-19 19:32:37,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:32:37,705.705 INFO    ] Initializing speech engine...
[2026-06-19 19:32:37,714.714 INFO    ] 2026-06-19 19:32:37
[2026-06-19 19:32:37,977.977 INFO    ] 2026-06-19 19:32:37
[2026-06-19 19:32:38,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:32:38,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:32:38,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:32:38,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:32:38,383.383 INFO    ] time= 19/06/2026 19:32:38
[2026-06-19 19:32:38,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:32:38,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:32:38,569.569 INFO    ] No existing commands found in stream
[2026-06-19 19:32:43,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:32:43,603.603 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 19:32:44,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:32:44,933.933 INFO    ] Checking for system updates...
[2026-06-19 19:32:44,970.970 INFO    ] 200
[2026-06-19 19:32:44,972.972 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:45,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:32:45,028.028 INFO    ] No update needed
[2026-06-19 19:32:45,030.030 INFO    ] Checking for camera pi updates...
[2026-06-19 19:32:45,065.065 INFO    ] 200
[2026-06-19 19:32:45,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:45,111.111 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:32:45,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:32:45,160.160 INFO    ] No camera update needed
[2026-06-19 19:32:45,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:32:45,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:32:45,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:32:45,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:32:47,215.215 INFO    ] ================================================
[2026-06-19 19:32:47,230.230 INFO    ] Launching Daemon at Fri Jun 19 19:32:47 IST 2026
[2026-06-19 19:32:47,241.241 INFO    ] ================================================
[2026-06-19 19:32:47,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:32:47
[2026-06-19 19:32:48,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:32:48,709.709 INFO    ] Initializing speech engine...
[2026-06-19 19:32:48,717.717 INFO    ] 2026-06-19 19:32:48
[2026-06-19 19:32:48,977.977 INFO    ] 2026-06-19 19:32:48
[2026-06-19 19:32:49,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:32:49,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:32:49,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:32:49,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:32:49,517.517 INFO    ] time= 19/06/2026 19:32:49
[2026-06-19 19:32:49,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:32:49,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:32:49,679.679 INFO    ] No existing commands found in stream
[2026-06-19 19:32:54,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:32:54,701.701 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 19:32:55,626.626 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:32:55,629.629 INFO    ] Checking for system updates...
[2026-06-19 19:32:55,686.686 INFO    ] 200
[2026-06-19 19:32:55,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:55,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:32:55,753.753 INFO    ] No update needed
[2026-06-19 19:32:55,756.756 INFO    ] Checking for camera pi updates...
[2026-06-19 19:32:55,790.790 INFO    ] 200
[2026-06-19 19:32:55,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:32:55,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:32:55,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:32:55,888.888 INFO    ] No camera update needed
[2026-06-19 19:32:55,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:32:55,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:32:55,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:32:55,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:32:57,944.944 INFO    ] ================================================
[2026-06-19 19:32:57,958.958 INFO    ] Launching Daemon at Fri Jun 19 19:32:57 IST 2026
[2026-06-19 19:32:57,969.969 INFO    ] ================================================
[2026-06-19 19:32:58,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:32:58
[2026-06-19 19:32:59,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:32:59,436.436 INFO    ] Initializing speech engine...
[2026-06-19 19:32:59,445.445 INFO    ] 2026-06-19 19:32:59
[2026-06-19 19:32:59,690.690 INFO    ] 2026-06-19 19:32:59
[2026-06-19 19:32:59,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:32:59,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:32:59,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:33:00,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:33:00,167.167 INFO    ] time= 19/06/2026 19:33:00
[2026-06-19 19:33:00,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:33:00,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:33:00,402.402 INFO    ] No existing commands found in stream
[2026-06-19 19:33:05,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:33:05,420.420 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 19:33:09,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:33:09,342.342 INFO    ] Checking for system updates...
[2026-06-19 19:33:09,381.381 INFO    ] 200
[2026-06-19 19:33:09,383.383 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:09,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:33:09,439.439 INFO    ] No update needed
[2026-06-19 19:33:09,441.441 INFO    ] Checking for camera pi updates...
[2026-06-19 19:33:09,476.476 INFO    ] 200
[2026-06-19 19:33:09,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:09,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:33:09,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:33:09,575.575 INFO    ] No camera update needed
[2026-06-19 19:33:09,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:33:09,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:33:09,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:33:09,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:33:11,632.632 INFO    ] ================================================
[2026-06-19 19:33:11,648.648 INFO    ] Launching Daemon at Fri Jun 19 19:33:11 IST 2026
[2026-06-19 19:33:11,659.659 INFO    ] ================================================
[2026-06-19 19:33:12,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:33:12
[2026-06-19 19:33:12,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:33:13,171.171 INFO    ] Initializing speech engine...
[2026-06-19 19:33:13,180.180 INFO    ] 2026-06-19 19:33:13
[2026-06-19 19:33:13,441.441 INFO    ] 2026-06-19 19:33:13
[2026-06-19 19:33:13,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:33:13,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:33:13,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:33:13,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:33:13,923.923 INFO    ] time= 19/06/2026 19:33:13
[2026-06-19 19:33:13,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:33:13,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:33:14,137.137 INFO    ] No existing commands found in stream
[2026-06-19 19:33:19,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:33:19,150.150 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 19:33:21,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:33:21,955.955 INFO    ] Checking for system updates...
[2026-06-19 19:33:21,992.992 INFO    ] 200
[2026-06-19 19:33:21,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:22,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:33:22,055.055 INFO    ] No update needed
[2026-06-19 19:33:22,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 19:33:22,092.092 INFO    ] 200
[2026-06-19 19:33:22,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:22,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:33:22,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:33:22,185.185 INFO    ] No camera update needed
[2026-06-19 19:33:22,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:33:22,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:33:22,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:33:22,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:33:24,241.241 INFO    ] ================================================
[2026-06-19 19:33:24,256.256 INFO    ] Launching Daemon at Fri Jun 19 19:33:24 IST 2026
[2026-06-19 19:33:24,267.267 INFO    ] ================================================
[2026-06-19 19:33:24,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:33:24
[2026-06-19 19:33:25,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:33:25,675.675 INFO    ] Initializing speech engine...
[2026-06-19 19:33:25,684.684 INFO    ] 2026-06-19 19:33:25
[2026-06-19 19:33:25,978.978 INFO    ] 2026-06-19 19:33:25
[2026-06-19 19:33:26,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:33:26,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:33:26,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:33:26,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:33:26,512.512 INFO    ] time= 19/06/2026 19:33:26
[2026-06-19 19:33:26,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:33:26,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:33:26,745.745 INFO    ] No existing commands found in stream
[2026-06-19 19:33:31,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:33:31,770.770 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-19 19:33:34,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:33:34,939.939 INFO    ] Checking for system updates...
[2026-06-19 19:33:34,979.979 INFO    ] 200
[2026-06-19 19:33:34,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:35,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:33:35,041.041 INFO    ] No update needed
[2026-06-19 19:33:35,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 19:33:35,080.080 INFO    ] 200
[2026-06-19 19:33:35,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:35,128.128 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:33:35,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:33:35,178.178 INFO    ] No camera update needed
[2026-06-19 19:33:35,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:33:35,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:33:35,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:33:35,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:33:37,237.237 INFO    ] ================================================
[2026-06-19 19:33:37,252.252 INFO    ] Launching Daemon at Fri Jun 19 19:33:37 IST 2026
[2026-06-19 19:33:37,263.263 INFO    ] ================================================
[2026-06-19 19:33:37,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:33:37
[2026-06-19 19:33:38,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:33:38,687.687 INFO    ] Initializing speech engine...
[2026-06-19 19:33:38,697.697 INFO    ] 2026-06-19 19:33:38
[2026-06-19 19:33:38,942.942 INFO    ] 2026-06-19 19:33:38
[2026-06-19 19:33:38,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:33:39,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:33:39,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:33:39,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:33:39,452.452 INFO    ] time= 19/06/2026 19:33:39
[2026-06-19 19:33:39,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:33:39,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:33:39,656.656 INFO    ] No existing commands found in stream
[2026-06-19 19:33:44,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:33:44,688.688 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 19:33:46,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:33:46,660.660 INFO    ] Checking for system updates...
[2026-06-19 19:33:46,696.696 INFO    ] 200
[2026-06-19 19:33:46,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:46,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:33:46,753.753 INFO    ] No update needed
[2026-06-19 19:33:46,756.756 INFO    ] Checking for camera pi updates...
[2026-06-19 19:33:46,790.790 INFO    ] 200
[2026-06-19 19:33:46,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:46,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:33:46,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:33:46,888.888 INFO    ] No camera update needed
[2026-06-19 19:33:46,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:33:46,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:33:46,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:33:46,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:33:48,943.943 INFO    ] ================================================
[2026-06-19 19:33:48,959.959 INFO    ] Launching Daemon at Fri Jun 19 19:33:48 IST 2026
[2026-06-19 19:33:48,969.969 INFO    ] ================================================
[2026-06-19 19:33:49,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:33:49
[2026-06-19 19:33:50,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:33:50,405.405 INFO    ] Initializing speech engine...
[2026-06-19 19:33:50,413.413 INFO    ] 2026-06-19 19:33:50
[2026-06-19 19:33:50,661.661 INFO    ] 2026-06-19 19:33:50
[2026-06-19 19:33:50,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:33:50,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:33:50,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:33:51,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:33:51,224.224 INFO    ] time= 19/06/2026 19:33:51
[2026-06-19 19:33:51,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:33:51,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:33:51,385.385 INFO    ] No existing commands found in stream
[2026-06-19 19:33:56,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:33:56,411.411 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 19:33:57,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:33:57,552.552 INFO    ] Checking for system updates...
[2026-06-19 19:33:57,590.590 INFO    ] 200
[2026-06-19 19:33:57,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:57,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:33:57,661.661 INFO    ] No update needed
[2026-06-19 19:33:57,664.664 INFO    ] Checking for camera pi updates...
[2026-06-19 19:33:57,700.700 INFO    ] 200
[2026-06-19 19:33:57,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:33:57,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:33:57,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:33:57,798.798 INFO    ] No camera update needed
[2026-06-19 19:33:57,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:33:57,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:33:57,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:33:57,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:33:59,859.859 INFO    ] ================================================
[2026-06-19 19:33:59,874.874 INFO    ] Launching Daemon at Fri Jun 19 19:33:59 IST 2026
[2026-06-19 19:33:59,884.884 INFO    ] ================================================
[2026-06-19 19:34:00,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:34:00
[2026-06-19 19:34:01,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:34:01,528.528 INFO    ] Initializing speech engine...
[2026-06-19 19:34:01,540.540 INFO    ] 2026-06-19 19:34:01
[2026-06-19 19:34:01,824.824 INFO    ] 2026-06-19 19:34:01
[2026-06-19 19:34:01,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:34:02,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:34:02,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:34:02,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:34:02,291.291 INFO    ] time= 19/06/2026 19:34:02
[2026-06-19 19:34:02,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:34:02,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:34:02,372.372 INFO    ] No existing commands found in stream
[2026-06-19 19:34:07,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:34:07,384.384 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 19:34:09,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:34:09,321.321 INFO    ] Checking for system updates...
[2026-06-19 19:34:09,359.359 INFO    ] 200
[2026-06-19 19:34:09,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:09,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:34:09,419.419 INFO    ] No update needed
[2026-06-19 19:34:09,422.422 INFO    ] Checking for camera pi updates...
[2026-06-19 19:34:09,457.457 INFO    ] 200
[2026-06-19 19:34:09,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:09,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:34:09,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:34:09,559.559 INFO    ] No camera update needed
[2026-06-19 19:34:09,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:34:09,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:34:09,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:34:09,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:34:11,619.619 INFO    ] ================================================
[2026-06-19 19:34:11,634.634 INFO    ] Launching Daemon at Fri Jun 19 19:34:11 IST 2026
[2026-06-19 19:34:11,645.645 INFO    ] ================================================
[2026-06-19 19:34:12,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:34:12
[2026-06-19 19:34:12,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:34:13,097.097 INFO    ] Initializing speech engine...
[2026-06-19 19:34:13,111.111 INFO    ] 2026-06-19 19:34:13
[2026-06-19 19:34:13,371.371 INFO    ] 2026-06-19 19:34:13
[2026-06-19 19:34:13,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:34:13,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:34:13,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:34:13,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:34:13,847.847 INFO    ] time= 19/06/2026 19:34:13
[2026-06-19 19:34:13,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:34:13,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:34:14,074.074 INFO    ] No existing commands found in stream
[2026-06-19 19:34:19,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:34:19,102.102 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 19:34:20,713.713 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:34:20,716.716 INFO    ] Checking for system updates...
[2026-06-19 19:34:20,752.752 INFO    ] 200
[2026-06-19 19:34:20,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:20,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:34:20,810.810 INFO    ] No update needed
[2026-06-19 19:34:20,813.813 INFO    ] Checking for camera pi updates...
[2026-06-19 19:34:20,851.851 INFO    ] 200
[2026-06-19 19:34:20,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:20,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:34:20,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:34:20,946.946 INFO    ] No camera update needed
[2026-06-19 19:34:20,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:34:20,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:34:20,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:34:20,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:34:23,003.003 INFO    ] ================================================
[2026-06-19 19:34:23,019.019 INFO    ] Launching Daemon at Fri Jun 19 19:34:23 IST 2026
[2026-06-19 19:34:23,031.031 INFO    ] ================================================
[2026-06-19 19:34:23,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:34:23
[2026-06-19 19:34:24,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:34:24,527.527 INFO    ] Initializing speech engine...
[2026-06-19 19:34:24,540.540 INFO    ] 2026-06-19 19:34:24
[2026-06-19 19:34:24,856.856 INFO    ] 2026-06-19 19:34:24
[2026-06-19 19:34:24,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:34:25,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:34:25,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:34:25,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:34:25,381.381 INFO    ] time= 19/06/2026 19:34:25
[2026-06-19 19:34:25,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:34:25,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:34:25,533.533 INFO    ] No existing commands found in stream
[2026-06-19 19:34:30,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:34:30,556.556 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 19:34:33,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:34:33,514.514 INFO    ] Checking for system updates...
[2026-06-19 19:34:33,557.557 INFO    ] 200
[2026-06-19 19:34:33,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:33,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:34:33,617.617 INFO    ] No update needed
[2026-06-19 19:34:33,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 19:34:33,656.656 INFO    ] 200
[2026-06-19 19:34:33,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:33,700.700 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:34:33,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:34:33,753.753 INFO    ] No camera update needed
[2026-06-19 19:34:33,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:34:33,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:34:33,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:34:33,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:34:35,811.811 INFO    ] ================================================
[2026-06-19 19:34:35,828.828 INFO    ] Launching Daemon at Fri Jun 19 19:34:35 IST 2026
[2026-06-19 19:34:35,838.838 INFO    ] ================================================
[2026-06-19 19:34:36,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:34:36
[2026-06-19 19:34:37,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:34:37,330.330 INFO    ] Initializing speech engine...
[2026-06-19 19:34:37,341.341 INFO    ] 2026-06-19 19:34:37
[2026-06-19 19:34:37,655.655 INFO    ] 2026-06-19 19:34:37
[2026-06-19 19:34:37,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:34:37,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:34:37,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:34:38,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:34:38,167.167 INFO    ] time= 19/06/2026 19:34:38
[2026-06-19 19:34:38,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:34:38,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:34:38,352.352 INFO    ] No existing commands found in stream
[2026-06-19 19:34:43,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:34:43,387.387 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 19:34:47,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:34:47,586.586 INFO    ] Checking for system updates...
[2026-06-19 19:34:47,623.623 INFO    ] 200
[2026-06-19 19:34:47,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:47,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:34:47,681.681 INFO    ] No update needed
[2026-06-19 19:34:47,683.683 INFO    ] Checking for camera pi updates...
[2026-06-19 19:34:47,718.718 INFO    ] 200
[2026-06-19 19:34:47,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:47,763.763 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:34:47,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:34:47,801.801 INFO    ] No camera update needed
[2026-06-19 19:34:47,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:34:47,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:34:47,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:34:47,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:34:49,857.857 INFO    ] ================================================
[2026-06-19 19:34:49,872.872 INFO    ] Launching Daemon at Fri Jun 19 19:34:49 IST 2026
[2026-06-19 19:34:49,883.883 INFO    ] ================================================
[2026-06-19 19:34:50,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:34:50
[2026-06-19 19:34:51,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:34:51,318.318 INFO    ] Initializing speech engine...
[2026-06-19 19:34:51,328.328 INFO    ] 2026-06-19 19:34:51
[2026-06-19 19:34:51,613.613 INFO    ] 2026-06-19 19:34:51
[2026-06-19 19:34:51,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:34:51,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:34:51,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:34:52,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:34:52,143.143 INFO    ] time= 19/06/2026 19:34:52
[2026-06-19 19:34:52,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:34:52,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:34:52,305.305 INFO    ] No existing commands found in stream
[2026-06-19 19:34:57,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:34:57,333.333 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 19:34:59,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:34:59,411.411 INFO    ] Checking for system updates...
[2026-06-19 19:34:59,448.448 INFO    ] 200
[2026-06-19 19:34:59,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:59,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:34:59,517.517 INFO    ] No update needed
[2026-06-19 19:34:59,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 19:34:59,556.556 INFO    ] 200
[2026-06-19 19:34:59,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:34:59,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:34:59,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:34:59,654.654 INFO    ] No camera update needed
[2026-06-19 19:34:59,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:34:59,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:34:59,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:34:59,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:35:01,713.713 INFO    ] ================================================
[2026-06-19 19:35:01,728.728 INFO    ] Launching Daemon at Fri Jun 19 19:35:01 IST 2026
[2026-06-19 19:35:01,738.738 INFO    ] ================================================
[2026-06-19 19:35:02,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:35:02
[2026-06-19 19:35:03,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:35:03,606.606 INFO    ] Initializing speech engine...
[2026-06-19 19:35:03,612.612 INFO    ] 2026-06-19 19:35:03
[2026-06-19 19:35:03,932.932 INFO    ] 2026-06-19 19:35:03
[2026-06-19 19:35:03,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:35:04,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:35:04,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:35:04,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:35:04,361.361 INFO    ] time= 19/06/2026 19:35:04
[2026-06-19 19:35:04,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:35:04,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:35:04,552.552 INFO    ] No existing commands found in stream
[2026-06-19 19:35:09,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:35:09,580.580 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 19:35:13,223.223 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:35:13,226.226 INFO    ] Checking for system updates...
[2026-06-19 19:35:13,262.262 INFO    ] 200
[2026-06-19 19:35:13,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:35:13,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:35:13,320.320 INFO    ] No update needed
[2026-06-19 19:35:13,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 19:35:13,357.357 INFO    ] 200
[2026-06-19 19:35:13,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:35:13,403.403 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:35:13,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:35:13,451.451 INFO    ] No camera update needed
[2026-06-19 19:35:13,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:35:13,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:35:13,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:35:13,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:35:15,508.508 INFO    ] ================================================
[2026-06-19 19:35:15,523.523 INFO    ] Launching Daemon at Fri Jun 19 19:35:15 IST 2026
[2026-06-19 19:35:15,533.533 INFO    ] ================================================
[2026-06-19 19:35:16,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:35:16
[2026-06-19 19:35:16,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:35:17,172.172 INFO    ] Initializing speech engine...
[2026-06-19 19:35:17,184.184 INFO    ] 2026-06-19 19:35:17
[2026-06-19 19:35:17,461.461 INFO    ] 2026-06-19 19:35:17
[2026-06-19 19:35:17,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:35:17,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:35:17,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:35:17,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:35:18,002.002 INFO    ] time= 19/06/2026 19:35:17
[2026-06-19 19:35:18,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:35:18,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:35:18,187.187 INFO    ] No existing commands found in stream
[2026-06-19 19:35:23,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:35:23,216.216 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-19 19:35:26,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:35:26,082.082 INFO    ] Checking for system updates...
[2026-06-19 19:35:26,118.118 INFO    ] 200
[2026-06-19 19:35:26,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:35:26,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:35:26,177.177 INFO    ] No update needed
[2026-06-19 19:35:26,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 19:35:26,212.212 INFO    ] 200
[2026-06-19 19:35:26,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:35:26,257.257 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:35:26,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:35:26,306.306 INFO    ] No camera update needed
[2026-06-19 19:35:26,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:35:26,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:35:26,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:35:26,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:35:28,366.366 INFO    ] ================================================
[2026-06-19 19:35:28,381.381 INFO    ] Launching Daemon at Fri Jun 19 19:35:28 IST 2026
[2026-06-19 19:35:28,391.391 INFO    ] ================================================
[2026-06-19 19:35:29,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:35:29
[2026-06-19 19:35:29,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:35:30,034.034 INFO    ] Initializing speech engine...
[2026-06-19 19:35:30,042.042 INFO    ] 2026-06-19 19:35:30
[2026-06-19 19:35:30,350.350 INFO    ] 2026-06-19 19:35:30
[2026-06-19 19:35:30,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:35:30,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:35:30,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:35:30,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:35:30,857.857 INFO    ] time= 19/06/2026 19:35:30
[2026-06-19 19:35:30,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:35:30,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:35:31,035.035 INFO    ] No existing commands found in stream
[2026-06-19 19:35:36,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:35:36,065.065 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 19:35:37,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:35:37,909.909 INFO    ] Checking for system updates...
[2026-06-19 19:35:37,947.947 INFO    ] 200
[2026-06-19 19:35:37,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:35:38,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:35:38,013.013 INFO    ] No update needed
[2026-06-19 19:35:38,016.016 INFO    ] Checking for camera pi updates...
[2026-06-19 19:35:38,052.052 INFO    ] 200
[2026-06-19 19:35:38,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:35:38,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:35:38,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:35:38,145.145 INFO    ] No camera update needed
[2026-06-19 19:35:38,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:35:38,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:35:38,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:35:38,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:35:40,206.206 INFO    ] ================================================
[2026-06-19 19:35:40,221.221 INFO    ] Launching Daemon at Fri Jun 19 19:35:40 IST 2026
[2026-06-19 19:35:40,231.231 INFO    ] ================================================
[2026-06-19 19:35:40,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:35:40
[2026-06-19 19:35:41,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:35:41,681.681 INFO    ] Initializing speech engine...
[2026-06-19 19:35:41,691.691 INFO    ] 2026-06-19 19:35:41
[2026-06-19 19:35:41,954.954 INFO    ] 2026-06-19 19:35:41
[2026-06-19 19:35:42,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:35:42,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:35:42,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:35:42,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:35:42,419.419 INFO    ] time= 19/06/2026 19:35:42
[2026-06-19 19:35:42,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:35:42,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:35:42,652.652 INFO    ] No existing commands found in stream
[2026-06-19 19:35:47,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:35:47,669.669 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 19:35:50,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:35:50,028.028 INFO    ] Checking for system updates...
[2026-06-19 19:35:50,065.065 INFO    ] 200
[2026-06-19 19:35:50,068.068 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:35:50,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:35:50,125.125 INFO    ] No update needed
[2026-06-19 19:35:50,128.128 INFO    ] Checking for camera pi updates...
[2026-06-19 19:35:50,163.163 INFO    ] 200
[2026-06-19 19:35:50,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:35:50,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:35:50,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:35:50,243.243 INFO    ] No camera update needed
[2026-06-19 19:35:50,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:35:50,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:35:50,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:35:50,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:35:52,301.301 INFO    ] ================================================
[2026-06-19 19:35:52,317.317 INFO    ] Launching Daemon at Fri Jun 19 19:35:52 IST 2026
[2026-06-19 19:35:52,327.327 INFO    ] ================================================
[2026-06-19 19:35:52,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:35:52
[2026-06-19 19:35:53,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:35:53,737.737 INFO    ] Initializing speech engine...
[2026-06-19 19:35:53,756.756 INFO    ] 2026-06-19 19:35:53
[2026-06-19 19:35:54,019.019 INFO    ] 2026-06-19 19:35:54
[2026-06-19 19:35:54,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:35:54,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:35:54,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:35:54,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:35:54,586.586 INFO    ] time= 19/06/2026 19:35:54
[2026-06-19 19:35:54,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:35:54,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:35:54,796.796 INFO    ] No existing commands found in stream
[2026-06-19 19:35:59,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:35:59,815.815 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 19:36:02,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:36:02,166.166 INFO    ] Checking for system updates...
[2026-06-19 19:36:02,207.207 INFO    ] 200
[2026-06-19 19:36:02,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:02,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:36:02,279.279 INFO    ] No update needed
[2026-06-19 19:36:02,282.282 INFO    ] Checking for camera pi updates...
[2026-06-19 19:36:02,327.327 INFO    ] 200
[2026-06-19 19:36:02,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:02,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:36:02,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:36:02,443.443 INFO    ] No camera update needed
[2026-06-19 19:36:02,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:36:02,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:36:02,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:36:02,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:36:04,511.511 INFO    ] ================================================
[2026-06-19 19:36:04,526.526 INFO    ] Launching Daemon at Fri Jun 19 19:36:04 IST 2026
[2026-06-19 19:36:04,536.536 INFO    ] ================================================
[2026-06-19 19:36:05,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:36:05
[2026-06-19 19:36:05,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:36:05,997.997 INFO    ] Initializing speech engine...
[2026-06-19 19:36:06,006.006 INFO    ] 2026-06-19 19:36:05
[2026-06-19 19:36:06,253.253 INFO    ] 2026-06-19 19:36:06
[2026-06-19 19:36:06,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:36:06,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:36:06,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:36:06,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:36:06,735.735 INFO    ] time= 19/06/2026 19:36:06
[2026-06-19 19:36:06,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:36:06,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:36:06,961.961 INFO    ] No existing commands found in stream
[2026-06-19 19:36:11,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:36:11,985.985 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 19:36:16,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:36:16,166.166 INFO    ] Checking for system updates...
[2026-06-19 19:36:16,202.202 INFO    ] 200
[2026-06-19 19:36:16,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:16,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:36:16,271.271 INFO    ] No update needed
[2026-06-19 19:36:16,274.274 INFO    ] Checking for camera pi updates...
[2026-06-19 19:36:16,310.310 INFO    ] 200
[2026-06-19 19:36:16,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:16,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:36:16,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:36:16,500.500 INFO    ] No camera update needed
[2026-06-19 19:36:16,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:36:16,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:36:16,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:36:16,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:36:18,560.560 INFO    ] ================================================
[2026-06-19 19:36:18,575.575 INFO    ] Launching Daemon at Fri Jun 19 19:36:18 IST 2026
[2026-06-19 19:36:18,586.586 INFO    ] ================================================
[2026-06-19 19:36:19,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:36:19
[2026-06-19 19:36:19,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:36:20,020.020 INFO    ] Initializing speech engine...
[2026-06-19 19:36:20,043.043 INFO    ] 2026-06-19 19:36:20
[2026-06-19 19:36:20,301.301 INFO    ] 2026-06-19 19:36:20
[2026-06-19 19:36:20,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:36:20,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:36:20,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:36:20,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:36:20,787.787 INFO    ] time= 19/06/2026 19:36:20
[2026-06-19 19:36:20,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:36:20,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:36:21,018.018 INFO    ] No existing commands found in stream
[2026-06-19 19:36:26,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:36:26,044.044 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 19:36:27,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:36:27,778.778 INFO    ] Checking for system updates...
[2026-06-19 19:36:27,818.818 INFO    ] 200
[2026-06-19 19:36:27,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:27,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:36:27,877.877 INFO    ] No update needed
[2026-06-19 19:36:27,880.880 INFO    ] Checking for camera pi updates...
[2026-06-19 19:36:27,913.913 INFO    ] 200
[2026-06-19 19:36:27,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:27,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:36:28,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:36:28,008.008 INFO    ] No camera update needed
[2026-06-19 19:36:28,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:36:28,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:36:28,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:36:28,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:36:30,064.064 INFO    ] ================================================
[2026-06-19 19:36:30,080.080 INFO    ] Launching Daemon at Fri Jun 19 19:36:30 IST 2026
[2026-06-19 19:36:30,091.091 INFO    ] ================================================
[2026-06-19 19:36:30,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:36:30
[2026-06-19 19:36:31,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:36:31,555.555 INFO    ] Initializing speech engine...
[2026-06-19 19:36:31,565.565 INFO    ] 2026-06-19 19:36:31
[2026-06-19 19:36:31,828.828 INFO    ] 2026-06-19 19:36:31
[2026-06-19 19:36:31,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:36:32,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:36:32,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:36:32,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:36:32,221.221 INFO    ] time= 19/06/2026 19:36:32
[2026-06-19 19:36:32,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:36:32,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:36:32,413.413 INFO    ] No existing commands found in stream
[2026-06-19 19:36:37,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:36:37,436.436 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 19:36:39,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:36:39,282.282 INFO    ] Checking for system updates...
[2026-06-19 19:36:39,318.318 INFO    ] 200
[2026-06-19 19:36:39,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:39,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:36:39,384.384 INFO    ] No update needed
[2026-06-19 19:36:39,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 19:36:39,421.421 INFO    ] 200
[2026-06-19 19:36:39,424.424 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:39,466.466 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:36:39,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:36:39,512.512 INFO    ] No camera update needed
[2026-06-19 19:36:39,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:36:39,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:36:39,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:36:39,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:36:41,574.574 INFO    ] ================================================
[2026-06-19 19:36:41,589.589 INFO    ] Launching Daemon at Fri Jun 19 19:36:41 IST 2026
[2026-06-19 19:36:41,600.600 INFO    ] ================================================
[2026-06-19 19:36:42,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:36:42
[2026-06-19 19:36:42,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:36:43,003.003 INFO    ] Initializing speech engine...
[2026-06-19 19:36:43,009.009 INFO    ] 2026-06-19 19:36:43
[2026-06-19 19:36:43,301.301 INFO    ] 2026-06-19 19:36:43
[2026-06-19 19:36:43,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:36:43,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:36:43,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:36:43,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:36:43,784.784 INFO    ] time= 19/06/2026 19:36:43
[2026-06-19 19:36:43,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:36:43,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:36:43,964.964 INFO    ] No existing commands found in stream
[2026-06-19 19:36:48,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:36:48,999.999 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 19:36:49,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:36:49,858.858 INFO    ] Checking for system updates...
[2026-06-19 19:36:49,895.895 INFO    ] 200
[2026-06-19 19:36:49,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:49,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:36:49,952.952 INFO    ] No update needed
[2026-06-19 19:36:49,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 19:36:49,988.988 INFO    ] 200
[2026-06-19 19:36:49,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:36:50,031.031 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:36:50,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:36:50,062.062 INFO    ] No camera update needed
[2026-06-19 19:36:50,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:36:50,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:36:50,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:36:50,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:36:52,119.119 INFO    ] ================================================
[2026-06-19 19:36:52,135.135 INFO    ] Launching Daemon at Fri Jun 19 19:36:52 IST 2026
[2026-06-19 19:36:52,146.146 INFO    ] ================================================
[2026-06-19 19:36:52,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:36:52
[2026-06-19 19:36:53,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:36:53,577.577 INFO    ] Initializing speech engine...
[2026-06-19 19:36:53,586.586 INFO    ] 2026-06-19 19:36:53
[2026-06-19 19:36:53,886.886 INFO    ] 2026-06-19 19:36:53
[2026-06-19 19:36:53,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:36:54,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:36:54,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:36:54,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:36:54,313.313 INFO    ] time= 19/06/2026 19:36:54
[2026-06-19 19:36:54,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:36:54,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:36:54,411.411 INFO    ] No existing commands found in stream
[2026-06-19 19:36:59,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:36:59,449.449 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 19:37:03,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:37:03,406.406 INFO    ] Checking for system updates...
[2026-06-19 19:37:03,454.454 INFO    ] 200
[2026-06-19 19:37:03,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:03,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:37:03,523.523 INFO    ] No update needed
[2026-06-19 19:37:03,527.527 INFO    ] Checking for camera pi updates...
[2026-06-19 19:37:03,568.568 INFO    ] 200
[2026-06-19 19:37:03,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:03,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:37:03,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:37:03,673.673 INFO    ] No camera update needed
[2026-06-19 19:37:03,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:37:03,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:37:03,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:37:03,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:37:05,727.727 INFO    ] ================================================
[2026-06-19 19:37:05,743.743 INFO    ] Launching Daemon at Fri Jun 19 19:37:05 IST 2026
[2026-06-19 19:37:05,754.754 INFO    ] ================================================
[2026-06-19 19:37:06,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:37:06
[2026-06-19 19:37:06,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:37:07,216.216 INFO    ] Initializing speech engine...
[2026-06-19 19:37:07,224.224 INFO    ] 2026-06-19 19:37:07
[2026-06-19 19:37:07,524.524 INFO    ] 2026-06-19 19:37:07
[2026-06-19 19:37:07,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:37:07,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:37:07,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:37:07,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:37:08,012.012 INFO    ] time= 19/06/2026 19:37:07
[2026-06-19 19:37:08,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:37:08,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:37:08,195.195 INFO    ] No existing commands found in stream
[2026-06-19 19:37:13,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:37:13,210.210 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 19:37:14,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:37:14,428.428 INFO    ] Checking for system updates...
[2026-06-19 19:37:14,468.468 INFO    ] 200
[2026-06-19 19:37:14,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:14,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:37:14,527.527 INFO    ] No update needed
[2026-06-19 19:37:14,529.529 INFO    ] Checking for camera pi updates...
[2026-06-19 19:37:14,563.563 INFO    ] 200
[2026-06-19 19:37:14,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:14,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:37:14,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:37:14,651.651 INFO    ] No camera update needed
[2026-06-19 19:37:14,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:37:14,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:37:14,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:37:14,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:37:16,708.708 INFO    ] ================================================
[2026-06-19 19:37:16,723.723 INFO    ] Launching Daemon at Fri Jun 19 19:37:16 IST 2026
[2026-06-19 19:37:16,734.734 INFO    ] ================================================
[2026-06-19 19:37:17,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:37:17
[2026-06-19 19:37:17,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:37:18,184.184 INFO    ] Initializing speech engine...
[2026-06-19 19:37:18,191.191 INFO    ] 2026-06-19 19:37:18
[2026-06-19 19:37:18,488.488 INFO    ] 2026-06-19 19:37:18
[2026-06-19 19:37:18,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:37:18,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:37:18,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:37:18,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:37:18,874.874 INFO    ] time= 19/06/2026 19:37:18
[2026-06-19 19:37:18,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:37:18,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:37:19,000.000 INFO    ] No existing commands found in stream
[2026-06-19 19:37:24,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:37:24,017.017 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 19:37:24,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:37:24,718.718 INFO    ] Checking for system updates...
[2026-06-19 19:37:24,754.754 INFO    ] 200
[2026-06-19 19:37:24,757.757 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:24,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:37:24,812.812 INFO    ] No update needed
[2026-06-19 19:37:24,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 19:37:24,849.849 INFO    ] 200
[2026-06-19 19:37:24,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:24,892.892 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:37:24,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:37:24,935.935 INFO    ] No camera update needed
[2026-06-19 19:37:24,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:37:24,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:37:24,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:37:24,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:37:26,992.992 INFO    ] ================================================
[2026-06-19 19:37:27,007.007 INFO    ] Launching Daemon at Fri Jun 19 19:37:27 IST 2026
[2026-06-19 19:37:27,018.018 INFO    ] ================================================
[2026-06-19 19:37:27,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:37:27
[2026-06-19 19:37:28,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:37:28,437.437 INFO    ] Initializing speech engine...
[2026-06-19 19:37:28,452.452 INFO    ] 2026-06-19 19:37:28
[2026-06-19 19:37:28,720.720 INFO    ] 2026-06-19 19:37:28
[2026-06-19 19:37:28,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:37:28,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:37:29,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:37:29,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:37:29,190.190 INFO    ] time= 19/06/2026 19:37:29
[2026-06-19 19:37:29,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:37:29,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:37:29,417.417 INFO    ] No existing commands found in stream
[2026-06-19 19:37:34,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:37:34,441.441 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 19:37:38,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:37:38,370.370 INFO    ] Checking for system updates...
[2026-06-19 19:37:38,408.408 INFO    ] 200
[2026-06-19 19:37:38,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:38,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:37:38,469.469 INFO    ] No update needed
[2026-06-19 19:37:38,471.471 INFO    ] Checking for camera pi updates...
[2026-06-19 19:37:38,506.506 INFO    ] 200
[2026-06-19 19:37:38,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:38,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:37:38,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:37:38,601.601 INFO    ] No camera update needed
[2026-06-19 19:37:38,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:37:38,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:37:38,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:37:38,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:37:40,663.663 INFO    ] ================================================
[2026-06-19 19:37:40,678.678 INFO    ] Launching Daemon at Fri Jun 19 19:37:40 IST 2026
[2026-06-19 19:37:40,688.688 INFO    ] ================================================
[2026-06-19 19:37:41,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:37:41
[2026-06-19 19:37:41,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:37:42,100.100 INFO    ] Initializing speech engine...
[2026-06-19 19:37:42,105.105 INFO    ] 2026-06-19 19:37:42
[2026-06-19 19:37:42,401.401 INFO    ] 2026-06-19 19:37:42
[2026-06-19 19:37:42,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:37:42,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:37:42,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:37:42,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:37:42,826.826 INFO    ] time= 19/06/2026 19:37:42
[2026-06-19 19:37:42,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:37:42,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:37:42,980.980 INFO    ] No existing commands found in stream
[2026-06-19 19:37:48,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:37:48,008.008 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 19:37:51,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:37:51,083.083 INFO    ] Checking for system updates...
[2026-06-19 19:37:51,120.120 INFO    ] 200
[2026-06-19 19:37:51,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:51,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:37:51,187.187 INFO    ] No update needed
[2026-06-19 19:37:51,190.190 INFO    ] Checking for camera pi updates...
[2026-06-19 19:37:51,229.229 INFO    ] 200
[2026-06-19 19:37:51,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:37:51,279.279 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:37:51,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:37:51,330.330 INFO    ] No camera update needed
[2026-06-19 19:37:51,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:37:51,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:37:51,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:37:51,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:37:53,388.388 INFO    ] ================================================
[2026-06-19 19:37:53,403.403 INFO    ] Launching Daemon at Fri Jun 19 19:37:53 IST 2026
[2026-06-19 19:37:53,414.414 INFO    ] ================================================
[2026-06-19 19:37:53,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:37:53
[2026-06-19 19:37:54,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:37:54,864.864 INFO    ] Initializing speech engine...
[2026-06-19 19:37:54,873.873 INFO    ] 2026-06-19 19:37:54
[2026-06-19 19:37:55,142.142 INFO    ] 2026-06-19 19:37:55
[2026-06-19 19:37:55,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:37:55,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:37:55,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:37:55,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:37:55,560.560 INFO    ] time= 19/06/2026 19:37:55
[2026-06-19 19:37:55,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:37:55,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:37:55,648.648 INFO    ] No existing commands found in stream
[2026-06-19 19:38:00,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:38:00,665.665 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 19:38:04,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:38:04,494.494 INFO    ] Checking for system updates...
[2026-06-19 19:38:04,530.530 INFO    ] 200
[2026-06-19 19:38:04,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:04,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:38:04,588.588 INFO    ] No update needed
[2026-06-19 19:38:04,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 19:38:04,624.624 INFO    ] 200
[2026-06-19 19:38:04,626.626 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:04,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:38:04,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:38:04,712.712 INFO    ] No camera update needed
[2026-06-19 19:38:04,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:38:04,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:38:04,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:38:04,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:38:06,767.767 INFO    ] ================================================
[2026-06-19 19:38:06,782.782 INFO    ] Launching Daemon at Fri Jun 19 19:38:06 IST 2026
[2026-06-19 19:38:06,793.793 INFO    ] ================================================
[2026-06-19 19:38:07,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:38:07
[2026-06-19 19:38:07,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:38:08,210.210 INFO    ] Initializing speech engine...
[2026-06-19 19:38:08,220.220 INFO    ] 2026-06-19 19:38:08
[2026-06-19 19:38:08,477.477 INFO    ] 2026-06-19 19:38:08
[2026-06-19 19:38:08,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:38:08,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:38:08,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:38:08,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:38:08,929.929 INFO    ] time= 19/06/2026 19:38:08
[2026-06-19 19:38:08,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:38:09,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:38:09,157.157 INFO    ] No existing commands found in stream
[2026-06-19 19:38:14,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:38:14,186.186 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 19:38:17,494.494 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:38:17,496.496 INFO    ] Checking for system updates...
[2026-06-19 19:38:17,533.533 INFO    ] 200
[2026-06-19 19:38:17,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:17,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:38:17,591.591 INFO    ] No update needed
[2026-06-19 19:38:17,593.593 INFO    ] Checking for camera pi updates...
[2026-06-19 19:38:17,627.627 INFO    ] 200
[2026-06-19 19:38:17,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:17,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:38:17,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:38:17,824.824 INFO    ] No camera update needed
[2026-06-19 19:38:17,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:38:17,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:38:17,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:38:17,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:38:19,879.879 INFO    ] ================================================
[2026-06-19 19:38:19,894.894 INFO    ] Launching Daemon at Fri Jun 19 19:38:19 IST 2026
[2026-06-19 19:38:19,905.905 INFO    ] ================================================
[2026-06-19 19:38:20,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:38:20
[2026-06-19 19:38:21,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:38:21,330.330 INFO    ] Initializing speech engine...
[2026-06-19 19:38:21,338.338 INFO    ] 2026-06-19 19:38:21
[2026-06-19 19:38:21,628.628 INFO    ] 2026-06-19 19:38:21
[2026-06-19 19:38:21,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:38:21,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:38:21,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:38:22,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:38:22,123.123 INFO    ] time= 19/06/2026 19:38:22
[2026-06-19 19:38:22,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:38:22,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:38:22,387.387 INFO    ] No existing commands found in stream
[2026-06-19 19:38:27,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:38:27,413.413 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 19:38:30,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:38:30,308.308 INFO    ] Checking for system updates...
[2026-06-19 19:38:30,345.345 INFO    ] 200
[2026-06-19 19:38:30,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:30,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:38:30,408.408 INFO    ] No update needed
[2026-06-19 19:38:30,411.411 INFO    ] Checking for camera pi updates...
[2026-06-19 19:38:30,444.444 INFO    ] 200
[2026-06-19 19:38:30,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:30,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:38:30,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:38:30,559.559 INFO    ] No camera update needed
[2026-06-19 19:38:30,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:38:30,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:38:30,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:38:30,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:38:32,616.616 INFO    ] ================================================
[2026-06-19 19:38:32,633.633 INFO    ] Launching Daemon at Fri Jun 19 19:38:32 IST 2026
[2026-06-19 19:38:32,645.645 INFO    ] ================================================
[2026-06-19 19:38:33,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:38:33
[2026-06-19 19:38:33,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:38:34,138.138 INFO    ] Initializing speech engine...
[2026-06-19 19:38:34,147.147 INFO    ] 2026-06-19 19:38:34
[2026-06-19 19:38:34,416.416 INFO    ] 2026-06-19 19:38:34
[2026-06-19 19:38:34,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:38:34,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:38:34,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:38:34,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:38:34,959.959 INFO    ] time= 19/06/2026 19:38:34
[2026-06-19 19:38:34,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:38:34,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:38:35,109.109 INFO    ] No existing commands found in stream
[2026-06-19 19:38:40,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:38:40,128.128 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 19:38:42,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:38:42,754.754 INFO    ] Checking for system updates...
[2026-06-19 19:38:42,790.790 INFO    ] 200
[2026-06-19 19:38:42,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:42,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:38:42,848.848 INFO    ] No update needed
[2026-06-19 19:38:42,850.850 INFO    ] Checking for camera pi updates...
[2026-06-19 19:38:42,884.884 INFO    ] 200
[2026-06-19 19:38:42,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:42,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:38:42,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:38:42,980.980 INFO    ] No camera update needed
[2026-06-19 19:38:42,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:38:42,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:38:42,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:38:42,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:38:45,038.038 INFO    ] ================================================
[2026-06-19 19:38:45,053.053 INFO    ] Launching Daemon at Fri Jun 19 19:38:45 IST 2026
[2026-06-19 19:38:45,063.063 INFO    ] ================================================
[2026-06-19 19:38:45,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:38:45
[2026-06-19 19:38:46,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:38:46,498.498 INFO    ] Initializing speech engine...
[2026-06-19 19:38:46,513.513 INFO    ] 2026-06-19 19:38:46
[2026-06-19 19:38:46,779.779 INFO    ] 2026-06-19 19:38:46
[2026-06-19 19:38:46,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:38:47,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:38:47,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:38:47,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:38:47,337.337 INFO    ] time= 19/06/2026 19:38:47
[2026-06-19 19:38:47,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:38:47,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:38:47,523.523 INFO    ] No existing commands found in stream
[2026-06-19 19:38:52,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:38:52,557.557 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 19:38:54,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:38:54,589.589 INFO    ] Checking for system updates...
[2026-06-19 19:38:54,625.625 INFO    ] 200
[2026-06-19 19:38:54,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:54,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:38:54,682.682 INFO    ] No update needed
[2026-06-19 19:38:54,685.685 INFO    ] Checking for camera pi updates...
[2026-06-19 19:38:54,718.718 INFO    ] 200
[2026-06-19 19:38:54,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:38:54,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:38:54,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:38:54,816.816 INFO    ] No camera update needed
[2026-06-19 19:38:54,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:38:54,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:38:54,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:38:54,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:38:56,869.869 INFO    ] ================================================
[2026-06-19 19:38:56,885.885 INFO    ] Launching Daemon at Fri Jun 19 19:38:56 IST 2026
[2026-06-19 19:38:56,895.895 INFO    ] ================================================
[2026-06-19 19:38:57,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:38:57
[2026-06-19 19:38:58,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:38:58,317.317 INFO    ] Initializing speech engine...
[2026-06-19 19:38:58,332.332 INFO    ] 2026-06-19 19:38:58
[2026-06-19 19:38:58,583.583 INFO    ] 2026-06-19 19:38:58
[2026-06-19 19:38:58,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:38:58,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:38:58,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:38:59,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:38:59,079.079 INFO    ] time= 19/06/2026 19:38:59
[2026-06-19 19:38:59,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:38:59,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:38:59,290.290 INFO    ] No existing commands found in stream
[2026-06-19 19:39:04,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:39:04,308.308 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 19:39:07,639.639 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:39:07,641.641 INFO    ] Checking for system updates...
[2026-06-19 19:39:07,678.678 INFO    ] 200
[2026-06-19 19:39:07,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:07,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:39:07,735.735 INFO    ] No update needed
[2026-06-19 19:39:07,737.737 INFO    ] Checking for camera pi updates...
[2026-06-19 19:39:07,771.771 INFO    ] 200
[2026-06-19 19:39:07,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:07,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:39:07,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:39:07,862.862 INFO    ] No camera update needed
[2026-06-19 19:39:07,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:39:07,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:39:07,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:39:07,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:39:09,920.920 INFO    ] ================================================
[2026-06-19 19:39:09,935.935 INFO    ] Launching Daemon at Fri Jun 19 19:39:09 IST 2026
[2026-06-19 19:39:09,946.946 INFO    ] ================================================
[2026-06-19 19:39:10,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:39:10
[2026-06-19 19:39:11,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:39:11,532.532 INFO    ] Initializing speech engine...
[2026-06-19 19:39:11,541.541 INFO    ] 2026-06-19 19:39:11
[2026-06-19 19:39:11,793.793 INFO    ] 2026-06-19 19:39:11
[2026-06-19 19:39:11,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:39:12,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:39:12,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:39:12,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:39:12,281.281 INFO    ] time= 19/06/2026 19:39:12
[2026-06-19 19:39:12,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:39:12,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:39:12,497.497 INFO    ] No existing commands found in stream
[2026-06-19 19:39:17,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:39:17,521.521 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 19:39:21,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:39:21,248.248 INFO    ] Checking for system updates...
[2026-06-19 19:39:21,284.284 INFO    ] 200
[2026-06-19 19:39:21,287.287 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:21,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:39:21,342.342 INFO    ] No update needed
[2026-06-19 19:39:21,345.345 INFO    ] Checking for camera pi updates...
[2026-06-19 19:39:21,383.383 INFO    ] 200
[2026-06-19 19:39:21,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:21,426.426 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:39:21,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:39:21,472.472 INFO    ] No camera update needed
[2026-06-19 19:39:21,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:39:21,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:39:21,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:39:21,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:39:23,528.528 INFO    ] ================================================
[2026-06-19 19:39:23,543.543 INFO    ] Launching Daemon at Fri Jun 19 19:39:23 IST 2026
[2026-06-19 19:39:23,554.554 INFO    ] ================================================
[2026-06-19 19:39:24,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:39:24
[2026-06-19 19:39:24,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:39:25,189.189 INFO    ] Initializing speech engine...
[2026-06-19 19:39:25,202.202 INFO    ] 2026-06-19 19:39:25
[2026-06-19 19:39:25,510.510 INFO    ] 2026-06-19 19:39:25
[2026-06-19 19:39:25,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:39:25,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:39:25,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:39:25,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:39:26,021.021 INFO    ] time= 19/06/2026 19:39:26
[2026-06-19 19:39:26,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:39:26,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:39:26,196.196 INFO    ] No existing commands found in stream
[2026-06-19 19:39:31,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:39:31,230.230 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 19:39:33,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:39:33,802.802 INFO    ] Checking for system updates...
[2026-06-19 19:39:33,843.843 INFO    ] 200
[2026-06-19 19:39:33,846.846 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:33,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:39:33,902.902 INFO    ] No update needed
[2026-06-19 19:39:33,904.904 INFO    ] Checking for camera pi updates...
[2026-06-19 19:39:33,939.939 INFO    ] 200
[2026-06-19 19:39:33,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:33,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:39:34,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:39:34,037.037 INFO    ] No camera update needed
[2026-06-19 19:39:34,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:39:34,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:39:34,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:39:34,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:39:36,097.097 INFO    ] ================================================
[2026-06-19 19:39:36,112.112 INFO    ] Launching Daemon at Fri Jun 19 19:39:36 IST 2026
[2026-06-19 19:39:36,123.123 INFO    ] ================================================
[2026-06-19 19:39:36,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:39:36
[2026-06-19 19:39:37,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:39:37,546.546 INFO    ] Initializing speech engine...
[2026-06-19 19:39:37,555.555 INFO    ] 2026-06-19 19:39:37
[2026-06-19 19:39:37,802.802 INFO    ] 2026-06-19 19:39:37
[2026-06-19 19:39:37,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:39:38,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:39:38,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:39:38,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:39:38,309.309 INFO    ] time= 19/06/2026 19:39:38
[2026-06-19 19:39:38,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:39:38,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:39:38,527.527 INFO    ] No existing commands found in stream
[2026-06-19 19:39:43,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:39:43,562.562 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 19:39:44,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:39:44,481.481 INFO    ] Checking for system updates...
[2026-06-19 19:39:44,517.517 INFO    ] 200
[2026-06-19 19:39:44,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:44,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:39:44,574.574 INFO    ] No update needed
[2026-06-19 19:39:44,576.576 INFO    ] Checking for camera pi updates...
[2026-06-19 19:39:44,615.615 INFO    ] 200
[2026-06-19 19:39:44,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:44,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:39:44,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:39:44,713.713 INFO    ] No camera update needed
[2026-06-19 19:39:44,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:39:44,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:39:44,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:39:44,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:39:46,773.773 INFO    ] ================================================
[2026-06-19 19:39:46,788.788 INFO    ] Launching Daemon at Fri Jun 19 19:39:46 IST 2026
[2026-06-19 19:39:46,799.799 INFO    ] ================================================
[2026-06-19 19:39:47,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:39:47
[2026-06-19 19:39:47,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:39:48,206.206 INFO    ] Initializing speech engine...
[2026-06-19 19:39:48,213.213 INFO    ] 2026-06-19 19:39:48
[2026-06-19 19:39:48,514.514 INFO    ] 2026-06-19 19:39:48
[2026-06-19 19:39:48,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:39:48,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:39:48,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:39:48,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:39:49,018.018 INFO    ] time= 19/06/2026 19:39:48
[2026-06-19 19:39:49,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:39:49,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:39:49,247.247 INFO    ] No existing commands found in stream
[2026-06-19 19:39:54,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:39:54,260.260 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 19:39:55,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:39:55,205.205 INFO    ] Checking for system updates...
[2026-06-19 19:39:55,241.241 INFO    ] 200
[2026-06-19 19:39:55,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:55,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:39:55,301.301 INFO    ] No update needed
[2026-06-19 19:39:55,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 19:39:55,338.338 INFO    ] 200
[2026-06-19 19:39:55,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:39:55,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:39:55,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:39:55,438.438 INFO    ] No camera update needed
[2026-06-19 19:39:55,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:39:55,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:39:55,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:39:55,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:39:57,495.495 INFO    ] ================================================
[2026-06-19 19:39:57,511.511 INFO    ] Launching Daemon at Fri Jun 19 19:39:57 IST 2026
[2026-06-19 19:39:57,522.522 INFO    ] ================================================
[2026-06-19 19:39:58,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:39:58
[2026-06-19 19:39:58,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:39:58,987.987 INFO    ] Initializing speech engine...
[2026-06-19 19:39:58,995.995 INFO    ] 2026-06-19 19:39:58
[2026-06-19 19:39:59,256.256 INFO    ] 2026-06-19 19:39:59
[2026-06-19 19:39:59,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:39:59,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:39:59,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:39:59,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:39:59,803.803 INFO    ] time= 19/06/2026 19:39:59
[2026-06-19 19:39:59,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:39:59,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:39:59,960.960 INFO    ] No existing commands found in stream
[2026-06-19 19:40:04,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:40:04,986.986 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 19:40:08,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:40:08,081.081 INFO    ] Checking for system updates...
[2026-06-19 19:40:08,121.121 INFO    ] 200
[2026-06-19 19:40:08,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:08,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:40:08,180.180 INFO    ] No update needed
[2026-06-19 19:40:08,182.182 INFO    ] Checking for camera pi updates...
[2026-06-19 19:40:08,216.216 INFO    ] 200
[2026-06-19 19:40:08,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:08,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:40:08,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:40:08,308.308 INFO    ] No camera update needed
[2026-06-19 19:40:08,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:40:08,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:40:08,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:40:08,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:40:10,364.364 INFO    ] ================================================
[2026-06-19 19:40:10,380.380 INFO    ] Launching Daemon at Fri Jun 19 19:40:10 IST 2026
[2026-06-19 19:40:10,391.391 INFO    ] ================================================
[2026-06-19 19:40:10,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:40:10
[2026-06-19 19:40:11,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:40:11,827.827 INFO    ] Initializing speech engine...
[2026-06-19 19:40:11,836.836 INFO    ] 2026-06-19 19:40:11
[2026-06-19 19:40:12,084.084 INFO    ] 2026-06-19 19:40:12
[2026-06-19 19:40:12,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:40:12,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:40:12,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:40:12,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:40:12,642.642 INFO    ] time= 19/06/2026 19:40:12
[2026-06-19 19:40:12,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:40:12,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:40:12,794.794 INFO    ] No existing commands found in stream
[2026-06-19 19:40:17,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:40:17,812.812 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-19 19:40:21,824.824 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:40:21,827.827 INFO    ] Checking for system updates...
[2026-06-19 19:40:21,863.863 INFO    ] 200
[2026-06-19 19:40:21,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:21,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:40:21,921.921 INFO    ] No update needed
[2026-06-19 19:40:21,924.924 INFO    ] Checking for camera pi updates...
[2026-06-19 19:40:21,957.957 INFO    ] 200
[2026-06-19 19:40:21,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:22,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:40:22,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:40:22,141.141 INFO    ] No camera update needed
[2026-06-19 19:40:22,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:40:22,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:40:22,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:40:22,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:40:24,199.199 INFO    ] ================================================
[2026-06-19 19:40:24,215.215 INFO    ] Launching Daemon at Fri Jun 19 19:40:24 IST 2026
[2026-06-19 19:40:24,226.226 INFO    ] ================================================
[2026-06-19 19:40:24,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:40:24
[2026-06-19 19:40:25,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:40:25,828.828 INFO    ] Initializing speech engine...
[2026-06-19 19:40:25,837.837 INFO    ] 2026-06-19 19:40:25
[2026-06-19 19:40:26,122.122 INFO    ] 2026-06-19 19:40:26
[2026-06-19 19:40:26,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:40:26,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:40:26,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:40:26,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:40:26,656.656 INFO    ] time= 19/06/2026 19:40:26
[2026-06-19 19:40:26,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:40:26,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:40:26,807.807 INFO    ] No existing commands found in stream
[2026-06-19 19:40:31,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:40:31,830.830 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-19 19:40:33,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:40:33,402.402 INFO    ] Checking for system updates...
[2026-06-19 19:40:33,440.440 INFO    ] 200
[2026-06-19 19:40:33,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:33,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:40:33,501.501 INFO    ] No update needed
[2026-06-19 19:40:33,503.503 INFO    ] Checking for camera pi updates...
[2026-06-19 19:40:33,538.538 INFO    ] 200
[2026-06-19 19:40:33,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:33,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:40:33,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:40:33,635.635 INFO    ] No camera update needed
[2026-06-19 19:40:33,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:40:33,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:40:33,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:40:33,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:40:35,691.691 INFO    ] ================================================
[2026-06-19 19:40:35,707.707 INFO    ] Launching Daemon at Fri Jun 19 19:40:35 IST 2026
[2026-06-19 19:40:35,718.718 INFO    ] ================================================
[2026-06-19 19:40:36,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:40:36
[2026-06-19 19:40:36,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:40:37,126.126 INFO    ] Initializing speech engine...
[2026-06-19 19:40:37,145.145 INFO    ] 2026-06-19 19:40:37
[2026-06-19 19:40:37,390.390 INFO    ] 2026-06-19 19:40:37
[2026-06-19 19:40:37,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:40:37,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:40:37,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:40:37,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:40:37,937.937 INFO    ] time= 19/06/2026 19:40:37
[2026-06-19 19:40:37,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:40:37,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:40:38,092.092 INFO    ] No existing commands found in stream
[2026-06-19 19:40:43,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:40:43,108.108 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 19:40:44,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:40:44,660.660 INFO    ] Checking for system updates...
[2026-06-19 19:40:44,701.701 INFO    ] 200
[2026-06-19 19:40:44,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:44,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:40:44,758.758 INFO    ] No update needed
[2026-06-19 19:40:44,761.761 INFO    ] Checking for camera pi updates...
[2026-06-19 19:40:44,794.794 INFO    ] 200
[2026-06-19 19:40:44,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:44,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:40:44,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:40:44,886.886 INFO    ] No camera update needed
[2026-06-19 19:40:44,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:40:44,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:40:44,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:40:44,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:40:46,942.942 INFO    ] ================================================
[2026-06-19 19:40:46,958.958 INFO    ] Launching Daemon at Fri Jun 19 19:40:46 IST 2026
[2026-06-19 19:40:46,969.969 INFO    ] ================================================
[2026-06-19 19:40:47,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:40:47
[2026-06-19 19:40:48,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:40:48,452.452 INFO    ] Initializing speech engine...
[2026-06-19 19:40:48,459.459 INFO    ] 2026-06-19 19:40:48
[2026-06-19 19:40:48,722.722 INFO    ] 2026-06-19 19:40:48
[2026-06-19 19:40:48,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:40:49,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:40:49,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:40:49,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:40:49,264.264 INFO    ] time= 19/06/2026 19:40:49
[2026-06-19 19:40:49,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:40:49,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:40:49,417.417 INFO    ] No existing commands found in stream
[2026-06-19 19:40:54,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:40:54,433.433 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 19:40:58,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:40:58,663.663 INFO    ] Checking for system updates...
[2026-06-19 19:40:58,705.705 INFO    ] 200
[2026-06-19 19:40:58,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:58,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:40:58,766.766 INFO    ] No update needed
[2026-06-19 19:40:58,769.769 INFO    ] Checking for camera pi updates...
[2026-06-19 19:40:58,808.808 INFO    ] 200
[2026-06-19 19:40:58,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:40:58,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:40:58,898.898 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:40:58,901.901 INFO    ] No camera update needed
[2026-06-19 19:40:58,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:40:58,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:40:58,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:40:58,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:41:00,959.959 INFO    ] ================================================
[2026-06-19 19:41:00,974.974 INFO    ] Launching Daemon at Fri Jun 19 19:41:00 IST 2026
[2026-06-19 19:41:00,985.985 INFO    ] ================================================
[2026-06-19 19:41:01,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:41:01
[2026-06-19 19:41:02,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:41:02,809.809 INFO    ] Initializing speech engine...
[2026-06-19 19:41:02,820.820 INFO    ] 2026-06-19 19:41:02
[2026-06-19 19:41:03,160.160 INFO    ] 2026-06-19 19:41:03
[2026-06-19 19:41:03,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:41:03,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:41:03,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:41:03,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:41:03,683.683 INFO    ] time= 19/06/2026 19:41:03
[2026-06-19 19:41:03,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:41:03,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:41:03,871.871 INFO    ] No existing commands found in stream
[2026-06-19 19:41:08,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:41:08,902.902 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 19:41:10,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:41:10,153.153 INFO    ] Checking for system updates...
[2026-06-19 19:41:10,188.188 INFO    ] 200
[2026-06-19 19:41:10,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:41:10,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:41:10,247.247 INFO    ] No update needed
[2026-06-19 19:41:10,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 19:41:10,287.287 INFO    ] 200
[2026-06-19 19:41:10,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:41:10,330.330 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:41:10,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:41:10,379.379 INFO    ] No camera update needed
[2026-06-19 19:41:10,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:41:10,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:41:10,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:41:10,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:41:12,437.437 INFO    ] ================================================
[2026-06-19 19:41:12,452.452 INFO    ] Launching Daemon at Fri Jun 19 19:41:12 IST 2026
[2026-06-19 19:41:12,464.464 INFO    ] ================================================
[2026-06-19 19:41:13,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:41:13
[2026-06-19 19:41:13,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:41:13,932.932 INFO    ] Initializing speech engine...
[2026-06-19 19:41:13,942.942 INFO    ] 2026-06-19 19:41:13
[2026-06-19 19:41:14,189.189 INFO    ] 2026-06-19 19:41:14
[2026-06-19 19:41:14,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:41:14,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:41:14,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:41:14,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:41:14,707.707 INFO    ] time= 19/06/2026 19:41:14
[2026-06-19 19:41:14,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:41:14,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:41:14,870.870 INFO    ] No existing commands found in stream
[2026-06-19 19:41:19,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:41:19,886.886 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 19:41:23,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:41:23,958.958 INFO    ] Checking for system updates...
[2026-06-19 19:41:23,994.994 INFO    ] 200
[2026-06-19 19:41:23,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:41:24,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:41:24,051.051 INFO    ] No update needed
[2026-06-19 19:41:24,054.054 INFO    ] Checking for camera pi updates...
[2026-06-19 19:41:24,087.087 INFO    ] 200
[2026-06-19 19:41:24,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:41:24,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:41:24,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:41:24,185.185 INFO    ] No camera update needed
[2026-06-19 19:41:24,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:41:24,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:41:24,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:41:24,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:41:26,242.242 INFO    ] ================================================
[2026-06-19 19:41:26,258.258 INFO    ] Launching Daemon at Fri Jun 19 19:41:26 IST 2026
[2026-06-19 19:41:26,269.269 INFO    ] ================================================
[2026-06-19 19:41:26,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:41:26
[2026-06-19 19:41:27,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:41:27,717.717 INFO    ] Initializing speech engine...
[2026-06-19 19:41:27,726.726 INFO    ] 2026-06-19 19:41:27
[2026-06-19 19:41:27,972.972 INFO    ] 2026-06-19 19:41:27
[2026-06-19 19:41:28,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:41:28,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:41:28,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:41:28,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:41:28,458.458 INFO    ] time= 19/06/2026 19:41:28
[2026-06-19 19:41:28,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:41:28,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:41:28,680.680 INFO    ] No existing commands found in stream
[2026-06-19 19:41:33,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:41:33,697.697 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 19:41:36,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:41:36,493.493 INFO    ] Checking for system updates...
[2026-06-19 19:41:36,530.530 INFO    ] 200
[2026-06-19 19:41:36,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:41:36,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:41:36,588.588 INFO    ] No update needed
[2026-06-19 19:41:36,591.591 INFO    ] Checking for camera pi updates...
[2026-06-19 19:41:36,624.624 INFO    ] 200
[2026-06-19 19:41:36,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:41:36,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:41:36,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:41:36,714.714 INFO    ] No camera update needed
[2026-06-19 19:41:36,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:41:36,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:41:36,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:41:36,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:41:38,771.771 INFO    ] ================================================
[2026-06-19 19:41:38,786.786 INFO    ] Launching Daemon at Fri Jun 19 19:41:38 IST 2026
[2026-06-19 19:41:38,797.797 INFO    ] ================================================
[2026-06-19 19:41:39,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:41:39
[2026-06-19 19:41:39,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:41:40,220.220 INFO    ] Initializing speech engine...
[2026-06-19 19:41:40,244.244 INFO    ] 2026-06-19 19:41:40
[2026-06-19 19:41:40,516.516 INFO    ] 2026-06-19 19:41:40
[2026-06-19 19:41:40,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:41:40,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:41:40,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:41:40,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:41:41,018.018 INFO    ] time= 19/06/2026 19:41:41
[2026-06-19 19:41:41,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:41:41,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:41:41,288.288 INFO    ] No existing commands found in stream
[2026-06-19 19:41:46,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:41:46,311.311 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 19:41:48,074.074 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:41:48,077.077 INFO    ] Checking for system updates...
[2026-06-19 19:41:48,113.113 INFO    ] 200
[2026-06-19 19:41:48,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:41:48,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:41:48,173.173 INFO    ] No update needed
[2026-06-19 19:41:48,176.176 INFO    ] Checking for camera pi updates...
[2026-06-19 19:41:48,211.211 INFO    ] 200
[2026-06-19 19:41:48,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:41:48,260.260 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:41:48,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:41:48,301.301 INFO    ] No camera update needed
[2026-06-19 19:41:48,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:41:48,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:41:48,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:41:48,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:41:50,360.360 INFO    ] ================================================
[2026-06-19 19:41:50,375.375 INFO    ] Launching Daemon at Fri Jun 19 19:41:50 IST 2026
[2026-06-19 19:41:50,386.386 INFO    ] ================================================
[2026-06-19 19:41:50,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:41:50
[2026-06-19 19:41:51,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:41:51,813.813 INFO    ] Initializing speech engine...
[2026-06-19 19:41:51,829.829 INFO    ] 2026-06-19 19:41:51
[2026-06-19 19:41:52,111.111 INFO    ] 2026-06-19 19:41:52
[2026-06-19 19:41:52,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:41:52,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:41:52,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:41:52,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:41:52,530.530 INFO    ] time= 19/06/2026 19:41:52
[2026-06-19 19:41:52,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:41:52,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:41:52,703.703 INFO    ] No existing commands found in stream
[2026-06-19 19:41:57,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:41:57,731.731 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 19:41:59,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:41:59,826.826 INFO    ] Checking for system updates...
[2026-06-19 19:41:59,865.865 INFO    ] 200
[2026-06-19 19:41:59,868.868 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:41:59,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:41:59,923.923 INFO    ] No update needed
[2026-06-19 19:41:59,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 19:41:59,964.964 INFO    ] 200
[2026-06-19 19:41:59,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:00,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:42:00,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:42:00,059.059 INFO    ] No camera update needed
[2026-06-19 19:42:00,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:42:00,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:42:00,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:42:00,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:42:02,123.123 INFO    ] ================================================
[2026-06-19 19:42:02,140.140 INFO    ] Launching Daemon at Fri Jun 19 19:42:02 IST 2026
[2026-06-19 19:42:02,156.156 INFO    ] ================================================
[2026-06-19 19:42:02,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:42:02
[2026-06-19 19:42:03,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:42:03,678.678 INFO    ] Initializing speech engine...
[2026-06-19 19:42:03,687.687 INFO    ] 2026-06-19 19:42:03
[2026-06-19 19:42:03,933.933 INFO    ] 2026-06-19 19:42:03
[2026-06-19 19:42:03,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:42:04,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:42:04,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:42:04,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:42:04,486.486 INFO    ] time= 19/06/2026 19:42:04
[2026-06-19 19:42:04,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:42:04,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:42:04,639.639 INFO    ] No existing commands found in stream
[2026-06-19 19:42:09,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:42:09,663.663 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 19:42:10,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:42:10,433.433 INFO    ] Checking for system updates...
[2026-06-19 19:42:10,470.470 INFO    ] 200
[2026-06-19 19:42:10,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:10,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:42:10,531.531 INFO    ] No update needed
[2026-06-19 19:42:10,533.533 INFO    ] Checking for camera pi updates...
[2026-06-19 19:42:11,096.096 INFO    ] 200
[2026-06-19 19:42:11,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:11,144.144 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:42:11,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:42:11,191.191 INFO    ] No camera update needed
[2026-06-19 19:42:11,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:42:11,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:42:11,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:42:11,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:42:13,250.250 INFO    ] ================================================
[2026-06-19 19:42:13,265.265 INFO    ] Launching Daemon at Fri Jun 19 19:42:13 IST 2026
[2026-06-19 19:42:13,276.276 INFO    ] ================================================
[2026-06-19 19:42:13,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:42:13
[2026-06-19 19:42:14,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:42:14,700.700 INFO    ] Initializing speech engine...
[2026-06-19 19:42:14,719.719 INFO    ] 2026-06-19 19:42:14
[2026-06-19 19:42:14,966.966 INFO    ] 2026-06-19 19:42:14
[2026-06-19 19:42:15,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:42:15,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:42:15,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:42:15,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:42:15,471.471 INFO    ] time= 19/06/2026 19:42:15
[2026-06-19 19:42:15,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:42:15,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:42:15,676.676 INFO    ] No existing commands found in stream
[2026-06-19 19:42:20,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:42:20,695.695 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 19:42:21,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:42:21,230.230 INFO    ] Checking for system updates...
[2026-06-19 19:42:21,269.269 INFO    ] 200
[2026-06-19 19:42:21,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:21,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:42:21,329.329 INFO    ] No update needed
[2026-06-19 19:42:21,332.332 INFO    ] Checking for camera pi updates...
[2026-06-19 19:42:21,367.367 INFO    ] 200
[2026-06-19 19:42:21,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:21,412.412 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:42:21,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:42:21,460.460 INFO    ] No camera update needed
[2026-06-19 19:42:21,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:42:21,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:42:21,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:42:21,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:42:23,517.517 INFO    ] ================================================
[2026-06-19 19:42:23,532.532 INFO    ] Launching Daemon at Fri Jun 19 19:42:23 IST 2026
[2026-06-19 19:42:23,543.543 INFO    ] ================================================
[2026-06-19 19:42:24,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:42:24
[2026-06-19 19:42:24,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:42:24,996.996 INFO    ] Initializing speech engine...
[2026-06-19 19:42:25,005.005 INFO    ] 2026-06-19 19:42:25
[2026-06-19 19:42:25,252.252 INFO    ] 2026-06-19 19:42:25
[2026-06-19 19:42:25,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:42:25,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:42:25,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:42:25,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:42:25,751.751 INFO    ] time= 19/06/2026 19:42:25
[2026-06-19 19:42:25,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:42:25,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:42:25,965.965 INFO    ] No existing commands found in stream
[2026-06-19 19:42:30,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:42:30,981.981 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 19:42:33,923.923 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:42:33,925.925 INFO    ] Checking for system updates...
[2026-06-19 19:42:33,964.964 INFO    ] 200
[2026-06-19 19:42:33,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:34,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:42:34,027.027 INFO    ] No update needed
[2026-06-19 19:42:34,030.030 INFO    ] Checking for camera pi updates...
[2026-06-19 19:42:34,066.066 INFO    ] 200
[2026-06-19 19:42:34,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:34,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:42:34,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:42:34,169.169 INFO    ] No camera update needed
[2026-06-19 19:42:34,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:42:34,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:42:34,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:42:34,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:42:36,232.232 INFO    ] ================================================
[2026-06-19 19:42:36,247.247 INFO    ] Launching Daemon at Fri Jun 19 19:42:36 IST 2026
[2026-06-19 19:42:36,257.257 INFO    ] ================================================
[2026-06-19 19:42:36,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:42:36
[2026-06-19 19:42:37,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:42:37,667.667 INFO    ] Initializing speech engine...
[2026-06-19 19:42:37,673.673 INFO    ] 2026-06-19 19:42:37
[2026-06-19 19:42:37,970.970 INFO    ] 2026-06-19 19:42:37
[2026-06-19 19:42:38,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:42:38,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:42:38,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:42:38,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:42:38,483.483 INFO    ] time= 19/06/2026 19:42:38
[2026-06-19 19:42:38,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:42:38,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:42:38,753.753 INFO    ] No existing commands found in stream
[2026-06-19 19:42:43,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:42:43,781.781 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 19:42:44,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:42:44,632.632 INFO    ] Checking for system updates...
[2026-06-19 19:42:44,668.668 INFO    ] 200
[2026-06-19 19:42:44,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:44,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:42:44,726.726 INFO    ] No update needed
[2026-06-19 19:42:44,729.729 INFO    ] Checking for camera pi updates...
[2026-06-19 19:42:44,762.762 INFO    ] 200
[2026-06-19 19:42:44,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:44,805.805 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:42:44,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:42:44,859.859 INFO    ] No camera update needed
[2026-06-19 19:42:44,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:42:44,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:42:44,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:42:44,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:42:46,916.916 INFO    ] ================================================
[2026-06-19 19:42:46,931.931 INFO    ] Launching Daemon at Fri Jun 19 19:42:46 IST 2026
[2026-06-19 19:42:46,941.941 INFO    ] ================================================
[2026-06-19 19:42:47,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:42:47
[2026-06-19 19:42:48,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:42:48,562.562 INFO    ] Initializing speech engine...
[2026-06-19 19:42:48,577.577 INFO    ] 2026-06-19 19:42:48
[2026-06-19 19:42:48,886.886 INFO    ] 2026-06-19 19:42:48
[2026-06-19 19:42:48,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:42:49,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:42:49,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:42:49,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:42:49,393.393 INFO    ] time= 19/06/2026 19:42:49
[2026-06-19 19:42:49,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:42:49,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:42:49,572.572 INFO    ] No existing commands found in stream
[2026-06-19 19:42:54,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:42:54,601.601 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 19:42:56,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:42:56,520.520 INFO    ] Checking for system updates...
[2026-06-19 19:42:56,557.557 INFO    ] 200
[2026-06-19 19:42:56,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:56,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:42:56,614.614 INFO    ] No update needed
[2026-06-19 19:42:56,617.617 INFO    ] Checking for camera pi updates...
[2026-06-19 19:42:56,651.651 INFO    ] 200
[2026-06-19 19:42:56,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:42:56,696.696 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:42:56,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:42:56,745.745 INFO    ] No camera update needed
[2026-06-19 19:42:56,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:42:56,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:42:56,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:42:56,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:42:58,803.803 INFO    ] ================================================
[2026-06-19 19:42:58,819.819 INFO    ] Launching Daemon at Fri Jun 19 19:42:58 IST 2026
[2026-06-19 19:42:58,830.830 INFO    ] ================================================
[2026-06-19 19:42:59,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:42:59
[2026-06-19 19:43:00,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:43:00,351.351 INFO    ] Initializing speech engine...
[2026-06-19 19:43:00,365.365 INFO    ] 2026-06-19 19:43:00
[2026-06-19 19:43:00,678.678 INFO    ] 2026-06-19 19:43:00
[2026-06-19 19:43:00,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:43:00,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:43:00,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:43:01,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:43:01,197.197 INFO    ] time= 19/06/2026 19:43:01
[2026-06-19 19:43:01,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:43:01,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:43:01,365.365 INFO    ] No existing commands found in stream
[2026-06-19 19:43:06,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:43:06,382.382 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 19:43:09,218.218 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:43:09,221.221 INFO    ] Checking for system updates...
[2026-06-19 19:43:09,258.258 INFO    ] 200
[2026-06-19 19:43:09,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:43:09,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:43:09,318.318 INFO    ] No update needed
[2026-06-19 19:43:09,320.320 INFO    ] Checking for camera pi updates...
[2026-06-19 19:43:09,356.356 INFO    ] 200
[2026-06-19 19:43:09,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:43:09,405.405 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:43:09,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:43:09,451.451 INFO    ] No camera update needed
[2026-06-19 19:43:09,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:43:09,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:43:09,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:43:09,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:43:11,507.507 INFO    ] ================================================
[2026-06-19 19:43:11,523.523 INFO    ] Launching Daemon at Fri Jun 19 19:43:11 IST 2026
[2026-06-19 19:43:11,533.533 INFO    ] ================================================
[2026-06-19 19:43:12,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:43:12
[2026-06-19 19:43:12,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:43:13,027.027 INFO    ] Initializing speech engine...
[2026-06-19 19:43:13,036.036 INFO    ] 2026-06-19 19:43:13
[2026-06-19 19:43:13,307.307 INFO    ] 2026-06-19 19:43:13
[2026-06-19 19:43:13,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:43:13,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:43:13,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:43:13,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:43:13,869.869 INFO    ] time= 19/06/2026 19:43:13
[2026-06-19 19:43:13,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:43:13,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:43:14,048.048 INFO    ] No existing commands found in stream
[2026-06-19 19:43:19,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:43:19,077.077 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 19:43:22,965.965 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:43:22,968.968 INFO    ] Checking for system updates...
[2026-06-19 19:43:23,005.005 INFO    ] 200
[2026-06-19 19:43:23,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:43:23,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:43:23,063.063 INFO    ] No update needed
[2026-06-19 19:43:23,070.070 INFO    ] Checking for camera pi updates...
[2026-06-19 19:43:23,104.104 INFO    ] 200
[2026-06-19 19:43:23,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:43:23,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:43:23,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:43:23,203.203 INFO    ] No camera update needed
[2026-06-19 19:43:23,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:43:23,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:43:23,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:43:23,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:43:25,259.259 INFO    ] ================================================
[2026-06-19 19:43:25,274.274 INFO    ] Launching Daemon at Fri Jun 19 19:43:25 IST 2026
[2026-06-19 19:43:25,285.285 INFO    ] ================================================
[2026-06-19 19:43:25,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:43:25
[2026-06-19 19:43:26,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:43:26,726.726 INFO    ] Initializing speech engine...
[2026-06-19 19:43:26,735.735 INFO    ] 2026-06-19 19:43:26
[2026-06-19 19:43:26,987.987 INFO    ] 2026-06-19 19:43:26
[2026-06-19 19:43:27,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:43:27,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:43:27,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:43:27,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:43:27,458.458 INFO    ] time= 19/06/2026 19:43:27
[2026-06-19 19:43:27,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:43:27,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:43:27,684.684 INFO    ] No existing commands found in stream
[2026-06-19 19:43:32,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:43:32,715.715 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 19:43:35,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:43:35,418.418 INFO    ] Checking for system updates...
[2026-06-19 19:43:35,454.454 INFO    ] 200
[2026-06-19 19:43:35,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:43:35,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:43:35,518.518 INFO    ] No update needed
[2026-06-19 19:43:35,520.520 INFO    ] Checking for camera pi updates...
[2026-06-19 19:43:35,553.553 INFO    ] 200
[2026-06-19 19:43:35,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:43:35,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:43:35,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:43:35,645.645 INFO    ] No camera update needed
[2026-06-19 19:43:35,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:43:35,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:43:35,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:43:35,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:43:37,699.699 INFO    ] ================================================
[2026-06-19 19:43:37,715.715 INFO    ] Launching Daemon at Fri Jun 19 19:43:37 IST 2026
[2026-06-19 19:43:37,726.726 INFO    ] ================================================
[2026-06-19 19:43:38,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:43:38
[2026-06-19 19:43:38,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:43:39,148.148 INFO    ] Initializing speech engine...
[2026-06-19 19:43:39,168.168 INFO    ] 2026-06-19 19:43:39
[2026-06-19 19:43:39,420.420 INFO    ] 2026-06-19 19:43:39
[2026-06-19 19:43:39,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:43:39,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:43:39,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:43:39,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:43:39,970.970 INFO    ] time= 19/06/2026 19:43:39
[2026-06-19 19:43:39,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:43:40,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:43:40,151.151 INFO    ] No existing commands found in stream
[2026-06-19 19:43:45,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:43:45,168.168 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 19:43:49,329.329 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:43:49,332.332 INFO    ] Checking for system updates...
[2026-06-19 19:43:49,368.368 INFO    ] 200
[2026-06-19 19:43:49,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:43:49,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:43:49,427.427 INFO    ] No update needed
[2026-06-19 19:43:49,429.429 INFO    ] Checking for camera pi updates...
[2026-06-19 19:43:49,463.463 INFO    ] 200
[2026-06-19 19:43:49,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:43:49,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:43:49,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:43:49,552.552 INFO    ] No camera update needed
[2026-06-19 19:43:49,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:43:49,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:43:49,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:43:49,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:43:51,608.608 INFO    ] ================================================
[2026-06-19 19:43:51,623.623 INFO    ] Launching Daemon at Fri Jun 19 19:43:51 IST 2026
[2026-06-19 19:43:51,635.635 INFO    ] ================================================
[2026-06-19 19:43:52,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:43:52
[2026-06-19 19:43:52,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:43:53,081.081 INFO    ] Initializing speech engine...
[2026-06-19 19:43:53,087.087 INFO    ] 2026-06-19 19:43:53
[2026-06-19 19:43:53,334.334 INFO    ] 2026-06-19 19:43:53
[2026-06-19 19:43:53,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:43:53,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:43:53,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:43:53,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:43:53,843.843 INFO    ] time= 19/06/2026 19:43:53
[2026-06-19 19:43:53,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:43:53,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:43:54,043.043 INFO    ] No existing commands found in stream
[2026-06-19 19:43:59,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:43:59,062.062 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 19:44:00,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:44:00,767.767 INFO    ] Checking for system updates...
[2026-06-19 19:44:00,804.804 INFO    ] 200
[2026-06-19 19:44:00,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:00,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:44:00,868.868 INFO    ] No update needed
[2026-06-19 19:44:00,870.870 INFO    ] Checking for camera pi updates...
[2026-06-19 19:44:00,904.904 INFO    ] 200
[2026-06-19 19:44:00,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:00,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:44:01,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:44:01,007.007 INFO    ] No camera update needed
[2026-06-19 19:44:01,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:44:01,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:44:01,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:44:01,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:44:03,066.066 INFO    ] ================================================
[2026-06-19 19:44:03,081.081 INFO    ] Launching Daemon at Fri Jun 19 19:44:03 IST 2026
[2026-06-19 19:44:03,093.093 INFO    ] ================================================
[2026-06-19 19:44:03,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:44:03
[2026-06-19 19:44:04,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:44:04,742.742 INFO    ] Initializing speech engine...
[2026-06-19 19:44:04,755.755 INFO    ] 2026-06-19 19:44:04
[2026-06-19 19:44:05,068.068 INFO    ] 2026-06-19 19:44:05
[2026-06-19 19:44:05,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:44:05,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:44:05,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:44:05,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:44:05,590.590 INFO    ] time= 19/06/2026 19:44:05
[2026-06-19 19:44:05,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:44:05,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:44:05,749.749 INFO    ] No existing commands found in stream
[2026-06-19 19:44:10,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:44:10,772.772 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 19:44:11,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:44:11,294.294 INFO    ] Checking for system updates...
[2026-06-19 19:44:11,335.335 INFO    ] 200
[2026-06-19 19:44:11,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:11,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:44:11,395.395 INFO    ] No update needed
[2026-06-19 19:44:11,398.398 INFO    ] Checking for camera pi updates...
[2026-06-19 19:44:11,433.433 INFO    ] 200
[2026-06-19 19:44:11,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:11,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:44:11,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:44:11,529.529 INFO    ] No camera update needed
[2026-06-19 19:44:11,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:44:11,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:44:11,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:44:11,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:44:13,587.587 INFO    ] ================================================
[2026-06-19 19:44:13,603.603 INFO    ] Launching Daemon at Fri Jun 19 19:44:13 IST 2026
[2026-06-19 19:44:13,615.615 INFO    ] ================================================
[2026-06-19 19:44:14,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:44:14
[2026-06-19 19:44:14,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:44:15,070.070 INFO    ] Initializing speech engine...
[2026-06-19 19:44:15,076.076 INFO    ] 2026-06-19 19:44:15
[2026-06-19 19:44:15,334.334 INFO    ] 2026-06-19 19:44:15
[2026-06-19 19:44:15,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:44:15,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:44:15,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:44:15,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:44:15,885.885 INFO    ] time= 19/06/2026 19:44:15
[2026-06-19 19:44:15,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:44:15,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:44:16,026.026 INFO    ] No existing commands found in stream
[2026-06-19 19:44:21,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:44:21,055.055 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 19:44:22,596.596 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:44:22,599.599 INFO    ] Checking for system updates...
[2026-06-19 19:44:22,635.635 INFO    ] 200
[2026-06-19 19:44:22,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:22,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:44:22,695.695 INFO    ] No update needed
[2026-06-19 19:44:22,697.697 INFO    ] Checking for camera pi updates...
[2026-06-19 19:44:22,735.735 INFO    ] 200
[2026-06-19 19:44:22,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:22,784.784 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:44:22,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:44:22,833.833 INFO    ] No camera update needed
[2026-06-19 19:44:22,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:44:22,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:44:22,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:44:22,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:44:24,890.890 INFO    ] ================================================
[2026-06-19 19:44:24,905.905 INFO    ] Launching Daemon at Fri Jun 19 19:44:24 IST 2026
[2026-06-19 19:44:24,916.916 INFO    ] ================================================
[2026-06-19 19:44:25,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:44:25
[2026-06-19 19:44:26,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:44:26,330.330 INFO    ] Initializing speech engine...
[2026-06-19 19:44:26,344.344 INFO    ] 2026-06-19 19:44:26
[2026-06-19 19:44:26,611.611 INFO    ] 2026-06-19 19:44:26
[2026-06-19 19:44:26,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:44:26,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:44:26,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:44:27,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:44:27,068.068 INFO    ] time= 19/06/2026 19:44:27
[2026-06-19 19:44:27,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:44:27,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:44:27,309.309 INFO    ] No existing commands found in stream
[2026-06-19 19:44:32,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:44:32,339.339 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 19:44:34,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:44:34,061.061 INFO    ] Checking for system updates...
[2026-06-19 19:44:34,101.101 INFO    ] 200
[2026-06-19 19:44:34,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:34,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:44:34,159.159 INFO    ] No update needed
[2026-06-19 19:44:34,161.161 INFO    ] Checking for camera pi updates...
[2026-06-19 19:44:34,203.203 INFO    ] 200
[2026-06-19 19:44:34,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:34,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:44:34,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:44:34,382.382 INFO    ] No camera update needed
[2026-06-19 19:44:34,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:44:34,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:44:34,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:44:34,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:44:36,438.438 INFO    ] ================================================
[2026-06-19 19:44:36,454.454 INFO    ] Launching Daemon at Fri Jun 19 19:44:36 IST 2026
[2026-06-19 19:44:36,466.466 INFO    ] ================================================
[2026-06-19 19:44:37,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:44:37
[2026-06-19 19:44:37,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:44:37,880.880 INFO    ] Initializing speech engine...
[2026-06-19 19:44:37,885.885 INFO    ] 2026-06-19 19:44:37
[2026-06-19 19:44:38,178.178 INFO    ] 2026-06-19 19:44:38
[2026-06-19 19:44:38,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:44:38,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:44:38,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:44:38,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:44:38,745.745 INFO    ] time= 19/06/2026 19:44:38
[2026-06-19 19:44:38,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:44:38,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:44:38,903.903 INFO    ] No existing commands found in stream
[2026-06-19 19:44:43,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:44:43,936.936 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 19:44:47,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:44:47,442.442 INFO    ] Checking for system updates...
[2026-06-19 19:44:47,479.479 INFO    ] 200
[2026-06-19 19:44:47,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:47,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:44:47,538.538 INFO    ] No update needed
[2026-06-19 19:44:47,540.540 INFO    ] Checking for camera pi updates...
[2026-06-19 19:44:47,574.574 INFO    ] 200
[2026-06-19 19:44:47,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:47,618.618 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:44:47,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:44:47,652.652 INFO    ] No camera update needed
[2026-06-19 19:44:47,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:44:47,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:44:47,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:44:47,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:44:49,707.707 INFO    ] ================================================
[2026-06-19 19:44:49,723.723 INFO    ] Launching Daemon at Fri Jun 19 19:44:49 IST 2026
[2026-06-19 19:44:49,733.733 INFO    ] ================================================
[2026-06-19 19:44:50,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:44:50
[2026-06-19 19:44:50,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:44:51,262.262 INFO    ] Initializing speech engine...
[2026-06-19 19:44:51,273.273 INFO    ] 2026-06-19 19:44:51
[2026-06-19 19:44:51,582.582 INFO    ] 2026-06-19 19:44:51
[2026-06-19 19:44:51,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:44:51,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:44:51,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:44:52,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:44:52,106.106 INFO    ] time= 19/06/2026 19:44:52
[2026-06-19 19:44:52,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:44:52,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:44:52,247.247 INFO    ] No existing commands found in stream
[2026-06-19 19:44:57,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:44:57,275.275 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 19:44:58,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:44:58,278.278 INFO    ] Checking for system updates...
[2026-06-19 19:44:58,319.319 INFO    ] 200
[2026-06-19 19:44:58,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:58,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:44:58,383.383 INFO    ] No update needed
[2026-06-19 19:44:58,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 19:44:58,424.424 INFO    ] 200
[2026-06-19 19:44:58,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:44:58,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:44:58,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:44:58,518.518 INFO    ] No camera update needed
[2026-06-19 19:44:58,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:44:58,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:44:58,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:44:58,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:45:00,574.574 INFO    ] ================================================
[2026-06-19 19:45:00,589.589 INFO    ] Launching Daemon at Fri Jun 19 19:45:00 IST 2026
[2026-06-19 19:45:00,600.600 INFO    ] ================================================
[2026-06-19 19:45:01,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:45:01
[2026-06-19 19:45:02,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:45:02,679.679 INFO    ] Initializing speech engine...
[2026-06-19 19:45:02,697.697 INFO    ] 2026-06-19 19:45:02
[2026-06-19 19:45:03,062.062 INFO    ] 2026-06-19 19:45:03
[2026-06-19 19:45:03,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:45:03,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:45:03,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:45:03,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:45:03,684.684 INFO    ] time= 19/06/2026 19:45:03
[2026-06-19 19:45:03,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:45:03,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:45:03,883.883 INFO    ] No existing commands found in stream
[2026-06-19 19:45:08,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:45:08,918.918 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 19:45:09,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:45:09,717.717 INFO    ] Checking for system updates...
[2026-06-19 19:45:09,758.758 INFO    ] 200
[2026-06-19 19:45:09,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:09,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:45:09,819.819 INFO    ] No update needed
[2026-06-19 19:45:09,822.822 INFO    ] Checking for camera pi updates...
[2026-06-19 19:45:09,856.856 INFO    ] 200
[2026-06-19 19:45:09,859.859 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:09,905.905 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:45:09,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:45:09,963.963 INFO    ] No camera update needed
[2026-06-19 19:45:09,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:45:09,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:45:09,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:45:09,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:45:12,022.022 INFO    ] ================================================
[2026-06-19 19:45:12,038.038 INFO    ] Launching Daemon at Fri Jun 19 19:45:12 IST 2026
[2026-06-19 19:45:12,049.049 INFO    ] ================================================
[2026-06-19 19:45:12,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:45:12
[2026-06-19 19:45:13,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:45:13,520.520 INFO    ] Initializing speech engine...
[2026-06-19 19:45:13,529.529 INFO    ] 2026-06-19 19:45:13
[2026-06-19 19:45:13,790.790 INFO    ] 2026-06-19 19:45:13
[2026-06-19 19:45:13,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:45:14,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:45:14,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:45:14,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:45:14,331.331 INFO    ] time= 19/06/2026 19:45:14
[2026-06-19 19:45:14,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:45:14,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:45:14,462.462 INFO    ] No existing commands found in stream
[2026-06-19 19:45:19,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:45:19,498.498 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 19:45:20,973.973 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:45:20,976.976 INFO    ] Checking for system updates...
[2026-06-19 19:45:21,012.012 INFO    ] 200
[2026-06-19 19:45:21,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:21,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:45:21,070.070 INFO    ] No update needed
[2026-06-19 19:45:21,073.073 INFO    ] Checking for camera pi updates...
[2026-06-19 19:45:21,110.110 INFO    ] 200
[2026-06-19 19:45:21,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:21,161.161 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:45:21,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:45:21,225.225 INFO    ] No camera update needed
[2026-06-19 19:45:21,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:45:21,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:45:21,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:45:21,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:45:23,282.282 INFO    ] ================================================
[2026-06-19 19:45:23,299.299 INFO    ] Launching Daemon at Fri Jun 19 19:45:23 IST 2026
[2026-06-19 19:45:23,311.311 INFO    ] ================================================
[2026-06-19 19:45:23,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:45:23
[2026-06-19 19:45:24,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:45:24,727.727 INFO    ] Initializing speech engine...
[2026-06-19 19:45:24,736.736 INFO    ] 2026-06-19 19:45:24
[2026-06-19 19:45:25,026.026 INFO    ] 2026-06-19 19:45:24
[2026-06-19 19:45:25,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:45:25,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:45:25,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:45:25,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:45:25,443.443 INFO    ] time= 19/06/2026 19:45:25
[2026-06-19 19:45:25,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:45:25,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:45:25,609.609 INFO    ] No existing commands found in stream
[2026-06-19 19:45:30,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:45:30,637.637 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 19:45:32,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:45:32,037.037 INFO    ] Checking for system updates...
[2026-06-19 19:45:32,082.082 INFO    ] 200
[2026-06-19 19:45:32,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:32,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:45:32,155.155 INFO    ] No update needed
[2026-06-19 19:45:32,159.159 INFO    ] Checking for camera pi updates...
[2026-06-19 19:45:32,196.196 INFO    ] 200
[2026-06-19 19:45:32,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:32,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:45:32,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:45:32,304.304 INFO    ] No camera update needed
[2026-06-19 19:45:32,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:45:32,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:45:32,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:45:32,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:45:34,364.364 INFO    ] ================================================
[2026-06-19 19:45:34,379.379 INFO    ] Launching Daemon at Fri Jun 19 19:45:34 IST 2026
[2026-06-19 19:45:34,390.390 INFO    ] ================================================
[2026-06-19 19:45:35,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:45:35
[2026-06-19 19:45:35,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:45:36,022.022 INFO    ] Initializing speech engine...
[2026-06-19 19:45:36,034.034 INFO    ] 2026-06-19 19:45:36
[2026-06-19 19:45:36,323.323 INFO    ] 2026-06-19 19:45:36
[2026-06-19 19:45:36,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:45:36,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:45:36,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:45:36,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:45:36,868.868 INFO    ] time= 19/06/2026 19:45:36
[2026-06-19 19:45:36,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:45:36,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:45:37,027.027 INFO    ] No existing commands found in stream
[2026-06-19 19:45:42,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:45:42,055.055 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 19:45:44,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:45:44,098.098 INFO    ] Checking for system updates...
[2026-06-19 19:45:44,135.135 INFO    ] 200
[2026-06-19 19:45:44,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:44,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:45:44,195.195 INFO    ] No update needed
[2026-06-19 19:45:44,198.198 INFO    ] Checking for camera pi updates...
[2026-06-19 19:45:44,233.233 INFO    ] 200
[2026-06-19 19:45:44,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:44,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:45:44,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:45:44,326.326 INFO    ] No camera update needed
[2026-06-19 19:45:44,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:45:44,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:45:44,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:45:44,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:45:46,385.385 INFO    ] ================================================
[2026-06-19 19:45:46,400.400 INFO    ] Launching Daemon at Fri Jun 19 19:45:46 IST 2026
[2026-06-19 19:45:46,411.411 INFO    ] ================================================
[2026-06-19 19:45:46,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:45:46
[2026-06-19 19:45:47,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:45:47,857.857 INFO    ] Initializing speech engine...
[2026-06-19 19:45:47,872.872 INFO    ] 2026-06-19 19:45:47
[2026-06-19 19:45:48,160.160 INFO    ] 2026-06-19 19:45:48
[2026-06-19 19:45:48,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:45:48,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:45:48,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:45:48,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:45:48,585.585 INFO    ] time= 19/06/2026 19:45:48
[2026-06-19 19:45:48,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:45:48,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:45:48,673.673 INFO    ] No existing commands found in stream
[2026-06-19 19:45:53,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:45:53,712.712 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 19:45:56,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:45:56,501.501 INFO    ] Checking for system updates...
[2026-06-19 19:45:56,539.539 INFO    ] 200
[2026-06-19 19:45:56,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:56,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:45:56,601.601 INFO    ] No update needed
[2026-06-19 19:45:56,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 19:45:56,639.639 INFO    ] 200
[2026-06-19 19:45:56,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:45:56,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:45:56,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:45:56,731.731 INFO    ] No camera update needed
[2026-06-19 19:45:56,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:45:56,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:45:56,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:45:56,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:45:58,790.790 INFO    ] ================================================
[2026-06-19 19:45:58,805.805 INFO    ] Launching Daemon at Fri Jun 19 19:45:58 IST 2026
[2026-06-19 19:45:58,816.816 INFO    ] ================================================
[2026-06-19 19:45:59,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:45:59
[2026-06-19 19:45:59,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:46:00,229.229 INFO    ] Initializing speech engine...
[2026-06-19 19:46:00,238.238 INFO    ] 2026-06-19 19:46:00
[2026-06-19 19:46:00,530.530 INFO    ] 2026-06-19 19:46:00
[2026-06-19 19:46:00,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:46:00,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:46:00,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:46:00,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:46:00,903.903 INFO    ] time= 19/06/2026 19:46:00
[2026-06-19 19:46:00,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:46:00,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:46:01,029.029 INFO    ] No existing commands found in stream
[2026-06-19 19:46:06,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:46:06,057.057 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 19:46:08,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:46:08,596.596 INFO    ] Checking for system updates...
[2026-06-19 19:46:08,633.633 INFO    ] 200
[2026-06-19 19:46:08,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:08,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:46:08,708.708 INFO    ] No update needed
[2026-06-19 19:46:08,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 19:46:08,745.745 INFO    ] 200
[2026-06-19 19:46:08,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:08,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:46:08,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:46:08,846.846 INFO    ] No camera update needed
[2026-06-19 19:46:08,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:46:08,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:46:08,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:46:08,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:46:10,906.906 INFO    ] ================================================
[2026-06-19 19:46:10,921.921 INFO    ] Launching Daemon at Fri Jun 19 19:46:10 IST 2026
[2026-06-19 19:46:10,932.932 INFO    ] ================================================
[2026-06-19 19:46:11,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:46:11
[2026-06-19 19:46:12,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:46:12,533.533 INFO    ] Initializing speech engine...
[2026-06-19 19:46:12,547.547 INFO    ] 2026-06-19 19:46:12
[2026-06-19 19:46:12,825.825 INFO    ] 2026-06-19 19:46:12
[2026-06-19 19:46:12,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:46:13,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:46:13,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:46:13,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:46:13,369.369 INFO    ] time= 19/06/2026 19:46:13
[2026-06-19 19:46:13,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:46:13,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:46:13,546.546 INFO    ] No existing commands found in stream
[2026-06-19 19:46:18,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:46:18,586.586 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 19:46:22,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:46:22,843.843 INFO    ] Checking for system updates...
[2026-06-19 19:46:22,882.882 INFO    ] 200
[2026-06-19 19:46:22,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:22,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:46:22,946.946 INFO    ] No update needed
[2026-06-19 19:46:22,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 19:46:22,987.987 INFO    ] 200
[2026-06-19 19:46:22,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:23,045.045 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:46:23,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:46:23,098.098 INFO    ] No camera update needed
[2026-06-19 19:46:23,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:46:23,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:46:23,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:46:23,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:46:25,160.160 INFO    ] ================================================
[2026-06-19 19:46:25,176.176 INFO    ] Launching Daemon at Fri Jun 19 19:46:25 IST 2026
[2026-06-19 19:46:25,187.187 INFO    ] ================================================
[2026-06-19 19:46:25,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:46:25
[2026-06-19 19:46:26,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:46:26,643.643 INFO    ] Initializing speech engine...
[2026-06-19 19:46:26,650.650 INFO    ] 2026-06-19 19:46:26
[2026-06-19 19:46:26,950.950 INFO    ] 2026-06-19 19:46:26
[2026-06-19 19:46:26,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:46:27,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:46:27,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:46:27,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:46:27,532.532 INFO    ] time= 19/06/2026 19:46:27
[2026-06-19 19:46:27,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:46:27,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:46:27,735.735 INFO    ] No existing commands found in stream
[2026-06-19 19:46:32,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:46:32,761.761 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 19:46:35,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:46:35,064.064 INFO    ] Checking for system updates...
[2026-06-19 19:46:35,101.101 INFO    ] 200
[2026-06-19 19:46:35,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:35,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:46:35,159.159 INFO    ] No update needed
[2026-06-19 19:46:35,161.161 INFO    ] Checking for camera pi updates...
[2026-06-19 19:46:35,195.195 INFO    ] 200
[2026-06-19 19:46:35,198.198 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:35,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:46:35,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:46:35,381.381 INFO    ] No camera update needed
[2026-06-19 19:46:35,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:46:35,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:46:35,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:46:35,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:46:37,437.437 INFO    ] ================================================
[2026-06-19 19:46:37,453.453 INFO    ] Launching Daemon at Fri Jun 19 19:46:37 IST 2026
[2026-06-19 19:46:37,466.466 INFO    ] ================================================
[2026-06-19 19:46:38,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:46:38
[2026-06-19 19:46:38,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:46:38,898.898 INFO    ] Initializing speech engine...
[2026-06-19 19:46:38,908.908 INFO    ] 2026-06-19 19:46:38
[2026-06-19 19:46:39,159.159 INFO    ] 2026-06-19 19:46:39
[2026-06-19 19:46:39,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:46:39,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:46:39,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:46:39,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:46:39,537.537 INFO    ] time= 19/06/2026 19:46:39
[2026-06-19 19:46:39,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:46:39,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:46:39,739.739 INFO    ] No existing commands found in stream
[2026-06-19 19:46:44,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:46:44,752.752 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 19:46:45,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:46:45,224.224 INFO    ] Checking for system updates...
[2026-06-19 19:46:45,259.259 INFO    ] 200
[2026-06-19 19:46:45,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:45,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:46:45,318.318 INFO    ] No update needed
[2026-06-19 19:46:45,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 19:46:45,354.354 INFO    ] 200
[2026-06-19 19:46:45,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:45,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:46:45,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:46:45,446.446 INFO    ] No camera update needed
[2026-06-19 19:46:45,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:46:45,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:46:45,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:46:45,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:46:47,504.504 INFO    ] ================================================
[2026-06-19 19:46:47,520.520 INFO    ] Launching Daemon at Fri Jun 19 19:46:47 IST 2026
[2026-06-19 19:46:47,531.531 INFO    ] ================================================
[2026-06-19 19:46:48,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:46:48
[2026-06-19 19:46:48,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:46:49,164.164 INFO    ] Initializing speech engine...
[2026-06-19 19:46:49,171.171 INFO    ] 2026-06-19 19:46:49
[2026-06-19 19:46:49,464.464 INFO    ] 2026-06-19 19:46:49
[2026-06-19 19:46:49,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:46:49,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:46:49,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:46:49,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:46:50,016.016 INFO    ] time= 19/06/2026 19:46:49
[2026-06-19 19:46:50,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:46:50,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:46:50,160.160 INFO    ] No existing commands found in stream
[2026-06-19 19:46:55,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:46:55,191.191 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 19:46:56,481.481 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:46:56,484.484 INFO    ] Checking for system updates...
[2026-06-19 19:46:56,521.521 INFO    ] 200
[2026-06-19 19:46:56,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:56,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:46:56,582.582 INFO    ] No update needed
[2026-06-19 19:46:56,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 19:46:56,619.619 INFO    ] 200
[2026-06-19 19:46:56,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:46:56,663.663 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:46:56,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:46:56,715.715 INFO    ] No camera update needed
[2026-06-19 19:46:56,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:46:56,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:46:56,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:46:56,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:46:58,771.771 INFO    ] ================================================
[2026-06-19 19:46:58,787.787 INFO    ] Launching Daemon at Fri Jun 19 19:46:58 IST 2026
[2026-06-19 19:46:58,798.798 INFO    ] ================================================
[2026-06-19 19:46:59,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:46:59
[2026-06-19 19:46:59,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:47:00,243.243 INFO    ] Initializing speech engine...
[2026-06-19 19:47:00,259.259 INFO    ] 2026-06-19 19:47:00
[2026-06-19 19:47:00,535.535 INFO    ] 2026-06-19 19:47:00
[2026-06-19 19:47:00,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:47:00,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:47:00,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:47:00,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:47:00,946.946 INFO    ] time= 19/06/2026 19:47:00
[2026-06-19 19:47:00,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:47:00,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:47:01,098.098 INFO    ] No existing commands found in stream
[2026-06-19 19:47:06,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:47:06,111.111 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 19:47:10,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:47:10,107.107 INFO    ] Checking for system updates...
[2026-06-19 19:47:10,144.144 INFO    ] 200
[2026-06-19 19:47:10,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:10,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:47:10,204.204 INFO    ] No update needed
[2026-06-19 19:47:10,206.206 INFO    ] Checking for camera pi updates...
[2026-06-19 19:47:10,242.242 INFO    ] 200
[2026-06-19 19:47:10,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:10,286.286 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:47:10,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:47:10,334.334 INFO    ] No camera update needed
[2026-06-19 19:47:10,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:47:10,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:47:10,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:47:10,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:47:12,395.395 INFO    ] ================================================
[2026-06-19 19:47:12,411.411 INFO    ] Launching Daemon at Fri Jun 19 19:47:12 IST 2026
[2026-06-19 19:47:12,422.422 INFO    ] ================================================
[2026-06-19 19:47:13,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:47:13
[2026-06-19 19:47:13,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:47:13,880.880 INFO    ] Initializing speech engine...
[2026-06-19 19:47:13,889.889 INFO    ] 2026-06-19 19:47:13
[2026-06-19 19:47:14,154.154 INFO    ] 2026-06-19 19:47:14
[2026-06-19 19:47:14,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:47:14,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:47:14,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:47:14,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:47:14,619.619 INFO    ] time= 19/06/2026 19:47:14
[2026-06-19 19:47:14,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:47:14,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:47:14,838.838 INFO    ] No existing commands found in stream
[2026-06-19 19:47:19,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:47:19,867.867 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 19:47:21,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:47:21,918.918 INFO    ] Checking for system updates...
[2026-06-19 19:47:21,957.957 INFO    ] 200
[2026-06-19 19:47:21,960.960 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:22,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:47:22,020.020 INFO    ] No update needed
[2026-06-19 19:47:22,022.022 INFO    ] Checking for camera pi updates...
[2026-06-19 19:47:22,058.058 INFO    ] 200
[2026-06-19 19:47:22,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:22,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:47:22,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:47:22,159.159 INFO    ] No camera update needed
[2026-06-19 19:47:22,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:47:22,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:47:22,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:47:22,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:47:24,214.214 INFO    ] ================================================
[2026-06-19 19:47:24,230.230 INFO    ] Launching Daemon at Fri Jun 19 19:47:24 IST 2026
[2026-06-19 19:47:24,241.241 INFO    ] ================================================
[2026-06-19 19:47:24,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:47:24
[2026-06-19 19:47:25,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:47:25,659.659 INFO    ] Initializing speech engine...
[2026-06-19 19:47:25,683.683 INFO    ] 2026-06-19 19:47:25
[2026-06-19 19:47:25,951.951 INFO    ] 2026-06-19 19:47:25
[2026-06-19 19:47:25,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:47:26,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:47:26,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:47:26,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:47:26,495.495 INFO    ] time= 19/06/2026 19:47:26
[2026-06-19 19:47:26,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:47:26,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:47:26,715.715 INFO    ] No existing commands found in stream
[2026-06-19 19:47:31,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:47:31,744.744 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 19:47:34,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:47:34,924.924 INFO    ] Checking for system updates...
[2026-06-19 19:47:34,960.960 INFO    ] 200
[2026-06-19 19:47:34,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:35,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:47:35,024.024 INFO    ] No update needed
[2026-06-19 19:47:35,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 19:47:35,061.061 INFO    ] 200
[2026-06-19 19:47:35,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:35,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:47:35,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:47:35,138.138 INFO    ] No camera update needed
[2026-06-19 19:47:35,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:47:35,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:47:35,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:47:35,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:47:37,196.196 INFO    ] ================================================
[2026-06-19 19:47:37,212.212 INFO    ] Launching Daemon at Fri Jun 19 19:47:37 IST 2026
[2026-06-19 19:47:37,222.222 INFO    ] ================================================
[2026-06-19 19:47:37,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:47:37
[2026-06-19 19:47:38,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:47:38,649.649 INFO    ] Initializing speech engine...
[2026-06-19 19:47:38,654.654 INFO    ] 2026-06-19 19:47:38
[2026-06-19 19:47:38,907.907 INFO    ] 2026-06-19 19:47:38
[2026-06-19 19:47:38,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:47:39,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:47:39,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:47:39,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:47:39,421.421 INFO    ] time= 19/06/2026 19:47:39
[2026-06-19 19:47:39,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:47:39,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:47:39,637.637 INFO    ] No existing commands found in stream
[2026-06-19 19:47:44,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:47:44,654.654 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 19:47:47,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:47:47,412.412 INFO    ] Checking for system updates...
[2026-06-19 19:47:47,453.453 INFO    ] 200
[2026-06-19 19:47:47,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:47,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:47:47,518.518 INFO    ] No update needed
[2026-06-19 19:47:47,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 19:47:47,564.564 INFO    ] 200
[2026-06-19 19:47:47,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:47,616.616 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:47:47,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:47:47,659.659 INFO    ] No camera update needed
[2026-06-19 19:47:47,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:47:47,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:47:47,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:47:47,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:47:49,721.721 INFO    ] ================================================
[2026-06-19 19:47:49,736.736 INFO    ] Launching Daemon at Fri Jun 19 19:47:49 IST 2026
[2026-06-19 19:47:49,748.748 INFO    ] ================================================
[2026-06-19 19:47:50,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:47:50
[2026-06-19 19:47:51,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:47:51,347.347 INFO    ] Initializing speech engine...
[2026-06-19 19:47:51,356.356 INFO    ] 2026-06-19 19:47:51
[2026-06-19 19:47:51,668.668 INFO    ] 2026-06-19 19:47:51
[2026-06-19 19:47:51,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:47:51,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:47:51,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:47:52,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:47:52,162.162 INFO    ] time= 19/06/2026 19:47:52
[2026-06-19 19:47:52,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:47:52,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:47:52,331.331 INFO    ] No existing commands found in stream
[2026-06-19 19:47:57,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:47:57,350.350 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 19:47:58,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:47:58,840.840 INFO    ] Checking for system updates...
[2026-06-19 19:47:58,878.878 INFO    ] 200
[2026-06-19 19:47:58,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:58,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:47:58,943.943 INFO    ] No update needed
[2026-06-19 19:47:58,946.946 INFO    ] Checking for camera pi updates...
[2026-06-19 19:47:58,981.981 INFO    ] 200
[2026-06-19 19:47:58,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:47:59,025.025 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:47:59,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:47:59,073.073 INFO    ] No camera update needed
[2026-06-19 19:47:59,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:47:59,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:47:59,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:47:59,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:48:01,133.133 INFO    ] ================================================
[2026-06-19 19:48:01,149.149 INFO    ] Launching Daemon at Fri Jun 19 19:48:01 IST 2026
[2026-06-19 19:48:01,160.160 INFO    ] ================================================
[2026-06-19 19:48:01,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:48:01
[2026-06-19 19:48:02,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:48:02,814.814 INFO    ] Initializing speech engine...
[2026-06-19 19:48:02,834.834 INFO    ] 2026-06-19 19:48:02
[2026-06-19 19:48:03,150.150 INFO    ] 2026-06-19 19:48:03
[2026-06-19 19:48:03,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:48:03,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:48:03,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:48:03,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:48:03,561.561 INFO    ] time= 19/06/2026 19:48:03
[2026-06-19 19:48:03,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:48:03,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:48:03,639.639 INFO    ] No existing commands found in stream
[2026-06-19 19:48:08,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:48:08,683.683 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 19:48:11,416.416 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:48:11,419.419 INFO    ] Checking for system updates...
[2026-06-19 19:48:11,457.457 INFO    ] 200
[2026-06-19 19:48:11,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:11,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:48:11,517.517 INFO    ] No update needed
[2026-06-19 19:48:11,520.520 INFO    ] Checking for camera pi updates...
[2026-06-19 19:48:11,555.555 INFO    ] 200
[2026-06-19 19:48:11,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:11,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:48:11,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:48:11,652.652 INFO    ] No camera update needed
[2026-06-19 19:48:11,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:48:11,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:48:11,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:48:11,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:48:13,712.712 INFO    ] ================================================
[2026-06-19 19:48:13,729.729 INFO    ] Launching Daemon at Fri Jun 19 19:48:13 IST 2026
[2026-06-19 19:48:13,740.740 INFO    ] ================================================
[2026-06-19 19:48:14,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:48:14
[2026-06-19 19:48:14,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:48:15,189.189 INFO    ] Initializing speech engine...
[2026-06-19 19:48:15,205.205 INFO    ] 2026-06-19 19:48:15
[2026-06-19 19:48:15,460.460 INFO    ] 2026-06-19 19:48:15
[2026-06-19 19:48:15,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:48:15,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:48:15,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:48:15,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:48:15,960.960 INFO    ] time= 19/06/2026 19:48:15
[2026-06-19 19:48:16,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:48:16,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:48:16,155.155 INFO    ] No existing commands found in stream
[2026-06-19 19:48:21,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:48:21,180.180 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 19:48:23,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:48:23,096.096 INFO    ] Checking for system updates...
[2026-06-19 19:48:23,135.135 INFO    ] 200
[2026-06-19 19:48:23,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:23,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:48:23,200.200 INFO    ] No update needed
[2026-06-19 19:48:23,202.202 INFO    ] Checking for camera pi updates...
[2026-06-19 19:48:23,237.237 INFO    ] 200
[2026-06-19 19:48:23,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:23,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:48:23,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:48:23,331.331 INFO    ] No camera update needed
[2026-06-19 19:48:23,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:48:23,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:48:23,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:48:23,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:48:25,387.387 INFO    ] ================================================
[2026-06-19 19:48:25,403.403 INFO    ] Launching Daemon at Fri Jun 19 19:48:25 IST 2026
[2026-06-19 19:48:25,414.414 INFO    ] ================================================
[2026-06-19 19:48:25,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:48:25
[2026-06-19 19:48:26,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:48:26,860.860 INFO    ] Initializing speech engine...
[2026-06-19 19:48:26,877.877 INFO    ] 2026-06-19 19:48:26
[2026-06-19 19:48:27,165.165 INFO    ] 2026-06-19 19:48:27
[2026-06-19 19:48:27,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:48:27,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:48:27,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:48:27,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:48:27,656.656 INFO    ] time= 19/06/2026 19:48:27
[2026-06-19 19:48:27,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:48:27,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:48:27,856.856 INFO    ] No existing commands found in stream
[2026-06-19 19:48:32,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:48:32,870.870 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 19:48:33,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:48:33,475.475 INFO    ] Checking for system updates...
[2026-06-19 19:48:33,511.511 INFO    ] 200
[2026-06-19 19:48:33,513.513 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:33,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:48:33,568.568 INFO    ] No update needed
[2026-06-19 19:48:33,571.571 INFO    ] Checking for camera pi updates...
[2026-06-19 19:48:33,608.608 INFO    ] 200
[2026-06-19 19:48:33,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:33,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:48:33,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:48:33,702.702 INFO    ] No camera update needed
[2026-06-19 19:48:33,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:48:33,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:48:33,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:48:33,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:48:35,758.758 INFO    ] ================================================
[2026-06-19 19:48:35,774.774 INFO    ] Launching Daemon at Fri Jun 19 19:48:35 IST 2026
[2026-06-19 19:48:35,785.785 INFO    ] ================================================
[2026-06-19 19:48:36,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:48:36
[2026-06-19 19:48:36,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:48:37,186.186 INFO    ] Initializing speech engine...
[2026-06-19 19:48:37,195.195 INFO    ] 2026-06-19 19:48:37
[2026-06-19 19:48:37,469.469 INFO    ] 2026-06-19 19:48:37
[2026-06-19 19:48:37,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:48:37,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:48:37,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:48:37,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:48:37,965.965 INFO    ] time= 19/06/2026 19:48:37
[2026-06-19 19:48:38,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:48:38,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:48:38,197.197 INFO    ] No existing commands found in stream
[2026-06-19 19:48:43,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:48:43,217.217 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 19:48:45,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:48:45,565.565 INFO    ] Checking for system updates...
[2026-06-19 19:48:45,601.601 INFO    ] 200
[2026-06-19 19:48:45,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:45,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:48:45,658.658 INFO    ] No update needed
[2026-06-19 19:48:45,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 19:48:45,698.698 INFO    ] 200
[2026-06-19 19:48:45,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:45,742.742 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:48:45,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:48:45,878.878 INFO    ] No camera update needed
[2026-06-19 19:48:45,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:48:45,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:48:45,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:48:45,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:48:47,934.934 INFO    ] ================================================
[2026-06-19 19:48:47,950.950 INFO    ] Launching Daemon at Fri Jun 19 19:48:47 IST 2026
[2026-06-19 19:48:47,962.962 INFO    ] ================================================
[2026-06-19 19:48:48,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:48:48
[2026-06-19 19:48:49,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:48:49,556.556 INFO    ] Initializing speech engine...
[2026-06-19 19:48:49,562.562 INFO    ] 2026-06-19 19:48:49
[2026-06-19 19:48:49,821.821 INFO    ] 2026-06-19 19:48:49
[2026-06-19 19:48:49,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:48:50,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:48:50,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:48:50,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:48:50,311.311 INFO    ] time= 19/06/2026 19:48:50
[2026-06-19 19:48:50,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:48:50,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:48:50,510.510 INFO    ] No existing commands found in stream
[2026-06-19 19:48:55,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:48:55,540.540 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 19:48:58,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:48:58,505.505 INFO    ] Checking for system updates...
[2026-06-19 19:48:58,543.543 INFO    ] 200
[2026-06-19 19:48:58,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:58,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:48:58,607.607 INFO    ] No update needed
[2026-06-19 19:48:58,609.609 INFO    ] Checking for camera pi updates...
[2026-06-19 19:48:58,645.645 INFO    ] 200
[2026-06-19 19:48:58,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:48:58,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:48:58,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:48:58,743.743 INFO    ] No camera update needed
[2026-06-19 19:48:58,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:48:58,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:48:58,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:48:58,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:49:00,803.803 INFO    ] ================================================
[2026-06-19 19:49:00,819.819 INFO    ] Launching Daemon at Fri Jun 19 19:49:00 IST 2026
[2026-06-19 19:49:00,831.831 INFO    ] ================================================
[2026-06-19 19:49:01,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:49:01
[2026-06-19 19:49:02,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:49:02,519.519 INFO    ] Initializing speech engine...
[2026-06-19 19:49:02,523.523 INFO    ] 2026-06-19 19:49:02
[2026-06-19 19:49:02,956.956 INFO    ] 2026-06-19 19:49:02
[2026-06-19 19:49:03,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:49:03,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:49:03,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:49:03,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:49:03,570.570 INFO    ] time= 19/06/2026 19:49:03
[2026-06-19 19:49:03,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:49:03,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:49:03,798.798 INFO    ] No existing commands found in stream
[2026-06-19 19:49:08,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:49:08,827.827 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 19:49:09,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:49:09,293.293 INFO    ] Checking for system updates...
[2026-06-19 19:49:09,330.330 INFO    ] 200
[2026-06-19 19:49:09,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:09,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:49:09,387.387 INFO    ] No update needed
[2026-06-19 19:49:09,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 19:49:09,427.427 INFO    ] 200
[2026-06-19 19:49:09,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:09,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:49:09,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:49:09,519.519 INFO    ] No camera update needed
[2026-06-19 19:49:09,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:49:09,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:49:09,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:49:09,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:49:11,577.577 INFO    ] ================================================
[2026-06-19 19:49:11,593.593 INFO    ] Launching Daemon at Fri Jun 19 19:49:11 IST 2026
[2026-06-19 19:49:11,604.604 INFO    ] ================================================
[2026-06-19 19:49:12,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:49:12
[2026-06-19 19:49:12,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:49:13,023.023 INFO    ] Initializing speech engine...
[2026-06-19 19:49:13,029.029 INFO    ] 2026-06-19 19:49:13
[2026-06-19 19:49:13,316.316 INFO    ] 2026-06-19 19:49:13
[2026-06-19 19:49:13,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:49:13,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:49:13,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:49:13,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:49:13,723.723 INFO    ] time= 19/06/2026 19:49:13
[2026-06-19 19:49:13,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:49:13,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:49:13,926.926 INFO    ] No existing commands found in stream
[2026-06-19 19:49:18,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:49:18,948.948 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 19:49:21,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:49:21,591.591 INFO    ] Checking for system updates...
[2026-06-19 19:49:21,628.628 INFO    ] 200
[2026-06-19 19:49:21,630.630 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:21,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:49:21,691.691 INFO    ] No update needed
[2026-06-19 19:49:21,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 19:49:21,746.746 INFO    ] 200
[2026-06-19 19:49:21,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:21,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:49:21,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:49:21,877.877 INFO    ] No camera update needed
[2026-06-19 19:49:21,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:49:21,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:49:21,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:49:21,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:49:23,937.937 INFO    ] ================================================
[2026-06-19 19:49:23,952.952 INFO    ] Launching Daemon at Fri Jun 19 19:49:23 IST 2026
[2026-06-19 19:49:23,964.964 INFO    ] ================================================
[2026-06-19 19:49:24,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:49:24
[2026-06-19 19:49:25,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:49:25,377.377 INFO    ] Initializing speech engine...
[2026-06-19 19:49:25,385.385 INFO    ] 2026-06-19 19:49:25
[2026-06-19 19:49:25,673.673 INFO    ] 2026-06-19 19:49:25
[2026-06-19 19:49:25,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:49:25,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:49:25,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:49:26,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:49:26,083.083 INFO    ] time= 19/06/2026 19:49:26
[2026-06-19 19:49:26,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:49:26,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:49:26,267.267 INFO    ] No existing commands found in stream
[2026-06-19 19:49:31,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:49:31,295.295 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 19:49:32,497.497 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:49:32,500.500 INFO    ] Checking for system updates...
[2026-06-19 19:49:32,538.538 INFO    ] 200
[2026-06-19 19:49:32,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:32,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:49:32,603.603 INFO    ] No update needed
[2026-06-19 19:49:32,606.606 INFO    ] Checking for camera pi updates...
[2026-06-19 19:49:32,642.642 INFO    ] 200
[2026-06-19 19:49:32,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:32,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:49:32,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:49:32,724.724 INFO    ] No camera update needed
[2026-06-19 19:49:32,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:49:32,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:49:32,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:49:32,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:49:34,783.783 INFO    ] ================================================
[2026-06-19 19:49:34,799.799 INFO    ] Launching Daemon at Fri Jun 19 19:49:34 IST 2026
[2026-06-19 19:49:34,811.811 INFO    ] ================================================
[2026-06-19 19:49:35,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:49:35
[2026-06-19 19:49:35,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:49:36,249.249 INFO    ] Initializing speech engine...
[2026-06-19 19:49:36,263.263 INFO    ] 2026-06-19 19:49:36
[2026-06-19 19:49:36,528.528 INFO    ] 2026-06-19 19:49:36
[2026-06-19 19:49:36,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:49:36,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:49:36,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:49:36,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:49:36,935.935 INFO    ] time= 19/06/2026 19:49:36
[2026-06-19 19:49:36,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:49:36,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:49:37,023.023 INFO    ] No existing commands found in stream
[2026-06-19 19:49:42,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:49:42,044.044 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 19:49:46,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:49:46,180.180 INFO    ] Checking for system updates...
[2026-06-19 19:49:46,217.217 INFO    ] 200
[2026-06-19 19:49:46,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:46,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:49:46,282.282 INFO    ] No update needed
[2026-06-19 19:49:46,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 19:49:46,319.319 INFO    ] 200
[2026-06-19 19:49:46,322.322 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:46,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:49:46,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:49:46,467.467 INFO    ] No camera update needed
[2026-06-19 19:49:46,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:49:46,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:49:46,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:49:46,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:49:48,522.522 INFO    ] ================================================
[2026-06-19 19:49:48,538.538 INFO    ] Launching Daemon at Fri Jun 19 19:49:48 IST 2026
[2026-06-19 19:49:48,550.550 INFO    ] ================================================
[2026-06-19 19:49:49,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:49:49
[2026-06-19 19:49:49,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:49:50,023.023 INFO    ] Initializing speech engine...
[2026-06-19 19:49:50,034.034 INFO    ] 2026-06-19 19:49:50
[2026-06-19 19:49:50,331.331 INFO    ] 2026-06-19 19:49:50
[2026-06-19 19:49:50,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:49:50,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:49:50,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:49:50,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:49:50,880.880 INFO    ] time= 19/06/2026 19:49:50
[2026-06-19 19:49:50,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:49:50,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:49:51,050.050 INFO    ] No existing commands found in stream
[2026-06-19 19:49:56,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:49:56,089.089 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 19:49:58,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:49:58,659.659 INFO    ] Checking for system updates...
[2026-06-19 19:49:58,696.696 INFO    ] 200
[2026-06-19 19:49:58,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:58,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:49:58,756.756 INFO    ] No update needed
[2026-06-19 19:49:58,758.758 INFO    ] Checking for camera pi updates...
[2026-06-19 19:49:58,792.792 INFO    ] 200
[2026-06-19 19:49:58,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:49:58,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:49:58,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:49:58,898.898 INFO    ] No camera update needed
[2026-06-19 19:49:58,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:49:58,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:49:58,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:49:58,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:50:00,953.953 INFO    ] ================================================
[2026-06-19 19:50:00,970.970 INFO    ] Launching Daemon at Fri Jun 19 19:50:00 IST 2026
[2026-06-19 19:50:00,981.981 INFO    ] ================================================
[2026-06-19 19:50:01,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:50:01
[2026-06-19 19:50:02,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:50:03,041.041 INFO    ] Initializing speech engine...
[2026-06-19 19:50:03,052.052 INFO    ] 2026-06-19 19:50:03
[2026-06-19 19:50:03,377.377 INFO    ] 2026-06-19 19:50:03
[2026-06-19 19:50:03,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:50:03,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:50:03,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:50:03,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:50:03,883.883 INFO    ] time= 19/06/2026 19:50:03
[2026-06-19 19:50:03,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:50:03,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:50:04,039.039 INFO    ] No existing commands found in stream
[2026-06-19 19:50:09,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:50:09,057.057 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-19 19:50:13,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:50:13,165.165 INFO    ] Checking for system updates...
[2026-06-19 19:50:13,202.202 INFO    ] 200
[2026-06-19 19:50:13,205.205 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:50:13,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:50:13,268.268 INFO    ] No update needed
[2026-06-19 19:50:13,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 19:50:13,309.309 INFO    ] 200
[2026-06-19 19:50:13,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:50:13,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:50:13,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:50:13,413.413 INFO    ] No camera update needed
[2026-06-19 19:50:13,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:50:13,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:50:13,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:50:13,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:50:15,469.469 INFO    ] ================================================
[2026-06-19 19:50:15,485.485 INFO    ] Launching Daemon at Fri Jun 19 19:50:15 IST 2026
[2026-06-19 19:50:15,496.496 INFO    ] ================================================
[2026-06-19 19:50:16,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:50:16
[2026-06-19 19:50:16,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:50:16,913.913 INFO    ] Initializing speech engine...
[2026-06-19 19:50:16,921.921 INFO    ] 2026-06-19 19:50:16
[2026-06-19 19:50:17,197.197 INFO    ] 2026-06-19 19:50:17
[2026-06-19 19:50:17,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:50:17,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:50:17,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:50:17,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:50:17,746.746 INFO    ] time= 19/06/2026 19:50:17
[2026-06-19 19:50:17,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:50:17,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:50:17,906.906 INFO    ] No existing commands found in stream
[2026-06-19 19:50:22,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:50:22,937.937 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 19:50:26,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:50:26,108.108 INFO    ] Checking for system updates...
[2026-06-19 19:50:26,144.144 INFO    ] 200
[2026-06-19 19:50:26,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:50:26,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:50:26,202.202 INFO    ] No update needed
[2026-06-19 19:50:26,205.205 INFO    ] Checking for camera pi updates...
[2026-06-19 19:50:26,238.238 INFO    ] 200
[2026-06-19 19:50:26,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:50:26,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:50:26,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:50:26,329.329 INFO    ] No camera update needed
[2026-06-19 19:50:26,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:50:26,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:50:26,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:50:26,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:50:28,385.385 INFO    ] ================================================
[2026-06-19 19:50:28,401.401 INFO    ] Launching Daemon at Fri Jun 19 19:50:28 IST 2026
[2026-06-19 19:50:28,412.412 INFO    ] ================================================
[2026-06-19 19:50:29,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:50:29
[2026-06-19 19:50:29,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:50:29,876.876 INFO    ] Initializing speech engine...
[2026-06-19 19:50:29,882.882 INFO    ] 2026-06-19 19:50:29
[2026-06-19 19:50:30,175.175 INFO    ] 2026-06-19 19:50:30
[2026-06-19 19:50:30,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:50:30,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:50:30,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:50:30,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:50:30,588.588 INFO    ] time= 19/06/2026 19:50:30
[2026-06-19 19:50:30,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:50:30,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:50:30,756.756 INFO    ] No existing commands found in stream
[2026-06-19 19:50:35,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:50:35,790.790 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 19:50:38,579.579 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:50:38,582.582 INFO    ] Checking for system updates...
[2026-06-19 19:50:38,621.621 INFO    ] 200
[2026-06-19 19:50:38,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:50:38,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:50:38,678.678 INFO    ] No update needed
[2026-06-19 19:50:38,681.681 INFO    ] Checking for camera pi updates...
[2026-06-19 19:50:38,716.716 INFO    ] 200
[2026-06-19 19:50:38,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:50:38,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:50:38,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:50:38,811.811 INFO    ] No camera update needed
[2026-06-19 19:50:38,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:50:38,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:50:38,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:50:38,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:50:40,867.867 INFO    ] ================================================
[2026-06-19 19:50:40,882.882 INFO    ] Launching Daemon at Fri Jun 19 19:50:40 IST 2026
[2026-06-19 19:50:40,894.894 INFO    ] ================================================
[2026-06-19 19:50:41,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:50:41
[2026-06-19 19:50:42,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:50:42,321.321 INFO    ] Initializing speech engine...
[2026-06-19 19:50:42,331.331 INFO    ] 2026-06-19 19:50:42
[2026-06-19 19:50:42,585.585 INFO    ] 2026-06-19 19:50:42
[2026-06-19 19:50:42,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:50:42,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:50:42,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:50:43,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:50:43,068.068 INFO    ] time= 19/06/2026 19:50:43
[2026-06-19 19:50:43,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:50:43,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:50:43,274.274 INFO    ] No existing commands found in stream
[2026-06-19 19:50:48,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:50:48,299.299 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 19:50:49,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:50:49,453.453 INFO    ] Checking for system updates...
[2026-06-19 19:50:49,493.493 INFO    ] 200
[2026-06-19 19:50:49,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:50:49,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:50:49,551.551 INFO    ] No update needed
[2026-06-19 19:50:49,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 19:50:49,587.587 INFO    ] 200
[2026-06-19 19:50:49,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:50:49,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:50:49,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:50:49,767.767 INFO    ] No camera update needed
[2026-06-19 19:50:49,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:50:49,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:50:49,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:50:49,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:50:51,823.823 INFO    ] ================================================
[2026-06-19 19:50:51,838.838 INFO    ] Launching Daemon at Fri Jun 19 19:50:51 IST 2026
[2026-06-19 19:50:51,850.850 INFO    ] ================================================
[2026-06-19 19:50:52,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:50:52
[2026-06-19 19:50:53,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:50:53,299.299 INFO    ] Initializing speech engine...
[2026-06-19 19:50:53,308.308 INFO    ] 2026-06-19 19:50:53
[2026-06-19 19:50:53,562.562 INFO    ] 2026-06-19 19:50:53
[2026-06-19 19:50:53,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:50:53,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:50:53,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:50:53,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:50:54,020.020 INFO    ] time= 19/06/2026 19:50:53
[2026-06-19 19:50:54,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:50:54,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:50:54,263.263 INFO    ] No existing commands found in stream
[2026-06-19 19:50:59,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:50:59,279.279 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 19:51:04,633.633 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:51:04,636.636 INFO    ] Checking for system updates...
[2026-06-19 19:51:04,674.674 INFO    ] 200
[2026-06-19 19:51:04,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:04,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:51:04,734.734 INFO    ] No update needed
[2026-06-19 19:51:04,737.737 INFO    ] Checking for camera pi updates...
[2026-06-19 19:51:04,775.775 INFO    ] 200
[2026-06-19 19:51:04,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:04,819.819 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:51:04,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:51:04,871.871 INFO    ] No camera update needed
[2026-06-19 19:51:04,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:51:04,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:51:04,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:51:04,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:51:06,930.930 INFO    ] ================================================
[2026-06-19 19:51:06,946.946 INFO    ] Launching Daemon at Fri Jun 19 19:51:06 IST 2026
[2026-06-19 19:51:06,957.957 INFO    ] ================================================
[2026-06-19 19:51:07,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:51:07
[2026-06-19 19:51:08,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:51:08,533.533 INFO    ] Initializing speech engine...
[2026-06-19 19:51:08,541.541 INFO    ] 2026-06-19 19:51:08
[2026-06-19 19:51:08,824.824 INFO    ] 2026-06-19 19:51:08
[2026-06-19 19:51:08,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:51:09,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:51:09,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:51:09,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:51:09,374.374 INFO    ] time= 19/06/2026 19:51:09
[2026-06-19 19:51:09,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:51:09,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:51:09,519.519 INFO    ] No existing commands found in stream
[2026-06-19 19:51:14,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:51:14,542.542 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 19:51:18,972.972 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:51:18,975.975 INFO    ] Checking for system updates...
[2026-06-19 19:51:19,011.011 INFO    ] 200
[2026-06-19 19:51:19,014.014 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:19,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:51:19,076.076 INFO    ] No update needed
[2026-06-19 19:51:19,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 19:51:19,116.116 INFO    ] 200
[2026-06-19 19:51:19,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:19,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:51:19,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:51:19,218.218 INFO    ] No camera update needed
[2026-06-19 19:51:19,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:51:19,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:51:19,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:51:19,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:51:21,277.277 INFO    ] ================================================
[2026-06-19 19:51:21,293.293 INFO    ] Launching Daemon at Fri Jun 19 19:51:21 IST 2026
[2026-06-19 19:51:21,304.304 INFO    ] ================================================
[2026-06-19 19:51:21,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:51:21
[2026-06-19 19:51:22,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:51:22,895.895 INFO    ] Initializing speech engine...
[2026-06-19 19:51:22,909.909 INFO    ] 2026-06-19 19:51:22
[2026-06-19 19:51:23,217.217 INFO    ] 2026-06-19 19:51:23
[2026-06-19 19:51:23,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:51:23,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:51:23,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:51:23,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:51:23,767.767 INFO    ] time= 19/06/2026 19:51:23
[2026-06-19 19:51:23,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:51:23,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:51:23,938.938 INFO    ] No existing commands found in stream
[2026-06-19 19:51:28,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:51:28,972.972 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 19:51:30,461.461 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:51:30,464.464 INFO    ] Checking for system updates...
[2026-06-19 19:51:30,500.500 INFO    ] 200
[2026-06-19 19:51:30,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:30,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:51:30,559.559 INFO    ] No update needed
[2026-06-19 19:51:30,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 19:51:30,599.599 INFO    ] 200
[2026-06-19 19:51:30,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:30,643.643 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:51:30,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:51:30,692.692 INFO    ] No camera update needed
[2026-06-19 19:51:30,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:51:30,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:51:30,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:51:30,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:51:32,754.754 INFO    ] ================================================
[2026-06-19 19:51:32,773.773 INFO    ] Launching Daemon at Fri Jun 19 19:51:32 IST 2026
[2026-06-19 19:51:32,786.786 INFO    ] ================================================
[2026-06-19 19:51:33,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:51:33
[2026-06-19 19:51:34,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:51:34,374.374 INFO    ] Initializing speech engine...
[2026-06-19 19:51:34,382.382 INFO    ] 2026-06-19 19:51:34
[2026-06-19 19:51:34,651.651 INFO    ] 2026-06-19 19:51:34
[2026-06-19 19:51:34,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:51:34,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:51:35,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:51:35,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:51:35,211.211 INFO    ] time= 19/06/2026 19:51:35
[2026-06-19 19:51:35,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:51:35,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:51:35,367.367 INFO    ] No existing commands found in stream
[2026-06-19 19:51:40,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:51:40,384.384 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 19:51:42,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:51:42,074.074 INFO    ] Checking for system updates...
[2026-06-19 19:51:42,110.110 INFO    ] 200
[2026-06-19 19:51:42,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:42,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:51:42,171.171 INFO    ] No update needed
[2026-06-19 19:51:42,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 19:51:42,209.209 INFO    ] 200
[2026-06-19 19:51:42,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:42,254.254 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:51:42,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:51:42,316.316 INFO    ] No camera update needed
[2026-06-19 19:51:42,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:51:42,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:51:42,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:51:42,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:51:44,374.374 INFO    ] ================================================
[2026-06-19 19:51:44,389.389 INFO    ] Launching Daemon at Fri Jun 19 19:51:44 IST 2026
[2026-06-19 19:51:44,399.399 INFO    ] ================================================
[2026-06-19 19:51:44,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:51:44
[2026-06-19 19:51:45,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:51:45,855.855 INFO    ] Initializing speech engine...
[2026-06-19 19:51:45,861.861 INFO    ] 2026-06-19 19:51:45
[2026-06-19 19:51:46,151.151 INFO    ] 2026-06-19 19:51:46
[2026-06-19 19:51:46,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:51:46,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:51:46,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:51:46,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:51:46,657.657 INFO    ] time= 19/06/2026 19:51:46
[2026-06-19 19:51:46,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:51:46,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:51:46,921.921 INFO    ] No existing commands found in stream
[2026-06-19 19:51:51,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:51:51,950.950 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 19:51:56,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:51:56,220.220 INFO    ] Checking for system updates...
[2026-06-19 19:51:56,261.261 INFO    ] 200
[2026-06-19 19:51:56,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:56,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:51:56,319.319 INFO    ] No update needed
[2026-06-19 19:51:56,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 19:51:56,357.357 INFO    ] 200
[2026-06-19 19:51:56,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:51:56,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:51:56,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:51:56,454.454 INFO    ] No camera update needed
[2026-06-19 19:51:56,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:51:56,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:51:56,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:51:56,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:51:58,511.511 INFO    ] ================================================
[2026-06-19 19:51:58,527.527 INFO    ] Launching Daemon at Fri Jun 19 19:51:58 IST 2026
[2026-06-19 19:51:58,537.537 INFO    ] ================================================
[2026-06-19 19:51:59,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:51:59
[2026-06-19 19:51:59,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:52:00,125.125 INFO    ] Initializing speech engine...
[2026-06-19 19:52:00,133.133 INFO    ] 2026-06-19 19:52:00
[2026-06-19 19:52:00,405.405 INFO    ] 2026-06-19 19:52:00
[2026-06-19 19:52:00,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:52:00,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:52:00,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:52:00,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:52:00,957.957 INFO    ] time= 19/06/2026 19:52:00
[2026-06-19 19:52:00,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:52:01,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:52:01,127.127 INFO    ] No existing commands found in stream
[2026-06-19 19:52:06,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:52:06,156.156 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 19:52:07,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:52:07,305.305 INFO    ] Checking for system updates...
[2026-06-19 19:52:07,342.342 INFO    ] 200
[2026-06-19 19:52:07,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:07,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:52:07,403.403 INFO    ] No update needed
[2026-06-19 19:52:07,406.406 INFO    ] Checking for camera pi updates...
[2026-06-19 19:52:07,441.441 INFO    ] 200
[2026-06-19 19:52:07,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:07,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:52:07,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:52:07,542.542 INFO    ] No camera update needed
[2026-06-19 19:52:07,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:52:07,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:52:07,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:52:07,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:52:09,601.601 INFO    ] ================================================
[2026-06-19 19:52:09,617.617 INFO    ] Launching Daemon at Fri Jun 19 19:52:09 IST 2026
[2026-06-19 19:52:09,628.628 INFO    ] ================================================
[2026-06-19 19:52:10,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:52:10
[2026-06-19 19:52:10,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:52:11,251.251 INFO    ] Initializing speech engine...
[2026-06-19 19:52:11,265.265 INFO    ] 2026-06-19 19:52:11
[2026-06-19 19:52:11,545.545 INFO    ] 2026-06-19 19:52:11
[2026-06-19 19:52:11,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:52:11,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:52:11,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:52:12,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:52:12,088.088 INFO    ] time= 19/06/2026 19:52:12
[2026-06-19 19:52:12,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:52:12,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:52:12,274.274 INFO    ] No existing commands found in stream
[2026-06-19 19:52:17,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:52:17,309.309 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 19:52:19,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:52:19,391.391 INFO    ] Checking for system updates...
[2026-06-19 19:52:19,429.429 INFO    ] 200
[2026-06-19 19:52:19,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:19,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:52:19,490.490 INFO    ] No update needed
[2026-06-19 19:52:19,493.493 INFO    ] Checking for camera pi updates...
[2026-06-19 19:52:19,529.529 INFO    ] 200
[2026-06-19 19:52:19,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:19,573.573 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:52:19,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:52:19,623.623 INFO    ] No camera update needed
[2026-06-19 19:52:19,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:52:19,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:52:19,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:52:19,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:52:21,681.681 INFO    ] ================================================
[2026-06-19 19:52:21,697.697 INFO    ] Launching Daemon at Fri Jun 19 19:52:21 IST 2026
[2026-06-19 19:52:21,708.708 INFO    ] ================================================
[2026-06-19 19:52:22,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:52:22
[2026-06-19 19:52:23,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:52:23,365.365 INFO    ] Initializing speech engine...
[2026-06-19 19:52:23,377.377 INFO    ] 2026-06-19 19:52:23
[2026-06-19 19:52:23,692.692 INFO    ] 2026-06-19 19:52:23
[2026-06-19 19:52:23,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:52:23,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:52:23,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:52:24,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:52:24,198.198 INFO    ] time= 19/06/2026 19:52:24
[2026-06-19 19:52:24,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:52:24,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:52:24,358.358 INFO    ] No existing commands found in stream
[2026-06-19 19:52:29,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:52:29,391.391 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 19:52:30,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:52:30,106.106 INFO    ] Checking for system updates...
[2026-06-19 19:52:30,145.145 INFO    ] 200
[2026-06-19 19:52:30,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:30,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:52:30,205.205 INFO    ] No update needed
[2026-06-19 19:52:30,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 19:52:30,246.246 INFO    ] 200
[2026-06-19 19:52:30,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:30,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:52:30,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:52:30,344.344 INFO    ] No camera update needed
[2026-06-19 19:52:30,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:52:30,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:52:30,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:52:30,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:52:32,406.406 INFO    ] ================================================
[2026-06-19 19:52:32,423.423 INFO    ] Launching Daemon at Fri Jun 19 19:52:32 IST 2026
[2026-06-19 19:52:32,434.434 INFO    ] ================================================
[2026-06-19 19:52:33,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:52:33
[2026-06-19 19:52:33,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:52:34,181.181 INFO    ] Initializing speech engine...
[2026-06-19 19:52:34,193.193 INFO    ] 2026-06-19 19:52:34
[2026-06-19 19:52:34,485.485 INFO    ] 2026-06-19 19:52:34
[2026-06-19 19:52:34,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:52:34,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:52:34,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:52:34,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:52:35,057.057 INFO    ] time= 19/06/2026 19:52:34
[2026-06-19 19:52:35,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:52:35,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:52:35,219.219 INFO    ] No existing commands found in stream
[2026-06-19 19:52:40,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:52:40,238.238 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-19 19:52:44,410.410 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:52:44,413.413 INFO    ] Checking for system updates...
[2026-06-19 19:52:44,451.451 INFO    ] 200
[2026-06-19 19:52:44,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:44,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:52:44,510.510 INFO    ] No update needed
[2026-06-19 19:52:44,513.513 INFO    ] Checking for camera pi updates...
[2026-06-19 19:52:44,547.547 INFO    ] 200
[2026-06-19 19:52:44,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:44,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:52:44,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:52:44,639.639 INFO    ] No camera update needed
[2026-06-19 19:52:44,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:52:44,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:52:44,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:52:44,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:52:46,700.700 INFO    ] ================================================
[2026-06-19 19:52:46,715.715 INFO    ] Launching Daemon at Fri Jun 19 19:52:46 IST 2026
[2026-06-19 19:52:46,726.726 INFO    ] ================================================
[2026-06-19 19:52:47,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:52:47
[2026-06-19 19:52:47,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:52:48,210.210 INFO    ] Initializing speech engine...
[2026-06-19 19:52:48,223.223 INFO    ] 2026-06-19 19:52:48
[2026-06-19 19:52:48,493.493 INFO    ] 2026-06-19 19:52:48
[2026-06-19 19:52:48,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:52:48,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:52:48,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:52:49,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:52:49,025.025 INFO    ] time= 19/06/2026 19:52:49
[2026-06-19 19:52:49,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:52:49,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:52:49,189.189 INFO    ] No existing commands found in stream
[2026-06-19 19:52:54,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:52:54,220.220 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 19:52:56,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:52:56,592.592 INFO    ] Checking for system updates...
[2026-06-19 19:52:56,630.630 INFO    ] 200
[2026-06-19 19:52:56,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:56,688.688 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:52:56,690.690 INFO    ] No update needed
[2026-06-19 19:52:56,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 19:52:56,729.729 INFO    ] 200
[2026-06-19 19:52:56,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:52:56,778.778 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:52:56,926.926 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:52:56,929.929 INFO    ] No camera update needed
[2026-06-19 19:52:56,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:52:56,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:52:56,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:52:56,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:52:58,989.989 INFO    ] ================================================
[2026-06-19 19:52:59,004.004 INFO    ] Launching Daemon at Fri Jun 19 19:52:58 IST 2026
[2026-06-19 19:52:59,015.015 INFO    ] ================================================
[2026-06-19 19:52:59,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:52:59
[2026-06-19 19:53:00,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:53:00,732.732 INFO    ] Initializing speech engine...
[2026-06-19 19:53:00,739.739 INFO    ] 2026-06-19 19:53:00
[2026-06-19 19:53:01,048.048 INFO    ] 2026-06-19 19:53:01
[2026-06-19 19:53:01,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:53:01,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:53:01,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:53:01,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:53:01,557.557 INFO    ] time= 19/06/2026 19:53:01
[2026-06-19 19:53:01,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:53:01,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:53:01,677.677 INFO    ] No existing commands found in stream
[2026-06-19 19:53:06,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:53:06,691.691 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 19:53:07,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:53:07,944.944 INFO    ] Checking for system updates...
[2026-06-19 19:53:07,982.982 INFO    ] 200
[2026-06-19 19:53:07,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:08,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:53:08,058.058 INFO    ] No update needed
[2026-06-19 19:53:08,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 19:53:08,097.097 INFO    ] 200
[2026-06-19 19:53:08,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:08,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:53:08,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:53:08,178.178 INFO    ] No camera update needed
[2026-06-19 19:53:08,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:53:08,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:53:08,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:53:08,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:53:10,237.237 INFO    ] ================================================
[2026-06-19 19:53:10,252.252 INFO    ] Launching Daemon at Fri Jun 19 19:53:10 IST 2026
[2026-06-19 19:53:10,264.264 INFO    ] ================================================
[2026-06-19 19:53:10,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:53:10
[2026-06-19 19:53:11,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:53:11,699.699 INFO    ] Initializing speech engine...
[2026-06-19 19:53:11,718.718 INFO    ] 2026-06-19 19:53:11
[2026-06-19 19:53:11,965.965 INFO    ] 2026-06-19 19:53:11
[2026-06-19 19:53:12,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:53:12,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:53:12,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:53:12,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:53:12,444.444 INFO    ] time= 19/06/2026 19:53:12
[2026-06-19 19:53:12,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:53:12,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:53:12,680.680 INFO    ] No existing commands found in stream
[2026-06-19 19:53:17,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:53:17,694.694 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 19:53:19,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:53:19,940.940 INFO    ] Checking for system updates...
[2026-06-19 19:53:19,975.975 INFO    ] 200
[2026-06-19 19:53:19,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:20,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:53:20,035.035 INFO    ] No update needed
[2026-06-19 19:53:20,038.038 INFO    ] Checking for camera pi updates...
[2026-06-19 19:53:20,078.078 INFO    ] 200
[2026-06-19 19:53:20,081.081 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:20,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:53:20,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:53:20,175.175 INFO    ] No camera update needed
[2026-06-19 19:53:20,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:53:20,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:53:20,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:53:20,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:53:22,238.238 INFO    ] ================================================
[2026-06-19 19:53:22,254.254 INFO    ] Launching Daemon at Fri Jun 19 19:53:22 IST 2026
[2026-06-19 19:53:22,266.266 INFO    ] ================================================
[2026-06-19 19:53:22,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:53:22
[2026-06-19 19:53:23,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:53:23,767.767 INFO    ] Initializing speech engine...
[2026-06-19 19:53:23,785.785 INFO    ] 2026-06-19 19:53:23
[2026-06-19 19:53:24,036.036 INFO    ] 2026-06-19 19:53:24
[2026-06-19 19:53:24,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:53:24,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:53:24,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:53:24,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:53:24,539.539 INFO    ] time= 19/06/2026 19:53:24
[2026-06-19 19:53:24,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:53:24,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:53:24,744.744 INFO    ] No existing commands found in stream
[2026-06-19 19:53:29,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:53:29,759.759 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 19:53:32,834.834 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:53:32,837.837 INFO    ] Checking for system updates...
[2026-06-19 19:53:32,874.874 INFO    ] 200
[2026-06-19 19:53:32,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:32,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:53:32,934.934 INFO    ] No update needed
[2026-06-19 19:53:32,936.936 INFO    ] Checking for camera pi updates...
[2026-06-19 19:53:32,971.971 INFO    ] 200
[2026-06-19 19:53:32,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:33,015.015 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:53:33,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:53:33,064.064 INFO    ] No camera update needed
[2026-06-19 19:53:33,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:53:33,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:53:33,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:53:33,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:53:35,120.120 INFO    ] ================================================
[2026-06-19 19:53:35,136.136 INFO    ] Launching Daemon at Fri Jun 19 19:53:35 IST 2026
[2026-06-19 19:53:35,147.147 INFO    ] ================================================
[2026-06-19 19:53:35,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:53:35
[2026-06-19 19:53:36,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:53:36,717.717 INFO    ] Initializing speech engine...
[2026-06-19 19:53:36,727.727 INFO    ] 2026-06-19 19:53:36
[2026-06-19 19:53:37,001.001 INFO    ] 2026-06-19 19:53:36
[2026-06-19 19:53:37,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:53:37,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:53:37,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:53:37,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:53:37,559.559 INFO    ] time= 19/06/2026 19:53:37
[2026-06-19 19:53:37,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:53:37,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:53:37,718.718 INFO    ] No existing commands found in stream
[2026-06-19 19:53:42,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:53:42,742.742 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 19:53:46,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:53:46,005.005 INFO    ] Checking for system updates...
[2026-06-19 19:53:46,042.042 INFO    ] 200
[2026-06-19 19:53:46,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:46,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:53:46,101.101 INFO    ] No update needed
[2026-06-19 19:53:46,103.103 INFO    ] Checking for camera pi updates...
[2026-06-19 19:53:46,139.139 INFO    ] 200
[2026-06-19 19:53:46,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:46,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:53:46,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:53:46,291.291 INFO    ] No camera update needed
[2026-06-19 19:53:46,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:53:46,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:53:46,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:53:46,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:53:48,348.348 INFO    ] ================================================
[2026-06-19 19:53:48,363.363 INFO    ] Launching Daemon at Fri Jun 19 19:53:48 IST 2026
[2026-06-19 19:53:48,374.374 INFO    ] ================================================
[2026-06-19 19:53:48,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:53:48
[2026-06-19 19:53:49,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:53:49,836.836 INFO    ] Initializing speech engine...
[2026-06-19 19:53:49,843.843 INFO    ] 2026-06-19 19:53:49
[2026-06-19 19:53:50,105.105 INFO    ] 2026-06-19 19:53:50
[2026-06-19 19:53:50,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:53:50,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:53:50,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:53:50,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:53:50,653.653 INFO    ] time= 19/06/2026 19:53:50
[2026-06-19 19:53:50,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:53:50,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:53:50,805.805 INFO    ] No existing commands found in stream
[2026-06-19 19:53:55,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:53:55,821.821 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 19:53:57,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:53:57,529.529 INFO    ] Checking for system updates...
[2026-06-19 19:53:57,566.566 INFO    ] 200
[2026-06-19 19:53:57,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:57,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:53:57,624.624 INFO    ] No update needed
[2026-06-19 19:53:57,627.627 INFO    ] Checking for camera pi updates...
[2026-06-19 19:53:57,661.661 INFO    ] 200
[2026-06-19 19:53:57,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:53:57,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:53:57,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:53:57,753.753 INFO    ] No camera update needed
[2026-06-19 19:53:57,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:53:57,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:53:57,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:53:57,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:53:59,810.810 INFO    ] ================================================
[2026-06-19 19:53:59,825.825 INFO    ] Launching Daemon at Fri Jun 19 19:53:59 IST 2026
[2026-06-19 19:53:59,835.835 INFO    ] ================================================
[2026-06-19 19:54:00,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:54:00
[2026-06-19 19:54:01,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:54:01,292.292 INFO    ] Initializing speech engine...
[2026-06-19 19:54:01,302.302 INFO    ] 2026-06-19 19:54:01
[2026-06-19 19:54:01,757.757 INFO    ] 2026-06-19 19:54:01
[2026-06-19 19:54:01,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:54:02,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:54:02,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:54:02,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:54:02,375.375 INFO    ] time= 19/06/2026 19:54:02
[2026-06-19 19:54:02,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:54:02,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:54:02,538.538 INFO    ] No existing commands found in stream
[2026-06-19 19:54:07,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:54:07,552.552 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-19 19:54:09,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:54:09,015.015 INFO    ] Checking for system updates...
[2026-06-19 19:54:09,053.053 INFO    ] 200
[2026-06-19 19:54:09,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:09,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:54:09,111.111 INFO    ] No update needed
[2026-06-19 19:54:09,114.114 INFO    ] Checking for camera pi updates...
[2026-06-19 19:54:09,148.148 INFO    ] 200
[2026-06-19 19:54:09,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:09,192.192 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:54:09,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:54:09,224.224 INFO    ] No camera update needed
[2026-06-19 19:54:09,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:54:09,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:54:09,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:54:09,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:54:11,279.279 INFO    ] ================================================
[2026-06-19 19:54:11,294.294 INFO    ] Launching Daemon at Fri Jun 19 19:54:11 IST 2026
[2026-06-19 19:54:11,305.305 INFO    ] ================================================
[2026-06-19 19:54:11,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:54:11
[2026-06-19 19:54:12,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:54:12,772.772 INFO    ] Initializing speech engine...
[2026-06-19 19:54:12,780.780 INFO    ] 2026-06-19 19:54:12
[2026-06-19 19:54:13,040.040 INFO    ] 2026-06-19 19:54:13
[2026-06-19 19:54:13,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:54:13,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:54:13,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:54:13,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:54:13,501.501 INFO    ] time= 19/06/2026 19:54:13
[2026-06-19 19:54:13,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:54:13,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:54:13,734.734 INFO    ] No existing commands found in stream
[2026-06-19 19:54:18,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:54:18,752.752 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-19 19:54:20,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:54:20,503.503 INFO    ] Checking for system updates...
[2026-06-19 19:54:20,540.540 INFO    ] 200
[2026-06-19 19:54:20,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:20,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:54:20,610.610 INFO    ] No update needed
[2026-06-19 19:54:20,613.613 INFO    ] Checking for camera pi updates...
[2026-06-19 19:54:20,646.646 INFO    ] 200
[2026-06-19 19:54:20,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:20,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:54:20,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:54:20,740.740 INFO    ] No camera update needed
[2026-06-19 19:54:20,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:54:20,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:54:20,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:54:20,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:54:22,797.797 INFO    ] ================================================
[2026-06-19 19:54:22,813.813 INFO    ] Launching Daemon at Fri Jun 19 19:54:22 IST 2026
[2026-06-19 19:54:22,824.824 INFO    ] ================================================
[2026-06-19 19:54:23,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:54:23
[2026-06-19 19:54:24,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:54:24,356.356 INFO    ] Initializing speech engine...
[2026-06-19 19:54:24,366.366 INFO    ] 2026-06-19 19:54:24
[2026-06-19 19:54:24,647.647 INFO    ] 2026-06-19 19:54:24
[2026-06-19 19:54:24,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:54:24,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:54:24,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:54:25,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:54:25,213.213 INFO    ] time= 19/06/2026 19:54:25
[2026-06-19 19:54:25,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:54:25,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:54:25,358.358 INFO    ] No existing commands found in stream
[2026-06-19 19:54:30,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:54:30,386.386 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 19:54:30,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:54:30,955.955 INFO    ] Checking for system updates...
[2026-06-19 19:54:30,992.992 INFO    ] 200
[2026-06-19 19:54:30,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:31,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:54:31,076.076 INFO    ] No update needed
[2026-06-19 19:54:31,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 19:54:31,113.113 INFO    ] 200
[2026-06-19 19:54:31,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:31,157.157 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:54:31,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:54:31,208.208 INFO    ] No camera update needed
[2026-06-19 19:54:31,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:54:31,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:54:31,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:54:31,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:54:33,263.263 INFO    ] ================================================
[2026-06-19 19:54:33,279.279 INFO    ] Launching Daemon at Fri Jun 19 19:54:33 IST 2026
[2026-06-19 19:54:33,290.290 INFO    ] ================================================
[2026-06-19 19:54:33,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:54:33
[2026-06-19 19:54:34,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:54:34,864.864 INFO    ] Initializing speech engine...
[2026-06-19 19:54:34,878.878 INFO    ] 2026-06-19 19:54:34
[2026-06-19 19:54:35,197.197 INFO    ] 2026-06-19 19:54:35
[2026-06-19 19:54:35,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:54:35,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:54:35,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:54:35,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:54:35,704.704 INFO    ] time= 19/06/2026 19:54:35
[2026-06-19 19:54:35,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:54:35,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:54:35,853.853 INFO    ] No existing commands found in stream
[2026-06-19 19:54:40,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:54:40,873.873 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 19:54:42,591.591 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:54:42,594.594 INFO    ] Checking for system updates...
[2026-06-19 19:54:42,631.631 INFO    ] 200
[2026-06-19 19:54:42,634.634 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:42,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:54:42,691.691 INFO    ] No update needed
[2026-06-19 19:54:42,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 19:54:42,732.732 INFO    ] 200
[2026-06-19 19:54:42,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:42,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:54:42,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:54:42,826.826 INFO    ] No camera update needed
[2026-06-19 19:54:42,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:54:42,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:54:42,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:54:42,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:54:44,881.881 INFO    ] ================================================
[2026-06-19 19:54:44,896.896 INFO    ] Launching Daemon at Fri Jun 19 19:54:44 IST 2026
[2026-06-19 19:54:44,908.908 INFO    ] ================================================
[2026-06-19 19:54:45,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:54:45
[2026-06-19 19:54:46,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:54:46,467.467 INFO    ] Initializing speech engine...
[2026-06-19 19:54:46,473.473 INFO    ] 2026-06-19 19:54:46
[2026-06-19 19:54:46,743.743 INFO    ] 2026-06-19 19:54:46
[2026-06-19 19:54:46,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:54:46,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:54:46,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:54:47,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:54:47,208.208 INFO    ] time= 19/06/2026 19:54:47
[2026-06-19 19:54:47,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:54:47,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:54:47,385.385 INFO    ] No existing commands found in stream
[2026-06-19 19:54:52,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:54:52,413.413 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 19:54:54,252.252 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:54:54,259.259 INFO    ] Checking for system updates...
[2026-06-19 19:54:54,302.302 INFO    ] 200
[2026-06-19 19:54:54,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:54,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:54:54,360.360 INFO    ] No update needed
[2026-06-19 19:54:54,365.365 INFO    ] Checking for camera pi updates...
[2026-06-19 19:54:54,403.403 INFO    ] 200
[2026-06-19 19:54:54,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:54:54,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:54:54,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:54:54,497.497 INFO    ] No camera update needed
[2026-06-19 19:54:54,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:54:54,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:54:54,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:54:54,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:54:56,555.555 INFO    ] ================================================
[2026-06-19 19:54:56,570.570 INFO    ] Launching Daemon at Fri Jun 19 19:54:56 IST 2026
[2026-06-19 19:54:56,581.581 INFO    ] ================================================
[2026-06-19 19:54:57,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:54:57
[2026-06-19 19:54:57,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:54:58,050.050 INFO    ] Initializing speech engine...
[2026-06-19 19:54:58,075.075 INFO    ] 2026-06-19 19:54:58
[2026-06-19 19:54:58,332.332 INFO    ] 2026-06-19 19:54:58
[2026-06-19 19:54:58,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:54:58,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:54:58,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:54:58,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:54:58,828.828 INFO    ] time= 19/06/2026 19:54:58
[2026-06-19 19:54:58,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:54:58,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:54:59,027.027 INFO    ] No existing commands found in stream
[2026-06-19 19:55:04,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:55:04,060.060 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 19:55:06,455.455 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:55:06,461.461 INFO    ] Checking for system updates...
[2026-06-19 19:55:06,500.500 INFO    ] 200
[2026-06-19 19:55:06,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:06,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:55:06,565.565 INFO    ] No update needed
[2026-06-19 19:55:06,568.568 INFO    ] Checking for camera pi updates...
[2026-06-19 19:55:06,602.602 INFO    ] 200
[2026-06-19 19:55:06,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:06,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:55:06,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:55:06,700.700 INFO    ] No camera update needed
[2026-06-19 19:55:06,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:55:06,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:55:06,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:55:06,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:55:08,757.757 INFO    ] ================================================
[2026-06-19 19:55:08,773.773 INFO    ] Launching Daemon at Fri Jun 19 19:55:08 IST 2026
[2026-06-19 19:55:08,784.784 INFO    ] ================================================
[2026-06-19 19:55:09,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:55:09
[2026-06-19 19:55:09,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:55:10,248.248 INFO    ] Initializing speech engine...
[2026-06-19 19:55:10,257.257 INFO    ] 2026-06-19 19:55:10
[2026-06-19 19:55:10,515.515 INFO    ] 2026-06-19 19:55:10
[2026-06-19 19:55:10,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:55:10,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:55:10,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:55:10,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:55:11,009.009 INFO    ] time= 19/06/2026 19:55:10
[2026-06-19 19:55:11,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:55:11,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:55:11,211.211 INFO    ] No existing commands found in stream
[2026-06-19 19:55:16,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:55:16,249.249 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 19:55:19,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:55:19,887.887 INFO    ] Checking for system updates...
[2026-06-19 19:55:19,925.925 INFO    ] 200
[2026-06-19 19:55:19,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:19,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:55:19,986.986 INFO    ] No update needed
[2026-06-19 19:55:19,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 19:55:20,028.028 INFO    ] 200
[2026-06-19 19:55:20,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:20,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:55:20,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:55:20,116.116 INFO    ] No camera update needed
[2026-06-19 19:55:20,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:55:20,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:55:20,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:55:20,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:55:22,171.171 INFO    ] ================================================
[2026-06-19 19:55:22,187.187 INFO    ] Launching Daemon at Fri Jun 19 19:55:22 IST 2026
[2026-06-19 19:55:22,198.198 INFO    ] ================================================
[2026-06-19 19:55:22,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:55:22
[2026-06-19 19:55:23,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:55:23,612.612 INFO    ] Initializing speech engine...
[2026-06-19 19:55:23,631.631 INFO    ] 2026-06-19 19:55:23
[2026-06-19 19:55:23,878.878 INFO    ] 2026-06-19 19:55:23
[2026-06-19 19:55:23,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:55:24,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:55:24,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:55:24,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:55:24,368.368 INFO    ] time= 19/06/2026 19:55:24
[2026-06-19 19:55:24,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:55:24,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:55:24,589.589 INFO    ] No existing commands found in stream
[2026-06-19 19:55:29,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:55:29,619.619 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 19:55:32,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:55:32,307.307 INFO    ] Checking for system updates...
[2026-06-19 19:55:32,348.348 INFO    ] 200
[2026-06-19 19:55:32,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:32,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:55:32,414.414 INFO    ] No update needed
[2026-06-19 19:55:32,417.417 INFO    ] Checking for camera pi updates...
[2026-06-19 19:55:32,454.454 INFO    ] 200
[2026-06-19 19:55:32,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:32,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:55:32,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:55:32,544.544 INFO    ] No camera update needed
[2026-06-19 19:55:32,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:55:32,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:55:32,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:55:32,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:55:34,603.603 INFO    ] ================================================
[2026-06-19 19:55:34,618.618 INFO    ] Launching Daemon at Fri Jun 19 19:55:34 IST 2026
[2026-06-19 19:55:34,629.629 INFO    ] ================================================
[2026-06-19 19:55:35,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:55:35
[2026-06-19 19:55:35,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:55:36,092.092 INFO    ] Initializing speech engine...
[2026-06-19 19:55:36,101.101 INFO    ] 2026-06-19 19:55:36
[2026-06-19 19:55:36,384.384 INFO    ] 2026-06-19 19:55:36
[2026-06-19 19:55:36,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:55:36,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:55:36,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:55:36,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:55:36,908.908 INFO    ] time= 19/06/2026 19:55:36
[2026-06-19 19:55:36,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:55:36,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:55:37,062.062 INFO    ] No existing commands found in stream
[2026-06-19 19:55:42,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:55:42,078.078 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 19:55:43,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:55:43,284.284 INFO    ] Checking for system updates...
[2026-06-19 19:55:43,320.320 INFO    ] 200
[2026-06-19 19:55:43,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:43,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:55:43,386.386 INFO    ] No update needed
[2026-06-19 19:55:43,388.388 INFO    ] Checking for camera pi updates...
[2026-06-19 19:55:43,427.427 INFO    ] 200
[2026-06-19 19:55:43,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:43,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:55:43,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:55:43,521.521 INFO    ] No camera update needed
[2026-06-19 19:55:43,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:55:43,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:55:43,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:55:43,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:55:45,576.576 INFO    ] ================================================
[2026-06-19 19:55:45,591.591 INFO    ] Launching Daemon at Fri Jun 19 19:55:45 IST 2026
[2026-06-19 19:55:45,602.602 INFO    ] ================================================
[2026-06-19 19:55:46,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:55:46
[2026-06-19 19:55:46,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:55:47,004.004 INFO    ] Initializing speech engine...
[2026-06-19 19:55:47,024.024 INFO    ] 2026-06-19 19:55:47
[2026-06-19 19:55:47,283.283 INFO    ] 2026-06-19 19:55:47
[2026-06-19 19:55:47,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:55:47,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:55:47,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:55:47,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:55:47,769.769 INFO    ] time= 19/06/2026 19:55:47
[2026-06-19 19:55:47,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:55:47,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:55:47,994.994 INFO    ] No existing commands found in stream
[2026-06-19 19:55:53,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:55:53,019.019 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 19:55:54,820.820 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:55:54,822.822 INFO    ] Checking for system updates...
[2026-06-19 19:55:54,859.859 INFO    ] 200
[2026-06-19 19:55:54,861.861 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:54,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:55:54,924.924 INFO    ] No update needed
[2026-06-19 19:55:54,926.926 INFO    ] Checking for camera pi updates...
[2026-06-19 19:55:54,964.964 INFO    ] 200
[2026-06-19 19:55:54,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:55:55,011.011 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:55:55,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:55:55,059.059 INFO    ] No camera update needed
[2026-06-19 19:55:55,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:55:55,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:55:55,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:55:55,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:55:57,116.116 INFO    ] ================================================
[2026-06-19 19:55:57,131.131 INFO    ] Launching Daemon at Fri Jun 19 19:55:57 IST 2026
[2026-06-19 19:55:57,141.141 INFO    ] ================================================
[2026-06-19 19:55:57,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:55:57
[2026-06-19 19:55:58,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:55:58,556.556 INFO    ] Initializing speech engine...
[2026-06-19 19:55:58,564.564 INFO    ] 2026-06-19 19:55:58
[2026-06-19 19:55:58,859.859 INFO    ] 2026-06-19 19:55:58
[2026-06-19 19:55:58,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:55:59,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:55:59,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:55:59,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:55:59,278.278 INFO    ] time= 19/06/2026 19:55:59
[2026-06-19 19:55:59,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:55:59,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:55:59,453.453 INFO    ] No existing commands found in stream
[2026-06-19 19:56:04,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:56:04,475.475 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 19:56:08,461.461 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:56:08,464.464 INFO    ] Checking for system updates...
[2026-06-19 19:56:08,500.500 INFO    ] 200
[2026-06-19 19:56:08,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:08,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:56:08,558.558 INFO    ] No update needed
[2026-06-19 19:56:08,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 19:56:08,594.594 INFO    ] 200
[2026-06-19 19:56:08,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:08,638.638 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:56:08,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:56:08,687.687 INFO    ] No camera update needed
[2026-06-19 19:56:08,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:56:08,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:56:08,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:56:08,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:56:10,742.742 INFO    ] ================================================
[2026-06-19 19:56:10,757.757 INFO    ] Launching Daemon at Fri Jun 19 19:56:10 IST 2026
[2026-06-19 19:56:10,768.768 INFO    ] ================================================
[2026-06-19 19:56:11,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:56:11
[2026-06-19 19:56:11,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:56:12,189.189 INFO    ] Initializing speech engine...
[2026-06-19 19:56:12,198.198 INFO    ] 2026-06-19 19:56:12
[2026-06-19 19:56:12,490.490 INFO    ] 2026-06-19 19:56:12
[2026-06-19 19:56:12,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:56:12,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:56:12,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:56:12,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:56:12,906.906 INFO    ] time= 19/06/2026 19:56:12
[2026-06-19 19:56:12,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:56:12,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:56:13,070.070 INFO    ] No existing commands found in stream
[2026-06-19 19:56:18,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:56:18,098.098 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 19:56:19,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:56:19,205.205 INFO    ] Checking for system updates...
[2026-06-19 19:56:19,245.245 INFO    ] 200
[2026-06-19 19:56:19,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:19,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:56:19,308.308 INFO    ] No update needed
[2026-06-19 19:56:19,311.311 INFO    ] Checking for camera pi updates...
[2026-06-19 19:56:19,344.344 INFO    ] 200
[2026-06-19 19:56:19,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:19,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:56:19,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:56:19,439.439 INFO    ] No camera update needed
[2026-06-19 19:56:19,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:56:19,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:56:19,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:56:19,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:56:21,494.494 INFO    ] ================================================
[2026-06-19 19:56:21,513.513 INFO    ] Launching Daemon at Fri Jun 19 19:56:21 IST 2026
[2026-06-19 19:56:21,524.524 INFO    ] ================================================
[2026-06-19 19:56:22,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:56:22
[2026-06-19 19:56:22,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:56:23,159.159 INFO    ] Initializing speech engine...
[2026-06-19 19:56:23,172.172 INFO    ] 2026-06-19 19:56:23
[2026-06-19 19:56:23,460.460 INFO    ] 2026-06-19 19:56:23
[2026-06-19 19:56:23,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:56:23,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:56:23,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:56:23,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:56:23,992.992 INFO    ] time= 19/06/2026 19:56:23
[2026-06-19 19:56:24,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:56:24,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:56:24,172.172 INFO    ] No existing commands found in stream
[2026-06-19 19:56:29,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:56:29,201.201 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 19:56:30,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:56:30,354.354 INFO    ] Checking for system updates...
[2026-06-19 19:56:30,395.395 INFO    ] 200
[2026-06-19 19:56:30,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:30,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:56:30,465.465 INFO    ] No update needed
[2026-06-19 19:56:30,467.467 INFO    ] Checking for camera pi updates...
[2026-06-19 19:56:30,506.506 INFO    ] 200
[2026-06-19 19:56:30,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:30,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:56:30,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:56:30,599.599 INFO    ] No camera update needed
[2026-06-19 19:56:30,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:56:30,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:56:30,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:56:30,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:56:32,663.663 INFO    ] ================================================
[2026-06-19 19:56:32,679.679 INFO    ] Launching Daemon at Fri Jun 19 19:56:32 IST 2026
[2026-06-19 19:56:32,692.692 INFO    ] ================================================
[2026-06-19 19:56:33,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:56:33
[2026-06-19 19:56:33,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:56:34,133.133 INFO    ] Initializing speech engine...
[2026-06-19 19:56:34,142.142 INFO    ] 2026-06-19 19:56:34
[2026-06-19 19:56:34,390.390 INFO    ] 2026-06-19 19:56:34
[2026-06-19 19:56:34,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:56:34,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:56:34,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:56:34,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:56:34,960.960 INFO    ] time= 19/06/2026 19:56:34
[2026-06-19 19:56:34,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:56:34,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:56:35,115.115 INFO    ] No existing commands found in stream
[2026-06-19 19:56:40,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:56:40,139.139 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-19 19:56:41,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:56:41,185.185 INFO    ] Checking for system updates...
[2026-06-19 19:56:41,221.221 INFO    ] 200
[2026-06-19 19:56:41,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:41,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:56:41,281.281 INFO    ] No update needed
[2026-06-19 19:56:41,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 19:56:41,318.318 INFO    ] 200
[2026-06-19 19:56:41,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:41,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:56:41,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:56:41,409.409 INFO    ] No camera update needed
[2026-06-19 19:56:41,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:56:41,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:56:41,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:56:41,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:56:43,466.466 INFO    ] ================================================
[2026-06-19 19:56:43,481.481 INFO    ] Launching Daemon at Fri Jun 19 19:56:43 IST 2026
[2026-06-19 19:56:43,492.492 INFO    ] ================================================
[2026-06-19 19:56:44,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:56:44
[2026-06-19 19:56:44,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:56:44,908.908 INFO    ] Initializing speech engine...
[2026-06-19 19:56:44,917.917 INFO    ] 2026-06-19 19:56:44
[2026-06-19 19:56:45,168.168 INFO    ] 2026-06-19 19:56:45
[2026-06-19 19:56:45,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:56:45,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:56:45,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:56:45,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:56:45,639.639 INFO    ] time= 19/06/2026 19:56:45
[2026-06-19 19:56:45,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:56:45,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:56:45,875.875 INFO    ] No existing commands found in stream
[2026-06-19 19:56:50,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:56:50,892.892 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 19:56:52,251.251 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:56:52,254.254 INFO    ] Checking for system updates...
[2026-06-19 19:56:52,293.293 INFO    ] 200
[2026-06-19 19:56:52,296.296 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:52,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:56:52,357.357 INFO    ] No update needed
[2026-06-19 19:56:52,359.359 INFO    ] Checking for camera pi updates...
[2026-06-19 19:56:52,393.393 INFO    ] 200
[2026-06-19 19:56:52,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:56:52,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:56:52,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:56:52,490.490 INFO    ] No camera update needed
[2026-06-19 19:56:52,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:56:52,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:56:52,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:56:52,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:56:54,546.546 INFO    ] ================================================
[2026-06-19 19:56:54,561.561 INFO    ] Launching Daemon at Fri Jun 19 19:56:54 IST 2026
[2026-06-19 19:56:54,573.573 INFO    ] ================================================
[2026-06-19 19:56:55,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:56:55
[2026-06-19 19:56:55,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:56:55,996.996 INFO    ] Initializing speech engine...
[2026-06-19 19:56:56,005.005 INFO    ] 2026-06-19 19:56:56
[2026-06-19 19:56:56,266.266 INFO    ] 2026-06-19 19:56:56
[2026-06-19 19:56:56,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:56:56,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:56:56,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:56:56,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:56:56,808.808 INFO    ] time= 19/06/2026 19:56:56
[2026-06-19 19:56:56,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:56:56,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:56:56,962.962 INFO    ] No existing commands found in stream
[2026-06-19 19:57:01,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:57:01,978.978 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 19:57:03,571.571 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 19:57:03,574.574 INFO    ] Checking for system updates...
[2026-06-19 19:57:03,615.615 INFO    ] 200
[2026-06-19 19:57:03,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:03,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:57:03,681.681 INFO    ] No update needed
[2026-06-19 19:57:03,684.684 INFO    ] Checking for camera pi updates...
[2026-06-19 19:57:03,719.719 INFO    ] 200
[2026-06-19 19:57:03,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:03,768.768 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:57:03,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:57:03,913.913 INFO    ] No camera update needed
[2026-06-19 19:57:03,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:57:03,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:57:03,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:57:03,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:57:05,970.970 INFO    ] ================================================
[2026-06-19 19:57:05,986.986 INFO    ] Launching Daemon at Fri Jun 19 19:57:05 IST 2026
[2026-06-19 19:57:06,996.996 INFO    ] ================================================
[2026-06-19 19:57:06,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:57:06
[2026-06-19 19:57:07,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:57:07,529.529 INFO    ] Initializing speech engine...
[2026-06-19 19:57:07,542.542 INFO    ] 2026-06-19 19:57:07
[2026-06-19 19:57:07,828.828 INFO    ] 2026-06-19 19:57:07
[2026-06-19 19:57:07,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:57:08,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:57:08,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:57:08,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:57:08,359.359 INFO    ] time= 19/06/2026 19:57:08
[2026-06-19 19:57:08,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:57:08,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:57:08,513.513 INFO    ] No existing commands found in stream
[2026-06-19 19:57:13,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:57:13,539.539 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 19:57:15,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:57:15,346.346 INFO    ] Checking for system updates...
[2026-06-19 19:57:15,383.383 INFO    ] 200
[2026-06-19 19:57:15,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:15,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:57:15,450.450 INFO    ] No update needed
[2026-06-19 19:57:15,453.453 INFO    ] Checking for camera pi updates...
[2026-06-19 19:57:15,490.490 INFO    ] 200
[2026-06-19 19:57:15,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:15,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:57:15,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:57:15,582.582 INFO    ] No camera update needed
[2026-06-19 19:57:15,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:57:15,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:57:15,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:57:15,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:57:17,641.641 INFO    ] ================================================
[2026-06-19 19:57:17,657.657 INFO    ] Launching Daemon at Fri Jun 19 19:57:17 IST 2026
[2026-06-19 19:57:17,668.668 INFO    ] ================================================
[2026-06-19 19:57:18,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:57:18
[2026-06-19 19:57:18,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:57:19,268.268 INFO    ] Initializing speech engine...
[2026-06-19 19:57:19,287.287 INFO    ] 2026-06-19 19:57:19
[2026-06-19 19:57:19,554.554 INFO    ] 2026-06-19 19:57:19
[2026-06-19 19:57:19,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:57:19,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:57:19,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:57:20,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:57:20,113.113 INFO    ] time= 19/06/2026 19:57:20
[2026-06-19 19:57:20,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:57:20,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:57:20,279.279 INFO    ] No existing commands found in stream
[2026-06-19 19:57:25,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:57:25,310.310 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 19:57:26,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:57:26,123.123 INFO    ] Checking for system updates...
[2026-06-19 19:57:26,164.164 INFO    ] 200
[2026-06-19 19:57:26,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:26,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:57:26,223.223 INFO    ] No update needed
[2026-06-19 19:57:26,225.225 INFO    ] Checking for camera pi updates...
[2026-06-19 19:57:26,269.269 INFO    ] 200
[2026-06-19 19:57:26,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:26,318.318 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:57:26,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:57:26,373.373 INFO    ] No camera update needed
[2026-06-19 19:57:26,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:57:26,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:57:26,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:57:26,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:57:28,430.430 INFO    ] ================================================
[2026-06-19 19:57:28,446.446 INFO    ] Launching Daemon at Fri Jun 19 19:57:28 IST 2026
[2026-06-19 19:57:28,457.457 INFO    ] ================================================
[2026-06-19 19:57:29,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:57:29
[2026-06-19 19:57:29,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:57:30,107.107 INFO    ] Initializing speech engine...
[2026-06-19 19:57:30,114.114 INFO    ] 2026-06-19 19:57:30
[2026-06-19 19:57:30,403.403 INFO    ] 2026-06-19 19:57:30
[2026-06-19 19:57:30,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:57:30,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:57:30,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:57:30,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:57:30,894.894 INFO    ] time= 19/06/2026 19:57:30
[2026-06-19 19:57:30,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:57:30,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:57:31,112.112 INFO    ] No existing commands found in stream
[2026-06-19 19:57:36,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:57:36,136.136 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 19:57:37,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:57:37,683.683 INFO    ] Checking for system updates...
[2026-06-19 19:57:37,720.720 INFO    ] 200
[2026-06-19 19:57:37,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:37,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:57:37,779.779 INFO    ] No update needed
[2026-06-19 19:57:37,781.781 INFO    ] Checking for camera pi updates...
[2026-06-19 19:57:37,814.814 INFO    ] 200
[2026-06-19 19:57:37,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:37,862.862 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:57:37,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:57:37,906.906 INFO    ] No camera update needed
[2026-06-19 19:57:37,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:57:37,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:57:37,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:57:37,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:57:39,961.961 INFO    ] ================================================
[2026-06-19 19:57:39,976.976 INFO    ] Launching Daemon at Fri Jun 19 19:57:39 IST 2026
[2026-06-19 19:57:39,987.987 INFO    ] ================================================
[2026-06-19 19:57:40,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:57:40
[2026-06-19 19:57:41,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:57:41,608.608 INFO    ] Initializing speech engine...
[2026-06-19 19:57:41,621.621 INFO    ] 2026-06-19 19:57:41
[2026-06-19 19:57:41,906.906 INFO    ] 2026-06-19 19:57:41
[2026-06-19 19:57:42,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:57:42,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:57:42,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:57:42,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:57:42,436.436 INFO    ] time= 19/06/2026 19:57:42
[2026-06-19 19:57:42,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:57:42,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:57:42,610.610 INFO    ] No existing commands found in stream
[2026-06-19 19:57:47,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:57:47,644.644 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 19:57:49,617.617 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:57:49,620.620 INFO    ] Checking for system updates...
[2026-06-19 19:57:49,658.658 INFO    ] 200
[2026-06-19 19:57:49,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:49,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:57:49,716.716 INFO    ] No update needed
[2026-06-19 19:57:49,718.718 INFO    ] Checking for camera pi updates...
[2026-06-19 19:57:49,759.759 INFO    ] 200
[2026-06-19 19:57:49,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:57:49,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:57:49,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:57:49,834.834 INFO    ] No camera update needed
[2026-06-19 19:57:49,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:57:49,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:57:49,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:57:49,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:57:51,889.889 INFO    ] ================================================
[2026-06-19 19:57:51,904.904 INFO    ] Launching Daemon at Fri Jun 19 19:57:51 IST 2026
[2026-06-19 19:57:51,916.916 INFO    ] ================================================
[2026-06-19 19:57:52,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:57:52
[2026-06-19 19:57:53,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:57:53,560.560 INFO    ] Initializing speech engine...
[2026-06-19 19:57:53,568.568 INFO    ] 2026-06-19 19:57:53
[2026-06-19 19:57:53,865.865 INFO    ] 2026-06-19 19:57:53
[2026-06-19 19:57:53,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:57:54,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:57:54,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:57:54,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:57:54,410.410 INFO    ] time= 19/06/2026 19:57:54
[2026-06-19 19:57:54,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:57:54,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:57:54,570.570 INFO    ] No existing commands found in stream
[2026-06-19 19:57:59,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:57:59,599.599 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 19:58:03,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:58:03,169.169 INFO    ] Checking for system updates...
[2026-06-19 19:58:03,205.205 INFO    ] 200
[2026-06-19 19:58:03,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:03,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:58:03,263.263 INFO    ] No update needed
[2026-06-19 19:58:03,265.265 INFO    ] Checking for camera pi updates...
[2026-06-19 19:58:03,303.303 INFO    ] 200
[2026-06-19 19:58:03,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:03,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:58:03,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:58:03,395.395 INFO    ] No camera update needed
[2026-06-19 19:58:03,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:58:03,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:58:03,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:58:03,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:58:05,449.449 INFO    ] ================================================
[2026-06-19 19:58:05,464.464 INFO    ] Launching Daemon at Fri Jun 19 19:58:05 IST 2026
[2026-06-19 19:58:05,475.475 INFO    ] ================================================
[2026-06-19 19:58:06,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:58:06
[2026-06-19 19:58:06,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:58:06,922.922 INFO    ] Initializing speech engine...
[2026-06-19 19:58:06,935.935 INFO    ] 2026-06-19 19:58:06
[2026-06-19 19:58:07,200.200 INFO    ] 2026-06-19 19:58:07
[2026-06-19 19:58:07,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:58:07,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:58:07,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:58:07,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:58:07,695.695 INFO    ] time= 19/06/2026 19:58:07
[2026-06-19 19:58:07,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:58:07,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:58:07,894.894 INFO    ] No existing commands found in stream
[2026-06-19 19:58:12,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:58:12,929.929 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 19:58:16,274.274 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:58:16,277.277 INFO    ] Checking for system updates...
[2026-06-19 19:58:16,314.314 INFO    ] 200
[2026-06-19 19:58:16,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:16,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:58:16,380.380 INFO    ] No update needed
[2026-06-19 19:58:16,382.382 INFO    ] Checking for camera pi updates...
[2026-06-19 19:58:16,416.416 INFO    ] 200
[2026-06-19 19:58:16,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:16,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:58:16,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:58:16,505.505 INFO    ] No camera update needed
[2026-06-19 19:58:16,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:58:16,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:58:16,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:58:16,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:58:18,561.561 INFO    ] ================================================
[2026-06-19 19:58:18,576.576 INFO    ] Launching Daemon at Fri Jun 19 19:58:18 IST 2026
[2026-06-19 19:58:18,587.587 INFO    ] ================================================
[2026-06-19 19:58:19,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:58:19
[2026-06-19 19:58:19,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:58:20,059.059 INFO    ] Initializing speech engine...
[2026-06-19 19:58:20,064.064 INFO    ] 2026-06-19 19:58:20
[2026-06-19 19:58:20,326.326 INFO    ] 2026-06-19 19:58:20
[2026-06-19 19:58:20,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:58:20,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:58:20,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:58:20,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:58:20,818.818 INFO    ] time= 19/06/2026 19:58:20
[2026-06-19 19:58:20,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:58:20,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:58:21,027.027 INFO    ] No existing commands found in stream
[2026-06-19 19:58:26,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:58:26,043.043 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-19 19:58:28,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:58:28,377.377 INFO    ] Checking for system updates...
[2026-06-19 19:58:28,415.415 INFO    ] 200
[2026-06-19 19:58:28,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:28,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:58:28,474.474 INFO    ] No update needed
[2026-06-19 19:58:28,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 19:58:28,514.514 INFO    ] 200
[2026-06-19 19:58:28,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:28,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:58:28,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:58:28,603.603 INFO    ] No camera update needed
[2026-06-19 19:58:28,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:58:28,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:58:28,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:58:28,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:58:30,660.660 INFO    ] ================================================
[2026-06-19 19:58:30,676.676 INFO    ] Launching Daemon at Fri Jun 19 19:58:30 IST 2026
[2026-06-19 19:58:30,686.686 INFO    ] ================================================
[2026-06-19 19:58:31,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:58:31
[2026-06-19 19:58:31,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:58:32,320.320 INFO    ] Initializing speech engine...
[2026-06-19 19:58:32,331.331 INFO    ] 2026-06-19 19:58:32
[2026-06-19 19:58:32,625.625 INFO    ] 2026-06-19 19:58:32
[2026-06-19 19:58:32,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:58:32,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:58:32,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:58:33,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:58:33,136.136 INFO    ] time= 19/06/2026 19:58:33
[2026-06-19 19:58:33,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:58:33,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:58:33,350.350 INFO    ] No existing commands found in stream
[2026-06-19 19:58:38,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:58:38,382.382 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 19:58:40,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 19:58:40,776.776 INFO    ] Checking for system updates...
[2026-06-19 19:58:40,814.814 INFO    ] 200
[2026-06-19 19:58:40,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:40,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:58:40,881.881 INFO    ] No update needed
[2026-06-19 19:58:40,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 19:58:40,917.917 INFO    ] 200
[2026-06-19 19:58:40,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:40,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:58:41,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:58:41,022.022 INFO    ] No camera update needed
[2026-06-19 19:58:41,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:58:41,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:58:41,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:58:41,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:58:43,077.077 INFO    ] ================================================
[2026-06-19 19:58:43,092.092 INFO    ] Launching Daemon at Fri Jun 19 19:58:43 IST 2026
[2026-06-19 19:58:43,103.103 INFO    ] ================================================
[2026-06-19 19:58:43,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:58:43
[2026-06-19 19:58:44,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:58:44,505.505 INFO    ] Initializing speech engine...
[2026-06-19 19:58:44,524.524 INFO    ] 2026-06-19 19:58:44
[2026-06-19 19:58:44,780.780 INFO    ] 2026-06-19 19:58:44
[2026-06-19 19:58:44,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:58:45,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:58:45,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:58:45,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:58:45,336.336 INFO    ] time= 19/06/2026 19:58:45
[2026-06-19 19:58:45,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:58:45,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:58:45,493.493 INFO    ] No existing commands found in stream
[2026-06-19 19:58:50,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:58:50,518.518 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 19:58:52,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 19:58:52,503.503 INFO    ] Checking for system updates...
[2026-06-19 19:58:52,538.538 INFO    ] 200
[2026-06-19 19:58:52,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:52,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:58:52,597.597 INFO    ] No update needed
[2026-06-19 19:58:52,599.599 INFO    ] Checking for camera pi updates...
[2026-06-19 19:58:52,650.650 INFO    ] 200
[2026-06-19 19:58:52,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:58:52,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:58:52,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:58:52,740.740 INFO    ] No camera update needed
[2026-06-19 19:58:52,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:58:52,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:58:52,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:58:52,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:58:54,796.796 INFO    ] ================================================
[2026-06-19 19:58:54,812.812 INFO    ] Launching Daemon at Fri Jun 19 19:58:54 IST 2026
[2026-06-19 19:58:54,822.822 INFO    ] ================================================
[2026-06-19 19:58:55,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:58:55
[2026-06-19 19:58:55,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:58:56,235.235 INFO    ] Initializing speech engine...
[2026-06-19 19:58:56,254.254 INFO    ] 2026-06-19 19:58:56
[2026-06-19 19:58:56,511.511 INFO    ] 2026-06-19 19:58:56
[2026-06-19 19:58:56,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:58:56,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:58:56,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:58:56,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:58:57,006.006 INFO    ] time= 19/06/2026 19:58:56
[2026-06-19 19:58:57,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:58:57,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:58:57,207.207 INFO    ] No existing commands found in stream
[2026-06-19 19:59:02,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:59:02,230.230 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 19:59:05,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:59:05,211.211 INFO    ] Checking for system updates...
[2026-06-19 19:59:05,251.251 INFO    ] 200
[2026-06-19 19:59:05,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:05,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:59:05,316.316 INFO    ] No update needed
[2026-06-19 19:59:05,318.318 INFO    ] Checking for camera pi updates...
[2026-06-19 19:59:05,356.356 INFO    ] 200
[2026-06-19 19:59:05,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:05,399.399 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:59:05,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:59:05,446.446 INFO    ] No camera update needed
[2026-06-19 19:59:05,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:59:05,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:59:05,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:59:05,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:59:07,503.503 INFO    ] ================================================
[2026-06-19 19:59:07,518.518 INFO    ] Launching Daemon at Fri Jun 19 19:59:07 IST 2026
[2026-06-19 19:59:07,529.529 INFO    ] ================================================
[2026-06-19 19:59:08,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:59:08
[2026-06-19 19:59:08,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:59:09,200.200 INFO    ] Initializing speech engine...
[2026-06-19 19:59:09,213.213 INFO    ] 2026-06-19 19:59:09
[2026-06-19 19:59:09,528.528 INFO    ] 2026-06-19 19:59:09
[2026-06-19 19:59:09,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:59:09,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:59:09,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:59:10,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:59:10,040.040 INFO    ] time= 19/06/2026 19:59:10
[2026-06-19 19:59:10,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:59:10,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:59:10,241.241 INFO    ] No existing commands found in stream
[2026-06-19 19:59:15,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:59:15,270.270 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 19:59:17,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:59:17,585.585 INFO    ] Checking for system updates...
[2026-06-19 19:59:17,628.628 INFO    ] 200
[2026-06-19 19:59:17,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:17,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:59:17,690.690 INFO    ] No update needed
[2026-06-19 19:59:17,693.693 INFO    ] Checking for camera pi updates...
[2026-06-19 19:59:17,728.728 INFO    ] 200
[2026-06-19 19:59:17,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:17,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:59:17,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:59:17,939.939 INFO    ] No camera update needed
[2026-06-19 19:59:17,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:59:17,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:59:17,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:59:17,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:59:20,995.995 INFO    ] ================================================
[2026-06-19 19:59:20,011.011 INFO    ] Launching Daemon at Fri Jun 19 19:59:20 IST 2026
[2026-06-19 19:59:20,022.022 INFO    ] ================================================
[2026-06-19 19:59:20,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:59:20
[2026-06-19 19:59:21,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:59:21,701.701 INFO    ] Initializing speech engine...
[2026-06-19 19:59:21,712.712 INFO    ] 2026-06-19 19:59:21
[2026-06-19 19:59:22,027.027 INFO    ] 2026-06-19 19:59:21
[2026-06-19 19:59:22,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:59:22,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:59:22,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:59:22,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:59:22,541.541 INFO    ] time= 19/06/2026 19:59:22
[2026-06-19 19:59:22,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:59:22,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:59:22,722.722 INFO    ] No existing commands found in stream
[2026-06-19 19:59:27,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:59:27,762.762 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 19:59:28,550.550 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 19:59:28,553.553 INFO    ] Checking for system updates...
[2026-06-19 19:59:28,590.590 INFO    ] 200
[2026-06-19 19:59:28,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:28,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:59:28,656.656 INFO    ] No update needed
[2026-06-19 19:59:28,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 19:59:28,692.692 INFO    ] 200
[2026-06-19 19:59:28,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:28,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:59:28,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 19:59:28,789.789 INFO    ] No camera update needed
[2026-06-19 19:59:28,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:59:28,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:59:28,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:59:28,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:59:30,843.843 INFO    ] ================================================
[2026-06-19 19:59:30,858.858 INFO    ] Launching Daemon at Fri Jun 19 19:59:30 IST 2026
[2026-06-19 19:59:30,869.869 INFO    ] ================================================
[2026-06-19 19:59:31,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:59:31
[2026-06-19 19:59:32,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:59:32,365.365 INFO    ] Initializing speech engine...
[2026-06-19 19:59:32,372.372 INFO    ] 2026-06-19 19:59:32
[2026-06-19 19:59:32,651.651 INFO    ] 2026-06-19 19:59:32
[2026-06-19 19:59:32,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:59:32,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:59:32,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:59:33,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:59:33,191.191 INFO    ] time= 19/06/2026 19:59:33
[2026-06-19 19:59:33,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:59:33,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:59:33,398.398 INFO    ] No existing commands found in stream
[2026-06-19 19:59:38,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:59:38,413.413 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 19:59:42,759.759 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 19:59:42,762.762 INFO    ] Checking for system updates...
[2026-06-19 19:59:42,799.799 INFO    ] 200
[2026-06-19 19:59:42,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:42,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:59:42,871.871 INFO    ] No update needed
[2026-06-19 19:59:42,873.873 INFO    ] Checking for camera pi updates...
[2026-06-19 19:59:42,922.922 INFO    ] 200
[2026-06-19 19:59:42,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:42,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:59:43,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:59:43,019.019 INFO    ] No camera update needed
[2026-06-19 19:59:43,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:59:43,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:59:43,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:59:43,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:59:45,074.074 INFO    ] ================================================
[2026-06-19 19:59:45,089.089 INFO    ] Launching Daemon at Fri Jun 19 19:59:45 IST 2026
[2026-06-19 19:59:45,100.100 INFO    ] ================================================
[2026-06-19 19:59:45,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:59:45
[2026-06-19 19:59:46,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 19:59:46,760.760 INFO    ] Initializing speech engine...
[2026-06-19 19:59:46,768.768 INFO    ] 2026-06-19 19:59:46
[2026-06-19 19:59:47,043.043 INFO    ] 2026-06-19 19:59:47
[2026-06-19 19:59:47,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 19:59:47,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 19:59:47,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 19:59:47,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 19:59:47,571.571 INFO    ] time= 19/06/2026 19:59:47
[2026-06-19 19:59:47,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 19:59:47,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-19 19:59:47,753.753 INFO    ] No existing commands found in stream
[2026-06-19 19:59:52,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 19:59:52,783.783 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 19:59:56,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 19:59:56,451.451 INFO    ] Checking for system updates...
[2026-06-19 19:59:56,490.490 INFO    ] 200
[2026-06-19 19:59:56,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:56,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:59:56,558.558 INFO    ] No update needed
[2026-06-19 19:59:56,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 19:59:56,597.597 INFO    ] 200
[2026-06-19 19:59:56,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 19:59:56,652.652 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 19:59:56,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 19:59:56,699.699 INFO    ] No camera update needed
[2026-06-19 19:59:56,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 19:59:56,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 19:59:56,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 19:59:56,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 19:59:58,758.758 INFO    ] ================================================
[2026-06-19 19:59:58,773.773 INFO    ] Launching Daemon at Fri Jun 19 19:59:58 IST 2026
[2026-06-19 19:59:58,783.783 INFO    ] ================================================
[2026-06-19 19:59:59,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 19:59:59
[2026-06-19 19:59:59,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:00:00,220.220 INFO    ] Initializing speech engine...
[2026-06-19 20:00:00,228.228 INFO    ] 2026-06-19 20:00:00
[2026-06-19 20:00:00,481.481 INFO    ] 2026-06-19 20:00:00
[2026-06-19 20:00:00,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:00:00,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:00:00,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:00:00,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:00:01,037.037 INFO    ] time= 19/06/2026 20:00:00
[2026-06-19 20:00:01,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:00:01,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:00:01,148.148 INFO    ] No existing commands found in stream
[2026-06-19 20:00:06,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:00:06,168.168 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 20:00:10,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:00:10,331.331 INFO    ] Checking for system updates...
[2026-06-19 20:00:10,369.369 INFO    ] 200
[2026-06-19 20:00:10,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:00:10,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:00:10,436.436 INFO    ] No update needed
[2026-06-19 20:00:10,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 20:00:10,478.478 INFO    ] 200
[2026-06-19 20:00:10,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:00:10,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:00:10,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:00:10,586.586 INFO    ] No camera update needed
[2026-06-19 20:00:10,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:00:10,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:00:10,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:00:10,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:00:12,646.646 INFO    ] ================================================
[2026-06-19 20:00:12,662.662 INFO    ] Launching Daemon at Fri Jun 19 20:00:12 IST 2026
[2026-06-19 20:00:12,673.673 INFO    ] ================================================
[2026-06-19 20:00:13,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:00:13
[2026-06-19 20:00:13,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:00:14,100.100 INFO    ] Initializing speech engine...
[2026-06-19 20:00:14,109.109 INFO    ] 2026-06-19 20:00:14
[2026-06-19 20:00:14,355.355 INFO    ] 2026-06-19 20:00:14
[2026-06-19 20:00:14,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:00:14,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:00:14,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:00:14,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:00:14,912.912 INFO    ] time= 19/06/2026 20:00:14
[2026-06-19 20:00:14,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:00:14,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:00:15,064.064 INFO    ] No existing commands found in stream
[2026-06-19 20:00:20,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:00:20,083.083 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 20:00:22,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:00:22,437.437 INFO    ] Checking for system updates...
[2026-06-19 20:00:22,474.474 INFO    ] 200
[2026-06-19 20:00:22,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:00:22,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:00:22,536.536 INFO    ] No update needed
[2026-06-19 20:00:22,538.538 INFO    ] Checking for camera pi updates...
[2026-06-19 20:00:22,572.572 INFO    ] 200
[2026-06-19 20:00:22,575.575 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:00:22,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:00:22,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:00:22,663.663 INFO    ] No camera update needed
[2026-06-19 20:00:22,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:00:22,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:00:22,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:00:22,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:00:24,724.724 INFO    ] ================================================
[2026-06-19 20:00:24,740.740 INFO    ] Launching Daemon at Fri Jun 19 20:00:24 IST 2026
[2026-06-19 20:00:24,750.750 INFO    ] ================================================
[2026-06-19 20:00:25,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:00:25
[2026-06-19 20:00:26,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:00:26,369.369 INFO    ] Initializing speech engine...
[2026-06-19 20:00:26,376.376 INFO    ] 2026-06-19 20:00:26
[2026-06-19 20:00:26,650.650 INFO    ] 2026-06-19 20:00:26
[2026-06-19 20:00:26,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:00:26,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:00:26,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:00:27,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:00:27,211.211 INFO    ] time= 19/06/2026 20:00:27
[2026-06-19 20:00:27,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:00:27,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:00:27,405.405 INFO    ] No existing commands found in stream
[2026-06-19 20:00:32,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:00:32,433.433 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 20:00:35,289.289 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:00:35,292.292 INFO    ] Checking for system updates...
[2026-06-19 20:00:35,327.327 INFO    ] 200
[2026-06-19 20:00:35,330.330 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:00:35,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:00:35,386.386 INFO    ] No update needed
[2026-06-19 20:00:35,388.388 INFO    ] Checking for camera pi updates...
[2026-06-19 20:00:35,425.425 INFO    ] 200
[2026-06-19 20:00:35,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:00:35,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:00:35,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:00:35,524.524 INFO    ] No camera update needed
[2026-06-19 20:00:35,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:00:35,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:00:35,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:00:35,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:00:37,580.580 INFO    ] ================================================
[2026-06-19 20:00:37,595.595 INFO    ] Launching Daemon at Fri Jun 19 20:00:37 IST 2026
[2026-06-19 20:00:37,606.606 INFO    ] ================================================
[2026-06-19 20:00:38,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:00:38
[2026-06-19 20:00:38,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:00:39,044.044 INFO    ] Initializing speech engine...
[2026-06-19 20:00:39,053.053 INFO    ] 2026-06-19 20:00:39
[2026-06-19 20:00:39,300.300 INFO    ] 2026-06-19 20:00:39
[2026-06-19 20:00:39,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:00:39,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:00:39,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:00:39,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:00:39,803.803 INFO    ] time= 19/06/2026 20:00:39
[2026-06-19 20:00:39,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:00:39,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:00:40,014.014 INFO    ] No existing commands found in stream
[2026-06-19 20:00:45,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:00:45,029.029 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 20:00:49,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:00:49,213.213 INFO    ] Checking for system updates...
[2026-06-19 20:00:49,253.253 INFO    ] 200
[2026-06-19 20:00:49,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:00:49,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:00:49,311.311 INFO    ] No update needed
[2026-06-19 20:00:49,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 20:00:49,347.347 INFO    ] 200
[2026-06-19 20:00:49,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:00:49,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:00:49,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:00:49,423.423 INFO    ] No camera update needed
[2026-06-19 20:00:49,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:00:49,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:00:49,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:00:49,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:00:51,478.478 INFO    ] ================================================
[2026-06-19 20:00:51,493.493 INFO    ] Launching Daemon at Fri Jun 19 20:00:51 IST 2026
[2026-06-19 20:00:51,504.504 INFO    ] ================================================
[2026-06-19 20:00:52,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:00:52
[2026-06-19 20:00:52,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:00:53,089.089 INFO    ] Initializing speech engine...
[2026-06-19 20:00:53,099.099 INFO    ] 2026-06-19 20:00:53
[2026-06-19 20:00:53,408.408 INFO    ] 2026-06-19 20:00:53
[2026-06-19 20:00:53,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:00:53,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:00:53,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:00:53,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:00:53,928.928 INFO    ] time= 19/06/2026 20:00:53
[2026-06-19 20:00:53,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:00:53,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:00:54,137.137 INFO    ] No existing commands found in stream
[2026-06-19 20:00:59,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:00:59,178.178 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 20:01:03,557.557 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:01:03,560.560 INFO    ] Checking for system updates...
[2026-06-19 20:01:03,608.608 INFO    ] 200
[2026-06-19 20:01:03,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:03,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:01:03,672.672 INFO    ] No update needed
[2026-06-19 20:01:03,675.675 INFO    ] Checking for camera pi updates...
[2026-06-19 20:01:03,714.714 INFO    ] 200
[2026-06-19 20:01:03,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:03,762.762 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:01:03,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:01:03,814.814 INFO    ] No camera update needed
[2026-06-19 20:01:03,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:01:03,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:01:03,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:01:03,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:01:05,871.871 INFO    ] ================================================
[2026-06-19 20:01:05,886.886 INFO    ] Launching Daemon at Fri Jun 19 20:01:05 IST 2026
[2026-06-19 20:01:05,897.897 INFO    ] ================================================
[2026-06-19 20:01:06,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:01:06
[2026-06-19 20:01:07,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:01:07,354.354 INFO    ] Initializing speech engine...
[2026-06-19 20:01:07,362.362 INFO    ] 2026-06-19 20:01:07
[2026-06-19 20:01:07,658.658 INFO    ] 2026-06-19 20:01:07
[2026-06-19 20:01:07,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:01:07,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:01:07,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:01:08,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:01:08,214.214 INFO    ] time= 19/06/2026 20:01:08
[2026-06-19 20:01:08,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:01:08,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:01:08,448.448 INFO    ] No existing commands found in stream
[2026-06-19 20:01:13,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:01:13,476.476 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 20:01:16,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:01:16,042.042 INFO    ] Checking for system updates...
[2026-06-19 20:01:16,078.078 INFO    ] 200
[2026-06-19 20:01:16,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:16,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:01:16,142.142 INFO    ] No update needed
[2026-06-19 20:01:16,144.144 INFO    ] Checking for camera pi updates...
[2026-06-19 20:01:16,182.182 INFO    ] 200
[2026-06-19 20:01:16,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:16,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:01:16,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:01:16,284.284 INFO    ] No camera update needed
[2026-06-19 20:01:16,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:01:16,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:01:16,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:01:16,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:01:18,343.343 INFO    ] ================================================
[2026-06-19 20:01:18,358.358 INFO    ] Launching Daemon at Fri Jun 19 20:01:18 IST 2026
[2026-06-19 20:01:18,369.369 INFO    ] ================================================
[2026-06-19 20:01:18,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:01:18
[2026-06-19 20:01:19,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:01:19,797.797 INFO    ] Initializing speech engine...
[2026-06-19 20:01:19,804.804 INFO    ] 2026-06-19 20:01:19
[2026-06-19 20:01:20,068.068 INFO    ] 2026-06-19 20:01:20
[2026-06-19 20:01:20,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:01:20,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:01:20,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:01:20,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:01:20,568.568 INFO    ] time= 19/06/2026 20:01:20
[2026-06-19 20:01:20,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:01:20,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:01:20,792.792 INFO    ] No existing commands found in stream
[2026-06-19 20:01:25,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:01:25,813.813 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 20:01:27,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:01:27,832.832 INFO    ] Checking for system updates...
[2026-06-19 20:01:27,870.870 INFO    ] 200
[2026-06-19 20:01:27,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:27,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:01:27,929.929 INFO    ] No update needed
[2026-06-19 20:01:27,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 20:01:27,967.967 INFO    ] 200
[2026-06-19 20:01:27,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:28,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:01:28,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:01:28,160.160 INFO    ] No camera update needed
[2026-06-19 20:01:28,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:01:28,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:01:28,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:01:28,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:01:30,216.216 INFO    ] ================================================
[2026-06-19 20:01:30,230.230 INFO    ] Launching Daemon at Fri Jun 19 20:01:30 IST 2026
[2026-06-19 20:01:30,241.241 INFO    ] ================================================
[2026-06-19 20:01:30,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:01:30
[2026-06-19 20:01:31,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:01:31,667.667 INFO    ] Initializing speech engine...
[2026-06-19 20:01:31,677.677 INFO    ] 2026-06-19 20:01:31
[2026-06-19 20:01:31,926.926 INFO    ] 2026-06-19 20:01:31
[2026-06-19 20:01:31,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:01:32,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:01:32,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:01:32,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:01:32,434.434 INFO    ] time= 19/06/2026 20:01:32
[2026-06-19 20:01:32,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:01:32,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:01:32,674.674 INFO    ] No existing commands found in stream
[2026-06-19 20:01:37,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:01:37,704.704 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 20:01:39,498.498 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:01:39,501.501 INFO    ] Checking for system updates...
[2026-06-19 20:01:39,537.537 INFO    ] 200
[2026-06-19 20:01:39,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:39,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:01:39,598.598 INFO    ] No update needed
[2026-06-19 20:01:39,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 20:01:39,638.638 INFO    ] 200
[2026-06-19 20:01:39,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:39,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:01:39,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:01:39,734.734 INFO    ] No camera update needed
[2026-06-19 20:01:39,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:01:39,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:01:39,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:01:39,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:01:41,791.791 INFO    ] ================================================
[2026-06-19 20:01:41,806.806 INFO    ] Launching Daemon at Fri Jun 19 20:01:41 IST 2026
[2026-06-19 20:01:41,817.817 INFO    ] ================================================
[2026-06-19 20:01:42,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:01:42
[2026-06-19 20:01:43,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:01:43,334.334 INFO    ] Initializing speech engine...
[2026-06-19 20:01:43,340.340 INFO    ] 2026-06-19 20:01:43
[2026-06-19 20:01:43,643.643 INFO    ] 2026-06-19 20:01:43
[2026-06-19 20:01:43,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:01:43,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:01:43,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:01:44,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:01:44,053.053 INFO    ] time= 19/06/2026 20:01:44
[2026-06-19 20:01:44,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:01:44,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:01:44,239.239 INFO    ] No existing commands found in stream
[2026-06-19 20:01:49,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:01:49,267.267 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 20:01:52,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:01:52,104.104 INFO    ] Checking for system updates...
[2026-06-19 20:01:52,144.144 INFO    ] 200
[2026-06-19 20:01:52,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:52,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:01:52,210.210 INFO    ] No update needed
[2026-06-19 20:01:52,212.212 INFO    ] Checking for camera pi updates...
[2026-06-19 20:01:52,250.250 INFO    ] 200
[2026-06-19 20:01:52,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:01:52,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:01:52,349.349 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:01:52,351.351 INFO    ] No camera update needed
[2026-06-19 20:01:52,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:01:52,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:01:52,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:01:52,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:01:54,406.406 INFO    ] ================================================
[2026-06-19 20:01:54,422.422 INFO    ] Launching Daemon at Fri Jun 19 20:01:54 IST 2026
[2026-06-19 20:01:54,432.432 INFO    ] ================================================
[2026-06-19 20:01:55,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:01:55
[2026-06-19 20:01:55,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:01:55,902.902 INFO    ] Initializing speech engine...
[2026-06-19 20:01:55,913.913 INFO    ] 2026-06-19 20:01:55
[2026-06-19 20:01:56,175.175 INFO    ] 2026-06-19 20:01:56
[2026-06-19 20:01:56,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:01:56,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:01:56,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:01:56,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:01:56,642.642 INFO    ] time= 19/06/2026 20:01:56
[2026-06-19 20:01:56,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:01:56,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:01:56,859.859 INFO    ] No existing commands found in stream
[2026-06-19 20:02:01,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:02:01,894.894 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 20:02:03,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:02:03,531.531 INFO    ] Checking for system updates...
[2026-06-19 20:02:03,567.567 INFO    ] 200
[2026-06-19 20:02:03,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:03,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:02:03,637.637 INFO    ] No update needed
[2026-06-19 20:02:03,640.640 INFO    ] Checking for camera pi updates...
[2026-06-19 20:02:03,698.698 INFO    ] 200
[2026-06-19 20:02:03,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:03,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:02:03,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:02:03,804.804 INFO    ] No camera update needed
[2026-06-19 20:02:03,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:02:03,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:02:03,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:02:03,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:02:05,865.865 INFO    ] ================================================
[2026-06-19 20:02:05,881.881 INFO    ] Launching Daemon at Fri Jun 19 20:02:05 IST 2026
[2026-06-19 20:02:05,892.892 INFO    ] ================================================
[2026-06-19 20:02:06,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:02:06
[2026-06-19 20:02:07,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:02:07,342.342 INFO    ] Initializing speech engine...
[2026-06-19 20:02:07,348.348 INFO    ] 2026-06-19 20:02:07
[2026-06-19 20:02:07,593.593 INFO    ] 2026-06-19 20:02:07
[2026-06-19 20:02:07,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:02:07,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:02:07,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:02:08,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:02:08,095.095 INFO    ] time= 19/06/2026 20:02:08
[2026-06-19 20:02:08,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:02:08,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:02:08,304.304 INFO    ] No existing commands found in stream
[2026-06-19 20:02:13,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:02:13,320.320 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 20:02:15,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:02:15,366.366 INFO    ] Checking for system updates...
[2026-06-19 20:02:15,406.406 INFO    ] 200
[2026-06-19 20:02:15,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:15,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:02:15,471.471 INFO    ] No update needed
[2026-06-19 20:02:15,474.474 INFO    ] Checking for camera pi updates...
[2026-06-19 20:02:15,508.508 INFO    ] 200
[2026-06-19 20:02:15,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:15,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:02:15,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:02:15,603.603 INFO    ] No camera update needed
[2026-06-19 20:02:15,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:02:15,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:02:15,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:02:15,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:02:17,658.658 INFO    ] ================================================
[2026-06-19 20:02:17,673.673 INFO    ] Launching Daemon at Fri Jun 19 20:02:17 IST 2026
[2026-06-19 20:02:17,685.685 INFO    ] ================================================
[2026-06-19 20:02:18,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:02:18
[2026-06-19 20:02:18,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:02:19,125.125 INFO    ] Initializing speech engine...
[2026-06-19 20:02:19,135.135 INFO    ] 2026-06-19 20:02:19
[2026-06-19 20:02:19,384.384 INFO    ] 2026-06-19 20:02:19
[2026-06-19 20:02:19,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:02:19,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:02:19,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:02:19,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:02:19,943.943 INFO    ] time= 19/06/2026 20:02:19
[2026-06-19 20:02:19,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:02:19,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:02:20,101.101 INFO    ] No existing commands found in stream
[2026-06-19 20:02:25,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:02:25,126.126 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 20:02:27,395.395 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:02:27,398.398 INFO    ] Checking for system updates...
[2026-06-19 20:02:27,440.440 INFO    ] 200
[2026-06-19 20:02:27,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:27,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:02:27,505.505 INFO    ] No update needed
[2026-06-19 20:02:27,507.507 INFO    ] Checking for camera pi updates...
[2026-06-19 20:02:27,546.546 INFO    ] 200
[2026-06-19 20:02:27,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:27,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:02:27,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:02:27,637.637 INFO    ] No camera update needed
[2026-06-19 20:02:27,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:02:27,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:02:27,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:02:27,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:02:29,691.691 INFO    ] ================================================
[2026-06-19 20:02:29,708.708 INFO    ] Launching Daemon at Fri Jun 19 20:02:29 IST 2026
[2026-06-19 20:02:29,719.719 INFO    ] ================================================
[2026-06-19 20:02:30,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:02:30
[2026-06-19 20:02:30,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:02:31,178.178 INFO    ] Initializing speech engine...
[2026-06-19 20:02:31,188.188 INFO    ] 2026-06-19 20:02:31
[2026-06-19 20:02:31,450.450 INFO    ] 2026-06-19 20:02:31
[2026-06-19 20:02:31,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:02:31,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:02:31,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:02:31,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:02:32,000.000 INFO    ] time= 19/06/2026 20:02:31
[2026-06-19 20:02:32,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:02:32,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:02:32,223.223 INFO    ] No existing commands found in stream
[2026-06-19 20:02:37,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:02:37,257.257 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 20:02:39,428.428 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:02:39,430.430 INFO    ] Checking for system updates...
[2026-06-19 20:02:39,467.467 INFO    ] 200
[2026-06-19 20:02:39,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:39,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:02:39,524.524 INFO    ] No update needed
[2026-06-19 20:02:39,527.527 INFO    ] Checking for camera pi updates...
[2026-06-19 20:02:39,561.561 INFO    ] 200
[2026-06-19 20:02:39,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:39,610.610 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:02:39,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:02:39,673.673 INFO    ] No camera update needed
[2026-06-19 20:02:39,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:02:39,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:02:39,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:02:39,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:02:41,730.730 INFO    ] ================================================
[2026-06-19 20:02:41,746.746 INFO    ] Launching Daemon at Fri Jun 19 20:02:41 IST 2026
[2026-06-19 20:02:41,757.757 INFO    ] ================================================
[2026-06-19 20:02:42,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:02:42
[2026-06-19 20:02:42,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:02:43,220.220 INFO    ] Initializing speech engine...
[2026-06-19 20:02:43,227.227 INFO    ] 2026-06-19 20:02:43
[2026-06-19 20:02:43,489.489 INFO    ] 2026-06-19 20:02:43
[2026-06-19 20:02:43,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:02:43,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:02:43,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:02:43,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:02:43,904.904 INFO    ] time= 19/06/2026 20:02:43
[2026-06-19 20:02:43,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:02:43,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:02:44,068.068 INFO    ] No existing commands found in stream
[2026-06-19 20:02:49,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:02:49,082.082 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 20:02:51,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:02:51,170.170 INFO    ] Checking for system updates...
[2026-06-19 20:02:51,211.211 INFO    ] 200
[2026-06-19 20:02:51,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:51,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:02:51,270.270 INFO    ] No update needed
[2026-06-19 20:02:51,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 20:02:51,308.308 INFO    ] 200
[2026-06-19 20:02:51,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:02:51,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:02:51,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:02:51,404.404 INFO    ] No camera update needed
[2026-06-19 20:02:51,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:02:51,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:02:51,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:02:51,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:02:53,461.461 INFO    ] ================================================
[2026-06-19 20:02:53,477.477 INFO    ] Launching Daemon at Fri Jun 19 20:02:53 IST 2026
[2026-06-19 20:02:53,488.488 INFO    ] ================================================
[2026-06-19 20:02:54,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:02:54
[2026-06-19 20:02:54,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:02:55,109.109 INFO    ] Initializing speech engine...
[2026-06-19 20:02:55,123.123 INFO    ] 2026-06-19 20:02:55
[2026-06-19 20:02:55,436.436 INFO    ] 2026-06-19 20:02:55
[2026-06-19 20:02:55,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:02:55,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:02:55,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:02:55,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:02:55,950.950 INFO    ] time= 19/06/2026 20:02:55
[2026-06-19 20:02:55,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:02:55,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:02:56,153.153 INFO    ] No existing commands found in stream
[2026-06-19 20:03:01,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:03:01,188.188 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 20:03:02,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:03:02,468.468 INFO    ] Checking for system updates...
[2026-06-19 20:03:02,518.518 INFO    ] 200
[2026-06-19 20:03:02,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:02,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:03:02,597.597 INFO    ] No update needed
[2026-06-19 20:03:02,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 20:03:02,654.654 INFO    ] 200
[2026-06-19 20:03:02,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:02,716.716 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:03:02,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:03:02,757.757 INFO    ] No camera update needed
[2026-06-19 20:03:02,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:03:02,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:03:02,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:03:02,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:03:04,828.828 INFO    ] ================================================
[2026-06-19 20:03:04,844.844 INFO    ] Launching Daemon at Fri Jun 19 20:03:04 IST 2026
[2026-06-19 20:03:04,855.855 INFO    ] ================================================
[2026-06-19 20:03:05,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:03:05
[2026-06-19 20:03:06,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:03:06,313.313 INFO    ] Initializing speech engine...
[2026-06-19 20:03:06,327.327 INFO    ] 2026-06-19 20:03:06
[2026-06-19 20:03:06,617.617 INFO    ] 2026-06-19 20:03:06
[2026-06-19 20:03:06,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:03:06,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:03:06,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:03:07,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:03:07,058.058 INFO    ] time= 19/06/2026 20:03:07
[2026-06-19 20:03:07,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:03:07,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:03:07,171.171 INFO    ] No existing commands found in stream
[2026-06-19 20:03:12,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:03:12,210.210 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 20:03:14,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:03:14,851.851 INFO    ] Checking for system updates...
[2026-06-19 20:03:14,895.895 INFO    ] 200
[2026-06-19 20:03:14,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:14,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:03:14,960.960 INFO    ] No update needed
[2026-06-19 20:03:14,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 20:03:15,003.003 INFO    ] 200
[2026-06-19 20:03:15,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:15,053.053 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:03:15,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:03:15,113.113 INFO    ] No camera update needed
[2026-06-19 20:03:15,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:03:15,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:03:15,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:03:15,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:03:17,175.175 INFO    ] ================================================
[2026-06-19 20:03:17,192.192 INFO    ] Launching Daemon at Fri Jun 19 20:03:17 IST 2026
[2026-06-19 20:03:17,203.203 INFO    ] ================================================
[2026-06-19 20:03:17,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:03:17
[2026-06-19 20:03:18,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:03:18,655.655 INFO    ] Initializing speech engine...
[2026-06-19 20:03:18,665.665 INFO    ] 2026-06-19 20:03:18
[2026-06-19 20:03:18,927.927 INFO    ] 2026-06-19 20:03:18
[2026-06-19 20:03:18,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:03:19,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:03:19,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:03:19,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:03:19,434.434 INFO    ] time= 19/06/2026 20:03:19
[2026-06-19 20:03:19,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:03:19,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:03:19,628.628 INFO    ] No existing commands found in stream
[2026-06-19 20:03:24,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:03:24,644.644 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 20:03:27,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:03:27,045.045 INFO    ] Checking for system updates...
[2026-06-19 20:03:27,084.084 INFO    ] 200
[2026-06-19 20:03:27,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:27,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:03:27,153.153 INFO    ] No update needed
[2026-06-19 20:03:27,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 20:03:27,194.194 INFO    ] 200
[2026-06-19 20:03:27,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:27,256.256 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:03:27,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:03:27,308.308 INFO    ] No camera update needed
[2026-06-19 20:03:27,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:03:27,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:03:27,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:03:27,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:03:29,373.373 INFO    ] ================================================
[2026-06-19 20:03:29,390.390 INFO    ] Launching Daemon at Fri Jun 19 20:03:29 IST 2026
[2026-06-19 20:03:29,402.402 INFO    ] ================================================
[2026-06-19 20:03:30,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:03:30
[2026-06-19 20:03:30,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:03:31,127.127 INFO    ] Initializing speech engine...
[2026-06-19 20:03:31,140.140 INFO    ] 2026-06-19 20:03:31
[2026-06-19 20:03:31,423.423 INFO    ] 2026-06-19 20:03:31
[2026-06-19 20:03:31,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:03:31,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:03:31,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:03:31,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:03:31,932.932 INFO    ] time= 19/06/2026 20:03:31
[2026-06-19 20:03:31,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:03:32,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:03:32,225.225 INFO    ] No existing commands found in stream
[2026-06-19 20:03:37,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:03:37,264.264 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 20:03:39,687.687 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:03:39,690.690 INFO    ] Checking for system updates...
[2026-06-19 20:03:39,726.726 INFO    ] 200
[2026-06-19 20:03:39,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:39,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:03:39,790.790 INFO    ] No update needed
[2026-06-19 20:03:39,793.793 INFO    ] Checking for camera pi updates...
[2026-06-19 20:03:39,827.827 INFO    ] 200
[2026-06-19 20:03:39,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:39,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:03:39,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:03:39,917.917 INFO    ] No camera update needed
[2026-06-19 20:03:39,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:03:39,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:03:39,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:03:39,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:03:41,973.973 INFO    ] ================================================
[2026-06-19 20:03:41,988.988 INFO    ] Launching Daemon at Fri Jun 19 20:03:41 IST 2026
[2026-06-19 20:03:42,000.000 INFO    ] ================================================
[2026-06-19 20:03:42,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:03:42
[2026-06-19 20:03:43,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:03:43,413.413 INFO    ] Initializing speech engine...
[2026-06-19 20:03:43,422.422 INFO    ] 2026-06-19 20:03:43
[2026-06-19 20:03:43,703.703 INFO    ] 2026-06-19 20:03:43
[2026-06-19 20:03:43,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:03:44,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:03:44,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:03:44,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:03:44,277.277 INFO    ] time= 19/06/2026 20:03:44
[2026-06-19 20:03:44,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:03:44,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:03:44,438.438 INFO    ] No existing commands found in stream
[2026-06-19 20:03:49,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:03:49,455.455 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 20:03:52,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:03:52,733.733 INFO    ] Checking for system updates...
[2026-06-19 20:03:52,768.768 INFO    ] 200
[2026-06-19 20:03:52,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:52,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:03:52,834.834 INFO    ] No update needed
[2026-06-19 20:03:52,837.837 INFO    ] Checking for camera pi updates...
[2026-06-19 20:03:52,870.870 INFO    ] 200
[2026-06-19 20:03:52,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:03:52,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:03:52,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:03:52,972.972 INFO    ] No camera update needed
[2026-06-19 20:03:52,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:03:52,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:03:52,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:03:52,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:03:55,029.029 INFO    ] ================================================
[2026-06-19 20:03:55,045.045 INFO    ] Launching Daemon at Fri Jun 19 20:03:55 IST 2026
[2026-06-19 20:03:55,056.056 INFO    ] ================================================
[2026-06-19 20:03:55,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:03:55
[2026-06-19 20:03:56,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:03:56,496.496 INFO    ] Initializing speech engine...
[2026-06-19 20:03:56,504.504 INFO    ] 2026-06-19 20:03:56
[2026-06-19 20:03:56,803.803 INFO    ] 2026-06-19 20:03:56
[2026-06-19 20:03:56,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:03:57,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:03:57,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:03:57,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:03:57,361.361 INFO    ] time= 19/06/2026 20:03:57
[2026-06-19 20:03:57,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:03:57,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:03:57,584.584 INFO    ] No existing commands found in stream
[2026-06-19 20:04:02,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:04:02,601.601 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 20:04:04,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:04:04,007.007 INFO    ] Checking for system updates...
[2026-06-19 20:04:04,044.044 INFO    ] 200
[2026-06-19 20:04:04,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:04,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:04:04,113.113 INFO    ] No update needed
[2026-06-19 20:04:04,115.115 INFO    ] Checking for camera pi updates...
[2026-06-19 20:04:04,149.149 INFO    ] 200
[2026-06-19 20:04:04,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:04,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:04:04,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:04:04,263.263 INFO    ] No camera update needed
[2026-06-19 20:04:04,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:04:04,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:04:04,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:04:04,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:04:06,318.318 INFO    ] ================================================
[2026-06-19 20:04:06,334.334 INFO    ] Launching Daemon at Fri Jun 19 20:04:06 IST 2026
[2026-06-19 20:04:06,345.345 INFO    ] ================================================
[2026-06-19 20:04:06,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:04:06
[2026-06-19 20:04:07,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:04:07,835.835 INFO    ] Initializing speech engine...
[2026-06-19 20:04:07,844.844 INFO    ] 2026-06-19 20:04:07
[2026-06-19 20:04:08,104.104 INFO    ] 2026-06-19 20:04:08
[2026-06-19 20:04:08,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:04:08,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:04:08,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:04:08,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:04:08,648.648 INFO    ] time= 19/06/2026 20:04:08
[2026-06-19 20:04:08,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:04:08,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:04:08,801.801 INFO    ] No existing commands found in stream
[2026-06-19 20:04:13,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:04:13,833.833 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 20:04:17,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:04:17,332.332 INFO    ] Checking for system updates...
[2026-06-19 20:04:17,369.369 INFO    ] 200
[2026-06-19 20:04:17,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:17,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:04:17,436.436 INFO    ] No update needed
[2026-06-19 20:04:17,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 20:04:17,474.474 INFO    ] 200
[2026-06-19 20:04:17,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:17,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:04:17,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:04:17,576.576 INFO    ] No camera update needed
[2026-06-19 20:04:17,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:04:17,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:04:17,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:04:17,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:04:19,636.636 INFO    ] ================================================
[2026-06-19 20:04:19,652.652 INFO    ] Launching Daemon at Fri Jun 19 20:04:19 IST 2026
[2026-06-19 20:04:19,663.663 INFO    ] ================================================
[2026-06-19 20:04:20,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:04:20
[2026-06-19 20:04:20,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:04:21,128.128 INFO    ] Initializing speech engine...
[2026-06-19 20:04:21,135.135 INFO    ] 2026-06-19 20:04:21
[2026-06-19 20:04:21,397.397 INFO    ] 2026-06-19 20:04:21
[2026-06-19 20:04:21,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:04:21,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:04:21,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:04:21,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:04:21,941.941 INFO    ] time= 19/06/2026 20:04:21
[2026-06-19 20:04:21,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:04:21,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:04:22,099.099 INFO    ] No existing commands found in stream
[2026-06-19 20:04:27,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:04:27,120.120 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 20:04:28,022.022 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:04:28,025.025 INFO    ] Checking for system updates...
[2026-06-19 20:04:28,066.066 INFO    ] 200
[2026-06-19 20:04:28,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:28,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:04:28,126.126 INFO    ] No update needed
[2026-06-19 20:04:28,129.129 INFO    ] Checking for camera pi updates...
[2026-06-19 20:04:28,163.163 INFO    ] 200
[2026-06-19 20:04:28,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:28,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:04:28,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:04:28,263.263 INFO    ] No camera update needed
[2026-06-19 20:04:28,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:04:28,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:04:28,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:04:28,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:04:30,322.322 INFO    ] ================================================
[2026-06-19 20:04:30,337.337 INFO    ] Launching Daemon at Fri Jun 19 20:04:30 IST 2026
[2026-06-19 20:04:30,347.347 INFO    ] ================================================
[2026-06-19 20:04:30,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:04:30
[2026-06-19 20:04:31,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:04:31,767.767 INFO    ] Initializing speech engine...
[2026-06-19 20:04:31,782.782 INFO    ] 2026-06-19 20:04:31
[2026-06-19 20:04:32,056.056 INFO    ] 2026-06-19 20:04:32
[2026-06-19 20:04:32,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:04:32,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:04:32,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:04:32,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:04:32,583.583 INFO    ] time= 19/06/2026 20:04:32
[2026-06-19 20:04:32,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:04:32,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:04:32,808.808 INFO    ] No existing commands found in stream
[2026-06-19 20:04:37,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:04:37,842.842 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-19 20:04:40,994.994 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:04:40,997.997 INFO    ] Checking for system updates...
[2026-06-19 20:04:41,037.037 INFO    ] 200
[2026-06-19 20:04:41,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:41,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:04:41,095.095 INFO    ] No update needed
[2026-06-19 20:04:41,097.097 INFO    ] Checking for camera pi updates...
[2026-06-19 20:04:41,134.134 INFO    ] 200
[2026-06-19 20:04:41,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:41,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:04:41,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:04:41,235.235 INFO    ] No camera update needed
[2026-06-19 20:04:41,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:04:41,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:04:41,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:04:41,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:04:43,291.291 INFO    ] ================================================
[2026-06-19 20:04:43,306.306 INFO    ] Launching Daemon at Fri Jun 19 20:04:43 IST 2026
[2026-06-19 20:04:43,316.316 INFO    ] ================================================
[2026-06-19 20:04:43,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:04:43
[2026-06-19 20:04:44,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:04:44,746.746 INFO    ] Initializing speech engine...
[2026-06-19 20:04:44,769.769 INFO    ] 2026-06-19 20:04:44
[2026-06-19 20:04:45,025.025 INFO    ] 2026-06-19 20:04:45
[2026-06-19 20:04:45,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:04:45,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:04:45,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:04:45,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:04:45,515.515 INFO    ] time= 19/06/2026 20:04:45
[2026-06-19 20:04:45,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:04:45,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:04:45,734.734 INFO    ] No existing commands found in stream
[2026-06-19 20:04:50,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:04:50,759.759 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 20:04:52,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:04:52,009.009 INFO    ] Checking for system updates...
[2026-06-19 20:04:52,046.046 INFO    ] 200
[2026-06-19 20:04:52,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:52,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:04:52,103.103 INFO    ] No update needed
[2026-06-19 20:04:52,105.105 INFO    ] Checking for camera pi updates...
[2026-06-19 20:04:52,143.143 INFO    ] 200
[2026-06-19 20:04:52,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:04:52,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:04:52,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:04:52,235.235 INFO    ] No camera update needed
[2026-06-19 20:04:52,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:04:52,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:04:52,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:04:52,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:04:54,291.291 INFO    ] ================================================
[2026-06-19 20:04:54,306.306 INFO    ] Launching Daemon at Fri Jun 19 20:04:54 IST 2026
[2026-06-19 20:04:54,317.317 INFO    ] ================================================
[2026-06-19 20:04:54,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:04:54
[2026-06-19 20:04:55,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:04:55,804.804 INFO    ] Initializing speech engine...
[2026-06-19 20:04:55,820.820 INFO    ] 2026-06-19 20:04:55
[2026-06-19 20:04:56,100.100 INFO    ] 2026-06-19 20:04:56
[2026-06-19 20:04:56,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:04:56,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:04:56,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:04:56,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:04:56,608.608 INFO    ] time= 19/06/2026 20:04:56
[2026-06-19 20:04:56,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:04:56,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:04:56,858.858 INFO    ] No existing commands found in stream
[2026-06-19 20:05:01,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:05:01,881.881 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 20:05:04,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:05:04,467.467 INFO    ] Checking for system updates...
[2026-06-19 20:05:04,507.507 INFO    ] 200
[2026-06-19 20:05:04,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:04,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:05:04,567.567 INFO    ] No update needed
[2026-06-19 20:05:04,569.569 INFO    ] Checking for camera pi updates...
[2026-06-19 20:05:04,606.606 INFO    ] 200
[2026-06-19 20:05:04,608.608 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:04,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:05:04,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:05:04,694.694 INFO    ] No camera update needed
[2026-06-19 20:05:04,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:05:04,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:05:04,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:05:04,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:05:06,749.749 INFO    ] ================================================
[2026-06-19 20:05:06,764.764 INFO    ] Launching Daemon at Fri Jun 19 20:05:06 IST 2026
[2026-06-19 20:05:06,775.775 INFO    ] ================================================
[2026-06-19 20:05:07,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:05:07
[2026-06-19 20:05:07,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:05:08,238.238 INFO    ] Initializing speech engine...
[2026-06-19 20:05:08,253.253 INFO    ] 2026-06-19 20:05:08
[2026-06-19 20:05:08,537.537 INFO    ] 2026-06-19 20:05:08
[2026-06-19 20:05:08,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:05:08,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:05:08,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:05:08,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:05:08,948.948 INFO    ] time= 19/06/2026 20:05:08
[2026-06-19 20:05:08,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:05:08,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:05:09,132.132 INFO    ] No existing commands found in stream
[2026-06-19 20:05:14,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:05:14,160.160 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 20:05:17,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:05:17,635.635 INFO    ] Checking for system updates...
[2026-06-19 20:05:17,675.675 INFO    ] 200
[2026-06-19 20:05:17,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:17,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:05:17,734.734 INFO    ] No update needed
[2026-06-19 20:05:17,737.737 INFO    ] Checking for camera pi updates...
[2026-06-19 20:05:17,772.772 INFO    ] 200
[2026-06-19 20:05:17,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:17,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:05:17,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:05:17,865.865 INFO    ] No camera update needed
[2026-06-19 20:05:17,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:05:17,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:05:17,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:05:17,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:05:19,924.924 INFO    ] ================================================
[2026-06-19 20:05:19,939.939 INFO    ] Launching Daemon at Fri Jun 19 20:05:19 IST 2026
[2026-06-19 20:05:19,949.949 INFO    ] ================================================
[2026-06-19 20:05:20,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:05:20
[2026-06-19 20:05:21,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:05:21,507.507 INFO    ] Initializing speech engine...
[2026-06-19 20:05:21,516.516 INFO    ] 2026-06-19 20:05:21
[2026-06-19 20:05:21,781.781 INFO    ] 2026-06-19 20:05:21
[2026-06-19 20:05:21,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:05:22,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:05:22,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:05:22,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:05:22,347.347 INFO    ] time= 19/06/2026 20:05:22
[2026-06-19 20:05:22,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:05:22,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:05:22,514.514 INFO    ] No existing commands found in stream
[2026-06-19 20:05:27,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:05:27,538.538 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 20:05:30,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:05:30,446.446 INFO    ] Checking for system updates...
[2026-06-19 20:05:30,483.483 INFO    ] 200
[2026-06-19 20:05:30,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:30,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:05:30,542.542 INFO    ] No update needed
[2026-06-19 20:05:30,545.545 INFO    ] Checking for camera pi updates...
[2026-06-19 20:05:30,580.580 INFO    ] 200
[2026-06-19 20:05:30,582.582 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:30,627.627 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:05:30,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:05:30,676.676 INFO    ] No camera update needed
[2026-06-19 20:05:30,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:05:30,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:05:30,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:05:30,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:05:32,735.735 INFO    ] ================================================
[2026-06-19 20:05:32,752.752 INFO    ] Launching Daemon at Fri Jun 19 20:05:32 IST 2026
[2026-06-19 20:05:32,764.764 INFO    ] ================================================
[2026-06-19 20:05:33,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:05:33
[2026-06-19 20:05:33,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:05:34,235.235 INFO    ] Initializing speech engine...
[2026-06-19 20:05:34,242.242 INFO    ] 2026-06-19 20:05:34
[2026-06-19 20:05:34,534.534 INFO    ] 2026-06-19 20:05:34
[2026-06-19 20:05:34,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:05:34,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:05:34,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:05:35,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:05:35,056.056 INFO    ] time= 19/06/2026 20:05:35
[2026-06-19 20:05:35,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:05:35,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:05:35,302.302 INFO    ] No existing commands found in stream
[2026-06-19 20:05:40,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:05:40,330.330 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 20:05:44,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:05:44,201.201 INFO    ] Checking for system updates...
[2026-06-19 20:05:44,243.243 INFO    ] 200
[2026-06-19 20:05:44,246.246 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:44,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:05:44,306.306 INFO    ] No update needed
[2026-06-19 20:05:44,308.308 INFO    ] Checking for camera pi updates...
[2026-06-19 20:05:44,342.342 INFO    ] 200
[2026-06-19 20:05:44,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:44,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:05:44,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:05:44,533.533 INFO    ] No camera update needed
[2026-06-19 20:05:44,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:05:44,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:05:44,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:05:44,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:05:46,589.589 INFO    ] ================================================
[2026-06-19 20:05:46,604.604 INFO    ] Launching Daemon at Fri Jun 19 20:05:46 IST 2026
[2026-06-19 20:05:46,614.614 INFO    ] ================================================
[2026-06-19 20:05:47,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:05:47
[2026-06-19 20:05:47,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:05:48,059.059 INFO    ] Initializing speech engine...
[2026-06-19 20:05:48,075.075 INFO    ] 2026-06-19 20:05:48
[2026-06-19 20:05:48,356.356 INFO    ] 2026-06-19 20:05:48
[2026-06-19 20:05:48,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:05:48,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:05:48,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:05:48,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:05:48,842.842 INFO    ] time= 19/06/2026 20:05:48
[2026-06-19 20:05:48,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:05:48,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:05:49,039.039 INFO    ] No existing commands found in stream
[2026-06-19 20:05:54,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:05:54,054.054 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 20:05:57,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:05:57,969.969 INFO    ] Checking for system updates...
[2026-06-19 20:05:58,005.005 INFO    ] 200
[2026-06-19 20:05:58,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:58,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:05:58,064.064 INFO    ] No update needed
[2026-06-19 20:05:58,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 20:05:58,101.101 INFO    ] 200
[2026-06-19 20:05:58,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:05:58,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:05:58,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:05:58,195.195 INFO    ] No camera update needed
[2026-06-19 20:05:58,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:05:58,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:05:58,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:05:58,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:06:00,250.250 INFO    ] ================================================
[2026-06-19 20:06:00,265.265 INFO    ] Launching Daemon at Fri Jun 19 20:06:00 IST 2026
[2026-06-19 20:06:00,276.276 INFO    ] ================================================
[2026-06-19 20:06:00,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:06:00
[2026-06-19 20:06:01,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:06:01,700.700 INFO    ] Initializing speech engine...
[2026-06-19 20:06:01,707.707 INFO    ] 2026-06-19 20:06:01
[2026-06-19 20:06:02,003.003 INFO    ] 2026-06-19 20:06:01
[2026-06-19 20:06:02,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:06:02,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:06:02,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:06:02,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:06:02,495.495 INFO    ] time= 19/06/2026 20:06:02
[2026-06-19 20:06:02,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:06:02,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:06:02,599.599 INFO    ] No existing commands found in stream
[2026-06-19 20:06:07,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:06:07,611.611 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-19 20:06:10,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:06:10,964.964 INFO    ] Checking for system updates...
[2026-06-19 20:06:11,000.000 INFO    ] 200
[2026-06-19 20:06:11,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:11,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:06:11,058.058 INFO    ] No update needed
[2026-06-19 20:06:11,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 20:06:11,094.094 INFO    ] 200
[2026-06-19 20:06:11,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:11,142.142 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:06:11,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:06:11,194.194 INFO    ] No camera update needed
[2026-06-19 20:06:11,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:06:11,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:06:11,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:06:11,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:06:13,249.249 INFO    ] ================================================
[2026-06-19 20:06:13,264.264 INFO    ] Launching Daemon at Fri Jun 19 20:06:13 IST 2026
[2026-06-19 20:06:13,275.275 INFO    ] ================================================
[2026-06-19 20:06:13,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:06:13
[2026-06-19 20:06:14,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:06:14,697.697 INFO    ] Initializing speech engine...
[2026-06-19 20:06:14,703.703 INFO    ] 2026-06-19 20:06:14
[2026-06-19 20:06:14,980.980 INFO    ] 2026-06-19 20:06:14
[2026-06-19 20:06:15,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:06:15,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:06:15,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:06:15,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:06:15,549.549 INFO    ] time= 19/06/2026 20:06:15
[2026-06-19 20:06:15,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:06:15,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:06:15,703.703 INFO    ] No existing commands found in stream
[2026-06-19 20:06:20,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:06:20,722.722 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 20:06:22,499.499 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:06:22,502.502 INFO    ] Checking for system updates...
[2026-06-19 20:06:22,540.540 INFO    ] 200
[2026-06-19 20:06:22,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:22,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:06:22,598.598 INFO    ] No update needed
[2026-06-19 20:06:22,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 20:06:22,634.634 INFO    ] 200
[2026-06-19 20:06:22,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:22,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:06:22,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:06:22,726.726 INFO    ] No camera update needed
[2026-06-19 20:06:22,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:06:22,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:06:22,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:06:22,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:06:24,784.784 INFO    ] ================================================
[2026-06-19 20:06:24,803.803 INFO    ] Launching Daemon at Fri Jun 19 20:06:24 IST 2026
[2026-06-19 20:06:24,814.814 INFO    ] ================================================
[2026-06-19 20:06:25,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:06:25
[2026-06-19 20:06:26,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:06:26,285.285 INFO    ] Initializing speech engine...
[2026-06-19 20:06:26,294.294 INFO    ] 2026-06-19 20:06:26
[2026-06-19 20:06:26,555.555 INFO    ] 2026-06-19 20:06:26
[2026-06-19 20:06:26,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:06:26,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:06:26,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:06:27,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:06:27,102.102 INFO    ] time= 19/06/2026 20:06:27
[2026-06-19 20:06:27,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:06:27,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:06:27,268.268 INFO    ] No existing commands found in stream
[2026-06-19 20:06:32,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:06:32,303.303 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 20:06:35,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:06:35,620.620 INFO    ] Checking for system updates...
[2026-06-19 20:06:35,656.656 INFO    ] 200
[2026-06-19 20:06:35,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:35,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:06:35,714.714 INFO    ] No update needed
[2026-06-19 20:06:35,716.716 INFO    ] Checking for camera pi updates...
[2026-06-19 20:06:35,753.753 INFO    ] 200
[2026-06-19 20:06:35,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:35,796.796 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:06:35,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:06:35,844.844 INFO    ] No camera update needed
[2026-06-19 20:06:35,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:06:35,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:06:35,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:06:35,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:06:37,900.900 INFO    ] ================================================
[2026-06-19 20:06:37,915.915 INFO    ] Launching Daemon at Fri Jun 19 20:06:37 IST 2026
[2026-06-19 20:06:37,926.926 INFO    ] ================================================
[2026-06-19 20:06:38,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:06:38
[2026-06-19 20:06:39,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:06:39,347.347 INFO    ] Initializing speech engine...
[2026-06-19 20:06:39,367.367 INFO    ] 2026-06-19 20:06:39
[2026-06-19 20:06:39,616.616 INFO    ] 2026-06-19 20:06:39
[2026-06-19 20:06:39,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:06:39,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:06:39,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:06:40,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:06:40,127.127 INFO    ] time= 19/06/2026 20:06:40
[2026-06-19 20:06:40,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:06:40,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:06:40,326.326 INFO    ] No existing commands found in stream
[2026-06-19 20:06:45,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:06:45,356.356 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 20:06:46,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:06:46,738.738 INFO    ] Checking for system updates...
[2026-06-19 20:06:46,773.773 INFO    ] 200
[2026-06-19 20:06:46,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:46,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:06:46,835.835 INFO    ] No update needed
[2026-06-19 20:06:46,838.838 INFO    ] Checking for camera pi updates...
[2026-06-19 20:06:46,871.871 INFO    ] 200
[2026-06-19 20:06:46,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:46,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:06:47,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:06:47,033.033 INFO    ] No camera update needed
[2026-06-19 20:06:47,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:06:47,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:06:47,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:06:47,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:06:49,089.089 INFO    ] ================================================
[2026-06-19 20:06:49,104.104 INFO    ] Launching Daemon at Fri Jun 19 20:06:49 IST 2026
[2026-06-19 20:06:49,115.115 INFO    ] ================================================
[2026-06-19 20:06:49,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:06:49
[2026-06-19 20:06:50,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:06:50,557.557 INFO    ] Initializing speech engine...
[2026-06-19 20:06:50,566.566 INFO    ] 2026-06-19 20:06:50
[2026-06-19 20:06:50,855.855 INFO    ] 2026-06-19 20:06:50
[2026-06-19 20:06:50,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:06:51,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:06:51,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:06:51,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:06:51,268.268 INFO    ] time= 19/06/2026 20:06:51
[2026-06-19 20:06:51,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:06:51,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:06:51,436.436 INFO    ] No existing commands found in stream
[2026-06-19 20:06:56,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:06:56,469.469 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 20:06:57,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:06:57,953.953 INFO    ] Checking for system updates...
[2026-06-19 20:06:57,990.990 INFO    ] 200
[2026-06-19 20:06:57,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:58,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:06:58,054.054 INFO    ] No update needed
[2026-06-19 20:06:58,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 20:06:58,092.092 INFO    ] 200
[2026-06-19 20:06:58,094.094 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:06:58,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:06:58,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:06:58,185.185 INFO    ] No camera update needed
[2026-06-19 20:06:58,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:06:58,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:06:58,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:06:58,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:07:00,242.242 INFO    ] ================================================
[2026-06-19 20:07:00,258.258 INFO    ] Launching Daemon at Fri Jun 19 20:07:00 IST 2026
[2026-06-19 20:07:00,269.269 INFO    ] ================================================
[2026-06-19 20:07:00,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:07:00
[2026-06-19 20:07:01,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:07:01,895.895 INFO    ] Initializing speech engine...
[2026-06-19 20:07:01,904.904 INFO    ] 2026-06-19 20:07:01
[2026-06-19 20:07:02,192.192 INFO    ] 2026-06-19 20:07:02
[2026-06-19 20:07:02,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:07:02,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:07:02,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:07:02,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:07:02,814.814 INFO    ] time= 19/06/2026 20:07:02
[2026-06-19 20:07:02,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:07:02,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:07:02,967.967 INFO    ] No existing commands found in stream
[2026-06-19 20:07:07,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:07:07,997.997 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 20:07:12,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:07:12,161.161 INFO    ] Checking for system updates...
[2026-06-19 20:07:12,197.197 INFO    ] 200
[2026-06-19 20:07:12,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:07:12,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:07:12,259.259 INFO    ] No update needed
[2026-06-19 20:07:12,261.261 INFO    ] Checking for camera pi updates...
[2026-06-19 20:07:12,295.295 INFO    ] 200
[2026-06-19 20:07:12,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:07:12,338.338 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:07:12,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:07:12,382.382 INFO    ] No camera update needed
[2026-06-19 20:07:12,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:07:12,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:07:12,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:07:12,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:07:14,437.437 INFO    ] ================================================
[2026-06-19 20:07:14,453.453 INFO    ] Launching Daemon at Fri Jun 19 20:07:14 IST 2026
[2026-06-19 20:07:14,465.465 INFO    ] ================================================
[2026-06-19 20:07:15,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:07:15
[2026-06-19 20:07:15,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:07:15,883.883 INFO    ] Initializing speech engine...
[2026-06-19 20:07:15,897.897 INFO    ] 2026-06-19 20:07:15
[2026-06-19 20:07:16,176.176 INFO    ] 2026-06-19 20:07:16
[2026-06-19 20:07:16,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:07:16,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:07:16,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:07:16,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:07:16,580.580 INFO    ] time= 19/06/2026 20:07:16
[2026-06-19 20:07:16,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:07:16,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:07:16,761.761 INFO    ] No existing commands found in stream
[2026-06-19 20:07:21,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:07:21,791.791 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 20:07:25,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:07:25,111.111 INFO    ] Checking for system updates...
[2026-06-19 20:07:25,147.147 INFO    ] 200
[2026-06-19 20:07:25,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:07:25,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:07:25,208.208 INFO    ] No update needed
[2026-06-19 20:07:25,210.210 INFO    ] Checking for camera pi updates...
[2026-06-19 20:07:25,245.245 INFO    ] 200
[2026-06-19 20:07:25,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:07:25,294.294 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:07:25,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:07:25,340.340 INFO    ] No camera update needed
[2026-06-19 20:07:25,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:07:25,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:07:25,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:07:25,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:07:27,396.396 INFO    ] ================================================
[2026-06-19 20:07:27,412.412 INFO    ] Launching Daemon at Fri Jun 19 20:07:27 IST 2026
[2026-06-19 20:07:27,423.423 INFO    ] ================================================
[2026-06-19 20:07:28,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:07:28
[2026-06-19 20:07:28,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:07:28,978.978 INFO    ] Initializing speech engine...
[2026-06-19 20:07:28,991.991 INFO    ] 2026-06-19 20:07:28
[2026-06-19 20:07:29,267.267 INFO    ] 2026-06-19 20:07:29
[2026-06-19 20:07:29,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:07:29,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:07:29,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:07:29,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:07:29,754.754 INFO    ] time= 19/06/2026 20:07:29
[2026-06-19 20:07:29,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:07:29,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:07:29,950.950 INFO    ] No existing commands found in stream
[2026-06-19 20:07:34,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:07:34,981.981 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 20:07:36,134.134 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:07:36,137.137 INFO    ] Checking for system updates...
[2026-06-19 20:07:36,173.173 INFO    ] 200
[2026-06-19 20:07:36,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:07:36,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:07:36,233.233 INFO    ] No update needed
[2026-06-19 20:07:36,235.235 INFO    ] Checking for camera pi updates...
[2026-06-19 20:07:36,270.270 INFO    ] 200
[2026-06-19 20:07:36,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:07:36,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:07:36,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:07:36,363.363 INFO    ] No camera update needed
[2026-06-19 20:07:36,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:07:36,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:07:36,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:07:36,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:07:38,421.421 INFO    ] ================================================
[2026-06-19 20:07:38,437.437 INFO    ] Launching Daemon at Fri Jun 19 20:07:38 IST 2026
[2026-06-19 20:07:38,448.448 INFO    ] ================================================
[2026-06-19 20:07:39,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:07:39
[2026-06-19 20:07:39,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:07:39,908.908 INFO    ] Initializing speech engine...
[2026-06-19 20:07:39,915.915 INFO    ] 2026-06-19 20:07:39
[2026-06-19 20:07:40,174.174 INFO    ] 2026-06-19 20:07:40
[2026-06-19 20:07:40,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:07:40,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:07:40,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:07:40,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:07:40,651.651 INFO    ] time= 19/06/2026 20:07:40
[2026-06-19 20:07:40,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:07:40,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:07:40,884.884 INFO    ] No existing commands found in stream
[2026-06-19 20:07:45,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:07:45,911.911 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 20:07:47,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:07:47,164.164 INFO    ] Checking for system updates...
[2026-06-19 20:07:47,200.200 INFO    ] 200
[2026-06-19 20:07:47,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:07:47,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:07:47,259.259 INFO    ] No update needed
[2026-06-19 20:07:47,261.261 INFO    ] Checking for camera pi updates...
[2026-06-19 20:07:47,294.294 INFO    ] 200
[2026-06-19 20:07:47,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:07:47,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:07:47,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:07:47,469.469 INFO    ] No camera update needed
[2026-06-19 20:07:47,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:07:47,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:07:47,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:07:47,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:07:49,527.527 INFO    ] ================================================
[2026-06-19 20:07:49,542.542 INFO    ] Launching Daemon at Fri Jun 19 20:07:49 IST 2026
[2026-06-19 20:07:49,553.553 INFO    ] ================================================
[2026-06-19 20:07:50,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:07:50
[2026-06-19 20:07:50,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:07:50,985.985 INFO    ] Initializing speech engine...
[2026-06-19 20:07:50,999.999 INFO    ] 2026-06-19 20:07:50
[2026-06-19 20:07:51,256.256 INFO    ] 2026-06-19 20:07:51
[2026-06-19 20:07:51,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:07:51,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:07:51,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:07:51,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:07:51,743.743 INFO    ] time= 19/06/2026 20:07:51
[2026-06-19 20:07:51,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:07:51,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:07:51,930.930 INFO    ] No existing commands found in stream
[2026-06-19 20:07:56,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:07:56,945.945 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 20:08:01,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:08:01,140.140 INFO    ] Checking for system updates...
[2026-06-19 20:08:01,225.225 INFO    ] 200
[2026-06-19 20:08:01,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:01,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:08:01,337.337 INFO    ] No update needed
[2026-06-19 20:08:01,341.341 INFO    ] Checking for camera pi updates...
[2026-06-19 20:08:01,407.407 INFO    ] 200
[2026-06-19 20:08:01,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:01,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:08:01,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:08:01,544.544 INFO    ] No camera update needed
[2026-06-19 20:08:01,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:08:01,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:08:01,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:08:01,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:08:03,627.627 INFO    ] ================================================
[2026-06-19 20:08:03,643.643 INFO    ] Launching Daemon at Fri Jun 19 20:08:03 IST 2026
[2026-06-19 20:08:03,654.654 INFO    ] ================================================
[2026-06-19 20:08:04,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:08:04
[2026-06-19 20:08:04,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:08:05,113.113 INFO    ] Initializing speech engine...
[2026-06-19 20:08:05,119.119 INFO    ] 2026-06-19 20:08:05
[2026-06-19 20:08:05,395.395 INFO    ] 2026-06-19 20:08:05
[2026-06-19 20:08:05,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:08:05,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:08:05,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:08:05,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:08:05,840.840 INFO    ] time= 19/06/2026 20:08:05
[2026-06-19 20:08:05,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:08:05,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:08:06,129.129 INFO    ] No existing commands found in stream
[2026-06-19 20:08:11,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:08:11,166.166 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 20:08:15,009.009 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:08:15,011.011 INFO    ] Checking for system updates...
[2026-06-19 20:08:15,050.050 INFO    ] 200
[2026-06-19 20:08:15,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:15,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:08:15,108.108 INFO    ] No update needed
[2026-06-19 20:08:15,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 20:08:15,145.145 INFO    ] 200
[2026-06-19 20:08:15,148.148 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:15,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:08:15,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:08:15,234.234 INFO    ] No camera update needed
[2026-06-19 20:08:15,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:08:15,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:08:15,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:08:15,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:08:17,290.290 INFO    ] ================================================
[2026-06-19 20:08:17,306.306 INFO    ] Launching Daemon at Fri Jun 19 20:08:17 IST 2026
[2026-06-19 20:08:17,318.318 INFO    ] ================================================
[2026-06-19 20:08:17,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:08:17
[2026-06-19 20:08:18,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:08:18,733.733 INFO    ] Initializing speech engine...
[2026-06-19 20:08:18,739.739 INFO    ] 2026-06-19 20:08:18
[2026-06-19 20:08:19,029.029 INFO    ] 2026-06-19 20:08:18
[2026-06-19 20:08:19,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:08:19,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:08:19,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:08:19,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:08:19,442.442 INFO    ] time= 19/06/2026 20:08:19
[2026-06-19 20:08:19,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:08:19,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:08:19,613.613 INFO    ] No existing commands found in stream
[2026-06-19 20:08:24,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:08:24,641.641 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 20:08:27,876.876 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:08:27,878.878 INFO    ] Checking for system updates...
[2026-06-19 20:08:27,914.914 INFO    ] 200
[2026-06-19 20:08:27,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:27,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:08:27,971.971 INFO    ] No update needed
[2026-06-19 20:08:27,974.974 INFO    ] Checking for camera pi updates...
[2026-06-19 20:08:28,007.007 INFO    ] 200
[2026-06-19 20:08:28,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:28,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:08:28,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:08:28,109.109 INFO    ] No camera update needed
[2026-06-19 20:08:28,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:08:28,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:08:28,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:08:28,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:08:30,164.164 INFO    ] ================================================
[2026-06-19 20:08:30,179.179 INFO    ] Launching Daemon at Fri Jun 19 20:08:30 IST 2026
[2026-06-19 20:08:30,191.191 INFO    ] ================================================
[2026-06-19 20:08:30,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:08:30
[2026-06-19 20:08:31,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:08:31,832.832 INFO    ] Initializing speech engine...
[2026-06-19 20:08:31,849.849 INFO    ] 2026-06-19 20:08:31
[2026-06-19 20:08:32,145.145 INFO    ] 2026-06-19 20:08:32
[2026-06-19 20:08:32,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:08:32,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:08:32,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:08:32,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:08:32,719.719 INFO    ] time= 19/06/2026 20:08:32
[2026-06-19 20:08:32,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:08:32,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:08:32,860.860 INFO    ] No existing commands found in stream
[2026-06-19 20:08:37,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:08:37,883.883 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 20:08:38,837.837 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:08:38,840.840 INFO    ] Checking for system updates...
[2026-06-19 20:08:38,879.879 INFO    ] 200
[2026-06-19 20:08:38,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:38,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:08:38,936.936 INFO    ] No update needed
[2026-06-19 20:08:38,939.939 INFO    ] Checking for camera pi updates...
[2026-06-19 20:08:38,973.973 INFO    ] 200
[2026-06-19 20:08:38,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:39,016.016 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:08:39,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:08:39,066.066 INFO    ] No camera update needed
[2026-06-19 20:08:39,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:08:39,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:08:39,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:08:39,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:08:41,122.122 INFO    ] ================================================
[2026-06-19 20:08:41,138.138 INFO    ] Launching Daemon at Fri Jun 19 20:08:41 IST 2026
[2026-06-19 20:08:41,150.150 INFO    ] ================================================
[2026-06-19 20:08:41,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:08:41
[2026-06-19 20:08:42,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:08:42,563.563 INFO    ] Initializing speech engine...
[2026-06-19 20:08:42,579.579 INFO    ] 2026-06-19 20:08:42
[2026-06-19 20:08:42,863.863 INFO    ] 2026-06-19 20:08:42
[2026-06-19 20:08:42,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:08:43,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:08:43,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:08:43,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:08:43,287.287 INFO    ] time= 19/06/2026 20:08:43
[2026-06-19 20:08:43,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:08:43,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:08:43,457.457 INFO    ] No existing commands found in stream
[2026-06-19 20:08:48,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:08:48,480.480 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 20:08:49,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:08:49,930.930 INFO    ] Checking for system updates...
[2026-06-19 20:08:49,967.967 INFO    ] 200
[2026-06-19 20:08:49,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:50,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:08:50,035.035 INFO    ] No update needed
[2026-06-19 20:08:50,038.038 INFO    ] Checking for camera pi updates...
[2026-06-19 20:08:50,073.073 INFO    ] 200
[2026-06-19 20:08:50,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:08:50,117.117 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:08:50,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:08:50,153.153 INFO    ] No camera update needed
[2026-06-19 20:08:50,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:08:50,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:08:50,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:08:50,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:08:52,212.212 INFO    ] ================================================
[2026-06-19 20:08:52,228.228 INFO    ] Launching Daemon at Fri Jun 19 20:08:52 IST 2026
[2026-06-19 20:08:52,239.239 INFO    ] ================================================
[2026-06-19 20:08:52,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:08:52
[2026-06-19 20:08:53,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:08:53,858.858 INFO    ] Initializing speech engine...
[2026-06-19 20:08:53,868.868 INFO    ] 2026-06-19 20:08:53
[2026-06-19 20:08:54,154.154 INFO    ] 2026-06-19 20:08:54
[2026-06-19 20:08:54,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:08:54,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:08:54,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:08:54,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:08:54,696.696 INFO    ] time= 19/06/2026 20:08:54
[2026-06-19 20:08:54,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:08:54,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:08:54,849.849 INFO    ] No existing commands found in stream
[2026-06-19 20:08:59,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:08:59,883.883 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 20:09:02,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:09:02,719.719 INFO    ] Checking for system updates...
[2026-06-19 20:09:02,755.755 INFO    ] 200
[2026-06-19 20:09:02,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:02,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:09:02,819.819 INFO    ] No update needed
[2026-06-19 20:09:02,822.822 INFO    ] Checking for camera pi updates...
[2026-06-19 20:09:02,858.858 INFO    ] 200
[2026-06-19 20:09:02,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:02,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:09:02,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:09:02,934.934 INFO    ] No camera update needed
[2026-06-19 20:09:02,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:09:02,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:09:02,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:09:02,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:09:04,990.990 INFO    ] ================================================
[2026-06-19 20:09:05,006.006 INFO    ] Launching Daemon at Fri Jun 19 20:09:05 IST 2026
[2026-06-19 20:09:05,017.017 INFO    ] ================================================
[2026-06-19 20:09:05,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:09:05
[2026-06-19 20:09:06,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:09:06,486.486 INFO    ] Initializing speech engine...
[2026-06-19 20:09:06,495.495 INFO    ] 2026-06-19 20:09:06
[2026-06-19 20:09:06,741.741 INFO    ] 2026-06-19 20:09:06
[2026-06-19 20:09:06,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:09:06,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:09:07,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:09:07,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:09:07,274.274 INFO    ] time= 19/06/2026 20:09:07
[2026-06-19 20:09:07,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:09:07,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:09:07,457.457 INFO    ] No existing commands found in stream
[2026-06-19 20:09:12,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:09:12,479.479 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 20:09:16,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:09:16,066.066 INFO    ] Checking for system updates...
[2026-06-19 20:09:16,102.102 INFO    ] 200
[2026-06-19 20:09:16,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:16,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:09:16,159.159 INFO    ] No update needed
[2026-06-19 20:09:16,161.161 INFO    ] Checking for camera pi updates...
[2026-06-19 20:09:16,195.195 INFO    ] 200
[2026-06-19 20:09:16,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:16,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:09:16,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:09:16,287.287 INFO    ] No camera update needed
[2026-06-19 20:09:16,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:09:16,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:09:16,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:09:16,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:09:18,345.345 INFO    ] ================================================
[2026-06-19 20:09:18,361.361 INFO    ] Launching Daemon at Fri Jun 19 20:09:18 IST 2026
[2026-06-19 20:09:18,373.373 INFO    ] ================================================
[2026-06-19 20:09:18,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:09:18
[2026-06-19 20:09:19,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:09:19,828.828 INFO    ] Initializing speech engine...
[2026-06-19 20:09:19,837.837 INFO    ] 2026-06-19 20:09:19
[2026-06-19 20:09:20,100.100 INFO    ] 2026-06-19 20:09:20
[2026-06-19 20:09:20,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:09:20,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:09:20,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:09:20,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:09:20,647.647 INFO    ] time= 19/06/2026 20:09:20
[2026-06-19 20:09:20,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:09:20,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:09:20,798.798 INFO    ] No existing commands found in stream
[2026-06-19 20:09:25,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:09:25,817.817 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 20:09:27,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:09:27,710.710 INFO    ] Checking for system updates...
[2026-06-19 20:09:27,747.747 INFO    ] 200
[2026-06-19 20:09:27,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:27,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:09:27,806.806 INFO    ] No update needed
[2026-06-19 20:09:27,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 20:09:27,844.844 INFO    ] 200
[2026-06-19 20:09:27,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:27,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:09:27,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:09:27,937.937 INFO    ] No camera update needed
[2026-06-19 20:09:27,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:09:27,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:09:27,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:09:27,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:09:30,998.998 INFO    ] ================================================
[2026-06-19 20:09:30,013.013 INFO    ] Launching Daemon at Fri Jun 19 20:09:30 IST 2026
[2026-06-19 20:09:30,024.024 INFO    ] ================================================
[2026-06-19 20:09:30,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:09:30
[2026-06-19 20:09:31,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:09:31,639.639 INFO    ] Initializing speech engine...
[2026-06-19 20:09:31,646.646 INFO    ] 2026-06-19 20:09:31
[2026-06-19 20:09:31,923.923 INFO    ] 2026-06-19 20:09:31
[2026-06-19 20:09:31,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:09:32,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:09:32,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:09:32,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:09:32,516.516 INFO    ] time= 19/06/2026 20:09:32
[2026-06-19 20:09:32,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:09:32,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:09:32,695.695 INFO    ] No existing commands found in stream
[2026-06-19 20:09:37,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:09:37,728.728 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 20:09:38,307.307 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:09:38,310.310 INFO    ] Checking for system updates...
[2026-06-19 20:09:38,346.346 INFO    ] 200
[2026-06-19 20:09:38,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:38,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:09:38,404.404 INFO    ] No update needed
[2026-06-19 20:09:38,407.407 INFO    ] Checking for camera pi updates...
[2026-06-19 20:09:38,440.440 INFO    ] 200
[2026-06-19 20:09:38,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:38,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:09:38,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:09:38,535.535 INFO    ] No camera update needed
[2026-06-19 20:09:38,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:09:38,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:09:38,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:09:38,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:09:40,590.590 INFO    ] ================================================
[2026-06-19 20:09:40,606.606 INFO    ] Launching Daemon at Fri Jun 19 20:09:40 IST 2026
[2026-06-19 20:09:40,618.618 INFO    ] ================================================
[2026-06-19 20:09:41,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:09:41
[2026-06-19 20:09:41,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:09:42,053.053 INFO    ] Initializing speech engine...
[2026-06-19 20:09:42,062.062 INFO    ] 2026-06-19 20:09:42
[2026-06-19 20:09:42,321.321 INFO    ] 2026-06-19 20:09:42
[2026-06-19 20:09:42,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:09:42,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:09:42,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:09:42,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:09:42,786.786 INFO    ] time= 19/06/2026 20:09:42
[2026-06-19 20:09:42,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:09:42,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:09:43,016.016 INFO    ] No existing commands found in stream
[2026-06-19 20:09:48,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:09:48,046.046 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 20:09:51,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:09:51,724.724 INFO    ] Checking for system updates...
[2026-06-19 20:09:51,763.763 INFO    ] 200
[2026-06-19 20:09:51,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:51,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:09:51,820.820 INFO    ] No update needed
[2026-06-19 20:09:51,822.822 INFO    ] Checking for camera pi updates...
[2026-06-19 20:09:51,856.856 INFO    ] 200
[2026-06-19 20:09:51,858.858 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:09:51,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:09:52,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:09:52,044.044 INFO    ] No camera update needed
[2026-06-19 20:09:52,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:09:52,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:09:52,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:09:52,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:09:54,099.099 INFO    ] ================================================
[2026-06-19 20:09:54,115.115 INFO    ] Launching Daemon at Fri Jun 19 20:09:54 IST 2026
[2026-06-19 20:09:54,126.126 INFO    ] ================================================
[2026-06-19 20:09:54,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:09:54
[2026-06-19 20:09:55,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:09:55,763.763 INFO    ] Initializing speech engine...
[2026-06-19 20:09:55,777.777 INFO    ] 2026-06-19 20:09:55
[2026-06-19 20:09:56,083.083 INFO    ] 2026-06-19 20:09:56
[2026-06-19 20:09:56,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:09:56,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:09:56,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:09:56,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:09:56,606.606 INFO    ] time= 19/06/2026 20:09:56
[2026-06-19 20:09:56,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:09:56,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:09:56,779.779 INFO    ] No existing commands found in stream
[2026-06-19 20:10:01,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:10:01,819.819 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 20:10:08,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:10:08,413.413 INFO    ] Checking for system updates...
[2026-06-19 20:10:08,451.451 INFO    ] 200
[2026-06-19 20:10:08,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:08,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:10:08,511.511 INFO    ] No update needed
[2026-06-19 20:10:08,514.514 INFO    ] Checking for camera pi updates...
[2026-06-19 20:10:08,552.552 INFO    ] 200
[2026-06-19 20:10:08,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:08,605.605 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:10:08,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:10:08,657.657 INFO    ] No camera update needed
[2026-06-19 20:10:08,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:10:08,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:10:08,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:10:08,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:10:10,716.716 INFO    ] ================================================
[2026-06-19 20:10:10,731.731 INFO    ] Launching Daemon at Fri Jun 19 20:10:10 IST 2026
[2026-06-19 20:10:10,742.742 INFO    ] ================================================
[2026-06-19 20:10:11,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:10:11
[2026-06-19 20:10:11,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:10:12,170.170 INFO    ] Initializing speech engine...
[2026-06-19 20:10:12,179.179 INFO    ] 2026-06-19 20:10:12
[2026-06-19 20:10:12,425.425 INFO    ] 2026-06-19 20:10:12
[2026-06-19 20:10:12,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:10:12,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:10:12,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:10:12,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:10:12,899.899 INFO    ] time= 19/06/2026 20:10:12
[2026-06-19 20:10:12,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:10:12,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:10:13,117.117 INFO    ] No existing commands found in stream
[2026-06-19 20:10:18,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:10:18,144.144 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 20:10:19,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:10:19,981.981 INFO    ] Checking for system updates...
[2026-06-19 20:10:20,016.016 INFO    ] 200
[2026-06-19 20:10:20,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:20,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:10:20,081.081 INFO    ] No update needed
[2026-06-19 20:10:20,083.083 INFO    ] Checking for camera pi updates...
[2026-06-19 20:10:20,120.120 INFO    ] 200
[2026-06-19 20:10:20,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:20,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:10:20,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:10:20,206.206 INFO    ] No camera update needed
[2026-06-19 20:10:20,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:10:20,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:10:20,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:10:20,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:10:22,262.262 INFO    ] ================================================
[2026-06-19 20:10:22,278.278 INFO    ] Launching Daemon at Fri Jun 19 20:10:22 IST 2026
[2026-06-19 20:10:22,288.288 INFO    ] ================================================
[2026-06-19 20:10:22,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:10:22
[2026-06-19 20:10:23,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:10:23,753.753 INFO    ] Initializing speech engine...
[2026-06-19 20:10:23,761.761 INFO    ] 2026-06-19 20:10:23
[2026-06-19 20:10:24,021.021 INFO    ] 2026-06-19 20:10:24
[2026-06-19 20:10:24,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:10:24,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:10:24,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:10:24,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:10:24,512.512 INFO    ] time= 19/06/2026 20:10:24
[2026-06-19 20:10:24,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:10:24,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:10:24,708.708 INFO    ] No existing commands found in stream
[2026-06-19 20:10:29,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:10:29,734.734 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-19 20:10:33,921.921 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:10:33,923.923 INFO    ] Checking for system updates...
[2026-06-19 20:10:33,963.963 INFO    ] 200
[2026-06-19 20:10:33,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:34,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:10:34,021.021 INFO    ] No update needed
[2026-06-19 20:10:34,023.023 INFO    ] Checking for camera pi updates...
[2026-06-19 20:10:34,057.057 INFO    ] 200
[2026-06-19 20:10:34,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:34,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:10:34,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:10:34,147.147 INFO    ] No camera update needed
[2026-06-19 20:10:34,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:10:34,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:10:34,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:10:34,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:10:36,204.204 INFO    ] ================================================
[2026-06-19 20:10:36,220.220 INFO    ] Launching Daemon at Fri Jun 19 20:10:36 IST 2026
[2026-06-19 20:10:36,231.231 INFO    ] ================================================
[2026-06-19 20:10:36,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:10:36
[2026-06-19 20:10:37,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:10:37,680.680 INFO    ] Initializing speech engine...
[2026-06-19 20:10:37,689.689 INFO    ] 2026-06-19 20:10:37
[2026-06-19 20:10:37,989.989 INFO    ] 2026-06-19 20:10:37
[2026-06-19 20:10:38,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:10:38,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:10:38,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:10:38,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:10:38,412.412 INFO    ] time= 19/06/2026 20:10:38
[2026-06-19 20:10:38,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:10:38,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:10:38,564.564 INFO    ] No existing commands found in stream
[2026-06-19 20:10:43,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:10:43,587.587 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 20:10:44,297.297 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:10:44,300.300 INFO    ] Checking for system updates...
[2026-06-19 20:10:44,340.340 INFO    ] 200
[2026-06-19 20:10:44,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:44,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:10:44,398.398 INFO    ] No update needed
[2026-06-19 20:10:44,400.400 INFO    ] Checking for camera pi updates...
[2026-06-19 20:10:44,434.434 INFO    ] 200
[2026-06-19 20:10:44,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:44,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:10:44,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:10:44,532.532 INFO    ] No camera update needed
[2026-06-19 20:10:44,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:10:44,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:10:44,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:10:44,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:10:46,588.588 INFO    ] ================================================
[2026-06-19 20:10:46,604.604 INFO    ] Launching Daemon at Fri Jun 19 20:10:46 IST 2026
[2026-06-19 20:10:46,616.616 INFO    ] ================================================
[2026-06-19 20:10:47,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:10:47
[2026-06-19 20:10:47,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:10:48,034.034 INFO    ] Initializing speech engine...
[2026-06-19 20:10:48,043.043 INFO    ] 2026-06-19 20:10:48
[2026-06-19 20:10:48,289.289 INFO    ] 2026-06-19 20:10:48
[2026-06-19 20:10:48,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:10:48,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:10:48,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:10:48,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:10:48,845.845 INFO    ] time= 19/06/2026 20:10:48
[2026-06-19 20:10:48,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:10:48,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:10:49,001.001 INFO    ] No existing commands found in stream
[2026-06-19 20:10:54,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:10:54,023.023 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 20:10:55,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:10:55,509.509 INFO    ] Checking for system updates...
[2026-06-19 20:10:55,546.546 INFO    ] 200
[2026-06-19 20:10:55,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:55,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:10:55,604.604 INFO    ] No update needed
[2026-06-19 20:10:55,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 20:10:55,645.645 INFO    ] 200
[2026-06-19 20:10:55,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:10:55,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:10:55,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:10:55,739.739 INFO    ] No camera update needed
[2026-06-19 20:10:55,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:10:55,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:10:55,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:10:55,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:10:57,795.795 INFO    ] ================================================
[2026-06-19 20:10:57,816.816 INFO    ] Launching Daemon at Fri Jun 19 20:10:57 IST 2026
[2026-06-19 20:10:57,828.828 INFO    ] ================================================
[2026-06-19 20:10:58,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:10:58
[2026-06-19 20:10:59,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:10:59,476.476 INFO    ] Initializing speech engine...
[2026-06-19 20:10:59,488.488 INFO    ] 2026-06-19 20:10:59
[2026-06-19 20:10:59,766.766 INFO    ] 2026-06-19 20:10:59
[2026-06-19 20:10:59,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:11:00,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:11:00,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:11:00,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:11:00,305.305 INFO    ] time= 19/06/2026 20:11:00
[2026-06-19 20:11:00,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:11:00,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:11:00,457.457 INFO    ] No existing commands found in stream
[2026-06-19 20:11:05,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:11:05,476.476 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 20:11:09,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:11:09,735.735 INFO    ] Checking for system updates...
[2026-06-19 20:11:09,772.772 INFO    ] 200
[2026-06-19 20:11:09,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:11:09,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:11:09,832.832 INFO    ] No update needed
[2026-06-19 20:11:09,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 20:11:09,870.870 INFO    ] 200
[2026-06-19 20:11:09,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:11:09,915.915 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:11:09,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:11:09,963.963 INFO    ] No camera update needed
[2026-06-19 20:11:09,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:11:09,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:11:09,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:11:09,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:11:12,023.023 INFO    ] ================================================
[2026-06-19 20:11:12,039.039 INFO    ] Launching Daemon at Fri Jun 19 20:11:12 IST 2026
[2026-06-19 20:11:12,050.050 INFO    ] ================================================
[2026-06-19 20:11:12,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:11:12
[2026-06-19 20:11:13,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:11:13,518.518 INFO    ] Initializing speech engine...
[2026-06-19 20:11:13,523.523 INFO    ] 2026-06-19 20:11:13
[2026-06-19 20:11:13,787.787 INFO    ] 2026-06-19 20:11:13
[2026-06-19 20:11:13,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:11:14,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:11:14,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:11:14,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:11:14,258.258 INFO    ] time= 19/06/2026 20:11:14
[2026-06-19 20:11:14,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:11:14,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:11:14,476.476 INFO    ] No existing commands found in stream
[2026-06-19 20:11:19,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:11:19,501.501 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 20:11:22,286.286 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:11:22,289.289 INFO    ] Checking for system updates...
[2026-06-19 20:11:22,325.325 INFO    ] 200
[2026-06-19 20:11:22,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:11:22,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:11:22,383.383 INFO    ] No update needed
[2026-06-19 20:11:22,386.386 INFO    ] Checking for camera pi updates...
[2026-06-19 20:11:22,424.424 INFO    ] 200
[2026-06-19 20:11:22,427.427 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:11:22,467.467 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:11:22,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:11:22,522.522 INFO    ] No camera update needed
[2026-06-19 20:11:22,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:11:22,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:11:22,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:11:22,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:11:24,578.578 INFO    ] ================================================
[2026-06-19 20:11:24,594.594 INFO    ] Launching Daemon at Fri Jun 19 20:11:24 IST 2026
[2026-06-19 20:11:24,606.606 INFO    ] ================================================
[2026-06-19 20:11:25,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:11:25
[2026-06-19 20:11:25,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:11:26,036.036 INFO    ] Initializing speech engine...
[2026-06-19 20:11:26,045.045 INFO    ] 2026-06-19 20:11:26
[2026-06-19 20:11:26,305.305 INFO    ] 2026-06-19 20:11:26
[2026-06-19 20:11:26,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:11:26,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:11:26,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:11:26,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:11:26,847.847 INFO    ] time= 19/06/2026 20:11:26
[2026-06-19 20:11:26,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:11:26,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:11:27,021.021 INFO    ] No existing commands found in stream
[2026-06-19 20:11:32,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:11:32,038.038 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 20:11:32,575.575 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:11:32,578.578 INFO    ] Checking for system updates...
[2026-06-19 20:11:32,620.620 INFO    ] 200
[2026-06-19 20:11:32,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:11:32,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:11:32,686.686 INFO    ] No update needed
[2026-06-19 20:11:32,689.689 INFO    ] Checking for camera pi updates...
[2026-06-19 20:11:32,727.727 INFO    ] 200
[2026-06-19 20:11:32,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:11:32,775.775 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:11:32,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:11:32,821.821 INFO    ] No camera update needed
[2026-06-19 20:11:32,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:11:32,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:11:32,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:11:32,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:11:34,878.878 INFO    ] ================================================
[2026-06-19 20:11:34,894.894 INFO    ] Launching Daemon at Fri Jun 19 20:11:34 IST 2026
[2026-06-19 20:11:34,905.905 INFO    ] ================================================
[2026-06-19 20:11:35,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:11:35
[2026-06-19 20:11:36,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:11:36,385.385 INFO    ] Initializing speech engine...
[2026-06-19 20:11:36,398.398 INFO    ] 2026-06-19 20:11:36
[2026-06-19 20:11:36,691.691 INFO    ] 2026-06-19 20:11:36
[2026-06-19 20:11:36,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:11:36,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:11:36,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:11:37,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:11:37,238.238 INFO    ] time= 19/06/2026 20:11:37
[2026-06-19 20:11:37,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:11:37,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:11:37,401.401 INFO    ] No existing commands found in stream
[2026-06-19 20:11:42,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:11:42,433.433 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 20:11:46,871.871 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:11:46,874.874 INFO    ] Checking for system updates...
[2026-06-19 20:11:46,917.917 INFO    ] 200
[2026-06-19 20:11:46,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:11:46,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:11:46,978.978 INFO    ] No update needed
[2026-06-19 20:11:46,981.981 INFO    ] Checking for camera pi updates...
[2026-06-19 20:11:47,016.016 INFO    ] 200
[2026-06-19 20:11:47,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:11:47,062.062 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:11:47,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:11:47,105.105 INFO    ] No camera update needed
[2026-06-19 20:11:47,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:11:47,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:11:47,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:11:47,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:11:49,166.166 INFO    ] ================================================
[2026-06-19 20:11:49,182.182 INFO    ] Launching Daemon at Fri Jun 19 20:11:49 IST 2026
[2026-06-19 20:11:49,193.193 INFO    ] ================================================
[2026-06-19 20:11:49,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:11:49
[2026-06-19 20:11:50,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:11:50,642.642 INFO    ] Initializing speech engine...
[2026-06-19 20:11:50,658.658 INFO    ] 2026-06-19 20:11:50
[2026-06-19 20:11:50,950.950 INFO    ] 2026-06-19 20:11:50
[2026-06-19 20:11:50,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:11:51,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:11:51,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:11:51,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:11:51,385.385 INFO    ] time= 19/06/2026 20:11:51
[2026-06-19 20:11:51,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:11:51,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:11:51,542.542 INFO    ] No existing commands found in stream
[2026-06-19 20:11:56,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:11:56,575.575 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 20:12:00,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:12:00,314.314 INFO    ] Checking for system updates...
[2026-06-19 20:12:00,356.356 INFO    ] 200
[2026-06-19 20:12:00,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:00,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:12:00,415.415 INFO    ] No update needed
[2026-06-19 20:12:00,417.417 INFO    ] Checking for camera pi updates...
[2026-06-19 20:12:00,451.451 INFO    ] 200
[2026-06-19 20:12:00,454.454 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:00,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:12:00,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:12:00,646.646 INFO    ] No camera update needed
[2026-06-19 20:12:00,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:12:00,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:12:00,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:12:00,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:12:02,708.708 INFO    ] ================================================
[2026-06-19 20:12:02,729.729 INFO    ] Launching Daemon at Fri Jun 19 20:12:02 IST 2026
[2026-06-19 20:12:02,741.741 INFO    ] ================================================
[2026-06-19 20:12:03,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:12:03
[2026-06-19 20:12:03,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:12:04,240.240 INFO    ] Initializing speech engine...
[2026-06-19 20:12:04,251.251 INFO    ] 2026-06-19 20:12:04
[2026-06-19 20:12:04,513.513 INFO    ] 2026-06-19 20:12:04
[2026-06-19 20:12:04,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:12:04,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:12:04,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:12:04,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:12:05,007.007 INFO    ] time= 19/06/2026 20:12:04
[2026-06-19 20:12:05,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:12:05,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:12:05,201.201 INFO    ] No existing commands found in stream
[2026-06-19 20:12:10,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:12:10,226.226 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 20:12:14,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:12:14,018.018 INFO    ] Checking for system updates...
[2026-06-19 20:12:14,060.060 INFO    ] 200
[2026-06-19 20:12:14,062.062 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:14,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:12:14,126.126 INFO    ] No update needed
[2026-06-19 20:12:14,129.129 INFO    ] Checking for camera pi updates...
[2026-06-19 20:12:14,167.167 INFO    ] 200
[2026-06-19 20:12:14,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:14,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:12:14,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:12:14,266.266 INFO    ] No camera update needed
[2026-06-19 20:12:14,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:12:14,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:12:14,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:12:14,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:12:16,324.324 INFO    ] ================================================
[2026-06-19 20:12:16,341.341 INFO    ] Launching Daemon at Fri Jun 19 20:12:16 IST 2026
[2026-06-19 20:12:16,353.353 INFO    ] ================================================
[2026-06-19 20:12:17,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:12:17
[2026-06-19 20:12:17,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:12:17,936.936 INFO    ] Initializing speech engine...
[2026-06-19 20:12:17,945.945 INFO    ] 2026-06-19 20:12:17
[2026-06-19 20:12:18,205.205 INFO    ] 2026-06-19 20:12:18
[2026-06-19 20:12:18,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:12:18,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:12:18,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:12:18,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:12:18,689.689 INFO    ] time= 19/06/2026 20:12:18
[2026-06-19 20:12:18,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:12:18,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:12:18,910.910 INFO    ] No existing commands found in stream
[2026-06-19 20:12:23,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:12:23,935.935 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 20:12:25,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:12:25,439.439 INFO    ] Checking for system updates...
[2026-06-19 20:12:25,477.477 INFO    ] 200
[2026-06-19 20:12:25,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:25,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:12:25,539.539 INFO    ] No update needed
[2026-06-19 20:12:25,542.542 INFO    ] Checking for camera pi updates...
[2026-06-19 20:12:25,582.582 INFO    ] 200
[2026-06-19 20:12:25,585.585 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:25,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:12:25,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:12:25,681.681 INFO    ] No camera update needed
[2026-06-19 20:12:25,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:12:25,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:12:25,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:12:25,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:12:27,735.735 INFO    ] ================================================
[2026-06-19 20:12:27,750.750 INFO    ] Launching Daemon at Fri Jun 19 20:12:27 IST 2026
[2026-06-19 20:12:27,761.761 INFO    ] ================================================
[2026-06-19 20:12:28,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:12:28
[2026-06-19 20:12:28,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:12:29,233.233 INFO    ] Initializing speech engine...
[2026-06-19 20:12:29,243.243 INFO    ] 2026-06-19 20:12:29
[2026-06-19 20:12:29,517.517 INFO    ] 2026-06-19 20:12:29
[2026-06-19 20:12:29,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:12:29,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:12:29,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:12:29,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:12:30,049.049 INFO    ] time= 19/06/2026 20:12:29
[2026-06-19 20:12:30,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:12:30,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:12:30,244.244 INFO    ] No existing commands found in stream
[2026-06-19 20:12:35,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:12:35,263.263 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 20:12:37,293.293 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:12:37,296.296 INFO    ] Checking for system updates...
[2026-06-19 20:12:37,332.332 INFO    ] 200
[2026-06-19 20:12:37,335.335 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:37,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:12:37,391.391 INFO    ] No update needed
[2026-06-19 20:12:37,394.394 INFO    ] Checking for camera pi updates...
[2026-06-19 20:12:37,434.434 INFO    ] 200
[2026-06-19 20:12:37,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:37,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:12:37,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:12:37,524.524 INFO    ] No camera update needed
[2026-06-19 20:12:37,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:12:37,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:12:37,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:12:37,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:12:39,581.581 INFO    ] ================================================
[2026-06-19 20:12:39,597.597 INFO    ] Launching Daemon at Fri Jun 19 20:12:39 IST 2026
[2026-06-19 20:12:39,608.608 INFO    ] ================================================
[2026-06-19 20:12:40,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:12:40
[2026-06-19 20:12:40,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:12:41,182.182 INFO    ] Initializing speech engine...
[2026-06-19 20:12:41,193.193 INFO    ] 2026-06-19 20:12:41
[2026-06-19 20:12:41,477.477 INFO    ] 2026-06-19 20:12:41
[2026-06-19 20:12:41,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:12:41,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:12:41,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:12:41,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:12:42,007.007 INFO    ] time= 19/06/2026 20:12:41
[2026-06-19 20:12:42,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:12:42,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:12:42,157.157 INFO    ] No existing commands found in stream
[2026-06-19 20:12:47,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:12:47,176.176 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-19 20:12:50,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:12:50,810.810 INFO    ] Checking for system updates...
[2026-06-19 20:12:50,848.848 INFO    ] 200
[2026-06-19 20:12:50,850.850 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:50,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:12:50,915.915 INFO    ] No update needed
[2026-06-19 20:12:50,917.917 INFO    ] Checking for camera pi updates...
[2026-06-19 20:12:50,955.955 INFO    ] 200
[2026-06-19 20:12:50,958.958 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:12:51,004.004 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:12:51,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:12:51,051.051 INFO    ] No camera update needed
[2026-06-19 20:12:51,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:12:51,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:12:51,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:12:51,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:12:53,106.106 INFO    ] ================================================
[2026-06-19 20:12:53,121.121 INFO    ] Launching Daemon at Fri Jun 19 20:12:53 IST 2026
[2026-06-19 20:12:53,132.132 INFO    ] ================================================
[2026-06-19 20:12:53,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:12:53
[2026-06-19 20:12:54,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:12:54,550.550 INFO    ] Initializing speech engine...
[2026-06-19 20:12:54,564.564 INFO    ] 2026-06-19 20:12:54
[2026-06-19 20:12:54,829.829 INFO    ] 2026-06-19 20:12:54
[2026-06-19 20:12:54,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:12:55,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:12:55,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:12:55,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:12:55,298.298 INFO    ] time= 19/06/2026 20:12:55
[2026-06-19 20:12:55,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:12:55,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:12:55,512.512 INFO    ] No existing commands found in stream
[2026-06-19 20:13:00,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:13:00,542.542 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 20:13:03,621.621 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:13:03,623.623 INFO    ] Checking for system updates...
[2026-06-19 20:13:03,659.659 INFO    ] 200
[2026-06-19 20:13:03,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:03,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:13:03,719.719 INFO    ] No update needed
[2026-06-19 20:13:03,725.725 INFO    ] Checking for camera pi updates...
[2026-06-19 20:13:03,764.764 INFO    ] 200
[2026-06-19 20:13:03,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:03,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:13:03,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:13:03,858.858 INFO    ] No camera update needed
[2026-06-19 20:13:03,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:13:03,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:13:03,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:13:03,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:13:05,914.914 INFO    ] ================================================
[2026-06-19 20:13:05,928.928 INFO    ] Launching Daemon at Fri Jun 19 20:13:05 IST 2026
[2026-06-19 20:13:05,939.939 INFO    ] ================================================
[2026-06-19 20:13:06,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:13:06
[2026-06-19 20:13:07,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:13:07,541.541 INFO    ] Initializing speech engine...
[2026-06-19 20:13:07,556.556 INFO    ] 2026-06-19 20:13:07
[2026-06-19 20:13:07,842.842 INFO    ] 2026-06-19 20:13:07
[2026-06-19 20:13:07,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:13:08,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:13:08,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:13:08,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:13:08,373.373 INFO    ] time= 19/06/2026 20:13:08
[2026-06-19 20:13:08,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:13:08,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:13:08,525.525 INFO    ] No existing commands found in stream
[2026-06-19 20:13:13,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:13:13,542.542 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 20:13:17,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:13:17,147.147 INFO    ] Checking for system updates...
[2026-06-19 20:13:17,185.185 INFO    ] 200
[2026-06-19 20:13:17,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:17,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:13:17,254.254 INFO    ] No update needed
[2026-06-19 20:13:17,257.257 INFO    ] Checking for camera pi updates...
[2026-06-19 20:13:17,292.292 INFO    ] 200
[2026-06-19 20:13:17,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:17,339.339 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:13:17,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:13:17,393.393 INFO    ] No camera update needed
[2026-06-19 20:13:17,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:13:17,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:13:17,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:13:17,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:13:19,453.453 INFO    ] ================================================
[2026-06-19 20:13:19,469.469 INFO    ] Launching Daemon at Fri Jun 19 20:13:19 IST 2026
[2026-06-19 20:13:19,480.480 INFO    ] ================================================
[2026-06-19 20:13:20,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:13:20
[2026-06-19 20:13:20,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:13:20,950.950 INFO    ] Initializing speech engine...
[2026-06-19 20:13:20,959.959 INFO    ] 2026-06-19 20:13:20
[2026-06-19 20:13:21,220.220 INFO    ] 2026-06-19 20:13:21
[2026-06-19 20:13:21,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:13:21,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:13:21,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:13:21,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:13:21,767.767 INFO    ] time= 19/06/2026 20:13:21
[2026-06-19 20:13:21,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:13:21,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:13:21,919.919 INFO    ] No existing commands found in stream
[2026-06-19 20:13:26,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:13:26,937.937 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 20:13:28,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:13:28,872.872 INFO    ] Checking for system updates...
[2026-06-19 20:13:28,915.915 INFO    ] 200
[2026-06-19 20:13:28,918.918 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:28,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:13:28,987.987 INFO    ] No update needed
[2026-06-19 20:13:28,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 20:13:29,028.028 INFO    ] 200
[2026-06-19 20:13:29,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:29,073.073 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:13:29,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:13:29,125.125 INFO    ] No camera update needed
[2026-06-19 20:13:29,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:13:29,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:13:29,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:13:29,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:13:31,188.188 INFO    ] ================================================
[2026-06-19 20:13:31,204.204 INFO    ] Launching Daemon at Fri Jun 19 20:13:31 IST 2026
[2026-06-19 20:13:31,216.216 INFO    ] ================================================
[2026-06-19 20:13:31,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:13:31
[2026-06-19 20:13:32,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:13:32,723.723 INFO    ] Initializing speech engine...
[2026-06-19 20:13:32,730.730 INFO    ] 2026-06-19 20:13:32
[2026-06-19 20:13:32,979.979 INFO    ] 2026-06-19 20:13:32
[2026-06-19 20:13:33,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:13:33,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:13:33,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:13:33,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:13:33,526.526 INFO    ] time= 19/06/2026 20:13:33
[2026-06-19 20:13:33,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:13:33,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:13:33,661.661 INFO    ] No existing commands found in stream
[2026-06-19 20:13:38,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:13:38,694.694 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 20:13:41,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:13:41,979.979 INFO    ] Checking for system updates...
[2026-06-19 20:13:42,016.016 INFO    ] 200
[2026-06-19 20:13:42,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:42,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:13:42,075.075 INFO    ] No update needed
[2026-06-19 20:13:42,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 20:13:42,113.113 INFO    ] 200
[2026-06-19 20:13:42,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:42,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:13:42,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:13:42,225.225 INFO    ] No camera update needed
[2026-06-19 20:13:42,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:13:42,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:13:42,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:13:42,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:13:44,285.285 INFO    ] ================================================
[2026-06-19 20:13:44,301.301 INFO    ] Launching Daemon at Fri Jun 19 20:13:44 IST 2026
[2026-06-19 20:13:44,311.311 INFO    ] ================================================
[2026-06-19 20:13:44,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:13:44
[2026-06-19 20:13:45,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:13:45,779.779 INFO    ] Initializing speech engine...
[2026-06-19 20:13:45,786.786 INFO    ] 2026-06-19 20:13:45
[2026-06-19 20:13:46,049.049 INFO    ] 2026-06-19 20:13:46
[2026-06-19 20:13:46,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:13:46,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:13:46,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:13:46,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:13:46,598.598 INFO    ] time= 19/06/2026 20:13:46
[2026-06-19 20:13:46,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:13:46,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:13:46,783.783 INFO    ] No existing commands found in stream
[2026-06-19 20:13:51,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:13:51,800.800 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 20:13:54,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:13:54,833.833 INFO    ] Checking for system updates...
[2026-06-19 20:13:54,870.870 INFO    ] 200
[2026-06-19 20:13:54,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:54,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:13:54,927.927 INFO    ] No update needed
[2026-06-19 20:13:54,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 20:13:54,963.963 INFO    ] 200
[2026-06-19 20:13:54,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:13:55,007.007 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:13:55,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:13:55,057.057 INFO    ] No camera update needed
[2026-06-19 20:13:55,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:13:55,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:13:55,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:13:55,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:13:57,111.111 INFO    ] ================================================
[2026-06-19 20:13:57,127.127 INFO    ] Launching Daemon at Fri Jun 19 20:13:57 IST 2026
[2026-06-19 20:13:57,138.138 INFO    ] ================================================
[2026-06-19 20:13:57,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:13:57
[2026-06-19 20:13:58,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:13:58,745.745 INFO    ] Initializing speech engine...
[2026-06-19 20:13:58,763.763 INFO    ] 2026-06-19 20:13:58
[2026-06-19 20:13:59,016.016 INFO    ] 2026-06-19 20:13:59
[2026-06-19 20:13:59,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:13:59,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:13:59,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:13:59,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:13:59,530.530 INFO    ] time= 19/06/2026 20:13:59
[2026-06-19 20:13:59,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:13:59,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:13:59,748.748 INFO    ] No existing commands found in stream
[2026-06-19 20:14:04,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:14:04,763.763 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 20:14:08,477.477 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:14:08,480.480 INFO    ] Checking for system updates...
[2026-06-19 20:14:08,521.521 INFO    ] 200
[2026-06-19 20:14:08,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:08,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:14:08,588.588 INFO    ] No update needed
[2026-06-19 20:14:08,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 20:14:08,625.625 INFO    ] 200
[2026-06-19 20:14:08,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:08,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:14:08,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:14:08,714.714 INFO    ] No camera update needed
[2026-06-19 20:14:08,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:14:08,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:14:08,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:14:08,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:14:10,768.768 INFO    ] ================================================
[2026-06-19 20:14:10,784.784 INFO    ] Launching Daemon at Fri Jun 19 20:14:10 IST 2026
[2026-06-19 20:14:10,796.796 INFO    ] ================================================
[2026-06-19 20:14:11,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:14:11
[2026-06-19 20:14:12,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:14:12,338.338 INFO    ] Initializing speech engine...
[2026-06-19 20:14:12,346.346 INFO    ] 2026-06-19 20:14:12
[2026-06-19 20:14:12,603.603 INFO    ] 2026-06-19 20:14:12
[2026-06-19 20:14:12,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:14:12,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:14:12,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:14:13,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:14:13,087.087 INFO    ] time= 19/06/2026 20:14:13
[2026-06-19 20:14:13,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:14:13,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:14:13,302.302 INFO    ] No existing commands found in stream
[2026-06-19 20:14:18,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:14:18,319.319 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 20:14:19,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:14:19,048.048 INFO    ] Checking for system updates...
[2026-06-19 20:14:19,085.085 INFO    ] 200
[2026-06-19 20:14:19,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:19,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:14:19,144.144 INFO    ] No update needed
[2026-06-19 20:14:19,147.147 INFO    ] Checking for camera pi updates...
[2026-06-19 20:14:19,181.181 INFO    ] 200
[2026-06-19 20:14:19,184.184 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:19,231.231 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:14:19,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:14:19,277.277 INFO    ] No camera update needed
[2026-06-19 20:14:19,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:14:19,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:14:19,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:14:19,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:14:21,333.333 INFO    ] ================================================
[2026-06-19 20:14:21,348.348 INFO    ] Launching Daemon at Fri Jun 19 20:14:21 IST 2026
[2026-06-19 20:14:21,359.359 INFO    ] ================================================
[2026-06-19 20:14:22,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:14:22
[2026-06-19 20:14:22,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:14:23,054.054 INFO    ] Initializing speech engine...
[2026-06-19 20:14:23,069.069 INFO    ] 2026-06-19 20:14:23
[2026-06-19 20:14:23,361.361 INFO    ] 2026-06-19 20:14:23
[2026-06-19 20:14:23,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:14:23,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:14:23,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:14:23,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:14:23,916.916 INFO    ] time= 19/06/2026 20:14:23
[2026-06-19 20:14:23,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:14:23,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:14:24,061.061 INFO    ] No existing commands found in stream
[2026-06-19 20:14:29,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:14:29,092.092 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 20:14:29,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:14:29,612.612 INFO    ] Checking for system updates...
[2026-06-19 20:14:29,650.650 INFO    ] 200
[2026-06-19 20:14:29,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:29,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:14:29,707.707 INFO    ] No update needed
[2026-06-19 20:14:29,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 20:14:29,743.743 INFO    ] 200
[2026-06-19 20:14:29,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:29,787.787 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:14:29,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:14:29,844.844 INFO    ] No camera update needed
[2026-06-19 20:14:29,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:14:29,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:14:29,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:14:29,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:14:31,902.902 INFO    ] ================================================
[2026-06-19 20:14:31,921.921 INFO    ] Launching Daemon at Fri Jun 19 20:14:31 IST 2026
[2026-06-19 20:14:31,933.933 INFO    ] ================================================
[2026-06-19 20:14:32,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:14:32
[2026-06-19 20:14:33,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:14:33,394.394 INFO    ] Initializing speech engine...
[2026-06-19 20:14:33,403.403 INFO    ] 2026-06-19 20:14:33
[2026-06-19 20:14:33,704.704 INFO    ] 2026-06-19 20:14:33
[2026-06-19 20:14:33,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:14:33,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:14:33,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:14:34,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:14:34,134.134 INFO    ] time= 19/06/2026 20:14:34
[2026-06-19 20:14:34,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:14:34,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:14:34,223.223 INFO    ] No existing commands found in stream
[2026-06-19 20:14:39,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:14:39,261.261 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 20:14:42,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:14:42,959.959 INFO    ] Checking for system updates...
[2026-06-19 20:14:42,996.996 INFO    ] 200
[2026-06-19 20:14:42,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:43,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:14:43,056.056 INFO    ] No update needed
[2026-06-19 20:14:43,059.059 INFO    ] Checking for camera pi updates...
[2026-06-19 20:14:43,094.094 INFO    ] 200
[2026-06-19 20:14:43,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:43,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:14:43,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:14:43,209.209 INFO    ] No camera update needed
[2026-06-19 20:14:43,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:14:43,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:14:43,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:14:43,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:14:45,267.267 INFO    ] ================================================
[2026-06-19 20:14:45,282.282 INFO    ] Launching Daemon at Fri Jun 19 20:14:45 IST 2026
[2026-06-19 20:14:45,294.294 INFO    ] ================================================
[2026-06-19 20:14:45,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:14:45
[2026-06-19 20:14:46,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:14:46,699.699 INFO    ] Initializing speech engine...
[2026-06-19 20:14:46,722.722 INFO    ] 2026-06-19 20:14:46
[2026-06-19 20:14:46,978.978 INFO    ] 2026-06-19 20:14:46
[2026-06-19 20:14:47,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:14:47,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:14:47,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:14:47,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:14:47,401.401 INFO    ] time= 19/06/2026 20:14:47
[2026-06-19 20:14:47,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:14:47,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:14:47,572.572 INFO    ] No existing commands found in stream
[2026-06-19 20:14:52,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:14:52,600.600 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 20:14:53,568.568 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:14:53,571.571 INFO    ] Checking for system updates...
[2026-06-19 20:14:53,611.611 INFO    ] 200
[2026-06-19 20:14:53,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:53,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:14:53,668.668 INFO    ] No update needed
[2026-06-19 20:14:53,670.670 INFO    ] Checking for camera pi updates...
[2026-06-19 20:14:53,708.708 INFO    ] 200
[2026-06-19 20:14:53,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:14:53,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:14:53,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:14:53,801.801 INFO    ] No camera update needed
[2026-06-19 20:14:53,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:14:53,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:14:53,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:14:53,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:14:55,856.856 INFO    ] ================================================
[2026-06-19 20:14:55,872.872 INFO    ] Launching Daemon at Fri Jun 19 20:14:55 IST 2026
[2026-06-19 20:14:55,883.883 INFO    ] ================================================
[2026-06-19 20:14:56,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:14:56
[2026-06-19 20:14:57,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:14:57,331.331 INFO    ] Initializing speech engine...
[2026-06-19 20:14:57,343.343 INFO    ] 2026-06-19 20:14:57
[2026-06-19 20:14:57,606.606 INFO    ] 2026-06-19 20:14:57
[2026-06-19 20:14:57,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:14:57,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:14:57,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:14:58,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:14:58,100.100 INFO    ] time= 19/06/2026 20:14:58
[2026-06-19 20:14:58,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:14:58,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:14:58,316.316 INFO    ] No existing commands found in stream
[2026-06-19 20:15:03,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:15:03,338.338 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 20:15:06,123.123 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:15:06,126.126 INFO    ] Checking for system updates...
[2026-06-19 20:15:06,166.166 INFO    ] 200
[2026-06-19 20:15:06,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:06,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:15:06,225.225 INFO    ] No update needed
[2026-06-19 20:15:06,228.228 INFO    ] Checking for camera pi updates...
[2026-06-19 20:15:06,261.261 INFO    ] 200
[2026-06-19 20:15:06,264.264 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:06,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:15:06,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:15:06,360.360 INFO    ] No camera update needed
[2026-06-19 20:15:06,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:15:06,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:15:06,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:15:06,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:15:08,424.424 INFO    ] ================================================
[2026-06-19 20:15:08,440.440 INFO    ] Launching Daemon at Fri Jun 19 20:15:08 IST 2026
[2026-06-19 20:15:08,451.451 INFO    ] ================================================
[2026-06-19 20:15:09,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:15:09
[2026-06-19 20:15:09,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:15:09,914.914 INFO    ] Initializing speech engine...
[2026-06-19 20:15:09,922.922 INFO    ] 2026-06-19 20:15:09
[2026-06-19 20:15:10,182.182 INFO    ] 2026-06-19 20:15:10
[2026-06-19 20:15:10,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:15:10,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:15:10,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:15:10,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:15:10,649.649 INFO    ] time= 19/06/2026 20:15:10
[2026-06-19 20:15:10,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:15:10,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:15:10,864.864 INFO    ] No existing commands found in stream
[2026-06-19 20:15:15,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:15:15,895.895 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 20:15:17,990.990 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:15:17,992.992 INFO    ] Checking for system updates...
[2026-06-19 20:15:18,030.030 INFO    ] 200
[2026-06-19 20:15:18,033.033 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:18,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:15:18,096.096 INFO    ] No update needed
[2026-06-19 20:15:18,099.099 INFO    ] Checking for camera pi updates...
[2026-06-19 20:15:18,136.136 INFO    ] 200
[2026-06-19 20:15:18,139.139 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:18,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:15:18,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:15:18,228.228 INFO    ] No camera update needed
[2026-06-19 20:15:18,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:15:18,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:15:18,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:15:18,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:15:20,285.285 INFO    ] ================================================
[2026-06-19 20:15:20,300.300 INFO    ] Launching Daemon at Fri Jun 19 20:15:20 IST 2026
[2026-06-19 20:15:20,312.312 INFO    ] ================================================
[2026-06-19 20:15:20,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:15:20
[2026-06-19 20:15:21,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:15:21,722.722 INFO    ] Initializing speech engine...
[2026-06-19 20:15:21,734.734 INFO    ] 2026-06-19 20:15:21
[2026-06-19 20:15:22,002.002 INFO    ] 2026-06-19 20:15:21
[2026-06-19 20:15:22,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:15:22,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:15:22,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:15:22,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:15:22,492.492 INFO    ] time= 19/06/2026 20:15:22
[2026-06-19 20:15:22,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:15:22,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:15:22,695.695 INFO    ] No existing commands found in stream
[2026-06-19 20:15:27,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:15:27,710.710 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-19 20:15:29,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:15:29,558.558 INFO    ] Checking for system updates...
[2026-06-19 20:15:29,597.597 INFO    ] 200
[2026-06-19 20:15:29,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:29,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:15:29,661.661 INFO    ] No update needed
[2026-06-19 20:15:29,663.663 INFO    ] Checking for camera pi updates...
[2026-06-19 20:15:29,697.697 INFO    ] 200
[2026-06-19 20:15:29,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:29,741.741 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:15:29,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:15:29,787.787 INFO    ] No camera update needed
[2026-06-19 20:15:29,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:15:29,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:15:29,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:15:29,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:15:31,843.843 INFO    ] ================================================
[2026-06-19 20:15:31,859.859 INFO    ] Launching Daemon at Fri Jun 19 20:15:31 IST 2026
[2026-06-19 20:15:31,870.870 INFO    ] ================================================
[2026-06-19 20:15:32,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:15:32
[2026-06-19 20:15:33,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:15:33,533.533 INFO    ] Initializing speech engine...
[2026-06-19 20:15:33,542.542 INFO    ] 2026-06-19 20:15:33
[2026-06-19 20:15:33,817.817 INFO    ] 2026-06-19 20:15:33
[2026-06-19 20:15:33,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:15:34,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:15:34,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:15:34,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:15:34,381.381 INFO    ] time= 19/06/2026 20:15:34
[2026-06-19 20:15:34,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:15:34,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:15:34,541.541 INFO    ] No existing commands found in stream
[2026-06-19 20:15:39,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:15:39,562.562 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 20:15:43,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:15:43,420.420 INFO    ] Checking for system updates...
[2026-06-19 20:15:43,458.458 INFO    ] 200
[2026-06-19 20:15:43,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:43,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:15:43,525.525 INFO    ] No update needed
[2026-06-19 20:15:43,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 20:15:43,564.564 INFO    ] 200
[2026-06-19 20:15:43,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:43,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:15:43,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:15:43,663.663 INFO    ] No camera update needed
[2026-06-19 20:15:43,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:15:43,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:15:43,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:15:43,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:15:45,722.722 INFO    ] ================================================
[2026-06-19 20:15:45,738.738 INFO    ] Launching Daemon at Fri Jun 19 20:15:45 IST 2026
[2026-06-19 20:15:45,749.749 INFO    ] ================================================
[2026-06-19 20:15:46,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:15:46
[2026-06-19 20:15:47,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:15:47,395.395 INFO    ] Initializing speech engine...
[2026-06-19 20:15:47,402.402 INFO    ] 2026-06-19 20:15:47
[2026-06-19 20:15:47,678.678 INFO    ] 2026-06-19 20:15:47
[2026-06-19 20:15:47,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:15:48,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:15:48,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:15:49,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:15:49,386.386 INFO    ] time= 19/06/2026 20:15:49
[2026-06-19 20:15:49,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:15:49,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:15:49,584.584 INFO    ] No existing commands found in stream
[2026-06-19 20:15:54,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:15:54,613.613 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 20:15:58,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:15:58,519.519 INFO    ] Checking for system updates...
[2026-06-19 20:15:58,556.556 INFO    ] 200
[2026-06-19 20:15:58,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:58,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:15:58,613.613 INFO    ] No update needed
[2026-06-19 20:15:58,616.616 INFO    ] Checking for camera pi updates...
[2026-06-19 20:15:58,654.654 INFO    ] 200
[2026-06-19 20:15:58,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:15:58,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:15:58,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:15:58,755.755 INFO    ] No camera update needed
[2026-06-19 20:15:58,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:15:58,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:15:58,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:15:58,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:16:00,811.811 INFO    ] ================================================
[2026-06-19 20:16:00,827.827 INFO    ] Launching Daemon at Fri Jun 19 20:16:00 IST 2026
[2026-06-19 20:16:00,838.838 INFO    ] ================================================
[2026-06-19 20:16:01,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:16:01
[2026-06-19 20:16:02,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:16:02,578.578 INFO    ] Initializing speech engine...
[2026-06-19 20:16:02,590.590 INFO    ] 2026-06-19 20:16:02
[2026-06-19 20:16:02,942.942 INFO    ] 2026-06-19 20:16:02
[2026-06-19 20:16:03,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:16:03,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:16:03,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:16:03,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:16:03,488.488 INFO    ] time= 19/06/2026 20:16:03
[2026-06-19 20:16:03,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:16:03,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:16:03,665.665 INFO    ] No existing commands found in stream
[2026-06-19 20:16:08,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:16:08,694.694 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 20:16:12,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:16:12,061.061 INFO    ] Checking for system updates...
[2026-06-19 20:16:12,101.101 INFO    ] 200
[2026-06-19 20:16:12,104.104 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:16:12,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:16:12,162.162 INFO    ] No update needed
[2026-06-19 20:16:12,165.165 INFO    ] Checking for camera pi updates...
[2026-06-19 20:16:12,200.200 INFO    ] 200
[2026-06-19 20:16:12,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:16:12,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:16:12,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:16:12,396.396 INFO    ] No camera update needed
[2026-06-19 20:16:12,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:16:12,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:16:12,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:16:12,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:16:14,454.454 INFO    ] ================================================
[2026-06-19 20:16:14,470.470 INFO    ] Launching Daemon at Fri Jun 19 20:16:14 IST 2026
[2026-06-19 20:16:14,481.481 INFO    ] ================================================
[2026-06-19 20:16:15,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:16:15
[2026-06-19 20:16:15,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:16:15,888.888 INFO    ] Initializing speech engine...
[2026-06-19 20:16:15,903.903 INFO    ] 2026-06-19 20:16:15
[2026-06-19 20:16:16,171.171 INFO    ] 2026-06-19 20:16:16
[2026-06-19 20:16:16,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:16:16,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:16:16,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:16:16,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:16:16,715.715 INFO    ] time= 19/06/2026 20:16:16
[2026-06-19 20:16:16,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:16:16,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:16:16,878.878 INFO    ] No existing commands found in stream
[2026-06-19 20:16:21,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:16:21,906.906 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 20:16:25,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:16:25,229.229 INFO    ] Checking for system updates...
[2026-06-19 20:16:25,265.265 INFO    ] 200
[2026-06-19 20:16:25,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:16:25,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:16:25,324.324 INFO    ] No update needed
[2026-06-19 20:16:25,326.326 INFO    ] Checking for camera pi updates...
[2026-06-19 20:16:25,360.360 INFO    ] 200
[2026-06-19 20:16:25,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:16:25,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:16:25,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:16:25,455.455 INFO    ] No camera update needed
[2026-06-19 20:16:25,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:16:25,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:16:25,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:16:25,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:16:27,511.511 INFO    ] ================================================
[2026-06-19 20:16:27,527.527 INFO    ] Launching Daemon at Fri Jun 19 20:16:27 IST 2026
[2026-06-19 20:16:27,538.538 INFO    ] ================================================
[2026-06-19 20:16:28,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:16:28
[2026-06-19 20:16:28,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:16:28,974.974 INFO    ] Initializing speech engine...
[2026-06-19 20:16:28,984.984 INFO    ] 2026-06-19 20:16:28
[2026-06-19 20:16:29,274.274 INFO    ] 2026-06-19 20:16:29
[2026-06-19 20:16:29,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:16:29,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:16:29,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:16:29,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:16:29,770.770 INFO    ] time= 19/06/2026 20:16:29
[2026-06-19 20:16:29,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:16:29,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:16:30,031.031 INFO    ] No existing commands found in stream
[2026-06-19 20:16:35,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:16:35,057.057 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-19 20:16:35,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:16:35,502.502 INFO    ] Checking for system updates...
[2026-06-19 20:16:35,538.538 INFO    ] 200
[2026-06-19 20:16:35,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:16:35,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:16:35,601.601 INFO    ] No update needed
[2026-06-19 20:16:35,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 20:16:35,640.640 INFO    ] 200
[2026-06-19 20:16:35,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:16:35,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:16:35,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:16:35,727.727 INFO    ] No camera update needed
[2026-06-19 20:16:35,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:16:35,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:16:35,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:16:35,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:16:37,784.784 INFO    ] ================================================
[2026-06-19 20:16:37,799.799 INFO    ] Launching Daemon at Fri Jun 19 20:16:37 IST 2026
[2026-06-19 20:16:37,810.810 INFO    ] ================================================
[2026-06-19 20:16:38,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:16:38
[2026-06-19 20:16:38,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:16:39,219.219 INFO    ] Initializing speech engine...
[2026-06-19 20:16:39,228.228 INFO    ] 2026-06-19 20:16:39
[2026-06-19 20:16:39,514.514 INFO    ] 2026-06-19 20:16:39
[2026-06-19 20:16:39,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:16:39,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:16:39,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:16:39,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:16:39,921.921 INFO    ] time= 19/06/2026 20:16:39
[2026-06-19 20:16:39,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:16:39,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:16:40,111.111 INFO    ] No existing commands found in stream
[2026-06-19 20:16:45,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:16:45,139.139 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 20:16:47,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:16:47,772.772 INFO    ] Checking for system updates...
[2026-06-19 20:16:47,808.808 INFO    ] 200
[2026-06-19 20:16:47,811.811 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:16:47,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:16:47,873.873 INFO    ] No update needed
[2026-06-19 20:16:47,876.876 INFO    ] Checking for camera pi updates...
[2026-06-19 20:16:47,911.911 INFO    ] 200
[2026-06-19 20:16:47,914.914 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:16:47,956.956 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:16:47,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:16:48,001.001 INFO    ] No camera update needed
[2026-06-19 20:16:48,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:16:48,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:16:48,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:16:48,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:16:50,059.059 INFO    ] ================================================
[2026-06-19 20:16:50,075.075 INFO    ] Launching Daemon at Fri Jun 19 20:16:50 IST 2026
[2026-06-19 20:16:50,086.086 INFO    ] ================================================
[2026-06-19 20:16:50,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:16:50
[2026-06-19 20:16:51,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:16:51,539.539 INFO    ] Initializing speech engine...
[2026-06-19 20:16:51,563.563 INFO    ] 2026-06-19 20:16:51
[2026-06-19 20:16:51,832.832 INFO    ] 2026-06-19 20:16:51
[2026-06-19 20:16:51,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:16:52,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:16:52,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:16:52,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:16:52,360.360 INFO    ] time= 19/06/2026 20:16:52
[2026-06-19 20:16:52,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:16:52,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:16:52,596.596 INFO    ] No existing commands found in stream
[2026-06-19 20:16:57,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:16:57,625.625 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 20:17:02,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:17:02,183.183 INFO    ] Checking for system updates...
[2026-06-19 20:17:02,230.230 INFO    ] 200
[2026-06-19 20:17:02,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:02,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:17:02,314.314 INFO    ] No update needed
[2026-06-19 20:17:02,317.317 INFO    ] Checking for camera pi updates...
[2026-06-19 20:17:02,361.361 INFO    ] 200
[2026-06-19 20:17:02,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:02,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:17:02,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:17:02,446.446 INFO    ] No camera update needed
[2026-06-19 20:17:02,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:17:02,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:17:02,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:17:02,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:17:04,507.507 INFO    ] ================================================
[2026-06-19 20:17:04,522.522 INFO    ] Launching Daemon at Fri Jun 19 20:17:04 IST 2026
[2026-06-19 20:17:04,533.533 INFO    ] ================================================
[2026-06-19 20:17:05,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:17:05
[2026-06-19 20:17:05,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:17:05,995.995 INFO    ] Initializing speech engine...
[2026-06-19 20:17:06,018.018 INFO    ] 2026-06-19 20:17:06
[2026-06-19 20:17:06,271.271 INFO    ] 2026-06-19 20:17:06
[2026-06-19 20:17:06,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:17:06,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:17:06,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:17:06,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:17:06,855.855 INFO    ] time= 19/06/2026 20:17:06
[2026-06-19 20:17:06,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:17:06,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:17:07,020.020 INFO    ] No existing commands found in stream
[2026-06-19 20:17:12,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:17:12,048.048 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 20:17:16,263.263 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:17:16,266.266 INFO    ] Checking for system updates...
[2026-06-19 20:17:16,301.301 INFO    ] 200
[2026-06-19 20:17:16,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:16,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:17:16,364.364 INFO    ] No update needed
[2026-06-19 20:17:16,367.367 INFO    ] Checking for camera pi updates...
[2026-06-19 20:17:16,401.401 INFO    ] 200
[2026-06-19 20:17:16,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:16,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:17:16,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:17:16,500.500 INFO    ] No camera update needed
[2026-06-19 20:17:16,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:17:16,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:17:16,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:17:16,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:17:18,556.556 INFO    ] ================================================
[2026-06-19 20:17:18,572.572 INFO    ] Launching Daemon at Fri Jun 19 20:17:18 IST 2026
[2026-06-19 20:17:18,583.583 INFO    ] ================================================
[2026-06-19 20:17:19,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:17:19
[2026-06-19 20:17:19,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:17:20,167.167 INFO    ] Initializing speech engine...
[2026-06-19 20:17:20,176.176 INFO    ] 2026-06-19 20:17:20
[2026-06-19 20:17:20,445.445 INFO    ] 2026-06-19 20:17:20
[2026-06-19 20:17:20,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:17:20,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:17:20,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:17:20,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:17:21,016.016 INFO    ] time= 19/06/2026 20:17:20
[2026-06-19 20:17:21,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:17:21,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:17:21,157.157 INFO    ] No existing commands found in stream
[2026-06-19 20:17:26,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:17:26,185.185 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 20:17:27,646.646 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:17:27,649.649 INFO    ] Checking for system updates...
[2026-06-19 20:17:27,710.710 INFO    ] 200
[2026-06-19 20:17:27,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:27,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:17:27,790.790 INFO    ] No update needed
[2026-06-19 20:17:27,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 20:17:27,827.827 INFO    ] 200
[2026-06-19 20:17:27,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:27,871.871 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:17:27,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:17:27,923.923 INFO    ] No camera update needed
[2026-06-19 20:17:27,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:17:27,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:17:27,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:17:27,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:17:29,981.981 INFO    ] ================================================
[2026-06-19 20:17:30,997.997 INFO    ] Launching Daemon at Fri Jun 19 20:17:29 IST 2026
[2026-06-19 20:17:30,009.009 INFO    ] ================================================
[2026-06-19 20:17:30,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:17:30
[2026-06-19 20:17:31,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:17:31,565.565 INFO    ] Initializing speech engine...
[2026-06-19 20:17:31,589.589 INFO    ] 2026-06-19 20:17:31
[2026-06-19 20:17:31,863.863 INFO    ] 2026-06-19 20:17:31
[2026-06-19 20:17:31,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:17:32,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:17:32,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:17:32,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:17:32,394.394 INFO    ] time= 19/06/2026 20:17:32
[2026-06-19 20:17:32,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:17:32,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:17:32,596.596 INFO    ] No existing commands found in stream
[2026-06-19 20:17:37,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:17:37,631.631 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 20:17:40,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:17:40,587.587 INFO    ] Checking for system updates...
[2026-06-19 20:17:40,622.622 INFO    ] 200
[2026-06-19 20:17:40,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:40,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:17:40,684.684 INFO    ] No update needed
[2026-06-19 20:17:40,687.687 INFO    ] Checking for camera pi updates...
[2026-06-19 20:17:40,721.721 INFO    ] 200
[2026-06-19 20:17:40,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:40,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:17:40,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:17:40,817.817 INFO    ] No camera update needed
[2026-06-19 20:17:40,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:17:40,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:17:40,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:17:40,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:17:42,873.873 INFO    ] ================================================
[2026-06-19 20:17:42,889.889 INFO    ] Launching Daemon at Fri Jun 19 20:17:42 IST 2026
[2026-06-19 20:17:42,900.900 INFO    ] ================================================
[2026-06-19 20:17:43,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:17:43
[2026-06-19 20:17:44,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:17:44,453.453 INFO    ] Initializing speech engine...
[2026-06-19 20:17:44,461.461 INFO    ] 2026-06-19 20:17:44
[2026-06-19 20:17:44,727.727 INFO    ] 2026-06-19 20:17:44
[2026-06-19 20:17:44,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:17:45,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:17:45,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:17:45,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:17:45,277.277 INFO    ] time= 19/06/2026 20:17:45
[2026-06-19 20:17:45,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:17:45,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:17:45,431.431 INFO    ] No existing commands found in stream
[2026-06-19 20:17:50,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:17:50,454.454 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 20:17:54,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:17:54,617.617 INFO    ] Checking for system updates...
[2026-06-19 20:17:54,653.653 INFO    ] 200
[2026-06-19 20:17:54,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:54,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:17:54,710.710 INFO    ] No update needed
[2026-06-19 20:17:54,713.713 INFO    ] Checking for camera pi updates...
[2026-06-19 20:17:54,746.746 INFO    ] 200
[2026-06-19 20:17:54,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:17:54,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:17:54,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:17:54,841.841 INFO    ] No camera update needed
[2026-06-19 20:17:54,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:17:54,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:17:54,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:17:54,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:17:56,897.897 INFO    ] ================================================
[2026-06-19 20:17:56,913.913 INFO    ] Launching Daemon at Fri Jun 19 20:17:56 IST 2026
[2026-06-19 20:17:56,924.924 INFO    ] ================================================
[2026-06-19 20:17:57,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:17:57
[2026-06-19 20:17:58,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:17:58,370.370 INFO    ] Initializing speech engine...
[2026-06-19 20:17:58,379.379 INFO    ] 2026-06-19 20:17:58
[2026-06-19 20:17:58,637.637 INFO    ] 2026-06-19 20:17:58
[2026-06-19 20:17:58,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:17:58,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:17:58,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:17:59,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:17:59,182.182 INFO    ] time= 19/06/2026 20:17:59
[2026-06-19 20:17:59,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:17:59,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:17:59,333.333 INFO    ] No existing commands found in stream
[2026-06-19 20:18:04,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:18:04,350.350 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 20:18:08,436.436 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:18:08,439.439 INFO    ] Checking for system updates...
[2026-06-19 20:18:08,476.476 INFO    ] 200
[2026-06-19 20:18:08,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:08,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:18:08,533.533 INFO    ] No update needed
[2026-06-19 20:18:08,536.536 INFO    ] Checking for camera pi updates...
[2026-06-19 20:18:08,569.569 INFO    ] 200
[2026-06-19 20:18:08,572.572 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:08,612.612 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:18:08,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:18:08,659.659 INFO    ] No camera update needed
[2026-06-19 20:18:08,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:18:08,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:18:08,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:18:08,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:18:10,715.715 INFO    ] ================================================
[2026-06-19 20:18:10,731.731 INFO    ] Launching Daemon at Fri Jun 19 20:18:10 IST 2026
[2026-06-19 20:18:10,742.742 INFO    ] ================================================
[2026-06-19 20:18:11,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:18:11
[2026-06-19 20:18:11,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:18:12,213.213 INFO    ] Initializing speech engine...
[2026-06-19 20:18:12,235.235 INFO    ] 2026-06-19 20:18:12
[2026-06-19 20:18:12,510.510 INFO    ] 2026-06-19 20:18:12
[2026-06-19 20:18:12,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:18:12,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:18:12,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:18:12,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:18:12,933.933 INFO    ] time= 19/06/2026 20:18:12
[2026-06-19 20:18:12,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:18:12,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:18:13,116.116 INFO    ] No existing commands found in stream
[2026-06-19 20:18:18,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:18:18,149.149 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 20:18:20,215.215 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:18:20,218.218 INFO    ] Checking for system updates...
[2026-06-19 20:18:20,254.254 INFO    ] 200
[2026-06-19 20:18:20,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:20,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:18:20,314.314 INFO    ] No update needed
[2026-06-19 20:18:20,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 20:18:20,351.351 INFO    ] 200
[2026-06-19 20:18:20,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:20,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:18:20,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:18:20,550.550 INFO    ] No camera update needed
[2026-06-19 20:18:20,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:18:20,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:18:20,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:18:20,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:18:22,605.605 INFO    ] ================================================
[2026-06-19 20:18:22,622.622 INFO    ] Launching Daemon at Fri Jun 19 20:18:22 IST 2026
[2026-06-19 20:18:22,633.633 INFO    ] ================================================
[2026-06-19 20:18:23,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:18:23
[2026-06-19 20:18:23,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:18:24,095.095 INFO    ] Initializing speech engine...
[2026-06-19 20:18:24,110.110 INFO    ] 2026-06-19 20:18:24
[2026-06-19 20:18:24,403.403 INFO    ] 2026-06-19 20:18:24
[2026-06-19 20:18:24,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:18:24,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:18:24,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:18:24,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:18:24,822.822 INFO    ] time= 19/06/2026 20:18:24
[2026-06-19 20:18:24,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:18:24,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:18:24,976.976 INFO    ] No existing commands found in stream
[2026-06-19 20:18:30,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:18:30,004.004 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 20:18:31,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:18:31,126.126 INFO    ] Checking for system updates...
[2026-06-19 20:18:31,162.162 INFO    ] 200
[2026-06-19 20:18:31,165.165 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:31,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:18:31,225.225 INFO    ] No update needed
[2026-06-19 20:18:31,227.227 INFO    ] Checking for camera pi updates...
[2026-06-19 20:18:31,266.266 INFO    ] 200
[2026-06-19 20:18:31,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:31,314.314 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:18:31,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:18:31,366.366 INFO    ] No camera update needed
[2026-06-19 20:18:31,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:18:31,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:18:31,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:18:31,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:18:33,422.422 INFO    ] ================================================
[2026-06-19 20:18:33,438.438 INFO    ] Launching Daemon at Fri Jun 19 20:18:33 IST 2026
[2026-06-19 20:18:33,449.449 INFO    ] ================================================
[2026-06-19 20:18:34,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:18:34
[2026-06-19 20:18:34,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:18:34,923.923 INFO    ] Initializing speech engine...
[2026-06-19 20:18:34,932.932 INFO    ] 2026-06-19 20:18:34
[2026-06-19 20:18:35,184.184 INFO    ] 2026-06-19 20:18:35
[2026-06-19 20:18:35,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:18:35,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:18:35,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:18:35,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:18:35,728.728 INFO    ] time= 19/06/2026 20:18:35
[2026-06-19 20:18:35,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:18:35,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:18:35,965.965 INFO    ] No existing commands found in stream
[2026-06-19 20:18:40,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:18:40,993.993 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 20:18:43,110.110 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:18:43,113.113 INFO    ] Checking for system updates...
[2026-06-19 20:18:43,167.167 INFO    ] 200
[2026-06-19 20:18:43,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:43,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:18:43,227.227 INFO    ] No update needed
[2026-06-19 20:18:43,230.230 INFO    ] Checking for camera pi updates...
[2026-06-19 20:18:43,265.265 INFO    ] 200
[2026-06-19 20:18:43,268.268 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:43,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:18:43,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:18:43,372.372 INFO    ] No camera update needed
[2026-06-19 20:18:43,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:18:43,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:18:43,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:18:43,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:18:45,432.432 INFO    ] ================================================
[2026-06-19 20:18:45,447.447 INFO    ] Launching Daemon at Fri Jun 19 20:18:45 IST 2026
[2026-06-19 20:18:45,459.459 INFO    ] ================================================
[2026-06-19 20:18:46,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:18:46
[2026-06-19 20:18:46,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:18:46,886.886 INFO    ] Initializing speech engine...
[2026-06-19 20:18:46,895.895 INFO    ] 2026-06-19 20:18:46
[2026-06-19 20:18:47,147.147 INFO    ] 2026-06-19 20:18:47
[2026-06-19 20:18:47,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:18:47,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:18:47,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:18:47,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:18:47,614.614 INFO    ] time= 19/06/2026 20:18:47
[2026-06-19 20:18:47,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:18:47,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:18:47,877.877 INFO    ] No existing commands found in stream
[2026-06-19 20:18:52,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:18:52,893.893 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 20:18:56,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:18:56,618.618 INFO    ] Checking for system updates...
[2026-06-19 20:18:56,653.653 INFO    ] 200
[2026-06-19 20:18:56,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:56,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:18:56,714.714 INFO    ] No update needed
[2026-06-19 20:18:56,717.717 INFO    ] Checking for camera pi updates...
[2026-06-19 20:18:56,752.752 INFO    ] 200
[2026-06-19 20:18:56,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:18:56,796.796 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:18:56,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:18:56,851.851 INFO    ] No camera update needed
[2026-06-19 20:18:56,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:18:56,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:18:56,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:18:56,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:18:58,907.907 INFO    ] ================================================
[2026-06-19 20:18:58,922.922 INFO    ] Launching Daemon at Fri Jun 19 20:18:58 IST 2026
[2026-06-19 20:18:58,933.933 INFO    ] ================================================
[2026-06-19 20:18:59,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:18:59
[2026-06-19 20:19:00,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:19:00,362.362 INFO    ] Initializing speech engine...
[2026-06-19 20:19:00,382.382 INFO    ] 2026-06-19 20:19:00
[2026-06-19 20:19:00,651.651 INFO    ] 2026-06-19 20:19:00
[2026-06-19 20:19:00,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:19:00,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:19:00,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:19:01,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:19:01,148.148 INFO    ] time= 19/06/2026 20:19:01
[2026-06-19 20:19:01,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:19:01,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:19:01,374.374 INFO    ] No existing commands found in stream
[2026-06-19 20:19:06,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:19:06,400.400 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 20:19:09,478.478 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:19:09,481.481 INFO    ] Checking for system updates...
[2026-06-19 20:19:09,518.518 INFO    ] 200
[2026-06-19 20:19:09,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:09,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:19:09,583.583 INFO    ] No update needed
[2026-06-19 20:19:09,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 20:19:09,620.620 INFO    ] 200
[2026-06-19 20:19:09,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:09,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:19:09,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:19:09,712.712 INFO    ] No camera update needed
[2026-06-19 20:19:09,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:19:09,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:19:09,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:19:09,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:19:11,766.766 INFO    ] ================================================
[2026-06-19 20:19:11,782.782 INFO    ] Launching Daemon at Fri Jun 19 20:19:11 IST 2026
[2026-06-19 20:19:11,793.793 INFO    ] ================================================
[2026-06-19 20:19:12,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:19:12
[2026-06-19 20:19:12,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:19:13,206.206 INFO    ] Initializing speech engine...
[2026-06-19 20:19:13,215.215 INFO    ] 2026-06-19 20:19:13
[2026-06-19 20:19:13,520.520 INFO    ] 2026-06-19 20:19:13
[2026-06-19 20:19:13,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:19:13,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:19:13,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:19:13,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:19:13,958.958 INFO    ] time= 19/06/2026 20:19:13
[2026-06-19 20:19:13,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:19:13,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:19:14,107.107 INFO    ] No existing commands found in stream
[2026-06-19 20:19:19,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:19:19,135.135 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 20:19:19,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:19:19,953.953 INFO    ] Checking for system updates...
[2026-06-19 20:19:19,989.989 INFO    ] 200
[2026-06-19 20:19:19,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:20,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:19:20,047.047 INFO    ] No update needed
[2026-06-19 20:19:20,050.050 INFO    ] Checking for camera pi updates...
[2026-06-19 20:19:20,088.088 INFO    ] 200
[2026-06-19 20:19:20,091.091 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:20,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:19:20,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:19:20,193.193 INFO    ] No camera update needed
[2026-06-19 20:19:20,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:19:20,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:19:20,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:19:20,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:19:22,252.252 INFO    ] ================================================
[2026-06-19 20:19:22,267.267 INFO    ] Launching Daemon at Fri Jun 19 20:19:22 IST 2026
[2026-06-19 20:19:22,279.279 INFO    ] ================================================
[2026-06-19 20:19:22,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:19:22
[2026-06-19 20:19:23,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:19:23,777.777 INFO    ] Initializing speech engine...
[2026-06-19 20:19:23,790.790 INFO    ] 2026-06-19 20:19:23
[2026-06-19 20:19:24,110.110 INFO    ] 2026-06-19 20:19:24
[2026-06-19 20:19:24,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:19:24,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:19:24,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:19:24,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:19:24,639.639 INFO    ] time= 19/06/2026 20:19:24
[2026-06-19 20:19:24,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:19:24,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:19:24,802.802 INFO    ] No existing commands found in stream
[2026-06-19 20:19:29,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:19:29,834.834 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 20:19:34,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:19:34,041.041 INFO    ] Checking for system updates...
[2026-06-19 20:19:34,079.079 INFO    ] 200
[2026-06-19 20:19:34,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:34,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:19:34,140.140 INFO    ] No update needed
[2026-06-19 20:19:34,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 20:19:34,179.179 INFO    ] 200
[2026-06-19 20:19:34,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:34,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:19:34,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:19:34,269.269 INFO    ] No camera update needed
[2026-06-19 20:19:34,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:19:34,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:19:34,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:19:34,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:19:36,326.326 INFO    ] ================================================
[2026-06-19 20:19:36,341.341 INFO    ] Launching Daemon at Fri Jun 19 20:19:36 IST 2026
[2026-06-19 20:19:36,352.352 INFO    ] ================================================
[2026-06-19 20:19:36,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:19:36
[2026-06-19 20:19:37,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:19:37,786.786 INFO    ] Initializing speech engine...
[2026-06-19 20:19:37,797.797 INFO    ] 2026-06-19 20:19:37
[2026-06-19 20:19:38,044.044 INFO    ] 2026-06-19 20:19:38
[2026-06-19 20:19:38,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:19:38,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:19:38,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:19:38,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:19:38,537.537 INFO    ] time= 19/06/2026 20:19:38
[2026-06-19 20:19:38,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:19:38,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:19:38,758.758 INFO    ] No existing commands found in stream
[2026-06-19 20:19:43,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:19:43,786.786 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 20:19:46,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:19:46,017.017 INFO    ] Checking for system updates...
[2026-06-19 20:19:46,052.052 INFO    ] 200
[2026-06-19 20:19:46,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:46,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:19:46,112.112 INFO    ] No update needed
[2026-06-19 20:19:46,114.114 INFO    ] Checking for camera pi updates...
[2026-06-19 20:19:46,153.153 INFO    ] 200
[2026-06-19 20:19:46,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:46,197.197 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:19:46,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:19:46,320.320 INFO    ] No camera update needed
[2026-06-19 20:19:46,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:19:46,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:19:46,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:19:46,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:19:48,378.378 INFO    ] ================================================
[2026-06-19 20:19:48,394.394 INFO    ] Launching Daemon at Fri Jun 19 20:19:48 IST 2026
[2026-06-19 20:19:48,405.405 INFO    ] ================================================
[2026-06-19 20:19:48,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:19:48
[2026-06-19 20:19:49,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:19:49,829.829 INFO    ] Initializing speech engine...
[2026-06-19 20:19:49,838.838 INFO    ] 2026-06-19 20:19:49
[2026-06-19 20:19:50,090.090 INFO    ] 2026-06-19 20:19:50
[2026-06-19 20:19:50,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:19:50,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:19:50,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:19:50,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:19:50,549.549 INFO    ] time= 19/06/2026 20:19:50
[2026-06-19 20:19:50,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:19:50,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:19:50,796.796 INFO    ] No existing commands found in stream
[2026-06-19 20:19:55,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:19:55,829.829 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 20:19:56,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:19:56,268.268 INFO    ] Checking for system updates...
[2026-06-19 20:19:56,304.304 INFO    ] 200
[2026-06-19 20:19:56,307.307 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:56,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:19:56,363.363 INFO    ] No update needed
[2026-06-19 20:19:56,365.365 INFO    ] Checking for camera pi updates...
[2026-06-19 20:19:56,399.399 INFO    ] 200
[2026-06-19 20:19:56,402.402 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:19:56,452.452 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:19:56,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:19:56,506.506 INFO    ] No camera update needed
[2026-06-19 20:19:56,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:19:56,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:19:56,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:19:56,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:19:58,567.567 INFO    ] ================================================
[2026-06-19 20:19:58,583.583 INFO    ] Launching Daemon at Fri Jun 19 20:19:58 IST 2026
[2026-06-19 20:19:58,594.594 INFO    ] ================================================
[2026-06-19 20:19:59,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:19:59
[2026-06-19 20:19:59,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:20:00,289.289 INFO    ] Initializing speech engine...
[2026-06-19 20:20:00,303.303 INFO    ] 2026-06-19 20:20:00
[2026-06-19 20:20:00,563.563 INFO    ] 2026-06-19 20:20:00
[2026-06-19 20:20:00,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:20:00,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:20:00,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:20:01,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:20:01,076.076 INFO    ] time= 19/06/2026 20:20:01
[2026-06-19 20:20:01,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:20:01,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:20:01,285.285 INFO    ] No existing commands found in stream
[2026-06-19 20:20:06,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:20:06,300.300 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-19 20:20:10,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:20:10,044.044 INFO    ] Checking for system updates...
[2026-06-19 20:20:10,084.084 INFO    ] 200
[2026-06-19 20:20:10,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:20:10,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:20:10,143.143 INFO    ] No update needed
[2026-06-19 20:20:10,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 20:20:10,181.181 INFO    ] 200
[2026-06-19 20:20:10,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:20:10,225.225 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:20:10,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:20:10,274.274 INFO    ] No camera update needed
[2026-06-19 20:20:10,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:20:10,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:20:10,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:20:10,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:20:12,331.331 INFO    ] ================================================
[2026-06-19 20:20:12,346.346 INFO    ] Launching Daemon at Fri Jun 19 20:20:12 IST 2026
[2026-06-19 20:20:12,356.356 INFO    ] ================================================
[2026-06-19 20:20:12,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:20:12
[2026-06-19 20:20:13,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:20:13,807.807 INFO    ] Initializing speech engine...
[2026-06-19 20:20:13,821.821 INFO    ] 2026-06-19 20:20:13
[2026-06-19 20:20:14,111.111 INFO    ] 2026-06-19 20:20:14
[2026-06-19 20:20:14,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:20:14,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:20:14,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:20:14,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:20:14,537.537 INFO    ] time= 19/06/2026 20:20:14
[2026-06-19 20:20:14,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:20:14,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:20:14,677.677 INFO    ] No existing commands found in stream
[2026-06-19 20:20:19,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:20:19,705.705 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 20:20:22,527.527 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:20:22,529.529 INFO    ] Checking for system updates...
[2026-06-19 20:20:22,566.566 INFO    ] 200
[2026-06-19 20:20:22,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:20:22,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:20:22,623.623 INFO    ] No update needed
[2026-06-19 20:20:22,626.626 INFO    ] Checking for camera pi updates...
[2026-06-19 20:20:22,664.664 INFO    ] 200
[2026-06-19 20:20:22,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:20:22,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:20:22,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:20:22,852.852 INFO    ] No camera update needed
[2026-06-19 20:20:22,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:20:22,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:20:22,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:20:22,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:20:24,912.912 INFO    ] ================================================
[2026-06-19 20:20:24,929.929 INFO    ] Launching Daemon at Fri Jun 19 20:20:24 IST 2026
[2026-06-19 20:20:24,941.941 INFO    ] ================================================
[2026-06-19 20:20:25,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:20:25
[2026-06-19 20:20:26,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:20:26,450.450 INFO    ] Initializing speech engine...
[2026-06-19 20:20:26,459.459 INFO    ] 2026-06-19 20:20:26
[2026-06-19 20:20:26,715.715 INFO    ] 2026-06-19 20:20:26
[2026-06-19 20:20:26,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:20:26,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:20:27,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:20:27,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:20:27,227.227 INFO    ] time= 19/06/2026 20:20:27
[2026-06-19 20:20:27,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:20:27,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:20:27,474.474 INFO    ] No existing commands found in stream
[2026-06-19 20:20:32,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:20:32,490.490 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 20:20:35,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:20:35,686.686 INFO    ] Checking for system updates...
[2026-06-19 20:20:35,727.727 INFO    ] 200
[2026-06-19 20:20:35,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:20:35,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:20:35,785.785 INFO    ] No update needed
[2026-06-19 20:20:35,788.788 INFO    ] Checking for camera pi updates...
[2026-06-19 20:20:35,822.822 INFO    ] 200
[2026-06-19 20:20:35,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:20:35,864.864 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:20:35,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:20:35,921.921 INFO    ] No camera update needed
[2026-06-19 20:20:35,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:20:35,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:20:35,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:20:35,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:20:37,976.976 INFO    ] ================================================
[2026-06-19 20:20:37,992.992 INFO    ] Launching Daemon at Fri Jun 19 20:20:37 IST 2026
[2026-06-19 20:20:38,004.004 INFO    ] ================================================
[2026-06-19 20:20:38,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:20:38
[2026-06-19 20:20:39,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:20:39,523.523 INFO    ] Initializing speech engine...
[2026-06-19 20:20:39,536.536 INFO    ] 2026-06-19 20:20:39
[2026-06-19 20:20:39,845.845 INFO    ] 2026-06-19 20:20:39
[2026-06-19 20:20:39,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:20:40,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:20:40,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:20:40,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:20:40,351.351 INFO    ] time= 19/06/2026 20:20:40
[2026-06-19 20:20:40,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:20:40,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:20:40,552.552 INFO    ] No existing commands found in stream
[2026-06-19 20:20:45,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:20:45,591.591 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 20:20:49,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:20:49,967.967 INFO    ] Checking for system updates...
[2026-06-19 20:20:50,004.004 INFO    ] 200
[2026-06-19 20:20:50,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:20:50,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:20:50,062.062 INFO    ] No update needed
[2026-06-19 20:20:50,065.065 INFO    ] Checking for camera pi updates...
[2026-06-19 20:20:50,098.098 INFO    ] 200
[2026-06-19 20:20:50,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:20:50,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:20:50,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:20:50,189.189 INFO    ] No camera update needed
[2026-06-19 20:20:50,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:20:50,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:20:50,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:20:50,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:20:52,245.245 INFO    ] ================================================
[2026-06-19 20:20:52,261.261 INFO    ] Launching Daemon at Fri Jun 19 20:20:52 IST 2026
[2026-06-19 20:20:52,272.272 INFO    ] ================================================
[2026-06-19 20:20:52,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:20:52
[2026-06-19 20:20:53,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:20:53,694.694 INFO    ] Initializing speech engine...
[2026-06-19 20:20:53,719.719 INFO    ] 2026-06-19 20:20:53
[2026-06-19 20:20:53,996.996 INFO    ] 2026-06-19 20:20:53
[2026-06-19 20:20:54,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:20:54,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:20:54,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:20:54,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:20:54,400.400 INFO    ] time= 19/06/2026 20:20:54
[2026-06-19 20:20:54,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:20:54,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:20:54,513.513 INFO    ] No existing commands found in stream
[2026-06-19 20:20:59,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:20:59,541.541 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 20:21:03,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:21:03,159.159 INFO    ] Checking for system updates...
[2026-06-19 20:21:03,201.201 INFO    ] 200
[2026-06-19 20:21:03,204.204 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:03,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:03,294.294 INFO    ] No update needed
[2026-06-19 20:21:03,298.298 INFO    ] Checking for camera pi updates...
[2026-06-19 20:21:03,367.367 INFO    ] 200
[2026-06-19 20:21:03,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:03,447.447 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:21:03,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:03,504.504 INFO    ] No camera update needed
[2026-06-19 20:21:03,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:21:03,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:21:03,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:21:03,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:21:05,578.578 INFO    ] ================================================
[2026-06-19 20:21:05,593.593 INFO    ] Launching Daemon at Fri Jun 19 20:21:05 IST 2026
[2026-06-19 20:21:05,605.605 INFO    ] ================================================
[2026-06-19 20:21:06,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:21:06
[2026-06-19 20:21:06,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:21:07,231.231 INFO    ] Initializing speech engine...
[2026-06-19 20:21:07,241.241 INFO    ] 2026-06-19 20:21:07
[2026-06-19 20:21:07,490.490 INFO    ] 2026-06-19 20:21:07
[2026-06-19 20:21:07,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:21:07,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:21:07,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:21:07,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:21:07,994.994 INFO    ] time= 19/06/2026 20:21:07
[2026-06-19 20:21:08,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:21:08,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:21:08,199.199 INFO    ] No existing commands found in stream
[2026-06-19 20:21:13,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:21:13,218.218 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 20:21:14,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:21:14,647.647 INFO    ] Checking for system updates...
[2026-06-19 20:21:14,684.684 INFO    ] 200
[2026-06-19 20:21:14,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:14,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:14,753.753 INFO    ] No update needed
[2026-06-19 20:21:14,756.756 INFO    ] Checking for camera pi updates...
[2026-06-19 20:21:14,790.790 INFO    ] 200
[2026-06-19 20:21:14,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:14,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:21:14,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:14,881.881 INFO    ] No camera update needed
[2026-06-19 20:21:14,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:21:14,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:21:14,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:21:14,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:21:16,936.936 INFO    ] ================================================
[2026-06-19 20:21:16,953.953 INFO    ] Launching Daemon at Fri Jun 19 20:21:16 IST 2026
[2026-06-19 20:21:16,964.964 INFO    ] ================================================
[2026-06-19 20:21:17,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:21:17
[2026-06-19 20:21:18,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:21:18,632.632 INFO    ] Initializing speech engine...
[2026-06-19 20:21:18,640.640 INFO    ] 2026-06-19 20:21:18
[2026-06-19 20:21:18,917.917 INFO    ] 2026-06-19 20:21:18
[2026-06-19 20:21:18,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:21:19,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:21:19,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:21:19,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:21:19,486.486 INFO    ] time= 19/06/2026 20:21:19
[2026-06-19 20:21:19,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:21:19,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:21:19,671.671 INFO    ] No existing commands found in stream
[2026-06-19 20:21:24,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:21:24,711.711 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-19 20:21:28,984.984 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:21:28,988.988 INFO    ] Checking for system updates...
[2026-06-19 20:21:29,025.025 INFO    ] 200
[2026-06-19 20:21:29,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:29,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:29,083.083 INFO    ] No update needed
[2026-06-19 20:21:29,086.086 INFO    ] Checking for camera pi updates...
[2026-06-19 20:21:29,120.120 INFO    ] 200
[2026-06-19 20:21:29,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:29,169.169 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:21:29,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:29,222.222 INFO    ] No camera update needed
[2026-06-19 20:21:29,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:21:29,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:21:29,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:21:29,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:21:31,279.279 INFO    ] ================================================
[2026-06-19 20:21:31,294.294 INFO    ] Launching Daemon at Fri Jun 19 20:21:31 IST 2026
[2026-06-19 20:21:31,305.305 INFO    ] ================================================
[2026-06-19 20:21:31,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:21:31
[2026-06-19 20:21:32,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:21:32,826.826 INFO    ] Initializing speech engine...
[2026-06-19 20:21:32,833.833 INFO    ] 2026-06-19 20:21:32
[2026-06-19 20:21:33,162.162 INFO    ] 2026-06-19 20:21:33
[2026-06-19 20:21:33,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:21:33,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:21:33,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:21:33,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:21:33,664.664 INFO    ] time= 19/06/2026 20:21:33
[2026-06-19 20:21:33,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:21:33,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:21:33,910.910 INFO    ] No existing commands found in stream
[2026-06-19 20:21:38,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:21:38,929.929 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 20:21:40,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:21:40,193.193 INFO    ] Checking for system updates...
[2026-06-19 20:21:40,233.233 INFO    ] 200
[2026-06-19 20:21:40,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:40,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:40,292.292 INFO    ] No update needed
[2026-06-19 20:21:40,294.294 INFO    ] Checking for camera pi updates...
[2026-06-19 20:21:40,332.332 INFO    ] 200
[2026-06-19 20:21:40,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:40,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:21:40,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:40,423.423 INFO    ] No camera update needed
[2026-06-19 20:21:40,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:21:40,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:21:40,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:21:40,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:21:42,479.479 INFO    ] ================================================
[2026-06-19 20:21:42,494.494 INFO    ] Launching Daemon at Fri Jun 19 20:21:42 IST 2026
[2026-06-19 20:21:42,505.505 INFO    ] ================================================
[2026-06-19 20:21:43,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:21:43
[2026-06-19 20:21:43,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:21:43,928.928 INFO    ] Initializing speech engine...
[2026-06-19 20:21:43,943.943 INFO    ] 2026-06-19 20:21:43
[2026-06-19 20:21:44,278.278 INFO    ] 2026-06-19 20:21:44
[2026-06-19 20:21:44,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:21:44,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:21:44,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:21:44,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:21:44,784.784 INFO    ] time= 19/06/2026 20:21:44
[2026-06-19 20:21:44,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:21:44,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:21:44,926.926 INFO    ] No existing commands found in stream
[2026-06-19 20:21:49,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:21:49,952.952 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 20:21:50,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:21:50,871.871 INFO    ] Checking for system updates...
[2026-06-19 20:21:50,912.912 INFO    ] 200
[2026-06-19 20:21:50,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:50,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:50,972.972 INFO    ] No update needed
[2026-06-19 20:21:50,975.975 INFO    ] Checking for camera pi updates...
[2026-06-19 20:21:51,014.014 INFO    ] 200
[2026-06-19 20:21:51,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:21:51,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:21:51,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:21:51,109.109 INFO    ] No camera update needed
[2026-06-19 20:21:51,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:21:51,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:21:51,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:21:51,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:21:53,165.165 INFO    ] ================================================
[2026-06-19 20:21:53,182.182 INFO    ] Launching Daemon at Fri Jun 19 20:21:53 IST 2026
[2026-06-19 20:21:53,192.192 INFO    ] ================================================
[2026-06-19 20:21:53,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:21:53
[2026-06-19 20:21:54,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:21:54,762.762 INFO    ] Initializing speech engine...
[2026-06-19 20:21:54,768.768 INFO    ] 2026-06-19 20:21:54
[2026-06-19 20:21:55,035.035 INFO    ] 2026-06-19 20:21:55
[2026-06-19 20:21:55,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:21:55,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:21:55,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:21:55,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:21:55,559.559 INFO    ] time= 19/06/2026 20:21:55
[2026-06-19 20:21:55,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:21:55,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:21:55,781.781 INFO    ] No existing commands found in stream
[2026-06-19 20:22:00,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:22:00,808.808 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 20:22:03,498.498 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:22:03,502.502 INFO    ] Checking for system updates...
[2026-06-19 20:22:03,548.548 INFO    ] 200
[2026-06-19 20:22:03,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:03,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:22:03,622.622 INFO    ] No update needed
[2026-06-19 20:22:03,624.624 INFO    ] Checking for camera pi updates...
[2026-06-19 20:22:03,662.662 INFO    ] 200
[2026-06-19 20:22:03,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:03,715.715 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:22:03,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:22:03,765.765 INFO    ] No camera update needed
[2026-06-19 20:22:03,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:22:03,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:22:03,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:22:03,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:22:05,822.822 INFO    ] ================================================
[2026-06-19 20:22:05,838.838 INFO    ] Launching Daemon at Fri Jun 19 20:22:05 IST 2026
[2026-06-19 20:22:05,850.850 INFO    ] ================================================
[2026-06-19 20:22:06,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:22:06
[2026-06-19 20:22:07,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:22:07,290.290 INFO    ] Initializing speech engine...
[2026-06-19 20:22:07,297.297 INFO    ] 2026-06-19 20:22:07
[2026-06-19 20:22:07,594.594 INFO    ] 2026-06-19 20:22:07
[2026-06-19 20:22:07,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:22:07,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:22:07,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:22:08,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:22:08,043.043 INFO    ] time= 19/06/2026 20:22:08
[2026-06-19 20:22:08,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:22:08,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:22:08,240.240 INFO    ] No existing commands found in stream
[2026-06-19 20:22:13,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:22:13,250.250 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 20:22:17,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:22:17,048.048 INFO    ] Checking for system updates...
[2026-06-19 20:22:17,088.088 INFO    ] 200
[2026-06-19 20:22:17,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:17,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:22:17,147.147 INFO    ] No update needed
[2026-06-19 20:22:17,150.150 INFO    ] Checking for camera pi updates...
[2026-06-19 20:22:17,187.187 INFO    ] 200
[2026-06-19 20:22:17,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:17,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:22:17,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:22:17,290.290 INFO    ] No camera update needed
[2026-06-19 20:22:17,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:22:17,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:22:17,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:22:17,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:22:19,345.345 INFO    ] ================================================
[2026-06-19 20:22:19,362.362 INFO    ] Launching Daemon at Fri Jun 19 20:22:19 IST 2026
[2026-06-19 20:22:19,373.373 INFO    ] ================================================
[2026-06-19 20:22:21,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:22:19
[2026-06-19 20:22:22,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:22:22,409.409 INFO    ] Initializing speech engine...
[2026-06-19 20:22:22,418.418 INFO    ] 2026-06-19 20:22:22
[2026-06-19 20:22:22,718.718 INFO    ] 2026-06-19 20:22:22
[2026-06-19 20:22:22,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:22:22,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:22:22,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:22:23,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:22:24,025.025 INFO    ] time= 19/06/2026 20:22:23
[2026-06-19 20:22:24,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:22:24,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:22:24,152.152 INFO    ] No existing commands found in stream
[2026-06-19 20:22:29,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:22:29,168.168 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 20:22:33,265.265 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:22:33,268.268 INFO    ] Checking for system updates...
[2026-06-19 20:22:33,306.306 INFO    ] 200
[2026-06-19 20:22:33,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:33,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:22:33,382.382 INFO    ] No update needed
[2026-06-19 20:22:33,385.385 INFO    ] Checking for camera pi updates...
[2026-06-19 20:22:33,425.425 INFO    ] 200
[2026-06-19 20:22:33,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:33,471.471 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:22:33,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:22:33,526.526 INFO    ] No camera update needed
[2026-06-19 20:22:33,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:22:33,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:22:33,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:22:33,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:22:35,593.593 INFO    ] ================================================
[2026-06-19 20:22:35,609.609 INFO    ] Launching Daemon at Fri Jun 19 20:22:35 IST 2026
[2026-06-19 20:22:35,624.624 INFO    ] ================================================
[2026-06-19 20:22:36,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:22:36
[2026-06-19 20:22:36,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:22:37,281.281 INFO    ] Initializing speech engine...
[2026-06-19 20:22:37,288.288 INFO    ] 2026-06-19 20:22:37
[2026-06-19 20:22:37,561.561 INFO    ] 2026-06-19 20:22:37
[2026-06-19 20:22:37,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:22:37,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:22:37,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:22:37,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:22:38,045.045 INFO    ] time= 19/06/2026 20:22:38
[2026-06-19 20:22:38,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:22:38,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:22:38,291.291 INFO    ] No existing commands found in stream
[2026-06-19 20:22:43,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:22:44,336.336 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-19 20:22:47,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:22:47,498.498 INFO    ] Checking for system updates...
[2026-06-19 20:22:47,536.536 INFO    ] 200
[2026-06-19 20:22:47,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:47,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:22:47,603.603 INFO    ] No update needed
[2026-06-19 20:22:47,606.606 INFO    ] Checking for camera pi updates...
[2026-06-19 20:22:47,641.641 INFO    ] 200
[2026-06-19 20:22:47,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:47,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:22:47,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:22:47,722.722 INFO    ] No camera update needed
[2026-06-19 20:22:47,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:22:47,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:22:47,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:22:47,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:22:49,783.783 INFO    ] ================================================
[2026-06-19 20:22:49,799.799 INFO    ] Launching Daemon at Fri Jun 19 20:22:49 IST 2026
[2026-06-19 20:22:49,809.809 INFO    ] ================================================
[2026-06-19 20:22:50,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:22:50
[2026-06-19 20:22:50,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:22:51,270.270 INFO    ] Initializing speech engine...
[2026-06-19 20:22:51,281.281 INFO    ] 2026-06-19 20:22:51
[2026-06-19 20:22:51,540.540 INFO    ] 2026-06-19 20:22:51
[2026-06-19 20:22:51,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:22:51,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:22:51,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:22:51,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:22:52,030.030 INFO    ] time= 19/06/2026 20:22:51
[2026-06-19 20:22:52,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:22:52,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:22:52,220.220 INFO    ] No existing commands found in stream
[2026-06-19 20:22:57,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:22:57,252.252 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 20:22:58,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:22:58,829.829 INFO    ] Checking for system updates...
[2026-06-19 20:22:58,869.869 INFO    ] 200
[2026-06-19 20:22:58,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:58,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:22:58,934.934 INFO    ] No update needed
[2026-06-19 20:22:58,936.936 INFO    ] Checking for camera pi updates...
[2026-06-19 20:22:58,971.971 INFO    ] 200
[2026-06-19 20:22:58,974.974 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:22:59,024.024 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:22:59,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:22:59,074.074 INFO    ] No camera update needed
[2026-06-19 20:22:59,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:22:59,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:22:59,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:22:59,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:23:01,132.132 INFO    ] ================================================
[2026-06-19 20:23:01,148.148 INFO    ] Launching Daemon at Fri Jun 19 20:23:01 IST 2026
[2026-06-19 20:23:01,160.160 INFO    ] ================================================
[2026-06-19 20:23:01,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:23:01
[2026-06-19 20:23:02,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:23:02,767.767 INFO    ] Initializing speech engine...
[2026-06-19 20:23:02,783.783 INFO    ] 2026-06-19 20:23:02
[2026-06-19 20:23:03,076.076 INFO    ] 2026-06-19 20:23:03
[2026-06-19 20:23:03,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:23:03,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:23:03,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:23:03,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:23:03,615.615 INFO    ] time= 19/06/2026 20:23:03
[2026-06-19 20:23:03,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:23:03,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:23:03,819.819 INFO    ] No existing commands found in stream
[2026-06-19 20:23:08,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:23:08,834.834 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 20:23:09,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:23:09,610.610 INFO    ] Checking for system updates...
[2026-06-19 20:23:09,651.651 INFO    ] 200
[2026-06-19 20:23:09,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:09,705.705 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:09,708.708 INFO    ] No update needed
[2026-06-19 20:23:09,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 20:23:09,743.743 INFO    ] 200
[2026-06-19 20:23:09,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:09,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:23:09,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:09,839.839 INFO    ] No camera update needed
[2026-06-19 20:23:09,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:23:09,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:23:09,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:23:09,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:23:11,896.896 INFO    ] ================================================
[2026-06-19 20:23:11,912.912 INFO    ] Launching Daemon at Fri Jun 19 20:23:11 IST 2026
[2026-06-19 20:23:11,923.923 INFO    ] ================================================
[2026-06-19 20:23:12,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:23:12
[2026-06-19 20:23:13,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:23:13,357.357 INFO    ] Initializing speech engine...
[2026-06-19 20:23:13,365.365 INFO    ] 2026-06-19 20:23:13
[2026-06-19 20:23:13,623.623 INFO    ] 2026-06-19 20:23:13
[2026-06-19 20:23:13,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:23:13,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:23:13,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:23:14,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:23:14,114.114 INFO    ] time= 19/06/2026 20:23:14
[2026-06-19 20:23:14,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:23:14,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:23:14,323.323 INFO    ] No existing commands found in stream
[2026-06-19 20:23:19,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:23:19,340.340 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 20:23:21,998.998 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:23:22,001.001 INFO    ] Checking for system updates...
[2026-06-19 20:23:22,038.038 INFO    ] 200
[2026-06-19 20:23:22,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:22,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:22,101.101 INFO    ] No update needed
[2026-06-19 20:23:22,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 20:23:22,140.140 INFO    ] 200
[2026-06-19 20:23:22,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:22,188.188 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:23:22,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:22,234.234 INFO    ] No camera update needed
[2026-06-19 20:23:22,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:23:22,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:23:22,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:23:22,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:23:24,291.291 INFO    ] ================================================
[2026-06-19 20:23:24,306.306 INFO    ] Launching Daemon at Fri Jun 19 20:23:24 IST 2026
[2026-06-19 20:23:24,317.317 INFO    ] ================================================
[2026-06-19 20:23:24,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:23:24
[2026-06-19 20:23:25,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:23:25,917.917 INFO    ] Initializing speech engine...
[2026-06-19 20:23:25,930.930 INFO    ] 2026-06-19 20:23:25
[2026-06-19 20:23:26,207.207 INFO    ] 2026-06-19 20:23:26
[2026-06-19 20:23:26,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:23:26,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:23:26,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:23:26,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:23:26,758.758 INFO    ] time= 19/06/2026 20:23:26
[2026-06-19 20:23:26,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:23:26,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:23:26,923.923 INFO    ] No existing commands found in stream
[2026-06-19 20:23:31,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:23:31,958.958 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 20:23:32,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:23:32,521.521 INFO    ] Checking for system updates...
[2026-06-19 20:23:32,569.569 INFO    ] 200
[2026-06-19 20:23:32,573.573 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:32,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:32,649.649 INFO    ] No update needed
[2026-06-19 20:23:32,652.652 INFO    ] Checking for camera pi updates...
[2026-06-19 20:23:32,691.691 INFO    ] 200
[2026-06-19 20:23:32,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:32,741.741 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:23:32,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:32,777.777 INFO    ] No camera update needed
[2026-06-19 20:23:32,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:23:32,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:23:32,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:23:32,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:23:34,840.840 INFO    ] ================================================
[2026-06-19 20:23:34,855.855 INFO    ] Launching Daemon at Fri Jun 19 20:23:34 IST 2026
[2026-06-19 20:23:34,866.866 INFO    ] ================================================
[2026-06-19 20:23:35,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:23:35
[2026-06-19 20:23:36,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:23:36,310.310 INFO    ] Initializing speech engine...
[2026-06-19 20:23:36,319.319 INFO    ] 2026-06-19 20:23:36
[2026-06-19 20:23:36,565.565 INFO    ] 2026-06-19 20:23:36
[2026-06-19 20:23:36,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:23:36,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:23:36,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:23:36,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:23:37,038.038 INFO    ] time= 19/06/2026 20:23:36
[2026-06-19 20:23:37,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:23:37,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:23:37,247.247 INFO    ] No existing commands found in stream
[2026-06-19 20:23:42,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:23:42,280.280 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 20:23:43,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:23:43,519.519 INFO    ] Checking for system updates...
[2026-06-19 20:23:43,554.554 INFO    ] 200
[2026-06-19 20:23:43,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:43,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:43,612.612 INFO    ] No update needed
[2026-06-19 20:23:43,614.614 INFO    ] Checking for camera pi updates...
[2026-06-19 20:23:43,651.651 INFO    ] 200
[2026-06-19 20:23:43,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:43,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:23:43,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:43,745.745 INFO    ] No camera update needed
[2026-06-19 20:23:43,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:23:43,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:23:43,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:23:43,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:23:45,803.803 INFO    ] ================================================
[2026-06-19 20:23:45,819.819 INFO    ] Launching Daemon at Fri Jun 19 20:23:45 IST 2026
[2026-06-19 20:23:45,830.830 INFO    ] ================================================
[2026-06-19 20:23:46,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:23:46
[2026-06-19 20:23:46,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:23:47,243.243 INFO    ] Initializing speech engine...
[2026-06-19 20:23:47,261.261 INFO    ] 2026-06-19 20:23:47
[2026-06-19 20:23:47,514.514 INFO    ] 2026-06-19 20:23:47
[2026-06-19 20:23:47,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:23:47,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:23:47,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:23:48,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:23:48,070.070 INFO    ] time= 19/06/2026 20:23:48
[2026-06-19 20:23:48,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:23:48,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:23:48,242.242 INFO    ] No existing commands found in stream
[2026-06-19 20:23:53,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:23:53,260.260 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 20:23:55,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:23:55,833.833 INFO    ] Checking for system updates...
[2026-06-19 20:23:55,869.869 INFO    ] 200
[2026-06-19 20:23:55,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:55,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:55,931.931 INFO    ] No update needed
[2026-06-19 20:23:55,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 20:23:55,970.970 INFO    ] 200
[2026-06-19 20:23:55,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:23:56,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:23:56,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:23:56,064.064 INFO    ] No camera update needed
[2026-06-19 20:23:56,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:23:56,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:23:56,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:23:56,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:23:58,123.123 INFO    ] ================================================
[2026-06-19 20:23:58,138.138 INFO    ] Launching Daemon at Fri Jun 19 20:23:58 IST 2026
[2026-06-19 20:23:58,149.149 INFO    ] ================================================
[2026-06-19 20:23:58,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:23:58
[2026-06-19 20:23:59,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:23:59,616.616 INFO    ] Initializing speech engine...
[2026-06-19 20:23:59,621.621 INFO    ] 2026-06-19 20:23:59
[2026-06-19 20:23:59,886.886 INFO    ] 2026-06-19 20:23:59
[2026-06-19 20:23:59,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:24:00,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:24:00,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:24:00,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:24:00,361.361 INFO    ] time= 19/06/2026 20:24:00
[2026-06-19 20:24:00,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:24:00,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:24:00,572.572 INFO    ] No existing commands found in stream
[2026-06-19 20:24:05,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:24:05,597.597 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 20:24:07,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:24:07,886.886 INFO    ] Checking for system updates...
[2026-06-19 20:24:07,925.925 INFO    ] 200
[2026-06-19 20:24:07,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:07,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:24:07,987.987 INFO    ] No update needed
[2026-06-19 20:24:07,989.989 INFO    ] Checking for camera pi updates...
[2026-06-19 20:24:08,023.023 INFO    ] 200
[2026-06-19 20:24:08,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:08,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:24:08,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:24:08,117.117 INFO    ] No camera update needed
[2026-06-19 20:24:08,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:24:08,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:24:08,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:24:08,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:24:10,173.173 INFO    ] ================================================
[2026-06-19 20:24:10,189.189 INFO    ] Launching Daemon at Fri Jun 19 20:24:10 IST 2026
[2026-06-19 20:24:10,200.200 INFO    ] ================================================
[2026-06-19 20:24:10,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:24:10
[2026-06-19 20:24:11,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:24:11,859.859 INFO    ] Initializing speech engine...
[2026-06-19 20:24:11,865.865 INFO    ] 2026-06-19 20:24:11
[2026-06-19 20:24:12,152.152 INFO    ] 2026-06-19 20:24:12
[2026-06-19 20:24:12,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:24:12,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:24:12,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:24:12,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:24:12,696.696 INFO    ] time= 19/06/2026 20:24:12
[2026-06-19 20:24:12,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:24:12,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:24:12,859.859 INFO    ] No existing commands found in stream
[2026-06-19 20:24:17,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:24:17,893.893 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 20:24:21,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:24:21,827.827 INFO    ] Checking for system updates...
[2026-06-19 20:24:21,864.864 INFO    ] 200
[2026-06-19 20:24:21,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:21,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:24:21,923.923 INFO    ] No update needed
[2026-06-19 20:24:21,926.926 INFO    ] Checking for camera pi updates...
[2026-06-19 20:24:21,963.963 INFO    ] 200
[2026-06-19 20:24:21,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:22,013.013 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:24:22,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:24:22,072.072 INFO    ] No camera update needed
[2026-06-19 20:24:22,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:24:22,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:24:22,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:24:22,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:24:24,129.129 INFO    ] ================================================
[2026-06-19 20:24:24,145.145 INFO    ] Launching Daemon at Fri Jun 19 20:24:24 IST 2026
[2026-06-19 20:24:24,155.155 INFO    ] ================================================
[2026-06-19 20:24:24,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:24:24
[2026-06-19 20:24:25,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:24:25,627.627 INFO    ] Initializing speech engine...
[2026-06-19 20:24:25,641.641 INFO    ] 2026-06-19 20:24:25
[2026-06-19 20:24:25,934.934 INFO    ] 2026-06-19 20:24:25
[2026-06-19 20:24:25,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:24:26,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:24:26,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:24:26,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:24:26,436.436 INFO    ] time= 19/06/2026 20:24:26
[2026-06-19 20:24:26,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:24:26,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:24:26,713.713 INFO    ] No existing commands found in stream
[2026-06-19 20:24:31,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:24:31,732.732 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 20:24:34,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:24:34,400.400 INFO    ] Checking for system updates...
[2026-06-19 20:24:34,440.440 INFO    ] 200
[2026-06-19 20:24:34,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:34,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:24:34,506.506 INFO    ] No update needed
[2026-06-19 20:24:34,508.508 INFO    ] Checking for camera pi updates...
[2026-06-19 20:24:34,547.547 INFO    ] 200
[2026-06-19 20:24:34,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:34,591.591 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:24:34,734.734 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:24:34,737.737 INFO    ] No camera update needed
[2026-06-19 20:24:34,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:24:34,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:24:34,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:24:34,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:24:36,793.793 INFO    ] ================================================
[2026-06-19 20:24:36,810.810 INFO    ] Launching Daemon at Fri Jun 19 20:24:36 IST 2026
[2026-06-19 20:24:36,822.822 INFO    ] ================================================
[2026-06-19 20:24:37,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:24:37
[2026-06-19 20:24:38,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:24:38,289.289 INFO    ] Initializing speech engine...
[2026-06-19 20:24:38,296.296 INFO    ] 2026-06-19 20:24:38
[2026-06-19 20:24:38,558.558 INFO    ] 2026-06-19 20:24:38
[2026-06-19 20:24:38,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:24:38,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:24:38,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:24:38,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:24:39,048.048 INFO    ] time= 19/06/2026 20:24:39
[2026-06-19 20:24:39,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:24:39,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:24:39,258.258 INFO    ] No existing commands found in stream
[2026-06-19 20:24:44,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:24:44,273.273 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-19 20:24:45,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:24:45,206.206 INFO    ] Checking for system updates...
[2026-06-19 20:24:45,245.245 INFO    ] 200
[2026-06-19 20:24:45,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:45,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:24:45,313.313 INFO    ] No update needed
[2026-06-19 20:24:45,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 20:24:45,351.351 INFO    ] 200
[2026-06-19 20:24:45,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:45,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:24:45,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:24:45,452.452 INFO    ] No camera update needed
[2026-06-19 20:24:45,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:24:45,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:24:45,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:24:45,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:24:47,513.513 INFO    ] ================================================
[2026-06-19 20:24:47,528.528 INFO    ] Launching Daemon at Fri Jun 19 20:24:47 IST 2026
[2026-06-19 20:24:47,539.539 INFO    ] ================================================
[2026-06-19 20:24:48,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:24:48
[2026-06-19 20:24:48,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:24:49,166.166 INFO    ] Initializing speech engine...
[2026-06-19 20:24:49,174.174 INFO    ] 2026-06-19 20:24:49
[2026-06-19 20:24:49,449.449 INFO    ] 2026-06-19 20:24:49
[2026-06-19 20:24:49,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:24:49,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:24:49,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:24:49,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:24:50,014.014 INFO    ] time= 19/06/2026 20:24:49
[2026-06-19 20:24:50,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:24:50,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:24:50,227.227 INFO    ] No existing commands found in stream
[2026-06-19 20:24:55,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:24:55,255.255 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 20:24:56,457.457 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:24:56,459.459 INFO    ] Checking for system updates...
[2026-06-19 20:24:56,500.500 INFO    ] 200
[2026-06-19 20:24:56,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:56,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:24:56,557.557 INFO    ] No update needed
[2026-06-19 20:24:56,559.559 INFO    ] Checking for camera pi updates...
[2026-06-19 20:24:56,594.594 INFO    ] 200
[2026-06-19 20:24:56,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:24:56,640.640 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:24:56,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:24:56,690.690 INFO    ] No camera update needed
[2026-06-19 20:24:56,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:24:56,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:24:56,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:24:56,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:24:58,745.745 INFO    ] ================================================
[2026-06-19 20:24:58,761.761 INFO    ] Launching Daemon at Fri Jun 19 20:24:58 IST 2026
[2026-06-19 20:24:58,772.772 INFO    ] ================================================
[2026-06-19 20:24:59,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:24:59
[2026-06-19 20:24:59,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:25:00,241.241 INFO    ] Initializing speech engine...
[2026-06-19 20:25:00,248.248 INFO    ] 2026-06-19 20:25:00
[2026-06-19 20:25:00,508.508 INFO    ] 2026-06-19 20:25:00
[2026-06-19 20:25:00,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:25:00,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:25:00,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:25:01,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:25:01,055.055 INFO    ] time= 19/06/2026 20:25:01
[2026-06-19 20:25:01,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:25:01,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:25:01,206.206 INFO    ] No existing commands found in stream
[2026-06-19 20:25:06,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:25:06,220.220 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 20:25:08,594.594 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:25:08,597.597 INFO    ] Checking for system updates...
[2026-06-19 20:25:08,638.638 INFO    ] 200
[2026-06-19 20:25:08,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:25:08,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:25:08,699.699 INFO    ] No update needed
[2026-06-19 20:25:08,701.701 INFO    ] Checking for camera pi updates...
[2026-06-19 20:25:08,738.738 INFO    ] 200
[2026-06-19 20:25:08,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:25:08,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:25:08,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:25:08,830.830 INFO    ] No camera update needed
[2026-06-19 20:25:08,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:25:08,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:25:08,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:25:08,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:25:10,888.888 INFO    ] ================================================
[2026-06-19 20:25:10,903.903 INFO    ] Launching Daemon at Fri Jun 19 20:25:10 IST 2026
[2026-06-19 20:25:10,915.915 INFO    ] ================================================
[2026-06-19 20:25:11,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:25:11
[2026-06-19 20:25:12,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:25:12,318.318 INFO    ] Initializing speech engine...
[2026-06-19 20:25:12,326.326 INFO    ] 2026-06-19 20:25:12
[2026-06-19 20:25:12,598.598 INFO    ] 2026-06-19 20:25:12
[2026-06-19 20:25:12,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:25:12,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:25:12,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:25:13,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:25:13,068.068 INFO    ] time= 19/06/2026 20:25:13
[2026-06-19 20:25:13,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:25:13,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:25:13,309.309 INFO    ] No existing commands found in stream
[2026-06-19 20:25:18,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:25:18,340.340 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 20:25:20,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:25:20,487.487 INFO    ] Checking for system updates...
[2026-06-19 20:25:20,523.523 INFO    ] 200
[2026-06-19 20:25:20,526.526 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:25:20,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:25:20,581.581 INFO    ] No update needed
[2026-06-19 20:25:20,583.583 INFO    ] Checking for camera pi updates...
[2026-06-19 20:25:20,622.622 INFO    ] 200
[2026-06-19 20:25:20,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:25:20,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:25:20,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:25:20,721.721 INFO    ] No camera update needed
[2026-06-19 20:25:20,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:25:20,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:25:20,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:25:20,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:25:22,778.778 INFO    ] ================================================
[2026-06-19 20:25:22,794.794 INFO    ] Launching Daemon at Fri Jun 19 20:25:22 IST 2026
[2026-06-19 20:25:22,806.806 INFO    ] ================================================
[2026-06-19 20:25:23,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:25:23
[2026-06-19 20:25:23,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:25:24,274.274 INFO    ] Initializing speech engine...
[2026-06-19 20:25:24,285.285 INFO    ] 2026-06-19 20:25:24
[2026-06-19 20:25:24,548.548 INFO    ] 2026-06-19 20:25:24
[2026-06-19 20:25:24,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:25:24,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:25:24,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:25:24,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:25:25,010.010 INFO    ] time= 19/06/2026 20:25:24
[2026-06-19 20:25:25,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:25:25,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:25:25,250.250 INFO    ] No existing commands found in stream
[2026-06-19 20:25:30,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:25:30,267.267 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 20:25:32,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:25:32,066.066 INFO    ] Checking for system updates...
[2026-06-19 20:25:32,114.114 INFO    ] 200
[2026-06-19 20:25:32,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:25:32,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:25:32,190.190 INFO    ] No update needed
[2026-06-19 20:25:32,193.193 INFO    ] Checking for camera pi updates...
[2026-06-19 20:25:32,236.236 INFO    ] 200
[2026-06-19 20:25:32,239.239 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:25:32,291.291 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:25:32,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:25:32,324.324 INFO    ] No camera update needed
[2026-06-19 20:25:32,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:25:32,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:25:32,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:25:32,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:25:34,390.390 INFO    ] ================================================
[2026-06-19 20:25:34,406.406 INFO    ] Launching Daemon at Fri Jun 19 20:25:34 IST 2026
[2026-06-19 20:25:34,418.418 INFO    ] ================================================
[2026-06-19 20:25:35,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:25:35
[2026-06-19 20:25:35,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:25:36,110.110 INFO    ] Initializing speech engine...
[2026-06-19 20:25:36,121.121 INFO    ] 2026-06-19 20:25:36
[2026-06-19 20:25:36,436.436 INFO    ] 2026-06-19 20:25:36
[2026-06-19 20:25:36,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:25:36,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:25:36,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:25:36,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:25:36,948.948 INFO    ] time= 19/06/2026 20:25:36
[2026-06-19 20:25:36,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:25:36,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:25:37,108.108 INFO    ] No existing commands found in stream
[2026-06-19 20:25:42,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:25:42,142.142 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 20:25:46,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:25:46,553.553 INFO    ] Checking for system updates...
[2026-06-19 20:25:46,594.594 INFO    ] 200
[2026-06-19 20:25:46,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:25:46,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:25:46,661.661 INFO    ] No update needed
[2026-06-19 20:25:46,663.663 INFO    ] Checking for camera pi updates...
[2026-06-19 20:25:46,703.703 INFO    ] 200
[2026-06-19 20:25:46,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:25:46,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:25:46,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:25:46,808.808 INFO    ] No camera update needed
[2026-06-19 20:25:46,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:25:46,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:25:46,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:25:46,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:25:48,865.865 INFO    ] ================================================
[2026-06-19 20:25:48,881.881 INFO    ] Launching Daemon at Fri Jun 19 20:25:48 IST 2026
[2026-06-19 20:25:48,893.893 INFO    ] ================================================
[2026-06-19 20:25:49,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:25:49
[2026-06-19 20:25:50,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:25:50,370.370 INFO    ] Initializing speech engine...
[2026-06-19 20:25:50,376.376 INFO    ] 2026-06-19 20:25:50
[2026-06-19 20:25:50,638.638 INFO    ] 2026-06-19 20:25:50
[2026-06-19 20:25:50,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:25:50,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:25:50,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:25:51,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:25:51,110.110 INFO    ] time= 19/06/2026 20:25:51
[2026-06-19 20:25:51,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:25:51,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:25:51,338.338 INFO    ] No existing commands found in stream
[2026-06-19 20:25:56,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:25:56,357.357 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 20:26:00,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:26:00,495.495 INFO    ] Checking for system updates...
[2026-06-19 20:26:00,531.531 INFO    ] 200
[2026-06-19 20:26:00,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:00,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:26:00,590.590 INFO    ] No update needed
[2026-06-19 20:26:00,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 20:26:00,626.626 INFO    ] 200
[2026-06-19 20:26:00,629.629 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:00,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:26:00,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:26:00,728.728 INFO    ] No camera update needed
[2026-06-19 20:26:00,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:26:00,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:26:00,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:26:00,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:26:02,789.789 INFO    ] ================================================
[2026-06-19 20:26:02,805.805 INFO    ] Launching Daemon at Fri Jun 19 20:26:02 IST 2026
[2026-06-19 20:26:02,818.818 INFO    ] ================================================
[2026-06-19 20:26:03,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:26:03
[2026-06-19 20:26:04,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:26:04,297.297 INFO    ] Initializing speech engine...
[2026-06-19 20:26:04,306.306 INFO    ] 2026-06-19 20:26:04
[2026-06-19 20:26:04,565.565 INFO    ] 2026-06-19 20:26:04
[2026-06-19 20:26:04,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:26:04,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:26:04,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:26:04,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:26:05,055.055 INFO    ] time= 19/06/2026 20:26:04
[2026-06-19 20:26:05,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:26:05,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:26:05,263.263 INFO    ] No existing commands found in stream
[2026-06-19 20:26:10,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:26:10,281.281 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 20:26:10,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:26:10,924.924 INFO    ] Checking for system updates...
[2026-06-19 20:26:10,960.960 INFO    ] 200
[2026-06-19 20:26:10,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:11,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:26:11,026.026 INFO    ] No update needed
[2026-06-19 20:26:11,029.029 INFO    ] Checking for camera pi updates...
[2026-06-19 20:26:11,067.067 INFO    ] 200
[2026-06-19 20:26:11,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:11,116.116 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:26:11,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:26:11,162.162 INFO    ] No camera update needed
[2026-06-19 20:26:11,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:26:11,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:26:11,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:26:11,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:26:13,219.219 INFO    ] ================================================
[2026-06-19 20:26:13,235.235 INFO    ] Launching Daemon at Fri Jun 19 20:26:13 IST 2026
[2026-06-19 20:26:13,246.246 INFO    ] ================================================
[2026-06-19 20:26:13,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:26:13
[2026-06-19 20:26:14,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:26:14,908.908 INFO    ] Initializing speech engine...
[2026-06-19 20:26:14,916.916 INFO    ] 2026-06-19 20:26:14
[2026-06-19 20:26:15,189.189 INFO    ] 2026-06-19 20:26:15
[2026-06-19 20:26:15,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:26:15,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:26:15,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:26:15,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:26:15,719.719 INFO    ] time= 19/06/2026 20:26:15
[2026-06-19 20:26:15,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:26:15,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:26:15,873.873 INFO    ] No existing commands found in stream
[2026-06-19 20:26:20,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:26:20,889.889 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 20:26:21,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:26:21,595.595 INFO    ] Checking for system updates...
[2026-06-19 20:26:21,638.638 INFO    ] 200
[2026-06-19 20:26:21,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:21,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:26:21,704.704 INFO    ] No update needed
[2026-06-19 20:26:21,707.707 INFO    ] Checking for camera pi updates...
[2026-06-19 20:26:21,745.745 INFO    ] 200
[2026-06-19 20:26:21,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:21,794.794 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:26:21,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:26:21,845.845 INFO    ] No camera update needed
[2026-06-19 20:26:21,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:26:21,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:26:21,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:26:21,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:26:23,902.902 INFO    ] ================================================
[2026-06-19 20:26:23,918.918 INFO    ] Launching Daemon at Fri Jun 19 20:26:23 IST 2026
[2026-06-19 20:26:23,929.929 INFO    ] ================================================
[2026-06-19 20:26:24,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:26:24
[2026-06-19 20:26:25,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:26:25,337.337 INFO    ] Initializing speech engine...
[2026-06-19 20:26:25,362.362 INFO    ] 2026-06-19 20:26:25
[2026-06-19 20:26:25,616.616 INFO    ] 2026-06-19 20:26:25
[2026-06-19 20:26:25,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:26:25,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:26:25,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:26:26,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:26:26,114.114 INFO    ] time= 19/06/2026 20:26:26
[2026-06-19 20:26:26,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:26:26,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:26:26,321.321 INFO    ] No existing commands found in stream
[2026-06-19 20:26:31,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:26:31,338.338 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 20:26:33,500.500 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:26:33,502.502 INFO    ] Checking for system updates...
[2026-06-19 20:26:33,538.538 INFO    ] 200
[2026-06-19 20:26:33,540.540 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:33,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:26:33,595.595 INFO    ] No update needed
[2026-06-19 20:26:33,598.598 INFO    ] Checking for camera pi updates...
[2026-06-19 20:26:33,639.639 INFO    ] 200
[2026-06-19 20:26:33,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:33,687.687 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:26:33,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:26:33,720.720 INFO    ] No camera update needed
[2026-06-19 20:26:33,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:26:33,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:26:33,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:26:33,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:26:35,776.776 INFO    ] ================================================
[2026-06-19 20:26:35,792.792 INFO    ] Launching Daemon at Fri Jun 19 20:26:35 IST 2026
[2026-06-19 20:26:35,803.803 INFO    ] ================================================
[2026-06-19 20:26:36,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:26:36
[2026-06-19 20:26:36,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:26:37,224.224 INFO    ] Initializing speech engine...
[2026-06-19 20:26:37,233.233 INFO    ] 2026-06-19 20:26:37
[2026-06-19 20:26:37,528.528 INFO    ] 2026-06-19 20:26:37
[2026-06-19 20:26:37,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:26:37,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:26:37,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:26:37,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:26:37,947.947 INFO    ] time= 19/06/2026 20:26:37
[2026-06-19 20:26:37,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:26:37,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:26:38,034.034 INFO    ] No existing commands found in stream
[2026-06-19 20:26:43,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:26:43,052.052 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 20:26:46,214.214 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:26:46,216.216 INFO    ] Checking for system updates...
[2026-06-19 20:26:46,252.252 INFO    ] 200
[2026-06-19 20:26:46,254.254 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:46,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:26:46,311.311 INFO    ] No update needed
[2026-06-19 20:26:46,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 20:26:46,350.350 INFO    ] 200
[2026-06-19 20:26:46,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:46,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:26:46,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:26:46,546.546 INFO    ] No camera update needed
[2026-06-19 20:26:46,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:26:46,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:26:46,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:26:46,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:26:48,602.602 INFO    ] ================================================
[2026-06-19 20:26:48,617.617 INFO    ] Launching Daemon at Fri Jun 19 20:26:48 IST 2026
[2026-06-19 20:26:48,628.628 INFO    ] ================================================
[2026-06-19 20:26:49,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:26:49
[2026-06-19 20:26:49,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:26:50,049.049 INFO    ] Initializing speech engine...
[2026-06-19 20:26:50,058.058 INFO    ] 2026-06-19 20:26:50
[2026-06-19 20:26:50,305.305 INFO    ] 2026-06-19 20:26:50
[2026-06-19 20:26:50,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:26:50,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:26:50,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:26:50,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:26:50,807.807 INFO    ] time= 19/06/2026 20:26:50
[2026-06-19 20:26:50,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:26:50,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:26:51,018.018 INFO    ] No existing commands found in stream
[2026-06-19 20:26:56,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:26:56,040.040 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 20:26:58,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:26:58,444.444 INFO    ] Checking for system updates...
[2026-06-19 20:26:58,483.483 INFO    ] 200
[2026-06-19 20:26:58,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:58,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:26:58,547.547 INFO    ] No update needed
[2026-06-19 20:26:58,550.550 INFO    ] Checking for camera pi updates...
[2026-06-19 20:26:58,587.587 INFO    ] 200
[2026-06-19 20:26:58,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:26:58,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:26:58,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:26:58,680.680 INFO    ] No camera update needed
[2026-06-19 20:26:58,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:26:58,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:26:58,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:26:58,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:27:00,735.735 INFO    ] ================================================
[2026-06-19 20:27:00,750.750 INFO    ] Launching Daemon at Fri Jun 19 20:27:00 IST 2026
[2026-06-19 20:27:00,761.761 INFO    ] ================================================
[2026-06-19 20:27:01,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:27:01
[2026-06-19 20:27:02,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:27:02,440.440 INFO    ] Initializing speech engine...
[2026-06-19 20:27:02,467.467 INFO    ] 2026-06-19 20:27:02
[2026-06-19 20:27:02,770.770 INFO    ] 2026-06-19 20:27:02
[2026-06-19 20:27:02,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:27:03,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:27:03,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:27:03,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:27:03,233.233 INFO    ] time= 19/06/2026 20:27:03
[2026-06-19 20:27:03,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:27:03,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:27:03,488.488 INFO    ] No existing commands found in stream
[2026-06-19 20:27:08,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:27:08,517.517 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 20:27:11,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:27:11,783.783 INFO    ] Checking for system updates...
[2026-06-19 20:27:11,819.819 INFO    ] 200
[2026-06-19 20:27:11,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:11,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:27:11,882.882 INFO    ] No update needed
[2026-06-19 20:27:11,885.885 INFO    ] Checking for camera pi updates...
[2026-06-19 20:27:11,921.921 INFO    ] 200
[2026-06-19 20:27:11,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:11,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:27:12,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:27:12,012.012 INFO    ] No camera update needed
[2026-06-19 20:27:12,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:27:12,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:27:12,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:27:12,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:27:14,068.068 INFO    ] ================================================
[2026-06-19 20:27:14,083.083 INFO    ] Launching Daemon at Fri Jun 19 20:27:14 IST 2026
[2026-06-19 20:27:14,094.094 INFO    ] ================================================
[2026-06-19 20:27:14,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:27:14
[2026-06-19 20:27:15,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:27:15,498.498 INFO    ] Initializing speech engine...
[2026-06-19 20:27:15,507.507 INFO    ] 2026-06-19 20:27:15
[2026-06-19 20:27:15,800.800 INFO    ] 2026-06-19 20:27:15
[2026-06-19 20:27:15,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:27:17,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:27:17,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:27:17,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:27:17,305.305 INFO    ] time= 19/06/2026 20:27:17
[2026-06-19 20:27:17,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:27:17,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:27:17,388.388 INFO    ] No existing commands found in stream
[2026-06-19 20:27:22,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:27:22,401.401 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 20:27:23,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:27:23,983.983 INFO    ] Checking for system updates...
[2026-06-19 20:27:24,019.019 INFO    ] 200
[2026-06-19 20:27:24,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:24,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:27:24,081.081 INFO    ] No update needed
[2026-06-19 20:27:24,083.083 INFO    ] Checking for camera pi updates...
[2026-06-19 20:27:24,120.120 INFO    ] 200
[2026-06-19 20:27:24,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:24,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:27:24,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:27:24,217.217 INFO    ] No camera update needed
[2026-06-19 20:27:24,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:27:24,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:27:24,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:27:24,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:27:26,271.271 INFO    ] ================================================
[2026-06-19 20:27:26,286.286 INFO    ] Launching Daemon at Fri Jun 19 20:27:26 IST 2026
[2026-06-19 20:27:26,297.297 INFO    ] ================================================
[2026-06-19 20:27:26,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:27:26
[2026-06-19 20:27:27,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:27:27,821.821 INFO    ] Initializing speech engine...
[2026-06-19 20:27:27,829.829 INFO    ] 2026-06-19 20:27:27
[2026-06-19 20:27:28,099.099 INFO    ] 2026-06-19 20:27:28
[2026-06-19 20:27:28,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:27:28,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:27:28,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:27:28,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:27:28,631.631 INFO    ] time= 19/06/2026 20:27:28
[2026-06-19 20:27:28,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:27:28,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:27:28,780.780 INFO    ] No existing commands found in stream
[2026-06-19 20:27:33,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:27:33,799.799 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 20:27:35,753.753 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:27:35,756.756 INFO    ] Checking for system updates...
[2026-06-19 20:27:35,819.819 INFO    ] 200
[2026-06-19 20:27:35,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:35,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:27:35,883.883 INFO    ] No update needed
[2026-06-19 20:27:35,886.886 INFO    ] Checking for camera pi updates...
[2026-06-19 20:27:35,922.922 INFO    ] 200
[2026-06-19 20:27:35,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:35,974.974 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:27:36,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:27:36,021.021 INFO    ] No camera update needed
[2026-06-19 20:27:36,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:27:36,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:27:36,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:27:36,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:27:38,078.078 INFO    ] ================================================
[2026-06-19 20:27:38,093.093 INFO    ] Launching Daemon at Fri Jun 19 20:27:38 IST 2026
[2026-06-19 20:27:38,104.104 INFO    ] ================================================
[2026-06-19 20:27:38,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:27:38
[2026-06-19 20:27:39,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:27:39,525.525 INFO    ] Initializing speech engine...
[2026-06-19 20:27:39,534.534 INFO    ] 2026-06-19 20:27:39
[2026-06-19 20:27:39,782.782 INFO    ] 2026-06-19 20:27:39
[2026-06-19 20:27:39,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:27:40,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:27:40,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:27:40,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:27:40,298.298 INFO    ] time= 19/06/2026 20:27:40
[2026-06-19 20:27:40,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:27:40,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:27:40,497.497 INFO    ] No existing commands found in stream
[2026-06-19 20:27:45,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:27:45,522.522 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 20:27:48,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:27:48,883.883 INFO    ] Checking for system updates...
[2026-06-19 20:27:48,919.919 INFO    ] 200
[2026-06-19 20:27:48,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:48,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:27:48,981.981 INFO    ] No update needed
[2026-06-19 20:27:48,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 20:27:49,020.020 INFO    ] 200
[2026-06-19 20:27:49,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:49,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:27:49,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:27:49,103.103 INFO    ] No camera update needed
[2026-06-19 20:27:49,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:27:49,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:27:49,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:27:49,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:27:51,159.159 INFO    ] ================================================
[2026-06-19 20:27:51,174.174 INFO    ] Launching Daemon at Fri Jun 19 20:27:51 IST 2026
[2026-06-19 20:27:51,185.185 INFO    ] ================================================
[2026-06-19 20:27:51,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:27:51
[2026-06-19 20:27:52,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:27:52,693.693 INFO    ] Initializing speech engine...
[2026-06-19 20:27:52,702.702 INFO    ] 2026-06-19 20:27:52
[2026-06-19 20:27:52,965.965 INFO    ] 2026-06-19 20:27:52
[2026-06-19 20:27:53,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:27:53,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:27:53,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:27:53,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:27:53,450.450 INFO    ] time= 19/06/2026 20:27:53
[2026-06-19 20:27:53,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:27:53,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:27:53,659.659 INFO    ] No existing commands found in stream
[2026-06-19 20:27:58,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:27:58,678.678 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 20:27:59,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:27:59,155.155 INFO    ] Checking for system updates...
[2026-06-19 20:27:59,193.193 INFO    ] 200
[2026-06-19 20:27:59,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:59,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:27:59,254.254 INFO    ] No update needed
[2026-06-19 20:27:59,257.257 INFO    ] Checking for camera pi updates...
[2026-06-19 20:27:59,294.294 INFO    ] 200
[2026-06-19 20:27:59,297.297 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:27:59,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:27:59,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:27:59,394.394 INFO    ] No camera update needed
[2026-06-19 20:27:59,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:27:59,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:27:59,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:27:59,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:28:01,459.459 INFO    ] ================================================
[2026-06-19 20:28:01,475.475 INFO    ] Launching Daemon at Fri Jun 19 20:28:01 IST 2026
[2026-06-19 20:28:01,487.487 INFO    ] ================================================
[2026-06-19 20:28:02,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:28:02
[2026-06-19 20:28:02,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:28:03,152.152 INFO    ] Initializing speech engine...
[2026-06-19 20:28:03,174.174 INFO    ] 2026-06-19 20:28:03
[2026-06-19 20:28:03,449.449 INFO    ] 2026-06-19 20:28:03
[2026-06-19 20:28:03,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:28:03,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:28:03,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:28:03,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:28:03,876.876 INFO    ] time= 19/06/2026 20:28:03
[2026-06-19 20:28:03,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:28:03,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:28:04,035.035 INFO    ] No existing commands found in stream
[2026-06-19 20:28:09,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:28:09,050.050 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 20:28:10,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:28:10,243.243 INFO    ] Checking for system updates...
[2026-06-19 20:28:10,282.282 INFO    ] 200
[2026-06-19 20:28:10,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:28:10,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:28:10,347.347 INFO    ] No update needed
[2026-06-19 20:28:10,351.351 INFO    ] Checking for camera pi updates...
[2026-06-19 20:28:10,386.386 INFO    ] 200
[2026-06-19 20:28:10,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:28:10,430.430 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:28:10,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:28:10,479.479 INFO    ] No camera update needed
[2026-06-19 20:28:10,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:28:10,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:28:10,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:28:10,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:28:12,537.537 INFO    ] ================================================
[2026-06-19 20:28:12,553.553 INFO    ] Launching Daemon at Fri Jun 19 20:28:12 IST 2026
[2026-06-19 20:28:12,565.565 INFO    ] ================================================
[2026-06-19 20:28:13,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:28:13
[2026-06-19 20:28:13,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:28:14,170.170 INFO    ] Initializing speech engine...
[2026-06-19 20:28:14,183.183 INFO    ] 2026-06-19 20:28:14
[2026-06-19 20:28:14,491.491 INFO    ] 2026-06-19 20:28:14
[2026-06-19 20:28:14,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:28:14,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:28:14,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:28:14,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:28:14,977.977 INFO    ] time= 19/06/2026 20:28:14
[2026-06-19 20:28:15,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:28:15,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:28:15,153.153 INFO    ] No existing commands found in stream
[2026-06-19 20:28:20,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:28:20,174.174 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 20:28:24,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:28:24,140.140 INFO    ] Checking for system updates...
[2026-06-19 20:28:24,180.180 INFO    ] 200
[2026-06-19 20:28:24,183.183 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:28:24,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:28:24,249.249 INFO    ] No update needed
[2026-06-19 20:28:24,251.251 INFO    ] Checking for camera pi updates...
[2026-06-19 20:28:24,290.290 INFO    ] 200
[2026-06-19 20:28:24,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:28:24,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:28:24,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:28:24,390.390 INFO    ] No camera update needed
[2026-06-19 20:28:24,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:28:24,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:28:24,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:28:24,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:28:26,445.445 INFO    ] ================================================
[2026-06-19 20:28:26,461.461 INFO    ] Launching Daemon at Fri Jun 19 20:28:26 IST 2026
[2026-06-19 20:28:26,473.473 INFO    ] ================================================
[2026-06-19 20:28:27,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:28:27
[2026-06-19 20:28:27,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:28:28,086.086 INFO    ] Initializing speech engine...
[2026-06-19 20:28:28,100.100 INFO    ] 2026-06-19 20:28:28
[2026-06-19 20:28:28,352.352 INFO    ] 2026-06-19 20:28:28
[2026-06-19 20:28:28,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:28:28,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:28:28,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:28:28,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:28:28,850.850 INFO    ] time= 19/06/2026 20:28:28
[2026-06-19 20:28:28,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:28:28,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:28:29,055.055 INFO    ] No existing commands found in stream
[2026-06-19 20:28:34,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:28:34,081.081 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 20:28:37,858.858 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:28:37,860.860 INFO    ] Checking for system updates...
[2026-06-19 20:28:37,897.897 INFO    ] 200
[2026-06-19 20:28:37,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:28:37,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:28:37,962.962 INFO    ] No update needed
[2026-06-19 20:28:37,965.965 INFO    ] Checking for camera pi updates...
[2026-06-19 20:28:37,999.999 INFO    ] 200
[2026-06-19 20:28:38,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:28:38,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:28:38,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:28:38,091.091 INFO    ] No camera update needed
[2026-06-19 20:28:38,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:28:38,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:28:38,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:28:38,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:28:40,147.147 INFO    ] ================================================
[2026-06-19 20:28:40,163.163 INFO    ] Launching Daemon at Fri Jun 19 20:28:40 IST 2026
[2026-06-19 20:28:40,174.174 INFO    ] ================================================
[2026-06-19 20:28:40,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:28:40
[2026-06-19 20:28:41,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:28:41,702.702 INFO    ] Initializing speech engine...
[2026-06-19 20:28:41,716.716 INFO    ] 2026-06-19 20:28:41
[2026-06-19 20:28:41,972.972 INFO    ] 2026-06-19 20:28:41
[2026-06-19 20:28:42,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:28:42,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:28:42,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:28:42,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:28:42,480.480 INFO    ] time= 19/06/2026 20:28:42
[2026-06-19 20:28:42,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:28:42,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:28:42,674.674 INFO    ] No existing commands found in stream
[2026-06-19 20:28:47,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:28:47,698.698 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 20:28:48,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:28:48,372.372 INFO    ] Checking for system updates...
[2026-06-19 20:28:48,409.409 INFO    ] 200
[2026-06-19 20:28:48,412.412 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:28:48,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:28:48,467.467 INFO    ] No update needed
[2026-06-19 20:28:48,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 20:28:48,503.503 INFO    ] 200
[2026-06-19 20:28:48,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:28:48,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:28:48,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:28:48,679.679 INFO    ] No camera update needed
[2026-06-19 20:28:48,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:28:48,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:28:48,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:28:48,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:28:50,736.736 INFO    ] ================================================
[2026-06-19 20:28:50,752.752 INFO    ] Launching Daemon at Fri Jun 19 20:28:50 IST 2026
[2026-06-19 20:28:50,764.764 INFO    ] ================================================
[2026-06-19 20:28:51,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:28:51
[2026-06-19 20:28:51,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:28:52,220.220 INFO    ] Initializing speech engine...
[2026-06-19 20:28:52,231.231 INFO    ] 2026-06-19 20:28:52
[2026-06-19 20:28:52,493.493 INFO    ] 2026-06-19 20:28:52
[2026-06-19 20:28:52,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:28:52,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:28:52,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:28:52,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:28:53,034.034 INFO    ] time= 19/06/2026 20:28:53
[2026-06-19 20:28:53,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:28:53,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:28:53,179.179 INFO    ] No existing commands found in stream
[2026-06-19 20:28:58,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:28:58,212.212 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 20:29:01,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:29:01,198.198 INFO    ] Checking for system updates...
[2026-06-19 20:29:01,306.306 INFO    ] 200
[2026-06-19 20:29:01,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:01,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:29:01,387.387 INFO    ] No update needed
[2026-06-19 20:29:01,390.390 INFO    ] Checking for camera pi updates...
[2026-06-19 20:29:01,469.469 INFO    ] 200
[2026-06-19 20:29:01,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:01,574.574 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:29:01,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:29:01,626.626 INFO    ] No camera update needed
[2026-06-19 20:29:01,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:29:01,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:29:01,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:29:01,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:29:03,692.692 INFO    ] ================================================
[2026-06-19 20:29:03,707.707 INFO    ] Launching Daemon at Fri Jun 19 20:29:03 IST 2026
[2026-06-19 20:29:03,719.719 INFO    ] ================================================
[2026-06-19 20:29:04,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:29:04
[2026-06-19 20:29:04,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:29:05,143.143 INFO    ] Initializing speech engine...
[2026-06-19 20:29:05,162.162 INFO    ] 2026-06-19 20:29:05
[2026-06-19 20:29:05,407.407 INFO    ] 2026-06-19 20:29:05
[2026-06-19 20:29:05,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:29:05,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:29:05,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:29:05,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:29:05,912.912 INFO    ] time= 19/06/2026 20:29:05
[2026-06-19 20:29:05,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:29:05,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:29:06,132.132 INFO    ] No existing commands found in stream
[2026-06-19 20:29:11,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:29:11,152.152 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 20:29:12,714.714 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:29:12,717.717 INFO    ] Checking for system updates...
[2026-06-19 20:29:12,755.755 INFO    ] 200
[2026-06-19 20:29:12,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:12,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:29:12,815.815 INFO    ] No update needed
[2026-06-19 20:29:12,818.818 INFO    ] Checking for camera pi updates...
[2026-06-19 20:29:12,859.859 INFO    ] 200
[2026-06-19 20:29:12,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:12,913.913 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:29:12,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:29:12,962.962 INFO    ] No camera update needed
[2026-06-19 20:29:12,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:29:12,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:29:12,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:29:12,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:29:15,018.018 INFO    ] ================================================
[2026-06-19 20:29:15,034.034 INFO    ] Launching Daemon at Fri Jun 19 20:29:15 IST 2026
[2026-06-19 20:29:15,045.045 INFO    ] ================================================
[2026-06-19 20:29:15,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:29:15
[2026-06-19 20:29:16,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:29:16,633.633 INFO    ] Initializing speech engine...
[2026-06-19 20:29:16,643.643 INFO    ] 2026-06-19 20:29:16
[2026-06-19 20:29:16,890.890 INFO    ] 2026-06-19 20:29:16
[2026-06-19 20:29:16,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:29:17,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:29:17,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:29:17,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:29:17,377.377 INFO    ] time= 19/06/2026 20:29:17
[2026-06-19 20:29:17,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:29:17,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:29:17,587.587 INFO    ] No existing commands found in stream
[2026-06-19 20:29:22,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:29:22,614.614 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 20:29:25,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:29:25,548.548 INFO    ] Checking for system updates...
[2026-06-19 20:29:25,590.590 INFO    ] 200
[2026-06-19 20:29:25,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:25,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:29:25,663.663 INFO    ] No update needed
[2026-06-19 20:29:25,666.666 INFO    ] Checking for camera pi updates...
[2026-06-19 20:29:25,702.702 INFO    ] 200
[2026-06-19 20:29:25,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:25,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:29:25,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:29:25,796.796 INFO    ] No camera update needed
[2026-06-19 20:29:25,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:29:25,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:29:25,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:29:25,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:29:27,853.853 INFO    ] ================================================
[2026-06-19 20:29:27,869.869 INFO    ] Launching Daemon at Fri Jun 19 20:29:27 IST 2026
[2026-06-19 20:29:27,881.881 INFO    ] ================================================
[2026-06-19 20:29:28,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:29:28
[2026-06-19 20:29:29,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:29:29,342.342 INFO    ] Initializing speech engine...
[2026-06-19 20:29:29,351.351 INFO    ] 2026-06-19 20:29:29
[2026-06-19 20:29:29,610.610 INFO    ] 2026-06-19 20:29:29
[2026-06-19 20:29:29,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:29:29,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:29:29,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:29:30,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:29:30,099.099 INFO    ] time= 19/06/2026 20:29:30
[2026-06-19 20:29:30,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:29:30,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:29:30,302.302 INFO    ] No existing commands found in stream
[2026-06-19 20:29:35,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:29:35,321.321 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 20:29:37,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:29:37,872.872 INFO    ] Checking for system updates...
[2026-06-19 20:29:37,909.909 INFO    ] 200
[2026-06-19 20:29:37,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:37,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:29:37,967.967 INFO    ] No update needed
[2026-06-19 20:29:37,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 20:29:38,003.003 INFO    ] 200
[2026-06-19 20:29:38,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:38,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:29:38,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:29:38,097.097 INFO    ] No camera update needed
[2026-06-19 20:29:38,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:29:38,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:29:38,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:29:38,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:29:40,152.152 INFO    ] ================================================
[2026-06-19 20:29:40,168.168 INFO    ] Launching Daemon at Fri Jun 19 20:29:40 IST 2026
[2026-06-19 20:29:40,180.180 INFO    ] ================================================
[2026-06-19 20:29:40,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:29:40
[2026-06-19 20:29:41,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:29:41,634.634 INFO    ] Initializing speech engine...
[2026-06-19 20:29:41,647.647 INFO    ] 2026-06-19 20:29:41
[2026-06-19 20:29:41,937.937 INFO    ] 2026-06-19 20:29:41
[2026-06-19 20:29:42,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:29:42,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:29:42,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:29:42,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:29:42,469.469 INFO    ] time= 19/06/2026 20:29:42
[2026-06-19 20:29:42,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:29:42,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:29:42,626.626 INFO    ] Found 1 existing command(s) in stream
[2026-06-19 20:29:42,686.686 INFO    ] Checking historical command: ID=1781881177099-0
[2026-06-19 20:29:42,733.733 INFO    ] process_and_cleanup_command: msg_id=1781881177099-0
[2026-06-19 20:29:42,793.793 INFO    ] is_command_expired: timestamp=2026-06-19T14:59:35.838Z, expiry=30s
[2026-06-19 20:29:43,034.034 INFO    ] Command removed from stream: 1781881177099-0. returning for processing...
[2026-06-19 20:29:43,091.091 INFO    ] ***** get_valid_command
[2026-06-19 20:29:43,098.098 INFO    ] {'timeout': '10', 'command': 'start-order', 'data': '{"request_id":"start-order-1781881175838-hesxmpd8z","orderId":"TM07202501260619202852036","is_vending":false}', 'timestamp': '2026-06-19T14:59:35.838Z', 'source': 'webapp'}
[2026-06-19 20:29:43,149.149 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1781881175838-hesxmpd8z', 'orderId': 'TM07202501260619202852036', 'is_vending': False}
[2026-06-19 20:29:43,153.153 INFO    ] Handling start order...
[2026-06-19 20:29:43,156.156 INFO    ] handle_start_order_command
[2026-06-19 20:29:43,215.215 INFO    ] _send_start_order_success: request_id=start-order-1781881175838-hesxmpd8z, order_id=TM07202501260619202852036
[2026-06-19 20:29:43,221.221 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM07202501
[2026-06-19 20:29:43,357.357 INFO    ] [_send_start_order_success] Message added to stream with ID: 1781881183259-0
[2026-06-19 20:29:43,362.362 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-19 20:29:43,369.369 INFO    ] Checking for system updates...
[2026-06-19 20:29:43,423.423 INFO    ] 200
[2026-06-19 20:29:43,428.428 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:43,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:29:43,497.497 INFO    ] No update needed
[2026-06-19 20:29:43,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 20:29:43,553.553 INFO    ] 200
[2026-06-19 20:29:43,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:43,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:29:43,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:29:43,674.674 INFO    ] No camera update needed
[2026-06-19 20:29:43,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:29:43,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:29:43,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:29:43,761.761 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-19 20:29:43,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:29:45,901.901 INFO    ] ================================================
[2026-06-19 20:29:45,916.916 INFO    ] Launching Daemon at Fri Jun 19 20:29:45 IST 2026
[2026-06-19 20:29:45,927.927 INFO    ] ================================================
[2026-06-19 20:29:46,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:29:46
[2026-06-19 20:29:47,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:29:47,368.368 INFO    ] Initializing speech engine...
[2026-06-19 20:29:47,375.375 INFO    ] 2026-06-19 20:29:47
[2026-06-19 20:29:47,674.674 INFO    ] 2026-06-19 20:29:47
[2026-06-19 20:29:47,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:29:47,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:29:47,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:29:48,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:29:48,073.073 INFO    ] time= 19/06/2026 20:29:48
[2026-06-19 20:29:48,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:29:48,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:29:48,204.204 INFO    ] Found 2 existing command(s) in stream
[2026-06-19 20:29:48,210.210 INFO    ] Checking historical command: ID=1781881183259-0
[2026-06-19 20:29:48,270.270 INFO    ] process_and_cleanup_command: msg_id=1781881183259-0
[2026-06-19 20:29:48,319.319 INFO    ] is_command_expired: timestamp=2026-06-19T14:59:43.217598Z, expiry=30s
[2026-06-19 20:29:48,527.527 INFO    ] Command removed from stream: 1781881183259-0. returning for processing...
[2026-06-19 20:29:48,571.571 INFO    ] ***** get_valid_command
[2026-06-19 20:29:48,611.611 INFO    ] {'message_type': 'command_response', 'metadata_request_id': 'start-order-1781881175838-hesxmpd8z', 'timestamp': '2026-06-19T14:59:43.217598Z', 'imei': 'TM07202501', 'metadata_order_id': 'TM07202501260619202852036', 'status': 'success', 'message': 'start-order success'}
[2026-06-19 20:29:48,681.681 INFO    ] Checking historical command: ID=1781881184363-0
[2026-06-19 20:29:48,699.699 INFO    ] process_and_cleanup_command: msg_id=1781881184363-0
[2026-06-19 20:29:48,742.742 INFO    ] is_command_expired: timestamp=2026-06-19T14:59:43.142Z, expiry=30s
[2026-06-19 20:29:48,877.877 INFO    ] Command removed from stream: 1781881184363-0. returning for processing...
[2026-06-19 20:29:48,895.895 INFO    ] ***** get_valid_command
[2026-06-19 20:29:48,938.938 INFO    ] {'timeout': '60', 'timestamp': '2026-06-19T14:59:43.142Z', 'source': 'webapp', 'command': 'process-order', 'data': '{"request_id":"process-order-1781881183142-x635u2pin","orderId":"TM07202501260619202852036","is_vending":false,"accessCode":"75104971"}'}
[2026-06-19 20:29:48,941.941 INFO    ] ***** Parsed command data: {'orderId': 'TM07202501260619202852036', 'accessCode': '75104971', 'is_vending': False, 'request_id': 'process-order-1781881183142-x635u2pin'}
[2026-06-19 20:29:48,953.953 INFO    ] Handling process order...
[2026-06-19 20:29:48,956.956 INFO    ] Processing process-order command...
[2026-06-19 20:29:48,959.959 INFO    ] 🔍 Lock file Order ID: TM07202501260619202852036, TS: 2026-06-19 20:29:43
[2026-06-19 20:29:48,972.972 INFO    ] ✅ Order lock valid for TM07202501260619202852036
[2026-06-19 20:29:48,976.976 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-19 20:29:49,009.009 INFO    ] processing access code 75104971 for order TM07202501260619202852036
[2026-06-19 20:29:49,083.083 INFO    ] 🔍 Lock file Order ID: TM07202501260619202852036, TS: 2026-06-19 20:29:43
[2026-06-19 20:29:49,131.131 INFO    ] ✅ Order lock valid for TM07202501260619202852036
[2026-06-19 20:29:49,138.138 INFO    ] 2026-06-19 20:29:49
[2026-06-19 20:29:49,214.214 INFO    ] 200
[2026-06-19 20:29:49,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:29:49,271.271 INFO    ] 75104971
[2026-06-19 20:29:49,277.277 INFO    ] 2026-06-19 20:29:49
[2026-06-19 20:29:49,282.282 INFO    ] session id :826013379
[2026-06-19 20:29:49,287.287 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=75104971&imei=TM07202501&session_id=826013379
[2026-06-19 20:29:50,356.356 INFO    ] 200
[2026-06-19 20:29:50,371.371 INFO    ] {"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"sku_total": 50, "image_url": "https://images.tinymart.in/product/4500412-3733.jpg", "skuid": "4500412", "unit_price": 25, "offer_id": "", "name": "Paper Boat Chilli Guava 150ml", "offer_desc": "", "door_id": "2", "mrp": "25", "qty": 2, "tray_id": "37"}], "bill_amount": "50", "mobile": "7286009178", "access_code": "75104971", "invoice_bill": "50", "order_id": "TM07202501260619202852036"}}
[2026-06-19 20:29:50,386.386 INFO    ] 50
[2026-06-19 20:29:50,411.411 INFO    ] TM07202501260619202852036
[2026-06-19 20:29:50,419.419 INFO    ] 7286009178
[2026-06-19 20:29:50,435.435 INFO    ] 2026-06-19 20:29:50
[2026-06-19 20:29:50,442.442 INFO    ] Door Opening for user mobile ending with  nine one seven eight 
[2026-06-19 20:29:50,499.499 INFO    ] Door Opening for user mobile ending with  nine one seven eight 
[2026-06-19 20:29:50,512.512 INFO    ] 8a5ff16a7927685370423be0423515fb
[2026-06-19 20:29:50,519.519 INFO    ] 2026-06-19 20:29:50
[2026-06-19 20:29:50,536.536 INFO    ] playing audio file
[2026-06-19 20:29:50,571.571 INFO    ] 2026-06-19 20:29:50
[2026-06-19 20:29:50,592.592 INFO    ] 2026-06-19 20:29:50
[2026-06-19 20:29:50,611.611 INFO    ] publish_status: order_id=TM07202501260619202852036
[2026-06-19 20:29:50,618.618 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619202852036
[2026-06-19 20:29:50,728.728 INFO    ] [publish_status] Message added to stream with ID: 1781881190661-0
[2026-06-19 20:29:50,765.765 INFO    ] Published to order:TM07202501260619202852036: {'order_id': 'TM07202501260619202852036', 'timestamp': '2026-06-19T14:59:50.602988Z', 'server_response': '{"rstatus": true, "msg": "Order Data", "status": true, "data": {"proposed_sku_json": [{"qty": 2, "tray_id": "37", "skuid": "4500412", "door_id": "2", "unit_price": 25, "image_url": "https://images.tinymart.in/product/4500412-3733.jpg", "name": "Paper Boat Chilli Guava 150ml", "offer_desc": "", "sku_total": 50, "offer_id": "", "mrp": "25"}], "invoice_bill": "50", "mobile": "7286009178", "order_id": "TM07202501260619202852036", "access_code": "75104971", "bill_amount": "50"}}', 'server_status': 'order-started'} (ID: 1781881190661-0)
[2026-06-19 20:29:51,310.310 INFO    ] {'order_id': 'TM07202501260619202852036', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'proposed_sku_json': [{'qty': 2, 'tray_id': '37', 'skuid': '4500412', 'door_id': '2', 'unit_price': 25, 'image_url': 'https://images.tinymart.in/product/4500412-3733.jpg', 'name': 'Paper Boat Chilli Guava 150ml', 'offer_desc': '', 'sku_total': 50, 'offer_id': '', 'mrp': '25'}], 'invoice_bill': '50', 'mobile': '7286009178', 'order_id': 'TM07202501260619202852036', 'access_code': '75104971', 'bill_amount': '50'}}, 'server_status': 'order-started'}
[2026-06-19 20:29:51,313.313 INFO    ] 200
[2026-06-19 20:29:51,320.320 INFO    ] {"data":{"order_id":"TM07202501260619202852036","server_response":{"rstatus":true,"msg":"Order Data","status":true,"data":{"proposed_sku_json":[{"qty":2,"tray_id":"37","skuid":"4500412","door_id":"2","unit_price":25,"image_url":"https:\/\/images.tinymart.in\/product\/4500412-3733.jpg","name":"Paper Boat Chilli Guava 150ml","offer_desc":"","sku_total":50,"offer_id":"","mrp":"25"}],"invoice_bill":"50","mobile":"7286009178","order_id":"TM07202501260619202852036","access_code":"75104971","bill_amount":"50"}},"server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 20:29:51,324.324 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260619202852036', 'server_response': {'rstatus': True, 'msg': 'Order Data', 'status': True, 'data': {'proposed_sku_json': [{'qty': 2, 'tray_id': '37', 'skuid': '4500412', 'door_id': '2', 'unit_price': 25, 'image_url': 'https://images.tinymart.in/product/4500412-3733.jpg', 'name': 'Paper Boat Chilli Guava 150ml', 'offer_desc': '', 'sku_total': 50, 'offer_id': '', 'mrp': '25'}], 'invoice_bill': '50', 'mobile': '7286009178', 'order_id': 'TM07202501260619202852036', 'access_code': '75104971', 'bill_amount': '50'}}, 'server_status': 'order-started'}}
[2026-06-19 20:29:51,327.327 INFO    ] 2026-06-19 20:29:51
[2026-06-19 20:29:51,372.372 INFO    ] 200
[2026-06-19 20:29:51,374.374 INFO    ] True
[2026-06-19 20:29:51,567.567 INFO    ] 200
[2026-06-19 20:29:51,570.570 INFO    ] {"rstatus": false, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "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": ""}}
[2026-06-19 20:29:51,573.573 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Processing Order'}, '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  '}, 'voiceNote': 'Please Wait', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-19 20:29:51,576.576 INFO    ] *** process_order ***
[2026-06-19 20:29:52,780.780 INFO    ] 200
[2026-06-19 20:29:52,783.783 INFO    ] {"rstatus": true, "voiceNote": "Please Wait", "delay": 0, "SectionMain": {"Header": "Processing Order"}, "status": "True", "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": ""}}
[2026-06-19 20:29:52,786.786 INFO    ] {'rstatus': 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  '}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}
[2026-06-19 20:29:52,788.788 INFO    ] *** process_order ***
[2026-06-19 20:29:52,792.792 INFO    ] publish_status: order_id=TM07202501260619202852036
[2026-06-19 20:29:52,794.794 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619202852036
[2026-06-19 20:29:52,884.884 INFO    ] [publish_status] Message added to stream with ID: 1781881192849-0
[2026-06-19 20:29:52,887.887 INFO    ] Published to order:TM07202501260619202852036: {'order_id': 'TM07202501260619202852036', 'server_response': '{"rstatus": true, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "voiceNote": "Door is open...", "SectionStatus": {"Note": "", "UI_Header": "", "SubHeader": "You can pull the door now.", "Header": " Your order is under process  "}, "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'server_status': 'doorOpened'} (ID: 1781881192849-0)
[2026-06-19 20:29:53,944.944 INFO    ] 2026-06-19 20:29:53
[2026-06-19 20:29:53,947.947 INFO    ] publish_status: order_id=TM07202501260619202852036
[2026-06-19 20:29:53,950.950 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619202852036
[2026-06-19 20:29:54,051.051 INFO    ] [publish_status] Message added to stream with ID: 1781881194016-0
[2026-06-19 20:29:54,053.053 INFO    ] Published to order:TM07202501260619202852036: {'order_id': 'TM07202501260619202852036', 'timestamp': '2026-06-19T14:59:53.945940Z', 'server_response': '{"rstatus": 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  "}, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "status": "True"}', 'server_status': 'processOrder'} (ID: 1781881194016-0)
[2026-06-19 20:29:54,191.191 INFO    ] {'order_id': 'TM07202501260619202852036', 'server_response': {'rstatus': 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  '}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'status': 'True'}, 'server_status': 'processOrder'}
[2026-06-19 20:29:54,193.193 INFO    ] 200
[2026-06-19 20:29:54,196.196 INFO    ] {"data":{"order_id":"TM07202501260619202852036","server_response":{"rstatus":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  "},"voiceNote":"Please Wait","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-19 20:29:54,199.199 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260619202852036', 'server_response': {'rstatus': True, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true', 'SectionStatus': {'Note': '', 'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Header': ' Your order is under process  '}, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'delay': 0}, 'server_status': 'processOrder'}}
[2026-06-19 20:29:54,202.202 INFO    ] 2026-06-19 20:29:54
[2026-06-19 20:29:54,204.204 INFO    ] None
[2026-06-19 20:29:54,207.207 INFO    ] Opening Door now
[2026-06-19 20:29:54,209.209 INFO    ] Opening Door now
[2026-06-19 20:29:54,211.211 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-19 20:29:54,214.214 INFO    ] 2026-06-19 20:29:54
[2026-06-19 20:29:54,217.217 INFO    ] playing audio file
[2026-06-19 20:29:54,235.235 INFO    ] 2026-06-19 20:29:54
[2026-06-19 20:29:54,253.253 INFO    ] 2026-06-19 20:29:54
[2026-06-19 20:29:57,345.345 INFO    ] 200
[2026-06-19 20:29:57,348.348 INFO    ] {"rstatus": false, "voiceNote": "Door 2 is open now", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Paper Boat Chilli Guava 150ml"}]}, "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"}}
[2026-06-19 20:29:57,352.352 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'Paper Boat Chilli Guava 150ml'}], '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'}, 'voiceNote': 'Door 2 is open now', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-19 20:30:00,411.411 INFO    ] 200
[2026-06-19 20:30:00,413.413 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Paper Boat Chilli Guava 150ml"}]}, "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"}}
[2026-06-19 20:30:00,416.416 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'Paper Boat Chilli Guava 150ml'}], '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'}, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-19 20:30:03,589.589 INFO    ] 200
[2026-06-19 20:30:03,592.592 INFO    ] {"rstatus": false, "voiceNote": "Please close door 2", "SectionMain": {"Header": "Door Open"}, "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False", "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 2, "name": "Paper Boat Chilli Guava 150ml"}]}, "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"}}
[2026-06-19 20:30:03,596.596 INFO    ] Please close door 2
[2026-06-19 20:30:03,599.599 INFO    ] Please close door 2
[2026-06-19 20:30:03,603.603 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-19 20:30:03,607.607 INFO    ] 2026-06-19 20:30:03
[2026-06-19 20:30:03,610.610 INFO    ] playing audio file
[2026-06-19 20:30:03,638.638 INFO    ] 2026-06-19 20:30:03
[2026-06-19 20:30:03,642.642 INFO    ] publish_status: order_id=TM07202501260619202852036
[2026-06-19 20:30:03,655.655 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619202852036
[2026-06-19 20:30:03,735.735 INFO    ] [publish_status] Message added to stream with ID: 1781881203700-0
[2026-06-19 20:30:03,739.739 INFO    ] Published to order:TM07202501260619202852036: {'order_id': 'TM07202501260619202852036', 'timestamp': '2026-06-19T15:00:03.640112Z', 'server_response': '{"rstatus": false, "SectionMain": {"Header": "Door Open"}, "SectionSKU": {"skus": [{"qty": 2, "name": "Paper Boat Chilli Guava 150ml"}], "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"}, "voiceNote": "Please close door 2", "error": {"umessage": "In Progress", "tmessage": "In Progress", "code": 20001, "data": {}}, "status": "False"}', 'server_status': 'OrderStatus'} (ID: 1781881203700-0)
[2026-06-19 20:30:07,737.737 INFO    ] {'order_id': 'TM07202501260619202852036', 'server_response': {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'Paper Boat Chilli Guava 150ml'}], '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'}, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}, 'server_status': 'OrderStatus'}
[2026-06-19 20:30:07,739.739 INFO    ] 200
[2026-06-19 20:30:07,742.742 INFO    ] {"data":{"order_id":"TM07202501260619202852036","server_response":{"rstatus":false,"SectionMain":{"Header":"Door Open"},"SectionSKU":{"skus":[{"qty":2,"name":"Paper Boat Chilli Guava 150ml"}],"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"},"voiceNote":"Please close door 2","error":{"umessage":"In Progress","tmessage":"In Progress","code":20001,"data":[]},"status":"false"},"server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 20:30:07,745.745 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260619202852036', 'server_response': {'rstatus': False, 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': []}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'Paper Boat Chilli Guava 150ml'}], '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', 'SubHeader': 'Please Pick the Products and close the door', 'Header': 'Please Close Door 2'}, 'voiceNote': 'Please close door 2', 'SectionMain': {'Header': 'Door Open'}, 'status': 'false'}, 'server_status': 'OrderStatus'}}
[2026-06-19 20:30:07,749.749 INFO    ] {'rstatus': False, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'Paper Boat Chilli Guava 150ml'}], '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'}, 'voiceNote': 'Please close door 2', 'error': {'umessage': 'In Progress', 'tmessage': 'In Progress', 'code': 20001, 'data': {}}, 'status': 'False'}
[2026-06-19 20:30:10,896.896 INFO    ] 200
[2026-06-19 20:30:10,899.899 INFO    ] {"rstatus": true, "voiceNote": "Transaction Completed", "delay": 100, "SectionMain": {"Header": "Door Closed"}, "status": "True", "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"}}
[2026-06-19 20:30:10,902.902 INFO    ] {'rstatus': 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 '}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-19 20:30:10,906.906 INFO    ] 2026-06-19 20:30:10
[2026-06-19 20:30:10,908.908 INFO    ] Order Completed 
[2026-06-19 20:30:10,911.911 INFO    ] Order Completed 
[2026-06-19 20:30:10,914.914 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-19 20:30:10,917.917 INFO    ] 2026-06-19 20:30:10
[2026-06-19 20:30:10,919.919 INFO    ] playing audio file
[2026-06-19 20:30:10,945.945 INFO    ] 2026-06-19 20:30:10
[2026-06-19 20:30:10,949.949 INFO    ] {'rstatus': 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 '}, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'status': 'True'}
[2026-06-19 20:30:10,952.952 INFO    ] 2026-06-19 20:30:10
[2026-06-19 20:30:11,369.369 INFO    ] 200
[2026-06-19 20:30:11,372.372 INFO    ] {"rstatus": true, "anomaly": 0, "orderId": "TM07202501260619202852036", "total_amount": 50, "order_status": "", "bill_amount": 50, "userId": "7286009178", "res": true, "skus": [{"sku_total": 50, "image_url": "https://images.tinymart.in/product/4500412-3733.jpg", "door_id": "", "qty": 2, "tray_id": "37", "skuid": "4500412", "name": "Paper Boat Chilli Guava 150ml per peice", "mrp": "25", "unit_price": "25", "offer_id": ""}], "imei": "TM07202501", "cart_offer_desc": ""}
[2026-06-19 20:30:11,376.376 INFO    ] {'rstatus': True, 'total_amount': 50, 'anomaly': 0, 'res': True, 'skus': [{'qty': 2, 'tray_id': '37', 'skuid': '4500412', 'door_id': '', 'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500412-3733.jpg', 'name': 'Paper Boat Chilli Guava 150ml per peice', 'sku_total': 50, 'offer_id': '', 'unit_price': '25'}], 'orderId': 'TM07202501260619202852036', 'userId': '7286009178', 'imei': 'TM07202501', 'order_status': '', 'cart_offer_desc': '', 'bill_amount': 50}
[2026-06-19 20:30:11,378.378 INFO    ] {'rstatus': True, 'total_amount': 50, 'anomaly': 0, 'res': True, 'skus': [{'qty': 2, 'tray_id': '37', 'skuid': '4500412', 'door_id': '', 'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500412-3733.jpg', 'name': 'Paper Boat Chilli Guava 150ml per peice', 'sku_total': 50, 'offer_id': '', 'unit_price': '25'}], 'orderId': 'TM07202501260619202852036', 'userId': '7286009178', 'imei': 'TM07202501', 'order_status': '', 'cart_offer_desc': '', 'bill_amount': 50}
[2026-06-19 20:30:11,381.381 INFO    ] 2026-06-19 20:30:11
[2026-06-19 20:30:11,384.384 INFO    ] 2026-06-19 20:30:11
[2026-06-19 20:30:11,386.386 INFO    ] 50
[2026-06-19 20:30:11,389.389 INFO    ] 2026-06-19 20:30:11
[2026-06-19 20:30:11,391.391 INFO    ] 2026-06-19 20:30:11
[2026-06-19 20:30:11,394.394 INFO    ]  Your Bill Amount is 50
[2026-06-19 20:30:11,396.396 INFO    ]  Your Bill Amount is 50
[2026-06-19 20:30:11,399.399 INFO    ] acaba83684019477cc6824f67d759a10
[2026-06-19 20:30:11,401.401 INFO    ] 2026-06-19 20:30:11
[2026-06-19 20:30:11,404.404 INFO    ] playing audio file
[2026-06-19 20:30:11,421.421 INFO    ] 2026-06-19 20:30:11
[2026-06-19 20:30:11,424.424 INFO    ] 2026-06-19 20:30:11
[2026-06-19 20:30:11,428.428 INFO    ] publish_status: order_id=TM07202501260619202852036
[2026-06-19 20:30:11,431.431 INFO    ] [publish_status] Adding message to stream: order:TM07202501260619202852036
[2026-06-19 20:30:11,494.494 INFO    ] [publish_status] Message added to stream with ID: 1781881211459-0
[2026-06-19 20:30:11,497.497 INFO    ] Published to order:TM07202501260619202852036: {'order_id': 'TM07202501260619202852036', 'timestamp': '2026-06-19T15:00:11.426310Z', 'server_response': '{"rstatus": true, "total_amount": 50, "anomaly": 0, "res": true, "skus": [{"qty": 2, "tray_id": "37", "skuid": "4500412", "door_id": "", "mrp": "25", "image_url": "https://images.tinymart.in/product/4500412-3733.jpg", "name": "Paper Boat Chilli Guava 150ml per peice", "sku_total": 50, "offer_id": "", "unit_price": "25"}], "orderId": "TM07202501260619202852036", "userId": "7286009178", "imei": "TM07202501", "order_status": "", "cart_offer_desc": "", "bill_amount": 50}', 'server_status': 'invoiceOrder'} (ID: 1781881211459-0)
[2026-06-19 20:30:11,648.648 INFO    ] {'order_id': 'TM07202501260619202852036', 'server_response': {'rstatus': True, 'total_amount': 50, 'anomaly': 0, 'res': True, 'skus': [{'qty': 2, 'tray_id': '37', 'skuid': '4500412', 'door_id': '', 'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500412-3733.jpg', 'name': 'Paper Boat Chilli Guava 150ml per peice', 'sku_total': 50, 'offer_id': '', 'unit_price': '25'}], 'orderId': 'TM07202501260619202852036', 'userId': '7286009178', 'imei': 'TM07202501', 'order_status': '', 'cart_offer_desc': '', 'bill_amount': 50}, 'server_status': 'invoiceOrder'}
[2026-06-19 20:30:11,652.652 INFO    ] 200
[2026-06-19 20:30:11,655.655 INFO    ] {"data":{"order_id":"TM07202501260619202852036","server_response":{"rstatus":true,"total_amount":50,"anomaly":0,"res":true,"skus":[{"qty":2,"tray_id":"37","skuid":"4500412","door_id":"","mrp":"25","image_url":"https:\/\/images.tinymart.in\/product\/4500412-3733.jpg","name":"Paper Boat Chilli Guava 150ml per peice","sku_total":50,"offer_id":"","unit_price":"25"}],"orderId":"TM07202501260619202852036","userId":"7286009178","imei":"TM07202501","order_status":"","cart_offer_desc":"","bill_amount":50},"server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-19 20:30:11,659.659 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260619202852036', 'server_response': {'rstatus': True, 'total_amount': 50, 'anomaly': 0, 'cart_offer_desc': '', 'orderId': 'TM07202501260619202852036', 'userId': '7286009178', 'res': True, 'skus': [{'qty': 2, 'tray_id': '37', 'skuid': '4500412', 'door_id': '', 'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500412-3733.jpg', 'name': 'Paper Boat Chilli Guava 150ml per peice', 'sku_total': 50, 'offer_id': '', 'unit_price': '25'}], 'imei': 'TM07202501', 'order_status': '', 'bill_amount': 50}, 'server_status': 'invoiceOrder'}}
[2026-06-19 20:30:11,663.663 INFO    ] {'response': {'msg': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'data': 'order updated successfully'}, 'data': {'order_id': 'TM07202501260619202852036', 'server_response': {'rstatus': True, 'total_amount': 50, 'anomaly': 0, 'cart_offer_desc': '', 'orderId': 'TM07202501260619202852036', 'userId': '7286009178', 'res': True, 'skus': [{'qty': 2, 'tray_id': '37', 'skuid': '4500412', 'door_id': '', 'mrp': '25', 'image_url': 'https://images.tinymart.in/product/4500412-3733.jpg', 'name': 'Paper Boat Chilli Guava 150ml per peice', 'sku_total': 50, 'offer_id': '', 'unit_price': '25'}], 'imei': 'TM07202501', 'order_status': '', 'bill_amount': 50}, 'server_status': 'invoiceOrder'}}
[2026-06-19 20:30:11,666.666 INFO    ] 2026-06-19 20:30:11
[2026-06-19 20:30:13,345.345 INFO    ] 200
[2026-06-19 20:30:13,348.348 INFO    ] {"tray_sync": [], "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"], "orders_data": [], "orders_synced": [], "order_items_synced": [], "orders": [], "status": true, "orders_data_synced": [], "order_items": []}
[2026-06-19 20:30:13,351.351 INFO    ] 2026-06-19 20:30:13
[2026-06-19 20:30:13,457.457 INFO    ] 200
[2026-06-19 20:30:13,460.460 INFO    ] True
[2026-06-19 20:30:13,463.463 INFO    ] cleanup_start_order_file_after_processing: order_id=TM07202501260619202852036
[2026-06-19 20:30:13,466.466 INFO    ] start order file deleted
[2026-06-19 20:30:13,470.470 INFO    ] Checking for system updates...
[2026-06-19 20:30:13,504.504 INFO    ] 200
[2026-06-19 20:30:13,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:13,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:30:13,565.565 INFO    ] No update needed
[2026-06-19 20:30:13,567.567 INFO    ] Checking for camera pi updates...
[2026-06-19 20:30:13,602.602 INFO    ] 200
[2026-06-19 20:30:13,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:13,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:30:13,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:30:13,719.719 INFO    ] No camera update needed
[2026-06-19 20:30:13,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:30:13,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:30:13,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:30:13,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:30:15,777.777 INFO    ] ================================================
[2026-06-19 20:30:15,793.793 INFO    ] Launching Daemon at Fri Jun 19 20:30:15 IST 2026
[2026-06-19 20:30:15,804.804 INFO    ] ================================================
[2026-06-19 20:30:16,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:30:16
[2026-06-19 20:30:17,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:30:17,436.436 INFO    ] Initializing speech engine...
[2026-06-19 20:30:17,446.446 INFO    ] 2026-06-19 20:30:17
[2026-06-19 20:30:17,696.696 INFO    ] 2026-06-19 20:30:17
[2026-06-19 20:30:17,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:30:17,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:30:18,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:30:18,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:30:18,160.160 INFO    ] time= 19/06/2026 20:30:18
[2026-06-19 20:30:18,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:30:18,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:30:18,421.421 INFO    ] No existing commands found in stream
[2026-06-19 20:30:23,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:30:23,442.442 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 20:30:25,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:30:25,213.213 INFO    ] Checking for system updates...
[2026-06-19 20:30:25,253.253 INFO    ] 200
[2026-06-19 20:30:25,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:25,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:30:25,317.317 INFO    ] No update needed
[2026-06-19 20:30:25,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 20:30:25,353.353 INFO    ] 200
[2026-06-19 20:30:25,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:25,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:30:25,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:30:25,452.452 INFO    ] No camera update needed
[2026-06-19 20:30:25,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:30:25,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:30:25,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:30:25,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:30:27,508.508 INFO    ] ================================================
[2026-06-19 20:30:27,524.524 INFO    ] Launching Daemon at Fri Jun 19 20:30:27 IST 2026
[2026-06-19 20:30:27,535.535 INFO    ] ================================================
[2026-06-19 20:30:28,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:30:28
[2026-06-19 20:30:28,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:30:28,955.955 INFO    ] Initializing speech engine...
[2026-06-19 20:30:28,973.973 INFO    ] 2026-06-19 20:30:28
[2026-06-19 20:30:29,223.223 INFO    ] 2026-06-19 20:30:29
[2026-06-19 20:30:29,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:30:29,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:30:29,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:30:29,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:30:29,721.721 INFO    ] time= 19/06/2026 20:30:29
[2026-06-19 20:30:29,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:30:29,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:30:29,953.953 INFO    ] No existing commands found in stream
[2026-06-19 20:30:34,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:30:34,979.979 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 20:30:37,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:30:37,015.015 INFO    ] Checking for system updates...
[2026-06-19 20:30:37,055.055 INFO    ] 200
[2026-06-19 20:30:37,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:37,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:30:37,119.119 INFO    ] No update needed
[2026-06-19 20:30:37,122.122 INFO    ] Checking for camera pi updates...
[2026-06-19 20:30:37,156.156 INFO    ] 200
[2026-06-19 20:30:37,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:37,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:30:37,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:30:37,248.248 INFO    ] No camera update needed
[2026-06-19 20:30:37,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:30:37,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:30:37,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:30:37,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:30:39,303.303 INFO    ] ================================================
[2026-06-19 20:30:39,318.318 INFO    ] Launching Daemon at Fri Jun 19 20:30:39 IST 2026
[2026-06-19 20:30:39,329.329 INFO    ] ================================================
[2026-06-19 20:30:39,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:30:39
[2026-06-19 20:30:40,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:30:40,754.754 INFO    ] Initializing speech engine...
[2026-06-19 20:30:40,770.770 INFO    ] 2026-06-19 20:30:40
[2026-06-19 20:30:41,057.057 INFO    ] 2026-06-19 20:30:41
[2026-06-19 20:30:41,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:30:41,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:30:41,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:30:41,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:30:41,479.479 INFO    ] time= 19/06/2026 20:30:41
[2026-06-19 20:30:41,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:30:41,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:30:41,598.598 INFO    ] No existing commands found in stream
[2026-06-19 20:30:46,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:30:46,636.636 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 20:30:47,992.992 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:30:47,994.994 INFO    ] Checking for system updates...
[2026-06-19 20:30:48,036.036 INFO    ] 200
[2026-06-19 20:30:48,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:48,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:30:48,096.096 INFO    ] No update needed
[2026-06-19 20:30:48,099.099 INFO    ] Checking for camera pi updates...
[2026-06-19 20:30:48,139.139 INFO    ] 200
[2026-06-19 20:30:48,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:48,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:30:48,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:30:48,225.225 INFO    ] No camera update needed
[2026-06-19 20:30:48,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:30:48,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:30:48,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:30:48,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:30:50,286.286 INFO    ] ================================================
[2026-06-19 20:30:50,302.302 INFO    ] Launching Daemon at Fri Jun 19 20:30:50 IST 2026
[2026-06-19 20:30:50,314.314 INFO    ] ================================================
[2026-06-19 20:30:50,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:30:50
[2026-06-19 20:30:51,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:30:51,752.752 INFO    ] Initializing speech engine...
[2026-06-19 20:30:51,761.761 INFO    ] 2026-06-19 20:30:51
[2026-06-19 20:30:52,028.028 INFO    ] 2026-06-19 20:30:52
[2026-06-19 20:30:52,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:30:52,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:30:52,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:30:52,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:30:52,497.497 INFO    ] time= 19/06/2026 20:30:52
[2026-06-19 20:30:52,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:30:52,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:30:52,712.712 INFO    ] No existing commands found in stream
[2026-06-19 20:30:57,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:30:57,737.737 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 20:30:58,422.422 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:30:58,425.425 INFO    ] Checking for system updates...
[2026-06-19 20:30:58,466.466 INFO    ] 200
[2026-06-19 20:30:58,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:58,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:30:58,523.523 INFO    ] No update needed
[2026-06-19 20:30:58,526.526 INFO    ] Checking for camera pi updates...
[2026-06-19 20:30:58,564.564 INFO    ] 200
[2026-06-19 20:30:58,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:30:58,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:30:58,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:30:58,759.759 INFO    ] No camera update needed
[2026-06-19 20:30:58,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:30:58,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:30:58,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:30:58,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:31:00,817.817 INFO    ] ================================================
[2026-06-19 20:31:00,840.840 INFO    ] Launching Daemon at Fri Jun 19 20:31:00 IST 2026
[2026-06-19 20:31:00,851.851 INFO    ] ================================================
[2026-06-19 20:31:01,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:31:01
[2026-06-19 20:31:02,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:31:02,439.439 INFO    ] Initializing speech engine...
[2026-06-19 20:31:02,449.449 INFO    ] 2026-06-19 20:31:02
[2026-06-19 20:31:02,773.773 INFO    ] 2026-06-19 20:31:02
[2026-06-19 20:31:02,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:31:03,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:31:03,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:31:03,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:31:03,308.308 INFO    ] time= 19/06/2026 20:31:03
[2026-06-19 20:31:03,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:31:03,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:31:03,460.460 INFO    ] No existing commands found in stream
[2026-06-19 20:31:08,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:31:08,480.480 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 20:31:11,267.267 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:31:11,270.270 INFO    ] Checking for system updates...
[2026-06-19 20:31:11,307.307 INFO    ] 200
[2026-06-19 20:31:11,309.309 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:31:11,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:31:11,368.368 INFO    ] No update needed
[2026-06-19 20:31:11,371.371 INFO    ] Checking for camera pi updates...
[2026-06-19 20:31:11,405.405 INFO    ] 200
[2026-06-19 20:31:11,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:31:11,448.448 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:31:11,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:31:11,499.499 INFO    ] No camera update needed
[2026-06-19 20:31:11,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:31:11,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:31:11,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:31:11,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:31:13,563.563 INFO    ] ================================================
[2026-06-19 20:31:13,580.580 INFO    ] Launching Daemon at Fri Jun 19 20:31:13 IST 2026
[2026-06-19 20:31:13,590.590 INFO    ] ================================================
[2026-06-19 20:31:14,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:31:14
[2026-06-19 20:31:14,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:31:15,180.180 INFO    ] Initializing speech engine...
[2026-06-19 20:31:15,193.193 INFO    ] 2026-06-19 20:31:15
[2026-06-19 20:31:15,481.481 INFO    ] 2026-06-19 20:31:15
[2026-06-19 20:31:15,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:31:15,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:31:15,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:31:16,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:31:16,019.019 INFO    ] time= 19/06/2026 20:31:16
[2026-06-19 20:31:16,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:31:16,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:31:16,220.220 INFO    ] No existing commands found in stream
[2026-06-19 20:31:21,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:31:21,254.254 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 20:31:22,023.023 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:31:22,026.026 INFO    ] Checking for system updates...
[2026-06-19 20:31:22,067.067 INFO    ] 200
[2026-06-19 20:31:22,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:31:22,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:31:22,132.132 INFO    ] No update needed
[2026-06-19 20:31:22,134.134 INFO    ] Checking for camera pi updates...
[2026-06-19 20:31:22,172.172 INFO    ] 200
[2026-06-19 20:31:22,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:31:22,215.215 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:31:22,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:31:22,266.266 INFO    ] No camera update needed
[2026-06-19 20:31:22,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:31:22,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:31:22,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:31:22,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:31:24,321.321 INFO    ] ================================================
[2026-06-19 20:31:24,337.337 INFO    ] Launching Daemon at Fri Jun 19 20:31:24 IST 2026
[2026-06-19 20:31:24,348.348 INFO    ] ================================================
[2026-06-19 20:31:24,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:31:24
[2026-06-19 20:31:25,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:31:25,808.808 INFO    ] Initializing speech engine...
[2026-06-19 20:31:25,816.816 INFO    ] 2026-06-19 20:31:25
[2026-06-19 20:31:26,087.087 INFO    ] 2026-06-19 20:31:26
[2026-06-19 20:31:26,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:31:26,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:31:26,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:31:26,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:31:26,619.619 INFO    ] time= 19/06/2026 20:31:26
[2026-06-19 20:31:26,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:31:26,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:31:26,776.776 INFO    ] No existing commands found in stream
[2026-06-19 20:31:31,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:31:31,797.797 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 20:31:34,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:31:34,808.808 INFO    ] Checking for system updates...
[2026-06-19 20:31:34,845.845 INFO    ] 200
[2026-06-19 20:31:34,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:31:34,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:31:34,910.910 INFO    ] No update needed
[2026-06-19 20:31:34,913.913 INFO    ] Checking for camera pi updates...
[2026-06-19 20:31:34,950.950 INFO    ] 200
[2026-06-19 20:31:34,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:31:34,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:31:35,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:31:35,040.040 INFO    ] No camera update needed
[2026-06-19 20:31:35,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:31:35,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:31:35,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:31:35,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:31:37,098.098 INFO    ] ================================================
[2026-06-19 20:31:37,113.113 INFO    ] Launching Daemon at Fri Jun 19 20:31:37 IST 2026
[2026-06-19 20:31:37,125.125 INFO    ] ================================================
[2026-06-19 20:31:37,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:31:37
[2026-06-19 20:31:38,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:31:38,762.762 INFO    ] Initializing speech engine...
[2026-06-19 20:31:38,769.769 INFO    ] 2026-06-19 20:31:38
[2026-06-19 20:31:39,045.045 INFO    ] 2026-06-19 20:31:39
[2026-06-19 20:31:39,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:31:39,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:31:39,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:31:39,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:31:39,552.552 INFO    ] time= 19/06/2026 20:31:39
[2026-06-19 20:31:39,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:31:39,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:31:39,755.755 INFO    ] No existing commands found in stream
[2026-06-19 20:31:44,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:31:44,788.788 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 20:31:47,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:31:47,239.239 INFO    ] Checking for system updates...
[2026-06-19 20:31:47,275.275 INFO    ] 200
[2026-06-19 20:31:47,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:31:47,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:31:47,333.333 INFO    ] No update needed
[2026-06-19 20:31:47,336.336 INFO    ] Checking for camera pi updates...
[2026-06-19 20:31:47,370.370 INFO    ] 200
[2026-06-19 20:31:47,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:31:47,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:31:47,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:31:47,471.471 INFO    ] No camera update needed
[2026-06-19 20:31:47,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:31:47,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:31:47,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:31:47,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:31:49,527.527 INFO    ] ================================================
[2026-06-19 20:31:49,544.544 INFO    ] Launching Daemon at Fri Jun 19 20:31:49 IST 2026
[2026-06-19 20:31:49,555.555 INFO    ] ================================================
[2026-06-19 20:31:50,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:31:50
[2026-06-19 20:31:50,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:31:51,221.221 INFO    ] Initializing speech engine...
[2026-06-19 20:31:51,232.232 INFO    ] 2026-06-19 20:31:51
[2026-06-19 20:31:51,516.516 INFO    ] 2026-06-19 20:31:51
[2026-06-19 20:31:51,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:31:51,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:31:51,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:31:52,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:31:52,071.071 INFO    ] time= 19/06/2026 20:31:52
[2026-06-19 20:31:52,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:31:52,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:31:52,231.231 INFO    ] No existing commands found in stream
[2026-06-19 20:31:57,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:31:57,260.260 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 20:32:01,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:32:01,494.494 INFO    ] Checking for system updates...
[2026-06-19 20:32:01,531.531 INFO    ] 200
[2026-06-19 20:32:01,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:01,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:32:01,598.598 INFO    ] No update needed
[2026-06-19 20:32:01,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 20:32:01,639.639 INFO    ] 200
[2026-06-19 20:32:01,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:01,689.689 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:32:01,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:32:01,752.752 INFO    ] No camera update needed
[2026-06-19 20:32:01,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:32:01,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:32:01,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:32:01,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:32:03,825.825 INFO    ] ================================================
[2026-06-19 20:32:03,842.842 INFO    ] Launching Daemon at Fri Jun 19 20:32:03 IST 2026
[2026-06-19 20:32:03,853.853 INFO    ] ================================================
[2026-06-19 20:32:04,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:32:04
[2026-06-19 20:32:05,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:32:05,297.297 INFO    ] Initializing speech engine...
[2026-06-19 20:32:05,303.303 INFO    ] 2026-06-19 20:32:05
[2026-06-19 20:32:05,605.605 INFO    ] 2026-06-19 20:32:05
[2026-06-19 20:32:05,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:32:05,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:32:05,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:32:06,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:32:06,029.029 INFO    ] time= 19/06/2026 20:32:06
[2026-06-19 20:32:06,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:32:06,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:32:06,208.208 INFO    ] No existing commands found in stream
[2026-06-19 20:32:11,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:32:11,236.236 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 20:32:12,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:32:12,606.606 INFO    ] Checking for system updates...
[2026-06-19 20:32:12,645.645 INFO    ] 200
[2026-06-19 20:32:12,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:12,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:32:12,709.709 INFO    ] No update needed
[2026-06-19 20:32:12,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 20:32:12,748.748 INFO    ] 200
[2026-06-19 20:32:12,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:12,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:32:12,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:32:12,849.849 INFO    ] No camera update needed
[2026-06-19 20:32:12,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:32:12,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:32:12,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:32:12,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:32:14,906.906 INFO    ] ================================================
[2026-06-19 20:32:14,922.922 INFO    ] Launching Daemon at Fri Jun 19 20:32:14 IST 2026
[2026-06-19 20:32:14,933.933 INFO    ] ================================================
[2026-06-19 20:32:15,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:32:15
[2026-06-19 20:32:16,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:32:16,386.386 INFO    ] Initializing speech engine...
[2026-06-19 20:32:16,394.394 INFO    ] 2026-06-19 20:32:16
[2026-06-19 20:32:16,690.690 INFO    ] 2026-06-19 20:32:16
[2026-06-19 20:32:16,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:32:16,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:32:16,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:32:17,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:32:17,112.112 INFO    ] time= 19/06/2026 20:32:17
[2026-06-19 20:32:17,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:32:17,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:32:17,250.250 INFO    ] No existing commands found in stream
[2026-06-19 20:32:22,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:32:22,356.356 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 20:32:24,222.222 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:32:24,225.225 INFO    ] Checking for system updates...
[2026-06-19 20:32:24,261.261 INFO    ] 200
[2026-06-19 20:32:24,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:24,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:32:24,319.319 INFO    ] No update needed
[2026-06-19 20:32:24,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 20:32:24,359.359 INFO    ] 200
[2026-06-19 20:32:24,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:24,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:32:24,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:32:24,449.449 INFO    ] No camera update needed
[2026-06-19 20:32:24,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:32:24,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:32:24,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:32:24,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:32:26,508.508 INFO    ] ================================================
[2026-06-19 20:32:26,523.523 INFO    ] Launching Daemon at Fri Jun 19 20:32:26 IST 2026
[2026-06-19 20:32:26,534.534 INFO    ] ================================================
[2026-06-19 20:32:27,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:32:27
[2026-06-19 20:32:27,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:32:27,988.988 INFO    ] Initializing speech engine...
[2026-06-19 20:32:28,001.001 INFO    ] 2026-06-19 20:32:27
[2026-06-19 20:32:28,286.286 INFO    ] 2026-06-19 20:32:28
[2026-06-19 20:32:28,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:32:28,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:32:28,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:32:28,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:32:28,778.778 INFO    ] time= 19/06/2026 20:32:28
[2026-06-19 20:32:28,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:32:28,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:32:28,993.993 INFO    ] No existing commands found in stream
[2026-06-19 20:32:34,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:32:34,016.016 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 20:32:38,323.323 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:32:38,326.326 INFO    ] Checking for system updates...
[2026-06-19 20:32:38,362.362 INFO    ] 200
[2026-06-19 20:32:38,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:38,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:32:38,419.419 INFO    ] No update needed
[2026-06-19 20:32:38,421.421 INFO    ] Checking for camera pi updates...
[2026-06-19 20:32:38,455.455 INFO    ] 200
[2026-06-19 20:32:38,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:38,503.503 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:32:38,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:32:38,550.550 INFO    ] No camera update needed
[2026-06-19 20:32:38,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:32:38,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:32:38,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:32:38,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:32:40,606.606 INFO    ] ================================================
[2026-06-19 20:32:40,621.621 INFO    ] Launching Daemon at Fri Jun 19 20:32:40 IST 2026
[2026-06-19 20:32:40,632.632 INFO    ] ================================================
[2026-06-19 20:32:41,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:32:41
[2026-06-19 20:32:41,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:32:42,056.056 INFO    ] Initializing speech engine...
[2026-06-19 20:32:42,065.065 INFO    ] 2026-06-19 20:32:42
[2026-06-19 20:32:42,318.318 INFO    ] 2026-06-19 20:32:42
[2026-06-19 20:32:42,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:32:42,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:32:42,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:32:42,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:32:42,763.763 INFO    ] time= 19/06/2026 20:32:42
[2026-06-19 20:32:42,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:32:42,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:32:43,031.031 INFO    ] No existing commands found in stream
[2026-06-19 20:32:48,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:32:48,059.059 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 20:32:51,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:32:51,702.702 INFO    ] Checking for system updates...
[2026-06-19 20:32:51,743.743 INFO    ] 200
[2026-06-19 20:32:51,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:51,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:32:51,809.809 INFO    ] No update needed
[2026-06-19 20:32:51,811.811 INFO    ] Checking for camera pi updates...
[2026-06-19 20:32:51,845.845 INFO    ] 200
[2026-06-19 20:32:51,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:32:51,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:32:51,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:32:51,934.934 INFO    ] No camera update needed
[2026-06-19 20:32:51,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:32:51,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:32:51,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:32:51,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:32:53,992.992 INFO    ] ================================================
[2026-06-19 20:32:54,009.009 INFO    ] Launching Daemon at Fri Jun 19 20:32:54 IST 2026
[2026-06-19 20:32:54,020.020 INFO    ] ================================================
[2026-06-19 20:32:54,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:32:54
[2026-06-19 20:32:55,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:32:55,434.434 INFO    ] Initializing speech engine...
[2026-06-19 20:32:55,443.443 INFO    ] 2026-06-19 20:32:55
[2026-06-19 20:32:55,739.739 INFO    ] 2026-06-19 20:32:55
[2026-06-19 20:32:55,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:32:55,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:32:55,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:32:56,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:32:56,121.121 INFO    ] time= 19/06/2026 20:32:56
[2026-06-19 20:32:56,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:32:56,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:32:56,247.247 INFO    ] No existing commands found in stream
[2026-06-19 20:33:01,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:33:01,263.263 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 20:33:02,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:33:02,972.972 INFO    ] Checking for system updates...
[2026-06-19 20:33:03,016.016 INFO    ] 200
[2026-06-19 20:33:03,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:03,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:33:03,090.090 INFO    ] No update needed
[2026-06-19 20:33:03,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 20:33:03,129.129 INFO    ] 200
[2026-06-19 20:33:03,132.132 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:03,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:33:03,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:33:03,217.217 INFO    ] No camera update needed
[2026-06-19 20:33:03,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:33:03,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:33:03,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:33:03,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:33:05,279.279 INFO    ] ================================================
[2026-06-19 20:33:05,296.296 INFO    ] Launching Daemon at Fri Jun 19 20:33:05 IST 2026
[2026-06-19 20:33:05,307.307 INFO    ] ================================================
[2026-06-19 20:33:05,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:33:05
[2026-06-19 20:33:06,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:33:06,764.764 INFO    ] Initializing speech engine...
[2026-06-19 20:33:06,773.773 INFO    ] 2026-06-19 20:33:06
[2026-06-19 20:33:07,027.027 INFO    ] 2026-06-19 20:33:07
[2026-06-19 20:33:07,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:33:07,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:33:07,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:33:07,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:33:07,530.530 INFO    ] time= 19/06/2026 20:33:07
[2026-06-19 20:33:07,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:33:07,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:33:07,746.746 INFO    ] No existing commands found in stream
[2026-06-19 20:33:12,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:33:12,764.764 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 20:33:13,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:33:13,745.745 INFO    ] Checking for system updates...
[2026-06-19 20:33:13,784.784 INFO    ] 200
[2026-06-19 20:33:13,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:13,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:33:13,841.841 INFO    ] No update needed
[2026-06-19 20:33:13,843.843 INFO    ] Checking for camera pi updates...
[2026-06-19 20:33:13,877.877 INFO    ] 200
[2026-06-19 20:33:13,879.879 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:13,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:33:13,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:33:13,984.984 INFO    ] No camera update needed
[2026-06-19 20:33:13,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:33:13,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:33:13,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:33:14,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:33:16,040.040 INFO    ] ================================================
[2026-06-19 20:33:16,057.057 INFO    ] Launching Daemon at Fri Jun 19 20:33:16 IST 2026
[2026-06-19 20:33:16,068.068 INFO    ] ================================================
[2026-06-19 20:33:16,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:33:16
[2026-06-19 20:33:17,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:33:17,526.526 INFO    ] Initializing speech engine...
[2026-06-19 20:33:17,542.542 INFO    ] 2026-06-19 20:33:17
[2026-06-19 20:33:17,800.800 INFO    ] 2026-06-19 20:33:17
[2026-06-19 20:33:17,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:33:18,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:33:18,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:33:18,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:33:18,227.227 INFO    ] time= 19/06/2026 20:33:18
[2026-06-19 20:33:18,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:33:18,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:33:18,338.338 INFO    ] No existing commands found in stream
[2026-06-19 20:33:23,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:33:23,371.371 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 20:33:24,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:33:24,923.923 INFO    ] Checking for system updates...
[2026-06-19 20:33:24,960.960 INFO    ] 200
[2026-06-19 20:33:24,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:25,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:33:25,018.018 INFO    ] No update needed
[2026-06-19 20:33:25,020.020 INFO    ] Checking for camera pi updates...
[2026-06-19 20:33:25,055.055 INFO    ] 200
[2026-06-19 20:33:25,057.057 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:25,098.098 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:33:25,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:33:25,146.146 INFO    ] No camera update needed
[2026-06-19 20:33:25,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:33:25,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:33:25,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:33:25,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:33:27,200.200 INFO    ] ================================================
[2026-06-19 20:33:27,216.216 INFO    ] Launching Daemon at Fri Jun 19 20:33:27 IST 2026
[2026-06-19 20:33:27,226.226 INFO    ] ================================================
[2026-06-19 20:33:27,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:33:27
[2026-06-19 20:33:28,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:33:28,678.678 INFO    ] Initializing speech engine...
[2026-06-19 20:33:28,687.687 INFO    ] 2026-06-19 20:33:28
[2026-06-19 20:33:28,941.941 INFO    ] 2026-06-19 20:33:28
[2026-06-19 20:33:28,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:33:29,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:33:29,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:33:29,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:33:29,484.484 INFO    ] time= 19/06/2026 20:33:29
[2026-06-19 20:33:29,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:33:29,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:33:29,640.640 INFO    ] No existing commands found in stream
[2026-06-19 20:33:34,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:33:34,670.670 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 20:33:37,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:33:37,338.338 INFO    ] Checking for system updates...
[2026-06-19 20:33:37,374.374 INFO    ] 200
[2026-06-19 20:33:37,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:37,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:33:37,432.432 INFO    ] No update needed
[2026-06-19 20:33:37,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 20:33:37,468.468 INFO    ] 200
[2026-06-19 20:33:37,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:37,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:33:37,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:33:37,562.562 INFO    ] No camera update needed
[2026-06-19 20:33:37,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:33:37,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:33:37,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:33:37,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:33:39,618.618 INFO    ] ================================================
[2026-06-19 20:33:39,634.634 INFO    ] Launching Daemon at Fri Jun 19 20:33:39 IST 2026
[2026-06-19 20:33:39,644.644 INFO    ] ================================================
[2026-06-19 20:33:40,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:33:40
[2026-06-19 20:33:40,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:33:41,094.094 INFO    ] Initializing speech engine...
[2026-06-19 20:33:41,100.100 INFO    ] 2026-06-19 20:33:41
[2026-06-19 20:33:41,393.393 INFO    ] 2026-06-19 20:33:41
[2026-06-19 20:33:41,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:33:41,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:33:41,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:33:41,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:33:41,883.883 INFO    ] time= 19/06/2026 20:33:41
[2026-06-19 20:33:41,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:33:42,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:33:42,163.163 INFO    ] No existing commands found in stream
[2026-06-19 20:33:47,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:33:47,180.180 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 20:33:49,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:33:49,129.129 INFO    ] Checking for system updates...
[2026-06-19 20:33:49,167.167 INFO    ] 200
[2026-06-19 20:33:49,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:49,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:33:49,229.229 INFO    ] No update needed
[2026-06-19 20:33:49,232.232 INFO    ] Checking for camera pi updates...
[2026-06-19 20:33:49,269.269 INFO    ] 200
[2026-06-19 20:33:49,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:33:49,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:33:49,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:33:49,349.349 INFO    ] No camera update needed
[2026-06-19 20:33:49,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:33:49,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:33:49,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:33:49,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:33:51,405.405 INFO    ] ================================================
[2026-06-19 20:33:51,421.421 INFO    ] Launching Daemon at Fri Jun 19 20:33:51 IST 2026
[2026-06-19 20:33:51,431.431 INFO    ] ================================================
[2026-06-19 20:33:52,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:33:52
[2026-06-19 20:33:52,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:33:53,038.038 INFO    ] Initializing speech engine...
[2026-06-19 20:33:53,049.049 INFO    ] 2026-06-19 20:33:53
[2026-06-19 20:33:53,319.319 INFO    ] 2026-06-19 20:33:53
[2026-06-19 20:33:53,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:33:53,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:33:53,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:33:53,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:33:53,865.865 INFO    ] time= 19/06/2026 20:33:53
[2026-06-19 20:33:53,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:33:53,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:33:54,022.022 INFO    ] No existing commands found in stream
[2026-06-19 20:33:59,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:33:59,041.041 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 20:34:02,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:34:02,294.294 INFO    ] Checking for system updates...
[2026-06-19 20:34:02,341.341 INFO    ] 200
[2026-06-19 20:34:02,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:02,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:34:02,422.422 INFO    ] No update needed
[2026-06-19 20:34:02,425.425 INFO    ] Checking for camera pi updates...
[2026-06-19 20:34:02,469.469 INFO    ] 200
[2026-06-19 20:34:02,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:02,525.525 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:34:02,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:34:02,559.559 INFO    ] No camera update needed
[2026-06-19 20:34:02,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:34:02,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:34:02,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:34:02,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:34:04,619.619 INFO    ] ================================================
[2026-06-19 20:34:04,635.635 INFO    ] Launching Daemon at Fri Jun 19 20:34:04 IST 2026
[2026-06-19 20:34:04,646.646 INFO    ] ================================================
[2026-06-19 20:34:05,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:34:05
[2026-06-19 20:34:05,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:34:06,104.104 INFO    ] Initializing speech engine...
[2026-06-19 20:34:06,119.119 INFO    ] 2026-06-19 20:34:06
[2026-06-19 20:34:06,412.412 INFO    ] 2026-06-19 20:34:06
[2026-06-19 20:34:06,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:34:06,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:34:06,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:34:06,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:34:06,920.920 INFO    ] time= 19/06/2026 20:34:06
[2026-06-19 20:34:06,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:34:06,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:34:07,144.144 INFO    ] No existing commands found in stream
[2026-06-19 20:34:12,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:34:12,164.164 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 20:34:16,298.298 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:34:16,301.301 INFO    ] Checking for system updates...
[2026-06-19 20:34:16,338.338 INFO    ] 200
[2026-06-19 20:34:16,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:16,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:34:16,396.396 INFO    ] No update needed
[2026-06-19 20:34:16,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 20:34:16,432.432 INFO    ] 200
[2026-06-19 20:34:16,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:16,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:34:16,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:34:16,525.525 INFO    ] No camera update needed
[2026-06-19 20:34:16,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:34:16,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:34:16,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:34:16,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:34:18,580.580 INFO    ] ================================================
[2026-06-19 20:34:18,595.595 INFO    ] Launching Daemon at Fri Jun 19 20:34:18 IST 2026
[2026-06-19 20:34:18,606.606 INFO    ] ================================================
[2026-06-19 20:34:19,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:34:19
[2026-06-19 20:34:19,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:34:20,015.015 INFO    ] Initializing speech engine...
[2026-06-19 20:34:20,028.028 INFO    ] 2026-06-19 20:34:20
[2026-06-19 20:34:20,290.290 INFO    ] 2026-06-19 20:34:20
[2026-06-19 20:34:20,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:34:20,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:34:20,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:34:20,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:34:20,792.792 INFO    ] time= 19/06/2026 20:34:20
[2026-06-19 20:34:20,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:34:20,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:34:20,981.981 INFO    ] No existing commands found in stream
[2026-06-19 20:34:26,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:34:26,011.011 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 20:34:28,537.537 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:34:28,539.539 INFO    ] Checking for system updates...
[2026-06-19 20:34:28,575.575 INFO    ] 200
[2026-06-19 20:34:28,578.578 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:28,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:34:28,639.639 INFO    ] No update needed
[2026-06-19 20:34:28,642.642 INFO    ] Checking for camera pi updates...
[2026-06-19 20:34:28,679.679 INFO    ] 200
[2026-06-19 20:34:28,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:28,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:34:28,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:34:28,778.778 INFO    ] No camera update needed
[2026-06-19 20:34:28,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:34:28,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:34:28,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:34:28,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:34:30,835.835 INFO    ] ================================================
[2026-06-19 20:34:30,850.850 INFO    ] Launching Daemon at Fri Jun 19 20:34:30 IST 2026
[2026-06-19 20:34:30,861.861 INFO    ] ================================================
[2026-06-19 20:34:31,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:34:31
[2026-06-19 20:34:32,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:34:32,463.463 INFO    ] Initializing speech engine...
[2026-06-19 20:34:32,474.474 INFO    ] 2026-06-19 20:34:32
[2026-06-19 20:34:32,825.825 INFO    ] 2026-06-19 20:34:32
[2026-06-19 20:34:32,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:34:33,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:34:33,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:34:33,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:34:33,350.350 INFO    ] time= 19/06/2026 20:34:33
[2026-06-19 20:34:33,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:34:33,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:34:33,543.543 INFO    ] No existing commands found in stream
[2026-06-19 20:34:38,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:34:38,576.576 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 20:34:40,997.997 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:34:41,000.000 INFO    ] Checking for system updates...
[2026-06-19 20:34:41,035.035 INFO    ] 200
[2026-06-19 20:34:41,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:41,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:34:41,093.093 INFO    ] No update needed
[2026-06-19 20:34:41,095.095 INFO    ] Checking for camera pi updates...
[2026-06-19 20:34:41,132.132 INFO    ] 200
[2026-06-19 20:34:41,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:41,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:34:41,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:34:41,223.223 INFO    ] No camera update needed
[2026-06-19 20:34:41,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:34:41,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:34:41,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:34:41,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:34:43,278.278 INFO    ] ================================================
[2026-06-19 20:34:43,294.294 INFO    ] Launching Daemon at Fri Jun 19 20:34:43 IST 2026
[2026-06-19 20:34:43,305.305 INFO    ] ================================================
[2026-06-19 20:34:43,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:34:43
[2026-06-19 20:34:44,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:34:44,904.904 INFO    ] Initializing speech engine...
[2026-06-19 20:34:44,912.912 INFO    ] 2026-06-19 20:34:44
[2026-06-19 20:34:45,183.183 INFO    ] 2026-06-19 20:34:45
[2026-06-19 20:34:45,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:34:45,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:34:45,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:34:45,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:34:45,751.751 INFO    ] time= 19/06/2026 20:34:45
[2026-06-19 20:34:45,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:34:45,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:34:45,914.914 INFO    ] No existing commands found in stream
[2026-06-19 20:34:50,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:34:50,938.938 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 20:34:54,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:34:54,029.029 INFO    ] Checking for system updates...
[2026-06-19 20:34:54,070.070 INFO    ] 200
[2026-06-19 20:34:54,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:54,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:34:54,129.129 INFO    ] No update needed
[2026-06-19 20:34:54,131.131 INFO    ] Checking for camera pi updates...
[2026-06-19 20:34:54,168.168 INFO    ] 200
[2026-06-19 20:34:54,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:34:54,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:34:54,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:34:54,262.262 INFO    ] No camera update needed
[2026-06-19 20:34:54,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:34:54,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:34:54,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:34:54,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:34:56,317.317 INFO    ] ================================================
[2026-06-19 20:34:56,333.333 INFO    ] Launching Daemon at Fri Jun 19 20:34:56 IST 2026
[2026-06-19 20:34:56,344.344 INFO    ] ================================================
[2026-06-19 20:34:56,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:34:56
[2026-06-19 20:34:57,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:34:57,790.790 INFO    ] Initializing speech engine...
[2026-06-19 20:34:57,799.799 INFO    ] 2026-06-19 20:34:57
[2026-06-19 20:34:58,049.049 INFO    ] 2026-06-19 20:34:58
[2026-06-19 20:34:58,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:34:58,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:34:58,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:34:58,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:34:58,525.525 INFO    ] time= 19/06/2026 20:34:58
[2026-06-19 20:34:58,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:34:58,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:34:58,756.756 INFO    ] No existing commands found in stream
[2026-06-19 20:35:03,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:35:03,788.788 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 20:35:07,451.451 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:35:07,453.453 INFO    ] Checking for system updates...
[2026-06-19 20:35:07,492.492 INFO    ] 200
[2026-06-19 20:35:07,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:07,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:35:07,550.550 INFO    ] No update needed
[2026-06-19 20:35:07,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 20:35:07,586.586 INFO    ] 200
[2026-06-19 20:35:07,589.589 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:07,630.630 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:35:07,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:35:07,774.774 INFO    ] No camera update needed
[2026-06-19 20:35:07,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:35:07,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:35:07,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:35:07,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:35:09,831.831 INFO    ] ================================================
[2026-06-19 20:35:09,846.846 INFO    ] Launching Daemon at Fri Jun 19 20:35:09 IST 2026
[2026-06-19 20:35:09,857.857 INFO    ] ================================================
[2026-06-19 20:35:10,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:35:10
[2026-06-19 20:35:11,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:35:11,321.321 INFO    ] Initializing speech engine...
[2026-06-19 20:35:11,330.330 INFO    ] 2026-06-19 20:35:11
[2026-06-19 20:35:11,579.579 INFO    ] 2026-06-19 20:35:11
[2026-06-19 20:35:11,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:35:11,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:35:11,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:35:12,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:35:12,133.133 INFO    ] time= 19/06/2026 20:35:12
[2026-06-19 20:35:12,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:35:12,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:35:12,289.289 INFO    ] No existing commands found in stream
[2026-06-19 20:35:17,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:35:17,311.311 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 20:35:18,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:35:18,405.405 INFO    ] Checking for system updates...
[2026-06-19 20:35:18,442.442 INFO    ] 200
[2026-06-19 20:35:18,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:18,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:35:18,512.512 INFO    ] No update needed
[2026-06-19 20:35:18,515.515 INFO    ] Checking for camera pi updates...
[2026-06-19 20:35:18,551.551 INFO    ] 200
[2026-06-19 20:35:18,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:18,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:35:18,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:35:18,655.655 INFO    ] No camera update needed
[2026-06-19 20:35:18,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:35:18,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:35:18,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:35:18,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:35:20,710.710 INFO    ] ================================================
[2026-06-19 20:35:20,727.727 INFO    ] Launching Daemon at Fri Jun 19 20:35:20 IST 2026
[2026-06-19 20:35:20,738.738 INFO    ] ================================================
[2026-06-19 20:35:21,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:35:21
[2026-06-19 20:35:21,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:35:22,198.198 INFO    ] Initializing speech engine...
[2026-06-19 20:35:22,205.205 INFO    ] 2026-06-19 20:35:22
[2026-06-19 20:35:22,458.458 INFO    ] 2026-06-19 20:35:22
[2026-06-19 20:35:22,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:35:22,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:35:22,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:35:22,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:35:22,946.946 INFO    ] time= 19/06/2026 20:35:22
[2026-06-19 20:35:23,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:35:23,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:35:23,159.159 INFO    ] No existing commands found in stream
[2026-06-19 20:35:28,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:35:28,183.183 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 20:35:30,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:35:30,942.942 INFO    ] Checking for system updates...
[2026-06-19 20:35:30,983.983 INFO    ] 200
[2026-06-19 20:35:30,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:31,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:35:31,050.050 INFO    ] No update needed
[2026-06-19 20:35:31,053.053 INFO    ] Checking for camera pi updates...
[2026-06-19 20:35:31,091.091 INFO    ] 200
[2026-06-19 20:35:31,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:31,135.135 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:35:31,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:35:31,189.189 INFO    ] No camera update needed
[2026-06-19 20:35:31,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:35:31,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:35:31,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:35:31,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:35:33,249.249 INFO    ] ================================================
[2026-06-19 20:35:33,265.265 INFO    ] Launching Daemon at Fri Jun 19 20:35:33 IST 2026
[2026-06-19 20:35:33,276.276 INFO    ] ================================================
[2026-06-19 20:35:33,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:35:33
[2026-06-19 20:35:34,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:35:34,781.781 INFO    ] Initializing speech engine...
[2026-06-19 20:35:34,790.790 INFO    ] 2026-06-19 20:35:34
[2026-06-19 20:35:35,039.039 INFO    ] 2026-06-19 20:35:35
[2026-06-19 20:35:35,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:35:35,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:35:35,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:35:35,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:35:35,546.546 INFO    ] time= 19/06/2026 20:35:35
[2026-06-19 20:35:35,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:35:35,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:35:35,738.738 INFO    ] No existing commands found in stream
[2026-06-19 20:35:40,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:35:40,767.767 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 20:35:42,633.633 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:35:42,636.636 INFO    ] Checking for system updates...
[2026-06-19 20:35:42,673.673 INFO    ] 200
[2026-06-19 20:35:42,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:42,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:35:42,736.736 INFO    ] No update needed
[2026-06-19 20:35:42,738.738 INFO    ] Checking for camera pi updates...
[2026-06-19 20:35:42,773.773 INFO    ] 200
[2026-06-19 20:35:42,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:42,816.816 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:35:42,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:35:42,862.862 INFO    ] No camera update needed
[2026-06-19 20:35:42,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:35:42,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:35:42,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:35:42,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:35:44,918.918 INFO    ] ================================================
[2026-06-19 20:35:44,933.933 INFO    ] Launching Daemon at Fri Jun 19 20:35:44 IST 2026
[2026-06-19 20:35:44,944.944 INFO    ] ================================================
[2026-06-19 20:35:45,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:35:45
[2026-06-19 20:35:46,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:35:46,504.504 INFO    ] Initializing speech engine...
[2026-06-19 20:35:46,511.511 INFO    ] 2026-06-19 20:35:46
[2026-06-19 20:35:46,774.774 INFO    ] 2026-06-19 20:35:46
[2026-06-19 20:35:46,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:35:47,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:35:47,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:35:47,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:35:47,322.322 INFO    ] time= 19/06/2026 20:35:47
[2026-06-19 20:35:47,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:35:47,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:35:47,476.476 INFO    ] No existing commands found in stream
[2026-06-19 20:35:52,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:35:52,491.491 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 20:35:53,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:35:53,485.485 INFO    ] Checking for system updates...
[2026-06-19 20:35:53,524.524 INFO    ] 200
[2026-06-19 20:35:53,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:53,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:35:53,582.582 INFO    ] No update needed
[2026-06-19 20:35:53,585.585 INFO    ] Checking for camera pi updates...
[2026-06-19 20:35:53,618.618 INFO    ] 200
[2026-06-19 20:35:53,621.621 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:35:53,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:35:53,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:35:53,721.721 INFO    ] No camera update needed
[2026-06-19 20:35:53,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:35:53,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:35:53,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:35:53,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:35:55,777.777 INFO    ] ================================================
[2026-06-19 20:35:55,792.792 INFO    ] Launching Daemon at Fri Jun 19 20:35:55 IST 2026
[2026-06-19 20:35:55,803.803 INFO    ] ================================================
[2026-06-19 20:35:56,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:35:56
[2026-06-19 20:35:56,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:35:57,248.248 INFO    ] Initializing speech engine...
[2026-06-19 20:35:57,259.259 INFO    ] 2026-06-19 20:35:57
[2026-06-19 20:35:57,519.519 INFO    ] 2026-06-19 20:35:57
[2026-06-19 20:35:57,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:35:57,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:35:57,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:35:58,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:35:58,067.067 INFO    ] time= 19/06/2026 20:35:58
[2026-06-19 20:35:58,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:35:58,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:35:58,217.217 INFO    ] No existing commands found in stream
[2026-06-19 20:36:03,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:36:03,230.230 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 20:36:05,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:36:05,683.683 INFO    ] Checking for system updates...
[2026-06-19 20:36:05,719.719 INFO    ] 200
[2026-06-19 20:36:05,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:05,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:36:05,782.782 INFO    ] No update needed
[2026-06-19 20:36:05,784.784 INFO    ] Checking for camera pi updates...
[2026-06-19 20:36:05,818.818 INFO    ] 200
[2026-06-19 20:36:05,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:05,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:36:05,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:36:05,899.899 INFO    ] No camera update needed
[2026-06-19 20:36:05,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:36:05,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:36:05,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:36:05,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:36:07,956.956 INFO    ] ================================================
[2026-06-19 20:36:07,971.971 INFO    ] Launching Daemon at Fri Jun 19 20:36:07 IST 2026
[2026-06-19 20:36:07,982.982 INFO    ] ================================================
[2026-06-19 20:36:08,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:36:08
[2026-06-19 20:36:09,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:36:09,552.552 INFO    ] Initializing speech engine...
[2026-06-19 20:36:09,568.568 INFO    ] 2026-06-19 20:36:09
[2026-06-19 20:36:09,836.836 INFO    ] 2026-06-19 20:36:09
[2026-06-19 20:36:09,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:36:10,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:36:10,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:36:10,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:36:10,349.349 INFO    ] time= 19/06/2026 20:36:10
[2026-06-19 20:36:10,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:36:10,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:36:10,544.544 INFO    ] No existing commands found in stream
[2026-06-19 20:36:15,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:36:15,578.578 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 20:36:16,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:36:16,663.663 INFO    ] Checking for system updates...
[2026-06-19 20:36:16,702.702 INFO    ] 200
[2026-06-19 20:36:16,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:16,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:36:16,762.762 INFO    ] No update needed
[2026-06-19 20:36:16,764.764 INFO    ] Checking for camera pi updates...
[2026-06-19 20:36:16,799.799 INFO    ] 200
[2026-06-19 20:36:16,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:16,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:36:16,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:36:16,888.888 INFO    ] No camera update needed
[2026-06-19 20:36:16,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:36:16,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:36:16,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:36:16,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:36:18,944.944 INFO    ] ================================================
[2026-06-19 20:36:18,959.959 INFO    ] Launching Daemon at Fri Jun 19 20:36:18 IST 2026
[2026-06-19 20:36:18,970.970 INFO    ] ================================================
[2026-06-19 20:36:19,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:36:19
[2026-06-19 20:36:20,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:36:20,430.430 INFO    ] Initializing speech engine...
[2026-06-19 20:36:20,438.438 INFO    ] 2026-06-19 20:36:20
[2026-06-19 20:36:20,697.697 INFO    ] 2026-06-19 20:36:20
[2026-06-19 20:36:20,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:36:20,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:36:21,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:36:21,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:36:21,266.266 INFO    ] time= 19/06/2026 20:36:21
[2026-06-19 20:36:21,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:36:21,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:36:21,429.429 INFO    ] No existing commands found in stream
[2026-06-19 20:36:26,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:36:26,460.460 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 20:36:27,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:36:27,759.759 INFO    ] Checking for system updates...
[2026-06-19 20:36:27,795.795 INFO    ] 200
[2026-06-19 20:36:27,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:27,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:36:27,853.853 INFO    ] No update needed
[2026-06-19 20:36:27,855.855 INFO    ] Checking for camera pi updates...
[2026-06-19 20:36:27,891.891 INFO    ] 200
[2026-06-19 20:36:27,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:27,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:36:27,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:36:27,982.982 INFO    ] No camera update needed
[2026-06-19 20:36:27,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:36:27,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:36:27,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:36:27,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:36:30,037.037 INFO    ] ================================================
[2026-06-19 20:36:30,053.053 INFO    ] Launching Daemon at Fri Jun 19 20:36:30 IST 2026
[2026-06-19 20:36:30,064.064 INFO    ] ================================================
[2026-06-19 20:36:30,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:36:30
[2026-06-19 20:36:31,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:36:31,474.474 INFO    ] Initializing speech engine...
[2026-06-19 20:36:31,489.489 INFO    ] 2026-06-19 20:36:31
[2026-06-19 20:36:31,776.776 INFO    ] 2026-06-19 20:36:31
[2026-06-19 20:36:31,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:36:32,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:36:32,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:36:32,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:36:32,208.208 INFO    ] time= 19/06/2026 20:36:32
[2026-06-19 20:36:32,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:36:32,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:36:32,301.301 INFO    ] No existing commands found in stream
[2026-06-19 20:36:37,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:36:37,319.319 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-19 20:36:39,352.352 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:36:39,355.355 INFO    ] Checking for system updates...
[2026-06-19 20:36:39,393.393 INFO    ] 200
[2026-06-19 20:36:39,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:39,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:36:39,451.451 INFO    ] No update needed
[2026-06-19 20:36:39,454.454 INFO    ] Checking for camera pi updates...
[2026-06-19 20:36:39,487.487 INFO    ] 200
[2026-06-19 20:36:39,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:39,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:36:39,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:36:39,577.577 INFO    ] No camera update needed
[2026-06-19 20:36:39,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:36:39,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:36:39,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:36:39,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:36:41,635.635 INFO    ] ================================================
[2026-06-19 20:36:41,650.650 INFO    ] Launching Daemon at Fri Jun 19 20:36:41 IST 2026
[2026-06-19 20:36:41,662.662 INFO    ] ================================================
[2026-06-19 20:36:42,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:36:42
[2026-06-19 20:36:42,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:36:43,238.238 INFO    ] Initializing speech engine...
[2026-06-19 20:36:43,247.247 INFO    ] 2026-06-19 20:36:43
[2026-06-19 20:36:43,514.514 INFO    ] 2026-06-19 20:36:43
[2026-06-19 20:36:43,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:36:43,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:36:43,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:36:43,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:36:44,011.011 INFO    ] time= 19/06/2026 20:36:43
[2026-06-19 20:36:44,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:36:44,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:36:44,236.236 INFO    ] No existing commands found in stream
[2026-06-19 20:36:49,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:36:49,254.254 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 20:36:51,010.010 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:36:51,013.013 INFO    ] Checking for system updates...
[2026-06-19 20:36:51,050.050 INFO    ] 200
[2026-06-19 20:36:51,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:51,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:36:51,108.108 INFO    ] No update needed
[2026-06-19 20:36:51,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 20:36:51,147.147 INFO    ] 200
[2026-06-19 20:36:51,150.150 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:36:51,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:36:51,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:36:51,250.250 INFO    ] No camera update needed
[2026-06-19 20:36:51,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:36:51,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:36:51,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:36:51,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:36:53,305.305 INFO    ] ================================================
[2026-06-19 20:36:53,321.321 INFO    ] Launching Daemon at Fri Jun 19 20:36:53 IST 2026
[2026-06-19 20:36:53,332.332 INFO    ] ================================================
[2026-06-19 20:36:53,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:36:53
[2026-06-19 20:36:54,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:36:54,934.934 INFO    ] Initializing speech engine...
[2026-06-19 20:36:54,940.940 INFO    ] 2026-06-19 20:36:54
[2026-06-19 20:36:55,213.213 INFO    ] 2026-06-19 20:36:55
[2026-06-19 20:36:55,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:36:55,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:36:55,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:36:55,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:36:55,723.723 INFO    ] time= 19/06/2026 20:36:55
[2026-06-19 20:36:55,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:36:55,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:36:55,935.935 INFO    ] No existing commands found in stream
[2026-06-19 20:37:00,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:37:00,960.960 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 20:37:03,145.145 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:37:03,148.148 INFO    ] Checking for system updates...
[2026-06-19 20:37:03,186.186 INFO    ] 200
[2026-06-19 20:37:03,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:03,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:03,245.245 INFO    ] No update needed
[2026-06-19 20:37:03,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 20:37:03,287.287 INFO    ] 200
[2026-06-19 20:37:03,290.290 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:03,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:37:03,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:03,383.383 INFO    ] No camera update needed
[2026-06-19 20:37:03,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:37:03,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:37:03,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:37:03,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:37:05,443.443 INFO    ] ================================================
[2026-06-19 20:37:05,458.458 INFO    ] Launching Daemon at Fri Jun 19 20:37:05 IST 2026
[2026-06-19 20:37:05,469.469 INFO    ] ================================================
[2026-06-19 20:37:06,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:37:06
[2026-06-19 20:37:06,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:37:06,952.952 INFO    ] Initializing speech engine...
[2026-06-19 20:37:06,960.960 INFO    ] 2026-06-19 20:37:06
[2026-06-19 20:37:07,221.221 INFO    ] 2026-06-19 20:37:07
[2026-06-19 20:37:07,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:37:07,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:37:07,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:37:07,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:37:07,717.717 INFO    ] time= 19/06/2026 20:37:07
[2026-06-19 20:37:07,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:37:07,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:37:07,901.901 INFO    ] No existing commands found in stream
[2026-06-19 20:37:12,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:37:12,933.933 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 20:37:13,707.707 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:37:13,710.710 INFO    ] Checking for system updates...
[2026-06-19 20:37:13,753.753 INFO    ] 200
[2026-06-19 20:37:13,756.756 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:13,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:13,812.812 INFO    ] No update needed
[2026-06-19 20:37:13,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 20:37:13,848.848 INFO    ] 200
[2026-06-19 20:37:13,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:13,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:37:14,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:14,036.036 INFO    ] No camera update needed
[2026-06-19 20:37:14,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:37:14,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:37:14,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:37:14,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:37:16,092.092 INFO    ] ================================================
[2026-06-19 20:37:16,107.107 INFO    ] Launching Daemon at Fri Jun 19 20:37:16 IST 2026
[2026-06-19 20:37:16,118.118 INFO    ] ================================================
[2026-06-19 20:37:16,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:37:16
[2026-06-19 20:37:17,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:37:17,522.522 INFO    ] Initializing speech engine...
[2026-06-19 20:37:17,528.528 INFO    ] 2026-06-19 20:37:17
[2026-06-19 20:37:17,821.821 INFO    ] 2026-06-19 20:37:17
[2026-06-19 20:37:17,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:37:18,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:37:18,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:37:18,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:37:18,235.235 INFO    ] time= 19/06/2026 20:37:18
[2026-06-19 20:37:18,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:37:18,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:37:18,406.406 INFO    ] No existing commands found in stream
[2026-06-19 20:37:23,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:37:23,433.433 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 20:37:26,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:37:26,451.451 INFO    ] Checking for system updates...
[2026-06-19 20:37:26,508.508 INFO    ] 200
[2026-06-19 20:37:26,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:26,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:26,591.591 INFO    ] No update needed
[2026-06-19 20:37:26,594.594 INFO    ] Checking for camera pi updates...
[2026-06-19 20:37:26,634.634 INFO    ] 200
[2026-06-19 20:37:26,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:26,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:37:26,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:26,731.731 INFO    ] No camera update needed
[2026-06-19 20:37:26,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:37:26,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:37:26,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:37:26,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:37:28,789.789 INFO    ] ================================================
[2026-06-19 20:37:28,805.805 INFO    ] Launching Daemon at Fri Jun 19 20:37:28 IST 2026
[2026-06-19 20:37:28,817.817 INFO    ] ================================================
[2026-06-19 20:37:29,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:37:29
[2026-06-19 20:37:29,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:37:30,253.253 INFO    ] Initializing speech engine...
[2026-06-19 20:37:30,263.263 INFO    ] 2026-06-19 20:37:30
[2026-06-19 20:37:30,515.515 INFO    ] 2026-06-19 20:37:30
[2026-06-19 20:37:30,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:37:30,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:37:30,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:37:30,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:37:30,984.984 INFO    ] time= 19/06/2026 20:37:30
[2026-06-19 20:37:31,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:37:31,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:37:31,205.205 INFO    ] No existing commands found in stream
[2026-06-19 20:37:36,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:37:36,232.232 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-19 20:37:37,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:37:37,425.425 INFO    ] Checking for system updates...
[2026-06-19 20:37:37,462.462 INFO    ] 200
[2026-06-19 20:37:37,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:37,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:37,525.525 INFO    ] No update needed
[2026-06-19 20:37:37,527.527 INFO    ] Checking for camera pi updates...
[2026-06-19 20:37:37,562.562 INFO    ] 200
[2026-06-19 20:37:37,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:37,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:37:37,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:37:37,656.656 INFO    ] No camera update needed
[2026-06-19 20:37:37,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:37:37,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:37:37,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:37:37,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:37:39,711.711 INFO    ] ================================================
[2026-06-19 20:37:39,727.727 INFO    ] Launching Daemon at Fri Jun 19 20:37:39 IST 2026
[2026-06-19 20:37:39,737.737 INFO    ] ================================================
[2026-06-19 20:37:40,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:37:40
[2026-06-19 20:37:41,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:37:41,380.380 INFO    ] Initializing speech engine...
[2026-06-19 20:37:41,392.392 INFO    ] 2026-06-19 20:37:41
[2026-06-19 20:37:41,668.668 INFO    ] 2026-06-19 20:37:41
[2026-06-19 20:37:41,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:37:41,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:37:41,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:37:42,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:37:42,115.115 INFO    ] time= 19/06/2026 20:37:42
[2026-06-19 20:37:42,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:37:42,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:37:42,362.362 INFO    ] No existing commands found in stream
[2026-06-19 20:37:47,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:37:47,380.380 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 20:37:49,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:37:49,378.378 INFO    ] Checking for system updates...
[2026-06-19 20:37:49,415.415 INFO    ] 200
[2026-06-19 20:37:49,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:49,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:49,476.476 INFO    ] No update needed
[2026-06-19 20:37:49,479.479 INFO    ] Checking for camera pi updates...
[2026-06-19 20:37:49,513.513 INFO    ] 200
[2026-06-19 20:37:49,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:49,558.558 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:37:49,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:49,593.593 INFO    ] No camera update needed
[2026-06-19 20:37:49,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:37:49,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:37:49,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:37:49,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:37:51,651.651 INFO    ] ================================================
[2026-06-19 20:37:51,666.666 INFO    ] Launching Daemon at Fri Jun 19 20:37:51 IST 2026
[2026-06-19 20:37:51,677.677 INFO    ] ================================================
[2026-06-19 20:37:52,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:37:52
[2026-06-19 20:37:52,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:37:53,214.214 INFO    ] Initializing speech engine...
[2026-06-19 20:37:53,228.228 INFO    ] 2026-06-19 20:37:53
[2026-06-19 20:37:53,514.514 INFO    ] 2026-06-19 20:37:53
[2026-06-19 20:37:53,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:37:53,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:37:53,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:37:53,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:37:54,025.025 INFO    ] time= 19/06/2026 20:37:53
[2026-06-19 20:37:54,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:37:54,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:37:54,215.215 INFO    ] No existing commands found in stream
[2026-06-19 20:37:59,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:37:59,241.241 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 20:37:59,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:37:59,725.725 INFO    ] Checking for system updates...
[2026-06-19 20:37:59,763.763 INFO    ] 200
[2026-06-19 20:37:59,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:59,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:59,823.823 INFO    ] No update needed
[2026-06-19 20:37:59,826.826 INFO    ] Checking for camera pi updates...
[2026-06-19 20:37:59,860.860 INFO    ] 200
[2026-06-19 20:37:59,863.863 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:37:59,904.904 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:37:59,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:37:59,959.959 INFO    ] No camera update needed
[2026-06-19 20:37:59,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:37:59,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:37:59,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:37:59,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:38:02,020.020 INFO    ] ================================================
[2026-06-19 20:38:02,041.041 INFO    ] Launching Daemon at Fri Jun 19 20:38:02 IST 2026
[2026-06-19 20:38:02,056.056 INFO    ] ================================================
[2026-06-19 20:38:02,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:38:02
[2026-06-19 20:38:03,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:38:03,770.770 INFO    ] Initializing speech engine...
[2026-06-19 20:38:03,777.777 INFO    ] 2026-06-19 20:38:03
[2026-06-19 20:38:04,062.062 INFO    ] 2026-06-19 20:38:04
[2026-06-19 20:38:04,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:38:04,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:38:04,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:38:04,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:38:04,611.611 INFO    ] time= 19/06/2026 20:38:04
[2026-06-19 20:38:04,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:38:04,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:38:04,772.772 INFO    ] No existing commands found in stream
[2026-06-19 20:38:09,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:38:09,812.812 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 20:38:11,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:38:11,459.459 INFO    ] Checking for system updates...
[2026-06-19 20:38:11,501.501 INFO    ] 200
[2026-06-19 20:38:11,503.503 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:11,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:38:11,562.562 INFO    ] No update needed
[2026-06-19 20:38:11,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 20:38:11,601.601 INFO    ] 200
[2026-06-19 20:38:11,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:11,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:38:11,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:38:11,697.697 INFO    ] No camera update needed
[2026-06-19 20:38:11,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:38:11,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:38:11,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:38:11,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:38:13,755.755 INFO    ] ================================================
[2026-06-19 20:38:13,771.771 INFO    ] Launching Daemon at Fri Jun 19 20:38:13 IST 2026
[2026-06-19 20:38:13,782.782 INFO    ] ================================================
[2026-06-19 20:38:14,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:38:14
[2026-06-19 20:38:14,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:38:15,216.216 INFO    ] Initializing speech engine...
[2026-06-19 20:38:15,225.225 INFO    ] 2026-06-19 20:38:15
[2026-06-19 20:38:15,476.476 INFO    ] 2026-06-19 20:38:15
[2026-06-19 20:38:15,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:38:15,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:38:15,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:38:15,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:38:16,041.041 INFO    ] time= 19/06/2026 20:38:15
[2026-06-19 20:38:16,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:38:16,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:38:16,219.219 INFO    ] No existing commands found in stream
[2026-06-19 20:38:21,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:38:21,253.253 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 20:38:21,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:38:21,791.791 INFO    ] Checking for system updates...
[2026-06-19 20:38:21,827.827 INFO    ] 200
[2026-06-19 20:38:21,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:21,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:38:21,884.884 INFO    ] No update needed
[2026-06-19 20:38:21,887.887 INFO    ] Checking for camera pi updates...
[2026-06-19 20:38:21,921.921 INFO    ] 200
[2026-06-19 20:38:21,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:21,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:38:22,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:38:22,007.007 INFO    ] No camera update needed
[2026-06-19 20:38:22,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:38:22,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:38:22,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:38:22,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:38:24,066.066 INFO    ] ================================================
[2026-06-19 20:38:24,081.081 INFO    ] Launching Daemon at Fri Jun 19 20:38:24 IST 2026
[2026-06-19 20:38:24,092.092 INFO    ] ================================================
[2026-06-19 20:38:24,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:38:24
[2026-06-19 20:38:25,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:38:25,649.649 INFO    ] Initializing speech engine...
[2026-06-19 20:38:25,659.659 INFO    ] 2026-06-19 20:38:25
[2026-06-19 20:38:25,939.939 INFO    ] 2026-06-19 20:38:25
[2026-06-19 20:38:25,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:38:26,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:38:26,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:38:26,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:38:26,478.478 INFO    ] time= 19/06/2026 20:38:26
[2026-06-19 20:38:26,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:38:26,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:38:26,652.652 INFO    ] No existing commands found in stream
[2026-06-19 20:38:31,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:38:31,691.691 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 20:38:33,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:38:33,594.594 INFO    ] Checking for system updates...
[2026-06-19 20:38:33,630.630 INFO    ] 200
[2026-06-19 20:38:33,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:33,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:38:33,687.687 INFO    ] No update needed
[2026-06-19 20:38:33,690.690 INFO    ] Checking for camera pi updates...
[2026-06-19 20:38:33,727.727 INFO    ] 200
[2026-06-19 20:38:33,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:33,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:38:33,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:38:33,835.835 INFO    ] No camera update needed
[2026-06-19 20:38:33,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:38:33,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:38:33,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:38:33,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:38:35,889.889 INFO    ] ================================================
[2026-06-19 20:38:35,904.904 INFO    ] Launching Daemon at Fri Jun 19 20:38:35 IST 2026
[2026-06-19 20:38:35,915.915 INFO    ] ================================================
[2026-06-19 20:38:36,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:38:36
[2026-06-19 20:38:37,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:38:37,313.313 INFO    ] Initializing speech engine...
[2026-06-19 20:38:37,328.328 INFO    ] 2026-06-19 20:38:37
[2026-06-19 20:38:37,595.595 INFO    ] 2026-06-19 20:38:37
[2026-06-19 20:38:37,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:38:37,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:38:37,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:38:37,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:38:37,972.972 INFO    ] time= 19/06/2026 20:38:37
[2026-06-19 20:38:37,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:38:38,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:38:38,157.157 INFO    ] No existing commands found in stream
[2026-06-19 20:38:43,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:38:43,185.185 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 20:38:46,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:38:46,467.467 INFO    ] Checking for system updates...
[2026-06-19 20:38:46,503.503 INFO    ] 200
[2026-06-19 20:38:46,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:46,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:38:46,562.562 INFO    ] No update needed
[2026-06-19 20:38:46,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 20:38:46,597.597 INFO    ] 200
[2026-06-19 20:38:46,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:46,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:38:46,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:38:46,691.691 INFO    ] No camera update needed
[2026-06-19 20:38:46,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:38:46,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:38:46,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:38:46,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:38:48,749.749 INFO    ] ================================================
[2026-06-19 20:38:48,764.764 INFO    ] Launching Daemon at Fri Jun 19 20:38:48 IST 2026
[2026-06-19 20:38:48,775.775 INFO    ] ================================================
[2026-06-19 20:38:49,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:38:49
[2026-06-19 20:38:49,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:38:50,182.182 INFO    ] Initializing speech engine...
[2026-06-19 20:38:50,188.188 INFO    ] 2026-06-19 20:38:50
[2026-06-19 20:38:50,472.472 INFO    ] 2026-06-19 20:38:50
[2026-06-19 20:38:50,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:38:50,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:38:50,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:38:50,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:38:50,970.970 INFO    ] time= 19/06/2026 20:38:50
[2026-06-19 20:38:51,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:38:51,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:38:51,237.237 INFO    ] No existing commands found in stream
[2026-06-19 20:38:56,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:38:56,264.264 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 20:38:57,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:38:57,688.688 INFO    ] Checking for system updates...
[2026-06-19 20:38:57,729.729 INFO    ] 200
[2026-06-19 20:38:57,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:57,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:38:57,789.789 INFO    ] No update needed
[2026-06-19 20:38:57,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 20:38:57,826.826 INFO    ] 200
[2026-06-19 20:38:57,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:38:57,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:38:57,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:38:57,921.921 INFO    ] No camera update needed
[2026-06-19 20:38:57,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:38:57,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:38:57,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:38:57,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:38:59,977.977 INFO    ] ================================================
[2026-06-19 20:38:59,991.991 INFO    ] Launching Daemon at Fri Jun 19 20:38:59 IST 2026
[2026-06-19 20:39:00,002.002 INFO    ] ================================================
[2026-06-19 20:39:00,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:39:00
[2026-06-19 20:39:01,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:39:01,795.795 INFO    ] Initializing speech engine...
[2026-06-19 20:39:01,802.802 INFO    ] 2026-06-19 20:39:01
[2026-06-19 20:39:02,236.236 INFO    ] 2026-06-19 20:39:02
[2026-06-19 20:39:02,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:39:02,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:39:02,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:39:02,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:39:02,811.811 INFO    ] time= 19/06/2026 20:39:02
[2026-06-19 20:39:02,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:39:02,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:39:03,036.036 INFO    ] No existing commands found in stream
[2026-06-19 20:39:08,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:39:08,054.054 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 20:39:10,215.215 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:39:10,217.217 INFO    ] Checking for system updates...
[2026-06-19 20:39:10,255.255 INFO    ] 200
[2026-06-19 20:39:10,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:39:10,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:39:10,316.316 INFO    ] No update needed
[2026-06-19 20:39:10,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 20:39:10,352.352 INFO    ] 200
[2026-06-19 20:39:10,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:39:10,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:39:10,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:39:10,449.449 INFO    ] No camera update needed
[2026-06-19 20:39:10,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:39:10,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:39:10,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:39:10,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:39:12,504.504 INFO    ] ================================================
[2026-06-19 20:39:12,519.519 INFO    ] Launching Daemon at Fri Jun 19 20:39:12 IST 2026
[2026-06-19 20:39:12,529.529 INFO    ] ================================================
[2026-06-19 20:39:13,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:39:13
[2026-06-19 20:39:13,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:39:13,950.950 INFO    ] Initializing speech engine...
[2026-06-19 20:39:13,958.958 INFO    ] 2026-06-19 20:39:13
[2026-06-19 20:39:14,251.251 INFO    ] 2026-06-19 20:39:14
[2026-06-19 20:39:14,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:39:14,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:39:14,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:39:14,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:39:14,756.756 INFO    ] time= 19/06/2026 20:39:14
[2026-06-19 20:39:14,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:39:14,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:39:15,018.018 INFO    ] No existing commands found in stream
[2026-06-19 20:39:20,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:39:20,044.044 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 20:39:22,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:39:22,800.800 INFO    ] Checking for system updates...
[2026-06-19 20:39:22,839.839 INFO    ] 200
[2026-06-19 20:39:22,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:39:22,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:39:22,903.903 INFO    ] No update needed
[2026-06-19 20:39:22,905.905 INFO    ] Checking for camera pi updates...
[2026-06-19 20:39:22,939.939 INFO    ] 200
[2026-06-19 20:39:22,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:39:22,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:39:23,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:39:23,128.128 INFO    ] No camera update needed
[2026-06-19 20:39:23,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:39:23,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:39:23,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:39:23,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:39:25,184.184 INFO    ] ================================================
[2026-06-19 20:39:25,199.199 INFO    ] Launching Daemon at Fri Jun 19 20:39:25 IST 2026
[2026-06-19 20:39:25,210.210 INFO    ] ================================================
[2026-06-19 20:39:25,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:39:25
[2026-06-19 20:39:26,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:39:26,821.821 INFO    ] Initializing speech engine...
[2026-06-19 20:39:26,829.829 INFO    ] 2026-06-19 20:39:26
[2026-06-19 20:39:27,105.105 INFO    ] 2026-06-19 20:39:27
[2026-06-19 20:39:27,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:39:27,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:39:27,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:39:27,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:39:27,656.656 INFO    ] time= 19/06/2026 20:39:27
[2026-06-19 20:39:27,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:39:27,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:39:27,810.810 INFO    ] No existing commands found in stream
[2026-06-19 20:39:32,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:39:32,839.839 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 20:39:36,115.115 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:39:36,118.118 INFO    ] Checking for system updates...
[2026-06-19 20:39:36,156.156 INFO    ] 200
[2026-06-19 20:39:36,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:39:36,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:39:36,214.214 INFO    ] No update needed
[2026-06-19 20:39:36,217.217 INFO    ] Checking for camera pi updates...
[2026-06-19 20:39:36,252.252 INFO    ] 200
[2026-06-19 20:39:36,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:39:36,299.299 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:39:36,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:39:36,347.347 INFO    ] No camera update needed
[2026-06-19 20:39:36,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:39:36,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:39:36,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:39:36,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:39:38,405.405 INFO    ] ================================================
[2026-06-19 20:39:38,420.420 INFO    ] Launching Daemon at Fri Jun 19 20:39:38 IST 2026
[2026-06-19 20:39:38,431.431 INFO    ] ================================================
[2026-06-19 20:39:39,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:39:39
[2026-06-19 20:39:39,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:39:40,047.047 INFO    ] Initializing speech engine...
[2026-06-19 20:39:40,053.053 INFO    ] 2026-06-19 20:39:40
[2026-06-19 20:39:40,326.326 INFO    ] 2026-06-19 20:39:40
[2026-06-19 20:39:40,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:39:40,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:39:40,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:39:40,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:39:40,891.891 INFO    ] time= 19/06/2026 20:39:40
[2026-06-19 20:39:40,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:39:40,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:39:41,092.092 INFO    ] No existing commands found in stream
[2026-06-19 20:39:46,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:39:46,121.121 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 20:39:48,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:39:48,872.872 INFO    ] Checking for system updates...
[2026-06-19 20:39:48,911.911 INFO    ] 200
[2026-06-19 20:39:48,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:39:48,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:39:48,976.976 INFO    ] No update needed
[2026-06-19 20:39:48,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 20:39:49,013.013 INFO    ] 200
[2026-06-19 20:39:49,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:39:49,058.058 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:39:49,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:39:49,105.105 INFO    ] No camera update needed
[2026-06-19 20:39:49,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:39:49,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:39:49,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:39:49,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:39:51,165.165 INFO    ] ================================================
[2026-06-19 20:39:51,180.180 INFO    ] Launching Daemon at Fri Jun 19 20:39:51 IST 2026
[2026-06-19 20:39:51,191.191 INFO    ] ================================================
[2026-06-19 20:39:51,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:39:51
[2026-06-19 20:39:52,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:39:52,672.672 INFO    ] Initializing speech engine...
[2026-06-19 20:39:52,684.684 INFO    ] 2026-06-19 20:39:52
[2026-06-19 20:39:52,972.972 INFO    ] 2026-06-19 20:39:52
[2026-06-19 20:39:53,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:39:53,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:39:53,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:39:53,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:39:53,422.422 INFO    ] time= 19/06/2026 20:39:53
[2026-06-19 20:39:53,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:39:53,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:39:53,515.515 INFO    ] No existing commands found in stream
[2026-06-19 20:39:58,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:39:58,533.533 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 20:40:00,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:40:00,422.422 INFO    ] Checking for system updates...
[2026-06-19 20:40:00,459.459 INFO    ] 200
[2026-06-19 20:40:00,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:00,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:40:00,517.517 INFO    ] No update needed
[2026-06-19 20:40:00,520.520 INFO    ] Checking for camera pi updates...
[2026-06-19 20:40:00,553.553 INFO    ] 200
[2026-06-19 20:40:00,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:00,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:40:00,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:40:00,652.652 INFO    ] No camera update needed
[2026-06-19 20:40:00,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:40:00,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:40:00,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:40:00,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:40:02,732.732 INFO    ] ================================================
[2026-06-19 20:40:02,769.769 INFO    ] Launching Daemon at Fri Jun 19 20:40:02 IST 2026
[2026-06-19 20:40:02,782.782 INFO    ] ================================================
[2026-06-19 20:40:03,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:40:03
[2026-06-19 20:40:04,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:40:04,432.432 INFO    ] Initializing speech engine...
[2026-06-19 20:40:04,438.438 INFO    ] 2026-06-19 20:40:04
[2026-06-19 20:40:04,723.723 INFO    ] 2026-06-19 20:40:04
[2026-06-19 20:40:04,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:40:04,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:40:05,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:40:05,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:40:05,197.197 INFO    ] time= 19/06/2026 20:40:05
[2026-06-19 20:40:05,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:40:05,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:40:05,340.340 INFO    ] No existing commands found in stream
[2026-06-19 20:40:10,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:40:10,380.380 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 20:40:10,882.882 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:40:10,885.885 INFO    ] Checking for system updates...
[2026-06-19 20:40:10,923.923 INFO    ] 200
[2026-06-19 20:40:10,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:10,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:40:10,981.981 INFO    ] No update needed
[2026-06-19 20:40:10,984.984 INFO    ] Checking for camera pi updates...
[2026-06-19 20:40:11,019.019 INFO    ] 200
[2026-06-19 20:40:11,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:11,064.064 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:40:11,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:40:11,115.115 INFO    ] No camera update needed
[2026-06-19 20:40:11,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:40:11,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:40:11,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:40:11,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:40:13,172.172 INFO    ] ================================================
[2026-06-19 20:40:13,187.187 INFO    ] Launching Daemon at Fri Jun 19 20:40:13 IST 2026
[2026-06-19 20:40:13,198.198 INFO    ] ================================================
[2026-06-19 20:40:13,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:40:13
[2026-06-19 20:40:14,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:40:14,655.655 INFO    ] Initializing speech engine...
[2026-06-19 20:40:14,663.663 INFO    ] 2026-06-19 20:40:14
[2026-06-19 20:40:14,957.957 INFO    ] 2026-06-19 20:40:14
[2026-06-19 20:40:14,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:40:15,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:40:15,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:40:15,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:40:15,376.376 INFO    ] time= 19/06/2026 20:40:15
[2026-06-19 20:40:15,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:40:15,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:40:15,555.555 INFO    ] No existing commands found in stream
[2026-06-19 20:40:20,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:40:20,583.583 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 20:40:21,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:40:21,947.947 INFO    ] Checking for system updates...
[2026-06-19 20:40:21,982.982 INFO    ] 200
[2026-06-19 20:40:21,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:22,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:40:22,041.041 INFO    ] No update needed
[2026-06-19 20:40:22,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 20:40:22,083.083 INFO    ] 200
[2026-06-19 20:40:22,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:22,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:40:22,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:40:22,173.173 INFO    ] No camera update needed
[2026-06-19 20:40:22,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:40:22,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:40:22,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:40:22,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:40:24,230.230 INFO    ] ================================================
[2026-06-19 20:40:24,245.245 INFO    ] Launching Daemon at Fri Jun 19 20:40:24 IST 2026
[2026-06-19 20:40:24,256.256 INFO    ] ================================================
[2026-06-19 20:40:24,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:40:24
[2026-06-19 20:40:25,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:40:25,725.725 INFO    ] Initializing speech engine...
[2026-06-19 20:40:25,732.732 INFO    ] 2026-06-19 20:40:25
[2026-06-19 20:40:25,979.979 INFO    ] 2026-06-19 20:40:25
[2026-06-19 20:40:26,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:40:26,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:40:26,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:40:26,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:40:26,436.436 INFO    ] time= 19/06/2026 20:40:26
[2026-06-19 20:40:26,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:40:26,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:40:26,678.678 INFO    ] No existing commands found in stream
[2026-06-19 20:40:31,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:40:31,706.706 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 20:40:33,300.300 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:40:33,303.303 INFO    ] Checking for system updates...
[2026-06-19 20:40:33,339.339 INFO    ] 200
[2026-06-19 20:40:33,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:33,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:40:33,397.397 INFO    ] No update needed
[2026-06-19 20:40:33,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 20:40:33,432.432 INFO    ] 200
[2026-06-19 20:40:33,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:33,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:40:33,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:40:33,522.522 INFO    ] No camera update needed
[2026-06-19 20:40:33,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:40:33,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:40:33,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:40:33,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:40:35,578.578 INFO    ] ================================================
[2026-06-19 20:40:35,593.593 INFO    ] Launching Daemon at Fri Jun 19 20:40:35 IST 2026
[2026-06-19 20:40:35,604.604 INFO    ] ================================================
[2026-06-19 20:40:36,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:40:36
[2026-06-19 20:40:36,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:40:37,057.057 INFO    ] Initializing speech engine...
[2026-06-19 20:40:37,073.073 INFO    ] 2026-06-19 20:40:37
[2026-06-19 20:40:37,357.357 INFO    ] 2026-06-19 20:40:37
[2026-06-19 20:40:37,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:40:37,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:40:37,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:40:37,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:40:37,768.768 INFO    ] time= 19/06/2026 20:40:37
[2026-06-19 20:40:37,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:40:37,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:40:37,855.855 INFO    ] No existing commands found in stream
[2026-06-19 20:40:42,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:40:42,871.871 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 20:40:46,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:40:46,675.675 INFO    ] Checking for system updates...
[2026-06-19 20:40:46,711.711 INFO    ] 200
[2026-06-19 20:40:46,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:46,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:40:46,768.768 INFO    ] No update needed
[2026-06-19 20:40:46,771.771 INFO    ] Checking for camera pi updates...
[2026-06-19 20:40:46,805.805 INFO    ] 200
[2026-06-19 20:40:46,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:46,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:40:46,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:40:46,921.921 INFO    ] No camera update needed
[2026-06-19 20:40:46,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:40:46,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:40:46,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:40:46,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:40:48,976.976 INFO    ] ================================================
[2026-06-19 20:40:48,991.991 INFO    ] Launching Daemon at Fri Jun 19 20:40:48 IST 2026
[2026-06-19 20:40:49,001.001 INFO    ] ================================================
[2026-06-19 20:40:49,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:40:49
[2026-06-19 20:40:50,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:40:50,598.598 INFO    ] Initializing speech engine...
[2026-06-19 20:40:50,607.607 INFO    ] 2026-06-19 20:40:50
[2026-06-19 20:40:50,888.888 INFO    ] 2026-06-19 20:40:50
[2026-06-19 20:40:50,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:40:51,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:40:51,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:40:51,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:40:51,422.422 INFO    ] time= 19/06/2026 20:40:51
[2026-06-19 20:40:51,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:40:51,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:40:51,579.579 INFO    ] No existing commands found in stream
[2026-06-19 20:40:56,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:40:56,607.607 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 20:40:58,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:40:58,500.500 INFO    ] Checking for system updates...
[2026-06-19 20:40:58,542.542 INFO    ] 200
[2026-06-19 20:40:58,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:58,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:40:58,601.601 INFO    ] No update needed
[2026-06-19 20:40:58,603.603 INFO    ] Checking for camera pi updates...
[2026-06-19 20:40:58,638.638 INFO    ] 200
[2026-06-19 20:40:58,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:40:58,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:40:58,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:40:58,733.733 INFO    ] No camera update needed
[2026-06-19 20:40:58,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:40:58,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:40:58,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:40:58,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:41:00,791.791 INFO    ] ================================================
[2026-06-19 20:41:00,806.806 INFO    ] Launching Daemon at Fri Jun 19 20:41:00 IST 2026
[2026-06-19 20:41:00,817.817 INFO    ] ================================================
[2026-06-19 20:41:01,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:41:01
[2026-06-19 20:41:02,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:41:02,484.484 INFO    ] Initializing speech engine...
[2026-06-19 20:41:02,494.494 INFO    ] 2026-06-19 20:41:02
[2026-06-19 20:41:02,808.808 INFO    ] 2026-06-19 20:41:02
[2026-06-19 20:41:02,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:41:03,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:41:03,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:41:03,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:41:03,179.179 INFO    ] time= 19/06/2026 20:41:03
[2026-06-19 20:41:03,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:41:03,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:41:03,313.313 INFO    ] No existing commands found in stream
[2026-06-19 20:41:08,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:41:08,329.329 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 20:41:10,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:41:10,641.641 INFO    ] Checking for system updates...
[2026-06-19 20:41:10,690.690 INFO    ] 200
[2026-06-19 20:41:10,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:41:10,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:41:10,748.748 INFO    ] No update needed
[2026-06-19 20:41:10,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 20:41:10,785.785 INFO    ] 200
[2026-06-19 20:41:10,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:41:10,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:41:10,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:41:10,879.879 INFO    ] No camera update needed
[2026-06-19 20:41:10,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:41:10,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:41:10,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:41:10,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:41:12,935.935 INFO    ] ================================================
[2026-06-19 20:41:12,950.950 INFO    ] Launching Daemon at Fri Jun 19 20:41:12 IST 2026
[2026-06-19 20:41:12,962.962 INFO    ] ================================================
[2026-06-19 20:41:13,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:41:13
[2026-06-19 20:41:14,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:41:14,392.392 INFO    ] Initializing speech engine...
[2026-06-19 20:41:14,399.399 INFO    ] 2026-06-19 20:41:14
[2026-06-19 20:41:14,645.645 INFO    ] 2026-06-19 20:41:14
[2026-06-19 20:41:14,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:41:14,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:41:14,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:41:15,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:41:15,122.122 INFO    ] time= 19/06/2026 20:41:15
[2026-06-19 20:41:15,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:41:15,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:41:15,338.338 INFO    ] No existing commands found in stream
[2026-06-19 20:41:20,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:41:20,369.369 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 20:41:22,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:41:22,348.348 INFO    ] Checking for system updates...
[2026-06-19 20:41:22,383.383 INFO    ] 200
[2026-06-19 20:41:22,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:41:22,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:41:22,441.441 INFO    ] No update needed
[2026-06-19 20:41:22,443.443 INFO    ] Checking for camera pi updates...
[2026-06-19 20:41:22,478.478 INFO    ] 200
[2026-06-19 20:41:22,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:41:22,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:41:22,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:41:22,565.565 INFO    ] No camera update needed
[2026-06-19 20:41:22,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:41:22,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:41:22,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:41:22,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:41:24,623.623 INFO    ] ================================================
[2026-06-19 20:41:24,638.638 INFO    ] Launching Daemon at Fri Jun 19 20:41:24 IST 2026
[2026-06-19 20:41:24,649.649 INFO    ] ================================================
[2026-06-19 20:41:25,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:41:25
[2026-06-19 20:41:25,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:41:26,110.110 INFO    ] Initializing speech engine...
[2026-06-19 20:41:26,117.117 INFO    ] 2026-06-19 20:41:26
[2026-06-19 20:41:26,379.379 INFO    ] 2026-06-19 20:41:26
[2026-06-19 20:41:26,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:41:26,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:41:26,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:41:26,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:41:26,865.865 INFO    ] time= 19/06/2026 20:41:26
[2026-06-19 20:41:26,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:41:26,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:41:26,987.987 INFO    ] No existing commands found in stream
[2026-06-19 20:41:31,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:41:32,002.002 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 20:41:36,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:41:36,326.326 INFO    ] Checking for system updates...
[2026-06-19 20:41:36,362.362 INFO    ] 200
[2026-06-19 20:41:36,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:41:36,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:41:36,420.420 INFO    ] No update needed
[2026-06-19 20:41:36,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 20:41:36,456.456 INFO    ] 200
[2026-06-19 20:41:36,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:41:36,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:41:36,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:41:36,551.551 INFO    ] No camera update needed
[2026-06-19 20:41:36,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:41:36,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:41:36,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:41:36,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:41:38,606.606 INFO    ] ================================================
[2026-06-19 20:41:38,622.622 INFO    ] Launching Daemon at Fri Jun 19 20:41:38 IST 2026
[2026-06-19 20:41:38,632.632 INFO    ] ================================================
[2026-06-19 20:41:39,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:41:39
[2026-06-19 20:41:39,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:41:40,064.064 INFO    ] Initializing speech engine...
[2026-06-19 20:41:40,079.079 INFO    ] 2026-06-19 20:41:40
[2026-06-19 20:41:40,343.343 INFO    ] 2026-06-19 20:41:40
[2026-06-19 20:41:40,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:41:40,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:41:40,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:41:40,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:41:40,814.814 INFO    ] time= 19/06/2026 20:41:40
[2026-06-19 20:41:40,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:41:40,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:41:41,013.013 INFO    ] No existing commands found in stream
[2026-06-19 20:41:46,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:41:46,036.036 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 20:41:49,426.426 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:41:49,428.428 INFO    ] Checking for system updates...
[2026-06-19 20:41:49,465.465 INFO    ] 200
[2026-06-19 20:41:49,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:41:49,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:41:49,522.522 INFO    ] No update needed
[2026-06-19 20:41:49,525.525 INFO    ] Checking for camera pi updates...
[2026-06-19 20:41:49,559.559 INFO    ] 200
[2026-06-19 20:41:49,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:41:49,602.602 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:41:49,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:41:49,635.635 INFO    ] No camera update needed
[2026-06-19 20:41:49,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:41:49,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:41:49,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:41:49,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:41:51,690.690 INFO    ] ================================================
[2026-06-19 20:41:51,705.705 INFO    ] Launching Daemon at Fri Jun 19 20:41:51 IST 2026
[2026-06-19 20:41:51,716.716 INFO    ] ================================================
[2026-06-19 20:41:52,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:41:52
[2026-06-19 20:41:52,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:41:53,173.173 INFO    ] Initializing speech engine...
[2026-06-19 20:41:53,182.182 INFO    ] 2026-06-19 20:41:53
[2026-06-19 20:41:53,463.463 INFO    ] 2026-06-19 20:41:53
[2026-06-19 20:41:53,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:41:53,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:41:53,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:41:53,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:41:53,997.997 INFO    ] time= 19/06/2026 20:41:53
[2026-06-19 20:41:54,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:41:54,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:41:54,142.142 INFO    ] No existing commands found in stream
[2026-06-19 20:41:59,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:41:59,168.168 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 20:42:01,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:42:01,445.445 INFO    ] Checking for system updates...
[2026-06-19 20:42:01,498.498 INFO    ] 200
[2026-06-19 20:42:01,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:01,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:42:01,633.633 INFO    ] No update needed
[2026-06-19 20:42:01,644.644 INFO    ] Checking for camera pi updates...
[2026-06-19 20:42:01,690.690 INFO    ] 200
[2026-06-19 20:42:01,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:01,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:42:01,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:42:01,794.794 INFO    ] No camera update needed
[2026-06-19 20:42:01,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:42:01,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:42:01,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:42:01,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:42:03,860.860 INFO    ] ================================================
[2026-06-19 20:42:03,877.877 INFO    ] Launching Daemon at Fri Jun 19 20:42:03 IST 2026
[2026-06-19 20:42:03,891.891 INFO    ] ================================================
[2026-06-19 20:42:04,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:42:04
[2026-06-19 20:42:05,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:42:05,309.309 INFO    ] Initializing speech engine...
[2026-06-19 20:42:05,316.316 INFO    ] 2026-06-19 20:42:05
[2026-06-19 20:42:05,614.614 INFO    ] 2026-06-19 20:42:05
[2026-06-19 20:42:05,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:42:05,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:42:05,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:42:06,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:42:06,023.023 INFO    ] time= 19/06/2026 20:42:06
[2026-06-19 20:42:06,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:42:06,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:42:06,138.138 INFO    ] No existing commands found in stream
[2026-06-19 20:42:11,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:42:11,153.153 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 20:42:14,088.088 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:42:14,090.090 INFO    ] Checking for system updates...
[2026-06-19 20:42:14,126.126 INFO    ] 200
[2026-06-19 20:42:14,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:14,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:42:14,184.184 INFO    ] No update needed
[2026-06-19 20:42:14,187.187 INFO    ] Checking for camera pi updates...
[2026-06-19 20:42:14,221.221 INFO    ] 200
[2026-06-19 20:42:14,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:14,264.264 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:42:14,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:42:14,312.312 INFO    ] No camera update needed
[2026-06-19 20:42:14,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:42:14,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:42:14,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:42:14,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:42:16,367.367 INFO    ] ================================================
[2026-06-19 20:42:16,382.382 INFO    ] Launching Daemon at Fri Jun 19 20:42:16 IST 2026
[2026-06-19 20:42:16,393.393 INFO    ] ================================================
[2026-06-19 20:42:17,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:42:17
[2026-06-19 20:42:17,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:42:18,032.032 INFO    ] Initializing speech engine...
[2026-06-19 20:42:18,040.040 INFO    ] 2026-06-19 20:42:18
[2026-06-19 20:42:18,333.333 INFO    ] 2026-06-19 20:42:18
[2026-06-19 20:42:18,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:42:18,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:42:18,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:42:18,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:42:18,807.807 INFO    ] time= 19/06/2026 20:42:18
[2026-06-19 20:42:18,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:42:18,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:42:19,017.017 INFO    ] No existing commands found in stream
[2026-06-19 20:42:24,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:42:24,049.049 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 20:42:25,791.791 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:42:25,794.794 INFO    ] Checking for system updates...
[2026-06-19 20:42:25,832.832 INFO    ] 200
[2026-06-19 20:42:25,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:25,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:42:25,890.890 INFO    ] No update needed
[2026-06-19 20:42:25,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 20:42:25,927.927 INFO    ] 200
[2026-06-19 20:42:25,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:25,969.969 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:42:26,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:42:26,015.015 INFO    ] No camera update needed
[2026-06-19 20:42:26,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:42:26,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:42:26,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:42:26,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:42:28,069.069 INFO    ] ================================================
[2026-06-19 20:42:28,084.084 INFO    ] Launching Daemon at Fri Jun 19 20:42:28 IST 2026
[2026-06-19 20:42:28,094.094 INFO    ] ================================================
[2026-06-19 20:42:28,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:42:28
[2026-06-19 20:42:29,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:42:29,569.569 INFO    ] Initializing speech engine...
[2026-06-19 20:42:29,578.578 INFO    ] 2026-06-19 20:42:29
[2026-06-19 20:42:29,854.854 INFO    ] 2026-06-19 20:42:29
[2026-06-19 20:42:29,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:42:30,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:42:30,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:42:30,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:42:30,359.359 INFO    ] time= 19/06/2026 20:42:30
[2026-06-19 20:42:30,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:42:30,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:42:30,549.549 INFO    ] No existing commands found in stream
[2026-06-19 20:42:35,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:42:35,582.582 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-19 20:42:38,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:42:38,013.013 INFO    ] Checking for system updates...
[2026-06-19 20:42:38,053.053 INFO    ] 200
[2026-06-19 20:42:38,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:38,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:42:38,118.118 INFO    ] No update needed
[2026-06-19 20:42:38,120.120 INFO    ] Checking for camera pi updates...
[2026-06-19 20:42:38,158.158 INFO    ] 200
[2026-06-19 20:42:38,160.160 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:38,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:42:38,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:42:38,255.255 INFO    ] No camera update needed
[2026-06-19 20:42:38,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:42:38,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:42:38,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:42:38,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:42:40,310.310 INFO    ] ================================================
[2026-06-19 20:42:40,325.325 INFO    ] Launching Daemon at Fri Jun 19 20:42:40 IST 2026
[2026-06-19 20:42:40,336.336 INFO    ] ================================================
[2026-06-19 20:42:40,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:42:40
[2026-06-19 20:42:41,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:42:41,950.950 INFO    ] Initializing speech engine...
[2026-06-19 20:42:41,958.958 INFO    ] 2026-06-19 20:42:41
[2026-06-19 20:42:42,282.282 INFO    ] 2026-06-19 20:42:42
[2026-06-19 20:42:42,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:42:42,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:42:42,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:42:42,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:42:42,803.803 INFO    ] time= 19/06/2026 20:42:42
[2026-06-19 20:42:42,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:42:42,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:42:42,962.962 INFO    ] No existing commands found in stream
[2026-06-19 20:42:47,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:42:47,991.991 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 20:42:50,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:42:50,912.912 INFO    ] Checking for system updates...
[2026-06-19 20:42:50,950.950 INFO    ] 200
[2026-06-19 20:42:50,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:51,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:42:51,008.008 INFO    ] No update needed
[2026-06-19 20:42:51,011.011 INFO    ] Checking for camera pi updates...
[2026-06-19 20:42:51,045.045 INFO    ] 200
[2026-06-19 20:42:51,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:42:51,089.089 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:42:51,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:42:51,135.135 INFO    ] No camera update needed
[2026-06-19 20:42:51,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:42:51,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:42:51,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:42:51,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:42:53,189.189 INFO    ] ================================================
[2026-06-19 20:42:53,208.208 INFO    ] Launching Daemon at Fri Jun 19 20:42:53 IST 2026
[2026-06-19 20:42:53,220.220 INFO    ] ================================================
[2026-06-19 20:42:53,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:42:53
[2026-06-19 20:42:54,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:42:54,649.649 INFO    ] Initializing speech engine...
[2026-06-19 20:42:54,656.656 INFO    ] 2026-06-19 20:42:54
[2026-06-19 20:42:54,915.915 INFO    ] 2026-06-19 20:42:54
[2026-06-19 20:42:54,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:42:55,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:42:55,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:42:55,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:42:55,374.374 INFO    ] time= 19/06/2026 20:42:55
[2026-06-19 20:42:55,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:42:55,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:42:55,526.526 INFO    ] No existing commands found in stream
[2026-06-19 20:43:00,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:43:00,548.548 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 20:43:03,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:43:03,660.660 INFO    ] Checking for system updates...
[2026-06-19 20:43:03,696.696 INFO    ] 200
[2026-06-19 20:43:03,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:03,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:43:03,754.754 INFO    ] No update needed
[2026-06-19 20:43:03,757.757 INFO    ] Checking for camera pi updates...
[2026-06-19 20:43:03,794.794 INFO    ] 200
[2026-06-19 20:43:03,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:03,837.837 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:43:03,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:43:03,882.882 INFO    ] No camera update needed
[2026-06-19 20:43:03,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:43:03,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:43:03,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:43:03,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:43:05,939.939 INFO    ] ================================================
[2026-06-19 20:43:05,957.957 INFO    ] Launching Daemon at Fri Jun 19 20:43:05 IST 2026
[2026-06-19 20:43:05,968.968 INFO    ] ================================================
[2026-06-19 20:43:06,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:43:06
[2026-06-19 20:43:07,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:43:07,541.541 INFO    ] Initializing speech engine...
[2026-06-19 20:43:07,548.548 INFO    ] 2026-06-19 20:43:07
[2026-06-19 20:43:07,835.835 INFO    ] 2026-06-19 20:43:07
[2026-06-19 20:43:07,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:43:08,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:43:08,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:43:08,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:43:08,545.545 INFO    ] time= 19/06/2026 20:43:08
[2026-06-19 20:43:08,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:43:08,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:43:08,751.751 INFO    ] No existing commands found in stream
[2026-06-19 20:43:13,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:43:13,785.785 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 20:43:17,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:43:17,783.783 INFO    ] Checking for system updates...
[2026-06-19 20:43:17,824.824 INFO    ] 200
[2026-06-19 20:43:17,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:17,892.892 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:43:17,894.894 INFO    ] No update needed
[2026-06-19 20:43:17,898.898 INFO    ] Checking for camera pi updates...
[2026-06-19 20:43:17,937.937 INFO    ] 200
[2026-06-19 20:43:17,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:17,983.983 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:43:18,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:43:18,030.030 INFO    ] No camera update needed
[2026-06-19 20:43:18,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:43:18,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:43:18,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:43:18,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:43:20,089.089 INFO    ] ================================================
[2026-06-19 20:43:20,105.105 INFO    ] Launching Daemon at Fri Jun 19 20:43:20 IST 2026
[2026-06-19 20:43:20,116.116 INFO    ] ================================================
[2026-06-19 20:43:20,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:43:20
[2026-06-19 20:43:21,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:43:21,544.544 INFO    ] Initializing speech engine...
[2026-06-19 20:43:21,553.553 INFO    ] 2026-06-19 20:43:21
[2026-06-19 20:43:21,814.814 INFO    ] 2026-06-19 20:43:21
[2026-06-19 20:43:21,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:43:22,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:43:22,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:43:22,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:43:22,292.292 INFO    ] time= 19/06/2026 20:43:22
[2026-06-19 20:43:22,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:43:22,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:43:22,462.462 INFO    ] No existing commands found in stream
[2026-06-19 20:43:27,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:43:27,477.477 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 20:43:31,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:43:31,083.083 INFO    ] Checking for system updates...
[2026-06-19 20:43:31,122.122 INFO    ] 200
[2026-06-19 20:43:31,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:31,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:43:31,180.180 INFO    ] No update needed
[2026-06-19 20:43:31,183.183 INFO    ] Checking for camera pi updates...
[2026-06-19 20:43:31,221.221 INFO    ] 200
[2026-06-19 20:43:31,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:31,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:43:31,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:43:31,347.347 INFO    ] No camera update needed
[2026-06-19 20:43:31,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:43:31,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:43:31,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:43:31,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:43:33,407.407 INFO    ] ================================================
[2026-06-19 20:43:33,422.422 INFO    ] Launching Daemon at Fri Jun 19 20:43:33 IST 2026
[2026-06-19 20:43:33,433.433 INFO    ] ================================================
[2026-06-19 20:43:34,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:43:34
[2026-06-19 20:43:34,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:43:34,873.873 INFO    ] Initializing speech engine...
[2026-06-19 20:43:34,881.881 INFO    ] 2026-06-19 20:43:34
[2026-06-19 20:43:35,177.177 INFO    ] 2026-06-19 20:43:35
[2026-06-19 20:43:35,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:43:35,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:43:35,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:43:35,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:43:35,646.646 INFO    ] time= 19/06/2026 20:43:35
[2026-06-19 20:43:35,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:43:35,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:43:35,805.805 INFO    ] No existing commands found in stream
[2026-06-19 20:43:40,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:43:40,820.820 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 20:43:44,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:43:44,005.005 INFO    ] Checking for system updates...
[2026-06-19 20:43:44,042.042 INFO    ] 200
[2026-06-19 20:43:44,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:44,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:43:44,103.103 INFO    ] No update needed
[2026-06-19 20:43:44,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 20:43:44,141.141 INFO    ] 200
[2026-06-19 20:43:44,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:44,190.190 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:43:44,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:43:44,337.337 INFO    ] No camera update needed
[2026-06-19 20:43:44,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:43:44,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:43:44,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:43:44,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:43:46,395.395 INFO    ] ================================================
[2026-06-19 20:43:46,410.410 INFO    ] Launching Daemon at Fri Jun 19 20:43:46 IST 2026
[2026-06-19 20:43:46,421.421 INFO    ] ================================================
[2026-06-19 20:43:46,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:43:46
[2026-06-19 20:43:47,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:43:47,849.849 INFO    ] Initializing speech engine...
[2026-06-19 20:43:47,858.858 INFO    ] 2026-06-19 20:43:47
[2026-06-19 20:43:48,104.104 INFO    ] 2026-06-19 20:43:48
[2026-06-19 20:43:48,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:43:48,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:43:48,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:43:48,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:43:48,473.473 INFO    ] time= 19/06/2026 20:43:48
[2026-06-19 20:43:48,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:43:48,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:43:48,633.633 INFO    ] No existing commands found in stream
[2026-06-19 20:43:53,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:43:53,660.660 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 20:43:55,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:43:55,783.783 INFO    ] Checking for system updates...
[2026-06-19 20:43:55,822.822 INFO    ] 200
[2026-06-19 20:43:55,825.825 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:55,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:43:55,886.886 INFO    ] No update needed
[2026-06-19 20:43:55,888.888 INFO    ] Checking for camera pi updates...
[2026-06-19 20:43:55,922.922 INFO    ] 200
[2026-06-19 20:43:55,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:43:55,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:43:56,015.015 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:43:56,017.017 INFO    ] No camera update needed
[2026-06-19 20:43:56,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:43:56,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:43:56,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:43:56,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:43:58,073.073 INFO    ] ================================================
[2026-06-19 20:43:58,089.089 INFO    ] Launching Daemon at Fri Jun 19 20:43:58 IST 2026
[2026-06-19 20:43:58,099.099 INFO    ] ================================================
[2026-06-19 20:43:58,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:43:58
[2026-06-19 20:43:59,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:43:59,505.505 INFO    ] Initializing speech engine...
[2026-06-19 20:43:59,520.520 INFO    ] 2026-06-19 20:43:59
[2026-06-19 20:43:59,786.786 INFO    ] 2026-06-19 20:43:59
[2026-06-19 20:43:59,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:44:00,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:44:00,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:44:00,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:44:00,235.235 INFO    ] time= 19/06/2026 20:44:00
[2026-06-19 20:44:00,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:44:00,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:44:00,419.419 INFO    ] No existing commands found in stream
[2026-06-19 20:44:05,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:44:05,434.434 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-19 20:44:07,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:44:07,929.929 INFO    ] Checking for system updates...
[2026-06-19 20:44:07,965.965 INFO    ] 200
[2026-06-19 20:44:07,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:08,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:44:08,024.024 INFO    ] No update needed
[2026-06-19 20:44:08,026.026 INFO    ] Checking for camera pi updates...
[2026-06-19 20:44:08,064.064 INFO    ] 200
[2026-06-19 20:44:08,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:08,107.107 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:44:08,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:44:08,157.157 INFO    ] No camera update needed
[2026-06-19 20:44:08,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:44:08,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:44:08,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:44:08,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:44:10,214.214 INFO    ] ================================================
[2026-06-19 20:44:10,229.229 INFO    ] Launching Daemon at Fri Jun 19 20:44:10 IST 2026
[2026-06-19 20:44:10,240.240 INFO    ] ================================================
[2026-06-19 20:44:10,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:44:10
[2026-06-19 20:44:11,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:44:11,705.705 INFO    ] Initializing speech engine...
[2026-06-19 20:44:11,714.714 INFO    ] 2026-06-19 20:44:11
[2026-06-19 20:44:11,977.977 INFO    ] 2026-06-19 20:44:11
[2026-06-19 20:44:12,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:44:12,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:44:12,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:44:12,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:44:12,462.462 INFO    ] time= 19/06/2026 20:44:12
[2026-06-19 20:44:12,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:44:12,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:44:12,657.657 INFO    ] No existing commands found in stream
[2026-06-19 20:44:17,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:44:17,687.687 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 20:44:18,395.395 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:44:18,398.398 INFO    ] Checking for system updates...
[2026-06-19 20:44:18,434.434 INFO    ] 200
[2026-06-19 20:44:18,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:18,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:44:18,493.493 INFO    ] No update needed
[2026-06-19 20:44:18,495.495 INFO    ] Checking for camera pi updates...
[2026-06-19 20:44:18,533.533 INFO    ] 200
[2026-06-19 20:44:18,535.535 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:18,576.576 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:44:18,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:44:18,629.629 INFO    ] No camera update needed
[2026-06-19 20:44:18,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:44:18,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:44:18,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:44:18,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:44:20,684.684 INFO    ] ================================================
[2026-06-19 20:44:20,701.701 INFO    ] Launching Daemon at Fri Jun 19 20:44:20 IST 2026
[2026-06-19 20:44:20,712.712 INFO    ] ================================================
[2026-06-19 20:44:21,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:44:21
[2026-06-19 20:44:21,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:44:22,174.174 INFO    ] Initializing speech engine...
[2026-06-19 20:44:22,184.184 INFO    ] 2026-06-19 20:44:22
[2026-06-19 20:44:22,435.435 INFO    ] 2026-06-19 20:44:22
[2026-06-19 20:44:22,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:44:22,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:44:22,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:44:22,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:44:22,906.906 INFO    ] time= 19/06/2026 20:44:22
[2026-06-19 20:44:22,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:44:22,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:44:23,117.117 INFO    ] No existing commands found in stream
[2026-06-19 20:44:28,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:44:28,156.156 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 20:44:30,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:44:30,113.113 INFO    ] Checking for system updates...
[2026-06-19 20:44:30,155.155 INFO    ] 200
[2026-06-19 20:44:30,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:30,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:44:30,221.221 INFO    ] No update needed
[2026-06-19 20:44:30,223.223 INFO    ] Checking for camera pi updates...
[2026-06-19 20:44:30,260.260 INFO    ] 200
[2026-06-19 20:44:30,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:30,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:44:30,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:44:30,356.356 INFO    ] No camera update needed
[2026-06-19 20:44:30,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:44:30,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:44:30,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:44:30,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:44:32,419.419 INFO    ] ================================================
[2026-06-19 20:44:32,435.435 INFO    ] Launching Daemon at Fri Jun 19 20:44:32 IST 2026
[2026-06-19 20:44:32,447.447 INFO    ] ================================================
[2026-06-19 20:44:33,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:44:33
[2026-06-19 20:44:33,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:44:33,965.965 INFO    ] Initializing speech engine...
[2026-06-19 20:44:33,980.980 INFO    ] 2026-06-19 20:44:33
[2026-06-19 20:44:34,247.247 INFO    ] 2026-06-19 20:44:34
[2026-06-19 20:44:34,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:44:34,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:44:34,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:44:34,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:44:34,746.746 INFO    ] time= 19/06/2026 20:44:34
[2026-06-19 20:44:34,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:44:34,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:44:34,957.957 INFO    ] No existing commands found in stream
[2026-06-19 20:44:39,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:44:39,983.983 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 20:44:42,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:44:42,080.080 INFO    ] Checking for system updates...
[2026-06-19 20:44:42,121.121 INFO    ] 200
[2026-06-19 20:44:42,124.124 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:42,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:44:42,183.183 INFO    ] No update needed
[2026-06-19 20:44:42,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 20:44:42,221.221 INFO    ] 200
[2026-06-19 20:44:42,224.224 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:42,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:44:42,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:44:42,316.316 INFO    ] No camera update needed
[2026-06-19 20:44:42,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:44:42,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:44:42,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:44:42,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:44:44,371.371 INFO    ] ================================================
[2026-06-19 20:44:44,388.388 INFO    ] Launching Daemon at Fri Jun 19 20:44:44 IST 2026
[2026-06-19 20:44:44,399.399 INFO    ] ================================================
[2026-06-19 20:44:44,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:44:44
[2026-06-19 20:44:45,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:44:45,800.800 INFO    ] Initializing speech engine...
[2026-06-19 20:44:45,815.815 INFO    ] 2026-06-19 20:44:45
[2026-06-19 20:44:46,087.087 INFO    ] 2026-06-19 20:44:46
[2026-06-19 20:44:46,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:44:46,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:44:46,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:44:46,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:44:46,551.551 INFO    ] time= 19/06/2026 20:44:46
[2026-06-19 20:44:46,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:44:46,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:44:46,725.725 INFO    ] No existing commands found in stream
[2026-06-19 20:44:51,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:44:51,739.739 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-19 20:44:55,879.879 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:44:55,882.882 INFO    ] Checking for system updates...
[2026-06-19 20:44:55,922.922 INFO    ] 200
[2026-06-19 20:44:55,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:55,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:44:55,981.981 INFO    ] No update needed
[2026-06-19 20:44:55,983.983 INFO    ] Checking for camera pi updates...
[2026-06-19 20:44:56,018.018 INFO    ] 200
[2026-06-19 20:44:56,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:44:56,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:44:56,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:44:56,124.124 INFO    ] No camera update needed
[2026-06-19 20:44:56,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:44:56,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:44:56,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:44:56,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:44:58,180.180 INFO    ] ================================================
[2026-06-19 20:44:58,195.195 INFO    ] Launching Daemon at Fri Jun 19 20:44:58 IST 2026
[2026-06-19 20:44:58,207.207 INFO    ] ================================================
[2026-06-19 20:44:58,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:44:58
[2026-06-19 20:44:59,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:44:59,843.843 INFO    ] Initializing speech engine...
[2026-06-19 20:44:59,856.856 INFO    ] 2026-06-19 20:44:59
[2026-06-19 20:45:00,164.164 INFO    ] 2026-06-19 20:45:00
[2026-06-19 20:45:00,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:45:00,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:45:00,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:45:00,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:45:00,672.672 INFO    ] time= 19/06/2026 20:45:00
[2026-06-19 20:45:00,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:45:00,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:45:00,827.827 INFO    ] No existing commands found in stream
[2026-06-19 20:45:05,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:45:05,860.860 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 20:45:06,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:45:06,809.809 INFO    ] Checking for system updates...
[2026-06-19 20:45:06,847.847 INFO    ] 200
[2026-06-19 20:45:06,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:06,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:45:06,907.907 INFO    ] No update needed
[2026-06-19 20:45:06,909.909 INFO    ] Checking for camera pi updates...
[2026-06-19 20:45:06,944.944 INFO    ] 200
[2026-06-19 20:45:06,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:06,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:45:07,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:45:07,039.039 INFO    ] No camera update needed
[2026-06-19 20:45:07,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:45:07,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:45:07,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:45:07,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:45:09,095.095 INFO    ] ================================================
[2026-06-19 20:45:09,111.111 INFO    ] Launching Daemon at Fri Jun 19 20:45:09 IST 2026
[2026-06-19 20:45:09,122.122 INFO    ] ================================================
[2026-06-19 20:45:09,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:45:09
[2026-06-19 20:45:10,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:45:10,534.534 INFO    ] Initializing speech engine...
[2026-06-19 20:45:10,540.540 INFO    ] 2026-06-19 20:45:10
[2026-06-19 20:45:10,835.835 INFO    ] 2026-06-19 20:45:10
[2026-06-19 20:45:10,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:45:11,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:45:11,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:45:11,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:45:11,220.220 INFO    ] time= 19/06/2026 20:45:11
[2026-06-19 20:45:11,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:45:11,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:45:11,392.392 INFO    ] No existing commands found in stream
[2026-06-19 20:45:16,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:45:16,426.426 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 20:45:19,480.480 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:45:19,482.482 INFO    ] Checking for system updates...
[2026-06-19 20:45:19,522.522 INFO    ] 200
[2026-06-19 20:45:19,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:19,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:45:19,586.586 INFO    ] No update needed
[2026-06-19 20:45:19,589.589 INFO    ] Checking for camera pi updates...
[2026-06-19 20:45:19,626.626 INFO    ] 200
[2026-06-19 20:45:19,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:19,669.669 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:45:19,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:45:19,721.721 INFO    ] No camera update needed
[2026-06-19 20:45:19,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:45:19,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:45:19,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:45:19,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:45:21,777.777 INFO    ] ================================================
[2026-06-19 20:45:21,793.793 INFO    ] Launching Daemon at Fri Jun 19 20:45:21 IST 2026
[2026-06-19 20:45:21,804.804 INFO    ] ================================================
[2026-06-19 20:45:22,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:45:22
[2026-06-19 20:45:22,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:45:23,233.233 INFO    ] Initializing speech engine...
[2026-06-19 20:45:23,242.242 INFO    ] 2026-06-19 20:45:23
[2026-06-19 20:45:23,490.490 INFO    ] 2026-06-19 20:45:23
[2026-06-19 20:45:23,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:45:23,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:45:23,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:45:23,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:45:23,858.858 INFO    ] time= 19/06/2026 20:45:23
[2026-06-19 20:45:23,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:45:23,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:45:24,026.026 INFO    ] No existing commands found in stream
[2026-06-19 20:45:29,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:45:29,054.054 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 20:45:32,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:45:32,724.724 INFO    ] Checking for system updates...
[2026-06-19 20:45:32,762.762 INFO    ] 200
[2026-06-19 20:45:32,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:32,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:45:32,834.834 INFO    ] No update needed
[2026-06-19 20:45:32,837.837 INFO    ] Checking for camera pi updates...
[2026-06-19 20:45:32,873.873 INFO    ] 200
[2026-06-19 20:45:32,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:32,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:45:32,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:45:32,960.960 INFO    ] No camera update needed
[2026-06-19 20:45:32,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:45:32,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:45:32,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:45:32,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:45:35,031.031 INFO    ] ================================================
[2026-06-19 20:45:35,047.047 INFO    ] Launching Daemon at Fri Jun 19 20:45:35 IST 2026
[2026-06-19 20:45:35,058.058 INFO    ] ================================================
[2026-06-19 20:45:35,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:45:35
[2026-06-19 20:45:36,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:45:36,612.612 INFO    ] Initializing speech engine...
[2026-06-19 20:45:36,621.621 INFO    ] 2026-06-19 20:45:36
[2026-06-19 20:45:36,881.881 INFO    ] 2026-06-19 20:45:36
[2026-06-19 20:45:36,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:45:37,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:45:37,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:45:37,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:45:37,362.362 INFO    ] time= 19/06/2026 20:45:37
[2026-06-19 20:45:37,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:45:37,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:45:37,559.559 INFO    ] No existing commands found in stream
[2026-06-19 20:45:42,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:45:42,592.592 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 20:45:43,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:45:43,010.010 INFO    ] Checking for system updates...
[2026-06-19 20:45:43,050.050 INFO    ] 200
[2026-06-19 20:45:43,053.053 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:43,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:45:43,115.115 INFO    ] No update needed
[2026-06-19 20:45:43,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 20:45:43,155.155 INFO    ] 200
[2026-06-19 20:45:43,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:43,199.199 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:45:43,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:45:43,253.253 INFO    ] No camera update needed
[2026-06-19 20:45:43,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:45:43,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:45:43,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:45:43,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:45:45,310.310 INFO    ] ================================================
[2026-06-19 20:45:45,326.326 INFO    ] Launching Daemon at Fri Jun 19 20:45:45 IST 2026
[2026-06-19 20:45:45,337.337 INFO    ] ================================================
[2026-06-19 20:45:45,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:45:45
[2026-06-19 20:45:46,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:45:46,863.863 INFO    ] Initializing speech engine...
[2026-06-19 20:45:46,876.876 INFO    ] 2026-06-19 20:45:46
[2026-06-19 20:45:47,122.122 INFO    ] 2026-06-19 20:45:47
[2026-06-19 20:45:47,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:45:47,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:45:47,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:45:47,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:45:47,599.599 INFO    ] time= 19/06/2026 20:45:47
[2026-06-19 20:45:47,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:45:47,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:45:47,818.818 INFO    ] No existing commands found in stream
[2026-06-19 20:45:52,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:45:52,841.841 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 20:45:54,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:45:54,488.488 INFO    ] Checking for system updates...
[2026-06-19 20:45:54,524.524 INFO    ] 200
[2026-06-19 20:45:54,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:54,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:45:54,584.584 INFO    ] No update needed
[2026-06-19 20:45:54,587.587 INFO    ] Checking for camera pi updates...
[2026-06-19 20:45:54,626.626 INFO    ] 200
[2026-06-19 20:45:54,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:45:54,676.676 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:45:54,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:45:54,821.821 INFO    ] No camera update needed
[2026-06-19 20:45:54,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:45:54,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:45:54,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:45:54,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:45:56,882.882 INFO    ] ================================================
[2026-06-19 20:45:56,898.898 INFO    ] Launching Daemon at Fri Jun 19 20:45:56 IST 2026
[2026-06-19 20:45:56,909.909 INFO    ] ================================================
[2026-06-19 20:45:57,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:45:57
[2026-06-19 20:45:58,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:45:58,345.345 INFO    ] Initializing speech engine...
[2026-06-19 20:45:58,352.352 INFO    ] 2026-06-19 20:45:58
[2026-06-19 20:45:58,614.614 INFO    ] 2026-06-19 20:45:58
[2026-06-19 20:45:58,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:45:58,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:45:58,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:45:59,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:45:59,094.094 INFO    ] time= 19/06/2026 20:45:59
[2026-06-19 20:45:59,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:45:59,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:45:59,231.231 INFO    ] No existing commands found in stream
[2026-06-19 20:46:04,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:46:04,259.259 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 20:46:06,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:46:06,088.088 INFO    ] Checking for system updates...
[2026-06-19 20:46:06,124.124 INFO    ] 200
[2026-06-19 20:46:06,127.127 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:06,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:46:06,182.182 INFO    ] No update needed
[2026-06-19 20:46:06,184.184 INFO    ] Checking for camera pi updates...
[2026-06-19 20:46:06,238.238 INFO    ] 200
[2026-06-19 20:46:06,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:06,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:46:06,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:46:06,368.368 INFO    ] No camera update needed
[2026-06-19 20:46:06,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:46:06,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:46:06,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:46:06,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:46:08,425.425 INFO    ] ================================================
[2026-06-19 20:46:08,441.441 INFO    ] Launching Daemon at Fri Jun 19 20:46:08 IST 2026
[2026-06-19 20:46:08,452.452 INFO    ] ================================================
[2026-06-19 20:46:09,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:46:09
[2026-06-19 20:46:09,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:46:09,915.915 INFO    ] Initializing speech engine...
[2026-06-19 20:46:09,924.924 INFO    ] 2026-06-19 20:46:09
[2026-06-19 20:46:10,190.190 INFO    ] 2026-06-19 20:46:10
[2026-06-19 20:46:10,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:46:10,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:46:10,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:46:10,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:46:10,619.619 INFO    ] time= 19/06/2026 20:46:10
[2026-06-19 20:46:10,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:46:10,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:46:10,714.714 INFO    ] No existing commands found in stream
[2026-06-19 20:46:15,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:46:15,727.727 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 20:46:18,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:46:18,913.913 INFO    ] Checking for system updates...
[2026-06-19 20:46:18,951.951 INFO    ] 200
[2026-06-19 20:46:18,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:19,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:46:19,009.009 INFO    ] No update needed
[2026-06-19 20:46:19,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 20:46:19,045.045 INFO    ] 200
[2026-06-19 20:46:19,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:19,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:46:19,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:46:19,137.137 INFO    ] No camera update needed
[2026-06-19 20:46:19,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:46:19,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:46:19,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:46:19,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:46:21,192.192 INFO    ] ================================================
[2026-06-19 20:46:21,208.208 INFO    ] Launching Daemon at Fri Jun 19 20:46:21 IST 2026
[2026-06-19 20:46:21,220.220 INFO    ] ================================================
[2026-06-19 20:46:21,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:46:21
[2026-06-19 20:46:22,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:46:22,689.689 INFO    ] Initializing speech engine...
[2026-06-19 20:46:22,699.699 INFO    ] 2026-06-19 20:46:22
[2026-06-19 20:46:22,964.964 INFO    ] 2026-06-19 20:46:22
[2026-06-19 20:46:23,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:46:23,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:46:23,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:46:23,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:46:23,513.513 INFO    ] time= 19/06/2026 20:46:23
[2026-06-19 20:46:23,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:46:23,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:46:23,659.659 INFO    ] No existing commands found in stream
[2026-06-19 20:46:28,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:46:28,689.689 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 20:46:31,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:46:31,043.043 INFO    ] Checking for system updates...
[2026-06-19 20:46:31,081.081 INFO    ] 200
[2026-06-19 20:46:31,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:31,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:46:31,141.141 INFO    ] No update needed
[2026-06-19 20:46:31,144.144 INFO    ] Checking for camera pi updates...
[2026-06-19 20:46:31,179.179 INFO    ] 200
[2026-06-19 20:46:31,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:31,226.226 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:46:31,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:46:31,270.270 INFO    ] No camera update needed
[2026-06-19 20:46:31,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:46:31,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:46:31,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:46:31,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:46:33,332.332 INFO    ] ================================================
[2026-06-19 20:46:33,348.348 INFO    ] Launching Daemon at Fri Jun 19 20:46:33 IST 2026
[2026-06-19 20:46:33,365.365 INFO    ] ================================================
[2026-06-19 20:46:34,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:46:34
[2026-06-19 20:46:34,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:46:35,067.067 INFO    ] Initializing speech engine...
[2026-06-19 20:46:35,080.080 INFO    ] 2026-06-19 20:46:35
[2026-06-19 20:46:35,398.398 INFO    ] 2026-06-19 20:46:35
[2026-06-19 20:46:35,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:46:35,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:46:35,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:46:35,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:46:35,814.814 INFO    ] time= 19/06/2026 20:46:35
[2026-06-19 20:46:35,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:46:35,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:46:35,890.890 INFO    ] No existing commands found in stream
[2026-06-19 20:46:40,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:46:40,904.904 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 20:46:43,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:46:43,695.695 INFO    ] Checking for system updates...
[2026-06-19 20:46:43,733.733 INFO    ] 200
[2026-06-19 20:46:43,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:43,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:46:43,798.798 INFO    ] No update needed
[2026-06-19 20:46:43,800.800 INFO    ] Checking for camera pi updates...
[2026-06-19 20:46:43,840.840 INFO    ] 200
[2026-06-19 20:46:43,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:43,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:46:43,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:46:43,943.943 INFO    ] No camera update needed
[2026-06-19 20:46:43,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:46:43,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:46:43,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:46:43,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:46:46,004.004 INFO    ] ================================================
[2026-06-19 20:46:46,020.020 INFO    ] Launching Daemon at Fri Jun 19 20:46:46 IST 2026
[2026-06-19 20:46:46,032.032 INFO    ] ================================================
[2026-06-19 20:46:46,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:46:46
[2026-06-19 20:46:47,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:46:47,457.457 INFO    ] Initializing speech engine...
[2026-06-19 20:46:47,466.466 INFO    ] 2026-06-19 20:46:47
[2026-06-19 20:46:47,713.713 INFO    ] 2026-06-19 20:46:47
[2026-06-19 20:46:47,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:46:47,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:46:47,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:46:48,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:46:48,134.134 INFO    ] time= 19/06/2026 20:46:48
[2026-06-19 20:46:48,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:46:48,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:46:48,221.221 INFO    ] No existing commands found in stream
[2026-06-19 20:46:53,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:46:53,237.237 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 20:46:55,413.413 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:46:55,417.417 INFO    ] Checking for system updates...
[2026-06-19 20:46:55,457.457 INFO    ] 200
[2026-06-19 20:46:55,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:55,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:46:55,515.515 INFO    ] No update needed
[2026-06-19 20:46:55,517.517 INFO    ] Checking for camera pi updates...
[2026-06-19 20:46:55,551.551 INFO    ] 200
[2026-06-19 20:46:55,554.554 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:46:55,600.600 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:46:55,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:46:55,647.647 INFO    ] No camera update needed
[2026-06-19 20:46:55,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:46:55,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:46:55,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:46:55,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:46:57,703.703 INFO    ] ================================================
[2026-06-19 20:46:57,720.720 INFO    ] Launching Daemon at Fri Jun 19 20:46:57 IST 2026
[2026-06-19 20:46:57,732.732 INFO    ] ================================================
[2026-06-19 20:46:58,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:46:58
[2026-06-19 20:46:58,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:46:59,164.164 INFO    ] Initializing speech engine...
[2026-06-19 20:46:59,174.174 INFO    ] 2026-06-19 20:46:59
[2026-06-19 20:46:59,427.427 INFO    ] 2026-06-19 20:46:59
[2026-06-19 20:46:59,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:46:59,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:46:59,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:46:59,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:46:59,887.887 INFO    ] time= 19/06/2026 20:46:59
[2026-06-19 20:46:59,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:46:59,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:47:00,043.043 INFO    ] No existing commands found in stream
[2026-06-19 20:47:05,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:47:05,058.058 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 20:47:06,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:47:06,371.371 INFO    ] Checking for system updates...
[2026-06-19 20:47:06,408.408 INFO    ] 200
[2026-06-19 20:47:06,411.411 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:06,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:47:06,467.467 INFO    ] No update needed
[2026-06-19 20:47:06,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 20:47:06,505.505 INFO    ] 200
[2026-06-19 20:47:06,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:06,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:47:06,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:47:06,601.601 INFO    ] No camera update needed
[2026-06-19 20:47:06,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:47:06,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:47:06,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:47:06,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:47:08,658.658 INFO    ] ================================================
[2026-06-19 20:47:08,673.673 INFO    ] Launching Daemon at Fri Jun 19 20:47:08 IST 2026
[2026-06-19 20:47:08,684.684 INFO    ] ================================================
[2026-06-19 20:47:09,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:47:09
[2026-06-19 20:47:09,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:47:10,289.289 INFO    ] Initializing speech engine...
[2026-06-19 20:47:10,297.297 INFO    ] 2026-06-19 20:47:10
[2026-06-19 20:47:10,593.593 INFO    ] 2026-06-19 20:47:10
[2026-06-19 20:47:10,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:47:10,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:47:10,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:47:11,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:47:11,079.079 INFO    ] time= 19/06/2026 20:47:11
[2026-06-19 20:47:11,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:47:11,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:47:11,291.291 INFO    ] No existing commands found in stream
[2026-06-19 20:47:16,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:47:16,321.321 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 20:47:20,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:47:20,346.346 INFO    ] Checking for system updates...
[2026-06-19 20:47:20,382.382 INFO    ] 200
[2026-06-19 20:47:20,385.385 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:20,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:47:20,449.449 INFO    ] No update needed
[2026-06-19 20:47:20,451.451 INFO    ] Checking for camera pi updates...
[2026-06-19 20:47:20,490.490 INFO    ] 200
[2026-06-19 20:47:20,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:20,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:47:20,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:47:20,581.581 INFO    ] No camera update needed
[2026-06-19 20:47:20,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:47:20,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:47:20,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:47:20,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:47:22,638.638 INFO    ] ================================================
[2026-06-19 20:47:22,654.654 INFO    ] Launching Daemon at Fri Jun 19 20:47:22 IST 2026
[2026-06-19 20:47:22,665.665 INFO    ] ================================================
[2026-06-19 20:47:23,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:47:23
[2026-06-19 20:47:23,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:47:24,097.097 INFO    ] Initializing speech engine...
[2026-06-19 20:47:24,104.104 INFO    ] 2026-06-19 20:47:24
[2026-06-19 20:47:24,357.357 INFO    ] 2026-06-19 20:47:24
[2026-06-19 20:47:24,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:47:24,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:47:24,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:47:24,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:47:24,817.817 INFO    ] time= 19/06/2026 20:47:24
[2026-06-19 20:47:24,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:47:24,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:47:25,006.006 INFO    ] No existing commands found in stream
[2026-06-19 20:47:30,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:47:30,044.044 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 20:47:33,421.421 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:47:33,424.424 INFO    ] Checking for system updates...
[2026-06-19 20:47:33,464.464 INFO    ] 200
[2026-06-19 20:47:33,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:33,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:47:33,525.525 INFO    ] No update needed
[2026-06-19 20:47:33,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 20:47:33,561.561 INFO    ] 200
[2026-06-19 20:47:33,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:33,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:47:33,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:47:33,652.652 INFO    ] No camera update needed
[2026-06-19 20:47:33,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:47:33,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:47:33,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:47:33,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:47:35,708.708 INFO    ] ================================================
[2026-06-19 20:47:35,723.723 INFO    ] Launching Daemon at Fri Jun 19 20:47:35 IST 2026
[2026-06-19 20:47:35,734.734 INFO    ] ================================================
[2026-06-19 20:47:36,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:47:36
[2026-06-19 20:47:36,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:47:37,176.176 INFO    ] Initializing speech engine...
[2026-06-19 20:47:37,184.184 INFO    ] 2026-06-19 20:47:37
[2026-06-19 20:47:37,436.436 INFO    ] 2026-06-19 20:47:37
[2026-06-19 20:47:37,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:47:37,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:47:37,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:47:37,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:47:37,914.914 INFO    ] time= 19/06/2026 20:47:37
[2026-06-19 20:47:37,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:47:38,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:47:38,073.073 INFO    ] No existing commands found in stream
[2026-06-19 20:47:43,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:47:43,088.088 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 20:47:44,205.205 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:47:44,207.207 INFO    ] Checking for system updates...
[2026-06-19 20:47:44,248.248 INFO    ] 200
[2026-06-19 20:47:44,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:44,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:47:44,307.307 INFO    ] No update needed
[2026-06-19 20:47:44,309.309 INFO    ] Checking for camera pi updates...
[2026-06-19 20:47:44,344.344 INFO    ] 200
[2026-06-19 20:47:44,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:44,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:47:44,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:47:44,440.440 INFO    ] No camera update needed
[2026-06-19 20:47:44,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:47:44,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:47:44,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:47:44,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:47:46,496.496 INFO    ] ================================================
[2026-06-19 20:47:46,512.512 INFO    ] Launching Daemon at Fri Jun 19 20:47:46 IST 2026
[2026-06-19 20:47:46,523.523 INFO    ] ================================================
[2026-06-19 20:47:47,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:47:47
[2026-06-19 20:47:47,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:47:48,062.062 INFO    ] Initializing speech engine...
[2026-06-19 20:47:48,086.086 INFO    ] 2026-06-19 20:47:48
[2026-06-19 20:47:48,344.344 INFO    ] 2026-06-19 20:47:48
[2026-06-19 20:47:48,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:47:48,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:47:48,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:47:48,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:47:48,724.724 INFO    ] time= 19/06/2026 20:47:48
[2026-06-19 20:47:48,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:47:48,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:47:48,883.883 INFO    ] No existing commands found in stream
[2026-06-19 20:47:53,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:47:53,911.911 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 20:47:58,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:47:58,303.303 INFO    ] Checking for system updates...
[2026-06-19 20:47:58,339.339 INFO    ] 200
[2026-06-19 20:47:58,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:58,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:47:58,399.399 INFO    ] No update needed
[2026-06-19 20:47:58,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 20:47:58,436.436 INFO    ] 200
[2026-06-19 20:47:58,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:47:58,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:47:58,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:47:58,624.624 INFO    ] No camera update needed
[2026-06-19 20:47:58,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:47:58,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:47:58,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:47:58,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:48:00,680.680 INFO    ] ================================================
[2026-06-19 20:48:00,696.696 INFO    ] Launching Daemon at Fri Jun 19 20:48:00 IST 2026
[2026-06-19 20:48:00,707.707 INFO    ] ================================================
[2026-06-19 20:48:01,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:48:01
[2026-06-19 20:48:02,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:48:02,439.439 INFO    ] Initializing speech engine...
[2026-06-19 20:48:02,450.450 INFO    ] 2026-06-19 20:48:02
[2026-06-19 20:48:02,814.814 INFO    ] 2026-06-19 20:48:02
[2026-06-19 20:48:02,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:48:03,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:48:03,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:48:03,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:48:03,227.227 INFO    ] time= 19/06/2026 20:48:03
[2026-06-19 20:48:03,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:48:03,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:48:03,428.428 INFO    ] No existing commands found in stream
[2026-06-19 20:48:08,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:48:08,444.444 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-19 20:48:11,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:48:11,859.859 INFO    ] Checking for system updates...
[2026-06-19 20:48:11,895.895 INFO    ] 200
[2026-06-19 20:48:11,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:48:11,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:48:11,954.954 INFO    ] No update needed
[2026-06-19 20:48:11,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 20:48:11,992.992 INFO    ] 200
[2026-06-19 20:48:11,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:48:12,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:48:12,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:48:12,081.081 INFO    ] No camera update needed
[2026-06-19 20:48:12,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:48:12,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:48:12,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:48:12,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:48:14,137.137 INFO    ] ================================================
[2026-06-19 20:48:14,153.153 INFO    ] Launching Daemon at Fri Jun 19 20:48:14 IST 2026
[2026-06-19 20:48:14,165.165 INFO    ] ================================================
[2026-06-19 20:48:14,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:48:14
[2026-06-19 20:48:15,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:48:15,667.667 INFO    ] Initializing speech engine...
[2026-06-19 20:48:15,677.677 INFO    ] 2026-06-19 20:48:15
[2026-06-19 20:48:15,927.927 INFO    ] 2026-06-19 20:48:15
[2026-06-19 20:48:15,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:48:16,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:48:16,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:48:16,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:48:16,298.298 INFO    ] time= 19/06/2026 20:48:16
[2026-06-19 20:48:16,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:48:16,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:48:16,469.469 INFO    ] No existing commands found in stream
[2026-06-19 20:48:21,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:48:21,497.497 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 20:48:25,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:48:25,363.363 INFO    ] Checking for system updates...
[2026-06-19 20:48:25,400.400 INFO    ] 200
[2026-06-19 20:48:25,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:48:25,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:48:25,460.460 INFO    ] No update needed
[2026-06-19 20:48:25,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 20:48:25,501.501 INFO    ] 200
[2026-06-19 20:48:25,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:48:25,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:48:25,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:48:25,609.609 INFO    ] No camera update needed
[2026-06-19 20:48:25,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:48:25,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:48:25,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:48:25,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:48:27,665.665 INFO    ] ================================================
[2026-06-19 20:48:27,682.682 INFO    ] Launching Daemon at Fri Jun 19 20:48:27 IST 2026
[2026-06-19 20:48:27,693.693 INFO    ] ================================================
[2026-06-19 20:48:28,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:48:28
[2026-06-19 20:48:28,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:48:29,128.128 INFO    ] Initializing speech engine...
[2026-06-19 20:48:29,151.151 INFO    ] 2026-06-19 20:48:29
[2026-06-19 20:48:29,407.407 INFO    ] 2026-06-19 20:48:29
[2026-06-19 20:48:29,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:48:29,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:48:29,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:48:29,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:48:29,876.876 INFO    ] time= 19/06/2026 20:48:29
[2026-06-19 20:48:29,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:48:29,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:48:30,053.053 INFO    ] No existing commands found in stream
[2026-06-19 20:48:35,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:48:35,068.068 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 20:48:38,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:48:38,578.578 INFO    ] Checking for system updates...
[2026-06-19 20:48:38,615.615 INFO    ] 200
[2026-06-19 20:48:38,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:48:38,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:48:38,681.681 INFO    ] No update needed
[2026-06-19 20:48:38,683.683 INFO    ] Checking for camera pi updates...
[2026-06-19 20:48:38,717.717 INFO    ] 200
[2026-06-19 20:48:38,719.719 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:48:38,760.760 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:48:38,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:48:38,805.805 INFO    ] No camera update needed
[2026-06-19 20:48:38,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:48:38,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:48:38,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:48:38,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:48:40,862.862 INFO    ] ================================================
[2026-06-19 20:48:40,877.877 INFO    ] Launching Daemon at Fri Jun 19 20:48:40 IST 2026
[2026-06-19 20:48:40,889.889 INFO    ] ================================================
[2026-06-19 20:48:41,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:48:41
[2026-06-19 20:48:42,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:48:42,335.335 INFO    ] Initializing speech engine...
[2026-06-19 20:48:42,342.342 INFO    ] 2026-06-19 20:48:42
[2026-06-19 20:48:42,601.601 INFO    ] 2026-06-19 20:48:42
[2026-06-19 20:48:42,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:48:42,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:48:42,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:48:43,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:48:43,144.144 INFO    ] time= 19/06/2026 20:48:43
[2026-06-19 20:48:43,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:48:43,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:48:43,278.278 INFO    ] No existing commands found in stream
[2026-06-19 20:48:48,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:48:48,309.309 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 20:48:51,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:48:51,782.782 INFO    ] Checking for system updates...
[2026-06-19 20:48:51,819.819 INFO    ] 200
[2026-06-19 20:48:51,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:48:51,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:48:51,877.877 INFO    ] No update needed
[2026-06-19 20:48:51,879.879 INFO    ] Checking for camera pi updates...
[2026-06-19 20:48:51,913.913 INFO    ] 200
[2026-06-19 20:48:51,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:48:51,962.962 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:48:52,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:48:52,008.008 INFO    ] No camera update needed
[2026-06-19 20:48:52,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:48:52,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:48:52,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:48:52,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:48:54,066.066 INFO    ] ================================================
[2026-06-19 20:48:54,083.083 INFO    ] Launching Daemon at Fri Jun 19 20:48:54 IST 2026
[2026-06-19 20:48:54,096.096 INFO    ] ================================================
[2026-06-19 20:48:54,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:48:54
[2026-06-19 20:48:55,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:48:55,769.769 INFO    ] Initializing speech engine...
[2026-06-19 20:48:55,784.784 INFO    ] 2026-06-19 20:48:55
[2026-06-19 20:48:56,066.066 INFO    ] 2026-06-19 20:48:56
[2026-06-19 20:48:56,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:48:56,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:48:56,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:48:56,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:48:56,529.529 INFO    ] time= 19/06/2026 20:48:56
[2026-06-19 20:48:56,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:48:56,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:48:56,672.672 INFO    ] No existing commands found in stream
[2026-06-19 20:49:01,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:49:01,702.702 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 20:49:04,687.687 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:49:04,690.690 INFO    ] Checking for system updates...
[2026-06-19 20:49:04,731.731 INFO    ] 200
[2026-06-19 20:49:04,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:04,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:49:04,792.792 INFO    ] No update needed
[2026-06-19 20:49:04,795.795 INFO    ] Checking for camera pi updates...
[2026-06-19 20:49:04,835.835 INFO    ] 200
[2026-06-19 20:49:04,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:04,881.881 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:49:04,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:49:04,920.920 INFO    ] No camera update needed
[2026-06-19 20:49:04,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:49:04,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:49:04,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:49:04,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:49:06,982.982 INFO    ] ================================================
[2026-06-19 20:49:07,998.998 INFO    ] Launching Daemon at Fri Jun 19 20:49:06 IST 2026
[2026-06-19 20:49:07,009.009 INFO    ] ================================================
[2026-06-19 20:49:07,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:49:07
[2026-06-19 20:49:08,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:49:08,524.524 INFO    ] Initializing speech engine...
[2026-06-19 20:49:08,530.530 INFO    ] 2026-06-19 20:49:08
[2026-06-19 20:49:08,792.792 INFO    ] 2026-06-19 20:49:08
[2026-06-19 20:49:08,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:49:09,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:49:09,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:49:09,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:49:09,242.242 INFO    ] time= 19/06/2026 20:49:09
[2026-06-19 20:49:09,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:49:09,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:49:09,383.383 INFO    ] No existing commands found in stream
[2026-06-19 20:49:14,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:49:14,398.398 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-19 20:49:15,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:49:15,606.606 INFO    ] Checking for system updates...
[2026-06-19 20:49:15,642.642 INFO    ] 200
[2026-06-19 20:49:15,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:15,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:49:15,704.704 INFO    ] No update needed
[2026-06-19 20:49:15,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 20:49:15,741.741 INFO    ] 200
[2026-06-19 20:49:15,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:15,786.786 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:49:15,816.816 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:49:15,818.818 INFO    ] No camera update needed
[2026-06-19 20:49:15,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:49:15,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:49:15,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:49:15,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:49:17,874.874 INFO    ] ================================================
[2026-06-19 20:49:17,890.890 INFO    ] Launching Daemon at Fri Jun 19 20:49:17 IST 2026
[2026-06-19 20:49:17,901.901 INFO    ] ================================================
[2026-06-19 20:49:18,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:49:18
[2026-06-19 20:49:19,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:49:19,326.326 INFO    ] Initializing speech engine...
[2026-06-19 20:49:19,345.345 INFO    ] 2026-06-19 20:49:19
[2026-06-19 20:49:19,621.621 INFO    ] 2026-06-19 20:49:19
[2026-06-19 20:49:19,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:49:19,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:49:19,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:49:19,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:49:20,003.003 INFO    ] time= 19/06/2026 20:49:19
[2026-06-19 20:49:20,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:49:20,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:49:20,129.129 INFO    ] No existing commands found in stream
[2026-06-19 20:49:25,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:49:25,145.145 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 20:49:28,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:49:28,183.183 INFO    ] Checking for system updates...
[2026-06-19 20:49:28,223.223 INFO    ] 200
[2026-06-19 20:49:28,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:28,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:49:28,288.288 INFO    ] No update needed
[2026-06-19 20:49:28,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 20:49:28,329.329 INFO    ] 200
[2026-06-19 20:49:28,331.331 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:28,372.372 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:49:28,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:49:28,407.407 INFO    ] No camera update needed
[2026-06-19 20:49:28,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:49:28,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:49:28,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:49:28,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:49:30,463.463 INFO    ] ================================================
[2026-06-19 20:49:30,479.479 INFO    ] Launching Daemon at Fri Jun 19 20:49:30 IST 2026
[2026-06-19 20:49:30,490.490 INFO    ] ================================================
[2026-06-19 20:49:31,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:49:31
[2026-06-19 20:49:31,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:49:32,013.013 INFO    ] Initializing speech engine...
[2026-06-19 20:49:32,022.022 INFO    ] 2026-06-19 20:49:32
[2026-06-19 20:49:32,286.286 INFO    ] 2026-06-19 20:49:32
[2026-06-19 20:49:32,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:49:32,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:49:32,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:49:32,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:49:32,647.647 INFO    ] time= 19/06/2026 20:49:32
[2026-06-19 20:49:32,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:49:32,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:49:32,760.760 INFO    ] No existing commands found in stream
[2026-06-19 20:49:37,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:49:37,775.775 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 20:49:38,296.296 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:49:38,298.298 INFO    ] Checking for system updates...
[2026-06-19 20:49:38,336.336 INFO    ] 200
[2026-06-19 20:49:38,339.339 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:38,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:49:38,393.393 INFO    ] No update needed
[2026-06-19 20:49:38,396.396 INFO    ] Checking for camera pi updates...
[2026-06-19 20:49:38,430.430 INFO    ] 200
[2026-06-19 20:49:38,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:38,472.472 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:49:38,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:49:38,528.528 INFO    ] No camera update needed
[2026-06-19 20:49:38,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:49:38,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:49:38,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:49:38,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:49:40,587.587 INFO    ] ================================================
[2026-06-19 20:49:40,612.612 INFO    ] Launching Daemon at Fri Jun 19 20:49:40 IST 2026
[2026-06-19 20:49:40,623.623 INFO    ] ================================================
[2026-06-19 20:49:41,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:49:41
[2026-06-19 20:49:41,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:49:42,259.259 INFO    ] Initializing speech engine...
[2026-06-19 20:49:42,267.267 INFO    ] 2026-06-19 20:49:42
[2026-06-19 20:49:42,518.518 INFO    ] 2026-06-19 20:49:42
[2026-06-19 20:49:42,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:49:42,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:49:42,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:49:42,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:49:42,984.984 INFO    ] time= 19/06/2026 20:49:42
[2026-06-19 20:49:43,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:49:43,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:49:43,152.152 INFO    ] No existing commands found in stream
[2026-06-19 20:49:48,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:49:48,167.167 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 20:49:50,279.279 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:49:50,282.282 INFO    ] Checking for system updates...
[2026-06-19 20:49:50,318.318 INFO    ] 200
[2026-06-19 20:49:50,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:50,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:49:50,377.377 INFO    ] No update needed
[2026-06-19 20:49:50,379.379 INFO    ] Checking for camera pi updates...
[2026-06-19 20:49:50,414.414 INFO    ] 200
[2026-06-19 20:49:50,416.416 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:49:50,458.458 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:49:50,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:49:50,492.492 INFO    ] No camera update needed
[2026-06-19 20:49:50,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:49:50,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:49:50,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:49:50,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:49:52,549.549 INFO    ] ================================================
[2026-06-19 20:49:52,565.565 INFO    ] Launching Daemon at Fri Jun 19 20:49:52 IST 2026
[2026-06-19 20:49:52,577.577 INFO    ] ================================================
[2026-06-19 20:49:53,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:49:53
[2026-06-19 20:49:53,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:49:53,997.997 INFO    ] Initializing speech engine...
[2026-06-19 20:49:54,018.018 INFO    ] 2026-06-19 20:49:54
[2026-06-19 20:49:54,275.275 INFO    ] 2026-06-19 20:49:54
[2026-06-19 20:49:54,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:49:54,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:49:54,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:49:54,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:49:54,747.747 INFO    ] time= 19/06/2026 20:49:54
[2026-06-19 20:49:54,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:49:54,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:49:54,908.908 INFO    ] No existing commands found in stream
[2026-06-19 20:49:59,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:49:59,948.948 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 20:50:00,892.892 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:50:00,895.895 INFO    ] Checking for system updates...
[2026-06-19 20:50:00,938.938 INFO    ] 200
[2026-06-19 20:50:00,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:01,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:50:01,010.010 INFO    ] No update needed
[2026-06-19 20:50:01,014.014 INFO    ] Checking for camera pi updates...
[2026-06-19 20:50:01,085.085 INFO    ] 200
[2026-06-19 20:50:01,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:01,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:50:01,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:50:01,513.513 INFO    ] No camera update needed
[2026-06-19 20:50:01,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:50:01,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:50:01,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:50:01,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:50:03,598.598 INFO    ] ================================================
[2026-06-19 20:50:03,615.615 INFO    ] Launching Daemon at Fri Jun 19 20:50:03 IST 2026
[2026-06-19 20:50:03,626.626 INFO    ] ================================================
[2026-06-19 20:50:04,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:50:04
[2026-06-19 20:50:04,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:50:05,088.088 INFO    ] Initializing speech engine...
[2026-06-19 20:50:05,099.099 INFO    ] 2026-06-19 20:50:05
[2026-06-19 20:50:05,347.347 INFO    ] 2026-06-19 20:50:05
[2026-06-19 20:50:05,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:50:05,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:50:05,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:50:05,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:50:05,839.839 INFO    ] time= 19/06/2026 20:50:05
[2026-06-19 20:50:05,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:50:05,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:50:05,993.993 INFO    ] No existing commands found in stream
[2026-06-19 20:50:11,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:50:11,025.025 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 20:50:11,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:50:11,719.719 INFO    ] Checking for system updates...
[2026-06-19 20:50:11,756.756 INFO    ] 200
[2026-06-19 20:50:11,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:11,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:50:11,814.814 INFO    ] No update needed
[2026-06-19 20:50:11,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 20:50:11,854.854 INFO    ] 200
[2026-06-19 20:50:11,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:11,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:50:11,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:50:11,932.932 INFO    ] No camera update needed
[2026-06-19 20:50:11,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:50:11,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:50:11,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:50:11,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:50:13,988.988 INFO    ] ================================================
[2026-06-19 20:50:14,003.003 INFO    ] Launching Daemon at Fri Jun 19 20:50:13 IST 2026
[2026-06-19 20:50:14,014.014 INFO    ] ================================================
[2026-06-19 20:50:14,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:50:14
[2026-06-19 20:50:15,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:50:15,415.415 INFO    ] Initializing speech engine...
[2026-06-19 20:50:15,430.430 INFO    ] 2026-06-19 20:50:15
[2026-06-19 20:50:15,697.697 INFO    ] 2026-06-19 20:50:15
[2026-06-19 20:50:15,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:50:15,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:50:15,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:50:16,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:50:16,148.148 INFO    ] time= 19/06/2026 20:50:16
[2026-06-19 20:50:16,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:50:16,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:50:16,351.351 INFO    ] No existing commands found in stream
[2026-06-19 20:50:21,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:50:21,391.391 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 20:50:22,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:50:22,058.058 INFO    ] Checking for system updates...
[2026-06-19 20:50:22,095.095 INFO    ] 200
[2026-06-19 20:50:22,098.098 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:22,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:50:22,160.160 INFO    ] No update needed
[2026-06-19 20:50:22,162.162 INFO    ] Checking for camera pi updates...
[2026-06-19 20:50:22,200.200 INFO    ] 200
[2026-06-19 20:50:22,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:22,247.247 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:50:22,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:50:22,291.291 INFO    ] No camera update needed
[2026-06-19 20:50:22,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:50:22,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:50:22,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:50:22,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:50:24,346.346 INFO    ] ================================================
[2026-06-19 20:50:24,362.362 INFO    ] Launching Daemon at Fri Jun 19 20:50:24 IST 2026
[2026-06-19 20:50:24,374.374 INFO    ] ================================================
[2026-06-19 20:50:25,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:50:25
[2026-06-19 20:50:25,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:50:26,019.019 INFO    ] Initializing speech engine...
[2026-06-19 20:50:26,029.029 INFO    ] 2026-06-19 20:50:26
[2026-06-19 20:50:26,319.319 INFO    ] 2026-06-19 20:50:26
[2026-06-19 20:50:26,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:50:26,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:50:26,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:50:26,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:50:26,815.815 INFO    ] time= 19/06/2026 20:50:26
[2026-06-19 20:50:26,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:50:26,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:50:27,015.015 INFO    ] No existing commands found in stream
[2026-06-19 20:50:32,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:50:32,048.048 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 20:50:32,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:50:32,497.497 INFO    ] Checking for system updates...
[2026-06-19 20:50:32,545.545 INFO    ] 200
[2026-06-19 20:50:32,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:32,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:50:32,606.606 INFO    ] No update needed
[2026-06-19 20:50:32,609.609 INFO    ] Checking for camera pi updates...
[2026-06-19 20:50:32,649.649 INFO    ] 200
[2026-06-19 20:50:32,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:32,695.695 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:50:32,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:50:32,731.731 INFO    ] No camera update needed
[2026-06-19 20:50:32,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:50:32,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:50:32,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:50:32,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:50:34,791.791 INFO    ] ================================================
[2026-06-19 20:50:34,807.807 INFO    ] Launching Daemon at Fri Jun 19 20:50:34 IST 2026
[2026-06-19 20:50:34,819.819 INFO    ] ================================================
[2026-06-19 20:50:35,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:50:35
[2026-06-19 20:50:35,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:50:36,278.278 INFO    ] Initializing speech engine...
[2026-06-19 20:50:36,284.284 INFO    ] 2026-06-19 20:50:36
[2026-06-19 20:50:36,533.533 INFO    ] 2026-06-19 20:50:36
[2026-06-19 20:50:36,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:50:36,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:50:36,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:50:36,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:50:36,907.907 INFO    ] time= 19/06/2026 20:50:36
[2026-06-19 20:50:36,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:50:36,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:50:37,085.085 INFO    ] No existing commands found in stream
[2026-06-19 20:50:42,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:50:42,113.113 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 20:50:44,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:50:44,992.992 INFO    ] Checking for system updates...
[2026-06-19 20:50:45,032.032 INFO    ] 200
[2026-06-19 20:50:45,035.035 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:45,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:50:45,091.091 INFO    ] No update needed
[2026-06-19 20:50:45,094.094 INFO    ] Checking for camera pi updates...
[2026-06-19 20:50:45,128.128 INFO    ] 200
[2026-06-19 20:50:45,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:45,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:50:45,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:50:45,229.229 INFO    ] No camera update needed
[2026-06-19 20:50:45,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:50:45,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:50:45,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:50:45,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:50:47,286.286 INFO    ] ================================================
[2026-06-19 20:50:47,302.302 INFO    ] Launching Daemon at Fri Jun 19 20:50:47 IST 2026
[2026-06-19 20:50:47,313.313 INFO    ] ================================================
[2026-06-19 20:50:47,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:50:47
[2026-06-19 20:50:48,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:50:48,773.773 INFO    ] Initializing speech engine...
[2026-06-19 20:50:48,796.796 INFO    ] 2026-06-19 20:50:48
[2026-06-19 20:50:49,052.052 INFO    ] 2026-06-19 20:50:49
[2026-06-19 20:50:49,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:50:49,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:50:49,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:50:49,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:50:49,431.431 INFO    ] time= 19/06/2026 20:50:49
[2026-06-19 20:50:49,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:50:49,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:50:49,601.601 INFO    ] No existing commands found in stream
[2026-06-19 20:50:54,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:50:54,624.624 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 20:50:55,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:50:55,190.190 INFO    ] Checking for system updates...
[2026-06-19 20:50:55,227.227 INFO    ] 200
[2026-06-19 20:50:55,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:55,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:50:55,286.286 INFO    ] No update needed
[2026-06-19 20:50:55,288.288 INFO    ] Checking for camera pi updates...
[2026-06-19 20:50:55,326.326 INFO    ] 200
[2026-06-19 20:50:55,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:50:55,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:50:55,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:50:55,422.422 INFO    ] No camera update needed
[2026-06-19 20:50:55,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:50:55,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:50:55,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:50:55,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:50:57,478.478 INFO    ] ================================================
[2026-06-19 20:50:57,494.494 INFO    ] Launching Daemon at Fri Jun 19 20:50:57 IST 2026
[2026-06-19 20:50:57,505.505 INFO    ] ================================================
[2026-06-19 20:50:58,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:50:58
[2026-06-19 20:50:58,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:50:58,934.934 INFO    ] Initializing speech engine...
[2026-06-19 20:50:58,948.948 INFO    ] 2026-06-19 20:50:58
[2026-06-19 20:50:59,234.234 INFO    ] 2026-06-19 20:50:59
[2026-06-19 20:50:59,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:50:59,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:50:59,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:50:59,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:50:59,647.647 INFO    ] time= 19/06/2026 20:50:59
[2026-06-19 20:50:59,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:50:59,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:50:59,730.730 INFO    ] No existing commands found in stream
[2026-06-19 20:51:04,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:51:04,745.745 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 20:51:08,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:51:08,354.354 INFO    ] Checking for system updates...
[2026-06-19 20:51:08,390.390 INFO    ] 200
[2026-06-19 20:51:08,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:08,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:51:08,449.449 INFO    ] No update needed
[2026-06-19 20:51:08,451.451 INFO    ] Checking for camera pi updates...
[2026-06-19 20:51:08,485.485 INFO    ] 200
[2026-06-19 20:51:08,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:08,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:51:08,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:51:08,573.573 INFO    ] No camera update needed
[2026-06-19 20:51:08,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:51:08,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:51:08,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:51:08,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:51:10,630.630 INFO    ] ================================================
[2026-06-19 20:51:10,646.646 INFO    ] Launching Daemon at Fri Jun 19 20:51:10 IST 2026
[2026-06-19 20:51:10,657.657 INFO    ] ================================================
[2026-06-19 20:51:11,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:51:11
[2026-06-19 20:51:11,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:51:12,088.088 INFO    ] Initializing speech engine...
[2026-06-19 20:51:12,097.097 INFO    ] 2026-06-19 20:51:12
[2026-06-19 20:51:12,346.346 INFO    ] 2026-06-19 20:51:12
[2026-06-19 20:51:12,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:51:12,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:51:12,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:51:12,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:51:12,809.809 INFO    ] time= 19/06/2026 20:51:12
[2026-06-19 20:51:12,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:51:12,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:51:12,981.981 INFO    ] No existing commands found in stream
[2026-06-19 20:51:17,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:51:17,997.997 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 20:51:19,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:51:19,449.449 INFO    ] Checking for system updates...
[2026-06-19 20:51:19,488.488 INFO    ] 200
[2026-06-19 20:51:19,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:19,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:51:19,545.545 INFO    ] No update needed
[2026-06-19 20:51:19,548.548 INFO    ] Checking for camera pi updates...
[2026-06-19 20:51:19,590.590 INFO    ] 200
[2026-06-19 20:51:19,592.592 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:19,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:51:19,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:51:19,684.684 INFO    ] No camera update needed
[2026-06-19 20:51:19,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:51:19,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:51:19,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:51:19,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:51:21,739.739 INFO    ] ================================================
[2026-06-19 20:51:21,754.754 INFO    ] Launching Daemon at Fri Jun 19 20:51:21 IST 2026
[2026-06-19 20:51:21,765.765 INFO    ] ================================================
[2026-06-19 20:51:22,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:51:22
[2026-06-19 20:51:22,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:51:23,189.189 INFO    ] Initializing speech engine...
[2026-06-19 20:51:23,212.212 INFO    ] 2026-06-19 20:51:23
[2026-06-19 20:51:23,472.472 INFO    ] 2026-06-19 20:51:23
[2026-06-19 20:51:23,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:51:23,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:51:23,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:51:23,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:51:24,012.012 INFO    ] time= 19/06/2026 20:51:23
[2026-06-19 20:51:24,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:51:24,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:51:24,195.195 INFO    ] No existing commands found in stream
[2026-06-19 20:51:29,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:51:29,222.222 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 20:51:32,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:51:32,412.412 INFO    ] Checking for system updates...
[2026-06-19 20:51:32,452.452 INFO    ] 200
[2026-06-19 20:51:32,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:32,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:51:32,517.517 INFO    ] No update needed
[2026-06-19 20:51:32,520.520 INFO    ] Checking for camera pi updates...
[2026-06-19 20:51:32,576.576 INFO    ] 200
[2026-06-19 20:51:32,579.579 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:32,644.644 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:51:32,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:51:32,679.679 INFO    ] No camera update needed
[2026-06-19 20:51:32,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:51:32,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:51:32,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:51:32,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:51:34,735.735 INFO    ] ================================================
[2026-06-19 20:51:34,751.751 INFO    ] Launching Daemon at Fri Jun 19 20:51:34 IST 2026
[2026-06-19 20:51:34,762.762 INFO    ] ================================================
[2026-06-19 20:51:35,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:51:35
[2026-06-19 20:51:35,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:51:36,185.185 INFO    ] Initializing speech engine...
[2026-06-19 20:51:36,195.195 INFO    ] 2026-06-19 20:51:36
[2026-06-19 20:51:36,439.439 INFO    ] 2026-06-19 20:51:36
[2026-06-19 20:51:36,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:51:36,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:51:36,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:51:36,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:51:36,952.952 INFO    ] time= 19/06/2026 20:51:36
[2026-06-19 20:51:37,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:51:37,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:51:37,145.145 INFO    ] No existing commands found in stream
[2026-06-19 20:51:42,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:51:42,177.177 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 20:51:44,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:51:44,258.258 INFO    ] Checking for system updates...
[2026-06-19 20:51:44,297.297 INFO    ] 200
[2026-06-19 20:51:44,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:44,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:51:44,357.357 INFO    ] No update needed
[2026-06-19 20:51:44,360.360 INFO    ] Checking for camera pi updates...
[2026-06-19 20:51:44,396.396 INFO    ] 200
[2026-06-19 20:51:44,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:44,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:51:44,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:51:44,502.502 INFO    ] No camera update needed
[2026-06-19 20:51:44,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:51:44,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:51:44,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:51:44,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:51:46,561.561 INFO    ] ================================================
[2026-06-19 20:51:46,576.576 INFO    ] Launching Daemon at Fri Jun 19 20:51:46 IST 2026
[2026-06-19 20:51:46,587.587 INFO    ] ================================================
[2026-06-19 20:51:47,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:51:47
[2026-06-19 20:51:47,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:51:48,117.117 INFO    ] Initializing speech engine...
[2026-06-19 20:51:48,125.125 INFO    ] 2026-06-19 20:51:48
[2026-06-19 20:51:48,396.396 INFO    ] 2026-06-19 20:51:48
[2026-06-19 20:51:48,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:51:48,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:51:48,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:51:48,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:51:48,782.782 INFO    ] time= 19/06/2026 20:51:48
[2026-06-19 20:51:48,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:51:48,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:51:48,910.910 INFO    ] No existing commands found in stream
[2026-06-19 20:51:53,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:51:53,922.922 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-19 20:51:55,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:51:55,260.260 INFO    ] Checking for system updates...
[2026-06-19 20:51:55,302.302 INFO    ] 200
[2026-06-19 20:51:55,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:55,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:51:55,379.379 INFO    ] No update needed
[2026-06-19 20:51:55,381.381 INFO    ] Checking for camera pi updates...
[2026-06-19 20:51:55,423.423 INFO    ] 200
[2026-06-19 20:51:55,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:51:55,475.475 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:51:55,521.521 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:51:55,523.523 INFO    ] No camera update needed
[2026-06-19 20:51:55,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:51:55,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:51:55,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:51:55,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:51:57,585.585 INFO    ] ================================================
[2026-06-19 20:51:57,602.602 INFO    ] Launching Daemon at Fri Jun 19 20:51:57 IST 2026
[2026-06-19 20:51:57,613.613 INFO    ] ================================================
[2026-06-19 20:51:58,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:51:58
[2026-06-19 20:51:58,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:51:59,175.175 INFO    ] Initializing speech engine...
[2026-06-19 20:51:59,199.199 INFO    ] 2026-06-19 20:51:59
[2026-06-19 20:51:59,475.475 INFO    ] 2026-06-19 20:51:59
[2026-06-19 20:51:59,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:51:59,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:51:59,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:51:59,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:51:59,985.985 INFO    ] time= 19/06/2026 20:51:59
[2026-06-19 20:52:00,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:52:00,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:52:00,178.178 INFO    ] No existing commands found in stream
[2026-06-19 20:52:05,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:52:05,208.208 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 20:52:08,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:52:08,743.743 INFO    ] Checking for system updates...
[2026-06-19 20:52:08,778.778 INFO    ] 200
[2026-06-19 20:52:08,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:08,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:52:08,842.842 INFO    ] No update needed
[2026-06-19 20:52:08,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 20:52:08,878.878 INFO    ] 200
[2026-06-19 20:52:08,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:08,921.921 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:52:08,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:52:08,968.968 INFO    ] No camera update needed
[2026-06-19 20:52:08,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:52:08,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:52:08,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:52:08,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:52:11,023.023 INFO    ] ================================================
[2026-06-19 20:52:11,039.039 INFO    ] Launching Daemon at Fri Jun 19 20:52:11 IST 2026
[2026-06-19 20:52:11,050.050 INFO    ] ================================================
[2026-06-19 20:52:11,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:52:11
[2026-06-19 20:52:12,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:52:12,555.555 INFO    ] Initializing speech engine...
[2026-06-19 20:52:12,561.561 INFO    ] 2026-06-19 20:52:12
[2026-06-19 20:52:12,822.822 INFO    ] 2026-06-19 20:52:12
[2026-06-19 20:52:12,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:52:13,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:52:13,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:52:13,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:52:13,314.314 INFO    ] time= 19/06/2026 20:52:13
[2026-06-19 20:52:13,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:52:13,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:52:13,439.439 INFO    ] No existing commands found in stream
[2026-06-19 20:52:18,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:52:18,454.454 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 20:52:20,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:52:20,610.610 INFO    ] Checking for system updates...
[2026-06-19 20:52:20,653.653 INFO    ] 200
[2026-06-19 20:52:20,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:20,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:52:20,722.722 INFO    ] No update needed
[2026-06-19 20:52:20,725.725 INFO    ] Checking for camera pi updates...
[2026-06-19 20:52:20,761.761 INFO    ] 200
[2026-06-19 20:52:20,763.763 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:20,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:52:20,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:52:20,860.860 INFO    ] No camera update needed
[2026-06-19 20:52:20,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:52:20,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:52:20,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:52:20,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:52:22,927.927 INFO    ] ================================================
[2026-06-19 20:52:22,942.942 INFO    ] Launching Daemon at Fri Jun 19 20:52:22 IST 2026
[2026-06-19 20:52:22,953.953 INFO    ] ================================================
[2026-06-19 20:52:23,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:52:23
[2026-06-19 20:52:24,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:52:24,393.393 INFO    ] Initializing speech engine...
[2026-06-19 20:52:24,400.400 INFO    ] 2026-06-19 20:52:24
[2026-06-19 20:52:24,643.643 INFO    ] 2026-06-19 20:52:24
[2026-06-19 20:52:24,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:52:24,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:52:24,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:52:25,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:52:25,145.145 INFO    ] time= 19/06/2026 20:52:25
[2026-06-19 20:52:25,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:52:25,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:52:25,263.263 INFO    ] No existing commands found in stream
[2026-06-19 20:52:30,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:52:30,278.278 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 20:52:32,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:52:32,382.382 INFO    ] Checking for system updates...
[2026-06-19 20:52:32,431.431 INFO    ] 200
[2026-06-19 20:52:32,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:32,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:52:32,503.503 INFO    ] No update needed
[2026-06-19 20:52:32,506.506 INFO    ] Checking for camera pi updates...
[2026-06-19 20:52:32,543.543 INFO    ] 200
[2026-06-19 20:52:32,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:32,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:52:32,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:52:32,643.643 INFO    ] No camera update needed
[2026-06-19 20:52:32,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:52:32,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:52:32,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:52:32,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:52:34,709.709 INFO    ] ================================================
[2026-06-19 20:52:34,725.725 INFO    ] Launching Daemon at Fri Jun 19 20:52:34 IST 2026
[2026-06-19 20:52:34,736.736 INFO    ] ================================================
[2026-06-19 20:52:35,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:52:35
[2026-06-19 20:52:36,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:52:36,363.363 INFO    ] Initializing speech engine...
[2026-06-19 20:52:36,370.370 INFO    ] 2026-06-19 20:52:36
[2026-06-19 20:52:36,657.657 INFO    ] 2026-06-19 20:52:36
[2026-06-19 20:52:36,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:52:36,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:52:36,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:52:37,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:52:37,135.135 INFO    ] time= 19/06/2026 20:52:37
[2026-06-19 20:52:37,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:52:37,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:52:37,271.271 INFO    ] No existing commands found in stream
[2026-06-19 20:52:42,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:52:42,311.311 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-19 20:52:45,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:52:45,224.224 INFO    ] Checking for system updates...
[2026-06-19 20:52:45,266.266 INFO    ] 200
[2026-06-19 20:52:45,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:45,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:52:45,327.327 INFO    ] No update needed
[2026-06-19 20:52:45,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 20:52:45,366.366 INFO    ] 200
[2026-06-19 20:52:45,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:45,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:52:45,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:52:45,459.459 INFO    ] No camera update needed
[2026-06-19 20:52:45,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:52:45,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:52:45,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:52:45,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:52:47,519.519 INFO    ] ================================================
[2026-06-19 20:52:47,536.536 INFO    ] Launching Daemon at Fri Jun 19 20:52:47 IST 2026
[2026-06-19 20:52:47,547.547 INFO    ] ================================================
[2026-06-19 20:52:48,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:52:48
[2026-06-19 20:52:48,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:52:49,023.023 INFO    ] Initializing speech engine...
[2026-06-19 20:52:49,030.030 INFO    ] 2026-06-19 20:52:49
[2026-06-19 20:52:49,291.291 INFO    ] 2026-06-19 20:52:49
[2026-06-19 20:52:49,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:52:49,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:52:49,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:52:49,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:52:49,754.754 INFO    ] time= 19/06/2026 20:52:49
[2026-06-19 20:52:49,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:52:49,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:52:49,894.894 INFO    ] No existing commands found in stream
[2026-06-19 20:52:54,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:52:54,909.909 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 20:52:56,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:52:56,571.571 INFO    ] Checking for system updates...
[2026-06-19 20:52:56,608.608 INFO    ] 200
[2026-06-19 20:52:56,611.611 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:56,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:52:56,674.674 INFO    ] No update needed
[2026-06-19 20:52:56,676.676 INFO    ] Checking for camera pi updates...
[2026-06-19 20:52:56,711.711 INFO    ] 200
[2026-06-19 20:52:56,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:52:56,755.755 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:52:56,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:52:56,802.802 INFO    ] No camera update needed
[2026-06-19 20:52:56,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:52:56,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:52:56,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:52:56,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:52:58,859.859 INFO    ] ================================================
[2026-06-19 20:52:58,874.874 INFO    ] Launching Daemon at Fri Jun 19 20:52:58 IST 2026
[2026-06-19 20:52:58,886.886 INFO    ] ================================================
[2026-06-19 20:52:59,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:52:59
[2026-06-19 20:53:00,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:53:00,304.304 INFO    ] Initializing speech engine...
[2026-06-19 20:53:00,311.311 INFO    ] 2026-06-19 20:53:00
[2026-06-19 20:53:00,609.609 INFO    ] 2026-06-19 20:53:00
[2026-06-19 20:53:00,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:53:00,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:53:00,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:53:00,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:53:00,993.993 INFO    ] time= 19/06/2026 20:53:00
[2026-06-19 20:53:01,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:53:01,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:53:01,119.119 INFO    ] No existing commands found in stream
[2026-06-19 20:53:06,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:53:06,134.134 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-19 20:53:09,482.482 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:53:09,485.485 INFO    ] Checking for system updates...
[2026-06-19 20:53:09,521.521 INFO    ] 200
[2026-06-19 20:53:09,523.523 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:53:09,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:53:09,580.580 INFO    ] No update needed
[2026-06-19 20:53:09,582.582 INFO    ] Checking for camera pi updates...
[2026-06-19 20:53:09,616.616 INFO    ] 200
[2026-06-19 20:53:09,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:53:09,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:53:09,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:53:09,693.693 INFO    ] No camera update needed
[2026-06-19 20:53:09,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:53:09,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:53:09,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:53:09,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:53:11,749.749 INFO    ] ================================================
[2026-06-19 20:53:11,764.764 INFO    ] Launching Daemon at Fri Jun 19 20:53:11 IST 2026
[2026-06-19 20:53:11,775.775 INFO    ] ================================================
[2026-06-19 20:53:12,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:53:12
[2026-06-19 20:53:13,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:53:13,381.381 INFO    ] Initializing speech engine...
[2026-06-19 20:53:13,394.394 INFO    ] 2026-06-19 20:53:13
[2026-06-19 20:53:13,702.702 INFO    ] 2026-06-19 20:53:13
[2026-06-19 20:53:13,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:53:14,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:53:14,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:53:14,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:53:14,213.213 INFO    ] time= 19/06/2026 20:53:14
[2026-06-19 20:53:14,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:53:14,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:53:14,366.366 INFO    ] No existing commands found in stream
[2026-06-19 20:53:19,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:53:19,383.383 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 20:53:22,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:53:22,544.544 INFO    ] Checking for system updates...
[2026-06-19 20:53:22,581.581 INFO    ] 200
[2026-06-19 20:53:22,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:53:22,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:53:22,647.647 INFO    ] No update needed
[2026-06-19 20:53:22,650.650 INFO    ] Checking for camera pi updates...
[2026-06-19 20:53:22,684.684 INFO    ] 200
[2026-06-19 20:53:22,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:53:22,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:53:22,785.785 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:53:22,787.787 INFO    ] No camera update needed
[2026-06-19 20:53:22,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:53:22,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:53:22,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:53:22,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:53:24,845.845 INFO    ] ================================================
[2026-06-19 20:53:24,861.861 INFO    ] Launching Daemon at Fri Jun 19 20:53:24 IST 2026
[2026-06-19 20:53:24,872.872 INFO    ] ================================================
[2026-06-19 20:53:25,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:53:25
[2026-06-19 20:53:26,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:53:26,340.340 INFO    ] Initializing speech engine...
[2026-06-19 20:53:26,352.352 INFO    ] 2026-06-19 20:53:26
[2026-06-19 20:53:26,609.609 INFO    ] 2026-06-19 20:53:26
[2026-06-19 20:53:26,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:53:26,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:53:26,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:53:27,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:53:27,079.079 INFO    ] time= 19/06/2026 20:53:27
[2026-06-19 20:53:27,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:53:27,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:53:27,281.281 INFO    ] No existing commands found in stream
[2026-06-19 20:53:32,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:53:32,317.317 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 20:53:35,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:53:35,567.567 INFO    ] Checking for system updates...
[2026-06-19 20:53:35,604.604 INFO    ] 200
[2026-06-19 20:53:35,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:53:35,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:53:35,664.664 INFO    ] No update needed
[2026-06-19 20:53:35,667.667 INFO    ] Checking for camera pi updates...
[2026-06-19 20:53:35,705.705 INFO    ] 200
[2026-06-19 20:53:35,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:53:35,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:53:35,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:53:35,806.806 INFO    ] No camera update needed
[2026-06-19 20:53:35,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:53:35,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:53:35,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:53:35,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:53:37,865.865 INFO    ] ================================================
[2026-06-19 20:53:37,880.880 INFO    ] Launching Daemon at Fri Jun 19 20:53:37 IST 2026
[2026-06-19 20:53:37,891.891 INFO    ] ================================================
[2026-06-19 20:53:38,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:53:38
[2026-06-19 20:53:39,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:53:39,338.338 INFO    ] Initializing speech engine...
[2026-06-19 20:53:39,354.354 INFO    ] 2026-06-19 20:53:39
[2026-06-19 20:53:39,625.625 INFO    ] 2026-06-19 20:53:39
[2026-06-19 20:53:39,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:53:39,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:53:39,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:53:39,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:53:39,998.998 INFO    ] time= 19/06/2026 20:53:39
[2026-06-19 20:53:40,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:53:40,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:53:40,122.122 INFO    ] No existing commands found in stream
[2026-06-19 20:53:45,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:53:45,137.137 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 20:53:48,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:53:48,405.405 INFO    ] Checking for system updates...
[2026-06-19 20:53:48,451.451 INFO    ] 200
[2026-06-19 20:53:48,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:53:48,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:53:48,517.517 INFO    ] No update needed
[2026-06-19 20:53:48,520.520 INFO    ] Checking for camera pi updates...
[2026-06-19 20:53:48,559.559 INFO    ] 200
[2026-06-19 20:53:48,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:53:48,604.604 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:53:48,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:53:48,647.647 INFO    ] No camera update needed
[2026-06-19 20:53:48,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:53:48,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:53:48,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:53:48,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:53:50,706.706 INFO    ] ================================================
[2026-06-19 20:53:50,722.722 INFO    ] Launching Daemon at Fri Jun 19 20:53:50 IST 2026
[2026-06-19 20:53:50,733.733 INFO    ] ================================================
[2026-06-19 20:53:51,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:53:51
[2026-06-19 20:53:51,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:53:52,157.157 INFO    ] Initializing speech engine...
[2026-06-19 20:53:52,182.182 INFO    ] 2026-06-19 20:53:52
[2026-06-19 20:53:52,456.456 INFO    ] 2026-06-19 20:53:52
[2026-06-19 20:53:52,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:53:52,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:53:52,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:53:52,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:53:52,839.839 INFO    ] time= 19/06/2026 20:53:52
[2026-06-19 20:53:52,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:53:52,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:53:52,966.966 INFO    ] No existing commands found in stream
[2026-06-19 20:53:57,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:53:57,982.982 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 20:54:00,353.353 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:54:00,356.356 INFO    ] Checking for system updates...
[2026-06-19 20:54:00,393.393 INFO    ] 200
[2026-06-19 20:54:00,396.396 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:00,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:54:00,454.454 INFO    ] No update needed
[2026-06-19 20:54:00,457.457 INFO    ] Checking for camera pi updates...
[2026-06-19 20:54:00,492.492 INFO    ] 200
[2026-06-19 20:54:00,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:00,537.537 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:54:00,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:54:00,585.585 INFO    ] No camera update needed
[2026-06-19 20:54:00,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:54:00,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:54:00,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:54:00,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:54:02,662.662 INFO    ] ================================================
[2026-06-19 20:54:02,686.686 INFO    ] Launching Daemon at Fri Jun 19 20:54:02 IST 2026
[2026-06-19 20:54:02,707.707 INFO    ] ================================================
[2026-06-19 20:54:03,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:54:03
[2026-06-19 20:54:03,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:54:04,194.194 INFO    ] Initializing speech engine...
[2026-06-19 20:54:04,199.199 INFO    ] 2026-06-19 20:54:04
[2026-06-19 20:54:04,458.458 INFO    ] 2026-06-19 20:54:04
[2026-06-19 20:54:04,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:54:04,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:54:04,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:54:04,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:54:04,948.948 INFO    ] time= 19/06/2026 20:54:04
[2026-06-19 20:54:05,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:54:05,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:54:05,121.121 INFO    ] No existing commands found in stream
[2026-06-19 20:54:10,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:54:10,158.158 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-19 20:54:10,888.888 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:54:10,891.891 INFO    ] Checking for system updates...
[2026-06-19 20:54:10,927.927 INFO    ] 200
[2026-06-19 20:54:10,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:10,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:54:10,985.985 INFO    ] No update needed
[2026-06-19 20:54:10,987.987 INFO    ] Checking for camera pi updates...
[2026-06-19 20:54:11,021.021 INFO    ] 200
[2026-06-19 20:54:11,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:11,064.064 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:54:11,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:54:11,218.218 INFO    ] No camera update needed
[2026-06-19 20:54:11,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:54:11,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:54:11,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:54:11,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:54:13,276.276 INFO    ] ================================================
[2026-06-19 20:54:13,291.291 INFO    ] Launching Daemon at Fri Jun 19 20:54:13 IST 2026
[2026-06-19 20:54:13,302.302 INFO    ] ================================================
[2026-06-19 20:54:13,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:54:13
[2026-06-19 20:54:14,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:54:14,726.726 INFO    ] Initializing speech engine...
[2026-06-19 20:54:14,735.735 INFO    ] 2026-06-19 20:54:14
[2026-06-19 20:54:14,984.984 INFO    ] 2026-06-19 20:54:14
[2026-06-19 20:54:15,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:54:15,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:54:15,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:54:15,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:54:15,324.324 INFO    ] time= 19/06/2026 20:54:15
[2026-06-19 20:54:15,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:54:15,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:54:15,434.434 INFO    ] No existing commands found in stream
[2026-06-19 20:54:20,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:54:20,449.449 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 20:54:21,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:54:21,316.316 INFO    ] Checking for system updates...
[2026-06-19 20:54:21,353.353 INFO    ] 200
[2026-06-19 20:54:21,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:21,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:54:21,412.412 INFO    ] No update needed
[2026-06-19 20:54:21,415.415 INFO    ] Checking for camera pi updates...
[2026-06-19 20:54:21,451.451 INFO    ] 200
[2026-06-19 20:54:21,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:21,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:54:21,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:54:21,551.551 INFO    ] No camera update needed
[2026-06-19 20:54:21,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:54:21,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:54:21,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:54:21,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:54:23,607.607 INFO    ] ================================================
[2026-06-19 20:54:23,623.623 INFO    ] Launching Daemon at Fri Jun 19 20:54:23 IST 2026
[2026-06-19 20:54:23,634.634 INFO    ] ================================================
[2026-06-19 20:54:24,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:54:24
[2026-06-19 20:54:24,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:54:25,060.060 INFO    ] Initializing speech engine...
[2026-06-19 20:54:25,078.078 INFO    ] 2026-06-19 20:54:25
[2026-06-19 20:54:25,352.352 INFO    ] 2026-06-19 20:54:25
[2026-06-19 20:54:25,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:54:25,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:54:25,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:54:25,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:54:25,729.729 INFO    ] time= 19/06/2026 20:54:25
[2026-06-19 20:54:25,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:54:25,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:54:25,855.855 INFO    ] No existing commands found in stream
[2026-06-19 20:54:30,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:54:30,870.870 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 20:54:32,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:54:32,227.227 INFO    ] Checking for system updates...
[2026-06-19 20:54:32,269.269 INFO    ] 200
[2026-06-19 20:54:32,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:32,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:54:32,334.334 INFO    ] No update needed
[2026-06-19 20:54:32,338.338 INFO    ] Checking for camera pi updates...
[2026-06-19 20:54:32,375.375 INFO    ] 200
[2026-06-19 20:54:32,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:32,422.422 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:54:32,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:54:32,468.468 INFO    ] No camera update needed
[2026-06-19 20:54:32,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:54:32,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:54:32,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:54:32,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:54:34,532.532 INFO    ] ================================================
[2026-06-19 20:54:34,548.548 INFO    ] Launching Daemon at Fri Jun 19 20:54:34 IST 2026
[2026-06-19 20:54:34,559.559 INFO    ] ================================================
[2026-06-19 20:54:35,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:54:35
[2026-06-19 20:54:35,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:54:35,983.983 INFO    ] Initializing speech engine...
[2026-06-19 20:54:35,993.993 INFO    ] 2026-06-19 20:54:35
[2026-06-19 20:54:36,240.240 INFO    ] 2026-06-19 20:54:36
[2026-06-19 20:54:36,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:54:36,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:54:36,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:54:36,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:54:36,608.608 INFO    ] time= 19/06/2026 20:54:36
[2026-06-19 20:54:36,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:54:36,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:54:36,682.682 INFO    ] No existing commands found in stream
[2026-06-19 20:54:41,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:54:41,697.697 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 20:54:43,664.664 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:54:43,671.671 INFO    ] Checking for system updates...
[2026-06-19 20:54:43,712.712 INFO    ] 200
[2026-06-19 20:54:43,715.715 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:43,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:54:43,780.780 INFO    ] No update needed
[2026-06-19 20:54:43,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 20:54:43,818.818 INFO    ] 200
[2026-06-19 20:54:43,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:43,868.868 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:54:43,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:54:43,918.918 INFO    ] No camera update needed
[2026-06-19 20:54:43,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:54:43,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:54:43,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:54:43,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:54:45,985.985 INFO    ] ================================================
[2026-06-19 20:54:46,007.007 INFO    ] Launching Daemon at Fri Jun 19 20:54:45 IST 2026
[2026-06-19 20:54:46,023.023 INFO    ] ================================================
[2026-06-19 20:54:46,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:54:46
[2026-06-19 20:54:47,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:54:47,586.586 INFO    ] Initializing speech engine...
[2026-06-19 20:54:47,594.594 INFO    ] 2026-06-19 20:54:47
[2026-06-19 20:54:47,857.857 INFO    ] 2026-06-19 20:54:47
[2026-06-19 20:54:47,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:54:48,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:54:48,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:54:48,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:54:48,330.330 INFO    ] time= 19/06/2026 20:54:48
[2026-06-19 20:54:48,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:54:48,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:54:48,484.484 INFO    ] No existing commands found in stream
[2026-06-19 20:54:53,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:54:53,499.499 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 20:54:58,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:54:58,455.455 INFO    ] Checking for system updates...
[2026-06-19 20:54:58,491.491 INFO    ] 200
[2026-06-19 20:54:58,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:58,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:54:58,550.550 INFO    ] No update needed
[2026-06-19 20:54:58,552.552 INFO    ] Checking for camera pi updates...
[2026-06-19 20:54:58,587.587 INFO    ] 200
[2026-06-19 20:54:58,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:54:58,635.635 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:54:58,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:54:58,688.688 INFO    ] No camera update needed
[2026-06-19 20:54:58,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:54:58,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:54:58,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:54:58,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:55:00,748.748 INFO    ] ================================================
[2026-06-19 20:55:00,763.763 INFO    ] Launching Daemon at Fri Jun 19 20:55:00 IST 2026
[2026-06-19 20:55:00,774.774 INFO    ] ================================================
[2026-06-19 20:55:01,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:55:01
[2026-06-19 20:55:02,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:55:02,628.628 INFO    ] Initializing speech engine...
[2026-06-19 20:55:02,643.643 INFO    ] 2026-06-19 20:55:02
[2026-06-19 20:55:02,932.932 INFO    ] 2026-06-19 20:55:02
[2026-06-19 20:55:02,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:55:03,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:55:03,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:55:03,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:55:03,347.347 INFO    ] time= 19/06/2026 20:55:03
[2026-06-19 20:55:03,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:55:03,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:55:03,483.483 INFO    ] No existing commands found in stream
[2026-06-19 20:55:08,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:55:08,499.499 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-19 20:55:12,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:55:12,593.593 INFO    ] Checking for system updates...
[2026-06-19 20:55:12,635.635 INFO    ] 200
[2026-06-19 20:55:12,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:55:12,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:55:12,694.694 INFO    ] No update needed
[2026-06-19 20:55:12,701.701 INFO    ] Checking for camera pi updates...
[2026-06-19 20:55:12,736.736 INFO    ] 200
[2026-06-19 20:55:12,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:55:12,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:55:12,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:55:12,833.833 INFO    ] No camera update needed
[2026-06-19 20:55:12,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:55:12,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:55:12,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:55:12,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:55:14,889.889 INFO    ] ================================================
[2026-06-19 20:55:14,905.905 INFO    ] Launching Daemon at Fri Jun 19 20:55:14 IST 2026
[2026-06-19 20:55:14,917.917 INFO    ] ================================================
[2026-06-19 20:55:15,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:55:15
[2026-06-19 20:55:16,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:55:16,424.424 INFO    ] Initializing speech engine...
[2026-06-19 20:55:16,430.430 INFO    ] 2026-06-19 20:55:16
[2026-06-19 20:55:16,691.691 INFO    ] 2026-06-19 20:55:16
[2026-06-19 20:55:16,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:55:16,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:55:16,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:55:17,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:55:17,232.232 INFO    ] time= 19/06/2026 20:55:17
[2026-06-19 20:55:17,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:55:17,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:55:17,361.361 INFO    ] No existing commands found in stream
[2026-06-19 20:55:22,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:55:22,395.395 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-19 20:55:25,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:55:25,570.570 INFO    ] Checking for system updates...
[2026-06-19 20:55:25,610.610 INFO    ] 200
[2026-06-19 20:55:25,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:55:25,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:55:25,669.669 INFO    ] No update needed
[2026-06-19 20:55:25,672.672 INFO    ] Checking for camera pi updates...
[2026-06-19 20:55:25,706.706 INFO    ] 200
[2026-06-19 20:55:25,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:55:25,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:55:25,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:55:25,802.802 INFO    ] No camera update needed
[2026-06-19 20:55:25,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:55:25,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:55:25,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:55:25,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:55:27,859.859 INFO    ] ================================================
[2026-06-19 20:55:27,875.875 INFO    ] Launching Daemon at Fri Jun 19 20:55:27 IST 2026
[2026-06-19 20:55:27,886.886 INFO    ] ================================================
[2026-06-19 20:55:28,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:55:28
[2026-06-19 20:55:29,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:55:29,438.438 INFO    ] Initializing speech engine...
[2026-06-19 20:55:29,452.452 INFO    ] 2026-06-19 20:55:29
[2026-06-19 20:55:29,740.740 INFO    ] 2026-06-19 20:55:29
[2026-06-19 20:55:29,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:55:30,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:55:30,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:55:30,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:55:30,274.274 INFO    ] time= 19/06/2026 20:55:30
[2026-06-19 20:55:30,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:55:30,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:55:30,419.419 INFO    ] No existing commands found in stream
[2026-06-19 20:55:35,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:55:35,445.445 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 20:55:36,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:55:36,139.139 INFO    ] Checking for system updates...
[2026-06-19 20:55:36,178.178 INFO    ] 200
[2026-06-19 20:55:36,181.181 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:55:36,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:55:36,238.238 INFO    ] No update needed
[2026-06-19 20:55:36,241.241 INFO    ] Checking for camera pi updates...
[2026-06-19 20:55:36,280.280 INFO    ] 200
[2026-06-19 20:55:36,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:55:36,324.324 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:55:36,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:55:36,382.382 INFO    ] No camera update needed
[2026-06-19 20:55:36,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:55:36,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:55:36,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:55:36,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:55:38,441.441 INFO    ] ================================================
[2026-06-19 20:55:38,456.456 INFO    ] Launching Daemon at Fri Jun 19 20:55:38 IST 2026
[2026-06-19 20:55:38,467.467 INFO    ] ================================================
[2026-06-19 20:55:39,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:55:39
[2026-06-19 20:55:39,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:55:39,935.935 INFO    ] Initializing speech engine...
[2026-06-19 20:55:39,942.942 INFO    ] 2026-06-19 20:55:39
[2026-06-19 20:55:40,240.240 INFO    ] 2026-06-19 20:55:40
[2026-06-19 20:55:40,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:55:40,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:55:40,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:55:40,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:55:40,634.634 INFO    ] time= 19/06/2026 20:55:40
[2026-06-19 20:55:40,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:55:40,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:55:40,754.754 INFO    ] No existing commands found in stream
[2026-06-19 20:55:45,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:55:45,768.768 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 20:55:48,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:55:48,056.056 INFO    ] Checking for system updates...
[2026-06-19 20:55:48,094.094 INFO    ] 200
[2026-06-19 20:55:48,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:55:48,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:55:48,153.153 INFO    ] No update needed
[2026-06-19 20:55:48,157.157 INFO    ] Checking for camera pi updates...
[2026-06-19 20:55:48,193.193 INFO    ] 200
[2026-06-19 20:55:48,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:55:48,238.238 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:55:48,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:55:48,284.284 INFO    ] No camera update needed
[2026-06-19 20:55:48,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:55:48,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:55:48,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:55:48,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:55:50,344.344 INFO    ] ================================================
[2026-06-19 20:55:50,359.359 INFO    ] Launching Daemon at Fri Jun 19 20:55:50 IST 2026
[2026-06-19 20:55:50,370.370 INFO    ] ================================================
[2026-06-19 20:55:50,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:55:50
[2026-06-19 20:55:51,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:55:51,779.779 INFO    ] Initializing speech engine...
[2026-06-19 20:55:51,787.787 INFO    ] 2026-06-19 20:55:51
[2026-06-19 20:55:52,083.083 INFO    ] 2026-06-19 20:55:52
[2026-06-19 20:55:52,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:55:52,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:55:52,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:55:52,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:55:52,440.440 INFO    ] time= 19/06/2026 20:55:52
[2026-06-19 20:55:52,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:55:52,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:55:52,527.527 INFO    ] No existing commands found in stream
[2026-06-19 20:55:57,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:55:57,566.566 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-19 20:56:01,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:56:01,669.669 INFO    ] Checking for system updates...
[2026-06-19 20:56:01,719.719 INFO    ] 200
[2026-06-19 20:56:01,723.723 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:01,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:56:01,834.834 INFO    ] No update needed
[2026-06-19 20:56:01,837.837 INFO    ] Checking for camera pi updates...
[2026-06-19 20:56:01,914.914 INFO    ] 200
[2026-06-19 20:56:01,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:01,988.988 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:56:02,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:56:02,066.066 INFO    ] No camera update needed
[2026-06-19 20:56:02,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:56:02,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:56:02,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:56:02,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:56:04,127.127 INFO    ] ================================================
[2026-06-19 20:56:04,142.142 INFO    ] Launching Daemon at Fri Jun 19 20:56:04 IST 2026
[2026-06-19 20:56:04,153.153 INFO    ] ================================================
[2026-06-19 20:56:04,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:56:04
[2026-06-19 20:56:05,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:56:05,615.615 INFO    ] Initializing speech engine...
[2026-06-19 20:56:05,620.620 INFO    ] 2026-06-19 20:56:05
[2026-06-19 20:56:05,869.869 INFO    ] 2026-06-19 20:56:05
[2026-06-19 20:56:05,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:56:06,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:56:06,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:56:06,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:56:06,321.321 INFO    ] time= 19/06/2026 20:56:06
[2026-06-19 20:56:06,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:56:06,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:56:06,504.504 INFO    ] No existing commands found in stream
[2026-06-19 20:56:11,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:56:11,519.519 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 20:56:15,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 20:56:15,833.833 INFO    ] Checking for system updates...
[2026-06-19 20:56:15,870.870 INFO    ] 200
[2026-06-19 20:56:15,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:15,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:56:15,931.931 INFO    ] No update needed
[2026-06-19 20:56:15,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 20:56:15,972.972 INFO    ] 200
[2026-06-19 20:56:15,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:16,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:56:16,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:56:16,172.172 INFO    ] No camera update needed
[2026-06-19 20:56:16,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:56:16,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:56:16,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:56:16,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:56:18,228.228 INFO    ] ================================================
[2026-06-19 20:56:18,243.243 INFO    ] Launching Daemon at Fri Jun 19 20:56:18 IST 2026
[2026-06-19 20:56:18,254.254 INFO    ] ================================================
[2026-06-19 20:56:18,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:56:18
[2026-06-19 20:56:19,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:56:19,893.893 INFO    ] Initializing speech engine...
[2026-06-19 20:56:19,900.900 INFO    ] 2026-06-19 20:56:19
[2026-06-19 20:56:20,193.193 INFO    ] 2026-06-19 20:56:20
[2026-06-19 20:56:20,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:56:20,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:56:20,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:56:20,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:56:20,726.726 INFO    ] time= 19/06/2026 20:56:20
[2026-06-19 20:56:20,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:56:20,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:56:20,869.869 INFO    ] No existing commands found in stream
[2026-06-19 20:56:25,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:56:25,897.897 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 20:56:29,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:56:29,515.515 INFO    ] Checking for system updates...
[2026-06-19 20:56:29,553.553 INFO    ] 200
[2026-06-19 20:56:29,556.556 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:29,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:56:29,613.613 INFO    ] No update needed
[2026-06-19 20:56:29,616.616 INFO    ] Checking for camera pi updates...
[2026-06-19 20:56:29,650.650 INFO    ] 200
[2026-06-19 20:56:29,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:29,697.697 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:56:29,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:56:29,757.757 INFO    ] No camera update needed
[2026-06-19 20:56:29,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:56:29,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:56:29,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:56:29,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:56:31,814.814 INFO    ] ================================================
[2026-06-19 20:56:31,831.831 INFO    ] Launching Daemon at Fri Jun 19 20:56:31 IST 2026
[2026-06-19 20:56:31,843.843 INFO    ] ================================================
[2026-06-19 20:56:32,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:56:32
[2026-06-19 20:56:33,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:56:33,536.536 INFO    ] Initializing speech engine...
[2026-06-19 20:56:33,548.548 INFO    ] 2026-06-19 20:56:33
[2026-06-19 20:56:33,854.854 INFO    ] 2026-06-19 20:56:33
[2026-06-19 20:56:33,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:56:34,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:56:34,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:56:34,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:56:34,427.427 INFO    ] time= 19/06/2026 20:56:34
[2026-06-19 20:56:34,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:56:34,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:56:34,620.620 INFO    ] No existing commands found in stream
[2026-06-19 20:56:39,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:56:39,653.653 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 20:56:40,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 20:56:40,783.783 INFO    ] Checking for system updates...
[2026-06-19 20:56:40,825.825 INFO    ] 200
[2026-06-19 20:56:40,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:40,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:56:40,884.884 INFO    ] No update needed
[2026-06-19 20:56:40,887.887 INFO    ] Checking for camera pi updates...
[2026-06-19 20:56:40,922.922 INFO    ] 200
[2026-06-19 20:56:40,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:40,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:56:41,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:56:41,019.019 INFO    ] No camera update needed
[2026-06-19 20:56:41,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:56:41,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:56:41,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:56:41,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:56:43,076.076 INFO    ] ================================================
[2026-06-19 20:56:43,091.091 INFO    ] Launching Daemon at Fri Jun 19 20:56:43 IST 2026
[2026-06-19 20:56:43,102.102 INFO    ] ================================================
[2026-06-19 20:56:43,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:56:43
[2026-06-19 20:56:44,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:56:44,558.558 INFO    ] Initializing speech engine...
[2026-06-19 20:56:44,578.578 INFO    ] 2026-06-19 20:56:44
[2026-06-19 20:56:44,842.842 INFO    ] 2026-06-19 20:56:44
[2026-06-19 20:56:44,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:56:45,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:56:45,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:56:45,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:56:45,253.253 INFO    ] time= 19/06/2026 20:56:45
[2026-06-19 20:56:45,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:56:45,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:56:45,341.341 INFO    ] No existing commands found in stream
[2026-06-19 20:56:50,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:56:50,357.357 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 20:56:51,331.331 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:56:51,334.334 INFO    ] Checking for system updates...
[2026-06-19 20:56:51,371.371 INFO    ] 200
[2026-06-19 20:56:51,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:51,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:56:51,431.431 INFO    ] No update needed
[2026-06-19 20:56:51,434.434 INFO    ] Checking for camera pi updates...
[2026-06-19 20:56:51,469.469 INFO    ] 200
[2026-06-19 20:56:51,472.472 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:56:51,513.513 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:56:51,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:56:51,547.547 INFO    ] No camera update needed
[2026-06-19 20:56:51,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:56:51,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:56:51,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:56:51,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:56:53,605.605 INFO    ] ================================================
[2026-06-19 20:56:53,620.620 INFO    ] Launching Daemon at Fri Jun 19 20:56:53 IST 2026
[2026-06-19 20:56:53,631.631 INFO    ] ================================================
[2026-06-19 20:56:54,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:56:54
[2026-06-19 20:56:54,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:56:55,236.236 INFO    ] Initializing speech engine...
[2026-06-19 20:56:55,247.247 INFO    ] 2026-06-19 20:56:55
[2026-06-19 20:56:55,520.520 INFO    ] 2026-06-19 20:56:55
[2026-06-19 20:56:55,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:56:55,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:56:55,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:56:55,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:56:56,022.022 INFO    ] time= 19/06/2026 20:56:55
[2026-06-19 20:56:56,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:56:56,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:56:56,213.213 INFO    ] No existing commands found in stream
[2026-06-19 20:57:01,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:57:01,242.242 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 20:57:02,781.781 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:57:02,784.784 INFO    ] Checking for system updates...
[2026-06-19 20:57:02,824.824 INFO    ] 200
[2026-06-19 20:57:02,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:02,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:57:02,890.890 INFO    ] No update needed
[2026-06-19 20:57:02,892.892 INFO    ] Checking for camera pi updates...
[2026-06-19 20:57:02,941.941 INFO    ] 200
[2026-06-19 20:57:02,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:02,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:57:03,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:57:03,021.021 INFO    ] No camera update needed
[2026-06-19 20:57:03,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:57:03,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:57:03,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:57:03,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:57:05,086.086 INFO    ] ================================================
[2026-06-19 20:57:05,101.101 INFO    ] Launching Daemon at Fri Jun 19 20:57:05 IST 2026
[2026-06-19 20:57:05,113.113 INFO    ] ================================================
[2026-06-19 20:57:05,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:57:05
[2026-06-19 20:57:06,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:57:06,573.573 INFO    ] Initializing speech engine...
[2026-06-19 20:57:06,582.582 INFO    ] 2026-06-19 20:57:06
[2026-06-19 20:57:06,832.832 INFO    ] 2026-06-19 20:57:06
[2026-06-19 20:57:06,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:57:07,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:57:07,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:57:07,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:57:07,214.214 INFO    ] time= 19/06/2026 20:57:07
[2026-06-19 20:57:07,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:57:07,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:57:07,290.290 INFO    ] No existing commands found in stream
[2026-06-19 20:57:12,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:57:12,306.306 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 20:57:16,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:57:16,172.172 INFO    ] Checking for system updates...
[2026-06-19 20:57:16,207.207 INFO    ] 200
[2026-06-19 20:57:16,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:16,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:57:16,266.266 INFO    ] No update needed
[2026-06-19 20:57:16,268.268 INFO    ] Checking for camera pi updates...
[2026-06-19 20:57:16,301.301 INFO    ] 200
[2026-06-19 20:57:16,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:16,345.345 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:57:16,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:57:16,390.390 INFO    ] No camera update needed
[2026-06-19 20:57:16,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:57:16,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:57:16,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:57:16,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:57:18,446.446 INFO    ] ================================================
[2026-06-19 20:57:18,462.462 INFO    ] Launching Daemon at Fri Jun 19 20:57:18 IST 2026
[2026-06-19 20:57:18,473.473 INFO    ] ================================================
[2026-06-19 20:57:19,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:57:19
[2026-06-19 20:57:19,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:57:19,901.901 INFO    ] Initializing speech engine...
[2026-06-19 20:57:19,916.916 INFO    ] 2026-06-19 20:57:19
[2026-06-19 20:57:20,200.200 INFO    ] 2026-06-19 20:57:20
[2026-06-19 20:57:20,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:57:20,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:57:20,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:57:20,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:57:20,608.608 INFO    ] time= 19/06/2026 20:57:20
[2026-06-19 20:57:20,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:57:20,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:57:20,693.693 INFO    ] No existing commands found in stream
[2026-06-19 20:57:25,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:57:25,731.731 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 20:57:27,121.121 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:57:27,124.124 INFO    ] Checking for system updates...
[2026-06-19 20:57:27,160.160 INFO    ] 200
[2026-06-19 20:57:27,162.162 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:27,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:57:27,219.219 INFO    ] No update needed
[2026-06-19 20:57:27,221.221 INFO    ] Checking for camera pi updates...
[2026-06-19 20:57:27,259.259 INFO    ] 200
[2026-06-19 20:57:27,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:27,302.302 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:57:27,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:57:27,350.350 INFO    ] No camera update needed
[2026-06-19 20:57:27,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:57:27,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:57:27,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:57:27,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:57:29,408.408 INFO    ] ================================================
[2026-06-19 20:57:29,423.423 INFO    ] Launching Daemon at Fri Jun 19 20:57:29 IST 2026
[2026-06-19 20:57:29,434.434 INFO    ] ================================================
[2026-06-19 20:57:30,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:57:30
[2026-06-19 20:57:30,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:57:30,867.867 INFO    ] Initializing speech engine...
[2026-06-19 20:57:30,876.876 INFO    ] 2026-06-19 20:57:30
[2026-06-19 20:57:31,128.128 INFO    ] 2026-06-19 20:57:31
[2026-06-19 20:57:31,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:57:31,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:57:31,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:57:31,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:57:31,525.525 INFO    ] time= 19/06/2026 20:57:31
[2026-06-19 20:57:31,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:57:31,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:57:31,632.632 INFO    ] No existing commands found in stream
[2026-06-19 20:57:36,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:57:36,666.666 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 20:57:37,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:57:37,049.049 INFO    ] Checking for system updates...
[2026-06-19 20:57:37,086.086 INFO    ] 200
[2026-06-19 20:57:37,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:37,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:57:37,143.143 INFO    ] No update needed
[2026-06-19 20:57:37,145.145 INFO    ] Checking for camera pi updates...
[2026-06-19 20:57:37,182.182 INFO    ] 200
[2026-06-19 20:57:37,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:37,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:57:37,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:57:37,280.280 INFO    ] No camera update needed
[2026-06-19 20:57:37,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:57:37,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:57:37,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:57:37,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:57:39,338.338 INFO    ] ================================================
[2026-06-19 20:57:39,354.354 INFO    ] Launching Daemon at Fri Jun 19 20:57:39 IST 2026
[2026-06-19 20:57:39,365.365 INFO    ] ================================================
[2026-06-19 20:57:39,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:57:39
[2026-06-19 20:57:40,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:57:40,828.828 INFO    ] Initializing speech engine...
[2026-06-19 20:57:40,837.837 INFO    ] 2026-06-19 20:57:40
[2026-06-19 20:57:41,098.098 INFO    ] 2026-06-19 20:57:41
[2026-06-19 20:57:41,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:57:41,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:57:41,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:57:41,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:57:41,550.550 INFO    ] time= 19/06/2026 20:57:41
[2026-06-19 20:57:41,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:57:41,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:57:41,792.792 INFO    ] No existing commands found in stream
[2026-06-19 20:57:46,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:57:46,817.817 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 20:57:49,454.454 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:57:49,457.457 INFO    ] Checking for system updates...
[2026-06-19 20:57:49,506.506 INFO    ] 200
[2026-06-19 20:57:49,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:49,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:57:49,565.565 INFO    ] No update needed
[2026-06-19 20:57:49,567.567 INFO    ] Checking for camera pi updates...
[2026-06-19 20:57:49,601.601 INFO    ] 200
[2026-06-19 20:57:49,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:57:49,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:57:49,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:57:49,683.683 INFO    ] No camera update needed
[2026-06-19 20:57:49,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:57:49,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:57:49,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:57:49,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:57:51,739.739 INFO    ] ================================================
[2026-06-19 20:57:51,755.755 INFO    ] Launching Daemon at Fri Jun 19 20:57:51 IST 2026
[2026-06-19 20:57:51,766.766 INFO    ] ================================================
[2026-06-19 20:57:52,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:57:52
[2026-06-19 20:57:52,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:57:53,165.165 INFO    ] Initializing speech engine...
[2026-06-19 20:57:53,179.179 INFO    ] 2026-06-19 20:57:53
[2026-06-19 20:57:53,444.444 INFO    ] 2026-06-19 20:57:53
[2026-06-19 20:57:53,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:57:53,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:57:53,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:57:53,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:57:53,810.810 INFO    ] time= 19/06/2026 20:57:53
[2026-06-19 20:57:53,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:57:53,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:57:53,931.931 INFO    ] No existing commands found in stream
[2026-06-19 20:57:58,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:57:58,946.946 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-19 20:58:01,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:58:01,271.271 INFO    ] Checking for system updates...
[2026-06-19 20:58:01,334.334 INFO    ] 200
[2026-06-19 20:58:01,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:01,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:58:01,440.440 INFO    ] No update needed
[2026-06-19 20:58:01,444.444 INFO    ] Checking for camera pi updates...
[2026-06-19 20:58:01,494.494 INFO    ] 200
[2026-06-19 20:58:01,497.497 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:01,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:58:01,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:58:01,689.689 INFO    ] No camera update needed
[2026-06-19 20:58:01,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:58:01,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:58:01,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:58:01,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:58:03,758.758 INFO    ] ================================================
[2026-06-19 20:58:03,773.773 INFO    ] Launching Daemon at Fri Jun 19 20:58:03 IST 2026
[2026-06-19 20:58:03,784.784 INFO    ] ================================================
[2026-06-19 20:58:04,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:58:04
[2026-06-19 20:58:04,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:58:05,249.249 INFO    ] Initializing speech engine...
[2026-06-19 20:58:05,260.260 INFO    ] 2026-06-19 20:58:05
[2026-06-19 20:58:05,519.519 INFO    ] 2026-06-19 20:58:05
[2026-06-19 20:58:05,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:58:05,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:58:05,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:58:05,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:58:05,980.980 INFO    ] time= 19/06/2026 20:58:05
[2026-06-19 20:58:06,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:58:06,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:58:06,137.137 INFO    ] No existing commands found in stream
[2026-06-19 20:58:11,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:58:11,152.152 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 20:58:12,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 20:58:12,176.176 INFO    ] Checking for system updates...
[2026-06-19 20:58:12,217.217 INFO    ] 200
[2026-06-19 20:58:12,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:12,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:58:12,276.276 INFO    ] No update needed
[2026-06-19 20:58:12,278.278 INFO    ] Checking for camera pi updates...
[2026-06-19 20:58:12,312.312 INFO    ] 200
[2026-06-19 20:58:12,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:12,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:58:12,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:58:12,411.411 INFO    ] No camera update needed
[2026-06-19 20:58:12,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:58:12,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:58:12,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:58:12,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:58:14,470.470 INFO    ] ================================================
[2026-06-19 20:58:14,486.486 INFO    ] Launching Daemon at Fri Jun 19 20:58:14 IST 2026
[2026-06-19 20:58:14,498.498 INFO    ] ================================================
[2026-06-19 20:58:15,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:58:15
[2026-06-19 20:58:15,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:58:15,915.915 INFO    ] Initializing speech engine...
[2026-06-19 20:58:15,923.923 INFO    ] 2026-06-19 20:58:15
[2026-06-19 20:58:16,220.220 INFO    ] 2026-06-19 20:58:16
[2026-06-19 20:58:16,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:58:16,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:58:16,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:58:16,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:58:16,607.607 INFO    ] time= 19/06/2026 20:58:16
[2026-06-19 20:58:16,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:58:16,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:58:16,737.737 INFO    ] No existing commands found in stream
[2026-06-19 20:58:21,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:58:21,752.752 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 20:58:23,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:58:23,472.472 INFO    ] Checking for system updates...
[2026-06-19 20:58:23,508.508 INFO    ] 200
[2026-06-19 20:58:23,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:23,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:58:23,565.565 INFO    ] No update needed
[2026-06-19 20:58:23,568.568 INFO    ] Checking for camera pi updates...
[2026-06-19 20:58:23,603.603 INFO    ] 200
[2026-06-19 20:58:23,605.605 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:23,646.646 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:58:23,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:58:23,800.800 INFO    ] No camera update needed
[2026-06-19 20:58:23,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:58:23,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:58:23,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:58:23,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:58:25,855.855 INFO    ] ================================================
[2026-06-19 20:58:25,871.871 INFO    ] Launching Daemon at Fri Jun 19 20:58:25 IST 2026
[2026-06-19 20:58:25,883.883 INFO    ] ================================================
[2026-06-19 20:58:26,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:58:26
[2026-06-19 20:58:27,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:58:27,285.285 INFO    ] Initializing speech engine...
[2026-06-19 20:58:27,308.308 INFO    ] 2026-06-19 20:58:27
[2026-06-19 20:58:27,562.562 INFO    ] 2026-06-19 20:58:27
[2026-06-19 20:58:27,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:58:27,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:58:27,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:58:27,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:58:28,037.037 INFO    ] time= 19/06/2026 20:58:27
[2026-06-19 20:58:28,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:58:28,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:58:28,181.181 INFO    ] No existing commands found in stream
[2026-06-19 20:58:33,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:58:33,205.205 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 20:58:33,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:58:33,826.826 INFO    ] Checking for system updates...
[2026-06-19 20:58:33,861.861 INFO    ] 200
[2026-06-19 20:58:33,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:33,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:58:33,928.928 INFO    ] No update needed
[2026-06-19 20:58:33,930.930 INFO    ] Checking for camera pi updates...
[2026-06-19 20:58:33,963.963 INFO    ] 200
[2026-06-19 20:58:33,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:34,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:58:34,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:58:34,063.063 INFO    ] No camera update needed
[2026-06-19 20:58:34,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:58:34,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:58:34,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:58:34,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:58:36,122.122 INFO    ] ================================================
[2026-06-19 20:58:36,138.138 INFO    ] Launching Daemon at Fri Jun 19 20:58:36 IST 2026
[2026-06-19 20:58:36,150.150 INFO    ] ================================================
[2026-06-19 20:58:36,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:58:36
[2026-06-19 20:58:37,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:58:37,571.571 INFO    ] Initializing speech engine...
[2026-06-19 20:58:37,580.580 INFO    ] 2026-06-19 20:58:37
[2026-06-19 20:58:37,825.825 INFO    ] 2026-06-19 20:58:37
[2026-06-19 20:58:37,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:58:38,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:58:38,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:58:38,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:58:38,192.192 INFO    ] time= 19/06/2026 20:58:38
[2026-06-19 20:58:38,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:58:38,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:58:38,355.355 INFO    ] No existing commands found in stream
[2026-06-19 20:58:43,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:58:43,383.383 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 20:58:43,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:58:43,960.960 INFO    ] Checking for system updates...
[2026-06-19 20:58:43,996.996 INFO    ] 200
[2026-06-19 20:58:43,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:44,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:58:44,062.062 INFO    ] No update needed
[2026-06-19 20:58:44,064.064 INFO    ] Checking for camera pi updates...
[2026-06-19 20:58:44,098.098 INFO    ] 200
[2026-06-19 20:58:44,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:44,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:58:44,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:58:44,193.193 INFO    ] No camera update needed
[2026-06-19 20:58:44,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:58:44,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:58:44,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:58:44,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:58:46,251.251 INFO    ] ================================================
[2026-06-19 20:58:46,267.267 INFO    ] Launching Daemon at Fri Jun 19 20:58:46 IST 2026
[2026-06-19 20:58:46,279.279 INFO    ] ================================================
[2026-06-19 20:58:46,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:58:46
[2026-06-19 20:58:47,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:58:47,721.721 INFO    ] Initializing speech engine...
[2026-06-19 20:58:47,730.730 INFO    ] 2026-06-19 20:58:47
[2026-06-19 20:58:47,976.976 INFO    ] 2026-06-19 20:58:47
[2026-06-19 20:58:48,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:58:48,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:58:48,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:58:48,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:58:48,442.442 INFO    ] time= 19/06/2026 20:58:48
[2026-06-19 20:58:48,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:58:48,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:58:48,620.620 INFO    ] No existing commands found in stream
[2026-06-19 20:58:53,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:58:53,660.660 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 20:58:56,211.211 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:58:56,213.213 INFO    ] Checking for system updates...
[2026-06-19 20:58:56,255.255 INFO    ] 200
[2026-06-19 20:58:56,257.257 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:56,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:58:56,321.321 INFO    ] No update needed
[2026-06-19 20:58:56,323.323 INFO    ] Checking for camera pi updates...
[2026-06-19 20:58:56,361.361 INFO    ] 200
[2026-06-19 20:58:56,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:58:56,404.404 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:58:56,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:58:56,455.455 INFO    ] No camera update needed
[2026-06-19 20:58:56,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:58:56,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:58:56,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:58:56,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:58:58,510.510 INFO    ] ================================================
[2026-06-19 20:58:58,526.526 INFO    ] Launching Daemon at Fri Jun 19 20:58:58 IST 2026
[2026-06-19 20:58:58,538.538 INFO    ] ================================================
[2026-06-19 20:58:59,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:58:59
[2026-06-19 20:58:59,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:59:00,001.001 INFO    ] Initializing speech engine...
[2026-06-19 20:59:00,013.013 INFO    ] 2026-06-19 20:59:00
[2026-06-19 20:59:00,302.302 INFO    ] 2026-06-19 20:59:00
[2026-06-19 20:59:00,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:59:00,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:59:00,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:59:00,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:59:00,836.836 INFO    ] time= 19/06/2026 20:59:00
[2026-06-19 20:59:00,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:59:00,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:59:00,995.995 INFO    ] No existing commands found in stream
[2026-06-19 20:59:06,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:59:06,020.020 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 20:59:08,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:59:08,350.350 INFO    ] Checking for system updates...
[2026-06-19 20:59:08,394.394 INFO    ] 200
[2026-06-19 20:59:08,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:08,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:59:08,454.454 INFO    ] No update needed
[2026-06-19 20:59:08,456.456 INFO    ] Checking for camera pi updates...
[2026-06-19 20:59:08,492.492 INFO    ] 200
[2026-06-19 20:59:08,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:08,535.535 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:59:08,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:59:08,590.590 INFO    ] No camera update needed
[2026-06-19 20:59:08,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:59:08,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:59:08,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:59:08,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:59:10,648.648 INFO    ] ================================================
[2026-06-19 20:59:10,664.664 INFO    ] Launching Daemon at Fri Jun 19 20:59:10 IST 2026
[2026-06-19 20:59:10,675.675 INFO    ] ================================================
[2026-06-19 20:59:11,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:59:11
[2026-06-19 20:59:11,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:59:12,075.075 INFO    ] Initializing speech engine...
[2026-06-19 20:59:12,082.082 INFO    ] 2026-06-19 20:59:12
[2026-06-19 20:59:12,356.356 INFO    ] 2026-06-19 20:59:12
[2026-06-19 20:59:12,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:59:12,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:59:12,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:59:12,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:59:12,780.780 INFO    ] time= 19/06/2026 20:59:12
[2026-06-19 20:59:12,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:59:12,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:59:12,870.870 INFO    ] No existing commands found in stream
[2026-06-19 20:59:17,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:59:17,886.886 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 20:59:19,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 20:59:19,594.594 INFO    ] Checking for system updates...
[2026-06-19 20:59:19,636.636 INFO    ] 200
[2026-06-19 20:59:19,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:19,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:59:19,693.693 INFO    ] No update needed
[2026-06-19 20:59:19,696.696 INFO    ] Checking for camera pi updates...
[2026-06-19 20:59:19,730.730 INFO    ] 200
[2026-06-19 20:59:19,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:19,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:59:19,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 20:59:19,820.820 INFO    ] No camera update needed
[2026-06-19 20:59:19,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:59:19,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:59:19,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:59:19,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:59:21,880.880 INFO    ] ================================================
[2026-06-19 20:59:21,896.896 INFO    ] Launching Daemon at Fri Jun 19 20:59:21 IST 2026
[2026-06-19 20:59:21,908.908 INFO    ] ================================================
[2026-06-19 20:59:22,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:59:22
[2026-06-19 20:59:23,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:59:23,552.552 INFO    ] Initializing speech engine...
[2026-06-19 20:59:23,561.561 INFO    ] 2026-06-19 20:59:23
[2026-06-19 20:59:23,843.843 INFO    ] 2026-06-19 20:59:23
[2026-06-19 20:59:23,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:59:24,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:59:24,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:59:24,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:59:24,372.372 INFO    ] time= 19/06/2026 20:59:24
[2026-06-19 20:59:24,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:59:24,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:59:24,533.533 INFO    ] No existing commands found in stream
[2026-06-19 20:59:29,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:59:29,559.559 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 20:59:32,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 20:59:32,161.161 INFO    ] Checking for system updates...
[2026-06-19 20:59:32,207.207 INFO    ] 200
[2026-06-19 20:59:32,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:32,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:59:32,287.287 INFO    ] No update needed
[2026-06-19 20:59:32,291.291 INFO    ] Checking for camera pi updates...
[2026-06-19 20:59:32,339.339 INFO    ] 200
[2026-06-19 20:59:32,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:32,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:59:32,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:59:32,430.430 INFO    ] No camera update needed
[2026-06-19 20:59:32,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:59:32,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:59:32,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:59:32,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:59:34,491.491 INFO    ] ================================================
[2026-06-19 20:59:34,507.507 INFO    ] Launching Daemon at Fri Jun 19 20:59:34 IST 2026
[2026-06-19 20:59:34,518.518 INFO    ] ================================================
[2026-06-19 20:59:35,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:59:35
[2026-06-19 20:59:35,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:59:35,979.979 INFO    ] Initializing speech engine...
[2026-06-19 20:59:35,991.991 INFO    ] 2026-06-19 20:59:35
[2026-06-19 20:59:36,242.242 INFO    ] 2026-06-19 20:59:36
[2026-06-19 20:59:36,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:59:36,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:59:36,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:59:36,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:59:36,704.704 INFO    ] time= 19/06/2026 20:59:36
[2026-06-19 20:59:36,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:59:36,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:59:36,860.860 INFO    ] No existing commands found in stream
[2026-06-19 20:59:41,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:59:41,875.875 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 20:59:45,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:59:45,049.049 INFO    ] Checking for system updates...
[2026-06-19 20:59:45,086.086 INFO    ] 200
[2026-06-19 20:59:45,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:45,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:59:45,143.143 INFO    ] No update needed
[2026-06-19 20:59:45,146.146 INFO    ] Checking for camera pi updates...
[2026-06-19 20:59:45,180.180 INFO    ] 200
[2026-06-19 20:59:45,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:45,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:59:45,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:59:45,280.280 INFO    ] No camera update needed
[2026-06-19 20:59:45,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:59:45,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:59:45,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:59:45,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:59:47,338.338 INFO    ] ================================================
[2026-06-19 20:59:47,353.353 INFO    ] Launching Daemon at Fri Jun 19 20:59:47 IST 2026
[2026-06-19 20:59:47,365.365 INFO    ] ================================================
[2026-06-19 20:59:47,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:59:47
[2026-06-19 20:59:48,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 20:59:48,841.841 INFO    ] Initializing speech engine...
[2026-06-19 20:59:48,850.850 INFO    ] 2026-06-19 20:59:48
[2026-06-19 20:59:49,111.111 INFO    ] 2026-06-19 20:59:49
[2026-06-19 20:59:49,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 20:59:49,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 20:59:49,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 20:59:49,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 20:59:49,579.579 INFO    ] time= 19/06/2026 20:59:49
[2026-06-19 20:59:49,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 20:59:49,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-19 20:59:49,718.718 INFO    ] No existing commands found in stream
[2026-06-19 20:59:54,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 20:59:54,732.732 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 20:59:56,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 20:59:56,407.407 INFO    ] Checking for system updates...
[2026-06-19 20:59:56,447.447 INFO    ] 200
[2026-06-19 20:59:56,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:56,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:59:56,513.513 INFO    ] No update needed
[2026-06-19 20:59:56,516.516 INFO    ] Checking for camera pi updates...
[2026-06-19 20:59:56,551.551 INFO    ] 200
[2026-06-19 20:59:56,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 20:59:56,594.594 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 20:59:56,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 20:59:56,650.650 INFO    ] No camera update needed
[2026-06-19 20:59:56,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-19 20:59:56,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 20:59:56,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 20:59:56,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 20:59:58,707.707 INFO    ] ================================================
[2026-06-19 20:59:58,723.723 INFO    ] Launching Daemon at Fri Jun 19 20:59:58 IST 2026
[2026-06-19 20:59:58,734.734 INFO    ] ================================================
[2026-06-19 20:59:59,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 20:59:59
[2026-06-19 21:00:00,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:00:00,394.394 INFO    ] Initializing speech engine...
[2026-06-19 21:00:00,403.403 INFO    ] 2026-06-19 21:00:00
[2026-06-19 21:00:00,689.689 INFO    ] 2026-06-19 21:00:00
[2026-06-19 21:00:00,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:00:00,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:00:00,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:00:01,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:00:01,216.216 INFO    ] time= 19/06/2026 21:00:01
[2026-06-19 21:00:01,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:00:01,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:00:01,332.332 INFO    ] No existing commands found in stream
[2026-06-19 21:00:06,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:00:06,353.353 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 21:00:08,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:00:08,873.873 INFO    ] Checking for system updates...
[2026-06-19 21:00:08,909.909 INFO    ] 200
[2026-06-19 21:00:08,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:08,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:00:08,978.978 INFO    ] No update needed
[2026-06-19 21:00:08,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 21:00:09,019.019 INFO    ] 200
[2026-06-19 21:00:09,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:09,063.063 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:00:09,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:00:09,113.113 INFO    ] No camera update needed
[2026-06-19 21:00:09,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:00:09,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:00:09,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:00:09,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:00:11,181.181 INFO    ] ================================================
[2026-06-19 21:00:11,197.197 INFO    ] Launching Daemon at Fri Jun 19 21:00:11 IST 2026
[2026-06-19 21:00:11,208.208 INFO    ] ================================================
[2026-06-19 21:00:11,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:00:11
[2026-06-19 21:00:12,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:00:12,672.672 INFO    ] Initializing speech engine...
[2026-06-19 21:00:12,681.681 INFO    ] 2026-06-19 21:00:12
[2026-06-19 21:00:12,946.946 INFO    ] 2026-06-19 21:00:12
[2026-06-19 21:00:13,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:00:13,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:00:13,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:00:13,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:00:13,386.386 INFO    ] time= 19/06/2026 21:00:13
[2026-06-19 21:00:13,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:00:13,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:00:13,549.549 INFO    ] No existing commands found in stream
[2026-06-19 21:00:18,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:00:18,564.564 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 21:00:20,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:00:20,754.754 INFO    ] Checking for system updates...
[2026-06-19 21:00:20,790.790 INFO    ] 200
[2026-06-19 21:00:20,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:20,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:00:20,848.848 INFO    ] No update needed
[2026-06-19 21:00:20,851.851 INFO    ] Checking for camera pi updates...
[2026-06-19 21:00:20,888.888 INFO    ] 200
[2026-06-19 21:00:20,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:20,936.936 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:00:20,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:00:20,995.995 INFO    ] No camera update needed
[2026-06-19 21:00:20,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:00:21,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:00:21,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:00:21,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:00:23,050.050 INFO    ] ================================================
[2026-06-19 21:00:23,066.066 INFO    ] Launching Daemon at Fri Jun 19 21:00:23 IST 2026
[2026-06-19 21:00:23,077.077 INFO    ] ================================================
[2026-06-19 21:00:23,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:00:23
[2026-06-19 21:00:24,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:00:24,686.686 INFO    ] Initializing speech engine...
[2026-06-19 21:00:24,695.695 INFO    ] 2026-06-19 21:00:24
[2026-06-19 21:00:24,967.967 INFO    ] 2026-06-19 21:00:24
[2026-06-19 21:00:25,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:00:25,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:00:25,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:00:25,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:00:25,439.439 INFO    ] time= 19/06/2026 21:00:25
[2026-06-19 21:00:25,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:00:25,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:00:25,660.660 INFO    ] No existing commands found in stream
[2026-06-19 21:00:30,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:00:30,685.685 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 21:00:31,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:00:31,744.744 INFO    ] Checking for system updates...
[2026-06-19 21:00:31,787.787 INFO    ] 200
[2026-06-19 21:00:31,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:31,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:00:31,853.853 INFO    ] No update needed
[2026-06-19 21:00:31,856.856 INFO    ] Checking for camera pi updates...
[2026-06-19 21:00:31,894.894 INFO    ] 200
[2026-06-19 21:00:31,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:31,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:00:32,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:00:32,100.100 INFO    ] No camera update needed
[2026-06-19 21:00:32,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:00:32,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:00:32,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:00:32,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:00:34,162.162 INFO    ] ================================================
[2026-06-19 21:00:34,177.177 INFO    ] Launching Daemon at Fri Jun 19 21:00:34 IST 2026
[2026-06-19 21:00:34,190.190 INFO    ] ================================================
[2026-06-19 21:00:34,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:00:34
[2026-06-19 21:00:35,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:00:35,828.828 INFO    ] Initializing speech engine...
[2026-06-19 21:00:35,836.836 INFO    ] 2026-06-19 21:00:35
[2026-06-19 21:00:36,124.124 INFO    ] 2026-06-19 21:00:36
[2026-06-19 21:00:36,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:00:36,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:00:36,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:00:36,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:00:36,580.580 INFO    ] time= 19/06/2026 21:00:36
[2026-06-19 21:00:36,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:00:36,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:00:36,726.726 INFO    ] No existing commands found in stream
[2026-06-19 21:00:41,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:00:41,741.741 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 21:00:44,734.734 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:00:44,737.737 INFO    ] Checking for system updates...
[2026-06-19 21:00:44,773.773 INFO    ] 200
[2026-06-19 21:00:44,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:44,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:00:44,831.831 INFO    ] No update needed
[2026-06-19 21:00:44,834.834 INFO    ] Checking for camera pi updates...
[2026-06-19 21:00:44,872.872 INFO    ] 200
[2026-06-19 21:00:44,875.875 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:44,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:00:44,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:00:44,965.965 INFO    ] No camera update needed
[2026-06-19 21:00:44,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:00:44,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:00:44,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:00:44,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:00:47,020.020 INFO    ] ================================================
[2026-06-19 21:00:47,041.041 INFO    ] Launching Daemon at Fri Jun 19 21:00:47 IST 2026
[2026-06-19 21:00:47,052.052 INFO    ] ================================================
[2026-06-19 21:00:47,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:00:47
[2026-06-19 21:00:48,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:00:48,515.515 INFO    ] Initializing speech engine...
[2026-06-19 21:00:48,524.524 INFO    ] 2026-06-19 21:00:48
[2026-06-19 21:00:48,787.787 INFO    ] 2026-06-19 21:00:48
[2026-06-19 21:00:48,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:00:49,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:00:49,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:00:49,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:00:49,252.252 INFO    ] time= 19/06/2026 21:00:49
[2026-06-19 21:00:49,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:00:49,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:00:49,394.394 INFO    ] No existing commands found in stream
[2026-06-19 21:00:54,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:00:54,409.409 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 21:00:58,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:00:58,027.027 INFO    ] Checking for system updates...
[2026-06-19 21:00:58,064.064 INFO    ] 200
[2026-06-19 21:00:58,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:58,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:00:58,127.127 INFO    ] No update needed
[2026-06-19 21:00:58,130.130 INFO    ] Checking for camera pi updates...
[2026-06-19 21:00:58,164.164 INFO    ] 200
[2026-06-19 21:00:58,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:00:58,212.212 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:00:58,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:00:58,271.271 INFO    ] No camera update needed
[2026-06-19 21:00:58,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:00:58,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:00:58,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:00:58,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:01:00,332.332 INFO    ] ================================================
[2026-06-19 21:01:00,348.348 INFO    ] Launching Daemon at Fri Jun 19 21:01:00 IST 2026
[2026-06-19 21:01:00,359.359 INFO    ] ================================================
[2026-06-19 21:01:01,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:01:01
[2026-06-19 21:01:01,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:01:02,161.161 INFO    ] Initializing speech engine...
[2026-06-19 21:01:02,169.169 INFO    ] 2026-06-19 21:01:02
[2026-06-19 21:01:02,486.486 INFO    ] 2026-06-19 21:01:02
[2026-06-19 21:01:02,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:01:02,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:01:02,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:01:02,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:01:02,927.927 INFO    ] time= 19/06/2026 21:01:02
[2026-06-19 21:01:02,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:01:03,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:01:03,134.134 INFO    ] No existing commands found in stream
[2026-06-19 21:01:08,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:01:08,154.154 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 21:01:10,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:01:10,328.328 INFO    ] Checking for system updates...
[2026-06-19 21:01:10,369.369 INFO    ] 200
[2026-06-19 21:01:10,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:10,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:01:10,448.448 INFO    ] No update needed
[2026-06-19 21:01:10,450.450 INFO    ] Checking for camera pi updates...
[2026-06-19 21:01:10,484.484 INFO    ] 200
[2026-06-19 21:01:10,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:10,527.527 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:01:10,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:01:10,581.581 INFO    ] No camera update needed
[2026-06-19 21:01:10,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:01:10,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:01:10,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:01:10,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:01:12,637.637 INFO    ] ================================================
[2026-06-19 21:01:12,653.653 INFO    ] Launching Daemon at Fri Jun 19 21:01:12 IST 2026
[2026-06-19 21:01:12,664.664 INFO    ] ================================================
[2026-06-19 21:01:13,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:01:13
[2026-06-19 21:01:13,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:01:14,123.123 INFO    ] Initializing speech engine...
[2026-06-19 21:01:14,132.132 INFO    ] 2026-06-19 21:01:14
[2026-06-19 21:01:14,389.389 INFO    ] 2026-06-19 21:01:14
[2026-06-19 21:01:14,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:01:14,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:01:14,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:01:14,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:01:14,874.874 INFO    ] time= 19/06/2026 21:01:14
[2026-06-19 21:01:14,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:01:14,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:01:15,063.063 INFO    ] No existing commands found in stream
[2026-06-19 21:01:20,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:01:20,091.091 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-19 21:01:24,321.321 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:01:24,323.323 INFO    ] Checking for system updates...
[2026-06-19 21:01:24,359.359 INFO    ] 200
[2026-06-19 21:01:24,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:24,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:01:24,424.424 INFO    ] No update needed
[2026-06-19 21:01:24,427.427 INFO    ] Checking for camera pi updates...
[2026-06-19 21:01:24,465.465 INFO    ] 200
[2026-06-19 21:01:24,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:24,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:01:24,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:01:24,554.554 INFO    ] No camera update needed
[2026-06-19 21:01:24,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:01:24,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:01:24,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:01:24,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:01:26,609.609 INFO    ] ================================================
[2026-06-19 21:01:26,625.625 INFO    ] Launching Daemon at Fri Jun 19 21:01:26 IST 2026
[2026-06-19 21:01:26,635.635 INFO    ] ================================================
[2026-06-19 21:01:27,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:01:27
[2026-06-19 21:01:27,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:01:28,048.048 INFO    ] Initializing speech engine...
[2026-06-19 21:01:28,054.054 INFO    ] 2026-06-19 21:01:28
[2026-06-19 21:01:28,327.327 INFO    ] 2026-06-19 21:01:28
[2026-06-19 21:01:28,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:01:28,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:01:28,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:01:28,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:01:28,804.804 INFO    ] time= 19/06/2026 21:01:28
[2026-06-19 21:01:28,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:01:28,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:01:28,986.986 INFO    ] No existing commands found in stream
[2026-06-19 21:01:34,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:01:34,021.021 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 21:01:36,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:01:36,431.431 INFO    ] Checking for system updates...
[2026-06-19 21:01:36,467.467 INFO    ] 200
[2026-06-19 21:01:36,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:36,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:01:36,524.524 INFO    ] No update needed
[2026-06-19 21:01:36,527.527 INFO    ] Checking for camera pi updates...
[2026-06-19 21:01:36,561.561 INFO    ] 200
[2026-06-19 21:01:36,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:36,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:01:36,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:01:36,666.666 INFO    ] No camera update needed
[2026-06-19 21:01:36,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:01:36,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:01:36,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:01:36,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:01:38,723.723 INFO    ] ================================================
[2026-06-19 21:01:38,738.738 INFO    ] Launching Daemon at Fri Jun 19 21:01:38 IST 2026
[2026-06-19 21:01:38,750.750 INFO    ] ================================================
[2026-06-19 21:01:39,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:01:39
[2026-06-19 21:01:40,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:01:40,377.377 INFO    ] Initializing speech engine...
[2026-06-19 21:01:40,392.392 INFO    ] 2026-06-19 21:01:40
[2026-06-19 21:01:40,679.679 INFO    ] 2026-06-19 21:01:40
[2026-06-19 21:01:40,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:01:40,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:01:41,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:01:41,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:01:41,210.210 INFO    ] time= 19/06/2026 21:01:41
[2026-06-19 21:01:41,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:01:41,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:01:41,365.365 INFO    ] No existing commands found in stream
[2026-06-19 21:01:46,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:01:46,393.393 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 21:01:48,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:01:48,161.161 INFO    ] Checking for system updates...
[2026-06-19 21:01:48,198.198 INFO    ] 200
[2026-06-19 21:01:48,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:48,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:01:48,266.266 INFO    ] No update needed
[2026-06-19 21:01:48,269.269 INFO    ] Checking for camera pi updates...
[2026-06-19 21:01:48,308.308 INFO    ] 200
[2026-06-19 21:01:48,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:48,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:01:48,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:01:48,401.401 INFO    ] No camera update needed
[2026-06-19 21:01:48,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:01:48,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:01:48,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:01:48,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:01:50,459.459 INFO    ] ================================================
[2026-06-19 21:01:50,474.474 INFO    ] Launching Daemon at Fri Jun 19 21:01:50 IST 2026
[2026-06-19 21:01:50,485.485 INFO    ] ================================================
[2026-06-19 21:01:51,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:01:51
[2026-06-19 21:01:51,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:01:52,131.131 INFO    ] Initializing speech engine...
[2026-06-19 21:01:52,138.138 INFO    ] 2026-06-19 21:01:52
[2026-06-19 21:01:52,413.413 INFO    ] 2026-06-19 21:01:52
[2026-06-19 21:01:52,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:01:52,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:01:52,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:01:52,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:01:52,911.911 INFO    ] time= 19/06/2026 21:01:52
[2026-06-19 21:01:52,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:01:52,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:01:53,104.104 INFO    ] No existing commands found in stream
[2026-06-19 21:01:58,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:01:58,141.141 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 21:01:59,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:01:59,701.701 INFO    ] Checking for system updates...
[2026-06-19 21:01:59,739.739 INFO    ] 200
[2026-06-19 21:01:59,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:59,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:01:59,799.799 INFO    ] No update needed
[2026-06-19 21:01:59,801.801 INFO    ] Checking for camera pi updates...
[2026-06-19 21:01:59,840.840 INFO    ] 200
[2026-06-19 21:01:59,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:01:59,895.895 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:01:59,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:01:59,943.943 INFO    ] No camera update needed
[2026-06-19 21:01:59,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:01:59,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:01:59,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:01:59,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:02:02,010.010 INFO    ] ================================================
[2026-06-19 21:02:02,034.034 INFO    ] Launching Daemon at Fri Jun 19 21:02:02 IST 2026
[2026-06-19 21:02:02,047.047 INFO    ] ================================================
[2026-06-19 21:02:02,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:02:02
[2026-06-19 21:02:03,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:02:03,719.719 INFO    ] Initializing speech engine...
[2026-06-19 21:02:03,730.730 INFO    ] 2026-06-19 21:02:03
[2026-06-19 21:02:04,016.016 INFO    ] 2026-06-19 21:02:04
[2026-06-19 21:02:04,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:02:04,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:02:04,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:02:04,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:02:04,475.475 INFO    ] time= 19/06/2026 21:02:04
[2026-06-19 21:02:04,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:02:04,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:02:04,622.622 INFO    ] No existing commands found in stream
[2026-06-19 21:02:09,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:02:09,641.641 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-19 21:02:13,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:02:13,218.218 INFO    ] Checking for system updates...
[2026-06-19 21:02:13,255.255 INFO    ] 200
[2026-06-19 21:02:13,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:02:13,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:02:13,316.316 INFO    ] No update needed
[2026-06-19 21:02:13,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 21:02:13,354.354 INFO    ] 200
[2026-06-19 21:02:13,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:02:13,398.398 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:02:13,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:02:13,456.456 INFO    ] No camera update needed
[2026-06-19 21:02:13,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:02:13,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:02:13,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:02:13,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:02:15,514.514 INFO    ] ================================================
[2026-06-19 21:02:15,529.529 INFO    ] Launching Daemon at Fri Jun 19 21:02:15 IST 2026
[2026-06-19 21:02:15,540.540 INFO    ] ================================================
[2026-06-19 21:02:16,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:02:16
[2026-06-19 21:02:16,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:02:17,189.189 INFO    ] Initializing speech engine...
[2026-06-19 21:02:17,200.200 INFO    ] 2026-06-19 21:02:17
[2026-06-19 21:02:17,487.487 INFO    ] 2026-06-19 21:02:17
[2026-06-19 21:02:17,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:02:17,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:02:17,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:02:17,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:02:18,036.036 INFO    ] time= 19/06/2026 21:02:18
[2026-06-19 21:02:18,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:02:18,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:02:18,189.189 INFO    ] No existing commands found in stream
[2026-06-19 21:02:23,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:02:23,207.207 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 21:02:27,075.075 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:02:27,078.078 INFO    ] Checking for system updates...
[2026-06-19 21:02:27,115.115 INFO    ] 200
[2026-06-19 21:02:27,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:02:27,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:02:27,182.182 INFO    ] No update needed
[2026-06-19 21:02:27,185.185 INFO    ] Checking for camera pi updates...
[2026-06-19 21:02:27,220.220 INFO    ] 200
[2026-06-19 21:02:27,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:02:27,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:02:27,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:02:27,329.329 INFO    ] No camera update needed
[2026-06-19 21:02:27,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:02:27,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:02:27,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:02:27,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:02:29,385.385 INFO    ] ================================================
[2026-06-19 21:02:29,400.400 INFO    ] Launching Daemon at Fri Jun 19 21:02:29 IST 2026
[2026-06-19 21:02:29,411.411 INFO    ] ================================================
[2026-06-19 21:02:30,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:02:30
[2026-06-19 21:02:30,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:02:31,048.048 INFO    ] Initializing speech engine...
[2026-06-19 21:02:31,054.054 INFO    ] 2026-06-19 21:02:31
[2026-06-19 21:02:31,364.364 INFO    ] 2026-06-19 21:02:31
[2026-06-19 21:02:31,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:02:31,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:02:31,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:02:31,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:02:31,837.837 INFO    ] time= 19/06/2026 21:02:31
[2026-06-19 21:02:31,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:02:31,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:02:32,037.037 INFO    ] No existing commands found in stream
[2026-06-19 21:02:37,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:02:37,059.059 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 21:02:38,864.864 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:02:38,867.867 INFO    ] Checking for system updates...
[2026-06-19 21:02:38,904.904 INFO    ] 200
[2026-06-19 21:02:38,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:02:38,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:02:38,969.969 INFO    ] No update needed
[2026-06-19 21:02:38,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 21:02:39,005.005 INFO    ] 200
[2026-06-19 21:02:39,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:02:39,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:02:39,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:02:39,104.104 INFO    ] No camera update needed
[2026-06-19 21:02:39,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:02:39,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:02:39,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:02:39,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:02:41,160.160 INFO    ] ================================================
[2026-06-19 21:02:41,175.175 INFO    ] Launching Daemon at Fri Jun 19 21:02:41 IST 2026
[2026-06-19 21:02:41,186.186 INFO    ] ================================================
[2026-06-19 21:02:41,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:02:41
[2026-06-19 21:02:42,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:02:42,652.652 INFO    ] Initializing speech engine...
[2026-06-19 21:02:42,660.660 INFO    ] 2026-06-19 21:02:42
[2026-06-19 21:02:42,909.909 INFO    ] 2026-06-19 21:02:42
[2026-06-19 21:02:42,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:02:43,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:02:43,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:02:43,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:02:43,380.380 INFO    ] time= 19/06/2026 21:02:43
[2026-06-19 21:02:43,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:02:43,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:02:43,528.528 INFO    ] No existing commands found in stream
[2026-06-19 21:02:48,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:02:48,543.543 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 21:02:50,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:02:50,088.088 INFO    ] Checking for system updates...
[2026-06-19 21:02:50,127.127 INFO    ] 200
[2026-06-19 21:02:50,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:02:50,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:02:50,185.185 INFO    ] No update needed
[2026-06-19 21:02:50,187.187 INFO    ] Checking for camera pi updates...
[2026-06-19 21:02:50,221.221 INFO    ] 200
[2026-06-19 21:02:50,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:02:50,265.265 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:02:50,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:02:50,299.299 INFO    ] No camera update needed
[2026-06-19 21:02:50,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:02:50,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:02:50,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:02:50,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:02:52,356.356 INFO    ] ================================================
[2026-06-19 21:02:52,372.372 INFO    ] Launching Daemon at Fri Jun 19 21:02:52 IST 2026
[2026-06-19 21:02:52,383.383 INFO    ] ================================================
[2026-06-19 21:02:52,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:02:52
[2026-06-19 21:02:53,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:02:53,811.811 INFO    ] Initializing speech engine...
[2026-06-19 21:02:53,828.828 INFO    ] 2026-06-19 21:02:53
[2026-06-19 21:02:54,084.084 INFO    ] 2026-06-19 21:02:54
[2026-06-19 21:02:54,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:02:54,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:02:54,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:02:54,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:02:54,540.540 INFO    ] time= 19/06/2026 21:02:54
[2026-06-19 21:02:54,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:02:54,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:02:54,725.725 INFO    ] No existing commands found in stream
[2026-06-19 21:02:59,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:02:59,760.760 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 21:03:02,040.040 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:03:02,044.044 INFO    ] Checking for system updates...
[2026-06-19 21:03:02,087.087 INFO    ] 200
[2026-06-19 21:03:02,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:02,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:03:02,166.166 INFO    ] No update needed
[2026-06-19 21:03:02,170.170 INFO    ] Checking for camera pi updates...
[2026-06-19 21:03:02,210.210 INFO    ] 200
[2026-06-19 21:03:02,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:02,271.271 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:03:02,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:03:02,313.313 INFO    ] No camera update needed
[2026-06-19 21:03:02,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:03:02,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:03:02,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:03:02,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:03:04,383.383 INFO    ] ================================================
[2026-06-19 21:03:04,399.399 INFO    ] Launching Daemon at Fri Jun 19 21:03:04 IST 2026
[2026-06-19 21:03:04,410.410 INFO    ] ================================================
[2026-06-19 21:03:04,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:03:04
[2026-06-19 21:03:05,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:03:05,895.895 INFO    ] Initializing speech engine...
[2026-06-19 21:03:05,906.906 INFO    ] 2026-06-19 21:03:05
[2026-06-19 21:03:06,225.225 INFO    ] 2026-06-19 21:03:06
[2026-06-19 21:03:06,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:03:06,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:03:06,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:03:06,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:03:06,754.754 INFO    ] time= 19/06/2026 21:03:06
[2026-06-19 21:03:06,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:03:06,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:03:06,959.959 INFO    ] No existing commands found in stream
[2026-06-19 21:03:11,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:03:11,986.986 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 21:03:13,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:03:13,610.610 INFO    ] Checking for system updates...
[2026-06-19 21:03:13,651.651 INFO    ] 200
[2026-06-19 21:03:13,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:13,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:03:13,712.712 INFO    ] No update needed
[2026-06-19 21:03:13,715.715 INFO    ] Checking for camera pi updates...
[2026-06-19 21:03:13,752.752 INFO    ] 200
[2026-06-19 21:03:13,755.755 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:13,814.814 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:03:13,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:03:13,874.874 INFO    ] No camera update needed
[2026-06-19 21:03:13,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:03:13,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:03:13,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:03:13,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:03:15,932.932 INFO    ] ================================================
[2026-06-19 21:03:15,948.948 INFO    ] Launching Daemon at Fri Jun 19 21:03:15 IST 2026
[2026-06-19 21:03:15,959.959 INFO    ] ================================================
[2026-06-19 21:03:16,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:03:16
[2026-06-19 21:03:17,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:03:17,465.465 INFO    ] Initializing speech engine...
[2026-06-19 21:03:17,473.473 INFO    ] 2026-06-19 21:03:17
[2026-06-19 21:03:17,797.797 INFO    ] 2026-06-19 21:03:17
[2026-06-19 21:03:17,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:03:18,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:03:18,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:03:18,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:03:18,200.200 INFO    ] time= 19/06/2026 21:03:18
[2026-06-19 21:03:18,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:03:18,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:03:18,334.334 INFO    ] No existing commands found in stream
[2026-06-19 21:03:23,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:03:23,351.351 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 21:03:25,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:03:25,503.503 INFO    ] Checking for system updates...
[2026-06-19 21:03:25,544.544 INFO    ] 200
[2026-06-19 21:03:25,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:25,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:03:25,602.602 INFO    ] No update needed
[2026-06-19 21:03:25,605.605 INFO    ] Checking for camera pi updates...
[2026-06-19 21:03:25,639.639 INFO    ] 200
[2026-06-19 21:03:25,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:25,681.681 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:03:25,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:03:25,730.730 INFO    ] No camera update needed
[2026-06-19 21:03:25,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:03:25,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:03:25,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:03:25,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:03:27,787.787 INFO    ] ================================================
[2026-06-19 21:03:27,802.802 INFO    ] Launching Daemon at Fri Jun 19 21:03:27 IST 2026
[2026-06-19 21:03:27,813.813 INFO    ] ================================================
[2026-06-19 21:03:28,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:03:28
[2026-06-19 21:03:28,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:03:29,224.224 INFO    ] Initializing speech engine...
[2026-06-19 21:03:29,233.233 INFO    ] 2026-06-19 21:03:29
[2026-06-19 21:03:29,533.533 INFO    ] 2026-06-19 21:03:29
[2026-06-19 21:03:29,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:03:29,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:03:29,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:03:29,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:03:29,965.965 INFO    ] time= 19/06/2026 21:03:29
[2026-06-19 21:03:29,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:03:30,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:03:30,124.124 INFO    ] No existing commands found in stream
[2026-06-19 21:03:35,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:03:35,147.147 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 21:03:37,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:03:37,021.021 INFO    ] Checking for system updates...
[2026-06-19 21:03:37,058.058 INFO    ] 200
[2026-06-19 21:03:37,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:37,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:03:37,115.115 INFO    ] No update needed
[2026-06-19 21:03:37,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 21:03:37,151.151 INFO    ] 200
[2026-06-19 21:03:37,154.154 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:37,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:03:37,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:03:37,250.250 INFO    ] No camera update needed
[2026-06-19 21:03:37,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:03:37,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:03:37,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:03:37,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:03:39,305.305 INFO    ] ================================================
[2026-06-19 21:03:39,321.321 INFO    ] Launching Daemon at Fri Jun 19 21:03:39 IST 2026
[2026-06-19 21:03:39,331.331 INFO    ] ================================================
[2026-06-19 21:03:40,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:03:39
[2026-06-19 21:03:40,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:03:41,018.018 INFO    ] Initializing speech engine...
[2026-06-19 21:03:41,025.025 INFO    ] 2026-06-19 21:03:41
[2026-06-19 21:03:41,301.301 INFO    ] 2026-06-19 21:03:41
[2026-06-19 21:03:41,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:03:41,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:03:41,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:03:41,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:03:41,677.677 INFO    ] time= 19/06/2026 21:03:41
[2026-06-19 21:03:41,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:03:41,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:03:41,813.813 INFO    ] No existing commands found in stream
[2026-06-19 21:03:46,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:03:46,827.827 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 21:03:51,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:03:51,236.236 INFO    ] Checking for system updates...
[2026-06-19 21:03:51,273.273 INFO    ] 200
[2026-06-19 21:03:51,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:51,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:03:51,333.333 INFO    ] No update needed
[2026-06-19 21:03:51,336.336 INFO    ] Checking for camera pi updates...
[2026-06-19 21:03:51,376.376 INFO    ] 200
[2026-06-19 21:03:51,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:03:51,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:03:51,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:03:51,472.472 INFO    ] No camera update needed
[2026-06-19 21:03:51,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:03:51,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:03:51,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:03:51,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:03:53,532.532 INFO    ] ================================================
[2026-06-19 21:03:53,548.548 INFO    ] Launching Daemon at Fri Jun 19 21:03:53 IST 2026
[2026-06-19 21:03:53,559.559 INFO    ] ================================================
[2026-06-19 21:03:54,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:03:54
[2026-06-19 21:03:54,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:03:55,218.218 INFO    ] Initializing speech engine...
[2026-06-19 21:03:55,230.230 INFO    ] 2026-06-19 21:03:55
[2026-06-19 21:03:55,516.516 INFO    ] 2026-06-19 21:03:55
[2026-06-19 21:03:55,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:03:55,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:03:55,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:03:56,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:03:56,048.048 INFO    ] time= 19/06/2026 21:03:56
[2026-06-19 21:03:56,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:03:56,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:03:56,200.200 INFO    ] No existing commands found in stream
[2026-06-19 21:04:01,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:04:01,231.231 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 21:04:03,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:04:03,065.065 INFO    ] Checking for system updates...
[2026-06-19 21:04:03,102.102 INFO    ] 200
[2026-06-19 21:04:03,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:03,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:04:03,162.162 INFO    ] No update needed
[2026-06-19 21:04:03,165.165 INFO    ] Checking for camera pi updates...
[2026-06-19 21:04:03,200.200 INFO    ] 200
[2026-06-19 21:04:03,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:03,244.244 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:04:03,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:04:03,296.296 INFO    ] No camera update needed
[2026-06-19 21:04:03,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:04:03,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:04:03,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:04:03,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:04:05,354.354 INFO    ] ================================================
[2026-06-19 21:04:05,369.369 INFO    ] Launching Daemon at Fri Jun 19 21:04:05 IST 2026
[2026-06-19 21:04:05,380.380 INFO    ] ================================================
[2026-06-19 21:04:05,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:04:05
[2026-06-19 21:04:06,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:04:06,850.850 INFO    ] Initializing speech engine...
[2026-06-19 21:04:06,859.859 INFO    ] 2026-06-19 21:04:06
[2026-06-19 21:04:07,155.155 INFO    ] 2026-06-19 21:04:07
[2026-06-19 21:04:07,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:04:07,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:04:07,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:04:07,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:04:07,536.536 INFO    ] time= 19/06/2026 21:04:07
[2026-06-19 21:04:07,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:04:07,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:04:07,663.663 INFO    ] No existing commands found in stream
[2026-06-19 21:04:12,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:04:12,682.682 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 21:04:14,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:04:14,916.916 INFO    ] Checking for system updates...
[2026-06-19 21:04:14,952.952 INFO    ] 200
[2026-06-19 21:04:14,955.955 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:15,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:04:15,010.010 INFO    ] No update needed
[2026-06-19 21:04:15,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 21:04:15,046.046 INFO    ] 200
[2026-06-19 21:04:15,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:15,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:04:15,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:04:15,145.145 INFO    ] No camera update needed
[2026-06-19 21:04:15,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:04:15,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:04:15,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:04:15,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:04:17,203.203 INFO    ] ================================================
[2026-06-19 21:04:17,218.218 INFO    ] Launching Daemon at Fri Jun 19 21:04:17 IST 2026
[2026-06-19 21:04:17,229.229 INFO    ] ================================================
[2026-06-19 21:04:17,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:04:17
[2026-06-19 21:04:18,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:04:18,869.869 INFO    ] Initializing speech engine...
[2026-06-19 21:04:18,877.877 INFO    ] 2026-06-19 21:04:18
[2026-06-19 21:04:19,157.157 INFO    ] 2026-06-19 21:04:19
[2026-06-19 21:04:19,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:04:19,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:04:19,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:04:19,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:04:19,646.646 INFO    ] time= 19/06/2026 21:04:19
[2026-06-19 21:04:19,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:04:19,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:04:19,776.776 INFO    ] No existing commands found in stream
[2026-06-19 21:04:24,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:04:24,792.792 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 21:04:28,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:04:28,110.110 INFO    ] Checking for system updates...
[2026-06-19 21:04:28,146.146 INFO    ] 200
[2026-06-19 21:04:28,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:28,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:04:28,206.206 INFO    ] No update needed
[2026-06-19 21:04:28,208.208 INFO    ] Checking for camera pi updates...
[2026-06-19 21:04:28,242.242 INFO    ] 200
[2026-06-19 21:04:28,245.245 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:28,285.285 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:04:28,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:04:28,344.344 INFO    ] No camera update needed
[2026-06-19 21:04:28,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:04:28,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:04:28,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:04:28,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:04:30,405.405 INFO    ] ================================================
[2026-06-19 21:04:30,420.420 INFO    ] Launching Daemon at Fri Jun 19 21:04:30 IST 2026
[2026-06-19 21:04:30,431.431 INFO    ] ================================================
[2026-06-19 21:04:31,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:04:31
[2026-06-19 21:04:31,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:04:31,958.958 INFO    ] Initializing speech engine...
[2026-06-19 21:04:31,969.969 INFO    ] 2026-06-19 21:04:31
[2026-06-19 21:04:32,245.245 INFO    ] 2026-06-19 21:04:32
[2026-06-19 21:04:32,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:04:32,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:04:32,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:04:32,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:04:32,736.736 INFO    ] time= 19/06/2026 21:04:32
[2026-06-19 21:04:32,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:04:32,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:04:32,942.942 INFO    ] No existing commands found in stream
[2026-06-19 21:04:37,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:04:37,977.977 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 21:04:39,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:04:39,539.539 INFO    ] Checking for system updates...
[2026-06-19 21:04:39,575.575 INFO    ] 200
[2026-06-19 21:04:39,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:39,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:04:39,638.638 INFO    ] No update needed
[2026-06-19 21:04:39,641.641 INFO    ] Checking for camera pi updates...
[2026-06-19 21:04:39,675.675 INFO    ] 200
[2026-06-19 21:04:39,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:39,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:04:39,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:04:39,873.873 INFO    ] No camera update needed
[2026-06-19 21:04:39,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:04:39,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:04:39,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:04:39,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:04:41,931.931 INFO    ] ================================================
[2026-06-19 21:04:41,947.947 INFO    ] Launching Daemon at Fri Jun 19 21:04:41 IST 2026
[2026-06-19 21:04:41,957.957 INFO    ] ================================================
[2026-06-19 21:04:42,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:04:42
[2026-06-19 21:04:43,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:04:43,369.369 INFO    ] Initializing speech engine...
[2026-06-19 21:04:43,380.380 INFO    ] 2026-06-19 21:04:43
[2026-06-19 21:04:43,665.665 INFO    ] 2026-06-19 21:04:43
[2026-06-19 21:04:43,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:04:43,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:04:43,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:04:44,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:04:44,047.047 INFO    ] time= 19/06/2026 21:04:44
[2026-06-19 21:04:44,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:04:44,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:04:44,171.171 INFO    ] No existing commands found in stream
[2026-06-19 21:04:49,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:04:49,186.186 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 21:04:49,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:04:49,592.592 INFO    ] Checking for system updates...
[2026-06-19 21:04:49,629.629 INFO    ] 200
[2026-06-19 21:04:49,631.631 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:49,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:04:49,689.689 INFO    ] No update needed
[2026-06-19 21:04:49,692.692 INFO    ] Checking for camera pi updates...
[2026-06-19 21:04:49,727.727 INFO    ] 200
[2026-06-19 21:04:49,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:49,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:04:49,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:04:49,816.816 INFO    ] No camera update needed
[2026-06-19 21:04:49,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:04:49,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:04:49,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:04:49,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:04:51,872.872 INFO    ] ================================================
[2026-06-19 21:04:51,887.887 INFO    ] Launching Daemon at Fri Jun 19 21:04:51 IST 2026
[2026-06-19 21:04:51,897.897 INFO    ] ================================================
[2026-06-19 21:04:52,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:04:52
[2026-06-19 21:04:53,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:04:53,323.323 INFO    ] Initializing speech engine...
[2026-06-19 21:04:53,331.331 INFO    ] 2026-06-19 21:04:53
[2026-06-19 21:04:53,607.607 INFO    ] 2026-06-19 21:04:53
[2026-06-19 21:04:53,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:04:53,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:04:53,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:04:54,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:04:54,006.006 INFO    ] time= 19/06/2026 21:04:54
[2026-06-19 21:04:54,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:04:54,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:04:54,156.156 INFO    ] No existing commands found in stream
[2026-06-19 21:04:59,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:04:59,184.184 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 21:04:59,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:04:59,699.699 INFO    ] Checking for system updates...
[2026-06-19 21:04:59,734.734 INFO    ] 200
[2026-06-19 21:04:59,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:59,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:04:59,797.797 INFO    ] No update needed
[2026-06-19 21:04:59,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 21:04:59,833.833 INFO    ] 200
[2026-06-19 21:04:59,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:04:59,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:04:59,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:04:59,931.931 INFO    ] No camera update needed
[2026-06-19 21:04:59,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:04:59,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:04:59,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:04:59,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:05:02,019.019 INFO    ] ================================================
[2026-06-19 21:05:02,123.123 INFO    ] Launching Daemon at Fri Jun 19 21:05:02 IST 2026
[2026-06-19 21:05:02,182.182 INFO    ] ================================================
[2026-06-19 21:05:03,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:05:02
[2026-06-19 21:05:03,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:05:03,971.971 INFO    ] Initializing speech engine...
[2026-06-19 21:05:03,995.995 INFO    ] 2026-06-19 21:05:03
[2026-06-19 21:05:04,272.272 INFO    ] 2026-06-19 21:05:04
[2026-06-19 21:05:04,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:05:04,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:05:04,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:05:04,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:05:04,668.668 INFO    ] time= 19/06/2026 21:05:04
[2026-06-19 21:05:04,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:05:04,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:05:04,776.776 INFO    ] No existing commands found in stream
[2026-06-19 21:05:09,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:05:09,798.798 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 21:05:11,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:05:11,735.735 INFO    ] Checking for system updates...
[2026-06-19 21:05:11,772.772 INFO    ] 200
[2026-06-19 21:05:11,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:11,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:05:11,832.832 INFO    ] No update needed
[2026-06-19 21:05:11,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 21:05:11,871.871 INFO    ] 200
[2026-06-19 21:05:11,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:11,920.920 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:05:11,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:05:11,966.966 INFO    ] No camera update needed
[2026-06-19 21:05:11,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:05:11,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:05:11,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:05:11,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:05:14,024.024 INFO    ] ================================================
[2026-06-19 21:05:14,039.039 INFO    ] Launching Daemon at Fri Jun 19 21:05:14 IST 2026
[2026-06-19 21:05:14,050.050 INFO    ] ================================================
[2026-06-19 21:05:14,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:05:14
[2026-06-19 21:05:15,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:05:15,491.491 INFO    ] Initializing speech engine...
[2026-06-19 21:05:15,508.508 INFO    ] 2026-06-19 21:05:15
[2026-06-19 21:05:15,766.766 INFO    ] 2026-06-19 21:05:15
[2026-06-19 21:05:15,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:05:15,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:05:16,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:05:16,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:05:16,253.253 INFO    ] time= 19/06/2026 21:05:16
[2026-06-19 21:05:16,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:05:16,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:05:16,459.459 INFO    ] No existing commands found in stream
[2026-06-19 21:05:21,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:05:21,489.489 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 21:05:21,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:05:22,001.001 INFO    ] Checking for system updates...
[2026-06-19 21:05:22,037.037 INFO    ] 200
[2026-06-19 21:05:22,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:22,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:05:22,094.094 INFO    ] No update needed
[2026-06-19 21:05:22,097.097 INFO    ] Checking for camera pi updates...
[2026-06-19 21:05:22,132.132 INFO    ] 200
[2026-06-19 21:05:22,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:22,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:05:22,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:05:22,238.238 INFO    ] No camera update needed
[2026-06-19 21:05:22,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:05:22,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:05:22,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:05:22,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:05:24,297.297 INFO    ] ================================================
[2026-06-19 21:05:24,313.313 INFO    ] Launching Daemon at Fri Jun 19 21:05:24 IST 2026
[2026-06-19 21:05:24,324.324 INFO    ] ================================================
[2026-06-19 21:05:24,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:05:24
[2026-06-19 21:05:25,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:05:25,769.769 INFO    ] Initializing speech engine...
[2026-06-19 21:05:25,776.776 INFO    ] 2026-06-19 21:05:25
[2026-06-19 21:05:26,023.023 INFO    ] 2026-06-19 21:05:26
[2026-06-19 21:05:26,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:05:26,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:05:26,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:05:26,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:05:26,394.394 INFO    ] time= 19/06/2026 21:05:26
[2026-06-19 21:05:26,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:05:26,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:05:26,565.565 INFO    ] No existing commands found in stream
[2026-06-19 21:05:31,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:05:31,598.598 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-19 21:05:33,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:05:33,967.967 INFO    ] Checking for system updates...
[2026-06-19 21:05:34,005.005 INFO    ] 200
[2026-06-19 21:05:34,008.008 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:34,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:05:34,064.064 INFO    ] No update needed
[2026-06-19 21:05:34,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 21:05:34,102.102 INFO    ] 200
[2026-06-19 21:05:34,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:34,147.147 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:05:34,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:05:34,207.207 INFO    ] No camera update needed
[2026-06-19 21:05:34,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:05:34,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:05:34,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:05:34,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:05:36,265.265 INFO    ] ================================================
[2026-06-19 21:05:36,281.281 INFO    ] Launching Daemon at Fri Jun 19 21:05:36 IST 2026
[2026-06-19 21:05:36,292.292 INFO    ] ================================================
[2026-06-19 21:05:36,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:05:36
[2026-06-19 21:05:37,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:05:37,725.725 INFO    ] Initializing speech engine...
[2026-06-19 21:05:37,734.734 INFO    ] 2026-06-19 21:05:37
[2026-06-19 21:05:37,981.981 INFO    ] 2026-06-19 21:05:37
[2026-06-19 21:05:38,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:05:38,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:05:38,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:05:38,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:05:38,416.416 INFO    ] time= 19/06/2026 21:05:38
[2026-06-19 21:05:38,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:05:38,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:05:38,596.596 INFO    ] No existing commands found in stream
[2026-06-19 21:05:43,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:05:43,610.610 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 21:05:45,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:05:45,695.695 INFO    ] Checking for system updates...
[2026-06-19 21:05:45,731.731 INFO    ] 200
[2026-06-19 21:05:45,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:45,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:05:45,790.790 INFO    ] No update needed
[2026-06-19 21:05:45,792.792 INFO    ] Checking for camera pi updates...
[2026-06-19 21:05:45,827.827 INFO    ] 200
[2026-06-19 21:05:45,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:45,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:05:45,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:05:45,911.911 INFO    ] No camera update needed
[2026-06-19 21:05:45,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:05:45,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:05:45,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:05:45,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:05:47,968.968 INFO    ] ================================================
[2026-06-19 21:05:47,983.983 INFO    ] Launching Daemon at Fri Jun 19 21:05:47 IST 2026
[2026-06-19 21:05:48,994.994 INFO    ] ================================================
[2026-06-19 21:05:48,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:05:48
[2026-06-19 21:05:49,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:05:49,591.591 INFO    ] Initializing speech engine...
[2026-06-19 21:05:49,599.599 INFO    ] 2026-06-19 21:05:49
[2026-06-19 21:05:49,857.857 INFO    ] 2026-06-19 21:05:49
[2026-06-19 21:05:49,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:05:50,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:05:50,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:05:50,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:05:50,326.326 INFO    ] time= 19/06/2026 21:05:50
[2026-06-19 21:05:50,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:05:50,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:05:50,470.470 INFO    ] No existing commands found in stream
[2026-06-19 21:05:55,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:05:55,485.485 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 21:05:56,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:05:56,826.826 INFO    ] Checking for system updates...
[2026-06-19 21:05:56,862.862 INFO    ] 200
[2026-06-19 21:05:56,864.864 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:56,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:05:56,921.921 INFO    ] No update needed
[2026-06-19 21:05:56,923.923 INFO    ] Checking for camera pi updates...
[2026-06-19 21:05:56,956.956 INFO    ] 200
[2026-06-19 21:05:56,959.959 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:05:57,003.003 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:05:57,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:05:57,060.060 INFO    ] No camera update needed
[2026-06-19 21:05:57,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:05:57,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:05:57,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:05:57,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:05:59,115.115 INFO    ] ================================================
[2026-06-19 21:05:59,130.130 INFO    ] Launching Daemon at Fri Jun 19 21:05:59 IST 2026
[2026-06-19 21:05:59,141.141 INFO    ] ================================================
[2026-06-19 21:05:59,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:05:59
[2026-06-19 21:06:00,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:06:00,561.561 INFO    ] Initializing speech engine...
[2026-06-19 21:06:00,572.572 INFO    ] 2026-06-19 21:06:00
[2026-06-19 21:06:00,827.827 INFO    ] 2026-06-19 21:06:00
[2026-06-19 21:06:00,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:06:01,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:06:01,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:06:01,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:06:01,287.287 INFO    ] time= 19/06/2026 21:06:01
[2026-06-19 21:06:01,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:06:01,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:06:01,397.397 INFO    ] No existing commands found in stream
[2026-06-19 21:06:06,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:06:06,411.411 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 21:06:08,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:06:08,699.699 INFO    ] Checking for system updates...
[2026-06-19 21:06:08,736.736 INFO    ] 200
[2026-06-19 21:06:08,739.739 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:08,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:06:08,795.795 INFO    ] No update needed
[2026-06-19 21:06:08,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 21:06:08,833.833 INFO    ] 200
[2026-06-19 21:06:08,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:08,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:06:08,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:06:08,926.926 INFO    ] No camera update needed
[2026-06-19 21:06:08,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:06:08,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:06:08,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:06:08,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:06:10,985.985 INFO    ] ================================================
[2026-06-19 21:06:11,001.001 INFO    ] Launching Daemon at Fri Jun 19 21:06:10 IST 2026
[2026-06-19 21:06:11,013.013 INFO    ] ================================================
[2026-06-19 21:06:11,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:06:11
[2026-06-19 21:06:12,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:06:12,429.429 INFO    ] Initializing speech engine...
[2026-06-19 21:06:12,436.436 INFO    ] 2026-06-19 21:06:12
[2026-06-19 21:06:12,725.725 INFO    ] 2026-06-19 21:06:12
[2026-06-19 21:06:12,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:06:12,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:06:12,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:06:13,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:06:13,097.097 INFO    ] time= 19/06/2026 21:06:13
[2026-06-19 21:06:13,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:06:13,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:06:13,223.223 INFO    ] No existing commands found in stream
[2026-06-19 21:06:18,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:06:18,235.235 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 21:06:19,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:06:19,847.847 INFO    ] Checking for system updates...
[2026-06-19 21:06:19,886.886 INFO    ] 200
[2026-06-19 21:06:19,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:19,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:06:19,945.945 INFO    ] No update needed
[2026-06-19 21:06:19,948.948 INFO    ] Checking for camera pi updates...
[2026-06-19 21:06:19,982.982 INFO    ] 200
[2026-06-19 21:06:19,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:20,027.027 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:06:20,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:06:20,078.078 INFO    ] No camera update needed
[2026-06-19 21:06:20,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:06:20,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:06:20,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:06:20,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:06:22,138.138 INFO    ] ================================================
[2026-06-19 21:06:22,153.153 INFO    ] Launching Daemon at Fri Jun 19 21:06:22 IST 2026
[2026-06-19 21:06:22,164.164 INFO    ] ================================================
[2026-06-19 21:06:22,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:06:22
[2026-06-19 21:06:23,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:06:23,598.598 INFO    ] Initializing speech engine...
[2026-06-19 21:06:23,608.608 INFO    ] 2026-06-19 21:06:23
[2026-06-19 21:06:23,854.854 INFO    ] 2026-06-19 21:06:23
[2026-06-19 21:06:23,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:06:24,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:06:24,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:06:24,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:06:24,327.327 INFO    ] time= 19/06/2026 21:06:24
[2026-06-19 21:06:24,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:06:24,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:06:24,479.479 INFO    ] No existing commands found in stream
[2026-06-19 21:06:29,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:06:29,493.493 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 21:06:32,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:06:32,983.983 INFO    ] Checking for system updates...
[2026-06-19 21:06:33,019.019 INFO    ] 200
[2026-06-19 21:06:33,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:33,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:06:33,087.087 INFO    ] No update needed
[2026-06-19 21:06:33,090.090 INFO    ] Checking for camera pi updates...
[2026-06-19 21:06:33,124.124 INFO    ] 200
[2026-06-19 21:06:33,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:33,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:06:33,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:06:33,216.216 INFO    ] No camera update needed
[2026-06-19 21:06:33,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:06:33,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:06:33,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:06:33,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:06:35,273.273 INFO    ] ================================================
[2026-06-19 21:06:35,290.290 INFO    ] Launching Daemon at Fri Jun 19 21:06:35 IST 2026
[2026-06-19 21:06:35,301.301 INFO    ] ================================================
[2026-06-19 21:06:35,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:06:35
[2026-06-19 21:06:36,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:06:36,883.883 INFO    ] Initializing speech engine...
[2026-06-19 21:06:36,888.888 INFO    ] 2026-06-19 21:06:36
[2026-06-19 21:06:37,164.164 INFO    ] 2026-06-19 21:06:37
[2026-06-19 21:06:37,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:06:37,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:06:37,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:06:37,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:06:37,656.656 INFO    ] time= 19/06/2026 21:06:37
[2026-06-19 21:06:37,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:06:37,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:06:37,780.780 INFO    ] No existing commands found in stream
[2026-06-19 21:06:42,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:06:42,796.796 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 21:06:46,371.371 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:06:46,374.374 INFO    ] Checking for system updates...
[2026-06-19 21:06:46,411.411 INFO    ] 200
[2026-06-19 21:06:46,414.414 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:46,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:06:46,470.470 INFO    ] No update needed
[2026-06-19 21:06:46,473.473 INFO    ] Checking for camera pi updates...
[2026-06-19 21:06:46,507.507 INFO    ] 200
[2026-06-19 21:06:46,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:46,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:06:46,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:06:46,704.704 INFO    ] No camera update needed
[2026-06-19 21:06:46,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:06:46,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:06:46,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:06:46,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:06:48,761.761 INFO    ] ================================================
[2026-06-19 21:06:48,776.776 INFO    ] Launching Daemon at Fri Jun 19 21:06:48 IST 2026
[2026-06-19 21:06:48,787.787 INFO    ] ================================================
[2026-06-19 21:06:49,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:06:49
[2026-06-19 21:06:49,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:06:50,191.191 INFO    ] Initializing speech engine...
[2026-06-19 21:06:50,199.199 INFO    ] 2026-06-19 21:06:50
[2026-06-19 21:06:50,472.472 INFO    ] 2026-06-19 21:06:50
[2026-06-19 21:06:50,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:06:50,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:06:50,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:06:50,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:06:50,958.958 INFO    ] time= 19/06/2026 21:06:50
[2026-06-19 21:06:51,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:06:51,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:06:51,089.089 INFO    ] No existing commands found in stream
[2026-06-19 21:06:56,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:06:56,104.104 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 21:06:57,321.321 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:06:57,323.323 INFO    ] Checking for system updates...
[2026-06-19 21:06:57,360.360 INFO    ] 200
[2026-06-19 21:06:57,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:57,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:06:57,417.417 INFO    ] No update needed
[2026-06-19 21:06:57,420.420 INFO    ] Checking for camera pi updates...
[2026-06-19 21:06:57,454.454 INFO    ] 200
[2026-06-19 21:06:57,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:06:57,498.498 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:06:57,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:06:57,554.554 INFO    ] No camera update needed
[2026-06-19 21:06:57,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:06:57,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:06:57,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:06:57,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:06:59,611.611 INFO    ] ================================================
[2026-06-19 21:06:59,626.626 INFO    ] Launching Daemon at Fri Jun 19 21:06:59 IST 2026
[2026-06-19 21:06:59,637.637 INFO    ] ================================================
[2026-06-19 21:07:00,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:07:00
[2026-06-19 21:07:00,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:07:01,083.083 INFO    ] Initializing speech engine...
[2026-06-19 21:07:01,092.092 INFO    ] 2026-06-19 21:07:01
[2026-06-19 21:07:01,342.342 INFO    ] 2026-06-19 21:07:01
[2026-06-19 21:07:01,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:07:01,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:07:01,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:07:01,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:07:01,785.785 INFO    ] time= 19/06/2026 21:07:01
[2026-06-19 21:07:01,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:07:01,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:07:02,003.003 INFO    ] No existing commands found in stream
[2026-06-19 21:07:07,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:07:07,016.016 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-19 21:07:10,156.156 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:07:10,158.158 INFO    ] Checking for system updates...
[2026-06-19 21:07:10,195.195 INFO    ] 200
[2026-06-19 21:07:10,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:10,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:07:10,254.254 INFO    ] No update needed
[2026-06-19 21:07:10,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 21:07:10,291.291 INFO    ] 200
[2026-06-19 21:07:10,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:10,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:07:10,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:07:10,389.389 INFO    ] No camera update needed
[2026-06-19 21:07:10,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:07:10,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:07:10,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:07:10,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:07:12,446.446 INFO    ] ================================================
[2026-06-19 21:07:12,461.461 INFO    ] Launching Daemon at Fri Jun 19 21:07:12 IST 2026
[2026-06-19 21:07:12,472.472 INFO    ] ================================================
[2026-06-19 21:07:13,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:07:13
[2026-06-19 21:07:13,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:07:13,924.924 INFO    ] Initializing speech engine...
[2026-06-19 21:07:13,931.931 INFO    ] 2026-06-19 21:07:13
[2026-06-19 21:07:14,186.186 INFO    ] 2026-06-19 21:07:14
[2026-06-19 21:07:14,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:07:14,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:07:14,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:07:14,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:07:14,732.732 INFO    ] time= 19/06/2026 21:07:14
[2026-06-19 21:07:14,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:07:14,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:07:14,863.863 INFO    ] No existing commands found in stream
[2026-06-19 21:07:19,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:07:19,896.896 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 21:07:20,641.641 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:07:20,644.644 INFO    ] Checking for system updates...
[2026-06-19 21:07:20,684.684 INFO    ] 200
[2026-06-19 21:07:20,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:20,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:07:20,748.748 INFO    ] No update needed
[2026-06-19 21:07:20,750.750 INFO    ] Checking for camera pi updates...
[2026-06-19 21:07:20,786.786 INFO    ] 200
[2026-06-19 21:07:20,789.789 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:20,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:07:20,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:07:20,893.893 INFO    ] No camera update needed
[2026-06-19 21:07:20,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:07:20,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:07:20,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:07:20,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:07:22,952.952 INFO    ] ================================================
[2026-06-19 21:07:22,968.968 INFO    ] Launching Daemon at Fri Jun 19 21:07:22 IST 2026
[2026-06-19 21:07:22,979.979 INFO    ] ================================================
[2026-06-19 21:07:23,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:07:23
[2026-06-19 21:07:24,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:07:24,596.596 INFO    ] Initializing speech engine...
[2026-06-19 21:07:24,609.609 INFO    ] 2026-06-19 21:07:24
[2026-06-19 21:07:24,896.896 INFO    ] 2026-06-19 21:07:24
[2026-06-19 21:07:24,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:07:25,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:07:25,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:07:25,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:07:25,422.422 INFO    ] time= 19/06/2026 21:07:25
[2026-06-19 21:07:25,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:07:25,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:07:25,580.580 INFO    ] No existing commands found in stream
[2026-06-19 21:07:30,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:07:30,618.618 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 21:07:33,927.927 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:07:33,930.930 INFO    ] Checking for system updates...
[2026-06-19 21:07:33,968.968 INFO    ] 200
[2026-06-19 21:07:33,971.971 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:34,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:07:34,029.029 INFO    ] No update needed
[2026-06-19 21:07:34,032.032 INFO    ] Checking for camera pi updates...
[2026-06-19 21:07:34,070.070 INFO    ] 200
[2026-06-19 21:07:34,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:34,116.116 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:07:34,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:07:34,152.152 INFO    ] No camera update needed
[2026-06-19 21:07:34,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:07:34,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:07:34,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:07:34,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:07:36,212.212 INFO    ] ================================================
[2026-06-19 21:07:36,228.228 INFO    ] Launching Daemon at Fri Jun 19 21:07:36 IST 2026
[2026-06-19 21:07:36,239.239 INFO    ] ================================================
[2026-06-19 21:07:36,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:07:36
[2026-06-19 21:07:37,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:07:37,664.664 INFO    ] Initializing speech engine...
[2026-06-19 21:07:37,677.677 INFO    ] 2026-06-19 21:07:37
[2026-06-19 21:07:37,968.968 INFO    ] 2026-06-19 21:07:37
[2026-06-19 21:07:38,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:07:38,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:07:38,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:07:38,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:07:38,354.354 INFO    ] time= 19/06/2026 21:07:38
[2026-06-19 21:07:38,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:07:38,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:07:38,485.485 INFO    ] No existing commands found in stream
[2026-06-19 21:07:43,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:07:43,499.499 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 21:07:45,875.875 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:07:45,877.877 INFO    ] Checking for system updates...
[2026-06-19 21:07:45,914.914 INFO    ] 200
[2026-06-19 21:07:45,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:45,973.973 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:07:45,976.976 INFO    ] No update needed
[2026-06-19 21:07:45,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 21:07:46,013.013 INFO    ] 200
[2026-06-19 21:07:46,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:46,067.067 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:07:46,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:07:46,116.116 INFO    ] No camera update needed
[2026-06-19 21:07:46,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:07:46,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:07:46,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:07:46,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:07:48,174.174 INFO    ] ================================================
[2026-06-19 21:07:48,189.189 INFO    ] Launching Daemon at Fri Jun 19 21:07:48 IST 2026
[2026-06-19 21:07:48,201.201 INFO    ] ================================================
[2026-06-19 21:07:48,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:07:48
[2026-06-19 21:07:49,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:07:49,874.874 INFO    ] Initializing speech engine...
[2026-06-19 21:07:49,884.884 INFO    ] 2026-06-19 21:07:49
[2026-06-19 21:07:50,176.176 INFO    ] 2026-06-19 21:07:50
[2026-06-19 21:07:50,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:07:50,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:07:50,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:07:50,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:07:50,772.772 INFO    ] time= 19/06/2026 21:07:50
[2026-06-19 21:07:50,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:07:50,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:07:50,977.977 INFO    ] No existing commands found in stream
[2026-06-19 21:07:55,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:07:55,997.997 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 21:07:58,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:07:58,703.703 INFO    ] Checking for system updates...
[2026-06-19 21:07:58,744.744 INFO    ] 200
[2026-06-19 21:07:58,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:58,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:07:58,802.802 INFO    ] No update needed
[2026-06-19 21:07:58,804.804 INFO    ] Checking for camera pi updates...
[2026-06-19 21:07:58,838.838 INFO    ] 200
[2026-06-19 21:07:58,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:07:58,887.887 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:07:58,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:07:58,937.937 INFO    ] No camera update needed
[2026-06-19 21:07:58,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:07:58,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:07:58,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:07:58,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:08:00,994.994 INFO    ] ================================================
[2026-06-19 21:08:01,010.010 INFO    ] Launching Daemon at Fri Jun 19 21:08:01 IST 2026
[2026-06-19 21:08:01,022.022 INFO    ] ================================================
[2026-06-19 21:08:01,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:08:01
[2026-06-19 21:08:02,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:08:02,676.676 INFO    ] Initializing speech engine...
[2026-06-19 21:08:02,685.685 INFO    ] 2026-06-19 21:08:02
[2026-06-19 21:08:02,961.961 INFO    ] 2026-06-19 21:08:02
[2026-06-19 21:08:03,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:08:03,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:08:03,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:08:03,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:08:03,367.367 INFO    ] time= 19/06/2026 21:08:03
[2026-06-19 21:08:03,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:08:03,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:08:03,557.557 INFO    ] No existing commands found in stream
[2026-06-19 21:08:08,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:08:08,588.588 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 21:08:11,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:08:11,880.880 INFO    ] Checking for system updates...
[2026-06-19 21:08:11,918.918 INFO    ] 200
[2026-06-19 21:08:11,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:08:11,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:08:11,984.984 INFO    ] No update needed
[2026-06-19 21:08:11,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 21:08:12,020.020 INFO    ] 200
[2026-06-19 21:08:12,022.022 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:08:12,066.066 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:08:12,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:08:12,110.110 INFO    ] No camera update needed
[2026-06-19 21:08:12,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:08:12,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:08:12,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:08:12,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:08:14,168.168 INFO    ] ================================================
[2026-06-19 21:08:14,184.184 INFO    ] Launching Daemon at Fri Jun 19 21:08:14 IST 2026
[2026-06-19 21:08:14,196.196 INFO    ] ================================================
[2026-06-19 21:08:14,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:08:14
[2026-06-19 21:08:15,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:08:15,896.896 INFO    ] Initializing speech engine...
[2026-06-19 21:08:15,902.902 INFO    ] 2026-06-19 21:08:15
[2026-06-19 21:08:16,217.217 INFO    ] 2026-06-19 21:08:16
[2026-06-19 21:08:16,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:08:16,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:08:16,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:08:16,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:08:16,741.741 INFO    ] time= 19/06/2026 21:08:16
[2026-06-19 21:08:16,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:08:16,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:08:16,882.882 INFO    ] No existing commands found in stream
[2026-06-19 21:08:21,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:08:21,917.917 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 21:08:24,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:08:24,498.498 INFO    ] Checking for system updates...
[2026-06-19 21:08:24,535.535 INFO    ] 200
[2026-06-19 21:08:24,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:08:24,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:08:24,596.596 INFO    ] No update needed
[2026-06-19 21:08:24,599.599 INFO    ] Checking for camera pi updates...
[2026-06-19 21:08:24,634.634 INFO    ] 200
[2026-06-19 21:08:24,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:08:24,686.686 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:08:24,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:08:24,736.736 INFO    ] No camera update needed
[2026-06-19 21:08:24,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:08:24,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:08:24,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:08:24,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:08:26,799.799 INFO    ] ================================================
[2026-06-19 21:08:26,814.814 INFO    ] Launching Daemon at Fri Jun 19 21:08:26 IST 2026
[2026-06-19 21:08:26,825.825 INFO    ] ================================================
[2026-06-19 21:08:27,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:08:27
[2026-06-19 21:08:28,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:08:28,521.521 INFO    ] Initializing speech engine...
[2026-06-19 21:08:28,535.535 INFO    ] 2026-06-19 21:08:28
[2026-06-19 21:08:28,817.817 INFO    ] 2026-06-19 21:08:28
[2026-06-19 21:08:28,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:08:29,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:08:29,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:08:29,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:08:29,364.364 INFO    ] time= 19/06/2026 21:08:29
[2026-06-19 21:08:29,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:08:29,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:08:29,516.516 INFO    ] No existing commands found in stream
[2026-06-19 21:08:34,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:08:34,534.534 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 21:08:36,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:08:36,907.907 INFO    ] Checking for system updates...
[2026-06-19 21:08:36,945.945 INFO    ] 200
[2026-06-19 21:08:36,948.948 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:08:37,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:08:37,005.005 INFO    ] No update needed
[2026-06-19 21:08:37,008.008 INFO    ] Checking for camera pi updates...
[2026-06-19 21:08:37,043.043 INFO    ] 200
[2026-06-19 21:08:37,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:08:37,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:08:37,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:08:37,141.141 INFO    ] No camera update needed
[2026-06-19 21:08:37,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:08:37,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:08:37,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:08:37,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:08:39,202.202 INFO    ] ================================================
[2026-06-19 21:08:39,217.217 INFO    ] Launching Daemon at Fri Jun 19 21:08:39 IST 2026
[2026-06-19 21:08:39,229.229 INFO    ] ================================================
[2026-06-19 21:08:39,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:08:39
[2026-06-19 21:08:40,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:08:40,661.661 INFO    ] Initializing speech engine...
[2026-06-19 21:08:40,668.668 INFO    ] 2026-06-19 21:08:40
[2026-06-19 21:08:40,928.928 INFO    ] 2026-06-19 21:08:40
[2026-06-19 21:08:40,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:08:41,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:08:41,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:08:41,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:08:41,364.364 INFO    ] time= 19/06/2026 21:08:41
[2026-06-19 21:08:41,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:08:41,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:08:41,606.606 INFO    ] No existing commands found in stream
[2026-06-19 21:08:46,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:08:46,639.639 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-19 21:08:49,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:08:49,203.203 INFO    ] Checking for system updates...
[2026-06-19 21:08:49,240.240 INFO    ] 200
[2026-06-19 21:08:49,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:08:49,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:08:49,300.300 INFO    ] No update needed
[2026-06-19 21:08:49,302.302 INFO    ] Checking for camera pi updates...
[2026-06-19 21:08:49,340.340 INFO    ] 200
[2026-06-19 21:08:49,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:08:49,385.385 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:08:49,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:08:49,523.523 INFO    ] No camera update needed
[2026-06-19 21:08:49,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:08:49,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:08:49,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:08:49,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:08:51,580.580 INFO    ] ================================================
[2026-06-19 21:08:51,595.595 INFO    ] Launching Daemon at Fri Jun 19 21:08:51 IST 2026
[2026-06-19 21:08:51,606.606 INFO    ] ================================================
[2026-06-19 21:08:52,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:08:52
[2026-06-19 21:08:52,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:08:53,046.046 INFO    ] Initializing speech engine...
[2026-06-19 21:08:53,055.055 INFO    ] 2026-06-19 21:08:53
[2026-06-19 21:08:53,300.300 INFO    ] 2026-06-19 21:08:53
[2026-06-19 21:08:53,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:08:53,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:08:53,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:08:53,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:08:53,774.774 INFO    ] time= 19/06/2026 21:08:53
[2026-06-19 21:08:53,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:08:53,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:08:53,918.918 INFO    ] No existing commands found in stream
[2026-06-19 21:08:58,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:08:58,932.932 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 21:09:02,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:09:02,585.585 INFO    ] Checking for system updates...
[2026-06-19 21:09:02,625.625 INFO    ] 200
[2026-06-19 21:09:02,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:02,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:09:02,702.702 INFO    ] No update needed
[2026-06-19 21:09:02,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 21:09:02,748.748 INFO    ] 200
[2026-06-19 21:09:02,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:02,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:09:02,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:09:02,850.850 INFO    ] No camera update needed
[2026-06-19 21:09:02,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:09:02,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:09:02,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:09:02,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:09:04,913.913 INFO    ] ================================================
[2026-06-19 21:09:04,929.929 INFO    ] Launching Daemon at Fri Jun 19 21:09:04 IST 2026
[2026-06-19 21:09:04,941.941 INFO    ] ================================================
[2026-06-19 21:09:05,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:09:05
[2026-06-19 21:09:06,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:09:06,354.354 INFO    ] Initializing speech engine...
[2026-06-19 21:09:06,363.363 INFO    ] 2026-06-19 21:09:06
[2026-06-19 21:09:06,664.664 INFO    ] 2026-06-19 21:09:06
[2026-06-19 21:09:06,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:09:06,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:09:06,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:09:07,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:09:07,095.095 INFO    ] time= 19/06/2026 21:09:07
[2026-06-19 21:09:07,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:09:07,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:09:07,288.288 INFO    ] No existing commands found in stream
[2026-06-19 21:09:12,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:09:12,309.309 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 21:09:13,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:09:13,162.162 INFO    ] Checking for system updates...
[2026-06-19 21:09:13,200.200 INFO    ] 200
[2026-06-19 21:09:13,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:13,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:09:13,258.258 INFO    ] No update needed
[2026-06-19 21:09:13,261.261 INFO    ] Checking for camera pi updates...
[2026-06-19 21:09:13,296.296 INFO    ] 200
[2026-06-19 21:09:13,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:13,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:09:13,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:09:13,394.394 INFO    ] No camera update needed
[2026-06-19 21:09:13,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:09:13,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:09:13,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:09:13,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:09:15,450.450 INFO    ] ================================================
[2026-06-19 21:09:15,466.466 INFO    ] Launching Daemon at Fri Jun 19 21:09:15 IST 2026
[2026-06-19 21:09:15,478.478 INFO    ] ================================================
[2026-06-19 21:09:16,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:09:16
[2026-06-19 21:09:16,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:09:17,145.145 INFO    ] Initializing speech engine...
[2026-06-19 21:09:17,157.157 INFO    ] 2026-06-19 21:09:17
[2026-06-19 21:09:17,429.429 INFO    ] 2026-06-19 21:09:17
[2026-06-19 21:09:17,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:09:17,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:09:17,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:09:17,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:09:17,928.928 INFO    ] time= 19/06/2026 21:09:17
[2026-06-19 21:09:17,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:09:17,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:09:18,134.134 INFO    ] No existing commands found in stream
[2026-06-19 21:09:23,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:09:23,154.154 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 21:09:24,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:09:24,491.491 INFO    ] Checking for system updates...
[2026-06-19 21:09:24,529.529 INFO    ] 200
[2026-06-19 21:09:24,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:24,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:09:24,588.588 INFO    ] No update needed
[2026-06-19 21:09:24,590.590 INFO    ] Checking for camera pi updates...
[2026-06-19 21:09:24,624.624 INFO    ] 200
[2026-06-19 21:09:24,627.627 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:24,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:09:24,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:09:24,725.725 INFO    ] No camera update needed
[2026-06-19 21:09:24,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:09:24,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:09:24,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:09:24,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:09:26,782.782 INFO    ] ================================================
[2026-06-19 21:09:26,798.798 INFO    ] Launching Daemon at Fri Jun 19 21:09:26 IST 2026
[2026-06-19 21:09:26,809.809 INFO    ] ================================================
[2026-06-19 21:09:27,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:09:27
[2026-06-19 21:09:28,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:09:28,444.444 INFO    ] Initializing speech engine...
[2026-06-19 21:09:28,455.455 INFO    ] 2026-06-19 21:09:28
[2026-06-19 21:09:28,740.740 INFO    ] 2026-06-19 21:09:28
[2026-06-19 21:09:28,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:09:29,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:09:29,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:09:29,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:09:29,276.276 INFO    ] time= 19/06/2026 21:09:29
[2026-06-19 21:09:29,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:09:29,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:09:29,433.433 INFO    ] No existing commands found in stream
[2026-06-19 21:09:34,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:09:34,466.466 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 21:09:37,058.058 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:09:37,061.061 INFO    ] Checking for system updates...
[2026-06-19 21:09:37,098.098 INFO    ] 200
[2026-06-19 21:09:37,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:37,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:09:37,160.160 INFO    ] No update needed
[2026-06-19 21:09:37,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 21:09:37,200.200 INFO    ] 200
[2026-06-19 21:09:37,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:37,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:09:37,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:09:37,293.293 INFO    ] No camera update needed
[2026-06-19 21:09:37,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:09:37,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:09:37,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:09:37,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:09:39,349.349 INFO    ] ================================================
[2026-06-19 21:09:39,364.364 INFO    ] Launching Daemon at Fri Jun 19 21:09:39 IST 2026
[2026-06-19 21:09:39,375.375 INFO    ] ================================================
[2026-06-19 21:09:39,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:09:39
[2026-06-19 21:09:40,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:09:40,971.971 INFO    ] Initializing speech engine...
[2026-06-19 21:09:40,982.982 INFO    ] 2026-06-19 21:09:40
[2026-06-19 21:09:41,295.295 INFO    ] 2026-06-19 21:09:41
[2026-06-19 21:09:41,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:09:41,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:09:41,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:09:41,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:09:41,800.800 INFO    ] time= 19/06/2026 21:09:41
[2026-06-19 21:09:41,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:09:41,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:09:41,955.955 INFO    ] No existing commands found in stream
[2026-06-19 21:09:46,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:09:46,973.973 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 21:09:49,890.890 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:09:49,893.893 INFO    ] Checking for system updates...
[2026-06-19 21:09:49,931.931 INFO    ] 200
[2026-06-19 21:09:49,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:49,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:09:50,001.001 INFO    ] No update needed
[2026-06-19 21:09:50,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 21:09:50,038.038 INFO    ] 200
[2026-06-19 21:09:50,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:09:50,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:09:50,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:09:50,137.137 INFO    ] No camera update needed
[2026-06-19 21:09:50,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:09:50,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:09:50,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:09:50,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:09:52,194.194 INFO    ] ================================================
[2026-06-19 21:09:52,209.209 INFO    ] Launching Daemon at Fri Jun 19 21:09:52 IST 2026
[2026-06-19 21:09:52,220.220 INFO    ] ================================================
[2026-06-19 21:09:52,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:09:52
[2026-06-19 21:09:53,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:09:53,625.625 INFO    ] Initializing speech engine...
[2026-06-19 21:09:53,633.633 INFO    ] 2026-06-19 21:09:53
[2026-06-19 21:09:53,908.908 INFO    ] 2026-06-19 21:09:53
[2026-06-19 21:09:53,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:09:54,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:09:54,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:09:54,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:09:54,284.284 INFO    ] time= 19/06/2026 21:09:54
[2026-06-19 21:09:54,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:09:54,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:09:54,453.453 INFO    ] No existing commands found in stream
[2026-06-19 21:09:59,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:09:59,491.491 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 21:10:01,705.705 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:10:01,708.708 INFO    ] Checking for system updates...
[2026-06-19 21:10:01,745.745 INFO    ] 200
[2026-06-19 21:10:01,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:01,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:10:01,802.802 INFO    ] No update needed
[2026-06-19 21:10:01,805.805 INFO    ] Checking for camera pi updates...
[2026-06-19 21:10:01,839.839 INFO    ] 200
[2026-06-19 21:10:01,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:01,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:10:01,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:10:01,970.970 INFO    ] No camera update needed
[2026-06-19 21:10:01,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:10:01,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:10:01,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:10:02,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:10:04,060.060 INFO    ] ================================================
[2026-06-19 21:10:04,075.075 INFO    ] Launching Daemon at Fri Jun 19 21:10:04 IST 2026
[2026-06-19 21:10:04,086.086 INFO    ] ================================================
[2026-06-19 21:10:04,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:10:04
[2026-06-19 21:10:05,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:10:05,563.563 INFO    ] Initializing speech engine...
[2026-06-19 21:10:05,572.572 INFO    ] 2026-06-19 21:10:05
[2026-06-19 21:10:05,846.846 INFO    ] 2026-06-19 21:10:05
[2026-06-19 21:10:05,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:10:06,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:10:06,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:10:06,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:10:06,271.271 INFO    ] time= 19/06/2026 21:10:06
[2026-06-19 21:10:06,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:10:06,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:10:06,360.360 INFO    ] No existing commands found in stream
[2026-06-19 21:10:11,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:10:11,378.378 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 21:10:14,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:10:14,153.153 INFO    ] Checking for system updates...
[2026-06-19 21:10:14,190.190 INFO    ] 200
[2026-06-19 21:10:14,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:14,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:10:14,255.255 INFO    ] No update needed
[2026-06-19 21:10:14,257.257 INFO    ] Checking for camera pi updates...
[2026-06-19 21:10:14,291.291 INFO    ] 200
[2026-06-19 21:10:14,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:14,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:10:14,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:10:14,388.388 INFO    ] No camera update needed
[2026-06-19 21:10:14,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:10:14,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:10:14,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:10:14,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:10:16,443.443 INFO    ] ================================================
[2026-06-19 21:10:16,459.459 INFO    ] Launching Daemon at Fri Jun 19 21:10:16 IST 2026
[2026-06-19 21:10:16,470.470 INFO    ] ================================================
[2026-06-19 21:10:17,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:10:17
[2026-06-19 21:10:17,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:10:17,881.881 INFO    ] Initializing speech engine...
[2026-06-19 21:10:17,895.895 INFO    ] 2026-06-19 21:10:17
[2026-06-19 21:10:18,150.150 INFO    ] 2026-06-19 21:10:18
[2026-06-19 21:10:18,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:10:18,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:10:18,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:10:18,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:10:18,675.675 INFO    ] time= 19/06/2026 21:10:18
[2026-06-19 21:10:18,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:10:18,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:10:18,836.836 INFO    ] No existing commands found in stream
[2026-06-19 21:10:23,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:10:23,857.857 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 21:10:27,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:10:27,837.837 INFO    ] Checking for system updates...
[2026-06-19 21:10:27,877.877 INFO    ] 200
[2026-06-19 21:10:27,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:27,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:10:27,948.948 INFO    ] No update needed
[2026-06-19 21:10:27,951.951 INFO    ] Checking for camera pi updates...
[2026-06-19 21:10:27,984.984 INFO    ] 200
[2026-06-19 21:10:27,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:28,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:10:28,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:10:28,081.081 INFO    ] No camera update needed
[2026-06-19 21:10:28,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:10:28,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:10:28,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:10:28,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:10:30,139.139 INFO    ] ================================================
[2026-06-19 21:10:30,154.154 INFO    ] Launching Daemon at Fri Jun 19 21:10:30 IST 2026
[2026-06-19 21:10:30,165.165 INFO    ] ================================================
[2026-06-19 21:10:30,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:10:30
[2026-06-19 21:10:31,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:10:31,624.624 INFO    ] Initializing speech engine...
[2026-06-19 21:10:31,642.642 INFO    ] 2026-06-19 21:10:31
[2026-06-19 21:10:31,919.919 INFO    ] 2026-06-19 21:10:31
[2026-06-19 21:10:31,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:10:32,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:10:32,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:10:32,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:10:32,304.304 INFO    ] time= 19/06/2026 21:10:32
[2026-06-19 21:10:32,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:10:32,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:10:32,426.426 INFO    ] No existing commands found in stream
[2026-06-19 21:10:37,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:10:37,454.454 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 21:10:39,543.543 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:10:39,546.546 INFO    ] Checking for system updates...
[2026-06-19 21:10:39,583.583 INFO    ] 200
[2026-06-19 21:10:39,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:39,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:10:39,641.641 INFO    ] No update needed
[2026-06-19 21:10:39,643.643 INFO    ] Checking for camera pi updates...
[2026-06-19 21:10:39,678.678 INFO    ] 200
[2026-06-19 21:10:39,680.680 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:39,720.720 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:10:39,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:10:39,770.770 INFO    ] No camera update needed
[2026-06-19 21:10:39,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:10:39,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:10:39,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:10:39,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:10:41,827.827 INFO    ] ================================================
[2026-06-19 21:10:41,842.842 INFO    ] Launching Daemon at Fri Jun 19 21:10:41 IST 2026
[2026-06-19 21:10:41,852.852 INFO    ] ================================================
[2026-06-19 21:10:42,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:10:42
[2026-06-19 21:10:43,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:10:43,502.502 INFO    ] Initializing speech engine...
[2026-06-19 21:10:43,510.510 INFO    ] 2026-06-19 21:10:43
[2026-06-19 21:10:43,784.784 INFO    ] 2026-06-19 21:10:43
[2026-06-19 21:10:43,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:10:44,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:10:44,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:10:44,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:10:44,295.295 INFO    ] time= 19/06/2026 21:10:44
[2026-06-19 21:10:44,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:10:44,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:10:44,482.482 INFO    ] No existing commands found in stream
[2026-06-19 21:10:49,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:10:49,508.508 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 21:10:51,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:10:51,689.689 INFO    ] Checking for system updates...
[2026-06-19 21:10:51,730.730 INFO    ] 200
[2026-06-19 21:10:51,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:51,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:10:51,791.791 INFO    ] No update needed
[2026-06-19 21:10:51,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 21:10:51,834.834 INFO    ] 200
[2026-06-19 21:10:51,837.837 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:10:51,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:10:52,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:10:52,040.040 INFO    ] No camera update needed
[2026-06-19 21:10:52,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:10:52,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:10:52,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:10:52,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:10:54,100.100 INFO    ] ================================================
[2026-06-19 21:10:54,115.115 INFO    ] Launching Daemon at Fri Jun 19 21:10:54 IST 2026
[2026-06-19 21:10:54,126.126 INFO    ] ================================================
[2026-06-19 21:10:54,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:10:54
[2026-06-19 21:10:55,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:10:55,583.583 INFO    ] Initializing speech engine...
[2026-06-19 21:10:55,591.591 INFO    ] 2026-06-19 21:10:55
[2026-06-19 21:10:55,892.892 INFO    ] 2026-06-19 21:10:55
[2026-06-19 21:10:55,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:10:56,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:10:56,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:10:56,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:10:56,318.318 INFO    ] time= 19/06/2026 21:10:56
[2026-06-19 21:10:56,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:10:56,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:10:56,473.473 INFO    ] No existing commands found in stream
[2026-06-19 21:11:01,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:11:01,503.503 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 21:11:02,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:11:02,406.406 INFO    ] Checking for system updates...
[2026-06-19 21:11:02,463.463 INFO    ] 200
[2026-06-19 21:11:02,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:02,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:11:02,551.551 INFO    ] No update needed
[2026-06-19 21:11:02,553.553 INFO    ] Checking for camera pi updates...
[2026-06-19 21:11:02,596.596 INFO    ] 200
[2026-06-19 21:11:02,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:02,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:11:02,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:11:02,698.698 INFO    ] No camera update needed
[2026-06-19 21:11:02,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:11:02,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:11:02,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:11:02,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:11:04,761.761 INFO    ] ================================================
[2026-06-19 21:11:04,777.777 INFO    ] Launching Daemon at Fri Jun 19 21:11:04 IST 2026
[2026-06-19 21:11:04,787.787 INFO    ] ================================================
[2026-06-19 21:11:05,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:11:05
[2026-06-19 21:11:06,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:11:06,394.394 INFO    ] Initializing speech engine...
[2026-06-19 21:11:06,403.403 INFO    ] 2026-06-19 21:11:06
[2026-06-19 21:11:06,676.676 INFO    ] 2026-06-19 21:11:06
[2026-06-19 21:11:06,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:11:06,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:11:06,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:11:07,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:11:07,117.117 INFO    ] time= 19/06/2026 21:11:07
[2026-06-19 21:11:07,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:11:07,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:11:07,272.272 INFO    ] No existing commands found in stream
[2026-06-19 21:11:12,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:11:12,287.287 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-19 21:11:12,796.796 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:11:12,799.799 INFO    ] Checking for system updates...
[2026-06-19 21:11:12,835.835 INFO    ] 200
[2026-06-19 21:11:12,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:12,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:11:12,898.898 INFO    ] No update needed
[2026-06-19 21:11:12,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 21:11:12,938.938 INFO    ] 200
[2026-06-19 21:11:12,941.941 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:12,982.982 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:11:13,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:11:13,031.031 INFO    ] No camera update needed
[2026-06-19 21:11:13,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:11:13,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:11:13,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:11:13,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:11:15,088.088 INFO    ] ================================================
[2026-06-19 21:11:15,103.103 INFO    ] Launching Daemon at Fri Jun 19 21:11:15 IST 2026
[2026-06-19 21:11:15,114.114 INFO    ] ================================================
[2026-06-19 21:11:15,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:11:15
[2026-06-19 21:11:16,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:11:16,536.536 INFO    ] Initializing speech engine...
[2026-06-19 21:11:16,545.545 INFO    ] 2026-06-19 21:11:16
[2026-06-19 21:11:16,840.840 INFO    ] 2026-06-19 21:11:16
[2026-06-19 21:11:16,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:11:17,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:11:17,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:11:17,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:11:17,196.196 INFO    ] time= 19/06/2026 21:11:17
[2026-06-19 21:11:17,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:11:17,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:11:17,276.276 INFO    ] No existing commands found in stream
[2026-06-19 21:11:22,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:11:22,290.290 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 21:11:25,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:11:25,933.933 INFO    ] Checking for system updates...
[2026-06-19 21:11:25,970.970 INFO    ] 200
[2026-06-19 21:11:25,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:26,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:11:26,035.035 INFO    ] No update needed
[2026-06-19 21:11:26,037.037 INFO    ] Checking for camera pi updates...
[2026-06-19 21:11:26,075.075 INFO    ] 200
[2026-06-19 21:11:26,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:26,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:11:26,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:11:26,167.167 INFO    ] No camera update needed
[2026-06-19 21:11:26,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:11:26,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:11:26,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:11:26,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:11:28,224.224 INFO    ] ================================================
[2026-06-19 21:11:28,239.239 INFO    ] Launching Daemon at Fri Jun 19 21:11:28 IST 2026
[2026-06-19 21:11:28,250.250 INFO    ] ================================================
[2026-06-19 21:11:28,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:11:28
[2026-06-19 21:11:29,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:11:29,706.706 INFO    ] Initializing speech engine...
[2026-06-19 21:11:29,714.714 INFO    ] 2026-06-19 21:11:29
[2026-06-19 21:11:30,012.012 INFO    ] 2026-06-19 21:11:29
[2026-06-19 21:11:30,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:11:30,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:11:30,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:11:30,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:11:30,391.391 INFO    ] time= 19/06/2026 21:11:30
[2026-06-19 21:11:30,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:11:30,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:11:30,521.521 INFO    ] No existing commands found in stream
[2026-06-19 21:11:35,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:11:35,537.537 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 21:11:38,111.111 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:11:38,113.113 INFO    ] Checking for system updates...
[2026-06-19 21:11:38,153.153 INFO    ] 200
[2026-06-19 21:11:38,156.156 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:38,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:11:38,214.214 INFO    ] No update needed
[2026-06-19 21:11:38,217.217 INFO    ] Checking for camera pi updates...
[2026-06-19 21:11:38,263.263 INFO    ] 200
[2026-06-19 21:11:38,266.266 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:38,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:11:38,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:11:38,358.358 INFO    ] No camera update needed
[2026-06-19 21:11:38,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:11:38,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:11:38,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:11:38,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:11:40,414.414 INFO    ] ================================================
[2026-06-19 21:11:40,429.429 INFO    ] Launching Daemon at Fri Jun 19 21:11:40 IST 2026
[2026-06-19 21:11:40,440.440 INFO    ] ================================================
[2026-06-19 21:11:41,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:11:41
[2026-06-19 21:11:41,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:11:41,848.848 INFO    ] Initializing speech engine...
[2026-06-19 21:11:41,862.862 INFO    ] 2026-06-19 21:11:41
[2026-06-19 21:11:42,129.129 INFO    ] 2026-06-19 21:11:42
[2026-06-19 21:11:42,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:11:42,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:11:42,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:11:42,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:11:42,505.505 INFO    ] time= 19/06/2026 21:11:42
[2026-06-19 21:11:42,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:11:42,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:11:42,676.676 INFO    ] No existing commands found in stream
[2026-06-19 21:11:47,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:11:47,714.714 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-19 21:11:50,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:11:50,162.162 INFO    ] Checking for system updates...
[2026-06-19 21:11:50,205.205 INFO    ] 200
[2026-06-19 21:11:50,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:50,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:11:50,263.263 INFO    ] No update needed
[2026-06-19 21:11:50,265.265 INFO    ] Checking for camera pi updates...
[2026-06-19 21:11:50,300.300 INFO    ] 200
[2026-06-19 21:11:50,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:11:50,347.347 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:11:50,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:11:50,395.395 INFO    ] No camera update needed
[2026-06-19 21:11:50,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:11:50,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:11:50,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:11:50,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:11:52,451.451 INFO    ] ================================================
[2026-06-19 21:11:52,466.466 INFO    ] Launching Daemon at Fri Jun 19 21:11:52 IST 2026
[2026-06-19 21:11:52,477.477 INFO    ] ================================================
[2026-06-19 21:11:53,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:11:53
[2026-06-19 21:11:53,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:11:53,935.935 INFO    ] Initializing speech engine...
[2026-06-19 21:11:53,944.944 INFO    ] 2026-06-19 21:11:53
[2026-06-19 21:11:54,204.204 INFO    ] 2026-06-19 21:11:54
[2026-06-19 21:11:54,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:11:54,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:11:54,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:11:54,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:11:54,689.689 INFO    ] time= 19/06/2026 21:11:54
[2026-06-19 21:11:54,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:11:54,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:11:54,875.875 INFO    ] No existing commands found in stream
[2026-06-19 21:11:59,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:11:59,908.908 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 21:12:04,060.060 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:12:04,063.063 INFO    ] Checking for system updates...
[2026-06-19 21:12:04,103.103 INFO    ] 200
[2026-06-19 21:12:04,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:04,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:12:04,169.169 INFO    ] No update needed
[2026-06-19 21:12:04,172.172 INFO    ] Checking for camera pi updates...
[2026-06-19 21:12:04,205.205 INFO    ] 200
[2026-06-19 21:12:04,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:04,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:12:04,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:12:04,301.301 INFO    ] No camera update needed
[2026-06-19 21:12:04,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:12:04,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:12:04,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:12:04,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:12:06,357.357 INFO    ] ================================================
[2026-06-19 21:12:06,373.373 INFO    ] Launching Daemon at Fri Jun 19 21:12:06 IST 2026
[2026-06-19 21:12:06,384.384 INFO    ] ================================================
[2026-06-19 21:12:07,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:12:07
[2026-06-19 21:12:07,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:12:07,900.900 INFO    ] Initializing speech engine...
[2026-06-19 21:12:07,910.910 INFO    ] 2026-06-19 21:12:07
[2026-06-19 21:12:08,158.158 INFO    ] 2026-06-19 21:12:08
[2026-06-19 21:12:08,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:12:08,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:12:08,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:12:08,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:12:08,631.631 INFO    ] time= 19/06/2026 21:12:08
[2026-06-19 21:12:08,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:12:08,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:12:08,781.781 INFO    ] No existing commands found in stream
[2026-06-19 21:12:13,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:12:13,796.796 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 21:12:15,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:12:15,818.818 INFO    ] Checking for system updates...
[2026-06-19 21:12:15,854.854 INFO    ] 200
[2026-06-19 21:12:15,856.856 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:15,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:12:15,911.911 INFO    ] No update needed
[2026-06-19 21:12:15,913.913 INFO    ] Checking for camera pi updates...
[2026-06-19 21:12:15,947.947 INFO    ] 200
[2026-06-19 21:12:15,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:15,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:12:16,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:12:16,042.042 INFO    ] No camera update needed
[2026-06-19 21:12:16,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:12:16,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:12:16,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:12:16,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:12:18,099.099 INFO    ] ================================================
[2026-06-19 21:12:18,115.115 INFO    ] Launching Daemon at Fri Jun 19 21:12:18 IST 2026
[2026-06-19 21:12:18,125.125 INFO    ] ================================================
[2026-06-19 21:12:18,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:12:18
[2026-06-19 21:12:19,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:12:19,583.583 INFO    ] Initializing speech engine...
[2026-06-19 21:12:19,593.593 INFO    ] 2026-06-19 21:12:19
[2026-06-19 21:12:19,855.855 INFO    ] 2026-06-19 21:12:19
[2026-06-19 21:12:19,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:12:20,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:12:20,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:12:20,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:12:20,316.316 INFO    ] time= 19/06/2026 21:12:20
[2026-06-19 21:12:20,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:12:20,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:12:20,463.463 INFO    ] No existing commands found in stream
[2026-06-19 21:12:25,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:12:25,478.478 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 21:12:28,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:12:28,306.306 INFO    ] Checking for system updates...
[2026-06-19 21:12:28,342.342 INFO    ] 200
[2026-06-19 21:12:28,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:28,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:12:28,401.401 INFO    ] No update needed
[2026-06-19 21:12:28,403.403 INFO    ] Checking for camera pi updates...
[2026-06-19 21:12:28,441.441 INFO    ] 200
[2026-06-19 21:12:28,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:28,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:12:28,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:12:28,536.536 INFO    ] No camera update needed
[2026-06-19 21:12:28,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:12:28,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:12:28,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:12:28,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:12:30,594.594 INFO    ] ================================================
[2026-06-19 21:12:30,609.609 INFO    ] Launching Daemon at Fri Jun 19 21:12:30 IST 2026
[2026-06-19 21:12:30,620.620 INFO    ] ================================================
[2026-06-19 21:12:31,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:12:31
[2026-06-19 21:12:31,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:12:32,056.056 INFO    ] Initializing speech engine...
[2026-06-19 21:12:32,066.066 INFO    ] 2026-06-19 21:12:32
[2026-06-19 21:12:32,365.365 INFO    ] 2026-06-19 21:12:32
[2026-06-19 21:12:32,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:12:32,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:12:32,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:12:32,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:12:32,892.892 INFO    ] time= 19/06/2026 21:12:32
[2026-06-19 21:12:32,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:12:32,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:12:33,037.037 INFO    ] No existing commands found in stream
[2026-06-19 21:12:38,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:12:38,051.051 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 21:12:41,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:12:41,243.243 INFO    ] Checking for system updates...
[2026-06-19 21:12:41,282.282 INFO    ] 200
[2026-06-19 21:12:41,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:41,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:12:41,350.350 INFO    ] No update needed
[2026-06-19 21:12:41,352.352 INFO    ] Checking for camera pi updates...
[2026-06-19 21:12:41,387.387 INFO    ] 200
[2026-06-19 21:12:41,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:41,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:12:41,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:12:41,482.482 INFO    ] No camera update needed
[2026-06-19 21:12:41,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:12:41,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:12:41,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:12:41,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:12:43,538.538 INFO    ] ================================================
[2026-06-19 21:12:43,554.554 INFO    ] Launching Daemon at Fri Jun 19 21:12:43 IST 2026
[2026-06-19 21:12:43,565.565 INFO    ] ================================================
[2026-06-19 21:12:44,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:12:44
[2026-06-19 21:12:44,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:12:45,018.018 INFO    ] Initializing speech engine...
[2026-06-19 21:12:45,034.034 INFO    ] 2026-06-19 21:12:45
[2026-06-19 21:12:45,326.326 INFO    ] 2026-06-19 21:12:45
[2026-06-19 21:12:45,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:12:45,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:12:45,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:12:45,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:12:45,734.734 INFO    ] time= 19/06/2026 21:12:45
[2026-06-19 21:12:45,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:12:45,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:12:45,846.846 INFO    ] No existing commands found in stream
[2026-06-19 21:12:50,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:12:50,862.862 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-19 21:12:52,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:12:52,356.356 INFO    ] Checking for system updates...
[2026-06-19 21:12:52,398.398 INFO    ] 200
[2026-06-19 21:12:52,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:52,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:12:52,455.455 INFO    ] No update needed
[2026-06-19 21:12:52,457.457 INFO    ] Checking for camera pi updates...
[2026-06-19 21:12:52,491.491 INFO    ] 200
[2026-06-19 21:12:52,493.493 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:12:52,535.535 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:12:52,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:12:52,581.581 INFO    ] No camera update needed
[2026-06-19 21:12:52,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:12:52,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:12:52,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:12:52,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:12:54,638.638 INFO    ] ================================================
[2026-06-19 21:12:54,654.654 INFO    ] Launching Daemon at Fri Jun 19 21:12:54 IST 2026
[2026-06-19 21:12:54,665.665 INFO    ] ================================================
[2026-06-19 21:12:55,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:12:55
[2026-06-19 21:12:55,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:12:56,087.087 INFO    ] Initializing speech engine...
[2026-06-19 21:12:56,103.103 INFO    ] 2026-06-19 21:12:56
[2026-06-19 21:12:56,393.393 INFO    ] 2026-06-19 21:12:56
[2026-06-19 21:12:56,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:12:56,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:12:56,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:12:56,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:12:56,801.801 INFO    ] time= 19/06/2026 21:12:56
[2026-06-19 21:12:56,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:12:56,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:12:56,912.912 INFO    ] No existing commands found in stream
[2026-06-19 21:13:01,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:13:01,931.931 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-19 21:13:03,120.120 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:13:03,125.125 INFO    ] Checking for system updates...
[2026-06-19 21:13:03,170.170 INFO    ] 200
[2026-06-19 21:13:03,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:03,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:03,281.281 INFO    ] No update needed
[2026-06-19 21:13:03,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 21:13:03,330.330 INFO    ] 200
[2026-06-19 21:13:03,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:03,388.388 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:13:03,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:03,436.436 INFO    ] No camera update needed
[2026-06-19 21:13:03,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:13:03,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:13:03,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:13:03,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:13:05,492.492 INFO    ] ================================================
[2026-06-19 21:13:05,508.508 INFO    ] Launching Daemon at Fri Jun 19 21:13:05 IST 2026
[2026-06-19 21:13:05,520.520 INFO    ] ================================================
[2026-06-19 21:13:06,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:13:06
[2026-06-19 21:13:06,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:13:06,944.944 INFO    ] Initializing speech engine...
[2026-06-19 21:13:06,953.953 INFO    ] 2026-06-19 21:13:06
[2026-06-19 21:13:07,247.247 INFO    ] 2026-06-19 21:13:07
[2026-06-19 21:13:07,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:13:07,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:13:07,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:13:07,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:13:07,627.627 INFO    ] time= 19/06/2026 21:13:07
[2026-06-19 21:13:07,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:13:07,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:13:07,750.750 INFO    ] No existing commands found in stream
[2026-06-19 21:13:12,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:13:12,766.766 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 21:13:16,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:13:16,641.641 INFO    ] Checking for system updates...
[2026-06-19 21:13:16,681.681 INFO    ] 200
[2026-06-19 21:13:16,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:16,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:16,740.740 INFO    ] No update needed
[2026-06-19 21:13:16,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 21:13:16,780.780 INFO    ] 200
[2026-06-19 21:13:16,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:16,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:13:16,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:16,879.879 INFO    ] No camera update needed
[2026-06-19 21:13:16,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:13:16,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:13:16,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:13:16,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:13:18,936.936 INFO    ] ================================================
[2026-06-19 21:13:18,952.952 INFO    ] Launching Daemon at Fri Jun 19 21:13:18 IST 2026
[2026-06-19 21:13:18,963.963 INFO    ] ================================================
[2026-06-19 21:13:19,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:13:19
[2026-06-19 21:13:20,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:13:20,626.626 INFO    ] Initializing speech engine...
[2026-06-19 21:13:20,632.632 INFO    ] 2026-06-19 21:13:20
[2026-06-19 21:13:20,922.922 INFO    ] 2026-06-19 21:13:20
[2026-06-19 21:13:21,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:13:21,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:13:21,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:13:21,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:13:21,385.385 INFO    ] time= 19/06/2026 21:13:21
[2026-06-19 21:13:21,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:13:21,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:13:21,595.595 INFO    ] No existing commands found in stream
[2026-06-19 21:13:26,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:13:26,625.625 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 21:13:28,406.406 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:13:28,409.409 INFO    ] Checking for system updates...
[2026-06-19 21:13:28,445.445 INFO    ] 200
[2026-06-19 21:13:28,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:28,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:28,508.508 INFO    ] No update needed
[2026-06-19 21:13:28,510.510 INFO    ] Checking for camera pi updates...
[2026-06-19 21:13:28,550.550 INFO    ] 200
[2026-06-19 21:13:28,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:28,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:13:28,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:28,646.646 INFO    ] No camera update needed
[2026-06-19 21:13:28,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:13:28,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:13:28,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:13:28,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:13:30,707.707 INFO    ] ================================================
[2026-06-19 21:13:30,723.723 INFO    ] Launching Daemon at Fri Jun 19 21:13:30 IST 2026
[2026-06-19 21:13:30,734.734 INFO    ] ================================================
[2026-06-19 21:13:31,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:13:31
[2026-06-19 21:13:31,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:13:32,235.235 INFO    ] Initializing speech engine...
[2026-06-19 21:13:32,245.245 INFO    ] 2026-06-19 21:13:32
[2026-06-19 21:13:32,511.511 INFO    ] 2026-06-19 21:13:32
[2026-06-19 21:13:32,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:13:32,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:13:32,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:13:32,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:13:32,901.901 INFO    ] time= 19/06/2026 21:13:32
[2026-06-19 21:13:32,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:13:32,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:13:33,102.102 INFO    ] No existing commands found in stream
[2026-06-19 21:13:38,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:13:38,115.115 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 21:13:39,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:13:39,506.506 INFO    ] Checking for system updates...
[2026-06-19 21:13:39,548.548 INFO    ] 200
[2026-06-19 21:13:39,551.551 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:39,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:39,608.608 INFO    ] No update needed
[2026-06-19 21:13:39,611.611 INFO    ] Checking for camera pi updates...
[2026-06-19 21:13:39,651.651 INFO    ] 200
[2026-06-19 21:13:39,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:39,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:13:39,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:39,747.747 INFO    ] No camera update needed
[2026-06-19 21:13:39,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:13:39,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:13:39,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:13:39,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:13:41,806.806 INFO    ] ================================================
[2026-06-19 21:13:41,822.822 INFO    ] Launching Daemon at Fri Jun 19 21:13:41 IST 2026
[2026-06-19 21:13:41,834.834 INFO    ] ================================================
[2026-06-19 21:13:42,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:13:42
[2026-06-19 21:13:43,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:13:43,521.521 INFO    ] Initializing speech engine...
[2026-06-19 21:13:43,529.529 INFO    ] 2026-06-19 21:13:43
[2026-06-19 21:13:43,832.832 INFO    ] 2026-06-19 21:13:43
[2026-06-19 21:13:43,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:13:44,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:13:44,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:13:44,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:13:44,290.290 INFO    ] time= 19/06/2026 21:13:44
[2026-06-19 21:13:44,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:13:44,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:13:44,434.434 INFO    ] No existing commands found in stream
[2026-06-19 21:13:49,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:13:49,449.449 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 21:13:51,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:13:51,897.897 INFO    ] Checking for system updates...
[2026-06-19 21:13:51,934.934 INFO    ] 200
[2026-06-19 21:13:51,937.937 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:51,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:52,001.001 INFO    ] No update needed
[2026-06-19 21:13:52,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 21:13:52,037.037 INFO    ] 200
[2026-06-19 21:13:52,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:13:52,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:13:52,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:13:52,143.143 INFO    ] No camera update needed
[2026-06-19 21:13:52,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:13:52,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:13:52,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:13:52,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:13:54,198.198 INFO    ] ================================================
[2026-06-19 21:13:54,213.213 INFO    ] Launching Daemon at Fri Jun 19 21:13:54 IST 2026
[2026-06-19 21:13:54,224.224 INFO    ] ================================================
[2026-06-19 21:13:54,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:13:54
[2026-06-19 21:13:55,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:13:55,638.638 INFO    ] Initializing speech engine...
[2026-06-19 21:13:55,652.652 INFO    ] 2026-06-19 21:13:55
[2026-06-19 21:13:55,944.944 INFO    ] 2026-06-19 21:13:55
[2026-06-19 21:13:55,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:13:56,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:13:56,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:13:56,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:13:56,311.311 INFO    ] time= 19/06/2026 21:13:56
[2026-06-19 21:13:56,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:13:56,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:13:56,392.392 INFO    ] No existing commands found in stream
[2026-06-19 21:14:01,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:14:01,406.406 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 21:14:05,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:14:05,551.551 INFO    ] Checking for system updates...
[2026-06-19 21:14:05,587.587 INFO    ] 200
[2026-06-19 21:14:05,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:05,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:14:05,645.645 INFO    ] No update needed
[2026-06-19 21:14:05,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 21:14:05,681.681 INFO    ] 200
[2026-06-19 21:14:05,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:05,726.726 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:14:05,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:14:05,775.775 INFO    ] No camera update needed
[2026-06-19 21:14:05,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:14:05,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:14:05,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:14:05,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:14:07,830.830 INFO    ] ================================================
[2026-06-19 21:14:07,845.845 INFO    ] Launching Daemon at Fri Jun 19 21:14:07 IST 2026
[2026-06-19 21:14:07,856.856 INFO    ] ================================================
[2026-06-19 21:14:08,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:14:08
[2026-06-19 21:14:09,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:14:09,278.278 INFO    ] Initializing speech engine...
[2026-06-19 21:14:09,287.287 INFO    ] 2026-06-19 21:14:09
[2026-06-19 21:14:09,582.582 INFO    ] 2026-06-19 21:14:09
[2026-06-19 21:14:09,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:14:09,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:14:09,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:14:09,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:14:09,955.955 INFO    ] time= 19/06/2026 21:14:09
[2026-06-19 21:14:09,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:14:09,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:14:10,079.079 INFO    ] No existing commands found in stream
[2026-06-19 21:14:15,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:14:15,094.094 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 21:14:16,852.852 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:14:16,855.855 INFO    ] Checking for system updates...
[2026-06-19 21:14:16,890.890 INFO    ] 200
[2026-06-19 21:14:16,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:16,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:14:16,956.956 INFO    ] No update needed
[2026-06-19 21:14:16,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 21:14:16,993.993 INFO    ] 200
[2026-06-19 21:14:16,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:17,040.040 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:14:17,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:14:17,073.073 INFO    ] No camera update needed
[2026-06-19 21:14:17,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:14:17,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:14:17,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:14:17,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:14:19,127.127 INFO    ] ================================================
[2026-06-19 21:14:19,143.143 INFO    ] Launching Daemon at Fri Jun 19 21:14:19 IST 2026
[2026-06-19 21:14:19,153.153 INFO    ] ================================================
[2026-06-19 21:14:19,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:14:19
[2026-06-19 21:14:20,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:14:20,569.569 INFO    ] Initializing speech engine...
[2026-06-19 21:14:20,590.590 INFO    ] 2026-06-19 21:14:20
[2026-06-19 21:14:20,855.855 INFO    ] 2026-06-19 21:14:20
[2026-06-19 21:14:20,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:14:21,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:14:21,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:14:21,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:14:21,314.314 INFO    ] time= 19/06/2026 21:14:21
[2026-06-19 21:14:21,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:14:21,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:14:21,484.484 INFO    ] No existing commands found in stream
[2026-06-19 21:14:26,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:14:26,499.499 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 21:14:28,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:14:28,066.066 INFO    ] Checking for system updates...
[2026-06-19 21:14:28,105.105 INFO    ] 200
[2026-06-19 21:14:28,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:28,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:14:28,168.168 INFO    ] No update needed
[2026-06-19 21:14:28,170.170 INFO    ] Checking for camera pi updates...
[2026-06-19 21:14:28,207.207 INFO    ] 200
[2026-06-19 21:14:28,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:28,250.250 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:14:28,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:14:28,298.298 INFO    ] No camera update needed
[2026-06-19 21:14:28,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:14:28,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:14:28,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:14:28,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:14:30,353.353 INFO    ] ================================================
[2026-06-19 21:14:30,369.369 INFO    ] Launching Daemon at Fri Jun 19 21:14:30 IST 2026
[2026-06-19 21:14:30,379.379 INFO    ] ================================================
[2026-06-19 21:14:31,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:14:31
[2026-06-19 21:14:31,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:14:32,022.022 INFO    ] Initializing speech engine...
[2026-06-19 21:14:32,035.035 INFO    ] 2026-06-19 21:14:32
[2026-06-19 21:14:32,337.337 INFO    ] 2026-06-19 21:14:32
[2026-06-19 21:14:32,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:14:32,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:14:32,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:14:32,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:14:32,829.829 INFO    ] time= 19/06/2026 21:14:32
[2026-06-19 21:14:32,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:14:32,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:14:33,063.063 INFO    ] No existing commands found in stream
[2026-06-19 21:14:38,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:14:38,099.099 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 21:14:39,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:14:39,151.151 INFO    ] Checking for system updates...
[2026-06-19 21:14:39,207.207 INFO    ] 200
[2026-06-19 21:14:39,209.209 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:39,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:14:39,266.266 INFO    ] No update needed
[2026-06-19 21:14:39,269.269 INFO    ] Checking for camera pi updates...
[2026-06-19 21:14:39,303.303 INFO    ] 200
[2026-06-19 21:14:39,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:39,353.353 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:14:39,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:14:39,407.407 INFO    ] No camera update needed
[2026-06-19 21:14:39,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:14:39,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:14:39,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:14:39,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:14:41,462.462 INFO    ] ================================================
[2026-06-19 21:14:41,477.477 INFO    ] Launching Daemon at Fri Jun 19 21:14:41 IST 2026
[2026-06-19 21:14:41,487.487 INFO    ] ================================================
[2026-06-19 21:14:42,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:14:42
[2026-06-19 21:14:42,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:14:42,980.980 INFO    ] Initializing speech engine...
[2026-06-19 21:14:42,990.990 INFO    ] 2026-06-19 21:14:42
[2026-06-19 21:14:43,269.269 INFO    ] 2026-06-19 21:14:43
[2026-06-19 21:14:43,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:14:43,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:14:43,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:14:43,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:14:43,755.755 INFO    ] time= 19/06/2026 21:14:43
[2026-06-19 21:14:43,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:14:43,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:14:43,928.928 INFO    ] No existing commands found in stream
[2026-06-19 21:14:48,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:14:48,958.958 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 21:14:53,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:14:53,216.216 INFO    ] Checking for system updates...
[2026-06-19 21:14:53,253.253 INFO    ] 200
[2026-06-19 21:14:53,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:53,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:14:53,318.318 INFO    ] No update needed
[2026-06-19 21:14:53,320.320 INFO    ] Checking for camera pi updates...
[2026-06-19 21:14:53,358.358 INFO    ] 200
[2026-06-19 21:14:53,360.360 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:14:53,402.402 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:14:53,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:14:53,448.448 INFO    ] No camera update needed
[2026-06-19 21:14:53,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:14:53,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:14:53,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:14:53,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:14:55,506.506 INFO    ] ================================================
[2026-06-19 21:14:55,521.521 INFO    ] Launching Daemon at Fri Jun 19 21:14:55 IST 2026
[2026-06-19 21:14:55,532.532 INFO    ] ================================================
[2026-06-19 21:14:56,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:14:56
[2026-06-19 21:14:56,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:14:57,005.005 INFO    ] Initializing speech engine...
[2026-06-19 21:14:57,014.014 INFO    ] 2026-06-19 21:14:57
[2026-06-19 21:14:57,273.273 INFO    ] 2026-06-19 21:14:57
[2026-06-19 21:14:57,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:14:57,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:14:57,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:14:57,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:14:57,820.820 INFO    ] time= 19/06/2026 21:14:57
[2026-06-19 21:14:57,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:14:57,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:14:57,951.951 INFO    ] No existing commands found in stream
[2026-06-19 21:15:02,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:15:02,987.987 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 21:15:05,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:15:05,527.527 INFO    ] Checking for system updates...
[2026-06-19 21:15:05,564.564 INFO    ] 200
[2026-06-19 21:15:05,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:05,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:15:05,629.629 INFO    ] No update needed
[2026-06-19 21:15:05,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 21:15:05,666.666 INFO    ] 200
[2026-06-19 21:15:05,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:05,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:15:05,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:15:05,865.865 INFO    ] No camera update needed
[2026-06-19 21:15:05,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:15:05,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:15:05,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:15:05,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:15:07,922.922 INFO    ] ================================================
[2026-06-19 21:15:07,937.937 INFO    ] Launching Daemon at Fri Jun 19 21:15:07 IST 2026
[2026-06-19 21:15:07,948.948 INFO    ] ================================================
[2026-06-19 21:15:08,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:15:08
[2026-06-19 21:15:09,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:15:09,568.568 INFO    ] Initializing speech engine...
[2026-06-19 21:15:09,575.575 INFO    ] 2026-06-19 21:15:09
[2026-06-19 21:15:09,835.835 INFO    ] 2026-06-19 21:15:09
[2026-06-19 21:15:09,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:15:10,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:15:10,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:15:10,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:15:10,314.314 INFO    ] time= 19/06/2026 21:15:10
[2026-06-19 21:15:10,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:15:10,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:15:10,450.450 INFO    ] No existing commands found in stream
[2026-06-19 21:15:15,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:15:15,467.467 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 21:15:19,461.461 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:15:19,464.464 INFO    ] Checking for system updates...
[2026-06-19 21:15:19,505.505 INFO    ] 200
[2026-06-19 21:15:19,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:19,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:15:19,565.565 INFO    ] No update needed
[2026-06-19 21:15:19,568.568 INFO    ] Checking for camera pi updates...
[2026-06-19 21:15:19,601.601 INFO    ] 200
[2026-06-19 21:15:19,604.604 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:19,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:15:19,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:15:19,699.699 INFO    ] No camera update needed
[2026-06-19 21:15:19,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:15:19,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:15:19,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:15:19,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:15:21,757.757 INFO    ] ================================================
[2026-06-19 21:15:21,772.772 INFO    ] Launching Daemon at Fri Jun 19 21:15:21 IST 2026
[2026-06-19 21:15:21,783.783 INFO    ] ================================================
[2026-06-19 21:15:22,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:15:22
[2026-06-19 21:15:22,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:15:23,242.242 INFO    ] Initializing speech engine...
[2026-06-19 21:15:23,248.248 INFO    ] 2026-06-19 21:15:23
[2026-06-19 21:15:23,546.546 INFO    ] 2026-06-19 21:15:23
[2026-06-19 21:15:23,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:15:23,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:15:23,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:15:23,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:15:23,956.956 INFO    ] time= 19/06/2026 21:15:23
[2026-06-19 21:15:23,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:15:23,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:15:24,074.074 INFO    ] No existing commands found in stream
[2026-06-19 21:15:29,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:15:29,090.090 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 21:15:31,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:15:31,248.248 INFO    ] Checking for system updates...
[2026-06-19 21:15:31,289.289 INFO    ] 200
[2026-06-19 21:15:31,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:31,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:15:31,354.354 INFO    ] No update needed
[2026-06-19 21:15:31,356.356 INFO    ] Checking for camera pi updates...
[2026-06-19 21:15:31,394.394 INFO    ] 200
[2026-06-19 21:15:31,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:31,443.443 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:15:31,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:15:31,509.509 INFO    ] No camera update needed
[2026-06-19 21:15:31,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:15:31,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:15:31,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:15:31,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:15:33,568.568 INFO    ] ================================================
[2026-06-19 21:15:33,585.585 INFO    ] Launching Daemon at Fri Jun 19 21:15:33 IST 2026
[2026-06-19 21:15:33,596.596 INFO    ] ================================================
[2026-06-19 21:15:34,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:15:34
[2026-06-19 21:15:34,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:15:35,071.071 INFO    ] Initializing speech engine...
[2026-06-19 21:15:35,080.080 INFO    ] 2026-06-19 21:15:35
[2026-06-19 21:15:35,345.345 INFO    ] 2026-06-19 21:15:35
[2026-06-19 21:15:35,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:15:35,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:15:35,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:15:35,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:15:35,890.890 INFO    ] time= 19/06/2026 21:15:35
[2026-06-19 21:15:35,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:15:35,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:15:36,031.031 INFO    ] No existing commands found in stream
[2026-06-19 21:15:41,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:15:41,059.059 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 21:15:45,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:15:45,415.415 INFO    ] Checking for system updates...
[2026-06-19 21:15:45,457.457 INFO    ] 200
[2026-06-19 21:15:45,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:45,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:15:45,517.517 INFO    ] No update needed
[2026-06-19 21:15:45,520.520 INFO    ] Checking for camera pi updates...
[2026-06-19 21:15:45,559.559 INFO    ] 200
[2026-06-19 21:15:45,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:45,609.609 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:15:45,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:15:45,658.658 INFO    ] No camera update needed
[2026-06-19 21:15:45,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:15:45,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:15:45,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:15:45,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:15:47,718.718 INFO    ] ================================================
[2026-06-19 21:15:47,733.733 INFO    ] Launching Daemon at Fri Jun 19 21:15:47 IST 2026
[2026-06-19 21:15:47,744.744 INFO    ] ================================================
[2026-06-19 21:15:48,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:15:48
[2026-06-19 21:15:48,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:15:49,226.226 INFO    ] Initializing speech engine...
[2026-06-19 21:15:49,229.229 INFO    ] 2026-06-19 21:15:49
[2026-06-19 21:15:49,478.478 INFO    ] 2026-06-19 21:15:49
[2026-06-19 21:15:49,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:15:49,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:15:49,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:15:49,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:15:49,984.984 INFO    ] time= 19/06/2026 21:15:49
[2026-06-19 21:15:50,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:15:50,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:15:50,178.178 INFO    ] No existing commands found in stream
[2026-06-19 21:15:55,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:15:55,207.207 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 21:15:57,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:15:57,847.847 INFO    ] Checking for system updates...
[2026-06-19 21:15:57,885.885 INFO    ] 200
[2026-06-19 21:15:57,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:57,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:15:57,946.946 INFO    ] No update needed
[2026-06-19 21:15:57,949.949 INFO    ] Checking for camera pi updates...
[2026-06-19 21:15:57,988.988 INFO    ] 200
[2026-06-19 21:15:57,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:15:58,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:15:58,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:15:58,097.097 INFO    ] No camera update needed
[2026-06-19 21:15:58,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:15:58,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:15:58,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:15:58,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:16:00,157.157 INFO    ] ================================================
[2026-06-19 21:16:00,173.173 INFO    ] Launching Daemon at Fri Jun 19 21:16:00 IST 2026
[2026-06-19 21:16:00,183.183 INFO    ] ================================================
[2026-06-19 21:16:00,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:16:00
[2026-06-19 21:16:01,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:16:01,799.799 INFO    ] Initializing speech engine...
[2026-06-19 21:16:01,810.810 INFO    ] 2026-06-19 21:16:01
[2026-06-19 21:16:02,103.103 INFO    ] 2026-06-19 21:16:02
[2026-06-19 21:16:02,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:16:02,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:16:02,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:16:02,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:16:02,502.502 INFO    ] time= 19/06/2026 21:16:02
[2026-06-19 21:16:02,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:16:02,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:16:02,613.613 INFO    ] No existing commands found in stream
[2026-06-19 21:16:07,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:16:07,627.627 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 21:16:11,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:16:11,558.558 INFO    ] Checking for system updates...
[2026-06-19 21:16:11,598.598 INFO    ] 200
[2026-06-19 21:16:11,600.600 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:11,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:16:11,662.662 INFO    ] No update needed
[2026-06-19 21:16:11,665.665 INFO    ] Checking for camera pi updates...
[2026-06-19 21:16:11,703.703 INFO    ] 200
[2026-06-19 21:16:11,705.705 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:11,746.746 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:16:11,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:16:11,796.796 INFO    ] No camera update needed
[2026-06-19 21:16:11,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:16:11,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:16:11,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:16:11,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:16:13,854.854 INFO    ] ================================================
[2026-06-19 21:16:13,869.869 INFO    ] Launching Daemon at Fri Jun 19 21:16:13 IST 2026
[2026-06-19 21:16:13,880.880 INFO    ] ================================================
[2026-06-19 21:16:14,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:16:14
[2026-06-19 21:16:15,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:16:15,289.289 INFO    ] Initializing speech engine...
[2026-06-19 21:16:15,309.309 INFO    ] 2026-06-19 21:16:15
[2026-06-19 21:16:15,558.558 INFO    ] 2026-06-19 21:16:15
[2026-06-19 21:16:15,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:16:15,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:16:15,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:16:15,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:16:16,017.017 INFO    ] time= 19/06/2026 21:16:15
[2026-06-19 21:16:16,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:16:16,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:16:16,186.186 INFO    ] No existing commands found in stream
[2026-06-19 21:16:21,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:16:21,200.200 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 21:16:22,720.720 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:16:22,722.722 INFO    ] Checking for system updates...
[2026-06-19 21:16:22,758.758 INFO    ] 200
[2026-06-19 21:16:22,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:22,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:16:22,816.816 INFO    ] No update needed
[2026-06-19 21:16:22,819.819 INFO    ] Checking for camera pi updates...
[2026-06-19 21:16:22,853.853 INFO    ] 200
[2026-06-19 21:16:22,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:22,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:16:22,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:16:22,950.950 INFO    ] No camera update needed
[2026-06-19 21:16:22,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:16:22,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:16:22,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:16:22,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:16:25,005.005 INFO    ] ================================================
[2026-06-19 21:16:25,020.020 INFO    ] Launching Daemon at Fri Jun 19 21:16:25 IST 2026
[2026-06-19 21:16:25,031.031 INFO    ] ================================================
[2026-06-19 21:16:25,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:16:25
[2026-06-19 21:16:26,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:16:26,486.486 INFO    ] Initializing speech engine...
[2026-06-19 21:16:26,495.495 INFO    ] 2026-06-19 21:16:26
[2026-06-19 21:16:26,758.758 INFO    ] 2026-06-19 21:16:26
[2026-06-19 21:16:26,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:16:26,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:16:27,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:16:27,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:16:27,228.228 INFO    ] time= 19/06/2026 21:16:27
[2026-06-19 21:16:27,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:16:27,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:16:27,378.378 INFO    ] No existing commands found in stream
[2026-06-19 21:16:32,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:16:32,419.419 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-19 21:16:35,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:16:35,190.190 INFO    ] Checking for system updates...
[2026-06-19 21:16:35,227.227 INFO    ] 200
[2026-06-19 21:16:35,229.229 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:35,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:16:35,285.285 INFO    ] No update needed
[2026-06-19 21:16:35,287.287 INFO    ] Checking for camera pi updates...
[2026-06-19 21:16:35,321.321 INFO    ] 200
[2026-06-19 21:16:35,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:35,365.365 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:16:35,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:16:35,423.423 INFO    ] No camera update needed
[2026-06-19 21:16:35,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:16:35,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:16:35,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:16:35,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:16:37,481.481 INFO    ] ================================================
[2026-06-19 21:16:37,497.497 INFO    ] Launching Daemon at Fri Jun 19 21:16:37 IST 2026
[2026-06-19 21:16:37,508.508 INFO    ] ================================================
[2026-06-19 21:16:38,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:16:38
[2026-06-19 21:16:38,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:16:38,934.934 INFO    ] Initializing speech engine...
[2026-06-19 21:16:38,953.953 INFO    ] 2026-06-19 21:16:38
[2026-06-19 21:16:39,229.229 INFO    ] 2026-06-19 21:16:39
[2026-06-19 21:16:39,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:16:39,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:16:39,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:16:39,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:16:39,625.625 INFO    ] time= 19/06/2026 21:16:39
[2026-06-19 21:16:39,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:16:39,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:16:39,734.734 INFO    ] No existing commands found in stream
[2026-06-19 21:16:44,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:16:44,751.751 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 21:16:45,308.308 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:16:45,311.311 INFO    ] Checking for system updates...
[2026-06-19 21:16:45,347.347 INFO    ] 200
[2026-06-19 21:16:45,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:45,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:16:45,411.411 INFO    ] No update needed
[2026-06-19 21:16:45,413.413 INFO    ] Checking for camera pi updates...
[2026-06-19 21:16:45,451.451 INFO    ] 200
[2026-06-19 21:16:45,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:45,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:16:45,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:16:45,558.558 INFO    ] No camera update needed
[2026-06-19 21:16:45,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:16:45,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:16:45,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:16:45,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:16:47,614.614 INFO    ] ================================================
[2026-06-19 21:16:47,629.629 INFO    ] Launching Daemon at Fri Jun 19 21:16:47 IST 2026
[2026-06-19 21:16:47,641.641 INFO    ] ================================================
[2026-06-19 21:16:48,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:16:48
[2026-06-19 21:16:48,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:16:49,123.123 INFO    ] Initializing speech engine...
[2026-06-19 21:16:49,133.133 INFO    ] 2026-06-19 21:16:49
[2026-06-19 21:16:49,409.409 INFO    ] 2026-06-19 21:16:49
[2026-06-19 21:16:49,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:16:49,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:16:49,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:16:49,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:16:49,791.791 INFO    ] time= 19/06/2026 21:16:49
[2026-06-19 21:16:49,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:16:49,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:16:49,920.920 INFO    ] No existing commands found in stream
[2026-06-19 21:16:54,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:16:54,934.934 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 21:16:58,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:16:58,992.992 INFO    ] Checking for system updates...
[2026-06-19 21:16:59,029.029 INFO    ] 200
[2026-06-19 21:16:59,031.031 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:59,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:16:59,091.091 INFO    ] No update needed
[2026-06-19 21:16:59,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 21:16:59,132.132 INFO    ] 200
[2026-06-19 21:16:59,135.135 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:16:59,177.177 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:16:59,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:16:59,230.230 INFO    ] No camera update needed
[2026-06-19 21:16:59,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:16:59,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:16:59,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:16:59,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:17:01,290.290 INFO    ] ================================================
[2026-06-19 21:17:01,306.306 INFO    ] Launching Daemon at Fri Jun 19 21:17:01 IST 2026
[2026-06-19 21:17:01,317.317 INFO    ] ================================================
[2026-06-19 21:17:01,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:17:01
[2026-06-19 21:17:02,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:17:03,080.080 INFO    ] Initializing speech engine...
[2026-06-19 21:17:03,096.096 INFO    ] 2026-06-19 21:17:03
[2026-06-19 21:17:03,416.416 INFO    ] 2026-06-19 21:17:03
[2026-06-19 21:17:03,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:17:03,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:17:03,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:17:03,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:17:03,978.978 INFO    ] time= 19/06/2026 21:17:03
[2026-06-19 21:17:04,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:17:04,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:17:04,107.107 INFO    ] No existing commands found in stream
[2026-06-19 21:17:09,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:17:09,147.147 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 21:17:09,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:17:09,842.842 INFO    ] Checking for system updates...
[2026-06-19 21:17:09,890.890 INFO    ] 200
[2026-06-19 21:17:09,892.892 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:17:09,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:17:09,957.957 INFO    ] No update needed
[2026-06-19 21:17:09,959.959 INFO    ] Checking for camera pi updates...
[2026-06-19 21:17:09,994.994 INFO    ] 200
[2026-06-19 21:17:09,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:17:10,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:17:10,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:17:10,192.192 INFO    ] No camera update needed
[2026-06-19 21:17:10,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:17:10,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:17:10,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:17:10,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:17:12,253.253 INFO    ] ================================================
[2026-06-19 21:17:12,271.271 INFO    ] Launching Daemon at Fri Jun 19 21:17:12 IST 2026
[2026-06-19 21:17:12,283.283 INFO    ] ================================================
[2026-06-19 21:17:12,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:17:12
[2026-06-19 21:17:13,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:17:13,832.832 INFO    ] Initializing speech engine...
[2026-06-19 21:17:13,842.842 INFO    ] 2026-06-19 21:17:13
[2026-06-19 21:17:14,105.105 INFO    ] 2026-06-19 21:17:14
[2026-06-19 21:17:14,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:17:14,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:17:14,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:17:14,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:17:14,439.439 INFO    ] time= 19/06/2026 21:17:14
[2026-06-19 21:17:14,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:17:14,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:17:14,524.524 INFO    ] No existing commands found in stream
[2026-06-19 21:17:19,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:17:19,538.538 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 21:17:23,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:17:23,071.071 INFO    ] Checking for system updates...
[2026-06-19 21:17:23,110.110 INFO    ] 200
[2026-06-19 21:17:23,113.113 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:17:23,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:17:23,168.168 INFO    ] No update needed
[2026-06-19 21:17:23,170.170 INFO    ] Checking for camera pi updates...
[2026-06-19 21:17:23,208.208 INFO    ] 200
[2026-06-19 21:17:23,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:17:23,251.251 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:17:23,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:17:23,300.300 INFO    ] No camera update needed
[2026-06-19 21:17:23,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:17:23,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:17:23,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:17:23,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:17:25,357.357 INFO    ] ================================================
[2026-06-19 21:17:25,373.373 INFO    ] Launching Daemon at Fri Jun 19 21:17:25 IST 2026
[2026-06-19 21:17:25,384.384 INFO    ] ================================================
[2026-06-19 21:17:25,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:17:25
[2026-06-19 21:17:26,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:17:26,822.822 INFO    ] Initializing speech engine...
[2026-06-19 21:17:26,828.828 INFO    ] 2026-06-19 21:17:26
[2026-06-19 21:17:27,080.080 INFO    ] 2026-06-19 21:17:27
[2026-06-19 21:17:27,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:17:27,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:17:27,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:17:27,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:17:27,530.530 INFO    ] time= 19/06/2026 21:17:27
[2026-06-19 21:17:27,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:17:27,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:17:27,719.719 INFO    ] No existing commands found in stream
[2026-06-19 21:17:32,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:17:32,735.735 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 21:17:37,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:17:37,033.033 INFO    ] Checking for system updates...
[2026-06-19 21:17:37,070.070 INFO    ] 200
[2026-06-19 21:17:37,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:17:37,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:17:37,134.134 INFO    ] No update needed
[2026-06-19 21:17:37,136.136 INFO    ] Checking for camera pi updates...
[2026-06-19 21:17:37,170.170 INFO    ] 200
[2026-06-19 21:17:37,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:17:37,213.213 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:17:37,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:17:37,264.264 INFO    ] No camera update needed
[2026-06-19 21:17:37,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:17:37,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:17:37,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:17:37,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:17:39,322.322 INFO    ] ================================================
[2026-06-19 21:17:39,338.338 INFO    ] Launching Daemon at Fri Jun 19 21:17:39 IST 2026
[2026-06-19 21:17:39,349.349 INFO    ] ================================================
[2026-06-19 21:17:40,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:17:40
[2026-06-19 21:17:40,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:17:41,016.016 INFO    ] Initializing speech engine...
[2026-06-19 21:17:41,028.028 INFO    ] 2026-06-19 21:17:41
[2026-06-19 21:17:41,322.322 INFO    ] 2026-06-19 21:17:41
[2026-06-19 21:17:41,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:17:41,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:17:41,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:17:41,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:17:41,791.791 INFO    ] time= 19/06/2026 21:17:41
[2026-06-19 21:17:41,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:17:41,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:17:41,955.955 INFO    ] No existing commands found in stream
[2026-06-19 21:17:46,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:17:46,993.993 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 21:17:48,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:17:48,579.579 INFO    ] Checking for system updates...
[2026-06-19 21:17:48,617.617 INFO    ] 200
[2026-06-19 21:17:48,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:17:48,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:17:48,678.678 INFO    ] No update needed
[2026-06-19 21:17:48,681.681 INFO    ] Checking for camera pi updates...
[2026-06-19 21:17:48,721.721 INFO    ] 200
[2026-06-19 21:17:48,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:17:48,773.773 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:17:48,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:17:48,809.809 INFO    ] No camera update needed
[2026-06-19 21:17:48,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:17:48,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:17:48,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:17:48,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:17:50,870.870 INFO    ] ================================================
[2026-06-19 21:17:50,886.886 INFO    ] Launching Daemon at Fri Jun 19 21:17:50 IST 2026
[2026-06-19 21:17:50,897.897 INFO    ] ================================================
[2026-06-19 21:17:51,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:17:51
[2026-06-19 21:17:52,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:17:52,390.390 INFO    ] Initializing speech engine...
[2026-06-19 21:17:52,410.410 INFO    ] 2026-06-19 21:17:52
[2026-06-19 21:17:52,684.684 INFO    ] 2026-06-19 21:17:52
[2026-06-19 21:17:52,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:17:52,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:17:52,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:17:53,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:17:53,090.090 INFO    ] time= 19/06/2026 21:17:53
[2026-06-19 21:17:53,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:17:53,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:17:53,203.203 INFO    ] No existing commands found in stream
[2026-06-19 21:17:58,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:17:58,216.216 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-19 21:18:01,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:18:01,973.973 INFO    ] Checking for system updates...
[2026-06-19 21:18:02,020.020 INFO    ] 200
[2026-06-19 21:18:02,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:02,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:18:02,099.099 INFO    ] No update needed
[2026-06-19 21:18:02,102.102 INFO    ] Checking for camera pi updates...
[2026-06-19 21:18:02,140.140 INFO    ] 200
[2026-06-19 21:18:02,143.143 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:02,201.201 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:18:02,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:18:02,239.239 INFO    ] No camera update needed
[2026-06-19 21:18:02,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:18:02,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:18:02,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:18:02,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:18:04,300.300 INFO    ] ================================================
[2026-06-19 21:18:04,315.315 INFO    ] Launching Daemon at Fri Jun 19 21:18:04 IST 2026
[2026-06-19 21:18:04,326.326 INFO    ] ================================================
[2026-06-19 21:18:05,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:18:04
[2026-06-19 21:18:05,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:18:06,042.042 INFO    ] Initializing speech engine...
[2026-06-19 21:18:06,048.048 INFO    ] 2026-06-19 21:18:06
[2026-06-19 21:18:06,361.361 INFO    ] 2026-06-19 21:18:06
[2026-06-19 21:18:06,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:18:06,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:18:06,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:18:06,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:18:06,868.868 INFO    ] time= 19/06/2026 21:18:06
[2026-06-19 21:18:06,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:18:06,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:18:07,023.023 INFO    ] No existing commands found in stream
[2026-06-19 21:18:12,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:18:12,049.049 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 21:18:12,638.638 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:18:12,641.641 INFO    ] Checking for system updates...
[2026-06-19 21:18:12,685.685 INFO    ] 200
[2026-06-19 21:18:12,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:12,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:18:12,747.747 INFO    ] No update needed
[2026-06-19 21:18:12,750.750 INFO    ] Checking for camera pi updates...
[2026-06-19 21:18:12,787.787 INFO    ] 200
[2026-06-19 21:18:12,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:12,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:18:12,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:18:12,887.887 INFO    ] No camera update needed
[2026-06-19 21:18:12,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:18:12,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:18:12,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:18:12,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:18:14,942.942 INFO    ] ================================================
[2026-06-19 21:18:14,958.958 INFO    ] Launching Daemon at Fri Jun 19 21:18:14 IST 2026
[2026-06-19 21:18:14,968.968 INFO    ] ================================================
[2026-06-19 21:18:15,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:18:15
[2026-06-19 21:18:16,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:18:16,433.433 INFO    ] Initializing speech engine...
[2026-06-19 21:18:16,442.442 INFO    ] 2026-06-19 21:18:16
[2026-06-19 21:18:16,691.691 INFO    ] 2026-06-19 21:18:16
[2026-06-19 21:18:16,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:18:16,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:18:16,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:18:17,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:18:17,174.174 INFO    ] time= 19/06/2026 21:18:17
[2026-06-19 21:18:17,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:18:17,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:18:17,325.325 INFO    ] No existing commands found in stream
[2026-06-19 21:18:22,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:18:22,364.364 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-19 21:18:24,443.443 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:18:24,446.446 INFO    ] Checking for system updates...
[2026-06-19 21:18:24,484.484 INFO    ] 200
[2026-06-19 21:18:24,486.486 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:24,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:18:24,542.542 INFO    ] No update needed
[2026-06-19 21:18:24,545.545 INFO    ] Checking for camera pi updates...
[2026-06-19 21:18:24,579.579 INFO    ] 200
[2026-06-19 21:18:24,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:24,628.628 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:18:24,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:18:24,675.675 INFO    ] No camera update needed
[2026-06-19 21:18:24,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:18:24,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:18:24,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:18:24,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:18:26,732.732 INFO    ] ================================================
[2026-06-19 21:18:26,747.747 INFO    ] Launching Daemon at Fri Jun 19 21:18:26 IST 2026
[2026-06-19 21:18:26,759.759 INFO    ] ================================================
[2026-06-19 21:18:27,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:18:27
[2026-06-19 21:18:28,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:18:28,440.440 INFO    ] Initializing speech engine...
[2026-06-19 21:18:28,448.448 INFO    ] 2026-06-19 21:18:28
[2026-06-19 21:18:28,743.743 INFO    ] 2026-06-19 21:18:28
[2026-06-19 21:18:28,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:18:29,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:18:29,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:18:29,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:18:29,301.301 INFO    ] time= 19/06/2026 21:18:29
[2026-06-19 21:18:29,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:18:29,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:18:29,461.461 INFO    ] No existing commands found in stream
[2026-06-19 21:18:34,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:18:34,487.487 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 21:18:37,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:18:37,621.621 INFO    ] Checking for system updates...
[2026-06-19 21:18:37,664.664 INFO    ] 200
[2026-06-19 21:18:37,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:37,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:18:37,724.724 INFO    ] No update needed
[2026-06-19 21:18:37,727.727 INFO    ] Checking for camera pi updates...
[2026-06-19 21:18:37,767.767 INFO    ] 200
[2026-06-19 21:18:37,770.770 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:37,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:18:37,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:18:37,873.873 INFO    ] No camera update needed
[2026-06-19 21:18:37,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:18:37,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:18:37,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:18:37,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:18:39,933.933 INFO    ] ================================================
[2026-06-19 21:18:39,948.948 INFO    ] Launching Daemon at Fri Jun 19 21:18:39 IST 2026
[2026-06-19 21:18:39,959.959 INFO    ] ================================================
[2026-06-19 21:18:40,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:18:40
[2026-06-19 21:18:41,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:18:41,393.393 INFO    ] Initializing speech engine...
[2026-06-19 21:18:41,402.402 INFO    ] 2026-06-19 21:18:41
[2026-06-19 21:18:41,661.661 INFO    ] 2026-06-19 21:18:41
[2026-06-19 21:18:41,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:18:41,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:18:41,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:18:42,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:18:42,103.103 INFO    ] time= 19/06/2026 21:18:42
[2026-06-19 21:18:42,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:18:42,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:18:42,308.308 INFO    ] No existing commands found in stream
[2026-06-19 21:18:47,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:18:47,355.355 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 21:18:48,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:18:48,175.175 INFO    ] Checking for system updates...
[2026-06-19 21:18:48,213.213 INFO    ] 200
[2026-06-19 21:18:48,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:48,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:18:48,274.274 INFO    ] No update needed
[2026-06-19 21:18:48,277.277 INFO    ] Checking for camera pi updates...
[2026-06-19 21:18:48,316.316 INFO    ] 200
[2026-06-19 21:18:48,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:48,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:18:48,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:18:48,398.398 INFO    ] No camera update needed
[2026-06-19 21:18:48,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:18:48,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:18:48,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:18:48,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:18:50,457.457 INFO    ] ================================================
[2026-06-19 21:18:50,473.473 INFO    ] Launching Daemon at Fri Jun 19 21:18:50 IST 2026
[2026-06-19 21:18:50,483.483 INFO    ] ================================================
[2026-06-19 21:18:51,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:18:51
[2026-06-19 21:18:51,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:18:51,918.918 INFO    ] Initializing speech engine...
[2026-06-19 21:18:51,929.929 INFO    ] 2026-06-19 21:18:51
[2026-06-19 21:18:52,177.177 INFO    ] 2026-06-19 21:18:52
[2026-06-19 21:18:52,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:18:52,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:18:52,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:18:52,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:18:52,663.663 INFO    ] time= 19/06/2026 21:18:52
[2026-06-19 21:18:52,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:18:52,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:18:52,813.813 INFO    ] No existing commands found in stream
[2026-06-19 21:18:57,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:18:57,827.827 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 21:18:58,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:18:58,641.641 INFO    ] Checking for system updates...
[2026-06-19 21:18:58,678.678 INFO    ] 200
[2026-06-19 21:18:58,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:58,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:18:58,745.745 INFO    ] No update needed
[2026-06-19 21:18:58,748.748 INFO    ] Checking for camera pi updates...
[2026-06-19 21:18:58,788.788 INFO    ] 200
[2026-06-19 21:18:58,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:18:58,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:18:58,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:18:58,883.883 INFO    ] No camera update needed
[2026-06-19 21:18:58,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:18:58,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:18:58,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:18:58,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:19:00,942.942 INFO    ] ================================================
[2026-06-19 21:19:00,958.958 INFO    ] Launching Daemon at Fri Jun 19 21:19:00 IST 2026
[2026-06-19 21:19:00,969.969 INFO    ] ================================================
[2026-06-19 21:19:01,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:19:01
[2026-06-19 21:19:02,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:19:02,711.711 INFO    ] Initializing speech engine...
[2026-06-19 21:19:02,724.724 INFO    ] 2026-06-19 21:19:02
[2026-06-19 21:19:03,053.053 INFO    ] 2026-06-19 21:19:03
[2026-06-19 21:19:03,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:19:03,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:19:03,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:19:03,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:19:03,494.494 INFO    ] time= 19/06/2026 21:19:03
[2026-06-19 21:19:03,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:19:03,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:19:03,595.595 INFO    ] No existing commands found in stream
[2026-06-19 21:19:08,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:19:08,634.634 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 21:19:10,747.747 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:19:10,750.750 INFO    ] Checking for system updates...
[2026-06-19 21:19:10,786.786 INFO    ] 200
[2026-06-19 21:19:10,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:19:10,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:19:10,843.843 INFO    ] No update needed
[2026-06-19 21:19:10,846.846 INFO    ] Checking for camera pi updates...
[2026-06-19 21:19:10,880.880 INFO    ] 200
[2026-06-19 21:19:10,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:19:10,922.922 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:19:10,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:19:10,978.978 INFO    ] No camera update needed
[2026-06-19 21:19:10,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:19:10,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:19:10,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:19:10,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:19:13,033.033 INFO    ] ================================================
[2026-06-19 21:19:13,049.049 INFO    ] Launching Daemon at Fri Jun 19 21:19:13 IST 2026
[2026-06-19 21:19:13,060.060 INFO    ] ================================================
[2026-06-19 21:19:13,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:19:13
[2026-06-19 21:19:14,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:19:14,666.666 INFO    ] Initializing speech engine...
[2026-06-19 21:19:14,678.678 INFO    ] 2026-06-19 21:19:14
[2026-06-19 21:19:14,984.984 INFO    ] 2026-06-19 21:19:14
[2026-06-19 21:19:15,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:19:15,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:19:15,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:19:15,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:19:15,491.491 INFO    ] time= 19/06/2026 21:19:15
[2026-06-19 21:19:15,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:19:15,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:19:15,645.645 INFO    ] No existing commands found in stream
[2026-06-19 21:19:20,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:19:20,665.665 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 21:19:24,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:19:24,083.083 INFO    ] Checking for system updates...
[2026-06-19 21:19:24,120.120 INFO    ] 200
[2026-06-19 21:19:24,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:19:24,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:19:24,180.180 INFO    ] No update needed
[2026-06-19 21:19:24,183.183 INFO    ] Checking for camera pi updates...
[2026-06-19 21:19:24,217.217 INFO    ] 200
[2026-06-19 21:19:24,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:19:24,266.266 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:19:24,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:19:24,414.414 INFO    ] No camera update needed
[2026-06-19 21:19:24,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:19:24,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:19:24,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:19:24,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:19:26,477.477 INFO    ] ================================================
[2026-06-19 21:19:26,492.492 INFO    ] Launching Daemon at Fri Jun 19 21:19:26 IST 2026
[2026-06-19 21:19:26,503.503 INFO    ] ================================================
[2026-06-19 21:19:27,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:19:27
[2026-06-19 21:19:27,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:19:27,960.960 INFO    ] Initializing speech engine...
[2026-06-19 21:19:27,970.970 INFO    ] 2026-06-19 21:19:27
[2026-06-19 21:19:28,248.248 INFO    ] 2026-06-19 21:19:28
[2026-06-19 21:19:28,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:19:28,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:19:28,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:19:28,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:19:28,692.692 INFO    ] time= 19/06/2026 21:19:28
[2026-06-19 21:19:28,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:19:28,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:19:28,782.782 INFO    ] No existing commands found in stream
[2026-06-19 21:19:33,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:19:33,810.810 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 21:19:34,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:19:34,941.941 INFO    ] Checking for system updates...
[2026-06-19 21:19:34,977.977 INFO    ] 200
[2026-06-19 21:19:34,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:19:35,036.036 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:19:35,039.039 INFO    ] No update needed
[2026-06-19 21:19:35,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 21:19:35,075.075 INFO    ] 200
[2026-06-19 21:19:35,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:19:35,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:19:35,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:19:35,183.183 INFO    ] No camera update needed
[2026-06-19 21:19:35,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:19:35,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:19:35,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:19:35,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:19:37,239.239 INFO    ] ================================================
[2026-06-19 21:19:37,254.254 INFO    ] Launching Daemon at Fri Jun 19 21:19:37 IST 2026
[2026-06-19 21:19:37,265.265 INFO    ] ================================================
[2026-06-19 21:19:37,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:19:37
[2026-06-19 21:19:38,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:19:38,701.701 INFO    ] Initializing speech engine...
[2026-06-19 21:19:38,709.709 INFO    ] 2026-06-19 21:19:38
[2026-06-19 21:19:39,004.004 INFO    ] 2026-06-19 21:19:38
[2026-06-19 21:19:39,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:19:39,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:19:39,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:19:39,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:19:39,379.379 INFO    ] time= 19/06/2026 21:19:39
[2026-06-19 21:19:39,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:19:39,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:19:39,503.503 INFO    ] No existing commands found in stream
[2026-06-19 21:19:44,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:19:44,518.518 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 21:19:48,214.214 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:19:48,217.217 INFO    ] Checking for system updates...
[2026-06-19 21:19:48,253.253 INFO    ] 200
[2026-06-19 21:19:48,255.255 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:19:48,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:19:48,314.314 INFO    ] No update needed
[2026-06-19 21:19:48,316.316 INFO    ] Checking for camera pi updates...
[2026-06-19 21:19:48,350.350 INFO    ] 200
[2026-06-19 21:19:48,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:19:48,393.393 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:19:48,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:19:48,430.430 INFO    ] No camera update needed
[2026-06-19 21:19:48,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:19:48,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:19:48,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:19:48,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:19:50,484.484 INFO    ] ================================================
[2026-06-19 21:19:50,499.499 INFO    ] Launching Daemon at Fri Jun 19 21:19:50 IST 2026
[2026-06-19 21:19:50,510.510 INFO    ] ================================================
[2026-06-19 21:19:51,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:19:51
[2026-06-19 21:19:51,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:19:51,934.934 INFO    ] Initializing speech engine...
[2026-06-19 21:19:51,940.940 INFO    ] 2026-06-19 21:19:51
[2026-06-19 21:19:52,236.236 INFO    ] 2026-06-19 21:19:52
[2026-06-19 21:19:52,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:19:52,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:19:52,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:19:52,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:19:52,619.619 INFO    ] time= 19/06/2026 21:19:52
[2026-06-19 21:19:52,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:19:52,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:19:52,743.743 INFO    ] No existing commands found in stream
[2026-06-19 21:19:57,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:19:57,758.758 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 21:19:59,911.911 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:19:59,914.914 INFO    ] Checking for system updates...
[2026-06-19 21:19:59,952.952 INFO    ] 200
[2026-06-19 21:19:59,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:00,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:20:00,011.011 INFO    ] No update needed
[2026-06-19 21:20:00,014.014 INFO    ] Checking for camera pi updates...
[2026-06-19 21:20:00,048.048 INFO    ] 200
[2026-06-19 21:20:00,051.051 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:00,094.094 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:20:00,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:20:00,143.143 INFO    ] No camera update needed
[2026-06-19 21:20:00,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:20:00,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:20:00,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:20:00,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:20:02,245.245 INFO    ] ================================================
[2026-06-19 21:20:02,319.319 INFO    ] Launching Daemon at Fri Jun 19 21:20:02 IST 2026
[2026-06-19 21:20:02,367.367 INFO    ] ================================================
[2026-06-19 21:20:03,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:20:03
[2026-06-19 21:20:03,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:20:04,231.231 INFO    ] Initializing speech engine...
[2026-06-19 21:20:04,242.242 INFO    ] 2026-06-19 21:20:04
[2026-06-19 21:20:04,531.531 INFO    ] 2026-06-19 21:20:04
[2026-06-19 21:20:04,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:20:04,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:20:04,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:20:05,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:20:05,068.068 INFO    ] time= 19/06/2026 21:20:05
[2026-06-19 21:20:05,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:20:05,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:20:05,215.215 INFO    ] No existing commands found in stream
[2026-06-19 21:20:10,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:20:10,239.239 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 21:20:11,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:20:11,857.857 INFO    ] Checking for system updates...
[2026-06-19 21:20:11,895.895 INFO    ] 200
[2026-06-19 21:20:11,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:11,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:20:11,953.953 INFO    ] No update needed
[2026-06-19 21:20:11,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 21:20:11,990.990 INFO    ] 200
[2026-06-19 21:20:11,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:12,034.034 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:20:12,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:20:12,084.084 INFO    ] No camera update needed
[2026-06-19 21:20:12,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:20:12,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:20:12,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:20:12,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:20:14,141.141 INFO    ] ================================================
[2026-06-19 21:20:14,156.156 INFO    ] Launching Daemon at Fri Jun 19 21:20:14 IST 2026
[2026-06-19 21:20:14,167.167 INFO    ] ================================================
[2026-06-19 21:20:14,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:20:14
[2026-06-19 21:20:15,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:20:15,573.573 INFO    ] Initializing speech engine...
[2026-06-19 21:20:15,582.582 INFO    ] 2026-06-19 21:20:15
[2026-06-19 21:20:15,879.879 INFO    ] 2026-06-19 21:20:15
[2026-06-19 21:20:15,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:20:16,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:20:16,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:20:16,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:20:16,267.267 INFO    ] time= 19/06/2026 21:20:16
[2026-06-19 21:20:16,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:20:16,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:20:16,391.391 INFO    ] No existing commands found in stream
[2026-06-19 21:20:21,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:20:21,407.407 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 21:20:22,106.106 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:20:22,109.109 INFO    ] Checking for system updates...
[2026-06-19 21:20:22,145.145 INFO    ] 200
[2026-06-19 21:20:22,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:22,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:20:22,203.203 INFO    ] No update needed
[2026-06-19 21:20:22,206.206 INFO    ] Checking for camera pi updates...
[2026-06-19 21:20:22,241.241 INFO    ] 200
[2026-06-19 21:20:22,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:22,290.290 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:20:22,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:20:22,337.337 INFO    ] No camera update needed
[2026-06-19 21:20:22,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:20:22,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:20:22,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:20:22,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:20:24,391.391 INFO    ] ================================================
[2026-06-19 21:20:24,407.407 INFO    ] Launching Daemon at Fri Jun 19 21:20:24 IST 2026
[2026-06-19 21:20:24,418.418 INFO    ] ================================================
[2026-06-19 21:20:25,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:20:24
[2026-06-19 21:20:25,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:20:25,915.915 INFO    ] Initializing speech engine...
[2026-06-19 21:20:25,927.927 INFO    ] 2026-06-19 21:20:25
[2026-06-19 21:20:26,207.207 INFO    ] 2026-06-19 21:20:26
[2026-06-19 21:20:26,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:20:26,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:20:26,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:20:26,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:20:26,691.691 INFO    ] time= 19/06/2026 21:20:26
[2026-06-19 21:20:26,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:20:26,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:20:26,878.878 INFO    ] No existing commands found in stream
[2026-06-19 21:20:31,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:20:31,910.910 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 21:20:33,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:20:33,002.002 INFO    ] Checking for system updates...
[2026-06-19 21:20:33,039.039 INFO    ] 200
[2026-06-19 21:20:33,041.041 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:33,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:20:33,098.098 INFO    ] No update needed
[2026-06-19 21:20:33,100.100 INFO    ] Checking for camera pi updates...
[2026-06-19 21:20:33,135.135 INFO    ] 200
[2026-06-19 21:20:33,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:33,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:20:33,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:20:33,217.217 INFO    ] No camera update needed
[2026-06-19 21:20:33,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:20:33,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:20:33,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:20:33,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:20:35,273.273 INFO    ] ================================================
[2026-06-19 21:20:35,287.287 INFO    ] Launching Daemon at Fri Jun 19 21:20:35 IST 2026
[2026-06-19 21:20:35,298.298 INFO    ] ================================================
[2026-06-19 21:20:35,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:20:35
[2026-06-19 21:20:36,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:20:36,909.909 INFO    ] Initializing speech engine...
[2026-06-19 21:20:36,923.923 INFO    ] 2026-06-19 21:20:36
[2026-06-19 21:20:37,210.210 INFO    ] 2026-06-19 21:20:37
[2026-06-19 21:20:37,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:20:37,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:20:37,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:20:37,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:20:37,766.766 INFO    ] time= 19/06/2026 21:20:37
[2026-06-19 21:20:37,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:20:37,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:20:37,926.926 INFO    ] No existing commands found in stream
[2026-06-19 21:20:42,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:20:42,950.950 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 21:20:43,363.363 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:20:43,366.366 INFO    ] Checking for system updates...
[2026-06-19 21:20:43,403.403 INFO    ] 200
[2026-06-19 21:20:43,406.406 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:43,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:20:43,460.460 INFO    ] No update needed
[2026-06-19 21:20:43,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 21:20:43,501.501 INFO    ] 200
[2026-06-19 21:20:43,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:43,544.544 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:20:43,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:20:43,592.592 INFO    ] No camera update needed
[2026-06-19 21:20:43,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:20:43,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:20:43,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:20:43,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:20:45,647.647 INFO    ] ================================================
[2026-06-19 21:20:45,662.662 INFO    ] Launching Daemon at Fri Jun 19 21:20:45 IST 2026
[2026-06-19 21:20:45,673.673 INFO    ] ================================================
[2026-06-19 21:20:46,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:20:46
[2026-06-19 21:20:46,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:20:47,230.230 INFO    ] Initializing speech engine...
[2026-06-19 21:20:47,239.239 INFO    ] 2026-06-19 21:20:47
[2026-06-19 21:20:47,500.500 INFO    ] 2026-06-19 21:20:47
[2026-06-19 21:20:47,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:20:47,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:20:47,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:20:47,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:20:47,916.916 INFO    ] time= 19/06/2026 21:20:47
[2026-06-19 21:20:47,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:20:47,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:20:48,005.005 INFO    ] No existing commands found in stream
[2026-06-19 21:20:53,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:20:53,020.020 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-19 21:20:55,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:20:55,783.783 INFO    ] Checking for system updates...
[2026-06-19 21:20:55,820.820 INFO    ] 200
[2026-06-19 21:20:55,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:55,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:20:55,898.898 INFO    ] No update needed
[2026-06-19 21:20:55,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 21:20:55,935.935 INFO    ] 200
[2026-06-19 21:20:55,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:20:55,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:20:56,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:20:56,041.041 INFO    ] No camera update needed
[2026-06-19 21:20:56,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:20:56,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:20:56,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:20:56,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:20:58,098.098 INFO    ] ================================================
[2026-06-19 21:20:58,113.113 INFO    ] Launching Daemon at Fri Jun 19 21:20:58 IST 2026
[2026-06-19 21:20:58,124.124 INFO    ] ================================================
[2026-06-19 21:20:58,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:20:58
[2026-06-19 21:20:59,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:20:59,769.769 INFO    ] Initializing speech engine...
[2026-06-19 21:20:59,782.782 INFO    ] 2026-06-19 21:20:59
[2026-06-19 21:21:00,065.065 INFO    ] 2026-06-19 21:21:00
[2026-06-19 21:21:00,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:21:00,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:21:00,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:21:00,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:21:00,567.567 INFO    ] time= 19/06/2026 21:21:00
[2026-06-19 21:21:00,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:21:00,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:21:00,766.766 INFO    ] No existing commands found in stream
[2026-06-19 21:21:05,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:21:05,798.798 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-19 21:21:08,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:21:08,910.910 INFO    ] Checking for system updates...
[2026-06-19 21:21:08,947.947 INFO    ] 200
[2026-06-19 21:21:08,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:09,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:21:09,011.011 INFO    ] No update needed
[2026-06-19 21:21:09,013.013 INFO    ] Checking for camera pi updates...
[2026-06-19 21:21:09,047.047 INFO    ] 200
[2026-06-19 21:21:09,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:09,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:21:09,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:21:09,138.138 INFO    ] No camera update needed
[2026-06-19 21:21:09,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:21:09,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:21:09,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:21:09,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:21:11,192.192 INFO    ] ================================================
[2026-06-19 21:21:11,208.208 INFO    ] Launching Daemon at Fri Jun 19 21:21:11 IST 2026
[2026-06-19 21:21:11,219.219 INFO    ] ================================================
[2026-06-19 21:21:11,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:21:11
[2026-06-19 21:21:12,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:21:12,694.694 INFO    ] Initializing speech engine...
[2026-06-19 21:21:12,700.700 INFO    ] 2026-06-19 21:21:12
[2026-06-19 21:21:12,962.962 INFO    ] 2026-06-19 21:21:12
[2026-06-19 21:21:12,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:21:13,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:21:13,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:21:13,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:21:13,452.452 INFO    ] time= 19/06/2026 21:21:13
[2026-06-19 21:21:13,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:21:13,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:21:13,635.635 INFO    ] No existing commands found in stream
[2026-06-19 21:21:18,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:21:18,670.670 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 21:21:22,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:21:22,876.876 INFO    ] Checking for system updates...
[2026-06-19 21:21:22,912.912 INFO    ] 200
[2026-06-19 21:21:22,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:22,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:21:22,977.977 INFO    ] No update needed
[2026-06-19 21:21:22,979.979 INFO    ] Checking for camera pi updates...
[2026-06-19 21:21:23,017.017 INFO    ] 200
[2026-06-19 21:21:23,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:23,065.065 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:21:23,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:21:23,114.114 INFO    ] No camera update needed
[2026-06-19 21:21:23,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:21:23,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:21:23,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:21:23,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:21:25,171.171 INFO    ] ================================================
[2026-06-19 21:21:25,188.188 INFO    ] Launching Daemon at Fri Jun 19 21:21:25 IST 2026
[2026-06-19 21:21:25,199.199 INFO    ] ================================================
[2026-06-19 21:21:25,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:21:25
[2026-06-19 21:21:26,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:21:26,628.628 INFO    ] Initializing speech engine...
[2026-06-19 21:21:26,636.636 INFO    ] 2026-06-19 21:21:26
[2026-06-19 21:21:26,892.892 INFO    ] 2026-06-19 21:21:26
[2026-06-19 21:21:26,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:21:27,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:21:27,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:21:27,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:21:27,371.371 INFO    ] time= 19/06/2026 21:21:27
[2026-06-19 21:21:27,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:21:27,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:21:27,537.537 INFO    ] No existing commands found in stream
[2026-06-19 21:21:32,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:21:32,550.550 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 21:21:33,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:21:33,183.183 INFO    ] Checking for system updates...
[2026-06-19 21:21:33,220.220 INFO    ] 200
[2026-06-19 21:21:33,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:33,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:21:33,285.285 INFO    ] No update needed
[2026-06-19 21:21:33,287.287 INFO    ] Checking for camera pi updates...
[2026-06-19 21:21:33,321.321 INFO    ] 200
[2026-06-19 21:21:33,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:33,370.370 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:21:33,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:21:33,406.406 INFO    ] No camera update needed
[2026-06-19 21:21:33,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:21:33,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:21:33,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:21:33,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:21:35,465.465 INFO    ] ================================================
[2026-06-19 21:21:35,481.481 INFO    ] Launching Daemon at Fri Jun 19 21:21:35 IST 2026
[2026-06-19 21:21:35,493.493 INFO    ] ================================================
[2026-06-19 21:21:36,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:21:36
[2026-06-19 21:21:36,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:21:37,130.130 INFO    ] Initializing speech engine...
[2026-06-19 21:21:37,142.142 INFO    ] 2026-06-19 21:21:37
[2026-06-19 21:21:37,452.452 INFO    ] 2026-06-19 21:21:37
[2026-06-19 21:21:37,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:21:37,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:21:37,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:21:37,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:21:37,960.960 INFO    ] time= 19/06/2026 21:21:37
[2026-06-19 21:21:37,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:21:38,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:21:38,117.117 INFO    ] No existing commands found in stream
[2026-06-19 21:21:43,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:21:43,140.140 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 21:21:46,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:21:46,833.833 INFO    ] Checking for system updates...
[2026-06-19 21:21:46,875.875 INFO    ] 200
[2026-06-19 21:21:46,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:46,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:21:46,933.933 INFO    ] No update needed
[2026-06-19 21:21:46,936.936 INFO    ] Checking for camera pi updates...
[2026-06-19 21:21:46,975.975 INFO    ] 200
[2026-06-19 21:21:46,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:47,023.023 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:21:47,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:21:47,130.130 INFO    ] No camera update needed
[2026-06-19 21:21:47,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:21:47,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:21:47,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:21:47,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:21:49,187.187 INFO    ] ================================================
[2026-06-19 21:21:49,204.204 INFO    ] Launching Daemon at Fri Jun 19 21:21:49 IST 2026
[2026-06-19 21:21:49,216.216 INFO    ] ================================================
[2026-06-19 21:21:49,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:21:49
[2026-06-19 21:21:50,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:21:50,691.691 INFO    ] Initializing speech engine...
[2026-06-19 21:21:50,699.699 INFO    ] 2026-06-19 21:21:50
[2026-06-19 21:21:50,973.973 INFO    ] 2026-06-19 21:21:50
[2026-06-19 21:21:51,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:21:51,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:21:51,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:21:51,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:21:51,469.469 INFO    ] time= 19/06/2026 21:21:51
[2026-06-19 21:21:51,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:21:51,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:21:51,665.665 INFO    ] No existing commands found in stream
[2026-06-19 21:21:56,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:21:56,680.680 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-19 21:21:57,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:21:57,665.665 INFO    ] Checking for system updates...
[2026-06-19 21:21:57,706.706 INFO    ] 200
[2026-06-19 21:21:57,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:57,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:21:57,763.763 INFO    ] No update needed
[2026-06-19 21:21:57,765.765 INFO    ] Checking for camera pi updates...
[2026-06-19 21:21:57,802.802 INFO    ] 200
[2026-06-19 21:21:57,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:21:57,846.846 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:21:57,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:21:57,880.880 INFO    ] No camera update needed
[2026-06-19 21:21:57,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:21:57,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:21:57,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:21:57,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:21:59,939.939 INFO    ] ================================================
[2026-06-19 21:21:59,955.955 INFO    ] Launching Daemon at Fri Jun 19 21:21:59 IST 2026
[2026-06-19 21:21:59,967.967 INFO    ] ================================================
[2026-06-19 21:22:00,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:22:00
[2026-06-19 21:22:01,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:22:01,445.445 INFO    ] Initializing speech engine...
[2026-06-19 21:22:01,459.459 INFO    ] 2026-06-19 21:22:01
[2026-06-19 21:22:01,973.973 INFO    ] 2026-06-19 21:22:01
[2026-06-19 21:22:02,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:22:02,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:22:02,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:22:02,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:22:02,502.502 INFO    ] time= 19/06/2026 21:22:02
[2026-06-19 21:22:02,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:22:02,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:22:02,729.729 INFO    ] No existing commands found in stream
[2026-06-19 21:22:07,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:22:07,772.772 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 21:22:09,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:22:09,045.045 INFO    ] Checking for system updates...
[2026-06-19 21:22:09,086.086 INFO    ] 200
[2026-06-19 21:22:09,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:09,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:22:09,144.144 INFO    ] No update needed
[2026-06-19 21:22:09,147.147 INFO    ] Checking for camera pi updates...
[2026-06-19 21:22:09,185.185 INFO    ] 200
[2026-06-19 21:22:09,188.188 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:09,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:22:09,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:22:09,291.291 INFO    ] No camera update needed
[2026-06-19 21:22:09,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:22:09,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:22:09,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:22:09,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:22:11,346.346 INFO    ] ================================================
[2026-06-19 21:22:11,362.362 INFO    ] Launching Daemon at Fri Jun 19 21:22:11 IST 2026
[2026-06-19 21:22:11,373.373 INFO    ] ================================================
[2026-06-19 21:22:11,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:22:11
[2026-06-19 21:22:12,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:22:12,798.798 INFO    ] Initializing speech engine...
[2026-06-19 21:22:12,804.804 INFO    ] 2026-06-19 21:22:12
[2026-06-19 21:22:13,064.064 INFO    ] 2026-06-19 21:22:13
[2026-06-19 21:22:13,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:22:13,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:22:13,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:22:13,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:22:13,548.548 INFO    ] time= 19/06/2026 21:22:13
[2026-06-19 21:22:13,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:22:13,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:22:13,751.751 INFO    ] No existing commands found in stream
[2026-06-19 21:22:18,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:22:18,782.782 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 21:22:21,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:22:21,701.701 INFO    ] Checking for system updates...
[2026-06-19 21:22:21,738.738 INFO    ] 200
[2026-06-19 21:22:21,741.741 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:21,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:22:21,807.807 INFO    ] No update needed
[2026-06-19 21:22:21,809.809 INFO    ] Checking for camera pi updates...
[2026-06-19 21:22:21,849.849 INFO    ] 200
[2026-06-19 21:22:21,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:21,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:22:21,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:22:21,945.945 INFO    ] No camera update needed
[2026-06-19 21:22:21,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:22:21,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:22:21,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:22:21,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:22:24,006.006 INFO    ] ================================================
[2026-06-19 21:22:24,021.021 INFO    ] Launching Daemon at Fri Jun 19 21:22:24 IST 2026
[2026-06-19 21:22:24,032.032 INFO    ] ================================================
[2026-06-19 21:22:24,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:22:24
[2026-06-19 21:22:25,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:22:25,521.521 INFO    ] Initializing speech engine...
[2026-06-19 21:22:25,527.527 INFO    ] 2026-06-19 21:22:25
[2026-06-19 21:22:25,789.789 INFO    ] 2026-06-19 21:22:25
[2026-06-19 21:22:25,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:22:26,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:22:26,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:22:26,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:22:26,260.260 INFO    ] time= 19/06/2026 21:22:26
[2026-06-19 21:22:26,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:22:26,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:22:26,417.417 INFO    ] No existing commands found in stream
[2026-06-19 21:22:31,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:22:31,457.457 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 21:22:32,071.071 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:22:32,074.074 INFO    ] Checking for system updates...
[2026-06-19 21:22:32,149.149 INFO    ] 200
[2026-06-19 21:22:32,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:32,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:22:32,236.236 INFO    ] No update needed
[2026-06-19 21:22:32,239.239 INFO    ] Checking for camera pi updates...
[2026-06-19 21:22:32,280.280 INFO    ] 200
[2026-06-19 21:22:32,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:32,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:22:32,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:22:32,363.363 INFO    ] No camera update needed
[2026-06-19 21:22:32,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:22:32,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:22:32,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:22:32,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:22:34,424.424 INFO    ] ================================================
[2026-06-19 21:22:34,441.441 INFO    ] Launching Daemon at Fri Jun 19 21:22:34 IST 2026
[2026-06-19 21:22:34,452.452 INFO    ] ================================================
[2026-06-19 21:22:35,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:22:35
[2026-06-19 21:22:35,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:22:35,982.982 INFO    ] Initializing speech engine...
[2026-06-19 21:22:35,997.997 INFO    ] 2026-06-19 21:22:35
[2026-06-19 21:22:36,273.273 INFO    ] 2026-06-19 21:22:36
[2026-06-19 21:22:36,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:22:36,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:22:36,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:22:36,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:22:36,813.813 INFO    ] time= 19/06/2026 21:22:36
[2026-06-19 21:22:36,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:22:36,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:22:36,954.954 INFO    ] No existing commands found in stream
[2026-06-19 21:22:41,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:22:41,984.984 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 21:22:43,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:22:43,716.716 INFO    ] Checking for system updates...
[2026-06-19 21:22:43,756.756 INFO    ] 200
[2026-06-19 21:22:43,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:43,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:22:43,822.822 INFO    ] No update needed
[2026-06-19 21:22:43,825.825 INFO    ] Checking for camera pi updates...
[2026-06-19 21:22:43,862.862 INFO    ] 200
[2026-06-19 21:22:43,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:43,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:22:43,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:22:43,959.959 INFO    ] No camera update needed
[2026-06-19 21:22:43,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:22:43,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:22:43,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:22:43,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:22:46,017.017 INFO    ] ================================================
[2026-06-19 21:22:46,033.033 INFO    ] Launching Daemon at Fri Jun 19 21:22:46 IST 2026
[2026-06-19 21:22:46,044.044 INFO    ] ================================================
[2026-06-19 21:22:46,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:22:46
[2026-06-19 21:22:47,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:22:47,476.476 INFO    ] Initializing speech engine...
[2026-06-19 21:22:47,486.486 INFO    ] 2026-06-19 21:22:47
[2026-06-19 21:22:47,731.731 INFO    ] 2026-06-19 21:22:47
[2026-06-19 21:22:47,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:22:48,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:22:48,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:22:48,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:22:48,190.190 INFO    ] time= 19/06/2026 21:22:48
[2026-06-19 21:22:48,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:22:48,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:22:48,377.377 INFO    ] No existing commands found in stream
[2026-06-19 21:22:53,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:22:53,414.414 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-19 21:22:54,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:22:54,185.185 INFO    ] Checking for system updates...
[2026-06-19 21:22:54,224.224 INFO    ] 200
[2026-06-19 21:22:54,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:54,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:22:54,282.282 INFO    ] No update needed
[2026-06-19 21:22:54,284.284 INFO    ] Checking for camera pi updates...
[2026-06-19 21:22:54,318.318 INFO    ] 200
[2026-06-19 21:22:54,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:22:54,362.362 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:22:54,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:22:54,395.395 INFO    ] No camera update needed
[2026-06-19 21:22:54,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:22:54,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:22:54,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:22:54,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:22:56,450.450 INFO    ] ================================================
[2026-06-19 21:22:56,466.466 INFO    ] Launching Daemon at Fri Jun 19 21:22:56 IST 2026
[2026-06-19 21:22:56,478.478 INFO    ] ================================================
[2026-06-19 21:22:57,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:22:57
[2026-06-19 21:22:57,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:22:57,909.909 INFO    ] Initializing speech engine...
[2026-06-19 21:22:57,918.918 INFO    ] 2026-06-19 21:22:57
[2026-06-19 21:22:58,163.163 INFO    ] 2026-06-19 21:22:58
[2026-06-19 21:22:58,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:22:58,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:22:58,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:22:58,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:22:58,632.632 INFO    ] time= 19/06/2026 21:22:58
[2026-06-19 21:22:58,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:22:58,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:22:58,842.842 INFO    ] No existing commands found in stream
[2026-06-19 21:23:03,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:23:03,881.881 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 21:23:08,412.412 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:23:08,415.415 INFO    ] Checking for system updates...
[2026-06-19 21:23:08,455.455 INFO    ] 200
[2026-06-19 21:23:08,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:08,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:23:08,519.519 INFO    ] No update needed
[2026-06-19 21:23:08,522.522 INFO    ] Checking for camera pi updates...
[2026-06-19 21:23:08,556.556 INFO    ] 200
[2026-06-19 21:23:08,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:08,599.599 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:23:08,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:23:08,647.647 INFO    ] No camera update needed
[2026-06-19 21:23:08,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:23:08,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:23:08,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:23:08,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:23:10,704.704 INFO    ] ================================================
[2026-06-19 21:23:10,720.720 INFO    ] Launching Daemon at Fri Jun 19 21:23:10 IST 2026
[2026-06-19 21:23:10,731.731 INFO    ] ================================================
[2026-06-19 21:23:11,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:23:11
[2026-06-19 21:23:11,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:23:12,139.139 INFO    ] Initializing speech engine...
[2026-06-19 21:23:12,145.145 INFO    ] 2026-06-19 21:23:12
[2026-06-19 21:23:12,434.434 INFO    ] 2026-06-19 21:23:12
[2026-06-19 21:23:12,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:23:12,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:23:12,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:23:12,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:23:12,934.934 INFO    ] time= 19/06/2026 21:23:12
[2026-06-19 21:23:12,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:23:13,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:23:13,117.117 INFO    ] No existing commands found in stream
[2026-06-19 21:23:18,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:23:18,132.132 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 21:23:22,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:23:22,488.488 INFO    ] Checking for system updates...
[2026-06-19 21:23:22,524.524 INFO    ] 200
[2026-06-19 21:23:22,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:22,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:23:22,581.581 INFO    ] No update needed
[2026-06-19 21:23:22,584.584 INFO    ] Checking for camera pi updates...
[2026-06-19 21:23:22,618.618 INFO    ] 200
[2026-06-19 21:23:22,620.620 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:22,668.668 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:23:22,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:23:22,719.719 INFO    ] No camera update needed
[2026-06-19 21:23:22,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:23:22,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:23:22,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:23:22,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:23:24,774.774 INFO    ] ================================================
[2026-06-19 21:23:24,789.789 INFO    ] Launching Daemon at Fri Jun 19 21:23:24 IST 2026
[2026-06-19 21:23:24,801.801 INFO    ] ================================================
[2026-06-19 21:23:25,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:23:25
[2026-06-19 21:23:26,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:23:26,263.263 INFO    ] Initializing speech engine...
[2026-06-19 21:23:26,272.272 INFO    ] 2026-06-19 21:23:26
[2026-06-19 21:23:26,567.567 INFO    ] 2026-06-19 21:23:26
[2026-06-19 21:23:26,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:23:26,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:23:26,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:23:26,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:23:27,047.047 INFO    ] time= 19/06/2026 21:23:26
[2026-06-19 21:23:27,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:23:27,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:23:27,256.256 INFO    ] No existing commands found in stream
[2026-06-19 21:23:32,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:23:32,286.286 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 21:23:34,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:23:34,727.727 INFO    ] Checking for system updates...
[2026-06-19 21:23:34,766.766 INFO    ] 200
[2026-06-19 21:23:34,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:34,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:23:34,825.825 INFO    ] No update needed
[2026-06-19 21:23:34,828.828 INFO    ] Checking for camera pi updates...
[2026-06-19 21:23:34,863.863 INFO    ] 200
[2026-06-19 21:23:34,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:34,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:23:35,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:23:35,068.068 INFO    ] No camera update needed
[2026-06-19 21:23:35,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:23:35,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:23:35,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:23:35,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:23:37,124.124 INFO    ] ================================================
[2026-06-19 21:23:37,139.139 INFO    ] Launching Daemon at Fri Jun 19 21:23:37 IST 2026
[2026-06-19 21:23:37,150.150 INFO    ] ================================================
[2026-06-19 21:23:37,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:23:37
[2026-06-19 21:23:38,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:23:38,553.553 INFO    ] Initializing speech engine...
[2026-06-19 21:23:38,562.562 INFO    ] 2026-06-19 21:23:38
[2026-06-19 21:23:38,847.847 INFO    ] 2026-06-19 21:23:38
[2026-06-19 21:23:38,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:23:39,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:23:39,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:23:39,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:23:39,249.249 INFO    ] time= 19/06/2026 21:23:39
[2026-06-19 21:23:39,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:23:39,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:23:39,406.406 INFO    ] No existing commands found in stream
[2026-06-19 21:23:44,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:23:44,439.439 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-19 21:23:47,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:23:47,644.644 INFO    ] Checking for system updates...
[2026-06-19 21:23:47,683.683 INFO    ] 200
[2026-06-19 21:23:47,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:47,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:23:47,740.740 INFO    ] No update needed
[2026-06-19 21:23:47,743.743 INFO    ] Checking for camera pi updates...
[2026-06-19 21:23:47,778.778 INFO    ] 200
[2026-06-19 21:23:47,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:47,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:23:47,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:23:47,859.859 INFO    ] No camera update needed
[2026-06-19 21:23:47,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:23:47,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:23:47,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:23:47,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:23:49,913.913 INFO    ] ================================================
[2026-06-19 21:23:49,929.929 INFO    ] Launching Daemon at Fri Jun 19 21:23:49 IST 2026
[2026-06-19 21:23:49,940.940 INFO    ] ================================================
[2026-06-19 21:23:50,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:23:50
[2026-06-19 21:23:51,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:23:51,340.340 INFO    ] Initializing speech engine...
[2026-06-19 21:23:51,362.362 INFO    ] 2026-06-19 21:23:51
[2026-06-19 21:23:51,618.618 INFO    ] 2026-06-19 21:23:51
[2026-06-19 21:23:51,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:23:51,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:23:51,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:23:52,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:23:52,115.115 INFO    ] time= 19/06/2026 21:23:52
[2026-06-19 21:23:52,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:23:52,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:23:52,255.255 INFO    ] No existing commands found in stream
[2026-06-19 21:23:57,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:23:57,283.283 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 21:23:59,751.751 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:23:59,754.754 INFO    ] Checking for system updates...
[2026-06-19 21:23:59,790.790 INFO    ] 200
[2026-06-19 21:23:59,792.792 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:59,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:23:59,851.851 INFO    ] No update needed
[2026-06-19 21:23:59,854.854 INFO    ] Checking for camera pi updates...
[2026-06-19 21:23:59,891.891 INFO    ] 200
[2026-06-19 21:23:59,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:23:59,938.938 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:23:59,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:23:59,992.992 INFO    ] No camera update needed
[2026-06-19 21:23:59,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:23:59,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:24:00,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:24:00,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:24:02,054.054 INFO    ] ================================================
[2026-06-19 21:24:02,075.075 INFO    ] Launching Daemon at Fri Jun 19 21:24:02 IST 2026
[2026-06-19 21:24:02,088.088 INFO    ] ================================================
[2026-06-19 21:24:02,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:24:02
[2026-06-19 21:24:03,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:24:03,823.823 INFO    ] Initializing speech engine...
[2026-06-19 21:24:03,832.832 INFO    ] 2026-06-19 21:24:03
[2026-06-19 21:24:04,110.110 INFO    ] 2026-06-19 21:24:04
[2026-06-19 21:24:04,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:24:04,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:24:04,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:24:04,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:24:04,642.642 INFO    ] time= 19/06/2026 21:24:04
[2026-06-19 21:24:04,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:24:04,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:24:04,797.797 INFO    ] No existing commands found in stream
[2026-06-19 21:24:09,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:24:09,818.818 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 21:24:11,618.618 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:24:11,621.621 INFO    ] Checking for system updates...
[2026-06-19 21:24:11,658.658 INFO    ] 200
[2026-06-19 21:24:11,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:24:11,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:24:11,761.761 INFO    ] No update needed
[2026-06-19 21:24:11,764.764 INFO    ] Checking for camera pi updates...
[2026-06-19 21:24:11,799.799 INFO    ] 200
[2026-06-19 21:24:11,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:24:11,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:24:11,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:24:11,898.898 INFO    ] No camera update needed
[2026-06-19 21:24:11,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:24:11,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:24:11,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:24:11,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:24:13,955.955 INFO    ] ================================================
[2026-06-19 21:24:13,970.970 INFO    ] Launching Daemon at Fri Jun 19 21:24:13 IST 2026
[2026-06-19 21:24:13,981.981 INFO    ] ================================================
[2026-06-19 21:24:14,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:24:14
[2026-06-19 21:24:15,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:24:15,415.415 INFO    ] Initializing speech engine...
[2026-06-19 21:24:15,426.426 INFO    ] 2026-06-19 21:24:15
[2026-06-19 21:24:15,673.673 INFO    ] 2026-06-19 21:24:15
[2026-06-19 21:24:15,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:24:15,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:24:15,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:24:16,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:24:16,178.178 INFO    ] time= 19/06/2026 21:24:16
[2026-06-19 21:24:16,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:24:16,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:24:16,372.372 INFO    ] No existing commands found in stream
[2026-06-19 21:24:21,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:24:21,401.401 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 21:24:22,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:24:22,504.504 INFO    ] Checking for system updates...
[2026-06-19 21:24:22,541.541 INFO    ] 200
[2026-06-19 21:24:22,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:24:22,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:24:22,599.599 INFO    ] No update needed
[2026-06-19 21:24:22,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 21:24:22,640.640 INFO    ] 200
[2026-06-19 21:24:22,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:24:22,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:24:22,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:24:22,759.759 INFO    ] No camera update needed
[2026-06-19 21:24:22,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:24:22,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:24:22,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:24:22,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:24:24,816.816 INFO    ] ================================================
[2026-06-19 21:24:24,832.832 INFO    ] Launching Daemon at Fri Jun 19 21:24:24 IST 2026
[2026-06-19 21:24:24,843.843 INFO    ] ================================================
[2026-06-19 21:24:25,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:24:25
[2026-06-19 21:24:26,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:24:26,430.430 INFO    ] Initializing speech engine...
[2026-06-19 21:24:26,441.441 INFO    ] 2026-06-19 21:24:26
[2026-06-19 21:24:26,756.756 INFO    ] 2026-06-19 21:24:26
[2026-06-19 21:24:26,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:24:27,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:24:27,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:24:27,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:24:27,241.241 INFO    ] time= 19/06/2026 21:24:27
[2026-06-19 21:24:27,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:24:27,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:24:27,431.431 INFO    ] No existing commands found in stream
[2026-06-19 21:24:32,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:24:32,459.459 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 21:24:36,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:24:36,205.205 INFO    ] Checking for system updates...
[2026-06-19 21:24:36,247.247 INFO    ] 200
[2026-06-19 21:24:36,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:24:36,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:24:36,309.309 INFO    ] No update needed
[2026-06-19 21:24:36,312.312 INFO    ] Checking for camera pi updates...
[2026-06-19 21:24:36,347.347 INFO    ] 200
[2026-06-19 21:24:36,349.349 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:24:36,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:24:36,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:24:36,437.437 INFO    ] No camera update needed
[2026-06-19 21:24:36,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:24:36,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:24:36,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:24:36,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:24:38,493.493 INFO    ] ================================================
[2026-06-19 21:24:38,509.509 INFO    ] Launching Daemon at Fri Jun 19 21:24:38 IST 2026
[2026-06-19 21:24:38,520.520 INFO    ] ================================================
[2026-06-19 21:24:39,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:24:39
[2026-06-19 21:24:39,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:24:39,921.921 INFO    ] Initializing speech engine...
[2026-06-19 21:24:39,934.934 INFO    ] 2026-06-19 21:24:39
[2026-06-19 21:24:40,200.200 INFO    ] 2026-06-19 21:24:40
[2026-06-19 21:24:40,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:24:40,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:24:40,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:24:40,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:24:40,576.576 INFO    ] time= 19/06/2026 21:24:40
[2026-06-19 21:24:40,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:24:40,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:24:40,745.745 INFO    ] No existing commands found in stream
[2026-06-19 21:24:45,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:24:45,778.778 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 21:24:49,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:24:49,006.006 INFO    ] Checking for system updates...
[2026-06-19 21:24:49,046.046 INFO    ] 200
[2026-06-19 21:24:49,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:24:49,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:24:49,111.111 INFO    ] No update needed
[2026-06-19 21:24:49,113.113 INFO    ] Checking for camera pi updates...
[2026-06-19 21:24:49,147.147 INFO    ] 200
[2026-06-19 21:24:49,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:24:49,195.195 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:24:49,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:24:49,237.237 INFO    ] No camera update needed
[2026-06-19 21:24:49,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:24:49,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:24:49,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:24:49,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:24:51,291.291 INFO    ] ================================================
[2026-06-19 21:24:51,306.306 INFO    ] Launching Daemon at Fri Jun 19 21:24:51 IST 2026
[2026-06-19 21:24:51,318.318 INFO    ] ================================================
[2026-06-19 21:24:51,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:24:51
[2026-06-19 21:24:52,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:24:52,836.836 INFO    ] Initializing speech engine...
[2026-06-19 21:24:52,845.845 INFO    ] 2026-06-19 21:24:52
[2026-06-19 21:24:53,104.104 INFO    ] 2026-06-19 21:24:53
[2026-06-19 21:24:53,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:24:53,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:24:53,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:24:53,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:24:53,590.590 INFO    ] time= 19/06/2026 21:24:53
[2026-06-19 21:24:53,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:24:53,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:24:53,790.790 INFO    ] No existing commands found in stream
[2026-06-19 21:24:58,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:24:58,822.822 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 21:25:02,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:25:02,193.193 INFO    ] Checking for system updates...
[2026-06-19 21:25:02,240.240 INFO    ] 200
[2026-06-19 21:25:02,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:02,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:25:02,308.308 INFO    ] No update needed
[2026-06-19 21:25:02,312.312 INFO    ] Checking for camera pi updates...
[2026-06-19 21:25:02,352.352 INFO    ] 200
[2026-06-19 21:25:02,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:02,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:25:02,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:25:02,443.443 INFO    ] No camera update needed
[2026-06-19 21:25:02,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:25:02,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:25:02,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:25:02,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:25:04,504.504 INFO    ] ================================================
[2026-06-19 21:25:04,521.521 INFO    ] Launching Daemon at Fri Jun 19 21:25:04 IST 2026
[2026-06-19 21:25:04,532.532 INFO    ] ================================================
[2026-06-19 21:25:05,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:25:05
[2026-06-19 21:25:05,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:25:06,183.183 INFO    ] Initializing speech engine...
[2026-06-19 21:25:06,195.195 INFO    ] 2026-06-19 21:25:06
[2026-06-19 21:25:06,517.517 INFO    ] 2026-06-19 21:25:06
[2026-06-19 21:25:06,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:25:06,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:25:06,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:25:06,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:25:06,967.967 INFO    ] time= 19/06/2026 21:25:06
[2026-06-19 21:25:07,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:25:07,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:25:07,113.113 INFO    ] No existing commands found in stream
[2026-06-19 21:25:12,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:25:12,154.154 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 21:25:12,684.684 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:25:12,686.686 INFO    ] Checking for system updates...
[2026-06-19 21:25:12,726.726 INFO    ] 200
[2026-06-19 21:25:12,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:12,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:25:12,784.784 INFO    ] No update needed
[2026-06-19 21:25:12,787.787 INFO    ] Checking for camera pi updates...
[2026-06-19 21:25:12,824.824 INFO    ] 200
[2026-06-19 21:25:12,827.827 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:12,872.872 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:25:12,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:25:12,921.921 INFO    ] No camera update needed
[2026-06-19 21:25:12,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:25:12,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:25:12,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:25:12,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:25:14,979.979 INFO    ] ================================================
[2026-06-19 21:25:15,999.999 INFO    ] Launching Daemon at Fri Jun 19 21:25:14 IST 2026
[2026-06-19 21:25:15,010.010 INFO    ] ================================================
[2026-06-19 21:25:15,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:25:15
[2026-06-19 21:25:16,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:25:16,659.659 INFO    ] Initializing speech engine...
[2026-06-19 21:25:16,667.667 INFO    ] 2026-06-19 21:25:16
[2026-06-19 21:25:16,960.960 INFO    ] 2026-06-19 21:25:16
[2026-06-19 21:25:17,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:25:17,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:25:17,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:25:17,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:25:17,490.490 INFO    ] time= 19/06/2026 21:25:17
[2026-06-19 21:25:17,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:25:17,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:25:17,638.638 INFO    ] No existing commands found in stream
[2026-06-19 21:25:22,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:25:22,656.656 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 21:25:26,881.881 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:25:26,884.884 INFO    ] Checking for system updates...
[2026-06-19 21:25:26,925.925 INFO    ] 200
[2026-06-19 21:25:26,927.927 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:26,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:25:26,984.984 INFO    ] No update needed
[2026-06-19 21:25:26,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 21:25:27,026.026 INFO    ] 200
[2026-06-19 21:25:27,028.028 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:27,088.088 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:25:27,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:25:27,139.139 INFO    ] No camera update needed
[2026-06-19 21:25:27,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:25:27,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:25:27,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:25:27,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:25:29,194.194 INFO    ] ================================================
[2026-06-19 21:25:29,210.210 INFO    ] Launching Daemon at Fri Jun 19 21:25:29 IST 2026
[2026-06-19 21:25:29,221.221 INFO    ] ================================================
[2026-06-19 21:25:29,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:25:29
[2026-06-19 21:25:30,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:25:30,696.696 INFO    ] Initializing speech engine...
[2026-06-19 21:25:30,703.703 INFO    ] 2026-06-19 21:25:30
[2026-06-19 21:25:30,964.964 INFO    ] 2026-06-19 21:25:30
[2026-06-19 21:25:30,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:25:31,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:25:31,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:25:31,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:25:31,443.443 INFO    ] time= 19/06/2026 21:25:31
[2026-06-19 21:25:31,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:25:31,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:25:31,596.596 INFO    ] No existing commands found in stream
[2026-06-19 21:25:36,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:25:36,620.620 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 21:25:38,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:25:38,436.436 INFO    ] Checking for system updates...
[2026-06-19 21:25:38,477.477 INFO    ] 200
[2026-06-19 21:25:38,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:38,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:25:38,544.544 INFO    ] No update needed
[2026-06-19 21:25:38,546.546 INFO    ] Checking for camera pi updates...
[2026-06-19 21:25:38,585.585 INFO    ] 200
[2026-06-19 21:25:38,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:38,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:25:38,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:25:38,779.779 INFO    ] No camera update needed
[2026-06-19 21:25:38,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:25:38,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:25:38,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:25:38,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:25:40,836.836 INFO    ] ================================================
[2026-06-19 21:25:40,852.852 INFO    ] Launching Daemon at Fri Jun 19 21:25:40 IST 2026
[2026-06-19 21:25:40,864.864 INFO    ] ================================================
[2026-06-19 21:25:41,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:25:41
[2026-06-19 21:25:42,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:25:42,498.498 INFO    ] Initializing speech engine...
[2026-06-19 21:25:42,512.512 INFO    ] 2026-06-19 21:25:42
[2026-06-19 21:25:42,763.763 INFO    ] 2026-06-19 21:25:42
[2026-06-19 21:25:42,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:25:43,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:25:43,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:25:43,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:25:43,253.253 INFO    ] time= 19/06/2026 21:25:43
[2026-06-19 21:25:43,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:25:43,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:25:43,434.434 INFO    ] No existing commands found in stream
[2026-06-19 21:25:48,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:25:48,470.470 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 21:25:51,585.585 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:25:51,588.588 INFO    ] Checking for system updates...
[2026-06-19 21:25:51,626.626 INFO    ] 200
[2026-06-19 21:25:51,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:51,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:25:51,692.692 INFO    ] No update needed
[2026-06-19 21:25:51,694.694 INFO    ] Checking for camera pi updates...
[2026-06-19 21:25:51,728.728 INFO    ] 200
[2026-06-19 21:25:51,730.730 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:25:51,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:25:51,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:25:51,824.824 INFO    ] No camera update needed
[2026-06-19 21:25:51,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:25:51,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:25:51,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:25:51,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:25:53,880.880 INFO    ] ================================================
[2026-06-19 21:25:53,897.897 INFO    ] Launching Daemon at Fri Jun 19 21:25:53 IST 2026
[2026-06-19 21:25:53,908.908 INFO    ] ================================================
[2026-06-19 21:25:54,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:25:54
[2026-06-19 21:25:55,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:25:55,363.363 INFO    ] Initializing speech engine...
[2026-06-19 21:25:55,372.372 INFO    ] 2026-06-19 21:25:55
[2026-06-19 21:25:55,636.636 INFO    ] 2026-06-19 21:25:55
[2026-06-19 21:25:55,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:25:55,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:25:55,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:25:56,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:25:56,100.100 INFO    ] time= 19/06/2026 21:25:56
[2026-06-19 21:25:56,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:25:56,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:25:56,246.246 INFO    ] No existing commands found in stream
[2026-06-19 21:26:01,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:26:01,261.261 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 21:26:04,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:26:04,859.859 INFO    ] Checking for system updates...
[2026-06-19 21:26:04,896.896 INFO    ] 200
[2026-06-19 21:26:04,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:04,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:26:04,963.963 INFO    ] No update needed
[2026-06-19 21:26:04,965.965 INFO    ] Checking for camera pi updates...
[2026-06-19 21:26:05,002.002 INFO    ] 200
[2026-06-19 21:26:05,005.005 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:05,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:26:05,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:26:05,102.102 INFO    ] No camera update needed
[2026-06-19 21:26:05,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:26:05,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:26:05,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:26:05,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:26:07,159.159 INFO    ] ================================================
[2026-06-19 21:26:07,175.175 INFO    ] Launching Daemon at Fri Jun 19 21:26:07 IST 2026
[2026-06-19 21:26:07,186.186 INFO    ] ================================================
[2026-06-19 21:26:07,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:26:07
[2026-06-19 21:26:08,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:26:08,621.621 INFO    ] Initializing speech engine...
[2026-06-19 21:26:08,628.628 INFO    ] 2026-06-19 21:26:08
[2026-06-19 21:26:08,885.885 INFO    ] 2026-06-19 21:26:08
[2026-06-19 21:26:08,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:26:09,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:26:09,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:26:09,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:26:09,334.334 INFO    ] time= 19/06/2026 21:26:09
[2026-06-19 21:26:09,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:26:09,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:26:09,552.552 INFO    ] No existing commands found in stream
[2026-06-19 21:26:14,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:26:14,577.577 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 21:26:18,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:26:18,312.312 INFO    ] Checking for system updates...
[2026-06-19 21:26:18,353.353 INFO    ] 200
[2026-06-19 21:26:18,355.355 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:18,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:26:18,416.416 INFO    ] No update needed
[2026-06-19 21:26:18,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 21:26:18,452.452 INFO    ] 200
[2026-06-19 21:26:18,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:18,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:26:18,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:26:18,548.548 INFO    ] No camera update needed
[2026-06-19 21:26:18,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:26:18,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:26:18,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:26:18,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:26:20,603.603 INFO    ] ================================================
[2026-06-19 21:26:20,619.619 INFO    ] Launching Daemon at Fri Jun 19 21:26:20 IST 2026
[2026-06-19 21:26:20,630.630 INFO    ] ================================================
[2026-06-19 21:26:21,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:26:21
[2026-06-19 21:26:21,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:26:22,040.040 INFO    ] Initializing speech engine...
[2026-06-19 21:26:22,059.059 INFO    ] 2026-06-19 21:26:22
[2026-06-19 21:26:22,312.312 INFO    ] 2026-06-19 21:26:22
[2026-06-19 21:26:22,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:26:22,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:26:22,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:26:22,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:26:22,797.797 INFO    ] time= 19/06/2026 21:26:22
[2026-06-19 21:26:22,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:26:22,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:26:22,936.936 INFO    ] No existing commands found in stream
[2026-06-19 21:26:27,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:26:27,953.953 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 21:26:31,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:26:31,361.361 INFO    ] Checking for system updates...
[2026-06-19 21:26:31,405.405 INFO    ] 200
[2026-06-19 21:26:31,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:31,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:26:31,489.489 INFO    ] No update needed
[2026-06-19 21:26:31,492.492 INFO    ] Checking for camera pi updates...
[2026-06-19 21:26:31,535.535 INFO    ] 200
[2026-06-19 21:26:31,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:31,596.596 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:26:31,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:26:31,636.636 INFO    ] No camera update needed
[2026-06-19 21:26:31,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:26:31,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:26:31,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:26:31,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:26:33,699.699 INFO    ] ================================================
[2026-06-19 21:26:33,715.715 INFO    ] Launching Daemon at Fri Jun 19 21:26:33 IST 2026
[2026-06-19 21:26:33,726.726 INFO    ] ================================================
[2026-06-19 21:26:34,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:26:34
[2026-06-19 21:26:35,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:26:35,328.328 INFO    ] Initializing speech engine...
[2026-06-19 21:26:35,342.342 INFO    ] 2026-06-19 21:26:35
[2026-06-19 21:26:35,619.619 INFO    ] 2026-06-19 21:26:35
[2026-06-19 21:26:35,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:26:35,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:26:35,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:26:36,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:26:36,156.156 INFO    ] time= 19/06/2026 21:26:36
[2026-06-19 21:26:36,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:26:36,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:26:36,313.313 INFO    ] No existing commands found in stream
[2026-06-19 21:26:41,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:26:41,345.345 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-19 21:26:42,773.773 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:26:42,776.776 INFO    ] Checking for system updates...
[2026-06-19 21:26:42,818.818 INFO    ] 200
[2026-06-19 21:26:42,821.821 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:42,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:26:42,877.877 INFO    ] No update needed
[2026-06-19 21:26:42,880.880 INFO    ] Checking for camera pi updates...
[2026-06-19 21:26:42,918.918 INFO    ] 200
[2026-06-19 21:26:42,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:42,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:26:43,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:26:43,019.019 INFO    ] No camera update needed
[2026-06-19 21:26:43,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:26:43,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:26:43,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:26:43,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:26:45,076.076 INFO    ] ================================================
[2026-06-19 21:26:45,092.092 INFO    ] Launching Daemon at Fri Jun 19 21:26:45 IST 2026
[2026-06-19 21:26:45,104.104 INFO    ] ================================================
[2026-06-19 21:26:45,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:26:45
[2026-06-19 21:26:46,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:26:46,705.705 INFO    ] Initializing speech engine...
[2026-06-19 21:26:46,713.713 INFO    ] 2026-06-19 21:26:46
[2026-06-19 21:26:47,027.027 INFO    ] 2026-06-19 21:26:46
[2026-06-19 21:26:47,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:26:47,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:26:47,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:26:47,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:26:47,537.537 INFO    ] time= 19/06/2026 21:26:47
[2026-06-19 21:26:47,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:26:47,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:26:47,694.694 INFO    ] No existing commands found in stream
[2026-06-19 21:26:52,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:26:52,722.722 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 21:26:55,050.050 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:26:55,053.053 INFO    ] Checking for system updates...
[2026-06-19 21:26:55,094.094 INFO    ] 200
[2026-06-19 21:26:55,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:55,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:26:55,160.160 INFO    ] No update needed
[2026-06-19 21:26:55,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 21:26:55,200.200 INFO    ] 200
[2026-06-19 21:26:55,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:26:55,245.245 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:26:55,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:26:55,295.295 INFO    ] No camera update needed
[2026-06-19 21:26:55,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:26:55,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:26:55,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:26:55,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:26:57,353.353 INFO    ] ================================================
[2026-06-19 21:26:57,369.369 INFO    ] Launching Daemon at Fri Jun 19 21:26:57 IST 2026
[2026-06-19 21:26:57,379.379 INFO    ] ================================================
[2026-06-19 21:26:57,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:26:57
[2026-06-19 21:26:58,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:26:58,826.826 INFO    ] Initializing speech engine...
[2026-06-19 21:26:58,841.841 INFO    ] 2026-06-19 21:26:58
[2026-06-19 21:26:59,128.128 INFO    ] 2026-06-19 21:26:59
[2026-06-19 21:26:59,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:26:59,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:26:59,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:26:59,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:26:59,618.618 INFO    ] time= 19/06/2026 21:26:59
[2026-06-19 21:26:59,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:26:59,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:26:59,781.781 INFO    ] No existing commands found in stream
[2026-06-19 21:27:04,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:27:04,794.794 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 21:27:07,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:27:07,317.317 INFO    ] Checking for system updates...
[2026-06-19 21:27:07,353.353 INFO    ] 200
[2026-06-19 21:27:07,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:07,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:27:07,422.422 INFO    ] No update needed
[2026-06-19 21:27:07,425.425 INFO    ] Checking for camera pi updates...
[2026-06-19 21:27:07,459.459 INFO    ] 200
[2026-06-19 21:27:07,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:07,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:27:07,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:27:07,554.554 INFO    ] No camera update needed
[2026-06-19 21:27:07,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:27:07,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:27:07,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:27:07,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:27:09,670.670 INFO    ] ================================================
[2026-06-19 21:27:09,685.685 INFO    ] Launching Daemon at Fri Jun 19 21:27:09 IST 2026
[2026-06-19 21:27:09,695.695 INFO    ] ================================================
[2026-06-19 21:27:10,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:27:10
[2026-06-19 21:27:10,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:27:11,113.113 INFO    ] Initializing speech engine...
[2026-06-19 21:27:11,123.123 INFO    ] 2026-06-19 21:27:11
[2026-06-19 21:27:11,386.386 INFO    ] 2026-06-19 21:27:11
[2026-06-19 21:27:11,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:27:11,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:27:11,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:27:11,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:27:11,804.804 INFO    ] time= 19/06/2026 21:27:11
[2026-06-19 21:27:11,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:27:11,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:27:11,890.890 INFO    ] No existing commands found in stream
[2026-06-19 21:27:16,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:27:16,909.909 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-19 21:27:17,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:27:17,530.530 INFO    ] Checking for system updates...
[2026-06-19 21:27:17,566.566 INFO    ] 200
[2026-06-19 21:27:17,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:17,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:27:17,623.623 INFO    ] No update needed
[2026-06-19 21:27:17,626.626 INFO    ] Checking for camera pi updates...
[2026-06-19 21:27:17,664.664 INFO    ] 200
[2026-06-19 21:27:17,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:17,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:27:17,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:27:17,758.758 INFO    ] No camera update needed
[2026-06-19 21:27:17,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:27:17,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:27:17,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:27:17,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:27:19,816.816 INFO    ] ================================================
[2026-06-19 21:27:19,831.831 INFO    ] Launching Daemon at Fri Jun 19 21:27:19 IST 2026
[2026-06-19 21:27:19,842.842 INFO    ] ================================================
[2026-06-19 21:27:20,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:27:20
[2026-06-19 21:27:21,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:27:21,287.287 INFO    ] Initializing speech engine...
[2026-06-19 21:27:21,296.296 INFO    ] 2026-06-19 21:27:21
[2026-06-19 21:27:21,561.561 INFO    ] 2026-06-19 21:27:21
[2026-06-19 21:27:21,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:27:21,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:27:21,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:27:22,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:27:22,109.109 INFO    ] time= 19/06/2026 21:27:22
[2026-06-19 21:27:22,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:27:22,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:27:22,260.260 INFO    ] No existing commands found in stream
[2026-06-19 21:27:27,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:27:27,278.278 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-19 21:27:29,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:27:29,847.847 INFO    ] Checking for system updates...
[2026-06-19 21:27:29,882.882 INFO    ] 200
[2026-06-19 21:27:29,885.885 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:29,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:27:29,940.940 INFO    ] No update needed
[2026-06-19 21:27:29,942.942 INFO    ] Checking for camera pi updates...
[2026-06-19 21:27:29,976.976 INFO    ] 200
[2026-06-19 21:27:29,979.979 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:30,020.020 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:27:30,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:27:30,076.076 INFO    ] No camera update needed
[2026-06-19 21:27:30,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:27:30,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:27:30,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:27:30,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:27:32,135.135 INFO    ] ================================================
[2026-06-19 21:27:32,150.150 INFO    ] Launching Daemon at Fri Jun 19 21:27:32 IST 2026
[2026-06-19 21:27:32,161.161 INFO    ] ================================================
[2026-06-19 21:27:32,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:27:32
[2026-06-19 21:27:33,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:27:33,768.768 INFO    ] Initializing speech engine...
[2026-06-19 21:27:33,776.776 INFO    ] 2026-06-19 21:27:33
[2026-06-19 21:27:34,065.065 INFO    ] 2026-06-19 21:27:34
[2026-06-19 21:27:34,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:27:34,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:27:34,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:27:34,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:27:34,606.606 INFO    ] time= 19/06/2026 21:27:34
[2026-06-19 21:27:34,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:27:34,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:27:34,746.746 INFO    ] No existing commands found in stream
[2026-06-19 21:27:39,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:27:39,776.776 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-19 21:27:41,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:27:41,977.977 INFO    ] Checking for system updates...
[2026-06-19 21:27:42,013.013 INFO    ] 200
[2026-06-19 21:27:42,016.016 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:42,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:27:42,073.073 INFO    ] No update needed
[2026-06-19 21:27:42,076.076 INFO    ] Checking for camera pi updates...
[2026-06-19 21:27:42,113.113 INFO    ] 200
[2026-06-19 21:27:42,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:42,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:27:42,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:27:42,304.304 INFO    ] No camera update needed
[2026-06-19 21:27:42,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:27:42,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:27:42,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:27:42,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:27:44,361.361 INFO    ] ================================================
[2026-06-19 21:27:44,376.376 INFO    ] Launching Daemon at Fri Jun 19 21:27:44 IST 2026
[2026-06-19 21:27:44,388.388 INFO    ] ================================================
[2026-06-19 21:27:44,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:27:44
[2026-06-19 21:27:45,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:27:45,806.806 INFO    ] Initializing speech engine...
[2026-06-19 21:27:45,812.812 INFO    ] 2026-06-19 21:27:45
[2026-06-19 21:27:46,107.107 INFO    ] 2026-06-19 21:27:46
[2026-06-19 21:27:46,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:27:46,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:27:46,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:27:46,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:27:46,507.507 INFO    ] time= 19/06/2026 21:27:46
[2026-06-19 21:27:46,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:27:46,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:27:46,616.616 INFO    ] No existing commands found in stream
[2026-06-19 21:27:51,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:27:51,630.630 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-19 21:27:55,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:27:55,806.806 INFO    ] Checking for system updates...
[2026-06-19 21:27:55,842.842 INFO    ] 200
[2026-06-19 21:27:55,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:55,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:27:55,899.899 INFO    ] No update needed
[2026-06-19 21:27:55,901.901 INFO    ] Checking for camera pi updates...
[2026-06-19 21:27:55,935.935 INFO    ] 200
[2026-06-19 21:27:55,938.938 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:27:55,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:27:56,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:27:56,028.028 INFO    ] No camera update needed
[2026-06-19 21:27:56,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:27:56,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:27:56,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:27:56,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:27:58,084.084 INFO    ] ================================================
[2026-06-19 21:27:58,099.099 INFO    ] Launching Daemon at Fri Jun 19 21:27:58 IST 2026
[2026-06-19 21:27:58,110.110 INFO    ] ================================================
[2026-06-19 21:27:58,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:27:58
[2026-06-19 21:27:59,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:27:59,734.734 INFO    ] Initializing speech engine...
[2026-06-19 21:27:59,742.742 INFO    ] 2026-06-19 21:27:59
[2026-06-19 21:28:00,021.021 INFO    ] 2026-06-19 21:28:00
[2026-06-19 21:28:00,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:28:00,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:28:00,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:28:00,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:28:00,583.583 INFO    ] time= 19/06/2026 21:28:00
[2026-06-19 21:28:00,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:28:00,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:28:00,733.733 INFO    ] No existing commands found in stream
[2026-06-19 21:28:05,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:28:05,760.760 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 21:28:09,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:28:09,026.026 INFO    ] Checking for system updates...
[2026-06-19 21:28:09,063.063 INFO    ] 200
[2026-06-19 21:28:09,066.066 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:28:09,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:28:09,123.123 INFO    ] No update needed
[2026-06-19 21:28:09,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 21:28:09,161.161 INFO    ] 200
[2026-06-19 21:28:09,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:28:09,205.205 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:28:09,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:28:09,256.256 INFO    ] No camera update needed
[2026-06-19 21:28:09,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:28:09,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:28:09,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:28:09,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:28:11,314.314 INFO    ] ================================================
[2026-06-19 21:28:11,329.329 INFO    ] Launching Daemon at Fri Jun 19 21:28:11 IST 2026
[2026-06-19 21:28:11,340.340 INFO    ] ================================================
[2026-06-19 21:28:11,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:28:11
[2026-06-19 21:28:12,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:28:12,793.793 INFO    ] Initializing speech engine...
[2026-06-19 21:28:12,807.807 INFO    ] 2026-06-19 21:28:12
[2026-06-19 21:28:13,065.065 INFO    ] 2026-06-19 21:28:13
[2026-06-19 21:28:13,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:28:13,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:28:13,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:28:13,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:28:13,561.561 INFO    ] time= 19/06/2026 21:28:13
[2026-06-19 21:28:13,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:28:13,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:28:13,693.693 INFO    ] No existing commands found in stream
[2026-06-19 21:28:18,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:28:18,717.717 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 21:28:20,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:28:20,549.549 INFO    ] Checking for system updates...
[2026-06-19 21:28:20,584.584 INFO    ] 200
[2026-06-19 21:28:20,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:28:20,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:28:20,649.649 INFO    ] No update needed
[2026-06-19 21:28:20,652.652 INFO    ] Checking for camera pi updates...
[2026-06-19 21:28:20,686.686 INFO    ] 200
[2026-06-19 21:28:20,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:28:20,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:28:20,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:28:20,774.774 INFO    ] No camera update needed
[2026-06-19 21:28:20,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:28:20,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:28:20,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:28:20,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:28:22,831.831 INFO    ] ================================================
[2026-06-19 21:28:22,847.847 INFO    ] Launching Daemon at Fri Jun 19 21:28:22 IST 2026
[2026-06-19 21:28:22,857.857 INFO    ] ================================================
[2026-06-19 21:28:23,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:28:23
[2026-06-19 21:28:24,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:28:24,283.283 INFO    ] Initializing speech engine...
[2026-06-19 21:28:24,293.293 INFO    ] 2026-06-19 21:28:24
[2026-06-19 21:28:24,542.542 INFO    ] 2026-06-19 21:28:24
[2026-06-19 21:28:24,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:28:24,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:28:24,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:28:24,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:28:24,922.922 INFO    ] time= 19/06/2026 21:28:24
[2026-06-19 21:28:24,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:28:24,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:28:25,104.104 INFO    ] No existing commands found in stream
[2026-06-19 21:28:30,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:28:30,131.131 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 21:28:33,922.922 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:28:33,925.925 INFO    ] Checking for system updates...
[2026-06-19 21:28:33,961.961 INFO    ] 200
[2026-06-19 21:28:33,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:28:34,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:28:34,021.021 INFO    ] No update needed
[2026-06-19 21:28:34,026.026 INFO    ] Checking for camera pi updates...
[2026-06-19 21:28:34,060.060 INFO    ] 200
[2026-06-19 21:28:34,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:28:34,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:28:34,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:28:34,158.158 INFO    ] No camera update needed
[2026-06-19 21:28:34,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:28:34,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:28:34,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:28:34,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:28:36,216.216 INFO    ] ================================================
[2026-06-19 21:28:36,230.230 INFO    ] Launching Daemon at Fri Jun 19 21:28:36 IST 2026
[2026-06-19 21:28:36,241.241 INFO    ] ================================================
[2026-06-19 21:28:36,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:28:36
[2026-06-19 21:28:37,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:28:37,873.873 INFO    ] Initializing speech engine...
[2026-06-19 21:28:37,881.881 INFO    ] 2026-06-19 21:28:37
[2026-06-19 21:28:38,154.154 INFO    ] 2026-06-19 21:28:38
[2026-06-19 21:28:38,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:28:38,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:28:38,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:28:38,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:28:38,665.665 INFO    ] time= 19/06/2026 21:28:38
[2026-06-19 21:28:38,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:28:38,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:28:38,866.866 INFO    ] No existing commands found in stream
[2026-06-19 21:28:43,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:28:43,895.895 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 21:28:46,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:28:46,287.287 INFO    ] Checking for system updates...
[2026-06-19 21:28:46,329.329 INFO    ] 200
[2026-06-19 21:28:46,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:28:46,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:28:46,388.388 INFO    ] No update needed
[2026-06-19 21:28:46,391.391 INFO    ] Checking for camera pi updates...
[2026-06-19 21:28:46,426.426 INFO    ] 200
[2026-06-19 21:28:46,429.429 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:28:46,470.470 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:28:46,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:28:46,568.568 INFO    ] No camera update needed
[2026-06-19 21:28:46,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:28:46,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:28:46,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:28:46,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:28:48,624.624 INFO    ] ================================================
[2026-06-19 21:28:48,639.639 INFO    ] Launching Daemon at Fri Jun 19 21:28:48 IST 2026
[2026-06-19 21:28:48,650.650 INFO    ] ================================================
[2026-06-19 21:28:49,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:28:49
[2026-06-19 21:28:49,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:28:50,094.094 INFO    ] Initializing speech engine...
[2026-06-19 21:28:50,104.104 INFO    ] 2026-06-19 21:28:50
[2026-06-19 21:28:50,401.401 INFO    ] 2026-06-19 21:28:50
[2026-06-19 21:28:50,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:28:50,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:28:50,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:28:50,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:28:50,823.823 INFO    ] time= 19/06/2026 21:28:50
[2026-06-19 21:28:50,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:28:50,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:28:50,912.912 INFO    ] No existing commands found in stream
[2026-06-19 21:28:55,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:28:55,945.945 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 21:29:00,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:29:00,076.076 INFO    ] Checking for system updates...
[2026-06-19 21:29:00,114.114 INFO    ] 200
[2026-06-19 21:29:00,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:00,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:29:00,172.172 INFO    ] No update needed
[2026-06-19 21:29:00,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 21:29:00,212.212 INFO    ] 200
[2026-06-19 21:29:00,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:00,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:29:00,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:29:00,304.304 INFO    ] No camera update needed
[2026-06-19 21:29:00,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:29:00,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:29:00,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:29:00,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:29:02,381.381 INFO    ] ================================================
[2026-06-19 21:29:02,404.404 INFO    ] Launching Daemon at Fri Jun 19 21:29:02 IST 2026
[2026-06-19 21:29:02,416.416 INFO    ] ================================================
[2026-06-19 21:29:03,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:29:03
[2026-06-19 21:29:03,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:29:03,890.890 INFO    ] Initializing speech engine...
[2026-06-19 21:29:03,913.913 INFO    ] 2026-06-19 21:29:03
[2026-06-19 21:29:04,168.168 INFO    ] 2026-06-19 21:29:04
[2026-06-19 21:29:04,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:29:04,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:29:04,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:29:04,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:29:04,632.632 INFO    ] time= 19/06/2026 21:29:04
[2026-06-19 21:29:04,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:29:04,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:29:04,786.786 INFO    ] No existing commands found in stream
[2026-06-19 21:29:09,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:29:09,800.800 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-19 21:29:11,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:29:11,965.965 INFO    ] Checking for system updates...
[2026-06-19 21:29:12,001.001 INFO    ] 200
[2026-06-19 21:29:12,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:12,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:29:12,059.059 INFO    ] No update needed
[2026-06-19 21:29:12,061.061 INFO    ] Checking for camera pi updates...
[2026-06-19 21:29:12,099.099 INFO    ] 200
[2026-06-19 21:29:12,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:12,141.141 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:29:12,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:29:12,187.187 INFO    ] No camera update needed
[2026-06-19 21:29:12,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:29:12,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:29:12,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:29:12,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:29:14,242.242 INFO    ] ================================================
[2026-06-19 21:29:14,259.259 INFO    ] Launching Daemon at Fri Jun 19 21:29:14 IST 2026
[2026-06-19 21:29:14,270.270 INFO    ] ================================================
[2026-06-19 21:29:14,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:29:14
[2026-06-19 21:29:15,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:29:15,700.700 INFO    ] Initializing speech engine...
[2026-06-19 21:29:15,705.705 INFO    ] 2026-06-19 21:29:15
[2026-06-19 21:29:15,966.966 INFO    ] 2026-06-19 21:29:15
[2026-06-19 21:29:16,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:29:16,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:29:16,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:29:16,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:29:16,337.337 INFO    ] time= 19/06/2026 21:29:16
[2026-06-19 21:29:16,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:29:16,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:29:16,512.512 INFO    ] No existing commands found in stream
[2026-06-19 21:29:21,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:29:21,540.540 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-19 21:29:22,927.927 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:29:22,930.930 INFO    ] Checking for system updates...
[2026-06-19 21:29:22,965.965 INFO    ] 200
[2026-06-19 21:29:22,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:23,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:29:23,022.022 INFO    ] No update needed
[2026-06-19 21:29:23,025.025 INFO    ] Checking for camera pi updates...
[2026-06-19 21:29:23,058.058 INFO    ] 200
[2026-06-19 21:29:23,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:23,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:29:23,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:29:23,152.152 INFO    ] No camera update needed
[2026-06-19 21:29:23,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:29:23,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:29:23,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:29:23,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:29:25,219.219 INFO    ] ================================================
[2026-06-19 21:29:25,235.235 INFO    ] Launching Daemon at Fri Jun 19 21:29:25 IST 2026
[2026-06-19 21:29:25,246.246 INFO    ] ================================================
[2026-06-19 21:29:25,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:29:25
[2026-06-19 21:29:26,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:29:26,647.647 INFO    ] Initializing speech engine...
[2026-06-19 21:29:26,669.669 INFO    ] 2026-06-19 21:29:26
[2026-06-19 21:29:26,921.921 INFO    ] 2026-06-19 21:29:26
[2026-06-19 21:29:26,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:29:27,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:29:27,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:29:27,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:29:27,288.288 INFO    ] time= 19/06/2026 21:29:27
[2026-06-19 21:29:27,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:29:27,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:29:27,457.457 INFO    ] No existing commands found in stream
[2026-06-19 21:29:32,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:29:32,480.480 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 21:29:35,414.414 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:29:35,416.416 INFO    ] Checking for system updates...
[2026-06-19 21:29:35,452.452 INFO    ] 200
[2026-06-19 21:29:35,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:35,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:29:35,517.517 INFO    ] No update needed
[2026-06-19 21:29:35,519.519 INFO    ] Checking for camera pi updates...
[2026-06-19 21:29:35,553.553 INFO    ] 200
[2026-06-19 21:29:35,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:35,597.597 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:29:35,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:29:35,644.644 INFO    ] No camera update needed
[2026-06-19 21:29:35,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:29:35,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:29:35,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:29:35,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:29:37,700.700 INFO    ] ================================================
[2026-06-19 21:29:37,715.715 INFO    ] Launching Daemon at Fri Jun 19 21:29:37 IST 2026
[2026-06-19 21:29:37,726.726 INFO    ] ================================================
[2026-06-19 21:29:38,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:29:38
[2026-06-19 21:29:38,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:29:39,199.199 INFO    ] Initializing speech engine...
[2026-06-19 21:29:39,210.210 INFO    ] 2026-06-19 21:29:39
[2026-06-19 21:29:39,462.462 INFO    ] 2026-06-19 21:29:39
[2026-06-19 21:29:39,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:29:39,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:29:39,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:29:39,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:29:39,919.919 INFO    ] time= 19/06/2026 21:29:39
[2026-06-19 21:29:39,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:29:40,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:29:40,091.091 INFO    ] No existing commands found in stream
[2026-06-19 21:29:45,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:29:45,106.106 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 21:29:46,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:29:46,756.756 INFO    ] Checking for system updates...
[2026-06-19 21:29:46,792.792 INFO    ] 200
[2026-06-19 21:29:46,795.795 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:46,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:29:46,852.852 INFO    ] No update needed
[2026-06-19 21:29:46,854.854 INFO    ] Checking for camera pi updates...
[2026-06-19 21:29:46,888.888 INFO    ] 200
[2026-06-19 21:29:46,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:46,937.937 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:29:47,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:29:47,082.082 INFO    ] No camera update needed
[2026-06-19 21:29:47,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:29:47,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:29:47,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:29:47,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:29:49,137.137 INFO    ] ================================================
[2026-06-19 21:29:49,152.152 INFO    ] Launching Daemon at Fri Jun 19 21:29:49 IST 2026
[2026-06-19 21:29:49,163.163 INFO    ] ================================================
[2026-06-19 21:29:49,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:29:49
[2026-06-19 21:29:50,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:29:50,583.583 INFO    ] Initializing speech engine...
[2026-06-19 21:29:50,593.593 INFO    ] 2026-06-19 21:29:50
[2026-06-19 21:29:50,838.838 INFO    ] 2026-06-19 21:29:50
[2026-06-19 21:29:50,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:29:51,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:29:51,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:29:51,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:29:51,318.318 INFO    ] time= 19/06/2026 21:29:51
[2026-06-19 21:29:51,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:29:51,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:29:51,521.521 INFO    ] No existing commands found in stream
[2026-06-19 21:29:56,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:29:56,554.554 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-19 21:29:58,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:29:58,929.929 INFO    ] Checking for system updates...
[2026-06-19 21:29:58,964.964 INFO    ] 200
[2026-06-19 21:29:58,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:59,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:29:59,023.023 INFO    ] No update needed
[2026-06-19 21:29:59,025.025 INFO    ] Checking for camera pi updates...
[2026-06-19 21:29:59,059.059 INFO    ] 200
[2026-06-19 21:29:59,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:29:59,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:29:59,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:29:59,155.155 INFO    ] No camera update needed
[2026-06-19 21:29:59,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:29:59,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:29:59,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:29:59,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:30:01,210.210 INFO    ] ================================================
[2026-06-19 21:30:01,226.226 INFO    ] Launching Daemon at Fri Jun 19 21:30:01 IST 2026
[2026-06-19 21:30:01,237.237 INFO    ] ================================================
[2026-06-19 21:30:01,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:30:01
[2026-06-19 21:30:03,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:30:03,817.817 INFO    ] Initializing speech engine...
[2026-06-19 21:30:03,822.822 INFO    ] 2026-06-19 21:30:03
[2026-06-19 21:30:04,139.139 INFO    ] 2026-06-19 21:30:04
[2026-06-19 21:30:04,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:30:04,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:30:04,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:30:04,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:30:04,568.568 INFO    ] time= 19/06/2026 21:30:04
[2026-06-19 21:30:04,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:30:04,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:30:04,739.739 INFO    ] No existing commands found in stream
[2026-06-19 21:30:09,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:30:09,758.758 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 21:30:10,925.925 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:30:10,928.928 INFO    ] Checking for system updates...
[2026-06-19 21:30:10,968.968 INFO    ] 200
[2026-06-19 21:30:10,970.970 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:30:11,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:30:11,025.025 INFO    ] No update needed
[2026-06-19 21:30:11,028.028 INFO    ] Checking for camera pi updates...
[2026-06-19 21:30:11,063.063 INFO    ] 200
[2026-06-19 21:30:11,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:30:11,106.106 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:30:11,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:30:11,157.157 INFO    ] No camera update needed
[2026-06-19 21:30:11,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:30:11,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:30:11,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:30:11,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:30:13,214.214 INFO    ] ================================================
[2026-06-19 21:30:13,229.229 INFO    ] Launching Daemon at Fri Jun 19 21:30:13 IST 2026
[2026-06-19 21:30:13,241.241 INFO    ] ================================================
[2026-06-19 21:30:13,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:30:13
[2026-06-19 21:30:14,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:30:14,722.722 INFO    ] Initializing speech engine...
[2026-06-19 21:30:14,738.738 INFO    ] 2026-06-19 21:30:14
[2026-06-19 21:30:15,026.026 INFO    ] 2026-06-19 21:30:14
[2026-06-19 21:30:15,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:30:15,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:30:15,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:30:15,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:30:15,410.410 INFO    ] time= 19/06/2026 21:30:15
[2026-06-19 21:30:15,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:30:15,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:30:15,536.536 INFO    ] No existing commands found in stream
[2026-06-19 21:30:20,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:30:20,549.549 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 21:30:24,207.207 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:30:24,209.209 INFO    ] Checking for system updates...
[2026-06-19 21:30:24,249.249 INFO    ] 200
[2026-06-19 21:30:24,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:30:24,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:30:24,308.308 INFO    ] No update needed
[2026-06-19 21:30:24,310.310 INFO    ] Checking for camera pi updates...
[2026-06-19 21:30:24,344.344 INFO    ] 200
[2026-06-19 21:30:24,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:30:24,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:30:24,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:30:24,437.437 INFO    ] No camera update needed
[2026-06-19 21:30:24,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:30:24,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:30:24,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:30:24,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:30:26,492.492 INFO    ] ================================================
[2026-06-19 21:30:26,508.508 INFO    ] Launching Daemon at Fri Jun 19 21:30:26 IST 2026
[2026-06-19 21:30:26,519.519 INFO    ] ================================================
[2026-06-19 21:30:27,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:30:27
[2026-06-19 21:30:27,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:30:27,939.939 INFO    ] Initializing speech engine...
[2026-06-19 21:30:27,946.946 INFO    ] 2026-06-19 21:30:27
[2026-06-19 21:30:28,242.242 INFO    ] 2026-06-19 21:30:28
[2026-06-19 21:30:28,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:30:28,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:30:28,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:30:28,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:30:28,663.663 INFO    ] time= 19/06/2026 21:30:28
[2026-06-19 21:30:28,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:30:28,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:30:28,752.752 INFO    ] No existing commands found in stream
[2026-06-19 21:30:33,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:30:33,768.768 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 21:30:37,235.235 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:30:37,238.238 INFO    ] Checking for system updates...
[2026-06-19 21:30:37,273.273 INFO    ] 200
[2026-06-19 21:30:37,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:30:37,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:30:37,331.331 INFO    ] No update needed
[2026-06-19 21:30:37,333.333 INFO    ] Checking for camera pi updates...
[2026-06-19 21:30:37,371.371 INFO    ] 200
[2026-06-19 21:30:37,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:30:37,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:30:37,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:30:37,473.473 INFO    ] No camera update needed
[2026-06-19 21:30:37,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:30:37,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:30:37,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:30:37,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:30:39,530.530 INFO    ] ================================================
[2026-06-19 21:30:39,545.545 INFO    ] Launching Daemon at Fri Jun 19 21:30:39 IST 2026
[2026-06-19 21:30:39,556.556 INFO    ] ================================================
[2026-06-19 21:30:40,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:30:40
[2026-06-19 21:30:40,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:30:41,166.166 INFO    ] Initializing speech engine...
[2026-06-19 21:30:41,172.172 INFO    ] 2026-06-19 21:30:41
[2026-06-19 21:30:41,468.468 INFO    ] 2026-06-19 21:30:41
[2026-06-19 21:30:41,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:30:41,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:30:41,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:30:41,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:30:42,012.012 INFO    ] time= 19/06/2026 21:30:41
[2026-06-19 21:30:42,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:30:42,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:30:42,168.168 INFO    ] No existing commands found in stream
[2026-06-19 21:30:47,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:30:47,190.190 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-19 21:30:47,660.660 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:30:47,663.663 INFO    ] Checking for system updates...
[2026-06-19 21:30:47,703.703 INFO    ] 200
[2026-06-19 21:30:47,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:30:47,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:30:47,770.770 INFO    ] No update needed
[2026-06-19 21:30:47,773.773 INFO    ] Checking for camera pi updates...
[2026-06-19 21:30:47,811.811 INFO    ] 200
[2026-06-19 21:30:47,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:30:47,856.856 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:30:47,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:30:47,900.900 INFO    ] No camera update needed
[2026-06-19 21:30:47,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:30:47,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:30:47,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:30:47,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:30:49,959.959 INFO    ] ================================================
[2026-06-19 21:30:49,974.974 INFO    ] Launching Daemon at Fri Jun 19 21:30:49 IST 2026
[2026-06-19 21:30:49,985.985 INFO    ] ================================================
[2026-06-19 21:30:50,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:30:50
[2026-06-19 21:30:51,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:30:51,434.434 INFO    ] Initializing speech engine...
[2026-06-19 21:30:51,440.440 INFO    ] 2026-06-19 21:30:51
[2026-06-19 21:30:51,689.689 INFO    ] 2026-06-19 21:30:51
[2026-06-19 21:30:51,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:30:51,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:30:51,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:30:52,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:30:52,150.150 INFO    ] time= 19/06/2026 21:30:52
[2026-06-19 21:30:52,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:30:52,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:30:52,326.326 INFO    ] No existing commands found in stream
[2026-06-19 21:30:57,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:30:57,354.354 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 21:31:00,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:31:00,204.204 INFO    ] Checking for system updates...
[2026-06-19 21:31:00,241.241 INFO    ] 200
[2026-06-19 21:31:00,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:00,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:31:00,304.304 INFO    ] No update needed
[2026-06-19 21:31:00,306.306 INFO    ] Checking for camera pi updates...
[2026-06-19 21:31:00,340.340 INFO    ] 200
[2026-06-19 21:31:00,342.342 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:00,383.383 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:31:00,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:31:00,432.432 INFO    ] No camera update needed
[2026-06-19 21:31:00,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:31:00,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:31:00,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:31:00,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:31:02,494.494 INFO    ] ================================================
[2026-06-19 21:31:02,520.520 INFO    ] Launching Daemon at Fri Jun 19 21:31:02 IST 2026
[2026-06-19 21:31:02,534.534 INFO    ] ================================================
[2026-06-19 21:31:03,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:31:03
[2026-06-19 21:31:03,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:31:04,189.189 INFO    ] Initializing speech engine...
[2026-06-19 21:31:04,201.201 INFO    ] 2026-06-19 21:31:04
[2026-06-19 21:31:04,475.475 INFO    ] 2026-06-19 21:31:04
[2026-06-19 21:31:04,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:31:04,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:31:04,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:31:04,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:31:04,954.954 INFO    ] time= 19/06/2026 21:31:04
[2026-06-19 21:31:05,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:31:05,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:31:05,116.116 INFO    ] No existing commands found in stream
[2026-06-19 21:31:10,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:31:10,151.151 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 21:31:13,966.966 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:31:13,969.969 INFO    ] Checking for system updates...
[2026-06-19 21:31:14,005.005 INFO    ] 200
[2026-06-19 21:31:14,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:14,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:31:14,067.067 INFO    ] No update needed
[2026-06-19 21:31:14,069.069 INFO    ] Checking for camera pi updates...
[2026-06-19 21:31:14,106.106 INFO    ] 200
[2026-06-19 21:31:14,108.108 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:14,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:31:14,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:31:14,207.207 INFO    ] No camera update needed
[2026-06-19 21:31:14,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:31:14,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:31:14,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:31:14,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:31:16,262.262 INFO    ] ================================================
[2026-06-19 21:31:16,278.278 INFO    ] Launching Daemon at Fri Jun 19 21:31:16 IST 2026
[2026-06-19 21:31:16,288.288 INFO    ] ================================================
[2026-06-19 21:31:16,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:31:16
[2026-06-19 21:31:17,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:31:17,753.753 INFO    ] Initializing speech engine...
[2026-06-19 21:31:17,759.759 INFO    ] 2026-06-19 21:31:17
[2026-06-19 21:31:18,022.022 INFO    ] 2026-06-19 21:31:18
[2026-06-19 21:31:18,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:31:18,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:31:18,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:31:18,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:31:18,480.480 INFO    ] time= 19/06/2026 21:31:18
[2026-06-19 21:31:18,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:31:18,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:31:18,696.696 INFO    ] No existing commands found in stream
[2026-06-19 21:31:23,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:31:23,730.730 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 21:31:25,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:31:25,369.369 INFO    ] Checking for system updates...
[2026-06-19 21:31:25,407.407 INFO    ] 200
[2026-06-19 21:31:25,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:25,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:31:25,466.466 INFO    ] No update needed
[2026-06-19 21:31:25,468.468 INFO    ] Checking for camera pi updates...
[2026-06-19 21:31:25,504.504 INFO    ] 200
[2026-06-19 21:31:25,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:25,551.551 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:31:25,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:31:25,603.603 INFO    ] No camera update needed
[2026-06-19 21:31:25,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:31:25,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:31:25,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:31:25,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:31:27,659.659 INFO    ] ================================================
[2026-06-19 21:31:27,674.674 INFO    ] Launching Daemon at Fri Jun 19 21:31:27 IST 2026
[2026-06-19 21:31:27,685.685 INFO    ] ================================================
[2026-06-19 21:31:28,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:31:28
[2026-06-19 21:31:28,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:31:29,242.242 INFO    ] Initializing speech engine...
[2026-06-19 21:31:29,249.249 INFO    ] 2026-06-19 21:31:29
[2026-06-19 21:31:29,506.506 INFO    ] 2026-06-19 21:31:29
[2026-06-19 21:31:29,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:31:29,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:31:29,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:31:29,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:31:29,986.986 INFO    ] time= 19/06/2026 21:31:29
[2026-06-19 21:31:30,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:31:30,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:31:30,131.131 INFO    ] No existing commands found in stream
[2026-06-19 21:31:35,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:31:35,171.171 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 21:31:36,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:31:36,617.617 INFO    ] Checking for system updates...
[2026-06-19 21:31:36,653.653 INFO    ] 200
[2026-06-19 21:31:36,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:36,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:31:36,711.711 INFO    ] No update needed
[2026-06-19 21:31:36,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 21:31:36,747.747 INFO    ] 200
[2026-06-19 21:31:36,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:36,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:31:36,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:31:36,839.839 INFO    ] No camera update needed
[2026-06-19 21:31:36,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:31:36,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:31:36,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:31:36,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:31:38,893.893 INFO    ] ================================================
[2026-06-19 21:31:38,909.909 INFO    ] Launching Daemon at Fri Jun 19 21:31:38 IST 2026
[2026-06-19 21:31:38,920.920 INFO    ] ================================================
[2026-06-19 21:31:39,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:31:39
[2026-06-19 21:31:40,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:31:40,319.319 INFO    ] Initializing speech engine...
[2026-06-19 21:31:40,332.332 INFO    ] 2026-06-19 21:31:40
[2026-06-19 21:31:40,597.597 INFO    ] 2026-06-19 21:31:40
[2026-06-19 21:31:40,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:31:40,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:31:40,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:31:40,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:31:40,975.975 INFO    ] time= 19/06/2026 21:31:40
[2026-06-19 21:31:40,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:31:41,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:31:41,130.130 INFO    ] No existing commands found in stream
[2026-06-19 21:31:46,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:31:46,158.158 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 21:31:49,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:31:49,610.610 INFO    ] Checking for system updates...
[2026-06-19 21:31:49,649.649 INFO    ] 200
[2026-06-19 21:31:49,651.651 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:49,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:31:49,712.712 INFO    ] No update needed
[2026-06-19 21:31:49,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 21:31:49,751.751 INFO    ] 200
[2026-06-19 21:31:49,753.753 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:31:49,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:31:49,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:31:49,930.930 INFO    ] No camera update needed
[2026-06-19 21:31:49,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:31:49,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:31:49,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:31:49,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:31:51,986.986 INFO    ] ================================================
[2026-06-19 21:31:52,002.002 INFO    ] Launching Daemon at Fri Jun 19 21:31:51 IST 2026
[2026-06-19 21:31:52,013.013 INFO    ] ================================================
[2026-06-19 21:31:52,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:31:52
[2026-06-19 21:31:53,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:31:53,426.426 INFO    ] Initializing speech engine...
[2026-06-19 21:31:53,445.445 INFO    ] 2026-06-19 21:31:53
[2026-06-19 21:31:53,696.696 INFO    ] 2026-06-19 21:31:53
[2026-06-19 21:31:53,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:31:53,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:31:53,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:31:54,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:31:54,185.185 INFO    ] time= 19/06/2026 21:31:54
[2026-06-19 21:31:54,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:31:54,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:31:54,346.346 INFO    ] No existing commands found in stream
[2026-06-19 21:31:59,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:31:59,387.387 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 21:32:01,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:32:01,176.176 INFO    ] Checking for system updates...
[2026-06-19 21:32:01,213.213 INFO    ] 200
[2026-06-19 21:32:01,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:01,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:32:01,276.276 INFO    ] No update needed
[2026-06-19 21:32:01,279.279 INFO    ] Checking for camera pi updates...
[2026-06-19 21:32:01,313.313 INFO    ] 200
[2026-06-19 21:32:01,316.316 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:01,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:32:01,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:32:01,410.410 INFO    ] No camera update needed
[2026-06-19 21:32:01,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:32:01,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:32:01,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:32:01,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:32:03,471.471 INFO    ] ================================================
[2026-06-19 21:32:03,492.492 INFO    ] Launching Daemon at Fri Jun 19 21:32:03 IST 2026
[2026-06-19 21:32:03,503.503 INFO    ] ================================================
[2026-06-19 21:32:04,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:32:04
[2026-06-19 21:32:04,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:32:05,051.051 INFO    ] Initializing speech engine...
[2026-06-19 21:32:05,060.060 INFO    ] 2026-06-19 21:32:05
[2026-06-19 21:32:05,308.308 INFO    ] 2026-06-19 21:32:05
[2026-06-19 21:32:05,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:32:05,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:32:05,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:32:05,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:32:05,784.784 INFO    ] time= 19/06/2026 21:32:05
[2026-06-19 21:32:05,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:32:05,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:32:05,927.927 INFO    ] No existing commands found in stream
[2026-06-19 21:32:10,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:32:10,941.941 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-19 21:32:11,318.318 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:32:11,321.321 INFO    ] Checking for system updates...
[2026-06-19 21:32:11,359.359 INFO    ] 200
[2026-06-19 21:32:11,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:11,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:32:11,421.421 INFO    ] No update needed
[2026-06-19 21:32:11,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 21:32:11,457.457 INFO    ] 200
[2026-06-19 21:32:11,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:11,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:32:11,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:32:11,550.550 INFO    ] No camera update needed
[2026-06-19 21:32:11,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:32:11,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:32:11,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:32:11,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:32:13,611.611 INFO    ] ================================================
[2026-06-19 21:32:13,627.627 INFO    ] Launching Daemon at Fri Jun 19 21:32:13 IST 2026
[2026-06-19 21:32:13,637.637 INFO    ] ================================================
[2026-06-19 21:32:14,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:32:14
[2026-06-19 21:32:14,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:32:15,104.104 INFO    ] Initializing speech engine...
[2026-06-19 21:32:15,113.113 INFO    ] 2026-06-19 21:32:15
[2026-06-19 21:32:15,365.365 INFO    ] 2026-06-19 21:32:15
[2026-06-19 21:32:15,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:32:15,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:32:15,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:32:15,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:32:15,743.743 INFO    ] time= 19/06/2026 21:32:15
[2026-06-19 21:32:15,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:32:15,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:32:15,913.913 INFO    ] No existing commands found in stream
[2026-06-19 21:32:20,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:32:20,946.946 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-19 21:32:23,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:32:23,665.665 INFO    ] Checking for system updates...
[2026-06-19 21:32:23,704.704 INFO    ] 200
[2026-06-19 21:32:23,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:23,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:32:23,766.766 INFO    ] No update needed
[2026-06-19 21:32:23,769.769 INFO    ] Checking for camera pi updates...
[2026-06-19 21:32:23,804.804 INFO    ] 200
[2026-06-19 21:32:23,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:23,847.847 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:32:23,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:32:23,879.879 INFO    ] No camera update needed
[2026-06-19 21:32:23,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:32:23,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:32:23,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:32:23,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:32:25,934.934 INFO    ] ================================================
[2026-06-19 21:32:25,949.949 INFO    ] Launching Daemon at Fri Jun 19 21:32:25 IST 2026
[2026-06-19 21:32:25,960.960 INFO    ] ================================================
[2026-06-19 21:32:26,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:32:26
[2026-06-19 21:32:27,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:32:27,373.373 INFO    ] Initializing speech engine...
[2026-06-19 21:32:27,388.388 INFO    ] 2026-06-19 21:32:27
[2026-06-19 21:32:27,665.665 INFO    ] 2026-06-19 21:32:27
[2026-06-19 21:32:27,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:32:27,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:32:27,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:32:28,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:32:28,032.032 INFO    ] time= 19/06/2026 21:32:28
[2026-06-19 21:32:28,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:32:28,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:32:28,153.153 INFO    ] No existing commands found in stream
[2026-06-19 21:32:33,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:32:33,171.171 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 21:32:34,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:32:34,787.787 INFO    ] Checking for system updates...
[2026-06-19 21:32:34,826.826 INFO    ] 200
[2026-06-19 21:32:34,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:34,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:32:34,888.888 INFO    ] No update needed
[2026-06-19 21:32:34,891.891 INFO    ] Checking for camera pi updates...
[2026-06-19 21:32:34,926.926 INFO    ] 200
[2026-06-19 21:32:34,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:34,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:32:35,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:32:35,022.022 INFO    ] No camera update needed
[2026-06-19 21:32:35,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:32:35,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:32:35,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:32:35,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:32:37,078.078 INFO    ] ================================================
[2026-06-19 21:32:37,093.093 INFO    ] Launching Daemon at Fri Jun 19 21:32:37 IST 2026
[2026-06-19 21:32:37,104.104 INFO    ] ================================================
[2026-06-19 21:32:37,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:32:37
[2026-06-19 21:32:38,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:32:38,564.564 INFO    ] Initializing speech engine...
[2026-06-19 21:32:38,583.583 INFO    ] 2026-06-19 21:32:38
[2026-06-19 21:32:38,842.842 INFO    ] 2026-06-19 21:32:38
[2026-06-19 21:32:38,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:32:39,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:32:39,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:32:39,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:32:39,216.216 INFO    ] time= 19/06/2026 21:32:39
[2026-06-19 21:32:39,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:32:39,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:32:39,368.368 INFO    ] No existing commands found in stream
[2026-06-19 21:32:44,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:32:44,402.402 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 21:32:45,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:32:45,967.967 INFO    ] Checking for system updates...
[2026-06-19 21:32:46,006.006 INFO    ] 200
[2026-06-19 21:32:46,009.009 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:46,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:32:46,065.065 INFO    ] No update needed
[2026-06-19 21:32:46,067.067 INFO    ] Checking for camera pi updates...
[2026-06-19 21:32:46,106.106 INFO    ] 200
[2026-06-19 21:32:46,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:46,153.153 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:32:46,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:32:46,198.198 INFO    ] No camera update needed
[2026-06-19 21:32:46,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:32:46,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:32:46,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:32:46,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:32:48,252.252 INFO    ] ================================================
[2026-06-19 21:32:48,267.267 INFO    ] Launching Daemon at Fri Jun 19 21:32:48 IST 2026
[2026-06-19 21:32:48,278.278 INFO    ] ================================================
[2026-06-19 21:32:48,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:32:48
[2026-06-19 21:32:49,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:32:49,751.751 INFO    ] Initializing speech engine...
[2026-06-19 21:32:49,760.760 INFO    ] 2026-06-19 21:32:49
[2026-06-19 21:32:50,025.025 INFO    ] 2026-06-19 21:32:50
[2026-06-19 21:32:50,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:32:50,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:32:50,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:32:50,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:32:50,490.490 INFO    ] time= 19/06/2026 21:32:50
[2026-06-19 21:32:50,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:32:50,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:32:50,635.635 INFO    ] No existing commands found in stream
[2026-06-19 21:32:55,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:32:55,650.650 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 21:32:57,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:32:57,639.639 INFO    ] Checking for system updates...
[2026-06-19 21:32:57,678.678 INFO    ] 200
[2026-06-19 21:32:57,681.681 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:57,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:32:57,742.742 INFO    ] No update needed
[2026-06-19 21:32:57,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 21:32:57,780.780 INFO    ] 200
[2026-06-19 21:32:57,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:32:57,827.827 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:32:57,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:32:57,878.878 INFO    ] No camera update needed
[2026-06-19 21:32:57,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:32:57,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:32:57,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:32:57,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:32:59,937.937 INFO    ] ================================================
[2026-06-19 21:32:59,953.953 INFO    ] Launching Daemon at Fri Jun 19 21:32:59 IST 2026
[2026-06-19 21:32:59,964.964 INFO    ] ================================================
[2026-06-19 21:33:00,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:33:00
[2026-06-19 21:33:01,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:33:01,556.556 INFO    ] Initializing speech engine...
[2026-06-19 21:33:01,580.580 INFO    ] 2026-06-19 21:33:01
[2026-06-19 21:33:02,034.034 INFO    ] 2026-06-19 21:33:02
[2026-06-19 21:33:02,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:33:02,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:33:02,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:33:02,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:33:02,414.414 INFO    ] time= 19/06/2026 21:33:02
[2026-06-19 21:33:02,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:33:02,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:33:02,553.553 INFO    ] No existing commands found in stream
[2026-06-19 21:33:07,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:33:07,569.569 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 21:33:10,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:33:10,519.519 INFO    ] Checking for system updates...
[2026-06-19 21:33:10,555.555 INFO    ] 200
[2026-06-19 21:33:10,558.558 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:10,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:33:10,612.612 INFO    ] No update needed
[2026-06-19 21:33:10,615.615 INFO    ] Checking for camera pi updates...
[2026-06-19 21:33:10,653.653 INFO    ] 200
[2026-06-19 21:33:10,656.656 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:10,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:33:10,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:33:10,752.752 INFO    ] No camera update needed
[2026-06-19 21:33:10,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:33:10,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:33:10,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:33:10,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:33:12,808.808 INFO    ] ================================================
[2026-06-19 21:33:12,823.823 INFO    ] Launching Daemon at Fri Jun 19 21:33:12 IST 2026
[2026-06-19 21:33:12,835.835 INFO    ] ================================================
[2026-06-19 21:33:13,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:33:13
[2026-06-19 21:33:14,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:33:14,293.293 INFO    ] Initializing speech engine...
[2026-06-19 21:33:14,302.302 INFO    ] 2026-06-19 21:33:14
[2026-06-19 21:33:14,555.555 INFO    ] 2026-06-19 21:33:14
[2026-06-19 21:33:14,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:33:14,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:33:14,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:33:14,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:33:15,045.045 INFO    ] time= 19/06/2026 21:33:14
[2026-06-19 21:33:15,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:33:15,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:33:15,229.229 INFO    ] No existing commands found in stream
[2026-06-19 21:33:20,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:33:20,268.268 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 21:33:23,457.457 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:33:23,460.460 INFO    ] Checking for system updates...
[2026-06-19 21:33:23,497.497 INFO    ] 200
[2026-06-19 21:33:23,500.500 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:23,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:33:23,562.562 INFO    ] No update needed
[2026-06-19 21:33:23,565.565 INFO    ] Checking for camera pi updates...
[2026-06-19 21:33:23,603.603 INFO    ] 200
[2026-06-19 21:33:23,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:23,654.654 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:33:23,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:33:23,700.700 INFO    ] No camera update needed
[2026-06-19 21:33:23,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:33:23,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:33:23,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:33:23,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:33:25,758.758 INFO    ] ================================================
[2026-06-19 21:33:25,774.774 INFO    ] Launching Daemon at Fri Jun 19 21:33:25 IST 2026
[2026-06-19 21:33:25,786.786 INFO    ] ================================================
[2026-06-19 21:33:26,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:33:26
[2026-06-19 21:33:26,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:33:27,182.182 INFO    ] Initializing speech engine...
[2026-06-19 21:33:27,190.190 INFO    ] 2026-06-19 21:33:27
[2026-06-19 21:33:27,461.461 INFO    ] 2026-06-19 21:33:27
[2026-06-19 21:33:27,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:33:27,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:33:27,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:33:27,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:33:27,941.941 INFO    ] time= 19/06/2026 21:33:27
[2026-06-19 21:33:27,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:33:28,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:33:28,087.087 INFO    ] No existing commands found in stream
[2026-06-19 21:33:33,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:33:33,110.110 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-19 21:33:34,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:33:34,319.319 INFO    ] Checking for system updates...
[2026-06-19 21:33:34,358.358 INFO    ] 200
[2026-06-19 21:33:34,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:34,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:33:34,422.422 INFO    ] No update needed
[2026-06-19 21:33:34,424.424 INFO    ] Checking for camera pi updates...
[2026-06-19 21:33:34,461.461 INFO    ] 200
[2026-06-19 21:33:34,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:34,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:33:34,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:33:34,553.553 INFO    ] No camera update needed
[2026-06-19 21:33:34,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:33:34,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:33:34,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:33:34,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:33:36,610.610 INFO    ] ================================================
[2026-06-19 21:33:36,625.625 INFO    ] Launching Daemon at Fri Jun 19 21:33:36 IST 2026
[2026-06-19 21:33:36,637.637 INFO    ] ================================================
[2026-06-19 21:33:37,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:33:37
[2026-06-19 21:33:37,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:33:38,252.252 INFO    ] Initializing speech engine...
[2026-06-19 21:33:38,265.265 INFO    ] 2026-06-19 21:33:38
[2026-06-19 21:33:38,547.547 INFO    ] 2026-06-19 21:33:38
[2026-06-19 21:33:38,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:33:38,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:33:38,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:33:38,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:33:38,952.952 INFO    ] time= 19/06/2026 21:33:38
[2026-06-19 21:33:38,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:33:39,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:33:39,137.137 INFO    ] No existing commands found in stream
[2026-06-19 21:33:44,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:33:44,171.171 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 21:33:46,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:33:46,793.793 INFO    ] Checking for system updates...
[2026-06-19 21:33:46,831.831 INFO    ] 200
[2026-06-19 21:33:46,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:46,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:33:46,891.891 INFO    ] No update needed
[2026-06-19 21:33:46,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 21:33:46,929.929 INFO    ] 200
[2026-06-19 21:33:46,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:46,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:33:47,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:33:47,123.123 INFO    ] No camera update needed
[2026-06-19 21:33:47,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:33:47,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:33:47,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:33:47,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:33:49,181.181 INFO    ] ================================================
[2026-06-19 21:33:49,196.196 INFO    ] Launching Daemon at Fri Jun 19 21:33:49 IST 2026
[2026-06-19 21:33:49,207.207 INFO    ] ================================================
[2026-06-19 21:33:49,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:33:49
[2026-06-19 21:33:50,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:33:50,633.633 INFO    ] Initializing speech engine...
[2026-06-19 21:33:50,642.642 INFO    ] 2026-06-19 21:33:50
[2026-06-19 21:33:50,932.932 INFO    ] 2026-06-19 21:33:50
[2026-06-19 21:33:50,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:33:51,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:33:51,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:33:51,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:33:51,472.472 INFO    ] time= 19/06/2026 21:33:51
[2026-06-19 21:33:51,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:33:51,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:33:51,619.619 INFO    ] No existing commands found in stream
[2026-06-19 21:33:56,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:33:56,643.643 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 21:33:58,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:33:58,691.691 INFO    ] Checking for system updates...
[2026-06-19 21:33:58,733.733 INFO    ] 200
[2026-06-19 21:33:58,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:58,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:33:58,792.792 INFO    ] No update needed
[2026-06-19 21:33:58,794.794 INFO    ] Checking for camera pi updates...
[2026-06-19 21:33:58,828.828 INFO    ] 200
[2026-06-19 21:33:58,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:33:58,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:33:59,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:33:59,016.016 INFO    ] No camera update needed
[2026-06-19 21:33:59,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:33:59,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:33:59,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:33:59,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:34:01,070.070 INFO    ] ================================================
[2026-06-19 21:34:01,086.086 INFO    ] Launching Daemon at Fri Jun 19 21:34:01 IST 2026
[2026-06-19 21:34:01,097.097 INFO    ] ================================================
[2026-06-19 21:34:01,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:34:01
[2026-06-19 21:34:02,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:34:02,869.869 INFO    ] Initializing speech engine...
[2026-06-19 21:34:02,881.881 INFO    ] 2026-06-19 21:34:02
[2026-06-19 21:34:03,189.189 INFO    ] 2026-06-19 21:34:03
[2026-06-19 21:34:03,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:34:03,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:34:03,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:34:03,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:34:03,568.568 INFO    ] time= 19/06/2026 21:34:03
[2026-06-19 21:34:03,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:34:03,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:34:03,652.652 INFO    ] No existing commands found in stream
[2026-06-19 21:34:08,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:34:08,695.695 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 21:34:12,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:34:12,184.184 INFO    ] Checking for system updates...
[2026-06-19 21:34:12,220.220 INFO    ] 200
[2026-06-19 21:34:12,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:34:12,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:34:12,285.285 INFO    ] No update needed
[2026-06-19 21:34:12,288.288 INFO    ] Checking for camera pi updates...
[2026-06-19 21:34:12,325.325 INFO    ] 200
[2026-06-19 21:34:12,328.328 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:34:12,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:34:12,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:34:12,419.419 INFO    ] No camera update needed
[2026-06-19 21:34:12,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:34:12,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:34:12,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:34:12,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:34:14,475.475 INFO    ] ================================================
[2026-06-19 21:34:14,491.491 INFO    ] Launching Daemon at Fri Jun 19 21:34:14 IST 2026
[2026-06-19 21:34:14,503.503 INFO    ] ================================================
[2026-06-19 21:34:15,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:34:15
[2026-06-19 21:34:15,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:34:15,945.945 INFO    ] Initializing speech engine...
[2026-06-19 21:34:15,968.968 INFO    ] 2026-06-19 21:34:15
[2026-06-19 21:34:16,223.223 INFO    ] 2026-06-19 21:34:16
[2026-06-19 21:34:16,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:34:16,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:34:16,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:34:16,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:34:16,702.702 INFO    ] time= 19/06/2026 21:34:16
[2026-06-19 21:34:16,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:34:16,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:34:16,844.844 INFO    ] No existing commands found in stream
[2026-06-19 21:34:21,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:34:21,859.859 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-19 21:34:25,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:34:25,402.402 INFO    ] Checking for system updates...
[2026-06-19 21:34:25,442.442 INFO    ] 200
[2026-06-19 21:34:25,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:34:25,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:34:25,504.504 INFO    ] No update needed
[2026-06-19 21:34:25,507.507 INFO    ] Checking for camera pi updates...
[2026-06-19 21:34:25,544.544 INFO    ] 200
[2026-06-19 21:34:25,547.547 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:34:25,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:34:25,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:34:25,637.637 INFO    ] No camera update needed
[2026-06-19 21:34:25,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:34:25,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:34:25,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:34:25,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:34:27,694.694 INFO    ] ================================================
[2026-06-19 21:34:27,709.709 INFO    ] Launching Daemon at Fri Jun 19 21:34:27 IST 2026
[2026-06-19 21:34:27,720.720 INFO    ] ================================================
[2026-06-19 21:34:28,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:34:28
[2026-06-19 21:34:28,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:34:29,141.141 INFO    ] Initializing speech engine...
[2026-06-19 21:34:29,157.157 INFO    ] 2026-06-19 21:34:29
[2026-06-19 21:34:29,438.438 INFO    ] 2026-06-19 21:34:29
[2026-06-19 21:34:29,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:34:29,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:34:29,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:34:29,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:34:29,851.851 INFO    ] time= 19/06/2026 21:34:29
[2026-06-19 21:34:29,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:34:29,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:34:30,014.014 INFO    ] No existing commands found in stream
[2026-06-19 21:34:35,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:34:35,040.040 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 21:34:36,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:34:36,848.848 INFO    ] Checking for system updates...
[2026-06-19 21:34:36,888.888 INFO    ] 200
[2026-06-19 21:34:36,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:34:36,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:34:36,951.951 INFO    ] No update needed
[2026-06-19 21:34:36,953.953 INFO    ] Checking for camera pi updates...
[2026-06-19 21:34:36,988.988 INFO    ] 200
[2026-06-19 21:34:36,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:34:37,035.035 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:34:37,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:34:37,087.087 INFO    ] No camera update needed
[2026-06-19 21:34:37,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:34:37,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:34:37,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:34:37,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:34:39,142.142 INFO    ] ================================================
[2026-06-19 21:34:39,158.158 INFO    ] Launching Daemon at Fri Jun 19 21:34:39 IST 2026
[2026-06-19 21:34:39,169.169 INFO    ] ================================================
[2026-06-19 21:34:39,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:34:39
[2026-06-19 21:34:40,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:34:40,638.638 INFO    ] Initializing speech engine...
[2026-06-19 21:34:40,644.644 INFO    ] 2026-06-19 21:34:40
[2026-06-19 21:34:40,905.905 INFO    ] 2026-06-19 21:34:40
[2026-06-19 21:34:40,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:34:41,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:34:41,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:34:41,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:34:41,370.370 INFO    ] time= 19/06/2026 21:34:41
[2026-06-19 21:34:41,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:34:41,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:34:41,512.512 INFO    ] No existing commands found in stream
[2026-06-19 21:34:46,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:34:46,527.527 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 21:34:50,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:34:50,559.559 INFO    ] Checking for system updates...
[2026-06-19 21:34:50,595.595 INFO    ] 200
[2026-06-19 21:34:50,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:34:50,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:34:50,653.653 INFO    ] No update needed
[2026-06-19 21:34:50,656.656 INFO    ] Checking for camera pi updates...
[2026-06-19 21:34:50,690.690 INFO    ] 200
[2026-06-19 21:34:50,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:34:50,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:34:50,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:34:50,780.780 INFO    ] No camera update needed
[2026-06-19 21:34:50,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:34:50,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:34:50,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:34:50,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:34:52,840.840 INFO    ] ================================================
[2026-06-19 21:34:52,860.860 INFO    ] Launching Daemon at Fri Jun 19 21:34:52 IST 2026
[2026-06-19 21:34:52,877.877 INFO    ] ================================================
[2026-06-19 21:34:53,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:34:53
[2026-06-19 21:34:54,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:34:54,334.334 INFO    ] Initializing speech engine...
[2026-06-19 21:34:54,342.342 INFO    ] 2026-06-19 21:34:54
[2026-06-19 21:34:54,607.607 INFO    ] 2026-06-19 21:34:54
[2026-06-19 21:34:54,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:34:54,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:34:54,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:34:54,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:34:54,953.953 INFO    ] time= 19/06/2026 21:34:54
[2026-06-19 21:34:54,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:34:54,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:34:55,078.078 INFO    ] No existing commands found in stream
[2026-06-19 21:35:00,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:35:00,093.093 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 21:35:03,592.592 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:35:03,595.595 INFO    ] Checking for system updates...
[2026-06-19 21:35:03,635.635 INFO    ] 200
[2026-06-19 21:35:03,638.638 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:03,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:35:03,700.700 INFO    ] No update needed
[2026-06-19 21:35:03,703.703 INFO    ] Checking for camera pi updates...
[2026-06-19 21:35:03,741.741 INFO    ] 200
[2026-06-19 21:35:03,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:03,789.789 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:35:03,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:35:03,837.837 INFO    ] No camera update needed
[2026-06-19 21:35:03,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:35:03,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:35:03,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:35:03,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:35:05,895.895 INFO    ] ================================================
[2026-06-19 21:35:05,910.910 INFO    ] Launching Daemon at Fri Jun 19 21:35:05 IST 2026
[2026-06-19 21:35:05,922.922 INFO    ] ================================================
[2026-06-19 21:35:06,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:35:06
[2026-06-19 21:35:07,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:35:07,404.404 INFO    ] Initializing speech engine...
[2026-06-19 21:35:07,430.430 INFO    ] 2026-06-19 21:35:07
[2026-06-19 21:35:07,707.707 INFO    ] 2026-06-19 21:35:07
[2026-06-19 21:35:07,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:35:07,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:35:07,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:35:08,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:35:08,092.092 INFO    ] time= 19/06/2026 21:35:08
[2026-06-19 21:35:08,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:35:08,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:35:08,220.220 INFO    ] No existing commands found in stream
[2026-06-19 21:35:13,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:35:13,234.234 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 21:35:17,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:35:17,120.120 INFO    ] Checking for system updates...
[2026-06-19 21:35:17,156.156 INFO    ] 200
[2026-06-19 21:35:17,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:17,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:35:17,215.215 INFO    ] No update needed
[2026-06-19 21:35:17,217.217 INFO    ] Checking for camera pi updates...
[2026-06-19 21:35:17,256.256 INFO    ] 200
[2026-06-19 21:35:17,259.259 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:17,305.305 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:35:17,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:35:17,352.352 INFO    ] No camera update needed
[2026-06-19 21:35:17,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:35:17,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:35:17,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:35:17,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:35:19,408.408 INFO    ] ================================================
[2026-06-19 21:35:19,424.424 INFO    ] Launching Daemon at Fri Jun 19 21:35:19 IST 2026
[2026-06-19 21:35:19,435.435 INFO    ] ================================================
[2026-06-19 21:35:20,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:35:20
[2026-06-19 21:35:20,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:35:21,081.081 INFO    ] Initializing speech engine...
[2026-06-19 21:35:21,093.093 INFO    ] 2026-06-19 21:35:21
[2026-06-19 21:35:21,401.401 INFO    ] 2026-06-19 21:35:21
[2026-06-19 21:35:21,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:35:21,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:35:21,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:35:21,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:35:21,912.912 INFO    ] time= 19/06/2026 21:35:21
[2026-06-19 21:35:21,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:35:21,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:35:22,068.068 INFO    ] No existing commands found in stream
[2026-06-19 21:35:27,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:35:27,084.084 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 21:35:30,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:35:30,957.957 INFO    ] Checking for system updates...
[2026-06-19 21:35:30,996.996 INFO    ] 200
[2026-06-19 21:35:30,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:31,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:35:31,054.054 INFO    ] No update needed
[2026-06-19 21:35:31,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 21:35:31,090.090 INFO    ] 200
[2026-06-19 21:35:31,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:31,133.133 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:35:31,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:35:31,183.183 INFO    ] No camera update needed
[2026-06-19 21:35:31,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:35:31,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:35:31,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:35:31,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:35:33,239.239 INFO    ] ================================================
[2026-06-19 21:35:33,255.255 INFO    ] Launching Daemon at Fri Jun 19 21:35:33 IST 2026
[2026-06-19 21:35:33,266.266 INFO    ] ================================================
[2026-06-19 21:35:33,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:35:33
[2026-06-19 21:35:34,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:35:34,725.725 INFO    ] Initializing speech engine...
[2026-06-19 21:35:34,739.739 INFO    ] 2026-06-19 21:35:34
[2026-06-19 21:35:35,016.016 INFO    ] 2026-06-19 21:35:34
[2026-06-19 21:35:35,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:35:35,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:35:35,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:35:35,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:35:35,435.435 INFO    ] time= 19/06/2026 21:35:35
[2026-06-19 21:35:35,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:35:35,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:35:35,574.574 INFO    ] No existing commands found in stream
[2026-06-19 21:35:40,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:35:40,588.588 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 21:35:43,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:35:43,286.286 INFO    ] Checking for system updates...
[2026-06-19 21:35:43,329.329 INFO    ] 200
[2026-06-19 21:35:43,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:43,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:35:43,401.401 INFO    ] No update needed
[2026-06-19 21:35:43,403.403 INFO    ] Checking for camera pi updates...
[2026-06-19 21:35:43,438.438 INFO    ] 200
[2026-06-19 21:35:43,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:43,482.482 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:35:43,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:35:43,528.528 INFO    ] No camera update needed
[2026-06-19 21:35:43,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:35:43,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:35:43,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:35:43,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:35:45,584.584 INFO    ] ================================================
[2026-06-19 21:35:45,600.600 INFO    ] Launching Daemon at Fri Jun 19 21:35:45 IST 2026
[2026-06-19 21:35:45,611.611 INFO    ] ================================================
[2026-06-19 21:35:46,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:35:46
[2026-06-19 21:35:46,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:35:47,271.271 INFO    ] Initializing speech engine...
[2026-06-19 21:35:47,280.280 INFO    ] 2026-06-19 21:35:47
[2026-06-19 21:35:47,571.571 INFO    ] 2026-06-19 21:35:47
[2026-06-19 21:35:47,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:35:47,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:35:47,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:35:48,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:35:48,122.122 INFO    ] time= 19/06/2026 21:35:48
[2026-06-19 21:35:48,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:35:48,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:35:48,264.264 INFO    ] No existing commands found in stream
[2026-06-19 21:35:53,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:35:53,293.293 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 21:35:54,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:35:54,707.707 INFO    ] Checking for system updates...
[2026-06-19 21:35:54,748.748 INFO    ] 200
[2026-06-19 21:35:54,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:54,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:35:54,813.813 INFO    ] No update needed
[2026-06-19 21:35:54,815.815 INFO    ] Checking for camera pi updates...
[2026-06-19 21:35:54,854.854 INFO    ] 200
[2026-06-19 21:35:54,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:35:54,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:35:54,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:35:54,961.961 INFO    ] No camera update needed
[2026-06-19 21:35:54,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:35:54,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:35:54,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:35:54,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:35:57,021.021 INFO    ] ================================================
[2026-06-19 21:35:57,037.037 INFO    ] Launching Daemon at Fri Jun 19 21:35:57 IST 2026
[2026-06-19 21:35:57,048.048 INFO    ] ================================================
[2026-06-19 21:35:57,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:35:57
[2026-06-19 21:35:58,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:35:58,474.474 INFO    ] Initializing speech engine...
[2026-06-19 21:35:58,483.483 INFO    ] 2026-06-19 21:35:58
[2026-06-19 21:35:58,735.735 INFO    ] 2026-06-19 21:35:58
[2026-06-19 21:35:58,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:35:59,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:35:59,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:35:59,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:35:59,302.302 INFO    ] time= 19/06/2026 21:35:59
[2026-06-19 21:35:59,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:35:59,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:35:59,441.441 INFO    ] No existing commands found in stream
[2026-06-19 21:36:04,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:36:04,469.469 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 21:36:07,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:36:07,788.788 INFO    ] Checking for system updates...
[2026-06-19 21:36:07,828.828 INFO    ] 200
[2026-06-19 21:36:07,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:07,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:36:07,891.891 INFO    ] No update needed
[2026-06-19 21:36:07,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 21:36:07,930.930 INFO    ] 200
[2026-06-19 21:36:07,933.933 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:07,978.978 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:36:08,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:36:08,023.023 INFO    ] No camera update needed
[2026-06-19 21:36:08,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:36:08,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:36:08,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:36:08,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:36:10,080.080 INFO    ] ================================================
[2026-06-19 21:36:10,096.096 INFO    ] Launching Daemon at Fri Jun 19 21:36:10 IST 2026
[2026-06-19 21:36:10,106.106 INFO    ] ================================================
[2026-06-19 21:36:10,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:36:10
[2026-06-19 21:36:11,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:36:11,507.507 INFO    ] Initializing speech engine...
[2026-06-19 21:36:11,520.520 INFO    ] 2026-06-19 21:36:11
[2026-06-19 21:36:11,787.787 INFO    ] 2026-06-19 21:36:11
[2026-06-19 21:36:11,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:36:12,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:36:12,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:36:12,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:36:12,257.257 INFO    ] time= 19/06/2026 21:36:12
[2026-06-19 21:36:12,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:36:12,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:36:12,410.410 INFO    ] No existing commands found in stream
[2026-06-19 21:36:17,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:36:17,425.425 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-19 21:36:19,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:36:19,923.923 INFO    ] Checking for system updates...
[2026-06-19 21:36:19,960.960 INFO    ] 200
[2026-06-19 21:36:19,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:20,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:36:20,033.033 INFO    ] No update needed
[2026-06-19 21:36:20,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 21:36:20,070.070 INFO    ] 200
[2026-06-19 21:36:20,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:20,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:36:20,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:36:20,166.166 INFO    ] No camera update needed
[2026-06-19 21:36:20,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:36:20,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:36:20,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:36:20,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:36:22,222.222 INFO    ] ================================================
[2026-06-19 21:36:22,237.237 INFO    ] Launching Daemon at Fri Jun 19 21:36:22 IST 2026
[2026-06-19 21:36:22,248.248 INFO    ] ================================================
[2026-06-19 21:36:22,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:36:22
[2026-06-19 21:36:23,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:36:23,696.696 INFO    ] Initializing speech engine...
[2026-06-19 21:36:23,709.709 INFO    ] 2026-06-19 21:36:23
[2026-06-19 21:36:23,995.995 INFO    ] 2026-06-19 21:36:23
[2026-06-19 21:36:24,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:36:24,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:36:24,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:36:24,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:36:24,412.412 INFO    ] time= 19/06/2026 21:36:24
[2026-06-19 21:36:24,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:36:24,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:36:24,543.543 INFO    ] No existing commands found in stream
[2026-06-19 21:36:29,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:36:29,570.570 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 21:36:31,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:36:31,169.169 INFO    ] Checking for system updates...
[2026-06-19 21:36:31,210.210 INFO    ] 200
[2026-06-19 21:36:31,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:31,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:36:31,273.273 INFO    ] No update needed
[2026-06-19 21:36:31,275.275 INFO    ] Checking for camera pi updates...
[2026-06-19 21:36:31,313.313 INFO    ] 200
[2026-06-19 21:36:31,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:31,359.359 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:36:31,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:36:31,421.421 INFO    ] No camera update needed
[2026-06-19 21:36:31,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:36:31,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:36:31,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:36:31,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:36:33,478.478 INFO    ] ================================================
[2026-06-19 21:36:33,493.493 INFO    ] Launching Daemon at Fri Jun 19 21:36:33 IST 2026
[2026-06-19 21:36:33,505.505 INFO    ] ================================================
[2026-06-19 21:36:34,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:36:34
[2026-06-19 21:36:34,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:36:34,955.955 INFO    ] Initializing speech engine...
[2026-06-19 21:36:34,968.968 INFO    ] 2026-06-19 21:36:34
[2026-06-19 21:36:35,253.253 INFO    ] 2026-06-19 21:36:35
[2026-06-19 21:36:35,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:36:35,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:36:35,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:36:35,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:36:35,606.606 INFO    ] time= 19/06/2026 21:36:35
[2026-06-19 21:36:35,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:36:35,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:36:35,689.689 INFO    ] No existing commands found in stream
[2026-06-19 21:36:40,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:36:40,710.710 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 21:36:41,552.552 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:36:41,554.554 INFO    ] Checking for system updates...
[2026-06-19 21:36:41,594.594 INFO    ] 200
[2026-06-19 21:36:41,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:41,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:36:41,658.658 INFO    ] No update needed
[2026-06-19 21:36:41,660.660 INFO    ] Checking for camera pi updates...
[2026-06-19 21:36:41,697.697 INFO    ] 200
[2026-06-19 21:36:41,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:41,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:36:41,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:36:41,794.794 INFO    ] No camera update needed
[2026-06-19 21:36:41,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:36:41,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:36:41,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:36:41,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:36:43,851.851 INFO    ] ================================================
[2026-06-19 21:36:43,868.868 INFO    ] Launching Daemon at Fri Jun 19 21:36:43 IST 2026
[2026-06-19 21:36:43,879.879 INFO    ] ================================================
[2026-06-19 21:36:44,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:36:44
[2026-06-19 21:36:45,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:36:45,487.487 INFO    ] Initializing speech engine...
[2026-06-19 21:36:45,499.499 INFO    ] 2026-06-19 21:36:45
[2026-06-19 21:36:45,805.805 INFO    ] 2026-06-19 21:36:45
[2026-06-19 21:36:45,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:36:46,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:36:46,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:36:46,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:36:46,320.320 INFO    ] time= 19/06/2026 21:36:46
[2026-06-19 21:36:46,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:36:46,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:36:46,476.476 INFO    ] No existing commands found in stream
[2026-06-19 21:36:51,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:36:51,500.500 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 21:36:53,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:36:53,937.937 INFO    ] Checking for system updates...
[2026-06-19 21:36:53,974.974 INFO    ] 200
[2026-06-19 21:36:53,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:54,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:36:54,033.033 INFO    ] No update needed
[2026-06-19 21:36:54,036.036 INFO    ] Checking for camera pi updates...
[2026-06-19 21:36:54,075.075 INFO    ] 200
[2026-06-19 21:36:54,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:36:54,124.124 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:36:54,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:36:54,175.175 INFO    ] No camera update needed
[2026-06-19 21:36:54,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:36:54,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:36:54,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:36:54,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:36:56,233.233 INFO    ] ================================================
[2026-06-19 21:36:56,248.248 INFO    ] Launching Daemon at Fri Jun 19 21:36:56 IST 2026
[2026-06-19 21:36:56,260.260 INFO    ] ================================================
[2026-06-19 21:36:56,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:36:56
[2026-06-19 21:36:57,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:36:57,844.844 INFO    ] Initializing speech engine...
[2026-06-19 21:36:57,854.854 INFO    ] 2026-06-19 21:36:57
[2026-06-19 21:36:58,122.122 INFO    ] 2026-06-19 21:36:58
[2026-06-19 21:36:58,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:36:58,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:36:58,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:36:58,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:36:58,669.669 INFO    ] time= 19/06/2026 21:36:58
[2026-06-19 21:36:58,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:36:58,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:36:58,806.806 INFO    ] No existing commands found in stream
[2026-06-19 21:37:03,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:37:03,838.838 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 21:37:05,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:37:05,759.759 INFO    ] Checking for system updates...
[2026-06-19 21:37:05,797.797 INFO    ] 200
[2026-06-19 21:37:05,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:05,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:37:05,861.861 INFO    ] No update needed
[2026-06-19 21:37:05,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 21:37:05,901.901 INFO    ] 200
[2026-06-19 21:37:05,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:05,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:37:05,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:37:06,001.001 INFO    ] No camera update needed
[2026-06-19 21:37:06,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:37:06,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:37:06,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:37:06,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:37:08,059.059 INFO    ] ================================================
[2026-06-19 21:37:08,074.074 INFO    ] Launching Daemon at Fri Jun 19 21:37:08 IST 2026
[2026-06-19 21:37:08,085.085 INFO    ] ================================================
[2026-06-19 21:37:08,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:37:08
[2026-06-19 21:37:09,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:37:09,642.642 INFO    ] Initializing speech engine...
[2026-06-19 21:37:09,650.650 INFO    ] 2026-06-19 21:37:09
[2026-06-19 21:37:09,931.931 INFO    ] 2026-06-19 21:37:09
[2026-06-19 21:37:09,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:37:10,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:37:10,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:37:10,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:37:10,334.334 INFO    ] time= 19/06/2026 21:37:10
[2026-06-19 21:37:10,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:37:10,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:37:10,528.528 INFO    ] No existing commands found in stream
[2026-06-19 21:37:15,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:37:15,544.544 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 21:37:17,919.919 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:37:17,922.922 INFO    ] Checking for system updates...
[2026-06-19 21:37:17,961.961 INFO    ] 200
[2026-06-19 21:37:17,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:18,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:37:18,020.020 INFO    ] No update needed
[2026-06-19 21:37:18,023.023 INFO    ] Checking for camera pi updates...
[2026-06-19 21:37:18,057.057 INFO    ] 200
[2026-06-19 21:37:18,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:18,100.100 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:37:18,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:37:18,146.146 INFO    ] No camera update needed
[2026-06-19 21:37:18,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:37:18,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:37:18,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:37:18,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:37:20,202.202 INFO    ] ================================================
[2026-06-19 21:37:20,217.217 INFO    ] Launching Daemon at Fri Jun 19 21:37:20 IST 2026
[2026-06-19 21:37:20,228.228 INFO    ] ================================================
[2026-06-19 21:37:20,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:37:20
[2026-06-19 21:37:21,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:37:21,794.794 INFO    ] Initializing speech engine...
[2026-06-19 21:37:21,801.801 INFO    ] 2026-06-19 21:37:21
[2026-06-19 21:37:22,068.068 INFO    ] 2026-06-19 21:37:22
[2026-06-19 21:37:22,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:37:22,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:37:22,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:37:22,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:37:22,556.556 INFO    ] time= 19/06/2026 21:37:22
[2026-06-19 21:37:22,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:37:22,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:37:22,762.762 INFO    ] No existing commands found in stream
[2026-06-19 21:37:27,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:37:27,789.789 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 21:37:30,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:37:30,855.855 INFO    ] Checking for system updates...
[2026-06-19 21:37:30,891.891 INFO    ] 200
[2026-06-19 21:37:30,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:30,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:37:30,948.948 INFO    ] No update needed
[2026-06-19 21:37:30,951.951 INFO    ] Checking for camera pi updates...
[2026-06-19 21:37:30,985.985 INFO    ] 200
[2026-06-19 21:37:30,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:31,028.028 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:37:31,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:37:31,076.076 INFO    ] No camera update needed
[2026-06-19 21:37:31,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:37:31,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:37:31,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:37:31,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:37:33,132.132 INFO    ] ================================================
[2026-06-19 21:37:33,148.148 INFO    ] Launching Daemon at Fri Jun 19 21:37:33 IST 2026
[2026-06-19 21:37:33,159.159 INFO    ] ================================================
[2026-06-19 21:37:33,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:37:33
[2026-06-19 21:37:34,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:37:34,594.594 INFO    ] Initializing speech engine...
[2026-06-19 21:37:34,603.603 INFO    ] 2026-06-19 21:37:34
[2026-06-19 21:37:34,890.890 INFO    ] 2026-06-19 21:37:34
[2026-06-19 21:37:34,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:37:35,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:37:35,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:37:35,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:37:35,272.272 INFO    ] time= 19/06/2026 21:37:35
[2026-06-19 21:37:35,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:37:35,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:37:35,377.377 INFO    ] No existing commands found in stream
[2026-06-19 21:37:40,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:37:40,392.392 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 21:37:42,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:37:42,119.119 INFO    ] Checking for system updates...
[2026-06-19 21:37:42,156.156 INFO    ] 200
[2026-06-19 21:37:42,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:42,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:37:42,213.213 INFO    ] No update needed
[2026-06-19 21:37:42,216.216 INFO    ] Checking for camera pi updates...
[2026-06-19 21:37:42,250.250 INFO    ] 200
[2026-06-19 21:37:42,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:42,301.301 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:37:42,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:37:42,350.350 INFO    ] No camera update needed
[2026-06-19 21:37:42,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:37:42,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:37:42,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:37:42,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:37:44,406.406 INFO    ] ================================================
[2026-06-19 21:37:44,421.421 INFO    ] Launching Daemon at Fri Jun 19 21:37:44 IST 2026
[2026-06-19 21:37:44,432.432 INFO    ] ================================================
[2026-06-19 21:37:45,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:37:45
[2026-06-19 21:37:45,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:37:45,854.854 INFO    ] Initializing speech engine...
[2026-06-19 21:37:45,862.862 INFO    ] 2026-06-19 21:37:45
[2026-06-19 21:37:46,136.136 INFO    ] 2026-06-19 21:37:46
[2026-06-19 21:37:46,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:37:46,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:37:46,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:37:46,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:37:46,510.510 INFO    ] time= 19/06/2026 21:37:46
[2026-06-19 21:37:46,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:37:46,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:37:46,592.592 INFO    ] No existing commands found in stream
[2026-06-19 21:37:51,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:37:51,610.610 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 21:37:52,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:37:52,864.864 INFO    ] Checking for system updates...
[2026-06-19 21:37:52,903.903 INFO    ] 200
[2026-06-19 21:37:52,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:52,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:37:52,961.961 INFO    ] No update needed
[2026-06-19 21:37:52,964.964 INFO    ] Checking for camera pi updates...
[2026-06-19 21:37:53,000.000 INFO    ] 200
[2026-06-19 21:37:53,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:37:53,043.043 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:37:53,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:37:53,093.093 INFO    ] No camera update needed
[2026-06-19 21:37:53,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:37:53,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:37:53,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:37:53,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:37:55,149.149 INFO    ] ================================================
[2026-06-19 21:37:55,164.164 INFO    ] Launching Daemon at Fri Jun 19 21:37:55 IST 2026
[2026-06-19 21:37:55,176.176 INFO    ] ================================================
[2026-06-19 21:37:55,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:37:55
[2026-06-19 21:37:56,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:37:56,633.633 INFO    ] Initializing speech engine...
[2026-06-19 21:37:56,648.648 INFO    ] 2026-06-19 21:37:56
[2026-06-19 21:37:56,918.918 INFO    ] 2026-06-19 21:37:56
[2026-06-19 21:37:56,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:37:57,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:37:57,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:37:57,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:37:57,285.285 INFO    ] time= 19/06/2026 21:37:57
[2026-06-19 21:37:57,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:37:57,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:37:57,406.406 INFO    ] No existing commands found in stream
[2026-06-19 21:38:02,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:38:02,421.421 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 21:38:06,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:38:06,350.350 INFO    ] Checking for system updates...
[2026-06-19 21:38:06,386.386 INFO    ] 200
[2026-06-19 21:38:06,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:06,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:38:06,444.444 INFO    ] No update needed
[2026-06-19 21:38:06,447.447 INFO    ] Checking for camera pi updates...
[2026-06-19 21:38:06,480.480 INFO    ] 200
[2026-06-19 21:38:06,482.482 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:06,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:38:06,674.674 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:38:06,677.677 INFO    ] No camera update needed
[2026-06-19 21:38:06,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:38:06,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:38:06,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:38:06,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:38:08,733.733 INFO    ] ================================================
[2026-06-19 21:38:08,749.749 INFO    ] Launching Daemon at Fri Jun 19 21:38:08 IST 2026
[2026-06-19 21:38:08,760.760 INFO    ] ================================================
[2026-06-19 21:38:09,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:38:09
[2026-06-19 21:38:09,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:38:10,160.160 INFO    ] Initializing speech engine...
[2026-06-19 21:38:10,169.169 INFO    ] 2026-06-19 21:38:10
[2026-06-19 21:38:10,455.455 INFO    ] 2026-06-19 21:38:10
[2026-06-19 21:38:10,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:38:10,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:38:10,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:38:10,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:38:10,834.834 INFO    ] time= 19/06/2026 21:38:10
[2026-06-19 21:38:10,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:38:10,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:38:10,939.939 INFO    ] No existing commands found in stream
[2026-06-19 21:38:15,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:38:15,955.955 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 21:38:18,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:38:18,908.908 INFO    ] Checking for system updates...
[2026-06-19 21:38:18,944.944 INFO    ] 200
[2026-06-19 21:38:18,946.946 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:19,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:38:19,002.002 INFO    ] No update needed
[2026-06-19 21:38:19,005.005 INFO    ] Checking for camera pi updates...
[2026-06-19 21:38:19,041.041 INFO    ] 200
[2026-06-19 21:38:19,043.043 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:19,087.087 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:38:19,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:38:19,137.137 INFO    ] No camera update needed
[2026-06-19 21:38:19,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:38:19,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:38:19,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:38:19,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:38:21,193.193 INFO    ] ================================================
[2026-06-19 21:38:21,208.208 INFO    ] Launching Daemon at Fri Jun 19 21:38:21 IST 2026
[2026-06-19 21:38:21,219.219 INFO    ] ================================================
[2026-06-19 21:38:21,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:38:21
[2026-06-19 21:38:22,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:38:22,778.778 INFO    ] Initializing speech engine...
[2026-06-19 21:38:22,787.787 INFO    ] 2026-06-19 21:38:22
[2026-06-19 21:38:23,056.056 INFO    ] 2026-06-19 21:38:23
[2026-06-19 21:38:23,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:38:23,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:38:23,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:38:23,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:38:23,565.565 INFO    ] time= 19/06/2026 21:38:23
[2026-06-19 21:38:23,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:38:23,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:38:23,747.747 INFO    ] No existing commands found in stream
[2026-06-19 21:38:28,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:38:28,775.775 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 21:38:32,218.218 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:38:32,220.220 INFO    ] Checking for system updates...
[2026-06-19 21:38:32,260.260 INFO    ] 200
[2026-06-19 21:38:32,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:32,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:38:32,322.322 INFO    ] No update needed
[2026-06-19 21:38:32,325.325 INFO    ] Checking for camera pi updates...
[2026-06-19 21:38:32,364.364 INFO    ] 200
[2026-06-19 21:38:32,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:32,410.410 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:38:32,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:38:32,445.445 INFO    ] No camera update needed
[2026-06-19 21:38:32,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:38:32,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:38:32,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:38:32,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:38:34,503.503 INFO    ] ================================================
[2026-06-19 21:38:34,519.519 INFO    ] Launching Daemon at Fri Jun 19 21:38:34 IST 2026
[2026-06-19 21:38:34,530.530 INFO    ] ================================================
[2026-06-19 21:38:35,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:38:35
[2026-06-19 21:38:35,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:38:35,943.943 INFO    ] Initializing speech engine...
[2026-06-19 21:38:35,949.949 INFO    ] 2026-06-19 21:38:35
[2026-06-19 21:38:36,238.238 INFO    ] 2026-06-19 21:38:36
[2026-06-19 21:38:36,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:38:36,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:38:36,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:38:36,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:38:36,643.643 INFO    ] time= 19/06/2026 21:38:36
[2026-06-19 21:38:36,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:38:36,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:38:36,728.728 INFO    ] No existing commands found in stream
[2026-06-19 21:38:41,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:38:41,746.746 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 21:38:43,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:38:43,243.243 INFO    ] Checking for system updates...
[2026-06-19 21:38:43,279.279 INFO    ] 200
[2026-06-19 21:38:43,282.282 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:43,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:38:43,337.337 INFO    ] No update needed
[2026-06-19 21:38:43,339.339 INFO    ] Checking for camera pi updates...
[2026-06-19 21:38:43,373.373 INFO    ] 200
[2026-06-19 21:38:43,376.376 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:43,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:38:43,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:38:43,467.467 INFO    ] No camera update needed
[2026-06-19 21:38:43,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:38:43,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:38:43,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:38:43,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:38:45,522.522 INFO    ] ================================================
[2026-06-19 21:38:45,538.538 INFO    ] Launching Daemon at Fri Jun 19 21:38:45 IST 2026
[2026-06-19 21:38:45,549.549 INFO    ] ================================================
[2026-06-19 21:38:46,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:38:46
[2026-06-19 21:38:46,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:38:46,967.967 INFO    ] Initializing speech engine...
[2026-06-19 21:38:46,982.982 INFO    ] 2026-06-19 21:38:46
[2026-06-19 21:38:47,244.244 INFO    ] 2026-06-19 21:38:47
[2026-06-19 21:38:47,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:38:47,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:38:47,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:38:47,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:38:47,626.626 INFO    ] time= 19/06/2026 21:38:47
[2026-06-19 21:38:47,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:38:47,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:38:47,729.729 INFO    ] No existing commands found in stream
[2026-06-19 21:38:52,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:38:52,745.745 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 21:38:55,772.772 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:38:55,774.774 INFO    ] Checking for system updates...
[2026-06-19 21:38:55,810.810 INFO    ] 200
[2026-06-19 21:38:55,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:55,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:38:55,868.868 INFO    ] No update needed
[2026-06-19 21:38:55,871.871 INFO    ] Checking for camera pi updates...
[2026-06-19 21:38:55,905.905 INFO    ] 200
[2026-06-19 21:38:55,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:38:55,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:38:56,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:38:56,002.002 INFO    ] No camera update needed
[2026-06-19 21:38:56,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:38:56,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:38:56,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:38:56,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:38:58,058.058 INFO    ] ================================================
[2026-06-19 21:38:58,073.073 INFO    ] Launching Daemon at Fri Jun 19 21:38:58 IST 2026
[2026-06-19 21:38:58,084.084 INFO    ] ================================================
[2026-06-19 21:38:58,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:38:58
[2026-06-19 21:38:59,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:38:59,489.489 INFO    ] Initializing speech engine...
[2026-06-19 21:38:59,496.496 INFO    ] 2026-06-19 21:38:59
[2026-06-19 21:38:59,782.782 INFO    ] 2026-06-19 21:38:59
[2026-06-19 21:38:59,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:39:00,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:39:00,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:39:00,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:39:00,185.185 INFO    ] time= 19/06/2026 21:39:00
[2026-06-19 21:39:00,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:39:00,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:39:00,271.271 INFO    ] No existing commands found in stream
[2026-06-19 21:39:05,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:39:05,284.284 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 21:39:06,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:39:06,559.559 INFO    ] Checking for system updates...
[2026-06-19 21:39:06,594.594 INFO    ] 200
[2026-06-19 21:39:06,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:06,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:39:06,658.658 INFO    ] No update needed
[2026-06-19 21:39:06,661.661 INFO    ] Checking for camera pi updates...
[2026-06-19 21:39:06,694.694 INFO    ] 200
[2026-06-19 21:39:06,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:06,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:39:06,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:39:06,789.789 INFO    ] No camera update needed
[2026-06-19 21:39:06,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:39:06,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:39:06,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:39:06,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:39:08,852.852 INFO    ] ================================================
[2026-06-19 21:39:08,867.867 INFO    ] Launching Daemon at Fri Jun 19 21:39:08 IST 2026
[2026-06-19 21:39:08,878.878 INFO    ] ================================================
[2026-06-19 21:39:09,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:39:09
[2026-06-19 21:39:10,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:39:10,324.324 INFO    ] Initializing speech engine...
[2026-06-19 21:39:10,333.333 INFO    ] 2026-06-19 21:39:10
[2026-06-19 21:39:10,629.629 INFO    ] 2026-06-19 21:39:10
[2026-06-19 21:39:10,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:39:10,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:39:10,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:39:11,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:39:11,024.024 INFO    ] time= 19/06/2026 21:39:11
[2026-06-19 21:39:11,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:39:11,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:39:11,207.207 INFO    ] No existing commands found in stream
[2026-06-19 21:39:16,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:39:16,242.242 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 21:39:19,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:39:19,652.652 INFO    ] Checking for system updates...
[2026-06-19 21:39:19,689.689 INFO    ] 200
[2026-06-19 21:39:19,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:19,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:39:19,750.750 INFO    ] No update needed
[2026-06-19 21:39:19,753.753 INFO    ] Checking for camera pi updates...
[2026-06-19 21:39:19,787.787 INFO    ] 200
[2026-06-19 21:39:19,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:19,835.835 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:39:19,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:39:19,893.893 INFO    ] No camera update needed
[2026-06-19 21:39:19,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:39:19,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:39:19,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:39:19,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:39:21,948.948 INFO    ] ================================================
[2026-06-19 21:39:21,963.963 INFO    ] Launching Daemon at Fri Jun 19 21:39:21 IST 2026
[2026-06-19 21:39:21,973.973 INFO    ] ================================================
[2026-06-19 21:39:22,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:39:22
[2026-06-19 21:39:23,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:39:23,399.399 INFO    ] Initializing speech engine...
[2026-06-19 21:39:23,421.421 INFO    ] 2026-06-19 21:39:23
[2026-06-19 21:39:23,678.678 INFO    ] 2026-06-19 21:39:23
[2026-06-19 21:39:23,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:39:23,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:39:23,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:39:24,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:39:24,162.162 INFO    ] time= 19/06/2026 21:39:24
[2026-06-19 21:39:24,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:39:24,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:39:24,316.316 INFO    ] No existing commands found in stream
[2026-06-19 21:39:29,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:39:29,331.331 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 21:39:33,226.226 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:39:33,228.228 INFO    ] Checking for system updates...
[2026-06-19 21:39:33,265.265 INFO    ] 200
[2026-06-19 21:39:33,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:33,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:39:33,332.332 INFO    ] No update needed
[2026-06-19 21:39:33,335.335 INFO    ] Checking for camera pi updates...
[2026-06-19 21:39:33,369.369 INFO    ] 200
[2026-06-19 21:39:33,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:33,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:39:33,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:39:33,471.471 INFO    ] No camera update needed
[2026-06-19 21:39:33,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:39:33,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:39:33,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:39:33,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:39:35,525.525 INFO    ] ================================================
[2026-06-19 21:39:35,540.540 INFO    ] Launching Daemon at Fri Jun 19 21:39:35 IST 2026
[2026-06-19 21:39:35,551.551 INFO    ] ================================================
[2026-06-19 21:39:36,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:39:36
[2026-06-19 21:39:36,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:39:37,178.178 INFO    ] Initializing speech engine...
[2026-06-19 21:39:37,189.189 INFO    ] 2026-06-19 21:39:37
[2026-06-19 21:39:37,473.473 INFO    ] 2026-06-19 21:39:37
[2026-06-19 21:39:37,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:39:37,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:39:37,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:39:37,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:39:37,967.967 INFO    ] time= 19/06/2026 21:39:37
[2026-06-19 21:39:38,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:39:38,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:39:38,168.168 INFO    ] No existing commands found in stream
[2026-06-19 21:39:43,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:39:43,200.200 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 21:39:46,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:39:46,769.769 INFO    ] Checking for system updates...
[2026-06-19 21:39:46,805.805 INFO    ] 200
[2026-06-19 21:39:46,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:46,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:39:46,865.865 INFO    ] No update needed
[2026-06-19 21:39:46,868.868 INFO    ] Checking for camera pi updates...
[2026-06-19 21:39:46,903.903 INFO    ] 200
[2026-06-19 21:39:46,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:46,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:39:46,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:39:47,002.002 INFO    ] No camera update needed
[2026-06-19 21:39:47,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:39:47,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:39:47,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:39:47,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:39:49,059.059 INFO    ] ================================================
[2026-06-19 21:39:49,074.074 INFO    ] Launching Daemon at Fri Jun 19 21:39:49 IST 2026
[2026-06-19 21:39:49,090.090 INFO    ] ================================================
[2026-06-19 21:39:49,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:39:49
[2026-06-19 21:39:50,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:39:50,698.698 INFO    ] Initializing speech engine...
[2026-06-19 21:39:50,706.706 INFO    ] 2026-06-19 21:39:50
[2026-06-19 21:39:50,996.996 INFO    ] 2026-06-19 21:39:50
[2026-06-19 21:39:51,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:39:51,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:39:51,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:39:51,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:39:51,437.437 INFO    ] time= 19/06/2026 21:39:51
[2026-06-19 21:39:51,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:39:51,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:39:51,620.620 INFO    ] No existing commands found in stream
[2026-06-19 21:39:56,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:39:56,636.636 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 21:39:57,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:39:57,156.156 INFO    ] Checking for system updates...
[2026-06-19 21:39:57,196.196 INFO    ] 200
[2026-06-19 21:39:57,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:57,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:39:57,258.258 INFO    ] No update needed
[2026-06-19 21:39:57,260.260 INFO    ] Checking for camera pi updates...
[2026-06-19 21:39:57,295.295 INFO    ] 200
[2026-06-19 21:39:57,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:39:57,343.343 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:39:57,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:39:57,392.392 INFO    ] No camera update needed
[2026-06-19 21:39:57,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:39:57,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:39:57,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:39:57,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:39:59,451.451 INFO    ] ================================================
[2026-06-19 21:39:59,466.466 INFO    ] Launching Daemon at Fri Jun 19 21:39:59 IST 2026
[2026-06-19 21:39:59,477.477 INFO    ] ================================================
[2026-06-19 21:40:00,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:40:00
[2026-06-19 21:40:00,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:40:00,892.892 INFO    ] Initializing speech engine...
[2026-06-19 21:40:00,910.910 INFO    ] 2026-06-19 21:40:00
[2026-06-19 21:40:01,161.161 INFO    ] 2026-06-19 21:40:01
[2026-06-19 21:40:01,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:40:01,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:40:01,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:40:01,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:40:01,633.633 INFO    ] time= 19/06/2026 21:40:01
[2026-06-19 21:40:01,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:40:01,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:40:01,778.778 INFO    ] No existing commands found in stream
[2026-06-19 21:40:06,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:40:06,791.791 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 21:40:09,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:40:09,542.542 INFO    ] Checking for system updates...
[2026-06-19 21:40:09,578.578 INFO    ] 200
[2026-06-19 21:40:09,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:09,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:40:09,636.636 INFO    ] No update needed
[2026-06-19 21:40:09,639.639 INFO    ] Checking for camera pi updates...
[2026-06-19 21:40:09,673.673 INFO    ] 200
[2026-06-19 21:40:09,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:09,718.718 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:40:09,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:40:09,867.867 INFO    ] No camera update needed
[2026-06-19 21:40:09,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:40:09,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:40:09,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:40:09,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:40:11,924.924 INFO    ] ================================================
[2026-06-19 21:40:11,939.939 INFO    ] Launching Daemon at Fri Jun 19 21:40:11 IST 2026
[2026-06-19 21:40:11,955.955 INFO    ] ================================================
[2026-06-19 21:40:12,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:40:12
[2026-06-19 21:40:13,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:40:13,412.412 INFO    ] Initializing speech engine...
[2026-06-19 21:40:13,428.428 INFO    ] 2026-06-19 21:40:13
[2026-06-19 21:40:13,721.721 INFO    ] 2026-06-19 21:40:13
[2026-06-19 21:40:13,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:40:13,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:40:13,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:40:14,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:40:14,109.109 INFO    ] time= 19/06/2026 21:40:14
[2026-06-19 21:40:14,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:40:14,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:40:14,237.237 INFO    ] No existing commands found in stream
[2026-06-19 21:40:19,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:40:19,251.251 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 21:40:23,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:40:23,426.426 INFO    ] Checking for system updates...
[2026-06-19 21:40:23,466.466 INFO    ] 200
[2026-06-19 21:40:23,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:23,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:40:23,524.524 INFO    ] No update needed
[2026-06-19 21:40:23,527.527 INFO    ] Checking for camera pi updates...
[2026-06-19 21:40:23,560.560 INFO    ] 200
[2026-06-19 21:40:23,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:23,605.605 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:40:23,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:40:23,657.657 INFO    ] No camera update needed
[2026-06-19 21:40:23,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:40:23,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:40:23,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:40:23,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:40:25,713.713 INFO    ] ================================================
[2026-06-19 21:40:25,728.728 INFO    ] Launching Daemon at Fri Jun 19 21:40:25 IST 2026
[2026-06-19 21:40:25,739.739 INFO    ] ================================================
[2026-06-19 21:40:26,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:40:26
[2026-06-19 21:40:26,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:40:27,179.179 INFO    ] Initializing speech engine...
[2026-06-19 21:40:27,186.186 INFO    ] 2026-06-19 21:40:27
[2026-06-19 21:40:27,490.490 INFO    ] 2026-06-19 21:40:27
[2026-06-19 21:40:27,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:40:27,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:40:27,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:40:27,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:40:27,871.871 INFO    ] time= 19/06/2026 21:40:27
[2026-06-19 21:40:27,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:40:27,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:40:27,984.984 INFO    ] No existing commands found in stream
[2026-06-19 21:40:33,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:40:33,007.007 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 21:40:37,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:40:37,302.302 INFO    ] Checking for system updates...
[2026-06-19 21:40:37,339.339 INFO    ] 200
[2026-06-19 21:40:37,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:37,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:40:37,396.396 INFO    ] No update needed
[2026-06-19 21:40:37,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 21:40:37,432.432 INFO    ] 200
[2026-06-19 21:40:37,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:37,476.476 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:40:37,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:40:37,531.531 INFO    ] No camera update needed
[2026-06-19 21:40:37,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:40:37,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:40:37,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:40:37,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:40:39,588.588 INFO    ] ================================================
[2026-06-19 21:40:39,603.603 INFO    ] Launching Daemon at Fri Jun 19 21:40:39 IST 2026
[2026-06-19 21:40:39,618.618 INFO    ] ================================================
[2026-06-19 21:40:40,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:40:40
[2026-06-19 21:40:40,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:40:41,293.293 INFO    ] Initializing speech engine...
[2026-06-19 21:40:41,305.305 INFO    ] 2026-06-19 21:40:41
[2026-06-19 21:40:41,620.620 INFO    ] 2026-06-19 21:40:41
[2026-06-19 21:40:41,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:40:41,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:40:41,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:40:42,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:40:42,132.132 INFO    ] time= 19/06/2026 21:40:42
[2026-06-19 21:40:42,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:40:42,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:40:42,268.268 INFO    ] No existing commands found in stream
[2026-06-19 21:40:47,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:40:47,300.300 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-19 21:40:48,033.033 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:40:48,036.036 INFO    ] Checking for system updates...
[2026-06-19 21:40:48,073.073 INFO    ] 200
[2026-06-19 21:40:48,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:48,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:40:48,132.132 INFO    ] No update needed
[2026-06-19 21:40:48,134.134 INFO    ] Checking for camera pi updates...
[2026-06-19 21:40:48,169.169 INFO    ] 200
[2026-06-19 21:40:48,171.171 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:48,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:40:48,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:40:48,254.254 INFO    ] No camera update needed
[2026-06-19 21:40:48,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:40:48,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:40:48,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:40:48,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:40:50,309.309 INFO    ] ================================================
[2026-06-19 21:40:50,324.324 INFO    ] Launching Daemon at Fri Jun 19 21:40:50 IST 2026
[2026-06-19 21:40:50,335.335 INFO    ] ================================================
[2026-06-19 21:40:51,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:40:51
[2026-06-19 21:40:51,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:40:52,004.004 INFO    ] Initializing speech engine...
[2026-06-19 21:40:52,017.017 INFO    ] 2026-06-19 21:40:52
[2026-06-19 21:40:52,330.330 INFO    ] 2026-06-19 21:40:52
[2026-06-19 21:40:52,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:40:52,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:40:52,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:40:52,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:40:52,844.844 INFO    ] time= 19/06/2026 21:40:52
[2026-06-19 21:40:52,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:40:52,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:40:53,001.001 INFO    ] No existing commands found in stream
[2026-06-19 21:40:58,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:40:58,025.025 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 21:40:59,796.796 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:40:59,799.799 INFO    ] Checking for system updates...
[2026-06-19 21:40:59,836.836 INFO    ] 200
[2026-06-19 21:40:59,839.839 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:59,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:40:59,903.903 INFO    ] No update needed
[2026-06-19 21:40:59,905.905 INFO    ] Checking for camera pi updates...
[2026-06-19 21:40:59,940.940 INFO    ] 200
[2026-06-19 21:40:59,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:40:59,984.984 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:41:00,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:41:00,032.032 INFO    ] No camera update needed
[2026-06-19 21:41:00,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:41:00,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:41:00,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:41:00,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:41:02,094.094 INFO    ] ================================================
[2026-06-19 21:41:02,114.114 INFO    ] Launching Daemon at Fri Jun 19 21:41:02 IST 2026
[2026-06-19 21:41:02,130.130 INFO    ] ================================================
[2026-06-19 21:41:02,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:41:02
[2026-06-19 21:41:03,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:41:03,663.663 INFO    ] Initializing speech engine...
[2026-06-19 21:41:03,678.678 INFO    ] 2026-06-19 21:41:03
[2026-06-19 21:41:03,954.954 INFO    ] 2026-06-19 21:41:03
[2026-06-19 21:41:03,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:41:04,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:41:04,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:41:04,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:41:04,293.293 INFO    ] time= 19/06/2026 21:41:04
[2026-06-19 21:41:04,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:41:04,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:41:04,372.372 INFO    ] No existing commands found in stream
[2026-06-19 21:41:09,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:41:09,386.386 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 21:41:11,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:41:11,996.996 INFO    ] Checking for system updates...
[2026-06-19 21:41:12,032.032 INFO    ] 200
[2026-06-19 21:41:12,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:12,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:41:12,090.090 INFO    ] No update needed
[2026-06-19 21:41:12,092.092 INFO    ] Checking for camera pi updates...
[2026-06-19 21:41:12,126.126 INFO    ] 200
[2026-06-19 21:41:12,129.129 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:12,170.170 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:41:12,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:41:12,222.222 INFO    ] No camera update needed
[2026-06-19 21:41:12,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:41:12,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:41:12,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:41:12,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:41:14,280.280 INFO    ] ================================================
[2026-06-19 21:41:14,295.295 INFO    ] Launching Daemon at Fri Jun 19 21:41:14 IST 2026
[2026-06-19 21:41:14,305.305 INFO    ] ================================================
[2026-06-19 21:41:14,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:41:14
[2026-06-19 21:41:15,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:41:15,726.726 INFO    ] Initializing speech engine...
[2026-06-19 21:41:15,735.735 INFO    ] 2026-06-19 21:41:15
[2026-06-19 21:41:15,984.984 INFO    ] 2026-06-19 21:41:15
[2026-06-19 21:41:16,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:41:16,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:41:16,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:41:16,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:41:16,446.446 INFO    ] time= 19/06/2026 21:41:16
[2026-06-19 21:41:16,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:41:16,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:41:16,616.616 INFO    ] No existing commands found in stream
[2026-06-19 21:41:21,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:41:21,631.631 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 21:41:23,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:41:23,333.333 INFO    ] Checking for system updates...
[2026-06-19 21:41:23,369.369 INFO    ] 200
[2026-06-19 21:41:23,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:23,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:41:23,426.426 INFO    ] No update needed
[2026-06-19 21:41:23,429.429 INFO    ] Checking for camera pi updates...
[2026-06-19 21:41:23,466.466 INFO    ] 200
[2026-06-19 21:41:23,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:23,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:41:23,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:41:23,556.556 INFO    ] No camera update needed
[2026-06-19 21:41:23,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:41:23,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:41:23,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:41:23,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:41:25,612.612 INFO    ] ================================================
[2026-06-19 21:41:25,627.627 INFO    ] Launching Daemon at Fri Jun 19 21:41:25 IST 2026
[2026-06-19 21:41:25,637.637 INFO    ] ================================================
[2026-06-19 21:41:26,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:41:26
[2026-06-19 21:41:26,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:41:27,054.054 INFO    ] Initializing speech engine...
[2026-06-19 21:41:27,068.068 INFO    ] 2026-06-19 21:41:27
[2026-06-19 21:41:27,349.349 INFO    ] 2026-06-19 21:41:27
[2026-06-19 21:41:27,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:41:27,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:41:27,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:41:27,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:41:27,695.695 INFO    ] time= 19/06/2026 21:41:27
[2026-06-19 21:41:27,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:41:27,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:41:27,815.815 INFO    ] No existing commands found in stream
[2026-06-19 21:41:32,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:41:32,848.848 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-19 21:41:33,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:41:33,884.884 INFO    ] Checking for system updates...
[2026-06-19 21:41:33,923.923 INFO    ] 200
[2026-06-19 21:41:33,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:33,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:41:33,980.980 INFO    ] No update needed
[2026-06-19 21:41:33,983.983 INFO    ] Checking for camera pi updates...
[2026-06-19 21:41:34,016.016 INFO    ] 200
[2026-06-19 21:41:34,019.019 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:34,060.060 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:41:34,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:41:34,110.110 INFO    ] No camera update needed
[2026-06-19 21:41:34,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:41:34,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:41:34,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:41:34,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:41:36,165.165 INFO    ] ================================================
[2026-06-19 21:41:36,180.180 INFO    ] Launching Daemon at Fri Jun 19 21:41:36 IST 2026
[2026-06-19 21:41:36,191.191 INFO    ] ================================================
[2026-06-19 21:41:36,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:41:36
[2026-06-19 21:41:37,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:41:37,790.790 INFO    ] Initializing speech engine...
[2026-06-19 21:41:37,802.802 INFO    ] 2026-06-19 21:41:37
[2026-06-19 21:41:38,080.080 INFO    ] 2026-06-19 21:41:38
[2026-06-19 21:41:38,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:41:38,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:41:38,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:41:38,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:41:38,548.548 INFO    ] time= 19/06/2026 21:41:38
[2026-06-19 21:41:38,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:41:38,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:41:38,691.691 INFO    ] No existing commands found in stream
[2026-06-19 21:41:43,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:41:43,730.730 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 21:41:45,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:41:45,510.510 INFO    ] Checking for system updates...
[2026-06-19 21:41:45,547.547 INFO    ] 200
[2026-06-19 21:41:45,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:45,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:41:45,606.606 INFO    ] No update needed
[2026-06-19 21:41:45,609.609 INFO    ] Checking for camera pi updates...
[2026-06-19 21:41:45,643.643 INFO    ] 200
[2026-06-19 21:41:45,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:45,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:41:45,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:41:45,738.738 INFO    ] No camera update needed
[2026-06-19 21:41:45,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:41:45,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:41:45,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:41:45,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:41:47,799.799 INFO    ] ================================================
[2026-06-19 21:41:47,814.814 INFO    ] Launching Daemon at Fri Jun 19 21:41:47 IST 2026
[2026-06-19 21:41:47,824.824 INFO    ] ================================================
[2026-06-19 21:41:48,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:41:48
[2026-06-19 21:41:48,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:41:49,228.228 INFO    ] Initializing speech engine...
[2026-06-19 21:41:49,247.247 INFO    ] 2026-06-19 21:41:49
[2026-06-19 21:41:49,506.506 INFO    ] 2026-06-19 21:41:49
[2026-06-19 21:41:49,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:41:49,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:41:49,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:41:49,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:41:49,990.990 INFO    ] time= 19/06/2026 21:41:49
[2026-06-19 21:41:50,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:41:50,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:41:50,134.134 INFO    ] No existing commands found in stream
[2026-06-19 21:41:55,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:41:55,149.149 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-19 21:41:58,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:41:58,560.560 INFO    ] Checking for system updates...
[2026-06-19 21:41:58,599.599 INFO    ] 200
[2026-06-19 21:41:58,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:58,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:41:58,655.655 INFO    ] No update needed
[2026-06-19 21:41:58,658.658 INFO    ] Checking for camera pi updates...
[2026-06-19 21:41:58,691.691 INFO    ] 200
[2026-06-19 21:41:58,693.693 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:41:58,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:41:58,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:41:58,794.794 INFO    ] No camera update needed
[2026-06-19 21:41:58,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:41:58,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:41:58,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:41:58,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:42:00,849.849 INFO    ] ================================================
[2026-06-19 21:42:00,864.864 INFO    ] Launching Daemon at Fri Jun 19 21:42:00 IST 2026
[2026-06-19 21:42:00,875.875 INFO    ] ================================================
[2026-06-19 21:42:01,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:42:01
[2026-06-19 21:42:02,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:42:02,492.492 INFO    ] Initializing speech engine...
[2026-06-19 21:42:02,511.511 INFO    ] 2026-06-19 21:42:02
[2026-06-19 21:42:02,812.812 INFO    ] 2026-06-19 21:42:02
[2026-06-19 21:42:02,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:42:03,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:42:03,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:42:03,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:42:03,267.267 INFO    ] time= 19/06/2026 21:42:03
[2026-06-19 21:42:03,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:42:03,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:42:03,355.355 INFO    ] No existing commands found in stream
[2026-06-19 21:42:08,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:42:08,370.370 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 21:42:11,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:42:11,305.305 INFO    ] Checking for system updates...
[2026-06-19 21:42:11,342.342 INFO    ] 200
[2026-06-19 21:42:11,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:42:11,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:42:11,400.400 INFO    ] No update needed
[2026-06-19 21:42:11,402.402 INFO    ] Checking for camera pi updates...
[2026-06-19 21:42:11,438.438 INFO    ] 200
[2026-06-19 21:42:11,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:42:11,481.481 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:42:11,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:42:11,527.527 INFO    ] No camera update needed
[2026-06-19 21:42:11,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:42:11,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:42:11,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:42:11,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:42:13,585.585 INFO    ] ================================================
[2026-06-19 21:42:13,600.600 INFO    ] Launching Daemon at Fri Jun 19 21:42:13 IST 2026
[2026-06-19 21:42:13,611.611 INFO    ] ================================================
[2026-06-19 21:42:14,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:42:14
[2026-06-19 21:42:14,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:42:15,174.174 INFO    ] Initializing speech engine...
[2026-06-19 21:42:15,191.191 INFO    ] 2026-06-19 21:42:15
[2026-06-19 21:42:15,449.449 INFO    ] 2026-06-19 21:42:15
[2026-06-19 21:42:15,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:42:15,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:42:15,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:42:15,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:42:15,829.829 INFO    ] time= 19/06/2026 21:42:15
[2026-06-19 21:42:15,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:42:15,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:42:15,994.994 INFO    ] No existing commands found in stream
[2026-06-19 21:42:21,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:42:21,022.022 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 21:42:24,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:42:24,046.046 INFO    ] Checking for system updates...
[2026-06-19 21:42:24,083.083 INFO    ] 200
[2026-06-19 21:42:24,085.085 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:42:24,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:42:24,145.145 INFO    ] No update needed
[2026-06-19 21:42:24,148.148 INFO    ] Checking for camera pi updates...
[2026-06-19 21:42:24,183.183 INFO    ] 200
[2026-06-19 21:42:24,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:42:24,227.227 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:42:24,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:42:24,376.376 INFO    ] No camera update needed
[2026-06-19 21:42:24,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:42:24,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:42:24,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:42:24,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:42:26,432.432 INFO    ] ================================================
[2026-06-19 21:42:26,447.447 INFO    ] Launching Daemon at Fri Jun 19 21:42:26 IST 2026
[2026-06-19 21:42:26,458.458 INFO    ] ================================================
[2026-06-19 21:42:27,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:42:27
[2026-06-19 21:42:27,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:42:27,897.897 INFO    ] Initializing speech engine...
[2026-06-19 21:42:27,917.917 INFO    ] 2026-06-19 21:42:27
[2026-06-19 21:42:28,170.170 INFO    ] 2026-06-19 21:42:28
[2026-06-19 21:42:28,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:42:28,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:42:28,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:42:28,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:42:28,550.550 INFO    ] time= 19/06/2026 21:42:28
[2026-06-19 21:42:28,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:42:28,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:42:28,738.738 INFO    ] No existing commands found in stream
[2026-06-19 21:42:33,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:42:33,766.766 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-19 21:42:36,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:42:36,038.038 INFO    ] Checking for system updates...
[2026-06-19 21:42:36,073.073 INFO    ] 200
[2026-06-19 21:42:36,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:42:36,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:42:36,132.132 INFO    ] No update needed
[2026-06-19 21:42:36,135.135 INFO    ] Checking for camera pi updates...
[2026-06-19 21:42:36,173.173 INFO    ] 200
[2026-06-19 21:42:36,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:42:36,217.217 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:42:36,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:42:36,265.265 INFO    ] No camera update needed
[2026-06-19 21:42:36,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:42:36,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:42:36,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:42:36,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:42:38,323.323 INFO    ] ================================================
[2026-06-19 21:42:38,339.339 INFO    ] Launching Daemon at Fri Jun 19 21:42:38 IST 2026
[2026-06-19 21:42:38,351.351 INFO    ] ================================================
[2026-06-19 21:42:38,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:42:38
[2026-06-19 21:42:39,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:42:39,809.809 INFO    ] Initializing speech engine...
[2026-06-19 21:42:39,819.819 INFO    ] 2026-06-19 21:42:39
[2026-06-19 21:42:40,077.077 INFO    ] 2026-06-19 21:42:40
[2026-06-19 21:42:40,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:42:40,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:42:40,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:42:40,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:42:40,558.558 INFO    ] time= 19/06/2026 21:42:40
[2026-06-19 21:42:40,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:42:40,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:42:40,686.686 INFO    ] No existing commands found in stream
[2026-06-19 21:42:45,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:42:45,701.701 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 21:42:48,594.594 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:42:48,597.597 INFO    ] Checking for system updates...
[2026-06-19 21:42:48,639.639 INFO    ] 200
[2026-06-19 21:42:48,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:42:48,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:42:48,696.696 INFO    ] No update needed
[2026-06-19 21:42:48,698.698 INFO    ] Checking for camera pi updates...
[2026-06-19 21:42:48,735.735 INFO    ] 200
[2026-06-19 21:42:48,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:42:48,779.779 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:42:48,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:42:48,815.815 INFO    ] No camera update needed
[2026-06-19 21:42:48,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:42:48,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:42:48,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:42:48,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:42:50,870.870 INFO    ] ================================================
[2026-06-19 21:42:50,886.886 INFO    ] Launching Daemon at Fri Jun 19 21:42:50 IST 2026
[2026-06-19 21:42:50,897.897 INFO    ] ================================================
[2026-06-19 21:42:51,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:42:51
[2026-06-19 21:42:52,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:42:52,591.591 INFO    ] Initializing speech engine...
[2026-06-19 21:42:52,599.599 INFO    ] 2026-06-19 21:42:52
[2026-06-19 21:42:52,884.884 INFO    ] 2026-06-19 21:42:52
[2026-06-19 21:42:52,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:42:53,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:42:53,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:42:53,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:42:53,349.349 INFO    ] time= 19/06/2026 21:42:53
[2026-06-19 21:42:53,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:42:53,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:42:53,503.503 INFO    ] No existing commands found in stream
[2026-06-19 21:42:58,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:42:58,520.520 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 21:43:02,312.312 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:43:02,316.316 INFO    ] Checking for system updates...
[2026-06-19 21:43:02,365.365 INFO    ] 200
[2026-06-19 21:43:02,369.369 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:02,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:43:02,450.450 INFO    ] No update needed
[2026-06-19 21:43:02,453.453 INFO    ] Checking for camera pi updates...
[2026-06-19 21:43:02,496.496 INFO    ] 200
[2026-06-19 21:43:02,499.499 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:02,546.546 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:43:02,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:43:02,582.582 INFO    ] No camera update needed
[2026-06-19 21:43:02,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:43:02,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:43:02,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:43:02,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:43:04,642.642 INFO    ] ================================================
[2026-06-19 21:43:04,658.658 INFO    ] Launching Daemon at Fri Jun 19 21:43:04 IST 2026
[2026-06-19 21:43:04,669.669 INFO    ] ================================================
[2026-06-19 21:43:05,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:43:05
[2026-06-19 21:43:05,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:43:06,132.132 INFO    ] Initializing speech engine...
[2026-06-19 21:43:06,140.140 INFO    ] 2026-06-19 21:43:06
[2026-06-19 21:43:06,422.422 INFO    ] 2026-06-19 21:43:06
[2026-06-19 21:43:06,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:43:06,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:43:06,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:43:06,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:43:06,897.897 INFO    ] time= 19/06/2026 21:43:06
[2026-06-19 21:43:06,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:43:06,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:43:07,034.034 INFO    ] No existing commands found in stream
[2026-06-19 21:43:12,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:43:12,057.057 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 21:43:15,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:43:15,328.328 INFO    ] Checking for system updates...
[2026-06-19 21:43:15,369.369 INFO    ] 200
[2026-06-19 21:43:15,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:15,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:43:15,434.434 INFO    ] No update needed
[2026-06-19 21:43:15,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 21:43:15,475.475 INFO    ] 200
[2026-06-19 21:43:15,477.477 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:15,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:43:15,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:43:15,577.577 INFO    ] No camera update needed
[2026-06-19 21:43:15,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:43:15,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:43:15,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:43:15,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:43:17,633.633 INFO    ] ================================================
[2026-06-19 21:43:17,649.649 INFO    ] Launching Daemon at Fri Jun 19 21:43:17 IST 2026
[2026-06-19 21:43:17,660.660 INFO    ] ================================================
[2026-06-19 21:43:18,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:43:18
[2026-06-19 21:43:18,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:43:19,073.073 INFO    ] Initializing speech engine...
[2026-06-19 21:43:19,082.082 INFO    ] 2026-06-19 21:43:19
[2026-06-19 21:43:19,376.376 INFO    ] 2026-06-19 21:43:19
[2026-06-19 21:43:19,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:43:19,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:43:19,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:43:19,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:43:19,753.753 INFO    ] time= 19/06/2026 21:43:19
[2026-06-19 21:43:19,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:43:19,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:43:19,881.881 INFO    ] No existing commands found in stream
[2026-06-19 21:43:24,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:43:24,893.893 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 21:43:25,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:43:25,475.475 INFO    ] Checking for system updates...
[2026-06-19 21:43:25,514.514 INFO    ] 200
[2026-06-19 21:43:25,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:25,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:43:25,573.573 INFO    ] No update needed
[2026-06-19 21:43:25,575.575 INFO    ] Checking for camera pi updates...
[2026-06-19 21:43:25,612.612 INFO    ] 200
[2026-06-19 21:43:25,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:25,656.656 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:43:25,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:43:25,702.702 INFO    ] No camera update needed
[2026-06-19 21:43:25,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:43:25,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:43:25,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:43:25,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:43:27,757.757 INFO    ] ================================================
[2026-06-19 21:43:27,772.772 INFO    ] Launching Daemon at Fri Jun 19 21:43:27 IST 2026
[2026-06-19 21:43:27,783.783 INFO    ] ================================================
[2026-06-19 21:43:28,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:43:28
[2026-06-19 21:43:28,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:43:29,240.240 INFO    ] Initializing speech engine...
[2026-06-19 21:43:29,249.249 INFO    ] 2026-06-19 21:43:29
[2026-06-19 21:43:29,497.497 INFO    ] 2026-06-19 21:43:29
[2026-06-19 21:43:29,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:43:29,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:43:29,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:43:29,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:43:29,964.964 INFO    ] time= 19/06/2026 21:43:29
[2026-06-19 21:43:30,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:43:30,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:43:30,116.116 INFO    ] No existing commands found in stream
[2026-06-19 21:43:35,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:43:35,131.131 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 21:43:37,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:43:37,959.959 INFO    ] Checking for system updates...
[2026-06-19 21:43:37,998.998 INFO    ] 200
[2026-06-19 21:43:38,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:38,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:43:38,063.063 INFO    ] No update needed
[2026-06-19 21:43:38,066.066 INFO    ] Checking for camera pi updates...
[2026-06-19 21:43:38,103.103 INFO    ] 200
[2026-06-19 21:43:38,106.106 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:38,152.152 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:43:38,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:43:38,198.198 INFO    ] No camera update needed
[2026-06-19 21:43:38,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:43:38,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:43:38,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:43:38,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:43:40,255.255 INFO    ] ================================================
[2026-06-19 21:43:40,270.270 INFO    ] Launching Daemon at Fri Jun 19 21:43:40 IST 2026
[2026-06-19 21:43:40,281.281 INFO    ] ================================================
[2026-06-19 21:43:40,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:43:40
[2026-06-19 21:43:41,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:43:41,740.740 INFO    ] Initializing speech engine...
[2026-06-19 21:43:41,748.748 INFO    ] 2026-06-19 21:43:41
[2026-06-19 21:43:42,007.007 INFO    ] 2026-06-19 21:43:42
[2026-06-19 21:43:42,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:43:42,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:43:42,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:43:42,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:43:42,456.456 INFO    ] time= 19/06/2026 21:43:42
[2026-06-19 21:43:42,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:43:42,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:43:42,610.610 INFO    ] No existing commands found in stream
[2026-06-19 21:43:47,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:43:47,625.625 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 21:43:48,795.795 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:43:48,797.797 INFO    ] Checking for system updates...
[2026-06-19 21:43:48,833.833 INFO    ] 200
[2026-06-19 21:43:48,836.836 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:48,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:43:48,899.899 INFO    ] No update needed
[2026-06-19 21:43:48,901.901 INFO    ] Checking for camera pi updates...
[2026-06-19 21:43:48,938.938 INFO    ] 200
[2026-06-19 21:43:48,940.940 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:48,986.986 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:43:49,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:43:49,019.019 INFO    ] No camera update needed
[2026-06-19 21:43:49,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:43:49,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:43:49,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:43:49,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:43:51,076.076 INFO    ] ================================================
[2026-06-19 21:43:51,091.091 INFO    ] Launching Daemon at Fri Jun 19 21:43:51 IST 2026
[2026-06-19 21:43:51,101.101 INFO    ] ================================================
[2026-06-19 21:43:51,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:43:51
[2026-06-19 21:43:52,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:43:52,527.527 INFO    ] Initializing speech engine...
[2026-06-19 21:43:52,536.536 INFO    ] 2026-06-19 21:43:52
[2026-06-19 21:43:52,786.786 INFO    ] 2026-06-19 21:43:52
[2026-06-19 21:43:52,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:43:53,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:43:53,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:43:53,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:43:53,167.167 INFO    ] time= 19/06/2026 21:43:53
[2026-06-19 21:43:53,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:43:53,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:43:53,348.348 INFO    ] No existing commands found in stream
[2026-06-19 21:43:58,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:43:58,376.376 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 21:43:59,787.787 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:43:59,789.789 INFO    ] Checking for system updates...
[2026-06-19 21:43:59,825.825 INFO    ] 200
[2026-06-19 21:43:59,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:59,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:43:59,884.884 INFO    ] No update needed
[2026-06-19 21:43:59,886.886 INFO    ] Checking for camera pi updates...
[2026-06-19 21:43:59,923.923 INFO    ] 200
[2026-06-19 21:43:59,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:43:59,967.967 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:44:00,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:44:00,022.022 INFO    ] No camera update needed
[2026-06-19 21:44:00,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:44:00,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:44:00,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:44:00,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:44:02,081.081 INFO    ] ================================================
[2026-06-19 21:44:02,106.106 INFO    ] Launching Daemon at Fri Jun 19 21:44:02 IST 2026
[2026-06-19 21:44:02,118.118 INFO    ] ================================================
[2026-06-19 21:44:02,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:44:02
[2026-06-19 21:44:03,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:44:03,714.714 INFO    ] Initializing speech engine...
[2026-06-19 21:44:03,722.722 INFO    ] 2026-06-19 21:44:03
[2026-06-19 21:44:03,972.972 INFO    ] 2026-06-19 21:44:03
[2026-06-19 21:44:04,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:44:04,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:44:04,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:44:04,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:44:04,344.344 INFO    ] time= 19/06/2026 21:44:04
[2026-06-19 21:44:04,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:44:04,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:44:04,523.523 INFO    ] No existing commands found in stream
[2026-06-19 21:44:09,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:44:09,551.551 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 21:44:13,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:44:13,648.648 INFO    ] Checking for system updates...
[2026-06-19 21:44:13,688.688 INFO    ] 200
[2026-06-19 21:44:13,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:13,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:44:13,752.752 INFO    ] No update needed
[2026-06-19 21:44:13,755.755 INFO    ] Checking for camera pi updates...
[2026-06-19 21:44:13,792.792 INFO    ] 200
[2026-06-19 21:44:13,794.794 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:13,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:44:13,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:44:13,886.886 INFO    ] No camera update needed
[2026-06-19 21:44:13,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:44:13,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:44:13,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:44:13,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:44:15,948.948 INFO    ] ================================================
[2026-06-19 21:44:15,964.964 INFO    ] Launching Daemon at Fri Jun 19 21:44:15 IST 2026
[2026-06-19 21:44:15,974.974 INFO    ] ================================================
[2026-06-19 21:44:16,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:44:16
[2026-06-19 21:44:17,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:44:17,570.570 INFO    ] Initializing speech engine...
[2026-06-19 21:44:17,578.578 INFO    ] 2026-06-19 21:44:17
[2026-06-19 21:44:17,869.869 INFO    ] 2026-06-19 21:44:17
[2026-06-19 21:44:17,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:44:18,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:44:18,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:44:18,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:44:18,384.384 INFO    ] time= 19/06/2026 21:44:18
[2026-06-19 21:44:18,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:44:18,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:44:18,533.533 INFO    ] No existing commands found in stream
[2026-06-19 21:44:23,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:44:23,562.562 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-19 21:44:25,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:44:25,306.306 INFO    ] Checking for system updates...
[2026-06-19 21:44:25,345.345 INFO    ] 200
[2026-06-19 21:44:25,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:25,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:44:25,408.408 INFO    ] No update needed
[2026-06-19 21:44:25,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 21:44:25,447.447 INFO    ] 200
[2026-06-19 21:44:25,450.450 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:25,495.495 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:44:25,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:44:25,545.545 INFO    ] No camera update needed
[2026-06-19 21:44:25,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:44:25,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:44:25,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:44:25,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:44:27,600.600 INFO    ] ================================================
[2026-06-19 21:44:27,615.615 INFO    ] Launching Daemon at Fri Jun 19 21:44:27 IST 2026
[2026-06-19 21:44:27,626.626 INFO    ] ================================================
[2026-06-19 21:44:28,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:44:28
[2026-06-19 21:44:28,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:44:29,050.050 INFO    ] Initializing speech engine...
[2026-06-19 21:44:29,055.055 INFO    ] 2026-06-19 21:44:29
[2026-06-19 21:44:29,352.352 INFO    ] 2026-06-19 21:44:29
[2026-06-19 21:44:29,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:44:29,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:44:29,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:44:29,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:44:29,728.728 INFO    ] time= 19/06/2026 21:44:29
[2026-06-19 21:44:29,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:44:29,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:44:29,852.852 INFO    ] No existing commands found in stream
[2026-06-19 21:44:34,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:44:34,868.868 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 21:44:36,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:44:36,293.293 INFO    ] Checking for system updates...
[2026-06-19 21:44:36,329.329 INFO    ] 200
[2026-06-19 21:44:36,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:36,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:44:36,393.393 INFO    ] No update needed
[2026-06-19 21:44:36,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 21:44:36,429.429 INFO    ] 200
[2026-06-19 21:44:36,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:36,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:44:36,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:44:36,529.529 INFO    ] No camera update needed
[2026-06-19 21:44:36,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:44:36,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:44:36,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:44:36,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:44:38,585.585 INFO    ] ================================================
[2026-06-19 21:44:38,600.600 INFO    ] Launching Daemon at Fri Jun 19 21:44:38 IST 2026
[2026-06-19 21:44:38,611.611 INFO    ] ================================================
[2026-06-19 21:44:39,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:44:39
[2026-06-19 21:44:39,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:44:40,062.062 INFO    ] Initializing speech engine...
[2026-06-19 21:44:40,070.070 INFO    ] 2026-06-19 21:44:40
[2026-06-19 21:44:40,333.333 INFO    ] 2026-06-19 21:44:40
[2026-06-19 21:44:40,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:44:40,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:44:40,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:44:40,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:44:40,778.778 INFO    ] time= 19/06/2026 21:44:40
[2026-06-19 21:44:40,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:44:40,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:44:40,949.949 INFO    ] No existing commands found in stream
[2026-06-19 21:44:45,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:44:45,964.964 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 21:44:47,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:44:47,494.494 INFO    ] Checking for system updates...
[2026-06-19 21:44:47,530.530 INFO    ] 200
[2026-06-19 21:44:47,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:47,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:44:47,593.593 INFO    ] No update needed
[2026-06-19 21:44:47,595.595 INFO    ] Checking for camera pi updates...
[2026-06-19 21:44:47,632.632 INFO    ] 200
[2026-06-19 21:44:47,635.635 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:47,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:44:47,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:44:47,720.720 INFO    ] No camera update needed
[2026-06-19 21:44:47,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:44:47,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:44:47,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:44:47,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:44:49,776.776 INFO    ] ================================================
[2026-06-19 21:44:49,791.791 INFO    ] Launching Daemon at Fri Jun 19 21:44:49 IST 2026
[2026-06-19 21:44:49,802.802 INFO    ] ================================================
[2026-06-19 21:44:50,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:44:50
[2026-06-19 21:44:51,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:44:51,406.406 INFO    ] Initializing speech engine...
[2026-06-19 21:44:51,417.417 INFO    ] 2026-06-19 21:44:51
[2026-06-19 21:44:51,731.731 INFO    ] 2026-06-19 21:44:51
[2026-06-19 21:44:51,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:44:51,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:44:52,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:44:52,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:44:52,239.239 INFO    ] time= 19/06/2026 21:44:52
[2026-06-19 21:44:52,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:44:52,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:44:52,390.390 INFO    ] No existing commands found in stream
[2026-06-19 21:44:57,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:44:57,410.410 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 21:44:59,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:44:59,638.638 INFO    ] Checking for system updates...
[2026-06-19 21:44:59,675.675 INFO    ] 200
[2026-06-19 21:44:59,678.678 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:59,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:44:59,741.741 INFO    ] No update needed
[2026-06-19 21:44:59,744.744 INFO    ] Checking for camera pi updates...
[2026-06-19 21:44:59,782.782 INFO    ] 200
[2026-06-19 21:44:59,784.784 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:44:59,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:44:59,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:44:59,879.879 INFO    ] No camera update needed
[2026-06-19 21:44:59,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:44:59,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:44:59,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:44:59,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:45:02,992.992 INFO    ] ================================================
[2026-06-19 21:45:02,019.019 INFO    ] Launching Daemon at Fri Jun 19 21:45:02 IST 2026
[2026-06-19 21:45:02,040.040 INFO    ] ================================================
[2026-06-19 21:45:02,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:45:02
[2026-06-19 21:45:03,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:45:03,787.787 INFO    ] Initializing speech engine...
[2026-06-19 21:45:03,801.801 INFO    ] 2026-06-19 21:45:03
[2026-06-19 21:45:04,074.074 INFO    ] 2026-06-19 21:45:04
[2026-06-19 21:45:04,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:45:04,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:45:04,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:45:04,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:45:04,450.450 INFO    ] time= 19/06/2026 21:45:04
[2026-06-19 21:45:04,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:45:04,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:45:04,627.627 INFO    ] No existing commands found in stream
[2026-06-19 21:45:09,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:45:09,656.656 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-19 21:45:10,518.518 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:45:10,521.521 INFO    ] Checking for system updates...
[2026-06-19 21:45:10,562.562 INFO    ] 200
[2026-06-19 21:45:10,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:10,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:45:10,632.632 INFO    ] No update needed
[2026-06-19 21:45:10,635.635 INFO    ] Checking for camera pi updates...
[2026-06-19 21:45:10,672.672 INFO    ] 200
[2026-06-19 21:45:10,675.675 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:10,729.729 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:45:10,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:45:10,788.788 INFO    ] No camera update needed
[2026-06-19 21:45:10,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:45:10,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:45:10,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:45:10,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:45:12,847.847 INFO    ] ================================================
[2026-06-19 21:45:12,862.862 INFO    ] Launching Daemon at Fri Jun 19 21:45:12 IST 2026
[2026-06-19 21:45:12,874.874 INFO    ] ================================================
[2026-06-19 21:45:13,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:45:13
[2026-06-19 21:45:14,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:45:14,337.337 INFO    ] Initializing speech engine...
[2026-06-19 21:45:14,346.346 INFO    ] 2026-06-19 21:45:14
[2026-06-19 21:45:14,596.596 INFO    ] 2026-06-19 21:45:14
[2026-06-19 21:45:14,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:45:14,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:45:14,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:45:14,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:45:14,972.972 INFO    ] time= 19/06/2026 21:45:14
[2026-06-19 21:45:14,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:45:15,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:45:15,137.137 INFO    ] No existing commands found in stream
[2026-06-19 21:45:20,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:45:20,166.166 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-19 21:45:21,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:45:21,778.778 INFO    ] Checking for system updates...
[2026-06-19 21:45:21,818.818 INFO    ] 200
[2026-06-19 21:45:21,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:21,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:45:21,875.875 INFO    ] No update needed
[2026-06-19 21:45:21,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 21:45:21,911.911 INFO    ] 200
[2026-06-19 21:45:21,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:21,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:45:22,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:45:22,008.008 INFO    ] No camera update needed
[2026-06-19 21:45:22,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:45:22,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:45:22,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:45:22,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:45:24,065.065 INFO    ] ================================================
[2026-06-19 21:45:24,081.081 INFO    ] Launching Daemon at Fri Jun 19 21:45:24 IST 2026
[2026-06-19 21:45:24,092.092 INFO    ] ================================================
[2026-06-19 21:45:24,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:45:24
[2026-06-19 21:45:25,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:45:25,514.514 INFO    ] Initializing speech engine...
[2026-06-19 21:45:25,523.523 INFO    ] 2026-06-19 21:45:25
[2026-06-19 21:45:25,771.771 INFO    ] 2026-06-19 21:45:25
[2026-06-19 21:45:25,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:45:26,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:45:26,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:45:26,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:45:26,275.275 INFO    ] time= 19/06/2026 21:45:26
[2026-06-19 21:45:26,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:45:26,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:45:26,470.470 INFO    ] No existing commands found in stream
[2026-06-19 21:45:31,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:45:31,498.498 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-19 21:45:34,527.527 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:45:34,529.529 INFO    ] Checking for system updates...
[2026-06-19 21:45:34,566.566 INFO    ] 200
[2026-06-19 21:45:34,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:34,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:45:34,632.632 INFO    ] No update needed
[2026-06-19 21:45:34,635.635 INFO    ] Checking for camera pi updates...
[2026-06-19 21:45:34,669.669 INFO    ] 200
[2026-06-19 21:45:34,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:34,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:45:34,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:45:34,762.762 INFO    ] No camera update needed
[2026-06-19 21:45:34,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:45:34,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:45:34,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:45:34,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:45:36,824.824 INFO    ] ================================================
[2026-06-19 21:45:36,839.839 INFO    ] Launching Daemon at Fri Jun 19 21:45:36 IST 2026
[2026-06-19 21:45:36,850.850 INFO    ] ================================================
[2026-06-19 21:45:37,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:45:37
[2026-06-19 21:45:38,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:45:38,273.273 INFO    ] Initializing speech engine...
[2026-06-19 21:45:38,283.283 INFO    ] 2026-06-19 21:45:38
[2026-06-19 21:45:38,528.528 INFO    ] 2026-06-19 21:45:38
[2026-06-19 21:45:38,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:45:38,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:45:38,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:45:38,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:45:38,896.896 INFO    ] time= 19/06/2026 21:45:38
[2026-06-19 21:45:38,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:45:38,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:45:39,064.064 INFO    ] No existing commands found in stream
[2026-06-19 21:45:44,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:45:44,098.098 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 21:45:45,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:45:45,940.940 INFO    ] Checking for system updates...
[2026-06-19 21:45:45,977.977 INFO    ] 200
[2026-06-19 21:45:45,980.980 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:46,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:45:46,036.036 INFO    ] No update needed
[2026-06-19 21:45:46,039.039 INFO    ] Checking for camera pi updates...
[2026-06-19 21:45:46,076.076 INFO    ] 200
[2026-06-19 21:45:46,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:46,119.119 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:45:46,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:45:46,176.176 INFO    ] No camera update needed
[2026-06-19 21:45:46,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:45:46,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:45:46,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:45:46,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:45:48,231.231 INFO    ] ================================================
[2026-06-19 21:45:48,246.246 INFO    ] Launching Daemon at Fri Jun 19 21:45:48 IST 2026
[2026-06-19 21:45:48,257.257 INFO    ] ================================================
[2026-06-19 21:45:48,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:45:48
[2026-06-19 21:45:49,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:45:49,721.721 INFO    ] Initializing speech engine...
[2026-06-19 21:45:49,727.727 INFO    ] 2026-06-19 21:45:49
[2026-06-19 21:45:50,029.029 INFO    ] 2026-06-19 21:45:49
[2026-06-19 21:45:50,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:45:50,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:45:50,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:45:50,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:45:50,416.416 INFO    ] time= 19/06/2026 21:45:50
[2026-06-19 21:45:50,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:45:50,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:45:50,516.516 INFO    ] No existing commands found in stream
[2026-06-19 21:45:55,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:45:55,549.549 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 21:45:58,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:45:58,517.517 INFO    ] Checking for system updates...
[2026-06-19 21:45:58,554.554 INFO    ] 200
[2026-06-19 21:45:58,557.557 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:58,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:45:58,620.620 INFO    ] No update needed
[2026-06-19 21:45:58,623.623 INFO    ] Checking for camera pi updates...
[2026-06-19 21:45:58,657.657 INFO    ] 200
[2026-06-19 21:45:58,660.660 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:45:58,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:45:58,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:45:58,744.744 INFO    ] No camera update needed
[2026-06-19 21:45:58,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:45:58,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:45:58,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:45:58,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:46:00,801.801 INFO    ] ================================================
[2026-06-19 21:46:00,816.816 INFO    ] Launching Daemon at Fri Jun 19 21:46:00 IST 2026
[2026-06-19 21:46:00,827.827 INFO    ] ================================================
[2026-06-19 21:46:01,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:46:01
[2026-06-19 21:46:02,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:46:02,552.552 INFO    ] Initializing speech engine...
[2026-06-19 21:46:02,569.569 INFO    ] 2026-06-19 21:46:02
[2026-06-19 21:46:02,916.916 INFO    ] 2026-06-19 21:46:02
[2026-06-19 21:46:02,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:46:03,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:46:03,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:46:03,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:46:03,411.411 INFO    ] time= 19/06/2026 21:46:03
[2026-06-19 21:46:03,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:46:03,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:46:03,573.573 INFO    ] No existing commands found in stream
[2026-06-19 21:46:08,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:46:08,588.588 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 21:46:12,033.033 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:46:12,035.035 INFO    ] Checking for system updates...
[2026-06-19 21:46:12,076.076 INFO    ] 200
[2026-06-19 21:46:12,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:46:12,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:46:12,138.138 INFO    ] No update needed
[2026-06-19 21:46:12,140.140 INFO    ] Checking for camera pi updates...
[2026-06-19 21:46:12,174.174 INFO    ] 200
[2026-06-19 21:46:12,177.177 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:46:12,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:46:12,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:46:12,269.269 INFO    ] No camera update needed
[2026-06-19 21:46:12,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:46:12,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:46:12,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:46:12,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:46:14,326.326 INFO    ] ================================================
[2026-06-19 21:46:14,342.342 INFO    ] Launching Daemon at Fri Jun 19 21:46:14 IST 2026
[2026-06-19 21:46:14,353.353 INFO    ] ================================================
[2026-06-19 21:46:15,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:46:15
[2026-06-19 21:46:15,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:46:16,015.015 INFO    ] Initializing speech engine...
[2026-06-19 21:46:16,023.023 INFO    ] 2026-06-19 21:46:16
[2026-06-19 21:46:16,329.329 INFO    ] 2026-06-19 21:46:16
[2026-06-19 21:46:16,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:46:16,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:46:16,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:46:16,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:46:16,839.839 INFO    ] time= 19/06/2026 21:46:16
[2026-06-19 21:46:16,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:46:16,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:46:16,994.994 INFO    ] No existing commands found in stream
[2026-06-19 21:46:22,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:46:22,019.019 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 21:46:23,031.031 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:46:23,034.034 INFO    ] Checking for system updates...
[2026-06-19 21:46:23,071.071 INFO    ] 200
[2026-06-19 21:46:23,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:46:23,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:46:23,136.136 INFO    ] No update needed
[2026-06-19 21:46:23,138.138 INFO    ] Checking for camera pi updates...
[2026-06-19 21:46:23,172.172 INFO    ] 200
[2026-06-19 21:46:23,174.174 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:46:23,235.235 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:46:23,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:46:23,284.284 INFO    ] No camera update needed
[2026-06-19 21:46:23,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:46:23,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:46:23,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:46:23,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:46:25,341.341 INFO    ] ================================================
[2026-06-19 21:46:25,357.357 INFO    ] Launching Daemon at Fri Jun 19 21:46:25 IST 2026
[2026-06-19 21:46:25,367.367 INFO    ] ================================================
[2026-06-19 21:46:25,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:46:25
[2026-06-19 21:46:26,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:46:26,850.850 INFO    ] Initializing speech engine...
[2026-06-19 21:46:26,856.856 INFO    ] 2026-06-19 21:46:26
[2026-06-19 21:46:27,111.111 INFO    ] 2026-06-19 21:46:27
[2026-06-19 21:46:27,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:46:27,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:46:27,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:46:27,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:46:27,559.559 INFO    ] time= 19/06/2026 21:46:27
[2026-06-19 21:46:27,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:46:27,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:46:27,682.682 INFO    ] No existing commands found in stream
[2026-06-19 21:46:32,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:46:32,700.700 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 21:46:34,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:46:34,478.478 INFO    ] Checking for system updates...
[2026-06-19 21:46:34,514.514 INFO    ] 200
[2026-06-19 21:46:34,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:46:34,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:46:34,580.580 INFO    ] No update needed
[2026-06-19 21:46:34,582.582 INFO    ] Checking for camera pi updates...
[2026-06-19 21:46:34,616.616 INFO    ] 200
[2026-06-19 21:46:34,618.618 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:46:34,665.665 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:46:34,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:46:34,822.822 INFO    ] No camera update needed
[2026-06-19 21:46:34,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:46:34,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:46:34,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:46:34,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:46:36,880.880 INFO    ] ================================================
[2026-06-19 21:46:36,895.895 INFO    ] Launching Daemon at Fri Jun 19 21:46:36 IST 2026
[2026-06-19 21:46:36,906.906 INFO    ] ================================================
[2026-06-19 21:46:37,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:46:37
[2026-06-19 21:46:38,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:46:38,386.386 INFO    ] Initializing speech engine...
[2026-06-19 21:46:38,400.400 INFO    ] 2026-06-19 21:46:38
[2026-06-19 21:46:38,682.682 INFO    ] 2026-06-19 21:46:38
[2026-06-19 21:46:38,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:46:38,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:46:38,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:46:39,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:46:39,225.225 INFO    ] time= 19/06/2026 21:46:39
[2026-06-19 21:46:39,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:46:39,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:46:39,378.378 INFO    ] No existing commands found in stream
[2026-06-19 21:46:44,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:46:44,398.398 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 21:46:48,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:46:48,757.757 INFO    ] Checking for system updates...
[2026-06-19 21:46:48,800.800 INFO    ] 200
[2026-06-19 21:46:48,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:46:48,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:46:48,861.861 INFO    ] No update needed
[2026-06-19 21:46:48,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 21:46:48,900.900 INFO    ] 200
[2026-06-19 21:46:48,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:46:48,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:46:48,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:46:48,992.992 INFO    ] No camera update needed
[2026-06-19 21:46:48,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:46:48,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:46:49,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:46:49,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:46:51,047.047 INFO    ] ================================================
[2026-06-19 21:46:51,062.062 INFO    ] Launching Daemon at Fri Jun 19 21:46:51 IST 2026
[2026-06-19 21:46:51,073.073 INFO    ] ================================================
[2026-06-19 21:46:51,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:46:51
[2026-06-19 21:46:52,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:46:52,484.484 INFO    ] Initializing speech engine...
[2026-06-19 21:46:52,493.493 INFO    ] 2026-06-19 21:46:52
[2026-06-19 21:46:52,767.767 INFO    ] 2026-06-19 21:46:52
[2026-06-19 21:46:52,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:46:53,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:46:53,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:46:53,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:46:53,276.276 INFO    ] time= 19/06/2026 21:46:53
[2026-06-19 21:46:53,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:46:53,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:46:53,432.432 INFO    ] No existing commands found in stream
[2026-06-19 21:46:58,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:46:58,473.473 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 21:47:00,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:47:00,040.040 INFO    ] Checking for system updates...
[2026-06-19 21:47:00,077.077 INFO    ] 200
[2026-06-19 21:47:00,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:00,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:47:00,143.143 INFO    ] No update needed
[2026-06-19 21:47:00,145.145 INFO    ] Checking for camera pi updates...
[2026-06-19 21:47:00,179.179 INFO    ] 200
[2026-06-19 21:47:00,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:00,228.228 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:47:00,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:47:00,281.281 INFO    ] No camera update needed
[2026-06-19 21:47:00,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:47:00,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:47:00,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:47:00,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:47:02,342.342 INFO    ] ================================================
[2026-06-19 21:47:02,366.366 INFO    ] Launching Daemon at Fri Jun 19 21:47:02 IST 2026
[2026-06-19 21:47:02,385.385 INFO    ] ================================================
[2026-06-19 21:47:03,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:47:03
[2026-06-19 21:47:03,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:47:03,955.955 INFO    ] Initializing speech engine...
[2026-06-19 21:47:03,971.971 INFO    ] 2026-06-19 21:47:03
[2026-06-19 21:47:04,256.256 INFO    ] 2026-06-19 21:47:04
[2026-06-19 21:47:04,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:47:04,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:47:04,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:47:04,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:47:04,678.678 INFO    ] time= 19/06/2026 21:47:04
[2026-06-19 21:47:04,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:47:04,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:47:04,764.764 INFO    ] No existing commands found in stream
[2026-06-19 21:47:09,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:47:09,780.780 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 21:47:11,282.282 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:47:11,284.284 INFO    ] Checking for system updates...
[2026-06-19 21:47:11,320.320 INFO    ] 200
[2026-06-19 21:47:11,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:11,377.377 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:47:11,379.379 INFO    ] No update needed
[2026-06-19 21:47:11,382.382 INFO    ] Checking for camera pi updates...
[2026-06-19 21:47:11,416.416 INFO    ] 200
[2026-06-19 21:47:11,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:11,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:47:11,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:47:11,511.511 INFO    ] No camera update needed
[2026-06-19 21:47:11,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:47:11,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:47:11,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:47:11,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:47:13,566.566 INFO    ] ================================================
[2026-06-19 21:47:13,582.582 INFO    ] Launching Daemon at Fri Jun 19 21:47:13 IST 2026
[2026-06-19 21:47:13,593.593 INFO    ] ================================================
[2026-06-19 21:47:14,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:47:14
[2026-06-19 21:47:14,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:47:15,089.089 INFO    ] Initializing speech engine...
[2026-06-19 21:47:15,096.096 INFO    ] 2026-06-19 21:47:15
[2026-06-19 21:47:15,385.385 INFO    ] 2026-06-19 21:47:15
[2026-06-19 21:47:15,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:47:15,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:47:15,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:47:15,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:47:15,854.854 INFO    ] time= 19/06/2026 21:47:15
[2026-06-19 21:47:15,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:47:15,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:47:16,006.006 INFO    ] No existing commands found in stream
[2026-06-19 21:47:21,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:47:21,035.035 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-19 21:47:24,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:47:24,951.951 INFO    ] Checking for system updates...
[2026-06-19 21:47:24,999.999 INFO    ] 200
[2026-06-19 21:47:25,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:25,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:47:25,087.087 INFO    ] No update needed
[2026-06-19 21:47:25,089.089 INFO    ] Checking for camera pi updates...
[2026-06-19 21:47:25,123.123 INFO    ] 200
[2026-06-19 21:47:25,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:25,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:47:25,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:47:25,222.222 INFO    ] No camera update needed
[2026-06-19 21:47:25,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:47:25,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:47:25,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:47:25,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:47:27,278.278 INFO    ] ================================================
[2026-06-19 21:47:27,293.293 INFO    ] Launching Daemon at Fri Jun 19 21:47:27 IST 2026
[2026-06-19 21:47:27,304.304 INFO    ] ================================================
[2026-06-19 21:47:27,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:47:27
[2026-06-19 21:47:28,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:47:28,899.899 INFO    ] Initializing speech engine...
[2026-06-19 21:47:28,907.907 INFO    ] 2026-06-19 21:47:28
[2026-06-19 21:47:29,178.178 INFO    ] 2026-06-19 21:47:29
[2026-06-19 21:47:29,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:47:29,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:47:29,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:47:29,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:47:29,633.633 INFO    ] time= 19/06/2026 21:47:29
[2026-06-19 21:47:29,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:47:29,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:47:29,805.805 INFO    ] No existing commands found in stream
[2026-06-19 21:47:34,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:47:34,821.821 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 21:47:38,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:47:38,447.447 INFO    ] Checking for system updates...
[2026-06-19 21:47:38,487.487 INFO    ] 200
[2026-06-19 21:47:38,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:38,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:47:38,549.549 INFO    ] No update needed
[2026-06-19 21:47:38,552.552 INFO    ] Checking for camera pi updates...
[2026-06-19 21:47:38,591.591 INFO    ] 200
[2026-06-19 21:47:38,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:38,642.642 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:47:38,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:47:38,694.694 INFO    ] No camera update needed
[2026-06-19 21:47:38,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:47:38,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:47:38,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:47:38,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:47:40,749.749 INFO    ] ================================================
[2026-06-19 21:47:40,764.764 INFO    ] Launching Daemon at Fri Jun 19 21:47:40 IST 2026
[2026-06-19 21:47:40,775.775 INFO    ] ================================================
[2026-06-19 21:47:41,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:47:41
[2026-06-19 21:47:41,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:47:42,221.221 INFO    ] Initializing speech engine...
[2026-06-19 21:47:42,230.230 INFO    ] 2026-06-19 21:47:42
[2026-06-19 21:47:42,523.523 INFO    ] 2026-06-19 21:47:42
[2026-06-19 21:47:42,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:47:42,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:47:42,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:47:42,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:47:42,900.900 INFO    ] time= 19/06/2026 21:47:42
[2026-06-19 21:47:42,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:47:42,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:47:43,024.024 INFO    ] No existing commands found in stream
[2026-06-19 21:47:48,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:47:48,040.040 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 21:47:50,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:47:50,952.952 INFO    ] Checking for system updates...
[2026-06-19 21:47:50,988.988 INFO    ] 200
[2026-06-19 21:47:50,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:51,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:47:51,045.045 INFO    ] No update needed
[2026-06-19 21:47:51,048.048 INFO    ] Checking for camera pi updates...
[2026-06-19 21:47:51,083.083 INFO    ] 200
[2026-06-19 21:47:51,086.086 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:47:51,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:47:51,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:47:51,195.195 INFO    ] No camera update needed
[2026-06-19 21:47:51,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:47:51,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:47:51,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:47:51,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:47:53,250.250 INFO    ] ================================================
[2026-06-19 21:47:53,266.266 INFO    ] Launching Daemon at Fri Jun 19 21:47:53 IST 2026
[2026-06-19 21:47:53,276.276 INFO    ] ================================================
[2026-06-19 21:47:53,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:47:53
[2026-06-19 21:47:54,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:47:54,729.729 INFO    ] Initializing speech engine...
[2026-06-19 21:47:54,735.735 INFO    ] 2026-06-19 21:47:54
[2026-06-19 21:47:55,033.033 INFO    ] 2026-06-19 21:47:54
[2026-06-19 21:47:55,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:47:55,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:47:55,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:47:55,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:47:55,384.384 INFO    ] time= 19/06/2026 21:47:55
[2026-06-19 21:47:55,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:47:55,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:47:55,509.509 INFO    ] No existing commands found in stream
[2026-06-19 21:48:00,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:48:00,537.537 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-19 21:48:04,808.808 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:48:04,811.811 INFO    ] Checking for system updates...
[2026-06-19 21:48:04,849.849 INFO    ] 200
[2026-06-19 21:48:04,852.852 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:04,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:48:04,906.906 INFO    ] No update needed
[2026-06-19 21:48:04,909.909 INFO    ] Checking for camera pi updates...
[2026-06-19 21:48:04,949.949 INFO    ] 200
[2026-06-19 21:48:04,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:04,996.996 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:48:05,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:48:05,052.052 INFO    ] No camera update needed
[2026-06-19 21:48:05,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:48:05,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:48:05,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:48:05,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:48:07,109.109 INFO    ] ================================================
[2026-06-19 21:48:07,124.124 INFO    ] Launching Daemon at Fri Jun 19 21:48:07 IST 2026
[2026-06-19 21:48:07,135.135 INFO    ] ================================================
[2026-06-19 21:48:07,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:48:07
[2026-06-19 21:48:08,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:48:08,603.603 INFO    ] Initializing speech engine...
[2026-06-19 21:48:08,611.611 INFO    ] 2026-06-19 21:48:08
[2026-06-19 21:48:08,873.873 INFO    ] 2026-06-19 21:48:08
[2026-06-19 21:48:08,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:48:09,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:48:09,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:48:09,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:48:09,338.338 INFO    ] time= 19/06/2026 21:48:09
[2026-06-19 21:48:09,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:48:09,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:48:09,485.485 INFO    ] No existing commands found in stream
[2026-06-19 21:48:14,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:48:14,500.500 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 21:48:18,612.612 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:48:18,615.615 INFO    ] Checking for system updates...
[2026-06-19 21:48:18,651.651 INFO    ] 200
[2026-06-19 21:48:18,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:18,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:48:18,709.709 INFO    ] No update needed
[2026-06-19 21:48:18,714.714 INFO    ] Checking for camera pi updates...
[2026-06-19 21:48:18,763.763 INFO    ] 200
[2026-06-19 21:48:18,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:18,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:48:18,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:48:18,857.857 INFO    ] No camera update needed
[2026-06-19 21:48:18,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:48:18,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:48:18,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:48:18,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:48:20,915.915 INFO    ] ================================================
[2026-06-19 21:48:20,931.931 INFO    ] Launching Daemon at Fri Jun 19 21:48:20 IST 2026
[2026-06-19 21:48:20,942.942 INFO    ] ================================================
[2026-06-19 21:48:21,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:48:21
[2026-06-19 21:48:22,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:48:22,518.518 INFO    ] Initializing speech engine...
[2026-06-19 21:48:22,532.532 INFO    ] 2026-06-19 21:48:22
[2026-06-19 21:48:22,813.813 INFO    ] 2026-06-19 21:48:22
[2026-06-19 21:48:22,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:48:23,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:48:23,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:48:23,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:48:23,276.276 INFO    ] time= 19/06/2026 21:48:23
[2026-06-19 21:48:23,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:48:23,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:48:23,429.429 INFO    ] No existing commands found in stream
[2026-06-19 21:48:28,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:48:28,445.445 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 21:48:32,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:48:32,842.842 INFO    ] Checking for system updates...
[2026-06-19 21:48:32,892.892 INFO    ] 200
[2026-06-19 21:48:32,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:32,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:48:32,955.955 INFO    ] No update needed
[2026-06-19 21:48:32,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 21:48:32,993.993 INFO    ] 200
[2026-06-19 21:48:32,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:33,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:48:33,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:48:33,091.091 INFO    ] No camera update needed
[2026-06-19 21:48:33,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:48:33,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:48:33,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:48:33,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:48:35,149.149 INFO    ] ================================================
[2026-06-19 21:48:35,165.165 INFO    ] Launching Daemon at Fri Jun 19 21:48:35 IST 2026
[2026-06-19 21:48:35,176.176 INFO    ] ================================================
[2026-06-19 21:48:35,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:48:35
[2026-06-19 21:48:36,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:48:36,633.633 INFO    ] Initializing speech engine...
[2026-06-19 21:48:36,644.644 INFO    ] 2026-06-19 21:48:36
[2026-06-19 21:48:36,903.903 INFO    ] 2026-06-19 21:48:36
[2026-06-19 21:48:36,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:48:37,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:48:37,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:48:37,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:48:37,377.377 INFO    ] time= 19/06/2026 21:48:37
[2026-06-19 21:48:37,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:48:37,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:48:37,510.510 INFO    ] No existing commands found in stream
[2026-06-19 21:48:42,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:48:42,525.525 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 21:48:44,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:48:44,297.297 INFO    ] Checking for system updates...
[2026-06-19 21:48:44,335.335 INFO    ] 200
[2026-06-19 21:48:44,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:44,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:48:44,402.402 INFO    ] No update needed
[2026-06-19 21:48:44,404.404 INFO    ] Checking for camera pi updates...
[2026-06-19 21:48:44,439.439 INFO    ] 200
[2026-06-19 21:48:44,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:44,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:48:44,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:48:44,635.635 INFO    ] No camera update needed
[2026-06-19 21:48:44,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:48:44,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:48:44,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:48:44,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:48:46,694.694 INFO    ] ================================================
[2026-06-19 21:48:46,710.710 INFO    ] Launching Daemon at Fri Jun 19 21:48:46 IST 2026
[2026-06-19 21:48:46,720.720 INFO    ] ================================================
[2026-06-19 21:48:47,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:48:47
[2026-06-19 21:48:48,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:48:48,333.333 INFO    ] Initializing speech engine...
[2026-06-19 21:48:48,342.342 INFO    ] 2026-06-19 21:48:48
[2026-06-19 21:48:48,613.613 INFO    ] 2026-06-19 21:48:48
[2026-06-19 21:48:48,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:48:48,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:48:48,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:48:49,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:48:49,120.120 INFO    ] time= 19/06/2026 21:48:49
[2026-06-19 21:48:49,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:48:49,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:48:49,318.318 INFO    ] No existing commands found in stream
[2026-06-19 21:48:54,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:48:54,356.356 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 21:48:57,830.830 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:48:57,833.833 INFO    ] Checking for system updates...
[2026-06-19 21:48:57,870.870 INFO    ] 200
[2026-06-19 21:48:57,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:57,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:48:57,929.929 INFO    ] No update needed
[2026-06-19 21:48:57,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 21:48:57,966.966 INFO    ] 200
[2026-06-19 21:48:57,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:48:58,012.012 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:48:58,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:48:58,064.064 INFO    ] No camera update needed
[2026-06-19 21:48:58,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:48:58,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:48:58,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:48:58,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:49:00,122.122 INFO    ] ================================================
[2026-06-19 21:49:00,137.137 INFO    ] Launching Daemon at Fri Jun 19 21:49:00 IST 2026
[2026-06-19 21:49:00,148.148 INFO    ] ================================================
[2026-06-19 21:49:00,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:49:00
[2026-06-19 21:49:01,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:49:01,996.996 INFO    ] Initializing speech engine...
[2026-06-19 21:49:02,000.000 INFO    ] 2026-06-19 21:49:01
[2026-06-19 21:49:02,282.282 INFO    ] 2026-06-19 21:49:02
[2026-06-19 21:49:02,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:49:02,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:49:02,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:49:02,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:49:02,736.736 INFO    ] time= 19/06/2026 21:49:02
[2026-06-19 21:49:02,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:49:02,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:49:02,914.914 INFO    ] No existing commands found in stream
[2026-06-19 21:49:07,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:49:07,942.942 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 21:49:12,313.313 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:49:12,316.316 INFO    ] Checking for system updates...
[2026-06-19 21:49:12,353.353 INFO    ] 200
[2026-06-19 21:49:12,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:49:12,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:49:12,415.415 INFO    ] No update needed
[2026-06-19 21:49:12,418.418 INFO    ] Checking for camera pi updates...
[2026-06-19 21:49:12,453.453 INFO    ] 200
[2026-06-19 21:49:12,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:49:12,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:49:12,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:49:12,537.537 INFO    ] No camera update needed
[2026-06-19 21:49:12,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:49:12,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:49:12,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:49:12,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:49:14,592.592 INFO    ] ================================================
[2026-06-19 21:49:14,607.607 INFO    ] Launching Daemon at Fri Jun 19 21:49:14 IST 2026
[2026-06-19 21:49:14,617.617 INFO    ] ================================================
[2026-06-19 21:49:15,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:49:15
[2026-06-19 21:49:15,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:49:16,077.077 INFO    ] Initializing speech engine...
[2026-06-19 21:49:16,086.086 INFO    ] 2026-06-19 21:49:16
[2026-06-19 21:49:16,344.344 INFO    ] 2026-06-19 21:49:16
[2026-06-19 21:49:16,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:49:16,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:49:16,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:49:16,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:49:16,803.803 INFO    ] time= 19/06/2026 21:49:16
[2026-06-19 21:49:16,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:49:16,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:49:16,951.951 INFO    ] No existing commands found in stream
[2026-06-19 21:49:21,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:49:21,966.966 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 21:49:22,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:49:22,452.452 INFO    ] Checking for system updates...
[2026-06-19 21:49:22,487.487 INFO    ] 200
[2026-06-19 21:49:22,490.490 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:49:22,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:49:22,545.545 INFO    ] No update needed
[2026-06-19 21:49:22,547.547 INFO    ] Checking for camera pi updates...
[2026-06-19 21:49:22,582.582 INFO    ] 200
[2026-06-19 21:49:22,584.584 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:49:22,629.629 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:49:22,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:49:22,685.685 INFO    ] No camera update needed
[2026-06-19 21:49:22,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:49:22,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:49:22,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:49:22,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:49:24,742.742 INFO    ] ================================================
[2026-06-19 21:49:24,757.757 INFO    ] Launching Daemon at Fri Jun 19 21:49:24 IST 2026
[2026-06-19 21:49:24,767.767 INFO    ] ================================================
[2026-06-19 21:49:25,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:49:25
[2026-06-19 21:49:25,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:49:26,211.211 INFO    ] Initializing speech engine...
[2026-06-19 21:49:26,220.220 INFO    ] 2026-06-19 21:49:26
[2026-06-19 21:49:26,472.472 INFO    ] 2026-06-19 21:49:26
[2026-06-19 21:49:26,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:49:26,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:49:26,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:49:26,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:49:26,957.957 INFO    ] time= 19/06/2026 21:49:26
[2026-06-19 21:49:27,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:49:27,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:49:27,100.100 INFO    ] No existing commands found in stream
[2026-06-19 21:49:32,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:49:32,115.115 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 21:49:34,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:49:34,014.014 INFO    ] Checking for system updates...
[2026-06-19 21:49:34,050.050 INFO    ] 200
[2026-06-19 21:49:34,052.052 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:49:34,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:49:34,108.108 INFO    ] No update needed
[2026-06-19 21:49:34,111.111 INFO    ] Checking for camera pi updates...
[2026-06-19 21:49:34,158.158 INFO    ] 200
[2026-06-19 21:49:34,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:49:34,202.202 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:49:34,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:49:34,254.254 INFO    ] No camera update needed
[2026-06-19 21:49:34,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:49:34,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:49:34,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:49:34,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:49:36,309.309 INFO    ] ================================================
[2026-06-19 21:49:36,324.324 INFO    ] Launching Daemon at Fri Jun 19 21:49:36 IST 2026
[2026-06-19 21:49:36,334.334 INFO    ] ================================================
[2026-06-19 21:49:36,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:49:36
[2026-06-19 21:49:37,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:49:37,796.796 INFO    ] Initializing speech engine...
[2026-06-19 21:49:37,804.804 INFO    ] 2026-06-19 21:49:37
[2026-06-19 21:49:38,063.063 INFO    ] 2026-06-19 21:49:38
[2026-06-19 21:49:38,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:49:38,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:49:38,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:49:38,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:49:38,523.523 INFO    ] time= 19/06/2026 21:49:38
[2026-06-19 21:49:38,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:49:38,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:49:38,669.669 INFO    ] No existing commands found in stream
[2026-06-19 21:49:43,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:49:43,680.680 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 21:49:44,347.347 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:49:44,350.350 INFO    ] Checking for system updates...
[2026-06-19 21:49:44,397.397 INFO    ] 200
[2026-06-19 21:49:44,399.399 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 21:49:44,402.402 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 21:49:44,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 21:49:44,461.461 INFO    ] 200
[2026-06-19 21:49:44,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 21:49:44,466.466 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 21:49:44,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:49:44,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:49:44,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:49:44,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:49:46,526.526 INFO    ] ================================================
[2026-06-19 21:49:46,546.546 INFO    ] Launching Daemon at Fri Jun 19 21:49:46 IST 2026
[2026-06-19 21:49:46,558.558 INFO    ] ================================================
[2026-06-19 21:49:47,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:49:47
[2026-06-19 21:49:47,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:49:48,149.149 INFO    ] Initializing speech engine...
[2026-06-19 21:49:48,155.155 INFO    ] 2026-06-19 21:49:48
[2026-06-19 21:49:48,416.416 INFO    ] 2026-06-19 21:49:48
[2026-06-19 21:49:48,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:49:48,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:49:48,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:49:48,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:49:48,918.918 INFO    ] time= 19/06/2026 21:49:48
[2026-06-19 21:49:48,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:49:48,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:49:49,055.055 INFO    ] No existing commands found in stream
[2026-06-19 21:49:54,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:49:54,070.070 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-19 21:49:55,003.003 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:49:55,006.006 INFO    ] Checking for system updates...
[2026-06-19 21:49:55,042.042 INFO    ] 200
[2026-06-19 21:49:55,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:49:55,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:49:55,101.101 INFO    ] No update needed
[2026-06-19 21:49:55,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 21:49:55,142.142 INFO    ] 200
[2026-06-19 21:49:55,144.144 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:49:55,189.189 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:49:55,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:49:55,240.240 INFO    ] No camera update needed
[2026-06-19 21:49:55,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:49:55,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:49:55,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:49:55,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:49:57,298.298 INFO    ] ================================================
[2026-06-19 21:49:57,313.313 INFO    ] Launching Daemon at Fri Jun 19 21:49:57 IST 2026
[2026-06-19 21:49:57,324.324 INFO    ] ================================================
[2026-06-19 21:49:57,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:49:57
[2026-06-19 21:49:58,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:49:58,812.812 INFO    ] Initializing speech engine...
[2026-06-19 21:49:58,821.821 INFO    ] 2026-06-19 21:49:58
[2026-06-19 21:49:59,081.081 INFO    ] 2026-06-19 21:49:59
[2026-06-19 21:49:59,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:49:59,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:49:59,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:49:59,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:49:59,454.454 INFO    ] time= 19/06/2026 21:49:59
[2026-06-19 21:49:59,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:49:59,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:49:59,623.623 INFO    ] No existing commands found in stream
[2026-06-19 21:50:04,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:50:04,650.650 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 21:50:08,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:50:08,860.860 INFO    ] Checking for system updates...
[2026-06-19 21:50:08,896.896 INFO    ] 200
[2026-06-19 21:50:08,899.899 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:08,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:50:08,961.961 INFO    ] No update needed
[2026-06-19 21:50:08,964.964 INFO    ] Checking for camera pi updates...
[2026-06-19 21:50:08,998.998 INFO    ] 200
[2026-06-19 21:50:09,001.001 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:09,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:50:09,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:50:09,095.095 INFO    ] No camera update needed
[2026-06-19 21:50:09,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:50:09,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:50:09,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:50:09,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:50:11,152.152 INFO    ] ================================================
[2026-06-19 21:50:11,168.168 INFO    ] Launching Daemon at Fri Jun 19 21:50:11 IST 2026
[2026-06-19 21:50:11,179.179 INFO    ] ================================================
[2026-06-19 21:50:11,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:50:11
[2026-06-19 21:50:12,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:50:12,768.768 INFO    ] Initializing speech engine...
[2026-06-19 21:50:12,776.776 INFO    ] 2026-06-19 21:50:12
[2026-06-19 21:50:13,074.074 INFO    ] 2026-06-19 21:50:13
[2026-06-19 21:50:13,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:50:13,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:50:13,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:50:13,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:50:13,556.556 INFO    ] time= 19/06/2026 21:50:13
[2026-06-19 21:50:13,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:50:13,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:50:13,741.741 INFO    ] No existing commands found in stream
[2026-06-19 21:50:18,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:50:18,767.767 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 21:50:19,395.395 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:50:19,398.398 INFO    ] Checking for system updates...
[2026-06-19 21:50:19,436.436 INFO    ] 200
[2026-06-19 21:50:19,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:19,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:50:19,494.494 INFO    ] No update needed
[2026-06-19 21:50:19,497.497 INFO    ] Checking for camera pi updates...
[2026-06-19 21:50:19,536.536 INFO    ] 200
[2026-06-19 21:50:19,539.539 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:19,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:50:19,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:50:19,643.643 INFO    ] No camera update needed
[2026-06-19 21:50:19,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:50:19,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:50:19,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:50:19,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:50:21,703.703 INFO    ] ================================================
[2026-06-19 21:50:21,718.718 INFO    ] Launching Daemon at Fri Jun 19 21:50:21 IST 2026
[2026-06-19 21:50:21,730.730 INFO    ] ================================================
[2026-06-19 21:50:22,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:50:22
[2026-06-19 21:50:22,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:50:23,139.139 INFO    ] Initializing speech engine...
[2026-06-19 21:50:23,146.146 INFO    ] 2026-06-19 21:50:23
[2026-06-19 21:50:23,420.420 INFO    ] 2026-06-19 21:50:23
[2026-06-19 21:50:23,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:50:23,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:50:23,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:50:23,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:50:23,797.797 INFO    ] time= 19/06/2026 21:50:23
[2026-06-19 21:50:23,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:50:23,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:50:23,955.955 INFO    ] No existing commands found in stream
[2026-06-19 21:50:28,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:50:28,988.988 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 21:50:29,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:50:29,902.902 INFO    ] Checking for system updates...
[2026-06-19 21:50:29,942.942 INFO    ] 200
[2026-06-19 21:50:29,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:29,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:50:30,000.000 INFO    ] No update needed
[2026-06-19 21:50:30,002.002 INFO    ] Checking for camera pi updates...
[2026-06-19 21:50:30,036.036 INFO    ] 200
[2026-06-19 21:50:30,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:30,079.079 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:50:30,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:50:30,128.128 INFO    ] No camera update needed
[2026-06-19 21:50:30,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:50:30,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:50:30,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:50:30,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:50:32,185.185 INFO    ] ================================================
[2026-06-19 21:50:32,201.201 INFO    ] Launching Daemon at Fri Jun 19 21:50:32 IST 2026
[2026-06-19 21:50:32,212.212 INFO    ] ================================================
[2026-06-19 21:50:32,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:50:32
[2026-06-19 21:50:33,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:50:33,669.669 INFO    ] Initializing speech engine...
[2026-06-19 21:50:33,676.676 INFO    ] 2026-06-19 21:50:33
[2026-06-19 21:50:33,969.969 INFO    ] 2026-06-19 21:50:33
[2026-06-19 21:50:34,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:50:34,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:50:34,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:50:34,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:50:34,346.346 INFO    ] time= 19/06/2026 21:50:34
[2026-06-19 21:50:34,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:50:34,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:50:34,472.472 INFO    ] No existing commands found in stream
[2026-06-19 21:50:39,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:50:39,487.487 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 21:50:43,472.472 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:50:43,474.474 INFO    ] Checking for system updates...
[2026-06-19 21:50:43,514.514 INFO    ] 200
[2026-06-19 21:50:43,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:43,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:50:43,572.572 INFO    ] No update needed
[2026-06-19 21:50:43,575.575 INFO    ] Checking for camera pi updates...
[2026-06-19 21:50:43,610.610 INFO    ] 200
[2026-06-19 21:50:43,613.613 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:43,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:50:43,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:50:43,715.715 INFO    ] No camera update needed
[2026-06-19 21:50:43,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:50:43,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:50:43,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:50:43,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:50:45,776.776 INFO    ] ================================================
[2026-06-19 21:50:45,792.792 INFO    ] Launching Daemon at Fri Jun 19 21:50:45 IST 2026
[2026-06-19 21:50:45,804.804 INFO    ] ================================================
[2026-06-19 21:50:46,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:50:46
[2026-06-19 21:50:46,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:50:47,267.267 INFO    ] Initializing speech engine...
[2026-06-19 21:50:47,276.276 INFO    ] 2026-06-19 21:50:47
[2026-06-19 21:50:47,528.528 INFO    ] 2026-06-19 21:50:47
[2026-06-19 21:50:47,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:50:47,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:50:47,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:50:47,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:50:48,008.008 INFO    ] time= 19/06/2026 21:50:47
[2026-06-19 21:50:48,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:50:48,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:50:48,154.154 INFO    ] No existing commands found in stream
[2026-06-19 21:50:53,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:50:53,169.169 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 21:50:54,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:50:54,734.734 INFO    ] Checking for system updates...
[2026-06-19 21:50:54,770.770 INFO    ] 200
[2026-06-19 21:50:54,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:54,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:50:54,834.834 INFO    ] No update needed
[2026-06-19 21:50:54,837.837 INFO    ] Checking for camera pi updates...
[2026-06-19 21:50:54,871.871 INFO    ] 200
[2026-06-19 21:50:54,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:50:54,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:50:55,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:50:55,069.069 INFO    ] No camera update needed
[2026-06-19 21:50:55,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:50:55,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:50:55,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:50:55,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:50:57,126.126 INFO    ] ================================================
[2026-06-19 21:50:57,141.141 INFO    ] Launching Daemon at Fri Jun 19 21:50:57 IST 2026
[2026-06-19 21:50:57,153.153 INFO    ] ================================================
[2026-06-19 21:50:57,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:50:57
[2026-06-19 21:50:58,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:50:58,554.554 INFO    ] Initializing speech engine...
[2026-06-19 21:50:58,569.569 INFO    ] 2026-06-19 21:50:58
[2026-06-19 21:50:58,833.833 INFO    ] 2026-06-19 21:50:58
[2026-06-19 21:50:58,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:50:59,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:50:59,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:50:59,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:50:59,211.211 INFO    ] time= 19/06/2026 21:50:59
[2026-06-19 21:50:59,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:50:59,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:50:59,389.389 INFO    ] No existing commands found in stream
[2026-06-19 21:51:04,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:51:04,422.422 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 21:51:05,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:51:05,120.120 INFO    ] Checking for system updates...
[2026-06-19 21:51:05,157.157 INFO    ] 200
[2026-06-19 21:51:05,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:05,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:51:05,213.213 INFO    ] No update needed
[2026-06-19 21:51:05,216.216 INFO    ] Checking for camera pi updates...
[2026-06-19 21:51:05,253.253 INFO    ] 200
[2026-06-19 21:51:05,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:05,297.297 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:51:05,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:51:05,348.348 INFO    ] No camera update needed
[2026-06-19 21:51:05,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:51:05,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:51:05,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:51:05,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:51:07,408.408 INFO    ] ================================================
[2026-06-19 21:51:07,423.423 INFO    ] Launching Daemon at Fri Jun 19 21:51:07 IST 2026
[2026-06-19 21:51:07,434.434 INFO    ] ================================================
[2026-06-19 21:51:08,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:51:08
[2026-06-19 21:51:08,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:51:08,879.879 INFO    ] Initializing speech engine...
[2026-06-19 21:51:08,885.885 INFO    ] 2026-06-19 21:51:08
[2026-06-19 21:51:09,136.136 INFO    ] 2026-06-19 21:51:09
[2026-06-19 21:51:09,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:51:09,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:51:09,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:51:09,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:51:09,514.514 INFO    ] time= 19/06/2026 21:51:09
[2026-06-19 21:51:09,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:51:09,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:51:09,680.680 INFO    ] No existing commands found in stream
[2026-06-19 21:51:14,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:51:14,708.708 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 21:51:15,728.728 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:51:15,730.730 INFO    ] Checking for system updates...
[2026-06-19 21:51:15,768.768 INFO    ] 200
[2026-06-19 21:51:15,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:15,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:51:15,834.834 INFO    ] No update needed
[2026-06-19 21:51:15,837.837 INFO    ] Checking for camera pi updates...
[2026-06-19 21:51:15,873.873 INFO    ] 200
[2026-06-19 21:51:15,876.876 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:15,918.918 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:51:15,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:51:15,979.979 INFO    ] No camera update needed
[2026-06-19 21:51:15,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:51:15,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:51:15,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:51:15,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:51:18,040.040 INFO    ] ================================================
[2026-06-19 21:51:18,056.056 INFO    ] Launching Daemon at Fri Jun 19 21:51:18 IST 2026
[2026-06-19 21:51:18,066.066 INFO    ] ================================================
[2026-06-19 21:51:18,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:51:18
[2026-06-19 21:51:19,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:51:19,525.525 INFO    ] Initializing speech engine...
[2026-06-19 21:51:19,534.534 INFO    ] 2026-06-19 21:51:19
[2026-06-19 21:51:19,818.818 INFO    ] 2026-06-19 21:51:19
[2026-06-19 21:51:19,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:51:20,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:51:20,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:51:20,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:51:20,162.162 INFO    ] time= 19/06/2026 21:51:20
[2026-06-19 21:51:20,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:51:20,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:51:20,276.276 INFO    ] No existing commands found in stream
[2026-06-19 21:51:25,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:51:25,304.304 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-19 21:51:27,911.911 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:51:27,913.913 INFO    ] Checking for system updates...
[2026-06-19 21:51:27,954.954 INFO    ] 200
[2026-06-19 21:51:27,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:28,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:51:28,013.013 INFO    ] No update needed
[2026-06-19 21:51:28,016.016 INFO    ] Checking for camera pi updates...
[2026-06-19 21:51:28,055.055 INFO    ] 200
[2026-06-19 21:51:28,058.058 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:28,110.110 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:51:28,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:51:28,157.157 INFO    ] No camera update needed
[2026-06-19 21:51:28,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:51:28,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:51:28,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:51:28,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:51:30,215.215 INFO    ] ================================================
[2026-06-19 21:51:30,232.232 INFO    ] Launching Daemon at Fri Jun 19 21:51:30 IST 2026
[2026-06-19 21:51:30,243.243 INFO    ] ================================================
[2026-06-19 21:51:30,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:51:30
[2026-06-19 21:51:31,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:51:31,887.887 INFO    ] Initializing speech engine...
[2026-06-19 21:51:31,896.896 INFO    ] 2026-06-19 21:51:31
[2026-06-19 21:51:32,194.194 INFO    ] 2026-06-19 21:51:32
[2026-06-19 21:51:32,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:51:32,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:51:32,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:51:32,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:51:32,635.635 INFO    ] time= 19/06/2026 21:51:32
[2026-06-19 21:51:32,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:51:32,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:51:32,727.727 INFO    ] No existing commands found in stream
[2026-06-19 21:51:37,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:51:37,743.743 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 21:51:38,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:51:38,168.168 INFO    ] Checking for system updates...
[2026-06-19 21:51:38,204.204 INFO    ] 200
[2026-06-19 21:51:38,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:38,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:51:38,261.261 INFO    ] No update needed
[2026-06-19 21:51:38,263.263 INFO    ] Checking for camera pi updates...
[2026-06-19 21:51:38,297.297 INFO    ] 200
[2026-06-19 21:51:38,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:38,348.348 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:51:38,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:51:38,393.393 INFO    ] No camera update needed
[2026-06-19 21:51:38,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:51:38,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:51:38,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:51:38,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:51:40,450.450 INFO    ] ================================================
[2026-06-19 21:51:40,472.472 INFO    ] Launching Daemon at Fri Jun 19 21:51:40 IST 2026
[2026-06-19 21:51:40,484.484 INFO    ] ================================================
[2026-06-19 21:51:41,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:51:41
[2026-06-19 21:51:41,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:51:41,910.910 INFO    ] Initializing speech engine...
[2026-06-19 21:51:41,926.926 INFO    ] 2026-06-19 21:51:41
[2026-06-19 21:51:42,199.199 INFO    ] 2026-06-19 21:51:42
[2026-06-19 21:51:42,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:51:42,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:51:42,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:51:42,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:51:42,609.609 INFO    ] time= 19/06/2026 21:51:42
[2026-06-19 21:51:42,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:51:42,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:51:42,700.700 INFO    ] No existing commands found in stream
[2026-06-19 21:51:47,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:51:47,738.738 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 21:51:50,671.671 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:51:50,674.674 INFO    ] Checking for system updates...
[2026-06-19 21:51:50,710.710 INFO    ] 200
[2026-06-19 21:51:50,713.713 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:50,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:51:50,768.768 INFO    ] No update needed
[2026-06-19 21:51:50,771.771 INFO    ] Checking for camera pi updates...
[2026-06-19 21:51:50,804.804 INFO    ] 200
[2026-06-19 21:51:50,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:51:50,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:51:50,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:51:50,902.902 INFO    ] No camera update needed
[2026-06-19 21:51:50,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:51:50,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:51:50,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:51:50,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:51:52,957.957 INFO    ] ================================================
[2026-06-19 21:51:52,972.972 INFO    ] Launching Daemon at Fri Jun 19 21:51:52 IST 2026
[2026-06-19 21:51:52,983.983 INFO    ] ================================================
[2026-06-19 21:51:53,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:51:53
[2026-06-19 21:51:54,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:51:54,429.429 INFO    ] Initializing speech engine...
[2026-06-19 21:51:54,453.453 INFO    ] 2026-06-19 21:51:54
[2026-06-19 21:51:54,724.724 INFO    ] 2026-06-19 21:51:54
[2026-06-19 21:51:54,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:51:54,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:51:55,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:51:55,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:51:55,210.210 INFO    ] time= 19/06/2026 21:51:55
[2026-06-19 21:51:55,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:51:55,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:51:55,359.359 INFO    ] No existing commands found in stream
[2026-06-19 21:52:00,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:52:00,374.374 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 21:52:01,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:52:01,934.934 INFO    ] Checking for system updates...
[2026-06-19 21:52:01,983.983 INFO    ] 200
[2026-06-19 21:52:01,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:02,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:52:02,090.090 INFO    ] No update needed
[2026-06-19 21:52:02,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 21:52:02,162.162 INFO    ] 200
[2026-06-19 21:52:02,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:02,268.268 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:52:02,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:52:02,314.314 INFO    ] No camera update needed
[2026-06-19 21:52:02,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:52:02,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:52:02,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:52:02,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:52:04,387.387 INFO    ] ================================================
[2026-06-19 21:52:04,402.402 INFO    ] Launching Daemon at Fri Jun 19 21:52:04 IST 2026
[2026-06-19 21:52:04,413.413 INFO    ] ================================================
[2026-06-19 21:52:05,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:52:05
[2026-06-19 21:52:05,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:52:06,016.016 INFO    ] Initializing speech engine...
[2026-06-19 21:52:06,022.022 INFO    ] 2026-06-19 21:52:06
[2026-06-19 21:52:06,338.338 INFO    ] 2026-06-19 21:52:06
[2026-06-19 21:52:06,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:52:06,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:52:06,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:52:06,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:52:06,886.886 INFO    ] time= 19/06/2026 21:52:06
[2026-06-19 21:52:06,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:52:06,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:52:07,045.045 INFO    ] No existing commands found in stream
[2026-06-19 21:52:12,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:52:12,064.064 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 21:52:12,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:52:12,774.774 INFO    ] Checking for system updates...
[2026-06-19 21:52:12,817.817 INFO    ] 200
[2026-06-19 21:52:12,819.819 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:12,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:52:12,876.876 INFO    ] No update needed
[2026-06-19 21:52:12,879.879 INFO    ] Checking for camera pi updates...
[2026-06-19 21:52:12,912.912 INFO    ] 200
[2026-06-19 21:52:12,915.915 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:12,957.957 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:52:13,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:52:13,003.003 INFO    ] No camera update needed
[2026-06-19 21:52:13,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:52:13,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:52:13,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:52:13,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:52:15,059.059 INFO    ] ================================================
[2026-06-19 21:52:15,074.074 INFO    ] Launching Daemon at Fri Jun 19 21:52:15 IST 2026
[2026-06-19 21:52:15,085.085 INFO    ] ================================================
[2026-06-19 21:52:15,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:52:15
[2026-06-19 21:52:16,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:52:16,572.572 INFO    ] Initializing speech engine...
[2026-06-19 21:52:16,579.579 INFO    ] 2026-06-19 21:52:16
[2026-06-19 21:52:16,839.839 INFO    ] 2026-06-19 21:52:16
[2026-06-19 21:52:16,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:52:17,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:52:17,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:52:17,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:52:17,200.200 INFO    ] time= 19/06/2026 21:52:17
[2026-06-19 21:52:17,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:52:17,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:52:17,389.389 INFO    ] No existing commands found in stream
[2026-06-19 21:52:22,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:52:22,409.409 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-19 21:52:24,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:52:24,391.391 INFO    ] Checking for system updates...
[2026-06-19 21:52:24,427.427 INFO    ] 200
[2026-06-19 21:52:24,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:24,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:52:24,501.501 INFO    ] No update needed
[2026-06-19 21:52:24,504.504 INFO    ] Checking for camera pi updates...
[2026-06-19 21:52:24,542.542 INFO    ] 200
[2026-06-19 21:52:24,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:24,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:52:24,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:52:24,645.645 INFO    ] No camera update needed
[2026-06-19 21:52:24,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:52:24,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:52:24,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:52:24,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:52:26,701.701 INFO    ] ================================================
[2026-06-19 21:52:26,716.716 INFO    ] Launching Daemon at Fri Jun 19 21:52:26 IST 2026
[2026-06-19 21:52:26,727.727 INFO    ] ================================================
[2026-06-19 21:52:27,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:52:27
[2026-06-19 21:52:27,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:52:28,150.150 INFO    ] Initializing speech engine...
[2026-06-19 21:52:28,159.159 INFO    ] 2026-06-19 21:52:28
[2026-06-19 21:52:28,405.405 INFO    ] 2026-06-19 21:52:28
[2026-06-19 21:52:28,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:52:28,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:52:28,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:52:28,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:52:28,877.877 INFO    ] time= 19/06/2026 21:52:28
[2026-06-19 21:52:28,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:52:28,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:52:29,028.028 INFO    ] No existing commands found in stream
[2026-06-19 21:52:34,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:52:34,050.050 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-19 21:52:34,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:52:34,506.506 INFO    ] Checking for system updates...
[2026-06-19 21:52:34,550.550 INFO    ] 200
[2026-06-19 21:52:34,553.553 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:34,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:52:34,632.632 INFO    ] No update needed
[2026-06-19 21:52:34,635.635 INFO    ] Checking for camera pi updates...
[2026-06-19 21:52:34,686.686 INFO    ] 200
[2026-06-19 21:52:34,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:34,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:52:34,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:52:34,796.796 INFO    ] No camera update needed
[2026-06-19 21:52:34,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:52:34,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:52:34,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:52:34,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:52:36,852.852 INFO    ] ================================================
[2026-06-19 21:52:36,867.867 INFO    ] Launching Daemon at Fri Jun 19 21:52:36 IST 2026
[2026-06-19 21:52:36,878.878 INFO    ] ================================================
[2026-06-19 21:52:37,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:52:37
[2026-06-19 21:52:38,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:52:38,344.344 INFO    ] Initializing speech engine...
[2026-06-19 21:52:38,354.354 INFO    ] 2026-06-19 21:52:38
[2026-06-19 21:52:38,624.624 INFO    ] 2026-06-19 21:52:38
[2026-06-19 21:52:38,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:52:38,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:52:38,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:52:39,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:52:39,006.006 INFO    ] time= 19/06/2026 21:52:39
[2026-06-19 21:52:39,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:52:39,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:52:39,132.132 INFO    ] No existing commands found in stream
[2026-06-19 21:52:44,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:52:44,148.148 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 21:52:47,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:52:47,748.748 INFO    ] Checking for system updates...
[2026-06-19 21:52:47,785.785 INFO    ] 200
[2026-06-19 21:52:47,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:47,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:52:47,850.850 INFO    ] No update needed
[2026-06-19 21:52:47,852.852 INFO    ] Checking for camera pi updates...
[2026-06-19 21:52:47,888.888 INFO    ] 200
[2026-06-19 21:52:47,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:47,932.932 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:52:47,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:52:47,979.979 INFO    ] No camera update needed
[2026-06-19 21:52:47,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:52:47,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:52:47,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:52:47,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:52:50,037.037 INFO    ] ================================================
[2026-06-19 21:52:50,053.053 INFO    ] Launching Daemon at Fri Jun 19 21:52:50 IST 2026
[2026-06-19 21:52:50,064.064 INFO    ] ================================================
[2026-06-19 21:52:50,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:52:50
[2026-06-19 21:52:51,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:52:51,702.702 INFO    ] Initializing speech engine...
[2026-06-19 21:52:51,717.717 INFO    ] 2026-06-19 21:52:51
[2026-06-19 21:52:51,997.997 INFO    ] 2026-06-19 21:52:51
[2026-06-19 21:52:52,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:52:52,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:52:52,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:52:52,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:52:52,475.475 INFO    ] time= 19/06/2026 21:52:52
[2026-06-19 21:52:52,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:52:52,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:52:52,608.608 INFO    ] No existing commands found in stream
[2026-06-19 21:52:57,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:52:57,647.647 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-19 21:52:58,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:52:58,216.216 INFO    ] Checking for system updates...
[2026-06-19 21:52:58,258.258 INFO    ] 200
[2026-06-19 21:52:58,260.260 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:58,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:52:58,330.330 INFO    ] No update needed
[2026-06-19 21:52:58,333.333 INFO    ] Checking for camera pi updates...
[2026-06-19 21:52:58,371.371 INFO    ] 200
[2026-06-19 21:52:58,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:52:58,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:52:58,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:52:58,565.565 INFO    ] No camera update needed
[2026-06-19 21:52:58,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:52:58,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:52:58,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:52:58,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:53:00,627.627 INFO    ] ================================================
[2026-06-19 21:53:00,642.642 INFO    ] Launching Daemon at Fri Jun 19 21:53:00 IST 2026
[2026-06-19 21:53:00,653.653 INFO    ] ================================================
[2026-06-19 21:53:01,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:53:01
[2026-06-19 21:53:02,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:53:02,362.362 INFO    ] Initializing speech engine...
[2026-06-19 21:53:02,381.381 INFO    ] 2026-06-19 21:53:02
[2026-06-19 21:53:02,687.687 INFO    ] 2026-06-19 21:53:02
[2026-06-19 21:53:02,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:53:03,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:53:03,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:53:03,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:53:03,181.181 INFO    ] time= 19/06/2026 21:53:03
[2026-06-19 21:53:03,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:53:03,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:53:03,338.338 INFO    ] No existing commands found in stream
[2026-06-19 21:53:08,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:53:08,351.351 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 21:53:10,757.757 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:53:10,760.760 INFO    ] Checking for system updates...
[2026-06-19 21:53:10,796.796 INFO    ] 200
[2026-06-19 21:53:10,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:10,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:53:10,859.859 INFO    ] No update needed
[2026-06-19 21:53:10,861.861 INFO    ] Checking for camera pi updates...
[2026-06-19 21:53:10,896.896 INFO    ] 200
[2026-06-19 21:53:10,898.898 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:10,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:53:10,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:53:10,988.988 INFO    ] No camera update needed
[2026-06-19 21:53:10,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:53:10,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:53:10,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:53:11,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:53:13,044.044 INFO    ] ================================================
[2026-06-19 21:53:13,059.059 INFO    ] Launching Daemon at Fri Jun 19 21:53:13 IST 2026
[2026-06-19 21:53:13,070.070 INFO    ] ================================================
[2026-06-19 21:53:13,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:53:13
[2026-06-19 21:53:14,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:53:14,490.490 INFO    ] Initializing speech engine...
[2026-06-19 21:53:14,505.505 INFO    ] 2026-06-19 21:53:14
[2026-06-19 21:53:14,773.773 INFO    ] 2026-06-19 21:53:14
[2026-06-19 21:53:14,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:53:15,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:53:15,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:53:15,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:53:15,144.144 INFO    ] time= 19/06/2026 21:53:15
[2026-06-19 21:53:15,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:53:15,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:53:15,273.273 INFO    ] No existing commands found in stream
[2026-06-19 21:53:20,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:53:20,311.311 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-19 21:53:20,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:53:20,707.707 INFO    ] Checking for system updates...
[2026-06-19 21:53:20,743.743 INFO    ] 200
[2026-06-19 21:53:20,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:20,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:53:20,808.808 INFO    ] No update needed
[2026-06-19 21:53:20,811.811 INFO    ] Checking for camera pi updates...
[2026-06-19 21:53:20,847.847 INFO    ] 200
[2026-06-19 21:53:20,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:20,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:53:20,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:53:20,945.945 INFO    ] No camera update needed
[2026-06-19 21:53:20,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:53:20,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:53:20,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:53:20,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:53:23,004.004 INFO    ] ================================================
[2026-06-19 21:53:23,019.019 INFO    ] Launching Daemon at Fri Jun 19 21:53:23 IST 2026
[2026-06-19 21:53:23,030.030 INFO    ] ================================================
[2026-06-19 21:53:23,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:53:23
[2026-06-19 21:53:24,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:53:24,437.437 INFO    ] Initializing speech engine...
[2026-06-19 21:53:24,459.459 INFO    ] 2026-06-19 21:53:24
[2026-06-19 21:53:24,717.717 INFO    ] 2026-06-19 21:53:24
[2026-06-19 21:53:24,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:53:24,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:53:24,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:53:25,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:53:25,093.093 INFO    ] time= 19/06/2026 21:53:25
[2026-06-19 21:53:25,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:53:25,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:53:25,172.172 INFO    ] No existing commands found in stream
[2026-06-19 21:53:30,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:53:30,205.205 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 21:53:33,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:53:33,723.723 INFO    ] Checking for system updates...
[2026-06-19 21:53:33,759.759 INFO    ] 200
[2026-06-19 21:53:33,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:33,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:53:33,822.822 INFO    ] No update needed
[2026-06-19 21:53:33,824.824 INFO    ] Checking for camera pi updates...
[2026-06-19 21:53:33,857.857 INFO    ] 200
[2026-06-19 21:53:33,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:33,901.901 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:53:33,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:53:33,933.933 INFO    ] No camera update needed
[2026-06-19 21:53:33,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:53:33,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:53:33,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:53:33,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:53:35,989.989 INFO    ] ================================================
[2026-06-19 21:53:36,005.005 INFO    ] Launching Daemon at Fri Jun 19 21:53:36 IST 2026
[2026-06-19 21:53:36,016.016 INFO    ] ================================================
[2026-06-19 21:53:36,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:53:36
[2026-06-19 21:53:37,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:53:37,441.441 INFO    ] Initializing speech engine...
[2026-06-19 21:53:37,459.459 INFO    ] 2026-06-19 21:53:37
[2026-06-19 21:53:37,727.727 INFO    ] 2026-06-19 21:53:37
[2026-06-19 21:53:37,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:53:37,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:53:37,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:53:38,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:53:38,112.112 INFO    ] time= 19/06/2026 21:53:38
[2026-06-19 21:53:38,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:53:38,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:53:38,224.224 INFO    ] No existing commands found in stream
[2026-06-19 21:53:43,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:53:43,239.239 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-19 21:53:44,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:53:44,641.641 INFO    ] Checking for system updates...
[2026-06-19 21:53:44,677.677 INFO    ] 200
[2026-06-19 21:53:44,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:44,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:53:44,739.739 INFO    ] No update needed
[2026-06-19 21:53:44,742.742 INFO    ] Checking for camera pi updates...
[2026-06-19 21:53:44,778.778 INFO    ] 200
[2026-06-19 21:53:44,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:44,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:53:44,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:53:44,868.868 INFO    ] No camera update needed
[2026-06-19 21:53:44,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:53:44,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:53:44,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:53:44,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:53:46,923.923 INFO    ] ================================================
[2026-06-19 21:53:46,939.939 INFO    ] Launching Daemon at Fri Jun 19 21:53:46 IST 2026
[2026-06-19 21:53:46,950.950 INFO    ] ================================================
[2026-06-19 21:53:47,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:53:47
[2026-06-19 21:53:48,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:53:48,414.414 INFO    ] Initializing speech engine...
[2026-06-19 21:53:48,420.420 INFO    ] 2026-06-19 21:53:48
[2026-06-19 21:53:48,682.682 INFO    ] 2026-06-19 21:53:48
[2026-06-19 21:53:48,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:53:48,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:53:48,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:53:49,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:53:49,175.175 INFO    ] time= 19/06/2026 21:53:49
[2026-06-19 21:53:49,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:53:49,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:53:49,298.298 INFO    ] No existing commands found in stream
[2026-06-19 21:53:54,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:53:54,321.321 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 21:53:56,381.381 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:53:56,384.384 INFO    ] Checking for system updates...
[2026-06-19 21:53:56,431.431 INFO    ] 200
[2026-06-19 21:53:56,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:56,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:53:56,498.498 INFO    ] No update needed
[2026-06-19 21:53:56,501.501 INFO    ] Checking for camera pi updates...
[2026-06-19 21:53:56,539.539 INFO    ] 200
[2026-06-19 21:53:56,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:53:56,588.588 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:53:56,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:53:56,659.659 INFO    ] No camera update needed
[2026-06-19 21:53:56,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:53:56,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:53:56,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:53:56,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:53:58,728.728 INFO    ] ================================================
[2026-06-19 21:53:58,743.743 INFO    ] Launching Daemon at Fri Jun 19 21:53:58 IST 2026
[2026-06-19 21:53:58,754.754 INFO    ] ================================================
[2026-06-19 21:53:59,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:53:59
[2026-06-19 21:53:59,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:54:00,238.238 INFO    ] Initializing speech engine...
[2026-06-19 21:54:00,244.244 INFO    ] 2026-06-19 21:54:00
[2026-06-19 21:54:00,520.520 INFO    ] 2026-06-19 21:54:00
[2026-06-19 21:54:00,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:54:00,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:54:00,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:54:01,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:54:01,076.076 INFO    ] time= 19/06/2026 21:54:01
[2026-06-19 21:54:01,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:54:01,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:54:01,211.211 INFO    ] No existing commands found in stream
[2026-06-19 21:54:06,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:54:06,234.234 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-19 21:54:07,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:54:07,498.498 INFO    ] Checking for system updates...
[2026-06-19 21:54:07,538.538 INFO    ] 200
[2026-06-19 21:54:07,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:07,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:54:07,602.602 INFO    ] No update needed
[2026-06-19 21:54:07,604.604 INFO    ] Checking for camera pi updates...
[2026-06-19 21:54:07,641.641 INFO    ] 200
[2026-06-19 21:54:07,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:07,685.685 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:54:07,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:54:07,738.738 INFO    ] No camera update needed
[2026-06-19 21:54:07,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:54:07,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:54:07,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:54:07,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:54:09,793.793 INFO    ] ================================================
[2026-06-19 21:54:09,808.808 INFO    ] Launching Daemon at Fri Jun 19 21:54:09 IST 2026
[2026-06-19 21:54:09,819.819 INFO    ] ================================================
[2026-06-19 21:54:10,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:54:10
[2026-06-19 21:54:10,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:54:11,223.223 INFO    ] Initializing speech engine...
[2026-06-19 21:54:11,232.232 INFO    ] 2026-06-19 21:54:11
[2026-06-19 21:54:11,523.523 INFO    ] 2026-06-19 21:54:11
[2026-06-19 21:54:11,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:54:11,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:54:11,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:54:11,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:54:11,898.898 INFO    ] time= 19/06/2026 21:54:11
[2026-06-19 21:54:11,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:54:11,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:54:12,024.024 INFO    ] No existing commands found in stream
[2026-06-19 21:54:17,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:54:17,038.038 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 21:54:19,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:54:19,612.612 INFO    ] Checking for system updates...
[2026-06-19 21:54:19,647.647 INFO    ] 200
[2026-06-19 21:54:19,650.650 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:19,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:54:19,706.706 INFO    ] No update needed
[2026-06-19 21:54:19,708.708 INFO    ] Checking for camera pi updates...
[2026-06-19 21:54:19,743.743 INFO    ] 200
[2026-06-19 21:54:19,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:19,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:54:19,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:54:19,841.841 INFO    ] No camera update needed
[2026-06-19 21:54:19,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:54:19,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:54:19,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:54:19,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:54:21,899.899 INFO    ] ================================================
[2026-06-19 21:54:21,915.915 INFO    ] Launching Daemon at Fri Jun 19 21:54:21 IST 2026
[2026-06-19 21:54:21,925.925 INFO    ] ================================================
[2026-06-19 21:54:22,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:54:22
[2026-06-19 21:54:23,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:54:23,375.375 INFO    ] Initializing speech engine...
[2026-06-19 21:54:23,393.393 INFO    ] 2026-06-19 21:54:23
[2026-06-19 21:54:23,649.649 INFO    ] 2026-06-19 21:54:23
[2026-06-19 21:54:23,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:54:23,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:54:23,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:54:24,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:54:24,121.121 INFO    ] time= 19/06/2026 21:54:24
[2026-06-19 21:54:24,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:54:24,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:54:24,271.271 INFO    ] No existing commands found in stream
[2026-06-19 21:54:29,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:54:29,286.286 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 21:54:32,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:54:32,237.237 INFO    ] Checking for system updates...
[2026-06-19 21:54:32,280.280 INFO    ] 200
[2026-06-19 21:54:32,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:32,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:54:32,342.342 INFO    ] No update needed
[2026-06-19 21:54:32,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 21:54:32,381.381 INFO    ] 200
[2026-06-19 21:54:32,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:32,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:54:32,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:54:32,473.473 INFO    ] No camera update needed
[2026-06-19 21:54:32,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:54:32,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:54:32,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:54:32,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:54:34,536.536 INFO    ] ================================================
[2026-06-19 21:54:34,552.552 INFO    ] Launching Daemon at Fri Jun 19 21:54:34 IST 2026
[2026-06-19 21:54:34,563.563 INFO    ] ================================================
[2026-06-19 21:54:35,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:54:35
[2026-06-19 21:54:35,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:54:36,061.061 INFO    ] Initializing speech engine...
[2026-06-19 21:54:36,071.071 INFO    ] 2026-06-19 21:54:36
[2026-06-19 21:54:36,376.376 INFO    ] 2026-06-19 21:54:36
[2026-06-19 21:54:36,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:54:36,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:54:36,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:54:36,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:54:36,815.815 INFO    ] time= 19/06/2026 21:54:36
[2026-06-19 21:54:36,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:54:36,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:54:36,954.954 INFO    ] No existing commands found in stream
[2026-06-19 21:54:41,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:54:41,988.988 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 21:54:42,596.596 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:54:42,599.599 INFO    ] Checking for system updates...
[2026-06-19 21:54:42,637.637 INFO    ] 200
[2026-06-19 21:54:42,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:42,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:54:42,704.704 INFO    ] No update needed
[2026-06-19 21:54:42,708.708 INFO    ] Checking for camera pi updates...
[2026-06-19 21:54:42,747.747 INFO    ] 200
[2026-06-19 21:54:42,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:42,802.802 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:54:42,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:54:42,852.852 INFO    ] No camera update needed
[2026-06-19 21:54:42,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:54:42,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:54:42,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:54:42,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:54:44,910.910 INFO    ] ================================================
[2026-06-19 21:54:44,926.926 INFO    ] Launching Daemon at Fri Jun 19 21:54:44 IST 2026
[2026-06-19 21:54:44,937.937 INFO    ] ================================================
[2026-06-19 21:54:45,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:54:45
[2026-06-19 21:54:46,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:54:46,557.557 INFO    ] Initializing speech engine...
[2026-06-19 21:54:46,576.576 INFO    ] 2026-06-19 21:54:46
[2026-06-19 21:54:46,822.822 INFO    ] 2026-06-19 21:54:46
[2026-06-19 21:54:46,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:54:47,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:54:47,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:54:47,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:54:47,297.297 INFO    ] time= 19/06/2026 21:54:47
[2026-06-19 21:54:47,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:54:47,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:54:47,446.446 INFO    ] No existing commands found in stream
[2026-06-19 21:54:52,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:54:52,460.460 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 21:54:55,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:54:55,140.140 INFO    ] Checking for system updates...
[2026-06-19 21:54:55,176.176 INFO    ] 200
[2026-06-19 21:54:55,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:55,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:54:55,234.234 INFO    ] No update needed
[2026-06-19 21:54:55,236.236 INFO    ] Checking for camera pi updates...
[2026-06-19 21:54:55,271.271 INFO    ] 200
[2026-06-19 21:54:55,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:54:55,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:54:55,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:54:55,372.372 INFO    ] No camera update needed
[2026-06-19 21:54:55,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:54:55,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:54:55,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:54:55,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:54:57,430.430 INFO    ] ================================================
[2026-06-19 21:54:57,446.446 INFO    ] Launching Daemon at Fri Jun 19 21:54:57 IST 2026
[2026-06-19 21:54:57,456.456 INFO    ] ================================================
[2026-06-19 21:54:58,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:54:58
[2026-06-19 21:54:58,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:54:58,886.886 INFO    ] Initializing speech engine...
[2026-06-19 21:54:58,900.900 INFO    ] 2026-06-19 21:54:58
[2026-06-19 21:54:59,166.166 INFO    ] 2026-06-19 21:54:59
[2026-06-19 21:54:59,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:54:59,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:54:59,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:54:59,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:54:59,542.542 INFO    ] time= 19/06/2026 21:54:59
[2026-06-19 21:54:59,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:54:59,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:54:59,717.717 INFO    ] No existing commands found in stream
[2026-06-19 21:55:04,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:55:04,750.750 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 21:55:07,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:55:07,154.154 INFO    ] Checking for system updates...
[2026-06-19 21:55:07,190.190 INFO    ] 200
[2026-06-19 21:55:07,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:07,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:55:07,248.248 INFO    ] No update needed
[2026-06-19 21:55:07,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 21:55:07,286.286 INFO    ] 200
[2026-06-19 21:55:07,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:07,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:55:07,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:55:07,385.385 INFO    ] No camera update needed
[2026-06-19 21:55:07,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:55:07,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:55:07,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:55:07,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:55:09,441.441 INFO    ] ================================================
[2026-06-19 21:55:09,457.457 INFO    ] Launching Daemon at Fri Jun 19 21:55:09 IST 2026
[2026-06-19 21:55:09,467.467 INFO    ] ================================================
[2026-06-19 21:55:10,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:55:10
[2026-06-19 21:55:10,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:55:10,914.914 INFO    ] Initializing speech engine...
[2026-06-19 21:55:10,922.922 INFO    ] 2026-06-19 21:55:10
[2026-06-19 21:55:11,196.196 INFO    ] 2026-06-19 21:55:11
[2026-06-19 21:55:11,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:55:11,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:55:11,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:55:11,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:55:11,648.648 INFO    ] time= 19/06/2026 21:55:11
[2026-06-19 21:55:11,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:55:11,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:55:11,806.806 INFO    ] No existing commands found in stream
[2026-06-19 21:55:16,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:55:16,820.820 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 21:55:18,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 21:55:18,981.981 INFO    ] Checking for system updates...
[2026-06-19 21:55:19,017.017 INFO    ] 200
[2026-06-19 21:55:19,020.020 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:19,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:55:19,080.080 INFO    ] No update needed
[2026-06-19 21:55:19,083.083 INFO    ] Checking for camera pi updates...
[2026-06-19 21:55:19,120.120 INFO    ] 200
[2026-06-19 21:55:19,122.122 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:19,168.168 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:55:19,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:55:19,214.214 INFO    ] No camera update needed
[2026-06-19 21:55:19,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:55:19,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:55:19,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:55:19,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:55:21,270.270 INFO    ] ================================================
[2026-06-19 21:55:21,286.286 INFO    ] Launching Daemon at Fri Jun 19 21:55:21 IST 2026
[2026-06-19 21:55:21,297.297 INFO    ] ================================================
[2026-06-19 21:55:21,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:55:21
[2026-06-19 21:55:22,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:55:22,938.938 INFO    ] Initializing speech engine...
[2026-06-19 21:55:22,947.947 INFO    ] 2026-06-19 21:55:22
[2026-06-19 21:55:23,241.241 INFO    ] 2026-06-19 21:55:23
[2026-06-19 21:55:23,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:55:23,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:55:23,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:55:23,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:55:23,792.792 INFO    ] time= 19/06/2026 21:55:23
[2026-06-19 21:55:23,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:55:23,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:55:23,933.933 INFO    ] No existing commands found in stream
[2026-06-19 21:55:28,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:55:28,962.962 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 21:55:31,729.729 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:55:31,732.732 INFO    ] Checking for system updates...
[2026-06-19 21:55:31,776.776 INFO    ] 200
[2026-06-19 21:55:31,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:31,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:55:31,846.846 INFO    ] No update needed
[2026-06-19 21:55:31,849.849 INFO    ] Checking for camera pi updates...
[2026-06-19 21:55:31,891.891 INFO    ] 200
[2026-06-19 21:55:31,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:31,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:55:31,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:55:31,985.985 INFO    ] No camera update needed
[2026-06-19 21:55:31,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:55:31,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:55:31,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:55:32,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:55:34,043.043 INFO    ] ================================================
[2026-06-19 21:55:34,059.059 INFO    ] Launching Daemon at Fri Jun 19 21:55:34 IST 2026
[2026-06-19 21:55:34,071.071 INFO    ] ================================================
[2026-06-19 21:55:34,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:55:34
[2026-06-19 21:55:35,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:55:35,501.501 INFO    ] Initializing speech engine...
[2026-06-19 21:55:35,523.523 INFO    ] 2026-06-19 21:55:35
[2026-06-19 21:55:35,784.784 INFO    ] 2026-06-19 21:55:35
[2026-06-19 21:55:35,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:55:36,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:55:36,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:55:36,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:55:36,242.242 INFO    ] time= 19/06/2026 21:55:36
[2026-06-19 21:55:36,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:55:36,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:55:36,434.434 INFO    ] No existing commands found in stream
[2026-06-19 21:55:41,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:55:41,449.449 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 21:55:43,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:55:43,253.253 INFO    ] Checking for system updates...
[2026-06-19 21:55:43,291.291 INFO    ] 200
[2026-06-19 21:55:43,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:43,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:55:43,349.349 INFO    ] No update needed
[2026-06-19 21:55:43,351.351 INFO    ] Checking for camera pi updates...
[2026-06-19 21:55:43,386.386 INFO    ] 200
[2026-06-19 21:55:43,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:43,434.434 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:55:43,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:55:43,480.480 INFO    ] No camera update needed
[2026-06-19 21:55:43,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:55:43,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:55:43,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:55:43,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:55:45,535.535 INFO    ] ================================================
[2026-06-19 21:55:45,551.551 INFO    ] Launching Daemon at Fri Jun 19 21:55:45 IST 2026
[2026-06-19 21:55:45,562.562 INFO    ] ================================================
[2026-06-19 21:55:46,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:55:46
[2026-06-19 21:55:46,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:55:47,024.024 INFO    ] Initializing speech engine...
[2026-06-19 21:55:47,033.033 INFO    ] 2026-06-19 21:55:47
[2026-06-19 21:55:47,298.298 INFO    ] 2026-06-19 21:55:47
[2026-06-19 21:55:47,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:55:47,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:55:47,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:55:47,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:55:47,758.758 INFO    ] time= 19/06/2026 21:55:47
[2026-06-19 21:55:47,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:55:47,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:55:47,932.932 INFO    ] No existing commands found in stream
[2026-06-19 21:55:52,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:55:52,970.970 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 21:55:54,389.389 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:55:54,391.391 INFO    ] Checking for system updates...
[2026-06-19 21:55:54,433.433 INFO    ] 200
[2026-06-19 21:55:54,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:54,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:55:54,496.496 INFO    ] No update needed
[2026-06-19 21:55:54,498.498 INFO    ] Checking for camera pi updates...
[2026-06-19 21:55:54,534.534 INFO    ] 200
[2026-06-19 21:55:54,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:55:54,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:55:54,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:55:54,636.636 INFO    ] No camera update needed
[2026-06-19 21:55:54,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:55:54,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:55:54,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:55:54,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:55:56,695.695 INFO    ] ================================================
[2026-06-19 21:55:56,711.711 INFO    ] Launching Daemon at Fri Jun 19 21:55:56 IST 2026
[2026-06-19 21:55:56,722.722 INFO    ] ================================================
[2026-06-19 21:55:57,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:55:57
[2026-06-19 21:55:57,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:55:58,185.185 INFO    ] Initializing speech engine...
[2026-06-19 21:55:58,194.194 INFO    ] 2026-06-19 21:55:58
[2026-06-19 21:55:58,454.454 INFO    ] 2026-06-19 21:55:58
[2026-06-19 21:55:58,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:55:58,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:55:58,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:55:58,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:55:58,911.911 INFO    ] time= 19/06/2026 21:55:58
[2026-06-19 21:55:58,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:55:59,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:55:59,060.060 INFO    ] No existing commands found in stream
[2026-06-19 21:56:04,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:56:04,075.075 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 21:56:05,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:56:05,562.562 INFO    ] Checking for system updates...
[2026-06-19 21:56:05,598.598 INFO    ] 200
[2026-06-19 21:56:05,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:05,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:56:05,664.664 INFO    ] No update needed
[2026-06-19 21:56:05,667.667 INFO    ] Checking for camera pi updates...
[2026-06-19 21:56:05,705.705 INFO    ] 200
[2026-06-19 21:56:05,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:05,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:56:05,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:56:05,806.806 INFO    ] No camera update needed
[2026-06-19 21:56:05,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:56:05,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:56:05,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:56:05,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:56:07,865.865 INFO    ] ================================================
[2026-06-19 21:56:07,880.880 INFO    ] Launching Daemon at Fri Jun 19 21:56:07 IST 2026
[2026-06-19 21:56:07,891.891 INFO    ] ================================================
[2026-06-19 21:56:08,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:56:08
[2026-06-19 21:56:09,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:56:09,364.364 INFO    ] Initializing speech engine...
[2026-06-19 21:56:09,372.372 INFO    ] 2026-06-19 21:56:09
[2026-06-19 21:56:09,622.622 INFO    ] 2026-06-19 21:56:09
[2026-06-19 21:56:09,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:56:09,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:56:09,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:56:10,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:56:10,110.110 INFO    ] time= 19/06/2026 21:56:10
[2026-06-19 21:56:10,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:56:10,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:56:10,297.297 INFO    ] No existing commands found in stream
[2026-06-19 21:56:15,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:56:15,324.324 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-19 21:56:17,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:56:17,223.223 INFO    ] Checking for system updates...
[2026-06-19 21:56:17,259.259 INFO    ] 200
[2026-06-19 21:56:17,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:17,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:56:17,317.317 INFO    ] No update needed
[2026-06-19 21:56:17,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 21:56:17,357.357 INFO    ] 200
[2026-06-19 21:56:17,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:17,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:56:17,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:56:17,452.452 INFO    ] No camera update needed
[2026-06-19 21:56:17,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:56:17,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:56:17,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:56:17,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:56:19,507.507 INFO    ] ================================================
[2026-06-19 21:56:19,522.522 INFO    ] Launching Daemon at Fri Jun 19 21:56:19 IST 2026
[2026-06-19 21:56:19,532.532 INFO    ] ================================================
[2026-06-19 21:56:20,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:56:20
[2026-06-19 21:56:20,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:56:20,955.955 INFO    ] Initializing speech engine...
[2026-06-19 21:56:20,970.970 INFO    ] 2026-06-19 21:56:20
[2026-06-19 21:56:21,241.241 INFO    ] 2026-06-19 21:56:21
[2026-06-19 21:56:21,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:56:21,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:56:21,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:56:21,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:56:21,639.639 INFO    ] time= 19/06/2026 21:56:21
[2026-06-19 21:56:21,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:56:21,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:56:21,748.748 INFO    ] No existing commands found in stream
[2026-06-19 21:56:26,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:56:26,764.764 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 21:56:29,001.001 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:56:29,004.004 INFO    ] Checking for system updates...
[2026-06-19 21:56:29,040.040 INFO    ] 200
[2026-06-19 21:56:29,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:29,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:56:29,099.099 INFO    ] No update needed
[2026-06-19 21:56:29,102.102 INFO    ] Checking for camera pi updates...
[2026-06-19 21:56:29,136.136 INFO    ] 200
[2026-06-19 21:56:29,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:29,185.185 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:56:29,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:56:29,236.236 INFO    ] No camera update needed
[2026-06-19 21:56:29,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:56:29,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:56:29,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:56:29,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:56:31,290.290 INFO    ] ================================================
[2026-06-19 21:56:31,305.305 INFO    ] Launching Daemon at Fri Jun 19 21:56:31 IST 2026
[2026-06-19 21:56:31,316.316 INFO    ] ================================================
[2026-06-19 21:56:31,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:56:31
[2026-06-19 21:56:32,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:56:32,798.798 INFO    ] Initializing speech engine...
[2026-06-19 21:56:32,806.806 INFO    ] 2026-06-19 21:56:32
[2026-06-19 21:56:33,125.125 INFO    ] 2026-06-19 21:56:33
[2026-06-19 21:56:33,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:56:33,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:56:33,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:56:33,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:56:33,529.529 INFO    ] time= 19/06/2026 21:56:33
[2026-06-19 21:56:33,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:56:33,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:56:33,654.654 INFO    ] No existing commands found in stream
[2026-06-19 21:56:38,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:56:38,667.667 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 21:56:40,172.172 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:56:40,175.175 INFO    ] Checking for system updates...
[2026-06-19 21:56:40,212.212 INFO    ] 200
[2026-06-19 21:56:40,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:40,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:56:40,274.274 INFO    ] No update needed
[2026-06-19 21:56:40,277.277 INFO    ] Checking for camera pi updates...
[2026-06-19 21:56:40,319.319 INFO    ] 200
[2026-06-19 21:56:40,321.321 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:40,366.366 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:56:40,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:56:40,421.421 INFO    ] No camera update needed
[2026-06-19 21:56:40,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:56:40,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:56:40,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:56:40,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:56:42,478.478 INFO    ] ================================================
[2026-06-19 21:56:42,493.493 INFO    ] Launching Daemon at Fri Jun 19 21:56:42 IST 2026
[2026-06-19 21:56:42,504.504 INFO    ] ================================================
[2026-06-19 21:56:43,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:56:43
[2026-06-19 21:56:43,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:56:44,056.056 INFO    ] Initializing speech engine...
[2026-06-19 21:56:44,064.064 INFO    ] 2026-06-19 21:56:44
[2026-06-19 21:56:44,338.338 INFO    ] 2026-06-19 21:56:44
[2026-06-19 21:56:44,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:56:44,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:56:44,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:56:44,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:56:44,938.938 INFO    ] time= 19/06/2026 21:56:44
[2026-06-19 21:56:44,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:56:45,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:56:45,144.144 INFO    ] No existing commands found in stream
[2026-06-19 21:56:50,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:56:50,164.164 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-19 21:56:53,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:56:53,462.462 INFO    ] Checking for system updates...
[2026-06-19 21:56:53,499.499 INFO    ] 200
[2026-06-19 21:56:53,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:53,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:56:53,559.559 INFO    ] No update needed
[2026-06-19 21:56:53,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 21:56:53,601.601 INFO    ] 200
[2026-06-19 21:56:53,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:56:53,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:56:53,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:56:53,699.699 INFO    ] No camera update needed
[2026-06-19 21:56:53,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:56:53,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:56:53,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:56:53,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:56:55,759.759 INFO    ] ================================================
[2026-06-19 21:56:55,774.774 INFO    ] Launching Daemon at Fri Jun 19 21:56:55 IST 2026
[2026-06-19 21:56:55,785.785 INFO    ] ================================================
[2026-06-19 21:56:56,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:56:56
[2026-06-19 21:56:56,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:56:57,197.197 INFO    ] Initializing speech engine...
[2026-06-19 21:56:57,203.203 INFO    ] 2026-06-19 21:56:57
[2026-06-19 21:56:57,503.503 INFO    ] 2026-06-19 21:56:57
[2026-06-19 21:56:57,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:56:57,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:56:57,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:56:57,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:56:57,869.869 INFO    ] time= 19/06/2026 21:56:57
[2026-06-19 21:56:57,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:56:57,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:56:58,010.010 INFO    ] No existing commands found in stream
[2026-06-19 21:57:03,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:57:03,027.027 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 21:57:04,321.321 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:57:04,324.324 INFO    ] Checking for system updates...
[2026-06-19 21:57:04,364.364 INFO    ] 200
[2026-06-19 21:57:04,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:04,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:57:04,422.422 INFO    ] No update needed
[2026-06-19 21:57:04,425.425 INFO    ] Checking for camera pi updates...
[2026-06-19 21:57:04,459.459 INFO    ] 200
[2026-06-19 21:57:04,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:04,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:57:04,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:57:04,651.651 INFO    ] No camera update needed
[2026-06-19 21:57:04,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:57:04,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:57:04,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:57:04,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:57:06,705.705 INFO    ] ================================================
[2026-06-19 21:57:06,720.720 INFO    ] Launching Daemon at Fri Jun 19 21:57:06 IST 2026
[2026-06-19 21:57:06,731.731 INFO    ] ================================================
[2026-06-19 21:57:07,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:57:07
[2026-06-19 21:57:07,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:57:08,140.140 INFO    ] Initializing speech engine...
[2026-06-19 21:57:08,149.149 INFO    ] 2026-06-19 21:57:08
[2026-06-19 21:57:08,443.443 INFO    ] 2026-06-19 21:57:08
[2026-06-19 21:57:08,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:57:08,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:57:08,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:57:08,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:57:08,800.800 INFO    ] time= 19/06/2026 21:57:08
[2026-06-19 21:57:08,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:57:08,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:57:08,887.887 INFO    ] No existing commands found in stream
[2026-06-19 21:57:13,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:57:13,932.932 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 21:57:16,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:57:16,103.103 INFO    ] Checking for system updates...
[2026-06-19 21:57:16,139.139 INFO    ] 200
[2026-06-19 21:57:16,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:16,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:57:16,201.201 INFO    ] No update needed
[2026-06-19 21:57:16,203.203 INFO    ] Checking for camera pi updates...
[2026-06-19 21:57:16,249.249 INFO    ] 200
[2026-06-19 21:57:16,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:16,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:57:16,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:57:16,342.342 INFO    ] No camera update needed
[2026-06-19 21:57:16,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:57:16,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:57:16,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:57:16,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:57:18,399.399 INFO    ] ================================================
[2026-06-19 21:57:18,415.415 INFO    ] Launching Daemon at Fri Jun 19 21:57:18 IST 2026
[2026-06-19 21:57:18,425.425 INFO    ] ================================================
[2026-06-19 21:57:18,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:57:18
[2026-06-19 21:57:19,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:57:19,844.844 INFO    ] Initializing speech engine...
[2026-06-19 21:57:19,853.853 INFO    ] 2026-06-19 21:57:19
[2026-06-19 21:57:20,099.099 INFO    ] 2026-06-19 21:57:20
[2026-06-19 21:57:20,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:57:20,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:57:20,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:57:20,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:57:20,464.464 INFO    ] time= 19/06/2026 21:57:20
[2026-06-19 21:57:20,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:57:20,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:57:20,628.628 INFO    ] No existing commands found in stream
[2026-06-19 21:57:25,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:57:25,656.656 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 21:57:29,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:57:29,668.668 INFO    ] Checking for system updates...
[2026-06-19 21:57:29,704.704 INFO    ] 200
[2026-06-19 21:57:29,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:29,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:57:29,761.761 INFO    ] No update needed
[2026-06-19 21:57:29,763.763 INFO    ] Checking for camera pi updates...
[2026-06-19 21:57:29,798.798 INFO    ] 200
[2026-06-19 21:57:29,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:29,841.841 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:57:29,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:57:29,896.896 INFO    ] No camera update needed
[2026-06-19 21:57:29,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:57:29,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:57:29,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:57:29,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:57:31,953.953 INFO    ] ================================================
[2026-06-19 21:57:31,970.970 INFO    ] Launching Daemon at Fri Jun 19 21:57:31 IST 2026
[2026-06-19 21:57:31,983.983 INFO    ] ================================================
[2026-06-19 21:57:32,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:57:32
[2026-06-19 21:57:33,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:57:33,551.551 INFO    ] Initializing speech engine...
[2026-06-19 21:57:33,558.558 INFO    ] 2026-06-19 21:57:33
[2026-06-19 21:57:33,821.821 INFO    ] 2026-06-19 21:57:33
[2026-06-19 21:57:33,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:57:34,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:57:34,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:57:34,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:57:34,286.286 INFO    ] time= 19/06/2026 21:57:34
[2026-06-19 21:57:34,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:57:34,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:57:34,490.490 INFO    ] No existing commands found in stream
[2026-06-19 21:57:39,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:57:39,520.520 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-19 21:57:42,375.375 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:57:42,377.377 INFO    ] Checking for system updates...
[2026-06-19 21:57:42,415.415 INFO    ] 200
[2026-06-19 21:57:42,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:42,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:57:42,475.475 INFO    ] No update needed
[2026-06-19 21:57:42,477.477 INFO    ] Checking for camera pi updates...
[2026-06-19 21:57:42,513.513 INFO    ] 200
[2026-06-19 21:57:42,515.515 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:42,560.560 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:57:42,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:57:42,613.613 INFO    ] No camera update needed
[2026-06-19 21:57:42,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:57:42,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:57:42,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:57:42,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:57:44,670.670 INFO    ] ================================================
[2026-06-19 21:57:44,686.686 INFO    ] Launching Daemon at Fri Jun 19 21:57:44 IST 2026
[2026-06-19 21:57:44,697.697 INFO    ] ================================================
[2026-06-19 21:57:45,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:57:45
[2026-06-19 21:57:45,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:57:46,153.153 INFO    ] Initializing speech engine...
[2026-06-19 21:57:46,160.160 INFO    ] 2026-06-19 21:57:46
[2026-06-19 21:57:46,409.409 INFO    ] 2026-06-19 21:57:46
[2026-06-19 21:57:46,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:57:46,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:57:46,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:57:46,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:57:46,880.880 INFO    ] time= 19/06/2026 21:57:46
[2026-06-19 21:57:46,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:57:46,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:57:47,028.028 INFO    ] No existing commands found in stream
[2026-06-19 21:57:52,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:57:52,042.042 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 21:57:53,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:57:53,731.731 INFO    ] Checking for system updates...
[2026-06-19 21:57:53,767.767 INFO    ] 200
[2026-06-19 21:57:53,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:53,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:57:53,824.824 INFO    ] No update needed
[2026-06-19 21:57:53,827.827 INFO    ] Checking for camera pi updates...
[2026-06-19 21:57:53,863.863 INFO    ] 200
[2026-06-19 21:57:53,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:57:53,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:57:53,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:57:53,955.955 INFO    ] No camera update needed
[2026-06-19 21:57:53,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:57:53,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:57:53,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:57:53,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:57:56,012.012 INFO    ] ================================================
[2026-06-19 21:57:56,028.028 INFO    ] Launching Daemon at Fri Jun 19 21:57:56 IST 2026
[2026-06-19 21:57:56,039.039 INFO    ] ================================================
[2026-06-19 21:57:56,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:57:56
[2026-06-19 21:57:57,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:57:57,473.473 INFO    ] Initializing speech engine...
[2026-06-19 21:57:57,482.482 INFO    ] 2026-06-19 21:57:57
[2026-06-19 21:57:57,776.776 INFO    ] 2026-06-19 21:57:57
[2026-06-19 21:57:57,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:57:58,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:57:58,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:57:58,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:57:58,153.153 INFO    ] time= 19/06/2026 21:57:58
[2026-06-19 21:57:58,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:57:58,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:57:58,279.279 INFO    ] No existing commands found in stream
[2026-06-19 21:58:03,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:58:03,291.291 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-19 21:58:05,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 21:58:05,609.609 INFO    ] Checking for system updates...
[2026-06-19 21:58:05,646.646 INFO    ] 200
[2026-06-19 21:58:05,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:05,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:58:05,705.705 INFO    ] No update needed
[2026-06-19 21:58:05,707.707 INFO    ] Checking for camera pi updates...
[2026-06-19 21:58:05,746.746 INFO    ] 200
[2026-06-19 21:58:05,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:05,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:58:05,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:58:05,843.843 INFO    ] No camera update needed
[2026-06-19 21:58:05,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:58:05,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:58:05,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:58:05,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:58:07,899.899 INFO    ] ================================================
[2026-06-19 21:58:07,915.915 INFO    ] Launching Daemon at Fri Jun 19 21:58:07 IST 2026
[2026-06-19 21:58:07,926.926 INFO    ] ================================================
[2026-06-19 21:58:08,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:58:08
[2026-06-19 21:58:09,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:58:09,516.516 INFO    ] Initializing speech engine...
[2026-06-19 21:58:09,522.522 INFO    ] 2026-06-19 21:58:09
[2026-06-19 21:58:09,793.793 INFO    ] 2026-06-19 21:58:09
[2026-06-19 21:58:09,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:58:10,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:58:10,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:58:10,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:58:10,276.276 INFO    ] time= 19/06/2026 21:58:10
[2026-06-19 21:58:10,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:58:10,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:58:10,426.426 INFO    ] No existing commands found in stream
[2026-06-19 21:58:15,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:58:15,441.441 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 21:58:18,336.336 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:58:18,339.339 INFO    ] Checking for system updates...
[2026-06-19 21:58:18,376.376 INFO    ] 200
[2026-06-19 21:58:18,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:18,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:58:18,434.434 INFO    ] No update needed
[2026-06-19 21:58:18,437.437 INFO    ] Checking for camera pi updates...
[2026-06-19 21:58:18,474.474 INFO    ] 200
[2026-06-19 21:58:18,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:18,523.523 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:58:18,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:58:18,576.576 INFO    ] No camera update needed
[2026-06-19 21:58:18,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:58:18,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:58:18,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:58:18,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:58:20,633.633 INFO    ] ================================================
[2026-06-19 21:58:20,649.649 INFO    ] Launching Daemon at Fri Jun 19 21:58:20 IST 2026
[2026-06-19 21:58:20,660.660 INFO    ] ================================================
[2026-06-19 21:58:21,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:58:21
[2026-06-19 21:58:21,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:58:22,163.163 INFO    ] Initializing speech engine...
[2026-06-19 21:58:22,174.174 INFO    ] 2026-06-19 21:58:22
[2026-06-19 21:58:22,454.454 INFO    ] 2026-06-19 21:58:22
[2026-06-19 21:58:22,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:58:22,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:58:22,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:58:22,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:58:23,004.004 INFO    ] time= 19/06/2026 21:58:22
[2026-06-19 21:58:23,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:58:23,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:58:23,149.149 INFO    ] No existing commands found in stream
[2026-06-19 21:58:28,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:58:28,178.178 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 21:58:28,971.971 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 21:58:28,974.974 INFO    ] Checking for system updates...
[2026-06-19 21:58:29,010.010 INFO    ] 200
[2026-06-19 21:58:29,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:29,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:58:29,075.075 INFO    ] No update needed
[2026-06-19 21:58:29,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 21:58:29,114.114 INFO    ] 200
[2026-06-19 21:58:29,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:29,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:58:29,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:58:29,211.211 INFO    ] No camera update needed
[2026-06-19 21:58:29,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:58:29,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:58:29,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:58:29,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:58:31,270.270 INFO    ] ================================================
[2026-06-19 21:58:31,285.285 INFO    ] Launching Daemon at Fri Jun 19 21:58:31 IST 2026
[2026-06-19 21:58:31,296.296 INFO    ] ================================================
[2026-06-19 21:58:31,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:58:31
[2026-06-19 21:58:32,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:58:32,984.984 INFO    ] Initializing speech engine...
[2026-06-19 21:58:32,997.997 INFO    ] 2026-06-19 21:58:32
[2026-06-19 21:58:33,266.266 INFO    ] 2026-06-19 21:58:33
[2026-06-19 21:58:33,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:58:33,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:58:33,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:58:33,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:58:33,815.815 INFO    ] time= 19/06/2026 21:58:33
[2026-06-19 21:58:33,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:58:33,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:58:33,951.951 INFO    ] No existing commands found in stream
[2026-06-19 21:58:38,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:58:38,983.983 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 21:58:42,922.922 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 21:58:42,925.925 INFO    ] Checking for system updates...
[2026-06-19 21:58:42,963.963 INFO    ] 200
[2026-06-19 21:58:42,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:43,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:58:43,022.022 INFO    ] No update needed
[2026-06-19 21:58:43,025.025 INFO    ] Checking for camera pi updates...
[2026-06-19 21:58:43,060.060 INFO    ] 200
[2026-06-19 21:58:43,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:43,104.104 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:58:43,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:58:43,159.159 INFO    ] No camera update needed
[2026-06-19 21:58:43,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:58:43,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:58:43,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:58:43,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:58:45,218.218 INFO    ] ================================================
[2026-06-19 21:58:45,234.234 INFO    ] Launching Daemon at Fri Jun 19 21:58:45 IST 2026
[2026-06-19 21:58:45,245.245 INFO    ] ================================================
[2026-06-19 21:58:45,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:58:45
[2026-06-19 21:58:46,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:58:46,673.673 INFO    ] Initializing speech engine...
[2026-06-19 21:58:46,688.688 INFO    ] 2026-06-19 21:58:46
[2026-06-19 21:58:46,970.970 INFO    ] 2026-06-19 21:58:46
[2026-06-19 21:58:47,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:58:47,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:58:47,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:58:47,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:58:47,466.466 INFO    ] time= 19/06/2026 21:58:47
[2026-06-19 21:58:47,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:58:47,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:58:47,604.604 INFO    ] No existing commands found in stream
[2026-06-19 21:58:52,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:58:52,620.620 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 21:58:54,791.791 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:58:54,794.794 INFO    ] Checking for system updates...
[2026-06-19 21:58:54,831.831 INFO    ] 200
[2026-06-19 21:58:54,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:54,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:58:54,891.891 INFO    ] No update needed
[2026-06-19 21:58:54,894.894 INFO    ] Checking for camera pi updates...
[2026-06-19 21:58:54,929.929 INFO    ] 200
[2026-06-19 21:58:54,932.932 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:58:54,975.975 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:58:55,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:58:55,033.033 INFO    ] No camera update needed
[2026-06-19 21:58:55,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:58:55,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:58:55,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:58:55,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:58:57,093.093 INFO    ] ================================================
[2026-06-19 21:58:57,108.108 INFO    ] Launching Daemon at Fri Jun 19 21:58:57 IST 2026
[2026-06-19 21:58:57,119.119 INFO    ] ================================================
[2026-06-19 21:58:57,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:58:57
[2026-06-19 21:58:58,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:58:58,519.519 INFO    ] Initializing speech engine...
[2026-06-19 21:58:58,524.524 INFO    ] 2026-06-19 21:58:58
[2026-06-19 21:58:58,798.798 INFO    ] 2026-06-19 21:58:58
[2026-06-19 21:58:58,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:58:59,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:58:59,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:58:59,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:58:59,277.277 INFO    ] time= 19/06/2026 21:58:59
[2026-06-19 21:58:59,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:58:59,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:58:59,428.428 INFO    ] No existing commands found in stream
[2026-06-19 21:59:04,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:59:04,443.443 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-19 21:59:05,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:59:05,544.544 INFO    ] Checking for system updates...
[2026-06-19 21:59:05,583.583 INFO    ] 200
[2026-06-19 21:59:05,586.586 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:05,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:59:05,644.644 INFO    ] No update needed
[2026-06-19 21:59:05,647.647 INFO    ] Checking for camera pi updates...
[2026-06-19 21:59:05,682.682 INFO    ] 200
[2026-06-19 21:59:05,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:05,732.732 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:59:05,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:59:05,782.782 INFO    ] No camera update needed
[2026-06-19 21:59:05,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:59:05,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:59:05,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:59:05,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:59:07,841.841 INFO    ] ================================================
[2026-06-19 21:59:07,857.857 INFO    ] Launching Daemon at Fri Jun 19 21:59:07 IST 2026
[2026-06-19 21:59:07,871.871 INFO    ] ================================================
[2026-06-19 21:59:08,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:59:08
[2026-06-19 21:59:09,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:59:09,271.271 INFO    ] Initializing speech engine...
[2026-06-19 21:59:09,279.279 INFO    ] 2026-06-19 21:59:09
[2026-06-19 21:59:09,557.557 INFO    ] 2026-06-19 21:59:09
[2026-06-19 21:59:09,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:59:09,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:59:09,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:59:10,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:59:10,020.020 INFO    ] time= 19/06/2026 21:59:10
[2026-06-19 21:59:10,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:59:10,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:59:10,177.177 INFO    ] No existing commands found in stream
[2026-06-19 21:59:15,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:59:15,201.201 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 21:59:17,508.508 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:59:17,510.510 INFO    ] Checking for system updates...
[2026-06-19 21:59:17,546.546 INFO    ] 200
[2026-06-19 21:59:17,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:17,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:59:17,604.604 INFO    ] No update needed
[2026-06-19 21:59:17,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 21:59:17,640.640 INFO    ] 200
[2026-06-19 21:59:17,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:17,688.688 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:59:17,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:59:17,847.847 INFO    ] No camera update needed
[2026-06-19 21:59:17,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:59:17,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:59:17,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:59:17,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:59:19,904.904 INFO    ] ================================================
[2026-06-19 21:59:19,919.919 INFO    ] Launching Daemon at Fri Jun 19 21:59:19 IST 2026
[2026-06-19 21:59:19,930.930 INFO    ] ================================================
[2026-06-19 21:59:20,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:59:20
[2026-06-19 21:59:21,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:59:21,343.343 INFO    ] Initializing speech engine...
[2026-06-19 21:59:21,349.349 INFO    ] 2026-06-19 21:59:21
[2026-06-19 21:59:21,649.649 INFO    ] 2026-06-19 21:59:21
[2026-06-19 21:59:21,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:59:21,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:59:21,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:59:22,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:59:22,080.080 INFO    ] time= 19/06/2026 21:59:22
[2026-06-19 21:59:22,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:59:22,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:59:22,268.268 INFO    ] No existing commands found in stream
[2026-06-19 21:59:27,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:59:27,290.290 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 21:59:28,997.997 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:59:29,000.000 INFO    ] Checking for system updates...
[2026-06-19 21:59:29,036.036 INFO    ] 200
[2026-06-19 21:59:29,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:29,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:59:29,096.096 INFO    ] No update needed
[2026-06-19 21:59:29,099.099 INFO    ] Checking for camera pi updates...
[2026-06-19 21:59:29,135.135 INFO    ] 200
[2026-06-19 21:59:29,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:29,179.179 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:59:29,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:59:29,233.233 INFO    ] No camera update needed
[2026-06-19 21:59:29,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:59:29,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:59:29,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:59:29,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:59:31,293.293 INFO    ] ================================================
[2026-06-19 21:59:31,308.308 INFO    ] Launching Daemon at Fri Jun 19 21:59:31 IST 2026
[2026-06-19 21:59:31,319.319 INFO    ] ================================================
[2026-06-19 21:59:31,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:59:31
[2026-06-19 21:59:32,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:59:32,817.817 INFO    ] Initializing speech engine...
[2026-06-19 21:59:32,826.826 INFO    ] 2026-06-19 21:59:32
[2026-06-19 21:59:33,097.097 INFO    ] 2026-06-19 21:59:33
[2026-06-19 21:59:33,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:59:33,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:59:33,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:59:33,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:59:33,588.588 INFO    ] time= 19/06/2026 21:59:33
[2026-06-19 21:59:33,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:59:33,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:59:33,753.753 INFO    ] No existing commands found in stream
[2026-06-19 21:59:38,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:59:38,788.788 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 21:59:40,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 21:59:40,571.571 INFO    ] Checking for system updates...
[2026-06-19 21:59:40,606.606 INFO    ] 200
[2026-06-19 21:59:40,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:40,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:59:40,663.663 INFO    ] No update needed
[2026-06-19 21:59:40,666.666 INFO    ] Checking for camera pi updates...
[2026-06-19 21:59:40,700.700 INFO    ] 200
[2026-06-19 21:59:40,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:40,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:59:40,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:59:40,790.790 INFO    ] No camera update needed
[2026-06-19 21:59:40,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:59:40,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:59:40,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:59:40,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:59:42,846.846 INFO    ] ================================================
[2026-06-19 21:59:42,862.862 INFO    ] Launching Daemon at Fri Jun 19 21:59:42 IST 2026
[2026-06-19 21:59:42,874.874 INFO    ] ================================================
[2026-06-19 21:59:43,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:59:43
[2026-06-19 21:59:44,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:59:44,364.364 INFO    ] Initializing speech engine...
[2026-06-19 21:59:44,377.377 INFO    ] 2026-06-19 21:59:44
[2026-06-19 21:59:44,647.647 INFO    ] 2026-06-19 21:59:44
[2026-06-19 21:59:44,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:59:44,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:59:44,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:59:45,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:59:45,136.136 INFO    ] time= 19/06/2026 21:59:45
[2026-06-19 21:59:45,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:59:45,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:59:45,331.331 INFO    ] No existing commands found in stream
[2026-06-19 21:59:50,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 21:59:50,368.368 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 21:59:50,974.974 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 21:59:50,977.977 INFO    ] Checking for system updates...
[2026-06-19 21:59:51,015.015 INFO    ] 200
[2026-06-19 21:59:51,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:51,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 21:59:51,075.075 INFO    ] No update needed
[2026-06-19 21:59:51,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 21:59:51,114.114 INFO    ] 200
[2026-06-19 21:59:51,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 21:59:51,160.160 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 21:59:51,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 21:59:51,216.216 INFO    ] No camera update needed
[2026-06-19 21:59:51,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 21:59:51,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 21:59:51,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 21:59:51,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 21:59:53,275.275 INFO    ] ================================================
[2026-06-19 21:59:53,290.290 INFO    ] Launching Daemon at Fri Jun 19 21:59:53 IST 2026
[2026-06-19 21:59:53,302.302 INFO    ] ================================================
[2026-06-19 21:59:53,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 21:59:53
[2026-06-19 21:59:54,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 21:59:54,771.771 INFO    ] Initializing speech engine...
[2026-06-19 21:59:54,777.777 INFO    ] 2026-06-19 21:59:54
[2026-06-19 21:59:55,024.024 INFO    ] 2026-06-19 21:59:55
[2026-06-19 21:59:55,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 21:59:55,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 21:59:55,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 21:59:55,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 21:59:55,507.507 INFO    ] time= 19/06/2026 21:59:55
[2026-06-19 21:59:55,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 21:59:55,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-19 21:59:55,648.648 INFO    ] No existing commands found in stream
[2026-06-19 22:00:00,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:00:00,670.670 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-19 22:00:01,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:00:01,235.235 INFO    ] Checking for system updates...
[2026-06-19 22:00:01,284.284 INFO    ] 200
[2026-06-19 22:00:01,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:01,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:00:01,498.498 INFO    ] No update needed
[2026-06-19 22:00:01,519.519 INFO    ] Checking for camera pi updates...
[2026-06-19 22:00:01,678.678 INFO    ] 200
[2026-06-19 22:00:01,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:02,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:00:02,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:00:02,496.496 INFO    ] No camera update needed
[2026-06-19 22:00:02,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:00:02,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:00:02,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:00:02,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:00:04,828.828 INFO    ] ================================================
[2026-06-19 22:00:04,938.938 INFO    ] Launching Daemon at Fri Jun 19 22:00:04 IST 2026
[2026-06-19 22:00:05,008.008 INFO    ] ================================================
[2026-06-19 22:00:06,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:00:06
[2026-06-19 22:00:07,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:00:07,361.361 INFO    ] Initializing speech engine...
[2026-06-19 22:00:07,374.374 INFO    ] 2026-06-19 22:00:07
[2026-06-19 22:00:07,666.666 INFO    ] 2026-06-19 22:00:07
[2026-06-19 22:00:07,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:00:07,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:00:07,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:00:08,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:00:08,143.143 INFO    ] time= 19/06/2026 22:00:08
[2026-06-19 22:00:08,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:00:08,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:00:08,340.340 INFO    ] No existing commands found in stream
[2026-06-19 22:00:13,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:00:13,363.363 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 22:00:13,807.807 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:00:13,810.810 INFO    ] Checking for system updates...
[2026-06-19 22:00:13,846.846 INFO    ] 200
[2026-06-19 22:00:13,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:13,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:00:13,904.904 INFO    ] No update needed
[2026-06-19 22:00:13,906.906 INFO    ] Checking for camera pi updates...
[2026-06-19 22:00:13,942.942 INFO    ] 200
[2026-06-19 22:00:13,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:13,985.985 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:00:14,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:00:14,050.050 INFO    ] No camera update needed
[2026-06-19 22:00:14,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:00:14,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:00:14,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:00:14,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:00:16,106.106 INFO    ] ================================================
[2026-06-19 22:00:16,122.122 INFO    ] Launching Daemon at Fri Jun 19 22:00:16 IST 2026
[2026-06-19 22:00:16,133.133 INFO    ] ================================================
[2026-06-19 22:00:16,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:00:16
[2026-06-19 22:00:17,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:00:17,591.591 INFO    ] Initializing speech engine...
[2026-06-19 22:00:17,597.597 INFO    ] 2026-06-19 22:00:17
[2026-06-19 22:00:17,890.890 INFO    ] 2026-06-19 22:00:17
[2026-06-19 22:00:17,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:00:18,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:00:18,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:00:18,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:00:18,263.263 INFO    ] time= 19/06/2026 22:00:18
[2026-06-19 22:00:18,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:00:18,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:00:18,426.426 INFO    ] No existing commands found in stream
[2026-06-19 22:00:23,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:00:23,439.439 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-19 22:00:27,205.205 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:00:27,208.208 INFO    ] Checking for system updates...
[2026-06-19 22:00:27,245.245 INFO    ] 200
[2026-06-19 22:00:27,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:27,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:00:27,311.311 INFO    ] No update needed
[2026-06-19 22:00:27,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 22:00:27,347.347 INFO    ] 200
[2026-06-19 22:00:27,350.350 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:27,390.390 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:00:27,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:00:27,443.443 INFO    ] No camera update needed
[2026-06-19 22:00:27,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:00:27,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:00:27,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:00:27,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:00:29,501.501 INFO    ] ================================================
[2026-06-19 22:00:29,517.517 INFO    ] Launching Daemon at Fri Jun 19 22:00:29 IST 2026
[2026-06-19 22:00:29,528.528 INFO    ] ================================================
[2026-06-19 22:00:30,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:00:30
[2026-06-19 22:00:30,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:00:30,940.940 INFO    ] Initializing speech engine...
[2026-06-19 22:00:30,949.949 INFO    ] 2026-06-19 22:00:30
[2026-06-19 22:00:31,245.245 INFO    ] 2026-06-19 22:00:31
[2026-06-19 22:00:31,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:00:31,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:00:31,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:00:31,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:00:31,646.646 INFO    ] time= 19/06/2026 22:00:31
[2026-06-19 22:00:31,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:00:31,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:00:31,757.757 INFO    ] No existing commands found in stream
[2026-06-19 22:00:36,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:00:36,771.771 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 22:00:37,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:00:37,179.179 INFO    ] Checking for system updates...
[2026-06-19 22:00:37,217.217 INFO    ] 200
[2026-06-19 22:00:37,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:37,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:00:37,274.274 INFO    ] No update needed
[2026-06-19 22:00:37,277.277 INFO    ] Checking for camera pi updates...
[2026-06-19 22:00:37,310.310 INFO    ] 200
[2026-06-19 22:00:37,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:37,355.355 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:00:37,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:00:37,406.406 INFO    ] No camera update needed
[2026-06-19 22:00:37,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:00:37,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:00:37,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:00:37,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:00:39,463.463 INFO    ] ================================================
[2026-06-19 22:00:39,478.478 INFO    ] Launching Daemon at Fri Jun 19 22:00:39 IST 2026
[2026-06-19 22:00:39,489.489 INFO    ] ================================================
[2026-06-19 22:00:40,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:00:40
[2026-06-19 22:00:40,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:00:41,018.018 INFO    ] Initializing speech engine...
[2026-06-19 22:00:41,031.031 INFO    ] 2026-06-19 22:00:41
[2026-06-19 22:00:41,298.298 INFO    ] 2026-06-19 22:00:41
[2026-06-19 22:00:41,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:00:41,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:00:41,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:00:41,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:00:41,733.733 INFO    ] time= 19/06/2026 22:00:41
[2026-06-19 22:00:41,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:00:41,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:00:41,876.876 INFO    ] No existing commands found in stream
[2026-06-19 22:00:46,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:00:46,901.901 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 22:00:50,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:00:50,235.235 INFO    ] Checking for system updates...
[2026-06-19 22:00:50,272.272 INFO    ] 200
[2026-06-19 22:00:50,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:50,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:00:50,333.333 INFO    ] No update needed
[2026-06-19 22:00:50,336.336 INFO    ] Checking for camera pi updates...
[2026-06-19 22:00:50,371.371 INFO    ] 200
[2026-06-19 22:00:50,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:00:50,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:00:50,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:00:50,450.450 INFO    ] No camera update needed
[2026-06-19 22:00:50,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:00:50,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:00:50,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:00:50,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:00:52,509.509 INFO    ] ================================================
[2026-06-19 22:00:52,526.526 INFO    ] Launching Daemon at Fri Jun 19 22:00:52 IST 2026
[2026-06-19 22:00:52,541.541 INFO    ] ================================================
[2026-06-19 22:00:53,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:00:53
[2026-06-19 22:00:53,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:00:53,995.995 INFO    ] Initializing speech engine...
[2026-06-19 22:00:54,004.004 INFO    ] 2026-06-19 22:00:53
[2026-06-19 22:00:54,252.252 INFO    ] 2026-06-19 22:00:54
[2026-06-19 22:00:54,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:00:54,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:00:54,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:00:54,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:00:54,756.756 INFO    ] time= 19/06/2026 22:00:54
[2026-06-19 22:00:54,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:00:54,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:00:54,940.940 INFO    ] No existing commands found in stream
[2026-06-19 22:00:59,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:00:59,969.969 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 22:01:01,004.004 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:01:01,006.006 INFO    ] Checking for system updates...
[2026-06-19 22:01:01,046.046 INFO    ] 200
[2026-06-19 22:01:01,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:01,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:01:01,103.103 INFO    ] No update needed
[2026-06-19 22:01:01,106.106 INFO    ] Checking for camera pi updates...
[2026-06-19 22:01:01,144.144 INFO    ] 200
[2026-06-19 22:01:01,146.146 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:01,187.187 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:01:01,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:01:01,239.239 INFO    ] No camera update needed
[2026-06-19 22:01:01,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:01:01,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:01:01,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:01:01,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:01:03,300.300 INFO    ] ================================================
[2026-06-19 22:01:03,319.319 INFO    ] Launching Daemon at Fri Jun 19 22:01:03 IST 2026
[2026-06-19 22:01:03,338.338 INFO    ] ================================================
[2026-06-19 22:01:03,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:01:03
[2026-06-19 22:01:04,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:01:04,807.807 INFO    ] Initializing speech engine...
[2026-06-19 22:01:04,817.817 INFO    ] 2026-06-19 22:01:04
[2026-06-19 22:01:05,079.079 INFO    ] 2026-06-19 22:01:05
[2026-06-19 22:01:05,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:01:05,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:01:05,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:01:05,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:01:05,521.521 INFO    ] time= 19/06/2026 22:01:05
[2026-06-19 22:01:05,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:01:05,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:01:05,681.681 INFO    ] No existing commands found in stream
[2026-06-19 22:01:10,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:01:10,696.696 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 22:01:13,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:01:13,627.627 INFO    ] Checking for system updates...
[2026-06-19 22:01:13,664.664 INFO    ] 200
[2026-06-19 22:01:13,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:13,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:01:13,723.723 INFO    ] No update needed
[2026-06-19 22:01:13,726.726 INFO    ] Checking for camera pi updates...
[2026-06-19 22:01:13,767.767 INFO    ] 200
[2026-06-19 22:01:13,769.769 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:13,811.811 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:01:13,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:01:13,858.858 INFO    ] No camera update needed
[2026-06-19 22:01:13,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:01:13,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:01:13,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:01:13,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:01:15,916.916 INFO    ] ================================================
[2026-06-19 22:01:15,931.931 INFO    ] Launching Daemon at Fri Jun 19 22:01:15 IST 2026
[2026-06-19 22:01:15,942.942 INFO    ] ================================================
[2026-06-19 22:01:16,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:01:16
[2026-06-19 22:01:17,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:01:17,391.391 INFO    ] Initializing speech engine...
[2026-06-19 22:01:17,407.407 INFO    ] 2026-06-19 22:01:17
[2026-06-19 22:01:17,693.693 INFO    ] 2026-06-19 22:01:17
[2026-06-19 22:01:17,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:01:17,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:01:17,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:01:18,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:01:18,069.069 INFO    ] time= 19/06/2026 22:01:18
[2026-06-19 22:01:18,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:01:18,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:01:18,241.241 INFO    ] No existing commands found in stream
[2026-06-19 22:01:23,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:01:23,274.274 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 22:01:25,484.484 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:01:25,487.487 INFO    ] Checking for system updates...
[2026-06-19 22:01:25,524.524 INFO    ] 200
[2026-06-19 22:01:25,527.527 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:25,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:01:25,589.589 INFO    ] No update needed
[2026-06-19 22:01:25,592.592 INFO    ] Checking for camera pi updates...
[2026-06-19 22:01:25,630.630 INFO    ] 200
[2026-06-19 22:01:25,633.633 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:25,675.675 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:01:25,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:01:25,826.826 INFO    ] No camera update needed
[2026-06-19 22:01:25,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:01:25,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:01:25,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:01:25,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:01:27,882.882 INFO    ] ================================================
[2026-06-19 22:01:27,897.897 INFO    ] Launching Daemon at Fri Jun 19 22:01:27 IST 2026
[2026-06-19 22:01:27,908.908 INFO    ] ================================================
[2026-06-19 22:01:28,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:01:28
[2026-06-19 22:01:29,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:01:29,483.483 INFO    ] Initializing speech engine...
[2026-06-19 22:01:29,489.489 INFO    ] 2026-06-19 22:01:29
[2026-06-19 22:01:29,771.771 INFO    ] 2026-06-19 22:01:29
[2026-06-19 22:01:29,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:01:30,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:01:30,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:01:30,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:01:30,226.226 INFO    ] time= 19/06/2026 22:01:30
[2026-06-19 22:01:30,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:01:30,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:01:30,413.413 INFO    ] No existing commands found in stream
[2026-06-19 22:01:35,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:01:35,454.454 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 22:01:39,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:01:39,474.474 INFO    ] Checking for system updates...
[2026-06-19 22:01:39,512.512 INFO    ] 200
[2026-06-19 22:01:39,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:39,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:01:39,578.578 INFO    ] No update needed
[2026-06-19 22:01:39,581.581 INFO    ] Checking for camera pi updates...
[2026-06-19 22:01:39,615.615 INFO    ] 200
[2026-06-19 22:01:39,617.617 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:39,662.662 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:01:39,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:01:39,717.717 INFO    ] No camera update needed
[2026-06-19 22:01:39,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:01:39,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:01:39,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:01:39,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:01:41,774.774 INFO    ] ================================================
[2026-06-19 22:01:41,789.789 INFO    ] Launching Daemon at Fri Jun 19 22:01:41 IST 2026
[2026-06-19 22:01:41,801.801 INFO    ] ================================================
[2026-06-19 22:01:42,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:01:42
[2026-06-19 22:01:42,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:01:43,208.208 INFO    ] Initializing speech engine...
[2026-06-19 22:01:43,229.229 INFO    ] 2026-06-19 22:01:43
[2026-06-19 22:01:43,490.490 INFO    ] 2026-06-19 22:01:43
[2026-06-19 22:01:43,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:01:43,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:01:43,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:01:43,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:01:43,955.955 INFO    ] time= 19/06/2026 22:01:43
[2026-06-19 22:01:44,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:01:44,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:01:44,121.121 INFO    ] No existing commands found in stream
[2026-06-19 22:01:49,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:01:49,136.136 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 22:01:49,780.780 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:01:49,783.783 INFO    ] Checking for system updates...
[2026-06-19 22:01:49,820.820 INFO    ] 200
[2026-06-19 22:01:49,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:49,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:01:49,883.883 INFO    ] No update needed
[2026-06-19 22:01:49,886.886 INFO    ] Checking for camera pi updates...
[2026-06-19 22:01:49,920.920 INFO    ] 200
[2026-06-19 22:01:49,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:01:49,964.964 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:01:50,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:01:50,003.003 INFO    ] No camera update needed
[2026-06-19 22:01:50,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:01:50,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:01:50,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:01:50,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:01:52,059.059 INFO    ] ================================================
[2026-06-19 22:01:52,075.075 INFO    ] Launching Daemon at Fri Jun 19 22:01:52 IST 2026
[2026-06-19 22:01:52,086.086 INFO    ] ================================================
[2026-06-19 22:01:52,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:01:52
[2026-06-19 22:01:53,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:01:53,556.556 INFO    ] Initializing speech engine...
[2026-06-19 22:01:53,566.566 INFO    ] 2026-06-19 22:01:53
[2026-06-19 22:01:53,831.831 INFO    ] 2026-06-19 22:01:53
[2026-06-19 22:01:53,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:01:54,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:01:54,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:01:54,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:01:54,389.389 INFO    ] time= 19/06/2026 22:01:54
[2026-06-19 22:01:54,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:01:54,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:01:54,534.534 INFO    ] No existing commands found in stream
[2026-06-19 22:01:59,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:01:59,561.561 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 22:02:00,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:02:00,172.172 INFO    ] Checking for system updates...
[2026-06-19 22:02:00,208.208 INFO    ] 200
[2026-06-19 22:02:00,210.210 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:00,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:02:00,266.266 INFO    ] No update needed
[2026-06-19 22:02:00,268.268 INFO    ] Checking for camera pi updates...
[2026-06-19 22:02:00,303.303 INFO    ] 200
[2026-06-19 22:02:00,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:00,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:02:00,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:02:00,399.399 INFO    ] No camera update needed
[2026-06-19 22:02:00,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:02:00,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:02:00,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:02:00,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:02:02,458.458 INFO    ] ================================================
[2026-06-19 22:02:02,476.476 INFO    ] Launching Daemon at Fri Jun 19 22:02:02 IST 2026
[2026-06-19 22:02:02,489.489 INFO    ] ================================================
[2026-06-19 22:02:03,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:02:03
[2026-06-19 22:02:03,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:02:04,031.031 INFO    ] Initializing speech engine...
[2026-06-19 22:02:04,040.040 INFO    ] 2026-06-19 22:02:04
[2026-06-19 22:02:04,334.334 INFO    ] 2026-06-19 22:02:04
[2026-06-19 22:02:04,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:02:04,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:02:04,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:02:04,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:02:04,716.716 INFO    ] time= 19/06/2026 22:02:04
[2026-06-19 22:02:04,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:02:04,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:02:04,841.841 INFO    ] No existing commands found in stream
[2026-06-19 22:02:09,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:02:09,857.857 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 22:02:12,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:02:12,895.895 INFO    ] Checking for system updates...
[2026-06-19 22:02:12,949.949 INFO    ] 200
[2026-06-19 22:02:12,952.952 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:13,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:02:13,009.009 INFO    ] No update needed
[2026-06-19 22:02:13,012.012 INFO    ] Checking for camera pi updates...
[2026-06-19 22:02:13,047.047 INFO    ] 200
[2026-06-19 22:02:13,050.050 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:13,092.092 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:02:13,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:02:13,138.138 INFO    ] No camera update needed
[2026-06-19 22:02:13,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:02:13,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:02:13,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:02:13,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:02:15,198.198 INFO    ] ================================================
[2026-06-19 22:02:15,213.213 INFO    ] Launching Daemon at Fri Jun 19 22:02:15 IST 2026
[2026-06-19 22:02:15,224.224 INFO    ] ================================================
[2026-06-19 22:02:15,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:02:15
[2026-06-19 22:02:16,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:02:16,632.632 INFO    ] Initializing speech engine...
[2026-06-19 22:02:16,655.655 INFO    ] 2026-06-19 22:02:16
[2026-06-19 22:02:16,912.912 INFO    ] 2026-06-19 22:02:16
[2026-06-19 22:02:16,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:02:17,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:02:17,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:02:17,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:02:17,287.287 INFO    ] time= 19/06/2026 22:02:17
[2026-06-19 22:02:17,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:02:17,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:02:17,451.451 INFO    ] No existing commands found in stream
[2026-06-19 22:02:22,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:02:22,484.484 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 22:02:23,201.201 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:02:23,204.204 INFO    ] Checking for system updates...
[2026-06-19 22:02:23,241.241 INFO    ] 200
[2026-06-19 22:02:23,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:23,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:02:23,300.300 INFO    ] No update needed
[2026-06-19 22:02:23,303.303 INFO    ] Checking for camera pi updates...
[2026-06-19 22:02:23,338.338 INFO    ] 200
[2026-06-19 22:02:23,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:23,391.391 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:02:23,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:02:23,450.450 INFO    ] No camera update needed
[2026-06-19 22:02:23,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:02:23,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:02:23,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:02:23,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:02:25,510.510 INFO    ] ================================================
[2026-06-19 22:02:25,530.530 INFO    ] Launching Daemon at Fri Jun 19 22:02:25 IST 2026
[2026-06-19 22:02:25,541.541 INFO    ] ================================================
[2026-06-19 22:02:26,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:02:26
[2026-06-19 22:02:26,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:02:26,952.952 INFO    ] Initializing speech engine...
[2026-06-19 22:02:26,975.975 INFO    ] 2026-06-19 22:02:26
[2026-06-19 22:02:27,232.232 INFO    ] 2026-06-19 22:02:27
[2026-06-19 22:02:27,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:02:27,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:02:27,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:02:27,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:02:27,740.740 INFO    ] time= 19/06/2026 22:02:27
[2026-06-19 22:02:27,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:02:27,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:02:27,940.940 INFO    ] No existing commands found in stream
[2026-06-19 22:02:32,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:02:32,970.970 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 22:02:35,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:02:35,846.846 INFO    ] Checking for system updates...
[2026-06-19 22:02:35,884.884 INFO    ] 200
[2026-06-19 22:02:35,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:35,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:02:35,950.950 INFO    ] No update needed
[2026-06-19 22:02:35,953.953 INFO    ] Checking for camera pi updates...
[2026-06-19 22:02:35,993.993 INFO    ] 200
[2026-06-19 22:02:35,996.996 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:36,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:02:36,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:02:36,087.087 INFO    ] No camera update needed
[2026-06-19 22:02:36,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:02:36,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:02:36,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:02:36,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:02:38,146.146 INFO    ] ================================================
[2026-06-19 22:02:38,161.161 INFO    ] Launching Daemon at Fri Jun 19 22:02:38 IST 2026
[2026-06-19 22:02:38,172.172 INFO    ] ================================================
[2026-06-19 22:02:38,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:02:38
[2026-06-19 22:02:39,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:02:39,589.589 INFO    ] Initializing speech engine...
[2026-06-19 22:02:39,598.598 INFO    ] 2026-06-19 22:02:39
[2026-06-19 22:02:39,850.850 INFO    ] 2026-06-19 22:02:39
[2026-06-19 22:02:39,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:02:40,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:02:40,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:02:40,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:02:40,287.287 INFO    ] time= 19/06/2026 22:02:40
[2026-06-19 22:02:40,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:02:40,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:02:40,459.459 INFO    ] No existing commands found in stream
[2026-06-19 22:02:45,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:02:45,473.473 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 22:02:47,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:02:47,625.625 INFO    ] Checking for system updates...
[2026-06-19 22:02:47,661.661 INFO    ] 200
[2026-06-19 22:02:47,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:47,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:02:47,722.722 INFO    ] No update needed
[2026-06-19 22:02:47,726.726 INFO    ] Checking for camera pi updates...
[2026-06-19 22:02:47,770.770 INFO    ] 200
[2026-06-19 22:02:47,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:02:47,817.817 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:02:47,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:02:47,854.854 INFO    ] No camera update needed
[2026-06-19 22:02:47,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:02:47,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:02:47,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:02:47,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:02:49,918.918 INFO    ] ================================================
[2026-06-19 22:02:49,984.984 INFO    ] Launching Daemon at Fri Jun 19 22:02:49 IST 2026
[2026-06-19 22:02:50,999.999 INFO    ] ================================================
[2026-06-19 22:02:50,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:02:50
[2026-06-19 22:02:51,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:02:51,715.715 INFO    ] Initializing speech engine...
[2026-06-19 22:02:51,724.724 INFO    ] 2026-06-19 22:02:51
[2026-06-19 22:02:52,010.010 INFO    ] 2026-06-19 22:02:52
[2026-06-19 22:02:52,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:02:52,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:02:52,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:02:52,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:02:52,519.519 INFO    ] time= 19/06/2026 22:02:52
[2026-06-19 22:02:52,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:02:52,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:02:52,665.665 INFO    ] No existing commands found in stream
[2026-06-19 22:02:57,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:02:57,695.695 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-19 22:03:00,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:03:00,430.430 INFO    ] Checking for system updates...
[2026-06-19 22:03:00,467.467 INFO    ] 200
[2026-06-19 22:03:00,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:00,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:03:00,526.526 INFO    ] No update needed
[2026-06-19 22:03:00,529.529 INFO    ] Checking for camera pi updates...
[2026-06-19 22:03:00,564.564 INFO    ] 200
[2026-06-19 22:03:00,567.567 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:00,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:03:00,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:03:00,664.664 INFO    ] No camera update needed
[2026-06-19 22:03:00,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:03:00,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:03:00,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:03:00,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:03:02,740.740 INFO    ] ================================================
[2026-06-19 22:03:02,764.764 INFO    ] Launching Daemon at Fri Jun 19 22:03:02 IST 2026
[2026-06-19 22:03:02,782.782 INFO    ] ================================================
[2026-06-19 22:03:03,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:03:03
[2026-06-19 22:03:04,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:03:04,299.299 INFO    ] Initializing speech engine...
[2026-06-19 22:03:04,308.308 INFO    ] 2026-06-19 22:03:04
[2026-06-19 22:03:04,601.601 INFO    ] 2026-06-19 22:03:04
[2026-06-19 22:03:04,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:03:04,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:03:04,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:03:04,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:03:04,953.953 INFO    ] time= 19/06/2026 22:03:04
[2026-06-19 22:03:04,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:03:04,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:03:05,038.038 INFO    ] No existing commands found in stream
[2026-06-19 22:03:10,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:03:10,053.053 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 22:03:13,027.027 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:03:13,030.030 INFO    ] Checking for system updates...
[2026-06-19 22:03:13,067.067 INFO    ] 200
[2026-06-19 22:03:13,070.070 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:13,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:03:13,133.133 INFO    ] No update needed
[2026-06-19 22:03:13,136.136 INFO    ] Checking for camera pi updates...
[2026-06-19 22:03:13,171.171 INFO    ] 200
[2026-06-19 22:03:13,173.173 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:13,220.220 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:03:13,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:03:13,277.277 INFO    ] No camera update needed
[2026-06-19 22:03:13,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:03:13,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:03:13,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:03:13,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:03:15,336.336 INFO    ] ================================================
[2026-06-19 22:03:15,352.352 INFO    ] Launching Daemon at Fri Jun 19 22:03:15 IST 2026
[2026-06-19 22:03:15,364.364 INFO    ] ================================================
[2026-06-19 22:03:15,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:03:15
[2026-06-19 22:03:16,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:03:16,859.859 INFO    ] Initializing speech engine...
[2026-06-19 22:03:16,868.868 INFO    ] 2026-06-19 22:03:16
[2026-06-19 22:03:17,164.164 INFO    ] 2026-06-19 22:03:17
[2026-06-19 22:03:17,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:03:17,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:03:17,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:03:17,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:03:17,922.922 INFO    ] time= 19/06/2026 22:03:17
[2026-06-19 22:03:17,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:03:18,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:03:18,120.120 INFO    ] No existing commands found in stream
[2026-06-19 22:03:23,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:03:23,153.153 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 22:03:25,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:03:25,369.369 INFO    ] Checking for system updates...
[2026-06-19 22:03:25,406.406 INFO    ] 200
[2026-06-19 22:03:25,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:25,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:03:25,465.465 INFO    ] No update needed
[2026-06-19 22:03:25,468.468 INFO    ] Checking for camera pi updates...
[2026-06-19 22:03:25,503.503 INFO    ] 200
[2026-06-19 22:03:25,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:25,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:03:25,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:03:25,595.595 INFO    ] No camera update needed
[2026-06-19 22:03:25,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:03:25,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:03:25,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:03:25,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:03:27,655.655 INFO    ] ================================================
[2026-06-19 22:03:27,671.671 INFO    ] Launching Daemon at Fri Jun 19 22:03:27 IST 2026
[2026-06-19 22:03:27,682.682 INFO    ] ================================================
[2026-06-19 22:03:28,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:03:28
[2026-06-19 22:03:28,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:03:29,167.167 INFO    ] Initializing speech engine...
[2026-06-19 22:03:29,172.172 INFO    ] 2026-06-19 22:03:29
[2026-06-19 22:03:29,459.459 INFO    ] 2026-06-19 22:03:29
[2026-06-19 22:03:29,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:03:29,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:03:29,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:03:29,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:03:29,822.822 INFO    ] time= 19/06/2026 22:03:29
[2026-06-19 22:03:29,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:03:29,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:03:29,932.932 INFO    ] No existing commands found in stream
[2026-06-19 22:03:34,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:03:34,952.952 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 22:03:37,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:03:37,299.299 INFO    ] Checking for system updates...
[2026-06-19 22:03:37,336.336 INFO    ] 200
[2026-06-19 22:03:37,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:37,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:03:37,394.394 INFO    ] No update needed
[2026-06-19 22:03:37,396.396 INFO    ] Checking for camera pi updates...
[2026-06-19 22:03:37,430.430 INFO    ] 200
[2026-06-19 22:03:37,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:37,473.473 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:03:37,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:03:37,524.524 INFO    ] No camera update needed
[2026-06-19 22:03:37,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:03:37,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:03:37,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:03:37,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:03:39,582.582 INFO    ] ================================================
[2026-06-19 22:03:39,598.598 INFO    ] Launching Daemon at Fri Jun 19 22:03:39 IST 2026
[2026-06-19 22:03:39,609.609 INFO    ] ================================================
[2026-06-19 22:03:40,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:03:40
[2026-06-19 22:03:40,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:03:41,057.057 INFO    ] Initializing speech engine...
[2026-06-19 22:03:41,070.070 INFO    ] 2026-06-19 22:03:41
[2026-06-19 22:03:41,321.321 INFO    ] 2026-06-19 22:03:41
[2026-06-19 22:03:41,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:03:41,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:03:41,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:03:41,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:03:41,807.807 INFO    ] time= 19/06/2026 22:03:41
[2026-06-19 22:03:41,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:03:41,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:03:42,017.017 INFO    ] No existing commands found in stream
[2026-06-19 22:03:47,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:03:47,045.045 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 22:03:48,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:03:48,906.906 INFO    ] Checking for system updates...
[2026-06-19 22:03:48,943.943 INFO    ] 200
[2026-06-19 22:03:48,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:49,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:03:49,004.004 INFO    ] No update needed
[2026-06-19 22:03:49,006.006 INFO    ] Checking for camera pi updates...
[2026-06-19 22:03:49,041.041 INFO    ] 200
[2026-06-19 22:03:49,044.044 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:03:49,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:03:49,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:03:49,124.124 INFO    ] No camera update needed
[2026-06-19 22:03:49,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:03:49,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:03:49,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:03:49,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:03:51,184.184 INFO    ] ================================================
[2026-06-19 22:03:51,199.199 INFO    ] Launching Daemon at Fri Jun 19 22:03:51 IST 2026
[2026-06-19 22:03:51,210.210 INFO    ] ================================================
[2026-06-19 22:03:51,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:03:51
[2026-06-19 22:03:52,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:03:52,669.669 INFO    ] Initializing speech engine...
[2026-06-19 22:03:52,679.679 INFO    ] 2026-06-19 22:03:52
[2026-06-19 22:03:52,926.926 INFO    ] 2026-06-19 22:03:52
[2026-06-19 22:03:52,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:03:53,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:03:53,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:03:53,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:03:53,422.422 INFO    ] time= 19/06/2026 22:03:53
[2026-06-19 22:03:53,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:03:53,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:03:53,608.608 INFO    ] No existing commands found in stream
[2026-06-19 22:03:58,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:03:58,641.641 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 22:04:02,612.612 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:04:02,615.615 INFO    ] Checking for system updates...
[2026-06-19 22:04:02,655.655 INFO    ] 200
[2026-06-19 22:04:02,658.658 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:02,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:04:02,724.724 INFO    ] No update needed
[2026-06-19 22:04:02,728.728 INFO    ] Checking for camera pi updates...
[2026-06-19 22:04:02,772.772 INFO    ] 200
[2026-06-19 22:04:02,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:02,829.829 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:04:02,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:04:02,863.863 INFO    ] No camera update needed
[2026-06-19 22:04:02,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:04:02,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:04:02,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:04:02,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:04:04,927.927 INFO    ] ================================================
[2026-06-19 22:04:04,943.943 INFO    ] Launching Daemon at Fri Jun 19 22:04:04 IST 2026
[2026-06-19 22:04:04,954.954 INFO    ] ================================================
[2026-06-19 22:04:05,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:04:05
[2026-06-19 22:04:06,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:04:06,388.388 INFO    ] Initializing speech engine...
[2026-06-19 22:04:06,413.413 INFO    ] 2026-06-19 22:04:06
[2026-06-19 22:04:06,691.691 INFO    ] 2026-06-19 22:04:06
[2026-06-19 22:04:06,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:04:06,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:04:06,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:04:07,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:04:07,048.048 INFO    ] time= 19/06/2026 22:04:07
[2026-06-19 22:04:07,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:04:07,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:04:07,124.124 INFO    ] No existing commands found in stream
[2026-06-19 22:04:12,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:04:12,140.140 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 22:04:15,154.154 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:04:15,156.156 INFO    ] Checking for system updates...
[2026-06-19 22:04:15,194.194 INFO    ] 200
[2026-06-19 22:04:15,197.197 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:15,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:04:15,261.261 INFO    ] No update needed
[2026-06-19 22:04:15,264.264 INFO    ] Checking for camera pi updates...
[2026-06-19 22:04:15,299.299 INFO    ] 200
[2026-06-19 22:04:15,302.302 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:15,344.344 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:04:15,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:04:15,395.395 INFO    ] No camera update needed
[2026-06-19 22:04:15,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:04:15,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:04:15,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:04:15,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:04:17,461.461 INFO    ] ================================================
[2026-06-19 22:04:17,476.476 INFO    ] Launching Daemon at Fri Jun 19 22:04:17 IST 2026
[2026-06-19 22:04:17,487.487 INFO    ] ================================================
[2026-06-19 22:04:18,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:04:18
[2026-06-19 22:04:18,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:04:18,999.999 INFO    ] Initializing speech engine...
[2026-06-19 22:04:19,007.007 INFO    ] 2026-06-19 22:04:19
[2026-06-19 22:04:19,311.311 INFO    ] 2026-06-19 22:04:19
[2026-06-19 22:04:19,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:04:19,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:04:19,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:04:19,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:04:19,813.813 INFO    ] time= 19/06/2026 22:04:19
[2026-06-19 22:04:19,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:04:19,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:04:19,941.941 INFO    ] No existing commands found in stream
[2026-06-19 22:04:24,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:04:24,976.976 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-19 22:04:29,323.323 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:04:29,325.325 INFO    ] Checking for system updates...
[2026-06-19 22:04:29,362.362 INFO    ] 200
[2026-06-19 22:04:29,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:29,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:04:29,423.423 INFO    ] No update needed
[2026-06-19 22:04:29,426.426 INFO    ] Checking for camera pi updates...
[2026-06-19 22:04:29,462.462 INFO    ] 200
[2026-06-19 22:04:29,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:29,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:04:29,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:04:29,566.566 INFO    ] No camera update needed
[2026-06-19 22:04:29,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:04:29,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:04:29,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:04:29,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:04:31,626.626 INFO    ] ================================================
[2026-06-19 22:04:31,643.643 INFO    ] Launching Daemon at Fri Jun 19 22:04:31 IST 2026
[2026-06-19 22:04:31,654.654 INFO    ] ================================================
[2026-06-19 22:04:32,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:04:32
[2026-06-19 22:04:32,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:04:33,181.181 INFO    ] Initializing speech engine...
[2026-06-19 22:04:33,188.188 INFO    ] 2026-06-19 22:04:33
[2026-06-19 22:04:33,463.463 INFO    ] 2026-06-19 22:04:33
[2026-06-19 22:04:33,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:04:33,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:04:33,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:04:33,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:04:33,928.928 INFO    ] time= 19/06/2026 22:04:33
[2026-06-19 22:04:33,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:04:34,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:04:34,098.098 INFO    ] No existing commands found in stream
[2026-06-19 22:04:39,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:04:39,113.113 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 22:04:42,974.974 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:04:42,976.976 INFO    ] Checking for system updates...
[2026-06-19 22:04:43,012.012 INFO    ] 200
[2026-06-19 22:04:43,015.015 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:43,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:04:43,070.070 INFO    ] No update needed
[2026-06-19 22:04:43,072.072 INFO    ] Checking for camera pi updates...
[2026-06-19 22:04:43,107.107 INFO    ] 200
[2026-06-19 22:04:43,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:43,150.150 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:04:43,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:04:43,196.196 INFO    ] No camera update needed
[2026-06-19 22:04:43,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:04:43,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:04:43,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:04:43,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:04:45,250.250 INFO    ] ================================================
[2026-06-19 22:04:45,266.266 INFO    ] Launching Daemon at Fri Jun 19 22:04:45 IST 2026
[2026-06-19 22:04:45,277.277 INFO    ] ================================================
[2026-06-19 22:04:45,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:04:45
[2026-06-19 22:04:46,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:04:46,925.925 INFO    ] Initializing speech engine...
[2026-06-19 22:04:46,937.937 INFO    ] 2026-06-19 22:04:46
[2026-06-19 22:04:47,222.222 INFO    ] 2026-06-19 22:04:47
[2026-06-19 22:04:47,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:04:47,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:04:47,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:04:47,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:04:47,762.762 INFO    ] time= 19/06/2026 22:04:47
[2026-06-19 22:04:47,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:04:47,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:04:47,895.895 INFO    ] No existing commands found in stream
[2026-06-19 22:04:52,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:04:52,928.928 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 22:04:55,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:04:55,527.527 INFO    ] Checking for system updates...
[2026-06-19 22:04:55,563.563 INFO    ] 200
[2026-06-19 22:04:55,566.566 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:55,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:04:55,623.623 INFO    ] No update needed
[2026-06-19 22:04:55,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 22:04:55,660.660 INFO    ] 200
[2026-06-19 22:04:55,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:04:55,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:04:55,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:04:55,752.752 INFO    ] No camera update needed
[2026-06-19 22:04:55,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:04:55,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:04:55,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:04:55,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:04:57,808.808 INFO    ] ================================================
[2026-06-19 22:04:57,823.823 INFO    ] Launching Daemon at Fri Jun 19 22:04:57 IST 2026
[2026-06-19 22:04:57,834.834 INFO    ] ================================================
[2026-06-19 22:04:58,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:04:58
[2026-06-19 22:04:59,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:04:59,479.479 INFO    ] Initializing speech engine...
[2026-06-19 22:04:59,488.488 INFO    ] 2026-06-19 22:04:59
[2026-06-19 22:04:59,775.775 INFO    ] 2026-06-19 22:04:59
[2026-06-19 22:04:59,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:05:00,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:05:00,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:05:00,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:05:00,319.319 INFO    ] time= 19/06/2026 22:05:00
[2026-06-19 22:05:00,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:05:00,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:05:00,481.481 INFO    ] No existing commands found in stream
[2026-06-19 22:05:05,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:05:05,514.514 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 22:05:07,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:05:07,923.923 INFO    ] Checking for system updates...
[2026-06-19 22:05:07,961.961 INFO    ] 200
[2026-06-19 22:05:07,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:08,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:05:08,020.020 INFO    ] No update needed
[2026-06-19 22:05:08,023.023 INFO    ] Checking for camera pi updates...
[2026-06-19 22:05:08,062.062 INFO    ] 200
[2026-06-19 22:05:08,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:08,112.112 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:05:08,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:05:08,161.161 INFO    ] No camera update needed
[2026-06-19 22:05:08,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:05:08,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:05:08,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:05:08,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:05:10,218.218 INFO    ] ================================================
[2026-06-19 22:05:10,233.233 INFO    ] Launching Daemon at Fri Jun 19 22:05:10 IST 2026
[2026-06-19 22:05:10,244.244 INFO    ] ================================================
[2026-06-19 22:05:10,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:05:10
[2026-06-19 22:05:11,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:05:11,858.858 INFO    ] Initializing speech engine...
[2026-06-19 22:05:11,870.870 INFO    ] 2026-06-19 22:05:11
[2026-06-19 22:05:12,179.179 INFO    ] 2026-06-19 22:05:12
[2026-06-19 22:05:12,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:05:12,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:05:12,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:05:12,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:05:12,609.609 INFO    ] time= 19/06/2026 22:05:12
[2026-06-19 22:05:12,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:05:12,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:05:12,821.821 INFO    ] No existing commands found in stream
[2026-06-19 22:05:17,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:05:17,855.855 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 22:05:19,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:05:19,946.946 INFO    ] Checking for system updates...
[2026-06-19 22:05:19,983.983 INFO    ] 200
[2026-06-19 22:05:19,986.986 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:20,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:05:20,042.042 INFO    ] No update needed
[2026-06-19 22:05:20,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 22:05:20,082.082 INFO    ] 200
[2026-06-19 22:05:20,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:20,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:05:20,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:05:20,170.170 INFO    ] No camera update needed
[2026-06-19 22:05:20,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:05:20,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:05:20,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:05:20,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:05:22,226.226 INFO    ] ================================================
[2026-06-19 22:05:22,241.241 INFO    ] Launching Daemon at Fri Jun 19 22:05:22 IST 2026
[2026-06-19 22:05:22,252.252 INFO    ] ================================================
[2026-06-19 22:05:22,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:05:22
[2026-06-19 22:05:23,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:05:23,665.665 INFO    ] Initializing speech engine...
[2026-06-19 22:05:23,689.689 INFO    ] 2026-06-19 22:05:23
[2026-06-19 22:05:23,962.962 INFO    ] 2026-06-19 22:05:23
[2026-06-19 22:05:24,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:05:24,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:05:24,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:05:24,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:05:24,340.340 INFO    ] time= 19/06/2026 22:05:24
[2026-06-19 22:05:24,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:05:24,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:05:24,464.464 INFO    ] No existing commands found in stream
[2026-06-19 22:05:29,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:05:29,479.479 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 22:05:32,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:05:32,167.167 INFO    ] Checking for system updates...
[2026-06-19 22:05:32,209.209 INFO    ] 200
[2026-06-19 22:05:32,212.212 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:32,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:05:32,272.272 INFO    ] No update needed
[2026-06-19 22:05:32,275.275 INFO    ] Checking for camera pi updates...
[2026-06-19 22:05:32,312.312 INFO    ] 200
[2026-06-19 22:05:32,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:32,364.364 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:05:32,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:05:32,400.400 INFO    ] No camera update needed
[2026-06-19 22:05:32,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:05:32,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:05:32,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:05:32,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:05:34,458.458 INFO    ] ================================================
[2026-06-19 22:05:34,474.474 INFO    ] Launching Daemon at Fri Jun 19 22:05:34 IST 2026
[2026-06-19 22:05:34,485.485 INFO    ] ================================================
[2026-06-19 22:05:35,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:05:35
[2026-06-19 22:05:35,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:05:35,964.964 INFO    ] Initializing speech engine...
[2026-06-19 22:05:35,970.970 INFO    ] 2026-06-19 22:05:35
[2026-06-19 22:05:36,275.275 INFO    ] 2026-06-19 22:05:36
[2026-06-19 22:05:36,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:05:36,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:05:36,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:05:36,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:05:36,823.823 INFO    ] time= 19/06/2026 22:05:36
[2026-06-19 22:05:36,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:05:36,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:05:36,969.969 INFO    ] No existing commands found in stream
[2026-06-19 22:05:41,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:05:41,996.996 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 22:05:43,708.708 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:05:43,711.711 INFO    ] Checking for system updates...
[2026-06-19 22:05:43,748.748 INFO    ] 200
[2026-06-19 22:05:43,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:43,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:05:43,810.810 INFO    ] No update needed
[2026-06-19 22:05:43,812.812 INFO    ] Checking for camera pi updates...
[2026-06-19 22:05:43,852.852 INFO    ] 200
[2026-06-19 22:05:43,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:43,902.902 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:05:44,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:05:44,052.052 INFO    ] No camera update needed
[2026-06-19 22:05:44,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:05:44,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:05:44,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:05:44,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:05:46,107.107 INFO    ] ================================================
[2026-06-19 22:05:46,122.122 INFO    ] Launching Daemon at Fri Jun 19 22:05:46 IST 2026
[2026-06-19 22:05:46,134.134 INFO    ] ================================================
[2026-06-19 22:05:46,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:05:46
[2026-06-19 22:05:47,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:05:47,557.557 INFO    ] Initializing speech engine...
[2026-06-19 22:05:47,566.566 INFO    ] 2026-06-19 22:05:47
[2026-06-19 22:05:47,815.815 INFO    ] 2026-06-19 22:05:47
[2026-06-19 22:05:47,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:05:48,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:05:48,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:05:48,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:05:48,193.193 INFO    ] time= 19/06/2026 22:05:48
[2026-06-19 22:05:48,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:05:48,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:05:48,353.353 INFO    ] No existing commands found in stream
[2026-06-19 22:05:53,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:05:53,391.391 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-19 22:05:54,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:05:54,986.986 INFO    ] Checking for system updates...
[2026-06-19 22:05:55,022.022 INFO    ] 200
[2026-06-19 22:05:55,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:55,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:05:55,088.088 INFO    ] No update needed
[2026-06-19 22:05:55,090.090 INFO    ] Checking for camera pi updates...
[2026-06-19 22:05:55,128.128 INFO    ] 200
[2026-06-19 22:05:55,130.130 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:05:55,171.171 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:05:55,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:05:55,223.223 INFO    ] No camera update needed
[2026-06-19 22:05:55,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:05:55,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:05:55,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:05:55,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:05:57,278.278 INFO    ] ================================================
[2026-06-19 22:05:57,293.293 INFO    ] Launching Daemon at Fri Jun 19 22:05:57 IST 2026
[2026-06-19 22:05:57,304.304 INFO    ] ================================================
[2026-06-19 22:05:57,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:05:57
[2026-06-19 22:05:58,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:05:58,957.957 INFO    ] Initializing speech engine...
[2026-06-19 22:05:58,968.968 INFO    ] 2026-06-19 22:05:58
[2026-06-19 22:05:59,256.256 INFO    ] 2026-06-19 22:05:59
[2026-06-19 22:05:59,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:05:59,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:05:59,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:05:59,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:05:59,791.791 INFO    ] time= 19/06/2026 22:05:59
[2026-06-19 22:05:59,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:05:59,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:05:59,935.935 INFO    ] No existing commands found in stream
[2026-06-19 22:06:04,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:06:04,958.958 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-19 22:06:06,861.861 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:06:06,863.863 INFO    ] Checking for system updates...
[2026-06-19 22:06:06,900.900 INFO    ] 200
[2026-06-19 22:06:06,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:06,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:06:06,958.958 INFO    ] No update needed
[2026-06-19 22:06:06,961.961 INFO    ] Checking for camera pi updates...
[2026-06-19 22:06:06,995.995 INFO    ] 200
[2026-06-19 22:06:06,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:07,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:06:07,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:06:07,089.089 INFO    ] No camera update needed
[2026-06-19 22:06:07,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:06:07,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:06:07,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:06:07,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:06:09,148.148 INFO    ] ================================================
[2026-06-19 22:06:09,165.165 INFO    ] Launching Daemon at Fri Jun 19 22:06:09 IST 2026
[2026-06-19 22:06:09,176.176 INFO    ] ================================================
[2026-06-19 22:06:09,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:06:09
[2026-06-19 22:06:10,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:06:10,777.777 INFO    ] Initializing speech engine...
[2026-06-19 22:06:10,784.784 INFO    ] 2026-06-19 22:06:10
[2026-06-19 22:06:11,054.054 INFO    ] 2026-06-19 22:06:11
[2026-06-19 22:06:11,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:06:11,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:06:11,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:06:11,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:06:11,530.530 INFO    ] time= 19/06/2026 22:06:11
[2026-06-19 22:06:11,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:06:11,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:06:11,740.740 INFO    ] No existing commands found in stream
[2026-06-19 22:06:16,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:06:16,771.771 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 22:06:20,135.135 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:06:20,138.138 INFO    ] Checking for system updates...
[2026-06-19 22:06:20,176.176 INFO    ] 200
[2026-06-19 22:06:20,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:20,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:06:20,242.242 INFO    ] No update needed
[2026-06-19 22:06:20,244.244 INFO    ] Checking for camera pi updates...
[2026-06-19 22:06:20,282.282 INFO    ] 200
[2026-06-19 22:06:20,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:20,328.328 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:06:20,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:06:20,361.361 INFO    ] No camera update needed
[2026-06-19 22:06:20,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:06:20,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:06:20,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:06:20,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:06:22,420.420 INFO    ] ================================================
[2026-06-19 22:06:22,436.436 INFO    ] Launching Daemon at Fri Jun 19 22:06:22 IST 2026
[2026-06-19 22:06:22,446.446 INFO    ] ================================================
[2026-06-19 22:06:23,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:06:23
[2026-06-19 22:06:23,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:06:24,053.053 INFO    ] Initializing speech engine...
[2026-06-19 22:06:24,062.062 INFO    ] 2026-06-19 22:06:24
[2026-06-19 22:06:24,342.342 INFO    ] 2026-06-19 22:06:24
[2026-06-19 22:06:24,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:06:24,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:06:24,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:06:24,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:06:24,832.832 INFO    ] time= 19/06/2026 22:06:24
[2026-06-19 22:06:24,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:06:24,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:06:24,974.974 INFO    ] No existing commands found in stream
[2026-06-19 22:06:30,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:06:30,004.004 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-19 22:06:30,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:06:30,659.659 INFO    ] Checking for system updates...
[2026-06-19 22:06:30,700.700 INFO    ] 200
[2026-06-19 22:06:30,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:30,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:06:30,761.761 INFO    ] No update needed
[2026-06-19 22:06:30,764.764 INFO    ] Checking for camera pi updates...
[2026-06-19 22:06:30,799.799 INFO    ] 200
[2026-06-19 22:06:30,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:30,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:06:30,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:06:30,891.891 INFO    ] No camera update needed
[2026-06-19 22:06:30,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:06:30,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:06:30,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:06:30,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:06:32,952.952 INFO    ] ================================================
[2026-06-19 22:06:32,969.969 INFO    ] Launching Daemon at Fri Jun 19 22:06:32 IST 2026
[2026-06-19 22:06:32,981.981 INFO    ] ================================================
[2026-06-19 22:06:33,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:06:33
[2026-06-19 22:06:34,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:06:34,417.417 INFO    ] Initializing speech engine...
[2026-06-19 22:06:34,432.432 INFO    ] 2026-06-19 22:06:34
[2026-06-19 22:06:34,699.699 INFO    ] 2026-06-19 22:06:34
[2026-06-19 22:06:34,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:06:34,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:06:35,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:06:35,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:06:35,180.180 INFO    ] time= 19/06/2026 22:06:35
[2026-06-19 22:06:35,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:06:35,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:06:35,326.326 INFO    ] No existing commands found in stream
[2026-06-19 22:06:40,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:06:40,341.341 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 22:06:40,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:06:40,857.857 INFO    ] Checking for system updates...
[2026-06-19 22:06:40,894.894 INFO    ] 200
[2026-06-19 22:06:40,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:40,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:06:40,951.951 INFO    ] No update needed
[2026-06-19 22:06:40,953.953 INFO    ] Checking for camera pi updates...
[2026-06-19 22:06:40,988.988 INFO    ] 200
[2026-06-19 22:06:40,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:41,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:06:41,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:06:41,065.065 INFO    ] No camera update needed
[2026-06-19 22:06:41,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:06:41,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:06:41,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:06:41,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:06:43,121.121 INFO    ] ================================================
[2026-06-19 22:06:43,137.137 INFO    ] Launching Daemon at Fri Jun 19 22:06:43 IST 2026
[2026-06-19 22:06:43,148.148 INFO    ] ================================================
[2026-06-19 22:06:43,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:06:43
[2026-06-19 22:06:44,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:06:44,753.753 INFO    ] Initializing speech engine...
[2026-06-19 22:06:44,766.766 INFO    ] 2026-06-19 22:06:44
[2026-06-19 22:06:45,033.033 INFO    ] 2026-06-19 22:06:45
[2026-06-19 22:06:45,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:06:45,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:06:45,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:06:45,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:06:45,582.582 INFO    ] time= 19/06/2026 22:06:45
[2026-06-19 22:06:45,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:06:45,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:06:45,738.738 INFO    ] No existing commands found in stream
[2026-06-19 22:06:50,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:06:50,765.765 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 22:06:53,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:06:53,711.711 INFO    ] Checking for system updates...
[2026-06-19 22:06:53,748.748 INFO    ] 200
[2026-06-19 22:06:53,751.751 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:53,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:06:53,808.808 INFO    ] No update needed
[2026-06-19 22:06:53,811.811 INFO    ] Checking for camera pi updates...
[2026-06-19 22:06:53,846.846 INFO    ] 200
[2026-06-19 22:06:53,849.849 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:06:53,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:06:53,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:06:53,940.940 INFO    ] No camera update needed
[2026-06-19 22:06:53,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:06:53,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:06:53,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:06:53,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:06:56,997.997 INFO    ] ================================================
[2026-06-19 22:06:56,013.013 INFO    ] Launching Daemon at Fri Jun 19 22:06:56 IST 2026
[2026-06-19 22:06:56,025.025 INFO    ] ================================================
[2026-06-19 22:06:56,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:06:56
[2026-06-19 22:06:57,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:06:57,563.563 INFO    ] Initializing speech engine...
[2026-06-19 22:06:57,577.577 INFO    ] 2026-06-19 22:06:57
[2026-06-19 22:06:57,842.842 INFO    ] 2026-06-19 22:06:57
[2026-06-19 22:06:57,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:06:58,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:06:58,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:06:58,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:06:58,264.264 INFO    ] time= 19/06/2026 22:06:58
[2026-06-19 22:06:58,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:06:58,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:06:58,419.419 INFO    ] No existing commands found in stream
[2026-06-19 22:07:03,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:07:03,431.431 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-19 22:07:05,413.413 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:07:05,417.417 INFO    ] Checking for system updates...
[2026-06-19 22:07:05,456.456 INFO    ] 200
[2026-06-19 22:07:05,459.459 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:05,520.520 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:07:05,523.523 INFO    ] No update needed
[2026-06-19 22:07:05,526.526 INFO    ] Checking for camera pi updates...
[2026-06-19 22:07:05,561.561 INFO    ] 200
[2026-06-19 22:07:05,564.564 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:05,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:07:05,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:07:05,664.664 INFO    ] No camera update needed
[2026-06-19 22:07:05,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:07:05,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:07:05,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:07:05,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:07:07,723.723 INFO    ] ================================================
[2026-06-19 22:07:07,739.739 INFO    ] Launching Daemon at Fri Jun 19 22:07:07 IST 2026
[2026-06-19 22:07:07,750.750 INFO    ] ================================================
[2026-06-19 22:07:08,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:07:08
[2026-06-19 22:07:08,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:07:09,183.183 INFO    ] Initializing speech engine...
[2026-06-19 22:07:09,190.190 INFO    ] 2026-06-19 22:07:09
[2026-06-19 22:07:09,453.453 INFO    ] 2026-06-19 22:07:09
[2026-06-19 22:07:09,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:07:09,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:07:09,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:07:09,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:07:09,829.829 INFO    ] time= 19/06/2026 22:07:09
[2026-06-19 22:07:09,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:07:09,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:07:09,959.959 INFO    ] No existing commands found in stream
[2026-06-19 22:07:14,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:07:14,977.977 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 22:07:18,648.648 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:07:18,651.651 INFO    ] Checking for system updates...
[2026-06-19 22:07:18,688.688 INFO    ] 200
[2026-06-19 22:07:18,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:18,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:07:18,747.747 INFO    ] No update needed
[2026-06-19 22:07:18,749.749 INFO    ] Checking for camera pi updates...
[2026-06-19 22:07:18,784.784 INFO    ] 200
[2026-06-19 22:07:18,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:18,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:07:18,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:07:18,881.881 INFO    ] No camera update needed
[2026-06-19 22:07:18,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:07:18,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:07:18,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:07:18,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:07:20,939.939 INFO    ] ================================================
[2026-06-19 22:07:20,954.954 INFO    ] Launching Daemon at Fri Jun 19 22:07:20 IST 2026
[2026-06-19 22:07:20,966.966 INFO    ] ================================================
[2026-06-19 22:07:21,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:07:21
[2026-06-19 22:07:22,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:07:22,445.445 INFO    ] Initializing speech engine...
[2026-06-19 22:07:22,454.454 INFO    ] 2026-06-19 22:07:22
[2026-06-19 22:07:22,705.705 INFO    ] 2026-06-19 22:07:22
[2026-06-19 22:07:22,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:07:22,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:07:23,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:07:23,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:07:23,183.183 INFO    ] time= 19/06/2026 22:07:23
[2026-06-19 22:07:23,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:07:23,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:07:23,334.334 INFO    ] No existing commands found in stream
[2026-06-19 22:07:28,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:07:28,358.358 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-19 22:07:30,420.420 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:07:30,423.423 INFO    ] Checking for system updates...
[2026-06-19 22:07:30,461.461 INFO    ] 200
[2026-06-19 22:07:30,464.464 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:30,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:07:30,522.522 INFO    ] No update needed
[2026-06-19 22:07:30,524.524 INFO    ] Checking for camera pi updates...
[2026-06-19 22:07:30,559.559 INFO    ] 200
[2026-06-19 22:07:30,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:30,605.605 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:07:30,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:07:30,654.654 INFO    ] No camera update needed
[2026-06-19 22:07:30,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:07:30,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:07:30,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:07:30,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:07:32,716.716 INFO    ] ================================================
[2026-06-19 22:07:32,733.733 INFO    ] Launching Daemon at Fri Jun 19 22:07:32 IST 2026
[2026-06-19 22:07:32,746.746 INFO    ] ================================================
[2026-06-19 22:07:33,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:07:33
[2026-06-19 22:07:34,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:07:34,443.443 INFO    ] Initializing speech engine...
[2026-06-19 22:07:34,454.454 INFO    ] 2026-06-19 22:07:34
[2026-06-19 22:07:34,747.747 INFO    ] 2026-06-19 22:07:34
[2026-06-19 22:07:34,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:07:35,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:07:35,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:07:35,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:07:35,291.291 INFO    ] time= 19/06/2026 22:07:35
[2026-06-19 22:07:35,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:07:35,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:07:35,447.447 INFO    ] No existing commands found in stream
[2026-06-19 22:07:40,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:07:40,469.469 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 22:07:42,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:07:42,605.605 INFO    ] Checking for system updates...
[2026-06-19 22:07:42,643.643 INFO    ] 200
[2026-06-19 22:07:42,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:42,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:07:42,703.703 INFO    ] No update needed
[2026-06-19 22:07:42,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 22:07:42,746.746 INFO    ] 200
[2026-06-19 22:07:42,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:42,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:07:42,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:07:42,843.843 INFO    ] No camera update needed
[2026-06-19 22:07:42,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:07:42,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:07:42,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:07:42,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:07:44,905.905 INFO    ] ================================================
[2026-06-19 22:07:44,921.921 INFO    ] Launching Daemon at Fri Jun 19 22:07:44 IST 2026
[2026-06-19 22:07:44,933.933 INFO    ] ================================================
[2026-06-19 22:07:45,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:07:45
[2026-06-19 22:07:46,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:07:46,397.397 INFO    ] Initializing speech engine...
[2026-06-19 22:07:46,406.406 INFO    ] 2026-06-19 22:07:46
[2026-06-19 22:07:46,666.666 INFO    ] 2026-06-19 22:07:46
[2026-06-19 22:07:46,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:07:46,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:07:46,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:07:47,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:07:47,096.096 INFO    ] time= 19/06/2026 22:07:47
[2026-06-19 22:07:47,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:07:47,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:07:47,265.265 INFO    ] No existing commands found in stream
[2026-06-19 22:07:52,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:07:52,279.279 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 22:07:56,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:07:56,551.551 INFO    ] Checking for system updates...
[2026-06-19 22:07:56,588.588 INFO    ] 200
[2026-06-19 22:07:56,590.590 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:56,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:07:56,646.646 INFO    ] No update needed
[2026-06-19 22:07:56,648.648 INFO    ] Checking for camera pi updates...
[2026-06-19 22:07:56,683.683 INFO    ] 200
[2026-06-19 22:07:56,687.687 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:07:56,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:07:56,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:07:56,884.884 INFO    ] No camera update needed
[2026-06-19 22:07:56,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:07:56,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:07:56,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:07:56,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:07:58,944.944 INFO    ] ================================================
[2026-06-19 22:07:58,960.960 INFO    ] Launching Daemon at Fri Jun 19 22:07:58 IST 2026
[2026-06-19 22:07:58,971.971 INFO    ] ================================================
[2026-06-19 22:07:59,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:07:59
[2026-06-19 22:08:00,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:08:00,599.599 INFO    ] Initializing speech engine...
[2026-06-19 22:08:00,614.614 INFO    ] 2026-06-19 22:08:00
[2026-06-19 22:08:00,865.865 INFO    ] 2026-06-19 22:08:00
[2026-06-19 22:08:00,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:08:01,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:08:01,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:08:01,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:08:01,234.234 INFO    ] time= 19/06/2026 22:08:01
[2026-06-19 22:08:01,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:08:01,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:08:01,310.310 INFO    ] No existing commands found in stream
[2026-06-19 22:08:06,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:08:06,350.350 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 22:08:07,177.177 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:08:07,180.180 INFO    ] Checking for system updates...
[2026-06-19 22:08:07,216.216 INFO    ] 200
[2026-06-19 22:08:07,218.218 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:08:07,270.270 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:08:07,272.272 INFO    ] No update needed
[2026-06-19 22:08:07,275.275 INFO    ] Checking for camera pi updates...
[2026-06-19 22:08:07,309.309 INFO    ] 200
[2026-06-19 22:08:07,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:08:07,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:08:07,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:08:07,403.403 INFO    ] No camera update needed
[2026-06-19 22:08:07,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:08:07,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:08:07,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:08:07,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:08:09,458.458 INFO    ] ================================================
[2026-06-19 22:08:09,473.473 INFO    ] Launching Daemon at Fri Jun 19 22:08:09 IST 2026
[2026-06-19 22:08:09,484.484 INFO    ] ================================================
[2026-06-19 22:08:10,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:08:10
[2026-06-19 22:08:10,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:08:10,921.921 INFO    ] Initializing speech engine...
[2026-06-19 22:08:10,929.929 INFO    ] 2026-06-19 22:08:10
[2026-06-19 22:08:11,183.183 INFO    ] 2026-06-19 22:08:11
[2026-06-19 22:08:11,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:08:11,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:08:11,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:08:11,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:08:11,666.666 INFO    ] time= 19/06/2026 22:08:11
[2026-06-19 22:08:11,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:08:11,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:08:11,858.858 INFO    ] No existing commands found in stream
[2026-06-19 22:08:16,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:08:16,891.891 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-19 22:08:19,927.927 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:08:19,930.930 INFO    ] Checking for system updates...
[2026-06-19 22:08:19,966.966 INFO    ] 200
[2026-06-19 22:08:19,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:08:20,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:08:20,025.025 INFO    ] No update needed
[2026-06-19 22:08:20,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 22:08:20,061.061 INFO    ] 200
[2026-06-19 22:08:20,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:08:20,105.105 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:08:20,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:08:20,153.153 INFO    ] No camera update needed
[2026-06-19 22:08:20,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:08:20,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:08:20,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:08:20,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:08:22,207.207 INFO    ] ================================================
[2026-06-19 22:08:22,222.222 INFO    ] Launching Daemon at Fri Jun 19 22:08:22 IST 2026
[2026-06-19 22:08:22,233.233 INFO    ] ================================================
[2026-06-19 22:08:22,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:08:22
[2026-06-19 22:08:23,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:08:23,942.942 INFO    ] Initializing speech engine...
[2026-06-19 22:08:23,949.949 INFO    ] 2026-06-19 22:08:23
[2026-06-19 22:08:24,264.264 INFO    ] 2026-06-19 22:08:24
[2026-06-19 22:08:24,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:08:24,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:08:24,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:08:24,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:08:24,728.728 INFO    ] time= 19/06/2026 22:08:24
[2026-06-19 22:08:24,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:08:24,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:08:24,864.864 INFO    ] No existing commands found in stream
[2026-06-19 22:08:29,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:08:29,877.877 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 22:08:33,402.402 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:08:33,405.405 INFO    ] Checking for system updates...
[2026-06-19 22:08:33,449.449 INFO    ] 200
[2026-06-19 22:08:33,452.452 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 22:08:33,454.454 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-19 22:08:33,457.457 INFO    ] Checking for camera pi updates...
[2026-06-19 22:08:33,506.506 INFO    ] 200
[2026-06-19 22:08:33,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_HEALTH_CHECK"}
[2026-06-19 22:08:33,511.511 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-19 22:08:33,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:08:33,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:08:33,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:08:33,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:08:35,574.574 INFO    ] ================================================
[2026-06-19 22:08:35,589.589 INFO    ] Launching Daemon at Fri Jun 19 22:08:35 IST 2026
[2026-06-19 22:08:35,600.600 INFO    ] ================================================
[2026-06-19 22:08:36,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:08:36
[2026-06-19 22:08:36,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:08:37,034.034 INFO    ] Initializing speech engine...
[2026-06-19 22:08:37,039.039 INFO    ] 2026-06-19 22:08:37
[2026-06-19 22:08:37,314.314 INFO    ] 2026-06-19 22:08:37
[2026-06-19 22:08:37,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:08:37,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:08:37,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:08:37,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:08:37,694.694 INFO    ] time= 19/06/2026 22:08:37
[2026-06-19 22:08:37,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:08:37,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:08:37,872.872 INFO    ] No existing commands found in stream
[2026-06-19 22:08:42,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:08:42,904.904 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-19 22:08:46,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:08:46,305.305 INFO    ] Checking for system updates...
[2026-06-19 22:08:46,340.340 INFO    ] 200
[2026-06-19 22:08:46,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:08:46,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:08:46,399.399 INFO    ] No update needed
[2026-06-19 22:08:46,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 22:08:46,435.435 INFO    ] 200
[2026-06-19 22:08:46,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:08:46,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:08:46,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:08:46,607.607 INFO    ] No camera update needed
[2026-06-19 22:08:46,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:08:46,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:08:46,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:08:46,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:08:48,665.665 INFO    ] ================================================
[2026-06-19 22:08:48,681.681 INFO    ] Launching Daemon at Fri Jun 19 22:08:48 IST 2026
[2026-06-19 22:08:48,692.692 INFO    ] ================================================
[2026-06-19 22:08:49,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:08:49
[2026-06-19 22:08:50,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:08:50,386.386 INFO    ] Initializing speech engine...
[2026-06-19 22:08:50,394.394 INFO    ] 2026-06-19 22:08:50
[2026-06-19 22:08:50,668.668 INFO    ] 2026-06-19 22:08:50
[2026-06-19 22:08:50,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:08:50,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:08:50,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:08:51,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:08:51,147.147 INFO    ] time= 19/06/2026 22:08:51
[2026-06-19 22:08:51,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:08:51,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:08:51,333.333 INFO    ] No existing commands found in stream
[2026-06-19 22:08:56,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:08:56,368.368 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 22:09:00,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:09:00,062.062 INFO    ] Checking for system updates...
[2026-06-19 22:09:00,100.100 INFO    ] 200
[2026-06-19 22:09:00,103.103 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:00,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:09:00,168.168 INFO    ] No update needed
[2026-06-19 22:09:00,170.170 INFO    ] Checking for camera pi updates...
[2026-06-19 22:09:00,205.205 INFO    ] 200
[2026-06-19 22:09:00,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:00,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:09:00,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:09:00,314.314 INFO    ] No camera update needed
[2026-06-19 22:09:00,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:09:00,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:09:00,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:09:00,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:09:02,371.371 INFO    ] ================================================
[2026-06-19 22:09:02,393.393 INFO    ] Launching Daemon at Fri Jun 19 22:09:02 IST 2026
[2026-06-19 22:09:02,409.409 INFO    ] ================================================
[2026-06-19 22:09:03,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:09:03
[2026-06-19 22:09:03,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:09:03,956.956 INFO    ] Initializing speech engine...
[2026-06-19 22:09:03,964.964 INFO    ] 2026-06-19 22:09:03
[2026-06-19 22:09:04,228.228 INFO    ] 2026-06-19 22:09:04
[2026-06-19 22:09:04,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:09:04,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:09:04,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:09:04,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:09:04,613.613 INFO    ] time= 19/06/2026 22:09:04
[2026-06-19 22:09:04,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:09:04,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:09:04,793.793 INFO    ] No existing commands found in stream
[2026-06-19 22:09:09,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:09:09,823.823 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-19 22:09:11,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:09:11,534.534 INFO    ] Checking for system updates...
[2026-06-19 22:09:11,571.571 INFO    ] 200
[2026-06-19 22:09:11,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:11,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:09:11,630.630 INFO    ] No update needed
[2026-06-19 22:09:11,633.633 INFO    ] Checking for camera pi updates...
[2026-06-19 22:09:11,667.667 INFO    ] 200
[2026-06-19 22:09:11,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:11,714.714 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:09:11,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:09:11,762.762 INFO    ] No camera update needed
[2026-06-19 22:09:11,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:09:11,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:09:11,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:09:11,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:09:13,819.819 INFO    ] ================================================
[2026-06-19 22:09:13,835.835 INFO    ] Launching Daemon at Fri Jun 19 22:09:13 IST 2026
[2026-06-19 22:09:13,846.846 INFO    ] ================================================
[2026-06-19 22:09:14,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:09:14
[2026-06-19 22:09:15,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:09:15,311.311 INFO    ] Initializing speech engine...
[2026-06-19 22:09:15,325.325 INFO    ] 2026-06-19 22:09:15
[2026-06-19 22:09:15,587.587 INFO    ] 2026-06-19 22:09:15
[2026-06-19 22:09:15,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:09:15,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:09:15,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:09:15,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:09:15,969.969 INFO    ] time= 19/06/2026 22:09:15
[2026-06-19 22:09:15,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:09:15,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:09:16,074.074 INFO    ] No existing commands found in stream
[2026-06-19 22:09:21,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:09:21,102.102 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-19 22:09:24,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:09:24,027.027 INFO    ] Checking for system updates...
[2026-06-19 22:09:24,063.063 INFO    ] 200
[2026-06-19 22:09:24,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:24,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:09:24,121.121 INFO    ] No update needed
[2026-06-19 22:09:24,123.123 INFO    ] Checking for camera pi updates...
[2026-06-19 22:09:24,165.165 INFO    ] 200
[2026-06-19 22:09:24,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:24,214.214 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:09:24,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:09:24,262.262 INFO    ] No camera update needed
[2026-06-19 22:09:24,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:09:24,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:09:24,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:09:24,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:09:26,317.317 INFO    ] ================================================
[2026-06-19 22:09:26,334.334 INFO    ] Launching Daemon at Fri Jun 19 22:09:26 IST 2026
[2026-06-19 22:09:26,345.345 INFO    ] ================================================
[2026-06-19 22:09:27,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:09:27
[2026-06-19 22:09:27,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:09:28,042.042 INFO    ] Initializing speech engine...
[2026-06-19 22:09:28,054.054 INFO    ] 2026-06-19 22:09:28
[2026-06-19 22:09:28,380.380 INFO    ] 2026-06-19 22:09:28
[2026-06-19 22:09:28,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:09:28,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:09:28,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:09:28,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:09:28,908.908 INFO    ] time= 19/06/2026 22:09:28
[2026-06-19 22:09:28,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:09:28,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:09:29,068.068 INFO    ] No existing commands found in stream
[2026-06-19 22:09:34,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:09:34,088.088 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 22:09:36,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:09:36,441.441 INFO    ] Checking for system updates...
[2026-06-19 22:09:36,485.485 INFO    ] 200
[2026-06-19 22:09:36,488.488 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:36,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:09:36,559.559 INFO    ] No update needed
[2026-06-19 22:09:36,562.562 INFO    ] Checking for camera pi updates...
[2026-06-19 22:09:36,604.604 INFO    ] 200
[2026-06-19 22:09:36,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:36,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:09:36,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:09:36,715.715 INFO    ] No camera update needed
[2026-06-19 22:09:36,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:09:36,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:09:36,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:09:36,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:09:38,774.774 INFO    ] ================================================
[2026-06-19 22:09:38,790.790 INFO    ] Launching Daemon at Fri Jun 19 22:09:38 IST 2026
[2026-06-19 22:09:38,801.801 INFO    ] ================================================
[2026-06-19 22:09:39,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:09:39
[2026-06-19 22:09:39,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:09:40,265.265 INFO    ] Initializing speech engine...
[2026-06-19 22:09:40,272.272 INFO    ] 2026-06-19 22:09:40
[2026-06-19 22:09:40,533.533 INFO    ] 2026-06-19 22:09:40
[2026-06-19 22:09:40,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:09:40,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:09:40,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:09:40,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:09:40,993.993 INFO    ] time= 19/06/2026 22:09:40
[2026-06-19 22:09:41,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:09:41,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:09:41,144.144 INFO    ] No existing commands found in stream
[2026-06-19 22:09:46,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:09:46,172.172 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-19 22:09:48,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:09:48,467.467 INFO    ] Checking for system updates...
[2026-06-19 22:09:48,502.502 INFO    ] 200
[2026-06-19 22:09:48,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:48,566.566 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:09:48,569.569 INFO    ] No update needed
[2026-06-19 22:09:48,571.571 INFO    ] Checking for camera pi updates...
[2026-06-19 22:09:48,606.606 INFO    ] 200
[2026-06-19 22:09:48,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:09:48,655.655 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:09:48,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:09:48,690.690 INFO    ] No camera update needed
[2026-06-19 22:09:48,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:09:48,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:09:48,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:09:48,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:09:50,746.746 INFO    ] ================================================
[2026-06-19 22:09:50,763.763 INFO    ] Launching Daemon at Fri Jun 19 22:09:50 IST 2026
[2026-06-19 22:09:50,774.774 INFO    ] ================================================
[2026-06-19 22:09:51,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:09:51
[2026-06-19 22:09:52,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:09:52,462.462 INFO    ] Initializing speech engine...
[2026-06-19 22:09:52,475.475 INFO    ] 2026-06-19 22:09:52
[2026-06-19 22:09:52,788.788 INFO    ] 2026-06-19 22:09:52
[2026-06-19 22:09:52,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:09:53,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:09:53,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:09:53,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:09:53,299.299 INFO    ] time= 19/06/2026 22:09:53
[2026-06-19 22:09:53,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:09:53,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:09:53,456.456 INFO    ] No existing commands found in stream
[2026-06-19 22:09:58,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:09:58,480.480 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 22:10:02,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:10:02,092.092 INFO    ] Checking for system updates...
[2026-06-19 22:10:02,155.155 INFO    ] 200
[2026-06-19 22:10:02,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:02,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:10:02,258.258 INFO    ] No update needed
[2026-06-19 22:10:02,261.261 INFO    ] Checking for camera pi updates...
[2026-06-19 22:10:02,321.321 INFO    ] 200
[2026-06-19 22:10:02,325.325 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:02,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:10:02,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:10:02,534.534 INFO    ] No camera update needed
[2026-06-19 22:10:02,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:10:02,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:10:02,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:10:02,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:10:04,609.609 INFO    ] ================================================
[2026-06-19 22:10:04,625.625 INFO    ] Launching Daemon at Fri Jun 19 22:10:04 IST 2026
[2026-06-19 22:10:04,635.635 INFO    ] ================================================
[2026-06-19 22:10:05,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:10:05
[2026-06-19 22:10:05,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:10:06,048.048 INFO    ] Initializing speech engine...
[2026-06-19 22:10:06,056.056 INFO    ] 2026-06-19 22:10:06
[2026-06-19 22:10:06,329.329 INFO    ] 2026-06-19 22:10:06
[2026-06-19 22:10:06,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:10:06,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:10:06,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:10:06,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:10:06,690.690 INFO    ] time= 19/06/2026 22:10:06
[2026-06-19 22:10:06,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:10:06,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:10:06,775.775 INFO    ] No existing commands found in stream
[2026-06-19 22:10:11,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:10:11,789.789 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 22:10:15,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:10:15,308.308 INFO    ] Checking for system updates...
[2026-06-19 22:10:15,363.363 INFO    ] 200
[2026-06-19 22:10:15,366.366 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:15,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:10:15,424.424 INFO    ] No update needed
[2026-06-19 22:10:15,426.426 INFO    ] Checking for camera pi updates...
[2026-06-19 22:10:15,465.465 INFO    ] 200
[2026-06-19 22:10:15,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:15,514.514 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:10:15,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:10:15,550.550 INFO    ] No camera update needed
[2026-06-19 22:10:15,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:10:15,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:10:15,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:10:15,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:10:17,611.611 INFO    ] ================================================
[2026-06-19 22:10:17,627.627 INFO    ] Launching Daemon at Fri Jun 19 22:10:17 IST 2026
[2026-06-19 22:10:17,639.639 INFO    ] ================================================
[2026-06-19 22:10:18,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:10:18
[2026-06-19 22:10:18,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:10:19,292.292 INFO    ] Initializing speech engine...
[2026-06-19 22:10:19,298.298 INFO    ] 2026-06-19 22:10:19
[2026-06-19 22:10:19,589.589 INFO    ] 2026-06-19 22:10:19
[2026-06-19 22:10:19,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:10:19,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:10:19,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:10:20,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:10:20,130.130 INFO    ] time= 19/06/2026 22:10:20
[2026-06-19 22:10:20,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:10:20,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:10:20,294.294 INFO    ] No existing commands found in stream
[2026-06-19 22:10:25,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:10:25,318.318 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 22:10:25,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:10:25,738.738 INFO    ] Checking for system updates...
[2026-06-19 22:10:25,773.773 INFO    ] 200
[2026-06-19 22:10:25,776.776 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:25,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:10:25,839.839 INFO    ] No update needed
[2026-06-19 22:10:25,841.841 INFO    ] Checking for camera pi updates...
[2026-06-19 22:10:25,879.879 INFO    ] 200
[2026-06-19 22:10:25,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:25,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:10:25,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:10:25,974.974 INFO    ] No camera update needed
[2026-06-19 22:10:25,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:10:25,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:10:25,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:10:25,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:10:28,029.029 INFO    ] ================================================
[2026-06-19 22:10:28,046.046 INFO    ] Launching Daemon at Fri Jun 19 22:10:28 IST 2026
[2026-06-19 22:10:28,056.056 INFO    ] ================================================
[2026-06-19 22:10:28,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:10:28
[2026-06-19 22:10:29,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:10:29,484.484 INFO    ] Initializing speech engine...
[2026-06-19 22:10:29,490.490 INFO    ] 2026-06-19 22:10:29
[2026-06-19 22:10:29,785.785 INFO    ] 2026-06-19 22:10:29
[2026-06-19 22:10:29,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:10:30,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:10:30,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:10:30,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:10:30,185.185 INFO    ] time= 19/06/2026 22:10:30
[2026-06-19 22:10:30,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:10:30,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:10:30,293.293 INFO    ] No existing commands found in stream
[2026-06-19 22:10:35,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:10:35,308.308 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-19 22:10:37,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:10:37,050.050 INFO    ] Checking for system updates...
[2026-06-19 22:10:37,086.086 INFO    ] 200
[2026-06-19 22:10:37,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:37,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:10:37,152.152 INFO    ] No update needed
[2026-06-19 22:10:37,154.154 INFO    ] Checking for camera pi updates...
[2026-06-19 22:10:37,192.192 INFO    ] 200
[2026-06-19 22:10:37,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:37,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:10:37,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:10:37,288.288 INFO    ] No camera update needed
[2026-06-19 22:10:37,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:10:37,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:10:37,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:10:37,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:10:39,345.345 INFO    ] ================================================
[2026-06-19 22:10:39,361.361 INFO    ] Launching Daemon at Fri Jun 19 22:10:39 IST 2026
[2026-06-19 22:10:39,372.372 INFO    ] ================================================
[2026-06-19 22:10:39,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:10:39
[2026-06-19 22:10:40,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:10:40,802.802 INFO    ] Initializing speech engine...
[2026-06-19 22:10:40,810.810 INFO    ] 2026-06-19 22:10:40
[2026-06-19 22:10:41,060.060 INFO    ] 2026-06-19 22:10:41
[2026-06-19 22:10:41,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:10:41,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:10:41,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:10:41,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:10:41,437.437 INFO    ] time= 19/06/2026 22:10:41
[2026-06-19 22:10:41,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:10:41,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:10:41,608.608 INFO    ] No existing commands found in stream
[2026-06-19 22:10:46,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:10:46,641.641 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 22:10:50,470.470 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:10:50,473.473 INFO    ] Checking for system updates...
[2026-06-19 22:10:50,529.529 INFO    ] 200
[2026-06-19 22:10:50,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:50,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:10:50,587.587 INFO    ] No update needed
[2026-06-19 22:10:50,589.589 INFO    ] Checking for camera pi updates...
[2026-06-19 22:10:50,626.626 INFO    ] 200
[2026-06-19 22:10:50,628.628 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:10:50,670.670 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:10:50,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:10:50,704.704 INFO    ] No camera update needed
[2026-06-19 22:10:50,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:10:50,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:10:50,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:10:50,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:10:52,764.764 INFO    ] ================================================
[2026-06-19 22:10:52,787.787 INFO    ] Launching Daemon at Fri Jun 19 22:10:52 IST 2026
[2026-06-19 22:10:52,798.798 INFO    ] ================================================
[2026-06-19 22:10:53,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:10:53
[2026-06-19 22:10:53,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:10:54,221.221 INFO    ] Initializing speech engine...
[2026-06-19 22:10:54,230.230 INFO    ] 2026-06-19 22:10:54
[2026-06-19 22:10:54,475.475 INFO    ] 2026-06-19 22:10:54
[2026-06-19 22:10:54,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:10:54,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:10:54,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:10:54,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:10:54,841.841 INFO    ] time= 19/06/2026 22:10:54
[2026-06-19 22:10:54,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:10:54,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:10:55,012.012 INFO    ] No existing commands found in stream
[2026-06-19 22:11:00,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:11:00,045.045 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 22:11:03,042.042 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:11:03,046.046 INFO    ] Checking for system updates...
[2026-06-19 22:11:03,091.091 INFO    ] 200
[2026-06-19 22:11:03,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:03,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:11:03,168.168 INFO    ] No update needed
[2026-06-19 22:11:03,172.172 INFO    ] Checking for camera pi updates...
[2026-06-19 22:11:03,216.216 INFO    ] 200
[2026-06-19 22:11:03,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:03,270.270 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:11:03,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:11:03,317.317 INFO    ] No camera update needed
[2026-06-19 22:11:03,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:11:03,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:11:03,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:11:03,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:11:05,375.375 INFO    ] ================================================
[2026-06-19 22:11:05,391.391 INFO    ] Launching Daemon at Fri Jun 19 22:11:05 IST 2026
[2026-06-19 22:11:05,402.402 INFO    ] ================================================
[2026-06-19 22:11:05,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:11:05
[2026-06-19 22:11:06,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:11:06,870.870 INFO    ] Initializing speech engine...
[2026-06-19 22:11:06,879.879 INFO    ] 2026-06-19 22:11:06
[2026-06-19 22:11:07,177.177 INFO    ] 2026-06-19 22:11:07
[2026-06-19 22:11:07,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:11:07,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:11:07,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:11:07,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:11:07,536.536 INFO    ] time= 19/06/2026 22:11:07
[2026-06-19 22:11:07,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:11:07,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:11:07,619.619 INFO    ] No existing commands found in stream
[2026-06-19 22:11:12,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:11:12,632.632 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 22:11:16,621.621 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:11:16,623.623 INFO    ] Checking for system updates...
[2026-06-19 22:11:16,663.663 INFO    ] 200
[2026-06-19 22:11:16,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:16,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:11:16,728.728 INFO    ] No update needed
[2026-06-19 22:11:16,730.730 INFO    ] Checking for camera pi updates...
[2026-06-19 22:11:16,764.764 INFO    ] 200
[2026-06-19 22:11:16,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:16,808.808 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:11:16,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:11:16,853.853 INFO    ] No camera update needed
[2026-06-19 22:11:16,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:11:16,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:11:16,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:11:16,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:11:18,908.908 INFO    ] ================================================
[2026-06-19 22:11:18,924.924 INFO    ] Launching Daemon at Fri Jun 19 22:11:18 IST 2026
[2026-06-19 22:11:18,934.934 INFO    ] ================================================
[2026-06-19 22:11:19,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:11:19
[2026-06-19 22:11:20,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:11:20,383.383 INFO    ] Initializing speech engine...
[2026-06-19 22:11:20,398.398 INFO    ] 2026-06-19 22:11:20
[2026-06-19 22:11:20,663.663 INFO    ] 2026-06-19 22:11:20
[2026-06-19 22:11:20,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:11:20,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:11:20,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:11:21,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:11:21,129.129 INFO    ] time= 19/06/2026 22:11:21
[2026-06-19 22:11:21,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:11:21,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:11:21,281.281 INFO    ] No existing commands found in stream
[2026-06-19 22:11:26,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:11:26,296.296 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 22:11:28,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:11:28,172.172 INFO    ] Checking for system updates...
[2026-06-19 22:11:28,212.212 INFO    ] 200
[2026-06-19 22:11:28,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:28,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:11:28,270.270 INFO    ] No update needed
[2026-06-19 22:11:28,273.273 INFO    ] Checking for camera pi updates...
[2026-06-19 22:11:28,307.307 INFO    ] 200
[2026-06-19 22:11:28,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:28,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:11:28,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:11:28,401.401 INFO    ] No camera update needed
[2026-06-19 22:11:28,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:11:28,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:11:28,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:11:28,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:11:30,458.458 INFO    ] ================================================
[2026-06-19 22:11:30,473.473 INFO    ] Launching Daemon at Fri Jun 19 22:11:30 IST 2026
[2026-06-19 22:11:30,483.483 INFO    ] ================================================
[2026-06-19 22:11:31,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:11:31
[2026-06-19 22:11:31,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:11:31,964.964 INFO    ] Initializing speech engine...
[2026-06-19 22:11:31,970.970 INFO    ] 2026-06-19 22:11:31
[2026-06-19 22:11:32,241.241 INFO    ] 2026-06-19 22:11:32
[2026-06-19 22:11:32,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:11:32,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:11:32,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:11:32,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:11:32,698.698 INFO    ] time= 19/06/2026 22:11:32
[2026-06-19 22:11:32,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:11:32,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:11:32,875.875 INFO    ] No existing commands found in stream
[2026-06-19 22:11:37,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:11:37,890.890 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 22:11:42,934.934 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:11:42,936.936 INFO    ] Checking for system updates...
[2026-06-19 22:11:42,972.972 INFO    ] 200
[2026-06-19 22:11:42,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:43,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:11:43,038.038 INFO    ] No update needed
[2026-06-19 22:11:43,040.040 INFO    ] Checking for camera pi updates...
[2026-06-19 22:11:43,074.074 INFO    ] 200
[2026-06-19 22:11:43,077.077 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:43,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:11:43,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:11:43,174.174 INFO    ] No camera update needed
[2026-06-19 22:11:43,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:11:43,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:11:43,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:11:43,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:11:45,230.230 INFO    ] ================================================
[2026-06-19 22:11:45,245.245 INFO    ] Launching Daemon at Fri Jun 19 22:11:45 IST 2026
[2026-06-19 22:11:45,256.256 INFO    ] ================================================
[2026-06-19 22:11:45,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:11:45
[2026-06-19 22:11:46,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:11:46,734.734 INFO    ] Initializing speech engine...
[2026-06-19 22:11:46,746.746 INFO    ] 2026-06-19 22:11:46
[2026-06-19 22:11:47,018.018 INFO    ] 2026-06-19 22:11:46
[2026-06-19 22:11:47,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:11:47,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:11:47,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:11:47,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:11:47,395.395 INFO    ] time= 19/06/2026 22:11:47
[2026-06-19 22:11:47,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:11:47,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:11:47,581.581 INFO    ] No existing commands found in stream
[2026-06-19 22:11:52,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:11:52,609.609 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 22:11:55,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:11:55,176.176 INFO    ] Checking for system updates...
[2026-06-19 22:11:55,212.212 INFO    ] 200
[2026-06-19 22:11:55,214.214 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:55,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:11:55,277.277 INFO    ] No update needed
[2026-06-19 22:11:55,280.280 INFO    ] Checking for camera pi updates...
[2026-06-19 22:11:55,318.318 INFO    ] 200
[2026-06-19 22:11:55,320.320 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:11:55,363.363 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:11:55,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:11:55,416.416 INFO    ] No camera update needed
[2026-06-19 22:11:55,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:11:55,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:11:55,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:11:55,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:11:57,470.470 INFO    ] ================================================
[2026-06-19 22:11:57,485.485 INFO    ] Launching Daemon at Fri Jun 19 22:11:57 IST 2026
[2026-06-19 22:11:57,496.496 INFO    ] ================================================
[2026-06-19 22:11:58,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:11:58
[2026-06-19 22:11:58,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:11:58,949.949 INFO    ] Initializing speech engine...
[2026-06-19 22:11:58,956.956 INFO    ] 2026-06-19 22:11:58
[2026-06-19 22:11:59,262.262 INFO    ] 2026-06-19 22:11:59
[2026-06-19 22:11:59,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:11:59,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:11:59,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:11:59,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:11:59,654.654 INFO    ] time= 19/06/2026 22:11:59
[2026-06-19 22:11:59,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:11:59,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:11:59,783.783 INFO    ] No existing commands found in stream
[2026-06-19 22:12:04,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:12:04,799.799 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 22:12:08,394.394 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:12:08,397.397 INFO    ] Checking for system updates...
[2026-06-19 22:12:08,435.435 INFO    ] 200
[2026-06-19 22:12:08,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:08,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:12:08,497.497 INFO    ] No update needed
[2026-06-19 22:12:08,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 22:12:08,534.534 INFO    ] 200
[2026-06-19 22:12:08,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:08,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:12:08,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:12:08,727.727 INFO    ] No camera update needed
[2026-06-19 22:12:08,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:12:08,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:12:08,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:12:08,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:12:10,784.784 INFO    ] ================================================
[2026-06-19 22:12:10,799.799 INFO    ] Launching Daemon at Fri Jun 19 22:12:10 IST 2026
[2026-06-19 22:12:10,810.810 INFO    ] ================================================
[2026-06-19 22:12:11,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:12:11
[2026-06-19 22:12:11,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:12:12,239.239 INFO    ] Initializing speech engine...
[2026-06-19 22:12:12,247.247 INFO    ] 2026-06-19 22:12:12
[2026-06-19 22:12:12,500.500 INFO    ] 2026-06-19 22:12:12
[2026-06-19 22:12:12,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:12:12,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:12:12,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:12:12,939.939 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:12:12,966.966 INFO    ] time= 19/06/2026 22:12:12
[2026-06-19 22:12:13,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:12:13,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:12:13,135.135 INFO    ] No existing commands found in stream
[2026-06-19 22:12:18,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:12:18,146.146 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 22:12:20,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:12:20,643.643 INFO    ] Checking for system updates...
[2026-06-19 22:12:20,680.680 INFO    ] 200
[2026-06-19 22:12:20,683.683 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:20,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:12:20,738.738 INFO    ] No update needed
[2026-06-19 22:12:20,740.740 INFO    ] Checking for camera pi updates...
[2026-06-19 22:12:20,774.774 INFO    ] 200
[2026-06-19 22:12:20,777.777 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:20,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:12:20,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:12:20,886.886 INFO    ] No camera update needed
[2026-06-19 22:12:20,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:12:20,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:12:20,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:12:20,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:12:22,941.941 INFO    ] ================================================
[2026-06-19 22:12:22,957.957 INFO    ] Launching Daemon at Fri Jun 19 22:12:22 IST 2026
[2026-06-19 22:12:22,967.967 INFO    ] ================================================
[2026-06-19 22:12:23,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:12:23
[2026-06-19 22:12:24,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:12:24,634.634 INFO    ] Initializing speech engine...
[2026-06-19 22:12:24,640.640 INFO    ] 2026-06-19 22:12:24
[2026-06-19 22:12:24,951.951 INFO    ] 2026-06-19 22:12:24
[2026-06-19 22:12:25,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:12:25,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:12:25,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:12:25,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:12:25,461.461 INFO    ] time= 19/06/2026 22:12:25
[2026-06-19 22:12:25,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:12:25,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:12:25,618.618 INFO    ] No existing commands found in stream
[2026-06-19 22:12:30,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:12:30,636.636 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-19 22:12:32,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:12:32,304.304 INFO    ] Checking for system updates...
[2026-06-19 22:12:32,345.345 INFO    ] 200
[2026-06-19 22:12:32,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:32,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:12:32,420.420 INFO    ] No update needed
[2026-06-19 22:12:32,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 22:12:32,460.460 INFO    ] 200
[2026-06-19 22:12:32,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:32,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:12:32,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:12:32,546.546 INFO    ] No camera update needed
[2026-06-19 22:12:32,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:12:32,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:12:32,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:12:32,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:12:34,604.604 INFO    ] ================================================
[2026-06-19 22:12:34,620.620 INFO    ] Launching Daemon at Fri Jun 19 22:12:34 IST 2026
[2026-06-19 22:12:34,636.636 INFO    ] ================================================
[2026-06-19 22:12:35,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:12:35
[2026-06-19 22:12:35,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:12:36,262.262 INFO    ] Initializing speech engine...
[2026-06-19 22:12:36,277.277 INFO    ] 2026-06-19 22:12:36
[2026-06-19 22:12:36,556.556 INFO    ] 2026-06-19 22:12:36
[2026-06-19 22:12:36,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:12:36,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:12:36,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:12:36,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:12:37,016.016 INFO    ] time= 19/06/2026 22:12:36
[2026-06-19 22:12:37,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:12:37,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:12:37,171.171 INFO    ] No existing commands found in stream
[2026-06-19 22:12:42,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:12:42,210.210 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 22:12:46,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:12:46,229.229 INFO    ] Checking for system updates...
[2026-06-19 22:12:46,271.271 INFO    ] 200
[2026-06-19 22:12:46,274.274 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:46,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:12:46,330.330 INFO    ] No update needed
[2026-06-19 22:12:46,333.333 INFO    ] Checking for camera pi updates...
[2026-06-19 22:12:46,372.372 INFO    ] 200
[2026-06-19 22:12:46,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:46,420.420 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:12:46,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:12:46,469.469 INFO    ] No camera update needed
[2026-06-19 22:12:46,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:12:46,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:12:46,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:12:46,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:12:48,529.529 INFO    ] ================================================
[2026-06-19 22:12:48,543.543 INFO    ] Launching Daemon at Fri Jun 19 22:12:48 IST 2026
[2026-06-19 22:12:48,554.554 INFO    ] ================================================
[2026-06-19 22:12:49,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:12:49
[2026-06-19 22:12:49,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:12:49,965.965 INFO    ] Initializing speech engine...
[2026-06-19 22:12:49,988.988 INFO    ] 2026-06-19 22:12:49
[2026-06-19 22:12:50,248.248 INFO    ] 2026-06-19 22:12:50
[2026-06-19 22:12:50,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:12:50,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:12:50,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:12:50,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:12:50,633.633 INFO    ] time= 19/06/2026 22:12:50
[2026-06-19 22:12:50,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:12:50,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:12:50,724.724 INFO    ] No existing commands found in stream
[2026-06-19 22:12:55,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:12:55,749.749 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-19 22:12:57,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:12:57,693.693 INFO    ] Checking for system updates...
[2026-06-19 22:12:57,732.732 INFO    ] 200
[2026-06-19 22:12:57,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:57,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:12:57,793.793 INFO    ] No update needed
[2026-06-19 22:12:57,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 22:12:57,831.831 INFO    ] 200
[2026-06-19 22:12:57,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:12:57,880.880 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:12:57,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:12:57,930.930 INFO    ] No camera update needed
[2026-06-19 22:12:57,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:12:57,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:12:57,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:12:57,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:12:59,988.988 INFO    ] ================================================
[2026-06-19 22:13:00,004.004 INFO    ] Launching Daemon at Fri Jun 19 22:12:59 IST 2026
[2026-06-19 22:13:00,015.015 INFO    ] ================================================
[2026-06-19 22:13:00,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:13:00
[2026-06-19 22:13:01,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:13:01,638.638 INFO    ] Initializing speech engine...
[2026-06-19 22:13:01,642.642 INFO    ] 2026-06-19 22:13:01
[2026-06-19 22:13:01,978.978 INFO    ] 2026-06-19 22:13:01
[2026-06-19 22:13:02,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:13:02,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:13:02,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:13:02,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:13:02,494.494 INFO    ] time= 19/06/2026 22:13:02
[2026-06-19 22:13:02,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:13:02,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:13:02,660.660 INFO    ] No existing commands found in stream
[2026-06-19 22:13:07,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:13:07,676.676 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 22:13:10,489.489 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:13:10,492.492 INFO    ] Checking for system updates...
[2026-06-19 22:13:10,528.528 INFO    ] 200
[2026-06-19 22:13:10,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:10,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:13:10,586.586 INFO    ] No update needed
[2026-06-19 22:13:10,589.589 INFO    ] Checking for camera pi updates...
[2026-06-19 22:13:10,622.622 INFO    ] 200
[2026-06-19 22:13:10,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:10,666.666 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:13:10,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:13:10,714.714 INFO    ] No camera update needed
[2026-06-19 22:13:10,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:13:10,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:13:10,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:13:10,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:13:12,770.770 INFO    ] ================================================
[2026-06-19 22:13:12,785.785 INFO    ] Launching Daemon at Fri Jun 19 22:13:12 IST 2026
[2026-06-19 22:13:12,796.796 INFO    ] ================================================
[2026-06-19 22:13:13,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:13:13
[2026-06-19 22:13:13,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:13:14,218.218 INFO    ] Initializing speech engine...
[2026-06-19 22:13:14,227.227 INFO    ] 2026-06-19 22:13:14
[2026-06-19 22:13:14,521.521 INFO    ] 2026-06-19 22:13:14
[2026-06-19 22:13:14,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:13:14,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:13:14,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:13:14,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:13:14,944.944 INFO    ] time= 19/06/2026 22:13:14
[2026-06-19 22:13:14,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:13:14,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:13:15,118.118 INFO    ] No existing commands found in stream
[2026-06-19 22:13:20,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:13:20,151.151 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-19 22:13:23,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:13:23,549.549 INFO    ] Checking for system updates...
[2026-06-19 22:13:23,585.585 INFO    ] 200
[2026-06-19 22:13:23,588.588 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:23,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:13:23,647.647 INFO    ] No update needed
[2026-06-19 22:13:23,649.649 INFO    ] Checking for camera pi updates...
[2026-06-19 22:13:23,683.683 INFO    ] 200
[2026-06-19 22:13:23,685.685 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:23,727.727 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:13:23,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:13:23,780.780 INFO    ] No camera update needed
[2026-06-19 22:13:23,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:13:23,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:13:23,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:13:23,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:13:25,836.836 INFO    ] ================================================
[2026-06-19 22:13:25,851.851 INFO    ] Launching Daemon at Fri Jun 19 22:13:25 IST 2026
[2026-06-19 22:13:25,861.861 INFO    ] ================================================
[2026-06-19 22:13:26,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:13:26
[2026-06-19 22:13:27,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:13:27,496.496 INFO    ] Initializing speech engine...
[2026-06-19 22:13:27,509.509 INFO    ] 2026-06-19 22:13:27
[2026-06-19 22:13:27,784.784 INFO    ] 2026-06-19 22:13:27
[2026-06-19 22:13:27,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:13:28,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:13:28,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:13:28,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:13:28,346.346 INFO    ] time= 19/06/2026 22:13:28
[2026-06-19 22:13:28,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:13:28,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:13:28,496.496 INFO    ] No existing commands found in stream
[2026-06-19 22:13:33,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:13:33,522.522 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 22:13:36,163.163 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:13:36,166.166 INFO    ] Checking for system updates...
[2026-06-19 22:13:36,204.204 INFO    ] 200
[2026-06-19 22:13:36,207.207 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:36,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:13:36,264.264 INFO    ] No update needed
[2026-06-19 22:13:36,267.267 INFO    ] Checking for camera pi updates...
[2026-06-19 22:13:36,302.302 INFO    ] 200
[2026-06-19 22:13:36,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:36,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:13:36,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:13:36,403.403 INFO    ] No camera update needed
[2026-06-19 22:13:36,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:13:36,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:13:36,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:13:36,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:13:38,462.462 INFO    ] ================================================
[2026-06-19 22:13:38,477.477 INFO    ] Launching Daemon at Fri Jun 19 22:13:38 IST 2026
[2026-06-19 22:13:38,488.488 INFO    ] ================================================
[2026-06-19 22:13:39,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:13:39
[2026-06-19 22:13:39,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:13:39,924.924 INFO    ] Initializing speech engine...
[2026-06-19 22:13:39,933.933 INFO    ] 2026-06-19 22:13:39
[2026-06-19 22:13:40,187.187 INFO    ] 2026-06-19 22:13:40
[2026-06-19 22:13:40,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:13:40,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:13:40,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:13:40,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:13:40,697.697 INFO    ] time= 19/06/2026 22:13:40
[2026-06-19 22:13:40,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:13:40,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:13:40,825.825 INFO    ] No existing commands found in stream
[2026-06-19 22:13:45,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:13:45,839.839 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 22:13:46,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:13:46,524.524 INFO    ] Checking for system updates...
[2026-06-19 22:13:46,562.562 INFO    ] 200
[2026-06-19 22:13:46,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:46,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:13:46,622.622 INFO    ] No update needed
[2026-06-19 22:13:46,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 22:13:46,661.661 INFO    ] 200
[2026-06-19 22:13:46,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:46,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:13:46,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:13:46,754.754 INFO    ] No camera update needed
[2026-06-19 22:13:46,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:13:46,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:13:46,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:13:46,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:13:48,815.815 INFO    ] ================================================
[2026-06-19 22:13:48,830.830 INFO    ] Launching Daemon at Fri Jun 19 22:13:48 IST 2026
[2026-06-19 22:13:48,841.841 INFO    ] ================================================
[2026-06-19 22:13:49,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:13:49
[2026-06-19 22:13:50,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:13:50,483.483 INFO    ] Initializing speech engine...
[2026-06-19 22:13:50,491.491 INFO    ] 2026-06-19 22:13:50
[2026-06-19 22:13:50,778.778 INFO    ] 2026-06-19 22:13:50
[2026-06-19 22:13:50,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:13:51,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:13:51,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:13:51,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:13:51,315.315 INFO    ] time= 19/06/2026 22:13:51
[2026-06-19 22:13:51,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:13:51,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:13:51,472.472 INFO    ] No existing commands found in stream
[2026-06-19 22:13:56,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:13:56,491.491 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 22:13:58,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:13:58,318.318 INFO    ] Checking for system updates...
[2026-06-19 22:13:58,356.356 INFO    ] 200
[2026-06-19 22:13:58,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:58,413.413 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:13:58,416.416 INFO    ] No update needed
[2026-06-19 22:13:58,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 22:13:58,454.454 INFO    ] 200
[2026-06-19 22:13:58,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:13:58,500.500 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:13:58,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:13:58,551.551 INFO    ] No camera update needed
[2026-06-19 22:13:58,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:13:58,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:13:58,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:13:58,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:14:00,611.611 INFO    ] ================================================
[2026-06-19 22:14:00,626.626 INFO    ] Launching Daemon at Fri Jun 19 22:14:00 IST 2026
[2026-06-19 22:14:00,637.637 INFO    ] ================================================
[2026-06-19 22:14:01,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:14:01
[2026-06-19 22:14:02,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:14:02,415.415 INFO    ] Initializing speech engine...
[2026-06-19 22:14:02,422.422 INFO    ] 2026-06-19 22:14:02
[2026-06-19 22:14:02,719.719 INFO    ] 2026-06-19 22:14:02
[2026-06-19 22:14:02,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:14:03,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:14:03,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:14:03,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:14:03,270.270 INFO    ] time= 19/06/2026 22:14:03
[2026-06-19 22:14:03,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:14:03,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:14:03,411.411 INFO    ] No existing commands found in stream
[2026-06-19 22:14:08,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:14:08,426.426 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 22:14:12,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:14:12,036.036 INFO    ] Checking for system updates...
[2026-06-19 22:14:12,074.074 INFO    ] 200
[2026-06-19 22:14:12,076.076 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:14:12,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:14:12,141.141 INFO    ] No update needed
[2026-06-19 22:14:12,143.143 INFO    ] Checking for camera pi updates...
[2026-06-19 22:14:12,179.179 INFO    ] 200
[2026-06-19 22:14:12,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:14:12,224.224 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:14:12,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:14:12,372.372 INFO    ] No camera update needed
[2026-06-19 22:14:12,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:14:12,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:14:12,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:14:12,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:14:14,434.434 INFO    ] ================================================
[2026-06-19 22:14:14,449.449 INFO    ] Launching Daemon at Fri Jun 19 22:14:14 IST 2026
[2026-06-19 22:14:14,461.461 INFO    ] ================================================
[2026-06-19 22:14:15,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:14:15
[2026-06-19 22:14:15,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:14:15,878.878 INFO    ] Initializing speech engine...
[2026-06-19 22:14:15,886.886 INFO    ] 2026-06-19 22:14:15
[2026-06-19 22:14:16,194.194 INFO    ] 2026-06-19 22:14:16
[2026-06-19 22:14:16,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:14:16,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:14:16,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:14:16,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:14:16,585.585 INFO    ] time= 19/06/2026 22:14:16
[2026-06-19 22:14:16,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:14:16,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:14:16,718.718 INFO    ] No existing commands found in stream
[2026-06-19 22:14:21,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:14:21,730.730 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-19 22:14:24,073.073 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:14:24,076.076 INFO    ] Checking for system updates...
[2026-06-19 22:14:24,112.112 INFO    ] 200
[2026-06-19 22:14:24,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:14:24,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:14:24,169.169 INFO    ] No update needed
[2026-06-19 22:14:24,172.172 INFO    ] Checking for camera pi updates...
[2026-06-19 22:14:24,206.206 INFO    ] 200
[2026-06-19 22:14:24,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:14:24,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:14:24,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:14:24,299.299 INFO    ] No camera update needed
[2026-06-19 22:14:24,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:14:24,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:14:24,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:14:24,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:14:26,354.354 INFO    ] ================================================
[2026-06-19 22:14:26,369.369 INFO    ] Launching Daemon at Fri Jun 19 22:14:26 IST 2026
[2026-06-19 22:14:26,380.380 INFO    ] ================================================
[2026-06-19 22:14:27,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:14:27
[2026-06-19 22:14:27,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:14:28,041.041 INFO    ] Initializing speech engine...
[2026-06-19 22:14:28,048.048 INFO    ] 2026-06-19 22:14:28
[2026-06-19 22:14:28,309.309 INFO    ] 2026-06-19 22:14:28
[2026-06-19 22:14:28,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:14:28,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:14:28,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:14:28,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:14:28,752.752 INFO    ] time= 19/06/2026 22:14:28
[2026-06-19 22:14:28,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:14:28,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:14:28,916.916 INFO    ] No existing commands found in stream
[2026-06-19 22:14:33,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:14:33,931.931 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-19 22:14:37,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:14:37,211.211 INFO    ] Checking for system updates...
[2026-06-19 22:14:37,247.247 INFO    ] 200
[2026-06-19 22:14:37,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:14:37,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:14:37,307.307 INFO    ] No update needed
[2026-06-19 22:14:37,309.309 INFO    ] Checking for camera pi updates...
[2026-06-19 22:14:37,348.348 INFO    ] 200
[2026-06-19 22:14:37,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:14:37,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:14:37,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:14:37,451.451 INFO    ] No camera update needed
[2026-06-19 22:14:37,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:14:37,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:14:37,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:14:37,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:14:39,507.507 INFO    ] ================================================
[2026-06-19 22:14:39,523.523 INFO    ] Launching Daemon at Fri Jun 19 22:14:39 IST 2026
[2026-06-19 22:14:39,534.534 INFO    ] ================================================
[2026-06-19 22:14:40,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:14:40
[2026-06-19 22:14:40,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:14:41,224.224 INFO    ] Initializing speech engine...
[2026-06-19 22:14:41,235.235 INFO    ] 2026-06-19 22:14:41
[2026-06-19 22:14:41,549.549 INFO    ] 2026-06-19 22:14:41
[2026-06-19 22:14:41,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:14:41,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:14:41,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:14:42,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:14:42,070.070 INFO    ] time= 19/06/2026 22:14:42
[2026-06-19 22:14:42,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:14:42,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:14:42,215.215 INFO    ] No existing commands found in stream
[2026-06-19 22:14:47,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:14:47,239.239 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-19 22:14:48,498.498 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:14:48,501.501 INFO    ] Checking for system updates...
[2026-06-19 22:14:48,539.539 INFO    ] 200
[2026-06-19 22:14:48,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:14:48,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:14:48,598.598 INFO    ] No update needed
[2026-06-19 22:14:48,601.601 INFO    ] Checking for camera pi updates...
[2026-06-19 22:14:48,640.640 INFO    ] 200
[2026-06-19 22:14:48,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:14:48,683.683 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:14:48,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:14:48,717.717 INFO    ] No camera update needed
[2026-06-19 22:14:48,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:14:48,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:14:48,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:14:48,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:14:50,773.773 INFO    ] ================================================
[2026-06-19 22:14:50,788.788 INFO    ] Launching Daemon at Fri Jun 19 22:14:50 IST 2026
[2026-06-19 22:14:50,800.800 INFO    ] ================================================
[2026-06-19 22:14:51,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:14:51
[2026-06-19 22:14:52,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:14:52,452.452 INFO    ] Initializing speech engine...
[2026-06-19 22:14:52,464.464 INFO    ] 2026-06-19 22:14:52
[2026-06-19 22:14:52,773.773 INFO    ] 2026-06-19 22:14:52
[2026-06-19 22:14:52,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:14:53,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:14:53,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:14:53,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:14:53,281.281 INFO    ] time= 19/06/2026 22:14:53
[2026-06-19 22:14:53,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:14:53,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:14:53,438.438 INFO    ] No existing commands found in stream
[2026-06-19 22:14:58,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:14:58,463.463 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 22:15:01,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:15:01,020.020 INFO    ] Checking for system updates...
[2026-06-19 22:15:01,058.058 INFO    ] 200
[2026-06-19 22:15:01,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:01,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:15:01,115.115 INFO    ] No update needed
[2026-06-19 22:15:01,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 22:15:01,157.157 INFO    ] 200
[2026-06-19 22:15:01,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:01,206.206 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:15:01,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:15:01,263.263 INFO    ] No camera update needed
[2026-06-19 22:15:01,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:15:01,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:15:01,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:15:01,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:15:03,342.342 INFO    ] ================================================
[2026-06-19 22:15:03,361.361 INFO    ] Launching Daemon at Fri Jun 19 22:15:03 IST 2026
[2026-06-19 22:15:03,374.374 INFO    ] ================================================
[2026-06-19 22:15:03,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:15:03
[2026-06-19 22:15:04,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:15:04,808.808 INFO    ] Initializing speech engine...
[2026-06-19 22:15:04,817.817 INFO    ] 2026-06-19 22:15:04
[2026-06-19 22:15:05,114.114 INFO    ] 2026-06-19 22:15:05
[2026-06-19 22:15:05,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:15:05,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:15:05,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:15:05,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:15:05,502.502 INFO    ] time= 19/06/2026 22:15:05
[2026-06-19 22:15:05,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:15:05,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:15:05,630.630 INFO    ] No existing commands found in stream
[2026-06-19 22:15:10,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:15:10,643.643 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 22:15:13,992.992 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:15:13,994.994 INFO    ] Checking for system updates...
[2026-06-19 22:15:14,032.032 INFO    ] 200
[2026-06-19 22:15:14,034.034 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:14,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:15:14,091.091 INFO    ] No update needed
[2026-06-19 22:15:14,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 22:15:14,131.131 INFO    ] 200
[2026-06-19 22:15:14,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:14,180.180 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:15:14,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:15:14,230.230 INFO    ] No camera update needed
[2026-06-19 22:15:14,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:15:14,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:15:14,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:15:14,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:15:16,286.286 INFO    ] ================================================
[2026-06-19 22:15:16,303.303 INFO    ] Launching Daemon at Fri Jun 19 22:15:16 IST 2026
[2026-06-19 22:15:16,314.314 INFO    ] ================================================
[2026-06-19 22:15:16,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:15:16
[2026-06-19 22:15:17,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:15:17,724.724 INFO    ] Initializing speech engine...
[2026-06-19 22:15:17,730.730 INFO    ] 2026-06-19 22:15:17
[2026-06-19 22:15:18,002.002 INFO    ] 2026-06-19 22:15:17
[2026-06-19 22:15:18,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:15:18,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:15:18,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:15:18,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:15:18,372.372 INFO    ] time= 19/06/2026 22:15:18
[2026-06-19 22:15:18,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:15:18,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:15:18,546.546 INFO    ] No existing commands found in stream
[2026-06-19 22:15:23,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:15:23,579.579 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 22:15:26,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:15:26,962.962 INFO    ] Checking for system updates...
[2026-06-19 22:15:27,003.003 INFO    ] 200
[2026-06-19 22:15:27,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:27,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:15:27,071.071 INFO    ] No update needed
[2026-06-19 22:15:27,074.074 INFO    ] Checking for camera pi updates...
[2026-06-19 22:15:27,112.112 INFO    ] 200
[2026-06-19 22:15:27,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:27,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:15:27,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:15:27,205.205 INFO    ] No camera update needed
[2026-06-19 22:15:27,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:15:27,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:15:27,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:15:27,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:15:29,262.262 INFO    ] ================================================
[2026-06-19 22:15:29,278.278 INFO    ] Launching Daemon at Fri Jun 19 22:15:29 IST 2026
[2026-06-19 22:15:29,290.290 INFO    ] ================================================
[2026-06-19 22:15:29,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:15:29
[2026-06-19 22:15:30,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:15:30,964.964 INFO    ] Initializing speech engine...
[2026-06-19 22:15:30,976.976 INFO    ] 2026-06-19 22:15:30
[2026-06-19 22:15:31,290.290 INFO    ] 2026-06-19 22:15:31
[2026-06-19 22:15:31,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:15:31,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:15:31,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:15:31,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:15:31,822.822 INFO    ] time= 19/06/2026 22:15:31
[2026-06-19 22:15:31,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:15:31,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:15:31,989.989 INFO    ] No existing commands found in stream
[2026-06-19 22:15:37,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:15:37,011.011 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 22:15:38,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:15:38,829.829 INFO    ] Checking for system updates...
[2026-06-19 22:15:38,866.866 INFO    ] 200
[2026-06-19 22:15:38,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:38,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:15:38,936.936 INFO    ] No update needed
[2026-06-19 22:15:38,939.939 INFO    ] Checking for camera pi updates...
[2026-06-19 22:15:38,973.973 INFO    ] 200
[2026-06-19 22:15:38,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:39,017.017 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:15:39,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:15:39,067.067 INFO    ] No camera update needed
[2026-06-19 22:15:39,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:15:39,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:15:39,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:15:39,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:15:41,124.124 INFO    ] ================================================
[2026-06-19 22:15:41,139.139 INFO    ] Launching Daemon at Fri Jun 19 22:15:41 IST 2026
[2026-06-19 22:15:41,151.151 INFO    ] ================================================
[2026-06-19 22:15:41,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:15:41
[2026-06-19 22:15:42,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:15:42,583.583 INFO    ] Initializing speech engine...
[2026-06-19 22:15:42,590.590 INFO    ] 2026-06-19 22:15:42
[2026-06-19 22:15:42,915.915 INFO    ] 2026-06-19 22:15:42
[2026-06-19 22:15:42,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:15:43,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:15:43,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:15:43,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:15:43,345.345 INFO    ] time= 19/06/2026 22:15:43
[2026-06-19 22:15:43,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:15:43,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:15:43,436.436 INFO    ] No existing commands found in stream
[2026-06-19 22:15:48,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:15:48,450.450 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 22:15:51,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:15:51,202.202 INFO    ] Checking for system updates...
[2026-06-19 22:15:51,245.245 INFO    ] 200
[2026-06-19 22:15:51,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:51,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:15:51,316.316 INFO    ] No update needed
[2026-06-19 22:15:51,319.319 INFO    ] Checking for camera pi updates...
[2026-06-19 22:15:51,356.356 INFO    ] 200
[2026-06-19 22:15:51,359.359 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:15:51,401.401 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:15:51,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:15:51,438.438 INFO    ] No camera update needed
[2026-06-19 22:15:51,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:15:51,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:15:51,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:15:51,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:15:53,500.500 INFO    ] ================================================
[2026-06-19 22:15:53,520.520 INFO    ] Launching Daemon at Fri Jun 19 22:15:53 IST 2026
[2026-06-19 22:15:53,531.531 INFO    ] ================================================
[2026-06-19 22:15:54,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:15:54
[2026-06-19 22:15:54,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:15:54,956.956 INFO    ] Initializing speech engine...
[2026-06-19 22:15:54,965.965 INFO    ] 2026-06-19 22:15:54
[2026-06-19 22:15:55,273.273 INFO    ] 2026-06-19 22:15:55
[2026-06-19 22:15:55,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:15:55,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:15:55,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:15:55,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:15:55,665.665 INFO    ] time= 19/06/2026 22:15:55
[2026-06-19 22:15:55,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:15:55,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:15:55,793.793 INFO    ] No existing commands found in stream
[2026-06-19 22:16:00,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:16:00,807.807 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-19 22:16:05,058.058 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:16:05,060.060 INFO    ] Checking for system updates...
[2026-06-19 22:16:05,099.099 INFO    ] 200
[2026-06-19 22:16:05,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:05,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:16:05,163.163 INFO    ] No update needed
[2026-06-19 22:16:05,165.165 INFO    ] Checking for camera pi updates...
[2026-06-19 22:16:05,198.198 INFO    ] 200
[2026-06-19 22:16:05,201.201 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:05,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:16:05,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:16:05,293.293 INFO    ] No camera update needed
[2026-06-19 22:16:05,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:16:05,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:16:05,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:16:05,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:16:07,351.351 INFO    ] ================================================
[2026-06-19 22:16:07,367.367 INFO    ] Launching Daemon at Fri Jun 19 22:16:07 IST 2026
[2026-06-19 22:16:07,378.378 INFO    ] ================================================
[2026-06-19 22:16:07,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:16:07
[2026-06-19 22:16:08,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:16:08,939.939 INFO    ] Initializing speech engine...
[2026-06-19 22:16:08,950.950 INFO    ] 2026-06-19 22:16:08
[2026-06-19 22:16:09,237.237 INFO    ] 2026-06-19 22:16:09
[2026-06-19 22:16:09,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:16:09,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:16:09,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:16:09,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:16:09,765.765 INFO    ] time= 19/06/2026 22:16:09
[2026-06-19 22:16:09,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:16:09,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:16:09,917.917 INFO    ] No existing commands found in stream
[2026-06-19 22:16:14,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:16:14,932.932 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 22:16:17,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:16:17,123.123 INFO    ] Checking for system updates...
[2026-06-19 22:16:17,163.163 INFO    ] 200
[2026-06-19 22:16:17,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:17,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:16:17,222.222 INFO    ] No update needed
[2026-06-19 22:16:17,224.224 INFO    ] Checking for camera pi updates...
[2026-06-19 22:16:17,258.258 INFO    ] 200
[2026-06-19 22:16:17,261.261 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:17,305.305 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:16:17,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:16:17,453.453 INFO    ] No camera update needed
[2026-06-19 22:16:17,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:16:17,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:16:17,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:16:17,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:16:19,512.512 INFO    ] ================================================
[2026-06-19 22:16:19,528.528 INFO    ] Launching Daemon at Fri Jun 19 22:16:19 IST 2026
[2026-06-19 22:16:19,539.539 INFO    ] ================================================
[2026-06-19 22:16:20,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:16:20
[2026-06-19 22:16:20,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:16:21,000.000 INFO    ] Initializing speech engine...
[2026-06-19 22:16:21,009.009 INFO    ] 2026-06-19 22:16:21
[2026-06-19 22:16:21,265.265 INFO    ] 2026-06-19 22:16:21
[2026-06-19 22:16:21,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:16:21,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:16:21,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:16:21,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:16:21,747.747 INFO    ] time= 19/06/2026 22:16:21
[2026-06-19 22:16:21,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:16:21,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:16:21,870.870 INFO    ] No existing commands found in stream
[2026-06-19 22:16:26,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:16:26,885.885 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 22:16:29,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:16:29,175.175 INFO    ] Checking for system updates...
[2026-06-19 22:16:29,213.213 INFO    ] 200
[2026-06-19 22:16:29,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:29,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:16:29,274.274 INFO    ] No update needed
[2026-06-19 22:16:29,276.276 INFO    ] Checking for camera pi updates...
[2026-06-19 22:16:29,311.311 INFO    ] 200
[2026-06-19 22:16:29,314.314 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:29,356.356 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:16:29,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:16:29,419.419 INFO    ] No camera update needed
[2026-06-19 22:16:29,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:16:29,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:16:29,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:16:29,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:16:31,478.478 INFO    ] ================================================
[2026-06-19 22:16:31,494.494 INFO    ] Launching Daemon at Fri Jun 19 22:16:31 IST 2026
[2026-06-19 22:16:31,504.504 INFO    ] ================================================
[2026-06-19 22:16:32,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:16:32
[2026-06-19 22:16:32,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:16:33,085.085 INFO    ] Initializing speech engine...
[2026-06-19 22:16:33,100.100 INFO    ] 2026-06-19 22:16:33
[2026-06-19 22:16:33,388.388 INFO    ] 2026-06-19 22:16:33
[2026-06-19 22:16:33,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:16:33,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:16:33,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:16:33,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:16:33,885.885 INFO    ] time= 19/06/2026 22:16:33
[2026-06-19 22:16:33,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:16:33,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:16:34,063.063 INFO    ] No existing commands found in stream
[2026-06-19 22:16:39,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:16:39,097.097 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 22:16:40,359.359 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:16:40,361.361 INFO    ] Checking for system updates...
[2026-06-19 22:16:40,403.403 INFO    ] 200
[2026-06-19 22:16:40,405.405 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:40,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:16:40,469.469 INFO    ] No update needed
[2026-06-19 22:16:40,471.471 INFO    ] Checking for camera pi updates...
[2026-06-19 22:16:40,509.509 INFO    ] 200
[2026-06-19 22:16:40,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:40,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:16:40,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:16:40,606.606 INFO    ] No camera update needed
[2026-06-19 22:16:40,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:16:40,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:16:40,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:16:40,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:16:42,662.662 INFO    ] ================================================
[2026-06-19 22:16:42,678.678 INFO    ] Launching Daemon at Fri Jun 19 22:16:42 IST 2026
[2026-06-19 22:16:42,689.689 INFO    ] ================================================
[2026-06-19 22:16:43,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:16:43
[2026-06-19 22:16:43,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:16:44,102.102 INFO    ] Initializing speech engine...
[2026-06-19 22:16:44,111.111 INFO    ] 2026-06-19 22:16:44
[2026-06-19 22:16:44,411.411 INFO    ] 2026-06-19 22:16:44
[2026-06-19 22:16:44,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:16:44,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:16:44,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:16:44,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:16:44,796.796 INFO    ] time= 19/06/2026 22:16:44
[2026-06-19 22:16:44,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:16:44,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:16:44,927.927 INFO    ] No existing commands found in stream
[2026-06-19 22:16:49,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:16:49,940.940 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 22:16:52,956.956 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:16:52,959.959 INFO    ] Checking for system updates...
[2026-06-19 22:16:53,010.010 INFO    ] 200
[2026-06-19 22:16:53,012.012 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:53,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:16:53,075.075 INFO    ] No update needed
[2026-06-19 22:16:53,077.077 INFO    ] Checking for camera pi updates...
[2026-06-19 22:16:53,112.112 INFO    ] 200
[2026-06-19 22:16:53,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:16:53,156.156 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:16:53,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:16:53,213.213 INFO    ] No camera update needed
[2026-06-19 22:16:53,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:16:53,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:16:53,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:16:53,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:16:55,268.268 INFO    ] ================================================
[2026-06-19 22:16:55,284.284 INFO    ] Launching Daemon at Fri Jun 19 22:16:55 IST 2026
[2026-06-19 22:16:55,294.294 INFO    ] ================================================
[2026-06-19 22:16:55,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:16:55
[2026-06-19 22:16:56,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:16:56,750.750 INFO    ] Initializing speech engine...
[2026-06-19 22:16:56,759.759 INFO    ] 2026-06-19 22:16:56
[2026-06-19 22:16:57,063.063 INFO    ] 2026-06-19 22:16:57
[2026-06-19 22:16:57,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:16:57,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:16:57,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:16:57,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:16:57,450.450 INFO    ] time= 19/06/2026 22:16:57
[2026-06-19 22:16:57,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:16:57,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:16:57,578.578 INFO    ] No existing commands found in stream
[2026-06-19 22:17:02,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:17:02,593.593 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-19 22:17:06,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:17:06,614.614 INFO    ] Checking for system updates...
[2026-06-19 22:17:06,651.651 INFO    ] 200
[2026-06-19 22:17:06,653.653 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:06,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:17:06,708.708 INFO    ] No update needed
[2026-06-19 22:17:06,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 22:17:06,744.744 INFO    ] 200
[2026-06-19 22:17:06,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:06,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:17:06,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:17:06,833.833 INFO    ] No camera update needed
[2026-06-19 22:17:06,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:17:06,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:17:06,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:17:06,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:17:08,888.888 INFO    ] ================================================
[2026-06-19 22:17:08,903.903 INFO    ] Launching Daemon at Fri Jun 19 22:17:08 IST 2026
[2026-06-19 22:17:08,914.914 INFO    ] ================================================
[2026-06-19 22:17:09,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:17:09
[2026-06-19 22:17:10,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:17:10,416.416 INFO    ] Initializing speech engine...
[2026-06-19 22:17:10,424.424 INFO    ] 2026-06-19 22:17:10
[2026-06-19 22:17:10,676.676 INFO    ] 2026-06-19 22:17:10
[2026-06-19 22:17:10,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:17:10,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:17:10,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:17:11,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:17:11,046.046 INFO    ] time= 19/06/2026 22:17:11
[2026-06-19 22:17:11,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:17:11,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:17:11,230.230 INFO    ] No existing commands found in stream
[2026-06-19 22:17:16,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:17:16,258.258 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 22:17:20,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:17:20,206.206 INFO    ] Checking for system updates...
[2026-06-19 22:17:20,249.249 INFO    ] 200
[2026-06-19 22:17:20,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:20,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:17:20,318.318 INFO    ] No update needed
[2026-06-19 22:17:20,321.321 INFO    ] Checking for camera pi updates...
[2026-06-19 22:17:20,361.361 INFO    ] 200
[2026-06-19 22:17:20,364.364 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:20,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:17:20,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:17:20,459.459 INFO    ] No camera update needed
[2026-06-19 22:17:20,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:17:20,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:17:20,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:17:20,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:17:22,515.515 INFO    ] ================================================
[2026-06-19 22:17:22,535.535 INFO    ] Launching Daemon at Fri Jun 19 22:17:22 IST 2026
[2026-06-19 22:17:22,546.546 INFO    ] ================================================
[2026-06-19 22:17:23,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:17:23
[2026-06-19 22:17:23,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:17:23,977.977 INFO    ] Initializing speech engine...
[2026-06-19 22:17:23,987.987 INFO    ] 2026-06-19 22:17:23
[2026-06-19 22:17:24,236.236 INFO    ] 2026-06-19 22:17:24
[2026-06-19 22:17:24,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:17:24,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:17:24,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:17:24,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:17:24,719.719 INFO    ] time= 19/06/2026 22:17:24
[2026-06-19 22:17:24,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:17:24,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:17:24,868.868 INFO    ] No existing commands found in stream
[2026-06-19 22:17:29,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:17:29,880.880 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 22:17:33,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:17:33,045.045 INFO    ] Checking for system updates...
[2026-06-19 22:17:33,080.080 INFO    ] 200
[2026-06-19 22:17:33,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:33,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:17:33,145.145 INFO    ] No update needed
[2026-06-19 22:17:33,148.148 INFO    ] Checking for camera pi updates...
[2026-06-19 22:17:33,181.181 INFO    ] 200
[2026-06-19 22:17:33,186.186 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:33,242.242 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:17:33,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:17:33,274.274 INFO    ] No camera update needed
[2026-06-19 22:17:33,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:17:33,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:17:33,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:17:33,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:17:35,329.329 INFO    ] ================================================
[2026-06-19 22:17:35,346.346 INFO    ] Launching Daemon at Fri Jun 19 22:17:35 IST 2026
[2026-06-19 22:17:35,357.357 INFO    ] ================================================
[2026-06-19 22:17:35,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:17:35
[2026-06-19 22:17:36,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:17:36,836.836 INFO    ] Initializing speech engine...
[2026-06-19 22:17:36,842.842 INFO    ] 2026-06-19 22:17:36
[2026-06-19 22:17:37,088.088 INFO    ] 2026-06-19 22:17:37
[2026-06-19 22:17:37,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:17:37,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:17:37,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:17:37,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:17:37,560.560 INFO    ] time= 19/06/2026 22:17:37
[2026-06-19 22:17:37,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:17:37,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:17:37,711.711 INFO    ] No existing commands found in stream
[2026-06-19 22:17:42,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:17:42,726.726 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-19 22:17:44,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:17:44,300.300 INFO    ] Checking for system updates...
[2026-06-19 22:17:44,337.337 INFO    ] 200
[2026-06-19 22:17:44,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:44,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:17:44,402.402 INFO    ] No update needed
[2026-06-19 22:17:44,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 22:17:44,439.439 INFO    ] 200
[2026-06-19 22:17:44,442.442 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:44,487.487 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:17:44,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:17:44,535.535 INFO    ] No camera update needed
[2026-06-19 22:17:44,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:17:44,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:17:44,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:17:44,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:17:46,592.592 INFO    ] ================================================
[2026-06-19 22:17:46,608.608 INFO    ] Launching Daemon at Fri Jun 19 22:17:46 IST 2026
[2026-06-19 22:17:46,620.620 INFO    ] ================================================
[2026-06-19 22:17:47,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:17:47
[2026-06-19 22:17:47,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:17:48,044.044 INFO    ] Initializing speech engine...
[2026-06-19 22:17:48,054.054 INFO    ] 2026-06-19 22:17:48
[2026-06-19 22:17:48,302.302 INFO    ] 2026-06-19 22:17:48
[2026-06-19 22:17:48,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:17:48,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:17:48,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:17:48,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:17:48,789.789 INFO    ] time= 19/06/2026 22:17:48
[2026-06-19 22:17:48,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:17:48,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:17:48,932.932 INFO    ] No existing commands found in stream
[2026-06-19 22:17:53,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:17:53,948.948 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 22:17:56,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:17:56,797.797 INFO    ] Checking for system updates...
[2026-06-19 22:17:56,839.839 INFO    ] 200
[2026-06-19 22:17:56,841.841 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:56,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:17:56,898.898 INFO    ] No update needed
[2026-06-19 22:17:56,900.900 INFO    ] Checking for camera pi updates...
[2026-06-19 22:17:56,942.942 INFO    ] 200
[2026-06-19 22:17:56,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:17:56,989.989 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:17:57,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:17:57,028.028 INFO    ] No camera update needed
[2026-06-19 22:17:57,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:17:57,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:17:57,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:17:57,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:17:59,087.087 INFO    ] ================================================
[2026-06-19 22:17:59,103.103 INFO    ] Launching Daemon at Fri Jun 19 22:17:59 IST 2026
[2026-06-19 22:17:59,114.114 INFO    ] ================================================
[2026-06-19 22:17:59,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:17:59
[2026-06-19 22:18:00,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:18:00,548.548 INFO    ] Initializing speech engine...
[2026-06-19 22:18:00,557.557 INFO    ] 2026-06-19 22:18:00
[2026-06-19 22:18:00,819.819 INFO    ] 2026-06-19 22:18:00
[2026-06-19 22:18:00,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:18:01,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:18:01,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:18:01,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:18:01,283.283 INFO    ] time= 19/06/2026 22:18:01
[2026-06-19 22:18:01,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:18:01,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:18:01,470.470 INFO    ] No existing commands found in stream
[2026-06-19 22:18:06,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:18:06,496.496 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 22:18:09,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:18:09,769.769 INFO    ] Checking for system updates...
[2026-06-19 22:18:09,810.810 INFO    ] 200
[2026-06-19 22:18:09,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:09,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:18:09,868.868 INFO    ] No update needed
[2026-06-19 22:18:09,871.871 INFO    ] Checking for camera pi updates...
[2026-06-19 22:18:09,907.907 INFO    ] 200
[2026-06-19 22:18:09,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:09,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:18:09,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:18:10,001.001 INFO    ] No camera update needed
[2026-06-19 22:18:10,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:18:10,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:18:10,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:18:10,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:18:12,056.056 INFO    ] ================================================
[2026-06-19 22:18:12,072.072 INFO    ] Launching Daemon at Fri Jun 19 22:18:12 IST 2026
[2026-06-19 22:18:12,083.083 INFO    ] ================================================
[2026-06-19 22:18:12,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:18:12
[2026-06-19 22:18:13,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:18:13,567.567 INFO    ] Initializing speech engine...
[2026-06-19 22:18:13,579.579 INFO    ] 2026-06-19 22:18:13
[2026-06-19 22:18:13,866.866 INFO    ] 2026-06-19 22:18:13
[2026-06-19 22:18:13,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:18:14,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:18:14,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:18:14,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:18:14,331.331 INFO    ] time= 19/06/2026 22:18:14
[2026-06-19 22:18:14,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:18:14,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:18:14,535.535 INFO    ] No existing commands found in stream
[2026-06-19 22:18:19,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:18:19,564.564 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 22:18:20,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:18:20,837.837 INFO    ] Checking for system updates...
[2026-06-19 22:18:20,877.877 INFO    ] 200
[2026-06-19 22:18:20,880.880 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:20,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:18:20,935.935 INFO    ] No update needed
[2026-06-19 22:18:20,937.937 INFO    ] Checking for camera pi updates...
[2026-06-19 22:18:20,971.971 INFO    ] 200
[2026-06-19 22:18:20,973.973 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:21,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:18:21,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:18:21,161.161 INFO    ] No camera update needed
[2026-06-19 22:18:21,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:18:21,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:18:21,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:18:21,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:18:23,216.216 INFO    ] ================================================
[2026-06-19 22:18:23,231.231 INFO    ] Launching Daemon at Fri Jun 19 22:18:23 IST 2026
[2026-06-19 22:18:23,243.243 INFO    ] ================================================
[2026-06-19 22:18:23,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:18:23
[2026-06-19 22:18:24,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:18:24,690.690 INFO    ] Initializing speech engine...
[2026-06-19 22:18:24,699.699 INFO    ] 2026-06-19 22:18:24
[2026-06-19 22:18:24,959.959 INFO    ] 2026-06-19 22:18:24
[2026-06-19 22:18:24,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:18:25,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:18:25,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:18:25,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:18:25,429.429 INFO    ] time= 19/06/2026 22:18:25
[2026-06-19 22:18:25,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:18:25,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:18:25,593.593 INFO    ] No existing commands found in stream
[2026-06-19 22:18:30,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:18:30,607.607 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 22:18:31,484.484 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:18:31,487.487 INFO    ] Checking for system updates...
[2026-06-19 22:18:31,534.534 INFO    ] 200
[2026-06-19 22:18:31,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:31,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:18:31,613.613 INFO    ] No update needed
[2026-06-19 22:18:31,616.616 INFO    ] Checking for camera pi updates...
[2026-06-19 22:18:31,657.657 INFO    ] 200
[2026-06-19 22:18:31,659.659 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:31,705.705 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:18:31,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:18:31,762.762 INFO    ] No camera update needed
[2026-06-19 22:18:31,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:18:31,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:18:31,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:18:31,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:18:33,821.821 INFO    ] ================================================
[2026-06-19 22:18:33,837.837 INFO    ] Launching Daemon at Fri Jun 19 22:18:33 IST 2026
[2026-06-19 22:18:33,848.848 INFO    ] ================================================
[2026-06-19 22:18:34,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:18:34
[2026-06-19 22:18:35,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:18:35,400.400 INFO    ] Initializing speech engine...
[2026-06-19 22:18:35,411.411 INFO    ] 2026-06-19 22:18:35
[2026-06-19 22:18:35,695.695 INFO    ] 2026-06-19 22:18:35
[2026-06-19 22:18:35,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:18:35,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:18:35,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:18:36,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:18:36,149.149 INFO    ] time= 19/06/2026 22:18:36
[2026-06-19 22:18:36,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:18:36,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:18:36,375.375 INFO    ] No existing commands found in stream
[2026-06-19 22:18:41,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:18:41,403.403 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 22:18:45,363.363 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:18:45,367.367 INFO    ] Checking for system updates...
[2026-06-19 22:18:45,407.407 INFO    ] 200
[2026-06-19 22:18:45,410.410 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:45,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:18:45,477.477 INFO    ] No update needed
[2026-06-19 22:18:45,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 22:18:45,519.519 INFO    ] 200
[2026-06-19 22:18:45,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:45,569.569 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:18:45,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:18:45,621.621 INFO    ] No camera update needed
[2026-06-19 22:18:45,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:18:45,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:18:45,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:18:45,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:18:47,681.681 INFO    ] ================================================
[2026-06-19 22:18:47,697.697 INFO    ] Launching Daemon at Fri Jun 19 22:18:47 IST 2026
[2026-06-19 22:18:47,708.708 INFO    ] ================================================
[2026-06-19 22:18:48,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:18:48
[2026-06-19 22:18:48,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:18:49,134.134 INFO    ] Initializing speech engine...
[2026-06-19 22:18:49,143.143 INFO    ] 2026-06-19 22:18:49
[2026-06-19 22:18:49,437.437 INFO    ] 2026-06-19 22:18:49
[2026-06-19 22:18:49,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:18:49,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:18:49,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:18:49,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:18:49,850.850 INFO    ] time= 19/06/2026 22:18:49
[2026-06-19 22:18:49,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:18:49,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:18:49,936.936 INFO    ] No existing commands found in stream
[2026-06-19 22:18:54,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:18:54,955.955 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 22:18:57,325.325 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:18:57,328.328 INFO    ] Checking for system updates...
[2026-06-19 22:18:57,367.367 INFO    ] 200
[2026-06-19 22:18:57,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:57,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:18:57,426.426 INFO    ] No update needed
[2026-06-19 22:18:57,428.428 INFO    ] Checking for camera pi updates...
[2026-06-19 22:18:57,466.466 INFO    ] 200
[2026-06-19 22:18:57,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:18:57,520.520 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:18:57,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:18:57,569.569 INFO    ] No camera update needed
[2026-06-19 22:18:57,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:18:57,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:18:57,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:18:57,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:18:59,627.627 INFO    ] ================================================
[2026-06-19 22:18:59,643.643 INFO    ] Launching Daemon at Fri Jun 19 22:18:59 IST 2026
[2026-06-19 22:18:59,654.654 INFO    ] ================================================
[2026-06-19 22:19:00,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:19:00
[2026-06-19 22:19:00,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:19:01,104.104 INFO    ] Initializing speech engine...
[2026-06-19 22:19:01,113.113 INFO    ] 2026-06-19 22:19:01
[2026-06-19 22:19:01,427.427 INFO    ] 2026-06-19 22:19:01
[2026-06-19 22:19:01,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:19:01,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:19:01,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:19:01,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:19:01,967.967 INFO    ] time= 19/06/2026 22:19:01
[2026-06-19 22:19:01,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:19:01,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:19:02,112.112 INFO    ] No existing commands found in stream
[2026-06-19 22:19:07,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:19:07,126.126 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-19 22:19:09,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:19:09,336.336 INFO    ] Checking for system updates...
[2026-06-19 22:19:09,373.373 INFO    ] 200
[2026-06-19 22:19:09,375.375 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:09,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:19:09,436.436 INFO    ] No update needed
[2026-06-19 22:19:09,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 22:19:09,475.475 INFO    ] 200
[2026-06-19 22:19:09,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:09,518.518 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:19:09,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:19:09,571.571 INFO    ] No camera update needed
[2026-06-19 22:19:09,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:19:09,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:19:09,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:19:09,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:19:11,634.634 INFO    ] ================================================
[2026-06-19 22:19:11,649.649 INFO    ] Launching Daemon at Fri Jun 19 22:19:11 IST 2026
[2026-06-19 22:19:11,660.660 INFO    ] ================================================
[2026-06-19 22:19:12,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:19:12
[2026-06-19 22:19:12,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:19:13,068.068 INFO    ] Initializing speech engine...
[2026-06-19 22:19:13,075.075 INFO    ] 2026-06-19 22:19:13
[2026-06-19 22:19:13,368.368 INFO    ] 2026-06-19 22:19:13
[2026-06-19 22:19:13,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:19:13,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:19:13,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:19:13,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:19:13,764.764 INFO    ] time= 19/06/2026 22:19:13
[2026-06-19 22:19:13,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:19:13,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:19:13,871.871 INFO    ] No existing commands found in stream
[2026-06-19 22:19:18,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:19:18,887.887 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 22:19:22,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:19:22,129.129 INFO    ] Checking for system updates...
[2026-06-19 22:19:22,167.167 INFO    ] 200
[2026-06-19 22:19:22,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:22,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:19:22,229.229 INFO    ] No update needed
[2026-06-19 22:19:22,231.231 INFO    ] Checking for camera pi updates...
[2026-06-19 22:19:22,265.265 INFO    ] 200
[2026-06-19 22:19:22,267.267 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:22,312.312 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:19:22,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:19:22,362.362 INFO    ] No camera update needed
[2026-06-19 22:19:22,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:19:22,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:19:22,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:19:22,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:19:24,417.417 INFO    ] ================================================
[2026-06-19 22:19:24,433.433 INFO    ] Launching Daemon at Fri Jun 19 22:19:24 IST 2026
[2026-06-19 22:19:24,443.443 INFO    ] ================================================
[2026-06-19 22:19:25,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:19:25
[2026-06-19 22:19:25,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:19:25,849.849 INFO    ] Initializing speech engine...
[2026-06-19 22:19:25,872.872 INFO    ] 2026-06-19 22:19:25
[2026-06-19 22:19:26,123.123 INFO    ] 2026-06-19 22:19:26
[2026-06-19 22:19:26,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:19:26,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:19:26,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:19:26,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:19:26,589.589 INFO    ] time= 19/06/2026 22:19:26
[2026-06-19 22:19:26,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:19:26,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:19:26,738.738 INFO    ] No existing commands found in stream
[2026-06-19 22:19:31,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:19:31,752.752 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-19 22:19:33,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:19:33,734.734 INFO    ] Checking for system updates...
[2026-06-19 22:19:33,778.778 INFO    ] 200
[2026-06-19 22:19:33,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:33,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:19:33,842.842 INFO    ] No update needed
[2026-06-19 22:19:33,844.844 INFO    ] Checking for camera pi updates...
[2026-06-19 22:19:33,878.878 INFO    ] 200
[2026-06-19 22:19:33,881.881 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:33,926.926 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:19:33,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:19:33,972.972 INFO    ] No camera update needed
[2026-06-19 22:19:33,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:19:33,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:19:33,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:19:33,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:19:36,028.028 INFO    ] ================================================
[2026-06-19 22:19:36,046.046 INFO    ] Launching Daemon at Fri Jun 19 22:19:36 IST 2026
[2026-06-19 22:19:36,058.058 INFO    ] ================================================
[2026-06-19 22:19:36,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:19:36
[2026-06-19 22:19:37,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:19:37,483.483 INFO    ] Initializing speech engine...
[2026-06-19 22:19:37,499.499 INFO    ] 2026-06-19 22:19:37
[2026-06-19 22:19:37,751.751 INFO    ] 2026-06-19 22:19:37
[2026-06-19 22:19:37,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:19:37,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:19:38,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:19:38,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:19:38,233.233 INFO    ] time= 19/06/2026 22:19:38
[2026-06-19 22:19:38,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:19:38,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:19:38,383.383 INFO    ] No existing commands found in stream
[2026-06-19 22:19:43,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:19:43,398.398 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-19 22:19:47,755.755 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:19:47,758.758 INFO    ] Checking for system updates...
[2026-06-19 22:19:47,798.798 INFO    ] 200
[2026-06-19 22:19:47,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:47,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:19:47,857.857 INFO    ] No update needed
[2026-06-19 22:19:47,860.860 INFO    ] Checking for camera pi updates...
[2026-06-19 22:19:47,898.898 INFO    ] 200
[2026-06-19 22:19:47,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:47,946.946 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:19:47,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:19:47,994.994 INFO    ] No camera update needed
[2026-06-19 22:19:47,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:19:47,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:19:48,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:19:48,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:19:50,051.051 INFO    ] ================================================
[2026-06-19 22:19:50,066.066 INFO    ] Launching Daemon at Fri Jun 19 22:19:50 IST 2026
[2026-06-19 22:19:50,081.081 INFO    ] ================================================
[2026-06-19 22:19:50,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:19:50
[2026-06-19 22:19:51,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:19:51,502.502 INFO    ] Initializing speech engine...
[2026-06-19 22:19:51,511.511 INFO    ] 2026-06-19 22:19:51
[2026-06-19 22:19:51,759.759 INFO    ] 2026-06-19 22:19:51
[2026-06-19 22:19:51,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:19:52,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:19:52,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:19:52,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:19:52,234.234 INFO    ] time= 19/06/2026 22:19:52
[2026-06-19 22:19:52,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:19:52,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:19:52,381.381 INFO    ] No existing commands found in stream
[2026-06-19 22:19:57,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:19:57,403.403 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-19 22:19:59,054.054 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:19:59,057.057 INFO    ] Checking for system updates...
[2026-06-19 22:19:59,093.093 INFO    ] 200
[2026-06-19 22:19:59,095.095 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:59,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:19:59,151.151 INFO    ] No update needed
[2026-06-19 22:19:59,153.153 INFO    ] Checking for camera pi updates...
[2026-06-19 22:19:59,187.187 INFO    ] 200
[2026-06-19 22:19:59,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:19:59,230.230 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:19:59,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:19:59,283.283 INFO    ] No camera update needed
[2026-06-19 22:19:59,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:19:59,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:19:59,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:19:59,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:20:01,364.364 INFO    ] ================================================
[2026-06-19 22:20:01,410.410 INFO    ] Launching Daemon at Fri Jun 19 22:20:01 IST 2026
[2026-06-19 22:20:01,519.519 INFO    ] ================================================
[2026-06-19 22:20:02,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:20:02
[2026-06-19 22:20:03,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:20:03,405.405 INFO    ] Initializing speech engine...
[2026-06-19 22:20:03,412.412 INFO    ] 2026-06-19 22:20:03
[2026-06-19 22:20:03,688.688 INFO    ] 2026-06-19 22:20:03
[2026-06-19 22:20:03,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:20:03,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:20:03,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:20:04,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:20:04,055.055 INFO    ] time= 19/06/2026 22:20:04
[2026-06-19 22:20:04,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:20:04,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:20:04,194.194 INFO    ] No existing commands found in stream
[2026-06-19 22:20:09,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:20:09,207.207 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 22:20:13,202.202 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:20:13,205.205 INFO    ] Checking for system updates...
[2026-06-19 22:20:13,244.244 INFO    ] 200
[2026-06-19 22:20:13,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:13,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:13,308.308 INFO    ] No update needed
[2026-06-19 22:20:13,311.311 INFO    ] Checking for camera pi updates...
[2026-06-19 22:20:13,349.349 INFO    ] 200
[2026-06-19 22:20:13,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:13,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:20:13,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:13,442.442 INFO    ] No camera update needed
[2026-06-19 22:20:13,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:20:13,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:20:13,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:20:13,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:20:15,499.499 INFO    ] ================================================
[2026-06-19 22:20:15,514.514 INFO    ] Launching Daemon at Fri Jun 19 22:20:15 IST 2026
[2026-06-19 22:20:15,525.525 INFO    ] ================================================
[2026-06-19 22:20:16,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:20:16
[2026-06-19 22:20:16,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:20:16,933.933 INFO    ] Initializing speech engine...
[2026-06-19 22:20:16,939.939 INFO    ] 2026-06-19 22:20:16
[2026-06-19 22:20:17,232.232 INFO    ] 2026-06-19 22:20:17
[2026-06-19 22:20:17,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:20:17,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:20:17,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:20:17,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:20:17,614.614 INFO    ] time= 19/06/2026 22:20:17
[2026-06-19 22:20:17,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:20:17,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:20:17,740.740 INFO    ] No existing commands found in stream
[2026-06-19 22:20:22,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:20:22,757.757 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 22:20:24,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:20:24,285.285 INFO    ] Checking for system updates...
[2026-06-19 22:20:24,321.321 INFO    ] 200
[2026-06-19 22:20:24,324.324 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:24,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:24,378.378 INFO    ] No update needed
[2026-06-19 22:20:24,381.381 INFO    ] Checking for camera pi updates...
[2026-06-19 22:20:24,414.414 INFO    ] 200
[2026-06-19 22:20:24,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:24,457.457 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:20:24,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:24,611.611 INFO    ] No camera update needed
[2026-06-19 22:20:24,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:20:24,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:20:24,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:20:24,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:20:26,667.667 INFO    ] ================================================
[2026-06-19 22:20:26,682.682 INFO    ] Launching Daemon at Fri Jun 19 22:20:26 IST 2026
[2026-06-19 22:20:26,693.693 INFO    ] ================================================
[2026-06-19 22:20:27,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:20:27
[2026-06-19 22:20:27,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:20:28,126.126 INFO    ] Initializing speech engine...
[2026-06-19 22:20:28,135.135 INFO    ] 2026-06-19 22:20:28
[2026-06-19 22:20:28,394.394 INFO    ] 2026-06-19 22:20:28
[2026-06-19 22:20:28,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:20:28,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:20:28,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:20:28,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:20:28,880.880 INFO    ] time= 19/06/2026 22:20:28
[2026-06-19 22:20:28,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:20:28,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:20:29,075.075 INFO    ] No existing commands found in stream
[2026-06-19 22:20:34,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:20:34,112.112 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 22:20:37,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:20:37,944.944 INFO    ] Checking for system updates...
[2026-06-19 22:20:37,984.984 INFO    ] 200
[2026-06-19 22:20:37,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:38,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:38,042.042 INFO    ] No update needed
[2026-06-19 22:20:38,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 22:20:38,082.082 INFO    ] 200
[2026-06-19 22:20:38,084.084 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:38,125.125 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:20:38,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:38,173.173 INFO    ] No camera update needed
[2026-06-19 22:20:38,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:20:38,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:20:38,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:20:38,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:20:40,228.228 INFO    ] ================================================
[2026-06-19 22:20:40,243.243 INFO    ] Launching Daemon at Fri Jun 19 22:20:40 IST 2026
[2026-06-19 22:20:40,254.254 INFO    ] ================================================
[2026-06-19 22:20:40,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:20:40
[2026-06-19 22:20:41,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:20:41,807.807 INFO    ] Initializing speech engine...
[2026-06-19 22:20:41,827.827 INFO    ] 2026-06-19 22:20:41
[2026-06-19 22:20:42,096.096 INFO    ] 2026-06-19 22:20:42
[2026-06-19 22:20:42,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:20:42,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:20:42,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:20:42,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:20:42,582.582 INFO    ] time= 19/06/2026 22:20:42
[2026-06-19 22:20:42,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:20:42,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:20:42,734.734 INFO    ] No existing commands found in stream
[2026-06-19 22:20:47,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:20:47,754.754 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 22:20:48,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:20:48,434.434 INFO    ] Checking for system updates...
[2026-06-19 22:20:48,477.477 INFO    ] 200
[2026-06-19 22:20:48,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:48,548.548 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:48,551.551 INFO    ] No update needed
[2026-06-19 22:20:48,554.554 INFO    ] Checking for camera pi updates...
[2026-06-19 22:20:48,590.590 INFO    ] 200
[2026-06-19 22:20:48,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:48,641.641 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:20:48,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:48,678.678 INFO    ] No camera update needed
[2026-06-19 22:20:48,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:20:48,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:20:48,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:20:48,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:20:50,736.736 INFO    ] ================================================
[2026-06-19 22:20:50,753.753 INFO    ] Launching Daemon at Fri Jun 19 22:20:50 IST 2026
[2026-06-19 22:20:50,764.764 INFO    ] ================================================
[2026-06-19 22:20:51,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:20:51
[2026-06-19 22:20:52,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:20:52,449.449 INFO    ] Initializing speech engine...
[2026-06-19 22:20:52,462.462 INFO    ] 2026-06-19 22:20:52
[2026-06-19 22:20:52,755.755 INFO    ] 2026-06-19 22:20:52
[2026-06-19 22:20:52,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:20:53,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:20:53,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:20:53,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:20:53,303.303 INFO    ] time= 19/06/2026 22:20:53
[2026-06-19 22:20:53,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:20:53,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:20:53,453.453 INFO    ] No existing commands found in stream
[2026-06-19 22:20:58,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:20:58,480.480 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 22:20:59,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:20:59,359.359 INFO    ] Checking for system updates...
[2026-06-19 22:20:59,401.401 INFO    ] 200
[2026-06-19 22:20:59,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:59,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:59,461.461 INFO    ] No update needed
[2026-06-19 22:20:59,464.464 INFO    ] Checking for camera pi updates...
[2026-06-19 22:20:59,500.500 INFO    ] 200
[2026-06-19 22:20:59,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:20:59,545.545 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:20:59,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:20:59,580.580 INFO    ] No camera update needed
[2026-06-19 22:20:59,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:20:59,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:20:59,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:20:59,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:21:01,641.641 INFO    ] ================================================
[2026-06-19 22:21:01,657.657 INFO    ] Launching Daemon at Fri Jun 19 22:21:01 IST 2026
[2026-06-19 22:21:01,668.668 INFO    ] ================================================
[2026-06-19 22:21:02,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:21:02
[2026-06-19 22:21:03,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:21:03,483.483 INFO    ] Initializing speech engine...
[2026-06-19 22:21:03,499.499 INFO    ] 2026-06-19 22:21:03
[2026-06-19 22:21:03,768.768 INFO    ] 2026-06-19 22:21:03
[2026-06-19 22:21:03,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:21:03,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:21:03,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:21:04,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:21:04,105.105 INFO    ] time= 19/06/2026 22:21:04
[2026-06-19 22:21:04,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:21:04,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:21:04,237.237 INFO    ] No existing commands found in stream
[2026-06-19 22:21:09,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:21:09,255.255 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-19 22:21:10,102.102 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:21:10,104.104 INFO    ] Checking for system updates...
[2026-06-19 22:21:10,140.140 INFO    ] 200
[2026-06-19 22:21:10,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:10,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:21:10,203.203 INFO    ] No update needed
[2026-06-19 22:21:10,205.205 INFO    ] Checking for camera pi updates...
[2026-06-19 22:21:10,239.239 INFO    ] 200
[2026-06-19 22:21:10,242.242 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:10,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:21:10,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:21:10,339.339 INFO    ] No camera update needed
[2026-06-19 22:21:10,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:21:10,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:21:10,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:21:10,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:21:12,396.396 INFO    ] ================================================
[2026-06-19 22:21:12,411.411 INFO    ] Launching Daemon at Fri Jun 19 22:21:12 IST 2026
[2026-06-19 22:21:12,423.423 INFO    ] ================================================
[2026-06-19 22:21:12,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:21:12
[2026-06-19 22:21:13,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:21:13,844.844 INFO    ] Initializing speech engine...
[2026-06-19 22:21:13,870.870 INFO    ] 2026-06-19 22:21:13
[2026-06-19 22:21:14,143.143 INFO    ] 2026-06-19 22:21:14
[2026-06-19 22:21:14,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:21:14,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:21:14,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:21:14,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:21:14,469.469 INFO    ] time= 19/06/2026 22:21:14
[2026-06-19 22:21:14,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:21:14,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:21:14,540.540 INFO    ] No existing commands found in stream
[2026-06-19 22:21:19,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:21:19,553.553 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 22:21:23,233.233 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:21:23,236.236 INFO    ] Checking for system updates...
[2026-06-19 22:21:23,273.273 INFO    ] 200
[2026-06-19 22:21:23,276.276 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:23,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:21:23,332.332 INFO    ] No update needed
[2026-06-19 22:21:23,334.334 INFO    ] Checking for camera pi updates...
[2026-06-19 22:21:23,368.368 INFO    ] 200
[2026-06-19 22:21:23,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:23,416.416 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:21:23,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:21:23,464.464 INFO    ] No camera update needed
[2026-06-19 22:21:23,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:21:23,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:21:23,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:21:23,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:21:25,519.519 INFO    ] ================================================
[2026-06-19 22:21:25,535.535 INFO    ] Launching Daemon at Fri Jun 19 22:21:25 IST 2026
[2026-06-19 22:21:25,546.546 INFO    ] ================================================
[2026-06-19 22:21:26,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:21:26
[2026-06-19 22:21:26,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:21:27,005.005 INFO    ] Initializing speech engine...
[2026-06-19 22:21:27,013.013 INFO    ] 2026-06-19 22:21:27
[2026-06-19 22:21:27,272.272 INFO    ] 2026-06-19 22:21:27
[2026-06-19 22:21:27,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:21:27,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:21:27,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:21:27,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:21:27,753.753 INFO    ] time= 19/06/2026 22:21:27
[2026-06-19 22:21:27,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:21:27,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:21:27,942.942 INFO    ] No existing commands found in stream
[2026-06-19 22:21:32,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:21:32,971.971 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 22:21:36,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:21:36,346.346 INFO    ] Checking for system updates...
[2026-06-19 22:21:36,383.383 INFO    ] 200
[2026-06-19 22:21:36,386.386 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:36,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:21:36,442.442 INFO    ] No update needed
[2026-06-19 22:21:36,445.445 INFO    ] Checking for camera pi updates...
[2026-06-19 22:21:36,483.483 INFO    ] 200
[2026-06-19 22:21:36,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:36,531.531 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:21:36,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:21:36,576.576 INFO    ] No camera update needed
[2026-06-19 22:21:36,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:21:36,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:21:36,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:21:36,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:21:38,634.634 INFO    ] ================================================
[2026-06-19 22:21:38,649.649 INFO    ] Launching Daemon at Fri Jun 19 22:21:38 IST 2026
[2026-06-19 22:21:38,660.660 INFO    ] ================================================
[2026-06-19 22:21:39,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:21:39
[2026-06-19 22:21:39,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:21:40,202.202 INFO    ] Initializing speech engine...
[2026-06-19 22:21:40,212.212 INFO    ] 2026-06-19 22:21:40
[2026-06-19 22:21:40,470.470 INFO    ] 2026-06-19 22:21:40
[2026-06-19 22:21:40,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:21:40,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:21:40,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:21:40,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:21:40,902.902 INFO    ] time= 19/06/2026 22:21:40
[2026-06-19 22:21:40,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:21:41,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:21:41,083.083 INFO    ] No existing commands found in stream
[2026-06-19 22:21:46,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:21:46,100.100 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 22:21:46,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:21:46,731.731 INFO    ] Checking for system updates...
[2026-06-19 22:21:46,773.773 INFO    ] 200
[2026-06-19 22:21:46,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:46,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:21:46,830.830 INFO    ] No update needed
[2026-06-19 22:21:46,833.833 INFO    ] Checking for camera pi updates...
[2026-06-19 22:21:46,871.871 INFO    ] 200
[2026-06-19 22:21:46,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:46,919.919 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:21:47,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:21:47,036.036 INFO    ] No camera update needed
[2026-06-19 22:21:47,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:21:47,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:21:47,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:21:47,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:21:49,090.090 INFO    ] ================================================
[2026-06-19 22:21:49,106.106 INFO    ] Launching Daemon at Fri Jun 19 22:21:49 IST 2026
[2026-06-19 22:21:49,117.117 INFO    ] ================================================
[2026-06-19 22:21:49,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:21:49
[2026-06-19 22:21:50,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:21:50,581.581 INFO    ] Initializing speech engine...
[2026-06-19 22:21:50,598.598 INFO    ] 2026-06-19 22:21:50
[2026-06-19 22:21:50,881.881 INFO    ] 2026-06-19 22:21:50
[2026-06-19 22:21:50,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:21:51,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:21:51,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:21:51,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:21:51,256.256 INFO    ] time= 19/06/2026 22:21:51
[2026-06-19 22:21:51,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:21:51,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:21:51,384.384 INFO    ] No existing commands found in stream
[2026-06-19 22:21:56,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:21:56,397.397 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 22:21:58,314.314 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:21:58,317.317 INFO    ] Checking for system updates...
[2026-06-19 22:21:58,354.354 INFO    ] 200
[2026-06-19 22:21:58,357.357 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:58,410.410 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:21:58,413.413 INFO    ] No update needed
[2026-06-19 22:21:58,415.415 INFO    ] Checking for camera pi updates...
[2026-06-19 22:21:58,453.453 INFO    ] 200
[2026-06-19 22:21:58,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:21:58,496.496 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:21:58,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:21:58,547.547 INFO    ] No camera update needed
[2026-06-19 22:21:58,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:21:58,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:21:58,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:21:58,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:22:00,603.603 INFO    ] ================================================
[2026-06-19 22:22:00,618.618 INFO    ] Launching Daemon at Fri Jun 19 22:22:00 IST 2026
[2026-06-19 22:22:00,630.630 INFO    ] ================================================
[2026-06-19 22:22:01,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:22:01
[2026-06-19 22:22:01,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:22:02,340.340 INFO    ] Initializing speech engine...
[2026-06-19 22:22:02,365.365 INFO    ] 2026-06-19 22:22:02
[2026-06-19 22:22:02,742.742 INFO    ] 2026-06-19 22:22:02
[2026-06-19 22:22:02,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:22:02,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:22:02,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:22:03,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:22:03,230.230 INFO    ] time= 19/06/2026 22:22:03
[2026-06-19 22:22:03,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:22:03,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:22:03,434.434 INFO    ] No existing commands found in stream
[2026-06-19 22:22:08,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:22:08,465.465 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 22:22:10,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:22:10,508.508 INFO    ] Checking for system updates...
[2026-06-19 22:22:10,550.550 INFO    ] 200
[2026-06-19 22:22:10,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:22:10,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:22:10,617.617 INFO    ] No update needed
[2026-06-19 22:22:10,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 22:22:10,659.659 INFO    ] 200
[2026-06-19 22:22:10,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:22:10,703.703 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:22:10,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:22:10,764.764 INFO    ] No camera update needed
[2026-06-19 22:22:10,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:22:10,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:22:10,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:22:10,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:22:12,823.823 INFO    ] ================================================
[2026-06-19 22:22:12,838.838 INFO    ] Launching Daemon at Fri Jun 19 22:22:12 IST 2026
[2026-06-19 22:22:12,849.849 INFO    ] ================================================
[2026-06-19 22:22:13,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:22:13
[2026-06-19 22:22:14,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:22:14,312.312 INFO    ] Initializing speech engine...
[2026-06-19 22:22:14,319.319 INFO    ] 2026-06-19 22:22:14
[2026-06-19 22:22:14,592.592 INFO    ] 2026-06-19 22:22:14
[2026-06-19 22:22:14,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:22:14,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:22:14,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:22:15,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:22:15,125.125 INFO    ] time= 19/06/2026 22:22:15
[2026-06-19 22:22:15,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:22:15,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:22:15,255.255 INFO    ] No existing commands found in stream
[2026-06-19 22:22:20,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:22:20,288.288 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 22:22:24,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:22:24,412.412 INFO    ] Checking for system updates...
[2026-06-19 22:22:24,448.448 INFO    ] 200
[2026-06-19 22:22:24,451.451 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:22:24,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:22:24,515.515 INFO    ] No update needed
[2026-06-19 22:22:24,518.518 INFO    ] Checking for camera pi updates...
[2026-06-19 22:22:24,556.556 INFO    ] 200
[2026-06-19 22:22:24,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:22:24,606.606 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:22:24,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:22:24,665.665 INFO    ] No camera update needed
[2026-06-19 22:22:24,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:22:24,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:22:24,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:22:24,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:22:26,722.722 INFO    ] ================================================
[2026-06-19 22:22:26,738.738 INFO    ] Launching Daemon at Fri Jun 19 22:22:26 IST 2026
[2026-06-19 22:22:26,749.749 INFO    ] ================================================
[2026-06-19 22:22:27,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:22:27
[2026-06-19 22:22:27,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:22:28,214.214 INFO    ] Initializing speech engine...
[2026-06-19 22:22:28,225.225 INFO    ] 2026-06-19 22:22:28
[2026-06-19 22:22:28,483.483 INFO    ] 2026-06-19 22:22:28
[2026-06-19 22:22:28,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:22:28,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:22:28,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:22:28,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:22:28,959.959 INFO    ] time= 19/06/2026 22:22:28
[2026-06-19 22:22:29,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:22:29,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:22:29,107.107 INFO    ] No existing commands found in stream
[2026-06-19 22:22:34,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:22:34,147.147 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 22:22:37,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:22:37,851.851 INFO    ] Checking for system updates...
[2026-06-19 22:22:37,887.887 INFO    ] 200
[2026-06-19 22:22:37,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:22:37,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:22:37,953.953 INFO    ] No update needed
[2026-06-19 22:22:37,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 22:22:37,989.989 INFO    ] 200
[2026-06-19 22:22:37,992.992 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:22:38,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:22:38,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:22:38,085.085 INFO    ] No camera update needed
[2026-06-19 22:22:38,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:22:38,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:22:38,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:22:38,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:22:40,142.142 INFO    ] ================================================
[2026-06-19 22:22:40,157.157 INFO    ] Launching Daemon at Fri Jun 19 22:22:40 IST 2026
[2026-06-19 22:22:40,168.168 INFO    ] ================================================
[2026-06-19 22:22:40,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:22:40
[2026-06-19 22:22:41,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:22:41,707.707 INFO    ] Initializing speech engine...
[2026-06-19 22:22:41,716.716 INFO    ] 2026-06-19 22:22:41
[2026-06-19 22:22:41,967.967 INFO    ] 2026-06-19 22:22:41
[2026-06-19 22:22:42,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:22:42,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:22:42,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:22:42,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:22:42,428.428 INFO    ] time= 19/06/2026 22:22:42
[2026-06-19 22:22:42,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:22:42,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:22:42,598.598 INFO    ] No existing commands found in stream
[2026-06-19 22:22:47,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:22:47,613.613 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-19 22:22:50,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:22:50,876.876 INFO    ] Checking for system updates...
[2026-06-19 22:22:50,913.913 INFO    ] 200
[2026-06-19 22:22:50,916.916 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:22:50,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:22:50,985.985 INFO    ] No update needed
[2026-06-19 22:22:50,987.987 INFO    ] Checking for camera pi updates...
[2026-06-19 22:22:51,022.022 INFO    ] 200
[2026-06-19 22:22:51,024.024 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:22:51,075.075 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:22:51,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:22:51,121.121 INFO    ] No camera update needed
[2026-06-19 22:22:51,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:22:51,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:22:51,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:22:51,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:22:53,176.176 INFO    ] ================================================
[2026-06-19 22:22:53,191.191 INFO    ] Launching Daemon at Fri Jun 19 22:22:53 IST 2026
[2026-06-19 22:22:53,202.202 INFO    ] ================================================
[2026-06-19 22:22:53,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:22:53
[2026-06-19 22:22:54,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:22:54,639.639 INFO    ] Initializing speech engine...
[2026-06-19 22:22:54,645.645 INFO    ] 2026-06-19 22:22:54
[2026-06-19 22:22:54,911.911 INFO    ] 2026-06-19 22:22:54
[2026-06-19 22:22:54,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:22:55,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:22:55,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:22:55,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:22:55,319.319 INFO    ] time= 19/06/2026 22:22:55
[2026-06-19 22:22:55,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:22:55,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:22:55,495.495 INFO    ] No existing commands found in stream
[2026-06-19 22:23:00,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:23:00,533.533 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-19 22:23:04,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:23:04,677.677 INFO    ] Checking for system updates...
[2026-06-19 22:23:04,714.714 INFO    ] 200
[2026-06-19 22:23:04,716.716 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:04,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:23:04,772.772 INFO    ] No update needed
[2026-06-19 22:23:04,774.774 INFO    ] Checking for camera pi updates...
[2026-06-19 22:23:04,810.810 INFO    ] 200
[2026-06-19 22:23:04,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:04,867.867 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:23:04,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:23:04,924.924 INFO    ] No camera update needed
[2026-06-19 22:23:04,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:23:04,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:23:04,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:23:04,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:23:06,983.983 INFO    ] ================================================
[2026-06-19 22:23:07,998.998 INFO    ] Launching Daemon at Fri Jun 19 22:23:06 IST 2026
[2026-06-19 22:23:07,009.009 INFO    ] ================================================
[2026-06-19 22:23:07,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:23:07
[2026-06-19 22:23:08,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:23:08,587.587 INFO    ] Initializing speech engine...
[2026-06-19 22:23:08,596.596 INFO    ] 2026-06-19 22:23:08
[2026-06-19 22:23:08,847.847 INFO    ] 2026-06-19 22:23:08
[2026-06-19 22:23:08,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:23:09,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:23:09,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:23:09,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:23:09,326.326 INFO    ] time= 19/06/2026 22:23:09
[2026-06-19 22:23:09,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:23:09,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:23:09,482.482 INFO    ] No existing commands found in stream
[2026-06-19 22:23:14,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:23:14,497.497 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 22:23:16,701.701 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:23:16,703.703 INFO    ] Checking for system updates...
[2026-06-19 22:23:16,740.740 INFO    ] 200
[2026-06-19 22:23:16,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:16,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:23:16,797.797 INFO    ] No update needed
[2026-06-19 22:23:16,799.799 INFO    ] Checking for camera pi updates...
[2026-06-19 22:23:16,837.837 INFO    ] 200
[2026-06-19 22:23:16,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:16,885.885 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:23:16,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:23:16,936.936 INFO    ] No camera update needed
[2026-06-19 22:23:16,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:23:16,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:23:16,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:23:16,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:23:18,994.994 INFO    ] ================================================
[2026-06-19 22:23:19,009.009 INFO    ] Launching Daemon at Fri Jun 19 22:23:19 IST 2026
[2026-06-19 22:23:19,021.021 INFO    ] ================================================
[2026-06-19 22:23:19,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:23:19
[2026-06-19 22:23:20,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:23:20,480.480 INFO    ] Initializing speech engine...
[2026-06-19 22:23:20,505.505 INFO    ] 2026-06-19 22:23:20
[2026-06-19 22:23:20,761.761 INFO    ] 2026-06-19 22:23:20
[2026-06-19 22:23:20,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:23:20,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:23:20,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:23:21,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:23:21,118.118 INFO    ] time= 19/06/2026 22:23:21
[2026-06-19 22:23:21,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:23:21,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:23:21,215.215 INFO    ] No existing commands found in stream
[2026-06-19 22:23:26,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:23:26,230.230 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 22:23:30,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:23:30,247.247 INFO    ] Checking for system updates...
[2026-06-19 22:23:30,289.289 INFO    ] 200
[2026-06-19 22:23:30,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:30,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:23:30,357.357 INFO    ] No update needed
[2026-06-19 22:23:30,360.360 INFO    ] Checking for camera pi updates...
[2026-06-19 22:23:30,400.400 INFO    ] 200
[2026-06-19 22:23:30,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:30,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:23:30,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:23:30,507.507 INFO    ] No camera update needed
[2026-06-19 22:23:30,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:23:30,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:23:30,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:23:30,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:23:32,569.569 INFO    ] ================================================
[2026-06-19 22:23:32,586.586 INFO    ] Launching Daemon at Fri Jun 19 22:23:32 IST 2026
[2026-06-19 22:23:32,598.598 INFO    ] ================================================
[2026-06-19 22:23:33,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:23:33
[2026-06-19 22:23:33,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:23:34,083.083 INFO    ] Initializing speech engine...
[2026-06-19 22:23:34,098.098 INFO    ] 2026-06-19 22:23:34
[2026-06-19 22:23:34,366.366 INFO    ] 2026-06-19 22:23:34
[2026-06-19 22:23:34,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:23:34,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:23:34,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:23:34,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:23:34,744.744 INFO    ] time= 19/06/2026 22:23:34
[2026-06-19 22:23:34,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:23:34,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:23:34,916.916 INFO    ] No existing commands found in stream
[2026-06-19 22:23:39,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:23:39,949.949 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-19 22:23:44,206.206 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:23:44,209.209 INFO    ] Checking for system updates...
[2026-06-19 22:23:44,246.246 INFO    ] 200
[2026-06-19 22:23:44,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:44,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:23:44,305.305 INFO    ] No update needed
[2026-06-19 22:23:44,307.307 INFO    ] Checking for camera pi updates...
[2026-06-19 22:23:44,341.341 INFO    ] 200
[2026-06-19 22:23:44,343.343 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:44,383.383 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:23:44,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:23:44,439.439 INFO    ] No camera update needed
[2026-06-19 22:23:44,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:23:44,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:23:44,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:23:44,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:23:46,496.496 INFO    ] ================================================
[2026-06-19 22:23:46,511.511 INFO    ] Launching Daemon at Fri Jun 19 22:23:46 IST 2026
[2026-06-19 22:23:46,522.522 INFO    ] ================================================
[2026-06-19 22:23:47,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:23:47
[2026-06-19 22:23:47,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:23:47,935.935 INFO    ] Initializing speech engine...
[2026-06-19 22:23:47,944.944 INFO    ] 2026-06-19 22:23:47
[2026-06-19 22:23:48,227.227 INFO    ] 2026-06-19 22:23:48
[2026-06-19 22:23:48,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:23:48,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:23:48,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:23:48,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:23:48,704.704 INFO    ] time= 19/06/2026 22:23:48
[2026-06-19 22:23:48,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:23:48,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:23:48,855.855 INFO    ] No existing commands found in stream
[2026-06-19 22:23:53,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:23:53,869.869 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 22:23:56,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:23:56,666.666 INFO    ] Checking for system updates...
[2026-06-19 22:23:56,704.704 INFO    ] 200
[2026-06-19 22:23:56,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:56,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:23:56,770.770 INFO    ] No update needed
[2026-06-19 22:23:56,772.772 INFO    ] Checking for camera pi updates...
[2026-06-19 22:23:56,806.806 INFO    ] 200
[2026-06-19 22:23:56,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:23:56,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:23:56,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:23:56,903.903 INFO    ] No camera update needed
[2026-06-19 22:23:56,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:23:56,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:23:56,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:23:56,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:23:58,959.959 INFO    ] ================================================
[2026-06-19 22:23:58,974.974 INFO    ] Launching Daemon at Fri Jun 19 22:23:58 IST 2026
[2026-06-19 22:23:58,985.985 INFO    ] ================================================
[2026-06-19 22:23:59,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:23:59
[2026-06-19 22:24:00,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:24:00,420.420 INFO    ] Initializing speech engine...
[2026-06-19 22:24:00,429.429 INFO    ] 2026-06-19 22:24:00
[2026-06-19 22:24:00,675.675 INFO    ] 2026-06-19 22:24:00
[2026-06-19 22:24:00,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:24:00,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:24:00,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:24:01,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:24:01,044.044 INFO    ] time= 19/06/2026 22:24:01
[2026-06-19 22:24:01,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:24:01,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:24:01,219.219 INFO    ] No existing commands found in stream
[2026-06-19 22:24:06,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:24:06,252.252 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-19 22:24:09,232.232 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:24:09,234.234 INFO    ] Checking for system updates...
[2026-06-19 22:24:09,270.270 INFO    ] 200
[2026-06-19 22:24:09,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:09,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:24:09,328.328 INFO    ] No update needed
[2026-06-19 22:24:09,330.330 INFO    ] Checking for camera pi updates...
[2026-06-19 22:24:09,365.365 INFO    ] 200
[2026-06-19 22:24:09,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:09,408.408 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:24:09,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:24:09,459.459 INFO    ] No camera update needed
[2026-06-19 22:24:09,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:24:09,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:24:09,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:24:09,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:24:11,514.514 INFO    ] ================================================
[2026-06-19 22:24:11,536.536 INFO    ] Launching Daemon at Fri Jun 19 22:24:11 IST 2026
[2026-06-19 22:24:11,548.548 INFO    ] ================================================
[2026-06-19 22:24:12,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:24:12
[2026-06-19 22:24:12,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:24:12,965.965 INFO    ] Initializing speech engine...
[2026-06-19 22:24:12,973.973 INFO    ] 2026-06-19 22:24:12
[2026-06-19 22:24:13,277.277 INFO    ] 2026-06-19 22:24:13
[2026-06-19 22:24:13,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:24:13,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:24:13,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:24:13,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:24:13,664.664 INFO    ] time= 19/06/2026 22:24:13
[2026-06-19 22:24:13,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:24:13,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:24:13,792.792 INFO    ] No existing commands found in stream
[2026-06-19 22:24:18,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:24:18,806.806 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 22:24:21,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:24:21,777.777 INFO    ] Checking for system updates...
[2026-06-19 22:24:21,813.813 INFO    ] 200
[2026-06-19 22:24:21,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:21,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:24:21,871.871 INFO    ] No update needed
[2026-06-19 22:24:21,874.874 INFO    ] Checking for camera pi updates...
[2026-06-19 22:24:21,907.907 INFO    ] 200
[2026-06-19 22:24:21,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:21,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:24:22,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:24:22,007.007 INFO    ] No camera update needed
[2026-06-19 22:24:22,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:24:22,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:24:22,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:24:22,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:24:24,061.061 INFO    ] ================================================
[2026-06-19 22:24:24,076.076 INFO    ] Launching Daemon at Fri Jun 19 22:24:24 IST 2026
[2026-06-19 22:24:24,088.088 INFO    ] ================================================
[2026-06-19 22:24:24,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:24:24
[2026-06-19 22:24:25,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:24:25,508.508 INFO    ] Initializing speech engine...
[2026-06-19 22:24:25,531.531 INFO    ] 2026-06-19 22:24:25
[2026-06-19 22:24:25,786.786 INFO    ] 2026-06-19 22:24:25
[2026-06-19 22:24:25,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:24:26,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:24:26,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:24:26,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:24:26,158.158 INFO    ] time= 19/06/2026 22:24:26
[2026-06-19 22:24:26,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:24:26,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:24:26,286.286 INFO    ] No existing commands found in stream
[2026-06-19 22:24:31,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:24:31,299.299 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 22:24:31,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:24:31,979.979 INFO    ] Checking for system updates...
[2026-06-19 22:24:32,024.024 INFO    ] 200
[2026-06-19 22:24:32,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:32,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:24:32,088.088 INFO    ] No update needed
[2026-06-19 22:24:32,091.091 INFO    ] Checking for camera pi updates...
[2026-06-19 22:24:32,128.128 INFO    ] 200
[2026-06-19 22:24:32,131.131 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:32,175.175 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:24:32,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:24:32,215.215 INFO    ] No camera update needed
[2026-06-19 22:24:32,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:24:32,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:24:32,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:24:32,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:24:34,273.273 INFO    ] ================================================
[2026-06-19 22:24:34,289.289 INFO    ] Launching Daemon at Fri Jun 19 22:24:34 IST 2026
[2026-06-19 22:24:34,300.300 INFO    ] ================================================
[2026-06-19 22:24:34,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:24:34
[2026-06-19 22:24:35,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:24:35,745.745 INFO    ] Initializing speech engine...
[2026-06-19 22:24:35,761.761 INFO    ] 2026-06-19 22:24:35
[2026-06-19 22:24:36,050.050 INFO    ] 2026-06-19 22:24:36
[2026-06-19 22:24:36,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:24:36,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:24:36,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:24:36,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:24:36,420.420 INFO    ] time= 19/06/2026 22:24:36
[2026-06-19 22:24:36,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:24:36,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:24:36,505.505 INFO    ] No existing commands found in stream
[2026-06-19 22:24:41,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:24:41,517.517 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 22:24:44,563.563 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:24:44,566.566 INFO    ] Checking for system updates...
[2026-06-19 22:24:44,604.604 INFO    ] 200
[2026-06-19 22:24:44,607.607 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:44,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:24:44,665.665 INFO    ] No update needed
[2026-06-19 22:24:44,668.668 INFO    ] Checking for camera pi updates...
[2026-06-19 22:24:44,704.704 INFO    ] 200
[2026-06-19 22:24:44,707.707 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:44,750.750 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:24:44,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:24:44,898.898 INFO    ] No camera update needed
[2026-06-19 22:24:44,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:24:44,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:24:44,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:24:44,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:24:46,958.958 INFO    ] ================================================
[2026-06-19 22:24:46,973.973 INFO    ] Launching Daemon at Fri Jun 19 22:24:46 IST 2026
[2026-06-19 22:24:46,984.984 INFO    ] ================================================
[2026-06-19 22:24:47,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:24:47
[2026-06-19 22:24:48,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:24:48,645.645 INFO    ] Initializing speech engine...
[2026-06-19 22:24:48,657.657 INFO    ] 2026-06-19 22:24:48
[2026-06-19 22:24:48,971.971 INFO    ] 2026-06-19 22:24:48
[2026-06-19 22:24:49,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:24:49,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:24:49,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:24:49,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:24:49,477.477 INFO    ] time= 19/06/2026 22:24:49
[2026-06-19 22:24:49,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:24:49,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:24:49,632.632 INFO    ] No existing commands found in stream
[2026-06-19 22:24:54,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:24:54,652.652 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 22:24:58,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:24:58,187.187 INFO    ] Checking for system updates...
[2026-06-19 22:24:58,225.225 INFO    ] 200
[2026-06-19 22:24:58,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:58,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:24:58,291.291 INFO    ] No update needed
[2026-06-19 22:24:58,293.293 INFO    ] Checking for camera pi updates...
[2026-06-19 22:24:58,331.331 INFO    ] 200
[2026-06-19 22:24:58,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:24:58,375.375 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:24:58,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:24:58,432.432 INFO    ] No camera update needed
[2026-06-19 22:24:58,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:24:58,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:24:58,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:24:58,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:25:00,490.490 INFO    ] ================================================
[2026-06-19 22:25:00,504.504 INFO    ] Launching Daemon at Fri Jun 19 22:25:00 IST 2026
[2026-06-19 22:25:00,516.516 INFO    ] ================================================
[2026-06-19 22:25:01,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:25:01
[2026-06-19 22:25:01,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:25:02,427.427 INFO    ] Initializing speech engine...
[2026-06-19 22:25:02,452.452 INFO    ] 2026-06-19 22:25:02
[2026-06-19 22:25:02,828.828 INFO    ] 2026-06-19 22:25:02
[2026-06-19 22:25:02,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:25:03,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:25:03,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:25:03,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:25:03,323.323 INFO    ] time= 19/06/2026 22:25:03
[2026-06-19 22:25:03,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:25:03,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:25:03,455.455 INFO    ] No existing commands found in stream
[2026-06-19 22:25:08,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:25:08,494.494 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-19 22:25:09,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:25:09,360.360 INFO    ] Checking for system updates...
[2026-06-19 22:25:09,397.397 INFO    ] 200
[2026-06-19 22:25:09,400.400 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:09,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:25:09,464.464 INFO    ] No update needed
[2026-06-19 22:25:09,468.468 INFO    ] Checking for camera pi updates...
[2026-06-19 22:25:09,503.503 INFO    ] 200
[2026-06-19 22:25:09,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:09,549.549 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:25:09,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:25:09,604.604 INFO    ] No camera update needed
[2026-06-19 22:25:09,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:25:09,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:25:09,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:25:09,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:25:11,665.665 INFO    ] ================================================
[2026-06-19 22:25:11,683.683 INFO    ] Launching Daemon at Fri Jun 19 22:25:11 IST 2026
[2026-06-19 22:25:11,694.694 INFO    ] ================================================
[2026-06-19 22:25:12,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:25:12
[2026-06-19 22:25:12,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:25:13,126.126 INFO    ] Initializing speech engine...
[2026-06-19 22:25:13,132.132 INFO    ] 2026-06-19 22:25:13
[2026-06-19 22:25:13,400.400 INFO    ] 2026-06-19 22:25:13
[2026-06-19 22:25:13,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:25:13,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:25:13,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:25:13,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:25:13,896.896 INFO    ] time= 19/06/2026 22:25:13
[2026-06-19 22:25:13,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:25:13,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:25:14,114.114 INFO    ] No existing commands found in stream
[2026-06-19 22:25:19,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:25:19,141.141 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 22:25:22,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:25:22,167.167 INFO    ] Checking for system updates...
[2026-06-19 22:25:22,203.203 INFO    ] 200
[2026-06-19 22:25:22,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:22,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:25:22,262.262 INFO    ] No update needed
[2026-06-19 22:25:22,264.264 INFO    ] Checking for camera pi updates...
[2026-06-19 22:25:22,302.302 INFO    ] 200
[2026-06-19 22:25:22,305.305 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:22,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:25:22,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:25:22,410.410 INFO    ] No camera update needed
[2026-06-19 22:25:22,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:25:22,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:25:22,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:25:22,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:25:24,464.464 INFO    ] ================================================
[2026-06-19 22:25:24,479.479 INFO    ] Launching Daemon at Fri Jun 19 22:25:24 IST 2026
[2026-06-19 22:25:24,490.490 INFO    ] ================================================
[2026-06-19 22:25:25,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:25:25
[2026-06-19 22:25:25,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:25:25,916.916 INFO    ] Initializing speech engine...
[2026-06-19 22:25:25,928.928 INFO    ] 2026-06-19 22:25:25
[2026-06-19 22:25:26,192.192 INFO    ] 2026-06-19 22:25:26
[2026-06-19 22:25:26,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:25:26,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:25:26,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:25:26,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:25:26,659.659 INFO    ] time= 19/06/2026 22:25:26
[2026-06-19 22:25:26,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:25:26,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:25:26,803.803 INFO    ] No existing commands found in stream
[2026-06-19 22:25:31,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:25:31,818.818 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 22:25:32,489.489 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:25:32,492.492 INFO    ] Checking for system updates...
[2026-06-19 22:25:32,531.531 INFO    ] 200
[2026-06-19 22:25:32,534.534 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:32,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:25:32,599.599 INFO    ] No update needed
[2026-06-19 22:25:32,602.602 INFO    ] Checking for camera pi updates...
[2026-06-19 22:25:32,640.640 INFO    ] 200
[2026-06-19 22:25:32,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:32,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:25:32,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:25:32,733.733 INFO    ] No camera update needed
[2026-06-19 22:25:32,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:25:32,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:25:32,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:25:32,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:25:34,791.791 INFO    ] ================================================
[2026-06-19 22:25:34,807.807 INFO    ] Launching Daemon at Fri Jun 19 22:25:34 IST 2026
[2026-06-19 22:25:34,817.817 INFO    ] ================================================
[2026-06-19 22:25:35,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:25:35
[2026-06-19 22:25:35,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:25:36,240.240 INFO    ] Initializing speech engine...
[2026-06-19 22:25:36,249.249 INFO    ] 2026-06-19 22:25:36
[2026-06-19 22:25:36,502.502 INFO    ] 2026-06-19 22:25:36
[2026-06-19 22:25:36,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:25:36,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:25:36,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:25:36,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:25:36,987.987 INFO    ] time= 19/06/2026 22:25:36
[2026-06-19 22:25:37,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:25:37,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:25:37,114.114 INFO    ] No existing commands found in stream
[2026-06-19 22:25:42,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:25:42,129.129 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 22:25:43,638.638 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:25:43,640.640 INFO    ] Checking for system updates...
[2026-06-19 22:25:43,677.677 INFO    ] 200
[2026-06-19 22:25:43,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:43,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:25:43,734.734 INFO    ] No update needed
[2026-06-19 22:25:43,737.737 INFO    ] Checking for camera pi updates...
[2026-06-19 22:25:43,771.771 INFO    ] 200
[2026-06-19 22:25:43,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:43,815.815 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:25:43,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:25:43,877.877 INFO    ] No camera update needed
[2026-06-19 22:25:43,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:25:43,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:25:43,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:25:43,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:25:45,939.939 INFO    ] ================================================
[2026-06-19 22:25:45,954.954 INFO    ] Launching Daemon at Fri Jun 19 22:25:45 IST 2026
[2026-06-19 22:25:45,965.965 INFO    ] ================================================
[2026-06-19 22:25:46,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:25:46
[2026-06-19 22:25:47,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:25:47,379.379 INFO    ] Initializing speech engine...
[2026-06-19 22:25:47,393.393 INFO    ] 2026-06-19 22:25:47
[2026-06-19 22:25:47,658.658 INFO    ] 2026-06-19 22:25:47
[2026-06-19 22:25:47,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:25:47,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:25:47,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:25:48,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:25:48,143.143 INFO    ] time= 19/06/2026 22:25:48
[2026-06-19 22:25:48,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:25:48,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:25:48,298.298 INFO    ] No existing commands found in stream
[2026-06-19 22:25:53,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:25:53,310.310 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-19 22:25:54,650.650 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:25:54,652.652 INFO    ] Checking for system updates...
[2026-06-19 22:25:54,689.689 INFO    ] 200
[2026-06-19 22:25:54,691.691 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:54,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:25:54,755.755 INFO    ] No update needed
[2026-06-19 22:25:54,757.757 INFO    ] Checking for camera pi updates...
[2026-06-19 22:25:54,795.795 INFO    ] 200
[2026-06-19 22:25:54,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:25:54,843.843 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:25:54,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:25:54,890.890 INFO    ] No camera update needed
[2026-06-19 22:25:54,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:25:54,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:25:54,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:25:54,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:25:56,946.946 INFO    ] ================================================
[2026-06-19 22:25:56,962.962 INFO    ] Launching Daemon at Fri Jun 19 22:25:56 IST 2026
[2026-06-19 22:25:56,973.973 INFO    ] ================================================
[2026-06-19 22:25:57,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:25:57
[2026-06-19 22:25:58,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:25:58,378.378 INFO    ] Initializing speech engine...
[2026-06-19 22:25:58,391.391 INFO    ] 2026-06-19 22:25:58
[2026-06-19 22:25:58,659.659 INFO    ] 2026-06-19 22:25:58
[2026-06-19 22:25:58,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:25:58,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:25:58,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:25:59,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:25:59,037.037 INFO    ] time= 19/06/2026 22:25:59
[2026-06-19 22:25:59,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:25:59,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:25:59,211.211 INFO    ] No existing commands found in stream
[2026-06-19 22:26:04,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:26:04,239.239 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 22:26:04,651.651 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:26:04,653.653 INFO    ] Checking for system updates...
[2026-06-19 22:26:04,690.690 INFO    ] 200
[2026-06-19 22:26:04,692.692 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:04,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:04,749.749 INFO    ] No update needed
[2026-06-19 22:26:04,751.751 INFO    ] Checking for camera pi updates...
[2026-06-19 22:26:04,789.789 INFO    ] 200
[2026-06-19 22:26:04,791.791 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:04,836.836 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:26:04,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:04,886.886 INFO    ] No camera update needed
[2026-06-19 22:26:04,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:26:04,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:26:04,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:26:04,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:26:06,941.941 INFO    ] ================================================
[2026-06-19 22:26:06,957.957 INFO    ] Launching Daemon at Fri Jun 19 22:26:06 IST 2026
[2026-06-19 22:26:06,968.968 INFO    ] ================================================
[2026-06-19 22:26:07,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:26:07
[2026-06-19 22:26:08,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:26:08,379.379 INFO    ] Initializing speech engine...
[2026-06-19 22:26:08,387.387 INFO    ] 2026-06-19 22:26:08
[2026-06-19 22:26:08,680.680 INFO    ] 2026-06-19 22:26:08
[2026-06-19 22:26:08,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:26:08,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:26:08,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:26:09,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:26:09,094.094 INFO    ] time= 19/06/2026 22:26:09
[2026-06-19 22:26:09,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:26:09,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:26:09,182.182 INFO    ] No existing commands found in stream
[2026-06-19 22:26:14,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:26:14,203.203 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 22:26:15,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:26:15,285.285 INFO    ] Checking for system updates...
[2026-06-19 22:26:15,321.321 INFO    ] 200
[2026-06-19 22:26:15,323.323 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:15,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:15,378.378 INFO    ] No update needed
[2026-06-19 22:26:15,381.381 INFO    ] Checking for camera pi updates...
[2026-06-19 22:26:15,415.415 INFO    ] 200
[2026-06-19 22:26:15,418.418 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:15,459.459 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:26:15,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:15,519.519 INFO    ] No camera update needed
[2026-06-19 22:26:15,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:26:15,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:26:15,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:26:15,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:26:17,574.574 INFO    ] ================================================
[2026-06-19 22:26:17,589.589 INFO    ] Launching Daemon at Fri Jun 19 22:26:17 IST 2026
[2026-06-19 22:26:17,599.599 INFO    ] ================================================
[2026-06-19 22:26:18,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:26:18
[2026-06-19 22:26:18,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:26:19,048.048 INFO    ] Initializing speech engine...
[2026-06-19 22:26:19,064.064 INFO    ] 2026-06-19 22:26:19
[2026-06-19 22:26:19,346.346 INFO    ] 2026-06-19 22:26:19
[2026-06-19 22:26:19,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:26:19,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:26:19,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:26:19,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:26:19,723.723 INFO    ] time= 19/06/2026 22:26:19
[2026-06-19 22:26:19,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:26:19,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:26:19,847.847 INFO    ] No existing commands found in stream
[2026-06-19 22:26:24,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:26:24,862.862 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-19 22:26:29,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:26:29,074.074 INFO    ] Checking for system updates...
[2026-06-19 22:26:29,114.114 INFO    ] 200
[2026-06-19 22:26:29,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:29,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:29,177.177 INFO    ] No update needed
[2026-06-19 22:26:29,180.180 INFO    ] Checking for camera pi updates...
[2026-06-19 22:26:29,217.217 INFO    ] 200
[2026-06-19 22:26:29,220.220 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:29,265.265 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:26:29,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:29,321.321 INFO    ] No camera update needed
[2026-06-19 22:26:29,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:26:29,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:26:29,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:26:29,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:26:31,377.377 INFO    ] ================================================
[2026-06-19 22:26:31,392.392 INFO    ] Launching Daemon at Fri Jun 19 22:26:31 IST 2026
[2026-06-19 22:26:31,403.403 INFO    ] ================================================
[2026-06-19 22:26:31,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:26:31
[2026-06-19 22:26:32,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:26:32,872.872 INFO    ] Initializing speech engine...
[2026-06-19 22:26:32,892.892 INFO    ] 2026-06-19 22:26:32
[2026-06-19 22:26:33,181.181 INFO    ] 2026-06-19 22:26:33
[2026-06-19 22:26:33,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:26:33,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:26:33,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:26:33,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:26:33,689.689 INFO    ] time= 19/06/2026 22:26:33
[2026-06-19 22:26:33,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:26:33,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:26:33,885.885 INFO    ] No existing commands found in stream
[2026-06-19 22:26:38,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:26:38,924.924 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 22:26:42,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:26:42,868.868 INFO    ] Checking for system updates...
[2026-06-19 22:26:42,905.905 INFO    ] 200
[2026-06-19 22:26:42,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:42,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:42,965.965 INFO    ] No update needed
[2026-06-19 22:26:42,968.968 INFO    ] Checking for camera pi updates...
[2026-06-19 22:26:43,003.003 INFO    ] 200
[2026-06-19 22:26:43,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:43,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:26:43,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:43,113.113 INFO    ] No camera update needed
[2026-06-19 22:26:43,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:26:43,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:26:43,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:26:43,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:26:45,170.170 INFO    ] ================================================
[2026-06-19 22:26:45,185.185 INFO    ] Launching Daemon at Fri Jun 19 22:26:45 IST 2026
[2026-06-19 22:26:45,196.196 INFO    ] ================================================
[2026-06-19 22:26:45,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:26:45
[2026-06-19 22:26:46,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:26:46,801.801 INFO    ] Initializing speech engine...
[2026-06-19 22:26:46,809.809 INFO    ] 2026-06-19 22:26:46
[2026-06-19 22:26:47,091.091 INFO    ] 2026-06-19 22:26:47
[2026-06-19 22:26:47,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:26:47,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:26:47,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:26:47,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:26:47,626.626 INFO    ] time= 19/06/2026 22:26:47
[2026-06-19 22:26:47,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:26:47,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:26:47,781.781 INFO    ] No existing commands found in stream
[2026-06-19 22:26:52,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:26:52,801.801 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 22:26:56,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:26:56,626.626 INFO    ] Checking for system updates...
[2026-06-19 22:26:56,663.663 INFO    ] 200
[2026-06-19 22:26:56,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:56,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:56,722.722 INFO    ] No update needed
[2026-06-19 22:26:56,724.724 INFO    ] Checking for camera pi updates...
[2026-06-19 22:26:56,763.763 INFO    ] 200
[2026-06-19 22:26:56,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:26:56,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:26:56,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:26:56,953.953 INFO    ] No camera update needed
[2026-06-19 22:26:56,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:26:56,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:26:56,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:26:56,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:26:59,008.008 INFO    ] ================================================
[2026-06-19 22:26:59,023.023 INFO    ] Launching Daemon at Fri Jun 19 22:26:59 IST 2026
[2026-06-19 22:26:59,034.034 INFO    ] ================================================
[2026-06-19 22:26:59,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:26:59
[2026-06-19 22:27:00,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:27:00,497.497 INFO    ] Initializing speech engine...
[2026-06-19 22:27:00,506.506 INFO    ] 2026-06-19 22:27:00
[2026-06-19 22:27:00,766.766 INFO    ] 2026-06-19 22:27:00
[2026-06-19 22:27:00,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:27:01,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:27:01,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:27:01,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:27:01,270.270 INFO    ] time= 19/06/2026 22:27:01
[2026-06-19 22:27:01,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:27:01,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:27:01,445.445 INFO    ] No existing commands found in stream
[2026-06-19 22:27:06,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:27:06,480.480 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 22:27:08,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:27:08,416.416 INFO    ] Checking for system updates...
[2026-06-19 22:27:08,456.456 INFO    ] 200
[2026-06-19 22:27:08,458.458 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:08,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:08,520.520 INFO    ] No update needed
[2026-06-19 22:27:08,522.522 INFO    ] Checking for camera pi updates...
[2026-06-19 22:27:08,559.559 INFO    ] 200
[2026-06-19 22:27:08,562.562 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:08,607.607 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:27:08,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:08,654.654 INFO    ] No camera update needed
[2026-06-19 22:27:08,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:27:08,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:27:08,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:27:08,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:27:10,711.711 INFO    ] ================================================
[2026-06-19 22:27:10,726.726 INFO    ] Launching Daemon at Fri Jun 19 22:27:10 IST 2026
[2026-06-19 22:27:10,736.736 INFO    ] ================================================
[2026-06-19 22:27:11,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:27:11
[2026-06-19 22:27:11,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:27:12,195.195 INFO    ] Initializing speech engine...
[2026-06-19 22:27:12,204.204 INFO    ] 2026-06-19 22:27:12
[2026-06-19 22:27:12,462.462 INFO    ] 2026-06-19 22:27:12
[2026-06-19 22:27:12,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:27:12,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:27:12,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:27:12,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:27:12,925.925 INFO    ] time= 19/06/2026 22:27:12
[2026-06-19 22:27:12,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:27:13,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:27:13,133.133 INFO    ] No existing commands found in stream
[2026-06-19 22:27:18,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:27:18,166.166 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 22:27:18,827.827 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:27:18,830.830 INFO    ] Checking for system updates...
[2026-06-19 22:27:18,866.866 INFO    ] 200
[2026-06-19 22:27:18,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:18,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:18,930.930 INFO    ] No update needed
[2026-06-19 22:27:18,932.932 INFO    ] Checking for camera pi updates...
[2026-06-19 22:27:18,967.967 INFO    ] 200
[2026-06-19 22:27:18,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:19,014.014 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:27:19,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:19,070.070 INFO    ] No camera update needed
[2026-06-19 22:27:19,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:27:19,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:27:19,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:27:19,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:27:21,126.126 INFO    ] ================================================
[2026-06-19 22:27:21,141.141 INFO    ] Launching Daemon at Fri Jun 19 22:27:21 IST 2026
[2026-06-19 22:27:21,151.151 INFO    ] ================================================
[2026-06-19 22:27:21,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:27:21
[2026-06-19 22:27:22,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:27:22,560.560 INFO    ] Initializing speech engine...
[2026-06-19 22:27:22,584.584 INFO    ] 2026-06-19 22:27:22
[2026-06-19 22:27:22,858.858 INFO    ] 2026-06-19 22:27:22
[2026-06-19 22:27:22,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:27:23,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:27:23,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:27:23,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:27:23,272.272 INFO    ] time= 19/06/2026 22:27:23
[2026-06-19 22:27:23,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:27:23,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:27:23,359.359 INFO    ] No existing commands found in stream
[2026-06-19 22:27:28,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:27:28,377.377 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 22:27:32,572.572 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:27:32,575.575 INFO    ] Checking for system updates...
[2026-06-19 22:27:32,614.614 INFO    ] 200
[2026-06-19 22:27:32,616.616 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:32,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:32,680.680 INFO    ] No update needed
[2026-06-19 22:27:32,682.682 INFO    ] Checking for camera pi updates...
[2026-06-19 22:27:32,718.718 INFO    ] 200
[2026-06-19 22:27:32,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:32,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:27:32,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:32,806.806 INFO    ] No camera update needed
[2026-06-19 22:27:32,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:27:32,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:27:32,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:27:32,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:27:34,864.864 INFO    ] ================================================
[2026-06-19 22:27:34,879.879 INFO    ] Launching Daemon at Fri Jun 19 22:27:34 IST 2026
[2026-06-19 22:27:34,890.890 INFO    ] ================================================
[2026-06-19 22:27:35,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:27:35
[2026-06-19 22:27:36,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:27:36,351.351 INFO    ] Initializing speech engine...
[2026-06-19 22:27:36,361.361 INFO    ] 2026-06-19 22:27:36
[2026-06-19 22:27:36,637.637 INFO    ] 2026-06-19 22:27:36
[2026-06-19 22:27:36,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:27:36,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:27:36,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:27:37,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:27:37,050.050 INFO    ] time= 19/06/2026 22:27:37
[2026-06-19 22:27:37,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:27:37,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:27:37,133.133 INFO    ] No existing commands found in stream
[2026-06-19 22:27:42,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:27:42,149.149 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 22:27:43,701.701 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:27:43,704.704 INFO    ] Checking for system updates...
[2026-06-19 22:27:43,743.743 INFO    ] 200
[2026-06-19 22:27:43,746.746 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:43,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:43,808.808 INFO    ] No update needed
[2026-06-19 22:27:43,810.810 INFO    ] Checking for camera pi updates...
[2026-06-19 22:27:43,848.848 INFO    ] 200
[2026-06-19 22:27:43,851.851 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:43,891.891 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:27:43,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:43,942.942 INFO    ] No camera update needed
[2026-06-19 22:27:43,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:27:43,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:27:43,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:27:43,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:27:46,997.997 INFO    ] ================================================
[2026-06-19 22:27:46,012.012 INFO    ] Launching Daemon at Fri Jun 19 22:27:46 IST 2026
[2026-06-19 22:27:46,022.022 INFO    ] ================================================
[2026-06-19 22:27:46,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:27:46
[2026-06-19 22:27:47,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:27:47,421.421 INFO    ] Initializing speech engine...
[2026-06-19 22:27:47,434.434 INFO    ] 2026-06-19 22:27:47
[2026-06-19 22:27:47,699.699 INFO    ] 2026-06-19 22:27:47
[2026-06-19 22:27:47,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:27:47,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:27:47,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:27:48,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:27:48,073.073 INFO    ] time= 19/06/2026 22:27:48
[2026-06-19 22:27:48,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:27:48,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:27:48,149.149 INFO    ] No existing commands found in stream
[2026-06-19 22:27:53,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:27:53,164.164 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-19 22:27:59,258.258 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:27:59,261.261 INFO    ] Checking for system updates...
[2026-06-19 22:27:59,297.297 INFO    ] 200
[2026-06-19 22:27:59,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:59,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:59,361.361 INFO    ] No update needed
[2026-06-19 22:27:59,363.363 INFO    ] Checking for camera pi updates...
[2026-06-19 22:27:59,401.401 INFO    ] 200
[2026-06-19 22:27:59,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:27:59,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:27:59,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:27:59,505.505 INFO    ] No camera update needed
[2026-06-19 22:27:59,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:27:59,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:27:59,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:27:59,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:28:01,560.560 INFO    ] ================================================
[2026-06-19 22:28:01,576.576 INFO    ] Launching Daemon at Fri Jun 19 22:28:01 IST 2026
[2026-06-19 22:28:01,587.587 INFO    ] ================================================
[2026-06-19 22:28:02,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:28:02
[2026-06-19 22:28:03,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:28:03,445.445 INFO    ] Initializing speech engine...
[2026-06-19 22:28:03,455.455 INFO    ] 2026-06-19 22:28:03
[2026-06-19 22:28:03,774.774 INFO    ] 2026-06-19 22:28:03
[2026-06-19 22:28:03,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:28:03,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:28:03,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:28:04,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:28:04,146.146 INFO    ] time= 19/06/2026 22:28:04
[2026-06-19 22:28:04,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:28:04,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:28:04,313.313 INFO    ] No existing commands found in stream
[2026-06-19 22:28:09,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:28:09,347.347 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-19 22:28:12,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:28:12,151.151 INFO    ] Checking for system updates...
[2026-06-19 22:28:12,188.188 INFO    ] 200
[2026-06-19 22:28:12,191.191 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:28:12,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:28:12,247.247 INFO    ] No update needed
[2026-06-19 22:28:12,250.250 INFO    ] Checking for camera pi updates...
[2026-06-19 22:28:12,287.287 INFO    ] 200
[2026-06-19 22:28:12,289.289 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:28:12,334.334 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:28:12,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:28:12,385.385 INFO    ] No camera update needed
[2026-06-19 22:28:12,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:28:12,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:28:12,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:28:12,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:28:14,442.442 INFO    ] ================================================
[2026-06-19 22:28:14,458.458 INFO    ] Launching Daemon at Fri Jun 19 22:28:14 IST 2026
[2026-06-19 22:28:14,468.468 INFO    ] ================================================
[2026-06-19 22:28:15,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:28:15
[2026-06-19 22:28:15,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:28:16,077.077 INFO    ] Initializing speech engine...
[2026-06-19 22:28:16,088.088 INFO    ] 2026-06-19 22:28:16
[2026-06-19 22:28:16,365.365 INFO    ] 2026-06-19 22:28:16
[2026-06-19 22:28:16,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:28:16,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:28:16,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:28:16,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:28:16,832.832 INFO    ] time= 19/06/2026 22:28:16
[2026-06-19 22:28:16,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:28:16,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:28:17,026.026 INFO    ] No existing commands found in stream
[2026-06-19 22:28:22,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:28:22,062.062 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 22:28:25,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:28:25,518.518 INFO    ] Checking for system updates...
[2026-06-19 22:28:25,558.558 INFO    ] 200
[2026-06-19 22:28:25,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:28:25,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:28:25,622.622 INFO    ] No update needed
[2026-06-19 22:28:25,624.624 INFO    ] Checking for camera pi updates...
[2026-06-19 22:28:25,658.658 INFO    ] 200
[2026-06-19 22:28:25,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:28:25,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:28:25,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:28:25,739.739 INFO    ] No camera update needed
[2026-06-19 22:28:25,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:28:25,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:28:25,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:28:25,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:28:27,795.795 INFO    ] ================================================
[2026-06-19 22:28:27,811.811 INFO    ] Launching Daemon at Fri Jun 19 22:28:27 IST 2026
[2026-06-19 22:28:27,821.821 INFO    ] ================================================
[2026-06-19 22:28:28,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:28:28
[2026-06-19 22:28:29,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:28:29,450.450 INFO    ] Initializing speech engine...
[2026-06-19 22:28:29,464.464 INFO    ] 2026-06-19 22:28:29
[2026-06-19 22:28:29,773.773 INFO    ] 2026-06-19 22:28:29
[2026-06-19 22:28:29,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:28:30,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:28:30,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:28:30,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:28:30,289.289 INFO    ] time= 19/06/2026 22:28:30
[2026-06-19 22:28:30,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:28:30,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:28:30,444.444 INFO    ] No existing commands found in stream
[2026-06-19 22:28:35,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:28:35,463.463 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 22:28:39,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:28:39,196.196 INFO    ] Checking for system updates...
[2026-06-19 22:28:39,238.238 INFO    ] 200
[2026-06-19 22:28:39,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:28:39,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:28:39,305.305 INFO    ] No update needed
[2026-06-19 22:28:39,308.308 INFO    ] Checking for camera pi updates...
[2026-06-19 22:28:39,348.348 INFO    ] 200
[2026-06-19 22:28:39,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:28:39,397.397 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:28:39,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:28:39,445.445 INFO    ] No camera update needed
[2026-06-19 22:28:39,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:28:39,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:28:39,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:28:39,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:28:41,505.505 INFO    ] ================================================
[2026-06-19 22:28:41,520.520 INFO    ] Launching Daemon at Fri Jun 19 22:28:41 IST 2026
[2026-06-19 22:28:41,531.531 INFO    ] ================================================
[2026-06-19 22:28:42,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:28:42
[2026-06-19 22:28:42,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:28:43,142.142 INFO    ] Initializing speech engine...
[2026-06-19 22:28:43,154.154 INFO    ] 2026-06-19 22:28:43
[2026-06-19 22:28:43,438.438 INFO    ] 2026-06-19 22:28:43
[2026-06-19 22:28:43,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:28:43,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:28:43,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:28:43,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:28:43,938.938 INFO    ] time= 19/06/2026 22:28:43
[2026-06-19 22:28:43,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:28:43,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:28:44,104.104 INFO    ] No existing commands found in stream
[2026-06-19 22:28:49,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:28:49,138.138 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 22:28:52,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:28:52,922.922 INFO    ] Checking for system updates...
[2026-06-19 22:28:52,961.961 INFO    ] 200
[2026-06-19 22:28:52,963.963 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:28:53,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:28:53,028.028 INFO    ] No update needed
[2026-06-19 22:28:53,031.031 INFO    ] Checking for camera pi updates...
[2026-06-19 22:28:53,066.066 INFO    ] 200
[2026-06-19 22:28:53,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:28:53,115.115 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:28:53,160.160 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:28:53,162.162 INFO    ] No camera update needed
[2026-06-19 22:28:53,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:28:53,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:28:53,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:28:53,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:28:55,227.227 INFO    ] ================================================
[2026-06-19 22:28:55,242.242 INFO    ] Launching Daemon at Fri Jun 19 22:28:55 IST 2026
[2026-06-19 22:28:55,252.252 INFO    ] ================================================
[2026-06-19 22:28:55,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:28:55
[2026-06-19 22:28:56,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:28:56,892.892 INFO    ] Initializing speech engine...
[2026-06-19 22:28:56,898.898 INFO    ] 2026-06-19 22:28:56
[2026-06-19 22:28:57,184.184 INFO    ] 2026-06-19 22:28:57
[2026-06-19 22:28:57,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:28:57,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:28:57,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:28:57,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:28:57,662.662 INFO    ] time= 19/06/2026 22:28:57
[2026-06-19 22:28:57,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:28:57,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:28:57,853.853 INFO    ] No existing commands found in stream
[2026-06-19 22:29:02,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:29:02,887.887 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 22:29:06,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:29:06,669.669 INFO    ] Checking for system updates...
[2026-06-19 22:29:06,714.714 INFO    ] 200
[2026-06-19 22:29:06,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:06,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:29:06,771.771 INFO    ] No update needed
[2026-06-19 22:29:06,774.774 INFO    ] Checking for camera pi updates...
[2026-06-19 22:29:06,808.808 INFO    ] 200
[2026-06-19 22:29:06,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:06,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:29:06,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:29:06,898.898 INFO    ] No camera update needed
[2026-06-19 22:29:06,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:29:06,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:29:06,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:29:06,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:29:08,955.955 INFO    ] ================================================
[2026-06-19 22:29:08,970.970 INFO    ] Launching Daemon at Fri Jun 19 22:29:08 IST 2026
[2026-06-19 22:29:08,981.981 INFO    ] ================================================
[2026-06-19 22:29:09,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:29:09
[2026-06-19 22:29:10,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:29:10,644.644 INFO    ] Initializing speech engine...
[2026-06-19 22:29:10,658.658 INFO    ] 2026-06-19 22:29:10
[2026-06-19 22:29:10,943.943 INFO    ] 2026-06-19 22:29:10
[2026-06-19 22:29:10,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:29:11,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:29:11,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:29:11,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:29:11,413.413 INFO    ] time= 19/06/2026 22:29:11
[2026-06-19 22:29:11,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:29:11,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:29:11,627.627 INFO    ] No existing commands found in stream
[2026-06-19 22:29:16,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:29:16,658.658 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-19 22:29:20,400.400 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:29:20,403.403 INFO    ] Checking for system updates...
[2026-06-19 22:29:20,441.441 INFO    ] 200
[2026-06-19 22:29:20,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:20,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:29:20,501.501 INFO    ] No update needed
[2026-06-19 22:29:20,503.503 INFO    ] Checking for camera pi updates...
[2026-06-19 22:29:20,539.539 INFO    ] 200
[2026-06-19 22:29:20,542.542 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:20,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:29:20,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:29:20,633.633 INFO    ] No camera update needed
[2026-06-19 22:29:20,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:29:20,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:29:20,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:29:20,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:29:22,687.687 INFO    ] ================================================
[2026-06-19 22:29:22,702.702 INFO    ] Launching Daemon at Fri Jun 19 22:29:22 IST 2026
[2026-06-19 22:29:22,712.712 INFO    ] ================================================
[2026-06-19 22:29:23,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:29:23
[2026-06-19 22:29:23,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:29:24,141.141 INFO    ] Initializing speech engine...
[2026-06-19 22:29:24,150.150 INFO    ] 2026-06-19 22:29:24
[2026-06-19 22:29:24,447.447 INFO    ] 2026-06-19 22:29:24
[2026-06-19 22:29:24,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:29:24,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:29:24,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:29:24,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:29:24,846.846 INFO    ] time= 19/06/2026 22:29:24
[2026-06-19 22:29:24,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:29:24,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:29:24,922.922 INFO    ] No existing commands found in stream
[2026-06-19 22:29:29,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:29:29,938.938 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 22:29:31,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:29:31,759.759 INFO    ] Checking for system updates...
[2026-06-19 22:29:31,795.795 INFO    ] 200
[2026-06-19 22:29:31,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:31,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:29:31,859.859 INFO    ] No update needed
[2026-06-19 22:29:31,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 22:29:31,904.904 INFO    ] 200
[2026-06-19 22:29:31,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:31,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:29:31,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:29:32,001.001 INFO    ] No camera update needed
[2026-06-19 22:29:32,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:29:32,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:29:32,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:29:32,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:29:34,059.059 INFO    ] ================================================
[2026-06-19 22:29:34,074.074 INFO    ] Launching Daemon at Fri Jun 19 22:29:34 IST 2026
[2026-06-19 22:29:34,085.085 INFO    ] ================================================
[2026-06-19 22:29:34,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:29:34
[2026-06-19 22:29:35,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:29:35,537.537 INFO    ] Initializing speech engine...
[2026-06-19 22:29:35,547.547 INFO    ] 2026-06-19 22:29:35
[2026-06-19 22:29:35,796.796 INFO    ] 2026-06-19 22:29:35
[2026-06-19 22:29:35,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:29:36,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:29:36,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:29:36,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:29:36,290.290 INFO    ] time= 19/06/2026 22:29:36
[2026-06-19 22:29:36,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:29:36,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:29:36,418.418 INFO    ] No existing commands found in stream
[2026-06-19 22:29:41,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:29:41,433.433 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 22:29:45,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:29:45,578.578 INFO    ] Checking for system updates...
[2026-06-19 22:29:45,616.616 INFO    ] 200
[2026-06-19 22:29:45,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:45,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:29:45,677.677 INFO    ] No update needed
[2026-06-19 22:29:45,680.680 INFO    ] Checking for camera pi updates...
[2026-06-19 22:29:45,716.716 INFO    ] 200
[2026-06-19 22:29:45,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:45,761.761 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:29:45,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:29:45,809.809 INFO    ] No camera update needed
[2026-06-19 22:29:45,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:29:45,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:29:45,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:29:45,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:29:47,870.870 INFO    ] ================================================
[2026-06-19 22:29:47,885.885 INFO    ] Launching Daemon at Fri Jun 19 22:29:47 IST 2026
[2026-06-19 22:29:47,896.896 INFO    ] ================================================
[2026-06-19 22:29:48,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:29:48
[2026-06-19 22:29:49,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:29:49,570.570 INFO    ] Initializing speech engine...
[2026-06-19 22:29:49,585.585 INFO    ] 2026-06-19 22:29:49
[2026-06-19 22:29:49,899.899 INFO    ] 2026-06-19 22:29:49
[2026-06-19 22:29:49,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:29:50,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:29:50,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:29:50,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:29:50,411.411 INFO    ] time= 19/06/2026 22:29:50
[2026-06-19 22:29:50,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:29:50,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:29:50,570.570 INFO    ] No existing commands found in stream
[2026-06-19 22:29:55,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:29:55,605.605 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 22:29:58,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:29:58,040.040 INFO    ] Checking for system updates...
[2026-06-19 22:29:58,078.078 INFO    ] 200
[2026-06-19 22:29:58,080.080 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:58,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:29:58,138.138 INFO    ] No update needed
[2026-06-19 22:29:58,141.141 INFO    ] Checking for camera pi updates...
[2026-06-19 22:29:58,176.176 INFO    ] 200
[2026-06-19 22:29:58,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:29:58,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:29:58,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:29:58,282.282 INFO    ] No camera update needed
[2026-06-19 22:29:58,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:29:58,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:29:58,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:29:58,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:30:00,343.343 INFO    ] ================================================
[2026-06-19 22:30:00,359.359 INFO    ] Launching Daemon at Fri Jun 19 22:30:00 IST 2026
[2026-06-19 22:30:00,374.374 INFO    ] ================================================
[2026-06-19 22:30:00,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:30:00
[2026-06-19 22:30:01,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:30:02,392.392 INFO    ] Initializing speech engine...
[2026-06-19 22:30:02,490.490 INFO    ] 2026-06-19 22:30:02
[2026-06-19 22:30:03,071.071 INFO    ] 2026-06-19 22:30:03
[2026-06-19 22:30:03,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:30:03,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:30:03,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:30:03,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:30:03,401.401 INFO    ] time= 19/06/2026 22:30:03
[2026-06-19 22:30:03,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:30:03,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:30:03,502.502 INFO    ] No existing commands found in stream
[2026-06-19 22:30:08,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:30:08,515.515 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 22:30:09,548.548 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:30:09,551.551 INFO    ] Checking for system updates...
[2026-06-19 22:30:09,593.593 INFO    ] 200
[2026-06-19 22:30:09,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:09,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:30:09,657.657 INFO    ] No update needed
[2026-06-19 22:30:09,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 22:30:09,693.693 INFO    ] 200
[2026-06-19 22:30:09,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:09,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:30:09,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:30:09,791.791 INFO    ] No camera update needed
[2026-06-19 22:30:09,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:30:09,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:30:09,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:30:09,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:30:11,851.851 INFO    ] ================================================
[2026-06-19 22:30:11,868.868 INFO    ] Launching Daemon at Fri Jun 19 22:30:11 IST 2026
[2026-06-19 22:30:11,879.879 INFO    ] ================================================
[2026-06-19 22:30:12,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:30:12
[2026-06-19 22:30:13,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:30:13,312.312 INFO    ] Initializing speech engine...
[2026-06-19 22:30:13,320.320 INFO    ] 2026-06-19 22:30:13
[2026-06-19 22:30:13,578.578 INFO    ] 2026-06-19 22:30:13
[2026-06-19 22:30:13,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:30:13,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:30:13,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:30:13,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:30:14,039.039 INFO    ] time= 19/06/2026 22:30:14
[2026-06-19 22:30:14,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:30:14,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:30:14,189.189 INFO    ] No existing commands found in stream
[2026-06-19 22:30:19,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:30:19,204.204 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 22:30:21,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:30:21,839.839 INFO    ] Checking for system updates...
[2026-06-19 22:30:21,875.875 INFO    ] 200
[2026-06-19 22:30:21,878.878 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:21,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:30:21,952.952 INFO    ] No update needed
[2026-06-19 22:30:21,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 22:30:21,988.988 INFO    ] 200
[2026-06-19 22:30:21,990.990 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:22,032.032 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:30:22,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:30:22,089.089 INFO    ] No camera update needed
[2026-06-19 22:30:22,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:30:22,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:30:22,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:30:22,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:30:24,149.149 INFO    ] ================================================
[2026-06-19 22:30:24,165.165 INFO    ] Launching Daemon at Fri Jun 19 22:30:24 IST 2026
[2026-06-19 22:30:24,176.176 INFO    ] ================================================
[2026-06-19 22:30:24,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:30:24
[2026-06-19 22:30:25,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:30:25,627.627 INFO    ] Initializing speech engine...
[2026-06-19 22:30:25,641.641 INFO    ] 2026-06-19 22:30:25
[2026-06-19 22:30:25,936.936 INFO    ] 2026-06-19 22:30:25
[2026-06-19 22:30:25,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:30:26,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:30:26,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:30:26,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:30:26,481.481 INFO    ] time= 19/06/2026 22:30:26
[2026-06-19 22:30:26,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:30:26,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:30:26,637.637 INFO    ] No existing commands found in stream
[2026-06-19 22:30:31,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:30:31,675.675 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 22:30:32,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:30:32,563.563 INFO    ] Checking for system updates...
[2026-06-19 22:30:32,603.603 INFO    ] 200
[2026-06-19 22:30:32,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:32,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:30:32,672.672 INFO    ] No update needed
[2026-06-19 22:30:32,675.675 INFO    ] Checking for camera pi updates...
[2026-06-19 22:30:32,719.719 INFO    ] 200
[2026-06-19 22:30:32,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:32,767.767 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:30:32,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:30:32,803.803 INFO    ] No camera update needed
[2026-06-19 22:30:32,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:30:32,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:30:32,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:30:32,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:30:34,872.872 INFO    ] ================================================
[2026-06-19 22:30:34,888.888 INFO    ] Launching Daemon at Fri Jun 19 22:30:34 IST 2026
[2026-06-19 22:30:34,899.899 INFO    ] ================================================
[2026-06-19 22:30:35,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:30:35
[2026-06-19 22:30:36,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:30:36,314.314 INFO    ] Initializing speech engine...
[2026-06-19 22:30:36,321.321 INFO    ] 2026-06-19 22:30:36
[2026-06-19 22:30:36,610.610 INFO    ] 2026-06-19 22:30:36
[2026-06-19 22:30:36,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:30:36,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:30:36,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:30:36,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:30:37,002.002 INFO    ] time= 19/06/2026 22:30:36
[2026-06-19 22:30:37,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:30:37,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:30:37,104.104 INFO    ] No existing commands found in stream
[2026-06-19 22:30:42,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:30:42,120.120 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-19 22:30:44,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:30:44,311.311 INFO    ] Checking for system updates...
[2026-06-19 22:30:44,348.348 INFO    ] 200
[2026-06-19 22:30:44,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:44,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:30:44,408.408 INFO    ] No update needed
[2026-06-19 22:30:44,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 22:30:44,446.446 INFO    ] 200
[2026-06-19 22:30:44,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:44,492.492 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:30:44,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:30:44,541.541 INFO    ] No camera update needed
[2026-06-19 22:30:44,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:30:44,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:30:44,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:30:44,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:30:46,600.600 INFO    ] ================================================
[2026-06-19 22:30:46,615.615 INFO    ] Launching Daemon at Fri Jun 19 22:30:46 IST 2026
[2026-06-19 22:30:46,626.626 INFO    ] ================================================
[2026-06-19 22:30:47,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:30:47
[2026-06-19 22:30:47,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:30:48,179.179 INFO    ] Initializing speech engine...
[2026-06-19 22:30:48,187.187 INFO    ] 2026-06-19 22:30:48
[2026-06-19 22:30:48,458.458 INFO    ] 2026-06-19 22:30:48
[2026-06-19 22:30:48,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:30:48,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:30:48,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:30:48,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:30:48,934.934 INFO    ] time= 19/06/2026 22:30:48
[2026-06-19 22:30:48,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:30:49,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:30:49,074.074 INFO    ] No existing commands found in stream
[2026-06-19 22:30:54,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:30:54,090.090 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 22:30:58,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:30:58,337.337 INFO    ] Checking for system updates...
[2026-06-19 22:30:58,374.374 INFO    ] 200
[2026-06-19 22:30:58,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:58,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:30:58,433.433 INFO    ] No update needed
[2026-06-19 22:30:58,436.436 INFO    ] Checking for camera pi updates...
[2026-06-19 22:30:58,471.471 INFO    ] 200
[2026-06-19 22:30:58,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:30:58,515.515 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:30:58,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:30:58,566.566 INFO    ] No camera update needed
[2026-06-19 22:30:58,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:30:58,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:30:58,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:30:58,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:31:00,625.625 INFO    ] ================================================
[2026-06-19 22:31:00,640.640 INFO    ] Launching Daemon at Fri Jun 19 22:31:00 IST 2026
[2026-06-19 22:31:00,651.651 INFO    ] ================================================
[2026-06-19 22:31:01,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:31:01
[2026-06-19 22:31:01,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:31:02,283.283 INFO    ] Initializing speech engine...
[2026-06-19 22:31:02,297.297 INFO    ] 2026-06-19 22:31:02
[2026-06-19 22:31:02,575.575 INFO    ] 2026-06-19 22:31:02
[2026-06-19 22:31:02,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:31:02,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:31:02,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:31:02,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:31:02,991.991 INFO    ] time= 19/06/2026 22:31:02
[2026-06-19 22:31:02,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:31:03,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:31:03,173.173 INFO    ] No existing commands found in stream
[2026-06-19 22:31:08,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:31:08,210.210 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-19 22:31:11,529.529 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:31:11,532.532 INFO    ] Checking for system updates...
[2026-06-19 22:31:11,568.568 INFO    ] 200
[2026-06-19 22:31:11,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:31:11,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:31:11,626.626 INFO    ] No update needed
[2026-06-19 22:31:11,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 22:31:11,662.662 INFO    ] 200
[2026-06-19 22:31:11,665.665 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:31:11,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:31:11,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:31:11,859.859 INFO    ] No camera update needed
[2026-06-19 22:31:11,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:31:11,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:31:11,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:31:11,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:31:13,916.916 INFO    ] ================================================
[2026-06-19 22:31:13,932.932 INFO    ] Launching Daemon at Fri Jun 19 22:31:13 IST 2026
[2026-06-19 22:31:13,943.943 INFO    ] ================================================
[2026-06-19 22:31:14,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:31:14
[2026-06-19 22:31:15,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:31:15,411.411 INFO    ] Initializing speech engine...
[2026-06-19 22:31:15,420.420 INFO    ] 2026-06-19 22:31:15
[2026-06-19 22:31:15,684.684 INFO    ] 2026-06-19 22:31:15
[2026-06-19 22:31:15,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:31:15,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:31:15,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:31:16,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:31:16,088.088 INFO    ] time= 19/06/2026 22:31:16
[2026-06-19 22:31:16,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:31:16,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:31:16,178.178 INFO    ] No existing commands found in stream
[2026-06-19 22:31:21,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:31:21,211.211 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 22:31:25,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:31:25,404.404 INFO    ] Checking for system updates...
[2026-06-19 22:31:25,441.441 INFO    ] 200
[2026-06-19 22:31:25,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:31:25,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:31:25,500.500 INFO    ] No update needed
[2026-06-19 22:31:25,502.502 INFO    ] Checking for camera pi updates...
[2026-06-19 22:31:25,541.541 INFO    ] 200
[2026-06-19 22:31:25,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:31:25,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:31:25,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:31:25,633.633 INFO    ] No camera update needed
[2026-06-19 22:31:25,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:31:25,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:31:25,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:31:25,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:31:27,687.687 INFO    ] ================================================
[2026-06-19 22:31:27,703.703 INFO    ] Launching Daemon at Fri Jun 19 22:31:27 IST 2026
[2026-06-19 22:31:27,714.714 INFO    ] ================================================
[2026-06-19 22:31:28,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:31:28
[2026-06-19 22:31:28,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:31:29,249.249 INFO    ] Initializing speech engine...
[2026-06-19 22:31:29,258.258 INFO    ] 2026-06-19 22:31:29
[2026-06-19 22:31:29,539.539 INFO    ] 2026-06-19 22:31:29
[2026-06-19 22:31:29,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:31:29,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:31:29,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:31:29,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:31:29,995.995 INFO    ] time= 19/06/2026 22:31:29
[2026-06-19 22:31:30,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:31:30,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:31:30,135.135 INFO    ] No existing commands found in stream
[2026-06-19 22:31:35,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:31:35,174.174 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-19 22:31:39,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:31:39,354.354 INFO    ] Checking for system updates...
[2026-06-19 22:31:39,400.400 INFO    ] 200
[2026-06-19 22:31:39,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:31:39,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:31:39,483.483 INFO    ] No update needed
[2026-06-19 22:31:39,486.486 INFO    ] Checking for camera pi updates...
[2026-06-19 22:31:39,548.548 INFO    ] 200
[2026-06-19 22:31:39,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:31:39,594.594 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:31:39,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:31:39,649.649 INFO    ] No camera update needed
[2026-06-19 22:31:39,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:31:39,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:31:39,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:31:39,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:31:41,703.703 INFO    ] ================================================
[2026-06-19 22:31:41,718.718 INFO    ] Launching Daemon at Fri Jun 19 22:31:41 IST 2026
[2026-06-19 22:31:41,729.729 INFO    ] ================================================
[2026-06-19 22:31:42,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:31:42
[2026-06-19 22:31:42,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:31:43,230.230 INFO    ] Initializing speech engine...
[2026-06-19 22:31:43,239.239 INFO    ] 2026-06-19 22:31:43
[2026-06-19 22:31:43,516.516 INFO    ] 2026-06-19 22:31:43
[2026-06-19 22:31:43,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:31:43,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:31:43,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:31:43,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:31:43,995.995 INFO    ] time= 19/06/2026 22:31:43
[2026-06-19 22:31:44,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:31:44,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:31:44,146.146 INFO    ] No existing commands found in stream
[2026-06-19 22:31:49,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:31:49,162.162 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-19 22:31:53,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:31:53,364.364 INFO    ] Checking for system updates...
[2026-06-19 22:31:53,401.401 INFO    ] 200
[2026-06-19 22:31:53,403.403 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:31:53,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:31:53,463.463 INFO    ] No update needed
[2026-06-19 22:31:53,466.466 INFO    ] Checking for camera pi updates...
[2026-06-19 22:31:53,502.502 INFO    ] 200
[2026-06-19 22:31:53,505.505 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:31:53,547.547 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:31:53,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:31:53,602.602 INFO    ] No camera update needed
[2026-06-19 22:31:53,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:31:53,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:31:53,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:31:53,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:31:55,657.657 INFO    ] ================================================
[2026-06-19 22:31:55,673.673 INFO    ] Launching Daemon at Fri Jun 19 22:31:55 IST 2026
[2026-06-19 22:31:55,684.684 INFO    ] ================================================
[2026-06-19 22:31:56,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:31:56
[2026-06-19 22:31:56,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:31:57,234.234 INFO    ] Initializing speech engine...
[2026-06-19 22:31:57,241.241 INFO    ] 2026-06-19 22:31:57
[2026-06-19 22:31:57,511.511 INFO    ] 2026-06-19 22:31:57
[2026-06-19 22:31:57,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:31:57,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:31:57,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:31:57,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:31:57,999.999 INFO    ] time= 19/06/2026 22:31:57
[2026-06-19 22:31:58,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:31:58,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:31:58,124.124 INFO    ] No existing commands found in stream
[2026-06-19 22:32:03,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:32:03,140.140 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 22:32:05,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:32:05,174.174 INFO    ] Checking for system updates...
[2026-06-19 22:32:05,211.211 INFO    ] 200
[2026-06-19 22:32:05,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:05,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:32:05,269.269 INFO    ] No update needed
[2026-06-19 22:32:05,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 22:32:05,309.309 INFO    ] 200
[2026-06-19 22:32:05,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:05,360.360 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:32:05,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:32:05,407.407 INFO    ] No camera update needed
[2026-06-19 22:32:05,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:32:05,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:32:05,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:32:05,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:32:07,468.468 INFO    ] ================================================
[2026-06-19 22:32:07,483.483 INFO    ] Launching Daemon at Fri Jun 19 22:32:07 IST 2026
[2026-06-19 22:32:07,494.494 INFO    ] ================================================
[2026-06-19 22:32:08,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:32:08
[2026-06-19 22:32:08,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:32:08,964.964 INFO    ] Initializing speech engine...
[2026-06-19 22:32:08,969.969 INFO    ] 2026-06-19 22:32:08
[2026-06-19 22:32:09,231.231 INFO    ] 2026-06-19 22:32:09
[2026-06-19 22:32:09,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:32:09,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:32:09,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:32:09,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:32:09,595.595 INFO    ] time= 19/06/2026 22:32:09
[2026-06-19 22:32:09,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:32:09,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:32:09,717.717 INFO    ] No existing commands found in stream
[2026-06-19 22:32:14,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:32:14,733.733 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 22:32:18,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:32:18,528.528 INFO    ] Checking for system updates...
[2026-06-19 22:32:18,566.566 INFO    ] 200
[2026-06-19 22:32:18,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:18,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:32:18,623.623 INFO    ] No update needed
[2026-06-19 22:32:18,626.626 INFO    ] Checking for camera pi updates...
[2026-06-19 22:32:18,660.660 INFO    ] 200
[2026-06-19 22:32:18,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:18,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:32:18,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:32:18,750.750 INFO    ] No camera update needed
[2026-06-19 22:32:18,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:32:18,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:32:18,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:32:18,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:32:20,806.806 INFO    ] ================================================
[2026-06-19 22:32:20,821.821 INFO    ] Launching Daemon at Fri Jun 19 22:32:20 IST 2026
[2026-06-19 22:32:20,832.832 INFO    ] ================================================
[2026-06-19 22:32:21,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:32:21
[2026-06-19 22:32:22,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:32:22,299.299 INFO    ] Initializing speech engine...
[2026-06-19 22:32:22,308.308 INFO    ] 2026-06-19 22:32:22
[2026-06-19 22:32:22,569.569 INFO    ] 2026-06-19 22:32:22
[2026-06-19 22:32:22,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:32:22,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:32:22,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:32:22,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:32:23,025.025 INFO    ] time= 19/06/2026 22:32:22
[2026-06-19 22:32:23,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:32:23,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:32:23,186.186 INFO    ] No existing commands found in stream
[2026-06-19 22:32:28,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:32:28,226.226 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 22:32:31,616.616 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:32:31,618.618 INFO    ] Checking for system updates...
[2026-06-19 22:32:31,655.655 INFO    ] 200
[2026-06-19 22:32:31,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:31,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:32:31,716.716 INFO    ] No update needed
[2026-06-19 22:32:31,719.719 INFO    ] Checking for camera pi updates...
[2026-06-19 22:32:31,761.761 INFO    ] 200
[2026-06-19 22:32:31,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:31,820.820 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:32:31,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:32:31,855.855 INFO    ] No camera update needed
[2026-06-19 22:32:31,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:32:31,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:32:31,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:32:31,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:32:33,915.915 INFO    ] ================================================
[2026-06-19 22:32:33,934.934 INFO    ] Launching Daemon at Fri Jun 19 22:32:33 IST 2026
[2026-06-19 22:32:33,944.944 INFO    ] ================================================
[2026-06-19 22:32:34,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:32:34
[2026-06-19 22:32:35,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:32:35,405.405 INFO    ] Initializing speech engine...
[2026-06-19 22:32:35,426.426 INFO    ] 2026-06-19 22:32:35
[2026-06-19 22:32:35,703.703 INFO    ] 2026-06-19 22:32:35
[2026-06-19 22:32:35,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:32:35,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:32:35,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:32:36,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:32:36,079.079 INFO    ] time= 19/06/2026 22:32:36
[2026-06-19 22:32:36,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:32:36,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:32:36,204.204 INFO    ] No existing commands found in stream
[2026-06-19 22:32:41,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:32:41,220.220 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 22:32:44,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:32:44,605.605 INFO    ] Checking for system updates...
[2026-06-19 22:32:44,640.640 INFO    ] 200
[2026-06-19 22:32:44,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:44,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:32:44,698.698 INFO    ] No update needed
[2026-06-19 22:32:44,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 22:32:44,734.734 INFO    ] 200
[2026-06-19 22:32:44,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:44,786.786 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:32:44,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:32:44,832.832 INFO    ] No camera update needed
[2026-06-19 22:32:44,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:32:44,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:32:44,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:32:44,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:32:46,888.888 INFO    ] ================================================
[2026-06-19 22:32:46,903.903 INFO    ] Launching Daemon at Fri Jun 19 22:32:46 IST 2026
[2026-06-19 22:32:46,913.913 INFO    ] ================================================
[2026-06-19 22:32:47,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:32:47
[2026-06-19 22:32:48,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:32:48,375.375 INFO    ] Initializing speech engine...
[2026-06-19 22:32:48,388.388 INFO    ] 2026-06-19 22:32:48
[2026-06-19 22:32:48,638.638 INFO    ] 2026-06-19 22:32:48
[2026-06-19 22:32:48,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:32:48,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:32:48,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:32:49,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:32:49,109.109 INFO    ] time= 19/06/2026 22:32:49
[2026-06-19 22:32:49,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:32:49,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:32:49,260.260 INFO    ] No existing commands found in stream
[2026-06-19 22:32:54,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:32:54,283.283 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-19 22:32:58,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:32:58,320.320 INFO    ] Checking for system updates...
[2026-06-19 22:32:58,355.355 INFO    ] 200
[2026-06-19 22:32:58,358.358 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:58,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:32:58,424.424 INFO    ] No update needed
[2026-06-19 22:32:58,426.426 INFO    ] Checking for camera pi updates...
[2026-06-19 22:32:58,460.460 INFO    ] 200
[2026-06-19 22:32:58,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:32:58,506.506 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:32:58,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:32:58,556.556 INFO    ] No camera update needed
[2026-06-19 22:32:58,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:32:58,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:32:58,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:32:58,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:33:00,613.613 INFO    ] ================================================
[2026-06-19 22:33:00,629.629 INFO    ] Launching Daemon at Fri Jun 19 22:33:00 IST 2026
[2026-06-19 22:33:00,641.641 INFO    ] ================================================
[2026-06-19 22:33:01,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:33:01
[2026-06-19 22:33:02,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:33:02,311.311 INFO    ] Initializing speech engine...
[2026-06-19 22:33:02,319.319 INFO    ] 2026-06-19 22:33:02
[2026-06-19 22:33:02,621.621 INFO    ] 2026-06-19 22:33:02
[2026-06-19 22:33:02,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:33:02,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:33:02,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:33:03,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:33:03,259.259 INFO    ] time= 19/06/2026 22:33:03
[2026-06-19 22:33:03,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:33:03,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:33:03,407.407 INFO    ] No existing commands found in stream
[2026-06-19 22:33:08,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:33:08,438.438 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-19 22:33:12,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:33:12,740.740 INFO    ] Checking for system updates...
[2026-06-19 22:33:12,779.779 INFO    ] 200
[2026-06-19 22:33:12,782.782 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:12,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:33:12,843.843 INFO    ] No update needed
[2026-06-19 22:33:12,846.846 INFO    ] Checking for camera pi updates...
[2026-06-19 22:33:12,881.881 INFO    ] 200
[2026-06-19 22:33:12,883.883 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:12,924.924 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:33:12,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:33:12,972.972 INFO    ] No camera update needed
[2026-06-19 22:33:12,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:33:12,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:33:12,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:33:12,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:33:15,029.029 INFO    ] ================================================
[2026-06-19 22:33:15,044.044 INFO    ] Launching Daemon at Fri Jun 19 22:33:15 IST 2026
[2026-06-19 22:33:15,055.055 INFO    ] ================================================
[2026-06-19 22:33:15,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:33:15
[2026-06-19 22:33:16,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:33:16,638.638 INFO    ] Initializing speech engine...
[2026-06-19 22:33:16,650.650 INFO    ] 2026-06-19 22:33:16
[2026-06-19 22:33:16,937.937 INFO    ] 2026-06-19 22:33:16
[2026-06-19 22:33:16,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:33:17,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:33:17,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:33:17,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:33:17,410.410 INFO    ] time= 19/06/2026 22:33:17
[2026-06-19 22:33:17,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:33:17,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:33:17,556.556 INFO    ] No existing commands found in stream
[2026-06-19 22:33:22,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:33:22,590.590 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 22:33:23,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:33:23,257.257 INFO    ] Checking for system updates...
[2026-06-19 22:33:23,296.296 INFO    ] 200
[2026-06-19 22:33:23,298.298 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:23,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:33:23,354.354 INFO    ] No update needed
[2026-06-19 22:33:23,357.357 INFO    ] Checking for camera pi updates...
[2026-06-19 22:33:23,395.395 INFO    ] 200
[2026-06-19 22:33:23,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:23,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:33:23,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:33:23,590.590 INFO    ] No camera update needed
[2026-06-19 22:33:23,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:33:23,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:33:23,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:33:23,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:33:25,647.647 INFO    ] ================================================
[2026-06-19 22:33:25,663.663 INFO    ] Launching Daemon at Fri Jun 19 22:33:25 IST 2026
[2026-06-19 22:33:25,674.674 INFO    ] ================================================
[2026-06-19 22:33:26,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:33:26
[2026-06-19 22:33:26,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:33:27,282.282 INFO    ] Initializing speech engine...
[2026-06-19 22:33:27,294.294 INFO    ] 2026-06-19 22:33:27
[2026-06-19 22:33:27,567.567 INFO    ] 2026-06-19 22:33:27
[2026-06-19 22:33:27,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:33:27,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:33:27,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:33:27,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:33:28,041.041 INFO    ] time= 19/06/2026 22:33:28
[2026-06-19 22:33:28,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:33:28,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:33:28,198.198 INFO    ] No existing commands found in stream
[2026-06-19 22:33:33,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:33:33,214.214 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 22:33:33,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:33:33,926.926 INFO    ] Checking for system updates...
[2026-06-19 22:33:33,973.973 INFO    ] 200
[2026-06-19 22:33:33,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:34,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:33:34,043.043 INFO    ] No update needed
[2026-06-19 22:33:34,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 22:33:34,086.086 INFO    ] 200
[2026-06-19 22:33:34,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:34,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:33:34,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:33:34,184.184 INFO    ] No camera update needed
[2026-06-19 22:33:34,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:33:34,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:33:34,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:33:34,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:33:36,243.243 INFO    ] ================================================
[2026-06-19 22:33:36,260.260 INFO    ] Launching Daemon at Fri Jun 19 22:33:36 IST 2026
[2026-06-19 22:33:36,272.272 INFO    ] ================================================
[2026-06-19 22:33:36,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:33:36
[2026-06-19 22:33:37,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:33:37,740.740 INFO    ] Initializing speech engine...
[2026-06-19 22:33:37,754.754 INFO    ] 2026-06-19 22:33:37
[2026-06-19 22:33:38,043.043 INFO    ] 2026-06-19 22:33:38
[2026-06-19 22:33:38,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:33:38,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:33:38,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:33:38,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:33:38,382.382 INFO    ] time= 19/06/2026 22:33:38
[2026-06-19 22:33:38,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:33:38,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:33:38,505.505 INFO    ] No existing commands found in stream
[2026-06-19 22:33:43,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:33:43,530.530 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-19 22:33:46,678.678 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:33:46,681.681 INFO    ] Checking for system updates...
[2026-06-19 22:33:46,718.718 INFO    ] 200
[2026-06-19 22:33:46,721.721 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:46,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:33:46,778.778 INFO    ] No update needed
[2026-06-19 22:33:46,780.780 INFO    ] Checking for camera pi updates...
[2026-06-19 22:33:46,815.815 INFO    ] 200
[2026-06-19 22:33:46,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:46,861.861 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:33:46,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:33:46,904.904 INFO    ] No camera update needed
[2026-06-19 22:33:46,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:33:46,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:33:46,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:33:46,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:33:48,959.959 INFO    ] ================================================
[2026-06-19 22:33:48,974.974 INFO    ] Launching Daemon at Fri Jun 19 22:33:48 IST 2026
[2026-06-19 22:33:48,985.985 INFO    ] ================================================
[2026-06-19 22:33:49,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:33:49
[2026-06-19 22:33:50,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:33:50,450.450 INFO    ] Initializing speech engine...
[2026-06-19 22:33:50,459.459 INFO    ] 2026-06-19 22:33:50
[2026-06-19 22:33:50,719.719 INFO    ] 2026-06-19 22:33:50
[2026-06-19 22:33:50,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:33:50,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:33:51,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:33:51,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:33:51,203.203 INFO    ] time= 19/06/2026 22:33:51
[2026-06-19 22:33:51,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:33:51,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:33:51,328.328 INFO    ] No existing commands found in stream
[2026-06-19 22:33:56,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:33:56,342.342 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 22:33:57,977.977 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:33:57,980.980 INFO    ] Checking for system updates...
[2026-06-19 22:33:58,018.018 INFO    ] 200
[2026-06-19 22:33:58,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:58,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:33:58,076.076 INFO    ] No update needed
[2026-06-19 22:33:58,078.078 INFO    ] Checking for camera pi updates...
[2026-06-19 22:33:58,115.115 INFO    ] 200
[2026-06-19 22:33:58,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:33:58,164.164 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:33:58,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:33:58,215.215 INFO    ] No camera update needed
[2026-06-19 22:33:58,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:33:58,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:33:58,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:33:58,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:34:00,273.273 INFO    ] ================================================
[2026-06-19 22:34:00,289.289 INFO    ] Launching Daemon at Fri Jun 19 22:34:00 IST 2026
[2026-06-19 22:34:00,300.300 INFO    ] ================================================
[2026-06-19 22:34:00,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:34:00
[2026-06-19 22:34:01,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:34:01,960.960 INFO    ] Initializing speech engine...
[2026-06-19 22:34:02,015.015 INFO    ] 2026-06-19 22:34:01
[2026-06-19 22:34:02,397.397 INFO    ] 2026-06-19 22:34:02
[2026-06-19 22:34:02,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:34:02,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:34:02,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:34:02,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:34:02,946.946 INFO    ] time= 19/06/2026 22:34:02
[2026-06-19 22:34:02,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:34:03,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:34:03,158.158 INFO    ] No existing commands found in stream
[2026-06-19 22:34:08,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:34:08,178.178 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-19 22:34:12,481.481 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:34:12,484.484 INFO    ] Checking for system updates...
[2026-06-19 22:34:12,521.521 INFO    ] 200
[2026-06-19 22:34:12,524.524 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:34:12,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:34:12,583.583 INFO    ] No update needed
[2026-06-19 22:34:12,586.586 INFO    ] Checking for camera pi updates...
[2026-06-19 22:34:12,620.620 INFO    ] 200
[2026-06-19 22:34:12,623.623 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:34:12,667.667 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:34:12,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:34:12,712.712 INFO    ] No camera update needed
[2026-06-19 22:34:12,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:34:12,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:34:12,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:34:12,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:34:14,768.768 INFO    ] ================================================
[2026-06-19 22:34:14,783.783 INFO    ] Launching Daemon at Fri Jun 19 22:34:14 IST 2026
[2026-06-19 22:34:14,794.794 INFO    ] ================================================
[2026-06-19 22:34:15,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:34:15
[2026-06-19 22:34:16,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:34:16,449.449 INFO    ] Initializing speech engine...
[2026-06-19 22:34:16,456.456 INFO    ] 2026-06-19 22:34:16
[2026-06-19 22:34:16,744.744 INFO    ] 2026-06-19 22:34:16
[2026-06-19 22:34:16,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:34:17,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:34:17,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:34:17,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:34:17,198.198 INFO    ] time= 19/06/2026 22:34:17
[2026-06-19 22:34:17,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:34:17,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:34:17,348.348 INFO    ] No existing commands found in stream
[2026-06-19 22:34:22,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:34:22,364.364 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-19 22:34:24,596.596 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:34:24,599.599 INFO    ] Checking for system updates...
[2026-06-19 22:34:24,638.638 INFO    ] 200
[2026-06-19 22:34:24,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:34:24,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:34:24,696.696 INFO    ] No update needed
[2026-06-19 22:34:24,699.699 INFO    ] Checking for camera pi updates...
[2026-06-19 22:34:24,733.733 INFO    ] 200
[2026-06-19 22:34:24,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:34:24,776.776 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:34:24,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:34:24,828.828 INFO    ] No camera update needed
[2026-06-19 22:34:24,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:34:24,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:34:24,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:34:24,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:34:26,883.883 INFO    ] ================================================
[2026-06-19 22:34:26,898.898 INFO    ] Launching Daemon at Fri Jun 19 22:34:26 IST 2026
[2026-06-19 22:34:26,909.909 INFO    ] ================================================
[2026-06-19 22:34:27,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:34:27
[2026-06-19 22:34:28,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:34:28,418.418 INFO    ] Initializing speech engine...
[2026-06-19 22:34:28,425.425 INFO    ] 2026-06-19 22:34:28
[2026-06-19 22:34:28,749.749 INFO    ] 2026-06-19 22:34:28
[2026-06-19 22:34:28,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:34:29,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:34:29,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:34:29,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:34:29,275.275 INFO    ] time= 19/06/2026 22:34:29
[2026-06-19 22:34:29,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:34:29,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:34:29,418.418 INFO    ] No existing commands found in stream
[2026-06-19 22:34:34,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:34:34,449.449 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 22:34:38,157.157 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:34:38,160.160 INFO    ] Checking for system updates...
[2026-06-19 22:34:38,198.198 INFO    ] 200
[2026-06-19 22:34:38,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:34:38,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:34:38,268.268 INFO    ] No update needed
[2026-06-19 22:34:38,270.270 INFO    ] Checking for camera pi updates...
[2026-06-19 22:34:38,305.305 INFO    ] 200
[2026-06-19 22:34:38,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:34:38,349.349 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:34:38,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:34:38,401.401 INFO    ] No camera update needed
[2026-06-19 22:34:38,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:34:38,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:34:38,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:34:38,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:34:40,462.462 INFO    ] ================================================
[2026-06-19 22:34:40,478.478 INFO    ] Launching Daemon at Fri Jun 19 22:34:40 IST 2026
[2026-06-19 22:34:40,490.490 INFO    ] ================================================
[2026-06-19 22:34:41,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:34:41
[2026-06-19 22:34:41,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:34:42,149.149 INFO    ] Initializing speech engine...
[2026-06-19 22:34:42,158.158 INFO    ] 2026-06-19 22:34:42
[2026-06-19 22:34:42,406.406 INFO    ] 2026-06-19 22:34:42
[2026-06-19 22:34:42,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:34:42,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:34:42,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:34:42,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:34:42,881.881 INFO    ] time= 19/06/2026 22:34:42
[2026-06-19 22:34:42,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:34:42,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:34:43,102.102 INFO    ] No existing commands found in stream
[2026-06-19 22:34:48,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:34:48,133.133 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 22:34:51,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:34:51,553.553 INFO    ] Checking for system updates...
[2026-06-19 22:34:51,590.590 INFO    ] 200
[2026-06-19 22:34:51,593.593 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:34:51,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:34:51,648.648 INFO    ] No update needed
[2026-06-19 22:34:51,650.650 INFO    ] Checking for camera pi updates...
[2026-06-19 22:34:51,685.685 INFO    ] 200
[2026-06-19 22:34:51,688.688 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:34:51,734.734 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:34:51,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:34:51,781.781 INFO    ] No camera update needed
[2026-06-19 22:34:51,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:34:51,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:34:51,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:34:51,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:34:53,837.837 INFO    ] ================================================
[2026-06-19 22:34:53,853.853 INFO    ] Launching Daemon at Fri Jun 19 22:34:53 IST 2026
[2026-06-19 22:34:53,864.864 INFO    ] ================================================
[2026-06-19 22:34:54,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:34:54
[2026-06-19 22:34:55,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:34:55,301.301 INFO    ] Initializing speech engine...
[2026-06-19 22:34:55,308.308 INFO    ] 2026-06-19 22:34:55
[2026-06-19 22:34:55,568.568 INFO    ] 2026-06-19 22:34:55
[2026-06-19 22:34:55,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:34:55,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:34:55,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:34:56,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:34:56,046.046 INFO    ] time= 19/06/2026 22:34:56
[2026-06-19 22:34:56,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:34:56,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:34:56,262.262 INFO    ] No existing commands found in stream
[2026-06-19 22:35:01,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:35:01,287.287 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-19 22:35:04,882.882 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:35:04,884.884 INFO    ] Checking for system updates...
[2026-06-19 22:35:04,920.920 INFO    ] 200
[2026-06-19 22:35:04,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:04,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:35:04,978.978 INFO    ] No update needed
[2026-06-19 22:35:04,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 22:35:05,015.015 INFO    ] 200
[2026-06-19 22:35:05,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:05,059.059 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:35:05,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:35:05,110.110 INFO    ] No camera update needed
[2026-06-19 22:35:05,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:35:05,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:35:05,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:35:05,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:35:07,165.165 INFO    ] ================================================
[2026-06-19 22:35:07,181.181 INFO    ] Launching Daemon at Fri Jun 19 22:35:07 IST 2026
[2026-06-19 22:35:07,192.192 INFO    ] ================================================
[2026-06-19 22:35:07,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:35:07
[2026-06-19 22:35:08,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:35:08,608.608 INFO    ] Initializing speech engine...
[2026-06-19 22:35:08,616.616 INFO    ] 2026-06-19 22:35:08
[2026-06-19 22:35:08,911.911 INFO    ] 2026-06-19 22:35:08
[2026-06-19 22:35:08,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:35:09,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:35:09,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:35:09,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:35:09,293.293 INFO    ] time= 19/06/2026 22:35:09
[2026-06-19 22:35:09,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:35:09,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:35:09,418.418 INFO    ] No existing commands found in stream
[2026-06-19 22:35:14,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:35:14,433.433 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 22:35:15,709.709 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:35:15,711.711 INFO    ] Checking for system updates...
[2026-06-19 22:35:15,747.747 INFO    ] 200
[2026-06-19 22:35:15,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:15,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:35:15,812.812 INFO    ] No update needed
[2026-06-19 22:35:15,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 22:35:15,851.851 INFO    ] 200
[2026-06-19 22:35:15,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:15,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:35:15,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:35:15,947.947 INFO    ] No camera update needed
[2026-06-19 22:35:15,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:35:15,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:35:15,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:35:15,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:35:18,003.003 INFO    ] ================================================
[2026-06-19 22:35:18,019.019 INFO    ] Launching Daemon at Fri Jun 19 22:35:18 IST 2026
[2026-06-19 22:35:18,030.030 INFO    ] ================================================
[2026-06-19 22:35:18,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:35:18
[2026-06-19 22:35:19,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:35:19,652.652 INFO    ] Initializing speech engine...
[2026-06-19 22:35:19,660.660 INFO    ] 2026-06-19 22:35:19
[2026-06-19 22:35:19,946.946 INFO    ] 2026-06-19 22:35:19
[2026-06-19 22:35:19,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:35:20,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:35:20,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:35:20,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:35:20,438.438 INFO    ] time= 19/06/2026 22:35:20
[2026-06-19 22:35:20,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:35:20,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:35:20,620.620 INFO    ] No existing commands found in stream
[2026-06-19 22:35:25,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:35:25,651.651 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 22:35:30,042.042 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:35:30,045.045 INFO    ] Checking for system updates...
[2026-06-19 22:35:30,086.086 INFO    ] 200
[2026-06-19 22:35:30,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:30,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:35:30,152.152 INFO    ] No update needed
[2026-06-19 22:35:30,155.155 INFO    ] Checking for camera pi updates...
[2026-06-19 22:35:30,190.190 INFO    ] 200
[2026-06-19 22:35:30,193.193 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:30,234.234 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:35:30,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:35:30,384.384 INFO    ] No camera update needed
[2026-06-19 22:35:30,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:35:30,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:35:30,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:35:30,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:35:32,443.443 INFO    ] ================================================
[2026-06-19 22:35:32,460.460 INFO    ] Launching Daemon at Fri Jun 19 22:35:32 IST 2026
[2026-06-19 22:35:32,472.472 INFO    ] ================================================
[2026-06-19 22:35:33,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:35:33
[2026-06-19 22:35:33,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:35:34,071.071 INFO    ] Initializing speech engine...
[2026-06-19 22:35:34,082.082 INFO    ] 2026-06-19 22:35:34
[2026-06-19 22:35:34,390.390 INFO    ] 2026-06-19 22:35:34
[2026-06-19 22:35:34,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:35:34,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:35:34,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:35:34,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:35:34,897.897 INFO    ] time= 19/06/2026 22:35:34
[2026-06-19 22:35:34,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:35:34,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:35:35,052.052 INFO    ] No existing commands found in stream
[2026-06-19 22:35:40,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:35:40,083.083 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 22:35:41,070.070 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:35:41,073.073 INFO    ] Checking for system updates...
[2026-06-19 22:35:41,112.112 INFO    ] 200
[2026-06-19 22:35:41,114.114 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:41,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:35:41,169.169 INFO    ] No update needed
[2026-06-19 22:35:41,171.171 INFO    ] Checking for camera pi updates...
[2026-06-19 22:35:41,205.205 INFO    ] 200
[2026-06-19 22:35:41,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:41,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:35:41,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:35:41,294.294 INFO    ] No camera update needed
[2026-06-19 22:35:41,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:35:41,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:35:41,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:35:41,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:35:43,352.352 INFO    ] ================================================
[2026-06-19 22:35:43,385.385 INFO    ] Launching Daemon at Fri Jun 19 22:35:43 IST 2026
[2026-06-19 22:35:43,398.398 INFO    ] ================================================
[2026-06-19 22:35:44,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:35:44
[2026-06-19 22:35:44,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:35:44,941.941 INFO    ] Initializing speech engine...
[2026-06-19 22:35:44,949.949 INFO    ] 2026-06-19 22:35:44
[2026-06-19 22:35:45,247.247 INFO    ] 2026-06-19 22:35:45
[2026-06-19 22:35:45,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:35:45,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:35:45,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:35:45,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:35:45,655.655 INFO    ] time= 19/06/2026 22:35:45
[2026-06-19 22:35:45,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:35:45,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:35:45,829.829 INFO    ] No existing commands found in stream
[2026-06-19 22:35:50,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:35:50,858.858 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-19 22:35:54,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:35:54,684.684 INFO    ] Checking for system updates...
[2026-06-19 22:35:54,722.722 INFO    ] 200
[2026-06-19 22:35:54,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:54,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:35:54,783.783 INFO    ] No update needed
[2026-06-19 22:35:54,786.786 INFO    ] Checking for camera pi updates...
[2026-06-19 22:35:54,829.829 INFO    ] 200
[2026-06-19 22:35:54,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:35:54,879.879 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:35:54,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:35:54,938.938 INFO    ] No camera update needed
[2026-06-19 22:35:54,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:35:54,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:35:54,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:35:54,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:35:56,992.992 INFO    ] ================================================
[2026-06-19 22:35:57,007.007 INFO    ] Launching Daemon at Fri Jun 19 22:35:57 IST 2026
[2026-06-19 22:35:57,018.018 INFO    ] ================================================
[2026-06-19 22:35:57,631.631 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:35:57
[2026-06-19 22:35:58,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:35:58,523.523 INFO    ] Initializing speech engine...
[2026-06-19 22:35:58,537.537 INFO    ] 2026-06-19 22:35:58
[2026-06-19 22:35:58,856.856 INFO    ] 2026-06-19 22:35:58
[2026-06-19 22:35:58,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:35:59,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:35:59,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:35:59,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:35:59,450.450 INFO    ] time= 19/06/2026 22:35:59
[2026-06-19 22:35:59,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:35:59,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:35:59,677.677 INFO    ] No existing commands found in stream
[2026-06-19 22:36:04,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:36:04,713.713 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 22:36:05,852.852 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:36:05,854.854 INFO    ] Checking for system updates...
[2026-06-19 22:36:05,890.890 INFO    ] 200
[2026-06-19 22:36:05,893.893 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:05,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:36:05,948.948 INFO    ] No update needed
[2026-06-19 22:36:05,950.950 INFO    ] Checking for camera pi updates...
[2026-06-19 22:36:05,986.986 INFO    ] 200
[2026-06-19 22:36:05,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:06,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:36:06,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:36:06,082.082 INFO    ] No camera update needed
[2026-06-19 22:36:06,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:36:06,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:36:06,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:36:06,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:36:08,139.139 INFO    ] ================================================
[2026-06-19 22:36:08,160.160 INFO    ] Launching Daemon at Fri Jun 19 22:36:08 IST 2026
[2026-06-19 22:36:08,171.171 INFO    ] ================================================
[2026-06-19 22:36:08,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:36:08
[2026-06-19 22:36:09,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:36:09,767.767 INFO    ] Initializing speech engine...
[2026-06-19 22:36:09,775.775 INFO    ] 2026-06-19 22:36:09
[2026-06-19 22:36:10,087.087 INFO    ] 2026-06-19 22:36:10
[2026-06-19 22:36:10,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:36:10,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:36:10,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:36:10,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:36:10,471.471 INFO    ] time= 19/06/2026 22:36:10
[2026-06-19 22:36:10,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:36:10,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:36:10,596.596 INFO    ] No existing commands found in stream
[2026-06-19 22:36:15,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:36:15,628.628 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 22:36:17,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:36:17,202.202 INFO    ] Checking for system updates...
[2026-06-19 22:36:17,238.238 INFO    ] 200
[2026-06-19 22:36:17,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:17,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:36:17,296.296 INFO    ] No update needed
[2026-06-19 22:36:17,298.298 INFO    ] Checking for camera pi updates...
[2026-06-19 22:36:17,332.332 INFO    ] 200
[2026-06-19 22:36:17,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:17,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:36:17,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:36:17,438.438 INFO    ] No camera update needed
[2026-06-19 22:36:17,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:36:17,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:36:17,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:36:17,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:36:19,497.497 INFO    ] ================================================
[2026-06-19 22:36:19,512.512 INFO    ] Launching Daemon at Fri Jun 19 22:36:19 IST 2026
[2026-06-19 22:36:19,522.522 INFO    ] ================================================
[2026-06-19 22:36:20,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:36:20
[2026-06-19 22:36:20,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:36:20,986.986 INFO    ] Initializing speech engine...
[2026-06-19 22:36:20,994.994 INFO    ] 2026-06-19 22:36:20
[2026-06-19 22:36:21,253.253 INFO    ] 2026-06-19 22:36:21
[2026-06-19 22:36:21,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:36:21,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:36:21,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:36:21,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:36:21,728.728 INFO    ] time= 19/06/2026 22:36:21
[2026-06-19 22:36:21,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:36:21,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:36:21,868.868 INFO    ] No existing commands found in stream
[2026-06-19 22:36:26,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:36:26,880.880 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 22:36:29,460.460 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:36:29,462.462 INFO    ] Checking for system updates...
[2026-06-19 22:36:29,499.499 INFO    ] 200
[2026-06-19 22:36:29,502.502 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:29,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:36:29,559.559 INFO    ] No update needed
[2026-06-19 22:36:29,561.561 INFO    ] Checking for camera pi updates...
[2026-06-19 22:36:29,600.600 INFO    ] 200
[2026-06-19 22:36:29,602.602 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:29,649.649 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:36:29,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:36:29,697.697 INFO    ] No camera update needed
[2026-06-19 22:36:29,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:36:29,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:36:29,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:36:29,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:36:31,754.754 INFO    ] ================================================
[2026-06-19 22:36:31,770.770 INFO    ] Launching Daemon at Fri Jun 19 22:36:31 IST 2026
[2026-06-19 22:36:31,781.781 INFO    ] ================================================
[2026-06-19 22:36:32,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:36:32
[2026-06-19 22:36:32,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:36:33,244.244 INFO    ] Initializing speech engine...
[2026-06-19 22:36:33,252.252 INFO    ] 2026-06-19 22:36:33
[2026-06-19 22:36:33,527.527 INFO    ] 2026-06-19 22:36:33
[2026-06-19 22:36:33,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:36:33,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:36:33,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:36:33,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:36:34,009.009 INFO    ] time= 19/06/2026 22:36:33
[2026-06-19 22:36:34,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:36:34,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:36:34,159.159 INFO    ] No existing commands found in stream
[2026-06-19 22:36:39,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:36:39,174.174 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 22:36:42,904.904 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:36:42,907.907 INFO    ] Checking for system updates...
[2026-06-19 22:36:42,946.946 INFO    ] 200
[2026-06-19 22:36:42,949.949 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:43,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:36:43,007.007 INFO    ] No update needed
[2026-06-19 22:36:43,010.010 INFO    ] Checking for camera pi updates...
[2026-06-19 22:36:43,045.045 INFO    ] 200
[2026-06-19 22:36:43,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:43,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:36:43,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:36:43,151.151 INFO    ] No camera update needed
[2026-06-19 22:36:43,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:36:43,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:36:43,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:36:43,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:36:45,211.211 INFO    ] ================================================
[2026-06-19 22:36:45,226.226 INFO    ] Launching Daemon at Fri Jun 19 22:36:45 IST 2026
[2026-06-19 22:36:45,236.236 INFO    ] ================================================
[2026-06-19 22:36:45,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:36:45
[2026-06-19 22:36:46,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:36:46,713.713 INFO    ] Initializing speech engine...
[2026-06-19 22:36:46,723.723 INFO    ] 2026-06-19 22:36:46
[2026-06-19 22:36:46,971.971 INFO    ] 2026-06-19 22:36:46
[2026-06-19 22:36:47,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:36:47,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:36:47,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:36:47,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:36:47,450.450 INFO    ] time= 19/06/2026 22:36:47
[2026-06-19 22:36:47,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:36:47,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:36:47,595.595 INFO    ] No existing commands found in stream
[2026-06-19 22:36:52,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:36:52,610.610 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 22:36:55,135.135 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:36:55,138.138 INFO    ] Checking for system updates...
[2026-06-19 22:36:55,176.176 INFO    ] 200
[2026-06-19 22:36:55,179.179 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:55,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:36:55,236.236 INFO    ] No update needed
[2026-06-19 22:36:55,238.238 INFO    ] Checking for camera pi updates...
[2026-06-19 22:36:55,274.274 INFO    ] 200
[2026-06-19 22:36:55,277.277 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:36:55,319.319 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:36:55,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:36:55,368.368 INFO    ] No camera update needed
[2026-06-19 22:36:55,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:36:55,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:36:55,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:36:55,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:36:57,429.429 INFO    ] ================================================
[2026-06-19 22:36:57,445.445 INFO    ] Launching Daemon at Fri Jun 19 22:36:57 IST 2026
[2026-06-19 22:36:57,456.456 INFO    ] ================================================
[2026-06-19 22:36:58,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:36:58
[2026-06-19 22:36:58,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:36:58,930.930 INFO    ] Initializing speech engine...
[2026-06-19 22:36:58,936.936 INFO    ] 2026-06-19 22:36:58
[2026-06-19 22:36:59,215.215 INFO    ] 2026-06-19 22:36:59
[2026-06-19 22:36:59,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:36:59,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:36:59,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:36:59,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:36:59,703.703 INFO    ] time= 19/06/2026 22:36:59
[2026-06-19 22:36:59,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:36:59,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:36:59,851.851 INFO    ] No existing commands found in stream
[2026-06-19 22:37:04,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:37:04,880.880 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 22:37:06,034.034 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:37:06,037.037 INFO    ] Checking for system updates...
[2026-06-19 22:37:06,076.076 INFO    ] 200
[2026-06-19 22:37:06,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:06,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:37:06,137.137 INFO    ] No update needed
[2026-06-19 22:37:06,140.140 INFO    ] Checking for camera pi updates...
[2026-06-19 22:37:06,175.175 INFO    ] 200
[2026-06-19 22:37:06,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:06,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:37:06,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:37:06,272.272 INFO    ] No camera update needed
[2026-06-19 22:37:06,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:37:06,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:37:06,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:37:06,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:37:08,330.330 INFO    ] ================================================
[2026-06-19 22:37:08,345.345 INFO    ] Launching Daemon at Fri Jun 19 22:37:08 IST 2026
[2026-06-19 22:37:08,356.356 INFO    ] ================================================
[2026-06-19 22:37:08,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:37:08
[2026-06-19 22:37:09,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:37:09,791.791 INFO    ] Initializing speech engine...
[2026-06-19 22:37:09,800.800 INFO    ] 2026-06-19 22:37:09
[2026-06-19 22:37:10,060.060 INFO    ] 2026-06-19 22:37:10
[2026-06-19 22:37:10,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:37:10,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:37:10,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:37:10,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:37:10,534.534 INFO    ] time= 19/06/2026 22:37:10
[2026-06-19 22:37:10,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:37:10,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:37:10,686.686 INFO    ] No existing commands found in stream
[2026-06-19 22:37:15,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:37:15,701.701 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 22:37:19,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:37:19,370.370 INFO    ] Checking for system updates...
[2026-06-19 22:37:19,410.410 INFO    ] 200
[2026-06-19 22:37:19,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:19,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:37:19,469.469 INFO    ] No update needed
[2026-06-19 22:37:19,472.472 INFO    ] Checking for camera pi updates...
[2026-06-19 22:37:19,505.505 INFO    ] 200
[2026-06-19 22:37:19,508.508 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:19,548.548 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:37:19,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:37:19,602.602 INFO    ] No camera update needed
[2026-06-19 22:37:19,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:37:19,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:37:19,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:37:19,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:37:21,659.659 INFO    ] ================================================
[2026-06-19 22:37:21,675.675 INFO    ] Launching Daemon at Fri Jun 19 22:37:21 IST 2026
[2026-06-19 22:37:21,685.685 INFO    ] ================================================
[2026-06-19 22:37:22,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:37:22
[2026-06-19 22:37:22,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:37:23,111.111 INFO    ] Initializing speech engine...
[2026-06-19 22:37:23,117.117 INFO    ] 2026-06-19 22:37:23
[2026-06-19 22:37:23,416.416 INFO    ] 2026-06-19 22:37:23
[2026-06-19 22:37:23,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:37:23,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:37:23,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:37:23,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:37:23,799.799 INFO    ] time= 19/06/2026 22:37:23
[2026-06-19 22:37:23,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:37:23,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:37:23,917.917 INFO    ] No existing commands found in stream
[2026-06-19 22:37:28,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:37:28,944.944 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-19 22:37:33,290.290 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:37:33,293.293 INFO    ] Checking for system updates...
[2026-06-19 22:37:33,331.331 INFO    ] 200
[2026-06-19 22:37:33,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:33,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:37:33,398.398 INFO    ] No update needed
[2026-06-19 22:37:33,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 22:37:33,437.437 INFO    ] 200
[2026-06-19 22:37:33,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:33,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:37:33,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:37:33,525.525 INFO    ] No camera update needed
[2026-06-19 22:37:33,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:37:33,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:37:33,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:37:33,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:37:35,584.584 INFO    ] ================================================
[2026-06-19 22:37:35,599.599 INFO    ] Launching Daemon at Fri Jun 19 22:37:35 IST 2026
[2026-06-19 22:37:35,610.610 INFO    ] ================================================
[2026-06-19 22:37:36,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:37:36
[2026-06-19 22:37:36,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:37:37,080.080 INFO    ] Initializing speech engine...
[2026-06-19 22:37:37,086.086 INFO    ] 2026-06-19 22:37:37
[2026-06-19 22:37:37,334.334 INFO    ] 2026-06-19 22:37:37
[2026-06-19 22:37:37,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:37:37,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:37:37,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:37:37,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:37:37,815.815 INFO    ] time= 19/06/2026 22:37:37
[2026-06-19 22:37:37,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:37:37,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:37:37,952.952 INFO    ] No existing commands found in stream
[2026-06-19 22:37:42,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:37:42,967.967 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 22:37:45,628.628 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:37:45,631.631 INFO    ] Checking for system updates...
[2026-06-19 22:37:45,668.668 INFO    ] 200
[2026-06-19 22:37:45,670.670 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:45,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:37:45,727.727 INFO    ] No update needed
[2026-06-19 22:37:45,729.729 INFO    ] Checking for camera pi updates...
[2026-06-19 22:37:45,763.763 INFO    ] 200
[2026-06-19 22:37:45,766.766 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:45,806.806 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:37:45,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:37:45,862.862 INFO    ] No camera update needed
[2026-06-19 22:37:45,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:37:45,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:37:45,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:37:45,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:37:47,926.926 INFO    ] ================================================
[2026-06-19 22:37:47,941.941 INFO    ] Launching Daemon at Fri Jun 19 22:37:47 IST 2026
[2026-06-19 22:37:47,952.952 INFO    ] ================================================
[2026-06-19 22:37:48,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:37:48
[2026-06-19 22:37:49,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:37:49,462.462 INFO    ] Initializing speech engine...
[2026-06-19 22:37:49,469.469 INFO    ] 2026-06-19 22:37:49
[2026-06-19 22:37:49,756.756 INFO    ] 2026-06-19 22:37:49
[2026-06-19 22:37:49,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:37:50,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:37:50,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:37:50,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:37:50,289.289 INFO    ] time= 19/06/2026 22:37:50
[2026-06-19 22:37:50,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:37:50,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:37:50,446.446 INFO    ] No existing commands found in stream
[2026-06-19 22:37:55,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:37:55,470.470 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-19 22:37:58,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:37:58,356.356 INFO    ] Checking for system updates...
[2026-06-19 22:37:58,394.394 INFO    ] 200
[2026-06-19 22:37:58,397.397 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:58,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:37:58,461.461 INFO    ] No update needed
[2026-06-19 22:37:58,463.463 INFO    ] Checking for camera pi updates...
[2026-06-19 22:37:58,501.501 INFO    ] 200
[2026-06-19 22:37:58,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:37:58,550.550 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:37:58,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:37:58,611.611 INFO    ] No camera update needed
[2026-06-19 22:37:58,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:37:58,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:37:58,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:37:58,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:38:00,667.667 INFO    ] ================================================
[2026-06-19 22:38:00,683.683 INFO    ] Launching Daemon at Fri Jun 19 22:38:00 IST 2026
[2026-06-19 22:38:00,694.694 INFO    ] ================================================
[2026-06-19 22:38:01,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:38:01
[2026-06-19 22:38:02,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:38:02,439.439 INFO    ] Initializing speech engine...
[2026-06-19 22:38:02,451.451 INFO    ] 2026-06-19 22:38:02
[2026-06-19 22:38:02,793.793 INFO    ] 2026-06-19 22:38:02
[2026-06-19 22:38:02,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:38:03,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:38:03,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:38:03,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:38:03,362.362 INFO    ] time= 19/06/2026 22:38:03
[2026-06-19 22:38:03,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:38:03,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:38:03,514.514 INFO    ] No existing commands found in stream
[2026-06-19 22:38:08,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:38:08,547.547 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 22:38:09,133.133 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:38:09,136.136 INFO    ] Checking for system updates...
[2026-06-19 22:38:09,173.173 INFO    ] 200
[2026-06-19 22:38:09,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:09,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:38:09,231.231 INFO    ] No update needed
[2026-06-19 22:38:09,233.233 INFO    ] Checking for camera pi updates...
[2026-06-19 22:38:09,267.267 INFO    ] 200
[2026-06-19 22:38:09,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:09,311.311 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:38:09,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:38:09,369.369 INFO    ] No camera update needed
[2026-06-19 22:38:09,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:38:09,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:38:09,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:38:09,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:38:11,425.425 INFO    ] ================================================
[2026-06-19 22:38:11,440.440 INFO    ] Launching Daemon at Fri Jun 19 22:38:11 IST 2026
[2026-06-19 22:38:11,451.451 INFO    ] ================================================
[2026-06-19 22:38:12,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:38:12
[2026-06-19 22:38:12,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:38:12,909.909 INFO    ] Initializing speech engine...
[2026-06-19 22:38:12,917.917 INFO    ] 2026-06-19 22:38:12
[2026-06-19 22:38:13,179.179 INFO    ] 2026-06-19 22:38:13
[2026-06-19 22:38:13,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:38:13,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:38:13,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:38:13,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:38:13,633.633 INFO    ] time= 19/06/2026 22:38:13
[2026-06-19 22:38:13,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:38:13,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:38:13,804.804 INFO    ] No existing commands found in stream
[2026-06-19 22:38:18,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:38:18,843.843 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 22:38:21,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:38:21,409.409 INFO    ] Checking for system updates...
[2026-06-19 22:38:21,446.446 INFO    ] 200
[2026-06-19 22:38:21,448.448 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:21,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:38:21,505.505 INFO    ] No update needed
[2026-06-19 22:38:21,507.507 INFO    ] Checking for camera pi updates...
[2026-06-19 22:38:21,541.541 INFO    ] 200
[2026-06-19 22:38:21,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:21,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:38:21,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:38:21,641.641 INFO    ] No camera update needed
[2026-06-19 22:38:21,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:38:21,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:38:21,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:38:21,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:38:23,699.699 INFO    ] ================================================
[2026-06-19 22:38:23,714.714 INFO    ] Launching Daemon at Fri Jun 19 22:38:23 IST 2026
[2026-06-19 22:38:23,724.724 INFO    ] ================================================
[2026-06-19 22:38:24,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:38:24
[2026-06-19 22:38:24,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:38:25,184.184 INFO    ] Initializing speech engine...
[2026-06-19 22:38:25,193.193 INFO    ] 2026-06-19 22:38:25
[2026-06-19 22:38:25,450.450 INFO    ] 2026-06-19 22:38:25
[2026-06-19 22:38:25,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:38:25,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:38:25,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:38:25,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:38:25,894.894 INFO    ] time= 19/06/2026 22:38:25
[2026-06-19 22:38:25,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:38:26,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:38:26,066.066 INFO    ] No existing commands found in stream
[2026-06-19 22:38:31,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:38:31,089.089 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 22:38:32,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:38:32,166.166 INFO    ] Checking for system updates...
[2026-06-19 22:38:32,215.215 INFO    ] 200
[2026-06-19 22:38:32,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:32,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:38:32,282.282 INFO    ] No update needed
[2026-06-19 22:38:32,285.285 INFO    ] Checking for camera pi updates...
[2026-06-19 22:38:32,326.326 INFO    ] 200
[2026-06-19 22:38:32,329.329 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:32,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:38:32,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:38:32,429.429 INFO    ] No camera update needed
[2026-06-19 22:38:32,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:38:32,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:38:32,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:38:32,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:38:34,494.494 INFO    ] ================================================
[2026-06-19 22:38:34,509.509 INFO    ] Launching Daemon at Fri Jun 19 22:38:34 IST 2026
[2026-06-19 22:38:34,519.519 INFO    ] ================================================
[2026-06-19 22:38:35,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:38:35
[2026-06-19 22:38:35,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:38:35,919.919 INFO    ] Initializing speech engine...
[2026-06-19 22:38:35,931.931 INFO    ] 2026-06-19 22:38:35
[2026-06-19 22:38:36,196.196 INFO    ] 2026-06-19 22:38:36
[2026-06-19 22:38:36,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:38:36,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:38:36,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:38:36,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:38:36,574.574 INFO    ] time= 19/06/2026 22:38:36
[2026-06-19 22:38:36,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:38:36,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:38:36,742.742 INFO    ] No existing commands found in stream
[2026-06-19 22:38:41,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:38:41,775.775 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 22:38:46,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:38:46,628.628 INFO    ] Checking for system updates...
[2026-06-19 22:38:46,663.663 INFO    ] 200
[2026-06-19 22:38:46,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:46,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:38:46,729.729 INFO    ] No update needed
[2026-06-19 22:38:46,731.731 INFO    ] Checking for camera pi updates...
[2026-06-19 22:38:46,769.769 INFO    ] 200
[2026-06-19 22:38:46,772.772 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:46,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:38:46,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:38:46,893.893 INFO    ] No camera update needed
[2026-06-19 22:38:46,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:38:46,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:38:46,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:38:46,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:38:48,950.950 INFO    ] ================================================
[2026-06-19 22:38:48,964.964 INFO    ] Launching Daemon at Fri Jun 19 22:38:48 IST 2026
[2026-06-19 22:38:48,975.975 INFO    ] ================================================
[2026-06-19 22:38:49,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:38:49
[2026-06-19 22:38:50,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:38:50,451.451 INFO    ] Initializing speech engine...
[2026-06-19 22:38:50,460.460 INFO    ] 2026-06-19 22:38:50
[2026-06-19 22:38:50,710.710 INFO    ] 2026-06-19 22:38:50
[2026-06-19 22:38:50,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:38:50,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:38:51,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:38:51,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:38:51,172.172 INFO    ] time= 19/06/2026 22:38:51
[2026-06-19 22:38:51,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:38:51,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:38:51,334.334 INFO    ] No existing commands found in stream
[2026-06-19 22:38:56,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:38:56,361.361 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 22:38:57,076.076 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:38:57,078.078 INFO    ] Checking for system updates...
[2026-06-19 22:38:57,115.115 INFO    ] 200
[2026-06-19 22:38:57,118.118 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:57,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:38:57,179.179 INFO    ] No update needed
[2026-06-19 22:38:57,182.182 INFO    ] Checking for camera pi updates...
[2026-06-19 22:38:57,219.219 INFO    ] 200
[2026-06-19 22:38:57,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:38:57,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:38:57,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:38:57,310.310 INFO    ] No camera update needed
[2026-06-19 22:38:57,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:38:57,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:38:57,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:38:57,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:38:59,366.366 INFO    ] ================================================
[2026-06-19 22:38:59,512.512 INFO    ] Launching Daemon at Fri Jun 19 22:38:59 IST 2026
[2026-06-19 22:38:59,526.526 INFO    ] ================================================
[2026-06-19 22:39:00,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:39:00
[2026-06-19 22:39:00,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:39:01,088.088 INFO    ] Initializing speech engine...
[2026-06-19 22:39:01,099.099 INFO    ] 2026-06-19 22:39:01
[2026-06-19 22:39:01,375.375 INFO    ] 2026-06-19 22:39:01
[2026-06-19 22:39:01,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:39:01,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:39:01,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:39:01,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:39:01,829.829 INFO    ] time= 19/06/2026 22:39:01
[2026-06-19 22:39:01,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:39:01,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:39:01,898.898 INFO    ] No existing commands found in stream
[2026-06-19 22:39:06,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:39:06,911.911 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 22:39:08,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:39:08,465.465 INFO    ] Checking for system updates...
[2026-06-19 22:39:08,507.507 INFO    ] 200
[2026-06-19 22:39:08,509.509 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:08,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:39:08,571.571 INFO    ] No update needed
[2026-06-19 22:39:08,574.574 INFO    ] Checking for camera pi updates...
[2026-06-19 22:39:08,607.607 INFO    ] 200
[2026-06-19 22:39:08,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:08,653.653 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:39:08,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:39:08,698.698 INFO    ] No camera update needed
[2026-06-19 22:39:08,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:39:08,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:39:08,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:39:08,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:39:10,752.752 INFO    ] ================================================
[2026-06-19 22:39:10,767.767 INFO    ] Launching Daemon at Fri Jun 19 22:39:10 IST 2026
[2026-06-19 22:39:10,777.777 INFO    ] ================================================
[2026-06-19 22:39:11,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:39:11
[2026-06-19 22:39:12,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:39:12,462.462 INFO    ] Initializing speech engine...
[2026-06-19 22:39:12,473.473 INFO    ] 2026-06-19 22:39:12
[2026-06-19 22:39:12,748.748 INFO    ] 2026-06-19 22:39:12
[2026-06-19 22:39:12,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:39:13,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:39:13,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:39:13,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:39:13,221.221 INFO    ] time= 19/06/2026 22:39:13
[2026-06-19 22:39:13,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:39:13,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:39:13,377.377 INFO    ] No existing commands found in stream
[2026-06-19 22:39:18,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:39:18,402.402 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-19 22:39:21,412.412 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:39:21,415.415 INFO    ] Checking for system updates...
[2026-06-19 22:39:21,457.457 INFO    ] 200
[2026-06-19 22:39:21,460.460 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:21,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:39:21,528.528 INFO    ] No update needed
[2026-06-19 22:39:21,531.531 INFO    ] Checking for camera pi updates...
[2026-06-19 22:39:21,566.566 INFO    ] 200
[2026-06-19 22:39:21,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:21,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:39:21,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:39:21,661.661 INFO    ] No camera update needed
[2026-06-19 22:39:21,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:39:21,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:39:21,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:39:21,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:39:23,717.717 INFO    ] ================================================
[2026-06-19 22:39:23,732.732 INFO    ] Launching Daemon at Fri Jun 19 22:39:23 IST 2026
[2026-06-19 22:39:23,743.743 INFO    ] ================================================
[2026-06-19 22:39:24,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:39:24
[2026-06-19 22:39:24,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:39:25,201.201 INFO    ] Initializing speech engine...
[2026-06-19 22:39:25,208.208 INFO    ] 2026-06-19 22:39:25
[2026-06-19 22:39:25,589.589 INFO    ] 2026-06-19 22:39:25
[2026-06-19 22:39:25,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:39:25,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:39:25,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:39:25,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:39:26,018.018 INFO    ] time= 19/06/2026 22:39:26
[2026-06-19 22:39:26,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:39:26,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:39:26,155.155 INFO    ] No existing commands found in stream
[2026-06-19 22:39:31,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:39:31,184.184 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 22:39:31,672.672 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:39:31,676.676 INFO    ] Checking for system updates...
[2026-06-19 22:39:31,727.727 INFO    ] 200
[2026-06-19 22:39:31,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:31,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:39:31,802.802 INFO    ] No update needed
[2026-06-19 22:39:31,805.805 INFO    ] Checking for camera pi updates...
[2026-06-19 22:39:31,843.843 INFO    ] 200
[2026-06-19 22:39:31,847.847 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:31,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:39:31,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:39:31,942.942 INFO    ] No camera update needed
[2026-06-19 22:39:31,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:39:31,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:39:31,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:39:31,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:39:34,004.004 INFO    ] ================================================
[2026-06-19 22:39:34,019.019 INFO    ] Launching Daemon at Fri Jun 19 22:39:34 IST 2026
[2026-06-19 22:39:34,030.030 INFO    ] ================================================
[2026-06-19 22:39:34,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:39:34
[2026-06-19 22:39:35,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:39:35,485.485 INFO    ] Initializing speech engine...
[2026-06-19 22:39:35,493.493 INFO    ] 2026-06-19 22:39:35
[2026-06-19 22:39:35,787.787 INFO    ] 2026-06-19 22:39:35
[2026-06-19 22:39:35,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:39:36,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:39:36,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:39:36,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:39:36,201.201 INFO    ] time= 19/06/2026 22:39:36
[2026-06-19 22:39:36,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:39:36,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:39:36,293.293 INFO    ] No existing commands found in stream
[2026-06-19 22:39:41,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:39:41,327.327 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 22:39:42,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:39:42,727.727 INFO    ] Checking for system updates...
[2026-06-19 22:39:42,765.765 INFO    ] 200
[2026-06-19 22:39:42,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:42,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:39:42,824.824 INFO    ] No update needed
[2026-06-19 22:39:42,827.827 INFO    ] Checking for camera pi updates...
[2026-06-19 22:39:42,862.862 INFO    ] 200
[2026-06-19 22:39:42,865.865 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:42,907.907 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:39:43,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:39:43,054.054 INFO    ] No camera update needed
[2026-06-19 22:39:43,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:39:43,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:39:43,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:39:43,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:39:45,113.113 INFO    ] ================================================
[2026-06-19 22:39:45,129.129 INFO    ] Launching Daemon at Fri Jun 19 22:39:45 IST 2026
[2026-06-19 22:39:45,140.140 INFO    ] ================================================
[2026-06-19 22:39:45,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:39:45
[2026-06-19 22:39:46,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:39:46,582.582 INFO    ] Initializing speech engine...
[2026-06-19 22:39:46,605.605 INFO    ] 2026-06-19 22:39:46
[2026-06-19 22:39:46,860.860 INFO    ] 2026-06-19 22:39:46
[2026-06-19 22:39:46,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:39:47,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:39:47,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:39:47,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:39:47,356.356 INFO    ] time= 19/06/2026 22:39:47
[2026-06-19 22:39:47,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:39:47,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:39:47,491.491 INFO    ] No existing commands found in stream
[2026-06-19 22:39:52,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:39:52,507.507 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-19 22:39:56,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:39:56,018.018 INFO    ] Checking for system updates...
[2026-06-19 22:39:56,057.057 INFO    ] 200
[2026-06-19 22:39:56,059.059 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:56,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:39:56,115.115 INFO    ] No update needed
[2026-06-19 22:39:56,118.118 INFO    ] Checking for camera pi updates...
[2026-06-19 22:39:56,154.154 INFO    ] 200
[2026-06-19 22:39:56,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:39:56,202.202 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:39:56,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:39:56,257.257 INFO    ] No camera update needed
[2026-06-19 22:39:56,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:39:56,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:39:56,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:39:56,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:39:58,314.314 INFO    ] ================================================
[2026-06-19 22:39:58,330.330 INFO    ] Launching Daemon at Fri Jun 19 22:39:58 IST 2026
[2026-06-19 22:39:58,341.341 INFO    ] ================================================
[2026-06-19 22:39:58,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:39:58
[2026-06-19 22:39:59,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:39:59,747.747 INFO    ] Initializing speech engine...
[2026-06-19 22:39:59,756.756 INFO    ] 2026-06-19 22:39:59
[2026-06-19 22:40:00,046.046 INFO    ] 2026-06-19 22:40:00
[2026-06-19 22:40:00,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:40:00,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:40:00,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:40:00,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:40:00,421.421 INFO    ] time= 19/06/2026 22:40:00
[2026-06-19 22:40:00,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:40:00,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:40:00,547.547 INFO    ] No existing commands found in stream
[2026-06-19 22:40:05,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:40:05,560.560 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 22:40:09,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:40:09,524.524 INFO    ] Checking for system updates...
[2026-06-19 22:40:09,560.560 INFO    ] 200
[2026-06-19 22:40:09,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:09,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:40:09,625.625 INFO    ] No update needed
[2026-06-19 22:40:09,628.628 INFO    ] Checking for camera pi updates...
[2026-06-19 22:40:09,662.662 INFO    ] 200
[2026-06-19 22:40:09,664.664 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:09,706.706 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:40:09,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:40:09,762.762 INFO    ] No camera update needed
[2026-06-19 22:40:09,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:40:09,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:40:09,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:40:09,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:40:11,817.817 INFO    ] ================================================
[2026-06-19 22:40:11,833.833 INFO    ] Launching Daemon at Fri Jun 19 22:40:11 IST 2026
[2026-06-19 22:40:11,844.844 INFO    ] ================================================
[2026-06-19 22:40:12,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:40:12
[2026-06-19 22:40:13,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:40:13,487.487 INFO    ] Initializing speech engine...
[2026-06-19 22:40:13,492.492 INFO    ] 2026-06-19 22:40:13
[2026-06-19 22:40:13,787.787 INFO    ] 2026-06-19 22:40:13
[2026-06-19 22:40:13,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:40:14,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:40:14,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:40:14,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:40:14,288.288 INFO    ] time= 19/06/2026 22:40:14
[2026-06-19 22:40:14,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:40:14,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:40:14,408.408 INFO    ] No existing commands found in stream
[2026-06-19 22:40:19,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:40:19,424.424 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 22:40:20,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:40:20,511.511 INFO    ] Checking for system updates...
[2026-06-19 22:40:20,548.548 INFO    ] 200
[2026-06-19 22:40:20,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:20,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:40:20,620.620 INFO    ] No update needed
[2026-06-19 22:40:20,623.623 INFO    ] Checking for camera pi updates...
[2026-06-19 22:40:20,663.663 INFO    ] 200
[2026-06-19 22:40:20,666.666 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:20,708.708 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:40:20,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:40:20,754.754 INFO    ] No camera update needed
[2026-06-19 22:40:20,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:40:20,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:40:20,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:40:20,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:40:22,809.809 INFO    ] ================================================
[2026-06-19 22:40:22,824.824 INFO    ] Launching Daemon at Fri Jun 19 22:40:22 IST 2026
[2026-06-19 22:40:22,835.835 INFO    ] ================================================
[2026-06-19 22:40:23,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:40:23
[2026-06-19 22:40:24,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:40:24,473.473 INFO    ] Initializing speech engine...
[2026-06-19 22:40:24,487.487 INFO    ] 2026-06-19 22:40:24
[2026-06-19 22:40:24,798.798 INFO    ] 2026-06-19 22:40:24
[2026-06-19 22:40:24,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:40:25,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:40:25,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:40:25,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:40:25,305.305 INFO    ] time= 19/06/2026 22:40:25
[2026-06-19 22:40:25,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:40:25,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:40:25,439.439 INFO    ] No existing commands found in stream
[2026-06-19 22:40:30,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:40:30,473.473 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-19 22:40:32,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:40:32,719.719 INFO    ] Checking for system updates...
[2026-06-19 22:40:32,762.762 INFO    ] 200
[2026-06-19 22:40:32,765.765 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:32,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:40:32,825.825 INFO    ] No update needed
[2026-06-19 22:40:32,828.828 INFO    ] Checking for camera pi updates...
[2026-06-19 22:40:32,863.863 INFO    ] 200
[2026-06-19 22:40:32,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:32,911.911 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:40:32,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:40:32,947.947 INFO    ] No camera update needed
[2026-06-19 22:40:32,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:40:32,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:40:32,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:40:32,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:40:35,007.007 INFO    ] ================================================
[2026-06-19 22:40:35,023.023 INFO    ] Launching Daemon at Fri Jun 19 22:40:35 IST 2026
[2026-06-19 22:40:35,033.033 INFO    ] ================================================
[2026-06-19 22:40:35,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:40:35
[2026-06-19 22:40:36,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:40:36,480.480 INFO    ] Initializing speech engine...
[2026-06-19 22:40:36,488.488 INFO    ] 2026-06-19 22:40:36
[2026-06-19 22:40:36,748.748 INFO    ] 2026-06-19 22:40:36
[2026-06-19 22:40:36,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:40:37,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:40:37,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:40:37,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:40:37,219.219 INFO    ] time= 19/06/2026 22:40:37
[2026-06-19 22:40:37,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:40:37,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:40:37,361.361 INFO    ] No existing commands found in stream
[2026-06-19 22:40:42,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:40:42,389.389 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 22:40:44,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:40:44,522.522 INFO    ] Checking for system updates...
[2026-06-19 22:40:44,562.562 INFO    ] 200
[2026-06-19 22:40:44,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:44,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:40:44,620.620 INFO    ] No update needed
[2026-06-19 22:40:44,622.622 INFO    ] Checking for camera pi updates...
[2026-06-19 22:40:44,660.660 INFO    ] 200
[2026-06-19 22:40:44,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:44,704.704 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:40:44,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:40:44,752.752 INFO    ] No camera update needed
[2026-06-19 22:40:44,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:40:44,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:40:44,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:40:44,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:40:46,810.810 INFO    ] ================================================
[2026-06-19 22:40:46,826.826 INFO    ] Launching Daemon at Fri Jun 19 22:40:46 IST 2026
[2026-06-19 22:40:46,837.837 INFO    ] ================================================
[2026-06-19 22:40:47,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:40:47
[2026-06-19 22:40:48,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:40:48,455.455 INFO    ] Initializing speech engine...
[2026-06-19 22:40:48,468.468 INFO    ] 2026-06-19 22:40:48
[2026-06-19 22:40:48,733.733 INFO    ] 2026-06-19 22:40:48
[2026-06-19 22:40:48,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:40:49,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:40:49,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:40:49,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:40:49,219.219 INFO    ] time= 19/06/2026 22:40:49
[2026-06-19 22:40:49,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:40:49,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:40:49,369.369 INFO    ] No existing commands found in stream
[2026-06-19 22:40:54,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:40:54,389.389 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-19 22:40:55,322.322 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:40:55,325.325 INFO    ] Checking for system updates...
[2026-06-19 22:40:55,362.362 INFO    ] 200
[2026-06-19 22:40:55,365.365 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:55,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:40:55,421.421 INFO    ] No update needed
[2026-06-19 22:40:55,424.424 INFO    ] Checking for camera pi updates...
[2026-06-19 22:40:55,462.462 INFO    ] 200
[2026-06-19 22:40:55,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:40:55,511.511 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:40:55,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:40:55,569.569 INFO    ] No camera update needed
[2026-06-19 22:40:55,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:40:55,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:40:55,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:40:55,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:40:57,628.628 INFO    ] ================================================
[2026-06-19 22:40:57,643.643 INFO    ] Launching Daemon at Fri Jun 19 22:40:57 IST 2026
[2026-06-19 22:40:57,653.653 INFO    ] ================================================
[2026-06-19 22:40:58,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:40:58
[2026-06-19 22:40:58,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:40:59,068.068 INFO    ] Initializing speech engine...
[2026-06-19 22:40:59,075.075 INFO    ] 2026-06-19 22:40:59
[2026-06-19 22:40:59,367.367 INFO    ] 2026-06-19 22:40:59
[2026-06-19 22:40:59,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:40:59,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:40:59,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:40:59,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:40:59,742.742 INFO    ] time= 19/06/2026 22:40:59
[2026-06-19 22:40:59,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:40:59,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:40:59,867.867 INFO    ] No existing commands found in stream
[2026-06-19 22:41:04,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:41:04,882.882 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-19 22:41:05,460.460 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:41:05,462.462 INFO    ] Checking for system updates...
[2026-06-19 22:41:05,499.499 INFO    ] 200
[2026-06-19 22:41:05,501.501 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:05,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:41:05,557.557 INFO    ] No update needed
[2026-06-19 22:41:05,559.559 INFO    ] Checking for camera pi updates...
[2026-06-19 22:41:05,594.594 INFO    ] 200
[2026-06-19 22:41:05,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:05,637.637 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:41:05,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:41:05,696.696 INFO    ] No camera update needed
[2026-06-19 22:41:05,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:41:05,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:41:05,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:41:05,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:41:07,750.750 INFO    ] ================================================
[2026-06-19 22:41:07,765.765 INFO    ] Launching Daemon at Fri Jun 19 22:41:07 IST 2026
[2026-06-19 22:41:07,776.776 INFO    ] ================================================
[2026-06-19 22:41:08,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:41:08
[2026-06-19 22:41:09,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:41:09,373.373 INFO    ] Initializing speech engine...
[2026-06-19 22:41:09,387.387 INFO    ] 2026-06-19 22:41:09
[2026-06-19 22:41:09,669.669 INFO    ] 2026-06-19 22:41:09
[2026-06-19 22:41:09,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:41:09,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:41:09,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:41:10,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:41:10,202.202 INFO    ] time= 19/06/2026 22:41:10
[2026-06-19 22:41:10,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:41:10,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:41:10,357.357 INFO    ] No existing commands found in stream
[2026-06-19 22:41:15,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:41:15,390.390 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 22:41:16,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:41:16,100.100 INFO    ] Checking for system updates...
[2026-06-19 22:41:16,138.138 INFO    ] 200
[2026-06-19 22:41:16,140.140 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:16,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:41:16,201.201 INFO    ] No update needed
[2026-06-19 22:41:16,204.204 INFO    ] Checking for camera pi updates...
[2026-06-19 22:41:16,238.238 INFO    ] 200
[2026-06-19 22:41:16,240.240 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:16,281.281 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:41:16,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:41:16,326.326 INFO    ] No camera update needed
[2026-06-19 22:41:16,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:41:16,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:41:16,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:41:16,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:41:18,382.382 INFO    ] ================================================
[2026-06-19 22:41:18,398.398 INFO    ] Launching Daemon at Fri Jun 19 22:41:18 IST 2026
[2026-06-19 22:41:18,409.409 INFO    ] ================================================
[2026-06-19 22:41:19,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:41:19
[2026-06-19 22:41:19,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:41:19,953.953 INFO    ] Initializing speech engine...
[2026-06-19 22:41:19,964.964 INFO    ] 2026-06-19 22:41:19
[2026-06-19 22:41:20,213.213 INFO    ] 2026-06-19 22:41:20
[2026-06-19 22:41:20,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:41:20,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:41:20,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:41:20,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:41:20,649.649 INFO    ] time= 19/06/2026 22:41:20
[2026-06-19 22:41:20,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:41:20,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:41:20,802.802 INFO    ] No existing commands found in stream
[2026-06-19 22:41:25,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:41:25,816.816 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 22:41:28,717.717 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:41:28,719.719 INFO    ] Checking for system updates...
[2026-06-19 22:41:28,755.755 INFO    ] 200
[2026-06-19 22:41:28,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:28,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:41:28,814.814 INFO    ] No update needed
[2026-06-19 22:41:28,816.816 INFO    ] Checking for camera pi updates...
[2026-06-19 22:41:28,850.850 INFO    ] 200
[2026-06-19 22:41:28,853.853 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:28,894.894 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:41:28,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:41:28,950.950 INFO    ] No camera update needed
[2026-06-19 22:41:28,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:41:28,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:41:28,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:41:28,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:41:31,004.004 INFO    ] ================================================
[2026-06-19 22:41:31,019.019 INFO    ] Launching Daemon at Fri Jun 19 22:41:31 IST 2026
[2026-06-19 22:41:31,029.029 INFO    ] ================================================
[2026-06-19 22:41:31,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:41:31
[2026-06-19 22:41:32,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:41:32,573.573 INFO    ] Initializing speech engine...
[2026-06-19 22:41:32,583.583 INFO    ] 2026-06-19 22:41:32
[2026-06-19 22:41:32,852.852 INFO    ] 2026-06-19 22:41:32
[2026-06-19 22:41:32,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:41:33,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:41:33,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:41:33,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:41:33,260.260 INFO    ] time= 19/06/2026 22:41:33
[2026-06-19 22:41:33,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:41:33,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:41:33,348.348 INFO    ] No existing commands found in stream
[2026-06-19 22:41:38,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:41:38,363.363 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-19 22:41:42,394.394 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:41:42,397.397 INFO    ] Checking for system updates...
[2026-06-19 22:41:42,436.436 INFO    ] 200
[2026-06-19 22:41:42,439.439 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:42,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:41:42,497.497 INFO    ] No update needed
[2026-06-19 22:41:42,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 22:41:42,533.533 INFO    ] 200
[2026-06-19 22:41:42,536.536 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:42,578.578 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:41:42,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:41:42,629.629 INFO    ] No camera update needed
[2026-06-19 22:41:42,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:41:42,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:41:42,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:41:42,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:41:44,684.684 INFO    ] ================================================
[2026-06-19 22:41:44,699.699 INFO    ] Launching Daemon at Fri Jun 19 22:41:44 IST 2026
[2026-06-19 22:41:44,710.710 INFO    ] ================================================
[2026-06-19 22:41:45,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:41:45
[2026-06-19 22:41:45,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:41:46,140.140 INFO    ] Initializing speech engine...
[2026-06-19 22:41:46,147.147 INFO    ] 2026-06-19 22:41:46
[2026-06-19 22:41:46,405.405 INFO    ] 2026-06-19 22:41:46
[2026-06-19 22:41:46,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:41:46,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:41:46,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:41:46,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:41:46,905.905 INFO    ] time= 19/06/2026 22:41:46
[2026-06-19 22:41:46,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:41:46,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:41:47,107.107 INFO    ] No existing commands found in stream
[2026-06-19 22:41:52,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:41:52,137.137 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-19 22:41:54,496.496 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:41:54,499.499 INFO    ] Checking for system updates...
[2026-06-19 22:41:54,536.536 INFO    ] 200
[2026-06-19 22:41:54,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:54,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:41:54,597.597 INFO    ] No update needed
[2026-06-19 22:41:54,600.600 INFO    ] Checking for camera pi updates...
[2026-06-19 22:41:54,637.637 INFO    ] 200
[2026-06-19 22:41:54,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:41:54,679.679 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:41:54,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:41:54,824.824 INFO    ] No camera update needed
[2026-06-19 22:41:54,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:41:54,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:41:54,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:41:54,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:41:56,880.880 INFO    ] ================================================
[2026-06-19 22:41:56,899.899 INFO    ] Launching Daemon at Fri Jun 19 22:41:56 IST 2026
[2026-06-19 22:41:56,909.909 INFO    ] ================================================
[2026-06-19 22:41:57,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:41:57
[2026-06-19 22:41:58,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:41:58,503.503 INFO    ] Initializing speech engine...
[2026-06-19 22:41:58,509.509 INFO    ] 2026-06-19 22:41:58
[2026-06-19 22:41:58,782.782 INFO    ] 2026-06-19 22:41:58
[2026-06-19 22:41:58,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:41:59,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:41:59,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:41:59,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:41:59,264.264 INFO    ] time= 19/06/2026 22:41:59
[2026-06-19 22:41:59,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:41:59,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:41:59,400.400 INFO    ] No existing commands found in stream
[2026-06-19 22:42:04,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:42:04,415.415 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-19 22:42:08,290.290 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:42:08,293.293 INFO    ] Checking for system updates...
[2026-06-19 22:42:08,329.329 INFO    ] 200
[2026-06-19 22:42:08,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:08,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:42:08,387.387 INFO    ] No update needed
[2026-06-19 22:42:08,389.389 INFO    ] Checking for camera pi updates...
[2026-06-19 22:42:08,423.423 INFO    ] 200
[2026-06-19 22:42:08,426.426 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:08,469.469 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:42:08,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:42:08,530.530 INFO    ] No camera update needed
[2026-06-19 22:42:08,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:42:08,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:42:08,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:42:08,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:42:10,585.585 INFO    ] ================================================
[2026-06-19 22:42:10,600.600 INFO    ] Launching Daemon at Fri Jun 19 22:42:10 IST 2026
[2026-06-19 22:42:10,610.610 INFO    ] ================================================
[2026-06-19 22:42:11,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:42:11
[2026-06-19 22:42:11,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:42:12,019.019 INFO    ] Initializing speech engine...
[2026-06-19 22:42:12,024.024 INFO    ] 2026-06-19 22:42:12
[2026-06-19 22:42:12,296.296 INFO    ] 2026-06-19 22:42:12
[2026-06-19 22:42:12,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:42:12,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:42:12,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:42:12,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:42:12,671.671 INFO    ] time= 19/06/2026 22:42:12
[2026-06-19 22:42:12,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:42:12,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:42:12,746.746 INFO    ] No existing commands found in stream
[2026-06-19 22:42:17,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:42:17,762.762 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-19 22:42:18,557.557 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:42:18,560.560 INFO    ] Checking for system updates...
[2026-06-19 22:42:18,599.599 INFO    ] 200
[2026-06-19 22:42:18,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:18,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:42:18,656.656 INFO    ] No update needed
[2026-06-19 22:42:18,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 22:42:18,693.693 INFO    ] 200
[2026-06-19 22:42:18,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:18,736.736 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:42:18,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:42:18,785.785 INFO    ] No camera update needed
[2026-06-19 22:42:18,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:42:18,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:42:18,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:42:18,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:42:20,842.842 INFO    ] ================================================
[2026-06-19 22:42:20,857.857 INFO    ] Launching Daemon at Fri Jun 19 22:42:20 IST 2026
[2026-06-19 22:42:20,867.867 INFO    ] ================================================
[2026-06-19 22:42:21,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:42:21
[2026-06-19 22:42:22,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:42:22,321.321 INFO    ] Initializing speech engine...
[2026-06-19 22:42:22,337.337 INFO    ] 2026-06-19 22:42:22
[2026-06-19 22:42:22,604.604 INFO    ] 2026-06-19 22:42:22
[2026-06-19 22:42:22,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:42:22,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:42:22,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:42:22,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:42:23,011.011 INFO    ] time= 19/06/2026 22:42:23
[2026-06-19 22:42:23,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:42:23,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:42:23,094.094 INFO    ] No existing commands found in stream
[2026-06-19 22:42:28,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:42:28,110.110 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 22:42:29,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:42:29,081.081 INFO    ] Checking for system updates...
[2026-06-19 22:42:29,122.122 INFO    ] 200
[2026-06-19 22:42:29,125.125 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:29,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:42:29,186.186 INFO    ] No update needed
[2026-06-19 22:42:29,189.189 INFO    ] Checking for camera pi updates...
[2026-06-19 22:42:29,224.224 INFO    ] 200
[2026-06-19 22:42:29,227.227 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:29,267.267 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:42:29,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:42:29,327.327 INFO    ] No camera update needed
[2026-06-19 22:42:29,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:42:29,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:42:29,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:42:29,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:42:31,383.383 INFO    ] ================================================
[2026-06-19 22:42:31,400.400 INFO    ] Launching Daemon at Fri Jun 19 22:42:31 IST 2026
[2026-06-19 22:42:31,413.413 INFO    ] ================================================
[2026-06-19 22:42:32,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:42:32
[2026-06-19 22:42:32,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:42:32,896.896 INFO    ] Initializing speech engine...
[2026-06-19 22:42:32,904.904 INFO    ] 2026-06-19 22:42:32
[2026-06-19 22:42:33,191.191 INFO    ] 2026-06-19 22:42:33
[2026-06-19 22:42:33,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:42:33,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:42:33,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:42:33,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:42:33,680.680 INFO    ] time= 19/06/2026 22:42:33
[2026-06-19 22:42:33,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:42:33,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:42:33,824.824 INFO    ] No existing commands found in stream
[2026-06-19 22:42:38,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:42:38,847.847 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 22:42:39,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:42:39,307.307 INFO    ] Checking for system updates...
[2026-06-19 22:42:39,348.348 INFO    ] 200
[2026-06-19 22:42:39,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:39,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:42:39,416.416 INFO    ] No update needed
[2026-06-19 22:42:39,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 22:42:39,453.453 INFO    ] 200
[2026-06-19 22:42:39,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:39,499.499 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:42:39,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:42:39,554.554 INFO    ] No camera update needed
[2026-06-19 22:42:39,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:42:39,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:42:39,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:42:39,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:42:41,613.613 INFO    ] ================================================
[2026-06-19 22:42:41,629.629 INFO    ] Launching Daemon at Fri Jun 19 22:42:41 IST 2026
[2026-06-19 22:42:41,640.640 INFO    ] ================================================
[2026-06-19 22:42:42,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:42:42
[2026-06-19 22:42:42,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:42:43,062.062 INFO    ] Initializing speech engine...
[2026-06-19 22:42:43,071.071 INFO    ] 2026-06-19 22:42:43
[2026-06-19 22:42:43,318.318 INFO    ] 2026-06-19 22:42:43
[2026-06-19 22:42:43,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:42:43,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:42:43,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:42:43,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:42:43,686.686 INFO    ] time= 19/06/2026 22:42:43
[2026-06-19 22:42:43,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:42:43,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:42:43,853.853 INFO    ] No existing commands found in stream
[2026-06-19 22:42:48,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:42:48,880.880 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 22:42:50,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:42:50,207.207 INFO    ] Checking for system updates...
[2026-06-19 22:42:50,248.248 INFO    ] 200
[2026-06-19 22:42:50,251.251 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:50,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:42:50,319.319 INFO    ] No update needed
[2026-06-19 22:42:50,322.322 INFO    ] Checking for camera pi updates...
[2026-06-19 22:42:50,360.360 INFO    ] 200
[2026-06-19 22:42:50,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:42:50,406.406 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:42:50,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:42:50,439.439 INFO    ] No camera update needed
[2026-06-19 22:42:50,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:42:50,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:42:50,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:42:50,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:42:52,500.500 INFO    ] ================================================
[2026-06-19 22:42:52,516.516 INFO    ] Launching Daemon at Fri Jun 19 22:42:52 IST 2026
[2026-06-19 22:42:52,526.526 INFO    ] ================================================
[2026-06-19 22:42:53,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:42:53
[2026-06-19 22:42:53,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:42:54,095.095 INFO    ] Initializing speech engine...
[2026-06-19 22:42:54,109.109 INFO    ] 2026-06-19 22:42:54
[2026-06-19 22:42:54,371.371 INFO    ] 2026-06-19 22:42:54
[2026-06-19 22:42:54,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:42:54,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:42:54,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:42:54,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:42:54,854.854 INFO    ] time= 19/06/2026 22:42:54
[2026-06-19 22:42:54,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:42:54,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:42:55,046.046 INFO    ] No existing commands found in stream
[2026-06-19 22:43:00,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:43:00,070.070 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 22:43:03,351.351 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:43:03,353.353 INFO    ] Checking for system updates...
[2026-06-19 22:43:03,390.390 INFO    ] 200
[2026-06-19 22:43:03,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:03,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:43:03,448.448 INFO    ] No update needed
[2026-06-19 22:43:03,450.450 INFO    ] Checking for camera pi updates...
[2026-06-19 22:43:03,487.487 INFO    ] 200
[2026-06-19 22:43:03,489.489 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:03,534.534 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:43:03,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:43:03,568.568 INFO    ] No camera update needed
[2026-06-19 22:43:03,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:43:03,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:43:03,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:43:03,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:43:05,624.624 INFO    ] ================================================
[2026-06-19 22:43:05,639.639 INFO    ] Launching Daemon at Fri Jun 19 22:43:05 IST 2026
[2026-06-19 22:43:05,650.650 INFO    ] ================================================
[2026-06-19 22:43:06,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:43:06
[2026-06-19 22:43:06,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:43:07,159.159 INFO    ] Initializing speech engine...
[2026-06-19 22:43:07,168.168 INFO    ] 2026-06-19 22:43:07
[2026-06-19 22:43:07,426.426 INFO    ] 2026-06-19 22:43:07
[2026-06-19 22:43:07,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:43:07,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:43:07,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:43:07,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:43:07,782.782 INFO    ] time= 19/06/2026 22:43:07
[2026-06-19 22:43:07,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:43:07,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:43:07,957.957 INFO    ] No existing commands found in stream
[2026-06-19 22:43:12,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:43:12,990.990 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 22:43:16,465.465 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:43:16,468.468 INFO    ] Checking for system updates...
[2026-06-19 22:43:16,504.504 INFO    ] 200
[2026-06-19 22:43:16,507.507 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:16,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:43:16,561.561 INFO    ] No update needed
[2026-06-19 22:43:16,564.564 INFO    ] Checking for camera pi updates...
[2026-06-19 22:43:16,599.599 INFO    ] 200
[2026-06-19 22:43:16,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:16,645.645 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:43:16,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:43:16,695.695 INFO    ] No camera update needed
[2026-06-19 22:43:16,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:43:16,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:43:16,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:43:16,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:43:18,750.750 INFO    ] ================================================
[2026-06-19 22:43:18,765.765 INFO    ] Launching Daemon at Fri Jun 19 22:43:18 IST 2026
[2026-06-19 22:43:18,776.776 INFO    ] ================================================
[2026-06-19 22:43:19,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:43:19
[2026-06-19 22:43:20,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:43:20,371.371 INFO    ] Initializing speech engine...
[2026-06-19 22:43:20,385.385 INFO    ] 2026-06-19 22:43:20
[2026-06-19 22:43:20,693.693 INFO    ] 2026-06-19 22:43:20
[2026-06-19 22:43:20,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:43:20,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:43:20,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:43:21,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:43:21,195.195 INFO    ] time= 19/06/2026 22:43:21
[2026-06-19 22:43:21,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:43:21,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:43:21,333.333 INFO    ] No existing commands found in stream
[2026-06-19 22:43:26,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:43:26,362.362 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 22:43:30,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:43:30,542.542 INFO    ] Checking for system updates...
[2026-06-19 22:43:30,580.580 INFO    ] 200
[2026-06-19 22:43:30,583.583 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:30,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:43:30,639.639 INFO    ] No update needed
[2026-06-19 22:43:30,642.642 INFO    ] Checking for camera pi updates...
[2026-06-19 22:43:30,676.676 INFO    ] 200
[2026-06-19 22:43:30,679.679 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:30,723.723 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:43:30,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:43:30,771.771 INFO    ] No camera update needed
[2026-06-19 22:43:30,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:43:30,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:43:30,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:43:30,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:43:32,827.827 INFO    ] ================================================
[2026-06-19 22:43:32,842.842 INFO    ] Launching Daemon at Fri Jun 19 22:43:32 IST 2026
[2026-06-19 22:43:32,852.852 INFO    ] ================================================
[2026-06-19 22:43:33,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:43:33
[2026-06-19 22:43:34,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:43:34,316.316 INFO    ] Initializing speech engine...
[2026-06-19 22:43:34,324.324 INFO    ] 2026-06-19 22:43:34
[2026-06-19 22:43:34,595.595 INFO    ] 2026-06-19 22:43:34
[2026-06-19 22:43:34,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:43:34,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:43:34,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:43:35,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:43:35,122.122 INFO    ] time= 19/06/2026 22:43:35
[2026-06-19 22:43:35,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:43:35,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:43:35,256.256 INFO    ] No existing commands found in stream
[2026-06-19 22:43:40,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:43:40,286.286 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 22:43:43,069.069 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:43:43,072.072 INFO    ] Checking for system updates...
[2026-06-19 22:43:43,108.108 INFO    ] 200
[2026-06-19 22:43:43,111.111 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:43,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:43:43,171.171 INFO    ] No update needed
[2026-06-19 22:43:43,173.173 INFO    ] Checking for camera pi updates...
[2026-06-19 22:43:43,212.212 INFO    ] 200
[2026-06-19 22:43:43,215.215 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:43,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:43:43,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:43:43,300.300 INFO    ] No camera update needed
[2026-06-19 22:43:43,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:43:43,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:43:43,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:43:43,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:43:45,356.356 INFO    ] ================================================
[2026-06-19 22:43:45,372.372 INFO    ] Launching Daemon at Fri Jun 19 22:43:45 IST 2026
[2026-06-19 22:43:45,382.382 INFO    ] ================================================
[2026-06-19 22:43:45,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:43:45
[2026-06-19 22:43:46,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:43:46,809.809 INFO    ] Initializing speech engine...
[2026-06-19 22:43:46,818.818 INFO    ] 2026-06-19 22:43:46
[2026-06-19 22:43:47,076.076 INFO    ] 2026-06-19 22:43:47
[2026-06-19 22:43:47,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:43:47,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:43:47,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:43:47,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:43:47,558.558 INFO    ] time= 19/06/2026 22:43:47
[2026-06-19 22:43:47,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:43:47,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:43:47,746.746 INFO    ] No existing commands found in stream
[2026-06-19 22:43:52,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:43:52,781.781 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 22:43:54,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:43:54,561.561 INFO    ] Checking for system updates...
[2026-06-19 22:43:54,598.598 INFO    ] 200
[2026-06-19 22:43:54,601.601 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:54,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:43:54,661.661 INFO    ] No update needed
[2026-06-19 22:43:54,664.664 INFO    ] Checking for camera pi updates...
[2026-06-19 22:43:54,701.701 INFO    ] 200
[2026-06-19 22:43:54,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:43:54,744.744 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:43:54,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:43:54,812.812 INFO    ] No camera update needed
[2026-06-19 22:43:54,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:43:54,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:43:54,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:43:54,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:43:56,866.866 INFO    ] ================================================
[2026-06-19 22:43:56,882.882 INFO    ] Launching Daemon at Fri Jun 19 22:43:56 IST 2026
[2026-06-19 22:43:56,893.893 INFO    ] ================================================
[2026-06-19 22:43:57,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:43:57
[2026-06-19 22:43:58,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:43:58,325.325 INFO    ] Initializing speech engine...
[2026-06-19 22:43:58,333.333 INFO    ] 2026-06-19 22:43:58
[2026-06-19 22:43:58,585.585 INFO    ] 2026-06-19 22:43:58
[2026-06-19 22:43:58,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:43:58,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:43:58,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:43:58,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:43:58,963.963 INFO    ] time= 19/06/2026 22:43:58
[2026-06-19 22:43:58,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:43:58,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:43:59,039.039 INFO    ] No existing commands found in stream
[2026-06-19 22:44:04,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:44:04,054.054 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 22:44:06,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:44:06,665.665 INFO    ] Checking for system updates...
[2026-06-19 22:44:06,705.705 INFO    ] 200
[2026-06-19 22:44:06,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:06,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:44:06,774.774 INFO    ] No update needed
[2026-06-19 22:44:06,777.777 INFO    ] Checking for camera pi updates...
[2026-06-19 22:44:06,813.813 INFO    ] 200
[2026-06-19 22:44:06,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:06,861.861 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:44:06,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:44:06,911.911 INFO    ] No camera update needed
[2026-06-19 22:44:06,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:44:06,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:44:06,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:44:06,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:44:08,966.966 INFO    ] ================================================
[2026-06-19 22:44:08,981.981 INFO    ] Launching Daemon at Fri Jun 19 22:44:08 IST 2026
[2026-06-19 22:44:08,992.992 INFO    ] ================================================
[2026-06-19 22:44:09,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:44:09
[2026-06-19 22:44:10,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:44:10,452.452 INFO    ] Initializing speech engine...
[2026-06-19 22:44:10,461.461 INFO    ] 2026-06-19 22:44:10
[2026-06-19 22:44:10,719.719 INFO    ] 2026-06-19 22:44:10
[2026-06-19 22:44:10,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:44:11,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:44:11,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:44:11,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:44:11,183.183 INFO    ] time= 19/06/2026 22:44:11
[2026-06-19 22:44:11,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:44:11,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:44:11,355.355 INFO    ] No existing commands found in stream
[2026-06-19 22:44:16,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:44:16,394.394 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 22:44:18,603.603 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:44:18,606.606 INFO    ] Checking for system updates...
[2026-06-19 22:44:18,645.645 INFO    ] 200
[2026-06-19 22:44:18,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:18,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:44:18,708.708 INFO    ] No update needed
[2026-06-19 22:44:18,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 22:44:18,744.744 INFO    ] 200
[2026-06-19 22:44:18,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:18,788.788 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:44:18,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:44:18,831.831 INFO    ] No camera update needed
[2026-06-19 22:44:18,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:44:18,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:44:18,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:44:18,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:44:20,888.888 INFO    ] ================================================
[2026-06-19 22:44:20,904.904 INFO    ] Launching Daemon at Fri Jun 19 22:44:20 IST 2026
[2026-06-19 22:44:20,915.915 INFO    ] ================================================
[2026-06-19 22:44:21,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:44:21
[2026-06-19 22:44:22,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:44:22,338.338 INFO    ] Initializing speech engine...
[2026-06-19 22:44:22,348.348 INFO    ] 2026-06-19 22:44:22
[2026-06-19 22:44:22,592.592 INFO    ] 2026-06-19 22:44:22
[2026-06-19 22:44:22,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:44:22,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:44:22,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:44:22,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:44:22,992.992 INFO    ] time= 19/06/2026 22:44:22
[2026-06-19 22:44:23,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:44:23,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:44:23,168.168 INFO    ] No existing commands found in stream
[2026-06-19 22:44:28,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:44:28,201.201 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-19 22:44:31,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:44:31,611.611 INFO    ] Checking for system updates...
[2026-06-19 22:44:31,649.649 INFO    ] 200
[2026-06-19 22:44:31,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:31,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:44:31,744.744 INFO    ] No update needed
[2026-06-19 22:44:31,747.747 INFO    ] Checking for camera pi updates...
[2026-06-19 22:44:31,790.790 INFO    ] 200
[2026-06-19 22:44:31,793.793 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:31,842.842 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:44:31,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:44:31,883.883 INFO    ] No camera update needed
[2026-06-19 22:44:31,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:44:31,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:44:31,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:44:31,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:44:33,941.941 INFO    ] ================================================
[2026-06-19 22:44:33,957.957 INFO    ] Launching Daemon at Fri Jun 19 22:44:33 IST 2026
[2026-06-19 22:44:33,968.968 INFO    ] ================================================
[2026-06-19 22:44:34,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:44:34
[2026-06-19 22:44:35,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:44:35,365.365 INFO    ] Initializing speech engine...
[2026-06-19 22:44:35,380.380 INFO    ] 2026-06-19 22:44:35
[2026-06-19 22:44:35,646.646 INFO    ] 2026-06-19 22:44:35
[2026-06-19 22:44:35,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:44:35,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:44:35,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:44:36,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:44:36,021.021 INFO    ] time= 19/06/2026 22:44:36
[2026-06-19 22:44:36,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:44:36,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:44:36,100.100 INFO    ] No existing commands found in stream
[2026-06-19 22:44:41,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:44:41,128.128 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 22:44:42,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:44:42,098.098 INFO    ] Checking for system updates...
[2026-06-19 22:44:42,136.136 INFO    ] 200
[2026-06-19 22:44:42,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:42,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:44:42,198.198 INFO    ] No update needed
[2026-06-19 22:44:42,200.200 INFO    ] Checking for camera pi updates...
[2026-06-19 22:44:42,234.234 INFO    ] 200
[2026-06-19 22:44:42,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:42,277.277 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:44:42,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:44:42,323.323 INFO    ] No camera update needed
[2026-06-19 22:44:42,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:44:42,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:44:42,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:44:42,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:44:44,380.380 INFO    ] ================================================
[2026-06-19 22:44:44,396.396 INFO    ] Launching Daemon at Fri Jun 19 22:44:44 IST 2026
[2026-06-19 22:44:44,407.407 INFO    ] ================================================
[2026-06-19 22:44:44,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:44:44
[2026-06-19 22:44:45,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:44:45,839.839 INFO    ] Initializing speech engine...
[2026-06-19 22:44:45,852.852 INFO    ] 2026-06-19 22:44:45
[2026-06-19 22:44:46,103.103 INFO    ] 2026-06-19 22:44:46
[2026-06-19 22:44:46,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:44:46,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:44:46,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:44:46,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:44:46,578.578 INFO    ] time= 19/06/2026 22:44:46
[2026-06-19 22:44:46,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:44:46,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:44:46,731.731 INFO    ] No existing commands found in stream
[2026-06-19 22:44:51,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:44:51,746.746 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-19 22:44:54,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:44:54,667.667 INFO    ] Checking for system updates...
[2026-06-19 22:44:54,706.706 INFO    ] 200
[2026-06-19 22:44:54,708.708 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:54,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:44:54,768.768 INFO    ] No update needed
[2026-06-19 22:44:54,770.770 INFO    ] Checking for camera pi updates...
[2026-06-19 22:44:54,806.806 INFO    ] 200
[2026-06-19 22:44:54,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:44:54,849.849 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:44:54,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:44:54,893.893 INFO    ] No camera update needed
[2026-06-19 22:44:54,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:44:54,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:44:54,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:44:54,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:44:56,949.949 INFO    ] ================================================
[2026-06-19 22:44:56,963.963 INFO    ] Launching Daemon at Fri Jun 19 22:44:56 IST 2026
[2026-06-19 22:44:56,974.974 INFO    ] ================================================
[2026-06-19 22:44:57,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:44:57
[2026-06-19 22:44:58,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:44:58,388.388 INFO    ] Initializing speech engine...
[2026-06-19 22:44:58,397.397 INFO    ] 2026-06-19 22:44:58
[2026-06-19 22:44:58,642.642 INFO    ] 2026-06-19 22:44:58
[2026-06-19 22:44:58,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:44:58,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:44:58,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:44:59,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:44:59,024.024 INFO    ] time= 19/06/2026 22:44:59
[2026-06-19 22:44:59,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:44:59,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:44:59,108.108 INFO    ] No existing commands found in stream
[2026-06-19 22:45:04,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:45:04,146.146 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 22:45:05,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:45:05,687.687 INFO    ] Checking for system updates...
[2026-06-19 22:45:05,727.727 INFO    ] 200
[2026-06-19 22:45:05,729.729 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:05,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:45:05,786.786 INFO    ] No update needed
[2026-06-19 22:45:05,788.788 INFO    ] Checking for camera pi updates...
[2026-06-19 22:45:05,821.821 INFO    ] 200
[2026-06-19 22:45:05,824.824 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:05,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:45:05,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:45:05,922.922 INFO    ] No camera update needed
[2026-06-19 22:45:05,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:45:05,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:45:05,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:45:05,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:45:07,980.980 INFO    ] ================================================
[2026-06-19 22:45:08,995.995 INFO    ] Launching Daemon at Fri Jun 19 22:45:07 IST 2026
[2026-06-19 22:45:08,006.006 INFO    ] ================================================
[2026-06-19 22:45:08,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:45:08
[2026-06-19 22:45:09,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:45:09,447.447 INFO    ] Initializing speech engine...
[2026-06-19 22:45:09,456.456 INFO    ] 2026-06-19 22:45:09
[2026-06-19 22:45:09,752.752 INFO    ] 2026-06-19 22:45:09
[2026-06-19 22:45:09,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:45:09,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:45:09,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:45:10,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:45:10,166.166 INFO    ] time= 19/06/2026 22:45:10
[2026-06-19 22:45:10,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:45:10,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:45:10,253.253 INFO    ] No existing commands found in stream
[2026-06-19 22:45:15,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:45:15,271.271 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 22:45:16,510.510 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:45:16,513.513 INFO    ] Checking for system updates...
[2026-06-19 22:45:16,552.552 INFO    ] 200
[2026-06-19 22:45:16,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:16,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:45:16,617.617 INFO    ] No update needed
[2026-06-19 22:45:16,619.619 INFO    ] Checking for camera pi updates...
[2026-06-19 22:45:16,653.653 INFO    ] 200
[2026-06-19 22:45:16,655.655 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:16,699.699 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:45:16,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:45:16,744.744 INFO    ] No camera update needed
[2026-06-19 22:45:16,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:45:16,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:45:16,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:45:16,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:45:18,801.801 INFO    ] ================================================
[2026-06-19 22:45:18,816.816 INFO    ] Launching Daemon at Fri Jun 19 22:45:18 IST 2026
[2026-06-19 22:45:18,827.827 INFO    ] ================================================
[2026-06-19 22:45:19,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:45:19
[2026-06-19 22:45:19,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:45:20,236.236 INFO    ] Initializing speech engine...
[2026-06-19 22:45:20,259.259 INFO    ] 2026-06-19 22:45:20
[2026-06-19 22:45:20,514.514 INFO    ] 2026-06-19 22:45:20
[2026-06-19 22:45:20,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:45:20,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:45:20,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:45:20,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:45:20,893.893 INFO    ] time= 19/06/2026 22:45:20
[2026-06-19 22:45:20,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:45:20,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:45:21,068.068 INFO    ] No existing commands found in stream
[2026-06-19 22:45:26,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:45:26,101.101 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 22:45:27,050.050 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:45:27,053.053 INFO    ] Checking for system updates...
[2026-06-19 22:45:27,090.090 INFO    ] 200
[2026-06-19 22:45:27,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:27,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:45:27,154.154 INFO    ] No update needed
[2026-06-19 22:45:27,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 22:45:27,193.193 INFO    ] 200
[2026-06-19 22:45:27,196.196 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:27,237.237 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:45:27,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:45:27,295.295 INFO    ] No camera update needed
[2026-06-19 22:45:27,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:45:27,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:45:27,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:45:27,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:45:29,352.352 INFO    ] ================================================
[2026-06-19 22:45:29,367.367 INFO    ] Launching Daemon at Fri Jun 19 22:45:29 IST 2026
[2026-06-19 22:45:29,378.378 INFO    ] ================================================
[2026-06-19 22:45:29,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:45:29
[2026-06-19 22:45:30,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:45:30,808.808 INFO    ] Initializing speech engine...
[2026-06-19 22:45:30,830.830 INFO    ] 2026-06-19 22:45:30
[2026-06-19 22:45:31,084.084 INFO    ] 2026-06-19 22:45:31
[2026-06-19 22:45:31,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:45:31,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:45:31,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:45:31,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:45:31,452.452 INFO    ] time= 19/06/2026 22:45:31
[2026-06-19 22:45:31,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:45:31,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:45:31,530.530 INFO    ] No existing commands found in stream
[2026-06-19 22:45:36,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:45:36,558.558 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 22:45:37,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:45:37,864.864 INFO    ] Checking for system updates...
[2026-06-19 22:45:37,904.904 INFO    ] 200
[2026-06-19 22:45:37,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:37,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:45:37,961.961 INFO    ] No update needed
[2026-06-19 22:45:37,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 22:45:38,000.000 INFO    ] 200
[2026-06-19 22:45:38,003.003 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:38,048.048 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:45:38,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:45:38,082.082 INFO    ] No camera update needed
[2026-06-19 22:45:38,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:45:38,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:45:38,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:45:38,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:45:40,137.137 INFO    ] ================================================
[2026-06-19 22:45:40,152.152 INFO    ] Launching Daemon at Fri Jun 19 22:45:40 IST 2026
[2026-06-19 22:45:40,163.163 INFO    ] ================================================
[2026-06-19 22:45:40,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:45:40
[2026-06-19 22:45:41,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:45:41,778.778 INFO    ] Initializing speech engine...
[2026-06-19 22:45:41,785.785 INFO    ] 2026-06-19 22:45:41
[2026-06-19 22:45:42,076.076 INFO    ] 2026-06-19 22:45:42
[2026-06-19 22:45:42,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:45:42,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:45:42,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:45:42,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:45:42,613.613 INFO    ] time= 19/06/2026 22:45:42
[2026-06-19 22:45:42,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:45:42,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:45:42,766.766 INFO    ] No existing commands found in stream
[2026-06-19 22:45:47,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:45:47,784.784 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-19 22:45:51,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:45:51,690.690 INFO    ] Checking for system updates...
[2026-06-19 22:45:51,731.731 INFO    ] 200
[2026-06-19 22:45:51,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:51,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:45:51,796.796 INFO    ] No update needed
[2026-06-19 22:45:51,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 22:45:51,831.831 INFO    ] 200
[2026-06-19 22:45:51,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:45:51,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:45:51,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:45:51,923.923 INFO    ] No camera update needed
[2026-06-19 22:45:51,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:45:51,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:45:51,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:45:51,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:45:53,978.978 INFO    ] ================================================
[2026-06-19 22:45:53,993.993 INFO    ] Launching Daemon at Fri Jun 19 22:45:53 IST 2026
[2026-06-19 22:45:54,004.004 INFO    ] ================================================
[2026-06-19 22:45:54,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:45:54
[2026-06-19 22:45:55,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:45:55,413.413 INFO    ] Initializing speech engine...
[2026-06-19 22:45:55,422.422 INFO    ] 2026-06-19 22:45:55
[2026-06-19 22:45:55,718.718 INFO    ] 2026-06-19 22:45:55
[2026-06-19 22:45:55,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:45:55,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:45:55,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:45:56,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:45:56,092.092 INFO    ] time= 19/06/2026 22:45:56
[2026-06-19 22:45:56,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:45:56,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:45:56,216.216 INFO    ] No existing commands found in stream
[2026-06-19 22:46:01,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:46:01,231.231 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 22:46:03,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:46:03,994.994 INFO    ] Checking for system updates...
[2026-06-19 22:46:04,034.034 INFO    ] 200
[2026-06-19 22:46:04,037.037 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:04,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:46:04,097.097 INFO    ] No update needed
[2026-06-19 22:46:04,099.099 INFO    ] Checking for camera pi updates...
[2026-06-19 22:46:04,136.136 INFO    ] 200
[2026-06-19 22:46:04,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:04,178.178 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:46:04,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:46:04,324.324 INFO    ] No camera update needed
[2026-06-19 22:46:04,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:46:04,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:46:04,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:46:04,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:46:06,379.379 INFO    ] ================================================
[2026-06-19 22:46:06,394.394 INFO    ] Launching Daemon at Fri Jun 19 22:46:06 IST 2026
[2026-06-19 22:46:06,405.405 INFO    ] ================================================
[2026-06-19 22:46:06,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:46:06
[2026-06-19 22:46:07,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:46:07,825.825 INFO    ] Initializing speech engine...
[2026-06-19 22:46:07,833.833 INFO    ] 2026-06-19 22:46:07
[2026-06-19 22:46:08,077.077 INFO    ] 2026-06-19 22:46:08
[2026-06-19 22:46:08,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:46:08,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:46:08,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:46:08,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:46:08,536.536 INFO    ] time= 19/06/2026 22:46:08
[2026-06-19 22:46:08,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:46:08,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:46:08,690.690 INFO    ] No existing commands found in stream
[2026-06-19 22:46:13,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:46:13,704.704 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-19 22:46:14,578.578 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:46:14,581.581 INFO    ] Checking for system updates...
[2026-06-19 22:46:14,616.616 INFO    ] 200
[2026-06-19 22:46:14,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:14,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:46:14,679.679 INFO    ] No update needed
[2026-06-19 22:46:14,682.682 INFO    ] Checking for camera pi updates...
[2026-06-19 22:46:14,722.722 INFO    ] 200
[2026-06-19 22:46:14,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:14,769.769 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:46:14,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:46:14,827.827 INFO    ] No camera update needed
[2026-06-19 22:46:14,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:46:14,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:46:14,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:46:14,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:46:16,885.885 INFO    ] ================================================
[2026-06-19 22:46:16,901.901 INFO    ] Launching Daemon at Fri Jun 19 22:46:16 IST 2026
[2026-06-19 22:46:16,911.911 INFO    ] ================================================
[2026-06-19 22:46:17,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:46:17
[2026-06-19 22:46:18,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:46:18,406.406 INFO    ] Initializing speech engine...
[2026-06-19 22:46:18,415.415 INFO    ] 2026-06-19 22:46:18
[2026-06-19 22:46:18,669.669 INFO    ] 2026-06-19 22:46:18
[2026-06-19 22:46:18,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:46:18,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:46:18,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:46:19,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:46:19,148.148 INFO    ] time= 19/06/2026 22:46:19
[2026-06-19 22:46:19,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:46:19,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:46:19,332.332 INFO    ] No existing commands found in stream
[2026-06-19 22:46:24,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:46:24,347.347 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-19 22:46:26,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:46:26,317.317 INFO    ] Checking for system updates...
[2026-06-19 22:46:26,361.361 INFO    ] 200
[2026-06-19 22:46:26,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:26,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:46:26,421.421 INFO    ] No update needed
[2026-06-19 22:46:26,423.423 INFO    ] Checking for camera pi updates...
[2026-06-19 22:46:26,461.461 INFO    ] 200
[2026-06-19 22:46:26,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:26,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:46:26,552.552 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:46:26,554.554 INFO    ] No camera update needed
[2026-06-19 22:46:26,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:46:26,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:46:26,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:46:26,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:46:28,609.609 INFO    ] ================================================
[2026-06-19 22:46:28,624.624 INFO    ] Launching Daemon at Fri Jun 19 22:46:28 IST 2026
[2026-06-19 22:46:28,635.635 INFO    ] ================================================
[2026-06-19 22:46:29,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:46:29
[2026-06-19 22:46:29,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:46:30,086.086 INFO    ] Initializing speech engine...
[2026-06-19 22:46:30,096.096 INFO    ] 2026-06-19 22:46:30
[2026-06-19 22:46:30,365.365 INFO    ] 2026-06-19 22:46:30
[2026-06-19 22:46:30,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:46:30,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:46:30,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:46:30,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:46:30,776.776 INFO    ] time= 19/06/2026 22:46:30
[2026-06-19 22:46:30,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:46:30,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:46:30,942.942 INFO    ] No existing commands found in stream
[2026-06-19 22:46:35,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:46:35,966.966 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 22:46:38,553.553 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:46:38,555.555 INFO    ] Checking for system updates...
[2026-06-19 22:46:38,592.592 INFO    ] 200
[2026-06-19 22:46:38,594.594 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:38,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:46:38,655.655 INFO    ] No update needed
[2026-06-19 22:46:38,657.657 INFO    ] Checking for camera pi updates...
[2026-06-19 22:46:38,692.692 INFO    ] 200
[2026-06-19 22:46:38,694.694 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:38,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:46:38,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:46:38,771.771 INFO    ] No camera update needed
[2026-06-19 22:46:38,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:46:38,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:46:38,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:46:38,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:46:40,828.828 INFO    ] ================================================
[2026-06-19 22:46:40,843.843 INFO    ] Launching Daemon at Fri Jun 19 22:46:40 IST 2026
[2026-06-19 22:46:40,853.853 INFO    ] ================================================
[2026-06-19 22:46:41,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:46:41
[2026-06-19 22:46:42,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:46:42,315.315 INFO    ] Initializing speech engine...
[2026-06-19 22:46:42,335.335 INFO    ] 2026-06-19 22:46:42
[2026-06-19 22:46:42,592.592 INFO    ] 2026-06-19 22:46:42
[2026-06-19 22:46:42,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:46:42,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:46:42,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:46:43,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:46:43,069.069 INFO    ] time= 19/06/2026 22:46:43
[2026-06-19 22:46:43,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:46:43,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:46:43,194.194 INFO    ] No existing commands found in stream
[2026-06-19 22:46:48,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:46:48,209.209 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 22:46:51,865.865 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:46:51,867.867 INFO    ] Checking for system updates...
[2026-06-19 22:46:51,905.905 INFO    ] 200
[2026-06-19 22:46:51,908.908 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:51,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:46:51,964.964 INFO    ] No update needed
[2026-06-19 22:46:51,967.967 INFO    ] Checking for camera pi updates...
[2026-06-19 22:46:52,000.000 INFO    ] 200
[2026-06-19 22:46:52,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:46:52,044.044 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:46:52,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:46:52,099.099 INFO    ] No camera update needed
[2026-06-19 22:46:52,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:46:52,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:46:52,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:46:52,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:46:54,155.155 INFO    ] ================================================
[2026-06-19 22:46:54,170.170 INFO    ] Launching Daemon at Fri Jun 19 22:46:54 IST 2026
[2026-06-19 22:46:54,181.181 INFO    ] ================================================
[2026-06-19 22:46:54,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:46:54
[2026-06-19 22:46:55,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:46:55,742.742 INFO    ] Initializing speech engine...
[2026-06-19 22:46:55,749.749 INFO    ] 2026-06-19 22:46:55
[2026-06-19 22:46:56,007.007 INFO    ] 2026-06-19 22:46:56
[2026-06-19 22:46:56,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:46:56,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:46:56,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:46:56,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:46:56,501.501 INFO    ] time= 19/06/2026 22:46:56
[2026-06-19 22:46:56,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:46:56,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:46:56,663.663 INFO    ] No existing commands found in stream
[2026-06-19 22:47:01,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:47:01,701.701 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 22:47:05,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:47:05,219.219 INFO    ] Checking for system updates...
[2026-06-19 22:47:05,259.259 INFO    ] 200
[2026-06-19 22:47:05,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:05,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:47:05,322.322 INFO    ] No update needed
[2026-06-19 22:47:05,325.325 INFO    ] Checking for camera pi updates...
[2026-06-19 22:47:05,364.364 INFO    ] 200
[2026-06-19 22:47:05,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:05,433.433 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:47:05,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:47:05,484.484 INFO    ] No camera update needed
[2026-06-19 22:47:05,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:47:05,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:47:05,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:47:05,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:47:07,542.542 INFO    ] ================================================
[2026-06-19 22:47:07,557.557 INFO    ] Launching Daemon at Fri Jun 19 22:47:07 IST 2026
[2026-06-19 22:47:07,568.568 INFO    ] ================================================
[2026-06-19 22:47:08,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:47:08
[2026-06-19 22:47:08,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:47:09,175.175 INFO    ] Initializing speech engine...
[2026-06-19 22:47:09,188.188 INFO    ] 2026-06-19 22:47:09
[2026-06-19 22:47:09,466.466 INFO    ] 2026-06-19 22:47:09
[2026-06-19 22:47:09,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:47:09,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:47:09,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:47:09,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:47:10,007.007 INFO    ] time= 19/06/2026 22:47:09
[2026-06-19 22:47:10,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:47:10,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:47:10,154.154 INFO    ] No existing commands found in stream
[2026-06-19 22:47:15,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:47:15,179.179 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-19 22:47:15,882.882 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:47:15,885.885 INFO    ] Checking for system updates...
[2026-06-19 22:47:15,925.925 INFO    ] 200
[2026-06-19 22:47:15,928.928 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:15,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:47:15,986.986 INFO    ] No update needed
[2026-06-19 22:47:15,988.988 INFO    ] Checking for camera pi updates...
[2026-06-19 22:47:16,023.023 INFO    ] 200
[2026-06-19 22:47:16,026.026 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:16,068.068 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:47:16,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:47:16,120.120 INFO    ] No camera update needed
[2026-06-19 22:47:16,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:47:16,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:47:16,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:47:16,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:47:18,180.180 INFO    ] ================================================
[2026-06-19 22:47:18,194.194 INFO    ] Launching Daemon at Fri Jun 19 22:47:18 IST 2026
[2026-06-19 22:47:18,205.205 INFO    ] ================================================
[2026-06-19 22:47:18,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:47:18
[2026-06-19 22:47:19,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:47:19,629.629 INFO    ] Initializing speech engine...
[2026-06-19 22:47:19,635.635 INFO    ] 2026-06-19 22:47:19
[2026-06-19 22:47:19,933.933 INFO    ] 2026-06-19 22:47:19
[2026-06-19 22:47:19,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:47:21,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:47:21,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:47:22,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:47:22,385.385 INFO    ] time= 19/06/2026 22:47:22
[2026-06-19 22:47:22,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:47:22,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:47:22,466.466 INFO    ] No existing commands found in stream
[2026-06-19 22:47:27,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:47:27,482.482 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-19 22:47:29,589.589 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:47:29,592.592 INFO    ] Checking for system updates...
[2026-06-19 22:47:29,630.630 INFO    ] 200
[2026-06-19 22:47:29,632.632 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:29,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:47:29,696.696 INFO    ] No update needed
[2026-06-19 22:47:29,699.699 INFO    ] Checking for camera pi updates...
[2026-06-19 22:47:29,734.734 INFO    ] 200
[2026-06-19 22:47:29,737.737 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:29,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:47:29,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:47:29,833.833 INFO    ] No camera update needed
[2026-06-19 22:47:29,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:47:29,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:47:29,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:47:29,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:47:31,893.893 INFO    ] ================================================
[2026-06-19 22:47:31,909.909 INFO    ] Launching Daemon at Fri Jun 19 22:47:31 IST 2026
[2026-06-19 22:47:31,921.921 INFO    ] ================================================
[2026-06-19 22:47:32,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:47:32
[2026-06-19 22:47:33,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:47:33,452.452 INFO    ] Initializing speech engine...
[2026-06-19 22:47:33,466.466 INFO    ] 2026-06-19 22:47:33
[2026-06-19 22:47:33,732.732 INFO    ] 2026-06-19 22:47:33
[2026-06-19 22:47:33,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:47:33,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:47:33,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:47:34,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:47:34,112.112 INFO    ] time= 19/06/2026 22:47:34
[2026-06-19 22:47:34,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:47:34,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:47:34,283.283 INFO    ] No existing commands found in stream
[2026-06-19 22:47:39,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:47:39,311.311 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 22:47:40,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:47:40,294.294 INFO    ] Checking for system updates...
[2026-06-19 22:47:40,334.334 INFO    ] 200
[2026-06-19 22:47:40,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:40,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:47:40,392.392 INFO    ] No update needed
[2026-06-19 22:47:40,395.395 INFO    ] Checking for camera pi updates...
[2026-06-19 22:47:40,433.433 INFO    ] 200
[2026-06-19 22:47:40,435.435 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:40,478.478 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:47:40,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:47:40,520.520 INFO    ] No camera update needed
[2026-06-19 22:47:40,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:47:40,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:47:40,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:47:40,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:47:42,576.576 INFO    ] ================================================
[2026-06-19 22:47:42,591.591 INFO    ] Launching Daemon at Fri Jun 19 22:47:42 IST 2026
[2026-06-19 22:47:42,602.602 INFO    ] ================================================
[2026-06-19 22:47:43,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:47:43
[2026-06-19 22:47:43,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:47:44,226.226 INFO    ] Initializing speech engine...
[2026-06-19 22:47:44,243.243 INFO    ] 2026-06-19 22:47:44
[2026-06-19 22:47:44,515.515 INFO    ] 2026-06-19 22:47:44
[2026-06-19 22:47:44,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:47:44,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:47:44,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:47:44,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:47:45,025.025 INFO    ] time= 19/06/2026 22:47:44
[2026-06-19 22:47:45,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:47:45,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:47:45,161.161 INFO    ] No existing commands found in stream
[2026-06-19 22:47:50,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:47:50,179.179 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 22:47:50,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:47:50,852.852 INFO    ] Checking for system updates...
[2026-06-19 22:47:50,893.893 INFO    ] 200
[2026-06-19 22:47:50,896.896 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:50,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:47:50,954.954 INFO    ] No update needed
[2026-06-19 22:47:50,957.957 INFO    ] Checking for camera pi updates...
[2026-06-19 22:47:50,992.992 INFO    ] 200
[2026-06-19 22:47:50,995.995 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:47:51,038.038 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:47:51,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:47:51,086.086 INFO    ] No camera update needed
[2026-06-19 22:47:51,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:47:51,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:47:51,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:47:51,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:47:53,145.145 INFO    ] ================================================
[2026-06-19 22:47:53,161.161 INFO    ] Launching Daemon at Fri Jun 19 22:47:53 IST 2026
[2026-06-19 22:47:53,171.171 INFO    ] ================================================
[2026-06-19 22:47:53,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:47:53
[2026-06-19 22:47:54,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:47:54,596.596 INFO    ] Initializing speech engine...
[2026-06-19 22:47:54,605.605 INFO    ] 2026-06-19 22:47:54
[2026-06-19 22:47:54,854.854 INFO    ] 2026-06-19 22:47:54
[2026-06-19 22:47:54,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:47:55,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:47:55,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:47:55,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:47:55,334.334 INFO    ] time= 19/06/2026 22:47:55
[2026-06-19 22:47:55,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:47:55,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:47:55,500.500 INFO    ] No existing commands found in stream
[2026-06-19 22:48:00,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:48:00,540.540 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 22:48:02,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:48:02,842.842 INFO    ] Checking for system updates...
[2026-06-19 22:48:02,879.879 INFO    ] 200
[2026-06-19 22:48:02,882.882 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:02,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:48:02,937.937 INFO    ] No update needed
[2026-06-19 22:48:02,939.939 INFO    ] Checking for camera pi updates...
[2026-06-19 22:48:02,973.973 INFO    ] 200
[2026-06-19 22:48:02,975.975 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:03,021.021 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:48:03,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:48:03,055.055 INFO    ] No camera update needed
[2026-06-19 22:48:03,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:48:03,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:48:03,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:48:03,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:48:05,112.112 INFO    ] ================================================
[2026-06-19 22:48:05,127.127 INFO    ] Launching Daemon at Fri Jun 19 22:48:05 IST 2026
[2026-06-19 22:48:05,137.137 INFO    ] ================================================
[2026-06-19 22:48:05,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:48:05
[2026-06-19 22:48:06,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:48:06,633.633 INFO    ] Initializing speech engine...
[2026-06-19 22:48:06,643.643 INFO    ] 2026-06-19 22:48:06
[2026-06-19 22:48:06,906.906 INFO    ] 2026-06-19 22:48:06
[2026-06-19 22:48:06,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:48:07,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:48:07,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:48:07,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:48:07,383.383 INFO    ] time= 19/06/2026 22:48:07
[2026-06-19 22:48:07,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:48:07,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:48:07,550.550 INFO    ] No existing commands found in stream
[2026-06-19 22:48:12,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:48:12,564.564 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 22:48:15,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:48:15,849.849 INFO    ] Checking for system updates...
[2026-06-19 22:48:15,886.886 INFO    ] 200
[2026-06-19 22:48:15,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:15,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:48:15,952.952 INFO    ] No update needed
[2026-06-19 22:48:15,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 22:48:15,988.988 INFO    ] 200
[2026-06-19 22:48:15,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:16,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:48:16,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:48:16,183.183 INFO    ] No camera update needed
[2026-06-19 22:48:16,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:48:16,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:48:16,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:48:16,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:48:18,241.241 INFO    ] ================================================
[2026-06-19 22:48:18,256.256 INFO    ] Launching Daemon at Fri Jun 19 22:48:18 IST 2026
[2026-06-19 22:48:18,267.267 INFO    ] ================================================
[2026-06-19 22:48:18,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:48:18
[2026-06-19 22:48:19,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:48:19,723.723 INFO    ] Initializing speech engine...
[2026-06-19 22:48:19,729.729 INFO    ] 2026-06-19 22:48:19
[2026-06-19 22:48:19,992.992 INFO    ] 2026-06-19 22:48:19
[2026-06-19 22:48:20,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:48:20,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:48:20,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:48:20,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:48:20,435.435 INFO    ] time= 19/06/2026 22:48:20
[2026-06-19 22:48:20,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:48:20,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:48:20,596.596 INFO    ] No existing commands found in stream
[2026-06-19 22:48:25,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:48:25,610.610 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 22:48:27,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:48:27,802.802 INFO    ] Checking for system updates...
[2026-06-19 22:48:27,851.851 INFO    ] 200
[2026-06-19 22:48:27,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:27,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:48:27,913.913 INFO    ] No update needed
[2026-06-19 22:48:27,916.916 INFO    ] Checking for camera pi updates...
[2026-06-19 22:48:27,951.951 INFO    ] 200
[2026-06-19 22:48:27,954.954 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:27,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:48:28,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:48:28,046.046 INFO    ] No camera update needed
[2026-06-19 22:48:28,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:48:28,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:48:28,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:48:28,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:48:30,104.104 INFO    ] ================================================
[2026-06-19 22:48:30,119.119 INFO    ] Launching Daemon at Fri Jun 19 22:48:30 IST 2026
[2026-06-19 22:48:30,130.130 INFO    ] ================================================
[2026-06-19 22:48:30,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:48:30
[2026-06-19 22:48:31,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:48:31,795.795 INFO    ] Initializing speech engine...
[2026-06-19 22:48:31,809.809 INFO    ] 2026-06-19 22:48:31
[2026-06-19 22:48:32,106.106 INFO    ] 2026-06-19 22:48:32
[2026-06-19 22:48:32,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:48:32,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:48:32,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:48:32,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:48:32,548.548 INFO    ] time= 19/06/2026 22:48:32
[2026-06-19 22:48:32,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:48:32,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:48:32,687.687 INFO    ] No existing commands found in stream
[2026-06-19 22:48:37,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:48:37,702.702 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 22:48:40,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:48:40,194.194 INFO    ] Checking for system updates...
[2026-06-19 22:48:40,231.231 INFO    ] 200
[2026-06-19 22:48:40,233.233 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:40,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:48:40,297.297 INFO    ] No update needed
[2026-06-19 22:48:40,299.299 INFO    ] Checking for camera pi updates...
[2026-06-19 22:48:40,333.333 INFO    ] 200
[2026-06-19 22:48:40,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:40,376.376 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:48:40,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:48:40,423.423 INFO    ] No camera update needed
[2026-06-19 22:48:40,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:48:40,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:48:40,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:48:40,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:48:42,478.478 INFO    ] ================================================
[2026-06-19 22:48:42,494.494 INFO    ] Launching Daemon at Fri Jun 19 22:48:42 IST 2026
[2026-06-19 22:48:42,504.504 INFO    ] ================================================
[2026-06-19 22:48:43,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:48:43
[2026-06-19 22:48:43,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:48:43,927.927 INFO    ] Initializing speech engine...
[2026-06-19 22:48:43,941.941 INFO    ] 2026-06-19 22:48:43
[2026-06-19 22:48:44,208.208 INFO    ] 2026-06-19 22:48:44
[2026-06-19 22:48:44,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:48:44,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:48:44,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:48:44,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:48:44,586.586 INFO    ] time= 19/06/2026 22:48:44
[2026-06-19 22:48:44,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:48:44,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:48:44,760.760 INFO    ] No existing commands found in stream
[2026-06-19 22:48:49,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:48:49,793.793 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-19 22:48:51,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:48:51,466.466 INFO    ] Checking for system updates...
[2026-06-19 22:48:51,517.517 INFO    ] 200
[2026-06-19 22:48:51,520.520 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:51,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:48:51,595.595 INFO    ] No update needed
[2026-06-19 22:48:51,598.598 INFO    ] Checking for camera pi updates...
[2026-06-19 22:48:51,635.635 INFO    ] 200
[2026-06-19 22:48:51,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:48:51,678.678 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:48:51,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:48:51,728.728 INFO    ] No camera update needed
[2026-06-19 22:48:51,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:48:51,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:48:51,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:48:51,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:48:53,784.784 INFO    ] ================================================
[2026-06-19 22:48:53,800.800 INFO    ] Launching Daemon at Fri Jun 19 22:48:53 IST 2026
[2026-06-19 22:48:53,810.810 INFO    ] ================================================
[2026-06-19 22:48:54,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:48:54
[2026-06-19 22:48:54,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:48:55,258.258 INFO    ] Initializing speech engine...
[2026-06-19 22:48:55,283.283 INFO    ] 2026-06-19 22:48:55
[2026-06-19 22:48:55,558.558 INFO    ] 2026-06-19 22:48:55
[2026-06-19 22:48:55,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:48:55,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:48:55,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:48:55,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:48:55,932.932 INFO    ] time= 19/06/2026 22:48:55
[2026-06-19 22:48:55,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:48:55,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:48:56,058.058 INFO    ] No existing commands found in stream
[2026-06-19 22:49:01,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:49:01,073.073 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 22:49:04,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:49:04,308.308 INFO    ] Checking for system updates...
[2026-06-19 22:49:04,349.349 INFO    ] 200
[2026-06-19 22:49:04,351.351 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:04,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:49:04,418.418 INFO    ] No update needed
[2026-06-19 22:49:04,420.420 INFO    ] Checking for camera pi updates...
[2026-06-19 22:49:04,454.454 INFO    ] 200
[2026-06-19 22:49:04,457.457 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:04,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:49:04,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:49:04,550.550 INFO    ] No camera update needed
[2026-06-19 22:49:04,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:49:04,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:49:04,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:49:04,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:49:06,606.606 INFO    ] ================================================
[2026-06-19 22:49:06,621.621 INFO    ] Launching Daemon at Fri Jun 19 22:49:06 IST 2026
[2026-06-19 22:49:06,632.632 INFO    ] ================================================
[2026-06-19 22:49:07,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:49:07
[2026-06-19 22:49:07,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:49:08,096.096 INFO    ] Initializing speech engine...
[2026-06-19 22:49:08,104.104 INFO    ] 2026-06-19 22:49:08
[2026-06-19 22:49:08,396.396 INFO    ] 2026-06-19 22:49:08
[2026-06-19 22:49:08,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:49:08,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:49:08,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:49:08,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:49:08,774.774 INFO    ] time= 19/06/2026 22:49:08
[2026-06-19 22:49:08,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:49:08,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:49:08,897.897 INFO    ] No existing commands found in stream
[2026-06-19 22:49:13,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:49:13,913.913 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-19 22:49:16,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:49:16,472.472 INFO    ] Checking for system updates...
[2026-06-19 22:49:16,508.508 INFO    ] 200
[2026-06-19 22:49:16,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:16,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:49:16,571.571 INFO    ] No update needed
[2026-06-19 22:49:16,573.573 INFO    ] Checking for camera pi updates...
[2026-06-19 22:49:16,608.608 INFO    ] 200
[2026-06-19 22:49:16,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:16,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:49:16,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:49:16,700.700 INFO    ] No camera update needed
[2026-06-19 22:49:16,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:49:16,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:49:16,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:49:16,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:49:18,764.764 INFO    ] ================================================
[2026-06-19 22:49:18,780.780 INFO    ] Launching Daemon at Fri Jun 19 22:49:18 IST 2026
[2026-06-19 22:49:18,791.791 INFO    ] ================================================
[2026-06-19 22:49:19,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:49:19
[2026-06-19 22:49:20,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:49:20,473.473 INFO    ] Initializing speech engine...
[2026-06-19 22:49:20,486.486 INFO    ] 2026-06-19 22:49:20
[2026-06-19 22:49:20,771.771 INFO    ] 2026-06-19 22:49:20
[2026-06-19 22:49:20,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:49:21,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:49:21,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:49:21,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:49:21,226.226 INFO    ] time= 19/06/2026 22:49:21
[2026-06-19 22:49:21,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:49:21,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:49:21,382.382 INFO    ] No existing commands found in stream
[2026-06-19 22:49:26,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:49:26,399.399 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 22:49:31,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:49:31,758.758 INFO    ] Checking for system updates...
[2026-06-19 22:49:31,796.796 INFO    ] 200
[2026-06-19 22:49:31,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:31,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:49:31,861.861 INFO    ] No update needed
[2026-06-19 22:49:31,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 22:49:31,899.899 INFO    ] 200
[2026-06-19 22:49:31,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:31,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:49:31,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:49:31,987.987 INFO    ] No camera update needed
[2026-06-19 22:49:31,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:49:31,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:49:32,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:49:32,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:49:34,049.049 INFO    ] ================================================
[2026-06-19 22:49:34,064.064 INFO    ] Launching Daemon at Fri Jun 19 22:49:34 IST 2026
[2026-06-19 22:49:34,074.074 INFO    ] ================================================
[2026-06-19 22:49:34,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:49:34
[2026-06-19 22:49:35,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:49:35,528.528 INFO    ] Initializing speech engine...
[2026-06-19 22:49:35,536.536 INFO    ] 2026-06-19 22:49:35
[2026-06-19 22:49:35,785.785 INFO    ] 2026-06-19 22:49:35
[2026-06-19 22:49:35,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:49:36,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:49:36,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:49:36,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:49:36,246.246 INFO    ] time= 19/06/2026 22:49:36
[2026-06-19 22:49:36,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:49:36,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:49:36,414.414 INFO    ] No existing commands found in stream
[2026-06-19 22:49:41,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:49:41,429.429 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-19 22:49:41,823.823 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:49:41,826.826 INFO    ] Checking for system updates...
[2026-06-19 22:49:41,863.863 INFO    ] 200
[2026-06-19 22:49:41,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:41,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:49:41,924.924 INFO    ] No update needed
[2026-06-19 22:49:41,926.926 INFO    ] Checking for camera pi updates...
[2026-06-19 22:49:41,964.964 INFO    ] 200
[2026-06-19 22:49:41,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:42,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:49:42,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:49:42,056.056 INFO    ] No camera update needed
[2026-06-19 22:49:42,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:49:42,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:49:42,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:49:42,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:49:44,112.112 INFO    ] ================================================
[2026-06-19 22:49:44,129.129 INFO    ] Launching Daemon at Fri Jun 19 22:49:44 IST 2026
[2026-06-19 22:49:44,140.140 INFO    ] ================================================
[2026-06-19 22:49:44,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:49:44
[2026-06-19 22:49:45,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:49:45,590.590 INFO    ] Initializing speech engine...
[2026-06-19 22:49:45,601.601 INFO    ] 2026-06-19 22:49:45
[2026-06-19 22:49:45,848.848 INFO    ] 2026-06-19 22:49:45
[2026-06-19 22:49:45,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:49:46,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:49:46,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:49:46,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:49:46,344.344 INFO    ] time= 19/06/2026 22:49:46
[2026-06-19 22:49:46,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:49:46,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:49:46,466.466 INFO    ] No existing commands found in stream
[2026-06-19 22:49:51,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:49:51,480.480 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 22:49:52,860.860 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:49:52,862.862 INFO    ] Checking for system updates...
[2026-06-19 22:49:52,898.898 INFO    ] 200
[2026-06-19 22:49:52,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:52,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:49:52,956.956 INFO    ] No update needed
[2026-06-19 22:49:52,958.958 INFO    ] Checking for camera pi updates...
[2026-06-19 22:49:52,996.996 INFO    ] 200
[2026-06-19 22:49:52,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:49:53,039.039 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:49:53,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:49:53,087.087 INFO    ] No camera update needed
[2026-06-19 22:49:53,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:49:53,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:49:53,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:49:53,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:49:55,143.143 INFO    ] ================================================
[2026-06-19 22:49:55,158.158 INFO    ] Launching Daemon at Fri Jun 19 22:49:55 IST 2026
[2026-06-19 22:49:55,170.170 INFO    ] ================================================
[2026-06-19 22:49:55,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:49:55
[2026-06-19 22:49:56,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:49:56,775.775 INFO    ] Initializing speech engine...
[2026-06-19 22:49:56,782.782 INFO    ] 2026-06-19 22:49:56
[2026-06-19 22:49:57,051.051 INFO    ] 2026-06-19 22:49:57
[2026-06-19 22:49:57,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:49:57,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:49:57,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:49:57,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:49:57,558.558 INFO    ] time= 19/06/2026 22:49:57
[2026-06-19 22:49:57,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:49:57,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:49:57,744.744 INFO    ] No existing commands found in stream
[2026-06-19 22:50:02,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:50:02,780.780 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-19 22:50:06,610.610 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:50:06,613.613 INFO    ] Checking for system updates...
[2026-06-19 22:50:06,651.651 INFO    ] 200
[2026-06-19 22:50:06,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:06,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:50:06,711.711 INFO    ] No update needed
[2026-06-19 22:50:06,713.713 INFO    ] Checking for camera pi updates...
[2026-06-19 22:50:06,747.747 INFO    ] 200
[2026-06-19 22:50:06,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:06,791.791 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:50:06,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:50:06,842.842 INFO    ] No camera update needed
[2026-06-19 22:50:06,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:50:06,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:50:06,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:50:06,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:50:08,897.897 INFO    ] ================================================
[2026-06-19 22:50:08,913.913 INFO    ] Launching Daemon at Fri Jun 19 22:50:08 IST 2026
[2026-06-19 22:50:08,924.924 INFO    ] ================================================
[2026-06-19 22:50:09,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:50:09
[2026-06-19 22:50:10,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:50:10,593.593 INFO    ] Initializing speech engine...
[2026-06-19 22:50:10,599.599 INFO    ] 2026-06-19 22:50:10
[2026-06-19 22:50:10,863.863 INFO    ] 2026-06-19 22:50:10
[2026-06-19 22:50:10,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:50:11,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:50:11,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:50:11,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:50:11,307.307 INFO    ] time= 19/06/2026 22:50:11
[2026-06-19 22:50:11,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:50:11,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:50:11,532.532 INFO    ] No existing commands found in stream
[2026-06-19 22:50:16,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:50:16,560.560 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-19 22:50:19,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:50:19,033.033 INFO    ] Checking for system updates...
[2026-06-19 22:50:19,071.071 INFO    ] 200
[2026-06-19 22:50:19,073.073 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:19,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:50:19,130.130 INFO    ] No update needed
[2026-06-19 22:50:19,132.132 INFO    ] Checking for camera pi updates...
[2026-06-19 22:50:19,166.166 INFO    ] 200
[2026-06-19 22:50:19,169.169 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:19,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:50:19,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:50:19,355.355 INFO    ] No camera update needed
[2026-06-19 22:50:19,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:50:19,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:50:19,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:50:19,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:50:21,409.409 INFO    ] ================================================
[2026-06-19 22:50:21,425.425 INFO    ] Launching Daemon at Fri Jun 19 22:50:21 IST 2026
[2026-06-19 22:50:21,436.436 INFO    ] ================================================
[2026-06-19 22:50:22,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:50:22
[2026-06-19 22:50:22,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:50:22,923.923 INFO    ] Initializing speech engine...
[2026-06-19 22:50:22,938.938 INFO    ] 2026-06-19 22:50:22
[2026-06-19 22:50:23,204.204 INFO    ] 2026-06-19 22:50:23
[2026-06-19 22:50:23,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:50:23,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:50:23,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:50:23,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:50:23,584.584 INFO    ] time= 19/06/2026 22:50:23
[2026-06-19 22:50:23,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:50:23,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:50:23,663.663 INFO    ] No existing commands found in stream
[2026-06-19 22:50:28,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:50:28,701.701 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-19 22:50:29,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:50:29,422.422 INFO    ] Checking for system updates...
[2026-06-19 22:50:29,460.460 INFO    ] 200
[2026-06-19 22:50:29,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:29,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:50:29,519.519 INFO    ] No update needed
[2026-06-19 22:50:29,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 22:50:29,556.556 INFO    ] 200
[2026-06-19 22:50:29,559.559 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:29,601.601 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:50:29,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:50:29,650.650 INFO    ] No camera update needed
[2026-06-19 22:50:29,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:50:29,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:50:29,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:50:29,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:50:31,708.708 INFO    ] ================================================
[2026-06-19 22:50:31,723.723 INFO    ] Launching Daemon at Fri Jun 19 22:50:31 IST 2026
[2026-06-19 22:50:31,735.735 INFO    ] ================================================
[2026-06-19 22:50:32,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:50:32
[2026-06-19 22:50:32,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:50:33,226.226 INFO    ] Initializing speech engine...
[2026-06-19 22:50:33,242.242 INFO    ] 2026-06-19 22:50:33
[2026-06-19 22:50:33,525.525 INFO    ] 2026-06-19 22:50:33
[2026-06-19 22:50:33,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:50:33,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:50:33,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:50:33,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:50:34,012.012 INFO    ] time= 19/06/2026 22:50:33
[2026-06-19 22:50:34,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:50:34,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:50:34,153.153 INFO    ] No existing commands found in stream
[2026-06-19 22:50:39,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:50:39,168.168 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-19 22:50:40,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:50:40,767.767 INFO    ] Checking for system updates...
[2026-06-19 22:50:40,803.803 INFO    ] 200
[2026-06-19 22:50:40,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:40,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:50:40,862.862 INFO    ] No update needed
[2026-06-19 22:50:40,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 22:50:40,902.902 INFO    ] 200
[2026-06-19 22:50:40,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:40,950.950 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:50:41,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:50:41,002.002 INFO    ] No camera update needed
[2026-06-19 22:50:41,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:50:41,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:50:41,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:50:41,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:50:43,057.057 INFO    ] ================================================
[2026-06-19 22:50:43,073.073 INFO    ] Launching Daemon at Fri Jun 19 22:50:43 IST 2026
[2026-06-19 22:50:43,084.084 INFO    ] ================================================
[2026-06-19 22:50:43,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:50:43
[2026-06-19 22:50:44,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:50:44,510.510 INFO    ] Initializing speech engine...
[2026-06-19 22:50:44,519.519 INFO    ] 2026-06-19 22:50:44
[2026-06-19 22:50:44,768.768 INFO    ] 2026-06-19 22:50:44
[2026-06-19 22:50:44,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:50:45,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:50:45,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:50:45,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:50:45,256.256 INFO    ] time= 19/06/2026 22:50:45
[2026-06-19 22:50:45,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:50:45,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:50:45,400.400 INFO    ] No existing commands found in stream
[2026-06-19 22:50:50,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:50:50,415.415 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-19 22:50:51,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:50:51,289.289 INFO    ] Checking for system updates...
[2026-06-19 22:50:51,329.329 INFO    ] 200
[2026-06-19 22:50:51,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:51,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:50:51,402.402 INFO    ] No update needed
[2026-06-19 22:50:51,404.404 INFO    ] Checking for camera pi updates...
[2026-06-19 22:50:51,437.437 INFO    ] 200
[2026-06-19 22:50:51,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:50:51,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:50:51,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:50:51,538.538 INFO    ] No camera update needed
[2026-06-19 22:50:51,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:50:51,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:50:51,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:50:51,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:50:53,593.593 INFO    ] ================================================
[2026-06-19 22:50:53,608.608 INFO    ] Launching Daemon at Fri Jun 19 22:50:53 IST 2026
[2026-06-19 22:50:53,618.618 INFO    ] ================================================
[2026-06-19 22:50:54,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:50:54
[2026-06-19 22:50:54,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:50:55,082.082 INFO    ] Initializing speech engine...
[2026-06-19 22:50:55,091.091 INFO    ] 2026-06-19 22:50:55
[2026-06-19 22:50:55,349.349 INFO    ] 2026-06-19 22:50:55
[2026-06-19 22:50:55,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:50:55,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:50:55,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:50:55,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:50:55,885.885 INFO    ] time= 19/06/2026 22:50:55
[2026-06-19 22:50:55,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:50:55,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:50:56,024.024 INFO    ] No existing commands found in stream
[2026-06-19 22:51:01,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:51:01,057.057 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 22:51:04,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:51:04,332.332 INFO    ] Checking for system updates...
[2026-06-19 22:51:04,369.369 INFO    ] 200
[2026-06-19 22:51:04,372.372 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:04,432.432 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:51:04,435.435 INFO    ] No update needed
[2026-06-19 22:51:04,438.438 INFO    ] Checking for camera pi updates...
[2026-06-19 22:51:04,476.476 INFO    ] 200
[2026-06-19 22:51:04,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:04,522.522 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:51:04,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:51:04,578.578 INFO    ] No camera update needed
[2026-06-19 22:51:04,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:51:04,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:51:04,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:51:04,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:51:06,637.637 INFO    ] ================================================
[2026-06-19 22:51:06,653.653 INFO    ] Launching Daemon at Fri Jun 19 22:51:06 IST 2026
[2026-06-19 22:51:06,663.663 INFO    ] ================================================
[2026-06-19 22:51:07,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:51:07
[2026-06-19 22:51:07,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:51:08,122.122 INFO    ] Initializing speech engine...
[2026-06-19 22:51:08,131.131 INFO    ] 2026-06-19 22:51:08
[2026-06-19 22:51:08,381.381 INFO    ] 2026-06-19 22:51:08
[2026-06-19 22:51:08,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:51:08,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:51:08,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:51:08,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:51:08,890.890 INFO    ] time= 19/06/2026 22:51:08
[2026-06-19 22:51:08,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:51:08,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:51:09,065.065 INFO    ] No existing commands found in stream
[2026-06-19 22:51:14,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:51:14,099.099 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 22:51:16,503.503 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:51:16,506.506 INFO    ] Checking for system updates...
[2026-06-19 22:51:16,547.547 INFO    ] 200
[2026-06-19 22:51:16,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:16,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:51:16,612.612 INFO    ] No update needed
[2026-06-19 22:51:16,615.615 INFO    ] Checking for camera pi updates...
[2026-06-19 22:51:16,661.661 INFO    ] 200
[2026-06-19 22:51:16,663.663 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:16,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:51:16,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:51:16,766.766 INFO    ] No camera update needed
[2026-06-19 22:51:16,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:51:16,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:51:16,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:51:16,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:51:18,822.822 INFO    ] ================================================
[2026-06-19 22:51:18,837.837 INFO    ] Launching Daemon at Fri Jun 19 22:51:18 IST 2026
[2026-06-19 22:51:18,848.848 INFO    ] ================================================
[2026-06-19 22:51:19,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:51:19
[2026-06-19 22:51:20,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:51:20,407.407 INFO    ] Initializing speech engine...
[2026-06-19 22:51:20,416.416 INFO    ] 2026-06-19 22:51:20
[2026-06-19 22:51:20,661.661 INFO    ] 2026-06-19 22:51:20
[2026-06-19 22:51:20,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:51:20,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:51:20,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:51:21,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:51:21,149.149 INFO    ] time= 19/06/2026 22:51:21
[2026-06-19 22:51:21,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:51:21,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:51:21,283.283 INFO    ] No existing commands found in stream
[2026-06-19 22:51:26,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:51:26,298.298 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-19 22:51:28,386.386 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:51:28,389.389 INFO    ] Checking for system updates...
[2026-06-19 22:51:28,427.427 INFO    ] 200
[2026-06-19 22:51:28,430.430 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:28,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:51:28,486.486 INFO    ] No update needed
[2026-06-19 22:51:28,489.489 INFO    ] Checking for camera pi updates...
[2026-06-19 22:51:28,528.528 INFO    ] 200
[2026-06-19 22:51:28,531.531 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:28,578.578 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:51:28,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:51:28,634.634 INFO    ] No camera update needed
[2026-06-19 22:51:28,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:51:28,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:51:28,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:51:28,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:51:30,698.698 INFO    ] ================================================
[2026-06-19 22:51:30,713.713 INFO    ] Launching Daemon at Fri Jun 19 22:51:30 IST 2026
[2026-06-19 22:51:30,723.723 INFO    ] ================================================
[2026-06-19 22:51:31,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:51:31
[2026-06-19 22:51:31,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:51:32,191.191 INFO    ] Initializing speech engine...
[2026-06-19 22:51:32,208.208 INFO    ] 2026-06-19 22:51:32
[2026-06-19 22:51:32,490.490 INFO    ] 2026-06-19 22:51:32
[2026-06-19 22:51:32,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:51:32,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:51:32,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:51:32,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:51:32,883.883 INFO    ] time= 19/06/2026 22:51:32
[2026-06-19 22:51:32,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:51:32,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:51:32,972.972 INFO    ] No existing commands found in stream
[2026-06-19 22:51:37,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:51:37,988.988 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 22:51:39,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:51:39,537.537 INFO    ] Checking for system updates...
[2026-06-19 22:51:39,573.573 INFO    ] 200
[2026-06-19 22:51:39,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:39,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:51:39,635.635 INFO    ] No update needed
[2026-06-19 22:51:39,638.638 INFO    ] Checking for camera pi updates...
[2026-06-19 22:51:39,672.672 INFO    ] 200
[2026-06-19 22:51:39,674.674 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:39,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:51:39,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:51:39,765.765 INFO    ] No camera update needed
[2026-06-19 22:51:39,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:51:39,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:51:39,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:51:39,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:51:41,820.820 INFO    ] ================================================
[2026-06-19 22:51:41,835.835 INFO    ] Launching Daemon at Fri Jun 19 22:51:41 IST 2026
[2026-06-19 22:51:41,846.846 INFO    ] ================================================
[2026-06-19 22:51:42,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:51:42
[2026-06-19 22:51:43,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:51:43,276.276 INFO    ] Initializing speech engine...
[2026-06-19 22:51:43,282.282 INFO    ] 2026-06-19 22:51:43
[2026-06-19 22:51:43,540.540 INFO    ] 2026-06-19 22:51:43
[2026-06-19 22:51:43,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:51:43,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:51:43,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:51:43,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:51:44,020.020 INFO    ] time= 19/06/2026 22:51:43
[2026-06-19 22:51:44,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:51:44,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:51:44,210.210 INFO    ] No existing commands found in stream
[2026-06-19 22:51:49,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:51:49,243.243 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 22:51:49,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:51:49,763.763 INFO    ] Checking for system updates...
[2026-06-19 22:51:49,807.807 INFO    ] 200
[2026-06-19 22:51:49,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:49,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:51:49,883.883 INFO    ] No update needed
[2026-06-19 22:51:49,886.886 INFO    ] Checking for camera pi updates...
[2026-06-19 22:51:49,928.928 INFO    ] 200
[2026-06-19 22:51:49,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:51:49,994.994 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:51:50,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:51:50,035.035 INFO    ] No camera update needed
[2026-06-19 22:51:50,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:51:50,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:51:50,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:51:50,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:51:52,099.099 INFO    ] ================================================
[2026-06-19 22:51:52,117.117 INFO    ] Launching Daemon at Fri Jun 19 22:51:52 IST 2026
[2026-06-19 22:51:52,129.129 INFO    ] ================================================
[2026-06-19 22:51:52,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:51:52
[2026-06-19 22:51:53,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:51:53,693.693 INFO    ] Initializing speech engine...
[2026-06-19 22:51:53,719.719 INFO    ] 2026-06-19 22:51:53
[2026-06-19 22:51:53,974.974 INFO    ] 2026-06-19 22:51:53
[2026-06-19 22:51:54,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:51:54,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:51:54,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:51:54,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:51:54,452.452 INFO    ] time= 19/06/2026 22:51:54
[2026-06-19 22:51:54,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:51:54,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:51:54,599.599 INFO    ] No existing commands found in stream
[2026-06-19 22:51:59,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:51:59,622.622 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-19 22:52:00,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:52:00,126.126 INFO    ] Checking for system updates...
[2026-06-19 22:52:00,162.162 INFO    ] 200
[2026-06-19 22:52:00,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:00,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:52:00,222.222 INFO    ] No update needed
[2026-06-19 22:52:00,225.225 INFO    ] Checking for camera pi updates...
[2026-06-19 22:52:00,260.260 INFO    ] 200
[2026-06-19 22:52:00,262.262 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:00,306.306 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:52:00,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:52:00,354.354 INFO    ] No camera update needed
[2026-06-19 22:52:00,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:52:00,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:52:00,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:52:00,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:52:02,436.436 INFO    ] ================================================
[2026-06-19 22:52:02,455.455 INFO    ] Launching Daemon at Fri Jun 19 22:52:02 IST 2026
[2026-06-19 22:52:02,470.470 INFO    ] ================================================
[2026-06-19 22:52:03,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:52:03
[2026-06-19 22:52:03,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:52:03,915.915 INFO    ] Initializing speech engine...
[2026-06-19 22:52:03,921.921 INFO    ] 2026-06-19 22:52:03
[2026-06-19 22:52:04,196.196 INFO    ] 2026-06-19 22:52:04
[2026-06-19 22:52:04,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:52:04,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:52:04,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:52:04,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:52:04,652.652 INFO    ] time= 19/06/2026 22:52:04
[2026-06-19 22:52:04,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:52:04,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:52:04,836.836 INFO    ] No existing commands found in stream
[2026-06-19 22:52:09,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:52:09,851.851 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-19 22:52:11,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:52:11,832.832 INFO    ] Checking for system updates...
[2026-06-19 22:52:11,871.871 INFO    ] 200
[2026-06-19 22:52:11,874.874 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:11,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:52:11,928.928 INFO    ] No update needed
[2026-06-19 22:52:11,931.931 INFO    ] Checking for camera pi updates...
[2026-06-19 22:52:11,965.965 INFO    ] 200
[2026-06-19 22:52:11,967.967 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:12,010.010 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:52:12,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:52:12,061.061 INFO    ] No camera update needed
[2026-06-19 22:52:12,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:52:12,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:52:12,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:52:12,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:52:14,115.115 INFO    ] ================================================
[2026-06-19 22:52:14,130.130 INFO    ] Launching Daemon at Fri Jun 19 22:52:14 IST 2026
[2026-06-19 22:52:14,140.140 INFO    ] ================================================
[2026-06-19 22:52:14,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:52:14
[2026-06-19 22:52:15,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:52:15,599.599 INFO    ] Initializing speech engine...
[2026-06-19 22:52:15,609.609 INFO    ] 2026-06-19 22:52:15
[2026-06-19 22:52:15,868.868 INFO    ] 2026-06-19 22:52:15
[2026-06-19 22:52:15,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:52:16,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:52:16,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:52:16,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:52:16,334.334 INFO    ] time= 19/06/2026 22:52:16
[2026-06-19 22:52:16,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:52:16,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:52:16,491.491 INFO    ] No existing commands found in stream
[2026-06-19 22:52:21,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:52:21,530.530 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-19 22:52:23,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:52:23,339.339 INFO    ] Checking for system updates...
[2026-06-19 22:52:23,375.375 INFO    ] 200
[2026-06-19 22:52:23,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:23,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:52:23,432.432 INFO    ] No update needed
[2026-06-19 22:52:23,435.435 INFO    ] Checking for camera pi updates...
[2026-06-19 22:52:23,468.468 INFO    ] 200
[2026-06-19 22:52:23,470.470 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:23,519.519 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:52:23,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:52:23,669.669 INFO    ] No camera update needed
[2026-06-19 22:52:23,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:52:23,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:52:23,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:52:23,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:52:25,726.726 INFO    ] ================================================
[2026-06-19 22:52:25,741.741 INFO    ] Launching Daemon at Fri Jun 19 22:52:25 IST 2026
[2026-06-19 22:52:25,751.751 INFO    ] ================================================
[2026-06-19 22:52:26,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:52:26
[2026-06-19 22:52:26,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:52:27,208.208 INFO    ] Initializing speech engine...
[2026-06-19 22:52:27,219.219 INFO    ] 2026-06-19 22:52:27
[2026-06-19 22:52:27,478.478 INFO    ] 2026-06-19 22:52:27
[2026-06-19 22:52:27,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:52:27,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:52:27,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:52:27,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:52:27,971.971 INFO    ] time= 19/06/2026 22:52:27
[2026-06-19 22:52:28,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:52:28,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:52:28,117.117 INFO    ] No existing commands found in stream
[2026-06-19 22:52:33,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:52:33,156.156 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 22:52:36,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:52:36,445.445 INFO    ] Checking for system updates...
[2026-06-19 22:52:36,481.481 INFO    ] 200
[2026-06-19 22:52:36,484.484 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:36,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:52:36,539.539 INFO    ] No update needed
[2026-06-19 22:52:36,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 22:52:36,579.579 INFO    ] 200
[2026-06-19 22:52:36,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:36,622.622 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:52:36,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:52:36,668.668 INFO    ] No camera update needed
[2026-06-19 22:52:36,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:52:36,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:52:36,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:52:36,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:52:38,725.725 INFO    ] ================================================
[2026-06-19 22:52:38,740.740 INFO    ] Launching Daemon at Fri Jun 19 22:52:38 IST 2026
[2026-06-19 22:52:38,751.751 INFO    ] ================================================
[2026-06-19 22:52:39,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:52:39
[2026-06-19 22:52:39,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:52:40,206.206 INFO    ] Initializing speech engine...
[2026-06-19 22:52:40,226.226 INFO    ] 2026-06-19 22:52:40
[2026-06-19 22:52:40,510.510 INFO    ] 2026-06-19 22:52:40
[2026-06-19 22:52:40,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:52:40,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:52:40,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:52:40,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:52:40,940.940 INFO    ] time= 19/06/2026 22:52:40
[2026-06-19 22:52:41,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:52:41,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:52:41,149.149 INFO    ] No existing commands found in stream
[2026-06-19 22:52:46,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:52:46,178.178 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-19 22:52:50,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:52:50,149.149 INFO    ] Checking for system updates...
[2026-06-19 22:52:50,187.187 INFO    ] 200
[2026-06-19 22:52:50,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:50,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:52:50,247.247 INFO    ] No update needed
[2026-06-19 22:52:50,249.249 INFO    ] Checking for camera pi updates...
[2026-06-19 22:52:50,283.283 INFO    ] 200
[2026-06-19 22:52:50,286.286 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:52:50,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:52:50,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:52:50,378.378 INFO    ] No camera update needed
[2026-06-19 22:52:50,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:52:50,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:52:50,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:52:50,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:52:52,434.434 INFO    ] ================================================
[2026-06-19 22:52:52,449.449 INFO    ] Launching Daemon at Fri Jun 19 22:52:52 IST 2026
[2026-06-19 22:52:52,460.460 INFO    ] ================================================
[2026-06-19 22:52:53,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:52:53
[2026-06-19 22:52:53,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:52:53,944.944 INFO    ] Initializing speech engine...
[2026-06-19 22:52:53,949.949 INFO    ] 2026-06-19 22:52:53
[2026-06-19 22:52:54,216.216 INFO    ] 2026-06-19 22:52:54
[2026-06-19 22:52:54,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:52:54,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:52:54,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:52:54,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:52:54,686.686 INFO    ] time= 19/06/2026 22:52:54
[2026-06-19 22:52:54,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:52:54,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:52:54,828.828 INFO    ] No existing commands found in stream
[2026-06-19 22:52:59,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:52:59,847.847 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-19 22:53:02,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:53:02,876.876 INFO    ] Checking for system updates...
[2026-06-19 22:53:02,923.923 INFO    ] 200
[2026-06-19 22:53:02,926.926 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:02,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:53:02,997.997 INFO    ] No update needed
[2026-06-19 22:53:03,000.000 INFO    ] Checking for camera pi updates...
[2026-06-19 22:53:03,042.042 INFO    ] 200
[2026-06-19 22:53:03,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:03,101.101 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:53:03,136.136 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:53:03,140.140 INFO    ] No camera update needed
[2026-06-19 22:53:03,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:53:03,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:53:03,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:53:03,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:53:05,208.208 INFO    ] ================================================
[2026-06-19 22:53:05,224.224 INFO    ] Launching Daemon at Fri Jun 19 22:53:05 IST 2026
[2026-06-19 22:53:05,234.234 INFO    ] ================================================
[2026-06-19 22:53:05,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:53:05
[2026-06-19 22:53:06,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:53:06,651.651 INFO    ] Initializing speech engine...
[2026-06-19 22:53:06,665.665 INFO    ] 2026-06-19 22:53:06
[2026-06-19 22:53:06,976.976 INFO    ] 2026-06-19 22:53:06
[2026-06-19 22:53:07,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:53:07,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:53:07,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:53:07,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:53:07,375.375 INFO    ] time= 19/06/2026 22:53:07
[2026-06-19 22:53:07,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:53:07,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:53:07,477.477 INFO    ] No existing commands found in stream
[2026-06-19 22:53:12,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:53:12,515.515 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 22:53:15,538.538 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:53:15,541.541 INFO    ] Checking for system updates...
[2026-06-19 22:53:15,596.596 INFO    ] 200
[2026-06-19 22:53:15,598.598 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:15,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:53:15,657.657 INFO    ] No update needed
[2026-06-19 22:53:15,659.659 INFO    ] Checking for camera pi updates...
[2026-06-19 22:53:15,700.700 INFO    ] 200
[2026-06-19 22:53:15,702.702 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:15,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:53:15,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:53:15,795.795 INFO    ] No camera update needed
[2026-06-19 22:53:15,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:53:15,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:53:15,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:53:15,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:53:17,851.851 INFO    ] ================================================
[2026-06-19 22:53:17,866.866 INFO    ] Launching Daemon at Fri Jun 19 22:53:17 IST 2026
[2026-06-19 22:53:17,876.876 INFO    ] ================================================
[2026-06-19 22:53:18,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:53:18
[2026-06-19 22:53:19,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:53:19,293.293 INFO    ] Initializing speech engine...
[2026-06-19 22:53:19,302.302 INFO    ] 2026-06-19 22:53:19
[2026-06-19 22:53:19,605.605 INFO    ] 2026-06-19 22:53:19
[2026-06-19 22:53:19,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:53:19,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:53:19,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:53:20,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:53:20,009.009 INFO    ] time= 19/06/2026 22:53:20
[2026-06-19 22:53:20,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:53:20,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:53:20,179.179 INFO    ] No existing commands found in stream
[2026-06-19 22:53:25,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:53:25,207.207 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-19 22:53:26,228.228 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:53:26,230.230 INFO    ] Checking for system updates...
[2026-06-19 22:53:26,267.267 INFO    ] 200
[2026-06-19 22:53:26,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:26,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:53:26,324.324 INFO    ] No update needed
[2026-06-19 22:53:26,327.327 INFO    ] Checking for camera pi updates...
[2026-06-19 22:53:26,364.364 INFO    ] 200
[2026-06-19 22:53:26,367.367 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:26,407.407 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:53:26,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:53:26,454.454 INFO    ] No camera update needed
[2026-06-19 22:53:26,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:53:26,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:53:26,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:53:26,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:53:28,508.508 INFO    ] ================================================
[2026-06-19 22:53:28,523.523 INFO    ] Launching Daemon at Fri Jun 19 22:53:28 IST 2026
[2026-06-19 22:53:28,533.533 INFO    ] ================================================
[2026-06-19 22:53:29,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:53:29
[2026-06-19 22:53:29,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:53:29,989.989 INFO    ] Initializing speech engine...
[2026-06-19 22:53:30,004.004 INFO    ] 2026-06-19 22:53:29
[2026-06-19 22:53:30,298.298 INFO    ] 2026-06-19 22:53:30
[2026-06-19 22:53:30,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:53:30,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:53:30,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:53:30,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:53:30,794.794 INFO    ] time= 19/06/2026 22:53:30
[2026-06-19 22:53:30,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:53:30,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:53:30,966.966 INFO    ] No existing commands found in stream
[2026-06-19 22:53:35,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:53:35,994.994 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-19 22:53:36,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:53:36,510.510 INFO    ] Checking for system updates...
[2026-06-19 22:53:36,549.549 INFO    ] 200
[2026-06-19 22:53:36,552.552 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:36,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:53:36,609.609 INFO    ] No update needed
[2026-06-19 22:53:36,611.611 INFO    ] Checking for camera pi updates...
[2026-06-19 22:53:36,646.646 INFO    ] 200
[2026-06-19 22:53:36,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:36,693.693 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:53:36,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:53:36,742.742 INFO    ] No camera update needed
[2026-06-19 22:53:36,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:53:36,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:53:36,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:53:36,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:53:38,797.797 INFO    ] ================================================
[2026-06-19 22:53:38,812.812 INFO    ] Launching Daemon at Fri Jun 19 22:53:38 IST 2026
[2026-06-19 22:53:38,823.823 INFO    ] ================================================
[2026-06-19 22:53:39,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:53:39
[2026-06-19 22:53:40,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:53:40,311.311 INFO    ] Initializing speech engine...
[2026-06-19 22:53:40,329.329 INFO    ] 2026-06-19 22:53:40
[2026-06-19 22:53:40,578.578 INFO    ] 2026-06-19 22:53:40
[2026-06-19 22:53:40,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:53:40,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:53:40,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:53:41,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:53:41,058.058 INFO    ] time= 19/06/2026 22:53:41
[2026-06-19 22:53:41,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:53:41,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:53:41,208.208 INFO    ] No existing commands found in stream
[2026-06-19 22:53:46,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:53:46,222.222 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-19 22:53:48,134.134 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:53:48,137.137 INFO    ] Checking for system updates...
[2026-06-19 22:53:48,173.173 INFO    ] 200
[2026-06-19 22:53:48,175.175 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:48,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:53:48,245.245 INFO    ] No update needed
[2026-06-19 22:53:48,248.248 INFO    ] Checking for camera pi updates...
[2026-06-19 22:53:48,286.286 INFO    ] 200
[2026-06-19 22:53:48,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:48,329.329 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:53:48,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:53:48,365.365 INFO    ] No camera update needed
[2026-06-19 22:53:48,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:53:48,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:53:48,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:53:48,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:53:50,420.420 INFO    ] ================================================
[2026-06-19 22:53:50,435.435 INFO    ] Launching Daemon at Fri Jun 19 22:53:50 IST 2026
[2026-06-19 22:53:50,446.446 INFO    ] ================================================
[2026-06-19 22:53:51,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:53:51
[2026-06-19 22:53:51,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:53:51,904.904 INFO    ] Initializing speech engine...
[2026-06-19 22:53:51,913.913 INFO    ] 2026-06-19 22:53:51
[2026-06-19 22:53:52,169.169 INFO    ] 2026-06-19 22:53:52
[2026-06-19 22:53:52,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:53:52,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:53:52,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:53:52,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:53:52,633.633 INFO    ] time= 19/06/2026 22:53:52
[2026-06-19 22:53:52,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:53:52,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:53:52,850.850 INFO    ] No existing commands found in stream
[2026-06-19 22:53:57,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:53:57,880.880 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-19 22:53:58,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:53:58,721.721 INFO    ] Checking for system updates...
[2026-06-19 22:53:58,756.756 INFO    ] 200
[2026-06-19 22:53:58,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:58,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:53:58,814.814 INFO    ] No update needed
[2026-06-19 22:53:58,817.817 INFO    ] Checking for camera pi updates...
[2026-06-19 22:53:58,855.855 INFO    ] 200
[2026-06-19 22:53:58,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:53:58,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:53:58,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:53:58,953.953 INFO    ] No camera update needed
[2026-06-19 22:53:58,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:53:58,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:53:58,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:53:58,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:54:01,008.008 INFO    ] ================================================
[2026-06-19 22:54:01,024.024 INFO    ] Launching Daemon at Fri Jun 19 22:54:01 IST 2026
[2026-06-19 22:54:01,037.037 INFO    ] ================================================
[2026-06-19 22:54:01,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:54:01
[2026-06-19 22:54:02,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:54:02,805.805 INFO    ] Initializing speech engine...
[2026-06-19 22:54:02,811.811 INFO    ] 2026-06-19 22:54:02
[2026-06-19 22:54:03,116.116 INFO    ] 2026-06-19 22:54:03
[2026-06-19 22:54:03,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:54:03,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:54:03,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:54:03,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:54:03,575.575 INFO    ] time= 19/06/2026 22:54:03
[2026-06-19 22:54:03,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:54:03,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:54:03,784.784 INFO    ] No existing commands found in stream
[2026-06-19 22:54:08,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:54:08,800.800 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-19 22:54:12,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:54:12,825.825 INFO    ] Checking for system updates...
[2026-06-19 22:54:12,863.863 INFO    ] 200
[2026-06-19 22:54:12,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:12,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:54:12,930.930 INFO    ] No update needed
[2026-06-19 22:54:12,933.933 INFO    ] Checking for camera pi updates...
[2026-06-19 22:54:12,974.974 INFO    ] 200
[2026-06-19 22:54:12,977.977 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:13,022.022 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:54:13,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:54:13,071.071 INFO    ] No camera update needed
[2026-06-19 22:54:13,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:54:13,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:54:13,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:54:13,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:54:15,128.128 INFO    ] ================================================
[2026-06-19 22:54:15,144.144 INFO    ] Launching Daemon at Fri Jun 19 22:54:15 IST 2026
[2026-06-19 22:54:15,156.156 INFO    ] ================================================
[2026-06-19 22:54:15,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:54:15
[2026-06-19 22:54:16,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:54:16,704.704 INFO    ] Initializing speech engine...
[2026-06-19 22:54:16,716.716 INFO    ] 2026-06-19 22:54:16
[2026-06-19 22:54:16,969.969 INFO    ] 2026-06-19 22:54:16
[2026-06-19 22:54:17,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:54:17,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:54:17,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:54:17,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:54:17,430.430 INFO    ] time= 19/06/2026 22:54:17
[2026-06-19 22:54:17,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:54:17,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:54:17,581.581 INFO    ] No existing commands found in stream
[2026-06-19 22:54:22,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:54:22,596.596 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-19 22:54:24,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:54:24,724.724 INFO    ] Checking for system updates...
[2026-06-19 22:54:24,764.764 INFO    ] 200
[2026-06-19 22:54:24,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:24,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:54:24,828.828 INFO    ] No update needed
[2026-06-19 22:54:24,831.831 INFO    ] Checking for camera pi updates...
[2026-06-19 22:54:24,865.865 INFO    ] 200
[2026-06-19 22:54:24,867.867 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:24,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:54:24,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:54:24,963.963 INFO    ] No camera update needed
[2026-06-19 22:54:24,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:54:24,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:54:24,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:54:24,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:54:27,019.019 INFO    ] ================================================
[2026-06-19 22:54:27,034.034 INFO    ] Launching Daemon at Fri Jun 19 22:54:27 IST 2026
[2026-06-19 22:54:27,045.045 INFO    ] ================================================
[2026-06-19 22:54:27,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:54:27
[2026-06-19 22:54:28,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:54:28,487.487 INFO    ] Initializing speech engine...
[2026-06-19 22:54:28,498.498 INFO    ] 2026-06-19 22:54:28
[2026-06-19 22:54:28,754.754 INFO    ] 2026-06-19 22:54:28
[2026-06-19 22:54:28,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:54:29,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:54:29,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:54:29,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:54:29,248.248 INFO    ] time= 19/06/2026 22:54:29
[2026-06-19 22:54:29,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:54:29,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:54:29,446.446 INFO    ] No existing commands found in stream
[2026-06-19 22:54:34,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:54:34,464.464 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-19 22:54:35,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:54:35,673.673 INFO    ] Checking for system updates...
[2026-06-19 22:54:35,709.709 INFO    ] 200
[2026-06-19 22:54:35,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:35,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:54:35,769.769 INFO    ] No update needed
[2026-06-19 22:54:35,771.771 INFO    ] Checking for camera pi updates...
[2026-06-19 22:54:35,805.805 INFO    ] 200
[2026-06-19 22:54:35,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:35,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:54:35,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:54:35,898.898 INFO    ] No camera update needed
[2026-06-19 22:54:35,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:54:35,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:54:35,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:54:35,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:54:37,953.953 INFO    ] ================================================
[2026-06-19 22:54:37,968.968 INFO    ] Launching Daemon at Fri Jun 19 22:54:37 IST 2026
[2026-06-19 22:54:37,979.979 INFO    ] ================================================
[2026-06-19 22:54:38,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:54:38
[2026-06-19 22:54:39,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:54:39,446.446 INFO    ] Initializing speech engine...
[2026-06-19 22:54:39,451.451 INFO    ] 2026-06-19 22:54:39
[2026-06-19 22:54:39,730.730 INFO    ] 2026-06-19 22:54:39
[2026-06-19 22:54:39,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:54:39,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:54:40,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:54:40,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:54:40,204.204 INFO    ] time= 19/06/2026 22:54:40
[2026-06-19 22:54:40,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:54:40,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:54:40,369.369 INFO    ] No existing commands found in stream
[2026-06-19 22:54:45,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:54:45,400.400 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-19 22:54:45,946.946 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:54:45,948.948 INFO    ] Checking for system updates...
[2026-06-19 22:54:45,985.985 INFO    ] 200
[2026-06-19 22:54:45,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:46,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:54:46,048.048 INFO    ] No update needed
[2026-06-19 22:54:46,051.051 INFO    ] Checking for camera pi updates...
[2026-06-19 22:54:46,087.087 INFO    ] 200
[2026-06-19 22:54:46,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:46,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:54:46,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:54:46,179.179 INFO    ] No camera update needed
[2026-06-19 22:54:46,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:54:46,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:54:46,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:54:46,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:54:48,236.236 INFO    ] ================================================
[2026-06-19 22:54:48,251.251 INFO    ] Launching Daemon at Fri Jun 19 22:54:48 IST 2026
[2026-06-19 22:54:48,262.262 INFO    ] ================================================
[2026-06-19 22:54:48,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:54:48
[2026-06-19 22:54:49,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:54:49,685.685 INFO    ] Initializing speech engine...
[2026-06-19 22:54:49,692.692 INFO    ] 2026-06-19 22:54:49
[2026-06-19 22:54:49,949.949 INFO    ] 2026-06-19 22:54:49
[2026-06-19 22:54:49,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:54:50,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:54:50,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:54:50,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:54:50,406.406 INFO    ] time= 19/06/2026 22:54:50
[2026-06-19 22:54:50,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:54:50,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:54:50,615.615 INFO    ] No existing commands found in stream
[2026-06-19 22:54:55,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:54:55,648.648 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-19 22:54:59,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:54:59,082.082 INFO    ] Checking for system updates...
[2026-06-19 22:54:59,123.123 INFO    ] 200
[2026-06-19 22:54:59,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:59,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:54:59,191.191 INFO    ] No update needed
[2026-06-19 22:54:59,194.194 INFO    ] Checking for camera pi updates...
[2026-06-19 22:54:59,234.234 INFO    ] 200
[2026-06-19 22:54:59,237.237 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:54:59,280.280 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:54:59,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:54:59,331.331 INFO    ] No camera update needed
[2026-06-19 22:54:59,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:54:59,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:54:59,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:54:59,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:55:01,390.390 INFO    ] ================================================
[2026-06-19 22:55:01,405.405 INFO    ] Launching Daemon at Fri Jun 19 22:55:01 IST 2026
[2026-06-19 22:55:01,416.416 INFO    ] ================================================
[2026-06-19 22:55:02,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:55:02
[2026-06-19 22:55:03,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:55:03,420.420 INFO    ] Initializing speech engine...
[2026-06-19 22:55:03,423.423 INFO    ] 2026-06-19 22:55:03
[2026-06-19 22:55:03,755.755 INFO    ] 2026-06-19 22:55:03
[2026-06-19 22:55:03,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:55:04,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:55:04,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:55:04,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:55:04,256.256 INFO    ] time= 19/06/2026 22:55:04
[2026-06-19 22:55:04,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:55:04,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:55:04,412.412 INFO    ] No existing commands found in stream
[2026-06-19 22:55:09,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:55:09,428.428 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-19 22:55:10,022.022 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:55:10,024.024 INFO    ] Checking for system updates...
[2026-06-19 22:55:10,065.065 INFO    ] 200
[2026-06-19 22:55:10,067.067 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:10,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:55:10,124.124 INFO    ] No update needed
[2026-06-19 22:55:10,126.126 INFO    ] Checking for camera pi updates...
[2026-06-19 22:55:10,161.161 INFO    ] 200
[2026-06-19 22:55:10,163.163 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:10,210.210 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:55:10,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:55:10,258.258 INFO    ] No camera update needed
[2026-06-19 22:55:10,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:55:10,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:55:10,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:55:10,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:55:12,314.314 INFO    ] ================================================
[2026-06-19 22:55:12,330.330 INFO    ] Launching Daemon at Fri Jun 19 22:55:12 IST 2026
[2026-06-19 22:55:12,341.341 INFO    ] ================================================
[2026-06-19 22:55:12,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:55:12
[2026-06-19 22:55:13,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:55:13,952.952 INFO    ] Initializing speech engine...
[2026-06-19 22:55:13,960.960 INFO    ] 2026-06-19 22:55:13
[2026-06-19 22:55:14,244.244 INFO    ] 2026-06-19 22:55:14
[2026-06-19 22:55:14,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:55:14,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:55:14,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:55:14,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:55:14,781.781 INFO    ] time= 19/06/2026 22:55:14
[2026-06-19 22:55:14,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:55:14,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:55:14,934.934 INFO    ] No existing commands found in stream
[2026-06-19 22:55:19,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:55:19,952.952 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-19 22:55:20,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:55:20,481.481 INFO    ] Checking for system updates...
[2026-06-19 22:55:20,519.519 INFO    ] 200
[2026-06-19 22:55:20,522.522 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:20,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:55:20,579.579 INFO    ] No update needed
[2026-06-19 22:55:20,582.582 INFO    ] Checking for camera pi updates...
[2026-06-19 22:55:20,620.620 INFO    ] 200
[2026-06-19 22:55:20,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:20,673.673 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:55:20,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:55:20,725.725 INFO    ] No camera update needed
[2026-06-19 22:55:20,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:55:20,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:55:20,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:55:20,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:55:22,783.783 INFO    ] ================================================
[2026-06-19 22:55:22,798.798 INFO    ] Launching Daemon at Fri Jun 19 22:55:22 IST 2026
[2026-06-19 22:55:22,809.809 INFO    ] ================================================
[2026-06-19 22:55:23,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:55:23
[2026-06-19 22:55:23,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:55:24,222.222 INFO    ] Initializing speech engine...
[2026-06-19 22:55:24,230.230 INFO    ] 2026-06-19 22:55:24
[2026-06-19 22:55:24,512.512 INFO    ] 2026-06-19 22:55:24
[2026-06-19 22:55:24,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:55:24,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:55:24,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:55:24,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:55:24,890.890 INFO    ] time= 19/06/2026 22:55:24
[2026-06-19 22:55:24,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:55:24,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:55:25,014.014 INFO    ] No existing commands found in stream
[2026-06-19 22:55:30,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:55:30,028.028 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 22:55:32,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:55:32,596.596 INFO    ] Checking for system updates...
[2026-06-19 22:55:32,634.634 INFO    ] 200
[2026-06-19 22:55:32,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:32,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:55:32,700.700 INFO    ] No update needed
[2026-06-19 22:55:32,704.704 INFO    ] Checking for camera pi updates...
[2026-06-19 22:55:32,746.746 INFO    ] 200
[2026-06-19 22:55:32,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:32,793.793 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:55:32,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:55:32,828.828 INFO    ] No camera update needed
[2026-06-19 22:55:32,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:55:32,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:55:32,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:55:32,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:55:34,887.887 INFO    ] ================================================
[2026-06-19 22:55:34,903.903 INFO    ] Launching Daemon at Fri Jun 19 22:55:34 IST 2026
[2026-06-19 22:55:34,914.914 INFO    ] ================================================
[2026-06-19 22:55:35,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:55:35
[2026-06-19 22:55:36,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:55:36,340.340 INFO    ] Initializing speech engine...
[2026-06-19 22:55:36,350.350 INFO    ] 2026-06-19 22:55:36
[2026-06-19 22:55:36,599.599 INFO    ] 2026-06-19 22:55:36
[2026-06-19 22:55:36,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:55:36,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:55:36,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:55:37,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:55:37,077.077 INFO    ] time= 19/06/2026 22:55:37
[2026-06-19 22:55:37,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:55:37,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:55:37,233.233 INFO    ] No existing commands found in stream
[2026-06-19 22:55:42,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:55:42,272.272 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 22:55:46,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:55:46,379.379 INFO    ] Checking for system updates...
[2026-06-19 22:55:46,414.414 INFO    ] 200
[2026-06-19 22:55:46,417.417 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:46,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:55:46,479.479 INFO    ] No update needed
[2026-06-19 22:55:46,481.481 INFO    ] Checking for camera pi updates...
[2026-06-19 22:55:46,516.516 INFO    ] 200
[2026-06-19 22:55:46,519.519 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:46,559.559 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:55:46,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:55:46,644.644 INFO    ] No camera update needed
[2026-06-19 22:55:46,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:55:46,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:55:46,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:55:46,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:55:48,701.701 INFO    ] ================================================
[2026-06-19 22:55:48,717.717 INFO    ] Launching Daemon at Fri Jun 19 22:55:48 IST 2026
[2026-06-19 22:55:48,727.727 INFO    ] ================================================
[2026-06-19 22:55:49,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:55:49
[2026-06-19 22:55:49,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:55:50,183.183 INFO    ] Initializing speech engine...
[2026-06-19 22:55:50,192.192 INFO    ] 2026-06-19 22:55:50
[2026-06-19 22:55:50,489.489 INFO    ] 2026-06-19 22:55:50
[2026-06-19 22:55:50,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:55:50,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:55:50,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:55:50,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:55:50,914.914 INFO    ] time= 19/06/2026 22:55:50
[2026-06-19 22:55:50,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:55:50,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:55:51,082.082 INFO    ] No existing commands found in stream
[2026-06-19 22:55:56,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:55:56,105.105 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 22:55:58,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:55:58,701.701 INFO    ] Checking for system updates...
[2026-06-19 22:55:58,741.741 INFO    ] 200
[2026-06-19 22:55:58,744.744 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:58,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:55:58,800.800 INFO    ] No update needed
[2026-06-19 22:55:58,803.803 INFO    ] Checking for camera pi updates...
[2026-06-19 22:55:58,837.837 INFO    ] 200
[2026-06-19 22:55:58,840.840 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:55:58,886.886 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:55:58,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:55:58,937.937 INFO    ] No camera update needed
[2026-06-19 22:55:58,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:55:58,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:55:58,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:55:58,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:56:01,995.995 INFO    ] ================================================
[2026-06-19 22:56:01,011.011 INFO    ] Launching Daemon at Fri Jun 19 22:56:01 IST 2026
[2026-06-19 22:56:01,021.021 INFO    ] ================================================
[2026-06-19 22:56:01,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:56:01
[2026-06-19 22:56:02,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:56:03,011.011 INFO    ] Initializing speech engine...
[2026-06-19 22:56:03,025.025 INFO    ] 2026-06-19 22:56:03
[2026-06-19 22:56:03,295.295 INFO    ] 2026-06-19 22:56:03
[2026-06-19 22:56:03,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:56:03,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:56:03,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:56:03,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:56:03,819.819 INFO    ] time= 19/06/2026 22:56:03
[2026-06-19 22:56:03,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:56:03,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:56:04,024.024 INFO    ] No existing commands found in stream
[2026-06-19 22:56:09,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:56:09,053.053 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 22:56:09,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:56:09,747.747 INFO    ] Checking for system updates...
[2026-06-19 22:56:09,794.794 INFO    ] 200
[2026-06-19 22:56:09,797.797 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:56:09,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:56:09,859.859 INFO    ] No update needed
[2026-06-19 22:56:09,862.862 INFO    ] Checking for camera pi updates...
[2026-06-19 22:56:09,898.898 INFO    ] 200
[2026-06-19 22:56:09,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:56:09,949.949 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:56:09,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:56:10,001.001 INFO    ] No camera update needed
[2026-06-19 22:56:10,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:56:10,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:56:10,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:56:10,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:56:12,060.060 INFO    ] ================================================
[2026-06-19 22:56:12,076.076 INFO    ] Launching Daemon at Fri Jun 19 22:56:12 IST 2026
[2026-06-19 22:56:12,088.088 INFO    ] ================================================
[2026-06-19 22:56:12,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:56:12
[2026-06-19 22:56:13,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:56:13,626.626 INFO    ] Initializing speech engine...
[2026-06-19 22:56:13,633.633 INFO    ] 2026-06-19 22:56:13
[2026-06-19 22:56:13,893.893 INFO    ] 2026-06-19 22:56:13
[2026-06-19 22:56:13,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:56:14,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:56:14,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:56:14,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:56:14,351.351 INFO    ] time= 19/06/2026 22:56:14
[2026-06-19 22:56:14,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:56:14,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:56:14,555.555 INFO    ] No existing commands found in stream
[2026-06-19 22:56:19,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:56:19,585.585 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-19 22:56:21,049.049 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:56:21,052.052 INFO    ] Checking for system updates...
[2026-06-19 22:56:21,094.094 INFO    ] 200
[2026-06-19 22:56:21,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:56:21,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:56:21,153.153 INFO    ] No update needed
[2026-06-19 22:56:21,156.156 INFO    ] Checking for camera pi updates...
[2026-06-19 22:56:21,192.192 INFO    ] 200
[2026-06-19 22:56:21,195.195 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:56:21,243.243 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:56:21,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:56:21,295.295 INFO    ] No camera update needed
[2026-06-19 22:56:21,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:56:21,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:56:21,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:56:21,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:56:23,356.356 INFO    ] ================================================
[2026-06-19 22:56:23,372.372 INFO    ] Launching Daemon at Fri Jun 19 22:56:23 IST 2026
[2026-06-19 22:56:23,383.383 INFO    ] ================================================
[2026-06-19 22:56:24,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:56:24
[2026-06-19 22:56:24,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:56:24,949.949 INFO    ] Initializing speech engine...
[2026-06-19 22:56:24,956.956 INFO    ] 2026-06-19 22:56:24
[2026-06-19 22:56:25,216.216 INFO    ] 2026-06-19 22:56:25
[2026-06-19 22:56:25,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:56:25,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:56:25,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:56:25,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:56:25,684.684 INFO    ] time= 19/06/2026 22:56:25
[2026-06-19 22:56:25,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:56:25,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:56:25,842.842 INFO    ] No existing commands found in stream
[2026-06-19 22:56:30,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:56:30,856.856 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-19 22:56:33,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:56:33,522.522 INFO    ] Checking for system updates...
[2026-06-19 22:56:33,563.563 INFO    ] 200
[2026-06-19 22:56:33,565.565 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:56:33,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:56:33,628.628 INFO    ] No update needed
[2026-06-19 22:56:33,631.631 INFO    ] Checking for camera pi updates...
[2026-06-19 22:56:33,669.669 INFO    ] 200
[2026-06-19 22:56:33,671.671 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:56:33,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:56:33,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:56:33,857.857 INFO    ] No camera update needed
[2026-06-19 22:56:33,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:56:33,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:56:33,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:56:33,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:56:35,913.913 INFO    ] ================================================
[2026-06-19 22:56:35,929.929 INFO    ] Launching Daemon at Fri Jun 19 22:56:35 IST 2026
[2026-06-19 22:56:35,939.939 INFO    ] ================================================
[2026-06-19 22:56:36,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:56:36
[2026-06-19 22:56:37,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:56:37,360.360 INFO    ] Initializing speech engine...
[2026-06-19 22:56:37,370.370 INFO    ] 2026-06-19 22:56:37
[2026-06-19 22:56:37,616.616 INFO    ] 2026-06-19 22:56:37
[2026-06-19 22:56:37,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:56:37,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:56:37,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:56:38,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:56:38,102.102 INFO    ] time= 19/06/2026 22:56:38
[2026-06-19 22:56:38,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:56:38,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:56:38,276.276 INFO    ] No existing commands found in stream
[2026-06-19 22:56:43,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:56:43,311.311 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 22:56:47,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:56:47,440.440 INFO    ] Checking for system updates...
[2026-06-19 22:56:47,476.476 INFO    ] 200
[2026-06-19 22:56:47,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:56:47,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:56:47,542.542 INFO    ] No update needed
[2026-06-19 22:56:47,544.544 INFO    ] Checking for camera pi updates...
[2026-06-19 22:56:47,577.577 INFO    ] 200
[2026-06-19 22:56:47,580.580 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:56:47,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:56:47,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:56:47,653.653 INFO    ] No camera update needed
[2026-06-19 22:56:47,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:56:47,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:56:47,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:56:47,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:56:49,709.709 INFO    ] ================================================
[2026-06-19 22:56:49,724.724 INFO    ] Launching Daemon at Fri Jun 19 22:56:49 IST 2026
[2026-06-19 22:56:49,734.734 INFO    ] ================================================
[2026-06-19 22:56:50,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:56:50
[2026-06-19 22:56:50,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:56:51,150.150 INFO    ] Initializing speech engine...
[2026-06-19 22:56:51,163.163 INFO    ] 2026-06-19 22:56:51
[2026-06-19 22:56:51,430.430 INFO    ] 2026-06-19 22:56:51
[2026-06-19 22:56:51,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:56:51,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:56:51,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:56:51,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:56:52,001.001 INFO    ] time= 19/06/2026 22:56:51
[2026-06-19 22:56:52,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:56:52,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:56:52,131.131 INFO    ] No existing commands found in stream
[2026-06-19 22:56:57,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:56:57,159.159 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 22:56:59,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:56:59,989.989 INFO    ] Checking for system updates...
[2026-06-19 22:57:00,026.026 INFO    ] 200
[2026-06-19 22:57:00,029.029 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:00,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:57:00,095.095 INFO    ] No update needed
[2026-06-19 22:57:00,098.098 INFO    ] Checking for camera pi updates...
[2026-06-19 22:57:00,133.133 INFO    ] 200
[2026-06-19 22:57:00,136.136 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:00,186.186 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:57:00,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:57:00,238.238 INFO    ] No camera update needed
[2026-06-19 22:57:00,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:57:00,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:57:00,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:57:00,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:57:02,312.312 INFO    ] ================================================
[2026-06-19 22:57:02,339.339 INFO    ] Launching Daemon at Fri Jun 19 22:57:02 IST 2026
[2026-06-19 22:57:02,362.362 INFO    ] ================================================
[2026-06-19 22:57:03,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:57:03
[2026-06-19 22:57:03,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:57:04,113.113 INFO    ] Initializing speech engine...
[2026-06-19 22:57:04,118.118 INFO    ] 2026-06-19 22:57:04
[2026-06-19 22:57:04,396.396 INFO    ] 2026-06-19 22:57:04
[2026-06-19 22:57:04,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:57:04,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:57:04,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:57:04,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:57:04,877.877 INFO    ] time= 19/06/2026 22:57:04
[2026-06-19 22:57:04,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:57:04,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:57:05,038.038 INFO    ] No existing commands found in stream
[2026-06-19 22:57:10,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:57:10,079.079 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 22:57:13,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 22:57:13,357.357 INFO    ] Checking for system updates...
[2026-06-19 22:57:13,398.398 INFO    ] 200
[2026-06-19 22:57:13,401.401 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:13,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:57:13,465.465 INFO    ] No update needed
[2026-06-19 22:57:13,468.468 INFO    ] Checking for camera pi updates...
[2026-06-19 22:57:13,502.502 INFO    ] 200
[2026-06-19 22:57:13,504.504 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:13,552.552 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:57:13,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:57:13,599.599 INFO    ] No camera update needed
[2026-06-19 22:57:13,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:57:13,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:57:13,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:57:13,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:57:15,654.654 INFO    ] ================================================
[2026-06-19 22:57:15,670.670 INFO    ] Launching Daemon at Fri Jun 19 22:57:15 IST 2026
[2026-06-19 22:57:15,681.681 INFO    ] ================================================
[2026-06-19 22:57:16,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:57:16
[2026-06-19 22:57:17,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:57:17,329.329 INFO    ] Initializing speech engine...
[2026-06-19 22:57:17,338.338 INFO    ] 2026-06-19 22:57:17
[2026-06-19 22:57:17,649.649 INFO    ] 2026-06-19 22:57:17
[2026-06-19 22:57:17,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:57:17,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:57:17,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:57:18,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:57:18,158.158 INFO    ] time= 19/06/2026 22:57:18
[2026-06-19 22:57:18,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:57:18,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:57:18,317.317 INFO    ] No existing commands found in stream
[2026-06-19 22:57:23,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:57:23,352.352 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-19 22:57:24,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:57:24,391.391 INFO    ] Checking for system updates...
[2026-06-19 22:57:24,433.433 INFO    ] 200
[2026-06-19 22:57:24,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:24,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:57:24,500.500 INFO    ] No update needed
[2026-06-19 22:57:24,503.503 INFO    ] Checking for camera pi updates...
[2026-06-19 22:57:24,538.538 INFO    ] 200
[2026-06-19 22:57:24,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:24,583.583 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:57:24,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:57:24,632.632 INFO    ] No camera update needed
[2026-06-19 22:57:24,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:57:24,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:57:24,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:57:24,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:57:26,690.690 INFO    ] ================================================
[2026-06-19 22:57:26,705.705 INFO    ] Launching Daemon at Fri Jun 19 22:57:26 IST 2026
[2026-06-19 22:57:26,717.717 INFO    ] ================================================
[2026-06-19 22:57:27,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:57:27
[2026-06-19 22:57:27,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:57:28,141.141 INFO    ] Initializing speech engine...
[2026-06-19 22:57:28,147.147 INFO    ] 2026-06-19 22:57:28
[2026-06-19 22:57:28,393.393 INFO    ] 2026-06-19 22:57:28
[2026-06-19 22:57:28,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:57:28,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:57:28,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:57:28,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:57:28,874.874 INFO    ] time= 19/06/2026 22:57:28
[2026-06-19 22:57:28,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:57:28,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:57:29,014.014 INFO    ] No existing commands found in stream
[2026-06-19 22:57:34,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:57:34,037.037 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 22:57:35,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 22:57:35,411.411 INFO    ] Checking for system updates...
[2026-06-19 22:57:35,447.447 INFO    ] 200
[2026-06-19 22:57:35,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:35,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:57:35,504.504 INFO    ] No update needed
[2026-06-19 22:57:35,507.507 INFO    ] Checking for camera pi updates...
[2026-06-19 22:57:35,541.541 INFO    ] 200
[2026-06-19 22:57:35,543.543 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:35,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:57:35,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:57:35,640.640 INFO    ] No camera update needed
[2026-06-19 22:57:35,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:57:35,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:57:35,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:57:35,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:57:37,695.695 INFO    ] ================================================
[2026-06-19 22:57:37,710.710 INFO    ] Launching Daemon at Fri Jun 19 22:57:37 IST 2026
[2026-06-19 22:57:37,721.721 INFO    ] ================================================
[2026-06-19 22:57:38,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:57:38
[2026-06-19 22:57:38,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:57:39,129.129 INFO    ] Initializing speech engine...
[2026-06-19 22:57:39,151.151 INFO    ] 2026-06-19 22:57:39
[2026-06-19 22:57:39,408.408 INFO    ] 2026-06-19 22:57:39
[2026-06-19 22:57:39,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:57:39,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:57:39,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:57:39,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:57:39,786.786 INFO    ] time= 19/06/2026 22:57:39
[2026-06-19 22:57:39,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:57:39,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:57:39,964.964 INFO    ] No existing commands found in stream
[2026-06-19 22:57:44,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:57:44,998.998 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 22:57:49,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:57:49,368.368 INFO    ] Checking for system updates...
[2026-06-19 22:57:49,410.410 INFO    ] 200
[2026-06-19 22:57:49,413.413 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:49,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:57:49,472.472 INFO    ] No update needed
[2026-06-19 22:57:49,475.475 INFO    ] Checking for camera pi updates...
[2026-06-19 22:57:49,514.514 INFO    ] 200
[2026-06-19 22:57:49,517.517 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:57:49,565.565 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:57:49,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:57:49,606.606 INFO    ] No camera update needed
[2026-06-19 22:57:49,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:57:49,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:57:49,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:57:49,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:57:51,668.668 INFO    ] ================================================
[2026-06-19 22:57:51,683.683 INFO    ] Launching Daemon at Fri Jun 19 22:57:51 IST 2026
[2026-06-19 22:57:51,694.694 INFO    ] ================================================
[2026-06-19 22:57:52,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:57:52
[2026-06-19 22:57:52,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:57:53,115.115 INFO    ] Initializing speech engine...
[2026-06-19 22:57:53,126.126 INFO    ] 2026-06-19 22:57:53
[2026-06-19 22:57:53,371.371 INFO    ] 2026-06-19 22:57:53
[2026-06-19 22:57:53,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:57:53,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:57:53,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:57:53,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:57:53,860.860 INFO    ] time= 19/06/2026 22:57:53
[2026-06-19 22:57:53,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:57:53,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:57:54,059.059 INFO    ] No existing commands found in stream
[2026-06-19 22:57:59,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:57:59,089.089 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 22:58:00,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 22:58:00,869.869 INFO    ] Checking for system updates...
[2026-06-19 22:58:00,907.907 INFO    ] 200
[2026-06-19 22:58:00,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:00,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:58:00,966.966 INFO    ] No update needed
[2026-06-19 22:58:00,969.969 INFO    ] Checking for camera pi updates...
[2026-06-19 22:58:01,004.004 INFO    ] 200
[2026-06-19 22:58:01,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:01,049.049 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:58:01,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:58:01,100.100 INFO    ] No camera update needed
[2026-06-19 22:58:01,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:58:01,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:58:01,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:58:01,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:58:03,166.166 INFO    ] ================================================
[2026-06-19 22:58:03,186.186 INFO    ] Launching Daemon at Fri Jun 19 22:58:03 IST 2026
[2026-06-19 22:58:03,202.202 INFO    ] ================================================
[2026-06-19 22:58:03,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:58:03
[2026-06-19 22:58:04,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:58:04,855.855 INFO    ] Initializing speech engine...
[2026-06-19 22:58:04,864.864 INFO    ] 2026-06-19 22:58:04
[2026-06-19 22:58:05,110.110 INFO    ] 2026-06-19 22:58:05
[2026-06-19 22:58:05,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:58:05,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:58:05,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:58:05,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:58:05,576.576 INFO    ] time= 19/06/2026 22:58:05
[2026-06-19 22:58:05,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:58:05,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:58:05,731.731 INFO    ] No existing commands found in stream
[2026-06-19 22:58:10,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:58:10,745.745 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 22:58:12,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:58:12,618.618 INFO    ] Checking for system updates...
[2026-06-19 22:58:12,659.659 INFO    ] 200
[2026-06-19 22:58:12,662.662 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:12,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:58:12,725.725 INFO    ] No update needed
[2026-06-19 22:58:12,728.728 INFO    ] Checking for camera pi updates...
[2026-06-19 22:58:12,761.761 INFO    ] 200
[2026-06-19 22:58:12,764.764 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:12,804.804 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:58:12,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:58:12,853.853 INFO    ] No camera update needed
[2026-06-19 22:58:12,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:58:12,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:58:12,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:58:12,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:58:14,911.911 INFO    ] ================================================
[2026-06-19 22:58:14,926.926 INFO    ] Launching Daemon at Fri Jun 19 22:58:14 IST 2026
[2026-06-19 22:58:14,937.937 INFO    ] ================================================
[2026-06-19 22:58:15,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:58:15
[2026-06-19 22:58:16,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:58:16,364.364 INFO    ] Initializing speech engine...
[2026-06-19 22:58:16,380.380 INFO    ] 2026-06-19 22:58:16
[2026-06-19 22:58:16,671.671 INFO    ] 2026-06-19 22:58:16
[2026-06-19 22:58:16,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:58:16,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:58:16,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:58:17,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:58:17,061.061 INFO    ] time= 19/06/2026 22:58:17
[2026-06-19 22:58:17,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:58:17,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:58:17,189.189 INFO    ] No existing commands found in stream
[2026-06-19 22:58:22,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:58:22,204.204 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 22:58:22,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:58:23,002.002 INFO    ] Checking for system updates...
[2026-06-19 22:58:23,043.043 INFO    ] 200
[2026-06-19 22:58:23,046.046 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:23,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:58:23,102.102 INFO    ] No update needed
[2026-06-19 22:58:23,104.104 INFO    ] Checking for camera pi updates...
[2026-06-19 22:58:23,139.139 INFO    ] 200
[2026-06-19 22:58:23,141.141 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:23,182.182 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:58:23,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:58:23,228.228 INFO    ] No camera update needed
[2026-06-19 22:58:23,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:58:23,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:58:23,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:58:23,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:58:25,285.285 INFO    ] ================================================
[2026-06-19 22:58:25,301.301 INFO    ] Launching Daemon at Fri Jun 19 22:58:25 IST 2026
[2026-06-19 22:58:25,312.312 INFO    ] ================================================
[2026-06-19 22:58:25,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:58:25
[2026-06-19 22:58:26,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:58:26,773.773 INFO    ] Initializing speech engine...
[2026-06-19 22:58:26,780.780 INFO    ] 2026-06-19 22:58:26
[2026-06-19 22:58:27,042.042 INFO    ] 2026-06-19 22:58:27
[2026-06-19 22:58:27,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:58:27,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:58:27,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:58:27,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:58:27,526.526 INFO    ] time= 19/06/2026 22:58:27
[2026-06-19 22:58:27,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:58:27,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:58:27,725.725 INFO    ] No existing commands found in stream
[2026-06-19 22:58:32,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:58:32,752.752 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-19 22:58:34,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:58:34,478.478 INFO    ] Checking for system updates...
[2026-06-19 22:58:34,515.515 INFO    ] 200
[2026-06-19 22:58:34,518.518 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:34,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:58:34,581.581 INFO    ] No update needed
[2026-06-19 22:58:34,583.583 INFO    ] Checking for camera pi updates...
[2026-06-19 22:58:34,622.622 INFO    ] 200
[2026-06-19 22:58:34,624.624 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:34,671.671 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:58:34,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:58:34,722.722 INFO    ] No camera update needed
[2026-06-19 22:58:34,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:58:34,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:58:34,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:58:34,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:58:36,782.782 INFO    ] ================================================
[2026-06-19 22:58:36,798.798 INFO    ] Launching Daemon at Fri Jun 19 22:58:36 IST 2026
[2026-06-19 22:58:36,809.809 INFO    ] ================================================
[2026-06-19 22:58:37,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:58:37
[2026-06-19 22:58:38,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:58:38,482.482 INFO    ] Initializing speech engine...
[2026-06-19 22:58:38,488.488 INFO    ] 2026-06-19 22:58:38
[2026-06-19 22:58:38,803.803 INFO    ] 2026-06-19 22:58:38
[2026-06-19 22:58:38,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:58:39,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:58:39,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:58:39,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:58:39,323.323 INFO    ] time= 19/06/2026 22:58:39
[2026-06-19 22:58:39,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:58:39,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:58:39,481.481 INFO    ] No existing commands found in stream
[2026-06-19 22:58:44,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:58:44,501.501 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-19 22:58:46,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:58:46,643.643 INFO    ] Checking for system updates...
[2026-06-19 22:58:46,680.680 INFO    ] 200
[2026-06-19 22:58:46,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:46,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:58:46,748.748 INFO    ] No update needed
[2026-06-19 22:58:46,750.750 INFO    ] Checking for camera pi updates...
[2026-06-19 22:58:46,788.788 INFO    ] 200
[2026-06-19 22:58:46,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:46,831.831 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:58:46,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 22:58:46,979.979 INFO    ] No camera update needed
[2026-06-19 22:58:46,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:58:46,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:58:46,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:58:46,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:58:49,034.034 INFO    ] ================================================
[2026-06-19 22:58:49,050.050 INFO    ] Launching Daemon at Fri Jun 19 22:58:49 IST 2026
[2026-06-19 22:58:49,062.062 INFO    ] ================================================
[2026-06-19 22:58:49,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:58:49
[2026-06-19 22:58:50,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:58:50,517.517 INFO    ] Initializing speech engine...
[2026-06-19 22:58:50,527.527 INFO    ] 2026-06-19 22:58:50
[2026-06-19 22:58:50,790.790 INFO    ] 2026-06-19 22:58:50
[2026-06-19 22:58:50,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:58:51,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:58:51,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:58:51,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:58:51,280.280 INFO    ] time= 19/06/2026 22:58:51
[2026-06-19 22:58:51,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:58:51,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:58:51,479.479 INFO    ] No existing commands found in stream
[2026-06-19 22:58:56,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:58:56,502.502 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 22:58:58,912.912 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:58:58,914.914 INFO    ] Checking for system updates...
[2026-06-19 22:58:58,950.950 INFO    ] 200
[2026-06-19 22:58:58,953.953 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:59,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:58:59,016.016 INFO    ] No update needed
[2026-06-19 22:58:59,018.018 INFO    ] Checking for camera pi updates...
[2026-06-19 22:58:59,053.053 INFO    ] 200
[2026-06-19 22:58:59,055.055 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:58:59,097.097 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:58:59,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:58:59,138.138 INFO    ] No camera update needed
[2026-06-19 22:58:59,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:58:59,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:58:59,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:58:59,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:59:01,193.193 INFO    ] ================================================
[2026-06-19 22:59:01,208.208 INFO    ] Launching Daemon at Fri Jun 19 22:59:01 IST 2026
[2026-06-19 22:59:01,219.219 INFO    ] ================================================
[2026-06-19 22:59:01,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:59:01
[2026-06-19 22:59:02,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:59:02,842.842 INFO    ] Initializing speech engine...
[2026-06-19 22:59:02,854.854 INFO    ] 2026-06-19 22:59:02
[2026-06-19 22:59:03,146.146 INFO    ] 2026-06-19 22:59:03
[2026-06-19 22:59:03,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:59:03,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:59:03,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:59:03,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:59:03,613.613 INFO    ] time= 19/06/2026 22:59:03
[2026-06-19 22:59:03,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:59:03,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:59:03,768.768 INFO    ] No existing commands found in stream
[2026-06-19 22:59:08,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:59:08,778.778 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 22:59:12,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:59:12,450.450 INFO    ] Checking for system updates...
[2026-06-19 22:59:12,491.491 INFO    ] 200
[2026-06-19 22:59:12,494.494 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:59:12,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:59:12,556.556 INFO    ] No update needed
[2026-06-19 22:59:12,558.558 INFO    ] Checking for camera pi updates...
[2026-06-19 22:59:12,594.594 INFO    ] 200
[2026-06-19 22:59:12,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:59:12,647.647 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:59:12,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:59:12,689.689 INFO    ] No camera update needed
[2026-06-19 22:59:12,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:59:12,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:59:12,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:59:12,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:59:14,746.746 INFO    ] ================================================
[2026-06-19 22:59:14,761.761 INFO    ] Launching Daemon at Fri Jun 19 22:59:14 IST 2026
[2026-06-19 22:59:14,772.772 INFO    ] ================================================
[2026-06-19 22:59:15,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:59:15
[2026-06-19 22:59:15,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:59:16,210.210 INFO    ] Initializing speech engine...
[2026-06-19 22:59:16,219.219 INFO    ] 2026-06-19 22:59:16
[2026-06-19 22:59:16,470.470 INFO    ] 2026-06-19 22:59:16
[2026-06-19 22:59:16,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:59:16,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:59:16,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:59:16,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:59:17,027.027 INFO    ] time= 19/06/2026 22:59:16
[2026-06-19 22:59:17,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:59:17,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:59:17,168.168 INFO    ] No existing commands found in stream
[2026-06-19 22:59:22,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:59:22,193.193 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-19 22:59:25,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 22:59:25,151.151 INFO    ] Checking for system updates...
[2026-06-19 22:59:25,191.191 INFO    ] 200
[2026-06-19 22:59:25,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:59:25,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:59:25,256.256 INFO    ] No update needed
[2026-06-19 22:59:25,258.258 INFO    ] Checking for camera pi updates...
[2026-06-19 22:59:25,292.292 INFO    ] 200
[2026-06-19 22:59:25,294.294 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:59:25,335.335 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:59:25,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:59:25,380.380 INFO    ] No camera update needed
[2026-06-19 22:59:25,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:59:25,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:59:25,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:59:25,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:59:27,436.436 INFO    ] ================================================
[2026-06-19 22:59:27,452.452 INFO    ] Launching Daemon at Fri Jun 19 22:59:27 IST 2026
[2026-06-19 22:59:27,464.464 INFO    ] ================================================
[2026-06-19 22:59:28,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:59:28
[2026-06-19 22:59:28,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:59:29,093.093 INFO    ] Initializing speech engine...
[2026-06-19 22:59:29,107.107 INFO    ] 2026-06-19 22:59:29
[2026-06-19 22:59:29,418.418 INFO    ] 2026-06-19 22:59:29
[2026-06-19 22:59:29,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:59:29,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:59:29,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:59:29,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:59:29,931.931 INFO    ] time= 19/06/2026 22:59:29
[2026-06-19 22:59:29,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:59:29,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:59:30,083.083 INFO    ] No existing commands found in stream
[2026-06-19 22:59:35,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:59:35,101.101 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-19 22:59:36,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 22:59:36,259.259 INFO    ] Checking for system updates...
[2026-06-19 22:59:36,296.296 INFO    ] 200
[2026-06-19 22:59:36,299.299 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:59:36,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:59:36,359.359 INFO    ] No update needed
[2026-06-19 22:59:36,362.362 INFO    ] Checking for camera pi updates...
[2026-06-19 22:59:36,396.396 INFO    ] 200
[2026-06-19 22:59:36,398.398 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:59:36,440.440 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:59:36,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:59:36,484.484 INFO    ] No camera update needed
[2026-06-19 22:59:36,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:59:36,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:59:36,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:59:36,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:59:38,538.538 INFO    ] ================================================
[2026-06-19 22:59:38,555.555 INFO    ] Launching Daemon at Fri Jun 19 22:59:38 IST 2026
[2026-06-19 22:59:38,567.567 INFO    ] ================================================
[2026-06-19 22:59:39,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:59:39
[2026-06-19 22:59:39,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:59:40,011.011 INFO    ] Initializing speech engine...
[2026-06-19 22:59:40,020.020 INFO    ] 2026-06-19 22:59:40
[2026-06-19 22:59:40,266.266 INFO    ] 2026-06-19 22:59:40
[2026-06-19 22:59:40,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:59:40,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:59:40,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:59:40,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:59:40,781.781 INFO    ] time= 19/06/2026 22:59:40
[2026-06-19 22:59:40,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:59:40,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:59:40,947.947 INFO    ] No existing commands found in stream
[2026-06-19 22:59:45,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:59:45,982.982 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 22:59:48,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 22:59:48,333.333 INFO    ] Checking for system updates...
[2026-06-19 22:59:48,369.369 INFO    ] 200
[2026-06-19 22:59:48,371.371 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:59:48,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:59:48,437.437 INFO    ] No update needed
[2026-06-19 22:59:48,439.439 INFO    ] Checking for camera pi updates...
[2026-06-19 22:59:48,478.478 INFO    ] 200
[2026-06-19 22:59:48,480.480 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 22:59:48,521.521 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 22:59:48,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 22:59:48,551.551 INFO    ] No camera update needed
[2026-06-19 22:59:48,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-19 22:59:48,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 22:59:48,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 22:59:48,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 22:59:50,608.608 INFO    ] ================================================
[2026-06-19 22:59:50,624.624 INFO    ] Launching Daemon at Fri Jun 19 22:59:50 IST 2026
[2026-06-19 22:59:50,635.635 INFO    ] ================================================
[2026-06-19 22:59:51,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 22:59:51
[2026-06-19 22:59:51,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 22:59:52,082.082 INFO    ] Initializing speech engine...
[2026-06-19 22:59:52,091.091 INFO    ] 2026-06-19 22:59:52
[2026-06-19 22:59:52,390.390 INFO    ] 2026-06-19 22:59:52
[2026-06-19 22:59:52,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 22:59:52,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 22:59:52,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 22:59:52,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 22:59:52,795.795 INFO    ] time= 19/06/2026 22:59:52
[2026-06-19 22:59:52,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 22:59:52,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-19 22:59:52,905.905 INFO    ] No existing commands found in stream
[2026-06-19 22:59:57,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 22:59:57,921.921 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 23:00:01,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:00:01,551.551 INFO    ] Checking for system updates...
[2026-06-19 23:00:01,593.593 INFO    ] 200
[2026-06-19 23:00:01,596.596 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:01,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:00:01,660.660 INFO    ] No update needed
[2026-06-19 23:00:01,663.663 INFO    ] Checking for camera pi updates...
[2026-06-19 23:00:01,703.703 INFO    ] 200
[2026-06-19 23:00:01,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:01,748.748 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:00:01,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:00:01,860.860 INFO    ] No camera update needed
[2026-06-19 23:00:01,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:00:01,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:00:01,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:00:01,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:00:04,039.039 INFO    ] ================================================
[2026-06-19 23:00:04,155.155 INFO    ] Launching Daemon at Fri Jun 19 23:00:04 IST 2026
[2026-06-19 23:00:04,212.212 INFO    ] ================================================
[2026-06-19 23:00:06,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:00:06
[2026-06-19 23:00:07,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:00:07,335.335 INFO    ] Initializing speech engine...
[2026-06-19 23:00:07,342.342 INFO    ] 2026-06-19 23:00:07
[2026-06-19 23:00:07,641.641 INFO    ] 2026-06-19 23:00:07
[2026-06-19 23:00:07,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:00:07,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:00:07,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:00:08,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:00:08,185.185 INFO    ] time= 19/06/2026 23:00:08
[2026-06-19 23:00:08,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:00:08,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:00:08,325.325 INFO    ] No existing commands found in stream
[2026-06-19 23:00:13,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:00:13,357.357 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-19 23:00:16,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:00:16,925.925 INFO    ] Checking for system updates...
[2026-06-19 23:00:16,962.962 INFO    ] 200
[2026-06-19 23:00:16,965.965 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:17,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:00:17,029.029 INFO    ] No update needed
[2026-06-19 23:00:17,032.032 INFO    ] Checking for camera pi updates...
[2026-06-19 23:00:17,070.070 INFO    ] 200
[2026-06-19 23:00:17,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:17,113.113 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:00:17,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:00:17,162.162 INFO    ] No camera update needed
[2026-06-19 23:00:17,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:00:17,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:00:17,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:00:17,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:00:19,217.217 INFO    ] ================================================
[2026-06-19 23:00:19,233.233 INFO    ] Launching Daemon at Fri Jun 19 23:00:19 IST 2026
[2026-06-19 23:00:19,244.244 INFO    ] ================================================
[2026-06-19 23:00:19,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:00:19
[2026-06-19 23:00:20,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:00:20,690.690 INFO    ] Initializing speech engine...
[2026-06-19 23:00:20,700.700 INFO    ] 2026-06-19 23:00:20
[2026-06-19 23:00:20,968.968 INFO    ] 2026-06-19 23:00:20
[2026-06-19 23:00:21,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:00:21,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:00:21,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:00:21,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:00:21,384.384 INFO    ] time= 19/06/2026 23:00:21
[2026-06-19 23:00:21,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:00:21,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:00:21,469.469 INFO    ] No existing commands found in stream
[2026-06-19 23:00:26,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:00:26,484.484 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-19 23:00:29,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:00:29,686.686 INFO    ] Checking for system updates...
[2026-06-19 23:00:29,722.722 INFO    ] 200
[2026-06-19 23:00:29,725.725 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:29,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:00:29,781.781 INFO    ] No update needed
[2026-06-19 23:00:29,783.783 INFO    ] Checking for camera pi updates...
[2026-06-19 23:00:29,818.818 INFO    ] 200
[2026-06-19 23:00:29,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:29,860.860 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:00:29,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:00:29,903.903 INFO    ] No camera update needed
[2026-06-19 23:00:29,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:00:29,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:00:29,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:00:29,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:00:31,961.961 INFO    ] ================================================
[2026-06-19 23:00:31,978.978 INFO    ] Launching Daemon at Fri Jun 19 23:00:31 IST 2026
[2026-06-19 23:00:31,989.989 INFO    ] ================================================
[2026-06-19 23:00:32,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:00:32
[2026-06-19 23:00:33,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:00:33,518.518 INFO    ] Initializing speech engine...
[2026-06-19 23:00:33,524.524 INFO    ] 2026-06-19 23:00:33
[2026-06-19 23:00:33,796.796 INFO    ] 2026-06-19 23:00:33
[2026-06-19 23:00:33,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:00:34,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:00:34,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:00:34,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:00:34,178.178 INFO    ] time= 19/06/2026 23:00:34
[2026-06-19 23:00:34,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:00:34,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:00:34,308.308 INFO    ] No existing commands found in stream
[2026-06-19 23:00:39,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:00:39,320.320 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-19 23:00:41,253.253 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:00:41,256.256 INFO    ] Checking for system updates...
[2026-06-19 23:00:41,298.298 INFO    ] 200
[2026-06-19 23:00:41,301.301 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:41,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:00:41,368.368 INFO    ] No update needed
[2026-06-19 23:00:41,370.370 INFO    ] Checking for camera pi updates...
[2026-06-19 23:00:41,405.405 INFO    ] 200
[2026-06-19 23:00:41,407.407 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:41,449.449 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:00:41,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:00:41,494.494 INFO    ] No camera update needed
[2026-06-19 23:00:41,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:00:41,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:00:41,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:00:41,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:00:43,549.549 INFO    ] ================================================
[2026-06-19 23:00:43,565.565 INFO    ] Launching Daemon at Fri Jun 19 23:00:43 IST 2026
[2026-06-19 23:00:43,576.576 INFO    ] ================================================
[2026-06-19 23:00:44,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:00:44
[2026-06-19 23:00:44,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:00:45,188.188 INFO    ] Initializing speech engine...
[2026-06-19 23:00:45,200.200 INFO    ] 2026-06-19 23:00:45
[2026-06-19 23:00:45,511.511 INFO    ] 2026-06-19 23:00:45
[2026-06-19 23:00:45,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:00:45,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:00:45,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:00:46,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:00:46,029.029 INFO    ] time= 19/06/2026 23:00:46
[2026-06-19 23:00:46,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:00:46,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:00:46,179.179 INFO    ] No existing commands found in stream
[2026-06-19 23:00:51,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:00:51,198.198 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 23:00:53,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:00:53,505.505 INFO    ] Checking for system updates...
[2026-06-19 23:00:53,546.546 INFO    ] 200
[2026-06-19 23:00:53,549.549 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:53,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:00:53,606.606 INFO    ] No update needed
[2026-06-19 23:00:53,609.609 INFO    ] Checking for camera pi updates...
[2026-06-19 23:00:53,644.644 INFO    ] 200
[2026-06-19 23:00:53,646.646 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:00:53,694.694 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:00:53,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:00:53,841.841 INFO    ] No camera update needed
[2026-06-19 23:00:53,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:00:53,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:00:53,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:00:53,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:00:55,900.900 INFO    ] ================================================
[2026-06-19 23:00:55,916.916 INFO    ] Launching Daemon at Fri Jun 19 23:00:55 IST 2026
[2026-06-19 23:00:55,926.926 INFO    ] ================================================
[2026-06-19 23:00:56,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:00:56
[2026-06-19 23:00:57,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:00:57,540.540 INFO    ] Initializing speech engine...
[2026-06-19 23:00:57,546.546 INFO    ] 2026-06-19 23:00:57
[2026-06-19 23:00:57,819.819 INFO    ] 2026-06-19 23:00:57
[2026-06-19 23:00:57,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:00:58,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:00:58,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:00:58,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:00:58,306.306 INFO    ] time= 19/06/2026 23:00:58
[2026-06-19 23:00:58,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:00:58,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:00:58,470.470 INFO    ] No existing commands found in stream
[2026-06-19 23:01:03,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:01:03,487.487 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 23:01:07,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:01:07,168.168 INFO    ] Checking for system updates...
[2026-06-19 23:01:07,206.206 INFO    ] 200
[2026-06-19 23:01:07,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:07,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:01:07,267.267 INFO    ] No update needed
[2026-06-19 23:01:07,269.269 INFO    ] Checking for camera pi updates...
[2026-06-19 23:01:07,305.305 INFO    ] 200
[2026-06-19 23:01:07,308.308 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:07,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:01:07,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:01:07,402.402 INFO    ] No camera update needed
[2026-06-19 23:01:07,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:01:07,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:01:07,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:01:07,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:01:09,462.462 INFO    ] ================================================
[2026-06-19 23:01:09,478.478 INFO    ] Launching Daemon at Fri Jun 19 23:01:09 IST 2026
[2026-06-19 23:01:09,489.489 INFO    ] ================================================
[2026-06-19 23:01:10,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:01:10
[2026-06-19 23:01:10,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:01:10,910.910 INFO    ] Initializing speech engine...
[2026-06-19 23:01:10,931.931 INFO    ] 2026-06-19 23:01:10
[2026-06-19 23:01:11,193.193 INFO    ] 2026-06-19 23:01:11
[2026-06-19 23:01:11,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:01:11,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:01:11,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:01:11,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:01:11,555.555 INFO    ] time= 19/06/2026 23:01:11
[2026-06-19 23:01:11,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:01:11,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:01:11,667.667 INFO    ] No existing commands found in stream
[2026-06-19 23:01:16,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:01:16,682.682 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 23:01:17,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:01:17,410.410 INFO    ] Checking for system updates...
[2026-06-19 23:01:17,446.446 INFO    ] 200
[2026-06-19 23:01:17,449.449 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:17,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:01:17,507.507 INFO    ] No update needed
[2026-06-19 23:01:17,510.510 INFO    ] Checking for camera pi updates...
[2026-06-19 23:01:17,548.548 INFO    ] 200
[2026-06-19 23:01:17,550.550 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:17,592.592 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:01:17,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:01:17,638.638 INFO    ] No camera update needed
[2026-06-19 23:01:17,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:01:17,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:01:17,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:01:17,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:01:19,696.696 INFO    ] ================================================
[2026-06-19 23:01:19,711.711 INFO    ] Launching Daemon at Fri Jun 19 23:01:19 IST 2026
[2026-06-19 23:01:19,721.721 INFO    ] ================================================
[2026-06-19 23:01:20,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:01:20
[2026-06-19 23:01:20,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:01:21,158.158 INFO    ] Initializing speech engine...
[2026-06-19 23:01:21,167.167 INFO    ] 2026-06-19 23:01:21
[2026-06-19 23:01:21,428.428 INFO    ] 2026-06-19 23:01:21
[2026-06-19 23:01:21,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:01:21,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:01:21,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:01:21,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:01:21,885.885 INFO    ] time= 19/06/2026 23:01:21
[2026-06-19 23:01:21,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:01:21,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:01:22,045.045 INFO    ] No existing commands found in stream
[2026-06-19 23:01:27,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:01:27,080.080 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 23:01:28,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:01:28,436.436 INFO    ] Checking for system updates...
[2026-06-19 23:01:28,472.472 INFO    ] 200
[2026-06-19 23:01:28,475.475 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:28,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:01:28,534.534 INFO    ] No update needed
[2026-06-19 23:01:28,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 23:01:28,572.572 INFO    ] 200
[2026-06-19 23:01:28,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:28,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:01:28,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:01:28,664.664 INFO    ] No camera update needed
[2026-06-19 23:01:28,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:01:28,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:01:28,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:01:28,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:01:30,720.720 INFO    ] ================================================
[2026-06-19 23:01:30,736.736 INFO    ] Launching Daemon at Fri Jun 19 23:01:30 IST 2026
[2026-06-19 23:01:30,747.747 INFO    ] ================================================
[2026-06-19 23:01:31,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:01:31
[2026-06-19 23:01:32,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:01:32,359.359 INFO    ] Initializing speech engine...
[2026-06-19 23:01:32,379.379 INFO    ] 2026-06-19 23:01:32
[2026-06-19 23:01:32,658.658 INFO    ] 2026-06-19 23:01:32
[2026-06-19 23:01:32,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:01:32,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:01:32,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:01:33,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:01:33,096.096 INFO    ] time= 19/06/2026 23:01:33
[2026-06-19 23:01:33,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:01:33,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:01:33,182.182 INFO    ] No existing commands found in stream
[2026-06-19 23:01:38,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:01:38,198.198 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 23:01:39,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:01:39,508.508 INFO    ] Checking for system updates...
[2026-06-19 23:01:39,545.545 INFO    ] 200
[2026-06-19 23:01:39,548.548 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:39,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:01:39,604.604 INFO    ] No update needed
[2026-06-19 23:01:39,607.607 INFO    ] Checking for camera pi updates...
[2026-06-19 23:01:39,641.641 INFO    ] 200
[2026-06-19 23:01:39,644.644 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:39,684.684 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:01:39,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:01:39,728.728 INFO    ] No camera update needed
[2026-06-19 23:01:39,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:01:39,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:01:39,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:01:39,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:01:41,783.783 INFO    ] ================================================
[2026-06-19 23:01:41,799.799 INFO    ] Launching Daemon at Fri Jun 19 23:01:41 IST 2026
[2026-06-19 23:01:41,810.810 INFO    ] ================================================
[2026-06-19 23:01:42,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:01:42
[2026-06-19 23:01:42,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:01:43,249.249 INFO    ] Initializing speech engine...
[2026-06-19 23:01:43,264.264 INFO    ] 2026-06-19 23:01:43
[2026-06-19 23:01:43,545.545 INFO    ] 2026-06-19 23:01:43
[2026-06-19 23:01:43,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:01:43,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:01:43,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:01:43,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:01:43,949.949 INFO    ] time= 19/06/2026 23:01:43
[2026-06-19 23:01:43,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:01:43,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:01:44,036.036 INFO    ] No existing commands found in stream
[2026-06-19 23:01:49,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:01:49,051.051 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 23:01:51,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:01:51,679.679 INFO    ] Checking for system updates...
[2026-06-19 23:01:51,715.715 INFO    ] 200
[2026-06-19 23:01:51,717.717 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:51,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:01:51,772.772 INFO    ] No update needed
[2026-06-19 23:01:51,775.775 INFO    ] Checking for camera pi updates...
[2026-06-19 23:01:51,809.809 INFO    ] 200
[2026-06-19 23:01:51,817.817 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:01:51,857.857 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:01:51,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:01:51,903.903 INFO    ] No camera update needed
[2026-06-19 23:01:51,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:01:51,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:01:51,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:01:51,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:01:53,961.961 INFO    ] ================================================
[2026-06-19 23:01:53,977.977 INFO    ] Launching Daemon at Fri Jun 19 23:01:53 IST 2026
[2026-06-19 23:01:53,988.988 INFO    ] ================================================
[2026-06-19 23:01:54,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:01:54
[2026-06-19 23:01:55,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:01:55,398.398 INFO    ] Initializing speech engine...
[2026-06-19 23:01:55,406.406 INFO    ] 2026-06-19 23:01:55
[2026-06-19 23:01:55,682.682 INFO    ] 2026-06-19 23:01:55
[2026-06-19 23:01:55,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:01:55,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:01:55,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:01:56,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:01:56,165.165 INFO    ] time= 19/06/2026 23:01:56
[2026-06-19 23:01:56,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:01:56,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:01:56,319.319 INFO    ] No existing commands found in stream
[2026-06-19 23:02:01,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:02:01,333.333 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 23:02:02,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:02:02,353.353 INFO    ] Checking for system updates...
[2026-06-19 23:02:02,401.401 INFO    ] 200
[2026-06-19 23:02:02,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:02,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:02:02,467.467 INFO    ] No update needed
[2026-06-19 23:02:02,470.470 INFO    ] Checking for camera pi updates...
[2026-06-19 23:02:02,508.508 INFO    ] 200
[2026-06-19 23:02:02,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:02,566.566 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:02:02,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:02:02,602.602 INFO    ] No camera update needed
[2026-06-19 23:02:02,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:02:02,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:02:02,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:02:02,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:02:04,664.664 INFO    ] ================================================
[2026-06-19 23:02:04,679.679 INFO    ] Launching Daemon at Fri Jun 19 23:02:04 IST 2026
[2026-06-19 23:02:04,690.690 INFO    ] ================================================
[2026-06-19 23:02:05,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:02:05
[2026-06-19 23:02:05,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:02:06,247.247 INFO    ] Initializing speech engine...
[2026-06-19 23:02:06,255.255 INFO    ] 2026-06-19 23:02:06
[2026-06-19 23:02:06,522.522 INFO    ] 2026-06-19 23:02:06
[2026-06-19 23:02:06,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:02:06,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:02:06,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:02:07,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:02:07,087.087 INFO    ] time= 19/06/2026 23:02:07
[2026-06-19 23:02:07,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:02:07,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:02:07,228.228 INFO    ] No existing commands found in stream
[2026-06-19 23:02:12,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:02:12,255.255 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-19 23:02:13,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:02:13,881.881 INFO    ] Checking for system updates...
[2026-06-19 23:02:13,918.918 INFO    ] 200
[2026-06-19 23:02:13,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:13,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:02:13,977.977 INFO    ] No update needed
[2026-06-19 23:02:13,980.980 INFO    ] Checking for camera pi updates...
[2026-06-19 23:02:14,014.014 INFO    ] 200
[2026-06-19 23:02:14,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:14,057.057 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:02:14,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:02:14,104.104 INFO    ] No camera update needed
[2026-06-19 23:02:14,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:02:14,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:02:14,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:02:14,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:02:16,160.160 INFO    ] ================================================
[2026-06-19 23:02:16,175.175 INFO    ] Launching Daemon at Fri Jun 19 23:02:16 IST 2026
[2026-06-19 23:02:16,186.186 INFO    ] ================================================
[2026-06-19 23:02:16,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:02:16
[2026-06-19 23:02:17,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:02:17,623.623 INFO    ] Initializing speech engine...
[2026-06-19 23:02:17,630.630 INFO    ] 2026-06-19 23:02:17
[2026-06-19 23:02:17,887.887 INFO    ] 2026-06-19 23:02:17
[2026-06-19 23:02:17,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:02:18,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:02:18,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:02:18,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:02:18,345.345 INFO    ] time= 19/06/2026 23:02:18
[2026-06-19 23:02:18,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:02:18,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:02:18,519.519 INFO    ] No existing commands found in stream
[2026-06-19 23:02:23,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:02:23,559.559 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-19 23:02:26,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:02:26,965.965 INFO    ] Checking for system updates...
[2026-06-19 23:02:27,001.001 INFO    ] 200
[2026-06-19 23:02:27,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:27,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:02:27,065.065 INFO    ] No update needed
[2026-06-19 23:02:27,068.068 INFO    ] Checking for camera pi updates...
[2026-06-19 23:02:27,102.102 INFO    ] 200
[2026-06-19 23:02:27,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:27,146.146 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:02:27,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:02:27,200.200 INFO    ] No camera update needed
[2026-06-19 23:02:27,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:02:27,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:02:27,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:02:27,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:02:29,258.258 INFO    ] ================================================
[2026-06-19 23:02:29,272.272 INFO    ] Launching Daemon at Fri Jun 19 23:02:29 IST 2026
[2026-06-19 23:02:29,283.283 INFO    ] ================================================
[2026-06-19 23:02:29,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:02:29
[2026-06-19 23:02:30,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:02:30,711.711 INFO    ] Initializing speech engine...
[2026-06-19 23:02:30,731.731 INFO    ] 2026-06-19 23:02:30
[2026-06-19 23:02:30,995.995 INFO    ] 2026-06-19 23:02:30
[2026-06-19 23:02:31,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:02:31,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:02:31,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:02:31,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:02:31,382.382 INFO    ] time= 19/06/2026 23:02:31
[2026-06-19 23:02:31,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:02:31,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:02:31,488.488 INFO    ] No existing commands found in stream
[2026-06-19 23:02:36,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:02:36,501.501 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-19 23:02:38,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:02:38,767.767 INFO    ] Checking for system updates...
[2026-06-19 23:02:38,803.803 INFO    ] 200
[2026-06-19 23:02:38,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:38,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:02:38,862.862 INFO    ] No update needed
[2026-06-19 23:02:38,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 23:02:38,898.898 INFO    ] 200
[2026-06-19 23:02:38,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:38,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:02:38,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:02:38,991.991 INFO    ] No camera update needed
[2026-06-19 23:02:38,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:02:38,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:02:39,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:02:39,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:02:41,046.046 INFO    ] ================================================
[2026-06-19 23:02:41,061.061 INFO    ] Launching Daemon at Fri Jun 19 23:02:41 IST 2026
[2026-06-19 23:02:41,071.071 INFO    ] ================================================
[2026-06-19 23:02:41,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:02:41
[2026-06-19 23:02:42,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:02:42,515.515 INFO    ] Initializing speech engine...
[2026-06-19 23:02:42,539.539 INFO    ] 2026-06-19 23:02:42
[2026-06-19 23:02:42,807.807 INFO    ] 2026-06-19 23:02:42
[2026-06-19 23:02:42,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:02:43,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:02:43,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:02:43,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:02:43,209.209 INFO    ] time= 19/06/2026 23:02:43
[2026-06-19 23:02:43,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:02:43,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:02:43,385.385 INFO    ] No existing commands found in stream
[2026-06-19 23:02:48,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:02:48,413.413 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-19 23:02:51,048.048 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:02:51,051.051 INFO    ] Checking for system updates...
[2026-06-19 23:02:51,088.088 INFO    ] 200
[2026-06-19 23:02:51,090.090 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:51,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:02:51,146.146 INFO    ] No update needed
[2026-06-19 23:02:51,149.149 INFO    ] Checking for camera pi updates...
[2026-06-19 23:02:51,186.186 INFO    ] 200
[2026-06-19 23:02:51,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:02:51,229.229 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:02:51,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:02:51,276.276 INFO    ] No camera update needed
[2026-06-19 23:02:51,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:02:51,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:02:51,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:02:51,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:02:53,331.331 INFO    ] ================================================
[2026-06-19 23:02:53,346.346 INFO    ] Launching Daemon at Fri Jun 19 23:02:53 IST 2026
[2026-06-19 23:02:53,357.357 INFO    ] ================================================
[2026-06-19 23:02:53,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:02:53
[2026-06-19 23:02:54,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:02:54,784.784 INFO    ] Initializing speech engine...
[2026-06-19 23:02:54,800.800 INFO    ] 2026-06-19 23:02:54
[2026-06-19 23:02:55,071.071 INFO    ] 2026-06-19 23:02:55
[2026-06-19 23:02:55,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:02:55,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:02:55,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:02:55,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:02:55,446.446 INFO    ] time= 19/06/2026 23:02:55
[2026-06-19 23:02:55,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:02:55,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:02:55,568.568 INFO    ] No existing commands found in stream
[2026-06-19 23:03:00,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:03:00,583.583 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 23:03:01,673.673 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:03:01,676.676 INFO    ] Checking for system updates...
[2026-06-19 23:03:01,712.712 INFO    ] 200
[2026-06-19 23:03:01,714.714 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:01,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:03:01,771.771 INFO    ] No update needed
[2026-06-19 23:03:01,773.773 INFO    ] Checking for camera pi updates...
[2026-06-19 23:03:01,807.807 INFO    ] 200
[2026-06-19 23:03:01,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:01,865.865 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:03:02,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:03:02,034.034 INFO    ] No camera update needed
[2026-06-19 23:03:02,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:03:02,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:03:02,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:03:02,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:03:04,099.099 INFO    ] ================================================
[2026-06-19 23:03:04,114.114 INFO    ] Launching Daemon at Fri Jun 19 23:03:04 IST 2026
[2026-06-19 23:03:04,125.125 INFO    ] ================================================
[2026-06-19 23:03:04,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:03:04
[2026-06-19 23:03:05,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:03:05,708.708 INFO    ] Initializing speech engine...
[2026-06-19 23:03:05,715.715 INFO    ] 2026-06-19 23:03:05
[2026-06-19 23:03:05,986.986 INFO    ] 2026-06-19 23:03:05
[2026-06-19 23:03:06,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:03:06,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:03:06,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:03:06,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:03:06,453.453 INFO    ] time= 19/06/2026 23:03:06
[2026-06-19 23:03:06,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:03:06,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:03:06,602.602 INFO    ] No existing commands found in stream
[2026-06-19 23:03:11,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:03:11,619.619 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-19 23:03:12,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:03:12,675.675 INFO    ] Checking for system updates...
[2026-06-19 23:03:12,715.715 INFO    ] 200
[2026-06-19 23:03:12,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:12,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:03:12,773.773 INFO    ] No update needed
[2026-06-19 23:03:12,776.776 INFO    ] Checking for camera pi updates...
[2026-06-19 23:03:12,809.809 INFO    ] 200
[2026-06-19 23:03:12,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:12,852.852 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:03:12,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:03:12,899.899 INFO    ] No camera update needed
[2026-06-19 23:03:12,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:03:12,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:03:12,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:03:12,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:03:14,957.957 INFO    ] ================================================
[2026-06-19 23:03:14,972.972 INFO    ] Launching Daemon at Fri Jun 19 23:03:14 IST 2026
[2026-06-19 23:03:14,984.984 INFO    ] ================================================
[2026-06-19 23:03:15,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:03:15
[2026-06-19 23:03:16,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:03:16,566.566 INFO    ] Initializing speech engine...
[2026-06-19 23:03:16,579.579 INFO    ] 2026-06-19 23:03:16
[2026-06-19 23:03:16,849.849 INFO    ] 2026-06-19 23:03:16
[2026-06-19 23:03:16,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:03:17,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:03:17,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:03:17,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:03:17,340.340 INFO    ] time= 19/06/2026 23:03:17
[2026-06-19 23:03:17,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:03:17,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:03:17,529.529 INFO    ] No existing commands found in stream
[2026-06-19 23:03:22,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:03:22,561.561 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-19 23:03:24,096.096 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:03:24,099.099 INFO    ] Checking for system updates...
[2026-06-19 23:03:24,136.136 INFO    ] 200
[2026-06-19 23:03:24,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:24,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:03:24,193.193 INFO    ] No update needed
[2026-06-19 23:03:24,195.195 INFO    ] Checking for camera pi updates...
[2026-06-19 23:03:24,229.229 INFO    ] 200
[2026-06-19 23:03:24,232.232 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:24,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:03:24,322.322 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:03:24,324.324 INFO    ] No camera update needed
[2026-06-19 23:03:24,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:03:24,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:03:24,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:03:24,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:03:26,379.379 INFO    ] ================================================
[2026-06-19 23:03:26,395.395 INFO    ] Launching Daemon at Fri Jun 19 23:03:26 IST 2026
[2026-06-19 23:03:26,406.406 INFO    ] ================================================
[2026-06-19 23:03:27,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:03:27
[2026-06-19 23:03:27,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:03:27,887.887 INFO    ] Initializing speech engine...
[2026-06-19 23:03:27,896.896 INFO    ] 2026-06-19 23:03:27
[2026-06-19 23:03:28,190.190 INFO    ] 2026-06-19 23:03:28
[2026-06-19 23:03:28,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:03:28,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:03:28,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:03:28,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:03:28,591.591 INFO    ] time= 19/06/2026 23:03:28
[2026-06-19 23:03:28,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:03:28,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:03:28,701.701 INFO    ] No existing commands found in stream
[2026-06-19 23:03:33,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:03:33,721.721 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 23:03:38,080.080 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:03:38,082.082 INFO    ] Checking for system updates...
[2026-06-19 23:03:38,118.118 INFO    ] 200
[2026-06-19 23:03:38,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:38,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:03:38,176.176 INFO    ] No update needed
[2026-06-19 23:03:38,179.179 INFO    ] Checking for camera pi updates...
[2026-06-19 23:03:38,214.214 INFO    ] 200
[2026-06-19 23:03:38,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:38,262.262 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:03:38,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:03:38,307.307 INFO    ] No camera update needed
[2026-06-19 23:03:38,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:03:38,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:03:38,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:03:38,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:03:40,363.363 INFO    ] ================================================
[2026-06-19 23:03:40,378.378 INFO    ] Launching Daemon at Fri Jun 19 23:03:40 IST 2026
[2026-06-19 23:03:40,389.389 INFO    ] ================================================
[2026-06-19 23:03:40,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:03:40
[2026-06-19 23:03:41,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:03:41,879.879 INFO    ] Initializing speech engine...
[2026-06-19 23:03:41,901.901 INFO    ] 2026-06-19 23:03:41
[2026-06-19 23:03:42,154.154 INFO    ] 2026-06-19 23:03:42
[2026-06-19 23:03:42,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:03:42,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:03:42,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:03:42,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:03:42,628.628 INFO    ] time= 19/06/2026 23:03:42
[2026-06-19 23:03:42,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:03:42,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:03:42,774.774 INFO    ] No existing commands found in stream
[2026-06-19 23:03:47,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:03:47,789.789 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 23:03:50,345.345 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:03:50,348.348 INFO    ] Checking for system updates...
[2026-06-19 23:03:50,388.388 INFO    ] 200
[2026-06-19 23:03:50,391.391 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:50,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:03:50,453.453 INFO    ] No update needed
[2026-06-19 23:03:50,455.455 INFO    ] Checking for camera pi updates...
[2026-06-19 23:03:50,489.489 INFO    ] 200
[2026-06-19 23:03:50,491.491 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:03:50,536.536 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:03:50,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:03:50,569.569 INFO    ] No camera update needed
[2026-06-19 23:03:50,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:03:50,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:03:50,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:03:50,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:03:52,625.625 INFO    ] ================================================
[2026-06-19 23:03:52,641.641 INFO    ] Launching Daemon at Fri Jun 19 23:03:52 IST 2026
[2026-06-19 23:03:52,653.653 INFO    ] ================================================
[2026-06-19 23:03:53,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:03:53
[2026-06-19 23:03:53,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:03:54,297.297 INFO    ] Initializing speech engine...
[2026-06-19 23:03:54,311.311 INFO    ] 2026-06-19 23:03:54
[2026-06-19 23:03:54,602.602 INFO    ] 2026-06-19 23:03:54
[2026-06-19 23:03:54,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:03:54,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:03:54,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:03:55,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:03:55,156.156 INFO    ] time= 19/06/2026 23:03:55
[2026-06-19 23:03:55,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:03:55,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:03:55,315.315 INFO    ] No existing commands found in stream
[2026-06-19 23:04:00,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:04:00,339.339 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 23:04:02,329.329 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:04:02,332.332 INFO    ] Checking for system updates...
[2026-06-19 23:04:02,377.377 INFO    ] 200
[2026-06-19 23:04:02,379.379 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:02,439.439 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:04:02,442.442 INFO    ] No update needed
[2026-06-19 23:04:02,445.445 INFO    ] Checking for camera pi updates...
[2026-06-19 23:04:02,491.491 INFO    ] 200
[2026-06-19 23:04:02,495.495 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:02,553.553 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:04:02,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:04:02,592.592 INFO    ] No camera update needed
[2026-06-19 23:04:02,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:04:02,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:04:02,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:04:02,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:04:04,656.656 INFO    ] ================================================
[2026-06-19 23:04:04,671.671 INFO    ] Launching Daemon at Fri Jun 19 23:04:04 IST 2026
[2026-06-19 23:04:04,682.682 INFO    ] ================================================
[2026-06-19 23:04:05,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:04:05
[2026-06-19 23:04:05,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:04:06,271.271 INFO    ] Initializing speech engine...
[2026-06-19 23:04:06,279.279 INFO    ] 2026-06-19 23:04:06
[2026-06-19 23:04:06,569.569 INFO    ] 2026-06-19 23:04:06
[2026-06-19 23:04:06,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:04:06,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:04:06,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:04:07,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:04:07,118.118 INFO    ] time= 19/06/2026 23:04:07
[2026-06-19 23:04:07,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:04:07,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:04:07,266.266 INFO    ] No existing commands found in stream
[2026-06-19 23:04:12,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:04:12,286.286 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 23:04:16,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:04:16,304.304 INFO    ] Checking for system updates...
[2026-06-19 23:04:16,343.343 INFO    ] 200
[2026-06-19 23:04:16,347.347 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:16,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:04:16,403.403 INFO    ] No update needed
[2026-06-19 23:04:16,405.405 INFO    ] Checking for camera pi updates...
[2026-06-19 23:04:16,442.442 INFO    ] 200
[2026-06-19 23:04:16,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:16,493.493 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:04:16,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:04:16,540.540 INFO    ] No camera update needed
[2026-06-19 23:04:16,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:04:16,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:04:16,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:04:16,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:04:18,596.596 INFO    ] ================================================
[2026-06-19 23:04:18,612.612 INFO    ] Launching Daemon at Fri Jun 19 23:04:18 IST 2026
[2026-06-19 23:04:18,623.623 INFO    ] ================================================
[2026-06-19 23:04:19,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:04:19
[2026-06-19 23:04:19,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:04:20,197.197 INFO    ] Initializing speech engine...
[2026-06-19 23:04:20,209.209 INFO    ] 2026-06-19 23:04:20
[2026-06-19 23:04:20,526.526 INFO    ] 2026-06-19 23:04:20
[2026-06-19 23:04:20,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:04:20,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:04:20,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:04:21,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:04:21,061.061 INFO    ] time= 19/06/2026 23:04:21
[2026-06-19 23:04:21,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:04:21,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:04:21,236.236 INFO    ] No existing commands found in stream
[2026-06-19 23:04:26,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:04:26,277.277 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-19 23:04:28,327.327 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:04:28,330.330 INFO    ] Checking for system updates...
[2026-06-19 23:04:28,366.366 INFO    ] 200
[2026-06-19 23:04:28,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:28,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:04:28,423.423 INFO    ] No update needed
[2026-06-19 23:04:28,425.425 INFO    ] Checking for camera pi updates...
[2026-06-19 23:04:28,459.459 INFO    ] 200
[2026-06-19 23:04:28,462.462 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:28,502.502 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:04:28,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:04:28,549.549 INFO    ] No camera update needed
[2026-06-19 23:04:28,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:04:28,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:04:28,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:04:28,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:04:30,606.606 INFO    ] ================================================
[2026-06-19 23:04:30,622.622 INFO    ] Launching Daemon at Fri Jun 19 23:04:30 IST 2026
[2026-06-19 23:04:30,633.633 INFO    ] ================================================
[2026-06-19 23:04:31,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:04:31
[2026-06-19 23:04:31,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:04:32,094.094 INFO    ] Initializing speech engine...
[2026-06-19 23:04:32,111.111 INFO    ] 2026-06-19 23:04:32
[2026-06-19 23:04:32,380.380 INFO    ] 2026-06-19 23:04:32
[2026-06-19 23:04:32,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:04:32,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:04:32,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:04:32,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:04:32,788.788 INFO    ] time= 19/06/2026 23:04:32
[2026-06-19 23:04:32,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:04:32,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:04:32,973.973 INFO    ] No existing commands found in stream
[2026-06-19 23:04:38,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:04:38,006.006 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-19 23:04:39,084.084 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:04:39,087.087 INFO    ] Checking for system updates...
[2026-06-19 23:04:39,125.125 INFO    ] 200
[2026-06-19 23:04:39,128.128 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:39,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:04:39,184.184 INFO    ] No update needed
[2026-06-19 23:04:39,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 23:04:39,221.221 INFO    ] 200
[2026-06-19 23:04:39,223.223 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:39,264.264 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:04:39,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:04:39,309.309 INFO    ] No camera update needed
[2026-06-19 23:04:39,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:04:39,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:04:39,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:04:39,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:04:41,367.367 INFO    ] ================================================
[2026-06-19 23:04:41,382.382 INFO    ] Launching Daemon at Fri Jun 19 23:04:41 IST 2026
[2026-06-19 23:04:41,394.394 INFO    ] ================================================
[2026-06-19 23:04:41,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:04:41
[2026-06-19 23:04:42,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:04:42,838.838 INFO    ] Initializing speech engine...
[2026-06-19 23:04:42,846.846 INFO    ] 2026-06-19 23:04:42
[2026-06-19 23:04:43,139.139 INFO    ] 2026-06-19 23:04:43
[2026-06-19 23:04:43,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:04:43,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:04:43,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:04:43,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:04:43,573.573 INFO    ] time= 19/06/2026 23:04:43
[2026-06-19 23:04:43,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:04:43,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:04:43,769.769 INFO    ] No existing commands found in stream
[2026-06-19 23:04:48,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:04:48,809.809 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-19 23:04:52,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:04:52,794.794 INFO    ] Checking for system updates...
[2026-06-19 23:04:52,833.833 INFO    ] 200
[2026-06-19 23:04:52,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:52,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:04:52,891.891 INFO    ] No update needed
[2026-06-19 23:04:52,893.893 INFO    ] Checking for camera pi updates...
[2026-06-19 23:04:52,927.927 INFO    ] 200
[2026-06-19 23:04:52,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:04:52,973.973 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:04:53,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:04:53,018.018 INFO    ] No camera update needed
[2026-06-19 23:04:53,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:04:53,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:04:53,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:04:53,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:04:55,073.073 INFO    ] ================================================
[2026-06-19 23:04:55,088.088 INFO    ] Launching Daemon at Fri Jun 19 23:04:55 IST 2026
[2026-06-19 23:04:55,098.098 INFO    ] ================================================
[2026-06-19 23:04:55,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:04:55
[2026-06-19 23:04:56,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:04:56,516.516 INFO    ] Initializing speech engine...
[2026-06-19 23:04:56,525.525 INFO    ] 2026-06-19 23:04:56
[2026-06-19 23:04:56,780.780 INFO    ] 2026-06-19 23:04:56
[2026-06-19 23:04:56,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:04:57,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:04:57,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:04:57,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:04:57,252.252 INFO    ] time= 19/06/2026 23:04:57
[2026-06-19 23:04:57,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:04:57,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:04:57,402.402 INFO    ] No existing commands found in stream
[2026-06-19 23:05:02,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:05:02,417.417 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-19 23:05:05,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:05:05,150.150 INFO    ] Checking for system updates...
[2026-06-19 23:05:05,190.190 INFO    ] 200
[2026-06-19 23:05:05,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:05,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:05:05,252.252 INFO    ] No update needed
[2026-06-19 23:05:05,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 23:05:05,291.291 INFO    ] 200
[2026-06-19 23:05:05,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:05,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:05:05,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:05:05,481.481 INFO    ] No camera update needed
[2026-06-19 23:05:05,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:05:05,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:05:05,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:05:05,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:05:07,539.539 INFO    ] ================================================
[2026-06-19 23:05:07,554.554 INFO    ] Launching Daemon at Fri Jun 19 23:05:07 IST 2026
[2026-06-19 23:05:07,564.564 INFO    ] ================================================
[2026-06-19 23:05:08,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:05:08
[2026-06-19 23:05:08,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:05:09,006.006 INFO    ] Initializing speech engine...
[2026-06-19 23:05:09,016.016 INFO    ] 2026-06-19 23:05:09
[2026-06-19 23:05:09,276.276 INFO    ] 2026-06-19 23:05:09
[2026-06-19 23:05:09,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:05:09,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:05:09,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:05:09,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:05:09,734.734 INFO    ] time= 19/06/2026 23:05:09
[2026-06-19 23:05:09,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:05:09,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:05:09,882.882 INFO    ] No existing commands found in stream
[2026-06-19 23:05:14,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:05:14,897.897 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 23:05:16,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:05:16,857.857 INFO    ] Checking for system updates...
[2026-06-19 23:05:16,894.894 INFO    ] 200
[2026-06-19 23:05:16,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:16,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:05:16,953.953 INFO    ] No update needed
[2026-06-19 23:05:16,956.956 INFO    ] Checking for camera pi updates...
[2026-06-19 23:05:16,994.994 INFO    ] 200
[2026-06-19 23:05:16,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:17,037.037 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:05:17,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:05:17,093.093 INFO    ] No camera update needed
[2026-06-19 23:05:17,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:05:17,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:05:17,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:05:17,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:05:19,149.149 INFO    ] ================================================
[2026-06-19 23:05:19,164.164 INFO    ] Launching Daemon at Fri Jun 19 23:05:19 IST 2026
[2026-06-19 23:05:19,175.175 INFO    ] ================================================
[2026-06-19 23:05:19,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:05:19
[2026-06-19 23:05:20,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:05:20,791.791 INFO    ] Initializing speech engine...
[2026-06-19 23:05:20,804.804 INFO    ] 2026-06-19 23:05:20
[2026-06-19 23:05:21,091.091 INFO    ] 2026-06-19 23:05:21
[2026-06-19 23:05:21,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:05:21,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:05:21,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:05:21,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:05:21,559.559 INFO    ] time= 19/06/2026 23:05:21
[2026-06-19 23:05:21,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:05:21,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:05:21,764.764 INFO    ] No existing commands found in stream
[2026-06-19 23:05:26,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:05:26,789.789 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-19 23:05:29,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:05:29,477.477 INFO    ] Checking for system updates...
[2026-06-19 23:05:29,518.518 INFO    ] 200
[2026-06-19 23:05:29,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:29,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:05:29,607.607 INFO    ] No update needed
[2026-06-19 23:05:29,610.610 INFO    ] Checking for camera pi updates...
[2026-06-19 23:05:29,646.646 INFO    ] 200
[2026-06-19 23:05:29,649.649 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:29,690.690 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:05:29,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:05:29,742.742 INFO    ] No camera update needed
[2026-06-19 23:05:29,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:05:29,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:05:29,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:05:29,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:05:31,802.802 INFO    ] ================================================
[2026-06-19 23:05:31,821.821 INFO    ] Launching Daemon at Fri Jun 19 23:05:31 IST 2026
[2026-06-19 23:05:31,835.835 INFO    ] ================================================
[2026-06-19 23:05:32,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:05:32
[2026-06-19 23:05:33,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:05:33,321.321 INFO    ] Initializing speech engine...
[2026-06-19 23:05:33,334.334 INFO    ] 2026-06-19 23:05:33
[2026-06-19 23:05:33,596.596 INFO    ] 2026-06-19 23:05:33
[2026-06-19 23:05:33,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:05:33,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:05:33,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:05:34,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:05:34,111.111 INFO    ] time= 19/06/2026 23:05:34
[2026-06-19 23:05:34,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:05:34,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:05:34,282.282 INFO    ] No existing commands found in stream
[2026-06-19 23:05:39,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:05:39,297.297 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-19 23:05:41,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:05:41,712.712 INFO    ] Checking for system updates...
[2026-06-19 23:05:41,752.752 INFO    ] 200
[2026-06-19 23:05:41,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:41,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:05:41,815.815 INFO    ] No update needed
[2026-06-19 23:05:41,818.818 INFO    ] Checking for camera pi updates...
[2026-06-19 23:05:41,854.854 INFO    ] 200
[2026-06-19 23:05:41,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:41,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:05:41,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:05:41,944.944 INFO    ] No camera update needed
[2026-06-19 23:05:41,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:05:41,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:05:41,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:05:41,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:05:44,001.001 INFO    ] ================================================
[2026-06-19 23:05:44,017.017 INFO    ] Launching Daemon at Fri Jun 19 23:05:44 IST 2026
[2026-06-19 23:05:44,028.028 INFO    ] ================================================
[2026-06-19 23:05:44,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:05:44
[2026-06-19 23:05:45,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:05:45,634.634 INFO    ] Initializing speech engine...
[2026-06-19 23:05:45,642.642 INFO    ] 2026-06-19 23:05:45
[2026-06-19 23:05:45,911.911 INFO    ] 2026-06-19 23:05:45
[2026-06-19 23:05:45,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:05:46,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:05:46,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:05:46,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:05:46,422.422 INFO    ] time= 19/06/2026 23:05:46
[2026-06-19 23:05:46,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:05:46,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:05:46,613.613 INFO    ] No existing commands found in stream
[2026-06-19 23:05:51,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:05:51,633.633 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 23:05:52,077.077 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:05:52,080.080 INFO    ] Checking for system updates...
[2026-06-19 23:05:52,117.117 INFO    ] 200
[2026-06-19 23:05:52,119.119 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:52,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:05:52,174.174 INFO    ] No update needed
[2026-06-19 23:05:52,177.177 INFO    ] Checking for camera pi updates...
[2026-06-19 23:05:52,213.213 INFO    ] 200
[2026-06-19 23:05:52,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:05:52,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:05:52,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:05:52,293.293 INFO    ] No camera update needed
[2026-06-19 23:05:52,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:05:52,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:05:52,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:05:52,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:05:54,348.348 INFO    ] ================================================
[2026-06-19 23:05:54,363.363 INFO    ] Launching Daemon at Fri Jun 19 23:05:54 IST 2026
[2026-06-19 23:05:54,374.374 INFO    ] ================================================
[2026-06-19 23:05:55,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:05:55
[2026-06-19 23:05:55,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:05:55,993.993 INFO    ] Initializing speech engine...
[2026-06-19 23:05:56,002.002 INFO    ] 2026-06-19 23:05:55
[2026-06-19 23:05:56,295.295 INFO    ] 2026-06-19 23:05:56
[2026-06-19 23:05:56,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:05:56,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:05:56,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:05:56,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:05:56,735.735 INFO    ] time= 19/06/2026 23:05:56
[2026-06-19 23:05:56,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:05:56,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:05:56,890.890 INFO    ] No existing commands found in stream
[2026-06-19 23:06:01,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:06:01,908.908 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 23:06:04,735.735 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:06:04,738.738 INFO    ] Checking for system updates...
[2026-06-19 23:06:04,775.775 INFO    ] 200
[2026-06-19 23:06:04,778.778 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:04,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:04,834.834 INFO    ] No update needed
[2026-06-19 23:06:04,836.836 INFO    ] Checking for camera pi updates...
[2026-06-19 23:06:04,870.870 INFO    ] 200
[2026-06-19 23:06:04,872.872 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:04,917.917 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:06:04,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:04,967.967 INFO    ] No camera update needed
[2026-06-19 23:06:04,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:06:04,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:06:04,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:06:04,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:06:07,021.021 INFO    ] ================================================
[2026-06-19 23:06:07,036.036 INFO    ] Launching Daemon at Fri Jun 19 23:06:07 IST 2026
[2026-06-19 23:06:07,046.046 INFO    ] ================================================
[2026-06-19 23:06:07,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:06:07
[2026-06-19 23:06:08,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:06:08,459.459 INFO    ] Initializing speech engine...
[2026-06-19 23:06:08,468.468 INFO    ] 2026-06-19 23:06:08
[2026-06-19 23:06:08,761.761 INFO    ] 2026-06-19 23:06:08
[2026-06-19 23:06:08,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:06:09,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:06:09,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:06:09,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:06:09,143.143 INFO    ] time= 19/06/2026 23:06:09
[2026-06-19 23:06:09,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:06:09,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:06:09,268.268 INFO    ] No existing commands found in stream
[2026-06-19 23:06:14,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:06:14,282.282 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-19 23:06:15,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:06:15,801.801 INFO    ] Checking for system updates...
[2026-06-19 23:06:15,841.841 INFO    ] 200
[2026-06-19 23:06:15,843.843 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:15,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:15,904.904 INFO    ] No update needed
[2026-06-19 23:06:15,906.906 INFO    ] Checking for camera pi updates...
[2026-06-19 23:06:15,940.940 INFO    ] 200
[2026-06-19 23:06:15,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:15,983.983 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:06:16,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:16,031.031 INFO    ] No camera update needed
[2026-06-19 23:06:16,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:06:16,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:06:16,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:06:16,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:06:18,087.087 INFO    ] ================================================
[2026-06-19 23:06:18,103.103 INFO    ] Launching Daemon at Fri Jun 19 23:06:18 IST 2026
[2026-06-19 23:06:18,114.114 INFO    ] ================================================
[2026-06-19 23:06:18,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:06:18
[2026-06-19 23:06:19,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:06:19,723.723 INFO    ] Initializing speech engine...
[2026-06-19 23:06:19,738.738 INFO    ] 2026-06-19 23:06:19
[2026-06-19 23:06:20,017.017 INFO    ] 2026-06-19 23:06:19
[2026-06-19 23:06:20,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:06:20,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:06:20,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:06:20,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:06:20,470.470 INFO    ] time= 19/06/2026 23:06:20
[2026-06-19 23:06:20,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:06:20,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:06:20,618.618 INFO    ] No existing commands found in stream
[2026-06-19 23:06:25,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:06:25,634.634 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-19 23:06:28,309.309 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:06:28,311.311 INFO    ] Checking for system updates...
[2026-06-19 23:06:28,351.351 INFO    ] 200
[2026-06-19 23:06:28,353.353 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:28,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:28,408.408 INFO    ] No update needed
[2026-06-19 23:06:28,410.410 INFO    ] Checking for camera pi updates...
[2026-06-19 23:06:28,444.444 INFO    ] 200
[2026-06-19 23:06:28,447.447 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:28,488.488 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:06:28,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:28,546.546 INFO    ] No camera update needed
[2026-06-19 23:06:28,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:06:28,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:06:28,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:06:28,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:06:30,602.602 INFO    ] ================================================
[2026-06-19 23:06:30,618.618 INFO    ] Launching Daemon at Fri Jun 19 23:06:30 IST 2026
[2026-06-19 23:06:30,629.629 INFO    ] ================================================
[2026-06-19 23:06:31,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:06:31
[2026-06-19 23:06:31,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:06:32,062.062 INFO    ] Initializing speech engine...
[2026-06-19 23:06:32,077.077 INFO    ] 2026-06-19 23:06:32
[2026-06-19 23:06:32,379.379 INFO    ] 2026-06-19 23:06:32
[2026-06-19 23:06:32,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:06:32,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:06:32,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:06:32,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:06:32,754.754 INFO    ] time= 19/06/2026 23:06:32
[2026-06-19 23:06:32,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:06:32,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:06:32,885.885 INFO    ] No existing commands found in stream
[2026-06-19 23:06:37,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:06:37,920.920 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 23:06:38,642.642 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:06:38,645.645 INFO    ] Checking for system updates...
[2026-06-19 23:06:38,682.682 INFO    ] 200
[2026-06-19 23:06:38,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:38,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:38,740.740 INFO    ] No update needed
[2026-06-19 23:06:38,742.742 INFO    ] Checking for camera pi updates...
[2026-06-19 23:06:38,776.776 INFO    ] 200
[2026-06-19 23:06:38,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:38,823.823 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:06:38,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:38,881.881 INFO    ] No camera update needed
[2026-06-19 23:06:38,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:06:38,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:06:38,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:06:38,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:06:40,936.936 INFO    ] ================================================
[2026-06-19 23:06:40,952.952 INFO    ] Launching Daemon at Fri Jun 19 23:06:40 IST 2026
[2026-06-19 23:06:40,963.963 INFO    ] ================================================
[2026-06-19 23:06:41,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:06:41
[2026-06-19 23:06:42,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:06:42,382.382 INFO    ] Initializing speech engine...
[2026-06-19 23:06:42,391.391 INFO    ] 2026-06-19 23:06:42
[2026-06-19 23:06:42,637.637 INFO    ] 2026-06-19 23:06:42
[2026-06-19 23:06:42,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:06:42,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:06:42,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:06:43,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:06:43,112.112 INFO    ] time= 19/06/2026 23:06:43
[2026-06-19 23:06:43,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:06:43,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:06:43,257.257 INFO    ] No existing commands found in stream
[2026-06-19 23:06:48,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:06:48,271.271 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-19 23:06:49,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:06:49,411.411 INFO    ] Checking for system updates...
[2026-06-19 23:06:49,450.450 INFO    ] 200
[2026-06-19 23:06:49,453.453 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:49,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:49,513.513 INFO    ] No update needed
[2026-06-19 23:06:49,515.515 INFO    ] Checking for camera pi updates...
[2026-06-19 23:06:49,552.552 INFO    ] 200
[2026-06-19 23:06:49,555.555 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:06:49,595.595 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:06:49,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:06:49,631.631 INFO    ] No camera update needed
[2026-06-19 23:06:49,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:06:49,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:06:49,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:06:49,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:06:51,689.689 INFO    ] ================================================
[2026-06-19 23:06:51,705.705 INFO    ] Launching Daemon at Fri Jun 19 23:06:51 IST 2026
[2026-06-19 23:06:51,717.717 INFO    ] ================================================
[2026-06-19 23:06:52,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:06:52
[2026-06-19 23:06:52,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:06:53,133.133 INFO    ] Initializing speech engine...
[2026-06-19 23:06:53,142.142 INFO    ] 2026-06-19 23:06:53
[2026-06-19 23:06:53,389.389 INFO    ] 2026-06-19 23:06:53
[2026-06-19 23:06:53,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:06:53,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:06:53,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:06:53,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:06:53,755.755 INFO    ] time= 19/06/2026 23:06:53
[2026-06-19 23:06:53,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:06:53,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:06:53,914.914 INFO    ] No existing commands found in stream
[2026-06-19 23:06:58,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:06:58,948.948 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-19 23:07:02,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:07:02,080.080 INFO    ] Checking for system updates...
[2026-06-19 23:07:02,120.120 INFO    ] 200
[2026-06-19 23:07:02,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:02,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:07:02,195.195 INFO    ] No update needed
[2026-06-19 23:07:02,198.198 INFO    ] Checking for camera pi updates...
[2026-06-19 23:07:02,249.249 INFO    ] 200
[2026-06-19 23:07:02,253.253 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:02,317.317 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:07:02,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:07:02,351.351 INFO    ] No camera update needed
[2026-06-19 23:07:02,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:07:02,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:07:02,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:07:02,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:07:04,415.415 INFO    ] ================================================
[2026-06-19 23:07:04,431.431 INFO    ] Launching Daemon at Fri Jun 19 23:07:04 IST 2026
[2026-06-19 23:07:04,443.443 INFO    ] ================================================
[2026-06-19 23:07:05,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:07:05
[2026-06-19 23:07:05,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:07:05,863.863 INFO    ] Initializing speech engine...
[2026-06-19 23:07:05,868.868 INFO    ] 2026-06-19 23:07:05
[2026-06-19 23:07:06,114.114 INFO    ] 2026-06-19 23:07:06
[2026-06-19 23:07:06,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:07:06,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:07:06,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:07:06,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:07:06,597.597 INFO    ] time= 19/06/2026 23:07:06
[2026-06-19 23:07:06,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:07:06,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:07:06,753.753 INFO    ] No existing commands found in stream
[2026-06-19 23:07:11,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:07:11,779.779 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 23:07:15,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:07:15,369.369 INFO    ] Checking for system updates...
[2026-06-19 23:07:15,405.405 INFO    ] 200
[2026-06-19 23:07:15,408.408 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:15,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:07:15,466.466 INFO    ] No update needed
[2026-06-19 23:07:15,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 23:07:15,503.503 INFO    ] 200
[2026-06-19 23:07:15,506.506 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:15,555.555 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:07:15,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:07:15,703.703 INFO    ] No camera update needed
[2026-06-19 23:07:15,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:07:15,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:07:15,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:07:15,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:07:17,761.761 INFO    ] ================================================
[2026-06-19 23:07:17,777.777 INFO    ] Launching Daemon at Fri Jun 19 23:07:17 IST 2026
[2026-06-19 23:07:17,788.788 INFO    ] ================================================
[2026-06-19 23:07:18,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:07:18
[2026-06-19 23:07:18,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:07:19,189.189 INFO    ] Initializing speech engine...
[2026-06-19 23:07:19,198.198 INFO    ] 2026-06-19 23:07:19
[2026-06-19 23:07:19,491.491 INFO    ] 2026-06-19 23:07:19
[2026-06-19 23:07:19,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:07:19,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:07:19,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:07:19,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:07:19,846.846 INFO    ] time= 19/06/2026 23:07:19
[2026-06-19 23:07:19,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:07:19,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:07:19,973.973 INFO    ] No existing commands found in stream
[2026-06-19 23:07:24,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:07:25,001.001 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-19 23:07:28,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:07:28,693.693 INFO    ] Checking for system updates...
[2026-06-19 23:07:28,731.731 INFO    ] 200
[2026-06-19 23:07:28,734.734 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:28,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:07:28,796.796 INFO    ] No update needed
[2026-06-19 23:07:28,798.798 INFO    ] Checking for camera pi updates...
[2026-06-19 23:07:28,832.832 INFO    ] 200
[2026-06-19 23:07:28,834.834 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:28,875.875 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:07:28,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:07:28,927.927 INFO    ] No camera update needed
[2026-06-19 23:07:28,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:07:28,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:07:28,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:07:28,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:07:30,982.982 INFO    ] ================================================
[2026-06-19 23:07:31,998.998 INFO    ] Launching Daemon at Fri Jun 19 23:07:30 IST 2026
[2026-06-19 23:07:31,009.009 INFO    ] ================================================
[2026-06-19 23:07:31,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:07:31
[2026-06-19 23:07:32,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:07:32,532.532 INFO    ] Initializing speech engine...
[2026-06-19 23:07:32,546.546 INFO    ] 2026-06-19 23:07:32
[2026-06-19 23:07:32,832.832 INFO    ] 2026-06-19 23:07:32
[2026-06-19 23:07:32,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:07:33,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:07:33,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:07:33,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:07:33,309.309 INFO    ] time= 19/06/2026 23:07:33
[2026-06-19 23:07:33,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:07:33,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:07:33,482.482 INFO    ] No existing commands found in stream
[2026-06-19 23:07:38,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:07:38,498.498 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 23:07:39,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:07:39,690.690 INFO    ] Checking for system updates...
[2026-06-19 23:07:39,730.730 INFO    ] 200
[2026-06-19 23:07:39,733.733 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:39,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:07:39,788.788 INFO    ] No update needed
[2026-06-19 23:07:39,791.791 INFO    ] Checking for camera pi updates...
[2026-06-19 23:07:39,828.828 INFO    ] 200
[2026-06-19 23:07:39,831.831 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:39,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:07:39,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:07:39,923.923 INFO    ] No camera update needed
[2026-06-19 23:07:39,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:07:39,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:07:39,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:07:39,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:07:41,978.978 INFO    ] ================================================
[2026-06-19 23:07:41,993.993 INFO    ] Launching Daemon at Fri Jun 19 23:07:41 IST 2026
[2026-06-19 23:07:42,005.005 INFO    ] ================================================
[2026-06-19 23:07:42,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:07:42
[2026-06-19 23:07:43,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:07:43,471.471 INFO    ] Initializing speech engine...
[2026-06-19 23:07:43,477.477 INFO    ] 2026-06-19 23:07:43
[2026-06-19 23:07:43,739.739 INFO    ] 2026-06-19 23:07:43
[2026-06-19 23:07:43,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:07:44,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:07:44,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:07:44,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:07:44,202.202 INFO    ] time= 19/06/2026 23:07:44
[2026-06-19 23:07:44,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:07:44,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:07:44,346.346 INFO    ] No existing commands found in stream
[2026-06-19 23:07:49,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:07:49,360.360 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-19 23:07:52,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:07:52,967.967 INFO    ] Checking for system updates...
[2026-06-19 23:07:53,004.004 INFO    ] 200
[2026-06-19 23:07:53,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:53,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:07:53,068.068 INFO    ] No update needed
[2026-06-19 23:07:53,070.070 INFO    ] Checking for camera pi updates...
[2026-06-19 23:07:53,104.104 INFO    ] 200
[2026-06-19 23:07:53,107.107 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:07:53,148.148 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:07:53,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:07:53,216.216 INFO    ] No camera update needed
[2026-06-19 23:07:53,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:07:53,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:07:53,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:07:53,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:07:55,270.270 INFO    ] ================================================
[2026-06-19 23:07:55,286.286 INFO    ] Launching Daemon at Fri Jun 19 23:07:55 IST 2026
[2026-06-19 23:07:55,297.297 INFO    ] ================================================
[2026-06-19 23:07:55,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:07:55
[2026-06-19 23:07:56,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:07:56,751.751 INFO    ] Initializing speech engine...
[2026-06-19 23:07:56,760.760 INFO    ] 2026-06-19 23:07:56
[2026-06-19 23:07:57,014.014 INFO    ] 2026-06-19 23:07:57
[2026-06-19 23:07:57,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:07:57,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:07:57,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:07:57,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:07:57,479.479 INFO    ] time= 19/06/2026 23:07:57
[2026-06-19 23:07:57,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:07:57,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:07:57,622.622 INFO    ] No existing commands found in stream
[2026-06-19 23:08:02,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:08:02,638.638 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-19 23:08:05,167.167 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:08:05,169.169 INFO    ] Checking for system updates...
[2026-06-19 23:08:05,209.209 INFO    ] 200
[2026-06-19 23:08:05,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:05,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:08:05,267.267 INFO    ] No update needed
[2026-06-19 23:08:05,269.269 INFO    ] Checking for camera pi updates...
[2026-06-19 23:08:05,303.303 INFO    ] 200
[2026-06-19 23:08:05,306.306 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:05,351.351 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:08:05,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:08:05,399.399 INFO    ] No camera update needed
[2026-06-19 23:08:05,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:08:05,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:08:05,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:08:05,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:08:07,456.456 INFO    ] ================================================
[2026-06-19 23:08:07,472.472 INFO    ] Launching Daemon at Fri Jun 19 23:08:07 IST 2026
[2026-06-19 23:08:07,483.483 INFO    ] ================================================
[2026-06-19 23:08:08,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:08:08
[2026-06-19 23:08:08,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:08:08,929.929 INFO    ] Initializing speech engine...
[2026-06-19 23:08:08,942.942 INFO    ] 2026-06-19 23:08:08
[2026-06-19 23:08:09,210.210 INFO    ] 2026-06-19 23:08:09
[2026-06-19 23:08:09,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:08:09,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:08:09,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:08:09,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:08:09,630.630 INFO    ] time= 19/06/2026 23:08:09
[2026-06-19 23:08:09,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:08:09,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:08:09,743.743 INFO    ] No existing commands found in stream
[2026-06-19 23:08:14,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:08:14,759.759 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 23:08:18,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:08:18,099.099 INFO    ] Checking for system updates...
[2026-06-19 23:08:18,134.134 INFO    ] 200
[2026-06-19 23:08:18,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:18,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:08:18,198.198 INFO    ] No update needed
[2026-06-19 23:08:18,201.201 INFO    ] Checking for camera pi updates...
[2026-06-19 23:08:18,238.238 INFO    ] 200
[2026-06-19 23:08:18,241.241 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:18,287.287 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:08:18,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:08:18,334.334 INFO    ] No camera update needed
[2026-06-19 23:08:18,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:08:18,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:08:18,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:08:18,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:08:20,394.394 INFO    ] ================================================
[2026-06-19 23:08:20,412.412 INFO    ] Launching Daemon at Fri Jun 19 23:08:20 IST 2026
[2026-06-19 23:08:20,426.426 INFO    ] ================================================
[2026-06-19 23:08:21,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:08:21
[2026-06-19 23:08:21,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:08:21,865.865 INFO    ] Initializing speech engine...
[2026-06-19 23:08:21,881.881 INFO    ] 2026-06-19 23:08:21
[2026-06-19 23:08:22,131.131 INFO    ] 2026-06-19 23:08:22
[2026-06-19 23:08:22,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:08:22,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:08:22,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:08:22,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:08:22,584.584 INFO    ] time= 19/06/2026 23:08:22
[2026-06-19 23:08:22,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:08:22,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:08:22,752.752 INFO    ] No existing commands found in stream
[2026-06-19 23:08:27,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:08:27,767.767 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 23:08:30,764.764 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:08:30,767.767 INFO    ] Checking for system updates...
[2026-06-19 23:08:30,806.806 INFO    ] 200
[2026-06-19 23:08:30,808.808 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:30,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:08:30,870.870 INFO    ] No update needed
[2026-06-19 23:08:30,872.872 INFO    ] Checking for camera pi updates...
[2026-06-19 23:08:30,907.907 INFO    ] 200
[2026-06-19 23:08:30,909.909 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:30,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:08:30,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:08:31,000.000 INFO    ] No camera update needed
[2026-06-19 23:08:31,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:08:31,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:08:31,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:08:31,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:08:33,058.058 INFO    ] ================================================
[2026-06-19 23:08:33,073.073 INFO    ] Launching Daemon at Fri Jun 19 23:08:33 IST 2026
[2026-06-19 23:08:33,085.085 INFO    ] ================================================
[2026-06-19 23:08:33,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:08:33
[2026-06-19 23:08:34,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:08:34,692.692 INFO    ] Initializing speech engine...
[2026-06-19 23:08:34,706.706 INFO    ] 2026-06-19 23:08:34
[2026-06-19 23:08:35,013.013 INFO    ] 2026-06-19 23:08:34
[2026-06-19 23:08:35,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:08:35,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:08:35,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:08:35,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:08:35,521.521 INFO    ] time= 19/06/2026 23:08:35
[2026-06-19 23:08:35,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:08:35,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:08:35,677.677 INFO    ] No existing commands found in stream
[2026-06-19 23:08:40,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:08:40,715.715 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 23:08:43,231.231 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:08:43,234.234 INFO    ] Checking for system updates...
[2026-06-19 23:08:43,276.276 INFO    ] 200
[2026-06-19 23:08:43,278.278 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:43,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:08:43,342.342 INFO    ] No update needed
[2026-06-19 23:08:43,344.344 INFO    ] Checking for camera pi updates...
[2026-06-19 23:08:43,379.379 INFO    ] 200
[2026-06-19 23:08:43,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:43,423.423 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:08:43,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:08:43,473.473 INFO    ] No camera update needed
[2026-06-19 23:08:43,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:08:43,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:08:43,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:08:43,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:08:45,532.532 INFO    ] ================================================
[2026-06-19 23:08:45,547.547 INFO    ] Launching Daemon at Fri Jun 19 23:08:45 IST 2026
[2026-06-19 23:08:45,558.558 INFO    ] ================================================
[2026-06-19 23:08:46,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:08:46
[2026-06-19 23:08:46,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:08:46,993.993 INFO    ] Initializing speech engine...
[2026-06-19 23:08:47,008.008 INFO    ] 2026-06-19 23:08:46
[2026-06-19 23:08:47,275.275 INFO    ] 2026-06-19 23:08:47
[2026-06-19 23:08:47,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:08:47,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:08:47,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:08:47,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:08:47,758.758 INFO    ] time= 19/06/2026 23:08:47
[2026-06-19 23:08:47,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:08:47,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:08:47,916.916 INFO    ] No existing commands found in stream
[2026-06-19 23:08:52,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:08:52,938.938 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 23:08:56,421.421 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:08:56,424.424 INFO    ] Checking for system updates...
[2026-06-19 23:08:56,463.463 INFO    ] 200
[2026-06-19 23:08:56,466.466 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:56,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:08:56,521.521 INFO    ] No update needed
[2026-06-19 23:08:56,523.523 INFO    ] Checking for camera pi updates...
[2026-06-19 23:08:56,561.561 INFO    ] 200
[2026-06-19 23:08:56,563.563 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:08:56,608.608 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:08:56,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:08:56,670.670 INFO    ] No camera update needed
[2026-06-19 23:08:56,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:08:56,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:08:56,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:08:56,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:08:58,728.728 INFO    ] ================================================
[2026-06-19 23:08:58,746.746 INFO    ] Launching Daemon at Fri Jun 19 23:08:58 IST 2026
[2026-06-19 23:08:58,758.758 INFO    ] ================================================
[2026-06-19 23:08:59,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:08:59
[2026-06-19 23:09:00,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:09:00,363.363 INFO    ] Initializing speech engine...
[2026-06-19 23:09:00,369.369 INFO    ] 2026-06-19 23:09:00
[2026-06-19 23:09:00,655.655 INFO    ] 2026-06-19 23:09:00
[2026-06-19 23:09:00,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:09:00,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:09:00,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:09:01,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:09:01,111.111 INFO    ] time= 19/06/2026 23:09:01
[2026-06-19 23:09:01,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:09:01,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:09:01,317.317 INFO    ] No existing commands found in stream
[2026-06-19 23:09:06,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:09:06,343.343 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-19 23:09:08,593.593 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:09:08,596.596 INFO    ] Checking for system updates...
[2026-06-19 23:09:08,638.638 INFO    ] 200
[2026-06-19 23:09:08,641.641 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:08,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:09:08,707.707 INFO    ] No update needed
[2026-06-19 23:09:08,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 23:09:08,745.745 INFO    ] 200
[2026-06-19 23:09:08,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:08,833.833 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:09:08,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:09:08,890.890 INFO    ] No camera update needed
[2026-06-19 23:09:08,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:09:08,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:09:08,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:09:08,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:09:10,946.946 INFO    ] ================================================
[2026-06-19 23:09:10,962.962 INFO    ] Launching Daemon at Fri Jun 19 23:09:10 IST 2026
[2026-06-19 23:09:10,974.974 INFO    ] ================================================
[2026-06-19 23:09:11,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:09:11
[2026-06-19 23:09:12,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:09:12,394.394 INFO    ] Initializing speech engine...
[2026-06-19 23:09:12,403.403 INFO    ] 2026-06-19 23:09:12
[2026-06-19 23:09:12,662.662 INFO    ] 2026-06-19 23:09:12
[2026-06-19 23:09:12,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:09:12,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:09:12,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:09:13,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:09:13,120.120 INFO    ] time= 19/06/2026 23:09:13
[2026-06-19 23:09:13,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:09:13,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:09:13,264.264 INFO    ] No existing commands found in stream
[2026-06-19 23:09:18,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:09:18,279.279 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-19 23:09:18,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:09:18,660.660 INFO    ] Checking for system updates...
[2026-06-19 23:09:18,696.696 INFO    ] 200
[2026-06-19 23:09:18,698.698 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:18,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:09:18,762.762 INFO    ] No update needed
[2026-06-19 23:09:18,764.764 INFO    ] Checking for camera pi updates...
[2026-06-19 23:09:18,802.802 INFO    ] 200
[2026-06-19 23:09:18,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:18,851.851 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:09:18,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:09:18,983.983 INFO    ] No camera update needed
[2026-06-19 23:09:18,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:09:18,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:09:18,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:09:18,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:09:21,043.043 INFO    ] ================================================
[2026-06-19 23:09:21,059.059 INFO    ] Launching Daemon at Fri Jun 19 23:09:21 IST 2026
[2026-06-19 23:09:21,070.070 INFO    ] ================================================
[2026-06-19 23:09:21,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:09:21
[2026-06-19 23:09:22,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:09:22,527.527 INFO    ] Initializing speech engine...
[2026-06-19 23:09:22,548.548 INFO    ] 2026-06-19 23:09:22
[2026-06-19 23:09:22,797.797 INFO    ] 2026-06-19 23:09:22
[2026-06-19 23:09:22,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:09:23,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:09:23,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:09:23,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:09:23,174.174 INFO    ] time= 19/06/2026 23:09:23
[2026-06-19 23:09:23,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:09:23,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:09:23,356.356 INFO    ] No existing commands found in stream
[2026-06-19 23:09:28,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:09:28,379.379 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-19 23:09:30,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:09:30,624.624 INFO    ] Checking for system updates...
[2026-06-19 23:09:30,666.666 INFO    ] 200
[2026-06-19 23:09:30,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:30,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:09:30,733.733 INFO    ] No update needed
[2026-06-19 23:09:30,735.735 INFO    ] Checking for camera pi updates...
[2026-06-19 23:09:30,771.771 INFO    ] 200
[2026-06-19 23:09:30,774.774 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:30,821.821 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:09:30,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:09:30,870.870 INFO    ] No camera update needed
[2026-06-19 23:09:30,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:09:30,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:09:30,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:09:30,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:09:32,933.933 INFO    ] ================================================
[2026-06-19 23:09:32,948.948 INFO    ] Launching Daemon at Fri Jun 19 23:09:32 IST 2026
[2026-06-19 23:09:32,960.960 INFO    ] ================================================
[2026-06-19 23:09:33,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:09:33
[2026-06-19 23:09:34,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:09:34,428.428 INFO    ] Initializing speech engine...
[2026-06-19 23:09:34,432.432 INFO    ] 2026-06-19 23:09:34
[2026-06-19 23:09:34,697.697 INFO    ] 2026-06-19 23:09:34
[2026-06-19 23:09:34,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:09:34,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:09:34,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:09:35,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:09:35,018.018 INFO    ] time= 19/06/2026 23:09:35
[2026-06-19 23:09:35,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:09:35,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:09:35,128.128 INFO    ] No existing commands found in stream
[2026-06-19 23:09:40,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:09:40,143.143 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-19 23:09:44,054.054 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:09:44,058.058 INFO    ] Checking for system updates...
[2026-06-19 23:09:44,099.099 INFO    ] 200
[2026-06-19 23:09:44,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:44,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:09:44,169.169 INFO    ] No update needed
[2026-06-19 23:09:44,172.172 INFO    ] Checking for camera pi updates...
[2026-06-19 23:09:44,213.213 INFO    ] 200
[2026-06-19 23:09:44,216.216 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:44,265.265 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:09:44,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:09:44,327.327 INFO    ] No camera update needed
[2026-06-19 23:09:44,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:09:44,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:09:44,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:09:44,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:09:46,390.390 INFO    ] ================================================
[2026-06-19 23:09:46,406.406 INFO    ] Launching Daemon at Fri Jun 19 23:09:46 IST 2026
[2026-06-19 23:09:46,418.418 INFO    ] ================================================
[2026-06-19 23:09:47,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:09:47
[2026-06-19 23:09:47,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:09:48,103.103 INFO    ] Initializing speech engine...
[2026-06-19 23:09:48,117.117 INFO    ] 2026-06-19 23:09:48
[2026-06-19 23:09:48,400.400 INFO    ] 2026-06-19 23:09:48
[2026-06-19 23:09:48,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:09:48,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:09:48,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:09:48,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:09:48,938.938 INFO    ] time= 19/06/2026 23:09:48
[2026-06-19 23:09:48,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:09:48,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:09:49,095.095 INFO    ] No existing commands found in stream
[2026-06-19 23:09:54,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:09:54,116.116 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-19 23:09:58,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:09:58,374.374 INFO    ] Checking for system updates...
[2026-06-19 23:09:58,417.417 INFO    ] 200
[2026-06-19 23:09:58,420.420 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:58,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:09:58,481.481 INFO    ] No update needed
[2026-06-19 23:09:58,483.483 INFO    ] Checking for camera pi updates...
[2026-06-19 23:09:58,519.519 INFO    ] 200
[2026-06-19 23:09:58,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:09:58,568.568 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:09:58,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:09:58,616.616 INFO    ] No camera update needed
[2026-06-19 23:09:58,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:09:58,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:09:58,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:09:58,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:10:00,681.681 INFO    ] ================================================
[2026-06-19 23:10:00,697.697 INFO    ] Launching Daemon at Fri Jun 19 23:10:00 IST 2026
[2026-06-19 23:10:00,708.708 INFO    ] ================================================
[2026-06-19 23:10:01,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:10:01
[2026-06-19 23:10:02,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:10:02,819.819 INFO    ] Initializing speech engine...
[2026-06-19 23:10:02,823.823 INFO    ] 2026-06-19 23:10:02
[2026-06-19 23:10:03,221.221 INFO    ] 2026-06-19 23:10:03
[2026-06-19 23:10:03,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:10:03,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:10:03,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:10:03,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:10:03,664.664 INFO    ] time= 19/06/2026 23:10:03
[2026-06-19 23:10:03,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:10:03,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:10:03,811.811 INFO    ] No existing commands found in stream
[2026-06-19 23:10:08,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:10:08,826.826 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-19 23:10:12,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:10:12,769.769 INFO    ] Checking for system updates...
[2026-06-19 23:10:12,804.804 INFO    ] 200
[2026-06-19 23:10:12,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:10:12,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:10:12,862.862 INFO    ] No update needed
[2026-06-19 23:10:12,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 23:10:12,903.903 INFO    ] 200
[2026-06-19 23:10:12,905.905 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:10:12,947.947 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:10:12,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:10:12,994.994 INFO    ] No camera update needed
[2026-06-19 23:10:12,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:10:12,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:10:13,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:10:13,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:10:15,052.052 INFO    ] ================================================
[2026-06-19 23:10:15,068.068 INFO    ] Launching Daemon at Fri Jun 19 23:10:15 IST 2026
[2026-06-19 23:10:15,079.079 INFO    ] ================================================
[2026-06-19 23:10:15,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:10:15
[2026-06-19 23:10:16,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:10:16,699.699 INFO    ] Initializing speech engine...
[2026-06-19 23:10:16,711.711 INFO    ] 2026-06-19 23:10:16
[2026-06-19 23:10:17,032.032 INFO    ] 2026-06-19 23:10:16
[2026-06-19 23:10:17,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:10:17,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:10:17,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:10:17,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:10:17,474.474 INFO    ] time= 19/06/2026 23:10:17
[2026-06-19 23:10:17,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:10:17,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:10:17,621.621 INFO    ] No existing commands found in stream
[2026-06-19 23:10:22,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:10:22,638.638 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 23:10:25,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:10:25,944.944 INFO    ] Checking for system updates...
[2026-06-19 23:10:25,981.981 INFO    ] 200
[2026-06-19 23:10:25,984.984 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:10:26,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:10:26,042.042 INFO    ] No update needed
[2026-06-19 23:10:26,045.045 INFO    ] Checking for camera pi updates...
[2026-06-19 23:10:26,081.081 INFO    ] 200
[2026-06-19 23:10:26,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:10:26,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:10:26,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:10:26,181.181 INFO    ] No camera update needed
[2026-06-19 23:10:26,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:10:26,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:10:26,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:10:26,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:10:28,240.240 INFO    ] ================================================
[2026-06-19 23:10:28,257.257 INFO    ] Launching Daemon at Fri Jun 19 23:10:28 IST 2026
[2026-06-19 23:10:28,268.268 INFO    ] ================================================
[2026-06-19 23:10:28,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:10:28
[2026-06-19 23:10:29,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:10:29,940.940 INFO    ] Initializing speech engine...
[2026-06-19 23:10:29,955.955 INFO    ] 2026-06-19 23:10:29
[2026-06-19 23:10:30,273.273 INFO    ] 2026-06-19 23:10:30
[2026-06-19 23:10:30,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:10:30,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:10:30,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:10:30,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:10:30,717.717 INFO    ] time= 19/06/2026 23:10:30
[2026-06-19 23:10:30,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:10:30,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:10:30,924.924 INFO    ] No existing commands found in stream
[2026-06-19 23:10:35,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:10:35,953.953 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-19 23:10:38,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:10:38,883.883 INFO    ] Checking for system updates...
[2026-06-19 23:10:38,926.926 INFO    ] 200
[2026-06-19 23:10:38,930.930 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:10:38,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:10:38,996.996 INFO    ] No update needed
[2026-06-19 23:10:38,999.999 INFO    ] Checking for camera pi updates...
[2026-06-19 23:10:39,035.035 INFO    ] 200
[2026-06-19 23:10:39,038.038 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:10:39,081.081 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:10:39,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:10:39,134.134 INFO    ] No camera update needed
[2026-06-19 23:10:39,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:10:39,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:10:39,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:10:39,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:10:41,197.197 INFO    ] ================================================
[2026-06-19 23:10:41,213.213 INFO    ] Launching Daemon at Fri Jun 19 23:10:41 IST 2026
[2026-06-19 23:10:41,224.224 INFO    ] ================================================
[2026-06-19 23:10:41,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:10:41
[2026-06-19 23:10:42,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:10:42,891.891 INFO    ] Initializing speech engine...
[2026-06-19 23:10:42,898.898 INFO    ] 2026-06-19 23:10:42
[2026-06-19 23:10:43,185.185 INFO    ] 2026-06-19 23:10:43
[2026-06-19 23:10:43,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:10:43,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:10:43,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:10:43,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:10:43,718.718 INFO    ] time= 19/06/2026 23:10:43
[2026-06-19 23:10:43,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:10:43,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:10:43,877.877 INFO    ] No existing commands found in stream
[2026-06-19 23:10:48,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:10:48,916.916 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 23:10:52,932.932 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:10:52,935.935 INFO    ] Checking for system updates...
[2026-06-19 23:10:52,973.973 INFO    ] 200
[2026-06-19 23:10:52,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:10:53,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:10:53,041.041 INFO    ] No update needed
[2026-06-19 23:10:53,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 23:10:53,081.081 INFO    ] 200
[2026-06-19 23:10:53,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:10:53,126.126 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:10:53,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:10:53,174.174 INFO    ] No camera update needed
[2026-06-19 23:10:53,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:10:53,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:10:53,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:10:53,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:10:55,234.234 INFO    ] ================================================
[2026-06-19 23:10:55,250.250 INFO    ] Launching Daemon at Fri Jun 19 23:10:55 IST 2026
[2026-06-19 23:10:55,261.261 INFO    ] ================================================
[2026-06-19 23:10:55,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:10:55
[2026-06-19 23:10:56,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:10:56,696.696 INFO    ] Initializing speech engine...
[2026-06-19 23:10:56,718.718 INFO    ] 2026-06-19 23:10:56
[2026-06-19 23:10:56,986.986 INFO    ] 2026-06-19 23:10:56
[2026-06-19 23:10:57,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:10:57,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:10:57,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:10:57,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:10:57,413.413 INFO    ] time= 19/06/2026 23:10:57
[2026-06-19 23:10:57,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:10:57,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:10:57,504.504 INFO    ] No existing commands found in stream
[2026-06-19 23:11:02,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:11:02,520.520 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 23:11:04,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:11:04,402.402 INFO    ] Checking for system updates...
[2026-06-19 23:11:04,438.438 INFO    ] 200
[2026-06-19 23:11:04,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:04,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:11:04,499.499 INFO    ] No update needed
[2026-06-19 23:11:04,501.501 INFO    ] Checking for camera pi updates...
[2026-06-19 23:11:04,535.535 INFO    ] 200
[2026-06-19 23:11:04,538.538 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:04,579.579 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:11:04,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:11:04,631.631 INFO    ] No camera update needed
[2026-06-19 23:11:04,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:11:04,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:11:04,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:11:04,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:11:06,687.687 INFO    ] ================================================
[2026-06-19 23:11:06,703.703 INFO    ] Launching Daemon at Fri Jun 19 23:11:06 IST 2026
[2026-06-19 23:11:06,714.714 INFO    ] ================================================
[2026-06-19 23:11:07,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:11:07
[2026-06-19 23:11:08,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:11:08,321.321 INFO    ] Initializing speech engine...
[2026-06-19 23:11:08,331.331 INFO    ] 2026-06-19 23:11:08
[2026-06-19 23:11:08,653.653 INFO    ] 2026-06-19 23:11:08
[2026-06-19 23:11:08,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:11:08,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:11:08,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:11:09,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:11:09,093.093 INFO    ] time= 19/06/2026 23:11:09
[2026-06-19 23:11:09,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:11:09,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:11:09,240.240 INFO    ] No existing commands found in stream
[2026-06-19 23:11:14,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:11:14,268.268 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-19 23:11:16,933.933 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:11:16,936.936 INFO    ] Checking for system updates...
[2026-06-19 23:11:16,978.978 INFO    ] 200
[2026-06-19 23:11:16,981.981 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:17,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:11:17,039.039 INFO    ] No update needed
[2026-06-19 23:11:17,042.042 INFO    ] Checking for camera pi updates...
[2026-06-19 23:11:17,076.076 INFO    ] 200
[2026-06-19 23:11:17,079.079 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:17,120.120 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:11:17,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:11:17,174.174 INFO    ] No camera update needed
[2026-06-19 23:11:17,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:11:17,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:11:17,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:11:17,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:11:19,233.233 INFO    ] ================================================
[2026-06-19 23:11:19,249.249 INFO    ] Launching Daemon at Fri Jun 19 23:11:19 IST 2026
[2026-06-19 23:11:19,260.260 INFO    ] ================================================
[2026-06-19 23:11:19,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:11:19
[2026-06-19 23:11:20,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:11:20,864.864 INFO    ] Initializing speech engine...
[2026-06-19 23:11:20,872.872 INFO    ] 2026-06-19 23:11:20
[2026-06-19 23:11:21,155.155 INFO    ] 2026-06-19 23:11:21
[2026-06-19 23:11:21,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:11:21,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:11:21,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:11:21,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:11:21,608.608 INFO    ] time= 19/06/2026 23:11:21
[2026-06-19 23:11:21,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:11:21,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:11:21,811.811 INFO    ] No existing commands found in stream
[2026-06-19 23:11:26,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:11:26,837.837 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-19 23:11:30,626.626 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:11:30,629.629 INFO    ] Checking for system updates...
[2026-06-19 23:11:30,665.665 INFO    ] 200
[2026-06-19 23:11:30,668.668 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:30,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:11:30,725.725 INFO    ] No update needed
[2026-06-19 23:11:30,727.727 INFO    ] Checking for camera pi updates...
[2026-06-19 23:11:30,769.769 INFO    ] 200
[2026-06-19 23:11:30,771.771 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:30,812.812 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:11:30,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:11:30,960.960 INFO    ] No camera update needed
[2026-06-19 23:11:30,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:11:30,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:11:30,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:11:30,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:11:33,017.017 INFO    ] ================================================
[2026-06-19 23:11:33,032.032 INFO    ] Launching Daemon at Fri Jun 19 23:11:33 IST 2026
[2026-06-19 23:11:33,044.044 INFO    ] ================================================
[2026-06-19 23:11:33,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:11:33
[2026-06-19 23:11:34,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:11:34,497.497 INFO    ] Initializing speech engine...
[2026-06-19 23:11:34,507.507 INFO    ] 2026-06-19 23:11:34
[2026-06-19 23:11:34,752.752 INFO    ] 2026-06-19 23:11:34
[2026-06-19 23:11:34,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:11:34,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:11:34,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:11:35,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:11:35,123.123 INFO    ] time= 19/06/2026 23:11:35
[2026-06-19 23:11:35,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:11:35,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:11:35,296.296 INFO    ] No existing commands found in stream
[2026-06-19 23:11:40,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:11:40,324.324 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 23:11:41,761.761 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:11:41,764.764 INFO    ] Checking for system updates...
[2026-06-19 23:11:41,799.799 INFO    ] 200
[2026-06-19 23:11:41,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:41,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:11:41,858.858 INFO    ] No update needed
[2026-06-19 23:11:41,860.860 INFO    ] Checking for camera pi updates...
[2026-06-19 23:11:41,895.895 INFO    ] 200
[2026-06-19 23:11:41,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:41,939.939 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:11:41,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:11:41,986.986 INFO    ] No camera update needed
[2026-06-19 23:11:41,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:11:41,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:11:41,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:11:42,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:11:44,040.040 INFO    ] ================================================
[2026-06-19 23:11:44,055.055 INFO    ] Launching Daemon at Fri Jun 19 23:11:44 IST 2026
[2026-06-19 23:11:44,066.066 INFO    ] ================================================
[2026-06-19 23:11:44,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:11:44
[2026-06-19 23:11:45,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:11:45,675.675 INFO    ] Initializing speech engine...
[2026-06-19 23:11:45,684.684 INFO    ] 2026-06-19 23:11:45
[2026-06-19 23:11:45,956.956 INFO    ] 2026-06-19 23:11:45
[2026-06-19 23:11:46,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:11:46,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:11:46,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:11:46,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:11:46,422.422 INFO    ] time= 19/06/2026 23:11:46
[2026-06-19 23:11:46,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:11:46,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:11:46,574.574 INFO    ] No existing commands found in stream
[2026-06-19 23:11:51,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:11:51,592.592 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 23:11:55,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:11:55,846.846 INFO    ] Checking for system updates...
[2026-06-19 23:11:55,883.883 INFO    ] 200
[2026-06-19 23:11:55,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:55,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:11:55,952.952 INFO    ] No update needed
[2026-06-19 23:11:55,954.954 INFO    ] Checking for camera pi updates...
[2026-06-19 23:11:55,989.989 INFO    ] 200
[2026-06-19 23:11:55,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:11:56,036.036 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:11:56,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:11:56,088.088 INFO    ] No camera update needed
[2026-06-19 23:11:56,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:11:56,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:11:56,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:11:56,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:11:58,145.145 INFO    ] ================================================
[2026-06-19 23:11:58,160.160 INFO    ] Launching Daemon at Fri Jun 19 23:11:58 IST 2026
[2026-06-19 23:11:58,170.170 INFO    ] ================================================
[2026-06-19 23:11:58,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:11:58
[2026-06-19 23:11:59,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:11:59,590.590 INFO    ] Initializing speech engine...
[2026-06-19 23:11:59,601.601 INFO    ] 2026-06-19 23:11:59
[2026-06-19 23:11:59,845.845 INFO    ] 2026-06-19 23:11:59
[2026-06-19 23:11:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:12:00,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:12:00,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:12:00,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:12:00,294.294 INFO    ] time= 19/06/2026 23:12:00
[2026-06-19 23:12:00,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:12:00,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:12:00,502.502 INFO    ] No existing commands found in stream
[2026-06-19 23:12:05,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:12:05,537.537 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 23:12:08,036.036 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:12:08,039.039 INFO    ] Checking for system updates...
[2026-06-19 23:12:08,075.075 INFO    ] 200
[2026-06-19 23:12:08,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:12:08,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:12:08,138.138 INFO    ] No update needed
[2026-06-19 23:12:08,140.140 INFO    ] Checking for camera pi updates...
[2026-06-19 23:12:08,173.173 INFO    ] 200
[2026-06-19 23:12:08,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:12:08,221.221 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:12:08,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:12:08,272.272 INFO    ] No camera update needed
[2026-06-19 23:12:08,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:12:08,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:12:08,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:12:08,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:12:10,328.328 INFO    ] ================================================
[2026-06-19 23:12:10,343.343 INFO    ] Launching Daemon at Fri Jun 19 23:12:10 IST 2026
[2026-06-19 23:12:10,353.353 INFO    ] ================================================
[2026-06-19 23:12:10,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:12:10
[2026-06-19 23:12:11,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:12:11,791.791 INFO    ] Initializing speech engine...
[2026-06-19 23:12:11,809.809 INFO    ] 2026-06-19 23:12:11
[2026-06-19 23:12:12,079.079 INFO    ] 2026-06-19 23:12:12
[2026-06-19 23:12:12,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:12:12,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:12:12,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:12:12,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:12:12,492.492 INFO    ] time= 19/06/2026 23:12:12
[2026-06-19 23:12:12,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:12:12,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:12:12,575.575 INFO    ] No existing commands found in stream
[2026-06-19 23:12:17,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:12:17,591.591 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 23:12:21,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:12:21,049.049 INFO    ] Checking for system updates...
[2026-06-19 23:12:21,085.085 INFO    ] 200
[2026-06-19 23:12:21,087.087 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:12:21,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:12:21,143.143 INFO    ] No update needed
[2026-06-19 23:12:21,145.145 INFO    ] Checking for camera pi updates...
[2026-06-19 23:12:21,179.179 INFO    ] 200
[2026-06-19 23:12:21,182.182 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:12:21,223.223 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:12:21,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:12:21,279.279 INFO    ] No camera update needed
[2026-06-19 23:12:21,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:12:21,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:12:21,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:12:21,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:12:23,333.333 INFO    ] ================================================
[2026-06-19 23:12:23,348.348 INFO    ] Launching Daemon at Fri Jun 19 23:12:23 IST 2026
[2026-06-19 23:12:23,359.359 INFO    ] ================================================
[2026-06-19 23:12:23,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:12:23
[2026-06-19 23:12:24,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:12:24,806.806 INFO    ] Initializing speech engine...
[2026-06-19 23:12:24,815.815 INFO    ] 2026-06-19 23:12:24
[2026-06-19 23:12:25,069.069 INFO    ] 2026-06-19 23:12:25
[2026-06-19 23:12:25,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:12:25,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:12:25,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:12:25,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:12:25,566.566 INFO    ] time= 19/06/2026 23:12:25
[2026-06-19 23:12:25,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:12:25,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:12:25,697.697 INFO    ] No existing commands found in stream
[2026-06-19 23:12:30,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:12:30,710.710 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-19 23:12:33,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:12:33,662.662 INFO    ] Checking for system updates...
[2026-06-19 23:12:33,701.701 INFO    ] 200
[2026-06-19 23:12:33,703.703 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:12:33,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:12:33,758.758 INFO    ] No update needed
[2026-06-19 23:12:33,760.760 INFO    ] Checking for camera pi updates...
[2026-06-19 23:12:33,797.797 INFO    ] 200
[2026-06-19 23:12:33,799.799 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:12:33,844.844 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:12:33,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:12:33,891.891 INFO    ] No camera update needed
[2026-06-19 23:12:33,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:12:33,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:12:33,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:12:33,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:12:35,946.946 INFO    ] ================================================
[2026-06-19 23:12:35,962.962 INFO    ] Launching Daemon at Fri Jun 19 23:12:35 IST 2026
[2026-06-19 23:12:35,974.974 INFO    ] ================================================
[2026-06-19 23:12:36,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:12:36
[2026-06-19 23:12:37,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:12:37,406.406 INFO    ] Initializing speech engine...
[2026-06-19 23:12:37,417.417 INFO    ] 2026-06-19 23:12:37
[2026-06-19 23:12:37,681.681 INFO    ] 2026-06-19 23:12:37
[2026-06-19 23:12:37,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:12:37,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:12:37,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:12:38,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:12:38,050.050 INFO    ] time= 19/06/2026 23:12:38
[2026-06-19 23:12:38,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:12:38,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:12:38,174.174 INFO    ] No existing commands found in stream
[2026-06-19 23:12:43,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:12:43,187.187 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-19 23:12:47,472.472 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:12:47,474.474 INFO    ] Checking for system updates...
[2026-06-19 23:12:47,510.510 INFO    ] 200
[2026-06-19 23:12:47,512.512 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:12:47,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:12:47,569.569 INFO    ] No update needed
[2026-06-19 23:12:47,571.571 INFO    ] Checking for camera pi updates...
[2026-06-19 23:12:47,607.607 INFO    ] 200
[2026-06-19 23:12:47,610.610 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:12:47,650.650 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:12:47,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:12:47,689.689 INFO    ] No camera update needed
[2026-06-19 23:12:47,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:12:47,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:12:47,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:12:47,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:12:49,745.745 INFO    ] ================================================
[2026-06-19 23:12:49,761.761 INFO    ] Launching Daemon at Fri Jun 19 23:12:49 IST 2026
[2026-06-19 23:12:49,772.772 INFO    ] ================================================
[2026-06-19 23:12:50,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:12:50
[2026-06-19 23:12:50,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:12:51,207.207 INFO    ] Initializing speech engine...
[2026-06-19 23:12:51,212.212 INFO    ] 2026-06-19 23:12:51
[2026-06-19 23:12:51,459.459 INFO    ] 2026-06-19 23:12:51
[2026-06-19 23:12:51,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:12:51,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:12:51,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:12:51,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:12:51,938.938 INFO    ] time= 19/06/2026 23:12:51
[2026-06-19 23:12:51,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:12:52,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:12:52,080.080 INFO    ] No existing commands found in stream
[2026-06-19 23:12:57,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:12:57,096.096 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 23:13:00,826.826 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:13:00,829.829 INFO    ] Checking for system updates...
[2026-06-19 23:13:00,866.866 INFO    ] 200
[2026-06-19 23:13:00,869.869 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:00,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:13:00,926.926 INFO    ] No update needed
[2026-06-19 23:13:00,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 23:13:00,963.963 INFO    ] 200
[2026-06-19 23:13:00,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:01,008.008 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:13:01,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:13:01,056.056 INFO    ] No camera update needed
[2026-06-19 23:13:01,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:13:01,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:13:01,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:13:01,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:13:03,117.117 INFO    ] ================================================
[2026-06-19 23:13:03,134.134 INFO    ] Launching Daemon at Fri Jun 19 23:13:03 IST 2026
[2026-06-19 23:13:03,145.145 INFO    ] ================================================
[2026-06-19 23:13:03,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:13:03
[2026-06-19 23:13:04,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:13:04,607.607 INFO    ] Initializing speech engine...
[2026-06-19 23:13:04,622.622 INFO    ] 2026-06-19 23:13:04
[2026-06-19 23:13:04,899.899 INFO    ] 2026-06-19 23:13:04
[2026-06-19 23:13:04,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:13:05,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:13:05,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:13:05,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:13:05,276.276 INFO    ] time= 19/06/2026 23:13:05
[2026-06-19 23:13:05,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:13:05,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:13:05,456.456 INFO    ] No existing commands found in stream
[2026-06-19 23:13:10,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:13:10,484.484 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-19 23:13:14,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:13:14,329.329 INFO    ] Checking for system updates...
[2026-06-19 23:13:14,365.365 INFO    ] 200
[2026-06-19 23:13:14,368.368 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:14,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:13:14,427.427 INFO    ] No update needed
[2026-06-19 23:13:14,429.429 INFO    ] Checking for camera pi updates...
[2026-06-19 23:13:14,463.463 INFO    ] 200
[2026-06-19 23:13:14,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:14,509.509 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:13:14,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:13:14,555.555 INFO    ] No camera update needed
[2026-06-19 23:13:14,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:13:14,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:13:14,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:13:14,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:13:16,610.610 INFO    ] ================================================
[2026-06-19 23:13:16,626.626 INFO    ] Launching Daemon at Fri Jun 19 23:13:16 IST 2026
[2026-06-19 23:13:16,637.637 INFO    ] ================================================
[2026-06-19 23:13:17,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:13:17
[2026-06-19 23:13:17,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:13:18,200.200 INFO    ] Initializing speech engine...
[2026-06-19 23:13:18,205.205 INFO    ] 2026-06-19 23:13:18
[2026-06-19 23:13:18,491.491 INFO    ] 2026-06-19 23:13:18
[2026-06-19 23:13:18,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:13:18,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:13:18,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:13:18,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:13:18,982.982 INFO    ] time= 19/06/2026 23:13:18
[2026-06-19 23:13:19,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:13:19,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:13:19,101.101 INFO    ] No existing commands found in stream
[2026-06-19 23:13:24,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:13:24,118.118 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 23:13:27,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:13:27,405.405 INFO    ] Checking for system updates...
[2026-06-19 23:13:27,442.442 INFO    ] 200
[2026-06-19 23:13:27,445.445 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:27,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:13:27,507.507 INFO    ] No update needed
[2026-06-19 23:13:27,510.510 INFO    ] Checking for camera pi updates...
[2026-06-19 23:13:27,543.543 INFO    ] 200
[2026-06-19 23:13:27,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:27,590.590 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:13:27,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:13:27,634.634 INFO    ] No camera update needed
[2026-06-19 23:13:27,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:13:27,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:13:27,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:13:27,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:13:29,690.690 INFO    ] ================================================
[2026-06-19 23:13:29,705.705 INFO    ] Launching Daemon at Fri Jun 19 23:13:29 IST 2026
[2026-06-19 23:13:29,716.716 INFO    ] ================================================
[2026-06-19 23:13:30,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:13:30
[2026-06-19 23:13:30,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:13:31,161.161 INFO    ] Initializing speech engine...
[2026-06-19 23:13:31,170.170 INFO    ] 2026-06-19 23:13:31
[2026-06-19 23:13:31,428.428 INFO    ] 2026-06-19 23:13:31
[2026-06-19 23:13:31,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:13:31,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:13:31,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:13:31,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:13:31,890.890 INFO    ] time= 19/06/2026 23:13:31
[2026-06-19 23:13:31,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:13:31,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:13:32,061.061 INFO    ] No existing commands found in stream
[2026-06-19 23:13:37,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:13:37,094.094 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 23:13:38,211.211 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:13:38,213.213 INFO    ] Checking for system updates...
[2026-06-19 23:13:38,250.250 INFO    ] 200
[2026-06-19 23:13:38,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:38,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:13:38,309.309 INFO    ] No update needed
[2026-06-19 23:13:38,311.311 INFO    ] Checking for camera pi updates...
[2026-06-19 23:13:38,345.345 INFO    ] 200
[2026-06-19 23:13:38,348.348 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:38,389.389 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:13:38,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:13:38,440.440 INFO    ] No camera update needed
[2026-06-19 23:13:38,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:13:38,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:13:38,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:13:38,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:13:40,496.496 INFO    ] ================================================
[2026-06-19 23:13:40,512.512 INFO    ] Launching Daemon at Fri Jun 19 23:13:40 IST 2026
[2026-06-19 23:13:40,523.523 INFO    ] ================================================
[2026-06-19 23:13:41,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:13:41
[2026-06-19 23:13:41,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:13:42,104.104 INFO    ] Initializing speech engine...
[2026-06-19 23:13:42,114.114 INFO    ] 2026-06-19 23:13:42
[2026-06-19 23:13:42,381.381 INFO    ] 2026-06-19 23:13:42
[2026-06-19 23:13:42,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:13:42,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:13:42,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:13:42,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:13:42,861.861 INFO    ] time= 19/06/2026 23:13:42
[2026-06-19 23:13:42,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:13:42,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:13:43,011.011 INFO    ] No existing commands found in stream
[2026-06-19 23:13:48,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:13:48,029.029 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-19 23:13:49,291.291 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:13:49,294.294 INFO    ] Checking for system updates...
[2026-06-19 23:13:49,333.333 INFO    ] 200
[2026-06-19 23:13:49,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:49,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:13:49,394.394 INFO    ] No update needed
[2026-06-19 23:13:49,397.397 INFO    ] Checking for camera pi updates...
[2026-06-19 23:13:49,434.434 INFO    ] 200
[2026-06-19 23:13:49,436.436 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:49,477.477 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:13:49,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:13:49,514.514 INFO    ] No camera update needed
[2026-06-19 23:13:49,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:13:49,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:13:49,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:13:49,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:13:51,570.570 INFO    ] ================================================
[2026-06-19 23:13:51,585.585 INFO    ] Launching Daemon at Fri Jun 19 23:13:51 IST 2026
[2026-06-19 23:13:51,596.596 INFO    ] ================================================
[2026-06-19 23:13:52,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:13:52
[2026-06-19 23:13:52,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:13:53,031.031 INFO    ] Initializing speech engine...
[2026-06-19 23:13:53,040.040 INFO    ] 2026-06-19 23:13:53
[2026-06-19 23:13:53,292.292 INFO    ] 2026-06-19 23:13:53
[2026-06-19 23:13:53,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:13:53,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:13:53,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:13:53,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:13:53,782.782 INFO    ] time= 19/06/2026 23:13:53
[2026-06-19 23:13:53,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:13:53,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:13:53,921.921 INFO    ] No existing commands found in stream
[2026-06-19 23:13:58,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:13:58,936.936 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 23:13:59,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:13:59,694.694 INFO    ] Checking for system updates...
[2026-06-19 23:13:59,730.730 INFO    ] 200
[2026-06-19 23:13:59,732.732 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:59,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:13:59,788.788 INFO    ] No update needed
[2026-06-19 23:13:59,790.790 INFO    ] Checking for camera pi updates...
[2026-06-19 23:13:59,827.827 INFO    ] 200
[2026-06-19 23:13:59,829.829 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:13:59,870.870 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:13:59,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:13:59,918.918 INFO    ] No camera update needed
[2026-06-19 23:13:59,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:13:59,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:13:59,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:13:59,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:14:01,979.979 INFO    ] ================================================
[2026-06-19 23:14:02,998.998 INFO    ] Launching Daemon at Fri Jun 19 23:14:01 IST 2026
[2026-06-19 23:14:02,020.020 INFO    ] ================================================
[2026-06-19 23:14:02,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:14:02
[2026-06-19 23:14:03,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:14:03,592.592 INFO    ] Initializing speech engine...
[2026-06-19 23:14:03,599.599 INFO    ] 2026-06-19 23:14:03
[2026-06-19 23:14:03,848.848 INFO    ] 2026-06-19 23:14:03
[2026-06-19 23:14:03,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:14:04,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:14:04,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:14:04,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:14:04,224.224 INFO    ] time= 19/06/2026 23:14:04
[2026-06-19 23:14:04,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:14:04,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:14:04,415.415 INFO    ] No existing commands found in stream
[2026-06-19 23:14:09,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:14:09,439.439 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-19 23:14:12,625.625 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:14:12,628.628 INFO    ] Checking for system updates...
[2026-06-19 23:14:12,664.664 INFO    ] 200
[2026-06-19 23:14:12,667.667 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:14:12,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:14:12,723.723 INFO    ] No update needed
[2026-06-19 23:14:12,726.726 INFO    ] Checking for camera pi updates...
[2026-06-19 23:14:12,760.760 INFO    ] 200
[2026-06-19 23:14:12,762.762 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:14:12,803.803 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:14:12,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:14:12,849.849 INFO    ] No camera update needed
[2026-06-19 23:14:12,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:14:12,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:14:12,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:14:12,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:14:14,904.904 INFO    ] ================================================
[2026-06-19 23:14:14,919.919 INFO    ] Launching Daemon at Fri Jun 19 23:14:14 IST 2026
[2026-06-19 23:14:14,930.930 INFO    ] ================================================
[2026-06-19 23:14:15,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:14:15
[2026-06-19 23:14:16,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:14:16,357.357 INFO    ] Initializing speech engine...
[2026-06-19 23:14:16,373.373 INFO    ] 2026-06-19 23:14:16
[2026-06-19 23:14:16,657.657 INFO    ] 2026-06-19 23:14:16
[2026-06-19 23:14:16,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:14:16,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:14:16,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:14:17,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:14:17,034.034 INFO    ] time= 19/06/2026 23:14:17
[2026-06-19 23:14:17,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:14:17,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:14:17,158.158 INFO    ] No existing commands found in stream
[2026-06-19 23:14:22,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:14:22,173.173 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 23:14:23,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:14:23,428.428 INFO    ] Checking for system updates...
[2026-06-19 23:14:23,468.468 INFO    ] 200
[2026-06-19 23:14:23,471.471 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:14:23,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:14:23,534.534 INFO    ] No update needed
[2026-06-19 23:14:23,537.537 INFO    ] Checking for camera pi updates...
[2026-06-19 23:14:23,571.571 INFO    ] 200
[2026-06-19 23:14:23,574.574 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:14:23,620.620 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:14:23,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:14:23,670.670 INFO    ] No camera update needed
[2026-06-19 23:14:23,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:14:23,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:14:23,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:14:23,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:14:25,725.725 INFO    ] ================================================
[2026-06-19 23:14:25,740.740 INFO    ] Launching Daemon at Fri Jun 19 23:14:25 IST 2026
[2026-06-19 23:14:25,750.750 INFO    ] ================================================
[2026-06-19 23:14:26,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:14:26
[2026-06-19 23:14:26,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:14:27,200.200 INFO    ] Initializing speech engine...
[2026-06-19 23:14:27,221.221 INFO    ] 2026-06-19 23:14:27
[2026-06-19 23:14:27,500.500 INFO    ] 2026-06-19 23:14:27
[2026-06-19 23:14:27,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:14:27,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:14:27,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:14:27,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:14:27,918.918 INFO    ] time= 19/06/2026 23:14:27
[2026-06-19 23:14:27,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:14:27,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:14:28,085.085 INFO    ] No existing commands found in stream
[2026-06-19 23:14:33,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:14:33,118.118 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-19 23:14:36,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:14:36,858.858 INFO    ] Checking for system updates...
[2026-06-19 23:14:36,894.894 INFO    ] 200
[2026-06-19 23:14:36,897.897 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:14:36,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:14:36,959.959 INFO    ] No update needed
[2026-06-19 23:14:36,962.962 INFO    ] Checking for camera pi updates...
[2026-06-19 23:14:36,995.995 INFO    ] 200
[2026-06-19 23:14:36,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:14:37,042.042 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:14:37,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:14:37,087.087 INFO    ] No camera update needed
[2026-06-19 23:14:37,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:14:37,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:14:37,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:14:37,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:14:39,142.142 INFO    ] ================================================
[2026-06-19 23:14:39,158.158 INFO    ] Launching Daemon at Fri Jun 19 23:14:39 IST 2026
[2026-06-19 23:14:39,168.168 INFO    ] ================================================
[2026-06-19 23:14:39,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:14:39
[2026-06-19 23:14:40,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:14:40,616.616 INFO    ] Initializing speech engine...
[2026-06-19 23:14:40,624.624 INFO    ] 2026-06-19 23:14:40
[2026-06-19 23:14:40,876.876 INFO    ] 2026-06-19 23:14:40
[2026-06-19 23:14:40,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:14:41,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:14:41,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:14:41,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:14:41,255.255 INFO    ] time= 19/06/2026 23:14:41
[2026-06-19 23:14:41,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:14:41,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:14:41,427.427 INFO    ] No existing commands found in stream
[2026-06-19 23:14:46,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:14:46,455.455 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 23:14:48,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:14:48,094.094 INFO    ] Checking for system updates...
[2026-06-19 23:14:48,131.131 INFO    ] 200
[2026-06-19 23:14:48,133.133 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:14:48,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:14:48,189.189 INFO    ] No update needed
[2026-06-19 23:14:48,191.191 INFO    ] Checking for camera pi updates...
[2026-06-19 23:14:48,225.225 INFO    ] 200
[2026-06-19 23:14:48,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:14:48,269.269 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:14:48,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:14:48,303.303 INFO    ] No camera update needed
[2026-06-19 23:14:48,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:14:48,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:14:48,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:14:48,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:14:50,360.360 INFO    ] ================================================
[2026-06-19 23:14:50,375.375 INFO    ] Launching Daemon at Fri Jun 19 23:14:50 IST 2026
[2026-06-19 23:14:50,389.389 INFO    ] ================================================
[2026-06-19 23:14:50,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:14:50
[2026-06-19 23:14:51,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:14:51,809.809 INFO    ] Initializing speech engine...
[2026-06-19 23:14:51,834.834 INFO    ] 2026-06-19 23:14:51
[2026-06-19 23:14:52,104.104 INFO    ] 2026-06-19 23:14:52
[2026-06-19 23:14:52,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:14:52,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:14:52,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:14:52,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:14:52,483.483 INFO    ] time= 19/06/2026 23:14:52
[2026-06-19 23:14:52,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:14:52,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:14:52,609.609 INFO    ] No existing commands found in stream
[2026-06-19 23:14:57,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:14:57,624.624 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-19 23:15:01,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:15:01,320.320 INFO    ] Checking for system updates...
[2026-06-19 23:15:01,360.360 INFO    ] 200
[2026-06-19 23:15:01,362.362 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:01,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:15:01,417.417 INFO    ] No update needed
[2026-06-19 23:15:01,420.420 INFO    ] Checking for camera pi updates...
[2026-06-19 23:15:01,459.459 INFO    ] 200
[2026-06-19 23:15:01,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:01,615.615 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:15:01,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:15:01,726.726 INFO    ] No camera update needed
[2026-06-19 23:15:01,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:15:01,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:15:01,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:15:01,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:15:03,840.840 INFO    ] ================================================
[2026-06-19 23:15:03,855.855 INFO    ] Launching Daemon at Fri Jun 19 23:15:03 IST 2026
[2026-06-19 23:15:03,866.866 INFO    ] ================================================
[2026-06-19 23:15:04,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:15:04
[2026-06-19 23:15:05,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:15:05,339.339 INFO    ] Initializing speech engine...
[2026-06-19 23:15:05,349.349 INFO    ] 2026-06-19 23:15:05
[2026-06-19 23:15:05,612.612 INFO    ] 2026-06-19 23:15:05
[2026-06-19 23:15:05,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:15:05,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:15:05,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:15:06,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:15:06,098.098 INFO    ] time= 19/06/2026 23:15:06
[2026-06-19 23:15:06,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:15:06,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:15:06,237.237 INFO    ] No existing commands found in stream
[2026-06-19 23:15:11,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:15:11,252.252 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-19 23:15:12,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:15:12,706.706 INFO    ] Checking for system updates...
[2026-06-19 23:15:12,747.747 INFO    ] 200
[2026-06-19 23:15:12,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:12,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:15:12,804.804 INFO    ] No update needed
[2026-06-19 23:15:12,807.807 INFO    ] Checking for camera pi updates...
[2026-06-19 23:15:12,841.841 INFO    ] 200
[2026-06-19 23:15:12,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:12,885.885 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:15:12,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:15:12,933.933 INFO    ] No camera update needed
[2026-06-19 23:15:12,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:15:12,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:15:12,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:15:12,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:15:14,989.989 INFO    ] ================================================
[2026-06-19 23:15:15,005.005 INFO    ] Launching Daemon at Fri Jun 19 23:15:14 IST 2026
[2026-06-19 23:15:15,016.016 INFO    ] ================================================
[2026-06-19 23:15:15,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:15:15
[2026-06-19 23:15:16,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:15:16,454.454 INFO    ] Initializing speech engine...
[2026-06-19 23:15:16,466.466 INFO    ] 2026-06-19 23:15:16
[2026-06-19 23:15:16,752.752 INFO    ] 2026-06-19 23:15:16
[2026-06-19 23:15:16,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:15:16,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:15:17,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:15:17,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:15:17,134.134 INFO    ] time= 19/06/2026 23:15:17
[2026-06-19 23:15:17,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:15:17,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:15:17,260.260 INFO    ] No existing commands found in stream
[2026-06-19 23:15:22,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:15:22,275.275 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-19 23:15:25,171.171 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:15:25,174.174 INFO    ] Checking for system updates...
[2026-06-19 23:15:25,211.211 INFO    ] 200
[2026-06-19 23:15:25,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:25,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:15:25,269.269 INFO    ] No update needed
[2026-06-19 23:15:25,271.271 INFO    ] Checking for camera pi updates...
[2026-06-19 23:15:25,309.309 INFO    ] 200
[2026-06-19 23:15:25,311.311 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:25,352.352 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:15:25,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:15:25,399.399 INFO    ] No camera update needed
[2026-06-19 23:15:25,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:15:25,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:15:25,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:15:25,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:15:27,455.455 INFO    ] ================================================
[2026-06-19 23:15:27,470.470 INFO    ] Launching Daemon at Fri Jun 19 23:15:27 IST 2026
[2026-06-19 23:15:27,481.481 INFO    ] ================================================
[2026-06-19 23:15:28,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:15:28
[2026-06-19 23:15:28,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:15:29,106.106 INFO    ] Initializing speech engine...
[2026-06-19 23:15:29,118.118 INFO    ] 2026-06-19 23:15:29
[2026-06-19 23:15:29,393.393 INFO    ] 2026-06-19 23:15:29
[2026-06-19 23:15:29,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:15:29,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:15:29,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:15:29,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:15:29,876.876 INFO    ] time= 19/06/2026 23:15:29
[2026-06-19 23:15:29,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:15:29,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:15:30,036.036 INFO    ] No existing commands found in stream
[2026-06-19 23:15:35,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:15:35,059.059 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 23:15:35,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:15:35,774.774 INFO    ] Checking for system updates...
[2026-06-19 23:15:35,811.811 INFO    ] 200
[2026-06-19 23:15:35,814.814 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:35,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:15:35,879.879 INFO    ] No update needed
[2026-06-19 23:15:35,882.882 INFO    ] Checking for camera pi updates...
[2026-06-19 23:15:35,917.917 INFO    ] 200
[2026-06-19 23:15:35,920.920 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:35,966.966 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:15:36,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:15:36,112.112 INFO    ] No camera update needed
[2026-06-19 23:15:36,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:15:36,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:15:36,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:15:36,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:15:38,171.171 INFO    ] ================================================
[2026-06-19 23:15:38,187.187 INFO    ] Launching Daemon at Fri Jun 19 23:15:38 IST 2026
[2026-06-19 23:15:38,197.197 INFO    ] ================================================
[2026-06-19 23:15:38,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:15:38
[2026-06-19 23:15:39,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:15:39,637.637 INFO    ] Initializing speech engine...
[2026-06-19 23:15:39,646.646 INFO    ] 2026-06-19 23:15:39
[2026-06-19 23:15:39,897.897 INFO    ] 2026-06-19 23:15:39
[2026-06-19 23:15:39,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:15:40,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:15:40,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:15:40,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:15:40,276.276 INFO    ] time= 19/06/2026 23:15:40
[2026-06-19 23:15:40,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:15:40,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:15:40,455.455 INFO    ] No existing commands found in stream
[2026-06-19 23:15:45,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:15:45,483.483 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-19 23:15:49,052.052 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:15:49,055.055 INFO    ] Checking for system updates...
[2026-06-19 23:15:49,093.093 INFO    ] 200
[2026-06-19 23:15:49,096.096 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:49,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:15:49,161.161 INFO    ] No update needed
[2026-06-19 23:15:49,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 23:15:49,203.203 INFO    ] 200
[2026-06-19 23:15:49,206.206 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:49,249.249 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:15:49,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:15:49,285.285 INFO    ] No camera update needed
[2026-06-19 23:15:49,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:15:49,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:15:49,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:15:49,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:15:51,345.345 INFO    ] ================================================
[2026-06-19 23:15:51,361.361 INFO    ] Launching Daemon at Fri Jun 19 23:15:51 IST 2026
[2026-06-19 23:15:51,372.372 INFO    ] ================================================
[2026-06-19 23:15:51,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:15:51
[2026-06-19 23:15:52,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:15:52,776.776 INFO    ] Initializing speech engine...
[2026-06-19 23:15:52,801.801 INFO    ] 2026-06-19 23:15:52
[2026-06-19 23:15:53,058.058 INFO    ] 2026-06-19 23:15:53
[2026-06-19 23:15:53,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:15:53,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:15:53,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:15:53,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:15:53,532.532 INFO    ] time= 19/06/2026 23:15:53
[2026-06-19 23:15:53,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:15:53,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:15:53,690.690 INFO    ] No existing commands found in stream
[2026-06-19 23:15:58,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:15:58,716.716 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-19 23:15:59,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:15:59,658.658 INFO    ] Checking for system updates...
[2026-06-19 23:15:59,695.695 INFO    ] 200
[2026-06-19 23:15:59,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:59,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:15:59,759.759 INFO    ] No update needed
[2026-06-19 23:15:59,762.762 INFO    ] Checking for camera pi updates...
[2026-06-19 23:15:59,795.795 INFO    ] 200
[2026-06-19 23:15:59,798.798 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:15:59,839.839 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:15:59,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:15:59,886.886 INFO    ] No camera update needed
[2026-06-19 23:15:59,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:15:59,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:15:59,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:15:59,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:16:01,972.972 INFO    ] ================================================
[2026-06-19 23:16:02,005.005 INFO    ] Launching Daemon at Fri Jun 19 23:16:01 IST 2026
[2026-06-19 23:16:02,033.033 INFO    ] ================================================
[2026-06-19 23:16:02,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:16:02
[2026-06-19 23:16:03,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:16:03,707.707 INFO    ] Initializing speech engine...
[2026-06-19 23:16:03,717.717 INFO    ] 2026-06-19 23:16:03
[2026-06-19 23:16:04,002.002 INFO    ] 2026-06-19 23:16:03
[2026-06-19 23:16:04,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:16:04,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:16:04,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:16:04,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:16:04,376.376 INFO    ] time= 19/06/2026 23:16:04
[2026-06-19 23:16:04,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:16:04,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:16:04,543.543 INFO    ] No existing commands found in stream
[2026-06-19 23:16:09,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:16:09,577.577 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-19 23:16:13,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:16:13,315.315 INFO    ] Checking for system updates...
[2026-06-19 23:16:13,351.351 INFO    ] 200
[2026-06-19 23:16:13,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:16:13,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:16:13,417.417 INFO    ] No update needed
[2026-06-19 23:16:13,419.419 INFO    ] Checking for camera pi updates...
[2026-06-19 23:16:13,453.453 INFO    ] 200
[2026-06-19 23:16:13,456.456 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:16:13,501.501 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:16:13,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:16:13,551.551 INFO    ] No camera update needed
[2026-06-19 23:16:13,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:16:13,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:16:13,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:16:13,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:16:15,609.609 INFO    ] ================================================
[2026-06-19 23:16:15,625.625 INFO    ] Launching Daemon at Fri Jun 19 23:16:15 IST 2026
[2026-06-19 23:16:15,636.636 INFO    ] ================================================
[2026-06-19 23:16:16,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:16:16
[2026-06-19 23:16:16,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:16:17,249.249 INFO    ] Initializing speech engine...
[2026-06-19 23:16:17,260.260 INFO    ] 2026-06-19 23:16:17
[2026-06-19 23:16:17,579.579 INFO    ] 2026-06-19 23:16:17
[2026-06-19 23:16:17,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:16:17,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:16:17,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:16:18,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:16:18,036.036 INFO    ] time= 19/06/2026 23:16:18
[2026-06-19 23:16:18,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:16:18,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:16:18,222.222 INFO    ] No existing commands found in stream
[2026-06-19 23:16:23,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:16:23,237.237 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-19 23:16:27,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:16:27,119.119 INFO    ] Checking for system updates...
[2026-06-19 23:16:27,155.155 INFO    ] 200
[2026-06-19 23:16:27,158.158 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:16:27,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:16:27,218.218 INFO    ] No update needed
[2026-06-19 23:16:27,221.221 INFO    ] Checking for camera pi updates...
[2026-06-19 23:16:27,256.256 INFO    ] 200
[2026-06-19 23:16:27,258.258 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:16:27,298.298 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:16:27,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:16:27,347.347 INFO    ] No camera update needed
[2026-06-19 23:16:27,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:16:27,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:16:27,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:16:27,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:16:29,407.407 INFO    ] ================================================
[2026-06-19 23:16:29,422.422 INFO    ] Launching Daemon at Fri Jun 19 23:16:29 IST 2026
[2026-06-19 23:16:29,433.433 INFO    ] ================================================
[2026-06-19 23:16:30,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:16:30
[2026-06-19 23:16:30,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:16:30,964.964 INFO    ] Initializing speech engine...
[2026-06-19 23:16:30,975.975 INFO    ] 2026-06-19 23:16:30
[2026-06-19 23:16:31,261.261 INFO    ] 2026-06-19 23:16:31
[2026-06-19 23:16:31,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:16:31,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:16:31,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:16:31,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:16:31,713.713 INFO    ] time= 19/06/2026 23:16:31
[2026-06-19 23:16:31,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:16:31,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:16:31,865.865 INFO    ] No existing commands found in stream
[2026-06-19 23:16:36,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:16:36,891.891 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-19 23:16:39,516.516 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:16:39,519.519 INFO    ] Checking for system updates...
[2026-06-19 23:16:39,557.557 INFO    ] 200
[2026-06-19 23:16:39,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:16:39,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:16:39,628.628 INFO    ] No update needed
[2026-06-19 23:16:39,631.631 INFO    ] Checking for camera pi updates...
[2026-06-19 23:16:39,666.666 INFO    ] 200
[2026-06-19 23:16:39,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:16:39,712.712 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:16:39,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:16:39,768.768 INFO    ] No camera update needed
[2026-06-19 23:16:39,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:16:39,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:16:39,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:16:39,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:16:41,828.828 INFO    ] ================================================
[2026-06-19 23:16:41,843.843 INFO    ] Launching Daemon at Fri Jun 19 23:16:41 IST 2026
[2026-06-19 23:16:41,854.854 INFO    ] ================================================
[2026-06-19 23:16:42,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:16:42
[2026-06-19 23:16:43,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:16:43,297.297 INFO    ] Initializing speech engine...
[2026-06-19 23:16:43,302.302 INFO    ] 2026-06-19 23:16:43
[2026-06-19 23:16:43,562.562 INFO    ] 2026-06-19 23:16:43
[2026-06-19 23:16:43,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:16:43,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:16:43,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:16:43,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:16:44,017.017 INFO    ] time= 19/06/2026 23:16:43
[2026-06-19 23:16:44,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:16:44,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:16:44,166.166 INFO    ] No existing commands found in stream
[2026-06-19 23:16:49,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:16:49,181.181 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 23:16:50,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:16:50,467.467 INFO    ] Checking for system updates...
[2026-06-19 23:16:50,507.507 INFO    ] 200
[2026-06-19 23:16:50,510.510 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:16:50,564.564 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:16:50,566.566 INFO    ] No update needed
[2026-06-19 23:16:50,569.569 INFO    ] Checking for camera pi updates...
[2026-06-19 23:16:50,603.603 INFO    ] 200
[2026-06-19 23:16:50,606.606 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:16:50,651.651 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:16:50,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:16:50,700.700 INFO    ] No camera update needed
[2026-06-19 23:16:50,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:16:50,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:16:50,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:16:50,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:16:52,756.756 INFO    ] ================================================
[2026-06-19 23:16:52,772.772 INFO    ] Launching Daemon at Fri Jun 19 23:16:52 IST 2026
[2026-06-19 23:16:52,782.782 INFO    ] ================================================
[2026-06-19 23:16:53,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:16:53
[2026-06-19 23:16:54,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:16:54,370.370 INFO    ] Initializing speech engine...
[2026-06-19 23:16:54,378.378 INFO    ] 2026-06-19 23:16:54
[2026-06-19 23:16:54,652.652 INFO    ] 2026-06-19 23:16:54
[2026-06-19 23:16:54,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:16:54,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:16:54,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:16:55,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:16:55,033.033 INFO    ] time= 19/06/2026 23:16:55
[2026-06-19 23:16:55,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:16:55,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:16:55,212.212 INFO    ] No existing commands found in stream
[2026-06-19 23:17:00,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:17:00,240.240 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 23:17:03,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:17:03,337.337 INFO    ] Checking for system updates...
[2026-06-19 23:17:03,392.392 INFO    ] 200
[2026-06-19 23:17:03,395.395 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:03,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:17:03,467.467 INFO    ] No update needed
[2026-06-19 23:17:03,469.469 INFO    ] Checking for camera pi updates...
[2026-06-19 23:17:03,522.522 INFO    ] 200
[2026-06-19 23:17:03,525.525 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:03,585.585 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:17:03,634.634 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:17:03,637.637 INFO    ] No camera update needed
[2026-06-19 23:17:03,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:17:03,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:17:03,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:17:03,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:17:05,703.703 INFO    ] ================================================
[2026-06-19 23:17:05,718.718 INFO    ] Launching Daemon at Fri Jun 19 23:17:05 IST 2026
[2026-06-19 23:17:05,728.728 INFO    ] ================================================
[2026-06-19 23:17:06,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:17:06
[2026-06-19 23:17:06,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:17:07,272.272 INFO    ] Initializing speech engine...
[2026-06-19 23:17:07,279.279 INFO    ] 2026-06-19 23:17:07
[2026-06-19 23:17:07,591.591 INFO    ] 2026-06-19 23:17:07
[2026-06-19 23:17:07,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:17:07,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:17:07,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:17:08,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:17:08,102.102 INFO    ] time= 19/06/2026 23:17:08
[2026-06-19 23:17:08,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:17:08,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:17:08,244.244 INFO    ] No existing commands found in stream
[2026-06-19 23:17:13,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:17:13,272.272 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 23:17:17,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:17:17,065.065 INFO    ] Checking for system updates...
[2026-06-19 23:17:17,102.102 INFO    ] 200
[2026-06-19 23:17:17,105.105 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:17,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:17:17,162.162 INFO    ] No update needed
[2026-06-19 23:17:17,164.164 INFO    ] Checking for camera pi updates...
[2026-06-19 23:17:17,200.200 INFO    ] 200
[2026-06-19 23:17:17,203.203 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:17,248.248 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:17:17,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:17:17,298.298 INFO    ] No camera update needed
[2026-06-19 23:17:17,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:17:17,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:17:17,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:17:17,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:17:19,354.354 INFO    ] ================================================
[2026-06-19 23:17:19,369.369 INFO    ] Launching Daemon at Fri Jun 19 23:17:19 IST 2026
[2026-06-19 23:17:19,379.379 INFO    ] ================================================
[2026-06-19 23:17:19,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:17:19
[2026-06-19 23:17:20,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:17:20,780.780 INFO    ] Initializing speech engine...
[2026-06-19 23:17:20,788.788 INFO    ] 2026-06-19 23:17:20
[2026-06-19 23:17:21,066.066 INFO    ] 2026-06-19 23:17:21
[2026-06-19 23:17:21,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:17:21,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:17:21,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:17:21,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:17:21,447.447 INFO    ] time= 19/06/2026 23:17:21
[2026-06-19 23:17:21,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:17:21,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:17:21,616.616 INFO    ] No existing commands found in stream
[2026-06-19 23:17:26,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:17:26,644.644 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-19 23:17:27,312.312 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:17:27,316.316 INFO    ] Checking for system updates...
[2026-06-19 23:17:27,353.353 INFO    ] 200
[2026-06-19 23:17:27,356.356 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:27,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:17:27,412.412 INFO    ] No update needed
[2026-06-19 23:17:27,414.414 INFO    ] Checking for camera pi updates...
[2026-06-19 23:17:27,452.452 INFO    ] 200
[2026-06-19 23:17:27,455.455 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:27,495.495 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:17:27,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:17:27,541.541 INFO    ] No camera update needed
[2026-06-19 23:17:27,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:17:27,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:17:27,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:17:27,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:17:29,596.596 INFO    ] ================================================
[2026-06-19 23:17:29,611.611 INFO    ] Launching Daemon at Fri Jun 19 23:17:29 IST 2026
[2026-06-19 23:17:29,622.622 INFO    ] ================================================
[2026-06-19 23:17:30,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:17:30
[2026-06-19 23:17:30,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:17:31,031.031 INFO    ] Initializing speech engine...
[2026-06-19 23:17:31,046.046 INFO    ] 2026-06-19 23:17:31
[2026-06-19 23:17:31,301.301 INFO    ] 2026-06-19 23:17:31
[2026-06-19 23:17:31,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:17:31,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:17:31,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:17:31,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:17:31,767.767 INFO    ] time= 19/06/2026 23:17:31
[2026-06-19 23:17:31,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:17:31,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:17:31,914.914 INFO    ] No existing commands found in stream
[2026-06-19 23:17:36,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:17:36,929.929 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-19 23:17:39,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:17:39,600.600 INFO    ] Checking for system updates...
[2026-06-19 23:17:39,638.638 INFO    ] 200
[2026-06-19 23:17:39,640.640 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:39,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:17:39,709.709 INFO    ] No update needed
[2026-06-19 23:17:39,711.711 INFO    ] Checking for camera pi updates...
[2026-06-19 23:17:39,747.747 INFO    ] 200
[2026-06-19 23:17:39,750.750 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:39,798.798 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:17:39,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:17:39,944.944 INFO    ] No camera update needed
[2026-06-19 23:17:39,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:17:39,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:17:39,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:17:39,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:17:42,999.999 INFO    ] ================================================
[2026-06-19 23:17:42,014.014 INFO    ] Launching Daemon at Fri Jun 19 23:17:42 IST 2026
[2026-06-19 23:17:42,026.026 INFO    ] ================================================
[2026-06-19 23:17:42,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:17:42
[2026-06-19 23:17:43,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:17:43,715.715 INFO    ] Initializing speech engine...
[2026-06-19 23:17:43,724.724 INFO    ] 2026-06-19 23:17:43
[2026-06-19 23:17:44,006.006 INFO    ] 2026-06-19 23:17:44
[2026-06-19 23:17:44,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:17:44,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:17:44,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:17:44,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:17:44,463.463 INFO    ] time= 19/06/2026 23:17:44
[2026-06-19 23:17:44,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:17:44,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:17:44,633.633 INFO    ] No existing commands found in stream
[2026-06-19 23:17:49,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:17:49,650.650 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-19 23:17:53,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:17:53,728.728 INFO    ] Checking for system updates...
[2026-06-19 23:17:53,765.765 INFO    ] 200
[2026-06-19 23:17:53,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:53,821.821 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:17:53,823.823 INFO    ] No update needed
[2026-06-19 23:17:53,826.826 INFO    ] Checking for camera pi updates...
[2026-06-19 23:17:53,859.859 INFO    ] 200
[2026-06-19 23:17:53,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:17:53,903.903 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:17:53,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:17:53,958.958 INFO    ] No camera update needed
[2026-06-19 23:17:53,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:17:53,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:17:53,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:17:53,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:17:56,016.016 INFO    ] ================================================
[2026-06-19 23:17:56,030.030 INFO    ] Launching Daemon at Fri Jun 19 23:17:56 IST 2026
[2026-06-19 23:17:56,041.041 INFO    ] ================================================
[2026-06-19 23:17:56,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:17:56
[2026-06-19 23:17:57,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:17:57,449.449 INFO    ] Initializing speech engine...
[2026-06-19 23:17:57,462.462 INFO    ] 2026-06-19 23:17:57
[2026-06-19 23:17:57,729.729 INFO    ] 2026-06-19 23:17:57
[2026-06-19 23:17:57,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:17:57,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:17:57,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:17:58,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:17:58,110.110 INFO    ] time= 19/06/2026 23:17:58
[2026-06-19 23:17:58,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:17:58,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:17:58,275.275 INFO    ] No existing commands found in stream
[2026-06-19 23:18:03,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:18:03,302.302 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 23:18:07,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:18:07,274.274 INFO    ] Checking for system updates...
[2026-06-19 23:18:07,311.311 INFO    ] 200
[2026-06-19 23:18:07,313.313 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:07,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:18:07,376.376 INFO    ] No update needed
[2026-06-19 23:18:07,378.378 INFO    ] Checking for camera pi updates...
[2026-06-19 23:18:07,413.413 INFO    ] 200
[2026-06-19 23:18:07,415.415 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:07,460.460 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:18:07,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:18:07,510.510 INFO    ] No camera update needed
[2026-06-19 23:18:07,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:18:07,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:18:07,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:18:07,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:18:09,565.565 INFO    ] ================================================
[2026-06-19 23:18:09,579.579 INFO    ] Launching Daemon at Fri Jun 19 23:18:09 IST 2026
[2026-06-19 23:18:09,590.590 INFO    ] ================================================
[2026-06-19 23:18:10,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:18:10
[2026-06-19 23:18:10,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:18:10,997.997 INFO    ] Initializing speech engine...
[2026-06-19 23:18:11,006.006 INFO    ] 2026-06-19 23:18:11
[2026-06-19 23:18:11,291.291 INFO    ] 2026-06-19 23:18:11
[2026-06-19 23:18:11,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:18:11,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:18:11,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:18:11,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:18:11,678.678 INFO    ] time= 19/06/2026 23:18:11
[2026-06-19 23:18:11,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:18:11,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:18:11,865.865 INFO    ] No existing commands found in stream
[2026-06-19 23:18:16,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:18:16,888.888 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 23:18:20,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:18:20,396.396 INFO    ] Checking for system updates...
[2026-06-19 23:18:20,434.434 INFO    ] 200
[2026-06-19 23:18:20,437.437 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:20,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:18:20,492.492 INFO    ] No update needed
[2026-06-19 23:18:20,494.494 INFO    ] Checking for camera pi updates...
[2026-06-19 23:18:20,530.530 INFO    ] 200
[2026-06-19 23:18:20,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:20,575.575 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:18:20,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:18:20,630.630 INFO    ] No camera update needed
[2026-06-19 23:18:20,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:18:20,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:18:20,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:18:20,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:18:22,686.686 INFO    ] ================================================
[2026-06-19 23:18:22,701.701 INFO    ] Launching Daemon at Fri Jun 19 23:18:22 IST 2026
[2026-06-19 23:18:22,712.712 INFO    ] ================================================
[2026-06-19 23:18:23,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:18:23
[2026-06-19 23:18:23,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:18:24,267.267 INFO    ] Initializing speech engine...
[2026-06-19 23:18:24,276.276 INFO    ] 2026-06-19 23:18:24
[2026-06-19 23:18:24,556.556 INFO    ] 2026-06-19 23:18:24
[2026-06-19 23:18:24,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:18:24,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:18:24,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:18:24,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:18:25,024.024 INFO    ] time= 19/06/2026 23:18:24
[2026-06-19 23:18:25,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:18:25,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:18:25,152.152 INFO    ] No existing commands found in stream
[2026-06-19 23:18:30,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:18:30,168.168 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 23:18:33,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:18:33,699.699 INFO    ] Checking for system updates...
[2026-06-19 23:18:33,736.736 INFO    ] 200
[2026-06-19 23:18:33,738.738 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:33,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:18:33,794.794 INFO    ] No update needed
[2026-06-19 23:18:33,797.797 INFO    ] Checking for camera pi updates...
[2026-06-19 23:18:33,832.832 INFO    ] 200
[2026-06-19 23:18:33,835.835 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:33,883.883 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:18:33,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:18:33,933.933 INFO    ] No camera update needed
[2026-06-19 23:18:33,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:18:33,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:18:33,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:18:33,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:18:35,988.988 INFO    ] ================================================
[2026-06-19 23:18:36,004.004 INFO    ] Launching Daemon at Fri Jun 19 23:18:35 IST 2026
[2026-06-19 23:18:36,014.014 INFO    ] ================================================
[2026-06-19 23:18:36,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:18:36
[2026-06-19 23:18:37,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:18:37,434.434 INFO    ] Initializing speech engine...
[2026-06-19 23:18:37,442.442 INFO    ] 2026-06-19 23:18:37
[2026-06-19 23:18:37,690.690 INFO    ] 2026-06-19 23:18:37
[2026-06-19 23:18:37,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:18:37,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:18:37,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:18:38,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:18:38,058.058 INFO    ] time= 19/06/2026 23:18:38
[2026-06-19 23:18:38,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:18:38,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:18:38,222.222 INFO    ] No existing commands found in stream
[2026-06-19 23:18:43,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:18:43,250.250 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-19 23:18:46,009.009 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:18:46,012.012 INFO    ] Checking for system updates...
[2026-06-19 23:18:46,052.052 INFO    ] 200
[2026-06-19 23:18:46,054.054 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:46,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:18:46,109.109 INFO    ] No update needed
[2026-06-19 23:18:46,112.112 INFO    ] Checking for camera pi updates...
[2026-06-19 23:18:46,148.148 INFO    ] 200
[2026-06-19 23:18:46,151.151 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:46,191.191 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:18:46,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:18:46,238.238 INFO    ] No camera update needed
[2026-06-19 23:18:46,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:18:46,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:18:46,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:18:46,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:18:48,296.296 INFO    ] ================================================
[2026-06-19 23:18:48,311.311 INFO    ] Launching Daemon at Fri Jun 19 23:18:48 IST 2026
[2026-06-19 23:18:48,322.322 INFO    ] ================================================
[2026-06-19 23:18:48,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:18:48
[2026-06-19 23:18:49,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:18:49,759.759 INFO    ] Initializing speech engine...
[2026-06-19 23:18:49,765.765 INFO    ] 2026-06-19 23:18:49
[2026-06-19 23:18:50,026.026 INFO    ] 2026-06-19 23:18:50
[2026-06-19 23:18:50,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:18:50,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:18:50,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:18:50,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:18:50,498.498 INFO    ] time= 19/06/2026 23:18:50
[2026-06-19 23:18:50,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:18:50,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:18:50,644.644 INFO    ] No existing commands found in stream
[2026-06-19 23:18:55,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:18:55,662.662 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-19 23:18:57,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:18:57,899.899 INFO    ] Checking for system updates...
[2026-06-19 23:18:57,942.942 INFO    ] 200
[2026-06-19 23:18:57,945.945 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:57,998.998 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:18:58,001.001 INFO    ] No update needed
[2026-06-19 23:18:58,003.003 INFO    ] Checking for camera pi updates...
[2026-06-19 23:18:58,037.037 INFO    ] 200
[2026-06-19 23:18:58,039.039 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:18:58,080.080 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:18:58,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:18:58,130.130 INFO    ] No camera update needed
[2026-06-19 23:18:58,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:18:58,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:18:58,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:18:58,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:19:00,186.186 INFO    ] ================================================
[2026-06-19 23:19:00,202.202 INFO    ] Launching Daemon at Fri Jun 19 23:19:00 IST 2026
[2026-06-19 23:19:00,212.212 INFO    ] ================================================
[2026-06-19 23:19:00,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:19:00
[2026-06-19 23:19:01,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:19:01,637.637 INFO    ] Initializing speech engine...
[2026-06-19 23:19:01,646.646 INFO    ] 2026-06-19 23:19:01
[2026-06-19 23:19:01,960.960 INFO    ] 2026-06-19 23:19:01
[2026-06-19 23:19:02,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:19:02,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:19:02,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:19:02,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:19:02,447.447 INFO    ] time= 19/06/2026 23:19:02
[2026-06-19 23:19:02,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:19:02,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:19:02,549.549 INFO    ] No existing commands found in stream
[2026-06-19 23:19:07,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:19:07,569.569 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-19 23:19:11,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:19:11,179.179 INFO    ] Checking for system updates...
[2026-06-19 23:19:11,222.222 INFO    ] 200
[2026-06-19 23:19:11,225.225 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:11,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:19:11,287.287 INFO    ] No update needed
[2026-06-19 23:19:11,290.290 INFO    ] Checking for camera pi updates...
[2026-06-19 23:19:11,329.329 INFO    ] 200
[2026-06-19 23:19:11,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:11,378.378 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:19:11,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:19:11,439.439 INFO    ] No camera update needed
[2026-06-19 23:19:11,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:19:11,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:19:11,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:19:11,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:19:13,497.497 INFO    ] ================================================
[2026-06-19 23:19:13,512.512 INFO    ] Launching Daemon at Fri Jun 19 23:19:13 IST 2026
[2026-06-19 23:19:13,522.522 INFO    ] ================================================
[2026-06-19 23:19:14,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:19:14
[2026-06-19 23:19:14,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:19:15,162.162 INFO    ] Initializing speech engine...
[2026-06-19 23:19:15,173.173 INFO    ] 2026-06-19 23:19:15
[2026-06-19 23:19:15,459.459 INFO    ] 2026-06-19 23:19:15
[2026-06-19 23:19:15,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:19:15,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:19:15,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:19:15,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:19:15,993.993 INFO    ] time= 19/06/2026 23:19:15
[2026-06-19 23:19:16,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:19:16,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:19:16,144.144 INFO    ] No existing commands found in stream
[2026-06-19 23:19:21,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:19:21,162.162 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-19 23:19:23,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:19:23,070.070 INFO    ] Checking for system updates...
[2026-06-19 23:19:23,113.113 INFO    ] 200
[2026-06-19 23:19:23,115.115 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:23,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:19:23,183.183 INFO    ] No update needed
[2026-06-19 23:19:23,186.186 INFO    ] Checking for camera pi updates...
[2026-06-19 23:19:23,228.228 INFO    ] 200
[2026-06-19 23:19:23,231.231 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:23,282.282 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:19:23,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:19:23,328.328 INFO    ] No camera update needed
[2026-06-19 23:19:23,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:19:23,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:19:23,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:19:23,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:19:25,385.385 INFO    ] ================================================
[2026-06-19 23:19:25,401.401 INFO    ] Launching Daemon at Fri Jun 19 23:19:25 IST 2026
[2026-06-19 23:19:25,412.412 INFO    ] ================================================
[2026-06-19 23:19:26,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:19:26
[2026-06-19 23:19:26,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:19:27,025.025 INFO    ] Initializing speech engine...
[2026-06-19 23:19:27,035.035 INFO    ] 2026-06-19 23:19:27
[2026-06-19 23:19:27,305.305 INFO    ] 2026-06-19 23:19:27
[2026-06-19 23:19:27,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:19:27,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:19:27,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:19:27,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:19:27,807.807 INFO    ] time= 19/06/2026 23:19:27
[2026-06-19 23:19:27,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:19:27,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:19:27,996.996 INFO    ] No existing commands found in stream
[2026-06-19 23:19:33,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:19:33,026.026 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 23:19:35,583.583 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:19:35,586.586 INFO    ] Checking for system updates...
[2026-06-19 23:19:35,623.623 INFO    ] 200
[2026-06-19 23:19:35,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:35,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:19:35,682.682 INFO    ] No update needed
[2026-06-19 23:19:35,685.685 INFO    ] Checking for camera pi updates...
[2026-06-19 23:19:35,719.719 INFO    ] 200
[2026-06-19 23:19:35,722.722 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:35,764.764 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:19:35,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:19:35,813.813 INFO    ] No camera update needed
[2026-06-19 23:19:35,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:19:35,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:19:35,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:19:35,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:19:37,872.872 INFO    ] ================================================
[2026-06-19 23:19:37,886.886 INFO    ] Launching Daemon at Fri Jun 19 23:19:37 IST 2026
[2026-06-19 23:19:37,897.897 INFO    ] ================================================
[2026-06-19 23:19:38,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:19:38
[2026-06-19 23:19:39,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:19:39,327.327 INFO    ] Initializing speech engine...
[2026-06-19 23:19:39,342.342 INFO    ] 2026-06-19 23:19:39
[2026-06-19 23:19:39,613.613 INFO    ] 2026-06-19 23:19:39
[2026-06-19 23:19:39,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:19:39,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:19:39,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:19:39,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:19:39,991.991 INFO    ] time= 19/06/2026 23:19:39
[2026-06-19 23:19:40,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:19:40,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:19:40,115.115 INFO    ] No existing commands found in stream
[2026-06-19 23:19:45,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:19:45,130.130 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-19 23:19:45,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:19:45,527.527 INFO    ] Checking for system updates...
[2026-06-19 23:19:45,566.566 INFO    ] 200
[2026-06-19 23:19:45,569.569 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:45,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:19:45,629.629 INFO    ] No update needed
[2026-06-19 23:19:45,632.632 INFO    ] Checking for camera pi updates...
[2026-06-19 23:19:45,666.666 INFO    ] 200
[2026-06-19 23:19:45,669.669 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:45,713.713 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:19:45,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:19:45,861.861 INFO    ] No camera update needed
[2026-06-19 23:19:45,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:19:45,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:19:45,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:19:45,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:19:47,916.916 INFO    ] ================================================
[2026-06-19 23:19:47,931.931 INFO    ] Launching Daemon at Fri Jun 19 23:19:47 IST 2026
[2026-06-19 23:19:47,942.942 INFO    ] ================================================
[2026-06-19 23:19:48,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:19:48
[2026-06-19 23:19:49,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:19:49,349.349 INFO    ] Initializing speech engine...
[2026-06-19 23:19:49,363.363 INFO    ] 2026-06-19 23:19:49
[2026-06-19 23:19:49,644.644 INFO    ] 2026-06-19 23:19:49
[2026-06-19 23:19:49,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:19:49,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:19:49,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:19:50,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:19:50,020.020 INFO    ] time= 19/06/2026 23:19:50
[2026-06-19 23:19:50,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:19:50,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:19:50,143.143 INFO    ] No existing commands found in stream
[2026-06-19 23:19:55,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:19:55,158.158 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-19 23:19:56,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:19:56,905.905 INFO    ] Checking for system updates...
[2026-06-19 23:19:56,944.944 INFO    ] 200
[2026-06-19 23:19:56,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:57,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:19:57,002.002 INFO    ] No update needed
[2026-06-19 23:19:57,004.004 INFO    ] Checking for camera pi updates...
[2026-06-19 23:19:57,038.038 INFO    ] 200
[2026-06-19 23:19:57,040.040 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:19:57,085.085 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:19:57,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:19:57,130.130 INFO    ] No camera update needed
[2026-06-19 23:19:57,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:19:57,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:19:57,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:19:57,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:19:59,187.187 INFO    ] ================================================
[2026-06-19 23:19:59,202.202 INFO    ] Launching Daemon at Fri Jun 19 23:19:59 IST 2026
[2026-06-19 23:19:59,213.213 INFO    ] ================================================
[2026-06-19 23:19:59,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:19:59
[2026-06-19 23:20:00,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:20:00,779.779 INFO    ] Initializing speech engine...
[2026-06-19 23:20:00,790.790 INFO    ] 2026-06-19 23:20:00
[2026-06-19 23:20:01,045.045 INFO    ] 2026-06-19 23:20:01
[2026-06-19 23:20:01,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:20:01,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:20:01,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:20:01,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:20:01,512.512 INFO    ] time= 19/06/2026 23:20:01
[2026-06-19 23:20:01,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:20:01,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:20:01,661.661 INFO    ] No existing commands found in stream
[2026-06-19 23:20:06,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:20:06,676.676 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 23:20:09,555.555 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:20:09,558.558 INFO    ] Checking for system updates...
[2026-06-19 23:20:09,594.594 INFO    ] 200
[2026-06-19 23:20:09,597.597 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:09,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:20:09,659.659 INFO    ] No update needed
[2026-06-19 23:20:09,661.661 INFO    ] Checking for camera pi updates...
[2026-06-19 23:20:09,699.699 INFO    ] 200
[2026-06-19 23:20:09,701.701 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:09,747.747 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:20:09,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:20:09,793.793 INFO    ] No camera update needed
[2026-06-19 23:20:09,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:20:09,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:20:09,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:20:09,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:20:11,849.849 INFO    ] ================================================
[2026-06-19 23:20:11,864.864 INFO    ] Launching Daemon at Fri Jun 19 23:20:11 IST 2026
[2026-06-19 23:20:11,875.875 INFO    ] ================================================
[2026-06-19 23:20:12,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:20:12
[2026-06-19 23:20:13,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:20:13,299.299 INFO    ] Initializing speech engine...
[2026-06-19 23:20:13,305.305 INFO    ] 2026-06-19 23:20:13
[2026-06-19 23:20:13,608.608 INFO    ] 2026-06-19 23:20:13
[2026-06-19 23:20:13,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:20:13,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:20:13,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:20:13,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:20:13,986.986 INFO    ] time= 19/06/2026 23:20:13
[2026-06-19 23:20:13,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:20:14,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:20:14,113.113 INFO    ] No existing commands found in stream
[2026-06-19 23:20:19,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:20:19,129.129 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-19 23:20:20,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:20:20,760.760 INFO    ] Checking for system updates...
[2026-06-19 23:20:20,800.800 INFO    ] 200
[2026-06-19 23:20:20,803.803 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:20,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:20:20,858.858 INFO    ] No update needed
[2026-06-19 23:20:20,860.860 INFO    ] Checking for camera pi updates...
[2026-06-19 23:20:20,901.901 INFO    ] 200
[2026-06-19 23:20:20,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:20,944.944 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:20:20,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:20:20,999.999 INFO    ] No camera update needed
[2026-06-19 23:20:21,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:20:21,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:20:21,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:20:21,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:20:23,055.055 INFO    ] ================================================
[2026-06-19 23:20:23,070.070 INFO    ] Launching Daemon at Fri Jun 19 23:20:23 IST 2026
[2026-06-19 23:20:23,081.081 INFO    ] ================================================
[2026-06-19 23:20:23,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:20:23
[2026-06-19 23:20:24,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:20:24,533.533 INFO    ] Initializing speech engine...
[2026-06-19 23:20:24,542.542 INFO    ] 2026-06-19 23:20:24
[2026-06-19 23:20:24,800.800 INFO    ] 2026-06-19 23:20:24
[2026-06-19 23:20:24,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:20:25,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:20:25,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:20:25,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:20:25,228.228 INFO    ] time= 19/06/2026 23:20:25
[2026-06-19 23:20:25,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:20:25,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:20:25,408.408 INFO    ] No existing commands found in stream
[2026-06-19 23:20:30,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:20:30,423.423 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 23:20:33,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:20:33,931.931 INFO    ] Checking for system updates...
[2026-06-19 23:20:33,967.967 INFO    ] 200
[2026-06-19 23:20:33,969.969 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:34,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:20:34,025.025 INFO    ] No update needed
[2026-06-19 23:20:34,027.027 INFO    ] Checking for camera pi updates...
[2026-06-19 23:20:34,062.062 INFO    ] 200
[2026-06-19 23:20:34,064.064 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:34,106.106 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:20:34,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:20:34,156.156 INFO    ] No camera update needed
[2026-06-19 23:20:34,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:20:34,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:20:34,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:20:34,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:20:36,219.219 INFO    ] ================================================
[2026-06-19 23:20:36,234.234 INFO    ] Launching Daemon at Fri Jun 19 23:20:36 IST 2026
[2026-06-19 23:20:36,245.245 INFO    ] ================================================
[2026-06-19 23:20:36,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:20:36
[2026-06-19 23:20:37,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:20:37,670.670 INFO    ] Initializing speech engine...
[2026-06-19 23:20:37,679.679 INFO    ] 2026-06-19 23:20:37
[2026-06-19 23:20:37,927.927 INFO    ] 2026-06-19 23:20:37
[2026-06-19 23:20:37,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:20:38,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:20:38,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:20:38,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:20:38,261.261 INFO    ] time= 19/06/2026 23:20:38
[2026-06-19 23:20:38,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:20:38,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:20:38,370.370 INFO    ] No existing commands found in stream
[2026-06-19 23:20:43,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:20:43,385.385 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 23:20:46,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:20:46,437.437 INFO    ] Checking for system updates...
[2026-06-19 23:20:46,476.476 INFO    ] 200
[2026-06-19 23:20:46,479.479 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:46,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:20:46,539.539 INFO    ] No update needed
[2026-06-19 23:20:46,541.541 INFO    ] Checking for camera pi updates...
[2026-06-19 23:20:46,578.578 INFO    ] 200
[2026-06-19 23:20:46,581.581 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:46,621.621 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:20:46,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:20:46,669.669 INFO    ] No camera update needed
[2026-06-19 23:20:46,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:20:46,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:20:46,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:20:46,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:20:48,726.726 INFO    ] ================================================
[2026-06-19 23:20:48,741.741 INFO    ] Launching Daemon at Fri Jun 19 23:20:48 IST 2026
[2026-06-19 23:20:48,752.752 INFO    ] ================================================
[2026-06-19 23:20:49,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:20:49
[2026-06-19 23:20:50,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:20:50,376.376 INFO    ] Initializing speech engine...
[2026-06-19 23:20:50,387.387 INFO    ] 2026-06-19 23:20:50
[2026-06-19 23:20:50,651.651 INFO    ] 2026-06-19 23:20:50
[2026-06-19 23:20:50,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:20:50,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:20:50,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:20:51,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:20:51,020.020 INFO    ] time= 19/06/2026 23:20:51
[2026-06-19 23:20:51,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:20:51,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:20:51,198.198 INFO    ] No existing commands found in stream
[2026-06-19 23:20:56,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:20:56,227.227 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-19 23:20:58,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:20:58,801.801 INFO    ] Checking for system updates...
[2026-06-19 23:20:58,841.841 INFO    ] 200
[2026-06-19 23:20:58,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:58,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:20:58,904.904 INFO    ] No update needed
[2026-06-19 23:20:58,907.907 INFO    ] Checking for camera pi updates...
[2026-06-19 23:20:58,947.947 INFO    ] 200
[2026-06-19 23:20:58,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:20:59,000.000 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:20:59,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:20:59,053.053 INFO    ] No camera update needed
[2026-06-19 23:20:59,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:20:59,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:20:59,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:20:59,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:21:01,117.117 INFO    ] ================================================
[2026-06-19 23:21:01,132.132 INFO    ] Launching Daemon at Fri Jun 19 23:21:01 IST 2026
[2026-06-19 23:21:01,142.142 INFO    ] ================================================
[2026-06-19 23:21:01,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:21:01
[2026-06-19 23:21:02,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:21:03,020.020 INFO    ] Initializing speech engine...
[2026-06-19 23:21:03,037.037 INFO    ] 2026-06-19 23:21:03
[2026-06-19 23:21:03,306.306 INFO    ] 2026-06-19 23:21:03
[2026-06-19 23:21:03,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:21:03,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:21:03,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:21:03,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:21:03,830.830 INFO    ] time= 19/06/2026 23:21:03
[2026-06-19 23:21:03,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:21:03,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:21:03,996.996 INFO    ] No existing commands found in stream
[2026-06-19 23:21:09,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:21:09,011.011 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-19 23:21:13,251.251 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:21:13,254.254 INFO    ] Checking for system updates...
[2026-06-19 23:21:13,290.290 INFO    ] 200
[2026-06-19 23:21:13,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:13,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:21:13,349.349 INFO    ] No update needed
[2026-06-19 23:21:13,352.352 INFO    ] Checking for camera pi updates...
[2026-06-19 23:21:13,389.389 INFO    ] 200
[2026-06-19 23:21:13,392.392 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:13,437.437 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:21:13,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:21:13,485.485 INFO    ] No camera update needed
[2026-06-19 23:21:13,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:21:13,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:21:13,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:21:13,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:21:15,541.541 INFO    ] ================================================
[2026-06-19 23:21:15,556.556 INFO    ] Launching Daemon at Fri Jun 19 23:21:15 IST 2026
[2026-06-19 23:21:15,567.567 INFO    ] ================================================
[2026-06-19 23:21:16,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:21:16
[2026-06-19 23:21:16,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:21:17,000.000 INFO    ] Initializing speech engine...
[2026-06-19 23:21:17,006.006 INFO    ] 2026-06-19 23:21:17
[2026-06-19 23:21:17,274.274 INFO    ] 2026-06-19 23:21:17
[2026-06-19 23:21:17,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:21:17,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:21:17,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:21:17,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:21:17,752.752 INFO    ] time= 19/06/2026 23:21:17
[2026-06-19 23:21:17,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:21:17,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:21:17,930.930 INFO    ] No existing commands found in stream
[2026-06-19 23:21:22,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:21:22,957.957 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-19 23:21:23,635.635 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:21:23,638.638 INFO    ] Checking for system updates...
[2026-06-19 23:21:23,674.674 INFO    ] 200
[2026-06-19 23:21:23,677.677 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:23,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:21:23,739.739 INFO    ] No update needed
[2026-06-19 23:21:23,742.742 INFO    ] Checking for camera pi updates...
[2026-06-19 23:21:23,776.776 INFO    ] 200
[2026-06-19 23:21:23,779.779 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:23,825.825 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:21:23,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:21:23,872.872 INFO    ] No camera update needed
[2026-06-19 23:21:23,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:21:23,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:21:23,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:21:23,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:21:25,930.930 INFO    ] ================================================
[2026-06-19 23:21:25,945.945 INFO    ] Launching Daemon at Fri Jun 19 23:21:25 IST 2026
[2026-06-19 23:21:25,955.955 INFO    ] ================================================
[2026-06-19 23:21:26,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:21:26
[2026-06-19 23:21:27,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:21:27,388.388 INFO    ] Initializing speech engine...
[2026-06-19 23:21:27,402.402 INFO    ] 2026-06-19 23:21:27
[2026-06-19 23:21:27,664.664 INFO    ] 2026-06-19 23:21:27
[2026-06-19 23:21:27,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:21:27,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:21:27,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:21:28,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:21:28,115.115 INFO    ] time= 19/06/2026 23:21:28
[2026-06-19 23:21:28,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:21:28,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:21:28,281.281 INFO    ] No existing commands found in stream
[2026-06-19 23:21:33,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:21:33,297.297 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-19 23:21:35,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:21:35,767.767 INFO    ] Checking for system updates...
[2026-06-19 23:21:35,803.803 INFO    ] 200
[2026-06-19 23:21:35,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:35,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:21:35,870.870 INFO    ] No update needed
[2026-06-19 23:21:35,873.873 INFO    ] Checking for camera pi updates...
[2026-06-19 23:21:35,908.908 INFO    ] 200
[2026-06-19 23:21:35,910.910 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:35,952.952 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:21:35,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:21:36,001.001 INFO    ] No camera update needed
[2026-06-19 23:21:36,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:21:36,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:21:36,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:21:36,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:21:38,061.061 INFO    ] ================================================
[2026-06-19 23:21:38,077.077 INFO    ] Launching Daemon at Fri Jun 19 23:21:38 IST 2026
[2026-06-19 23:21:38,088.088 INFO    ] ================================================
[2026-06-19 23:21:38,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:21:38
[2026-06-19 23:21:39,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:21:39,730.730 INFO    ] Initializing speech engine...
[2026-06-19 23:21:39,741.741 INFO    ] 2026-06-19 23:21:39
[2026-06-19 23:21:40,053.053 INFO    ] 2026-06-19 23:21:40
[2026-06-19 23:21:40,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:21:40,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:21:40,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:21:40,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:21:40,567.567 INFO    ] time= 19/06/2026 23:21:40
[2026-06-19 23:21:40,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:21:40,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:21:40,718.718 INFO    ] No existing commands found in stream
[2026-06-19 23:21:45,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:21:45,738.738 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 23:21:48,107.107 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:21:48,111.111 INFO    ] Checking for system updates...
[2026-06-19 23:21:48,150.150 INFO    ] 200
[2026-06-19 23:21:48,153.153 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:48,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:21:48,213.213 INFO    ] No update needed
[2026-06-19 23:21:48,216.216 INFO    ] Checking for camera pi updates...
[2026-06-19 23:21:48,254.254 INFO    ] 200
[2026-06-19 23:21:48,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:48,307.307 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:21:48,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:21:48,443.443 INFO    ] No camera update needed
[2026-06-19 23:21:48,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:21:48,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:21:48,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:21:48,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:21:50,502.502 INFO    ] ================================================
[2026-06-19 23:21:50,519.519 INFO    ] Launching Daemon at Fri Jun 19 23:21:50 IST 2026
[2026-06-19 23:21:50,534.534 INFO    ] ================================================
[2026-06-19 23:21:51,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:21:51
[2026-06-19 23:21:51,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:21:52,171.171 INFO    ] Initializing speech engine...
[2026-06-19 23:21:52,180.180 INFO    ] 2026-06-19 23:21:52
[2026-06-19 23:21:52,450.450 INFO    ] 2026-06-19 23:21:52
[2026-06-19 23:21:52,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:21:52,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:21:52,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:21:52,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:21:52,896.896 INFO    ] time= 19/06/2026 23:21:52
[2026-06-19 23:21:52,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:21:52,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:21:53,052.052 INFO    ] No existing commands found in stream
[2026-06-19 23:21:58,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:21:58,071.071 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-19 23:21:58,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:21:58,787.787 INFO    ] Checking for system updates...
[2026-06-19 23:21:58,824.824 INFO    ] 200
[2026-06-19 23:21:58,826.826 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:58,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:21:58,881.881 INFO    ] No update needed
[2026-06-19 23:21:58,884.884 INFO    ] Checking for camera pi updates...
[2026-06-19 23:21:58,922.922 INFO    ] 200
[2026-06-19 23:21:58,924.924 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:21:58,965.965 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:21:59,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:21:59,015.015 INFO    ] No camera update needed
[2026-06-19 23:21:59,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:21:59,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:21:59,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:21:59,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:22:01,072.072 INFO    ] ================================================
[2026-06-19 23:22:01,087.087 INFO    ] Launching Daemon at Fri Jun 19 23:22:01 IST 2026
[2026-06-19 23:22:01,098.098 INFO    ] ================================================
[2026-06-19 23:22:01,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:22:01
[2026-06-19 23:22:02,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:22:02,829.829 INFO    ] Initializing speech engine...
[2026-06-19 23:22:02,839.839 INFO    ] 2026-06-19 23:22:02
[2026-06-19 23:22:03,116.116 INFO    ] 2026-06-19 23:22:03
[2026-06-19 23:22:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:22:03,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:22:03,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:22:03,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:22:03,576.576 INFO    ] time= 19/06/2026 23:22:03
[2026-06-19 23:22:03,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:22:03,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:22:03,725.725 INFO    ] No existing commands found in stream
[2026-06-19 23:22:08,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:22:08,740.740 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-19 23:22:13,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:22:13,140.140 INFO    ] Checking for system updates...
[2026-06-19 23:22:13,176.176 INFO    ] 200
[2026-06-19 23:22:13,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:22:13,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:22:13,233.233 INFO    ] No update needed
[2026-06-19 23:22:13,236.236 INFO    ] Checking for camera pi updates...
[2026-06-19 23:22:13,270.270 INFO    ] 200
[2026-06-19 23:22:13,272.272 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:22:13,313.313 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:22:13,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:22:13,372.372 INFO    ] No camera update needed
[2026-06-19 23:22:13,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:22:13,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:22:13,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:22:13,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:22:15,428.428 INFO    ] ================================================
[2026-06-19 23:22:15,443.443 INFO    ] Launching Daemon at Fri Jun 19 23:22:15 IST 2026
[2026-06-19 23:22:15,455.455 INFO    ] ================================================
[2026-06-19 23:22:16,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:22:16
[2026-06-19 23:22:16,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:22:16,957.957 INFO    ] Initializing speech engine...
[2026-06-19 23:22:16,966.966 INFO    ] 2026-06-19 23:22:16
[2026-06-19 23:22:17,213.213 INFO    ] 2026-06-19 23:22:17
[2026-06-19 23:22:17,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:22:17,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:22:17,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:22:17,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:22:17,580.580 INFO    ] time= 19/06/2026 23:22:17
[2026-06-19 23:22:17,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:22:17,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:22:17,748.748 INFO    ] No existing commands found in stream
[2026-06-19 23:22:22,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:22:22,777.777 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-19 23:22:27,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:22:27,158.158 INFO    ] Checking for system updates...
[2026-06-19 23:22:27,197.197 INFO    ] 200
[2026-06-19 23:22:27,200.200 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:22:27,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:22:27,255.255 INFO    ] No update needed
[2026-06-19 23:22:27,258.258 INFO    ] Checking for camera pi updates...
[2026-06-19 23:22:27,293.293 INFO    ] 200
[2026-06-19 23:22:27,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:22:27,340.340 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:22:27,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:22:27,385.385 INFO    ] No camera update needed
[2026-06-19 23:22:27,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:22:27,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:22:27,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:22:27,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:22:29,441.441 INFO    ] ================================================
[2026-06-19 23:22:29,456.456 INFO    ] Launching Daemon at Fri Jun 19 23:22:29 IST 2026
[2026-06-19 23:22:29,467.467 INFO    ] ================================================
[2026-06-19 23:22:30,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:22:30
[2026-06-19 23:22:30,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:22:30,974.974 INFO    ] Initializing speech engine...
[2026-06-19 23:22:30,988.988 INFO    ] 2026-06-19 23:22:30
[2026-06-19 23:22:31,310.310 INFO    ] 2026-06-19 23:22:31
[2026-06-19 23:22:31,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:22:31,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:22:31,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:22:31,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:22:31,845.845 INFO    ] time= 19/06/2026 23:22:31
[2026-06-19 23:22:31,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:22:31,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:22:31,993.993 INFO    ] No existing commands found in stream
[2026-06-19 23:22:37,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:22:37,016.016 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-19 23:22:40,341.341 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:22:40,344.344 INFO    ] Checking for system updates...
[2026-06-19 23:22:40,381.381 INFO    ] 200
[2026-06-19 23:22:40,384.384 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:22:40,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:22:40,440.440 INFO    ] No update needed
[2026-06-19 23:22:40,442.442 INFO    ] Checking for camera pi updates...
[2026-06-19 23:22:40,477.477 INFO    ] 200
[2026-06-19 23:22:40,487.487 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:22:40,528.528 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:22:40,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:22:40,577.577 INFO    ] No camera update needed
[2026-06-19 23:22:40,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:22:40,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:22:40,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:22:40,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:22:42,631.631 INFO    ] ================================================
[2026-06-19 23:22:42,647.647 INFO    ] Launching Daemon at Fri Jun 19 23:22:42 IST 2026
[2026-06-19 23:22:42,658.658 INFO    ] ================================================
[2026-06-19 23:22:43,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:22:43
[2026-06-19 23:22:43,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:22:44,246.246 INFO    ] Initializing speech engine...
[2026-06-19 23:22:44,252.252 INFO    ] 2026-06-19 23:22:44
[2026-06-19 23:22:44,514.514 INFO    ] 2026-06-19 23:22:44
[2026-06-19 23:22:44,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:22:44,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:22:44,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:22:44,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:22:44,962.962 INFO    ] time= 19/06/2026 23:22:44
[2026-06-19 23:22:45,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:22:45,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:22:45,129.129 INFO    ] No existing commands found in stream
[2026-06-19 23:22:50,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:22:50,144.144 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-19 23:22:51,882.882 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:22:51,885.885 INFO    ] Checking for system updates...
[2026-06-19 23:22:51,920.920 INFO    ] 200
[2026-06-19 23:22:51,923.923 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:22:51,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:22:51,979.979 INFO    ] No update needed
[2026-06-19 23:22:51,981.981 INFO    ] Checking for camera pi updates...
[2026-06-19 23:22:52,014.014 INFO    ] 200
[2026-06-19 23:22:52,017.017 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:22:52,060.060 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:22:52,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:22:52,110.110 INFO    ] No camera update needed
[2026-06-19 23:22:52,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:22:52,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:22:52,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:22:52,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:22:54,167.167 INFO    ] ================================================
[2026-06-19 23:22:54,182.182 INFO    ] Launching Daemon at Fri Jun 19 23:22:54 IST 2026
[2026-06-19 23:22:54,193.193 INFO    ] ================================================
[2026-06-19 23:22:54,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:22:54
[2026-06-19 23:22:55,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:22:55,600.600 INFO    ] Initializing speech engine...
[2026-06-19 23:22:55,607.607 INFO    ] 2026-06-19 23:22:55
[2026-06-19 23:22:55,904.904 INFO    ] 2026-06-19 23:22:55
[2026-06-19 23:22:55,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:22:56,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:22:56,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:22:56,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:22:56,266.266 INFO    ] time= 19/06/2026 23:22:56
[2026-06-19 23:22:56,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:22:56,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:22:56,387.387 INFO    ] No existing commands found in stream
[2026-06-19 23:23:01,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:23:01,411.411 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 23:23:03,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:23:03,925.925 INFO    ] Checking for system updates...
[2026-06-19 23:23:03,962.962 INFO    ] 200
[2026-06-19 23:23:03,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:04,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:23:04,021.021 INFO    ] No update needed
[2026-06-19 23:23:04,024.024 INFO    ] Checking for camera pi updates...
[2026-06-19 23:23:04,058.058 INFO    ] 200
[2026-06-19 23:23:04,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:04,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:23:04,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:23:04,160.160 INFO    ] No camera update needed
[2026-06-19 23:23:04,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:23:04,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:23:04,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:23:04,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:23:06,220.220 INFO    ] ================================================
[2026-06-19 23:23:06,236.236 INFO    ] Launching Daemon at Fri Jun 19 23:23:06 IST 2026
[2026-06-19 23:23:06,248.248 INFO    ] ================================================
[2026-06-19 23:23:06,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:23:06
[2026-06-19 23:23:07,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:23:07,709.709 INFO    ] Initializing speech engine...
[2026-06-19 23:23:07,716.716 INFO    ] 2026-06-19 23:23:07
[2026-06-19 23:23:07,964.964 INFO    ] 2026-06-19 23:23:07
[2026-06-19 23:23:08,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:23:08,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:23:08,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:23:08,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:23:08,367.367 INFO    ] time= 19/06/2026 23:23:08
[2026-06-19 23:23:08,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:23:08,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:23:08,452.452 INFO    ] No existing commands found in stream
[2026-06-19 23:23:13,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:23:13,468.468 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 23:23:14,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:23:14,781.781 INFO    ] Checking for system updates...
[2026-06-19 23:23:14,817.817 INFO    ] 200
[2026-06-19 23:23:14,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:14,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:23:14,874.874 INFO    ] No update needed
[2026-06-19 23:23:14,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 23:23:14,911.911 INFO    ] 200
[2026-06-19 23:23:14,913.913 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:14,954.954 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:23:14,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:23:15,001.001 INFO    ] No camera update needed
[2026-06-19 23:23:15,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:23:15,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:23:15,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:23:15,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:23:17,057.057 INFO    ] ================================================
[2026-06-19 23:23:17,073.073 INFO    ] Launching Daemon at Fri Jun 19 23:23:17 IST 2026
[2026-06-19 23:23:17,085.085 INFO    ] ================================================
[2026-06-19 23:23:17,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:23:17
[2026-06-19 23:23:18,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:23:18,643.643 INFO    ] Initializing speech engine...
[2026-06-19 23:23:18,650.650 INFO    ] 2026-06-19 23:23:18
[2026-06-19 23:23:18,966.966 INFO    ] 2026-06-19 23:23:18
[2026-06-19 23:23:19,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:23:19,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:23:19,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:23:19,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:23:19,426.426 INFO    ] time= 19/06/2026 23:23:19
[2026-06-19 23:23:19,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:23:19,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:23:19,600.600 INFO    ] No existing commands found in stream
[2026-06-19 23:23:24,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:23:24,641.641 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-19 23:23:27,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:23:27,066.066 INFO    ] Checking for system updates...
[2026-06-19 23:23:27,107.107 INFO    ] 200
[2026-06-19 23:23:27,110.110 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:27,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:23:27,172.172 INFO    ] No update needed
[2026-06-19 23:23:27,175.175 INFO    ] Checking for camera pi updates...
[2026-06-19 23:23:27,210.210 INFO    ] 200
[2026-06-19 23:23:27,213.213 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:27,255.255 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:23:27,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:23:27,312.312 INFO    ] No camera update needed
[2026-06-19 23:23:27,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:23:27,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:23:27,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:23:27,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:23:29,369.369 INFO    ] ================================================
[2026-06-19 23:23:29,384.384 INFO    ] Launching Daemon at Fri Jun 19 23:23:29 IST 2026
[2026-06-19 23:23:29,396.396 INFO    ] ================================================
[2026-06-19 23:23:30,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:23:30
[2026-06-19 23:23:30,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:23:31,061.061 INFO    ] Initializing speech engine...
[2026-06-19 23:23:31,075.075 INFO    ] 2026-06-19 23:23:31
[2026-06-19 23:23:31,355.355 INFO    ] 2026-06-19 23:23:31
[2026-06-19 23:23:31,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:23:31,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:23:31,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:23:31,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:23:31,852.852 INFO    ] time= 19/06/2026 23:23:31
[2026-06-19 23:23:31,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:23:31,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:23:32,079.079 INFO    ] No existing commands found in stream
[2026-06-19 23:23:37,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:23:37,137.137 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-19 23:23:39,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:23:39,574.574 INFO    ] Checking for system updates...
[2026-06-19 23:23:39,612.612 INFO    ] 200
[2026-06-19 23:23:39,614.614 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:39,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:23:39,669.669 INFO    ] No update needed
[2026-06-19 23:23:39,672.672 INFO    ] Checking for camera pi updates...
[2026-06-19 23:23:39,710.710 INFO    ] 200
[2026-06-19 23:23:39,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:39,753.753 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:23:39,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:23:39,803.803 INFO    ] No camera update needed
[2026-06-19 23:23:39,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:23:39,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:23:39,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:23:39,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:23:41,862.862 INFO    ] ================================================
[2026-06-19 23:23:41,878.878 INFO    ] Launching Daemon at Fri Jun 19 23:23:41 IST 2026
[2026-06-19 23:23:41,889.889 INFO    ] ================================================
[2026-06-19 23:23:42,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:23:42
[2026-06-19 23:23:43,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:23:43,354.354 INFO    ] Initializing speech engine...
[2026-06-19 23:23:43,367.367 INFO    ] 2026-06-19 23:23:43
[2026-06-19 23:23:43,652.652 INFO    ] 2026-06-19 23:23:43
[2026-06-19 23:23:43,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:23:43,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:23:43,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:23:44,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:23:44,143.143 INFO    ] time= 19/06/2026 23:23:44
[2026-06-19 23:23:44,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:23:44,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:23:44,315.315 INFO    ] No existing commands found in stream
[2026-06-19 23:23:49,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:23:49,350.350 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-19 23:23:52,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:23:52,632.632 INFO    ] Checking for system updates...
[2026-06-19 23:23:52,670.670 INFO    ] 200
[2026-06-19 23:23:52,673.673 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:52,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:23:52,737.737 INFO    ] No update needed
[2026-06-19 23:23:52,740.740 INFO    ] Checking for camera pi updates...
[2026-06-19 23:23:52,778.778 INFO    ] 200
[2026-06-19 23:23:52,781.781 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:23:52,822.822 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:23:52,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:23:52,971.971 INFO    ] No camera update needed
[2026-06-19 23:23:52,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:23:52,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:23:52,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:23:52,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:23:55,027.027 INFO    ] ================================================
[2026-06-19 23:23:55,043.043 INFO    ] Launching Daemon at Fri Jun 19 23:23:55 IST 2026
[2026-06-19 23:23:55,054.054 INFO    ] ================================================
[2026-06-19 23:23:55,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:23:55
[2026-06-19 23:23:56,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:23:56,636.636 INFO    ] Initializing speech engine...
[2026-06-19 23:23:56,649.649 INFO    ] 2026-06-19 23:23:56
[2026-06-19 23:23:56,932.932 INFO    ] 2026-06-19 23:23:56
[2026-06-19 23:23:56,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:23:57,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:23:57,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:23:57,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:23:57,404.404 INFO    ] time= 19/06/2026 23:23:57
[2026-06-19 23:23:57,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:23:57,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:23:57,648.648 INFO    ] No existing commands found in stream
[2026-06-19 23:24:02,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:24:02,685.685 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 23:24:05,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:24:05,716.716 INFO    ] Checking for system updates...
[2026-06-19 23:24:05,758.758 INFO    ] 200
[2026-06-19 23:24:05,760.760 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:05,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:24:05,815.815 INFO    ] No update needed
[2026-06-19 23:24:05,817.817 INFO    ] Checking for camera pi updates...
[2026-06-19 23:24:05,851.851 INFO    ] 200
[2026-06-19 23:24:05,854.854 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:05,898.898 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:24:05,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:24:05,948.948 INFO    ] No camera update needed
[2026-06-19 23:24:05,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:24:05,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:24:05,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:24:05,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:24:08,004.004 INFO    ] ================================================
[2026-06-19 23:24:08,020.020 INFO    ] Launching Daemon at Fri Jun 19 23:24:08 IST 2026
[2026-06-19 23:24:08,031.031 INFO    ] ================================================
[2026-06-19 23:24:08,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:24:08
[2026-06-19 23:24:09,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:24:09,484.484 INFO    ] Initializing speech engine...
[2026-06-19 23:24:09,491.491 INFO    ] 2026-06-19 23:24:09
[2026-06-19 23:24:09,791.791 INFO    ] 2026-06-19 23:24:09
[2026-06-19 23:24:09,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:24:10,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:24:10,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:24:10,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:24:10,152.152 INFO    ] time= 19/06/2026 23:24:10
[2026-06-19 23:24:10,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:24:10,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:24:10,232.232 INFO    ] No existing commands found in stream
[2026-06-19 23:24:15,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:24:15,246.246 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-19 23:24:15,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:24:15,682.682 INFO    ] Checking for system updates...
[2026-06-19 23:24:15,718.718 INFO    ] 200
[2026-06-19 23:24:15,720.720 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:15,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:24:15,783.783 INFO    ] No update needed
[2026-06-19 23:24:15,786.786 INFO    ] Checking for camera pi updates...
[2026-06-19 23:24:15,820.820 INFO    ] 200
[2026-06-19 23:24:15,823.823 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:15,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:24:15,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:24:15,926.926 INFO    ] No camera update needed
[2026-06-19 23:24:15,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:24:15,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:24:15,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:24:15,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:24:17,983.983 INFO    ] ================================================
[2026-06-19 23:24:18,999.999 INFO    ] Launching Daemon at Fri Jun 19 23:24:17 IST 2026
[2026-06-19 23:24:18,010.010 INFO    ] ================================================
[2026-06-19 23:24:18,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:24:18
[2026-06-19 23:24:19,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:24:19,686.686 INFO    ] Initializing speech engine...
[2026-06-19 23:24:19,697.697 INFO    ] 2026-06-19 23:24:19
[2026-06-19 23:24:19,986.986 INFO    ] 2026-06-19 23:24:19
[2026-06-19 23:24:20,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:24:20,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:24:20,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:24:20,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:24:20,483.483 INFO    ] time= 19/06/2026 23:24:20
[2026-06-19 23:24:20,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:24:20,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:24:20,668.668 INFO    ] No existing commands found in stream
[2026-06-19 23:24:25,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:24:25,701.701 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-19 23:24:27,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:24:27,732.732 INFO    ] Checking for system updates...
[2026-06-19 23:24:27,772.772 INFO    ] 200
[2026-06-19 23:24:27,775.775 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:27,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:24:27,838.838 INFO    ] No update needed
[2026-06-19 23:24:27,840.840 INFO    ] Checking for camera pi updates...
[2026-06-19 23:24:27,874.874 INFO    ] 200
[2026-06-19 23:24:27,877.877 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:27,923.923 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:24:27,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:24:27,970.970 INFO    ] No camera update needed
[2026-06-19 23:24:27,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:24:27,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:24:27,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:24:27,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:24:30,025.025 INFO    ] ================================================
[2026-06-19 23:24:30,041.041 INFO    ] Launching Daemon at Fri Jun 19 23:24:30 IST 2026
[2026-06-19 23:24:30,052.052 INFO    ] ================================================
[2026-06-19 23:24:30,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:24:30
[2026-06-19 23:24:31,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:24:31,498.498 INFO    ] Initializing speech engine...
[2026-06-19 23:24:31,509.509 INFO    ] 2026-06-19 23:24:31
[2026-06-19 23:24:31,770.770 INFO    ] 2026-06-19 23:24:31
[2026-06-19 23:24:31,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:24:32,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:24:32,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:24:32,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:24:32,225.225 INFO    ] time= 19/06/2026 23:24:32
[2026-06-19 23:24:32,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:24:32,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:24:32,400.400 INFO    ] No existing commands found in stream
[2026-06-19 23:24:37,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:24:37,416.416 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 23:24:40,935.935 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:24:40,938.938 INFO    ] Checking for system updates...
[2026-06-19 23:24:40,974.974 INFO    ] 200
[2026-06-19 23:24:40,976.976 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:41,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:24:41,039.039 INFO    ] No update needed
[2026-06-19 23:24:41,042.042 INFO    ] Checking for camera pi updates...
[2026-06-19 23:24:41,076.076 INFO    ] 200
[2026-06-19 23:24:41,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:41,118.118 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:24:41,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:24:41,170.170 INFO    ] No camera update needed
[2026-06-19 23:24:41,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:24:41,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:24:41,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:24:41,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:24:43,225.225 INFO    ] ================================================
[2026-06-19 23:24:43,241.241 INFO    ] Launching Daemon at Fri Jun 19 23:24:43 IST 2026
[2026-06-19 23:24:43,252.252 INFO    ] ================================================
[2026-06-19 23:24:43,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:24:43
[2026-06-19 23:24:44,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:24:44,698.698 INFO    ] Initializing speech engine...
[2026-06-19 23:24:44,704.704 INFO    ] 2026-06-19 23:24:44
[2026-06-19 23:24:44,965.965 INFO    ] 2026-06-19 23:24:44
[2026-06-19 23:24:44,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:24:45,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:24:45,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:24:45,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:24:45,419.419 INFO    ] time= 19/06/2026 23:24:45
[2026-06-19 23:24:45,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:24:45,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:24:45,574.574 INFO    ] No existing commands found in stream
[2026-06-19 23:24:50,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:24:50,602.602 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-19 23:24:54,887.887 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:24:54,890.890 INFO    ] Checking for system updates...
[2026-06-19 23:24:54,926.926 INFO    ] 200
[2026-06-19 23:24:54,929.929 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:54,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:24:54,983.983 INFO    ] No update needed
[2026-06-19 23:24:54,986.986 INFO    ] Checking for camera pi updates...
[2026-06-19 23:24:55,024.024 INFO    ] 200
[2026-06-19 23:24:55,027.027 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:24:55,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:24:55,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:24:55,129.129 INFO    ] No camera update needed
[2026-06-19 23:24:55,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:24:55,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:24:55,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:24:55,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:24:57,188.188 INFO    ] ================================================
[2026-06-19 23:24:57,205.205 INFO    ] Launching Daemon at Fri Jun 19 23:24:57 IST 2026
[2026-06-19 23:24:57,216.216 INFO    ] ================================================
[2026-06-19 23:24:57,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:24:57
[2026-06-19 23:24:58,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:24:58,673.673 INFO    ] Initializing speech engine...
[2026-06-19 23:24:58,683.683 INFO    ] 2026-06-19 23:24:58
[2026-06-19 23:24:58,937.937 INFO    ] 2026-06-19 23:24:58
[2026-06-19 23:24:58,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:24:59,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:24:59,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:24:59,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:24:59,366.366 INFO    ] time= 19/06/2026 23:24:59
[2026-06-19 23:24:59,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:24:59,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:24:59,541.541 INFO    ] No existing commands found in stream
[2026-06-19 23:25:04,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:25:04,556.556 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 23:25:08,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:25:08,251.251 INFO    ] Checking for system updates...
[2026-06-19 23:25:08,291.291 INFO    ] 200
[2026-06-19 23:25:08,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:08,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:25:08,355.355 INFO    ] No update needed
[2026-06-19 23:25:08,357.357 INFO    ] Checking for camera pi updates...
[2026-06-19 23:25:08,391.391 INFO    ] 200
[2026-06-19 23:25:08,393.393 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:08,441.441 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:25:08,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:25:08,489.489 INFO    ] No camera update needed
[2026-06-19 23:25:08,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:25:08,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:25:08,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:25:08,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:25:10,551.551 INFO    ] ================================================
[2026-06-19 23:25:10,566.566 INFO    ] Launching Daemon at Fri Jun 19 23:25:10 IST 2026
[2026-06-19 23:25:10,578.578 INFO    ] ================================================
[2026-06-19 23:25:11,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:25:11
[2026-06-19 23:25:11,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:25:12,208.208 INFO    ] Initializing speech engine...
[2026-06-19 23:25:12,218.218 INFO    ] 2026-06-19 23:25:12
[2026-06-19 23:25:12,497.497 INFO    ] 2026-06-19 23:25:12
[2026-06-19 23:25:12,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:25:12,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:25:12,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:25:12,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:25:13,030.030 INFO    ] time= 19/06/2026 23:25:12
[2026-06-19 23:25:13,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:25:13,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:25:13,196.196 INFO    ] No existing commands found in stream
[2026-06-19 23:25:18,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:25:18,226.226 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-19 23:25:21,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:25:21,528.528 INFO    ] Checking for system updates...
[2026-06-19 23:25:21,565.565 INFO    ] 200
[2026-06-19 23:25:21,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:21,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:25:21,622.622 INFO    ] No update needed
[2026-06-19 23:25:21,625.625 INFO    ] Checking for camera pi updates...
[2026-06-19 23:25:21,658.658 INFO    ] 200
[2026-06-19 23:25:21,661.661 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:21,702.702 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:25:21,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:25:21,752.752 INFO    ] No camera update needed
[2026-06-19 23:25:21,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:25:21,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:25:21,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:25:21,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:25:23,808.808 INFO    ] ================================================
[2026-06-19 23:25:23,823.823 INFO    ] Launching Daemon at Fri Jun 19 23:25:23 IST 2026
[2026-06-19 23:25:23,835.835 INFO    ] ================================================
[2026-06-19 23:25:24,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:25:24
[2026-06-19 23:25:25,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:25:25,279.279 INFO    ] Initializing speech engine...
[2026-06-19 23:25:25,289.289 INFO    ] 2026-06-19 23:25:25
[2026-06-19 23:25:25,551.551 INFO    ] 2026-06-19 23:25:25
[2026-06-19 23:25:25,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:25:25,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:25:25,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:25:25,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:25:26,018.018 INFO    ] time= 19/06/2026 23:25:25
[2026-06-19 23:25:26,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:25:26,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:25:26,156.156 INFO    ] No existing commands found in stream
[2026-06-19 23:25:31,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:25:31,171.171 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 23:25:34,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:25:34,974.974 INFO    ] Checking for system updates...
[2026-06-19 23:25:35,010.010 INFO    ] 200
[2026-06-19 23:25:35,013.013 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:35,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:25:35,076.076 INFO    ] No update needed
[2026-06-19 23:25:35,079.079 INFO    ] Checking for camera pi updates...
[2026-06-19 23:25:35,114.114 INFO    ] 200
[2026-06-19 23:25:35,117.117 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:35,159.159 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:25:35,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:25:35,207.207 INFO    ] No camera update needed
[2026-06-19 23:25:35,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:25:35,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:25:35,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:25:35,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:25:37,266.266 INFO    ] ================================================
[2026-06-19 23:25:37,282.282 INFO    ] Launching Daemon at Fri Jun 19 23:25:37 IST 2026
[2026-06-19 23:25:37,293.293 INFO    ] ================================================
[2026-06-19 23:25:37,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:25:37
[2026-06-19 23:25:38,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:25:38,725.725 INFO    ] Initializing speech engine...
[2026-06-19 23:25:38,733.733 INFO    ] 2026-06-19 23:25:38
[2026-06-19 23:25:38,984.984 INFO    ] 2026-06-19 23:25:38
[2026-06-19 23:25:39,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:25:39,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:25:39,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:25:39,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:25:39,367.367 INFO    ] time= 19/06/2026 23:25:39
[2026-06-19 23:25:39,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:25:39,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:25:39,534.534 INFO    ] No existing commands found in stream
[2026-06-19 23:25:44,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:25:44,562.562 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 23:25:45,851.851 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:25:45,854.854 INFO    ] Checking for system updates...
[2026-06-19 23:25:45,892.892 INFO    ] 200
[2026-06-19 23:25:45,894.894 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:45,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:25:45,957.957 INFO    ] No update needed
[2026-06-19 23:25:45,961.961 INFO    ] Checking for camera pi updates...
[2026-06-19 23:25:45,999.999 INFO    ] 200
[2026-06-19 23:25:46,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:46,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:25:46,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:25:46,111.111 INFO    ] No camera update needed
[2026-06-19 23:25:46,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:25:46,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:25:46,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:25:46,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:25:48,168.168 INFO    ] ================================================
[2026-06-19 23:25:48,184.184 INFO    ] Launching Daemon at Fri Jun 19 23:25:48 IST 2026
[2026-06-19 23:25:48,195.195 INFO    ] ================================================
[2026-06-19 23:25:48,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:25:48
[2026-06-19 23:25:49,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:25:49,801.801 INFO    ] Initializing speech engine...
[2026-06-19 23:25:49,809.809 INFO    ] 2026-06-19 23:25:49
[2026-06-19 23:25:50,077.077 INFO    ] 2026-06-19 23:25:50
[2026-06-19 23:25:50,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:25:50,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:25:50,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:25:50,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:25:50,564.564 INFO    ] time= 19/06/2026 23:25:50
[2026-06-19 23:25:50,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:25:50,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:25:50,713.713 INFO    ] No existing commands found in stream
[2026-06-19 23:25:55,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:25:55,754.754 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-19 23:25:56,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:25:56,179.179 INFO    ] Checking for system updates...
[2026-06-19 23:25:56,216.216 INFO    ] 200
[2026-06-19 23:25:56,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:56,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:25:56,275.275 INFO    ] No update needed
[2026-06-19 23:25:56,278.278 INFO    ] Checking for camera pi updates...
[2026-06-19 23:25:56,312.312 INFO    ] 200
[2026-06-19 23:25:56,315.315 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:25:56,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:25:56,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:25:56,500.500 INFO    ] No camera update needed
[2026-06-19 23:25:56,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:25:56,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:25:56,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:25:56,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:25:58,560.560 INFO    ] ================================================
[2026-06-19 23:25:58,577.577 INFO    ] Launching Daemon at Fri Jun 19 23:25:58 IST 2026
[2026-06-19 23:25:58,588.588 INFO    ] ================================================
[2026-06-19 23:25:59,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:25:59
[2026-06-19 23:25:59,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:26:00,064.064 INFO    ] Initializing speech engine...
[2026-06-19 23:26:00,073.073 INFO    ] 2026-06-19 23:26:00
[2026-06-19 23:26:00,344.344 INFO    ] 2026-06-19 23:26:00
[2026-06-19 23:26:00,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:26:00,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:26:00,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:26:00,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:26:00,722.722 INFO    ] time= 19/06/2026 23:26:00
[2026-06-19 23:26:00,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:26:00,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:26:00,848.848 INFO    ] No existing commands found in stream
[2026-06-19 23:26:05,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:26:05,863.863 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-19 23:26:06,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:26:06,705.705 INFO    ] Checking for system updates...
[2026-06-19 23:26:06,743.743 INFO    ] 200
[2026-06-19 23:26:06,745.745 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:06,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:26:06,805.805 INFO    ] No update needed
[2026-06-19 23:26:06,807.807 INFO    ] Checking for camera pi updates...
[2026-06-19 23:26:06,842.842 INFO    ] 200
[2026-06-19 23:26:06,844.844 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:06,889.889 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:26:06,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:26:06,949.949 INFO    ] No camera update needed
[2026-06-19 23:26:06,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:26:06,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:26:06,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:26:06,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:26:09,004.004 INFO    ] ================================================
[2026-06-19 23:26:09,020.020 INFO    ] Launching Daemon at Fri Jun 19 23:26:09 IST 2026
[2026-06-19 23:26:09,031.031 INFO    ] ================================================
[2026-06-19 23:26:09,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:26:09
[2026-06-19 23:26:10,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:26:10,454.454 INFO    ] Initializing speech engine...
[2026-06-19 23:26:10,463.463 INFO    ] 2026-06-19 23:26:10
[2026-06-19 23:26:10,717.717 INFO    ] 2026-06-19 23:26:10
[2026-06-19 23:26:10,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:26:10,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:26:10,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:26:11,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:26:11,099.099 INFO    ] time= 19/06/2026 23:26:11
[2026-06-19 23:26:11,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:26:11,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:26:11,278.278 INFO    ] No existing commands found in stream
[2026-06-19 23:26:16,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:26:16,300.300 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-19 23:26:18,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:26:18,706.706 INFO    ] Checking for system updates...
[2026-06-19 23:26:18,744.744 INFO    ] 200
[2026-06-19 23:26:18,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:18,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:26:18,804.804 INFO    ] No update needed
[2026-06-19 23:26:18,808.808 INFO    ] Checking for camera pi updates...
[2026-06-19 23:26:18,859.859 INFO    ] 200
[2026-06-19 23:26:18,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:18,908.908 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:26:18,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:26:18,971.971 INFO    ] No camera update needed
[2026-06-19 23:26:18,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:26:18,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:26:18,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:26:18,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:26:21,030.030 INFO    ] ================================================
[2026-06-19 23:26:21,046.046 INFO    ] Launching Daemon at Fri Jun 19 23:26:21 IST 2026
[2026-06-19 23:26:21,058.058 INFO    ] ================================================
[2026-06-19 23:26:21,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:26:21
[2026-06-19 23:26:22,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:26:22,498.498 INFO    ] Initializing speech engine...
[2026-06-19 23:26:22,508.508 INFO    ] 2026-06-19 23:26:22
[2026-06-19 23:26:22,772.772 INFO    ] 2026-06-19 23:26:22
[2026-06-19 23:26:22,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:26:23,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:26:23,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:26:23,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:26:23,249.249 INFO    ] time= 19/06/2026 23:26:23
[2026-06-19 23:26:23,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:26:23,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:26:23,402.402 INFO    ] No existing commands found in stream
[2026-06-19 23:26:28,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:26:28,417.417 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 23:26:32,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:26:32,543.543 INFO    ] Checking for system updates...
[2026-06-19 23:26:32,585.585 INFO    ] 200
[2026-06-19 23:26:32,587.587 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:32,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:26:32,654.654 INFO    ] No update needed
[2026-06-19 23:26:32,657.657 INFO    ] Checking for camera pi updates...
[2026-06-19 23:26:32,697.697 INFO    ] 200
[2026-06-19 23:26:32,700.700 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:32,751.751 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:26:32,794.794 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:26:32,797.797 INFO    ] No camera update needed
[2026-06-19 23:26:32,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:26:32,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:26:32,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:26:32,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:26:34,857.857 INFO    ] ================================================
[2026-06-19 23:26:34,873.873 INFO    ] Launching Daemon at Fri Jun 19 23:26:34 IST 2026
[2026-06-19 23:26:34,884.884 INFO    ] ================================================
[2026-06-19 23:26:35,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:26:35
[2026-06-19 23:26:36,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:26:36,311.311 INFO    ] Initializing speech engine...
[2026-06-19 23:26:36,320.320 INFO    ] 2026-06-19 23:26:36
[2026-06-19 23:26:36,570.570 INFO    ] 2026-06-19 23:26:36
[2026-06-19 23:26:36,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:26:36,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:26:36,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:26:36,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:26:36,907.907 INFO    ] time= 19/06/2026 23:26:36
[2026-06-19 23:26:36,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:26:36,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:26:37,019.019 INFO    ] No existing commands found in stream
[2026-06-19 23:26:42,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:26:42,034.034 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-19 23:26:43,111.111 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:26:43,114.114 INFO    ] Checking for system updates...
[2026-06-19 23:26:43,149.149 INFO    ] 200
[2026-06-19 23:26:43,152.152 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:43,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:26:43,210.210 INFO    ] No update needed
[2026-06-19 23:26:43,212.212 INFO    ] Checking for camera pi updates...
[2026-06-19 23:26:43,246.246 INFO    ] 200
[2026-06-19 23:26:43,248.248 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:43,289.289 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:26:43,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:26:43,340.340 INFO    ] No camera update needed
[2026-06-19 23:26:43,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:26:43,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:26:43,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:26:43,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:26:45,396.396 INFO    ] ================================================
[2026-06-19 23:26:45,412.412 INFO    ] Launching Daemon at Fri Jun 19 23:26:45 IST 2026
[2026-06-19 23:26:45,424.424 INFO    ] ================================================
[2026-06-19 23:26:46,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:26:46
[2026-06-19 23:26:46,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:26:46,876.876 INFO    ] Initializing speech engine...
[2026-06-19 23:26:46,887.887 INFO    ] 2026-06-19 23:26:46
[2026-06-19 23:26:47,136.136 INFO    ] 2026-06-19 23:26:47
[2026-06-19 23:26:47,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:26:47,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:26:47,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:26:47,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:26:47,616.616 INFO    ] time= 19/06/2026 23:26:47
[2026-06-19 23:26:47,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:26:47,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:26:47,764.764 INFO    ] No existing commands found in stream
[2026-06-19 23:26:52,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:26:52,778.778 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 23:26:55,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:26:55,480.480 INFO    ] Checking for system updates...
[2026-06-19 23:26:55,519.519 INFO    ] 200
[2026-06-19 23:26:55,521.521 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:55,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:26:55,579.579 INFO    ] No update needed
[2026-06-19 23:26:55,581.581 INFO    ] Checking for camera pi updates...
[2026-06-19 23:26:55,616.616 INFO    ] 200
[2026-06-19 23:26:55,619.619 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:26:55,661.661 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:26:55,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:26:55,710.710 INFO    ] No camera update needed
[2026-06-19 23:26:55,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:26:55,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:26:55,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:26:55,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:26:57,769.769 INFO    ] ================================================
[2026-06-19 23:26:57,785.785 INFO    ] Launching Daemon at Fri Jun 19 23:26:57 IST 2026
[2026-06-19 23:26:57,796.796 INFO    ] ================================================
[2026-06-19 23:26:58,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:26:58
[2026-06-19 23:26:59,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:26:59,385.385 INFO    ] Initializing speech engine...
[2026-06-19 23:26:59,391.391 INFO    ] 2026-06-19 23:26:59
[2026-06-19 23:26:59,651.651 INFO    ] 2026-06-19 23:26:59
[2026-06-19 23:26:59,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:26:59,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:26:59,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:27:00,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:27:00,106.106 INFO    ] time= 19/06/2026 23:27:00
[2026-06-19 23:27:00,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:27:00,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:27:00,258.258 INFO    ] No existing commands found in stream
[2026-06-19 23:27:05,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:27:05,273.273 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-19 23:27:08,762.762 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:27:08,764.764 INFO    ] Checking for system updates...
[2026-06-19 23:27:08,804.804 INFO    ] 200
[2026-06-19 23:27:08,807.807 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:27:08,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:27:08,867.867 INFO    ] No update needed
[2026-06-19 23:27:08,869.869 INFO    ] Checking for camera pi updates...
[2026-06-19 23:27:08,904.904 INFO    ] 200
[2026-06-19 23:27:08,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:27:08,951.951 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:27:08,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:27:08,996.996 INFO    ] No camera update needed
[2026-06-19 23:27:08,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:27:09,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:27:09,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:27:09,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:27:11,054.054 INFO    ] ================================================
[2026-06-19 23:27:11,069.069 INFO    ] Launching Daemon at Fri Jun 19 23:27:11 IST 2026
[2026-06-19 23:27:11,081.081 INFO    ] ================================================
[2026-06-19 23:27:11,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:27:11
[2026-06-19 23:27:12,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:27:12,622.622 INFO    ] Initializing speech engine...
[2026-06-19 23:27:12,645.645 INFO    ] 2026-06-19 23:27:12
[2026-06-19 23:27:12,903.903 INFO    ] 2026-06-19 23:27:12
[2026-06-19 23:27:12,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:27:13,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:27:13,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:27:13,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:27:13,385.385 INFO    ] time= 19/06/2026 23:27:13
[2026-06-19 23:27:13,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:27:13,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:27:13,532.532 INFO    ] No existing commands found in stream
[2026-06-19 23:27:18,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:27:18,548.548 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-19 23:27:22,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:27:22,044.044 INFO    ] Checking for system updates...
[2026-06-19 23:27:22,081.081 INFO    ] 200
[2026-06-19 23:27:22,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:27:22,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:27:22,143.143 INFO    ] No update needed
[2026-06-19 23:27:22,145.145 INFO    ] Checking for camera pi updates...
[2026-06-19 23:27:22,187.187 INFO    ] 200
[2026-06-19 23:27:22,189.189 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:27:22,233.233 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:27:22,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:27:22,267.267 INFO    ] No camera update needed
[2026-06-19 23:27:22,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:27:22,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:27:22,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:27:22,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:27:24,322.322 INFO    ] ================================================
[2026-06-19 23:27:24,338.338 INFO    ] Launching Daemon at Fri Jun 19 23:27:24 IST 2026
[2026-06-19 23:27:24,349.349 INFO    ] ================================================
[2026-06-19 23:27:24,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:27:24
[2026-06-19 23:27:25,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:27:25,793.793 INFO    ] Initializing speech engine...
[2026-06-19 23:27:25,802.802 INFO    ] 2026-06-19 23:27:25
[2026-06-19 23:27:26,073.073 INFO    ] 2026-06-19 23:27:26
[2026-06-19 23:27:26,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:27:26,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:27:26,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:27:26,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:27:26,554.554 INFO    ] time= 19/06/2026 23:27:26
[2026-06-19 23:27:26,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:27:26,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:27:26,689.689 INFO    ] No existing commands found in stream
[2026-06-19 23:27:31,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:27:31,700.700 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-19 23:27:34,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:27:34,603.603 INFO    ] Checking for system updates...
[2026-06-19 23:27:34,640.640 INFO    ] 200
[2026-06-19 23:27:34,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:27:34,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:27:34,697.697 INFO    ] No update needed
[2026-06-19 23:27:34,699.699 INFO    ] Checking for camera pi updates...
[2026-06-19 23:27:34,733.733 INFO    ] 200
[2026-06-19 23:27:34,735.735 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:27:34,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:27:34,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:27:34,831.831 INFO    ] No camera update needed
[2026-06-19 23:27:34,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:27:34,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:27:34,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:27:34,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:27:36,887.887 INFO    ] ================================================
[2026-06-19 23:27:36,903.903 INFO    ] Launching Daemon at Fri Jun 19 23:27:36 IST 2026
[2026-06-19 23:27:36,915.915 INFO    ] ================================================
[2026-06-19 23:27:37,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:27:37
[2026-06-19 23:27:38,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:27:38,339.339 INFO    ] Initializing speech engine...
[2026-06-19 23:27:38,352.352 INFO    ] 2026-06-19 23:27:38
[2026-06-19 23:27:38,632.632 INFO    ] 2026-06-19 23:27:38
[2026-06-19 23:27:38,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:27:38,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:27:38,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:27:38,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:27:39,014.014 INFO    ] time= 19/06/2026 23:27:38
[2026-06-19 23:27:39,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:27:39,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:27:39,120.120 INFO    ] No existing commands found in stream
[2026-06-19 23:27:44,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:27:44,138.138 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 23:27:47,900.900 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:27:47,903.903 INFO    ] Checking for system updates...
[2026-06-19 23:27:47,939.939 INFO    ] 200
[2026-06-19 23:27:47,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:27:47,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:27:48,001.001 INFO    ] No update needed
[2026-06-19 23:27:48,004.004 INFO    ] Checking for camera pi updates...
[2026-06-19 23:27:48,040.040 INFO    ] 200
[2026-06-19 23:27:48,042.042 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:27:48,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:27:48,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:27:48,125.125 INFO    ] No camera update needed
[2026-06-19 23:27:48,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:27:48,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:27:48,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:27:48,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:27:50,180.180 INFO    ] ================================================
[2026-06-19 23:27:50,196.196 INFO    ] Launching Daemon at Fri Jun 19 23:27:50 IST 2026
[2026-06-19 23:27:50,206.206 INFO    ] ================================================
[2026-06-19 23:27:50,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:27:50
[2026-06-19 23:27:51,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:27:51,645.645 INFO    ] Initializing speech engine...
[2026-06-19 23:27:51,652.652 INFO    ] 2026-06-19 23:27:51
[2026-06-19 23:27:51,939.939 INFO    ] 2026-06-19 23:27:51
[2026-06-19 23:27:51,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:27:52,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:27:52,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:27:52,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:27:52,307.307 INFO    ] time= 19/06/2026 23:27:52
[2026-06-19 23:27:52,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:27:52,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:27:52,428.428 INFO    ] No existing commands found in stream
[2026-06-19 23:27:57,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:27:57,440.440 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 23:28:01,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:28:01,486.486 INFO    ] Checking for system updates...
[2026-06-19 23:28:01,567.567 INFO    ] 200
[2026-06-19 23:28:01,576.576 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:01,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:28:01,650.650 INFO    ] No update needed
[2026-06-19 23:28:01,653.653 INFO    ] Checking for camera pi updates...
[2026-06-19 23:28:01,706.706 INFO    ] 200
[2026-06-19 23:28:01,709.709 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:01,771.771 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:28:01,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:28:01,912.912 INFO    ] No camera update needed
[2026-06-19 23:28:01,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:28:01,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:28:01,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:28:01,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:28:03,979.979 INFO    ] ================================================
[2026-06-19 23:28:04,994.994 INFO    ] Launching Daemon at Fri Jun 19 23:28:03 IST 2026
[2026-06-19 23:28:04,005.005 INFO    ] ================================================
[2026-06-19 23:28:04,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:28:04
[2026-06-19 23:28:05,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:28:05,558.558 INFO    ] Initializing speech engine...
[2026-06-19 23:28:05,572.572 INFO    ] 2026-06-19 23:28:05
[2026-06-19 23:28:05,846.846 INFO    ] 2026-06-19 23:28:05
[2026-06-19 23:28:05,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:28:06,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:28:06,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:28:06,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:28:06,304.304 INFO    ] time= 19/06/2026 23:28:06
[2026-06-19 23:28:06,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:28:06,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:28:06,473.473 INFO    ] No existing commands found in stream
[2026-06-19 23:28:11,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:28:11,490.490 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-19 23:28:12,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:28:12,749.749 INFO    ] Checking for system updates...
[2026-06-19 23:28:12,786.786 INFO    ] 200
[2026-06-19 23:28:12,788.788 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:12,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:28:12,845.845 INFO    ] No update needed
[2026-06-19 23:28:12,848.848 INFO    ] Checking for camera pi updates...
[2026-06-19 23:28:12,883.883 INFO    ] 200
[2026-06-19 23:28:12,886.886 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:12,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:28:12,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:28:12,974.974 INFO    ] No camera update needed
[2026-06-19 23:28:12,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:28:12,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:28:12,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:28:12,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:28:15,032.032 INFO    ] ================================================
[2026-06-19 23:28:15,047.047 INFO    ] Launching Daemon at Fri Jun 19 23:28:15 IST 2026
[2026-06-19 23:28:15,057.057 INFO    ] ================================================
[2026-06-19 23:28:15,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:28:15
[2026-06-19 23:28:16,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:28:16,505.505 INFO    ] Initializing speech engine...
[2026-06-19 23:28:16,514.514 INFO    ] 2026-06-19 23:28:16
[2026-06-19 23:28:16,774.774 INFO    ] 2026-06-19 23:28:16
[2026-06-19 23:28:16,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:28:17,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:28:17,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:28:17,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:28:17,234.234 INFO    ] time= 19/06/2026 23:28:17
[2026-06-19 23:28:17,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:28:17,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:28:17,379.379 INFO    ] No existing commands found in stream
[2026-06-19 23:28:22,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:28:22,394.394 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 23:28:25,918.918 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:28:25,921.921 INFO    ] Checking for system updates...
[2026-06-19 23:28:25,960.960 INFO    ] 200
[2026-06-19 23:28:25,962.962 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:26,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:28:26,017.017 INFO    ] No update needed
[2026-06-19 23:28:26,020.020 INFO    ] Checking for camera pi updates...
[2026-06-19 23:28:26,053.053 INFO    ] 200
[2026-06-19 23:28:26,056.056 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:26,096.096 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:28:26,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:28:26,152.152 INFO    ] No camera update needed
[2026-06-19 23:28:26,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:28:26,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:28:26,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:28:26,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:28:28,207.207 INFO    ] ================================================
[2026-06-19 23:28:28,223.223 INFO    ] Launching Daemon at Fri Jun 19 23:28:28 IST 2026
[2026-06-19 23:28:28,233.233 INFO    ] ================================================
[2026-06-19 23:28:28,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:28:28
[2026-06-19 23:28:29,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:28:29,673.673 INFO    ] Initializing speech engine...
[2026-06-19 23:28:29,679.679 INFO    ] 2026-06-19 23:28:29
[2026-06-19 23:28:29,960.960 INFO    ] 2026-06-19 23:28:29
[2026-06-19 23:28:29,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:28:30,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:28:30,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:28:30,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:28:30,316.316 INFO    ] time= 19/06/2026 23:28:30
[2026-06-19 23:28:30,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:28:30,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:28:30,416.416 INFO    ] No existing commands found in stream
[2026-06-19 23:28:35,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:28:35,434.434 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-19 23:28:35,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:28:35,952.952 INFO    ] Checking for system updates...
[2026-06-19 23:28:35,991.991 INFO    ] 200
[2026-06-19 23:28:35,994.994 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:36,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:28:36,054.054 INFO    ] No update needed
[2026-06-19 23:28:36,057.057 INFO    ] Checking for camera pi updates...
[2026-06-19 23:28:36,090.090 INFO    ] 200
[2026-06-19 23:28:36,092.092 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:36,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:28:36,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:28:36,187.187 INFO    ] No camera update needed
[2026-06-19 23:28:36,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:28:36,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:28:36,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:28:36,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:28:38,242.242 INFO    ] ================================================
[2026-06-19 23:28:38,258.258 INFO    ] Launching Daemon at Fri Jun 19 23:28:38 IST 2026
[2026-06-19 23:28:38,270.270 INFO    ] ================================================
[2026-06-19 23:28:38,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:28:38
[2026-06-19 23:28:39,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:28:39,740.740 INFO    ] Initializing speech engine...
[2026-06-19 23:28:39,748.748 INFO    ] 2026-06-19 23:28:39
[2026-06-19 23:28:40,025.025 INFO    ] 2026-06-19 23:28:40
[2026-06-19 23:28:40,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:28:40,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:28:40,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:28:40,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:28:40,401.401 INFO    ] time= 19/06/2026 23:28:40
[2026-06-19 23:28:40,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:28:40,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:28:40,477.477 INFO    ] No existing commands found in stream
[2026-06-19 23:28:45,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:28:45,492.492 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-19 23:28:46,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:28:46,852.852 INFO    ] Checking for system updates...
[2026-06-19 23:28:46,888.888 INFO    ] 200
[2026-06-19 23:28:46,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:46,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:28:46,945.945 INFO    ] No update needed
[2026-06-19 23:28:46,947.947 INFO    ] Checking for camera pi updates...
[2026-06-19 23:28:46,982.982 INFO    ] 200
[2026-06-19 23:28:46,985.985 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:28:47,026.026 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:28:47,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:28:47,079.079 INFO    ] No camera update needed
[2026-06-19 23:28:47,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:28:47,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:28:47,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:28:47,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:28:49,134.134 INFO    ] ================================================
[2026-06-19 23:28:49,150.150 INFO    ] Launching Daemon at Fri Jun 19 23:28:49 IST 2026
[2026-06-19 23:28:49,161.161 INFO    ] ================================================
[2026-06-19 23:28:49,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:28:49
[2026-06-19 23:28:50,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:28:50,565.565 INFO    ] Initializing speech engine...
[2026-06-19 23:28:50,588.588 INFO    ] 2026-06-19 23:28:50
[2026-06-19 23:28:50,841.841 INFO    ] 2026-06-19 23:28:50
[2026-06-19 23:28:50,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:28:51,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:28:51,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:28:51,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:28:51,205.205 INFO    ] time= 19/06/2026 23:28:51
[2026-06-19 23:28:51,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:28:51,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:28:51,330.330 INFO    ] No existing commands found in stream
[2026-06-19 23:28:56,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:28:56,343.343 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 23:29:00,968.968 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:29:00,971.971 INFO    ] Checking for system updates...
[2026-06-19 23:29:01,007.007 INFO    ] 200
[2026-06-19 23:29:01,010.010 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:01,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:29:01,071.071 INFO    ] No update needed
[2026-06-19 23:29:01,073.073 INFO    ] Checking for camera pi updates...
[2026-06-19 23:29:01,106.106 INFO    ] 200
[2026-06-19 23:29:01,109.109 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:01,149.149 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:29:01,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:29:01,209.209 INFO    ] No camera update needed
[2026-06-19 23:29:01,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:29:01,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:29:01,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:29:01,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:29:03,270.270 INFO    ] ================================================
[2026-06-19 23:29:03,292.292 INFO    ] Launching Daemon at Fri Jun 19 23:29:03 IST 2026
[2026-06-19 23:29:03,306.306 INFO    ] ================================================
[2026-06-19 23:29:03,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:29:03
[2026-06-19 23:29:04,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:29:04,804.804 INFO    ] Initializing speech engine...
[2026-06-19 23:29:04,813.813 INFO    ] 2026-06-19 23:29:04
[2026-06-19 23:29:05,069.069 INFO    ] 2026-06-19 23:29:05
[2026-06-19 23:29:05,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:29:05,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:29:05,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:29:05,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:29:05,406.406 INFO    ] time= 19/06/2026 23:29:05
[2026-06-19 23:29:05,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:29:05,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:29:05,505.505 INFO    ] No existing commands found in stream
[2026-06-19 23:29:10,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:29:10,543.543 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-19 23:29:12,093.093 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:29:12,095.095 INFO    ] Checking for system updates...
[2026-06-19 23:29:12,135.135 INFO    ] 200
[2026-06-19 23:29:12,137.137 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:12,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:29:12,192.192 INFO    ] No update needed
[2026-06-19 23:29:12,194.194 INFO    ] Checking for camera pi updates...
[2026-06-19 23:29:12,231.231 INFO    ] 200
[2026-06-19 23:29:12,234.234 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:12,276.276 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:29:12,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:29:12,326.326 INFO    ] No camera update needed
[2026-06-19 23:29:12,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:29:12,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:29:12,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:29:12,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:29:14,383.383 INFO    ] ================================================
[2026-06-19 23:29:14,398.398 INFO    ] Launching Daemon at Fri Jun 19 23:29:14 IST 2026
[2026-06-19 23:29:14,409.409 INFO    ] ================================================
[2026-06-19 23:29:14,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:29:14
[2026-06-19 23:29:15,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:29:15,812.812 INFO    ] Initializing speech engine...
[2026-06-19 23:29:15,821.821 INFO    ] 2026-06-19 23:29:15
[2026-06-19 23:29:16,115.115 INFO    ] 2026-06-19 23:29:16
[2026-06-19 23:29:16,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:29:16,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:29:16,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:29:16,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:29:16,466.466 INFO    ] time= 19/06/2026 23:29:16
[2026-06-19 23:29:16,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:29:16,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:29:16,547.547 INFO    ] No existing commands found in stream
[2026-06-19 23:29:21,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:29:21,562.562 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-19 23:29:24,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:29:24,074.074 INFO    ] Checking for system updates...
[2026-06-19 23:29:24,114.114 INFO    ] 200
[2026-06-19 23:29:24,116.116 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:24,170.170 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:29:24,172.172 INFO    ] No update needed
[2026-06-19 23:29:24,174.174 INFO    ] Checking for camera pi updates...
[2026-06-19 23:29:24,208.208 INFO    ] 200
[2026-06-19 23:29:24,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:24,252.252 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:29:24,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:29:24,299.299 INFO    ] No camera update needed
[2026-06-19 23:29:24,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:29:24,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:29:24,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:29:24,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:29:26,355.355 INFO    ] ================================================
[2026-06-19 23:29:26,371.371 INFO    ] Launching Daemon at Fri Jun 19 23:29:26 IST 2026
[2026-06-19 23:29:26,382.382 INFO    ] ================================================
[2026-06-19 23:29:26,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:29:26
[2026-06-19 23:29:27,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:29:27,793.793 INFO    ] Initializing speech engine...
[2026-06-19 23:29:27,808.808 INFO    ] 2026-06-19 23:29:27
[2026-06-19 23:29:28,093.093 INFO    ] 2026-06-19 23:29:28
[2026-06-19 23:29:28,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:29:28,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:29:28,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:29:28,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:29:28,502.502 INFO    ] time= 19/06/2026 23:29:28
[2026-06-19 23:29:28,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:29:28,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:29:28,590.590 INFO    ] No existing commands found in stream
[2026-06-19 23:29:33,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:29:33,604.604 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 23:29:35,429.429 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:29:35,431.431 INFO    ] Checking for system updates...
[2026-06-19 23:29:35,470.470 INFO    ] 200
[2026-06-19 23:29:35,473.473 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:35,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:29:35,532.532 INFO    ] No update needed
[2026-06-19 23:29:35,534.534 INFO    ] Checking for camera pi updates...
[2026-06-19 23:29:35,568.568 INFO    ] 200
[2026-06-19 23:29:35,570.570 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:35,611.611 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:29:35,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:29:35,654.654 INFO    ] No camera update needed
[2026-06-19 23:29:35,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:29:35,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:29:35,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:29:35,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:29:37,710.710 INFO    ] ================================================
[2026-06-19 23:29:37,725.725 INFO    ] Launching Daemon at Fri Jun 19 23:29:37 IST 2026
[2026-06-19 23:29:37,736.736 INFO    ] ================================================
[2026-06-19 23:29:38,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:29:38
[2026-06-19 23:29:38,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:29:39,154.154 INFO    ] Initializing speech engine...
[2026-06-19 23:29:39,163.163 INFO    ] 2026-06-19 23:29:39
[2026-06-19 23:29:39,454.454 INFO    ] 2026-06-19 23:29:39
[2026-06-19 23:29:39,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:29:39,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:29:39,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:29:39,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:29:39,870.870 INFO    ] time= 19/06/2026 23:29:39
[2026-06-19 23:29:39,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:29:39,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:29:39,954.954 INFO    ] No existing commands found in stream
[2026-06-19 23:29:44,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:29:44,969.969 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 23:29:48,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:29:48,657.657 INFO    ] Checking for system updates...
[2026-06-19 23:29:48,693.693 INFO    ] 200
[2026-06-19 23:29:48,696.696 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:48,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:29:48,758.758 INFO    ] No update needed
[2026-06-19 23:29:48,761.761 INFO    ] Checking for camera pi updates...
[2026-06-19 23:29:48,798.798 INFO    ] 200
[2026-06-19 23:29:48,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:29:48,845.845 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:29:48,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:29:48,887.887 INFO    ] No camera update needed
[2026-06-19 23:29:48,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:29:48,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:29:48,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:29:48,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:29:50,943.943 INFO    ] ================================================
[2026-06-19 23:29:50,958.958 INFO    ] Launching Daemon at Fri Jun 19 23:29:50 IST 2026
[2026-06-19 23:29:50,969.969 INFO    ] ================================================
[2026-06-19 23:29:51,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:29:51
[2026-06-19 23:29:52,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:29:52,419.419 INFO    ] Initializing speech engine...
[2026-06-19 23:29:52,428.428 INFO    ] 2026-06-19 23:29:52
[2026-06-19 23:29:52,688.688 INFO    ] 2026-06-19 23:29:52
[2026-06-19 23:29:52,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:29:52,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:29:52,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:29:53,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:29:53,145.145 INFO    ] time= 19/06/2026 23:29:53
[2026-06-19 23:29:53,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:29:53,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:29:53,291.291 INFO    ] No existing commands found in stream
[2026-06-19 23:29:58,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:29:58,306.306 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-19 23:30:00,151.151 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:30:00,154.154 INFO    ] Checking for system updates...
[2026-06-19 23:30:00,190.190 INFO    ] 200
[2026-06-19 23:30:00,192.192 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:00,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:30:00,253.253 INFO    ] No update needed
[2026-06-19 23:30:00,256.256 INFO    ] Checking for camera pi updates...
[2026-06-19 23:30:00,290.290 INFO    ] 200
[2026-06-19 23:30:00,292.292 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:00,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:30:00,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:30:00,383.383 INFO    ] No camera update needed
[2026-06-19 23:30:00,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:30:00,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:30:00,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:30:00,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:30:02,457.457 INFO    ] ================================================
[2026-06-19 23:30:02,542.542 INFO    ] Launching Daemon at Fri Jun 19 23:30:02 IST 2026
[2026-06-19 23:30:02,567.567 INFO    ] ================================================
[2026-06-19 23:30:03,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:30:03
[2026-06-19 23:30:04,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:30:04,470.470 INFO    ] Initializing speech engine...
[2026-06-19 23:30:04,479.479 INFO    ] 2026-06-19 23:30:04
[2026-06-19 23:30:04,773.773 INFO    ] 2026-06-19 23:30:04
[2026-06-19 23:30:04,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:30:05,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:30:05,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:30:05,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:30:05,173.173 INFO    ] time= 19/06/2026 23:30:05
[2026-06-19 23:30:05,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:30:05,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:30:05,282.282 INFO    ] No existing commands found in stream
[2026-06-19 23:30:10,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:30:10,300.300 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-19 23:30:13,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:30:13,302.302 INFO    ] Checking for system updates...
[2026-06-19 23:30:13,338.338 INFO    ] 200
[2026-06-19 23:30:13,340.340 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:13,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:30:13,397.397 INFO    ] No update needed
[2026-06-19 23:30:13,399.399 INFO    ] Checking for camera pi updates...
[2026-06-19 23:30:13,438.438 INFO    ] 200
[2026-06-19 23:30:13,441.441 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:13,486.486 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:30:13,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:30:13,640.640 INFO    ] No camera update needed
[2026-06-19 23:30:13,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:30:13,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:30:13,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:30:13,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:30:15,698.698 INFO    ] ================================================
[2026-06-19 23:30:15,713.713 INFO    ] Launching Daemon at Fri Jun 19 23:30:15 IST 2026
[2026-06-19 23:30:15,723.723 INFO    ] ================================================
[2026-06-19 23:30:16,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:30:16
[2026-06-19 23:30:16,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:30:17,129.129 INFO    ] Initializing speech engine...
[2026-06-19 23:30:17,138.138 INFO    ] 2026-06-19 23:30:17
[2026-06-19 23:30:17,429.429 INFO    ] 2026-06-19 23:30:17
[2026-06-19 23:30:17,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:30:17,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:30:17,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:30:17,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:30:17,778.778 INFO    ] time= 19/06/2026 23:30:17
[2026-06-19 23:30:17,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:30:17,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:30:17,862.862 INFO    ] No existing commands found in stream
[2026-06-19 23:30:22,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:30:22,880.880 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-19 23:30:26,388.388 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:30:26,391.391 INFO    ] Checking for system updates...
[2026-06-19 23:30:26,429.429 INFO    ] 200
[2026-06-19 23:30:26,432.432 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:26,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:30:26,493.493 INFO    ] No update needed
[2026-06-19 23:30:26,495.495 INFO    ] Checking for camera pi updates...
[2026-06-19 23:30:26,530.530 INFO    ] 200
[2026-06-19 23:30:26,532.532 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:26,577.577 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:30:26,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:30:26,627.627 INFO    ] No camera update needed
[2026-06-19 23:30:26,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:30:26,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:30:26,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:30:26,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:30:28,682.682 INFO    ] ================================================
[2026-06-19 23:30:28,697.697 INFO    ] Launching Daemon at Fri Jun 19 23:30:28 IST 2026
[2026-06-19 23:30:28,707.707 INFO    ] ================================================
[2026-06-19 23:30:29,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:30:29
[2026-06-19 23:30:29,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:30:30,130.130 INFO    ] Initializing speech engine...
[2026-06-19 23:30:30,147.147 INFO    ] 2026-06-19 23:30:30
[2026-06-19 23:30:30,433.433 INFO    ] 2026-06-19 23:30:30
[2026-06-19 23:30:30,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:30:30,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:30:30,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:30:30,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:30:30,851.851 INFO    ] time= 19/06/2026 23:30:30
[2026-06-19 23:30:30,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:30:30,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:30:30,936.936 INFO    ] No existing commands found in stream
[2026-06-19 23:30:35,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:30:35,957.957 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-19 23:30:39,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:30:39,649.649 INFO    ] Checking for system updates...
[2026-06-19 23:30:39,686.686 INFO    ] 200
[2026-06-19 23:30:39,689.689 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:39,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:30:39,745.745 INFO    ] No update needed
[2026-06-19 23:30:39,748.748 INFO    ] Checking for camera pi updates...
[2026-06-19 23:30:39,784.784 INFO    ] 200
[2026-06-19 23:30:39,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:39,834.834 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:30:39,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:30:39,881.881 INFO    ] No camera update needed
[2026-06-19 23:30:39,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:30:39,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:30:39,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:30:39,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:30:41,937.937 INFO    ] ================================================
[2026-06-19 23:30:41,953.953 INFO    ] Launching Daemon at Fri Jun 19 23:30:41 IST 2026
[2026-06-19 23:30:41,964.964 INFO    ] ================================================
[2026-06-19 23:30:42,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:30:42
[2026-06-19 23:30:43,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:30:43,406.406 INFO    ] Initializing speech engine...
[2026-06-19 23:30:43,416.416 INFO    ] 2026-06-19 23:30:43
[2026-06-19 23:30:43,672.672 INFO    ] 2026-06-19 23:30:43
[2026-06-19 23:30:43,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:30:43,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:30:43,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:30:44,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:30:44,159.159 INFO    ] time= 19/06/2026 23:30:44
[2026-06-19 23:30:44,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:30:44,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:30:44,337.337 INFO    ] No existing commands found in stream
[2026-06-19 23:30:49,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:30:49,365.365 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 23:30:50,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:30:50,154.154 INFO    ] Checking for system updates...
[2026-06-19 23:30:50,191.191 INFO    ] 200
[2026-06-19 23:30:50,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:50,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:30:50,260.260 INFO    ] No update needed
[2026-06-19 23:30:50,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 23:30:50,301.301 INFO    ] 200
[2026-06-19 23:30:50,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:30:50,350.350 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:30:50,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:30:50,404.404 INFO    ] No camera update needed
[2026-06-19 23:30:50,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:30:50,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:30:50,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:30:50,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:30:52,461.461 INFO    ] ================================================
[2026-06-19 23:30:52,477.477 INFO    ] Launching Daemon at Fri Jun 19 23:30:52 IST 2026
[2026-06-19 23:30:52,493.493 INFO    ] ================================================
[2026-06-19 23:30:53,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:30:53
[2026-06-19 23:30:53,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:30:53,900.900 INFO    ] Initializing speech engine...
[2026-06-19 23:30:53,916.916 INFO    ] 2026-06-19 23:30:53
[2026-06-19 23:30:54,171.171 INFO    ] 2026-06-19 23:30:54
[2026-06-19 23:30:54,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:30:54,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:30:54,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:30:54,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:30:54,637.637 INFO    ] time= 19/06/2026 23:30:54
[2026-06-19 23:30:54,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:30:54,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:30:54,799.799 INFO    ] No existing commands found in stream
[2026-06-19 23:30:59,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:30:59,813.813 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-19 23:31:00,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:31:00,449.449 INFO    ] Checking for system updates...
[2026-06-19 23:31:00,489.489 INFO    ] 200
[2026-06-19 23:31:00,492.492 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:00,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:31:00,548.548 INFO    ] No update needed
[2026-06-19 23:31:00,551.551 INFO    ] Checking for camera pi updates...
[2026-06-19 23:31:00,588.588 INFO    ] 200
[2026-06-19 23:31:00,591.591 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:00,632.632 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:31:00,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:31:00,684.684 INFO    ] No camera update needed
[2026-06-19 23:31:00,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:31:00,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:31:00,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:31:00,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:31:02,753.753 INFO    ] ================================================
[2026-06-19 23:31:02,773.773 INFO    ] Launching Daemon at Fri Jun 19 23:31:02 IST 2026
[2026-06-19 23:31:02,790.790 INFO    ] ================================================
[2026-06-19 23:31:03,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:31:03
[2026-06-19 23:31:04,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:31:04,353.353 INFO    ] Initializing speech engine...
[2026-06-19 23:31:04,362.362 INFO    ] 2026-06-19 23:31:04
[2026-06-19 23:31:04,657.657 INFO    ] 2026-06-19 23:31:04
[2026-06-19 23:31:04,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:31:04,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:31:04,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:31:05,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:31:05,157.157 INFO    ] time= 19/06/2026 23:31:05
[2026-06-19 23:31:05,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:31:05,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:31:05,300.300 INFO    ] No existing commands found in stream
[2026-06-19 23:31:10,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:31:10,317.317 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-19 23:31:12,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:31:12,156.156 INFO    ] Checking for system updates...
[2026-06-19 23:31:12,199.199 INFO    ] 200
[2026-06-19 23:31:12,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:12,259.259 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:31:12,261.261 INFO    ] No update needed
[2026-06-19 23:31:12,264.264 INFO    ] Checking for camera pi updates...
[2026-06-19 23:31:12,300.300 INFO    ] 200
[2026-06-19 23:31:12,303.303 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:12,346.346 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:31:12,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:31:12,410.410 INFO    ] No camera update needed
[2026-06-19 23:31:12,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:31:12,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:31:12,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:31:12,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:31:14,471.471 INFO    ] ================================================
[2026-06-19 23:31:14,487.487 INFO    ] Launching Daemon at Fri Jun 19 23:31:14 IST 2026
[2026-06-19 23:31:14,498.498 INFO    ] ================================================
[2026-06-19 23:31:15,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:31:15
[2026-06-19 23:31:15,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:31:15,965.965 INFO    ] Initializing speech engine...
[2026-06-19 23:31:15,984.984 INFO    ] 2026-06-19 23:31:15
[2026-06-19 23:31:16,248.248 INFO    ] 2026-06-19 23:31:16
[2026-06-19 23:31:16,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:31:16,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:31:16,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:31:16,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:31:16,746.746 INFO    ] time= 19/06/2026 23:31:16
[2026-06-19 23:31:16,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:31:16,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:31:16,944.944 INFO    ] No existing commands found in stream
[2026-06-19 23:31:21,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:31:21,970.970 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-19 23:31:24,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:31:24,847.847 INFO    ] Checking for system updates...
[2026-06-19 23:31:24,887.887 INFO    ] 200
[2026-06-19 23:31:24,890.890 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:24,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:31:24,946.946 INFO    ] No update needed
[2026-06-19 23:31:24,949.949 INFO    ] Checking for camera pi updates...
[2026-06-19 23:31:24,986.986 INFO    ] 200
[2026-06-19 23:31:24,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:25,030.030 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:31:25,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:31:25,080.080 INFO    ] No camera update needed
[2026-06-19 23:31:25,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:31:25,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:31:25,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:31:25,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:31:27,134.134 INFO    ] ================================================
[2026-06-19 23:31:27,151.151 INFO    ] Launching Daemon at Fri Jun 19 23:31:27 IST 2026
[2026-06-19 23:31:27,162.162 INFO    ] ================================================
[2026-06-19 23:31:27,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:31:27
[2026-06-19 23:31:28,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:31:28,597.597 INFO    ] Initializing speech engine...
[2026-06-19 23:31:28,608.608 INFO    ] 2026-06-19 23:31:28
[2026-06-19 23:31:28,860.860 INFO    ] 2026-06-19 23:31:28
[2026-06-19 23:31:28,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:31:29,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:31:29,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:31:29,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:31:29,241.241 INFO    ] time= 19/06/2026 23:31:29
[2026-06-19 23:31:29,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:31:29,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:31:29,321.321 INFO    ] No existing commands found in stream
[2026-06-19 23:31:34,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:31:34,359.359 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-19 23:31:37,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:31:37,994.994 INFO    ] Checking for system updates...
[2026-06-19 23:31:38,029.029 INFO    ] 200
[2026-06-19 23:31:38,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:38,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:31:38,087.087 INFO    ] No update needed
[2026-06-19 23:31:38,089.089 INFO    ] Checking for camera pi updates...
[2026-06-19 23:31:38,123.123 INFO    ] 200
[2026-06-19 23:31:38,126.126 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:38,167.167 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:31:38,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:31:38,217.217 INFO    ] No camera update needed
[2026-06-19 23:31:38,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:31:38,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:31:38,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:31:38,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:31:40,275.275 INFO    ] ================================================
[2026-06-19 23:31:40,291.291 INFO    ] Launching Daemon at Fri Jun 19 23:31:40 IST 2026
[2026-06-19 23:31:40,309.309 INFO    ] ================================================
[2026-06-19 23:31:40,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:31:40
[2026-06-19 23:31:41,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:31:41,769.769 INFO    ] Initializing speech engine...
[2026-06-19 23:31:41,775.775 INFO    ] 2026-06-19 23:31:41
[2026-06-19 23:31:42,036.036 INFO    ] 2026-06-19 23:31:42
[2026-06-19 23:31:42,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:31:42,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:31:42,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:31:42,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:31:42,528.528 INFO    ] time= 19/06/2026 23:31:42
[2026-06-19 23:31:42,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:31:42,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:31:42,641.641 INFO    ] No existing commands found in stream
[2026-06-19 23:31:47,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:31:47,656.656 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-19 23:31:49,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:31:49,752.752 INFO    ] Checking for system updates...
[2026-06-19 23:31:49,788.788 INFO    ] 200
[2026-06-19 23:31:49,790.790 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:49,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:31:49,849.849 INFO    ] No update needed
[2026-06-19 23:31:49,851.851 INFO    ] Checking for camera pi updates...
[2026-06-19 23:31:49,885.885 INFO    ] 200
[2026-06-19 23:31:49,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:31:49,928.928 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:31:49,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:31:49,962.962 INFO    ] No camera update needed
[2026-06-19 23:31:49,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:31:49,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:31:49,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:31:49,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:31:52,018.018 INFO    ] ================================================
[2026-06-19 23:31:52,034.034 INFO    ] Launching Daemon at Fri Jun 19 23:31:52 IST 2026
[2026-06-19 23:31:52,044.044 INFO    ] ================================================
[2026-06-19 23:31:52,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:31:52
[2026-06-19 23:31:53,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:31:53,558.558 INFO    ] Initializing speech engine...
[2026-06-19 23:31:53,564.564 INFO    ] 2026-06-19 23:31:53
[2026-06-19 23:31:53,841.841 INFO    ] 2026-06-19 23:31:53
[2026-06-19 23:31:53,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:31:54,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:31:54,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:31:54,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:31:54,221.221 INFO    ] time= 19/06/2026 23:31:54
[2026-06-19 23:31:54,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:31:54,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:31:54,387.387 INFO    ] No existing commands found in stream
[2026-06-19 23:31:59,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:31:59,415.415 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-19 23:32:00,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:32:00,740.740 INFO    ] Checking for system updates...
[2026-06-19 23:32:00,781.781 INFO    ] 200
[2026-06-19 23:32:00,783.783 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:00,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:32:00,847.847 INFO    ] No update needed
[2026-06-19 23:32:00,850.850 INFO    ] Checking for camera pi updates...
[2026-06-19 23:32:00,884.884 INFO    ] 200
[2026-06-19 23:32:00,887.887 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:00,929.929 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:32:00,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:32:00,977.977 INFO    ] No camera update needed
[2026-06-19 23:32:00,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:32:00,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:32:00,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:32:00,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:32:03,037.037 INFO    ] ================================================
[2026-06-19 23:32:03,060.060 INFO    ] Launching Daemon at Fri Jun 19 23:32:03 IST 2026
[2026-06-19 23:32:03,072.072 INFO    ] ================================================
[2026-06-19 23:32:03,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:32:03
[2026-06-19 23:32:04,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:32:04,546.546 INFO    ] Initializing speech engine...
[2026-06-19 23:32:04,553.553 INFO    ] 2026-06-19 23:32:04
[2026-06-19 23:32:04,812.812 INFO    ] 2026-06-19 23:32:04
[2026-06-19 23:32:04,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:32:05,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:32:05,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:32:05,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:32:05,269.269 INFO    ] time= 19/06/2026 23:32:05
[2026-06-19 23:32:05,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:32:05,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:32:05,432.432 INFO    ] No existing commands found in stream
[2026-06-19 23:32:10,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:32:10,468.468 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 23:32:14,298.298 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:32:14,301.301 INFO    ] Checking for system updates...
[2026-06-19 23:32:14,338.338 INFO    ] 200
[2026-06-19 23:32:14,341.341 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:14,395.395 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:32:14,398.398 INFO    ] No update needed
[2026-06-19 23:32:14,401.401 INFO    ] Checking for camera pi updates...
[2026-06-19 23:32:14,435.435 INFO    ] 200
[2026-06-19 23:32:14,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:14,483.483 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:32:14,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:32:14,532.532 INFO    ] No camera update needed
[2026-06-19 23:32:14,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:32:14,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:32:14,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:32:14,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:32:16,589.589 INFO    ] ================================================
[2026-06-19 23:32:16,605.605 INFO    ] Launching Daemon at Fri Jun 19 23:32:16 IST 2026
[2026-06-19 23:32:16,616.616 INFO    ] ================================================
[2026-06-19 23:32:17,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:32:17
[2026-06-19 23:32:17,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:32:18,221.221 INFO    ] Initializing speech engine...
[2026-06-19 23:32:18,231.231 INFO    ] 2026-06-19 23:32:18
[2026-06-19 23:32:18,519.519 INFO    ] 2026-06-19 23:32:18
[2026-06-19 23:32:18,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:32:18,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:32:18,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:32:18,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:32:19,039.039 INFO    ] time= 19/06/2026 23:32:18
[2026-06-19 23:32:19,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:32:19,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:32:19,233.233 INFO    ] No existing commands found in stream
[2026-06-19 23:32:24,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:32:24,262.262 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-19 23:32:25,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:32:25,241.241 INFO    ] Checking for system updates...
[2026-06-19 23:32:25,281.281 INFO    ] 200
[2026-06-19 23:32:25,284.284 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:25,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:32:25,345.345 INFO    ] No update needed
[2026-06-19 23:32:25,348.348 INFO    ] Checking for camera pi updates...
[2026-06-19 23:32:25,384.384 INFO    ] 200
[2026-06-19 23:32:25,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:25,429.429 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:32:25,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:32:25,583.583 INFO    ] No camera update needed
[2026-06-19 23:32:25,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:32:25,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:32:25,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:32:25,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:32:27,639.639 INFO    ] ================================================
[2026-06-19 23:32:27,654.654 INFO    ] Launching Daemon at Fri Jun 19 23:32:27 IST 2026
[2026-06-19 23:32:27,665.665 INFO    ] ================================================
[2026-06-19 23:32:28,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:32:28
[2026-06-19 23:32:28,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:32:29,113.113 INFO    ] Initializing speech engine...
[2026-06-19 23:32:29,119.119 INFO    ] 2026-06-19 23:32:29
[2026-06-19 23:32:29,381.381 INFO    ] 2026-06-19 23:32:29
[2026-06-19 23:32:29,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:32:29,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:32:29,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:32:29,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:32:29,867.867 INFO    ] time= 19/06/2026 23:32:29
[2026-06-19 23:32:29,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:32:29,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:32:29,992.992 INFO    ] No existing commands found in stream
[2026-06-19 23:32:35,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:32:35,007.007 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-19 23:32:36,423.423 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:32:36,425.425 INFO    ] Checking for system updates...
[2026-06-19 23:32:36,461.461 INFO    ] 200
[2026-06-19 23:32:36,463.463 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:36,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:32:36,518.518 INFO    ] No update needed
[2026-06-19 23:32:36,521.521 INFO    ] Checking for camera pi updates...
[2026-06-19 23:32:36,558.558 INFO    ] 200
[2026-06-19 23:32:36,560.560 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:36,605.605 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:32:36,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:32:36,652.652 INFO    ] No camera update needed
[2026-06-19 23:32:36,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:32:36,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:32:36,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:32:36,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:32:38,709.709 INFO    ] ================================================
[2026-06-19 23:32:38,725.725 INFO    ] Launching Daemon at Fri Jun 19 23:32:38 IST 2026
[2026-06-19 23:32:38,736.736 INFO    ] ================================================
[2026-06-19 23:32:39,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:32:39
[2026-06-19 23:32:39,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:32:40,148.148 INFO    ] Initializing speech engine...
[2026-06-19 23:32:40,171.171 INFO    ] 2026-06-19 23:32:40
[2026-06-19 23:32:40,428.428 INFO    ] 2026-06-19 23:32:40
[2026-06-19 23:32:40,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:32:40,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:32:40,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:32:40,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:32:40,890.890 INFO    ] time= 19/06/2026 23:32:40
[2026-06-19 23:32:40,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:32:41,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:32:41,064.064 INFO    ] No existing commands found in stream
[2026-06-19 23:32:46,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:32:46,078.078 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-19 23:32:48,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:32:48,829.829 INFO    ] Checking for system updates...
[2026-06-19 23:32:48,869.869 INFO    ] 200
[2026-06-19 23:32:48,871.871 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:48,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:32:48,926.926 INFO    ] No update needed
[2026-06-19 23:32:48,928.928 INFO    ] Checking for camera pi updates...
[2026-06-19 23:32:48,962.962 INFO    ] 200
[2026-06-19 23:32:48,964.964 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:49,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:32:49,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:32:49,085.085 INFO    ] No camera update needed
[2026-06-19 23:32:49,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:32:49,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:32:49,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:32:49,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:32:51,141.141 INFO    ] ================================================
[2026-06-19 23:32:51,157.157 INFO    ] Launching Daemon at Fri Jun 19 23:32:51 IST 2026
[2026-06-19 23:32:51,174.174 INFO    ] ================================================
[2026-06-19 23:32:51,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:32:51
[2026-06-19 23:32:52,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:32:52,624.624 INFO    ] Initializing speech engine...
[2026-06-19 23:32:52,642.642 INFO    ] 2026-06-19 23:32:52
[2026-06-19 23:32:52,916.916 INFO    ] 2026-06-19 23:32:52
[2026-06-19 23:32:52,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:32:53,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:32:53,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:32:53,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:32:53,321.321 INFO    ] time= 19/06/2026 23:32:53
[2026-06-19 23:32:53,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:32:53,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:32:53,420.420 INFO    ] No existing commands found in stream
[2026-06-19 23:32:58,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:32:58,459.459 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-19 23:32:59,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:32:59,652.652 INFO    ] Checking for system updates...
[2026-06-19 23:32:59,688.688 INFO    ] 200
[2026-06-19 23:32:59,690.690 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:59,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:32:59,747.747 INFO    ] No update needed
[2026-06-19 23:32:59,750.750 INFO    ] Checking for camera pi updates...
[2026-06-19 23:32:59,784.784 INFO    ] 200
[2026-06-19 23:32:59,787.787 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:32:59,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:32:59,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:32:59,881.881 INFO    ] No camera update needed
[2026-06-19 23:32:59,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:32:59,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:32:59,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:32:59,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:33:01,945.945 INFO    ] ================================================
[2026-06-19 23:33:01,964.964 INFO    ] Launching Daemon at Fri Jun 19 23:33:01 IST 2026
[2026-06-19 23:33:01,978.978 INFO    ] ================================================
[2026-06-19 23:33:02,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:33:02
[2026-06-19 23:33:03,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:33:03,484.484 INFO    ] Initializing speech engine...
[2026-06-19 23:33:03,492.492 INFO    ] 2026-06-19 23:33:03
[2026-06-19 23:33:03,767.767 INFO    ] 2026-06-19 23:33:03
[2026-06-19 23:33:03,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:33:04,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:33:04,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:33:04,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:33:04,213.213 INFO    ] time= 19/06/2026 23:33:04
[2026-06-19 23:33:04,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:33:04,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:33:04,367.367 INFO    ] No existing commands found in stream
[2026-06-19 23:33:09,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:33:09,382.382 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-19 23:33:10,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:33:10,905.905 INFO    ] Checking for system updates...
[2026-06-19 23:33:10,942.942 INFO    ] 200
[2026-06-19 23:33:10,944.944 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:11,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:33:11,007.007 INFO    ] No update needed
[2026-06-19 23:33:11,009.009 INFO    ] Checking for camera pi updates...
[2026-06-19 23:33:11,047.047 INFO    ] 200
[2026-06-19 23:33:11,049.049 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:11,090.090 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:33:11,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:33:11,138.138 INFO    ] No camera update needed
[2026-06-19 23:33:11,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:33:11,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:33:11,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:33:11,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:33:13,196.196 INFO    ] ================================================
[2026-06-19 23:33:13,211.211 INFO    ] Launching Daemon at Fri Jun 19 23:33:13 IST 2026
[2026-06-19 23:33:13,228.228 INFO    ] ================================================
[2026-06-19 23:33:13,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:33:13
[2026-06-19 23:33:14,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:33:14,638.638 INFO    ] Initializing speech engine...
[2026-06-19 23:33:14,654.654 INFO    ] 2026-06-19 23:33:14
[2026-06-19 23:33:14,907.907 INFO    ] 2026-06-19 23:33:14
[2026-06-19 23:33:14,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:33:15,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:33:15,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:33:15,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:33:15,286.286 INFO    ] time= 19/06/2026 23:33:15
[2026-06-19 23:33:15,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:33:15,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:33:15,362.362 INFO    ] No existing commands found in stream
[2026-06-19 23:33:20,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:33:20,377.377 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 23:33:21,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:33:21,404.404 INFO    ] Checking for system updates...
[2026-06-19 23:33:21,440.440 INFO    ] 200
[2026-06-19 23:33:21,443.443 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:21,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:33:21,498.498 INFO    ] No update needed
[2026-06-19 23:33:21,500.500 INFO    ] Checking for camera pi updates...
[2026-06-19 23:33:21,539.539 INFO    ] 200
[2026-06-19 23:33:21,541.541 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:21,582.582 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:33:21,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:33:21,629.629 INFO    ] No camera update needed
[2026-06-19 23:33:21,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:33:21,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:33:21,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:33:21,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:33:23,685.685 INFO    ] ================================================
[2026-06-19 23:33:23,700.700 INFO    ] Launching Daemon at Fri Jun 19 23:33:23 IST 2026
[2026-06-19 23:33:23,711.711 INFO    ] ================================================
[2026-06-19 23:33:24,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:33:24
[2026-06-19 23:33:24,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:33:25,178.178 INFO    ] Initializing speech engine...
[2026-06-19 23:33:25,187.187 INFO    ] 2026-06-19 23:33:25
[2026-06-19 23:33:25,460.460 INFO    ] 2026-06-19 23:33:25
[2026-06-19 23:33:25,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:33:25,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:33:25,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:33:25,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:33:25,998.998 INFO    ] time= 19/06/2026 23:33:25
[2026-06-19 23:33:26,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:33:26,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:33:26,142.142 INFO    ] No existing commands found in stream
[2026-06-19 23:33:31,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:33:31,167.167 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-19 23:33:34,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:33:34,331.331 INFO    ] Checking for system updates...
[2026-06-19 23:33:34,367.367 INFO    ] 200
[2026-06-19 23:33:34,370.370 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:34,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:33:34,427.427 INFO    ] No update needed
[2026-06-19 23:33:34,430.430 INFO    ] Checking for camera pi updates...
[2026-06-19 23:33:34,464.464 INFO    ] 200
[2026-06-19 23:33:34,467.467 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:34,508.508 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:33:34,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:33:34,562.562 INFO    ] No camera update needed
[2026-06-19 23:33:34,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:33:34,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:33:34,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:33:34,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:33:36,620.620 INFO    ] ================================================
[2026-06-19 23:33:36,635.635 INFO    ] Launching Daemon at Fri Jun 19 23:33:36 IST 2026
[2026-06-19 23:33:36,646.646 INFO    ] ================================================
[2026-06-19 23:33:37,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:33:37
[2026-06-19 23:33:37,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:33:38,289.289 INFO    ] Initializing speech engine...
[2026-06-19 23:33:38,303.303 INFO    ] 2026-06-19 23:33:38
[2026-06-19 23:33:38,620.620 INFO    ] 2026-06-19 23:33:38
[2026-06-19 23:33:38,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:33:38,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:33:38,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:33:39,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:33:39,149.149 INFO    ] time= 19/06/2026 23:33:39
[2026-06-19 23:33:39,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:33:39,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:33:39,288.288 INFO    ] No existing commands found in stream
[2026-06-19 23:33:44,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:33:44,320.320 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-19 23:33:47,158.158 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:33:47,161.161 INFO    ] Checking for system updates...
[2026-06-19 23:33:47,199.199 INFO    ] 200
[2026-06-19 23:33:47,202.202 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:47,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:33:47,259.259 INFO    ] No update needed
[2026-06-19 23:33:47,262.262 INFO    ] Checking for camera pi updates...
[2026-06-19 23:33:47,301.301 INFO    ] 200
[2026-06-19 23:33:47,304.304 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:47,357.357 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:33:47,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:33:47,401.401 INFO    ] No camera update needed
[2026-06-19 23:33:47,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:33:47,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:33:47,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:33:47,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:33:49,460.460 INFO    ] ================================================
[2026-06-19 23:33:49,475.475 INFO    ] Launching Daemon at Fri Jun 19 23:33:49 IST 2026
[2026-06-19 23:33:49,486.486 INFO    ] ================================================
[2026-06-19 23:33:50,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:33:50
[2026-06-19 23:33:50,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:33:51,019.019 INFO    ] Initializing speech engine...
[2026-06-19 23:33:51,031.031 INFO    ] 2026-06-19 23:33:51
[2026-06-19 23:33:51,310.310 INFO    ] 2026-06-19 23:33:51
[2026-06-19 23:33:51,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:33:51,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:33:51,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:33:51,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:33:51,788.788 INFO    ] time= 19/06/2026 23:33:51
[2026-06-19 23:33:51,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:33:51,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:33:51,943.943 INFO    ] No existing commands found in stream
[2026-06-19 23:33:56,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:33:56,956.956 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-19 23:33:58,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:33:58,674.674 INFO    ] Checking for system updates...
[2026-06-19 23:33:58,715.715 INFO    ] 200
[2026-06-19 23:33:58,718.718 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:58,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:33:58,775.775 INFO    ] No update needed
[2026-06-19 23:33:58,778.778 INFO    ] Checking for camera pi updates...
[2026-06-19 23:33:58,813.813 INFO    ] 200
[2026-06-19 23:33:58,816.816 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:33:58,863.863 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:33:58,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:33:58,916.916 INFO    ] No camera update needed
[2026-06-19 23:33:58,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:33:58,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:33:58,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:33:58,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:34:00,974.974 INFO    ] ================================================
[2026-06-19 23:34:00,989.989 INFO    ] Launching Daemon at Fri Jun 19 23:34:00 IST 2026
[2026-06-19 23:34:01,000.000 INFO    ] ================================================
[2026-06-19 23:34:01,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:34:01
[2026-06-19 23:34:02,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:34:02,839.839 INFO    ] Initializing speech engine...
[2026-06-19 23:34:02,854.854 INFO    ] 2026-06-19 23:34:02
[2026-06-19 23:34:03,191.191 INFO    ] 2026-06-19 23:34:03
[2026-06-19 23:34:03,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:34:03,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:34:03,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:34:03,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:34:03,619.619 INFO    ] time= 19/06/2026 23:34:03
[2026-06-19 23:34:03,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:34:03,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:34:03,779.779 INFO    ] No existing commands found in stream
[2026-06-19 23:34:08,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:34:08,804.804 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-19 23:34:13,185.185 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:34:13,188.188 INFO    ] Checking for system updates...
[2026-06-19 23:34:13,223.223 INFO    ] 200
[2026-06-19 23:34:13,226.226 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:34:13,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:34:13,281.281 INFO    ] No update needed
[2026-06-19 23:34:13,283.283 INFO    ] Checking for camera pi updates...
[2026-06-19 23:34:13,316.316 INFO    ] 200
[2026-06-19 23:34:13,319.319 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:34:13,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:34:13,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:34:13,416.416 INFO    ] No camera update needed
[2026-06-19 23:34:13,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:34:13,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:34:13,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:34:13,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:34:15,475.475 INFO    ] ================================================
[2026-06-19 23:34:15,491.491 INFO    ] Launching Daemon at Fri Jun 19 23:34:15 IST 2026
[2026-06-19 23:34:15,502.502 INFO    ] ================================================
[2026-06-19 23:34:16,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:34:16
[2026-06-19 23:34:16,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:34:16,937.937 INFO    ] Initializing speech engine...
[2026-06-19 23:34:16,945.945 INFO    ] 2026-06-19 23:34:16
[2026-06-19 23:34:17,198.198 INFO    ] 2026-06-19 23:34:17
[2026-06-19 23:34:17,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:34:17,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:34:17,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:34:17,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:34:17,538.538 INFO    ] time= 19/06/2026 23:34:17
[2026-06-19 23:34:17,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:34:17,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:34:17,653.653 INFO    ] No existing commands found in stream
[2026-06-19 23:34:22,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:34:22,686.686 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-19 23:34:24,562.562 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:34:24,564.564 INFO    ] Checking for system updates...
[2026-06-19 23:34:24,601.601 INFO    ] 200
[2026-06-19 23:34:24,603.603 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:34:24,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:34:24,658.658 INFO    ] No update needed
[2026-06-19 23:34:24,661.661 INFO    ] Checking for camera pi updates...
[2026-06-19 23:34:24,694.694 INFO    ] 200
[2026-06-19 23:34:24,697.697 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:34:24,738.738 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:34:24,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:34:24,783.783 INFO    ] No camera update needed
[2026-06-19 23:34:24,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:34:24,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:34:24,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:34:24,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:34:26,838.838 INFO    ] ================================================
[2026-06-19 23:34:26,853.853 INFO    ] Launching Daemon at Fri Jun 19 23:34:26 IST 2026
[2026-06-19 23:34:26,864.864 INFO    ] ================================================
[2026-06-19 23:34:27,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:34:27
[2026-06-19 23:34:28,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:34:28,432.432 INFO    ] Initializing speech engine...
[2026-06-19 23:34:28,446.446 INFO    ] 2026-06-19 23:34:28
[2026-06-19 23:34:28,732.732 INFO    ] 2026-06-19 23:34:28
[2026-06-19 23:34:28,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:34:29,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:34:29,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:34:29,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:34:29,270.270 INFO    ] time= 19/06/2026 23:34:29
[2026-06-19 23:34:29,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:34:29,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:34:29,429.429 INFO    ] No existing commands found in stream
[2026-06-19 23:34:34,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:34:34,456.456 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-19 23:34:38,757.757 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:34:38,761.761 INFO    ] Checking for system updates...
[2026-06-19 23:34:38,797.797 INFO    ] 200
[2026-06-19 23:34:38,800.800 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:34:38,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:34:38,862.862 INFO    ] No update needed
[2026-06-19 23:34:38,865.865 INFO    ] Checking for camera pi updates...
[2026-06-19 23:34:38,898.898 INFO    ] 200
[2026-06-19 23:34:38,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:34:38,943.943 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:34:38,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:34:38,990.990 INFO    ] No camera update needed
[2026-06-19 23:34:38,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:34:38,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:34:39,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:34:39,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:34:41,045.045 INFO    ] ================================================
[2026-06-19 23:34:41,060.060 INFO    ] Launching Daemon at Fri Jun 19 23:34:41 IST 2026
[2026-06-19 23:34:41,072.072 INFO    ] ================================================
[2026-06-19 23:34:41,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:34:41
[2026-06-19 23:34:42,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:34:42,472.472 INFO    ] Initializing speech engine...
[2026-06-19 23:34:42,480.480 INFO    ] 2026-06-19 23:34:42
[2026-06-19 23:34:42,755.755 INFO    ] 2026-06-19 23:34:42
[2026-06-19 23:34:42,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:34:42,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:34:42,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:34:43,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:34:43,134.134 INFO    ] time= 19/06/2026 23:34:43
[2026-06-19 23:34:43,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:34:43,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:34:43,329.329 INFO    ] No existing commands found in stream
[2026-06-19 23:34:48,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:34:48,349.349 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 23:34:51,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:34:51,844.844 INFO    ] Checking for system updates...
[2026-06-19 23:34:51,898.898 INFO    ] 200
[2026-06-19 23:34:51,901.901 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:34:51,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:34:51,964.964 INFO    ] No update needed
[2026-06-19 23:34:51,971.971 INFO    ] Checking for camera pi updates...
[2026-06-19 23:34:52,018.018 INFO    ] 200
[2026-06-19 23:34:52,021.021 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:34:52,071.071 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:34:52,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:34:52,125.125 INFO    ] No camera update needed
[2026-06-19 23:34:52,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:34:52,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:34:52,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:34:52,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:34:54,183.183 INFO    ] ================================================
[2026-06-19 23:34:54,198.198 INFO    ] Launching Daemon at Fri Jun 19 23:34:54 IST 2026
[2026-06-19 23:34:54,209.209 INFO    ] ================================================
[2026-06-19 23:34:54,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:34:54
[2026-06-19 23:34:55,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:34:55,699.699 INFO    ] Initializing speech engine...
[2026-06-19 23:34:55,705.705 INFO    ] 2026-06-19 23:34:55
[2026-06-19 23:34:55,963.963 INFO    ] 2026-06-19 23:34:55
[2026-06-19 23:34:55,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:34:56,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:34:56,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:34:56,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:34:56,487.487 INFO    ] time= 19/06/2026 23:34:56
[2026-06-19 23:34:56,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:34:56,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:34:56,656.656 INFO    ] No existing commands found in stream
[2026-06-19 23:35:01,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:35:01,671.671 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-19 23:35:05,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:35:05,662.662 INFO    ] Checking for system updates...
[2026-06-19 23:35:05,703.703 INFO    ] 200
[2026-06-19 23:35:05,706.706 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:05,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:35:05,761.761 INFO    ] No update needed
[2026-06-19 23:35:05,763.763 INFO    ] Checking for camera pi updates...
[2026-06-19 23:35:05,802.802 INFO    ] 200
[2026-06-19 23:35:05,805.805 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:05,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:35:05,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:35:05,902.902 INFO    ] No camera update needed
[2026-06-19 23:35:05,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:35:05,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:35:05,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:35:05,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:35:07,964.964 INFO    ] ================================================
[2026-06-19 23:35:07,980.980 INFO    ] Launching Daemon at Fri Jun 19 23:35:07 IST 2026
[2026-06-19 23:35:07,991.991 INFO    ] ================================================
[2026-06-19 23:35:08,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:35:08
[2026-06-19 23:35:09,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:35:09,443.443 INFO    ] Initializing speech engine...
[2026-06-19 23:35:09,466.466 INFO    ] 2026-06-19 23:35:09
[2026-06-19 23:35:09,723.723 INFO    ] 2026-06-19 23:35:09
[2026-06-19 23:35:09,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:35:10,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:35:10,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:35:10,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:35:10,221.221 INFO    ] time= 19/06/2026 23:35:10
[2026-06-19 23:35:10,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:35:10,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:35:10,355.355 INFO    ] No existing commands found in stream
[2026-06-19 23:35:15,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:35:15,369.369 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 23:35:18,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:35:18,575.575 INFO    ] Checking for system updates...
[2026-06-19 23:35:18,612.612 INFO    ] 200
[2026-06-19 23:35:18,615.615 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:18,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:35:18,670.670 INFO    ] No update needed
[2026-06-19 23:35:18,672.672 INFO    ] Checking for camera pi updates...
[2026-06-19 23:35:18,710.710 INFO    ] 200
[2026-06-19 23:35:18,712.712 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:18,754.754 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:35:18,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:35:18,812.812 INFO    ] No camera update needed
[2026-06-19 23:35:18,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:35:18,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:35:18,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:35:18,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:35:20,867.867 INFO    ] ================================================
[2026-06-19 23:35:20,882.882 INFO    ] Launching Daemon at Fri Jun 19 23:35:20 IST 2026
[2026-06-19 23:35:20,893.893 INFO    ] ================================================
[2026-06-19 23:35:21,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:35:21
[2026-06-19 23:35:22,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:35:22,355.355 INFO    ] Initializing speech engine...
[2026-06-19 23:35:22,363.363 INFO    ] 2026-06-19 23:35:22
[2026-06-19 23:35:22,639.639 INFO    ] 2026-06-19 23:35:22
[2026-06-19 23:35:22,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:35:22,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:35:22,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:35:23,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:35:23,022.022 INFO    ] time= 19/06/2026 23:35:23
[2026-06-19 23:35:23,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:35:23,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:35:23,214.214 INFO    ] No existing commands found in stream
[2026-06-19 23:35:28,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:35:28,234.234 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-19 23:35:29,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:35:29,504.504 INFO    ] Checking for system updates...
[2026-06-19 23:35:29,544.544 INFO    ] 200
[2026-06-19 23:35:29,546.546 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:29,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:35:29,602.602 INFO    ] No update needed
[2026-06-19 23:35:29,605.605 INFO    ] Checking for camera pi updates...
[2026-06-19 23:35:29,644.644 INFO    ] 200
[2026-06-19 23:35:29,647.647 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:29,698.698 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:35:29,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:35:29,747.747 INFO    ] No camera update needed
[2026-06-19 23:35:29,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:35:29,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:35:29,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:35:29,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:35:31,805.805 INFO    ] ================================================
[2026-06-19 23:35:31,821.821 INFO    ] Launching Daemon at Fri Jun 19 23:35:31 IST 2026
[2026-06-19 23:35:31,834.834 INFO    ] ================================================
[2026-06-19 23:35:32,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:35:32
[2026-06-19 23:35:33,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:35:33,383.383 INFO    ] Initializing speech engine...
[2026-06-19 23:35:33,393.393 INFO    ] 2026-06-19 23:35:33
[2026-06-19 23:35:33,639.639 INFO    ] 2026-06-19 23:35:33
[2026-06-19 23:35:33,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:35:33,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:35:33,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:35:34,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:35:34,089.089 INFO    ] time= 19/06/2026 23:35:34
[2026-06-19 23:35:34,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:35:34,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:35:34,254.254 INFO    ] No existing commands found in stream
[2026-06-19 23:35:39,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:35:39,268.268 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-19 23:35:42,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:35:42,955.955 INFO    ] Checking for system updates...
[2026-06-19 23:35:42,994.994 INFO    ] 200
[2026-06-19 23:35:42,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:43,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:35:43,060.060 INFO    ] No update needed
[2026-06-19 23:35:43,062.062 INFO    ] Checking for camera pi updates...
[2026-06-19 23:35:43,098.098 INFO    ] 200
[2026-06-19 23:35:43,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:43,145.145 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:35:43,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:35:43,196.196 INFO    ] No camera update needed
[2026-06-19 23:35:43,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:35:43,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:35:43,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:35:43,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:35:45,250.250 INFO    ] ================================================
[2026-06-19 23:35:45,266.266 INFO    ] Launching Daemon at Fri Jun 19 23:35:45 IST 2026
[2026-06-19 23:35:45,277.277 INFO    ] ================================================
[2026-06-19 23:35:45,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:35:45
[2026-06-19 23:35:46,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:35:46,801.801 INFO    ] Initializing speech engine...
[2026-06-19 23:35:46,813.813 INFO    ] 2026-06-19 23:35:46
[2026-06-19 23:35:47,078.078 INFO    ] 2026-06-19 23:35:47
[2026-06-19 23:35:47,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:35:47,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:35:47,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:35:47,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:35:47,597.597 INFO    ] time= 19/06/2026 23:35:47
[2026-06-19 23:35:47,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:35:47,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:35:47,733.733 INFO    ] No existing commands found in stream
[2026-06-19 23:35:52,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:35:52,764.764 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 23:35:54,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:35:54,930.930 INFO    ] Checking for system updates...
[2026-06-19 23:35:54,966.966 INFO    ] 200
[2026-06-19 23:35:54,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:55,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:35:55,029.029 INFO    ] No update needed
[2026-06-19 23:35:55,032.032 INFO    ] Checking for camera pi updates...
[2026-06-19 23:35:55,066.066 INFO    ] 200
[2026-06-19 23:35:55,069.069 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:35:55,109.109 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:35:55,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:35:55,154.154 INFO    ] No camera update needed
[2026-06-19 23:35:55,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:35:55,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:35:55,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:35:55,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:35:57,210.210 INFO    ] ================================================
[2026-06-19 23:35:57,225.225 INFO    ] Launching Daemon at Fri Jun 19 23:35:57 IST 2026
[2026-06-19 23:35:57,236.236 INFO    ] ================================================
[2026-06-19 23:35:57,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:35:57
[2026-06-19 23:35:58,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:35:58,703.703 INFO    ] Initializing speech engine...
[2026-06-19 23:35:58,709.709 INFO    ] 2026-06-19 23:35:58
[2026-06-19 23:35:58,971.971 INFO    ] 2026-06-19 23:35:58
[2026-06-19 23:35:59,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:35:59,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:35:59,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:35:59,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:35:59,421.421 INFO    ] time= 19/06/2026 23:35:59
[2026-06-19 23:35:59,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:35:59,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:35:59,581.581 INFO    ] No existing commands found in stream
[2026-06-19 23:36:04,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:36:04,595.595 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-19 23:36:08,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:36:08,863.863 INFO    ] Checking for system updates...
[2026-06-19 23:36:08,899.899 INFO    ] 200
[2026-06-19 23:36:08,902.902 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:08,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:36:08,964.964 INFO    ] No update needed
[2026-06-19 23:36:08,967.967 INFO    ] Checking for camera pi updates...
[2026-06-19 23:36:09,004.004 INFO    ] 200
[2026-06-19 23:36:09,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:09,052.052 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:36:09,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:36:09,108.108 INFO    ] No camera update needed
[2026-06-19 23:36:09,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:36:09,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:36:09,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:36:09,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:36:11,162.162 INFO    ] ================================================
[2026-06-19 23:36:11,177.177 INFO    ] Launching Daemon at Fri Jun 19 23:36:11 IST 2026
[2026-06-19 23:36:11,188.188 INFO    ] ================================================
[2026-06-19 23:36:11,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:36:11
[2026-06-19 23:36:12,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:36:12,637.637 INFO    ] Initializing speech engine...
[2026-06-19 23:36:12,646.646 INFO    ] 2026-06-19 23:36:12
[2026-06-19 23:36:12,896.896 INFO    ] 2026-06-19 23:36:12
[2026-06-19 23:36:12,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:36:13,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:36:13,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:36:13,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:36:13,271.271 INFO    ] time= 19/06/2026 23:36:13
[2026-06-19 23:36:13,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:36:13,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:36:13,450.450 INFO    ] No existing commands found in stream
[2026-06-19 23:36:18,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:36:18,487.487 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-19 23:36:21,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:36:21,681.681 INFO    ] Checking for system updates...
[2026-06-19 23:36:21,725.725 INFO    ] 200
[2026-06-19 23:36:21,727.727 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:21,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:36:21,783.783 INFO    ] No update needed
[2026-06-19 23:36:21,785.785 INFO    ] Checking for camera pi updates...
[2026-06-19 23:36:21,819.819 INFO    ] 200
[2026-06-19 23:36:21,822.822 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:21,866.866 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:36:21,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:36:21,919.919 INFO    ] No camera update needed
[2026-06-19 23:36:21,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:36:21,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:36:21,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:36:21,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:36:23,973.973 INFO    ] ================================================
[2026-06-19 23:36:23,988.988 INFO    ] Launching Daemon at Fri Jun 19 23:36:23 IST 2026
[2026-06-19 23:36:24,999.999 INFO    ] ================================================
[2026-06-19 23:36:24,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:36:24
[2026-06-19 23:36:25,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:36:25,418.418 INFO    ] Initializing speech engine...
[2026-06-19 23:36:25,437.437 INFO    ] 2026-06-19 23:36:25
[2026-06-19 23:36:25,689.689 INFO    ] 2026-06-19 23:36:25
[2026-06-19 23:36:25,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:36:25,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:36:25,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:36:26,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:36:26,174.174 INFO    ] time= 19/06/2026 23:36:26
[2026-06-19 23:36:26,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:36:26,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:36:26,318.318 INFO    ] No existing commands found in stream
[2026-06-19 23:36:31,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:36:31,332.332 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-19 23:36:34,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:36:34,660.660 INFO    ] Checking for system updates...
[2026-06-19 23:36:34,696.696 INFO    ] 200
[2026-06-19 23:36:34,699.699 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:34,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:36:34,763.763 INFO    ] No update needed
[2026-06-19 23:36:34,766.766 INFO    ] Checking for camera pi updates...
[2026-06-19 23:36:34,800.800 INFO    ] 200
[2026-06-19 23:36:34,802.802 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:34,850.850 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:36:35,003.003 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:36:35,005.005 INFO    ] No camera update needed
[2026-06-19 23:36:35,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:36:35,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:36:35,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:36:35,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:36:37,060.060 INFO    ] ================================================
[2026-06-19 23:36:37,075.075 INFO    ] Launching Daemon at Fri Jun 19 23:36:37 IST 2026
[2026-06-19 23:36:37,086.086 INFO    ] ================================================
[2026-06-19 23:36:37,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:36:37
[2026-06-19 23:36:38,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:36:38,506.506 INFO    ] Initializing speech engine...
[2026-06-19 23:36:38,518.518 INFO    ] 2026-06-19 23:36:38
[2026-06-19 23:36:38,766.766 INFO    ] 2026-06-19 23:36:38
[2026-06-19 23:36:38,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:36:38,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:36:38,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:36:39,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:36:39,137.137 INFO    ] time= 19/06/2026 23:36:39
[2026-06-19 23:36:39,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:36:39,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:36:39,297.297 INFO    ] No existing commands found in stream
[2026-06-19 23:36:44,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:36:44,330.330 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-19 23:36:47,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:36:47,862.862 INFO    ] Checking for system updates...
[2026-06-19 23:36:47,902.902 INFO    ] 200
[2026-06-19 23:36:47,904.904 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:47,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:36:47,961.961 INFO    ] No update needed
[2026-06-19 23:36:47,963.963 INFO    ] Checking for camera pi updates...
[2026-06-19 23:36:48,000.000 INFO    ] 200
[2026-06-19 23:36:48,002.002 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:48,046.046 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:36:48,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:36:48,091.091 INFO    ] No camera update needed
[2026-06-19 23:36:48,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:36:48,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:36:48,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:36:48,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:36:50,149.149 INFO    ] ================================================
[2026-06-19 23:36:50,164.164 INFO    ] Launching Daemon at Fri Jun 19 23:36:50 IST 2026
[2026-06-19 23:36:50,174.174 INFO    ] ================================================
[2026-06-19 23:36:50,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:36:50
[2026-06-19 23:36:51,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:36:51,614.614 INFO    ] Initializing speech engine...
[2026-06-19 23:36:51,623.623 INFO    ] 2026-06-19 23:36:51
[2026-06-19 23:36:51,889.889 INFO    ] 2026-06-19 23:36:51
[2026-06-19 23:36:51,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:36:52,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:36:52,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:36:52,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:36:52,344.344 INFO    ] time= 19/06/2026 23:36:52
[2026-06-19 23:36:52,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:36:52,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:36:52,494.494 INFO    ] No existing commands found in stream
[2026-06-19 23:36:57,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:36:57,508.508 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 23:36:59,021.021 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:36:59,024.024 INFO    ] Checking for system updates...
[2026-06-19 23:36:59,063.063 INFO    ] 200
[2026-06-19 23:36:59,065.065 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:59,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:36:59,125.125 INFO    ] No update needed
[2026-06-19 23:36:59,128.128 INFO    ] Checking for camera pi updates...
[2026-06-19 23:36:59,161.161 INFO    ] 200
[2026-06-19 23:36:59,164.164 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:36:59,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:36:59,253.253 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:36:59,256.256 INFO    ] No camera update needed
[2026-06-19 23:36:59,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:36:59,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:36:59,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:36:59,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:37:01,336.336 INFO    ] ================================================
[2026-06-19 23:37:01,365.365 INFO    ] Launching Daemon at Fri Jun 19 23:37:01 IST 2026
[2026-06-19 23:37:01,398.398 INFO    ] ================================================
[2026-06-19 23:37:02,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:37:02
[2026-06-19 23:37:02,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:37:03,022.022 INFO    ] Initializing speech engine...
[2026-06-19 23:37:03,046.046 INFO    ] 2026-06-19 23:37:03
[2026-06-19 23:37:03,312.312 INFO    ] 2026-06-19 23:37:03
[2026-06-19 23:37:03,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:37:03,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:37:03,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:37:03,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:37:03,677.677 INFO    ] time= 19/06/2026 23:37:03
[2026-06-19 23:37:03,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:37:03,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:37:03,797.797 INFO    ] No existing commands found in stream
[2026-06-19 23:37:08,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:37:08,811.811 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 23:37:10,606.606 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:37:10,609.609 INFO    ] Checking for system updates...
[2026-06-19 23:37:10,650.650 INFO    ] 200
[2026-06-19 23:37:10,652.652 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:10,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:37:10,708.708 INFO    ] No update needed
[2026-06-19 23:37:10,710.710 INFO    ] Checking for camera pi updates...
[2026-06-19 23:37:10,747.747 INFO    ] 200
[2026-06-19 23:37:10,749.749 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:10,790.790 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:37:10,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:37:10,836.836 INFO    ] No camera update needed
[2026-06-19 23:37:10,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:37:10,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:37:10,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:37:10,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:37:12,890.890 INFO    ] ================================================
[2026-06-19 23:37:12,905.905 INFO    ] Launching Daemon at Fri Jun 19 23:37:12 IST 2026
[2026-06-19 23:37:12,915.915 INFO    ] ================================================
[2026-06-19 23:37:13,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:37:13
[2026-06-19 23:37:14,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:37:14,327.327 INFO    ] Initializing speech engine...
[2026-06-19 23:37:14,346.346 INFO    ] 2026-06-19 23:37:14
[2026-06-19 23:37:14,598.598 INFO    ] 2026-06-19 23:37:14
[2026-06-19 23:37:14,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:37:14,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:37:14,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:37:15,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:37:15,084.084 INFO    ] time= 19/06/2026 23:37:15
[2026-06-19 23:37:15,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:37:15,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:37:15,224.224 INFO    ] No existing commands found in stream
[2026-06-19 23:37:20,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:37:20,239.239 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-19 23:37:22,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:37:22,586.586 INFO    ] Checking for system updates...
[2026-06-19 23:37:22,623.623 INFO    ] 200
[2026-06-19 23:37:22,625.625 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:22,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:37:22,685.685 INFO    ] No update needed
[2026-06-19 23:37:22,687.687 INFO    ] Checking for camera pi updates...
[2026-06-19 23:37:22,724.724 INFO    ] 200
[2026-06-19 23:37:22,726.726 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:22,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:37:22,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:37:22,820.820 INFO    ] No camera update needed
[2026-06-19 23:37:22,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:37:22,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:37:22,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:37:22,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:37:24,874.874 INFO    ] ================================================
[2026-06-19 23:37:24,889.889 INFO    ] Launching Daemon at Fri Jun 19 23:37:24 IST 2026
[2026-06-19 23:37:24,900.900 INFO    ] ================================================
[2026-06-19 23:37:25,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:37:25
[2026-06-19 23:37:26,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:37:26,458.458 INFO    ] Initializing speech engine...
[2026-06-19 23:37:26,469.469 INFO    ] 2026-06-19 23:37:26
[2026-06-19 23:37:26,746.746 INFO    ] 2026-06-19 23:37:26
[2026-06-19 23:37:26,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:37:27,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:37:27,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:37:27,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:37:27,231.231 INFO    ] time= 19/06/2026 23:37:27
[2026-06-19 23:37:27,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:37:27,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:37:27,415.415 INFO    ] No existing commands found in stream
[2026-06-19 23:37:32,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:37:32,447.447 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-19 23:37:33,471.471 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:37:33,474.474 INFO    ] Checking for system updates...
[2026-06-19 23:37:33,511.511 INFO    ] 200
[2026-06-19 23:37:33,514.514 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:33,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:37:33,569.569 INFO    ] No update needed
[2026-06-19 23:37:33,572.572 INFO    ] Checking for camera pi updates...
[2026-06-19 23:37:33,609.609 INFO    ] 200
[2026-06-19 23:37:33,612.612 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:33,659.659 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:37:33,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:37:33,718.718 INFO    ] No camera update needed
[2026-06-19 23:37:33,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:37:33,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:37:33,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:37:33,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:37:35,775.775 INFO    ] ================================================
[2026-06-19 23:37:35,791.791 INFO    ] Launching Daemon at Fri Jun 19 23:37:35 IST 2026
[2026-06-19 23:37:35,802.802 INFO    ] ================================================
[2026-06-19 23:37:36,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:37:36
[2026-06-19 23:37:37,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:37:37,360.360 INFO    ] Initializing speech engine...
[2026-06-19 23:37:37,372.372 INFO    ] 2026-06-19 23:37:37
[2026-06-19 23:37:37,640.640 INFO    ] 2026-06-19 23:37:37
[2026-06-19 23:37:37,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:37:37,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:37:37,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:37:38,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:37:38,150.150 INFO    ] time= 19/06/2026 23:37:38
[2026-06-19 23:37:38,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:37:38,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:37:38,319.319 INFO    ] No existing commands found in stream
[2026-06-19 23:37:43,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:37:43,348.348 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-19 23:37:46,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:37:46,168.168 INFO    ] Checking for system updates...
[2026-06-19 23:37:46,206.206 INFO    ] 200
[2026-06-19 23:37:46,208.208 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:46,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:37:46,269.269 INFO    ] No update needed
[2026-06-19 23:37:46,272.272 INFO    ] Checking for camera pi updates...
[2026-06-19 23:37:46,314.314 INFO    ] 200
[2026-06-19 23:37:46,317.317 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:46,361.361 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:37:46,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:37:46,496.496 INFO    ] No camera update needed
[2026-06-19 23:37:46,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:37:46,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:37:46,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:37:46,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:37:48,553.553 INFO    ] ================================================
[2026-06-19 23:37:48,568.568 INFO    ] Launching Daemon at Fri Jun 19 23:37:48 IST 2026
[2026-06-19 23:37:48,579.579 INFO    ] ================================================
[2026-06-19 23:37:49,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:37:49
[2026-06-19 23:37:49,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:37:50,092.092 INFO    ] Initializing speech engine...
[2026-06-19 23:37:50,101.101 INFO    ] 2026-06-19 23:37:50
[2026-06-19 23:37:50,345.345 INFO    ] 2026-06-19 23:37:50
[2026-06-19 23:37:50,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:37:50,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:37:50,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:37:50,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:37:50,715.715 INFO    ] time= 19/06/2026 23:37:50
[2026-06-19 23:37:50,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:37:50,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:37:50,872.872 INFO    ] No existing commands found in stream
[2026-06-19 23:37:55,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:37:55,899.899 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-19 23:37:56,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:37:56,568.568 INFO    ] Checking for system updates...
[2026-06-19 23:37:56,606.606 INFO    ] 200
[2026-06-19 23:37:56,609.609 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:56,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:37:56,669.669 INFO    ] No update needed
[2026-06-19 23:37:56,671.671 INFO    ] Checking for camera pi updates...
[2026-06-19 23:37:56,707.707 INFO    ] 200
[2026-06-19 23:37:56,710.710 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:37:56,752.752 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:37:56,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:37:56,798.798 INFO    ] No camera update needed
[2026-06-19 23:37:56,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:37:56,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:37:56,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:37:56,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:37:58,854.854 INFO    ] ================================================
[2026-06-19 23:37:58,869.869 INFO    ] Launching Daemon at Fri Jun 19 23:37:58 IST 2026
[2026-06-19 23:37:58,879.879 INFO    ] ================================================
[2026-06-19 23:37:59,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:37:59
[2026-06-19 23:38:00,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:38:00,331.331 INFO    ] Initializing speech engine...
[2026-06-19 23:38:00,334.334 INFO    ] 2026-06-19 23:38:00
[2026-06-19 23:38:00,601.601 INFO    ] 2026-06-19 23:38:00
[2026-06-19 23:38:00,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:38:00,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:38:00,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:38:00,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:38:00,940.940 INFO    ] time= 19/06/2026 23:38:00
[2026-06-19 23:38:00,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:38:00,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:38:01,060.060 INFO    ] No existing commands found in stream
[2026-06-19 23:38:06,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:38:06,088.088 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 23:38:09,143.143 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:38:09,146.146 INFO    ] Checking for system updates...
[2026-06-19 23:38:09,184.184 INFO    ] 200
[2026-06-19 23:38:09,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:09,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:38:09,250.250 INFO    ] No update needed
[2026-06-19 23:38:09,253.253 INFO    ] Checking for camera pi updates...
[2026-06-19 23:38:09,288.288 INFO    ] 200
[2026-06-19 23:38:09,291.291 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:09,337.337 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:38:09,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:38:09,393.393 INFO    ] No camera update needed
[2026-06-19 23:38:09,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:38:09,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:38:09,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:38:09,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:38:11,452.452 INFO    ] ================================================
[2026-06-19 23:38:11,468.468 INFO    ] Launching Daemon at Fri Jun 19 23:38:11 IST 2026
[2026-06-19 23:38:11,479.479 INFO    ] ================================================
[2026-06-19 23:38:12,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:38:12
[2026-06-19 23:38:12,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:38:13,107.107 INFO    ] Initializing speech engine...
[2026-06-19 23:38:13,118.118 INFO    ] 2026-06-19 23:38:13
[2026-06-19 23:38:13,410.410 INFO    ] 2026-06-19 23:38:13
[2026-06-19 23:38:13,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:38:13,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:38:13,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:38:13,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:38:13,943.943 INFO    ] time= 19/06/2026 23:38:13
[2026-06-19 23:38:13,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:38:13,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:38:14,099.099 INFO    ] No existing commands found in stream
[2026-06-19 23:38:19,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:38:19,120.120 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-19 23:38:21,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:38:21,554.554 INFO    ] Checking for system updates...
[2026-06-19 23:38:21,592.592 INFO    ] 200
[2026-06-19 23:38:21,595.595 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:21,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:38:21,653.653 INFO    ] No update needed
[2026-06-19 23:38:21,656.656 INFO    ] Checking for camera pi updates...
[2026-06-19 23:38:21,692.692 INFO    ] 200
[2026-06-19 23:38:21,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:21,737.737 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:38:21,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:38:21,802.802 INFO    ] No camera update needed
[2026-06-19 23:38:21,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:38:21,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:38:21,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:38:21,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:38:23,860.860 INFO    ] ================================================
[2026-06-19 23:38:23,876.876 INFO    ] Launching Daemon at Fri Jun 19 23:38:23 IST 2026
[2026-06-19 23:38:23,887.887 INFO    ] ================================================
[2026-06-19 23:38:24,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:38:24
[2026-06-19 23:38:25,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:38:25,389.389 INFO    ] Initializing speech engine...
[2026-06-19 23:38:25,403.403 INFO    ] 2026-06-19 23:38:25
[2026-06-19 23:38:25,657.657 INFO    ] 2026-06-19 23:38:25
[2026-06-19 23:38:25,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:38:25,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:38:25,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:38:26,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:38:26,139.139 INFO    ] time= 19/06/2026 23:38:26
[2026-06-19 23:38:26,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:38:26,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:38:26,279.279 INFO    ] No existing commands found in stream
[2026-06-19 23:38:31,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:38:31,298.298 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-19 23:38:33,111.111 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:38:33,114.114 INFO    ] Checking for system updates...
[2026-06-19 23:38:33,155.155 INFO    ] 200
[2026-06-19 23:38:33,157.157 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:33,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:38:33,224.224 INFO    ] No update needed
[2026-06-19 23:38:33,227.227 INFO    ] Checking for camera pi updates...
[2026-06-19 23:38:33,261.261 INFO    ] 200
[2026-06-19 23:38:33,263.263 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:33,304.304 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:38:33,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:38:33,350.350 INFO    ] No camera update needed
[2026-06-19 23:38:33,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:38:33,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:38:33,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:38:33,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:38:35,407.407 INFO    ] ================================================
[2026-06-19 23:38:35,422.422 INFO    ] Launching Daemon at Fri Jun 19 23:38:35 IST 2026
[2026-06-19 23:38:35,433.433 INFO    ] ================================================
[2026-06-19 23:38:36,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:38:36
[2026-06-19 23:38:36,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:38:37,119.119 INFO    ] Initializing speech engine...
[2026-06-19 23:38:37,125.125 INFO    ] 2026-06-19 23:38:37
[2026-06-19 23:38:37,411.411 INFO    ] 2026-06-19 23:38:37
[2026-06-19 23:38:37,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:38:37,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:38:37,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:38:37,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:38:37,805.805 INFO    ] time= 19/06/2026 23:38:37
[2026-06-19 23:38:37,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:38:37,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:38:37,981.981 INFO    ] No existing commands found in stream
[2026-06-19 23:38:43,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:38:43,009.009 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-19 23:38:45,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:38:45,041.041 INFO    ] Checking for system updates...
[2026-06-19 23:38:45,079.079 INFO    ] 200
[2026-06-19 23:38:45,082.082 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:45,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:38:45,137.137 INFO    ] No update needed
[2026-06-19 23:38:45,139.139 INFO    ] Checking for camera pi updates...
[2026-06-19 23:38:45,173.173 INFO    ] 200
[2026-06-19 23:38:45,176.176 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:45,218.218 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:38:45,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:38:45,370.370 INFO    ] No camera update needed
[2026-06-19 23:38:45,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:38:45,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:38:45,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:38:45,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:38:47,427.427 INFO    ] ================================================
[2026-06-19 23:38:47,442.442 INFO    ] Launching Daemon at Fri Jun 19 23:38:47 IST 2026
[2026-06-19 23:38:47,453.453 INFO    ] ================================================
[2026-06-19 23:38:48,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:38:48
[2026-06-19 23:38:48,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:38:49,047.047 INFO    ] Initializing speech engine...
[2026-06-19 23:38:49,053.053 INFO    ] 2026-06-19 23:38:49
[2026-06-19 23:38:49,314.314 INFO    ] 2026-06-19 23:38:49
[2026-06-19 23:38:49,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:38:49,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:38:49,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:38:49,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:38:49,770.770 INFO    ] time= 19/06/2026 23:38:49
[2026-06-19 23:38:49,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:38:49,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:38:49,922.922 INFO    ] No existing commands found in stream
[2026-06-19 23:38:54,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:38:54,937.937 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-19 23:38:58,716.716 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:38:58,719.719 INFO    ] Checking for system updates...
[2026-06-19 23:38:58,756.756 INFO    ] 200
[2026-06-19 23:38:58,758.758 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:58,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:38:58,815.815 INFO    ] No update needed
[2026-06-19 23:38:58,818.818 INFO    ] Checking for camera pi updates...
[2026-06-19 23:38:58,852.852 INFO    ] 200
[2026-06-19 23:38:58,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:38:58,899.899 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:38:58,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:38:58,958.958 INFO    ] No camera update needed
[2026-06-19 23:38:58,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:38:58,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:38:58,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:38:58,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:39:01,015.015 INFO    ] ================================================
[2026-06-19 23:39:01,031.031 INFO    ] Launching Daemon at Fri Jun 19 23:39:01 IST 2026
[2026-06-19 23:39:01,042.042 INFO    ] ================================================
[2026-06-19 23:39:01,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:39:01
[2026-06-19 23:39:02,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:39:02,792.792 INFO    ] Initializing speech engine...
[2026-06-19 23:39:02,800.800 INFO    ] 2026-06-19 23:39:02
[2026-06-19 23:39:03,086.086 INFO    ] 2026-06-19 23:39:03
[2026-06-19 23:39:03,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:39:03,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:39:03,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:39:03,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:39:03,530.530 INFO    ] time= 19/06/2026 23:39:03
[2026-06-19 23:39:03,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:39:03,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:39:03,658.658 INFO    ] No existing commands found in stream
[2026-06-19 23:39:08,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:39:08,673.673 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-19 23:39:09,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:39:09,097.097 INFO    ] Checking for system updates...
[2026-06-19 23:39:09,139.139 INFO    ] 200
[2026-06-19 23:39:09,142.142 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:09,194.194 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:09,197.197 INFO    ] No update needed
[2026-06-19 23:39:09,199.199 INFO    ] Checking for camera pi updates...
[2026-06-19 23:39:09,235.235 INFO    ] 200
[2026-06-19 23:39:09,238.238 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:09,278.278 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:39:09,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:09,320.320 INFO    ] No camera update needed
[2026-06-19 23:39:09,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:39:09,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:39:09,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:39:09,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:39:11,376.376 INFO    ] ================================================
[2026-06-19 23:39:11,390.390 INFO    ] Launching Daemon at Fri Jun 19 23:39:11 IST 2026
[2026-06-19 23:39:11,401.401 INFO    ] ================================================
[2026-06-19 23:39:11,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:39:11
[2026-06-19 23:39:12,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:39:12,804.804 INFO    ] Initializing speech engine...
[2026-06-19 23:39:12,816.816 INFO    ] 2026-06-19 23:39:12
[2026-06-19 23:39:13,085.085 INFO    ] 2026-06-19 23:39:13
[2026-06-19 23:39:13,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:39:13,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:39:13,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:39:13,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:39:13,461.461 INFO    ] time= 19/06/2026 23:39:13
[2026-06-19 23:39:13,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:39:13,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:39:13,622.622 INFO    ] No existing commands found in stream
[2026-06-19 23:39:18,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:39:18,650.650 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 23:39:20,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:39:20,377.377 INFO    ] Checking for system updates...
[2026-06-19 23:39:20,417.417 INFO    ] 200
[2026-06-19 23:39:20,419.419 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:20,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:20,484.484 INFO    ] No update needed
[2026-06-19 23:39:20,488.488 INFO    ] Checking for camera pi updates...
[2026-06-19 23:39:20,534.534 INFO    ] 200
[2026-06-19 23:39:20,537.537 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:20,584.584 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:39:20,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:20,644.644 INFO    ] No camera update needed
[2026-06-19 23:39:20,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:39:20,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:39:20,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:39:20,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:39:22,701.701 INFO    ] ================================================
[2026-06-19 23:39:22,717.717 INFO    ] Launching Daemon at Fri Jun 19 23:39:22 IST 2026
[2026-06-19 23:39:22,727.727 INFO    ] ================================================
[2026-06-19 23:39:23,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:39:23
[2026-06-19 23:39:23,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:39:24,144.144 INFO    ] Initializing speech engine...
[2026-06-19 23:39:24,151.151 INFO    ] 2026-06-19 23:39:24
[2026-06-19 23:39:24,449.449 INFO    ] 2026-06-19 23:39:24
[2026-06-19 23:39:24,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:39:24,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:39:24,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:39:24,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:39:24,874.874 INFO    ] time= 19/06/2026 23:39:24
[2026-06-19 23:39:24,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:39:24,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:39:24,962.962 INFO    ] No existing commands found in stream
[2026-06-19 23:39:29,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:39:29,995.995 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 23:39:34,101.101 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:39:34,104.104 INFO    ] Checking for system updates...
[2026-06-19 23:39:34,144.144 INFO    ] 200
[2026-06-19 23:39:34,147.147 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:34,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:34,204.204 INFO    ] No update needed
[2026-06-19 23:39:34,207.207 INFO    ] Checking for camera pi updates...
[2026-06-19 23:39:34,244.244 INFO    ] 200
[2026-06-19 23:39:34,247.247 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:34,293.293 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:39:34,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:34,351.351 INFO    ] No camera update needed
[2026-06-19 23:39:34,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:39:34,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:39:34,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:39:34,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:39:36,407.407 INFO    ] ================================================
[2026-06-19 23:39:36,422.422 INFO    ] Launching Daemon at Fri Jun 19 23:39:36 IST 2026
[2026-06-19 23:39:36,433.433 INFO    ] ================================================
[2026-06-19 23:39:37,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:39:37
[2026-06-19 23:39:37,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:39:37,907.907 INFO    ] Initializing speech engine...
[2026-06-19 23:39:37,918.918 INFO    ] 2026-06-19 23:39:37
[2026-06-19 23:39:38,180.180 INFO    ] 2026-06-19 23:39:38
[2026-06-19 23:39:38,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:39:38,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:39:38,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:39:38,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:39:38,639.639 INFO    ] time= 19/06/2026 23:39:38
[2026-06-19 23:39:38,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:39:38,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:39:38,785.785 INFO    ] No existing commands found in stream
[2026-06-19 23:39:43,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:39:43,800.800 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-19 23:39:45,952.952 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:39:45,954.954 INFO    ] Checking for system updates...
[2026-06-19 23:39:45,995.995 INFO    ] 200
[2026-06-19 23:39:45,998.998 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:46,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:46,061.061 INFO    ] No update needed
[2026-06-19 23:39:46,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 23:39:46,097.097 INFO    ] 200
[2026-06-19 23:39:46,099.099 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:46,140.140 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:39:46,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:46,194.194 INFO    ] No camera update needed
[2026-06-19 23:39:46,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:39:46,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:39:46,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:39:46,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:39:48,250.250 INFO    ] ================================================
[2026-06-19 23:39:48,266.266 INFO    ] Launching Daemon at Fri Jun 19 23:39:48 IST 2026
[2026-06-19 23:39:48,276.276 INFO    ] ================================================
[2026-06-19 23:39:48,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:39:48
[2026-06-19 23:39:49,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:39:49,719.719 INFO    ] Initializing speech engine...
[2026-06-19 23:39:49,728.728 INFO    ] 2026-06-19 23:39:49
[2026-06-19 23:39:50,027.027 INFO    ] 2026-06-19 23:39:49
[2026-06-19 23:39:50,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:39:50,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:39:50,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:39:50,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:39:50,414.414 INFO    ] time= 19/06/2026 23:39:50
[2026-06-19 23:39:50,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:39:50,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:39:50,541.541 INFO    ] No existing commands found in stream
[2026-06-19 23:39:55,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:39:55,557.557 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-19 23:39:56,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:39:56,338.338 INFO    ] Checking for system updates...
[2026-06-19 23:39:56,374.374 INFO    ] 200
[2026-06-19 23:39:56,377.377 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:56,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:56,440.440 INFO    ] No update needed
[2026-06-19 23:39:56,442.442 INFO    ] Checking for camera pi updates...
[2026-06-19 23:39:56,475.475 INFO    ] 200
[2026-06-19 23:39:56,478.478 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:39:56,524.524 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:39:56,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:39:56,570.570 INFO    ] No camera update needed
[2026-06-19 23:39:56,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:39:56,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:39:56,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:39:56,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:39:58,630.630 INFO    ] ================================================
[2026-06-19 23:39:58,646.646 INFO    ] Launching Daemon at Fri Jun 19 23:39:58 IST 2026
[2026-06-19 23:39:58,657.657 INFO    ] ================================================
[2026-06-19 23:39:59,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:39:59
[2026-06-19 23:39:59,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:40:00,130.130 INFO    ] Initializing speech engine...
[2026-06-19 23:40:00,156.156 INFO    ] 2026-06-19 23:40:00
[2026-06-19 23:40:00,431.431 INFO    ] 2026-06-19 23:40:00
[2026-06-19 23:40:00,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:40:00,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:40:00,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:40:00,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:40:00,817.817 INFO    ] time= 19/06/2026 23:40:00
[2026-06-19 23:40:00,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:40:00,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:40:00,943.943 INFO    ] No existing commands found in stream
[2026-06-19 23:40:05,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:40:05,959.959 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-19 23:40:09,755.755 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:40:09,757.757 INFO    ] Checking for system updates...
[2026-06-19 23:40:09,798.798 INFO    ] 200
[2026-06-19 23:40:09,801.801 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:09,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:40:09,863.863 INFO    ] No update needed
[2026-06-19 23:40:09,866.866 INFO    ] Checking for camera pi updates...
[2026-06-19 23:40:09,903.903 INFO    ] 200
[2026-06-19 23:40:09,906.906 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:09,953.953 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:40:10,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:40:10,012.012 INFO    ] No camera update needed
[2026-06-19 23:40:10,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:40:10,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:40:10,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:40:10,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:40:12,068.068 INFO    ] ================================================
[2026-06-19 23:40:12,083.083 INFO    ] Launching Daemon at Fri Jun 19 23:40:12 IST 2026
[2026-06-19 23:40:12,094.094 INFO    ] ================================================
[2026-06-19 23:40:12,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:40:12
[2026-06-19 23:40:13,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:40:13,536.536 INFO    ] Initializing speech engine...
[2026-06-19 23:40:13,551.551 INFO    ] 2026-06-19 23:40:13
[2026-06-19 23:40:13,828.828 INFO    ] 2026-06-19 23:40:13
[2026-06-19 23:40:13,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:40:14,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:40:14,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:40:14,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:40:14,190.190 INFO    ] time= 19/06/2026 23:40:14
[2026-06-19 23:40:14,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:40:14,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:40:14,270.270 INFO    ] No existing commands found in stream
[2026-06-19 23:40:19,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:40:19,283.283 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 23:40:22,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:40:22,300.300 INFO    ] Checking for system updates...
[2026-06-19 23:40:22,336.336 INFO    ] 200
[2026-06-19 23:40:22,338.338 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:22,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:40:22,394.394 INFO    ] No update needed
[2026-06-19 23:40:22,397.397 INFO    ] Checking for camera pi updates...
[2026-06-19 23:40:22,431.431 INFO    ] 200
[2026-06-19 23:40:22,434.434 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:22,479.479 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:40:22,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:40:22,536.536 INFO    ] No camera update needed
[2026-06-19 23:40:22,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:40:22,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:40:22,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:40:22,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:40:24,592.592 INFO    ] ================================================
[2026-06-19 23:40:24,607.607 INFO    ] Launching Daemon at Fri Jun 19 23:40:24 IST 2026
[2026-06-19 23:40:24,618.618 INFO    ] ================================================
[2026-06-19 23:40:25,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:40:25
[2026-06-19 23:40:25,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:40:26,059.059 INFO    ] Initializing speech engine...
[2026-06-19 23:40:26,067.067 INFO    ] 2026-06-19 23:40:26
[2026-06-19 23:40:26,337.337 INFO    ] 2026-06-19 23:40:26
[2026-06-19 23:40:26,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:40:26,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:40:26,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:40:26,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:40:26,872.872 INFO    ] time= 19/06/2026 23:40:26
[2026-06-19 23:40:26,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:40:26,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:40:27,002.002 INFO    ] No existing commands found in stream
[2026-06-19 23:40:32,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:40:32,030.030 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-19 23:40:33,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:40:33,941.941 INFO    ] Checking for system updates...
[2026-06-19 23:40:33,981.981 INFO    ] 200
[2026-06-19 23:40:33,983.983 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:34,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:40:34,039.039 INFO    ] No update needed
[2026-06-19 23:40:34,041.041 INFO    ] Checking for camera pi updates...
[2026-06-19 23:40:34,076.076 INFO    ] 200
[2026-06-19 23:40:34,078.078 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:34,123.123 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:40:34,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:40:34,170.170 INFO    ] No camera update needed
[2026-06-19 23:40:34,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:40:34,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:40:34,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:40:34,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:40:36,228.228 INFO    ] ================================================
[2026-06-19 23:40:36,243.243 INFO    ] Launching Daemon at Fri Jun 19 23:40:36 IST 2026
[2026-06-19 23:40:36,254.254 INFO    ] ================================================
[2026-06-19 23:40:36,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:40:36
[2026-06-19 23:40:37,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:40:37,674.674 INFO    ] Initializing speech engine...
[2026-06-19 23:40:37,682.682 INFO    ] 2026-06-19 23:40:37
[2026-06-19 23:40:37,981.981 INFO    ] 2026-06-19 23:40:37
[2026-06-19 23:40:38,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:40:38,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:40:38,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:40:38,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:40:38,340.340 INFO    ] time= 19/06/2026 23:40:38
[2026-06-19 23:40:38,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:40:38,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:40:38,420.420 INFO    ] No existing commands found in stream
[2026-06-19 23:40:43,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:40:43,433.433 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-19 23:40:44,874.874 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:40:44,877.877 INFO    ] Checking for system updates...
[2026-06-19 23:40:44,917.917 INFO    ] 200
[2026-06-19 23:40:44,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:44,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:40:44,981.981 INFO    ] No update needed
[2026-06-19 23:40:44,983.983 INFO    ] Checking for camera pi updates...
[2026-06-19 23:40:45,021.021 INFO    ] 200
[2026-06-19 23:40:45,023.023 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:45,069.069 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:40:45,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:40:45,120.120 INFO    ] No camera update needed
[2026-06-19 23:40:45,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:40:45,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:40:45,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:40:45,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:40:47,180.180 INFO    ] ================================================
[2026-06-19 23:40:47,195.195 INFO    ] Launching Daemon at Fri Jun 19 23:40:47 IST 2026
[2026-06-19 23:40:47,206.206 INFO    ] ================================================
[2026-06-19 23:40:47,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:40:47
[2026-06-19 23:40:48,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:40:48,657.657 INFO    ] Initializing speech engine...
[2026-06-19 23:40:48,665.665 INFO    ] 2026-06-19 23:40:48
[2026-06-19 23:40:48,971.971 INFO    ] 2026-06-19 23:40:48
[2026-06-19 23:40:49,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:40:49,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:40:49,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:40:49,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:40:49,394.394 INFO    ] time= 19/06/2026 23:40:49
[2026-06-19 23:40:49,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:40:49,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:40:49,486.486 INFO    ] No existing commands found in stream
[2026-06-19 23:40:54,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:40:54,501.501 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-19 23:40:56,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:40:56,249.249 INFO    ] Checking for system updates...
[2026-06-19 23:40:56,285.285 INFO    ] 200
[2026-06-19 23:40:56,288.288 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:56,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:40:56,343.343 INFO    ] No update needed
[2026-06-19 23:40:56,345.345 INFO    ] Checking for camera pi updates...
[2026-06-19 23:40:56,386.386 INFO    ] 200
[2026-06-19 23:40:56,388.388 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:40:56,428.428 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:40:56,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:40:56,582.582 INFO    ] No camera update needed
[2026-06-19 23:40:56,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:40:56,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:40:56,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:40:56,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:40:58,637.637 INFO    ] ================================================
[2026-06-19 23:40:58,652.652 INFO    ] Launching Daemon at Fri Jun 19 23:40:58 IST 2026
[2026-06-19 23:40:58,663.663 INFO    ] ================================================
[2026-06-19 23:40:59,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:40:59
[2026-06-19 23:41:00,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:41:00,321.321 INFO    ] Initializing speech engine...
[2026-06-19 23:41:00,334.334 INFO    ] 2026-06-19 23:41:00
[2026-06-19 23:41:00,614.614 INFO    ] 2026-06-19 23:41:00
[2026-06-19 23:41:00,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:41:00,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:41:00,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:41:01,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:41:01,050.050 INFO    ] time= 19/06/2026 23:41:01
[2026-06-19 23:41:01,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:41:01,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:41:01,222.222 INFO    ] No existing commands found in stream
[2026-06-19 23:41:06,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:41:06,238.238 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-19 23:41:08,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:41:08,988.988 INFO    ] Checking for system updates...
[2026-06-19 23:41:09,029.029 INFO    ] 200
[2026-06-19 23:41:09,032.032 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:09,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:41:09,090.090 INFO    ] No update needed
[2026-06-19 23:41:09,093.093 INFO    ] Checking for camera pi updates...
[2026-06-19 23:41:09,131.131 INFO    ] 200
[2026-06-19 23:41:09,134.134 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:09,181.181 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:41:09,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:41:09,234.234 INFO    ] No camera update needed
[2026-06-19 23:41:09,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:41:09,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:41:09,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:41:09,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:41:11,292.292 INFO    ] ================================================
[2026-06-19 23:41:11,308.308 INFO    ] Launching Daemon at Fri Jun 19 23:41:11 IST 2026
[2026-06-19 23:41:11,318.318 INFO    ] ================================================
[2026-06-19 23:41:11,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:41:11
[2026-06-19 23:41:12,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:41:12,942.942 INFO    ] Initializing speech engine...
[2026-06-19 23:41:12,950.950 INFO    ] 2026-06-19 23:41:12
[2026-06-19 23:41:13,268.268 INFO    ] 2026-06-19 23:41:13
[2026-06-19 23:41:13,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:41:13,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:41:13,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:41:13,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:41:13,773.773 INFO    ] time= 19/06/2026 23:41:13
[2026-06-19 23:41:13,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:41:13,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:41:13,910.910 INFO    ] No existing commands found in stream
[2026-06-19 23:41:18,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:41:18,942.942 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-19 23:41:21,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:41:21,974.974 INFO    ] Checking for system updates...
[2026-06-19 23:41:22,015.015 INFO    ] 200
[2026-06-19 23:41:22,018.018 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:22,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:41:22,081.081 INFO    ] No update needed
[2026-06-19 23:41:22,084.084 INFO    ] Checking for camera pi updates...
[2026-06-19 23:41:22,118.118 INFO    ] 200
[2026-06-19 23:41:22,121.121 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:22,163.163 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:41:22,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:41:22,219.219 INFO    ] No camera update needed
[2026-06-19 23:41:22,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:41:22,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:41:22,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:41:22,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:41:24,277.277 INFO    ] ================================================
[2026-06-19 23:41:24,292.292 INFO    ] Launching Daemon at Fri Jun 19 23:41:24 IST 2026
[2026-06-19 23:41:24,303.303 INFO    ] ================================================
[2026-06-19 23:41:24,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:41:24
[2026-06-19 23:41:25,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:41:25,922.922 INFO    ] Initializing speech engine...
[2026-06-19 23:41:25,936.936 INFO    ] 2026-06-19 23:41:25
[2026-06-19 23:41:26,245.245 INFO    ] 2026-06-19 23:41:26
[2026-06-19 23:41:26,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:41:26,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:41:26,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:41:26,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:41:26,750.750 INFO    ] time= 19/06/2026 23:41:26
[2026-06-19 23:41:26,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:41:26,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:41:26,906.906 INFO    ] No existing commands found in stream
[2026-06-19 23:41:31,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:41:31,921.921 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-19 23:41:35,123.123 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:41:35,126.126 INFO    ] Checking for system updates...
[2026-06-19 23:41:35,163.163 INFO    ] 200
[2026-06-19 23:41:35,166.166 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:35,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:41:35,229.229 INFO    ] No update needed
[2026-06-19 23:41:35,232.232 INFO    ] Checking for camera pi updates...
[2026-06-19 23:41:35,266.266 INFO    ] 200
[2026-06-19 23:41:35,269.269 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:35,315.315 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:41:35,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:41:35,376.376 INFO    ] No camera update needed
[2026-06-19 23:41:35,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:41:35,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:41:35,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:41:35,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:41:37,435.435 INFO    ] ================================================
[2026-06-19 23:41:37,450.450 INFO    ] Launching Daemon at Fri Jun 19 23:41:37 IST 2026
[2026-06-19 23:41:37,461.461 INFO    ] ================================================
[2026-06-19 23:41:38,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:41:38
[2026-06-19 23:41:38,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:41:38,940.940 INFO    ] Initializing speech engine...
[2026-06-19 23:41:38,960.960 INFO    ] 2026-06-19 23:41:38
[2026-06-19 23:41:39,225.225 INFO    ] 2026-06-19 23:41:39
[2026-06-19 23:41:39,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:41:39,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:41:39,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:41:39,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:41:39,597.597 INFO    ] time= 19/06/2026 23:41:39
[2026-06-19 23:41:39,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:41:39,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:41:39,721.721 INFO    ] No existing commands found in stream
[2026-06-19 23:41:44,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:41:44,736.736 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 23:41:45,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:41:45,770.770 INFO    ] Checking for system updates...
[2026-06-19 23:41:45,806.806 INFO    ] 200
[2026-06-19 23:41:45,809.809 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:45,862.862 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:41:45,864.864 INFO    ] No update needed
[2026-06-19 23:41:45,867.867 INFO    ] Checking for camera pi updates...
[2026-06-19 23:41:45,901.901 INFO    ] 200
[2026-06-19 23:41:45,903.903 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:45,945.945 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:41:45,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:41:45,996.996 INFO    ] No camera update needed
[2026-06-19 23:41:45,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:41:46,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:41:46,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:41:46,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:41:48,050.050 INFO    ] ================================================
[2026-06-19 23:41:48,065.065 INFO    ] Launching Daemon at Fri Jun 19 23:41:48 IST 2026
[2026-06-19 23:41:48,075.075 INFO    ] ================================================
[2026-06-19 23:41:48,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:41:48
[2026-06-19 23:41:49,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:41:49,492.492 INFO    ] Initializing speech engine...
[2026-06-19 23:41:49,501.501 INFO    ] 2026-06-19 23:41:49
[2026-06-19 23:41:49,790.790 INFO    ] 2026-06-19 23:41:49
[2026-06-19 23:41:49,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:41:50,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:41:50,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:41:50,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:41:50,163.163 INFO    ] time= 19/06/2026 23:41:50
[2026-06-19 23:41:50,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:41:50,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:41:50,285.285 INFO    ] No existing commands found in stream
[2026-06-19 23:41:55,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:41:55,301.301 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 23:41:59,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:41:59,269.269 INFO    ] Checking for system updates...
[2026-06-19 23:41:59,308.308 INFO    ] 200
[2026-06-19 23:41:59,310.310 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:59,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:41:59,365.365 INFO    ] No update needed
[2026-06-19 23:41:59,368.368 INFO    ] Checking for camera pi updates...
[2026-06-19 23:41:59,401.401 INFO    ] 200
[2026-06-19 23:41:59,404.404 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:41:59,444.444 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:41:59,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:41:59,497.497 INFO    ] No camera update needed
[2026-06-19 23:41:59,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:41:59,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:41:59,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:41:59,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:42:01,572.572 INFO    ] ================================================
[2026-06-19 23:42:01,619.619 INFO    ] Launching Daemon at Fri Jun 19 23:42:01 IST 2026
[2026-06-19 23:42:01,638.638 INFO    ] ================================================
[2026-06-19 23:42:02,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:42:02
[2026-06-19 23:42:03,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:42:03,401.401 INFO    ] Initializing speech engine...
[2026-06-19 23:42:03,411.411 INFO    ] 2026-06-19 23:42:03
[2026-06-19 23:42:03,673.673 INFO    ] 2026-06-19 23:42:03
[2026-06-19 23:42:03,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:42:03,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:42:03,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:42:04,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:42:04,017.017 INFO    ] time= 19/06/2026 23:42:04
[2026-06-19 23:42:04,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:42:04,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:42:04,099.099 INFO    ] No existing commands found in stream
[2026-06-19 23:42:09,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:42:09,131.131 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-19 23:42:12,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:42:12,872.872 INFO    ] Checking for system updates...
[2026-06-19 23:42:12,908.908 INFO    ] 200
[2026-06-19 23:42:12,911.911 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:42:12,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:42:12,966.966 INFO    ] No update needed
[2026-06-19 23:42:12,968.968 INFO    ] Checking for camera pi updates...
[2026-06-19 23:42:13,003.003 INFO    ] 200
[2026-06-19 23:42:13,006.006 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:42:13,051.051 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:42:13,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:42:13,101.101 INFO    ] No camera update needed
[2026-06-19 23:42:13,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:42:13,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:42:13,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:42:13,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:42:15,157.157 INFO    ] ================================================
[2026-06-19 23:42:15,172.172 INFO    ] Launching Daemon at Fri Jun 19 23:42:15 IST 2026
[2026-06-19 23:42:15,182.182 INFO    ] ================================================
[2026-06-19 23:42:15,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:42:15
[2026-06-19 23:42:16,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:42:16,637.637 INFO    ] Initializing speech engine...
[2026-06-19 23:42:16,645.645 INFO    ] 2026-06-19 23:42:16
[2026-06-19 23:42:16,896.896 INFO    ] 2026-06-19 23:42:16
[2026-06-19 23:42:16,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:42:17,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:42:17,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:42:17,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:42:17,267.267 INFO    ] time= 19/06/2026 23:42:17
[2026-06-19 23:42:17,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:42:17,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:42:17,438.438 INFO    ] No existing commands found in stream
[2026-06-19 23:42:22,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:42:22,470.470 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 23:42:24,605.605 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:42:24,608.608 INFO    ] Checking for system updates...
[2026-06-19 23:42:24,645.645 INFO    ] 200
[2026-06-19 23:42:24,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:42:24,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:42:24,704.704 INFO    ] No update needed
[2026-06-19 23:42:24,706.706 INFO    ] Checking for camera pi updates...
[2026-06-19 23:42:24,740.740 INFO    ] 200
[2026-06-19 23:42:24,743.743 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:42:24,785.785 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:42:24,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:42:24,844.844 INFO    ] No camera update needed
[2026-06-19 23:42:24,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:42:24,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:42:24,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:42:24,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:42:26,900.900 INFO    ] ================================================
[2026-06-19 23:42:26,915.915 INFO    ] Launching Daemon at Fri Jun 19 23:42:26 IST 2026
[2026-06-19 23:42:26,926.926 INFO    ] ================================================
[2026-06-19 23:42:27,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:42:27
[2026-06-19 23:42:28,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:42:28,346.346 INFO    ] Initializing speech engine...
[2026-06-19 23:42:28,355.355 INFO    ] 2026-06-19 23:42:28
[2026-06-19 23:42:28,649.649 INFO    ] 2026-06-19 23:42:28
[2026-06-19 23:42:28,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:42:28,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:42:28,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:42:29,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:42:29,019.019 INFO    ] time= 19/06/2026 23:42:29
[2026-06-19 23:42:29,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:42:29,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:42:29,142.142 INFO    ] No existing commands found in stream
[2026-06-19 23:42:34,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:42:34,157.157 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 23:42:37,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:42:37,715.715 INFO    ] Checking for system updates...
[2026-06-19 23:42:37,752.752 INFO    ] 200
[2026-06-19 23:42:37,754.754 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:42:37,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:42:37,809.809 INFO    ] No update needed
[2026-06-19 23:42:37,812.812 INFO    ] Checking for camera pi updates...
[2026-06-19 23:42:37,845.845 INFO    ] 200
[2026-06-19 23:42:37,848.848 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:42:37,888.888 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:42:37,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:42:37,942.942 INFO    ] No camera update needed
[2026-06-19 23:42:37,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:42:37,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:42:37,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:42:37,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:42:40,998.998 INFO    ] ================================================
[2026-06-19 23:42:40,013.013 INFO    ] Launching Daemon at Fri Jun 19 23:42:40 IST 2026
[2026-06-19 23:42:40,024.024 INFO    ] ================================================
[2026-06-19 23:42:40,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:42:40
[2026-06-19 23:42:41,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:42:41,449.449 INFO    ] Initializing speech engine...
[2026-06-19 23:42:41,454.454 INFO    ] 2026-06-19 23:42:41
[2026-06-19 23:42:41,700.700 INFO    ] 2026-06-19 23:42:41
[2026-06-19 23:42:41,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:42:41,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:42:42,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:42:42,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:42:42,185.185 INFO    ] time= 19/06/2026 23:42:42
[2026-06-19 23:42:42,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:42:42,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:42:42,389.389 INFO    ] No existing commands found in stream
[2026-06-19 23:42:47,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:42:47,422.422 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-19 23:42:48,689.689 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:42:48,692.692 INFO    ] Checking for system updates...
[2026-06-19 23:42:48,728.728 INFO    ] 200
[2026-06-19 23:42:48,731.731 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:42:48,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:42:48,787.787 INFO    ] No update needed
[2026-06-19 23:42:48,790.790 INFO    ] Checking for camera pi updates...
[2026-06-19 23:42:48,825.825 INFO    ] 200
[2026-06-19 23:42:48,828.828 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:42:48,869.869 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:42:48,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:42:48,908.908 INFO    ] No camera update needed
[2026-06-19 23:42:48,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:42:48,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:42:48,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:42:48,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:42:50,965.965 INFO    ] ================================================
[2026-06-19 23:42:50,980.980 INFO    ] Launching Daemon at Fri Jun 19 23:42:50 IST 2026
[2026-06-19 23:42:50,991.991 INFO    ] ================================================
[2026-06-19 23:42:51,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:42:51
[2026-06-19 23:42:52,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:42:52,634.634 INFO    ] Initializing speech engine...
[2026-06-19 23:42:52,643.643 INFO    ] 2026-06-19 23:42:52
[2026-06-19 23:42:52,910.910 INFO    ] 2026-06-19 23:42:52
[2026-06-19 23:42:52,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:42:53,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:42:53,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:42:53,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:42:53,391.391 INFO    ] time= 19/06/2026 23:42:53
[2026-06-19 23:42:53,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:42:53,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:42:53,573.573 INFO    ] No existing commands found in stream
[2026-06-19 23:42:58,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:42:58,588.588 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 23:43:02,649.649 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:43:02,652.652 INFO    ] Checking for system updates...
[2026-06-19 23:43:02,692.692 INFO    ] 200
[2026-06-19 23:43:02,695.695 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:02,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:43:02,771.771 INFO    ] No update needed
[2026-06-19 23:43:02,774.774 INFO    ] Checking for camera pi updates...
[2026-06-19 23:43:02,813.813 INFO    ] 200
[2026-06-19 23:43:02,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:02,876.876 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:43:02,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:43:02,913.913 INFO    ] No camera update needed
[2026-06-19 23:43:02,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:43:02,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:43:02,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:43:02,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:43:04,974.974 INFO    ] ================================================
[2026-06-19 23:43:04,989.989 INFO    ] Launching Daemon at Fri Jun 19 23:43:04 IST 2026
[2026-06-19 23:43:05,000.000 INFO    ] ================================================
[2026-06-19 23:43:05,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:43:05
[2026-06-19 23:43:06,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:43:06,602.602 INFO    ] Initializing speech engine...
[2026-06-19 23:43:06,610.610 INFO    ] 2026-06-19 23:43:06
[2026-06-19 23:43:06,868.868 INFO    ] 2026-06-19 23:43:06
[2026-06-19 23:43:06,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:43:07,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:43:07,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:43:07,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:43:07,276.276 INFO    ] time= 19/06/2026 23:43:07
[2026-06-19 23:43:07,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:43:07,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:43:07,358.358 INFO    ] No existing commands found in stream
[2026-06-19 23:43:12,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:43:12,374.374 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 23:43:15,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:43:15,172.172 INFO    ] Checking for system updates...
[2026-06-19 23:43:15,208.208 INFO    ] 200
[2026-06-19 23:43:15,211.211 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:15,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:43:15,271.271 INFO    ] No update needed
[2026-06-19 23:43:15,273.273 INFO    ] Checking for camera pi updates...
[2026-06-19 23:43:15,310.310 INFO    ] 200
[2026-06-19 23:43:15,312.312 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:15,354.354 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:43:15,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:43:15,400.400 INFO    ] No camera update needed
[2026-06-19 23:43:15,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:43:15,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:43:15,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:43:15,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:43:17,454.454 INFO    ] ================================================
[2026-06-19 23:43:17,470.470 INFO    ] Launching Daemon at Fri Jun 19 23:43:17 IST 2026
[2026-06-19 23:43:17,480.480 INFO    ] ================================================
[2026-06-19 23:43:18,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:43:18
[2026-06-19 23:43:18,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:43:18,926.926 INFO    ] Initializing speech engine...
[2026-06-19 23:43:18,936.936 INFO    ] 2026-06-19 23:43:18
[2026-06-19 23:43:19,187.187 INFO    ] 2026-06-19 23:43:19
[2026-06-19 23:43:19,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:43:19,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:43:19,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:43:19,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:43:19,642.642 INFO    ] time= 19/06/2026 23:43:19
[2026-06-19 23:43:19,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:43:19,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:43:19,803.803 INFO    ] No existing commands found in stream
[2026-06-19 23:43:24,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:43:24,817.817 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-19 23:43:31,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:43:31,116.116 INFO    ] Checking for system updates...
[2026-06-19 23:43:31,159.159 INFO    ] 200
[2026-06-19 23:43:31,161.161 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:31,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:43:31,217.217 INFO    ] No update needed
[2026-06-19 23:43:31,219.219 INFO    ] Checking for camera pi updates...
[2026-06-19 23:43:31,253.253 INFO    ] 200
[2026-06-19 23:43:31,256.256 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:31,300.300 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:43:31,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:43:31,348.348 INFO    ] No camera update needed
[2026-06-19 23:43:31,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:43:31,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:43:31,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:43:31,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:43:33,407.407 INFO    ] ================================================
[2026-06-19 23:43:33,422.422 INFO    ] Launching Daemon at Fri Jun 19 23:43:33 IST 2026
[2026-06-19 23:43:33,433.433 INFO    ] ================================================
[2026-06-19 23:43:34,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:43:34
[2026-06-19 23:43:34,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:43:34,890.890 INFO    ] Initializing speech engine...
[2026-06-19 23:43:34,897.897 INFO    ] 2026-06-19 23:43:34
[2026-06-19 23:43:35,143.143 INFO    ] 2026-06-19 23:43:35
[2026-06-19 23:43:35,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:43:35,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:43:35,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:43:35,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:43:35,613.613 INFO    ] time= 19/06/2026 23:43:35
[2026-06-19 23:43:35,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:43:35,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:43:35,760.760 INFO    ] No existing commands found in stream
[2026-06-19 23:43:40,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:43:40,776.776 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-19 23:43:41,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:43:41,394.394 INFO    ] Checking for system updates...
[2026-06-19 23:43:41,431.431 INFO    ] 200
[2026-06-19 23:43:41,433.433 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:41,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:43:41,488.488 INFO    ] No update needed
[2026-06-19 23:43:41,490.490 INFO    ] Checking for camera pi updates...
[2026-06-19 23:43:41,527.527 INFO    ] 200
[2026-06-19 23:43:41,530.530 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:41,570.570 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:43:41,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:43:41,620.620 INFO    ] No camera update needed
[2026-06-19 23:43:41,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:43:41,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:43:41,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:43:41,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:43:43,677.677 INFO    ] ================================================
[2026-06-19 23:43:43,692.692 INFO    ] Launching Daemon at Fri Jun 19 23:43:43 IST 2026
[2026-06-19 23:43:43,703.703 INFO    ] ================================================
[2026-06-19 23:43:44,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:43:44
[2026-06-19 23:43:44,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:43:45,276.276 INFO    ] Initializing speech engine...
[2026-06-19 23:43:45,284.284 INFO    ] 2026-06-19 23:43:45
[2026-06-19 23:43:45,564.564 INFO    ] 2026-06-19 23:43:45
[2026-06-19 23:43:45,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:43:45,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:43:45,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:43:45,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:43:46,038.038 INFO    ] time= 19/06/2026 23:43:45
[2026-06-19 23:43:46,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:43:46,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:43:46,223.223 INFO    ] No existing commands found in stream
[2026-06-19 23:43:51,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:43:51,258.258 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-19 23:43:51,936.936 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:43:51,939.939 INFO    ] Checking for system updates...
[2026-06-19 23:43:51,979.979 INFO    ] 200
[2026-06-19 23:43:51,982.982 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:52,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:43:52,041.041 INFO    ] No update needed
[2026-06-19 23:43:52,044.044 INFO    ] Checking for camera pi updates...
[2026-06-19 23:43:52,081.081 INFO    ] 200
[2026-06-19 23:43:52,083.083 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:43:52,132.132 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:43:52,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:43:52,166.166 INFO    ] No camera update needed
[2026-06-19 23:43:52,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:43:52,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:43:52,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:43:52,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:43:54,226.226 INFO    ] ================================================
[2026-06-19 23:43:54,241.241 INFO    ] Launching Daemon at Fri Jun 19 23:43:54 IST 2026
[2026-06-19 23:43:54,252.252 INFO    ] ================================================
[2026-06-19 23:43:54,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:43:54
[2026-06-19 23:43:55,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:43:55,825.825 INFO    ] Initializing speech engine...
[2026-06-19 23:43:55,832.832 INFO    ] 2026-06-19 23:43:55
[2026-06-19 23:43:56,106.106 INFO    ] 2026-06-19 23:43:56
[2026-06-19 23:43:56,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:43:56,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:43:56,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:43:56,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:43:56,611.611 INFO    ] time= 19/06/2026 23:43:56
[2026-06-19 23:43:56,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:43:56,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:43:56,789.789 INFO    ] No existing commands found in stream
[2026-06-19 23:44:01,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:44:01,822.822 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 23:44:05,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:44:05,816.816 INFO    ] Checking for system updates...
[2026-06-19 23:44:05,852.852 INFO    ] 200
[2026-06-19 23:44:05,855.855 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:05,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:44:05,911.911 INFO    ] No update needed
[2026-06-19 23:44:05,914.914 INFO    ] Checking for camera pi updates...
[2026-06-19 23:44:05,948.948 INFO    ] 200
[2026-06-19 23:44:05,950.950 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:05,995.995 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:44:06,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:44:06,051.051 INFO    ] No camera update needed
[2026-06-19 23:44:06,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:44:06,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:44:06,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:44:06,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:44:08,106.106 INFO    ] ================================================
[2026-06-19 23:44:08,121.121 INFO    ] Launching Daemon at Fri Jun 19 23:44:08 IST 2026
[2026-06-19 23:44:08,132.132 INFO    ] ================================================
[2026-06-19 23:44:08,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:44:08
[2026-06-19 23:44:09,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:44:09,744.744 INFO    ] Initializing speech engine...
[2026-06-19 23:44:09,752.752 INFO    ] 2026-06-19 23:44:09
[2026-06-19 23:44:10,040.040 INFO    ] 2026-06-19 23:44:10
[2026-06-19 23:44:10,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:44:10,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:44:10,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:44:10,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:44:10,506.506 INFO    ] time= 19/06/2026 23:44:10
[2026-06-19 23:44:10,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:44:10,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:44:10,653.653 INFO    ] No existing commands found in stream
[2026-06-19 23:44:15,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:44:15,670.670 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 23:44:16,770.770 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:44:16,773.773 INFO    ] Checking for system updates...
[2026-06-19 23:44:16,810.810 INFO    ] 200
[2026-06-19 23:44:16,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:16,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:44:16,876.876 INFO    ] No update needed
[2026-06-19 23:44:16,879.879 INFO    ] Checking for camera pi updates...
[2026-06-19 23:44:16,918.918 INFO    ] 200
[2026-06-19 23:44:16,921.921 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:16,968.968 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:44:17,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:44:17,019.019 INFO    ] No camera update needed
[2026-06-19 23:44:17,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:44:17,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:44:17,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:44:17,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:44:19,077.077 INFO    ] ================================================
[2026-06-19 23:44:19,092.092 INFO    ] Launching Daemon at Fri Jun 19 23:44:19 IST 2026
[2026-06-19 23:44:19,103.103 INFO    ] ================================================
[2026-06-19 23:44:19,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:44:19
[2026-06-19 23:44:20,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:44:20,574.574 INFO    ] Initializing speech engine...
[2026-06-19 23:44:20,599.599 INFO    ] 2026-06-19 23:44:20
[2026-06-19 23:44:20,872.872 INFO    ] 2026-06-19 23:44:20
[2026-06-19 23:44:20,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:44:21,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:44:21,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:44:21,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:44:21,244.244 INFO    ] time= 19/06/2026 23:44:21
[2026-06-19 23:44:21,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:44:21,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:44:21,367.367 INFO    ] No existing commands found in stream
[2026-06-19 23:44:26,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:44:26,382.382 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-19 23:44:27,201.201 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:44:27,204.204 INFO    ] Checking for system updates...
[2026-06-19 23:44:27,240.240 INFO    ] 200
[2026-06-19 23:44:27,243.243 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:27,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:44:27,298.298 INFO    ] No update needed
[2026-06-19 23:44:27,300.300 INFO    ] Checking for camera pi updates...
[2026-06-19 23:44:27,334.334 INFO    ] 200
[2026-06-19 23:44:27,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:27,377.377 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:44:27,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:44:27,423.423 INFO    ] No camera update needed
[2026-06-19 23:44:27,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:44:27,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:44:27,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:44:27,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:44:29,479.479 INFO    ] ================================================
[2026-06-19 23:44:29,494.494 INFO    ] Launching Daemon at Fri Jun 19 23:44:29 IST 2026
[2026-06-19 23:44:29,505.505 INFO    ] ================================================
[2026-06-19 23:44:30,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:44:30
[2026-06-19 23:44:30,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:44:30,996.996 INFO    ] Initializing speech engine...
[2026-06-19 23:44:31,006.006 INFO    ] 2026-06-19 23:44:31
[2026-06-19 23:44:31,254.254 INFO    ] 2026-06-19 23:44:31
[2026-06-19 23:44:31,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:44:31,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:44:31,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:44:31,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:44:31,631.631 INFO    ] time= 19/06/2026 23:44:31
[2026-06-19 23:44:31,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:44:31,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:44:31,738.738 INFO    ] No existing commands found in stream
[2026-06-19 23:44:36,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:44:36,776.776 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-19 23:44:40,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:44:40,033.033 INFO    ] Checking for system updates...
[2026-06-19 23:44:40,069.069 INFO    ] 200
[2026-06-19 23:44:40,072.072 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:40,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:44:40,131.131 INFO    ] No update needed
[2026-06-19 23:44:40,134.134 INFO    ] Checking for camera pi updates...
[2026-06-19 23:44:40,167.167 INFO    ] 200
[2026-06-19 23:44:40,170.170 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:40,211.211 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:44:40,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:44:40,261.261 INFO    ] No camera update needed
[2026-06-19 23:44:40,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:44:40,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:44:40,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:44:40,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:44:42,316.316 INFO    ] ================================================
[2026-06-19 23:44:42,332.332 INFO    ] Launching Daemon at Fri Jun 19 23:44:42 IST 2026
[2026-06-19 23:44:42,343.343 INFO    ] ================================================
[2026-06-19 23:44:42,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:44:42
[2026-06-19 23:44:43,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:44:43,796.796 INFO    ] Initializing speech engine...
[2026-06-19 23:44:43,805.805 INFO    ] 2026-06-19 23:44:43
[2026-06-19 23:44:44,106.106 INFO    ] 2026-06-19 23:44:44
[2026-06-19 23:44:44,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:44:44,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:44:44,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:44:44,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:44:44,478.478 INFO    ] time= 19/06/2026 23:44:44
[2026-06-19 23:44:44,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:44:44,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:44:44,543.543 INFO    ] No existing commands found in stream
[2026-06-19 23:44:49,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:44:49,587.587 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-19 23:44:52,426.426 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:44:52,429.429 INFO    ] Checking for system updates...
[2026-06-19 23:44:52,466.466 INFO    ] 200
[2026-06-19 23:44:52,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:52,526.526 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:44:52,529.529 INFO    ] No update needed
[2026-06-19 23:44:52,531.531 INFO    ] Checking for camera pi updates...
[2026-06-19 23:44:52,566.566 INFO    ] 200
[2026-06-19 23:44:52,568.568 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:44:52,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:44:52,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:44:52,662.662 INFO    ] No camera update needed
[2026-06-19 23:44:52,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:44:52,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:44:52,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:44:52,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:44:54,717.717 INFO    ] ================================================
[2026-06-19 23:44:54,732.732 INFO    ] Launching Daemon at Fri Jun 19 23:44:54 IST 2026
[2026-06-19 23:44:54,743.743 INFO    ] ================================================
[2026-06-19 23:44:55,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:44:55
[2026-06-19 23:44:55,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:44:56,210.210 INFO    ] Initializing speech engine...
[2026-06-19 23:44:56,226.226 INFO    ] 2026-06-19 23:44:56
[2026-06-19 23:44:56,501.501 INFO    ] 2026-06-19 23:44:56
[2026-06-19 23:44:56,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:44:56,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:44:56,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:44:56,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:44:56,883.883 INFO    ] time= 19/06/2026 23:44:56
[2026-06-19 23:44:56,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:44:56,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:44:57,012.012 INFO    ] No existing commands found in stream
[2026-06-19 23:45:02,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:45:02,030.030 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-19 23:45:05,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:45:05,954.954 INFO    ] Checking for system updates...
[2026-06-19 23:45:05,990.990 INFO    ] 200
[2026-06-19 23:45:05,993.993 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:06,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:45:06,049.049 INFO    ] No update needed
[2026-06-19 23:45:06,051.051 INFO    ] Checking for camera pi updates...
[2026-06-19 23:45:06,086.086 INFO    ] 200
[2026-06-19 23:45:06,089.089 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:06,130.130 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:45:06,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:45:06,276.276 INFO    ] No camera update needed
[2026-06-19 23:45:06,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:45:06,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:45:06,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:45:06,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:45:08,335.335 INFO    ] ================================================
[2026-06-19 23:45:08,350.350 INFO    ] Launching Daemon at Fri Jun 19 23:45:08 IST 2026
[2026-06-19 23:45:08,361.361 INFO    ] ================================================
[2026-06-19 23:45:08,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:45:08
[2026-06-19 23:45:09,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:45:09,813.813 INFO    ] Initializing speech engine...
[2026-06-19 23:45:09,823.823 INFO    ] 2026-06-19 23:45:09
[2026-06-19 23:45:10,069.069 INFO    ] 2026-06-19 23:45:10
[2026-06-19 23:45:10,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:45:10,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:45:10,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:45:10,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:45:10,469.469 INFO    ] time= 19/06/2026 23:45:10
[2026-06-19 23:45:10,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:45:10,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:45:10,618.618 INFO    ] No existing commands found in stream
[2026-06-19 23:45:15,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:45:15,647.647 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-19 23:45:18,179.179 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:45:18,182.182 INFO    ] Checking for system updates...
[2026-06-19 23:45:18,219.219 INFO    ] 200
[2026-06-19 23:45:18,222.222 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:18,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:45:18,279.279 INFO    ] No update needed
[2026-06-19 23:45:18,281.281 INFO    ] Checking for camera pi updates...
[2026-06-19 23:45:18,315.315 INFO    ] 200
[2026-06-19 23:45:18,318.318 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:18,368.368 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:45:18,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:45:18,415.415 INFO    ] No camera update needed
[2026-06-19 23:45:18,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:45:18,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:45:18,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:45:18,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:45:20,471.471 INFO    ] ================================================
[2026-06-19 23:45:20,486.486 INFO    ] Launching Daemon at Fri Jun 19 23:45:20 IST 2026
[2026-06-19 23:45:20,497.497 INFO    ] ================================================
[2026-06-19 23:45:21,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:45:21
[2026-06-19 23:45:21,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:45:21,920.920 INFO    ] Initializing speech engine...
[2026-06-19 23:45:21,933.933 INFO    ] 2026-06-19 23:45:21
[2026-06-19 23:45:22,196.196 INFO    ] 2026-06-19 23:45:22
[2026-06-19 23:45:22,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:45:22,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:45:22,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:45:22,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:45:22,600.600 INFO    ] time= 19/06/2026 23:45:22
[2026-06-19 23:45:22,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:45:22,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:45:22,709.709 INFO    ] No existing commands found in stream
[2026-06-19 23:45:27,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:45:27,724.724 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-19 23:45:30,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:45:30,964.964 INFO    ] Checking for system updates...
[2026-06-19 23:45:31,001.001 INFO    ] 200
[2026-06-19 23:45:31,004.004 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:31,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:45:31,061.061 INFO    ] No update needed
[2026-06-19 23:45:31,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 23:45:31,099.099 INFO    ] 200
[2026-06-19 23:45:31,101.101 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:31,149.149 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:45:31,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:45:31,207.207 INFO    ] No camera update needed
[2026-06-19 23:45:31,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:45:31,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:45:31,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:45:31,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:45:33,265.265 INFO    ] ================================================
[2026-06-19 23:45:33,281.281 INFO    ] Launching Daemon at Fri Jun 19 23:45:33 IST 2026
[2026-06-19 23:45:33,292.292 INFO    ] ================================================
[2026-06-19 23:45:33,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:45:33
[2026-06-19 23:45:34,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:45:34,895.895 INFO    ] Initializing speech engine...
[2026-06-19 23:45:34,908.908 INFO    ] 2026-06-19 23:45:34
[2026-06-19 23:45:35,198.198 INFO    ] 2026-06-19 23:45:35
[2026-06-19 23:45:35,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:45:35,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:45:35,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:45:35,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:45:35,670.670 INFO    ] time= 19/06/2026 23:45:35
[2026-06-19 23:45:35,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:45:35,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:45:35,876.876 INFO    ] No existing commands found in stream
[2026-06-19 23:45:40,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:45:40,899.899 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-19 23:45:43,412.412 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:45:43,415.415 INFO    ] Checking for system updates...
[2026-06-19 23:45:43,457.457 INFO    ] 200
[2026-06-19 23:45:43,461.461 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:43,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:45:43,525.525 INFO    ] No update needed
[2026-06-19 23:45:43,528.528 INFO    ] Checking for camera pi updates...
[2026-06-19 23:45:43,567.567 INFO    ] 200
[2026-06-19 23:45:43,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:43,623.623 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:45:43,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:45:43,676.676 INFO    ] No camera update needed
[2026-06-19 23:45:43,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:45:43,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:45:43,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:45:43,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:45:45,743.743 INFO    ] ================================================
[2026-06-19 23:45:45,760.760 INFO    ] Launching Daemon at Fri Jun 19 23:45:45 IST 2026
[2026-06-19 23:45:45,771.771 INFO    ] ================================================
[2026-06-19 23:45:46,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:45:46
[2026-06-19 23:45:47,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:45:47,555.555 INFO    ] Initializing speech engine...
[2026-06-19 23:45:47,562.562 INFO    ] 2026-06-19 23:45:47
[2026-06-19 23:45:47,900.900 INFO    ] 2026-06-19 23:45:47
[2026-06-19 23:45:47,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:45:48,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:45:48,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:45:48,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:45:48,410.410 INFO    ] time= 19/06/2026 23:45:48
[2026-06-19 23:45:48,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:45:48,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:45:48,563.563 INFO    ] No existing commands found in stream
[2026-06-19 23:45:53,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:45:53,582.582 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-19 23:45:57,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:45:57,537.537 INFO    ] Checking for system updates...
[2026-06-19 23:45:57,574.574 INFO    ] 200
[2026-06-19 23:45:57,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:57,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:45:57,632.632 INFO    ] No update needed
[2026-06-19 23:45:57,634.634 INFO    ] Checking for camera pi updates...
[2026-06-19 23:45:57,674.674 INFO    ] 200
[2026-06-19 23:45:57,676.676 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:45:57,717.717 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:45:57,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:45:57,763.763 INFO    ] No camera update needed
[2026-06-19 23:45:57,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:45:57,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:45:57,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:45:57,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:45:59,820.820 INFO    ] ================================================
[2026-06-19 23:45:59,835.835 INFO    ] Launching Daemon at Fri Jun 19 23:45:59 IST 2026
[2026-06-19 23:45:59,846.846 INFO    ] ================================================
[2026-06-19 23:46:00,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:46:00
[2026-06-19 23:46:01,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:46:01,538.538 INFO    ] Initializing speech engine...
[2026-06-19 23:46:01,551.551 INFO    ] 2026-06-19 23:46:01
[2026-06-19 23:46:01,842.842 INFO    ] 2026-06-19 23:46:01
[2026-06-19 23:46:01,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:46:02,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:46:02,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:46:02,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:46:02,271.271 INFO    ] time= 19/06/2026 23:46:02
[2026-06-19 23:46:02,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:46:02,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:46:02,324.324 INFO    ] No existing commands found in stream
[2026-06-19 23:46:07,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:46:07,337.337 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-19 23:46:08,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:46:08,155.155 INFO    ] Checking for system updates...
[2026-06-19 23:46:08,191.191 INFO    ] 200
[2026-06-19 23:46:08,194.194 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:08,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:46:08,249.249 INFO    ] No update needed
[2026-06-19 23:46:08,251.251 INFO    ] Checking for camera pi updates...
[2026-06-19 23:46:08,290.290 INFO    ] 200
[2026-06-19 23:46:08,293.293 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:08,333.333 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:46:08,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:46:08,378.378 INFO    ] No camera update needed
[2026-06-19 23:46:08,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:46:08,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:46:08,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:46:08,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:46:10,436.436 INFO    ] ================================================
[2026-06-19 23:46:10,451.451 INFO    ] Launching Daemon at Fri Jun 19 23:46:10 IST 2026
[2026-06-19 23:46:10,463.463 INFO    ] ================================================
[2026-06-19 23:46:11,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:46:11
[2026-06-19 23:46:11,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:46:11,936.936 INFO    ] Initializing speech engine...
[2026-06-19 23:46:11,945.945 INFO    ] 2026-06-19 23:46:11
[2026-06-19 23:46:12,191.191 INFO    ] 2026-06-19 23:46:12
[2026-06-19 23:46:12,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:46:12,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:46:12,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:46:12,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:46:12,643.643 INFO    ] time= 19/06/2026 23:46:12
[2026-06-19 23:46:12,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:46:12,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:46:12,807.807 INFO    ] No existing commands found in stream
[2026-06-19 23:46:17,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:46:17,822.822 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 23:46:18,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:46:18,501.501 INFO    ] Checking for system updates...
[2026-06-19 23:46:18,541.541 INFO    ] 200
[2026-06-19 23:46:18,544.544 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:18,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:46:18,600.600 INFO    ] No update needed
[2026-06-19 23:46:18,602.602 INFO    ] Checking for camera pi updates...
[2026-06-19 23:46:18,636.636 INFO    ] 200
[2026-06-19 23:46:18,639.639 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:18,680.680 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:46:18,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:46:18,719.719 INFO    ] No camera update needed
[2026-06-19 23:46:18,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:46:18,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:46:18,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:46:18,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:46:20,778.778 INFO    ] ================================================
[2026-06-19 23:46:20,793.793 INFO    ] Launching Daemon at Fri Jun 19 23:46:20 IST 2026
[2026-06-19 23:46:20,804.804 INFO    ] ================================================
[2026-06-19 23:46:21,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:46:21
[2026-06-19 23:46:22,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:46:22,473.473 INFO    ] Initializing speech engine...
[2026-06-19 23:46:22,480.480 INFO    ] 2026-06-19 23:46:22
[2026-06-19 23:46:22,788.788 INFO    ] 2026-06-19 23:46:22
[2026-06-19 23:46:22,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:46:23,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:46:23,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:46:23,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:46:23,299.299 INFO    ] time= 19/06/2026 23:46:23
[2026-06-19 23:46:23,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:46:23,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:46:23,455.455 INFO    ] No existing commands found in stream
[2026-06-19 23:46:28,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:46:28,473.473 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-19 23:46:29,906.906 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:46:29,908.908 INFO    ] Checking for system updates...
[2026-06-19 23:46:29,945.945 INFO    ] 200
[2026-06-19 23:46:29,947.947 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:30,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:46:30,004.004 INFO    ] No update needed
[2026-06-19 23:46:30,007.007 INFO    ] Checking for camera pi updates...
[2026-06-19 23:46:30,042.042 INFO    ] 200
[2026-06-19 23:46:30,045.045 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:30,086.086 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:46:30,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:46:30,150.150 INFO    ] No camera update needed
[2026-06-19 23:46:30,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:46:30,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:46:30,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:46:30,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:46:32,208.208 INFO    ] ================================================
[2026-06-19 23:46:32,225.225 INFO    ] Launching Daemon at Fri Jun 19 23:46:32 IST 2026
[2026-06-19 23:46:32,237.237 INFO    ] ================================================
[2026-06-19 23:46:32,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:46:32
[2026-06-19 23:46:33,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:46:33,728.728 INFO    ] Initializing speech engine...
[2026-06-19 23:46:33,737.737 INFO    ] 2026-06-19 23:46:33
[2026-06-19 23:46:33,995.995 INFO    ] 2026-06-19 23:46:33
[2026-06-19 23:46:34,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:46:34,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:46:34,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:46:34,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:46:34,460.460 INFO    ] time= 19/06/2026 23:46:34
[2026-06-19 23:46:34,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:46:34,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:46:34,612.612 INFO    ] No existing commands found in stream
[2026-06-19 23:46:39,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:46:39,630.630 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-19 23:46:43,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:46:43,205.205 INFO    ] Checking for system updates...
[2026-06-19 23:46:43,242.242 INFO    ] 200
[2026-06-19 23:46:43,244.244 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:43,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:46:43,312.312 INFO    ] No update needed
[2026-06-19 23:46:43,314.314 INFO    ] Checking for camera pi updates...
[2026-06-19 23:46:43,349.349 INFO    ] 200
[2026-06-19 23:46:43,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:43,394.394 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:46:43,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:46:43,453.453 INFO    ] No camera update needed
[2026-06-19 23:46:43,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:46:43,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:46:43,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:46:43,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:46:45,514.514 INFO    ] ================================================
[2026-06-19 23:46:45,530.530 INFO    ] Launching Daemon at Fri Jun 19 23:46:45 IST 2026
[2026-06-19 23:46:45,541.541 INFO    ] ================================================
[2026-06-19 23:46:46,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:46:46
[2026-06-19 23:46:46,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:46:46,963.963 INFO    ] Initializing speech engine...
[2026-06-19 23:46:46,972.972 INFO    ] 2026-06-19 23:46:46
[2026-06-19 23:46:47,220.220 INFO    ] 2026-06-19 23:46:47
[2026-06-19 23:46:47,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:46:47,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:46:47,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:46:47,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:46:47,679.679 INFO    ] time= 19/06/2026 23:46:47
[2026-06-19 23:46:47,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:46:47,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:46:47,845.845 INFO    ] No existing commands found in stream
[2026-06-19 23:46:52,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:46:52,859.859 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-19 23:46:56,428.428 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:46:56,431.431 INFO    ] Checking for system updates...
[2026-06-19 23:46:56,467.467 INFO    ] 200
[2026-06-19 23:46:56,469.469 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:56,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:46:56,532.532 INFO    ] No update needed
[2026-06-19 23:46:56,534.534 INFO    ] Checking for camera pi updates...
[2026-06-19 23:46:56,569.569 INFO    ] 200
[2026-06-19 23:46:56,571.571 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:46:56,617.617 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:46:56,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:46:56,671.671 INFO    ] No camera update needed
[2026-06-19 23:46:56,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:46:56,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:46:56,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:46:56,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:46:58,729.729 INFO    ] ================================================
[2026-06-19 23:46:58,744.744 INFO    ] Launching Daemon at Fri Jun 19 23:46:58 IST 2026
[2026-06-19 23:46:58,755.755 INFO    ] ================================================
[2026-06-19 23:46:59,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:46:59
[2026-06-19 23:47:00,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:47:00,288.288 INFO    ] Initializing speech engine...
[2026-06-19 23:47:00,298.298 INFO    ] 2026-06-19 23:47:00
[2026-06-19 23:47:00,546.546 INFO    ] 2026-06-19 23:47:00
[2026-06-19 23:47:00,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:47:00,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:47:00,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:47:00,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:47:01,011.011 INFO    ] time= 19/06/2026 23:47:00
[2026-06-19 23:47:01,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:47:01,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:47:01,171.171 INFO    ] No existing commands found in stream
[2026-06-19 23:47:06,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:47:06,186.186 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 23:47:08,949.949 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:47:08,952.952 INFO    ] Checking for system updates...
[2026-06-19 23:47:08,989.989 INFO    ] 200
[2026-06-19 23:47:08,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:09,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:09,048.048 INFO    ] No update needed
[2026-06-19 23:47:09,051.051 INFO    ] Checking for camera pi updates...
[2026-06-19 23:47:09,085.085 INFO    ] 200
[2026-06-19 23:47:09,088.088 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:09,129.129 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:47:09,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:09,281.281 INFO    ] No camera update needed
[2026-06-19 23:47:09,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:47:09,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:47:09,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:47:09,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:47:11,338.338 INFO    ] ================================================
[2026-06-19 23:47:11,353.353 INFO    ] Launching Daemon at Fri Jun 19 23:47:11 IST 2026
[2026-06-19 23:47:11,364.364 INFO    ] ================================================
[2026-06-19 23:47:11,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:47:11
[2026-06-19 23:47:12,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:47:12,966.966 INFO    ] Initializing speech engine...
[2026-06-19 23:47:12,972.972 INFO    ] 2026-06-19 23:47:12
[2026-06-19 23:47:13,262.262 INFO    ] 2026-06-19 23:47:13
[2026-06-19 23:47:13,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:47:13,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:47:13,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:47:13,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:47:13,741.741 INFO    ] time= 19/06/2026 23:47:13
[2026-06-19 23:47:13,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:47:13,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:47:13,953.953 INFO    ] No existing commands found in stream
[2026-06-19 23:47:18,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:47:18,973.973 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 23:47:20,005.005 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:47:20,008.008 INFO    ] Checking for system updates...
[2026-06-19 23:47:20,045.045 INFO    ] 200
[2026-06-19 23:47:20,048.048 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:20,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:20,110.110 INFO    ] No update needed
[2026-06-19 23:47:20,113.113 INFO    ] Checking for camera pi updates...
[2026-06-19 23:47:20,147.147 INFO    ] 200
[2026-06-19 23:47:20,149.149 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:20,194.194 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:47:20,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:20,242.242 INFO    ] No camera update needed
[2026-06-19 23:47:20,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:47:20,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:47:20,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:47:20,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:47:22,299.299 INFO    ] ================================================
[2026-06-19 23:47:22,314.314 INFO    ] Launching Daemon at Fri Jun 19 23:47:22 IST 2026
[2026-06-19 23:47:22,326.326 INFO    ] ================================================
[2026-06-19 23:47:22,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:47:22
[2026-06-19 23:47:23,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:47:23,759.759 INFO    ] Initializing speech engine...
[2026-06-19 23:47:23,768.768 INFO    ] 2026-06-19 23:47:23
[2026-06-19 23:47:24,015.015 INFO    ] 2026-06-19 23:47:24
[2026-06-19 23:47:24,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:47:24,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:47:24,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:47:24,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:47:24,384.384 INFO    ] time= 19/06/2026 23:47:24
[2026-06-19 23:47:24,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:47:24,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:47:24,556.556 INFO    ] No existing commands found in stream
[2026-06-19 23:47:29,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:47:29,589.589 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-19 23:47:32,595.595 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:47:32,598.598 INFO    ] Checking for system updates...
[2026-06-19 23:47:32,640.640 INFO    ] 200
[2026-06-19 23:47:32,643.643 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:32,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:32,714.714 INFO    ] No update needed
[2026-06-19 23:47:32,717.717 INFO    ] Checking for camera pi updates...
[2026-06-19 23:47:32,758.758 INFO    ] 200
[2026-06-19 23:47:32,761.761 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:32,807.807 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:47:32,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:32,864.864 INFO    ] No camera update needed
[2026-06-19 23:47:32,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:47:32,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:47:32,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:47:32,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:47:34,923.923 INFO    ] ================================================
[2026-06-19 23:47:34,939.939 INFO    ] Launching Daemon at Fri Jun 19 23:47:34 IST 2026
[2026-06-19 23:47:34,951.951 INFO    ] ================================================
[2026-06-19 23:47:35,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:47:35
[2026-06-19 23:47:36,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:47:36,369.369 INFO    ] Initializing speech engine...
[2026-06-19 23:47:36,384.384 INFO    ] 2026-06-19 23:47:36
[2026-06-19 23:47:36,651.651 INFO    ] 2026-06-19 23:47:36
[2026-06-19 23:47:36,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:47:36,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:47:36,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:47:37,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:47:37,051.051 INFO    ] time= 19/06/2026 23:47:37
[2026-06-19 23:47:37,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:47:37,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:47:37,179.179 INFO    ] No existing commands found in stream
[2026-06-19 23:47:42,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:47:42,207.207 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-19 23:47:46,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:47:46,519.519 INFO    ] Checking for system updates...
[2026-06-19 23:47:46,558.558 INFO    ] 200
[2026-06-19 23:47:46,561.561 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:46,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:46,617.617 INFO    ] No update needed
[2026-06-19 23:47:46,620.620 INFO    ] Checking for camera pi updates...
[2026-06-19 23:47:46,654.654 INFO    ] 200
[2026-06-19 23:47:46,657.657 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:46,701.701 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:47:46,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:46,814.814 INFO    ] No camera update needed
[2026-06-19 23:47:46,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:47:46,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:47:46,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:47:46,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:47:48,869.869 INFO    ] ================================================
[2026-06-19 23:47:48,885.885 INFO    ] Launching Daemon at Fri Jun 19 23:47:48 IST 2026
[2026-06-19 23:47:48,896.896 INFO    ] ================================================
[2026-06-19 23:47:49,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:47:49
[2026-06-19 23:47:50,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:47:50,332.332 INFO    ] Initializing speech engine...
[2026-06-19 23:47:50,341.341 INFO    ] 2026-06-19 23:47:50
[2026-06-19 23:47:50,639.639 INFO    ] 2026-06-19 23:47:50
[2026-06-19 23:47:50,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:47:50,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:47:50,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:47:51,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:47:51,018.018 INFO    ] time= 19/06/2026 23:47:51
[2026-06-19 23:47:51,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:47:51,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:47:51,145.145 INFO    ] No existing commands found in stream
[2026-06-19 23:47:56,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:47:56,161.161 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 23:47:58,912.912 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:47:58,914.914 INFO    ] Checking for system updates...
[2026-06-19 23:47:58,954.954 INFO    ] 200
[2026-06-19 23:47:58,957.957 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:59,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:59,019.019 INFO    ] No update needed
[2026-06-19 23:47:59,021.021 INFO    ] Checking for camera pi updates...
[2026-06-19 23:47:59,059.059 INFO    ] 200
[2026-06-19 23:47:59,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:47:59,103.103 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:47:59,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:47:59,153.153 INFO    ] No camera update needed
[2026-06-19 23:47:59,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:47:59,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:47:59,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:47:59,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:48:01,209.209 INFO    ] ================================================
[2026-06-19 23:48:01,224.224 INFO    ] Launching Daemon at Fri Jun 19 23:48:01 IST 2026
[2026-06-19 23:48:01,235.235 INFO    ] ================================================
[2026-06-19 23:48:01,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:48:01
[2026-06-19 23:48:02,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:48:03,000.000 INFO    ] Initializing speech engine...
[2026-06-19 23:48:03,005.005 INFO    ] 2026-06-19 23:48:03
[2026-06-19 23:48:03,336.336 INFO    ] 2026-06-19 23:48:03
[2026-06-19 23:48:03,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:48:03,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:48:03,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:48:03,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:48:03,836.836 INFO    ] time= 19/06/2026 23:48:03
[2026-06-19 23:48:03,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:48:03,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:48:04,022.022 INFO    ] No existing commands found in stream
[2026-06-19 23:48:09,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:48:09,037.037 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-19 23:48:11,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:48:11,785.785 INFO    ] Checking for system updates...
[2026-06-19 23:48:11,827.827 INFO    ] 200
[2026-06-19 23:48:11,830.830 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:11,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:48:11,886.886 INFO    ] No update needed
[2026-06-19 23:48:11,888.888 INFO    ] Checking for camera pi updates...
[2026-06-19 23:48:11,922.922 INFO    ] 200
[2026-06-19 23:48:11,925.925 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:11,972.972 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:48:12,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:48:12,028.028 INFO    ] No camera update needed
[2026-06-19 23:48:12,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:48:12,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:48:12,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:48:12,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:48:14,089.089 INFO    ] ================================================
[2026-06-19 23:48:14,104.104 INFO    ] Launching Daemon at Fri Jun 19 23:48:14 IST 2026
[2026-06-19 23:48:14,115.115 INFO    ] ================================================
[2026-06-19 23:48:14,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:48:14
[2026-06-19 23:48:15,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:48:15,767.767 INFO    ] Initializing speech engine...
[2026-06-19 23:48:15,774.774 INFO    ] 2026-06-19 23:48:15
[2026-06-19 23:48:16,049.049 INFO    ] 2026-06-19 23:48:16
[2026-06-19 23:48:16,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:48:16,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:48:16,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:48:16,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:48:16,530.530 INFO    ] time= 19/06/2026 23:48:16
[2026-06-19 23:48:16,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:48:16,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:48:16,699.699 INFO    ] No existing commands found in stream
[2026-06-19 23:48:21,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:48:21,741.741 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-19 23:48:23,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:48:23,938.938 INFO    ] Checking for system updates...
[2026-06-19 23:48:23,975.975 INFO    ] 200
[2026-06-19 23:48:23,978.978 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:24,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:48:24,035.035 INFO    ] No update needed
[2026-06-19 23:48:24,038.038 INFO    ] Checking for camera pi updates...
[2026-06-19 23:48:24,072.072 INFO    ] 200
[2026-06-19 23:48:24,075.075 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:24,116.116 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:48:24,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:48:24,168.168 INFO    ] No camera update needed
[2026-06-19 23:48:24,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:48:24,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:48:24,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:48:24,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:48:26,224.224 INFO    ] ================================================
[2026-06-19 23:48:26,239.239 INFO    ] Launching Daemon at Fri Jun 19 23:48:26 IST 2026
[2026-06-19 23:48:26,250.250 INFO    ] ================================================
[2026-06-19 23:48:26,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:48:26
[2026-06-19 23:48:27,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:48:27,658.658 INFO    ] Initializing speech engine...
[2026-06-19 23:48:27,663.663 INFO    ] 2026-06-19 23:48:27
[2026-06-19 23:48:27,936.936 INFO    ] 2026-06-19 23:48:27
[2026-06-19 23:48:27,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:48:28,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:48:28,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:48:28,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:48:28,385.385 INFO    ] time= 19/06/2026 23:48:28
[2026-06-19 23:48:28,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:48:28,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:48:28,574.574 INFO    ] No existing commands found in stream
[2026-06-19 23:48:33,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:48:33,589.589 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-19 23:48:34,225.225 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:48:34,228.228 INFO    ] Checking for system updates...
[2026-06-19 23:48:34,268.268 INFO    ] 200
[2026-06-19 23:48:34,271.271 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:34,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:48:34,334.334 INFO    ] No update needed
[2026-06-19 23:48:34,336.336 INFO    ] Checking for camera pi updates...
[2026-06-19 23:48:34,371.371 INFO    ] 200
[2026-06-19 23:48:34,374.374 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:34,421.421 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:48:34,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:48:34,472.472 INFO    ] No camera update needed
[2026-06-19 23:48:34,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:48:34,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:48:34,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:48:34,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:48:36,533.533 INFO    ] ================================================
[2026-06-19 23:48:36,549.549 INFO    ] Launching Daemon at Fri Jun 19 23:48:36 IST 2026
[2026-06-19 23:48:36,561.561 INFO    ] ================================================
[2026-06-19 23:48:37,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:48:37
[2026-06-19 23:48:37,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:48:38,022.022 INFO    ] Initializing speech engine...
[2026-06-19 23:48:38,030.030 INFO    ] 2026-06-19 23:48:38
[2026-06-19 23:48:38,276.276 INFO    ] 2026-06-19 23:48:38
[2026-06-19 23:48:38,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:48:38,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:48:38,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:48:38,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:48:38,649.649 INFO    ] time= 19/06/2026 23:48:38
[2026-06-19 23:48:38,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:48:38,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:48:38,826.826 INFO    ] No existing commands found in stream
[2026-06-19 23:48:43,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:48:43,858.858 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-19 23:48:44,499.499 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:48:44,502.502 INFO    ] Checking for system updates...
[2026-06-19 23:48:44,542.542 INFO    ] 200
[2026-06-19 23:48:44,545.545 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:44,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:48:44,608.608 INFO    ] No update needed
[2026-06-19 23:48:44,611.611 INFO    ] Checking for camera pi updates...
[2026-06-19 23:48:44,645.645 INFO    ] 200
[2026-06-19 23:48:44,648.648 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:44,690.690 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:48:44,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:48:44,737.737 INFO    ] No camera update needed
[2026-06-19 23:48:44,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:48:44,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:48:44,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:48:44,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:48:46,794.794 INFO    ] ================================================
[2026-06-19 23:48:46,810.810 INFO    ] Launching Daemon at Fri Jun 19 23:48:46 IST 2026
[2026-06-19 23:48:46,821.821 INFO    ] ================================================
[2026-06-19 23:48:47,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:48:47
[2026-06-19 23:48:48,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:48:48,362.362 INFO    ] Initializing speech engine...
[2026-06-19 23:48:48,372.372 INFO    ] 2026-06-19 23:48:48
[2026-06-19 23:48:48,660.660 INFO    ] 2026-06-19 23:48:48
[2026-06-19 23:48:48,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:48:48,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:48:48,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:48:49,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:48:49,197.197 INFO    ] time= 19/06/2026 23:48:49
[2026-06-19 23:48:49,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:48:49,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:48:49,339.339 INFO    ] No existing commands found in stream
[2026-06-19 23:48:54,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:48:54,365.365 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-19 23:48:57,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:48:57,728.728 INFO    ] Checking for system updates...
[2026-06-19 23:48:57,765.765 INFO    ] 200
[2026-06-19 23:48:57,768.768 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:57,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:48:57,832.832 INFO    ] No update needed
[2026-06-19 23:48:57,835.835 INFO    ] Checking for camera pi updates...
[2026-06-19 23:48:57,870.870 INFO    ] 200
[2026-06-19 23:48:57,873.873 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:48:57,920.920 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:48:57,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:48:57,992.992 INFO    ] No camera update needed
[2026-06-19 23:48:57,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:48:57,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:48:58,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:48:58,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:49:00,048.048 INFO    ] ================================================
[2026-06-19 23:49:00,064.064 INFO    ] Launching Daemon at Fri Jun 19 23:49:00 IST 2026
[2026-06-19 23:49:00,075.075 INFO    ] ================================================
[2026-06-19 23:49:00,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:49:00
[2026-06-19 23:49:01,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:49:01,731.731 INFO    ] Initializing speech engine...
[2026-06-19 23:49:01,743.743 INFO    ] 2026-06-19 23:49:01
[2026-06-19 23:49:02,014.014 INFO    ] 2026-06-19 23:49:02
[2026-06-19 23:49:02,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:49:02,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:49:02,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:49:02,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:49:02,416.416 INFO    ] time= 19/06/2026 23:49:02
[2026-06-19 23:49:02,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:49:02,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:49:02,488.488 INFO    ] No existing commands found in stream
[2026-06-19 23:49:07,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:49:07,502.502 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-19 23:49:11,642.642 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:49:11,645.645 INFO    ] Checking for system updates...
[2026-06-19 23:49:11,682.682 INFO    ] 200
[2026-06-19 23:49:11,684.684 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:11,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:49:11,743.743 INFO    ] No update needed
[2026-06-19 23:49:11,746.746 INFO    ] Checking for camera pi updates...
[2026-06-19 23:49:11,783.783 INFO    ] 200
[2026-06-19 23:49:11,786.786 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:11,832.832 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:49:11,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:49:11,979.979 INFO    ] No camera update needed
[2026-06-19 23:49:11,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:49:11,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:49:11,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:49:11,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:49:14,035.035 INFO    ] ================================================
[2026-06-19 23:49:14,050.050 INFO    ] Launching Daemon at Fri Jun 19 23:49:14 IST 2026
[2026-06-19 23:49:14,061.061 INFO    ] ================================================
[2026-06-19 23:49:14,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:49:14
[2026-06-19 23:49:15,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:49:15,477.477 INFO    ] Initializing speech engine...
[2026-06-19 23:49:15,485.485 INFO    ] 2026-06-19 23:49:15
[2026-06-19 23:49:15,780.780 INFO    ] 2026-06-19 23:49:15
[2026-06-19 23:49:15,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:49:16,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:49:16,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:49:16,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:49:16,139.139 INFO    ] time= 19/06/2026 23:49:16
[2026-06-19 23:49:16,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:49:16,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:49:16,219.219 INFO    ] No existing commands found in stream
[2026-06-19 23:49:21,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:49:21,233.233 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-19 23:49:23,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:49:23,147.147 INFO    ] Checking for system updates...
[2026-06-19 23:49:23,188.188 INFO    ] 200
[2026-06-19 23:49:23,190.190 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:23,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:49:23,252.252 INFO    ] No update needed
[2026-06-19 23:49:23,255.255 INFO    ] Checking for camera pi updates...
[2026-06-19 23:49:23,292.292 INFO    ] 200
[2026-06-19 23:49:23,295.295 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:23,336.336 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:49:23,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:49:23,390.390 INFO    ] No camera update needed
[2026-06-19 23:49:23,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:49:23,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:49:23,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:49:23,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:49:25,445.445 INFO    ] ================================================
[2026-06-19 23:49:25,460.460 INFO    ] Launching Daemon at Fri Jun 19 23:49:25 IST 2026
[2026-06-19 23:49:25,471.471 INFO    ] ================================================
[2026-06-19 23:49:26,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:49:26
[2026-06-19 23:49:26,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:49:26,874.874 INFO    ] Initializing speech engine...
[2026-06-19 23:49:26,897.897 INFO    ] 2026-06-19 23:49:26
[2026-06-19 23:49:27,148.148 INFO    ] 2026-06-19 23:49:27
[2026-06-19 23:49:27,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:49:27,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:49:27,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:49:27,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:49:27,619.619 INFO    ] time= 19/06/2026 23:49:27
[2026-06-19 23:49:27,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:49:27,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:49:27,768.768 INFO    ] No existing commands found in stream
[2026-06-19 23:49:32,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:49:32,780.780 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-19 23:49:33,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:49:33,927.927 INFO    ] Checking for system updates...
[2026-06-19 23:49:33,963.963 INFO    ] 200
[2026-06-19 23:49:33,966.966 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:34,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:49:34,021.021 INFO    ] No update needed
[2026-06-19 23:49:34,023.023 INFO    ] Checking for camera pi updates...
[2026-06-19 23:49:34,060.060 INFO    ] 200
[2026-06-19 23:49:34,063.063 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:34,108.108 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:49:34,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:49:34,157.157 INFO    ] No camera update needed
[2026-06-19 23:49:34,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:49:34,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:49:34,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:49:34,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:49:36,212.212 INFO    ] ================================================
[2026-06-19 23:49:36,228.228 INFO    ] Launching Daemon at Fri Jun 19 23:49:36 IST 2026
[2026-06-19 23:49:36,239.239 INFO    ] ================================================
[2026-06-19 23:49:36,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:49:36
[2026-06-19 23:49:37,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:49:37,658.658 INFO    ] Initializing speech engine...
[2026-06-19 23:49:37,683.683 INFO    ] 2026-06-19 23:49:37
[2026-06-19 23:49:37,953.953 INFO    ] 2026-06-19 23:49:37
[2026-06-19 23:49:37,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:49:38,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:49:38,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:49:38,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:49:38,374.374 INFO    ] time= 19/06/2026 23:49:38
[2026-06-19 23:49:38,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:49:38,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:49:38,462.462 INFO    ] No existing commands found in stream
[2026-06-19 23:49:43,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:49:43,478.478 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-19 23:49:46,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:49:46,583.583 INFO    ] Checking for system updates...
[2026-06-19 23:49:46,620.620 INFO    ] 200
[2026-06-19 23:49:46,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:46,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:49:46,684.684 INFO    ] No update needed
[2026-06-19 23:49:46,687.687 INFO    ] Checking for camera pi updates...
[2026-06-19 23:49:46,722.722 INFO    ] 200
[2026-06-19 23:49:46,724.724 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:46,770.770 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:49:46,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:49:46,831.831 INFO    ] No camera update needed
[2026-06-19 23:49:46,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:49:46,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:49:46,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:49:46,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:49:48,886.886 INFO    ] ================================================
[2026-06-19 23:49:48,901.901 INFO    ] Launching Daemon at Fri Jun 19 23:49:48 IST 2026
[2026-06-19 23:49:48,912.912 INFO    ] ================================================
[2026-06-19 23:49:49,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:49:49
[2026-06-19 23:49:50,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:49:50,328.328 INFO    ] Initializing speech engine...
[2026-06-19 23:49:50,340.340 INFO    ] 2026-06-19 23:49:50
[2026-06-19 23:49:50,605.605 INFO    ] 2026-06-19 23:49:50
[2026-06-19 23:49:50,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:49:50,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:49:50,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:49:51,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:49:51,076.076 INFO    ] time= 19/06/2026 23:49:51
[2026-06-19 23:49:51,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:49:51,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:49:51,224.224 INFO    ] No existing commands found in stream
[2026-06-19 23:49:56,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:49:56,239.239 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-19 23:49:57,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:49:57,288.288 INFO    ] Checking for system updates...
[2026-06-19 23:49:57,329.329 INFO    ] 200
[2026-06-19 23:49:57,332.332 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:57,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:49:57,394.394 INFO    ] No update needed
[2026-06-19 23:49:57,397.397 INFO    ] Checking for camera pi updates...
[2026-06-19 23:49:57,435.435 INFO    ] 200
[2026-06-19 23:49:57,438.438 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:49:57,484.484 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:49:57,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:49:57,531.531 INFO    ] No camera update needed
[2026-06-19 23:49:57,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:49:57,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:49:57,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:49:57,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:49:59,589.589 INFO    ] ================================================
[2026-06-19 23:49:59,604.604 INFO    ] Launching Daemon at Fri Jun 19 23:49:59 IST 2026
[2026-06-19 23:49:59,614.614 INFO    ] ================================================
[2026-06-19 23:50:00,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:50:00
[2026-06-19 23:50:00,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:50:01,153.153 INFO    ] Initializing speech engine...
[2026-06-19 23:50:01,160.160 INFO    ] 2026-06-19 23:50:01
[2026-06-19 23:50:01,453.453 INFO    ] 2026-06-19 23:50:01
[2026-06-19 23:50:01,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:50:01,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:50:01,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:50:01,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:50:01,827.827 INFO    ] time= 19/06/2026 23:50:01
[2026-06-19 23:50:01,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:50:01,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:50:01,933.933 INFO    ] No existing commands found in stream
[2026-06-19 23:50:06,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:50:06,970.970 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-19 23:50:09,235.235 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:50:09,238.238 INFO    ] Checking for system updates...
[2026-06-19 23:50:09,280.280 INFO    ] 200
[2026-06-19 23:50:09,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:50:09,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:50:09,354.354 INFO    ] No update needed
[2026-06-19 23:50:09,357.357 INFO    ] Checking for camera pi updates...
[2026-06-19 23:50:09,391.391 INFO    ] 200
[2026-06-19 23:50:09,394.394 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:50:09,442.442 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:50:09,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:50:09,500.500 INFO    ] No camera update needed
[2026-06-19 23:50:09,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:50:09,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:50:09,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:50:09,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:50:11,555.555 INFO    ] ================================================
[2026-06-19 23:50:11,571.571 INFO    ] Launching Daemon at Fri Jun 19 23:50:11 IST 2026
[2026-06-19 23:50:11,581.581 INFO    ] ================================================
[2026-06-19 23:50:12,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:50:12
[2026-06-19 23:50:12,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:50:13,069.069 INFO    ] Initializing speech engine...
[2026-06-19 23:50:13,083.083 INFO    ] 2026-06-19 23:50:13
[2026-06-19 23:50:13,353.353 INFO    ] 2026-06-19 23:50:13
[2026-06-19 23:50:13,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:50:13,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:50:13,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:50:13,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:50:13,752.752 INFO    ] time= 19/06/2026 23:50:13
[2026-06-19 23:50:13,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:50:13,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:50:13,914.914 INFO    ] No existing commands found in stream
[2026-06-19 23:50:18,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:50:18,942.942 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-19 23:50:22,714.714 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:50:22,717.717 INFO    ] Checking for system updates...
[2026-06-19 23:50:22,757.757 INFO    ] 200
[2026-06-19 23:50:22,759.759 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:50:22,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:50:22,821.821 INFO    ] No update needed
[2026-06-19 23:50:22,823.823 INFO    ] Checking for camera pi updates...
[2026-06-19 23:50:22,857.857 INFO    ] 200
[2026-06-19 23:50:22,860.860 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:50:22,900.900 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:50:22,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:50:22,933.933 INFO    ] No camera update needed
[2026-06-19 23:50:22,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:50:22,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:50:22,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:50:22,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:50:24,989.989 INFO    ] ================================================
[2026-06-19 23:50:25,004.004 INFO    ] Launching Daemon at Fri Jun 19 23:50:24 IST 2026
[2026-06-19 23:50:25,014.014 INFO    ] ================================================
[2026-06-19 23:50:25,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:50:25
[2026-06-19 23:50:26,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:50:26,472.472 INFO    ] Initializing speech engine...
[2026-06-19 23:50:26,479.479 INFO    ] 2026-06-19 23:50:26
[2026-06-19 23:50:26,739.739 INFO    ] 2026-06-19 23:50:26
[2026-06-19 23:50:26,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:50:27,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:50:27,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:50:27,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:50:27,209.209 INFO    ] time= 19/06/2026 23:50:27
[2026-06-19 23:50:27,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:50:27,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:50:27,342.342 INFO    ] No existing commands found in stream
[2026-06-19 23:50:32,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:50:32,358.358 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-19 23:50:35,367.367 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:50:35,369.369 INFO    ] Checking for system updates...
[2026-06-19 23:50:35,406.406 INFO    ] 200
[2026-06-19 23:50:35,409.409 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:50:35,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:50:35,471.471 INFO    ] No update needed
[2026-06-19 23:50:35,474.474 INFO    ] Checking for camera pi updates...
[2026-06-19 23:50:35,508.508 INFO    ] 200
[2026-06-19 23:50:35,511.511 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:50:35,554.554 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:50:35,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:50:35,604.604 INFO    ] No camera update needed
[2026-06-19 23:50:35,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:50:35,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:50:35,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:50:35,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:50:37,662.662 INFO    ] ================================================
[2026-06-19 23:50:37,677.677 INFO    ] Launching Daemon at Fri Jun 19 23:50:37 IST 2026
[2026-06-19 23:50:37,689.689 INFO    ] ================================================
[2026-06-19 23:50:38,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:50:38
[2026-06-19 23:50:39,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:50:39,346.346 INFO    ] Initializing speech engine...
[2026-06-19 23:50:39,355.355 INFO    ] 2026-06-19 23:50:39
[2026-06-19 23:50:39,631.631 INFO    ] 2026-06-19 23:50:39
[2026-06-19 23:50:39,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:50:39,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:50:39,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:50:40,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:50:40,103.103 INFO    ] time= 19/06/2026 23:50:40
[2026-06-19 23:50:40,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:50:40,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:50:40,321.321 INFO    ] No existing commands found in stream
[2026-06-19 23:50:45,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:50:45,344.344 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-19 23:50:47,183.183 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:50:47,186.186 INFO    ] Checking for system updates...
[2026-06-19 23:50:47,227.227 INFO    ] 200
[2026-06-19 23:50:47,230.230 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:50:47,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:50:47,292.292 INFO    ] No update needed
[2026-06-19 23:50:47,295.295 INFO    ] Checking for camera pi updates...
[2026-06-19 23:50:47,333.333 INFO    ] 200
[2026-06-19 23:50:47,336.336 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:50:47,382.382 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:50:47,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:50:47,426.426 INFO    ] No camera update needed
[2026-06-19 23:50:47,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:50:47,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:50:47,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:50:47,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:50:49,484.484 INFO    ] ================================================
[2026-06-19 23:50:49,499.499 INFO    ] Launching Daemon at Fri Jun 19 23:50:49 IST 2026
[2026-06-19 23:50:49,510.510 INFO    ] ================================================
[2026-06-19 23:50:50,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:50:50
[2026-06-19 23:50:50,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:50:50,921.921 INFO    ] Initializing speech engine...
[2026-06-19 23:50:50,930.930 INFO    ] 2026-06-19 23:50:50
[2026-06-19 23:50:51,225.225 INFO    ] 2026-06-19 23:50:51
[2026-06-19 23:50:51,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:50:51,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:50:51,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:50:51,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:50:51,612.612 INFO    ] time= 19/06/2026 23:50:51
[2026-06-19 23:50:51,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:50:51,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:50:51,738.738 INFO    ] No existing commands found in stream
[2026-06-19 23:50:56,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:50:56,754.754 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-19 23:51:00,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:51:00,182.182 INFO    ] Checking for system updates...
[2026-06-19 23:51:00,232.232 INFO    ] 200
[2026-06-19 23:51:00,235.235 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:00,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:51:00,295.295 INFO    ] No update needed
[2026-06-19 23:51:00,298.298 INFO    ] Checking for camera pi updates...
[2026-06-19 23:51:00,335.335 INFO    ] 200
[2026-06-19 23:51:00,337.337 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:00,392.392 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:51:00,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:51:00,468.468 INFO    ] No camera update needed
[2026-06-19 23:51:00,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:51:00,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:51:00,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:51:00,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:51:02,538.538 INFO    ] ================================================
[2026-06-19 23:51:02,558.558 INFO    ] Launching Daemon at Fri Jun 19 23:51:02 IST 2026
[2026-06-19 23:51:02,573.573 INFO    ] ================================================
[2026-06-19 23:51:03,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:51:03
[2026-06-19 23:51:03,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:51:04,076.076 INFO    ] Initializing speech engine...
[2026-06-19 23:51:04,082.082 INFO    ] 2026-06-19 23:51:04
[2026-06-19 23:51:04,384.384 INFO    ] 2026-06-19 23:51:04
[2026-06-19 23:51:04,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:51:04,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:51:04,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:51:04,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:51:04,809.809 INFO    ] time= 19/06/2026 23:51:04
[2026-06-19 23:51:04,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:51:04,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:51:04,894.894 INFO    ] No existing commands found in stream
[2026-06-19 23:51:09,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:51:09,909.909 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-19 23:51:10,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:51:10,986.986 INFO    ] Checking for system updates...
[2026-06-19 23:51:11,028.028 INFO    ] 200
[2026-06-19 23:51:11,030.030 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:11,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:51:11,095.095 INFO    ] No update needed
[2026-06-19 23:51:11,097.097 INFO    ] Checking for camera pi updates...
[2026-06-19 23:51:11,135.135 INFO    ] 200
[2026-06-19 23:51:11,138.138 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:11,184.184 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:51:11,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:51:11,232.232 INFO    ] No camera update needed
[2026-06-19 23:51:11,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:51:11,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:51:11,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:51:11,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:51:13,288.288 INFO    ] ================================================
[2026-06-19 23:51:13,303.303 INFO    ] Launching Daemon at Fri Jun 19 23:51:13 IST 2026
[2026-06-19 23:51:13,314.314 INFO    ] ================================================
[2026-06-19 23:51:13,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:51:13
[2026-06-19 23:51:14,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:51:14,773.773 INFO    ] Initializing speech engine...
[2026-06-19 23:51:14,780.780 INFO    ] 2026-06-19 23:51:14
[2026-06-19 23:51:15,079.079 INFO    ] 2026-06-19 23:51:15
[2026-06-19 23:51:15,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:51:15,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:51:15,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:51:15,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:51:15,462.462 INFO    ] time= 19/06/2026 23:51:15
[2026-06-19 23:51:15,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:51:15,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:51:15,593.593 INFO    ] No existing commands found in stream
[2026-06-19 23:51:20,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:51:20,609.609 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-19 23:51:24,721.721 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:51:24,723.723 INFO    ] Checking for system updates...
[2026-06-19 23:51:24,764.764 INFO    ] 200
[2026-06-19 23:51:24,767.767 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:24,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:51:24,825.825 INFO    ] No update needed
[2026-06-19 23:51:24,828.828 INFO    ] Checking for camera pi updates...
[2026-06-19 23:51:24,863.863 INFO    ] 200
[2026-06-19 23:51:24,866.866 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:24,914.914 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:51:25,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:51:25,069.069 INFO    ] No camera update needed
[2026-06-19 23:51:25,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:51:25,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:51:25,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:51:25,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:51:27,131.131 INFO    ] ================================================
[2026-06-19 23:51:27,146.146 INFO    ] Launching Daemon at Fri Jun 19 23:51:27 IST 2026
[2026-06-19 23:51:27,157.157 INFO    ] ================================================
[2026-06-19 23:51:27,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:51:27
[2026-06-19 23:51:28,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:51:28,818.818 INFO    ] Initializing speech engine...
[2026-06-19 23:51:28,830.830 INFO    ] 2026-06-19 23:51:28
[2026-06-19 23:51:29,145.145 INFO    ] 2026-06-19 23:51:29
[2026-06-19 23:51:29,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:51:29,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:51:29,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:51:29,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:51:29,664.664 INFO    ] time= 19/06/2026 23:51:29
[2026-06-19 23:51:29,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:51:29,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:51:29,803.803 INFO    ] No existing commands found in stream
[2026-06-19 23:51:34,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:51:34,838.838 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-19 23:51:36,340.340 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:51:36,343.343 INFO    ] Checking for system updates...
[2026-06-19 23:51:36,384.384 INFO    ] 200
[2026-06-19 23:51:36,387.387 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:36,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:51:36,444.444 INFO    ] No update needed
[2026-06-19 23:51:36,447.447 INFO    ] Checking for camera pi updates...
[2026-06-19 23:51:36,482.482 INFO    ] 200
[2026-06-19 23:51:36,485.485 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:36,526.526 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:51:36,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:51:36,582.582 INFO    ] No camera update needed
[2026-06-19 23:51:36,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:51:36,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:51:36,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:51:36,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:51:38,640.640 INFO    ] ================================================
[2026-06-19 23:51:38,655.655 INFO    ] Launching Daemon at Fri Jun 19 23:51:38 IST 2026
[2026-06-19 23:51:38,665.665 INFO    ] ================================================
[2026-06-19 23:51:39,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:51:39
[2026-06-19 23:51:39,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:51:40,111.111 INFO    ] Initializing speech engine...
[2026-06-19 23:51:40,120.120 INFO    ] 2026-06-19 23:51:40
[2026-06-19 23:51:40,418.418 INFO    ] 2026-06-19 23:51:40
[2026-06-19 23:51:40,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:51:40,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:51:40,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:51:40,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:51:40,814.814 INFO    ] time= 19/06/2026 23:51:40
[2026-06-19 23:51:40,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:51:40,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:51:40,923.923 INFO    ] No existing commands found in stream
[2026-06-19 23:51:45,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:51:45,940.940 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-19 23:51:48,203.203 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:51:48,206.206 INFO    ] Checking for system updates...
[2026-06-19 23:51:48,246.246 INFO    ] 200
[2026-06-19 23:51:48,249.249 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:48,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:51:48,311.311 INFO    ] No update needed
[2026-06-19 23:51:48,313.313 INFO    ] Checking for camera pi updates...
[2026-06-19 23:51:48,352.352 INFO    ] 200
[2026-06-19 23:51:48,354.354 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:51:48,400.400 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:51:48,433.433 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:51:48,436.436 INFO    ] No camera update needed
[2026-06-19 23:51:48,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:51:48,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:51:48,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:51:48,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:51:50,490.490 INFO    ] ================================================
[2026-06-19 23:51:50,506.506 INFO    ] Launching Daemon at Fri Jun 19 23:51:50 IST 2026
[2026-06-19 23:51:50,516.516 INFO    ] ================================================
[2026-06-19 23:51:51,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:51:51
[2026-06-19 23:51:51,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:51:52,161.161 INFO    ] Initializing speech engine...
[2026-06-19 23:51:52,170.170 INFO    ] 2026-06-19 23:51:52
[2026-06-19 23:51:52,463.463 INFO    ] 2026-06-19 23:51:52
[2026-06-19 23:51:52,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:51:52,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:51:52,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:51:52,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:51:52,947.947 INFO    ] time= 19/06/2026 23:51:52
[2026-06-19 23:51:53,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:51:53,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:51:53,146.146 INFO    ] No existing commands found in stream
[2026-06-19 23:51:58,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:51:58,176.176 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-19 23:52:01,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:52:01,894.894 INFO    ] Checking for system updates...
[2026-06-19 23:52:01,938.938 INFO    ] 200
[2026-06-19 23:52:01,942.942 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:02,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:52:02,005.005 INFO    ] No update needed
[2026-06-19 23:52:02,008.008 INFO    ] Checking for camera pi updates...
[2026-06-19 23:52:02,057.057 INFO    ] 200
[2026-06-19 23:52:02,061.061 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:02,114.114 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:52:02,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:52:02,178.178 INFO    ] No camera update needed
[2026-06-19 23:52:02,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:52:02,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:52:02,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:52:02,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:52:04,244.244 INFO    ] ================================================
[2026-06-19 23:52:04,259.259 INFO    ] Launching Daemon at Fri Jun 19 23:52:04 IST 2026
[2026-06-19 23:52:04,270.270 INFO    ] ================================================
[2026-06-19 23:52:04,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:52:04
[2026-06-19 23:52:05,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:52:05,731.731 INFO    ] Initializing speech engine...
[2026-06-19 23:52:05,739.739 INFO    ] 2026-06-19 23:52:05
[2026-06-19 23:52:05,998.998 INFO    ] 2026-06-19 23:52:05
[2026-06-19 23:52:06,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:52:06,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:52:06,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:52:06,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:52:06,488.488 INFO    ] time= 19/06/2026 23:52:06
[2026-06-19 23:52:06,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:52:06,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:52:06,626.626 INFO    ] No existing commands found in stream
[2026-06-19 23:52:11,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:52:11,641.641 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-19 23:52:15,764.764 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:52:15,767.767 INFO    ] Checking for system updates...
[2026-06-19 23:52:15,803.803 INFO    ] 200
[2026-06-19 23:52:15,806.806 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:15,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:52:15,861.861 INFO    ] No update needed
[2026-06-19 23:52:15,864.864 INFO    ] Checking for camera pi updates...
[2026-06-19 23:52:15,897.897 INFO    ] 200
[2026-06-19 23:52:15,900.900 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:15,942.942 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:52:15,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:52:15,988.988 INFO    ] No camera update needed
[2026-06-19 23:52:15,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:52:15,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:52:15,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:52:16,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:52:18,043.043 INFO    ] ================================================
[2026-06-19 23:52:18,058.058 INFO    ] Launching Daemon at Fri Jun 19 23:52:18 IST 2026
[2026-06-19 23:52:18,069.069 INFO    ] ================================================
[2026-06-19 23:52:18,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:52:18
[2026-06-19 23:52:19,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:52:19,476.476 INFO    ] Initializing speech engine...
[2026-06-19 23:52:19,498.498 INFO    ] 2026-06-19 23:52:19
[2026-06-19 23:52:19,750.750 INFO    ] 2026-06-19 23:52:19
[2026-06-19 23:52:19,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:52:19,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:52:20,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:52:20,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:52:20,225.225 INFO    ] time= 19/06/2026 23:52:20
[2026-06-19 23:52:20,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:52:20,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:52:20,363.363 INFO    ] No existing commands found in stream
[2026-06-19 23:52:25,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:52:25,378.378 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-19 23:52:28,208.208 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:52:28,211.211 INFO    ] Checking for system updates...
[2026-06-19 23:52:28,250.250 INFO    ] 200
[2026-06-19 23:52:28,252.252 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:28,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:52:28,313.313 INFO    ] No update needed
[2026-06-19 23:52:28,315.315 INFO    ] Checking for camera pi updates...
[2026-06-19 23:52:28,349.349 INFO    ] 200
[2026-06-19 23:52:28,352.352 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:28,396.396 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:52:28,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:52:28,449.449 INFO    ] No camera update needed
[2026-06-19 23:52:28,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:52:28,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:52:28,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:52:28,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:52:30,506.506 INFO    ] ================================================
[2026-06-19 23:52:30,521.521 INFO    ] Launching Daemon at Fri Jun 19 23:52:30 IST 2026
[2026-06-19 23:52:30,533.533 INFO    ] ================================================
[2026-06-19 23:52:31,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:52:31
[2026-06-19 23:52:31,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:52:32,008.008 INFO    ] Initializing speech engine...
[2026-06-19 23:52:32,026.026 INFO    ] 2026-06-19 23:52:32
[2026-06-19 23:52:32,334.334 INFO    ] 2026-06-19 23:52:32
[2026-06-19 23:52:32,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:52:32,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:52:32,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:52:32,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:52:32,966.966 INFO    ] time= 19/06/2026 23:52:32
[2026-06-19 23:52:32,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:52:32,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:52:33,116.116 INFO    ] No existing commands found in stream
[2026-06-19 23:52:38,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:52:38,133.133 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-19 23:52:39,849.849 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:52:39,851.851 INFO    ] Checking for system updates...
[2026-06-19 23:52:39,888.888 INFO    ] 200
[2026-06-19 23:52:39,891.891 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:39,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:52:39,954.954 INFO    ] No update needed
[2026-06-19 23:52:39,957.957 INFO    ] Checking for camera pi updates...
[2026-06-19 23:52:39,996.996 INFO    ] 200
[2026-06-19 23:52:39,999.999 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:40,041.041 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:52:40,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:52:40,078.078 INFO    ] No camera update needed
[2026-06-19 23:52:40,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:52:40,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:52:40,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:52:40,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:52:42,137.137 INFO    ] ================================================
[2026-06-19 23:52:42,152.152 INFO    ] Launching Daemon at Fri Jun 19 23:52:42 IST 2026
[2026-06-19 23:52:42,163.163 INFO    ] ================================================
[2026-06-19 23:52:42,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:52:42
[2026-06-19 23:52:43,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:52:43,616.616 INFO    ] Initializing speech engine...
[2026-06-19 23:52:43,625.625 INFO    ] 2026-06-19 23:52:43
[2026-06-19 23:52:43,918.918 INFO    ] 2026-06-19 23:52:43
[2026-06-19 23:52:43,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:52:44,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:52:44,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:52:44,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:52:44,297.297 INFO    ] time= 19/06/2026 23:52:44
[2026-06-19 23:52:44,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:52:44,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:52:44,421.421 INFO    ] No existing commands found in stream
[2026-06-19 23:52:49,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:52:49,436.436 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-19 23:52:52,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:52:52,021.021 INFO    ] Checking for system updates...
[2026-06-19 23:52:52,058.058 INFO    ] 200
[2026-06-19 23:52:52,060.060 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:52,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:52:52,120.120 INFO    ] No update needed
[2026-06-19 23:52:52,122.122 INFO    ] Checking for camera pi updates...
[2026-06-19 23:52:52,156.156 INFO    ] 200
[2026-06-19 23:52:52,159.159 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:52:52,204.204 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:52:52,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:52:52,250.250 INFO    ] No camera update needed
[2026-06-19 23:52:52,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:52:52,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:52:52,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:52:52,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:52:54,305.305 INFO    ] ================================================
[2026-06-19 23:52:54,321.321 INFO    ] Launching Daemon at Fri Jun 19 23:52:54 IST 2026
[2026-06-19 23:52:54,332.332 INFO    ] ================================================
[2026-06-19 23:52:54,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:52:54
[2026-06-19 23:52:55,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:52:55,771.771 INFO    ] Initializing speech engine...
[2026-06-19 23:52:55,780.780 INFO    ] 2026-06-19 23:52:55
[2026-06-19 23:52:56,072.072 INFO    ] 2026-06-19 23:52:56
[2026-06-19 23:52:56,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:52:56,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:52:56,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:52:56,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:52:56,486.486 INFO    ] time= 19/06/2026 23:52:56
[2026-06-19 23:52:56,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:52:56,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:52:56,642.642 INFO    ] No existing commands found in stream
[2026-06-19 23:53:01,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:53:01,671.671 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-19 23:53:03,229.229 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:53:03,231.231 INFO    ] Checking for system updates...
[2026-06-19 23:53:03,271.271 INFO    ] 200
[2026-06-19 23:53:03,273.273 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:03,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:53:03,330.330 INFO    ] No update needed
[2026-06-19 23:53:03,332.332 INFO    ] Checking for camera pi updates...
[2026-06-19 23:53:03,371.371 INFO    ] 200
[2026-06-19 23:53:03,373.373 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:03,414.414 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:53:03,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:53:03,467.467 INFO    ] No camera update needed
[2026-06-19 23:53:03,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:53:03,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:53:03,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:53:03,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:53:05,525.525 INFO    ] ================================================
[2026-06-19 23:53:05,541.541 INFO    ] Launching Daemon at Fri Jun 19 23:53:05 IST 2026
[2026-06-19 23:53:05,553.553 INFO    ] ================================================
[2026-06-19 23:53:06,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:53:06
[2026-06-19 23:53:06,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:53:07,006.006 INFO    ] Initializing speech engine...
[2026-06-19 23:53:07,016.016 INFO    ] 2026-06-19 23:53:07
[2026-06-19 23:53:07,278.278 INFO    ] 2026-06-19 23:53:07
[2026-06-19 23:53:07,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:53:07,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:53:07,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:53:07,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:53:07,742.742 INFO    ] time= 19/06/2026 23:53:07
[2026-06-19 23:53:07,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:53:07,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:53:07,907.907 INFO    ] No existing commands found in stream
[2026-06-19 23:53:12,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:53:12,922.922 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-19 23:53:14,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:53:14,246.246 INFO    ] Checking for system updates...
[2026-06-19 23:53:14,282.282 INFO    ] 200
[2026-06-19 23:53:14,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:14,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:53:14,340.340 INFO    ] No update needed
[2026-06-19 23:53:14,342.342 INFO    ] Checking for camera pi updates...
[2026-06-19 23:53:14,375.375 INFO    ] 200
[2026-06-19 23:53:14,378.378 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:14,419.419 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:53:14,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:53:14,470.470 INFO    ] No camera update needed
[2026-06-19 23:53:14,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:53:14,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:53:14,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:53:14,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:53:16,525.525 INFO    ] ================================================
[2026-06-19 23:53:16,541.541 INFO    ] Launching Daemon at Fri Jun 19 23:53:16 IST 2026
[2026-06-19 23:53:16,552.552 INFO    ] ================================================
[2026-06-19 23:53:17,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:53:17
[2026-06-19 23:53:17,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:53:17,960.960 INFO    ] Initializing speech engine...
[2026-06-19 23:53:17,972.972 INFO    ] 2026-06-19 23:53:17
[2026-06-19 23:53:18,238.238 INFO    ] 2026-06-19 23:53:18
[2026-06-19 23:53:18,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:53:18,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:53:18,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:53:18,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:53:18,710.710 INFO    ] time= 19/06/2026 23:53:18
[2026-06-19 23:53:18,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:53:18,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:53:18,875.875 INFO    ] No existing commands found in stream
[2026-06-19 23:53:23,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:53:23,889.889 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-19 23:53:25,319.319 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:53:25,322.322 INFO    ] Checking for system updates...
[2026-06-19 23:53:25,360.360 INFO    ] 200
[2026-06-19 23:53:25,363.363 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:25,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:53:25,419.419 INFO    ] No update needed
[2026-06-19 23:53:25,421.421 INFO    ] Checking for camera pi updates...
[2026-06-19 23:53:25,462.462 INFO    ] 200
[2026-06-19 23:53:25,465.465 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:25,510.510 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:53:25,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:53:25,569.569 INFO    ] No camera update needed
[2026-06-19 23:53:25,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:53:25,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:53:25,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:53:25,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:53:27,624.624 INFO    ] ================================================
[2026-06-19 23:53:27,640.640 INFO    ] Launching Daemon at Fri Jun 19 23:53:27 IST 2026
[2026-06-19 23:53:27,656.656 INFO    ] ================================================
[2026-06-19 23:53:28,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:53:28
[2026-06-19 23:53:28,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:53:29,262.262 INFO    ] Initializing speech engine...
[2026-06-19 23:53:29,268.268 INFO    ] 2026-06-19 23:53:29
[2026-06-19 23:53:29,582.582 INFO    ] 2026-06-19 23:53:29
[2026-06-19 23:53:29,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:53:29,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:53:29,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:53:29,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:53:30,003.003 INFO    ] time= 19/06/2026 23:53:29
[2026-06-19 23:53:30,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:53:30,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:53:30,216.216 INFO    ] No existing commands found in stream
[2026-06-19 23:53:35,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:53:35,250.250 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-19 23:53:39,137.137 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:53:39,140.140 INFO    ] Checking for system updates...
[2026-06-19 23:53:39,182.182 INFO    ] 200
[2026-06-19 23:53:39,185.185 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:39,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:53:39,242.242 INFO    ] No update needed
[2026-06-19 23:53:39,245.245 INFO    ] Checking for camera pi updates...
[2026-06-19 23:53:39,280.280 INFO    ] 200
[2026-06-19 23:53:39,283.283 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:39,326.326 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:53:39,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:53:39,374.374 INFO    ] No camera update needed
[2026-06-19 23:53:39,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:53:39,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:53:39,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:53:39,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:53:41,434.434 INFO    ] ================================================
[2026-06-19 23:53:41,449.449 INFO    ] Launching Daemon at Fri Jun 19 23:53:41 IST 2026
[2026-06-19 23:53:41,459.459 INFO    ] ================================================
[2026-06-19 23:53:42,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:53:42
[2026-06-19 23:53:42,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:53:42,887.887 INFO    ] Initializing speech engine...
[2026-06-19 23:53:42,895.895 INFO    ] 2026-06-19 23:53:42
[2026-06-19 23:53:43,145.145 INFO    ] 2026-06-19 23:53:43
[2026-06-19 23:53:43,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:53:43,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:53:43,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:53:43,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:53:43,524.524 INFO    ] time= 19/06/2026 23:53:43
[2026-06-19 23:53:43,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:53:43,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:53:43,685.685 INFO    ] No existing commands found in stream
[2026-06-19 23:53:48,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:53:48,712.712 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-19 23:53:49,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:53:49,476.476 INFO    ] Checking for system updates...
[2026-06-19 23:53:49,513.513 INFO    ] 200
[2026-06-19 23:53:49,516.516 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:49,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:53:49,581.581 INFO    ] No update needed
[2026-06-19 23:53:49,584.584 INFO    ] Checking for camera pi updates...
[2026-06-19 23:53:49,619.619 INFO    ] 200
[2026-06-19 23:53:49,622.622 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:49,663.663 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:53:49,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:53:49,701.701 INFO    ] No camera update needed
[2026-06-19 23:53:49,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:53:49,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:53:49,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:53:49,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:53:51,761.761 INFO    ] ================================================
[2026-06-19 23:53:51,776.776 INFO    ] Launching Daemon at Fri Jun 19 23:53:51 IST 2026
[2026-06-19 23:53:51,787.787 INFO    ] ================================================
[2026-06-19 23:53:52,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:53:52
[2026-06-19 23:53:53,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:53:53,336.336 INFO    ] Initializing speech engine...
[2026-06-19 23:53:53,351.351 INFO    ] 2026-06-19 23:53:53
[2026-06-19 23:53:53,618.618 INFO    ] 2026-06-19 23:53:53
[2026-06-19 23:53:53,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:53:53,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:53:53,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:53:54,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:53:54,129.129 INFO    ] time= 19/06/2026 23:53:54
[2026-06-19 23:53:54,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:53:54,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:53:54,312.312 INFO    ] No existing commands found in stream
[2026-06-19 23:53:59,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:53:59,347.347 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-19 23:53:59,820.820 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:53:59,823.823 INFO    ] Checking for system updates...
[2026-06-19 23:53:59,859.859 INFO    ] 200
[2026-06-19 23:53:59,862.862 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:53:59,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:53:59,925.925 INFO    ] No update needed
[2026-06-19 23:53:59,927.927 INFO    ] Checking for camera pi updates...
[2026-06-19 23:53:59,965.965 INFO    ] 200
[2026-06-19 23:53:59,968.968 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:00,009.009 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:54:00,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:54:00,062.062 INFO    ] No camera update needed
[2026-06-19 23:54:00,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:54:00,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:54:00,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:54:00,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:54:02,131.131 INFO    ] ================================================
[2026-06-19 23:54:02,172.172 INFO    ] Launching Daemon at Fri Jun 19 23:54:02 IST 2026
[2026-06-19 23:54:02,196.196 INFO    ] ================================================
[2026-06-19 23:54:02,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:54:02
[2026-06-19 23:54:03,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:54:03,892.892 INFO    ] Initializing speech engine...
[2026-06-19 23:54:03,898.898 INFO    ] 2026-06-19 23:54:03
[2026-06-19 23:54:04,178.178 INFO    ] 2026-06-19 23:54:04
[2026-06-19 23:54:04,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:54:04,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:54:04,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:54:04,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:54:04,531.531 INFO    ] time= 19/06/2026 23:54:04
[2026-06-19 23:54:04,536.536 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:54:04,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:54:04,612.612 INFO    ] No existing commands found in stream
[2026-06-19 23:54:09,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:54:09,626.626 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-19 23:54:13,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:54:13,057.057 INFO    ] Checking for system updates...
[2026-06-19 23:54:13,094.094 INFO    ] 200
[2026-06-19 23:54:13,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:13,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:54:13,160.160 INFO    ] No update needed
[2026-06-19 23:54:13,163.163 INFO    ] Checking for camera pi updates...
[2026-06-19 23:54:13,196.196 INFO    ] 200
[2026-06-19 23:54:13,199.199 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:13,239.239 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:54:13,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:54:13,298.298 INFO    ] No camera update needed
[2026-06-19 23:54:13,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:54:13,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:54:13,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:54:13,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:54:15,353.353 INFO    ] ================================================
[2026-06-19 23:54:15,369.369 INFO    ] Launching Daemon at Fri Jun 19 23:54:15 IST 2026
[2026-06-19 23:54:15,379.379 INFO    ] ================================================
[2026-06-19 23:54:15,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:54:15
[2026-06-19 23:54:16,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:54:16,834.834 INFO    ] Initializing speech engine...
[2026-06-19 23:54:16,845.845 INFO    ] 2026-06-19 23:54:16
[2026-06-19 23:54:17,093.093 INFO    ] 2026-06-19 23:54:17
[2026-06-19 23:54:17,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:54:17,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:54:17,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:54:17,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:54:17,568.568 INFO    ] time= 19/06/2026 23:54:17
[2026-06-19 23:54:17,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:54:17,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:54:17,719.719 INFO    ] No existing commands found in stream
[2026-06-19 23:54:22,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:54:22,742.742 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-19 23:54:24,744.744 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:54:24,746.746 INFO    ] Checking for system updates...
[2026-06-19 23:54:24,782.782 INFO    ] 200
[2026-06-19 23:54:24,785.785 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:24,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:54:24,848.848 INFO    ] No update needed
[2026-06-19 23:54:24,851.851 INFO    ] Checking for camera pi updates...
[2026-06-19 23:54:24,885.885 INFO    ] 200
[2026-06-19 23:54:24,888.888 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:24,935.935 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:54:24,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:54:24,990.990 INFO    ] No camera update needed
[2026-06-19 23:54:24,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:54:24,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:54:25,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:54:25,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:54:27,050.050 INFO    ] ================================================
[2026-06-19 23:54:27,065.065 INFO    ] Launching Daemon at Fri Jun 19 23:54:27 IST 2026
[2026-06-19 23:54:27,076.076 INFO    ] ================================================
[2026-06-19 23:54:27,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:54:27
[2026-06-19 23:54:28,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:54:28,481.481 INFO    ] Initializing speech engine...
[2026-06-19 23:54:28,489.489 INFO    ] 2026-06-19 23:54:28
[2026-06-19 23:54:28,763.763 INFO    ] 2026-06-19 23:54:28
[2026-06-19 23:54:28,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:54:28,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:54:28,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:54:29,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:54:29,145.145 INFO    ] time= 19/06/2026 23:54:29
[2026-06-19 23:54:29,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:54:29,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:54:29,316.316 INFO    ] No existing commands found in stream
[2026-06-19 23:54:34,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:54:34,351.351 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-19 23:54:36,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:54:36,127.127 INFO    ] Checking for system updates...
[2026-06-19 23:54:36,164.164 INFO    ] 200
[2026-06-19 23:54:36,167.167 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:36,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:54:36,226.226 INFO    ] No update needed
[2026-06-19 23:54:36,228.228 INFO    ] Checking for camera pi updates...
[2026-06-19 23:54:36,267.267 INFO    ] 200
[2026-06-19 23:54:36,270.270 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:36,310.310 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:54:36,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:54:36,360.360 INFO    ] No camera update needed
[2026-06-19 23:54:36,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:54:36,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:54:36,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:54:36,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:54:38,418.418 INFO    ] ================================================
[2026-06-19 23:54:38,433.433 INFO    ] Launching Daemon at Fri Jun 19 23:54:38 IST 2026
[2026-06-19 23:54:38,445.445 INFO    ] ================================================
[2026-06-19 23:54:39,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:54:39
[2026-06-19 23:54:39,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:54:39,904.904 INFO    ] Initializing speech engine...
[2026-06-19 23:54:39,913.913 INFO    ] 2026-06-19 23:54:39
[2026-06-19 23:54:40,169.169 INFO    ] 2026-06-19 23:54:40
[2026-06-19 23:54:40,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:54:40,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:54:40,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:54:40,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:54:40,636.636 INFO    ] time= 19/06/2026 23:54:40
[2026-06-19 23:54:40,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:54:40,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:54:40,783.783 INFO    ] No existing commands found in stream
[2026-06-19 23:54:45,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:54:45,798.798 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-19 23:54:46,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:54:46,949.949 INFO    ] Checking for system updates...
[2026-06-19 23:54:46,985.985 INFO    ] 200
[2026-06-19 23:54:46,988.988 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:47,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:54:47,050.050 INFO    ] No update needed
[2026-06-19 23:54:47,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 23:54:47,091.091 INFO    ] 200
[2026-06-19 23:54:47,093.093 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:47,134.134 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:54:47,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:54:47,243.243 INFO    ] No camera update needed
[2026-06-19 23:54:47,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:54:47,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:54:47,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:54:47,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:54:49,300.300 INFO    ] ================================================
[2026-06-19 23:54:49,315.315 INFO    ] Launching Daemon at Fri Jun 19 23:54:49 IST 2026
[2026-06-19 23:54:49,325.325 INFO    ] ================================================
[2026-06-19 23:54:49,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:54:49
[2026-06-19 23:54:50,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:54:50,767.767 INFO    ] Initializing speech engine...
[2026-06-19 23:54:50,794.794 INFO    ] 2026-06-19 23:54:50
[2026-06-19 23:54:51,073.073 INFO    ] 2026-06-19 23:54:51
[2026-06-19 23:54:51,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:54:51,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:54:51,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:54:51,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:54:51,456.456 INFO    ] time= 19/06/2026 23:54:51
[2026-06-19 23:54:51,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:54:51,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:54:51,583.583 INFO    ] No existing commands found in stream
[2026-06-19 23:54:56,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:54:56,598.598 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-19 23:54:57,951.951 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:54:57,953.953 INFO    ] Checking for system updates...
[2026-06-19 23:54:57,989.989 INFO    ] 200
[2026-06-19 23:54:57,991.991 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:58,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:54:58,049.049 INFO    ] No update needed
[2026-06-19 23:54:58,052.052 INFO    ] Checking for camera pi updates...
[2026-06-19 23:54:58,094.094 INFO    ] 200
[2026-06-19 23:54:58,097.097 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:54:58,137.137 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:54:58,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:54:58,182.182 INFO    ] No camera update needed
[2026-06-19 23:54:58,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:54:58,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:54:58,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:54:58,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:55:00,238.238 INFO    ] ================================================
[2026-06-19 23:55:00,253.253 INFO    ] Launching Daemon at Fri Jun 19 23:55:00 IST 2026
[2026-06-19 23:55:00,263.263 INFO    ] ================================================
[2026-06-19 23:55:00,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:55:00
[2026-06-19 23:55:01,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:55:02,050.050 INFO    ] Initializing speech engine...
[2026-06-19 23:55:02,070.070 INFO    ] 2026-06-19 23:55:02
[2026-06-19 23:55:02,383.383 INFO    ] 2026-06-19 23:55:02
[2026-06-19 23:55:02,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:55:02,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:55:02,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:55:02,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:55:02,836.836 INFO    ] time= 19/06/2026 23:55:02
[2026-06-19 23:55:02,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:55:02,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:55:02,992.992 INFO    ] No existing commands found in stream
[2026-06-19 23:55:08,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:55:08,014.014 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-19 23:55:09,847.847 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:55:09,850.850 INFO    ] Checking for system updates...
[2026-06-19 23:55:09,886.886 INFO    ] 200
[2026-06-19 23:55:09,889.889 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:09,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:55:09,948.948 INFO    ] No update needed
[2026-06-19 23:55:09,951.951 INFO    ] Checking for camera pi updates...
[2026-06-19 23:55:09,984.984 INFO    ] 200
[2026-06-19 23:55:09,987.987 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:10,033.033 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:55:10,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:55:10,087.087 INFO    ] No camera update needed
[2026-06-19 23:55:10,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:55:10,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:55:10,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:55:10,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:55:12,143.143 INFO    ] ================================================
[2026-06-19 23:55:12,158.158 INFO    ] Launching Daemon at Fri Jun 19 23:55:12 IST 2026
[2026-06-19 23:55:12,169.169 INFO    ] ================================================
[2026-06-19 23:55:12,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:55:12
[2026-06-19 23:55:13,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:55:13,623.623 INFO    ] Initializing speech engine...
[2026-06-19 23:55:13,632.632 INFO    ] 2026-06-19 23:55:13
[2026-06-19 23:55:13,882.882 INFO    ] 2026-06-19 23:55:13
[2026-06-19 23:55:13,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:55:14,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:55:14,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:55:14,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:55:14,353.353 INFO    ] time= 19/06/2026 23:55:14
[2026-06-19 23:55:14,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:55:14,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:55:14,502.502 INFO    ] No existing commands found in stream
[2026-06-19 23:55:19,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:55:19,517.517 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-19 23:55:22,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:55:22,968.968 INFO    ] Checking for system updates...
[2026-06-19 23:55:23,004.004 INFO    ] 200
[2026-06-19 23:55:23,007.007 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:23,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:55:23,063.063 INFO    ] No update needed
[2026-06-19 23:55:23,066.066 INFO    ] Checking for camera pi updates...
[2026-06-19 23:55:23,100.100 INFO    ] 200
[2026-06-19 23:55:23,102.102 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:23,143.143 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:55:23,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:55:23,196.196 INFO    ] No camera update needed
[2026-06-19 23:55:23,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:55:23,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:55:23,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:55:23,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:55:25,251.251 INFO    ] ================================================
[2026-06-19 23:55:25,266.266 INFO    ] Launching Daemon at Fri Jun 19 23:55:25 IST 2026
[2026-06-19 23:55:25,277.277 INFO    ] ================================================
[2026-06-19 23:55:25,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:55:25
[2026-06-19 23:55:26,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:55:26,722.722 INFO    ] Initializing speech engine...
[2026-06-19 23:55:26,738.738 INFO    ] 2026-06-19 23:55:26
[2026-06-19 23:55:27,027.027 INFO    ] 2026-06-19 23:55:27
[2026-06-19 23:55:27,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:55:27,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:55:27,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:55:27,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:55:27,440.440 INFO    ] time= 19/06/2026 23:55:27
[2026-06-19 23:55:27,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:55:27,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:55:27,530.530 INFO    ] No existing commands found in stream
[2026-06-19 23:55:32,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:55:32,547.547 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-19 23:55:34,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:55:34,306.306 INFO    ] Checking for system updates...
[2026-06-19 23:55:34,343.343 INFO    ] 200
[2026-06-19 23:55:34,345.345 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:34,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:55:34,401.401 INFO    ] No update needed
[2026-06-19 23:55:34,404.404 INFO    ] Checking for camera pi updates...
[2026-06-19 23:55:34,438.438 INFO    ] 200
[2026-06-19 23:55:34,440.440 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:34,480.480 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:55:34,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:55:34,632.632 INFO    ] No camera update needed
[2026-06-19 23:55:34,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:55:34,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:55:34,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:55:34,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:55:36,690.690 INFO    ] ================================================
[2026-06-19 23:55:36,705.705 INFO    ] Launching Daemon at Fri Jun 19 23:55:36 IST 2026
[2026-06-19 23:55:36,716.716 INFO    ] ================================================
[2026-06-19 23:55:37,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:55:37
[2026-06-19 23:55:37,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:55:38,136.136 INFO    ] Initializing speech engine...
[2026-06-19 23:55:38,143.143 INFO    ] 2026-06-19 23:55:38
[2026-06-19 23:55:38,440.440 INFO    ] 2026-06-19 23:55:38
[2026-06-19 23:55:38,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:55:38,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:55:38,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:55:38,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:55:38,817.817 INFO    ] time= 19/06/2026 23:55:38
[2026-06-19 23:55:38,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:55:38,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:55:38,946.946 INFO    ] No existing commands found in stream
[2026-06-19 23:55:43,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:55:43,961.961 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-19 23:55:46,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:55:46,080.080 INFO    ] Checking for system updates...
[2026-06-19 23:55:46,120.120 INFO    ] 200
[2026-06-19 23:55:46,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:46,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:55:46,179.179 INFO    ] No update needed
[2026-06-19 23:55:46,181.181 INFO    ] Checking for camera pi updates...
[2026-06-19 23:55:46,215.215 INFO    ] 200
[2026-06-19 23:55:46,217.217 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:46,258.258 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:55:46,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:55:46,314.314 INFO    ] No camera update needed
[2026-06-19 23:55:46,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:55:46,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:55:46,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:55:46,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:55:48,369.369 INFO    ] ================================================
[2026-06-19 23:55:48,384.384 INFO    ] Launching Daemon at Fri Jun 19 23:55:48 IST 2026
[2026-06-19 23:55:48,395.395 INFO    ] ================================================
[2026-06-19 23:55:49,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:55:49
[2026-06-19 23:55:49,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:55:50,036.036 INFO    ] Initializing speech engine...
[2026-06-19 23:55:50,042.042 INFO    ] 2026-06-19 23:55:50
[2026-06-19 23:55:50,351.351 INFO    ] 2026-06-19 23:55:50
[2026-06-19 23:55:50,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:55:50,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:55:50,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:55:50,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:55:50,857.857 INFO    ] time= 19/06/2026 23:55:50
[2026-06-19 23:55:50,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:55:50,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:55:51,014.014 INFO    ] No existing commands found in stream
[2026-06-19 23:55:56,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:55:56,032.032 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-19 23:55:59,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:55:59,144.144 INFO    ] Checking for system updates...
[2026-06-19 23:55:59,185.185 INFO    ] 200
[2026-06-19 23:55:59,187.187 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:59,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:55:59,244.244 INFO    ] No update needed
[2026-06-19 23:55:59,246.246 INFO    ] Checking for camera pi updates...
[2026-06-19 23:55:59,282.282 INFO    ] 200
[2026-06-19 23:55:59,285.285 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:55:59,327.327 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:55:59,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:55:59,373.373 INFO    ] No camera update needed
[2026-06-19 23:55:59,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:55:59,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:55:59,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:55:59,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:56:01,465.465 INFO    ] ================================================
[2026-06-19 23:56:01,508.508 INFO    ] Launching Daemon at Fri Jun 19 23:56:01 IST 2026
[2026-06-19 23:56:01,527.527 INFO    ] ================================================
[2026-06-19 23:56:02,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:56:02
[2026-06-19 23:56:02,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:56:03,301.301 INFO    ] Initializing speech engine...
[2026-06-19 23:56:03,308.308 INFO    ] 2026-06-19 23:56:03
[2026-06-19 23:56:03,643.643 INFO    ] 2026-06-19 23:56:03
[2026-06-19 23:56:03,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:56:03,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:56:03,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:56:04,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:56:04,148.148 INFO    ] time= 19/06/2026 23:56:04
[2026-06-19 23:56:04,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:56:04,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:56:04,305.305 INFO    ] No existing commands found in stream
[2026-06-19 23:56:09,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:56:09,331.331 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-19 23:56:13,192.192 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:56:13,195.195 INFO    ] Checking for system updates...
[2026-06-19 23:56:13,233.233 INFO    ] 200
[2026-06-19 23:56:13,236.236 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:56:13,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:56:13,292.292 INFO    ] No update needed
[2026-06-19 23:56:13,295.295 INFO    ] Checking for camera pi updates...
[2026-06-19 23:56:13,330.330 INFO    ] 200
[2026-06-19 23:56:13,333.333 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:56:13,387.387 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:56:13,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:56:13,442.442 INFO    ] No camera update needed
[2026-06-19 23:56:13,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:56:13,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:56:13,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:56:13,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:56:15,500.500 INFO    ] ================================================
[2026-06-19 23:56:15,516.516 INFO    ] Launching Daemon at Fri Jun 19 23:56:15 IST 2026
[2026-06-19 23:56:15,527.527 INFO    ] ================================================
[2026-06-19 23:56:16,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:56:16
[2026-06-19 23:56:16,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:56:17,101.101 INFO    ] Initializing speech engine...
[2026-06-19 23:56:17,111.111 INFO    ] 2026-06-19 23:56:17
[2026-06-19 23:56:17,363.363 INFO    ] 2026-06-19 23:56:17
[2026-06-19 23:56:17,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:56:17,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:56:17,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:56:17,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:56:17,790.790 INFO    ] time= 19/06/2026 23:56:17
[2026-06-19 23:56:17,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:56:17,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:56:17,969.969 INFO    ] No existing commands found in stream
[2026-06-19 23:56:22,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:56:22,984.984 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-19 23:56:26,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:56:26,350.350 INFO    ] Checking for system updates...
[2026-06-19 23:56:26,387.387 INFO    ] 200
[2026-06-19 23:56:26,389.389 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:56:26,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:56:26,444.444 INFO    ] No update needed
[2026-06-19 23:56:26,447.447 INFO    ] Checking for camera pi updates...
[2026-06-19 23:56:26,481.481 INFO    ] 200
[2026-06-19 23:56:26,483.483 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:56:26,529.529 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:56:26,577.577 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:56:26,580.580 INFO    ] No camera update needed
[2026-06-19 23:56:26,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:56:26,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:56:26,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:56:26,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:56:28,637.637 INFO    ] ================================================
[2026-06-19 23:56:28,652.652 INFO    ] Launching Daemon at Fri Jun 19 23:56:28 IST 2026
[2026-06-19 23:56:28,662.662 INFO    ] ================================================
[2026-06-19 23:56:29,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:56:29
[2026-06-19 23:56:29,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:56:30,059.059 INFO    ] Initializing speech engine...
[2026-06-19 23:56:30,067.067 INFO    ] 2026-06-19 23:56:30
[2026-06-19 23:56:30,342.342 INFO    ] 2026-06-19 23:56:30
[2026-06-19 23:56:30,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:56:30,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:56:30,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:56:30,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:56:30,690.690 INFO    ] time= 19/06/2026 23:56:30
[2026-06-19 23:56:30,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:56:30,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:56:30,815.815 INFO    ] No existing commands found in stream
[2026-06-19 23:56:35,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:56:35,829.829 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-19 23:56:39,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:56:39,778.778 INFO    ] Checking for system updates...
[2026-06-19 23:56:39,817.817 INFO    ] 200
[2026-06-19 23:56:39,820.820 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:56:39,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:56:39,881.881 INFO    ] No update needed
[2026-06-19 23:56:39,883.883 INFO    ] Checking for camera pi updates...
[2026-06-19 23:56:39,917.917 INFO    ] 200
[2026-06-19 23:56:39,919.919 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:56:39,960.960 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:56:40,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:56:40,032.032 INFO    ] No camera update needed
[2026-06-19 23:56:40,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:56:40,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:56:40,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:56:40,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:56:42,089.089 INFO    ] ================================================
[2026-06-19 23:56:42,104.104 INFO    ] Launching Daemon at Fri Jun 19 23:56:42 IST 2026
[2026-06-19 23:56:42,116.116 INFO    ] ================================================
[2026-06-19 23:56:42,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:56:42
[2026-06-19 23:56:43,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:56:43,602.602 INFO    ] Initializing speech engine...
[2026-06-19 23:56:43,612.612 INFO    ] 2026-06-19 23:56:43
[2026-06-19 23:56:43,875.875 INFO    ] 2026-06-19 23:56:43
[2026-06-19 23:56:43,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:56:44,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:56:44,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:56:44,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:56:44,316.316 INFO    ] time= 19/06/2026 23:56:44
[2026-06-19 23:56:44,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:56:44,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:56:44,480.480 INFO    ] No existing commands found in stream
[2026-06-19 23:56:49,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:56:49,495.495 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-19 23:56:52,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:56:52,082.082 INFO    ] Checking for system updates...
[2026-06-19 23:56:52,120.120 INFO    ] 200
[2026-06-19 23:56:52,123.123 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:56:52,176.176 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:56:52,179.179 INFO    ] No update needed
[2026-06-19 23:56:52,182.182 INFO    ] Checking for camera pi updates...
[2026-06-19 23:56:52,217.217 INFO    ] 200
[2026-06-19 23:56:52,219.219 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:56:52,261.261 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:56:52,313.313 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:56:52,316.316 INFO    ] No camera update needed
[2026-06-19 23:56:52,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:56:52,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:56:52,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:56:52,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:56:54,374.374 INFO    ] ================================================
[2026-06-19 23:56:54,389.389 INFO    ] Launching Daemon at Fri Jun 19 23:56:54 IST 2026
[2026-06-19 23:56:54,401.401 INFO    ] ================================================
[2026-06-19 23:56:54,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:56:54
[2026-06-19 23:56:55,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:56:55,810.810 INFO    ] Initializing speech engine...
[2026-06-19 23:56:55,817.817 INFO    ] 2026-06-19 23:56:55
[2026-06-19 23:56:56,114.114 INFO    ] 2026-06-19 23:56:56
[2026-06-19 23:56:56,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:56:56,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:56:56,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:56:56,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:56:56,611.611 INFO    ] time= 19/06/2026 23:56:56
[2026-06-19 23:56:56,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:56:56,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:56:56,768.768 INFO    ] No existing commands found in stream
[2026-06-19 23:57:01,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:57:01,802.802 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-19 23:57:05,314.314 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:57:05,317.317 INFO    ] Checking for system updates...
[2026-06-19 23:57:05,358.358 INFO    ] 200
[2026-06-19 23:57:05,361.361 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:05,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:57:05,424.424 INFO    ] No update needed
[2026-06-19 23:57:05,427.427 INFO    ] Checking for camera pi updates...
[2026-06-19 23:57:05,465.465 INFO    ] 200
[2026-06-19 23:57:05,468.468 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:05,517.517 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:57:05,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:57:05,571.571 INFO    ] No camera update needed
[2026-06-19 23:57:05,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:57:05,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:57:05,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:57:05,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:57:07,627.627 INFO    ] ================================================
[2026-06-19 23:57:07,643.643 INFO    ] Launching Daemon at Fri Jun 19 23:57:07 IST 2026
[2026-06-19 23:57:07,654.654 INFO    ] ================================================
[2026-06-19 23:57:08,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:57:08
[2026-06-19 23:57:08,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:57:09,080.080 INFO    ] Initializing speech engine...
[2026-06-19 23:57:09,089.089 INFO    ] 2026-06-19 23:57:09
[2026-06-19 23:57:09,343.343 INFO    ] 2026-06-19 23:57:09
[2026-06-19 23:57:09,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:57:09,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:57:09,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:57:09,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:57:09,806.806 INFO    ] time= 19/06/2026 23:57:09
[2026-06-19 23:57:09,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:57:09,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:57:09,965.965 INFO    ] No existing commands found in stream
[2026-06-19 23:57:15,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:57:15,004.004 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-19 23:57:17,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:57:17,306.306 INFO    ] Checking for system updates...
[2026-06-19 23:57:17,342.342 INFO    ] 200
[2026-06-19 23:57:17,344.344 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:17,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:57:17,406.406 INFO    ] No update needed
[2026-06-19 23:57:17,408.408 INFO    ] Checking for camera pi updates...
[2026-06-19 23:57:17,442.442 INFO    ] 200
[2026-06-19 23:57:17,444.444 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:17,485.485 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:57:17,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:57:17,532.532 INFO    ] No camera update needed
[2026-06-19 23:57:17,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:57:17,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:57:17,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:57:17,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:57:19,590.590 INFO    ] ================================================
[2026-06-19 23:57:19,606.606 INFO    ] Launching Daemon at Fri Jun 19 23:57:19 IST 2026
[2026-06-19 23:57:19,616.616 INFO    ] ================================================
[2026-06-19 23:57:20,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:57:20
[2026-06-19 23:57:20,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:57:21,237.237 INFO    ] Initializing speech engine...
[2026-06-19 23:57:21,250.250 INFO    ] 2026-06-19 23:57:21
[2026-06-19 23:57:21,504.504 INFO    ] 2026-06-19 23:57:21
[2026-06-19 23:57:21,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:57:21,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:57:21,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:57:21,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:57:21,932.932 INFO    ] time= 19/06/2026 23:57:21
[2026-06-19 23:57:21,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:57:22,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:57:22,106.106 INFO    ] No existing commands found in stream
[2026-06-19 23:57:27,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:57:27,121.121 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-19 23:57:31,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:57:31,234.234 INFO    ] Checking for system updates...
[2026-06-19 23:57:31,271.271 INFO    ] 200
[2026-06-19 23:57:31,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:31,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:57:31,338.338 INFO    ] No update needed
[2026-06-19 23:57:31,341.341 INFO    ] Checking for camera pi updates...
[2026-06-19 23:57:31,379.379 INFO    ] 200
[2026-06-19 23:57:31,382.382 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:31,427.427 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:57:31,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:57:31,460.460 INFO    ] No camera update needed
[2026-06-19 23:57:31,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:57:31,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:57:31,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:57:31,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:57:33,516.516 INFO    ] ================================================
[2026-06-19 23:57:33,531.531 INFO    ] Launching Daemon at Fri Jun 19 23:57:33 IST 2026
[2026-06-19 23:57:33,543.543 INFO    ] ================================================
[2026-06-19 23:57:34,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:57:34
[2026-06-19 23:57:34,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:57:34,957.957 INFO    ] Initializing speech engine...
[2026-06-19 23:57:34,972.972 INFO    ] 2026-06-19 23:57:34
[2026-06-19 23:57:35,237.237 INFO    ] 2026-06-19 23:57:35
[2026-06-19 23:57:35,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:57:35,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:57:35,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:57:35,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:57:35,615.615 INFO    ] time= 19/06/2026 23:57:35
[2026-06-19 23:57:35,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:57:35,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:57:35,694.694 INFO    ] No existing commands found in stream
[2026-06-19 23:57:40,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:57:40,727.727 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-19 23:57:43,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:57:43,139.139 INFO    ] Checking for system updates...
[2026-06-19 23:57:43,175.175 INFO    ] 200
[2026-06-19 23:57:43,178.178 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:43,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:57:43,237.237 INFO    ] No update needed
[2026-06-19 23:57:43,239.239 INFO    ] Checking for camera pi updates...
[2026-06-19 23:57:43,273.273 INFO    ] 200
[2026-06-19 23:57:43,275.275 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:43,316.316 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:57:43,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:57:43,466.466 INFO    ] No camera update needed
[2026-06-19 23:57:43,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:57:43,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:57:43,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:57:43,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:57:45,520.520 INFO    ] ================================================
[2026-06-19 23:57:45,537.537 INFO    ] Launching Daemon at Fri Jun 19 23:57:45 IST 2026
[2026-06-19 23:57:45,548.548 INFO    ] ================================================
[2026-06-19 23:57:46,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:57:46
[2026-06-19 23:57:46,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:57:47,020.020 INFO    ] Initializing speech engine...
[2026-06-19 23:57:47,026.026 INFO    ] 2026-06-19 23:57:47
[2026-06-19 23:57:47,280.280 INFO    ] 2026-06-19 23:57:47
[2026-06-19 23:57:47,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:57:47,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:57:47,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:57:47,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:57:47,773.773 INFO    ] time= 19/06/2026 23:57:47
[2026-06-19 23:57:47,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:57:47,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:57:47,966.966 INFO    ] No existing commands found in stream
[2026-06-19 23:57:52,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:57:52,997.997 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-19 23:57:56,791.791 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:57:56,793.793 INFO    ] Checking for system updates...
[2026-06-19 23:57:56,829.829 INFO    ] 200
[2026-06-19 23:57:56,832.832 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:56,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:57:56,888.888 INFO    ] No update needed
[2026-06-19 23:57:56,891.891 INFO    ] Checking for camera pi updates...
[2026-06-19 23:57:56,928.928 INFO    ] 200
[2026-06-19 23:57:56,931.931 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:57:56,976.976 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:57:57,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:57:57,038.038 INFO    ] No camera update needed
[2026-06-19 23:57:57,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:57:57,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:57:57,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:57:57,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:57:59,093.093 INFO    ] ================================================
[2026-06-19 23:57:59,109.109 INFO    ] Launching Daemon at Fri Jun 19 23:57:59 IST 2026
[2026-06-19 23:57:59,120.120 INFO    ] ================================================
[2026-06-19 23:57:59,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:57:59
[2026-06-19 23:58:00,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:58:00,549.549 INFO    ] Initializing speech engine...
[2026-06-19 23:58:00,571.571 INFO    ] 2026-06-19 23:58:00
[2026-06-19 23:58:00,825.825 INFO    ] 2026-06-19 23:58:00
[2026-06-19 23:58:00,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:58:01,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:58:01,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:58:01,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:58:01,300.300 INFO    ] time= 19/06/2026 23:58:01
[2026-06-19 23:58:01,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:58:01,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:58:01,402.402 INFO    ] No existing commands found in stream
[2026-06-19 23:58:06,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:58:06,416.416 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-19 23:58:09,595.595 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:58:09,598.598 INFO    ] Checking for system updates...
[2026-06-19 23:58:09,634.634 INFO    ] 200
[2026-06-19 23:58:09,637.637 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:09,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:58:09,703.703 INFO    ] No update needed
[2026-06-19 23:58:09,705.705 INFO    ] Checking for camera pi updates...
[2026-06-19 23:58:09,740.740 INFO    ] 200
[2026-06-19 23:58:09,742.742 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:09,783.783 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:58:09,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:58:09,838.838 INFO    ] No camera update needed
[2026-06-19 23:58:09,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:58:09,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:58:09,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:58:09,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:58:11,893.893 INFO    ] ================================================
[2026-06-19 23:58:11,909.909 INFO    ] Launching Daemon at Fri Jun 19 23:58:11 IST 2026
[2026-06-19 23:58:11,919.919 INFO    ] ================================================
[2026-06-19 23:58:12,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:58:12
[2026-06-19 23:58:13,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:58:13,340.340 INFO    ] Initializing speech engine...
[2026-06-19 23:58:13,351.351 INFO    ] 2026-06-19 23:58:13
[2026-06-19 23:58:13,595.595 INFO    ] 2026-06-19 23:58:13
[2026-06-19 23:58:13,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:58:13,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:58:13,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:58:14,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:58:14,055.055 INFO    ] time= 19/06/2026 23:58:14
[2026-06-19 23:58:14,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:58:14,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:58:14,214.214 INFO    ] No existing commands found in stream
[2026-06-19 23:58:19,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:58:19,228.228 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-19 23:58:20,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:58:20,774.774 INFO    ] Checking for system updates...
[2026-06-19 23:58:20,810.810 INFO    ] 200
[2026-06-19 23:58:20,812.812 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:20,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:58:20,874.874 INFO    ] No update needed
[2026-06-19 23:58:20,877.877 INFO    ] Checking for camera pi updates...
[2026-06-19 23:58:20,915.915 INFO    ] 200
[2026-06-19 23:58:20,917.917 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:20,963.963 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:58:21,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:58:21,012.012 INFO    ] No camera update needed
[2026-06-19 23:58:21,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:58:21,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:58:21,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:58:21,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:58:23,071.071 INFO    ] ================================================
[2026-06-19 23:58:23,087.087 INFO    ] Launching Daemon at Fri Jun 19 23:58:23 IST 2026
[2026-06-19 23:58:23,098.098 INFO    ] ================================================
[2026-06-19 23:58:23,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:58:23
[2026-06-19 23:58:24,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:58:24,724.724 INFO    ] Initializing speech engine...
[2026-06-19 23:58:24,738.738 INFO    ] 2026-06-19 23:58:24
[2026-06-19 23:58:25,026.026 INFO    ] 2026-06-19 23:58:25
[2026-06-19 23:58:25,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:58:25,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:58:25,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:58:25,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:58:25,555.555 INFO    ] time= 19/06/2026 23:58:25
[2026-06-19 23:58:25,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:58:25,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:58:25,691.691 INFO    ] No existing commands found in stream
[2026-06-19 23:58:30,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:58:30,722.722 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-19 23:58:34,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:58:34,185.185 INFO    ] Checking for system updates...
[2026-06-19 23:58:34,226.226 INFO    ] 200
[2026-06-19 23:58:34,228.228 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:34,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:58:34,291.291 INFO    ] No update needed
[2026-06-19 23:58:34,293.293 INFO    ] Checking for camera pi updates...
[2026-06-19 23:58:34,331.331 INFO    ] 200
[2026-06-19 23:58:34,334.334 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:34,380.380 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:58:34,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:58:34,427.427 INFO    ] No camera update needed
[2026-06-19 23:58:34,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:58:34,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:58:34,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:58:34,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:58:36,484.484 INFO    ] ================================================
[2026-06-19 23:58:36,500.500 INFO    ] Launching Daemon at Fri Jun 19 23:58:36 IST 2026
[2026-06-19 23:58:36,511.511 INFO    ] ================================================
[2026-06-19 23:58:37,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:58:37
[2026-06-19 23:58:37,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:58:37,933.933 INFO    ] Initializing speech engine...
[2026-06-19 23:58:37,942.942 INFO    ] 2026-06-19 23:58:37
[2026-06-19 23:58:38,239.239 INFO    ] 2026-06-19 23:58:38
[2026-06-19 23:58:38,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:58:38,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:58:38,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:58:38,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:58:38,597.597 INFO    ] time= 19/06/2026 23:58:38
[2026-06-19 23:58:38,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:58:38,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:58:38,677.677 INFO    ] No existing commands found in stream
[2026-06-19 23:58:43,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:58:43,691.691 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-19 23:58:44,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-19 23:58:44,612.612 INFO    ] Checking for system updates...
[2026-06-19 23:58:44,652.652 INFO    ] 200
[2026-06-19 23:58:44,654.654 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:44,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:58:44,709.709 INFO    ] No update needed
[2026-06-19 23:58:44,712.712 INFO    ] Checking for camera pi updates...
[2026-06-19 23:58:44,746.746 INFO    ] 200
[2026-06-19 23:58:44,748.748 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:44,792.792 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:58:44,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:58:44,839.839 INFO    ] No camera update needed
[2026-06-19 23:58:44,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:58:44,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:58:44,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:58:44,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:58:46,894.894 INFO    ] ================================================
[2026-06-19 23:58:46,909.909 INFO    ] Launching Daemon at Fri Jun 19 23:58:46 IST 2026
[2026-06-19 23:58:46,920.920 INFO    ] ================================================
[2026-06-19 23:58:47,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:58:47
[2026-06-19 23:58:48,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:58:48,359.359 INFO    ] Initializing speech engine...
[2026-06-19 23:58:48,366.366 INFO    ] 2026-06-19 23:58:48
[2026-06-19 23:58:48,668.668 INFO    ] 2026-06-19 23:58:48
[2026-06-19 23:58:48,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:58:48,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:58:48,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:58:49,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:58:49,044.044 INFO    ] time= 19/06/2026 23:58:49
[2026-06-19 23:58:49,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:58:49,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:58:49,162.162 INFO    ] No existing commands found in stream
[2026-06-19 23:58:54,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:58:54,177.177 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-19 23:58:55,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-19 23:58:55,688.688 INFO    ] Checking for system updates...
[2026-06-19 23:58:55,725.725 INFO    ] 200
[2026-06-19 23:58:55,728.728 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:55,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:58:55,793.793 INFO    ] No update needed
[2026-06-19 23:58:55,796.796 INFO    ] Checking for camera pi updates...
[2026-06-19 23:58:55,835.835 INFO    ] 200
[2026-06-19 23:58:55,838.838 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:58:55,890.890 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:58:55,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:58:55,942.942 INFO    ] No camera update needed
[2026-06-19 23:58:55,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:58:55,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:58:55,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:58:55,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:58:58,002.002 INFO    ] ================================================
[2026-06-19 23:58:58,017.017 INFO    ] Launching Daemon at Fri Jun 19 23:58:58 IST 2026
[2026-06-19 23:58:58,028.028 INFO    ] ================================================
[2026-06-19 23:58:58,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:58:58
[2026-06-19 23:58:59,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:58:59,612.612 INFO    ] Initializing speech engine...
[2026-06-19 23:58:59,619.619 INFO    ] 2026-06-19 23:58:59
[2026-06-19 23:58:59,880.880 INFO    ] 2026-06-19 23:58:59
[2026-06-19 23:58:59,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:59:00,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:59:00,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:59:00,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:59:00,359.359 INFO    ] time= 19/06/2026 23:59:00
[2026-06-19 23:59:00,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:59:00,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:59:00,488.488 INFO    ] No existing commands found in stream
[2026-06-19 23:59:05,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:59:05,505.505 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-19 23:59:06,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-19 23:59:06,534.534 INFO    ] Checking for system updates...
[2026-06-19 23:59:06,574.574 INFO    ] 200
[2026-06-19 23:59:06,577.577 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:06,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:59:06,639.639 INFO    ] No update needed
[2026-06-19 23:59:06,642.642 INFO    ] Checking for camera pi updates...
[2026-06-19 23:59:06,680.680 INFO    ] 200
[2026-06-19 23:59:06,682.682 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:06,728.728 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:59:06,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:59:06,774.774 INFO    ] No camera update needed
[2026-06-19 23:59:06,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:59:06,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:59:06,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:59:06,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:59:08,829.829 INFO    ] ================================================
[2026-06-19 23:59:08,845.845 INFO    ] Launching Daemon at Fri Jun 19 23:59:08 IST 2026
[2026-06-19 23:59:08,856.856 INFO    ] ================================================
[2026-06-19 23:59:09,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:59:09
[2026-06-19 23:59:10,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:59:10,324.324 INFO    ] Initializing speech engine...
[2026-06-19 23:59:10,331.331 INFO    ] 2026-06-19 23:59:10
[2026-06-19 23:59:10,589.589 INFO    ] 2026-06-19 23:59:10
[2026-06-19 23:59:10,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:59:10,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:59:10,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:59:11,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:59:11,043.043 INFO    ] time= 19/06/2026 23:59:11
[2026-06-19 23:59:11,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:59:11,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:59:11,214.214 INFO    ] No existing commands found in stream
[2026-06-19 23:59:16,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:59:16,253.253 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-19 23:59:20,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:59:20,604.604 INFO    ] Checking for system updates...
[2026-06-19 23:59:20,640.640 INFO    ] 200
[2026-06-19 23:59:20,642.642 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:20,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:59:20,698.698 INFO    ] No update needed
[2026-06-19 23:59:20,700.700 INFO    ] Checking for camera pi updates...
[2026-06-19 23:59:20,734.734 INFO    ] 200
[2026-06-19 23:59:20,736.736 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:20,777.777 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:59:20,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-19 23:59:20,822.822 INFO    ] No camera update needed
[2026-06-19 23:59:20,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:59:20,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:59:20,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:59:20,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:59:22,880.880 INFO    ] ================================================
[2026-06-19 23:59:22,896.896 INFO    ] Launching Daemon at Fri Jun 19 23:59:22 IST 2026
[2026-06-19 23:59:22,907.907 INFO    ] ================================================
[2026-06-19 23:59:23,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:59:23
[2026-06-19 23:59:24,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:59:24,356.356 INFO    ] Initializing speech engine...
[2026-06-19 23:59:24,366.366 INFO    ] 2026-06-19 23:59:24
[2026-06-19 23:59:24,612.612 INFO    ] 2026-06-19 23:59:24
[2026-06-19 23:59:24,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:59:24,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:59:24,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:59:25,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:59:25,106.106 INFO    ] time= 19/06/2026 23:59:25
[2026-06-19 23:59:25,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:59:25,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:59:25,226.226 INFO    ] No existing commands found in stream
[2026-06-19 23:59:30,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:59:30,241.241 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-19 23:59:32,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-19 23:59:32,958.958 INFO    ] Checking for system updates...
[2026-06-19 23:59:32,995.995 INFO    ] 200
[2026-06-19 23:59:32,997.997 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:33,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:59:33,061.061 INFO    ] No update needed
[2026-06-19 23:59:33,063.063 INFO    ] Checking for camera pi updates...
[2026-06-19 23:59:33,098.098 INFO    ] 200
[2026-06-19 23:59:33,100.100 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:33,151.151 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:59:33,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:59:33,185.185 INFO    ] No camera update needed
[2026-06-19 23:59:33,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:59:33,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:59:33,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:59:33,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:59:35,241.241 INFO    ] ================================================
[2026-06-19 23:59:35,257.257 INFO    ] Launching Daemon at Fri Jun 19 23:59:35 IST 2026
[2026-06-19 23:59:35,268.268 INFO    ] ================================================
[2026-06-19 23:59:35,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:59:35
[2026-06-19 23:59:36,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:59:36,695.695 INFO    ] Initializing speech engine...
[2026-06-19 23:59:36,703.703 INFO    ] 2026-06-19 23:59:36
[2026-06-19 23:59:36,953.953 INFO    ] 2026-06-19 23:59:36
[2026-06-19 23:59:36,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:59:37,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:59:37,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:59:37,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:59:37,332.332 INFO    ] time= 19/06/2026 23:59:37
[2026-06-19 23:59:37,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:59:37,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:59:37,510.510 INFO    ] No existing commands found in stream
[2026-06-19 23:59:42,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:59:42,538.538 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-19 23:59:46,703.703 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-19 23:59:46,706.706 INFO    ] Checking for system updates...
[2026-06-19 23:59:46,744.744 INFO    ] 200
[2026-06-19 23:59:46,747.747 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:46,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:59:46,811.811 INFO    ] No update needed
[2026-06-19 23:59:46,814.814 INFO    ] Checking for camera pi updates...
[2026-06-19 23:59:46,854.854 INFO    ] 200
[2026-06-19 23:59:46,857.857 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:46,910.910 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:59:47,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:59:47,057.057 INFO    ] No camera update needed
[2026-06-19 23:59:47,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:59:47,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:59:47,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:59:47,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:59:49,116.116 INFO    ] ================================================
[2026-06-19 23:59:49,132.132 INFO    ] Launching Daemon at Fri Jun 19 23:59:49 IST 2026
[2026-06-19 23:59:49,142.142 INFO    ] ================================================
[2026-06-19 23:59:49,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:59:49
[2026-06-19 23:59:50,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-19 23:59:50,596.596 INFO    ] Initializing speech engine...
[2026-06-19 23:59:50,605.605 INFO    ] 2026-06-19 23:59:50
[2026-06-19 23:59:50,904.904 INFO    ] 2026-06-19 23:59:50
[2026-06-19 23:59:50,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-19 23:59:51,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-19 23:59:51,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-19 23:59:51,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-19 23:59:51,258.258 INFO    ] time= 19/06/2026 23:59:51
[2026-06-19 23:59:51,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM07202501
[2026-06-19 23:59:51,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-19 23:59:51,336.336 INFO    ] No existing commands found in stream
[2026-06-19 23:59:56,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-19 23:59:56,349.349 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-19 23:59:56,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-19 23:59:56,768.768 INFO    ] Checking for system updates...
[2026-06-19 23:59:56,807.807 INFO    ] 200
[2026-06-19 23:59:56,810.810 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:56,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:59:56,865.865 INFO    ] No update needed
[2026-06-19 23:59:56,868.868 INFO    ] Checking for camera pi updates...
[2026-06-19 23:59:56,905.905 INFO    ] 200
[2026-06-19 23:59:56,907.907 INFO    ] {"msg": "Status of machine", "status": true, "state": "STATE_IDLE"}
[2026-06-19 23:59:56,948.948 INFO    ] Camera IP: TMCAM07202501.local
[2026-06-19 23:59:56,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-19 23:59:57,001.001 INFO    ] No camera update needed
[2026-06-19 23:59:57,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-19 23:59:57,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-19 23:59:57,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-19 23:59:57,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-19 23:59:59,058.058 INFO    ] ================================================
[2026-06-19 23:59:59,073.073 INFO    ] Launching Daemon at Fri Jun 19 23:59:59 IST 2026
[2026-06-19 23:59:59,084.084 INFO    ] ================================================
[2026-06-19 23:59:59,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-19 23:59:59
